.pulse-habits{padding:24px;border:1px solid var(--line);border-radius:22px;background:var(--panel)}
.pulse-habits-heading,.pulse-calendar header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.pulse-habits-heading h2{font-size:19px;margin:0}.pulse-all{display:flex;align-items:center;gap:6px;background:none;border:0;color:var(--lime);font-size:13px;cursor:pointer}
.pulse-habit-row{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid var(--line)}.pulse-habit-icon{width:43px;height:43px;flex-shrink:0;border-radius:13px;background:color-mix(in srgb,var(--lime) 9%,transparent);color:var(--lime);display:grid;place-items:center}.pulse-habit-main{flex:1;min-width:0}.pulse-habit-name{display:block;text-align:left;color:var(--text);border:0;background:none;padding:0;font:inherit;font-weight:600;line-height:1.4;cursor:pointer;overflow-wrap:anywhere}.pulse-habit-main small{display:block;color:var(--muted);margin:4px 0 8px;font-size:12px}.pulse-habit-main progress{display:block;width:100%;height:5px;appearance:none;border:0;border-radius:4px;overflow:hidden;background:var(--line)}.pulse-habit-main progress::-webkit-progress-bar{background:var(--line)}.pulse-habit-main progress::-webkit-progress-value{background:var(--lime);border-radius:4px}.pulse-habit-main progress::-moz-progress-bar{background:var(--lime)}.pulse-habit-action{min-width:36px;min-height:36px;padding:6px;border-radius:11px;border:1px solid var(--line);background:transparent;color:var(--lime);font:inherit;font-size:12px;font-weight:650;cursor:pointer}.pulse-habit-action.complete{background:color-mix(in srgb,var(--lime) 15%,transparent);border-color:color-mix(in srgb,var(--lime) 35%,transparent)}.pulse-habit-action:disabled{opacity:.4;cursor:default}.pulse-add-habit{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:14px;border:0;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-size:12px}
.pulse-calendar{margin-top:22px;padding-top:23px;border-top:1px solid var(--line)}.pulse-calendar header h3{font-size:16px;margin:0}.pulse-calendar header span{font-size:12px;color:var(--muted);text-transform:capitalize}.pulse-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.pulse-weekday{text-align:center;color:var(--muted);font-size:10px;padding-bottom:5px}.pulse-calendar-day{aspect-ratio:1;min-width:0;border:1px solid transparent;border-radius:9px;color:var(--text);font:inherit;font-size:12px;background:color-mix(in srgb,var(--text) 4%,transparent);cursor:pointer}.pulse-calendar-day.complete{background:color-mix(in srgb,var(--lime) 36%,var(--panel));color:var(--text)}.pulse-calendar-day.partial{background:color-mix(in srgb,var(--lime) 16%,var(--panel))}.pulse-calendar-day.neutral{color:var(--muted);background:transparent}.pulse-calendar-day.selected{border-color:var(--lime)}.pulse-calendar-day.today{font-weight:750}.pulse-calendar-caption{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--muted);margin:14px 0 0}.pulse-calendar-caption i{width:7px;height:7px;border-radius:2px;background:var(--lime)}.habit-archive{padding:20px;border:1px solid var(--line);border-radius:16px;margin-top:20px}.habit-archive summary{cursor:pointer}.habit-archive-row{display:flex;justify-content:space-between;align-items:center;gap:15px;padding-top:15px}.pulse-all:focus-visible,.pulse-habit-name:focus-visible,.pulse-calendar-day:focus-visible,.pulse-habit-action:focus-visible,.pulse-add-habit:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
@media(max-width:600px){.pulse-habits{padding:19px}.pulse-calendar-grid{gap:8px}.pulse-calendar-day{min-height:36px}}
.pulse-calendar-day{box-sizing:border-box;width:100%;height:36px;min-height:36px;max-height:36px;aspect-ratio:auto;padding:0;display:grid;place-items:center;outline-offset:0}
.pulse-calendar-day.neutral{background:color-mix(in srgb,var(--text) 3%,transparent)}
.pulse-calendar-grid{align-items:center}
.pulse-habits,.pulse-calendar{background:linear-gradient(135deg,color-mix(in srgb,var(--raised) 75%,var(--panel)),var(--panel));border:1px solid var(--line);border-radius:14px;padding:20px}.pulse-calendar{margin-top:18px}.pulse-habit-count{font-size:12px;font-weight:500;color:var(--muted);margin-left:9px}.pulse-habits-heading{margin-bottom:8px}.pulse-habit-action.complete{background:var(--lime);color:var(--bg);border-color:var(--lime)}.pulse-calendar header{margin-bottom:5px}.pulse-calendar header h3{text-transform:capitalize;font-size:16px}.pulse-calendar-subtitle{margin:0 0 20px;color:var(--muted);font-size:12px}.pulse-calendar-navigation{display:flex;gap:6px}.pulse-calendar-navigation button{display:grid;place-items:center;width:27px;height:27px;padding:0;background:transparent;color:var(--muted);border:0;border-radius:6px;cursor:pointer}.pulse-calendar-navigation button:hover{background:var(--raised);color:var(--text)}.pulse-calendar-day.complete{background:color-mix(in srgb,var(--lime) 65%,var(--panel));color:var(--bg)}.pulse-calendar-day.intensity-1{background:color-mix(in srgb,var(--lime) 12%,var(--panel))}.pulse-calendar-day.intensity-2{background:color-mix(in srgb,var(--lime) 25%,var(--panel))}.pulse-calendar-day.intensity-3{background:color-mix(in srgb,var(--lime) 40%,var(--panel))}.pulse-calendar-day.intensity-4{background:color-mix(in srgb,var(--lime) 52%,var(--panel))}.pulse-calendar-legend{display:flex;align-items:center;justify-content:flex-end;gap:5px;margin-top:16px;color:var(--muted);font-size:10px}.pulse-calendar-legend i{width:10px;height:10px;border-radius:3px;background:color-mix(in srgb,var(--lime) 8%,var(--panel))}.pulse-calendar-legend i:nth-of-type(2){background:color-mix(in srgb,var(--lime) 18%,var(--panel))}.pulse-calendar-legend i:nth-of-type(3){background:color-mix(in srgb,var(--lime) 30%,var(--panel))}.pulse-calendar-legend i:nth-of-type(4){background:color-mix(in srgb,var(--lime) 45%,var(--panel))}.pulse-calendar-legend i:nth-of-type(5){background:color-mix(in srgb,var(--lime) 65%,var(--panel))}

.pulse-calendar{margin-top:0}.pulse-calendar header h3{font-size:20px}.pulse-habits-heading h2{font-size:21px}
.pulse-habit-row{padding:11px 10px;margin-top:6px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(105deg,var(--raised),color-mix(in srgb,var(--panel) 90%,var(--raised)))}
.pulse-habit-main small{margin:4px 0 7px}.pulse-calendar-day{height:40px;min-height:40px;max-height:40px}
.pulse-calendar-day.selected{outline:0;border:1px solid var(--lime);box-shadow:0 0 0 2px color-mix(in srgb,var(--lime) 12%,transparent)}
:root[data-theme=light] .pulse-habit-action.complete{color:#fff}
.modal-form:has([name=kind] option[value=boolean]:checked) .habit-quantity-field{display:none}
