:root{--ink:#243d38;--muted:#697c76;--teal:#176a60;--teal-dark:#12554c;--mint:#edf5ef;--line:#e4eae5;--paper:#fafbf8;--white:#fff;--font:ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html,body{min-height:100%;font-family:var(--font);color:var(--ink);background:var(--paper);margin:0}body{-webkit-font-smoothing:antialiased;font-size:15px}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:4px;outline:3px solid #b48236}button{touch-action:manipulation}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.035em}svg{flex-shrink:0}.skip-link{z-index:100;background:var(--teal);color:#fff;border-radius:8px;padding:12px 20px;position:fixed;top:-100px;left:18px}.skip-link:focus{top:12px}.brand{letter-spacing:-.04em;white-space:nowrap;align-items:center;gap:9px;font-size:18px;font-weight:700;display:inline-flex}.brand-mark{color:var(--teal);display:flex}.brand-light{font-weight:450}.small-label{color:var(--muted);font-size:12px}.tiny-dot{background:#649b7c;border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.eyebrow{letter-spacing:1.8px;color:var(--teal);align-items:center;gap:9px;font-size:10px;font-weight:650;display:flex}.primary-button,.secondary-button{border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:20px;min-height:46px;padding:0 21px;font-size:14px;font-weight:600;transition:background .15s,transform .15s;display:inline-flex}.primary-button{color:#fff;background:var(--teal)}.primary-button:hover{background:var(--teal-dark)}.primary-button:active{transform:translateY(1px)}.secondary-button{color:var(--teal);background:#fff;border-color:#c7d8ce}.secondary-button:hover{background:var(--mint)}.muted{color:var(--muted);line-height:1.7}.card-overline{color:var(--teal);letter-spacing:1.6px;font-size:10px;font-weight:650}.soft-badge{background:var(--mint);color:#426f5c;white-space:nowrap;border:1px solid #d9e8dd;border-radius:30px;align-items:center;gap:7px;padding:7px 11px;font-size:11px;display:inline-flex}.login-page{background:radial-gradient(at 15% 72%,#edf3e7 0,#0000 42%),#fafbf8;flex-direction:column;min-height:100dvh;display:flex}.login-header{justify-content:space-between;align-items:center;padding:32px 5.5%;display:flex}.login-main{grid-template-columns:1fr 422px;align-items:center;gap:75px;width:100%;max-width:1160px;margin:auto;padding:30px 50px 50px;display:grid}.login-intro{padding-top:22px}.login-intro h1{letter-spacing:-2.5px;margin-top:21px;font-size:52px;font-weight:550;line-height:1.14}.login-intro h1 span{color:var(--teal)}.login-intro>p{color:var(--muted);margin-top:22px;font-size:15px;line-height:1.9}.illustration{isolation:isolate;max-width:400px;height:235px;margin-top:18px;position:relative}.orb{z-index:-2;border-radius:100%;position:absolute}.orb-one{background:#f3e6c4;width:150px;height:150px;top:41px;left:12px}.orb-two{background:#d4e5d5;width:110px;height:110px;top:75px;right:18px}.arch{z-index:-1;border:27px solid #9fbba8;border-radius:90px 90px 10px 10px;width:128px;height:180px;position:absolute;top:20px;left:100px;transform:rotate(-13deg)}.arch-two{border-color:#c5d8c5;top:29px;left:158px;transform:rotate(15deg)}.floating-note{white-space:nowrap;color:#415a50;background:#fff;border:1px solid #ecede5;border-radius:12px;align-items:center;gap:11px;padding:12px 16px;font-size:11px;display:flex;position:absolute;box-shadow:0 8px 30px #253d3810}.note-one{top:39px;left:0;transform:rotate(-4deg)}.note-two{bottom:28px;left:126px;transform:rotate(3deg)}.note-icon{color:var(--teal);background:#eef4ec;border-radius:8px;padding:7px;display:flex}.note-check{background:var(--teal);color:#fff;border-radius:50%;padding:4px;display:flex}.spark{color:#b9944f;font-size:26px;position:absolute}.spark-one{top:14px;right:35px}.spark-two{color:#73947c;font-size:15px;bottom:28px;left:65px}.login-card{background:#fff;border:1px solid #e4e9e1;border-radius:18px;padding:40px 39px 0;box-shadow:0 12px 45px #263c3110}.login-card h2{letter-spacing:-1.2px;margin:13px 0 8px;font-size:31px;font-weight:550}.login-card>.muted{font-size:14px}.login-form{margin-top:30px}.field{flex-direction:column;gap:8px;margin-bottom:20px;display:flex}.field label{font-size:12px;font-weight:600}.field input{width:100%;height:46px;color:var(--ink);background:#fcfdfb;border:1px solid #dbe3dc;border-radius:8px;padding:0 13px;font-size:13px;transition:border-color .15s}.field input:focus{border-color:var(--teal)}.field input::placeholder{color:#8b9690}.password-input{position:relative}.password-input input{padding-right:49px}.show-password{color:#7b8b82;background:0 0;border:0;border-radius:6px;place-items:center;width:40px;height:40px;display:grid;position:absolute;top:3px;right:3px}.login-submit{justify-content:space-between;width:100%;margin-top:3px;padding-left:19px}.form-note{color:#829088;justify-content:center;align-items:center;gap:7px;margin:20px 0 28px;font-size:11px;display:flex}.form-error{color:#9d3e2f;background:#fff2ee;border:1px solid #f0d1c8;border-radius:8px;margin-bottom:15px;padding:12px;font-size:12px;line-height:1.6}.login-card-footer{color:#74847b;background:#fafcf9;border-top:1px solid #edf0e9;border-radius:0 0 18px 18px;justify-content:center;align-items:center;gap:8px;margin:0 -39px;padding:17px 20px;font-size:10px;display:flex}.login-footer{color:#85928a;border-top:1px solid #e9ede5;justify-content:space-between;padding:23px 5.5%;font-size:10px;display:flex}.app-layout{min-height:100dvh;display:flex}.sidebar{border-right:1px solid var(--line);background:#fff;flex-direction:column;width:245px;padding:30px 20px 18px;display:flex;position:fixed;inset:0 auto 0 0}.brand-link{padding:0 4px;display:block}.sidebar .brand{gap:5px;font-size:16px}.sidebar .brand-mark svg{width:34px}.nav-label{letter-spacing:1.7px;color:#95a19a;margin:46px 0 16px;padding:0 16px;font-size:9px}.main-nav{flex-direction:column;gap:7px;display:flex}.nav-item{color:#718078;border-radius:9px;align-items:center;gap:13px;min-height:47px;padding:13px 15px;font-size:13px;display:flex}.nav-item:hover{background:#f6f8f3}.nav-item.active{color:var(--teal);background:#eaf3ed;font-weight:600}.nav-dot{background:var(--teal);border-radius:50%;width:5px;height:5px;margin-left:auto}.sidebar-bottom{margin-top:auto}.sidebar-message{background:#f7f7ef;border:1px solid #eeeede;border-radius:10px;align-items:center;gap:12px;margin:20px 4px 25px;padding:17px;display:flex}.sidebar-message p{color:#78816a;font-size:11px;line-height:1.8}.sidebar-message strong{color:#586848;font-weight:500}.small-spark{color:#9da677;font-size:28px}.profile{border-top:1px solid var(--line);align-items:center;gap:10px;padding:18px 5px 0;display:flex}.avatar{color:#8d774e;background:#f2e9d8;border-radius:50%;flex-shrink:0;place-items:center;width:34px;height:34px;font-size:13px;font-weight:600;display:grid}.profile strong{font-size:12px;font-weight:600}.profile small{color:#8a978e;margin-top:3px;font-size:9px;display:block}.profile form{margin-left:auto}.icon-button{color:#7b8b80;background:0 0;border:0;border-radius:7px;place-items:center;width:40px;height:40px;display:grid}.icon-button:hover{background:var(--mint)}.app-body{flex-direction:column;flex:1;min-width:0;margin-left:245px;display:flex}.app-topbar{border-bottom:1px solid var(--line);background:#ffffff80;justify-content:space-between;align-items:center;height:77px;padding:0 44px;display:flex}.topbar-wordmark{color:#7f8c82;font-size:11px}.topbar-status{color:#7a897e;align-items:center;gap:7px;font-size:10px;display:flex}.mobile-logout{display:none}.app-main{width:100%;max-width:1360px;margin:0 auto;padding:39px 44px}.page-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:30px;display:flex}.page-heading h1{letter-spacing:-1.2px;margin:10px 0;font-size:32px;font-weight:550}.page-heading p{color:var(--muted);font-size:12px;line-height:1.7}.welcome-panel{background:#eaf2e8;border:1px solid #dfe8dc;border-radius:15px;justify-content:space-between;align-items:center;gap:10px;min-height:280px;padding:32px 36px;display:flex;position:relative;overflow:hidden}.welcome-copy{z-index:1;max-width:365px}.welcome-copy h2{letter-spacing:-1.3px;margin:13px 0;font-size:35px;font-weight:500;line-height:1.15}.welcome-copy p{color:#6a7e6d;max-width:315px;margin-bottom:22px;font-size:12px;line-height:1.9}.welcome-copy .primary-button{min-height:41px;padding:0 16px;font-size:11px}.welcome-art{flex-shrink:0;width:285px;height:245px;margin-right:18px;position:relative}.art-ring{border:23px solid #b7cbb0;border-radius:100px 100px 20px 20px;width:150px;height:195px;position:absolute;top:25px;left:60px;transform:rotate(12deg)}.ring-two{border-color:#d2dfc9;top:7px;left:6px;transform:rotate(-10deg)}.art-leaf{background:#729b80;border-radius:90% 10%;width:80px;height:130px;position:absolute;bottom:7px;right:0;transform:rotate(25deg)}.art-card{color:#537057;white-space:nowrap;background:#fff;border:1px solid #dfe7d8;border-radius:10px;align-items:center;gap:12px;padding:15px 20px;font-size:11px;display:flex;position:absolute;bottom:34px;left:25px;transform:rotate(-5deg);box-shadow:0 7px 25px #354f3812}.art-card svg{color:var(--teal)}.art-spark{color:#ae9460;font-size:32px;position:absolute;top:4px;right:6px}.section-heading{justify-content:space-between;align-items:center;gap:12px;margin:30px 0 15px;display:flex}.section-heading h2{letter-spacing:-.3px;font-size:15px;font-weight:600}.section-heading>span{color:#8c978e;font-size:10px}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;display:grid}.stat-card{border:1px solid var(--line);background:#fff;border-radius:11px;padding:20px 17px}.stat-card h3{letter-spacing:0;color:#728178;font-size:11px;font-weight:500}.stat-empty{color:#859990;margin:14px 0;font-size:29px;font-weight:350;line-height:1}.stat-card p{color:#8b978e;font-size:9px;line-height:1.6}.stat-highlight{background:#f1f6ee;border-color:#dfe8d7}.stat-highlight h3,.stat-highlight .stat-empty{color:var(--teal)}.lower-heading{margin-top:31px}.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.feature-card{border:1px solid var(--line);background:#fff;border-radius:11px;flex-direction:column;align-items:flex-start;padding:23px;transition:border-color .15s,transform .15s;display:flex}.feature-card:hover{border-color:#9db5a4;transform:translateY(-2px)}.feature-icon{color:#5b8470;background:#ecf3ec;border-radius:10px;place-items:center;width:42px;height:42px;margin-bottom:17px;display:grid}.feature-icon.amber{color:#ac8a45;background:#f8f0dc}.feature-icon.lavender{color:#8a80a8;background:#f0eef6}.feature-card h3{letter-spacing:-.2px;margin-bottom:9px;font-size:13px;font-weight:600}.feature-card p{color:#829086;flex:1;margin-bottom:22px;font-size:11px;line-height:1.8}.text-link{color:var(--teal);align-items:center;gap:10px;font-size:11px;font-weight:600;display:flex}.app-footer{text-align:center;color:#99a297;margin-top:auto;padding:0 30px 22px;font-size:9px}.empty-panel{border:1px solid var(--line);text-align:center;background:#fff;border-radius:16px;flex-direction:column;align-items:center;max-width:730px;margin:44px auto 70px;padding:48px 35px;display:flex}.empty-icon{background:var(--mint);width:78px;height:78px;color:var(--teal);border-radius:18px;place-items:center;margin-bottom:22px;display:grid}.empty-panel h2{margin:22px 0 12px;font-size:25px;font-weight:500}.empty-panel>p{max-width:390px;color:var(--muted);font-size:13px;line-height:1.8}.coming-list{text-align:left;flex-direction:column;gap:18px;margin:28px 0 34px;padding:0;list-style:none;display:flex}.coming-list li{color:#61766a;align-items:center;gap:12px;font-size:12px;line-height:1.6;display:flex}.coming-list li>span{background:var(--mint);width:24px;height:24px;color:var(--teal);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.empty-panel .secondary-button{font-size:12px}.error-page{flex-direction:column;align-items:flex-start;gap:24px;max-width:600px;margin:auto;padding:100px 25px;display:flex}.error-page h1{font-size:30px}.error-page p{color:var(--muted)}@media (min-width:1600px){.login-main{gap:105px;max-width:1200px}.login-intro h1{font-size:58px}.app-main{padding-top:48px}}@media (max-width:1100px){.sidebar{width:218px;padding-left:13px;padding-right:13px}.app-body{margin-left:218px}.app-main{padding:30px 26px}.app-topbar{padding:0 26px}.welcome-art{transform-origin:100%;width:220px;margin-right:0;transform:scale(.9)}.welcome-panel{padding:28px}.stat-grid{gap:10px}.stat-card{padding:17px 13px}.login-main{grid-template-columns:1fr 390px;gap:40px;padding:25px 40px 40px}.login-intro h1{font-size:43px}.illustration{transform-origin:0;transform:scale(.87)}.login-card{padding-left:30px;padding-right:30px}.login-card-footer{margin-left:-30px;margin-right:-30px}.feature-card{padding:18px}}@media (max-width:800px){.login-main{flex-direction:column;gap:28px;max-width:460px;margin:auto;padding:24px 24px 45px;display:flex}.login-intro{text-align:center;width:100%;padding:0}.login-intro .eyebrow{justify-content:center;font-size:9px}.login-intro h1{letter-spacing:-1.4px;margin-top:16px;font-size:35px}.login-intro>p{margin-top:12px;font-size:12px;line-height:1.75}.illustration{display:none}.login-card{width:100%;padding-top:30px}.login-header{padding:22px 24px}.login-header>.small-label{display:none}.login-header .brand{font-size:16px}.login-card h2{font-size:27px}.login-card .card-overline{font-size:9px}.login-card>.muted{font-size:13px}.login-form{margin-top:24px}.login-footer{padding:20px 24px}.login-page{background:radial-gradient(ellipse at 30% 10%, #eaf2e5 0, transparent 60%), var(--paper)}.sidebar{width:188px}.sidebar .brand{font-size:13px}.sidebar .brand-mark svg{width:30px}.nav-item{padding:12px;font-size:12px}.app-body{margin-left:188px}.app-main{padding:25px 22px}.welcome-art{display:none}.welcome-panel{min-height:245px}.welcome-copy{max-width:100%}.welcome-copy h2{font-size:31px}.welcome-copy p{max-width:400px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-grid{grid-template-columns:1fr}.feature-card{grid-template-columns:42px 1fr;column-gap:16px;padding:20px;display:grid}.feature-icon{grid-row:1/4;margin:0}.feature-card p{margin-bottom:12px}.feature-card .text-link{grid-column:2}.page-heading .soft-badge{display:none}.page-heading h1{font-size:29px}.empty-panel{padding:30px 23px}.empty-panel h2{font-size:23px}}@media (max-width:600px){.app-body{margin-left:0}.sidebar{border:0;width:0;padding:0;position:static;overflow:visible}.sidebar>.brand-link,.nav-label,.sidebar-bottom{display:none}.main-nav{z-index:20;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);padding:6px 8px max(6px, env(safe-area-inset-bottom));background:#fffffffa;border-top:1px solid #e1e9df;flex-direction:row;justify-content:space-around;position:fixed;bottom:0;left:0;right:0}.nav-item{border-radius:8px;flex-direction:column;flex:1;gap:5px;max-width:100px;padding:8px 6px;font-size:10px}.nav-dot{display:none}.nav-item svg{width:21px;height:21px}.nav-item.active{background:#f0f5ed}.app-topbar{height:62px;padding:0 21px}.topbar-wordmark{color:var(--teal);font-size:12px;font-weight:600}.topbar-status{display:none}.mobile-logout{display:block}.app-main{padding:29px 20px 30px}.page-heading{margin-bottom:24px}.page-heading .eyebrow{font-size:9px}.page-heading h1{font-size:30px}.page-heading p{max-width:290px;font-size:12px}.welcome-panel{background:radial-gradient(at 100% 0,#dce9d6 0,#0000 70%),#edf3e9;border-radius:13px;min-height:0;padding:27px 25px}.welcome-copy .card-overline{font-size:9px}.welcome-copy h2{margin-top:13px;font-size:33px}.welcome-copy p{font-size:12px;line-height:1.8}.section-heading{align-items:flex-start;margin-top:27px}.section-heading h2{font-size:14px}.section-heading>span{text-align:right;max-width:90px;font-size:9px;line-height:1.6}.stat-card{padding:18px 15px}.stat-card h3{font-size:11px}.stat-card p{font-size:10px}.feature-card p{font-size:11px}.feature-card h3{font-size:13px}.app-footer{padding-bottom:94px;font-size:10px}.empty-panel{margin:28px auto 22px;padding:34px 20px}.empty-panel>p,.coming-list li{font-size:12px}.empty-panel h2{font-size:23px}.brand-mark svg{width:33px;height:33px}.login-main{gap:25px;padding-top:12px}.login-intro h1{font-size:33px}.login-intro>p{font-size:12px}.login-card{border-radius:14px;padding:27px 25px 0}.login-card-footer{border-radius:0 0 14px 14px;margin:0 -25px;padding:16px 12px}.field input{height:49px;font-size:16px}.show-password{top:5px}.login-card h2{font-size:28px}.login-submit{min-height:48px}.login-footer{font-size:9px}.login-form .field{margin-bottom:18px}.form-note{margin-bottom:24px}.desktop-break{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.planner-card{border:1px solid var(--line);background:#fff;border-radius:15px;min-width:0;padding:26px}.card-stack{flex-direction:column;gap:20px;min-width:0;display:flex}.card-title{align-items:center;gap:14px;margin-bottom:23px;display:flex}.card-title h2,.planner-card h2{letter-spacing:-.5px;font-size:19px;font-weight:600}.card-title p,.planner-card>p{color:var(--muted);margin-top:5px;font-size:13px;line-height:1.7}.number-badge{background:var(--mint);width:38px;height:38px;color:var(--teal);border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;display:grid}.plan-columns{grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);align-items:start;gap:24px;display:grid}.plan-aside{position:sticky;top:25px}.soft-card{background:#f0f5ec;border-color:#dde7d8}.soft-card h2{margin:15px 0}.soft-card .text-link{margin-top:24px;font-size:13px}.small-copy{color:var(--muted);line-height:1.7;font-size:12px!important}.planner-field{min-width:0;margin-bottom:19px}.planner-field label{margin-bottom:8px;font-size:13px;font-weight:500;display:block}.planner-field input{width:100%;min-width:0;height:46px;color:var(--ink);font:inherit;background:#fff;border:1px solid #d9e2db;border-radius:8px;padding:0 12px;font-size:15px}.planner-field input:focus{border-color:var(--teal)}.field-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;display:grid}.field-hint{color:var(--muted);margin-top:6px;font-size:11px;line-height:1.6;display:block}.date-hint{margin:-4px 0 22px}.number-control{background:#fff;border:1px solid #d9e2db;border-radius:8px;align-items:center;min-width:0;display:flex;overflow:hidden}.number-control:focus-within{outline-offset:2px;outline:2px solid #73a79b}.number-control input{text-align:center;appearance:textfield;font-variant-numeric:tabular-nums;border:0;border-radius:0;padding:0 4px}.number-control input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.number-control input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.number-control input:focus-visible{outline:none}.number-control button{min-width:42px;height:46px;color:var(--teal);background:#f6f8f3;border:0;font-size:21px}.number-control button:hover{background:#e9f2e8}.number-control button:disabled{cursor:default;opacity:.45}.currency-prefix{color:#71847b;padding-left:13px;font-size:14px}.currency-prefix+input{text-align:left;padding-left:9px}.number-control.invalid{border-color:#bd5947}.input-error{margin-top:6px;font-size:12px;line-height:1.7;display:block;color:#a23827!important}.save-panel{border:1px solid var(--line);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:20px;margin:24px 0;padding:21px 24px;display:flex}.save-panel p{font-size:13px}.positive{color:var(--teal)!important}.negative{color:#a63b29!important}.muted-copy{color:var(--muted)}.summary-lines{margin:23px 0;padding:0}.summary-lines>div{border-bottom:1px solid #e2e9df;justify-content:space-between;align-items:baseline;gap:15px;padding:10px 0;font-size:13px;display:flex}.summary-lines dt{color:var(--muted)}.summary-lines dd{text-align:right;font-variant-numeric:tabular-nums;margin:0;font-weight:600}.summary-lines>div:last-child{border-bottom:0}.quiet-button{color:var(--teal);background:0 0;border:0;border-radius:7px;min-height:44px;padding:11px 10px;font-size:12px;font-weight:550}.quiet-button:hover{background:#edf3eb}.secondary-button,.primary-button{justify-content:center}.full-width{width:100%}.exploration-note{background:#f1f5ec;border:1px solid #e2e9da;border-radius:11px;align-items:center;gap:14px;margin-bottom:25px;padding:18px 21px;display:flex}.exploration-icon{color:#7a9a73;font-size:28px}.exploration-note strong{font-size:13px;font-weight:600}.exploration-note p{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.7}.exploration-note .quiet-button{flex-shrink:0;margin-left:auto}.calculator-grid{grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);align-items:start;gap:24px;display:grid}.calculator-summary{flex-direction:column;gap:20px;display:flex;position:sticky;top:20px}.activity-symbol{color:#3c7561;background:#e9f2e9;border-radius:12px;flex-shrink:0;place-items:center;width:43px;height:43px;font-size:14px;font-weight:600;display:grid}.activity-symbol.sunday{color:#5e8978;background:#eaf2ef}.activity-symbol.holiday{color:#977126;background:#faf1db}.activity-symbol.camp{color:#85739e;background:#f1edf7}.activity-total{letter-spacing:-.6px;white-space:nowrap;margin-left:auto;font-size:19px;font-weight:550}.activity-card .card-title{flex-wrap:wrap}.activity-card .card-title>div{flex:1}.activity-card .card-title p{font-size:11px}.calculation-caption{color:#6e7d72;background:#f7f9f5;border-radius:8px;padding:13px 16px;margin:0!important;font-size:12px!important}.travel-card{align-items:center;gap:24px;display:flex}.travel-card>div:first-child{flex:1}.travel-card p{color:var(--muted);margin-top:7px;font-size:12px;line-height:1.7}.travel-card .planner-field{max-width:160px;margin:0}.summary-card{background:#f3f7ef;border-color:#dfe9d8}.balance-label{color:var(--muted);margin-bottom:7px;font-size:13px;margin-top:23px!important}.summary-balance{letter-spacing:-1.6px;color:var(--teal);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:40px;font-weight:550;display:block}.summary-explainer{font-size:11px!important}.comparison-note{background:#e7efe2;border-radius:7px;padding:10px 13px;font-size:12px!important}.summary-card .summary-lines{margin:18px 0 10px}.deficit-card{background:#fff5ef;border-color:#eed8cb}.deficit-card .comparison-note{background:#f8e6db}.breakdown{flex-direction:column;align-items:center;gap:8px;margin:18px 0 22px;display:flex}.donut-wrap{flex-shrink:0;width:180px;height:180px;position:relative}.cost-donut{width:100%;height:100%}.donut-segment{transition:stroke-dasharray .3s,stroke-dashoffset .3s}.donut-centre{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:3px;display:flex;position:absolute;inset:0}.donut-centre strong{letter-spacing:-1px;font-size:30px;font-weight:500}.donut-centre span{color:var(--muted);font-size:10px}.cost-legend{width:100%;margin:0;padding:0}.cost-legend>div{justify-content:space-between;align-items:center;gap:14px;padding:9px 0;font-size:12px;display:flex}.cost-legend dt{align-items:center;gap:8px;display:flex}.cost-legend dt i{border-radius:50%;flex-shrink:0;width:8px;height:8px}.cost-legend dt small{color:#7e8b81;font-size:10px}.cost-legend dd{white-space:nowrap;font-variant-numeric:tabular-nums;margin:0;font-weight:550}.possibilities{background:#faf8ed;border:1px solid #e6e4d3;border-radius:14px;min-width:0;padding:25px}.possibilities h3{margin-top:20px;font-size:22px;font-weight:500;line-height:1.4}.possibilities h3 strong{color:var(--teal);font-weight:600}.possibilities p{color:#6f7969;margin-top:11px;font-size:13px;line-height:1.8}.possibilities>small{color:#7e8675;margin-top:16px;font-size:11px;line-height:1.7;display:block}.possibility-options{flex-wrap:wrap;gap:5px;margin-top:17px;display:flex}.possibility-options button{color:#6d7863;background:0 0;border:1px solid #0000;border-radius:30px;min-height:38px;padding:9px 11px;font-size:11px}.possibility-options button[aria-pressed=true]{color:var(--teal);background:#fff;border-color:#e1dfcc;box-shadow:0 2px 3px #334e3510}.apply-confirmation{border-top:1px solid #d6e2d0;margin-top:22px;padding-top:20px}.apply-confirmation h3{font-size:16px}.apply-confirmation p{color:var(--muted);margin:10px 0 15px;font-size:12px;line-height:1.8}.button-row{flex-wrap:wrap;gap:6px;display:flex}.feedback-area{margin-top:20px;scroll-margin-top:20px}.success-message{color:var(--teal);background:#edf5e9;border:1px solid #d9e7d3;border-radius:10px;align-items:center;gap:10px;margin-bottom:20px;padding:16px 20px;font-size:13px;display:flex}.saved-scenarios{margin-top:24px}.saved-scenarios .section-heading{margin:0 0 20px}.saved-scenarios h2{margin:9px 0}.saved-scenarios .section-heading p{color:var(--muted);font-size:12px;line-height:1.8}.scenario-save{background:#f7f9f4;border-radius:10px;align-items:flex-end;gap:14px;margin-bottom:22px;padding:19px;display:flex}.scenario-save .planner-field{flex:1;margin:0}.scenario-save .secondary-button{min-height:46px}.scenarios-empty{color:#7e9181;justify-content:center;align-items:center;gap:18px;min-height:120px;display:flex}.scenarios-empty p{font-size:14px;line-height:1.8}.scenarios-empty span{font-size:12px}.scenario-row{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:18px;padding:20px 0;display:flex}.scenario-info{flex:1;min-width:160px}.scenario-info h3{overflow-wrap:anywhere;font-size:15px}.scenario-info p{color:var(--muted);margin-top:6px;font-size:11px;line-height:1.7}.scenario-balance{text-align:right}.scenario-balance strong{white-space:nowrap;font-size:18px;font-weight:550}.scenario-balance small{margin-top:5px;font-size:10px;display:block}.scenario-actions{align-items:center;gap:6px;display:flex}.scenario-actions .secondary-button{padding:9px 15px;font-size:12px}.delete-confirmation{background:#fff4ed;border-radius:8px;flex-wrap:wrap;flex-basis:100%;align-items:center;gap:10px;padding:10px 15px;font-size:12px;display:flex}.delete-confirmation p{flex:1;min-width:160px}.saved-scenarios>.small-copy{margin-top:15px}.mobile-balance{display:none}.funding-hero{background:radial-gradient(at 100% 0,#dfeadb,#0000 65%),#edf4e9;border:1px solid #dde8d7;border-radius:16px;grid-template-columns:1fr 1fr;align-items:center;gap:30px;padding:32px 35px;display:grid}.hero-dates{color:#72826c;margin-top:7px;font-size:12px}.funding-hero h2{letter-spacing:-2px;color:var(--teal);overflow-wrap:anywhere;font-size:52px;font-weight:500}.hero-caption{color:#72826c;margin:9px 0 24px;font-size:13px;line-height:1.8}.hero-funding>.soft-badge{margin-left:auto;display:table}.funding-bar-block{margin-top:35px}.bar-labels{color:var(--muted);justify-content:space-between;gap:20px;font-size:11px;display:flex}.bar-labels>span:last-child{text-align:right}.bar-labels strong{color:var(--ink);white-space:nowrap;margin-top:6px;font-size:15px;font-weight:550;display:block}.funding-track{background:#d5e2cf;border-radius:20px;height:12px;margin:15px 0 12px;overflow:hidden}.funding-track>span{background:#3e8170;border-radius:20px;height:100%;transition:width .3s;display:block}.funding-track.over-budget>span{background:#b45b43}.funding-bar-block>p{color:#76866f;font-size:11px}.deficit-hero{background:#fff2e8;border-color:#edd7ca}.deficit-hero h2{color:#a63b29}.funding-stat strong{letter-spacing:-.7px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;margin:16px 0 12px;font-size:clamp(19px,1.7vw,28px);font-weight:550;display:block}.funding-stat p{font-size:11px}.overview-lower{grid-template-columns:1.2fr 1fr;gap:23px;margin-top:27px;display:grid}.overview-lower .section-heading{margin:0 0 10px}.overview-lower h2{margin-top:9px;font-size:18px}.overview-lower .breakdown{flex-direction:row;gap:25px}.overview-lower .donut-wrap{width:160px;height:160px}.spending-note{color:#738071;background:#f2f4ed;border-radius:11px;align-items:flex-start;gap:15px;margin-top:25px;padding:20px 23px;display:flex}.spending-note p{font-size:12px;line-height:1.9}.spending-note strong{font-weight:600}.funding-hero .card-overline{overflow-wrap:anywhere}.planner-card .card-overline{font-size:10px}@media (max-width:1200px){.plan-columns,.calculator-grid{grid-template-columns:minmax(0,1.4fr) minmax(265px,1fr);gap:18px}.planner-card{padding:22px}.summary-balance{font-size:35px}.activity-total{font-size:17px}.activity-card .card-title p{display:none}.overview-lower .breakdown{flex-direction:column}.field-pair{gap:0 13px}.number-control button{min-width:36px}}@media (max-width:1000px){.calculator-grid,.plan-columns{grid-template-columns:1fr}.plan-aside,.calculator-summary{position:static}.calculator-summary{grid-template-columns:1fr 1fr;align-items:start;display:grid}.calculator-summary .possibilities{margin:0}.funding-hero{gap:22px;padding:27px}.funding-hero h2{font-size:40px}.funding-hero{grid-template-columns:1fr}.hero-funding>.soft-badge{display:none}.funding-bar-block{margin-top:0}.overview-lower{grid-template-columns:1fr}.overview-lower .breakdown{flex-direction:row}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.funding-stat strong{font-size:25px}.plan-aside .summary-lines{max-width:440px}.travel-card{gap:18px}}@media (max-width:700px){.calculator-summary{grid-template-columns:1fr}.exploration-note{flex-wrap:wrap;gap:10px}.exploration-note>div{flex:1;min-width:180px}.exploration-note .quiet-button{min-height:35px;margin-left:0;padding:5px 0}.activity-card .card-title{gap:12px}.activity-total{font-size:20px}.overview-lower .breakdown{flex-direction:column}.save-panel{flex-direction:column;align-items:flex-start}.save-panel .primary-button{width:100%}.scenario-save{flex-direction:column;align-items:stretch}.scenario-row{gap:15px}.scenario-actions{flex-basis:100%}.summary-balance{font-size:43px}.planner-field input{font-size:16px}.travel-card{flex-direction:column;align-items:stretch}.travel-card .planner-field{max-width:none}.funding-hero h2{font-size:43px}}@media (max-width:600px){.planner-card{padding:22px 19px}.card-title p{font-size:12px}.activity-card .card-title>div{min-width:100px}.activity-card .card-title{margin-bottom:20px}.activity-total{flex-basis:100%;margin-left:55px}.planner-field label{font-size:12px;line-height:1.5}.number-control button{min-width:38px}.field-pair{gap:0 12px}.number-control input{height:47px}.calculator-page{padding-bottom:62px}.mobile-balance{bottom:calc(68px + env(safe-area-inset-bottom));z-index:19;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);color:var(--teal);background:#eaf3e5f5;border-top:1px solid #cfdfc7;justify-content:space-between;align-items:center;gap:15px;padding:12px 20px;display:flex;position:fixed;left:0;right:0}.mobile-balance>span{font-size:11px}.mobile-balance small{color:#74856d;margin-top:4px;font-size:9px;display:block}.mobile-balance strong{letter-spacing:-.6px;font-size:22px;font-weight:550}.mobile-deficit{color:#a63b29;background:#fff0e8f5;border-color:#eccaba}.funding-hero{padding:25px}.funding-stat strong{font-size:22px}.overview-lower .breakdown{flex-direction:row;gap:18px}.overview-lower .donut-wrap{width:130px;height:130px}.cost-legend dt small{display:none}.cost-legend>div{gap:8px;font-size:11px}.donut-centre strong{font-size:25px}.donut-centre span{font-size:9px}.possibilities{padding:23px}.scenario-info{min-width:125px}.page-heading{flex-wrap:wrap}.page-heading>.secondary-button{font-size:12px}.summary-card .breakdown{flex-direction:row;gap:17px}.summary-card .donut-wrap{width:135px;height:135px}}@media (max-width:390px){.field-pair{grid-template-columns:1fr}.overview-lower .breakdown,.summary-card .breakdown{flex-direction:column}.funding-stat strong{font-size:19px}.stat-card{padding:17px 12px}.funding-hero h2{font-size:38px}.activity-total{font-size:20px}.bar-labels{gap:10px}.bar-labels strong{font-size:13px}.scenario-balance strong{font-size:16px}.mobile-balance strong{font-size:20px}}@media (prefers-reduced-motion:reduce){.donut-segment,.funding-track>span{transition:none}}
