
:root{--background:#081827;--foreground:#eaf5f9;--primary:#43c7c2;--primary-foreground:#071c29;--border:#244055;--input:#244055;--ring:#43c7c2;--radius:.65rem}*{box-sizing:border-box}html{font-size:16px}body{margin:0;background:#081827;color:#eaf5f9;font-family:Arial,Helvetica,sans-serif}button,input,select{font:inherit}button{cursor:pointer}.shell{display:flex;min-height:100vh;background:#0c2031}.side{position:sticky;top:0;height:100vh;width:246px;flex:none;border-right:1px solid #223d50;background:#091b2b;display:flex;flex-direction:column;padding:28px 16px}.brand{display:flex;gap:12px;align-items:center;padding:4px 12px 34px}.brandmark{background:#46d0cb;color:#08212c;border-radius:11px;width:38px;height:38px;display:grid;place-items:center;transform:rotate(-8deg)}.brandmark svg{transform:rotate(8deg)}.brand b{font-size:19px;letter-spacing:-.05em}.brand small{display:block;font-size:9px;letter-spacing:.13em;color:#8baab9;margin-top:4px}.side nav{display:grid;gap:5px}.side nav button{display:flex;align-items:center;gap:14px;width:100%;height:47px;border:0;background:transparent;color:#9cb5c3;text-align:left;padding:0 17px;border-radius:9px;font-weight:600}.side nav button:hover,.side nav .active{background:#18384a;color:#d7fbf8}.side nav .active{border-left:3px solid #45d3cc}.sidefoot{margin-top:auto;color:#6e94a5;font-size:12px;padding:12px}.statusdot{display:inline-block;width:7px;height:7px;border-radius:100%;background:#39c9ab;margin-right:8px}.main{min-width:0;flex:1;display:flex;flex-direction:column}.top{height:75px;border-bottom:1px solid #254053;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,5vw,72px)}.crumb,.eyebrow{color:#70d4d2;font-weight:700;font-size:12px;letter-spacing:.18em}.crumb{color:#a1bdc9}.crumb span{margin:0 10px;color:#567487}.topright{display:flex;align-items:center;gap:16px;color:#7d9dad;font-size:11px;font-weight:700;letter-spacing:.13em}.topright button{width:33px;height:33px;border:1px solid #3e6371;border-radius:50%;background:#1d4a58;color:#b6f7ee;font-size:11px}.mobilebrand{display:none}.content{max-width:1300px;width:100%;margin:0 auto;padding:40px clamp(22px,5vw,72px) 60px;flex:1}.heading{display:flex;justify-content:space-between;align-items:center;padding:11px 4px 32px}.heading h1{font-size:clamp(36px,4.3vw,60px);line-height:1.05;letter-spacing:-.055em;margin:17px 0;color:#f5fbfd}.heading h1 em{font-style:normal;color:#56d1cb}.heading p,.pageheading p{color:#9eb7c4;font-size:16px;line-height:1.5;margin:0}.headingIcon{color:#448a9c;border:1px solid #245064;border-radius:50%;width:116px;height:116px;display:grid;place-items:center;background:radial-gradient(circle,#1b4556,#102b3b)}.search{height:55px;background:#162f40;border:1px solid #315366;border-radius:11px;display:flex;align-items:center;gap:14px;color:#69b9bd;padding:0 18px;max-width:810px}.search input{background:transparent;border:0;outline:0;color:white;flex:1;min-width:0}.search input::placeholder{color:#86a8b7}.search span{border:1px solid #3d5c6a;padding:3px 6px;border-radius:4px;color:#7fa0ac;font-size:12px}.sectionhead{display:flex;align-items:center;justify-content:space-between;margin:37px 0 16px}.sectionhead h2,.panel h2{font-size:20px;letter-spacing:-.03em;margin:0}.sectionhead button{border:0;background:transparent;color:#5ccec9;display:flex;gap:7px;align-items:center;font-size:14px;font-weight:700}.toolgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.toolcard{min-height:150px;border:1px solid #294a5d;border-radius:11px;background:#143044;color:#e9f6f8;text-align:left;padding:18px;position:relative;display:flex;flex-direction:column;transition:background .15s,transform .15s}.toolcard:hover{background:#1b4152;transform:translateY(-2px)}.toolicon{width:37px;height:37px;border-radius:9px;display:grid;place-items:center;background:#205363;color:#5ce2dc;margin-bottom:17px}.toolcard strong{font-size:15px}.toolcard small{font-size:12px;color:#86aab8;margin-top:5px}.cardarrow{position:absolute;right:15px;top:23px;color:#669daa}.dashboardgrid,.split{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:25px}.panel{background:#122c3e;border:1px solid #294a5c;border-radius:12px;padding:24px;min-width:0}.panel .sectionhead{margin:0 0 21px}.panel h2{margin-bottom:22px}.panel .sectionhead h2{margin:0}.muted,.hint{color:#96b3c0;line-height:1.5}.hint{font-size:13px;margin:14px 0 20px}.listrow{display:flex;justify-content:space-between;border-top:1px solid #284656;padding:15px 0;font-size:14px;gap:10px}.listrow b{color:#8daebc;font-size:13px}.listrow b.good{color:#52d3be}.listrow b.expired{color:#ffae96}.pageheading{margin-bottom:28px}.pageheading h1{font-size:clamp(34px,4vw,49px);letter-spacing:-.05em;margin:10px 0}.workspace{display:grid;grid-template-columns:245px minmax(0,1fr);gap:18px;margin-top:23px}.toolmenu{background:#102b3c;border:1px solid #28485a;border-radius:11px;padding:9px;align-self:start}.toolmenu button{border:0;background:transparent;color:#adc2cc;display:flex;align-items:center;gap:11px;width:100%;padding:13px 10px;text-align:left;border-radius:8px;font-size:14px}.toolmenu button span{flex:1}.toolmenu button.selected,.toolmenu button:hover{background:#205163;color:#dbfbf7}.calculator{background:#133044;border:1px solid #2d5264;border-radius:12px;padding:clamp(20px,3vw,34px)}.calchead{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;border-bottom:1px solid #315263;padding-bottom:20px;margin-bottom:23px}.calchead h2{font-size:25px;letter-spacing:-.04em;margin:7px 0 0}.star,.starred{border:1px solid #355b69;border-radius:8px;background:#1a4051;color:#a5c4c7;padding:8px}.starred{color:#f5c870}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin-bottom:22px}.field{display:flex;flex-direction:column;gap:8px;color:#bdd0d7;font-size:14px;font-weight:600}.field input,.field select{height:47px;background:#0c2536;color:#f5fbfd;border:1px solid #386073;border-radius:7px;padding:0 12px;width:100%;font-size:16px}.field input:focus,.field select:focus{outline:2px solid #55d6ce;outline-offset:1px}.calcbutton{height:49px;background:#54d5ce;color:#082432;font-weight:800;border:0;padding:0 22px}.calcbutton:hover{background:#84e6df}.results{background:#0b2736;border:1px solid #38776e;border-radius:9px;padding:18px 20px;margin-top:24px}.results .eyebrow{margin-bottom:8px}.resultrow{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #2a4c55;padding:12px 0;color:#a9c1cb}.resultrow strong{color:#e9fffb;text-align:right}.error,.saveerror{color:#ffc2b4;background:#4d2e36;border:1px solid #99545a;padding:12px 15px;border-radius:7px}.saveerror{margin-top:25px}.disclaimer{font-size:13px;line-height:1.5;color:#8eaebb;margin:23px 0 0}.coming{font-size:12px;color:#6d98a6;letter-spacing:.08em;margin:25px 0}.saved{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #29495a;padding:16px 0}.saved p{color:#9eb9c3;margin:6px 0;font-size:14px}.saved small{color:#7da5b2}.saved button,.goal button{border:0;background:transparent;color:#83b8bd;padding:9px}.hoursgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.hoursgrid div{background:#0c2637;border-radius:8px;padding:14px 8px;text-align:center}.hoursgrid strong{display:block;font-size:21px;color:#67ded5}.hoursgrid span{display:block;font-size:12px;text-transform:capitalize;color:#9db8c3;margin-top:4px}.subheading{margin-top:30px!important}.goal{border-top:1px solid #31515e;padding:16px 0}.goal>div{display:flex;justify-content:space-between;align-items:center}.goal small{color:#9ab9c2}.recent{display:flex;justify-content:space-between;border:0;border-top:1px solid #2d4e5d;background:transparent;color:#cbe8e9;padding:13px 0;width:100%}footer{border-top:1px solid #244353;color:#6e96a5;padding:20px clamp(22px,5vw,72px);font-size:12px}.bottomnav{display:none}@media(max-width:1000px){.toolgrid{grid-template-columns:repeat(2,1fr)}.side{width:205px}.brand small{font-size:8px}}@media(max-width:720px){.side,.crumb,.topright span{display:none}.top{height:60px;padding:0 20px}.mobilebrand{display:flex;align-items:center;gap:8px;font-size:19px;font-weight:800}.content{padding:25px 18px 100px}.headingIcon{display:none}.heading{padding-bottom:24px}.heading h1{font-size:39px}.toolgrid{gap:10px}.toolcard{min-height:140px;padding:14px}.dashboardgrid,.split,.workspace{grid-template-columns:1fr}.workspace{gap:12px}.toolmenu{display:flex;overflow-x:auto;white-space:nowrap}.toolmenu button{width:auto;flex:none}.toolmenu button svg:last-child{display:none}.fields{gap:12px}.bottomnav{display:flex;position:fixed;bottom:0;left:0;right:0;background:#091b2b;border-top:1px solid #2c5262;z-index:10;justify-content:space-around;padding:7px 0 max(7px,env(safe-area-inset-bottom))}.bottomnav button{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0;flex:1;background:transparent;border:0;color:#89aab8;font-size:10px}.bottomnav button.active{color:#61ded5}footer{display:none}}@media(max-width:390px){.fields{grid-template-columns:1fr}.toolcard strong{font-size:14px}.heading h1{font-size:35px}}
.pathwayLink{display:flex;align-items:center;justify-content:space-between;color:#e8ad76;text-decoration:none;font-size:14px;font-weight:700;padding:17px;border-top:1px solid #2b4a5a;margin-top:14px}.pathwayLink:hover,.topright a:hover,footer a:hover{color:#ffd0a4}.topright a,footer a{color:#e8ad76;text-decoration:none;font-size:13px;letter-spacing:0;text-transform:none}.mobilebrand small{font-size:10px;color:#e8ad76;font-weight:600;margin-left:2px}.bottomnav a{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0;flex:1;color:#e8ad76;text-decoration:none;font-size:10px}@media(max-width:720px){.topright a{display:none}.mobilebrand{font-size:17px}.mobilebrand small{font-size:9px}}@media(max-width:400px){.mobilebrand small{display:none}}
.installPage{min-height:100vh;background:radial-gradient(circle at 80% 0,#214b5b,#091b2b 55%);display:grid;place-items:center;padding:22px;color:#eaf5f9}.installCard{max-width:620px;width:100%;border:1px solid #345466;background:#102b3c;border-radius:17px;padding:clamp(24px,6vw,48px)}.installEyebrow{font-size:12px;letter-spacing:.16em;color:#5dd8d1;font-weight:800}.installCard h1{font-size:clamp(34px,7vw,50px);letter-spacing:-.05em;line-height:1.05;margin:18px 0}.installCard p{color:#a9c3cc;line-height:1.6}.installSteps{border-top:1px solid #345466;margin:26px 0;padding-top:8px}.installSteps h2{font-size:18px;margin:21px 0 9px}.installSteps ol{padding-left:24px;color:#d0e2e6;line-height:1.8}.installNote{border-top:1px solid #345466;padding-top:17px;font-size:13px}.installButton{border:0;border-radius:8px;padding:15px 24px;background:#58d5cf;color:#092c38;font-weight:800;font-size:16px}.installBack{display:inline-block;color:#f4aa75;margin:17px 20px 0 0;text-decoration:none;font-weight:700}
.profileInstall{display:inline-block;color:#f4aa75;text-decoration:none;font-weight:700;margin-top:17px}.profileInstall:hover{text-decoration:underline}

.ui-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border-radius:8px;padding:12px 18px;background:#54d5ce;color:#082432;border:1px solid #54d5ce;font-weight:700}.ui-button.outline{background:transparent;color:#eaf5f9}.ui-button:disabled{opacity:.5;cursor:not-allowed}.progress{height:8px;background:#29495a;border-radius:8px;overflow:hidden;margin:12px 0}.progress>div{height:100%;background:#54d5ce}.saveerror a{color:inherit;font-weight:bold;text-decoration:underline}.brand small,.sidefoot,.toolcard small,.hint,.disclaimer,.hoursgrid span,footer{font-size:14px}.sidefoot .statusdot{display:none}
.accountCard{max-width:560px}.accountBrand{color:#eaf5f9;text-decoration:none;font-size:20px;font-weight:800}.accountCard h1{font-size:38px}.accountForm{display:grid;gap:18px;margin:26px 0}.accountForm label{display:grid;gap:8px;font-size:16px;color:#d0e2e6;font-weight:600}.accountForm input{min-height:48px;border:1px solid #386073;border-radius:7px;background:#0c2536;color:white;padding:12px;font-size:16px;width:100%}.accountForm input:focus{outline:2px solid #55d6ce;outline-offset:2px}.accountCard button:disabled{opacity:.5;cursor:not-allowed}.accountLinks,.accountActions{display:flex;flex-wrap:wrap;gap:14px;margin:18px 0}.accountLinks button,.accountText{border:0;background:none;color:#82e5dc;font-size:16px;padding:0;text-align:left;text-decoration:underline}.accountActions button{border:1px solid #386073;border-radius:7px;background:#153547;color:#eaf5f9;padding:12px 16px;font-size:16px}.accountFooter{border-top:1px solid #345466;padding-top:20px;display:flex;flex-wrap:wrap;gap:18px;margin-top:26px}.accountFooter a,.accountImport a{color:#f4aa75;font-size:16px}.accountNotice{background:#153d3e;border:1px solid #38776e;padding:14px;border-radius:7px;line-height:1.5}.accountEmail{overflow-wrap:anywhere}.passwordHint{font-size:14px!important;margin:0}.recoveryCode{display:block;background:#081827;padding:18px;border:1px solid #386073;font-size:16px;overflow-wrap:anywhere;user-select:all;line-height:1.7;border-radius:7px}.accountCheck{display:flex;align-items:center;gap:12px;font-size:16px;margin:24px 0;line-height:1.5}.accountCheck input{width:22px;height:22px;flex:none}.accountImport{border-top:1px solid #345466;margin-top:24px;padding-top:18px;line-height:1.6}.accountImport summary{cursor:pointer}.accountImport button{display:block;margin-top:16px;background:#153547;color:#eaf5f9;border:1px solid #386073;border-radius:6px;padding:12px;font-size:16px}@media(max-width:420px){.accountCard h1{font-size:32px}.accountActions button{width:100%}}

@media(max-width:720px){.topright a.accountLink{display:inline-flex;font-size:14px;font-weight:700}.topright{gap:0}}
