main:has(.chores-intern-embed){background:#f7f4ef!important}.chores-intern-embed{--ch-bg: #f7f4ef;--ch-surface: #ffffff;--ch-border: #e8e0d4;--ch-text: #2c2825;--ch-muted: #7a7268;--ch-accent: #5b8a72;--ch-accent-soft: #d4e8dc;color-scheme:light;color:var(--ch-text)}.chores-public-shell .chores-app{height:100%;max-height:100%;min-height:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.chores-intern-embed h1{color:var(--ch-text)}.chores-intern-embed [class*=subtitle]{color:var(--ch-muted)}.chores-intern-embed [class*=actionBtn]:not([class*=Primary]){background:var(--ch-surface);border:1px solid var(--ch-border);color:var(--ch-text);box-shadow:0 1px 3px #2c28250f}.chores-intern-embed [class*=actionBtn]:not([class*=Primary]):hover{border-color:var(--ch-accent);background:var(--ch-accent-soft);color:var(--ch-accent)}.chores-intern-embed [class*=panelEmbed]{background:var(--ch-bg);min-height:100%}.chores-app{color-scheme:light}.chores-app button,.chores-app input,.chores-app textarea,.chores-app select{background:unset;border:unset;box-shadow:unset;color:inherit;padding:unset;border-radius:unset}.chores-app a{color:inherit}.panelEmbed .chores-app,[class*=panelEmbed] .chores-app{min-height:auto}.chores-app .filter-bar select,.chores-app .field input,.chores-app .field textarea,.chores-app .inline-add input,.chores-app .list-search,.chores-app .list-toolbar-filters select,.chores-app .status-select,.chores-app .priority-select,.chores-app .location-select,.chores-app .recurrence-select{border:1px solid var(--ch-border);border-radius:8px;padding:.5rem .75rem;background:var(--ch-surface);color:var(--ch-text)}.chores-app .btn-ghost,.chores-app .btn-danger,.chores-app .kind-tab,.chores-app .kind-pick,.chores-app .qp-btn,.chores-app .task-reorder,.chores-app .material-toggle,.chores-app .btn-sm,.chores-app .list-sort-header,.chores-app .status-chip{font-family:inherit;cursor:pointer}.chores-app{--ch-bg: #f7f4ef;--ch-surface: #ffffff;--ch-border: #e8e0d4;--ch-text: #2c2825;--ch-muted: #7a7268;--ch-accent: #5b8a72;--ch-accent-soft: #d4e8dc;--ch-warn: #c45c4a;--ch-warn-soft: #fde8e4;--ch-soon: #c49a3c;--ch-radius: 14px;--ch-shadow: 0 2px 12px rgba(44, 40, 37, .08);font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ch-text);background:var(--ch-bg);color-scheme:light;min-height:100dvh}.chores-app .page-loading{padding:3rem;text-align:center;color:var(--ch-muted)}.chores-app .page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1rem .75rem;background:var(--ch-bg);position:static;z-index:auto}.chores-app .page-title{margin:0;font-size:1.75rem;font-weight:700;letter-spacing:-.02em;color:var(--ch-text)}.chores-app .page-subtitle{margin:.25rem 0 0;font-size:.875rem;color:var(--ch-muted)}.chores-app .btn-primary{background:var(--ch-accent);color:#fff;border:none;border-radius:10px;padding:.6rem 1.1rem;font-weight:600;cursor:pointer;white-space:nowrap}.chores-app .btn-primary:disabled{opacity:.6;cursor:not-allowed}.chores-app .btn-secondary{background:var(--ch-accent-soft);color:var(--ch-accent);border:none;border-radius:8px;padding:.45rem .85rem;font-weight:600;cursor:pointer}.chores-app .btn-ghost{background:transparent;border:1px solid var(--ch-border);border-radius:8px;padding:.4rem .75rem;cursor:pointer}.chores-app .btn-danger{background:var(--ch-warn-soft);color:var(--ch-warn);border:none;border-radius:8px;padding:.4rem .75rem;cursor:pointer}.chores-app .btn-icon{background:none;border:none;color:var(--ch-muted);font-size:1.25rem;cursor:pointer;padding:0 .25rem}.chores-app .filter-bar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;padding:0 1rem 1rem}.chores-app .filter-bar select{border:1px solid var(--ch-border);border-radius:8px;padding:.45rem .75rem;background:var(--ch-surface)}.chores-app .kind-tabs{display:flex;gap:.35rem;flex-wrap:wrap}.chores-app .kind-tab{border:1px solid var(--ch-border);background:var(--ch-surface);border-radius:999px;padding:.35rem .75rem;font-size:.8125rem;cursor:pointer}.chores-app .kind-tab.active{background:var(--ch-accent);color:#fff;border-color:var(--ch-accent)}.chores-app .board-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;padding:0 1rem 2rem;align-items:start}.chores-app .board-column{background:#ffffff80;border-radius:var(--ch-radius);padding:.75rem;min-height:120px}.chores-app .col-overdue .column-title{color:var(--ch-warn)}.chores-app .col-soon .column-title{color:var(--ch-soon)}.chores-app .col-not_started .column-title{color:var(--ch-muted)}.chores-app .col-in_progress .column-title{color:var(--ch-accent)}.chores-app .col-blocked .column-title{color:var(--ch-warn)}.chores-app .header-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.chores-app .view-toggle{display:flex;border:1px solid var(--ch-border);border-radius:10px;overflow:hidden;background:var(--ch-surface)}.chores-app .view-tab{padding:.45rem .85rem;font-size:.875rem;font-weight:600;color:var(--ch-muted);text-decoration:none}.chores-app .view-tab.active{background:var(--ch-accent-soft);color:var(--ch-accent)}.chores-app .status-badge{display:inline-block;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:.15rem .45rem;border-radius:6px}.chores-app .status-not_started{background:#eee9e2;color:var(--ch-muted)}.chores-app .status-in_progress{background:var(--ch-accent-soft);color:var(--ch-accent)}.chores-app .status-done{background:#e0ebe4;color:#3d6b55}.chores-app .status-blocked{background:var(--ch-warn-soft);color:var(--ch-warn)}.chores-app .status-select.status-not_started{background:#eee9e2;color:#5c564e;border-color:#ddd6cc}.chores-app .status-select.status-in_progress{background:var(--ch-accent-soft);color:var(--ch-accent);border-color:#a8ccb8}.chores-app .status-select.status-done{background:#e0ebe4;color:#3d6b55;border-color:#b8d4c4}.chores-app .status-select.status-blocked{background:var(--ch-warn-soft);color:var(--ch-warn);border-color:#e8b4aa}.chores-app .priority-badge,.chores-app .priority-select{font-weight:800;font-size:.75rem;letter-spacing:.04em}.chores-app .priority-badge.priority-p0,.chores-app .priority-select.priority-p0{background:#fde8e4;color:#a63d2f;border-color:#e8b4aa}.chores-app .priority-badge.priority-p1,.chores-app .priority-select.priority-p1{background:#fdf3e0;color:#8a6520;border-color:#e8d4a8}.chores-app .priority-badge.priority-p2,.chores-app .priority-select.priority-p2{background:#eef0ee;color:#5f6b63;border-color:#d4dbd6}.chores-app .priority-badge{display:inline-block;padding:.15rem .45rem;border-radius:6px;border:1px solid transparent}.chores-app .priority-select{border:1px solid;border-radius:6px;padding:.25rem .35rem;cursor:pointer;width:100%;max-width:56px}.chores-app .assignee-select{border:1px solid var(--ch-border);border-radius:6px;padding:.25rem .35rem;font-size:.75rem;background:#f5f1eb;color:var(--ch-text);cursor:pointer;width:100%;max-width:88px}.chores-app .assignee-select.compact{font-size:.6875rem;padding:.2rem .3rem}.chores-app .field .assignee-select{max-width:none;width:100%;font-size:.875rem;padding:.6rem .75rem;background:var(--ch-surface)}.chores-app .detail-meta .meta-chip.assignee .assignee-select{max-width:96px}.chores-app .location-select{border:1px solid var(--ch-border);border-radius:6px;padding:.25rem .35rem;font-size:.75rem;background:#f5f1eb;color:var(--ch-text);cursor:pointer;width:100%;max-width:108px}.chores-app .location-select.compact{font-size:.6875rem;padding:.2rem .3rem}.chores-app .recurrence-select{border:1px solid var(--ch-border);border-radius:6px;padding:.25rem .35rem;font-size:.75rem;background:#f0f4ff;color:var(--ch-text);cursor:pointer;max-width:120px}.chores-app .recurrence-select.compact{font-size:.6875rem;padding:.2rem .3rem;max-width:108px}.chores-app .field .recurrence-select{max-width:none;width:100%;font-size:.875rem;padding:.6rem .75rem}.chores-app .field-hint{font-size:.75rem;color:var(--ch-muted);margin-top:.35rem}.chores-app .form-error{margin-top:.75rem;font-size:.875rem;color:#b42318}.chores-app .recurrence-badge{font-size:.75rem;background:#eef2ff;color:#4338ca;border:1px solid #c7d2fe;white-space:nowrap}.chores-app .location-badge{font-size:.75rem;color:var(--ch-muted);font-weight:600}.chores-app .field .location-select{max-width:none;width:100%;font-size:.875rem;padding:.6rem .75rem;background:var(--ch-surface)}.chores-app .priority-picker{display:flex;gap:.5rem}.chores-app .priority-pick{flex:1;border:2px solid var(--ch-border);border-radius:10px;padding:.55rem;font-weight:800;cursor:pointer;background:var(--ch-surface)}.chores-app .priority-pick.active{box-shadow:0 0 0 3px #5b8a7233}.chores-app .priority-pick.priority-p0.active{border-color:#c45c4a;background:#fde8e4;color:#a63d2f}.chores-app .priority-pick.priority-p1.active{border-color:#c49a3c;background:#fdf3e0;color:#8a6520}.chores-app .priority-pick.priority-p2.active{border-color:#8a9a90;background:#eef0ee;color:#5f6b63}.chores-app .list-card-controls{display:flex;gap:.5rem;margin:.5rem 0}.chores-app .status-select{border:1px solid var(--ch-border);border-radius:6px;padding:.25rem .4rem;font-size:.8125rem;background:var(--ch-surface);color:var(--ch-text)}.chores-app .status-select.compact{font-size:.75rem;padding:.2rem .35rem}.chores-app .card-status-row{margin-top:.5rem}.chores-app .list-view-wrap{padding:0 1rem 1.5rem}.chores-app .list-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-bottom:.85rem;padding:.85rem 1rem;background:var(--ch-surface);border-radius:var(--ch-radius);box-shadow:var(--ch-shadow)}.chores-app .list-toolbar-filters{display:flex;flex-wrap:wrap;gap:.5rem;flex:1;min-width:240px}.chores-app .list-search{flex:1;min-width:160px;border:1px solid var(--ch-border);border-radius:8px;padding:.45rem .75rem;font:inherit;background:#faf8f5}.chores-app .list-toolbar-filters select{border:1px solid var(--ch-border);border-radius:8px;padding:.45rem .65rem;font-size:.8125rem;background:var(--ch-surface)}.chores-app .list-toolbar-count{margin:0;font-size:.8125rem;font-weight:600;color:var(--ch-muted);white-space:nowrap}.chores-app .list-sort-hint{width:100%;font-size:.75rem;color:var(--ch-muted)}.chores-app .status-multi-filter{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;width:100%}.chores-app .status-multi-label{font-size:.75rem;font-weight:700;color:var(--ch-muted);text-transform:uppercase;letter-spacing:.04em;margin-right:.25rem}.chores-app .status-chip{border:1px solid var(--ch-border);border-radius:999px;padding:.25rem .6rem;font-size:.75rem;font-weight:600;background:var(--ch-surface);color:var(--ch-muted);cursor:pointer;opacity:.55}.chores-app .status-chip.active{opacity:1;box-shadow:inset 0 0 0 1px #fff6}.chores-app .status-chip.status-not_started.active{background:#eee9e2;color:#5c564e;border-color:#ddd6cc}.chores-app .status-chip.status-in_progress.active{background:var(--ch-accent-soft);color:var(--ch-accent);border-color:#a8ccb8}.chores-app .status-chip.status-done.active{background:#e0ebe4;color:#3d6b55;border-color:#b8d4c4}.chores-app .status-chip.status-blocked.active{background:var(--ch-warn-soft);color:var(--ch-warn);border-color:#e8b4aa}.chores-app .status-chip.toggle.active{background:#f0ebe4;color:var(--ch-text)}.chores-app .status-multi-warn{font-size:.75rem;color:var(--ch-warn)}.chores-app .list-due-group{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.7rem 1rem .35rem;background:linear-gradient(180deg,#f5f1eb 0%,transparent 100%);border-bottom:1px solid var(--ch-border);font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--ch-muted)}.chores-app .list-due-group.overdue{color:var(--ch-warn)}.chores-app .list-due-group.today{color:var(--ch-accent)}.chores-app .list-due-group.soon{color:var(--ch-soon)}.chores-app .list-due-group.none{color:#9a9086;font-style:italic;text-transform:none;font-weight:600}.chores-app .list-due-group-count{font-size:.6875rem;font-weight:700;background:#0000000f;border-radius:999px;padding:.1rem .45rem}.chores-app .list-table{background:var(--ch-surface);border-radius:var(--ch-radius);box-shadow:var(--ch-shadow);overflow:hidden}.chores-app .list-row{display:grid;grid-template-columns:44px minmax(140px,2fr) 88px 72px 120px 88px 108px 100px 130px minmax(72px,88px);gap:.5rem .65rem;align-items:center;padding:.65rem 1rem;border-bottom:1px solid var(--ch-border)}.chores-app .list-header{background:#faf8f5;border-bottom:2px solid var(--ch-border)}.chores-app .list-item{cursor:pointer;transition:background .12s}.chores-app .list-item:hover{background:#faf8f5}.chores-app .list-item.priority-row-p0{box-shadow:inset 3px 0 #c45c4a}.chores-app .list-item.priority-row-p1{box-shadow:inset 3px 0 #c49a3c}.chores-app .list-cell{min-width:0}.chores-app .list-sort-header{display:inline-flex;align-items:center;gap:.25rem;border:none;background:none;padding:0;font:inherit;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ch-muted);cursor:pointer}.chores-app .list-sort-header:hover,.chores-app .list-sort-header.active{color:var(--ch-accent)}.chores-app .sort-arrow{font-size:.75rem}.chores-app .list-empty{padding:2rem 1rem;text-align:center;color:var(--ch-muted)}.chores-app .list-thumb{width:36px;height:36px;border-radius:8px;object-fit:cover}.chores-app .list-thumb.placeholder{display:inline-flex;align-items:center;justify-content:center;background:var(--ch-accent-soft);font-size:1rem}.chores-app .list-name-row{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.chores-app .list-name{font-weight:600}.chores-app .list-sub{font-size:.75rem;color:var(--ch-muted)}.chores-app .col-due.overdue{color:var(--ch-warn);font-weight:600}.chores-app .list-progress{display:flex;align-items:center;gap:.5rem;min-width:120px}.chores-app .list-progress .progress-bar{flex:1;min-width:48px}.chores-app .progress-quick{border:1px solid var(--ch-border);border-radius:6px;font-size:.75rem;padding:.15rem .25rem;background:var(--ch-surface)}.chores-app .list-cards{display:none;padding:0 1rem 1.5rem;flex-direction:column;gap:.75rem}.chores-app .list-card{background:var(--ch-surface);border-radius:var(--ch-radius);padding:.85rem 1rem;box-shadow:var(--ch-shadow);cursor:pointer}.chores-app .list-card-head{display:flex;align-items:center;gap:.5rem}.chores-app .list-card-head h3{margin:0;flex:1;font-size:1rem}.chores-app .list-card-meta{display:flex;gap:.75rem;margin:.5rem 0;font-size:.8125rem;color:var(--ch-muted)}.chores-app .list-card-meta .overdue{color:var(--ch-warn);font-weight:600}@media(max-width:960px){.chores-app .list-view-wrap{overflow-x:auto}.chores-app .list-table{min-width:1000px}}@media(max-width:720px){.chores-app .list-view-wrap{display:none}.chores-app .list-cards{display:flex}}.chores-app .column-title{display:flex;align-items:center;gap:.4rem;margin:0 0 .75rem;font-size:.9375rem;font-weight:700}.chores-app .column-count{margin-left:auto;background:var(--ch-border);border-radius:999px;padding:.1rem .5rem;font-size:.75rem;font-weight:600}.chores-app .column-cards{display:flex;flex-direction:column;gap:.75rem}.chores-app .column-empty{font-size:.8125rem;color:var(--ch-muted);margin:0}.chores-app .project-card{background:var(--ch-surface);border-radius:var(--ch-radius);box-shadow:var(--ch-shadow);overflow:hidden;cursor:pointer;transition:transform .15s,box-shadow .15s}.chores-app .project-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #2c28251f}.chores-app .project-card-media{position:relative;height:120px;background:linear-gradient(135deg,#e8e0d4,#d4e8dc)}.chores-app .project-card-img{width:100%;height:100%;object-fit:cover}.chores-app .project-card-placeholder{display:flex;align-items:center;justify-content:center;height:100%;font-size:2.5rem}.chores-app .kind-badge{position:absolute;top:.5rem;left:.5rem;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.2rem .5rem;border-radius:6px;background:#ffffffeb}.chores-app .project-card-body{padding:.75rem}.chores-app .project-card-title{margin:0 0 .5rem;font-size:1rem;font-weight:650;line-height:1.3}.chores-app .project-card-meta{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.5rem}.chores-app .meta-chip{font-size:.75rem;padding:.15rem .45rem;border-radius:6px;background:#f0ebe3;color:var(--ch-muted)}.chores-app .meta-chip.assignee{background:var(--ch-accent-soft);color:var(--ch-accent);font-weight:600}.chores-app .meta-chip.due.urgent{background:var(--ch-warn-soft);color:var(--ch-warn);font-weight:600}.chores-app .meta-chip.materials{background:#fff3d4;color:#8a6a20}.chores-app .task-summary{font-size:.75rem;color:var(--ch-muted);margin-bottom:.4rem}.chores-app .progress-row{display:flex;align-items:center;gap:.5rem}.chores-app .progress-row.large .progress-bar{height:10px}.chores-app .progress-bar{flex:1;height:6px;background:#eee8df;border-radius:999px;overflow:hidden}.chores-app .progress-fill{height:100%;background:linear-gradient(90deg,var(--ch-accent),#7aad8f);border-radius:999px;transition:width .3s}.chores-app .progress-pct{font-size:.75rem;font-weight:700;color:var(--ch-accent);min-width:2.5rem;text-align:right}.chores-app .quick-progress{display:flex;gap:.25rem;margin-top:.5rem}.chores-app .qp-btn{flex:1;border:1px solid var(--ch-border);background:var(--ch-surface);border-radius:6px;padding:.25rem;font-size:.6875rem;cursor:pointer}.chores-app .qp-btn.active{background:var(--ch-accent-soft);border-color:var(--ch-accent);color:var(--ch-accent);font-weight:700}.chores-app .status-blocked{display:inline-block;margin-top:.4rem;font-size:.75rem;color:var(--ch-warn);font-weight:600}.chores-app .empty-state{text-align:center;padding:3rem 1.5rem}.chores-app .empty-icon{font-size:3rem;display:block;margin-bottom:.75rem}.chores-app .empty-state h2{margin:0 0 .5rem}.chores-app .empty-state p{color:var(--ch-muted);margin:0 0 1.25rem}.chores-app .detail-page,.chores-app .edit-page{max-width:720px;margin:0 auto;padding-bottom:2rem}.chores-app .detail-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;gap:.75rem}.chores-app .detail-header h1{margin:0;font-size:1.125rem}.chores-app .edit-header{align-items:flex-start}.chores-app .edit-header-main{display:flex;flex-direction:column;gap:.25rem;min-width:0}.chores-app .edit-priority-field{display:flex;flex-direction:column;align-items:flex-end;gap:.3rem;flex-shrink:0}.chores-app .edit-priority-field>span{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ch-muted)}.chores-app .edit-priority-field .priority-select{min-width:72px;max-width:none;font-size:.875rem;padding:.4rem .55rem}.chores-app .back-link{color:var(--ch-accent);text-decoration:none;font-weight:600;font-size:.9375rem}.chores-app .detail-actions{display:flex;gap:.5rem;align-items:center;flex-shrink:0}.chores-app .detail-hero{display:grid;grid-template-columns:140px 1fr;gap:1rem;padding:0 1rem 1.25rem}@media(max-width:480px){.chores-app .detail-hero{grid-template-columns:1fr}}.chores-app .detail-hero-img,.chores-app .detail-hero-placeholder{width:100%;aspect-ratio:1;border-radius:var(--ch-radius);object-fit:cover}.chores-app .detail-hero-placeholder{display:flex;align-items:center;justify-content:center;font-size:3rem;background:linear-gradient(135deg,#e8e0d4,#d4e8dc)}.chores-app .detail-hero-info h1{margin:.35rem 0 .5rem;font-size:1.5rem}.chores-app .detail-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin-bottom:.75rem}.chores-app .detail-meta .meta-chip.priority,.chores-app .detail-meta .meta-chip.location{padding:0;background:none;border:none}.chores-app .detail-meta .meta-chip.location .location-select{max-width:140px}.chores-app .detail-meta .meta-chip.priority .priority-select{margin:0;min-width:52px;max-width:none}.chores-app .detail-meta .meta-chip.status{padding:0;background:none;border:none}.chores-app .detail-section{padding:0 1rem 1.25rem}.chores-app .detail-section h2{margin:0 0 .6rem;font-size:.8125rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ch-muted)}.chores-app .detail-text{margin:0;line-height:1.55}.chores-app .howto-text{margin:0;white-space:pre-wrap;font-family:inherit;font-size:.9375rem;line-height:1.55;background:var(--ch-surface);border:1px solid var(--ch-border);border-radius:var(--ch-radius);padding:1rem}.chores-app .task-list,.chores-app .material-list{list-style:none;margin:0 0 .75rem;padding:0}.chores-app .task-list li{display:flex;align-items:center;gap:.5rem;padding:.5rem 0;border-bottom:1px solid var(--ch-border)}.chores-app .task-reorder{display:flex;flex-direction:column;gap:2px;flex-shrink:0}.chores-app .task-drag-handle{flex-shrink:0;width:28px;height:36px;padding:0;border:1px solid var(--ch-border);border-radius:8px;background:var(--ch-surface);color:var(--ch-muted);font-size:.75rem;line-height:1;letter-spacing:-.15em;cursor:grab;touch-action:none}.chores-app .task-drag-handle:hover{background:var(--ch-accent-soft);color:var(--ch-accent);border-color:var(--ch-accent)}.chores-app .task-drag-handle:active{cursor:grabbing}.chores-app .task-list li.dragging{opacity:.45}.chores-app .task-list li.drag-over{box-shadow:inset 0 2px 0 var(--ch-accent);background:#faf8f5}.chores-app .task-reorder button{width:28px;height:22px;padding:0;border:1px solid var(--ch-border);border-radius:6px;background:var(--ch-surface);color:var(--ch-muted);font-size:.75rem;line-height:1;cursor:pointer}.chores-app .task-reorder button:hover:not(:disabled){background:var(--ch-accent-soft);color:var(--ch-accent);border-color:var(--ch-accent)}.chores-app .task-reorder button:disabled{opacity:.35;cursor:not-allowed}.chores-app .material-list li{display:flex;align-items:center;gap:.5rem;padding:.5rem 0;border-bottom:1px solid var(--ch-border)}.chores-app .task-list label{flex:1;display:flex;align-items:center;gap:.5rem;cursor:pointer}.chores-app .material-toggle{border:1px solid var(--ch-border);background:var(--ch-surface);border-radius:6px;padding:.2rem .5rem;font-size:.75rem;cursor:pointer;white-space:nowrap}.chores-app .material-list li.have .material-toggle{background:var(--ch-accent-soft);border-color:var(--ch-accent);color:var(--ch-accent)}.chores-app .material-name{flex:1;font-weight:500}.chores-app .material-notes{font-size:.8125rem;color:var(--ch-muted)}.chores-app .inline-add{display:flex;gap:.5rem}.chores-app .inline-add input{flex:1;border:1px solid var(--ch-border);border-radius:8px;padding:.5rem .75rem}.chores-app .photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.5rem;margin-bottom:.75rem}.chores-app .photo-thumb{position:relative;margin:0;aspect-ratio:1;border-radius:10px;overflow:hidden}.chores-app .photo-thumb img{width:100%;height:100%;object-fit:cover}.chores-app .photo-remove{position:absolute;top:4px;right:4px;width:22px;height:22px;border:none;border-radius:50%;background:#0000008c;color:#fff;cursor:pointer;font-size:14px;line-height:1}.chores-app .edit-form{padding:0 1rem;display:flex;flex-direction:column;gap:1rem}.chores-app .field{display:flex;flex-direction:column;gap:.35rem}.chores-app .field>span{font-size:.8125rem;font-weight:600;color:var(--ch-muted)}.chores-app .field input,.chores-app .field textarea{border:1px solid var(--ch-border);border-radius:10px;padding:.6rem .75rem;font:inherit;background:var(--ch-surface)}.chores-app .kind-picker{display:flex;gap:.5rem;flex-wrap:wrap}.chores-app .kind-pick{flex:1;min-width:90px;border:2px solid var(--ch-border);background:var(--ch-surface);border-radius:10px;padding:.6rem;cursor:pointer;font-weight:600}.chores-app .kind-pick.active{border-color:var(--ch-accent);background:var(--ch-accent-soft)}.chores-app .btn-primary.full{width:100%;padding:.85rem;font-size:1rem;margin-top:.5rem}.chores-app .btn-sm{padding:.3rem .6rem;font-size:.8125rem;border-radius:8px;border:1px solid var(--ch-border);background:var(--ch-surface);color:var(--ch-text);font-weight:600;cursor:pointer}.chores-app .section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.6rem}.chores-app .section-heading h2{margin:0}.chores-app .task-thumb{width:40px;height:40px;border-radius:8px;object-fit:cover;flex-shrink:0;background:#eee8df}.chores-app .task-thumb.placeholder{display:inline-block}.chores-app .task-label{flex:1;display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;cursor:pointer;min-width:0}.chores-app .task-title{font-weight:500}.chores-app .task-list li.done .task-title{text-decoration:line-through;color:var(--ch-muted)}.chores-app .task-list li.optional{background:linear-gradient(90deg,#f3efe8 0%,transparent 72%);border-left:3px dashed #c9bfb0;padding-left:.65rem;margin-left:-.15rem;border-radius:0 8px 8px 0}.chores-app .task-list li.optional .task-title{color:var(--ch-muted)}.chores-app .task-title-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;min-width:0}.chores-app .task-optional-badge{display:inline-flex;align-items:center;gap:.2rem;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#8a7d6e;background:#ebe4d9;border:1px dashed #c9bfb0;border-radius:999px;padding:.1rem .45rem;white-space:nowrap}.chores-app .task-optional-btn{flex-shrink:0;width:32px;height:32px;border:1px dashed var(--ch-border);border-radius:8px;background:var(--ch-surface);color:var(--ch-muted);font-size:1rem;line-height:1;cursor:pointer;opacity:.55}.chores-app .task-optional-btn:hover{opacity:1;border-color:#c9bfb0;background:#f3efe8}.chores-app .task-optional-btn.is-optional{opacity:1;border-style:solid;border-color:#c9bfb0;background:#ebe4d9;color:#8a7d6e;box-shadow:inset 0 0 0 1px #ffffff80}.chores-app .optional-option{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;border:2px solid var(--ch-border);border-radius:12px;background:#faf8f5;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.chores-app .optional-option:hover{border-color:#c9bfb0;background:#f3efe8}.chores-app .optional-option.active{border-color:#b8a99a;background:#ebe4d9;box-shadow:0 0 0 3px #c9bfb040}.chores-app .optional-option-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.chores-app .optional-option-icon{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:var(--ch-surface);border:1px dashed #c9bfb0;color:#8a7d6e;font-size:1.1rem}.chores-app .optional-option.active .optional-option-icon{border-style:solid;background:#fff}.chores-app .optional-option-body{flex:1;display:flex;flex-direction:column;gap:.15rem;min-width:0}.chores-app .optional-option-title{font-size:.9375rem;font-weight:700;color:var(--ch-text)}.chores-app .optional-option-hint{font-size:.8125rem;color:var(--ch-muted);line-height:1.35}.chores-app .optional-option-mark{flex-shrink:0;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--ch-accent);color:#fff;font-size:.75rem;font-weight:700;opacity:0;transform:scale(.8);transition:opacity .15s,transform .15s}.chores-app .optional-option.active .optional-option-mark{opacity:1;transform:scale(1)}.chores-app .section-subtitle{margin:.2rem 0 0;font-size:.8125rem;color:var(--ch-muted)}.chores-app .modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#14121073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.chores-app .modal-panel{background:var(--ch-surface);border-radius:var(--ch-radius);box-shadow:0 12px 40px #0003;width:100%;max-width:420px;max-height:90vh;overflow-y:auto}.chores-app .modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1rem 0}.chores-app .modal-header h2{margin:0;font-size:1.125rem}.chores-app .task-edit-modal .edit-form{padding:1rem}.chores-app .modal-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.5rem}.chores-app .photo-grid.compact{margin-bottom:.5rem;grid-template-columns:repeat(auto-fill,minmax(72px,1fr))}
