.recurrence-board,.recurrence-detail,.recurrence-fields,.recurrence-form{gap:1rem;min-width:0;display:grid}.recurrence-detail{border-top:1px solid var(--divider);margin-top:1rem;padding-top:2rem}.recurrence-list{margin:0;padding:0;list-style:none}.recurrence-list>li{border-bottom:1px solid var(--divider);overflow-wrap:anywhere;gap:.8rem;padding-block:1.5rem;display:grid}.recurrence-form fieldset,.recurrence-range fieldset{border:0;gap:1rem;min-width:0;margin:0;padding:0;display:grid}.recurrence-form legend,.recurrence-range legend{padding-bottom:1rem;font-weight:600}.recurrence-form label,.recurrence-range label{gap:.4rem;display:grid}.recurrence-form label.r2-check-row{display:flex}.recurrence-form label.r2-check-row input{flex:none}.recurrence-form input,.recurrence-form select,.recurrence-form textarea,.recurrence-range input{border:1px solid var(--control);border-radius:var(--radius);background:var(--surface);width:100%;min-width:0;min-height:44px;color:var(--text);padding:10px 12px}.recurrence-form .recurrence-check,.recurrence-week label{align-items:center;gap:.75rem;display:flex}.recurrence-form input[type=checkbox]{flex-shrink:0;width:24px;height:24px;min-height:24px}.recurrence-week label{min-height:44px}.recurrence-form summary{cursor:pointer;min-height:44px;padding-block:.75rem}.recurrence-form details>div{margin-block:1rem}.recurrence-form p{overflow-wrap:anywhere}@media (min-width:700px){.recurrence-range fieldset{grid-template-columns:1fr 1fr auto;align-items:end}}.recurrence-empty{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(28px,5vw,72px);max-width:1000px;min-height:440px;padding-block:40px;display:grid}.recurrence-empty-copy{min-width:0}.recurrence-empty-mark{background:var(--primary-soft);width:52px;height:52px;color:var(--primary-text);border-radius:16px;justify-content:center;align-items:center;margin-bottom:24px;display:inline-flex}.recurrence-empty h2{letter-spacing:-.6px;margin:0 0 16px;font-size:clamp(26px,2.6vw,32px);font-weight:600;line-height:1.2}.recurrence-empty-copy>p{max-width:40ch;color:var(--muted);margin:0 0 24px;line-height:1.7}.recurrence-starters{border:1px solid var(--divider);border-radius:var(--radius-lg);background:var(--surface);min-width:0;padding:24px 16px 16px}.recurrence-starters>h3{margin:0 8px 6px;font-size:16px;font-weight:600}.recurrence-starters>p{color:var(--muted);margin:0 8px 16px;font-size:13px}.recurrence-starters ul{margin:0;padding:0;list-style:none}.recurrence-starters li+li{border-top:1px solid var(--divider)}.recurrence-starters button{text-align:left;background:0 0;border:0;grid-template-columns:24px minmax(0,1fr) 18px;gap:12px;width:100%;min-height:80px;padding:16px 8px;display:grid}.recurrence-starters button:hover{background:var(--hover)}.recurrence-starters button>span{gap:5px;min-width:0;display:grid}.recurrence-starters strong{overflow-wrap:anywhere;font-size:14px;font-weight:500;line-height:1.4}.recurrence-starters small,.recurrence-starter-icon,.recurrence-starter-arrow{color:var(--muted)}.recurrence-starters small{font-size:12px;font-weight:400}@media (max-width:899px){.recurrence-empty{grid-template-columns:minmax(0,1fr);gap:32px;max-width:600px;min-height:0;padding-block:20px}.recurrence-empty-mark{margin-bottom:20px}}.recurrence-form fieldset.recurrence-freq,.recurrence-form fieldset.recurrence-days{gap:.75rem}.recurrence-seg{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.recurrence-chips{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.recurrence-form label.recurrence-seg-item,.recurrence-form label.recurrence-chip{gap:0;display:block;position:relative}.recurrence-form .recurrence-seg-item input,.recurrence-form .recurrence-chip input{opacity:0;cursor:pointer;width:100%;height:100%;min-height:0;margin:0;position:absolute;inset:0}.recurrence-seg-item>span,.recurrence-chip>span{border:1px solid var(--control);border-radius:var(--radius);background:var(--surface);min-height:44px;color:var(--text);text-align:center;justify-content:center;align-items:center;gap:4px;padding:0 8px;font-size:14px;display:flex}.recurrence-chip>span{white-space:nowrap;border-radius:10px;min-height:48px}.recurrence-chip svg{flex:none;width:12px;height:12px;display:none}.recurrence-seg-item input:checked+span,.recurrence-chip input:checked+span{border-color:var(--primary-text);background:var(--primary-text);color:var(--surface);font-weight:600}.recurrence-chip input:checked+span svg{display:block}.recurrence-seg-item input:focus-visible+span,.recurrence-chip input:focus-visible+span{outline:2px solid var(--primary-text);outline-offset:2px}.recurrence-presets{flex-wrap:wrap;gap:4px;display:flex}.recurrence-presets button{border-radius:var(--radius);min-height:44px;color:var(--primary-text);box-shadow:none;text-underline-offset:3px;background:0 0;border:0;padding:0 12px;font-weight:500;text-decoration:underline}.recurrence-presets button[aria-pressed=true]{background:var(--primary-soft);font-weight:600;text-decoration:none}.recurrence-presets .recurrence-clear{color:var(--muted)}.recurrence-days-error{border-radius:var(--radius);background:var(--danger-soft);color:var(--danger);margin:0;padding:10px 12px;font-weight:500}.recurrence-form .recurrence-days-summary{min-height:0;margin:0}.recurrence-days-summary:not(:empty){border-radius:var(--radius);background:var(--primary-soft);padding:10px 12px}.recurrence-strip{gap:3px;margin-top:4px;display:flex}.recurrence-strip>span{background:var(--raised);width:18px;height:22px;color:var(--muted);border-radius:5px;justify-content:center;align-items:center;font-size:11px;display:flex}.recurrence-strip>span[data-on]{background:var(--primary-text);color:var(--surface);font-weight:700}.recurrence-fit{container-type:inline-size}@container (min-width:440px){.recurrence-seg{grid-template-columns:repeat(4,minmax(0,1fr))}}@container (min-width:480px){.recurrence-chips{grid-template-columns:repeat(7,minmax(0,1fr))}.recurrence-chip>span{gap:2px;padding:0 2px;font-size:13px}}.recurrence-cards{border:1px solid var(--divider);border-radius:var(--radius-lg);background:var(--surface);margin:0;padding:0;list-style:none;overflow:hidden}.recurrence-cards>li+li{border-top:1px solid var(--divider)}.recurrence-card{width:100%;min-height:72px;color:var(--text);text-align:left;box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"text state""strip strip";align-items:center;gap:8px 12px;padding:14px 16px;font-weight:400;display:grid}.recurrence-card:hover:not(:disabled){background:var(--hover)}.recurrence-card[aria-pressed=true]{background:var(--primary-soft)}.recurrence-card .recurrence-strip{grid-area:strip;margin-top:0}.recurrence-card-text{overflow-wrap:anywhere;grid-area:text;gap:2px;min-width:0;display:grid}.recurrence-card-text strong{font-size:15px;font-weight:600}.recurrence-state{background:var(--teal-soft);color:var(--teal);border-radius:999px;grid-area:state;padding:3px 10px;font-size:13px}.recurrence-state.off{background:var(--raised);color:var(--muted)}@media (min-width:640px){.recurrence-card{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"strip text state";gap:16px;padding:16px 20px}.recurrence-card .recurrence-strip:empty{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"text state"}.recurrence-card:not(:has(.recurrence-strip)){grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"text state"}}.recurrence-detail{align-content:start;gap:20px;min-width:0;display:grid}.recurrence-head{gap:6px;display:grid}.recurrence-head p{margin:0}.recurrence-head-line{align-items:flex-start;gap:12px;display:flex}.recurrence-head-line h2{overflow-wrap:anywhere;flex-grow:1;margin:0;font-size:22px;font-weight:600}.recurrence-head-line .recurrence-state{flex:none}.recurrence-head-actions{align-items:center;gap:8px;display:flex}.recurrence-history{gap:8px;display:grid}.recurrence-history h3{margin:0;font-size:16px;font-weight:600}.recurrence-history-list{border:1px solid var(--divider);border-radius:var(--radius-lg);background:var(--surface);margin:0;padding:0;list-style:none;overflow:hidden}:is(.recurrence-history-list>li+li,.recurrence-history-list>li:has(+li)+li){border-top:1px solid var(--divider)}.recurrence-history-row{width:100%;min-height:56px;color:var(--text);text-align:left;box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px 16px;font-weight:400;display:grid}label.recurrence-history-row{cursor:pointer;position:relative}label.recurrence-history-row:has(input:focus-visible){outline:2px solid var(--primary-text);outline-offset:-2px}label.recurrence-history-row[data-pending]{cursor:progress}label.recurrence-history-row:hover{background:color-mix(in srgb, var(--text) 4%, transparent)}.recurrence-history-day{font-size:15px;font-weight:500}.recurrence-mark{border:2px solid var(--control);width:28px;height:28px;color:var(--muted);border-radius:50%;justify-content:center;align-items:center;display:flex}.recurrence-result{color:var(--muted);font-size:14px;font-weight:600}.recurrence-history-list>li[data-tone=done]{background:var(--teal-soft)}.recurrence-history-list>li[data-tone=done] .recurrence-mark{border-color:var(--teal);background:var(--teal);color:var(--surface)}.recurrence-history-list>li[data-tone=done] .recurrence-result{color:var(--teal)}.recurrence-history-list>li[data-tone=missed]{background:color-mix(in srgb, var(--danger-soft) 55%, var(--surface))}.recurrence-history-list>li[data-tone=missed] .recurrence-mark{border-color:var(--danger);background:var(--danger-soft);color:var(--danger)}.recurrence-history-list>li[data-tone=missed] .recurrence-result{color:var(--danger)}.recurrence-history-note,.recurrence-def{gap:2px;padding:12px 16px;display:grid}.recurrence-none{border:1px dashed var(--control);border-radius:var(--radius-lg);color:var(--muted);text-align:center;margin:0;padding:20px 16px}.recurrence-more{min-height:44px;box-shadow:none;color:var(--primary-text);background:0 0;border:0;justify-self:start;font-weight:500}.recurrence-defs{gap:8px;display:grid}.recurrence-wrap{container-type:inline-size}@container (min-width:820px){.recurrence-board{grid-template-columns:minmax(340px,460px) minmax(0,1fr);align-items:start;gap:32px}.recurrence-board>.recurrence-detail{border-top:0;border-left:1px solid var(--divider);margin-top:0;padding-top:0;padding-left:32px}}.recurrence-top{margin-bottom:20px}
