:root{color-scheme:dark;--bg:#030507;--fg:#f7ffeb;--fg-soft:#f1ffdcdb;--muted:#a8b58a;--border:#b6ff2e29;--accent:#cfff39;--accent-2:#00ffd5;--font-manrope:"Manrope",ui-sans-serif,system-ui,sans-serif;--font-geist-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--font-syne:"Syne",sans-serif}*,:after,:before{box-sizing:border-box}html{background:var(--bg)}body.min-h-full,html.h-full{min-height:100%}.h-full{height:100%}.min-h-full{min-height:100%}.scroll-smooth{scroll-behavior:smooth}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh;margin:0;color:var(--fg);font-family:var(--font-manrope);background:radial-gradient(circle at 15% 18%,#b0ff2e38,transparent 26rem),radial-gradient(circle at 84% 12%,#00ffd52e,transparent 24rem),radial-gradient(circle at 50% 100%,#66ff571f,transparent 26rem),linear-gradient(#030507,#050a09 45%,#030507);overflow-x:hidden}body:before{opacity:.34;background-image:linear-gradient(#beff580b 1px,transparent 0),linear-gradient(90deg,#00ffd508 1px,transparent 0);background-size:120px 120px;-webkit-mask-image:linear-gradient(#000000bd,transparent 88%);mask-image:linear-gradient(#000000bd,transparent 88%)}body:after,body:before{content:"";pointer-events:none;position:fixed;inset:0}body:after{background:radial-gradient(80% 58% at 50% 112%,#cfff390d,transparent 42%),radial-gradient(circle at 50% 42%,transparent 34%,#02050766 100%),linear-gradient(#0205070a,#0205078f 100%)}a{color:inherit;text-decoration:none}::selection{color:#061007;background:#cfff3947}h1,h2,h3{text-wrap:balance}a,button{-webkit-tap-highlight-color:transparent}.shader-shell{z-index:-3;pointer-events:none;position:fixed;inset:0;overflow:hidden}.shader-shell:before{content:"";mix-blend-mode:screen;opacity:.64;background:radial-gradient(58% 34% at 12% 46%,#cfff391a,transparent 72%),radial-gradient(52% 32% at 88% 42%,#00ffd514,transparent 70%),linear-gradient(90deg,#02040a33,transparent 30% 70%,#02040a3d);transition:opacity .9s;position:absolute;inset:0}.shader-shell:after{content:"";background:radial-gradient(circle,transparent 34%,#02040a70 100%),linear-gradient(#02040a29,#02040a6b);transition:opacity 1.1s;position:absolute;inset:0}.shader-shell[data-ready=false]:after,.shader-shell[data-ready=false]:before{opacity:0}.shader-shell[data-armed=false][data-ready=true]:before{opacity:.18}.shader-shell[data-armed=false][data-ready=true]:after{opacity:.32}.shader-canvas{opacity:0;filter:saturate() contrast() blur(20px);will-change:opacity,transform,filter;width:100%;height:100%;display:block;transform:scale(1.03)}.shader-intro{pointer-events:none;opacity:0;mix-blend-mode:screen;filter:blur(26px);will-change:opacity,transform;background:linear-gradient(98deg,transparent 18%,#ffffff04 42%,#cfff3929 49%,#00ffd51f 53%,transparent 64%);position:absolute;inset:-12%;transform:translate(-34%) scale(1.06)}.shader-shell[data-armed=false][data-ready=true] .shader-canvas{opacity:.16;filter:saturate(.94) contrast(.96) blur(22px);transition:opacity .7s,filter .9s,transform .9s;transform:scale(1.05)}.shader-shell[data-armed=true][data-ready=true] .shader-canvas{animation:shaderReveal 1.7s cubic-bezier(.18,.92,.22,1) both}.shader-shell[data-armed=true][data-ready=true] .shader-intro{animation:shaderBurst 1.5s cubic-bezier(.16,.9,.2,1) both}.root{isolation:isolate;min-height:100svh;position:relative;overflow:hidden}.root:not(.entered){height:100svh}.gate{z-index:40;cursor:pointer;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:radial-gradient(circle,#00ffd50f,transparent 18rem),linear-gradient(#0305076b,#030507bd);justify-content:center;align-items:center;transition:opacity .76s cubic-bezier(.18,.9,.22,1),visibility 0s linear .76s;display:flex;position:fixed;inset:0;border:0;width:100%;color:var(--fg)}.gate:focus-visible{outline:none}.gate--hidden{opacity:0;visibility:hidden;pointer-events:none}.gate__inner{pointer-events:none;color:#f7ffebe6;align-items:center;gap:.95rem;transition:transform .22s,color .22s;display:inline-flex}.gate:hover .gate__inner{color:var(--fg);transform:translateY(-2px)}.gate__line{background:linear-gradient(90deg,transparent,#00ffd585,transparent);width:clamp(3rem,10vw,5.5rem);height:1px}.gate__text{font-family:var(--font-geist-mono),monospace;letter-spacing:.28em;text-transform:uppercase;font-size:.84rem;font-weight:600}.stage{opacity:0;pointer-events:none;width:100%;transition:opacity .82s cubic-bezier(.18,.92,.22,1),transform .82s cubic-bezier(.18,.92,.22,1);position:fixed;inset:0;overflow:hidden;transform:translateY(24px)}.entered .stage{opacity:1;pointer-events:auto;position:relative;inset:auto;overflow:visible;transform:translateY(0)}.mute{z-index:100;color:#cfff3966;cursor:pointer;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);opacity:0;pointer-events:none;background:#060e0ab8;border:1px solid #b6ff2e1f;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:opacity .22s,transform .22s,border-color .22s,color .22s,background .22s;display:flex;position:fixed;bottom:28px;right:28px}.entered .mute{opacity:1;pointer-events:auto}.mute__icon{width:16px;height:16px;position:absolute}.mute__icon--off{display:none}.mute--on .mute__icon--off{display:block}.mute--on .mute__icon--sound{display:none}.mute:hover{color:var(--accent-2);background:#00ffd514;border-color:#00ffd561;transform:translateY(-2px)}.noise{z-index:-2;pointer-events:none;opacity:.18;mix-blend-mode:soft-light;background-image:linear-gradient(#ffffff06 1px,transparent 0),linear-gradient(90deg,#ffffff05 1px,transparent 0);background-size:3px 3px,5px 5px;position:fixed;inset:0}.shell{z-index:1;scroll-behavior:smooth;scroll-snap-type:y mandatory;overscroll-behavior-y:none;scrollbar-width:none;width:100%;height:100svh;position:relative;overflow:hidden auto}.shell::-webkit-scrollbar{display:none}.container{width:min(100%,1120px);margin:0 auto;padding:0 clamp(1rem,4vw,2rem)}.screen{scroll-snap-align:start;scroll-snap-stop:always;height:100svh;min-height:100svh;position:relative}.screen--hero{flex-direction:column;display:flex}.screen--projects{overflow:hidden}.hero{padding:max(4.5rem,calc(env(safe-area-inset-top) + 2rem)) 0 0;flex-direction:column;flex:1 1;justify-content:flex-end;gap:1rem;display:flex}.hero__tag{font-family:var(--font-geist-mono),monospace;letter-spacing:.14em;color:#dbffa2b8;font-size:.82rem}.hero__name,.hero__tag{margin:0;font-weight:700}.hero__name{max-width:none;font-family:Courier Prime,Courier New,ui-monospace,monospace;letter-spacing:0;color:var(--fg);text-shadow:0 0 18px #cfff391f,0 0 34px #00ffd50f;font-size:clamp(1.9rem,5.4vw,3.4rem);line-height:1.05;overflow-wrap:anywhere}.hero__caret{width:1ch;color:var(--accent-2);text-shadow:0 0 20px #00ffd57a;animation:blink 1.05s step-end infinite;display:inline-block}.hero__bio{max-width:40rem;color:var(--fg-soft);margin:0;font-size:clamp(1.05rem,2vw,1.28rem);line-height:1.55}.hero__stack{max-width:-moz-fit-content;max-width:fit-content;font-family:var(--font-geist-mono),monospace;letter-spacing:.12em;color:#bac996e6;border-top:1px solid #ffffff14;margin:0;padding-top:1rem;font-size:.82rem;font-weight:600}.hero__links{flex-wrap:wrap;gap:.8rem;padding-top:.4rem;display:flex}.scroll-hint{padding-bottom:max(2rem,calc(env(safe-area-inset-bottom) + 1.5rem));justify-content:center;padding-top:1.5rem;display:flex}.scroll-hint svg{color:#00ffd552;width:20px;height:20px;animation:bob 2.4s ease-in-out infinite}.pill{-webkit-backdrop-filter:blur(24px) saturate(1.2);background:#080e0b4d;border:1px solid #b6ff2e1a;border-radius:999px;align-items:center;gap:.45rem;padding:.48rem .95rem;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s;display:inline-flex;box-shadow:inset 0 1px #ffffff0f,inset 0 0 0 .5px #ffffff0a}.pill:hover{background:#080e0b61;border-color:#00ffd53d;transform:translateY(-2px);box-shadow:inset 0 1px #ffffff14,inset 0 0 0 .5px #ffffff0f}.pill--tg:hover{color:#8fe6ff;border-color:#38b2ea85}.pill--gh:hover{color:var(--fg);border-color:#f7ffeb47}.pill__icon{width:.95rem;height:.95rem;color:var(--fg);display:inline-flex}.pill__icon svg{width:100%;height:100%}.pill__label{letter-spacing:.04em;color:inherit;font-size:.78rem;font-weight:500}.projects-scroll{height:100%;min-height:100%;padding:max(4.5rem,calc(env(safe-area-inset-top) + 2rem)) 0 max(2rem,calc(env(safe-area-inset-bottom) + 1.5rem));scrollbar-width:none;flex-direction:column;gap:2rem;display:flex;overflow:hidden auto}.projects-scroll::-webkit-scrollbar{display:none}.section{padding-top:clamp(.5rem,3vw,1.5rem)}.section__head{align-items:center;gap:.95rem;margin-bottom:1.5rem;display:flex}.section__num{font-family:var(--font-geist-mono),monospace;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-2);font-size:.82rem;font-weight:700}.section__title{letter-spacing:.02em;color:var(--fg);font-size:1.15rem;font-weight:700;position:relative}.section__title:after{content:"";vertical-align:middle;background:linear-gradient(90deg,#cfff396b,transparent);width:4.5rem;height:1px;margin-left:.95rem;display:inline-block}.cards{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);grid-gap:1.2rem;gap:1.2rem;display:grid}.cards--single{grid-template-columns:1fr}.card{-webkit-backdrop-filter:blur(24px) saturate(1.2);background:#080e0b52;border:1px solid #b6ff2e1a;border-radius:1.4rem;flex-direction:column;gap:1rem;min-height:23rem;padding:1.25rem;transition:transform .24s cubic-bezier(.2,.9,.3,1),border-color .24s,box-shadow .24s,background .24s;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0f,inset 0 0 0 .5px #ffffff0a}.card:before{z-index:2;background:linear-gradient(90deg,transparent,#00ffd552,#cfff393d,transparent);height:1px;top:0;left:1.5rem;right:1.5rem}.card:after,.card:before{content:"";pointer-events:none;position:absolute}.card:after{border-radius:inherit;background:radial-gradient(at 20% 0,#00ffd50f,transparent 50%),radial-gradient(at 80% 100%,#cfff390a,transparent 50%);inset:0}.card:hover{background:#080e0b61;border-color:#00ffd533;transform:translateY(-4px);box-shadow:inset 0 1px #ffffff14,inset 0 0 0 .5px #ffffff0f,0 0 40px #00ffd50a}.card>*{z-index:1;position:relative}.card--feat{min-height:30rem}.card__media{aspect-ratio:16/9;background:#030705e6;border:1px solid #ffffff0f;border-radius:1rem;position:relative;overflow:hidden}.card__img{object-fit:cover;filter:brightness(.58) contrast(1.16) saturate(.84);width:100%;height:100%;transition:filter .32s,transform .32s;display:block;transform:scale(1.025)}.card:hover .card__img{filter:brightness(.68) contrast(1.1) saturate(.92);transform:scale(1.04)}.card__glow{pointer-events:none;background:radial-gradient(circle at 14% 36%,#cfff3929,transparent 28%),radial-gradient(circle at 86% 20%,#00ffd524,transparent 24%),linear-gradient(#03050714,#03050780);position:absolute;inset:0}.card__eyebrow{font-family:var(--font-geist-mono),monospace;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-2);opacity:.62;margin:0;font-size:.7rem;font-weight:700}.card__name{letter-spacing:-.05em;color:var(--fg);margin:0;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:700;line-height:.98}.card__desc{color:#efffdfb8;max-width:44ch;margin:0;font-size:.95rem;line-height:1.7}.card__chips{flex-wrap:wrap;gap:.5rem;margin-top:auto;padding-top:.4rem;display:flex}.chip{font-family:var(--font-geist-mono),monospace;letter-spacing:.1em;text-transform:uppercase;color:#cfff398f;background:#cfff390a;border:1px solid #b6ff2e1a;border-radius:.6rem;align-items:center;padding:.42rem .72rem;font-size:.68rem;font-weight:700;transition:border-color .18s,color .18s;display:inline-flex}.card:hover .chip{color:#cfff39b8;border-color:#b6ff2e2e}.card__link{font-family:var(--font-geist-mono),monospace;letter-spacing:.12em;color:var(--accent-2);opacity:.7;margin-top:.25rem;font-size:.78rem;font-weight:700;transition:opacity .18s}.card:hover .card__link{opacity:1}.footer{border-top:1px solid #ffffff14;justify-content:space-between;gap:1rem;margin-top:clamp(2.75rem,8vw,4rem);padding-top:1.1rem}.footer,.footer__meta{align-items:center;display:flex}.footer__meta{font-family:var(--font-geist-mono),monospace;letter-spacing:.12em;color:#bccc96c2;gap:.55rem;font-size:.75rem;font-weight:700}.footer__dot{color:#00ffd5b8}.footer__links{flex-wrap:wrap;gap:1rem;display:flex}.footer__links a{font-family:var(--font-geist-mono),monospace;letter-spacing:.12em;color:#efffdfd1;font-size:.74rem;font-weight:700;transition:transform .18s,color .18s;display:inline-flex}.footer__links a:hover{color:var(--accent-2);transform:translateY(-2px)}.anim-up{animation:rise .85s cubic-bezier(.2,1,.2,1) both}.anim-up-late{animation:rise 1s cubic-bezier(.2,1,.2,1) .12s both}.island-anchor{z-index:120;pointer-events:none;opacity:0;justify-content:center;transition:opacity .48s cubic-bezier(.2,.9,.3,1),transform .48s cubic-bezier(.2,.9,.3,1);display:flex;position:fixed;top:16px;left:0;right:0;transform:translateY(-14px)}.entered .island-anchor{opacity:1;transform:translateY(0)}.island{pointer-events:auto;cursor:pointer;-webkit-backdrop-filter:blur(32px) saturate(1.6);background:#060a087a;border:1px solid #b6ff2e1a;border-radius:999px;align-items:center;height:44px;padding:5px 14px 5px 5px;transition:height .42s cubic-bezier(.2,.9,.3,1),width .42s cubic-bezier(.2,.9,.3,1),padding .42s,border-radius .42s,border-color .26s,box-shadow .26s;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 24px #00000080,inset 0 1px #ffffff0f,inset 0 0 0 .5px #ffffff0a}.island:hover{border-color:#00ffd533;box-shadow:0 6px 32px #0009,inset 0 1px #ffffff14,inset 0 0 0 .5px #ffffff0f,0 0 24px #00ffd50d}.island:focus-visible{outline:none}.island--open{border-radius:22px;width:280px;height:100px;padding:14px 18px}.island__cava{pointer-events:none;opacity:0;width:100%;height:100%;transition:opacity .4s .1s;display:block;position:absolute;inset:0}.island--open .island__cava{opacity:.55;-webkit-mask-image:linear-gradient(transparent,#00000080 35%,#000000e6);mask-image:linear-gradient(transparent,#00000080 35%,#000000e6)}.island__content{z-index:1;align-items:center;gap:.55rem;width:100%;min-width:0;transition:gap .42s cubic-bezier(.2,.9,.3,1);display:flex;position:relative}.island--open .island__content{gap:.85rem}.island__disc{border-radius:50%;flex-shrink:0;width:34px;height:34px;transition:width .42s cubic-bezier(.2,.9,.3,1),height .42s,box-shadow .42s;position:relative;overflow:hidden;box-shadow:0 0 0 1px #ffffff14,0 2px 8px #0006}.island--open .island__disc{width:68px;height:68px;box-shadow:0 0 0 1px #ffffff14,0 4px 16px #00000080,0 0 20px #00ffd50f}.island--playing .island__disc{animation:spin 4s linear infinite}.island__disc-img{object-fit:cover;border-radius:50%;width:100%;height:100%}.island__disc-hole{background:#030507eb;border-radius:50%;width:8px;height:8px;transition:width .42s,height .42s;position:absolute;top:50%;left:50%;translate:-50% -50%;box-shadow:0 0 0 1.5px #ffffff14,inset 0 0 2px #0009}.island--open .island__disc-hole{width:12px;height:12px}.island__text{flex-direction:column;flex:1 1;gap:1px;min-width:0;display:flex;overflow:hidden}.island__now{font-family:var(--font-geist-mono),monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);opacity:.72;white-space:nowrap;font-size:.56rem;font-weight:700;transition:font-size .42s}.island--open .island__now{font-size:.6rem}.island__title{color:#ffffff8c;white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;font-weight:600;transition:font-size .42s,color .42s;overflow:hidden}.island--open .island__title{color:var(--fg);font-size:1rem;font-weight:700}.island__eq{flex-shrink:0;align-items:flex-end;gap:2px;height:14px;margin-left:auto;transition:height .42s;display:flex}.island--open .island__eq{gap:3px;height:22px}.island__eq span{background:var(--accent);opacity:.45;border-radius:1px;width:2px;transition:width .42s;display:block}.island--open .island__eq span{border-radius:1.5px;width:3px}.island--playing .island__eq span:first-child{height:6px;animation:eqBar .62s ease-in-out infinite alternate}.island--playing .island__eq span:nth-child(2){height:11px;animation:eqBar .48s ease-in-out .12s infinite alternate}.island--playing .island__eq span:nth-child(3){height:4px;animation:eqBar .72s ease-in-out 60ms infinite alternate}.island__eq span:first-child{height:3px}.island__eq span:nth-child(2){height:5px}.island__eq span:nth-child(3){height:2px}@keyframes blink{0%,48%{opacity:1}49%,to{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}@keyframes bob{0%,to{opacity:.5;transform:translateY(0)}50%{opacity:1;transform:translateY(6px)}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes eqBar{0%{transform:scaleY(.3)}to{transform:scaleY(1)}}@keyframes shaderReveal{0%{opacity:0;filter:saturate(.92) contrast(.96) blur(30px);transform:scale(1.06)}38%{opacity:.46;filter:saturate(1.01) contrast(1.01) blur(14px);transform:scale(1.03)}to{opacity:.96;filter:saturate(1.08) contrast(1.08);transform:scale(1)}}@keyframes shaderBurst{0%{opacity:0;transform:translate(-40%) scale(1.08)}16%{opacity:.18}42%{opacity:.48;transform:translate(-2%) scale(1.02)}to{opacity:0;transform:translate(32%) scale(.98)}}@media (max-width:768px){body:before{opacity:.28;background-size:84px 84px}.gate__inner{gap:.75rem}.gate__line{width:2.25rem}.gate__text{letter-spacing:.22em;font-size:.76rem}.mute{bottom:16px;right:16px}.hero{padding-top:max(4rem,calc(env(safe-area-inset-top) + 1.75rem));gap:.85rem}.hero__stack{max-width:none;padding-right:1rem;line-height:1.7}.pill{padding:.46rem .9rem}.projects-scroll{padding-top:max(4rem,calc(env(safe-area-inset-top) + 1.75rem));padding-bottom:max(1.5rem,calc(env(safe-area-inset-bottom) + 1rem));gap:1.5rem}.section__head{margin-bottom:1.15rem}.section__title:after{width:2rem}.cards{grid-template-columns:1fr}.card,.card--feat{min-height:auto}.footer{flex-direction:column;align-items:flex-start}.island-anchor{top:12px}.island{height:40px;padding:4px 12px 4px 4px}.island--open{width:260px;height:88px;padding:12px 14px}.island__disc{width:30px;height:30px}.island--open .island__disc{width:56px;height:56px}.island__disc-hole{width:7px;height:7px}.island--open .island__disc-hole{width:10px;height:10px}.island__now{font-size:.5rem}.island__title{font-size:.64rem}.island--open .island__title{font-size:.88rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.anim-up,.anim-up-late,.hero__caret,.island__disc,.island__eq span,.scroll-hint svg{animation:none}}.views{z-index:110;display:inline-flex;align-items:center;gap:.45rem;position:fixed;top:16px;right:16px;padding:.45rem .8rem;border:1px solid #b6ff2e1a;border-radius:999px;background:#060a087a;color:var(--fg);-webkit-backdrop-filter:blur(32px) saturate(1.6);backdrop-filter:blur(32px) saturate(1.6);font-family:var(--font-geist-mono),monospace;font-size:.74rem;font-weight:700;box-shadow:0 4px 24px #00000080,inset 0 1px #ffffff0f}.views svg{width:.95rem;height:.95rem;color:var(--accent-2)}.comments{width:100%}.comments__head{align-items:center;gap:.95rem;margin-bottom:1rem;display:flex}.comments__count{font-size:.72rem;color:var(--accent-2);border:1px solid #b6ff2e1a;background:#cfff390a;padding:.25rem .65rem}.comments__count,.comments__fresh{font-family:var(--font-geist-mono),monospace;font-weight:700;border-radius:999px}.comments__fresh{font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:#061007;background:var(--accent);padding:.2rem .5rem;animation:rise .4s cubic-bezier(.2,1,.2,1) both}.comment--deep{opacity:.97}.comments__form{gap:.8rem;min-height:auto;margin-top:1rem}.comments__me{align-items:center;gap:.8rem;display:flex}.avatar{flex-shrink:0;border-radius:50%;object-fit:cover;display:block;background:#0a0f0c;box-shadow:0 0 0 1px #ffffff22,0 2px 10px #0008}.av-pick{flex-wrap:wrap;gap:.45rem;display:flex}.av-pick__dot{width:2rem;height:2rem;border-radius:50%;overflow:hidden;border:2px solid transparent;cursor:pointer;padding:0;background:none;transition:transform .15s,border-color .15s}.av-pick__dot img{width:100%;height:100%;object-fit:cover;display:block}.av-pick__upload{display:grid;place-items:center;color:#bccc96c2;background:#ffffff08}.av-pick__upload:hover{color:var(--accent-2)}.av-pick__upload svg{width:1rem;height:1rem}.av-pick__dot--on,.av-pick__dot:hover{transform:scale(1.12)}.av-pick__dot--on{border-color:var(--fg)}.field{width:100%;resize:vertical;border:1px solid #b6ff2e1a;border-radius:.9rem;background:#03070599;color:var(--fg);font-family:var(--font-manrope),sans-serif;font-size:.92rem;padding:.7rem .9rem;outline:none;transition:border-color .18s}.field:focus{border-color:#00ffd533}.field::placeholder{color:#bccc9680}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid #b6ff2e2e;border-radius:999px;cursor:pointer;background:#cfff3914;color:var(--fg);font-family:var(--font-geist-mono),monospace;font-size:.78rem;font-weight:700;padding:.6rem 1.2rem;transition:transform .18s,background .18s,border-color .18s}.btn:hover:not(:disabled){background:#cfff3926;border-color:#00ffd533;transform:translateY(-1px)}.btn:disabled{opacity:.45;cursor:default}.btn svg{width:.95rem;height:.95rem}.btn--ghost{background:transparent}.btn--small{padding:.45rem .9rem;font-size:.72rem}.comments__toggle{margin-top:1rem;display:inline-flex;align-items:center;gap:.55rem;background:none;border:0;cursor:pointer;color:var(--accent-2);font-family:var(--font-geist-mono),monospace;font-size:.8rem;font-weight:700;letter-spacing:.06em;padding:.4rem 0}.comments__toggle:hover{color:var(--fg)}.comments__toggle svg{width:1rem;height:1rem;transition:transform .25s}.comments__toggle svg.flip{transform:rotate(180deg)}.comments__list{margin-top:1rem;gap:1rem;display:flex;flex-direction:column}.comments__empty{color:var(--muted);font-size:.9rem;margin:.4rem 0}.comment{gap:.75rem;display:flex}.comment--reply{margin-top:.8rem;margin-left:.4rem}.comment__body{flex:1 1;min-width:0}.comment__head{align-items:baseline;gap:.6rem;display:flex}.comment__nick{font-weight:700;font-size:.9rem}.comment__time{font-family:var(--font-geist-mono),monospace;font-size:.68rem;color:var(--soft,#bccc9680)}.comment__text{margin:.3rem 0 0;color:#efffdfd9;font-size:.92rem;line-height:1.6;overflow-wrap:anywhere;white-space:pre-wrap}.comment__actions{align-items:center;gap:.5rem;margin-top:.45rem;display:flex}.vote{display:inline-flex;align-items:center;gap:.35rem;background:none;border:1px solid #b6ff2e1a;border-radius:999px;cursor:pointer;color:#bccc96c2;padding:.3rem .65rem;font-family:var(--font-geist-mono),monospace;font-size:.72rem;font-weight:700;transition:color .15s,border-color .15s,background .15s}.vote svg{width:.9rem;height:.9rem}.vote:hover{color:var(--fg);border-color:#00ffd533}.vote--on{color:var(--accent);border-color:#cfff3966;background:#cfff390d}.vote--down.vote--on{color:#ff7a7a;border-color:#ff7a7a66;background:#ff7a7a0d}.reply-btn{display:inline-flex;align-items:center;gap:.35rem;background:none;border:0;cursor:pointer;color:#bccc96c2;font-family:var(--font-geist-mono),monospace;font-size:.72rem;font-weight:700;padding:.3rem .4rem}.reply-btn:hover{color:var(--accent-2)}.reply-btn svg{width:.9rem;height:.9rem}.reply-form{margin-top:.6rem;gap:.5rem;display:flex;flex-direction:column}.reply-form textarea{width:100%;resize:vertical;border:1px solid #b6ff2e1a;border-radius:.9rem;background:#03070599;color:var(--fg);font-family:var(--font-manrope),sans-serif;font-size:.88rem;padding:.6rem .8rem;outline:none}.reply-form textarea:focus{border-color:#00ffd533}.reply-form__row{gap:.5rem;display:flex}@media (max-width:768px){.views{top:12px;right:12px}}.admin{position:relative;z-index:2;width:min(860px,calc(100% - 2rem));margin:0 auto;padding:3rem 0;min-height:100vh}.admin__box{gap:.8rem;display:flex;flex-direction:column;max-width:380px;margin:12vh auto 0}.admin__title{margin:0;font-family:var(--font-syne),sans-serif;font-size:2rem;letter-spacing:-.03em}.admin__err{margin:0;color:#ff7a7a;font-size:.85rem}.admin__back{color:var(--soft,#bccc9680);font-family:var(--font-geist-mono),monospace;font-size:.75rem;text-decoration:none}.admin__back:hover{color:var(--fg)}.admin__top{align-items:center;justify-content:space-between;display:flex}.admin__tabs,.admin__topbtns{gap:.5rem;display:flex}.admin__tabs{margin:1.2rem 0 1rem}.admin__card{gap:.8rem;min-height:auto}.admin__row{align-items:center;justify-content:space-between;gap:.8rem;display:flex}.admin__table{display:flex;flex-direction:column}.admin__tr{grid-template-columns:1.2fr 1fr 1fr .4fr;grid-gap:.6rem;gap:.6rem;display:grid;padding:.5rem 0;border-top:1px solid #ffffff0f;font-size:.82rem}.admin__tr--head{border-top:0;color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.1em}.admin__tr--head,.mono{font-family:var(--font-geist-mono),monospace}.mono{overflow-wrap:anywhere}.admin__comment{gap:.7rem;align-items:flex-start;display:flex;padding:.7rem 0;border-top:1px solid #ffffff0f}.admin__comment .btn{flex-shrink:0}.admin__thumb{max-width:140px;max-height:100px;border-radius:.7rem;border:1px solid #ffffff1a;margin-top:.4rem;display:block}.avatar--empty{display:inline-grid;place-items:center;width:44px;height:44px;border:1px dashed #b6ff2e44;color:#bccc9680;background:none;font-weight:800;font-size:1.1rem}.attach-row,.av-upload{display:flex;align-items:center}.attach-row{gap:.6rem}.attach-btn{display:inline-flex;align-items:center;gap:.4rem;background:none;border:1px dashed #b6ff2e33;border-radius:999px;cursor:pointer;color:#bccc96c2;padding:.4rem .8rem;font-family:var(--font-geist-mono),monospace;font-size:.72rem;font-weight:700;transition:color .15s,border-color .15s}.attach-btn:hover{color:var(--accent-2);border-color:#00ffd533}.attach-btn svg{width:.95rem;height:.95rem}.img-preview{position:relative;display:inline-block}.img-preview img{max-width:120px;max-height:80px;border-radius:.7rem;border:1px solid #ffffff1a;display:block}.img-preview button{position:absolute;top:-8px;right:-8px;width:1.3rem;height:1.3rem;border-radius:50%;border:1px solid #b6ff2e44;background:#060e0a;color:var(--fg);cursor:pointer;font-size:.85rem;line-height:1}.comment__imgwrap{display:block;margin-top:.5rem;background:none;border:0;padding:0;cursor:zoom-in;text-align:left}.comment__img{max-width:100%;max-height:340px;border-radius:.9rem;border:1px solid #ffffff14;display:block}.form-err{margin:0;border:1px solid #ff7a7a55;border-radius:.9rem;background:#ff7a7a12;color:#ffb3b3;font-size:.85rem;line-height:1.5;padding:.6rem .9rem}.lightbox{z-index:300;position:fixed;inset:0;display:grid;place-items:center;background:rgba(3,5,7,.88);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);cursor:zoom-out;padding:1rem}.lightbox__img{max-width:min(92vw,1100px);max-height:86vh;border-radius:1rem;border:1px solid #ffffff22;box-shadow:0 30px 90px #000;cursor:default}.lightbox__close{position:fixed;top:1rem;right:1rem;display:grid;place-items:center;width:2.4rem;height:2.4rem;border:1px solid #b6ff2e1a;border-radius:50%;background:#060e0ab8;color:var(--fg);cursor:pointer}.lightbox__close:hover{border-color:#00ffd561;color:var(--accent-2)}.lightbox__close svg{width:1.1rem;height:1.1rem}.btn--danger{background:#ff7a7a18;border-color:#ff7a7a66;color:#ffb3b3}.auth{gap:.8rem;min-height:auto;display:flex;flex-direction:column}.auth__tabs{display:flex;gap:.4rem}.auth__tab{border:1px solid transparent;border-radius:999px;background:none;cursor:pointer;color:#bccc96c2;padding:.4rem .9rem;font-family:var(--font-geist-mono),monospace;font-size:.74rem;font-weight:700}.auth__tab--on,.auth__tab:hover{color:var(--fg)}.auth__tab--on{background:#cfff3914;border-color:#b6ff2e2e}.auth__hint{margin:0;color:var(--muted);font-size:.85rem;line-height:1.55}.comments__you{font-size:.66rem;letter-spacing:.08em;color:var(--accent-2);border:1px solid #00ffd529;background:#00ffd50a;padding:.22rem .6rem}.comment__me,.comments__you{font-family:var(--font-geist-mono),monospace;font-weight:700;border-radius:999px}.comment__me{font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:#061007;background:var(--accent);padding:.1rem .4rem}.avatar--letter{display:inline-grid;place-items:center;border-radius:50%;background:#0d110e;color:var(--muted);border:1px solid #ffffff14;font-weight:800}.comments__me-name{font-family:var(--font-geist-mono),monospace;font-size:.72rem;font-weight:700;color:var(--accent-2);border:1px solid #b6ff2e1a;border-radius:999px;background:#cfff390a;padding:.25rem .65rem}.comments__me{flex-wrap:wrap}.reply-btn--danger{color:#ffb3b3}.admin-overlay{z-index:200;position:fixed;inset:0;overflow-y:auto;background:rgba(3,5,7,.82);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);display:flex;justify-content:center;padding:4vh 1rem}.admin-modal{position:relative;width:min(880px,100%);height:-moz-fit-content;height:fit-content;border:1px solid #b6ff2e29;border-radius:1.4rem;background:#05080acc;box-shadow:0 30px 90px #000c,inset 0 1px #ffffff14;padding:clamp(1rem,4vw,2rem)}.admin-modal .admin{width:100%;margin:0;padding:0;min-height:auto}.admin-modal__close{position:absolute;top:.8rem;right:.8rem;display:grid;place-items:center;width:2.2rem;height:2.2rem;border:1px solid #b6ff2e1a;border-radius:50%;background:#060e0ab8;color:var(--fg);cursor:pointer}.admin-modal__close:hover{border-color:#00ffd561;color:var(--accent-2)}.admin-modal__close svg{width:1rem;height:1rem}.edit-btn{display:inline-flex;align-items:center;background:none;border:0;cursor:pointer;color:#bccc96c2;font-family:var(--font-geist-mono),monospace;font-size:.72rem;font-weight:700;padding:.3rem .4rem}.edit-btn:hover{color:var(--accent-2)}.edit-btn--danger{color:#ffb3b3}