@import "https://fonts.googleapis.com/css2?family=Archivo:wght@500;600;700;800&family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-0:#050b15;--bg-1:#081628;--bg-2:#0d2342;--bg-3:#142e54;--surface:#ffffff09;--surface-2:#ffffff0f;--surface-3:#ffffff17;--line:#ffffff14;--line-strong:#ffffff29;--text:#e6eef8;--text-dim:#a6b7cc;--text-muted:#6a7e97;--blue:#2d7df6;--blue-2:#1e5ac9;--cyan:#7bd6f2;--ice:#c9e6f5;--ember:#e89464;--pine:#6fb58e;--bf:#2d7df6;--personal:#7c3aed;--split:#0891b2;--danger:#e85d75;--danger-bg:#e85d7514;--success:#6fb58e;--fd:"Archivo", system-ui, sans-serif;--fb:"Inter", system-ui, sans-serif;--fm:"JetBrains Mono", ui-monospace, Consolas, monospace;--radius:14px;--radius-lg:22px;--max:700px}html,body,#root{background:var(--bg-0);min-height:100%;color:var(--text-dim);font-family:var(--fb);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.55}button{cursor:pointer;font-family:var(--fb)}input,select,textarea{font-family:var(--fb)}a{color:var(--cyan)}:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.app-shell{min-height:100vh;max-width:var(--max);border-inline:1px solid var(--line);flex-direction:column;margin:0 auto;display:flex}.full-center{justify-content:center;align-items:center;height:100vh;display:flex}.spinner{border:3px solid var(--line-strong);border-top-color:var(--blue);border-radius:50%;width:36px;height:36px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.15)}}.tab-bar{border-bottom:1px solid var(--line);background:var(--bg-0);z-index:10;display:flex;position:sticky;top:0}.tab-btn{font-size:13px;font-weight:600;font-family:var(--fb);color:var(--text-muted);background:0 0;border:none;border-bottom:2px solid #0000;flex:1;justify-content:center;align-items:center;gap:6px;padding:13px 8px;transition:color .15s,border-color .15s;display:flex}.tab-btn.active{color:var(--blue);border-bottom-color:var(--blue)}.tab-btn:hover:not(.active){color:var(--text-dim)}.tab-badge{background:var(--blue);color:#fff;text-align:center;min-width:18px;font-size:10px;font-weight:700;font-family:var(--fm);border-radius:10px;padding:0 5px}.main-content{flex:1;padding:20px 20px 48px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:16px;padding:20px;transition:background .15s,border-color .15s,transform .15s}.card:hover{background:var(--surface-2);border-color:var(--line-strong)}.btn-primary{background:var(--blue);color:#fff;font-size:15px;font-weight:700;font-family:var(--fb);border:none;border-radius:11px;width:100%;padding:13px 20px;transition:background .15s,box-shadow .15s,transform .15s}.btn-primary:hover{background:var(--blue-2);transform:translateY(-1px);box-shadow:0 8px 20px #00000073}.btn-primary:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.btn-ghost{color:var(--text-dim);border:1px solid var(--line-strong);font-size:15px;font-weight:600;font-family:var(--fb);background:#ffffff0f;border-radius:11px;padding:11px 16px;transition:background .15s,border-color .15s}.btn-ghost:hover{border-color:var(--text-muted);background:#ffffff1a}.eyebrow{font-family:var(--fm);letter-spacing:.25em;text-transform:uppercase;color:var(--cyan);align-items:center;gap:8px;margin-bottom:10px;font-size:11px;display:flex}.eyebrow:before{content:"—";opacity:.5}.eyebrow.ember{color:var(--ember)}.eyebrow.pine{color:var(--pine)}.field{margin-bottom:16px}.field-label{font-family:var(--fm);letter-spacing:.22em;text-transform:uppercase;color:var(--text-muted);margin-bottom:7px;font-size:10px;display:block}.field-input{background:var(--bg-1);border:1px solid var(--line-strong);width:100%;color:var(--text);font-size:15px;font-family:var(--fb);border-radius:10px;padding:11px 13px;transition:border-color .15s}.field-input:focus{border-color:var(--blue);outline:none}.field-input::placeholder{color:var(--text-muted)}.chips-scroll{padding-bottom:4px;overflow-x:auto}.chips-row{flex-wrap:nowrap;gap:8px;display:flex}.chip{border:1px solid var(--line-strong);background:var(--surface);color:var(--text-muted);font-size:12px;font-weight:600;font-family:var(--fb);white-space:nowrap;cursor:pointer;border-radius:20px;padding:7px 14px;transition:background .15s,border-color .15s,color .15s}.chip:hover:not(.active){background:var(--surface-2);color:var(--text-dim)}.chip.active{background:var(--blue);border-color:var(--blue);color:#fff}.type-row{gap:8px;display:flex}.type-chip{border:1px solid var(--line-strong);background:var(--surface);color:var(--text-muted);font-size:13px;font-weight:700;font-family:var(--fb);text-align:center;cursor:pointer;border-radius:10px;flex:1;padding:10px 0;transition:background .15s,border-color .15s,color .15s}.type-chip:hover:not(.tc-active){background:var(--surface-2);color:var(--text)}.bar-row{align-items:center;gap:8px;margin-bottom:10px;display:flex}.bar-label{align-items:center;gap:6px;width:120px;min-width:120px;display:flex}.bar-icon{font-size:12px}.bar-cat{font-size:11px;font-family:var(--fb);color:var(--cyan);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.bar-track{background:var(--bg-2);border-radius:3px;flex:1;height:5px;overflow:hidden}.bar-fill{border-radius:3px;height:100%;transition:width .4s}.bar-amount{font-family:var(--fm);color:var(--text-dim);text-align:right;min-width:70px;font-size:11px}.error-box{background:var(--danger-bg);border:1px solid var(--danger);border-radius:var(--radius);color:#f5a3b0;margin-top:12px;padding:14px 16px;font-size:13px;line-height:1.55}.stat-band{background:var(--line);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:1px;margin-bottom:20px;display:grid;overflow:hidden}.stat-cell{background:var(--bg-1);padding:14px 16px}.stat-label{font-family:var(--fm);letter-spacing:.25em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px;font-size:9px}.stat-value{font-family:var(--fd);color:var(--text);font-size:22px;font-weight:700}.stat-value.blue{color:var(--blue)}.stat-value.cyan{color:var(--cyan)}.stat-value.pine{color:var(--pine)}.stat-value.ember{color:var(--ember)}
