/* Canonical rail decoration: explicitly opt in per shell during rollout.
   Paint only; rail widths, content spacing and drawer geometry stay canonical. */
[data-gn-shell-runtime][data-gn-rail-trim="circuit"]{
  --gn-rail-trim-cyan:rgba(85,230,255,.72);
  --gn-rail-trim-magenta:rgba(255,44,152,.62);
  --gn-rail-trim-line:rgba(85,230,255,.22);
}
@media(min-width:901px){
[data-gn-shell-runtime][data-gn-rail-trim="circuit"] > [data-gn-shell-region="left"]{position:relative}
[data-gn-shell-runtime][data-gn-rail-trim="circuit"] > :is([data-gn-shell-region="left"],[data-gn-shell-region="right"])::after{
  content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  background:
    linear-gradient(var(--gn-rail-trim-cyan),var(--gn-rail-trim-cyan)) left top/24px 1px no-repeat,
    linear-gradient(var(--gn-rail-trim-cyan),var(--gn-rail-trim-cyan)) left top/1px 24px no-repeat,
    linear-gradient(var(--gn-rail-trim-magenta),var(--gn-rail-trim-magenta)) right top/24px 1px no-repeat,
    linear-gradient(var(--gn-rail-trim-magenta),var(--gn-rail-trim-magenta)) right top/1px 24px no-repeat,
    linear-gradient(var(--gn-rail-trim-magenta),var(--gn-rail-trim-magenta)) left bottom/24px 1px no-repeat,
    linear-gradient(var(--gn-rail-trim-magenta),var(--gn-rail-trim-magenta)) left bottom/1px 24px no-repeat,
    linear-gradient(var(--gn-rail-trim-cyan),var(--gn-rail-trim-cyan)) right bottom/24px 1px no-repeat,
    linear-gradient(var(--gn-rail-trim-cyan),var(--gn-rail-trim-cyan)) right bottom/1px 24px no-repeat,
    repeating-linear-gradient(to bottom,transparent 0 8px,var(--gn-rail-trim-cyan) 8px 10px,transparent 10px 16px) right 3px top 36px/3px 64px no-repeat,
    repeating-linear-gradient(to bottom,transparent 0 8px,var(--gn-rail-trim-magenta) 8px 10px,transparent 10px 16px) left 3px bottom 36px/3px 64px no-repeat,
    linear-gradient(to bottom,transparent,var(--gn-rail-trim-line) 18%,var(--gn-rail-trim-line) 82%,transparent) right top/1px 100% no-repeat;
  box-shadow:inset -1px 0 0 rgba(85,230,255,.22),inset -7px 0 13px -11px rgba(85,230,255,.65);
}
}

/* Content-height rail frame; explicit opt-in keeps this rollout on Griddim. */
@media(min-width:901px){
/* Consumers with their secondary header outside the shell use one content row. */
body[data-gn-site] [data-gn-shell-runtime][data-gn-shell-mode="two-rail"][data-gn-rail-frame="content"]:not([data-gn-shell-frame="true"]) > [data-gn-shell-region="right"]{grid-area:auto!important;grid-column:3!important;grid-row:1!important}
body[data-gn-site]:has([data-gn-shell-runtime][data-gn-rail-frame="content"]) .site-footer:not([data-gn-shell-region="footer"]){right:0!important;width:100%!important}
body[data-gn-site]:has([data-gn-shell-runtime][data-gn-rail-frame="content"]) .gn2-header{width:100%!important;max-width:100%!important}
body[data-gn-site]:has([data-gn-shell-runtime][data-gn-rail-frame="content"]) .gn-footer{right:0!important;width:100%!important;max-width:100%!important}
body[data-gn-site] [data-gn-shell-runtime][data-gn-shell-mode="two-rail"][data-gn-rail-frame="content"] > [data-gn-shell-region="right"]{
 position:relative!important;inset:auto!important;grid-area:right!important;grid-column:3!important;grid-row:2!important;height:100%!important;min-height:0!important;max-height:none!important;align-self:stretch!important;z-index:20!important;
}
body[data-gn-site] [data-gn-shell-runtime][data-gn-rail-frame="content"] > [data-gn-shell-region="footer"]{grid-column:1/-1!important}
body[data-gn-site] [data-gn-shell-runtime][data-gn-rail-frame="content"] > [data-gn-shell-region="header"]{grid-column:1/-1!important}
}
@media(min-width:901px){
body[data-gn-site] [data-gn-shell-runtime][data-gn-rail-frame="content"][data-gn-canonical-right-collapsed="true"] > [data-gn-shell-region="right"]{border:0!important;padding:0!important}
[data-gn-shell-runtime][data-gn-rail-frame="content"][data-gn-canonical-right-collapsed="true"] > [data-gn-shell-region="right"]::after{display:none}
}
/* Soft atmospheric rail finish: static background paint beneath controls. */
@media(min-width:901px){
[data-gn-shell-runtime][data-gn-rail-trim="circuit"] > :is([data-gn-shell-region="left"],[data-gn-shell-region="right"]){
 background-color:#060c13!important;
 background-image:
   var(--gn-rail-texture),
   radial-gradient(ellipse 110% 30% at 100% 24%,rgba(39,188,223,.095),transparent 76%),
   radial-gradient(ellipse 120% 38% at 0% 79%,rgba(179,39,123,.075),transparent 74%),
   repeating-linear-gradient(0deg,rgba(134,185,206,.022) 0 1px,transparent 1px 4px),
   repeating-linear-gradient(90deg,rgba(79,145,171,.017) 0 1px,transparent 1px 28px)!important;
}
[data-gn-shell-runtime][data-gn-rail-trim="circuit"] > [data-gn-shell-region="right"]{
 background-image:
   var(--gn-rail-texture),
   radial-gradient(ellipse 110% 34% at 0% 26%,rgba(39,188,223,.10),transparent 76%),
   radial-gradient(ellipse 120% 38% at 100% 78%,rgba(179,39,123,.085),transparent 74%),
   repeating-linear-gradient(0deg,rgba(134,185,206,.022) 0 1px,transparent 1px 4px),
   repeating-linear-gradient(90deg,rgba(79,145,171,.017) 0 1px,transparent 1px 28px)!important;
}
[data-gn-shell-runtime][data-gn-rail-trim="circuit"] > [data-gn-shell-region="left"] .gr-module-nav,
[data-gn-shell-runtime][data-gn-rail-trim="circuit"] > [data-gn-shell-region="right"] .gr-agent-rail{background:transparent!important}
}
@media(min-width:901px){
[data-gn-shell-runtime][data-gn-rail-trim="circuit"] > [data-gn-shell-region="right"] > .gn-agent-panel{background:transparent!important}
}

