.flower-array.compact{grid-template-columns:repeat(var(--columns),10px);grid-template-rows:repeat(var(--rows),10px);gap:3px;padding:6px 9px;border-width:3px}.flower-array.compact i{width:8px;height:8px;box-shadow:4px 0 #ffe08c,-4px 0 #ffe08c,0 4px #ffe08c,0 -4px #ffe08c}.flower-array.compact i:after{left:3px;top:3px;width:3px;height:3px}
.crystal-actions[hidden]{display:none!important}
.crystal-game-shell{max-width:1440px;margin:0 auto;padding:24px clamp(16px,5vw,72px) 70px}.crystal-heading{display:flex;align-items:center;gap:18px;margin:18px 0 24px}.crystal-heading-mark{display:grid;place-items:center;width:76px;height:76px;flex:0 0 auto;border:1px solid #9dbcae;border-radius:18px;background:#286653;color:#fff;font:600 25px 'Fraunces',serif;box-shadow:0 12px 24px rgba(37,99,80,.2)}.crystal-heading h1{margin:3px 0 5px;font-size:40px}.crystal-heading p{margin:0;max-width:760px;color:#5e736d;line-height:1.5}.crystal-levels{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px}.crystal-levels button{display:grid;gap:3px;padding:14px 16px;border:1px solid #bfd0c4;border-radius:10px;background:#fffdf8;color:var(--ink);text-align:left;cursor:pointer}.crystal-levels button b{font-size:14px}.crystal-levels button span{font-size:12px;color:#c05f32;font-weight:800}.crystal-levels button small{color:#71817b}.crystal-levels button[aria-pressed=true]{border-color:#286653;background:#286653;color:#fff;box-shadow:0 8px 18px rgba(37,99,80,.2)}.crystal-levels button[aria-pressed=true] span,.crystal-levels button[aria-pressed=true] small{color:#dff0e6}.crystal-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:18px}.crystal-map-panel,.crystal-quest-card{border:1px solid #c9d3c7;border-radius:16px;background:#fffdf8;box-shadow:0 14px 30px rgba(35,70,58,.12);overflow:hidden}.crystal-map-title{padding:18px 20px 10px}.crystal-map-title h2{margin:3px 0;font-size:24px}.crystal-map{display:block;width:calc(100% - 28px);margin:0 14px}.crystal-map-stop circle{fill:#fffdf8;stroke:#789f8a;stroke-width:4}.crystal-map-stop text{fill:#286653;text-anchor:middle;font:800 16px 'DM Sans',sans-serif}.crystal-map-stop.current circle{fill:#e2a052;stroke:#fff}.crystal-map-stop.current text{fill:#3b2a1c}.crystal-map-stop.complete circle{fill:#286653}.crystal-map-stop.complete text{fill:#fff}.crystal-player{transition:transform .55s ease}.crystal-player circle{fill:#d26535;stroke:#fff;stroke-width:4}.crystal-player path{fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.crystal-stop-list{display:grid;gap:3px;margin:4px 14px 16px;padding:0;list-style:none}.crystal-stop-list li{display:grid;grid-template-columns:32px 1fr;align-items:center;gap:8px;padding:8px;border-radius:9px;color:#6b7772}.crystal-stop-list li>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e5ece5;font-size:11px;font-weight:800}.crystal-stop-list b,.crystal-stop-list small{display:block}.crystal-stop-list b{font-size:12px}.crystal-stop-list small{font-size:10px}.crystal-stop-list li.current{background:#f7e8d5;color:#49392e}.crystal-stop-list li.current>span{background:#e2a052;color:#2f271f}.crystal-stop-list li.complete>span{background:#286653;color:#fff}.crystal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:22px 24px;border-bottom:1px solid #dce2da}.crystal-toolbar h2{margin:4px 0 0;font-size:30px}.crystal-toolbar button,.crystal-actions button,.crystal-finish button{min-height:42px;padding:10px 14px;border:1px solid #abc1b2;border-radius:9px;background:#fff;color:#286653;font-weight:800;cursor:pointer}.crystal-toolbar button:hover,.crystal-actions button:hover,.crystal-finish button:hover{border-color:#286653}.crystal-status{display:grid;grid-template-columns:repeat(3,1fr);background:#edf3ed;border-bottom:1px solid #d3dfd5}.crystal-status span{padding:11px 14px;text-align:center;font-size:11px;color:#60716a}.crystal-status span+span{border-left:1px solid #d3dfd5}.crystal-status b{display:block;margin-bottom:2px;color:#286653;font-size:15px}.crystal-scene{position:relative;min-height:285px;overflow:hidden;background:#cde3dd}.crystal-story{padding:15px 24px;background:#3f6559;color:#fff;line-height:1.5;font-size:13px}.crystal-question{padding:24px}.crystal-skill{margin:0;color:#c05f32;font-size:10px;font-weight:800;letter-spacing:.17em}.crystal-question h3{margin:9px 0 18px;font:600 clamp(22px,3vw,31px)/1.3 'Fraunces',serif}.crystal-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.crystal-choices button{min-height:54px;padding:12px;border:1px solid #c6d2c8;border-radius:10px;background:#fff;color:var(--ink);font-size:16px;font-weight:800;cursor:pointer;box-shadow:0 4px 9px rgba(42,77,65,.07)}.crystal-choices button:hover{transform:translateY(-2px);border-color:#286653}.crystal-choices button:disabled{cursor:default;transform:none}.crystal-choices button.correct{background:#dceee5;border-color:#39805e}.crystal-choices button.wrong{background:#f8e3d8;border-color:#bd7655}.crystal-feedback{margin:0 24px}.crystal-feedback.show{padding:14px;border-radius:10px;line-height:1.45}.crystal-feedback.correct{background:#dceee5;color:#24583f}.crystal-feedback.wrong{background:#f8e3d8;color:#7b422c}.crystal-feedback.help{background:#fff1c9;color:#69521c}.crystal-actions{display:flex;justify-content:space-between;gap:10px;padding:18px 24px 24px}.crystal-actions .primary{margin-left:auto;background:#286653;color:#fff}.crystal-actions button:disabled{opacity:.45;cursor:default}.garden-scene{position:absolute;inset:0;background:linear-gradient(#9ed4e5 0 44%,#83ad60 44%)}.scene-sun{position:absolute;right:8%;top:10%;width:52px;height:52px;border-radius:50%;background:#f5c45c;box-shadow:0 0 0 12px rgba(245,196,92,.22)}.garden-sign{position:absolute;left:6%;top:10%;padding:8px 13px;border-radius:5px;background:#8e5f39;color:#fff;font-weight:800;transform:rotate(-2deg)}.flower-array{position:absolute;left:50%;bottom:18px;display:grid;grid-template-columns:repeat(var(--columns),minmax(12px,27px));grid-template-rows:repeat(var(--rows),minmax(12px,25px));gap:7px;transform:translateX(-50%);padding:18px 24px;border:6px solid #9a653a;border-radius:8px;background:#654a32}.flower-array i{position:relative;width:20px;height:20px;border-radius:50%;background:#f49a65;box-shadow:8px 0 #ffe08c,-8px 0 #ffe08c,0 8px #ffe08c,0 -8px #ffe08c}.flower-array i:after{content:'';position:absolute;left:8px;top:8px;width:5px;height:5px;border-radius:50%;background:#7b4a28}.lake-scene{position:absolute;inset:0;background:linear-gradient(#a9dcef 0 28%,#4fa4a5 28%)}.lake-shore{position:absolute;left:0;right:0;bottom:0;height:23%;background:#d7bf7b;clip-path:polygon(0 45%,20% 20%,44% 43%,66% 10%,100% 38%,100% 100%,0 100%)}.lily-groups{position:absolute;inset:32% 6% 22%;display:flex;align-items:center;justify-content:space-around;gap:8px;flex-wrap:wrap}.lily{display:grid;place-items:center;width:72px;height:48px;border-radius:50%;background:#65a857;border:3px solid #d4e6a2;color:#173c30;box-shadow:0 7px 0 rgba(28,95,90,.35)}.lily b{font-size:21px}.lily span{font-size:8px;text-transform:uppercase}.boardwalk-scene{position:absolute;inset:0;background:linear-gradient(#c3e3e6,#5b9999)}.deck{position:absolute;left:50%;top:50%;width:58%;height:52%;transform:translate(-50%,-50%) perspective(450px) rotateX(52deg);border:8px solid #68482f;background:repeating-linear-gradient(90deg,#be8a54 0 18px,#835c3a 19px 22px);box-shadow:0 18px 30px rgba(25,55,52,.3)}.deck i{position:absolute;width:12px;height:48px;background:#5b3d29}.deck i:nth-of-type(1){left:-10px;top:-38px}.deck i:nth-of-type(2){right:-10px;top:-38px}.deck i:nth-of-type(3){left:-10px;bottom:-38px}.deck i:nth-of-type(4){right:-10px;bottom:-38px}.deck-length,.deck-width{position:absolute;padding:5px 8px;background:#fffdf8;color:#49372b;font-weight:800;transform:rotateX(-52deg)}.deck-length{left:42%;bottom:-32px}.deck-width{right:-52px;top:40%}.reeds{position:absolute;inset:auto 0 0;height:45px;background:repeating-linear-gradient(78deg,transparent 0 9px,#487944 10px 13px,transparent 14px 21px)}.picnic-scene{position:absolute;inset:0;background:linear-gradient(#a9dcdf 0 52%,#79a85f 52%)}.clock-face{position:absolute;left:12%;top:12%;width:170px;height:170px;border:10px solid #fff8e8;border-radius:50%;background:#f9dca1;box-shadow:0 10px 20px rgba(47,76,59,.2)}.clock-face b{position:absolute;font-size:12px}.clock-face b:nth-child(1){left:47%;top:5%}.clock-face b:nth-child(2){right:7%;top:46%}.clock-face b:nth-child(3){left:48%;bottom:5%}.clock-face b:nth-child(4){left:7%;top:46%}.clock-face span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font:700 25px 'Fraunces',serif}.picnic-blanket{position:absolute;right:10%;bottom:10%;display:grid;grid-template-columns:repeat(2,55px);grid-template-rows:repeat(2,45px);transform:skewX(-8deg) rotate(-4deg);box-shadow:0 12px 18px rgba(46,70,48,.2)}.picnic-blanket i:nth-child(odd){background:#d85f4a}.picnic-blanket i:nth-child(even){background:#fff4dc}.fair-scene{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(#b7dfe7 0 34%,#e7d6a2 34%)}.bar-chart{display:flex;align-items:flex-end;gap:13px;width:min(90%,520px);height:215px;padding:28px 30px 20px;border:6px solid #765337;border-radius:7px;background:#fffdf8;box-shadow:0 13px 22px rgba(48,64,50,.25)}.bar-chart>div{display:flex;flex:1;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;gap:4px}.bar-chart i{position:relative;width:65%;height:calc(var(--value) * 12px);min-height:24px;background:#df814e;border-radius:5px 5px 0 0}.bar-chart i b{position:absolute;left:50%;top:-19px;transform:translateX(-50%);font-style:normal;font-size:11px}.bar-chart span{font-size:9px;font-weight:800}.fair-banner{position:absolute;left:50%;top:6px;transform:translateX(-50%);padding:7px 25px;background:#286653;color:#fff;font:600 18px 'Fraunces',serif;clip-path:polygon(5% 0,95% 0,100% 50%,95% 100%,5% 100%,0 50%)}.crystal-finish{padding:45px 24px;text-align:center}.crystal-finish h2{font-size:36px}.crystal-badge{display:grid;place-items:center;width:190px;height:190px;margin:24px auto;border:10px double #f0c56c;border-radius:50%;background:#286653;color:#fff;box-shadow:0 15px 30px rgba(37,99,80,.25)}.crystal-badge span{font-size:54px;color:#f6ce68}.crystal-badge b{max-width:120px;font-family:'Fraunces',serif}.crystal-card-art{position:relative;min-height:190px;overflow:hidden;background:linear-gradient(#b9e0e8 0 48%,#80ae63 48%)}.crystal-sun{position:absolute;right:12%;top:12%;width:42px;height:42px;border-radius:50%;background:#f5c45c}.crystal-trees{position:absolute;left:6%;top:31%;color:#286653;font-size:42px;letter-spacing:-8px}.crystal-water{position:absolute;left:0;right:0;bottom:0;height:34%;background:#569b9b;clip-path:ellipse(74% 59% at 50% 76%)}.crystal-path{position:absolute;left:43%;bottom:0;width:20%;height:58%;background:#e5c989;clip-path:polygon(38% 0,62% 0,100% 100%,0 100%)}.crystal-flag{position:absolute;right:31%;top:32%;display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#d26535;color:#fff}.game-card-grid .crystal-lake-choice{grid-column:span 2}@media(max-width:900px){.crystal-layout{grid-template-columns:1fr}.crystal-map-panel{display:grid;grid-template-columns:minmax(250px,1fr) 1fr}.crystal-map-title{grid-column:1/-1}.crystal-map{max-height:430px}.crystal-stop-list{align-self:center}}@media(max-width:700px){.crystal-levels{grid-template-columns:1fr}.crystal-map-panel{display:block}.crystal-map{max-height:none}.crystal-heading{align-items:flex-start}.crystal-heading-mark{width:58px;height:58px;font-size:19px}.crystal-choices{grid-template-columns:1fr}.game-card-grid .crystal-lake-choice{grid-column:auto}}@media(max-width:480px){.crystal-game-shell{padding-left:12px;padding-right:12px}.crystal-toolbar{align-items:flex-start;flex-direction:column}.crystal-toolbar button{align-self:flex-end}.crystal-status span{padding:9px 4px}.crystal-scene{min-height:245px}.flower-array{transform:translateX(-50%) scale(.82)}.clock-face{left:5%;transform:scale(.8);transform-origin:left top}.bar-chart{gap:5px;padding-left:10px;padding-right:10px}.bar-chart span{font-size:7px}}
