/* StudYear public-page colour lift — additive enhancement layer for the
   marketing / legal / directory pages (the signed-in consoles get theme.css
   from guard.js instead). Linked at the END of <head> so it wins the cascade
   over each page's inline <style>. Pure CSS on shared classes: nothing breaks
   if a class is absent on a page. */

/* layered multi-hue backdrop — replaces the flat navy on every template
   family (pages with a fixed .stage backdrop and pages that paint body) */
body{
  background:
    radial-gradient(1150px 700px at 82% -12%, rgba(99,102,241,.30), transparent 60%),
    radial-gradient(950px 650px at -12% 22%, rgba(20,184,166,.20), transparent 55%),
    radial-gradient(1000px 780px at 55% 112%, rgba(168,85,247,.22), transparent 62%),
    radial-gradient(700px 500px at 30% -8%, rgba(242,206,123,.12), transparent 55%),
    linear-gradient(180deg,#0A1330 0%,#081026 48%,#070D20 100%) !important;
}
.stage{
  background:
    radial-gradient(1150px 700px at 82% -12%, rgba(99,102,241,.32), transparent 60%),
    radial-gradient(950px 650px at -12% 22%, rgba(20,184,166,.22), transparent 55%),
    radial-gradient(1000px 780px at 55% 112%, rgba(168,85,247,.22), transparent 62%),
    radial-gradient(700px 500px at 30% -8%, rgba(242,206,123,.12), transparent 55%),
    linear-gradient(180deg,#0A1330 0%,#081026 48%,#070D20 100%) !important;
}

/* rotating accent hairlines on every card-like surface */
.card,.step,.tool,.role,.loop-card,.sys,.aud,.price,.pick,.tele,.tut,.box{
  position:relative;
  border-color:rgba(126,148,198,.30) !important;
}
.card::before,.step::before,.tool::before,.role::before,.loop-card::before,
.sys::before,.aud::before,.price::before,.pick::before,.tele::before,
.tut::before,.box::before{
  content:"";position:absolute;left:0;right:0;top:0;height:2px;
  border-radius:inherit;border-bottom-left-radius:0;border-bottom-right-radius:0;
  background:linear-gradient(90deg,var(--sy-acc1,#4FA6E0),var(--sy-acc2,#8B5CF6));
  opacity:.9;pointer-events:none;
}
.card:nth-of-type(6n+1),.step:nth-of-type(6n+1),.tool:nth-of-type(6n+1),.role:nth-of-type(6n+1),.loop-card:nth-of-type(6n+1),.sys:nth-of-type(6n+1),.aud:nth-of-type(6n+1),.price:nth-of-type(6n+1),.pick:nth-of-type(6n+1),.tele:nth-of-type(6n+1),.tut:nth-of-type(6n+1),.box:nth-of-type(6n+1){--sy-acc1:#4FA6E0;--sy-acc2:#8B5CF6}
.card:nth-of-type(6n+2),.step:nth-of-type(6n+2),.tool:nth-of-type(6n+2),.role:nth-of-type(6n+2),.loop-card:nth-of-type(6n+2),.sys:nth-of-type(6n+2),.aud:nth-of-type(6n+2),.price:nth-of-type(6n+2),.pick:nth-of-type(6n+2),.tele:nth-of-type(6n+2),.tut:nth-of-type(6n+2),.box:nth-of-type(6n+2){--sy-acc1:#F2CE7B;--sy-acc2:#F97362}
.card:nth-of-type(6n+3),.step:nth-of-type(6n+3),.tool:nth-of-type(6n+3),.role:nth-of-type(6n+3),.loop-card:nth-of-type(6n+3),.sys:nth-of-type(6n+3),.aud:nth-of-type(6n+3),.price:nth-of-type(6n+3),.pick:nth-of-type(6n+3),.tele:nth-of-type(6n+3),.tut:nth-of-type(6n+3),.box:nth-of-type(6n+3){--sy-acc1:#34D399;--sy-acc2:#22D3EE}
.card:nth-of-type(6n+4),.step:nth-of-type(6n+4),.tool:nth-of-type(6n+4),.role:nth-of-type(6n+4),.loop-card:nth-of-type(6n+4),.sys:nth-of-type(6n+4),.aud:nth-of-type(6n+4),.price:nth-of-type(6n+4),.pick:nth-of-type(6n+4),.tele:nth-of-type(6n+4),.tut:nth-of-type(6n+4),.box:nth-of-type(6n+4){--sy-acc1:#F472B6;--sy-acc2:#A78BFA}
.card:nth-of-type(6n+5),.step:nth-of-type(6n+5),.tool:nth-of-type(6n+5),.role:nth-of-type(6n+5),.loop-card:nth-of-type(6n+5),.sys:nth-of-type(6n+5),.aud:nth-of-type(6n+5),.price:nth-of-type(6n+5),.pick:nth-of-type(6n+5),.tele:nth-of-type(6n+5),.tut:nth-of-type(6n+5),.box:nth-of-type(6n+5){--sy-acc1:#F59E0B;--sy-acc2:#F2CE7B}
.card:nth-of-type(6n),.step:nth-of-type(6n),.tool:nth-of-type(6n),.role:nth-of-type(6n),.loop-card:nth-of-type(6n),.sys:nth-of-type(6n),.aud:nth-of-type(6n),.price:nth-of-type(6n),.pick:nth-of-type(6n),.tele:nth-of-type(6n),.tut:nth-of-type(6n),.box:nth-of-type(6n){--sy-acc1:#22D3EE;--sy-acc2:#34D399}
.card:hover,.step:hover,.tool:hover,.role:hover,.loop-card:hover,.sys:hover,
.aud:hover,.price:hover,.pick:hover,.tut:hover,.box:hover{
  border-color:rgba(150,175,230,.45) !important;
}
/* the highlighted pricing tier keeps its gold frame */
.price.hot{border-color:var(--gold-500,#3D8FD1) !important}

/* big numbers glow gold→sky */
.tele .num,.tile .v,.agent-band .big-num,.role .g{
  background:linear-gradient(92deg,#F6D992 10%,#8FC2EC 90%);
  -webkit-background-clip:text;background-clip:text;color:transparent !important;
}

/* chips & tags pick up rotating soft tints instead of flat blue */
.chip:nth-child(5n+1),.tag:nth-child(5n+1){border-color:rgba(79,166,224,.4);color:#A9CFF2;background:rgba(79,166,224,.09)}
.chip:nth-child(5n+2),.tag:nth-child(5n+2){border-color:rgba(52,211,153,.4);color:#8FE3C0;background:rgba(52,211,153,.09)}
.chip:nth-child(5n+3),.tag:nth-child(5n+3){border-color:rgba(242,206,123,.4);color:#F2CE7B;background:rgba(242,206,123,.09)}
.chip:nth-child(5n+4),.tag:nth-child(5n+4){border-color:rgba(167,139,250,.4);color:#C9BBF7;background:rgba(167,139,250,.09)}
.chip:nth-child(5n),.tag:nth-child(5n){border-color:rgba(244,114,182,.4);color:#F8B8D8;background:rgba(244,114,182,.09)}

/* section kickers get a warm gradient underline feel (page kickers only —
   never .tile .k data labels) */
.sec-kicker,header .k,header.page .k,.wrap>.k{color:#F2CE7B !important}
.sec-kicker::after{content:"";display:block;width:56px;height:2px;margin-top:8px;
  background:linear-gradient(90deg,#F2CE7B,#8B5CF6,transparent)}

/* dividers become colourful */
.divider{background:linear-gradient(90deg,transparent,rgba(79,166,224,.35),rgba(139,92,246,.4),rgba(52,211,153,.35),transparent) !important}

/* livelier focus states, themed scrollbar */
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:2px solid #8B5CF6;outline-offset:2px;
}
::-webkit-scrollbar{width:11px;height:11px}
::-webkit-scrollbar-track{background:rgba(10,18,40,.6)}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#3D6BB0,#6D5CC9);border-radius:8px;border:2px solid rgba(10,18,40,.6)}
