*,:before,:after{box-sizing:border-box}:root{--bg:#1b1d22;--bg-elevated:#21242b;--bg-card:#262a32;--bg-input:#171a20;--bg-deep:#13151a;--bg-stripe:#1f2228;--border:#2c313a;--border-hover:#3a4150;--border-strong:#4a5468;--border-inset:#ffffff0a;--text:#d4d8e0;--text-secondary:#a8aebb;--text-muted:#828998;--text-faint:#5f6675;--text-subtle:#464c58;--heading:#ebeef3;--primary:#5589c4;--primary-hover:#6a9bd2;--primary-active:#4a7bb4;--primary-ink:#f4f8ff;--accent-blue-bg:#1d2832;--accent-blue-border:#2e4055;--accent-blue-text:#7ba8d4;--accent-red-bg:#2a1a1c;--accent-red-border:#5a2e30;--accent-red-text:#c47a78;--accent-green-bg:#18241b;--accent-green-border:#2e4a32;--accent-green-text:#7ab088;--accent-amber-bg:#251f15;--accent-amber-border:#4a3e22;--accent-amber-text:#c89846;--error:#c66060;--score-yellow:#d4a557;--link:#7ba8d4;--link-visited:#9a87c8;--shadow:0 1px 0 #0006;--inset-hi:inset 0 1px 0 #ffffff0a;--r-xs:2px;--r-sm:3px;--r-md:4px;--r-lg:6px;--font-ui:"IBM Plex Sans", "Segoe UI", Tahoma, Verdana, sans-serif;--font-mono:"IBM Plex Mono", "Consolas", "Courier New", monospace}@media (prefers-color-scheme:light){:root{--bg:#e8eaef;--bg-elevated:#f3f4f7;--bg-card:#fff;--bg-input:#fff;--bg-deep:#dadde3;--bg-stripe:#eef0f4;--border:#c5cad3;--border-hover:#9aa2b0;--border-strong:#6e7585;--border-inset:#0000000a;--text:#1d2128;--text-secondary:#3a4050;--text-muted:#555c6c;--text-faint:#767d8c;--text-subtle:#9ba1ad;--heading:#0d1018;--primary:#2d68a8;--primary-hover:#1f5896;--primary-active:#174a82;--primary-ink:#fff;--accent-blue-bg:#dde8f3;--accent-blue-border:#8baacd;--accent-blue-text:#1d4a7a;--accent-red-bg:#f5dcdc;--accent-red-border:#c48a8a;--accent-red-text:#8a2828;--accent-green-bg:#dde9d8;--accent-green-border:#8aae82;--accent-green-text:#2a5a2a;--accent-amber-bg:#f3e8c8;--accent-amber-border:#c8a85a;--accent-amber-text:#6a4a10;--error:#a83030;--score-yellow:#8a5a10;--link:#1d4a7a;--link-visited:#5a3a8a;--shadow:0 1px 0 #0000000f;--inset-hi:inset 0 1px 0 #fff9}}html{font-size:13px}body{font-family:var(--font-ui);background:var(--bg);color:var(--text);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-feature-settings:"cv11" on, "ss01" on;font-variant-numeric:tabular-nums;min-height:100vh;margin:0;font-size:13px;font-weight:400;line-height:1.45}a{color:var(--link);text-decoration:none}a:hover{text-underline-offset:2px;text-decoration:underline}::selection{background:var(--accent-blue-border);color:var(--heading)}.app{max-width:1240px;margin:0 auto;padding:24px 20px 64px}.app-layout{display:block}.app-main{min-width:0}.header{margin-bottom:24px}.header-top{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:6px;display:flex}.header-counters{flex-wrap:wrap;gap:6px;margin-left:auto;display:flex}h1{font-family:var(--font-ui);letter-spacing:-.02em;color:var(--heading);text-shadow:0 1px #0006;margin:0;font-size:24px;font-weight:700;line-height:1}@media (prefers-color-scheme:light){h1{text-shadow:0 1px #ffffffb3}}.badge{font-family:var(--font-mono);border-radius:var(--r-xs);background:var(--bg-card);color:var(--text-muted);border:1px solid var(--border);letter-spacing:0;font-variant-numeric:tabular-nums;align-items:baseline;gap:4px;padding:3px 8px;font-size:11px;font-weight:500;line-height:1.55;display:inline-flex}.badge b{color:var(--heading);font-variant-numeric:tabular-nums;font-weight:700}.badge-online{color:var(--accent-green-text);border-color:var(--accent-green-border);background:var(--accent-green-bg)}.badge-filter{color:var(--accent-blue-text);border-color:var(--accent-blue-border);background:var(--accent-blue-bg)}.badge-filter b{color:var(--accent-blue-text)}.subtitle{color:var(--text-secondary);max-width:580px;margin:0 0 4px;font-size:13px;line-height:1.55}.subtitle-note{font-family:var(--font-mono);color:var(--text-faint);letter-spacing:0;opacity:.7;max-width:580px;margin:0 0 16px;font-size:10.5px;line-height:1.5}.subtitle-warn{color:var(--text-faint);font-style:italic}.anime-day{border:1px solid var(--border);border-radius:var(--r-md);background:linear-gradient(135deg, var(--bg-elevated) 0%, var(--bg-card) 100%);grid-template-columns:200px minmax(0,1fr);align-items:center;gap:28px;margin:0 0 32px;padding:24px 26px;display:grid;position:relative;overflow:hidden}.anime-day:after{content:"";pointer-events:none;background:radial-gradient(circle at 8% 0,#5589c412 0%,#0000 50%);position:absolute;inset:0}.anime-day-poster-wrap{width:200px;position:relative}.anime-day-poster{aspect-ratio:2/3;object-fit:cover;border-radius:var(--r-sm);background:var(--bg-deep);border:1px solid var(--border-hover);width:200px;box-shadow:0 6px 20px #00000073, var(--inset-hi);display:block}.anime-day-poster-empty{color:var(--text-faint);font-family:var(--font-mono);border-style:dashed;border-color:var(--border);flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex}.anime-day-copy{z-index:1;flex-direction:column;gap:8px;min-width:0;display:flex;position:relative}.anime-day-kicker{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--primary);align-items:center;gap:6px;margin:0 0 2px;font-size:10.5px;font-weight:600;display:inline-flex}.kicker-dot{color:var(--primary);font-size:8px;animation:2.4s ease-in-out infinite kickerPulse}@keyframes kickerPulse{0%,to{opacity:.4}50%{opacity:1}}.anime-day-title{color:var(--heading);letter-spacing:-.022em;font-feature-settings:"cv11" on, "ss01" on;margin:0;font-size:26px;font-weight:700;line-height:1.15}.anime-day-original{font-family:var(--font-mono);color:var(--text-faint);margin:0;font-size:12px;font-style:italic;line-height:1.3}.anime-day-meta-line{color:var(--text-muted);flex-wrap:wrap;align-items:baseline;gap:8px;margin:6px 0 0;font-size:13px;line-height:1.5;display:flex}.meta-sep{color:var(--text-subtle);font-size:11px}.meta-score{color:var(--score-yellow);font-family:var(--font-mono);letter-spacing:.02em;background:var(--accent-amber-bg);border:1px solid var(--accent-amber-border);border-radius:var(--r-xs);padding:2px 7px;font-size:12.5px;font-weight:700;line-height:1.3}.anime-day-cta{flex-wrap:wrap;align-items:center;gap:14px;margin-top:14px;display:flex}.anime-day-hint{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.01em;font-size:11px}@media (width<=640px){.anime-day{grid-template-columns:130px minmax(0,1fr);gap:16px;padding:16px}.anime-day-poster,.anime-day-poster-wrap{width:130px}.anime-day-title{font-size:20px}}@media (width<=420px){.anime-day{grid-template-columns:1fr}.anime-day-poster-wrap{justify-self:center;width:140px}.anime-day-poster{width:140px}}.actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.actions-toolbar{box-shadow:none;background:0 0;border:none;gap:8px;padding:0}.actions-spacer{flex:1}@media (width<=720px){.actions-spacer{display:none}}.auth-chip{border-radius:var(--r-sm);background:var(--accent-green-bg);border:1px solid var(--accent-green-border);height:26px;color:var(--accent-green-text);font-family:var(--font-mono);letter-spacing:.01em;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;max-width:180px;padding:0 10px;font-size:11.5px;font-weight:500;display:inline-flex;overflow:hidden}.auth-chip-dot{color:var(--accent-green-text);font-size:8px}.overflow-menu{margin-left:auto;position:relative}.overflow-menu summary{cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none}.overflow-menu summary::-webkit-details-marker{display:none}.overflow-menu summary::marker{content:"";display:none}.overflow-trigger{height:26px}.overflow-caret{color:var(--text-faint);margin-left:2px;font-size:9px;transition:transform .12s cubic-bezier(.4,0,.2,1)}.overflow-menu[open] .overflow-caret{transform:rotate(180deg)}.overflow-menu[open] .overflow-trigger{background:var(--bg-elevated);border-color:var(--border-hover);color:var(--text)}.overflow-panel{background:var(--bg-card);border:1px solid var(--border-strong);border-radius:var(--r-md);min-width:200px;box-shadow:0 8px 24px #00000073, var(--inset-hi);z-index:50;flex-direction:column;gap:1px;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);right:0}.overflow-item{color:var(--text);font-family:var(--font-ui);text-align:left;cursor:pointer;border-radius:var(--r-xs);background:0 0;border:none;align-items:center;gap:8px;width:100%;padding:7px 10px;font-size:12.5px;font-weight:500;line-height:1.4;transition:background 60ms;display:flex}.overflow-item:hover:not(:disabled){background:var(--bg-elevated)}.overflow-item:disabled{opacity:.4;cursor:not-allowed}.overflow-sep{background:var(--border);height:1px;margin:4px 6px;display:block}.section-head{justify-content:space-between;align-items:flex-end;gap:12px;margin:0 0 14px;display:flex}.section-kicker{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--primary);margin:0 0 3px;font-size:10px;font-weight:600}.section-title{color:var(--heading);letter-spacing:-.012em;margin:0;font-size:18px;font-weight:700;line-height:1.2}.section-sub{font-family:var(--font-mono);color:var(--text-faint);letter-spacing:0;min-height:1em;margin:4px 0 0;font-size:11px}.section-sub-sep{color:var(--text-subtle)}.section-count{font-family:var(--font-mono);color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px}.section-link{font-family:var(--font-mono);color:var(--link);white-space:nowrap;border-radius:var(--r-xs);padding:4px 8px;font-size:11px;text-decoration:none;transition:background 80ms,color 80ms}.section-link:hover{background:var(--accent-blue-bg);color:var(--primary-hover);text-decoration:none}.presets-row{margin:0 0 28px}.presets-chips{flex-wrap:wrap;gap:6px;display:flex}.results{margin:0}.btn{border-radius:var(--r-sm);font-family:var(--font-ui);border:1px solid var(--border);background:var(--bg-card);color:var(--text);cursor:pointer;white-space:nowrap;box-shadow:var(--inset-hi);align-items:center;gap:5px;height:26px;padding:5px 11px;font-size:12px;font-weight:500;line-height:1.5;text-decoration:none;transition:background 80ms cubic-bezier(.4,0,.2,1),border-color 80ms cubic-bezier(.4,0,.2,1),color 80ms cubic-bezier(.4,0,.2,1);display:inline-flex}.btn:hover:not(:disabled):not([aria-disabled=true]){border-color:var(--border-hover);background:var(--bg-elevated)}.btn:active:not(:disabled){background:var(--bg-input);box-shadow:none}.btn:focus-visible{outline:1px solid var(--primary);outline-offset:1px}.btn:disabled,.btn[aria-disabled=true]{opacity:.42;cursor:not-allowed}.btn-primary{background:var(--primary);color:var(--primary-ink);border-color:var(--primary-active);font-weight:600}.btn-primary:hover:not(:disabled):not([aria-disabled=true]){background:var(--primary-hover);border-color:var(--primary-active);color:var(--primary-ink)}.btn-primary:active:not(:disabled){background:var(--primary-active)}.btn-filter-on{background:var(--accent-blue-bg);color:var(--accent-blue-text);border-color:var(--accent-blue-border)}.btn-ghost{color:var(--text-muted);box-shadow:none;background:0 0}.btn-ghost:hover:not(:disabled){color:var(--text);background:var(--bg-card)}.btn-sm{height:22px;margin-top:10px;padding:3px 8px;font-size:11px}.chevron{color:var(--text-faint);margin-left:2px;font-size:13px;line-height:1;transition:transform .12s cubic-bezier(.4,0,.2,1);display:inline-block;transform:rotate(90deg)}.chevron-up{transform:rotate(-90deg)}.error{font-family:var(--font-mono);color:var(--error);background:var(--accent-red-bg);border-radius:var(--r-sm);border:1px solid var(--accent-red-border);margin-top:12px;padding:7px 10px;font-size:12px}.error:before{content:"! ";font-weight:600}.filters-panel{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-md);margin-bottom:20px;padding:14px 16px 16px;position:relative}.filters-panel:before{content:"FILTERS";font-family:var(--font-mono);letter-spacing:.12em;color:var(--text-faint);background:var(--bg);padding:0 6px;font-size:9.5px;font-weight:600;position:absolute;top:-7px;left:12px}.filters-section{margin-bottom:14px}.filters-section:last-child{margin-bottom:0}.filters-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin:0 0 8px;font-size:10.5px;font-weight:600}.filters-hint{font-family:var(--font-mono);text-transform:none;letter-spacing:0;color:var(--text-subtle);font-size:10.5px;font-weight:400}.filters-row{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}@media (width<=700px){.filters-row{grid-template-columns:1fr;gap:14px}}.tag-list,.kind-list{flex-wrap:wrap;gap:4px;display:flex}.tag,.kind-chip{border-radius:var(--r-xs);cursor:pointer;border:1px solid var(--border);background:var(--bg-card);color:var(--text-muted);-webkit-user-select:none;user-select:none;align-items:center;gap:3px;padding:3px 8px;font-size:11.5px;font-weight:500;line-height:1.5;transition:background 80ms,border-color 80ms,color 80ms;display:inline-flex}.tag:hover,.kind-chip:hover{border-color:var(--border-hover);color:var(--text);background:var(--bg-elevated)}.tag-include,.kind-chip-on{background:var(--accent-blue-bg);border-color:var(--accent-blue-border);color:var(--accent-blue-text);font-weight:600}.tag-exclude{background:var(--accent-red-bg);border-color:var(--accent-red-border);color:var(--accent-red-text);font-weight:600}.tag-prefix{font-family:var(--font-mono);font-size:12px;font-weight:600;line-height:1}.slider{width:100%;height:3px;accent-color:var(--primary);cursor:pointer;margin-top:6px}.grid{grid-template-columns:repeat(6,1fr);gap:16px;display:grid}@media (width<=1100px){.grid{grid-template-columns:repeat(5,1fr);gap:14px}}@media (width<=900px){.grid{grid-template-columns:repeat(4,1fr);gap:14px}}@media (width<=700px){.grid{grid-template-columns:repeat(3,1fr);gap:12px}}@media (width<=480px){.grid{grid-template-columns:repeat(2,1fr);gap:10px}}@media (width<=560px){.app{padding:16px 12px 48px}.anime-day{grid-template-columns:72px minmax(0,1fr);gap:10px;padding:10px}.anime-day-poster{width:72px}h1{font-size:19px}}.anime-card{border-radius:var(--r-sm);background:var(--bg-card);border:1px solid var(--border);color:inherit;will-change:transform;flex-direction:column;text-decoration:none;transition:border-color .14s cubic-bezier(.4,0,.2,1),background .14s cubic-bezier(.4,0,.2,1),transform .16s cubic-bezier(.2,.7,.3,1),box-shadow .16s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden}.anime-card:hover{border-color:var(--border-strong);background:var(--bg-elevated);box-shadow:0 6px 16px #00000052, var(--inset-hi);text-decoration:none;transform:translateY(-2px)}.anime-card:active{transform:translateY(-1px)}@media (prefers-reduced-motion:reduce){.anime-card{transition:border-color .1s,background .1s}.anime-card:hover{transform:none}}.anime-poster-link{color:inherit;text-decoration:none;display:block}.anime-poster-link:hover{text-decoration:none}.anime-poster{aspect-ratio:2/3;background:var(--bg-deep);position:relative;overflow:hidden}.anime-poster img{object-fit:cover;filter:saturate(.92);width:100%;height:100%;transition:opacity .16s,transform .24s cubic-bezier(.2,.7,.3,1),filter .16s;display:block}.anime-card:hover .anime-poster img{filter:saturate(1.05);transform:scale(1.04)}.anime-poster-placeholder{width:100%;height:100%;font-family:var(--font-mono);color:var(--text-faint);background:repeating-linear-gradient(135deg, var(--bg-deep) 0px, var(--bg-deep) 8px, var(--bg-stripe) 8px, var(--bg-stripe) 16px);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:12px;display:flex}.poster-fallback-glyph{color:var(--text-subtle);font-size:28px;font-weight:300;line-height:1}.poster-fallback-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-faint);font-size:9.5px;font-weight:600;line-height:1.2}.poster-fallback-id{color:var(--text-subtle);letter-spacing:.05em;font-size:9.5px}.anime-score{color:var(--score-yellow);font-family:var(--font-mono);border-radius:var(--r-xs);letter-spacing:0;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0a0c10eb;border:1px solid #d4a55766;align-items:center;gap:3px;padding:3px 7px;font-size:11px;font-weight:700;display:inline-flex;position:absolute;top:6px;right:6px;box-shadow:0 1px 4px #00000080}.anime-score-star{font-size:9.5px;line-height:1}@media (prefers-color-scheme:light){.anime-score{color:#6a4a10;background:#fffffff0;border-color:#6a4a1059}}.anime-card-reroll-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:2;background:#080a0eb3;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.reroll-spinner{color:var(--primary);font-size:22px;animation:.9s linear infinite rerollSpin}@keyframes rerollSpin{to{transform:rotate(360deg)}}.anime-meta{flex-direction:column;flex:1;gap:4px;padding:9px 10px 10px;display:flex}.anime-title{color:var(--text);letter-spacing:-.005em;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.6em;margin:0;font-size:12.5px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.anime-card:hover .anime-title{color:var(--heading)}.anime-sub{font-family:var(--font-mono);color:var(--text-subtle);text-transform:uppercase;letter-spacing:.05em;flex-wrap:wrap;align-items:baseline;gap:0;margin:0;font-size:9.5px;font-weight:500;display:inline-flex}.anime-sub-sep{color:var(--text-subtle);margin:0 4px}.anime-vibe{color:var(--text-muted);letter-spacing:0;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:4px 0 0;font-size:11px;line-height:1.4;display:-webkit-box;overflow:hidden}.anime-card:hover .anime-vibe{color:var(--text-secondary)}.skeleton{aspect-ratio:2/3.55;cursor:default;border:1px solid var(--border);background:linear-gradient(110deg, var(--bg-card) 30%, var(--bg-elevated) 50%, var(--bg-card) 70%);border-radius:var(--r-sm);background-size:200% 100%;animation:1.6s linear infinite shimmer}.skeleton:hover{box-shadow:none;border-color:var(--border);transform:none}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.empty{text-align:center;color:var(--text-subtle);font-size:13px;font-family:var(--font-mono);border:1px dashed var(--border);border-radius:var(--r-md);background:var(--bg-elevated);padding:64px 0}.empty p:before{content:"> ";color:var(--text-faint)}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#080a0ebd;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}@media (prefers-color-scheme:light){.modal-backdrop{background:#14161e6b}}.modal{background:var(--bg-elevated);border:1px solid var(--border-strong);border-radius:var(--r-md);width:100%;max-width:460px;box-shadow:var(--inset-hi), 0 8px 24px #00000073;padding:18px 20px 20px}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:10px;display:flex}.modal-header h2{color:var(--heading);letter-spacing:0;margin:0;font-size:14px;font-weight:600}.modal-close{color:var(--text-faint);font-family:var(--font-mono);cursor:pointer;border-radius:var(--r-xs);background:0 0;border:1px solid #0000;padding:2px 6px;font-size:14px;line-height:1}.modal-close:hover{color:var(--text);background:var(--bg-card);border-color:var(--border)}.fb-types{gap:4px;margin-bottom:12px;display:flex}.fb-type-btn{border-radius:var(--r-sm);cursor:pointer;border:1px solid var(--border);background:var(--bg-card);color:var(--text-muted);font-size:11.5px;font-weight:500;font-family:var(--font-ui);flex:1;padding:5px 8px;transition:background 80ms,border-color 80ms,color 80ms}.fb-type-btn:hover{border-color:var(--border-hover);color:var(--text)}.fb-type-btn-on{background:var(--accent-blue-bg);border-color:var(--accent-blue-border);color:var(--accent-blue-text);font-weight:600}.fb-textarea,.fb-input{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--r-sm);width:100%;color:var(--text);font-size:12.5px;font-family:var(--font-ui);box-sizing:border-box;padding:8px 10px;box-shadow:inset 0 1px #0003}.fb-textarea{resize:vertical;min-height:96px;line-height:1.5}.fb-input{padding:6px 10px}.fb-textarea:focus,.fb-input:focus{border-color:var(--primary);box-shadow:inset 0 1px 0 #0003, 0 0 0 2px var(--accent-blue-bg);outline:none}.fb-char{font-family:var(--font-mono);color:var(--text-subtle);text-align:right;margin:3px 0 10px;font-size:10.5px}.modal-done{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:16px 0;display:flex}.modal-done-icon{border-radius:var(--r-sm);background:var(--accent-green-bg);border:1px solid var(--accent-green-border);width:42px;height:42px;color:var(--accent-green-text);justify-content:center;align-items:center;font-size:18px;display:flex}.modal-done p{color:var(--text-secondary);margin:0;font-size:13px}.howto-list{color:var(--text-secondary);margin:0 0 14px;padding-left:18px;font-size:12.5px;line-height:1.65}.howto-list a{color:var(--link)}.howto-code{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--r-xs);font-family:var(--font-mono);color:var(--accent-blue-text);word-break:break-all;margin-top:4px;padding:2px 7px;font-size:11.5px;display:inline-block}.howto-note{font-family:var(--font-mono);color:var(--text-faint);margin:0;font-size:10.5px}.howto-divider{font-family:var(--font-mono);color:var(--text-subtle);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:8px;margin:14px 0;font-size:10px;display:flex}.howto-divider:before,.howto-divider:after{content:"";background:var(--border);flex:1;height:1px}.btn-case{background:var(--accent-amber-bg);color:var(--accent-amber-text);border-color:var(--accent-amber-border);font-weight:600}.btn-case:hover:not(:disabled):not([aria-disabled=true]){background:var(--accent-amber-border);color:#f0c878;border-color:var(--score-yellow)}.app-case-page{max-width:1100px}.case-page{max-width:1000px;margin:0 auto}.case-page-header{border-bottom:1px solid var(--border);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:14px;margin-bottom:18px;padding-bottom:14px;display:grid}.case-page-header h1{margin-bottom:4px}.case-page-header p{color:var(--text-muted);max-width:560px;margin:0;font-size:12.5px;line-height:1.5}.case-page-actions{margin-bottom:14px}.case-presets{flex-wrap:wrap;gap:5px;margin:0 0 16px;display:flex}.case-preset{border-radius:var(--r-sm);background:var(--bg-card);color:var(--text-muted);font-family:var(--font-ui);cursor:pointer;border:1px solid #0000;padding:5px 11px;font-size:12px;font-weight:500;line-height:1.5;transition:border-color .1s,color .1s,background .1s,transform .12s}.case-preset:hover:not(:disabled){border-color:var(--accent-blue-border);color:var(--accent-blue-text);background:var(--accent-blue-bg)}.case-preset:active:not(:disabled){transform:translateY(1px)}.case-preset:disabled{opacity:.42;cursor:not-allowed}.case-panel{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-md);width:100%;padding:20px}.case-page-empty{border:1px dashed var(--border);border-radius:var(--r-md);min-height:240px;color:var(--text-subtle);text-align:center;font-family:var(--font-mono);background:var(--bg-elevated);justify-content:center;align-items:center;font-size:12px;display:flex}.case-page-empty p:before{content:"$ ";color:var(--text-faint)}.case-modal{background:var(--bg-elevated);border:1px solid var(--border-strong);border-radius:var(--r-md);width:100%;max-width:960px;padding:20px;box-shadow:0 8px 24px #00000073}.case-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:10px;display:flex}.case-header h2{color:var(--heading);margin:0;font-size:15px;font-weight:600}.case-roll-window{background:var(--bg-deep);border:1px solid var(--border);border-radius:var(--r-sm);isolation:isolate;height:220px;margin-bottom:14px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #0000004d}.case-pointer{background:var(--score-yellow);z-index:3;pointer-events:none;width:1px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.case-pointer:before,.case-pointer:after{content:"";border-left:5px solid #0000;border-right:5px solid #0000;width:0;height:0;position:absolute;left:50%;transform:translate(-50%)}.case-pointer:before{border-top:7px solid var(--score-yellow);top:0}.case-pointer:after{border-bottom:7px solid var(--score-yellow);bottom:0}.case-reel{will-change:transform;backface-visibility:hidden;flex-wrap:nowrap;align-items:center;gap:10px;width:max-content;min-width:max-content;height:100%;padding:16px;display:flex}.case-item{border-radius:var(--r-sm);background:var(--bg-card);border:1px solid var(--border);flex:none;width:124px;height:186px;position:relative;overflow:hidden}.case-item img{object-fit:cover;backface-visibility:hidden;width:100%;height:100%;display:block}.case-item-placeholder{width:100%;height:100%;font-family:var(--font-mono);color:var(--text-subtle);justify-content:center;align-items:center;font-size:28px;display:flex}.case-item-score{color:var(--score-yellow);font-family:var(--font-mono);border-radius:var(--r-xs);background:#0a0c10d9;padding:1px 5px;font-size:10px;font-weight:600;position:absolute;bottom:4px;right:4px}.case-winner{text-align:center;background:var(--bg-card);border:1px solid var(--accent-amber-border);border-left:2px solid var(--score-yellow);border-radius:var(--r-sm);padding:12px 14px;animation:.35s cubic-bezier(.2,.7,.3,1) winnerFadeIn}.rarity-gray{border-color:#96a0af5c}.rarity-blue{border-color:#6e91c88c}.rarity-purple{border-color:#966ec88c}.rarity-pink{border-color:#c864aa8c}.rarity-red{border-color:#d25a5a99}.rarity-gold{border-color:#d4a557b3}@keyframes winnerFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.case-winner h3{color:var(--heading);margin:0 0 4px;font-size:14px;font-weight:600}.case-winner-sub{font-family:var(--font-mono);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin:0;font-size:11px}@media (width<=700px){.modal-backdrop{padding:10px}.case-modal{max-width:100%;padding:14px}.case-header{margin-bottom:12px}.case-header h2{font-size:14px}.case-roll-window{height:180px;margin-bottom:12px}.case-reel{gap:10px;padding:14px}.case-item{width:104px;height:156px}.case-winner{padding:10px}.case-winner h3{font-size:13px}.case-winner-sub{font-size:10px}}@media (width<=380px){.case-modal{padding:12px}.case-roll-window{height:160px}.case-reel{gap:8px;padding:12px}.case-item{width:92px;height:138px}}.case-loading{color:var(--text-muted);font-family:var(--font-mono);background:var(--bg-deep);z-index:1;justify-content:center;align-items:center;font-size:12px;display:flex;position:absolute;inset:0}.case-loading:before{content:"⟳ ";color:var(--primary);margin-right:4px}.case-header-actions{align-items:center;gap:6px;display:flex}.case-sound-btn{border-radius:var(--r-sm);border:1px solid var(--border);background:var(--bg-card);width:26px;height:26px;color:var(--text);cursor:pointer;justify-content:center;align-items:center;padding:0;font-size:13px;line-height:1;display:inline-flex}.case-sound-btn:hover{border-color:var(--border-hover);background:var(--bg-elevated)}.case-winner-actions{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px;display:grid}.case-winner-actions .btn{justify-content:center;width:100%}@media (width<=520px){.case-winner-actions{grid-template-columns:1fr}}.case-share-status{font-family:var(--font-mono);color:var(--text-faint);margin:8px 0 0;font-size:10.5px}.case-history-list{border:1px solid var(--border);border-radius:var(--r-sm);flex-direction:column;gap:0;max-height:60vh;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.case-history-item{border-bottom:1px solid var(--border);background:var(--bg-card);transition:background 80ms}.case-history-item:nth-child(2n){background:var(--bg-stripe)}.case-history-item:last-child{border-bottom:none}.case-history-item:hover{background:var(--bg-elevated)}.case-history-link{color:inherit;align-items:center;gap:10px;padding:6px 8px;text-decoration:none;display:flex}.case-history-link img,.case-history-placeholder{object-fit:cover;border-radius:var(--r-xs);background:var(--bg-input);border:1px solid var(--border);width:38px;height:52px;color:var(--text-faint);font-family:var(--font-mono);flex-shrink:0;justify-content:center;align-items:center;font-size:16px;display:flex}.case-history-meta{flex:1;min-width:0}.case-history-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin:0 0 1px;font-size:12.5px;font-weight:500;overflow:hidden}.case-history-sub,.case-history-date{font-family:var(--font-mono);color:var(--text-faint);margin:1px 0 0;font-size:10.5px}.stats-section{margin-top:18px}.stats-section h3{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);border-bottom:1px solid var(--border);margin:0 0 10px;padding-bottom:5px;font-size:11px;font-weight:600}.stats-bars{flex-direction:column;gap:0;display:flex}.stats-bar-row{border-radius:var(--r-xs);grid-template-columns:140px 1fr 48px;align-items:center;gap:10px;padding:4px 6px;font-size:12px;display:grid}.stats-bar-row:nth-child(odd){background:var(--bg-stripe)}.stats-bar-label{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stats-bar-track{background:var(--bg-input);border:1px solid var(--border);border-radius:1px;height:6px;overflow:hidden}.stats-bar-fill{background:var(--primary);border-radius:0;height:100%}.stats-bar-count{text-align:right;color:var(--text-muted);font-variant-numeric:tabular-nums;font-family:var(--font-mono);font-size:11.5px}.stats-empty{color:var(--text-faint);font-family:var(--font-mono);margin:0;font-size:11.5px}.stats-loading{color:var(--text-faint);font-family:var(--font-mono);margin:10px 0;font-size:11.5px}.stats-loading:before{content:"⟳ "}.stats-summary{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-sm);flex-wrap:wrap;gap:14px;margin:0 0 14px;padding:10px 12px;list-style:none;display:flex}.stats-summary li{color:var(--text-secondary);font-size:12px;font-family:var(--font-mono)}.stats-summary b{color:var(--heading);margin-right:4px;font-weight:600}.modal-wide{max-width:640px}.oauth-callback{text-align:center;min-height:50vh;font-family:var(--font-mono);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.oauth-callback p{color:var(--text);margin:0;font-size:13px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-deep)}::-webkit-scrollbar-thumb{background:var(--border-hover);border:2px solid var(--bg-deep);border-radius:var(--r-xs)}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}::-webkit-scrollbar-corner{background:var(--bg-deep)}
