@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.c1fdd6c2.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.799d8ef8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.dbea232f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_5738168e-module__hiT2XG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_5738168e-module__hiT2XG__variable{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}
:root{--c-bg:#090909;--c-s1:#111213;--c-s2:#191b1c;--c-s3:#232527;--c-border:#ffffff12;--c-border-md:#ffffff21;--c-border-strong:#ffffff38;--c-text:#f0f0ee;--c-text-2:#f0f0ee8c;--c-text-3:#f0f0ee4d;--c-accent:#c8ff2a;--c-accent-rgb:200,255,42;--c-accent-dim:#c8ff2a1a;--c-accent-text:#080909;--c-error:#ff6060;--c-success:#3effa8;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:20px;--r-full:999px;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--s-12:48px;--s-16:64px;--nav-width:224px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100vw;overflow-x:hidden}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--c-bg);color:var(--c-text);font-family:var(--font-geist-mono),"SFMono-Regular",Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:14px;line-height:1.6}a{color:inherit;text-decoration:none}button{font-family:inherit;font-size:inherit;cursor:pointer}img{max-width:100%;display:block}.app-shell{background:var(--c-bg);height:100vh;display:flex;overflow:hidden}.app-main{min-height:0;padding:40px 48px 40px calc(var(--nav-width) + 56px);flex-direction:column;flex:1;display:flex;overflow:hidden}.btn{border-radius:var(--r-full);letter-spacing:.04em;cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-family:inherit;font-size:.85rem;font-weight:500;text-decoration:none;transition:transform .15s,opacity .15s,box-shadow .15s,background .15s,border-color .15s;display:inline-flex}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--c-accent);color:var(--c-accent-text);border-color:#0000;font-weight:700}.btn-primary:hover:not(:disabled){box-shadow:0 0 18px rgba(var(--c-accent-rgb),.35);transform:translateY(-1px)}.btn-ghost{border-color:var(--c-border-md);color:var(--c-text);background:#ffffff0f}.btn-ghost:hover:not(:disabled){border-color:var(--c-border-strong);background:#ffffff1a}.btn-ghost-sm{border-color:var(--c-border-md);color:var(--c-text);background:#ffffff0f;padding:7px 14px;font-size:.78rem}.btn-ghost-sm:hover:not(:disabled){border-color:var(--c-border-strong);background:#ffffff1a}.btn-outline{border-color:var(--c-border-md);color:var(--c-text-2);background:0 0}.btn-outline:hover:not(:disabled){border-color:var(--c-border-strong);color:var(--c-text)}.btn-accent-outline{background:var(--c-accent-dim);border-color:rgba(var(--c-accent-rgb),.4);color:var(--c-accent)}.btn-accent-outline:hover:not(:disabled){background:rgba(var(--c-accent-rgb),.16);box-shadow:0 0 12px rgba(var(--c-accent-rgb),.2)}.badge{border-radius:var(--r-full);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:4px;padding:3px 10px;font-size:.72rem;font-weight:600;display:inline-flex}.badge-accent{background:var(--c-accent-dim);color:var(--c-accent);border:1px solid rgba(var(--c-accent-rgb),.25)}.badge-muted{color:var(--c-text-2);border:1px solid var(--c-border);background:#ffffff0f}.card{background:var(--c-s1);border:1px solid var(--c-border);border-radius:var(--r-lg)}.card-elevated{background:var(--c-s2);border:1px solid var(--c-border-md);border-radius:var(--r-xl);box-shadow:0 24px 64px #0000008c}.state-box{padding:var(--s-8)var(--s-6);border-radius:var(--r-lg);border:1px solid var(--c-border);color:var(--c-text-2);letter-spacing:.02em;text-align:center;background:#ffffff08;font-size:.88rem}.state-empty{border-radius:var(--r-lg);border:1px dashed var(--c-border-md);color:var(--c-text-3);letter-spacing:.02em;text-align:center;flex-direction:column;align-items:center;gap:16px;padding:48px 32px;font-size:.88rem;display:flex}.state-error{color:var(--c-error);letter-spacing:.02em;text-align:center;padding:10px 0;font-size:.82rem}.side-nav{width:var(--nav-width);background:var(--c-s1);border-right:1px solid var(--c-border);z-index:100;flex-direction:column;padding:24px 16px;display:flex;position:fixed;top:0;bottom:0;left:0}.side-nav__brand{border-bottom:1px solid var(--c-border);margin-bottom:20px;padding:0 8px 24px}.side-nav__brand-name{letter-spacing:.14em;text-transform:uppercase;color:var(--c-accent);font-size:1rem;font-weight:700;line-height:1;display:block}.side-nav__brand-sub{letter-spacing:.1em;color:var(--c-text-3);text-transform:uppercase;margin-top:4px;font-size:.65rem;display:block}.side-nav__links{flex-direction:column;flex:1;gap:2px;display:flex}.side-nav__link{border-radius:var(--r-md);color:var(--c-text-2);letter-spacing:.04em;border:1px solid #0000;align-items:center;gap:10px;padding:10px 12px;font-size:.82rem;text-decoration:none;transition:color .15s,background .15s;display:flex;position:relative}.side-nav__link:hover{color:var(--c-text);background:#ffffff0d}.side-nav__link.is-active{color:var(--c-text);border-color:var(--c-border);background:#ffffff12}.side-nav__link.is-active:before{content:"";background:var(--c-accent);border-radius:0 2px 2px 0;width:3px;height:60%;position:absolute;top:50%;left:-2px;transform:translateY(-50%)}.side-nav__link-icon{opacity:.7;flex-shrink:0;width:16px;height:16px}.side-nav__link.is-active .side-nav__link-icon{opacity:1}.side-nav__profile{border-top:1px solid var(--c-border);margin-top:16px;padding-top:16px;position:relative}.profile-btn{border-radius:var(--r-md);width:100%;color:var(--c-text-2);cursor:pointer;letter-spacing:.04em;background:0 0;border:1px solid #0000;align-items:center;gap:10px;padding:10px 12px;font-family:inherit;font-size:.82rem;transition:color .15s,background .15s;display:flex}.profile-btn:hover{color:var(--c-text);background:#ffffff0d}.profile-btn__avatar{border-radius:var(--r-full);border:1px solid var(--c-border-md);background:#ffffff1a;flex-shrink:0;place-items:center;width:28px;height:28px;display:grid}.profile-btn__avatar svg{stroke:currentColor;fill:none;stroke-width:1.6px;width:14px;height:14px}.profile-btn__label{text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.profile-btn__chevron{opacity:.4;stroke:currentColor;fill:none;stroke-width:2px;flex-shrink:0;width:12px;height:12px;transition:transform .2s}.profile-btn__chevron.is-open{transform:rotate(180deg)}.profile-dropdown{background:var(--c-s2);border:1px solid var(--c-border-md);border-radius:var(--r-md);z-index:10;padding:6px;position:absolute;bottom:calc(100% + 8px);left:0;right:0;box-shadow:0 16px 40px #00000080}.profile-action{width:100%;color:var(--c-text-2);border-radius:var(--r-sm);text-align:left;cursor:pointer;letter-spacing:.04em;background:0 0;border:1px solid #0000;padding:8px 10px;font-family:inherit;font-size:.82rem;transition:background .15s,color .15s,border-color .15s}.profile-action:hover{color:var(--c-text);border-color:var(--c-border);background:#ffffff14}.auth-guard{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;background:#000000b8;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.auth-guard__card{background:var(--c-s2);border:1px solid var(--c-border-md);border-radius:var(--r-xl);text-align:center;flex-direction:column;align-items:center;gap:20px;width:100%;max-width:360px;padding:32px 36px;display:flex;position:relative;box-shadow:0 30px 80px #0009}.auth-guard__icon{border-radius:var(--r-full);background:var(--c-accent-dim);border:1px solid rgba(var(--c-accent-rgb),.2);place-items:center;width:44px;height:44px;display:grid}.auth-guard__icon svg{width:20px;height:20px;stroke:var(--c-accent);fill:none;stroke-width:1.6px}.auth-guard__title{letter-spacing:.04em;color:var(--c-text);font-size:1rem;font-weight:700}.auth-guard__subtitle{color:var(--c-text-2);letter-spacing:.02em;margin-top:-8px;font-size:.8rem}.auth-guard__close{border:1px solid var(--c-border);color:var(--c-text-2);border-radius:var(--r-full);cursor:pointer;background:#ffffff12;place-items:center;width:26px;height:26px;font-size:.95rem;line-height:1;transition:background .15s,color .15s;display:grid;position:absolute;top:12px;right:12px}.auth-guard__close:hover{color:var(--c-text);background:#ffffff1f}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:150;background:#000000b8;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.modal-box{background:var(--c-s1);border:1px solid var(--c-border-md);border-radius:var(--r-xl);width:min(90vw,700px);padding:32px;position:relative;box-shadow:0 40px 100px #000000b3}.modal-close{border:1px solid var(--c-border);color:var(--c-text-2);border-radius:var(--r-full);cursor:pointer;background:#ffffff12;place-items:center;width:28px;height:28px;font-size:1rem;line-height:1;transition:background .15s,color .15s,transform .15s;display:grid;position:absolute;top:14px;right:14px}.modal-close:hover{color:var(--c-text);background:#ffffff1f;transform:rotate(90deg)}.carousel-wrap{flex-direction:column;align-items:center;gap:16px;width:100%;display:flex}.carousel-nav-row{grid-template-columns:36px 1fr 36px;align-items:center;gap:12px;width:100%;display:grid}.carousel-nav-btn{border:1px solid var(--c-border-md);border-radius:var(--r-full);cursor:pointer;width:36px;height:36px;color:var(--c-text);background:#ffffff0f;place-items:center;font-size:1.1rem;transition:background .15s,border-color .15s,transform .15s;display:grid}.carousel-nav-btn:hover{border-color:var(--c-border-strong);background:#ffffff1a;transform:scale(1.05)}.carousel-text-wrap{text-align:center;justify-content:center;align-items:center;min-height:60px;display:flex;position:relative;overflow:hidden}.carousel-text{color:var(--c-text);text-align:center;padding:0 8px;font-size:1.05rem;line-height:1.65}.carousel-count{letter-spacing:.06em;color:var(--c-text-3);text-transform:uppercase;font-size:.72rem}.page-transition-wrap{flex-direction:column;flex:1;min-height:0;display:flex}.home-page{flex:1;justify-content:center;align-items:center;min-height:0;padding:48px 24px 80px;display:flex;position:relative;overflow:hidden auto}.home-bg-grid{pointer-events:none;background-image:linear-gradient(#ffffff08 1px,#0000 1px),linear-gradient(90deg,#ffffff08 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 70%,#000 40%,#0000 100%);mask-image:radial-gradient(70% 70%,#000 40%,#0000 100%)}.home-glow{background:radial-gradient(circle,rgba(var(--c-accent-rgb),.08)0%,transparent 70%);pointer-events:none;border-radius:50%;width:600px;height:600px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.home-inner{text-align:center;flex-direction:column;align-items:center;gap:28px;max-width:640px;display:flex;position:relative}.home-eyebrow{border-radius:var(--r-full);background:var(--c-accent-dim);border:1px solid rgba(var(--c-accent-rgb),.2);letter-spacing:.12em;text-transform:uppercase;color:var(--c-accent);align-items:center;gap:8px;padding:5px 14px;font-size:.7rem;font-weight:600;display:inline-flex}.home-eyebrow-dot{background:var(--c-accent);border-radius:50%;width:5px;height:5px;animation:2s ease-in-out infinite pulse-dot}.home-hero{letter-spacing:-.02em;color:var(--c-text);font-size:clamp(3rem,10vw,6.5rem);font-weight:700;line-height:.95}.home-hero-accent{color:var(--c-accent);display:block}.home-tagline{color:var(--c-text-2);letter-spacing:.04em;max-width:420px;font-size:.88rem;line-height:1.7}.home-cta-row{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.home-decision{flex-direction:column;align-items:center;gap:16px;display:flex}.home-decision__label{letter-spacing:.1em;text-transform:uppercase;color:var(--c-text-3);font-size:.72rem}.home-decision__btns{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.home-signout{color:var(--c-text-3);letter-spacing:.04em;cursor:pointer;background:0 0;border:none;margin-top:-4px;font-family:inherit;font-size:.72rem;transition:color .15s}.home-signout:hover{color:var(--c-text-2)}.captions-page{flex-direction:column;flex:1;gap:20px;max-width:920px;min-height:0;display:flex;overflow:hidden}.captions-scroll{scrollbar-width:thin;scrollbar-color:#ffffff1f transparent;flex-direction:column;flex:1;gap:8px;min-height:0;padding-bottom:24px;padding-right:4px;display:flex;overflow:hidden auto}.captions-scroll::-webkit-scrollbar{width:5px}.captions-scroll::-webkit-scrollbar-track{background:0 0}.captions-scroll::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:3px}.captions-scroll::-webkit-scrollbar-thumb:hover{background:#ffffff38}.page-header{flex-direction:column;gap:6px;display:flex}.page-header--row{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:12px}.page-header--row>div{flex-direction:column;gap:6px;display:flex}.page-title{letter-spacing:-.01em;color:var(--c-text);font-size:clamp(1.4rem,2.5vw,2rem);font-weight:700}.page-subtitle{letter-spacing:.04em;color:var(--c-text-3);font-size:.78rem}.sort-bar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.sort-label{letter-spacing:.1em;text-transform:uppercase;color:var(--c-text-3);flex-shrink:0;font-size:.72rem}.sort-pills{flex-wrap:wrap;gap:6px;display:flex}.sort-pill{border-radius:var(--r-full);border:1px solid var(--c-border-md);color:var(--c-text-2);letter-spacing:.04em;cursor:pointer;background:#ffffff0a;padding:6px 14px;font-family:inherit;font-size:.75rem;transition:all .15s}.sort-pill:hover{color:var(--c-text);border-color:var(--c-border-strong);background:#ffffff14}.sort-pill.is-active{background:var(--c-accent-dim);color:var(--c-accent);border-color:rgba(var(--c-accent-rgb),.3);font-weight:600}.captions-list{flex-direction:column;gap:8px;display:flex}.caption-card{border-radius:var(--r-lg);border:1px solid var(--c-border);background:var(--c-s1);cursor:pointer;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px 18px;transition:transform .2s,box-shadow .2s,border-color .2s,background .2s;display:grid;position:relative}.caption-card:before{content:"";border-radius:var(--r-lg);background:linear-gradient(135deg,hsla(var(--card-hue,60),65%,52%,.3),hsla(var(--card-hue,60),65%,52%,.08));-webkit-mask-composite:xor;pointer-events:none;padding:1px;transition:opacity .2s;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.caption-card:hover{background:var(--c-s2);border-color:var(--c-border-md);box-shadow:0 12px 32px #0006,0 0 0 1px hsla(var(--card-hue,60),65%,52%,.2);transform:translateY(-2px)}.caption-thumb{border-radius:var(--r-md);background:var(--c-s3);flex-shrink:0;justify-content:center;align-items:center;width:72px;height:72px;display:flex;overflow:hidden}.caption-thumb img{object-fit:cover;width:100%;height:100%}.caption-thumb-empty{color:var(--c-text-3);letter-spacing:.04em;font-size:.65rem}.caption-body{flex-direction:column;gap:4px;min-width:0;display:flex}.caption-text{color:var(--c-text);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.92rem;line-height:1.55;display:-webkit-box;overflow:hidden}.caption-meta{color:var(--c-text-3);letter-spacing:.04em;font-size:.7rem}.caption-likes{color:var(--c-text-2);white-space:nowrap;flex-shrink:0;align-items:center;gap:5px;font-size:.82rem;font-weight:600;display:flex}.caption-likes svg{stroke:currentColor;fill:none;stroke-width:1.8px;width:13px;height:13px}.captions-footer{justify-content:center;padding-top:8px;display:flex}.image-modal{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:150;background:#000000c7;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.image-modal__box{background:var(--c-s1);border:1px solid var(--c-border-md);border-radius:var(--r-xl);flex-direction:column;align-items:center;gap:20px;width:min(90vw,680px);padding:28px;display:flex;position:relative;box-shadow:0 40px 100px #000000b3}.image-modal__img{object-fit:contain;border-radius:var(--r-lg);background:var(--c-s3);width:100%;max-height:52vh}.image-modal__img-empty{border-radius:var(--r-lg);border:1px dashed var(--c-border-md);width:100%;height:240px;color:var(--c-text-3);background:#ffffff0a;place-items:center;font-size:.82rem;display:grid}.image-modal__caption{text-align:center;color:var(--c-text);max-width:520px;font-size:1.1rem;line-height:1.65}.image-modal__likes{letter-spacing:.06em;color:var(--c-text-3);text-transform:uppercase;align-items:center;gap:5px;font-size:.72rem;display:flex}.image-modal__likes svg{stroke:currentColor;fill:none;stroke-width:1.8px;width:12px;height:12px}.image-modal__close{border:1px solid var(--c-border);color:var(--c-text-2);border-radius:var(--r-full);cursor:pointer;background:#ffffff12;place-items:center;width:28px;height:28px;font-size:1rem;line-height:1;transition:background .15s,color .15s,transform .15s;display:grid;position:absolute;top:12px;right:12px}.image-modal__close:hover{color:var(--c-text);background:#ffffff1f;transform:rotate(90deg)}.gen-page{flex:1;justify-content:center;align-items:center;min-height:0;padding:0 24px 60px;display:flex}.gen-hero{text-align:center;flex-direction:column;align-items:center;gap:20px;max-width:560px;display:flex}.gen-hero__label{letter-spacing:.12em;text-transform:uppercase;color:var(--c-text-3);font-size:.72rem}.gen-hero__title{letter-spacing:-.01em;color:var(--c-text);font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:700;line-height:1.15}.gen-hero__body{color:var(--c-text-2);letter-spacing:.02em;font-size:.85rem;line-height:1.7}.gen-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:150;background:#000000bf;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.gen-modal{background:var(--c-s1);border:1px solid var(--c-border-md);border-radius:var(--r-xl);width:min(88vw,680px);padding:32px;position:relative;box-shadow:0 40px 100px #000000b3}.gen-modal__header{flex-direction:column;gap:4px;margin-bottom:24px;display:flex}.gen-modal__title{letter-spacing:.02em;color:var(--c-text);font-size:1.15rem;font-weight:700}.gen-modal__subtitle{color:var(--c-text-3);letter-spacing:.02em;font-size:.78rem}.gen-dropzone{border:1px dashed var(--c-border-strong);border-radius:var(--r-lg);cursor:default;background:#ffffff06;flex-direction:column;align-items:center;gap:14px;padding:40px 28px;transition:background .2s,border-color .2s,transform .2s;display:flex}.gen-dropzone.is-drag-active{border-color:var(--c-accent);background:var(--c-accent-dim);transform:scale(1.01)}.gen-dropzone__icon{border-radius:var(--r-md);border:1px solid var(--c-border-md);background:#ffffff0f;place-items:center;width:44px;height:44px;margin-bottom:4px;display:grid}.gen-dropzone__icon svg{width:20px;height:20px;stroke:var(--c-text-2);fill:none;stroke-width:1.5px}.gen-dropzone.is-drag-active .gen-dropzone__icon{background:var(--c-accent-dim);border-color:rgba(var(--c-accent-rgb),.3)}.gen-dropzone.is-drag-active .gen-dropzone__icon svg{stroke:var(--c-accent)}.gen-dropzone__label{color:var(--c-text-2);letter-spacing:.02em;font-size:.9rem}.gen-dropzone__or{color:var(--c-text-3);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem}.gen-supported{color:var(--c-text-3);letter-spacing:.04em;text-align:center;font-size:.72rem}.gen-preview{border:1px solid var(--c-border-md);border-radius:var(--r-md);background:#ffffff0a;align-items:center;gap:12px;padding:12px 14px;display:flex}.gen-preview__img{border-radius:var(--r-sm);object-fit:cover;background:var(--c-s3);flex-shrink:0;width:48px;height:48px}.gen-preview__info{flex:1;min-width:0}.gen-preview__name{color:var(--c-text);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.gen-preview__type{color:var(--c-text-3);letter-spacing:.04em;margin-top:2px;font-size:.7rem}.gen-preview__clear{border:1px solid var(--c-border);border-radius:var(--r-full);color:var(--c-text-3);cursor:pointer;background:0 0;flex-shrink:0;place-items:center;width:22px;height:22px;font-size:.82rem;transition:color .15s,border-color .15s;display:grid}.gen-preview__clear:hover{color:var(--c-text);border-color:var(--c-border-strong)}.gen-steps{flex-direction:column;gap:2px;display:flex}.gen-step{border-radius:var(--r-md);border:1px solid #0000;align-items:center;gap:14px;padding:12px 14px;transition:all .3s;display:flex}.gen-step--pending{opacity:.35}.gen-step--active{border-color:var(--c-border);opacity:1;background:#ffffff0a}.gen-step--done{opacity:.7}.gen-step__dot{border-radius:var(--r-full);border:1px solid var(--c-border-md);width:28px;height:28px;color:var(--c-text-3);background:#ffffff0a;flex-shrink:0;place-items:center;font-size:.7rem;transition:all .3s;display:grid}.gen-step--active .gen-step__dot{background:var(--c-accent-dim);border-color:rgba(var(--c-accent-rgb),.4);color:var(--c-accent);animation:1.5s ease-in-out infinite step-pulse}.gen-step--done .gen-step__dot{color:var(--c-success);background:#3effa81a;border-color:#3effa84d}.gen-step__label{letter-spacing:.02em;color:var(--c-text-2);font-size:.85rem}.gen-step--active .gen-step__label{color:var(--c-text);font-weight:600}.gen-step__status{letter-spacing:.06em;text-transform:uppercase;margin-left:auto;font-size:.72rem}.gen-step--active .gen-step__status{color:var(--c-accent)}.gen-step--done .gen-step__status{color:var(--c-success)}.gen-note{color:var(--c-text-3);letter-spacing:.02em;text-align:center;padding:8px 0;font-size:.78rem;line-height:1.6}.gen-results-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.gen-results{flex-direction:column;align-items:center;gap:20px;display:flex}.gen-result-img{object-fit:contain;border-radius:var(--r-lg);background:var(--c-s3);border:1px solid var(--c-border);width:100%;max-height:42vh}.gen-actions{flex-wrap:wrap;justify-content:center;gap:10px;padding-top:4px;display:flex}.ratings-page{flex:1;justify-content:center;align-items:center;min-height:0;padding:0 24px 60px;display:flex}.ratings-hero{text-align:center;flex-direction:column;align-items:center;gap:20px;max-width:480px;display:flex}.ratings-hero__label{letter-spacing:.12em;text-transform:uppercase;color:var(--c-text-3);font-size:.72rem}.ratings-hero__title{letter-spacing:-.01em;color:var(--c-text);font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:700;line-height:1.15}.ratings-hero__body{color:var(--c-text-2);letter-spacing:.02em;font-size:.85rem;line-height:1.7}.ratings-next-cta{border-top:1px solid var(--c-border);flex-direction:column;align-items:center;gap:10px;width:100%;padding-top:12px;display:flex}.ratings-next-cta__text{color:var(--c-text-3);letter-spacing:.02em;font-size:.75rem}.ratings-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:150;background:#000c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.ratings-modal{background:var(--c-s1);border:1px solid var(--c-border-md);border-radius:var(--r-xl);flex-direction:column;width:min(88vw,600px);max-height:min(90vh,720px);display:flex;overflow:hidden;box-shadow:0 40px 100px #000000b3}.ratings-card{scrollbar-width:none;flex-direction:column;flex:1;align-items:center;gap:16px;min-height:0;padding:24px 24px 0;display:flex;position:relative;overflow:hidden auto}.ratings-card::-webkit-scrollbar{display:none}.ratings-card-inner{flex-direction:column;align-items:center;gap:18px;width:100%;display:flex}.ratings-img{object-fit:contain;border-radius:var(--r-lg);background:var(--c-s3);width:100%;max-height:38vh}.ratings-img-empty{border-radius:var(--r-lg);border:1px dashed var(--c-border-md);width:100%;height:200px;color:var(--c-text-3);background:#ffffff0a;place-items:center;font-size:.82rem;display:grid}.ratings-caption{text-align:center;color:var(--c-text);max-width:100%;padding:0 8px;font-size:1.05rem;line-height:1.65}.ratings-batch{letter-spacing:.1em;text-transform:uppercase;color:var(--c-text-3);font-size:.7rem}.ratings-batch-pips{justify-content:center;align-items:center;gap:4px;margin-top:6px;display:flex}.ratings-batch-pip{background:#ffffff1f;border-radius:2px;width:20px;height:3px;transition:background .3s}.ratings-batch-pip.is-filled{background:var(--c-accent)}.vote-row{border-top:1px solid var(--c-border);background:#ffffff05;grid-template-columns:1fr 1fr;gap:12px;padding:20px 24px 24px;display:grid}.vote-btn{border-radius:var(--r-lg);border:1px solid var(--c-border-md);color:var(--c-text-2);cursor:pointer;letter-spacing:.04em;background:#ffffff0a;justify-content:center;align-items:center;gap:10px;padding:14px;font-family:inherit;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.vote-btn svg{stroke:currentColor;fill:none;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:22px;height:22px}.vote-btn:hover:not(:disabled){transform:translateY(-2px)}.vote-btn--down:hover:not(:disabled){color:#ff6060;background:#ff60601a;border-color:#ff60604d;box-shadow:0 8px 20px #ff606026}.vote-btn--up:hover:not(:disabled){background:rgba(var(--c-accent-rgb),.1);border-color:rgba(var(--c-accent-rgb),.3);color:var(--c-accent);box-shadow:0 8px 20px rgba(var(--c-accent-rgb),.15)}.vote-btn:disabled{opacity:.4;cursor:not-allowed}.ratings-state{color:var(--c-text-2);letter-spacing:.02em;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:300px;padding:60px 24px;font-size:.88rem;display:flex}.ratings-spinner{border:2px solid var(--c-border-md);border-top-color:var(--c-accent);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}.ratings-close{border:1px solid var(--c-border);color:var(--c-text-2);border-radius:var(--r-full);cursor:pointer;z-index:5;background:#ffffff12;place-items:center;width:28px;height:28px;font-size:1rem;line-height:1;transition:background .15s,color .15s,transform .15s;display:grid;position:absolute;top:14px;right:14px}.ratings-close:hover{color:var(--c-text);background:#ffffff1f;transform:rotate(90deg)}.yourcaps-page{flex-direction:column;flex:1;max-width:1000px;min-height:0;display:flex;overflow:hidden}.yourcaps-scroll{scrollbar-width:thin;scrollbar-color:#ffffff1f transparent;flex:1;min-height:0;padding-bottom:24px;padding-right:4px;overflow:hidden auto}.yourcaps-scroll::-webkit-scrollbar{width:5px}.yourcaps-scroll::-webkit-scrollbar-track{background:0 0}.yourcaps-scroll::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:3px}.yourcaps-scroll::-webkit-scrollbar-thumb:hover{background:#ffffff38}.yourcaps-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;margin-top:28px;display:grid}.yourcaps-thumb{cursor:pointer;border-radius:var(--r-lg);aspect-ratio:1;background:0 0;border:none;padding:0;display:block;position:relative;overflow:hidden}.yourcaps-thumb img{object-fit:cover;border-radius:var(--r-lg);border:1px solid var(--c-border);width:100%;height:100%;transition:transform .3s,filter .3s;display:block}.yourcaps-thumb__overlay{border-radius:var(--r-lg);opacity:0;background:linear-gradient(#0000 40%,#000000bf 100%);align-items:flex-end;padding:12px;transition:opacity .25s;display:flex;position:absolute;inset:0}.yourcaps-thumb:hover .yourcaps-thumb__overlay{opacity:1}.yourcaps-thumb:hover img{transform:scale(1.04)}.yourcaps-thumb__hint{color:#ffffffd9;letter-spacing:.04em;align-items:center;gap:5px;font-size:.72rem;display:flex}.yourcaps-thumb__hint svg{stroke:currentColor;fill:none;stroke-width:2px;width:11px;height:11px}.yourcaps-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:150;background:#000000c7;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.yourcaps-modal{background:var(--c-s1);border:1px solid var(--c-border-md);border-radius:var(--r-xl);flex-direction:column;align-items:center;gap:20px;width:min(90vw,640px);padding:32px;display:flex;position:relative;box-shadow:0 40px 100px #000000b3}.yourcaps-img{object-fit:contain;border-radius:var(--r-lg);background:var(--c-s3);width:100%;max-height:48vh}.highlights-page{flex-direction:column;flex:1;gap:20px;min-height:0;display:flex;overflow:hidden}.highlights-scroll{scrollbar-width:thin;scrollbar-color:#ffffff1f transparent;flex:1;min-height:0;padding-bottom:24px;padding-right:4px;overflow:hidden auto}.highlights-scroll::-webkit-scrollbar{width:5px}.highlights-scroll::-webkit-scrollbar-track{background:0 0}.highlights-scroll::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:3px}.highlights-scroll::-webkit-scrollbar-thumb:hover{background:#ffffff38}.highlights-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.highlight-card{background:var(--c-s1);border:1px solid var(--c-border);border-radius:var(--r-lg);flex-direction:column;transition:border-color .2s,box-shadow .2s;display:flex;overflow:hidden}.highlight-card--rank-1{border-color:#ffd70038;box-shadow:inset 0 0 0 1px #ffd7000f}.highlight-card--rank-2{border-color:#c0c0c033;box-shadow:inset 0 0 0 1px #c0c0c00d}.highlight-card--rank-3{border-color:#cd7f3233;box-shadow:inset 0 0 0 1px #cd7f320d}.highlight-card__media{background:var(--c-s1);border-bottom:1px solid var(--c-border);justify-content:center;align-items:center;width:100%;padding:10px;display:flex}.highlight-card__img{border-radius:var(--r-sm);width:auto;max-width:100%;height:auto;max-height:180px;display:block}.highlight-card__img-empty{width:100%;height:80px;color:var(--c-text-3);letter-spacing:.04em;place-items:center;font-size:.78rem;display:grid}.highlight-card__body{flex-direction:column;flex:1;gap:8px;padding:12px 14px 14px;display:flex}.highlight-card__meta-row{justify-content:space-between;align-items:center;display:flex}.highlight-card__rank-num{letter-spacing:.1em;text-transform:uppercase;color:var(--c-text-3);font-size:.68rem;font-weight:600}.highlight-card__likes{color:var(--c-text-2);align-items:center;gap:5px;font-size:.8rem;font-weight:600;display:flex}.highlight-card__caption{color:var(--c-text);flex:1;font-size:.83rem;line-height:1.55}.rank-badge{border-radius:var(--r-full);letter-spacing:.08em;text-transform:uppercase;align-self:flex-start;align-items:center;gap:5px;padding:4px 11px;font-size:.68rem;font-weight:700;display:inline-flex}.rank-badge--1{color:gold;background:#ffd7001a;border:1px solid #ffd7004d}.rank-badge--2{color:#c8c8c8;background:#c0c0c014;border:1px solid #c0c0c040}.rank-badge--3{color:#cd8b3a;background:#cd7f321a;border:1px solid #cd7f324d}.highlights-empty-hint{color:var(--c-text-3);text-align:center;max-width:280px;margin-top:-4px;font-size:.78rem;line-height:1.6}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.7)}}@keyframes step-pulse{0%,to{box-shadow:0 0 0 0 rgba(var(--c-accent-rgb),.3)}50%{box-shadow:0 0 0 5px rgba(var(--c-accent-rgb),0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width:860px){.app-shell{flex-direction:column;height:100dvh}.app-main{flex:1;min-height:0;padding:20px 16px}.side-nav{border-right:none;border-bottom:1px solid var(--c-border);flex-direction:row;flex-shrink:0;align-items:center;gap:8px;width:100%;padding:10px 14px;position:static}.side-nav__brand{border-bottom:none;border-right:1px solid var(--c-border);margin-bottom:0;margin-right:8px;padding:0 12px 0 0}.side-nav__brand-sub{display:none}.side-nav__links{flex-flow:row;flex:1;gap:2px;overflow-x:auto}.side-nav__link.is-active:before{display:none}.side-nav__link{white-space:nowrap;flex-shrink:0}.side-nav__profile{border-top:none;border-left:1px solid var(--c-border);margin-top:0;margin-left:8px;padding-top:0;padding-left:12px}.profile-btn__label,.profile-btn__chevron{display:none}.profile-dropdown{inset:calc(100% + 8px) 0 auto auto}.vote-row{grid-template-columns:1fr 1fr}.captions-page,.yourcaps-page{max-width:100%}}@media (max-width:480px){.home-hero{font-size:2.8rem}.modal-box,.gen-modal,.ratings-modal,.yourcaps-modal,.image-modal__box{padding:20px 18px}.vote-row{gap:8px;padding:16px 18px 20px}.vote-btn{gap:7px;padding:12px;font-size:.78rem}.yourcaps-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.sort-bar{flex-direction:column;align-items:flex-start}}
