@import url("https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&family=Noto+Sans+SC:wght@400;500;600;700;800&display=swap");:root{--bg:#f5f7f9;--surface:#fff;--ink:#18252f;--muted:#84919a;--line:#e6ebee;--teal:#10a486;--teal-dark:#087963;--teal-pale:#e3f5f0;--orange:#e87b50;--orange-pale:#fff0e9;--navy:#1e3440;--shadow:0 8px 30px rgba(22,40,50,.045)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Manrope,Noto Sans SC,sans-serif;-webkit-font-smoothing:antialiased}button,input{font:inherit}button{cursor:pointer;border:0}.app-shell{display:flex;min-height:100vh}.sidebar{width:244px;background:#fff;border-right:1px solid var(--line);padding:31px 17px 22px;display:flex;flex-direction:column;flex-shrink:0}.brand{display:flex;align-items:center;gap:11px;padding:0 15px 39px}.brand-mark{background:var(--teal);color:#fff;width:29px;height:29px;border-radius:8px;display:grid;place-items:center;font-size:20px;font-weight:800;transform:rotate(-8deg)}.brand strong{display:block;font-size:15px;letter-spacing:-.4px}.brand small{display:block;font-family:DM Mono;font-size:8px;letter-spacing:1px;color:#a7b1b6;margin-top:3px}.side-label{color:#aab3b8;font-size:10px;text-transform:uppercase;letter-spacing:1.2px;font-weight:700;padding:0 15px 10px}.nav-item{height:45px;width:100%;border-radius:9px;background:transparent;color:#859198;text-align:left;padding:0 15px;display:flex;align-items:center;gap:13px;font-size:13px;font-weight:600;margin:2px 0;transition:.2s}.nav-item:hover{background:#f4f8f7;color:var(--teal-dark)}.nav-item.active{background:var(--teal-pale);color:var(--teal-dark)}.nav-icon{width:18px;font-size:18px;line-height:1;text-align:center}.nav-arrow{margin-left:auto;font-size:20px}.sidebar-bottom{margin-top:auto}.sync{color:#9aa5ab;font-size:11px;padding:0 15px 22px;display:flex;gap:8px;align-items:center}.dot{width:7px;height:7px;border-radius:50%;background:#36c29d;box-shadow:0 0 0 3px #e4f8f2}.user-chip{width:100%;display:flex;align-items:center;gap:9px;background:#f8fafb;padding:9px 11px;border-radius:10px;font-size:11px;color:#5e6c74;text-align:left}.user-chip span:last-child{margin-left:auto;color:#a1adb2}.avatar{background:#d2eee7;color:var(--teal-dark);font-weight:800;width:26px;height:26px;border-radius:7px;display:grid;place-items:center}.main-content{max-width:1400px;width:100%;padding:31px 48px 50px;margin:0 auto}.topbar{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:27px}.card-kicker,.eyebrow{color:#9aa7ad;font-size:10px;letter-spacing:.9px;font-weight:700;text-transform:uppercase}.topbar h1{font-size:28px;letter-spacing:-1.3px;margin:8px 0 0;line-height:1.15}.top-actions{display:flex;gap:11px;align-items:center}.icon-button{position:relative;background:#fff;border:1px solid var(--line);color:#89969b;border-radius:9px;width:37px;height:37px;font-size:17px}.notify-dot{position:absolute;top:8px;right:8px;width:5px;height:5px;border-radius:50%;background:var(--orange)}.add-button{background:var(--teal);color:#fff;font-size:12px;font-weight:700;padding:11px 16px;border-radius:8px;box-shadow:0 5px 14px #10a4862a}.hero-grid{display:grid;grid-template-columns:1.08fr 1fr;grid-gap:17px;gap:17px;margin-bottom:17px}.runway-card{background:var(--navy);border-radius:13px;padding:23px 27px 20px;color:#fff;min-height:220px;position:relative;overflow:hidden}.runway-card:after{content:"";position:absolute;width:200px;height:200px;border:1px solid #87d8c329;border-radius:50%;right:-70px;bottom:-100px}.card-kicker{display:block}.runway-card .card-kicker{color:#8acbbd}.pulse{display:inline-block;width:7px;height:7px;border-radius:50%;background:#4fd1ae;box-shadow:0 0 0 4px #4fd1ae2b;margin-right:8px}.runway-number{font-size:65px;letter-spacing:-5px;font-weight:700;line-height:1;margin:22px 0 11px}.runway-number small{font-size:17px;letter-spacing:0;margin-left:7px;font-weight:500}.infinity{font-size:76px}.runway-card p{font-size:12px;margin:0;color:#a8bdc3}.runway-card p strong{color:#ffe0bd;font-weight:600}.runway-meter{height:5px;background:#ffffff1a;border-radius:5px;margin-top:22px;overflow:hidden}.runway-meter span{display:block;height:100%;background:linear-gradient(90deg,#3ebda1,#d9ba73);border-radius:5px}.meter-labels{display:flex;justify-content:space-between;font-size:10px;color:#718f97;margin-top:7px}.card,.month-card{background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:22px 24px;box-shadow:var(--shadow)}.month-card{min-height:220px}.card-title-row{display:flex;justify-content:space-between;align-items:flex-start}.card h3,.month-card h3{font-size:17px;letter-spacing:-.5px;margin:7px 0 0}.status-pill{font-size:10px;border-radius:20px;padding:5px 9px;font-weight:700}.status-pill.warning{color:#b96841;background:var(--orange-pale)}.month-stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:11px;gap:11px;border-bottom:1px solid var(--line);padding:25px 0 19px}.goal-numbers span,.month-stats span,.projection-table span{display:block;color:#9aa7ad;font-size:10px;margin-bottom:7px}.month-stats strong{font-family:DM Mono;font-size:14px;font-weight:500}.income{color:#159b7d!important}.expense{color:var(--orange)!important}.mini-progress{height:7px;background:#edf1f2;border-radius:6px;margin:20px 0 8px;overflow:hidden}.mini-progress span{height:100%;background:var(--teal);display:block;border-radius:6px}.mini-caption{display:flex;justify-content:space-between;color:#9ca8ad;font-size:10px}.content-grid{display:grid;grid-template-columns:1.65fr 1fr;grid-gap:17px;gap:17px;margin-bottom:17px}.projection-card{min-height:365px}.legend{display:flex;gap:14px;color:#9ba7ac;font-size:10px;padding-top:5px}.legend span{display:flex;gap:5px;align-items:center}.legend-line{display:block;width:15px;height:2px;background:var(--teal)}.legend-dot{display:block;width:7px;height:7px;border-radius:50%;background:var(--orange)}.chart-wrap{height:190px;display:flex;gap:10px;margin-top:22px}.chart-y{height:100%;display:flex;flex-direction:column;justify-content:space-between;color:#a8b3b8;font:9px DM Mono;width:45px;text-align:right;padding:3px 0}.chart-svg{height:100%;width:calc(100% - 55px);overflow:visible;background:repeating-linear-gradient(180deg,transparent 0,transparent calc(33.333% - 1px),#edf1f2 calc(33.333% - 1px),#edf1f2 33.333%)}.zero-line{stroke:#d5dddf;stroke-dasharray:2 2}.chart-line,.zero-line{vector-effect:non-scaling-stroke}.chart-line{fill:none;stroke:var(--teal);stroke-width:1.7}.chart-area{fill:url(#none);fill:none}.chart-point{fill:#fff;stroke:var(--teal);stroke-width:1.2}.chart-point,.risk-point{vector-effect:non-scaling-stroke}.risk-point{fill:var(--orange);stroke:#fff;stroke-width:1.5}.chart-x{display:flex;justify-content:space-between;margin:8px 0 0 55px;color:#a8b3b8;font:9px DM Mono}.projection-table{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);margin-top:22px;padding-top:14px}.projection-table strong{font:12px DM Mono}.goal-card{min-height:365px}.target-badge{font-size:10px;color:var(--teal-dark);background:var(--teal-pale);padding:6px 8px;border-radius:5px;font-family:DM Mono}.goal-ring{height:142px;width:142px;margin:20px auto 16px;border-radius:50%;background:conic-gradient(var(--teal) var(--progress),#eaf0ef 0);display:grid;place-items:center;position:relative}.goal-ring:after{content:"";position:absolute;background:#fff;width:111px;height:111px;border-radius:50%}.goal-ring>div{z-index:1;text-align:center}.goal-ring strong{font:700 30px DM Mono;display:block;color:var(--ink)}.goal-ring strong small{font:16px Manrope;margin-left:2px}.goal-ring span{font-size:10px;color:#9aa7ad}.goal-numbers{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);padding-top:16px}.goal-numbers strong{font:15px DM Mono}.range-label{display:flex;justify-content:space-between;color:#9aa7ad;font-size:10px;margin:22px 0 10px}.range-label span{font-family:DM Mono;color:var(--ink)}input[type=range]{accent-color:var(--teal);width:100%;height:5px}.outline-button{width:100%;background:#fff;border:1px solid #cdd9d9;color:var(--teal-dark);border-radius:7px;font-size:11px;font-weight:700;padding:9px;margin-top:20px}.bottom-grid{display:grid;grid-template-columns:1.35fr 1fr;grid-gap:17px;gap:17px}.events-card,.risk-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:22px 24px}.text-button{color:var(--teal-dark);background:none;font-size:11px;font-weight:700}.event-list{margin-top:13px}.event-row{display:flex;align-items:center;padding:11px 0;border-bottom:1px solid #f0f2f3}.event-row:last-child{border:0}.event-symbol{width:29px;height:29px;border-radius:8px;display:grid;place-items:center;font-size:16px;font-weight:700;margin-right:11px}.event-symbol.income{background:var(--teal-pale);color:var(--teal)}.event-symbol.expense{background:var(--orange-pale);color:var(--orange)}.event-main{flex:1 1}.event-main strong{display:block;font-size:11px;font-weight:700}.event-main small{display:block;color:#a2adb2;font-size:9px;margin-top:4px}.event-row>.expense,.event-row>.income{font:12px DM Mono}.risk-card h3{margin:8px 0 21px}.risk-item{display:flex;gap:11px;padding:13px 0;border-top:1px solid var(--line)}.risk-icon{width:27px;height:27px;border-radius:50%;background:var(--orange-pale);color:var(--orange);display:grid;place-items:center;font-weight:800;flex:none}.risk-icon.blue{background:#e6f1f8;color:#5592b4}.risk-item strong{display:block;font-size:11px}.risk-item small{display:block;color:#9da9ae;font-size:10px;margin-top:5px;line-height:1.5}.section-view{max-width:850px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin:15px 0 25px}.section-heading h2{font-size:28px;letter-spacing:-1px;margin:7px 0 0}.placeholder-copy{color:#7f8d94;line-height:1.8;font-size:13px;margin-bottom:20px}.settings-card{max-width:460px}.settings-card h3{margin-bottom:8px}.setting-field{margin-top:25px}.setting-field label{display:block;color:#728088;font-size:11px;font-weight:700;margin-bottom:8px}.setting-field input{width:100%;border:1px solid var(--line);border-radius:7px;padding:11px;font-family:DM Mono;font-size:14px;color:var(--ink)}.setting-note{margin-top:12px;color:#a0acb1;font-size:10px}.muted{color:#9aa7ad}.muted,.toast{font-size:11px}.toast{position:fixed;bottom:25px;right:28px;background:var(--navy);color:#fff;padding:12px 16px;border-radius:8px;box-shadow:0 8px 25px #16283233}@media(max-width:980px){.sidebar{width:205px}.main-content{padding:27px 28px}.bottom-grid,.content-grid,.hero-grid{grid-template-columns:1fr}.hero-grid{gap:13px}}@media(max-width:650px){.app-shell{display:block}.sidebar{width:100%;height:auto;padding:17px 15px 12px;border-right:0;border-bottom:1px solid var(--line)}.brand{padding:0 5px 15px}.sidebar .side-label,.sidebar-bottom{display:none}.nav-item{display:inline-flex;width:auto;padding:0 11px;margin:0 2px;font-size:11px;height:34px}.nav-icon{font-size:15px}.nav-arrow{display:none}.main-content{padding:22px 15px 35px}.topbar{margin-bottom:21px}.topbar h1{font-size:23px}.top-actions .icon-button{display:none}.add-button{padding:10px 12px;font-size:11px}.card,.events-card,.month-card,.risk-card,.runway-card{padding:18px}.runway-number{font-size:55px}.month-stats{gap:5px}.month-stats strong{font-size:12px}.legend{display:none}.chart-wrap{height:160px}.chart-x{font-size:8px}.chart-x span:nth-child(2n){display:none}.projection-table{gap:10px}.projection-table strong{font-size:10px}.bottom-grid{gap:13px}.section-heading h2{font-size:24px}}.event-manager{margin-top:17px}.outline-button.compact{width:auto;margin:0;padding:8px 11px}.manager-list{margin-top:15px}.manager-row{display:flex;align-items:center;gap:10px;padding:11px 0;border-top:1px solid #f0f2f3}.manager-row .event-main{min-width:0}.manager-row>.expense,.manager-row>.income{font:12px DM Mono;white-space:nowrap}.event-status{font-size:9px;padding:4px 7px;border-radius:4px;white-space:nowrap}.event-status.confirmed{color:var(--teal-dark);background:var(--teal-pale)}.event-status.planned{color:#9b744a;background:#fff5e7}.event-status.uncertain{color:#a26854;background:var(--orange-pale)}.delete-button,.edit-button{background:none;color:#c0c9cc;font-size:18px;padding:0 2px;line-height:1}.delete-button:hover{color:var(--orange)}.edit-button:hover{color:var(--teal)}.modal-backdrop{position:fixed;inset:0;background:#15242c66;display:grid;place-items:center;padding:20px;z-index:10}.event-form{background:#fff;border-radius:14px;width:min(100%,480px);padding:25px;box-shadow:0 18px 60px #16283233}.form-header{display:flex;justify-content:space-between;align-items:flex-start}.form-header h3{font-size:19px;margin:7px 0 21px}.close-button{background:#f2f5f5;color:#7b888e;width:28px;height:28px;border-radius:50%;font-size:19px;line-height:1}.type-toggle{display:grid;grid-template-columns:1fr 1fr;background:#f2f5f5;border-radius:8px;padding:3px;margin-bottom:19px}.type-toggle button{padding:9px;border-radius:6px;background:transparent;color:#89959a;font-size:12px;font-weight:700}.type-toggle button.selected{background:#fff;box-shadow:0 2px 7px #16283212}.type-toggle button.income-tab.selected{color:var(--teal-dark)}.type-toggle button.expense-tab.selected{color:var(--orange)}.event-form label{display:block;color:#68777e;font-size:10px;font-weight:700;margin:13px 0}.event-form input,.event-form select{display:block;width:100%;margin-top:7px;border:1px solid #dce3e5;border-radius:7px;padding:10px 11px;color:var(--ink);font-size:12px;background:#fff}.event-form input:focus,.event-form select:focus{outline:2px solid #10a48633;border-color:var(--teal)}.form-two{display:grid;grid-template-columns:1fr 1fr;grid-gap:13px;gap:13px}.form-hint{color:#9ca8ad;background:#f7fafa;padding:10px;border-radius:7px;font-size:10px;line-height:1.5;margin-top:14px}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.cancel-button{background:#f1f4f4;color:#66757b;border-radius:7px;padding:10px 16px;font-size:11px;font-weight:700}.p1-stack>.event-manager{margin-top:0}@media(max-width:650px){.manager-row{gap:7px}.manager-row .event-status{display:none}.manager-row>.expense,.manager-row>.income{font-size:10px}.event-form{padding:20px}.form-two{grid-template-columns:1fr;gap:0}}.settings-stack{display:grid;grid-gap:17px;max-width:520px}.cloud-card h3{margin-top:7px}.connection-pill{font-size:9px;font-weight:700;padding:5px 8px;border-radius:5px}.connection-pill.local{background:#f1f4f4;color:#819097}.connection-pill.ready{background:#fff5e7;color:#9b744a}.connection-pill.connected{background:var(--teal-pale);color:var(--teal-dark)}.auth-fields{display:grid;grid-gap:9px;gap:9px;margin-top:17px}.auth-fields input{width:100%;border:1px solid #dce3e5;border-radius:7px;padding:10px 11px;font-size:12px}.auth-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:13px}.auth-actions button:disabled{opacity:.55;cursor:wait}.auth-message{font-size:10px;color:#8b999f;line-height:1.5;margin:13px 0 0}.p1-stack{display:grid;grid-gap:17px;gap:17px}.p1-summary{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px}.p1-summary>div{background:#fff;border:1px solid var(--line);border-radius:10px;padding:15px 17px}.p1-row small,.p1-summary span{display:block;color:#9aa7ad;font-size:10px;margin-bottom:7px}.p1-summary strong{font:16px DM Mono}.p1-card{max-width:1040px}.p1-list{margin-top:15px;overflow-x:auto}.p1-row{display:grid;grid-template-columns:30px minmax(150px,1fr) 105px 95px 95px 20px 20px;grid-gap:10px;gap:10px;min-width:760px;align-items:center;border-top:1px solid #f0f2f3;padding:13px 0}.p1-main{min-width:0}.p1-main strong{display:block;font-size:12px}.p1-main small{margin-top:4px;margin-bottom:0;line-height:1.4}.p1-row>div>small{margin-bottom:4px}.p1-row>div>strong{font:12px DM Mono}.repayment-day strong{color:var(--teal-dark)}.priority{width:23px;height:23px;border-radius:7px;background:var(--teal-pale);color:var(--teal-dark);display:grid;place-items:center;font:11px DM Mono}.status-pill.safe{background:var(--teal-pale);color:var(--teal-dark)}.milestone-list{margin-top:15px}.milestone-row{display:flex;align-items:center;gap:11px;border-top:1px solid #f0f2f3;padding:13px 0}.milestone-icon{width:29px;height:29px;border-radius:8px;display:grid;place-items:center;background:#edf4f7;color:#5794aa}.milestone-icon.income{background:var(--teal-pale);color:var(--teal)}.milestone-icon.expense{background:var(--orange-pale);color:var(--orange)}.milestone-row .p1-main{flex:1 1}.warning-text{color:#b97846;font-size:10px}.milestone-row .delete-button,.p1-row .delete-button{margin-left:auto}@media(max-width:700px){.p1-summary{grid-template-columns:1fr}.p1-row{grid-template-columns:27px minmax(90px,1fr) 85px 20px}.p1-row>div:nth-child(3){display:none}.milestone-row{gap:8px}}.simulation-card{max-width:860px}.sim-controls{display:grid;grid-template-columns:1fr 1fr;grid-gap:28px;gap:28px;margin:28px 0}.sim-controls label{color:#718087;font-size:11px;font-weight:700}.sim-controls strong{float:right;color:var(--teal-dark);font:13px DM Mono}.sim-controls input{display:block;width:100%;margin-top:13px}.sim-result{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 0;grid-gap:15px;gap:15px}.sim-result span{display:block;color:#9aa7ad;font-size:10px;margin-bottom:7px}.sim-result strong{font:13px DM Mono}.sim-hint{color:#9ca8ad;font-size:10px;margin-top:15px}.ex-payment{grid-template-columns:30px 1fr 120px 20px}.backup-card{max-width:520px}.backup-card h3{margin-top:7px}.backup-actions{display:flex;gap:9px;margin-top:17px}.file-button{position:relative;display:inline-flex;align-items:center}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}@media(max-width:650px){.sim-controls,.sim-result{grid-template-columns:1fr}.sim-controls{gap:17px}}:root[data-theme=dark]{--bg:#11191d;--surface:#1b262b;--ink:#e7eef0;--muted:#9aa9ae;--line:#2c3a40;--teal-pale:#173b37;--orange-pale:#3b2822;--navy:#0d2028;--shadow:0 8px 30px rgba(0,0,0,.2)}:root[data-theme=dark] body{background:var(--bg);color:var(--ink)}:root[data-theme=dark] .backup-card,:root[data-theme=dark] .card,:root[data-theme=dark] .cloud-card,:root[data-theme=dark] .event-form,:root[data-theme=dark] .events-card,:root[data-theme=dark] .icon-button,:root[data-theme=dark] .month-card,:root[data-theme=dark] .p1-card,:root[data-theme=dark] .p1-summary>div,:root[data-theme=dark] .risk-card,:root[data-theme=dark] .settings-card,:root[data-theme=dark] .sidebar{background:var(--surface);border-color:var(--line);color:var(--ink)}:root[data-theme=dark] .brand strong,:root[data-theme=dark] .card h3,:root[data-theme=dark] .event-main strong,:root[data-theme=dark] .month-card h3,:root[data-theme=dark] .p1-main strong,:root[data-theme=dark] .topbar h1{color:var(--ink)}:root[data-theme=dark] .nav-item{color:#a5b3b8}:root[data-theme=dark] .nav-item:hover{background:#20353a;color:#b8eee2}:root[data-theme=dark] .nav-item.active{background:#173b37;color:#9de0d0}:root[data-theme=dark] .auth-fields input,:root[data-theme=dark] .event-form input,:root[data-theme=dark] .event-form select,:root[data-theme=dark] .setting-field input,:root[data-theme=dark] .user-chip{background:#152125;color:var(--ink);border-color:var(--line)}:root[data-theme=dark] .form-hint,:root[data-theme=dark] .type-toggle{background:#152125}:root[data-theme=dark] .type-toggle button.selected{background:#26383d}:root[data-theme=dark] .cancel-button,:root[data-theme=dark] .outline-button{background:#1b292e;color:#a9e5d8;border-color:#3d555c}:root[data-theme=dark] .event-row,:root[data-theme=dark] .history-list>div,:root[data-theme=dark] .manager-row,:root[data-theme=dark] .milestone-row,:root[data-theme=dark] .p1-row{border-color:var(--line)}:root[data-theme=dark] .toast{background:#e5f1f2;color:#142126}:root{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}html{overflow-x:hidden}body{background-image:radial-gradient(circle at 10% -10%,rgba(16,164,134,.07),transparent 34rem)}.sidebar{position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto;scrollbar-width:thin}.main-content{min-width:0}.top-subtitle{margin:8px 0 0;color:var(--muted);font-size:12px}.calibrate-button{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:9px;padding:10px 13px;font-size:11px;font-weight:700}.calibrate-button:hover{border-color:#9fcac1;color:var(--teal-dark);background:var(--teal-pale)}.signal-strip{display:flex;align-items:center;gap:14px;padding:12px 15px;margin:-8px 0 17px;border:1px solid #e9d7c9;border-radius:11px;background:#fff8f2;color:#8c674e;font-size:11px}.signal-strip>div{display:flex;align-items:center;gap:7px;font-weight:700;white-space:nowrap}.signal-strip strong{color:#70472e;font-size:12px}.signal-strip>span:last-child{margin-left:auto;color:#a07d66}.signal-dot{width:7px;height:7px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 4px rgba(232,123,80,.13)}.signal-strip.safe{border-color:#cce8df;background:#f1fbf7}.signal-strip.safe,.signal-strip.safe strong,.signal-strip.safe>span:last-child{color:var(--teal-dark)}.signal-strip.safe .signal-dot{background:var(--teal);box-shadow:0 0 0 4px rgba(16,164,134,.13)}.overview-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px;margin-bottom:17px}.overview-metric{min-width:0;padding:16px 17px;border:1px solid var(--line);border-radius:13px;background:var(--surface);box-shadow:var(--shadow)}.overview-metric>span{display:block;margin-bottom:9px;color:var(--muted);font-size:9px;font-weight:700}.overview-metric>strong{color:var(--ink);font:700 16px DM Mono}.overview-metric>small,.overview-metric>strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overview-metric>small{margin-top:7px;color:var(--muted);font-size:9px}.overview-metric.metric-alert{border-color:#edc5b5;background:#fff9f5}.overview-hero .runway-card h2{margin:21px 0 4px;color:#fff;font-size:18px}.runway-balance-number{display:block;margin:3px 0 8px;color:#fff;font:700 42px DM Mono;letter-spacing:-2px}.runway-card.runway-danger{background:linear-gradient(135deg,#372d2a,#24353a)}.runway-card.runway-danger .pulse{background:var(--orange);box-shadow:0 0 0 4px rgba(232,123,80,.18)}.readiness-card{min-height:220px}.commitment-number{display:block;margin:29px 0 5px;font:700 35px DM Mono;letter-spacing:-1.7px;color:var(--ink)}.readiness-card>p{margin:0;color:var(--muted);font-size:10px}.readiness-breakdown{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin-top:23px;padding-top:15px;border-top:1px solid var(--line)}.debt-snapshot-grid span,.readiness-breakdown span{display:block;color:var(--muted);font-size:9px;margin-bottom:5px}.readiness-breakdown strong{font:12px DM Mono}.decision-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr);grid-gap:17px;gap:17px;margin-bottom:17px}.debt-snapshot-grid{display:grid;grid-template-columns:.75fr 1fr 1.55fr;grid-gap:18px;gap:18px;margin-top:27px;padding-top:18px;border-top:1px solid var(--line)}.debt-snapshot-grid strong{display:block;font-size:12px;line-height:1.5}.debt-snapshot-grid>div:first-child strong{font:15px DM Mono;color:var(--orange)}.maintenance-card h3{margin:7px 0 17px;font-size:16px}.maintenance-card ol{list-style:none;margin:0;padding:0;counter-reset:maintenance}.maintenance-card li{display:grid;grid-template-columns:74px 1fr;grid-gap:10px;gap:10px;padding:9px 0;border-top:1px solid var(--line);font-size:10px}.maintenance-card li strong{color:var(--teal-dark)}.maintenance-card li span{color:var(--muted)}.priority-actions li.action-alert span,.priority-actions li.action-alert strong{color:var(--orange)}.manager-note{color:var(--muted);font-size:10px;line-height:1.65;margin:12px 0 0}.manager-title{display:flex;align-items:baseline;gap:10px;min-width:0}.manager-title .manager-note{margin:0}.manager-filters{display:grid;grid-template-columns:minmax(180px,1fr) 150px;grid-gap:10px;gap:10px;margin-top:16px}.manager-filters label{color:var(--muted);font-size:9px;font-weight:700}.manager-filters input,.manager-filters select{display:block;width:100%;margin-top:6px;border:1px solid var(--line);border-radius:7px;padding:8px 9px;background:var(--surface);color:var(--ink);font-size:11px}.manager-filters input:focus,.manager-filters select:focus{outline:2px solid #10a48633;border-color:var(--teal)}.manager-empty{padding:22px 0;border-top:1px solid var(--line);color:var(--muted);font-size:10px;text-align:center}.brand{padding-bottom:31px}.nav-item{height:41px;margin:3px 0}.add-button:focus-visible,.icon-button:focus-visible,.nav-item:focus-visible,.outline-button:focus-visible,.text-button:focus-visible,button:focus-visible{outline:3px solid rgba(16,164,134,.28);outline-offset:2px}.add-button,.icon-button,.nav-item,.outline-button,.text-button{transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.icon-button:hover{border-color:#b8cbc9;color:var(--teal-dark);background:var(--teal-pale)}.add-button:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(16,164,134,.24)}.outline-button:hover{background:var(--teal-pale);border-color:#9fcac1}.text-button:hover{color:var(--teal)}.card,.events-card,.month-card,.risk-card,.runway-card{border-radius:16px}.section-view{max-width:1040px}.section-heading{margin-bottom:18px}.section-heading>.add-button{display:none}.placeholder-copy{margin:0 0 22px;padding:12px 15px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--surface) 72%,var(--teal-pale));font-size:12px}.bottom-grid,.content-grid,.hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr)}.content-grid{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr)}.bottom-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}.card-title-row h3,.month-card h3{line-height:1.35}.event-form input,.event-form select,.setting-field input{min-height:42px}.type-toggle.three-options{grid-template-columns:repeat(3,1fr)}.type-toggle button.reminder-tab.selected{color:#557f9a}.form-two>label:only-child{grid-column:1/-1}.event-symbol.reminder{background:#e6f1f8;color:#5592b4}.reminder-label{color:#5592b4;font-size:10px;font-weight:700;white-space:nowrap}.cashflow-form,.debt-form{max-width:1040px}.cashflow-form{width:100%;margin:0}.event-manager{margin-bottom:0}.legend-expense,.legend-income{display:block;width:8px;height:8px;border-radius:2px}.legend-income{background:var(--teal)}.legend-expense{background:var(--orange)}.income-bar{fill:var(--teal)}.expense-bar{fill:var(--orange)}.chart-x{justify-content:normal}.chart-x span{flex:1 1;text-align:center}.projection-month-table{margin-top:16px;border-top:1px solid var(--line);overflow-x:auto}.projection-month-head,.projection-month-row{display:grid;grid-template-columns:.58fr 1fr 1fr 1fr;grid-gap:8px;gap:8px;align-items:center;min-width:430px}.projection-month-head{padding:10px 0 8px;color:var(--muted);font-size:9px;font-weight:700}.projection-month-head span:nth-child(n+2){text-align:right}.projection-month-row{border-top:1px solid #f0f2f3;padding:9px 0;color:var(--ink);font-size:10px}.projection-month-row span{color:var(--muted)}.projection-month-row strong{font:11px DM Mono;text-align:right}.flexibility-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:13px;gap:13px;align-items:end;margin-top:5px}.check-field{min-height:42px;display:flex!important;align-items:center;gap:9px;padding:9px 11px;border:1px solid var(--line);border-radius:7px;background:color-mix(in srgb,var(--surface) 80%,var(--teal-pale))}.check-field input{width:auto!important;margin:0!important;min-height:auto!important;accent-color:var(--teal)}.check-field span{font-size:11px;color:var(--ink)}.debt-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:0 14px;gap:0 14px}.debt-form label{display:block;color:#68777e;font-size:10px;font-weight:700;margin:13px 0 0}.debt-form input,.debt-form select,.debt-form textarea{display:block;width:100%;margin-top:7px;border:1px solid var(--line);border-radius:7px;padding:10px 11px;color:var(--ink);font-size:12px;background:var(--surface)}.debt-form textarea{resize:vertical;min-height:76px}.debt-form input:focus,.debt-form select:focus,.debt-form textarea:focus{outline:2px solid #10a48633;border-color:var(--teal)}.debt-core-grid{grid-template-columns:1.4fr 1fr .8fr .65fr .7fr}.debt-form-hint{margin:12px 0 0;color:var(--muted);font-size:10px}.debt-ledger-head{display:flex;align-items:flex-end;justify-content:space-between;margin:8px 0 14px}.debt-ledger-head h3{margin:7px 0 0;font-size:19px}.debt-ledger{display:grid;grid-gap:14px;gap:14px}.cashflow-ledger-head{margin-bottom:0}.cashflow-ledger-head>div{min-width:0}.cashflow-ledger-head .manager-note{margin-top:6px}.cashflow-filters{margin-top:0}.cashflow-ledger{display:grid;grid-gap:14px;gap:14px}.cashflow-account{padding:0;overflow:hidden}.cashflow-account>header{display:flex;align-items:center;gap:13px;padding:18px 20px}.cashflow-type-badge{flex:none;min-width:62px;padding:6px 8px;border-radius:6px;text-align:center;font-size:9px;font-weight:800}.cashflow-type-badge.income{color:var(--teal-dark);background:var(--teal-pale)}.cashflow-type-badge.expense{color:#a94f32;background:var(--orange-pale)}.cashflow-type-badge.reminder{color:#557f9a;background:#e6f1f8}.cashflow-account-copy{min-width:0;flex:1 1}.cashflow-account-copy h3{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0 0 5px;font-size:15px}.cashflow-account-copy p{margin:0;color:var(--muted);font-size:10px;line-height:1.65}.cashflow-account-amount{flex:none;font:700 13px DM Mono;white-space:nowrap}.cashflow-account-amount.income{color:var(--teal-dark)}.cashflow-account-amount.expense{color:var(--orange)}.cashflow-account-amount.reminder{color:#5592b4;font-family:inherit;font-size:10px}.cashflow-account-actions{flex:none;display:flex;align-items:center;gap:10px}.debt-account{padding:0;overflow:hidden}.debt-account>header{display:flex;align-items:center;gap:13px;padding:18px 20px}.debt-account>header h3{margin:0 0 5px;font-size:15px}.debt-account>header p{margin:0;color:var(--muted);font-size:10px}.priority-badge{flex:none;min-width:55px;padding:6px 8px;border-radius:6px;text-align:center;font-size:9px;font-weight:800}.priority-badge.high{color:#a94f32;background:var(--orange-pale)}.priority-badge.medium{color:#92703d;background:#fff4db}.plan-badge,.priority-badge.low{color:var(--teal-dark);background:var(--teal-pale)}.plan-badge{flex:none;padding:6px 8px;border-radius:6px;text-align:center;font-size:9px;font-weight:800}.overdue-plan-badge{color:#a94f32;background:var(--orange-pale)}.debt-account-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.plans-toggle{padding:7px 9px;border-radius:7px;background:transparent;color:var(--teal-dark);font-size:10px;font-weight:700;white-space:nowrap}.plans-toggle:hover{background:var(--teal-pale)}.debt-account-copy{min-width:0;flex:1 1}.debt-account-copy h3{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.debt-total{color:var(--orange);font:700 12px DM Mono}.debt-day{color:var(--teal-dark);font-size:10px;font-weight:700}.debt-account-copy p{max-width:760px;line-height:1.65}.plan-form{display:grid;grid-template-columns:1fr 1fr 1fr 1fr auto;grid-gap:10px;gap:10px;align-items:start;padding:15px 20px;background:#f7faf9;border-top:1px solid var(--line)}.plan-form label{color:#718087;font-size:9px;font-weight:700}.plan-form input,.plan-form select{width:100%;min-height:38px;margin-top:6px;border:1px solid var(--line);border-radius:7px;padding:8px 9px;background:var(--surface);color:var(--ink);font-size:11px}.plan-form label small{display:block;margin-top:5px;color:var(--teal-dark);font-size:8px;font-weight:600}.plan-form-actions{display:flex;gap:7px;padding-top:19px}.plan-form-actions .add-button,.plan-form-actions .cancel-button{min-height:38px;white-space:nowrap}.repayment-table{border-top:1px solid var(--line)}.repayment-row,.repayment-table-head{display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr .8fr 46px;grid-gap:10px;gap:10px;align-items:center;padding:10px 20px}.repayment-table-head{background:#fbfcfc;color:var(--muted);font-size:9px;font-weight:700}.repayment-row{min-height:48px;border-top:1px solid #f0f2f3;color:#6d7a80;font-size:10px}.repayment-row>strong{color:var(--ink);font:11px DM Mono}.repayment-row>div{display:flex;gap:8px;justify-content:flex-end}.repayment-status{width:-moz-fit-content;width:fit-content;padding:4px 7px;border-radius:5px;font-size:9px;font-weight:700}.repayment-status.normal{color:var(--teal-dark);background:var(--teal-pale)}.repayment-status.paid{color:#6f8290;background:#edf2f4}.repayment-status.overdue{color:#a94f32;background:var(--orange-pale)}.repayment-status.deferred{color:#8c6d3d;background:#fff4db}.empty-plans{padding:20px;color:var(--muted);font-size:10px;text-align:center}.stress-stack{display:grid;grid-gap:17px;gap:17px}.stress-header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.stress-header h3{margin:7px 0 5px;font-size:21px}.stress-header p{margin:0;color:var(--muted);font-size:11px;line-height:1.6}.stress-presets{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px}.stress-presets button{min-height:43px;padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);font-size:10px;font-weight:700}.stress-presets button:hover{border-color:#9fcac1;color:var(--teal-dark)}.stress-presets button.active{border-color:var(--teal);background:var(--teal-pale);color:var(--teal-dark);box-shadow:inset 0 0 0 1px var(--teal)}.stress-workspace{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.35fr);grid-gap:17px;gap:17px;align-items:stretch}.stress-comparison,.stress-controls{min-height:350px}.simulation-only-badge{padding:5px 8px;border-radius:5px;background:#edf2f4;color:#6f8290;font-size:9px;font-weight:700}.stress-controls>label{display:block;margin-top:18px;color:var(--muted);font-size:10px;font-weight:700}.stress-controls>label>strong{float:right;color:var(--teal-dark);font:12px DM Mono}.stress-controls input:not([type=range]),.stress-controls select{display:block;width:100%;min-height:40px;margin-top:7px;padding:9px 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);font-size:11px}.stress-controls input[type=range]{display:block;width:100%;margin-top:16px}.stress-control-note{min-height:35px;margin-top:19px;color:var(--muted);font-size:9px;line-height:1.55}.stress-apply{width:100%;margin-top:12px}.stress-apply:disabled{cursor:not-allowed;opacity:.48;box-shadow:none;transform:none}.stress-table{margin-top:20px;border-top:1px solid var(--line)}.stress-table-head,.stress-table>div{display:grid;grid-template-columns:1.1fr 1fr 1fr;grid-gap:10px;gap:10px;align-items:center;min-height:53px;border-bottom:1px solid var(--line)}.stress-table-head{min-height:36px;color:var(--muted);font-size:9px;font-weight:700}.stress-table-head span:nth-child(n+2){text-align:right}.stress-table>div>span:first-child{color:var(--muted);font-size:10px}.stress-table strong{font:11px DM Mono;text-align:right;line-height:1.45}.stress-chart-card{min-height:330px}.stress-chart{margin-top:17px}.stress-chart-legend{display:flex;justify-content:flex-end;gap:16px;color:var(--muted);font-size:9px}.stress-chart-legend span{display:flex;align-items:center;gap:6px}.stress-chart-legend i{display:block;width:18px;height:2px}.baseline-line{background:#8ea2aa}.stressed-line{background:var(--orange)}.stress-chart svg{display:block;width:100%;height:205px;margin-top:8px;overflow:visible;background:repeating-linear-gradient(180deg,transparent 0,transparent calc(33.333% - 1px),#edf1f2 calc(33.333% - 1px),#edf1f2 33.333%)}.stress-zero-line{stroke:#c9d3d7;stroke-dasharray:2 2;vector-effect:non-scaling-stroke}.stress-baseline-path,.stress-stressed-path{fill:none;stroke-width:2;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.stress-baseline-path{stroke:#8ea2aa}.stress-stressed-path{stroke:var(--orange)}.stress-chart-months{display:flex;margin-top:8px;color:var(--muted);font:9px DM Mono}.stress-chart-months span{flex:1 1;text-align:center}.stress-actions h3{margin:7px 0 14px;font-size:17px}.stress-actions ul{margin:0;padding-left:18px;color:var(--muted);font-size:10px;line-height:1.75}.settings-stack{max-width:none;gap:17px}.settings-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.settings-summary>div{min-height:82px;padding:15px 17px;border:1px solid var(--line);border-radius:11px;background:var(--surface)}.settings-summary span{display:block;margin-bottom:9px;color:var(--muted);font-size:9px}.settings-summary strong{display:block;color:var(--ink);font:700 14px DM Mono}.settings-summary .settings-saved{display:flex;align-items:center;gap:7px;color:var(--teal-dark);font:700 11px Manrope}.settings-saved i{width:7px;height:7px;border-radius:50%;background:#36c29d;box-shadow:0 0 0 3px #e4f8f2}.settings-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);grid-gap:17px;gap:17px}.backup-card,.cloud-card,.settings-card{max-width:none}.backup-card h3,.settings-card h3{margin:7px 0 8px}.backup-card .muted,.cloud-card .muted,.settings-card .muted{line-height:1.65}.settings-card form{margin-top:20px}.settings-card .setting-field{margin-top:0}.settings-card .setting-field input:focus{outline:2px solid #10a48633;border-color:var(--teal)}.settings-save{display:block;margin:13px 0 0 auto}.settings-save:disabled{cursor:not-allowed;opacity:.45;box-shadow:none;transform:none}.setting-error{margin:7px 0 0;color:var(--orange);font-size:9px}.theme-options{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;margin-top:22px}.theme-options button{position:relative;display:grid;grid-template-columns:28px 1fr;grid-template-rows:1fr 1fr;grid-column-gap:9px;column-gap:9px;min-height:68px;padding:11px 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);text-align:left}.theme-options button>span{grid-row:1/3;align-self:center;display:grid;place-items:center;width:28px;height:28px;border-radius:7px;background:#f1f4f4;color:var(--muted);font-size:15px}.theme-options button strong{align-self:end;font-size:11px}.theme-options button small{color:var(--muted);font-size:8px}.theme-options button:hover{border-color:#9fcac1}.theme-options button.selected{border-color:var(--teal);background:color-mix(in srgb,var(--surface) 82%,var(--teal-pale));box-shadow:inset 0 0 0 1px var(--teal)}.theme-options button.selected>span{background:var(--teal-pale);color:var(--teal-dark)}.backup-card .card-title-row{align-items:flex-start}.backup-card .backup-actions{margin-top:15px}:root[data-theme=dark] body{background-image:radial-gradient(circle at 10% -10%,rgba(70,201,172,.08),transparent 34rem)}:root[data-theme=dark] .placeholder-copy{background:#172d2d;border-color:#294746;color:#a6b9ba}:root[data-theme=dark] .signal-strip{background:#30251f;border-color:#574033;color:#d9b59e}:root[data-theme=dark] .signal-strip strong{color:#f0c5a8}:root[data-theme=dark] .signal-strip.safe{background:#172d2d;border-color:#294746;color:#91d1c1}:root[data-theme=dark] .signal-strip.safe strong,:root[data-theme=dark] .signal-strip.safe>span:last-child{color:#91d1c1}:root[data-theme=dark] .overview-metric{background:var(--surface);border-color:var(--line)}:root[data-theme=dark] .overview-metric.metric-alert{background:#30251f;border-color:#574033}:root[data-theme=dark] .calibrate-button{background:var(--surface);color:var(--ink);border-color:var(--line)}:root[data-theme=dark] .icon-button:hover{border-color:#527a73}:root[data-theme=dark] .mini-progress{background:#26353a}:root[data-theme=dark] .chart-svg{background:repeating-linear-gradient(180deg,transparent 0,transparent calc(33.333% - 1px),#2c3a40 calc(33.333% - 1px),#2c3a40 33.333%)}:root[data-theme=dark] .plan-form,:root[data-theme=dark] .repayment-table-head{background:#152125}:root[data-theme=dark] .plan-form input,:root[data-theme=dark] .plan-form select{background:var(--surface);border-color:var(--line)}:root[data-theme=dark] .repayment-row{border-color:var(--line)}:root[data-theme=dark] .stress-chart svg{background:repeating-linear-gradient(180deg,transparent 0,transparent calc(33.333% - 1px),#2c3a40 calc(33.333% - 1px),#2c3a40 33.333%)}:root[data-theme=dark] .simulation-only-badge{background:#26353a;color:#a8b8bd}:root[data-theme=dark] .cashflow-type-badge.reminder,:root[data-theme=dark] .event-symbol.reminder{background:#203744;color:#8ec1dc}:root[data-theme=dark] .cashflow-account-amount.reminder,:root[data-theme=dark] .reminder-label{color:#8ec1dc}:root[data-theme=dark] .settings-summary>div{background:var(--surface)}:root[data-theme=dark] .settings-saved i{box-shadow:0 0 0 3px rgba(54,194,157,.15)}:root[data-theme=dark] .theme-options button{background:var(--surface);border-color:var(--line)}:root[data-theme=dark] .theme-options button>span{background:#26353a}@media (max-width:980px){.sidebar{position:static;height:auto;overflow:visible}.main-content{padding-left:28px;padding-right:28px}.bottom-grid,.content-grid,.decision-grid,.hero-grid,.settings-grid,.stress-workspace{grid-template-columns:1fr}.overview-metrics{grid-template-columns:1fr 1fr}}@media (max-width:650px){.manager-filters{grid-template-columns:1fr}.manager-title{gap:3px}.manager-title,.stress-header{align-items:flex-start;flex-direction:column}.stress-presets{grid-template-columns:1fr 1fr}.stress-table-head,.stress-table>div{grid-template-columns:.8fr 1fr 1fr}.stress-table strong{font-size:9px}.stress-chart svg{height:165px}.cashflow-ledger-head{align-items:flex-end;gap:12px}.cashflow-ledger-head .manager-note{display:none}.cashflow-account>header{align-items:flex-start;flex-wrap:wrap;padding:16px}.cashflow-account-copy{flex-basis:calc(100% - 80px)}.cashflow-account-amount{margin-left:75px}.cashflow-account-actions{margin-left:auto}.sidebar,.sidebar nav{overflow-x:auto}.sidebar nav{display:flex;gap:2px;padding-bottom:2px;scrollbar-width:none}.sidebar nav::-webkit-scrollbar{display:none}.nav-item{flex:0 0 auto;white-space:nowrap}.section-heading{align-items:flex-start}.placeholder-copy{line-height:1.65}.debt-form-grid{gap:0 10px}.debt-form-grid,.plan-form{grid-template-columns:1fr 1fr}.plan-form-actions{grid-column:1/-1;justify-content:flex-end;padding-top:0}.repayment-table{overflow-x:auto}.repayment-row,.repayment-table-head{min-width:680px}.topbar{gap:15px}.top-actions{align-self:flex-start}.calibrate-button{max-width:145px;padding:9px 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.signal-strip{align-items:flex-start;flex-direction:column;gap:6px}.signal-strip>span:last-child{margin-left:0}.debt-snapshot-grid,.overview-metrics{grid-template-columns:1fr}.debt-snapshot-grid{gap:12px}.settings-summary{grid-template-columns:1fr 1fr}.backup-actions{flex-wrap:wrap}}@media (max-width:520px){.debt-core-grid{grid-template-columns:1fr}.debt-account>header{align-items:flex-start;flex-wrap:wrap}.debt-account-actions{width:100%;margin-left:68px}.plan-form{grid-template-columns:1fr}.plan-form-actions{grid-column:auto}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.module-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.module-actions .file-button{position:relative;display:inline-flex;align-items:center}.module-actions .file-button input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}