*{box-sizing:border-box}body,html{margin:0;padding:0;width:100%;height:100%;color:#f4f6fb;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}.app-root,body,html{background:#01030a;overflow:hidden}.app-root{position:relative;width:100vw;height:100dvh}.scene-layer{position:absolute;inset:0}.scene-layer canvas{display:block;width:100%!important;height:100%!important;touch-action:none}.ui-layer{inset:0}.hud,.ui-layer{position:absolute;pointer-events:none}.hud{top:clamp(20px,4vw,48px);left:clamp(20px,4vw,48px)}.hud__title{margin:0;font-size:clamp(20px,2.6vw,32px);font-weight:600;letter-spacing:.14em;line-height:1.25;color:#f7f9ff;text-shadow:0 0 24px rgba(140,180,255,.25)}.hud__subtitle{margin:10px 0 0;font-size:clamp(11px,1vw,13px);letter-spacing:.22em;text-transform:uppercase;color:rgba(220,228,245,.55)}.scale-panel{position:absolute;top:clamp(20px,4vw,48px);right:clamp(20px,4vw,48px);bottom:clamp(20px,4vw,48px);width:clamp(150px,14vw,200px);gap:18px;pointer-events:none;border-radius:14px;transition:box-shadow .3s ease}.scale-panel,.scale-panel__stats{display:flex;flex-direction:column;align-items:flex-end}.scale-panel__stats{text-align:right}.scale-panel__label{font-size:10px;letter-spacing:.24em;color:rgba(210,220,245,.5);text-transform:uppercase}.scale-panel__label--target{margin-top:14px}.scale-panel__value{font-size:clamp(20px,2.2vw,28px);font-weight:600;color:#fff;letter-spacing:.02em;text-shadow:0 0 18px rgba(140,180,255,.35)}.scale-panel__target{font-size:15px;font-weight:500;color:rgba(230,236,250,.75)}.scale-panel__percent{margin-top:4px;font-size:13px;font-weight:500;color:#8fc7ff;letter-spacing:.05em}.scale-track{position:relative;flex:1 1;width:2px;background:hsla(0,0%,100%,.08);border-radius:2px;margin-right:26px}.scale-track__fill{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:2px;height:0;background:linear-gradient(180deg,#dfeeff,#6fa8ff);box-shadow:0 0 12px rgba(140,190,255,.7);border-radius:2px;transition:height .1s linear}.scale-tick{position:absolute;right:-6px;display:flex;align-items:center;gap:8px;transform:translateY(50%)}.scale-tick:nth-child(2){bottom:100%}.scale-tick:nth-child(3){bottom:75%}.scale-tick:nth-child(4){bottom:50%}.scale-tick:nth-child(5){bottom:25%}.scale-tick:nth-child(6){bottom:0}.scale-tick__mark{width:8px;height:1px;background:hsla(0,0%,100%,.35)}.scale-tick__label{font-size:10px;letter-spacing:.08em;color:rgba(220,228,245,.55);white-space:nowrap}.contract-bar{position:absolute;left:50%;bottom:clamp(16px,3vw,28px);transform:translateX(-50%);display:flex;align-items:center;gap:18px;padding:10px 18px;border:1px solid hsla(0,0%,100%,.1);background:rgba(6,10,20,.55);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:999px;pointer-events:auto;max-width:min(92vw,640px)}.contract-bar__info{display:flex;align-items:baseline;gap:10px;overflow:hidden;min-width:0;flex:1 1}.contract-bar__label{font-size:10px;letter-spacing:.2em;color:rgba(210,220,245,.5);flex-shrink:0}.contract-bar__address{font-size:12px;color:rgba(235,240,250,.85);font-family:SFMono-Regular,Consolas,Menlo,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1 1}.contract-bar__actions{display:flex;gap:8px;flex-shrink:0}.contract-bar__btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid hsla(0,0%,100%,.18);background:hsla(0,0%,100%,.04);color:#f4f6fb;font-size:11px;letter-spacing:.12em;padding:8px 14px;border-radius:999px;cursor:pointer;text-decoration:none;transition:background .2s ease,border-color .2s ease,transform .15s ease;white-space:nowrap}.contract-bar__btn:hover{background:hsla(0,0%,100%,.1);border-color:hsla(0,0%,100%,.35);transform:translateY(-1px)}.contract-bar__btn--primary{background:rgba(140,190,255,.14);border-color:rgba(140,190,255,.4);color:#cfe4ff}.contract-bar__btn--primary:hover{background:rgba(140,190,255,.24)}.cinematic-flash{position:absolute;inset:0;background:radial-gradient(circle at 50% 40%,hsla(0,0%,100%,.85),rgba(180,210,255,.1) 55%,transparent 80%);opacity:0;pointer-events:none}.milestone-toast{top:clamp(70px,10vw,110px);transform:translateX(-50%);font-size:12px;letter-spacing:.18em;color:#cfe4ff;text-shadow:0 0 16px rgba(140,190,255,.6);white-space:nowrap}.milestone-toast,.reached-banner{position:absolute;left:50%;opacity:0;pointer-events:none;text-align:center}.reached-banner{top:44%;transform:translate(-50%,-50%);font-size:clamp(24px,5vw,56px);font-weight:700;letter-spacing:.16em;color:#fff;text-shadow:0 0 40px rgba(180,210,255,.85),0 0 90px rgba(140,180,255,.5)}.zoom-hint{position:absolute;left:50%;bottom:clamp(72px,9vw,96px);transform:translateX(-50%);font-size:10px;letter-spacing:.2em;color:rgba(220,228,245,.5);opacity:0;pointer-events:none;white-space:nowrap}@media (max-width:720px){.scale-panel{width:128px;gap:12px}.scale-panel__value{font-size:16px}.scale-track{margin-right:18px}.contract-bar{flex-direction:column;align-items:stretch;gap:10px;border-radius:18px;padding:12px 16px}.contract-bar__actions{justify-content:center}.hud__title{font-size:18px}}@media (min-width:2200px){.hud__title{font-size:40px}.scale-panel{width:220px}}