:root{--cream:#fff8ec;--paper:#fffdf8;--ink:#332a3b;--muted:#776d7d;--coral:#ff766a;--yellow:#ffd166;--mint:#69d2b8;--line:#3c3143;--shadow:6px 7px 0 #3c314321}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 1px 1px, #3c31431a 1px, transparent 1.5px) 0 0 / 24px 24px, var(--cream);color:var(--ink);margin:0;font-family:Pretendard,SUIT,Apple SD Gothic Neo,Noto Sans KR,system-ui,sans-serif}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:3px;outline:4px solid #5870ff59}button:disabled{cursor:not-allowed;opacity:.5}.app-shell{width:min(1240px,100%);min-height:100vh;margin:0 auto;padding:42px 28px 34px;position:relative;overflow:clip}.doodle{z-index:-1;opacity:.45;-webkit-user-select:none;user-select:none;font-weight:900;position:absolute}.d1{color:var(--coral);font-size:42px;top:240px;left:4px;transform:rotate(-12deg)}.d2{color:var(--mint);font-size:32px;top:90px;right:8px}.d3{color:#8c77e8;font-size:54px;top:580px;right:-8px;transform:rotate(18deg)}.hero{justify-content:space-between;align-items:center;gap:28px;margin:0 0 30px;display:flex}.brand-lockup{align-items:center;gap:20px;display:flex}.mascot{border:3px solid var(--line);background:var(--yellow);width:104px;height:104px;box-shadow:5px 6px 0 var(--line);border-radius:35% 45% 40% 48%;flex:none;place-items:center;display:grid;position:relative;transform:rotate(-4deg)}.mascot>span{filter:drop-shadow(0 3px #ffffffb3);font-size:62px;transform:rotate(4deg)}.mascot i{color:var(--coral);text-shadow:2px 2px #fff;font-size:32px;font-style:normal;position:absolute;top:-16px;right:-12px}.eyebrow{color:#9a5368;letter-spacing:.2em;margin:0 0 3px;font-size:12px;font-weight:900}h1{letter-spacing:-.055em;margin:0;font-size:clamp(34px,4.6vw,58px);line-height:1.04}.hero-copy{color:var(--muted);margin:8px 0 0;font-size:16px;font-weight:700}.location-sticker{border:2px solid var(--line);min-width:238px;box-shadow:4px 5px 0 var(--line);background:#fff;border-radius:18px;align-items:center;gap:12px;padding:14px 16px;text-decoration:none;transition:transform .18s,box-shadow .18s;display:flex;transform:rotate(1.2deg)}.location-sticker:hover{box-shadow:6px 7px 0 var(--line);transform:rotate(0)translate(-2px,-2px)}.location-sticker>span:first-child{font-size:24px}.location-sticker>span:nth-child(2){flex-direction:column;flex:1;display:flex}.location-sticker strong{font-size:16px}.location-sticker small{color:var(--muted);margin-top:2px;font-size:12px}.location-sticker b{font-size:18px}.decision-banner{border:2px solid var(--line);box-shadow:4px 4px 0 var(--line);background:#fff1b9;border-radius:18px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:14px;margin:-5px 0 26px;padding:15px 18px;animation:.35s cubic-bezier(.2,.9,.25,1.2) banner-in;display:grid}.decision-banner>span{font-size:28px}.decision-banner div{flex-direction:column;gap:2px;display:flex}.decision-banner small{color:#64576c}.decision-banner a{background:#fff;border-radius:10px;padding:8px 12px;font-size:13px;font-weight:850;text-decoration:none}.decision-banner button{cursor:pointer;background:0 0;border:0;width:36px;height:36px;font-size:24px}.workspace-grid{grid-template-columns:minmax(380px,.88fr) minmax(520px,1.12fr);align-items:start;gap:26px;display:grid}.paper-card{border:2.5px solid var(--line);box-shadow:var(--shadow);background:#fffdf8f7;border-radius:28px;position:relative}.candidate-panel{padding:24px}.game-panel{padding:24px;position:sticky;top:20px}.section-heading{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.section-heading>div{align-items:center;gap:12px;display:flex}.section-heading h2{letter-spacing:-.04em;margin:0;font-size:24px;line-height:1.2}.section-heading p{color:var(--muted);margin:4px 0 0;font-size:13px}.step-badge{border:2px solid var(--line);background:var(--yellow);width:44px;height:36px;box-shadow:2px 3px 0 var(--line);border-radius:12px;flex:none;place-items:center;font-size:13px;font-weight:950;display:grid;transform:rotate(-3deg)}.step-badge.mint{background:var(--mint);transform:rotate(3deg)}.text-button{cursor:pointer;background:#f1ecf2;border:0;border-radius:10px;padding:8px 10px;font-size:12px;font-weight:850}.text-button:hover{background:#e8dfea}.selection-summary{color:#765361;background:#fff0ed;border-radius:999px;align-items:baseline;gap:4px;margin-bottom:13px;padding:7px 11px;font-size:12px;font-weight:750;display:inline-flex}.selection-summary strong{color:var(--coral);font-size:17px}.selection-summary span{color:var(--muted);margin-left:2px;font-weight:650}.restaurant-list{gap:10px;display:grid}.restaurant-card{background:#fff;border:2px solid #dcd3dd;border-radius:17px;grid-template-columns:minmax(0,1fr) auto;align-items:center;transition:transform .15s,border-color .15s,box-shadow .15s;display:grid;position:relative;overflow:hidden}.restaurant-card:hover{transform:translateY(-1px)}.restaurant-card.is-selected{border-color:var(--line);box-shadow:3px 3px 0 color-mix(in srgb, var(--card-color) 60%, #fff)}.restaurant-card.is-selected:before{content:"";background:var(--card-color);width:7px;position:absolute;inset:0 auto 0 0}.restaurant-toggle{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:44px minmax(0,1fr) 28px;align-items:center;gap:10px;min-width:0;padding:11px 8px 11px 13px;display:grid}.restaurant-emoji{background:color-mix(in srgb, var(--card-color) 25%, #fff);border-radius:13px;place-items:center;width:42px;height:42px;font-size:24px;display:grid}.restaurant-copy{flex-direction:column;min-width:0;display:flex}.restaurant-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.3;overflow:hidden}.restaurant-copy>span{color:#665b6b;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11.5px;overflow:hidden}.restaurant-copy small{color:#958b99;margin-top:3px;font-size:10.5px}.check-dot{color:#948a97;border:2px solid #cfc4d0;border-radius:50%;place-items:center;width:25px;height:25px;font-size:14px;font-weight:900;display:grid}.is-selected .check-dot{border-color:var(--line);background:var(--card-color);color:var(--line)}.map-link{color:#7a6f7e;white-space:nowrap;border-radius:8px;margin-right:9px;padding:7px 6px;font-size:11px;font-weight:800;text-decoration:none}.map-link:hover{color:var(--ink);background:#f5eff5}.mode-tabs{border:2px solid var(--line);background:#f0eaf0;border-radius:17px;grid-template-columns:repeat(auto-fit,minmax(84px,1fr));gap:7px;padding:6px;display:grid}.mode-tabs button{cursor:pointer;background:0 0;border:0;border-radius:11px;justify-content:center;align-items:center;gap:6px;min-height:47px;font-size:14px;font-weight:850;display:flex}.mode-tabs button span{font-size:19px}.mode-tabs button.is-active{border:2px solid var(--line);box-shadow:2px 3px 0 var(--line);background:#fff;transform:translate(-1px,-1px)}.mode-intro{color:#695e6d;text-align:center;justify-content:center;align-items:center;gap:8px;min-height:48px;font-size:13px;font-weight:700;display:flex}.mode-intro span{font-size:18px}.mode-intro p{margin:0}.inline-warning{color:#9c433d;background:#fff0ed;border:2px dashed #d76158;border-radius:12px;justify-content:center;align-items:center;gap:7px;margin-bottom:12px;padding:10px 12px;font-size:13px;font-weight:800;display:flex}.game-area{background:#fff;border:2px dashed #cfc4d0;border-radius:22px;min-height:440px;overflow:hidden}.tiny-tip{color:#8a7f8e;justify-content:center;align-items:center;gap:6px;margin-top:13px;font-size:11px;display:flex}.roulette-game{background:radial-gradient(circle at 50% 42%,#fff8d8 0 30%,#0000 31%);flex-direction:column;justify-content:center;align-items:center;gap:18px;min-height:440px;padding:20px;display:flex}.wheel-wrap{aspect-ratio:1;filter:drop-shadow(7px 9px #3c314329);width:min(330px,72vw);position:relative}.wheel-pointer{z-index:4;color:var(--line);filter:drop-shadow(0 3px #fff);font-size:37px;line-height:1;position:absolute;top:-16px;left:50%;transform:translate(-50%)}.wheel{border:5px solid var(--line);border-radius:50%;width:100%;height:100%;transition:transform 3.2s cubic-bezier(.12,.62,.08,1);position:relative;overflow:hidden}.wheel:after{content:"";pointer-events:none;border:2px dashed #3c314354;border-radius:50%;position:absolute;inset:9px}.wheel-center{z-index:3;border:4px solid var(--line);background:#fffaf1;border-radius:50%;place-items:center;width:70px;height:70px;font-size:36px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:3px 4px #3c314359}.wheel-label{z-index:2;color:#342b3b;text-align:center;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px #ffffffb8;width:74px;transform:rotate(var(--label-angle)) translateY(clamp(-112px, -20vw, -76px));transform-origin:50%;margin:-9px 0 0 -37px;font-size:clamp(8px,2.15vw,12px);font-weight:950;line-height:18px;display:block;position:absolute;top:50%;left:50%;overflow:hidden}.primary-action,.secondary-action{border:2.5px solid var(--line);cursor:pointer;border-radius:15px;justify-content:center;align-items:center;gap:8px;min-height:50px;padding:11px 22px;font-size:15px;font-weight:950;transition:transform .14s,box-shadow .14s;display:inline-flex}.primary-action:not(:disabled):hover,.secondary-action:not(:disabled):hover{transform:translate(-2px,-2px)}.primary-action.coral{background:var(--coral);box-shadow:4px 5px 0 var(--line)}.primary-action.coral:not(:disabled):hover{box-shadow:6px 7px 0 var(--line)}.primary-action.mint-action{background:var(--mint);width:min(310px,100%);box-shadow:4px 5px 0 var(--line);margin:14px auto 0}.secondary-action{box-shadow:3px 4px 0 var(--line);background:#fff}.ladder-game{background:linear-gradient(#f4fff9 0,#fff 78%);min-height:440px;padding:18px 18px 16px}.ladder-toolbar{color:#665c6b;justify-content:space-between;align-items:center;gap:12px;min-height:35px;margin-bottom:10px;font-size:12px;font-weight:800;display:flex}.ladder-toolbar button{color:#367a69;cursor:pointer;background:#e5f7f1;border:0;border-radius:9px;padding:7px 9px;font-size:11px;font-weight:850}.ladder-starts,.ladder-destinations{grid-template-columns:repeat(var(--ladder-count), minmax(0,1fr));align-items:center;padding:0 16px;display:grid}.ladder-starts button{border:2px solid var(--line);background:var(--yellow);width:min(100%,clamp(31px,6vw,40px));height:clamp(31px,6vw,40px);box-shadow:2px 3px 0 var(--line);cursor:pointer;border-radius:12px;place-items:center;margin:0 auto;font-size:13px;font-weight:950;transition:transform .15s;display:grid}.ladder-starts button:nth-child(2n){background:#ffb6cb;transform:rotate(3deg)}.ladder-starts button:nth-child(3n){background:#a9d0ff;transform:rotate(-3deg)}.ladder-starts button:hover:not(:disabled),.ladder-starts button.is-chosen{background:var(--coral);transform:translateY(-3px)scale(1.06)}.ladder-field{height:258px;margin:12px 34px;position:relative}.ladder-rail,.ladder-rung{background:#a99dac;display:block;position:absolute}.ladder-rail{border-radius:3px;width:3px;top:0;bottom:0;transform:translate(-50%)}.ladder-field.is-concealed .ladder-rail{opacity:.2;filter:blur(1.5px)}.ladder-rung{opacity:0;border-radius:3px;height:3px;animation:.2s forwards rung-reveal;transform:translateY(-50%)}.ladder-cover{z-index:4;color:#376f62;background:repeating-linear-gradient(135deg,#fffffff2 0 12px,#e5f7f1f5 12px 24px);border:2px dashed #8bbcae;border-radius:22px;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:11px -16px;box-shadow:4px 5px #3c31431f}.ladder-mysteries{gap:10px;margin-bottom:10px;display:flex}.ladder-mysteries span{border:2px solid var(--line);background:var(--yellow);width:38px;height:38px;box-shadow:2px 3px 0 var(--line);color:var(--line);border-radius:13px;place-items:center;font-size:21px;font-weight:950;display:grid;transform:rotate(-5deg)}.ladder-mysteries span:nth-child(2){background:#ffb6cb;transform:translateY(-5px)rotate(4deg)}.ladder-mysteries span:nth-child(3){background:#a9d0ff;transform:rotate(6deg)}.ladder-cover strong{font-size:17px}.ladder-cover small{color:#67877e;margin-top:5px;font-size:11px;font-weight:800}.ladder-path{z-index:2;background:var(--coral);opacity:0;border-radius:6px;animation:.18s forwards path-appear;display:block;position:absolute;box-shadow:0 0 0 2px #ffffffe6}.ladder-path.vertical{width:6px;transform:translate(-50%)}.ladder-path.horizontal{height:6px;transform:translateY(-50%)}.ladder-destinations{align-items:start}.ladder-destinations>span{border-radius:12px;flex-direction:column;align-items:center;gap:3px;min-width:0;padding:4px 2px;transition:transform .2s,background .2s;display:flex}.ladder-destinations b{font-size:clamp(18px,4vw,25px)}.ladder-destinations small{color:#766b7a;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:clamp(8px,1.6vw,10px);font-weight:800;overflow:hidden}.ladder-destinations .is-destination{box-shadow:0 0 0 2px var(--line);background:#fff0b5;transform:translateY(3px)scale(1.04)}.vote-game{background:linear-gradient(#fff8fc 0,#fff 70%);flex-direction:column;min-height:440px;padding:16px;display:flex}.vote-status{background:#f3ebf4;border-radius:15px;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;margin-bottom:12px;padding:10px 12px;display:grid}.vote-status>div{border-right:1px solid #d9cedb;flex-direction:column;align-items:center;padding-right:12px;display:flex}.vote-status span{color:#8d8091;font-size:10px;font-weight:800}.vote-status strong{font-size:27px;line-height:1}.vote-status strong small{margin-left:2px;font-size:11px}.vote-status p{color:#776c7b;margin:0;font-size:11px;line-height:1.45}.vote-status>button{color:#756a79;cursor:pointer;background:#fff;border:0;border-radius:8px;padding:7px 9px;font-size:10px;font-weight:850}.vote-list{scrollbar-width:thin;gap:7px;max-height:293px;display:grid;overflow:auto}.vote-row{background:#fff;border:2px solid #dfd6e0;border-radius:14px;grid-template-columns:37px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:54px;padding:7px 9px;display:grid}.vote-row.is-tied{border-color:var(--line);background:color-mix(in srgb,var(--vote-color) 18%,#fff);box-shadow:2px 3px 0 var(--vote-color)}.vote-emoji{background:color-mix(in srgb,var(--vote-color) 24%,#fff);border-radius:11px;place-items:center;width:36px;height:36px;font-size:21px;display:grid}.vote-row>div:nth-child(2){flex-direction:column;min-width:0;display:flex}.vote-row strong{font-size:13px}.vote-row small{color:#8a7e8e;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:10px;overflow:hidden}.vote-controls{grid-template-columns:32px 28px 32px;align-items:center;display:grid}.vote-controls button{border:2px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;place-items:center;width:31px;height:31px;font-size:18px;font-weight:900;display:grid}.vote-controls button:last-child{background:var(--vote-color)}.vote-controls output{text-align:center;font-size:15px;font-weight:950}.tie-card{border:2px solid var(--line);box-shadow:2px 3px 0 var(--line);background:#fff0b8;border-radius:13px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin-top:11px;padding:10px 11px;display:grid}.tie-card>span{font-size:24px}.tie-card strong{font-size:12px}.tie-card p{color:#776756;margin:2px 0 0;font-size:10px}.tie-card button{border:2px solid var(--line);cursor:pointer;background:#fff;border-radius:9px;padding:8px 10px;font-size:11px;font-weight:900}.random-game{background:radial-gradient(circle at 50% 38%,#f3edff 0 34%,#0000 35%);flex-direction:column;justify-content:center;align-items:center;gap:22px;min-height:440px;padding:20px;display:flex}.random-capsule{border:3px solid var(--line);width:min(320px,92%);box-shadow:6px 7px 0 var(--line);background:#fff;border-radius:28px;flex-direction:column;align-items:center;gap:7px;padding:30px 22px;display:flex}.random-capsule.is-shuffling{animation:.32s linear infinite capsule-wobble}.random-emoji{filter:drop-shadow(0 3px #3c314326);font-size:56px;line-height:1}.random-capsule strong{letter-spacing:-.04em;text-align:center;min-height:29px;font-size:23px}.random-capsule small{color:var(--muted);font-size:11px;font-weight:800}.croc-game{background:linear-gradient(#eefaf0 0,#fff 75%);flex-direction:column;min-height:440px;padding:16px;display:flex}.croc-toolbar{color:#52685a;justify-content:space-between;align-items:center;gap:12px;min-height:35px;margin-bottom:4px;font-size:12px;font-weight:800;display:flex}.croc-toolbar button{color:#2f7a44;cursor:pointer;background:#e2f3e6;border:0;border-radius:9px;padding:7px 9px;font-size:11px;font-weight:850}.croc-stage{flex-direction:column;flex:1;justify-content:center;padding:26px 4px 12px;display:flex;position:relative;overflow:hidden}.croc-upper{z-index:2;border:3px solid var(--line);background:linear-gradient(#7ed08a,#5cb56c);border-radius:54px 54px 14px 14px;height:96px;margin:0 14px;position:relative;box-shadow:4px 4px #3c314324}.croc-upper:after{content:"";background:radial-gradient(circle at 8px 0,#fff 6.5px,#0000 7.2px) 0 0/17px 13px repeat-x;height:13px;position:absolute;bottom:-9px;left:18px;right:18px}.croc-eye{border:3px solid var(--line);background:#fff;border-radius:50%;width:34px;height:34px;position:absolute;top:-17px}.croc-eye:first-child{left:21%}.croc-eye:nth-child(2){right:21%}.croc-eye i{background:var(--line);border-radius:50%;width:9px;height:12px;position:absolute;top:9px;left:10px}.croc-nose{gap:15px;display:flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.croc-nose i{background:#2b42308c;border-radius:50%;width:9px;height:9px}.croc-mouth{border:3px solid var(--line);background:linear-gradient(#ff9aa8,#f77f92);border-top:0;border-radius:0 0 30px 30px;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));justify-items:center;gap:8px;min-height:118px;margin:0 26px;padding:20px 12px 14px;display:grid;position:relative}.croc-tooth{border:2.5px solid var(--line);cursor:pointer;background:#fff;border-radius:10px 10px 14px 14px;flex-direction:column;align-items:center;gap:4px;width:100%;min-width:0;max-width:122px;padding:9px 4px 7px;transition:transform .12s,box-shadow .12s,background .12s,opacity .12s;display:flex;box-shadow:0 4px #3c314359}.croc-tooth:not(:disabled):not(.is-safe):hover{transform:translateY(-3px)}.tooth-emoji{font-size:22px;line-height:1}.croc-tooth small{color:#6c6070;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:9.5px;font-weight:850;overflow:hidden}.croc-tooth.is-safe{box-shadow:none;opacity:.55;cursor:not-allowed;background:#ece5ed;transform:translateY(4px)scale(.94)}.croc-tooth.is-bitten{z-index:1;background:var(--coral);opacity:1;animation:.3s 2 tooth-alarm;transform:translateY(3px);box-shadow:0 0 0 3px #fff}.croc-stage.is-biting .croc-upper{animation:.6s cubic-bezier(.5,-.25,.6,1.25) forwards croc-chomp}.croc-stage.is-biting .croc-mouth{animation:.35s .3s mouth-shake}footer{color:#817686;text-align:center;justify-content:center;align-items:center;gap:10px;padding:26px 8px 4px;font-size:11px;display:flex}footer p{margin:0}footer strong{color:#5f5364}.result-backdrop{z-index:30;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#2e243594;place-items:center;padding:20px;animation:.18s fade-in;display:grid;position:fixed;inset:0}.result-sheet{border:3px solid var(--line);background:var(--paper);width:min(470px,100%);box-shadow:9px 11px 0 var(--line);text-align:center;border-radius:30px;padding:34px 30px 26px;animation:.38s cubic-bezier(.18,.9,.25,1.18) result-pop;position:relative}.result-close{z-index:3;cursor:pointer;background:#eee7ef;border:0;border-radius:50%;place-items:center;width:38px;height:38px;font-size:25px;display:grid;position:absolute;top:13px;right:14px}.confetti span{color:var(--coral);font-size:23px;font-weight:900;position:absolute}.confetti span:first-child{top:28px;left:38px}.confetti span:nth-child(2){color:var(--mint);top:72px;right:44px}.confetti span:nth-child(3){color:#8ba7ff;bottom:104px;left:35px;transform:rotate(25deg)}.confetti span:nth-child(4){color:#e9a048;top:25px;right:103px}.confetti span:nth-child(5){color:#d99aea;bottom:145px;right:32px}.result-kicker{color:#8b6571;margin:4px 0 12px;font-size:13px;font-weight:850}.result-emoji{border:3px solid var(--line);background:var(--yellow);width:90px;height:90px;box-shadow:4px 5px 0 var(--line);border-radius:28px;place-items:center;margin:0 auto 13px;font-size:52px;display:grid;transform:rotate(-4deg)}.result-sheet h2{letter-spacing:-.055em;margin:0;font-size:clamp(30px,8vw,43px);line-height:1.15}.result-menu{color:#695d6e;margin:9px 0 13px;font-size:14px;font-weight:700}.result-meta{justify-content:center;gap:7px;display:flex}.result-meta span{color:#736776;background:#f0eaf1;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:800}.result-actions{grid-template-columns:.8fr 1.2fr;gap:10px;margin-top:23px;display:grid}.result-actions button{width:100%;padding-inline:10px}.result-map{color:#7b6d80;text-underline-offset:3px;margin-top:18px;font-size:11px;font-weight:850;display:inline-block}@keyframes capsule-wobble{0%,to{transform:rotate(-1.6deg)}50%{transform:rotate(1.6deg)translateY(-2px)}}@keyframes croc-chomp{0%{transform:translateY(0)}25%{transform:translateY(-18px)rotate(-2deg)}60%{transform:translateY(calc(var(--croc-drop,74px) + 4px)) rotate(1deg)}78%{transform:translateY(calc(var(--croc-drop,74px) - 4px))}to{transform:translateY(var(--croc-drop,74px))}}@keyframes mouth-shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes tooth-alarm{50%{transform:translateY(3px)scale(1.14)}}@keyframes path-appear{0%{opacity:0;transform:scale(.2)}to{opacity:1}}@keyframes rung-reveal{0%{opacity:0;transform:translateY(-50%)scaleX(.15)}to{opacity:1;transform:translateY(-50%)scaleX(1)}}@keyframes result-pop{0%{opacity:0;transform:translateY(25px)scale(.9)rotate(-2deg)}to{opacity:1;transform:none}}@keyframes banner-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}}@media (width<=980px){.workspace-grid{grid-template-columns:1fr}.candidate-panel{order:1}.game-panel{order:2;position:static}.restaurant-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=660px){.app-shell{padding:24px 14px 28px}.hero{flex-direction:column;align-items:flex-start;gap:18px;margin-bottom:22px}.brand-lockup{gap:13px}.mascot{width:76px;height:76px;box-shadow:4px 4px 0 var(--line);border-radius:25px}.mascot>span{font-size:45px}.mascot i{font-size:24px;top:-12px;right:-8px}h1{font-size:36px}.hero-copy{font-size:14px}.location-sticker{width:100%;min-width:0;transform:none}.decision-banner{grid-template-columns:auto 1fr auto;gap:9px;padding:12px}.decision-banner a{grid-column:2;justify-self:start}.decision-banner>button{grid-area:1/3}.paper-card{border-radius:23px;box-shadow:4px 5px #3c314329}.candidate-panel,.game-panel{padding:18px 14px}.section-heading h2{font-size:21px}.section-heading p{font-size:11px}.step-badge{width:39px;height:33px}.restaurant-list{grid-template-columns:1fr}.game-area,.roulette-game,.ladder-game,.vote-game,.random-game,.croc-game{min-height:414px}.croc-mouth{grid-template-columns:repeat(auto-fit,minmax(62px,1fr));margin-inline:16px}.croc-upper{margin-inline:6px}.ladder-starts button{border-radius:8px;font-size:11px}.ladder-destinations b{font-size:clamp(13px,4vw,25px)}.wheel-wrap{width:min(290px,76vw)}.wheel-center{width:60px;height:60px;font-size:30px}.ladder-field{height:240px;margin-inline:23px}.ladder-game{padding-inline:8px}.ladder-starts,.ladder-destinations{padding-inline:4px}.vote-game{padding:10px}.vote-status{grid-template-columns:auto 1fr}.vote-status>button{grid-column:2;justify-self:end;margin-top:-3px}footer{flex-wrap:wrap;align-items:flex-start}footer p{text-align:left;width:calc(100% - 35px)}.result-sheet{box-shadow:6px 7px 0 var(--line);border-radius:25px;padding:32px 19px 23px}.result-actions{grid-template-columns:1fr}}@media (width<=370px){.mascot{width:64px;height:64px}.mascot>span{font-size:39px}h1{font-size:31px}.eyebrow{font-size:9px}.mode-tabs button{gap:3px;font-size:12px}.mode-tabs button span{font-size:16px}.restaurant-toggle{grid-template-columns:40px minmax(0,1fr) 25px;gap:7px}.restaurant-emoji{width:38px;height:38px}.wheel-wrap{width:250px}.wheel-label{width:60px;transform:rotate(var(--label-angle)) translateY(-76px);margin-left:-30px;font-size:8px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
