:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;color:#303a40;background:#f4f4f5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--bg: #f4f4f5;--card: #fff;--text: #303a40;--muted: #8a939b;--border: #e7eaed;--soft: #f7f9f8;--green: #32886a;--green-soft: #eef6f1;--shadow: 0 15px 60px #1f29371f;color-scheme:light}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}button,input,select,textarea{-webkit-tap-highlight-color:transparent}button{color:inherit}input,select,textarea{color:var(--text)}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #68a78c;outline-offset:3px}button{transition:background .15s,border-color .15s,box-shadow .15s}button svg{flex-shrink:0}a{color:inherit}p{line-height:1.7}h1,h2,h3,p{margin-top:0}.app-shell{min-height:100vh;position:relative}.ambient{pointer-events:none;background:radial-gradient(at 60% 0,#e8eef6a6,transparent 68%);height:390px;position:absolute;inset:0 0 auto}.dashboard{max-width:1730px;margin:auto;padding:29px 42px 20px;position:relative}.topbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px;display:flex}.brand,.header-actions,.toolbar-actions{align-items:center;gap:14px;display:flex}.brand{flex-shrink:0}.brand h1{letter-spacing:-1px;color:var(--text);margin:0;font-size:1.6rem;font-weight:760;white-space:nowrap}.brand h1 small{font-size:11px;letter-spacing:1px;margin-left:6px;font-weight:650;color:var(--green);background:var(--green-soft);padding:4px 5px;border-radius:4px;vertical-align:middle}.brand-dot{color:#54aa88}.brand-divider{background:var(--border);width:1px;height:19px;margin:0 2px}.brand-caption{color:#7b858c;font-size:14px;white-space:nowrap}.header-actions{gap:10px}.header-toolbox{display:flex;align-items:center;gap:2px}.button{border:1px solid transparent;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:9px 14px;font-size:13px;font-weight:550;display:inline-flex;text-decoration:none;white-space:nowrap}.button.light{color:#68727a;background:var(--card);border-color:var(--border)}.button.light:hover{background:var(--green-soft)}.button.primary{background:#2d8768;color:#fff;border-color:#2d8768;box-shadow:0 2px 3px #2d876810}.button.primary:hover{background:#267559}.button.utility{color:#78838b;background:transparent;padding:8px 10px;min-height:36px}.button.utility:hover,.button.utility.is-active{background:var(--card);color:var(--green)}.button.utility b{font-size:11px;min-width:18px;padding:2px 5px;background:#f7ebd1;color:#ae8427;border-radius:5px}.button.danger{background:#b65252;color:#fff}.button.danger-ghost{background:transparent;color:#be6d65;padding-left:0}.icon-button{color:#99a1a9;background:transparent;border:0;border-radius:7px;padding:5px;display:inline-flex;align-items:center;justify-content:center}.icon-button:hover{color:var(--green);background:var(--green-soft)}.theme-button{width:35px;height:35px;border:1px solid var(--border);background:var(--card)}.auth-banner{display:flex;align-items:center;gap:9px;padding:12px 15px;font-size:12px;background:var(--card);border:1px solid var(--border);border-radius:10px;margin-bottom:18px;color:#7b868d}.auth-banner button{margin-left:auto;display:flex;align-items:center;gap:4px;color:var(--green);border:0;background:transparent}.overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.summary-card{text-align:left;background:var(--card);border:1px solid var(--border);border-radius:16px;min-width:0;padding:18px 21px 17px;box-shadow:0 2px 4px #33445502;position:relative}.summary-card:hover{border-color:#c6d7ce}.summary-label{color:#788088;justify-content:space-between;align-items:center;gap:10px;font-size:13px;display:flex}.summary-label svg{color:#959ca2;stroke-width:1.6}.summary-number{letter-spacing:-.8px;font-variant-numeric:tabular-nums;margin:14px 0 13px;font-size:30px;font-weight:680;line-height:1.15;color:var(--text)}.summary-number>span{letter-spacing:0;color:#90969b;margin-left:7px;font-size:13px;font-weight:400}.summary-bottom{color:#90969b;min-height:21px;font-size:11px;display:flex;justify-content:space-between;align-items:center;gap:5px;flex-wrap:wrap}.summary-bottom>span{display:inline-flex;align-items:center;gap:2px}.overview-bars{gap:3px;padding-top:6px;display:flex;height:12px}.overview-bars i{background:#72b397;border-radius:1px;flex:1;height:5px}.overview-bars i.dim{background:#e4eae6}.green{color:#2c9977!important}.amber{color:#bf922f!important}.red{color:#c56359!important}.muted{color:var(--muted)}.tag{white-space:nowrap;border-radius:5px;align-items:center;padding:3px 6px;font-size:10px;line-height:1.4;display:inline-flex}.amber-tag{color:#ad8736;background:#faf4e3}.category-tag{color:#6d9b85;background:#f2f6f4}.cycle-tag{color:#8390a4;background:#f3f4f7}.void-tag{color:#94999c;background:var(--soft)}.section-toolbar{justify-content:space-between;align-items:center;gap:15px;margin:25px 0 15px;display:flex}.section-caption{align-items:center;gap:10px;font-size:13px;font-weight:550;display:flex;white-space:nowrap}.section-caption .muted{font-size:11px;font-weight:400}.live-dot{display:inline-block;background:#68ac91;border-radius:50%;width:6px;height:6px;flex-shrink:0}.neutral-dot{display:inline-block;background:#b9c0c4;border-radius:50%;width:5px;height:5px}.search{color:#9ba1a8;background:var(--card);border:1px solid var(--border);border-radius:8px;align-items:center;gap:8px;max-width:230px;padding:9px 12px;display:flex;height:38px}.search input{background:transparent;border:0;outline:0;width:100%;min-width:0;font-size:12px}.sort-wrap{display:flex;align-items:center;gap:6px;padding:0 10px;height:38px;border:1px solid var(--border);border-radius:8px;background:var(--card);color:#8c959d}.sort-wrap select{border:0;background:transparent;font-size:12px;max-width:135px;outline:0}.view-toggle{display:flex;gap:3px;border:1px solid var(--border);border-radius:8px;padding:3px;background:var(--card)}.view-toggle button{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:0;border-radius:5px;background:transparent;color:#9ca3a9}.view-toggle button.active{background:var(--green-soft);color:var(--green)}.category-list{display:flex;border:1px solid var(--border);overflow-x:auto;background:var(--card);border-radius:14px;justify-content:flex-start;gap:8px;width:100%;padding:10px 12px;scrollbar-width:thin}.category-list button{border:0;border-radius:7px;background:transparent;white-space:nowrap;line-height:1.5;color:#7a838b;height:34px;display:flex;align-items:center;flex:none;gap:7px;padding:6px 12px;font-size:12px}.category-list button.active{color:#278b6b;background:var(--green-soft)}.category-list button svg{stroke-width:1.65}.category-list button>span{color:#959da3;margin-left:4px;font-size:11px}.subscription-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:19px;margin-top:16px;display:grid;min-height:300px}.subscription-card{background:var(--card);border:1px solid var(--border);border-radius:16px;min-width:0;padding:20px 20px 0;transition:box-shadow .2s,transform .2s,border-color .2s;position:relative;overflow:hidden;cursor:pointer}.subscription-card:hover{transform:translateY(-2px);border-color:#c9d9d0;box-shadow:0 8px 25px #33445508}.card-heading{align-items:center;gap:11px;display:flex}.service-logo{border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:25px;font-weight:740;display:flex;line-height:1}.service-name{flex:1;min-width:0}.service-name h2{white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.2px;margin:0;font-size:15px;font-weight:650;line-height:1.45;overflow:hidden}.service-name p{color:#969da5;margin:2px 0 0;font-size:11px}.card-tags{align-items:center;gap:6px;margin:15px 0 0;display:flex}.card-status{white-space:nowrap;margin-left:auto;font-size:11px}.card-status.healthy{color:#659b83}.card-status.soon{color:#bd9949}.card-status.expired{color:#c27b70}.remaining-block{margin:24px 0 20px;position:relative}.small-label{color:#879198;align-items:center;gap:6px;font-size:11px;display:flex}.remaining-value{font-size:37px;letter-spacing:-1px;font-weight:640;line-height:1.3;margin:5px 0 12px;font-variant-numeric:tabular-nums}.remaining-value span{font-size:12px;margin-left:7px;font-weight:400;color:#90999f;letter-spacing:0}.progress-track{height:5px;background:var(--soft);border-radius:8px;overflow:hidden}.progress-track i{display:block;height:100%;border-radius:8px}.progress-label{display:flex;justify-content:space-between;color:#a0a7ad;font-size:10px;margin-top:7px}.card-info{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-bottom:18px}.card-info>div{display:flex;flex-direction:column;gap:8px}.card-info>div:last-child{text-align:right}.card-info span{font-size:11px;color:#929ba2}.card-info strong{font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.card-info small{font-size:10px;color:#a0a7ad;font-weight:400}.card-footer{border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:12px 0;color:#969ea4;font-size:10px}.card-footer>span{display:flex;align-items:center;gap:6px}.card-footer button{display:flex;align-items:center;gap:3px;background:transparent;border:0;padding:0;color:#789888;font-size:10px}.empty-state{grid-column:1/-1;min-height:350px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px dashed #dce1e4;border-radius:15px;background:var(--card);padding:40px;text-align:center}.empty-icon{width:69px;height:69px;border:1px solid var(--border);background:var(--soft);border-radius:20px;display:flex;align-items:center;justify-content:center;color:#a0b8ac;margin-bottom:20px}.empty-state h3{font-size:17px;margin-bottom:10px;font-weight:550}.empty-state p{color:#969ea6;font-size:12px;margin-bottom:24px}.site-footer{display:flex;align-items:center;justify-content:space-between;margin:30px 2px 0;padding-top:15px;border-top:1px solid var(--border);font-size:10px;color:#a0a7ad}.site-footer span{display:flex;align-items:center;gap:5px}.site-footer i{display:inline-block;width:3px;height:3px;border-radius:50%;background:#aeb5b9;margin:0 4px}.compact-view{grid-template-columns:1fr;gap:9px;min-height:0}.compact-view .subscription-card{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;align-items:center;gap:20px;padding:15px 20px}.compact-view .card-tags,.compact-view .remaining-block{margin:0}.compact-view .remaining-block .small-label,.compact-view .progress-label{display:none}.compact-view .remaining-value{font-size:20px;margin:0 0 8px}.compact-view .card-info{padding:0}.compact-view .card-footer{display:none}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#14211c5c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:20;animation:fade .15s}.modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:calc(100vw - 36px);max-width:450px;max-height:88vh;overflow-y:auto;background:var(--card);color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:18px;padding:25px;z-index:21;animation:fade .15s;scrollbar-width:thin}.modal.wide{max-width:700px}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:17px}.modal-head h2{margin:0;font-size:19px;font-weight:640;letter-spacing:-.3px}.modal-intro{font-size:12px;color:#8c969d;margin:0 0 22px;line-height:1.9}.field{display:flex;flex-direction:column;gap:8px;font-size:12px;margin-bottom:17px;min-width:0}.field>span{color:#77828a}.field input,.field select,.field textarea,.ledger-filters input,.ledger-filters select,.panel-title input{width:100%;background:var(--card);border:1px solid var(--border);border-radius:8px;padding:10px 11px;font-size:13px;min-height:40px;min-width:0}.field input[type=color]{padding:5px;height:40px}.field small{color:var(--muted);font-size:10px;line-height:1.7}.field textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.full{grid-column:1/-1}.full-button{width:100%;margin-top:8px}.modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:9px;border-top:1px solid var(--border);padding-top:20px;margin-top:8px}.left-actions{margin-right:auto}.templates{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0 23px}.templates button{border:1px solid var(--border);background:var(--card);font-size:10px;padding:7px 9px;border-radius:7px}.templates button:hover{background:var(--soft)}.input-action{display:flex;align-items:stretch;gap:6px;min-width:0}.input-action input{min-width:0;flex:1;width:0}.input-action button{background:var(--soft);border:1px solid var(--border);border-radius:7px;font-size:11px;padding:0 10px;color:var(--green);white-space:nowrap}.toggle-field{display:flex;align-items:center;justify-content:space-between;padding:15px 0 20px;gap:20px}.toggle-field strong{font-size:12px;font-weight:550}.toggle-field p{font-size:11px;color:var(--muted);margin:6px 0 0}.switch{width:36px;height:21px;background:#d4dbd7;border:0;border-radius:20px;padding:3px;flex-shrink:0}.switch i{display:block;width:15px;height:15px;border-radius:50%;background:#fff;transition:transform .2s}.switch.on{background:#459273}.switch.on i{transform:translate(15px)}.edit-tools{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px;padding-top:20px;border-top:1px solid var(--border)}.edit-tools .button{flex:1;font-size:11px}.inline-error{font-size:12px;color:#b95f5c;background:#c5635910;padding:10px;border-radius:7px}.reminder-row{display:flex;align-items:center;gap:12px;border:0;border-bottom:1px solid var(--border);padding:14px 0;width:100%;background:transparent;text-align:left}.reminder-row>div:nth-child(2){flex:1}.reminder-row strong{font-size:13px}.reminder-row p{font-size:11px;color:var(--muted);margin:4px 0 0}.reminder-row>span{font-size:11px}.placeholder{padding:28px 8px;text-align:center;color:var(--muted);font-size:12px}.record{display:flex;align-items:center;gap:15px;justify-content:space-between;border-bottom:1px solid var(--border);padding:16px 0;font-size:12px}.record strong{font-weight:550}.record p{font-size:11px;color:var(--muted);margin:6px 0 0}.record.total{border:0;font-size:16px;padding-bottom:0}.analytics-heading{display:flex;justify-content:space-between;align-items:center;margin:32px 0 25px}.eyebrow{font-size:11px;color:var(--green);margin-bottom:10px}.analytics-heading h2{font-size:26px;font-weight:650;letter-spacing:-.5px;margin-bottom:10px}.analytics-heading p:last-child{font-size:12px;color:var(--muted);margin-bottom:0}.analysis-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:18px;margin-top:20px}.panel{border:1px solid var(--border);background:var(--card);border-radius:16px;padding:22px;margin-bottom:20px;min-width:0}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-title h3{font-size:14px;margin:0;font-weight:600}.panel-title input{width:135px;font-size:11px;min-height:32px;padding:5px 8px}.panel>p.muted{font-size:11px;margin-top:12px}.chart{height:270px;margin-top:25px}.donut{width:100%;height:220px}.chart-empty{height:310px;display:flex;align-items:center;justify-content:center;flex-direction:column;color:var(--muted);font-size:12px;gap:10px}.legend>div{display:flex;align-items:center;gap:8px;font-size:11px;margin:10px 0}.legend i{width:7px;height:7px;border-radius:3px}.legend strong{margin-left:auto;font-weight:500}.ledger-filters{display:flex;gap:8px}.ledger-filters input,.ledger-filters select{width:33%;font-size:11px}.ledger-summary{background:var(--soft);border:1px solid var(--border);padding:14px 15px;border-radius:9px;display:flex;align-items:center;justify-content:space-between;margin:17px 0;font-size:11px;color:var(--muted)}.ledger-summary strong{font-size:18px;font-weight:600;color:var(--text)}.ledger-list{max-height:56vh;overflow-y:auto}.ledger-row{padding:16px 0;border-bottom:1px solid var(--border)}.record-top{display:flex;gap:10px;align-items:center;font-size:12px}.record-top strong{font-weight:550}.push{margin-left:auto}.ledger-row>p{color:var(--muted);font-size:11px;margin:8px 0 0}.record-actions{display:flex;align-items:center;gap:15px;margin-top:12px}.text-button{color:var(--green);border:0;background:transparent;font-size:11px;padding:0}.backfill-list{margin-top:20px;max-height:44vh;overflow-y:auto}.backfill-row{border:1px solid var(--border);padding:15px;border-radius:10px;margin-bottom:12px}.backfill-row>.record-top{margin-bottom:15px;font-size:11px}.backfill-row .field{margin-bottom:7px}.backfill-row>p{font-size:11px;margin-bottom:0}.backup-buttons{display:flex;gap:12px}.file-button{cursor:pointer}.file-button input{display:none}.backup-preview{margin-top:24px;background:var(--soft);border:1px solid var(--border);border-radius:12px;padding:22px}.backup-preview>svg{color:var(--green)}.backup-preview h3{font-size:15px;margin:10px 0}.backup-preview p{font-size:12px;color:var(--muted)}.restore-modes{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.restore-modes label{padding:13px;background:var(--card);border:1px solid var(--border);border-radius:9px;font-size:12px}.restore-modes input{accent-color:var(--green);margin-right:7px}.restore-modes small{font-size:10px;display:block;color:var(--muted);line-height:1.8;margin:9px 0 0}.confirm-check{display:flex;align-items:center;gap:7px;font-size:11px;margin:15px 0 20px}.toast,.undo-toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%);z-index:50;display:flex;align-items:center;gap:10px;padding:14px 20px;background:var(--card);border:1px solid var(--border);box-shadow:0 8px 30px #14211c26;border-radius:12px;font-size:12px;max-width:calc(100vw - 30px);animation:fade .2s}.toast svg{color:var(--green)}.undo-toast{bottom:85px;white-space:nowrap}.undo-toast button{border:0;background:var(--green-soft);color:var(--green);padding:7px;border-radius:6px;font-size:11px;display:flex;align-items:center;gap:4px}.spin{animation:rotate 1s linear infinite}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes rotate{to{transform:rotate(360deg)}}[data-theme=dark]{color-scheme:dark;--bg: #212830;--card: #2a323c;--text: #dce3e7;--muted: #8995a0;--border: #37424b;--soft: #242d36;--green: #76b69a;--green-soft: #2b413a;background:var(--bg);color:var(--text)}[data-theme=dark] .ambient{background:radial-gradient(at 60% 0,#33465366,transparent 68%)}[data-theme=dark] .category-tag{background:#2c413a;color:#8bbba2}[data-theme=dark] .cycle-tag{background:#333b49;color:#9aaac2}[data-theme=dark] .amber-tag{background:#4a402a;color:#d2b36d}[data-theme=dark] .button.primary{color:#f1f7f4;background:#397f65}[data-theme=dark] .empty-state{border-color:var(--border)}[data-theme=dark] .overview-bars i.dim{background:#3d4746}@media(min-width:1600px){.subscription-card{padding-top:23px}.remaining-block{margin-top:28px}}@media(max-width:1250px){.dashboard{padding:25px 28px}.header-toolbox .button span{display:none}.header-toolbox .button{padding:8px}.brand h1{font-size:23px}.subscription-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.compact-view{grid-template-columns:1fr}.brand-caption{font-size:12px}.header-actions{gap:8px}}@media(max-width:900px){.subscription-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.overview{gap:12px}.summary-card{padding:16px}.summary-number{font-size:25px}.summary-bottom{font-size:10px}.brand-caption,.brand-divider{display:none}.analysis-grid,.compact-view{grid-template-columns:1fr}.compact-view .subscription-card{grid-template-columns:1fr 1fr 1fr;gap:12px}.compact-view .card-tags{display:none}.toolbar-actions{gap:8px}}@media(max-width:600px){.dashboard{padding:20px 16px}.topbar{flex-wrap:wrap;gap:15px;margin-bottom:19px}.brand h1{font-size:23px}.header-actions{flex:1;justify-content:flex-end;gap:7px}.header-toolbox{order:3;width:100%;justify-content:space-between}.topbar:has(.header-toolbox) .header-actions{flex-wrap:wrap}.header-toolbox .button{padding:7px 9px;gap:5px}.header-toolbox .button span{display:inline;font-size:10px}.header-toolbox .button svg{width:14px}.topbar:has(.header-toolbox) .brand{position:absolute;top:23px;left:16px}.topbar:has(.header-toolbox) .header-actions{width:100%;padding-top:0}.header-actions>.primary{font-size:11px;min-height:35px;padding:8px 10px}.theme-button{width:32px;height:32px}.overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.summary-card{padding:15px 15px 13px;border-radius:12px}.summary-label{font-size:11px}.summary-number{font-size:25px;margin:13px 0 10px}.summary-bottom{font-size:9px;min-height:17px}.summary-bottom>span:last-child:not(:first-child){display:none}.overview-bars{position:absolute;bottom:9px;left:15px;right:15px;height:6px;padding:0}.overview-bars i{height:3px}.section-toolbar{align-items:flex-start;flex-wrap:wrap;margin-top:23px;gap:14px}.toolbar-actions{width:100%;gap:7px}.search{flex:1;max-width:none;width:0;padding:8px;height:35px}.search input{font-size:11px}.sort-wrap{height:35px;padding:0 7px;gap:4px}.sort-wrap select{font-size:10px;max-width:95px}.view-toggle{padding:2px}.view-toggle button{width:27px;height:29px}.category-list{padding:7px;gap:2px;border-radius:10px}.category-list button{font-size:11px;height:32px;padding:5px 9px}.category-list button>span{font-size:10px;margin-left:1px}.subscription-grid{grid-template-columns:1fr;gap:13px;margin-top:13px}.subscription-card{padding:19px 19px 0;border-radius:14px}.remaining-block{margin:20px 0 17px}.remaining-value{font-size:36px}.card-info{padding-bottom:16px}.card-status{font-size:11px}.card-footer{padding:13px 0}.compact-view .subscription-card{grid-template-columns:1.1fr 1fr;gap:10px;padding:15px}.compact-view .card-heading .icon-button,.compact-view .remaining-block{display:none}.compact-view .card-info{gap:9px}.compact-view .card-info strong{font-size:11px}.compact-view .card-info small{display:none}.compact-view .service-name h2{font-size:12px}.compact-view .service-logo{width:31px;height:31px;font-size:21px}.compact-view .service-name p{font-size:10px}.empty-state{min-height:330px;padding:30px 15px}.site-footer{font-size:9px;gap:10px;align-items:flex-start}.site-footer>span:last-child{display:none}.modal{padding:21px;max-height:90dvh;border-radius:14px;width:calc(100vw - 24px)}.modal-head h2{font-size:18px}.form-grid{gap:0 12px}.field{font-size:11px}.field input,.field select,.field textarea{font-size:12px;padding:9px;min-height:39px}.field input[type=date]{max-width:100%}.templates{gap:5px}.templates button{font-size:9px;padding:6px 8px}.edit-tools{gap:6px}.edit-tools .button{padding:7px;font-size:10px}.ledger-filters{flex-wrap:wrap;gap:6px}.ledger-filters select{width:calc(50% - 3px)}.ledger-filters input{width:100%}.ledger-summary{font-size:10px;padding:12px;gap:12px}.ledger-summary strong{font-size:16px}.record-top{gap:6px;font-size:11px}.restore-modes{grid-template-columns:1fr}.backup-buttons .button{font-size:10px;padding:9px}.analytics-heading{margin-top:25px;gap:10px}.analytics-heading h2{font-size:21px}.analytics-heading p:last-child{font-size:11px}.analytics-heading .button{font-size:10px;padding:8px}.panel{padding:17px}.analysis-grid{margin-top:15px;gap:0}.chart{height:220px}.toast{font-size:11px;padding:12px 15px;width:max-content}.undo-toast{font-size:10px;padding:10px;gap:6px;bottom:80px}.undo-toast button{font-size:10px}.backfill-row{padding:12px}.backfill-row>.record-top{font-size:10px}}:root{--text: #18181b;--border: #e8e8eb;--segment-bg: #e9e9e9;font-size:14px;line-height:1.55}.dashboard{padding:20px 32px 24px}.ambient{display:none}.topbar{margin-bottom:18px}.brand h1{font-size:20px;line-height:31px;letter-spacing:-.5px}.brand-dot{color:#3b82f6}.brand{gap:10px}.brand-divider{display:none}.brand-caption{font-size:12px;color:#71717a}.brand h1 small{font-size:9px;letter-spacing:.5px;color:#71717a;background:#e8e8eb}.button.primary{background:#3b82f6;border-color:#3b82f6;box-shadow:none}.button.primary:hover{background:#2872e8}.button{font-size:12px;padding:7px 10px;min-height:34px}.overview{gap:12px;margin-bottom:20px}.summary-card{height:118px;padding:14px 16px;display:flex;flex-direction:column;gap:10px}.summary-label{font-size:11px;font-weight:650;color:#52525b}.summary-number{font-size:27px;line-height:1.18;font-weight:660;letter-spacing:-.7px;margin:0}.summary-number>span{font-size:11px;color:#a1a1aa;font-weight:450;margin-left:7px}.summary-bottom{font-size:10px;min-height:15px;justify-content:flex-start;gap:25px;line-height:1.4}.summary-card:first-child .summary-bottom{display:none}.overview-bars{padding-top:0;margin-top:3px;height:5px;gap:3px}.overview-bars i{height:5px;background:#a8bb91}.section-toolbar{margin:0 0 14px;gap:14px;min-height:36px}.category-list{padding:9px 12px;border-radius:16px;gap:4px}.category-list button{height:34px;font-size:11px}.category-list button.active{color:#3f3f46;background:#f0f0f2}.category-list button svg{color:#8b8b93}.category-list button.active svg{color:#52525b}.subscription-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:18px}.subscription-card{padding:18px 20px 14px;border-radius:14px;min-height:241px}.subscription-card:hover{border-color:#cbd2da;box-shadow:0 5px 17px #18181b08;transform:translateY(-1px)}.card-heading{gap:12px}.service-logo{width:44px;height:44px;border-radius:10px;border:1px solid #0000000c}.service-logo img{width:32px;height:32px;object-fit:contain}.service-name h2{font-size:14px;font-weight:650;letter-spacing:-.14px;line-height:18.9px}.service-name p{font-size:10px;line-height:13.5px;color:#71717a;margin-top:3px}.membership-status{width:7px;height:7px;border-radius:50%;margin-left:auto;background:#71717a;align-self:flex-start;margin-top:6px;flex-shrink:0}.membership-status.soon{background:#c69d50}.membership-status.expired{background:#c97565}.membership-metrics{display:flex;justify-content:space-between;gap:20px;margin:20px 0 17px;min-height:61px}.membership-metric:last-child{text-align:right}.membership-metric .small-label{font-size:10px;font-weight:450;color:#71717a;gap:5px;line-height:15.5px}.membership-metric:last-child .small-label{justify-content:flex-end}.remaining-number{font-size:34px;line-height:1.03;font-weight:650;letter-spacing:-.9px;margin-top:8px;font-variant-numeric:tabular-nums}.remaining-number span{font-size:12px;font-weight:400;letter-spacing:0;margin-left:6px;color:#71717a}.membership-price{margin-top:13px;font-variant-numeric:tabular-nums;white-space:nowrap;line-height:24px}.membership-price strong{font-size:24px;font-weight:650;letter-spacing:-.48px}.membership-price .currency-code{font-size:11px;font-weight:550;color:#52525b;margin-right:2px}.membership-price small{font-size:10px;color:#a1a1aa}.progress-caption{display:flex;justify-content:space-between;font-size:10px;color:#a1a1aa;line-height:15.5px;margin-bottom:6px}.segments{display:flex;gap:3px;height:9px;width:100%;overflow:hidden}.segments i{display:block;height:100%;flex:1;min-width:0;border-radius:1px}.membership-expiry{display:flex;align-items:center;justify-content:space-between;margin-top:14px;padding-top:9px;border-top:1px solid #f4f4f5;font-size:11px;line-height:17px}.membership-expiry>span{display:flex;align-items:center;gap:5px;color:#a1a1aa;font-size:10px}.membership-expiry time{font-variant-numeric:tabular-nums;color:#71717a}.compact-view{grid-template-columns:1fr;gap:8px}.compact-view .subscription-card{min-height:0;display:grid;grid-template-columns:1.3fr 1.3fr 1fr;gap:25px;padding:14px 20px}.compact-view .membership-metrics{margin:0;gap:15px;min-height:0}.compact-view .remaining-number{font-size:24px;margin-top:4px}.compact-view .membership-price{margin-top:4px}.compact-view .membership-price strong{font-size:19px}.compact-view .progress-caption,.compact-view .segments{display:none}.compact-view .membership-expiry{border:0;margin:0;padding:0;justify-content:flex-end;gap:20px}.compact-view .membership-status{display:none}[data-theme=dark]{--segment-bg: #414852;--text: #e4e4e7}[data-theme=dark] .membership-expiry{border-color:var(--border)}[data-theme=dark] .summary-label{color:#a1a1aa}[data-theme=dark] .category-list button.active{background:#3c444f;color:#e4e4e7}[data-theme=dark] .brand h1 small{background:#39434d;color:#b9c2c9}[data-theme=dark] .button.primary{background:#3b82f6;border-color:#3b82f6}[data-theme=dark] .membership-price .currency-code{color:#a1a1aa}@media(min-width:1700px){.subscription-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.compact-view{grid-template-columns:1fr}}@media(max-width:1000px){.subscription-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-view{grid-template-columns:1fr}.brand-caption{display:none}}@media(max-width:600px){.dashboard{padding:16px 12px 18px}.topbar{gap:10px;margin-bottom:16px}.topbar:has(.header-toolbox) .brand{left:12px;top:16px}.brand h1{font-size:19px}.brand h1 small{font-size:8px}.overview{gap:8px;margin-bottom:18px}.summary-card{height:106px;padding:12px;gap:8px;border-radius:12px}.summary-label{font-size:10px}.summary-number{font-size:24px}.summary-number>span{font-size:10px;margin-left:5px}.summary-bottom{font-size:9px;gap:12px}.summary-bottom>span:last-child:not(:first-child){display:inline-flex}.overview-bars{position:static;height:4px;margin-top:0}.overview-bars i{height:4px}.section-toolbar{margin-bottom:12px;gap:12px}.category-list{padding:7px;border-radius:12px}.category-list button{height:30px;font-size:10px;padding:5px 8px}.subscription-grid{grid-template-columns:1fr;gap:12px;margin-top:14px}.subscription-card{padding:18px 20px 14px;min-height:241px}.membership-metrics{margin:20px 0 17px}.service-name h2{font-size:14px}.compact-view{grid-template-columns:1fr}.compact-view .subscription-card{grid-template-columns:1fr 1fr;padding:13px;gap:12px;min-height:0}.compact-view .membership-metrics{justify-content:flex-end;gap:15px}.compact-view .small-label{display:none}.compact-view .membership-metric:last-child .currency-code{display:none}.compact-view .membership-price strong{font-size:16px}.compact-view .remaining-number{font-size:19px}.compact-view .remaining-number span{font-size:9px;margin-left:3px}.compact-view .membership-expiry{display:none}.compact-view .service-name h2{font-size:12px}.compact-view .service-name p{font-size:9px}}
