:root{--ground: #f6f1e7;--card: #fffdf8;--ink: #1d1a16;--muted: #6b6358;--line: #e2d9c8;--accent: #c2410c;--accent-ink: #ffffff;--soft: #f3e3d3;--book: #5b6b3a;--movie: #7a3b2e;--series: #2f5d73;--game: #5a3f7a;--radius: 14px;color-scheme:light}@media (prefers-color-scheme: dark){:root{--ground: #181512;--card: #221e1a;--ink: #f1ebe1;--muted: #a59b8c;--line: #3a332c;--accent: #f07a3e;--accent-ink: #1d1a16;--soft: #3a2a1f;color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0;background:var(--ground);color:var(--ink)}body{font:16px/1.45 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-tap-highlight-color:transparent}button,input{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--accent)}.wordmark{font:700 44px/1 Georgia,Times New Roman,serif;letter-spacing:-.02em;margin:0}.wordmark.small{font-size:24px}.m{color:var(--muted);font-size:14px;margin:0}.sub{color:var(--muted);margin:8px 0 20px}.empty{color:var(--muted);text-align:center;padding:32px 8px}.door{max-width:420px;margin:0 auto;padding:18vh 16px 32px}.door form{display:grid;gap:12px}.field{display:grid;gap:4px;font-size:14px;color:var(--muted)}.field input,.field-input,.search{width:100%;font-size:17px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink)}.primary{border:0;border-radius:12px;padding:14px 18px;font-weight:600;background:var(--accent);color:var(--accent-ink);width:100%}.primary:disabled{opacity:.55}.quiet{border:1px solid var(--line);background:transparent;border-radius:999px;padding:8px 14px;font-size:14px}.quiet.on{border-color:var(--accent);color:var(--accent)}.quiet.box{border-radius:10px;width:100%;padding:12px}.notice{margin:16px 0 0;padding:10px 12px;border-radius:10px;background:var(--soft);font-size:14px}.app{max-width:560px;margin:0 auto;padding:0 16px calc(88px + env(safe-area-inset-bottom))}.top{display:flex;justify-content:space-between;align-items:baseline;padding:calc(14px + env(safe-area-inset-top)) 0 10px}.tabs{position:fixed;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(4,1fr);background:var(--card);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.tabs button{border:0;background:none;padding:16px 0;font-weight:600;color:var(--muted)}.tabs button.on{color:var(--accent)}.toast{position:fixed;left:16px;right:16px;top:calc(10px + env(safe-area-inset-top));max-width:528px;margin:0 auto;padding:12px 14px;border-radius:12px;background:var(--ink);color:var(--ground);font-size:15px;text-align:center;z-index:10}.loading{min-height:100vh}.seg{display:flex;gap:4px;padding:4px;border-radius:12px;background:var(--soft);margin-bottom:12px}.seg button{flex:1;border:0;background:none;border-radius:9px;padding:9px 6px;font-size:14px;font-weight:600;color:var(--muted)}.seg button.on{background:var(--card);color:var(--ink);box-shadow:0 1px 2px #0000001f}.seg.wrap{flex-wrap:wrap}.seg.wrap button{flex:1 1 45%}.chips{display:flex;gap:6px;overflow-x:auto;margin:10px 0;scrollbar-width:none}.chips button{flex:none;border:1px solid var(--line);background:var(--card);border-radius:999px;padding:7px 13px;font-size:14px}.chips button.on{background:var(--ink);color:var(--ground);border-color:var(--ink)}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:14px 14px 12px;text-align:center}.card h2{font-size:21px;line-height:1.2;margin:10px 0 2px}.card .cover{width:92px;height:132px;margin:0 auto}.card .cover.blank{font-size:40px}.cover{display:block;object-fit:cover;border-radius:8px;background:var(--soft)}.cover.blank{display:grid;place-items:center;color:#fff;font:700 56px/1 Georgia,serif}.kind-book{background:var(--book)}.kind-movie{background:var(--movie)}.kind-series{background:var(--series)}.kind-game{background:var(--game)}.for{color:var(--accent);font-size:14px;margin:6px 0 0}.with{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;align-items:center;margin:14px 0 0}.with span{color:var(--muted);font-size:14px;margin-right:4px}.with button{border:1px solid var(--line);background:none;border-radius:999px;padding:6px 12px;font-size:14px}.with button.on{border-color:var(--accent);background:var(--soft)}.scores{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:16px 0 12px}.scores button{border:1px solid var(--line);background:var(--ground);border-radius:12px;height:56px;font-size:20px;font-weight:700}.scores button small{font-size:14px;color:var(--accent);margin-left:2px}.scores.faces button{font-size:28px}.scores button.on{border-color:var(--accent);background:var(--soft)}.scores button:active{transform:scale(.96)}.actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.left{color:var(--muted);font-size:13px;margin:12px 0 0}.results{list-style:none;padding:0;margin:12px 0}.results li button{display:grid;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);background:none;padding:10px 2px}.results .t{font-weight:600}.results .m{font-size:13px}.request{margin:4px 0 16px;display:grid;gap:8px}.pick-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}.pick-list li{display:grid;grid-template-columns:64px 1fr;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:12px}.pick-list li.dim{opacity:.5}.pick-list .cover{width:64px;height:92px}.pick-list .cover.blank{font-size:28px}.pick-list h3{font-size:17px;margin:0 0 2px;line-height:1.25}.why{margin:6px 0 8px;font-size:15px}.pick-list .actions{justify-content:flex-start}.add h2{font-size:18px;margin:20px 0 8px}.add form{display:grid;gap:12px}.row{display:grid;grid-template-columns:1fr 1.4fr;gap:10px}.import{display:grid;gap:8px;padding:14px 0;border-top:1px solid var(--line)}.import h3{margin:0;font-size:16px}.foot{display:flex;justify-content:space-between;align-items:center;margin-top:28px}.status:empty{display:none}.status{scroll-margin-bottom:calc(96px + env(safe-area-inset-bottom))}.file{display:block;text-align:center;position:relative}.file input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.file.disabled{opacity:.55}.working{display:flex;align-items:center;gap:8px;margin:4px 0 0;font-size:14px}.spinner{width:16px;height:16px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.spinner{animation-duration:2.4s}}.notice.ok{margin-top:4px}.notice.error{margin-top:4px;background:#fbe0d6;color:#7a2410}@media (prefers-color-scheme: dark){.notice.error{background:#4a2216;color:#ffd9c9}}.imported{list-style:none;padding:0;margin:8px 0 0}.imported li{display:grid;padding:8px 0;border-bottom:1px solid var(--line)}.imported .t{font-weight:600;font-size:15px}.imported .m{font-size:13px}.new{display:inline-block;margin-right:6px;padding:0 6px;border-radius:6px;background:var(--accent);color:var(--accent-ink);font-size:12px;font-weight:700;vertical-align:1px}.imported li.with-cover{grid-template-columns:40px 1fr;column-gap:10px}.imported li.with-cover .cover{grid-row:span 2;width:40px;height:58px}.imported li.with-cover .cover.blank{font-size:20px}.unmatched{margin:4px 0 8px;padding-left:20px;font-size:14px}.match{margin:4px 0 0}.profiles{display:grid;gap:4px}.steps{margin:0;padding-left:22px;font-size:14px;color:var(--muted);display:grid;gap:2px}.toast{display:flex;align-items:center;justify-content:center;gap:12px}.toast .undo{border:1px solid currentColor;background:none;color:inherit;border-radius:999px;padding:4px 14px;font-weight:700}.count{margin:0 0 6px}.rated-list{list-style:none;padding:0;margin:0}.rated-list li button{display:grid;grid-template-columns:44px 1fr;column-gap:12px;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);background:none;padding:10px 2px}.rated-list .cover{grid-row:span 3;width:44px;height:64px}.rated-list .cover.blank{font-size:22px}.rated-list .t{font-weight:600}.rated-list .m{font-size:13px}.scores-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.score-chip{font-size:13px;font-weight:700;padding:1px 8px;border-radius:999px;background:var(--soft)}.rated-item>.quiet{margin-bottom:10px}.edit-score{margin-top:14px}.edit-score .who{margin:0;font-size:14px;color:var(--muted)}.edit-score .scores{margin:8px 0}.where{margin:6px 0 0;font-size:14px;font-weight:600;color:var(--accent)}.chips.show button.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.queue{list-style:none;padding:0;margin:0;display:grid;gap:10px}.queue li{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:10px}.queue .open{display:grid;grid-template-columns:48px 1fr;gap:12px;align-items:center;width:100%;border:0;background:none;padding:0;text-align:left}.queue .cover{width:48px;height:68px}.queue .cover.blank{font-size:24px}.queue h3{margin:0;font-size:16px;line-height:1.25}.queue .m{font-size:13px}.queue .scores{margin:10px 0 8px;gap:5px}.queue .scores button{height:44px;font-size:17px}.queue .scores.faces button{font-size:24px}.queue .actions .quiet{padding:6px 11px;font-size:13px}.more{margin-top:12px}.door .google{margin:4px 0 0}.divider{text-align:center;color:var(--muted);font-size:14px;margin:14px 0 6px}.links{display:flex;gap:12px;flex-wrap:wrap;font-size:14px;margin:6px 0 0}.card .links{justify-content:center}.links a{font-weight:600;text-decoration:none}
