[hidden]{display:none!important}.icon svg,nav svg,.module-grid svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.module-grid svg{width:28px;height:28px;color:var(--brand)}nav button{font-size:14px}.ticker{overflow:hidden;border-bottom:1px solid var(--line);background:#0d2130;color:#99f6e4;white-space:nowrap}.ticker div{display:inline-block;padding:8px 0;min-width:100%;animation:ticker 18s linear infinite}@keyframes ticker{from{transform:translateX(100vw)}to{transform:translateX(-100%)}}.dashboard-banner{min-height:142px;border-radius:23px;margin-bottom:14px;padding:22px;display:flex;align-items:flex-end;background:linear-gradient(125deg,#0f766eaa,#082f49dd),radial-gradient(circle at 80% 25%,#f59e0b88,transparent 28%);background-size:cover;background-position:center;box-shadow:var(--shadow);overflow:hidden}.dashboard-banner div{display:grid;gap:5px;text-shadow:0 2px 12px #000}.dashboard-banner b{font-size:21px}.dashboard-banner small{letter-spacing:1.6px;color:#ccfbf1}.period-tabs{display:flex;gap:7px;overflow:auto;padding:2px 0 13px}.period-tabs button{flex:1;min-width:62px;border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:12px;padding:9px}.period-tabs button.active{background:var(--brand2);border-color:var(--brand);color:white}.custom-range{display:grid;grid-template-columns:1fr 1fr auto;gap:7px;margin-bottom:12px}.custom-range input,.custom-range button{min-width:0;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:9px}.custom-range button{background:var(--brand2)}.spending-alert{border:1px solid #f59e0b66;background:#f59e0b18;color:#fde68a;border-radius:15px;padding:13px;margin-top:12px}.analytics{display:grid;gap:11px;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:15px}.analytics.empty{text-align:center;color:var(--muted)}.analytic-row{display:grid;grid-template-columns:1fr auto;gap:6px}.analytic-row small{color:var(--muted)}.analytic-bar{grid-column:1/-1;height:7px;border-radius:8px;background:var(--panel2);overflow:hidden}.analytic-bar i{display:block;height:100%;border-radius:8px;background:linear-gradient(90deg,var(--brand),var(--gold))}.light .ticker{background:#d9f1ed;color:#0f766e}
