@import"https://fonts.googleapis.com/css2?family=Jua&family=Noto+Sans+KR:wght@500;700;900&display=swap";@import"https://fonts.googleapis.com/css2?family=Jua&family=Noto+Sans+KR:wght@600;800;900&display=swap";body{font-family:Noto Sans KR,Malgun Gothic,sans-serif;background:#254246}button{font:inherit;cursor:pointer;border:0;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:disabled{cursor:default}button:focus-visible{outline:4px solid #0369a1;outline-offset:2px}button:active:not(:disabled){transform:translateY(2px)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#123e3ba6;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:grid;place-items:center;padding:2vw}.dialog{width:min(760px,85vw);max-height:94dvh;overflow:auto;background:#fff8e8;border:7px solid #ddc393;border-radius:28px;padding:3vh 3vw;box-shadow:0 20px 70px #14292299;color:#3d4e40}.dialog h2{font:clamp(28px,3vw,42px) Jua,sans-serif;margin:1vh 0 2vh}.dialog li{font-size:clamp(16px,1.5vw,23px);padding:.7vh 0;line-height:1.6}.dialog p{font-size:clamp(13px,1.1vw,18px)}.dialog .primary{width:100%;font-size:clamp(20px,1.7vw,28px);margin-top:1vh;min-height:64px;background:linear-gradient(#ffce6d,#ec963a);box-shadow:0 4px #946124;border:2px solid #fff2c0;border-radius:1.2vh;color:#503917;font-weight:900;padding:1vh .5vw}.results{display:flex;gap:10px;margin:20px 0}.results>div{flex:1;border:3px solid;border-radius:15px;display:grid;text-align:center;padding:15px}.results strong{font-size:36px}@media(max-height:600px){.dialog{padding:2vh 3vw}.dialog li{padding:0}}.workshop{height:100dvh;display:flex;flex-direction:column;background:url(/assets/bg.png) center/cover;position:relative;overflow:hidden;color:#463a2d}.workshop-header{height:15%;flex-shrink:0;display:flex;justify-content:center;align-items:center;position:relative;padding:1vh 2vw}.sign{background:linear-gradient(#936b42,#533d2d);border:5px ridge #d4ae70;border-radius:1.6vh;box-shadow:0 5px #352b2488;padding:.8vh 2.5vw;color:#fff1c4}.sign h1{font:clamp(28px,3.3vw,56px) Jua,sans-serif;margin:0;text-shadow:0 3px #4a3525}.tools{position:absolute;right:1vw;top:1vh;display:flex;gap:.4vw;font-size:clamp(10px,.9vw,15px)}.tools button,.tools>span{background:#fff6dfdf;color:#345053;border:1px solid #cab88a;border-radius:1vh;padding:.5vh .6vw;white-space:nowrap}.work-stage{height:37%;flex-shrink:0;position:relative;padding:1vh 3vw;min-height:0}.work-lanes{height:46%;display:grid;grid-template-columns:repeat(var(--players),minmax(0,1fr));gap:.8vw;padding:0 1vw 1vh;flex-shrink:0;min-height:0}.work-panel{min-width:0;min-height:0;position:relative;display:flex;flex-direction:column;gap:.8vh;border:5px solid var(--tint);border-radius:2vh;background:linear-gradient(120deg,#fff9e9f5,#e5d8bdf2);box-shadow:inset 0 0 0 2px #fff9,0 5px #4b3c3166;padding:1vh .8vw;isolation:isolate}.panel-label{display:flex;align-items:center;justify-content:space-between;gap:.3vw;border-radius:1vh;background:linear-gradient(#fff2,#0001),var(--tint);color:#fff;padding:.4vh .5vw;min-height:4.5vh;margin:-1.1vh -.65vw .5vh;font-weight:900;font-size:clamp(12px,1.15vw,19px);box-shadow:0 3px #5d574755}.panel-label b{font:clamp(20px,2vw,34px) Jua}.panel-label small{font-size:.72em}.work-panel button{touch-action:manipulation}.prompt-box,.sequence{background:#fff8e9;border:2px solid #c9b994;border-radius:1vh;padding:.7vh .5vw;text-align:center;font-weight:700;font-size:clamp(14px,1.3vw,22px);line-height:1.45}.number-options,.options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6vw}.options button,.number-options button,.key{min-height:5.8vh;border:2px solid #fff8;border-radius:1vh;background:linear-gradient(#fffdf5,#e7daba);box-shadow:0 4px #a78d68;color:#403a31;font:700 clamp(15px,1.5vw,25px)/1.3 "Malgun Gothic","Noto Sans KR",sans-serif;padding:.7vh .3vw}.options button.selected,.number-options button.selected,.key.selected{background:linear-gradient(#fff4a8,#ffd370);outline:3px solid var(--tint);outline-offset:-2px}.confirm,.aux{border:2px solid #fff8;border-radius:1.3vh;padding:.7vh .4vw;min-height:5.8vh;background:linear-gradient(#fff3,#0001),var(--tint,#4b9f77);box-shadow:inset 0 2px #fff6,0 4px #4d655c;color:#fff;font-weight:900;font-size:clamp(13px,1.2vw,21px)}.confirm:disabled,.aux:disabled{background:#c6c7b6;color:#737969;box-shadow:0 3px #999c8d;cursor:default}.aux{background:linear-gradient(#fff1a0,#e4b64d);color:#584320;box-shadow:0 4px #9a7b36}.work-actions{display:flex;gap:.5vw;margin-top:auto;flex-shrink:0}.work-actions>button{flex:1;min-width:0}.feedback{min-height:3.8vh;line-height:1.4;font-size:clamp(11px,.96vw,16px);padding:.4vh .3vw;text-align:center;color:#36544b;font-weight:700;background:#fffbeecc;border-radius:.8vh;display:flex;align-items:center;justify-content:center}.work-footer{height:2%;text-align:center;font-size:clamp(9px,.8vw,14px);color:#fff;text-shadow:0 1px 3px #000;background:#243e4455;flex-shrink:0}.atlas{width:100%;height:100%;display:block;overflow:hidden}.shared-board{background:#fff7e6ef;border:4px ridge #c7ac79;border-radius:1.4vh;padding:1vh 1.5vw;box-shadow:0 4px #66523777;text-align:center}.shared-board h2{font:clamp(19px,2vw,34px) Jua;margin:.4vh 0}.shared-board p{font-size:clamp(12px,1.1vw,19px);margin:.5vh 0}.goal-done{flex:1;display:grid;place-content:center;text-align:center;color:#417257;gap:1vh;font-size:clamp(14px,1.3vw,22px)}.goal-done strong{font:clamp(25px,2.7vw,44px) Jua}.slot-strip{display:flex;gap:.5vw;justify-content:center;align-items:center}.slot-strip span{background:#fff9e7;border:2px solid #c7b995;border-radius:.6vh;padding:.7vh .5vw;min-width:3vw;font:700 clamp(20px,2vw,34px) "Malgun Gothic",sans-serif;text-align:center}.slot-strip .empty{border-style:dashed;color:#ad9c7e;background:#fff5c3}.status-badge{background:#fff9e6;border:2px solid #cab480;border-radius:2vh;padding:.4vh 1vw;font-size:clamp(12px,1.1vw,19px);font-weight:900}.gauge-bottle{width:100%;height:100%;overflow:visible}@media(max-height:650px){.tools>span{display:none}.work-panel{gap:.5vh;padding:.8vh .7vw}.feedback{font-size:11px;min-height:3.5vh}.sign h1{font-size:clamp(23px,3vw,40px)}}*{box-sizing:border-box}html,body,#root{margin:0;width:100%;height:100%;overflow:hidden}button{font:inherit}.shape-detective{height:100vh;overflow:hidden;background:#0d3152 url(/assets/museum-bg.png) center/cover no-repeat;color:#2d211b;font-family:Noto Sans KR,Malgun Gothic,sans-serif}.shape-detective .workshop-header{height:10vh;position:relative;z-index:3;background:transparent;padding:.5vh 1vw}.shape-detective .sign{background:linear-gradient(#253c5c,#101f35);border-color:#f0c45c;box-shadow:0 4px #704718,0 0 20px #ffe27b88}.shape-detective .sign h1{color:#ffe5a0;text-shadow:0 3px 0 #7d4b12;font-size:clamp(25px,2.7vw,45px)}.shape-detective .tools{background:#fff7dfdc;border-radius:1vh;padding:.35vh .5vw}.museum-lanes{height:89vh;display:grid;grid-template-columns:repeat(var(--players),minmax(0,1fr));gap:.75vw;padding:1.5vh 6.2vw 4.5vh}.shape-detective .work-panel{min-width:0;background:transparent;border:0;box-shadow:none;padding:0 .5vw;overflow:visible}.shape-detective .panel-label{height:4.8vh;width:54%;margin:-.5vh auto .7vh;border:3px solid #ffe096;border-radius:2vh;background:linear-gradient(#344b68,#18283e);box-shadow:0 3px #6d4618,0 0 12px var(--tint);color:#fff}.shape-detective .panel-label b{font-size:clamp(16px,1.45vw,25px)}.shape-detective .panel-label span{display:none}.shape-detective .panel-label small{display:block;font-weight:900;font-size:clamp(10px,.78vw,13px)}.condition-card{height:32vh;margin:0 .55vw 6.8vh;padding:1.3vh .6vw .5vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.museum-lanes>.work-panel:nth-child(1) .condition-card{transform:translate(1.17vw)}.museum-lanes>.work-panel:nth-child(2) .condition-card{transform:translate(.3vw)}.museum-lanes>.work-panel:nth-child(3) .condition-card{transform:translate(-.42vw)}.museum-lanes>.work-panel:nth-child(4) .condition-card{transform:translate(-1.22vw)}.condition-card h2{margin:0;font:clamp(16px,1.3vw,23px) Jua;line-height:1.12;color:#33231c}.condition-card .shape-icon{height:17vh;margin:.3vh 0;color:var(--tint);filter:drop-shadow(0 5px 5px #2c1c1666)}.condition-card p{margin:0;font-size:clamp(9px,.7vw,12px);font-weight:900;color:#634a36}.shape-choices{height:25.5vh;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));align-items:stretch;justify-items:stretch;gap:.9vh .55vw;margin:0 1.35vw}.museum-lanes>.work-panel:nth-child(1) .shape-choices{transform:translate(.8vw)}.museum-lanes>.work-panel:nth-child(2) .shape-choices{transform:translate(.52vw)}.museum-lanes>.work-panel:nth-child(3) .shape-choices{transform:translate(-.45vw)}.museum-lanes>.work-panel:nth-child(4) .shape-choices{transform:translate(-.94vw)}.shape-choices button{width:100%;height:100%;min-width:0;border:0;border-radius:0;background:transparent;box-shadow:none;padding:0;display:grid;grid-template-rows:auto auto;place-content:center;place-items:center;row-gap:.15vh;color:var(--tint);text-align:center;transition:.15s}.shape-choices .shape-icon{display:block;width:82%;height:7.1vh;margin:0 auto;filter:drop-shadow(0 3px 3px #452d2455)}.shape-choices span{display:block;width:100%;margin:0;text-align:center;font-size:clamp(9px,.72vw,13px);font-weight:900;color:#38291f;line-height:1}.shape-choices button.selected{background:transparent;transform:translateY(-2px);box-shadow:none}.shape-choices button.selected .shape-icon{filter:drop-shadow(0 0 9px #fff) drop-shadow(0 0 8px var(--tint))}.shape-choices button.selected span{color:#8a4e00;text-shadow:0 0 5px #fff}.shape-choices button.wrong{animation:shake .45s;background:transparent}.detective-message{height:3.7vh;margin:.55vh .2vw 0;text-align:center;font-size:clamp(9px,.67vw,12px);font-weight:900;line-height:1.15;color:#fff9df;text-shadow:0 2px 2px #000;padding:.35vh}.detective-message.correct{color:#d8ffad}.detective-actions{display:flex;gap:.45vw;height:5.5vh}.detective-actions button{flex:1;border:3px solid #f2d684;border-radius:1.4vh;font-weight:900;font-size:clamp(13px,1vw,18px);box-shadow:0 4px #523816}.detective-actions .hint{background:linear-gradient(#fff1ac,#dca833);color:#543713}.detective-actions .check{background:linear-gradient(#fff,#bceeff 25%,var(--tint));color:#fff;text-shadow:0 2px 2px #17304a}.detective-actions .check:disabled{filter:grayscale(.7);opacity:.55}.lane-complete{height:71vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff7cf;text-shadow:0 3px 3px #000}.lane-complete span{font-size:8vh;color:var(--tint);filter:drop-shadow(0 0 13px white)}.lane-complete strong{font:clamp(18px,1.55vw,28px) Jua}.lane-complete p{font-size:clamp(11px,.85vw,15px)}.detective-result{text-align:center}.result-gem{font-size:9vh;color:#7b48e8;text-shadow:0 0 18px #8fe9ff}.completion-row{display:flex;justify-content:center;gap:1vw;margin:2vh}.completion-row span{padding:1vh 1.3vw;border:3px solid #d2a84c;border-radius:1vh;background:#fff5c8;font-weight:900}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-7px)}75%{transform:translate(7px)}}@media(max-width:1000px){.museum-lanes{padding-left:5.2vw;padding-right:5.2vw;gap:.2vw}.condition-card{margin-bottom:6vh}.shape-detective .work-panel{padding:0 .25vw}}
