:root{--bg:#101113;--panel:#1a1b1f;--raised:#24252a;--text:#f3f3f1;--muted:#a7a7aa;--dim:#737477;--line:#33343a;--red:#e63f52;--green:#62ae82;--focus:#ffbd52}*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{min-width:320px;margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif}.aurora{display:none}.page-shell{width:min(1120px,calc(100% - 40px));margin:auto}.brand{color:var(--text);font-weight:800;font-size:21px;text-decoration:none;display:inline-flex;gap:8px;align-items:center;letter-spacing:-.4px}.brand-mark{display:grid;place-items:center;width:27px;height:27px;border-radius:7px;background:var(--red);font-size:15px}.auth-screen{min-height:100dvh;display:grid;place-items:center;padding:22px;background:linear-gradient(115deg,#101113 0%,#101113 53%,#1c1a1d 100%)}.login-panel{width:min(100%,430px);padding:34px;background:#191a1e;border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 60px rgba(0,0,0,.35)}.login-brand{margin-bottom:43px}.login-kicker,.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.25px;color:#d98690;margin:0 0 10px}.login-panel h1{font-size:36px;line-height:1.08;letter-spacing:-1.6px;margin:0 0 14px}.login-copy{color:var(--muted);font-size:14px;line-height:1.55;margin-bottom:28px}.login-form,.create-account{display:flex;flex-direction:column;gap:8px}.login-form label,.create-account label{font-size:12px;font-weight:bold;color:#d1d1d2;margin-top:5px}.login-form input,.create-account input{height:43px;border:1px solid #3a3b40;border-radius:6px;background:#111216;padding:0 12px;color:var(--text);font:14px Arial}.login-form input:focus,.create-account input:focus,.search-box:focus-within{outline:2px solid var(--focus);outline-offset:2px}.login-form button,.create-account button{height:44px;border:0;border-radius:6px;margin-top:13px;background:var(--red);color:white;font-weight:bold;cursor:pointer}.login-form button:hover,.create-account button:hover{background:#f05061}.login-help{margin:23px 0 0;color:var(--dim);font-size:12px}.login-error,.admin-error{margin:2px 0 0;color:#ff8b96;font-size:12px;min-height:15px}.hero{min-height:405px;padding-top:21px}.user-menu{float:right;display:flex;gap:12px;align-items:center}.status-pill{color:var(--muted);font-size:12px}.user-menu button{border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:12px;text-decoration:underline}.hero-copy{padding-top:82px}.hero-copy .eyebrow{color:#df6775}.hero h1{font-size:55px;line-height:1;letter-spacing:-2.8px;margin:0 0 16px}.hero h1 em{font-style:normal;color:#e95060}.hero-text{margin:0;color:var(--muted);font-size:15px;max-width:430px;line-height:1.55}.search-box{display:flex;align-items:center;width:min(690px,100%);height:57px;margin-top:31px;padding:5px 6px 5px 17px;border:1px solid #3a3b40;border-radius:7px;background:#191a1e}.search-box svg{width:20px;stroke:var(--muted);stroke-width:1.8;fill:none}.search-box input{min-width:0;flex:1;height:100%;border:0;outline:0;background:transparent;padding:0 12px;color:var(--text);font-size:14px}.search-box input::placeholder{color:#77787b}.search-box button{height:43px;border:0;border-radius:5px;background:var(--red);color:white;font-size:13px;font-weight:bold;padding:0 16px;cursor:pointer}.content-section{padding:30px 0 60px}.library-section{border-top:1px solid var(--line);padding-top:39px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:20px}.section-heading .eyebrow{margin-bottom:7px}h2,h3{margin:0;font-family:Arial,Helvetica,sans-serif}h2{font-size:25px;letter-spacing:-.7px}.result-count,.library-total{color:var(--muted);font-size:12px}.cards-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px 14px}.show-card{min-width:0}.poster-wrap{position:relative;aspect-ratio:2/3;overflow:hidden;border-radius:7px;background:#292a2e}.poster{display:block;width:100%;height:100%;object-fit:cover;transition:transform .2s}.show-card:hover .poster{transform:scale(1.03)}.score{position:absolute;top:7px;left:7px;border-radius:4px;background:rgba(0,0,0,.76);padding:4px 5px;font-size:10px;font-weight:bold}.card-info{padding:10px 1px 0}.show-meta,.genres{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--dim);font-size:10px}.show-meta{margin-bottom:4px}h3{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;margin-bottom:5px}.progress-label{height:16px;margin:8px 0 5px;color:#e9b2b7;font-size:10px;font-weight:bold;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.progress-track{height:4px;background:#393a40;border-radius:9px;overflow:hidden}.progress-track span{display:block;height:100%;border-radius:9px;background:var(--red)}.card-actions{display:flex;gap:6px}.action-button{flex:1;height:34px;margin-top:10px;border:1px solid #404147;border-radius:5px;background:#25262b;color:#e6e6e6;font-size:11px;font-weight:bold;cursor:pointer}.action-button:hover{border-color:#808086;background:#303136}.remove-button{display:none;width:34px;height:34px;margin-top:10px;border:1px solid #55343a;border-radius:5px;background:transparent;color:#ed8792;font-size:16px;cursor:pointer}.show-card.in-library .remove-button{display:block}.empty-state,.empty-library{padding:30px;text-align:center;border:1px dashed #3a3b40;border-radius:8px;color:var(--muted);font-size:13px}.empty-state{min-height:170px;display:grid;place-items:center}.empty-icon{font-size:28px;color:#e66673}.empty-library{background:#17181c;line-height:1.55}.empty-library span{display:block;color:#df6775;font-size:18px}.toast{position:fixed;z-index:10;bottom:23px;left:50%;padding:11px 15px;border-radius:6px;background:#f1f1ef;color:#191a1d;font-size:12px;font-weight:bold;transform:translate(-50%,90px);opacity:0;transition:.25s;box-shadow:0 8px 25px rgba(0,0,0,.35)}.toast.visible{transform:translate(-50%,0);opacity:1}.progress-dialog{width:min(680px,calc(100% - 30px));max-height:calc(100dvh - 36px);overflow:auto;border:1px solid #3d3e43;border-radius:9px;background:#191a1e;color:var(--text);padding:0;box-shadow:0 22px 70px rgba(0,0,0,.65)}.progress-dialog::backdrop{background:rgba(0,0,0,.72)}.dialog-header{display:flex;justify-content:space-between;padding:21px;border-bottom:1px solid var(--line)}.dialog-header h2{font-size:23px}.dialog-header .eyebrow{color:#df6775;margin-bottom:6px}.close-dialog{width:31px;height:31px;border:1px solid #3c3d42;border-radius:5px;background:transparent;color:white;font-size:21px;cursor:pointer}.dialog-show{display:flex;align-items:center;gap:11px;padding:16px 21px 0}.dialog-show img{width:39px;height:57px;border-radius:4px;object-fit:cover}.dialog-show p{margin:0 0 4px;font-weight:bold;font-size:15px}.dialog-show span{color:#e9b2b7;font-size:11px}.episodes-message{padding:31px 21px;color:var(--muted);text-align:center;font-size:13px}.season-tabs{display:flex;gap:7px;overflow:auto;padding:19px 21px 12px}.season-tab{flex:none;border:1px solid #42434a;border-radius:5px;padding:7px 9px;background:transparent;color:#c8c8ca;font-size:11px;font-weight:bold;cursor:pointer}.season-tab.active{border-color:var(--red);background:var(--red);color:white}.season-tab.complete{border-color:#5e9875;color:#9dc7ad}.season-tab.complete::after{content:" ✓"}.episode-list{padding:0 21px 21px}.episode-row{width:100%;display:flex;align-items:center;gap:11px;border:0;border-top:1px solid #303137;background:transparent;color:var(--text);padding:12px 2px;text-align:left;cursor:pointer}.episode-row:hover{background:#202126}.episode-number{display:grid;place-items:center;width:29px;height:29px;flex:none;border-radius:50%;background:#34353b;color:#c7c8cb;font-size:11px;font-weight:bold}.episode-copy{min-width:0;flex:1}.episode-copy strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.episode-copy span{font-size:10px;color:var(--dim)}.episode-select{width:17px;height:17px;border:2px solid #77787c;border-radius:50%}.episode-row.completed .episode-number{background:#477d60;color:transparent;position:relative}.episode-row.completed .episode-number::after{content:"✓";position:absolute;color:white;font-size:13px}.episode-row.completed .episode-select{background:#5a9c75;border-color:#5a9c75;box-shadow:inset 0 0 0 3px #191a1e}.episode-row.selected{background:rgba(230,63,82,.11)}.episode-row.selected .episode-number{background:var(--red);color:white}.episode-row.selected .episode-select{border-color:var(--red);box-shadow:inset 0 0 0 3px #191a1e;background:var(--red)}.admin-panel{border-top:1px solid var(--line);padding:39px 0 80px}.admin-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(280px,1.2fr);gap:22px}.create-account,.accounts-list{border:1px solid var(--line);border-radius:7px;background:#17181c;padding:20px}.create-account h3,.accounts-list h3{font-size:16px;margin-bottom:13px}.accounts-list>div{display:grid;gap:8px}.account-row{display:flex;gap:8px;align-items:center;justify-content:space-between;padding:11px 0;border-top:1px solid var(--line)}.account-row:first-child{border-top:0}.account-row strong{display:block;font-size:13px}.account-row span{color:var(--dim);font-size:11px}.account-row button{border:0;background:transparent;color:#ed8792;font-size:11px;text-decoration:underline;cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:800px){.cards-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:600px){.page-shell{width:calc(100% - 24px)}.login-panel{padding:25px 20px;border-radius:9px}.login-panel h1{font-size:30px}.hero{min-height:330px;padding-top:16px}.hero-copy{padding-top:59px}.hero h1{font-size:38px;letter-spacing:-1.8px}.hero-text{font-size:13px}.search-box{height:54px;margin-top:23px}.search-box button{height:40px;font-size:0;width:42px;padding:0}.search-box button span{font-size:18px}.section-heading{margin-bottom:16px}h2{font-size:21px}.content-section{padding:26px 0 43px}.library-section,.admin-panel{padding-top:31px}.cards-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 10px}.poster-wrap{border-radius:6px}h3{font-size:14px}.card-info{padding-top:8px}.action-button,.remove-button{height:32px;margin-top:8px}.progress-label{font-size:9px;margin-top:6px}.user-menu{gap:8px}.status-pill{max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-grid{grid-template-columns:1fr;gap:14px}.create-account,.accounts-list{padding:16px}.progress-dialog{width:100%;max-height:100dvh;border:0;border-radius:0}.dialog-header,.episode-list{padding-left:17px;padding-right:17px}.dialog-show{padding-left:17px}.season-tabs{padding-left:17px;padding-right:17px}}
