@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2)format("woff2-variations");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:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2)format("woff2-variations");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:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/figtree-latin-ext-wght-normal-DCwSJGxG.woff2)format("woff2-variations");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:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/figtree-latin-wght-normal-D_ZTVpCC.woff2)format("woff2-variations");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}:root{--bg:#f4efe4;--bg-2:#ebe4d5;--surface:#fffcf5;--surface-2:#efe8da;--surface-3:#e4dccb;--text:#17141d;--muted:#6e6878;--border:#d9d0bf;--ink:#17141d;--accent:#e2382b;--accent-2:#f2b705;--accent-text:#fffaf2;--accent-soft:color-mix(in srgb, var(--accent) 12%, transparent);--danger:#c4281c;--ok:#138a5b;--warn-bg:color-mix(in srgb, #f2b705 22%, var(--surface));--shadow-ink:3px 3px 0 var(--ink);--shadow-soft:0 10px 30px -12px #28140a59;--tone:#17141d17;--radius:16px;--radius-sm:10px;--ease:cubic-bezier(.2, .8, .2, 1);--spring:cubic-bezier(.34, 1.56, .64, 1);--font-display:"Bricolage Grotesque Variable", "Figtree Variable", system-ui, sans-serif;--font-body:"Figtree Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-family:var(--font-body);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0f0d13;--bg-2:#15121b;--surface:#1a1720;--surface-2:#242029;--surface-3:#2e2935;--text:#f3ede2;--muted:#a39cab;--border:#322d3a;--ink:#000;--accent:#ff5040;--accent-2:#ffcf3a;--accent-text:#1a0805;--danger:#ff6b5e;--ok:#41d99c;--warn-bg:color-mix(in srgb, #ffcf3a 14%, var(--surface));--shadow-ink:3px 3px 0 #000;--shadow-soft:0 14px 40px -14px #000000bf;--tone:#f3ede20f}}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0}body{min-height:100dvh;line-height:1.45;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block}button{font:inherit;color:inherit}h1,h2,h3,.title,.display{font-family:var(--font-display);letter-spacing:-.02em}::selection{background:var(--accent);color:var(--accent-text)}body:before{content:"";z-index:-2;pointer-events:none;background:radial-gradient(60% 50% at 100% 0%, color-mix(in srgb, var(--accent) 14%, transparent), transparent 70%), radial-gradient(50% 40% at 0% 100%, color-mix(in srgb, var(--accent-2) 10%, transparent), transparent 70%);position:fixed;inset:0}body:after{content:"";z-index:-1;pointer-events:none;background-image:radial-gradient(var(--tone) 1.1px, transparent 1.3px);background-size:9px 9px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(160deg,#000 0%,#0000 38% 62%,#000 100%);mask-image:linear-gradient(160deg,#000 0%,#0000 38% 62%,#000 100%)}.fx-no-texture body:after{display:none}.small{font-size:.84rem}.muted{color:var(--muted)}.error{color:var(--danger)}.ok{color:var(--ok)}.clamp1,.clamp2,.clamp3,.clamp6{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.clamp1{-webkit-line-clamp:1}.clamp2{-webkit-line-clamp:2}.clamp3{-webkit-line-clamp:3}.clamp6{-webkit-line-clamp:6}.page{max-width:960px;padding:calc(env(safe-area-inset-top) + 14px) 16px calc(env(safe-area-inset-bottom) + 110px);flex-direction:column;gap:18px;margin:0 auto;display:flex}.has-header .page{padding-top:16px}.route{animation:route-in .42s var(--ease) both}@keyframes route-in{0%{opacity:0;filter:blur(4px);transform:translateY(14px)scale(.992)}to{opacity:1;filter:none;transform:none}}.fx-no-transitions .route{animation:none}.topbar{justify-content:space-between;align-items:center;gap:12px;min-height:48px;display:flex}.topbar h1,.title{margin:0;font-size:clamp(1.6rem,4.6vw,2.2rem);font-weight:800;line-height:1.05}.title{position:relative}.topbar h1:after,.title:after{content:"";background:linear-gradient(90deg, var(--accent), color-mix(in srgb, var(--accent) 40%, transparent));border-radius:6px;width:42px;height:6px;margin-top:6px;display:block;transform:skew(-18deg)}.back{color:var(--muted);min-height:44px;transition:color .2s, transform .2s var(--ease);align-items:center;gap:4px;font-weight:600;display:inline-flex}.back:hover{color:var(--text);transform:translate(-2px)}.intro{color:var(--muted);max-width:62ch;margin:-6px 0 0}.version{text-align:center;margin:0}.btn{border:1.5px solid var(--border);background:var(--surface);min-height:46px;color:var(--text);letter-spacing:.005em;cursor:pointer;white-space:nowrap;transition:transform .18s var(--ease), box-shadow .18s var(--ease), background .2s, border-color .2s, color .2s;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:650;display:inline-flex;position:relative;overflow:hidden}.btn:hover:not(:disabled){border-color:color-mix(in srgb, var(--text) 30%, var(--border));transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(1px)scale(.98)}.btn:disabled{opacity:.45;cursor:default}.btn-primary{background:var(--accent);color:var(--accent-text);border:2px solid var(--ink);box-shadow:var(--shadow-ink);font-weight:750}.btn-primary:hover:not(:disabled){box-shadow:5px 5px 0 var(--ink);border-color:var(--ink);transform:translate(-1px,-2px)}.btn-primary:active:not(:disabled){box-shadow:0 0 0 var(--ink);transform:translate(2px,2px)}.btn-primary:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 35%,#ffffff61 50%,#0000 65%);position:absolute;inset:-2px;transform:translate(-120%)}.btn-primary:hover:not(:disabled):after{transition:transform .7s var(--ease);transform:translate(120%)}.btn-ghost{color:var(--muted);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){color:var(--text);background:var(--surface-2);border-color:#0000}.btn-small{border-radius:10px;min-height:38px;padding:0 13px;font-size:.86rem}.btn-small.btn-primary{box-shadow:2px 2px 0 var(--ink)}.btn-block{width:100%}.btn-block .spinner{width:16px;height:16px}.icon{cursor:pointer;width:42px;height:42px;color:inherit;transition:background .2s, transform .18s var(--ease), color .2s;background:0 0;border:0;border-radius:12px;place-items:center;display:inline-grid}.icon:hover{background:var(--surface-2)}.icon:active{transform:scale(.92)}.linkbtn{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:0;padding:4px 0;font-weight:650}.linkbtn:hover{text-underline-offset:3px;text-decoration:underline}.link{color:var(--accent);text-underline-offset:3px;font-weight:600;text-decoration:underline}:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:10px}.badge{white-space:nowrap;vertical-align:middle;border-radius:999px;align-items:center;gap:4px;padding:3px 9px;font-size:.75rem;font-weight:650;line-height:1.3;display:inline-flex}.badge-muted{background:var(--surface-2);color:var(--muted)}.badge-ok{background:color-mix(in srgb, var(--ok) 16%, transparent);color:var(--ok)}.badge-warn{background:color-mix(in srgb, var(--accent-2) 22%, transparent);color:color-mix(in srgb, var(--accent-2) 55%, var(--text))}.badge-new{background:var(--accent-2);color:#1b1300;border:1.5px solid var(--ink);letter-spacing:.01em;border-radius:10px;font-weight:800;position:relative}.badge-new:after{content:"";background:var(--accent-2);border-right:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);width:8px;height:8px;position:absolute;bottom:-6px;left:10px;transform:skew(-25deg)rotate(45deg)}.source-tag{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);align-self:flex-start;align-items:center;gap:6px;padding:2px 0;font-size:.68rem;font-weight:800;display:inline-flex}.source-tag:before{content:"";background:currentColor;border-radius:3px;width:14px;height:3px;transform:skew(-20deg)}.serieshead .source-tag{margin-bottom:4px}.panel{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);flex-direction:column;gap:4px;padding:8px 18px 10px;display:flex;position:relative}.panel h2{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.78rem;font-weight:800;font-family:var(--font-body);align-items:center;gap:8px;margin:12px 0 2px;display:flex}.panel h2:before{content:"";background:var(--accent);border-radius:2px;width:8px;height:8px;transform:rotate(45deg)}.panel>p{margin:4px 0 8px}.panel>.btn{align-self:flex-start;margin:4px 0 8px}.panel>.btn-block{align-self:stretch}.linkrow{min-height:60px;color:inherit;transition:background .2s, transform .2s var(--ease);border-radius:12px;align-items:center;gap:12px;margin:0 -6px;padding:8px 6px;display:flex}.linkrow:hover{background:var(--surface-2)}.linkrow:hover svg{color:var(--accent);transform:translate(3px)}.linkrow+.linkrow{border-top:1px dashed var(--border);border-radius:0}.linkrow svg{color:var(--muted);transition:transform .2s var(--ease), color .2s;flex-shrink:0}.toggle{text-align:left;align-items:center;gap:14px;min-height:58px;padding:10px 0;display:flex}.toggle+.toggle,.toggle+.linkrow,.choice+.toggle,.toggle+.choice,.choice+.choice,.choice+.linkrow{border-top:1px dashed var(--border)}.toggle-text{flex-direction:column;flex:1;gap:3px;display:flex}.toggle-text>span:first-child{font-weight:650}.choice{flex-direction:column;gap:10px;padding:12px 0;display:flex}.switch{cursor:pointer;background:var(--surface-3);border:1.5px solid var(--border);border-radius:999px;flex-shrink:0;width:52px;height:30px;padding:0;transition:background .25s,border-color .25s;position:relative}.switch:after{content:"";width:21px;height:21px;transition:transform .35s var(--spring), width .2s;background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 2px 4px #0000004d}.switch:active:after{width:26px}.switch[aria-checked=true]{background:var(--accent);border-color:var(--ink)}.switch[aria-checked=true]:after{transform:translate(22px)}.switch[aria-checked=true]:active:after{transform:translate(17px)}.seg{background:var(--surface-2);border:1px solid var(--border);border-radius:14px;align-items:center;gap:2px;padding:4px;display:inline-flex}.seg>span{padding:0 8px}.seg button{cursor:pointer;min-height:38px;color:var(--muted);background:0 0;border:0;border-radius:10px;padding:8px 12px;font-weight:600;transition:background .2s,color .2s,transform .15s}.seg button:hover{color:var(--text)}.seg button.on{background:var(--surface);color:var(--text);box-shadow:0 1px 0 var(--border), 0 2px 8px -2px #00000040}.seg button:active{transform:scale(.96)}.seg-wrap{flex-wrap:wrap;align-self:flex-start}.seg-select select{background:var(--surface);color:var(--text);font:inherit;border:0;border-radius:9px;min-height:36px;padding:0 10px;font-size:16px;font-weight:600}input,select,textarea{accent-color:var(--accent)}.addlink input,.libsearch input,.auth-form input,.invite input,.invite-limits input,.user-edit input,.selbar-range input{transition:border-color .2s,box-shadow .2s}.auth-form input:focus,.invite input:focus,.invite-limits input:focus,.user-edit input:focus,.selbar-range input:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);outline:none}.warn{background:var(--warn-bg);color:var(--text);border:1.5px solid color-mix(in srgb, var(--accent-2) 45%, var(--border));border-radius:12px;margin:4px 0 10px;padding:12px 14px}.help{background:var(--surface-2);border-radius:12px;margin:4px 0 8px;padding:12px 14px}.help ol,.help ul{margin:6px 0 0;padding-left:20px}.help li+li{margin-top:4px}.loading{color:var(--muted);align-items:center;gap:10px;margin:0;padding:12px 0;display:flex}.spinner{background:conic-gradient(from 0deg, transparent 0 25%, var(--accent) 100%);border-radius:50%;flex-shrink:0;width:18px;height:18px;animation:.7s linear infinite spin;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 3px),#000 calc(100% - 3px));mask:radial-gradient(farthest-side,#0000 calc(100% - 3px),#000 calc(100% - 3px))}@keyframes spin{to{transform:rotate(360deg)}}.bar,.upd-bar,.cardbar{background:var(--surface-3);border-radius:999px;height:6px;position:relative;overflow:hidden}.bar>div,.upd-bar span,.cardbar span{height:100%;transition:width .4s var(--ease);background:linear-gradient(90deg, var(--accent), color-mix(in srgb, var(--accent) 70%, var(--accent-2)));border-radius:999px;display:block}.bar>div,.upd-bar span{background-image:repeating-linear-gradient(-45deg, #ffffff38 0 6px, transparent 6px 12px), linear-gradient(90deg, var(--accent), color-mix(in srgb, var(--accent) 70%, var(--accent-2)));background-size:17px 17px,100% 100%;animation:.8s linear infinite stripes}@keyframes stripes{to{background-position:17px 0,0 0}}.cardbar{height:4px}.bar-thick{height:10px}.appheader{z-index:20;background:color-mix(in srgb, var(--bg) 78%, transparent);-webkit-backdrop-filter:blur(16px)saturate(1.4);border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent);padding-top:env(safe-area-inset-top);position:sticky;top:0}.appheader-inner{align-items:center;gap:12px;max-width:960px;min-height:58px;margin:0 auto;padding:8px 16px;display:flex}.brand{white-space:nowrap;align-items:center;gap:10px;display:inline-flex}.brand-mark{background:var(--accent);width:34px;height:34px;color:var(--accent-text);border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink);font-family:var(--font-display);letter-spacing:-.04em;transition:transform .35s var(--spring);border-radius:10px;flex-shrink:0;place-items:center;font-size:.95rem;font-weight:900;display:grid;position:relative;transform:rotate(-4deg)}.brand:hover .brand-mark{transform:rotate(4deg)scale(1.06)}.brand-text{font-family:var(--font-display);letter-spacing:-.02em;font-size:1.08rem;font-weight:800}.brand-text em{color:var(--accent);font-style:normal}.topnav{gap:2px;margin-left:10px;display:none;position:relative}.topnav a{color:var(--muted);border-radius:10px;padding:9px 14px;font-size:.94rem;font-weight:650;transition:color .2s;position:relative}.topnav a:hover,.topnav a.on{color:var(--text)}.topnav a.on:after{content:"";background:var(--accent);height:4px;animation:underline-in .35s var(--spring);border-radius:4px;position:absolute;bottom:2px;left:14px;right:14px;transform:skew(-20deg)}@keyframes underline-in{0%{transform:skew(-20deg)scaleX(0)}}.appheader-actions{align-items:center;gap:8px;margin-left:auto;display:inline-flex}.avatar-btn{border:1.5px solid var(--border);background:var(--surface);max-width:220px;transition:border-color .2s, transform .2s var(--ease);border-radius:999px;align-items:center;gap:8px;padding:4px 12px 4px 4px;font-weight:650;display:inline-flex}.avatar-btn:hover{border-color:var(--accent);transform:translateY(-1px)}.avatar-btn img,.avatar-btn .avatar{width:30px;height:30px;font-size:.85rem}.verify-bar{background:var(--warn-bg);border-bottom:1px solid var(--border)}.verify-bar .appheader-inner{flex-wrap:wrap;min-height:0;padding-top:10px;padding-bottom:10px;font-size:.86rem}:root{--tabbar-h:64px}.tabbar{left:50%;bottom:calc(env(safe-area-inset-bottom) + 10px);z-index:15;background:color-mix(in srgb, var(--surface) 82%, transparent);border:1.5px solid var(--border);width:min(440px,100vw - 20px);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(18px)saturate(1.5);border-radius:22px;justify-content:space-around;padding:6px;display:flex;position:fixed;transform:translate(-50%)}.tab{min-height:50px;color:var(--muted);border-radius:16px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;padding:6px 0;font-size:.7rem;font-weight:700;transition:color .25s;display:flex;position:relative}.tab svg{transition:transform .35s var(--spring)}.tab.on{color:var(--accent-text)}.tab.on:before{content:"";z-index:-1;background:var(--accent);border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink);animation:tab-pop .4s var(--spring);border-radius:16px;position:absolute;inset:0}.tab.on svg{transform:translateY(-1px)scale(1.08)}@keyframes tab-pop{0%{opacity:0;transform:scale(.6)}}.route:has(~.tabbar)>.page{padding-bottom:calc(env(safe-area-inset-bottom) + var(--tabbar-h) + 110px)}.narrow-only{display:none}@media (width<=520px){.wide-only{display:none}.narrow-only{display:inline}}@media (width<=420px){.brand-text{display:none}}@media (width>=900px){.topnav{display:inline-flex}.tabbar{display:none!important}.page{padding-bottom:calc(env(safe-area-inset-bottom) + 40px)}.route:has(~.tabbar)>.page{padding-bottom:calc(env(safe-area-inset-bottom) + 40px)}.dlbar.raised{bottom:calc(env(safe-area-inset-bottom) + 16px)}}.grid{grid-template-columns:repeat(auto-fill,minmax(146px,1fr));gap:22px 16px;display:grid}.card{animation:card-in .5s var(--ease) both;animation-delay:calc(var(--i,0) * 40ms);flex-direction:column;gap:8px;display:flex}@keyframes card-in{0%{opacity:0;transform:translateY(16px)scale(.97)}}.fx-no-transitions .card{animation:none}.card strong{font-family:var(--font-display);letter-spacing:-.01em;font-weight:700;line-height:1.2}.cover{aspect-ratio:2/3;background:linear-gradient(145deg, var(--surface-2), var(--surface-3));font-family:var(--font-display);color:var(--muted);border:1.5px solid var(--border);transform:perspective(700px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .3s var(--ease), box-shadow .3s var(--ease);border-radius:14px;place-items:center;font-size:2.4rem;font-weight:800;display:grid;position:relative;overflow:hidden;box-shadow:0 12px 24px -14px #0009}.cover img{object-fit:cover;width:100%;height:100%;transition:transform .5s var(--ease)}.cover:after{content:"";pointer-events:none;opacity:0;background:radial-gradient(circle at var(--gx,50%) var(--gy,0%), #ffffff59, transparent 55%);transition:opacity .3s;position:absolute;inset:0}.card:hover .cover{box-shadow:0 22px 34px -16px #000000bf}.card:hover .cover img{transform:scale(1.04)}.card:hover .cover:after{opacity:1}.fx-no-interactions .cover{transform:none!important}.fx-no-interactions .cover:after{display:none}.cover-badge{z-index:1;position:absolute;top:8px;left:8px}.resume{background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow-ink);transition:transform .2s var(--ease), box-shadow .2s var(--ease);align-items:center;gap:14px;padding:12px;display:flex;position:relative;overflow:hidden}.resume:before{content:"";pointer-events:none;opacity:.5;background:repeating-linear-gradient(100deg, transparent 0 22px, var(--tone) 22px 24px);position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000 40%,#000);mask-image:linear-gradient(90deg,#0000 40%,#000)}.resume:hover{box-shadow:5px 5px 0 var(--ink);transform:translate(-1px,-2px)}.resume img{object-fit:cover;border:1.5px solid var(--border);border-radius:10px;width:56px;height:78px}.resume div{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex;position:relative}.resume strong{font-family:var(--font-display);font-size:1.1rem}.resume .muted.small{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:800}.resume-play{background:var(--accent);width:46px;height:46px;color:var(--accent-text);border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink);border-radius:50%;flex-shrink:0;place-items:center;display:grid;position:relative}.libbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 12px;display:flex}.chips{scrollbar-width:none;gap:8px;max-width:100%;margin:-4px;padding:4px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chips-wrap{flex-wrap:wrap;overflow:visible}.chip{border:1.5px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;white-space:nowrap;min-height:38px;transition:background .2s, color .2s, border-color .2s, transform .18s var(--ease);border-radius:999px;flex-shrink:0;padding:0 14px;font-size:.86rem;font-weight:650}.chip:hover{border-color:color-mix(in srgb, var(--text) 30%, var(--border));transform:translateY(-1px)}.chip:active{transform:scale(.96)}.chip.on{background:var(--text);color:var(--bg);border-color:var(--text)}.chip-new:not(.on){border-color:var(--accent-2);background:color-mix(in srgb, var(--accent-2) 14%, var(--surface))}.chip-count{opacity:.55;font-variant-numeric:tabular-nums;margin-left:3px}.libsort{align-items:center;gap:8px;display:inline-flex}.libsort select,.libsearch{border:1.5px solid var(--border);background:var(--surface);color:var(--text)}.libsort select{font:inherit;border-radius:12px;min-height:38px;padding:0 10px;font-size:16px;font-weight:600}.libsearch{color:var(--muted);animation:route-in .3s var(--ease);border-radius:14px;align-items:center;gap:10px;padding:0 12px;transition:border-color .2s,box-shadow .2s;display:flex}.libsearch:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.libsearch input{color:var(--text);background:0 0;border:0;outline:none;flex:1;min-height:46px;font-size:16px}.hero{background:var(--surface);border:2px solid var(--ink);box-shadow:5px 5px 0 var(--ink);isolation:isolate;border-radius:24px;padding:28px 22px 24px;position:relative;overflow:hidden}.hero:before{content:"";z-index:-1;opacity:.6;background:repeating-conic-gradient(from 0deg at 78% 40%, var(--tone) 0 2deg, transparent 2deg 7deg);animation:40s linear infinite speed;position:absolute;inset:-50%}@keyframes speed{to{transform:rotate(360deg)}}.hero h1,.hero h2{max-width:14ch;margin:0;font-size:clamp(1.9rem,6vw,2.8rem);font-weight:800;line-height:1}.hero h1 em,.hero h2 em{color:var(--accent);font-style:normal}.hero p{color:var(--muted);max-width:42ch;margin:12px 0 18px}.hero-actions{flex-wrap:wrap;gap:10px;display:flex}.hero-stack{z-index:-1;pointer-events:none;width:210px;height:260px;position:absolute;top:18px;right:-10px}.hero-stack img,.hero-stack span{aspect-ratio:2/3;object-fit:cover;border:2px solid var(--ink);width:112px;box-shadow:4px 4px 0 var(--ink);background:var(--surface-3);border-radius:12px;animation:6s ease-in-out infinite float;position:absolute}.hero-stack>:first-child{animation-delay:-2s;top:44px;right:96px;transform:rotate(-12deg)}.hero-stack>:nth-child(2){z-index:1;top:6px;right:40px;transform:rotate(4deg)}.hero-stack>:nth-child(3){animation-delay:-4s;top:70px;right:-6px;transform:rotate(14deg)}@keyframes float{50%{translate:0 -10px}}@media (width<=640px){.hero{padding-top:220px}.hero-stack{transform-origin:top;width:260px;top:10px;left:50%;right:auto;transform:translate(-50%)scale(.85)}}.section-title{justify-content:space-between;align-items:baseline;gap:12px;margin:8px 0 -4px;display:flex}.section-title h2{margin:0;font-size:1.35rem;font-weight:800}.section-title h2 em{color:var(--accent);font-style:normal}.posters{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:22px 16px;display:grid}.poster{text-align:left;cursor:pointer;animation:card-in .5s var(--ease) both;animation-delay:calc(var(--i,0) * 35ms);background:0 0;border:0;flex-direction:column;gap:8px;padding:0;display:flex;position:relative}.fx-no-transitions .poster{animation:none}.poster-art{margin-left:22px;display:block;position:relative}.poster-rank{z-index:1;font-family:var(--font-display);color:var(--bg);letter-spacing:-.06em;-webkit-text-stroke:2.5px var(--text);paint-order:stroke fill;pointer-events:none;font-size:4.2rem;font-weight:900;line-height:.8;position:absolute;bottom:-8px;left:-26px}.poster:hover .cover{box-shadow:0 22px 34px -16px #000000bf}.poster:hover .cover img{transform:scale(1.05)}.poster:hover .cover:after{opacity:1}.poster-text{flex-direction:column;gap:2px;min-width:0;padding-left:22px;display:flex}.poster-text strong{font-family:var(--font-display);font-weight:700;line-height:1.2}.poster .badge{z-index:1;border:1.5px solid var(--ink);background:var(--ok);color:#fff;position:absolute;top:8px;right:8px}.search-hero{flex-direction:column;gap:14px;display:flex;position:relative}.addsearch{flex-direction:column;gap:16px;display:flex}.addlink{grid-template-columns:1fr auto;gap:10px;display:grid;position:relative}.addlink input{border:2px solid var(--ink);background:var(--surface);min-width:0;min-height:58px;color:var(--text);box-shadow:var(--shadow-ink);border-radius:18px;padding:0 18px 0 50px;font-size:17px;font-weight:600}.addlink input:focus{box-shadow:5px 5px 0 var(--accent);outline:none}.addlink .search-ico{color:var(--muted);pointer-events:none;position:absolute;top:19px;left:18px}.addlink .btn-primary{border-radius:18px;min-height:58px;padding:0 24px;font-size:1rem}.addlink p{grid-column:1/-1;margin:0}.results{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);flex-direction:column;display:flex;overflow:hidden}.results-head{justify-content:space-between;align-items:center;padding:6px 6px 6px 16px;font-weight:700;display:flex}.result{text-align:left;border:0;border-top:1px dashed var(--border);cursor:pointer;width:100%;animation:card-in .4s var(--ease) both;animation-delay:calc(var(--i,0) * 25ms);background:0 0;align-items:center;gap:14px;padding:12px 16px;transition:background .2s;display:flex}.fx-no-transitions .result{animation:none}.result:hover{background:var(--surface-2)}.result:hover img{transform:rotate(-3deg)scale(1.05)}.result:disabled{opacity:.6}.result img,.result-noimg{object-fit:cover;background:var(--surface-3);border:1.5px solid var(--border);width:52px;height:74px;transition:transform .3s var(--spring);border-radius:9px;flex-shrink:0}.result-text{flex-direction:column;gap:3px;min-width:0;display:flex}.result-text strong{font-family:var(--font-display);font-weight:700}.result-badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.result-sibling{border-top-style:none;padding-left:34px}.recent{flex-direction:column;gap:10px;display:flex}.recent .chip:before{content:"↺ ";opacity:.5}.serieshead{align-items:flex-start;gap:18px;display:flex;position:relative}.serieshead img,.preview-noimg{aspect-ratio:2/3;object-fit:cover;border:2px solid var(--ink);width:124px;box-shadow:4px 4px 0 var(--ink);animation:cover-in .6s var(--spring) both;border-radius:14px;flex-shrink:0;transform:rotate(-2deg)}.preview-noimg{background:var(--surface-3);height:auto;display:block}@keyframes cover-in{0%{opacity:0;transform:rotate(-8deg)translateY(10px)scale(.92)}}.serieshead h1{margin:0 0 6px;font-size:clamp(1.4rem,4.6vw,2rem);font-weight:800;line-height:1.08}.serieshead p{margin:0 0 6px}.preview-head{margin-top:4px}.preview-actions{flex-wrap:wrap;gap:10px;margin:6px 0;display:flex}.preview-actions .btn-primary{flex:220px}.preview-desc{white-space:pre-line;margin:0 0 6px;line-height:1.6}.preview-chapters{margin:0 0 8px;padding:0;list-style:none}.preview-chapters li{justify-content:space-between;align-items:center;gap:8px;min-height:44px;display:flex}.preview-chapters li+li{border-top:1px dashed var(--border)}.settings{flex-wrap:wrap;gap:10px 16px;display:flex}.series-options{flex-direction:column;gap:4px;display:flex}.listhead{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.listhead strong{font-family:var(--font-display);font-size:1.25rem;font-weight:800}.listhead .btn{margin-left:auto}.chapters{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);margin:0;padding:0;list-style:none;overflow:hidden}.chapter{border-top:1px dashed var(--border);align-items:center;gap:6px;min-height:60px;padding:0 10px 0 4px;transition:background .2s;display:flex}.chapter:first-child{border-top:0}.chapter:hover{background:var(--surface-2)}.chapter.read .chapter-main>span:first-child{color:var(--muted)}.chapter-main{flex-direction:column;flex:1;justify-content:center;min-width:0;min-height:60px;padding:8px 0;font-weight:600;display:flex}.chapter-actions{flex-shrink:0;align-items:center;gap:4px;display:inline-flex}.chapter-actions>a.icon{color:var(--muted);width:38px}.progress{align-items:center;gap:4px;display:inline-flex}.readmark{color:var(--border);width:42px;height:42px;transition:color .2s, transform .3s var(--spring);flex-shrink:0}.readmark:hover{color:var(--muted)}.readmark.on{color:var(--accent)}.readmark.on svg{animation:stamp .4s var(--spring)}@keyframes stamp{0%{opacity:0;transform:scale(1.6)rotate(-20deg)}to{opacity:1;transform:none}}.chapters.selecting{margin-bottom:240px}.chapter-check{cursor:pointer;align-items:center;gap:12px;flex-direction:row!important;justify-content:flex-start!important;padding-left:12px!important}.chapter-check input{width:22px;height:22px}.chapter.checked{background:var(--accent-soft)}.danger{border-top:1px dashed var(--border);margin-top:8px;padding:24px 0 8px}.danger-btn{color:var(--danger)!important}.selbar,.dlbar{left:12px;right:12px;bottom:calc(env(safe-area-inset-bottom) + 12px);z-index:25;background:var(--surface);border:2px solid var(--ink);box-shadow:5px 5px 0 var(--ink);animation:sheet-in .4s var(--spring);border-radius:20px;margin:0 auto;position:fixed}@keyframes sheet-in{0%{opacity:0;transform:translateY(40px)}}.selbar{flex-direction:column;gap:10px;max-width:660px;padding:14px;display:flex}.selbar>p{margin:0}.selbar-quick{flex-wrap:wrap;gap:6px;display:flex}.selbar-range{align-items:center;gap:6px;display:flex}.selbar-range input{border:1.5px solid var(--border);background:var(--bg);width:0;min-height:40px;color:var(--text);border-radius:12px;flex:1;padding:0 12px;font-size:16px}.selbar-actions{align-items:center;gap:8px;display:flex}.selbar-actions>span{flex:1;min-width:0}.dlbar{z-index:16;align-items:center;gap:10px;max-width:580px;padding:12px 14px;display:flex}.dlbar-text{flex-direction:column;flex:1;gap:6px;min-width:0;font-weight:600;display:flex}.toast{top:calc(env(safe-area-inset-top) + 14px);z-index:60;background:var(--surface);border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink);animation:toast-in .45s var(--spring);border-radius:16px;align-items:center;gap:10px;padding:8px 8px 8px 16px;font-weight:650;display:flex;position:fixed;left:50%;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-30px)}}.account{align-items:center;gap:12px;padding:8px 0;display:flex}.account img,.avatar{object-fit:cover;border:2px solid var(--ink);border-radius:50%;flex-shrink:0;width:46px;height:46px}.avatar{background:var(--accent);color:var(--accent-text);text-transform:uppercase;font-weight:800;font-family:var(--font-display);place-items:center;display:grid}.statgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:8px 0;display:grid}@media (width>=640px){.statgrid{grid-template-columns:repeat(4,minmax(0,1fr))}}.statbox{background:var(--surface-2);border:1px solid var(--border);min-width:0;animation:card-in .5s var(--ease) both;border-radius:14px;flex-direction:column;gap:2px;padding:12px 14px;display:flex;position:relative;overflow:hidden}.statbox:after{content:"";background-image:radial-gradient(var(--tone) 1.4px, transparent 1.6px);background-size:6px 6px;border-radius:50%;width:46px;height:46px;position:absolute;top:-14px;right:-14px}.stat-num{font-family:var(--font-display);letter-spacing:-.02em;overflow-wrap:anywhere;font-size:1.45rem;font-weight:800}.stat{flex-direction:column;gap:2px;padding:6px 0 4px;display:flex}.stat-value{font-family:var(--font-display);letter-spacing:-.03em;font-size:2rem;font-weight:800}.weekbars{grid-template-columns:repeat(7,1fr);align-items:end;gap:8px;height:110px;margin:10px 0 4px;display:grid}.weekbar{flex-direction:column;justify-content:flex-end;align-items:center;gap:6px;height:100%;display:flex}.weekbar-fill{transform-origin:bottom;background:linear-gradient(180deg, var(--accent), color-mix(in srgb, var(--accent) 55%, var(--accent-2)));border:1.5px solid var(--ink);width:100%;max-width:30px;animation:grow .8s var(--spring) both;border-radius:8px 8px 4px 4px}@keyframes grow{0%{transform:scaleY(0)}}.daybars{grid-template-columns:repeat(14,1fr);gap:4px}.quota{flex-direction:column;gap:6px;padding:4px 0;display:flex}.quota-row{justify-content:space-between;display:flex}.quota p{margin:0}.reserve{align-items:center;gap:12px;padding:6px 0;display:flex}.reserve input{flex:1}.usage-row,.history-row{align-items:center;gap:12px;padding:10px 0;display:flex}.usage-row+.usage-row{border-top:1px dashed var(--border)}.usage-row img,.history-row img,.usage-noimg{object-fit:cover;background:var(--surface-3);border:1.5px solid var(--border);border-radius:9px;flex-shrink:0;width:46px;height:64px}.usage-text{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.usage-actions{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.history-group{flex-direction:column;display:flex}.history-group h2{margin:12px 0 0;font-weight:800}.history-row{border-bottom:1px dashed var(--border);color:inherit;transition:background .2s}.row-actions{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.perks{flex-direction:column;gap:10px;margin:10px 0;padding:0;list-style:none;display:flex}.perks li{animation:card-in .45s var(--ease) both;align-items:flex-start;gap:10px;display:flex}.perks li:nth-child(2){animation-delay:60ms}.perks li:nth-child(3){animation-delay:.12s}.perks li:nth-child(4){animation-delay:.18s}.perks li:nth-child(5){animation-delay:.24s}.perks li svg{background:var(--accent);width:22px;height:22px;color:var(--accent-text);border:1.5px solid var(--ink);border-radius:7px;flex-shrink:0;margin-top:1px;padding:3px}.source-row{flex-direction:column;gap:6px;padding:14px 0;display:flex}.source-row+.source-row{border-top:1px dashed var(--border)}.source-row-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.source-row-actions{flex-wrap:wrap;gap:8px;display:flex}.invite{gap:8px;padding-bottom:14px}.invite input,.invite-limits input,.user-edit input{border:1.5px solid var(--border);background:var(--bg);min-height:44px;color:var(--text);border-radius:12px;width:100%;padding:0 12px;font-size:16px}.invite-limits{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.invite-limits label{flex-direction:column;flex:1;gap:2px;min-width:90px;display:flex}.invite>.btn{align-self:flex-start}.user-row{flex-direction:column;gap:8px;padding:14px 0;display:flex}.user-row+.user-row{border-top:1px dashed var(--border)}.user-head{text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:flex}.user-head>svg{color:var(--muted);transition:transform .3s var(--spring);flex-shrink:0;transform:rotate(90deg)}.user-head[aria-expanded=true]>svg{transform:rotate(-90deg)}.user-body{animation:route-in .3s var(--ease);flex-direction:column;gap:10px;padding:10px 0 2px;display:flex}.user-series{margin:4px 0 0;padding-left:18px}.user-edit{flex-direction:column;gap:8px;display:flex}.user-row.blocked .user-head strong{opacity:.7}.person{flex-direction:column;gap:6px;padding:12px 0;display:flex}.person+.person{border-top:1px dashed var(--border)}.person-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.person-num{text-align:right;flex-shrink:0}.person-devices{border-left:3px solid var(--accent-soft);flex-direction:column;gap:4px;margin:0;padding:0 0 0 12px;list-style:none;display:flex}.person-devices li{flex-direction:column;display:flex}.topseries{flex-direction:column;gap:6px;margin:4px 0;padding-left:22px;display:flex}.topseries li::marker{color:var(--accent);font-weight:800}.topseries li,.topseries-row{justify-content:space-between;gap:10px;display:flex}.topseries li .muted,.topseries-row>span:last-child{flex-shrink:0}.topseries-row{padding:6px 0}.welcome>.bar{height:6px;margin-top:-8px}.welcome p{margin:0;line-height:1.55}.welcome-nav{justify-content:flex-end;gap:8px;padding-top:8px;display:flex}.empty{text-align:center;padding:48px 8px}.empty .btn{margin-top:8px}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(6px);animation:fade-in .25s var(--ease);background:#0a060e8c;place-items:end center;padding:0;display:grid;position:fixed;inset:0}.modal-backdrop.closing{animation:fade-out .22s var(--ease) forwards}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}@media (width>=640px){.modal-backdrop{place-items:center;padding:24px}}.modal{background:var(--surface);width:min(560px,100vw);max-height:min(88dvh,760px);color:var(--text);border:2px solid var(--ink);padding-bottom:env(safe-area-inset-bottom);animation:sheet-up .48s var(--spring);border-bottom:0;border-radius:24px 24px 0 0;outline:none;flex-direction:column;display:flex;position:relative;box-shadow:0 -10px 40px -10px #00000080}.modal:before{content:"";background:var(--border);border-radius:5px;width:40px;height:5px;margin-left:-20px;position:absolute;top:8px;left:50%}.closing .modal{animation:sheet-down .24s var(--ease) forwards}@keyframes sheet-up{0%{transform:translateY(100%)}}@keyframes sheet-down{to{transform:translateY(100%)}}@media (width>=640px){.modal{border-bottom:2px solid var(--ink);box-shadow:7px 7px 0 var(--ink);animation:pop-in .45s var(--spring);border-radius:24px;padding-bottom:0}.modal:before{display:none}.closing .modal{animation:pop-out .2s var(--ease) forwards}}@keyframes pop-in{0%{opacity:0;transform:scale(.85)rotate(-1.5deg)}}@keyframes pop-out{to{opacity:0;transform:scale(.92)}}.modal-head{justify-content:space-between;align-items:center;gap:8px;padding:20px 18px 6px;display:flex}.modal-head h2{margin:0;font-size:1.45rem;font-weight:800}.modal-body{padding:4px 18px 14px;overflow-y:auto}.modal-foot{border-top:1px dashed var(--border);flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:12px 18px 16px;display:flex}.upd-summary{flex-direction:column;gap:10px;padding:6px 0 12px;display:flex}.upd-summary strong{font-family:var(--font-display);font-size:1.1rem}.upd-bar{height:10px}.upd-list{margin:0;padding:0;list-style:none}.upd-item{animation:card-in .35s var(--ease) both;align-items:flex-start;gap:12px;padding:12px 0;display:flex}.upd-item+.upd-item{border-top:1px dashed var(--border)}.upd-icon{width:24px;height:24px;color:var(--muted);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.upd-item.done .upd-icon{color:#fff;background:var(--ok);animation:stamp .4s var(--spring)}.upd-item.error .upd-icon{color:#fff;background:var(--danger)}.upd-icon .spinner{width:18px;height:18px}.upd-dot{background:var(--border);border-radius:50%;width:8px;height:8px}.upd-text{flex-direction:column;gap:2px;min-width:0;display:flex}.auth-tabs{width:100%;margin-bottom:14px;display:flex}.auth-tabs button{flex:1}.google-btn{background:var(--surface);gap:10px}.auth-or{color:var(--muted);align-items:center;gap:10px;margin:16px 0;font-size:.8rem;font-weight:650;display:flex}.auth-or:before,.auth-or:after{content:"";background:var(--border);flex:1;height:1px}.auth-form{flex-direction:column;gap:12px;display:flex}.auth-form label{flex-direction:column;gap:5px;font-weight:650;display:flex}.auth-form input{border:1.5px solid var(--border);background:var(--bg);color:var(--text);border-radius:12px;min-height:48px;padding:0 14px;font-size:16px}.auth-foot{margin:14px 0 0}.particles{z-index:-1;pointer-events:none;position:fixed;inset:0}.splash{z-index:100;background:var(--bg);animation:splash-out .5s var(--ease) 1.45s forwards;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.splash:before{content:"";background:repeating-conic-gradient(from 0deg, var(--tone) 0 1.5deg, transparent 1.5deg 6deg);animation:speed 6s linear infinite, splash-lines 1.2s var(--ease) both;position:absolute;inset:-60%}.splash-mark{background:var(--accent);width:112px;height:112px;color:var(--accent-text);border:3px solid var(--ink);box-shadow:7px 7px 0 var(--ink);font-family:var(--font-display);letter-spacing:-.05em;animation:splash-stamp .7s var(--spring) both;border-radius:28px;place-items:center;font-size:2.9rem;font-weight:900;display:grid;position:relative}.splash-name{text-align:center;font-family:var(--font-display);letter-spacing:-.02em;animation:splash-name .6s var(--ease) .45s both;font-size:1.5rem;font-weight:800;position:absolute;top:calc(50% + 86px);left:0;right:0}.splash-name em{color:var(--accent);font-style:normal}.splash-ink{background:radial-gradient(circle, color-mix(in srgb, var(--accent) 35%, transparent) 0 30%, transparent 62%);width:240px;height:240px;animation:splash-ink .9s var(--ease) .15s both;border-radius:50%;position:absolute}@keyframes splash-stamp{0%{opacity:0;transform:scale(2.4)rotate(-25deg)}60%{opacity:1}to{transform:rotate(-6deg)}}@keyframes splash-ink{0%{opacity:1;transform:scale(0)}to{opacity:0;transform:scale(3.2)}}@keyframes splash-name{0%{opacity:0;letter-spacing:.2em;transform:translateY(14px)}}@keyframes splash-lines{0%{opacity:0;transform:scale(1.4)}}@keyframes splash-out{to{opacity:0;visibility:hidden;transform:scale(1.06)}}.reader{color:#e8e8ee;overscroll-behavior:none;touch-action:manipulation;background:#000;position:fixed;inset:0}.reader-message{text-align:center;place-content:center;gap:16px;padding:24px;display:grid}.reader .btn{color:#ece6dc;box-shadow:none;background:#1c1a22;border-color:#2e2b36}.reader .btn-primary{background:var(--accent);color:#1a0805;border-color:#000;box-shadow:3px 3px #000}.reader .btn-ghost{color:#a39cab;background:0 0;border-color:#0000}.reader .muted{color:#a39cab}.vscroll{overscroll-behavior:contain;height:100%;overflow:hidden auto}.vscroll.zoomed{overflow-x:auto}.vinner{width:calc(100% * var(--z,1));max-width:calc(800px * var(--z,1));margin:0 auto}.vslot{background:#0a0a0a;width:100%}.vslot img{object-fit:contain;width:100%;height:100%}.pview{touch-action:pan-y pinch-zoom;-webkit-user-select:none;user-select:none;height:100%;overflow-y:auto}.pview.zoomed{touch-action:pan-x pan-y pinch-zoom;overflow:auto}.pview.zoomed .ppage{height:auto;display:block}.pview.zoomed .ppage img{width:calc(100% * var(--z,1));max-width:none;max-height:none;margin:0}.ppage{place-items:center;height:100%;display:grid}.ppage img{object-fit:contain;max-width:100%;max-height:100%}.ppage.tall{height:auto;display:block}.ppage.tall img{width:100%;max-width:800px;max-height:none;margin:0 auto}.pend{place-items:center;min-height:100%;display:grid}.reader-ui{pointer-events:none}.reader-top,.reader-bottom{z-index:10;-webkit-backdrop-filter:blur(12px);transition:transform .3s var(--ease), opacity .3s var(--ease);opacity:0;background:#0c0a10e6;align-items:center;gap:8px;display:flex;position:fixed;left:0;right:0}.reader-top{padding:calc(env(safe-area-inset-top) + 6px) 12px 8px;top:0;transform:translateY(-100%)}.reader-bottom{padding:8px 12px calc(env(safe-area-inset-bottom) + 8px);justify-content:space-between;bottom:0;transform:translateY(100%)}.reader-ui.show .reader-top,.reader-ui.show .reader-bottom{opacity:1;pointer-events:auto;transform:none}.reader-title{flex-direction:column;flex:1;min-width:0;display:flex}.reader-title strong{white-space:nowrap;text-overflow:ellipsis;font-family:var(--font-display);overflow:hidden}button.reader-title{text-align:left;cursor:pointer;color:inherit;background:0 0;border:0;padding:4px 0}.reader-title .small{align-items:center;gap:4px;display:inline-flex}.zoom-btn{min-width:52px}.seg-dark{background:#1c1a22;border-color:#2e2b36}.seg-dark button{color:#a39cab}.seg-dark button.on{color:#fff;background:#37323f}.reader .switch{background:#2e2b36;border-color:#3a3644}.reader .switch[aria-checked=true]{background:var(--accent);border-color:#000}.reader .icon:hover{background:#24212b}.reader .icon.on{color:var(--accent)}.reader-filter{z-index:5;pointer-events:none;mix-blend-mode:multiply;position:fixed;inset:0}.reader-panel{z-index:11;left:50%;top:calc(env(safe-area-inset-top) + 64px);pointer-events:auto;width:min(420px,100vw - 24px);animation:panel-drop .35s var(--spring);background:#16141cf7;border:1.5px solid #2e2b36;border-radius:18px;padding:8px 14px;position:fixed;transform:translate(-50%)}@keyframes panel-drop{0%{opacity:0;transform:translate(-50%)translateY(-12px)scale(.96)}}.reader-range{align-items:center;gap:10px;min-height:48px;display:flex}.reader-range input{flex:1}.reader-chapters{max-height:min(60vh,480px);padding:6px;overflow-y:auto}.reader-chapter{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:44px;padding:0 10px;display:flex}.reader-chapter:disabled{cursor:default;opacity:.45}.reader-chapter.on{opacity:1;background:#2b2732;font-weight:700}.chapter-divider{border-top:1px solid #23202a;border-bottom:1px solid #23202a;flex-direction:column;align-items:center;gap:4px;max-width:800px;margin:0 auto;padding:28px 16px;display:flex}.fade{animation:.2s ease-out fade-in}.fx-no-interactions .btn-primary:after{display:none}.fx-no-interactions .btn:hover,.fx-no-interactions .chip:hover,.fx-no-interactions .resume:hover{transform:none}.reduce-motion *,.reduce-motion :before,.reduce-motion :after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.reduce-motion .hero:before,.reduce-motion .splash{display:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-delay:0s!important}}.skeleton .cover,.sk-line{background:linear-gradient(100deg, var(--surface-2) 30%, var(--surface-3) 50%, var(--surface-2) 70%) 0 0 / 300% 100%;animation:1.4s linear infinite shimmer}.sk-line{border-radius:6px;height:12px;margin-top:6px;display:block}.sk-line.short{width:60%}@keyframes shimmer{to{background-position:-300% 0}}.title em{color:var(--accent);font-style:normal}.title:after{margin-top:8px}.search-hero .title:after{display:none}.toggle.disabled{opacity:.5}.switch:disabled{cursor:default}.section-title{flex-wrap:wrap;row-gap:2px}.series-backdrop{z-index:-1;pointer-events:none;filter:blur(60px)saturate(1.7);opacity:.45;height:260px;animation:fade-in .8s var(--ease);background-position:50% 30%;background-size:cover;position:absolute;top:-60px;left:-40px;right:-40px;-webkit-mask-image:radial-gradient(60% 70% at 30% 35%,#000 20%,#0000 75%);mask-image:radial-gradient(60% 70% at 30% 35%,#000 20%,#0000 75%)}.serieshead>div{position:relative}.reader-top{gap:10px}.reader-round{background:#1f1c25;border:1px solid #2e2b36;border-radius:50%;width:40px;height:40px}.reader-round:hover{background:#2a2631!important}.reader-title .small{color:#a39cab}.reader-pages{text-align:center;font-variant-numeric:tabular-nums;background:#1f1c25;border:1px solid #2e2b36;border-radius:999px;flex-shrink:0;min-width:52px;padding:6px 10px;font-size:.85rem;font-weight:800}.reader-pages .muted{font-weight:600}.reader-progress{background:#1f1c25;height:3px;position:absolute;bottom:0;left:0;right:0}.reader-progress span{background:var(--accent);height:100%;transition:width .3s var(--ease);box-shadow:0 0 10px var(--accent);display:block}.reader-bottom{grid-template-columns:1fr auto 1fr;gap:10px;display:grid}.navbtn{color:#ece6dc;cursor:pointer;text-align:left;min-width:0;min-height:52px;transition:border-color .2s, background .2s, transform .2s var(--ease);background:#1c1a22;border:1.5px solid #2e2b36;border-radius:16px;align-items:center;gap:10px;padding:6px 12px 6px 6px;display:flex}.navbtn-next{text-align:right;flex-direction:row-reverse;justify-self:end;padding:6px 6px 6px 12px}.navbtn-prev{justify-self:start}.navbtn-arrow{width:38px;height:38px;transition:transform .25s var(--spring), background .2s;background:#2a2631;border-radius:12px;flex-shrink:0;place-items:center;display:grid}.navbtn:not(:disabled) .navbtn-arrow{background:var(--accent);color:#1a0805;border:1.5px solid #000}.navbtn-text{flex-direction:column;min-width:0;line-height:1.2;display:flex}.navbtn-label{letter-spacing:.1em;text-transform:uppercase;color:#a39cab;font-size:.68rem;font-weight:800}.navbtn-title{white-space:nowrap;text-overflow:ellipsis;max-width:22vw;font-weight:700;overflow:hidden}.navbtn:hover:not(:disabled){border-color:var(--accent);background:#221f28}.navbtn-prev:hover:not(:disabled) .navbtn-arrow{transform:translate(-3px)}.navbtn-next:hover:not(:disabled) .navbtn-arrow{transform:translate(3px)}.navbtn:active:not(:disabled){transform:scale(.97)}.navbtn:disabled{cursor:default;opacity:.55}@media (width<=480px){.navbtn{padding:6px}.navbtn-text{display:none}.reader-bottom{grid-template-columns:auto 1fr auto}.reader-bottom .seg{justify-self:center}}.endpanel{max-width:440px;padding:48px 20px calc(env(safe-area-inset-bottom) + 110px);text-align:left;flex-direction:column;gap:12px;margin:0 auto;display:flex}.endpanel-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);align-items:center;gap:8px;font-size:.72rem;font-weight:800;display:inline-flex}.endpanel-kicker:before{content:"";background:currentColor;border-radius:3px;width:18px;height:3px;transform:skew(-20deg)}.endpanel-title{font-family:var(--font-display);color:#f3ede2;margin:0;font-size:2rem;font-weight:800;line-height:1.05}.endpanel-meta{color:#a39cab;margin:0}.endpanel-track{background:#24212b;border-radius:4px;height:4px;display:block;overflow:hidden}.endpanel-track span{background:var(--accent);height:100%;display:block}.endnext{background:#17151d;border:1.5px solid #2e2b36;border-radius:20px;flex-direction:column;gap:10px;margin-top:10px;padding:18px;display:flex;position:relative;overflow:hidden}.endnext:before{content:"";pointer-events:none;opacity:.6;background:repeating-linear-gradient(100deg,#0000 0 22px,#ffffff08 22px 24px);position:absolute;inset:0}.endnext-label{letter-spacing:.12em;text-transform:uppercase;color:#a39cab;font-size:.7rem;font-weight:800;position:relative}.endnext-title{font-family:var(--font-display);color:#f3ede2;font-size:1.4rem;font-weight:800;position:relative}.endnext-status{align-items:center;gap:10px;margin:0;display:flex;position:relative}.endnext .btn{position:relative}.endpanel .toggle{color:#ece6dc}.endpanel .toggle+.btn{margin-top:2px}.quota-meter{flex-direction:column;gap:12px;padding:8px 0;display:flex}.qm-row{flex-direction:column;gap:6px;display:flex}.qm-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.qm-num{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:1.15rem;font-weight:800}.qm-num .muted{font-family:var(--font-body);font-size:.8rem;font-weight:600}.qm-bar{background:var(--surface-3);border:1px solid var(--border);border-radius:999px;height:10px;overflow:hidden}.qm-bar span{background:var(--ok);height:100%;transition:width .6s var(--ease);animation:grow-x .9s var(--ease) both;transform-origin:0;border-radius:999px;display:block}.qm-row.near .qm-bar span{background:var(--accent-2)}.qm-row.full .qm-bar span{background:var(--accent)}.qm-row.full .qm-num{color:var(--accent)}.qm-hint{color:var(--accent);font-weight:650}.qm-upsell{margin:0}.quota-owner{align-items:center;gap:8px;margin:4px 0;font-weight:650;display:flex}@keyframes grow-x{0%{transform:scaleX(0)}}.selbar .quota-meter{flex-direction:row;gap:14px;padding:0}.selbar .qm-row{flex:1}.selbar .qm-upsell{display:none}.profile{align-items:center;gap:16px;padding:10px 0 6px;display:flex}.profile-avatar{flex-shrink:0;position:relative}.profile-avatar img,.profile-avatar .avatar{width:68px;height:68px;box-shadow:3px 3px 0 var(--ink);border-width:2.5px;font-size:1.6rem}.profile-avatar:after{content:"";border:2px dashed color-mix(in srgb, var(--accent) 55%, transparent);border-radius:50%;animation:18s linear infinite spin;position:absolute;inset:-6px}.profile-text{flex-direction:column;gap:4px;min-width:0;display:flex}.profile-text strong{font-family:var(--font-display);overflow-wrap:anywhere;font-size:1.35rem;font-weight:800;line-height:1.1}.profile-badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.guest-card{align-items:center;gap:14px;padding:10px 0 2px;display:flex}.guest-card .avatar{background:var(--surface-3);width:56px;height:56px;color:var(--muted);font-size:1.4rem}.guest-card strong{font-family:var(--font-display);font-size:1.2rem}.storage-dial{flex-wrap:wrap;align-items:center;gap:22px;padding:10px 0;display:flex}@property --pp{syntax:"<number>";inherits:false;initial-value:0}.dial{--pp:var(--p);background:conic-gradient(var(--accent) calc(var(--pp) * 1%), var(--surface-3) 0);border:2px solid var(--ink);width:150px;height:150px;box-shadow:4px 4px 0 var(--ink);transition:--pp 1.2s var(--ease);animation:dial-in 1.2s var(--ease);border-radius:50%;flex-shrink:0;position:relative}@keyframes dial-in{0%{--pp:0}}.dial-inner{background:var(--surface);border:1.5px solid var(--border);text-align:center;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:16px}.dial-inner strong{font-family:var(--font-display);font-size:1.35rem;font-weight:800}.dial-legend{flex:1;grid-template-columns:1fr 1fr;gap:12px 16px;min-width:180px;margin:0;display:grid}.dial-legend dd{font-family:var(--font-display);margin:2px 0 0;font-size:1.15rem;font-weight:800}.history-group{padding-left:22px;position:relative}.history-group:before{content:"";background:linear-gradient(var(--border), transparent);width:2px;position:absolute;top:30px;bottom:4px;left:6px}.history-day{font-family:var(--font-display);align-items:center;gap:10px;font-size:1.1rem;font-weight:800;display:flex;margin:14px 0 4px -22px!important}.history-day:before{content:"";background:var(--accent);border:2px solid var(--ink);border-radius:4px;width:14px;height:14px;transform:rotate(45deg)}.history-row{background:var(--surface);border-radius:14px;margin:4px 0;position:relative;border-bottom:0!important;border:1.5px solid var(--border)!important;padding:10px 12px!important}.history-row:before{content:"";background:var(--muted);border-radius:50%;width:8px;height:8px;margin-top:-4px;position:absolute;top:50%;left:-20px}.history-row:hover{transform:translate(3px);border-color:var(--accent)!important}.history-row{transition:transform .2s var(--ease), border-color .2s}.empty-card{text-align:center;background:var(--surface);border:2px dashed var(--border);border-radius:22px;flex-direction:column;align-items:center;gap:8px;padding:36px 20px;display:flex}.empty-card strong{font-family:var(--font-display);font-size:1.3rem}.empty-card p{max-width:40ch;margin:0 0 8px}.empty-glyph{font-size:2.4rem;animation:4s ease-in-out infinite float}.select{display:inline-flex;position:relative}.select-btn{cursor:pointer;border:1.5px solid var(--border);background:var(--surface);min-height:40px;color:var(--text);transition:border-color .2s, box-shadow .2s, transform .18s var(--ease);border-radius:12px;align-items:center;gap:8px;padding:0 12px 0 14px;font-weight:650;display:inline-flex}.select-btn:hover{border-color:color-mix(in srgb, var(--text) 30%, var(--border))}.select.open .select-btn{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.select-prefix{color:var(--muted);font-size:.82rem;font-weight:600}.select-value{white-space:nowrap}.select-caret{color:var(--muted);transition:transform .3s var(--spring);display:inline-grid;transform:rotate(90deg)}.select.open .select-caret{color:var(--accent);transform:rotate(-90deg)}.select-compact .select-btn{border-radius:999px;gap:6px;min-height:32px;padding:0 8px 0 10px;font-size:.82rem}.select-ico{place-items:center;font-size:1rem;line-height:1;display:inline-grid}.select-list{z-index:30;background:var(--surface);border:2px solid var(--ink);min-width:220px;max-height:320px;box-shadow:5px 5px 0 var(--ink);transform-origin:0 0;animation:select-in .28s var(--spring);border-radius:16px;outline:none;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 8px);overflow-y:auto}.select-start{left:0}.select-end{transform-origin:100% 0;right:0}@keyframes select-in{0%{opacity:0;transform:translateY(-6px)scale(.94)}}.select-opt{cursor:pointer;min-height:44px;animation:card-in .25s var(--ease) both;animation-delay:calc(var(--i) * 25ms);border-radius:10px;align-items:center;gap:10px;padding:8px 10px;display:flex}.select-opt.active{background:var(--surface-2)}.select-opt.selected{font-weight:750}.select-opt-text{flex-direction:column;flex:1;gap:1px;display:flex}.select-check{color:var(--accent);animation:stamp .35s var(--spring);display:inline-grid}.series-meta-row{flex-wrap:wrap;align-items:center;gap:8px;margin:2px 0 8px;display:flex}.series-options .toggle{padding-top:4px}.about{gap:26px}.about-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);align-items:center;gap:8px;font-size:.74rem;font-weight:800;display:inline-flex}.about-kicker:before{content:"";background:currentColor;border-radius:3px;width:18px;height:3px;transform:skew(-20deg)}.about-hero{isolation:isolate;background:var(--surface);border:2px solid var(--ink);box-shadow:6px 6px 0 var(--ink);border-radius:28px;padding:44px 24px 36px;position:relative;overflow:hidden}.about-hero:before{content:"";z-index:-1;opacity:.7;background:repeating-conic-gradient(from 0deg at 85% 30%, var(--tone) 0 2deg, transparent 2deg 7deg);animation:50s linear infinite speed;position:absolute;inset:-60%}.about-hero:after{content:"";z-index:-1;background:radial-gradient(circle, color-mix(in srgb, var(--accent) 35%, transparent), transparent 65%);border-radius:50%;width:260px;height:260px;position:absolute;top:-60px;right:-60px}.about-hero h1{letter-spacing:-.03em;margin:12px 0 14px;font-size:clamp(2.2rem,8vw,3.8rem);font-weight:800;line-height:.98}.about-hero h1 em{color:var(--accent);z-index:0;font-style:normal;position:relative}.about-hero h1 em:after{content:"";z-index:-1;background:color-mix(in srgb, var(--accent-2) 60%, transparent);transform-origin:0;height:.16em;animation:grow-x-in .8s var(--ease) .4s forwards;border-radius:4px;position:absolute;bottom:.04em;left:0;right:0;transform:skew(-15deg)scaleX(0)}@keyframes grow-x-in{to{transform:skew(-15deg)scaleX(1)}}.about-hero p{max-width:46ch;color:var(--muted);margin:0;font-size:1.05rem}.about-floaters{z-index:-1;pointer-events:none;position:absolute;inset:0}.about-floaters span{opacity:.85;animation:5s ease-in-out infinite float;animation-delay:calc(var(--i) * -.7s);filter:drop-shadow(2px 2px #00000059);font-size:1.7rem;position:absolute}.about-floaters span:first-child{font-size:2.6rem;top:14%;right:8%}.about-floaters span:nth-child(2){top:8%;right:26%}.about-floaters span:nth-child(3){top:52%;right:6%}.about-floaters span:nth-child(4){font-size:1.4rem;top:62%;right:22%}.about-floaters span:nth-child(5){font-size:1.1rem;top:24%;right:38%}.about-floaters span:nth-child(6){bottom:8%;right:15%}.about-floaters span:nth-child(7){font-size:1.3rem;bottom:14%;right:34%}.about-floaters span:nth-child(8){font-size:1.2rem;top:6%;right:44%}@media (width<=640px){.about-hero{padding-top:96px}.about-floaters span{bottom:auto!important}.about-floaters span:nth-child(odd){top:16px}.about-floaters span:nth-child(2n){top:52px}}.marquee{border-block:2px solid var(--ink);background:var(--accent);color:var(--accent-text);box-shadow:0 4px 0 var(--ink);margin:0 -16px;overflow:hidden;transform:rotate(-1.5deg)}.marquee-track{width:max-content;animation:28s linear infinite marquee;display:flex}.marquee-item{font-family:var(--font-display);white-space:nowrap;padding:12px 22px;font-size:1.05rem;font-weight:800}.marquee-item:after{content:"✦";opacity:.6;margin-left:44px}@keyframes marquee{to{transform:translate(-50%)}}.marquee:hover .marquee-track{animation-play-state:paused}.about-block{flex-direction:column;gap:10px;display:flex}.about-block h2,.about-cta h2{max-width:22ch;margin:0;font-size:clamp(1.5rem,5vw,2.1rem);font-weight:800;line-height:1.08}.about-block>p{max-width:62ch;color:var(--muted);margin:0;font-size:1.02rem;line-height:1.65}.about-quote{background:var(--surface);border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink);border-radius:18px 18px 18px 4px;align-items:flex-start;gap:12px;max-width:560px;margin-top:6px;padding:16px 18px;display:flex}.about-quote span{font-size:1.6rem}.about-quote p{font-family:var(--font-display);margin:0;font-size:1.1rem;font-weight:700;line-height:1.35}.about-steps{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:6px 0 0;padding:0;list-style:none;display:grid}.about-steps li{background:var(--surface);border:1.5px solid var(--border);box-shadow:var(--shadow-soft);border-radius:20px;flex-direction:column;gap:6px;padding:20px 18px;display:flex;position:relative;overflow:hidden}.about-steps li strong{font-family:var(--font-display);font-size:1.3rem}.about-steps li p{color:var(--muted);margin:0}.about-step-num{font-family:var(--font-display);color:#0000;-webkit-text-stroke:2px var(--border);pointer-events:none;font-size:5rem;font-weight:900;line-height:1;position:absolute;top:-10px;right:10px}.about-step-emoji{width:fit-content;transition:transform .35s var(--spring);font-size:2rem;display:inline-block}.about-steps li:hover .about-step-emoji{transform:scale(1.2)rotate(-8deg)}.about-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin-top:6px;display:grid}.about-card{background:var(--surface);border:1.5px solid var(--border);transition:transform .25s var(--ease), border-color .25s, box-shadow .25s;border-radius:20px;flex-direction:column;gap:6px;padding:18px;display:flex}.about-card:hover{border-color:var(--ink);box-shadow:4px 4px 0 var(--ink);transform:translateY(-3px)rotate(-.4deg)}.about-card strong{font-family:var(--font-display);font-size:1.15rem}.about-card p{margin:0;line-height:1.55}.about-card-emoji{background:var(--surface-2);border:1.5px solid var(--border);border-radius:14px;place-items:center;width:48px;height:48px;font-size:1.5rem;display:grid}.about-cta{text-align:center;background:var(--surface);border:2px dashed var(--border);border-radius:28px;flex-direction:column;align-items:center;gap:8px;padding:34px 22px;display:flex;position:relative;overflow:hidden}.about-cta h2{max-width:20ch}.about-cta p{margin:0 0 10px}.about-cta-emoji{font-size:3rem;animation:4s ease-in-out infinite float}.about-sign{text-align:center;margin:0}.reveal{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transition-delay:calc(var(--i,0) * 90ms);transform:translateY(26px)}.reveal.in,.fx-no-transitions .reveal,.reduce-motion .reveal{opacity:1;transform:none}.reduce-motion .marquee-track{animation:none}.dial{box-shadow:0 0 0 6px var(--surface-2), 0 10px 26px -10px #0009;border:0}.dial-inner{background:var(--surface);border:2px solid var(--border);inset:14px;box-shadow:inset 0 2px 8px #00000040}.welcome{max-width:680px}.welcome-top{align-items:center;gap:12px;display:flex}.stepper{flex:1;gap:6px;margin:0;padding:0;list-style:none;display:flex}.stepper li{flex:1;position:relative}.stepper li+li:before{content:"";background:var(--border);z-index:-1;border-radius:3px;height:3px;position:absolute;top:17px;left:-50%;right:50%}.stepper li.done+li:before,.stepper li.on:before{background:var(--accent)}.stepper button{cursor:pointer;width:100%;color:var(--muted);background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;padding:0;display:flex}.stepper-dot{width:36px;height:36px;font-family:var(--font-display);background:var(--surface);border:2px solid var(--border);transition:transform .35s var(--spring), background .2s, border-color .2s;border-radius:12px;place-items:center;font-weight:800;display:grid}.stepper li.on .stepper-dot{background:var(--accent);color:var(--accent-text);border-color:var(--ink);box-shadow:2px 2px 0 var(--ink);transform:rotate(-6deg)scale(1.08)}.stepper li.done .stepper-dot{background:var(--ok);color:#fff;border-color:var(--ink)}.stepper-label{font-size:.72rem;font-weight:700}.stepper li.on .stepper-label{color:var(--text)}.welcome-step{flex-direction:column;gap:14px;display:flex}.welcome-step.from-right{animation:step-right .45s var(--ease)}.welcome-step.from-left{animation:step-left .45s var(--ease)}@keyframes step-right{0%{opacity:0;transform:translate(30px)}}@keyframes step-left{0%{opacity:0;transform:translate(-30px)}}.fx-no-transitions .welcome-step{animation:none}.welcome-emoji{background:var(--surface);border:2px solid var(--ink);width:84px;height:84px;box-shadow:4px 4px 0 var(--ink);animation:cover-in .6s var(--spring) both;border-radius:26px;place-items:center;font-size:2.8rem;display:grid;transform:rotate(-5deg)}.welcome-title{margin:4px 0 0;font-size:clamp(1.8rem,6vw,2.5rem);font-weight:800;line-height:1.04}.welcome-title em{color:var(--accent);font-style:normal}.welcome-lead{color:var(--muted);max-width:52ch;margin:0;font-size:1.02rem;line-height:1.55}.welcome-nav{bottom:calc(env(safe-area-inset-bottom) + 12px);background:color-mix(in srgb, var(--surface) 85%, transparent);border:1.5px solid var(--border);-webkit-backdrop-filter:blur(12px);border-radius:18px;justify-content:flex-end;gap:10px;margin-top:6px;padding:10px;display:flex;position:sticky}.welcome-nav .btn-primary{flex:1;max-width:300px}.howto{counter-reset:h;flex-direction:column;gap:10px;margin:4px 0 8px;padding-left:0;list-style:none;display:flex}.howto li{counter-increment:h;align-items:flex-start;gap:10px;display:flex}.howto li:before{content:counter(h);background:var(--accent);width:26px;height:26px;color:var(--accent-text);border:1.5px solid var(--ink);border-radius:8px;flex-shrink:0;place-items:center;font-size:.85rem;font-weight:800;display:grid}.admin-head{flex-direction:column;gap:6px;display:flex}.user-row{border-radius:14px;margin:0 -12px;transition:background .2s;padding:14px 12px!important}.user-row:hover{background:var(--surface-2)}.user-row+.user-row{border-top:1px dashed var(--border);border-radius:0}.user-avatar{width:40px;height:40px;font-family:var(--font-display);background:var(--surface-3);color:var(--muted);border:1.5px solid var(--border);border-radius:12px;flex-shrink:0;place-items:center;font-weight:800;display:grid}.user-avatar.member{background:var(--accent);color:var(--accent-text);border-color:var(--ink)}.user-avatar.owner{background:var(--accent-2);color:#1b1300;border-color:var(--ink)}.user-usage{flex-wrap:wrap;gap:14px;display:flex}.mini-meter{color:var(--muted);align-items:center;gap:6px;font-size:.8rem;display:inline-flex}.mini-meter i{background:var(--surface-3);border-radius:6px;width:64px;height:6px;font-style:normal;display:inline-block;position:relative;overflow:hidden}.mini-meter i b{background:var(--ok);border-radius:6px;position:absolute;inset:0 auto 0 0}.mini-meter.full i b{background:var(--accent)}.source-row{border-radius:14px;margin:0 -12px;padding:14px 12px!important}.source-row:hover{background:var(--surface-2)}.source-favicon{width:40px;height:40px;font-family:var(--font-display);background:var(--surface-3);border:1.5px solid var(--border);text-transform:uppercase;border-radius:12px;flex-shrink:0;place-items:center;font-weight:800;display:grid}.source-row.ok .source-favicon{background:var(--ok);color:#fff;border-color:var(--ink)}.source-row-head{gap:12px!important}.source-row-head>.usage-text{flex:1}.stat-hero{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.stat-hero strong{font-family:var(--font-display);font-size:2.6rem;font-weight:800;line-height:1}.pulse-dot{background:var(--ok);width:10px;height:10px;box-shadow:0 0 0 0 color-mix(in srgb, var(--ok) 60%, transparent);border-radius:50%;animation:1.8s infinite pulse;display:inline-block}@keyframes pulse{70%{box-shadow:0 0 0 10px #0000}to{box-shadow:0 0 #0000}}@media (width>=640px){.about-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}html{background:var(--bg)}body{background:0 0}html,body,.route{overflow-x:clip}.profile-avatar img{object-fit:cover;border-radius:50%;display:block}.series-backdrop{height:480px;top:-160px;left:-140px;right:-140px;-webkit-mask-image:radial-gradient(45% 50% at 32% 48%,#000 25%,#0000 72%);mask-image:radial-gradient(45% 50% at 32% 48%,#000 25%,#0000 72%)}.toast{width:max-content;max-width:calc(100vw - 24px)}.toast>span{overflow-wrap:anywhere;min-width:0}.toast.hiding{animation:toast-out .3s var(--ease) forwards}@keyframes toast-out{to{opacity:0;transform:translate(-50%,-30px)}}.tabbar{bottom:max(6px, calc(env(safe-area-inset-bottom) - 12px))}.dlbar.raised{bottom:calc(max(6px, calc(env(safe-area-inset-bottom) - 12px)) + var(--tabbar-h) + 10px)}.reader-bottom{padding-bottom:max(8px, calc(env(safe-area-inset-bottom) - 10px))}.addlink input::placeholder{color:color-mix(in srgb, var(--muted) 70%, transparent);font-weight:500}.typing-caret:after{content:"▍";animation:1s step-end infinite blink}@keyframes blink{50%{opacity:0}}.dlbar{max-width:min(580px,100vw - 24px)}.pview{position:relative}.pnav{z-index:4;cursor:pointer;color:#fff;-webkit-backdrop-filter:blur(6px);opacity:.55;width:52px;height:92px;transition:opacity .2s, background .2s, transform .2s var(--ease);background:#14121a73;border:0;place-items:center;margin-top:-46px;display:grid;position:fixed;top:50%}.pnav-left{border-radius:0 18px 18px 0;left:0}.pnav-right{border-radius:18px 0 0 18px;right:0}.pnav:hover:not(:disabled){opacity:1;background:var(--accent);color:#1a0805}.pnav:active:not(:disabled){transform:scale(.94)}.pnav:disabled{opacity:.12;cursor:default}.pcount{left:50%;bottom:max(14px, calc(env(safe-area-inset-bottom) - 6px));z-index:4;color:#ece6dc;font-variant-numeric:tabular-nums;pointer-events:none;background:#14121a99;border-radius:999px;padding:4px 12px;font-size:.8rem;font-weight:700;position:fixed;transform:translate(-50%)}.navbtn-download .navbtn-arrow{background:var(--ok)!important;color:#fff!important}.navbtn-busy{opacity:.85!important}.navbtn-busy .navbtn-arrow{background:#2a2631!important;border:0!important}.navbtn-busy .spinner{width:18px;height:18px}@media (width<=480px){.reader-bottom{grid-template-columns:1fr auto 1fr;gap:6px;padding-left:8px;padding-right:8px}.navbtn{gap:6px;min-height:48px;padding:4px 8px 4px 4px}.navbtn-next{padding:4px 4px 4px 8px}.navbtn-text{display:flex}.navbtn-label{font-size:.6rem}.navbtn-title{max-width:24vw;font-size:.78rem}.navbtn-arrow{border-radius:10px;width:34px;height:34px}.reader-bottom .seg button{min-height:34px;padding:6px 8px;font-size:.8rem}}.profile-menu{position:relative}.avatar-btn{cursor:pointer;color:var(--text);font:inherit}.avatar-btn.on{border-color:var(--accent)}.avatar-btn .select-caret{margin-left:-2px}.profile-menu.open .select-caret{color:var(--accent);transform:rotate(-90deg)}.avatar-btn .avatar{border-width:1.5px}@media (width<=520px){.avatar-name{display:none}.avatar-btn{padding-right:8px}}.menu-pop{z-index:40;background:var(--surface);border:2px solid var(--ink);min-width:230px;box-shadow:5px 5px 0 var(--ink);transform-origin:100% 0;animation:select-in .3s var(--spring);border-radius:18px;padding:6px;position:absolute;top:calc(100% + 10px);right:0}.menu-head{border-bottom:1px dashed var(--border);flex-direction:column;gap:1px;margin-bottom:4px;padding:8px 10px 10px;display:flex}.menu-head strong{font-family:var(--font-display)}.menu-item{cursor:pointer;width:100%;min-height:44px;color:var(--text);text-align:left;animation:card-in .25s var(--ease) both;animation-delay:calc(var(--i) * 30ms);background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:0 10px;font-size:.95rem;font-weight:650;display:flex}.menu-item svg{color:var(--muted)}.menu-item:hover{background:var(--surface-2)}.menu-item:hover svg{color:var(--accent)}.menu-sep{background:var(--border);height:1px;margin:4px 6px}.name-row{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.name-row strong{font-family:var(--font-display);overflow-wrap:anywhere;font-size:1.35rem;font-weight:800;line-height:1.1}.name-edit{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.name-edit input{border:1.5px solid var(--accent);background:var(--bg);min-width:140px;min-height:40px;color:var(--text);border-radius:10px;flex:1;padding:0 12px;font-size:16px;font-weight:700}.auth-privacy{text-align:center;margin:8px 0 0}.series-actions{flex-wrap:wrap;gap:10px;display:flex}.series-actions>.btn-primary{flex:260px}.series-actions>.site-btn{flex:0 auto}@media (width<=520px){.series-actions>.site-btn{flex:100%}}.show-all{border-style:dashed}.show-more{align-self:flex-start;margin:4px 0 6px}.panel .linkbtn{align-self:flex-start}.sk-title{border-radius:8px;width:70%;height:28px;margin:4px 0 10px}.dialog-body{align-items:flex-start;gap:14px;padding:4px 0 6px;display:flex}.dialog-icon{background:var(--surface-2);border:1.5px solid var(--border);width:52px;height:52px;animation:stamp .45s var(--spring);border-radius:16px;flex-shrink:0;place-items:center;font-size:1.6rem;display:grid}.dialog-text p{margin:0 0 8px;line-height:1.55}.dialog-text p:last-child{margin-bottom:0}.btn-danger{background:var(--danger)!important;color:#fff!important}.notes{z-index:70;left:50%;top:calc(env(safe-area-inset-top) + 66px);pointer-events:none;flex-direction:column;gap:8px;width:min(440px,100vw - 20px);display:flex;position:fixed;transform:translate(-50%)}.note{pointer-events:auto;background:var(--surface);border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink);animation:note-in .45s var(--spring);border-radius:16px;align-items:flex-start;gap:10px;padding:12px 8px 14px 12px;display:flex;position:relative;overflow:hidden}.note.leaving{animation:note-out .28s var(--ease) forwards}@keyframes note-in{0%{opacity:0;transform:translateY(-16px)scale(.96)}}@keyframes note-out{to{opacity:0;transform:translateY(-12px)scale(.97)}}.note-icon{background:var(--surface-3);border:1.5px solid var(--ink);border-radius:9px;flex-shrink:0;place-items:center;width:26px;height:26px;font-size:.9rem;font-weight:900;display:grid}.note-ok .note-icon{background:var(--ok);color:#fff}.note-error .note-icon{background:var(--danger);color:#fff}.note-warn .note-icon{background:var(--accent-2);color:#1b1300}.note-info .note-icon{background:var(--accent);color:var(--accent-text)}.note-text{flex-direction:column;flex:1;gap:2px;min-width:0;padding-top:2px;display:flex}.note-text strong{font-family:var(--font-display)}.note-text .small{color:var(--muted);overflow-wrap:anywhere}.note-text .linkbtn{align-self:flex-start}.note-close{flex-shrink:0;width:32px;height:32px}.note-timer{transform-origin:0;background:var(--accent);width:100%;height:4px;animation:linear forwards note-timer;position:absolute;bottom:0;left:0}.note-ok .note-timer{background:var(--ok)}.note-error .note-timer{background:var(--danger)}.note-warn .note-timer{background:var(--accent-2)}.note.paused .note-timer{animation-play-state:paused}@keyframes note-timer{to{transform:scaleX(0)}}.reduce-motion .note-timer{animation-duration:inherit!important}.dlbar{overflow:hidden}.dl-timer{background:var(--ok)}.blocked-bar{background:color-mix(in srgb, var(--danger) 16%, var(--bg))}.log-verdict{border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);background:var(--surface-2);animation:stamp .45s var(--spring);border-radius:16px;align-items:flex-start;gap:12px;margin:4px 0 12px;padding:14px;display:flex}.log-verdict.v-ok{background:color-mix(in srgb, var(--ok) 14%, var(--surface))}.log-verdict.v-blocked,.log-verdict.v-protected,.log-verdict.v-error{background:color-mix(in srgb, var(--danger) 10%, var(--surface))}.log-verdict-icon{font-size:1.8rem;line-height:1}.log-verdict strong{font-family:var(--font-display);font-size:1.1rem}.log-verdict p{margin:4px 0 0}.log-head{justify-content:space-between;padding:4px 0 6px;display:flex}.log{color:#e6e0d6;background:#0d0b11;border-radius:14px;max-height:46vh;margin:0;padding:8px;font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:.78rem;list-style:none;overflow-y:auto}.log-step{animation:card-in .25s var(--ease);border-radius:8px;grid-template-columns:40px 20px 1fr;gap:6px;padding:5px 4px;display:grid}.log-step+.log-step{border-top:1px solid #1d1a23}.log-t{color:#6f6979;text-align:right;font-variant-numeric:tabular-nums}.log-i{place-items:center;font-weight:900;display:grid}.log-i .spinner{width:13px;height:13px}.log-body{flex-direction:column;min-width:0;display:flex}.log-title{overflow-wrap:anywhere}.log-detail{color:#a39cab;overflow-wrap:anywhere}.l-ok .log-i{color:#41d99c}.l-fail .log-i,.l-fail .log-title{color:#ff6b5e}.l-warn .log-i,.l-warn .log-title{color:#ffcf3a}.l-info .log-title{color:#a39cab}.l-run .log-title{color:#fff;font-weight:700}.log-end{height:1px}.hello{gap:14px;display:grid}.hello-hero{isolation:isolate;background:var(--surface-2,var(--surface));border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink);border-radius:18px;padding:18px 16px;position:relative;overflow:hidden}.hello-hero:before{content:"";z-index:-1;opacity:.6;background:repeating-conic-gradient(from 0deg at 90% 20%, var(--tone) 0 2deg, transparent 2deg 7deg);position:absolute;inset:-60%}.hello-hero h3{margin:8px 0;font-size:clamp(1.5rem,6vw,2rem);font-weight:800;line-height:1.02}.hello-hero h3 em{color:var(--accent);font-style:normal}.hello-hero p{color:var(--muted);margin:0}.hello-steps{gap:8px;margin:0;padding:0;list-style:none;display:grid}.hello-steps li{border:1.5px solid var(--border);animation:rise-in .45s var(--spring) both;animation-delay:calc(.15s + var(--i) * 90ms);border-radius:14px;align-items:center;gap:12px;padding:10px 12px;display:flex}.hello-steps strong{font-family:var(--font-display)}.hello-steps p{margin:2px 0 0}.hello-emoji{background:var(--accent-soft);border:1.5px solid var(--ink);width:40px;height:40px;box-shadow:2px 2px 0 var(--ink);border-radius:12px;flex:none;place-items:center;font-size:1.3rem;display:grid}.hello-note{margin:0}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}}.modal:has(.hello) .modal-foot .btn{flex:140px;justify-content:center}html{scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--text) 30%, transparent) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--text) 26%, transparent);background-clip:padding-box;border:3px solid #0000;border-radius:10px}::-webkit-scrollbar-thumb:hover{background-color:var(--accent);border-width:2px}::-webkit-scrollbar-corner{background:0 0}.site-footer{max-width:960px;padding:0 16px calc(env(safe-area-inset-bottom) + var(--tabbar-h) + 34px);margin:-70px auto 0}.site-footer-inner{text-align:center;border-top:1.5px dashed var(--border);justify-items:center;gap:8px;padding:18px 12px 0;display:grid;position:relative}.site-footer-links{flex-wrap:wrap;justify-content:center;gap:4px 18px;display:flex}.site-footer-links a,.site-footer-links .linkbtn{color:var(--muted);padding:4px 0;font-size:.88rem;font-weight:650;text-decoration:none}.site-footer-links a:hover{color:var(--text)}.site-footer-links .linkbtn{color:var(--accent)}.site-footer-sign{color:var(--muted);margin:0;font-size:.86rem}.site-footer-meta{color:color-mix(in srgb, var(--muted) 75%, transparent);margin:0;font-size:.74rem}@media (width>=900px){.site-footer{padding-bottom:calc(env(safe-area-inset-bottom) + 28px);margin-top:-24px}}.feedback-form{gap:12px;display:grid}.feedback-form .field{gap:6px;display:grid;position:relative}.feedback-form input,.feedback-form textarea{border:1.5px solid var(--border);background:var(--bg);color:var(--text);font:inherit;border-radius:12px;font-size:16px;transition:border-color .2s,box-shadow .2s}.feedback-form input{min-height:46px;padding:0 14px}.feedback-form textarea{resize:vertical;min-height:110px;padding:10px 14px;line-height:1.5}.feedback-form input:focus,.feedback-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);outline:none}.feedback-count{font-variant-numeric:tabular-nums;justify-self:end}.feedback-kinds{flex-wrap:wrap;gap:6px;display:flex}.fb-list{gap:12px;display:grid}.fb-item{gap:8px}.fb-new{border-color:var(--accent);box-shadow:4px 4px 0 var(--accent)}.fb-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.fb-message{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.55}.fb-meta{gap:2px;margin:0;display:grid}.fb-meta div{gap:6px;min-width:0;display:flex}.fb-meta dt{flex:none;font-weight:700}.fb-meta dd{overflow-wrap:anywhere;min-width:0;margin:0}.fb-actions{flex-wrap:wrap;gap:6px;display:flex}.legal .panel p,.legal .panel li{line-height:1.65}.legal .panel p{margin:0}.legal .panel ul{gap:6px;margin:0;padding-left:20px;display:grid}.legal-head h1{margin:8px 0 6px;font-size:clamp(1.8rem,5vw,2.4rem)}.legal-head p{margin:0}.notice-line{align-items:center;gap:8px;margin:0 0 6px;font-weight:600;display:flex}.bang{background:var(--accent);width:22px;height:22px;color:var(--accent-text);border:1.5px solid var(--ink);box-shadow:2px 2px 0 var(--ink);border-radius:50%;flex:none;place-items:center;font-size:.8rem;font-weight:900;display:grid}.status-badge{width:fit-content;animation:pop-in .35s var(--spring);margin-top:6px;display:inline-flex}.welcome-progress{flex-direction:column;flex:1;justify-content:center;gap:6px;min-width:0;padding:0 6px;display:flex}.welcome-progress .small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.welcome-progress b{color:var(--text);font-family:var(--font-display);font-size:1rem}.welcome-progress-bar{background:var(--surface-2);border-radius:6px;max-width:220px;height:6px;overflow:hidden}.welcome-progress-bar span{background:var(--accent);border-radius:inherit;height:100%;transition:width .4s var(--ease);display:block}.quick-search{max-width:460px;color:var(--muted);background:var(--bg);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);transition:box-shadow .2s var(--ease), transform .2s var(--ease);border-radius:14px;align-items:center;gap:8px;margin:0 0 14px;padding:4px 4px 4px 14px;display:flex}.quick-search:focus-within{box-shadow:4px 4px 0 var(--accent);transform:translate(-1px,-1px)}.quick-search input{min-width:0;color:var(--text);min-height:40px;box-shadow:none;background:0 0;border:0;outline:none;flex:1;padding:0;font-size:16px}.quick-search input:focus{box-shadow:none}.hero .about-kicker{margin-bottom:10px}.how-strip{grid-template-columns:repeat(3,1fr);gap:10px;margin:0;padding:0;list-style:none;display:grid}.how-strip li{background:var(--surface);border:1.5px solid var(--border);animation:rise-in .45s var(--spring) both;animation-delay:calc(var(--i) * 80ms);border-radius:16px;align-items:center;gap:10px;padding:12px;display:flex}.how-strip li>span{font-size:1.4rem}.how-strip li div{flex-direction:column;min-width:0;display:flex}.how-strip strong{font-family:var(--font-display)}@media (width<=560px){.how-strip{grid-template-columns:1fr;gap:6px}.how-strip li{padding:10px 12px}}.source-strip{flex-wrap:wrap;align-items:center;gap:6px;margin:-4px 0 0;display:flex}.hero-lib{padding-bottom:18px}.hero-lib h2{max-width:16ch;font-size:clamp(1.6rem,5vw,2.3rem)}.hero-stack-letter{font-family:var(--font-display);color:var(--muted);place-items:center;font-size:2.6rem;font-weight:800;display:grid}.lib-stats{flex-wrap:wrap;gap:6px;max-width:460px;margin:12px 0 16px;padding:0;list-style:none;display:flex}.lib-stats li{background:var(--surface-2);border:1.5px solid var(--border);color:var(--muted);border-radius:999px;padding:4px 10px;font-size:.85rem}.lib-stats b{color:var(--text);font-family:var(--font-display)}.lib-stats .lib-stat-new{background:color-mix(in srgb, var(--accent-2) 22%, var(--surface));border-color:var(--accent-2)}.hero-lib .quick-search{margin-bottom:0}@media (width<=640px){.hero-lib{padding-top:200px}}.discover{border-top:1.5px dashed var(--border);flex-direction:column;gap:18px;margin-top:18px;padding-top:18px;display:flex}.about-why{align-items:center;gap:22px;display:grid}.about-why-text{flex-direction:column;gap:10px;min-width:0;display:flex}.about-why-text>p{color:var(--muted);margin:0;font-size:1.02rem;line-height:1.65}@media (width>=760px){.about-why{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}}.ticket{background:var(--surface);border:2px solid var(--ink);box-shadow:6px 6px 0 var(--ink);transition:transform .35s var(--spring);border-radius:20px;flex-direction:column;gap:14px;padding:18px;display:flex;position:relative;transform:rotate(1.5deg)}.ticket:hover{transform:rotate(0)translateY(-3px)}.ticket:before{content:"";border-radius:inherit;pointer-events:none;opacity:.8;background:radial-gradient(var(--tone) 1.4px, transparent 1.6px) 0 0 / 9px 9px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(135deg,#0000 55%,#000 100%);mask-image:linear-gradient(135deg,#0000 55%,#000 100%)}.ticket-top{justify-content:space-between;align-items:center;display:flex}.ticket-label{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:800}.ticket-top .ticket-label{color:var(--accent)}.ticket-stamp{border:2px solid var(--accent);width:40px;height:40px;color:var(--accent);font-family:var(--font-display);border-radius:50%;place-items:center;font-size:.85rem;font-weight:900;display:grid;transform:rotate(-14deg)}.ticket-route{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;display:grid}.ticket-route>div{flex-direction:column;display:flex}.ticket-route>div:last-child{text-align:right}.ticket-route strong{font-family:var(--font-display);letter-spacing:-.03em;font-size:2.2rem;font-weight:800;line-height:1}.ticket-plane{font-size:1.5rem;animation:4s ease-in-out infinite float}.ticket-grid{grid-template-columns:1fr 1fr;gap:10px 14px;margin:0;display:grid}.ticket-grid div{flex-direction:column;gap:2px;display:flex}.ticket-grid dt{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:800}.ticket-grid dd{font-family:var(--font-display);margin:0;font-weight:700}.ticket-tear{border-top:2px dashed var(--border);height:0;margin:0 -18px;position:relative}.ticket-foot{align-items:center;gap:8px;margin:0;font-weight:700;display:flex}.ticket-check{color:#fff;border:1.5px solid var(--ink);background:#2f9e5b;border-radius:50%;place-items:center;width:22px;height:22px;font-size:.75rem;display:grid}.about-cta-note{margin:14px 0 0}.ad-slot{border-radius:16px;place-items:center;min-height:100px;margin:8px 0;display:grid;overflow:hidden}
