/* SAGE Edge -- v3 look. Colours follow the partner site (night blue, floodlight gold, chalk, paper tickets).
   Only local fonts (the page policy allows nothing from other domains): condensed display stack for headings. */
:root{--night:#0a1020;--deep:#070c18;--stand:#0f182b;--terrace:#152039;--rule:#243250;--rule2:#34435f;--chalk:#eef1f6;--haze:#a3aec3;--mist:#76829b;
--gold:#f6b90e;--gold-hi:#ffcf4a;--on-gold:#1c1503;--sage:#8fd3a4;--neg:#ff7d70;--paper:#f3eddf;--paper-hi:#fbf7ee;--paper-rule:#cfc5ad;--paper-ink:#16181e;--paper-mut:#5b5954;--paper-sage:#2b7548;--paper-red:#bf3b2a;
--r:14px;--rs:8px;--disp:"Roboto Condensed","Arial Narrow","Segoe UI",system-ui,sans-serif}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:radial-gradient(1200px 500px at 70% -10%,#17284d 0,transparent 60%),var(--night);color:var(--chalk);font:16px/1.55 "Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;min-height:100dvh;display:flex;flex-direction:column}
a{color:var(--gold);text-decoration:none}a:hover{text-decoration:underline}
.wrap{max-width:1120px;margin:0 auto;padding:0 16px;width:100%}
.strip{background:var(--deep);border-bottom:1px solid var(--rule);font-size:13px;color:var(--haze)}
.strip .wrap{padding:6px 16px}.strip b{background:var(--gold);color:var(--on-gold);padding:1px 7px;border-radius:4px;margin-right:8px}
header.top{border-bottom:1px solid var(--rule);background:rgba(7,12,24,.6);backdrop-filter:blur(6px)}
header.top .wrap{display:flex;align-items:center;gap:20px;min-height:64px;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:10px;font-family:var(--disp);font-weight:800;letter-spacing:.08em;font-size:22px;color:var(--chalk);text-transform:uppercase}
.logo img{width:36px;height:36px;border-radius:50%}.logo span{color:var(--gold)}.logo:hover{text-decoration:none}
nav.main{display:flex;gap:18px;flex:1;flex-wrap:wrap}nav.main a{color:var(--haze);font-size:15px}nav.main a:hover{color:var(--chalk);text-decoration:none}
.btn{display:inline-block;border:1px solid var(--gold);background:var(--gold);color:var(--on-gold);font-weight:700;padding:10px 20px;border-radius:var(--rs);cursor:pointer;font-size:15px;min-height:44px;font-family:inherit;letter-spacing:.02em}
.btn:hover{background:var(--gold-hi);text-decoration:none}.btn.ghost{background:transparent;color:var(--gold)}.btn.ghost:hover{background:#f6b90e22}
.btn.small{padding:6px 12px;min-height:36px;font-size:14px}.btn[disabled]{opacity:.5;cursor:default}
main{flex:1;padding:30px 0 52px}
h1,h2,h3{font-family:var(--disp);text-transform:uppercase;letter-spacing:.03em;line-height:1.1}
h1{font-size:clamp(34px,5.4vw,64px);margin:0 0 14px}h2{font-size:clamp(24px,3vw,32px);margin:34px 0 12px}h3{font-size:20px;margin:0 0 8px}
.eyebrow{color:var(--gold);font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:700}
.lead{color:var(--haze);font-size:18px;max-width:740px}.muted{color:var(--haze)}.small{font-size:13px}
.hero{padding:18px 0 8px}.hero h1 em{font-style:normal;color:var(--gold)}
.panel{background:var(--stand);border:1px solid var(--rule);border-radius:var(--r);padding:18px;overflow-x:auto}
.grid{display:grid;gap:16px}.g3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.tabs{display:flex;gap:8px;margin:16px 0;flex-wrap:wrap}.tab{border:1px solid var(--rule2);background:var(--stand);color:var(--chalk);padding:8px 18px;border-radius:999px;cursor:pointer;font-size:15px;font-family:inherit}
.tab[aria-selected=true]{border-color:var(--gold);background:var(--gold);color:var(--on-gold);font-weight:700}
.layout{display:grid;grid-template-columns:1fr 320px;gap:18px;align-items:start}@media(max-width:900px){.layout{grid-template-columns:1fr}}
/* tickets are paper, like the partner site */
.ticket{background:var(--paper);color:var(--paper-ink);border-radius:var(--r);margin-bottom:16px;overflow:hidden;box-shadow:0 10px 30px #02050c88;border-left:6px solid var(--gold)}
.ticket .hd{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:2px dashed var(--paper-rule);flex-wrap:wrap;background:var(--paper-hi)}
.ticket .hd b{font-family:var(--disp);font-size:20px;text-transform:uppercase;letter-spacing:.05em}
.ticket .muted{color:var(--paper-mut)}
.pill{display:inline-block;padding:1px 9px;border-radius:999px;border:1px solid var(--paper-rule);color:var(--paper-mut);font-size:12px}
.leg{display:grid;grid-template-columns:96px 1fr auto;gap:10px;padding:10px 16px;border-bottom:1px solid var(--paper-rule);align-items:center}
.leg .t{color:var(--paper-mut);font-size:13px}.leg .lg{color:var(--paper-mut);font-size:13px}.leg .m b{font-weight:600}
.odd{border:1px solid var(--paper-rule);background:#fff;color:var(--paper-ink);border-radius:var(--rs);padding:6px 10px;cursor:pointer;min-width:84px;text-align:center;font-size:15px;font-weight:700;font-family:inherit}
.odd:hover,.odd.on{border-color:var(--gold);background:var(--gold);color:var(--on-gold)}.odd .s{display:block;font-size:12px;font-weight:400;color:var(--paper-mut)}.odd.on .s{color:var(--on-gold)}
.ticket .won{color:var(--paper-sage);font-weight:700}.ticket .lost{color:var(--paper-red);font-weight:700}
.ticket .btn.ghost{color:#8a6500;border-color:#8a6500}.ticket .btn.ghost:hover{background:#f6b90e33}
.lockb{display:inline-block;padding:1px 9px;border-radius:999px;border:1px dashed #8a6500;color:#8a6500;font-size:12px}
.won{color:var(--sage)}.lost{color:var(--neg)}
table.sheet{width:100%;border-collapse:collapse}table.sheet th,table.sheet td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--rule);font-size:14px}
table.sheet th{color:var(--haze);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
table.sheet td.num,table.sheet th.num{text-align:right}
table.sheet .odd{background:var(--terrace);color:var(--chalk);border-color:var(--rule2)}table.sheet .odd .s{color:var(--haze)}
table.sheet .odd:hover,table.sheet .odd.on{background:var(--gold);color:var(--on-gold);border-color:var(--gold)}
.slip{position:sticky;top:12px}.slip .row{display:flex;justify-content:space-between;gap:8px;padding:6px 0;border-bottom:1px solid var(--rule);font-size:14px}
.slip input,form input[type=email],form input[type=password],.inline input,.bar select{padding:10px 12px;border-radius:var(--rs);border:1px solid var(--rule2);background:var(--night);color:var(--chalk);font-size:16px;width:100%}
label{display:block;margin:10px 0 4px;color:var(--haze);font-size:14px}
.chk{display:flex;gap:8px;align-items:flex-start;margin:10px 0;color:var(--haze);font-size:14px}.chk input{margin-top:4px;width:auto}.chk label{margin:0}
.err{color:var(--neg);min-height:1.4em;margin:8px 0}.ok{color:var(--sage)}.bad{color:var(--neg)}
footer{border-top:1px solid var(--rule);color:var(--mist);font-size:13px;padding:24px 0;background:var(--deep)}footer .wrap{display:flex;gap:16px;flex-wrap:wrap}footer a{color:var(--haze)}
.legal h2{font-size:22px;margin:26px 0 8px;color:var(--gold-hi)}.legal p,.legal li{color:#c9d2e0;max-width:820px}.legal .co{color:var(--gold-hi);font-weight:600}.legal table{max-width:820px}
.hide{display:none!important}
.offers{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:14px 0}
.offer{background:var(--stand);border:1px solid var(--rule);border-radius:var(--r);padding:16px;display:flex;flex-direction:column}
.offer.best{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold) inset,0 10px 30px #f6b90e1a}
.offer .tag{align-self:flex-start;background:var(--gold);color:var(--on-gold);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:2px 8px;border-radius:4px;margin-bottom:6px}
.offer .pr{font-family:var(--disp);font-size:34px;font-weight:800;color:var(--gold-hi);margin:2px 0}.offer p{margin:0 0 12px;color:var(--haze);font-size:14px;flex:1}
.bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;background:var(--terrace);border:1px solid var(--rule2);border-radius:10px;padding:8px 12px;margin-bottom:12px;font-size:14px}.bar select{width:auto}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:14px 0}.stat{background:var(--stand);border:1px solid var(--rule);border-radius:var(--r);padding:12px}
.stat b{display:block;font-family:var(--disp);font-size:28px;color:var(--gold-hi)}.stat span{color:var(--haze);font-size:13px}
.scroll{overflow-x:auto}.inline{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.inline input{width:auto;min-width:200px}
.consent{background:var(--terrace);border:1px solid var(--rule2);border-radius:10px;padding:10px 14px;margin:12px 0}
/* analysis (monthly) */
.an{border-top:2px dashed var(--paper-rule);background:#fffdf6;padding:0}.an summary{cursor:pointer;padding:9px 16px;font-weight:700;color:#8a6500;font-size:14px;list-style:none}
.an summary::before{content:"\25B8  "}.an[open] summary::before{content:"\25BE  "}.an .in{padding:2px 16px 14px;font-size:14px;color:var(--paper-ink)}
.an .in p{margin:6px 0}.an table{width:100%;border-collapse:collapse;margin:6px 0}.an td{padding:4px 6px;border-bottom:1px solid var(--paper-rule);font-size:13px;vertical-align:top}.an td:first-child{color:var(--paper-mut);width:42%}
.an .basis{font-size:12px;color:var(--paper-mut);margin-top:6px}
.an.locked{padding:9px 16px;display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:14px;color:var(--paper-mut)}
.teaser{border:1px dashed var(--gold);border-radius:var(--r);padding:14px;color:var(--haze)}
@media(max-width:640px){table.sheet th:nth-child(3),table.sheet td:nth-child(3){display:none}table.sheet th,table.sheet td{padding:8px 6px}.leg{grid-template-columns:70px 1fr auto;gap:8px;padding:9px 10px}}
/* v3 additions */
.mt{margin-top:18px}.wide{width:100%}.langsw{display:inline-flex;gap:6px;font-size:13px}.langsw a{color:var(--haze);padding:2px 6px;border-radius:6px;border:1px solid var(--rule2)}.langsw a.on{background:var(--gold);color:var(--on-gold);border-color:var(--gold)}
fieldset.panel{margin:0 0 14px;border:1px solid var(--rule)}fieldset.panel legend{color:var(--gold);padding:0 8px;font-family:var(--disp);text-transform:uppercase;letter-spacing:.04em}
fieldset.panel input,fieldset.panel select,section select,section input[type=text],section input[type=file],textarea{padding:10px 12px;border-radius:var(--rs);border:1px solid var(--rule2);background:var(--night);color:var(--chalk);font-size:16px;width:100%;max-width:640px}
.repframe{width:100%;height:70vh;border:1px solid var(--rule);border-radius:var(--rs);background:#fff;margin-top:12px}
table.sheet tr.tot td{font-weight:700;border-top:2px solid var(--rule2)}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:12px 0}.stat{background:var(--stand);border:1px solid var(--rule);border-radius:var(--r);padding:14px}.stat b{display:block;font-size:26px;font-family:var(--disp)}.stat span{color:var(--haze);font-size:13px}
code{background:var(--terrace);padding:1px 6px;border-radius:4px;word-break:break-all}
@media(max-width:520px){.leg{grid-template-columns:64px minmax(0,1fr) auto;gap:8px;padding:10px 10px}.odd{min-width:64px}.ticket .hd{padding:10px}.btn.small{padding:6px 8px}.lockb{display:none}.leg .m b{overflow-wrap:anywhere}header.top .wrap{gap:10px}}
