/* Designer reference: design.md. This is the final shared presentation layer. */
@font-face{font-family:'Material Symbols Outlined';font-style:normal;font-weight:400;src:url('fonts/material-symbols-outlined.ttf') format('truetype');font-display:block}
:root{color-scheme:light;--canvas:#f5f7fb;--surface:#fff;--surface-subtle:#eef2f8;--text-strong:#24334a;--text-body:#37465b;--text-secondary:#526178;--muted:#526178;--line:#dce3ee;--field-border:#8391a5;--accent:#315fbb;--accent-soft:#e8effc;--radius-control:8px;--page-margin:16px;--side:240px}
*{box-sizing:border-box}body{font:400 16px/24px 'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Microsoft YaHei',sans-serif;color:var(--text-body);background:var(--canvas)}button,input,select,textarea{font-family:inherit}button{font-weight:500}h1,h2,h3,h4,strong{font-weight:600}h1,h2{font-family:Manrope,'DM Sans','PingFang SC',sans-serif;letter-spacing:-.4px}h1,.modal h2,.modal-top h2{font-size:24px;line-height:32px}h3,h4{font-size:16px;line-height:24px}p{line-height:24px}
.material-symbols-outlined{font-family:'Material Symbols Outlined'!important;font-weight:400!important;font-style:normal;font-size:20px!important;line-height:1!important;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;font-feature-settings:'liga';-webkit-font-smoothing:antialiased;flex-shrink:0;width:20px;height:20px;overflow:hidden}
.sidebar{width:var(--side);padding:32px 16px;background:var(--surface);border-color:var(--line)}.brand{padding:0 8px;gap:8px;font-size:24px;font-weight:600}.sidebar .profile{margin:32px 0 24px;gap:12px}.sidebar .profile strong{font-size:16px}.sidebar .profile .tiny{font-size:14px;line-height:20px}.nav{gap:8px}.nav button{font-size:16px;line-height:24px;min-height:48px;padding:12px 16px;gap:12px;border-radius:8px;color:var(--text-secondary)}.nav button.active{background:var(--accent-soft);color:#254d9b;border-color:transparent}.nav .material-symbols-outlined{font-size:24px!important;width:24px;height:24px}.sidebar-bottom{padding-top:24px}.sidebar-bottom>button{color:var(--text-secondary);font-size:14px;line-height:20px}.share-entry{border-radius:8px!important;padding:16px!important;gap:12px!important}.share-entry small{font-size:14px;line-height:20px}.section-label{text-transform:none;font-size:14px;letter-spacing:0;color:var(--text-secondary);margin:24px 0 12px}.mini-network{font-size:14px;gap:12px;padding:12px}
.app{margin-left:var(--side);min-width:0;background:var(--canvas)}.workspace{max-width:1440px;margin-inline:auto;padding:32px var(--page-margin);container-type:inline-size;container-name:workspace}.topbar{padding:16px var(--page-margin);min-height:80px;height:auto;gap:16px;background:var(--surface);border-color:var(--line)}.crumb,.crumb strong{font:600 16px/24px 'DM Sans',sans-serif;color:var(--text-secondary)}.page-heading{display:flex;align-items:flex-start;flex-wrap:wrap;gap:16px;margin-bottom:32px}.page-heading h1{margin:0 0 8px}.subtitle{font-size:16px;line-height:24px;color:var(--text-secondary);max-width:64ch}.page-heading .hub-tag{align-self:flex-start}.top-actions{gap:12px;flex-wrap:wrap}.layout{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}.layout>*{min-width:0}
button,input,select,textarea{border-radius:8px}.primary,.page-heading .primary,.outline,.filter,.connect-small,.modal button{font-size:14px;line-height:20px;min-height:40px;padding:8px 16px;border-radius:8px;gap:8px;box-shadow:none}.primary,.page-heading .primary{background:var(--accent);color:white;border:1px solid var(--accent)}.primary:hover,.page-heading .primary:hover{background:#254d9b}.outline{background:var(--surface);color:var(--text-body);border-color:var(--field-border)}.outline:hover,.filter:hover{background:var(--surface-subtle)}button:active{filter:brightness(.95)}button:disabled{opacity:.55;cursor:not-allowed}.icon-btn{min-width:40px;min-height:40px;color:var(--text-secondary)}:focus-visible{outline:3px solid var(--accent)!important;outline-offset:3px!important}.search{border-color:var(--field-border)}input::placeholder,textarea::placeholder{color:var(--text-secondary);opacity:1}
.tiny,.hub-tag,.hub-hint,.hub-status,.field-help,.profile-header small,.profile-privacy,.connect-priority small,.goal-tag,.message-note,.message-list-heading span,.message-person small,.message-header small,.message-time,.form-error,.message-list-empty{font-size:14px!important;line-height:20px!important;color:var(--text-secondary)}.hub-tag{padding:8px 12px;border-radius:8px;background:var(--surface-subtle);max-width:100%}.form-error{color:#a22b3d!important}.form-error:empty{display:none}.subtitle,.card-desc,.post-meta,.footer-note,.people-row small,.network-row small,.connection-status,.rank-legend .rank-desc,.default-info,.contact-person small,.contacts-stat,.post-foot button,.source-link{color:var(--text-secondary);font-size:14px;line-height:20px}.post-name,.contact-person,.network-row strong,.card-heading h3,.people-row strong{font-size:16px;line-height:24px;color:var(--text-strong)}.post-body,.moments-page .post-body{font-size:16px;line-height:24px;color:var(--text-body)}.post,.side-card,.contact-table,.empty,.community-empty{border:1px solid var(--line);border-radius:12px;box-shadow:none;background:var(--surface)}.post,.side-card{padding:24px}.post-head{gap:12px}.post-rank,.post-rank.rank3{font-size:14px;line-height:20px;border-radius:8px;color:#315081}.post-foot{flex-wrap:wrap;gap:12px}.feed-tabs,.filters{gap:8px;flex-wrap:wrap}.filter,.tab,.sort,.sort select{font-size:14px;line-height:20px}.tab{min-height:40px}.feed-date{font-size:14px;color:var(--text-secondary)}.card-heading{gap:12px}.default-info{padding:16px;border-radius:8px;background:var(--surface-subtle)}.rank-legend strong{font-size:14px;line-height:20px;color:var(--text-body)}.community-empty{min-height:320px;padding:48px 24px;gap:24px}.community-empty p{font-size:16px;line-height:24px;color:var(--text-secondary);margin:0;max-width:48ch}.community-empty button{margin:0}.empty{padding:32px 24px;line-height:24px}
.moments-page{background:var(--canvas)}.moments-page .topbar{background:var(--surface);border-color:var(--line)}.moments-page .welcome{background:#e8effb;border-radius:12px;min-height:240px;padding:40px 24px;margin-bottom:32px}.moments-page .welcome h2{font-size:24px;line-height:32px;letter-spacing:-.4px;font-weight:600;color:var(--text-strong);max-width:36ch}.moments-page .welcome p{font-size:16px;line-height:24px;color:var(--text-secondary);margin-top:16px;max-width:56ch}.moments-page .welcome .eyebrow{font-size:14px;line-height:20px;text-transform:none;letter-spacing:0;margin-bottom:16px;color:var(--text-secondary)}
.modal-backdrop{padding:24px;background:#17243a80;backdrop-filter:none}.modal{padding:32px;border-radius:16px;background:var(--surface);max-width:calc(100vw - 48px);max-height:calc(100dvh - 48px);box-shadow:0 16px 48px #17243a26;scrollbar-gutter:auto}.modal.profile-editor,.modal.connect-profile{width:720px;container:dialog / inline-size}.modal-top{gap:16px;margin:0 0 24px}.modal-top h2{margin:0;font-weight:600}.modal p,.modal label,.modal select,.modal .tiny,.person-detail p{font-size:16px;line-height:24px;color:var(--text-body)}.modal form{gap:24px}.modal form input:not([type=checkbox]):not([type=range]),.modal select,.modal textarea{font-family:inherit;font-size:16px;line-height:24px;padding:8px 12px;min-height:40px;border-radius:8px;border-color:var(--field-border);background:var(--surface);color:var(--text-strong)}.modal textarea{min-height:112px}.profile-section{margin-top:24px;padding-top:24px}.profile-section h3,.person-detail h4{font:600 16px/24px 'DM Sans',sans-serif;color:var(--text-strong);text-transform:none;letter-spacing:0;margin:0 0 8px}.profile-fields{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:24px}.profile-fields>label{gap:8px}.profile-fields>label>input,.profile-fields>label>select{min-height:40px}.goal-options{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:12px;margin-top:16px}.goal-options label{font-size:14px!important;line-height:20px!important;min-height:48px;padding:12px 16px;border-radius:8px;gap:12px}.goal-options input[type=checkbox]{width:20px!important;height:20px;accent-color:var(--accent)}.goal-options label:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.profile-privacy{padding:16px;margin-top:24px;background:var(--surface-subtle);border-radius:8px}.person-detail{margin-top:24px}.goal-tags{gap:8px}.goal-tag{padding:4px 8px;margin-top:8px;border-radius:4px;background:var(--surface-subtle)}.profile-header{gap:16px}.connect-priority{padding-top:24px;margin-top:24px}.modal-actions,.share-actions{gap:12px;margin-top:24px;flex-wrap:wrap}
.messenger{display:grid;grid-template-columns:320px minmax(320px,1fr);border-radius:12px;border-color:var(--line);box-shadow:none;min-height:600px;background:var(--surface)}.message-people{padding:16px;background:#f9fafd;border-color:var(--line)}.message-list-heading{margin:8px 8px 24px;gap:12px}.message-list-heading h3{font-size:16px;line-height:24px;color:var(--text-strong)}.message-person{gap:12px;padding:16px 8px;margin-bottom:8px;border-radius:8px;min-height:72px}.message-person strong,.message-header strong{font-size:16px;line-height:24px;color:var(--text-strong)}.message-person small,.message-header small{margin-top:4px}.message-person:hover{background:var(--surface-subtle)}.message-person.active{background:var(--accent-soft)}.message-header{padding:16px;gap:12px;flex-wrap:wrap;min-height:80px}.message-header .outline{margin-left:auto}.message-thread{height:400px;min-height:240px;padding:24px;background:var(--surface);flex:1}.message-row{margin-bottom:16px}.message-bubble,.message-row.mine .message-bubble{padding:12px 16px;border-radius:12px;background:var(--surface-subtle);max-width:min(85%,56ch)}.message-row.mine .message-bubble{background:var(--accent-soft)}.message-bubble p{font-size:16px;line-height:24px;color:var(--text-body)}.message-time{margin-top:8px}.message-composer{padding:16px;gap:12px;border-color:var(--line)}.message-composer textarea{font-size:16px;line-height:24px;border-color:var(--field-border);padding:12px;min-height:80px;border-radius:8px}.message-note{padding:0 16px 16px;margin:0}.message-placeholder,.message-welcome{padding:48px 24px}.message-placeholder h3,.message-welcome h2{font-size:24px;line-height:32px}.message-placeholder p,.message-welcome p{font-size:16px;line-height:24px;margin:16px 0 24px}.message-back{display:none}.message-count{font-size:14px;min-width:24px;height:24px;border-radius:12px;background:var(--accent)}
.avatar,.hub-person-avatar{aspect-ratio:1;object-fit:cover}.contact-search{font-size:16px;border-color:var(--field-border);min-height:40px;border-radius:8px;padding:8px 12px}.contact-row{gap:12px;padding:16px;font-size:14px;line-height:20px}.contact-row select{border-color:var(--field-border);font-size:14px;border-radius:8px;min-height:40px}.contact-row.header{text-transform:none;letter-spacing:0;font-size:14px;color:var(--text-secondary)}
@container workspace (min-width:864px){.layout{grid-template-columns:minmax(560px,1fr) 280px}}
@container workspace (max-width:663px){.messenger{grid-template-columns:minmax(0,1fr)}.message-people{border:0}.messenger .message-main{display:none}.messenger.thread-open .message-people{display:none}.messenger.thread-open .message-main{display:flex}.message-back{display:inline-flex;align-items:center;padding:8px;gap:8px;font-size:14px;min-height:40px}.message-header .message-back{margin-left:0}.message-thread{height:360px}.message-composer{flex-wrap:wrap}.message-composer textarea{width:100%}}
@media(min-width:600px){:root{--page-margin:24px}}
@media(min-width:840px){:root{--page-margin:32px}}
@media(min-width:1200px){:root{--page-margin:40px}}
@media(min-width:1600px){:root{--page-margin:48px}}
@media(max-width:839px){.app{margin-left:0;padding-bottom:80px}.sidebar{position:fixed;inset:auto 0 0;width:100%;height:80px;padding:8px 12px;flex-direction:row;border-right:0;border-top:1px solid var(--line);background:var(--surface)}.sidebar>.brand,.sidebar>.profile,.sidebar>.section-label,.sidebar>.mini-network,.sidebar>.sidebar-bottom,.sidebar>.sidebar-note{display:none}.sidebar .nav{display:flex;flex-direction:row;width:100%;gap:4px;justify-content:space-around}.nav button{flex:1;flex-direction:column;gap:4px;padding:4px;min-width:0;font-size:14px;line-height:20px;min-height:56px}.nav .count{position:absolute;top:0;right:8px}.nav button{position:relative}.mobile-brand{display:flex;font-size:24px}.crumb{display:none}.topbar{min-height:72px}.top-actions .search{display:none}.workspace{padding-top:24px}.page-heading{gap:16px;margin-bottom:24px}.page-heading>.hub-tag{width:100%}.community-empty{padding:40px 24px}.sidebar-bottom{display:none}.browser-contact{grid-template-columns:24px minmax(0,1fr) 120px}}
@media(max-width:599px){button,.primary,.outline,.filter,.connect-small,.icon-btn,.modal button,input:not([type=checkbox]):not([type=range]),select{min-height:48px}.workspace{padding-inline:16px}.topbar{padding-inline:16px}.top-actions{gap:4px}.top-actions .browser-mode,.top-actions .x-mode{max-width:128px;white-space:normal;font-size:14px}.mobile-brand{font-size:20px;gap:8px}.post,.side-card{padding:16px}.post-head{gap:8px}.post-rank{margin-left:0}.post-foot{gap:8px}.source-link{margin-left:0}.modal-backdrop{padding:0;align-items:stretch}.modal{width:100%!important;max-width:100%;max-height:100dvh;min-height:100dvh;padding:24px 16px;border-radius:0}.modal-top h2{font-size:24px;line-height:32px}.goal-options{grid-template-columns:1fr}.modal-actions>*{flex:1}.contact-row{grid-template-columns:24px minmax(0,1fr);gap:12px}.contact-row>:nth-child(n+3){grid-column:2;display:block!important}.contact-row.header{display:none}.browser-contact{grid-template-columns:24px minmax(0,1fr)}.contact-person{min-width:0;white-space:normal}.contact-person strong{overflow-wrap:break-word}.message-header{gap:12px}.message-header .message-back{width:100%}.message-thread{padding:16px}.message-bubble{max-width:92%}.welcome{margin-top:0}.sort{display:block}.filters{gap:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Explicitly override legacy, more-specific type and flex rules. */
.message-bubble time{display:block;font-size:14px;line-height:20px;color:var(--text-secondary);margin-top:8px}.message-composer button{font-size:14px;line-height:20px;padding:8px 16px;min-height:40px}.material-symbols-outlined{flex:0 0 20px!important}.nav .material-symbols-outlined{flex-basis:24px!important}.share-entry>.material-symbols-outlined{display:inline-block!important;text-align:center!important;min-width:20px;margin:0!important}.share-entry>span:not(.material-symbols-outlined){display:flex;flex:1;min-width:0;flex-direction:column;gap:4px}.sidebar-bottom>.share-entry strong{white-space:normal;font-size:14px;line-height:20px}.sidebar-bottom>.share-entry small{font-size:14px;line-height:20px}.message-composer textarea{background:var(--surface)}
@media(max-width:599px){.message-composer button{min-height:48px}}
.hub-note{font-size:14px!important;line-height:20px!important;color:var(--text-secondary)!important;margin:16px 0!important}.hub-tabs,.hub-actions{gap:12px;margin:24px 0}.hub-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:24px;margin-top:24px}.hub-card{border-radius:12px;padding:24px;margin:0;box-shadow:none;background:var(--surface)}.hub-card h2{font-size:24px;line-height:32px}.hub-card h3{font-size:16px;line-height:24px}.hub-card h2,.hub-card h3{margin:16px 0 8px}.hub-card p,.hub-member p{font-size:16px;line-height:24px;color:var(--text-secondary);margin:12px 0}.hub-card .hub-actions{margin:24px 0 0}.hub-person-avatar{width:48px;height:48px}.hub-card>.hub-person-avatar{width:48px;height:48px;margin-bottom:0}.connect-profile .profile-header{margin-bottom:24px}.connect-profile .profile-header h3{font-size:24px;line-height:32px;margin:0 0 8px}.connect-profile .profile-header p{font-size:16px;line-height:24px;margin:0 0 8px}.connect-profile .person-detail{margin-top:24px}.connect-profile .person-detail h4{font-size:16px;line-height:24px;margin-bottom:8px}.connect-profile .person-detail p{font-size:16px;line-height:24px}.connect-profile .connect-priority{padding-top:24px}.connect-profile .connect-priority small{margin-top:8px}.profile-section>.field-help{margin:0 0 24px}.profile-section>label{margin-top:24px}.profile-editor form>.private-info{font-size:14px;line-height:20px}.field-meta,.field-meta span,.private-info{font-size:14px!important;line-height:20px!important;color:var(--text-secondary)}.rightbar .network-row small{font-size:14px;line-height:20px}.platform-empty h3{font-size:24px;line-height:32px;color:var(--text-strong)}.platform-empty p{font-size:16px;line-height:24px}.platform-empty .outline{font-size:14px}.toast{font-size:14px;line-height:20px;border-radius:8px;background:#284e90}.page-heading>div{min-width:0}.feed-tabs{align-items:center}.profile-header{flex-wrap:wrap}.profile-header>div{min-width:0;flex:1}.connect-profile .profile-header>div{min-width:180px}.sidebar .profile>span:last-of-type{font-size:14px}.goal-tags{margin-top:12px}.goal-options{margin-bottom:24px}.field-help{margin-top:12px}.post,.hub-card{overflow-wrap:break-word}
@media(max-width:599px){.connect-profile .profile-header>div{min-width:0;flex-basis:100%}.message-people{max-height:none}.feed-tabs{align-items:flex-start;gap:16px}.feed-tabs>.tabs{display:flex;flex-wrap:wrap}.hub-actions{gap:12px}.profile-section>.field-help{margin-bottom:24px}.nav button{padding-inline:4px!important}}
.pill,.count{font-size:14px;line-height:20px;border-radius:4px;padding:0 4px;color:var(--text-secondary)}.feed-date{letter-spacing:0}.page-heading h1,.modal-top h2{font-weight:600}.welcome .eyebrow{text-transform:none!important}.welcome .eyebrow::first-letter{text-transform:uppercase}.nav button{flex-shrink:0}
@media(max-width:839px){.sidebar .nav button{flex:1 0 auto}.sidebar .nav{gap:0}.nav button{padding-inline:4px!important}}
@container workspace (max-width:663px){.messenger{min-height:0}.message-people{min-height:320px}.message-main{min-height:600px}}
/* Brand surfaces are product requirements: preserve the original sky-to-rose palette. */
:root{--brand-page-gradient:linear-gradient(180deg,#a9d3fc 0px,#b7dafb 150px,#d0e0f4 300px,#eee5ec 440px,#f7f0f2 520px,#fff 660px,#f5f7fb 850px)}
.app,.app.moments-page{background:var(--brand-page-gradient)}
.sidebar{background:linear-gradient(180deg,#f7f9ff 0%,#fdfdff 52%,#f9f8fd 100%)}
.app .topbar,.moments-page .topbar{background:transparent;border-bottom:1px solid #ffffff66;backdrop-filter:none}
.app .search{background:#ffffff80;border-color:#8b9fb8}
.app .crumb,.app .crumb strong{color:#34455b}
.moments-page .workspace{padding-top:0}
.moments-page .welcome{background:transparent;border:0;border-radius:0;box-shadow:none;min-height:370px;margin-bottom:24px;padding:48px 20px 64px;text-align:center;align-items:center}
.moments-page .welcome h2{font-size:clamp(34px,3.5vw,48px);line-height:1.15;font-weight:600;letter-spacing:-1.5px;max-width:650px;color:#141820}
.moments-page .welcome p{font-size:16px;line-height:24px;color:#45556c;margin-top:24px;max-width:500px}
.moments-page .welcome .eyebrow{font-size:14px;line-height:20px;color:#4a5b6f;margin-bottom:24px}
@media(max-width:839px){.sidebar{background:#fff}}
@media(max-width:599px){
 .app,.app.moments-page{background:linear-gradient(180deg,#a9d3fc 0px,#c4dff8 200px,#eee5ec 380px,#fff 560px,#f5f7fb 750px)}
 .moments-page .welcome{min-height:352px;padding:48px 4px 56px;margin-bottom:16px}
 .moments-page .welcome h2{font-size:36px;line-height:40px;letter-spacing:-1px;max-width:340px}
 .moments-page .welcome p{font-size:16px;line-height:24px;max-width:288px;margin-top:24px}
}
/* LinkAlta brand: a black social graph mark and the original gradient palette. */
.brand{gap:12px;letter-spacing:-1px;align-items:center}.brand-symbol{width:36px;height:36px;object-fit:contain;border-radius:0;box-shadow:none}.mobile-brand{gap:12px;letter-spacing:-.8px}.mobile-brand img{width:32px;height:32px;object-fit:contain;border-radius:0}