[data-gn-shell-runtime][data-gn-rail-trim="circuit"]{--gn-rail-texture:url('/network-assets/rail-glitch.gif?v=101126-glitch1')}
@media(prefers-reduced-motion:reduce){[data-gn-shell-runtime][data-gn-rail-trim="circuit"]{--gn-rail-texture:url('/network-assets/rail-glitch-still.png?v=101126-glitch1')}}
/* Continue the rail texture across the outer header/footer frame. */
body:has([data-gn-shell-runtime][data-gn-rail-trim="circuit"]){--gn-frame-texture:url('/network-assets/rail-glitch.gif?v=101126-glitch1')}
body:has([data-gn-shell-runtime][data-gn-rail-trim="circuit"]) :is(.gn2-header,.gn-footer,[data-gn-shell-region="footer"]){
 background-color:#060c13!important;
 background-image:var(--gn-frame-texture),linear-gradient(100deg,rgba(39,188,223,.04),transparent 45%,rgba(179,39,123,.035))!important;
 background-size:192px 192px,100% 100%!important;
 background-repeat:repeat,no-repeat!important;
}
@media(prefers-reduced-motion:reduce){body:has([data-gn-shell-runtime][data-gn-rail-trim="circuit"]){--gn-frame-texture:url('/network-assets/rail-glitch-still.png?v=101126-glitch1')}}
/* Site wordmark only: the launcher and account icons retain their own styling. */
body:is([data-gn-site="griddim"],[data-gn-site="subgridz"]) .gn2-header .gn2-brand-wordmark-image{
 filter:drop-shadow(-1px 0 2px rgba(255,44,152,.34)) drop-shadow(1px 0 3px rgba(85,230,255,.30));
 animation:gn-site-logo-neon 6.8s ease-in-out infinite;
}
@keyframes gn-site-logo-neon{
  0%,100%{filter:drop-shadow(-1px 0 2px rgba(255,44,152,.28)) drop-shadow(1px 0 3px rgba(85,230,255,.24))}
  48%{filter:drop-shadow(-1px 0 3px rgba(255,44,152,.46)) drop-shadow(1px 0 5px rgba(85,230,255,.39))}
  72%{filter:drop-shadow(-1px 0 2px rgba(255,44,152,.33)) drop-shadow(1px 0 3px rgba(85,230,255,.28))}
}
@media(prefers-reduced-motion:reduce){body:is([data-gn-site="griddim"],[data-gn-site="subgridz"]) .gn2-header .gn2-brand-wordmark-image{animation:none}}
/* Clear message outlines without increasing bubble dimensions. */
body:is([data-gn-site="griddim"],[data-gn-site="subgridz"]) .gn-workspace-chat{
 --gn-chat-bubble-border:rgba(255,72,165,.48);
 --gn-chat-user-bubble-border:rgba(85,230,255,.56);
 --gn-chat-line:rgba(85,230,255,.48);
}
body:is([data-gn-site="griddim"],[data-gn-site="subgridz"]) .gn-workspace-chat .gn-chat-bubble{
 box-shadow:inset 2px 0 0 rgba(255,44,152,.42),0 0 7px rgba(255,44,152,.055)!important;
}
body:is([data-gn-site="griddim"],[data-gn-site="subgridz"]) .gn-workspace-chat .gn-agent-message.user .gn-chat-bubble{
 box-shadow:inset -2px 0 0 rgba(85,230,255,.46),0 0 7px rgba(85,230,255,.06)!important;
}
body:is([data-gn-site="griddim"],[data-gn-site="subgridz"]) .gn-workspace-chat .gn-agent-composer textarea{
 box-shadow:inset 0 0 0 1px rgba(85,230,255,.08),0 0 7px rgba(85,230,255,.055)!important;
}
body:is([data-gn-site="griddim"],[data-gn-site="subgridz"]) .gn-workspace-chat .gn-agent-composer textarea:focus-visible{
 border-color:rgba(85,230,255,.85)!important;outline:1px solid rgba(85,230,255,.28);outline-offset:2px;
 box-shadow:0 0 9px rgba(85,230,255,.12)!important;
}
/* Module navigation fills the available rail width with its existing inset. */
body:is([data-gn-site="griddim"],[data-gn-site="subgridz"]) [data-gn-shell-region="left"] .gr-module-nav{align-items:stretch!important}
body:is([data-gn-site="griddim"],[data-gn-site="subgridz"]) [data-gn-shell-region="left"] .gr-module-button{box-sizing:border-box!important;width:100%!important;max-width:100%!important;align-self:stretch!important}
/* Drift only the tiled paint layer; cards and frame geometry stay still. */
@property --gn-texture-dim{syntax:'<number>';inherits:false;initial-value:0.08}
@keyframes gn-frame-texture-drift{from{background-position:0 0,0 0,0 0,0 0,0 0}to{background-position:0 192px,0 0,0 0,0 0,0 0}}
@keyframes gn-frame-texture-breathe{0%,100%{--gn-texture-dim:0.08}50%{--gn-texture-dim:0.30}}
body:has([data-gn-shell-runtime][data-gn-rail-trim="circuit"]) :is(.gn2-header,.gn-footer,[data-gn-shell-region="footer"]){
 background-image:linear-gradient(rgba(6,12,19,var(--gn-texture-dim)),rgba(6,12,19,var(--gn-texture-dim))),var(--gn-frame-texture),linear-gradient(100deg,rgba(39,188,223,.04),transparent 45%,rgba(179,39,123,.035))!important;
 background-size:100% 100%,192px 192px,100% 100%!important;
 background-repeat:no-repeat,repeat,no-repeat!important;
 animation:gn-frame-texture-drift-masked 48s linear infinite,gn-frame-texture-breathe 11s ease-in-out infinite;
}
@keyframes gn-frame-texture-drift-masked{from{background-position:0 0,0 0,0 0,0 0,0 0,0 0}to{background-position:0 0,0 192px,0 0,0 0,0 0,0 0}}
@media(min-width:901px){
[data-gn-shell-runtime][data-gn-rail-trim="circuit"] > :is([data-gn-shell-region="left"],[data-gn-shell-region="right"]){
 background-image:linear-gradient(rgba(6,12,19,var(--gn-texture-dim)),rgba(6,12,19,var(--gn-texture-dim))),var(--gn-rail-texture),radial-gradient(ellipse 110% 30% at 100% 24%,rgba(39,188,223,.095),transparent 76%),radial-gradient(ellipse 120% 38% at 0% 79%,rgba(179,39,123,.075),transparent 74%),repeating-linear-gradient(0deg,rgba(134,185,206,.022) 0 1px,transparent 1px 4px),repeating-linear-gradient(90deg,rgba(79,145,171,.017) 0 1px,transparent 1px 28px)!important;
 background-size:100% 100%,192px 192px,100% 100%,100% 100%,100% 100%,100% 100%!important;
 background-repeat:no-repeat,repeat,no-repeat,no-repeat,no-repeat,no-repeat!important;
 animation:gn-frame-texture-drift-masked 48s linear infinite,gn-frame-texture-breathe 11s ease-in-out infinite;
}
}
@media(prefers-reduced-motion:reduce){
body:has([data-gn-shell-runtime][data-gn-rail-trim="circuit"]) :is(.gn2-header,.gn-footer,[data-gn-shell-region="footer"]),[data-gn-shell-runtime][data-gn-rail-trim="circuit"] > :is([data-gn-shell-region="left"],[data-gn-shell-region="right"]){animation:none!important;--gn-texture-dim:0.08}
}
@property --gn-texture-offset{syntax:'<length>';inherits:false;initial-value:0px}
@keyframes gn-frame-texture-drift-masked{from{--gn-texture-offset:0px}to{--gn-texture-offset:192px}}
body:has([data-gn-shell-runtime][data-gn-rail-trim="circuit"]) :is(.gn2-header,.gn-footer,[data-gn-shell-region="footer"]),[data-gn-shell-runtime][data-gn-rail-trim="circuit"] > :is([data-gn-shell-region="left"],[data-gn-shell-region="right"]){background-position:0 0,0 var(--gn-texture-offset),0 0,0 0,0 0,0 0!important}

