@import "https://fonts.googleapis.com/css2?family=Cinzel:wght@500;700&family=Inter:wght@400;500;600;700&display=swap";:root{--bg:#0c0d12;--bg-2:#14161f;--panel:#1a1d29;--panel-2:#10131c;--border:#2a2f42;--accent:#2fd7c4;--accent-dim:#1a8f82;--gold:#d9ac54;--text:#e8e6df;--sub:#8b8f9e;--green:#2fbf7c;--amber:#d9ac54;--red:#d9534f;--input-bg:#0e1018;--font-display:"Cinzel", "Segoe UI", serif;--font-body:"Inter", "Segoe UI", system-ui, sans-serif;font-family:var(--font-body);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{background:radial-gradient(ellipse 900px 500px at 50% -10%, #2fd7c40f, transparent), var(--bg);color:var(--text);margin:0}#root{flex-direction:column;min-height:100svh;display:flex}input,select,textarea,button{font-family:inherit}table{border-collapse:collapse}.app-header{background:linear-gradient(180deg, #0c0d1266, #0c0d12d9), radial-gradient(ellipse 600px 200px at 20% 0%, #d9ac542e, transparent 70%), radial-gradient(ellipse 600px 200px at 80% 0%, #2fd7c424, transparent 70%), var(--bg-2);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.app-header h1{font-family:var(--font-display);letter-spacing:.03em;color:var(--gold);text-shadow:0 0 18px #d9ac5459;margin:0;font-size:19px;font-weight:700}.app-header .status{color:var(--sub);font-variant-numeric:tabular-nums;font-size:12px}.tabs{background:var(--panel-2);border-bottom:1px solid var(--border);display:flex;overflow-x:auto}.tabs button{color:var(--sub);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.09em;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;padding:12px 20px;font-size:12px;font-weight:600;transition:color .15s,border-color .15s}.tabs button:hover{color:var(--text)}.tabs button.active{color:var(--accent);border-bottom-color:var(--accent)}.page{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:20px}.page-wide{max-width:1600px}@media (width>=1900px){.page-wide{max-width:2040px}}.dash-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:16px;display:grid}.overview-grid{grid-template-columns:1fr 1fr;align-items:start;gap:16px;display:grid}@media (width<=1100px){.overview-grid{grid-template-columns:1fr}}.dash-grid-compact{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}@media (width>=1900px){.dash-grid-compact{grid-template-columns:repeat(3,1fr)}}.stat-row{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.stat-card{background:linear-gradient(180deg, var(--panel), var(--panel-2));border:1px solid var(--border);text-align:center;border-radius:8px;min-width:90px;padding:12px 16px}.stat-card .label{color:var(--sub);text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px;font-size:10px}.stat-card .value{font-family:var(--font-display);font-size:19px;font-weight:700}.color-green{color:var(--green)}.color-amber{color:var(--amber)}.color-red{color:var(--red)}.color-sub{color:var(--sub)}.card{background:linear-gradient(180deg, var(--panel), var(--panel-2));border:1px solid var(--border);border-radius:10px;margin-bottom:16px;padding:18px 20px;box-shadow:inset 0 1px #ffffff05}.card h2{font-family:var(--font-display);letter-spacing:.02em;color:var(--gold);margin:0 0 14px;font-size:14px;font-weight:700}.form-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px 20px;display:grid}.field label{text-transform:uppercase;letter-spacing:.05em;color:var(--sub);margin-bottom:5px;font-size:10px;display:block}.field select,.field input,.field textarea{background:var(--input-bg);border:1px solid var(--border);width:100%;color:var(--text);border-radius:5px;padding:7px 9px;font-size:13px;transition:border-color .15s}.field select:focus,.field input:focus,.field textarea:focus{border-color:var(--accent-dim);outline:none}.field textarea{resize:vertical}.btn{background:linear-gradient(180deg, var(--accent), var(--accent-dim));color:#06201c;letter-spacing:.02em;cursor:pointer;border:none;border-radius:20px;padding:9px 20px;font-size:13px;font-weight:700;transition:filter .15s,transform .1s}.btn:hover{filter:brightness(1.08)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:default}.btn.secondary{background:var(--panel-2);color:var(--text);border:1px solid var(--border)}.btn.danger{background:linear-gradient(180deg, #e2716e, var(--red));color:#2a0b0a}.msg-success{color:var(--green);margin:8px 0;font-size:13px}.msg-error{color:var(--red);margin:8px 0;font-size:13px}.data-table{width:100%;font-size:12px}.data-table th{background:var(--panel-2);color:var(--gold);font-family:var(--font-display);letter-spacing:.03em;text-align:left;border-bottom:1px solid var(--border);padding:7px 8px;font-size:11px;font-weight:700;position:sticky;top:0}.data-table td{white-space:nowrap;border-bottom:1px solid #ffffff0a;padding:6px 8px}.data-table tr:hover td{background:#2fd7c40a}.data-table tr.win .result-cell{color:var(--green);font-weight:600}.data-table tr.loss .result-cell{color:var(--red);font-weight:600}.table-wrap{border:1px solid var(--border);border-radius:8px;max-height:70vh;overflow:auto}.char-summary-row{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.char-summary-row .name{font-family:var(--font-display);color:var(--gold);min-width:110px;font-size:15px;font-weight:700}.asc-pill-row{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.pill{background:var(--panel-2);border:1px solid var(--border);border-radius:20px;padding:4px 10px;font-size:11px;font-weight:600}.boss-grid{flex-wrap:wrap;gap:8px;display:flex}.boss-card{background:var(--panel-2);border:1px solid var(--border);text-align:center;border-radius:8px;min-width:110px;padding:9px 12px;transition:border-color .15s}.boss-card:hover{border-color:var(--accent-dim)}button.boss-card{color:var(--text);text-align:center;cursor:pointer;width:auto}.boss-card .boss-name{margin-bottom:2px;font-size:12px;font-weight:700}.boss-card .boss-sub{color:var(--sub);font-size:10px}.relic-search{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.empty-state{color:var(--sub);text-align:center;font-family:var(--font-display);letter-spacing:.02em;padding:40px}
