:root{
 --bg:#f5f7fb;--surface:#fff;--surface2:#f0f3f8;--text:#161a2a;--muted:#6e768c;--line:#e4e8f1;
 --brand:#6d4aff;--brand2:#19b9b0;--brand3:#ffb347;--danger:#ef4b68;--success:#1fa66d;
 --shadow:0 18px 50px rgba(34,42,75,.08);--radius:24px;--top:72px;
}
html[data-theme="dark"]{--bg:#090e1a;--surface:#111829;--surface2:#161f33;--text:#f5f7ff;--muted:#9ca7c1;--line:#24304a;--shadow:0 18px 60px rgba(0,0,0,.3)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}.muted{color:var(--muted)}.small{font-size:12px}.inline{display:inline-flex;margin:0}.eyebrow{font-size:12px;font-weight:900;letter-spacing:.15em;color:var(--brand2)}.verified{display:inline-grid;place-items:center;width:17px;height:17px;border-radius:50%;background:var(--brand);color:white;font-size:11px;margin-left:4px;vertical-align:1px}.bigcheck{width:23px;height:23px;font-size:14px}.name{font-weight:800}.full{width:100%}
.topbar{position:sticky;top:0;z-index:70;height:var(--top);display:flex;align-items:center;gap:24px;padding:0 max(24px,calc((100vw - 1460px)/2));background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(20px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-size:21px;font-weight:900;min-width:220px}.brand-mark{width:40px;height:40px;border-radius:14px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:white;display:grid;place-items:center;font-weight:1000;box-shadow:0 10px 24px color-mix(in srgb,var(--brand) 30%,transparent)}.brand-mark.big{width:78px;height:78px;border-radius:26px;font-size:36px}.global-search{height:44px;max-width:540px;flex:1;display:flex;align-items:center;gap:8px;background:var(--surface2);border:1px solid var(--line);border-radius:16px;padding:0 14px}.global-search input{border:0;outline:0;background:transparent;color:var(--text);width:100%}.top-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.icon-btn{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.btn{border:0;border-radius:14px;padding:11px 17px;background:linear-gradient(135deg,var(--brand),#8b65ff);color:#fff;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 10px 28px color-mix(in srgb,var(--brand) 20%,transparent)}.btn:hover{transform:translateY(-1px)}.btn.secondary{background:var(--surface);color:var(--text);border:1px solid var(--line);box-shadow:none}.btn.large{padding:14px 22px;border-radius:16px;font-size:16px}.ghost-btn{border:0;background:transparent;color:var(--muted);font-weight:700;padding:9px 10px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center}.ghost-btn:hover{background:var(--surface2);color:var(--brand)}
.flash{position:fixed;right:24px;top:90px;z-index:90;padding:13px 18px;border-radius:14px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);max-width:420px;font-weight:700}.flash.error{border-color:#ef4b6870;color:var(--danger)}.flash.success{border-color:#1fa66d70;color:var(--success)}
.app-shell{width:min(1460px,100%);margin:0 auto;display:grid;grid-template-columns:230px minmax(0,720px) 320px;gap:28px;padding:28px 24px 80px}.left-rail,.right-rail{position:sticky;top:calc(var(--top) + 24px);height:calc(100vh - var(--top) - 48px);align-self:start}.side-nav{display:grid;gap:5px}.side-nav a{padding:12px 14px;border-radius:14px;display:flex;align-items:center;gap:14px;color:var(--muted);font-weight:750;font-size:15px}.side-nav a:hover,.side-nav a.active{background:var(--surface);color:var(--text);box-shadow:0 8px 26px rgba(30,40,70,.06)}.side-nav a.active{color:var(--brand)}.create-fab{display:flex;margin-top:18px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;padding:13px 16px;border-radius:16px;justify-content:center;font-weight:900}.main-column{min-width:0}.right-rail{overflow:auto;padding-bottom:20px}.widget{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:18px;margin-bottom:16px}.widget h3{font-size:16px;margin:0 0 14px}.trend{display:flex;flex-direction:column;padding:10px 0;border-bottom:1px solid var(--line)}.trend:last-child{border:0}.trend span{font-weight:800}.trend small,.person-row small{color:var(--muted)}.person-row{display:flex;align-items:center;gap:10px;padding:9px 0}.person-row>div{display:flex;flex-direction:column;min-width:0}.mobile-nav{display:none}
.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.page-head h1{font-size:38px;line-height:1.05;margin:5px 0 0;letter-spacing:-.035em}.page-head p{max-width:600px;margin:8px 0 0}.section-title{font-size:21px;margin:34px 0 16px}
.avatar{width:46px;height:46px;border-radius:15px;overflow:hidden;flex:0 0 auto;display:inline-block;background:var(--surface2)}.avatar img{width:100%;height:100%;object-fit:cover}.avatar.small{width:40px;height:40px;border-radius:13px}.avatar.mini{width:39px;height:39px;border-radius:13px}
.landing-hero{min-height:620px;background:radial-gradient(circle at 70% 30%,#6d4aff20,transparent 38%),linear-gradient(145deg,var(--surface),var(--surface2));border:1px solid var(--line);border-radius:34px;padding:54px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:30px;overflow:hidden;position:relative}.landing-hero:before{content:"";position:absolute;inset:auto -180px -210px auto;width:520px;height:520px;border:1px solid #6d4aff22;border-radius:50%;box-shadow:0 0 0 70px #6d4aff0c,0 0 0 140px #19b9b00a}.hero-copy{position:relative;z-index:2}.hero-copy h1{font-size:58px;line-height:.98;letter-spacing:-.055em;margin:14px 0 22px}.hero-copy h1 span{background:linear-gradient(90deg,var(--brand),var(--brand2));-webkit-background-clip:text;color:transparent}.hero-copy p{font-size:18px;color:var(--muted);max-width:640px}.hero-buttons{display:flex;gap:12px;margin-top:28px}.hero-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.hero-badges span{font-size:13px;padding:8px 11px;background:var(--surface);border:1px solid var(--line);border-radius:999px}.hero-visual{position:relative;min-height:520px}.phone-mock{width:330px;height:535px;border-radius:38px;background:#0d1426;color:white;border:10px solid #202b44;position:absolute;right:20px;top:0;box-shadow:0 40px 80px #10152c55;overflow:hidden;padding:20px}.mock-head{display:flex;justify-content:space-between;align-items:center}.mock-story-row{display:flex;gap:8px;margin:20px 0}.mock-story-row i{width:48px;height:48px;border-radius:16px;background:linear-gradient(135deg,#725aff,#22c6be);border:3px solid #10182a;outline:2px solid #765dff}.mock-post{background:#151f34;border-radius:22px;padding:15px}.mock-user{display:flex;gap:10px;align-items:center}.mock-user i{width:38px;height:38px;border-radius:12px;background:#8c6dff}.mock-user div{display:flex;flex-direction:column}.mock-user small{color:#8994b1}.mock-post p{font-size:13px;color:#d6def1}.mock-media{height:190px;border-radius:15px;background:radial-gradient(circle at 70% 30%,#70ffe180,transparent 30%),linear-gradient(145deg,#6746e8,#13234e);margin:14px 0}.mock-actions{font-size:12px;color:#aab5cf}.float-card{position:absolute;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:14px 16px;box-shadow:var(--shadow);z-index:3;display:flex;flex-direction:column}.float-card.one{left:0;top:115px}.float-card.two{left:10px;bottom:90px}.float-card small{color:var(--muted);font-size:11px}.landing-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:20px}.landing-grid article{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:26px}.landing-grid article>span{color:var(--brand);font-weight:900}.landing-grid h3{margin:10px 0 7px;font-size:20px}.landing-grid p{margin:0;color:var(--muted)}
.moments-strip{display:flex;gap:12px;overflow:auto;padding:2px 2px 14px;scrollbar-width:none}.moment-add,.moment-chip{min-width:74px;display:flex;flex-direction:column;align-items:center;gap:7px;font-size:11px}.moment-add>span,.moment-chip>span{width:64px;height:64px;border-radius:22px;display:grid;place-items:center;background:var(--surface);border:1px solid var(--line)}.moment-add>span{font-size:26px;color:var(--brand)}.moment-chip>span{padding:3px;background:linear-gradient(135deg,var(--brand),var(--brand2));border:0}.moment-chip img{width:100%;height:100%;object-fit:cover;border-radius:19px;border:3px solid var(--bg)}.composer-mini{display:flex;gap:10px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:14px;margin:8px 0 18px}.composer-placeholder{flex:1;background:var(--surface2);color:var(--muted);padding:12px 16px;border-radius:14px}.composer-icon{width:40px;height:40px;display:grid;place-items:center;color:var(--brand);border-radius:12px}.composer-icon:hover{background:var(--surface2)}
.feed{display:grid;gap:16px}.post-card{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:18px;box-shadow:0 8px 32px rgba(38,50,86,.035)}.post-head{display:flex;gap:12px;align-items:center}.post-meta{display:flex;flex-direction:column;min-width:0}.post-meta .muted{font-size:12px}.post-meta .muted a{color:var(--brand)}.post-menu{margin-left:auto;color:var(--muted);letter-spacing:2px}.post-content{font-size:16px;margin:16px 2px;white-space:normal;overflow-wrap:anywhere}.post-media{display:block;border-radius:19px;overflow:hidden;background:var(--surface2);max-height:600px}.post-media img{width:100%;max-height:600px;object-fit:cover}.post-stats{display:flex;justify-content:space-between;color:var(--muted);font-size:12px;padding:12px 2px 8px;border-bottom:1px solid var(--line)}.post-actions{display:grid;grid-template-columns:repeat(3,1fr);padding-top:5px}.post-actions form{display:flex}.post-actions form button{width:100%}.poll-box{display:grid;gap:8px;margin:14px 0}.poll-option button{width:100%;height:45px;position:relative;overflow:hidden;border:1px solid var(--line);background:var(--surface2);border-radius:13px;color:var(--text);display:flex;align-items:center;justify-content:space-between;padding:0 14px;font-weight:700}.poll-option button span,.poll-option button b{position:relative;z-index:2}.poll-option button i{position:absolute;inset:0 auto 0 0;background:color-mix(in srgb,var(--brand) 22%,transparent);z-index:1}.empty-state{background:var(--surface);border:1px dashed var(--line);border-radius:26px;padding:50px 28px;text-align:center}.empty-state>span{font-size:34px}.empty-state h2{margin:10px 0 5px}.empty-state p{color:var(--muted);margin:0 0 20px}
.comments-panel{margin-top:16px;background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:20px}.comments-panel h3{margin-top:0}.comment{display:flex;gap:11px;padding:14px 0;border-bottom:1px solid var(--line)}.comment-body{min-width:0}.comment-body small{display:block;color:var(--muted)}.comment-body p{margin:6px 0}.comment-form{display:grid;grid-template-columns:40px 1fr auto;gap:10px;margin-top:16px}.comment-form textarea{min-height:44px;resize:vertical}
.auth-wrap{min-height:calc(100vh - var(--top) - 40px);display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:20px}.auth-art,.auth-card{border-radius:34px;min-height:620px}.auth-art{padding:50px;background:linear-gradient(145deg,#6d4aff,#0ea29c);color:#fff;position:relative;overflow:hidden}.auth-art.alt{background:linear-gradient(145deg,#1d57dd,#7f49e9 54%,#ed7097)}.auth-art h1{font-size:50px;line-height:1.02;letter-spacing:-.045em;max-width:520px;margin-top:130px}.auth-art p{max-width:500px;font-size:18px;color:#ffffffd9}.art-orb{position:absolute;width:520px;height:520px;border-radius:50%;border:70px solid #ffffff10;right:-170px;bottom:-220px;box-shadow:0 0 0 70px #ffffff08}.auth-card{background:var(--surface);border:1px solid var(--line);padding:64px;display:flex;flex-direction:column;justify-content:center}.auth-card h2{font-size:38px;margin:7px 0}.auth-card form{display:grid;gap:16px;margin-top:20px}.auth-card label,.settings-card label,.modal-card label,.field-grid label{display:grid;gap:7px;color:var(--muted);font-size:13px;font-weight:700}.auth-card input,.settings-card input,.settings-card textarea,.modal-card input,.modal-card textarea,.modal-card select,.field-grid input,.field-grid select,.create-card input,.create-card textarea,.create-card select,.search-large input,.moment-create textarea{width:100%;border:1px solid var(--line);background:var(--surface2);color:var(--text);border-radius:14px;padding:13px 14px;outline:0}.auth-card input:focus,.settings-card input:focus,.modal-card input:focus,textarea:focus,select:focus{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 12%,transparent)}.input-prefix{display:flex;align-items:center;border:1px solid var(--line);background:var(--surface2);border-radius:14px;padding-left:14px}.input-prefix input{border:0;background:transparent}.auth-switch{text-align:center;color:var(--muted);margin-top:18px}.auth-switch a{color:var(--brand);font-weight:800}
.onboarding{text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:32px;padding:48px}.onboarding h1{font-size:44px;max-width:650px;line-height:1.05;margin:12px auto 32px}.onboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 0 30px}.onboard-grid article{padding:26px;background:var(--surface2);border-radius:22px;text-align:left}.onboard-grid article>span{font-size:28px;color:var(--brand)}.onboard-grid h3{margin:12px 0 5px}.onboard-grid p{color:var(--muted)}.onboard-grid a{color:var(--brand);font-weight:800}
.create-card,.settings-card{background:var(--surface);border:1px solid var(--line);border-radius:26px;padding:24px}.create-user,.edit-profile-preview{display:flex;gap:12px;align-items:center;margin-bottom:14px}.create-user div,.edit-profile-preview div{display:flex;flex-direction:column}.create-user small,.edit-profile-preview small{color:var(--muted)}.big-composer{min-height:160px;font-size:20px!important;line-height:1.5;resize:vertical}.field-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:14px 0}.full-span{grid-column:1/-1}.field-grid textarea,.settings-card textarea,.modal-card textarea{min-height:110px;resize:vertical}.upload-zone{display:flex!important;align-items:center!important;gap:12px!important;border:1px dashed var(--line);border-radius:16px;padding:14px;color:var(--brand)!important;cursor:pointer}.upload-zone span{display:flex;flex-direction:column;color:var(--text)}.upload-zone small{color:var(--muted)}.upload-zone input{display:none}.toggle-row{padding:14px 0}.poll-fields{display:none;grid-template-columns:1fr 1fr;gap:8px;background:var(--surface2);padding:14px;border-radius:18px;margin-bottom:16px}.poll-fields.show{display:grid}
.profile-hero{background:var(--surface);border:1px solid var(--line);border-radius:28px;overflow:hidden}.cover{height:220px;background:linear-gradient(135deg,#6044df,#1ab8ae);background-size:cover;background-position:center}.profile-main{padding:0 26px 26px;position:relative}.profile-avatar{width:126px;height:126px;border-radius:34px;object-fit:cover;border:6px solid var(--surface);margin-top:-62px;background:var(--surface2)}.profile-actions{float:right;margin-top:15px;display:flex;gap:8px}.profile-main h1{font-size:31px;margin:14px 0 0}.profile-bio{max-width:600px;margin:14px 0}.profile-details,.profile-counts{display:flex;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:13px;margin-top:12px}.profile-details a{color:var(--brand)}.profile-counts b{color:var(--text)}.profile-tabs{display:flex;gap:28px;padding:19px 24px;margin:14px 0;background:var(--surface);border:1px solid var(--line);border-radius:18px}.profile-tabs b{color:var(--brand)}.edit-profile-preview img{width:70px;height:70px;border-radius:22px;object-fit:cover}
.people-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.people-card{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:18px;text-align:center}.people-card>img{width:72px;height:72px;object-fit:cover;border-radius:23px;margin:0 auto 12px}.people-card h3{font-size:16px;margin:0}.people-card>span{font-size:12px;color:var(--muted)}.people-card p{font-size:12px;color:var(--muted);min-height:52px}.people-card .btn{width:100%}.circle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.circle-grid.large{grid-template-columns:repeat(2,1fr)}.circle-card{background:var(--surface);border:1px solid var(--line);border-radius:22px;overflow:hidden;transition:.2s}.circle-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.circle-cover{height:115px;background:radial-gradient(circle at 70% 30%,#64f0d9,transparent 30%),linear-gradient(145deg,#6547e8,#172a58);background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:14px;color:white}.circle-cover span{font-size:28px}.circle-card>h3,.circle-card>p,.circle-card>small{margin-left:16px;margin-right:16px}.circle-card>h3{margin-bottom:5px}.circle-card>p{font-size:12px;color:var(--muted);min-height:42px}.circle-card>small{display:block;margin-bottom:16px;color:var(--muted)}.circle-card-body{padding:16px}.circle-card-body h3{margin:0 0 5px}.circle-card-body p{color:var(--muted);font-size:13px;min-height:40px}.circle-card-body div{display:flex;gap:12px;color:var(--muted);font-size:12px}.circle-hero{border:1px solid var(--line);background:var(--surface);border-radius:28px;overflow:hidden}.circle-hero-cover{height:230px;background:radial-gradient(circle at 20% 20%,#39e6c9aa,transparent 30%),linear-gradient(145deg,#6445e5,#17284f);background-size:cover;background-position:center}.circle-hero-body{display:flex;align-items:center;gap:18px;padding:22px}.circle-symbol{width:72px;height:72px;border-radius:23px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:white;font-size:34px;display:grid;place-items:center;flex:0 0 auto}.circle-info{flex:1}.circle-info h1{margin:2px 0;font-size:30px}.circle-info p{color:var(--muted);margin:5px 0}.circle-info small{font-weight:900;color:var(--brand2)}.circle-info>span{font-size:12px;color:var(--muted)}.circle-compose{display:block;background:var(--surface);border:1px solid var(--line);border-radius:17px;padding:14px 18px;margin:14px 0;color:var(--brand);font-weight:800}
.search-large{display:flex;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:8px 8px 8px 16px;align-items:center}.search-large input{border:0;background:transparent;flex:1}.search-list{display:grid;gap:8px}.search-row{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--line);padding:12px 14px;border-radius:17px}.search-row>div{display:flex;flex-direction:column}.search-row small{color:var(--muted)}.circle-mini{width:40px;height:40px;border-radius:13px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:white;display:grid;place-items:center;font-size:22px}
.moment-create{background:var(--surface);border:1px solid var(--line);border-radius:23px;padding:18px;margin-bottom:18px}.moment-create textarea{min-height:90px;resize:vertical}.moment-tools{display:flex;align-items:center;gap:12px;margin-top:10px}.moment-tools label{font-size:12px;color:var(--muted)}.file-pill{padding:9px 12px;border:1px solid var(--line);border-radius:12px;cursor:pointer}.file-pill input{display:none}.moment-tools .btn{margin-left:auto}.moment-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.moment-card{min-height:340px;border-radius:26px;color:white;background-size:cover;background-position:center;padding:18px;display:flex;flex-direction:column;position:relative;overflow:hidden}.moment-author{display:flex;gap:9px;align-items:center}.moment-author img{width:42px;height:42px;border-radius:14px;object-fit:cover;border:2px solid white}.moment-author div{display:flex;flex-direction:column}.moment-author small{opacity:.8}.moment-card p{font-size:23px;font-weight:800;margin:auto 0;white-space:pre-wrap}.moment-expiry{font-size:12px;opacity:.85}
.event-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.event-card{background:var(--surface);border:1px solid var(--line);border-radius:24px;overflow:hidden}.event-cover{height:170px;background:radial-gradient(circle at 70% 30%,#69ffe4aa,transparent 25%),linear-gradient(145deg,#6246e5,#15264e);background-size:cover;background-position:center;padding:14px}.date-badge{width:60px;height:67px;border-radius:16px;background:#ffffffeb;color:#171b2a;display:flex;flex-direction:column;align-items:center;justify-content:center}.date-badge b{font-size:23px;line-height:1}.date-badge span{font-size:11px;font-weight:800}.event-body{padding:18px}.event-body>small{color:var(--brand2);font-weight:900}.event-body h3{margin:5px 0;font-size:19px}.event-body p,.event-body>span{color:var(--muted);font-size:12px}.event-body form{margin-top:12px}
.messages-layout{height:calc(100vh - var(--top) - 56px);background:var(--surface);border:1px solid var(--line);border-radius:26px;overflow:hidden;display:grid;grid-template-columns:280px 1fr}.conversation-list{border-right:1px solid var(--line);overflow:auto}.messages-title{padding:18px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.messages-title h2{margin:0}.conversation-row{display:grid;grid-template-columns:40px 1fr auto;gap:10px;align-items:center;padding:13px;border-bottom:1px solid var(--line)}.conversation-row:hover,.conversation-row.active{background:var(--surface2)}.conversation-row>div{display:flex;flex-direction:column;min-width:0}.conversation-row small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-row time{font-size:10px;color:var(--muted)}.padded{padding:18px}.chat-panel{display:flex;flex-direction:column;min-width:0}.chat-head{height:70px;padding:12px 16px;border-bottom:1px solid var(--line);display:flex;gap:10px;align-items:center}.chat-head>div{display:flex;flex-direction:column}.chat-head small{color:var(--muted)}.chat-stream{flex:1;overflow:auto;padding:18px;display:flex;flex-direction:column;gap:9px;background:linear-gradient(180deg,var(--surface2),var(--surface))}.bubble{align-self:flex-start;max-width:76%;background:var(--surface);border:1px solid var(--line);border-radius:18px 18px 18px 5px;padding:10px 12px;box-shadow:0 5px 20px rgba(0,0,0,.03)}.bubble.mine{align-self:flex-end;background:linear-gradient(135deg,var(--brand),#7d61ef);color:white;border:0;border-radius:18px 18px 5px 18px}.bubble p{margin:0}.bubble small{display:block;text-align:right;opacity:.7;font-size:10px;margin-top:4px}.bubble img{border-radius:12px;margin-bottom:7px;max-height:260px;object-fit:cover}.chat-compose{display:grid;grid-template-columns:38px 1fr auto;gap:8px;padding:12px;border-top:1px solid var(--line)}.chat-compose textarea{border:1px solid var(--line);background:var(--surface2);border-radius:14px;padding:10px 12px;min-height:44px;max-height:120px;resize:none;color:var(--text)}.attach{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;border:1px solid var(--line);cursor:pointer}.attach input{display:none}.chat-empty{margin:auto;background:transparent;border:0}
.notification-list{display:grid;gap:8px}.notification-row{display:grid;grid-template-columns:40px 1fr 40px;gap:12px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:13px}.notification-row.unread{border-color:color-mix(in srgb,var(--brand) 40%,var(--line));background:color-mix(in srgb,var(--brand) 4%,var(--surface))}.notification-row p{margin:0}.notification-row small{color:var(--muted)}.note-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:var(--surface2)}
.settings-list{display:grid;gap:8px}.settings-list>a,.settings-list>button,.settings-action>button{width:100%;display:grid;grid-template-columns:46px 1fr auto;gap:12px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:14px;color:var(--text);text-align:left}.settings-list>a>span,.settings-list>button>span,.settings-action button>span{width:42px;height:42px;border-radius:13px;background:var(--surface2);display:grid;place-items:center}.settings-list div,.settings-action div{display:flex;flex-direction:column}.settings-list small,.settings-action small{color:var(--muted)}.settings-list i,.settings-action i{font-size:23px;color:var(--muted)}.settings-action{margin:0}
.modal{display:none;position:fixed;inset:0;background:#060a13bb;backdrop-filter:blur(8px);z-index:100;align-items:center;justify-content:center;padding:20px}.modal.show{display:flex}.modal-card{width:min(580px,100%);max-height:90vh;overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:27px;padding:26px;position:relative}.modal-card h2{font-size:28px}.modal-card form{display:grid;gap:13px}.modal-x{position:absolute;right:18px;top:18px;border:0;background:var(--surface2);color:var(--text);width:36px;height:36px;border-radius:12px;font-size:22px}
@media(max-width:1180px){.app-shell{grid-template-columns:80px minmax(0,720px) 280px;gap:20px}.brand{min-width:auto}.side-nav a{justify-content:center;font-size:20px}.side-nav a span{display:none}.create-fab{font-size:0}.create-fab:after{content:'＋';font-size:25px}.landing-hero{grid-template-columns:1fr;padding:42px}.hero-visual{display:none}.landing-grid{grid-template-columns:1fr 1fr}.people-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:930px){.right-rail{display:none}.app-shell{grid-template-columns:78px minmax(0,1fr);max-width:860px}.global-search{max-width:420px}.auth-wrap{grid-template-columns:1fr}.auth-art{display:none}.auth-card{min-height:auto;max-width:620px;width:100%;margin:auto}.messages-layout{grid-template-columns:240px 1fr}.circle-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){:root{--top:62px}.topbar{padding:0 14px;gap:10px}.brand span:last-child{display:none}.global-search{height:40px}.global-search input::placeholder{color:transparent}.top-actions .btn{display:none}.app-shell{display:block;padding:16px 12px 92px}.left-rail,.right-rail{display:none}.mobile-nav{position:fixed;z-index:80;bottom:0;left:0;right:0;height:72px;background:color-mix(in srgb,var(--surface) 96%,transparent);backdrop-filter:blur(20px);border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(5,1fr);align-items:center;padding-bottom:env(safe-area-inset-bottom)}.mobile-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:18px;gap:1px}.mobile-nav span{font-size:10px;color:var(--muted)}.mobile-nav .center{width:50px;height:50px;border-radius:17px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:white;margin:auto;font-size:28px;box-shadow:0 10px 24px #6d4aff40}.page-head{align-items:center}.page-head h1{font-size:30px}.page-head .btn{padding:10px 12px;font-size:12px}.landing-hero{padding:28px 22px;min-height:auto;border-radius:25px}.hero-copy h1{font-size:42px}.hero-copy p{font-size:15px}.hero-buttons{flex-direction:column}.hero-badges{gap:6px}.landing-grid{grid-template-columns:1fr}.post-card{padding:14px;border-radius:20px}.post-actions .ghost-btn{font-size:11px;padding:8px 3px}.comment-form{grid-template-columns:36px 1fr}.comment-form .btn{grid-column:2}.auth-wrap{padding:10px}.auth-card{padding:30px 22px;border-radius:24px}.auth-card h2{font-size:30px}.onboarding{padding:30px 18px}.onboarding h1{font-size:32px}.onboard-grid{grid-template-columns:1fr}.field-grid{grid-template-columns:1fr}.full-span{grid-column:auto}.poll-fields{grid-template-columns:1fr}.cover{height:165px}.profile-avatar{width:100px;height:100px;border-radius:28px;margin-top:-50px}.profile-main{padding:0 18px 20px}.profile-actions{float:none;display:flex;justify-content:flex-end;margin-top:-45px;margin-bottom:18px}.profile-main h1{font-size:26px}.profile-details{gap:8px}.profile-tabs{overflow:auto;gap:20px}.people-grid,.circle-grid,.circle-grid.large,.event-grid,.moment-grid{grid-template-columns:1fr}.circle-hero-cover{height:150px}.circle-hero-body{align-items:flex-start;flex-wrap:wrap}.circle-symbol{width:58px;height:58px}.circle-info{min-width:calc(100% - 80px)}.circle-hero-body form{width:100%}.circle-hero-body form .btn{width:100%}.moment-tools{flex-wrap:wrap}.moment-tools .btn{width:100%;margin-left:0}.messages-layout{height:calc(100vh - var(--top) - 88px);display:block;border-radius:22px}.conversation-list{height:100%;border:0}.chat-panel{display:none}.messages-layout:has(.chat-head) .conversation-list{display:none}.messages-layout:has(.chat-head) .chat-panel{display:flex;height:100%}.bubble{max-width:86%}.search-large{flex-wrap:wrap}.search-large .btn{width:100%}.flash{left:12px;right:12px;top:72px}.modal{padding:10px}.modal-card{padding:22px;border-radius:22px}}
.post-actions{grid-template-columns:repeat(4,1fr)}.repost-card{display:block;border:1px solid var(--line);border-radius:18px;padding:13px;margin:14px 0;background:var(--surface2)}.repost-head{display:flex;gap:9px;align-items:center}.repost-head>div{display:flex;flex-direction:column}.repost-head small{color:var(--muted)}.repost-card p{margin:10px 0;color:var(--text)}.repost-media{width:100%;max-height:280px;object-fit:cover;border-radius:13px}.post-owner-tools{text-align:right;margin-top:6px}.post-owner-tools button{border:0;background:transparent;color:var(--muted);font-size:11px;padding:4px}.post-owner-tools button:hover{color:var(--danger)}
@media(max-width:680px){.post-actions{grid-template-columns:repeat(4,1fr)}.post-actions .ghost-btn{font-size:10px}.post-actions .ghost-btn{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}
.circle-manage{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:18px;margin:14px 0}.circle-manage h3{margin:4px 0 12px}.member-manage-row{display:grid;grid-template-columns:40px 1fr auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}.member-manage-row>div{display:flex;flex-direction:column}.member-manage-row small{color:var(--muted)}.member-manage-row form{display:flex;gap:6px}@media(max-width:680px){.member-manage-row{grid-template-columns:40px 1fr}.member-manage-row form{grid-column:2;flex-wrap:wrap}}
.security-card,.danger-card{margin-top:18px}.security-card h2,.danger-card h2{margin:5px 0 16px}.danger-card details{margin-top:18px;padding-top:15px;border-top:1px solid var(--line)}.danger-card summary{cursor:pointer;font-weight:800;color:var(--danger)}.danger-card details form{display:grid;gap:12px;max-width:420px}.danger-button{background:var(--danger);box-shadow:none}.logout-action button{width:auto!important;display:inline-flex!important;grid-template-columns:none!important}.logout-action{margin:0!important}
.soft-line{border:0;border-top:1px solid var(--line);margin:18px 0}
.post-tools-menu{margin-left:auto;position:relative;color:var(--muted)}.post-tools-menu summary{list-style:none;cursor:pointer;letter-spacing:2px;padding:5px}.post-tools-menu summary::-webkit-details-marker{display:none}.post-tools-menu>div{position:absolute;right:0;top:32px;z-index:10;width:180px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:6px;box-shadow:var(--shadow)}.post-tools-menu button,.post-tools-menu span{display:block;width:100%;border:0;background:transparent;color:var(--text);padding:9px 10px;text-align:left;border-radius:9px;font-size:12px}.post-tools-menu button:hover{background:var(--surface2);color:var(--danger)}
.notify-btn{position:relative}.notify-btn #notifyBadge{display:none;position:absolute;right:-4px;top:-5px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--danger);color:white;font-size:10px;font-weight:900;place-items:center;border:2px solid var(--surface)}.notify-btn #notifyBadge.show{display:grid}


/* NexoVivo 1.0.2 — public home rebuilt without visual mockups */
.app-shell.guest-home{
  grid-template-columns:190px minmax(0,1fr);
  gap:24px;
  max-width:1280px;
}
.guest-home .right-rail{display:none!important}
.guest-home .main-column{width:100%;max-width:none}
.guest-home .left-rail .side-nav a{padding:12px 14px}

.landing-hero-v3{
  display:block;
  min-height:0;
  padding:64px 62px 48px;
  border-radius:32px;
  overflow:hidden;
  background:
    radial-gradient(circle at 92% 8%,rgba(109,74,255,.14),transparent 28%),
    radial-gradient(circle at 72% 92%,rgba(25,185,176,.10),transparent 30%),
    linear-gradient(145deg,var(--surface),var(--surface2));
}
.landing-hero-v3:before{
  width:420px;
  height:420px;
  right:-210px;
  bottom:-230px;
  opacity:.7;
}
.landing-hero-v3:after{display:none!important}
.landing-hero-v3 .hero-copy-v3{
  position:relative;
  z-index:2;
  width:100%;
  max-width:900px;
}
.landing-hero-v3 .hero-copy-v3 h1{
  max-width:840px;
  margin:16px 0 24px;
  font-size:clamp(48px,5.1vw,76px);
  line-height:.98;
  letter-spacing:-.058em;
}
.landing-hero-v3 .hero-copy-v3 h1 span{
  background:linear-gradient(90deg,var(--brand),#4e7fe8 52%,var(--brand2));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.landing-hero-v3 .hero-lead{
  max-width:730px;
  margin:0;
  color:var(--muted);
  font-size:18px;
  line-height:1.7;
}
.hero-buttons-v3{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:30px;
}
.hero-buttons-v3 .btn{
  min-height:52px;
  padding:13px 22px;
}
.hero-trust{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  margin-top:42px;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:20px;
  background:var(--line);
}
.hero-trust>div{
  min-width:0;
  padding:18px 17px;
  background:var(--surface);
}
.hero-trust strong{
  display:block;
  margin-bottom:5px;
  color:var(--text);
  font-size:14px;
}
.hero-trust span{
  display:block;
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
}

.landing-intro-v3{
  padding:58px 12px 24px;
  max-width:880px;
}
.landing-intro-v3 h2{
  margin:10px 0 14px;
  max-width:820px;
  font-size:clamp(30px,3.1vw,44px);
  line-height:1.08;
  letter-spacing:-.04em;
}
.landing-intro-v3 p{
  max-width:680px;
  margin:0;
  color:var(--muted);
  font-size:16px;
  line-height:1.7;
}

.landing-grid-v3{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin-top:18px;
}
.landing-grid-v3 article{
  min-width:0;
  min-height:218px;
  padding:28px;
  border-radius:24px;
  box-shadow:0 14px 34px rgba(34,42,75,.035);
}
.landing-grid-v3 .feature-number{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:38px;
  height:30px;
  padding:0 9px;
  border-radius:10px;
  background:#f0edff;
  color:var(--brand);
  font-size:12px;
  font-weight:900;
  letter-spacing:.04em;
}
html[data-theme="dark"] .landing-grid-v3 .feature-number{background:#261f4d}
.landing-grid-v3 h3{
  margin:22px 0 9px;
  font-size:20px;
  line-height:1.25;
  letter-spacing:-.015em;
}
.landing-grid-v3 p{
  margin:0;
  color:var(--muted);
  font-size:14px;
  line-height:1.62;
}

.landing-bottom-v3{
  margin-top:18px;
  padding:42px 44px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:34px;
  border:1px solid var(--line);
  border-radius:28px;
  background:linear-gradient(135deg,var(--surface),var(--surface2));
}
.landing-bottom-v3 h2{
  margin:10px 0 12px;
  max-width:680px;
  font-size:32px;
  line-height:1.1;
  letter-spacing:-.035em;
}
.landing-bottom-v3 p{
  max-width:680px;
  margin:0;
  color:var(--muted);
  line-height:1.65;
}
.landing-bottom-actions{
  display:grid;
  gap:10px;
  min-width:210px;
}

@media(max-width:1120px){
  .app-shell.guest-home{grid-template-columns:76px minmax(0,1fr);max-width:1040px}
  .guest-home .side-nav a{justify-content:center;font-size:20px}
  .guest-home .side-nav a span{display:none}
  .landing-hero-v3{padding:52px 46px 40px}
  .landing-hero-v3 .hero-copy-v3 h1{font-size:clamp(48px,6vw,66px)}
  .hero-trust{grid-template-columns:repeat(2,minmax(0,1fr))}
  .landing-grid-v3{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:760px){
  .app-shell.guest-home{display:block;padding:16px 12px 92px}
  .landing-hero-v3{padding:38px 28px 30px;border-radius:26px}
  .landing-hero-v3 .hero-copy-v3 h1{font-size:clamp(40px,11vw,56px);line-height:1}
  .landing-hero-v3 .hero-lead{font-size:16px;line-height:1.62}
  .hero-buttons-v3{display:grid;grid-template-columns:1fr;margin-top:26px}
  .hero-buttons-v3 .btn{width:100%}
  .hero-trust{grid-template-columns:1fr 1fr;margin-top:30px}
  .hero-trust>div{padding:15px}
  .landing-intro-v3{padding:42px 6px 18px}
  .landing-grid-v3{grid-template-columns:1fr}
  .landing-grid-v3 article{min-height:0;padding:24px}
  .landing-bottom-v3{grid-template-columns:1fr;padding:32px 26px;gap:24px}
  .landing-bottom-actions{min-width:0}
  .landing-bottom-actions .btn{width:100%}
}

@media(max-width:420px){
  .landing-hero-v3{padding:32px 22px 26px}
  .landing-hero-v3 .hero-copy-v3 h1{font-size:38px;letter-spacing:-.045em}
  .hero-trust{grid-template-columns:1fr}
  .landing-intro-v3 h2{font-size:30px}
  .landing-bottom-v3 h2{font-size:28px}
}

@media(max-width:680px){
  .top-actions .btn.secondary{display:inline-flex;padding:8px 11px;font-size:12px;border-radius:11px}
  .top-actions .btn:not(.secondary){display:none}
}

@media(max-width:680px){
  .guest-landing .mobile-nav{display:none!important}
  .guest-landing .app-shell.guest-home{padding-bottom:32px}
}
