/* Vintage's own loading scene: the diamond observatory. */
.boot-screen{position:fixed;inset:0;z-index:100000;overflow:hidden;background:#07151c;color:#e5f1f3;font-family:Arial,sans-serif;transition:opacity .45s,visibility .45s}
.boot-screen.finished{opacity:0;visibility:hidden;pointer-events:none}.booting{overflow:hidden}.booting #lobby,.booting .topbar{visibility:hidden}
.boot-logo-fragments{position:absolute;top:0;left:0;right:0;height:104px;pointer-events:none;opacity:0}.boot-logo-fragments>i{position:absolute;inset:0;background:url('/assets/vintage-logo.png') center/contain no-repeat;filter:drop-shadow(0 0 10px #bceaf766);transform-origin:center}.boot-burst{position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden}.boot-shockwave,.boot-burst-glow,.boot-shard{position:absolute;left:var(--burst-x);top:var(--burst-y)}.boot-shockwave{width:220px;height:220px;margin:-110px 0 0 -110px;border:1px solid #c4f7fa99;border-radius:50%;box-shadow:0 0 24px #a5dce344,inset 0 0 24px #a5dce333;opacity:0}.boot-burst-glow{width:620px;height:500px;margin:-250px 0 0 -310px;background:radial-gradient(ellipse,#c3f6ee55,#a9d4dc11 38%,transparent 70%);opacity:0}.boot-shard{width:var(--shard-size);height:calc(var(--shard-size)*1.8);background:var(--shard-color);clip-path:polygon(45% 0,100% 45%,30% 100%,0 40%);box-shadow:0 0 12px var(--shard-color);opacity:0}
.bursting .boot-logo{opacity:0}.bursting .boot-logo-fragments{opacity:1}.bursting .boot-logo-fragments>i{animation:logo-shatter .95s cubic-bezier(.12,.65,.3,1) forwards}.bursting .boot-shard{animation:logo-shatter .9s cubic-bezier(.12,.65,.3,1) forwards}.bursting .boot-shockwave{animation:diamond-shockwave .9s ease-out forwards}.bursting .boot-burst-glow{animation:diamond-flare .85s ease-out forwards}.bursting .boot-seal{animation:seal-break .9s ease-out forwards}
@keyframes logo-shatter{0%{opacity:1;transform:translate(0,0) rotate(0) scale(1)}45%{opacity:.85}100%{opacity:0;transform:translate(var(--piece-x),var(--piece-y)) rotate(var(--piece-turn)) scale(.35)}}@keyframes diamond-shockwave{0%{opacity:.9;transform:scale(.25)}100%{opacity:0;transform:scale(3.8)}}@keyframes diamond-flare{0%{opacity:.9;transform:scale(.45)}35%{opacity:.45}100%{opacity:0;transform:scale(1.6)}}@keyframes seal-break{0%{opacity:.65;transform:translateX(-50%) scale(1)}100%{opacity:0;transform:translateX(-50%) scale(1.32) rotate(14deg)}}
.boot-landscape{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 115%,#dcac6599,transparent 45%),radial-gradient(ellipse at 25% 45%,#175c6677,transparent 55%),radial-gradient(ellipse at 83% 20%,#42365088,transparent 50%),linear-gradient(175deg,#071018,#0e2731 60%,#27363a);overflow:hidden}
.boot-landscape:before{content:"";position:absolute;inset:0;background-image:radial-gradient(#e9f5e3aa .7px,transparent 1px),radial-gradient(#9cdae877 .6px,transparent 1px);background-size:103px 137px,173px 191px;background-position:20px 17px,71px 49px;mask-image:linear-gradient(#000,transparent 85%)}
.boot-landscape:after{content:"";position:absolute;left:-20%;right:-20%;bottom:-44%;height:66%;border-radius:50%;background:#020c13;border-top:1px solid #e5c88b77;box-shadow:0 -18px 90px #c2a66a33,0 -2px 16px #e9c68533;transform:rotate(-7deg)}
.boot-landscape i{position:absolute;left:13%;top:23%;width:75px;height:110px;clip-path:polygon(50% 0,100% 35%,70% 100%,20% 80%,0 35%);background:linear-gradient(135deg,#b7d8cd66,#153b4966 35%,#030e1b);border:1px solid #b4f0e4;filter:drop-shadow(0 0 20px #70e0ff44);animation:crystal-drift 9s ease-in-out infinite alternate;transform:rotate(-18deg)}
.boot-landscape i:nth-child(2){left:81%;top:55%;width:100px;height:160px;animation-delay:-3s}.boot-landscape i:nth-child(3){left:70%;top:12%;width:30px;height:46px;opacity:.6;animation-delay:-5s}.boot-landscape i:nth-child(4){left:25%;top:76%;width:23px;height:37px;opacity:.5;animation-delay:-7s}.boot-landscape i:nth-child(5){left:91%;top:20%;width:15px;height:27px;opacity:.5}
.boot-header,.boot-footer{position:absolute;left:4vw;right:4vw;display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:2px;color:#a9c3c6}.boot-header{top:34px}.boot-header>span:first-child{color:#e4e9d6;font-weight:900}.boot-footer{bottom:30px;font-size:8px}
.boot-center{position:absolute;top:50%;left:50%;width:min(380px,85vw);text-align:center;transform:translate(-50%,-42%)}
.boot-seal{position:absolute;width:340px;height:340px;top:-178px;left:50%;transform:translateX(-50%);opacity:.65;pointer-events:none}.boot-orbit{position:absolute;inset:0;border:1px solid #cbb98588;border-radius:50%;box-shadow:0 0 60px #9fe2dc0c;animation:seal-turn 24s linear infinite}.boot-orbit:before,.boot-orbit:after{content:"";position:absolute;inset:14px;border:1px dashed #cbb98566;border-radius:50%}.boot-orbit:after{inset:42px;border-style:solid;border-color:#9dd9db33}.boot-orbit-inner{inset:27px;animation-direction:reverse;border:2px dotted #e7d5a855}.boot-diamond{position:absolute;inset:76px;transform:rotate(45deg);border:1px solid #c6f2e988;box-shadow:inset 0 0 60px #70e0ff11}.boot-diamond:after{content:"";position:absolute;inset:18px;border:1px solid #9fc3c344}
.boot-logo{position:relative;display:block;width:100%;height:104px;object-fit:contain;filter:drop-shadow(0 6px 20px #000b)}.boot-caption{position:relative;margin:18px 0 91px;font-size:9px;letter-spacing:5px;color:#d9d5bb}.boot-progress-head{display:flex;justify-content:space-between;align-items:end;gap:12px}.boot-progress-head>span{font-size:8px;letter-spacing:1.8px;color:#adc5c4}.boot-progress-head output{font-size:24px;letter-spacing:-1px;color:#f3e5bf;font-weight:400}.boot-progress{height:2px;background:#bbcfcd26;margin-top:14px}.boot-progress>i{display:block;width:0;height:100%;background:linear-gradient(90deg,#9ee5df,#edd5a0);box-shadow:0 0 16px #dcdabb77;transition:width .15s}.boot-center>p#boot-detail{margin:16px 0;font-size:10px;color:#91adaf;line-height:1.6}.boot-center button{background:#c4d9d3;border:0;border-radius:4px;padding:11px 24px;color:#0a242a;font-size:10px;cursor:pointer}
@keyframes seal-turn{to{transform:rotate(360deg)}}@keyframes crystal-drift{to{translate:12px -23px;rotate:12deg}}
.signature-animated{background:linear-gradient(100deg,var(--signature-0),var(--signature-1),var(--signature-2),var(--signature-3),var(--signature-0));background-size:300% 100%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:signature-flow 5s linear infinite alternate}.signature-animated::selection{-webkit-text-fill-color:#fff;background:#345669}
@keyframes signature-flow{to{background-position:100% 0}}
.signature-note{border-top:1px solid #34505c66;padding-top:28px;margin-top:30px}.signature-note>span{font-size:9px;color:#91d2db;letter-spacing:2px}.signature-note p{font-size:13px;color:#8ba6b6;line-height:1.6;margin:10px 0 25px}.signature-palette{display:flex;gap:12px}.signature-palette>label,.signature-palette>div>label{flex:1;min-width:0}.signature-palette>div{display:flex;gap:12px;flex:3}.reserved-name-preview{min-height:96px;display:grid;place-content:center;font-size:26px}.collection-shell{width:min(1080px,96vw)}.reserved-name-editor input[type=color]{width:100%;padding:4px;cursor:pointer}.collection-footer .collection-link{margin:0}
.skins-tabs{grid-template-columns:repeat(5,1fr)}.skins-body:has(.titles-mode){grid-template-columns:minmax(0,1fr) 300px}.title-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:8px 4px 22px}.title-catalog-grid[hidden],.title-studio[hidden],#signature-extra-colors[hidden]{display:none!important}
.insignia-card{position:relative;padding:0 0 17px;border:1px solid #34424a;border-radius:10px;background:linear-gradient(150deg,#1b262e,#111820);text-align:left;color:#e3eff2;overflow:hidden;cursor:pointer;transition:background .2s,border-color .2s,transform .2s}.insignia-card:focus-visible{outline:2px solid var(--insignia);outline-offset:3px}.insignia-card:hover{transform:translateY(-3px);border-color:var(--insignia)}.insignia-card.selected{border-color:var(--insignia);background:linear-gradient(150deg,color-mix(in srgb,var(--insignia) 12%,#14232f),#111820)}.insignia-art{height:105px;display:grid;place-items:center;background:radial-gradient(ellipse,color-mix(in srgb,var(--insignia) 12%,transparent),transparent 72%);border-bottom:1px solid #3a4c5244;margin-bottom:15px}.insignia-art img{width:90%;max-width:250px;filter:drop-shadow(0 7px 13px #0008)}.insignia-card>strong,.insignia-card>small,.insignia-card>span{display:block;margin-left:16px;margin-right:12px}.insignia-card>strong{font-size:12px;letter-spacing:1px}.insignia-card>small{font-size:10px;color:#94aebc;margin-top:7px;min-height:24px;line-height:1.5}.insignia-card>span{font-size:9px;font-weight:bold;color:var(--insignia);margin-top:13px;letter-spacing:1px}
.titles-mode #skin-live-preview,.titles-mode #skin-preview-name,.titles-mode #skin-preview-shield,.titles-mode #skin-preview-flag,.titles-mode>.skin-remove-actions,.titles-mode>p{display:none}.title-studio{width:100%;text-align:center}.title-studio>small{display:block;color:#8cacba;font-size:8px;letter-spacing:1.3px;line-height:1.7}.title-studio canvas{display:block;width:100%;height:auto;max-width:310px;margin:4px auto;touch-action:none;cursor:grab}.title-studio canvas:active{cursor:grabbing}.title-studio canvas:focus-visible{outline:1px dashed #70e0ff;border-radius:50%;outline-offset:-12px}.title-studio h3{margin:3px 0 8px;color:#eaf6fb;font-size:18px}.title-studio p{font-size:11px;color:#9bb6c5;line-height:1.6}.title-studio-reset{background:none;border:1px solid #395461;color:#a8c9d4;border-radius:5px;padding:9px 16px;font-size:9px;margin:3px 0 18px;cursor:pointer}.title-studio .collection-primary{font-size:10px;padding:13px 6px}.title-studio .error{color:#ffa7aa}.title-studio>small:last-child{margin-top:16px;letter-spacing:0;font-size:10px}.skins-preview-panel.titles-mode{min-width:270px}.skins-preview-panel.titles-mode>.skin-slot-switch{margin-bottom:24px}
@media(min-width:1500px){.title-catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.boot-header span:last-child,.boot-footer span:last-child{display:none}.boot-seal{width:290px;height:290px;top:-145px}.boot-caption{margin-bottom:70px}.title-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.insignia-art{height:82px}.insignia-card>strong{font-size:10px}.insignia-card>small{font-size:9px}.skins-tabs button{font-size:10px;padding:10px 3px}.skins-preview-panel.titles-mode{min-width:0}.skins-preview-panel.titles-mode .title-studio{max-width:330px;margin:auto}.signature-note{display:none}.boot-center{transform:translate(-50%,-39%)}}
@media(prefers-reduced-motion:reduce){.boot-orbit,.boot-landscape i,.signature-animated{animation:none}.insignia-card{transition:none}}
.skins-preview-panel.titles-mode{min-width:0}.skins-preview-panel.titles-mode>*{flex-shrink:0}.title-studio canvas{max-width:230px}
.gameover{z-index:30;background:transparent;backdrop-filter:none;pointer-events:none;padding:24px;box-sizing:border-box}
.gameover-card{pointer-events:auto;box-sizing:border-box;width:min(430px,100%);padding:25px 30px 22px;text-align:center;border:1px solid #93c6d33d;border-radius:20px;background:linear-gradient(145deg,#142733a8,#08141eb8);backdrop-filter:blur(8px);box-shadow:0 18px 70px #0004;color:#edf8fb}
.death-brand{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #97c1c61f;padding-bottom:19px;margin-bottom:24px}.death-brand img{width:118px;height:35px;object-fit:contain}.death-brand span{font:700 8px Arial,sans-serif;letter-spacing:1px;color:#8eb8c7}.death-orbit{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 18px;border:1px solid #8ec9d533;border-radius:50%;font:38px Georgia;color:#b4e9ee;background:#84d3e909;box-shadow:0 0 28px #70e0ff08}
.gameover-card>small{font:700 8px Arial,sans-serif;letter-spacing:2px;color:#84b2c2}.gameover-card h2{font:500 32px Arial,sans-serif;letter-spacing:-1.2px;margin:12px 0 25px}.death-result{display:flex;justify-content:center;align-items:center;gap:17px;margin-bottom:26px}.death-result>span{font:700 8px Arial,sans-serif;letter-spacing:1.4px;color:#8caab8}.death-result strong{font:500 28px Arial,sans-serif;color:#e7f2ed;font-variant-numeric:tabular-nums}.death-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.death-actions button{cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;padding:15px 12px;border-radius:9px;font:800 10px Arial,sans-serif;letter-spacing:1.1px;transition:background .2s,translate .2s}.death-actions button:hover{translate:0 -2px}.death-actions button:focus-visible{outline:2px solid #e4fbff;outline-offset:4px}.death-play{background:#a4e5ed;color:#0b2634;border:1px solid #b0f3f8}.death-play>span:last-child{margin-left:auto;font-size:14px}.death-play>span:first-child{margin-right:auto;font-size:11px}.death-spectate{background:#9dbaca0c;border:1px solid #9ac6d23d;color:#d7e9ef}.death-spectate svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}.gameover-card .death-live-note{display:flex;justify-content:center;align-items:center;gap:7px;font:10px Arial,sans-serif;color:#8eacb9;margin:20px 0 0}.death-live-note i{width:5px;height:5px;border-radius:50%;background:#82e8ba;box-shadow:0 0 9px #82e8ba66}
@media(max-width:480px){.gameover-card{padding:21px}.gameover-card h2{font-size:29px}.death-brand span{font-size:7px}.death-actions button{padding:14px 9px;font-size:9px}}
@media(max-width:560px){.skins-body:has(.titles-mode){display:grid;grid-template-columns:1fr;grid-template-rows:auto auto;align-content:start;overflow:auto}.skins-body:has(.titles-mode)>.skins-content{grid-column:1;grid-row:2;overflow:visible;min-height:0;display:block}.skins-body:has(.titles-mode) .skins-scroll{overflow:visible}.skins-preview-panel.titles-mode{grid-column:1;grid-row:1;display:block;overflow:visible;padding:18px}.skins-preview-panel.titles-mode>.skin-slot-switch{max-width:180px;margin:12px auto}.title-studio{max-width:300px;margin:auto}.title-studio>small:first-child{margin-top:18px}.skins-body:has(.titles-mode) .skins-content-heading{padding-top:15px}}
