/* Tesuro Finance v9: low-saturation graphite and sage. Visual-only override.
   Loaded after the legacy base / income CSS; it does not alter data or events. */
:root {
  --bg: #14191b;
  --bg-deep: #101416;
  --panel: #1b2324;
  --panel-solid: #1c2526;
  --line: rgba(162,181,176,.14);
  --line-strong: rgba(162,181,176,.25);
  --text: #e9efed;
  --muted: #a1ada9;
  --muted-2: #82928b;
  --accent: #88ac98;
  --accent-2: #b3cbbb;
  --success: #8db69d;
  --warning: #cabf94;
}
body {background:#14191b;color:var(--text);}
.auth-page {background:radial-gradient(circle at 48% 18%,rgba(106,144,124,.065),transparent 39rem),#14191b;}
.auth-topbar,.auth-footer {color:#a3afa9;}
.auth-card {background:linear-gradient(145deg,#212b2b,#1a2223 73%);border-color:#34413d;box-shadow:0 22px 75px rgba(0,0,0,.23);}
.auth-card::before {background:rgba(130,165,145,.06);}
.currency-icon {background:linear-gradient(145deg,rgba(47,65,58,.8),rgba(29,40,37,.8));border-color:rgba(164,190,170,.12);color:#9ab2a1;}
.brand-mark,.avatar {background:#9fc7ae;color:#172820;box-shadow:none;}
.auth-button {background:#9fc7ae;color:#15231c;box-shadow:none;}
.auth-button:hover {background:#b4d3bd;}
.email-input {background:#172021;border-color:#394946;}
.email-input:focus {border-color:#8caf9b;box-shadow:0 0 0 4px rgba(140,175,155,.10);}
.kicker,.text-button {color:#9dbbaa;}
.guard-screen {background:#14191b;}
.app-layout,.app-layout .app-content {background:#14191b;}
.sidebar {background:#171e20;border-right-color:#303d39;}
.brand {color:#e6eeea;}
.nav-btn {color:#9ba8a3;}
.nav-btn:hover {background:#252e2e;color:#ecf2ef;}
.nav-btn.active {background:#293d34;color:#e3f0e7;box-shadow:inset 3px 0 #8eafa0;}
.account-button {background:#202a29;border-color:#354540;color:#e6eee9;}
.account-meta span {color:#97a9a0;}
.account-drawer {background:#192222;border-left-color:#384842;}
.account-overlay {background:rgba(5,9,9,.68);}
.profile-card {background:#1f2b29;border-color:#394b42;color:#e8f0eb;}
.profile-label {color:#99aca1;}
.profile-email {color:#c1ccc6;}
.session-status {background:rgba(125,171,143,.11);color:#b7d6c2;}
.session-status i {background:#97c3a7;}
.drawer-copy {color:#a4b1aa;}
.icon-button {background:#273330;border-color:#3b4b45;color:#c8d7ce;}
.logout-button {background:#2c2929;border-color:#61514e;color:#e3bbb6;}
.logout-button:hover {background:#392e2d;}
.app-header {background:rgba(20,25,27,.96);border-bottom-color:#303c39;}
.header-pill {background:#232e2c;border-color:#37463e;color:#a9bcae;}
.snapshot-pill {background:#a5c6ae;color:#172a1f;}
.finance-hero,.welcome-panel {background:linear-gradient(120deg,#24332e,#1d2928 73%);border-color:#3c5246;}
.finance-hero p,.welcome-panel p {color:#b0c0b7;}
.metric-card,.setup-card,.finance-menu-grid button,.empty-page {background:#1d2727;border-color:#34413d;color:#e7eeea;}
.metric-card:hover,.finance-menu-grid button:hover {background:#293432;border-color:#597466;}
.metric-card strong {color:#d9e8dd;}
.finance-menu-grid button i {background:#304138;color:#c0d5c5;}
.mobile-nav {background:rgba(21,29,29,.97);border-top-color:#38453e;}
.mobile-nav button {color:#9baaa0;}
.mobile-nav button.active {color:#b5d1bf;}
.finance-hero .hero-currency {color:rgba(178,207,183,.08);}
/* Account name editing uses Supabase user_metadata, not financial tables. */
.profile-display-name {font-size:21px;line-height:1.25;font-weight:720;letter-spacing:-.03em;overflow-wrap:anywhere;margin:8px 0 14px;}
.profile-email-label {margin-top:14px;}
.profile-name-form {margin-top:24px;padding-top:19px;border-top:1px solid #394a41;}
.profile-name-form>label {display:block;font-size:12px;font-weight:650;color:#d4e3da;margin-bottom:9px;}
.profile-name-controls {display:flex;gap:9px;align-items:stretch;}
.profile-name-controls input {width:100%;min-width:0;border:1px solid #40534a;outline:none;border-radius:11px;background:#182222;color:#f1f5f2;padding:11px 12px;font-size:13px;}
.profile-name-controls input:focus {border-color:#9bc1a8;box-shadow:0 0 0 3px rgba(144,185,157,.13);}
.profile-name-controls button {flex:0 0 auto;border:1px solid #a5c7af;border-radius:11px;background:#a5c7af;color:#1c2c22;font-weight:750;font-size:12px;padding:11px 13px;}
.profile-name-controls button:disabled {opacity:.55;cursor:wait;}
.profile-name-form small {display:block;color:#9ead9f;font-size:10.5px;line-height:1.55;margin-top:9px;}
.profile-name-status {font-size:11px;color:#b7d9be;min-height:18px;margin-top:9px;}
.profile-name-status.error {color:#e1aea8;}
@media (max-width:430px){.profile-name-controls{flex-direction:column;}.profile-name-controls button{width:100%;}}
/* Income workspace — subdued green appears only in the relevant active elements. */
.income-workspace {color:#e9efed;}
.in-year-pill {background:#a5c6ae;color:#1b2c22;}
.in-period-control>span,.in-eyebrow {color:#a6b7aa;}
.in-period-control select,.in-label input,.in-label select {background:#212b2b;border-color:#3c4a45;color:#e8efeb;}
.in-period-control select:hover,.in-label input:hover,.in-label select:hover {border-color:#718d7d;}
.in-screen-tabs {border-color:#394541;}
.in-screen-tabs button {color:#97a59e;}
.in-screen-tabs button:hover,.in-screen-tabs button.active {color:#edf2ee;}
.in-screen-tabs button.active:after {background:#9ab6a4;}
.in-tab-count {background:#344840;color:#cfdfd3;}
.in-panel {background:#1b2425;border-color:#36433e;box-shadow:none;}
.in-panel h3 {color:#eaf0ed;}
.in-filter-row {background:#171f20;border-color:#3b4742;}
.in-filter-row button {color:#a2aea7;}
.in-filter-row button.chosen {background:#34463d;color:#e3eee6;}
.in-group-head {border-color:#39463f;}
.in-group-icon {background:#2d4237;border-color:#3e5949;color:#b3d5bc;}
.in-group-icon.passive {background:#303f40;border-color:#435657;color:#a7c9c5;}
.in-group-caption,.in-source-text small {color:#9fac9f;}
.in-group-action {background:#26342e;border-color:#496053;color:#c9dccc;}
.in-group-toggle:hover .in-group-title {color:#c7decf;}
.in-group-toggle:hover .in-group-action {background:#33463a;border-color:#6d9078;}
.in-group-chevron {color:#b4cbbc;}
.in-source-row {background:#212b2c;border-color:#3a4743;}
.in-source-row:hover,.in-source-row:focus-within {background:#293432;border-color:#678372;}
.in-source-avatar {background:#33483f;color:#c6dfce;}
.in-source-progress {background:#3a4842;}
.in-source-progress span {background:#8eb49b;}
.in-drag-handle {color:#8ca397;}
.in-drag-handle:hover {background:#374c40;color:#cee2d2;}
.in-row-edit {background:#2a3d34;border-color:#496858;color:#d0e3d5;}
.in-row-edit:hover {background:#3b5143;border-color:#789b82;color:#ecf3ee;}
.in-move-btn {background:#2a3932;border-color:#4b6354;color:#c9d8ce;}
.in-source.in-dragging .in-source-row {background:#30453a;border-color:#8da994;box-shadow:0 13px 36px rgba(0,0,0,.32);}
.in-source.in-drop-before {box-shadow:0 -3px 0 #a1c5aa;}
.in-source.in-drop-after {box-shadow:0 3px 0 #a1c5aa;}
.in-income-total-row {background:#283c32;border-color:#4b6956;}
.in-income-total-label b {color:#edf3ed;}
.in-income-total-label small {color:#acbfb0;}
.in-income-total-row>strong {color:#c2dfc9;}
.in-bottom-add {background:#a5c7af;border-color:#bad8c2;color:#1f3426;box-shadow:none;}
.in-bottom-add:hover {background:#b9d6c1;}
.in-add-help {color:#a0b1a3;}
.in-add-menu {background:#263631;border-color:#516c5b;}
.in-add-menu button:hover {background:#385041;}
.in-quicklinks>button {background:#1d2827;border-color:#35453e;color:#e9f0eb;}
.in-quicklinks>button:hover {background:#293a31;}
.in-quick-icon,.in-activity-icon {background:#314b3c;color:#bfdbc8;}
.in-quicklinks small,.in-quick-arrow {color:#a7b8a9;}
.in-hero {background:linear-gradient(118deg,#293e35,#202c2b 78%);border-color:#455c50;}
.in-hero-foot,.in-hero-side small {color:#b9ccbe;}
.in-goal-track span,.in-bar-active {background:#86b79b;}
.in-bar-passive {background:#91aaa5;}
.in-stat {background:#202a29;border-color:#394b40;}
.in-stat small {color:#9cac9f;}
.in-bar-item.selected {background:#2d3e34;border-color:#5d7c65;}
.in-activity {background:#222f2b;border-color:#3d5145;}
.in-activity>strong {color:#c1dac8;}
.in-primary-btn {background:#a5c7af;color:#193023;border-color:#a5c7af;box-shadow:none;}
.in-outline-btn,.in-subtle-btn,.in-close {background:#2a3932;color:#d7e7db;border-color:#4c6254;}
.in-outline-btn:hover {background:#36493d;}
.in-dialog {background:#202c29;border-color:#50705b;}
.in-detail-metrics>div {background:#293b32;border-color:#4c6656;}
.in-detail-line {border-color:#4b6654;color:#bccfc1;}
.in-activity-empty>span {background:#314d3d;color:#bed8c7;}
.income-workspace button:focus-visible,.in-dialog button:focus-visible,.in-period-control select:focus-visible {outline-color:#9bbb9f;}
