:root{color-scheme:dark;--bg: #1c1c1e;--bg-hero: radial-gradient(1120px 700px at -170px -150px, rgba(10, 132, 255, .14) 0%, transparent 62%), radial-gradient(900px 560px at calc(100% + 140px) -80px, rgba(50, 215, 75, .11) 0%, transparent 58%), #1c1c1e;--panel: #2c2c2e;--surface: #2c2c2e;--surface-2: #3a3a3c;--line: #3a3a3c;--text: #f9f9fa;--muted: #d1d1d6;--subtext: #d1d1d6;--accent: #0a84ff;--accent-2: #007aff;--success: #32d74b;--warning: #ff9f0a;--danger: #ff453a;--header-bg: rgba(28, 28, 30, .76);--header-line: rgba(255, 255, 255, .08);--logo-opacity: .07}*{box-sizing:border-box}.hidden{display:none!important}body{margin:0;background:var(--bg-hero);color:var(--text);font-family:Avenir Next,SF Pro Display,Segoe UI,sans-serif}.bg-logo{position:fixed;left:50%;top:52%;transform:translate(-50%,-50%);width:min(72vw,860px);z-index:0;pointer-events:none;-webkit-user-select:none;user-select:none;opacity:var(--logo-opacity);filter:saturate(.9)}.bg-logo img{width:100%;height:auto;object-fit:contain;display:block;filter:drop-shadow(0 1px 0 rgba(182,208,255,.2)) drop-shadow(0 2px 0 rgba(142,182,255,.14)) drop-shadow(0 12px 22px rgba(35,96,196,.14))}.app-shell{max-width:1180px;margin:0 auto;padding:0 20px 28px;position:relative;z-index:1}.app-shell-analytics{max-width:none;padding:0 22px 34px}.app-shell-analytics .admin-portal{padding-top:18px}.app-shell-analytics .admin-surface{padding:22px}.top{position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:var(--header-bg);border-bottom:1px solid var(--header-line)}.top-inner{max-width:1180px;margin:0 auto;height:72px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}.top-inner-analytics{max-width:none;padding:0 22px}.brand{display:inline-flex;align-items:center;gap:8px;font-weight:700;letter-spacing:.2px}.brand-wordmark{font-size:19px;font-weight:760;color:var(--text)}.brand-wordmark-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:0;margin:0;cursor:pointer}.brand-with-savy{gap:10px}.savy-launcher-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:32px;height:32px;border:0;border-radius:999px;background:transparent;padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;position:relative;box-shadow:0 2px 6px #00bfff5c}.savy-launcher-btn img{width:28px;height:28px;object-fit:contain;display:block}.savy-launcher-btn.is-animating{animation:savy-bounce-wave .82s ease-in-out}.savy-launcher-badge{position:absolute;top:-4px;right:-6px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#ff3b30;color:#fff;font-size:10px;line-height:16px;font-weight:700;text-align:center}@keyframes savy-bounce-wave{0%{transform:scale(1) rotate(0)}22%{transform:scale(1.25) rotate(0)}35%{transform:scale(1.25) rotate(8deg)}47%{transform:scale(1.25) rotate(-8deg)}58%{transform:scale(1.25) rotate(8deg)}70%{transform:scale(1.25) rotate(-8deg)}to{transform:scale(1) rotate(0)}}.nav{display:inline-flex;align-items:center;gap:16px;color:var(--subtext);font-weight:550;font-size:14px}.nav button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:12px;padding:10px 14px;font-weight:650;font-size:14px;cursor:pointer;transition:transform .12s ease,filter .12s ease,opacity .12s ease}.nav button:active{transform:translateY(1px)}.nav .btn-link{background:transparent;color:var(--text);border:1px solid var(--line)}.nav .btn-link.active{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 50%,var(--line));background:color-mix(in srgb,var(--accent) 14%,transparent)}.nav-auth{gap:10px}.nav-auth .btn-link{border:1px solid transparent;background:transparent;color:var(--text);border-radius:14px;padding:10px 16px;font-weight:700}.nav-auth .nav-icon-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 12px;min-width:42px}.nav-auth .nav-icon-btn svg{width:17px;height:17px;display:block}.nav-auth .btn-link:hover{background:color-mix(in srgb,var(--surface-2) 45%,transparent)}.nav-auth .btn-link.active{color:var(--accent);border-color:transparent;background:color-mix(in srgb,var(--accent) 20%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 30%,transparent)}.hero{position:relative;display:flex;align-items:center;min-height:calc(100vh - 72px);padding:36px 0 24px;overflow:hidden}.hero-grid{width:100%;display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:center}.hero-copy{text-align:left;max-width:720px}.headline{margin:8px 0 10px;font-size:clamp(40px,6.2vw,86px);line-height:.96;letter-spacing:-.025em;font-weight:800;max-width:780px;text-wrap:balance}.subhead{margin:0;color:var(--subtext);font-size:clamp(16px,1.7vw,24px);line-height:1.36;max-width:600px;font-weight:520}.hero-tiles{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.tile{background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 96%,black 4%),var(--surface-2));border:1px solid var(--line);border-radius:14px;padding:12px;box-shadow:0 12px 28px #00000052;min-height:94px;display:grid;align-content:space-between;gap:8px}.tile-k{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--subtext);font-weight:700}.tile-v{font-size:26px;letter-spacing:-.02em;font-weight:760;color:var(--text)}.tile-s{font-size:12px;color:var(--subtext);font-weight:560}.tile-accent{background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 18%,var(--surface-2)),color-mix(in srgb,var(--accent) 8%,var(--surface-2)));border-color:color-mix(in srgb,var(--accent) 34%,var(--line))}.auth-wrap{margin:0;width:min(460px,calc(100vw - 40px));display:none}.auth-wrap.open{display:block;position:fixed;top:82px;right:max(20px,calc((100vw - 1180px)/2 + 20px));z-index:24}.auth-actions-row{flex-wrap:nowrap;justify-content:flex-start;align-items:center}.auth-actions-row .btn-primary,.auth-actions-row .btn-apple-auth{flex:0 0 auto}.checkbox-field{display:flex;align-items:center;gap:10px;text-transform:none;letter-spacing:0;font-size:13px;font-weight:600;color:var(--text);border:0;border-radius:0;padding:2px 0 2px 10px;background:transparent}.checkbox-field input[type=checkbox]{width:16px;height:16px;margin:0;accent-color:var(--accent);flex:0 0 auto}.checkbox-field input[type=checkbox]:focus,.checkbox-field input[type=checkbox]:focus-visible{outline:none;box-shadow:none}.checkbox-field .checkbox-copy{line-height:1.3}.identity-popup{position:fixed;top:0;right:0;bottom:0;left:0;z-index:42;display:flex;align-items:center;justify-content:center;padding:18px;background:#07070a8f;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.identity-popup-card{width:min(420px,calc(100vw - 24px));border-radius:16px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--line));background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 95%,black 5%),color-mix(in srgb,var(--surface-2) 96%,black 4%));box-shadow:0 22px 48px #00000075;padding:16px;display:grid;gap:10px}.identity-popup-title{margin:0;font-size:20px;font-weight:760;letter-spacing:-.01em;color:var(--text)}.identity-popup-message{margin:0;font-size:13px;color:var(--subtext);line-height:1.4}.identity-channel-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.identity-channel-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);background:color-mix(in srgb,var(--surface-2) 92%,transparent);border-radius:11px;min-height:40px;padding:0 12px;color:var(--text);font-size:13px;font-weight:700;letter-spacing:.01em;cursor:pointer;transition:border-color .12s ease,background .12s ease,transform .12s ease}.identity-channel-btn:hover{border-color:color-mix(in srgb,var(--accent) 54%,var(--line))}.identity-channel-btn:active{transform:translateY(1px)}.identity-channel-btn.active{border-color:color-mix(in srgb,var(--accent) 70%,var(--line));background:color-mix(in srgb,var(--accent) 16%,var(--surface-2));color:#d6e8ff}.identity-popup-actions{justify-content:flex-end}.identity-otp-input{text-align:center;font-size:18px;font-weight:600;letter-spacing:0;font-variant-numeric:tabular-nums}.identity-otp-input.code-entered{letter-spacing:3.2px}.identity-otp-input:focus::placeholder{color:transparent}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.topbar h1{margin:0;font-size:28px}.sub{margin:4px 0;color:var(--muted);font-size:13px}.panel{background:linear-gradient(180deg,#ffffff0a,#ffffff03);border:1px solid var(--line);border-radius:14px;padding:14px;margin-bottom:16px}.center-panel{max-width:760px;margin:60px auto;position:relative;z-index:1}.auth-panel{border-radius:30px;padding:28px 36px 30px;background:linear-gradient(180deg,#2a2b31,#25262d);border:1px solid #3a3f58}.auth-title{margin:0;font-size:30px;letter-spacing:-.01em}.auth-subhead{margin:10px 0 14px;font-size:14px}.auth-top-link-row{margin-bottom:12px}h2,h3{margin:0 0 12px}.grid-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.grid-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted)}.grid-form .check{flex-direction:row;align-items:center;gap:8px}.full-width{grid-column:1 / -1}.auth-form{margin-top:12px;grid-template-columns:1fr;gap:14px;max-width:620px}.auth-field{text-transform:uppercase;letter-spacing:.02em;font-weight:760;font-size:14px;color:#d2d3d7}.auth-input{height:62px;border-radius:16px;border:1px solid #3f4149;background:#3a3c42;font-size:16px}.auth-actions-row{align-items:center;flex-wrap:nowrap}.auth-note{margin:16px 0 0;font-size:17px;color:#c7c8cc;max-width:620px}.otp-fieldset{margin:0;border:1px solid var(--line);border-radius:10px;padding:10px}.otp-fieldset legend{padding:0 6px;color:var(--muted);font-size:12px}input,select,textarea,button{font:inherit}input,select,textarea{background:#15171d;color:var(--text);border:1px solid var(--line);border-radius:10px;padding:10px}textarea{resize:vertical}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:12px;padding:10px 14px;font-weight:650;font-size:14px;background:#242834;color:var(--text);cursor:pointer;transition:transform .12s ease,filter .12s ease,opacity .12s ease}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.65;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:color-mix(in srgb,var(--accent) 70%,black);color:#fff}.btn.danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 50%,var(--line));background:#ff5d5d1f}.btn-link{background:transparent;color:var(--text);border:1px solid var(--line)}.btn-soft{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 32%,transparent)}.btn-apple-auth{min-width:0;width:auto;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;padding:10px 18px;background:#fff;color:#111;border:1px solid #dedede;box-shadow:0 8px 18px #0000002e}.btn-apple-auth .apple-mark{width:14px;height:18px;fill:currentColor;flex:0 0 auto}.row-actions{display:flex;gap:8px;flex-wrap:wrap}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px}.toolbar-right{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.list{display:grid;gap:10px}.list-item{border:1px solid var(--line);border-radius:12px;padding:10px;background:#0000002e}.item-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.metric{font-weight:700;font-size:16px}.history{margin-top:8px;border-top:1px dashed var(--line);padding-top:8px}.history-row{display:grid;grid-template-columns:120px 120px 1fr;gap:8px;font-size:13px;margin-bottom:4px}.pill-row{display:flex;gap:8px;flex-wrap:wrap}.pill{border:1px solid var(--line);background:#1f8bff1f;border-radius:999px;padding:6px 10px;font-size:12px}.card.money-surface{width:min(760px,100%);background:transparent;border-color:transparent;box-shadow:none;padding:14px}.money-grid{margin-top:12px}.money-card{min-width:0}.money-card>h3{margin:0;font-size:20px;line-height:1.12;letter-spacing:-.02em}.money-form{margin-top:8px}.money-form .field{min-width:0}.money-form .field.check{display:inline-flex;align-items:center;gap:7px;text-transform:none;letter-spacing:0;font-size:12px;font-weight:620}.money-form .field.check input{width:15px;height:15px;margin:0}.money-toolbar{margin-bottom:6px}.money-add-tabs{display:inline-flex;align-items:center;gap:6px;margin:4px 0 10px;padding:4px;border:1px solid color-mix(in srgb,var(--line) 84%,transparent);border-radius:11px;background:color-mix(in srgb,var(--surface-2) 90%,transparent)}.money-add-tab{min-height:34px;padding:7px 12px;font-size:12px;border-radius:8px;border:1px solid transparent;color:var(--subtext);background:transparent}.money-add-tab.active{color:var(--text);border-color:color-mix(in srgb,var(--accent) 40%,var(--line));background:color-mix(in srgb,var(--accent) 16%,var(--surface))}.money-toolbar h3{margin:0;font-size:18px;line-height:1.14}.money-toolbar .toolbar-right input{min-width:160px}.money-list{gap:9px}.money-group{display:grid;gap:6px}.money-group-title{margin:4px 0 0;font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:760;color:var(--subtext)}.money-group-title-overdue{color:var(--danger)}.money-group-title-muted{color:color-mix(in srgb,var(--subtext) 88%,white 12%)}.money-list-item{border:1px solid color-mix(in srgb,var(--line) 86%,transparent);border-radius:12px;padding:10px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 95%,transparent),color-mix(in srgb,var(--surface-2) 94%,transparent))}.money-item-head{align-items:flex-start;gap:10px}.money-item-title{display:block;font-size:17px;font-weight:790;letter-spacing:-.016em;line-height:1.1;color:var(--text)}.money-metric{font-size:clamp(20px,2vw,27px);font-weight:820;line-height:1;letter-spacing:-.02em}.money-row-actions{margin-top:6px;gap:7px}.money-page .portal-card{border-radius:14px;padding:12px;gap:8px}.money-page .portal-sub{font-size:12px;line-height:1.32}.money-inline-note{margin-top:1px}.money-page .field{font-size:11px;letter-spacing:.03em}.money-page .field input:not([type=checkbox]),.money-page .field select,.money-page .field textarea{min-height:38px;padding:8px 10px;border-radius:10px;font-size:14px}.money-page .field textarea{min-height:88px}.money-page .btn{border-radius:10px;padding:8px 12px;font-size:13px}.bill-list-item{padding:12px 14px;border-radius:14px;position:relative;overflow:hidden;display:grid;gap:10px;border:1px solid color-mix(in srgb,var(--line) 78%,transparent);background:radial-gradient(360px 130px at 100% -8%,color-mix(in srgb,var(--accent) 11%,transparent) 0%,transparent 66%),linear-gradient(180deg,color-mix(in srgb,var(--surface) 97%,transparent),color-mix(in srgb,var(--surface-2) 95%,transparent))}.bill-list-item.has-auto-log{border-color:color-mix(in srgb,var(--success) 38%,var(--line));box-shadow:0 14px 30px color-mix(in srgb,var(--success) 10%,rgba(0,0,0,.12))}.bill-auto-indicator{position:absolute;top:4px;right:0;bottom:4px;width:4px;border-top-right-radius:4px;border-bottom-right-radius:4px;background:linear-gradient(180deg,color-mix(in srgb,var(--success) 92%,#fff),var(--success))}.bill-item-head-redesign{justify-content:space-between;align-items:flex-start;gap:12px}.bill-item-head{gap:10px}.bill-item-copy{min-width:0;display:grid;gap:5px}.bill-item-copy-redesign{flex:1 1 auto}.bill-identity{display:flex;align-items:center;gap:8px;min-width:0}.bill-icon-pill{width:28px;height:28px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;font-size:16px;line-height:1;border:1px solid color-mix(in srgb,var(--line) 85%,transparent);background:color-mix(in srgb,var(--surface-2) 90%,transparent);flex:0 0 auto}.bill-item-title{line-height:1.05;letter-spacing:-.02em}.bill-meta-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.bill-meta-chip{border:1px solid color-mix(in srgb,var(--line) 84%,transparent);border-radius:999px;padding:3px 8px;font-size:10px;line-height:1;font-weight:710;letter-spacing:.02em;color:var(--subtext);background:color-mix(in srgb,var(--surface-2) 84%,transparent)}.bill-meta-chip-auto{color:var(--success);border-color:color-mix(in srgb,var(--success) 42%,transparent);background:color-mix(in srgb,var(--success) 13%,transparent)}.bill-meta-chip-est{color:#8fb8ff;border-color:color-mix(in srgb,var(--accent) 44%,transparent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.bill-amount-block{display:grid;gap:3px;text-align:right;align-content:start}.bill-amount-label{margin:0;font-size:10px;text-transform:uppercase;letter-spacing:.05em;font-weight:730;color:var(--subtext)}.bill-item-metric{white-space:nowrap;font-size:clamp(24px,2.3vw,34px);line-height:.95;letter-spacing:-.03em}.bill-row-actions{margin-top:0;gap:8px}.bill-row-actions-redesign{justify-content:space-between;align-items:center}.bill-action-cluster{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.bill-action-cluster-secondary{margin-left:auto}.bill-row-actions-redesign .btn{min-height:34px;padding:7px 11px;font-size:13px}.bill-row-actions-redesign .btn-primary{box-shadow:0 8px 18px #0a84ff3d}.icon-picker-trigger{width:100%;min-height:38px;border:1px solid var(--line);background:var(--surface-2);color:var(--text);justify-content:flex-start;display:inline-flex;align-items:center;gap:8px;padding:0 10px}.icon-picker-preview{width:24px;height:24px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;font-size:16px;border:1px solid color-mix(in srgb,var(--line) 84%,transparent);background:color-mix(in srgb,var(--surface) 90%,transparent);flex:0 0 auto}.icon-picker-modal{width:min(840px,calc(100vw - 32px));max-height:min(86vh,760px);display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px}.icon-picker-modal-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.icon-picker-modal-head h3{margin:0}.icon-picker-scroll{overflow:auto;padding-right:4px;display:grid;gap:14px}.icon-picker-section{display:grid;gap:8px}.icon-picker-category{margin:0;font-size:13px;font-weight:760;letter-spacing:.03em;color:var(--subtext)}.icon-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:7px}.icon-picker-item{min-height:44px;border-radius:12px;border:1px solid color-mix(in srgb,var(--line) 86%,transparent);background:color-mix(in srgb,var(--surface-2) 92%,transparent);display:inline-flex;align-items:center;justify-content:center;padding:0;font-size:22px;line-height:1}.icon-picker-item.selected{border-color:color-mix(in srgb,var(--accent) 60%,var(--line));background:color-mix(in srgb,var(--accent) 16%,var(--surface-2));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 44%,transparent)}.icon-picker-item:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.money-history{margin-top:8px;padding-top:8px;border-top:1px dashed color-mix(in srgb,var(--line) 72%,transparent);display:grid;gap:5px}.money-history-row{display:grid;grid-template-columns:116px 116px minmax(0,1fr);gap:8px;font-size:12px;color:var(--subtext)}.money-pill-row{margin-top:10px}.money-pill{border-color:color-mix(in srgb,var(--accent) 40%,var(--line));background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--text);font-weight:740}.feedback{border:1px solid var(--line);background:#ffffff0a;border-radius:10px;padding:10px;margin-top:10px}.feedback.error{border-color:color-mix(in srgb,var(--danger) 55%,var(--line));background:#ff5d5d1f}.snapshot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.plain-list{margin:0;padding-left:20px}.plain-list li{margin-bottom:6px}.admin-toggle{margin-top:10px;display:inline-flex;align-items:center;gap:8px;color:var(--muted)}.table-wrap{overflow-x:auto}.simple-table{width:100%;border-collapse:collapse;font-size:13px}.simple-table th,.simple-table td{text-align:left;border-bottom:1px solid var(--line);padding:8px;vertical-align:top}.json-block{margin-top:10px;border:1px solid var(--line);border-radius:10px;padding:10px;background:#00000047;font-size:12px;overflow:auto}.admin-portal{padding-top:6px}.admin-surface{width:100%;border:1px solid transparent;border-radius:20px;background:transparent;box-shadow:none;padding:12px 6px}.admin-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:10px}.admin-eyebrow{margin:0;color:var(--subtext);font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.admin-title{margin:4px 0 0;font-size:clamp(32px,3vw,46px);line-height:.95;letter-spacing:-.03em;font-weight:820;color:var(--text)}.admin-asof{margin:10px 0 0;color:var(--subtext);font-size:14px}.admin-section-title{margin:22px 0 10px;font-size:13px;letter-spacing:.08em;color:var(--subtext);text-transform:uppercase;font-weight:750}.admin-range-row,.admin-filter-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.admin-toggle-row{margin-top:10px}.admin-toggle-control{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid color-mix(in srgb,var(--line) 92%,transparent);border-radius:12px;padding:10px 12px;background:color-mix(in srgb,var(--surface-2) 94%,transparent);cursor:pointer}.admin-toggle-copy{display:grid;gap:3px;min-width:0}.admin-toggle-title{font-size:13px;font-weight:700;color:var(--text)}.admin-toggle-hint{font-size:12px;color:var(--subtext);line-height:1.3}.admin-toggle-control input[type=checkbox]{width:18px;height:18px;margin:0;accent-color:var(--accent);flex:0 0 auto}.chip{border:1px solid var(--line);background:color-mix(in srgb,var(--surface-2) 92%,transparent);color:var(--text);border-radius:999px;padding:8px 13px;font-size:12px;font-weight:700;cursor:pointer;transition:transform .12s ease,border-color .12s ease,background .12s ease}.chip:active{transform:translateY(1px)}.chip.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 32%,transparent)}.admin-invoice-top-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:stretch}.admin-analytics-split{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:12px;align-items:start}.admin-analytics-pane{min-width:0}.admin-kpi-grid{display:block}.admin-kpi-group{margin-bottom:14px}.admin-kpi-group-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.kpi-card{border:1px solid var(--line);border-radius:14px;background:radial-gradient(130% 110% at 100% -20%,color-mix(in srgb,var(--accent) 14%,transparent) 0%,transparent 58%),radial-gradient(120% 100% at 0% 0%,rgba(255,255,255,.07) 0%,transparent 56%),linear-gradient(152deg,color-mix(in srgb,var(--surface) 95%,black 5%),color-mix(in srgb,var(--surface-2) 92%,black 8%));padding:10px;min-height:112px;display:grid;align-content:start;gap:8px}.kpi-head{display:flex;align-items:center;justify-content:space-between;gap:6px}.kpi-label{color:var(--subtext);font-size:10px;text-transform:uppercase;letter-spacing:.03em;margin:0;font-weight:700}.kpi-value{font-size:clamp(14px,1.15vw,20px);font-weight:800;letter-spacing:-.015em;margin:0;color:var(--text);line-height:1.08}.kpi-sub{margin:0;color:var(--subtext);font-size:clamp(11px,.78vw,13px);line-height:1.3}.kpi-card-detail{gap:6px}.kpi-detail-list{margin-top:2px;padding-top:6px;border-top:1px solid color-mix(in srgb,var(--line) 78%,transparent);display:grid;gap:4px}.kpi-detail-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;line-height:1.25}.kpi-detail-label{color:var(--subtext);font-weight:600}.kpi-detail-value{color:var(--text);font-weight:760;white-space:nowrap;text-align:right}.admin-platform-card{padding:16px 18px;gap:10px;background:radial-gradient(135% 95% at 100% -8%,color-mix(in srgb,var(--accent) 18%,transparent) 0%,transparent 56%),linear-gradient(146deg,color-mix(in srgb,var(--surface) 92%,black 8%),color-mix(in srgb,var(--surface-2) 94%,black 6%))}.admin-platform-card .kpi-label{font-size:12px;letter-spacing:.06em;font-weight:780}.admin-platform-card .kpi-value{font-size:clamp(24px,1.9vw,32px);line-height:1.06;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.admin-platform-card .kpi-sub{font-size:clamp(13px,.94vw,16px);line-height:1.35;color:color-mix(in srgb,var(--subtext) 88%,white 12%)}.admin-platform-card .kpi-detail-list{margin-top:8px;padding-top:10px;gap:6px;border-top-color:color-mix(in srgb,var(--line) 70%,white 10%)}.admin-platform-card .kpi-detail-row{font-size:13px;padding:2px 0;border-bottom:1px solid color-mix(in srgb,var(--line) 35%,transparent)}.admin-platform-card .kpi-detail-row:last-child{border-bottom:0}.admin-platform-card .kpi-detail-row-total{margin-top:2px;padding-top:8px;border-top:1px solid color-mix(in srgb,var(--line) 78%,white 10%);border-bottom:0}.admin-platform-card .kpi-detail-row-total .kpi-detail-label,.admin-platform-card .kpi-detail-row-total .kpi-detail-value{color:var(--text);font-weight:800}.admin-platform-card .kpi-detail-label{color:color-mix(in srgb,var(--subtext) 90%,white 10%);font-weight:640;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-platform-card .kpi-detail-value{font-size:15px;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.admin-savy-model-tier-card .kpi-value{overflow-wrap:anywhere}.admin-savy-model-tier-card .kpi-detail-row{align-items:flex-start}.admin-savy-model-tier-card .kpi-detail-label{flex:0 0 auto}.admin-savy-model-tier-card .kpi-detail-value{min-width:0;white-space:normal;overflow-wrap:anywhere;word-break:break-word;text-align:left}.admin-chart-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px}.admin-side-chart-grid{grid-template-columns:1fr}.admin-side-chart-grid .chart-card{grid-column:span 1}.chart-card{border:1px solid var(--line);border-radius:14px;padding:14px;background:color-mix(in srgb,var(--surface-2) 92%,transparent)}.chart-card-full{grid-column:1 / -1}.chart-title{margin:0 0 10px;font-size:15px;color:var(--text);font-weight:760;letter-spacing:-.01em}.ops-card{grid-column:span 4}.ops-metric-stack{display:grid;gap:8px;margin-bottom:8px}.ops-metric-row{border:1px solid color-mix(in srgb,var(--line) 82%,transparent);border-radius:11px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 90%,transparent),color-mix(in srgb,var(--surface-2) 96%,transparent));padding:8px 9px}.ops-metric-label{margin:0;color:var(--subtext);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.ops-metric-value{margin:4px 0 0;color:var(--text);font-size:18px;font-weight:790;letter-spacing:-.02em;line-height:1.06}.bar-row{display:flex;align-items:flex-end;gap:10px;overflow-x:auto;padding:4px 2px 10px}.bar-row.compact{min-height:148px;padding-top:0}.bar-item{width:62px;flex:0 0 auto;text-align:center}.bar-track{height:104px;border-radius:10px;background:color-mix(in srgb,var(--subtext) 20%,transparent);display:flex;align-items:flex-end;overflow:hidden;border:1px solid color-mix(in srgb,var(--line) 80%,transparent);position:relative}.bar-fill{width:100%;border-radius:10px;min-height:2px;background:var(--accent)}.bar-value-pill{margin-top:5px;font-size:10px;color:var(--text);font-weight:700;display:inline-block;border:1px solid color-mix(in srgb,var(--line) 80%,transparent);background:color-mix(in srgb,var(--surface) 92%,transparent);padding:2px 7px;border-radius:999px}.bar-label{margin-top:7px;font-size:11px;color:var(--subtext);white-space:nowrap;font-weight:600}.admin-table-wrap{border:1px solid var(--line);border-radius:14px;overflow:auto;background:color-mix(in srgb,var(--surface-2) 94%,transparent)}.admin-table{border-collapse:collapse;min-width:920px;width:100%;font-size:13px}.admin-table th,.admin-table td{padding:10px 11px;border-bottom:1px solid color-mix(in srgb,var(--line) 90%,transparent);text-align:left;white-space:nowrap;color:var(--text)}.admin-table th{color:var(--subtext);font-size:11px;text-transform:uppercase;letter-spacing:.05em;background:color-mix(in srgb,var(--surface) 86%,transparent);position:sticky;top:0;z-index:1;font-weight:700}.admin-raw{margin-top:14px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface-2) 95%,transparent);padding:12px}.admin-raw summary{cursor:pointer;color:var(--text);font-weight:760;-webkit-user-select:none;user-select:none;font-size:14px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008a;display:flex;justify-content:center;align-items:flex-start;overflow-y:auto;padding:clamp(82px,10vh,110px) 16px 16px;z-index:30}.modal{width:min(560px,100%);max-height:calc(100vh - 108px);max-height:calc(100dvh - 108px);overflow:auto;border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:14px}.calendar-backdrop{z-index:44}.calendar-modal{width:min(980px,100%);max-height:min(calc(100vh - 106px),920px);max-height:min(calc(100dvh - 106px),920px);border-radius:18px;padding:16px;background:radial-gradient(520px 220px at 92% -10%,rgba(10,132,255,.1) 0%,transparent 68%),radial-gradient(420px 200px at 8% 102%,rgba(50,215,75,.08) 0%,transparent 66%),linear-gradient(165deg,color-mix(in srgb,var(--surface) 96%,transparent),color-mix(in srgb,var(--surface-2) 94%,transparent))}.calendar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.calendar-head h3{margin:0;font-size:20px;letter-spacing:-.02em}.calendar-mode-switch{margin-top:10px;display:inline-flex;align-items:center;gap:4px;padding:4px;border-radius:11px;border:1px solid color-mix(in srgb,var(--line) 84%,transparent);background:color-mix(in srgb,var(--surface-2) 90%,transparent)}.calendar-mode-btn{min-height:32px;padding:6px 12px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--subtext);font-size:12px;font-weight:700;letter-spacing:.01em;cursor:pointer}.calendar-mode-btn.active{color:#fff;border-color:color-mix(in srgb,var(--accent) 44%,var(--line));background:color-mix(in srgb,var(--accent) 76%,transparent)}.calendar-summary{margin-top:10px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.calendar-summary-card{border:1px solid color-mix(in srgb,var(--line) 84%,transparent);background:color-mix(in srgb,var(--surface-2) 92%,transparent);border-radius:10px;padding:8px 10px;display:grid;gap:4px}.calendar-summary-card span{color:var(--subtext);font-size:11px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.calendar-summary-card strong{font-size:14px;font-weight:800;line-height:1.1}.calendar-shell{margin-top:10px;border:1px solid color-mix(in srgb,var(--line) 82%,transparent);border-radius:14px;padding:10px;background:color-mix(in srgb,var(--surface) 88%,transparent)}.calendar-range-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.calendar-range-head p{margin:0;font-size:15px;font-weight:760;letter-spacing:-.01em;color:var(--text)}.calendar-nav-arrow{width:30px;height:30px;border-radius:999px;border:1px solid color-mix(in srgb,var(--line) 86%,transparent);background:color-mix(in srgb,var(--surface-2) 90%,transparent);color:var(--accent);font-size:20px;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.calendar-year-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.calendar-month-card{border:1px solid color-mix(in srgb,var(--line) 84%,transparent);background:color-mix(in srgb,var(--surface-2) 92%,transparent);border-radius:10px;padding:10px 9px;display:grid;gap:4px;text-align:left;color:var(--text);cursor:pointer}.calendar-month-card span{font-size:14px;font-weight:780}.calendar-month-card small{color:var(--subtext);font-size:11px;font-weight:640}.calendar-month-card.active{border-color:color-mix(in srgb,var(--accent) 56%,var(--line));background:color-mix(in srgb,var(--accent) 20%,var(--surface-2))}.calendar-month-card.active small{color:#d7e8ff}.calendar-weekday-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:4px}.calendar-weekday-row span{text-align:center;color:var(--subtext);font-size:12px;font-weight:700;letter-spacing:.02em;padding:4px 0}.calendar-month-grid,.calendar-week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.calendar-day-cell{min-height:54px;border:1px solid transparent;background:transparent;border-radius:10px;display:grid;align-content:center;justify-items:center;gap:2px;color:var(--text);cursor:pointer;padding:3px 0}.calendar-day-cell.blank{cursor:default}.calendar-day-cell:not(.blank):hover{border-color:color-mix(in srgb,var(--line) 84%,transparent);background:color-mix(in srgb,var(--surface-2) 76%,transparent)}.calendar-day-cell.selected{border-color:color-mix(in srgb,var(--accent) 58%,var(--line));background:color-mix(in srgb,var(--accent) 18%,transparent)}.calendar-day-cell.today .calendar-day-number{color:var(--accent)}.calendar-day-number{font-size:26px;line-height:1;letter-spacing:-.02em;font-weight:600}.calendar-dots{height:10px;display:inline-flex;align-items:center;justify-content:center;gap:3px}.calendar-dots .dot{width:6px;height:6px;border-radius:999px;display:inline-block}.calendar-dots .dot.income{background:var(--success)}.calendar-dots .dot.bill{background:var(--danger)}.calendar-day-head{margin-top:10px;display:flex;align-items:center;justify-content:space-between;gap:10px}.calendar-day-head strong{font-size:14px;letter-spacing:-.01em}.calendar-event-list{margin-top:8px;display:grid;gap:8px}.calendar-event-row{border:1px solid color-mix(in srgb,var(--line) 84%,transparent);background:color-mix(in srgb,var(--surface-2) 90%,transparent);border-radius:10px;padding:8px 9px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px}.calendar-event-type{border-radius:999px;padding:3px 8px;font-size:10px;font-weight:750;letter-spacing:.02em;text-transform:uppercase}.calendar-event-type.income{color:var(--success);border:1px solid color-mix(in srgb,var(--success) 48%,transparent);background:color-mix(in srgb,var(--success) 14%,transparent)}.calendar-event-type.bill{color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 48%,transparent);background:color-mix(in srgb,var(--danger) 14%,transparent)}.calendar-event-copy{min-width:0;display:grid;gap:2px}.calendar-event-copy strong{font-size:14px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-event-copy small{color:var(--subtext);font-size:11px}.calendar-modal .is-income{color:var(--success);font-weight:760}.calendar-modal .is-bill{color:var(--danger);font-weight:760}.savy-chat-backdrop{z-index:42}.savy-chat-modal{width:min(860px,100%);max-height:min(calc(100vh - 106px),900px);max-height:min(calc(100dvh - 106px),900px);background:radial-gradient(640px 320px at 90% -16%,rgba(10,132,255,.17) 0%,transparent 72%),radial-gradient(560px 260px at 12% 112%,rgba(64,132,255,.12) 0%,transparent 70%),linear-gradient(180deg,#0a0d14f2,#141824ed);border-radius:22px;border:1px solid rgba(255,255,255,.1);padding:0;position:relative;overflow:hidden;box-shadow:0 22px 64px #0000007a}.savy-chat-watermark{position:absolute;left:50%;top:54%;transform:translate(-50%,-50%);width:min(80%,620px);opacity:.07;pointer-events:none;-webkit-user-select:none;user-select:none}.savy-chat-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px 14px;position:relative;z-index:1}.savy-chat-head h3{margin:0;font-size:clamp(34px,3.8vw,44px);line-height:1;letter-spacing:-.03em}.savy-chat-head-actions{display:inline-flex;align-items:center;gap:10px}.savy-chat-clear{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:42px;min-width:82px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:#ffffff0d;color:#dce4f7;font-size:15px;font-weight:650;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .12s ease,border-color .12s ease,opacity .12s ease}.savy-chat-clear:hover:not(:disabled){background:#ffffff1a;border-color:#ffffff3d}.savy-chat-clear:disabled{opacity:.58;cursor:default}.savy-chat-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:52px;height:52px;border-radius:16px;border:1px solid rgba(255,255,255,.14);background:#ffffff0a;color:#dce4f7;font-size:36px;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .12s ease,border-color .12s ease}.savy-chat-close:hover{background:#ffffff17;border-color:#ffffff38}.savy-chat-head-divider{border-top:1px solid rgba(255,255,255,.12);position:relative;z-index:1}.savy-chat-messages{margin-top:0;display:grid;gap:12px;position:relative;z-index:1;max-height:min(52vh,540px);overflow:auto;padding:16px 24px 0}.savy-chat-bubble{max-width:min(86%,760px);border-radius:22px;padding:14px 16px;font-size:17px;line-height:1.42;white-space:pre-wrap;word-break:break-word}.savy-chat-bubble.savy{justify-self:start;background:color-mix(in srgb,#2f3442 88%,transparent);border:1px solid rgba(255,255,255,.08);color:var(--text)}.savy-chat-bubble.user{justify-self:end;background:linear-gradient(180deg,#1678ff,#0a66f2);color:#fff}.savy-chat-input-row{margin:14px 24px 20px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:#181c27f0;padding:8px 10px 8px 20px;display:flex;align-items:center;gap:10px;position:relative;z-index:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.savy-chat-input-row input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--subtext);font-size:17px;line-height:1.35;font-weight:560}.savy-chat-input-row input::placeholder{color:color-mix(in srgb,var(--subtext) 82%,#98a3b9 18%)}.savy-chat-send{width:44px;height:44px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:#acb5c4bf;color:#fff;font-size:20px;padding:0;display:inline-flex;align-items:center;justify-content:center}.savy-chat-send:not(:disabled){background:linear-gradient(180deg,#368fff,#0a66f2);border-color:#5f9cffcc}.savy-chat-example-column{margin:14px 24px 0;display:grid;gap:10px;justify-items:end;position:relative;z-index:1}.savy-chat-example-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(56,139,255,.42);background:#141c2ceb;color:color-mix(in srgb,var(--text) 94%,#e9f2ff 6%);border-radius:999px;padding:12px 16px;font-size:16px;line-height:1.34;font-weight:670;max-width:min(86%,620px);text-align:left;cursor:pointer}.savy-chat-example-chip:disabled{opacity:.6;cursor:default}.savy-deck-wrap{margin:10px 0;position:relative;z-index:1}.savy-deck-header-row{display:flex;align-items:center;gap:10px;margin-bottom:8px}.savy-deck-count-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 38%,var(--line));background:color-mix(in srgb,var(--accent) 12%,transparent);color:#b9d7ff;font-size:12px;font-weight:700}.savy-deck-count-icon{font-size:12px}.savy-deck-header-row h4{margin:0;font-size:15px;font-weight:700}.savy-deck-box{position:relative;height:210px;display:flex;align-items:flex-start;justify-content:center}.savy-deck-card{width:min(640px,calc(100% - 12px));height:182px;border-radius:16px;border:1px solid rgba(255,255,255,.08);box-shadow:0 8px 18px #0000003d;padding:14px;position:absolute;overflow:hidden}.savy-deck-card:after{content:"";position:absolute;right:10px;bottom:10px;width:120px;height:120px;border-radius:16px;border:1px solid rgba(255,255,255,.07);opacity:.22;pointer-events:none}.savy-deck-card-under{pointer-events:none}.savy-deck-card-top{z-index:40;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:pan-y;transition:transform .14s ease}.savy-deck-card-top:active{cursor:grabbing}.savy-deck-direction{position:absolute;top:8px;border:1px solid color-mix(in srgb,var(--line) 86%,white 14%);background:#00000029;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700;color:#d8e7ff}.savy-deck-direction-left{left:8px}.savy-deck-direction-right{right:8px}.savy-deck-merchant{margin:0 0 6px;font-size:18px;line-height:1.05;font-weight:800;color:#eef3ff}.savy-deck-meta-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.savy-deck-chip{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:4px 8px;border:1px solid rgba(255,255,255,.11);background:#0000002b;color:#dae5ff;font-size:12px;font-weight:620}.savy-deck-amount{margin:0;font-size:23px;font-weight:900;color:#cfe1ff}.savy-deck-merchant.blur,.savy-deck-chip.blur,.savy-deck-amount.blur{text-shadow:0 0 3px rgba(0,0,0,.34);filter:saturate(.92)}.savy-deck-footer{margin-top:10px;display:flex;justify-content:flex-end;gap:8px}.savy-deck-yes,.savy-deck-no{min-height:36px;border-radius:12px;border:1px solid transparent;color:#fff;font-weight:720;padding:8px 14px}.savy-deck-yes{background:linear-gradient(180deg,#2b6f5d,#1f5749)}.savy-deck-no{background:linear-gradient(180deg,#7a3232,#5c2626)}.savy-decline-reason{margin-top:8px;padding:10px;border-radius:12px;border:1px solid color-mix(in srgb,var(--line) 84%,transparent);background:color-mix(in srgb,var(--surface-2) 88%,transparent)}.savy-decline-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}@media (max-width: 900px){.bg-logo{width:125vw;top:50%}.app-shell{padding:0 12px 22px}.app-shell-analytics{padding:0 12px 26px}.top-inner{height:auto;min-height:66px;padding:8px 12px;align-items:flex-start}.top-inner-analytics{padding:8px 12px}.nav{gap:8px;flex-wrap:wrap;justify-content:flex-end}.nav button,.nav .btn-link{font-size:12px;padding:8px 10px}.nav-auth .nav-icon-btn{min-width:36px}.nav-auth .nav-icon-btn svg{width:15px;height:15px}.brand-wordmark{font-size:17px}.brand-with-savy{gap:8px}.savy-chat-modal{width:min(100%,900px);border-radius:18px}.savy-chat-head{padding:14px 16px 12px}.savy-chat-head h3{font-size:30px}.savy-chat-head-actions{gap:8px}.savy-chat-clear{height:38px;min-width:72px;font-size:14px;padding:0 12px}.savy-chat-close{width:44px;height:44px;border-radius:14px;font-size:30px}.savy-chat-messages{max-height:48vh;padding:12px 16px 0;gap:10px}.savy-chat-bubble{max-width:90%;font-size:16px;padding:12px 14px}.savy-chat-example-column{margin:12px 16px 0}.savy-chat-example-chip{max-width:90%;font-size:15px;padding:11px 14px}.savy-chat-input-row{margin:12px 16px 16px;padding-left:16px}.savy-chat-input-row input{font-size:16px}.savy-deck-box{height:194px}.savy-deck-card{height:170px;width:min(640px,calc(100% - 4px));padding:12px}.savy-deck-merchant{font-size:16px}.savy-deck-amount{font-size:20px}.topbar{flex-direction:column}.grid-form,.history-row,.snapshot-grid,.admin-invoice-top-grid,.admin-analytics-split,.admin-kpi-group-grid,.admin-chart-grid{grid-template-columns:1fr}.ops-card{grid-column:1 / -1}.hero{min-height:auto;padding-top:28px}.hero-grid{grid-template-columns:1fr;gap:18px}.hero-copy{text-align:center;max-width:none}.headline{font-size:clamp(38px,14vw,66px);max-width:580px;margin-left:auto;margin-right:auto}.subhead{font-size:clamp(18px,5vw,28px);max-width:560px;margin-left:auto;margin-right:auto}.auth-wrap{width:min(460px,calc(100vw - 24px))}.auth-wrap.open{top:74px;right:12px}.auth-actions-row{flex-wrap:wrap}}.admin-kpi-group-title{margin:0 0 8px;color:var(--subtext);font-size:12px;letter-spacing:.04em;text-transform:uppercase;font-weight:760}.kpi-card-breakdown{height:335px;min-height:335px;padding:12px;gap:10px;grid-template-rows:auto auto auto minmax(0,1fr)}.kpi-card-breakdown .kpi-value{font-size:clamp(18px,1.65vw,26px)}.kpi-breakdown-table-wrap{border:1px solid color-mix(in srgb,var(--line) 86%,transparent);border-radius:10px;overflow-x:auto;overflow-y:auto;height:100%;min-height:0;max-height:none;background:color-mix(in srgb,var(--surface-2) 80%,transparent)}.kpi-breakdown-table{width:100%;min-width:940px;border-collapse:collapse}.kpi-breakdown-table th,.kpi-breakdown-table td{padding:8px 10px;border-bottom:1px solid color-mix(in srgb,var(--line) 78%,transparent);font-size:12px;color:var(--text);text-align:left;white-space:nowrap}.kpi-breakdown-table th{position:sticky;top:0;z-index:1;background:color-mix(in srgb,var(--surface) 94%,black 6%);color:var(--subtext);font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:10px}.kpi-breakdown-table th.num,.kpi-breakdown-table td.num{text-align:right}.kpi-breakdown-name{max-width:260px;overflow:hidden;text-overflow:ellipsis}.kpi-tier-pill{display:inline-block;padding:2px 8px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;border:1px solid transparent}.kpi-tier-pill.kpi-tier-pro{color:var(--success);background:color-mix(in srgb,var(--success) 16%,transparent);border-color:color-mix(in srgb,var(--success) 40%,transparent)}.kpi-tier-pill.kpi-tier-free{color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,transparent);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.kpi-tier-pill.kpi-tier-unknown{color:var(--subtext);background:color-mix(in srgb,var(--subtext) 14%,transparent);border-color:color-mix(in srgb,var(--subtext) 35%,transparent)}.kpi-breakdown-empty{text-align:center!important;color:var(--subtext)!important;padding:16px!important}.kpi-breakdown-calls{color:var(--subtext);font-size:10px}.kpi-detail-row-total{border-top:1px dashed color-mix(in srgb,var(--line) 72%,transparent);padding-top:4px;margin-top:2px}.zone-badge{border-radius:999px;padding:2px 8px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;border:1px solid transparent;white-space:nowrap}.zone-badge.zone-green{color:var(--success);background:color-mix(in srgb,var(--success) 14%,transparent);border-color:color-mix(in srgb,var(--success) 45%,transparent)}.zone-badge.zone-yellow{color:var(--warning);background:color-mix(in srgb,var(--warning) 16%,transparent);border-color:color-mix(in srgb,var(--warning) 45%,transparent)}.zone-badge.zone-red{color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,transparent);border-color:color-mix(in srgb,var(--danger) 45%,transparent)}.zone-badge.zone-neutral{color:var(--subtext);background:color-mix(in srgb,var(--subtext) 12%,transparent);border-color:color-mix(in srgb,var(--subtext) 35%,transparent)}.admin-invoice-top-grid{grid-template-columns:minmax(0,.52fr) minmax(0,.78fr) minmax(0,1.42fr)}.admin-invoice-top-grid>*{min-width:0;height:100%}.admin-invoice-top-kpi,.admin-invoice-top-trend{min-height:0}.admin-invoice-top-trend .chart-title{font-size:16px;margin-bottom:8px}.chart-card-wide{grid-column:span 8}.chart-card-mid{grid-column:span 6}.chart-card-small{grid-column:span 4}.ops-card-balance{grid-column:1 / span 4;grid-row:span 2}.ops-card-item{grid-column:5 / span 4}.ops-card-suggested{grid-column:9 / span 4}.ops-card-security{grid-column:5 / span 4}.ops-card-notification{grid-column:9 / span 4}.ops-card .chart-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}.bar-grid-line{position:absolute;left:0;right:0;border-top:1px dashed color-mix(in srgb,var(--line) 70%,transparent);opacity:.5;pointer-events:none}.donut-wrap{display:grid;gap:11px}.donut-shell{display:grid;place-items:center;gap:8px;padding-top:2px}.donut-svg{width:208px;height:208px;display:block;overflow:visible;filter:drop-shadow(0 16px 30px rgba(0,0,0,.24));animation:donut-enter .42s cubic-bezier(.2,.9,.2,1);transform-origin:center}@keyframes donut-enter{0%{opacity:0;transform:scale(.95) rotate(-4deg)}to{opacity:1;transform:scale(1) rotate(0)}}.donut-segment{transition:filter .16s ease,opacity .16s ease}.donut-wrap:hover .donut-segment{filter:brightness(1.07);opacity:.98}.donut-center-label{fill:var(--subtext);fill-opacity:.86;font-size:10px;letter-spacing:.13em;font-weight:760}.donut-center-value{fill:var(--text);font-weight:780;letter-spacing:-.015em;dominant-baseline:middle}.donut-center-secondary{fill:var(--subtext);fill-opacity:.9;font-size:11px;font-weight:700;letter-spacing:.01em;dominant-baseline:middle}.donut-insight{margin:0;font-size:11px;color:var(--subtext);font-weight:630;text-align:center}.donut-legend{width:100%;display:grid;gap:7px}.donut-legend-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:8px;border-radius:11px;border:1px solid color-mix(in srgb,var(--line) 80%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 86%,transparent),color-mix(in srgb,var(--surface-2) 95%,transparent));padding:7px 9px}.donut-legend-row.is-zero{opacity:.62}.donut-legend-dot{width:10px;height:10px;border-radius:999px;display:inline-block;background:var(--dot-color, var(--accent));box-shadow:0 0 0 3px color-mix(in srgb,var(--dot-color, var(--accent)) 26%,transparent),0 0 12px color-mix(in srgb,var(--dot-color, var(--accent)) 28%,transparent)}.donut-legend-label{font-size:11px;color:var(--subtext);font-weight:640;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.donut-legend-share{font-size:10px;color:var(--subtext);font-weight:760;letter-spacing:.02em;border:1px solid color-mix(in srgb,var(--line) 75%,transparent);background:color-mix(in srgb,var(--surface) 92%,transparent);border-radius:999px;padding:2px 7px;white-space:nowrap}.donut-legend-value{font-size:11px;color:var(--text);font-weight:760;letter-spacing:-.01em;white-space:nowrap;font-variant-numeric:tabular-nums}.line-chart{width:100%;min-height:250px;border-radius:12px;border:1px solid color-mix(in srgb,var(--line) 75%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 6%,transparent),color-mix(in srgb,var(--surface-2) 98%,transparent));overflow-x:auto;overflow-y:hidden;padding:8px 8px 2px}.line-chart svg{display:block;min-width:760px;width:100%;height:220px}.invoice-hero-chart{width:100%;min-height:300px;border-radius:14px;border:1px solid color-mix(in srgb,var(--line) 75%,transparent);background:radial-gradient(120% 85% at 12% 100%,color-mix(in srgb,var(--success) 18%,transparent) 0%,transparent 62%),linear-gradient(180deg,color-mix(in srgb,var(--surface) 92%,black 8%),color-mix(in srgb,var(--surface-2) 89%,black 11%));overflow:hidden;padding:10px 10px 0}.invoice-hero-chart svg{display:block;width:100%;height:270px}.chart-meta{margin:10px 0 0;font-size:13px;color:var(--subtext)}.admin-empty{margin:0;color:var(--subtext);font-size:14px;padding:12px 0}@media (max-width: 900px){.admin-invoice-top-grid{grid-template-columns:1fr}.admin-platform-card .kpi-value{font-size:clamp(22px,6.8vw,30px)}.admin-platform-card .kpi-sub,.admin-platform-card .kpi-detail-value{font-size:14px}.kpi-card-breakdown{height:335px;min-height:335px;padding:10px}.kpi-breakdown-table{min-width:900px}.chart-card-wide,.chart-card-mid,.chart-card-small,.ops-card,.ops-card-balance,.ops-card-item,.ops-card-suggested,.ops-card-security,.ops-card-notification{grid-column:span 1}.ops-card-balance{grid-row:auto}.bar-track{height:132px}.donut-svg{width:188px;height:188px}}.btn-primary{color:#fff;background:linear-gradient(180deg,var(--accent-2),var(--accent));box-shadow:0 10px 22px #007aff52}.btn-danger-soft{background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 38%,transparent)}.card{background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 28px #00000052;width:min(760px,100%);margin:0 auto;padding:18px}.portal-surface{width:min(1180px,100%);background:transparent;border-color:transparent;box-shadow:none}.form-grid{display:grid;gap:10px;margin-top:10px}.field{display:grid;gap:6px;text-align:left;font-size:12px;color:var(--subtext);font-weight:700;letter-spacing:.02em;text-transform:uppercase}.field input:not([type=checkbox]),.field select{border:1px solid var(--line);background:var(--surface-2);color:var(--text);border-radius:12px;min-height:44px;padding:0 12px;font-size:15px;font-family:inherit}.field input:not([type=checkbox]):focus,.field select:focus{outline:2px solid color-mix(in srgb,var(--accent) 40%,transparent);border-color:color-mix(in srgb,var(--accent) 62%,var(--line))}.feedback.open{display:block}.feedback.success{border-color:color-mix(in srgb,var(--success) 55%,var(--line));color:var(--success)}.form-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:4px}.note{margin-top:6px;font-size:13px;color:var(--subtext);text-align:left}.portal{display:none;min-height:calc(100vh - 72px);padding:30px 0}.portal.open{display:block}#accountPage .card,#portal .card{background:transparent;border-color:transparent;box-shadow:none}.portal-grid{margin-top:16px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;position:relative;z-index:1}.portal-span-12{grid-column:span 12}.portal-span-6{grid-column:span 6}.portal-card{--portal-accent: var(--accent);border:1px solid color-mix(in srgb,var(--portal-accent) 25%,var(--line));background:radial-gradient(220px 120px at 92% -8%,color-mix(in srgb,var(--portal-accent) 16%,transparent) 0%,transparent 70%),linear-gradient(180deg,color-mix(in srgb,var(--surface) 98%,transparent),color-mix(in srgb,var(--surface-2) 94%,transparent));border-radius:16px;padding:15px;display:grid;gap:10px;align-content:start;position:relative;overflow:hidden;box-shadow:0 14px 30px color-mix(in srgb,var(--portal-accent) 10%,rgba(0,0,0,.12));transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.portal-card:hover{transform:translateY(-2px);box-shadow:0 18px 34px color-mix(in srgb,var(--portal-accent) 18%,rgba(0,0,0,.15));border-color:color-mix(in srgb,var(--portal-accent) 42%,var(--line))}.portal-card-hero{--portal-accent: var(--accent)}.portal-card-alert{--portal-accent: var(--warning)}.portal-card-budget{--portal-accent: #3d98ff}.portal-card-income{--portal-accent: var(--success)}.portal-card-spending{--portal-accent: #45b8a6}.portal-card-focus{--portal-accent: color-mix(in srgb, var(--accent) 70%, var(--success))}.portal-head{display:flex;align-items:center;gap:10px}.portal-icon{width:30px;height:30px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--portal-accent);border:1px solid color-mix(in srgb,var(--portal-accent) 40%,var(--line));background:color-mix(in srgb,var(--portal-accent) 15%,transparent);flex:0 0 auto}.portal-card h3{margin:0;font-size:19px;letter-spacing:-.015em;line-height:1.1;color:var(--text);font-weight:800}.account-profile-action-row{margin-top:4px;display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;flex-wrap:nowrap}.account-profile-action-left{display:inline-flex;align-items:center;gap:8px;flex-wrap:nowrap}.account-profile-save{margin-left:auto}.account-phone-action-row{display:flex;align-items:center;gap:10px;width:100%;flex-wrap:nowrap}.account-phone-action-left{display:inline-flex;align-items:center;gap:8px;flex-wrap:nowrap}.account-phone-action-right{margin-left:auto;display:inline-flex;align-items:center;gap:8px;flex-wrap:nowrap}.portal-card p{margin:0;color:var(--subtext);font-size:14px;line-height:1.35}.portal-metric{margin:6px 0 0;font-size:clamp(30px,2.9vw,38px);letter-spacing:-.03em;font-weight:820;color:var(--text);line-height:.96}.portal-chip-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.portal-chip{border:1px solid var(--line);border-radius:999px;padding:4px 10px;font-size:11px;font-weight:720;letter-spacing:.02em;color:var(--subtext);background:color-mix(in srgb,var(--surface) 92%,transparent)}.portal-chip.status-live{color:var(--success);border-color:color-mix(in srgb,var(--success) 50%,transparent);background:color-mix(in srgb,var(--success) 12%,transparent)}.portal-sub{margin:2px 0 0;color:var(--subtext);font-size:13px;line-height:1.35}.portal-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;color:var(--subtext);border-top:1px dashed color-mix(in srgb,var(--portal-accent) 30%,var(--line));padding-top:8px}.portal-row strong{color:var(--text);font-weight:760}.portal-list{margin:0;padding-left:18px;display:grid;gap:7px;color:var(--subtext);font-size:13px;line-height:1.36}.portal-list strong{color:var(--text);font-weight:700}.portal-empty{margin:0;color:var(--subtext);font-size:13px}.portal-progress{height:10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--portal-accent) 35%,var(--line));background:color-mix(in srgb,var(--surface) 88%,transparent);overflow:hidden}.portal-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,var(--portal-accent) 74%,#fff),var(--portal-accent));min-width:2px}.banking-surface{width:min(1180px,100%)}.banking-page{position:relative;overflow:hidden;background:radial-gradient(680px 280px at 90% -12%,color-mix(in srgb,var(--accent) 20%,transparent) 0%,transparent 70%),radial-gradient(560px 240px at 5% 102%,color-mix(in srgb,var(--success) 16%,transparent) 0%,transparent 68%),linear-gradient(165deg,color-mix(in srgb,var(--surface) 96%,transparent),color-mix(in srgb,var(--surface-2) 92%,transparent))}.banking-page:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(115deg,transparent 0 56%,color-mix(in srgb,var(--accent) 7%,transparent) 56% 60%,transparent 60% 100%),linear-gradient(140deg,transparent 0 72%,color-mix(in srgb,var(--success) 8%,transparent) 72% 75%,transparent 75% 100%);pointer-events:none}.banking-toolbar{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;margin-bottom:14px}.banking-toolbar-actions{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.banking-check{margin:0;font-size:12px}.banking-empty{position:relative;z-index:1;margin-top:6px;padding:18px;gap:10px}.banking-sections{position:relative;z-index:1;display:grid;gap:14px}.banking-group{display:grid;gap:10px}.banking-group-chip{display:inline-flex;align-items:center;justify-content:center;width:fit-content;border-radius:999px;padding:4px 10px;font-size:11px;letter-spacing:.05em;text-transform:uppercase;font-weight:760;border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 90%,transparent);color:var(--text)}.banking-group-chip-assets{border-color:color-mix(in srgb,#4eb9a8 55%,var(--line));color:#5ad4c2}.banking-group-chip-investments{border-color:color-mix(in srgb,#6d97e8 55%,var(--line));color:#7fb0ff}.banking-group-chip-liabilities{border-color:color-mix(in srgb,#daa862 55%,var(--line));color:#e8b970}.banking-group-chip-loans{border-color:color-mix(in srgb,#db8888 55%,var(--line));color:#e99a9a}.banking-section{padding:12px;gap:10px}.banking-section-assets{--portal-accent: #4eb9a8}.banking-section-investments{--portal-accent: #6d97e8}.banking-section-liabilities{--portal-accent: #daa862}.banking-section-loans{--portal-accent: #db8888}.banking-section-head{border:0;background:transparent;padding:0;width:100%;color:inherit;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left}.banking-section-head-left{display:flex;align-items:center;gap:10px;min-width:0}.banking-section-head-left h3{margin:0}.banking-section-meta{margin:2px 0 0;color:var(--subtext);font-size:12px}.banking-section-head-right{display:inline-flex;align-items:center;gap:8px}.banking-section-total{color:var(--text);font-size:17px;letter-spacing:-.015em}.banking-section-delta{border-radius:999px;border:1px solid var(--line);padding:2px 8px;font-size:11px;font-weight:760;background:color-mix(in srgb,var(--surface) 90%,transparent)}.banking-section-delta.neutral{color:var(--subtext)}.banking-section-delta.up-good,.banking-section-delta.down-good{color:var(--success);border-color:color-mix(in srgb,var(--success) 50%,transparent);background:color-mix(in srgb,var(--success) 12%,transparent)}.banking-section-delta.up-bad,.banking-section-delta.down-bad{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 48%,transparent);background:color-mix(in srgb,var(--danger) 10%,transparent)}.banking-section-chevron{color:var(--subtext);font-size:12px}.banking-account-list{display:grid;gap:8px}.banking-account-card{border:1px solid color-mix(in srgb,var(--line) 84%,transparent);border-radius:12px;background:color-mix(in srgb,var(--surface) 90%,transparent);padding:10px;display:grid;gap:8px}.banking-account-clickable{cursor:pointer;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}.banking-account-clickable:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 40%,var(--line));box-shadow:0 10px 20px #00000029}.banking-account-clickable:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 56%,#fff);outline-offset:2px}.banking-account-main{display:flex;align-items:center;justify-content:space-between;gap:10px}.banking-account-left{min-width:0;display:flex;align-items:center;gap:10px}.banking-account-logo-wrap{width:34px;height:34px;border-radius:10px;overflow:hidden;border:1px solid color-mix(in srgb,var(--line) 80%,transparent);background:color-mix(in srgb,var(--surface-2) 90%,transparent);flex:0 0 auto}.banking-account-logo{width:100%;height:100%;object-fit:cover;display:block}.banking-account-logo-fallback{width:100%;height:100%;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:780;color:var(--text)}.banking-account-copy{min-width:0;display:grid;gap:2px}.banking-account-inst{margin:0;font-size:11px;color:var(--subtext);text-transform:uppercase;letter-spacing:.06em;font-weight:700}.banking-account-name{margin:0;font-size:14px;color:var(--text);font-weight:690;display:inline-flex;align-items:center;gap:7px}.banking-account-mask{font-size:12px;color:var(--subtext)}.banking-account-right{display:grid;gap:3px;justify-items:end}.banking-account-amount{margin:0;font-size:17px;color:var(--text);font-weight:760;letter-spacing:-.02em}.banking-account-delta{margin:0;font-size:12px;font-weight:730}.banking-account-delta.neutral{color:var(--subtext)}.banking-account-delta.up-good,.banking-account-delta.down-good{color:var(--success)}.banking-account-delta.up-bad,.banking-account-delta.down-bad{color:var(--danger)}.banking-account-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.banking-transactions-modal{width:min(920px,100%);max-height:min(calc(100vh - 108px),920px);max-height:min(calc(100dvh - 108px),920px)}.banking-transactions-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}.banking-transactions-head h3{margin:0;font-size:24px;letter-spacing:-.02em}.banking-transactions-search-row{display:flex;align-items:center;gap:8px;margin-bottom:10px}.banking-transactions-search{flex:1;min-width:0;display:flex;align-items:center;gap:6px;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);border-radius:11px;background:color-mix(in srgb,var(--surface-2) 90%,transparent);padding:0 8px}.banking-transactions-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--text);min-height:36px;font:inherit}.banking-transactions-clear{min-height:0;padding:4px 6px;font-size:12px}.banking-transactions-mode{min-height:36px;font-size:12px}.banking-transactions-groups{display:grid;gap:12px}.banking-transactions-group h4{margin:0 0 7px;color:var(--subtext);font-size:12px;text-transform:uppercase;letter-spacing:.05em}.banking-transactions-list{border:1px solid color-mix(in srgb,var(--line) 84%,transparent);border-radius:11px;background:color-mix(in srgb,var(--surface-2) 88%,transparent);overflow:hidden}.banking-transaction-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 11px;border-top:1px solid color-mix(in srgb,var(--line) 75%,transparent)}.banking-transactions-list .banking-transaction-row:first-child{border-top:0}.banking-transaction-main{min-width:0;display:grid;gap:2px}.banking-transaction-name{margin:0;color:var(--text);font-size:14px;display:inline-flex;align-items:center;gap:6px}.banking-transaction-pending{border-radius:999px;border:1px solid color-mix(in srgb,var(--warning) 45%,transparent);background:color-mix(in srgb,var(--warning) 12%,transparent);color:var(--warning);padding:2px 6px;font-size:10px;text-transform:uppercase;letter-spacing:.04em;font-weight:740}.banking-transaction-date{margin:0;color:var(--subtext);font-size:12px}.banking-transaction-amount{margin:0;font-size:15px;font-weight:760;white-space:nowrap}.banking-transaction-amount.pending{color:var(--subtext)}.banking-transaction-amount.expense{color:var(--danger)}.banking-transaction-amount.income{color:var(--success)}.banking-transactions-empty{margin:18px 0 2px;color:var(--subtext);font-size:14px;text-align:center}.dashboard-surface{width:min(1180px,100%)}.dashboard-topbar{align-items:flex-start;margin-bottom:12px}.dashboard-actions{display:grid;gap:8px;justify-items:end;min-width:320px}.dashboard-layout-select{width:min(280px,100%)}.dashboard-layout-select select{min-height:36px}.dashboard-actions-row .btn{min-height:34px;padding:7px 12px;font-size:12px}.dashboard-grid{margin-top:12px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:86px;gap:10px}.dashboard-tile{min-width:0;padding:12px;gap:10px}.dashboard-tile-clickable{cursor:pointer}.dashboard-tile-clickable:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 52%,transparent);outline-offset:3px;border-radius:10px}.dashboard-tile-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.dashboard-tile-title-wrap{min-width:0}.dashboard-tile-sub{margin-top:4px;font-size:12px}.dashboard-tile-btns{display:inline-flex;align-items:center;gap:6px}.dashboard-tile-btns .btn{border-radius:9px;min-height:28px;padding:4px 9px;font-size:11px}.dashboard-metric-stack{display:grid;gap:8px;min-height:0}.dashboard-kpi{margin:0;font-size:clamp(22px,2.4vw,33px);line-height:.98;letter-spacing:-.02em;font-weight:820;color:var(--text)}.dashboard-kpi-note{margin:0;font-size:12px;color:var(--subtext);line-height:1.3}.dashboard-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;color:var(--subtext);border-top:1px dashed color-mix(in srgb,var(--line) 72%,transparent);padding-top:6px}.dashboard-row strong{color:var(--text);font-weight:770;white-space:nowrap;text-align:right}.dashboard-row small{color:var(--subtext);font-size:10px;font-weight:650}.dashboard-list-stack{display:grid;gap:6px}.dashboard-list-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center;font-size:12px;color:var(--subtext)}.dashboard-list-row strong{color:var(--text);font-weight:740;white-space:nowrap}.dashboard-mini-bar{grid-column:1 / -1;height:5px;border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--surface) 90%,transparent);border:1px solid color-mix(in srgb,var(--line) 72%,transparent)}.dashboard-mini-bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 70%,#fff),var(--accent));min-width:2px}.dashboard-empty-callout{display:flex;align-items:center;justify-content:space-between;gap:10px}.dashboard-empty-title{margin:0;font-size:14px;color:var(--subtext)}.dashboard-modal{width:min(660px,100%)}.dashboard-screen-modal{width:min(1180px,100%);max-height:min(calc(100vh - 108px),920px);max-height:min(calc(100dvh - 108px),920px);overflow:auto}.dashboard-screen-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}.dashboard-screen-subtitle{margin:4px 0 0;font-size:12px}.dashboard-screen-layout{display:grid;gap:10px}.dashboard-screen-kpis{display:grid;gap:8px}.dashboard-screen-kpi-card{border-radius:12px;padding:12px}.dashboard-screen-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dashboard-screen-panel{border-radius:12px;padding:12px}.dashboard-screen-panel>h3{margin:0 0 8px;font-size:16px}.dashboard-screen-table-wrap{border:1px solid color-mix(in srgb,var(--line) 84%,transparent);border-radius:10px;overflow:auto;background:color-mix(in srgb,var(--surface-2) 90%,transparent)}.dashboard-screen-table{min-width:560px}.dashboard-screen-table .num{text-align:right}.dashboard-bill-row,.dashboard-budget-row{cursor:pointer}.dashboard-bill-row td,.dashboard-budget-row td{transition:background-color .16s ease}.dashboard-bill-row:hover td,.dashboard-bill-row:focus-visible td{background:color-mix(in srgb,var(--accent) 10%,transparent)}.dashboard-budget-row:hover td,.dashboard-budget-row:focus-visible td{background:color-mix(in srgb,var(--accent) 10%,transparent)}.dashboard-empty-cell{text-align:center;color:var(--subtext)}.dashboard-screen-head-actions{display:inline-flex;align-items:center;gap:8px}.dashboard-budget-month-picker{display:grid;grid-template-columns:auto minmax(170px,240px);align-items:center;justify-content:start;gap:8px;padding:9px 11px;border:1px solid color-mix(in srgb,var(--line) 84%,transparent);border-radius:10px;background:color-mix(in srgb,var(--surface-2) 90%,transparent)}.dashboard-budget-month-picker label{font-size:12px;color:var(--subtext);font-weight:650}.dashboard-budget-month-picker select{min-width:0;height:34px;border-radius:9px;border:1px solid color-mix(in srgb,var(--line) 82%,transparent);padding:0 10px;background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--text);font:inherit}.dashboard-inline-badge{margin-left:6px}.dashboard-move-cell{display:grid;grid-template-columns:minmax(130px,1fr) auto;gap:6px;align-items:center}.dashboard-calc-panel{border:1px solid color-mix(in srgb,var(--line) 84%,transparent);border-radius:12px;padding:10px;background:color-mix(in srgb,var(--surface-2) 90%,transparent);display:grid;gap:8px;width:min(420px,100%);justify-self:center}.dashboard-calc-display{display:grid;gap:6px}.dashboard-calc-result{margin:0;font-size:12px;color:var(--subtext)}.dashboard-calc-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.dashboard-calc-key{min-height:34px;border-radius:9px}.dashboard-calc-key-primary{border-color:color-mix(in srgb,var(--accent) 65%,var(--line))}.dashboard-tight-list{gap:5px}.dashboard-tight-list li{margin:0}@media (max-width: 900px){.portal-row{flex-wrap:wrap}.account-profile-action-row,.account-phone-action-row{flex-wrap:wrap;align-items:stretch}.account-profile-action-left,.account-phone-action-left,.account-phone-action-right{width:100%;flex-wrap:wrap;justify-content:flex-start}.account-phone-action-right,.account-profile-save{margin-left:0}.portal-grid{grid-template-columns:1fr;gap:12px}.portal-span-12,.portal-span-6{grid-column:span 1}.portal-card{padding:13px}.portal-metric{font-size:clamp(26px,8.6vw,34px)}.banking-toolbar{flex-direction:column;align-items:stretch}.banking-toolbar-actions{width:100%}.banking-section-head{flex-wrap:wrap;align-items:flex-start}.banking-section-head-right{width:100%;justify-content:flex-start}.banking-account-main{flex-wrap:wrap}.banking-account-right{justify-items:start}.banking-transactions-search-row{flex-wrap:wrap}.banking-transactions-mode{width:100%}.dashboard-actions{justify-items:stretch;width:100%;min-width:0}.dashboard-layout-select,.dashboard-actions-row{width:100%}.dashboard-grid{grid-template-columns:1fr;grid-auto-rows:auto}.dashboard-grid .dashboard-tile{grid-column:1 / -1!important;grid-row:auto!important}.dashboard-screen-columns{grid-template-columns:1fr}.dashboard-budget-month-picker{grid-template-columns:1fr;justify-items:stretch}.dashboard-move-cell{grid-template-columns:1fr}.dashboard-screen-modal{max-height:min(calc(100vh - 94px),940px);max-height:min(calc(100dvh - 94px),940px)}.dashboard-empty-callout{flex-direction:column;align-items:flex-start}.money-form{grid-template-columns:1fr}.money-toolbar{flex-wrap:wrap;align-items:stretch}.money-toolbar .toolbar-right{width:100%}.money-toolbar .toolbar-right input{min-width:0;width:100%}.money-item-title{font-size:16px}.bill-list-item{padding:12px;gap:8px}.bill-item-head,.bill-item-head-redesign{flex-wrap:wrap;gap:7px}.bill-identity{gap:8px}.bill-icon-pill{width:26px;height:26px;font-size:14px;border-radius:8px}.bill-meta-row{gap:6px}.bill-meta-chip{font-size:9px;padding:3px 7px}.bill-amount-block{text-align:left;width:100%}.bill-item-metric{font-size:clamp(22px,8.4vw,30px)}.bill-row-actions-redesign{align-items:stretch}.bill-action-cluster,.bill-action-cluster-secondary{width:100%;margin-left:0}.bill-row-actions,.bill-row-actions-redesign{gap:6px}.bill-row-actions .btn,.bill-row-actions-redesign .btn{min-height:34px;padding:7px 10px;font-size:12px}.icon-picker-modal{width:min(640px,calc(100vw - 20px));max-height:min(82vh,700px);padding:12px;gap:10px}.icon-picker-grid{grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:7px}.icon-picker-item{min-height:44px;font-size:22px}.money-history-row{grid-template-columns:1fr;gap:4px}.calendar-modal{width:min(760px,calc(100vw - 16px));max-height:min(calc(100vh - 90px),900px);max-height:min(calc(100dvh - 90px),900px);padding:12px}.calendar-summary{grid-template-columns:1fr}.calendar-year-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-day-number{font-size:clamp(18px,4.8vw,24px)}.calendar-event-row{grid-template-columns:1fr;align-items:flex-start}}
