@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;1,300;1,400&family=DM+Sans:wght@300;400;500;600&display=swap";*{box-sizing:border-box;margin:0;padding:0}body{background:var(--ink);min-height:100vh;font-family:DM Sans,sans-serif;transition:background .3s;overflow-x:hidden}*{scrollbar-width:thin;scrollbar-color:var(--border-hover) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0;margin:4px}::-webkit-scrollbar-thumb{background:var(--border-hover);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--muted)}#root{width:100%}.onboarding-container{justify-content:center;align-items:center;width:100vw;min-height:100vh;display:flex;position:relative;overflow:hidden}.noise{pointer-events:none;opacity:.5;z-index:0;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");position:absolute;inset:0}.screen{opacity:0;pointer-events:none;z-index:1;flex-direction:column;justify-content:center;width:100%;max-width:480px;max-height:850px;padding:40px 32px;transition:opacity .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;transform:translate(40px)}.screen.active{opacity:1;pointer-events:all;transform:translate(0)}.screen.exit{opacity:0;transform:translate(-40px)}.s1-bg{background:radial-gradient(ellipse 70% 55% at 50% 38%, var(--surface) 0%, var(--ink) 70%);z-index:-1;border-radius:32px;position:absolute;inset:0}.s1-content-wrapper{text-align:center;flex-direction:column;align-items:center;gap:40px;display:flex}.s1-orb{background:radial-gradient(circle at 40% 35%, var(--orb-grad-1) 0%, var(--orb-grad-2) 30%, var(--orb-grad-3) 60%, transparent 80%);filter:blur(1px);border-radius:50%;width:180px;height:180px;animation:4s ease-in-out infinite breathe;position:relative;box-shadow:0 0 80px 30px #a98fd42e}.s1-orb-face{flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex;position:absolute;inset:0}.orb-eyes{gap:18px;display:flex}.orb-eye{background:var(--ink);border-radius:50%;width:5px;height:5px}.orb-smile{border:2px solid var(--ink);border-top:none;border-radius:0 0 18px 18px;width:18px;height:9px}@keyframes breathe{0%,to{filter:blur(1px)brightness();transform:scale(1)}50%{filter:blur(2px)brightness(1.12);transform:scale(1.05)}}.s1-text-content{flex-direction:column;align-items:center;width:100%;display:flex}.app-label{letter-spacing:3px;color:var(--lavender);text-transform:uppercase;margin-bottom:20px;font-size:11px;font-weight:600}.s1-heading{color:var(--text);margin-bottom:12px;font-family:Cormorant Garamond,serif;font-size:46px;font-weight:300;line-height:1.1}.s1-heading em{color:var(--lavender-soft);font-style:italic}.s1-sub{color:var(--text-dim);max-width:320px;margin-bottom:40px;font-size:15px;font-weight:300;line-height:1.6}.btn-group{flex-direction:column;gap:12px;width:100%;display:flex}.btn-primary{background:linear-gradient(135deg, var(--btn-grad-start), var(--btn-grad-end));color:#fff;cursor:pointer;border:none;border-radius:16px;width:100%;padding:18px;font-family:DM Sans,sans-serif;font-size:15px;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-primary:hover{box-shadow:0 12px 40px var(--shadow-color);transform:translateY(-2px)}.btn-primary:active{transform:translateY(0)}.btn-ghost{border:1.5px solid var(--border-color);color:var(--text-dim);box-shadow:none;background:0 0}.btn-ghost:hover{border-color:var(--border-hover);color:var(--text);transform:none}.s2-header,.s3-header{margin-bottom:32px}.s2-icon-big{color:var(--text);margin-bottom:16px;display:inline-block}.s2-heading,.s3-heading{color:var(--text);margin-bottom:10px;font-family:Cormorant Garamond,serif;font-size:38px;font-weight:300;line-height:1.15}.s2-heading em{color:var(--rose-soft);font-style:italic}.s3-heading em{color:var(--gold);font-style:italic}.s2-sub,.s3-sub{color:var(--text-dim);font-size:14px;line-height:1.6}.promise-cards{flex-direction:column;gap:12px;margin-bottom:40px;display:flex}.promise-card{background:var(--ink2);border:1px solid var(--border-color);border-radius:16px;align-items:center;gap:16px;padding:20px;transition:border-color .3s;display:flex}.promise-card:hover{border-color:var(--border-hover)}.promise-icon-wrap{background:var(--surface);width:42px;height:42px;color:var(--text);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.promise-text h3{color:var(--text);margin-bottom:4px;font-size:15px;font-weight:500}.promise-text p{color:var(--muted);font-size:13px;line-height:1.5}.interests-grid{flex-wrap:wrap;gap:10px;margin-bottom:32px;padding-bottom:10px;display:flex;overflow-y:auto}.interest-chip{border:1.5px solid var(--border-color);background:var(--ink2);color:var(--text-dim);cursor:pointer;border-radius:50px;align-items:center;gap:8px;padding:12px 18px;font-size:14px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.interest-chip:hover{border-color:var(--border-hover);color:var(--text)}.interest-chip.selected{background:var(--chip-selected-bg);border-color:var(--lavender);color:var(--lavender-soft);transform:scale(1.03);box-shadow:0 4px 20px #845ef726}.selected-count{color:var(--muted);text-align:center;margin-bottom:20px;font-size:13px}.selected-count strong{color:var(--lavender-soft);font-weight:600}.dots{justify-content:center;gap:8px;margin-bottom:24px;display:flex}.dot{background:var(--border-color);border-radius:2px;width:24px;height:4px;transition:all .3s}.dot.active{background:var(--lavender);width:36px}.stagger-1{animation:.6s .1s both fadeUp}.stagger-2{animation:.6s .2s both fadeUp}.stagger-3{animation:.6s .3s both fadeUp}.stagger-4{animation:.6s .4s both fadeUp}.stagger-5{animation:.6s .5s both fadeUp}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-container{background:var(--ink);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background:var(--ink2);border:1px solid var(--border-color);width:100%;max-width:420px;box-shadow:0 20px 60px var(--shadow-color);border-radius:28px;padding:40px 32px}.auth-heading{color:var(--text);margin-bottom:4px;font-family:Cormorant Garamond,serif;font-size:36px;font-weight:300}.auth-heading em{color:var(--lavender-soft);font-style:italic}.auth-sub{color:var(--text-dim);margin-bottom:28px;font-size:14px}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-label{color:var(--text);margin-bottom:-10px;font-size:13px;font-weight:500}.auth-input{border:1.5px solid var(--border-color);background:var(--surface);width:100%;color:var(--text);border-radius:14px;padding:16px 18px;font-family:DM Sans,sans-serif;font-size:16px;transition:border-color .2s}.auth-input:focus{border-color:var(--lavender);outline:none}.btn-text{color:var(--lavender);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:14px}.auth-error{color:var(--rose);text-align:center;margin-top:16px;font-size:13px}.grecaptcha-badge{visibility:hidden!important}#recaptcha-container{visibility:hidden;width:0;height:0;position:absolute;overflow:hidden}.recaptcha-tos{color:var(--muted);text-align:center;margin-top:24px;font-size:11px;line-height:1.5}.recaptcha-tos a{color:var(--text-dim);text-decoration:underline}.recaptcha-tos a:hover{color:var(--lavender)}.btn-text-icon{align-items:center;gap:5px;display:inline-flex}:root,[data-theme=light]{--font-serif:"Cormorant Garamond", serif;--font-sans:"DM Sans", sans-serif;--ink:#fafaf7;--ink2:#fff;--surface:#f3f0f7;--surface-warm:#faf5f3;--muted:#868e96;--text:#1a1625;--text-dim:#5a5470;--rose:#e03e6a;--rose-soft:#f8bcc8;--peach:#f4a987;--peach-soft:#fde0d0;--lavender:#845ef7;--lavender-soft:#b197fc;--lavender-deep:#6e44d6;--gold:#f08c00;--mint:#20c997;--mint-soft:#b2f2bb;--border-color:#e8e2ee;--border-hover:#c8bfd4;--card-bg:#fff;--card-border:#f0eaf7;--chip-bg:#f5efff;--chip-active:#e5dbff;--chip-selected-bg:#f3f0ff;--glass-bg:#ffffffc7;--orb-grad-1:#e5dbff;--orb-grad-2:#b197fc;--orb-grad-3:#845ef7;--btn-grad-start:#845ef7;--btn-grad-end:#7048e8;--accent-gradient:linear-gradient(135deg, #845ef7 0%, #c46b9e 100%);--warm-gradient:linear-gradient(135deg, #fde0d0 0%, #f3f0ff 100%);--shadow-color:#5032821a;--shadow-strong:#5032822e;--shadow-soft:0 6px 20px #845ef714;--shadow-card:0 2px 8px #5032820f;--shadow-elevated:0 12px 36px #5032821f;--focus-ring:0 0 0 3px #845ef740;--z-fab:49;--z-nav:50;--z-popover:60;--z-dropdown:100;--z-overlay:998;--z-modal:999;--z-toast:1000}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ink:#0d0a14;--ink2:#1a1424;--surface:#221a2e;--surface-warm:#2a1f30;--muted:#6b6478;--text:#ede5f5;--text-dim:#a89eb8;--rose:#e08099;--rose-soft:#f0a0ae;--peach:#e8a78a;--peach-soft:#4a3530;--lavender:#b89eea;--lavender-soft:#d4c4ee;--lavender-deep:#8b6dc9;--gold:#d9b878;--mint:#38d9a9;--mint-soft:#0ca678;--border-color:#2e2640;--border-hover:#524466;--card-bg:#1a1424;--card-border:#2e2640;--chip-bg:#221a2e;--chip-active:#312345;--chip-selected-bg:linear-gradient(135deg, #2d1e3a, #1e1228);--glass-bg:#1a1424c7;--shadow-color:#00000080;--shadow-strong:#000000b3;--shadow-soft:0 6px 20px #0006;--shadow-card:0 2px 10px #0006;--shadow-elevated:0 12px 36px #0009;--focus-ring:0 0 0 3px #b89eea40;--orb-grad-1:#c9b8e8;--orb-grad-2:#a98fd4;--orb-grad-3:#6b4fa0;--btn-grad-start:#b89eea;--btn-grad-end:#8b6dc9;--accent-gradient:linear-gradient(135deg, #b89eea 0%, #e08099 100%);--warm-gradient:linear-gradient(135deg, #2a1f30 0%, #221a2e 100%)}}[data-theme=dark]{--ink:#0d0a14;--ink2:#1a1424;--surface:#221a2e;--surface-warm:#2a1f30;--muted:#6b6478;--text:#ede5f5;--text-dim:#a89eb8;--rose:#e08099;--rose-soft:#f0a0ae;--peach:#e8a78a;--peach-soft:#4a3530;--lavender:#b89eea;--lavender-soft:#d4c4ee;--lavender-deep:#8b6dc9;--gold:#d9b878;--mint:#38d9a9;--mint-soft:#0ca678;--border-color:#2e2640;--border-hover:#524466;--card-bg:#1a1424;--card-border:#2e2640;--chip-bg:#221a2e;--chip-active:#312345;--chip-selected-bg:linear-gradient(135deg, #2d1e3a, #1e1228);--glass-bg:#1a1424c7;--shadow-color:#00000080;--shadow-strong:#000000b3;--shadow-soft:0 6px 20px #0006;--shadow-card:0 2px 10px #0006;--shadow-elevated:0 12px 36px #0009;--focus-ring:0 0 0 3px #b89eea40;--orb-grad-1:#c9b8e8;--orb-grad-2:#a98fd4;--orb-grad-3:#6b4fa0;--btn-grad-start:#b89eea;--btn-grad-end:#8b6dc9;--accent-gradient:linear-gradient(135deg, #b89eea 0%, #e08099 100%);--warm-gradient:linear-gradient(135deg, #2a1f30 0%, #221a2e 100%)}.home-wrap{background:var(--ink);min-height:100vh;padding-bottom:80px}.home{width:100%;max-width:1040px;margin:0 auto;padding:16px}.topbar{z-index:var(--z-nav);background:var(--glass-bg);-webkit-backdrop-filter:blur(16px)saturate(140%);border-bottom:1px solid #0000;transition:border-color .25s,box-shadow .25s;position:sticky;top:0}.topbar.scrolled{border-bottom-color:var(--border-color);box-shadow:0 4px 20px var(--shadow-color)}.topbar-inner{justify-content:space-between;align-items:center;gap:12px;max-width:1340px;margin:0 auto;padding:14px 16px;display:flex}.topbar-left{flex-direction:column;gap:2px;min-width:0;display:flex}.logo{color:var(--text);background:var(--accent-gradient);-webkit-text-fill-color:transparent;letter-spacing:.3px;-webkit-background-clip:text;background-clip:text;font-family:Cormorant Garamond,serif;font-size:22px;font-weight:500}.greeting{color:var(--muted);letter-spacing:1px;text-transform:uppercase;font-size:11px;font-weight:500}.topbar-icons{align-items:center;gap:4px;display:flex}.btn-icon{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex}.btn-icon:hover{background:var(--surface);color:var(--text)}.btn-icon:active{transform:scale(.92)}.compose-collapsed{background:var(--card-bg);border:1px solid var(--card-border);width:100%;box-shadow:var(--shadow-card);cursor:pointer;border-radius:18px;align-items:center;gap:12px;margin-bottom:16px;padding:14px 16px;font-family:DM Sans,sans-serif;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex}.compose-collapsed:hover{border-color:var(--border-hover);box-shadow:var(--shadow-elevated);transform:translateY(-1px)}.compose-avatar{background:var(--accent-gradient);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex;box-shadow:0 4px 14px #845ef74d}.compose-prompt{text-align:left;color:var(--text-dim);flex:1;font-size:15px}.compose-cta{color:var(--lavender);background:var(--chip-active);border-radius:20px;padding:6px 14px;font-size:13px;font-weight:600}.compose-box.compose-expanded{background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--shadow-elevated);border-radius:20px;margin-bottom:16px;padding:16px;animation:.28s cubic-bezier(.16,1,.3,1) composeOpen}.compose-expanded textarea{width:100%;color:var(--text);resize:none;background:0 0;border:none;outline:none;min-height:100px;max-height:240px;font-family:DM Sans,sans-serif;font-size:16px;line-height:1.6;overflow:hidden}.compose-expanded textarea::placeholder{color:var(--muted)}@keyframes composeOpen{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.compose-top{align-items:center;gap:10px;margin-bottom:10px;display:flex}.compose-mode{color:var(--text-dim);flex:1;font-size:13px}.compose-mode strong{color:var(--lavender);font-weight:600}.compose-close{margin-left:auto}.compose-meta{justify-content:flex-end;margin-bottom:8px;display:flex}.char-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.char-count.warn{color:var(--rose);font-weight:500}.compose-actions{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:10px;padding-top:12px;display:flex}.compose-options{flex-wrap:wrap;flex:1;gap:10px;display:flex}.category-select{background:var(--surface);color:var(--text);border:1px solid var(--border-color);cursor:pointer;border-radius:24px;outline:none;padding:8px 14px;font-family:DM Sans,sans-serif;font-size:13px;transition:border-color .2s}.category-select:hover{border-color:var(--border-hover)}.anon-toggle{background:var(--surface);border:1px solid var(--border-color);cursor:pointer;border-radius:24px;align-items:center;gap:8px;padding:4px 12px 4px 4px;transition:all .25s;display:inline-flex}.anon-toggle.active{background:var(--chip-selected-bg);border-color:var(--lavender);box-shadow:0 0 0 3px #845ef71f}.toggle-knob{background:var(--border-color);border-radius:10px;width:32px;height:18px;transition:background .3s;position:relative}.anon-toggle.active .toggle-knob{background:var(--lavender)}.toggle-knob:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .3s cubic-bezier(.4,0,.2,1);position:absolute;top:2px;left:2px}.anon-toggle.active .toggle-knob:after{transform:translate(14px)}.toggle-label{color:var(--text-dim);font-size:13px;font-weight:500}.anon-toggle.active .toggle-label{color:var(--lavender)}.btn-submit{background:var(--accent-gradient);color:#fff;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;transition:transform .18s,box-shadow .18s;display:flex;box-shadow:0 4px 14px #845ef759}.btn-submit:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.btn-submit:hover:not(:disabled){transform:scale(1.06);box-shadow:0 6px 20px #845ef780}.btn-submit:active:not(:disabled){transform:scale(.96)}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin}.spinner-sm{border-width:2px;border-color:var(--border-color);border-top-color:var(--lavender);width:12px;height:12px}@keyframes spin{to{transform:rotate(360deg)}}.chip-scroll{scrollbar-width:none;gap:8px;margin-bottom:16px;padding:4px 0 8px;display:flex;overflow-x:auto}.chip-scroll::-webkit-scrollbar{display:none}.chip{background:var(--chip-bg);color:var(--text-dim);cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:24px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .2s}.chip:hover{background:var(--chip-active)}.chip.active{background:var(--accent-gradient);color:#fff;border-color:#0000;box-shadow:0 4px 12px #845ef74d}.feed{flex-direction:column;gap:14px;display:flex}.post-card{background:var(--card-bg);box-shadow:var(--shadow-card);border:1px solid var(--card-border);border-radius:20px;padding:18px;transition:transform .18s,box-shadow .18s,border-color .18s}.post-card:hover{box-shadow:var(--shadow-elevated);border-color:var(--border-hover);transform:translateY(-2px)}.post-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.post-header-left{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:14px;font-weight:600;display:flex}.anon-avatar{background:var(--accent-gradient)}.username{color:var(--text);font-size:14px;font-weight:600}.anon-alias{color:var(--lavender);font-style:italic;font-weight:500}.time{color:var(--muted);margin-left:6px;font-size:12px}.anon-badge{background:var(--chip-active);color:var(--lavender);letter-spacing:.3px;border-radius:10px;margin-left:6px;padding:2px 8px;font-size:10px;font-weight:500}.content{color:var(--text);white-space:pre-wrap;word-wrap:break-word;font-size:15px;line-height:1.6}.actions span:hover{background:var(--surface);color:var(--text)}.skel-card{background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--shadow-card);border-radius:20px;padding:18px}.skel-header{align-items:center;gap:10px;margin-bottom:14px;display:flex}.skel-meta{flex-direction:column;flex:1;gap:8px;display:flex}.skel{background:linear-gradient(90deg, var(--surface) 0%, var(--border-color) 50%, var(--surface) 100%);background-size:200% 100%;border-radius:8px;animation:1.4s ease-in-out infinite shimmer}.skel-avatar{border-radius:50%;width:38px;height:38px}.skel-line{width:100%;height:12px;margin:6px 0}.skel-line-sm{width:35%;height:13px}.skel-line-xs{width:20%;height:10px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.empty-state{background:var(--card-bg);border:1px dashed var(--border-color);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:8px;padding:48px 24px;animation:.4s composeOpen;display:flex}.empty-icon{background:var(--warm-gradient);width:64px;height:64px;color:var(--lavender);border-radius:50%;justify-content:center;align-items:center;margin-bottom:8px;display:flex;box-shadow:0 4px 16px #845ef726}.empty-state h3{color:var(--text);font-family:Cormorant Garamond,serif;font-size:24px;font-style:italic;font-weight:400}.empty-state p{color:var(--text-dim);max-width:280px;margin-bottom:8px;font-size:14px;line-height:1.5}.btn-empty-action{background:var(--accent-gradient);color:#fff;cursor:pointer;border:none;border-radius:24px;align-items:center;gap:8px;margin-top:8px;padding:10px 20px;font-family:DM Sans,sans-serif;font-size:14px;font-weight:500;transition:all .2s;display:inline-flex;box-shadow:0 4px 14px #845ef74d}.btn-empty-action:hover{transform:translateY(-2px);box-shadow:0 8px 20px #845ef766}.bottom-nav{z-index:var(--z-nav);padding:8px 8px max(8px, env(safe-area-inset-bottom));background:var(--glass-bg);-webkit-backdrop-filter:blur(16px)saturate(140%);border-top:1px solid var(--border-color);justify-content:space-around;align-items:stretch;display:flex;position:fixed;bottom:0;left:0;right:0}.nav-item{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:14px;flex-direction:column;flex:1;align-items:center;gap:4px;padding:8px 4px;font-family:DM Sans,sans-serif;font-size:11px;font-weight:500;transition:color .2s;display:flex;position:relative}.nav-item:hover{color:var(--text-dim)}.nav-item.active{color:var(--lavender)}.nav-item.active:before{content:"";background:var(--accent-gradient);border-radius:0 0 3px 3px;width:24px;height:3px;position:absolute;top:0;left:50%;transform:translate(-50%)}.scroll-top-fab{z-index:var(--z-fab);background:var(--card-bg);border:1px solid var(--border-color);width:44px;height:44px;color:var(--lavender);cursor:pointer;box-shadow:var(--shadow-elevated);border-radius:50%;justify-content:center;align-items:center;transition:transform .2s,box-shadow .2s;animation:.25s fabIn;display:flex;position:fixed;bottom:86px;right:20px}.scroll-top-fab:hover{box-shadow:0 16px 40px var(--shadow-strong);transform:translateY(-2px)}@keyframes fabIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.toast{z-index:var(--z-toast);box-shadow:var(--shadow-elevated);-webkit-backdrop-filter:blur(12px);text-align:center;border-radius:24px;max-width:90vw;padding:12px 20px;font-family:DM Sans,sans-serif;font-size:14px;font-weight:500;animation:.3s cubic-bezier(.16,1,.3,1) toastIn;position:fixed;bottom:96px;left:50%;transform:translate(-50%)}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}.menu-container{position:relative}.dropdown-menu{background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--shadow-elevated);width:200px;z-index:var(--z-dropdown);border-radius:16px;flex-direction:column;margin-top:8px;padding:6px;animation:.2s cubic-bezier(.16,1,.3,1) popIn;display:flex;position:absolute;top:100%;right:0}@keyframes popIn{0%{opacity:0;transform:scale(.95)translateY(-5px)}to{opacity:1;transform:scale(1)translateY(0)}}.menu-item{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;padding:12px 14px;font-family:DM Sans,sans-serif;font-size:14px;transition:background .2s;display:flex}.menu-item:hover{background:var(--surface)}.menu-item.danger{color:var(--rose)}.menu-item.danger:hover{background:var(--rose-soft);color:#fff}.menu-item.admin-danger{color:var(--rose);border-top:1px solid var(--border-color);border-radius:0 0 10px 10px;font-weight:500}.modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:var(--z-modal);background:#0009;justify-content:center;align-items:center;animation:.2s settingsFadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--card-bg);border:1px solid var(--card-border);width:90%;max-width:420px;box-shadow:var(--shadow-elevated);border-radius:24px;padding:24px;animation:.3s cubic-bezier(.16,1,.3,1) slideUp}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.modal-header h3{color:var(--text);font-size:18px;font-weight:600}.modal-sub{color:var(--text-dim);margin-bottom:20px;font-size:14px}.report-radio{border:1px solid var(--border-color);cursor:pointer;color:var(--text);border-radius:12px;align-items:center;gap:12px;padding:14px;transition:all .2s;display:flex}.report-radio:hover{border-color:var(--border-hover);background:var(--surface)}.report-radio input[type=radio]{accent-color:var(--lavender);width:18px;height:18px}.settings-overlay{-webkit-backdrop-filter:blur(6px);z-index:var(--z-overlay);background:#00000080;animation:.25s settingsFadeIn;position:fixed;inset:0}.settings-panel{background:var(--ink2);border-left:1px solid var(--border-color);width:100%;max-width:380px;height:100vh;box-shadow:-10px 0 40px var(--shadow-color);z-index:var(--z-modal);flex-direction:column;animation:.3s cubic-bezier(.16,1,.3,1) settingsSlideIn;display:flex;position:fixed;top:0;right:0;overflow:hidden}@keyframes settingsSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes settingsFadeIn{0%{opacity:0}to{opacity:1}}.settings-header{border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;padding:20px;display:flex}.settings-header h2{color:var(--text);font-family:Cormorant Garamond,serif;font-size:26px;font-weight:400}.settings-body{flex-direction:column;flex:1;gap:24px;padding:20px;display:flex;overflow-y:auto}.settings-section{flex-direction:column;gap:6px;display:flex}.settings-section-title{letter-spacing:1.5px;color:var(--muted);text-transform:uppercase;margin-bottom:8px;padding-left:4px;font-size:11px;font-weight:600}.settings-item{background:var(--surface);border:1px solid var(--border-color);color:var(--text);cursor:pointer;text-align:left;border-radius:14px;justify-content:space-between;align-items:center;padding:14px 16px;font-family:DM Sans,sans-serif;font-size:14px;transition:all .2s;display:flex}.settings-item:hover{border-color:var(--border-hover);background:var(--card-bg)}.settings-item-left{color:var(--text);align-items:center;gap:12px;display:flex}.settings-item-value{color:var(--text-dim);font-size:13px}.settings-logout{border:1.5px solid var(--rose);color:var(--rose);cursor:pointer;background:0 0;border-radius:14px;justify-content:center;align-items:center;gap:10px;margin-top:12px;padding:16px;font-family:DM Sans,sans-serif;font-size:15px;font-weight:500;transition:all .2s;display:flex}.settings-logout:hover{background:var(--rose);color:#fff}.settings-item-admin{background:var(--chip-selected-bg);border-color:var(--lavender)}.settings-item-admin .settings-item-left{color:var(--lavender);font-weight:500}.modal-actions{gap:10px;margin-top:8px;display:flex}.btn-modal{cursor:pointer;border:none;border-radius:12px;flex:1;padding:14px;font-family:DM Sans,sans-serif;font-size:14px;font-weight:500;transition:all .2s}.btn-modal-ghost{border:1.5px solid var(--border-color);color:var(--text-dim);background:0 0}.btn-modal-ghost:hover{border-color:var(--border-hover);color:var(--text)}.btn-modal-danger{background:var(--rose);color:#fff}.btn-modal-danger:hover{opacity:.9}.blocked-list{flex-direction:column;gap:10px;display:flex}.blocked-row{background:var(--surface);border:1px solid var(--border-color);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;transition:border-color .2s;display:flex}.blocked-row:hover{border-color:var(--border-hover)}.blocked-row-left{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.blocked-meta{flex-direction:column;gap:2px;min-width:0;display:flex}.blocked-handle{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.blocked-sub{color:var(--muted);font-size:12px}.btn-unblock{color:var(--lavender);border:1.5px solid var(--lavender);cursor:pointer;background:0 0;border-radius:20px;flex-shrink:0;padding:8px 16px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;transition:all .2s}.btn-unblock:hover:not(:disabled){background:var(--lavender);color:#fff}.btn-unblock:disabled{opacity:.5;cursor:not-allowed}.blocked-row.skel-row{border-color:var(--border-color);background:0 0}.empty-state.empty-inline{background:0 0;border:none;padding:32px 16px}.load-more-spinner{color:var(--muted);justify-content:center;padding:20px;display:flex}.spinning{animation:1s linear infinite spin}.feed-end{text-align:center;color:var(--muted);padding:20px;font-size:12px;font-style:italic}.discover-header{padding:4px 0 16px}.discover-title-row{align-items:center;gap:14px;display:flex}.discover-flame{color:var(--lavender);filter:drop-shadow(0 2px 8px #845ef766);justify-content:center;align-items:center;line-height:1;animation:2.5s ease-in-out infinite flicker;display:flex}@keyframes flicker{0%,to{transform:scale(1)rotate(-2deg)}50%{transform:scale(1.08)rotate(2deg)}}.discover-title{color:var(--text);margin-bottom:2px;font-family:Cormorant Garamond,serif;font-size:22px;font-weight:400}.discover-sub{color:var(--muted);font-size:12px}.post-card{position:relative}.rank-badge{filter:drop-shadow(0 1px 4px #00000026);font-size:18px;line-height:1;position:absolute;top:14px;right:14px}.cat-dropdown{position:relative}.cat-trigger{background:var(--surface);color:var(--text);border:1px solid var(--border-color);cursor:pointer;border-radius:24px;align-items:center;gap:8px;padding:8px 14px;font-family:DM Sans,sans-serif;font-size:13px;transition:border-color .2s;display:flex}.cat-trigger:hover{border-color:var(--border-hover)}.cat-chevron{color:var(--text-dim);transition:transform .2s}.cat-chevron.open{transform:rotate(180deg)}.cat-menu-wrap{background:var(--ink2);border:1px solid var(--border-color);min-width:200px;box-shadow:var(--shadow-elevated);z-index:var(--z-popover);border-radius:14px;animation:.16s catMenuIn;position:absolute;bottom:calc(100% + 8px);left:0;overflow:hidden}.cat-menu{overscroll-behavior:contain;max-height:230px;margin:0;padding:6px;list-style:none;overflow-y:auto}@keyframes catMenuIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.cat-option{color:var(--text);cursor:pointer;border-radius:9px;align-items:center;gap:8px;padding:10px 12px;font-size:14px;transition:background .12s;display:flex}.cat-option:hover{background:var(--chip-bg)}.cat-option.selected{background:var(--chip-active);color:var(--lavender);font-weight:600}.cat-custom{align-items:center;gap:6px;display:flex}.cat-custom-input{background:var(--ink2);border:1px solid var(--border-color);color:var(--text);border-radius:10px;outline:none;width:150px;padding:8px 12px;font-size:14px}.cat-custom-input:focus{border-color:var(--lavender)}.cat-custom-btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.cat-custom-btn.ok{background:var(--lavender);color:var(--ink)}.cat-custom-btn.ok:disabled{opacity:.4;cursor:not-allowed}.cat-custom-btn.cancel{background:var(--ink2);color:var(--muted);border:1px solid var(--border-color)}.cat-option-add{border-top:1px solid var(--border-color);background:var(--ink2);color:var(--lavender);border-radius:0 0 9px 9px;margin-top:4px;font-weight:500;position:sticky;bottom:-6px}.cat-option-add:hover{background:var(--chip-bg)}.cat-add-footer{border:none;border-top:1px solid var(--border-color);background:var(--ink2);width:100%;color:var(--lavender);cursor:pointer;align-items:center;gap:8px;padding:11px 18px;font-size:14px;font-weight:500;transition:background .12s;display:flex}.cat-add-footer:hover{background:var(--chip-bg)}.cat-menu::-webkit-scrollbar{width:6px}.cat-menu::-webkit-scrollbar-thumb{background:var(--border-hover);border-radius:3px}.cat-menu::-webkit-scrollbar-track{background:0 0;margin:6px 0}.explore-search{background:var(--ink2);border:1px solid var(--border-color);border-radius:14px;align-items:center;gap:8px;margin-bottom:12px;padding:10px 14px;display:flex}.explore-search:focus-within{border-color:var(--lavender)}.explore-search-icon{color:var(--muted);flex-shrink:0}.explore-search-input{color:var(--text);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:15px}.explore-search-input::placeholder{color:var(--muted)}.explore-search-clear{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:2px;display:flex}.explore-search-clear:hover{color:var(--text)}.nav-icon-wrap{display:inline-flex;position:relative}.nav-badge{background:var(--rose);color:#fff;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;line-height:1;display:flex;position:absolute;top:-6px;right:-8px}.alerts-header{margin-bottom:14px}.alerts-title{color:var(--text);font-family:Cormorant Garamond,serif;font-size:26px;font-weight:500}.alerts-sub{color:var(--muted);margin-top:2px;font-size:13px}.alerts-list{flex-direction:column;gap:8px;display:flex}.alert-row{background:var(--card-bg);border:1px solid var(--card-border);text-align:left;cursor:pointer;border-radius:14px;align-items:center;gap:13px;width:100%;padding:14px 16px;font-family:inherit;transition:background .15s,border-color .15s;display:flex}.alert-row:hover{border-color:var(--border-hover)}.alert-row.unread{background:var(--chip-bg);border-color:var(--lavender)}.alert-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.alert-icon.accent-rose{background:var(--warm-gradient);color:var(--rose)}.alert-icon.accent-lav{background:var(--chip-bg);color:var(--lavender)}.alert-icon.accent-peach{background:var(--peach-soft);color:var(--peach)}.alert-body{text-align:left;flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.alert-text{color:var(--text);text-align:left;margin:0;font-size:14.5px;line-height:1.45}.alert-time{color:var(--muted);font-size:12px}.alert-dot{background:var(--lavender);border-radius:50%;flex-shrink:0;width:8px;height:8px}.alert-skel{align-items:center;gap:13px;padding:14px 16px;display:flex}.privacy-screen{flex-direction:column;height:100%;display:flex}.privacy-body{flex:1;padding:16px 18px 28px;overflow-y:auto}.privacy-intro{color:var(--text-dim);margin-bottom:22px;font-size:14px;line-height:1.6}.privacy-heading{color:var(--text);margin:24px 0 12px;font-family:Cormorant Garamond,serif;font-size:20px;font-weight:500}.privacy-section{flex-direction:column;gap:18px;display:flex}.privacy-row{align-items:flex-start;gap:12px;display:flex}.privacy-icon{background:var(--chip-bg);width:36px;height:36px;color:var(--lavender);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.privacy-title{color:var(--text);margin-bottom:3px;font-size:14px;font-weight:600}.privacy-text{color:var(--text-dim);font-size:13px;line-height:1.55}.privacy-tip{background:var(--warm-gradient);border:1px solid var(--card-border);border-radius:12px;align-items:flex-start;gap:10px;margin-top:24px;padding:14px;display:flex}.privacy-tip-icon{color:var(--gold);flex-shrink:0;margin-top:1px}.privacy-tip p{color:var(--text);margin:0;font-size:13px;line-height:1.55}.privacy-tip strong{color:var(--text);font-weight:600}.privacy-footer{color:var(--muted);text-align:center;margin-top:22px;font-size:12px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=480px){.home{padding:12px}.compose-prompt{font-size:14px}.logo{font-size:20px}.greeting{font-size:10px}}.post-meta{flex:1;min-width:0}.name-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.anon-pill{letter-spacing:.4px;color:var(--lavender);background:var(--chip-bg);text-transform:uppercase;border-radius:10px;padding:2px 8px;font-size:10px;font-weight:600}.meta-row{color:var(--muted);align-items:center;gap:6px;margin-top:2px;font-size:12px;display:flex}.meta-dot{color:var(--muted);opacity:.6;font-weight:700}.meta-cat{color:var(--lavender);font-weight:500}.post-body{-webkit-tap-highlight-color:transparent;margin-top:12px}.content{color:var(--text);white-space:pre-wrap;word-wrap:break-word;overflow-wrap:anywhere;font-size:15px;line-height:1.6}.post-card .category-tag{display:none}.actions{border-top:1px solid var(--border-color);gap:4px;margin-top:14px;padding-top:10px;display:flex}.rxn-btn{color:var(--text-dim);cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;background:0 0;border:none;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px 8px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;transition:background .2s,color .2s,transform .15s;display:inline-flex}.rxn-btn:hover{background:var(--surface);color:var(--text)}.rxn-btn:active{transform:scale(.94)}.rxn-btn.active{color:var(--lavender);background:var(--chip-bg)}.rxn-btn.rxn-btn-icon-only{flex:0 0 44px}.rxn-icon{justify-content:center;align-items:center;display:inline-flex}.rxn-icon.pop{animation:.42s cubic-bezier(.34,1.56,.64,1) rxnPop}@keyframes rxnPop{0%{transform:scale(1)}30%{transform:scale(1.35)}60%{transform:scale(.92)}to{transform:scale(1)}}.rxn-count{font-variant-numeric:tabular-nums;text-align:left;min-width:14px}.rxn-label{display:none}@media (width>=480px){.rxn-label{opacity:.8;display:inline}}.report-overlay{-webkit-backdrop-filter:blur(6px);z-index:var(--z-modal);background:#0000008c;justify-content:center;align-items:flex-end;animation:.2s overlayIn;display:flex;position:fixed;inset:0}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}.report-sheet{background:var(--card-bg);border-top:1px solid var(--card-border);width:100%;max-width:520px;padding:8px 20px max(24px, env(safe-area-inset-bottom));box-shadow:0 -12px 40px var(--shadow-color);border-radius:24px 24px 0 0;max-height:90vh;transition:transform .2s;animation:.32s cubic-bezier(.16,1,.3,1) sheetUp;overflow-y:auto}@keyframes sheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.sheet-handle{background:var(--border-color);cursor:grab;touch-action:none;border-radius:2px;width:36px;height:4px;margin:8px auto 12px}.report-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.report-header h3{color:var(--text);margin-bottom:4px;font-size:18px;font-weight:600}.report-sub{color:var(--text-dim);font-size:13px;line-height:1.5}.report-close{flex-shrink:0}.report-options{flex-direction:column;gap:8px;margin-bottom:20px;display:flex}.report-option{border:1.5px solid var(--border-color);cursor:pointer;color:var(--text);background:0 0;border-radius:14px;align-items:center;gap:12px;padding:14px;transition:all .18s;display:flex;position:relative}.report-option:hover{border-color:var(--border-hover);background:var(--surface)}.report-option.selected{border-color:var(--lavender);background:var(--chip-selected-bg)}.report-option input[type=radio]{opacity:0;pointer-events:none;position:absolute}.report-radio-circle{border:2px solid var(--border-hover);border-radius:50%;flex-shrink:0;width:20px;height:20px;transition:all .18s;position:relative}.report-option.selected .report-radio-circle{border-color:var(--lavender)}.report-option.selected .report-radio-circle:after{content:"";background:var(--lavender);border-radius:50%;animation:.2s radioFill;position:absolute;inset:3px}@keyframes radioFill{0%{transform:scale(0)}to{transform:scale(1)}}.report-text{flex-direction:column;gap:2px;min-width:0;display:flex}.report-label{color:var(--text);font-size:14px;font-weight:500}.report-sub-line{color:var(--muted);font-size:12px}.report-footer{border-top:1px solid var(--border-color);gap:10px;padding-top:16px;display:flex}.btn-modal-primary{background:var(--accent-gradient);color:#fff;box-shadow:0 4px 14px #845ef74d}.btn-modal-primary:hover:not(:disabled){box-shadow:0 6px 18px #845ef766}.btn-modal-primary:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}@media (width>=720px){.report-overlay{align-items:center}.report-sheet{border:1px solid var(--card-border);padding:24px 24px max(24px, env(safe-area-inset-bottom));box-shadow:var(--shadow-elevated);border-radius:24px;animation:.28s cubic-bezier(.16,1,.3,1) sheetCenter}.sheet-handle{display:none}@keyframes sheetCenter{0%{opacity:0;transform:scale(.96)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}}.confirm-dialog{text-align:center;max-width:380px;padding:28px 24px 20px}.confirm-icon{background:var(--warm-gradient);width:56px;height:56px;color:var(--rose);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 14px;display:flex;box-shadow:0 4px 16px #e03e6a2e}.confirm-title{color:var(--text);margin-bottom:8px;font-family:Cormorant Garamond,serif;font-size:22px;font-weight:500}.confirm-message{color:var(--text-dim);margin-bottom:20px;font-size:14px;line-height:1.55}.toast-stack{z-index:10000;pointer-events:none;flex-direction:column;align-items:center;gap:8px;width:max-content;max-width:calc(100vw - 32px);display:flex;position:fixed;bottom:88px;left:50%;transform:translate(-50%)}.toast-item{box-shadow:var(--shadow-elevated);-webkit-backdrop-filter:blur(12px);pointer-events:auto;border-radius:14px;align-items:center;gap:10px;max-width:min(420px,100vw - 32px);padding:12px 14px 12px 16px;font-family:DM Sans,sans-serif;font-size:14px;animation:.32s cubic-bezier(.16,1,.3,1) toastSlide;display:inline-flex}.toast-item.toast-leaving{animation:.25s forwards toastOut}.toast-success{background:var(--card-bg);color:var(--text);border:1px solid var(--lavender)}.toast-success .toast-icon{color:var(--lavender)}.toast-error{background:var(--rose);color:#fff;border:1px solid var(--rose)}.toast-error .toast-icon{color:#fff}.toast-info{background:var(--card-bg);color:var(--text);border:1px solid var(--border-color)}.toast-info .toast-icon{color:var(--lavender)}.toast-icon{flex-shrink:0;display:inline-flex}.toast-msg{flex:1;min-width:0;line-height:1.4}.toast-close{color:inherit;opacity:.65;cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;align-items:center;padding:2px;transition:opacity .18s;display:flex}.toast-close:hover{opacity:1}.rank-1{color:#f5c542;filter:drop-shadow(0 1px 4px #f5c54273)}.rank-2{color:#c4c8cf;filter:drop-shadow(0 1px 4px #c4c8cf66)}.rank-3{color:#cd7f32;filter:drop-shadow(0 1px 4px #cd7f3266)}.post-body{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.comment-sheet{max-width:560px}.comment-list{overscroll-behavior:contain;max-height:50vh;padding:4px 0 12px;overflow-y:auto}.comment-empty{text-align:center;color:var(--muted);padding:24px 0;font-size:14px}.comment-item{border-bottom:1px solid var(--border-color);padding:10px 0}.comment-item .comment-item{border-bottom:none;padding-bottom:0}.comment-head{align-items:center;gap:8px;margin-bottom:4px;display:flex}.avatar-sm{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:11px;display:inline-flex}.comment-name{color:var(--text);font-size:13px;font-weight:600}.comment-name.anon-alias{color:var(--lavender);font-style:italic}.comment-time{color:var(--muted);font-size:11px}.comment-body{color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;margin:2px 0 6px 32px;font-size:14px;line-height:1.5}.comment-actions{gap:14px;margin-left:32px;display:flex}.comment-act{color:var(--muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:2px 0;font-size:12px;font-weight:500;display:inline-flex}.comment-act:hover{color:var(--text)}.comment-act.danger:hover{color:var(--rose)}.comment-composer{border-top:1px solid var(--border-color);margin-top:4px;padding-top:12px}.reply-context{color:var(--muted);align-items:center;gap:6px;margin-bottom:8px;font-size:12px;display:flex}.comment-input-row{align-items:flex-end;gap:8px;display:flex}.comment-input{background:var(--ink2);border:1px solid var(--border-color);color:var(--text);resize:none;border-radius:14px;outline:none;flex:1;min-height:40px;max-height:120px;padding:10px 14px;font-family:inherit;font-size:14px;line-height:1.5;transition:height .1s;overflow-y:auto}.comment-input:focus{border-color:var(--lavender)}.comment-send{background:var(--accent-gradient);color:#fff;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.comment-send:disabled{opacity:.4;cursor:not-allowed}.anon-toggle-sm{transform-origin:0;margin-top:10px;transform:scale(.9)}.spinner-sm{width:16px;height:16px}.link-btn{color:var(--lavender);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px}.report-reason-btn{text-align:left;background:var(--chip-bg);border:1px solid var(--border-color);width:100%;color:var(--text);cursor:pointer;border-radius:12px;margin-bottom:8px;padding:13px 14px;font-size:14px}.report-reason-btn:hover{border-color:var(--lavender)}.report-reason-btn:disabled{opacity:.5;cursor:default}@keyframes toastSlide{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes toastOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(8px)}}@media (width<=480px){.post-card{border-radius:18px;padding:14px}.avatar{width:36px;height:36px}.content{font-size:14.5px}.rxn-btn{min-height:44px;padding:10px 4px}.dropdown-menu{width:180px}.toast-stack{bottom:80px}}@media (width<=360px){.post-card{padding:12px}.rxn-btn{gap:4px;font-size:12px}.anon-pill{display:none}}.admin-wrap{background:var(--ink);min-height:100vh;padding-bottom:32px}.admin-header{z-index:10;background:var(--glass-bg);-webkit-backdrop-filter:blur(16px)saturate(140%);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex;position:sticky;top:0}.admin-title{color:var(--text);align-items:center;gap:8px;display:flex}.admin-title h1{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-family:Cormorant Garamond,serif;font-size:22px;font-weight:500}.admin-body{max-width:740px;margin:0 auto;padding:16px}.admin-tabs{background:var(--surface);border-radius:14px;gap:6px;margin-bottom:16px;padding:4px;display:flex}.admin-tab{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:10px;flex:1;padding:10px 12px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;transition:all .2s}.admin-tab:hover{color:var(--text)}.admin-tab.active{background:var(--card-bg);color:var(--lavender);box-shadow:var(--shadow-card)}.admin-count{color:var(--muted);letter-spacing:.3px;text-transform:uppercase;margin-bottom:12px;font-size:12px;font-weight:600}.admin-list{flex-direction:column;gap:14px;display:flex}.report-card{background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--shadow-card);border-radius:20px;padding:18px;transition:opacity .2s}.report-card.busy{opacity:.55;pointer-events:none}.report-card-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.reason-pill{letter-spacing:.4px;text-transform:uppercase;border:1px solid #0000;border-radius:12px;padding:4px 12px;font-size:11px;font-weight:600}.reason-harassment{color:var(--rose);background:#e03e6a1f;border-color:#e03e6a4d}.reason-spam{background:var(--chip-bg);color:var(--lavender)}.reason-inappropriate{color:var(--rose);background:#e03e6a1f;border-color:#e03e6a4d}.reason-misinformation{color:var(--gold);background:#f08c001f;border-color:#f08c004d}.reason-other{background:var(--surface);color:var(--text-dim)}.report-time{color:var(--muted);flex-shrink:0;font-size:12px}.report-description{color:var(--text-dim);background:var(--surface);border-left:3px solid var(--lavender);border-radius:10px;margin-bottom:12px;padding:8px 12px;font-size:13px;font-style:italic}.reported-post{background:var(--surface);border-radius:14px;margin-bottom:10px;padding:14px}.reported-post-head{align-items:center;gap:10px;margin-bottom:10px;display:flex}.reported-post-head .avatar{width:32px;height:32px;font-size:13px}.reported-meta{flex:1;min-width:0}.reported-name{color:var(--text);font-size:13px;font-weight:500}.reported-cat{color:var(--lavender);text-transform:uppercase;letter-spacing:.3px;font-size:11px}.revealed-id{background:var(--rose);color:#fff;letter-spacing:.4px;border-radius:10px;padding:4px 10px;font-family:monospace;font-size:11px;font-weight:600}.reported-content{color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;font-size:14.5px;line-height:1.6}.btn-text-link{color:var(--lavender);cursor:pointer;background:0 0;border:none;padding:6px 0 0;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500}.btn-text-link:hover{text-decoration:underline}.report-meta-foot{color:var(--muted);border-bottom:1px solid var(--border-color);margin-bottom:14px;padding-bottom:12px;font-size:12px}.report-meta-foot strong{color:var(--text);font-weight:600}.report-actions{flex-wrap:wrap;gap:8px;display:flex}.btn-action{cursor:pointer;border:1px solid #0000;border-radius:10px;align-items:center;gap:6px;padding:8px 14px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;transition:all .2s;display:inline-flex}.btn-action:disabled{opacity:.4;cursor:not-allowed}.btn-action-ghost{border-color:var(--border-color);color:var(--text-dim);background:0 0}.btn-action-ghost:hover:not(:disabled){border-color:var(--border-hover);color:var(--text);background:var(--surface)}.btn-action-primary{background:var(--accent-gradient);color:#fff;box-shadow:0 4px 12px #845ef74d}.btn-action-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px #845ef766}.btn-action-danger{border-color:var(--rose);color:var(--rose);background:0 0}.btn-action-danger:hover:not(:disabled){background:var(--rose);color:#fff}.btn-load-more{background:var(--surface);border:1px dashed var(--border-color);width:100%;color:var(--text);cursor:pointer;border-radius:14px;margin-top:16px;padding:14px;font-family:DM Sans,sans-serif;font-size:14px;font-weight:500;transition:all .2s}.btn-load-more:hover:not(:disabled){border-color:var(--lavender);color:var(--lavender)}.btn-load-more:disabled{opacity:.5;cursor:not-allowed}.skel-report{padding:18px}.skel-report .skel-line{margin:8px 0}.revealed-user{background:#845ef714;border-radius:12px;flex-direction:column;gap:2px;margin-top:10px;padding:8px;display:flex}.verified-badge{color:#845ef7;margin-left:6px}.revealed-user-head{align-items:center;gap:6px;display:flex}.btn-hide-reveal{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;margin-left:auto;padding:2px;transition:color .2s,background .2s;display:flex}.btn-hide-reveal:hover{color:var(--rose);background:var(--surface)}@media (width<=480px){.admin-body{padding:12px}.report-card{border-radius:16px;padding:14px}.admin-title h1{font-size:18px}.btn-action{padding:8px 10px;font-size:12px}.btn-action span{display:none}.reported-content{font-size:14px}}@media (width<=380px){.report-actions{gap:6px}.btn-action{padding:8px}}.profile-container{background:var(--ink);min-height:100vh;padding-bottom:40px}.profile-header{background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:50;border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:16px 20px;display:flex;position:sticky;top:0}.profile-header h2{color:var(--text);font-family:Cormorant Garamond,serif;font-size:24px;font-weight:500}.profile-main{max-width:700px;margin:0 auto;padding:24px 16px}.profile-card{background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--shadow-elevated);border-radius:24px;flex-direction:column;align-items:center;margin-bottom:32px;padding:32px 24px;display:flex}.profile-avatar-large{background:var(--accent-gradient);border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:16px;display:flex;box-shadow:0 8px 24px #845ef740}.profile-info{text-align:center;width:100%}.profile-name{color:var(--text);justify-content:center;align-items:center;gap:6px;margin-bottom:8px;font-size:22px;font-weight:600;display:flex}.verified-icon{color:var(--lavender)}.profile-details{color:var(--text-dim);justify-content:center;align-items:center;gap:16px;margin-bottom:24px;font-size:14px;display:flex}.profile-detail-item{align-items:center;gap:6px;display:flex}.btn-edit{background:var(--surface);border:1px solid var(--border-color);color:var(--text);cursor:pointer;border-radius:20px;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s;display:inline-flex}.btn-edit:hover{background:var(--chip-selected-bg);border-color:var(--lavender);color:var(--lavender)}.profile-edit-form{flex-direction:column;gap:20px;width:100%;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{color:var(--text-dim);font-size:13px;font-weight:500}.gender-toggle{gap:12px;display:flex}.gender-btn{background:var(--surface);border:1.5px solid var(--border-color);color:var(--text-dim);cursor:pointer;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.gender-btn.active{background:var(--chip-selected-bg);border-color:var(--lavender);color:var(--lavender)}.profile-error{color:var(--rose);justify-content:center;align-items:center;gap:6px;font-size:13px;display:flex}.edit-actions{gap:12px;margin-top:10px;display:flex}.edit-actions button{justify-content:center;align-items:center;gap:6px;display:flex}.section-title{color:var(--text);margin-bottom:16px;padding-left:8px;font-family:DM Sans,sans-serif;font-size:16px;font-weight:600}.loading-text,.empty-posts{text-align:center;color:var(--text-dim);background:var(--surface);border:1px dashed var(--border-color);border-radius:20px;padding:40px 20px;font-size:14px}.setup-intro{text-align:center;color:var(--text-dim);max-width:320px;margin:0 auto 20px;font-size:14px;line-height:1.5}.resources-container{background:var(--ink);max-width:700px;min-height:100vh;margin:0 auto}.resources-header{border-bottom:1px solid var(--border-color);background:var(--ink);z-index:10;justify-content:space-between;align-items:center;padding:16px;display:flex;position:sticky;top:0}.resources-header h2{font-family:var(--font-serif);color:var(--text);font-size:20px;font-weight:500}.resources-main{padding:20px 16px 48px}.resources-intro{background:var(--warm-gradient);border:1px solid var(--card-border);border-radius:16px;margin-bottom:28px;padding:18px}.resources-intro p{color:var(--text);margin:0;font-size:15px;line-height:1.65}.resources-section{margin-bottom:30px}.resources-title{font-family:var(--font-serif);color:var(--text);margin-bottom:14px;font-size:22px;font-weight:500}.helpline-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;padding:16px;text-decoration:none;transition:border-color .15s,transform .1s;display:flex}.helpline-card:hover{border-color:var(--lavender)}.helpline-card:active{transform:scale(.99)}.helpline-priority{background:var(--chip-bg);border-color:var(--lavender-soft);box-shadow:var(--shadow-soft)}.helpline-badge{letter-spacing:.04em;text-transform:uppercase;color:#fff;background:var(--lavender);border-radius:6px;align-self:flex-start;margin-bottom:6px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.helpline-info{flex-direction:column;gap:3px;min-width:0;display:flex}.helpline-name{color:var(--text);font-size:15px;font-weight:600}.helpline-desc{color:var(--muted);font-size:12.5px;line-height:1.4}.helpline-number{color:var(--lavender);letter-spacing:.02em;margin-top:3px;font-size:15px;font-weight:700}.helpline-call{background:var(--accent-gradient);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;display:flex}.helpline-call.pulse{animation:2.4s ease-in-out infinite gentle-pulse}@keyframes gentle-pulse{0%,to{box-shadow:0 0 #845ef759}50%{box-shadow:0 0 0 8px #845ef700}}@media (prefers-reduced-motion:reduce){.helpline-call.pulse{animation:none}}.coping-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:14px;gap:12px;margin-bottom:10px;padding:15px;display:flex}.coping-icon{background:var(--chip-bg);width:38px;height:38px;color:var(--lavender);border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.coping-title{color:var(--text);margin-bottom:3px;font-size:14px;font-weight:600}.coping-body{color:var(--text-dim);font-size:13px;line-height:1.55}.resources-footer-note{background:var(--surface);border-radius:12px;align-items:flex-start;gap:9px;margin-top:28px;padding:14px;display:flex}.resources-footer-note svg{color:var(--muted);flex-shrink:0;margin-top:1px}.resources-footer-note p{color:var(--muted);margin:0;font-size:12px;line-height:1.55}.settings-item-help{color:var(--lavender)}
