:root{--bg:#151719;--panel:#22262a;--ink:#f6f1e7;--muted:#b8bdc2;--gold:#e7b84a;--red:#d94b4b;--blue:#4385d4;--green:#3d9b68;--yellow:#e3bd3e}*{box-sizing:border-box}body{margin:0;font-family:system-ui,Segoe UI,sans-serif;background:radial-gradient(circle at top,#31373d,#111315 65%);color:var(--ink);min-height:100vh}button,select{font:inherit}.shell{max-width:1180px;margin:auto;padding:22px}.brand{text-align:center}.brand h1{font-size:clamp(42px,8vw,78px);margin:0;letter-spacing:.08em;color:var(--gold);text-shadow:0 3px 0 #000}.brand p{margin:4px 0 20px;color:var(--muted)}.panel{background:#202428;border:1px solid #3b4147;border-radius:18px;padding:18px;margin:14px 0;box-shadow:0 12px 35px #0006}.setup{max-width:620px;margin:28px auto}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.row>*{flex:1;min-width:150px}select,button{border-radius:10px;padding:12px;border:1px solid #555;background:#15181b;color:white}button{cursor:pointer;font-weight:700}button.primary{background:var(--gold);color:#161616;border:0}button:disabled{opacity:.45;cursor:not-allowed}.status{text-align:center;font-weight:700}.objective{border-left:5px solid var(--gold)}.opponents{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.opp{text-align:center;background:#181b1e;padding:12px;border-radius:12px}.opp.active{outline:3px solid var(--gold)}.table{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:center;max-width:520px;margin:auto}.pile{text-align:center}.card{width:92px;height:132px;border-radius:13px;border:3px solid #f6f1e7;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;font-weight:900;font-size:32px;color:white;text-shadow:0 2px 2px #0008;box-shadow:0 7px 16px #0007;position:relative;overflow:hidden}.card small{font-size:11px;line-height:1.05;text-align:center;padding:5px}.red{background:var(--red)}.blue{background:var(--blue)}.green{background:var(--green)}.yellow{background:var(--yellow)}.split-rb{background:linear-gradient(135deg,var(--red) 0 50%,var(--blue) 50%)}.split-rg{background:linear-gradient(135deg,var(--red) 0 50%,var(--green) 50%)}.split-ry{background:linear-gradient(135deg,var(--red) 0 50%,var(--yellow) 50%)}.split-bg{background:linear-gradient(135deg,var(--blue) 0 50%,var(--green) 50%)}.split-by{background:linear-gradient(135deg,var(--blue) 0 50%,var(--yellow) 50%)}.split-gy{background:linear-gradient(135deg,var(--green) 0 50%,var(--yellow) 50%)}.chaos{background:conic-gradient(var(--red),var(--blue),var(--green),var(--yellow),var(--red));font-size:18px}.back{background:linear-gradient(145deg,#30363b,#171a1d);color:#f6f1e7;border-color:#e7b84a;font-size:20px;letter-spacing:.08em;text-shadow:0 2px 2px #000;box-shadow:inset 0 0 0 5px #202428,inset 0 0 0 7px #e7b84a,0 7px 16px #0007}.hand{display:flex;gap:8px;overflow-x:auto;padding:12px 3px}.hand .card{flex:0 0 82px;height:118px;font-size:28px;transition:.15s}.hand button{padding:0;border:0;background:none}.hand button:hover .card{transform:translateY(-7px)}.hand button.selected .card{outline:4px solid white;transform:translateY(-9px)}.controls{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.log{max-height:160px;overflow:auto;background:#121416;border-radius:10px;padding:10px;font-size:13px;color:#d4d7da}.win{text-align:center;font-size:22px;color:var(--gold)}@media(max-width:560px){.shell{padding:10px}.card{width:76px;height:110px}.table{grid-template-columns:1fr 1fr}.hand .card{flex-basis:72px;height:104px}}
/* v0.2 Golden Age of Radio card redesign */
.radio-card{border:3px solid #d8c7a1;box-shadow:inset 0 0 0 3px #27231c,inset 0 0 18px #0007,0 7px 16px #0008;font-family:Georgia,'Times New Roman',serif}.radio-card:after{content:"";position:absolute;inset:7px;border:1px solid #f7e7b866;border-radius:8px;pointer-events:none}.radio-card .corner{position:absolute;top:8px;left:9px;font:900 13px/11px system-ui,sans-serif;text-align:center;text-shadow:0 1px 2px #000}.radio-card .corner b{font-size:7px;display:block;margin-top:2px}.radio-card .corner.bottom{top:auto;left:auto;right:9px;bottom:8px;transform:rotate(180deg)}.dialticks{position:absolute;width:70px;height:70px;border:2px solid #f7e7b8aa;border-radius:50%;background:repeating-conic-gradient(#f7e7b8 0 1deg,transparent 1deg 12deg);opacity:.75}.dialticks:after{content:"";position:absolute;inset:7px;border-radius:50%;background:#1c1915aa;border:1px solid #f7e7b888}.dialnum{z-index:2;font:900 37px/1 Georgia,serif;color:#fff5d6;text-shadow:0 2px 3px #000}.freq{position:absolute;top:28px;font:700 8px/1 system-ui,sans-serif;letter-spacing:.16em;color:#fff2c8}.tuning{position:absolute;bottom:27px;font:700 7px/1 system-ui,sans-serif;letter-spacing:.08em;color:#fff2c8;background:#17130e99;padding:3px 5px;border-radius:8px}.special-card{background:radial-gradient(circle at 50% 43%,#704a22 0 18%,#251b13 19% 36%,#8c672e 37% 39%,#1a1714 40% 100%);color:#f8e7b8}.special-card:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,#ffffff05 0 1px,transparent 1px 4px);pointer-events:none}.special-card .corner{font-size:9px;line-height:9px;color:#e7b84a}.history{position:absolute;top:13px;font:800 7px/1 system-ui,sans-serif;letter-spacing:.15em;color:#e7b84a}.special-icon{font-size:34px;z-index:2;filter:sepia(.5)}.special-card small{z-index:2;font:900 9px/1.05 system-ui,sans-serif;max-width:76px;background:#17130ecc;border:1px solid #d7b66b;padding:5px;border-radius:5px;color:#fff0c8}.micro{position:absolute;bottom:12px;font:700 6px/1 system-ui,sans-serif;letter-spacing:.12em;color:#c9b47e}.back{background:radial-gradient(circle,#46311f 0 20%,#171310 21% 45%,#342416 46% 48%,#151311 49% 100%);border-color:#d8b65f;color:#f5e4ad;display:inline-flex;line-height:1;box-shadow:inset 0 0 0 4px #1b1712,inset 0 0 0 6px #d8b65f,inset 0 0 28px #000,0 7px 16px #0008}.back:before{content:"";position:absolute;inset:10px;border:1px dashed #cba85a88;border-radius:7px}.back-stars{position:absolute;top:14px;font-size:10px;color:#d8b65f}.wstr{font:800 12px/1 Georgia,serif;letter-spacing:.2em;margin-left:.2em}.back109{font:900 30px/.9 Georgia,serif;color:#e7b84a}.stardust{font:700 6px/1.2 system-ui,sans-serif;letter-spacing:.12em;margin-top:4px}.shiftmark{position:absolute;bottom:14px;font:900 8px/1 system-ui,sans-serif;letter-spacing:.18em;color:#d8b65f}.hand .radio-card{font-size:inherit}

/* v0.2.1 special-card broadcast announcements */
.special-overlay{position:absolute;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(7,5,3,.78);backdrop-filter:blur(3px)}
.shell{position:relative}
.special-popup{width:min(520px,94%);text-align:center;padding:28px 24px;border:3px solid #c9a45a;border-radius:18px;background:linear-gradient(145deg,#2c2118,#100d0a);box-shadow:0 18px 60px rgba(0,0,0,.6),inset 0 0 0 1px rgba(255,240,190,.16);color:#f8e7b4}
.special-popup h2{margin:8px 0 12px;font-size:clamp(1.55rem,5vw,2.4rem);letter-spacing:.04em;color:#ffd875;text-shadow:0 2px 0 #000}
.special-popup p{margin:10px auto;max-width:430px;line-height:1.5}.special-popup .effect{font-size:1.08rem;color:#fff6da}
.broadcast-tag{display:inline-block;padding:6px 11px;border:1px solid #b68a43;border-radius:999px;font-size:.78rem;font-weight:800;letter-spacing:.13em;color:#e7c77f;background:#15100c}
.special-popup .primary{margin-top:12px;min-width:150px}
@media (max-width:520px){.special-overlay{padding:12px}.special-popup{padding:22px 16px}}

/* v0.2.2 — official WSTR 109 card back */
.logo-back{background:radial-gradient(circle at center,#102f5a 0 28%,#11100f 60%,#050505 100%);padding:9px;justify-content:center;border-color:#d8b65f}
.logo-back:before{inset:6px;border:1px solid #d8b65f;border-radius:8px}
.logo-back img{display:block;width:92%;height:82%;object-fit:contain;filter:drop-shadow(0 2px 3px #000);z-index:2}
.logo-back .shiftmark{bottom:7px;z-index:3;background:#130d08dd;padding:3px 6px;border-radius:8px}

/* SIGN OFF! v1.0 — WSTR 109 Broadcast Studio */
:root{--wood:#3b2416;--wood2:#17100b;--brass:#d6aa4f;--lamp:#ff3028;--cream:#f6e8c5}
body{background:radial-gradient(ellipse at 50% -10%,#4a3424 0,#191613 40%,#090b0d 100%);font-family:system-ui,Segoe UI,sans-serif}
.shell{max-width:1220px;padding:20px 24px 34px;background:linear-gradient(90deg,#160d08,#3b2416 2%,#1a1d1f 5%,#1a1d1f 95%,#3b2416 98%,#160d08);min-height:100vh;box-shadow:0 0 80px #000}
.brand{padding:14px 12px 18px;margin-bottom:8px;border-bottom:2px solid #9c7138;background:linear-gradient(#292724,#111);box-shadow:inset 0 -4px 12px #000}
.brand h1{font-family:Georgia,serif;color:#f1c65f;text-shadow:0 2px #000,0 0 18px #b66d13;font-size:clamp(46px,8vw,82px)}
.brand p{color:#f2dfb4;letter-spacing:.08em}.station-id{display:inline-block;padding:6px 14px;border:1px solid #b18a49;border-radius:4px;background:#0b0d0e;color:#e5c477;font-size:.76rem;font-weight:900;letter-spacing:.16em;box-shadow:inset 0 0 8px #000}
.panel{background:linear-gradient(145deg,#25292b,#171a1b);border:1px solid #554632;box-shadow:inset 0 0 0 2px #0c0e0f,0 10px 26px #0008}
.objective{border-left:6px solid var(--brass);background:linear-gradient(90deg,#32291b,#1b1e20 32%)}
.opponents{gap:12px}.opp{border:1px solid #504531;background:linear-gradient(#171a1b,#0d0f10);box-shadow:inset 0 0 18px #000}.opp.active{outline:none;border-color:#ff584f;box-shadow:0 0 18px #d8241e88,inset 0 0 18px #000}.opp.active:before{content:'● ON AIR';display:block;color:#ff4a42;text-shadow:0 0 9px #ff2c24;font-size:.7rem;font-weight:900;letter-spacing:.14em;margin-bottom:5px}.status{color:#ff554d;text-shadow:0 0 10px #e2251d;letter-spacing:.06em}.status:before{content:'● ';}.table{max-width:600px;padding:16px;border-radius:12px;background:linear-gradient(#3a3024,#171513);border:2px solid #725331;box-shadow:inset 0 0 25px #000}.pile{padding:8px;border-radius:10px;background:#0e1011;border:1px solid #655334;color:#e7cf9c}.controls:before{content:'WSTR 109 CONTROL DESK';width:100%;text-align:center;color:#b8975d;font-size:.66rem;font-weight:900;letter-spacing:.18em}.log{background:#efe2bd;color:#252019;font-family:'Courier New',monospace;border:5px solid #342519;box-shadow:inset 0 0 12px #806b4b;font-weight:600}.panel:has(.log)>strong{color:#e4bd68;letter-spacing:.08em}.win{border:2px solid #e64b42;box-shadow:0 0 24px #d51d1680,inset 0 0 20px #000}.win:before{content:'SIGN OFF';display:block;color:#ff4b42;text-shadow:0 0 13px #f1261d;font-size:1.7rem;font-weight:1000;letter-spacing:.18em;margin-bottom:8px}
.setup:before{content:'ON AIR';display:block;width:max-content;margin:-34px auto 18px;padding:5px 16px;border-radius:5px;background:#220b08;border:2px solid #c34b38;color:#ff4c42;font-weight:1000;letter-spacing:.2em;text-shadow:0 0 10px #ff2d25;box-shadow:0 0 14px #c31e1788}
@media(max-width:560px){.shell{padding:10px}.station-id{font-size:.58rem}.opp.active:before{font-size:.58rem}}
/* SIGN OFF! v1.1 — deeper broadcast-studio playing field */
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.14;background:repeating-linear-gradient(90deg,transparent 0 58px,#d6aa4f 59px 60px),repeating-linear-gradient(0deg,transparent 0 58px,#000 59px 60px);mix-blend-mode:soft-light}.studio-masthead{display:flex;align-items:center;justify-content:center;gap:24px}.studio-masthead h1{margin:0}.tower{width:62px;height:70px;position:relative;display:flex;align-items:center;justify-content:center}.tower span{font-size:32px;color:#e8b94f;text-shadow:0 0 12px #ff9d00}.tower i{position:absolute;border:2px solid #e8b94f;border-left-color:transparent;border-bottom-color:transparent;border-radius:50%;transform:rotate(45deg)}.tower i:nth-child(1){width:34px;height:34px}.tower i:nth-child(2){width:50px;height:50px}.tower i:nth-child(3){width:66px;height:66px}.vu{width:78px;height:48px;border:3px solid #8a6b3d;border-radius:8px;background:linear-gradient(#e7d8ad,#bda66f);color:#33291a;position:relative;overflow:hidden;font:900 9px/1 system-ui}.vu b{position:absolute;top:5px;left:31px}.vu span{position:absolute;width:2px;height:34px;background:#a21915;left:38px;bottom:-8px;transform-origin:bottom;animation:vuNeedle 1.4s ease-in-out infinite alternate}@keyframes vuNeedle{from{transform:rotate(-32deg)}to{transform:rotate(28deg)}}.studio-console{background:linear-gradient(#51412d 0 8px,#22201b 8px 100%);border:3px solid #5d3c22;box-shadow:inset 0 0 0 2px #a2763f,inset 0 -30px 55px #000,0 12px 30px #000}.console-top{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:720px;margin:0 auto 12px}.onair-lamp{padding:7px 18px;border:2px solid #7d2a22;border-radius:5px;background:#310a07;color:#ff5c50;font:1000 13px/1 system-ui;letter-spacing:.2em;text-shadow:0 0 9px #ff332a;box-shadow:0 0 15px #e52d2277,inset 0 0 12px #ff2a2222}.frequency{padding:7px 16px;border:1px solid #a7854d;background:#0c0d0d;color:#e6c36d;font:800 12px/1 'Courier New',monospace;letter-spacing:.1em}.frequency b{font-size:18px}.sound-toggle{padding:7px 11px;font-size:11px;background:#111;border-color:#7e6744;color:#e7cf9c}.meter-bank{max-width:520px;margin:0 auto 14px;display:flex;align-items:center;justify-content:center;gap:14px;padding:10px;border-radius:9px;background:linear-gradient(#121212,#29231b);border:1px solid #73583a}.meter{width:110px;height:54px;border:3px solid #6d5436;border-radius:6px;background:linear-gradient(#e9d9aa,#bba16b);position:relative;color:#33291a;text-align:center;overflow:hidden}.meter b{font-size:8px;letter-spacing:.12em}.needle{position:absolute;left:54px;bottom:-9px;width:2px;height:43px;background:#a41713;transform-origin:bottom}.n1{animation:meter1 .9s ease-in-out infinite alternate}.n2{animation:meter2 1.25s ease-in-out infinite alternate}@keyframes meter1{from{transform:rotate(-35deg)}to{transform:rotate(18deg)}}@keyframes meter2{from{transform:rotate(-18deg)}to{transform:rotate(31deg)}}.knob{width:35px;height:35px;border-radius:50%;border:3px solid #9c8155;background:radial-gradient(circle at 38% 32%,#69645a,#171717 55%,#050505);box-shadow:inset 0 0 0 3px #222,0 2px 5px #000}.knob:after{content:"";display:block;width:2px;height:11px;background:#e6c36d;margin:3px auto}.objective:before{content:'PROGRAM LOG';float:right;color:#b79558;font:900 9px/1 system-ui;letter-spacing:.16em}.opponents{padding:10px;border-radius:12px;background:linear-gradient(90deg,#2a1b11,#121414,#2a1b11);border-top:2px solid #77542f;border-bottom:2px solid #2c1c10}.hand{background:linear-gradient(#121313,#191714);border:1px solid #5b4931;border-radius:10px;box-shadow:inset 0 0 22px #000;padding:16px 10px}.panel:has(.hand) h3:after{content:' • CART RACK';color:#a78a59;font-size:.65em;letter-spacing:.14em}.log:before{content:'WSTR 109 — BROADCAST TRANSCRIPT';display:block;border-bottom:1px dashed #66583f;padding-bottom:5px;margin-bottom:6px;font-weight:900}.win{animation:signoffGlow 1s ease-in-out infinite alternate}@keyframes signoffGlow{from{box-shadow:0 0 18px #d51d1666,inset 0 0 20px #000}to{box-shadow:0 0 40px #f13a2bbb,inset 0 0 20px #000}}@media(max-width:650px){.studio-masthead{gap:8px}.tower,.vu{display:none}.console-top{flex-wrap:wrap;justify-content:center}.meter-bank{gap:7px}.meter{width:85px}.knob{width:30px;height:30px}}
.assignment-track{display:flex;gap:8px;margin-top:12px;align-items:center}.assignment-track span{display:inline-grid;place-items:center;min-width:34px;height:30px;padding:0 8px;border:1px solid #5c5140;border-radius:6px;background:#161a1d;color:#b8b1a5;font-weight:800}.assignment-track span.current{border-color:#e1b84b;color:#ffe08a;box-shadow:inset 0 0 12px rgba(225,184,75,.14)}.assignment-track span.locked{background:#243528;border-color:#6f9a73;color:#d9f0d8}.setup .row{align-items:end;flex-wrap:wrap}.setup label{min-width:210px}

/* v1.3 assignment guidance + refill treatment */
.refill-banner{margin:12px 0 16px;padding:18px 20px;border:2px solid #e7b84a;border-radius:14px;background:linear-gradient(180deg,#2b2619,#181a18);text-align:center;box-shadow:inset 0 0 24px rgba(231,184,74,.12),0 8px 24px #0005}.refill-banner .refill-kicker{font-size:13px;letter-spacing:.18em;font-weight:900;color:#e7b84a;margin-bottom:5px}.refill-banner>strong{display:block;font-size:clamp(19px,3vw,30px);line-height:1.15;color:#fff3c4;text-shadow:0 2px 0 #000;margin-bottom:7px}.refill-banner>strong span{color:#72e38d;font-size:1.16em;text-shadow:0 0 14px rgba(77,220,112,.35)}.refill-banner>div:last-child{font-size:16px;line-height:1.45;color:#eee}.refill-banner.final-mode{border-color:#62cf7a;background:linear-gradient(180deg,#183020,#151b17);box-shadow:inset 0 0 28px rgba(78,210,108,.12),0 8px 24px #0005}.refill-banner.final-mode .refill-kicker,.refill-banner.final-mode strong{color:#91f0a5}.assignment-popup{border:3px solid #69d77f!important;box-shadow:0 0 0 5px rgba(105,215,127,.12),0 20px 70px #000!important}.assignment-popup h2{color:#9cf1ac!important;font-size:clamp(32px,6vw,54px)!important;margin-bottom:8px!important}.assignment-done{font-weight:900;letter-spacing:.08em;color:#fff;font-size:20px}.assignment-popup .effect{font-size:clamp(18px,3vw,25px)!important;line-height:1.35}.continue-green{background:#39a857!important;color:white!important;border:2px solid #9cf1ac!important;font-size:19px!important;padding:14px 24px!important;min-width:230px;box-shadow:0 0 18px rgba(72,220,105,.35)}@keyframes greenPulse{0%,100%{transform:scale(1);box-shadow:0 0 10px rgba(72,220,105,.35)}50%{transform:scale(1.045);box-shadow:0 0 28px rgba(72,220,105,.9)}}.flash-green{animation:greenPulse 1s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.flash-green{animation:none;outline:4px solid #91f0a5}}@media(max-width:560px){.refill-banner{padding:14px 12px}.refill-banner>div:last-child{font-size:14px}.continue-green{width:100%;min-width:0}}

/* v1.4 — responsive studio setup + player cart-rack arrangement */
.setup{max-width:760px;margin-left:auto;margin-right:auto}
.setup-controls{display:grid!important;grid-template-columns:minmax(170px,.8fr) minmax(260px,1.35fr);gap:14px 18px;align-items:end}
.setup-controls label{min-width:0!important;width:100%;display:flex;flex-direction:column;gap:6px}
.setup-controls select{width:100%;max-width:100%;min-width:0}
.setup-controls #start{grid-column:1/-1;width:100%}
.hand-heading{display:flex;justify-content:space-between;align-items:end;gap:12px;flex-wrap:wrap}
.hand-heading h3{margin-bottom:0}
.organize-note{font-size:.7rem;font-weight:900;letter-spacing:.12em;color:#d6b266}
.hand-tools{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 2px}
.hand-tools button{font-size:.78rem;padding:8px 11px;background:#181a1b;border-color:#79623d;color:#ead8aa}
.hand-tools button:disabled{opacity:.38}
.hand button[draggable="true"]{cursor:grab}
.hand button.dragging{opacity:.45}
.hand button.drag-over .card{outline:3px dashed #efc34e;outline-offset:3px;transform:translateY(-5px)}
@media(max-width:680px){.setup-controls{grid-template-columns:1fr}.setup-controls #start{grid-column:1}.hand-tools button{flex:1 1 calc(50% - 8px);min-width:130px}.organize-note{width:100%}}

/* v1.6 Off Air pickup */
.offair-pile{position:relative}.offair-pile.takeable{outline:2px solid #7fd36b;outline-offset:6px;border-radius:12px}.take-offair{margin-top:8px;background:#2f7d32;color:#fff;border:1px solid #9be58a;border-radius:8px;padding:9px 12px;font-weight:800;letter-spacing:.04em;cursor:pointer}.take-offair:hover{filter:brightness(1.12)}.take-offair:focus-visible{outline:3px solid #fff;outline-offset:2px}.offair-note{display:block;max-width:150px;margin-top:7px;color:#cbbf9c;font-size:.72rem;line-height:1.2}

/* v1.7: readable, responsive visual assignment examples */
.objective-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,440px);gap:18px;align-items:center}
.objective-details{min-width:0;font-size:16px;line-height:1.5}
.objective-details>strong{display:block;font-size:clamp(17px,2.1vw,22px);margin-bottom:5px}
.assignment-example{min-width:0;padding:13px;border:2px solid #9a763c;border-radius:12px;background:linear-gradient(145deg,#191916,#292319);text-align:center;box-shadow:inset 0 0 20px #0008}
.example-label{font-weight:900;color:#f2ca6e;font-size:12px;letter-spacing:.09em;margin-bottom:11px}
.example-cards{display:flex;flex-wrap:wrap;justify-content:center;gap:6px}
.example-card{width:45px;height:65px;display:grid;place-items:center;flex:0 0 auto;border:2px solid #f4e8c9;border-radius:7px;box-shadow:inset 0 0 0 3px #241e18,0 2px 6px #0008;color:#fff;font:900 26px/1 Georgia,serif;text-shadow:1px 2px 2px #000b}
.example-card span{display:grid;place-items:center;width:30px;height:38px;border:1px solid #f4e8c966;border-radius:50%;background:#0003}
.example-note{font-size:13px;color:#f1e2c2;margin-top:10px;line-height:1.4}
@media(max-width:800px){.objective-layout{grid-template-columns:minmax(0,1fr)}.assignment-example{max-width:100%}}
@media(max-width:420px){.example-card{width:39px;height:57px;font-size:23px}.example-cards{gap:4px}}

/* v1.8 Illustrated Radio Studio: visual-only upgrade; gameplay rules unchanged */
body{background:#130b06 url('assets/radio-studio.webp') center top / cover fixed no-repeat!important}
body:before{content:"";position:fixed;inset:0;background:linear-gradient(90deg,#140b06cc,#10090499 55%,#140b06cc);pointer-events:none;z-index:-1}
.shell{max-width:1280px!important;background:linear-gradient(180deg,#180f09dc,#0b100cda);border:3px solid #976b32;border-radius:22px;box-shadow:0 12px 65px #000c,inset 0 0 45px #be813315;padding:clamp(12px,2vw,26px)!important;margin:20px auto!important}
.brand{background:linear-gradient(#1b1008dd,#160e09e8);border:2px solid #aa7535;border-radius:14px;box-shadow:0 0 30px #e7a33022}
.brand h1{color:#ffcf6e!important;text-shadow:0 4px 1px #5b1809,0 0 16px #e85916!important}
.table{background:radial-gradient(ellipse at 50% 40%,#15643b 0%,#0b462b 65%,#07331f 100%)!important;border:12px ridge #925c2c!important;border-radius:45% / 18%!important;box-shadow:inset 0 0 55px #001d13,0 8px 25px #000a!important;min-height:255px;align-items:center}
.studio-console{border:6px ridge #b47a37!important;background:linear-gradient(125deg,#2c170c,#140f0a 45%,#2d190c)!important}
.card.illustrated-special{background-size:100% 100%!important;background-position:center!important;background-repeat:no-repeat!important;background-color:#f3dfb3!important;border:2px solid #e8d3a6!important;box-shadow:0 4px 10px #000a!important}
.card.illustrated-special.draw2{background-image:url('assets/double-trouble.webp')!important}
.card.illustrated-special.reverse{background-image:url('assets/change-direction.webp')!important}
.card.illustrated-special.switch{background-image:url('assets/switch-a-roonie.webp')!important}
.illustrated-special>*{visibility:hidden!important}
.card.illustrated-back{background:#071b34 url('assets/card-back.webp') center / 100% 100% no-repeat!important;border:2px solid #dfb66e!important}
.mini-back{display:inline-block;width:17px;height:27px;margin-left:-4px;border:1px solid #f6d899;border-radius:3px;background:#071b34 url('assets/card-back.webp') center / 100% 100% no-repeat;box-shadow:1px 2px 3px #0008;vertical-align:middle}
.opp{background:linear-gradient(#281a11,#101712)!important;border:2px solid #8e652f!important;border-radius:13px!important;text-align:center;min-width:150px}
.portrait{display:inline-grid;place-items:center;width:65px;height:65px;border:5px ridge #c99849;border-radius:10px;background:linear-gradient(135deg,#765335,#271a11);font-size:30px;box-shadow:0 3px 12px #000a;background-position:center;background-size:cover}
.opponent-portrait{display:grid;margin:0 auto 7px}
.human-portrait{width:46px;height:46px;vertical-align:middle;margin-right:6px;background-image:url('assets/wstr-109-logo.png')}
.photo-picker{display:inline-flex;align-items:center;gap:5px;background:#292014;border:1px solid #bb9552;border-radius:8px;padding:7px 10px;color:#ffe3a6;cursor:pointer;font-size:12px;font-weight:bold}
.photo-picker input{max-width:160px;font-size:11px}
.hand-panel{background:linear-gradient(#20150eee,#121a13f0)!important;border:2px solid #a5793d!important}
.hand{background:radial-gradient(#125a39,#0a3424)!important;border:7px ridge #80502a!important}
.card.radio-card:not(.special-card):not(.back){background-color:#e8d5ab!important;box-shadow:inset 0 0 0 3px #ad8a58,0 3px 7px #0009!important}
@media(max-width:720px){.table{border-radius:24px!important;min-height:190px}.shell{margin:4px!important}.photo-picker{flex-wrap:wrap}}
