/* Full-screen first-visit reveal. Native dialog supplies keyboard focus isolation. */
.tcc-welcome-screen{position:fixed;inset:0;box-sizing:border-box;width:100%;max-width:none;height:100%;height:100dvh;max-height:none;margin:0;padding:28px;border:0;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,#124c83 0%,#071c38 48%,#020913 100%);color:white}
.tcc-welcome-screen[open]{display:grid;place-items:center;animation:tcc-intro-exit .45s 3.35s ease-in both}
.tcc-welcome-screen::backdrop{background:#020913}
.tcc-intro-brand{position:relative;z-index:2;text-align:center;width:min(680px,85vw);animation:tcc-brand-in 1s cubic-bezier(.2,.8,.2,1) both}
.tcc-intro-brand img{display:block;width:min(520px,100%);height:auto;max-height:26vh;object-fit:contain;margin:20px auto;padding:18px;box-sizing:border-box;background:#fff;border-radius:18px;box-shadow:0 0 50px #2caaff88,0 0 120px #1188ff44}
.tcc-intro-kicker{color:#aeeaff;font-size:13px;font-weight:700;letter-spacing:.35em}
.tcc-intro-title{font-size:clamp(28px,5vw,58px);font-weight:800;line-height:1.08;margin:24px 0}
.tcc-intro-title span{color:#83e9ff}
.tcc-intro-caption{font-size:clamp(12px,2vw,15px);line-height:1.8;letter-spacing:.09em;color:#e0eeff}
.tcc-intro-orbit{position:absolute;width:120vmax;height:120vmax;border-radius:50%;border:2px solid #6bdcff55;box-shadow:0 0 80px #249fff77,inset 0 0 80px #249fff55;animation:tcc-orbit 3.8s ease-out both;pointer-events:none}
.tcc-intro-grid{position:absolute;inset:-50%;background:linear-gradient(90deg,#54cfff22 1px,transparent 1px),linear-gradient(#54cfff22 1px,transparent 1px);background-size:80px 80px;transform:perspective(600px) rotateX(55deg);animation:tcc-grid 3.8s ease-out both;mask-image:radial-gradient(ellipse,#000,transparent 65%);pointer-events:none}
.tcc-intro-skip{position:absolute;z-index:3;right:max(22px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));padding:13px 20px;min-height:46px;border:1px solid #9cddff;border-radius:8px;background:#123458;color:#fff;font:600 15px system-ui;cursor:pointer}
.tcc-intro-skip:focus-visible,.tcc-welcome-replay:focus-visible{outline:3px solid #74e3ff;outline-offset:4px}
.storefront .tcc-welcome-replay{display:block;margin-top:20px;min-height:44px;padding:8px 13px;border:1px solid #9ad8ff;border-radius:5px;background:#102d50;color:#fff;font-size:12px;font-weight:600;cursor:pointer}
@keyframes tcc-brand-in{from{opacity:0;transform:scale(.88) translateY(20px);filter:blur(8px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes tcc-orbit{from{transform:scale(.15);opacity:0}30%{opacity:1}to{transform:scale(1.2);opacity:0}}
@keyframes tcc-grid{from{translate:0 60px;opacity:0}30%{opacity:1}to{translate:0 -40px;opacity:.5}}
@keyframes tcc-intro-exit{to{opacity:0;transform:scale(1.03)}}
@media(max-height:550px){.tcc-intro-brand img{margin:8px auto;max-height:23vh;padding:8px}.tcc-intro-title{font-size:26px;margin:10px 0}.tcc-intro-caption{font-size:11px}.tcc-intro-kicker{margin:0}}
@media(prefers-reduced-motion:reduce){.tcc-welcome-screen,.tcc-welcome-screen *{animation:none!important}.tcc-intro-orbit,.tcc-intro-grid{display:none}}
@media print{.tcc-welcome-screen,.tcc-welcome-replay{display:none!important}}
