:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#263047;background:#f6f7fb;font-size:14px;--ink:#222c43;--muted:#8993a7;--purple:#7456db;--line:#edf0f5}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;transition:background .18s,transform .18s}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid #bda7ff;outline-offset:3px}input:focus,select:focus{outline:2px solid #c7b9f0;outline-offset:1px}h1,h2,h3,p{margin:0}.app{display:flex;min-height:100vh}.skip{position:fixed;top:-60px;left:20px;background:#fff;z-index:30;padding:12px}.skip:focus{top:10px}.sidebar{width:230px;flex-shrink:0;background:#171e32;color:#a4aec6;padding:33px 19px 20px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{text-decoration:none;display:flex;gap:10px;align-items:center;padding:0 10px 45px;font-weight:800;font-size:24px;color:#fff;letter-spacing:-1.1px}.brand>span>span{color:#c5b0ff}.brand-mark{display:grid;place-items:center;width:35px;height:35px;border-radius:11px;background:#b4f2db;font-size:27px;color:#253b3f}.brand small{font-size:7px;letter-spacing:1.3px;font-weight:500;display:block;margin-top:6px;color:#79869e}.side-label{font-size:9px;letter-spacing:1.7px;padding:0 13px;margin-bottom:15px;color:#73819c;font-weight:700}nav{display:grid;gap:5px}nav button{display:flex;align-items:center;gap:13px;text-align:left;border:0;background:transparent;border-radius:8px;color:#99a6c0;font-size:12px;font-weight:600;padding:13px}nav button:hover{background:#222c45;color:white}nav button.active{background:#30304e;color:#d7c7ff}svg.icon{width:19px;height:19px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.nav-count{margin-left:auto;background:#ecac7840;color:#eec49b;font-size:10px;padding:2px 6px;border-radius:5px}.side-tip{margin-top:auto;padding:19px 15px;background:linear-gradient(140deg,#2e304b,#222d42);border:1px solid #3a4059;border-radius:12px;font-size:11px}.spark{display:block;color:#c8b4ff;font-size:29px;margin-bottom:10px}.side-tip strong{display:block;font-size:12px;line-height:1.6;color:#e7e8f4}.side-tip p{margin-top:9px;line-height:1.7;color:#95a1ba}.side-tip button{border:0;background:none;padding:17px 0 0;color:#c7b3ff;font-size:10px;font-weight:700;width:100%;text-align:left}.side-tip button span{float:right}.profile{margin-top:22px;padding:18px 4px 0;border-top:1px solid #2b354b;display:flex;align-items:center;gap:9px;font-size:11px;color:#dce2ef}.avatar{width:33px;height:33px;display:grid;place-items:center;border-radius:50%;background:#36415b;color:#c7d1e6;font-size:11px;font-weight:700}.profile small{display:block;font-size:10px;color:#7d8ba5;margin-top:4px}.profile-dot{width:6px;height:6px;background:#8bbca6;border-radius:50%;margin-left:auto}main{flex:1;min-width:0}header{height:70px;padding:0 37px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.breadcrumb{font-size:11px;color:#9aa3b4}.breadcrumb span{padding:0 12px;color:#c3c9d5}.breadcrumb b{font-weight:500;color:#5a647b}.header-actions{display:flex;gap:17px;align-items:center}.demo-badge{font-size:10px;color:#8b7e5d;background:#faf7ef;border-radius:5px;padding:7px 10px}.demo-badge i{display:inline-block;width:5px;height:5px;background:#c6ac71;border-radius:50%;margin-right:5px}.icon-button{height:30px;width:30px;background:white;border:1px solid #e7eaf1;border-radius:50%;color:#8a94a6;font-size:13px;display:inline-grid;place-items:center}.icon-button svg{width:14px;height:14px}.content{padding:32px 37px 0;max-width:1580px;margin:auto}.heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.eyebrow{font-size:9px;font-weight:700;letter-spacing:1.7px;color:#9b92b1;margin-bottom:9px}h1{font-size:27px;letter-spacing:-1px;line-height:1.3;font-weight:750}h1>span{color:#a68ae9}.heading p{font-size:12px;color:#8a93a4;margin-top:8px;line-height:1.5}.primary,.secondary,.danger-button{border:0;border-radius:8px;padding:11px 16px;font-size:11px;font-weight:650;display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap}.primary{background:#7859d9;color:#fff;box-shadow:0 4px 8px #7859d91a}.primary:hover{background:#6647c8;transform:translateY(-1px)}.primary>span{font-size:16px}.secondary{background:#fff;color:#66708a;border:1px solid #e5e8ef}.secondary:hover{background:#f5f3fb}.danger-button{background:#fff0ed;color:#be5548}.filter-panel{background:#fff;border:1px solid #e9ecf3;border-radius:10px;padding:10px 12px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:20px}.filter-icon{color:#a6afbe;display:flex;padding:0 2px}.filter-control{display:flex;align-items:center;gap:7px;font-size:11px;border-right:1px solid var(--line);padding-right:11px}.filter-control label{color:#929bb0;font-size:10px}.filter-control select{border:0;background:#fff;padding:7px 3px;color:#535e78;font-weight:600;font-size:11px;max-width:180px}.filter-control input{border:1px solid #e9edf3;border-radius:5px;padding:5px;color:#59647a;font-size:11px;max-width:118px}.text-button{background:none;border:0;color:#8269be;font-size:11px;font-weight:600;padding:5px}.text-button:hover{color:#553898;text-decoration:underline}.clear-filters{margin-left:auto}.range-inputs{display:flex;gap:6px;align-items:center;font-size:10px;color:#a1abbb}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:20px}.kpi{background:#fff;border:1px solid #e9edf3;border-radius:11px;padding:19px 20px;position:relative;overflow:hidden}.kpi-head{display:flex;align-items:center;justify-content:space-between;gap:5px;font-size:11px;font-weight:600;color:#8993a7}.kpi-icon{height:31px;width:31px;display:grid;place-items:center;border-radius:9px}.kpi strong{display:block;font-size:25px;letter-spacing:-.8px;line-height:1.3;margin:14px 0 7px;font-weight:700;font-variant-numeric:tabular-nums}.kpi small{color:#9aa4b5;font-size:10px}.kpi small b{font-weight:500;color:#3b9e82}.kpi.highlight{background:#f0ebfc;border-color:#e7def8}.kpi.highlight strong{color:#7456bf}.mint{background:#e9f7f1;color:#51a88b}.peach{background:#fff1e9;color:#e1996f}.lavender{background:#e9e0fc;color:#8b6ad0}.sky{background:#edf1fc;color:#8196c6}.dashboard-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:18px}.panel{background:#fff;border:1px solid #e9edf3;border-radius:11px;padding:22px;min-width:0;box-shadow:0 4px 16px #26304703}.panel-head{display:flex;align-items:start;justify-content:space-between;gap:12px;margin-bottom:21px}.panel-head h2{font-size:13px;letter-spacing:-.1px;font-weight:700}.panel-head p{font-size:10px;color:#9aa3b5;margin-top:6px;line-height:1.6}.legend{display:flex;gap:13px;align-items:center;color:#929bb0;font-size:9px}.legend i{display:inline-block;width:7px;height:7px;border-radius:2px;margin-right:5px}.panel-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.segmented{display:inline-flex;background:#f4f5f9;border-radius:6px;padding:3px;gap:2px}.segmented button{border:0;background:none;color:#9aa3b5;padding:4px 7px;border-radius:4px;font-size:10px;display:flex;align-items:center;gap:5px}.segmented button.active{background:#fff;color:#735bc0;box-shadow:0 1px 4px #1d284410}.segmented svg{width:13px;height:13px}.evolution{position:relative;padding-left:43px}.y-axis{position:absolute;left:0;top:0;bottom:25px;display:flex;flex-direction:column;justify-content:space-between;color:#a4adbc;font-size:9px}.bars-plot{height:200px;display:flex;align-items:stretch;justify-content:space-around;background:repeating-linear-gradient(to top,transparent 0,transparent calc(25% - 1px),#eef1f6 calc(25% - 1px),#eef1f6 25%);border-bottom:1px solid #e9edf4;gap:9px}.bar-group{height:100%;display:flex;align-items:flex-end;justify-content:center;gap:7px;flex:1;max-width:80px;padding:0 6px;border:0;background:none;position:relative}.bar-group:hover{background:#f4f2fb85}.bar{width:18px;max-width:35%;border-radius:4px 4px 0 0;transition:height .45s ease;min-height:1px}.bar-income{background:#a3d9c1}.bar-expense{background:#b6a2e4}.bar-labels{display:flex;justify-content:space-around;padding-top:10px;gap:9px;color:#a2aabc;font-size:10px}.bar-labels span{flex:1;text-align:center;max-width:80px}.chart-foot{font-size:9px;color:#a5adbd;margin-top:16px}.line-svg{width:100%;height:200px;overflow:visible;display:block}.line-dot{cursor:pointer}.line-dot:hover{r:6}.donut-layout{display:flex;align-items:center;justify-content:center;gap:24px;min-height:219px}.donut-container{width:166px;height:166px;position:relative;flex-shrink:0}.donut-svg{width:100%;height:100%;transform:rotate(-90deg)}.donut-svg circle.segment{cursor:pointer;transition:stroke-width .18s,opacity .18s}.donut-svg circle.segment:hover{stroke-width:23;opacity:.8}.donut-label{position:absolute;inset:39px 14px;display:flex;align-items:center;justify-content:center;flex-direction:column;pointer-events:none}.donut-label small{font-size:9px;color:#9ca6b8;margin-bottom:8px}.donut-label strong{font-size:18px;letter-spacing:-.5px}.cat-legend{display:grid;gap:3px;flex:1;min-width:120px}.legend-row{display:flex;align-items:center;gap:7px;border:0;background:none;color:#7b879c;padding:7px 0;font-size:10px;text-align:left;width:100%;border-radius:4px}.legend-row:hover{background:#f8f6fd}.legend-row i{width:7px;height:7px;border-radius:50%;flex-shrink:0}.legend-row b{margin-left:auto;color:#526078;font-size:10px;font-weight:600}.dashboard-bottom{display:grid;grid-template-columns:1.65fr 1fr;gap:18px;margin-top:18px}.account-compact{display:flex;align-items:center;padding:11px 0;gap:10px;border:0;border-bottom:1px solid #f1f3f7;background:transparent;text-align:left;width:100%}.account-compact:last-child{border-bottom:0}.account-compact:hover{background:#faf9fd}.bank-mark{width:34px;height:34px;border-radius:10px;color:#fff;display:inline-grid;place-items:center;font-size:11px;font-weight:750;flex-shrink:0}.account-title{font-size:11px;font-weight:600;color:#4d5970}.account-title small{display:block;font-size:9px;color:#a5adbd;font-weight:400;margin-top:4px}.account-value{margin-left:auto;text-align:right;font-size:11px;font-weight:650;color:#536077;font-variant-numeric:tabular-nums}.account-value small{display:block;font-size:9px;color:#a5adbd;font-weight:400;margin-top:4px}.pending-banner{margin-top:18px;border:1px solid #e5dcf5;border-radius:9px;background:#f2edfb;padding:14px 18px;display:flex;gap:12px;align-items:center;color:#8768ba;font-size:11px}.pending-banner b{color:#6e53a1;font-weight:600}.pending-banner p{margin-top:4px;font-size:10px;color:#9c8ab7}.pending-banner button{margin-left:auto;flex-shrink:0}.table-wrap{overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%;white-space:nowrap}th{font-size:9px;font-weight:600;letter-spacing:.6px;color:#a3acbd;text-transform:uppercase;padding:0 12px 14px}td{border-top:1px solid #f0f2f7;padding:14px 12px;font-size:11px;color:#8d98ac}th:first-child,td:first-child{padding-left:0}th:last-child,td:last-child{padding-right:0}td.description{color:#46516b;font-weight:600;max-width:220px;overflow:hidden;text-overflow:ellipsis}.tx-description{display:flex;align-items:center;gap:10px}.tx-icon{width:29px;height:29px;border-radius:9px;display:grid;place-items:center;color:#9579bb;background:#f5f1fa;font-size:11px}.tx-sub{display:block;font-size:9px;color:#a4adbf;font-weight:400;margin-top:4px}.category-tag{border:0;background:#f5f3fa;color:#9a87b3;font-size:9px;padding:5px 8px;border-radius:5px;display:inline-flex;align-items:center;gap:5px}.category-tag:hover{background:#eee7f8}.category-tag.unknown{background:#fff4e9;color:#b48a55}.amount{font-weight:650;font-variant-numeric:tabular-nums;color:#69758a;text-align:right}.amount.income{color:#54a68a}.amount.expense{color:#747d91}.amount.transfer{color:#a0aabb}.status{font-size:9px;color:#79a18b;background:#f1f8f3;padding:4px 6px;border-radius:4px}.status.pending{color:#bf975d;background:#fdf6e9}.table-tools{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:20px}.search-box{position:relative;flex:1;min-width:150px}.search-box input{width:100%;background:#fafbfd;border:1px solid #e8ecf3;padding:10px 12px 10px 34px;border-radius:7px;font-size:11px}.search-box svg{position:absolute;left:11px;top:10px;color:#a5aebc;width:16px;height:16px}.compact-select{border:1px solid #e8ecf3;border-radius:7px;padding:9px;background:#fff;color:#8390a5;font-size:11px}.table-summary{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:18px;margin-top:5px;border-top:1px solid #f1f3f7;color:#a4adbd;font-size:10px}.table-summary strong{color:#6e7b92;font-weight:500}.row-actions{display:flex;gap:4px;justify-content:end}.row-actions button{border:0;background:none;color:#a0aabd;border-radius:5px;padding:5px;display:flex}.row-actions button:hover{background:#f0edf8;color:#7b5bbc}.row-actions svg{width:14px;height:14px}.empty{text-align:center;padding:50px 20px;color:#a4aec0;font-size:12px;line-height:1.8}.empty strong{display:block;color:#6d7890;font-size:14px;margin-bottom:5px}.account-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.credit-card{border:0;border-radius:13px;text-align:left;color:#fff;padding:23px;min-height:177px;position:relative;overflow:hidden;box-shadow:0 5px 12px #2429420b;display:flex;flex-direction:column}.credit-card:after{content:'';position:absolute;width:140px;height:140px;border:25px solid #ffffff08;border-radius:50%;right:-35px;bottom:-70px;pointer-events:none}.credit-card:hover{transform:translateY(-4px);box-shadow:0 8px 22px #24294225}.credit-top{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:650}.credit-top svg{opacity:.7}.credit-card small{font-size:9px;color:#ffffff91;margin-top:auto;padding-top:23px}.credit-card strong{font-size:23px;letter-spacing:-.5px;margin-top:6px}.credit-foot{font-size:9px;color:#ffffff95;display:flex;justify-content:space-between;margin-top:17px}.section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px;margin-top:4px}.section-title h2{font-size:15px}.section-title p{color:#98a2b4;font-size:11px;margin-top:7px}.bank-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.bank-panel{padding:21px;display:flex;gap:14px;align-items:center}.bank-stats{margin-left:auto;display:flex;gap:23px;font-size:11px}.bank-stats small{display:block;color:#9ea9ba;font-size:9px;margin-bottom:6px}.note{color:#9da7b8;font-size:10px;line-height:1.6;margin:16px 0}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px}.category-card{padding:21px;position:relative}.category-card h3{font-size:12px;color:#67738a;display:flex;align-items:center;gap:9px}.color-dot{width:9px;height:9px;border-radius:3px;display:inline-block}.category-card .cat-total{display:block;font-size:21px;margin:20px 0 8px;font-weight:700}.category-card small{color:#a1aabd;font-size:10px}.category-card .edit-cat{position:absolute;right:13px;top:13px}.progress{height:5px;background:#f2f3f7;border-radius:4px;margin-top:17px;overflow:hidden}.progress span{display:block;height:100%;border-radius:4px}.category-actions{display:flex;align-items:center;justify-content:space-between;margin-top:14px}.two-columns{display:grid;grid-template-columns:1.2fr 1fr;gap:18px}.learning-hero{background:linear-gradient(110deg,#ece6fb,#f5f1fd 70%);border:1px solid #e4dcf3;border-radius:12px;padding:26px;display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:20px}.learning-hero h2{font-size:19px;letter-spacing:-.5px;color:#5d4787}.learning-hero p{font-size:12px;color:#9483ac;line-height:1.8;margin-top:9px;max-width:580px}.learn-example{display:flex;align-items:center;gap:12px;font-size:12px;color:#9277b4;white-space:nowrap}.learn-example b{background:#fff8;padding:13px 16px;border-radius:9px;color:#7a5caa;font-size:12px}.rule-row{display:flex;align-items:center;gap:12px;padding:17px 0;border-bottom:1px solid #f0f2f6}.rule-row:last-child{border-bottom:0}.rule-pattern{font-weight:650;font-size:12px;color:#68738a}.rule-pattern small{display:block;font-size:9px;font-weight:400;color:#a7b0c0;margin-top:5px}.rule-arrow{margin-left:auto;color:#bdc4d1}.inbox-card{display:flex;align-items:center;gap:13px;padding:18px 0;border-bottom:1px solid #eef1f5}.inbox-main{flex:1;min-width:0}.inbox-main strong{font-size:12px;display:block;color:#66728b;overflow:hidden;text-overflow:ellipsis}.inbox-main small{display:block;color:#a3adbd;font-size:10px;margin-top:6px}.inbox-card .amount{font-size:12px;white-space:nowrap}.small-button{padding:8px 11px;font-size:10px}.recurrence-row{padding:18px 0;border-bottom:1px solid #edf0f5;display:flex;align-items:center;gap:13px}.recurrence-row:last-child{border:0}.recurrence-day{background:#f3effa;color:#9073bd;width:38px;height:41px;border-radius:8px;display:grid;place-content:center;text-align:center;font-size:14px;font-weight:650}.recurrence-day small{font-size:7px;font-weight:400;margin-bottom:3px}.recurrence-row .account-title{flex:1}.upload-placeholder{background:#faf9fd;border:1px dashed #d5cbe7;border-radius:10px;text-align:center;padding:48px 20px;color:#a08fb8}.upload-placeholder svg{height:35px;width:35px;margin-bottom:16px}.upload-placeholder h3{font-size:15px;color:#7d699b;margin-bottom:10px}.upload-placeholder p{font-size:12px;line-height:1.8}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:22px}.step b{font-size:11px;color:#8490a5}.step p{font-size:10px;color:#a8b0bf;line-height:1.7;margin-top:7px}.notice{background:#fff8ef;border:1px solid #f0e5d7;border-radius:9px;padding:14px 17px;font-size:11px;line-height:1.8;color:#ac9069;margin-bottom:18px}dialog{width:min(560px,calc(100vw - 30px));max-height:90vh;border:0;border-radius:14px;padding:0;box-shadow:0 20px 90px #101b4560;color:var(--ink)}dialog::backdrop{background:#17203977;backdrop-filter:blur(3px)}.modal-content{padding:27px}.modal-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:23px}.modal-head h2{font-size:21px;letter-spacing:-.5px;margin-top:7px}.modal-head p{color:#9ba4b6;font-size:11px;line-height:1.7;margin-top:7px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px 16px}.field{display:flex;flex-direction:column;gap:7px;font-size:11px;color:#7d879b;font-weight:600}.field.full{grid-column:1/-1}.field input,.field select{width:100%;padding:11px 12px;border:1px solid #e1e6ee;border-radius:7px;font-size:12px;color:#59667d;background:#fff;font-weight:400}.field input[type=color]{padding:3px;height:39px}.field small{font-weight:400;font-size:10px;color:#9da6b7;line-height:1.6}.field input[type=checkbox]{width:15px;height:15px;accent-color:var(--purple)}.check-field{display:flex;align-items:start;gap:9px;color:#8791a6;font-size:11px;line-height:1.6;grid-column:1/-1}.check-field input{accent-color:var(--purple);margin:3px 0 0}.helper{background:#f5f2fc;border-radius:7px;padding:11px 13px;color:#9580b6;font-size:10px;line-height:1.7;grid-column:1/-1}.helper.success{background:#edf7f1;color:#6b9e7c}.form-error{color:#b86157;background:#fff2ef;font-size:11px;line-height:1.7;padding:10px;border-radius:6px;margin-top:15px}.form-error:empty{display:none}.modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:24px}.modal-copy{font-size:12px;line-height:1.9;color:#9099ab}.modal-copy b{color:#65718a}.modal-copy p+p{margin-top:12px}footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:25px 0;margin-top:25px;border-top:1px solid #e8ecf3;color:#a4adbd;font-size:9px}footer b{font-size:11px;color:#a2abc0;letter-spacing:-.5px}footer button{border:0;background:none;color:#a4adbd;font-size:9px;padding:0}.footer-dot{padding:0 8px;color:#c1b2de}.save-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#92bea8;margin-left:6px}#toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%);background:#26344b;color:white;padding:14px 20px;border-radius:9px;box-shadow:0 6px 25px #14263830;font-size:12px;z-index:99;max-width:90vw}#toast button{border:0;background:none;color:#d5c3ff;font-size:12px;margin-left:14px;font-weight:700}#storage-alert{margin-bottom:18px;background:#fff2ec;color:#af6655;font-size:12px;line-height:1.7;padding:16px;border-radius:8px}.budget-label{display:flex;justify-content:space-between;gap:8px;margin-top:10px;color:#a7afbe;font-size:9px}
@media(min-width:1450px){.content{padding-top:37px}.panel{padding:25px}.bars-plot,.line-svg{height:230px}.donut-layout{min-height:250px}}@media(max-width:1200px){.sidebar{width:210px}.content{padding:28px 25px 0}header{padding:0 25px}.kpi{padding:16px}.kpi strong{font-size:22px}.dashboard-grid,.dashboard-bottom{grid-template-columns:1.5fr 1fr}.donut-layout{flex-direction:column;gap:10px}.cat-legend{width:100%;grid-template-columns:1fr 1fr;gap:0 16px}.donut-container{width:145px;height:145px}.donut-label{inset:32px 12px}.donut-label strong{font-size:16px}.account-grid{grid-template-columns:repeat(2,1fr)}.learning-hero{align-items:start}.learn-example{flex-direction:column;gap:7px}.learn-example span{transform:rotate(90deg)}}@media(max-width:980px){.sidebar{width:188px;padding:26px 13px 16px}.brand{font-size:20px;padding-left:4px;padding-right:4px}.brand small{font-size:6px}.side-tip{padding:13px}nav button{font-size:11px;padding:12px;gap:10px}.dashboard-grid,.dashboard-bottom,.two-columns{grid-template-columns:1fr}.donut-layout{flex-direction:row}.cat-legend{display:grid;grid-template-columns:1fr;max-width:220px}.kpi-grid{grid-template-columns:repeat(2,1fr)}.category-grid{grid-template-columns:repeat(2,1fr)}h1{font-size:24px}.heading{align-items:start}.bank-grid{grid-template-columns:1fr}}@media(max-width:650px){.app{display:block}.sidebar{width:auto;position:static;height:auto;padding:15px 15px 11px}.brand{padding:0 2px 16px;font-size:22px}.brand small{font-size:6px}.brand-mark{width:30px;height:30px;font-size:23px}.side-label,.side-tip,.profile{display:none}nav{display:flex;overflow-x:auto;gap:4px;scrollbar-width:none}nav button{white-space:nowrap;padding:9px 10px;gap:6px;font-size:10px}nav svg.icon{width:15px;height:15px}nav button .nav-count{font-size:8px;padding:1px 4px}.content{padding:24px 15px 0}header{padding:0 16px;height:49px}.breadcrumb{font-size:9px}.demo-badge{font-size:8px;padding:6px}.header-actions{gap:8px}.heading{gap:10px}.heading .primary{font-size:10px;padding:10px 12px}h1{font-size:23px;max-width:240px}.eyebrow{font-size:8px;letter-spacing:1.1px}.heading p{font-size:11px}.filter-panel{gap:7px;padding:9px}.filter-control{padding-right:5px;gap:3px}.filter-control select{font-size:10px;max-width:145px}.filter-control label{font-size:9px}.filter-icon{display:none}.clear-filters{font-size:10px}.kpi-grid{gap:10px}.kpi{padding:14px}.kpi-head{font-size:10px}.kpi strong{font-size:20px}.kpi small{font-size:9px}.kpi-icon{width:26px;height:26px}.kpi-icon svg{width:15px;height:15px}.panel{padding:18px}.panel-head{margin-bottom:20px}.panel-head h2{font-size:12px}.panel-head p{font-size:9px}.panel-toolbar{gap:8px}.legend{font-size:8px;gap:7px}.bar{width:12px}.bars-plot{height:180px}.donut-layout{gap:17px}.donut-container{width:135px;height:135px}.donut-label strong{font-size:15px}.legend-row{font-size:9px}.pending-banner{padding:12px;gap:9px}.pending-banner svg{display:none}.pending-banner button{font-size:9px;max-width:100px}.pending-banner p{font-size:9px}.account-grid{gap:11px}.credit-card{padding:18px;min-height:162px}.credit-card strong{font-size:20px}.credit-top{font-size:11px}.bank-stats{gap:15px}.learning-hero{display:block;padding:22px}.learning-hero h2{font-size:17px}.learning-hero p{font-size:11px}.learn-example{flex-direction:row;margin-top:19px}.learn-example span{transform:none}.learn-example b{font-size:11px;padding:10px}.category-grid{gap:11px}.category-card{padding:17px}.category-card .cat-total{font-size:18px}.category-card h3{font-size:11px;max-width:85%;line-height:1.5}.category-card .edit-cat{right:7px;top:10px}.modal-content{padding:23px}.form-grid{gap:14px 10px}.field{font-size:10px}.field input,.field select{font-size:11px;padding:10px}.steps{grid-template-columns:1fr}.inbox-card{gap:9px;flex-wrap:wrap}.inbox-main{min-width:150px}.inbox-card button{margin-left:auto}.range-inputs{flex-wrap:wrap}footer>span{font-size:8px}footer button{font-size:8px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}
[hidden]{display:none!important}
.bar-group{min-width:0;padding-left:3px;padding-right:3px}.panel-toolbar{min-width:0}
.scope-pill{background:#f2f3f8;color:#7e89a2;font-size:10px;border-radius:6px;padding:8px 10px}.scope-pill.spirit,.payer-tag.spirit{background:#e6f5f0;color:#337d68}.payer-tag{border:1px solid #e6e9f1;border-radius:5px;padding:5px 8px;font-size:10px;background:#f7f7fb;color:#8a80a5}.payer-tag:hover{filter:brightness(.95)}.responsibility-summary{display:flex;align-items:center;gap:23px;padding:17px 21px;border:1px solid #e6e2f0;border-radius:10px;margin-bottom:17px;background:#fbfaff}.responsibility-summary>div{flex:1}.responsibility-summary b{font-size:12px;color:#73628f}.responsibility-summary p{color:#9e94b0;font-size:10px;line-height:1.6;margin-top:6px}.scope-amount{border:0;background:none;text-align:right;padding:0;color:#8a7ca3}.scope-amount small{display:block;font-size:9px;margin-bottom:6px}.scope-amount strong{font-size:16px;color:#78648f}.scope-amount.spirit strong{color:#41876e}.credit-split{display:flex;gap:20px;padding-top:16px;border-top:1px solid #ffffff26;margin-top:16px;font-size:10px;color:#ffffffb0}.credit-split b{display:block;margin-top:5px;color:white;font-size:12px}.spirit-hero{display:flex;align-items:center;gap:20px;padding:27px;border-radius:13px;background:linear-gradient(120deg,#173e37,#285646);color:#fff;margin-bottom:22px}.spirit-emblem{width:56px;height:56px;border-radius:15px;display:grid;place-items:center;background:#ffffff14;border:1px solid #ffffff24;color:#b5efd9;font-size:26px;font-weight:700}.spirit-hero .eyebrow{color:#98baa9}.spirit-hero h2{font-size:23px;letter-spacing:-.6px}.spirit-hero p{color:#9ec1b2;font-size:11px;line-height:1.7;margin-top:8px;max-width:460px}.spirit-total{margin-left:auto;text-align:right;white-space:nowrap}.spirit-total small{font-size:10px;color:#a2c4b5}.spirit-total strong{display:block;font-size:29px;margin:9px 0 6px}.spirit-total span{color:#9ec1b2;font-size:10px}.spirit-transactions{margin-top:19px}@media(max-width:800px){.responsibility-summary{flex-wrap:wrap;gap:15px}.responsibility-summary>div{flex-basis:100%}.scope-amount{text-align:left}.spirit-hero{flex-wrap:wrap}.spirit-total{margin-left:0;text-align:left}.spirit-hero>div:nth-child(2){flex:1;min-width:190px}}@media(max-height:800px) and (min-width:651px){.sidebar{overflow-y:auto}.brand{padding-bottom:23px}.side-tip{margin-top:25px;padding:14px}.side-tip p{display:none}}
.pdf-upload{display:grid;grid-template-columns:1.3fr 1fr auto;gap:20px;align-items:center;padding:8px 24px 0}.pdf-upload input[type=file]{height:auto;padding:11px;font-size:12px}.pdf-upload .primary{white-space:nowrap}.pdf-privacy{font-size:12px;line-height:1.7;color:var(--muted);padding:8px 24px 18px;margin:0}.pdf-error{padding:0 24px 16px}.pdf-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:0 24px 20px}.pdf-stats>div{border:1px solid var(--line);padding:18px;border-radius:14px;display:flex;flex-direction:column;gap:8px}.pdf-stats small,.pdf-stats span{font-size:11px;color:var(--muted)}.pdf-stats strong{font-size:23px;letter-spacing:-.7px}.pdf-stats .balanced{background:#edf8f2}.pdf-stats .unbalanced{background:#fff3df;border-color:#f2c887}.pdf-review .notice{margin:0 24px 18px}.pdf-warnings{margin:0 24px 14px;padding:16px 20px 16px 34px;background:#fff8ed;border-radius:12px;font-size:12px;line-height:1.8;color:#82622d}.pdf-review-foot{padding:22px 24px;font-size:12px;color:var(--muted);border-top:1px solid var(--line)}.pdf-nonpurchase{background:#edf0f5;color:#677183}.pdf-review{margin-top:24px}.pdf-review table td{font-size:12px}
@media(max-width:1000px){.pdf-upload{grid-template-columns:1fr 1fr}.pdf-upload .primary{grid-column:1/-1;justify-content:center}.pdf-stats{grid-template-columns:1fr 1fr}}
@media(max-width:580px){.pdf-upload{grid-template-columns:1fr;padding:0 16px}.pdf-stats{margin:0 16px 16px;gap:8px}.pdf-stats>div{padding:13px}.pdf-stats strong{font-size:18px}.pdf-privacy{padding:12px 16px}.pdf-warnings{margin:0 16px 14px}}
.statement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.statement-card .panel-head{padding-bottom:8px}.statement-total{padding:10px 24px 20px;display:flex;flex-direction:column;gap:7px}.statement-total small,.statement-total span{color:var(--muted);font-size:12px}.statement-total strong{font-size:32px;letter-spacing:-1px}.statement-split{display:flex;gap:35px;margin:0 24px;padding:16px 0;border-top:1px solid var(--line)}.statement-split span{font-size:12px;color:var(--muted);display:flex;flex-direction:column;gap:6px}.statement-split b{font-size:18px;color:var(--text)}.reconcile-ok,.reconcile-warning{font-size:12px;line-height:1.6;padding:10px 14px;margin:6px 24px 12px;border-radius:9px}.reconcile-ok{background:#edf8f2;color:#28634c}.reconcile-warning{background:#fff4df;color:#8a6026}.statement-actions{display:flex;align-items:center;gap:18px;padding:12px 24px 24px}.statement-actions .primary{font-size:12px}.pdf-review-foot{display:flex;align-items:center;gap:18px}
@media(max-width:850px){.statement-grid{grid-template-columns:1fr}.statement-actions{flex-wrap:wrap}}
.refund-badge{display:inline-block;margin-left:8px;padding:3px 7px;border-radius:6px;background:#e2f4ed;color:#287356;font-size:10px;font-weight:600;vertical-align:middle}
.login-page{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(ellipse at 15% 10%,#dce7ff,transparent 55%),#f4f6fb}
[hidden]{display:none!important}
.login-card{width:min(100%,460px);margin:0;padding:42px;background:#fff;border:1px solid #e5e9f2;border-radius:24px;box-shadow:0 24px 80px #17234212}
.login-card .brand{color:#171d32;margin-bottom:40px}.login-card .brand small{color:#778097}
.login-card h1{font-size:30px;letter-spacing:-1px;margin:12px 0}.login-card p{color:#69748b;line-height:1.6}
.login-card form{display:grid;gap:20px;margin-top:28px}.login-card .primary{justify-content:space-between;padding:14px 18px}
.login-card .login-note{font-size:12px;margin:28px 0 0}.login-card .form-error{color:#b42342;margin:0}
@media(max-width:520px){.login-page{padding:16px}.login-card{padding:28px}}
