.level-dialog,.character-dialog{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;overflow:hidden;border:0;border-radius:0;background:transparent}.level-dialog::backdrop,.character-dialog::backdrop{background:linear-gradient(90deg,#102c24f2 0%,#122e25ba 30%,#173b2b30 61%,#173b2b05),linear-gradient(0deg,#112e28f5 0%,#102d26d9 17%,transparent 42%);backdrop-filter:none}.catalog-header{position:absolute;z-index:3;left:5.2%;right:5.2%;top:4.5%;display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.catalog-header h2{font:28px var(--serif);color:#eee5bf;margin:9px 0 0;letter-spacing:-.6px}.catalog-header .eyebrow{font-size:7px;color:#b1c59c;letter-spacing:2px}.catalog-header-right{display:flex;align-items:center;gap:24px}.catalog-progress{font-size:10px;color:#cad8b0;letter-spacing:.4px}.catalog-filters{position:absolute;z-index:3;left:5.2%;right:5.2%;top:16%;display:flex;align-items:center;justify-content:space-between;gap:20px}.catalog-filters>div{display:flex;gap:24px}.catalog-filters button{background:none;border:0;border-bottom:2px solid transparent;color:#b2c49e;font-size:12px;font-weight:500;letter-spacing:.3px;padding:6px 0 10px}.catalog-filters button.active{color:#f1cd8b;border-bottom-color:#e8c282}.catalog-filters button:hover{color:#f1dfb3}.catalog-filters select{background:#173d2b4d;color:#c0cda6;border:1px solid #c2d5a12e;font-size:10px;padding:7px 9px}.catalog-body{display:contents}.catalog-levels{position:absolute;left:5.2%;right:5.2%;bottom:10.5%;height:151px;z-index:3}.level-grid{height:100%;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:15px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;padding:5px 3px 5px}.level-card{position:relative;background:transparent;border:0;border-bottom:2px solid #c5d4a222;border-radius:0;padding:5px 4px 8px;color:#d6dfba;text-align:left;min-width:0;transition:transform .15s,border-color .15s,background .15s}.level-card:hover{transform:translateY(-3px);background:#b9cd9a0b;border-bottom-color:#d3ce975c}.level-card.selected{border-bottom-color:#edc47e;background:linear-gradient(0deg,#ddca8a10,transparent)}.level-card:focus-visible{outline:2px solid #f1ca80;outline-offset:-2px}.level-thumbnail{display:block;position:relative;height:86px;overflow:hidden;border-radius:4px;border:1px solid #c4d6aa33;opacity:.55;transition:opacity .2s,border-color .2s}.level-card.selected .level-thumbnail,.level-card:hover .level-thumbnail{opacity:1;border-color:#f2d49590}.level-thumbnail svg{height:100%;width:100%;display:block}.level-number{position:absolute;left:7px;top:6px;font-size:8px;letter-spacing:.7px;background:#193b2c66;border:1px solid #e5e2b426;padding:3px 4px;border-radius:3px;color:#f1e6c0}.level-tick{position:absolute;right:6px;top:5px;font-size:11px;color:#f2d08b}.level-card-copy{display:block;padding:8px 2px 0}.level-card-copy>small{display:none}.level-card-copy>strong{display:block;font-size:11px;line-height:1.3;font-weight:500;color:#c0d1a8}.level-card.selected .level-card-copy>strong{color:#f0d29a}.level-card-meta{display:none}.selection-mark{display:none}.level-detail{position:absolute;left:5.2%;top:29%;bottom:30.5%;width:32%;min-width:285px;max-width:430px;z-index:3;color:#ebdfbc}.detail-content{height:100%;display:flex;flex-direction:column;align-items:flex-start}.detail-content>.eyebrow{font-size:8px;color:#d8bd82;letter-spacing:2px;margin-bottom:10px}.detail-content h3{font:clamp(30px,3.5vw,58px)/1.08 var(--serif);letter-spacing:-1.5px;color:#f1e5c1;margin:0 0 17px;font-weight:400}.detail-content>p:not(.detail-tip):not(.launch-context){font-size:12px;line-height:1.8;color:#c2d1ad;margin:0 0 18px;max-width:390px}.detail-facts{display:flex;flex-wrap:wrap;gap:9px 14px;align-items:center;color:#bdcba2;font-size:9px;line-height:1.6;margin:0 0 12px}.detail-facts>span+span:before{content:'·';margin-right:12px;color:#6e9c76}.difficulty-dots{display:inline-flex;gap:3px;margin-right:6px;vertical-align:middle}.difficulty-dots i{width:3px;height:8px;background:#aabf8544;border-radius:1px}.difficulty-dots i.filled{background:#d2bd7e}.detail-record{font-size:10px;color:#b5c69c;line-height:1.7;margin:0 0 13px}.detail-record strong{color:#eed08c;font-variant-numeric:tabular-nums;font-weight:500}.detail-content .detail-tip{font-size:10px;line-height:1.7;color:#9bb58e;max-width:350px;margin:0 0 18px;display:none}.level-launch-row{display:flex;align-items:center;gap:10px;margin-top:8px}.level-launch-row .button{min-width:175px;min-height:46px;font-size:13px}.arrow-button{height:37px;width:32px;display:grid;place-items:center;border:1px solid #d0dab83b;border-radius:5px;background:#21453133;color:#d3dab0;font:26px var(--serif)}.arrow-button:hover{border-color:#dec488;color:#edcf96}.detail-content .launch-context{font-size:8px;line-height:1.5;color:#9ab58c;margin:12px 0 0}.catalog-footer{position:absolute;left:5.2%;right:5.2%;bottom:3.7%;display:flex;justify-content:space-between;align-items:center;color:#a6bc96;font-size:9px;z-index:3}.catalog-footer>span{display:flex;align-items:center;gap:9px}.catalog-footer kbd{font-size:8px;padding:4px 7px}.catalog-footer>span>span{color:#809f7c;margin:0 3px}.empty-levels{position:absolute;left:0;right:0;top:0;text-align:center;padding:10px;color:#c1cfaa}.empty-levels h3{font:27px var(--serif);margin:0 0 12px}.empty-levels p{font-size:12px}.empty-levels .text-button{color:#f0c987}.catalog-body.no-results .catalog-levels{height:190px;bottom:25%}.character-dialog::backdrop{background:linear-gradient(90deg,#15362cdd 0%,#15362c88 32%,transparent 65%),linear-gradient(0deg,#15352ded,transparent 37%)}.character-copy{position:absolute;left:9%;top:38%;width:35%;max-width:400px;color:#e8dfba}.character-copy h3{font:clamp(38px,5vw,75px)/1.1 var(--serif);font-weight:400;letter-spacing:-1.5px;margin:0 0 14px}.character-copy>p{font-size:14px;line-height:1.7;color:#cfdbb9;margin:0}.character-copy .character-fairness{font-size:10px;color:#97b28b;margin-top:24px;line-height:1.7;max-width:260px}.character-bottom{position:absolute;left:9%;right:9%;bottom:9%;display:flex;align-items:center;gap:35px;justify-content:center;flex-wrap:wrap}.animal-picker{display:flex;gap:12px;align-items:center;justify-content:center}.animal-picker button{width:85px;height:85px;display:flex;align-items:center;justify-content:center;flex-direction:column;background:#23463055;border:1px solid #b6ca9640;border-radius:7px;font-size:31px;transition:transform .15s,border-color .15s,background .15s}.animal-picker button>span{display:block;font-size:9px;line-height:1.4;color:#becda9;margin-top:5px}.animal-picker button.selected{background:#d7c48917;border:2px solid #e7c68a;transform:translateY(-5px)}.animal-picker button:hover{border-color:#e4cb96;transform:translateY(-5px)}.character-bottom>.button{min-width:150px}.input-hint{font-size:9px;color:#a2bc91;flex-basis:100%;text-align:center;margin-top:4px}.character-dialog .catalog-header{left:7%;right:7%}
@media(min-width:1500px) and (min-height:850px){.detail-content .detail-tip{display:block}.detail-content>p:not(.detail-tip):not(.launch-context){font-size:14px}.detail-facts{font-size:11px}.detail-record{font-size:11px}.level-card-copy>strong{font-size:13px}.level-thumbnail{height:102px}.catalog-levels{height:174px}.level-launch-row .button{font-size:15px;min-width:200px;min-height:50px}}
@media(max-width:1100px){.catalog-header h2{font-size:25px}.level-detail{width:37%;max-width:355px;top:29%;bottom:31%}.detail-content h3{font-size:40px}.detail-content>p:not(.detail-tip):not(.launch-context){font-size:11px;line-height:1.8}.detail-facts{font-size:8px;gap:8px 11px}.detail-record{font-size:9px}.level-grid{gap:10px}.level-thumbnail{height:79px}.level-card-copy>strong{font-size:10px}.catalog-levels{height:143px}.character-bottom{left:6%;right:6%;gap:22px}.animal-picker{gap:9px}.animal-picker button{width:75px;height:78px}.character-copy{left:8%;width:39%}}
@media(max-height:760px) and (min-width:701px){.catalog-header{top:4%}.catalog-header h2{font-size:23px;margin-top:7px}.catalog-header .eyebrow{font-size:6px}.catalog-filters{top:17%}.catalog-filters button{font-size:10px;padding-bottom:7px}.level-detail{top:29%;bottom:31%;max-width:350px}.detail-content h3{font-size:35px;margin-bottom:12px}.detail-content>.eyebrow{font-size:7px;margin-bottom:8px}.detail-content>p:not(.detail-tip):not(.launch-context){font-size:10px;line-height:1.7;margin-bottom:12px}.detail-facts{font-size:8px;margin-bottom:7px}.detail-record{font-size:8px;margin-bottom:7px}.level-launch-row{margin-top:5px;gap:7px}.level-launch-row .button{min-height:40px;padding:9px 15px;min-width:150px;font-size:12px}.arrow-button{height:32px;width:28px}.detail-content .launch-context{margin-top:7px;font-size:7px}.catalog-levels{bottom:11%;height:132px}.level-thumbnail{height:70px}.level-card-copy>strong{font-size:10px}.catalog-footer{bottom:4%;font-size:8px}.catalog-footer kbd{font-size:7px}.character-copy{top:33%}.animal-picker button{width:70px;height:72px;font-size:26px}.character-bottom{bottom:7%;gap:20px}.character-copy h3{font-size:48px}.character-copy>p{font-size:12px}}
@media(max-width:700px){.catalog-header{top:4%;left:6%;right:6%}.catalog-header .eyebrow{font-size:6px;letter-spacing:1.2px}.catalog-header h2{font-size:24px}.catalog-header-right{gap:12px}.catalog-progress{display:none}.close-dialog{height:30px;width:30px;font-size:21px}.catalog-filters{top:16%;left:6%;right:6%;gap:9px}.catalog-filters>div{gap:17px}.catalog-filters button{font-size:10px}.catalog-filters select{font-size:8px;padding:6px;max-width:122px}.level-detail{top:29%;left:6%;bottom:30%;width:65%;max-width:345px;min-width:0}.detail-content h3{font-size:37px;margin-bottom:13px;letter-spacing:-1px}.detail-content>.eyebrow{font-size:6px;letter-spacing:1.5px;margin-bottom:9px}.detail-content>p:not(.detail-tip):not(.launch-context){font-size:11px;line-height:1.8;margin-bottom:14px;max-width:285px}.detail-facts{font-size:8px;gap:5px 9px;margin-bottom:10px}.detail-facts>span+span:before{margin-right:8px}.detail-record{font-size:8px;margin-bottom:9px}.level-launch-row{gap:7px}.level-launch-row .button{min-width:150px;min-height:43px;font-size:12px;padding:11px 16px}.arrow-button{width:29px;height:34px}.detail-content .launch-context{font-size:7px;max-width:240px;margin-top:8px}.catalog-levels{left:5%;right:5%;bottom:9.5%;height:132px}.level-grid{display:flex;gap:9px;padding:6px 3px}.level-card{flex:none;width:134px;min-width:134px}.level-thumbnail{height:71px}.level-card-copy>strong{font-size:10px}.catalog-footer{left:6%;right:6%;bottom:3.2%;font-size:7px;gap:10px}.catalog-footer kbd{font-size:7px;padding:3px 5px}.catalog-footer>span{gap:5px}.catalog-footer>span>span{margin:0}.catalog-footer>span:last-child{font-size:0}.catalog-footer>span:last-child kbd{font-size:7px}.catalog-body.no-results .catalog-levels{bottom:29%;height:190px}.character-copy{left:8%;top:35%;width:63%;max-width:300px}.character-copy h3{font-size:44px}.character-copy>p{font-size:12px}.character-copy .character-fairness{font-size:9px;margin-top:18px;max-width:220px}.character-bottom{left:5%;right:5%;bottom:6%;gap:20px}.animal-picker{gap:7px;width:100%}.animal-picker button{width:59px;height:69px;font-size:25px}.animal-picker button>span{font-size:7px}.character-bottom>.button{min-height:42px;min-width:160px;font-size:12px}.input-hint{font-size:7px;margin-top:-5px}.character-dialog .catalog-header{left:6%;right:6%}}
@media(max-height:550px){.catalog-header h2{font-size:20px}.catalog-filters{top:19%}.level-detail{top:33%;width:40%;bottom:25%}.detail-content h3{font-size:27px;margin-bottom:10px}.detail-content>p:not(.detail-tip):not(.launch-context),.detail-record,.detail-content .launch-context{display:none}.detail-facts{margin-bottom:7px}.catalog-levels{bottom:8%;height:100px;left:49%;right:4%}.level-grid{display:flex;gap:8px}.level-card{min-width:110px;width:110px;flex:none}.level-thumbnail{height:52px}.level-card-copy>strong{font-size:9px}.catalog-footer{bottom:3%}.welcome{top:17%}.game-title{font-size:60px}.title-caption{margin:10px 0 18px;font-size:6px}.home-action{font-size:20px;padding-top:1px;padding-bottom:1px}.home-action.minor{font-size:13px}.home-input-hint{margin-top:16px}.home-caption{display:none}.character-copy{top:32%;width:38%}.character-copy h3{font-size:34px}.character-bottom{left:45%;right:5%;bottom:9%;gap:12px}.animal-picker{gap:6px}.animal-picker button{width:50px;height:57px;font-size:22px}.character-bottom>.button{min-height:35px;font-size:11px}.character-copy .character-fairness{margin-top:16px}}
