/* Yungo interface: supplied brand tokens, locally hosted fonts and geometric icons. */
body{background:var(--surface-base);color:var(--text-primary);font-family:var(--font-body);font-weight:400}
button,select{font-family:var(--font-body)}
.gamebar{background:var(--surface-base);border-color:var(--border-subtle);gap:var(--space-5);padding-inline:var(--space-6)}
.bar-title{font-family:var(--font-display);font-weight:500;letter-spacing:.08em}.bar-title small{font-family:var(--font-body);color:var(--yg-grey-200)}
.gamebar button,.gamebar #skip,.welcome-skip,#welcome-start,#open-new,#end-screen button{font-family:var(--font-display);font-weight:900;text-transform:uppercase;letter-spacing:.02em;border-radius:var(--radius-pill);transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}
.gamebar #skip,#welcome-start,#open-new{background:var(--accent);color:var(--text-on-violet);border:2px solid transparent}
.gamebar #skip:hover,#welcome-start:hover,#open-new:hover{background:var(--accent-hover);border-color:transparent;transform:none}
.gamebar #skip:active,#welcome-start:active,#open-new:active{background:var(--accent-press);transform:scale(.97)}
button:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--yg-violet-100);outline-offset:4px}
.damage>span:first-child{color:var(--yg-white)}.meter i,.live-dot{background:var(--accent)}
.arsenal{background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:none;padding:var(--space-4) var(--space-3)}
.arsenal-head{font-family:var(--font-display);font-weight:500;letter-spacing:.08em}.arsenal select{background:var(--surface-base);border:1px solid var(--border-subtle);border-radius:var(--radius-xs)}
.weapon{border-radius:var(--radius-md);border-color:transparent;transition:background var(--dur-fast) var(--ease-out)}
.weapon:hover{background:#ffffff0d}.weapon.active,.weapon.active:hover{background:var(--accent);color:var(--yg-white)}
.weapon b{font-family:var(--font-display);font-weight:500;text-transform:uppercase;font-size:16px;letter-spacing:.01em}
.weapon small,.arsenal-foot{color:var(--yg-grey-200)}.weapon.active small{color:var(--yg-white)}
.weapon-icon{font-size:29px}.gun-icon{font-size:37px}.plane-icon{font-size:34px;transform:rotate(25deg)}
#cursor[data-weapon=hammer] img{width:44px;height:44px}#cursor[data-weapon=dog]{width:28px;height:28px;border:1px solid white;border-radius:50%}#cursor[data-weapon=dog]:after{content:'';position:absolute;inset:9px;background:var(--accent);border-radius:50%}
#cursor[data-weapon=charge]{border-color:var(--accent)}
#toast{background:var(--accent);color:var(--yg-white);border-radius:var(--radius-pill);font-family:var(--font-body)}
.bottom-note{background:var(--surface-base);color:var(--yg-grey-200)}#structure-status,#structure-status.warning{color:var(--yg-violet-100)}
#end-screen{background:var(--surface-base);border-color:var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}#end-screen h1{font-family:var(--font-display);font-weight:900;text-transform:uppercase}#end-screen p{font-family:var(--font-body);line-height:var(--lh-body)}
#welcome::backdrop{background:rgb(8 0 20 / 78%)}
.welcome-kicker{color:var(--yg-violet-100);font-family:var(--font-body);font-size:12px;letter-spacing:var(--ls-subtitle);margin-bottom:var(--space-5)}
.welcome-kicker:before{content:'';display:inline-block;width:8px;height:8px;background:var(--accent);border-radius:50%;margin-right:12px}
#welcome h2{font-family:var(--font-display);font-weight:500;text-transform:uppercase;font-size:clamp(36px,4.5vw,64px);line-height:var(--lh-snug);letter-spacing:var(--ls-display)}
#welcome h2 span{color:var(--accent)}
#welcome-description{font-family:var(--font-body);font-size:clamp(18px,1.8vw,22px);line-height:var(--lh-body);margin:var(--space-5) 0 var(--space-4)}
.welcome-instruction{font-family:var(--font-body);color:var(--yg-grey-200);line-height:var(--lh-body);margin-bottom:var(--space-6)}
#welcome-start{padding:17px 32px;font-size:17px;gap:var(--space-5);box-shadow:var(--shadow-violet)}
.welcome-skip{background:var(--surface-base);border:1px solid var(--border-strong)}.welcome-skip:hover{background:var(--surface-raised);border-color:var(--accent)}
.welcome-arrow path{stroke:var(--accent);animation-duration:var(--dur-slow);animation-delay:.35s;animation-timing-function:var(--ease-out)}
.welcome-content>*{animation-duration:var(--dur-slow);animation-timing-function:var(--ease-out)}
#welcome h2{animation-delay:.06s}#welcome-description{animation-delay:.12s}.welcome-instruction{animation-delay:.18s}#welcome-start{animation-delay:.24s}
@media(max-width:1150px) and (min-width:761px){.bar-title{display:none}}
@media(max-width:760px){.gamebar{padding-inline:var(--space-4);gap:var(--space-2)}.weapon b{font-size:11px}.weapon-icon{font-size:26px}.gun-icon{font-size:33px}.arsenal{padding:var(--space-2)}#welcome h2{font-size:clamp(34px,9vw,50px)}#welcome-description{font-size:18px}.welcome-kicker{font-size:10px}#welcome-start{font-size:15px;padding:16px 24px}.welcome-skip{font-size:12px}}
@media(max-width:420px){.gamebar{padding-inline:10px;gap:6px}.gamebar #skip{font-size:12px}}
@media(max-height:650px){#welcome h2{font-size:36px}.welcome-kicker{margin-bottom:12px}.welcome-instruction{margin-bottom:16px}}
@media(prefers-reduced-motion:reduce){.welcome-content>*,.welcome-arrow path{animation:none}.welcome-arrow path{stroke-dashoffset:0}}
.weapon b{font-size:14px}.weapon-icon{flex-shrink:0}
@media(max-width:760px){.weapon b,body[data-position=top] .weapon b{font-size:10px}#welcome-start{max-width:100%;gap:12px;padding:16px 20px;font-size:14px}}

/* Quiet demolition backdrop: brand atmosphere without previewing the new site. */
#reveal{display:grid;place-items:center;overflow:hidden;background:var(--yg-licorice)}
#reveal:before,#reveal:after{content:'';position:absolute;inset:-25%;pointer-events:none}
#reveal:before{opacity:.11;background:repeating-linear-gradient(112deg,transparent 0 54px,var(--yg-violet) 55px 56px,transparent 57px 92px);transform:rotate(-7deg)}
#reveal:after{inset:auto -12% -35% auto;width:min(58vw,780px);aspect-ratio:1;border:1px solid rgb(132 54 255 / 18%);border-radius:50%;box-shadow:0 0 0 80px rgb(132 54 255 / 3%),0 0 0 160px rgb(132 54 255 / 2%)}
.gamebar #skip{animation:yungo-attention 9s var(--ease-out) 2s infinite;transform-origin:center}
.gamebar #skip:hover,.gamebar #skip:focus-visible{animation-play-state:paused}
@keyframes yungo-attention{0%,12%,100%{transform:scale(1);box-shadow:none}4%{transform:scale(1.045);box-shadow:0 0 0 7px rgb(132 54 255 / 18%),var(--shadow-violet)}8%{transform:scale(1.015);box-shadow:0 0 0 3px rgb(132 54 255 / 10%)}}
@media(max-width:760px){.gamebar #reset{display:block;margin-left:0;padding:8px 3px}.damage{display:grid;margin-left:auto;min-width:42px;text-align:right}.damage>span:first-child{font-size:18px}.damage>span:nth-child(2),.damage .meter{display:none}}
@media(prefers-reduced-motion:reduce){.gamebar #skip{animation:none}}
