.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:inline-grid;grid-template-columns:auto 1fr;align-items:center;gap:14px;padding:10px 14px 10px 12px;background:var(--tier-tint);border:1px solid var(--tier-edge);border-left:3px solid var(--tier-color);border-radius:10px;max-width:460px}.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{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{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-why-toggle{margin-top:8px;display:inline-flex;align-items:center;gap:6px;padding:4px 0 0;background:transparent;border:none;cursor:pointer;font-family:var(--font-mono);font-size:8.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--tier-color);transition:opacity .12s ease}.cycling-why-toggle:hover,.cycling-why-toggle:focus-visible{opacity:.78}.cycling-why-toggle:focus-visible{outline:1px dashed var(--tier-color);outline-offset:3px}.cycling-why-caret{font-family:var(--font-mono);font-size:13px;font-weight:400;line-height:1;color:var(--tier-color)}.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-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: 640px){.cycling-legend{margin-top:16px}.cycling-badge:not(.compact){display:grid;grid-template-columns:96px minmax(0,1fr);grid-template-areas:"bottle text" "rhythm text" "chain chain";-moz-column-gap:14px;column-gap:14px;row-gap:10px;align-items:start;padding:14px;max-width:none;width:100%}.cycling-badge:not(.compact) .cycling-chain{grid-area:chain}.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}}
