@font-face{font-family:Chroma Sans;src:url(/fonts/NotoSansKR-subset.woff2) format("woff2");font-style:normal;font-weight:300 800;font-display:swap}@font-face{font-family:Chroma Display;src:url(/fonts/NotoSerifKR-Bold-subset.woff2) format("woff2");font-style:normal;font-weight:700;font-display:swap}:root{color-scheme:dark;--ink: #11100e;--ink-soft: #1a1916;--panel: #22211d;--panel-bright: #2a2924;--ivory: #f4eee1;--ivory-dim: #b6b0a4;--acid: #d8ff37;--violet: #7a4dff;--coral: #ff6a54;--reveal-found: #399cff;--reveal-survived: #ff4f45;--line: rgb(244 238 225 / 20%);--line-bold: rgb(244 238 225 / 44%);--black: #050504;--sans: "Chroma Sans", "Noto Sans KR", sans-serif;--display: "Chroma Display", "Noto Serif KR", serif;--ease-out: cubic-bezier(.22, 1, .36, 1);--safe-top: max(16px, env(safe-area-inset-top));--safe-right: max(16px, env(safe-area-inset-right));--safe-bottom: max(16px, env(safe-area-inset-bottom));--safe-left: max(16px, env(safe-area-inset-left))}*{box-sizing:border-box}html,body{width:100%;min-width:280px;height:100%;margin:0;overflow:hidden;background:var(--ink)}body,button,input,select{font-family:var(--sans)}body{color:var(--ivory);font-size:16px;line-height:1.5;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;overscroll-behavior:none}button,input,select{color:inherit}button,select{cursor:pointer}button{border:0}button,input,select,a{min-height:44px}button:disabled,select:disabled{cursor:not-allowed;opacity:.45}button,a,input,select{-webkit-tap-highlight-color:transparent}:focus{outline:none}:focus-visible{outline:3px solid var(--acid);outline-offset:4px}::selection{color:var(--ink);background:var(--acid)}[hidden]{display:none!important}.skip-link{position:fixed;z-index:1000;top:8px;left:50%;min-height:auto;padding:10px 16px;color:var(--ink);background:var(--acid);font-weight:800;transform:translate(-50%,-150%);transition:transform .18s ease}.skip-link:focus{transform:translate(-50%)}#app,#game-stage,#primary-interface{position:fixed;inset:0}#app{isolation:isolate;background:radial-gradient(circle at 73% 24%,rgb(122 77 255 / 11%),transparent 30%),radial-gradient(circle at 16% 82%,rgb(216 255 55 / 7%),transparent 25%),var(--ink)}#game-stage{z-index:0;overflow:hidden;background:var(--ink)}#game-stage canvas{display:block;width:100%!important;height:100%!important;touch-action:none}#primary-interface{z-index:3;pointer-events:none}#primary-interface>*{pointer-events:auto}.gallery-grain{position:fixed;z-index:2;inset:0;opacity:.16;pointer-events:none;background-image:repeating-linear-gradient(0deg,transparent 0 3px,rgb(255 255 255 / 3%) 4px),repeating-linear-gradient(90deg,transparent 0 7px,rgb(255 255 255 / 2%) 8px);mix-blend-mode:soft-light}.masthead{position:fixed;z-index:20;top:var(--safe-top);right:var(--safe-right);left:var(--safe-left);display:grid;grid-template-columns:minmax(190px,1fr) auto auto;align-items:start;gap:24px;min-height:64px;pointer-events:none}.masthead>*{pointer-events:auto}.wordmark{display:flex;align-items:flex-start;width:fit-content;min-height:56px;color:var(--ivory);text-decoration:none}.wordmark__index{margin-right:14px;color:var(--acid);font-size:9px;font-weight:800;letter-spacing:.15em;writing-mode:vertical-rl}.wordmark__name{font-size:13px;font-weight:800;line-height:.95;letter-spacing:-.03em}.masthead__edition{display:grid;gap:4px;padding:0 20px;border-right:1px solid var(--line);color:var(--ivory-dim);font-size:9px;font-weight:700;line-height:1.2;letter-spacing:.12em;text-align:right}.icon-button{min-width:44px;min-height:44px;padding:0;border:1px solid var(--line-bold);background:#11100ec7}.sound-toggle{display:flex;align-items:center;gap:10px;width:116px;padding:0 11px;font-size:9px;font-weight:800;letter-spacing:.08em}.sound-toggle:hover{color:var(--ink);border-color:var(--acid);background:var(--acid)}.sound-bars{display:flex;align-items:center;gap:2px;height:18px}.sound-bars i{display:block;width:2px;height:35%;background:currentColor;animation:sound-bar .8s ease-in-out infinite alternate}.sound-bars i:nth-child(2){height:90%;animation-delay:-.42s}.sound-bars i:nth-child(3){height:60%;animation-delay:-.17s}.sound-toggle[aria-pressed=false] .sound-bars i{height:2px;animation:none}@keyframes sound-bar{to{height:100%}}.screen{position:fixed;inset:0;overflow-x:hidden;overflow-y:auto;padding:max(104px,calc(var(--safe-top) + 80px)) max(32px,var(--safe-right)) max(34px,var(--safe-bottom)) max(32px,var(--safe-left));background:var(--ink);scrollbar-width:thin;scrollbar-color:var(--acid) var(--ink)}.screen:before{content:"";position:fixed;z-index:-1;inset:0;pointer-events:none}.eyebrow{margin:0;color:var(--acid);font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.section-number{display:grid;width:28px;height:28px;place-items:center;flex:0 0 auto;border:1px solid var(--line-bold);border-radius:50%;color:var(--ivory-dim);font-size:9px;font-weight:800}.button{position:relative;display:inline-flex;min-height:48px;align-items:center;justify-content:space-between;gap:20px;padding:12px 16px;border:1px solid var(--line-bold);background:transparent;font-size:13px;font-weight:800;letter-spacing:-.01em;transition:color .16s ease,background .16s ease,border-color .16s ease,transform .16s ease}.button:hover:not(:disabled){transform:translateY(-2px)}.button--wide{width:100%}.button--xl{min-height:64px;padding-inline:22px;font-size:16px}.button--acid{color:var(--ink);border-color:var(--acid);background:var(--acid)}.button--acid:hover:not(:disabled){color:var(--acid);background:var(--ink)}.button--violet{color:var(--ivory);border-color:var(--violet);background:var(--violet)}.button--coral{color:var(--ink);border-color:var(--coral);background:var(--coral)}.button--ghost:hover:not(:disabled){color:var(--ink);border-color:var(--ivory);background:var(--ivory)}.button--ink{color:var(--ivory);border-color:var(--ink);background:var(--ink)}.title-screen{display:grid;grid-template-columns:70px minmax(360px,1fr) minmax(300px,440px);grid-template-rows:1fr auto;align-items:center;gap:28px clamp(32px,6vw,110px);background:linear-gradient(105deg,#11100eeb 0 59%,#11100ea8 59%),repeating-linear-gradient(90deg,transparent 0 calc(25% - 1px),var(--line) 25%),radial-gradient(circle at 72% 38%,var(--violet),transparent 30%),var(--ink)}.title-screen:after{content:"";position:absolute;z-index:-1;top:-18vmax;right:-9vmax;width:48vmax;aspect-ratio:1;border:1px solid rgb(216 255 55 / 24%);border-radius:50%;box-shadow:inset 0 0 0 7vmax #11100e57,inset 0 0 0 7.1vmax #d8ff3733}.title-screen__issue{display:grid;align-self:stretch;justify-items:center;padding-top:10vh;border-right:1px solid var(--line);color:var(--ivory-dim);font-size:9px;font-weight:800;letter-spacing:.15em;writing-mode:vertical-rl}.title-screen__issue strong{margin-block:20px;color:var(--acid);font-family:var(--display);font-size:46px;line-height:1;letter-spacing:-.1em}.title-screen__headline{max-width:740px;animation:editorial-rise .9s var(--ease-out) both}.title-screen h1{margin:18px 0 26px}.title-kicker{display:block;margin-bottom:5px;color:var(--ivory-dim);font-size:clamp(18px,2vw,32px);font-weight:300;letter-spacing:-.06em}.title-display{display:block;font-family:var(--display);font-size:clamp(64px,8.4vw,148px);line-height:.86;letter-spacing:-.095em;text-wrap:balance}.title-display:first-letter{color:var(--acid)}.title-lede{max-width:570px;margin:0;color:var(--ivory-dim);font-size:clamp(13px,1.2vw,17px);font-weight:400;line-height:1.8;word-break:keep-all}.entry-card{align-self:center;padding:clamp(24px,3vw,42px);border-top:5px solid var(--acid);background:var(--ivory);color:var(--ink);box-shadow:20px 20px #0505046b;animation:editorial-rise .9s .12s var(--ease-out) both}@keyframes editorial-rise{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.entry-card__head{display:flex;align-items:center;gap:14px;margin-bottom:30px}.entry-card .section-number{color:var(--ink);border-color:#11100e61}.entry-card .eyebrow{color:#5a562f}.entry-card h2{margin:0;font-family:var(--display);font-size:28px;letter-spacing:-.06em}.field-label{display:block;margin-bottom:8px;font-size:11px;font-weight:800}.field-line{position:relative;border-bottom:2px solid var(--ink)}.field-line input{width:100%;min-height:58px;padding:4px 74px 4px 0;border:0;border-radius:0;outline:0;color:var(--ink);background:transparent;font-family:var(--display);font-size:21px;font-weight:700}.field-line input::placeholder{color:#11100e57}.field-line:focus-within{border-bottom-color:var(--violet)}.field-line__count{position:absolute;top:50%;right:0;color:#11100e7f;font-size:9px;font-weight:800;transform:translateY(-50%)}.field-hint{margin:8px 0 23px;color:#11100e94;font-size:10px}.entry-actions{display:grid;gap:8px}.entry-card .button--ghost{color:var(--ink);border-color:#11100e59}.entry-card .button--ghost:hover{color:var(--ivory);background:var(--ink)}.join-form{margin-top:17px;padding-top:17px;border-top:1px solid rgb(17 16 14 / 20%)}.code-entry{display:grid;grid-template-columns:1fr auto;gap:8px}.code-entry input{width:100%;min-width:0;min-height:50px;padding:0 14px;border:1px solid rgb(17 16 14 / 36%);border-radius:0;color:var(--ink);background:transparent;font-size:21px;font-weight:800;letter-spacing:.18em}.practice-link{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;width:100%;margin-top:22px;padding:12px 0 0;border-top:1px solid rgb(17 16 14 / 20%);color:var(--ink);background:transparent;text-align:left}.practice-link__mark{display:grid;width:36px;height:36px;place-items:center;border:1px solid rgb(17 16 14 / 28%);border-radius:50%;color:var(--violet);font-size:24px}.practice-link strong,.practice-link small{display:block}.practice-link strong{font-size:12px}.practice-link small{color:#11100e8c;font-size:9px}.title-screen__note{grid-column:2 / -1;display:flex;align-items:flex-start;gap:12px;max-width:340px;color:var(--ivory-dim);font-family:var(--display);font-size:13px;line-height:1.6}.title-screen__note>span{color:var(--coral);font-family:var(--sans);font-size:28px}.title-screen__note p{margin:0}.lobby-screen{display:grid;grid-template-columns:minmax(250px,.75fr) minmax(360px,1.3fr) minmax(270px,.8fr);grid-template-rows:auto 1fr auto;gap:24px;background:linear-gradient(90deg,transparent calc(33.333% - 1px),var(--line) 33.333%,transparent calc(33.333% + 1px)),linear-gradient(90deg,transparent calc(66.666% - 1px),var(--line) 66.666%,transparent calc(66.666% + 1px)),linear-gradient(135deg,rgb(122 77 255 / 10%),transparent 38%),var(--ink)}.lobby-intro h1{margin:16px 0 20px;font-family:var(--display);font-size:clamp(48px,5.5vw,92px);line-height:.92;letter-spacing:-.08em}.lobby-intro>p:last-child{max-width:360px;color:var(--ivory-dim);font-size:13px;line-height:1.75;word-break:keep-all}.room-ticket{position:relative;display:grid;grid-template-columns:1fr auto;align-content:center;gap:6px 20px;min-height:150px;padding:25px 30px;overflow:hidden;color:var(--ink);background:var(--acid)}.room-ticket:before,.room-ticket:after{content:"";position:absolute;left:26px;width:12px;height:12px;border-radius:50%;background:var(--ink)}.room-ticket:before{top:-6px}.room-ticket:after{bottom:-6px}.room-ticket>span{grid-column:1 / -1;font-size:9px;font-weight:800;letter-spacing:.13em}.room-ticket strong{align-self:center;font-family:var(--display);font-size:clamp(32px,4vw,58px);line-height:1;letter-spacing:.06em;white-space:nowrap}.lobby-roster,.host-options,.reveal-panel{padding:24px;border:1px solid var(--line);background:#1a1916e5}.lobby-roster{grid-column:2;grid-row:2 / 4}.host-options{grid-column:3;grid-row:2}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid var(--line)}.section-heading>div{display:flex;align-items:center;gap:12px}.section-heading h2{margin:0;font-family:var(--display);font-size:21px;letter-spacing:-.05em}.count-badge,.host-stamp{color:var(--acid);font-size:10px;font-weight:800;letter-spacing:.12em}.host-stamp{color:var(--violet)}.player-list{display:grid;gap:0;margin:0;padding:0;list-style:none;counter-reset:roster}.player-list:empty:after{content:"첫 번째 참여자를 기다리고 있어요…";display:grid;min-height:180px;place-items:center;color:var(--ivory-dim);font-family:var(--display);font-size:14px}.player-list li{display:grid;grid-template-columns:34px 1fr auto;align-items:center;min-height:62px;border-bottom:1px solid var(--line);counter-increment:roster}.player-list li:before{content:counter(roster,decimal-leading-zero);color:var(--ivory-dim);font-size:9px;font-weight:800}.player-list li[data-self=true]{color:var(--acid)}.player-list li[data-host=true]:after{content:"HOST";padding:4px 7px;border:1px solid currentColor;font-size:8px;font-weight:800;letter-spacing:.1em}.select-field{display:grid;grid-template-columns:1fr auto;align-items:center;gap:16px;padding-block:20px;border-bottom:1px solid var(--line)}.select-field strong,.select-field small{display:block}.select-field strong{font-size:12px}.select-field small{margin-top:3px;color:var(--ivory-dim);font-size:9px}.select-field select{min-width:105px;min-height:44px;padding:0 30px 0 12px;border:1px solid var(--line-bold);border-radius:0;color:var(--ivory);background:var(--ink);font-size:11px;font-weight:700}.timing-note{display:grid;grid-template-columns:auto auto 1fr auto auto;align-items:baseline;gap:7px;margin-top:25px}.timing-note span{color:var(--acid);font-family:var(--display);font-size:27px}.timing-note small{color:var(--ivory-dim);font-size:9px}.timing-note i{height:1px;background:var(--line)}.lobby-actions{grid-column:3;display:grid;align-self:end;gap:8px}.game-hud{position:fixed;z-index:30;top:var(--safe-top);right:var(--safe-right);left:var(--safe-left);display:grid;grid-template-columns:auto minmax(160px,1fr) auto auto;align-items:stretch;gap:8px;margin-top:72px;pointer-events:none}.game-hud>*{pointer-events:auto}.phase-card,.role-card,.charge-card,.hunt-card{min-height:72px;padding:10px 14px;border:1px solid var(--line-bold);background:#11100edb;box-shadow:0 10px 34px #00000038;backdrop-filter:blur(12px)}.phase-card{display:grid;grid-template-columns:auto auto;align-items:baseline;gap:0 16px;min-width:190px}.phase-timer{font-family:var(--display);font-size:31px;font-variant-numeric:tabular-nums;line-height:1}.timer-track{grid-column:1 / -1;height:3px;overflow:hidden;background:var(--line)}.timer-track i{display:block;width:100%;height:100%;background:var(--acid);transform-origin:left}.role-card{display:grid;grid-template-columns:auto auto 1fr;align-items:baseline;gap:12px}.role-card>span,.charge-card>span,.hunt-card>span{color:var(--ivory-dim);font-size:8px;font-weight:800;letter-spacing:.12em}.role-card strong{color:var(--acid);font-family:var(--display);font-size:22px}.role-card small{justify-self:end;color:var(--ivory-dim);font-size:10px}.charge-card,.hunt-card{display:grid;align-content:center;gap:8px}.charge-pips{display:flex;gap:4px}.charge-pips i{display:block;width:16px;height:8px;background:var(--coral);clip-path:polygon(4px 0,100% 0,calc(100% - 4px) 100%,0 100%)}.charge-pips i.is-spent{background:var(--line-bold)}.hunt-card strong{color:var(--acid);font-family:var(--display);font-size:23px}.hunt-card b{font:inherit}.seeker-wait{position:fixed;z-index:80;inset:0;display:grid;grid-template-columns:minmax(260px,520px) minmax(320px,1fr);align-items:center;gap:clamp(40px,9vw,160px);overflow:hidden;padding:max(100px,calc(var(--safe-top) + 78px)) max(8vw,var(--safe-right)) max(44px,var(--safe-bottom)) max(8vw,var(--safe-left));background:radial-gradient(circle at 27% 45%,#3e238d 0 7%,transparent 7.2%),radial-gradient(circle at 27% 45%,rgb(122 77 255 / 42%) 0 18%,transparent 18.2%),linear-gradient(115deg,#11100e 0 52%,#181329 52% 100%)}.seeker-wait:before{content:"";position:absolute;top:50%;left:27%;width:min(70vw,900px);aspect-ratio:1;border:1px solid rgb(244 238 225 / 28%);border-radius:50%;transform:translate(-50%,-50%)}.wait-orbit{position:relative;width:min(34vw,440px);aspect-ratio:1;justify-self:center;border:1px solid var(--line-bold);border-radius:50%;animation:orbit-spin 18s linear infinite}.wait-orbit:before,.wait-orbit:after{content:"";position:absolute;border:1px solid var(--line);border-radius:50%}.wait-orbit:before{inset:15%}.wait-orbit:after{inset:35%;background:var(--violet);box-shadow:0 0 100px #7a4dff94}.wait-orbit i{position:absolute;top:50%;left:50%;width:11px;height:11px;border-radius:50%;background:var(--acid)}.wait-orbit i:first-child{transform:translate(-50%,-50%) rotate(35deg) translate(49%)}.wait-orbit i:nth-child(2){background:var(--coral);transform:translate(-50%,-50%) rotate(165deg) translate(15vw)}.wait-orbit i:nth-child(3){width:6px;height:6px;transform:translate(-50%,-50%) rotate(270deg) translate(8vw)}@keyframes orbit-spin{to{transform:rotate(360deg)}}.wait-copy{position:relative;z-index:1;max-width:600px}.wait-copy h1{margin:15px 0 25px;font-family:var(--display);font-size:clamp(56px,7.5vw,120px);line-height:.9;letter-spacing:-.09em}.wait-copy>p:not(.eyebrow){max-width:440px;color:var(--ivory-dim);font-size:13px;line-height:1.8}.wait-countdown{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-top:40px;padding:18px 0;border-block:1px solid var(--line)}.wait-countdown span{color:var(--ivory-dim);font-size:10px}.wait-countdown strong{color:var(--acid);font-family:var(--display);font-size:36px;font-variant-numeric:tabular-nums}.seeker-wait blockquote{position:absolute;right:var(--safe-right);bottom:var(--safe-bottom);margin:0;color:#f4eee175;font-family:var(--display);font-size:11px}.paint-lab{position:fixed;z-index:50;top:max(168px,calc(var(--safe-top) + 150px));right:var(--safe-right);width:min(410px,calc(100vw - 32px));max-height:calc(100dvh - max(188px,calc(var(--safe-top) + 170px)) - var(--safe-bottom));overflow:auto;border:1px solid var(--line-bold);background:#11100ef0;box-shadow:0 20px 70px #00000073;backdrop-filter:blur(18px);scrollbar-width:thin;scrollbar-color:var(--acid) transparent}.paint-lab__toggle{display:none;width:100%;min-height:48px;align-items:center;justify-content:space-between;padding:0 16px;color:var(--acid);background:var(--ink);font-size:10px;font-weight:800;letter-spacing:.12em}.paint-lab__body{padding:20px}.paint-lab__head{display:flex;align-items:center;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--line)}.paint-lab__head h2{margin:1px 0 0;font-family:var(--display);font-size:22px;letter-spacing:-.05em}.lab-status{margin-left:auto;padding:4px 6px;color:var(--ink);background:var(--acid);font-size:8px;font-weight:800}.region-grid,.pose-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:0;padding:18px 0;border:0;border-bottom:1px solid var(--line)}.region-grid legend,.pose-grid legend{display:flex;width:100%;grid-column:1 / -1;justify-content:space-between;margin-bottom:7px;color:var(--ivory-dim);font-size:10px;font-weight:800}.region-grid legend small{color:var(--acid);font-size:inherit}.region-chip,.pose-chip{min-width:0;min-height:46px;border:1px solid var(--line);color:var(--ivory-dim);background:transparent;font-size:10px;font-weight:700}.region-chip{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:7px;padding:7px 8px;text-align:left}.region-chip span{color:#f4eee159;font-size:7px}.region-chip:hover,.region-chip.is-selected,.pose-chip:hover,.pose-chip.is-selected{color:var(--ink);border-color:var(--acid);background:var(--acid)}.sample-row{display:grid;grid-template-columns:1fr auto;gap:6px;padding:17px 0;border-bottom:1px solid var(--line)}.button--sample{justify-content:flex-start;color:var(--ivory)}.button--sample:hover{color:var(--ink);border-color:var(--violet);background:var(--violet)}.sample-eye{display:block;width:16px;height:16px;border:1px solid currentColor;border-radius:50% 0 50% 50%;transform:rotate(-45deg)}.sample-eye:after{content:"";display:block;width:4px;height:4px;margin:5px;border-radius:50%;background:currentColor}.sample-swatch{display:flex;min-height:48px;align-items:center;gap:9px;padding:5px 8px;border:1px solid var(--line)}.sample-swatch>i{display:block;width:28px;height:28px;background:var(--sample)}.sample-swatch small,.sample-swatch b{display:block}.sample-swatch small{color:var(--ivory-dim);font-size:7px}.sample-swatch b{font-size:9px;letter-spacing:.08em}.brush-hint{margin:0;padding:10px 2px;border-bottom:1px solid var(--line);color:var(--ivory-dim);font-size:9px;line-height:1.4}.brush-hint:before{content:"↘";margin-right:7px;color:var(--acid);font-weight:800}.material-controls{display:grid;gap:15px;padding:18px 0;border-bottom:1px solid var(--line)}.material-controls label{display:grid;grid-template-columns:auto auto;align-items:center;gap:3px 10px}.material-controls label>span{display:flex;grid-column:1 / -1;justify-content:space-between;font-size:10px}.material-controls output{color:var(--acid);font-variant-numeric:tabular-nums}.material-controls input[type=range]{width:100%;height:24px;grid-column:1 / -1;margin:0;accent-color:var(--acid)}.material-controls small{color:var(--ivory-dim);font-size:7px}.material-controls small:last-child{text-align:right}.pose-grid{grid-template-columns:repeat(4,1fr)}.pose-chip{position:relative;display:grid;min-height:72px;place-items:center;gap:1px;padding:6px 2px}.pose-chip i{font-family:var(--display);font-size:23px;font-style:normal}.pose-chip kbd{position:absolute;top:4px;right:5px;color:inherit;font-size:7px}.rotate-block{padding-top:13px}.rotate-block>span{display:block;margin-bottom:7px;color:var(--ivory-dim);font-size:10px;font-weight:800}.rotate-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.rotate-button{display:flex;min-width:0;min-height:44px;align-items:center;gap:8px;padding:7px 9px;overflow:hidden;border:1px solid var(--line);color:var(--ivory-dim);background:transparent;font-size:9px;font-weight:700;white-space:nowrap}.rotate-button kbd{display:grid;width:22px;height:22px;min-width:22px;place-items:center;border:1px solid var(--line-bold);color:var(--acid);font-size:8px}.rotate-button i{margin-left:auto;color:var(--acid);font-size:15px;font-style:normal}.rotate-button:hover{color:var(--ivory);border-color:var(--violet);background:#7a4dff3b}.rotate-button--lock{grid-column:1 / -1}.rotate-button--lock[aria-pressed=true]{color:var(--ink);border-color:var(--acid);background:var(--acid)}.rotate-button--lock[aria-pressed=true] kbd,.rotate-button--lock[aria-pressed=true] i{color:var(--ink);border-color:#10171d73}.button--lock{width:100%;min-height:66px;margin-top:18px}.button--attach{margin-top:8px}.button--attach[aria-pressed=true]{color:var(--ink);border-color:var(--acid);background:var(--acid)}.button--lock>span:nth-child(2){flex:1;text-align:left}.button--lock b,.button--lock small{display:block}.button--lock small{margin-top:2px;font-size:8px;font-weight:600}.lock-mark{font-size:24px}.scan-reticle{position:fixed;z-index:25;top:50%;left:50%;width:74px;height:74px;border:1px solid rgb(216 255 55 / 45%);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}.scan-reticle i{position:absolute;width:17px;height:17px;border-color:var(--acid);border-style:solid}.scan-reticle i:first-child{top:-3px;left:-3px;border-width:2px 0 0 2px}.scan-reticle i:nth-child(2){top:-3px;right:-3px;border-width:2px 2px 0 0}.scan-reticle i:nth-child(3){right:-3px;bottom:-3px;border-width:0 2px 2px 0}.scan-reticle i:nth-child(4){bottom:-3px;left:-3px;border-width:0 0 2px 2px}.scan-reticle span{position:absolute;top:50%;left:50%;width:5px;height:5px;border-radius:50%;background:var(--acid);box-shadow:0 0 12px var(--acid);transform:translate(-50%,-50%)}.scan-action{position:fixed;z-index:31;bottom:var(--safe-bottom);left:50%;display:grid;grid-template-columns:auto auto auto;align-items:center;gap:12px;min-width:280px;min-height:60px;padding:8px 12px;border:1px solid var(--acid);color:var(--ivory);background:#11100eeb;transform:translate(-50%);backdrop-filter:blur(14px)}.scan-action:hover{color:var(--ink);background:var(--acid)}.scan-action__lens{width:36px;height:36px;border:2px solid currentColor;border-radius:50%;box-shadow:inset 0 0 0 6px #7a4dffa6}.scan-action b,.scan-action small{display:block;text-align:left}.scan-action b{font-size:11px}.scan-action small{color:var(--ivory-dim);font-size:8px}.scan-action kbd{padding:3px 5px;border:1px solid currentColor;font-size:7px}.result-screen{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(500px,1.2fr);grid-template-rows:1fr auto;gap:32px clamp(40px,8vw,130px);align-items:center;background:radial-gradient(circle at 22% 50%,rgb(216 255 55 / 13%),transparent 34%),linear-gradient(90deg,transparent calc(50% - 1px),var(--line) 50%,transparent calc(50% + 1px)),var(--ink)}.result-verdict h1{margin:18px 0 25px;font-family:var(--display);font-size:clamp(54px,7.5vw,118px);line-height:.9;letter-spacing:-.09em}.result-verdict em{color:var(--acid);font-style:normal}.result-verdict>p:last-child{color:var(--ivory-dim)}.reveal-panel{max-height:58vh;overflow:auto}.reveal-list{margin:0;padding:0;list-style:none;counter-reset:reveal}.reveal-list:empty:after{content:"은신 기록을 불러오는 중…";display:grid;min-height:160px;place-items:center;color:var(--ivory-dim);font-family:var(--display)}.reveal-list li{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:start;gap:12px;min-height:132px;padding:15px 0;border-bottom:1px solid var(--line);counter-increment:reveal}.reveal-list li:before{content:counter(reveal,decimal-leading-zero);padding-top:3px;color:var(--ivory-dim);font-size:9px}.reveal-record__body{display:grid;min-width:0;gap:11px}.reveal-record__identity{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.reveal-record__identity b{overflow:hidden;font-family:var(--display);font-size:18px;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.reveal-record__identity small{flex:0 0 auto;color:var(--ivory-dim);font-size:8px}.reveal-record[data-status=hidden] .reveal-record__identity small{color:var(--acid)}.reveal-meta{display:grid;grid-template-columns:minmax(130px,1.35fr) minmax(72px,.7fr) minmax(112px,1fr);gap:5px;margin:0}.reveal-meta>div{min-width:0;padding:7px 8px;border:1px solid var(--line);background:#f0ebdd08}.reveal-meta dt{margin-bottom:3px;color:var(--ivory-dim);font-size:7px;letter-spacing:.12em}.reveal-meta dd{overflow:hidden;margin:0;font-size:8px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.reveal-palette{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px}.reveal-palette>span:first-child{color:var(--ivory-dim);font-size:7px;letter-spacing:.1em}.reveal-palette__swatches{display:grid;grid-template-columns:repeat(6,1fr);height:12px;overflow:hidden;border:1px solid rgb(240 235 221 / 28%)}.reveal-palette__swatches i{min-width:0;background:var(--swatch)}.reveal-material{display:grid;min-width:56px;min-height:30px;place-items:center;padding:0 7px;border:1px solid var(--line-bold);box-shadow:inset 4px 0 0 var(--reveal-color);color:var(--ivory);background:#11100ebf;font-size:7px;letter-spacing:.08em}.result-actions{grid-column:2;display:grid;grid-template-columns:auto 1fr auto;gap:8px}.button--spatial{position:relative;overflow:hidden;border-color:var(--reveal-found);color:var(--ivory);background:linear-gradient(90deg,var(--reveal-found) 0 5px,var(--reveal-survived) 5px 10px,transparent 10px),#399cff14}.button--spatial:hover:not(:disabled){color:var(--ink);border-color:var(--ivory);background:linear-gradient(90deg,var(--reveal-found) 0 50%,var(--reveal-survived) 50%),var(--ivory)}#app[data-spatial-reveal=true] .result-screen{visibility:hidden;opacity:0;pointer-events:none}.spatial-reveal-toolbar{position:fixed;z-index:70;bottom:var(--safe-bottom);left:var(--safe-left);width:min(430px,calc(100vw - var(--safe-left) - var(--safe-right)));overflow:hidden;border:1px solid var(--line-bold);border-top-color:var(--reveal-found);color:var(--ivory);background:linear-gradient(90deg,var(--reveal-found) 0 4px,transparent 4px calc(100% - 4px),var(--reveal-survived) calc(100% - 4px)),#11100ee5;box-shadow:0 24px 80px #00000094;backdrop-filter:blur(18px);animation:spatial-reveal-enter .42s var(--ease-out) both}@keyframes spatial-reveal-enter{0%{opacity:0;transform:translateY(18px)}}.spatial-reveal-toolbar__head{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:11px;padding:15px 17px 13px;border-bottom:1px solid var(--line)}.spatial-reveal-toolbar__index{display:grid;width:32px;min-height:32px;place-items:center;border:1px solid var(--line-bold);font-size:8px}.spatial-reveal-toolbar__head p,.spatial-reveal-toolbar__head h2{margin:0}.spatial-reveal-toolbar__head p{color:var(--ivory-dim);font-size:7px;font-weight:800;letter-spacing:.13em}.spatial-reveal-toolbar__head h2{font-family:var(--display);font-size:19px;letter-spacing:-.04em}.spatial-reveal-toolbar__live{color:var(--acid);font-size:7px;font-weight:800;letter-spacing:.1em}.spatial-reveal-toolbar__live:before{content:"";display:inline-block;width:5px;height:5px;margin-right:5px;border-radius:50%;background:currentColor;box-shadow:0 0 9px currentColor;vertical-align:1px}.spatial-reveal-key{display:flex;gap:17px;padding:10px 17px;border-bottom:1px solid var(--line);color:var(--ivory-dim);font-size:8px;font-weight:700}.spatial-reveal-key span{display:inline-flex;align-items:center;gap:6px}.spatial-reveal-key i{width:9px;height:9px;border:2px solid var(--reveal-found);border-radius:50%;box-shadow:0 0 8px #399cff99}.spatial-reveal-key i[data-outcome=survived]{border-color:var(--reveal-survived);box-shadow:0 0 8px #ff4f4599}.spatial-reveal-focus{min-height:49px;margin:0;padding:12px 17px;color:var(--ivory);font-size:10px;line-height:1.55}.spatial-reveal-controls{display:grid;grid-template-columns:52px 58px 52px minmax(0,1fr);border-top:1px solid var(--line)}.spatial-reveal-controls button{display:flex;min-width:0;min-height:48px;align-items:center;justify-content:center;gap:5px;border-right:1px solid var(--line);color:var(--ivory);background:#f4eee10a;font-size:15px}.spatial-reveal-controls button:hover,.spatial-reveal-controls button[aria-pressed=true]:hover{color:var(--ink);background:var(--acid)}.spatial-reveal-controls button[aria-pressed=true]{color:var(--reveal-found);background:#399cff1a}.spatial-reveal-controls button small{font-size:6px;font-weight:800;letter-spacing:.08em}#exit-spatial-reveal{justify-content:space-between;padding-inline:14px;border-right:0;color:var(--ink);background:var(--ivory);font-size:9px;font-weight:800}#exit-spatial-reveal span{font-size:18px;font-weight:300}.spatial-reveal-help{margin:0;padding:8px 17px 10px;color:var(--ivory-dim);font-size:7px}.spatial-reveal-help kbd{margin-inline:2px;color:var(--acid)}.desktop-help{position:fixed;z-index:26;bottom:var(--safe-bottom);left:var(--safe-left);display:flex;max-width:min(980px,calc(100vw - var(--safe-left) - var(--safe-right)));flex-wrap:wrap;gap:14px;padding:8px 11px;border:1px solid var(--line);color:var(--ivory-dim);background:#11100ebd;font-size:8px;pointer-events:none}kbd{font-family:var(--sans)}.desktop-help kbd{margin-right:4px;color:var(--ivory);font-weight:800}.touch-controls{position:fixed;z-index:2;inset:0;pointer-events:none}.touch-controls>*{pointer-events:auto;touch-action:none}.move-stick{position:absolute;bottom:calc(var(--safe-bottom) + 16px);left:calc(var(--safe-left) + 8px);width:116px;min-height:116px;border:1px solid rgb(244 238 225 / 50%);border-radius:50%;background:#11100e5c;backdrop-filter:blur(5px)}.move-stick:before,.move-stick:after{content:"";position:absolute;top:50%;left:50%;background:#f4eee138;transform:translate(-50%,-50%)}.move-stick:before{width:1px;height:78%}.move-stick:after{width:78%;height:1px}.move-stick>span{position:absolute;z-index:1;top:50%;left:50%;width:48px;height:48px;border:2px solid var(--acid);border-radius:50%;background:#11100ec7;box-shadow:0 0 22px #d8ff372e;transform:translate(-50%,-50%)}.look-pad{position:absolute;right:0;bottom:0;width:48vw;height:54vh;color:#f4eee13d;font-size:8px;font-weight:800;letter-spacing:.1em}.look-pad span{position:absolute;right:var(--safe-right);bottom:calc(var(--safe-bottom) + 128px);text-align:right}.touch-button{position:absolute;display:grid;width:64px;min-height:64px;place-items:center;border:1px solid var(--line-bold);border-radius:50%;color:var(--ivory);background:#11100eb8;backdrop-filter:blur(5px)}.touch-button span{font-size:19px;line-height:1}.touch-button b{font-size:8px}.touch-button--jump{right:calc(var(--safe-right) + 84px);bottom:calc(var(--safe-bottom) + 24px)}.touch-button--action{right:calc(var(--safe-right) + 8px);bottom:calc(var(--safe-bottom) + 64px);width:76px;min-height:76px;color:var(--ink);border-color:var(--acid);background:#d8ff37db}.toast-region{position:fixed;z-index:120;top:calc(var(--safe-top) + 78px);left:50%;display:grid;width:min(90vw,420px);gap:7px;transform:translate(-50%);pointer-events:none}.toast-region:not(:empty){padding:12px 16px;border:1px solid var(--line-bold);color:var(--ivory);background:#11100ef2;box-shadow:0 12px 40px #0006;font-size:12px;font-weight:700;text-align:center;animation:toast-in .3s var(--ease-out)}@keyframes toast-in{0%{opacity:0;transform:translateY(-12px)}}.connection-status{position:fixed;z-index:21;right:var(--safe-right);bottom:var(--safe-bottom);display:flex;align-items:center;gap:7px;min-height:28px;padding:5px 8px;color:var(--ivory-dim);background:#11100eb8;font-size:8px;font-weight:800;letter-spacing:.07em;pointer-events:none}.connection-status i{width:6px;height:6px;border-radius:50%;background:var(--acid);box-shadow:0 0 8px var(--acid)}.connection-status[data-state=offline] i{background:var(--coral);box-shadow:0 0 8px var(--coral)}noscript{position:fixed;z-index:999;inset:0;display:grid;place-items:center;padding:24px;color:var(--ink);background:var(--acid);font-family:var(--display);font-size:24px;text-align:center}@media(max-width:980px){.title-screen{grid-template-columns:46px minmax(280px,1fr) minmax(290px,370px);gap:24px}.title-display{font-size:clamp(56px,8vw,90px)}.lobby-screen{grid-template-columns:minmax(220px,.8fr) minmax(320px,1.2fr)}.room-ticket{grid-column:2}.lobby-roster{grid-column:2;grid-row:2 / 4}.host-options{grid-column:1;grid-row:2}.lobby-actions{grid-column:1}.game-hud{grid-template-columns:auto 1fr auto}.charge-card,.role-card small{display:none}}@media(max-width:480px){.masthead{grid-template-columns:1fr auto}.masthead__edition,.sound-label{display:none}.sound-toggle{width:44px;justify-content:center;padding:0}.screen{padding:max(88px,calc(var(--safe-top) + 68px)) var(--safe-right) max(24px,var(--safe-bottom)) var(--safe-left)}.title-screen{display:block;overflow-y:auto;background:radial-gradient(circle at 85% 8%,rgb(122 77 255 / 42%),transparent 34%),linear-gradient(rgb(17 16 14 / 70%),var(--ink) 44%),var(--ink)}.title-screen:after{top:-16vw;right:-36vw;width:110vw}.title-screen__issue,.title-screen__note{display:none}.title-screen__headline{padding:4vh 0 30px}.title-screen h1{margin-block:12px 18px}.title-kicker{font-size:17px}.title-display{font-size:clamp(57px,18vw,74px);line-height:.88}.title-lede{font-size:12px;line-height:1.7}.entry-card{margin:0 -4px var(--safe-bottom);padding:23px 20px;box-shadow:8px 8px #05050473}.entry-card__head{margin-bottom:22px}.entry-card h2{font-size:24px}.lobby-screen{display:block;padding-bottom:calc(var(--safe-bottom) + 92px)}.lobby-intro h1{margin-block:12px 16px;font-size:55px}.room-ticket,.lobby-roster,.host-options{margin-top:18px}.room-ticket{min-height:130px;padding:22px}.room-ticket strong{font-size:32px}.lobby-roster,.host-options{padding:18px}.lobby-actions{position:sticky;z-index:2;bottom:0;grid-template-columns:1fr auto;margin:18px -16px calc(var(--safe-bottom) * -1);padding:10px 16px var(--safe-bottom);background:linear-gradient(transparent,var(--ink) 18%)}.lobby-actions .button--xl{min-height:56px;font-size:13px}.game-hud{top:var(--safe-top);grid-template-columns:auto 1fr auto;gap:4px;margin-top:60px}.phase-card,.role-card,.hunt-card{min-width:0;min-height:58px;padding:7px 9px}.phase-card{display:grid;grid-template-columns:1fr;gap:2px;min-width:82px}.phase-card .eyebrow{font-size:7px}.phase-timer{font-size:24px}.timer-track{display:none}.role-card{grid-template-columns:1fr;gap:0}.role-card>span,.hunt-card>span{font-size:7px}.role-card strong,.hunt-card strong{font-size:18px}.seeker-wait{grid-template-columns:1fr;align-content:center;gap:34px;padding:max(94px,calc(var(--safe-top) + 76px)) var(--safe-right) max(26px,var(--safe-bottom)) var(--safe-left);background:radial-gradient(circle at 50% 25%,#3e238d 0 6%,transparent 6.2%),radial-gradient(circle at 50% 25%,rgb(122 77 255 / 40%) 0 19%,transparent 19.2%),linear-gradient(180deg,#11100e 0 58%,#181329 58%)}.seeker-wait:before{top:26%;left:50%;width:120vw}.wait-orbit{width:min(56vw,240px)}.wait-copy h1{margin-block:10px 16px;font-size:58px}.wait-copy>p:not(.eyebrow){font-size:11px}.wait-countdown{margin-top:22px}.seeker-wait blockquote{display:none}.paint-lab{inset:auto 0 0;width:100%;max-height:min(67dvh,610px);border-width:1px 0 0;border-color:var(--acid);border-radius:16px 16px 0 0}.paint-lab__toggle{display:flex;position:sticky;z-index:2;top:0;border-radius:16px 16px 0 0}.paint-lab__toggle:before{content:"";position:absolute;top:7px;left:50%;width:34px;height:3px;border-radius:2px;background:var(--line-bold);transform:translate(-50%)}.paint-lab__body{padding:14px var(--safe-right) calc(16px + var(--safe-bottom)) var(--safe-left)}.paint-lab[data-collapsed=true]{max-height:48px;overflow:hidden}.paint-lab[data-collapsed=true] .paint-lab__body{display:none}.region-grid{grid-template-columns:repeat(3,1fr)}.sample-row{grid-template-columns:1fr auto}.scan-action,.desktop-help{display:none}.result-screen{display:block;padding-bottom:calc(var(--safe-bottom) + 24px)}.result-verdict{margin:7vh 0 34px}.result-verdict h1{margin-block:12px 18px;font-size:57px}.reveal-panel{max-height:none;padding:18px}.reveal-list li{grid-template-columns:20px minmax(0,1fr)}.reveal-meta{grid-template-columns:1fr 1fr}.reveal-meta>div:first-child{grid-column:1 / -1}.reveal-material{grid-column:2;justify-self:start}.result-actions{position:sticky;bottom:0;grid-template-columns:1fr;margin:18px -16px calc(var(--safe-bottom) * -1);padding:12px 16px var(--safe-bottom);background:linear-gradient(transparent,var(--ink) 18%)}.connection-status{display:none}}@media(max-height:500px)and (orientation:landscape){.masthead{top:max(8px,env(safe-area-inset-top))}.wordmark__index,.masthead__edition,.sound-label{display:none}.wordmark{min-height:44px;align-items:center}.sound-toggle{width:44px;justify-content:center;padding:0}.screen{padding:max(62px,calc(env(safe-area-inset-top) + 54px)) max(18px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left))}.title-screen{grid-template-columns:minmax(250px,1fr) minmax(270px,350px);grid-template-rows:1fr;gap:28px;overflow-x:hidden;overflow-y:auto}.title-screen__issue,.title-screen__note{display:none}.title-display{font-size:clamp(48px,9vw,72px)}.title-lede{display:none}.entry-card{padding:18px 20px}.entry-card__head{margin-bottom:10px}.entry-card h2{font-size:20px}.field-line input{min-height:44px;font-size:17px}.field-hint{margin:4px 0 10px}.entry-actions{grid-template-columns:1fr 1fr}.practice-link{min-height:44px;margin-top:8px;padding-top:5px}.lobby-screen{grid-template-columns:minmax(210px,.65fr) minmax(290px,1fr) minmax(230px,.7fr);grid-template-rows:1fr auto;gap:12px}.lobby-intro h1{font-size:44px}.lobby-intro>p:last-child{display:none}.room-ticket{grid-column:1;grid-row:2;min-height:82px;padding:12px 16px}.room-ticket strong{font-size:27px}.room-ticket .button{min-height:44px;padding:8px}.lobby-roster{grid-column:2;grid-row:1 / 3;overflow-y:auto}.host-options{grid-column:3;grid-row:1;padding:14px;overflow-y:auto}.lobby-actions{grid-column:3;grid-row:2;grid-template-columns:1fr auto}.game-hud{top:max(8px,env(safe-area-inset-top));right:max(8px,env(safe-area-inset-right));left:max(8px,env(safe-area-inset-left));grid-template-columns:auto auto auto;margin-top:48px}.phase-card,.role-card,.hunt-card{min-height:52px;padding:5px 9px}.phase-card{min-width:145px}.phase-timer{font-size:22px}.role-card small,.charge-card{display:none}.seeker-wait{grid-template-columns:220px 1fr;gap:40px;padding:max(56px,calc(env(safe-area-inset-top) + 50px)) max(6vw,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(6vw,env(safe-area-inset-left))}.wait-orbit{width:min(34vh,190px)}.wait-copy h1{margin-block:8px 12px;font-size:45px}.wait-copy>p:not(.eyebrow){display:none}.wait-countdown{margin-top:16px;padding-block:10px}.seeker-wait blockquote{display:none}.paint-lab{top:max(56px,calc(env(safe-area-inset-top) + 50px));right:max(8px,env(safe-area-inset-right));width:min(370px,48vw);max-height:calc(100dvh - 64px - env(safe-area-inset-bottom))}.paint-lab__body{padding:13px}.paint-lab__head{padding-bottom:9px}.region-grid,.pose-grid{padding-block:9px}.region-chip{min-height:44px}.sample-row,.material-controls{padding-block:9px}.pose-chip{min-height:48px}.rotate-row{gap:4px}.rotate-button{min-height:44px;padding-inline:7px}.pose-chip i{display:none}.button--lock{min-height:50px;margin-top:9px}.button--lock small{display:none}.result-screen{grid-template-columns:.75fr 1.25fr;gap:30px}.result-verdict h1{font-size:48px}.reveal-panel{max-height:54vh;padding:14px}.result-actions{gap:5px}.touch-controls .move-stick{width:94px;min-height:94px}.look-pad{height:70vh}.touch-button--jump{right:calc(max(10px,env(safe-area-inset-right)) + 76px);bottom:calc(max(10px,env(safe-area-inset-bottom)) + 10px)}.touch-button--action{right:max(10px,env(safe-area-inset-right));bottom:calc(max(10px,env(safe-area-inset-bottom)) + 34px)}}@media(max-width:760px){.spatial-reveal-toolbar{right:0;bottom:0;left:0;width:100%;padding-bottom:env(safe-area-inset-bottom);border-width:1px 0 0;background:linear-gradient(90deg,var(--reveal-found) 0 4px,transparent 4px calc(100% - 4px),var(--reveal-survived) calc(100% - 4px)),#11100ef0}.spatial-reveal-toolbar__head{padding-inline:max(16px,env(safe-area-inset-left)) max(16px,env(safe-area-inset-right))}.spatial-reveal-toolbar__live{display:none}.spatial-reveal-key,.spatial-reveal-focus,.spatial-reveal-help{padding-inline:max(16px,env(safe-area-inset-left)) max(16px,env(safe-area-inset-right))}.spatial-reveal-controls{grid-template-columns:48px 54px 48px minmax(0,1fr)}.spatial-reveal-help{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media(pointer:coarse){.desktop-help,.scan-action{display:none!important}.region-chip:hover:not(.is-selected),.pose-chip:hover:not(.is-selected){color:var(--ivory-dim);border-color:var(--line);background:transparent}}@media(prefers-reduced-motion:reduce){.spatial-reveal-toolbar,.spatial-reveal-toolbar *{animation:none!important;transition:none!important}*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
