*{box-sizing:border-box}body{margin:0;background:#f4f5fc;color:#152141;font:16px system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;touch-action:manipulation}button:disabled{cursor:default;opacity:.55}a{color:inherit}button:focus-visible,a:focus-visible,#board:focus-visible{outline:3px solid #3159ff;outline-offset:4px}header{max-width:1060px;margin:auto;padding:22px 24px;display:flex;justify-content:space-between;align-items:center;gap:15px}header a{font-weight:850;letter-spacing:-.7px;text-decoration:none}header a span{color:#3159ff}.badge{font-size:10px;font-weight:800;letter-spacing:1.4px;color:#65708d}main{max-width:650px;margin:10px auto 0;padding:0 20px}.heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:2px;color:#64708b;margin:0 0 5px}h1{font-size:clamp(32px,6vw,49px);letter-spacing:-2px;margin:0;line-height:1.15}h1 span{color:#3159ff}h1 .spark{display:inline-block;color:#ed633f;font-size:39px;margin-left:12px;vertical-align:middle}.counter{background:#152141;color:white;border-radius:17px;min-width:78px;padding:9px 14px;text-align:center}.counter strong{display:block;font-size:28px;line-height:1.1;font-variant-numeric:tabular-nums}.counter span{font-size:9px;letter-spacing:1.6px;color:#d9ff78}.intro{color:#63708a;font-size:13px;margin:13px 0 17px}.toolbar{display:flex;gap:10px}.toolbar button{border:1px solid #d5daeb;background:white;color:#152141;border-radius:25px;padding:11px 20px;font-size:13px;font-weight:750}.toolbar .primary{background:#3159ff;border-color:#3159ff;color:white}#status{font-size:12px;min-height:30px;margin:13px 0 2px;color:#53617b}.play-area{padding:7px;background:#152141;border-radius:19px;box-shadow:0 10px 28px #1420441a;max-width:570px;margin:auto}#board{position:relative;aspect-ratio:1;width:100%;touch-action:none;user-select:none;-webkit-user-select:none;border-radius:12px;background:#152141;isolation:isolate}.piece{position:absolute;width:20%;height:20%;padding:0;border:1px solid #15214155;background-image:url(picture.svg?v=7);background-size:500% 500%;border-radius:5px;will-change:transform;box-shadow:inset 0 0 0 1px #ffffff25}.piece.selected{outline:3px solid #fff;outline-offset:-4px;z-index:2}.piece.flying{z-index:10;filter:drop-shadow(0 10px 10px #10153080)}.how{text-align:center;font-size:11px;line-height:1.8;color:#68748e;margin:12px 0 24px}.brand-offer{display:flex;align-items:flex-start;gap:14px;background:#e7ebff;border:1px solid #dce2fc;border-radius:17px;padding:22px;margin:0 0 25px}.offer-icon{font-size:30px;color:#3159ff}h2{font-size:18px;letter-spacing:-.5px;margin:0}.brand-offer p{font-size:12px;line-height:1.6;color:#596782;margin:7px 0 12px}.brand-offer a{font-size:12px;font-weight:800;color:#2446d7;text-decoration:none}footer{max-width:650px;padding:0 20px 25px;margin:auto;font-size:10px;color:#72809a;display:flex;justify-content:space-between;gap:14px}#board.won{box-shadow:0 0 0 4px #d9ff78}.piece:disabled{opacity:1}@media(max-width:480px){header{padding:15px 16px}.badge{display:none}main{padding:0 12px;margin-top:9px}.intro{font-size:12px}.toolbar button{padding:10px 17px}#status{margin-top:10px;font-size:11px}.play-area{padding:5px;border-radius:14px}.brand-offer{padding:18px}.counter{min-width:65px}.spark{display:none!important}}@media(prefers-reduced-motion:reduce){.piece{will-change:auto}.piece.flying{filter:none}}
.puzzle-frame{position:relative}#preview{position:absolute;inset:0;z-index:20;width:100%;height:100%;padding:0;border:0;border-radius:12px;overflow:hidden;background:#152141;cursor:pointer}#preview[hidden]{display:none}#preview img{display:block;width:100%;height:100%}#hint[aria-pressed="true"]{background:#e7ebff;border-color:#3159ff}footer{align-items:center;flex-wrap:wrap}#share{border:1px solid #c5cee9;background:white;color:#2446d7;border-radius:20px;padding:9px 16px;min-height:44px;font-size:12px;font-weight:750}.share-dialog{width:min(420px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;border:1px solid #d5daeb;border-radius:18px;padding:24px;color:#152141;background:#f4f5fc;box-shadow:0 20px 80px #15214150}.share-dialog::backdrop{background:#152141aa}.share-dialog p{font-size:13px;line-height:1.6;color:#596782}.share-dialog textarea{width:100%;padding:12px;border:1px solid #c5cee9;border-radius:8px;font:14px/1.5 system-ui;color:#152141;background:white;resize:vertical}.share-dialog button{min-height:44px;border:0;border-radius:22px;padding:10px 16px;margin:4px 4px 0 0;font-size:12px;font-weight:700;background:#3159ff;color:white}.share-dialog .close-share{background:#e7ebff;color:#152141}.share-dialog textarea:focus-visible{outline:3px solid #3159ff;outline-offset:3px}
.counters{display:flex;gap:8px;flex-shrink:0}@media(max-width:600px){h1 .spark{display:none}}@media(max-width:360px){h1{font-size:26px;letter-spacing:-1.5px}.heading{gap:8px}.counters{gap:6px}.counter{min-width:56px;padding:9px 8px}}
#sound{border:1px solid #c5cee9;background:white;color:#2446d7;border-radius:20px;padding:9px 13px;min-height:44px;font-size:12px;font-weight:750}.celebration{position:absolute;inset:0;z-index:30;pointer-events:none;overflow:hidden;border-radius:12px}.confetti{position:absolute;left:50%;top:50%;width:9px;height:13px}.congratulations{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:1;max-width:96%;padding:15px 18px;border:2px solid #fff8df;border-radius:18px;background:#152141ed;color:#d9ff78;font-size:clamp(19px,4vw,32px);font-weight:850;letter-spacing:-.7px;box-shadow:0 6px 24px #15214150;white-space:nowrap}
.embedded header,.embedded .intro,.embedded .brand-offer,.embedded footer>span,.embedded footer>a{display:none}.embedded main{margin:0;padding:10px}.embedded .heading{gap:8px}.embedded h1{font-size:28px;letter-spacing:-1.5px}.embedded h1 .spark{display:none}.embedded .counter{min-width:54px;padding:7px 9px}.embedded .counter strong{font-size:24px}.embedded .eyebrow{font-size:9px;letter-spacing:1.4px}.embedded .toolbar{margin-top:14px}.embedded .how{margin-bottom:8px}.embedded footer{justify-content:center;padding:0 10px 10px}.embedded .share-dialog{position:fixed;top:8px;margin:0 auto;max-height:calc(100dvh - 16px)}@media(max-width:350px){.embedded h1{font-size:24px}.embedded .counter{min-width:48px;padding:7px}.embedded .counters{gap:5px}.embedded .eyebrow{font-size:8px}.embedded .toolbar button{padding:10px 13px}}
