/* Simulator premium locks: one stylesheet for the React pages (imported by src/premium/PremiumKit.tsx)
   and the static documents (linked). The look is On The Clock's /setup: the gold "Premium" lock chip,
   the "1/1 Remaining" crown, and a dimmed block under a centered warm-orange "Go Premium" pill. Text
   inherits the surface's ink, so the same rules read in the dark default and the light themes. */
.sim-lock-chip{display:inline-flex;flex:none;align-items:center;gap:4px;padding:2px 6px;border:1px solid color-mix(in srgb,#d4a017 35%,transparent);background:#faf3df;color:#80600e;font:700 9px/1 var(--font-exo,Arial),sans-serif;letter-spacing:.025em;text-transform:uppercase;white-space:nowrap;vertical-align:middle}
.sim-lock-chip svg{width:10px;height:10px;flex:none}
.sim-premium-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border:1px solid color-mix(in srgb,#ff7a1a 50%,transparent);background:color-mix(in srgb,#ff7a1a 12%,#fff);color:#334155;font:700 14px/1 var(--font-exo,Arial),sans-serif;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;white-space:nowrap;box-shadow:0 1px 2px rgba(15,23,42,.08)}
.sim-premium-pill svg{width:16px;height:16px;flex:none;color:#ffb71a}
.sim-premium-pill:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(153,0,46,.5)}
.sim-premium-pill[data-size=compact]{gap:4px;height:20px;padding:0 6px;font-size:10px;letter-spacing:0}
.sim-premium-pill[data-size=compact] svg{width:12px;height:12px}
/* A locked block: the controls stay visible but dimmed and inert, the pill floats over them. */
.sim-premium-gate{position:relative}
.sim-premium-gate[data-locked]>.sim-premium-body{opacity:.3;pointer-events:none;user-select:none}
.sim-premium-cover{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;padding:8px}
.sim-premium-gate:not([data-locked])>.sim-premium-cover{display:none}
/* A tall block (a team library) keeps its pill in view while the reader scrolls past it. */
.sim-premium-cover[data-tall]{align-items:flex-start;padding-top:48px}
.sim-premium-cover[data-tall]>.sim-premium-pill{position:sticky;top:45vh}
/* One line under a locked choice: chip, why, and the pill. */
.sim-premium-note{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;font:400 13px/1.4 var(--font-actor,Arial),sans-serif}
/* Hub scenario cards that need premium wear the chip in their corner, outside the flow. */
.scenario-card[data-premium]{position:relative}
.scenario-card[data-premium]>.sim-lock-chip{position:absolute;top:10px;right:10px}
.sim-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* Static documents: html[data-fs-membership] is set before paint, so a premium reader never sees a lock. */
html[data-fs-membership=premium] .sim-premium-gate[data-static]>.sim-premium-body{opacity:1;pointer-events:auto;user-select:auto}
html[data-fs-membership=premium] .sim-premium-gate[data-static]>.sim-premium-cover,html[data-fs-membership=premium] [data-premium-locked-only]{display:none}
html:not([data-fs-membership=premium]) [data-premium-only]{display:none}
/* The daily allowance, beside a field label. */
.sim-daily-chip{display:inline-flex;flex:none;align-items:center;gap:4px;font:600 11px/1 var(--font-exo,Arial),sans-serif;color:inherit;white-space:nowrap}
.sim-daily-chip svg{width:12px;height:12px;flex:none;color:#ffb71a}
.sim-daily-note{margin:4px 0 0;font:400 10px/1.4 var(--font-actor,Arial),sans-serif;opacity:.65}
.sim-locked-choice{display:inline-flex;align-items:center;justify-content:center;gap:4px;white-space:nowrap;text-transform:none;opacity:.75}
.sim-locked-choice svg{width:12px;height:12px;flex:none}
/* A locked button keeps its place and shows why it is locked. */
.sim-premium-action{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px}
.sim-premium-action>button[disabled]{cursor:not-allowed;opacity:.45}
/* The season setups' Advanced settings: injuries and team strength. Ink and lines follow the surface. */
.season-settings{margin:12px 0}
.season-settings fieldset{display:grid;gap:10px;margin:0;padding:10px 12px 12px;border:1px solid color-mix(in srgb,currentColor 22%,transparent);min-width:0}
.season-settings legend{display:flex;align-items:center;gap:8px;padding:0 4px;font:700 13px/1.4 var(--font-exo,Arial),sans-serif}
.season-settings small{display:block;font-size:11px;opacity:.7}
.season-settings-toggle{display:flex;align-items:flex-start;gap:8px;font-size:13px;cursor:pointer}
.season-settings-toggle input{width:16px;height:16px;margin:2px 0 0;flex:none}
.season-settings-strength{display:grid;gap:6px}
.season-settings-strength>p{margin:0;font-size:13px;font-weight:700}
.season-settings-strength>p small{display:inline;margin-left:4px;font-weight:400}
.season-settings-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) 28px 28px;align-items:center;gap:8px}
.season-settings-row select{min-width:0;min-height:36px;padding:4px 6px;border:1px solid color-mix(in srgb,currentColor 25%,transparent);background:transparent;color:inherit;font-size:13px}
.season-settings-row select option{color:#193747}
.season-settings-row input{width:100%}
.season-settings-row output{font-weight:700;font-variant-numeric:tabular-nums;text-align:right}
.season-settings-row button,.season-settings-add{min-height:32px;border:1px solid color-mix(in srgb,currentColor 25%,transparent);background:transparent;color:inherit;font-size:12px;font-weight:700;cursor:pointer}
.season-settings-add{justify-self:start;padding:0 12px}
/* Saved seasons on the season setups: one row per season, square, one rule per row. */
.saved-seasons{margin:16px 0 0}
.saved-seasons h3{margin:0 0 6px;font:700 13px/1.4 var(--font-exo,Arial),sans-serif;letter-spacing:.06em;text-transform:uppercase;opacity:.8}
.saved-seasons ol{margin:0;padding:0;list-style:none}
.saved-season{display:grid;grid-template-columns:28px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid color-mix(in srgb,currentColor 16%,transparent);font-size:13px}
.saved-season img{width:28px;height:28px;object-fit:contain}
.saved-season small{display:block;font-size:11px;opacity:.65}
.saved-season-name{min-width:0;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.saved-season-progress{text-align:right;font-variant-numeric:tabular-nums}
.saved-season button{min-height:32px;padding:0 12px;border:1px solid color-mix(in srgb,currentColor 30%,transparent);background:transparent;color:inherit;font-size:12px;font-weight:700;cursor:pointer}
.saved-seasons .sim-premium-gate{min-height:56px}
/* The Your Leagues daily pass above Start: the crown, today's count, and the rule. */
.sim-daily-pass{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 8px;font-size:12px}
.sim-daily-pass>span:last-child{opacity:.75}
/* Re-sim from Week N: one row of week select, action and rule, in the surface's own ink. */
.sim-resim{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:12px 0 0;font-size:13px}
.sim-resim label{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:11px}
.sim-resim select{min-height:34px;padding:4px 28px 4px 10px;border:1px solid currentColor;border-radius:0;background:transparent;color:inherit;font:inherit;font-size:13px;text-transform:none;letter-spacing:0}
.sim-resim select option{color:#111827;background:#fff}
.sim-resim button[type=submit]{min-height:34px;padding:4px 14px;border:1px solid currentColor;border-radius:0;background:transparent;color:inherit;font-weight:700}
.sim-resim button[type=submit]:not([disabled]):hover{background:rgba(127,127,127,.14)}
.sim-resim select[disabled],.sim-resim button[disabled]{cursor:not-allowed;opacity:.45}
.sim-resim small{flex-basis:100%;opacity:.7;font-size:12px}
/* On the season board (desktop) it is the board's footer row: one line, the rule in the form's title. */
.sim-resim[data-placement=board]{flex:none;margin:0;padding:8px 12px;border-top:1px solid color-mix(in srgb,currentColor 16%,transparent)}
.sim-resim[data-placement=board]>small:not([role=alert]){display:none}
/* Host surfaces style every a/button/select (the summary footer, the setup forms); the controls keep their own size. */
form.sim-resim>button[type=submit],.sim-resim>.sim-premium-action>button[type=submit]{min-height:34px;padding:4px 14px}
.sim-resim>.sim-premium-action>a[href]{min-height:0}
/* The season setups style every select and label span for their light cards; the settings panel keeps the surface's ink. */
.sim-premium-gate.season-settings label.season-settings-toggle{display:flex;color:inherit;font-weight:400}
.sim-premium-gate.season-settings .season-settings-toggle span{color:inherit;font-weight:600}
.sim-premium-gate.season-settings .season-settings-row select{display:block;width:100%;margin:0;min-height:36px;padding:4px 28px 4px 8px;border:1px solid color-mix(in srgb,currentColor 25%,transparent);border-radius:0;background-color:transparent;color:inherit;font-size:13px}
/* Your Leagues, today's season spent: the locked Start keeps the full width of the Start it replaces, pill beside it. */
.sim-premium-action[data-premium-action=daily_pass]{display:flex;width:100%;flex-wrap:nowrap}
.sim-premium-action[data-premium-action=daily_pass]>button{flex:1;min-width:0}
