.wod-page{max-width:1240px}.wod-intro{max-width:760px;font-size:.86rem;line-height:1.8}.wod-page section{margin-top:68px;border-top:2px solid #000}.section-heading{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start;padding:16px 0 20px;border-bottom:1px solid #ccc}.section-heading>span{font-family:'Share Tech Mono',monospace;font-size:1.65rem;line-height:1}.section-heading p{margin:0 0 3px;color:#888;font-size:.4rem;text-transform:uppercase;letter-spacing:2px}.section-heading h2{margin:0;padding:0;border:0;font-size:.9rem;text-transform:uppercase;letter-spacing:1px}.daily-card{display:grid;grid-template-columns:260px 1fr;margin-top:24px;border:2px solid #000}.daily-date{display:flex;flex-direction:column;padding:22px;border-right:1px dashed #999}.daily-date>span{font-size:.46rem;text-transform:uppercase;letter-spacing:2px;color:#777}.daily-date strong{margin:5px 0 20px;font-family:'Share Tech Mono',monospace;font-size:1.25rem;font-weight:400}.daily-date em{margin-top:auto;padding:8px;border-left:3px solid #1b9b5b;background:#f2f7f4;font-size:.44rem;font-style:normal;line-height:1.5}.daily-date em.stale{border-color:#c67924;background:#fbf6ef}.daily-program{padding:22px}.daily-program>span{font-size:.4rem;color:#777;text-transform:uppercase;letter-spacing:2px}.daily-program h3{margin:5px 0 18px;font-size:1.2rem;text-transform:uppercase}.daily-rx,.daily-scale{padding:12px 0;border-top:1px dashed #bbb}.daily-program small{display:block;margin-bottom:5px;color:#888;font-size:.4rem;text-transform:uppercase;letter-spacing:1.4px}.daily-program p{margin:3px 0;font-size:.67rem}.daily-program a{display:inline-block;margin-top:10px;color:#111;font-size:.46rem;text-transform:uppercase;letter-spacing:.8px}.finder-controls{display:grid;grid-template-columns:1.3fr repeat(4,1fr);margin-top:24px;border:1px solid #bbb}.finder-controls>label{min-width:0;border-right:1px solid #ddd}.finder-controls>label>span,.finder-controls legend,.creator-grid label>span{display:block;padding:9px 11px 0;color:#777;font-size:.39rem;text-transform:uppercase;letter-spacing:1.3px}.finder-controls input,.finder-controls select,.creator-grid select{box-sizing:border-box;width:100%;min-width:0;border:0;background:#fff;padding:8px 11px 12px;font-family:'JetBrains Mono',monospace;font-size:.5rem}.finder-controls fieldset{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:12px;border:0;border-top:1px dashed #bbb}.finder-controls legend{width:100%;padding:0 0 4px}.pattern-fieldset input{position:absolute;opacity:0}.pattern-fieldset label span{display:block;padding:7px 9px;border:1px solid #ccc;font-size:.43rem;text-transform:uppercase;cursor:pointer}.pattern-fieldset input:checked+span{background:#000;color:#fff;border-color:#000}.finder-foot{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid #ccc}.finder-foot strong{padding:10px 12px;font-family:'Share Tech Mono',monospace;font-size:.54rem;font-weight:400;text-transform:uppercase}.finder-foot button,.card-actions button,.hybrid-output button{border:0;border-left:1px solid #ccc;background:#fff;padding:10px 13px;font-family:'JetBrains Mono',monospace;font-size:.43rem;text-transform:uppercase;cursor:pointer}.finder-foot button:hover,.card-actions button:hover,.hybrid-output button:hover{background:#000;color:#fff}.finder-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px}.wod-card{min-width:0;padding:16px;border:1px solid #bbb}.card-top{display:flex;justify-content:space-between;gap:12px;padding-bottom:11px;border-bottom:2px solid #000}.card-top span{display:block;color:#777;font-size:.37rem;text-transform:uppercase;letter-spacing:1.4px}.card-top h3{margin:2px 0 0;font-size:.78rem;text-transform:uppercase}.card-top em{height:max-content;padding:5px 7px;background:#000;color:#fff;font-size:.38rem;font-style:normal;text-transform:uppercase}.wod-card>p{min-height:42px;margin:13px 0;font-size:.55rem;line-height:1.7}.card-meta{display:grid;grid-template-columns:1fr 2fr;border-top:1px dashed #ccc;border-bottom:1px dashed #ccc}.card-meta span{padding:9px 8px 9px 0;font-size:.46rem}.card-meta span+span{padding-left:10px;border-left:1px dashed #ccc}.card-meta small{display:block;margin-bottom:3px;color:#888;font-size:.34rem;text-transform:uppercase}.card-tags{display:flex;flex-wrap:wrap;gap:6px;padding:10px 0}.card-tags span{border-bottom:1px solid #999;font-size:.37rem;text-transform:uppercase}.card-actions{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ddd}.card-actions a{padding-top:10px;color:#555;font-size:.4rem;text-transform:uppercase;text-decoration:none}.card-actions button{border-left:0;padding-right:0}.empty{grid-column:1/-1;padding:35px;border:1px dashed #aaa;text-align:center;color:#777;font-size:.55rem}.creator-intro{max-width:760px;margin:20px 0;font-size:.62rem;line-height:1.7;color:#666}.creator-grid{display:grid;grid-template-columns:1fr 1fr 1fr auto;border:1px solid #bbb}.creator-grid label{border-right:1px solid #ddd}.create-hybrid{border:0;background:#000;color:#fff;padding:0 18px;font-family:'JetBrains Mono',monospace;font-size:.45rem;text-transform:uppercase;cursor:pointer}.create-hybrid:hover{background:#1677c8}.hybrid-output{margin-top:18px;padding:20px;border:1px dashed #aaa}.hybrid-output>p{margin:0;color:#777;font-size:.5rem}.hybrid-output>div>span{font-size:.38rem;color:#777;text-transform:uppercase;letter-spacing:1.5px}.hybrid-output h3{margin:4px 0 14px;font-size:.8rem;text-transform:uppercase}.hybrid-output pre{white-space:pre-wrap;margin:0;padding:14px;border-left:3px solid #1677c8;background:#f5f7f8;font-family:'JetBrains Mono',monospace;font-size:.55rem;line-height:1.75}.hybrid-output small{display:block;margin:10px 0;color:#777;font-size:.42rem}.hybrid-output button{border:1px solid #ccc}.crossnav-link{font-size:.72rem;color:#555;text-decoration:none;letter-spacing:1.5px;font-weight:600;text-transform:uppercase}.lang-switch-btn{font-size:.7rem;color:#999;border:1px solid #ccc;padding:4px 10px;text-decoration:none;letter-spacing:1.5px}
@media(max-width:1000px){.finder-controls{grid-template-columns:1fr 1fr}.finder-controls>label{border-bottom:1px solid #ddd}.finder-results{grid-template-columns:1fr}.creator-grid{grid-template-columns:1fr 1fr}.create-hybrid{min-height:45px}.daily-card{grid-template-columns:220px 1fr}}
@media(max-width:650px){.wod-page{padding-left:22px;padding-right:22px}.daily-card{grid-template-columns:1fr}.daily-date{border-right:0;border-bottom:1px dashed #999}.finder-controls,.creator-grid{grid-template-columns:1fr}.finder-controls fieldset,.finder-foot{grid-column:auto}.finder-controls>label{border-right:0}.creator-grid label{border-right:0;border-bottom:1px solid #ddd}.card-meta{grid-template-columns:1fr}.card-meta span+span{padding-left:0;border-left:0;border-top:1px dashed #ccc}}
.creator-builder{border:1px solid #bbb}.wod-page .creator-step{margin:0;padding:16px;border-top:0;border-bottom:1px dashed #aaa}.wod-page .creator-step:last-child{border-bottom:0}.creator-step h3{margin:0 0 12px;font-family:'Share Tech Mono',monospace;font-size:.57rem;font-weight:400;text-transform:uppercase;letter-spacing:1px}.creator-step>p{margin:8px 0 0;color:#777;font-size:.48rem;line-height:1.6}.source-selects{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:14px}.source-selects label,.structure-controls label{border:1px solid #ccc}.source-selects label>span,.structure-controls label>span{display:block;padding:7px 9px 0;color:#777;font-size:.37rem;text-transform:uppercase;letter-spacing:1px}.source-selects select,.structure-controls select,.structure-controls input{box-sizing:border-box;width:100%;border:0;background:#fff;padding:7px 9px 10px;font-family:'JetBrains Mono',monospace;font-size:.5rem}.private-archive-import{display:grid;grid-template-columns:auto minmax(220px,1fr);align-items:center;gap:5px 14px;margin-top:14px;padding:10px 12px;border:1px dashed #aaa}.private-archive-import>span{font-family:'Share Tech Mono',monospace;font-size:.45rem;text-transform:uppercase;letter-spacing:1px}.private-archive-import input{font-family:'JetBrains Mono',monospace;font-size:.42rem}.private-archive-import small{grid-column:2;color:#777;font-size:.36rem;line-height:1.5}.source-step .archive-status{margin-top:6px;color:#111}.hybrid-cross{padding-bottom:10px;font-family:'Share Tech Mono',monospace;font-size:1rem}.movement-pool{display:flex;flex-wrap:wrap;gap:7px}.movement-pool label input{position:absolute;opacity:0}.movement-pool label span{display:block;padding:8px 10px;border:1px solid #ccc;font-size:.44rem;text-transform:uppercase;cursor:pointer}.movement-pool input:checked+span{background:#000;color:#fff;border-color:#000}.creator-placeholder{color:#888;font-size:.48rem}.movement-settings{margin-top:14px}.movement-setting{display:grid;grid-template-columns:minmax(160px,1.4fr) .55fr 1fr;border-top:1px solid #ddd}.movement-setting>span{display:flex;align-items:center;gap:9px;padding:9px;font-size:.49rem;text-transform:uppercase}.movement-setting>span em{color:#888;font-family:'Share Tech Mono',monospace;font-style:normal}.movement-setting label{border-left:1px solid #ddd}.movement-setting small{display:block;padding:5px 8px 0;color:#888;font-size:.33rem;text-transform:uppercase}.movement-setting input{box-sizing:border-box;width:100%;border:0;padding:5px 8px 8px;font-family:'JetBrains Mono',monospace;font-size:.48rem}.wod-page .structure-step{display:grid;grid-template-columns:1fr auto;gap:14px}.structure-step h3{grid-column:1/-1}.structure-controls{display:grid;grid-template-columns:1fr 150px;gap:10px}.hybrid-metrics{display:grid;grid-template-columns:1fr auto;gap:2px 12px;margin-top:10px;padding:10px 12px;border:1px solid #ccc}.hybrid-metrics span{font-size:.38rem;color:#777;text-transform:uppercase}.hybrid-metrics strong{grid-row:1/3;grid-column:2;font-family:'Share Tech Mono',monospace;font-size:1.3rem;font-weight:400}.hybrid-metrics small{margin:0!important}
@media(max-width:650px){.source-selects{grid-template-columns:1fr}.hybrid-cross{text-align:center;padding:0}.movement-setting{grid-template-columns:1fr 90px}.movement-setting label:last-child{grid-column:1/-1;border-left:0;border-top:1px solid #ddd}.wod-page .structure-step{grid-template-columns:1fr}.structure-controls{grid-template-columns:1fr}.create-hybrid{min-height:48px}}

/* Keep visually hidden movement-pattern checkboxes from creating horizontal
   overflow. Scoped to .pattern-fieldset only -- NOT .exercise-fieldset,
   which has a real visible text input (.picker-input) that must stay sized. */
.pattern-fieldset input{width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ══ Full-archive additions ══ */
.archive-stats{margin:0 0 18px;padding:.55rem .9rem;border-left:3px solid #1b9b5b;background:#f2f7f4;color:#555;font-size:.55rem;text-transform:uppercase;letter-spacing:.6px}
.archive-stats.loading{border-left-color:#999;background:#f5f5f5;color:#888}
.archive-stats.offline{border-left-color:#c67924;background:#fbf6ef;color:#8a5a1c}
.cap-note{grid-column:1/-1;padding:14px;border:1px dashed #ccc;color:#888;font-size:.46rem;text-align:center}
.grounded-note{display:block;margin:12px 0;color:#888;font-size:.4rem;text-transform:uppercase;letter-spacing:.6px}

/* Type-ahead source picker (replaces plain <select> now that pools run into the thousands) */
.wod-picker{position:relative}
.picker-input{box-sizing:border-box;width:100%;border:0;background:#fff;padding:7px 9px 10px;font-family:'JetBrains Mono',monospace;font-size:.5rem}
.picker-results{position:absolute;top:100%;left:0;right:0;z-index:40;max-height:220px;overflow-y:auto;border:1px solid #000;border-top:0;background:#fff;box-shadow:0 6px 16px rgba(0,0,0,.12)}
.picker-results button{display:block;width:100%;border:0;border-bottom:1px solid #eee;background:#fff;padding:8px 10px;font-family:'JetBrains Mono',monospace;font-size:.46rem;text-align:left;cursor:pointer}
.picker-results button:last-child{border-bottom:0}
.picker-results button:hover{background:#000;color:#fff}
.picker-empty{padding:10px;color:#888;font-size:.44rem;text-transform:uppercase}

/* Variant-of-one-WOD step */
.variant-controls{display:grid;grid-template-columns:1fr 220px;gap:14px;align-items:end}
.variant-controls label{border:1px solid #ccc}
.variant-controls label>span{display:block;padding:7px 9px 0;color:#777;font-size:.37rem;text-transform:uppercase;letter-spacing:1px}
.variant-controls select{box-sizing:border-box;width:100%;border:0;background:#fff;padding:7px 9px 10px;font-family:'JetBrains Mono',monospace;font-size:.5rem}
.variant-step .create-hybrid{margin-top:14px}
@media(max-width:650px){.variant-controls{grid-template-columns:1fr}}

/* Free-text tag chip filter (top-20 tags mined from the merged archive) */
.tag-fieldset{padding-top:10px!important}
.tag-chips{display:flex;flex-wrap:wrap;gap:6px;width:100%}
.tag-chip{border:1px solid #ccc;background:#fff;padding:6px 9px;font-family:'JetBrains Mono',monospace;font-size:.42rem;text-transform:none;letter-spacing:0;cursor:pointer}
.tag-chip:hover{border-color:#000}
.tag-chip.active{background:#000;color:#fff;border-color:#000}

/* Scaled/beginner prescription toggle on archive cards */
.card-scaled{margin:0 0 10px;padding:9px 10px;border:1px dashed #bbb;background:#fafafa}
.card-scaled summary{color:#555;font-size:.4rem;text-transform:uppercase;letter-spacing:.8px;cursor:pointer}
.card-scaled p{margin:8px 0 0;font-size:.52rem;line-height:1.6}
.card-scaled p:first-of-type{margin-top:9px}

/* Free-text tags rendered on each archive card (distinct from the movement/pattern chips in .card-tags) */
.card-freetags{display:flex;flex-wrap:wrap;gap:5px;padding:0 0 10px;color:#888}
.card-freetags span{font-family:'JetBrains Mono',monospace;font-size:.4rem}

/* Exercise filter: searchable multi-select over the movement library (too
   many entries for a checkbox fieldset like .pattern-fieldset). Overridden
   to flex-direction:column so picker/chips/hint reliably stack -- relying
   on flex-basis:100% to force a wrap onto its own row was fragile (it could
   land the chip row on the same line as the input, overlapping it). */
.exercise-fieldset{flex-direction:column;align-items:stretch;gap:8px}
.exercise-fieldset .exercise-picker{max-width:420px}
.exercise-fieldset .exercise-picker .picker-input{border:1px solid #ccc}
.exercise-fieldset .exercise-picker .picker-input:disabled{background:#f5f5f5;color:#999;cursor:not-allowed}
.exercise-chips{display:flex;flex-wrap:wrap;gap:6px}
.exercise-chips:empty{display:none}
.exercise-hint{color:#999;font-size:.37rem;text-transform:uppercase;letter-spacing:.6px}
