:root{color-scheme:light;--background:#f7f8f5;--surface:#ffffff;--surface-muted:#eef2ed;--text:#18201c;--muted:#69736d;--line:#dfe5df;--accent:#176b55;--accent-weak:#dcebe5;--danger:#b42318;--warning:#9a5b00;--shadow:0 18px 40px rgba(24,32,28,0.08)}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--background);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}.page-shell{min-height:100vh;padding:28px}.auth-shell{display:grid;min-height:100vh;place-items:center;padding:24px}.auth-card{width:min(460px,100%);border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow);padding:28px}.app-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin:0 auto 24px;max-width:1320px}.eyebrow{color:var(--accent);font-size:13px;font-weight:700;letter-spacing:0;margin:0 0 8px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(28px,4vw,42px);line-height:1.08;margin-bottom:10px}.subtle{color:var(--muted);line-height:1.55}.toolbar{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.button,.icon-button{align-items:center;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);display:inline-flex;gap:8px;min-height:40px;padding:0 14px;text-decoration:none;transition:background .16s ease,border-color .16s ease,color .16s ease}.button.primary{background:var(--accent);border-color:var(--accent);color:white}.button.danger{color:var(--danger)}.button:hover,.icon-button:hover{border-color:#b8c4bb}.button.primary:hover{background:#125844}.stats-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 auto 18px;max-width:1320px}.stat{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:18px}.stat span{color:var(--muted);display:block;font-size:13px;margin-bottom:8px}.stat strong{font-size:28px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);margin:0 auto;max-width:1320px}.filters{align-items:end;border-bottom:1px solid var(--line);display:grid;grid-gap:12px;gap:12px;grid-template-columns:minmax(220px,1fr) repeat(3,minmax(140px,180px));padding:16px}.field{display:grid;grid-gap:6px;gap:6px}.field label{color:var(--muted);font-size:13px;font-weight:650}.input,.select,.textarea{background:white;border:1px solid var(--line);border-radius:8px;color:var(--text);min-height:40px;padding:9px 11px;width:100%}.textarea{min-height:92px;resize:vertical}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}td,th{border-bottom:1px solid var(--line);padding:13px 16px;text-align:left;vertical-align:middle;white-space:nowrap}th{background:#fbfcfa;color:var(--muted);font-size:12px;font-weight:750}td.notes{max-width:240px;overflow:hidden;text-overflow:ellipsis}.badge{align-items:center;background:var(--surface-muted);border-radius:999px;display:inline-flex;font-size:12px;font-weight:700;min-height:26px;padding:0 10px}.badge.owned{background:var(--accent-weak);color:var(--accent)}.badge.watch{background:#f7eddb;color:var(--warning)}.row-actions{display:flex;gap:8px;justify-content:flex-end}.empty{padding:52px 20px;text-align:center}.modal-backdrop{align-items:center;background:rgba(10,14,12,.36);display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:20}.modal{background:var(--surface);border-radius:8px;box-shadow:var(--shadow);max-height:min(820px,calc(100vh - 40px));overflow:auto;padding:22px;width:min(760px,100%)}.modal-head{align-items:center;display:flex;justify-content:space-between;gap:16px;margin-bottom:18px}.form-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid .wide{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.import-export{display:grid;grid-gap:14px;gap:14px}.notice{background:#f4f7f4;border:1px solid var(--line);border-radius:8px;color:var(--muted);padding:12px}.error{color:var(--danger)}@media (max-width:860px){.page-shell{padding:18px}.app-header{display:grid}.toolbar{justify-content:flex-start}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filters,.form-grid{grid-template-columns:1fr}}@media (max-width:520px){.stats-grid{grid-template-columns:1fr}.button{justify-content:center;width:100%}}