:root{--pink-100:#ffeaf0;--pink-300:#f3b8ca;--pink-500:#dc789c;--raspberry:#8f3157;--cream:#fff9e8;--yellow:#ffd94f;--cocoa:#705d4d;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--ease-wobble:cubic-bezier(.37, 0, .63, 1);--ease-out-back:cubic-bezier(.34, 1.56, .64, 1)}*{box-sizing:border-box}html,body{min-height:100%;margin:0;overflow:hidden}body{color:var(--cocoa);background:var(--pink-300);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;font-family:ui-rounded,Arial Rounded MT Bold,Noto Sans KR,system-ui,sans-serif}button{font:inherit;color:inherit}.pin-screen{min-height:100dvh;padding:max(18px, env(safe-area-inset-top)) 18px max(18px, env(safe-area-inset-bottom));background:radial-gradient(circle at 14% 17%,#ffffff85 0 6px,#0000 7px),radial-gradient(circle at 82% 76%,#ffffff61 0 9px,#0000 10px),linear-gradient(145deg,#ffdce7,#efa9c0 70%,#e695b3);place-items:center;display:grid;overflow:hidden}.pin-card{text-align:center;width:min(100%,390px);animation:card-in .42s var(--ease-out) both;background:#fffaf3db;border:2px solid #ffffff9e;border-radius:42px 38px 46px 35px;padding:144px 30px 28px;position:relative;box-shadow:0 24px 70px #76264938,inset 0 1px #ffffffe6}.pin-loopy{pointer-events:none;width:260px;height:260px;position:absolute;top:-118px;left:50%;transform:translate(-50%)}.pin-loopy img{object-fit:contain;filter:drop-shadow(0 15px 16px #77304c24);width:100%;height:100%}.pin-question{color:var(--raspberry);letter-spacing:-.035em;margin:2px 0 10px;font-size:clamp(25px,7vw,32px);font-weight:900;line-height:1.08}.pin-message{min-height:24px;margin:0 0 14px;font-size:15px;font-weight:750}.pin-dots{justify-content:center;gap:15px;min-height:20px;margin-bottom:20px;display:flex}.pin-dots span{width:15px;height:15px;transition:transform .14s var(--ease-out), background-color .14s var(--ease-out);background:0 0;border:2px solid #ce7b99;border-radius:50%}.pin-dots span.is-filled{background:var(--raspberry);border-color:var(--raspberry);transform:scale(1.08)}.pin-dots.is-error{animation:pin-shake .36s var(--ease-in-out)}.keypad{grid-template-columns:repeat(3,68px);justify-content:center;gap:10px 16px;display:grid}.keypad button{width:68px;height:54px;color:var(--raspberry);cursor:pointer;transition:transform .12s var(--ease-out), box-shadow .12s var(--ease-out), background-color .12s var(--ease-out);background:#ffffffc2;border:1px solid #8f31571f;border-radius:22px 20px 23px 19px;font-size:23px;font-weight:800;box-shadow:0 5px #a8537424}.keypad button:active{transform:translateY(3px)scale(.97);box-shadow:0 1px #a8537424}.pin-card--checking .pin-dots span{animation:dot-think .6s var(--ease-in-out) infinite alternate}.pin-card--success{animation:pin-success .26s var(--ease-out) both}.game-stage{isolation:isolate;background-color:#f8d7e0;background-image:url(/loopy/tla/salon-tlo.png);background-position:bottom;background-size:cover;width:100%;height:100dvh;position:relative;overflow:hidden}.game-stage--bedroom{background-color:#efb8ca;background-image:url(/loopy/tla/lozko-tlo.png);background-position:bottom;background-size:cover}.game-stage--airport{background-image:url(/loopy/tla/lotnisko-tlo.png)}.game-stage--kitchen{background-color:#f4d5de;background-image:url(/loopy/tla/kuchnia-tlo.png);background-position:bottom;background-size:cover}.game-stage--office{background-color:#f5ced9;background-image:url(/loopy/tla/office-tlo.png);background-position:bottom}.office-wallet{z-index:9;top:max(14px, env(safe-area-inset-top));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);min-height:48px;color:var(--raspberry);font-variant-numeric:tabular-nums;background:#fff9e8e3;border:1px solid #ffffffad;border-radius:22px 18px 24px 17px;grid-template-columns:28px auto;align-items:center;padding:7px 14px 7px 9px;display:grid;position:absolute;right:74px;box-shadow:0 8px 25px #60293f24}.office-wallet>span{font-size:24px;font-weight:950;line-height:1}.office-wallet strong{white-space:nowrap;font-size:clamp(14px,3.6vw,18px);font-weight:900}.office-wallet small{color:#c63f67;text-align:center;white-space:nowrap;grid-column:1/-1;padding-top:2px;font-size:12px;font-weight:900}.office-wallet.has-error{animation:office-wallet-shake .24s var(--ease-in-out) both}.office-spend-feedback{z-index:10;top:max(70px, calc(env(safe-area-inset-top) + 56px));color:#6f2948;white-space:nowrap;font-variant-numeric:tabular-nums;pointer-events:none;animation:office-spend .82s var(--ease-out) both;background:#f397b2;border:2px solid #ffffffbf;border-radius:19px 16px 21px 15px;padding:7px 13px;font-size:clamp(15px,3.8vw,19px);font-weight:950;position:absolute;right:78px;box-shadow:0 8px 20px #64223d2e}.office-loopy .fruits-overlay{z-index:3;object-fit:cover;width:31%;height:31%;animation:office-fruits-in .22s var(--ease-out) both;border:3px solid #ffffffd1;border-radius:27%;position:absolute;top:-21%;left:50%;transform:translate(-50%)rotate(-4deg);box-shadow:0 10px 20px #7e2c4e38}.office-work-clock{z-index:5;width:82px;height:72px;color:var(--raspberry);font-variant-numeric:tabular-nums;animation:office-clock-pulse 1s var(--ease-in-out) infinite;background:#fff9e8e8;border:2px solid #ffffffb8;border-radius:45% 55% 48% 52%/55% 46% 54% 45%;place-items:center;font-size:40px;font-weight:950;display:grid;position:absolute;top:16%;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #5b253b2e}.office-inspector{z-index:7;top:max(76px, calc(env(safe-area-inset-top) + 62px));pointer-events:none;width:min(31vw,190px);animation:office-inspector-in .24s var(--ease-out) both;position:absolute;right:14px}.office-inspector img{filter:drop-shadow(0 12px 16px #501e322e);width:100%;height:auto;display:block}.office-inspector span{z-index:2;color:#6c584b;background:#fff0a8;border:2px solid #ffffffc7;border-radius:49% 51% 44% 56%/58% 44% 56% 42%;width:max-content;max-width:180px;padding:9px 14px;font-size:clamp(13px,2.7vw,17px);font-weight:900;position:absolute;top:4%;right:75%;box-shadow:0 7px 16px #55243526}.office-inspector span:after{content:"";background:#fff0a8;border-radius:2px 80%;width:18px;height:15px;position:absolute;bottom:7px;right:-9px;transform:rotate(28deg)}.kitchen-history-button{right:74px}.kitchen-character img{object-position:center bottom}.kitchen-character.is-fridge{aspect-ratio:.52;width:min(44vw,31vh,220px);animation:css-fridge-in .28s var(--ease-out) both;top:auto;bottom:31%;transform:translate(-50%)}.css-fridge{filter:drop-shadow(0 18px 19px #5e2f3933);width:100%;height:100%;position:relative}.css-fridge-shell{background:linear-gradient(105deg,#c8b9a5 0 2%,#f8f3ed 5% 93%,#b7a58e 98%);border:clamp(5px,1.1vw,8px) solid #aa9b87;border-radius:9% 9% 5% 5%/6% 6% 4% 4%;position:absolute;inset:0 2% 2%;box-shadow:inset 0 0 0 3px #e5d9ca,inset 8px 0 13px #ffffffb3,inset -7px 0 10px #745c491f}.css-fridge-freezer,.css-fridge-main{background:linear-gradient(110deg,#fffdfa,#eee7df 76%,#d8cec2);border:clamp(3px,.75vw,5px) solid #b4a48f;position:absolute;left:3%;right:3%;overflow:hidden;box-shadow:inset 0 0 0 3px #ffffffbd,inset -7px 0 10px #745c491a}.css-fridge-freezer{border-radius:7% 7% 4% 4%/9% 9% 6% 6%;height:29%;top:2%}.css-fridge-main{border-radius:4% 4% 5% 5%/4%;top:32%;bottom:2%}.css-fridge-door{z-index:6;transform-origin:50%;background:linear-gradient(105deg,#fffdfa,#eee7df 76%,#d8cec2);border:clamp(3px,.75vw,5px) solid #b4a48f;width:47.5%;position:absolute;top:2%;bottom:2%;box-shadow:inset 0 0 0 3px #ffffffbd,inset -7px 0 10px #745c491a,0 4px 7px #533d311f}.css-fridge-door--left{border-radius:9% 3% 3% 7%/5% 2% 2% 4%;left:3%}.css-fridge-door--right{border-radius:3% 9% 7% 3%/2% 5% 4% 2%;right:3%}.css-fridge-door i{background:linear-gradient(90deg,#aaa9a4,#f4f2ec 46%,#74736f);border:2px solid #837f79;border-radius:999px;width:10%;height:19%;position:absolute;top:43%;box-shadow:2px 3px #70635330}.css-fridge-door--left i{right:8%}.css-fridge-door--right i{left:8%}.css-fridge.is-open .css-fridge-door--left{animation:css-fridge-door-left .42s var(--ease-out) both}.css-fridge.is-open .css-fridge-door--right{animation:css-fridge-door-right .42s var(--ease-out) both}.css-fridge.is-open .css-fridge-freezer,.css-fridge.is-open .css-fridge-main{background:linear-gradient(100deg,#f1f1ee,#fff 48%,#e8e5e0);border-color:#b8afa5;box-shadow:inset 0 0 0 6px #fff,inset 11px 0 17px #5d52481c,inset -8px 0 13px #5d524814}.css-fridge-cold{background:linear-gradient(#fff,#efefec);border-radius:10px;position:absolute;inset:18% 10%;box-shadow:inset 0 5px 9px #635b5217}.css-fridge-ice{aspect-ratio:1.4;opacity:.88;background:#fff;border-radius:50% 45% 55% 42%;width:24%;position:absolute;bottom:21%;right:16%;box-shadow:-22px 4px 0 -3px #f7ffff}.css-fridge-shelf{z-index:2;background:linear-gradient(#fff,#cfaeba);border-radius:999px;height:3.2%;position:absolute;left:7%;right:7%;box-shadow:0 3px 4px #72455624}.css-fridge-shelf--top{top:36%}.css-fridge-shelf--bottom{top:67%}.css-fridge-bottles{z-index:3;justify-content:center;align-items:flex-end;gap:2.5%;height:28%;display:flex;position:absolute;bottom:4%;left:7%;right:7%}.css-cola-can{object-fit:contain;object-position:center bottom;filter:drop-shadow(0 3px 3px #43232d38);width:17%;height:100%;display:block}.css-fridge-foot{background:#9f907d;border-radius:0 0 5px 5px;width:15%;height:2.5%;position:absolute;top:100%}.css-fridge-foot--left{left:4%}.css-fridge-foot--right{right:4%}.dialogue-wrap.is-fridge-dialogue,.dialogue-wrap.is-fridge-dialogue.has-answers{top:calc(69% - 10px)}.choices.choices--fridge-only{top:calc(69% - 2px);bottom:auto}.choices.choices--fridge-dialogue{top:calc(69% + 143px)}.kitchen-error{z-index:12;left:50%;bottom:max(18px, env(safe-area-inset-bottom));color:#fff;text-align:center;background:#8f3157;border-radius:19px 16px 21px 15px;width:min(100% - 32px,460px);padding:11px 16px;font-weight:850;position:absolute;transform:translate(-50%);box-shadow:0 10px 28px #46182b3d}.kitchen-sync{z-index:5;border:3px solid #ffffffb3;border-top-color:var(--raspberry);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite thinking-spin;position:absolute;top:74px;right:91px}.kitchen-coupon-reveal{z-index:7;left:50%;bottom:max(18px, env(safe-area-inset-bottom));width:min(100% - 28px,560px);animation:kitchen-coupon-in .24s var(--ease-out) both;background:#fff9e8f2;border:2px solid #ffffffc2;border-radius:36px 31px 42px 29px;grid-template-columns:1fr auto;padding:24px 22px 18px;display:grid;position:absolute;transform:translate(-50%);box-shadow:0 20px 55px #5c233a3d}.kitchen-coupon-speech{grid-column:1/-1;margin-bottom:13px}.kitchen-coupon-speech strong{color:#482016;background:#ed91ad;border-radius:40%/100%;margin-top:-42px;padding:8px 22px;font-size:18px;display:inline-block;transform:rotate(-5deg)}.kitchen-coupon-speech p{margin:4px 0 0;font-size:clamp(18px,4.5vw,25px);font-weight:900}.kitchen-coupon-reveal>label{color:var(--pink-500);grid-column:1/-1;margin-bottom:5px;font-size:13px;font-weight:900}.kitchen-coupon-reveal>input,.history-panel input{color:#5f4c41;-webkit-user-select:text;user-select:text;background:#fff;border:2px solid #efb1c4;border-radius:15px 3px 3px 15px;min-width:0;font:700 14px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace}.kitchen-coupon-reveal>input{padding:11px 12px}.kitchen-coupon-reveal>button:not(.kitchen-thanks),.history-panel li button{color:#71334c;cursor:pointer;background:#f1aec2;border:0;border-radius:3px 15px 15px 3px;font-weight:900}.kitchen-coupon-reveal>small{min-height:20px;color:var(--pink-500);grid-column:1/-1;padding-top:5px;font-weight:850}.kitchen-thanks{cursor:pointer;background:#fff0a8;border:2px solid #fff;border-radius:40% 60% 48% 52%/55% 42% 58% 45%;grid-column:1/-1;min-height:56px;margin-top:10px;font-weight:900;box-shadow:0 6px #a6654f21}.history-backdrop{z-index:30;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);animation:reduced-fade .16s var(--ease-out) both;background:#5b2a3d5c;place-items:center;padding:18px;display:grid;position:absolute;inset:0}.history-panel{width:min(100%,520px);max-height:min(76dvh,650px);animation:card-in .22s var(--ease-out) both;background:#fff9e8;border:2px solid #fffc;border-radius:38px 32px 44px 29px;padding:25px 22px;position:relative;overflow:auto;box-shadow:0 25px 70px #3e172747}.history-panel h2{color:var(--raspberry);margin:2px 44px 18px 0;font-size:30px}.history-close{width:38px;height:38px;color:var(--raspberry);cursor:pointer;background:#f4bfd0;border:0;border-radius:50%;font-size:27px;line-height:1;position:absolute;top:14px;right:15px}.history-empty{text-align:center;padding:30px 10px;font-weight:800;display:block}.history-panel ol{gap:12px;margin:0;padding:0;list-style:none;display:grid}.history-panel li{grid-template-columns:34px minmax(0,1fr) 54px;align-items:stretch;display:grid}.history-panel li>span{color:var(--pink-500);place-items:center;font-weight:900;display:grid}.history-panel input{width:100%;padding:9px}.history-panel>small{text-align:right;min-height:21px;color:var(--pink-500);padding-top:7px;font-weight:850;display:block}.admin-screen{color:#624d43;-webkit-user-select:text;user-select:text;background:linear-gradient(145deg,#ffe9f0,#efb0c5);width:100%;height:100dvh;padding:26px;overflow:auto}.admin-login,.admin-card,.admin-header{background:#fffaf2eb;border:2px solid #ffffffad;width:min(100%,760px);margin-inline:auto;box-shadow:0 18px 50px #5b253b2b}.admin-login{border-radius:38px 31px 44px 29px;margin-top:min(18vh,150px);padding:32px}.admin-login>p,.admin-header p{color:#dc789c;margin:0;font-weight:900}.admin-login h1,.admin-header h1{color:#8f3157;margin:3px 0 23px}.admin-login label{margin-bottom:7px;font-weight:850;display:block}.admin-login input{letter-spacing:.04em;border:2px solid #edb0c3;border-radius:16px;width:100%;padding:13px;font-size:20px}.admin-login button,.admin-card form button,.admin-coupon button{color:#71334c;cursor:pointer;background:#f0abc0;border:0;border-radius:15px;padding:11px 18px;font-weight:900}.admin-login button{width:100%;margin-top:13px}.admin-login button:disabled,.admin-card button:disabled,.admin-coupon button:disabled{opacity:.45;cursor:default}.admin-message{background:#fff2b8;border-radius:14px;width:min(100%,760px);margin:14px auto;padding:10px 14px;font-weight:800}.admin-screen--panel{padding-bottom:80px}.admin-header{border-radius:30px;justify-content:space-between;align-items:center;gap:20px;padding:22px 26px;display:flex}.admin-header h1{margin-bottom:0}.admin-header strong{color:#8f3157;white-space:nowrap;background:#fff0a8;border-radius:16px;padding:10px 15px}.admin-card{border-radius:30px;margin-top:18px;padding:24px 26px}.admin-card h2{color:#8f3157;margin:0 0 4px}.admin-card>p{margin-top:0}.admin-card textarea{resize:vertical;-webkit-user-select:text;user-select:text;background:#fff;border:2px solid #edb0c3;border-radius:16px;width:100%;padding:13px;font:14px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace}.admin-card form button{margin-top:10px}.admin-coupon-list{gap:10px;margin-top:16px;display:grid}.admin-coupon{background:#fff5f0;border-radius:17px;justify-content:space-between;align-items:center;gap:15px;padding:13px;display:flex}.admin-coupon>div{gap:4px;min-width:0;display:grid}.admin-coupon a{color:#71475a;text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:text;user-select:text;overflow:hidden}.admin-coupon small{color:#9b7c70}.admin-status{border-radius:99px;width:fit-content;padding:3px 8px;font-size:12px;font-weight:900}.admin-status--available{color:#3a7040;background:#d8f0d7}.admin-status--claimed{color:#8f3157;background:#f6d8e3}.admin-coupon .admin-danger{color:#9b294d;background:#f5d3da}.office-dialogue--offer .dialogue-text{letter-spacing:-.025em;font-size:clamp(17px,3.8vw,25px);line-height:1.2}.office-dialogue--offer.is-long .dialogue-text,.office-dialogue--offer.is-very-long .dialogue-text{font-size:clamp(16px,3.5vw,23px);line-height:1.18}.room-list{z-index:4;gap:14px;width:min(100% - 42px,380px);display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.room-list button{isolation:isolate;color:#6c584b;cursor:pointer;min-height:72px;transition:transform .14s var(--ease-out), background-color .14s var(--ease-out), box-shadow .14s var(--ease-out);background:#fff0a8;border:0;border-radius:34px 37px 30px 33px/27px 29px 24px 28px;padding:14px 24px;font-size:clamp(21px,5vw,28px);font-weight:900;position:relative;box-shadow:0 8px #a6654f1a,0 12px 28px #55243524}.room-list button:before,.room-list button:after{content:"";z-index:0;background:inherit;border-radius:8% 8% 46% 54%/28% 28% 82% 88%;width:52%;height:35%;position:absolute;bottom:-3%}.room-list button:before{transform-origin:70% 45%;animation:choice-blob-left 1.5s var(--ease-wobble) infinite alternate;left:3%}.room-list button:after{transform-origin:30% 45%;animation:choice-blob-right 1.2s var(--ease-wobble) .15s infinite alternate;right:3%}.room-list button>span{z-index:1;position:relative}.room-list button:active{background:var(--yellow);transform:translateY(3px)scale(.98);box-shadow:0 3px #a6654f21}.salon{z-index:-3;background:#f8dbe3;position:absolute;inset:0;overflow:hidden}.salon-wall{background:#f9dce4;border-bottom:clamp(10px,1.5vh,16px) solid #fff0f3;position:absolute;inset:0 0 34%;box-shadow:inset 0 -5px #dc8da8}.salon-wall:before{content:"";border:3px solid #d37c9a2e;border-radius:32px;position:absolute;inset:8% 5% 10%;box-shadow:inset 0 0 0 10px #ffffff1f}.salon-wall:after{content:"";background:radial-gradient(circle at 50% 33%,#ffffff75,#0000 42%);position:absolute;inset:0}.salon-window{z-index:1;background:#c9deeb;border:12px solid #fff7f4;border-radius:90px 90px 24px 24px;width:clamp(155px,18vw,265px);height:clamp(170px,27vh,260px);position:absolute;top:13%;left:8%;overflow:hidden;box-shadow:0 12px #ac5c791f,inset 0 0 0 4px #a9bfd0}.salon-window:before,.salon-window:after{content:"";z-index:2;background:#fff7f4;position:absolute}.salon-window:before{inset-block:0;width:7px;left:calc(50% - 3px)}.salon-window:after{inset-inline:0;height:7px;top:49%}.salon-window i{z-index:3;background:#e4a2b8;width:58%;height:113%;position:absolute;top:-6%;box-shadow:inset -10px 0 #be68881a}.salon-window i:first-child{border-radius:0 80% 55% 0;left:-28%;transform:rotate(-4deg)}.salon-window i:nth-child(2){border-radius:80% 0 0 55%;right:-28%;transform:rotate(4deg)}.salon-window i:nth-child(3){background:#fff9dc;border-radius:50%;width:18px;height:18px;top:25%;left:32%;box-shadow:28px 34px #fff9dc,54px -8px #fff9dc}.salon-window i:nth-child(4){background:#a7c4b2;border-radius:50% 50% 0 0;width:56%;height:32%;bottom:-7%;right:2%}.salon-picture{z-index:1;aspect-ratio:1.2;background:#fff5e8;border:9px solid #bd718f;border-radius:22px 18px 24px 17px;place-items:center;width:clamp(115px,13vw,170px);display:grid;position:absolute;top:13%;left:50%;transform:translate(-50%)rotate(-1.5deg);box-shadow:0 10px #893b5921}.salon-picture i{border:2px solid #f2bacb;border-radius:14px;position:absolute;inset:8px}.salon-picture span{color:#dc789c;font-size:clamp(35px,5vw,58px);transform:rotate(6deg)}.salon-shelf{z-index:1;background:#f6bfd0;border:9px solid #c67d98;border-radius:20px 23px 15px 18px;width:clamp(140px,18vw,240px);height:clamp(150px,23vh,230px);position:absolute;top:17%;right:7%;box-shadow:0 12px #8438561f}.salon-shelf:before,.salon-shelf:after{content:"";background:#c67d98;height:8px;position:absolute;left:0;right:0}.salon-shelf:before{top:34%}.salon-shelf:after{top:67%}.salon-shelf i{border-radius:5px 5px 2px 2px;width:17%;position:absolute;bottom:8px}.salon-shelf i:first-child{background:#ee7f9e;height:22%;left:12%}.salon-shelf i:nth-child(2){background:#f5d277;height:28%;left:31%}.salon-shelf i:nth-child(3){background:#9fc3b4;height:19%;left:50%}.salon-shelf span{background:#9abca7;border-radius:50% 50% 35% 35%;width:35%;height:22%;position:absolute;top:8%;left:14%;box-shadow:25px 8px #a7c7b4}.salon-floor{background:#d88ca6;position:absolute;inset:66% 0 0;box-shadow:inset 0 18px #ac57771a}.salon-floor i{background:#83435c1f;width:2px;position:absolute;top:0;bottom:0;transform:skew(-12deg)}.salon-floor i:first-child{left:12%}.salon-floor i:nth-child(2){left:31%}.salon-floor i:nth-child(3){left:50%}.salon-floor i:nth-child(4){left:69%}.salon-floor i:nth-child(5){left:88%}.salon-rug{z-index:0;background:#efb6c7;border-radius:50%;width:min(76vw,820px);height:32%;position:absolute;bottom:-10%;left:50%;transform:translate(-50%);box-shadow:inset 0 0 0 8px #fff3eb47}.salon-sofa{z-index:1;background:#d992aa;border:7px solid #ad6683;border-radius:52px 52px 30px 30px;width:min(58vw,700px);height:clamp(125px,20vh,200px);position:absolute;bottom:23%;left:50%;transform:translate(-50%);box-shadow:0 18px #73364e1f}.salon-sofa:before,.salon-sofa:after{content:"";z-index:-1;background:#d992aa;border:7px solid #ad6683;width:24%;height:63%;position:absolute;bottom:-4px}.salon-sofa:before{border-radius:60px 24px 25px 30px;left:-9%}.salon-sofa:after{border-radius:24px 60px 30px 25px;right:-9%}.salon-sofa i{background:#e2a3b8;border:4px solid #9b4f6c4d;border-radius:30px;width:42%;position:absolute;top:12%;bottom:14%}.salon-sofa i:first-child{left:7%;transform:rotate(1deg)}.salon-sofa i:nth-child(2){right:7%;transform:rotate(-1deg)}.salon-sofa i:nth-child(3){background:#f4c0ce;border:0;border-radius:48% 52% 49% 51%;width:12%;height:46%;top:15%;left:44%;transform:rotate(4deg)}.salon-sofa span{background:#96536f;border-radius:0 0 7px 7px;width:17px;height:28px;position:absolute;bottom:-24px}.salon-sofa span:first-of-type{left:12%}.salon-sofa span:nth-of-type(2){right:12%}.salon-table{z-index:1;background:#d98fa8;border:6px solid #a7607c;border-radius:18px 18px 25px 25px;width:clamp(90px,11vw,145px);height:clamp(74px,11vh,110px);position:absolute;bottom:20%;right:7%;box-shadow:0 13px #6f364c1c}.salon-table i{background:#a7607c;border-radius:8px;width:10px;height:65px;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.salon-table span{background:#ffe5a6;border:6px solid #a7607c;border-radius:50% 50% 20px 20px;width:76px;height:42px;position:absolute;bottom:calc(100% + 50px);left:50%;transform:translate(-50%)}.scene-vignette{z-index:-1;pointer-events:none;background:linear-gradient(#ffffff14,#0000 55%,#67294214);position:absolute;inset:0}.corner-button{z-index:8;top:max(14px, env(safe-area-inset-top));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:48px;height:48px;color:var(--raspberry);cursor:pointer;transition:transform .14s var(--ease-out), opacity .14s var(--ease-out), background-color .14s var(--ease-out);background:#fff9e8db;border:1px solid #ffffffa6;border-radius:19px 17px 21px 16px;place-items:center;padding:0;display:grid;position:absolute;box-shadow:0 8px 25px #60293f24}.corner-button svg{fill:none;stroke:currentColor;stroke-width:2.3px;stroke-linecap:round;stroke-linejoin:round;width:27px;height:27px}.back-button{left:14px}.map-button{border-radius:17px 21px 16px 19px;right:14px}.corner-button:active{transform:translateY(2px)scale(.96)}.corner-button:disabled{opacity:.38;cursor:default}.corner-button:disabled:active{transform:none}.loopy-character{z-index:1;aspect-ratio:1;width:min(50.4vw,353px);animation:loopy-in .36s var(--ease-out) both;position:absolute;top:41%;left:50%;transform:translate(-50%,-50%)}.loopy-character img{object-fit:contain;object-position:center bottom;filter:drop-shadow(0 18px 22px #4f20322e);width:100%;height:100%}.loopy-character.is-refusing{animation:bedroom-refuse .26s var(--ease-in-out) both}.loopy-character.is-hit{animation:bedroom-hit .16s var(--ease-in-out) both}.loopy-character .hammer-overlay{z-index:3;object-fit:contain;filter:drop-shadow(0 8px 8px #4e1f2f3d);transform-origin:30% 88%;width:48%;height:48%;animation:hammer-hit .16s var(--ease-in-out) both;position:absolute;top:-20%;left:55%}.thinking-loader{z-index:2;filter:drop-shadow(0 5px 7px #732b462e);border:7px solid #e15f91;border-color:#e15f91 #f294b5 #ffe1ebc7 #ffe1ebc7;border-radius:50%;width:38px;height:38px;margin-left:-19px;animation:.8s linear infinite thinking-spin;position:absolute;top:-26px;left:50%}.dialogue-wrap{z-index:3;cursor:pointer;text-align:left;outline-offset:3px;width:min(100% - 28px,720px);min-height:clamp(142px,21vh,170px);animation:dialogue-in .23s var(--ease-out) both;background:0 0;border:0;padding:38px clamp(30px,6vw,58px) 31px;position:absolute;top:calc(41% + min(25.2vw,176.5px) - 12px);bottom:auto;left:50%;transform:translate(-50%)}.dialogue-wrap:disabled{color:var(--cocoa);cursor:default}.dialogue-wrap.has-answers,.dialogue-wrap.has-four-answers{top:calc(41% + min(25.2vw,176.5px) - 12px);bottom:auto}.dialogue-blobs{z-index:-1;filter:url(#dialogue-goo)drop-shadow(0 10px 14px #5b2b3a29);position:absolute;inset:0}.dialogue-blobs i{background:var(--cream);display:block;position:absolute}.dialogue-blob-top{transform-origin:50%;width:100%;height:76%;animation:dialogue-wobble 1.5s var(--ease-wobble) .3s infinite alternate;border-radius:40% 40% 30% 30%/150%;top:0;left:0}.dialogue-blob-bottom{transform-origin:50%;width:94%;height:42%;animation:dialogue-wobble 1s var(--ease-wobble) infinite alternate;border-radius:5% 5% 20% 20%/100%;bottom:0;left:3%}.dialogue-name-wrap{z-index:2;animation:dialogue-character-float .6s var(--ease-wobble) infinite alternate;position:absolute;top:0;left:clamp(18px,4vw,35px)}.dialogue-name{color:#482016;text-align:center;animation:dialogue-name-in .3s var(--ease-out-back) both;background:#ed91ad;border-radius:30%/100% 100% 120% 120%;padding:.5rem 1.6rem;font-size:clamp(18px,3.5vw,22px);font-weight:900;display:inline-block;transform:perspective(2rem)rotateX(1deg)rotate(-6deg)translate(20%)translateY(-45%)scale(1)}.dialogue-text{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;letter-spacing:-.035em;max-width:100%;font-size:clamp(21px,5vw,34px);font-weight:820;line-height:1.34;display:block}.dialogue-wrap.is-long .dialogue-text{font-size:clamp(18px,4.2vw,28px);line-height:1.26}.dialogue-wrap.is-very-long .dialogue-text{letter-spacing:-.02em;font-size:clamp(15px,3.6vw,23px);line-height:1.18}.caret{vertical-align:-.08em;opacity:0;background:currentColor;width:2px;height:.95em;margin-left:3px;display:inline-block}.is-typing .caret{opacity:.35;animation:.6s step-end infinite caret-blink}.next-arrow{filter:drop-shadow(0 2px #d39a03);width:24px;height:14px;animation:arrow-float .6s var(--ease-wobble) infinite alternate;position:absolute;bottom:0;left:50%}.goo-filter{pointer-events:none;width:0;height:0;position:fixed}.dawn-transition{z-index:20;pointer-events:none;position:absolute;inset:0}.dawn-transition span{opacity:0;position:absolute;inset:0}.dawn-night{background:#251b39;animation:5s linear both dawn-night}.dawn-sunrise{background:#ffbf8c;animation:5s linear both dawn-sunrise}.sleep-clock{z-index:5;min-width:116px;color:var(--raspberry);text-align:center;font-variant-numeric:tabular-nums;background:#fff9e8e0;border:2px solid #ffffffb8;border-radius:24px 20px 26px 19px;padding:10px 22px;font-size:clamp(27px,7vw,42px);font-weight:900;position:absolute;top:16%;left:50%;transform:translate(-50%);box-shadow:0 9px 28px #5b253b2e}.dialogue-wrap.airport-status-wrap{min-height:200px;padding-block:34px 25px}.airport-status-text{gap:2px;font-size:clamp(18px,4.2vw,27px);line-height:1.22;display:grid}.airport-status-static{white-space:pre-wrap;font-variant-numeric:tabular-nums;display:block}.airport-time-main{white-space:nowrap;font-variant-numeric:tabular-nums}.airport-time-seconds{white-space:nowrap;font-variant-numeric:tabular-nums;gap:clamp(5px,1.5vw,12px);min-height:1.25em;display:flex}.airport-time-seconds span{visibility:hidden}.airport-time-seconds span.is-visible{visibility:visible}.choices{z-index:6;width:min(100% - 34px,560px);animation:choices-in .24s var(--ease-out) both;gap:13px;display:grid;position:absolute;top:min(41% + min(25.2vw,176.5px) + 145px,100% - 90px);bottom:auto;left:50%;transform:translate(-50%)}.choices--two,.choices--three,.choices--four{grid-template-columns:repeat(2,minmax(0,1fr))}.choices--three button:last-child{grid-column:1/-1;justify-self:center;width:calc(50% - 7px)}.choices--four{top:min(41% + min(25.2vw,176.5px) + 145px,100% - 168px)}.choices--office{top:min(41% + min(25.2vw,176.5px) + 165px,100% - 168px)}.choices--office button{min-height:64px}.choices--one{grid-template-columns:minmax(0,260px);justify-content:center}.choices--hammer.choices--one{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:normal}.choices--hammer.choices--one button{grid-column:2}.choices button{isolation:isolate;color:#6c584b;cursor:pointer;min-height:72px;transition:transform .14s var(--ease-out), background-color .14s var(--ease-out), box-shadow .14s var(--ease-out);background:#fff0a8;border:0;border-radius:34px 37px 30px 33px/27px 29px 24px 28px;padding:15px 17px;font-size:clamp(17px,4.3vw,24px);font-weight:850;position:relative;box-shadow:0 8px #a6654f1a,0 12px 28px #55243524}.choices button:before,.choices button:after{content:"";z-index:0;background:inherit;border-radius:8% 8% 46% 54%/28% 28% 82% 88%;width:52%;height:35%;position:absolute;bottom:-3%}.choices button:before{transform-origin:70% 45%;animation:choice-blob-left 1.5s var(--ease-wobble) infinite alternate;left:3%}.choices button:after{transform-origin:30% 45%;animation:choice-blob-right 1.2s var(--ease-wobble) .15s infinite alternate;right:3%}.choices button>span{z-index:1;overflow-wrap:anywhere;word-break:break-word;min-width:0;position:relative}.choices button:active{background:var(--yellow);transform:translateY(4px)scale(.98);box-shadow:0 3px #a6654f21}.end-card{z-index:3;text-align:center;width:min(100% - 32px,470px);animation:card-in .32s var(--ease-out) both;background:#fff9e8e8;border:2px solid #ffffffb8;border-radius:44px 38px 50px 40px;padding:18px 28px 32px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 25px 70px #5b253b40}.end-card img{object-fit:contain;width:min(64vw,300px);height:min(64vw,300px);margin-top:-105px}.end-card p{color:var(--pink-500);margin:-15px 0 0;font-weight:850}.end-card h1{color:var(--raspberry);margin:3px 0;font-size:50px}.end-card span{font-weight:750;display:block}.end-card button{background:var(--yellow);cursor:pointer;border:0;border-radius:18px;margin-top:22px;padding:12px 22px;font-weight:900}@media (hover:hover) and (pointer:fine){.keypad button:hover,.corner-button:not(:disabled):hover{background:#fff;transform:translateY(-2px)}.room-list button:hover{background:var(--yellow);transform:translateY(-2px)}.choices button:hover{background:var(--yellow);transform:translateY(-3px)rotate(-.35deg)}.choices button:nth-child(2n):hover{transform:translateY(-3px)rotate(.35deg)}}@media (max-width:560px){.admin-screen{padding:14px}.admin-login{margin-top:9vh;padding:26px 20px}.admin-header{flex-direction:column;align-items:flex-start;padding:20px}.admin-card{padding:21px 18px}.admin-coupon{flex-direction:column;align-items:stretch}.admin-coupon button{width:100%}.salon-window{left:-45px}.salon-picture{top:11%}.salon-shelf{right:-62px}.salon-sofa{width:76vw;height:150px;bottom:24%}.salon-table{bottom:21%;right:-38px}.loopy-character{width:min(53.5vw,264px);top:42%}.dialogue-wrap{min-height:148px;padding-top:39px;top:calc(42% + min(26.75vw,132px) - 12px)}.dialogue-wrap.has-answers,.dialogue-wrap.has-four-answers{top:calc(42% + min(26.75vw,132px) - 12px)}.choices{top:min(42% + min(26.75vw,132px) + 145px,100% - 90px)}.choices--four{top:min(42% + min(26.75vw,132px) + 145px,100% - 168px)}.choices--office{top:min(42% + min(26.75vw,132px) + 165px,100% - 168px)}.dialogue-wrap.has-four-answers{min-height:138px;padding-block:35px 22px}.dialogue-wrap.airport-status-wrap{min-height:190px;padding-top:34px}.choices--four button{min-height:66px}.pin-card{padding-inline:22px}}@media (max-height:700px){.pin-card{transform:scale(.88)}.loopy-character{width:min(45vh,50.4vw);top:42%}.dialogue-wrap{min-height:126px;padding-top:24px;padding-bottom:23px;top:calc(42% + min(22.5vh,25.2vw) - 10px)}.dialogue-wrap.has-answers,.dialogue-wrap.has-four-answers{top:calc(42% + min(22.5vh,25.2vw) - 10px)}.choices{top:min(42% + min(22.5vh,25.2vw) + 122px,100% - 86px)}.choices--four{top:min(42% + min(22.5vh,25.2vw) + 122px,100% - 160px)}.office-dialogue--offer{min-height:110px;padding-block:24px 19px}.office-dialogue--offer .dialogue-text,.office-dialogue--offer.is-long .dialogue-text,.office-dialogue--offer.is-very-long .dialogue-text{font-size:clamp(15px,3.3vw,20px);line-height:1.14}.choices--office{top:calc(100% - 148px)}.choices--office button{min-height:58px;padding-block:11px}.dialogue-name{padding-block:6px 7px}.dialogue-text{font-size:clamp(19px,4.5vw,29px)}}@media (max-width:560px) and (max-height:700px){.loopy-character{width:min(38.25vh,42.84vw)}.dialogue-wrap,.dialogue-wrap.has-answers,.dialogue-wrap.has-four-answers{top:calc(42% + min(19.125vh,21.42vw) - 10px)}.choices{top:min(42% + min(19.125vh,21.42vw) + 122px,100% - 86px)}.choices--four{top:min(42% + min(19.125vh,21.42vw) + 122px,100% - 160px)}.choices--office{top:calc(100% - 148px)}}@keyframes card-in{0%{opacity:0;transform:translateY(18px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes kitchen-coupon-in{0%{opacity:0;transform:translate(-50%)translateY(18px)scale(.97)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}@keyframes css-fridge-in{0%{opacity:0;transform:translate(-50%)translateY(12px)scale(.97)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}@keyframes css-fridge-door-left{0%{transform:translate(0)}to{transform:translate(-88%)rotate(-1.5deg)}}@keyframes css-fridge-door-right{0%{transform:translate(0)}to{transform:translate(88%)rotate(1.5deg)}}@keyframes loopy-in{0%{opacity:0;transform:translate(-50%,-50%)translateY(18px)scale(.96)}to{opacity:1;transform:translate(-50%,-50%)translateY(0)scale(1)}}@keyframes dialogue-in{0%{opacity:0;transform:translate(-50%)translateY(16px)scale(.98)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}@keyframes choices-in{0%{opacity:0;transform:translate(-50%)translateY(14px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes choice-blob-left{0%{transform:rotate(7deg)translateY(0)scale(1)}to{transform:rotate(10deg)translateY(2px)scale(.98,1.02)}}@keyframes choice-blob-right{0%{transform:rotate(-10deg)translateY(1px)scale(1.01,.99)}to{transform:rotate(-7deg)translateY(-1px)scale(.98,1.02)}}@keyframes pin-shake{0%,to{transform:translate(0)}25%{transform:translate(-9px)}50%{transform:translate(8px)}75%{transform:translate(-5px)}}@keyframes dot-think{to{transform:translateY(-4px)}}@keyframes pin-success{to{opacity:0;transform:translateY(-10px)scale(1.02)}}@keyframes caret-blink{50%{opacity:0}}@keyframes dialogue-wobble{0%{transform:rotate(.3deg)scale(1)}to{transform:rotate(-.3deg)scale(.99)}}@keyframes dialogue-character-float{0%{transform:translateY(0)}to{transform:translateY(3px)}}@keyframes dialogue-name-in{0%{opacity:0;transform:perspective(2rem)rotateX(1deg)rotate(0)translate(20%)translateY(-45%)scale(.9)}to{opacity:1;transform:perspective(2rem)rotateX(1deg)rotate(-6deg)translate(20%)translateY(-45%)scale(1)}}@keyframes arrow-float{0%{opacity:1;transform:translateY(33%)translate(-50%)scale(1)}to{opacity:1;transform:translateY(50%)translate(-50%)scale(.9)}}@keyframes thinking-spin{to{transform:rotate(1turn)}}@keyframes bedroom-refuse{0%,to{transform:translate(-50%,-50%)rotate(0)}25%{transform:translate(-50%,-50%)rotate(-2deg)}50%{transform:translate(-50%,-50%)rotate(2deg)}75%{transform:translate(-50%,-50%)rotate(-1deg)}}@keyframes bedroom-hit{0%,to{transform:translate(-50%,-50%)scale(1)}48%{transform:translate(-50%,-50%)scale(.94,.9)}}@keyframes hammer-hit{0%{opacity:.72;transform:rotate(-28deg)}65%,to{opacity:1;transform:rotate(15deg)}}@keyframes dawn-night{0%{opacity:0}43%{opacity:.82}61%{opacity:.78}to{opacity:0}}@keyframes dawn-sunrise{0%,48%{opacity:0}76%{opacity:.34}to{opacity:0}}@keyframes reduced-fade{0%{opacity:0}to{opacity:1}}@keyframes reduced-dawn-night{0%,to{opacity:0}50%{opacity:.28}}@keyframes reduced-dawn-sunrise{0%,to{opacity:0}72%{opacity:.18}}@keyframes office-wallet-shake{0%,to{transform:translate(0)}25%{transform:translate(-7px)rotate(-1deg)}55%{transform:translate(6px)rotate(1deg)}78%{transform:translate(-3px)}}@keyframes office-fruits-in{0%{opacity:0;transform:translate(-50%)translateY(12px)rotate(0)scale(.95)}to{opacity:1;transform:translate(-50%)translateY(0)rotate(-4deg)scale(1)}}@keyframes office-clock-pulse{0%,to{transform:translate(-50%)scale(1)}50%{transform:translate(-50%)scale(.96)}}@keyframes office-inspector-in{0%{opacity:0;transform:translate(35%)scale(.96)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes office-spend{0%{opacity:0;transform:translateY(10px)scale(.96)}16%{opacity:1;transform:translateY(0)scale(1)}72%{opacity:1;transform:translateY(-18px)scale(1)}to{opacity:0;transform:translateY(-28px)scale(.98)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}.dialogue-blob-top,.dialogue-blob-bottom,.dialogue-name-wrap,.dialogue-name,.next-arrow,.caret,.choices button:before,.choices button:after,.room-list button:before,.room-list button:after{animation:none}.thinking-loader{animation-duration:1.6s}.loopy-character.is-refusing,.loopy-character.is-hit,.loopy-character .hammer-overlay{animation:reduced-fade .16s var(--ease-out) both}.dawn-night{animation-name:reduced-dawn-night}.dawn-sunrise{animation-name:reduced-dawn-sunrise}.office-wallet.has-error,.fruits-overlay,.office-work-clock,.office-inspector,.office-spend-feedback{animation:reduced-fade .2s var(--ease-out) both}.pin-card,.loopy-character,.dialogue-wrap,.choices,.end-card{animation:reduced-fade .16s var(--ease-out) both}}
