.royale{max-width:1240px;margin:28px auto;padding:0 20px;color:#16476a;font-family:Nunito,"Segoe UI",sans-serif}.royale *{box-sizing:border-box}.royale-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.royale h1{font-size:clamp(2.4rem,5vw,4rem);line-height:1;margin:4px 0 15px;color:#0875ac}.royale h2{font-size:1.25rem;margin:0 0 12px}.royale p{line-height:1.6}.eyebrow{font-size:.73rem;font-weight:900;letter-spacing:.18em;color:#36799d;margin:0}.royale a{color:#126383}.setup,.spellbook,.rules{border:1px solid #fff;border-radius:20px;background:#fafffff0;box-shadow:0 8px 28px #1d779f1f;padding:24px;margin-bottom:22px}.setup{display:grid;grid-template-columns:1fr 1fr;gap:20px}.setup form+form{border-left:1px solid #b9d9eb;padding-left:24px}.setup #status{grid-column:1/-1;margin:0}.setup .account{margin:0}.royale label{font-weight:800;display:block}.fields{display:flex;gap:20px;flex-wrap:wrap}.royale input,.royale select{padding:10px;border:1px solid #9fc7df;border-radius:9px;font:inherit;background:white;color:#0875ac;max-width:100%}.royale input[type=number]{width:80px}#code{font-family:monospace;text-transform:uppercase;width:100%;margin:5px 0}.royale button{border:1px solid #76b9dc;border-radius:9px;background:#1686b5;color:white;font:800 .9rem Nunito,sans-serif;padding:10px 15px;cursor:pointer}.royale button:disabled{opacity:.5;cursor:default}.setup button{margin-top:12px}.royale :focus-visible{outline:3px solid #0875ac;outline-offset:3px}.matchbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:14px;background:#086591;color:white;border-radius:16px 16px 0 0;font-size:.9rem}#room-code{font-family:monospace;letter-spacing:.07em}#timer{margin-left:auto;color:#ffe7a7;font-size:1.4rem}.arena-layout{display:grid;grid-template-columns:minmax(0,1fr) 230px;background:#faffff;border-radius:0 0 16px 16px;overflow:hidden;margin-bottom:22px}.stage{position:relative;min-width:0;background:#619dba}#arena{display:block;width:100%;aspect-ratio:8/5;touch-action:none;image-rendering:pixelated}.arena-layout aside{padding:20px}#scores{padding-left:22px;font-size:.9rem}#scores li{margin:8px 0}#ammo button{display:block;width:100%;text-align:left;margin-bottom:6px;background:#e3f3ff;color:#086591;border-color:#afcfe4}#ammo button.selected{background:#086591;color:white}.health{position:absolute;left:14px;top:14px;background:#075581e8;color:white;padding:8px 12px;border-radius:9px;font-size:.85rem;pointer-events:none}.banner{position:absolute;left:15%;right:15%;top:38%;text-align:center;background:#075581e8;color:#fff2cb;border-radius:12px;padding:18px;pointer-events:none;font-weight:900}.banner:empty{display:none}.book-heading{display:flex;gap:25px;justify-content:space-between}.book-heading p{font-size:.9rem;max-width:720px}#spell-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:8px;max-height:280px;overflow:auto;padding:4px}#spell-list button{text-align:left;background:#edf8ff;color:#086591;border:1px solid #b4d5e8;display:flex;gap:10px;align-items:center}#spell-list img{width:24px;height:24px;image-rendering:pixelated}#spell-list small{display:block;font-size:.72rem;line-height:1.35;font-weight:500;margin-top:4px}.small,.rules p{font-size:.85rem}.rules{background:#e8f6ffda}.touch-controls{position:absolute;bottom:10px;left:10px;display:flex;gap:4px}.touch-controls button{padding:10px 13px;background:#075581bb;touch-action:none}.touch-controls #cast{margin-left:15px}dialog#question{width:min(640px,94vw);max-height:88vh;overflow:auto;border:1px solid #a8cee4;border-radius:22px;padding:30px;background:#f8fcff;color:#16476a;box-shadow:0 20px 80px #00396755}dialog::backdrop{background:#06375b66}.close{float:right}#question-content{font-size:1.3rem;line-height:1.65;margin:20px 0;overflow:auto}#choices label{display:flex;gap:12px;padding:12px;margin:6px 0;border:1px solid #b4d5e8;border-radius:8px}#answer-label input{display:block;width:100%;margin:6px 0 15px}#answer-status{min-height:1.5em}#question math{font-size:1.2em}@media(max-width:780px){.royale{padding:0 10px}.royale-heading{display:block}.setup{grid-template-columns:1fr}.setup form+form{border-left:0;border-top:1px solid #b9d9eb;padding:20px 0 0}.arena-layout{grid-template-columns:1fr}.arena-layout aside{display:grid;grid-template-columns:1fr 1fr;gap:10px}#scores{margin:0}.book-heading{display:block}.stage canvas{aspect-ratio:4/3}.matchbar{gap:7px;font-size:.8rem}.matchbar button{padding:7px}.health{font-size:.7rem;max-width:85%}.banner{left:10%;right:10%}.royale-heading h1{font-size:2.8rem}}

.royale [hidden]{display:none!important}

#question .calculator{position:sticky;inset:auto;transform:none;width:100%;max-width:100%;margin:16px 0;z-index:2}#question .calculator button{padding:8px 5px;font-size:.8rem}#question .calculator .row{display:flex;gap:3px}#question .calculator .row button{flex:1;min-width:0}#calculator{margin-bottom:12px}

/* Shared white/blue Aero glass interface. Canvas artwork keeps its game colors. */
.royale{color:#16476a;}
.royale :is(.setup,.spellbook,.rules){background:linear-gradient(135deg,#ffffffed,#e7f9ffda);border:1px solid white;border-radius:26px;box-shadow:inset 0 1px white,0 12px 32px #1d779f26;}
.royale button,#question button{border-radius:999px;border:1px solid #8ac5e4;background:linear-gradient(#a8e4f7,#68bfdf 48%,#208fbc 51%,#0c75a9);color:white;box-shadow:inset 0 1px #ffffffcc,0 3px 8px #12658d25;text-shadow:0 1px 1px #07538066;}
.royale button:hover:not(:disabled),#question button:hover:not(:disabled){filter:brightness(1.06);}
.royale button:disabled{box-shadow:none;}
.royale :is(input,select),#question input{border-radius:12px;background:linear-gradient(#f5fbff,#fff);border-color:#9fc7df;color:#16476a;box-shadow:inset 0 2px 4px #236c9710;}
.royale .matchbar{background:linear-gradient(#158cbd,#075d91);border:1px solid white;box-shadow:inset 0 1px #ffffff88;}
.royale .arena-layout{border:1px solid white;background:linear-gradient(135deg,#fff,#e8f6ff);box-shadow:0 8px 24px #1d779f1a;}
.royale #ammo button,.royale #spell-list button{background:linear-gradient(#fff,#e5f4ff);color:#17618d;border-color:#aacfe5;text-shadow:0 1px white;}
.royale #ammo button.selected{background:linear-gradient(#66c7e8,#1283b7);color:white;text-shadow:0 1px 1px #07538066;}
.royale .health,.royale .banner{background:linear-gradient(#086b9cea,#05456bea);border:1px solid #a3d5ed99;box-shadow:inset 0 1px #ffffff55,0 3px 9px #00375f33;color:white;}
.royale .touch-controls button{background:linear-gradient(#76cdeaee,#086b9cee);}
dialog#question{background:linear-gradient(135deg,#ffffff,#e7f9ff);border:1px solid white;color:#16476a;box-shadow:inset 0 1px white,0 20px 80px #00396755;}
#question .calculator button{border-radius:9px;}
