button,input,select,textarea{font:inherit}input,select,textarea{color:#173c37;background:#fff;border:2px solid #cedbd4;border-radius:14px;width:100%;min-height:54px;padding:0 16px;font-size:1rem}textarea{resize:vertical;min-height:112px;padding:14px 16px}input:focus,select:focus,textarea:focus{border-color:#287d72;outline:3px solid #b9ded5}.home-support{background:#ffffffe6;border:1px solid #d8e3dc;border-radius:26px;margin-top:26px;padding:26px}.home-support-heading{align-items:flex-start;gap:16px;display:flex}.home-support-heading h2{margin:2px 0 7px;font-size:1.65rem}.home-support-heading p:last-child{color:#5d706c;margin:0;line-height:1.5}.home-support-icon{color:#1d695f;background:#e4f0ea;border-radius:17px;flex:0 0 52px;place-items:center;width:52px;height:52px;display:grid}.property-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px;display:grid}.property-grid a{color:#173c37;background:#f4f7f3;border:1px solid #0000;border-radius:16px;grid-template-columns:auto 1fr auto;gap:12px;padding:17px;text-decoration:none;display:grid}.property-grid a:hover{background:#edf5f1;border-color:#bad3ca}.property-grid a>svg{color:#287d72;flex:none}.property-grid a>svg:last-child{color:#71847f;width:18px}.property-grid a div{gap:4px;display:grid}.property-grid small{color:#657570;font-weight:700}.property-grid strong{font-size:.97rem}.property-grid span{color:#687a75;font-size:.82rem;line-height:1.4}.emergency-guide{background:#fff4d6;border:1px solid #efd595;border-radius:17px;align-items:flex-start;gap:14px;margin-top:14px;padding:18px;display:flex}.emergency-guide>svg{color:#9b4e24;flex:none}.emergency-guide h3,.repair-intro h3{margin:0 0 5px;font-size:1.05rem}.emergency-guide p,.repair-intro p{color:#695d3a;margin:0;line-height:1.5}.emergency-guide a{color:#7d381b;font-weight:850}.repair-panel{border:1px solid #dbe5df;border-radius:19px;margin-top:16px;padding:20px}.repair-intro{align-items:flex-start;gap:12px;display:flex}.repair-intro>svg{color:#287d72;flex:none}.repair-intro p{color:#5d706c}.repair-form{grid-template-columns:2fr 1fr 1.25fr auto;align-items:end;gap:12px;margin-top:18px;display:grid}.repair-form label{gap:7px;font-size:.88rem;display:grid}.repair-form label:first-child{grid-row:span 2}.repair-form .primary{white-space:nowrap;min-height:54px;margin:0;padding:0 18px}.photo-field span{align-items:center;gap:6px;display:flex}.photo-field input{padding:12px;font-size:.82rem}.repair-note{color:#6b7b76;align-items:center;gap:7px;margin:14px 0 0;font-size:.82rem;display:flex}.repair-list{gap:10px;margin-top:15px;display:grid}.repair-item{border:1px solid #dbe5df;border-radius:15px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:14px;display:grid}.repair-status{color:#1d695f;background:#e2f2eb;border-radius:999px;padding:7px 10px;font-size:.78rem;font-weight:850}.repair-item small{color:#287d72;font-weight:800}.repair-item h4{margin:3px 0}.repair-item p{color:#687a75;align-items:center;gap:5px;margin:0;font-size:.82rem;display:flex}@media (width<=760px){.app-shell{padding:0 16px 36px}.welcome{grid-template-columns:1fr;padding-top:28px}.progress-card{min-width:0}.topic-grid{grid-template-columns:1fr}.topic-card{min-height:0}.property-grid{grid-template-columns:1fr}.repair-form{grid-template-columns:1fr 1fr}.repair-form label:first-child{grid-area:auto/1/auto/-1}.repair-form .primary{width:100%}.reminder-form{grid-template-columns:1fr 1fr}.reminder-form label:first-child{grid-column:1/-1}.reminder-form .primary{width:100%}.lesson{grid-template-columns:auto 1fr}.complete{grid-column:1/-1;width:100%}footer button{display:none}}@media (width<=480px){.login-card{border-radius:24px;padding:26px 22px}.login-copy{margin:42px 0 28px}.topic-card{gap:14px;padding:19px}.topic-card-icon{width:46px;height:46px}.topic-hero{gap:16px}.topic-hero .topic-icon{border-radius:17px;flex-basis:52px;width:52px;height:52px}.planner,.home-support{padding:20px 17px}.home-support-heading{gap:12px}.repair-panel{padding:17px 14px}.repair-form{grid-template-columns:1fr}.planner-heading{gap:12px}.reminder-form{grid-template-columns:1fr}.reminder-form label:first-child{grid-column:auto}}:root{color:#173c37;font-synthesis:none;text-rendering:optimizelegibility;background:#f4f7f3;font-family:Inter,ui-rounded,SF Pro Rounded,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 85% 0,#d8ebe4 0,#0000 28rem),#f4f7f3;min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{cursor:pointer}.login-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#fffffff0;border:1px solid #d8e3dc;border-radius:32px;width:min(100%,490px);padding:36px;box-shadow:0 24px 80px #123f391f}.brand-mark{letter-spacing:-.035em;align-items:center;gap:10px;font-size:1.35rem;font-weight:850;display:flex}.brand-mark>span:last-child>span{color:#2d8e80}.mark{color:#fff4d4;background:#173f39;border-radius:14px 14px 18px 18px;place-items:center;width:42px;height:42px;display:grid}.login-copy{margin:54px 0 36px}.eyebrow{color:#287d72;text-transform:uppercase;letter-spacing:.11em;margin:0 0 8px;font-size:.78rem;font-weight:800}h1,h2,p{margin-top:0}h1{letter-spacing:-.055em;margin-bottom:18px;font-size:clamp(2.1rem,7vw,3.6rem);line-height:1}.login-copy>p:last-child{color:#5d706c;font-size:1.06rem;line-height:1.6}form{gap:12px;display:grid}label{font-weight:750}input,select{color:#173c37;background:#fff;border:2px solid #cedbd4;border-radius:14px;width:100%;min-height:54px;padding:0 16px;font-size:1rem}input:focus,select:focus{border-color:#287d72;outline:3px solid #b9ded5}.primary{color:#fff;background:#173f39;border:0;border-radius:14px;justify-content:center;align-items:center;gap:10px;min-height:56px;margin-top:4px;font-weight:800;display:flex}.prototype-note{color:#65746f;align-items:flex-start;gap:8px;margin:20px 0 0;font-size:.84rem;line-height:1.45;display:flex}.prototype-note svg{flex:none}.app-shell{width:min(100%,1120px);margin:0 auto;padding:0 24px 52px}.topbar{justify-content:space-between;align-items:center;min-height:84px;display:flex;position:relative}.topbar .brand-mark:first-child{margin-right:auto}.icon-button{color:#173f39;background:#ffffffd1;border:1px solid #ccdad3;border-radius:14px;place-items:center;width:44px;height:44px;display:grid}.topbar>.icon-button:first-child{margin-right:16px}.menu-panel{z-index:5;background:#fff;border:1px solid #d8e3dc;border-radius:16px;padding:10px;position:absolute;top:72px;right:max(24px,50vw - 536px);box-shadow:0 16px 40px #123f3924}.menu-panel button{color:#75403b;background:0 0;border:0;align-items:center;gap:8px;padding:10px 12px;display:flex}.welcome{grid-template-columns:1fr auto;align-items:end;gap:30px;padding:46px 0 32px;display:grid}.welcome h1{max-width:650px;margin-bottom:0}.progress-card{color:#fff;background:#173f39;border-radius:22px;align-items:center;gap:16px;min-width:290px;padding:18px;display:flex}.progress-card>span{color:#173f39;background:#fff4d4;border-radius:50%;flex:0 0 58px;place-items:center;width:58px;height:58px;font-weight:900;display:grid}.progress-card>div{flex:1}.progress-track{background:#fff3;border-radius:8px;height:7px;margin:8px 0 5px;overflow:hidden}.progress-track i{border-radius:inherit;background:#f6ce6f;height:100%;display:block}.progress-card small{color:#c8d9d5}.topic-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.topic-card{--topic:#287d72;text-align:left;color:#173c37;background:#ffffffe0;border:1px solid #d8e3dc;border-radius:24px;grid-template-columns:auto 1fr auto;align-items:start;gap:18px;min-height:178px;padding:24px;transition:transform .18s,box-shadow .18s;display:grid}.topic-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px #123f391a}.topic-card-icon,.topic-icon{color:#fff;background:var(--topic);border-radius:17px;place-items:center;width:52px;height:52px;display:grid}.topic-card-copy{gap:8px;display:grid}.topic-card strong{font-size:1.25rem}.topic-card small{color:#5e716d;font-size:.92rem;line-height:1.45}.topic-card em{width:fit-content;color:var(--topic);text-transform:uppercase;letter-spacing:.06em;margin-top:4px;font-size:.78rem;font-style:normal;font-weight:850}.topic-card>svg{color:#71847f;margin-top:14px}.planner{background:#ffffffe6;border:1px solid #d8e3dc;border-radius:26px;margin-top:26px;padding:26px}.planner-heading{align-items:flex-start;gap:16px;display:flex}.planner-heading h2{margin:2px 0 7px;font-size:1.65rem}.planner-heading p:last-child{color:#5d706c;margin:0;line-height:1.5}.planner-icon{color:#1d695f;background:#e4f0ea;border-radius:17px;flex:0 0 52px;place-items:center;width:52px;height:52px;display:grid}.reminder-form{grid-template-columns:2fr 1fr 1.15fr auto;align-items:end;gap:12px;margin-top:22px;display:grid}.reminder-form label{gap:7px;font-size:.88rem;display:grid}.reminder-form .primary{white-space:nowrap;min-height:54px;margin:0;padding:0 18px}.reminder-list{gap:10px;margin-top:20px;display:grid}.empty-reminders{color:#667771;background:#f4f7f3;border-radius:16px;align-items:flex-start;gap:13px;padding:18px;display:flex}.empty-reminders svg{flex:none}.empty-reminders p{margin:0;line-height:1.5}.reminder{border:1px solid #dbe5df;border-radius:16px;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;padding:14px;display:grid}.reminder-date{text-align:center;color:#fff;background:#173f39;border-radius:13px;place-content:center;width:54px;height:57px;line-height:1;display:grid}.reminder-date strong{font-size:1.2rem}.reminder-date span{text-transform:uppercase;margin-top:4px;font-size:.75rem}.reminder small{color:#287d72;font-weight:800}.reminder h3{margin:2px 0;font-size:1rem}.reminder p{color:#687a75;margin:0;font-size:.86rem}.delete-reminder{color:#9a4238;background:#f7ece9;border:0;border-radius:12px;place-items:center;width:42px;height:42px;display:grid}.planner-note{color:#6b7b76;align-items:center;gap:7px;margin:16px 0 0;font-size:.82rem;display:flex}.help-card{background:#fff3d1;border:1px solid #efd995;border-radius:22px;align-items:center;gap:18px;margin-top:24px;padding:22px 24px;display:flex}.help-card>svg{flex:none}.help-card h2{margin-bottom:4px;font-size:1.1rem}.help-card p{color:#695d3a;margin:0}footer{color:#65746f;flex-wrap:wrap;align-items:center;gap:12px;padding:28px 4px 0;display:flex}footer p{margin:0 auto 0 0}footer button{color:#4d6660;background:0 0;border:0;align-items:center;gap:6px;display:flex}.topic-hero{--topic:#287d72;align-items:flex-start;gap:24px;padding:44px 0 30px;display:flex}.topic-hero .topic-icon{border-radius:22px;flex:0 0 68px;width:68px;height:68px}.topic-hero h1{margin-bottom:12px;font-size:clamp(2.1rem,6vw,3.7rem)}.topic-hero p{color:#65746f;margin-bottom:6px}.lesson-list{gap:14px;display:grid}.lesson{background:#fff;border:1px solid #d8e3dc;border-radius:22px;grid-template-columns:auto 1fr auto;align-items:start;gap:18px;padding:22px;display:grid}.lesson.done{background:#f0f8f4}.lesson-number{background:#e5eee9;border-radius:50%;place-items:center;width:38px;height:38px;font-weight:850;display:grid}.lesson.done .lesson-number{color:#247368}.lesson h2{margin-bottom:8px;font-size:1.2rem}.lesson-copy>p{color:#5d706c;line-height:1.5}.activity{color:#52635e;background:#f4f6ee;border-radius:12px;align-items:flex-start;gap:8px;padding:13px;font-size:.92rem;line-height:1.4;display:flex}.activity svg{flex:none}.complete{color:#1f675e;background:#fff;border:1px solid #b8cbc3;border-radius:12px;padding:10px 14px;font-weight:750}.done .complete{color:#fff;background:#1f675e}button:focus-visible{outline-offset:3px;outline:3px solid #f0c75e}@media (width<=760px){.app-shell{padding:0 16px 36px}.welcome{grid-template-columns:1fr;padding-top:28px}.progress-card{min-width:0}.topic-grid{grid-template-columns:1fr}.topic-card{min-height:0}.reminder-form{grid-template-columns:1fr 1fr}.reminder-form label:first-child{grid-column:1/-1}.reminder-form .primary{width:100%}.lesson{grid-template-columns:auto 1fr}.complete{grid-column:1/-1;width:100%}footer button{display:none}}@media (width<=480px){.login-card{border-radius:24px;padding:26px 22px}.login-copy{margin:42px 0 28px}.topic-card{gap:14px;padding:19px}.topic-card-icon{width:46px;height:46px}.topic-hero{gap:16px}.topic-hero .topic-icon{border-radius:17px;flex-basis:52px;width:52px;height:52px}.planner{padding:20px 17px}.planner-heading{gap:12px}.reminder-form{grid-template-columns:1fr}.reminder-form label:first-child{grid-column:auto}}
