.ui-start.splash { isolation: isolate; }
.ui-start.splash::before {
  content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none;
  background: linear-gradient(180deg, rgba(5,10,17,.22), rgba(5,10,17,.65) 55%, rgba(5,10,17,.92)), url('./cc-title-scene.png') center / cover;
}
.cc-game-title {
  position: fixed; top: max(65px, 9vh); left: 16px; right: 16px; margin: 0;
  color: #fff3d3; font: inherit; font-size: clamp(28px, 4.2vw, 58px);
  line-height: 1.12; text-align: center; text-shadow: 0 3px 12px #050a11;
  pointer-events: none; text-wrap: balance;
}
.splash-button { background: url('./cc-title-portal.png') center / contain no-repeat !important; }
.splash-button .splash-art { visibility: hidden; }
.splash-button .splash-label { text-shadow: 0 2px 6px #04161a; }
.splash-button:focus-visible { outline: 3px solid #89f1dc; outline-offset: 8px; }
.splash-credit { cursor: default; }
.grok-badge-avatar.cc-krix-portrait { width: 48px; height: 48px; object-fit: contain; }
.grok-corner { display: none !important; }
@media (max-width: 520px) {
 .cc-game-title { top: 92px; font-size: 32px; }
 .ui-start.splash::before { background-position: 43% center; }
}
@media (max-height: 540px) {
 .cc-game-title { top: 48px; font-size: 25px; }
}

/* The transcript sits above the cinematic; phone artwork cannot occlude real text. */
.cc-rift-message {position:absolute;z-index:10000;left:50%;bottom:16px;transform:translateX(-50%);width:min(32rem,calc(100% - 32px));box-sizing:border-box;padding:12px 16px;background:#09151f;color:#fff9ee;border:1px solid #8bded7;border-radius:12px;box-shadow:0 8px 24px #0009;pointer-events:none;font-family:Arial,sans-serif;text-align:left;}
.cc-rift-message[hidden]{display:none!important;}
.cc-rift-message strong {display:inline;color:#9de5df;font-size:17px;line-height:1.45;}
.cc-rift-message p {display:inline;margin:0;font-size:17px;line-height:1.45;}
#game .hint-phone {--phone-text:clamp(14px,2.2svmin,18px);width:13em;}
#game .hint-phone[data-layout=compact]{width:12em;}
#game .hint-phone-bubble {font-size:1em;line-height:1.4;}
#game .speaker-text {font-size:clamp(16px,2.5svmin,20px);line-height:1.4;}
.splash-button .splash-label {font-size:clamp(22px,3.2vw,42px)!important;line-height:1.15;letter-spacing:.02em;max-width:94%;text-wrap:balance;}
@media(max-width:520px){.cc-rift-message{bottom:12px;padding:14px 16px;width:calc(100% - 24px)}.cc-rift-message p{font-size:16px;line-height:1.45}.cc-rift-message strong{font-size:15px}}

.cc-opening-v2{position:absolute;inset:0;z-index:300;background:#070d15;display:flex;align-items:center;justify-content:center;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#fff9ee}
.cc-opening-v2[hidden]{display:none!important}.cc-opening-world{position:relative;width:100%;height:100%;overflow:hidden;isolation:isolate}.cc-opening-room{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 65%}.cc-opening-shade{position:absolute;inset:0;background:linear-gradient(180deg,#02071322,#02071300 50%,#02071355)}
.cc-opening-rabbit{position:absolute;height:29%;width:auto;left:36%;top:86%;object-fit:contain;transform-origin:50% 100%;z-index:4;filter:drop-shadow(2px 8px 6px #02071399)}
.cc-opening-portal{position:absolute;left:75%;bottom:14%;width:44%;height:65%;object-fit:contain;object-position:center bottom;opacity:0;transform-origin:50% 100%;z-index:3;filter:drop-shadow(0 3px 18px #31d7c488)}
.cc-opening-light{position:absolute;inset:0;background:radial-gradient(ellipse at 76% 65%,#52f6de77,transparent 55%);opacity:0;pointer-events:none;z-index:5}
.cc-opening-message{position:absolute;left:50%;top:7%;transform:translateX(-50%);width:min(480px,calc(100% - 48px));box-sizing:border-box;padding:18px 22px;border:1px solid #e6c47d;background:#07131bf2;box-shadow:0 12px 32px #0008;border-radius:12px;opacity:0;z-index:8}.cc-opening-message strong{font-size:17px;line-height:1.3;color:#f0c67d}.cc-opening-message p{font-size:21px;line-height:1.5;margin:8px 0 0;text-wrap:pretty}
.cc-opening-reply{position:absolute;left:6%;bottom:4%;margin:0;font-size:18px;font-weight:600;line-height:1.4;padding:8px 12px;background:#07131be8;border-radius:6px;opacity:0;z-index:8}.cc-opening-fade{position:absolute;inset:0;background:#050c13;opacity:0;z-index:10;pointer-events:none}
.cc-roxy-signal{position:absolute;top:82px;left:14px;z-index:250;display:flex;align-items:center;gap:12px;width:270px;max-width:calc(100% - 28px);padding:10px 14px;box-sizing:border-box;color:#f4ffff;background:#081b23f2;border:1px solid #63d9dc;pointer-events:none;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-shadow:0 8px 20px #0005}.cc-roxy-signal[hidden]{display:none!important}.cc-roxy-signal img{width:80px;height:88px;object-fit:contain;image-rendering:pixelated;flex-shrink:0}.cc-roxy-signal strong{color:#99f4f3;font-size:16px}.cc-roxy-signal p{margin:6px 0 0;font-size:15px;line-height:1.4}
#game:has(.cc-opening-active) .cc-rift-message,#game:has(.cc-opening-active) .skip-hint{visibility:hidden}
@media(max-aspect-ratio:4/5){.cc-opening-world{height:min(100%,125vw);align-self:center}.cc-opening-message{top:3%;padding:13px 16px;width:calc(100% - 28px)}.cc-opening-message p{font-size:17px;line-height:1.45}.cc-opening-rabbit{height:29%}.cc-opening-reply{font-size:15px;left:4%;bottom:2%}.cc-opening-room{object-position:center bottom}.cc-roxy-signal{top:68px;width:250px}}
