.house-guide{display:grid;gap:24px;color:var(--text)}.house-guide-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:20px;border-bottom:1px solid var(--border,#e3e7dd)}.house-guide-header h1{margin:6px 0 10px;font-size:clamp(1.8rem,4vw,2.5rem)}.house-guide-header p{max-width:680px;margin:0;color:var(--muted)}.house-guide-cancel{flex:none}.house-guide-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.house-guide-steps span{display:flex;align-items:center;gap:10px;padding:12px;border-radius:12px;background:var(--soft);color:var(--muted);font-size:.88rem}.house-guide-steps span[aria-current=step]{background:var(--selected);color:var(--selected-text);font-weight:700}.house-guide-steps b{display:grid;place-items:center;width:28px;height:28px;flex:none;border-radius:50%;background:var(--surface);border:1px solid var(--border)}.house-guide-body{display:grid;gap:16px}.house-guide-body h2{margin:0}.house-guide-body>p{margin:0}.house-guide-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.house-guide-group,.house-guide-suggestion{background:var(--surface);border:1px solid var(--border,#e3e7dd);border-radius:16px;padding:18px}.house-guide-group h3{margin:0 0 12px}.house-guide-question{margin:0;padding:14px 0;border:0;border-top:1px solid var(--border);min-width:0}.house-guide-question legend{width:100%;padding:0 0 10px;font-weight:600}.house-guide-question legend small,.house-guide-size small,.house-guide-pick small{display:block;margin-top:4px;color:var(--muted);font-size:.82rem;font-weight:400;line-height:1.45}.house-guide-options{display:flex;gap:8px;flex-wrap:wrap}.house-guide-options label{position:relative;cursor:pointer}.house-guide-options input{position:absolute;opacity:0;top:0;right:0;bottom:0;left:0}.house-guide-options span{display:grid;place-items:center;min-width:74px;min-height:44px;padding:8px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft);font-size:.88rem}.house-guide-options input:checked+span{background:var(--selected);border-color:#78947a;color:var(--selected-text);font-weight:700}.house-guide-options input:focus-visible+span{outline:3px solid #8fae84;outline-offset:2px}.house-guide-size{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.house-guide-size label{display:flex;align-items:flex-start;gap:12px;min-height:104px;padding:18px;background:var(--surface);border:1px solid var(--border,#e3e7dd);border-radius:14px;cursor:pointer}.house-guide-size label.selected{border-color:#78947a;background:var(--selected)}.house-guide-size input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--green);flex:none}.house-guide-size strong{display:block}.house-guide-size small{font-size:.86rem}.house-guide-suggestions{display:grid;gap:12px}.house-guide-pick{display:flex;align-items:flex-start;gap:12px;min-height:44px;cursor:pointer}.house-guide-pick input{width:21px;height:21px;margin:1px 0 0;accent-color:var(--green);flex:none}.house-guide-pick strong{display:block}.house-guide-schedule{margin:12px 0 0 33px;color:var(--muted);font-size:.87rem}.house-guide-dates{display:flex;gap:12px;margin:14px 0 0 33px}.house-guide-dates label{display:grid;gap:6px;max-width:220px;color:var(--muted);font-size:.82rem}.house-guide-dates input{width:100%;min-height:44px;padding:8px 10px;border:1px solid var(--input-border);border-radius:9px;background:var(--surface);color:inherit}.house-guide-empty{padding:20px;border:1px dashed var(--input-border);border-radius:14px;color:var(--muted)}.house-guide-count{font-weight:700;color:var(--muted)}.house-guide-error{padding:12px 14px;margin:0;border-radius:10px;background:var(--error);color:var(--error-text)}.house-guide-footer{display:flex;justify-content:space-between;gap:12px;padding-top:18px;border-top:1px solid var(--border,#e3e7dd)}.house-guide-footer button{min-width:112px;min-height:48px}@media(max-width:760px){.house-guide-header{display:block}.house-guide-cancel{margin-top:16px}.house-guide-steps{gap:6px}.house-guide-steps span{display:grid;justify-items:start;align-content:start;padding:10px;font-size:.75rem;min-height:76px}.house-guide-groups,.house-guide-size{grid-template-columns:1fr}.house-guide-size label{min-height:76px}.house-guide-dates{flex-wrap:wrap}.house-guide-dates label{flex:1 1 145px}}@media(max-width:390px){.house-guide-steps span{padding:8px;font-size:.7rem}.house-guide-options{gap:6px}.house-guide-options span{min-width:66px;padding-inline:8px}}.maintenance{max-width:960px;margin:0 auto;padding:0;color:var(--text)}.maintenance h1,.maintenance h2,.maintenance h3,.maintenance p{margin-top:0}.maintenance h1{margin-bottom:.25rem;font-size:clamp(1.8rem,7vw,2.5rem)}.maintenance h2{margin-bottom:0;font-size:1.25rem}.maintenance h3{margin-bottom:.25rem;font-size:1.08rem}.maintenance-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.maintenance-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.maintenance-list{display:grid;gap:.75rem}.maintenance-card{display:flex;flex-direction:column;gap:.75rem}.maintenance-card-main{text-align:left;color:inherit;border:0;background:transparent;padding:0;font:inherit;cursor:pointer}.maintenance-card-main h3{margin-top:.55rem}.maintenance-card-main p{margin-bottom:.4rem}.maintenance .card-actions{justify-content:flex-start;flex-wrap:wrap}.maintenance .pill{width:fit-content;border-radius:99px;padding:.28rem .65rem;background:var(--notice);color:var(--notice-text);font-size:.82rem;font-weight:700}.maintenance .eyebrow{margin-bottom:.35rem;color:var(--muted);font-size:.75rem;letter-spacing:.09em;font-weight:750}.maintenance .button:hover{background:var(--selected)}.maintenance .secondary:hover{background:var(--hover)!important}.maintenance .danger:hover{background:var(--danger)!important}.maintenance .button:focus-visible,.maintenance .secondary:focus-visible,.maintenance .danger:focus-visible,.maintenance-card-main:focus-visible{outline:3px solid #75ab91;outline-offset:2px}.maintenance-modal-backdrop.modal-backdrop{display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;padding:max(1rem,env(safe-area-inset-top)) 1rem max(1rem,env(safe-area-inset-bottom));background:#13231dcc;z-index:50}.maintenance-modal-backdrop .modal{box-sizing:border-box;width:min(100%,600px);max-height:calc(100dvh - 2rem);overflow-y:auto;margin:auto 0;padding:1.25rem;background:var(--surface);border-radius:16px;box-shadow:0 18px 60px #0004}.maintenance .modal-title{align-items:flex-start}.maintenance .history-list{margin:.5rem 0 0;padding:0;list-style:none}.maintenance .history-row{padding:.65rem 0;border-top:1px solid var(--border)}.maintenance .season-fields>*{flex:1}@media(min-width:700px){.maintenance-tools{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end}.maintenance-tools>button{grid-column:4}.maintenance-card{flex-direction:row;align-items:center}.maintenance-card-main{flex:1}.maintenance .card-actions{flex-wrap:nowrap}}@media(max-width:430px){.maintenance-header{flex-direction:column}.maintenance-header>button{width:100%}.maintenance-tools{grid-template-columns:1fr}.maintenance .section-heading{align-items:baseline}}.calendar-planner-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;padding:max(1rem,env(safe-area-inset-top)) 1rem max(1rem,env(safe-area-inset-bottom));background:#13231dcc}.calendar-planner{box-sizing:border-box;width:min(100%,520px);max-height:calc(100dvh - 2rem);overflow-y:auto;margin:auto 0;padding:1.25rem;color:var(--text);background:var(--surface);border-radius:16px;box-shadow:0 18px 60px #0004}.calendar-planner h2,.calendar-planner p{margin-top:0}.calendar-planner-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.calendar-planner-heading h2{margin-bottom:0;font-size:1.35rem}.calendar-planner .eyebrow{margin-bottom:.35rem;color:var(--muted);font-size:.75rem;letter-spacing:.09em;font-weight:750}.calendar-planner-activity{margin-bottom:.35rem;font-weight:700}.calendar-planner-copy,.calendar-planner-help{color:var(--muted);font-size:.92rem;line-height:1.5}.calendar-planner-help{margin-bottom:0;font-size:.84rem}.calendar-planner-actions{display:flex;flex-wrap:wrap;gap:.65rem}.calendar-planner-error{margin:0;padding:.7rem .8rem;color:var(--error-text);background:var(--error);border-radius:8px}.calendar-planner-status{margin:0;padding:.7rem .8rem;color:var(--notice-text);background:var(--notice);border-radius:8px}.calendar-planner button:focus-visible,.calendar-planner input:focus-visible,.calendar-planner select:focus-visible{outline:3px solid #75ab91;outline-offset:2px}@media(max-width:430px){.calendar-planner-actions{flex-direction:column}.calendar-planner-actions>button{width:100%}}:root{font-family:DM Sans,system-ui,sans-serif;color:var(--text);background:var(--background);font-synthesis:none;font-size:16px;color-scheme:light;--text:#25382e;--background:#f7f7f2;--surface:#fff;--surface-soft:#fafbf7;--green:#315d4d;--button-text:#fff;--border:#e3e7dd;--muted:#697669;--input-border:#cdd6c9;--selected:#e8eee3;--selected-text:#254c3b;--soft:#eef1e9;--soft-text:#4d6653;--notice:#edf1e5;--notice-text:#47643e;--error:#f9e7e1;--error-text:#934534;--danger:#fff3ee;--danger-text:#9b4137;--danger-border:#ead4ce;--overdue:#f9e8e0;--overdue-text:#9a5038;--due:#fcf0d6;--due-text:#86651f;--soon:#eaf0e2;--soon-text:#536d38;--hero:#eaf0e3;--hero-border:#dce5d3;--hero-text:#5e715b;--art-top:#e3ecde;--art-bottom:#dce8ce;--nav-background:#f9fbf6f5;--hover:#dcebe2}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #8fae84;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,system-ui,sans-serif;letter-spacing:-.04em}h1{font-size:2.7rem;line-height:1.1;font-weight:700}h2{font-size:1.3rem}h3{font-size:1.05rem}p{line-height:1.6}a{color:var(--green)}.shell{max-width:1280px;margin:auto;display:grid;grid-template-columns:240px 1fr;min-height:100dvh}.sidebar{padding:36px 24px;border-right:1px solid var(--border);display:flex;flex-direction:column;gap:32px;position:sticky;top:0;height:100dvh}.brand{display:flex;align-items:center;gap:12px;font:800 1.5rem Manrope,sans-serif}.brand-icon{background:var(--green);color:var(--button-text);width:42px;height:42px;border-radius:14px;display:grid;place-items:center}.nav{display:grid;gap:8px}.nav button{border:0;background:none;color:var(--muted);text-align:left;padding:14px 16px;border-radius:12px;display:flex;align-items:center;gap:12px;min-height:48px}.nav button.active{background:var(--selected);color:var(--selected-text);font-weight:700}.sidebar-bottom{margin-top:auto;font-size:.85rem}.content{padding:42px 44px 60px;max-width:1020px;min-width:0}.topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:35px;color:var(--muted);font-size:.85rem}.avatar{width:34px;height:34px;border-radius:50%;background:var(--selected);display:grid;place-items:center;color:var(--green)}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:700;color:var(--muted)}.muted{color:var(--muted)}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.stack{display:grid;gap:14px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.section-heading h2{margin:0}.button,button.button{background:var(--green);border:1px solid var(--green);color:var(--button-text);border-radius:10px;padding:11px 17px;min-height:44px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.secondary{background:var(--surface)!important;color:var(--green)!important;border:1px solid var(--border)!important}.danger{background:var(--danger)!important;color:var(--danger-text)!important;border:1px solid var(--danger-border)!important}.card{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:22px;box-shadow:0 2px 5px #22382003}.card-button{width:100%;text-align:left;color:inherit;display:block;transition:border-color .15s}.card-button:hover{border-color:#98af94}.pill{display:inline-flex;border-radius:7px;padding:5px 9px;background:var(--soft);color:var(--soft-text);font-size:.73rem;font-weight:600;line-height:1.3}.pill.overdue{background:var(--overdue);color:var(--overdue-text)}.pill.due{background:var(--due);color:var(--due-text)}.pill.soon{background:var(--soon);color:var(--soon-text)}.empty{padding:26px;border:1px dashed var(--input-border);border-radius:14px;color:var(--muted);text-align:center}.empty p{margin:8px 0 16px}.fields{display:grid;gap:16px}.field{display:grid;gap:7px;min-width:0;font-size:.9rem;font-weight:500}.field input,.field textarea,.field select,input[type=search]{width:100%;padding:12px;border:1px solid var(--input-border);border-radius:9px;background:var(--surface);color:inherit;min-height:44px}.field textarea{min-height:95px;resize:vertical}.fields-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:#1c302e60;display:grid;place-items:center;padding:24px;overflow:auto}.modal{background:var(--surface-soft);width:100%;max-width:620px;max-height:90dvh;overflow:auto;border-radius:22px;padding:28px;box-shadow:0 30px 100px #15251d33}.modal h2{font-size:1.5rem}.notice{padding:14px 18px;border-radius:12px;background:var(--notice);color:var(--notice-text);margin-bottom:20px;line-height:1.5;font-size:.9rem}.notice.error{background:var(--error);color:var(--error-text)}.hero{background:var(--hero);border:1px solid var(--hero-border);border-radius:22px;display:grid;grid-template-columns:1.15fr .85fr;overflow:hidden;margin:26px 0 30px;min-height:230px}.hero-copy{padding:30px}.hero h2{font-size:1.75rem;margin:8px 0 12px;line-height:1.2}.hero p{margin-bottom:18px;color:var(--hero-text);font-size:.9rem}.hero-art{min-height:220px;display:flex;align-items:flex-end;justify-content:center;background:linear-gradient(180deg,var(--art-top),var(--art-bottom))}.hero-art svg{width:100%;height:auto;max-height:245px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:32px}.stat{padding:20px}.stat strong{font:700 1.8rem Manrope;display:block;margin:12px 0 3px}.stat-label{font-size:.85rem;color:var(--muted)}.dashboard-columns{display:grid;grid-template-columns:1.2fr 1fr;gap:26px}.dashboard-columns section{min-width:0}.attention-list{display:grid;gap:12px}.attention-list h3{margin:10px 0 6px}.attention-list p{font-size:.82rem;margin:0;color:var(--muted)}.page-title p{color:var(--muted);margin-bottom:26px}.auth{max-width:520px}.online-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#729963;margin-right:7px}.small{font-size:.85rem}.footer-note{margin-top:40px;font-size:.78rem;color:var(--muted)}.check-label{display:flex;gap:10px;align-items:center}.check-label input{width:20px;height:20px;accent-color:var(--green)}@media(max-width:900px){.shell{grid-template-columns:190px 1fr}.sidebar{padding:28px 16px}.content{padding:30px 26px}.dashboard-columns{grid-template-columns:1fr}.hero{grid-template-columns:1.1fr .9fr}h1{font-size:2.2rem}}@media(max-width:650px){.shell{display:block}.sidebar{height:auto;position:static;border:0;padding:18px 20px 0;gap:0}.brand{font-size:1.2rem}.brand-icon{width:34px;height:34px;border-radius:11px}.sidebar-bottom{display:none}.nav{position:fixed;bottom:0;left:0;right:0;z-index:10;display:flex;justify-content:space-around;padding:8px 6px calc(8px + env(safe-area-inset-bottom));background:var(--nav-background);border-top:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.nav button{display:grid;gap:4px;justify-items:center;padding:7px 12px;font-size:.65rem;min-height:48px;text-align:center}.nav button svg{width:21px;height:21px}.content{padding:20px 20px calc(95px + env(safe-area-inset-bottom))}.topline{margin-bottom:24px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:24px}.hero-art{display:none}.stats{gap:9px}.stat{padding:14px 10px}.stat strong{font-size:1.5rem}.stat-label{font-size:.68rem}.card{padding:18px}.modal-backdrop{padding:12px}.modal{padding:22px;max-height:94dvh}.fields-two{grid-template-columns:1fr}.section-heading{align-items:flex-start}.section-heading .button{font-size:.8rem;padding:10px 12px}.page-title h1{font-size:2.2rem}}:root[data-theme=dark]{color-scheme:dark;--text:#e5ebe3;--background:#161d19;--surface:#202a24;--surface-soft:#1c261f;--green:#a6ceb6;--button-text:#14271c;--border:#3b4940;--muted:#b1beb1;--input-border:#58685c;--selected:#304336;--selected-text:#dbf1dd;--soft:#2e3b31;--soft-text:#c1d8c4;--notice:#2c3b2b;--notice-text:#d3e5c5;--error:#482a27;--error-text:#ffc2b4;--danger:#3c2927;--danger-text:#ffc0b0;--danger-border:#72504a;--overdue:#482d26;--overdue-text:#ffc5ac;--due:#423820;--due-text:#f5d989;--soon:#303e27;--soon-text:#c5dfa8;--hero:#27372b;--hero-border:#425841;--hero-text:#c0d2bc;--art-top:#354936;--art-bottom:#2c402d;--nav-background:#1c261ff5;--hover:#334c3d}.theme-choice{display:flex;gap:6px;flex-wrap:wrap;border:0;padding:0;margin:14px 0 8px}.theme-choice legend{font-weight:600;margin-bottom:10px}.theme-choice button{display:flex;align-items:center;gap:8px;min-height:44px;padding:10px 15px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text)}.theme-choice button[aria-pressed=true]{background:var(--selected);color:var(--selected-text);border-color:var(--green);font-weight:700}
