body{margin:0}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid #d83c2f;outline-offset:3px}input,textarea,select,input:focus,textarea:focus,select:focus,.form-control,.form-control:focus{border:0!important;outline:none!important;box-shadow:none!important}[hidden]{display:none!important}.app-layout.layout{display:grid;grid-template-columns:88px 350px minmax(0,1fr);grid-template-rows:minmax(0,1fr);height:100vh;height:100dvh;overflow:hidden}.app-layout .navigation{width:auto;height:auto;position:static;display:flex;flex-direction:column;align-items:center;padding:32px 12px 20px;gap:18px}.peak-brand{display:block}.rail-links{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:24px}.rail-button{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:12px;background:none;color:inherit;text-decoration:none;font-size:28px}.rail-active{background:#d83c2f1a;color:#d83c2f}.navigation form{margin:0}.app-layout .sidebar{display:block;position:static;width:auto;height:100%;min-height:0;overflow-y:auto}.sidebar-inner{padding:32px 24px}.sidebar-heading h2{font-size:30px;margin-bottom:12px}.current-account{font-size:13px;text-decoration:none}.search-control{margin:26px 0}.conversation-card{text-decoration:none;margin-bottom:12px;border-radius:12px}.conversation-card .card-body{padding:20px 16px}.conversation-card h5{margin-bottom:7px;font-size:14px}.conversation-preview{font-size:12px;margin:0}.conversation-type{font-size:10px}.conversation-card[aria-current=page]{box-shadow:inset 3px 0 #d83c2f}.avatar-text{display:grid;width:100%;height:100%;place-items:center;border-radius:50%;background:#d83c2f22;color:#d83c2f;font-size:24px}.app-layout .main{position:static;width:auto;min-width:0;min-height:0;height:100%;transform:none!important;visibility:visible;display:block;overflow:hidden}.app-layout .main>.container{padding:0 32px;max-width:1100px;min-height:0}.chat-column{display:flex;flex-direction:column;height:100%;min-height:0}.chat-header{flex-shrink:0}.chat-heading{display:flex;align-items:center;gap:18px}.chat-title{flex:1;min-width:0}.chat-title h5{margin:0 0 6px}.chat-title p{margin:0;font-size:12px}.avatar-group{display:flex}.avatar-group .avatar{margin-left:-9px}.chat-body{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain}.chat-body-inner{height:auto}.message-text p{white-space:pre-wrap;overflow-wrap:anywhere}.message-footer{font-size:11px;margin-top:8px}.chat-footer{position:relative;width:100%;margin:0;padding:16px 0 env(safe-area-inset-bottom,0px);flex:0 0 auto}.chat-footer::before{content:none}.composer{display:flex;align-items:flex-end;gap:12px;background:var(--bs-light,#f5f8fc);padding:10px 12px;border-radius:12px}.composer textarea{padding:12px 10px;background:transparent;min-height:48px;max-height:160px;resize:none;overflow:auto;color:inherit}.send-button{height:46px;width:46px;display:grid;place-items:center;border-radius:10px;padding:0;flex-shrink:0}.empty-chat{display:flex;height:100%;align-items:center;justify-content:center;flex-direction:column;text-align:center}.mobile-chats{display:none}dialog{max-width:460px;width:calc(100% - 32px);padding:28px;border:0;border-radius:16px;color:var(--bs-body-color,#343a40);background:var(--bs-body-bg,#fff);max-height:90dvh;overflow:auto}dialog::backdrop{background:#10203388}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.dialog-heading button{background:none;color:inherit;border:0;font-size:30px}.recipient-list{border:0;padding:0;margin:20px 0}.recipient{display:flex;align-items:center;gap:14px;padding:9px 0;cursor:pointer}.recipient img{object-fit:cover;border-radius:50%}.recipient input{width:18px;height:18px;accent-color:#d83c2f}#send-error,#create-error{margin:10px 0 0;font-size:13px}#create-error{margin-bottom:16px}html[data-theme=dark] .composer{background:#1a2335}html[data-theme=dark] dialog{background:#1a2335;color:#cbd7e7}@media(prefers-color-scheme:dark){html:not([data-theme=light]) .composer,html:not([data-theme=light]) dialog{background:#1a2335}html:not([data-theme=light]) dialog{color:#cbd7e7}}@media(max-width:1199px){.app-layout.layout{grid-template-columns:70px 290px minmax(0,1fr)}.sidebar-inner{padding:24px 16px}.app-layout .main>.container{padding:0 22px}.avatar-group{display:none}}@media(max-width:760px){.app-layout.layout{grid-template-columns:60px minmax(0,1fr)}.app-layout .navigation{padding:24px 8px 14px}.peak-brand img{width:36px}.app-layout .sidebar{display:none}.app-layout.show-list .sidebar{display:block}.app-layout.show-list .main{display:none}.app-layout .main>.container{padding:0 16px}.chat-heading{gap:10px}.mobile-chats{display:block;background:none;border:0;color:inherit;font-size:24px;padding:5px}.chat-title h5{font-size:15px}.chat-title p{font-size:11px}.app-layout .message{max-width:100%}.app-layout .message-text{max-width:100%}.rail-links{gap:18px}.rail-button{width:40px;height:40px}.navigation .avatar{width:38px;height:38px}.chat-heading>.avatar{width:38px;height:38px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Recursive property groups, adapted from kayia/svg's property box. */
.profile-avatar{padding:0;border:0;background:transparent;flex-shrink:0}
.profile-identity{display:flex;align-items:center;gap:16px;margin:20px 0 24px}
.profile-identity h4{margin:0 0 5px}.profile-identity p{margin:0;font-size:13px}
.property-box{font-size:13px;text-align:left}
.property-group>summary{padding:9px 6px;cursor:pointer;font-weight:600;border-radius:6px}
.property-group>summary::marker{color:#d83c2f}
.property-group>summary:hover,.property-group>summary:focus-visible{background:#d83c2f1a}
.property-group>summary:focus-visible{outline:2px solid #d83c2f;outline-offset:2px}
.property-children{margin-left:16px}
.property-row{display:grid;grid-template-columns:minmax(80px,2fr) minmax(0,3fr);gap:12px;padding:8px 6px}
.property-label{opacity:.7}.property-value{min-width:0;white-space:pre-wrap;overflow-wrap:anywhere}

.image-button{display:grid;place-items:center;flex-shrink:0;width:40px;height:46px;padding:0;border:0;background:transparent;color:inherit;border-radius:10px}.image-button:disabled{opacity:.5;cursor:wait}.chat-image{display:block;width:auto;max-width:100%;max-height:420px;border-radius:8px;object-fit:contain}

/* Chat details and three-column Media gallery from the Messenger template. */
.chat-details{position:fixed;z-index:1040;inset:0 0 0 auto;width:min(380px,100%);padding:28px 24px;overflow-y:auto;background:var(--bs-body-bg,#fff);color:var(--bs-body-color,#343a40);box-shadow:-8px 0 32px #10203322}
.chat-details h3{font-size:20px}.chat-details .nav{margin:24px 0 12px}.chat-details .nav-link{border:0;background:transparent;color:inherit}.chat-details .nav-link.active{background:#d83c2f;color:#fff}.media-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:20px 0}.media-gallery a{display:block;aspect-ratio:1;overflow:hidden;border-radius:8px}.media-gallery img{display:block;width:100%;height:100%;object-fit:cover}.media-members .profile-identity{margin:24px 0}.media-members h4{font-size:15px}.media-members p{font-size:12px}
html[data-theme=dark] .chat-details{background:#1a2335;color:#cbd7e7}@media(prefers-color-scheme:dark){html:not([data-theme=light]) .chat-details{background:#1a2335;color:#cbd7e7}}

.property-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:13px}
.property-edit{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:6px;background:transparent;color:inherit}
.property-edit:hover,.property-edit[aria-pressed=true]{background:#d83c2f1a;color:#d83c2f}
.property-group>.property-header{display:list-item;font-weight:400;position:relative;padding-right:0}
.property-header>.property-label{display:inline-block;width:38%;vertical-align:middle}
.property-header>input.property-value{display:inline-block;width:54%;padding:3px 5px;background:transparent;color:inherit;font:inherit;vertical-align:middle}
.property-header>input.property-value:not([readonly]){background:#d83c2f12;border-radius:4px}
.property-leaf{padding:9px 6px}#add-property{margin-top:16px}#add-property label{font-size:12px;margin-top:8px}#add-property button{margin-top:12px}

.property-select{display:inline-block;position:relative;width:54%;vertical-align:middle;min-width:0}
.property-select-toggle{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;padding:3px 5px;border:0;background:transparent;color:inherit;text-align:left;font:inherit;border-radius:4px}
.property-select-toggle:not(:disabled){background:#d83c2f12}.property-select-toggle:disabled{opacity:1;cursor:default}
.property-select-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.property-select-menu{display:block;position:absolute;z-index:5;top:100%;right:0;min-width:220px;width:100%;padding:10px;border-radius:8px;background:var(--bs-body-bg,#fff);box-shadow:0 5px 22px #10203333}
.property-select-options{display:block;max-height:180px;overflow:auto}
.property-select-options label{display:flex;align-items:center;gap:8px;padding:5px 0;font-weight:400;cursor:pointer;overflow-wrap:anywhere}
.property-select-options input{flex:0 0 auto;accent-color:#d83c2f}.property-select-new{display:flex;gap:6px;margin-top:6px}
.property-select-new input{width:100%;min-width:0;background:#d83c2f12;color:inherit;padding:6px;font:inherit;border-radius:4px}
.property-select-add{border:0;background:transparent;color:#d83c2f;padding:6px}
html[data-theme=dark] .property-select-menu{background:#1a2335}@media(prefers-color-scheme:dark){html:not([data-theme=light]) .property-select-menu{background:#1a2335}}

/* Brand red, with lighter text accents on dark surfaces. */
:root{--app-accent-ink:#d83c2f;--app-accent-hover-ink:#ad3026}
html[data-theme=dark]{--app-accent-ink:#ed766c;--app-accent-hover-ink:#f39b93}
@media(prefers-color-scheme:dark){html:not([data-theme=light]){--app-accent-ink:#ed766c;--app-accent-hover-ink:#f39b93}}
a,.btn-link,.rail-active,.property-edit:hover,.property-edit[aria-pressed=true],.property-select-add{color:var(--app-accent-ink)}
a:hover,.btn-link:hover{color:var(--app-accent-hover-ink)}
::selection{background:#d83c2f40}

/* People, interest channels and dated events share the same messaging layout. */
.rail-links{gap:16px;width:100%}.rail-menu-item{width:100%;max-width:64px;height:64px;gap:5px;font-size:10px;line-height:1.2;text-decoration:none}.rail-menu-item[aria-current=page]{background:#d83c2f1a;color:var(--app-accent-ink)}
.list-tools{display:flex;align-items:center;gap:8px;margin:24px 0}.list-tools .search-control{margin:0;min-width:0}.list-add{display:grid;place-items:center;flex-shrink:0;width:40px;height:44px;border:0;border-radius:10px;background:#d83c2f15;color:var(--app-accent-ink);font-size:26px}.list-add:hover{background:#d83c2f25}
.conversation-meta{display:block;font-size:11px;line-height:1.5;margin:6px 0 0;opacity:.8}.empty-chat h2{font-size:24px}.empty-chat p{max-width:430px;line-height:1.6}
#recipient-search,#space-search{margin:18px 0}.recipient-list{max-height:38dvh;overflow-y:auto}.space-results{max-height:220px;overflow-y:auto;margin:16px 0 24px}.space-result{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0}.space-result>div{min-width:0;overflow-wrap:anywhere}.space-result strong{display:block;font-size:14px}.space-result span,.space-result time{display:block;font-size:12px;opacity:.8;margin-top:4px}.space-result form{flex-shrink:0;margin:0}
#create-space h4{font-size:17px;margin-bottom:18px}#create-space label{display:block;font-size:12px;margin:14px 0 6px}#create-space .btn-primary{margin-top:18px}.space-time-note{font-size:11px;opacity:.75;margin:8px 0}#space-error{font-size:13px;margin-top:14px}#space-start{color-scheme:light dark}
@media(max-width:760px){.rail-links{gap:12px}.rail-menu-item{height:58px}.empty-chat{padding:24px 12px}.list-tools{margin:20px 0}}
.app-layout .navigation{overflow-y:auto;scrollbar-width:none}html[data-theme=light] #space-start{color-scheme:light}html[data-theme=dark] #space-start{color-scheme:dark}

.profile-photo-wrap{position:relative;flex-shrink:0}.profile-photo-pencil{display:grid;place-items:center;position:absolute;right:-5px;bottom:-5px;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:#d83c2f;color:#fff}.profile-photo-pencil:hover{background:#b83328}
#profile-photo-picker{margin:0 0 24px;padding:16px;background:#d83c2f08;border-radius:12px}.photo-picker-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.photo-picker-heading h4{margin:0;font-size:14px}.photo-picker-heading button{padding:0 4px;background:transparent;border:0;color:inherit;font-size:22px}
.profile-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.profile-photo-option{display:grid;place-items:center;min-width:0;padding:8px;border:0;border-radius:12px;background:transparent}.profile-photo-option:hover,.profile-photo-option[aria-pressed=true]{background:#d83c2f22}.profile-photo-option img{width:100%;max-width:80px;height:auto;aspect-ratio:1;border-radius:50%;object-fit:cover}.profile-photo-option:disabled{cursor:wait;opacity:.6}#photo-error{font-size:13px;margin:12px 0 0}

.profile-section{position:relative;margin-top:12px}.profile-section>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:38px;padding:8px 4px;list-style:none;cursor:pointer;font-size:14px;font-weight:600}.profile-section>summary::-webkit-details-marker{display:none}.profile-section>summary:hover{color:var(--app-accent-ink)}.profile-section>summary:focus-visible{outline:2px solid #d83c2f;outline-offset:2px;border-radius:4px}.profile-section-caret{flex-shrink:0;color:var(--app-accent-ink);transition:transform .15s ease}.profile-section[open]>summary .profile-section-caret{transform:rotate(90deg)}.profile-section-content{padding:8px 0 12px}#profile-section .property-toolbar{height:0;margin:0}#profile-section #edit-profile{position:absolute;right:30px;top:5px}
.interest-options{display:flex;flex-wrap:wrap;gap:8px}.interest-option{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:10px;background:#d83c2f08;font-size:13px;cursor:pointer}.interest-option:has(input:checked),.interest-option:focus-within{background:#d83c2f22}.interest-option input{width:15px;height:15px;margin:0;accent-color:#d83c2f}.interest-option:has(input:disabled){opacity:.65;cursor:wait}#interests-error{font-size:13px;margin:12px 0 0}
