.login-page{background-color:var(--nf-bg);background-image:linear-gradient(90deg,rgba(5,7,12,.28),rgba(5,7,12,.68)),url('/static/img/neuroforge-mind-muscle-bg.svg');background-size:cover;background-position:center}.login-panel{background:rgba(8,11,18,.88);backdrop-filter:blur(12px);border-color:#334664;box-shadow:0 30px 90px #000b,0 0 80px #2e7bff18}.login-wordmark{width:min(100%,360px);margin:auto}.signal-line{height:3px;margin:18px 0;background:linear-gradient(90deg,transparent,var(--nf-blue),var(--nf-violet),var(--nf-green),transparent);box-shadow:0 0 18px var(--nf-blue)}.claim{font-size:18px}.revision-shell{background-image:linear-gradient(90deg,rgba(5,7,12,.94),rgba(5,7,12,.84)),url('/static/img/neuroforge-mind-muscle-bg.svg');background-size:cover;background-attachment:fixed}.nf-visual-header,.mind-muscle-empty,.preview-surface{position:relative;overflow:hidden;background-color:var(--nf-surface);background-image:linear-gradient(90deg,rgba(12,17,27,.86),rgba(12,17,27,.66)),url('/static/img/neuroforge-mind-muscle-bg.svg');background-size:cover;background-position:center;border:1px solid #2a3952;border-radius:var(--radius);padding:24px}.metrics-six{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-card{display:block}.quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quick-grid a{display:flex;flex-direction:column;min-height:86px;padding:15px;border:1px solid var(--nf-border);border-radius:11px;background:var(--nf-surface)}.quick-grid a:hover{border-color:var(--nf-blue)}.quick-grid span{color:var(--nf-muted);font-size:14px}.filter-grid{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:14px;align-items:end}.compact-check,.switch-field{display:flex;align-items:center;gap:10px;min-height:44px}.compact-check input{width:18px;height:18px}.switch-field input{position:absolute;opacity:0}.switch{width:42px;height:24px;padding:3px;border-radius:99px;background:var(--nf-border);transition:.2s}.switch:before{content:"";display:block;width:18px;height:18px;border-radius:50%;background:var(--nf-text);transition:.2s}.switch-field input:checked+.switch{background:var(--nf-blue)}.switch-field input:checked+.switch:before{transform:translateX(18px)}.switch-field input:focus-visible+.switch{outline:3px solid var(--nf-blue-hover);outline-offset:2px}.fixture-badge{display:inline-flex;padding:2px 7px;border:1px solid var(--nf-amber);border-radius:99px;color:var(--nf-amber);font-size:12px}.people-grid,.exercise-library,.media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.person-card,.exercise-library-card,.media-card{overflow:hidden;border:1px solid var(--nf-border);border-radius:var(--radius);background:var(--nf-surface);padding:16px}.exercise-library-card,.media-card{padding:0}.exercise-library-body,.media-card>div{padding:16px}.gif-frame,.gif-fallback{width:100%;height:190px;border:0;background:var(--nf-bg-secondary);display:flex;align-items:center;justify-content:center;color:var(--nf-muted);overflow:hidden}.gif-frame img,.media-card>img{width:100%;height:190px;object-fit:contain;background:#05070c}.gif-frame.expanded{position:fixed;inset:5vh 5vw;width:90vw;height:90vh;z-index:80;background:#05070cf5}.gif-frame.expanded img{width:100%;height:100%;object-fit:contain}.media-card>img{display:block}.notice,.designer-guide{padding:16px;border:1px solid #5c471f;border-radius:12px;background:#f5a52412;color:var(--nf-text-secondary)}.designer-guide ol{display:flex;gap:24px;flex-wrap:wrap;margin:8px 0 0;padding-left:22px}.methodology-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.methodology-strip div{display:flex;flex-direction:column}.methodology-strip span{color:var(--nf-muted);font-size:13px}.wizard-modal{width:min(760px,calc(100vw - 24px))}.wizard-modal fieldset{border:0;padding:0;margin:0}.wizard-modal legend{font-size:20px;font-weight:750;margin-bottom:16px}.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.choice-card{display:flex;flex-direction:column;gap:7px;padding:18px;border:1px solid var(--nf-border);border-radius:12px;background:var(--nf-surface)}.choice-card:has(input:checked){border-color:var(--nf-blue);box-shadow:inset 0 0 0 1px var(--nf-blue)}.choice-card input{width:18px;height:18px}.choice-card span{color:var(--nf-muted)}.eyebrow{color:var(--nf-blue-hover);font-size:13px;font-weight:750;text-transform:uppercase;letter-spacing:.06em}.picker-modal{width:min(920px,calc(100vw - 24px))}.exercise-picker-item p{margin:4px 0;color:var(--nf-muted);font-size:13px}select,option{background-color:var(--nf-surface-raised);color:var(--nf-text)}
/* Picker de ejercicios mas compacto + scroll contenido y visible (2026-08-15,
   pedido explicito): antes cada tarjeta ocupaba mucho alto y la lista no
   tenia un contenedor con scroll propio -- con >10 resultados no quedaba
   claro que se podia bajar mas. */
.exercise-picker-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:min(56vh,460px);overflow-y:auto;padding-right:6px;scrollbar-width:thin;scrollbar-color:var(--nf-border) transparent}
.exercise-picker-list::-webkit-scrollbar{width:9px}
.exercise-picker-list::-webkit-scrollbar-thumb{background:var(--nf-border);border-radius:9px}
.exercise-picker-item{grid-template-columns:44px 1fr;grid-template-rows:auto auto;padding:7px 9px;gap:4px 9px}
.exercise-picker-item .exercise-thumb{width:44px;height:44px;grid-row:1/3}
.exercise-picker-item strong{font-size:14px}
.exercise-picker-item .exercise-reference{font-size:12px}
.exercise-picker-item small{font-size:11.5px}
.exercise-picker-item>button,.exercise-picker-item>.button{grid-column:1/-1}
@media(max-width:640px){.exercise-picker-list{grid-template-columns:1fr}}
/* Asistente de IA (2026-08-15): boton flotante + panel de chat, disponible
   en cualquier pantalla logueada (ver revision_footer en revision_base.html). */
