.level-editor{position:absolute;top:0;right:0;bottom:0;left:0;z-index:50;overflow:auto;background:#68d5cb;color:#242139;font-family:inherit;padding:24px 32px 40px;box-sizing:border-box;touch-action:auto}.ed-header{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1550px;margin:0 auto 25px}.ed-eyebrow{font-size:10px;font-weight:800;letter-spacing:2px;color:#443b61}.ed-header h1{font-family:Arial Black,Trebuchet MS,sans-serif;font-weight:1000;text-transform:uppercase;letter-spacing:-1px;font-size:34px;line-height:1.1;margin:8px 0}.ed-header h1 span{display:block;font:400 12px/2 sans-serif;color:#554870}.ed-header-actions{display:flex;gap:10px}.level-editor button,.level-editor select,.level-editor input{font:inherit}.level-editor button{border:3px solid #242139;color:#242139;border-radius:6px 3px 7px 4px;padding:10px 14px;background:#fff2ce;cursor:pointer;font-size:12px;font-weight:900;box-shadow:0 2px #24213909;touch-action:manipulation;min-height:42px}.level-editor button:hover{background:#d5ed50}.level-editor button:focus-visible,.level-editor input:focus-visible,.level-editor select:focus-visible{outline:3px solid #ff765c;outline-offset:2px}.level-editor button:disabled{opacity:.35;cursor:default}.level-editor .ed-primary{background:#242139;color:#d5ed50;border-color:#242139;padding:13px 24px}.ed-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:25px;max-width:1550px;margin:auto}.ed-tools{background:#bcb2ee;border:3px solid #242139;border-radius:8px 4px 9px 5px;box-shadow:4px 5px #242139;padding:18px}.ed-field{display:block;font-size:11px;font-weight:900}.level-editor input:not([type=checkbox]),.level-editor select{display:block;min-width:0;width:100%;box-sizing:border-box;border:3px solid #242139;background:#fff2ce;color:#242139;border-radius:6px;padding:9px 10px;margin-top:6px;font-size:12px}.ed-caption{font-size:11px;line-height:1.5;color:#443b61;margin:20px 0 10px}.ed-tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.ed-tool-grid button{font-size:24px;padding:7px 4px}.ed-tool-grid button span{font-size:10px;display:block;margin-top:4px}.level-editor .ed-active{background:#d5ed50;border-color:#242139;color:#242139}.ed-materials{display:flex;gap:5px}.ed-materials button{padding:8px;font-size:10px;flex:1}.ed-materials [data-material=wood]{border-bottom:4px solid #df9253}.ed-materials [data-material=glass]{border-bottom:4px solid #27c5bd}.ed-materials [data-material=stone]{border-bottom:4px solid #8f82b3}.ed-check{display:flex;align-items:center;gap:7px;font-size:10px;margin:15px 0}.ed-check input{accent-color:#793bc1}.level-editor .ed-wide{width:100%;margin:9px 0;font-size:11px}.ed-selection{border-bottom:2px solid #242139;padding-bottom:12px;margin-top:12px}.ed-object-fields{display:grid;grid-template-columns:1fr 1fr;gap:7px}.ed-object-fields label{font-size:10px;color:#443b61}.ed-object-actions{display:flex;gap:4px;margin-top:10px;flex-wrap:wrap}.ed-object-actions button{font-size:10px;padding:7px 9px}.ed-roster{display:flex;flex-wrap:wrap;gap:5px}.ed-roster button{padding:6px 8px;font-size:10px;text-transform:capitalize;background:#fff2ce}.ed-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.ed-toolbar button{padding:8px 12px;font-size:11px}.ed-toolbar span{font-size:11px;color:#443b61}.ed-canvas-wrap{background:#68d5cb;border:3px solid #242139;border-radius:8px 4px 9px 5px;overflow:hidden;box-shadow:5px 6px #242139}.ed-canvas{width:100%;display:block;touch-action:none;-webkit-user-select:none;user-select:none}.ed-canvas [data-id]{cursor:grab}.ed-status{font-size:12px;line-height:1.5;padding:16px 4px;color:#242139;min-height:20px}.ed-error{color:#a02f4d}.ed-files{display:flex;gap:8px;flex-wrap:wrap}.ed-files button{font-size:11px}.ed-scoring{margin-top:22px;border-top:2px solid #242139;padding-top:17px;font-size:12px;color:#443b61}.ed-scoring summary{cursor:pointer;font-weight:900}.ed-scoring p{font-size:11px;line-height:1.6}.ed-score-fields{display:flex;gap:12px;margin:15px 0}.ed-score-fields label{width:120px;font-size:13px;color:#242139}.ed-scoring .ed-field{max-width:500px}@media(max-width:800px){.level-editor{padding:15px}.ed-layout{grid-template-columns:190px minmax(0,1fr);gap:12px}.ed-tools{padding:12px}.ed-header h1{font-size:27px}.ed-toolbar span{display:none}.ed-header{margin-bottom:15px}.ed-header-actions button{padding:10px}.ed-materials{flex-wrap:wrap}.ed-materials button{font-size:9px;padding:6px}.ed-files button{padding:8px}.ed-caption{margin-top:13px}.ed-tool-grid button{font-size:20px}}@media(max-width:580px){.ed-layout{display:flex;flex-direction:column-reverse}.ed-tools{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ed-tools>.ed-caption{grid-column:1/-1}.ed-tools .ed-tool-grid{grid-template-columns:repeat(3,1fr)}.ed-selection{grid-column:1/-1}.ed-canvas-wrap{border-radius:8px}.ed-header h1{font-size:24px}.ed-header-actions{gap:5px}.ed-header h1 span{font-size:10px}.ed-eyebrow{font-size:8px;letter-spacing:1px}.ed-toolbar{margin-bottom:7px}.ed-status{font-size:10px;padding:10px 0}.ed-scoring{margin-top:12px}}.ed-tools{min-width:0}.ed-tools details{border-top:2px solid #242139;padding-top:12px;margin:14px 0}.ed-tools summary,.ed-advanced summary{font-size:12px;font-weight:1000;cursor:pointer}.ed-help{font-size:10px;line-height:1.5;color:#443b61}.ed-field+.ed-field{margin-top:12px}.ed-materials{flex-wrap:wrap}.ed-materials button{min-width:55px;flex:1;padding:7px;font-size:10px;text-transform:capitalize}.ed-materials [data-material=ice]{border-bottom:4px solid #b9f4ff}.ed-materials [data-material=metal]{border-bottom:4px solid #6c89ab}.ed-grid-controls{display:flex;align-items:center;gap:10px}.ed-grid-controls>label:last-child{display:flex;align-items:center;gap:7px;font-size:10px}.ed-grid-controls input[type=number]{width:64px;margin:0}.ed-template-grid,.ed-terrain-tools{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:12px}.ed-template-grid button,.ed-terrain-tools button{font-size:10px;padding:7px 5px;text-transform:capitalize}.ed-selection{padding-bottom:15px}.ed-object-fields{margin-top:10px}.ed-object-fields select{font-size:10px;padding:8px 5px}.ed-joint-row{display:flex;gap:5px;align-items:center;font-size:10px;margin-top:8px;overflow-wrap:anywhere}.ed-joint-row button{margin-left:auto;min-height:30px;padding:3px 8px}.ed-roster>span{display:flex;gap:3px}.ed-roster>span>button:last-child:not(:first-child){padding:5px}.ed-toolbar>div{display:flex;gap:6px;flex-wrap:wrap}.ed-zoom{display:flex;align-items:center;gap:8px;font-size:11px}.ed-zoom select{margin:0!important;width:90px!important}.ed-canvas-wrap{max-height:65vh;overflow:auto;overscroll-behavior:contain;touch-action:pan-x pan-y}.ed-canvas{max-width:none;min-width:100%;height:auto}.ed-canvas [data-type=zones]{cursor:crosshair}.ed-level-fields{max-width:760px;grid-template-columns:repeat(3,minmax(100px,1fr));gap:12px}.ed-scoring .ed-field{margin-top:12px}.ed-advanced{margin-top:20px;border-top:2px solid #242139;padding-top:15px}.ed-advanced textarea{font:12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;display:block;resize:vertical;width:100%;min-height:220px;max-height:600px;margin:12px 0;padding:14px;color:#242139;background:#fff7e6;border:3px solid #242139;border-radius:5px}.ed-advanced>button{margin:0 8px 8px 0}.ed-object-actions button{min-height:36px}.level-editor input[type=checkbox]{min-width:18px;min-height:18px}@media(max-width:900px){.ed-level-fields{grid-template-columns:repeat(2,minmax(90px,1fr))}.ed-toolbar{align-items:flex-start}.ed-toolbar button{font-size:10px;padding:7px 9px}.ed-layout{grid-template-columns:210px minmax(0,1fr)}}@media(max-width:580px){.ed-tools{display:block}.ed-tools .ed-tool-grid{grid-template-columns:repeat(6,1fr)}.ed-template-grid,.ed-terrain-tools{grid-template-columns:repeat(3,1fr)}.ed-tool-grid button{font-size:20px}.ed-tool-grid button span{font-size:8px}.ed-materials{display:flex}.ed-materials button{min-width:45px}.ed-level-fields{grid-template-columns:repeat(2,minmax(90px,1fr))}.ed-main{min-width:0}.ed-canvas-wrap{max-height:48vh}.ed-toolbar .ed-zoom{font-size:10px;gap:4px}.ed-zoom select{width:72px!important}}.level-editor{font-family:Trebuchet MS,Avenir Next,Arial,sans-serif}.level-editor input[hidden]{display:none}:root{font-family:Trebuchet MS,Avenir Next,Arial,sans-serif;color:#242139;background:#242139;font-synthesis:none;font-weight:700;--ink: #242139;--green: #27c5bd;--cream: #fff2ce;--orange: #ff765c;--muted: #615d79;--lime: #d5ed50;--lavender: #bcb2ee}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:focus-visible,input:focus-visible,select:focus-visible{outline:4px solid #ff765c;outline-offset:5px}#app{height:100svh;min-height:0;position:relative;overflow:hidden;background:#68d5cb}#game{position:absolute;top:0;right:0;bottom:0;left:0;touch-action:none}#game canvas{display:block}#ui{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}#ui button,#ui input,#ui select,#ui .modal,#ui .level-editor{pointer-events:auto}.header{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:20px 4%;z-index:5;pointer-events:none}.header button{pointer-events:auto}.brand{display:flex;align-items:center;gap:9px;border:0;background:none;font-size:26px;font-weight:1000;letter-spacing:-1.4px;text-align:left;padding:0;line-height:1;text-transform:uppercase}.brand-light{font-weight:1000}.brand-symbol{width:47px;height:47px;display:flex;border:3px solid var(--ink);border-radius:8px;background:var(--lime);box-shadow:3px 3px 0 var(--ink);transform:rotate(-5deg)}.brand-symbol svg{width:100%;height:100%;padding:1px}.brand>span:last-child{padding:8px 11px;background:var(--cream);border:3px solid var(--ink);box-shadow:3px 3px 0 var(--ink);transform:rotate(1deg);border-radius:4px}.header nav{display:flex;align-items:center;gap:12px}.icon-button{border:3px solid var(--ink);background:var(--cream);border-radius:11px;width:48px;height:48px;font-size:25px;display:inline-flex;justify-content:center;align-items:center;box-shadow:3px 4px 0 var(--ink);transform:rotate(2deg);transition:transform .1s,background .1s}.icon-button:hover,.pill-button:hover{background:var(--lime);transform:translateY(-2px) rotate(-2deg)}.icon-button:active,.pill-button:active{transform:translateY(3px);box-shadow:1px 1px 0 var(--ink)}.ui-icon{width:21px;height:21px;vertical-align:middle;display:inline-block;flex-shrink:0}.icon-button .ui-icon{width:23px;height:23px;stroke-width:2.5}.primary .ui-icon{margin-left:10px}.primary span:has(.ui-icon){padding-left:10px}.home-screen{background:transparent}.home-screen:before{display:none}.eyebrow{font-size:10px;letter-spacing:1.6px;font-weight:1000;color:var(--ink);display:flex;align-items:center;gap:8px}.primary{border:3px solid var(--ink);background:var(--lime);color:var(--ink);border-radius:9px 5px 10px;padding:15px 25px;font-size:15px;font-weight:1000;box-shadow:4px 5px 0 var(--ink);transition:transform .1s,box-shadow .1s;min-height:49px}.primary:hover{background:#e4f77a;transform:translateY(-2px) rotate(-1deg);box-shadow:5px 7px 0 var(--ink)}.primary:active{transform:translateY(3px);box-shadow:1px 1px 0 var(--ink)}.text-button{background:var(--cream);border:2px solid var(--ink);border-radius:5px;padding:10px 16px;font-size:12px;font-weight:900;min-height:43px;box-shadow:2px 3px 0 var(--ink)}.text-button:hover{background:#ffb196;transform:translateY(-1px)}.pill-button{background:var(--cream);border:3px solid var(--ink);border-radius:8px;padding:10px 16px;font-size:13px;font-weight:900;min-height:48px;box-shadow:3px 4px 0 var(--ink)}.menu-screen{pointer-events:auto!important;overflow:auto}.game-screen .header{padding-top:18px}.game-screen .brand{font-size:20px}.game-screen .brand-symbol{width:42px;height:42px}.game-screen .brand>span:last-child{padding:7px}.level-heading{position:absolute;top:24px;left:50%;transform:translate(-50%) rotate(-1deg);text-align:center;background:var(--cream);border:3px solid var(--ink);border-radius:5px 10px 4px 8px;padding:8px 23px;box-shadow:4px 4px 0 var(--ink);max-width:40%}.level-heading .eyebrow{justify-content:center;font-size:8px;letter-spacing:1.2px;white-space:nowrap}.level-heading h2{font-family:Arial Black,Trebuchet MS,sans-serif;font-size:23px;font-weight:1000;line-height:1.1;margin:6px 0 1px;letter-spacing:-.8px;text-transform:uppercase}.scoreboard{position:absolute;right:4.5%;top:100px;text-align:center;min-width:130px;background:var(--lavender);border:3px solid var(--ink);border-radius:8px 4px 9px 5px;padding:9px 14px 7px;box-shadow:4px 4px 0 var(--ink);transform:rotate(2deg)}.scoreboard>span{font-size:9px;letter-spacing:2px;font-weight:1000}.scoreboard strong{display:block;font-size:29px;font-weight:1000;letter-spacing:-1px;margin:2px 0}.score-stars{color:var(--cream);font-size:21px;font-weight:1000;letter-spacing:3px;-webkit-text-stroke:1px var(--ink);paint-order:stroke fill}.hud-bottom{position:absolute;left:3%;right:3%;bottom:3%;display:flex;justify-content:space-between;align-items:flex-end;gap:16px}.queue-panel{min-width:170px;background:var(--cream);border:3px solid var(--ink);padding:8px 11px 10px;box-shadow:4px 4px 0 var(--ink);border-radius:6px 10px 4px 8px;transform:rotate(-1deg)}.hud-caption{font-size:7px;font-weight:1000;letter-spacing:1.2px;margin-bottom:6px;color:var(--ink)}.queue-item{display:inline-block;width:48px;height:48px;border:2px solid var(--ink);border-radius:7px;margin-right:5px;background:#bcb2ee;vertical-align:bottom;position:relative}.queue-item:last-child{margin-right:0}.queue-item svg{width:100%;height:100%}.queue-item.used{opacity:.28;background:#b7b0bc}.queue-item.next{border:3px solid var(--ink);background:var(--lime);transform:translateY(-3px) rotate(-4deg);box-shadow:2px 3px 0 var(--ink)}.shot-message{font-size:12px;font-weight:900;text-align:center;color:var(--ink);max-width:455px;line-height:1.45;background:var(--cream);border:3px solid var(--ink);border-radius:8px 4px 9px 5px;padding:11px 18px;box-shadow:3px 4px 0 var(--ink)}.game-actions{display:flex;gap:12px;align-items:center}.game-actions .icon-button{width:52px;height:52px;background:var(--lime)}.game-actions .icon-button[data-action=restart]{background:var(--orange)}.modal-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:#24213999;z-index:30;display:flex;align-items:center;justify-content:center;pointer-events:auto;padding:20px}.modal{position:relative;background:var(--cream);border:4px solid var(--ink);border-radius:12px 6px 14px;padding:33px 36px;box-shadow:9px 10px 0 var(--ink);width:440px;text-align:center;max-height:94%;overflow:auto;animation:appear .16s ease-out}.modal:before{content:"";display:block;position:absolute;top:9px;left:12px;width:25px;height:7px;background:var(--orange);transform:rotate(-15deg);border:2px solid var(--ink)}.modal .eyebrow{justify-content:center;font-size:9px;letter-spacing:1.2px}.modal h2{font-family:Arial Black,Trebuchet MS,sans-serif;font-size:35px;font-weight:1000;line-height:1.05;margin:15px 0;color:var(--ink);letter-spacing:-1.2px;text-transform:uppercase}.modal p{font-size:13px;font-weight:700;line-height:1.6;color:#57516c}.modal-actions{display:flex;flex-direction:column;gap:14px;margin-top:23px}.modal-actions .text-button{align-self:center;background:var(--lavender)}.result-face{width:100px;height:100px;margin:-11px auto 10px;transform:rotate(-5deg)}.result-face svg{width:100%;height:100%}.result-stars{font-size:47px;font-weight:1000;letter-spacing:7px;color:#a39caf;margin:16px 0 8px;-webkit-text-stroke:2px var(--ink);paint-order:stroke fill}.result-stars .earned{color:#ffd44e;text-shadow:3px 4px 0 var(--ink)}.result-score{font-size:35px;font-weight:1000;letter-spacing:-1px}.result-score small{display:block;font-size:8px;letter-spacing:1px;color:#625c75;margin-top:8px}.settings-list{margin:24px 0;border-top:3px solid var(--ink)}.settings-list label{display:flex;justify-content:space-between;align-items:center;padding:15px 0;font-size:14px;font-weight:900;border-bottom:2px solid var(--ink)}.settings-list input{width:23px;height:23px;accent-color:#793bc1}.settings-note{font-size:11px!important}.save-warning{color:#a03937!important;font-size:11px!important}.editor-screen{pointer-events:auto!important}.title-screen .brand>span:last-child,.campaign-screen .brand>span:last-child{display:none}@keyframes appear{0%{opacity:0;transform:translateY(9px) scale(.97)}to{opacity:1;transform:none}}@media(max-width:1050px){.header{padding:17px 3%}.header nav{gap:10px}.game-screen .brand>span:last-child{display:none}.level-heading{top:19px;max-width:43%;padding:8px 15px}.level-heading h2{font-size:20px}.scoreboard{right:3%;top:89px;min-width:115px;padding:7px 12px}.scoreboard strong{font-size:25px}.hud-bottom{left:2.5%;right:2.5%;gap:12px}.queue-panel{min-width:0;padding:7px 9px}.queue-item{width:42px;height:42px;margin-right:4px}.shot-message{max-width:350px;font-size:11px;padding:10px 13px}.game-actions{gap:9px}.game-actions .icon-button{width:47px;height:47px}}@media(max-width:760px){.header{padding:14px 18px}.header nav{gap:9px}.icon-button{width:43px;height:43px;border-radius:8px;font-size:23px}.game-screen .brand-symbol{display:none}.game-screen .brand{font-size:17px}.game-screen .header{padding:13px}.game-screen .pill-button{min-height:42px;padding:9px 12px;font-size:11px}.game-screen .pill-button span{display:none}.level-heading{top:77px;left:4%;transform:rotate(-1deg);max-width:62%;text-align:left;padding:8px 13px}.level-heading .eyebrow{justify-content:flex-start;font-size:7px;letter-spacing:.7px}.level-heading h2{font-size:20px}.scoreboard{top:79px;right:4%;min-width:91px;max-width:28%;padding:6px}.scoreboard>span{font-size:7px}.scoreboard strong{font-size:22px}.score-stars{font-size:17px;letter-spacing:1px}.hud-bottom{left:4%;right:4%;bottom:3%;flex-wrap:wrap;gap:12px;align-items:flex-end}.hud-caption{font-size:6px;letter-spacing:.6px}.queue-item{width:37px;height:37px;margin-right:3px}.queue-panel{padding:6px 8px 8px}.shot-message{order:3;width:100%;max-width:none;font-size:11px;padding:9px 13px}.game-actions .icon-button{width:44px;height:44px}.game-actions{gap:8px}.modal{padding:27px 24px;width:min(410px,94vw)}.modal h2{font-size:30px}.modal p{font-size:12px}.result-face{width:84px;height:84px}.result-stars{font-size:40px}.primary{font-size:14px;padding:13px 17px}.header nav .text-button{font-size:10px}}@media(max-height:540px)and (min-width:700px){.header,.game-screen .header{padding:12px 3%}.brand-symbol{width:39px;height:39px}.icon-button{width:42px;height:42px}.level-heading{top:13px;max-width:43%;padding:6px 14px}.level-heading .eyebrow{font-size:7px}.level-heading h2{font-size:18px;margin:4px 0}.scoreboard{top:74px;min-width:105px;padding:5px 10px}.scoreboard strong{font-size:23px}.scoreboard>span{font-size:7px}.score-stars{font-size:17px}.hud-bottom{bottom:4%;gap:10px}.queue-panel{padding:5px 8px 7px}.queue-item{width:35px;height:35px}.hud-caption{font-size:6px;margin-bottom:5px}.shot-message{font-size:10px;max-width:350px;padding:8px 11px}.game-actions .icon-button{width:44px;height:44px}.modal{max-height:91%;padding:20px 28px;width:420px}.modal h2{font-size:28px;margin:10px 0}.modal p{font-size:11px;margin:8px 0}.result-face{width:70px;height:70px;margin:-5px auto 5px}.result-stars{font-size:35px;margin:9px 0 5px}.result-score{font-size:28px}.modal-actions{margin-top:14px;gap:9px}.settings-list{margin:15px 0}.settings-list label{padding:10px 0}.primary{padding:11px 19px;min-height:43px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media(max-width:760px){.game-screen .brand>span:last-child{display:block;padding:7px;font-size:17px}}.camera-tools{position:absolute;top:110px;left:4%;display:flex;gap:7px;align-items:center;pointer-events:auto}.camera-tools .pill-button{padding:8px 13px;min-height:38px;font-size:10px}.camera-tools .icon-button{width:37px;height:37px;font-size:20px}.volume-settings{display:flex;flex-direction:column;gap:14px;margin:20px 0}.volume-settings label{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:900}.volume-settings input{width:65%;accent-color:#7e5ec4;min-height:28px}@media(max-width:700px){.camera-tools{top:139px;left:4%;gap:5px}.camera-tools .pill-button{padding:6px 9px;min-height:34px;font-size:9px}.camera-tools .icon-button{width:34px;height:34px}.scoreboard{top:88px}}@media(max-height:500px)and (min-width:700px){.camera-tools{top:80px}.camera-tools .pill-button{min-height:32px}.camera-tools .icon-button{width:32px;height:32px}}.camera-tools .pill-button,.camera-tools .icon-button{min-width:44px;min-height:44px}.camera-tools .icon-button{width:44px;height:44px}.home-screen.title-screen{background:transparent}.home-screen.title-screen:before{display:none}.menu-screen.campaign-screen{background:transparent;overflow:hidden;pointer-events:none!important}.title-menu,.campaign-menu{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;font-family:Trebuchet MS,Avenir Next,Arial,sans-serif}.title-menu button,.campaign-menu button{pointer-events:auto}.title-screen .header .brand{visibility:hidden}.title-screen .header nav,.campaign-screen .header nav{margin-left:auto}.title-screen .header .icon-button,.campaign-screen .header .icon-button{width:51px;height:51px;border:3px solid #242139;background:#fff2ce;box-shadow:4px 5px #242139;color:#242139;border-radius:10px}.title-emblem{position:absolute;width:min(470px,45vw);top:12%;left:50%;transform:translate(-50%) rotate(-4deg);text-align:center}.title-lettering{margin:0;font-family:Impact,Arial Black,Trebuchet MS,sans-serif;font-size:clamp(76px,8.1vw,121px);font-weight:1000;line-height:.84;letter-spacing:-3px;color:#fff2ce;-webkit-text-stroke:9px #242139;paint-order:stroke fill;text-shadow:5px 7px 0 #242139}.title-lettering>span{display:block}.title-lettering>span:last-child{color:#d5ed50;font-size:1.13em;letter-spacing:-3px;margin-top:16px}.title-ribbon{display:inline-block;position:relative;margin-top:24px;padding:8px 27px;transform:rotate(3deg);background:#ff765c;border:3px solid #242139;border-radius:3px 7px 3px 6px;box-shadow:4px 4px #242139;color:#242139;font-size:11px;font-weight:1000;letter-spacing:2.2px}.title-ribbon:before,.title-ribbon:after{content:"";position:absolute;top:7px;bottom:7px;width:8px;border-top:2px solid #242139;border-bottom:2px solid #242139}.title-ribbon:before{left:6px}.title-ribbon:after{right:6px}.title-spark{position:absolute;width:52px;height:78px}.title-spark-left{left:-33px;top:21px;transform:rotate(-16deg)}.title-spark-right{right:-35px;bottom:25px;transform:rotate(18deg)}.title-controls{position:absolute;left:50%;bottom:7%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:20px}.game-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:3px solid #242139;border-radius:9px 4px 10px 5px;background:#27c5bd;color:#242139;box-shadow:4px 5px #242139;font-family:Trebuchet MS,Avenir Next,Arial,sans-serif;font-weight:1000;min-height:50px;padding:10px 22px;cursor:pointer;transition:transform .1s,box-shadow .1s,background .1s;-webkit-tap-highlight-color:transparent}.game-button:hover:not(:disabled){transform:translateY(-3px) rotate(-2deg);background:#6ce1cf;box-shadow:5px 8px #242139}.game-button:active:not(:disabled){transform:translateY(4px);box-shadow:1px 1px #242139}.game-button:focus-visible,.map-stop:focus-visible{outline:4px solid #ff765c;outline-offset:7px}.game-button:disabled{opacity:.4;cursor:default}.title-play{width:240px;min-height:88px;background:#d5ed50;border:4px solid #242139;border-radius:13px 6px 14px 7px;font-family:Impact,Arial Black,Trebuchet MS,sans-serif;font-size:40px;line-height:1;letter-spacing:1.5px;box-shadow:6px 7px #242139;animation:play-breathe 3.6s ease-in-out infinite}.title-play:hover:not(:disabled){background:#e5f777}.title-play svg{width:26px;height:32px;margin-right:3px}.title-secondary{display:flex;gap:16px;white-space:nowrap}.game-button-parchment{background:#bcb2ee;color:#242139;font-size:13px;min-height:47px;border-radius:7px 4px 8px;box-shadow:4px 4px #242139}.game-button-parchment:hover:not(:disabled){background:#d7c9fa}.title-secondary .game-button:last-child{background:#fff2ce;transform:rotate(2deg)}.title-secondary .game-button:first-child{transform:rotate(-2deg)}.title-secondary .game-button:hover{transform:translateY(-3px)}.menu-symbol{width:23px;height:23px;flex-shrink:0;stroke-width:2.4}.menu-star{width:23px;height:23px;fill:#8e85a4;stroke:#242139;stroke-width:1.6px}.menu-star.earned{fill:#ffd44e;stroke:#242139}.map-landscape{position:absolute;top:0;right:0;bottom:0;left:0;background:#68d5cb}.map-landscape>svg{width:100%;height:100%}.map-heading{position:absolute;top:11.5%;left:50%;transform:translate(-50%) rotate(-1deg);display:flex;align-items:center;white-space:nowrap;max-width:85%}.map-world-number{width:66px;height:66px;border:3px solid #242139;border-radius:8px 4px 10px 6px;display:grid;place-items:center;background:#ff765c;color:#242139;font-size:28px;font-weight:1000;box-shadow:4px 5px #242139;z-index:1;transform:rotate(-7deg);flex-shrink:0}.map-world-ribbon{background:#fff2ce;border:3px solid #242139;border-radius:4px 8px 5px 7px;box-shadow:4px 5px #242139;padding:8px 30px 10px 28px;margin-left:-6px;color:#242139;text-align:center}.map-world-caption{display:block;font-size:8px;letter-spacing:2px;font-weight:1000;color:#625777}.map-world-ribbon h1{font-family:Impact,Arial Black,Trebuchet MS,sans-serif;margin:4px 0 0;font-size:clamp(22px,2.7vw,34px);font-weight:1000;line-height:1;letter-spacing:.3px;text-transform:uppercase}.map-star-badge{display:flex;align-items:center;gap:7px;margin-left:20px;padding:10px 13px;border:3px solid #242139;border-radius:7px 4px 8px 5px;background:#d5ed50;box-shadow:4px 4px #242139;transform:rotate(4deg);color:#242139}.map-star-badge .menu-star{width:29px;height:29px}.map-star-badge strong{font-size:23px;line-height:1;font-weight:1000}.map-star-badge small{display:block;margin-top:5px;font-size:10px;font-weight:900;color:#4f4566}.map-trail{position:absolute;left:6%;right:6%;top:26%;bottom:16%}.map-path{position:absolute;width:100%;height:100%;top:0;right:0;bottom:0;left:0;overflow:visible}.map-stop{--node-size: 78px;position:absolute;left:var(--stop-x);top:var(--stop-y);width:140px;border:0;margin:0;padding:0;background:transparent;text-align:center;transform:translate(-50%,calc(var(--node-size) * -.5));color:#242139;cursor:pointer;font:inherit;touch-action:manipulation}.map-node{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:var(--node-size);height:var(--node-size);margin:0 auto;background:#fff2ce;color:#242139;border:3px solid #242139;border-radius:12px 5px 13px 6px;box-shadow:4px 6px #242139;transition:transform .1s,background .1s}.map-node-number{font-family:Impact,Arial Black,Trebuchet MS,sans-serif;font-size:33px;line-height:1;font-weight:1000;padding-top:1px}.map-node-stars{display:flex;justify-content:center;gap:1px;margin-top:4px}.map-node-stars .menu-star{width:16px;height:16px;fill:#b4a8bb;stroke:#242139;stroke-width:1.4px}.map-node-stars .menu-star.earned{fill:#ffd44e;stroke:#242139}.map-node-name{display:block;margin:14px auto 0;padding:5px 7px;max-width:140px;font-size:11px;line-height:1.2;font-weight:1000;text-wrap:balance;background:#fff2ce;border:2px solid #242139;border-radius:3px 6px 3px 5px;box-shadow:2px 2px #242139}.map-stop.is-complete .map-node{background:#27c5bd}.map-stop.is-complete .menu-star:not(.earned){fill:#359b9e;stroke:#242139}.map-stop.is-next .map-node{background:#ff765c;transform:rotate(-4deg)}.map-ready-dot{position:absolute;right:-9px;top:-10px;width:22px;height:22px;border-radius:3px 7px 3px 6px;border:3px solid #242139;background:#d5ed50;box-shadow:2px 2px #242139;transform:rotate(15deg)}.map-stop:hover .map-node{transform:translateY(-4px) rotate(-4deg);background:#d5ed50}.map-stop.is-complete:hover .map-node{background:#6ce1cf}.map-stop:active .map-node{transform:translateY(4px)}.map-footer{position:absolute;bottom:5%;left:5%;right:5%;display:flex;align-items:center;justify-content:space-between;gap:16px}.map-pages{display:flex;align-items:center;gap:20px}.map-page-arrow{width:53px;height:53px;padding:9px;border-radius:8px 4px 9px 5px;background:#fff2ce}.map-page-arrow .menu-symbol{width:25px;height:25px}.map-page-indicator{min-width:95px;text-align:center;color:#242139;background:#fff2ce;border:3px solid #242139;border-radius:6px 3px 7px 4px;box-shadow:3px 4px #242139;padding:6px 11px}.map-page-indicator strong{display:block;font-size:24px;font-weight:1000}.map-page-indicator strong i{font-size:16px;font-style:normal;color:#7e6b9b;padding:0 8px}.map-page-indicator small{display:block;font-size:8px;letter-spacing:1px;margin-top:4px;font-weight:1000}.map-home{background:#fff2ce}.map-workshop{background:#bcb2ee}@keyframes play-breathe{0%,85%,to{scale:1}92%{scale:1.035}}@media(max-height:700px){.title-emblem{top:10%}.title-lettering{font-size:clamp(69px,7.8vw,100px)}.title-ribbon{margin-top:20px;padding-top:5px;padding-bottom:5px;font-size:9px}.title-controls{gap:15px;bottom:5%}.title-play{width:210px;min-height:74px;font-size:35px}.title-secondary .game-button{min-height:43px;font-size:12px;padding:7px 18px}.map-heading{top:12%}.map-world-number{width:54px;height:54px;font-size:24px}.map-world-ribbon{padding-top:7px;padding-bottom:7px}.map-world-ribbon h1{font-size:25px}.map-trail{top:27%;bottom:17%}.map-stop{--node-size: 65px}.map-node-number{font-size:27px}.map-node-stars .menu-star{width:14px;height:14px}.map-node-name{margin-top:10px;font-size:10px}.map-footer{bottom:4%}.map-page-arrow{width:47px;height:47px;min-height:47px}}@media(max-width:760px){.title-emblem{width:72vw;top:16%}.title-lettering{font-size:clamp(70px,15vw,100px);-webkit-text-stroke-width:7px;letter-spacing:-2px}.title-lettering>span:last-child{letter-spacing:-2px;margin-top:13px}.title-spark{width:36px;height:57px}.title-spark-left{left:-13px}.title-spark-right{right:-13px}.title-controls{bottom:9%}.title-play{width:210px;min-height:78px;font-size:36px}.title-secondary{gap:13px}.title-secondary .game-button{padding:10px 15px;font-size:12px}.title-screen .header .icon-button,.campaign-screen .header .icon-button{width:43px;height:43px}.campaign-screen .header .brand-symbol{width:38px;height:38px}.map-heading{top:15%;max-width:94%}.map-world-number{width:43px;height:47px;font-size:21px}.map-world-ribbon{padding:8px 13px 8px 16px;border-width:3px}.map-world-ribbon h1{font-size:20px}.map-world-caption{font-size:6px;letter-spacing:1.4px}.map-star-badge{margin-left:10px;padding:8px;gap:5px}.map-star-badge .menu-star{width:23px;height:23px}.map-star-badge strong{font-size:19px}.map-star-badge small{font-size:8px}.map-trail{top:27%;left:4%;right:4%;bottom:17%}.map-stop{--node-size: 61px;width:105px}.map-node-number{font-size:26px}.map-node-stars .menu-star{width:13px;height:13px}.map-node-name{font-size:9px;max-width:100px;margin-top:10px;padding:4px}.map-footer{left:5%;right:5%;bottom:5%;gap:8px}.map-home,.map-workshop{width:45px;min-height:45px;padding:9px}.map-home>span,.map-workshop>span{display:none}.map-pages{gap:12px}.map-page-arrow{width:45px;height:45px;min-height:45px;padding:8px}.map-page-indicator{min-width:73px;padding:4px 7px}.map-page-indicator strong{font-size:21px}.map-page-indicator small{font-size:7px}}@media(max-height:480px)and (min-width:700px){.title-emblem{top:8%}.title-lettering{font-size:63px}.title-ribbon{margin-top:16px;font-size:7px;padding:5px 21px}.title-controls{bottom:4%;gap:11px}.title-play{min-height:59px;width:180px;font-size:31px}.title-secondary .game-button{min-height:38px;padding:5px 14px;font-size:10px}.title-secondary .menu-symbol{width:18px;height:18px}.map-heading{top:8%}.map-world-ribbon h1{font-size:21px}.map-world-caption{font-size:6px}.map-world-number{width:47px;height:47px}.map-star-badge{padding:7px 10px}.map-trail{top:24%;bottom:19%}.map-stop{--node-size: 53px}.map-node{border-width:3px}.map-node-number{font-size:23px}.map-node-stars{margin-top:2px}.map-node-stars .menu-star{width:11px;height:11px}.map-node-name{margin-top:9px;font-size:9px}.map-footer{bottom:3%}.map-pages{gap:15px}.map-page-arrow{min-height:38px;width:39px;height:39px}.map-page-indicator{padding:3px 9px;min-width:84px}.map-page-indicator strong{font-size:17px}.map-page-indicator small{font-size:6px;margin-top:1px}.map-home,.map-workshop{min-height:38px;padding:5px 13px;font-size:11px}}.gentle-motion .title-menu *,.gentle-motion .campaign-menu *{animation:none!important;transition:none!important}@media(prefers-reduced-motion:reduce){.title-menu *,.campaign-menu *{animation:none!important;transition:none!important}}@media(max-width:480px){.map-stop{width:min(82px,21vw)}.map-node-name{max-width:100%;font-size:8.5px;padding:4px 3px}}.world-screen{background:#66cfc9;overflow:auto;pointer-events:auto!important}.world-menu{position:absolute;top:90px;right:5%;bottom:20px;left:5%;text-align:center;color:#242139}.world-menu h1{font-size:clamp(24px,3.4vw,45px);letter-spacing:-1.5px;margin:5px 0 28px;text-shadow:2px 2px #fff2ce}.world-portals{display:flex;flex-wrap:wrap;justify-content:center;gap:20px;margin:0 auto 30px;max-width:1300px}.world-portal{position:relative;display:flex;align-items:center;flex-direction:column;width:calc(20% - 20px);min-width:170px;max-width:240px;min-height:295px;background:var(--world-color);border:4px solid #242139;border-radius:16px 6px 14px 8px;box-shadow:6px 7px #242139;transform:rotate(-1deg);padding:28px 12px 18px;cursor:pointer;color:#242139;touch-action:manipulation}.world-portal:nth-child(2n){transform:rotate(1.4deg)}.world-portal:hover{transform:translateY(-6px) rotate(0)}.world-portal>svg{width:100%;height:125px;background:var(--world-accent);border:3px solid #242139;border-radius:7px;margin-bottom:15px}.world-portal strong{font-size:20px;line-height:1.2;text-transform:uppercase;font-weight:900;letter-spacing:-.7px}.world-portal>span:not(.world-number){font-size:10px;font-weight:800;margin:10px 0}.world-portal small{font-size:9px;font-weight:800;background:#fff2ce;border:2px solid #242139;padding:8px;border-radius:4px;margin-top:auto}.world-number{position:absolute;left:10px;top:-15px;background:var(--world-accent);padding:6px 10px;border:3px solid #242139;font-size:15px;font-weight:900;transform:rotate(-5deg)}.campaign-menu[data-world-theme=frozen] .map-landscape{filter:hue-rotate(35deg) saturate(.85)}.campaign-menu[data-world-theme=molten] .map-landscape{filter:hue-rotate(220deg) saturate(1.6)}.campaign-menu[data-world-theme=haunted] .map-landscape{filter:hue-rotate(110deg)}.campaign-menu[data-world-theme=orbital] .map-landscape{filter:hue-rotate(95deg) brightness(.8)}@media(max-width:1000px){.world-menu{top:100px;right:4%;bottom:15px;left:4%}.world-menu h1{margin-bottom:26px}.world-portals{gap:18px}.world-portal{width:28%;min-height:240px;max-width:220px}.world-portal>svg{height:90px}.world-portal strong{font-size:17px}.world-portal>span:not(.world-number){font-size:9px}}@media(max-width:600px){.world-menu{top:95px;right:5%;bottom:20px;left:5%}.world-menu h1{font-size:26px}.world-portal{min-width:135px;width:44%;min-height:220px;padding:22px 9px 12px}.world-portal>svg{height:85px}.world-portal strong{font-size:15px}.world-portal small{font-size:8px;padding:6px}.world-portals{gap:24px 14px}}@media(max-height:500px)and (min-width:700px){.world-menu{top:75px;right:3%;bottom:10px;left:3%}.world-menu h1{font-size:24px;margin:0 0 20px}.world-portals{gap:12px;flex-wrap:nowrap;margin-bottom:15px}.world-portal{min-width:0;width:19%;min-height:185px;padding:18px 7px 10px}.world-portal>svg{height:70px;margin-bottom:7px}.world-portal strong{font-size:14px}.world-portal>span:not(.world-number){font-size:8px;margin:6px}.world-portal small{font-size:7px;padding:5px}.world-menu>.game-button{min-height:35px;padding:6px 15px}}@media(max-width:600px){.title-secondary{gap:6px}.title-secondary .game-button{padding:9px 10px;font-size:10px;min-height:42px}.title-secondary .menu-symbol{width:18px;height:18px}}
