@charset "UTF-8";:root,[data-theme=midnight]{--bg: #0d0f15;--bg-elev: #161a24;--bg-elev-2: #1f2431;--border: #2a3040;--text: #e7e9f0;--text-dim: #98a2b3;--primary: #6c8cff;--primary-600: #5577ee;--on-primary: #ffffff;--green: #34d399;--red: #f87171;--amber: #fbbf24;--radius: 16px;--shadow: 0 10px 30px rgba(0, 0, 0, .4);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);color-scheme:dark}[data-theme=slate]{--bg: #11131a;--bg-elev: #191c24;--bg-elev-2: #232733;--border: #2f3441;--text: #e8eaf0;--text-dim: #9aa2b1;--primary: #8aa0c6;--primary-600: #6f88b3;--on-primary: #0d0f15;--green: #4ade80;--red: #f87171;--amber: #fbbf24;--radius: 14px;--shadow: 0 10px 28px rgba(0, 0, 0, .38);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .28);color-scheme:dark}[data-theme=ocean]{--bg: #07141c;--bg-elev: #0e2230;--bg-elev-2: #143140;--border: #1d3d4e;--text: #e2f1f6;--text-dim: #8db2c0;--primary: #27c4d6;--primary-600: #1ba3b4;--on-primary: #052029;--green: #34d399;--red: #fb7185;--amber: #f4b740;--radius: 16px;--shadow: 0 12px 32px rgba(0, 20, 30, .5);--shadow-sm: 0 2px 8px rgba(0, 20, 30, .35);color-scheme:dark}[data-theme=grape]{--bg: #120f1e;--bg-elev: #1c172e;--bg-elev-2: #271f3f;--border: #392c56;--text: #ece8f6;--text-dim: #a99fc2;--primary: #a06bff;--primary-600: #8a4ff0;--on-primary: #ffffff;--green: #4ade80;--red: #fb7185;--amber: #fbbf24;--radius: 18px;--shadow: 0 14px 36px rgba(20, 0, 40, .5);--shadow-sm: 0 2px 10px rgba(20, 0, 40, .35);color-scheme:dark}[data-theme=light]{--bg: #f5f7fb;--bg-elev: #ffffff;--bg-elev-2: #eef1f7;--border: #e1e6ef;--text: #1a1d27;--text-dim: #5c6678;--primary: #3b6fd4;--primary-600: #2f5cb8;--on-primary: #ffffff;--green: #16a34a;--red: #dc2626;--amber: #d97706;--radius: 14px;--shadow: 0 10px 26px rgba(20, 30, 60, .1);--shadow-sm: 0 1px 4px rgba(20, 30, 60, .08);color-scheme:light}[data-theme=sand]{--bg: #f7f3ec;--bg-elev: #fffdf9;--bg-elev-2: #efe8db;--border: #e3dac8;--text: #2a2419;--text-dim: #7a6f5b;--primary: #b9772a;--primary-600: #9c6320;--on-primary: #ffffff;--green: #4d7c0f;--red: #c0392b;--amber: #b45309;--radius: 14px;--shadow: 0 10px 26px rgba(80, 60, 20, .12);--shadow-sm: 0 1px 4px rgba(80, 60, 20, .08);color-scheme:light}*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;transition:background .25s ease,color .25s ease}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{font-weight:680;letter-spacing:-.015em}.card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--border);background:var(--bg-elev-2);color:var(--text);padding:9px 16px;border-radius:11px;font-size:14px;font-weight:560;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,transform .05s,box-shadow .15s}.btn:hover{background:color-mix(in srgb,var(--bg-elev-2) 80%,var(--text) 8%)}.btn:active{transform:translateY(1px)}.btn.primary{background:linear-gradient(180deg,var(--primary),var(--primary-600));border-color:transparent;color:var(--on-primary);box-shadow:0 4px 14px color-mix(in srgb,var(--primary) 35%,transparent)}.btn.primary:hover{filter:brightness(1.05)}.btn.danger{color:var(--red);border-color:color-mix(in srgb,var(--red) 35%,var(--border))}.btn.danger:hover{background:color-mix(in srgb,var(--red) 12%,var(--bg-elev-2))}.btn:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{width:100%;background:var(--bg);border:1px solid var(--border);color:var(--text);padding:10px 12px;border-radius:11px;font-size:14px;outline:none;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 25%,transparent)}input:disabled{opacity:.6}label{display:block;font-size:13px;color:var(--text-dim);margin-bottom:6px}.field{margin-bottom:14px}.table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--border);font-size:14px}th{color:var(--text-dim);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.04em}tr:last-child td{border-bottom:none}.num{text-align:right;font-variant-numeric:tabular-nums}.table-scroll{width:100%;max-height:58vh;overflow:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:12px}.table-scroll table{width:100%}.table-scroll>table>thead th{position:sticky;top:0;z-index:2;background:var(--bg-elev-2);box-shadow:inset 0 -1px 0 var(--border)}th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}th.sortable:hover{color:var(--primary)}.table-empty{padding:28px;text-align:center;color:var(--text-dim)}.pos{color:var(--green)}.neg{color:var(--red)}.dim{color:var(--text-dim)}.pill{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;background:var(--bg-elev-2);border:1px solid var(--border);color:var(--text-dim)}.toast{position:fixed;bottom:24px;right:24px;background:var(--bg-elev-2);border:1px solid var(--border);padding:12px 18px;border-radius:12px;box-shadow:var(--shadow);z-index:60}.toast.error{border-color:color-mix(in srgb,var(--red) 45%,var(--border));color:var(--red)}.toast.ok{border-color:color-mix(in srgb,var(--green) 45%,var(--border));color:var(--green)}@media(max-width:760px){h1{font-size:20px!important}.card{padding:16px}table{display:block;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}.table-scroll table{display:table;overflow:visible}}
