/* Sport.fun NFL Snap Draft remake. Brand: vivid teal #03FFCC (hover #00E6B8,
   pressed #00CFA6, foreground #071713). Navy arena. Gold only for rare beats. */
@import url('../assets/vendor-fonts/fonts.css');
:root{color-scheme:dark;
 --bg:#070c17;--bg2:#0b1424;--panel:#101a2b;--panel2:#14213a;--line:#ffffff14;--line2:#ffffff22;
 --text:#f4f7fb;--muted:#8b9ab0;--dim:#5d6e87;
 --teal:#03ffcc;--teal-hover:#00e6b8;--teal-press:#00cfa6;--on-teal:#071713;--teal-a:#03ffcc33;--teal-b:#03ffcc14;
 --gold:#fdb913;--steel:#cfd8e6;--scout:#c4b5fd;--danger:#ff8a80;
 --tier-premium:#03ffcc;--tier-mid:#03ffcc99;--tier-value:#d7e0ee;
 --ease:cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);min-height:100%;font-family:Inter,system-ui,Arial,sans-serif;color:var(--text);-webkit-font-smoothing:antialiased}
body{overflow-x:hidden}
button,input{font:inherit;color:inherit}
button{cursor:pointer;-webkit-tap-highlight-color:transparent}
button:disabled{cursor:not-allowed}
a{color:inherit}
:focus-visible{outline:3px solid var(--teal);outline-offset:3px;border-radius:6px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.sd-icon{width:18px;height:18px;flex:none;vertical-align:middle}
.sd-loading,.solo-loading{padding:80px 24px;text-align:center;color:var(--muted)}
.sd-app{position:relative;isolation:isolate;min-height:100vh;display:flex;flex-direction:column;overflow-x:clip}
/* header */
.sd-header{height:56px;padding:0 24px;display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--line);background:#070c17d9;backdrop-filter:blur(14px);position:relative;z-index:20}
.sd-brand{display:flex;align-items:center}.sd-brand img{height:28px;width:auto;display:block}
.sd-header-divider{height:20px;width:1px;background:var(--line2)}
.sd-product{display:flex;gap:6px;align-items:center;font-size:11px;letter-spacing:1px;color:#b5c0d0;font-weight:600;white-space:nowrap}.sd-product b{color:#fff}
.sd-beta{border:1px solid var(--teal-a);background:var(--teal-b);color:var(--teal);font-size:9px;padding:3px 6px;border-radius:4px;margin-left:4px;letter-spacing:1px}
.sd-header nav{margin-left:auto;display:flex;align-items:center;gap:6px}
.sd-text-button{background:none;border:1px solid transparent;border-radius:8px;padding:7px 10px;display:flex;gap:7px;align-items:center;font-size:12px;font-weight:600;color:#c8d2e0;white-space:nowrap}
.sd-text-button:hover,.sd-text-button.active{color:var(--teal);background:#ffffff08}
.sd-text-button small{display:inline-grid;place-items:center;min-width:18px;height:18px;border-radius:5px;background:var(--teal-b);color:var(--teal);font-size:10px;margin-left:2px}
.sd-motion-toggle[aria-pressed="true"]{color:var(--teal);border-color:var(--teal-a)}
.sd-main{flex:1;width:100%;max-width:1440px;margin:0 auto;padding:0 24px}
.sd-footer{max-width:1440px;width:100%;margin:0 auto;padding:14px 24px;display:flex;justify-content:space-between;gap:12px;color:var(--dim);font-size:10px;font-weight:600;letter-spacing:1.2px}
.sd-overline{display:flex;gap:8px;align-items:center;font-size:11px;font-weight:700;letter-spacing:1.6px;color:var(--muted);text-transform:uppercase}
.sd-overline i{font-style:normal;color:var(--dim);letter-spacing:0;font-weight:500}
.sd-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--teal);box-shadow:0 0 12px var(--teal)}
.sd-primary{border:1px solid var(--teal);background:var(--teal);color:var(--on-teal);border-radius:10px;min-height:46px;padding:12px 20px;display:inline-flex;align-items:center;justify-content:center;gap:12px;font-size:14px;font-weight:800;transition:transform .15s var(--ease),background .15s,box-shadow .15s;white-space:nowrap;box-shadow:0 0 24px #03ffcc22}
.sd-primary:hover:not(:disabled){background:var(--teal-hover);border-color:var(--teal-hover);transform:translateY(-1px);box-shadow:0 6px 28px #03ffcc33}
.sd-primary:active:not(:disabled){background:var(--teal-press);border-color:var(--teal-press);transform:translateY(0)}
.sd-primary:disabled{background:#1f2b3d;border-color:#2a384c;color:#7c8798;box-shadow:none}
.sd-secondary{border:1px solid var(--line2);background:#ffffff06;border-radius:10px;padding:10px 14px;display:inline-flex;gap:10px;align-items:center;font-size:13px;font-weight:600}
.sd-secondary:hover{border-color:var(--teal-a);color:var(--teal)}
.sd-error{padding:11px 14px;font-size:13px;background:#ff8a8018;border:1px solid #ff8a8044;color:#ffd0cb;border-radius:8px;margin:12px 0;line-height:1.5}
.sd-moment{font-style:normal;font-weight:800;text-transform:uppercase;letter-spacing:-.5px}
/* jersey */
.sd-jersey{position:relative;display:inline-block}
.sd-jersey .kit{width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(0 6px 6px #0007)}
.sd-jersey>span{position:absolute;top:36%;left:30%;width:40%;text-align:center;color:#fff;font-family:'Barlow Condensed',Arial,sans-serif;font-weight:800;text-shadow:0 1px 2px #000;line-height:1;pointer-events:none;font-size:14px}
/* setup */
.sd-setup{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.8fr) 380px;gap:24px;align-items:center;padding:40px 0;min-height:calc(100vh - 110px)}
.sd-setup-copy h1{font-size:clamp(46px,6vw,84px);line-height:.92;margin:20px 0}
.sd-setup-copy h1 em{color:var(--teal);font-style:inherit}
.sd-setup-intro{font-size:18px;line-height:1.55;color:#cdd6e3;margin:0 0 24px}
.sd-formula{list-style:none;padding:0;margin:0 0 22px;display:flex;gap:22px;flex-wrap:wrap}
.sd-formula li{display:flex;align-items:center;gap:10px}
.sd-formula b{font-size:46px;font-weight:700;line-height:1}
.sd-formula li.scout b{color:var(--gold)}.sd-formula li.dealt b{color:var(--teal)}
.sd-formula span{font-size:11px;line-height:1.35;letter-spacing:.8px;font-weight:700;color:var(--muted);text-transform:uppercase}
.sd-setup-detail{font-size:14px;line-height:1.6;color:var(--muted);max-width:520px}
.sd-setup-visual{position:relative;height:380px;pointer-events:none}
.sd-splash-card{position:absolute;left:18%;top:40px;width:170px;height:250px;border-radius:16px;border:1px solid #ffffff1f;background:radial-gradient(ellipse at 50% 35%,color-mix(in srgb,var(--accent),transparent 70%),transparent 70%),linear-gradient(165deg,#1d2c44,#0e1726);box-shadow:0 24px 50px #0008;transform:rotate(-10deg) translateX(-30px);overflow:hidden}
.sd-splash-card.splash-1{transform:rotate(5deg) translate(40px,-20px);z-index:2}
.sd-splash-card.splash-2{transform:rotate(16deg) translate(80px,60px);z-index:3;border-color:var(--teal-a);box-shadow:0 24px 50px #0008,0 0 40px #03ffcc22}
.sd-splash-pos{position:absolute;top:14px;left:14px;font-weight:800;font-size:12px;color:var(--teal)}
.sd-splash-team{position:absolute;top:15px;right:14px;font-size:10px;letter-spacing:1px;color:#c5d1e0}
.sd-splash-card .sd-jersey{position:absolute;top:40px;left:20px;width:130px;height:130px}
.sd-splash-card .sd-jersey>span{font-size:22px}
.sd-splash-card strong{position:absolute;left:16px;bottom:22px;font-size:18px;font-weight:800}
.sd-setup-form{border:1px solid var(--line2);border-radius:16px;background:linear-gradient(160deg,#142036f0,#0d1626f5);padding:28px;box-shadow:0 30px 70px #0006;position:relative}
.sd-setup-form:before{content:'';position:absolute;top:0;left:20%;right:20%;height:1px;background:linear-gradient(90deg,transparent,var(--teal),transparent)}
.sd-setup-form h2{font-size:24px;letter-spacing:-.5px;margin:10px 0 8px}
.sd-setup-form>p{color:var(--muted);font-size:13px;line-height:1.6;margin:0 0 6px}
.sd-setup-form label{display:block;font-size:12px;font-weight:700;letter-spacing:.6px;color:#b6c2d3;margin-top:16px}
.sd-setup-form input{display:block;width:100%;height:46px;margin-top:7px;border:1px solid var(--line2);background:#060b16;border-radius:9px;padding:0 13px;font-size:15px;color:#fff}
.sd-setup-form input:focus{border-color:var(--teal)}
.sd-backing-input{position:relative;display:block}.sd-backing-input>span{position:absolute;right:14px;top:22px;font-size:11px;font-weight:700;letter-spacing:1px;color:var(--muted)}
.sd-backing-input input{font-weight:800;font-size:18px;padding-right:64px;appearance:textfield}
.sd-available{display:flex;justify-content:space-between;margin:10px 0;font-size:12px;color:var(--muted)}.sd-available b{color:#dfe7f2}
.sd-note{font-size:12px!important;color:var(--dim)!important;margin:10px 0 18px!important}
.sd-setup-form .sd-primary{width:100%}
.sd-setup-footer{display:flex;justify-content:space-between;gap:8px;margin-top:14px;font-size:11px;color:var(--dim)}
/* ---------------- draft shell: persistent roster ---------------- */
.sd-draft{display:flex;flex-direction:column;gap:10px;padding:12px 0 8px}
.sd-roster{position:sticky;top:0;z-index:15;border:1px solid var(--line2);border-radius:14px;background:linear-gradient(180deg,#0f1a2cf2,#0b1322f2);backdrop-filter:blur(12px);padding:10px 12px 12px;box-shadow:0 14px 40px #0007,inset 0 1px 0 #ffffff0d}
.sd-roster-head{display:flex;align-items:center;gap:14px;margin-bottom:9px;min-width:0}
.sd-roster-title{min-width:0;flex:0 1 auto}
.sd-roster-title h2{margin:3px 0 0;font-size:15px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}
.sd-legend{font-size:9px;gap:5px;letter-spacing:1px}.sd-legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-left:5px}
.sd-legend i.is-core{background:var(--teal)}.sd-legend i.is-scout{background:var(--gold)}.sd-legend i.is-dealt{background:var(--steel);opacity:.6}
.sd-count{display:flex;align-items:baseline;gap:2px;font-variant-numeric:tabular-nums}
.sd-count b{display:inline-block;font-size:30px;font-weight:800;color:var(--teal);line-height:1}
.sd-count span{font-size:13px;color:var(--muted);font-weight:700}
.sd-backing-pill{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--muted);border-left:1px solid var(--line);padding-left:12px;white-space:nowrap}
.sd-backing-pill b{color:#fff;font-size:13px}.sd-backing-pill small{font-size:9px;color:var(--muted);letter-spacing:1px}.sd-backing-pill .sd-icon{width:13px;height:13px;color:var(--dim)}
.sd-slots{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:6px;transform-origin:50% 0}
.sd-slot{position:relative;height:48px;border-radius:9px;border:1px solid #ffffff12;background:#081120;display:flex;align-items:center;gap:6px;padding:0 7px;min-width:0;overflow:hidden}
.sd-slot:before{content:'';position:absolute;left:0;right:0;top:0;height:2px;background:var(--slot-c);opacity:.55}
.sd-slot.is-core{--slot-c:var(--teal)}.sd-slot.is-scout{--slot-c:var(--gold)}.sd-slot.is-dealt{--slot-c:var(--steel)}
.sd-slot.is-empty{justify-content:center;border-style:dashed;border-color:#ffffff14;background:#060c18}
.sd-slot-num{font-weight:800;font-size:24px;color:#ffffff1c}
.sd-slot.is-empty.is-core .sd-slot-num{color:#03ffcc2a}.sd-slot.is-empty.is-scout .sd-slot-num{color:#fdb91333}
.sd-slot.is-filled{background:linear-gradient(160deg,#16243b,#0d1728);border-color:#ffffff1c}
.sd-slot.is-filled.is-core{border-color:#03ffcc40}.sd-slot.is-filled.is-scout{border-color:#fdb91355}
.sd-slot-no{position:absolute;top:3px;right:5px;font-size:9px;color:var(--dim);font-weight:700}
.sd-slot .sd-jersey{width:30px;height:32px;flex:none}.sd-slot .sd-jersey>span{font-size:9px}
.sd-slot-text{min-width:0;display:flex;flex-direction:column}
.sd-slot-text b{font-size:11px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sd-slot-text small{font-size:9px;color:var(--muted);font-weight:700;letter-spacing:.5px}
.sd-slot.is-landing{box-shadow:0 0 0 2px var(--teal),0 0 24px #03ffcc88}
.sd-slot.is-landing-gold{box-shadow:0 0 0 2px var(--gold),0 0 28px #fdb913aa}
/* ---------------- stage ---------------- */
.sd-stage{position:relative;border-radius:16px;min-height:0;display:flex;flex-direction:column}
.sd-stage-heading{text-align:center;padding:6px 0 2px}
.sd-stage-heading h1{font-size:26px;font-weight:800;letter-spacing:-.5px;margin:6px 0 4px;outline:none}
.sd-stage-heading p{margin:0;color:var(--muted);font-size:14px}
.sd-stage-heading .sd-overline{justify-content:center}
.sd-phase-tag{color:var(--on-teal);background:var(--teal);padding:3px 8px;border-radius:5px;letter-spacing:1.2px;font-size:10px}
.sd-phase-tag.is-scout{background:var(--gold);color:#1d1400}
.sd-phase-tag.is-offers{background:transparent;color:var(--teal);border:1px solid var(--teal-a)}
.sd-stage-body{position:relative;flex:1;display:flex;flex-direction:column}
/* library */
.sd-lib-tools{display:flex;justify-content:space-between;gap:10px;margin:12px 0 10px;flex-wrap:wrap}
.sd-filter{display:flex;gap:4px;background:#060b16;border:1px solid var(--line);padding:4px;border-radius:10px}
.sd-filter button{border:0;background:transparent;color:var(--muted);padding:7px 12px;font-size:12px;font-weight:700;border-radius:7px}
.sd-filter button.active{background:var(--teal-b);color:var(--teal)}
.sd-search input{height:38px;width:220px;max-width:100%;border:1px solid var(--line2);background:#060b16;border-radius:10px;color:#fff;padding:0 12px;font-size:13px}
.sd-library{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:10px;align-content:start;padding:4px 2px 18px}
.sd-lib-card{position:relative;border:1px solid #ffffff1a;border-radius:12px;background:radial-gradient(ellipse at 50% 30%,color-mix(in srgb,var(--accent),transparent 78%),transparent 70%),linear-gradient(165deg,#18263d,#0d1626);padding:10px 8px 10px;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0;transition:transform .15s var(--ease),border-color .15s,box-shadow .15s}
.sd-lib-card:hover:not(:disabled){transform:translateY(-3px);border-color:var(--teal-a);box-shadow:0 10px 24px #0006}
.sd-lib-card .sd-jersey{width:64px;height:64px}.sd-lib-card .sd-jersey>span{font-size:13px}
.sd-lib-card strong{font-size:13px;font-weight:800;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sd-lib-card small{font-size:10px;color:var(--muted);font-weight:700;letter-spacing:.8px}
.sd-lib-pos{position:absolute;top:8px;left:9px;font-size:11px;font-weight:800;color:var(--teal)}
.sd-lib-check{position:absolute;top:7px;right:7px;width:20px;height:20px;border-radius:50%;background:var(--teal);color:var(--on-teal);display:grid;place-items:center;opacity:0}
.sd-lib-check .sd-icon{width:12px;height:12px}
.sd-lib-card.is-picked{opacity:.42;filter:saturate(.4)}.sd-lib-card.is-picked .sd-lib-check{opacity:1}
.sd-lib-card[hidden]{display:none}
.sd-lib-empty{grid-column:1/-1;color:var(--muted);text-align:center;padding:30px}
/* ---------------- chamber: one fixed stage, three pedestals ---------------- */
.sd-chamber{position:relative;margin:8px auto 0;width:100%;max-width:880px;height:min(430px,calc(100vh - 290px));min-height:330px;overflow:hidden;border-radius:18px;
 background:radial-gradient(ellipse 60% 40% at 50% 100%,#03ffcc14,transparent 70%),radial-gradient(ellipse at 50% 30%,#12284466,transparent 70%)}
.sd-seats{position:absolute;inset:0;display:grid;grid-template-columns:repeat(var(--seats,3),minmax(0,1fr));gap:18px;padding:0 24px;z-index:2;max-width:calc(var(--seats,3) * 250px);margin:0 auto}
.sd-seat{position:relative;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;min-width:0;padding-bottom:4px}
.sd-seat[hidden]{display:none}
.sd-card-slot{position:relative;z-index:3;width:100%;display:flex;justify-content:center;margin-bottom:6px}
/* offer card */
.sd-card{appearance:none;position:relative;width:100%;max-width:210px;aspect-ratio:5/7;max-height:calc(min(430px,100vh - 290px) - 50px);padding:0;border:0;background:none;border-radius:16px;color:#fff;text-align:left;transition:transform .16s var(--ease),filter .16s}
.sd-card:hover:not(:disabled),.sd-card:focus-visible{transform:translateY(-8px)}
.sd-card:focus-visible{outline:none}
.sd-card-top{position:absolute;top:10px;left:11px;right:10px;display:flex;justify-content:space-between;align-items:center;gap:6px;z-index:2}
.sd-card-pos{font-weight:900;font-size:15px;letter-spacing:.5px}
.sd-card-art{position:absolute;top:15%;left:12%;right:12%;height:47%;display:flex;justify-content:center}
.sd-card-art .sd-jersey{height:100%;aspect-ratio:1}.sd-card-art .sd-jersey>span{font-size:clamp(12px,2.2vw,24px)}
.sd-card-bottom{position:absolute;left:11px;right:10px;bottom:12px;display:flex;flex-direction:column;gap:3px}
.sd-card-team{font-size:10px;font-weight:800;letter-spacing:1.2px;color:#c6d2e2;display:flex;gap:6px;align-items:center}
.sd-card-team em{font-style:normal;font-size:9px;color:#1d1400;background:var(--gold);padding:1px 4px;border-radius:3px}
.sd-card-bottom strong{font-size:clamp(13px,1.7vw,19px);font-weight:900;letter-spacing:-.2px;line-height:1.1;overflow-wrap:anywhere}
.sd-key{position:absolute;right:9px;bottom:10px;width:22px;height:22px;border-radius:6px;border:1px solid #ffffff33;font-size:11px;font-weight:800;display:grid;place-items:center;color:var(--muted)}
.sd-chamber[data-dealing="true"] .sd-card{pointer-events:none}
.sd-hint{display:flex;justify-content:center;align-items:center;gap:7px;margin:8px 0 0;font-size:12px;color:var(--dim);text-align:center}
.sd-hint .sd-icon{width:13px;height:13px}
.sd-scout-note{text-align:center;color:var(--dim);font-size:11px;margin:6px 0 0}
/* review */
.sd-review{max-width:760px;margin:14px auto 0;border:1px solid var(--teal-a);background:linear-gradient(160deg,#03ffcc0d,#0b1424);border-radius:16px;padding:22px;text-align:center}
.sd-review-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.sd-review-grid div{border:1px solid var(--line);border-radius:10px;padding:10px;background:#060b16}
.sd-review-grid small{display:block;font-size:10px;letter-spacing:1px;color:var(--muted);font-weight:700}
.sd-review-grid b{display:block;font-size:20px;margin-top:6px}.sd-review-grid b span{font-size:12px;color:var(--muted)}
.sd-review-copy{color:#bac6d6;font-size:14px;line-height:1.6;margin:0 0 16px}
.sd-lock-button{min-width:240px}
/* ---------------- banners ---------------- */
.sd-overlay{position:fixed;inset:0;pointer-events:none;z-index:50;overflow:hidden}
/* ---------------- live: best eight + bench ---------------- */
.sd-live{padding:22px 0 10px}
.sd-live-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px}
.sd-live-heading h1{font-size:30px;letter-spacing:-.6px;margin:8px 0 4px}
.sd-live-heading p{margin:0;color:var(--muted);font-size:14px}
.sd-live-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}
.sd-field-panel{border:1px solid var(--line2);border-radius:16px;background:#0d1729cc;overflow:hidden}
.sd-field-top{display:flex;justify-content:space-between;padding:12px 16px;font-size:11px;font-weight:700;letter-spacing:1.2px;color:#b8c5d6}.sd-field-top span+span{color:var(--dim)}
.sd-gridiron{position:relative;margin:0 14px 14px;border-radius:12px;overflow:hidden;border:1px solid #7fb6d330;
 background:repeating-linear-gradient(0deg,transparent 0 47px,#bcd6ea1f 48px 49px),radial-gradient(ellipse at 50% 45%,#1c4a5a66,transparent 70%),linear-gradient(90deg,#0d2131,#143044 50%,#0d2131)}
.sd-endzone{height:30px;display:flex;align-items:center;justify-content:center;font-style:normal;font-weight:800;letter-spacing:6px;font-size:14px;color:#03ffcc55;background:#03ffcc0a;border-bottom:1px solid #03ffcc22}
.sd-endzone.bottom{border-top:1px solid #03ffcc22;border-bottom:0;font-size:10px;letter-spacing:3px}
.sd-field-players{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(3,auto);gap:8px;padding:14px 12px}
.sd-field-slot{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;padding:6px 4px;border-radius:12px}
.fs-0{grid-column:3/5;grid-row:1}.fs-6{grid-column:1/3;grid-row:1}.fs-7{grid-column:5/7;grid-row:1}
.fs-1{grid-column:1/3;grid-row:2}.fs-2{grid-column:5/7;grid-row:2}
.fs-3{grid-column:1/3;grid-row:3}.fs-4{grid-column:3/5;grid-row:3}.fs-5{grid-column:5/7;grid-row:3}
.sd-field-pos{font-size:10px;font-weight:800;letter-spacing:1px;color:var(--teal);background:#071713cc;border:1px solid var(--teal-a);padding:2px 7px;border-radius:5px}
.sd-field-slot .sd-jersey{width:64px;height:64px;margin:5px 0 3px}.sd-field-slot .sd-jersey>span{font-size:14px}
.sd-field-slot b{font-size:12px;font-weight:800;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sd-field-slot strong{font-size:22px;font-weight:800;color:var(--teal);font-variant-numeric:tabular-nums}
.sd-field-await{font-size:28px;color:var(--dim)}
.sd-field-slot.is-top{background:radial-gradient(ellipse,#fdb91322,transparent 70%)}
.sd-field-slot.is-top strong{color:var(--gold)}
.sd-field-slot.is-glowing{box-shadow:0 0 0 1px #fdb91366,0 0 30px #fdb91333}
.sd-top-tag{font-style:normal;font-size:9px;font-weight:800;letter-spacing:1px;color:#1d1400;background:var(--gold);padding:2px 6px;border-radius:4px}
.sd-week-card{border:1px solid var(--line2);border-radius:16px;background:linear-gradient(160deg,#142036,#0b1424);padding:20px}
.sd-score-big span{display:block;font-weight:800;font-size:72px;line-height:1;margin-top:10px;font-variant-numeric:tabular-nums}
.sd-score-big small{display:block;font-size:10px;letter-spacing:1.6px;color:var(--muted);font-weight:700;margin:4px 0 14px}
.sd-week-facts{display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin-bottom:14px}
.sd-week-facts div{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:12px;color:var(--muted)}
.sd-week-facts b{color:#fff;font-size:14px;text-align:right}.sd-week-facts small{color:var(--muted);font-size:10px}
.sd-week-facts em{font-style:normal;font-size:9px;letter-spacing:1px;color:var(--gold);border:1px solid #fdb91355;border-radius:3px;padding:0 4px;margin-left:4px}
.sd-week-card .sd-primary{width:100%}
.sd-disclaimer{display:block;margin-top:10px;font-size:11px;color:var(--dim);line-height:1.5;text-align:center}
.sd-bench{margin-top:16px}
.sd-bench-head h2{font-size:18px;margin:6px 0 10px}
.sd-bench-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px}
.sd-bench-player{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:#0d1729;border-radius:10px;padding:7px 10px;min-width:0}
.sd-bench-player .sd-jersey{width:34px;height:34px;flex:none}.sd-bench-player .sd-jersey>span{font-size:9px}
.sd-bench-player>span{flex:1;min-width:0}.sd-bench-player b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sd-bench-player small{display:block;font-size:10px;color:var(--muted);margin-top:2px}
.sd-bench-player strong{font-size:13px;color:#c9d4e3;font-variant-numeric:tabular-nums}
/* ---------------- teams ---------------- */
.sd-teams{padding:28px 0}
.sd-teams-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px}
.sd-teams-heading h1{font-size:34px;margin:8px 0 6px}.sd-teams-heading p{margin:0;color:var(--muted);font-size:14px}
.sd-team-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:12px}
.sd-team-card{border:1px solid var(--line2);border-radius:14px;background:#0d1729;overflow:hidden}
.sd-team-card>button{display:block;width:100%;background:none;border:0;text-align:left;padding:16px}
.sd-team-card>button:hover{background:#ffffff05}
.sd-team-title{display:flex;align-items:center;gap:10px}
.sd-team-ordinal{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:var(--teal-b);color:var(--teal);font-weight:800;font-size:12px;flex:none}
.sd-team-title>span:nth-child(2){flex:1;min-width:0}.sd-team-title h2{font-size:15px;margin:0 0 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sd-team-title small{font-size:10px;letter-spacing:1px;color:var(--muted)}.sd-team-title strong{font-size:16px;white-space:nowrap}.sd-team-title strong small{font-size:9px}
.sd-team-faces{display:flex;gap:6px;margin-top:12px;overflow:hidden}
.sd-team-faces>span{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center}
.sd-team-faces .sd-jersey{width:38px;height:38px}.sd-team-faces .sd-jersey>span{font-size:10px}
.sd-team-faces b{font-size:10px;font-weight:600;color:var(--muted);max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sd-team-more{color:var(--muted);font-weight:700;justify-content:center}
.sd-empty-teams{grid-column:1/-1;border:1px dashed var(--line2);border-radius:14px;padding:40px 20px;text-align:center;color:var(--muted)}
.sd-empty-teams .sd-icon{width:34px;height:34px;color:var(--teal)}.sd-empty-teams h2{color:#fff}
/* ---------------- dialog ---------------- */
#solo-dialog{border:1px solid var(--line2);border-radius:16px;background:#0d1729;color:var(--text);padding:20px;width:min(520px,calc(100vw - 24px));font-size:13px;line-height:1.5}
#solo-dialog::backdrop{background:#000a;backdrop-filter:blur(3px)}
.sd-demo-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.sd-demo-head span{font-size:10px;letter-spacing:1.4px;color:var(--gold);font-weight:800}.sd-demo-head h2{margin:4px 0 0;font-size:20px}
.sd-demo-head button{background:none;border:1px solid var(--line2);border-radius:8px;width:34px;height:34px;font-size:20px;color:#fff}
#solo-dialog p{color:var(--muted)}
.sd-demo-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
#solo-dialog button:not([data-demo-close]){border:1px solid var(--teal-a);background:var(--teal-b);color:var(--teal);border-radius:9px;padding:9px 12px;font-weight:700}
#solo-dialog button:not([data-demo-close]):hover{background:#03ffcc26}
#solo-dialog label{display:block;margin:8px 0;color:#c8d2e0}
#solo-dialog input[type=number]{display:block;margin-top:4px;height:38px;width:100%;border:1px solid var(--line2);border-radius:8px;background:#060b16;color:#fff;padding:0 10px}
.sd-demo-check{display:flex!important;align-items:center;gap:8px}.sd-demo-check input{accent-color:#03ffcc;width:16px;height:16px}
#solo-dialog hr{border:0;border-top:1px solid var(--line);margin:14px 0}
.sd-demo-foot{font-size:11px}
/* ---------------- reduced motion ---------------- */
.sd-app.is-reduced *,.sd-app.is-reduced *:before,.sd-app.is-reduced *:after{transition-duration:.12s!important}
.sd-app.is-reduced .sd-card:hover,.sd-app.is-reduced .sd-card:focus-visible,.sd-app.is-reduced .sd-lib-card:hover{transform:none}
@media (prefers-reduced-motion:reduce){
 .sd-beam,.sd-silhouette,.sd-flash,.sd-scan,.sd-sweep{display:none}
 *,*:before,*:after{transition-duration:.12s!important;animation-duration:.12s!important}
 .sd-card:hover,.sd-card:focus-visible{transform:none}
}
/* ---------------- responsive ---------------- */
@media (max-width:1180px){.sd-setup{grid-template-columns:minmax(0,1fr) 360px}.sd-setup-visual{display:none}.sd-backing-pill{display:none}}
@media (max-width:980px){.sd-roster-head{flex-wrap:wrap}.sd-coverage{margin-left:0;order:3;width:100%}.sd-live-grid{grid-template-columns:1fr}}
@media (max-height:760px) and (min-width:801px){.sd-slot{height:42px}.sd-stage-heading h1{font-size:22px}.sd-stage-heading p{font-size:13px}.sd-chamber{height:min(400px,calc(100vh - 280px))}.sd-card{max-height:calc(min(400px,100vh - 280px) - 50px)}}
@media (max-width:800px){
 .sd-header{padding:0 12px;gap:10px;height:52px}.sd-brand img{height:22px}.sd-product,.sd-header-divider{display:none}
 .sd-text-button span{display:none}.sd-text-button{padding:8px}
 .sd-main{padding:0 10px}.sd-footer{padding:12px 10px;flex-direction:column;font-size:9px}
 .sd-setup{grid-template-columns:1fr;padding:22px 0;min-height:0;gap:18px}.sd-setup-copy h1{font-size:46px}.sd-setup-intro{font-size:15px}.sd-formula{gap:14px}.sd-formula b{font-size:36px}
 .sd-setup-form{padding:20px}
 .sd-draft{padding-top:8px;gap:6px}
 .sd-roster{padding:8px;border-radius:12px;top:0}
 .sd-roster-head{gap:8px;margin-bottom:6px}.sd-roster-title h2{font-size:13px;max-width:200px}.sd-legend{display:none}
 .sd-count b{font-size:24px}
 .sd-coverage{gap:4px;flex-wrap:nowrap}.sd-chip{padding:3px 6px;gap:4px;font-size:10px;flex:1;justify-content:center}.sd-chip small{display:none}.sd-chip.is-met small,.sd-chip.is-max small{display:inline-flex}.sd-chip small i{display:none}
 .sd-slots{gap:3px}.sd-slot{height:34px;padding:0;justify-content:center;border-radius:6px}
 .sd-slot-text,.sd-slot-no{display:none}.sd-slot .sd-jersey{width:24px;height:26px}.sd-slot .sd-jersey>span{font-size:7px}.sd-slot-num{font-size:16px}
 .sd-stage-heading h1{font-size:20px}.sd-stage-heading p{font-size:12px}
 .sd-chamber{height:auto;min-height:0;aspect-ratio:auto;padding:10px 0 4px;overflow:visible}
 .sd-seats{position:relative;inset:auto;gap:8px;padding:0 2px}
 .sd-seat{padding-top:6px}
 .sd-beam{bottom:10px}.sd-pedestal{height:14px}
 .sd-card{max-height:none;max-width:none;border-radius:12px}.sd-card-face{border-radius:12px}
 .sd-card-top{top:7px;left:7px;right:6px}.sd-card-pos{font-size:12px}.sd-tier{font-size:7px;padding:2px 4px;letter-spacing:.6px}
 .sd-card-bottom{left:7px;right:6px;bottom:8px}.sd-card-team{font-size:8px;letter-spacing:.6px}.sd-card-team em{font-size:7px}.sd-card-bottom strong{font-size:12px}
 .sd-key{display:none}
 .sd-hint{font-size:11px;margin-top:4px}
 .sd-library{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.sd-lib-card{padding:8px 4px}.sd-lib-card .sd-jersey{width:48px;height:48px}.sd-lib-card strong{font-size:11px}
 .sd-filter button{padding:6px 9px}.sd-search,.sd-search input{width:100%}
 .sd-review{padding:14px}.sd-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sd-lock-button{width:100%;min-width:0}
 .sd-stamp span{font-size:34px;padding:0 14px;letter-spacing:3px}
 .sd-live-heading{flex-direction:column;align-items:flex-start}.sd-live-heading h1{font-size:24px}
 .sd-field-players{padding:10px 4px;gap:4px}.sd-field-slot .sd-jersey{width:44px;height:44px}.sd-field-slot b{font-size:10px}.sd-field-slot strong{font-size:17px}.sd-field-pos{font-size:8px;padding:1px 4px}
 .sd-gridiron{margin:0 6px 8px}.sd-score-big span{font-size:56px}
 .sd-bench-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .sd-banner-plate{padding:10px 18px}.sd-banner-plate strong{font-size:40px}
}
@media (max-width:360px){.sd-chip b{font-size:9px}.sd-card-bottom strong{font-size:11px}.sd-card-team{font-size:7px}.sd-tier{font-size:7px;padding:1px 3px;letter-spacing:.3px}.sd-bench-grid{grid-template-columns:1fr}.sd-banner-plate strong{font-size:32px}}
/* chamber sizing: cards derive from the fixed chamber height */
@media (min-width:801px){
 .sd-chamber{container-type:size;height:clamp(270px,calc(100vh - 376px),470px)}
 .sd-card{width:auto;height:min(calc(100cqh - 52px),300px);max-height:none;max-width:100%}
 .sd-card-bottom strong{font-size:clamp(13px,6.2cqh,19px)}
}
.sd-chamber{overflow:hidden}
.sd-score-big .is-empty{font-size:28px;color:var(--muted);letter-spacing:0;font-family:Inter,system-ui,sans-serif;font-weight:700;margin-top:18px}
