:root{font-family:system-ui,-apple-system,sans-serif;color:#223d34;background:#f6f7f3;font-synthesis:none}*{box-sizing:border-box}body{margin:0;display:flex;min-height:100vh}a{color:inherit;text-decoration:none}aside{width:252px;flex-shrink:0;padding:38px 24px;background:#fff;border-right:1px solid #e3e8df;display:flex;flex-direction:column}.brand{font-size:23px;font-weight:750;display:flex;align-items:center;gap:10px}.logo{font-size:32px;color:#548067}.caption{font-size:10px;letter-spacing:1.7px;color:#849087;margin:16px 0 42px}nav{display:grid;gap:8px}nav a{padding:14px 16px;border-radius:10px;color:#64736a}nav a.active{background:#eaf0e6;color:#355c43;font-weight:650}.local{margin-top:auto;padding-top:60px;font-size:12px;color:#6d806d}main{width:100%;max-width:1250px;padding:34px 6% 60px}header{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #dfe5db;padding-bottom:24px;font-size:11px;letter-spacing:1.4px;color:#7c897e}#connection{letter-spacing:0}section{padding-top:54px}.eyebrow{font-size:11px;letter-spacing:2px;color:#728570;font-weight:650}h1{font-size:clamp(32px,4vw,46px);letter-spacing:-1.5px;margin:14px 0}h2{font-size:20px}.intro{color:#7c887e;font-size:16px;margin-bottom:38px}.module-card{display:block;max-width:560px;border:1px solid #dce4d6;background:#fff;border-radius:18px;padding:28px;box-shadow:0 6px 22px #233b2b04}.module-card:hover{border-color:#94ad8c}.card-icon{display:inline-grid;place-items:center;width:48px;height:48px;background:#edf2e7;border-radius:13px;font-size:30px}.badge{float:right;background:#f2f4ec;padding:7px 12px;border-radius:20px;font-size:11px;color:#7b8868}.module-card h2{margin-bottom:8px}.module-card p,.note p{color:#7c887e;font-size:14px}.card-bottom{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #edf0e8;margin-top:28px;padding-top:20px;font-size:12px}.card-bottom span:last-child{font-weight:650;color:#55744f}.note{border-left:3px solid #d5dfc8;margin-top:36px;padding:4px 20px;font-size:14px}.note p{margin-bottom:0}form{display:flex;gap:14px;align-items:end;background:white;padding:24px;border:1px solid #dfe5db;border-radius:14px}form>div:first-child{flex:2}form>div{flex:1;min-width:0}label{display:block;font-size:12px;margin-bottom:9px}label span{color:#7c887e}input{width:100%;padding:13px;border:1px solid #d5dfd2;border-radius:8px;font:inherit;background:#fcfdfa}button{font:inherit;cursor:pointer;border:0;border-radius:8px;padding:14px 18px;background:#3f674b;color:white}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #b0bc72;outline-offset:3px}.list-heading{display:flex;align-items:center;justify-content:space-between;margin-top:32px}.list-heading span{font-size:13px;color:#7c887e}ul{padding:0;list-style:none}li{display:flex;align-items:center;gap:16px;padding:18px;background:white;border:1px solid #e2e7dd;border-radius:10px;margin-bottom:10px}li input{width:21px;height:21px;accent-color:#52754c}li .item-text{flex:1;overflow-wrap:anywhere}li small{display:block;color:#7c887e;margin-top:5px}li.done .item-name{text-decoration:line-through;color:#8d978c}.remove{color:#8c6860;background:#f7f3ee;padding:8px 12px;font-size:12px}.empty{padding:40px 20px;text-align:center;border:1px dashed #cbd6c3;border-radius:12px;color:#7c887e}#error{background:#f9e8e2;color:#843b2d;padding:14px;border-radius:8px}[hidden]{display:none!important}@media(max-width:850px){body{display:block}aside{width:100%;padding:20px;border-right:0;border-bottom:1px solid #dfe5db}.caption,.local{display:none}nav{display:flex;margin-top:18px}nav a{padding:10px 14px}.brand{font-size:21px}main{padding:24px 20px 45px}section{padding-top:28px}form{flex-wrap:wrap}form>div:first-child{flex-basis:100%}form>div{flex-basis:50%}form button{flex:1}.module-card{max-width:none}}
.header-actions{display:flex;align-items:center;gap:14px;letter-spacing:0}.install-button{padding:9px 13px;font-size:12px}.auth-screen{max-width:560px;margin:0 auto}.login-form{align-items:end}.login-form>div{flex:1}
@media(max-width:520px){header{align-items:flex-start;padding-bottom:16px}.header-actions{align-items:flex-end;flex-direction:column;gap:8px}.install-button{padding:7px 10px}.auth-screen{padding-top:50px}.login-form{display:grid}.login-form>div,.login-form button{width:100%}form:not(.login-form)>div{flex-basis:100%}li{gap:10px;padding:14px}.remove{padding:8px;font-size:11px}}
.auth-tabs{display:flex;gap:8px;margin:-12px 0 18px;border-bottom:1px solid #dfe5db}.auth-tab{background:transparent;color:#64736a;border-radius:8px 8px 0 0;padding:11px 16px}.auth-tab.active{background:#eaf0e6;color:#355c43;font-weight:650}.household-actions{display:grid;gap:16px}.household-actions>.login-form{margin:0}.secondary-button{background:#edf0e8;color:#4f6154;padding:9px 13px;font-size:12px}.household-card code{display:inline-block;padding:8px 12px;border-radius:8px;background:#edf2e7;color:#355c43;font-size:18px;font-weight:700;letter-spacing:2px}#household-error{background:#f9e8e2;color:#843b2d;padding:14px;border-radius:8px}
.auth-note{font-size:13px;color:#728078;line-height:1.5;background:#edf2e7;padding:12px 14px;border-radius:8px;margin:-4px 0 18px}
