:root{--paper:#f7f6f3;--surface:#fffcf8;--ink:#141414;--muted:#5c5a56;--line:#e6e3dc;--soft:#efece6;--fill:#141414;--fill-ink:#fffcf8;--danger:#b3261e;--accent:#c2410c;--accent-ink:#fffaf5;--accent-soft:#ffedd5;--accent-line:#fdba74;--official-star:#facc15;--official-star-stroke:#eab308;--official-post-bg:#fff1e0;--official-post-border:#ffd3a1;--radius:14px;--radius-sm:10px;--radius-lg:20px;--radius-full:9999px;--shadow:0 1px 2px #1414140a, 0 12px 40px #1414140d;--shadow-sm:0 1px 2px #1414140f;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:48px;--space-12:64px;--text-xs:12px;--text-sm:14px;--text-base:16px;--text-lg:18px;--text-xl:20px;--text-2xl:24px;--text-3xl:clamp(2rem, 6vw, 3rem);--sans:"Inter", "Inter-fallback", system-ui, "Segoe UI", sans-serif;--serif:"Instrument Serif", "Times New Roman", serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font:var(--text-base) / 1.5 var(--sans);color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}:root[data-theme=dark]{--paper:#0b0b0c;--surface:#121214;--ink:#f3f1ec;--muted:#9a9790;--line:#2a2a2e;--soft:#1a1a1d;--fill:#f3f1ec;--fill-ink:#121214;--danger:#e05a4e;--accent:#fb923c;--accent-ink:#2a1508;--accent-soft:#35200f;--accent-line:#8a4a1a;--official-star:#facc15;--official-star-stroke:#eab308;--official-post-bg:#2c1f12;--official-post-border:#6b4a24;--shadow:0 1px 2px #0006, 0 18px 50px #00000059;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}::selection{background:var(--ink);color:var(--paper)}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--space-12) + env(safe-area-inset-top));scroll-padding-bottom:calc(80px + env(safe-area-inset-bottom));overflow-x:hidden}body{background:var(--paper);min-height:100dvh;margin:0;overflow-x:hidden}#root{min-height:100dvh}button,input,textarea{font:inherit;color:inherit}a{color:inherit}img,video{max-width:100%;height:auto;display:block}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.btn:active{transform:translateY(0)}.theme-toggle:active{transform:scale(.95)}.back:active,.nav a:active,.tabs button:active,.action:active,.suggest button:active,.user-row:active,.notif:active,.modal-close:active{background:var(--soft);color:var(--ink)}.post:active{background:var(--soft)}h1,h2,p{margin:0}.app{background:var(--surface);flex-direction:column;max-width:680px;min-height:100dvh;margin:0 auto;display:flex}.topbar{z-index:10;justify-content:space-between;align-items:center;gap:var(--space-3);min-height:var(--space-12);padding:calc(var(--space-3) + env(safe-area-inset-top)) var(--space-4) var(--space-3);background:color-mix(in srgb, var(--surface) 82%, transparent);-webkit-backdrop-filter:blur(16px)saturate(1.2);backdrop-filter:blur(16px)saturate(1.2);border-bottom:1px solid var(--line);display:flex;position:sticky;top:0}.brand{align-items:center;gap:var(--space-2);min-height:44px;color:inherit;font-family:var(--serif);font-weight:400;font-size:var(--text-xl);letter-spacing:-.03em;text-decoration:none;display:inline-flex}.brand svg{opacity:.85}.topbar-actions{align-items:center;gap:var(--space-2);display:flex}.theme-toggle{border:1px solid var(--line);border-radius:var(--radius-full);width:44px;height:44px;color:var(--ink);cursor:pointer;background:0 0;justify-content:center;align-items:center;padding:0;transition:background .18s,color .18s,border-color .18s;display:inline-flex}.theme-toggle:hover{background:var(--ink);color:var(--fill-ink);border-color:var(--ink)}.content{flex:1}.nav{z-index:10;justify-content:space-around;gap:var(--space-1);padding:var(--space-2) var(--space-2) calc(var(--space-2) + env(safe-area-inset-bottom));background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--line);display:flex;position:sticky;bottom:0}.nav a{align-items:center;gap:var(--space-1);min-height:44px;padding:var(--space-2) var(--space-1);color:var(--muted);border-radius:var(--radius-sm);flex-direction:column;flex:1;font-size:12px;font-weight:600;text-decoration:none;transition:color .15s,background .15s;display:flex}.nav a:hover{color:var(--ink)}.nav a.active{color:var(--ink);background:var(--soft)}.nav-icon{display:inline-flex;position:relative}.badge{min-width:var(--space-4);height:var(--space-4);padding:0 var(--space-1);border-radius:var(--radius-full);background:var(--ink);color:var(--fill-ink);font-size:var(--text-xs);line-height:var(--space-4);text-align:center;letter-spacing:0;text-transform:none;position:absolute;top:-6px;right:-10px}@media (width>=768px){body{background:radial-gradient(1200px 500px at 50% -10%, color-mix(in srgb, var(--ink) 6%, transparent), transparent 60%), var(--paper)}.app{border:1px solid var(--line);background:var(--surface);max-width:1080px;min-height:calc(100dvh - 40px);box-shadow:var(--shadow);border-radius:24px;grid-template-rows:auto 1fr auto;grid-template-columns:72px minmax(0,1fr);margin:20px auto;display:grid;overflow:hidden}.topbar{grid-column:1/-1}.nav{justify-content:flex-start;align-self:start;gap:var(--space-1);padding:20px var(--space-2);-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-top:0;flex-direction:column;grid-area:2/1/4;position:sticky;top:65px}.nav a{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3);flex-direction:column}.nav a .nav-label{display:none}.nav a.active{background:var(--ink);color:var(--fill-ink)}.content{border-left:1px solid var(--line);grid-area:2/2;min-width:0}.legal-foot{border-left:1px solid var(--line);grid-area:3/2}.fab-wrap{display:none}}@media (width>=1280px){.app{grid-template-columns:240px minmax(0,1fr)}.nav{padding:20px var(--space-4)}.nav a{justify-content:flex-start;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);flex-direction:row}.nav a .nav-label{display:block}}.btn{justify-content:center;align-items:center;gap:var(--space-2);border:1px solid var(--ink);border-radius:var(--radius-full);padding:var(--space-2) var(--space-4);background:var(--fill);color:var(--fill-ink);font-weight:600;font-size:var(--text-sm);letter-spacing:.01em;cursor:pointer;max-width:100%;min-height:44px;text-decoration:none;transition:transform .15s,background .15s,color .15s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-ghost{color:var(--ink);border-color:var(--line);background:0 0}.btn-ghost:hover{border-color:var(--ink);color:var(--ink);background:0 0}.btn-block{width:100%}.btn-lg{min-height:48px;font-size:var(--text-base)}.btn-sm{padding:var(--space-1) var(--space-2);font-size:var(--text-xs)}.tabs{padding:0 var(--space-2);border-bottom:1px solid var(--line);display:flex}.tabs button{min-height:44px;padding:var(--space-3) var(--space-2);color:var(--muted);font-weight:600;font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:1;transition:color .15s}.tabs button:hover{color:var(--ink)}.tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--ink)}.welcome,.notfound,.auth,.state,.pagehead,.profile-head{padding:24px 22px}.welcome{padding:var(--space-10) var(--space-4) var(--space-8);border-bottom:1px solid var(--line);gap:var(--space-8);flex-wrap:wrap;align-items:center;display:flex;position:relative}.welcome:before{content:"";background:radial-gradient(600px 300px at 70% 20%, color-mix(in srgb, var(--ink) 6%, transparent), transparent 50%);pointer-events:none;z-index:0;position:absolute;inset:0}.welcome>*{z-index:1;position:relative}.welcome-greeting{width:clamp(140px,26vw,320px);height:auto;display:block}.welcome-text{flex:1;min-width:200px}.welcome-text h1{font-family:var(--serif);font-size:var(--text-3xl);letter-spacing:-.03em;max-width:9ch;margin:0 0 6px;font-style:italic;font-weight:400;line-height:1.08}.welcome-text p{margin-top:var(--space-3)}.welcome-actions{gap:var(--space-3);margin-top:var(--space-6);flex-wrap:wrap;display:flex}@media (width<=640px){.welcome{text-align:left;gap:var(--space-4);flex-direction:row}.welcome-greeting{width:clamp(80px,25vw,140px);height:auto;margin:0}.welcome-text{min-width:0}.welcome-actions{margin-top:var(--space-3);justify-content:flex-start;gap:var(--space-3);flex-direction:column}.welcome-actions .btn,.welcome-actions .btn-ghost{width:100%}}.auth h1,.notfound h1,.pagehead h1,.profile-head h1,.legal h1{font-family:var(--serif);font-size:var(--text-2xl);letter-spacing:-.03em;font-weight:400;line-height:1.08}.notfound p{margin-top:var(--space-3);max-width:34ch;color:var(--muted);font-size:var(--text-base)}.notfound{align-items:center;gap:var(--space-3);padding-top:var(--space-10);flex-direction:column;display:flex}.notfound-video{border-radius:var(--radius-sm);width:100%;max-width:560px;max-height:320px;box-shadow:var(--shadow-sm);object-fit:contain;background:#000}.notfound-mark{color:var(--ink);margin-bottom:var(--space-2);opacity:.7}.state{color:var(--muted);align-items:flex-start;gap:var(--space-3);flex-direction:column;display:flex}.compose{gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--line);display:flex}.compose-main{flex:1;min-width:0}.compose textarea,.field textarea,.field input,.searchbar input{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);outline:none;width:100%;padding:11px 13px;transition:border-color .15s,box-shadow .15s}.compose textarea{padding:var(--space-1) 0 var(--space-3);resize:vertical;min-height:76px;font-size:var(--text-lg);background:0 0;border:0;line-height:1.45}.compose textarea:focus,.field textarea:focus,.field input:focus,.searchbar input:focus{border-color:var(--ink);box-shadow:0 0 0 3px color-mix(in srgb, var(--ink) 8%, transparent)}.compose textarea:focus{box-shadow:none;border-color:#0000}.compose textarea::placeholder,.field input::placeholder,.searchbar input::placeholder{color:var(--muted)}.compose-foot{justify-content:flex-end;align-items:center;gap:var(--space-3);display:flex}.gauge-track,.gauge-fill{fill:none;stroke-width:2px}.gauge-track{stroke:var(--line)}.gauge-fill{stroke:var(--ink)}.gauge.warn .gauge-fill{stroke-width:2.6px}.gauge.over .gauge-fill,.count.over{stroke-width:3.2px;font-weight:700}.count{font-variant-numeric:tabular-nums;font-size:var(--text-sm);color:var(--ink);font-weight:650}.post{gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--line);transition:background .15s;display:flex}.post:hover{background:var(--soft)}.post.official{background:var(--official-post-bg);border:1px solid var(--official-post-border);border-radius:var(--radius)}.post.official:hover,.post.official.focus,.post.official.focus:hover{background:var(--official-post-bg)}.official-star{vertical-align:middle;flex:none;margin-inline-start:var(--space-1)}.post-name-wrap{align-items:center;min-width:0;max-width:100%;display:inline-flex}.post.focus,.post.focus:hover{background:var(--soft)}.post-main{flex:1;min-width:0}.post-head{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.post-name{color:inherit;letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:650;text-decoration:none;overflow:hidden}.post-name:hover,.handle:hover{text-underline-offset:3px;text-decoration:underline}.handle,.when,.muted{color:var(--muted)}.when{font-size:var(--text-sm);margin-left:auto}.post-text{margin-top:var(--space-2);white-space:pre-wrap;overflow-wrap:anywhere;cursor:pointer;font-size:var(--text-lg);line-height:1.5}.post.focus .post-text{cursor:default;font-size:var(--text-lg);font-family:var(--serif);letter-spacing:-.01em;line-height:1.45}.tag{text-underline-offset:3px;font-weight:650;text-decoration:underline}.actions{align-items:center;gap:var(--space-2);margin-top:var(--space-3);display:flex}.action{align-items:center;gap:var(--space-2);color:var(--muted);padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);cursor:pointer;font-size:var(--text-sm);background:0 0;border:0;justify-content:center;min-width:44px;min-height:44px;text-decoration:none;transition:color .15s,background .15s;display:inline-flex}.action:hover{color:var(--ink);background:var(--surface)}.action span{font-size:var(--text-sm)}.action.liked,.action.liked:hover,.action.pinned,.action.pinned:hover{color:var(--ink);font-weight:700}.action.danger{color:var(--muted)}.action.danger:hover{color:var(--danger);text-underline-offset:3px;background:0 0;text-decoration:underline}.quote-wrap{gap:var(--space-3);padding:var(--space-3);margin:var(--space-3) 0;background:var(--soft);border-radius:var(--radius-sm);border-left:3px solid var(--line);display:flex}.quote-wrap .quote-text{min-width:0;font-size:var(--text-sm);color:var(--ink);cursor:pointer;flex:1;line-height:1.5}.quote-wrap .quote-text:hover{text-underline-offset:3px;text-decoration:underline}.hashtags{margin-top:var(--space-2);gap:var(--space-2);flex-wrap:wrap;display:flex}.hashtag{font-size:var(--text-sm);color:var(--ink);text-underline-offset:3px;white-space:nowrap;text-decoration:underline}.quote-composer{margin-top:var(--space-3);padding:0 var(--space-3) var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.quote-composer .quote-textarea{border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;padding:var(--space-2) var(--space-3);background:var(--surface);font:inherit;resize:vertical}.quote-composer .compose-foot{justify-content:flex-end;gap:var(--space-3);display:flex}.pin-badge{align-items:center;gap:var(--space-1);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--ink);background:var(--soft);padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);margin-left:var(--space-2);font-weight:600;display:inline-flex}.note{font-size:var(--text-sm);color:var(--muted);margin-left:auto}.avatar{width:var(--size,44px);height:var(--size,44px);background:var(--ink);color:var(--fill-ink);font-family:var(--serif);letter-spacing:-.03em;-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:400;display:inline-flex}.auth{max-width:900px;padding:var(--space-8) var(--space-5) var(--space-10);align-items:center;gap:var(--space-8) var(--space-10);flex-wrap:wrap;display:flex}.auth h1{margin:0 0 var(--space-3)}.auth-head{flex:260px;max-width:380px}.auth-title{align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);display:flex}.auth-title h1{margin:0}.auth-greeting{flex:none;width:56px;height:56px;margin:0;display:block}.auth-form{flex:300px;min-width:260px;max-width:460px}.auth-center{justify-content:center}@media (width>=768px){.auth-greeting{width:72px;height:72px}}@media (width<=720px){.auth{align-items:stretch;gap:var(--space-5);padding:var(--space-6) var(--space-5) var(--space-8);flex-direction:column}.auth-head{flex:none;max-width:none}.auth-form{flex:none;min-width:0}}.field{margin-bottom:var(--space-4);flex-direction:column;gap:6px;display:flex}.field span{font-size:var(--text-sm);color:var(--ink);font-weight:500}.field input,.field textarea{font-size:var(--text-base)}.field small,.field-error{font-size:13px;line-height:1.4}.field small{color:var(--muted)}.field-error{color:var(--danger);font-weight:500}.field-check+.field-error{margin:-10px 0 var(--space-4)}.auth-note{align-items:flex-start;gap:var(--space-2);padding:var(--space-3);background:var(--soft);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--muted);font-size:var(--text-sm);line-height:1.5;display:flex}.auth-note svg{flex:none;margin-top:2px}.field-check{align-items:flex-start;gap:var(--space-2);min-height:44px;margin-bottom:var(--space-4);cursor:pointer;display:flex}.field-check input[type=checkbox]{width:20px;height:20px;accent-color:var(--fill);cursor:pointer;flex:none;margin:12px 0 0}.check-text{font-size:var(--text-sm);line-height:1.5}.check-text a{color:var(--ink);text-underline-offset:3px;font-weight:600;text-decoration:underline}.pw-wrap{display:flex;position:relative}.pw-wrap input{flex:1;padding-right:64px}.pw-toggle{min-width:44px;min-height:44px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--muted);font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;font-weight:600;transition:color .15s,background .15s;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.pw-toggle:hover,.pw-toggle:active{color:var(--ink);background:var(--soft)}.field input:disabled{color:var(--muted);background:var(--soft)}.form-error,.form-ok{color:var(--ink);margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--soft);font-weight:550}.form-error a,.form-ok a{color:var(--ink);text-underline-offset:3px;overflow-wrap:anywhere;font-weight:700;text-decoration:underline}.auth-alt{margin-top:var(--space-2);color:var(--muted);flex-basis:100%}.auth-alt a,.replying a{color:var(--ink);text-underline-offset:3px;font-weight:600;text-decoration:underline}.divider{height:1px;margin:var(--space-8) 0;background:var(--line)}.searchbar{gap:var(--space-2);padding:var(--space-4);border-bottom:1px solid var(--line);display:flex}.searchbar input{flex:1}.pagehead{align-items:center;gap:var(--space-3);border-bottom:1px solid var(--line);min-height:60px;display:flex}.pagehead h1{font-size:var(--text-xl)}.back{color:var(--muted);font-weight:600;font-size:var(--text-sm);cursor:pointer;padding:var(--space-2) var(--space-4);background:0 0;border:0;min-height:44px}.back:hover{color:var(--ink)}.replying{padding:var(--space-4);color:var(--muted);border-bottom:1px solid var(--line);font-size:var(--text-sm)}.profile-head{border-bottom:1px solid var(--line);padding-top:var(--space-8);padding-bottom:var(--space-6)}.profile-name{flex-wrap:wrap;align-items:center;display:flex}.profile-top{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.bio{margin-top:var(--space-3);white-space:pre-wrap;max-width:52ch}.stats{gap:var(--space-2) var(--space-4);margin-top:var(--space-4);color:var(--muted);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.stats strong{color:var(--ink);font-weight:650}.notif{align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--line);color:inherit;text-decoration:none;transition:background .15s;display:flex}.notif:hover{background:var(--soft)}.notif.unread{background:var(--soft);box-shadow:inset 3px 0 0 var(--ink)}.notif-body{flex:1;min-width:0}.snippet{margin-top:var(--space-1);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.loading{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-4);color:var(--muted);font-size:var(--text-sm);display:flex}.spinner{width:var(--space-4);height:var(--space-4);border:2px solid var(--line);border-top-color:var(--ink);border-radius:50%;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.avatar img,img.avatar{object-fit:cover;display:block}.suggest{margin:0 0 var(--space-2);padding:var(--space-2);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);list-style:none}.suggest button{align-items:center;gap:var(--space-3);width:100%;min-height:44px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.suggest button:hover{background:var(--soft)}.user-row{align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--line);color:inherit;text-decoration:none;transition:background .15s;display:flex}.user-row:hover{background:var(--soft)}.user-name{align-items:center;min-width:0;display:inline-flex}.user-row span{flex-direction:column;min-width:0;display:flex}.profile-actions,.profile-more{gap:var(--space-2);flex-wrap:wrap;display:flex}.profile-more{margin-top:var(--space-4)}.stats a{color:inherit;text-decoration:none}.stats a:hover{text-underline-offset:3px;text-decoration:underline}.edit-post textarea{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);width:100%;padding:var(--space-2) var(--space-3);resize:vertical}.avatar-edit{align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);display:flex}.legal{padding:var(--space-8) var(--space-4) var(--space-10);max-width:52ch}.legal h1{margin-bottom:var(--space-3)}.legal h2{margin-top:var(--space-6);margin-bottom:var(--space-1);font-size:17px}.legal ul{padding-left:1.2em}.legal p,.legal li{color:var(--muted);margin-top:var(--space-2);line-height:1.6}.legal a{color:var(--ink);text-decoration:underline}.legal-foot{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3) var(--space-2);border-top:1px solid var(--line);flex-wrap:wrap;font-size:13px;display:flex}.legal-foot a{min-height:44px;padding:0 var(--space-2);color:var(--muted);align-items:center;text-decoration:none;display:inline-flex}.legal-foot a:hover{color:var(--ink)}@font-face{font-family:Inter-fallback;src:local(Arial);size-adjust:106.6%;ascent-override:95.2%;descent-override:26.4%;line-gap-override:0%;unicode-range:U+0-10FFFF}.breadcrumbs{gap:var(--space-2);padding:var(--space-3) var(--space-4);color:var(--muted);font-size:var(--text-xs);display:flex}.breadcrumbs ol{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li{align-items:center;display:flex}.breadcrumbs a{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.breadcrumbs a:hover{text-decoration:none}.breadcrumb-current span[aria-current=page]{color:var(--ink);font-weight:650}.author-more{justify-content:space-between;align-items:center;gap:var(--space-3);margin:var(--space-6) var(--space-4) 0;padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius);background:var(--soft);display:flex}.author-more p{font-size:var(--text-sm);color:var(--muted);margin:0}.related-tags{align-items:center;gap:var(--space-2);margin:var(--space-4) var(--space-4) 0;display:flex}.related-tags span{font-size:var(--text-xs);color:var(--muted)}.settings h2{font-family:var(--serif);font-size:var(--text-2xl);margin-bottom:var(--space-3);font-weight:400}@media (width>=860px){.legal-foot{border-left:1px solid var(--line);grid-area:3/2}}.toast-stack{top:calc(var(--space-4) + env(safe-area-inset-top));right:var(--space-4);z-index:1000;align-items:flex-end;gap:var(--space-2);pointer-events:none;flex-direction:column;display:flex;position:fixed}.toast{max-width:min(340px, calc(100vw - var(--space-8)));gap:var(--space-2);background:var(--ink);color:var(--fill-ink);padding:var(--space-3) var(--space-4);border-radius:var(--radius);box-shadow:var(--shadow);pointer-events:auto;flex-direction:column;display:flex}.toast-actions{gap:var(--space-2);display:flex}.toast-install{background:var(--accent-soft);color:var(--ink);border:1px solid var(--accent-line);box-shadow:var(--shadow), 0 8px 24px color-mix(in srgb, var(--accent) 22%, transparent)}.toast-install>span:first-child{font-weight:600}.toast-install .btn-ghost{border-color:color-mix(in srgb, var(--accent) 45%, transparent)}.install-button{min-height:36px;font-weight:600}.install-button svg{flex:none}@media (width<=600px){.install-button{width:44px;height:44px;padding:0}.install-button .install-button-label{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}.fab-wrap{bottom:calc(70px + env(safe-area-inset-bottom));right:var(--space-4);z-index:40;position:fixed}.fab{border-radius:var(--radius-full);background:var(--fill);width:56px;height:56px;color:var(--fill-ink);box-shadow:var(--shadow);cursor:pointer;border:0;place-items:center;font-size:24px;font-weight:700;transition:transform .15s;display:grid}.fab:hover{transform:translateY(-1px)}.fab:active{transform:translateY(0)}.compose-sheet{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#14141459;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.compose-sheet-content{background:var(--surface);border-top:1px solid var(--line);width:100%;max-width:560px;max-height:min(90dvh, calc(100dvh - 64px - env(safe-area-inset-top)));padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom));overflow-y:auto}.compose-sheet-close{top:var(--space-2);left:var(--space-3);z-index:1;min-width:44px;min-height:44px;color:var(--ink);font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;font-weight:600;position:absolute}@media (width<=767px){.topbar{gap:var(--space-2);flex-wrap:wrap;min-height:auto}.topbar-actions{gap:var(--space-1);flex-wrap:wrap}.nav a{font-size:11px}.content{padding-bottom:calc(70px + env(safe-area-inset-bottom))}.home-compose{display:none}.actions{gap:var(--space-2);flex-wrap:wrap}.actions .note{margin-left:0}}.modal-overlay{z-index:60;padding:var(--space-6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#14141459;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}@media (width<=767px){.modal-overlay{justify-content:center;align-items:flex-end;padding:0}.modal{border-radius:0;flex-direction:column;width:100%;height:auto;max-height:100dvh;margin:0;display:flex;overflow-y:auto}.modal-foot{padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom))}}[data-theme=dark] .modal-overlay{background:#00000080}.modal{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);width:min(100%,420px);max-height:85vh;box-shadow:var(--shadow);flex-direction:column;animation:.18s modalOpen;display:flex;overflow-y:auto}@keyframes modalOpen{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.modal-head{padding:var(--space-4) var(--space-4) var(--space-3);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;display:flex}.modal-head h2{font-size:var(--text-xl);letter-spacing:-.02em;font-weight:600}.modal-close{color:var(--muted);font-size:var(--text-xl);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:0;min-height:44px;line-height:1}.modal-close:hover{color:var(--ink);background:var(--soft)}.modal-desc{color:var(--muted);font-size:var(--text-sm);padding:var(--space-3) var(--space-4) 0}.modal-input{border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;padding:var(--space-2) var(--space-3);background:var(--surface);font:inherit;resize:vertical;margin:var(--space-3) var(--space-4) 0;outline:none}.modal-input:focus{border-color:var(--ink);box-shadow:0 0 0 3px color-mix(in srgb, var(--ink) 8%, transparent)}.modal-foot{justify-content:flex-end;gap:var(--space-3);padding:var(--space-3) var(--space-4) var(--space-4);border-top:1px solid var(--line);display:flex}.btn-accent{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn-accent:hover{background:color-mix(in srgb, var(--accent) 88%, #000);color:var(--accent-ink);border-color:var(--accent)}.modal.onboard{width:min(100%,440px);max-height:85vh;overflow:hidden}.onboard-head{align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--accent-soft);border-bottom:1px solid var(--accent-line);flex:none;display:flex}.onboard-badge{border-radius:var(--radius-full);background:var(--accent);width:40px;height:40px;color:var(--accent-ink);box-shadow:0 6px 18px color-mix(in srgb, var(--accent) 35%, transparent);flex:none;place-items:center;display:grid}.onboard-title{flex:1;min-width:0}.onboard-title h2{font-size:var(--text-lg);letter-spacing:-.01em;font-weight:700}.onboard-title p{font-size:var(--text-sm);color:var(--muted)}.onboard-body{-webkit-overflow-scrolling:touch;min-height:0;padding:var(--space-4);flex:1;overflow-y:auto}.onboard-desc{color:var(--muted);font-size:var(--text-sm);margin-bottom:var(--space-3);line-height:1.55}.onboard-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.onboard-row{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);transition:background .15s,border-color .15s,box-shadow .15s}.onboard-row.official{background:var(--official-post-bg);border-color:var(--official-post-border)}.onboard-row.on{box-shadow:inset 0 0 0 2px var(--accent)}.onboard-person{align-items:center;gap:var(--space-3);width:100%;min-height:56px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.onboard-person:hover:not(:disabled){background:color-mix(in srgb, var(--ink) 6%, transparent)}.onboard-person:active{background:color-mix(in srgb, var(--ink) 8%, transparent)}.onboard-person:disabled{cursor:default;opacity:1}.onboard-check{border:2px solid var(--line);border-radius:var(--radius-full);width:24px;height:24px;color:var(--accent-ink);flex:none;place-items:center;transition:background .15s,border-color .15s;display:grid}.onboard-check.on{background:var(--accent);border-color:var(--accent)}.onboard-meta{flex-direction:column;flex:1;min-width:0;display:flex}.onboard-name{align-items:center;gap:var(--space-1);min-width:0;max-width:100%;font-weight:650;display:flex}.onboard-name .official-star{flex:none}.onboard-name-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.onboard-handle{font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.onboard-foot{gap:var(--space-3);padding:var(--space-3) var(--space-4) var(--space-4);border-top:1px solid var(--line);flex-direction:column;flex:none;display:flex}.onboard-actions{gap:var(--space-3);display:flex}.onboard-actions .btn{flex:1}.onboard-action-error{margin-bottom:0}.onboard-retry{padding-top:var(--space-1);justify-content:center;display:flex}.onboard-empty{font-size:var(--text-sm);padding:var(--space-3) 0}@media (width<=767px){.modal.onboard{width:100%;max-height:calc(100dvh - var(--space-6) - env(safe-area-inset-top));border-radius:var(--radius-lg) var(--radius-lg) 0 0}.onboard-body{padding-bottom:var(--space-3)}.onboard-foot{padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom))}.onboard-actions .btn{min-height:48px}}
