/* announce.css — one-time "Web Console" announcement popup (shown on whatever page opens first) */
.ann{position:fixed;inset:0;z-index:9000;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(4,6,9,.72);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;transition:opacity .35s var(--ease,ease)}
.ann[hidden]{display:none}
.ann.is-in{opacity:1}
.ann.is-out{opacity:0;pointer-events:none}
.ann__card{position:relative;width:min(560px,100%);max-height:calc(100dvh - 36px);overflow:auto;border-radius:28px;background:linear-gradient(180deg,rgba(28,30,36,.96),rgba(12,13,16,.98));border:1px solid var(--edge-2,rgba(255,255,255,.15));box-shadow:0 50px 120px -30px #000,0 0 0 1px rgba(168,220,255,.05),inset 0 1px 0 rgba(255,255,255,.1);transform:translateY(18px) scale(.97);transition:transform .45s var(--ease-spring,cubic-bezier(.34,1.4,.5,1))}
.ann.is-in .ann__card{transform:none}
.ann__shot{display:block;width:100%;aspect-ratio:1200/660;object-fit:cover;border-radius:27px 27px 0 0;border-bottom:1px solid var(--edge,rgba(255,255,255,.09));background:#07080a}
.ann__x{position:absolute;top:12px;right:12px;width:36px;height:36px;border:1px solid var(--edge-2,rgba(255,255,255,.15));border-radius:50%;background:rgba(7,8,10,.65);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--ink,#f6f7f9);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,transform .2s}
.ann__x:hover{background:rgba(255,255,255,.14);transform:rotate(90deg)}
.ann__x svg{width:16px;height:16px}
.ann__body{padding:22px 26px 26px}
.ann__tag{display:inline-flex;align-items:center;gap:8px;font:600 11px/1 var(--ff-mono,monospace);letter-spacing:.09em;text-transform:uppercase;color:var(--mint,#74f0c4);padding:7px 11px;border-radius:999px;background:rgba(116,240,196,.09);border:1px solid rgba(116,240,196,.26)}
.ann__tag i{width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 10px currentColor;animation:annpulse 2s infinite}
@keyframes annpulse{50%{opacity:.35}}
.ann__h{margin:14px 0 8px;font-size:clamp(22px,4.6vw,27px);font-weight:700;letter-spacing:-.035em;line-height:1.15;color:var(--ink,#f6f7f9)}
.ann__p{font-size:14.5px;line-height:1.6;color:var(--ink-2,rgba(246,247,249,.74))}
.ann__p b{color:var(--ink,#f6f7f9);font-weight:600}
.ann__row{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}
.ann__btn{flex:1 1 150px;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:46px;padding:0 20px;border-radius:999px;font:600 14.5px var(--ff,sans-serif);text-decoration:none;cursor:pointer;border:1px solid var(--edge-2,rgba(255,255,255,.15));background:transparent;color:var(--ink,#f6f7f9);transition:transform .15s,background .2s}
.ann__btn:hover{background:rgba(255,255,255,.07)}
.ann__btn:active{transform:scale(.97)}
.ann__btn--go{border:0;background:linear-gradient(180deg,#fff,#cfe8ff);color:#04131f}
.ann__btn--go:hover{background:linear-gradient(180deg,#fff,#e1f1ff)}
.ann__btn svg{width:16px;height:16px}
@media (max-width:560px){.ann{align-items:flex-end;padding:10px}.ann__card{border-radius:26px}.ann__body{padding:18px 18px 20px}}
@media (prefers-reduced-motion:reduce){.ann,.ann__card{transition:none}.ann__tag i{animation:none}}
@media (max-width:560px){.ann__btn{flex-basis:100%}}
