:root{--movie: #6b4fd8;--movie-soft: #ece8fc;--ova: #b06a00;--ova-soft: #fbefd9;--bg: #f3f4f8;--surface: #ffffff;--ink: #1a1d2b;--muted: #646a80;--line: #dde0ea;--accent: #e3245f;--accent-ink: #ffffff;--accent-soft: #fce4ec;--teal: #0f8a86;--teal-soft: #ddf3f2;--star: #f2a10c;--danger: #c62828;--display: "Dela Gothic One", "Zen Kaku Gothic New", system-ui, sans-serif;--body: "Zen Kaku Gothic New", "Hiragino Sans", "Yu Gothic", system-ui, sans-serif;--mono: "M PLUS 1 Code", ui-monospace, monospace;color-scheme:light}@media (prefers-color-scheme: dark){:root{--bg: #12141d;--surface: #1c1f2c;--ink: #eceef6;--muted: #9aa0b8;--line: #2e3244;--accent: #ff5c8a;--accent-ink: #1a0b11;--accent-soft: #3a1f2b;--teal: #3cc4be;--teal-soft: #173634;--star: #f7b733;--danger: #ff6b6b;--movie: #b3a2ff;--movie-soft: #2a2447;--ova: #f2b45c;--ova-soft: #3a2c16;color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.6;-webkit-text-size-adjust:100%}#root{padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) calc(48px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.6}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input,select,textarea{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);min-width:0}textarea{resize:vertical}.boot{padding:40px 0;text-align:center;color:var(--muted)}.page{max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.logo{font-family:var(--display);font-weight:400;font-size:26px;line-height:1.1;margin:0;letter-spacing:.02em}.logo span{color:var(--accent)}.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.account{display:flex;gap:10px;align-items:center;font-size:12px;color:var(--muted);min-width:0}.email{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.btn{border:0;border-radius:10px;padding:10px 16px;font-weight:700;background:var(--accent);color:var(--accent-ink);white-space:nowrap}.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.btn.danger{background:transparent;color:var(--danger);border:1px solid var(--danger);margin-left:auto}.link{border:0;background:none;padding:2px 4px;color:var(--muted);font-size:13px;text-decoration:underline;text-underline-offset:3px}.link.left{align-self:flex-start;padding-left:0}.toolbar{display:flex;gap:10px;flex-wrap:wrap}.toolbar .search{flex:1 1 220px}.filters{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.chip{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:999px;padding:4px 12px;font-size:13px;display:inline-flex;gap:6px;align-items:center}.chip .num{font-family:var(--mono);font-size:11px;font-variant-numeric:tabular-nums}.chip[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.filters select{width:auto;margin-left:auto;padding:5px 8px;font-size:13px;border-radius:8px}.list{display:flex;flex-direction:column;gap:12px}.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:10px;min-width:0}.card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.title{margin:0;font-size:17px;line-height:1.4;overflow-wrap:anywhere;text-wrap:balance}.meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--muted)}.pill{font-size:11px;font-weight:700;letter-spacing:.04em;padding:1px 8px;border-radius:999px;border:1px solid currentColor}.s-done{color:var(--teal)}.s-watching{color:var(--accent)}.s-plan,.s-drop{color:var(--muted)}.stars{letter-spacing:1px;font-size:14px}.stars .on{color:var(--star)}.stars .off{color:var(--line)}.note{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px}.more{font-size:12px;color:var(--muted)}.cues{list-style:none;margin:0;padding:8px 0 0;border-top:1px dashed var(--line);display:flex;flex-direction:column;gap:6px}.cue{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:10px;align-items:start}.kind{font-family:var(--mono);font-size:11px;font-weight:600;text-align:center;border-radius:4px;padding:2px 0;margin-top:2px;color:var(--accent);background:var(--accent-soft)}.kind.k-ED{color:var(--teal);background:var(--teal-soft)}.kind.k-IN{color:var(--muted);background:var(--bg)}.song{display:flex;flex-wrap:wrap;column-gap:8px;row-gap:0;min-width:0;font-size:14px}.song-title{font-weight:700;overflow-wrap:anywhere}.artist{color:var(--muted);overflow-wrap:anywhere}.eps{color:var(--muted);font-family:var(--mono);font-size:11px;align-self:center}.play{font-size:12px;font-weight:700;color:var(--teal);text-decoration:none;white-space:nowrap;padding-top:2px}.play:hover{text-decoration:underline}.empty{text-align:center;color:var(--muted);padding:32px 16px;border:1px dashed var(--line);border-radius:14px}.empty p{margin:4px 0}.notice{margin:0;padding:10px 12px;border-radius:10px;background:var(--surface);border:1px solid var(--line);color:var(--muted);font-size:13px}.muted{color:var(--muted)}.small{font-size:12px}.error{margin:0;color:var(--danger);font-size:13px}.hint{margin:0;color:var(--muted);font-size:12px}.panel{background:var(--surface);border:2px solid var(--ink);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:14px}.panel-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}.panel-head h2,.picked h3{margin:0;font-size:18px;line-height:1.4;overflow-wrap:anywhere}.picked{display:flex;flex-direction:column;gap:2px}.stack{display:flex;flex-direction:column;gap:12px}.row{display:flex;gap:8px}.row input{flex:1}.field{display:flex;flex-direction:column;gap:6px}.label{font-size:12px;font-weight:700;color:var(--muted);letter-spacing:.04em}.actions{display:flex;gap:8px;flex-wrap:wrap}.segmented{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:10px;overflow:hidden}.segmented button{border:0;border-right:1px solid var(--line);background:var(--surface);padding:8px 4px;font-size:13px;color:var(--muted)}.segmented button:last-child{border-right:0}.segmented button[aria-pressed=true]{background:var(--ink);color:var(--bg);font-weight:700}.star-input{display:flex;align-items:center;gap:2px}.star-input button{border:0;background:none;font-size:28px;line-height:1;padding:2px;color:var(--line)}.star-input button.on{color:var(--star)}.star-input .muted{margin-left:8px}.results{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:10px;overflow:hidden}.results li+li{border-top:1px solid var(--line)}.result{width:100%;border:0;background:var(--surface);padding:12px;text-align:left;display:flex;justify-content:space-between;gap:12px;align-items:baseline}.result:hover:not(:disabled){background:var(--bg)}.result-title{font-weight:700;overflow-wrap:anywhere}.song-fields{border:1px solid var(--line);border-radius:10px;padding:10px;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}.song-fields legend{padding:0 4px}.song-fields legend select{width:auto;padding:2px 6px;font-size:12px;font-weight:700}.song-fields input:last-child{grid-column:1 / -1}.login{min-height:80vh;display:grid;place-items:center}.login-card{width:100%;max-width:400px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:28px 22px;display:flex;flex-direction:column;gap:16px}.login-card .logo{font-size:32px}.lead{margin:0;color:var(--muted)}.btn.google{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--surface);color:var(--ink);border:1px solid var(--line);padding:12px 16px}.btn.google:hover{border-color:var(--muted)}.divider{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12px}.divider:before,.divider:after{content:"";flex:1;border-top:1px solid var(--line)}.sent{line-height:1.8;display:flex;flex-direction:column;gap:8px;align-items:flex-start}@media (max-width: 480px){.song-fields{grid-template-columns:1fr}.btn.danger{margin-left:0}}@media (prefers-reduced-motion: no-preference){.card,.result,.chip{transition:border-color .15s,background-color .15s}}.card.series{padding:0;gap:0}.series-head{width:100%;border:0;background:none;text-align:left;padding:16px;display:flex;flex-direction:column;gap:8px;border-radius:14px}.series-head:hover .toggle{color:var(--ink)}.series-title-row{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.count-badge{flex:none;font-family:var(--mono);font-size:11px;font-weight:600;color:var(--muted);border:1px solid var(--line);border-radius:6px;padding:1px 6px}.avg{font-family:var(--mono);font-size:12px;font-variant-numeric:tabular-nums}.toggle{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}.chevron{display:inline-block;font-size:11px}.series.open .chevron{transform:rotate(90deg)}.seasons{display:flex;flex-direction:column;gap:0;padding:0 16px 16px;border-top:1px solid var(--line)}.season{display:flex;flex-direction:column;gap:8px;padding:14px 0;border-bottom:1px dashed var(--line)}.seasons .more{padding-top:12px}.season-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.season-name{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;min-width:0}.season-label{font-weight:700;font-size:15px}.season-title{font-size:13px;color:var(--muted);overflow-wrap:anywhere}.season .cues{border-top:0;padding-top:0}.link.inline{padding:0;font-size:12px}@media (prefers-reduced-motion: no-preference){.chevron{transition:transform .15s}}.result{align-items:center}.result-main{display:flex;flex-direction:column;gap:2px;min-width:0}.result.added .result-title{color:var(--muted)}.added-badge{flex:none;display:inline-flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:11px;font-weight:700;color:var(--teal)}.added-action{font-weight:400;color:var(--muted);font-size:11px}.season-head .link,.card-top .link{flex:none;white-space:nowrap}.flash{margin:0;padding:10px 12px;border-radius:10px;background:var(--teal-soft);color:var(--ink);font-size:13px;font-weight:700;display:flex;flex-wrap:wrap;gap:4px 8px;align-items:baseline}.flash .muted{font-weight:400}.picker{position:relative}.picker input{padding-right:40px}.picker-toggle{position:absolute;top:0;right:0;height:100%;width:40px;border:0;background:none;color:var(--muted);font-size:14px}.picker-list{position:absolute;z-index:5;top:calc(100% + 4px);left:0;right:0;margin:0;padding:4px;list-style:none;max-height:260px;overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px #00000026}.picker-list li{padding:10px;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between;gap:8px;overflow-wrap:anywhere}.picker-list li:hover,.picker-list li.active{background:var(--bg)}.picker-list li.picker-new{cursor:default;color:var(--muted);font-size:12px}.picker-current{flex:none;font-size:11px;color:var(--teal);font-weight:700}.series-hint{font-size:12px;color:var(--ink);display:flex;flex-wrap:wrap;gap:2px 6px;margin-top:4px}.media-badge{display:inline-block;flex:none;font-size:10px;font-weight:700;letter-spacing:.04em;line-height:1;padding:4px 6px;border-radius:4px;margin-right:6px;vertical-align:2px;color:var(--teal);background:var(--teal-soft)}.media-badge.m-movie{color:var(--movie);background:var(--movie-soft)}.media-badge.m-ova{color:var(--ova);background:var(--ova-soft)}.media-badge.m-other{color:var(--muted);background:var(--bg)}.season-name .media-badge{margin-right:0;align-self:center}.picked .media-badge{align-self:flex-start}.count-badge{white-space:nowrap}
