.cycling-legend{margin-top:14px}.cycling-eyebrow{font-family:var(--font-mono);font-size:9.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--nn-text-muted);margin-bottom:6px}.cycling-badge{--nn-tier-daily: #10b981;--nn-tier-cycle: #b8977e;--tier-color: var(--nn-text-2);--tier-tint: rgba(61, 50, 38, .05);--tier-edge: var(--nn-border-muted);display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"rhythm text" "toggle toggle";align-items:center;-moz-column-gap:14px;column-gap:14px;row-gap:8px;padding:10px 14px 8px 12px;background:var(--tier-tint);border:1px solid var(--tier-edge);border-left:3px solid var(--tier-color);border-radius:10px}.cycling-badge.tier-daily{--tier-color: var(--nn-tier-daily);--tier-tint: rgba(16, 185, 129, .06);--tier-edge: rgba(16, 185, 129, .2)}.cycling-badge.tier-cycle{--tier-color: var(--nn-tier-cycle);--tier-tint: rgba(184, 151, 126, .08);--tier-edge: rgba(184, 151, 126, .28)}.cycling-bottle{display:none}.cycling-rhythm{grid-area:rhythm;display:grid;grid-template-columns:repeat(7,auto);gap:4px;align-items:end;padding-right:2px}.cycling-rhythm .r-cell{display:flex;flex-direction:column;align-items:center;gap:3px;width:11px}.cycling-rhythm .r-day{font-family:var(--font-mono);font-size:8px;font-weight:700;letter-spacing:.04em;color:var(--nn-text-subtle, #a89885);line-height:1}.cycling-rhythm .r-cell.off .r-day{opacity:.4}.cycling-rhythm .r-dot{width:6px;height:6px;border-radius:50%;background:var(--tier-color);box-shadow:0 0 0 1px var(--tier-color)}.cycling-rhythm .r-cell.off .r-dot{background:#3d32262e;box-shadow:none;opacity:1}.cycling-rhythm.monthly{grid-template-columns:repeat(6,auto)}.cycling-rhythm.monthly .r-cell{width:22px}.cycling-rhythm.monthly .r-day{font-size:7.5px;letter-spacing:.06em}.cycling-text{grid-area:text;min-width:0}.cycling-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cycling-name{font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--tier-color)}.cycling-sched{font-family:var(--font-mono);font-size:9.5px;font-weight:600;letter-spacing:.06em;text-transform:lowercase;color:var(--nn-text-2);padding:2px 6px;border-radius:999px;background:var(--nn-bg-2);border:1px solid var(--tier-edge)}.cycling-desc{margin:4px 0 0;font-family:var(--font-serif);font-style:italic;font-size:13px;line-height:1.35;color:var(--nn-text-2)}.cycling-badge .cycling-why-toggle{grid-area:toggle;display:flex;align-items:center;justify-content:space-between;gap:5px;width:100%;padding:6px 10px;margin-top:2px;border:1px solid var(--tier-edge);border-radius:6px;background:var(--nn-bg-2, #fdfcfa);cursor:pointer;font-family:var(--font-mono);font-size:9.5px;font-weight:700;line-height:1;letter-spacing:.14em;text-transform:uppercase;color:var(--tier-color);transition:background .12s ease,border-color .12s ease}.cycling-badge .cycling-why-toggle:hover,.cycling-badge .cycling-why-toggle:focus-visible{background:var(--tier-tint);border-color:var(--tier-color)}.cycling-badge .cycling-why-toggle:focus-visible{outline:1px dashed var(--tier-color);outline-offset:3px}.cycling-badge .cycling-why-caret{width:11px;height:11px;flex-shrink:0;color:var(--tier-color);transition:transform .15s ease}.cycling-badge .cycling-why-caret--open{transform:rotate(180deg)}.cycling-chain{grid-column:1 / -1;margin-top:12px;padding:12px 14px 14px;background:var(--nn-bg-1, #fff);border:1px solid var(--tier-edge);border-radius:8px;display:flex;flex-direction:column;align-items:center;gap:6px}.cycling-chain-row{width:100%;display:flex;flex-direction:column;align-items:center;text-align:center;padding:8px 10px;background:var(--tier-tint);border:1px solid var(--tier-edge);border-radius:6px;gap:2px}.cycling-chain-link{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;width:100%;text-decoration:none;color:inherit}.cycling-chain-link:hover .cycling-chain-primary,.cycling-chain-link:focus-visible .cycling-chain-primary{text-decoration:underline;text-decoration-color:var(--tier-color);text-underline-offset:2px}.cycling-chain-eyebrow{font-family:var(--font-mono);font-size:8.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--tier-color)}.cycling-chain-primary{font-family:var(--font-sans, system-ui);font-size:12.5px;font-weight:700;line-height:1.25;color:var(--nn-text)}.cycling-chain-secondary{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.04em;color:var(--nn-text-2)}.cycling-chain-connector{font-family:var(--font-mono);font-size:12px;line-height:1;color:var(--tier-color);opacity:.65}.cycling-chain-notes{width:100%;margin-top:8px;padding-top:10px;border-top:1px dashed var(--tier-edge);display:flex;flex-direction:column;gap:6px}.cycling-chain-note{margin:0;font-family:var(--font-serif);font-size:12.5px;line-height:1.45;color:var(--nn-text-2)}.cycling-chain-note strong{font-family:var(--font-mono);font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--tier-color);margin-right:6px}.cycling-chain-chips{display:flex;flex-wrap:wrap;gap:4px;justify-content:center;margin-top:4px}.cycling-chain-chip{font-family:var(--font-mono);font-size:9px;font-weight:700;letter-spacing:.06em;padding:2px 7px;border-radius:999px;border:1px solid var(--tier-edge);background:var(--nn-bg-1, #fff);color:var(--nn-text-2)}.cycling-chain-chip.above{border-color:var(--tier-color);color:var(--tier-color)}.cycling-chain-chip.below{border-color:var(--nn-text-muted);color:var(--nn-text-muted)}.cycling-chain-chip.cycling-chain-chip-form{font-weight:400;opacity:.7}.cycling-badge.compact{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:8px 10px;border-left-width:2px;border-radius:8px;max-width:none;width:100%}.cycling-badge.compact .cycling-head{gap:6px}.cycling-badge.compact .cycling-name{font-size:9px;letter-spacing:.12em}.cycling-badge.compact .cycling-sched{font-size:8.5px;padding:1px 5px}.cycling-badge.compact .cycling-rhythm{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;width:100%;padding-right:0}.cycling-badge.compact .cycling-rhythm.monthly{grid-template-columns:repeat(6,minmax(0,1fr))}.cycling-badge.compact .cycling-rhythm .r-cell{width:auto;min-width:0}@media (max-width: 768px){.cycling-legend{margin-top:16px;width:100%}.cycling-badge:not(.compact){display:grid;grid-template-columns:96px minmax(0,1fr);grid-template-areas:"bottle text" "rhythm text" "toggle toggle";-moz-column-gap:14px;column-gap:14px;row-gap:10px;align-items:start;padding:14px;width:100%}.cycling-badge:not(.compact) .cycling-bottle{display:block;grid-area:bottle;width:100%;aspect-ratio:1 / 1;border-radius:12px}.cycling-badge:not(.compact) .cycling-rhythm{grid-area:rhythm;justify-self:center}.cycling-badge:not(.compact) .cycling-text{grid-area:text;align-self:center}.cycling-badge:not(.compact) .cycling-head{flex-direction:column;align-items:flex-start;gap:6px}.cycling-rhythm .r-cell{width:10px}.cycling-rhythm .r-day{font-size:7.5px}.cycling-rhythm .r-dot{width:5px;height:5px}.cycling-desc{font-size:12.5px}.cycling-badge:not(.compact).long-cycle{grid-template-columns:132px minmax(0,1fr)}.cycling-rhythm.monthly .r-cell{width:18px}.cycling-rhythm.monthly .r-day{font-size:6.5px;letter-spacing:.04em}}
