@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Uncial+Antiqua&display=swap";:root{font-family:DM Sans,sans-serif;color:#fff;background:#12112f}*{box-sizing:border-box}body{margin:0;min-width:320px;overflow:hidden}button,input{font:inherit}button{border:0;cursor:pointer;color:inherit}.ui-layer{position:fixed;inset:0;z-index:2}.hero,.panel{width:min(1180px,93vw);margin:auto;min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:32px}.hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 50% 80%,#0c7e7d55,transparent 42%)}.hero:before{content:"";position:absolute;z-index:-1;left:50%;bottom:-68px;transform:translate(-50%);width:min(470px,72vw);height:530px;border-radius:235px 235px 0 0;background:radial-gradient(ellipse at 50% 26%,#3e668055 0 8%,transparent 9%),linear-gradient(90deg,#071329e8 0 8%,#10274ada 8% 92%,#071329e8 92%);box-shadow:0 0 0 18px #1f396050,0 0 0 34px #09182fcc,0 14px 45px #0009}.hero>*{position:relative;z-index:1}.eyebrow,.category{color:#e9c66c;text-transform:uppercase;letter-spacing:.17em;font-size:.74rem;font-weight:700}.hero h1{font:clamp(3.6rem,10vw,8rem)/.9 "Uncial Antiqua",serif;margin:.1em}.hero h1 span{color:#e9c66c;display:block}.lede{font-size:clamp(1rem,2vw,1.3rem);max-width:540px;color:#d5e9ed}.primary{background:#e9c66c;color:#181634;border-radius:999px;padding:15px 32px;font-weight:700;box-shadow:0 8px 28px #e9c66c55}.hero nav{display:flex;gap:12px;margin-top:20px}.hero nav button,.panel>button{background:#ffffff17;border:1px solid #ffffff2a;border-radius:999px;padding:10px 18px;margin:8px}.crest{position:absolute!important;right:18px;bottom:14px;width:48px;height:48px;border:1px solid #e9c66c77;border-radius:50%;background:#101a3bbb;color:#e9c66c;font-size:1.2rem;box-shadow:0 4px 16px #0008}.crest:focus-visible{outline:3px solid #f7e8b8;outline-offset:3px}.panel{min-height:100vh;background:#0d103a99}.panel h2{font:clamp(2rem,4vw,3.7rem)/1.1 "Uncial Antiqua",serif;margin:.1em 0 20px;color:#f7e8b8}.panel p{max-width:720px;line-height:1.6}.story{max-width:800px}.role-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;width:100%;margin:20px 0}.role-card{background:linear-gradient(160deg,#283168,#132553);border:1px solid #ffffff32;border-radius:20px;padding:18px;text-align:left;min-height:270px;transition:.2s}.role-card:hover{transform:translateY(-5px);border-color:#e9c66c}.role-card strong,.role-card small{display:block}.role-card strong{margin:12px 0 8px;font-size:1rem}.role-card small{color:#b5dce0}.portrait{height:150px;display:grid;place-items:center;border-radius:16px;font-size:4rem;background:radial-gradient(circle at 50% 30%,#f0c96d,#4d2e6c 45%,#15204c 75%)}.p1{background:radial-gradient(circle at 50% 30%,#94e5d8,#38577b 46%,#15204c 75%)}.p2{background:radial-gradient(circle at 50% 30%,#ef9d82,#60446e 46%,#15204c 75%)}.p3{background:radial-gradient(circle at 50% 30%,#c1b5f5,#2a5a76 46%,#15204c 75%)}.hud{position:absolute;z-index:3;inset:0 0 auto;display:grid;grid-template-columns:1fr auto 1fr auto;align-items:center;gap:18px;padding:13px clamp(16px,4vw,60px);background:#101334e8;border-bottom:1px solid #e9c66c66;color:#fff}.hud b{font-size:clamp(1.1rem,2.5vw,1.8rem);color:#f7e8b8}.hud span:last-of-type{text-align:right}.hud button{background:#ffffff15;border-radius:50%;width:32px;height:32px}.game-ui{height:100vh;padding-top:70px;display:flex;flex-direction:column;justify-content:space-between}.question-wrap{align-self:center;width:min(1000px,90vw);background:#f3dfaa;color:#22203c;border:8px solid #7b5133;border-radius:18px;box-shadow:0 12px 35px #0008;padding:10px 24px;max-height:34vh}.question-wrap .category{text-align:center;color:#664229}.question-scroll{max-height:20vh;overflow:auto;padding:4px 10px 14px;font-weight:700;line-height:1.42;text-align:left}.doors{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;width:min(1400px,96vw);margin:0 auto 14px}.door{position:relative;min-height:220px;background:transparent;padding:0;display:grid;place-items:end center;filter:drop-shadow(0 8px 10px #0008)}.door img{width:100%;height:100%;object-fit:contain;position:absolute;inset:0}.rune{position:absolute;top:23%;font-size:clamp(1.5rem,4vw,3.5rem);color:#f4cf6d;text-shadow:0 0 12px #f4cf6d}.plaque{position:relative;z-index:1;width:83%;min-height:57px;margin-bottom:16%;padding:7px 9px;border-radius:8px;background:#e9d9ad;color:#28203e;border:2px solid #9a6b38;font-size:clamp(.67rem,1.25vw,.94rem);line-height:1.18;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.door.expanded{z-index:5;transform:scale(1.13)}.door.expanded .plaque{-webkit-line-clamp:unset;overflow:visible}.door.expanded .rune{animation:pulse .5s infinite alternate}@keyframes pulse{to{transform:scale(1.18);text-shadow:0 0 24px #ffe9a5}}.pause{display:none;position:absolute;right:18px;top:65px;z-index:9;background:#18224df2;border:1px solid #e9c66c;border-radius:16px;padding:16px;min-width:250px;text-align:left}.pause.show{display:grid;gap:10px}.pause button{padding:9px;background:#ffffff18;border-radius:8px}.pause label{font-size:.88rem}.tabs{display:flex;gap:5px;max-width:100%;overflow:auto;margin-bottom:16px}.tabs button{white-space:nowrap;background:#ffffff13;border-radius:999px;padding:8px 12px}.tabs button.active{background:#e9c66c;color:#171638}.leaderboard ol{width:min(620px,92vw);min-height:150px;padding:0;list-style-position:inside;text-align:left}.leaderboard li{display:flex;justify-content:space-between;padding:10px;border-bottom:1px solid #ffffff1b}.admin input[type=file]{margin:20px}.victory .chest{font-size:7rem;color:#e9c66c;text-shadow:0 0 42px #f9d871}.victory input{display:block;margin:10px auto;padding:12px;border-radius:8px;border:0}.large{font-size:118%}.contrast{filter:contrast(1.25)}.reduce *{transition:none!important;animation:none!important}@media(max-width:720px),(orientation:portrait){.role-grid{grid-template-columns:repeat(2,1fr)}.game-ui:before{content:"Rotate to landscape for the best dungeon view";position:absolute;z-index:20;inset:0;display:grid;place-items:center;text-align:center;padding:40px;background:#12112fee}.doors{gap:2px}.door{min-height:155px}.question-wrap{max-height:36vh}.plaque{font-size:.62rem}.hud{font-size:.72rem;gap:7px;padding:9px}.hud b{font-size:1rem}}:root .victory .chest{width:min(330px,55vw);max-height:32vh;object-fit:contain;filter:drop-shadow(0 0 32px #f9d87188);font-size:initial;color:initial;text-shadow:none}:root .portrait img{height:100%;width:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 8px 8px #0007)}:root .portrait{overflow:hidden}:root .portrait{position:relative}:root .portrait img{position:absolute;inset:0;height:100%;width:100%;object-fit:contain;object-position:center bottom}.setting-list{display:grid;gap:14px;text-align:left;background:#ffffff12;border:1px solid #ffffff2a;padding:22px;border-radius:18px}.setting-list label{font-size:1.05rem}.admin-pin form{display:grid;gap:12px;width:min(360px,90vw);margin-top:10px}.admin-pin label{text-align:left;font-weight:700}.admin-pin input{padding:14px;border:2px solid #e9c66c;border-radius:10px;font-size:1.25rem;letter-spacing:.25em;text-align:center;background:#fff;color:#171638}.admin-pin .pin-error{min-height:1.5em;margin:0;color:#ffd68a;font-weight:700}.admin-pin button{justify-self:center}.cloud-status{max-width:36rem;margin:-8px auto 12px;color:#ffe09a;font-weight:700}.game-ui{display:grid;grid-template-rows:25vh 1fr;padding-top:65px;position:relative;overflow:hidden}.game-ui.biome-1{background:radial-gradient(ellipse at 50% 90%,#095a5c88,transparent 46%),linear-gradient(#0e173b,#092b43)}.game-ui.biome-2{background:radial-gradient(ellipse at 50% 95%,#5a385b77,transparent 52%),linear-gradient(#201238,#0b2445)}.game-ui.biome-3{background:radial-gradient(ellipse at 50% 88%,#71502266,transparent 50%),linear-gradient(#25182d,#3a2815)}.game-ui.biome-4{background:radial-gradient(ellipse at 50% 90%,#2d648070,transparent 55%),linear-gradient(#082d4a,#061d35)}.game-ui.biome-5{background:radial-gradient(ellipse at 50% 88%,#7e662f88,transparent 48%),linear-gradient(#2d1741,#12233c)}.hud{z-index:8}.lives{font-size:clamp(1.15rem,2.2vw,1.55rem);font-weight:700}.lives span{font-size:1.7em;color:#ef4e5e;filter:drop-shadow(0 0 6px #ef4e5e88)}.question-wrap{width:min(1100px,90vw);height:25vh;min-height:190px;max-height:25vh;margin:6px auto 0;align-self:start;padding:14px 28px}.question-scroll{max-height:none;height:calc(100% - 38px);padding:6px 12px 16px;font-size:clamp(1rem,1.7vw,1.42rem);line-height:1.42}.doors{width:min(1350px,92vw);align-self:center;margin:0 auto}.door{min-height:clamp(250px,38vh,390px)}.plaque{min-height:68px;padding:10px;font-size:clamp(.78rem,1.35vw,1.08rem)}.player-portrait{position:absolute;z-index:4;right:4px;bottom:0;width:clamp(92px,11vw,150px);height:clamp(130px,20vh,210px);margin:0;pointer-events:none;transition:transform .25s ease,filter .25s ease}.player-portrait img{width:100%;height:100%;object-fit:contain;object-position:right bottom;filter:drop-shadow(0 5px 10px #0009)}.player-portrait.correct{transform:translateY(-14px) scale(1.08);filter:brightness(1.18) saturate(1.25)}.player-portrait.wrong{transform:translate(7px) rotate(3deg);filter:sepia(.55) saturate(1.8) hue-rotate(310deg)}.pause{z-index:10}.pause hr,.pause label{display:none}.game-ui.biome-1,.game-ui.biome-2,.game-ui.biome-3,.game-ui.biome-4,.game-ui.biome-5{background-size:cover;background-position:center;background-blend-mode:multiply}.game-ui.biome-1{background-image:linear-gradient(#07142a99,#07142a88),url(/assets/biome-1.png)}.game-ui.biome-2{background-image:linear-gradient(#160b3299,#10072588),url(/assets/biome-2.png)}.game-ui.biome-3{background-image:linear-gradient(#24112088,#2c160c88),url(/assets/biome-3.png)}.game-ui.biome-4{background-image:linear-gradient(#071a3599,#03122388),url(/assets/biome-4.png)}.game-ui.biome-5{background-image:linear-gradient(#22103999,#130b2788),url(/assets/biome-5.png)}.question-wrap .category{font-size:clamp(1rem,1.55vw,1.28rem);margin:0 0 9px}.plaque{height:118px;min-height:118px;margin-bottom:7%;padding:11px;display:block;overflow:auto;-webkit-line-clamp:unset;font-size:clamp(.84rem,1.4vw,1.1rem);line-height:1.25}
