:root{color-scheme:light;font-family:Inter,Noto Sans SC,Microsoft YaHei UI,system-ui,sans-serif;color:var(--ink);background:var(--canvas);font-synthesis:none;--ink: #252737;--muted: #686a76;--canvas: #f6f5f2;--paper: #fffefd;--surface-subtle: #f0efec;--line: #e5e3de;--line-strong: #c7c5cf;--accent: #6956d9;--accent-soft: #eeebf8;--coral: #a95843;--shadow-poster: 0 2px 5px rgba(35, 32, 45, .04), 0 8px 20px rgba(35, 32, 45, .06);--shadow-poster-hover: 0 4px 8px rgba(35, 32, 45, .04), 0 12px 26px rgba(35, 32, 45, .08);--shadow-overlay: 0 2px 8px rgba(35, 32, 45, .05), 0 16px 40px rgba(35, 32, 45, .12);--shadow-nav: 0 4px 18px rgba(35, 32, 45, .08);--radius-control: .625rem;--radius-card: .875rem;--radius-panel: 1rem;--radius-pill: 999px;--ease-out: cubic-bezier(.23, 1, .32, 1)}*{box-sizing:border-box}html{scrollbar-color:var(--line-strong) transparent}body{margin:0;min-width:min(320px,100%);min-height:100vh;background-color:var(--canvas);background-image:radial-gradient(ellipse at 82% 0,rgba(213,204,240,.24),transparent 72%);background-size:100% 25rem;background-repeat:no-repeat}button,input,select{font:inherit}button{cursor:pointer;transition:transform .16s var(--ease-out),box-shadow .18s var(--ease-out),background-color .18s ease,border-color .18s ease}button:disabled{cursor:wait;opacity:.64}button:active:not(:disabled){transform:scale(.97)}a{color:inherit}:focus-visible{outline:3px solid rgba(105,86,217,.32);outline-offset:3px}::selection{color:var(--ink);background:#dcd4ff}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{min-height:100vh}.app-sidebar{position:fixed;inset:0 auto 0 0;width:12.5rem;padding:1.75rem 1rem;background:#fffefddb;border-right:1px solid var(--line);-webkit-backdrop-filter:blur(16px) saturate(110%);backdrop-filter:blur(16px) saturate(110%);z-index:5}.brand{display:flex;align-items:center;gap:.72rem;text-decoration:none;padding:0 .6rem 1.85rem;font-size:1.08rem;letter-spacing:-.02em}.brand span{display:grid;place-items:center;width:2.35rem;aspect-ratio:1;border-radius:var(--radius-card);color:#fff;background:linear-gradient(145deg,#363746,#575365);font-weight:700}.app-nav{display:grid;gap:.35rem}.app-nav a{display:flex;align-items:center;gap:.78rem;min-height:3rem;padding:0 .85rem;border-radius:var(--radius-card);color:var(--muted);text-decoration:none;transition:color .18s ease,background-color .18s ease,transform .18s var(--ease-out)}.app-nav a:hover,.app-nav a.is-active{color:var(--accent);background:var(--accent-soft)}.app-main{margin-left:12.5rem;min-height:100vh}.page{width:min(75rem,100%);margin:0 auto;padding:3rem clamp(1.2rem,4vw,4rem) 5rem}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2rem}.page-heading h1{margin:.2rem 0 0;font-size:clamp(2rem,5vw,3.25rem);line-height:1.05;letter-spacing:-.025em;font-weight:700}.eyebrow{margin:0;color:var(--muted);font-size:.78rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.field{display:grid;gap:.45rem;color:var(--muted);font-size:.82rem;font-weight:500}.field input,.field select{min-height:2.8rem;padding:.55rem .75rem;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-control);outline:none}.field input:focus,.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.field--compact select{min-width:9rem}.page--library{padding-top:1.75rem}.page--library .page-heading{flex-direction:row;align-items:center;gap:.75rem;margin-bottom:.55rem}.page--library .page-heading h1{margin:0;font-size:1.75rem;line-height:1.3}.library-refresh{flex-shrink:0;min-height:2.75rem;padding:.5rem .8rem;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-control);font-size:.82rem;font-weight:600}.library-help{position:relative}.library-help>summary{display:grid;place-items:center;list-style:none;cursor:pointer;border-radius:var(--radius-control)}.library-help>summary::-webkit-details-marker{display:none}.library-help[open]>summary{color:var(--accent);background:var(--accent-soft)}.library-seasons{display:grid;gap:1.65rem}.library-help{margin-left:auto}.library-help>summary{width:2.75rem;height:2.75rem;color:var(--muted);font-size:1rem}.library-help p{position:absolute;right:0;top:100%;z-index:4;width:min(17rem,calc(100vw - 2rem));margin:.25rem 0 0;padding:.8rem;line-height:1.6;color:var(--muted);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-overlay)}.library-season h2{margin:0 0 .85rem}.library-season__toggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:2.8rem;padding:.35rem .15rem;color:var(--ink);background:transparent;border:0;text-align:left}.library-season__title{display:flex;align-items:center;gap:.55rem;font-size:1.08rem;font-weight:600;letter-spacing:-.015em}.library-season__title svg{width:1.15rem;height:1.15rem;color:var(--muted);transform:rotate(0);transition:transform .18s var(--ease-out)}.library-season__toggle[aria-expanded=true] .library-season__title svg{transform:rotate(90deg)}.library-season__count{padding:.28rem .55rem;color:var(--muted);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-pill);font-size:.72rem;font-weight:500}.poster-shelf{display:grid;grid-template-columns:repeat(auto-fill,minmax(11.75rem,1fr));gap:clamp(1rem,2vw,1.5rem)}.anime-card{min-width:0}.anime-card__media{position:relative}.anime-card__cover{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:2/3;overflow:hidden;border-radius:var(--radius-card);color:#ffffffe0;background:linear-gradient(145deg,#393c50,#77708f);box-shadow:var(--shadow-poster);text-decoration:none;transition:transform .22s var(--ease-out),box-shadow .22s var(--ease-out)}.anime-card__cover img{width:100%;height:100%;object-fit:cover;transition:transform .24s var(--ease-out)}.anime-card__badge{position:absolute;top:.65rem;left:.65rem;padding:.32rem .55rem;color:#fff;background:#1f202db8;border:1px solid rgba(255,255,255,.18);border-radius:var(--radius-pill);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:.68rem;font-weight:600}.anime-card__delete{position:absolute;top:.6rem;right:.6rem;z-index:2;display:grid;place-items:center;width:2rem;height:2rem;padding:0;color:#fff;background:#1f202db8;border:1px solid rgba(255,255,255,.18);border-radius:var(--radius-control);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.anime-card__delete svg{width:1rem;height:1rem}.anime-card__body{padding:.9rem .15rem}.anime-card__title{display:block;overflow:hidden;font-weight:600;letter-spacing:-.015em;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.anime-card__meta{margin:.3rem 0 .65rem;color:var(--muted);font-size:.78rem}.quick-watch,.primary{border:0;border-radius:var(--radius-control);color:#fff;background:var(--accent);font-weight:600}.quick-watch{width:100%;min-height:2.45rem}.primary{min-height:2.8rem;padding:0 1rem}.anime-card__quiet{display:block;color:var(--muted);font-size:.75rem}.toast,.notice,.alert{margin:0 0 1.2rem;padding:.85rem 1rem;border-radius:var(--radius-card)}.toast,.notice{color:#4a3ba1;background:var(--accent-soft)}.toast{display:flex;justify-content:space-between}.toast button{border:0;color:var(--accent);background:transparent;font-weight:600}.alert{color:#9d3d30;background:#fff0ec}.empty-state{display:grid;place-items:center;gap:.5rem;min-height:18rem;padding:2rem;color:var(--muted);text-align:center;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-panel)}.empty-state strong{color:var(--ink);font-size:1.1rem}.empty-state--library{align-content:center}.empty-state__icon{display:grid;place-items:center;width:3.25rem;aspect-ratio:1;margin-bottom:.5rem;color:var(--accent);background:var(--accent-soft);border-radius:var(--radius-card);font-size:1.5rem}.empty-state__action{margin-top:.75rem;padding:.72rem 1rem;color:#fff;background:var(--accent);border-radius:var(--radius-control);font-size:.86rem;font-weight:600;text-decoration:none;transition:transform .16s var(--ease-out),box-shadow .18s var(--ease-out)}.empty-state__action:active{transform:scale(.97)}.mode-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.mode-tabs button{min-height:2.5rem;padding:0 .9rem;border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--muted);background:var(--paper)}.mode-tabs button[aria-selected=true]{color:var(--accent);border-color:transparent;background:var(--accent-soft);font-weight:600}.import-panel{padding:1.2rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-panel)}.import-panel form{display:flex;align-items:end;gap:.8rem}.import-panel .field{flex:1}.import-panel .manual-form{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto}.search-results{display:grid;gap:.65rem;margin:1.2rem 0;padding:0;list-style:none}.season-filters{display:flex;flex-wrap:wrap;gap:.65rem;margin:1rem 0 .6rem}.season-filters label{display:flex;align-items:center;gap:.4rem;min-height:2.6rem;padding:.5rem .8rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-pill);font-size:.85rem;cursor:pointer}.season-filters label:has(input:checked){color:var(--accent);background:var(--accent-soft);border-color:var(--accent)}.season-filters input{accent-color:var(--accent)}.season-help{color:var(--muted);font-size:.78rem;line-height:1.6}.season-summary{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem;margin:1.6rem 0 1rem}.season-summary h2{margin:0;font-size:1.3rem}.season-summary>span,.season-day h3 span{color:var(--muted);font-size:.8rem;font-weight:500}.season-day{margin:1.5rem 0 2rem}.season-day h3{display:flex;align-items:center;gap:.75rem;border-bottom:1px solid var(--line);padding-bottom:.65rem}.season-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(10rem,100%),1fr));gap:1.2rem}.season-card{min-width:0;display:flex;flex-direction:column}.season-card__cover{position:relative;display:grid;place-items:center;aspect-ratio:2/3;overflow:hidden;border-radius:var(--radius-card);color:#fff;background:linear-gradient(145deg,#393c50,#77708f);box-shadow:var(--shadow-poster)}.season-card__cover img{width:100%;height:100%;object-fit:cover}.season-card__badge{position:absolute;top:.55rem;left:.55rem;padding:.3rem .55rem;border-radius:var(--radius-pill);background:#353347e6;font-size:.7rem}.season-card__badge.is-added{background:#3e348cef}.season-card h4{margin:.7rem 0 .35rem;font-size:.9rem;font-weight:600;line-height:1.5;overflow-wrap:anywhere}.season-card p{margin:0 0 .4rem;color:var(--muted);font-size:.75rem;line-height:1.5}.season-card .season-card__schedule{margin-bottom:.75rem}.season-card button{margin-top:auto;width:100%}.season-card button:disabled{cursor:default}@media(max-width:600px){.season-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}}.search-results li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-card)}.search-results li div{display:grid;gap:.25rem}.search-results li span{color:var(--muted);font-size:.78rem}.search-results li button,.dialog button{min-height:2.4rem;padding:0 .8rem;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--paper)}.total-candidates{margin-top:-1rem;padding:.8rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-panel)}.dialog button.primary{color:#fff;background:var(--accent);border-color:transparent}.dialog-backdrop{position:fixed;inset:0;display:grid;place-items:center;padding:1rem;background:#1f1f2b61;z-index:20}.dialog{width:min(28rem,100%);padding:1.5rem;background:var(--paper);border-radius:var(--radius-panel);border:1px solid var(--line);box-shadow:var(--shadow-overlay)}.dialog h2{margin-top:0}.dialog__actions{display:flex;justify-content:end;gap:.6rem;margin-top:1rem}.dialog__actions .danger{color:#fff;background:#b94a3a;border-color:transparent;font-weight:600}.series-list{display:grid;gap:.5rem;padding-left:1.5rem}.series-list li{padding:.8rem;border-bottom:1px solid var(--line)}.series-list span{float:right;color:var(--muted);font-size:.8rem}.detail-hero{display:grid;grid-template-columns:11rem 1fr;align-items:end;gap:2rem;margin-bottom:2rem;padding:1.25rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-panel)}.detail-hero h1{margin:.3rem 0;font-size:clamp(2rem,5vw,3.6rem);letter-spacing:-.025em;font-weight:700}.detail-cover{display:grid;place-items:center;aspect-ratio:2/3;overflow:hidden;color:#fff;background:linear-gradient(145deg,#393c50,#77708f);border-radius:var(--radius-card);box-shadow:var(--shadow-poster)}.detail-cover img{width:100%;height:100%;object-fit:cover}.detail-cover span{font-size:3rem;font-weight:900}.detail-summary,.muted{color:var(--muted)}.detail-summary{max-width:42rem;line-height:1.65}.detail-kicker{display:flex;flex-wrap:wrap;gap:.4rem}.detail-kicker span{padding:.3rem .55rem;color:var(--muted);background:var(--surface-subtle);border-radius:var(--radius-pill);font-size:.7rem;font-weight:500;letter-spacing:.04em}.schedule-editor{display:flex;align-items:end;gap:1rem;margin-bottom:1.25rem;padding:1rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-panel)}.schedule-editor>div{display:grid;gap:.25rem;margin-right:auto}.schedule-editor span{color:var(--muted);font-size:.8rem}.schedule-editor input{width:6rem}.schedule-editor>button{min-height:2.8rem;padding:0 .9rem;color:#fff;background:var(--accent);border:0;border-radius:var(--radius-control);font-weight:600}.anime-rating-editor{flex-wrap:wrap}.anime-rating-editor>.anime-rating-control{flex:1 1 15rem;min-width:0;margin-right:0}.anime-rating-control__heading,.anime-rating-control__bounds{display:flex;justify-content:space-between;gap:1rem}.anime-rating-control strong{color:var(--accent);font-weight:600;font-variant-numeric:tabular-nums}.anime-rating-control input[type=range]{width:100%;min-height:2.75rem;margin:0;padding:0;accent-color:var(--accent);cursor:pointer}.anime-rating-editor>button[type=button]{color:var(--accent);background:var(--paper);border:1px solid var(--line)}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.section-heading h2{margin:0 0 1rem}.section-heading span{color:var(--muted);font-size:.78rem}.release-list,.queue-list,.activity-panel ul,.device-list{display:grid;gap:.55rem;padding:0;list-style:none}.release-list li,.queue-list li,.activity-panel li{display:grid;grid-template-columns:minmax(8rem,1fr) auto auto;align-items:center;gap:1rem;padding:1rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-card)}.release-list li{grid-template-columns:minmax(8rem,1fr) auto auto auto}.release-list li>div,.queue-list li>div,.activity-panel li>div{display:grid;gap:.25rem}.release-list time,.queue-list span,.activity-panel time{color:var(--muted);font-size:.76rem}.confidence,.release-state{padding:.3rem .55rem;border-radius:var(--radius-pill);font-size:.72rem}.confidence{color:var(--muted);background:var(--surface-subtle)}.release-state{color:#875240;background:#fff0e8}.watch-toggle{display:flex;align-items:center;gap:.4rem;font-weight:500}.queue-list button,.activity-panel button,.device-list button,.button-row button,.file-button{min-height:2.35rem;padding:0 .75rem;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-control);font-weight:600}.calendar-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1rem}.calendar-grid>section{padding:1rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-panel)}.calendar-grid h2{margin-top:0;font-size:1rem}.calendar-grid article{display:grid;gap:.25rem;padding:.75rem 0;border-top:1px solid var(--line)}.calendar-grid time,.calendar-grid article span{color:var(--muted);font-size:.75rem}.calendar-progress{margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--line)}.calendar-progress h2{margin:.2rem 0 0;font-size:1.6rem}.release-list li{scroll-margin-top:1rem}.release-list li>.episode-favorite{display:grid;justify-items:end;gap:.25rem}.episode-favorite button{min-height:2.4rem;padding:.4rem .7rem;border:1px solid var(--line);border-radius:var(--radius-control);color:var(--ink);background:var(--paper)}.episode-favorite button[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}.episode-favorite span{color:var(--coral);font-size:.75rem}.favorite-filter{display:flex;align-items:center;gap:.4rem;min-height:2.75rem;font-size:.85rem}.season-ranking{margin:0 0 .75rem}.season-ranking--expanded>div{margin-top:.75rem;padding:.75rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-panel)}.season-ranking h3{margin:0;font-size:.85rem}.season-ranking__toggle{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;min-height:2.75rem;padding:0 .15rem;color:var(--accent);background:transparent;border:0;text-align:left;font-weight:600}.season-ranking__toggle svg{width:1rem;height:1rem;flex-shrink:0}.season-ranking__toggle[aria-expanded=true] svg{transform:rotate(90deg)}.season-ranking .season-ranking__empty{margin:0;padding:.2rem .15rem .4rem}.season-ranking p{margin:.4rem 0;color:var(--muted);font-size:.8rem}.season-ranking ol{display:grid;gap:.4rem;list-style:none;padding:0;margin:.8rem 0 0}.season-ranking li{display:grid;grid-template-columns:2rem minmax(0,1fr) auto;align-items:center;gap:.7rem;padding:.65rem 0;border-top:1px solid var(--line)}.season-ranking a{overflow-wrap:anywhere}.season-ranking__rank{color:var(--accent);font-weight:600}.season-ranking small,.season-ranking li>span:last-child{color:var(--muted);font-size:.75rem}.toast a{color:var(--accent);font-weight:700}@media(max-width:480px){.season-ranking li{grid-template-columns:1.6rem minmax(0,1fr) auto;gap:.5rem}.season-ranking li>span:last-child{grid-column:2 / -1}}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(17rem,1fr));gap:1rem}.settings-card{padding:1.2rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-panel)}.settings-card h2{margin-top:0}.settings-card form{display:grid;gap:.8rem}.recovery{display:grid;gap:.6rem;margin-bottom:1rem;padding:1rem;color:#604314;background:#fff5d8;border:1px solid #ead79d;border-radius:var(--radius-panel)}.recovery code{overflow-wrap:anywhere;font-size:.95rem}.recovery button{justify-self:start;min-height:2.4rem;border:0;border-radius:var(--radius-control);color:#fff;background:#805f1d;font-weight:600}.pairing-code{display:grid;gap:.3rem;margin-top:1rem;padding:1rem;text-align:center;background:var(--accent-soft);border-radius:var(--radius-card)}.pairing-code strong{color:var(--accent);font-size:2rem;letter-spacing:.2em}.pairing-code time{color:var(--muted);font-size:.75rem}.device-list li{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.65rem 0;border-bottom:1px solid var(--line)}.device-list em{color:var(--muted);font-size:.75rem}.button-row{display:flex;flex-wrap:wrap;gap:.6rem}.file-button{display:inline-grid;place-items:center;cursor:pointer}.file-button input{position:absolute;width:1px;height:1px;opacity:0}.page--activity{padding-top:0}.activity-panel{padding:1.2rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-panel)}@media(hover:hover)and (pointer:fine){.app-nav a:hover{transform:translate(2px)}.anime-card__cover:hover{transform:translateY(-4px);box-shadow:var(--shadow-poster-hover)}.anime-card__cover:hover img{transform:scale(1.025)}.anime-card__delete:hover{background:#a63e31;border-color:transparent}.library-refresh:hover:not(:disabled),.queue-list button:hover,.activity-panel button:hover,.device-list button:hover,.button-row button:hover,.file-button:hover{border-color:var(--line-strong);background:var(--surface-subtle)}.empty-state__action:hover{transform:translateY(-2px)}}@media(max-width:760px){.app-sidebar{inset:auto .65rem max(.65rem,env(safe-area-inset-bottom));width:auto;height:4.25rem;padding:.3rem max(.3rem,env(safe-area-inset-right)) .3rem max(.3rem,env(safe-area-inset-left));background:#fffefde6;border:1px solid var(--line);border-radius:var(--radius-panel);box-shadow:var(--shadow-nav)}.brand{display:none}.app-nav{grid-template-columns:repeat(5,1fr);gap:0}.app-nav a{display:grid;place-items:center;align-content:center;gap:.16rem;min-height:3.5rem;padding:0;border-radius:var(--radius-card)}.app-main{margin-left:0;padding-bottom:5.15rem}.page{padding:1.5rem 1rem 3rem}.page-heading{align-items:start;flex-direction:column;gap:1.2rem;margin-bottom:1.4rem}.page-heading h1{font-size:2.45rem}.page--library{padding-top:1rem}.page--library .page-heading h1{font-size:1.5rem}.poster-shelf{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.import-panel form,.import-panel .manual-form{display:grid;grid-template-columns:1fr}.detail-hero{grid-template-columns:6.5rem 1fr;align-items:center;gap:1rem;margin-bottom:1.25rem;padding:.85rem}.detail-hero h1{font-size:clamp(1.55rem,8vw,2.15rem);line-height:1.08}.detail-summary{margin-bottom:0;font-size:.82rem}.schedule-editor{align-items:stretch;flex-direction:column}.anime-rating-editor>.anime-rating-control{flex-basis:auto}.release-list li{grid-template-columns:1fr auto}.release-list li>div{grid-column:1 / -1}.release-list li>.episode-favorite{grid-column:1 / -1;justify-self:end}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-sidebar{width:18.25rem;padding:2rem 1.1rem;display:flex;flex-direction:column;background:#202122;border-right:1px solid #343638;-webkit-backdrop-filter:none;backdrop-filter:none;color:#ededee;box-shadow:none;border-radius:0}.brand{padding:0 .65rem 2.8rem;gap:.85rem;font-size:1.45rem}.brand span{width:2.9rem;border-radius:.85rem;background:#ededef;color:#202122;font-size:1.1rem}.app-nav{gap:.6rem}.app-nav a{min-height:3.6rem;padding:.85rem 1.1rem;color:#bfc2c7;border-radius:.8rem;font-size:1.06rem;font-weight:500}.app-nav a:hover{background:#282a2e;color:#f1f2f4;transform:none}.app-nav a.is-active{color:#78a6ff;background:#252c38;font-weight:600}.sidebar-wordmark{margin-top:auto;padding:2rem .85rem 0;color:#a5aab2;font-size:.85rem}.app-main{margin-left:18.25rem}.app-main:has(.page--library){color-scheme:dark;color:#eeeeef;background:#202122;--ink: #eeeeef;--muted: #b1b5bd;--canvas: #202122;--paper: #242527;--surface-subtle: #292b2e;--line: #393b3e;--line-strong: #656b75;--accent: #79a7ff;--accent-soft: #252e3d}.page--library{width:min(100%,100rem);padding:2.5rem clamp(1.25rem,3vw,3rem) 4rem}.page--library .page-heading{margin-bottom:.4rem;gap:1rem}.page--library .page-heading h1{font-size:2.4rem;letter-spacing:-.035em}.library-toolbar{display:flex;align-items:center;gap:.75rem;margin-bottom:.45rem}.library-refresh{flex:0 0 auto;margin-left:auto;min-height:3rem;padding:.65rem 1rem;background:transparent;border-radius:.85rem;font-size:.85rem}.library-help{margin-left:0}.library-help p{left:0;right:auto}.library-periods{display:flex;flex:1;min-width:0;align-items:center;gap:.4rem;overflow-x:auto;padding:.15rem 0 .3rem;scrollbar-width:thin}.library-periods button{flex:0 0 auto;display:flex;align-items:center;gap:.55rem;padding:.65rem .95rem;min-height:2.75rem;background:transparent;color:var(--muted);border:1px solid transparent;border-radius:var(--radius-pill);font-size:.85rem;white-space:nowrap}.library-periods button span{font-size:.75rem;color:var(--muted);font-variant-numeric:tabular-nums}.library-periods button[aria-pressed=true]{color:var(--ink);border-color:var(--line-strong);background:#25272a;font-weight:600}.library-periods button:hover{color:var(--ink);background:var(--surface-subtle)}.library-season[hidden]{display:none}.page--library .season-ranking{margin-bottom:1rem}.page--library .season-ranking__toggle{display:inline-flex;justify-content:flex-start;width:auto;min-height:2.5rem;padding:.45rem .8rem;color:#d8e6ff;background:#263142;border:1px solid #4b6388;border-radius:.7rem;font-size:.8rem;font-weight:600;transition:background .16s ease,border-color .16s ease}.page--library .season-ranking__toggle small{color:#b4c3dc;font-weight:400}.page--library .season-ranking__toggle:hover{color:#f1f6ff;background:#30405a;border-color:#79a7ff}.page--library .season-ranking__toggle:focus-visible{outline:2px solid #91b6ff;outline-offset:2px}.page--library .season-ranking__empty{font-size:.75rem}.poster-shelf{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}.anime-card{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1fr);gap:1.25rem;padding:1.15rem;border:1px solid var(--line);border-radius:1.25rem;background:#222325;align-items:stretch}.anime-card__media{min-width:0;align-self:start}.anime-card__cover{aspect-ratio:3/4;min-height:15rem;border-radius:.85rem;box-shadow:none;background:linear-gradient(155deg,#4f5c67,#2c323b)}.anime-card:nth-child(4n+2) .anime-card__cover{background:linear-gradient(155deg,#756b5e,#3b3530)}.anime-card:nth-child(4n+3) .anime-card__cover{background:linear-gradient(155deg,#657367,#303e39)}.anime-card:nth-child(4n+4) .anime-card__cover{background:linear-gradient(155deg,#73667e,#3b3444)}.anime-card__cover>.anime-card__placeholder{align-self:end;width:100%;padding:1rem;color:#f3f3f4;font-size:clamp(1.15rem,1.8vw,1.9rem);font-weight:700;line-height:1.4;overflow-wrap:anywhere}.anime-card__cover:hover{transform:none;box-shadow:none}.anime-card__cover:hover img{transform:none}.anime-card__badge{top:.75rem;left:.75rem;padding:.35rem .55rem;background:#23262be8;border:0;font-size:.72rem}.anime-card__delete{top:.5rem;right:.5rem;width:1.65rem;height:1.65rem;font-size:1rem;background:#23262bdd;border:0;border-radius:50%}.anime-card__body{display:flex;flex-direction:column;min-width:0;padding:.1rem 0 0}.anime-card__title{font-size:1.35rem;line-height:1.5;font-weight:650;letter-spacing:-.02em}.anime-card__original{margin:.15rem 0 1rem;color:var(--muted);font-size:.9rem;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.anime-card__tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.25rem}.anime-card__tags>span{padding:.32rem .55rem;color:var(--muted);border:1px solid var(--line);border-radius:var(--radius-pill);font-size:.7rem;line-height:1.4}.anime-card__tags>.anime-card__schedule{color:#d8e5ff;border-color:#45546c;background:#242c38;font-weight:600}.anime-card__progress{margin-top:auto}.anime-card__progress-label{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:.25rem .5rem;color:var(--muted);font-size:.75rem}.anime-card__numbers,.anime-card__count{color:var(--ink);font-size:1rem;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.anime-card__track{height:.45rem;overflow:hidden;border-radius:var(--radius-pill);background:#36383b;margin:.6rem 0 1rem}.anime-card__track>span{display:block;height:100%;background:#397add;border-radius:inherit;transition:width .18s ease}.anime-card__controls{display:flex;gap:.6rem}.anime-card__count{flex:1;min-width:0;padding:.7rem .35rem;min-height:3rem;background:transparent;border:1px solid var(--line);border-radius:.8rem}.anime-card .quick-watch{flex:0 0 3rem;width:3rem;min-height:3rem;padding:0;color:#80afff;background:#242d3b;border:1px solid #467acc;border-radius:.8rem;box-shadow:none;font-size:1.5rem;font-weight:500}.anime-card .quick-watch:disabled{opacity:.35;cursor:default}.anime-card__count:hover:not(:disabled),.anime-card .quick-watch:hover:not(:disabled){background:#2e3746;border-color:#7298d4}.anime-card__quiet:empty{display:none}.anime-card__quiet{margin-top:.55rem;font-size:.7rem}.anime-card__editor{display:flex;flex-wrap:wrap;gap:.4rem}.anime-card__editor input{width:100%;min-width:0;min-height:2.75rem;background:var(--paper);color:var(--ink);border:1px solid var(--line-strong);border-radius:.6rem;padding:.4rem .6rem}.anime-card__editor button{flex:1;min-height:2.5rem;padding:.35rem;color:var(--ink);border:1px solid var(--line);background:var(--paper);border-radius:.6rem;font-size:.8rem}.anime-card__editor button[type=submit]{color:#d7e5ff;background:#29374c;border-color:#467acc}.anime-card__error{color:#ffb2a6;font-size:.75rem;line-height:1.5}.page--library .toast{color:#d5e2ff;background:#293449;gap:1rem;flex-wrap:wrap}.page--library .library-progress-toast{position:fixed;z-index:20;right:clamp(1rem,3vw,3rem);bottom:1rem;max-width:calc(100vw - 2rem);align-items:center;margin:0;border:1px solid #4b6388;box-shadow:var(--shadow-overlay)}.page--library .alert{color:#ffb6a9;background:#422e2e}.page--library .dialog button{color:var(--ink)}body:has(.page--history) .app-sidebar{width:18.25rem}.app-main:has(.page--history){margin-left:18.25rem}.history-overall-ranking{margin-bottom:2rem;padding:1.2rem 1.35rem;background:#222325;border:1px solid var(--line);border-radius:1.3rem}.history-overall-ranking__heading{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:.9rem}.history-overall-ranking__heading h2{margin:0;font-size:1.3rem}.history-overall-ranking__heading span{color:var(--muted);font-size:.8rem}.page--history .history-overall-ranking .season-ranking{margin:0}.page--history .history-overall-ranking .season-ranking--expanded>div{background:#292b2e}.page--history .library-seasons{display:block}.history-year{margin:0 0 .65rem;padding-bottom:1rem;border-bottom:1px solid var(--line);color:#c6cbd3;font-size:1.35rem;line-height:1.4}.page--history .library-season{padding:.65rem 0 1.4rem;border-bottom:1px solid var(--line)}.page--history .library-season:last-child{border-bottom:0}.page--history .library-season>h2{margin:0 0 .6rem}.page--history .library-season__toggle{min-height:2.9rem;padding:.3rem .15rem}.page--history .library-season__title{gap:.75rem;font-size:1.45rem}.page--history .library-season__count{padding:0;color:#c1cad7;background:transparent;border:0;font-size:.8rem;font-weight:400}.library-season__chevron{width:1rem;height:1rem;color:#b6c5dc;transition:transform .18s var(--ease-out)}.library-season__toggle[aria-expanded=false] .library-season__chevron{transform:rotate(-90deg)}.page--history .poster-shelf{gap:.85rem}.page--history .anime-card{grid-template-columns:7rem minmax(0,1fr);gap:1rem;min-height:11rem;padding:.9rem;border-radius:1.3rem}.page--history .anime-card__cover{width:7rem;min-height:0;aspect-ratio:3/4;border-radius:.9rem}.page--history .anime-card__cover>.anime-card__placeholder{padding:.65rem;font-size:1rem}.page--history .anime-card__body{justify-content:center;padding:0}.page--history .anime-card__title{font-size:1.1rem}.page--history .anime-card__original{margin:.12rem 0 .45rem;font-size:.8rem}.page--history .anime-card__tags{margin-bottom:.45rem}.page--history .anime-card__progress-label{font-size:.68rem}.page--history .anime-card__track{height:.3rem;margin:.35rem 0 .45rem}.page--history .anime-card__count{min-height:2rem;padding:.25rem;font-size:.78rem}.page--history .anime-card__quiet{margin-top:.25rem}.page--history .anime-card__badge{top:.35rem;left:.35rem;padding:.2rem .35rem;font-size:.6rem}.page--history .anime-card__delete{top:.35rem;right:.35rem}@media(min-width:761px)and (max-width:1099px){.app-sidebar{width:11rem}.brand{font-size:1.15rem;padding-left:.25rem;gap:.5rem}.brand span{width:2.3rem}.app-main{margin-left:11rem}.poster-shelf{grid-template-columns:minmax(0,1fr)}.anime-card{grid-template-columns:11rem minmax(0,1fr)}body:has(.page--history) .app-sidebar{width:11rem}.app-main:has(.page--history){margin-left:11rem}.page--history .poster-shelf{grid-template-columns:minmax(0,1fr)}}@media(max-width:760px){.app-sidebar{position:relative;inset:auto;width:100%;height:auto;padding:1rem 1rem .65rem;border:0;border-bottom:1px solid #343638}.brand{display:flex;font-size:1.1rem;padding:0 .25rem .9rem;gap:.65rem}.brand span{width:2rem;border-radius:.6rem}.sidebar-wordmark{display:none}.app-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.25rem}.app-nav a{min-height:2.75rem;display:grid;place-items:center;padding:.5rem .1rem;font-size:.85rem;border-radius:.6rem}.app-main{margin-left:0;padding-bottom:0;min-height:calc(100vh - 8rem)}.page--library{padding:1.5rem 1rem 3rem}.page--library .page-heading h1{font-size:1.8rem}.library-refresh{min-height:2.75rem;padding:.55rem .65rem;font-size:.75rem}.library-help p{left:auto;right:0}.library-periods button{padding:.5rem .7rem;font-size:.75rem}.poster-shelf{grid-template-columns:minmax(0,1fr);gap:.8rem}.anime-card{grid-template-columns:38% minmax(0,1fr);padding:.8rem;gap:.85rem;border-radius:1rem}.anime-card__cover{min-height:12rem}.anime-card__cover>.anime-card__placeholder{font-size:1.15rem;padding:.65rem}.anime-card__title{font-size:1rem}.anime-card__original{font-size:.72rem;margin-bottom:.7rem}.anime-card__tags{gap:.3rem;margin-bottom:.85rem}.anime-card__tags>span{font-size:.65rem;padding:.25rem .4rem}.anime-card__numbers,.anime-card__count{font-size:.95rem}.anime-card__badge{font-size:.65rem;top:.5rem;left:.4rem}body:has(.page--history) .app-sidebar{width:100%}.app-main:has(.page--history){margin-left:0}.history-overall-ranking{margin-bottom:1.5rem;padding:1rem;border-radius:1rem}.history-overall-ranking__heading h2{font-size:1.15rem}.history-year{font-size:1.1rem}.page--history .library-season__title{font-size:1.15rem}.page--history .poster-shelf{grid-template-columns:minmax(0,1fr)}.page--history .anime-card{grid-template-columns:5.5rem minmax(0,1fr);gap:.75rem;padding:.65rem}.page--history .anime-card__cover{width:5.5rem}.page--history .anime-card__title{font-size:.95rem}.page--history .anime-card__original{font-size:.72rem}.page--history .anime-card__tags{gap:.25rem}.page--history .anime-card__tags>span{font-size:.58rem}}body:has(.page--detail){background:#202122}body:has(.page--detail) .app-sidebar{width:18.25rem}body:has(.page--detail[data-return-to="/"]) .app-nav a[href="/"],body:has(.page--detail[data-return-to="/history"]) .app-nav a[href="/history"]{color:#78a6ff;background:#252c38;font-weight:600}.app-main:has(.page--detail){margin-left:18.25rem;color-scheme:dark;color:#f0f0f1;background:#202122;--ink: #f0f0f1;--muted: #adb2ba;--paper: #222325;--surface-subtle: #292c32;--line: #393b3e;--line-strong: #656b75;--accent: #79a7ff;--accent-soft: #252e3d}.page--detail{width:min(100%,92rem);padding:2.4rem clamp(1.4rem,3vw,3rem) 5rem}.detail-breadcrumb{display:flex;align-items:center;gap:.85rem;margin-bottom:1.4rem;color:#d5dce7;font-size:.95rem}.detail-breadcrumb a{color:#a7c6ff;text-decoration:none}.detail-breadcrumb a:hover{text-decoration:underline}.page--detail .detail-hero{grid-template-columns:12rem minmax(0,1fr);align-items:stretch;gap:1.5rem;margin:0 0 2rem;padding:1.5rem;border-radius:1.4rem;background:#222325;box-shadow:none}.detail-hero__media{display:grid;align-content:start;gap:.75rem;min-width:0}.page--detail .detail-cover{position:relative;width:100%;min-height:0;aspect-ratio:3 / 4;align-self:start;border-radius:1rem;box-shadow:none;background:linear-gradient(150deg,#615a70,#373344)}.page--detail .detail-cover>span:not(.detail-cover__status){align-self:end;justify-self:start;padding:1rem;font-size:clamp(1.5rem,2.5vw,2.1rem);line-height:1.4;overflow-wrap:anywhere}.page--detail .detail-cover__status{position:absolute;top:.8rem;left:.8rem;padding:.45rem .7rem;border-radius:999px;color:#fff;background:#282630e8;font-size:.8rem;font-weight:650}.detail-hero__body{display:flex;flex-direction:column;min-width:0}.detail-hero__heading{display:flex;align-items:start;justify-content:space-between;gap:1rem}.detail-hero__heading>div{min-width:0}.page--detail .detail-hero h1{margin:.1rem 0 .3rem;font-size:clamp(1.8rem,2.7vw,2.4rem);line-height:1.3;overflow-wrap:anywhere}.detail-original{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;margin:0;color:#d0d7e4;font-size:1rem;line-height:1.5}.detail-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:1rem}.detail-kind{flex-shrink:0;padding:.45rem .6rem;border:1px solid var(--line);border-radius:.8rem;color:var(--muted);text-decoration:none;font-size:.75rem}.detail-hero__actions{display:flex;gap:.5rem;min-width:0}.detail-external{display:inline-flex;flex:1 1 0;align-items:center;justify-content:center;gap:.25rem;min-width:0;min-height:2.5rem;padding:.45rem .4rem;border:1px solid var(--line);border-radius:.65rem;background:transparent;color:#c5cfdf;text-decoration:none;font-size:.75rem;font-weight:500;white-space:nowrap}.detail-external:hover{color:#dce8ff;border-color:#627b9f;background:#292f38}.detail-external:focus-visible{outline:2px solid #79a7ff;outline-offset:3px}.detail-schedule{align-self:start;margin-top:0;padding:.55rem .75rem;border:1px solid var(--line);border-radius:999px;color:#e3e8f1;font-size:.85rem}.detail-progress{margin-top:auto;padding-top:1.4rem}.detail-progress__label{margin-bottom:.65rem;color:var(--muted);font-size:.85rem}.detail-progress__track{height:.65rem;overflow:hidden;border-radius:999px;background:#37393c}.detail-progress__track>span{display:block;height:100%;border-radius:inherit;background:#3676d7}.detail-progress__controls{display:grid;grid-template-columns:3.5rem minmax(0,1fr) 3.5rem;gap:.65rem;margin-top:.8rem}.detail-progress__controls>*{display:grid;place-items:center;min-height:3.2rem;border:1px solid var(--line);border-radius:.8rem;background:transparent;color:var(--ink);font-size:1.35rem;font-weight:650;font-variant-numeric:tabular-nums}.detail-progress__controls button:last-child{color:#79a7ff;border-color:#3676d7;background:#242d3b;font-size:1.8rem}.detail-progress__controls button:disabled{opacity:.4;cursor:default}.detail-progress .alert{margin:.8rem 0 0;color:#ffb6a9;background:#422e2e}.detail-rating{margin-bottom:2.4rem}.detail-rating .schedule-editor{margin:0}.detail-episodes-heading{align-items:center;margin-bottom:1rem}.detail-episodes-heading h2{margin:0;font-size:1.8rem}.detail-episodes-heading>div{display:flex;align-items:center;gap:1.2rem}.detail-episodes-heading span{font-size:.9rem}.detail-episodes-heading .favorite-filter{min-height:2.3rem;color:var(--muted)}.detail-episodes-heading .favorite-filter input{accent-color:#3676d7}.page--detail .release-list{margin:0;gap:.7rem}.page--detail .release-list li{grid-template-columns:4rem minmax(0,1fr) auto;min-height:6.7rem;gap:1rem;padding:1rem 1.2rem;border-radius:1.2rem;background:#222325}.episode-index{display:grid;place-items:center;width:3.6rem;height:3.6rem;border-radius:1rem;color:#a9c8ff;background:#252d39;font-size:1.1rem;font-weight:700;font-variant-numeric:tabular-nums}.page--detail .release-list li>.episode-main{display:grid;gap:.35rem;min-width:0}.episode-main__heading{display:flex;align-items:center;flex-wrap:wrap;gap:.7rem}.episode-main__heading strong{font-size:1.05rem}.page--detail .release-list time{font-size:.82rem;color:#bec9d9}.page--detail .release-state{justify-self:start;padding:0;color:#9eabc0;background:transparent;font-size:.76rem}.page--detail .watch-toggle{color:#7af;font-size:.8rem}.page--detail .watch-toggle input{position:absolute;width:1px;height:1px;opacity:0}.page--detail .watch-toggle input:focus-visible+span{outline:2px solid #79a7ff;outline-offset:3px;border-radius:.2rem}.page--detail .episode-favorite button{min-height:2.7rem;padding:.5rem .85rem;border-radius:.8rem}.page--detail .episode-favorite span{color:#ffb6a9}.detail-settings{margin-top:3rem}.detail-settings h2{margin-bottom:1rem;font-size:1.4rem}.detail-settings .schedule-editor,.detail-rating .schedule-editor{border-radius:1.2rem}.detail-settings .schedule-editor>button,.detail-rating .schedule-editor>button{background:#293d5b;color:#dce8ff;border:1px solid #426da8}.detail-rating .anime-rating-control input[type=range]{accent-color:#3676d7}.detail-settings .alert,.detail-rating .alert{color:#ffb6a9;background:#422e2e}@media(min-width:761px)and (max-width:1099px){body:has(.page--detail) .app-sidebar{width:11rem}.app-main:has(.page--detail){margin-left:11rem}.page--detail .detail-hero{grid-template-columns:11rem minmax(0,1fr);gap:1.25rem}.page--detail .detail-cover{min-height:15rem}}@media(max-width:760px){body:has(.page--detail) .app-sidebar{width:100%}.app-main:has(.page--detail){margin-left:0}.page--detail{padding:1.4rem 1rem 3rem}.page--detail .detail-hero{grid-template-columns:6rem minmax(0,1fr);gap:.85rem;padding:.85rem;border-radius:1.2rem}.detail-hero__media{display:contents}.page--detail .detail-cover{grid-column:1;grid-row:1 / 3;min-height:8rem;border-radius:.8rem}.detail-hero__body{display:contents}.detail-hero__heading{grid-column:2;grid-row:1}.detail-meta{grid-column:2;grid-row:2;align-self:end;margin-top:0}.page--detail .detail-cover>span:not(.detail-cover__status){padding:.5rem;font-size:1rem}.page--detail .detail-cover__status{top:.4rem;left:.4rem;padding:.3rem .45rem;font-size:.65rem}.page--detail .detail-hero h1{font-size:clamp(1.3rem,5.5vw,1.7rem)}.detail-kind{padding:.4rem .5rem;font-size:.7rem}.detail-original{font-size:.78rem}.detail-hero__actions{grid-column:1 / -1;grid-row:3}.detail-external{font-size:.78rem}.detail-schedule{margin-top:0;font-size:.75rem;padding:.35rem .5rem}.detail-progress{grid-column:1 / -1;grid-row:4;padding-top:.85rem;border-top:1px solid var(--line)}.detail-progress__controls{grid-template-columns:3rem minmax(0,1fr) 3rem;gap:.45rem}.detail-progress__controls>*{min-height:2.8rem;font-size:1rem;border-radius:.7rem}.detail-episodes-heading{align-items:start}.detail-episodes-heading h2{font-size:1.5rem}.detail-episodes-heading>div{gap:.5rem;flex-wrap:wrap;justify-content:end}.page--detail .release-list li{grid-template-columns:3rem minmax(0,1fr) auto;gap:.6rem;min-height:5.4rem;padding:.75rem}.episode-index{width:2.7rem;height:2.7rem;border-radius:.7rem;font-size:.9rem}.page--detail .release-list li>.episode-main,.page--detail .release-list li>.episode-favorite{grid-column:auto}.episode-main__heading strong{font-size:.92rem}.page--detail .release-list time{font-size:.72rem}.page--detail .episode-favorite button{min-height:2.35rem;padding:.35rem .45rem;font-size:.75rem}.detail-settings .schedule-editor,.detail-rating .schedule-editor{align-items:stretch}}body:has(.page--calendar){background:#202122}body:has(.page--calendar) .app-sidebar{width:18.25rem}.app-main:has(.page--calendar){margin-left:18.25rem;color-scheme:dark;color:#f0f0f1;background:#202122;--ink: #f0f0f1;--muted: #b2b7c0;--paper: #222325;--surface-subtle: #292c32;--line: #393b3e;--line-strong: #656b75;--accent: #79a7ff;--accent-soft: #252e3d}.page--calendar{width:min(100%,92rem);padding:2.35rem clamp(1.4rem,3.5vw,3rem) 5rem}.page--calendar .calendar-progress .page-heading{flex-direction:row;align-items:center;gap:.75rem;margin-bottom:1rem}.page--calendar .calendar-progress .page-heading h2{margin:0}.page--calendar .calendar-progress .page-heading button{flex:0 0 auto;margin-left:auto}.calendar-today{margin-bottom:2.1rem;padding:1.3rem 1.5rem 1.4rem;border:1px solid #394f77;border-radius:1.5rem;background:#24272d}.calendar-today h2{margin:0 0 1rem;color:#4387f5;font-size:.95rem;font-weight:650}.calendar-today__list{display:grid;gap:1rem}.calendar-today__entry{display:grid;grid-template-columns:5.25rem minmax(0,1fr) auto;align-items:center;gap:1.25rem}.calendar-today__entry+.calendar-today__entry{padding-top:1rem;border-top:1px solid #3b414b}.calendar-today__cover{display:grid;align-items:end;width:5.25rem;height:6.75rem;overflow:hidden;border-radius:1rem;color:#fff;background:linear-gradient(150deg,#746c7d,#494050)}.calendar-today__cover img{width:100%;height:100%;object-fit:cover}.calendar-today__cover span{padding:.55rem;font-weight:650}.calendar-today__copy{display:grid;gap:.4rem;min-width:0}.calendar-today__copy strong{font-size:1.2rem;line-height:1.4;overflow-wrap:anywhere}.calendar-today__copy span,.calendar-day__entry span{color:#ced7e8;font-size:.9rem}.calendar-today__entry time{font-size:1.1rem;font-weight:700}.calendar-today__empty{margin:.5rem 0;color:var(--muted)}.page--calendar .calendar-grid{grid-template-columns:minmax(0,1fr);gap:.85rem}.page--calendar .calendar-day{display:grid;grid-template-columns:5.25rem minmax(0,1fr);align-content:start;gap:1.1rem;min-height:6.5rem;padding:1.3rem;border:1px solid #393b3e;border-radius:1.45rem;background:#222325}.page--calendar .calendar-day h2{margin:.05rem 0 0;font-size:1.05rem;font-weight:700;white-space:nowrap}.calendar-day__entries{display:grid;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));align-content:start;gap:1rem;min-width:0}.page--calendar .calendar-day__entry{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:0 0 0 1rem;border:0;border-left:1px solid #393b3e}.calendar-day__entry>div{display:grid;gap:.35rem;min-width:0}.calendar-day__entry strong{font-size:1.05rem;line-height:1.4;overflow-wrap:anywhere}.page--calendar .calendar-day__entry time{color:#e2e4e8;font-size:.9rem;white-space:nowrap}.calendar-day__entry em,.calendar-today__copy em{margin-left:.5rem;color:#c3a77b;font-size:.72rem;font-style:normal}.page--calendar .calendar-progress{margin-top:2.5rem;border-color:var(--line)}.page--calendar .calendar-progress .primary{color:#e2ebff;background:#31518a}.page--calendar .queue-list li{grid-template-columns:minmax(0,1fr) auto;border-radius:1rem}.page--calendar .queue-list button{background:#293d5b;color:#dce8ff;border-color:#426da8}.page--calendar .toast{color:#d5e2ff;background:#293449}.page--calendar .alert{color:#ffb6a9;background:#422e2e}@media(min-width:761px)and (max-width:1099px){body:has(.page--calendar) .app-sidebar{width:11rem}.app-main:has(.page--calendar){margin-left:11rem}.page--calendar .calendar-day{grid-template-columns:3.5rem minmax(0,1fr);gap:.8rem}}@media(max-width:760px){body:has(.page--calendar) .app-sidebar{width:100%}.app-main:has(.page--calendar){margin-left:0}.page--calendar{padding:1.5rem 1rem 3rem}.calendar-today{padding:1rem;margin-bottom:1.2rem;border-radius:1.1rem}.calendar-today__entry{grid-template-columns:4rem minmax(0,1fr) auto;gap:.75rem}.calendar-today__cover{width:4rem;height:5.25rem;border-radius:.75rem}.calendar-today__copy strong{font-size:1rem}.calendar-today__copy span{font-size:.75rem}.calendar-today__entry time{font-size:.85rem}.page--calendar .calendar-grid{gap:.7rem}.calendar-day__entries{grid-template-columns:minmax(0,1fr);gap:0}.page--calendar .calendar-day__entry{padding-left:0;border-left:0}.page--calendar .calendar-day__entry+.calendar-day__entry{margin-top:1rem;padding-top:1rem;border-top:1px solid #393b3e}.page--calendar .calendar-day{grid-template-columns:4rem minmax(0,1fr);gap:.7rem;min-height:5rem;padding:1rem;border-radius:1rem}.calendar-day__entry strong{font-size:.95rem}.page--calendar .calendar-day__entry time{font-size:.8rem}}body:has(.page--search){background:#202122}body:has(.page--search) .app-sidebar{width:18.25rem}.app-main:has(.page--search){margin-left:18.25rem;color-scheme:dark;color:#f0f0f1;background:#202122;--ink: #f0f0f1;--muted: #b2b7c0;--paper: #222325;--surface-subtle: #292c32;--line: #393b3e;--line-strong: #656b75;--accent: #79a7ff;--accent-soft: #252e3d}.page--search{width:min(100%,92rem);padding:2.35rem clamp(1.4rem,3.5vw,3rem) 5rem}.page--search .mode-tabs{gap:.55rem;margin-bottom:1.3rem}.page--search .mode-tabs button{min-height:2.8rem;padding:.55rem 1rem;color:var(--muted);background:transparent;border:1px solid var(--line);border-radius:.8rem;font-weight:500}.page--search .mode-tabs button:hover{color:var(--ink);background:var(--surface-subtle);border-color:var(--line-strong)}.page--search .mode-tabs button[aria-selected=true]{color:#dce8ff;background:#26344a;border-color:#4d70a8;font-weight:650}.page--search .import-panel{padding:1.25rem;background:#222325;border-color:var(--line);border-radius:1.3rem}.page--search .import-panel form{gap:.85rem}.page--search .field{color:#c6cbd3}.page--search .field input,.page--search .field select{min-width:0;color:var(--ink);background:#292b2e;border-color:#4a4d53}.page--search .field input::placeholder{color:#9298a2}.page--search .field input:focus,.page--search .field select:focus{border-color:#79a7ff;box-shadow:0 0 0 3px #30405a}.page--search .primary{min-height:2.8rem;color:#e8f0ff;background:#31518a;border:1px solid #5078ba;border-radius:.7rem}.page--search .primary:hover:not(:disabled){background:#3c64a8;border-color:#79a7ff}.page--search .season-filters{gap:.55rem;margin:1rem 0 .65rem}.page--search .season-filters label{color:#c6cbd3;background:#252629;border-color:var(--line)}.page--search .season-filters label:has(input:checked){color:#d8e6ff;background:#26344a;border-color:#4d70a8}.page--search .season-filters input{accent-color:#79a7ff}.page--search .season-help{color:var(--muted)}.page--search .season-summary{margin:1.8rem 0 1.1rem;padding-bottom:.8rem;border-bottom:1px solid var(--line)}.page--search .season-summary h2{font-size:1.4rem}.page--search .season-day{margin:1.35rem 0 2rem}.page--search .season-day h3{margin:0 0 .9rem;font-size:1.1rem}.page--search .season-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.page--search .season-card{display:grid;grid-template-columns:6rem minmax(0,1fr) auto;align-items:center;column-gap:1rem;min-height:9.8rem;padding:.85rem;background:#242527;border:1px solid var(--line);border-radius:1.15rem;transition:background-color .18s ease,border-color .18s ease}.page--search .season-card:hover,.page--search .season-card:focus-within{background:#292c32;border-color:#536784}.page--search .season-card__cover{width:6rem;height:8rem;min-height:0;aspect-ratio:auto;border-radius:.8rem;box-shadow:none}.page--search .season-card__badge{top:.4rem;left:.4rem;padding:.22rem .4rem;font-size:.62rem;background:#23262be8}.page--search .season-card__badge.is-added{background:#294674}.page--search .season-card__info{display:grid;align-content:center;gap:.3rem;min-width:0}.page--search .season-card h4{margin:0;font-size:1.05rem;line-height:1.4;overflow-wrap:anywhere}.page--search .season-card p{margin:0;color:#bfc5d0;font-size:.76rem}.page--search .season-card .season-card__schedule{color:#a9c5f1;overflow-wrap:anywhere}.page--search .season-card button{justify-self:end;width:auto;min-width:4.1rem;min-height:2.45rem;margin:0;padding:.35rem .75rem;font-size:.8rem;white-space:nowrap}.page--search .search-results li{padding:1rem 1.1rem;background:#222325;border-color:var(--line);border-radius:1rem}.page--search .search-results li strong{color:var(--ink)}.page--search .search-results li button,.page--search .dialog button:not(.primary){color:#dce8ff;background:#26344a;border-color:#4d70a8}.page--search .notice{color:#d5e2ff;background:#293449}.page--search .alert{color:#ffb6a9;background:#422e2e}.page--search .dialog-backdrop{background:#0a0c10b8}.page--search .dialog{color:var(--ink);background:#252629;border-color:#4a4d53}.page--search .dialog p{color:#c8ccd3}.page--library:not(.page--history) .season-ranking{margin-bottom:.6rem}@media(max-width:760px){.page--calendar .calendar-progress .page-heading button{padding:.55rem .7rem;font-size:.8rem}}body:has(.page--settings){background:#202122}body:has(.page--settings) .app-sidebar{width:18.25rem}.app-main:has(.page--settings){margin-left:18.25rem;color-scheme:dark;color:#f0f0f1;background:#202122;--ink: #f0f0f1;--muted: #b2b7c0;--paper: #222325;--surface-subtle: #292c32;--line: #393b3e;--line-strong: #656b75;--accent: #79a7ff;--accent-soft: #252e3d}.page--settings,.page--settings+.page--activity{width:min(100%,92rem);padding:2.35rem clamp(1.4rem,3.5vw,3rem) 1.4rem}.page--settings .settings-grid{grid-template-columns:repeat(auto-fit,minmax(min(19rem,100%),1fr));align-items:start;gap:1rem}.page--settings .settings-card,.page--settings+.page--activity .activity-panel{min-width:0;padding:1.35rem;background:#222325;border-color:var(--line);border-radius:1.3rem}.page--settings .settings-card h2,.page--settings+.page--activity h2{margin:0 0 1rem;font-size:1.2rem;line-height:1.4}.page--settings .settings-card p{margin:0 0 1rem;color:var(--muted);font-size:.85rem;line-height:1.65}.page--settings .settings-card form{gap:.9rem}.page--settings .field{color:#c6cbd3}.page--settings .field input{width:100%;min-width:0;color:var(--ink);background:#292b2e;border-color:#4a4d53}.page--settings .field input:focus{border-color:#79a7ff;box-shadow:0 0 0 3px #30405a}.page--settings .primary,.page--settings .recovery button{min-height:2.8rem;padding:.55rem 1rem;color:#e8f0ff;background:#31518a;border:1px solid #5078ba;border-radius:.7rem}.page--settings .primary:hover:not(:disabled),.page--settings .recovery button:hover:not(:disabled){background:#3c64a8;border-color:#79a7ff}.page--settings .device-list{margin:0;gap:0}.page--settings .device-list li{min-width:0;padding:.8rem 0}.page--settings .device-list li:first-child{padding-top:0}.page--settings .device-list li:last-child{padding-bottom:0;border-bottom:0}.page--settings .device-list li>span{min-width:0;overflow-wrap:anywhere;font-size:.85rem;line-height:1.6}.page--settings .device-list button,.page--settings .device-list em{flex-shrink:0}.page--settings .device-list em{font-style:normal}.page--settings .button-row button,.page--settings .file-button,.page--settings .device-list button,.page--settings+.page--activity button{min-height:2.6rem;color:#dce8ff;background:#26344a;border-color:#4d70a8;border-radius:.7rem;font-size:.82rem}.page--settings .button-row button:hover,.page--settings .file-button:hover,.page--settings .device-list button:hover,.page--settings+.page--activity button:hover{background:#304562;border-color:#79a7ff}.app-main:has(.page--settings) :focus-visible,.page--settings .file-button:focus-within{outline:3px solid #79a7ff;outline-offset:3px}.page--settings .pairing-code{margin-top:1.1rem;padding:1.1rem;background:#26344a;border:1px solid #4d70a8;border-radius:.9rem}.page--settings .pairing-code strong{color:#a9c5ff;font-variant-numeric:tabular-nums}.page--settings .settings-card p[role]{margin:1rem 0 0}.page--settings [role=alert],.page--settings .settings-card p[role=alert]{color:#ffb6a9}.page--settings .alert{margin:1rem 0 0;background:#422e2e}.page--settings .alert[role=status]{color:#d5e2ff;background:#293449}.page--settings .recovery{gap:.75rem;margin-bottom:1.25rem;padding:1.25rem;color:#e9d29c;background:#302d25;border-color:#65553a;border-radius:1.3rem}.page--settings .recovery strong{font-size:1.05rem}.page--settings .recovery code{min-width:0;padding:.8rem;color:#f3e6c6;background:#24231f;border:1px solid #554b38;border-radius:.7rem;line-height:1.6}.page--settings .recovery span{font-size:.82rem;line-height:1.6}.page--settings+.page--activity{padding-top:0;padding-bottom:5rem}.page--settings+.page--activity .section-heading{align-items:center}.page--settings+.page--activity .section-heading h2{margin:0}.page--settings+.page--activity .section-heading span{flex-shrink:0}.page--settings+.page--activity .activity-panel>p{margin:1rem 0 0;font-size:.85rem}.page--settings+.page--activity .activity-panel ul{margin:1rem 0 0}.page--settings+.page--activity .activity-panel li{grid-template-columns:minmax(0,1fr) auto;background:#242527;border-color:var(--line);border-radius:.9rem}.page--settings+.page--activity .activity-panel li strong{overflow-wrap:anywhere;font-size:.85rem}@media(min-width:761px)and (max-width:1099px){body:has(.page--settings) .app-sidebar{width:11rem}.app-main:has(.page--settings){margin-left:11rem}}@media(max-width:760px){body:has(.page--settings) .app-sidebar{width:100%}.app-main:has(.page--settings){margin-left:0}.page--settings,.page--settings+.page--activity{padding:1.5rem 1rem 1rem}.page--settings .settings-grid{grid-template-columns:minmax(0,1fr)}.page--settings .settings-card,.page--settings .recovery,.page--settings+.page--activity .activity-panel{padding:1rem;border-radius:1rem}.page--settings+.page--activity{padding-top:0;padding-bottom:3rem}.page--settings+.page--activity .activity-panel li{padding:.8rem;gap:.6rem}}@media(min-width:761px)and (max-width:1099px){body:has(.page--search) .app-sidebar{width:11rem}.app-main:has(.page--search){margin-left:11rem}.page--search .season-grid{grid-template-columns:minmax(0,1fr)}.page--search .import-panel .manual-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){body:has(.page--search) .app-sidebar{width:100%}.app-main:has(.page--search){margin-left:0}.page--search{padding:1.5rem 1rem 3rem}.page--search .mode-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.page--search .mode-tabs button{width:100%;padding:.55rem .35rem;font-size:.82rem}.page--search .import-panel{padding:1rem;border-radius:1rem}.page--search .season-grid{grid-template-columns:minmax(0,1fr)}.page--search .season-card{grid-template-columns:5.25rem minmax(0,1fr) auto;column-gap:.65rem;min-height:8.4rem;padding:.65rem}.page--search .season-card__cover{width:5.25rem;height:7rem}.page--search .season-card h4{font-size:.93rem}.page--search .season-card p{font-size:.7rem}.page--search .season-card button{min-width:3.4rem;min-height:2.3rem;padding:.3rem .45rem;font-size:.74rem}.page--search .season-summary h2{font-size:1.15rem}}.page--library,.page--calendar,.page--search,.page--settings{padding-top:1.5rem}@media(max-width:760px){.page--library,.page--calendar,.page--search,.page--settings{padding-top:1rem}}.sync-control{min-height:2.5rem;display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.5rem 1rem;padding:.75rem clamp(1rem,3vw,2rem) 0;color:var(--muted);font-size:.8125rem}.sync-control button,.sync-control a{flex-shrink:0;font-size:inherit}.sync-control button{padding:.35rem .65rem}.sync-space{margin-bottom:1rem}.sync-space code{display:block;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}
