:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#266da9;--accent-bg:#266da91a;--accent-border:#266da980;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#5a9fd4;--accent-bg:#5a9fd426;--accent-border:#5a9fd480;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.app{text-align:center;max-width:480px;margin:0 auto;padding:2rem 1rem}.app-logo{width:120px;height:120px;margin:0 auto 1rem;display:block}.header-logo{width:36px;height:36px}.auth-buttons{flex-direction:column;gap:.75rem;margin-top:2rem;display:flex}.auth-buttons button{border:1px solid var(--border);cursor:pointer;background:var(--code-bg);color:var(--text-h);border-radius:8px;padding:.75rem 1.5rem;font-size:1rem}.auth-buttons button:hover{border-color:var(--accent);background:var(--accent-bg)}.auth-divider{align-items:center;margin:1.5rem 0;display:flex}.auth-divider:before,.auth-divider:after{content:"";border-bottom:1px solid var(--border);flex:1}.auth-divider span{color:var(--text);padding:0 1rem;font-size:.875rem}.email-auth{flex-direction:column;gap:.75rem;display:flex}.email-auth input{border:1px solid var(--border);background:var(--code-bg);color:var(--text-h);border-radius:8px;padding:.75rem;font-size:1rem}.email-auth input:focus{border-color:var(--accent);outline:none}.toggle-auth{cursor:pointer;color:var(--accent)!important;background:0 0!important;border:none!important;padding:.25rem!important;font-size:.875rem!important}.toggle-auth:hover{text-decoration:underline}.error{color:#d32f2f;font-size:.875rem}button{border:1px solid var(--border);cursor:pointer;background:var(--code-bg);color:var(--text-h);border-radius:8px;padding:.5rem 1rem;font-size:1rem}button:hover{border-color:var(--accent);background:var(--accent-bg)}button:disabled{opacity:.5;cursor:not-allowed}.primary-button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;width:100%;padding:.75rem 1.5rem;font-size:1rem}.primary-button:hover{opacity:.9;background:var(--accent)}.secondary-button{background:var(--code-bg);border:1px solid var(--border);cursor:pointer;color:var(--text-h);border-radius:8px;width:100%;padding:.75rem 1.5rem;font-size:1rem}.secondary-button:hover{border-color:var(--accent);background:var(--accent-bg)}.text-button{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:.875rem}.text-button:hover{background:0 0;text-decoration:underline}.back-button{color:var(--accent);cursor:pointer;text-align:left;background:0 0;border:none;margin-bottom:1rem;padding:0;font-size:1rem;display:block}.back-button:hover{background:0 0;text-decoration:underline}.cta-buttons{flex-direction:column;gap:.75rem;margin-top:1.5rem;display:flex}.badge{background:var(--accent-bg);color:var(--accent);border:1px solid var(--accent-border);border-radius:4px;padding:.125rem .5rem;font-size:.75rem;font-weight:600}input,select{border:1px solid var(--border);background:var(--code-bg);color:var(--text-h);box-sizing:border-box;border-radius:8px;width:100%;padding:.75rem;font-size:1rem}input:focus,select:focus{border-color:var(--accent);outline:none}form{flex-direction:column;gap:.75rem;display:flex}.home{text-align:left}.home-header{justify-content:space-between;align-items:center;display:flex}.welcome{margin-bottom:1.5rem}.greeting{color:var(--text-h);font-size:1.25rem;font-weight:500}.empty-state{text-align:center;padding:2rem 0}.empty-message{color:var(--text);margin-bottom:.5rem}.household-list h2{margin-bottom:.75rem;font-size:1.125rem}.household-card{background:var(--code-bg);border:1px solid var(--border);cursor:pointer;text-align:left;border-radius:8px;justify-content:space-between;align-items:center;width:100%;margin-bottom:.5rem;padding:1rem;display:flex}.household-card:hover{border-color:var(--accent);background:var(--accent-bg)}.household-card-info{flex-direction:column;gap:.25rem;display:flex}.household-name{color:var(--text-h);font-weight:500}.household-meta,.chore-meta{color:var(--text);font-size:.8125rem}.chevron{color:var(--text);font-size:1.5rem}.household-view{text-align:left}.household-view h2{margin-bottom:.25rem}.household-stats{color:var(--text);align-items:center;gap:.75rem;margin-bottom:1.5rem;font-size:.875rem;display:flex}.invite-section{background:var(--code-bg);border:1px solid var(--border);border-radius:8px;margin-bottom:1.5rem;padding:1rem}.invite-label{color:var(--text);margin-bottom:.5rem;font-size:.8125rem}.invite-code-row{align-items:center;gap:.75rem;display:flex}.invite-code{letter-spacing:1px;flex:1;font-size:1.125rem}.copy-button{padding:.375rem .75rem;font-size:.875rem}.setup-guide{background:var(--accent-bg);border:1px solid var(--accent-border);text-align:center;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.setup-guide h3{color:var(--text-h);margin:0 0 .5rem}.setup-guide p{color:var(--text);margin-bottom:0;font-size:.875rem}.chore-list h3{color:var(--text-h);margin:0 0 .75rem;font-size:1rem}.chore-card{background:var(--code-bg);border:1px solid var(--border);border-radius:8px;margin-bottom:.5rem;padding:.75rem 1rem}.chore-info{justify-content:space-between;align-items:center;display:flex}.chore-name{color:var(--text-h);font-weight:500}.subtask-list{color:var(--text);margin:.5rem 0 0;padding-left:1.25rem;font-size:.875rem}.subtask-list li{margin-bottom:.125rem}.template-picker{text-align:left}.template-picker h2{margin-bottom:.25rem}.template-picker>p{color:var(--text);margin-bottom:1.5rem;font-size:.875rem}.template-list{flex-direction:column;gap:.75rem;margin-bottom:1.5rem;display:flex}.template-card{text-align:left;background:var(--code-bg);border:1px solid var(--border);cursor:pointer;border-radius:8px;flex-direction:column;gap:.25rem;width:100%;padding:1rem;display:flex}.template-card:hover{border-color:var(--accent);background:var(--accent-bg)}.template-name{color:var(--text-h);font-size:1rem;font-weight:500}.template-desc{color:var(--text);font-size:.8125rem}.template-count{color:var(--accent);font-size:.75rem;font-weight:600}.manual-chores{text-align:left}.chore-input-row{align-items:stretch;gap:.5rem;display:flex}.chore-input-row input{flex:1}.chore-input-row select{width:auto;min-width:5rem}.add-button{min-width:2.5rem;padding:.5rem .75rem;font-size:1.25rem}.chore-preview-list{margin-bottom:1rem}.chore-preview{background:var(--code-bg);border:1px solid var(--border);color:var(--text-h);border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:.375rem;padding:.5rem .75rem;font-size:.875rem;display:flex}.remove-button{color:#d32f2f;cursor:pointer;background:0 0;border:none;padding:0 .25rem;font-size:1.25rem;line-height:1}.remove-button:hover{opacity:.7;background:0 0}.create-household,.join-household{text-align:left}.create-household h2,.join-household h2{margin-bottom:.25rem}.create-household p,.join-household p{color:var(--text);margin-bottom:1.5rem;font-size:.875rem}.invite-welcome{color:var(--accent);font-weight:500}.chore-interactive{cursor:pointer}.chore-header{justify-content:space-between;align-items:center;display:flex}.chore-actions{align-items:center;gap:.5rem;display:flex}.subtask-progress{color:var(--accent);background:var(--accent-bg);border-radius:4px;padding:.125rem .5rem;font-size:.75rem;font-weight:600}.complete-button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:.375rem .75rem;font-size:.8125rem}.complete-button:hover{opacity:.9;background:var(--accent)}.complete-button:disabled{opacity:.4;cursor:not-allowed;background:var(--text)}.skip-button{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:6px;padding:.375rem .75rem;font-size:.8125rem}.skip-button:hover{border-color:var(--text);background:0 0}.subtask-checklist{border-top:1px solid var(--border);margin-top:.75rem;padding-top:.75rem}.subtask-item{color:var(--text-h);cursor:pointer;align-items:center;gap:.5rem;padding:.375rem 0;font-size:.875rem;display:flex}.subtask-item input[type=checkbox]{width:auto;accent-color:var(--accent);margin:0}.subtask-done{color:var(--text);text-decoration:line-through}.chore-footer{gap:.5rem;margin-top:.75rem;display:flex}.chore-footer-simple{text-align:right;margin-top:.5rem}.chore-completed{opacity:.6}.chore-name-done{text-decoration:line-through}.completed-section{margin-top:1.5rem}.all-done{text-align:center;padding:2rem 0}.all-done-text{color:var(--accent);font-size:1.25rem;font-weight:500}.vision-scanner{text-align:left}.scan-capture p{color:var(--text);margin-bottom:1rem}.scan-summary{background:var(--card);border-radius:.75rem;margin-bottom:1rem;padding:1rem}.scan-summary h3{text-transform:capitalize;margin:0 0 .5rem}.scan-stats{color:var(--text);align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.875rem;display:flex}.stat-separator{color:var(--text)}.observations{color:var(--text);margin:.5rem 0 0;padding:0;font-size:.875rem;list-style:none}.observations li:before{content:"• ";color:var(--accent)}.suggestions-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.suggestions-header h3{margin:0}.suggestion-list{flex-direction:column;gap:.75rem;margin-bottom:1rem;display:flex}.suggestion-card{background:var(--card);cursor:pointer;border:2px solid #0000;border-radius:.75rem;padding:.75rem 1rem;transition:border-color .15s}.suggestion-card.selected{border-color:var(--accent)}.suggestion-header{align-items:center;gap:.5rem;display:flex}.suggestion-name{flex:1;font-weight:500}.urgency-badge{text-transform:capitalize;border-radius:1rem;padding:.125rem .5rem;font-size:.75rem;font-weight:500}.urgency-critical{color:#991b1b;background:#fee2e2}.urgency-high{color:#9a3412;background:#fff7ed}.urgency-medium{color:#854d0e;background:#fefce8}.urgency-low{color:#166534;background:#f0fdf4}.suggestion-reasoning{color:var(--text);margin:.25rem 0;font-size:.8125rem}.suggestion-meta{color:var(--text);gap:.5rem;font-size:.75rem;display:flex}.recurrence-badge{text-transform:capitalize}.loading-text{color:var(--text);text-align:center;padding:1rem 0}.success-message{text-align:center;padding:1rem 0}.success-message p{color:var(--accent);margin-bottom:1rem;font-weight:500}.no-suggestions{text-align:center;padding:1rem 0}.no-suggestions p{color:var(--text);margin-bottom:1rem}.scan-history{text-align:left}.scan-list{flex-direction:column;gap:.75rem;display:flex}.scan-card{background:var(--card);border-radius:.75rem;padding:.75rem 1rem}.scan-card-header{justify-content:space-between;align-items:center;display:flex}.scan-space{text-transform:capitalize;font-weight:500}.scan-date{color:var(--text);font-size:.8125rem}.scan-card-stats{color:var(--text);gap:.5rem;margin-top:.25rem;font-size:.8125rem;display:flex}.scan-card-stats span:not(:last-child):after{content:" · "}.scan-card-obs{color:var(--text);margin:.25rem 0 0;font-size:.8125rem}
