@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#f7f7f2;--ink:#24372e;--muted:#7a827b;--green:#315d47;--line:#e1e5dc;--orange:#be713e}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:13px 'DM Sans',sans-serif}button,input,select,textarea{font:inherit;color:inherit}button,a,select{cursor:pointer}button{background:transparent;border:1px solid var(--line);border-radius:7px;padding:10px 14px}button:hover{background:#e9eee5}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid #be713e;outline-offset:3px}header{height:94px;padding:0 3.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fbfbf8}.brand{color:var(--green);text-decoration:none;font-size:29px;letter-spacing:-1.4px}.brand span{display:block;font-size:8px;letter-spacing:2px;margin-left:33px;margin-top:4px}nav{display:flex;gap:26px;height:100%;align-items:center}nav button{border:0;border-radius:0;height:100%;padding:0 2px;color:#7b837d}nav button.active{border-bottom:3px solid var(--green);color:var(--green);font-weight:700}.identity{display:flex;align-items:center;gap:10px}.private{font-size:11px;margin-right:16px;color:var(--muted)}.avatar,.faces i{border-radius:50%;background:#dce6d6;display:inline-grid;place-items:center;width:30px;height:30px;font-style:normal;border:2px solid var(--bg);font-weight:600}main{max-width:1800px;margin:auto;padding:44px 3.5% 70px}.eyebrow{font-size:9px;letter-spacing:1.8px;font-weight:700}.eyebrow span{margin-left:16px;color:var(--muted);font-size:8px}.heading{display:flex;justify-content:space-between;align-items:center;margin-top:12px}h1{font:700 clamp(28px,3vw,43px) Manrope,sans-serif;letter-spacing:-1.9px;margin:0 0 12px}h1 span{color:var(--orange)}p{color:var(--muted);line-height:1.6}.heading p{font-size:14px;margin:0}.primary{background:var(--green);color:white;border-color:var(--green);padding:13px 20px;font-weight:600;box-shadow:0 3px 6px #24402e0d}.primary:hover{background:#214733}.clubline{display:flex;align-items:center;gap:11px;margin:26px 0 37px;color:var(--muted);font-size:11px}.faces{display:flex;padding-left:5px}.faces i{width:26px;height:26px;margin-left:-5px;font-size:9px}.faces i:nth-child(2n){background:#ead9c7}.faces i:nth-child(3n){background:#d7dfea}.local{margin-left:auto;font-size:10px}.toolbar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.tabs{display:flex;gap:23px}.tabs button{border:0;border-radius:0;padding:16px 0;color:var(--muted)}.tabs button.selected{border-bottom:2px solid var(--green);color:var(--green);font-weight:700}.tabs small{background:#e6ebdf;padding:2px 6px;border-radius:4px;margin-left:6px;font-size:10px}.tools{display:flex;gap:10px;align-items:center}.search{border:1px solid var(--line);border-radius:6px;padding:9px 11px;background:#fcfcf9;display:flex;gap:9px}.search input{border:0;background:transparent;width:180px;outline:none;font-size:11px}.tools button{font-size:11px}.tablemeta{display:flex;justify-content:space-between;align-items:center;padding:20px 0 15px;color:var(--muted);font-size:10px}.tablemeta select{border:0;background:transparent;font-weight:600;margin-left:6px;font-size:11px;color:var(--ink)}.tablewrap{overflow:auto;border:1px solid var(--line);border-radius:9px;background:#fcfcf9}table{border-collapse:collapse;width:100%;min-width:1260px;text-align:left}th{font-size:8px;letter-spacing:1.1px;font-weight:600;color:#858d84;background:#eff2e9;padding:16px 12px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:17px 12px;border-bottom:1px solid #e9ece4;font-size:10px}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#f5f7f0}.titlecol{width:240px}.titlecell{display:flex;align-items:center;gap:12px;min-width:205px}.poster{width:40px;height:59px;border-radius:3px;object-fit:cover;box-shadow:0 2px 5px #17241b20;flex-shrink:0}.titletext b{font-family:Manrope;font-size:12px;display:block;letter-spacing:-.2px;margin-bottom:5px}.titletext span{color:var(--muted);font-size:9px}.titletext button{padding:0;border:0;font-size:12px;font-weight:700;text-align:left}.expand{padding:2px;border:0;font-size:12px;width:13px}.rate{color:#af7945;position:relative;border:0;padding:7px 0;white-space:nowrap;font-size:13px;font-weight:700}.rate span{color:#c3c9bd;font-size:9px;margin-left:3px}.tooltip{display:none;position:absolute;z-index:9;left:-12px;top:31px;width:195px;background:#263d30;color:#fff;padding:16px;border-radius:8px;text-align:left;box-shadow:0 6px 24px #0002;font-weight:400;line-height:1.8;font-size:11px}.rate:hover .tooltip,.rate:focus .tooltip{display:block}.tooltip strong{display:block;margin-bottom:6px}.tooltip div{display:flex;justify-content:space-between}.chip{display:inline-block;border:1px solid #e0e6d8;border-radius:4px;padding:4px 6px;font-size:9px;margin:2px 3px 2px 0;white-space:nowrap;background:#eef2e8;color:#647659}.chip.warm{background:#f8eee4;color:#a57952;border-color:#efdfcd}.comment{max-width:150px;line-height:1.6;font-style:italic;color:#7d857b}.by{display:flex;align-items:center;gap:6px}.by i{font-style:normal;background:#e7e7dd;border-radius:50%;padding:5px;font-size:8px}.status{font-size:9px;border:1px solid #dfe6d7;background:#f4f6ee;border-radius:5px;padding:7px 5px;max-width:112px}.watched{color:#407052}.where{border:0;background:transparent;max-width:88px;font-size:10px;color:#788375}.platform{border:0;background:transparent;text-align:left;padding:0}.footnote{display:flex;justify-content:space-between;margin:18px 0;color:#92998e;font-size:9px}.filters{padding:15px 0;display:flex;gap:10px}.filters[hidden]{display:none}.filters select{background:#fff;border:1px solid var(--line);border-radius:5px;padding:9px}.season td{background:#f0f3eb}.season .titlecell{padding-left:35px}.episode td{background:#f8f9f4}.episode .titlecell{padding-left:65px}.progress{height:4px;background:#dfe6d8;border-radius:4px;margin:7px 0;width:110px}.progress i{display:block;background:#6c8b59;height:100%;border-radius:4px}footer{margin:0 3.5%;border-top:1px solid var(--line);padding:24px 0;display:flex;justify-content:space-between;color:#98a08f;font-size:10px}footer span:first-child{font-weight:700;color:#697b62;font-size:16px}dialog{border:1px solid var(--line);border-radius:14px;padding:30px;width:min(550px,94vw);background:var(--bg);color:var(--ink);max-height:90vh}dialog::backdrop{background:#10291d80;backdrop-filter:blur(4px)}.modalhead{display:flex;justify-content:space-between;align-items:start}.close{border:0;font-size:26px;padding:0 5px}h2{font:700 25px Manrope;margin:10px 0}form label{display:flex;flex-direction:column;gap:7px;margin:13px 0;font-size:11px;font-weight:600}form input,form select,textarea{border:1px solid #d9dfd2;border-radius:6px;background:#fff;padding:11px;width:100%}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}textarea{resize:vertical;min-height:70px}.hint{font-size:11px;background:#eaf0e3;padding:12px;border-radius:6px}form>.primary{width:100%}#duplicate{color:#b45637;font-size:12px}#suggestions button{width:100%;text-align:left;font-size:12px;background:#eaf0e3;margin:3px 0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:25px}.card{border:1px solid var(--line);padding:22px;border-radius:10px;background:#fcfcf9}.card strong{font-size:30px;display:block;margin:8px 0}.card p{font-size:11px}#dashboard h2{margin-bottom:20px}#admin{padding:25px 0}#admin .member{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:18px 0}#admin input{padding:11px;border:1px solid var(--line);border-radius:6px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#294b38;color:white;padding:14px 24px;border-radius:8px;display:none;z-index:20}#detail{position:relative}#closeDetail{position:absolute;right:20px;top:20px}.detailrow{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line)}.empty{text-align:center;padding:55px;color:var(--muted)}@media(min-width:1550px){td{padding:20px 15px;font-size:11px}.titlecol{width:265px}}@media(max-width:850px){header{height:auto;padding:20px;flex-wrap:wrap;gap:15px}.brand{font-size:25px}.identity .private{display:none}nav{order:3;width:100%;height:35px;gap:24px}main{padding:28px 20px}.heading{align-items:start;gap:15px}.heading .primary{white-space:nowrap;padding:11px}h1{letter-spacing:-1px}.heading p{font-size:12px}.clubline .local{display:none}.toolbar{display:block}.tools{margin:15px 0}.search{flex:1}.search input{width:100%}.cards{grid-template-columns:1fr}.footnote{gap:15px}.filters{flex-wrap:wrap}.eyebrow span{font-size:7px;margin-left:5px}footer{gap:20px}.titlecol,td:first-child{position:sticky;left:0;background:#fcfcf9;z-index:2}th:first-child{background:#eff2e9}.season td:first-child{background:#f0f3eb}.episode td:first-child{background:#f8f9f4}}

