.rhythm{max-width:1240px}.rh-head{margin-bottom:1.5rem}.rh-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--violet);margin:0 0 .4rem;font-size:.76rem;font-weight:600}.rh-head h1{margin:0 0 .5rem;font-size:clamp(2rem,3.4vw,3rem)}.rh-head p{max-width:62ch;color:var(--text-soft)}.rh-panel{margin-bottom:1.25rem;padding:1.3rem 1.5rem}.rh-panel-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.9rem;display:flex}.rh-panel-head h2{margin:0;font-size:1.25rem}.rh-panel-head span{color:var(--muted);font-size:.8rem}.rh-off{color:var(--amber);font-size:.9rem}.rh-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.rh-grid .rh-panel{margin-bottom:0}.rh-habits{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.rh-habits li{border-top:1px solid var(--stroke);grid-template-columns:minmax(150px,220px) 1fr auto 3rem;align-items:center;gap:1rem;padding:.4rem 0;display:grid}.rh-habit-name{flex-direction:column;display:flex}.rh-habit-name b{font-weight:600}.rh-habit-name span{color:var(--green);font-size:.76rem}.rh-chain{flex-wrap:nowrap;align-items:center;gap:5px;display:flex}.rh-link{border:1.5px solid color-mix(in srgb, var(--green) 35%, transparent);cursor:pointer;background:0 0;border-radius:50%;width:20px;height:20px;padding:0;position:relative}.rh-link+.rh-link:before{content:"";background:color-mix(in srgb, var(--green) 25%, transparent);width:5px;height:2px;position:absolute;top:50%;right:100%}.rh-link.on{background:var(--green);border-color:var(--green);box-shadow:0 0 10px -2px var(--green)}.rh-link.on+.rh-link.on:before{background:var(--green)}.rh-link.today{outline:2px solid var(--violet);outline-offset:2px}.rh-pct{text-align:right;font-size:1.1rem}.rh-add{gap:.6rem;margin-top:.9rem;display:flex}.rh-add input{border-radius:999px;flex:1;max-width:360px;padding:.55rem 1rem}.rh-ribbon{width:100%;height:auto}.rh-grid-line{stroke:var(--stroke);stroke-width:1px}.rh-line{fill:none;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.rh-line.energy,.rh-dot.energy{stroke:var(--teal)}.rh-line.mood,.rh-dot.mood{stroke:var(--violet)}.rh-dot{fill:var(--bg);stroke-width:2.5px}.rh-day{fill:var(--muted);text-anchor:middle;font-size:11px}.rh-legend{gap:1.2rem;margin:.4rem 0 .8rem;font-size:.82rem;display:flex}.rh-legend .energy{color:var(--teal)}.rh-legend .mood{color:var(--violet)}.rh-check{gap:.55rem;display:grid}.rh-check-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.rh-check-row>span{color:var(--text-soft);text-transform:capitalize;font-size:.88rem}.rh-check-row [role=radiogroup]{gap:.4rem;display:flex}.rh-level{border:1px solid var(--stroke-glow);width:34px;height:34px;color:var(--text-soft);cursor:pointer;transition:transform .2s var(--ease), background .2s;background:0 0;border-radius:50%}.rh-level:hover{transform:scale(1.1)}.rh-level.energy.on{background:var(--teal);color:#062a26;border-color:var(--teal)}.rh-level.mood.on{background:var(--violet);color:#160c30;border-color:var(--violet)}.rh-bars{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.rh-bars li{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto;align-items:center;gap:.7rem;font-size:.84rem;display:grid}.rh-bar-name{text-overflow:ellipsis;white-space:nowrap;color:var(--text-soft);overflow:hidden}.rh-bar-track{height:14px;position:relative}.rh-bar-track i{transform-origin:0;border-radius:4px;width:100%;height:6px;position:absolute;left:0}.rh-bar-track i.est{background:color-mix(in srgb, var(--text) 30%, transparent);top:0}.rh-bar-track i.act{background:var(--amber);top:8px}.rh-bar-num{color:var(--muted);white-space:nowrap}.rh-bias{text-transform:capitalize;flex-wrap:wrap;align-items:baseline;gap:.5rem 1rem;margin:.9rem 0 0;font-size:.84rem;display:flex}.rh-bias b{color:var(--amber)}.rh-bias em{text-transform:none;color:var(--muted);flex-basis:100%;font-size:.78rem}.rh-sub{margin:1.1rem 0 .5rem;font-size:.95rem}.rh-open{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.rh-open li{grid-template-columns:1fr auto 70px auto;align-items:center;gap:.6rem;font-size:.86rem;display:grid}.rh-open-name em{color:var(--rose);margin-left:.5rem;font-size:.76rem;font-style:normal}.rh-open-est{color:var(--muted)}.rh-open input{border-radius:8px;width:70px;padding:.35rem .5rem}@media (max-width:960px){.rh-grid,.rh-habits li{grid-template-columns:1fr}.rh-chain{flex-wrap:wrap}}
