:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#f8f2ff;background:#110c24;font-synthesis:none;--gold:#ffe29a;--muted:#b2a2ce;--line:#70549266;--green:#9bef57}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 0%,#4c2464 0,transparent 60%),radial-gradient(ellipse at 20% 65%,#2c1958,transparent 65%);min-height:100dvh}button,a,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible{outline:3px solid #b7ff72;outline-offset:4px}button{transition:filter .15s,transform .15s}button:hover:enabled{filter:brightness(1.13)}button:active:enabled{transform:translateY(2px)}[hidden]{display:none!important}.sky{position:fixed;inset:0;pointer-events:none;background-image:radial-gradient(circle,#e0bcff66 1px,transparent 1.5px),radial-gradient(circle,#fcd69455 1px,transparent 1.5px);background-position:25px 25px,70px 85px;background-size:151px 143px,223px 251px;opacity:.5}.shell{max-width:1220px;margin:auto;padding:0 32px;position:relative}.topbar{height:92px;display:flex;align-items:center;border-bottom:1px solid var(--line);gap:16px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:#fff0b8;font-size:26px;font-weight:950;font-style:italic;letter-spacing:-.8px;line-height:1}.brand small{display:block;font-size:9px;letter-spacing:5px;color:#b9a5d2;font-weight:600;margin-top:8px;font-style:normal}.brandmark{position:relative;display:grid;place-items:center;width:45px;height:45px;border:2px solid #e8b76a;border-radius:13px;background:linear-gradient(140deg,#c185ee,#5c2a9a 55%,#281252);box-shadow:inset 0 0 12px #dbb1ff77,0 4px 0 #080511;font-size:38px}.brandmark span{font-size:19px;position:absolute;right:-8px;top:-8px}.wallet{margin-left:auto;display:flex;gap:12px}.resource{display:flex;gap:9px;align-items:center;background:#110c2788;border:1px solid #775489;border-radius:30px;padding:7px 16px 7px 9px;font-size:14px;min-width:95px}.heart{font-size:26px;color:#ff6c9e;text-shadow:0 2px #923161}.coin{color:#6d3b0d;background:linear-gradient(#fff5bc,#e6a831);border:2px solid #ffdc81;border-radius:50%;height:27px;width:27px;font-size:16px;font-weight:900;display:grid;place-items:center;box-shadow:0 2px 0 #996011}.avatar{border:1px solid #9777bb;background:linear-gradient(#654983,#34214f);border-radius:50%;width:40px;height:40px;font-size:24px}.status{display:flex;align-items:center;justify-content:flex-end;gap:8px;height:34px;font-size:9px;letter-spacing:1.3px;color:#ddc587}.status:before{content:'';width:5px;height:5px;border-radius:50%;background:#acee7b}.status span{color:#a491be;letter-spacing:0;border-left:1px solid #75628d;padding-left:8px}.layout{display:grid;grid-template-columns:215px minmax(330px,470px) 230px;gap:40px;justify-content:center;margin-top:17px}.eyebrow{color:#ceb583;letter-spacing:2.2px;font-size:10px;font-weight:800}.left{padding-top:17px}.left h2{font-family:Georgia,serif;font-size:31px;line-height:1.25;font-weight:500;margin:16px 0 12px}.left>p{font-size:12px;line-height:1.7;color:var(--muted)}.chapter-art{height:150px;position:relative;margin-top:15px;display:grid;place-items:center;background:radial-gradient(ellipse,#9457c950,transparent 67%)}.crystal{width:57px;height:73px;background:linear-gradient(130deg,#ecf5ff 0%,#b4a4ff 23%,#8647f4 24%,#482585 50%,#d1b7ff 51%,#8c3bd1 71%,#442171 72%);clip-path:polygon(50% 0,90% 28%,100% 65%,50% 100%,0 65%,10% 28%);filter:drop-shadow(0 12px 8px #000);transform:rotate(13deg)}.huge{width:76px;height:101px}.chapter-art i{position:absolute;right:36px;top:24px;color:var(--gold);font-size:28px}.chapter-art>span{position:absolute;bottom:0;font-size:9px;letter-spacing:3px;color:#b6a1c9}.side-nav{display:grid;gap:5px;margin-top:28px}.side-nav button{background:none;border:1px solid transparent;border-radius:10px;text-align:left;padding:13px 17px;font-size:13px;color:#b7a5cd}.side-nav button.chosen{background:linear-gradient(90deg,#78409866,#59377711);border-color:#a070c066;color:#ffe2a2}.side-note{font-size:8px;color:#b096bf;letter-spacing:1.5px;margin:40px 15px}.side-note small{font-size:10px;display:block;letter-spacing:0;margin-top:10px;color:#89739e}h1{font-family:Georgia,serif;font-weight:500;font-size:38px;color:#fff1cd;margin:8px 0 17px;letter-spacing:-1px}.game-title{display:flex;justify-content:space-between;align-items:center}.game-title h1{font-size:43px;margin:6px 0 14px;text-shadow:0 3px 0 #532c52}.game-title h1 span{color:#e8bd74;font-size:23px;margin-left:8px}.round{border:1px solid #85609577;border-radius:50%;background:#55316444;width:34px;height:34px;font-size:16px}.level-line{display:flex;align-items:center;gap:14px;padding-bottom:15px;font-size:10px;letter-spacing:1.3px;color:#dec4f2}.level-line>span:first-child{background:#734a9355;border:1px solid #a177bb77;padding:6px 10px;border-radius:5px;font-weight:800}#starLine{color:#f5cb68;letter-spacing:4px;font-size:17px}.level-line button{margin-left:auto;border:0;background:none;color:#bca2d2;font-size:10px;letter-spacing:0}.metrics{display:grid;grid-template-columns:1fr 1.4fr 1fr;padding:12px 0;background:linear-gradient(135deg,#55316d,#281c44);border:1px solid #9470a6;border-radius:12px;box-shadow:inset 0 1px #e9d1ff22,0 5px 0 #0d081c88;text-align:center}.metrics>div+div{border-left:1px solid #ac8fc533}.metrics small{font-size:9px;letter-spacing:1.3px;color:#c6add6;display:block}.metrics strong{font-size:30px;display:block;line-height:1.2;margin-top:5px;color:#ffe1a0}.metrics .scorebox strong{color:#fff}.targetbox{padding:15px 4px 12px}.targethead{display:flex;justify-content:space-between;font-size:11px;color:#e4cced;margin-bottom:8px}.targethead span:first-child{color:#f6dfae}.track{height:8px;border-radius:10px;background:#100b23;border:1px solid #6d497c;overflow:hidden}.track>div{height:100%;background:linear-gradient(90deg,#e5a548,#fff0ac);border-radius:10px;transition:width .4s}.objectives{display:flex;gap:12px;font-size:10px;color:#cebcdf;margin-top:9px;min-height:13px}.objectives .done{color:#aeed8a}.board-frame{position:relative;border:2px solid #e7b873;background:linear-gradient(135deg,#bf8b48,#66429a 13%,#35224d 85%,#d2a060);padding:12px;border-radius:15px;box-shadow:inset 0 0 0 3px #2c163d,0 5px 0 #855c3c,0 9px 0 #140b25,0 16px 35px #08031288}.corner{position:absolute;color:#ffd791;font-size:12px;z-index:1}.tl{top:1px;left:1px}.tr{top:1px;right:1px}.bl{bottom:1px;left:1px}.br{bottom:1px;right:1px}.board{aspect-ratio:1;display:grid;grid-template-columns:repeat(7,1fr);gap:4px;padding:5px;border:1px solid #aa78c177;border-radius:7px;background:#130e2d;touch-action:none;user-select:none}.cell{padding:2px;border-radius:7px;border:1px solid #74519855;background:linear-gradient(145deg,#392454,#24183e);display:grid;place-items:center;position:relative;min-width:0;aspect-ratio:1}.cell:nth-child(2n){background:linear-gradient(145deg,#32204c,#1d1434)}.cell svg{width:89%;height:89%;pointer-events:none;filter:drop-shadow(0 3px 1px #0c042777);transition:transform .2s}.cell.selected{background:#9f7b3b88;outline:2px solid #ffdc82;outline-offset:-1px}.cell.selected svg{transform:scale(1.1)}.cell.hinted{animation:hint 1s 3}.cell.ice:after{content:'';position:absolute;inset:0;border:2px solid #b0e7fa88;box-shadow:inset 0 0 10px #8dddf3aa;border-radius:7px;pointer-events:none;background:linear-gradient(130deg,#d9faff44,transparent 40%,#c8f5ff22)}.cell .special{position:absolute;color:#fff;font-size:20px;text-shadow:0 0 4px #111;pointer-events:none}.cell.clearing svg{animation:burst .23s forwards}.cell:disabled{opacity:1;cursor:default}.cell:focus-visible{outline-offset:-2px}.board-splash{position:absolute;inset:7px;border-radius:9px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(#26123ce8,#1e123bed);backdrop-filter:blur(4px);padding:18px}.splashgem{font-size:70px;color:#ffe6ae;text-shadow:0 0 35px #e4a740}.board-splash h2{font-family:Georgia,serif;color:#ffedc0;font-size:28px;margin:10px 0}.board-splash p{font-size:12px;color:#c7b0db;margin-bottom:24px}.board-splash small{font-size:9px;color:#bba1ce;margin-top:19px}.primary{border:1px solid #d1ff88;border-radius:11px;background:linear-gradient(#c0f57d,#77c936);color:#254118;font-weight:850;padding:15px 22px;box-shadow:inset 0 1px #f7ffe0,0 4px 0 #346525,0 7px 12px #0003;font-size:13px;min-height:45px}.primary span{margin-left:20px;font-size:12px}.secondary{border:1px solid #a580c6;border-radius:10px;background:linear-gradient(#624080,#402557);padding:12px 18px;color:#eedcfb;font-weight:700;font-size:12px}.boosters{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:25px 20px 0}.boosters button{position:relative;background:linear-gradient(#4c2b63,#2c1d44);border:1px solid #9f75af77;border-radius:12px;padding:8px 4px 9px;box-shadow:0 4px 0 #160c28}.boosters button>span{font-size:25px;color:#f3d5a0;display:block;line-height:1.2;text-shadow:0 2px 4px #000}.boosters b{display:block;font-size:11px;margin-top:4px;color:#e4ceee}.boosters small{font-size:10px;display:block;margin-top:4px;color:#f9d783}.boosters i{font-style:normal;font-weight:900;color:#7b4b14;background:#f7ce72;border-radius:50%;font-size:8px;padding:0 3px}.boosters button.active{outline:2px solid #ffdb75}.board-note{text-align:center;font-size:10px;color:#a68cb9;margin:19px 0}.right{padding-top:14px}.eventcard{position:relative;border:1px solid #c0916566;border-radius:15px;background:radial-gradient(ellipse at 50% 20%,#a56b4633,transparent 60%),linear-gradient(135deg,#5d344f,#312042);text-align:center;padding:20px 17px;overflow:hidden}.eventcard h2{font-family:Georgia,serif;color:#ffe8b1;font-size:27px;line-height:1.1;margin:5px 0 13px;font-weight:500}.eventcard p{font-size:11px;color:#cfb6d1;line-height:1.7}.gift-art{font-size:74px;position:relative;height:105px;color:#ffdb92;text-shadow:0 4px 0 #99643f,0 8px 12px #0008;line-height:1.5}.gift-art span{font-size:28px;position:absolute;right:22px;top:7px}.gold{border:1px solid #ffe6af;background:linear-gradient(#ffe5a4,#d5a44e);color:#51310d;font-size:11px;font-weight:900;border-radius:9px;padding:13px;width:100%;box-shadow:0 3px 0 #85612f;margin-top:7px}.eventcard>small{display:block;font-size:10px;color:#dbbb8c;margin-top:15px}.mission-teaser{padding:25px 18px 22px;border-bottom:1px solid var(--line)}.mission-teaser>span{font-size:9px;letter-spacing:1.2px;color:#d6bc8f}.mission-teaser h3{font-family:Georgia,serif;font-size:24px;font-weight:500;line-height:1.2;margin:13px 0;color:#ecd8fc}.mission-teaser p{color:var(--muted);font-size:11px;line-height:1.7}.mission-teaser button{background:none;border:0;padding:7px 0;color:#e5bf75;font-size:11px}.save-card{display:flex;flex-wrap:wrap;gap:11px;padding:22px 9px;font-size:11px}.save-card>span{font-size:24px;color:#a586c1}.save-card b{font-size:11px}.save-card p{font-size:10px;color:var(--muted);max-width:165px;line-height:1.5}.save-card button{border:0;background:none;font-size:11px;color:#d7b279;margin-left:36px;padding:0}footer{display:flex;align-items:center;gap:18px;border-top:1px solid var(--line);margin-top:27px;padding:20px 0;font-size:9px;letter-spacing:1px;color:#927ca3}footer span{margin-left:auto;font-size:9px;letter-spacing:0}footer button{background:none;border:0;color:inherit;font-size:10px}.bottomnav{display:none}.muted{font-size:12px;line-height:1.7;color:var(--muted)}.map-banner{padding:20px;background:linear-gradient(130deg,#683d80,#271b42);border:1px solid #9f6db577;border-radius:15px;display:flex;align-items:center;gap:25px;margin:20px 0}.map-banner h3{font-family:Georgia,serif;font-weight:500;font-size:22px;margin:0 0 8px}.map-banner span{color:#f3cf87;font-size:12px}.mapgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:15px 12px;margin:28px 0}.level-node{aspect-ratio:1;border-radius:50% 50% 45% 45%;border:1px solid #ba93cf;background:linear-gradient(#7952a0,#3a2259);box-shadow:0 4px 0 #231334;color:#f6e6ff;font-size:21px;font-weight:800;position:relative}.level-node small{font-size:9px;display:block;color:#f7d18b;letter-spacing:1px}.level-node.current{background:linear-gradient(#ffeba8,#c59142);color:#4c2b12;border-color:#ffe9ab;box-shadow:0 4px 0 #6a4225,0 0 20px #e8b46933}.level-node:disabled{background:#251a37;border:1px solid #63506e;opacity:.6}.reward-hero{background:linear-gradient(130deg,#614070,#2d1d44);border:1px solid #b38c5a77;padding:24px 18px;text-align:center;border-radius:16px}.reward-hero>span{font-size:55px;color:#ffdf9f}.reward-hero h2{font-family:Georgia,serif;font-size:26px;font-weight:500;color:#ffe5af;margin:10px}.reward-hero p{font-size:11px;color:#cbb7d7}.week{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin:25px 0}.week>div{background:#160f2c77;border:1px solid #9e76b444;border-radius:7px;padding:8px 1px;color:#b59fc5;font-size:8px}.week b{display:block;margin-top:7px;color:#f3cf87;font-size:10px}.week .today{border-color:#f0c875;background:#a3744833}.week .claimed{border-color:#9ddb7455;color:#b9e897}.quest-card{background:#3b254d88;border:1px solid #9873b555;padding:16px;border-radius:12px;margin:10px 0;display:flex;align-items:center;gap:12px}.quest-card .qicon{width:40px;font-size:28px;color:#e9d0a8}.quest-card h4{margin:0 0 5px;font-size:12px}.quest-card p{margin:0;font-size:10px;color:#bca7cc}.quest-card button{margin-left:auto;padding:9px 12px;min-width:72px;font-size:10px}.quest-card progress{width:100%;height:5px;accent-color:#edcf89}.overlay{position:fixed;inset:0;z-index:20;background:#080414cf;backdrop-filter:blur(10px);display:grid;place-items:center;padding:22px}.modal{width:min(100%,430px);max-height:88dvh;overflow:auto;position:relative;background:radial-gradient(ellipse at 50% 0%,#714383,#2c1a42 65%);border:1px solid #d6a76c;border-radius:22px;padding:32px 27px;box-shadow:inset 0 0 0 4px #ffffff05,0 30px 100px #0009}.close{position:absolute;right:13px;top:10px;border:0;background:none;color:#c9a9db;font-size:27px}.modal h2{font-family:Georgia,serif;color:#ffe8b4;font-size:29px;font-weight:500;text-align:center;margin:10px 0 12px}.modal .desc{text-align:center;color:#c8b1d9;line-height:1.7;font-size:12px}.modal .icon{text-align:center;font-size:51px;color:#ffdf8a;line-height:1.2}.modal label{display:block;font-size:11px;color:#d6c1e6;margin:17px 0 8px}.input-row{display:flex;gap:8px}.input-row span{padding:13px;background:#211432;border:1px solid #806191;border-radius:10px;font-size:14px}input[type=tel],input[type=text]{width:100%;min-width:0;background:#190f2d;border:1px solid #8e679f;border-radius:10px;color:#fff;padding:13px;font-size:16px;outline:none}input:focus{border-color:#f3d18c}.input-row button{white-space:nowrap;padding:10px;font-size:10px;min-width:100px}.consent{display:flex!important;gap:9px;line-height:1.6;align-items:flex-start}.consent input{accent-color:#a6de70;margin-top:4px}.textlink{border:0;padding:0;background:none;font-size:inherit;color:#f2cf8c;text-decoration:underline}.modal .primary,.modal .secondary.wide{width:100%;margin-top:15px}.error{min-height:18px;color:#ffafc5;font-size:11px;margin:10px 0}.plain{width:100%;border:0;background:none;color:#d4b4df;font-size:11px;margin-top:20px}.guide-row{display:flex;align-items:center;gap:15px;font-size:12px;padding:13px 0;border-bottom:1px solid #ab87bf33;line-height:1.6;color:#cfbbdf}.guide-row span{font-size:27px;width:35px;flex-shrink:0;color:#ffda94}.settings-row{display:flex;align-items:center;justify-content:space-between;margin:18px 0;font-size:13px;color:#d6bfe8}.toggle{border:1px solid #9c76ac;border-radius:30px;background:#281a3c;padding:7px 13px;font-size:11px}.toggle.on{background:#5d903a;color:#e5ffc9;border-color:#b9e18e}.resultstars{text-align:center;color:#ffe199;font-size:39px;letter-spacing:10px;margin:15px 0;text-shadow:0 3px #9b622e}.resultstats{display:flex;justify-content:space-around;text-align:center;padding:16px;background:#1e102d88;border-radius:10px;margin:18px 0}.resultstats small{font-size:9px;color:#bda2cc;display:block}.resultstats b{font-size:24px;display:block;color:#ffdf9f;margin-top:6px}.legal{font-size:12px;line-height:1.8;color:#d1bddf}.toolmode{font-size:11px;text-align:center;color:#ffe0a0;margin-top:17px}.toolmode button{border:0;background:none;color:#b5dfff;text-decoration:underline;font-size:11px}.resume{display:block;margin:15px auto}#comboFloat{position:absolute;top:37%;left:0;right:0;text-align:center;font-size:34px;font-weight:900;color:#fff0a5;pointer-events:none;text-shadow:0 3px #823998,0 0 22px #c67ad6;opacity:0}#comboFloat.show{animation:combo 1.4s forwards}#toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:#201130f5;border:1px solid #b895c2;border-radius:13px;box-shadow:0 6px 30px #0007;max-width:min(90%,460px);padding:13px 19px;font-size:12px;z-index:30;text-align:center;line-height:1.6}body.busy .boosters{pointer-events:none}@keyframes burst{to{transform:scale(.2) rotate(40deg);opacity:0}}@keyframes hint{50%{outline:2px solid #f7e0a3;box-shadow:0 0 17px #fae09266}}@keyframes combo{0%{opacity:0;transform:scale(.5)}20%,60%{opacity:1;transform:scale(1)}100%{opacity:0;transform:translateY(-35px)}}
@media(min-width:1400px){.shell{padding-top:10px}.layout{gap:55px}}@media(max-width:1050px){.shell{padding:0 22px}.layout{grid-template-columns:180px minmax(330px,450px);gap:34px}.right{display:none}.brand{font-size:24px}.left h2{font-size:28px}}@media(max-width:720px){.desktop{display:none!important}.shell{padding:0 16px 100px;max-width:510px}.topbar{height:74px;gap:9px}.brand{font-size:20px;gap:9px;letter-spacing:-.5px}.brand small{font-size:7px;letter-spacing:3px;margin-top:6px}.brandmark{width:34px;height:36px;font-size:28px;border-radius:10px}.brandmark span{font-size:15px}.wallet{gap:6px}.resource{font-size:12px;padding:5px 10px 5px 6px;gap:6px;min-width:65px}.heart{font-size:20px}.coin{width:23px;height:23px;font-size:12px}.avatar{width:32px;height:32px;font-size:19px;flex-shrink:0}.status{height:29px;font-size:8px;letter-spacing:.7px}.layout{display:block;margin-top:13px}.game-title h1{font-size:36px;margin:4px 0 14px}.eyebrow{font-size:9px}.round{width:31px;height:31px}.level-line{padding-bottom:12px}.metrics{padding:10px 0}.metrics small{font-size:8px}.metrics strong{font-size:27px}.targetbox{padding-top:13px}.board-frame{padding:9px}.board{gap:3px;padding:4px}.cell{border-radius:6px;padding:1px}.boosters{margin:22px 18px 0;gap:12px}.boosters button{padding:7px 4px}.boosters button>span{font-size:23px}.board-note{font-size:9px;margin-top:17px}.bottomnav{display:flex;position:fixed;bottom:0;left:0;right:0;justify-content:space-around;padding:10px 10px calc(10px + env(safe-area-inset-bottom));border-top:1px solid #ad7fc755;background:#1b102bed;backdrop-filter:blur(15px);z-index:10}.bottomnav button{background:none;border:0;color:#a28ab8;width:70px;font-size:24px;line-height:1.1}.bottomnav small{display:block;font-size:9px;margin-top:6px;letter-spacing:.3px}.bottomnav .chosen{color:#ffde99}.mapgrid{gap:20px 12px}.map-banner{margin-top:22px}#toast{bottom:95px}.modal{padding:31px 21px}.week b{font-size:9px}}
@media(max-width:360px){.shell{padding-left:10px;padding-right:10px}.brand{font-size:17px}.brandmark{display:none}.wallet{gap:5px}.metrics strong{font-size:24px}.boosters{margin-top:19px}.game-title h1{font-size:32px}.cell .special{font-size:15px}.board{gap:2px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}body.reduced *,body.reduced *:before,body.reduced *:after{animation:none!important;transition:none!important}

/* v3: custom transparent cartoon bitmap atlas, 4x4 */
.art{display:inline-block;flex-shrink:0;width:42px;height:42px;background-image:url('assets/casual-icons-v3.png');background-size:400% 400%;background-repeat:no-repeat;vertical-align:middle;pointer-events:none;font-style:normal}
.art-ruby{background-position:0% 0%}.art-sapphire{background-position:33.333333% 0%}.art-amethyst{background-position:66.666667% 0%}.art-emerald{background-position:100% 0%}
.art-star{background-position:0% 33.333333%}.art-amber{background-position:33.333333% 33.333333%}.art-heart{background-position:66.666667% 33.333333%}.art-coin{background-position:100% 33.333333%}
.art-hint{background-position:0% 66.666667%}.art-shuffle{background-position:33.333333% 66.666667%}.art-hammer{background-position:66.666667% 66.666667%}.art-gift{background-position:100% 66.666667%}
.art-crown{background-position:0% 100%}.art-crystal{background-position:33.333333% 100%}.art-map{background-position:66.666667% 100%}.art-settings{background-position:100% 100%}
.cell .art{width:110%;height:110%;position:absolute;left:-5%;top:-5%;filter:drop-shadow(0 3px 1px #10052699);transition:transform .16s}
.cell.selected .art{transform:scale(1.12) rotate(-5deg)}.cell.clearing .art{animation:burst .23s forwards}.cell .special{z-index:2;background:#22123c99;line-height:1;border-radius:6px;padding:1px 3px;font-size:18px;border:1px solid #ffe899bb;bottom:1px;right:1px}
.cell{border-radius:11px;background:linear-gradient(145deg,#51336e,#302047);box-shadow:inset 0 2px 0 #b888dd1c}.cell:nth-child(2n){background:linear-gradient(145deg,#452b61,#281c40)}
.heart,.coin{display:inline-grid;place-items:center;width:28px;height:28px;line-height:1;border:0;background:none;box-shadow:none;text-shadow:none;padding:0}.heart .art,.coin .art{width:35px;height:35px}
.boosters button{border-radius:17px;padding:6px 4px 10px;background:linear-gradient(#6d4289,#3b255a);border-color:#c48cdb88;box-shadow:inset 0 2px 0 #ffffff22,0 4px 0 #211230}.boosters button>span{height:52px;display:grid;place-items:center}.boosters button>span .art{width:61px;height:61px;filter:drop-shadow(0 3px 2px #13072577)}.boosters b{font-weight:800;font-size:12px;margin-top:2px}.boosters i.art{padding:0;border-radius:0}
.icon .art{width:90px;height:90px;filter:drop-shadow(0 6px 3px #15082477)}.icon{line-height:1}.resultstars{display:flex;justify-content:center;gap:5px;letter-spacing:0}.resultstars .art{width:61px;height:61px}.art.unearned{filter:grayscale(1);opacity:.3}
.gift-art{height:128px;display:grid;place-items:center;overflow:visible}.gift-art .art{width:143px;height:143px;filter:drop-shadow(0 9px 5px #16071f77)}.reward-hero>span{display:block;height:106px}.reward-hero>span .art{width:118px;height:118px}.splashgem{height:104px;line-height:1}.splashgem .art{width:115px;height:115px;filter:drop-shadow(0 0 18px #ffd25d66)}
.chapter-crystal{width:140px;height:140px}.chapter-crystal .art{width:140px;height:140px;filter:drop-shadow(0 9px 5px #10041f88)}.chapter-art{height:179px}.map-crystal{width:80px;height:80px}.side-nav button{display:flex;align-items:center;gap:12px;padding:9px 12px;border-radius:14px}.side-nav .art{width:32px;height:32px}.side-nav{gap:6px;margin-top:20px}.qicon .art{width:47px;height:47px;margin-left:-3px}.guide-row>span .art{width:42px;height:42px}.bottomnav .art{width:33px;height:33px}.bottomnav small{margin-top:2px}.avatar{font-size:21px}.board-frame{border-radius:23px;border-width:3px}.board{border-radius:12px}.primary,.gold{border-radius:15px}.metrics{border-radius:17px}.eventcard,.reward-hero,.modal{border-radius:24px}.game-title h1,.left h2,.eventcard h2,.mission-teaser h3,.modal h2,.reward-hero h2,h1{font-family:ui-rounded,"Arial Rounded MT Bold","Trebuchet MS",system-ui,sans-serif;font-weight:850;letter-spacing:-.8px}.game-title h1{font-size:40px}.left h2{font-size:28px}.eventcard h2{font-size:25px}.mission-teaser h3{font-size:22px}
@media(max-width:720px){.boosters button>span{height:47px}.boosters button>span .art{width:57px;height:57px}.cell{border-radius:8px}.heart,.coin{width:24px;height:24px}.heart .art,.coin .art{width:29px;height:29px}.game-title h1{font-size:35px}.boosters b{font-size:11px}.board-frame{border-radius:19px}.board{border-radius:9px}}

/* Per-icon atlas bounds avoid neighboring artwork bleeding into small UI slots. */
.art-ruby{background-size:418.00000000% 418.00000000%;background-position:2.62054507% 2.62054507%;}
.art-sapphire{background-size:418.00000000% 418.00000000%;background-position:34.48637317% 2.51572327%;}
.art-amethyst{background-size:418.00000000% 418.00000000%;background-position:65.93291405% 2.30607966%;}
.art-emerald{background-size:418.00000000% 418.00000000%;background-position:98.00838574% 2.93501048%;}
.art-star{background-size:418.00000000% 418.00000000%;background-position:2.09643606% 33.01886792%;}
.art-amber{background-size:418.00000000% 418.00000000%;background-position:34.06708595% 33.01886792%;}
.art-heart{background-size:418.00000000% 418.00000000%;background-position:65.51362683% 33.01886792%;}
.art-coin{background-size:418.00000000% 418.00000000%;background-position:98.00838574% 33.01886792%;}
.art-hint{background-size:440.00000000% 440.00000000%;background-position:2.27038184% 62.43550052%;}
.art-shuffle{background-size:432.41379310% 432.41379310%;background-position:34.02489627% 62.24066390%;}
.art-hammer{background-size:425.08474576% 425.08474576%;background-position:66.21480709% 62.56517205%;}
.art-gift{background-size:425.08474576% 425.08474576%;background-position:98.01876955% 62.56517205%;}
.art-crown{background-size:411.14754098% 411.14754098%;background-position:1.89673340% 93.57218124%;}
.art-crystal{background-size:411.14754098% 411.14754098%;background-position:34.56269758% 93.99367756%;}
.art-map{background-size:418.00000000% 418.00000000%;background-position:66.03773585% 95.91194969%;}
.art-settings{background-size:411.14754098% 411.14754098%;background-position:97.78714436% 95.04741834%;}
.chapter-art .chapter-crystal .art{position:static;right:auto;top:auto}.chapter-art>i{position:absolute}.cell{overflow:hidden}.boosters .art{background-color:transparent;color:transparent}.gift-art{height:135px}.gift-art .art{width:140px;height:140px}

/* Booster cost badges have their own background shorthand; restore sprite properties. */
.boosters i.art{background-image:url('assets/casual-icons-v3.png');background-repeat:no-repeat;background-size:var(--atlas-size) var(--atlas-size);background-position:var(--atlas-pos);background-color:transparent}
.art-hint{--atlas-size:440%;--atlas-pos:2.27038184% 62.43550052%}.art-shuffle{--atlas-size:432.41379310%;--atlas-pos:34.02489627% 62.24066390%}.art-hammer{--atlas-size:425.08474576%;--atlas-pos:66.21480709% 62.56517205%}

/* Cartoon reward collection: preview -> confirmed server award -> celebration. */
.modal.reward-modal{padding:0 25px 23px;overflow:hidden;border:3px solid #f8d58c;border-radius:30px;background:radial-gradient(ellipse at 50% 23%,#9856ba,#583078 49%,#35204f 95%);box-shadow:inset 0 0 0 4px #a671bd66,0 9px 0 #6a3c34,0 28px 85px #06020fbf;max-height:91dvh;overflow-y:auto}
.reward-modal .close{z-index:5;top:12px;right:13px;width:30px;height:30px;line-height:25px;border:2px solid #f7c978;background:linear-gradient(#aa709d,#693d70);border-radius:50%;color:#ffe8bc;font-size:22px;box-shadow:0 3px 0 #382047}.reward-scene{position:relative;text-align:center;padding-top:22px}.reward-ribbon{position:relative;display:table;margin:0 auto;max-width:85%;background:linear-gradient(#ffeca6,#e5ab50);color:#633614;border:1px solid #fff3bd;border-radius:7px 7px 13px 13px;padding:8px 15px;font-size:10px;font-weight:950;letter-spacing:1.2px;box-shadow:0 4px 0 #986634,0 6px 16px #28103255;z-index:2}.reward-stage{height:187px;position:relative;display:grid;place-items:center;margin-top:5px}.reward-rays{position:absolute;width:235px;height:235px;border-radius:50%;background:repeating-conic-gradient(from 5deg,#ffe7a130 0deg 13deg,transparent 13deg 30deg);mask-image:radial-gradient(circle,#000 20%,transparent 69%);animation:reward-rays 28s linear infinite}.reward-stage>.art.reward-mascot{position:relative;width:181px;height:181px;z-index:1;filter:drop-shadow(0 8px 5px #22103499);animation:reward-float 3s ease-in-out infinite}.reward-platform{position:absolute;width:137px;height:19px;border-radius:50%;bottom:6px;background:radial-gradient(ellipse,#1e102979,transparent 70%)}.reward-spark{position:absolute;color:#ffe299;font-size:26px;text-shadow:0 0 17px #fff0a2;animation:reward-twinkle 2.4s ease-in-out infinite}.s1{top:28px;left:30px}.s2{right:26px;top:67px;font-size:20px;animation-delay:.6s}.s3{left:48px;bottom:23px;font-size:19px;animation-delay:1.1s}.reward-modal h2{font-size:27px;margin:0 0 8px;line-height:1.15;text-shadow:0 3px 0 #6b3a68;position:relative;z-index:1}.reward-modal .desc{margin:0 0 17px;font-size:12px;color:#ecd9fb}.reward-loot{display:flex;align-items:center;gap:10px;text-align:left;padding:12px 15px;border:2px solid #dfb570;border-radius:19px;background:linear-gradient(135deg,#211033bb,#51296099);box-shadow:inset 0 2px 0 #ffeeb222,0 4px 0 #2e173f;position:relative;z-index:1}.reward-loot>.art{width:63px;height:63px}.reward-loot strong{font-size:35px;color:#ffea9b;line-height:1;display:block;font-weight:950;text-shadow:0 3px #9a5c33}.reward-loot div>span{font-size:9px;letter-spacing:1.8px;display:block;margin-top:7px;color:#d6b8dd;font-weight:800}.reward-check{margin-left:auto;font-size:9px;letter-spacing:1px;padding:7px 8px;background:#946d3a77;border:1px solid #efcf7977;border-radius:8px;color:#ffe9a2;font-weight:900}.celebrate .reward-check{background:#80ba4488;border-color:#bfff85;color:#e4ffc2;font-size:22px;padding:1px 8px}.reward-streak{display:flex;justify-content:space-between;gap:4px;margin:18px 2px 2px}.reward-streak>span{width:35px;border-radius:10px;border:1px solid #a883bf77;background:#26153877;padding:6px 1px;color:#ac92c1;font-size:13px;font-weight:800}.reward-streak small{display:block;font-size:6px;letter-spacing:.8px;margin-top:3px}.reward-streak .today{border-color:#ffe295;background:linear-gradient(#f5d283,#cf943f);color:#6a3b19;box-shadow:0 3px 0 #70442b}.reward-streak .complete{color:#b9f187;border-color:#aad17377}.reward-modal .primary.reward-claim{width:100%;margin-top:22px;font-size:15px;letter-spacing:.6px;min-height:55px;border-radius:18px;border:2px solid #daff9f;background:linear-gradient(#c3ff86,#83d43b);box-shadow:inset 0 2px 0 #edffc9,0 5px 0 #3c7c2a,0 8px 15px #14072566;position:relative;z-index:2}.reward-claim span{font-size:19px;margin-left:12px}.reward-footnote{font-size:9px;color:#bd9ccd;margin:18px 0 0}.celebrate .reward-stage{height:200px}.celebrate .reward-mascot{animation:reward-pop .55s ease-out, reward-float 3s .55s ease-in-out infinite}.reward-confetti{position:absolute;inset:0;overflow:hidden;pointer-events:none;border-radius:25px}.reward-confetti i{position:absolute;left:calc(5% + var(--n)*7%);top:-15px;width:7px;height:12px;border-radius:2px;background:#ffdf74;animation:reward-confetti 2.7s calc(var(--n)*.06s) ease-out both}.reward-confetti i:nth-child(3n){background:#e69bff}.reward-confetti i:nth-child(3n+1){background:#9cf7d2}.level-reward-art{text-align:center;padding-top:26px;background:radial-gradient(ellipse,#f0c47633,transparent 65%)}.level-reward-art .art{width:143px;height:143px;filter:drop-shadow(0 7px 4px #16091e99)}.level-result .resultstats{border:1px solid #d6a97088;background:#271237aa;border-radius:17px}.level-result .resultstats .art{width:30px;height:30px}.level-result .resultstars{margin:10px 0}.level-result .resultstars .art{width:52px;height:52px}.level-result h2{font-size:28px;margin-top:8px}.level-result .desc{line-height:1.6}.level-result .primary{width:100%}.level-result .resultstats b{display:flex;align-items:center;justify-content:center}.level-result .secondary{margin-bottom:5px}
@keyframes reward-rays{to{transform:rotate(360deg)}}@keyframes reward-float{50%{transform:translateY(-7px) rotate(-3deg)}}@keyframes reward-twinkle{50%{opacity:.45;transform:scale(.7)}}@keyframes reward-pop{from{transform:scale(.4) rotate(-16deg);opacity:0}65%{transform:scale(1.12) rotate(4deg)}to{transform:scale(1);opacity:1}}@keyframes reward-confetti{0%{opacity:0;transform:translateY(30px) rotate(0deg)}15%{opacity:1}100%{opacity:0;transform:translateY(520px) rotate(380deg)}}
@media(max-width:380px){.modal.reward-modal{padding:0 18px 19px}.reward-stage{height:155px}.reward-stage>.art.reward-mascot{width:155px;height:155px}.reward-modal h2{font-size:24px}.reward-loot{padding:9px 11px}.reward-loot strong{font-size:31px}.reward-loot>.art{width:52px;height:52px}.reward-streak>span{width:31px}.reward-ribbon{font-size:9px}.celebrate .reward-stage{height:170px}}

/* Impact layers are confined to the board; no input is accepted during replay. */
.board-fx,.power-fx{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:6;border-radius:20px;overflow:hidden}.power-fx{z-index:5}.board-fx{contain:strict}#comboFloat{z-index:8;top:31%;font-size:clamp(24px,6vw,36px);-webkit-text-stroke:.5px #7a3e48;text-shadow:0 3px 0 #8c4770,0 6px 0 #3d204e,0 0 20px #ffa76288}.cell.hit-windup .art{transform:scale(1.17);filter:brightness(1.4) drop-shadow(0 0 7px #fff2b9);transition:transform .065s}.cell.shattered .art,.cell.shattered .special{opacity:0!important;transform:scale(.35) rotate(20deg);transition:opacity .09s,transform .12s}.cell.shattered.ice:after{animation:ice-break .16s forwards}.board-falling .cell{overflow:visible}.board{overflow:hidden}.cell.gem-falling .art{animation:gem-fall .245s cubic-bezier(.18,.6,.5,1) both}.board-frame.impact-shake{animation:impact-shake .22s ease-out}.board-frame.combo-shake{animation:combo-shake .3s ease-out}.power-beam{position:absolute;pointer-events:none}.row-beam{left:2%;right:2%;top:var(--y);height:12px;background:linear-gradient(transparent,#fff8b9 35%,#fff 50%,#a8f6ff 65%,transparent);transform:translateY(-50%);box-shadow:0 0 17px #d4a2ff;animation:beam-burst .4s ease-out forwards}.column-beam{top:2%;bottom:2%;left:var(--x);width:12px;background:linear-gradient(90deg,transparent,#fff8b9 35%,#fff 50%,#a8f6ff 65%,transparent);transform:translateX(-50%);box-shadow:0 0 17px #d4a2ff;animation:beam-burst .4s ease-out forwards}.blast-ring{left:var(--x);top:var(--y);width:40px;height:40px;margin:-20px;border-radius:50%;border:7px solid #ffe9aa;box-shadow:0 0 17px #ff9de2,inset 0 0 14px #fff;animation:blast-expand .5s ease-out forwards}.shuffle-spin .cell .art{animation:shuffle-swish .3s ease-in-out}
@keyframes impact-shake{0%,100%{transform:translate(0,0)}20%{transform:translate(-2px,1px)}45%{transform:translate(2px,-1px)}70%{transform:translate(-1px,1px)}}@keyframes combo-shake{0%,100%{transform:translate(0,0) rotate(0)}18%{transform:translate(-4px,2px) rotate(-.35deg)}38%{transform:translate(4px,-2px) rotate(.35deg)}58%{transform:translate(-3px,1px)}78%{transform:translate(2px,-1px)}}@keyframes gem-fall{0%{transform:translateY(var(--drop));opacity:.6}80%{transform:translateY(3px);opacity:1}100%{transform:translateY(0);opacity:1}}@keyframes ice-break{to{opacity:0;transform:scale(1.2) rotate(10deg)}}@keyframes beam-burst{0%{opacity:0}18%{opacity:.9}100%{opacity:0}}@keyframes blast-expand{from{transform:scale(.3);opacity:.9}to{transform:scale(5.5);opacity:0}}@keyframes shuffle-swish{50%{transform:scale(.5) rotate(22deg);opacity:.35}}
@media(prefers-reduced-motion:reduce){.board-fx,.power-fx{display:none!important}}body.reduced .board-fx,body.reduced .power-fx{display:none!important}

:root{--quest-logo:url('assets/gem-quest-logo-v4.png')}.logo-art{display:block;background-image:var(--quest-logo);background-position:center;background-repeat:no-repeat;background-size:contain;aspect-ratio:3/1;flex-shrink:0}.brand .brand-logo{width:220px}.game-title h1.logo-heading{font-size:0;line-height:1;margin:2px 0 12px;letter-spacing:0}.quest-logo{width:300px;max-width:100%;filter:drop-shadow(0 5px 3px #14051f77)}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.brand{flex-shrink:1;min-width:0}.game-title>.round{flex-shrink:0}
@media(max-width:720px){.brand .brand-logo{width:145px}.quest-logo{width:270px}.game-title h1.logo-heading{margin:2px 0 8px}.game-title .eyebrow{font-size:8px;letter-spacing:2px}.topbar{gap:8px}.wallet{gap:5px}.resource{min-width:62px}}
@media(max-width:380px){.brand .brand-logo{width:120px}.quest-logo{width:245px}.resource{min-width:59px;padding-right:7px}.topbar{gap:6px}.avatar{width:29px;height:29px}.shell{padding-left:12px;padding-right:12px}}
/* Game-feel v5: clearer goals, contextual coaching, guided paid hint. */
.play-message{min-height:28px;margin:-3px 0 10px;display:flex;align-items:center;justify-content:center;border:1px solid #9473b13d;background:#6b3d8426;border-radius:10px;padding:6px 10px;color:#d8bfe9;font-size:10px;line-height:1.3;letter-spacing:.15px;transition:background .2s}.hint-message{background:#ad773c33;border-color:#e4bd6a88;color:#ffe5a4}.urgent-message{background:#d8695c33;border-color:#ff997c99;color:#ffc3a0;animation:coach-pop .35s ease-out}.success-message{background:#75b65d33;border-color:#c0e69a77;color:#d6ffb8;animation:coach-pop .35s ease-out}.objectives{gap:7px;min-height:0;margin-top:11px}.objective-chip{display:flex;align-items:center;gap:4px;min-width:0;border:1px solid #b68acb55;border-radius:11px;background:linear-gradient(#63407c77,#321e4c88);padding:6px 8px;flex:1}.objective-chip .art{width:32px;height:32px;flex-shrink:0}.objective-chip>span{min-width:0}.objective-chip small{display:block;font-size:7px;letter-spacing:.8px;color:#bfa3d3;margin-bottom:3px}.objective-chip b{font-size:11px;white-space:nowrap;color:#ffe5b2}.objective-chip.done{border-color:#c6ef8a99;background:linear-gradient(#6b914533,#385c2c33)}.objective-chip.done b{color:#ceffa7}.ice-badge{font-size:25px;font-style:normal;color:#bff1ff;width:31px;text-align:center}.hint-fx{position:absolute;inset:0;z-index:9;pointer-events:none;overflow:hidden;border-radius:20px}.board.hinting .cell:not(.hinted){filter:brightness(.46) saturate(.65);transition:filter .25s}.board.hinting .cell.hinted{z-index:3;border:2px solid #ffe796;box-shadow:inset 0 0 9px #ffe08b55,0 0 14px #ffd76d88;animation:hint-focus 1.1s ease-in-out infinite;outline:0}.board.hinting .cell.hinted .art{filter:drop-shadow(0 0 5px #ffe6ac);transform:scale(1.04)}.hint-arrow{position:absolute;transform:translate(-50%,-50%);font-size:29px;font-weight:900;line-height:30px;color:#633d12;background:linear-gradient(#fff6bb,#ffc751);border:2px solid #fff3cc;border-radius:50%;width:35px;height:35px;text-align:center;box-shadow:0 3px 0 #9c6637,0 0 15px #ffdb6799;z-index:2}.hint-arrow.vertical{font-size:29px}.hint-hand{position:absolute;font-size:35px;line-height:1;z-index:3;filter:drop-shadow(0 3px 2px #25112b);animation:hint-swipe 1.7s .2s ease-in-out infinite;transform:translate(-30%,0)}.hint-caption{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);width:max-content;max-width:95%;background:linear-gradient(#ffe7a5,#e9b24f);border:2px solid #fff0bc;padding:8px 12px;border-radius:12px;color:#684219;font-weight:900;font-size:9px;letter-spacing:.8px;box-shadow:0 3px 0 #6e4230}.boosters button.idle-nudge{border-color:#ffe89c;animation:hint-booster 1.6s ease-in-out infinite}.boosters button.idle-nudge:after{content:'TRY ME';position:absolute;top:-10px;left:50%;transform:translateX(-50%);border:1px solid #fff4ba;background:#ffd677;color:#704318;padding:3px 6px;border-radius:7px;font-size:7px;font-weight:950;white-space:nowrap}
/* Chapter selection and a winding map made of illustrated islands and level medallions. */
.chapter-tabs{display:flex;gap:8px;margin:17px 0}.chapter-tabs button{display:flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:4px;flex:1;background:linear-gradient(#63427d77,#28193f);border:1px solid #9672ae66;border-radius:15px;padding:8px 5px;color:#bc9ece}.chapter-tabs .art{width:31px;height:31px}.chapter-tabs b{font-size:10px}.chapter-tabs small{display:block;width:100%;font-size:8px;color:#ac8dba}.chapter-tabs .active{background:linear-gradient(#916397,#57305e);border:2px solid #f4d184;box-shadow:0 3px 0 #3c2441;color:#ffe5a5}.chapter-tabs .active small{color:#f0d29b}.map-banner{margin:12px 0;padding:14px 20px;gap:17px;border-radius:19px}.map-banner h3{font-family:ui-rounded,"Trebuchet MS",system-ui,sans-serif;font-weight:850;font-size:24px}.map-banner .art{width:64px;height:64px}.journey-summary{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#d4bce3;margin:16px 4px}.journey-summary b{display:flex;align-items:center;gap:4px;color:#f4d792;font-size:11px}.journey-summary .art{width:23px;height:23px}.adventure-map.mapgrid{display:block;position:relative;aspect-ratio:400/980;margin:0;overflow:hidden;border-radius:29px;border:2px solid #ad7cbb66;background:radial-gradient(ellipse at 30% 15%,#86b37b55,transparent 45%),linear-gradient(#353756,#37365c 50%,#403257);box-shadow:inset 0 0 35px #090e2855,0 7px 0 #1c1635}.adventure-map.lagoon{background:radial-gradient(ellipse at 80% 18%,#7a80b75a,transparent 40%),linear-gradient(#27345d,#1c5666 53%,#39335e)}.adventure-map.summit{background:radial-gradient(ellipse at 25% 25%,#cfacb144,transparent 45%),linear-gradient(#55305d,#74516b 57%,#3d2556)}.map-sky{position:absolute;inset:0;background-image:radial-gradient(circle,#fff9 1px,transparent 1.8px);background-size:64px 93px;opacity:.5}.map-sky i{position:absolute;left:65%;top:6%;color:#fff3ba;font-size:25px;font-style:normal}.map-sky i:nth-child(2){left:16%;top:40%;font-size:16px}.map-sky i:nth-child(3){left:70%;top:65%;font-size:20px}.map-land{position:absolute;left:-8%;right:-15%;height:28%;border-radius:48% 46% 37% 44%;transform:rotate(-12deg);background:linear-gradient(150deg,#719276,#4b6965);border-top:9px solid #94bc855e;box-shadow:0 13px 0 #33465366,0 28px 35px #172c3c55}.land-one{top:9%}.land-two{top:39%;left:-14%;right:-7%;transform:rotate(14deg);background:linear-gradient(130deg,#637b77,#465c68)}.land-three{top:70%;transform:rotate(-7deg);background:linear-gradient(130deg,#758877,#4c5e63)}.lagoon .map-land{background:linear-gradient(135deg,#6b8d94,#476586);border-top-color:#b9d8f34d;box-shadow:0 13px 0 #33526988,0 22px 35px #10233d77}.summit .map-land{background:linear-gradient(135deg,#ad8a9b,#716377);border-top-color:#ffe9cc66;box-shadow:0 14px 0 #59425f88,0 22px 35px #21163488}.map-prop{position:absolute;width:92px;height:92px;z-index:1;pointer-events:none;filter:drop-shadow(0 6px 3px #17202c77)}.map-prop .art{width:100%;height:100%}.prop-one{top:12%;right:1%;transform:rotate(8deg)}.prop-two{top:46%;right:3%;width:70px;height:70px;transform:rotate(-7deg)}.prop-three{top:71%;left:0;width:91px;height:91px}.journey-route{position:absolute;inset:0;width:100%;height:100%;z-index:1;overflow:visible}.journey-route path{fill:none;stroke:#25344788;stroke-width:12;stroke-linecap:round;stroke-dasharray:2 19}.journey-route path.route-open{stroke:#ffe09e;filter:drop-shadow(0 3px 0 #9d825766)}.journey-stop{position:absolute;transform:translate(-50%,-50%);z-index:2;width:74px;height:87px;text-align:center}.journey-stop .level-node{width:70px;height:65px;aspect-ratio:auto;border-radius:50%;border:3px solid #c4b5cf;background:linear-gradient(#b998dc,#785da3);box-shadow:inset 0 3px 0 #e9d9ff55,0 6px 0 #494064,0 9px 0 #28344366;display:inline-flex;align-items:center;justify-content:center;position:relative}.node-number{font-size:26px;text-shadow:0 2px 0 #67467a;color:#fff4d4;font-weight:950;line-height:1}.journey-stop .level-node.completed{background:linear-gradient(#cbb1f0,#9371ba);border-color:#f5dc9a}.journey-stop .level-node.current{background:linear-gradient(#d7ff9c,#84cf49);border-color:#f6ffd1;box-shadow:inset 0 3px 0 #f4ffde77,0 6px 0 #426e35,0 9px 0 #253f3c77;animation:current-level 2.8s ease-in-out infinite}.level-node.current .node-number{color:#335227;text-shadow:0 2px #e4ffb399}.journey-stop .level-node:disabled{opacity:1;background:linear-gradient(#786f8b,#4f4966);border-color:#9b8ba8;box-shadow:inset 0 3px #a79ab633,0 5px 0 #38394f}.level-node:disabled .node-number{font-size:21px;text-shadow:none;opacity:.8;transform:translateY(-5px)}.locked-number{position:absolute;bottom:3px;font-size:11px;color:#d2bfdc;font-weight:850}.node-stars{display:flex;align-items:center;justify-content:center;gap:0;margin-top:3px;filter:drop-shadow(0 2px #47313d)}.node-stars .art{width:23px;height:23px;margin:-1px}.node-stars .art.unearned{filter:grayscale(1) brightness(.65);opacity:.6}.current-stop{z-index:3}.you-are-here{position:absolute;top:-28px;left:50%;transform:translateX(-50%);background:linear-gradient(#fff4b7,#f7cd76);border:1px solid #fff0be;color:#715126;border-radius:8px;padding:5px 8px;font-size:8px;font-weight:950;white-space:nowrap;box-shadow:0 3px 0 #8f6d4a}.you-are-here:after{content:'';position:absolute;bottom:-6px;left:calc(50% - 5px);border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid #f7cd76}.chapter-finish{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:7px;width:220px;color:#ffe1a1;font-size:8px;letter-spacing:1px;font-weight:900}.chapter-finish .art{width:45px;height:45px}.journey-continue{display:block;width:100%;margin-top:23px;margin-bottom:16px}.adventure-map .art{pointer-events:none}
/* Level briefing card. */
.modal.level-preview-modal{background:radial-gradient(ellipse at 50% 15%,#9661b2,#4a2a6d 60%,#302046);border:3px solid #f6d596;padding:25px 24px;text-align:center;border-radius:29px;box-shadow:inset 0 0 0 4px #bb8acf33,0 7px 0 #6b493f,0 30px 85px #08030f99}.preview-chapter{font-size:10px;font-weight:950;letter-spacing:1.6px;color:#ffdf9b;text-transform:uppercase}.preview-badge{margin:15px auto 7px;position:relative;width:180px;height:142px;background:radial-gradient(ellipse,#ffdc7138,transparent 65%)}.preview-badge>.art{width:115px;height:115px;position:absolute;left:33px;top:0;filter:drop-shadow(0 5px 3px #180a3277)}.preview-badge>span{position:absolute;bottom:4px;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:8px;border:2px solid #ffe8ad;border-radius:13px;background:linear-gradient(#ffe7a2,#dca74c);color:#664016;padding:8px 17px;font-size:9px;font-weight:900;box-shadow:0 4px 0 #74502d}.preview-badge b{font-size:25px}.level-preview-modal h2{font-size:25px;margin-top:13px}.preview-goals{display:flex;gap:7px;margin:17px 0;text-align:left}.preview-goals .objective-chip{padding:9px 7px}.preview-goals .art{width:32px;height:32px}.preview-goals .objective-chip b{font-size:10px}.preview-moves{display:flex;align-items:center;justify-content:center;gap:6px;color:#d9c4e9;font-size:11px}.preview-moves .art{width:30px;height:30px}.preview-moves b{font-size:19px;color:#ffe9b1}.preview-stars{display:flex;align-items:center;justify-content:center;gap:12px;padding:14px 0;margin:10px 0;border-top:1px solid #a780bb55;border-bottom:1px solid #a780bb55}.preview-stars>span{font-size:8px;font-weight:850;color:#bb9ccd;letter-spacing:.6px}.preview-stars>div{display:flex;flex-direction:column;align-items:center;gap:3px}.preview-stars .art{width:26px;height:26px}.preview-stars b{font-size:9px;color:#eacb96}.preview-prize{display:flex;align-items:center;justify-content:center;gap:5px;color:#d3bce1;font-size:11px}.preview-prize .art{width:33px;height:33px}.preview-prize b{color:#ffe4a0}.level-preview-modal .primary{margin-top:15px}
/* Victory: trophy, sequenced stars, counting score, reward and next adventure. */
.modal.victory-modal{position:relative;text-align:center;padding:23px 24px 20px}.victory-banner{font-size:12px;letter-spacing:2px;font-weight:950;color:#744820;background:linear-gradient(#fff1ba,#eec275);border:2px solid #fff2bf;border-radius:11px;padding:10px 16px;display:table;margin:0 auto 5px;box-shadow:0 4px 0 #9a6846;position:relative;z-index:2}.victory-trophy{height:139px;position:relative;display:grid;place-items:center;margin:13px 0 5px}.victory-trophy>.art{position:relative;width:154px;height:154px;z-index:1;filter:drop-shadow(0 8px 4px #1e0d3688);animation:trophy-arrive .6s ease-out both}.victory-aura{position:absolute;width:205px;height:205px;background:repeating-conic-gradient(#ffeab133 0deg 13deg,transparent 13deg 30deg);mask-image:radial-gradient(circle,#000,transparent 68%);animation:reward-rays 30s linear infinite}.victory-modal h2{font-size:26px;position:relative;z-index:1;margin-top:12px}.victory-modal .desc{margin-bottom:10px;font-size:10px}.victory-stars{display:flex;justify-content:center;align-items:center;gap:4px;height:71px;margin:3px 0 12px}.victory-star{width:59px;height:59px;transform:rotate(-12deg)}.victory-star:nth-child(2){width:74px;height:74px;transform:translateY(-6px)}.victory-star:nth-child(3){transform:rotate(12deg)}.victory-star>.art{width:100%;height:100%}.victory-star.earned{animation:victory-star .55s var(--star-delay) cubic-bezier(.2,.8,.4,1.3) both;filter:drop-shadow(0 4px 0 #9a5b3e)}.victory-stats{display:grid;grid-template-columns:1.25fr 1fr 1fr;border:1px solid #c29bca88;border-radius:16px;background:#27143f88;padding:13px 3px;position:relative;z-index:1}.victory-stats>div+div{border-left:1px solid #b695c133}.victory-stats small{font-size:7px;letter-spacing:.7px;color:#c6a7d8;display:block}.victory-stats b{display:block;font-size:24px;color:#fff0c4;margin-top:6px;line-height:1}.victory-reward{display:flex;align-items:center;gap:10px;border:2px solid #d5ae6e;border-radius:16px;padding:7px 13px;background:linear-gradient(135deg,#6a3e7288,#2d1b45aa);margin:14px 0;text-align:left;position:relative;z-index:1}.victory-reward>.art{width:51px;height:51px}.victory-reward small{font-size:7px;letter-spacing:.6px;color:#dfc2dd;display:block}.victory-reward b{display:block;font-size:29px;color:#ffe89f;line-height:1.15;margin-top:4px}.victory-reward i:not(.art){margin-left:auto;font-size:18px;font-style:normal;color:#c2f792}.next-level-card{display:flex;align-items:center;gap:9px;border:1px solid #bc9cd577;border-radius:13px;background:#b898cb11;padding:8px 12px;text-align:left}.next-level-card>.art{width:43px;height:43px}.next-level-card small{font-size:7px;letter-spacing:1px;color:#c3a4d1}.next-level-card b{display:block;font-size:13px;margin-top:4px;color:#e5ffb9}.victory-modal .primary{font-size:14px;min-height:51px;position:relative;z-index:2;border-radius:17px}.victory-modal .secondary{font-size:10px;margin-top:12px!important;min-height:36px;padding:9px}.victory-modal .reward-footnote{font-size:8px;line-height:1.5;margin-top:14px}.retry-tip{font-size:10px;line-height:1.6;color:#ead3f6;padding:7px 4px}.victory-confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden;border-radius:25px}.victory-confetti>i{position:absolute;left:calc(2% + var(--n)*5.6%);top:-15px;width:7px;height:11px;background:#ffde82;border-radius:2px;animation:reward-confetti 3.3s calc(var(--n)*.04s) ease-out both}.victory-confetti>i:nth-child(3n){background:#9aefee}.victory-confetti>i:nth-child(3n+1){background:#d4a2f5}
@keyframes hint-focus{50%{box-shadow:inset 0 0 13px #ffe4a377,0 0 22px #ffce72cc;border-color:#fff9d9}}@keyframes hint-swipe{0%,15%{transform:translate(-30%,0) scale(1)}55%,70%{transform:translate(calc(-30% + var(--hint-dx)),var(--hint-dy)) scale(.9)}90%,100%{transform:translate(-30%,0) scale(1)}}@keyframes hint-booster{50%{box-shadow:0 4px 0 #211230,0 0 18px #ffd96677;transform:translateY(-2px)}}@keyframes coach-pop{from{transform:scale(.94)}to{transform:scale(1)}}@keyframes current-level{50%{transform:translateY(-4px);box-shadow:inset 0 3px 0 #f4ffde77,0 10px 0 #426e35,0 14px 16px #253f3c55}}@keyframes trophy-arrive{from{transform:scale(.4) rotate(-12deg);opacity:0}70%{transform:scale(1.07) rotate(3deg)}to{transform:scale(1);opacity:1}}@keyframes victory-star{0%{opacity:0;scale:.2;translate:0 -30px;rotate:-20deg}65%{opacity:1;scale:1.18;translate:0 0;rotate:5deg}100%{opacity:1;scale:1;translate:0 0;rotate:0deg}}
@media(max-width:720px){.play-message{font-size:9px;margin-bottom:9px;padding:6px;min-height:26px}.objective-chip{padding:5px 6px;border-radius:10px;gap:3px}.objective-chip .art{width:28px;height:28px}.objective-chip b{font-size:10px}.objective-chip small{font-size:6px}.hint-hand{font-size:30px}.hint-caption{font-size:8px;padding:7px 10px;bottom:12px}.chapter-tabs{gap:7px}.map-banner h3{font-size:22px}.journey-stop{width:66px;height:78px}.journey-stop .level-node{width:62px;height:59px}.node-number{font-size:24px}.node-stars .art{width:21px;height:21px}.you-are-here{font-size:7px;top:-25px}.map-prop{width:82px;height:82px}.prop-two{width:62px;height:62px}.victory-modal h2{font-size:24px}.victory-stats b{font-size:23px}}
@media(max-width:380px){.objective-chip{gap:1px;padding:5px 3px}.objective-chip .art{width:25px;height:25px}.objective-chip b{font-size:9px}.ice-badge{width:24px;font-size:23px}.modal.level-preview-modal,.modal.victory-modal{padding-left:17px;padding-right:17px}.victory-trophy{height:113px}.victory-trophy>.art{width:130px;height:130px}.victory-modal h2{font-size:23px}.victory-stars{height:60px}.victory-star{width:51px;height:51px}.victory-star:nth-child(2){width:63px;height:63px}.victory-banner{font-size:10px}.preview-goals .objective-chip{padding:7px 4px}.preview-goals .art{width:26px;height:26px}.preview-stars{gap:10px}.preview-stars>span{font-size:7px}}
/* Illustrated chapter bitmaps; routes and real progress remain interactive overlays. */
:root{--map-grove:url('assets/map-grove-v6.png');--map-lagoon:url('assets/map-lagoon-v6.png');--map-summit:url('assets/map-summit-v6.png');--ui-atlas:url('assets/ui-icons-v6.png')}.grove{--map-art:var(--map-grove)}.lagoon{--map-art:var(--map-lagoon)}.summit{--map-art:var(--map-summit)}body[data-world="grove"]{--world-art:var(--map-grove)}body[data-world="lagoon"]{--world-art:var(--map-lagoon)}body[data-world="summit"]{--world-art:var(--map-summit)}.mapgrid.adventure-map{background-image:var(--map-art);background-size:100% 100%;background-position:center;background-repeat:no-repeat;border-color:#e3c48b;box-shadow:inset 0 0 0 4px #fff4cc33,0 7px 0 #3b244c,0 12px 25px #10051d77}.adventure-map .map-land,.adventure-map .map-prop,.adventure-map .map-sky{display:none}.journey-route path{stroke:#493762b3;stroke-width:12;filter:drop-shadow(0 2px 2px #170f2c99)}.journey-route path.route-open{stroke:#fff0a6;filter:drop-shadow(0 3px 0 #885a42)}.journey-stop .level-node{border-color:#ffe9b1;box-shadow:inset 0 3px #ecd6ff66,0 6px #634378,0 9px 8px #16072a88}.journey-stop .level-node:disabled{background:linear-gradient(#89769c,#514462);border-color:#c6b4d6;box-shadow:inset 0 3px #cfc2db44,0 5px #43354f,0 9px 7px #16072a77}.node-stars{filter:drop-shadow(0 2px 1px #2a1639)}.chapter-finish{border:1px solid #ffe0a399;background:#3a215cbb;border-radius:14px;padding:0 10px;bottom:9px;width:225px}.game-title{position:relative;isolation:isolate}.game-title:before{content:'';position:absolute;inset:-9px -8px 0;z-index:-1;border-radius:20px;background-image:linear-gradient(90deg,#351d52c9,#351d52b0),var(--world-art);background-position:center 30%;background-size:cover;mask-image:linear-gradient(#0009,transparent);opacity:.8}.board{background-image:linear-gradient(#1d1430e8,#1d1430e8),var(--world-art);background-size:cover;background-position:center 65%}
/* Supplemental bitmap UI atlas. */
.ui-art{display:inline-block;flex-shrink:0;width:39px;height:39px;background-image:var(--ui-atlas);background-size:400% 400%;background-repeat:no-repeat;vertical-align:middle;pointer-events:none;font-style:normal}.ui-lock{background-position:0 0}.ui-avatar{background-position:33.3333% 0}.ui-sound{background-position:66.6667% 0}.ui-muted{background-position:100% 0}.ui-ice{background-position:0 33.3333%}.ui-pause{background-position:33.3333% 33.3333%}.ui-help{background-position:66.6667% 33.3333%}.ui-check{background-position:100% 33.3333%}.ui-medal{background-position:0 66.6667%}.ui-levelup{background-position:33.3333% 66.6667%}.ui-fire{background-position:66.6667% 66.6667%}.ui-burst{background-position:100% 66.6667%}.ui-forward{background-position:0 100%}.ui-book{background-position:33.3333% 100%}.ui-play{background-position:66.6667% 100%}.ui-close{background-position:100% 100%}.avatar{border:0;background:none;box-shadow:none;padding:0;overflow:visible;display:grid;place-items:center}.avatar .ui-art{width:48px;height:48px}.round#pause{background:none;border:0;width:41px;height:41px;padding:0;box-shadow:none}.round#pause .ui-art{width:44px;height:44px}.level-node .ui-lock{width:31px;height:31px;transform:translateY(-4px)}.objective-chip .ui-ice{width:31px;height:31px}.us-prefix{display:flex;align-items:center;gap:5px;white-space:nowrap}.us-prefix b{font-size:10px;color:#ffe29b;border:1px solid #d3ae7488;border-radius:4px;padding:2px 3px}
/* Short level entrance and meaningful progression overlay; no player-XP system is implied. */
.level-entrance{position:fixed;inset:0;z-index:25;display:grid;place-items:center;background:#120923cc;backdrop-filter:blur(9px);overflow:hidden}.entrance-backdrop{position:absolute;inset:0;background-image:linear-gradient(#21123180,#211231cc),var(--map-art);background-size:cover;background-position:center;opacity:.55}.entrance-card{position:relative;max-width:min(90%,420px);text-align:center;padding:26px;animation:entrance-card 1.1s ease-out both}.entrance-card>.ui-art{width:120px;height:120px;filter:drop-shadow(0 8px 3px #14072466)}.entrance-card>span{display:block;text-transform:uppercase;font-size:11px;font-weight:900;letter-spacing:2px;color:#ffe6a6;margin-top:8px}.entrance-card h2{font-size:50px;font-weight:950;color:#fff2b7;text-shadow:0 4px #8d553f,0 8px #45224f;margin:12px 0}.entrance-card p{font-size:12px;color:#e2c9f1;line-height:1.6}.entrance-card>div{display:flex;gap:7px;margin-top:20px}.entrance-card>b{display:block;font-size:34px;color:#d9ff9b;text-shadow:0 3px #487b32;margin-top:21px;letter-spacing:1px}.unlock-modal{padding:23px!important}.unlock-scene{text-align:center;position:relative}.unlock-scene>.victory-aura{top:-15px;left:calc(50% - 105px);z-index:0}.unlock-badge{position:relative;width:155px;height:155px;z-index:1;filter:drop-shadow(0 7px 3px #220c3c77);animation:unlock-pop .65s ease-out both}.unlock-kicker{display:table;margin:10px auto 14px;color:#704119;background:linear-gradient(#fff2b1,#efbf6b);border:2px solid #fff1bc;border-radius:10px;padding:8px 12px;font-size:11px;font-weight:950;letter-spacing:1px;box-shadow:0 3px #9b6946}.unlock-level{display:flex;align-items:center;justify-content:center;gap:13px;color:#fff0bd;margin:12px 0}.unlock-level small{font-size:9px;letter-spacing:1px;color:#d7b8e5}.unlock-level strong{font-size:38px;line-height:1}.unlock-world{height:120px;border:2px solid #d1a67b;border-radius:17px;background-image:var(--map-art);background-size:cover;background-position:center 40%;box-shadow:inset 0 0 15px #27123c55;margin-top:12px}.unlock-scene .primary{min-height:50px;margin-top:19px}.unlock-scene .plain{font-size:10px;margin-top:17px}
/* Combo card: bitmap burst, live multiplier and exact points for this cascade. */
#comboFloat.combo-callout{position:absolute;left:50%;right:auto;top:35%;width:245px;height:138px;transform:translateX(-50%);text-align:center;opacity:0;display:flex;flex-direction:column;align-items:center;justify-content:center;isolation:isolate;font-size:0;-webkit-text-stroke:0;z-index:10}.combo-callout .combo-burst{position:absolute;z-index:-1;inset:-17px -9px;width:263px;height:170px;filter:drop-shadow(0 6px 5px #2c0b4866);opacity:.95}.combo-label{font-size:30px;line-height:1;letter-spacing:-.7px;color:#fff5b1;-webkit-text-stroke:1px #8f3b64;paint-order:stroke fill;text-shadow:0 3px #9e465e,0 6px #47205b;font-weight:1000;transform:rotate(-4deg)}.combo-multiplier{font-size:39px;line-height:1.1;color:#fff4cd;-webkit-text-stroke:1px #6b3b7c;paint-order:stroke fill;text-shadow:0 3px #70417f;font-weight:1000}.combo-callout small{font-size:10px;letter-spacing:1px;color:#fff9d5;font-weight:900;background:#392054b3;border:1px solid #ffc79b88;border-radius:9px;padding:4px 8px;text-shadow:none;margin-top:1px}.combo-callout.show{animation:combo-card .7s ease-out both}.combo-callout.frenzy .combo-label{font-size:26px;color:#ffed86}.combo-callout.frenzy .combo-burst{filter:drop-shadow(0 0 16px #f98dd3)}
@keyframes entrance-card{0%{opacity:0;transform:scale(.7) translateY(20px)}25%,75%{opacity:1;transform:scale(1) translateY(0)}100%{opacity:0;transform:scale(1.07) translateY(-12px)}}@keyframes unlock-pop{0%{transform:scale(.4) rotate(-13deg);opacity:0}70%{transform:scale(1.1) rotate(3deg);opacity:1}100%{transform:scale(1)}}@keyframes combo-card{0%{opacity:0;translate:0 10px;scale:.5}25%{opacity:1;translate:0 0;scale:1.1}45%,70%{opacity:1;translate:0 0;scale:1}100%{opacity:0;translate:0 -20px;scale:1.04}}
@media(max-width:720px){.avatar .ui-art{width:38px;height:38px}.round#pause{width:35px;height:35px}.round#pause .ui-art{width:38px;height:38px}.level-node .ui-lock{width:29px;height:29px}#comboFloat.combo-callout{width:218px;height:128px}.combo-callout .combo-burst{width:238px;height:156px;inset:-14px -10px}.combo-label{font-size:27px}.combo-multiplier{font-size:34px}.entrance-card h2{font-size:44px}.unlock-badge{width:135px;height:135px}.unlock-modal{padding:20px!important}}

/* Bounds matched to the generated atlas, keeping neighboring icons outside each crop. */
.ui-lock{background-size:404.51612903% 404.51612903%;background-position:1.05932203% 2.11864407%;}
.ui-avatar{background-size:404.51612903% 404.51612903%;background-position:33.89830508% 2.11864407%;}
.ui-sound{background-size:418.00000000% 418.00000000%;background-position:66.56184486% 3.14465409%;}
.ui-muted{background-size:411.14754098% 411.14754098%;background-position:99.57850369% 3.16122234%;}
.ui-ice{background-size:418.00000000% 418.00000000%;background-position:1.04821803% 34.38155136%;}
.ui-pause{background-size:418.00000000% 418.00000000%;background-position:34.06708595% 34.59119497%;}
.ui-help{background-size:418.00000000% 418.00000000%;background-position:66.56184486% 34.59119497%;}
.ui-check{background-size:418.00000000% 418.00000000%;background-position:99.05660377% 34.59119497%;}
.ui-medal{background-size:418.00000000% 418.00000000%;background-position:1.04821803% 65.51362683%;}
.ui-levelup{background-size:418.00000000% 418.00000000%;background-position:34.06708595% 65.51362683%;}
.ui-fire{background-size:418.00000000% 418.00000000%;background-position:66.56184486% 65.51362683%;}
.ui-burst{background-size:411.14754098% 411.14754098%;background-position:99.57850369% 65.33192835%;}
.ui-forward{background-size:418.00000000% 418.00000000%;background-position:1.04821803% 96.96016771%;}
.ui-book{background-size:398.09523810% 398.09523810%;background-position:33.54632588% 98.50905218%;}
.ui-play{background-size:418.00000000% 418.00000000%;background-position:66.56184486% 96.96016771%;}
.ui-close{background-size:418.00000000% 418.00000000%;background-position:99.05660377% 96.96016771%;}
.modal .close{border:0!important;background:none!important;box-shadow:none!important;width:34px;height:34px;padding:0;line-height:1}.modal .close .ui-art{width:36px;height:36px}.icon .ui-art{width:85px;height:85px}.settings-row>span{display:flex;align-items:center;gap:9px}.settings-row>span .ui-art{width:30px;height:30px}.side-nav .ui-art{width:32px;height:32px}.round#pause .ui-art{filter:drop-shadow(0 3px 1px #210c3f55)}

.website-return{display:block;text-align:center;text-decoration:none;margin-top:10px}

.auth-modal{border:2px solid #e9b676;background:radial-gradient(ellipse at 50% 0%,#64417d 0,#342047 50%,#271b3b 100%);box-shadow:0 10px 0 #140d23,0 25px 90px #080511aa;max-width:450px}.auth-heading{text-align:center}.auth-logo{width:260px;max-width:90%;height:87px;display:block;margin:0 auto 6px}.auth-eyebrow{display:block;color:#ffe3a2;letter-spacing:2px;font-size:9px;margin:8px 0 13px;font-weight:800}.auth-modal #modalTitle{font-size:29px;color:#fff0cf;margin:0 0 10px}.auth-modal .desc{line-height:1.6;font-size:12px}.auth-modal .input-row{background:#1b122c80;border-color:#b88bcb70}.auth-modal .error{min-height:32px;font-size:11px;line-height:1.5}.auth-modal #login{font-size:13px}.auth-modal #guest{margin:10px auto 0;color:#ffe0a1;text-decoration:underline;text-underline-offset:4px}.auth-modal .consent{font-size:10px;line-height:1.6}@media(max-width:480px){.auth-modal{padding:22px 20px 18px}.auth-logo{height:70px;width:210px}.auth-modal #modalTitle{font-size:26px}.auth-eyebrow{margin-bottom:10px}}

/* Chapter lettering replaces the repeated in-board brand mark. */
.game-title>div{min-width:0;padding-right:12px}.game-title h1.chapter-title{font-family:"Trebuchet MS",ui-rounded,system-ui,sans-serif;font-weight:1000;font-size:43px;line-height:1.12;letter-spacing:-1.2px;color:#ffe898;-webkit-text-stroke:1px #7d405d;paint-order:stroke fill;text-shadow:0 2px 0 #c38b3e,0 4px 0 #874b39,0 6px 0 #381b36,0 10px 14px #0b041caa;margin:8px 0 20px}.game-title .eyebrow{color:#ecd69c}.game-title>.round{margin-left:10px}.auth-modal #closeModal{display:none!important}@media(max-width:720px){.game-title h1.chapter-title{font-size:34px;letter-spacing:-.8px;margin:9px 0 18px}.game-title>div{padding-right:5px}.game-title>.round{margin-left:5px}}@media(max-width:380px){.game-title h1.chapter-title{font-size:30px;letter-spacing:-1px}}