.cellinput{background:transparent;border:1px solid transparent;border-radius:4px;padding:6px 3px;font-size:10px}.cellinput:hover,.cellinput:focus{border-color:var(--line);background:#fff}.dateinput{width:112px}.runinput{width:42px}.commentinput{width:150px}.episodestatus{display:flex;align-items:center;gap:5px;white-space:nowrap;font-size:10px}.episodestatus input{accent-color:var(--green)}.editlabel{display:block;font-size:8px;color:var(--muted);margin-top:3px}.availability{border:0;padding:0;margin:13px 0;font-size:11px}.platformchoices{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px 0}.platformchoices .platformchoice{display:flex;flex-direction:row;align-items:center;margin:0;font-weight:400}.platformchoice input{width:auto;accent-color:var(--green)}.episode .titlecell{max-width:260px;white-space:normal}.season td,.episode td{vertical-align:middle}

.titletext>button{display:block;line-height:1.4;margin-bottom:7px}.titlemeta{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.titletext .typebadge{display:inline-block;border:1px solid #d5dfcf;background:#edf2e8;color:#536d48;border-radius:4px;padding:3px 6px;font-size:8px;font-weight:700;letter-spacing:.7px;text-transform:uppercase;line-height:1.2;white-space:nowrap}.titletext .seasoncount{font-size:9px;color:var(--muted)}

:root{color-scheme:light}.themeToggle{margin-left:14px;font-size:11px;min-width:112px;white-space:nowrap;background:#f1f4ec}
:root[data-theme="dark"]{color-scheme:dark;--bg:#151d19;--ink:#e3eadd;--muted:#a5b2a5;--green:#a5c49a;--line:#354437;--orange:#d59b6b}
[data-theme="dark"] header,[data-theme="dark"] .tablewrap,[data-theme="dark"] .card,[data-theme="dark"] .titlecol,[data-theme="dark"] td:first-child{background:#1b261f}
[data-theme="dark"] th,[data-theme="dark"] th:first-child{background:#253329;color:#b0bdac}
[data-theme="dark"] td{border-bottom-color:#303d32}
[data-theme="dark"] tbody tr:hover,[data-theme="dark"] button:hover{background:#2c3b2e}
[data-theme="dark"] .season td,[data-theme="dark"] .season td:first-child{background:#243227}
[data-theme="dark"] .episode td,[data-theme="dark"] .episode td:first-child{background:#1b271f}
[data-theme="dark"] .search,[data-theme="dark"] .filters select,[data-theme="dark"] form input,[data-theme="dark"] form select,[data-theme="dark"] textarea,[data-theme="dark"] #admin input,[data-theme="dark"] .cellinput:focus,[data-theme="dark"] .cellinput:hover{background:#202e24;border-color:#455743}
[data-theme="dark"] .chip,[data-theme="dark"] .status,[data-theme="dark"] .titletext .typebadge,[data-theme="dark"] .tabs small,[data-theme="dark"] .hint,[data-theme="dark"] .themeToggle{background:#2b3e2c;border-color:#496044;color:#c6d8ba}
[data-theme="dark"] .chip.warm{background:#443728;border-color:#5c4934;color:#e0ba8f}
[data-theme="dark"] .primary{background:#91b580;border-color:#91b580;color:#142318}
[data-theme="dark"] .primary:hover{background:#aacb9c}
[data-theme="dark"] .avatar,[data-theme="dark"] .faces i,[data-theme="dark"] .by i{background:#344934;color:#deead6}
[data-theme="dark"] .faces i:nth-child(2n){background:#514332}[data-theme="dark"] .faces i:nth-child(3n){background:#354354}
[data-theme="dark"] .progress{background:#3a4939}[data-theme="dark"] .progress i{background:#a1bf88}
[data-theme="dark"] .rate{color:#e0b07b}[data-theme="dark"] .comment,[data-theme="dark"] .where,[data-theme="dark"] .footnote,[data-theme="dark"] footer{color:#adbaa7}
[data-theme="dark"] #suggestions button{background:#2c412e}[data-theme="dark"] .tooltip{background:#354f37}
@media(max-width:850px){.identity{margin-left:auto}.themeToggle{margin-left:6px;min-width:100px;padding:8px}.identity .avatar{display:none}}

.metadata-message{padding:12px;border:1px solid var(--line);border-radius:7px;color:var(--muted);font-size:11px;line-height:1.6}.metadata-result{display:flex!important;gap:12px;align-items:center}.metadata-result img,.metadata-poster{width:30px;height:44px;object-fit:cover;border-radius:3px}.metadata-result>span:nth-child(2){flex:1}.metadata-result small{display:block;color:var(--muted);margin-top:5px}.metadata-result b{font-weight:600}.credits{margin-top:35px;color:var(--muted);font-size:10px;max-width:550px}.credits summary{cursor:pointer}.credits a{color:var(--green)}.credits img{margin-top:15px}.credits p{line-height:1.7}#metadataSelection{font-size:11px;margin:8px 0}

/* Precise star fills keep half-star reviews and fractional club averages visible. */
.rating-display{display:inline-flex;align-items:center;gap:7px;vertical-align:middle}.rate .rating-display,.rate .rating-display span{margin-left:0}.rating-visual{display:inline-flex!important;gap:1px;--star-size:13px;line-height:1;flex-shrink:0}.rating-star{position:relative;display:block!important;width:var(--star-size);height:var(--star-size);flex:none}.rating-star svg{display:block;width:var(--star-size);height:var(--star-size)}.rating-star .star-track{fill:none;stroke:var(--muted);stroke-width:1.2}.rating-star .star-fill{position:absolute;left:0;top:0;height:100%;overflow:hidden;display:block!important}.star-fill svg{fill:#b08131;stroke:#b08131;stroke-width:1.2}.rating-number,.rate .rating-number{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:12px;color:var(--ink);font-weight:650}.rating-number small{color:var(--muted);font-size:9px;font-weight:400}.rate>.rating-display{display:inline-flex!important;flex-direction:column;align-items:flex-start;gap:4px}.tooltip .rating-display,.detailrow .rating-display{flex-direction:row;align-items:center}.tooltip{min-width:240px;max-width:min(300px,85vw)}.tooltip>div{display:flex;justify-content:space-between;align-items:center;gap:12px}.tooltip .rating-visual{--star-size:11px}.detail-rating{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.detail-rating .rating-visual{--star-size:18px}.rating-preview{display:block;margin:9px 0 3px;min-height:20px}.rating-preview .rating-visual{--star-size:20px}.rating-preview-hint{font-size:10px;color:var(--muted)}[data-theme="dark"] .star-fill svg{fill:#e7bc65;stroke:#e7bc65}@media(max-width:600px){.tablewrap .rating-visual{--star-size:7px;gap:0}.tablewrap .rating-number{font-size:10px}.tablewrap .rating-number small{font-size:7px}.tooltip .rating-visual{--star-size:10px}}
