/* Quiet, tactile sports club. All interface colours inherit the saved GenZ theme. */
.arcade-head{max-width:1320px;margin:0 auto 20px;display:flex;align-items:center;justify-content:space-between;gap:20px}.arcade-head h1{font:500 clamp(28px,3vw,43px)/1.2 Georgia,serif;color:var(--room-text);margin:8px 0}.arcade-head p{color:var(--room-muted);font-size:12px;line-height:1.7;margin:0}.arcade-actions{display:flex;gap:8px}.arcade-actions button,.arcade-back{border:1px solid var(--room-line);background:var(--room-panel);color:var(--room-accent);padding:10px 14px;border-radius:9px;font-size:11px;cursor:pointer}.arcade-back{margin-bottom:14px}.arcade-layout{max-width:1320px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) 248px;gap:14px}.arcade-venue{position:relative;min-height:520px;height:min(67vh,720px);border:1px solid var(--room-line);border-radius:18px;overflow:hidden;background:#0e2027;isolation:isolate;box-shadow:0 20px 65px #0003;touch-action:none}.arcade-venue canvas{display:block;width:100%;height:100%}.arcade-hud{position:absolute;top:16px;left:18px;right:18px;display:flex;justify-content:space-between;gap:14px;pointer-events:none;color:#e5e8dd}.arcade-hud>div{border:1px solid #dde8da24;background:#10252bbd;backdrop-filter:blur(8px);padding:11px 14px;border-radius:10px}.arcade-hud small{display:block;letter-spacing:1.5px;font-size:8px;color:#bec9bd;margin-bottom:6px}.arcade-hud strong{font-size:20px;font-weight:500;font-variant-numeric:tabular-nums}.arcade-hud em{font-style:normal;font-size:10px;color:#c6b695;margin-left:5px}.arcade-stage-caption{position:absolute;bottom:14px;left:18px;right:18px;display:flex;justify-content:space-between;gap:15px;pointer-events:none;font-size:9px;letter-spacing:.5px;color:#cbd4ca;text-shadow:0 1px 6px #000}.arcade-status{min-height:48px;display:flex;align-items:center;gap:10px;font-size:12px;color:var(--room-text);padding:15px 4px;line-height:1.7}.arcade-status:before{content:'';width:5px;height:5px;border-radius:50%;background:var(--room-accent);flex-shrink:0}.arcade-control{background:var(--room-panel);border:1px solid var(--room-line);border-radius:17px;padding:19px;display:flex;flex-direction:column;gap:18px;color:var(--room-text)}.arcade-control label{font-size:11px;color:var(--room-muted);display:block}.arcade-control label>span{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.arcade-control output{color:var(--room-accent);font-variant-numeric:tabular-nums}.arcade-control input[type=range]{width:100%;accent-color:var(--room-accent);height:28px;min-height:28px}.arcade-control select{background:var(--room-card);color:var(--room-text);border:1px solid var(--room-line);width:100%;padding:10px;border-radius:8px;min-height:42px;font-size:12px}.arcade-control .arcade-fire{border:1px solid var(--room-accent);background:linear-gradient(140deg,var(--room-button),var(--room-accent));color:var(--room-button-text);border-radius:11px;min-height:60px;padding:12px;font-size:14px;font-weight:600;cursor:pointer;touch-action:none;box-shadow:0 4px 12px #0003;user-select:none}.arcade-fire small{font-size:8px;display:block;margin-top:7px;letter-spacing:1px;font-weight:400}.arcade-fire.charging{box-shadow:inset 0 0 0 3px #fff6,0 0 25px #c2b68b44;transform:translateY(2px)}.arcade-control button:disabled,.arcade-control input:disabled{opacity:.4;cursor:default}.arcade-check{display:flex!important;align-items:center;gap:8px;line-height:1.5}.arcade-check input{accent-color:var(--room-accent);width:16px;height:16px}.arcade-line{border-top:1px solid var(--room-line);padding-top:14px;font-size:10px;line-height:1.7;color:var(--room-muted)}.arcade-record{margin-top:auto;padding:14px;border-radius:9px;background:var(--room-card);border:1px solid var(--room-line)}.arcade-record small{font-size:8px;letter-spacing:1px;color:var(--room-muted);display:block;margin-bottom:7px}.arcade-record strong{font-size:19px;font-weight:400;color:var(--room-accent)}.arcade-result{position:absolute;z-index:6;left:50%;top:48%;width:min(360px,calc(100% - 35px));transform:translate(-50%,-50%);background:#102027eb;backdrop-filter:blur(18px);border:1px solid #c5b88a88;border-radius:18px;padding:28px;text-align:center;box-shadow:0 20px 65px #0006;color:#e4e8df}.arcade-result .result-symbol{font-size:31px;color:#e0c985}.arcade-result h2{font:500 29px/1.3 Georgia,serif;margin:14px 0}.arcade-result p{font-size:12px;line-height:1.9;color:#b9c9c2}.arcade-result button{padding:12px 20px;background:#c6b995;color:#172a2d;border:0;border-radius:8px;font-size:12px;margin-top:12px;cursor:pointer}.arcade-shot-dots{display:flex;gap:5px;flex-wrap:wrap}.arcade-shot-dots i{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--room-card-top);border:1px solid var(--room-line);font-size:9px;font-style:normal}.arcade-shot-dots i.good{background:#486d58;color:#f1ecd6}.arcade-shot-dots i.bad{color:#cc9b8a}.gem-grid{position:absolute;inset:110px 25px 65px;margin:auto;display:grid;gap:clamp(8px,1.3vw,17px);width:min(420px,calc(100% - 50px));aspect-ratio:1;height:auto;max-height:calc(100% - 180px);transform:perspective(1000px) rotateX(8deg);filter:drop-shadow(0 17px 20px #0006)}.gem-grid button{position:relative;min-width:0;min-height:0;border:1px solid #7798a533;background:linear-gradient(145deg,#2d4856,#152734);box-shadow:inset 1px 1px 0 #d4e4e927,inset -2px -4px 8px #0006,0 4px 0 #0b171e;border-radius:12px;cursor:pointer;transition:background .22s,transform .22s;touch-action:manipulation;padding:15%}.gem-grid .gem-stone{display:block;width:100%;height:100%;clip-path:polygon(30% 0,70% 0,100% 30%,100% 70%,70% 100%,30% 100%,0 70%,0 30%);background:conic-gradient(from 22deg,#1f3048,#334c69,#405074,#263b54,#2f4364,#182c43,#3b5075,#1f3048);box-shadow:inset 1px 1px 4px #fff3;transition:filter .2s}.gem-grid .lit{background:linear-gradient(145deg,#566288,#29385a);border-color:#a8b3d266}.gem-grid .lit .gem-stone{background:conic-gradient(from 22deg,#9d9ccc,#c8c1ef,#5d73be,#a498e1,#6878ba,#b2acf0,#6e88c5,#9d9ccc);filter:drop-shadow(0 0 9px #8796e9aa)}.gem-grid .gem-stone:after{content:'';display:block;width:45%;height:38%;margin:20% auto;background:linear-gradient(135deg,#ffffff8a,#d6e2ff08);clip-path:polygon(10% 10%,100% 20%,70% 100%,0 80%)}.gem-grid button.hint{outline:2px solid #e0c680;outline-offset:3px}.gem-grid button.pulse{animation:gemPulse .3s ease-out}.gem-grid button:hover{transform:translateY(-3px)}@keyframes gemPulse{50%{transform:translateY(-6px);filter:brightness(1.3)}}.arcade-help{max-width:640px}.arcade-help .window-body{padding:25px}.arcade-help h3{font:500 26px Georgia,serif;color:var(--room-text);margin:0 0 15px}.arcade-help p{font-size:12px;line-height:1.9;color:var(--room-muted)}.arcade-help-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.arcade-help-steps>div{background:var(--room-card);border:1px solid var(--room-line);border-radius:12px;padding:15px;font-size:11px;line-height:1.8;color:var(--room-text)}.arcade-help-steps b{display:block;color:var(--room-accent);font-size:20px;margin-bottom:10px}.arcade-help svg{width:100%;height:115px;background:#142d32;border-radius:12px}.arcade-help .primary{width:100%;margin-top:15px}.tile-penalty .game-tile-art{background:radial-gradient(ellipse at 55% 10%,#477b79,#183d43 60%,#12292e)}.tile-archery .game-tile-art{background:linear-gradient(160deg,#8a7958,#48564a 50%,#243c36)}.tile-gems .game-tile-art{background:radial-gradient(ellipse at 70% 15%,#455176,#242d47 50%,#151f34)}.tile-goal{position:absolute;width:58%;height:42%;left:21%;top:25%;border:5px solid #e1e1c4;border-bottom:0;transform:perspective(700px) rotateY(-13deg);background:repeating-linear-gradient(0deg,transparent 0 14px,#dbe2d733 15px 16px),repeating-linear-gradient(90deg,transparent 0 20px,#dbe2d733 21px 22px);box-shadow:13px 0 0 #cdd8c31a}.tile-football{position:absolute;left:29%;top:63%;width:44px;height:44px;border-radius:50%;background:radial-gradient(circle at 35% 27%,#fff 10%,#e1e1d5 45%,#72848b 88%);box-shadow:5px 9px 15px #0007}.tile-football:after{content:'⬟';position:absolute;left:11px;top:7px;color:#283a43;font-size:24px}.tile-target{position:absolute;width:140px;height:140px;border-radius:50%;left:calc(50% - 70px);top:40px;background:radial-gradient(circle,#e9c673 0 12%,#7c423b 12% 25%,#e5d5af 25% 40%,#273f49 40% 55%,#e7d7b2 55% 70%,#9b7351 70%);transform:perspective(600px) rotateY(-20deg);box-shadow:10px 8px 0 #4d3d2e,15px 15px 24px #0006}.tile-target:after{content:'';position:absolute;width:170px;height:3px;background:#c9b389;right:50px;top:70px;transform:rotate(-22deg);box-shadow:0 2px 3px #0005}.tile-gem-art{position:absolute;left:calc(50% - 81px);top:36px;display:grid;grid-template-columns:repeat(3,46px);gap:10px;transform:perspective(600px) rotateX(18deg) rotateZ(-12deg)}.tile-gem-art i{width:46px;height:46px;border-radius:8px;background:conic-gradient(from 20deg,#b6b2dd,#6983b0,#384d77,#a298d3,#677caa,#b6b2dd);box-shadow:3px 5px 0 #1b2d4b,0 10px 17px #0004}.tile-gem-art i:nth-child(3n){filter:brightness(.5)}
@media(min-width:1100px){.game-library{grid-template-columns:repeat(3,minmax(0,1fr))}.game-tile-art{height:240px}.game-tile-copy{padding:24px}.game-tile h2{font-size:30px}.tile-pool-table{transform:perspective(600px) rotateX(33deg) rotateZ(-13deg) scale(.82);left:calc(50% - 160px)}.tile-four-board{transform:perspective(600px) rotateY(-17deg) rotateX(8deg) rotateZ(7deg) scale(.82)}}
@media(max-width:800px){.arcade-layout{grid-template-columns:1fr}.arcade-venue{min-height:410px;height:55vh}.arcade-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px}.arcade-control .arcade-fire{grid-column:2;grid-row:2/4}.arcade-record{grid-column:2}.arcade-control .arcade-line{grid-column:1/-1}.arcade-head{align-items:flex-start;gap:10px}.arcade-head p{font-size:11px}.arcade-actions{flex-direction:column}.arcade-actions button{padding:8px 12px;font-size:10px}.arcade-hud{top:12px;left:12px;right:12px}.arcade-hud>div{padding:9px 11px}.arcade-hud strong{font-size:18px}.arcade-help-steps{grid-template-columns:1fr}.arcade-help-steps>div{display:flex;align-items:center;gap:14px;padding:10px 14px}.arcade-help-steps b{margin:0}.arcade-status{font-size:11px}.arcade-head h1{font-size:30px}.gem-grid{inset:105px 25px 55px;width:min(340px,calc(100% - 50px));max-height:calc(100% - 160px)}}
@media(prefers-reduced-motion:reduce){.gem-grid button{transition:none}.gem-grid button.pulse{animation:none}}
#arcade-aim-controls,#arcade-tricks{display:grid;gap:17px}#arcade-tricks .arcade-check{margin-top:3px}#arcade-gem-tools{display:grid;gap:10px}.arcade-control label>span:has(>span){display:flex}.arcade-control [hidden],.arcade-venue [hidden]{display:none!important}
@media(min-width:801px){.arcade-control{height:min(67vh,720px);min-height:520px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--room-accent) transparent;box-sizing:border-box}.arcade-record{margin-top:5px}}
.arcade-online-window{width:min(690px,calc(100vw - 20px))}.arcade-online-window .window-body{padding:24px}.arcade-online-window h3{font:500 20px Georgia,serif;color:var(--room-text);margin:22px 0 14px}.arcade-online-window p{font-size:12px;line-height:1.8;color:var(--room-muted)}.arcade-online-window input,.arcade-online-window select{background:var(--room-card);border:1px solid var(--room-line);border-radius:8px;color:var(--room-text);padding:11px;min-height:40px;width:100%;font-size:12px}.arcade-lobby-options{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:18px 0}.arcade-lobby-options label{font-size:10px;color:var(--room-muted)}.arcade-lobby-options span{display:block;margin-bottom:9px}.arcade-stake-summary{padding:12px 14px;border:1px solid var(--room-line);background:var(--room-card);border-radius:9px;color:var(--room-accent)!important}.arcade-balance-row,.arcade-lobby-label{display:flex;align-items:center;justify-content:space-between;gap:15px}.arcade-balance-row{margin:15px 0;color:var(--room-accent);font-size:12px;line-height:1.8}.arcade-profile{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.arcade-profile label{grid-column:1/-1;font-size:10px;color:var(--room-muted)}.arcade-lobby-label h3{margin:15px 0}.arcade-online-window .lobby-person,.arcade-online-window .invite{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--room-line);font-size:12px;color:var(--room-text)}.arcade-online-window .invite b{flex:1;min-width:180px;font-weight:500;line-height:1.8}.arcade-duel-bar{max-width:1320px;margin:0 auto 14px;border:1px solid var(--room-line);background:var(--room-panel);border-radius:12px;display:grid;grid-template-columns:1fr 1.3fr 1fr;align-items:center;padding:15px 22px;color:var(--room-text);gap:15px}.arcade-duel-bar>div{display:flex;flex-direction:column;gap:6px}.arcade-duel-bar>div:last-child{text-align:right}.arcade-duel-bar small{font-size:8px;letter-spacing:.6px;color:var(--room-muted);line-height:1.8}.arcade-duel-bar strong{font-weight:500;font-size:12px;overflow-wrap:anywhere}.arcade-duel-bar b{font-size:22px;font-weight:400;color:var(--room-accent)}.arcade-duel-pot{text-align:center}.arcade-duel-pot>span{font-size:11px;color:var(--room-accent)}#arcade-online-clock{font-variant-numeric:tabular-nums;font-size:14px}#arcade-online-clock.urgent{color:#e8a791}.arcade-chat{border:1px solid var(--room-line);border-radius:12px;background:var(--room-panel);padding:12px 16px;margin:0 0 20px}.arcade-chat summary{font-size:12px;color:var(--room-accent);cursor:pointer;padding:5px 0}.arcade-chat .chat-messages{height:140px;min-height:70px;margin-top:10px;font-size:12px}.arcade-chat form{display:flex;gap:8px;margin-top:12px}.arcade-chat input{flex:1;min-width:0;background:var(--room-card);color:var(--room-text);border:1px solid var(--room-line);padding:11px;border-radius:8px;font-size:12px}.arcade-chat button{width:auto;font-size:11px}#arcade-claim-timeout{font-size:10px;color:#e0bd84;padding:3px}.arcade-result[data-result=loss]{border-color:#b87c7288}.arcade-result[data-result=draw]{border-color:#92a6b288}.arcade-result .coin-receipt{display:block;font-size:20px;color:#e0c58d;margin:15px 0}.arcade-online-window .fine-print{font-size:10px}#arcade-duel-bar[hidden],#arcade-chat[hidden]{display:none!important}@media(max-width:700px){.arcade-duel-bar{padding:12px;gap:8px;grid-template-columns:1fr 1.4fr 1fr}.arcade-duel-bar strong{font-size:10px}.arcade-duel-bar small{font-size:7px}.arcade-duel-bar b{font-size:18px}.arcade-duel-pot>span{font-size:9px}.arcade-lobby-options{gap:10px}.arcade-online-window .window-body{padding:17px}.arcade-actions{flex-direction:row;flex-wrap:wrap;justify-content:flex-end;max-width:160px}.arcade-chat{padding:10px}.arcade-head h1{font-size:27px}}
/* Mineral matching: visible names, distinct silhouettes, uncomplicated pairs. */
.mineral-grid{width:min(520px,calc(100% - 40px));gap:12px;inset:110px 20px 60px;max-height:calc(100% - 175px);transform:perspective(1100px) rotateX(4deg)}.mineral-grid .mineral-card{padding:13px 9px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border-radius:12px;background:linear-gradient(145deg,#34494f,#182e37);box-shadow:inset 1px 1px 0 #d8e8df33,0 4px 0 #0b1d25,0 8px 12px #0003;min-height:75px;position:relative}.mineral-grid .mineral-card .gem-stone{width:49%;height:auto;aspect-ratio:1;flex:none;background:conic-gradient(from 25deg,var(--gem-light),var(--gem-colour),#152436,var(--gem-light),var(--gem-colour),var(--gem-light));filter:drop-shadow(0 5px 7px #0008)}.mineral-grid .mineral-card small{font-size:clamp(8px,.85vw,11px);line-height:1.3;color:#e5e8de;letter-spacing:.1px}.mineral-grid .mineral-card i{position:absolute;right:7px;top:5px;font-size:12px;color:#b9ddc3;font-style:normal}.mineral-grid .mineral-card.matched{background:linear-gradient(145deg,#34534b,#1f3a37);border-color:#9dc9a87a;box-shadow:inset 0 0 15px #acddac14}.mineral-grid .mineral-card.matched .gem-stone{filter:brightness(.8)}.mineral-grid .mineral-card.covered{background:repeating-linear-gradient(45deg,#253b45,#253b45 8px,#293f481f 9px,#2c4550 10px)}.mineral-grid .mineral-card.covered .gem-stone{background:linear-gradient(145deg,#66818b,#29414e);opacity:.45;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}.mineral-grid .mineral-card.covered i{position:absolute;left:0;right:0;top:24%;font:500 25px Georgia,serif;color:#c4d6d5}.mineral-grid .mineral-card.selected{outline:2px solid #cfba82;outline-offset:2px}.mineral-grid [data-shape=diamond] .gem-stone{clip-path:polygon(22% 0,78% 0,100% 32%,50% 100%,0 32%)}.mineral-grid [data-shape=oval] .gem-stone{border-radius:48%;clip-path:polygon(32% 0,68% 0,90% 20%,100% 50%,90% 80%,68% 100%,32% 100%,10% 80%,0 50%,10% 20%)}.mineral-grid [data-shape=emerald] .gem-stone{clip-path:polygon(16% 0,84% 0,100% 16%,100% 84%,84% 100%,16% 100%,0 84%,0 16%);transform:scaleX(.8)}.mineral-grid [data-shape=crystal] .gem-stone{clip-path:polygon(45% 0,72% 9%,98% 72%,75% 100%,22% 88%,3% 29%)}.mineral-grid [data-shape=nugget] .gem-stone{clip-path:polygon(5% 29%,19% 11%,37% 14%,51% 0,76% 14%,80% 35%,100% 47%,86% 72%,69% 83%,56% 100%,30% 91%,22% 69%,0 60%);background:radial-gradient(circle at 28% 24%,#fff5b7,#d9ac43 33%,#957022 62%,#f2d081 70%,#7c5c23)!important}.mineral-grid [data-shape=round] .gem-stone{border-radius:50%;clip-path:none}.mineral-lesson{padding:15px;border:1px solid var(--room-line);background:var(--room-card);border-radius:12px;margin:18px 0}.mineral-lesson>p{margin:0 0 12px;color:var(--room-accent)!important}.mineral-lesson-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.mineral-lesson-cards button{border:1px solid var(--room-line);border-radius:9px;background:var(--room-panel);color:var(--room-text);padding:12px 5px;cursor:pointer}.mineral-lesson-cards span{display:block;width:30px;height:30px;margin:0 auto 8px;background:conic-gradient(var(--gem-light),var(--gem-colour),var(--gem-light));clip-path:polygon(30% 0,70% 0,100% 30%,100% 70%,70% 100%,30% 100%,0 70%,0 30%)}.mineral-lesson-cards small{font-size:10px}.mineral-lesson-cards button.matched{border-color:#9ac9a0;background:#294d41}.arcade-head h1{max-width:780px}.tile-penalty .game-tile-copy h2{font-size:27px;line-height:1.2}.arcade-control #arcade-gem-tools{padding:15px;background:var(--room-card);border-radius:10px}@media(max-width:700px){.mineral-grid{width:min(380px,calc(100% - 30px));gap:8px;inset:100px 15px 48px;max-height:calc(100% - 150px)}.mineral-grid .mineral-card{min-height:62px;padding:9px 5px 7px}.mineral-grid .mineral-card small{font-size:8px}.mineral-grid .mineral-card .gem-stone{width:47%}.mineral-lesson{padding:10px}.mineral-lesson-cards{gap:6px}.mineral-lesson-cards small{font-size:8px}.tile-penalty .game-tile-copy h2{font-size:25px}}
.tile-penalty .game-tile-art{background:linear-gradient(0deg,#102f36cc,#122d3522),url('./assets/tanzania-stadium-v1.png') center/cover}.tile-athlete{position:absolute;left:18%;top:34px;width:160px;height:160px;background-image:url('./assets/football-actors-v1.png');background-size:600% 200%;background-position:0 0;filter:drop-shadow(4px 7px 5px #0005)}.tile-penalty .tile-goal{width:43%;left:48%;height:34%;top:33%;border-width:3px}.tile-penalty .tile-football{left:40%;top:72%;width:26px;height:26px}.tile-penalty .tile-football:after{font-size:15px;left:6px;top:3px}.tile-gem-art i:nth-child(2n){background:conic-gradient(#ffe9ab,#ad7d2a,#e1ba67,#8c692c,#ffe9ab);filter:none}.tile-gem-art i:nth-child(3n){background:conic-gradient(#e7ffff,#8cbec8,#d2f0f2,#769ea8,#e7ffff);filter:none}.tile-gem-art i:nth-child(5){background:conic-gradient(#d6b4ce,#934d70,#efc0c9,#863d59,#d6b4ce)}.tile-gem-art i:nth-child(7){background:conic-gradient(#bfedd2,#4b8b70,#98d9b3,#386f58,#bfedd2)}
.mineral-catalog{margin-top:18px;border-top:1px solid var(--room-line);padding-top:12px}.mineral-catalog summary{font-size:11px;color:var(--room-accent);cursor:pointer;padding:5px 0}.mineral-catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:15px 0}.mineral-catalog-grid>span{display:flex;align-items:center;gap:9px;font-size:11px;color:var(--room-text)}.mineral-catalog-grid i{display:block;width:20px;height:20px;clip-path:polygon(30% 0,70% 0,100% 30%,100% 70%,70% 100%,30% 100%,0 70%,0 30%)}.mineral-catalog>a{font-size:10px;color:var(--room-accent)}
/* A specimen-led, open-tray mineral museum. */
.exhibit-venue{min-height:590px;height:min(76vh,780px)}.mineral-exhibit{position:absolute;inset:91px 22px 40px;display:flex;flex-direction:column;gap:14px;color:#ece9dd;overflow:auto;overscroll-behavior:contain;touch-action:pan-y}.mineral-exhibit[hidden]{display:none}.exhibit-order{display:grid;grid-template-columns:clamp(105px,14vw,160px) 1fr;align-items:center;gap:22px;padding:8px 20px 15px;border-bottom:1px solid #c4b28b38}.exhibit-order small,.exhibit-collection>small{font-size:9px;letter-spacing:2px;color:#c9b381}.exhibit-order h2{font:500 clamp(20px,2.5vw,31px)/1.2 Georgia,serif;margin:9px 0 10px}.exhibit-order p{font-size:12px;line-height:1.7;color:#c3ccc6;max-width:390px;margin:0}.exhibit-plinth{position:relative;display:grid;place-items:center;min-height:132px;perspective:700px;background:radial-gradient(ellipse at 50% 74%,#c8c1db1a,transparent 65%)}.exhibit-plinth:after{content:'';position:absolute;bottom:0;width:85%;height:16px;background:linear-gradient(90deg,#273641,#697079,#25353d);border:1px solid #b3bdc13b;border-radius:50%;box-shadow:0 8px 0 #17272e,0 12px 15px #0008}.mineral-specimen{display:block;background-image:url('./assets/tanzania-mineral-specimens-v1.png');background-size:500% 200%;background-position:var(--spec-x) var(--spec-y);background-repeat:no-repeat;aspect-ratio:1;filter:drop-shadow(0 7px 8px #0008);width:100%}.hero-specimen{width:125px;max-width:100%;animation:specimenFloat 5s ease-in-out infinite;position:relative;z-index:1}.exhibit-tray{display:grid;grid-template-columns:repeat(var(--tray-cols),minmax(0,1fr));gap:10px;margin:auto 0}.exhibit-choice{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:90px;padding:5px 7px 10px;background:linear-gradient(135deg,#71838c22,#132831cc);border:1px solid #c6d7d233;border-radius:12px;color:#e6e6db;box-shadow:inset 0 1px #ffffff12,0 5px 14px #0003;cursor:pointer;transition:transform .2s,border-color .2s,background .2s;touch-action:manipulation}.exhibit-choice:hover{transform:translateY(-3px);border-color:#d6bb78;background:#45606177}.exhibit-choice:focus-visible{outline:3px solid #e9cf91;outline-offset:3px}.exhibit-choice:disabled{opacity:.65;cursor:default}.exhibit-choice .mineral-specimen{width:clamp(48px,7vw,79px)}.exhibit-choice>span:last-child{font-size:11px}.exhibit-collection{background:#0c1d24a8;border:1px solid #baa47733;border-radius:10px;padding:12px 14px}.exhibit-collection>div{display:flex;gap:5px;min-height:30px;align-items:center;overflow-x:auto}.exhibit-collection>div>span{width:36px;flex:0 0 36px}.exhibit-collection p{font-size:11px;color:#92a7a7;margin:10px 0 2px}.exhibit-last-answer{font-size:11px;line-height:1.5;margin:0;color:#cbbd92}.exhibit-feedback{padding:22px;background:#18352e9c;border:1px solid #a9cf9e4d;border-radius:12px;margin:auto 0}.exhibit-feedback.wrong{background:#40312566;border-color:#c1a77855}.exhibit-feedback p{font-size:12px;line-height:1.7;color:#c5cec4}.exhibit-feedback button{min-height:44px}.mineral-museum-catalog{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:20px 0}.mineral-museum-catalog article{border:1px solid var(--room-line);border-radius:13px;padding:17px;background:var(--room-card)}.mineral-museum-catalog .mineral-specimen{width:110px;margin:auto}.mineral-museum-catalog h3{font:500 22px Georgia;margin:14px 0 6px}.mineral-museum-catalog small{font-size:9px;color:var(--room-accent)}.mineral-museum-catalog p{font-size:11px!important}.exhibit-lesson{display:flex;gap:12px}.exhibit-lesson button{width:33%;border:1px solid var(--room-line);border-radius:12px;background:var(--room-card);color:var(--room-text);padding:10px;cursor:pointer}.exhibit-lesson .mineral-specimen{max-width:90px;margin:auto}.exhibit-lesson .matched{border-color:#a8c58d;background:#48644844}.football-customise-fields{display:grid;grid-template-columns:1fr 1fr;gap:17px}.football-customise-fields label span{display:block;font-size:12px;color:var(--room-muted);margin-bottom:9px}.football-customise-fields select{background:var(--room-card);color:var(--room-text);border:1px solid var(--room-line);padding:11px;border-radius:9px;width:100%;min-height:44px}.arcade-actions{flex-wrap:wrap;justify-content:flex-end}#mineral-catalog-body a{color:var(--room-accent);font-size:12px}#mineral-catalog-dialog[open]{max-height:85vh}#mineral-catalog-body{overflow-y:auto;max-height:70vh}
@keyframes specimenFloat{0%,100%{transform:translateY(-3px) rotateY(-8deg) rotateZ(-2deg)}50%{transform:translateY(-9px) rotateY(8deg) rotateZ(2deg)}}
@media(max-width:650px){.mineral-exhibit{inset:86px 12px 38px;gap:11px}.exhibit-order{grid-template-columns:90px 1fr;padding:4px 6px 12px;gap:12px}.exhibit-order h2{font-size:22px}.exhibit-order p{font-size:11px}.exhibit-order small{font-size:8px}.exhibit-plinth{min-height:112px}.exhibit-choice{min-height:89px;padding:5px 2px 8px}.exhibit-choice>span:last-child{font-size:10px;overflow-wrap:anywhere}.exhibit-tray{gap:6px}.exhibit-choice .mineral-specimen{width:53px}.exhibit-collection{padding:10px}.exhibit-venue{min-height:620px}.football-customise-fields{grid-template-columns:1fr}.mineral-museum-catalog{gap:9px}.mineral-museum-catalog article{padding:12px}.mineral-museum-catalog .mineral-specimen{width:90px}.exhibit-feedback{padding:16px}}
@media(prefers-reduced-motion:reduce){.hero-specimen{animation:none}.exhibit-choice{transition:none}}body.effects-off .hero-specimen{animation:none}
.mineral-exhibit.no-motion .hero-specimen{animation:none}
.football-customise-fields input{width:100%;min-height:44px;border:1px solid var(--room-line);border-radius:8px;background:var(--room-card);color:var(--room-text);padding:8px}.football-customise-fields input[type=color]{padding:4px}.football-customise-fields{max-height:48vh;overflow-y:auto;padding-right:6px}#football-customise .window-body{overflow-y:auto;max-height:75vh}
.device-handoff{max-width:470px;text-align:center}.device-handoff::backdrop{background:#080f19f5;backdrop-filter:blur(25px)}.device-handoff .window-body{padding:38px}.device-handoff h2{font:500 35px/1.2 Georgia;color:var(--room-text);margin:17px 0}.device-handoff p{font-size:13px;line-height:1.8;color:var(--room-muted)}#device-setup form>button{display:block;width:100%;margin-top:20px;min-height:44px}#device-handoff-ready{margin-top:12px}
/* Finite-ore strategy mine: targets, a gravity board and explicit commitment. */
.mineral-exhibit.mine-stage{display:grid;grid-template-rows:auto minmax(250px,1fr) auto auto;gap:10px;overflow:visible}.mine-objectives{display:flex;justify-content:center;gap:11px}.mine-objectives>div{display:flex;align-items:center;gap:10px;padding:8px 14px;border:1px solid #b9c8c139;border-radius:12px;background:#112831de;min-width:115px}.mine-objectives .mineral-specimen{width:43px;flex-shrink:0}.mine-objectives span{font-size:10px;color:#b8c7c6;display:block;margin-bottom:4px}.mine-objectives strong{font-size:20px;font-weight:500;color:#eee6cf}.mine-objectives b{font-size:12px;color:#e2ca7e}.mine-objectives .complete{border-color:#8eb78e;box-shadow:inset 0 0 17px #7ca77333}.mine-board-wrap{min-height:0;display:flex;align-items:center;justify-content:center;perspective:1400px}.mine-board{display:grid;grid-template-columns:repeat(var(--mine-size),minmax(0,1fr));grid-template-rows:repeat(var(--mine-size),minmax(0,1fr));gap:5px;height:100%;aspect-ratio:1;max-width:100%;padding:9px;background:linear-gradient(135deg,#b3a27a33,#071d25b0);border:1px solid #bdaa775e;border-radius:15px;box-shadow:0 14px 25px #0006,inset 0 1px #e4dab243}.mine-cell{position:relative;min-width:0;min-height:0;border:1px solid #9fb9b42e;border-radius:9px;background:radial-gradient(ellipse at 45% 15%,#8c9ca535,#102633c9);padding:3px;cursor:pointer;touch-action:manipulation;box-shadow:inset 0 1px #ffffff12,0 2px 0 #09171e}.mine-cell .mineral-specimen{width:100%;height:100%;aspect-ratio:auto}.mine-cell.selected{outline:2px solid #e7cb7c;outline-offset:-1px;background:#92744566;box-shadow:0 0 14px #d2b96a44}.mine-cell.empty{background:#06131c55;box-shadow:none;border-color:#7a8d8c0d;visibility:hidden}.mine-cell.rock{background:linear-gradient(145deg,#67726e,#323b3c);box-shadow:inset 2px 1px 4px #c5c7aa1c,inset -3px -4px 9px #080f13;color:#a6a18d}.mine-cell.rock>span{font-size:29px;display:block;transform:rotate(22deg);text-shadow:2px 3px #303a3b}.mine-cell.cracked{outline:2px dashed #dfb27c;outline-offset:-3px}.mine-cell:disabled{cursor:default}.mine-board.preview{border-color:#8fd2dc;box-shadow:0 0 20px #62a9bd22}.mine-actions{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:8px}.mine-actions>span{font-size:11px;color:#cfceb6;line-height:1.5}.mine-actions button{min-height:43px;padding:10px 13px;white-space:nowrap;font-size:11px;border-radius:9px}.mine-actions button:disabled{opacity:.4;cursor:default}.mine-note{font-size:10px;line-height:1.6;color:#b3c4bd;margin:0;min-height:30px}.mine-lesson{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.mine-lesson button{border:1px solid var(--room-line);border-radius:10px;background:var(--room-card);cursor:pointer;min-height:70px;padding:8px}.mine-lesson button.selected{outline:2px solid #d7bb71}.mine-lesson .mineral-specimen{max-width:90px;margin:auto}.mine-cell.settled{animation:mineSettle .42s cubic-bezier(.3,.4,.7,1)}@keyframes mineSettle{from{transform:translate(var(--fall-x),var(--fall-y));opacity:.6}to{transform:translate(0,0);opacity:1}}.no-motion .mine-cell.settled{animation:none}@media(max-width:650px){.mine-objectives{gap:5px}.mine-objectives>div{padding:7px;min-width:0;gap:5px;flex:1}.mine-objectives .mineral-specimen{width:31px}.mine-objectives span{font-size:9px}.mine-objectives strong{font-size:17px}.mine-board{padding:6px;gap:3px;border-radius:11px}.mine-cell{padding:1px;border-radius:6px}.mine-actions{grid-template-columns:1fr 1fr}.mine-actions>span{grid-column:1/-1;font-size:10px}.mine-actions button{font-size:10px;padding:9px 6px}.mineral-exhibit.mine-stage{inset:85px 12px 35px;grid-template-rows:auto minmax(255px,1fr) auto auto;gap:8px}}@media(prefers-reduced-motion:reduce){.mine-cell.settled{animation:none}}

/* Readable workbench against the new working-mine landscape. */
.exhibit-venue .mine-board{background:linear-gradient(135deg,#293c40f0,#0a1a23f5);border-color:#c9b88c99;box-shadow:0 15px 35px #0009,inset 0 1px #eddfbd55}
.exhibit-venue .mine-cell{background:radial-gradient(ellipse at 45% 15%,#68737b85,#142630f5);border-color:#b8c7c13b}
.exhibit-venue .mine-cell.selected{background:#826c36eb;border-color:#e6cb82}
.exhibit-venue .mine-cell.rock{background:linear-gradient(145deg,#6b736c,#323b3c)}
.exhibit-venue .mine-actions>span,.exhibit-venue .mine-note{background:#0b1c23d9;border:1px solid #e3cc9f26;border-radius:8px;padding:8px 11px;color:#e7e0cf;text-shadow:0 1px 2px #000}
.exhibit-venue .mine-note{font-size:10px;min-height:34px}
.exhibit-venue .mine-objectives>div{background:#11242bed;border-color:#d9c69c63;box-shadow:0 4px 12px #0003}

.arcade-power-meter{display:block!important;height:10px;min-height:10px!important;border:1px solid #ffffff25;border-radius:6px;overflow:hidden;background:#080f18;margin-top:9px!important;box-shadow:inset 0 2px 4px #0007}.arcade-power-meter i{display:block;height:100%;width:var(--power,70%);background:linear-gradient(90deg,#88b9ad,#d4c894 68%,#d39171);transition:width .06s linear;border-radius:5px}
/* Penalty controls share the canvas, with the goal remaining visible. */
.penalty-field-controls[hidden]{display:none!important}.penalty-field-controls{position:absolute;z-index:5;right:15px;bottom:43px;width:min(290px,39%);padding:12px;box-sizing:border-box;border:1px solid #d3e7ea6c;border-radius:16px;background:#10232aa8;backdrop-filter:blur(14px);box-shadow:0 12px 30px #0008;color:#fff;touch-action:auto}
.field-techniques{display:grid;grid-template-columns:1fr 1fr;gap:6px}.field-techniques button{min-height:34px;padding:6px;border:1px solid #d8ebe46b;border-radius:8px;background:#e4f3ec24;color:#fff;font-size:10px;cursor:pointer}.field-techniques button[aria-pressed=true]{background:#d8cbffdb;color:#17232d;border-color:#fff;box-shadow:0 0 9px #d9d5ff96}.field-techniques button:disabled,.field-power button:disabled,.field-power input:disabled{opacity:.45;cursor:default}
.field-power{display:grid;gap:5px;margin-top:9px}.field-power label{font-size:11px;display:flex;justify-content:space-between;align-items:center}.field-power output{color:#fff1b8}.field-power input{width:100%;height:18px;accent-color:#d7c7fb;touch-action:auto}.field-power #field-fire{min-height:48px;border:1px solid #fff7;border-radius:10px;background:#c9c1ecdf;color:#15212a;font-size:14px;font-weight:700;cursor:pointer;touch-action:none}.field-power #field-fire small{display:block;font-size:8px;font-weight:500;margin-top:3px}.field-power #field-fire.charging{box-shadow:0 0 20px #fff9,inset 0 0 0 2px #fff}
.penalty-venue .arcade-stage-caption{right:320px}
@media(max-width:550px){.penalty-venue{min-height:540px;height:70dvh}.penalty-field-controls{left:8px;right:8px;bottom:24px;width:auto;padding:8px;border-radius:13px}.field-techniques{display:flex;overflow-x:auto;gap:5px;scrollbar-width:thin}.field-techniques button{flex:0 0 auto;min-height:34px;padding:6px 9px}.field-power{grid-template-columns:1fr auto;align-items:center;gap:2px 9px;margin-top:6px}.field-power label{font-size:10px}.field-power>input{grid-column:1}.field-power #field-fire{grid-column:2;grid-row:1/3;min-height:42px;padding:5px 12px;font-size:11px}.field-power #field-fire small{font-size:7px}.field-power #field-curve-wrap{grid-column:1/-1}.penalty-venue .arcade-stage-caption{bottom:172px;right:12px;left:12px;font-size:7px}}
