:root{--bg:#0e0d0b;--surface:#16140f;--surface-2:#1f1c15;--border:#2b261e;--border-strong:#3a3328;--fg:#f2ece0;--muted:#9a8f7d;--faint:#6b6355;--brand-purple:#8000e5;--purple:#9d4eff;--accent:#f5c312;--accent-hover:#ffd42e;--accent-soft:#f5c31224;--accent-faint:#f5c3120f;--accent-fg:#17130a;--danger:#c9524a;--discord:#5865f2;--t-xs:.75rem;--t-sm:.875rem;--t-md:1rem;--t-lg:1.25rem;--t-xl:1.75rem;--t-2xl:2.5rem;--t-hero:clamp(2.75rem, 13vw, 5.5rem);--s-1:.25rem;--s-2:.5rem;--s-3:.75rem;--s-4:1rem;--s-5:1.5rem;--s-6:2rem;--s-8:3rem;--r-sm:6px;--r-md:10px;--r-lg:16px;--r-full:999px;--shadow:0 1px 2px #0006, 0 8px 24px #0000004d;--ease:cubic-bezier(.2, 0, 0, 1);--nav-h:3.5rem;--feed-w:40rem}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);min-height:100dvh;color:var(--fg);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:var(--t-md);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}.btn{justify-content:center;align-items:center;gap:var(--s-2);border-radius:var(--r-md);border:1px solid var(--border-strong);background:var(--surface-2);font-weight:600;font-size:var(--t-sm);transition:background .15s var(--ease), border-color .15s var(--ease), transform 80ms var(--ease);padding:.6rem 1.1rem;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--accent);background:#2a251c}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.45;cursor:default}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn-discord{background:var(--discord);border-color:var(--discord);color:#fff;font-size:var(--t-md);padding:.8rem 1.4rem}.btn-discord:hover:not(:disabled){background:#4752c4;border-color:#4752c4}.btn-ghost{background:0 0;border-color:#0000;font-weight:500}.btn-ghost:hover:not(:disabled){background:var(--surface-2);border-color:#0000}.shell{min-height:100dvh;padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom))}@media (min-width:48rem){.shell{padding-bottom:0}}.topbar{z-index:20;justify-content:space-between;align-items:center;gap:var(--s-4);height:var(--nav-h);padding:0 var(--s-4);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);background:#0e0d0bd1;display:none;position:sticky;top:0}@media (min-width:48rem){.topbar{display:flex}}.wordmark{font-size:var(--t-lg);letter-spacing:-.03em;white-space:nowrap;align-items:center;font-weight:800;display:inline-flex}.wordmark:hover{color:inherit}.wm-awe{color:var(--purple)}.wm-shock{color:var(--fg)}.wm-bolt{width:.62em;height:.95em;color:var(--accent);flex:none;margin:0 .06em}.wordmark-link{transition:opacity .15s var(--ease);display:inline-flex}.wordmark-link:hover{opacity:.82}.bar-actions{align-items:center;gap:var(--s-3);display:flex}.create-btn{border-radius:var(--r-md);background:var(--accent);height:2.5rem;color:var(--accent-fg);font-size:var(--t-sm);letter-spacing:-.01em;transition:background .15s var(--ease), transform .1s var(--ease), box-shadow .15s var(--ease);align-items:center;gap:.4rem;padding:0 1.05rem 0 .85rem;font-weight:700;display:inline-flex}.create-btn:hover{background:var(--accent-hover);color:var(--accent-fg);transform:translateY(-1px);box-shadow:0 4px 14px #f5c31238}.create-btn:active{box-shadow:none;transform:translateY(0)scale(.98)}.create-btn svg{width:17px;height:17px}.avatar-link{border-radius:var(--r-full);width:2.5rem;height:2.5rem;box-shadow:inset 0 0 0 1px var(--border-strong);transition:box-shadow .15s var(--ease), transform .1s var(--ease);place-items:center;display:grid}.avatar-link .avatar{width:2rem;height:2rem;line-height:2rem;font-size:var(--t-sm)}.avatar-link:hover{box-shadow:inset 0 0 0 1px var(--muted)}.avatar-link:active{transform:scale(.96)}.avatar-link[aria-current=page]{box-shadow:inset 0 0 0 2px var(--accent)}.tabbar{z-index:20;height:calc(var(--nav-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border);background:#0e0d0be6;display:flex;position:fixed;bottom:0;left:0;right:0}@media (min-width:48rem){.tabbar{display:none}}.tabbar a{font-size:var(--t-xs);color:var(--muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;display:flex}.tabbar a[aria-current=page]{color:var(--accent)}.tabbar svg{width:22px;height:22px}.container{width:100%;max-width:var(--feed-w);padding:var(--s-4);margin:0 auto}.container-wide{max-width:60rem}.door{min-height:100dvh;padding:var(--s-5);text-align:center;place-items:center;display:grid}.door h1{font-size:var(--t-hero);letter-spacing:-.05em;margin:0;font-weight:900;line-height:.95}.door h1 .wordmark{font-size:inherit;font-weight:inherit;letter-spacing:inherit}.door p{margin:var(--s-3) 0 var(--s-6);color:var(--muted);font-size:var(--t-md)}.frame{background:var(--surface-2);background-position:50%;background-size:cover;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff0e}.frame img{opacity:0;width:100%;height:100%;transition:opacity .35s var(--ease);display:block}.frame img.loaded{opacity:1}.frame-contain img{object-fit:contain}.frame-cover img{object-fit:cover}.post{margin-bottom:var(--s-8)}.post-actions{align-items:center;gap:var(--s-1);padding:var(--s-2) 0 0;min-height:2.5rem;display:flex}.post-byline{margin:var(--s-1) 0 0;font-size:var(--t-sm);overflow-wrap:anywhere;line-height:1.5}.byline-who{white-space:nowrap;display:inline}.post-byline .name,.comment-line .name{font-weight:600}.post-byline .avatar-sm,.comment-line .avatar-sm{vertical-align:-.32em;margin-right:.4em}.caption-text{color:var(--fg);margin-left:.45em}.permalink-time{padding:0 var(--s-1);color:var(--faint);font-size:var(--t-xs);flex:none}.permalink-time:hover{color:var(--fg)}.avatar{border-radius:var(--r-full);background:var(--surface-2);object-fit:cover;width:26px;height:26px;line-height:26px;font-size:var(--t-xs);flex:none}.avatar-sm{width:20px;height:20px;font-size:.65rem;line-height:20px}.avatar-lg{width:72px;height:72px;line-height:72px}.avatar-fallback{text-align:center;color:var(--accent);font-weight:700;display:inline-block;overflow:hidden}.post-media-bleed{margin-left:calc(var(--s-4) * -1);margin-right:calc(var(--s-4) * -1);display:block}@media (min-width:48rem){.post-media-bleed{border-radius:var(--r-sm);margin-left:0;margin-right:0;overflow:hidden}}.media-link{display:block}.carousel{position:relative}.carousel-track{scroll-snap-type:x mandatory;scrollbar-width:none;display:flex;overflow-x:auto}.carousel-track::-webkit-scrollbar{display:none}.carousel-track:focus{outline:none}.carousel-track:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.carousel-track>*{scroll-snap-align:center;flex:0 0 100%}.carousel-track>.media-link>.frame{width:100%;height:100%}.carousel-nav{border-radius:var(--r-full);color:#fff;opacity:0;width:2rem;height:2rem;transition:opacity .15s var(--ease), background .15s var(--ease);background:#0000008c;place-items:center;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.carousel-nav svg{width:18px;height:18px}.carousel:hover .carousel-nav,.carousel-nav:focus-visible{opacity:1}.carousel-nav:hover{background:#000000bf}.carousel-nav[disabled]{pointer-events:none;opacity:0!important}.carousel-nav.prev{left:var(--s-2)}.carousel-nav.next{right:var(--s-2)}@media (hover:none){.carousel-nav{display:none}}.dots{bottom:var(--s-3);border-radius:var(--r-full);background:#0000008c;align-items:center;gap:5px;padding:5px 8px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.dot{border-radius:var(--r-full);width:6px;height:6px;transition:background .2s var(--ease);background:#ffffff73;padding:0;position:relative}.dot:after{content:"";width:22px;height:22px;margin:-8px;position:absolute}.dot.on{background:#fff}.pill{top:var(--s-3);right:var(--s-3);border-radius:var(--r-full);font-size:var(--t-xs);font-variant-numeric:tabular-nums;background:#0009;padding:2px 8px;position:absolute}.reactions{gap:var(--s-1);flex-wrap:wrap;display:flex}.reaction{align-items:center;gap:var(--s-1);border-radius:var(--r-full);background:var(--surface-2);font-size:var(--t-md);transition:background .15s var(--ease), border-color .15s var(--ease), transform 80ms var(--ease);border:1px solid #0000;padding:.35rem .65rem;line-height:1.3;display:inline-flex}.reaction:hover:not(:disabled){background:#2a251c}.reaction:active:not(:disabled){transform:scale(.92)}.reaction.mine{border-color:var(--accent);background:var(--accent-soft)}.reaction .n{font-size:var(--t-xs);color:var(--muted);font-variant-numeric:tabular-nums}.reaction.mine .n{color:var(--accent)}.reaction-add{color:var(--faint);font-size:var(--t-sm);padding:.35rem .6rem;line-height:1.3}.reaction-add:hover{color:var(--fg)}.palette{gap:var(--s-1);margin-top:var(--s-2);padding:var(--s-2);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);flex-wrap:wrap;display:flex}.reactors{margin:var(--s-2) 0 0;padding:var(--s-2) var(--s-3);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);font-size:var(--t-xs);color:var(--muted)}.comments{margin-top:var(--s-4);padding-top:var(--s-4);border-top:1px solid var(--border)}.comment-list{gap:var(--s-3);margin:0 0 var(--s-4);padding:0;list-style:none;display:grid}.comment-line{font-size:var(--t-sm);overflow-wrap:anywhere;margin:0;line-height:1.5}.comment-body{white-space:pre-wrap}.comment-meta{align-items:center;gap:var(--s-3);font-size:var(--t-xs);color:var(--faint);margin-top:2px;display:flex}.comment-delete{padding:var(--s-1) 0;margin:calc(var(--s-1) * -1) 0;font-size:inherit;color:inherit}.comment-delete:hover{color:#e08a84}.comment-form{align-items:flex-end;gap:var(--s-2);display:flex}.comment-form .comment-input{resize:none;flex:1;min-width:0;min-height:2.5rem;max-height:10rem;padding:.5rem .8rem;line-height:1.4;overflow-y:auto}.comment-send{flex:none;height:2.5rem;padding-top:0;padding-bottom:0}.comment-remaining{margin:var(--s-1) 0 0;text-align:right;font-size:var(--t-xs);color:var(--faint);font-variant-numeric:tabular-nums}.comment-remaining.over{color:#e08a84}.grid{grid-template-columns:repeat(3,1fr);gap:3px;display:grid}@media (min-width:48rem){.grid{gap:var(--s-2)}}.grid .frame{aspect-ratio:1;border-radius:2px}@media (min-width:48rem){.grid .frame{border-radius:var(--r-sm)}}.profile-head{align-items:center;gap:var(--s-4);margin-bottom:var(--s-5);display:flex}.profile-head h1{font-size:var(--t-lg);margin:0}.profile-head .handle{color:var(--muted);font-size:var(--t-sm)}.profile-head .stat{margin-top:var(--s-2);font-size:var(--t-sm);color:var(--muted)}.profile-head .stat b{color:var(--fg)}.dropzone{place-items:center;gap:var(--s-2);padding:var(--s-8) var(--s-4);border:1.5px dashed var(--border-strong);border-radius:var(--r-lg);background:var(--surface);text-align:center;color:var(--muted);transition:border-color .15s var(--ease), background .15s var(--ease);display:grid}.dropzone.over{border-color:var(--accent);background:var(--accent-faint);color:var(--fg)}.previews{gap:var(--s-2);margin:var(--s-4) 0;grid-template-columns:repeat(auto-fill,minmax(5.5rem,1fr));display:grid}.preview{aspect-ratio:1;border-radius:var(--r-sm);background:var(--surface-2);position:relative;overflow:hidden}.preview img{object-fit:cover;width:100%;height:100%}.preview button{border-radius:var(--r-full);color:#fff;width:22px;height:22px;font-size:var(--t-xs);background:#000000b3;line-height:1;position:absolute;top:3px;right:3px}.field{border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface-2);width:100%;color:var(--fg);font:inherit;resize:vertical;padding:.7rem .85rem}.field::placeholder{color:var(--faint)}.field:focus{border-color:var(--accent);outline:none}.spacer{margin-left:auto}.row{align-items:center;gap:var(--s-3);display:flex}.spread{justify-content:space-between}.icon-btn{border-radius:var(--r-md);width:2.5rem;height:2.5rem;color:var(--muted);transition:background .15s var(--ease), color .15s var(--ease);place-items:center;display:inline-grid}.icon-btn:hover{background:var(--surface-2);color:var(--fg)}.icon-btn svg{width:21px;height:21px}.icon-btn-counted{width:auto;min-width:2.5rem;padding:0 var(--s-2);grid-auto-flow:column;gap:.3rem}.icon-btn .n{font-size:var(--t-sm);font-variant-numeric:tabular-nums}.share-wrap{display:inline-flex;position:relative}.share-bubble{z-index:5;border-radius:var(--r-sm);background:var(--accent);color:var(--accent-fg);font-size:var(--t-xs);white-space:nowrap;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:opacity .15s var(--ease), transform .15s var(--ease);padding:4px 9px;font-weight:700;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%,4px)}.share-bubble.show{opacity:1;transform:translate(-50%)}.hint{color:var(--faint);font-size:var(--t-xs)}.error{margin:var(--s-3) 0 0;padding:var(--s-3);border-radius:var(--r-md);color:#f0b8b8;font-size:var(--t-sm);background:#c9524a14;border:1px solid #c9524a80}.badge{border-radius:var(--r-full);background:var(--accent);color:var(--accent-fg);text-transform:uppercase;letter-spacing:.06em;padding:1px 7px;font-size:.65rem;font-weight:700}.badge.suspended{background:var(--danger);color:#fff}.empty{margin:var(--s-8) 0;text-align:center;color:var(--muted)}.empty h2{margin:0 0 var(--s-2);font-size:var(--t-lg);color:var(--fg)}.skeleton{border-radius:var(--r-lg);background:linear-gradient(90deg, var(--surface) 25%, var(--surface-2) 37%, var(--surface) 63%);background-size:400% 100%;animation:1.4s infinite shimmer}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.icon-btn.on{color:var(--accent)}.menu-wrap{position:relative}.menu{right:0;bottom:calc(100% + var(--s-1));z-index:10;min-width:11rem;padding:var(--s-1);border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface-2);box-shadow:var(--shadow);position:absolute}.menu-item{justify-content:space-between;align-items:center;gap:var(--s-3);border-radius:var(--r-sm);width:100%;font-size:var(--t-sm);text-align:left;white-space:nowrap;padding:.5rem .6rem;display:flex}.menu-item:hover:not(:disabled){color:var(--fg);background:#2f2920}.menu-item.danger{color:#e08a84}.menu-item.danger:hover:not(:disabled){color:#f0b8b8;background:#c9524a26}.menu-note{color:var(--faint);font-size:var(--t-xs)}.tabs{gap:var(--s-4);margin-bottom:var(--s-4);border-bottom:1px solid var(--border);display:flex}.tabs a{padding:var(--s-2) 0;color:var(--muted);font-size:var(--t-sm);border-bottom:2px solid #0000;margin-bottom:-1px;font-weight:600}.tabs a[aria-current=page]{border-bottom-color:var(--accent);color:var(--fg)}