.nf-assistant-fab{position:fixed;right:20px;bottom:20px;z-index:60;width:56px;height:56px;border-radius:50%;border:1px solid var(--nf-border);background:var(--nf-blue);color:#fff;font-size:24px;box-shadow:var(--shadow);cursor:pointer;display:grid;place-items:center}
.nf-assistant-fab:hover{background:var(--nf-blue-hover)}
.nf-assistant-panel{position:fixed;right:20px;bottom:86px;z-index:61;width:min(360px,calc(100vw - 32px));max-height:min(520px,calc(100vh - 120px));display:flex;flex-direction:column;border:1px solid var(--nf-border);border-radius:14px;background:var(--nf-surface-raised);box-shadow:var(--shadow);overflow:hidden}
.nf-assistant-panel[hidden]{display:none}
.nf-assistant-panel header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--nf-border-soft)}
.nf-assistant-messages{flex:1;overflow-y:auto;padding:12px 14px;display:flex;flex-direction:column;gap:8px}
.nf-assistant-hint{color:var(--nf-muted);font-size:13px;margin:0}
.nf-assistant-msg{margin:0;padding:8px 11px;border-radius:10px;font-size:14px;line-height:1.4;max-width:88%}
.nf-assistant-msg-user{align-self:flex-end;background:var(--nf-blue);color:#fff}
.nf-assistant-msg-assistant{align-self:flex-start;background:var(--nf-bg-secondary);color:var(--nf-text)}
.nf-assistant-msg-pending{opacity:.6}
.nf-assistant-msg-error{border:1px solid #6a2538;background:#29111a;color:#ffb5c6}
.nf-assistant-panel form{display:flex;gap:8px;padding:10px;border-top:1px solid var(--nf-border-soft)}
.nf-assistant-panel textarea{min-height:40px;resize:none}
@media(max-width:480px){.nf-assistant-panel{right:12px;left:12px;width:auto;bottom:78px}}
@media(max-width:1000px){.metrics-six,.people-grid,.exercise-library,.media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.methodology-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.metrics-six,.people-grid,.exercise-library,.media-grid,.quick-grid,.filter-grid,.choice-grid,.methodology-strip{grid-template-columns:1fr}.nf-visual-header{padding:18px}.designer-guide ol{display:block}.gif-frame,.gif-frame img,.media-card>img{height:220px}.wizard-modal .modal-foot{display:grid;grid-template-columns:1fr 1fr}.picker-modal .modal-foot{flex-wrap:wrap}.exercise-picker-item{grid-template-columns:64px 1fr}.exercise-picker-item .button{grid-column:1/-1;width:100%}}
@media(prefers-reduced-motion:reduce){.signal-line{box-shadow:none}.switch,.switch:before{transition:none}}
.pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:22px}.picker-count{grid-column:1/-1;margin:0 0 4px;color:var(--nf-text-secondary)}.exercise-detail-grid{display:grid;grid-template-columns:minmax(260px,380px) 1fr;gap:18px}.exercise-name-section{grid-column:1/-1}.exercise-demo .gif-frame{height:auto;min-height:300px;border-radius:12px}.exercise-demo .gif-frame img{height:auto;max-height:420px}.media-attribution{font-size:14px;color:var(--nf-text-secondary)}.media-attribution a{color:var(--nf-blue-hover);text-decoration:underline}.instruction-list{display:grid;gap:10px;padding-left:22px}.exercise-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.exercise-facts div{padding:12px;border:1px solid var(--nf-border-soft);border-radius:9px}.exercise-facts dt{color:var(--nf-muted);font-size:13px}.exercise-facts dd{margin:3px 0 0;font-weight:700}.preview-exercises{display:grid;gap:10px;margin-top:10px}.preview-exercises article{display:grid;grid-template-columns:64px 1fr;gap:12px;align-items:center;padding:10px;border:1px solid var(--nf-border-soft);border-radius:10px;background:var(--nf-bg-secondary)}.preview-exercises p{margin:3px 0;color:var(--nf-text-secondary)}
@media(max-width:640px){.exercise-detail-grid{grid-template-columns:1fr}.exercise-facts{grid-template-columns:1fr}.pagination{justify-content:space-between}.pagination span{font-size:14px}}
.quick-row{margin-bottom:12px;padding:16px}.quick-exercise-identity{display:grid;grid-template-columns:112px minmax(0,1fr) auto;gap:16px;align-items:center;margin-bottom:14px}.quick-exercise-media{width:112px;height:88px;border-radius:12px;overflow:hidden;background:var(--nf-bg-secondary);display:grid;place-items:center}.quick-exercise-media .exercise-thumb{width:100%;height:100%;object-fit:contain}.quick-exercise-title{min-width:0;display:flex;flex-direction:column;gap:4px}.quick-exercise-title>strong{font-size:18px;color:var(--nf-text)}.exercise-reference{display:block;color:var(--nf-text-secondary);font-size:14px}.quick-exercise-title small{color:var(--nf-muted)}.quick-row-actions{display:flex;gap:6px}.quick-row-main{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:10px;align-items:end}.quick-row-search{position:relative;margin-bottom:12px}.quick-search-results{position:absolute;top:100%;left:0;right:0;z-index:20;margin-top:4px;max-height:260px;overflow-y:auto;border:1px solid var(--nf-border);border-radius:9px;background:var(--nf-surface-raised);box-shadow:0 12px 30px #000a}.quick-search-option{display:block;width:100%;text-align:left;padding:9px 12px;border:0;border-bottom:1px solid var(--nf-border-soft);background:transparent;color:var(--nf-text);cursor:pointer}.quick-search-option:last-child{border-bottom:0}.quick-search-option:hover{background:var(--nf-bg-secondary)}.quick-search-option strong{display:block;font-size:13px}.quick-search-option span{display:block;font-size:11.5px;color:var(--nf-muted);margin-top:2px}.quick-row-advanced{margin-top:14px;padding:16px;border-radius:12px;border:1px solid var(--nf-border-soft);background:var(--nf-bg-secondary);display:grid;gap:14px}.quick-row-advanced>.advanced-grid,.quick-row-advanced [data-quick-531-config]>.advanced-grid,.quick-row-advanced [data-quick-bilbo-config]>.advanced-grid,.quick-row-advanced [data-quick-5x5-config]>.advanced-grid,.quick-row-advanced [data-quick-gvt-config]>.advanced-grid{background:var(--nf-surface);border:1px solid var(--nf-border-soft);border-radius:10px;padding:12px}.quick-row-advanced [data-quick-531-config],.quick-row-advanced [data-quick-bilbo-config],.quick-row-advanced [data-quick-5x5-config],.quick-row-advanced [data-quick-gvt-config],.quick-row-advanced [data-quick-hit-config]{display:grid;gap:10px;padding-top:2px}.quick-advanced-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.quick-advanced-heading strong{font-size:14px}.quick-advanced-heading .help{margin:0;padding:2px 9px;border-radius:999px;background:var(--nf-surface);border:1px solid var(--nf-border)}.alias-delete-form{display:inline}
.day-trigger{display:block;width:100%;text-align:left;border:0;border-radius:8px;padding:9px;background:#142038;border-left:3px solid var(--nf-blue);color:var(--nf-text);cursor:pointer;font:inherit}.day-trigger.rest{background:#121721;border-left-color:transparent;color:var(--nf-muted)}.day-trigger:hover{filter:brightness(1.15)}.calendar-dot.rest{color:var(--nf-muted)}
@media(max-width:640px){.quick-exercise-identity{grid-template-columns:76px minmax(0,1fr)}.quick-exercise-media{width:76px;height:70px}.quick-row-actions{grid-column:1/-1;justify-content:flex-end}.quick-row-main{grid-template-columns:repeat(2,minmax(0,1fr))}}
.revision-shell{background-image:radial-gradient(circle at 52% 38%,rgba(128,86,232,.16),transparent 34%),linear-gradient(90deg,rgba(2,3,8,.84),rgba(2,3,8,.66)),url('/static/img/neuroforge-mind-muscle-bg.svg')}.revision-sidebar{background:rgba(3,5,10,.94);border-right-color:#30415f;box-shadow:18px 0 55px #0008}.revision-nav a:hover,.revision-nav a[aria-current=page]{background:linear-gradient(90deg,rgba(46,123,255,.24),rgba(128,86,232,.12));box-shadow:inset 3px 0 #4c8fff,0 0 24px #2e7bff18}.button{box-shadow:0 8px 28px #2e7bff38}.button.secondary,.button.ghost{box-shadow:none}.section-card,.routine-card,.person-card,.exercise-library-card{border-color:#2a3a55;box-shadow:0 15px 40px #0005}.metric-card{border-color:#31507c;background:linear-gradient(145deg,#101b2d,#0c111b);box-shadow:inset 0 1px #4c8fff30,0 14px 34px #0005}.metric-card strong{color:#fff;text-shadow:0 0 20px #2e7bff88}.nf-visual-header,.mind-muscle-empty,.preview-surface{background-image:linear-gradient(90deg,rgba(5,7,12,.64),rgba(5,7,12,.38)),url('/static/img/neuroforge-mind-muscle-bg.svg');border-color:#3e5f91;box-shadow:inset 0 0 70px #2e7bff12}.status-active{color:#72f29b;border-color:#22c55e80;background:#22c55e1c}.form-error{margin:0 20px 14px;padding:12px 14px;border:1px solid var(--nf-red);border-radius:10px;background:#ef476f18;color:#ff9bb1}.password-reset{display:grid;gap:10px;padding:18px;border-top:1px solid var(--nf-border)}
.routine-actions-modal{width:min(640px,calc(100vw - 28px))}.routine-actions-modal[open]{display:flex;flex-direction:column}.routine-actions-modal .modal-head,.routine-actions-modal .modal-body,.routine-actions-modal .modal-foot{padding:12px 16px}.routine-actions-modal .modal-head h2{font-size:18px}.routine-actions-modal .modal-body{flex:1;min-height:0;gap:9px}.routine-actions-modal .routine-action-form{display:grid;gap:8px}.routine-actions-modal .field-grid{gap:9px}.routine-actions-modal .form-field{gap:4px}.routine-actions-modal .form-field label{font-size:14px}.routine-actions-modal textarea{min-height:56px}.routine-actions-modal .warning-card{padding:9px 11px}.routine-actions-modal .warning-card p{margin:0}.routine-actions-modal .button{min-height:36px;padding:7px 11px}.routine-actions-modal .modal-foot{justify-content:space-between;background:var(--nf-surface-raised);flex:none}

.method-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}.method-summary div{padding:9px;border:1px solid var(--nf-border-soft);border-radius:8px;background:var(--nf-bg-secondary)}.method-summary dt{color:var(--nf-muted);font-size:12px}.method-summary dd{margin:3px 0 0;font-weight:700}.legal-link{display:block;margin-top:12px;color:var(--nf-muted);font-size:13px}.legal-link:hover{color:var(--nf-text)}.legal-copy{max-width:850px}.legal-copy h2{margin-top:28px}.warning-card{padding:16px;border:1px solid #7c5a1e;border-radius:12px;background:#f5a52414}.preview-methods{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}@media(max-width:760px){.method-summary,.preview-methods{grid-template-columns:1fr 1fr}}

.page-isotipo{width:64px;height:64px;flex:0 0 auto}.nf-visual-header>.page-isotipo+div{flex:1}@media(max-width:760px){.page-isotipo{width:52px;height:52px}}
.login-panel .claim-mind{color:var(--nf-blue-hover);font-weight:750}.login-panel .claim-muscle{color:var(--nf-green)}
.temporary-password{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.temporary-password code{padding:12px;border:1px solid var(--nf-border);border-radius:9px;background:var(--nf-bg-secondary);font-size:17px;letter-spacing:.04em;overflow-wrap:anywhere}
.routine-actions-modal{max-height:calc(100dvh - 28px)}
.routine-quick-form{width:100%;max-width:1240px}.routine-quick-form>.section-card{padding:20px}.routine-quick-general .section-heading,.routine-quick-exercises .section-heading{margin-bottom:14px}.routine-quick-general .section-heading p,.routine-quick-exercises .section-heading p{margin:3px 0 0}.routine-quick-exercises{padding-bottom:24px}
/* Gym Analytics Dashboard Foundation (2026-08-21) -- estado textual SIEMPRE presente (ver .status-badge base), estos modificadores sólo agregan color al punto, nunca reemplazan el texto (item 18/27 del pedido: nunca depender sólo de color). */
.status-badge.status-occ-normal:before{background:var(--nf-green)}
.status-badge.status-occ-concurrido:before{background:var(--nf-amber)}
.status-badge.status-occ-muy_concurrido:before{background:#ff8a3d}
.status-badge.status-occ-casi_lleno:before{background:var(--nf-red)}
.status-badge.status-occ-capacidad_critica:before{background:var(--nf-red)}
/* Distribución de membresías -- barra simple con CSS (sin librería de charts, item 21 del pedido): texto + cantidad + porcentaje siempre visibles junto a la barra, nunca sólo el ancho/color (item 27). */
.dist-row{display:grid;gap:6px}
.dist-row+.dist-row{margin-top:12px}
.dist-row-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.dist-row-label{font-weight:650}
.dist-row-count{color:var(--nf-text-secondary);font-size:14px;white-space:nowrap}
.dist-bar-track{height:10px;border-radius:999px;background:var(--nf-bg-secondary);border:1px solid var(--nf-border-soft);overflow:hidden}
.dist-bar-fill{height:100%;border-radius:999px;background:var(--nf-blue)}
.dist-bar-fill.dist-bar-legacy_without_plan{background:var(--nf-amber)}
.dist-bar-fill.dist-bar-no_current_membership{background:var(--nf-muted)}
/* Gym Heatmap + Peak/Quiet Hours (2026-08-22) -- selector de período, grilla 24x7, niveles de intensidad RELATIVOS (item 36 del pedido, nunca porcentaje de capacidad), listas peak/quiet. */
.gh-period-selector{display:flex;gap:6px;flex-wrap:wrap}
.gh-period-btn{min-height:36px;padding:6px 12px;border:1px solid var(--nf-border);border-radius:8px;background:var(--nf-surface);color:var(--nf-text-secondary);cursor:pointer;font-weight:650}
.gh-period-btn:hover{border-color:var(--nf-blue)}
.gh-period-btn.gh-period-active{background:var(--nf-blue);border-color:var(--nf-blue);color:#fff}
/* overflow-x:auto en el wrapper, nunca comprimir las celdas hasta hacerlas ilegibles (item 39 del pedido) -- min-width fuerza el scroll horizontal en mobile en vez de aplastar la grilla. */
.gh-scroll{overflow-x:auto;margin-top:14px}
.gh-grid{border-collapse:collapse;min-width:560px}
.gh-grid th,.gh-grid td{padding:2px;text-align:center}
.gh-grid thead th{color:var(--nf-muted);font-size:12px;font-weight:700;padding-bottom:6px}
.gh-grid .gh-corner{width:48px}
.gh-grid tbody th{color:var(--nf-muted);font-size:12px;font-weight:600;text-align:right;padding-right:8px;white-space:nowrap}
.gh-cell{display:block;width:26px;height:18px;margin:1px auto;border-radius:4px;background:var(--nf-bg-secondary);border:1px solid var(--nf-border-soft);cursor:default}
.gh-level-1{background:#123a2c}
.gh-level-2{background:#155c3f}
.gh-level-3{background:#1c8455}
.gh-level-4{background:#22ad68}
.gh-level-5{background:#3fe08a}
.gh-cell:focus-visible{outline:2px solid var(--nf-blue-hover);outline-offset:1px}
.gh-peak-quiet{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}
.gh-period-list{list-style:decimal;margin:0;padding-left:20px;display:grid;gap:8px}
.gh-period-list li{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}
.gh-period-list span{color:var(--nf-text-secondary)}
.gh-period-list small{color:var(--nf-muted);flex-basis:100%}
.gh-quiet-disclaimer{margin-top:10px}
@media(max-width:1050px){.gh-peak-quiet{grid-template-columns:1fr}}
.quick-day-toolbar{display:flex;align-items:stretch;gap:8px;flex-wrap:wrap;margin:4px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--nf-border-soft)}.quick-day-tab{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 13px;border:1px solid var(--nf-border);border-radius:9px;background:var(--nf-bg-secondary);color:var(--nf-text-secondary);cursor:pointer}.quick-day-tab.active{border-color:var(--nf-blue);background:#2e7bff18;color:var(--nf-text)}.quick-day-tab small{font-size:12px;color:var(--nf-muted)}.quick-day-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:2px 0 12px}.quick-day-heading h3{margin:2px 0 0;font-size:22px}.quick-day-rename-input{margin:2px 0 0;font-size:22px;font-weight:750;font-family:inherit;color:var(--nf-text);background:var(--nf-bg-secondary);border:1px solid var(--nf-blue);border-radius:6px;padding:1px 6px;min-width:0;max-width:100%}.quick-day-heading .inline-actions{display:flex;gap:6px}.quick-day-heading .eyebrow{font-size:11px}@media(max-width:640px){.quick-day-heading{align-items:flex-start;flex-direction:column}.quick-day-heading .inline-actions{width:100%}.quick-day-heading .button{flex:1}}
.quick-day-weekday{display:flex;align-items:center;gap:8px;margin-top:8px;color:var(--nf-muted);font-size:13px}.quick-day-weekday select{min-width:150px}
.quick-exercise-picker{width:min(980px,calc(100vw - 28px));max-height:calc(100dvh - 32px)}.quick-picker-filters{gap:10px}.quick-picker-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;max-height:52vh;overflow:auto}.quick-picker-card{display:grid;grid-template-columns:76px minmax(0,1fr);gap:10px;align-items:center;padding:10px;border:1px solid var(--nf-border);border-radius:10px;background:var(--nf-bg-secondary)}.quick-picker-card .inline-actions{grid-column:2}.quick-picker-card small{display:block;color:var(--nf-muted);margin-top:3px}.quick-picker-media{width:76px;height:64px;display:grid;place-items:center;overflow:hidden;border-radius:8px;background:var(--nf-bg)}.quick-picker-media img{width:100%;height:100%;object-fit:contain}@media(max-width:700px){.quick-picker-results{grid-template-columns:1fr}}
/* Gym Operating Hours Foundation (2026-08-22) -- días con turnos partidos, caso 24hs no editable como texto fijo (nunca 24:00 en un <input type=time>), excepciones por fecha. */
.goh-day{border:1px solid var(--nf-border-soft);border-radius:12px;padding:14px;background:var(--nf-surface)}
.goh-day+.goh-day{margin-top:10px}
.goh-day-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.goh-intervals{display:grid;gap:8px;margin-bottom:10px}
.goh-interval-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.goh-interval-row input[type=time]{width:auto;min-width:112px}
.goh-interval-24h{color:var(--nf-text-secondary)}
.goh-closed-label{margin:0 0 10px}
.goh-save-row{margin-top:16px;align-items:center}
.goh-exception-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px;border:1px solid var(--nf-border-soft);border-radius:10px;background:#080b1288}
.goh-exception-row+.goh-exception-row{margin-top:8px}
.goh-exception-row .status-badge{margin-left:8px}
.goh-exception-form{margin-top:16px;padding-top:16px;border-top:1px solid var(--nf-border-soft)}
.goh-exception-form h3{margin:0 0 12px;font-size:16px}
