/* Grid Central website - shared styles for every page.
   Colours: night #0A0F14, green #00FF00, amber #FFB300, red #FF3333, quartz #E0F7FA, steel #9FB4B8. */
body{margin:0;background:#0A0F14;color:#E0F7FA;font-family:"Chakra Petch","Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:#00FF00}a:hover{color:#E0F7FA}
*{box-sizing:border-box}
.gc-grid{background-color:#0A0F14;background-image:linear-gradient(rgba(0,51,51,.6) 1px,transparent 1px),linear-gradient(90deg,rgba(0,51,51,.6) 1px,transparent 1px);background-size:60px 60px}
.gc-traces-bg>section,.gc-traces-bg>main{background-image:url(../images/backgrounds/gc-traces-bg.svg) !important;background-repeat:repeat-y !important;background-position:center top !important;background-size:1440px auto !important}
.gc-kerb{height:12px;background:repeating-linear-gradient(90deg,#FF3333 0 24px,#E0F7FA 24px 48px)}
.gc-rail{height:6px;background:#00FF00;box-shadow:0 0 20px rgba(0,255,0,.8)}
.gc-caution{height:14px;background:repeating-linear-gradient(-45deg,#FFB300 0 14px,#0A0F14 14px 28px)}
.gc-glow{text-shadow:0 0 18px rgba(0,255,0,.7),0 0 4px rgba(0,255,0,.9)}
.gc-btn{transition:box-shadow .15s ease}
.gc-btn:hover{box-shadow:0 0 32px rgba(0,255,0,.85)}
.gc-input::placeholder{color:#9FB4B8}
.gc-input:focus,.gc-btn:focus-visible,a:focus-visible{outline:2px solid #00FF00;outline-offset:2px}
@media (max-width:720px){.gc-navlinks{display:none !important}}
@media (prefers-reduced-motion:reduce){*{transition:none !important}}
.gc-brand-logo{width:104px;height:104px;display:block;filter:drop-shadow(0 2px 0 rgba(0,0,0,.7)) drop-shadow(0 0 10px rgba(0,255,0,.7)) drop-shadow(0 0 26px rgba(0,255,0,.4))}
.gc-brand-text{font-family:Orbitron,'Arial Black',sans-serif;font-weight:900;font-size:33px;letter-spacing:4px;color:#FFFFFF;text-shadow:0 -1px 0 rgba(255,255,255,.75),0 1px 0 #004d4d,0 2px 0 #003d3d,0 3px 0 #003333,0 4px 0 #002424,0 5px 0 #001414,0 7px 9px rgba(0,0,0,.9),0 0 14px rgba(0,255,0,.8),0 0 34px rgba(0,255,0,.45)}
@media (max-width:720px){.gc-brand-logo{width:72px;height:72px}.gc-brand-text{font-size:23px;letter-spacing:3px}}
.gc-fog{position:absolute;inset:-40%;pointer-events:none;z-index:0;filter:blur(18px)}
.gc-fog-a{background:radial-gradient(ellipse 40% 22% at 30% 62%,rgba(224,247,250,.16),transparent 70%),radial-gradient(ellipse 36% 20% at 72% 48%,rgba(224,247,250,.12),transparent 70%),radial-gradient(ellipse 50% 18% at 50% 80%,rgba(159,180,184,.14),transparent 70%);animation:gcFogDrift 16s ease-in-out infinite alternate}
.gc-fog-b{background:radial-gradient(ellipse 44% 20% at 60% 70%,rgba(224,247,250,.12),transparent 70%),radial-gradient(ellipse 30% 16% at 25% 40%,rgba(224,247,250,.10),transparent 70%);animation:gcFogBreath 6s ease-in-out infinite}
@keyframes gcFogDrift{0%{transform:translate(-6%,2%) scale(1)}100%{transform:translate(6%,-3%) scale(1.08)}}
@keyframes gcFogBreath{0%,100%{opacity:.45;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}
.gc-redglow{position:absolute;left:-15%;right:-15%;top:-40px;height:170px;z-index:0;pointer-events:none;filter:blur(18px);background:radial-gradient(ellipse 50% 55% at 50% 35%,rgba(255,51,51,.6),rgba(255,51,51,.15) 55%,transparent 75%);transition:opacity .3s ease}
.gc-lvl-0{opacity:.04}.gc-lvl-1{opacity:.16}.gc-lvl-2{opacity:.28}.gc-lvl-3{opacity:.42}.gc-lvl-4{opacity:.56}.gc-lvl-5{opacity:.72}
.gc-lvl-go{opacity:.6;background:radial-gradient(ellipse 50% 55% at 50% 35%,rgba(0,255,0,.5),rgba(0,255,0,.12) 55%,transparent 75%)}
.gc-lamp{width:22px;height:22px;border-radius:50%;background:#1A0F10;border:2px solid #2A1A1C;box-shadow:inset 0 2px 5px rgba(0,0,0,.85);transition:background .12s ease,box-shadow .12s ease,border-color .12s ease}
.gc-lamp-on{background:radial-gradient(circle at 40% 35%,#FF9A9A,#FF3333 55%,#9E0000);border-color:#FF5A5A;box-shadow:0 0 10px rgba(255,51,51,.95),0 0 30px rgba(255,51,51,.55)}
.gc-lamp-flash{animation:gcGreenFlash .9s ease-out forwards}
@keyframes gcGreenFlash{0%{background:radial-gradient(circle at 40% 35%,#B8FFB8,#00FF00 55%,#008A00);border-color:#66FF66;box-shadow:0 0 12px rgba(0,255,0,1),0 0 36px rgba(0,255,0,.6)}100%{background:#0F1A10;border-color:#1A2A1C;box-shadow:inset 0 2px 5px rgba(0,0,0,.85)}}
.gc-lvl-flash{background:radial-gradient(ellipse 50% 55% at 50% 35%,rgba(0,255,0,.55),rgba(0,255,0,.14) 55%,transparent 75%);animation:gcGlowFlash .9s ease-out forwards}
@keyframes gcGlowFlash{0%{opacity:.8}100%{opacity:.04}}
@media (prefers-reduced-motion:reduce){.gc-fog{animation:none !important}}
