:root {--bg: #10151d;--bg-elev: #182230;--bg-soft: #223044;--text: #e7eef8;--muted: #93a4bb;--line: #31425a;--accent: #6ea8e8;--accent-2: #3d7ec4;--danger: #e25b5b;--last: #e24b4b;--shadow: 0 16px 40px rgba(0, 0, 0, 0.35);--radius: 14px;--footer-h: 48px;--header-h: 64px;color-scheme: dark;}html[data-theme="light"] {--bg: #e8eef6;--bg-elev: #ffffff;--bg-soft: #dce6f2;--text: #1a2433;--muted: #5b6d84;--line: #c3d0e0;--accent: #3b7dc0;--accent-2: #2b649c;--danger: #b32626;--last: #c62828;--shadow: 0 12px 28px rgba(20, 36, 56, 0.12);color-scheme: light;}*,*::before,*::after {box-sizing: border-box;}html,body {-webkit-touch-callout: none;user-select: none;margin: 0;padding: 0;}body {min-height: 100vh;font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;background: radial-gradient(1200px 500px at 10% -10%, rgba(110, 168, 232, 0.14), transparent 50%),var(--bg);color: var(--text);padding-bottom: calc(var(--footer-h) + 16px);transition: background-color 0.35s ease, color 0.35s ease;}h1,h2,p {margin: 0;}a {color: var(--accent);transition: color 0.2s ease;}.site-header {min-height: var(--header-h);display: grid;grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);align-items: center;gap: 0.55rem;padding: 0.75rem 1.25rem;border-bottom: 1px solid var(--line);background: var(--bg-elev);position: sticky;top: 0;z-index: 20;transition: background-color 0.35s ease, border-color 0.35s ease;}.brand {display: flex;align-items: center;gap: 0.6rem;}.brand h1 {font-size: 1.25rem;letter-spacing: 0.04em;}.caduceus {font-size: 1.4rem;color: var(--accent);transition: color 0.35s ease, transform 0.35s ease;}.header-center {display: flex;justify-content: center;min-width: 0;}.header-actions {display: flex;align-items: center;justify-content: flex-end;gap: 0.65rem;flex-wrap: wrap;}.who {color: var(--muted);font-size: 0.95rem;margin: 0;text-align: center;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}.wrap {width: min(1180px, calc(100% - 2rem));margin: 1.5rem auto 0;}.login-card {width: min(420px, 100%);margin: 8vh auto 0;background: var(--bg-elev);border: 1px solid var(--line);border-radius: var(--radius);box-shadow: var(--shadow);padding: 1.6rem 1.4rem 1.5rem;animation: rise 0.45s ease;transition: background-color 0.35s ease, border-color 0.35s ease;}@keyframes rise {from {opacity: 0;transform: translateY(12px);}to {opacity: 1;transform: none;}}.login-card h2 {font-size: 1.4rem;}.tagline {color: var(--muted);margin: 0.35rem 0 1rem;font-size: 0.95rem;}.field {display: flex;flex-direction: column;gap: 0.35rem;margin-bottom: 0.9rem;}.field label {font-size: 0.86rem;color: var(--muted);}input[type="text"],input[type="password"] {width: 100%;border: 1px solid var(--line);background: var(--bg-soft);color: var(--text);border-radius: 10px;padding: 0.65rem 0.75rem;font-size: 1rem;transition: border-color 0.2s ease, background-color 0.35s ease;}input:focus {outline: 2px solid var(--accent);outline-offset: 1px;}.captcha-row {display: flex;align-items: center;gap: 0.5rem;}.captcha-row img {display: block;border-radius: 8px;border: 1px solid var(--line);background: #c5d4e8;}.alert {background: var(--bg-soft);border: 1px solid var(--danger);border-radius: 8px;padding: 0.55rem 0.7rem;margin-bottom: 0.9rem;}.btn {border: 1px solid var(--line);background: var(--bg-soft);color: var(--text);border-radius: 10px;padding: 0.55rem 0.85rem;cursor: pointer;font-size: 0.95rem;text-decoration: none;display: inline-flex;align-items: center;justify-content: center;transition: background-color 0.2s ease, transform 0.15s ease;}.btn:hover {transform: translateY(-1px);}.btn-primary {width: 100%;background: var(--accent);border-color: var(--accent-2);color: #071018;font-weight: 700;padding: 0.75rem 1rem;}.btn-ghost {background: transparent;}.theme-toggle {width: 42px;height: 42px;border-radius: 999px;border: 1px solid var(--line);background: var(--bg-soft);color: var(--text);cursor: pointer;font-size: 1.15rem;transition: transform 0.25s ease, background-color 0.25s ease;}.theme-toggle:hover {transform: rotate(18deg);}html[data-theme="dark"] .icon-sun { display: none; }html[data-theme="light"] .icon-moon { display: none; }.autoplay-switch {display: inline-flex;align-items: center;gap: 0.45rem;cursor: pointer;user-select: none;font-size: 0.82rem;color: var(--muted);}.autoplay-switch input {position: absolute;opacity: 0;width: 1px;height: 1px;}.slider {width: 38px;height: 22px;border-radius: 999px;background: var(--bg-soft);border: 1px solid var(--line);position: relative;transition: background-color 0.25s ease;}.slider::after {content: "";width: 16px;height: 16px;border-radius: 50%;background: var(--text);position: absolute;top: 2px;left: 2px;transition: transform 0.25s ease;}.autoplay-switch input:checked + .slider {background: var(--accent);border-color: var(--accent-2);}.autoplay-switch input:checked + .slider::after {transform: translateX(16px);background: #071018;}.player-layout {display: grid;grid-template-columns: minmax(0, 1fr) 340px;gap: 1.1rem;align-items: start;animation: rise 0.4s ease;}.player-pane,.seasons {background: var(--bg-elev);border: 1px solid var(--line);border-radius: var(--radius);box-shadow: var(--shadow);transition: background-color 0.35s ease, border-color 0.35s ease;}.player-pane {padding: 1rem;}.now-playing {font-size: 0.95rem;color: var(--muted);margin-bottom: 0.7rem;min-height: 1.3em;}.player-ui {background: #0b0f14;border-radius: 12px;overflow: hidden;border: 1px solid var(--line);}.video-shell {position: relative;background: #000;aspect-ratio: 16 / 9;}video {width: 100%;height: 100%;display: block;background: #000;object-fit: contain;}video::-webkit-media-controls {display: none;}.big-play {position: absolute;left: 50%;top: 50%;transform: translate(-50%, -50%);width: 72px;height: 72px;border: 0;border-radius: 50%;background: rgba(110, 168, 232, 0.92);color: #071018;font-size: 1.6rem;cursor: pointer;transition: transform 0.2s ease, opacity 0.2s ease;}.big-play:hover {transform: translate(-50%, -50%) scale(1.06);}.codec-note {position: absolute;left: 12px;right: 12px;bottom: 12px;margin: 0;padding: 0.5rem 0.65rem;background: rgba(8, 12, 18, 0.86);color: #d7e6f7;border-radius: 8px;font-size: 0.82rem;}.controls {display: flex;align-items: center;gap: 0.45rem;padding: 0.55rem 0.7rem 0.65rem;background: linear-gradient(180deg, #121821, #0d131b);}.ctl {border: 0;background: transparent;color: #e7eef8;width: 34px;height: 34px;border-radius: 8px;cursor: pointer;font-size: 0.95rem;transition: background-color 0.2s ease;}.ctl:hover {background: rgba(255, 255, 255, 0.08);}.time {font-variant-numeric: tabular-nums;font-size: 0.78rem;color: #9eb0c6;min-width: 3.2em;}.seek,.vol {-webkit-appearance: none;appearance: none;height: 5px;border-radius: 999px;background: #2a384c;outline: none;}.seek {flex: 1;}.vol {width: 84px;}.seek::-webkit-slider-thumb,.vol::-webkit-slider-thumb {-webkit-appearance: none;appearance: none;width: 13px;height: 13px;border-radius: 50%;background: var(--accent);border: 0;cursor: pointer;}.seek::-moz-range-thumb,.vol::-moz-range-thumb {width: 13px;height: 13px;border-radius: 50%;background: var(--accent);border: 0;cursor: pointer;}.seasons {padding: 0.85rem 0.7rem 0.9rem;max-height: calc(100vh - var(--header-h) - var(--footer-h) - 3rem);overflow: auto;}.seasons h2 {font-size: 1.05rem;padding: 0 0.4rem 0.6rem;}.season-list,.episode-list {list-style: none;margin: 0;padding: 0;}.season + .season {margin-top: 0.35rem;}.season-btn,.episode-btn {width: 100%;text-align: left;border: 0;background: transparent;color: var(--text);cursor: pointer;font: inherit;}.season-btn {display: flex;justify-content: space-between;align-items: center;padding: 0.65rem 0.7rem;border-radius: 8px;background: var(--bg-soft);font-weight: 650;transition: background-color 0.25s ease, color 0.25s ease;}.season-btn[aria-expanded="true"] {background: var(--accent);color: #071018;}.season-btn .chev {transition: transform 0.28s ease;}.season-btn[aria-expanded="true"] .chev {transform: rotate(-180deg);}.season-panel {display: grid;grid-template-rows: 0fr;transition: grid-template-rows 0.32s ease;}.season-panel > .episode-list {overflow: hidden;min-height: 0;}.season.is-open .season-panel {grid-template-rows: 1fr;}.episode-btn {display: flex;flex-direction: column;gap: 0.12rem;padding: 0.48rem 0.75rem;border-radius: 6px;transition: background-color 0.2s ease;}.episode-btn:hover,.episode-btn:focus-visible {background: var(--bg-soft);}.episode-btn.is-active {background: var(--bg-soft);outline: 1px solid var(--accent);}.episode-btn.is-last {box-shadow: inset 3px 0 0 var(--last);}.ep-meta {display: flex;align-items: center;justify-content: space-between;gap: 0.4rem;}.ep-file {font-size: 0.78rem;color: var(--accent);font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;}.ep-icons {display: inline-flex;gap: 0.25rem;font-size: 0.85rem;}.badge {display: inline-block;font-size: 0.68rem;padding: 0.08rem 0.35rem;border-radius: 999px;border: 1px solid var(--line);color: var(--muted);}.badge-done {border-color: var(--accent);color: var(--accent);}.badge-rewatch {border-color: #d7a84a;color: #d7a84a;}.ep-title {font-size: 0.9rem;}.site-footer {position: fixed;left: 0;right: 0;bottom: 0;height: var(--footer-h);display: flex;align-items: center;justify-content: center;background: var(--bg-elev);border-top: 1px solid var(--line);z-index: 30;transition: background-color 0.35s ease, border-color 0.35s ease;}.site-footer p {font-size: 0.88rem;color: var(--muted);}.modal {position: fixed;inset: 0;z-index: 80;display: flex;align-items: center;justify-content: center;background: rgba(8, 12, 18, 0.55);padding: 1rem;}.modal[hidden] {display: none;}.modal-card {width: min(420px, 100%);background: var(--bg-elev);color: var(--text);border: 1px solid var(--line);border-radius: var(--radius);box-shadow: var(--shadow);padding: 1.3rem 1.2rem 1.1rem;}.modal-card h2 {font-size: 1.15rem;margin-bottom: 0.4rem;}.modal-card p {color: var(--muted);margin-bottom: 1rem;}.modal-actions {display: flex;gap: 0.6rem;flex-wrap: wrap;}.modal-actions .btn-primary {width: auto;flex: 1;}.modal-actions .btn-ghost {flex: 1;}@media (max-width: 860px) {.player-layout {grid-template-columns: 1fr;}.seasons {max-height: none;}.site-header {grid-template-columns: auto 1fr auto;}.brand h1 {font-size: 1rem;}}@media (max-width: 480px) {.login-card {margin-top: 2rem;padding: 1.15rem;}.site-header {padding-inline: 0.8rem;}.switch-text {display: none;}}