.demo-hub-badge,.demo-game-badge{position:fixed;top:12px;left:50%;transform:translateX(-50%);z-index:10;border:1px solid #dbc38b77;border-radius:18px;padding:6px 14px;background:#071e24e8;color:#f2ddb3;font:700 11px/1.2 system-ui;letter-spacing:.14em;pointer-events:none}.vocab-demo-hub .class-picker{top:47px}.vocab-demo-hub .class-duel-actions{width:min(410px,86vw);gap:7px}.demo-intro{color:#d6dfcf;font:14px/1.4 system-ui;text-shadow:0 2px 6px #000;margin:2px 0}.demo-text-button{width:auto!important;height:auto!important;min-height:32px!important;font:15px/1.3 system-ui!important;opacity:1!important;color:#e9d8a9!important}.vocab-demo-hub .la-more{z-index:4}.demo-dialog{width:min(640px,92vw);border:1px solid #d2bb7a88;border-radius:22px;background:#0a2429;color:#e9e5c9;padding:34px;box-shadow:0 20px 100px #000c}.demo-dialog::backdrop,.demo-sheet-dialog::backdrop{background:#000a;backdrop-filter:blur(5px)}.demo-dialog h2{font:700 30px/1.15 Georgia;margin:0 30px 22px 0}.demo-dialog p{line-height:1.6}.demo-dialog .primary{display:inline-flex;text-decoration:none;align-items:center;margin:12px 0;padding:12px 22px;min-height:44px}.demo-dialog-return{margin-left:14px}.demo-dialog-close{position:absolute;right:13px;top:10px;font-size:28px}.demo-preview-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.demo-original-back{margin-bottom:20px}.demo-original-notice{color:#ead39b;font:14px/1.4 system-ui}.vocab-demo-hub #preparation input,.vocab-demo-hub #preparation select{opacity:.65}.demo-sheet-dialog{width:min(900px,96vw);max-height:96vh;border:1px solid #bdaa75;border-radius:14px;background:#123137;color:#efe6c7}.demo-sheet-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.demo-sheet-dialog #demoPaper{color:#15191a;background:#eee;padding:20px;overflow:auto}.demo-sheet-dialog .rp-page{margin:auto}.demo-menu-link,.demo-finish-link{display:block;color:#efddac;text-align:center;margin:10px 0;padding:10px;border:1px solid #dac18b66;border-radius:14px;text-decoration:none;font:15px/1.3 system-ui}.demo-finish-link[hidden]{display:none}.vocab-demo .topbar{z-index:9}.vocab-demo .phase-card{max-height:94vh;overflow:auto}.demo-game-badge{top:8px;left:auto;right:clamp(90px,15vw,220px);transform:none;opacity:.88}.demo-document{background:#09232b;color:#eee4c4;min-height:100vh}.demo-document main{max-width:850px;margin:50px auto;padding:28px}.demo-document a{color:#f7dd94}.demo-document table{width:100%;border-collapse:collapse}.demo-document td,.demo-document th{text-align:left;border-bottom:1px solid #abc4; padding:9px}.demo-document h1{font-family:Georgia,serif}@media(max-width:800px){.vocab-demo-hub .la-more{right:10px;bottom:8px;font-size:12px}.vocab-demo-hub .la-more strong{font-size:13px}.demo-preview-actions{grid-template-columns:1fr}.vocab-demo-hub .class-duel-actions{bottom:60px}}@media(max-height:650px){.vocab-demo-hub .demo-intro{font-size:12px}.vocab-demo-hub .class-duel-actions{gap:2px;bottom:7px}.vocab-demo-hub .la-more{display:none}.vocab-demo-hub .demo-text-button{min-height:27px!important;font-size:13px!important}}@media print{body>*{display:none!important}#printArea{display:block!important}dialog{display:none!important}.rp-page{margin:0!important}}

/* Label the original class-series scene as a locked example, including its 0/3 counter. */
.demo-series-lock{display:block;margin:0 0 7px;color:#e8d4a1;font:600 13px/1.3 system-ui,sans-serif;letter-spacing:.02em}
.vocab-demo-hub .class-pick[aria-current="page"]{display:inline-flex;align-items:center;border:1px solid #e9dfb98a;border-radius:28px;background:#051a28aa;color:#fff0c5;padding:9px 22px;min-height:48px;cursor:default}
.demo-dialog{max-height:calc(100svh - 32px);overflow:auto}
.demo-help{width:min(760px,94vw);line-height:1.5}
.demo-help-steps{padding-left:24px}.demo-help-steps li{margin:0 0 14px}
.demo-help-powers{padding:12px;border:1px solid #c4d0a644;border-radius:10px}.demo-help-powers summary{cursor:pointer;font-weight:600;min-height:32px}
.demo-help-powers dl{margin-bottom:4px}.demo-help-powers dt{font-weight:700;color:#f1d998}.demo-help-powers dd{margin:5px 0 14px}
.demo-help-scope,.demo-pool-notice,.demo-release-note{font:14px/1.5 system-ui,sans-serif;color:#dfd2ae}
.demo-pool-notice{margin:0;padding:8px 24px;border-block:1px solid #c5cb9b33}
.demo-fixed-word{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-bottom:1px solid #a8c4ad22;padding:10px 0;font:15px/1.4 system-ui,sans-serif}
.vocab-demo #teacherMenu .demo-menu-help{min-height:44px;padding:10px;border:1px solid #dac18b66;border-radius:12px;background:#18352e;color:#efddac;font:15px/1.3 system-ui,sans-serif;cursor:pointer}
@media(max-width:800px){.demo-series-lock{font-size:11px;max-width:120px}.vocab-demo-hub .class-pick[aria-current="page"]{min-height:40px;padding:7px 16px}}

.vocab-demo-hub .class-add{position:relative;white-space:nowrap}.demo-class-lock{position:absolute;right:-3px;bottom:-3px;display:grid;place-items:center;width:20px;height:20px;border:1px solid #c7b57388;border-radius:50%;background:#122d30;font:12px/1 system-ui,sans-serif}

/* Keep the actual HUD and short-window actions unobscured. */
.demo-game-badge{left:calc(50% + 95px);right:auto}
@media(max-height:650px){#hub[data-screen="camp"] .la-more{display:none}}
.vocab-edition #demoGameHelpDialog .demo-help-done{font:600 16px/1.35 system-ui,sans-serif;min-height:48px;padding:12px 18px}
.vocab-edition #demoGameHelpDialog .demo-dialog-close{font:400 28px/1 system-ui,sans-serif;min-width:44px;min-height:44px;padding:6px}

.demo-round-meta{font:12px/1.3 system-ui,sans-serif;color:#c5d3bc;margin:0;text-align:center;max-width:400px}.vocab-demo-hub .class-duel-actions{gap:4px}@media(max-height:650px){.demo-round-meta{font-size:10px;line-height:1.2}.vocab-demo-hub .class-duel-actions{gap:1px}.vocab-demo-hub .demo-text-button{min-height:25px!important}}
/* Keep the compact two-world mark below the original progress diamonds. */
@media(max-width:900px){.demo-game-badge{top:22px}}

.demo-recovery{max-width:650px;padding:12px 17px;border:1px solid #d0b78080;border-radius:7px;background:#152d2ce8;color:#eee7cf;text-align:left;margin:6px auto}
.demo-recovery p{font-size:15px;line-height:1.5;margin:0 0 7px}.demo-recovery button{font-size:14px;min-height:44px;padding:9px 10px;text-align:left}.demo-recovery[hidden]{display:none!important}

/* 1.3.0: the polished section tracks end in gate icons and are wider; keep the badge compact and clear of them and of the word timer. */
@media(max-width:1100px){.demo-game-badge{left:calc(50% + 80px);top:8px;padding:4px 10px;font-size:10px;letter-spacing:.06em}}
@media(max-width:900px){.demo-game-badge{top:31px}}
/* 1.4.0: three sections make the tracks wider; below 1140 px the mark sits under them, beside the menu glyphs. */
@media(max-width:1140px){.demo-game-badge{left:calc(50% + 80px);top:31px;padding:4px 10px;font-size:10px;letter-spacing:.06em}}

/* 1.4.0: one fixed sub-team per house, the own-words taster and the finish as in the main game. */
.demo-squads{position:absolute;left:50%;top:106px;transform:translateX(-50%);display:flex;align-items:center;gap:12px;pointer-events:none;z-index:2;white-space:nowrap}
.demo-squad{display:flex;align-items:center;gap:9px;margin:0;padding:5px 14px 5px 6px;border:1px solid #d2bb7a55;border-radius:30px;background:#071d24cc}
.demo-squad[data-team="B"]{flex-direction:row-reverse;padding:5px 6px 5px 14px;text-align:right}
.demo-squad img{width:clamp(34px,5.4vh,52px);height:auto;aspect-ratio:1;object-fit:contain}
.demo-squad strong{display:block;font:700 clamp(13px,1.25vw,18px)/1.2 Georgia,serif;color:#f4e6bd}
.demo-squad small{display:block;font:11px/1.3 system-ui,sans-serif;color:#c5d3bc;letter-spacing:.04em}
.demo-squads-vs{font:700 11px/1 system-ui,sans-serif;letter-spacing:.14em;color:#e8d4a1}
@media(max-width:900px),(max-height:650px){.demo-squad small{display:none}.demo-squads{top:96px;gap:7px}.demo-squad{padding:3px 10px 3px 4px}.demo-squad[data-team="B"]{padding:3px 4px 3px 10px}}
.demo-taster textarea{display:block;width:100%;min-height:190px;padding:12px 14px;border:1px solid #c7b57388;border-radius:12px;background:#04161b;color:#f1ecd6;font:17px/1.5 ui-monospace,Menlo,Consolas,monospace;resize:vertical}
.demo-taster-count{margin:8px 0 0;font:600 14px/1.3 system-ui,sans-serif;color:#c5d3bc}
.demo-taster-count[data-over="true"],.demo-taster-error{color:#ffb9a3}
.demo-taster-error{margin:8px 0 0;font:600 15px/1.4 system-ui,sans-serif}.demo-taster-error[hidden]{display:none}
.demo-taster-link{display:inline-block;margin-left:16px;color:#f7dd94;font:15px/1.3 system-ui,sans-serif}
.demo-finish{position:absolute;z-index:12;left:50%;bottom:92px;transform:translateX(-50%);width:min(560px,34vw);min-width:240px;display:grid;justify-items:center;gap:5px;text-align:center;pointer-events:none}
.demo-finish[hidden]{display:none}
.demo-finish-mark{font:700 12px/1.2 system-ui,sans-serif;letter-spacing:.16em;color:#f2ddb3}
.demo-finish-note{margin:0;font:15px/1.4 system-ui,sans-serif;color:#f1ecd6;text-shadow:0 2px 8px #000c}
.demo-finish-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:2px}
.demo-finish .demo-finish-link,.demo-finish #replayRace{pointer-events:auto;margin:0;padding:7px 16px;min-height:36px;font:15px/1.3 system-ui,sans-serif;white-space:nowrap}
.demo-finish .demo-finish-link{background:#071d24cc}.demo-finish #replayRace[hidden]{display:none}
@media(max-height:600px){.demo-finish{bottom:70px}.demo-finish-note{font-size:13px}}
.demo-game-badge[hidden]{display:none}

/* The painted champion stands left at about 2.5–31 % of the width; the demo note stays in the middle column. */
@media(max-width:1100px){.demo-finish-note{font-size:13px}.demo-finish .demo-finish-link,.demo-finish #replayRace{padding:6px 12px;font-size:13px}}
