:root{
  --green:#004b3d;
  --fynia-deep:#003b32;
  --fynia-dark:#071c1d;
  --fynia-bright:#12c978;
  --fynia-mint:#e9faf2;
  --fynia-soft:#f4faf7;
  --soft:#eaf7f1;
  --bg:#f5f8f7;
  --ink:#102d2a;
}

.brand,.mobile-brand{letter-spacing:.7px;font-weight:800;color:var(--fynia-dark)}
.brand-icon{background:linear-gradient(145deg,var(--fynia-bright),#00885e);box-shadow:0 8px 20px #0abf7440}
.metric.hero{background:linear-gradient(145deg,var(--fynia-deep),#00664f 68%,#08a969);border-color:transparent;box-shadow:0 14px 32px #004b3d2b}
.primary{background:linear-gradient(135deg,var(--fynia-bright),#009c64);border-color:#00a86b;color:#06291f}
.primary:hover{background:linear-gradient(135deg,#18d985,#008e5b)}
nav a.active{background:var(--fynia-mint);color:var(--fynia-deep)}
.progress i{background:linear-gradient(90deg,var(--fynia-bright),#00a86b)}

.mobile-dashboard-actions,.mobile-bottom-nav,.quick-sheet,.quick-sheet-backdrop{display:none}

@media(max-width:600px){
  body{padding-bottom:88px;background:linear-gradient(180deg,#f7fbf9,#f2f7f5)}
  main{padding-top:18px}
  .topbar{background:#fffffff2;backdrop-filter:blur(16px);border-bottom-color:#e4eee9}
  .menu-toggle{display:none}
  .mobile-brand{font-size:21px}
  .page-heading{margin-bottom:18px;gap:16px}
  .page-heading h1{font-size:25px;line-height:1.18}
  .page-heading p{font-size:11px}
  .heading-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}
  .heading-actions .month-label{grid-column:1/-1}
  .heading-actions #quickEntry{display:none}
  .heading-actions #newEntry{grid-column:1/-1}
  .mobile-dashboard-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:-2px 0 15px}
  .mobile-dashboard-actions button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:0;padding:12px 5px;background:#fff;border-color:#e3ece8;box-shadow:0 6px 18px #173b3020}
  .mobile-dashboard-actions span{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:var(--fynia-mint);color:#008d5d;font-size:16px}
  .mobile-dashboard-actions strong{font-size:9px}
  .metric-grid:not(.three):not(.two){grid-template-columns:1fr 1fr}
  .metric-grid:not(.three):not(.two) .metric.hero{grid-column:1/-1;padding:23px 19px}
  .metric-grid:not(.three):not(.two) .metric.hero>strong{font-size:30px}
  .metric-grid:not(.three):not(.two) .metric:not(.hero){padding:15px 12px}
  .metric-grid:not(.three):not(.two) .metric:not(.hero)>strong{font-size:18px}
  .summary-strip{border:0;box-shadow:0 5px 18px #173b3012}
  .panel{border-color:#e5ede9;box-shadow:0 5px 20px #173b3012}

  .mobile-bottom-nav{position:fixed;display:grid;grid-template-columns:1fr 1fr 1.12fr 1fr 1fr;align-items:end;left:0;right:0;bottom:0;z-index:34;height:76px;padding:8px max(8px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:#fffffff5;border-top:1px solid #dfeae5;box-shadow:0 -8px 30px #092e2620;backdrop-filter:blur(18px)}
  .mobile-bottom-nav a,.mobile-bottom-nav>button:not(.bottom-add){display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;height:52px;padding:4px 2px;border:0;background:transparent;box-shadow:none;color:#788984;font-size:8px;font-weight:600;white-space:nowrap}
  .mobile-bottom-nav a span,.mobile-bottom-nav>button:not(.bottom-add)>span{font-size:19px;line-height:1}
  .mobile-bottom-nav a.active{background:transparent;color:var(--fynia-deep)}
  .mobile-bottom-nav a.active span{color:var(--fynia-bright)}
  .mobile-bottom-nav .bottom-add{align-self:start;display:flex;flex-direction:column;align-items:center;gap:2px;height:66px;margin-top:-20px;padding:0;border:0;background:transparent;box-shadow:none;color:var(--fynia-deep)}
  .mobile-bottom-nav .bottom-add>span{display:grid;place-items:center;width:50px;height:50px;border-radius:17px;background:linear-gradient(145deg,var(--fynia-bright),#00a969);box-shadow:0 10px 24px #08b76f55;color:#062b21;font-size:29px;font-weight:400}
  .mobile-bottom-nav .bottom-add small,.mobile-bottom-nav>button small{font-size:8px;font-weight:650}

  .quick-sheet-backdrop{position:fixed;inset:0;z-index:44;background:#06241f70;backdrop-filter:blur(3px)}
  .quick-sheet-backdrop.open{display:block}
  .quick-sheet{position:fixed;display:block;left:0;right:0;bottom:0;z-index:45;padding:10px 18px calc(22px + env(safe-area-inset-bottom));background:#fff;border-radius:24px 24px 0 0;box-shadow:0 -20px 60px #06241f30;transform:translateY(110%);transition:transform .25s ease}
  .quick-sheet.open{transform:translateY(0)}
  .sheet-handle{width:42px;height:4px;margin:0 auto 18px;border-radius:5px;background:#d6e1dc}
  .sheet-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
  .sheet-head small{font-size:8px;letter-spacing:1px;color:#7c8b85}
  .sheet-head h2{margin:5px 0 0;font-size:19px}
  .sheet-head>button{border:0;padding:4px 9px;background:#f0f5f2;font-size:22px;box-shadow:none}
  .sheet-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .sheet-grid button{display:grid;grid-template-columns:38px 1fr;grid-template-rows:auto auto;gap:1px 10px;align-items:center;padding:14px;text-align:left;white-space:normal;box-shadow:none}
  .sheet-grid button>span{grid-row:1/-1;display:grid;place-items:center;width:38px;height:38px;border-radius:12px;font-size:18px}
  .sheet-grid button strong{font-size:11px}.sheet-grid button small{font-size:8px;color:var(--muted)}
  .expense-icon{background:#ffeaeb;color:#d94d59}.income-icon{background:#e6f9ef;color:#08a666}.card-icon{background:#eaf0ff;color:#526cca}.smart-icon{background:#e7fbf3;color:#00a96c}
}

@media(min-width:601px){
  .brand{font-size:25px}
}
