/* Gradus brand layer. Loaded after each page's own stylesheet. */
@import url("https://fonts.googleapis.com/css2?family=Cinzel:wght@500;600;700&family=Montserrat:wght@400;500;600;700;800&display=swap");

:root{
  --g-ink:#15202B;--g-ember:#C4501C;--g-ember-deep:#A8431A;--g-ember-tint:#F7E7DD;
  --g-granite:#4A5560;--g-stone:#F3F0EA;--g-line:#DDD8CC;--g-reached:#2F7A55;
  --g-display:"Cinzel","Trajan Pro",Georgia,"Times New Roman",serif;
  --g-body:"Montserrat",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
}

body,button,input,select,textarea{font-family:var(--g-body)}
h1,h2,.hero h1{font-family:var(--g-display);font-weight:600;letter-spacing:.01em}

/* Top bars */


/* Brand block: monogram + GRADUS wordmark */
.brand{font-family:var(--g-display)!important;letter-spacing:.16em}
.brand small{font-family:var(--g-body);letter-spacing:.03em;text-transform:none}
.mark{
  background:#15202B url(/brand/gradus-mark-light.svg) center/70% no-repeat!important;border-radius:8px!important;
  color:transparent!important;font-size:0!important;box-shadow:none!important;border:0!important;
}

/* Logo images */
img.gradusLogo{display:block;height:38px;width:auto;max-width:100%}
img.gradusLogo.checkup{height:48px}

/* Sign-in screen: summit photo behind the card */
.login{
  background:linear-gradient(180deg,rgba(21,32,43,.25),rgba(21,32,43,.65)),url(/brand/photo-summit.webp) center 35%/cover no-repeat,var(--g-ink)!important;
}
.loginbox{border-radius:12px;box-shadow:0 24px 60px rgba(21,32,43,.35)}

a{color:var(--g-ember)}
:focus-visible{outline-color:var(--g-ember)}

@media print{
  .topbar{background:#fff!important}
  
}

/* Practice menu (console top bar) */
.g-practice-menu{position:relative;display:inline-block}
.g-practice-menu>summary{list-style:none;cursor:pointer}
.g-practice-menu>summary::-webkit-details-marker{display:none}
.g-practice-menu>summary::after{content:" \25BE"}
.g-practice-menu>div{position:absolute;right:0;top:calc(100% + 6px);z-index:50;min-width:260px;background:#fff;color:#15202B;border:1px solid #DDD8CC;border-radius:10px;box-shadow:0 14px 34px rgba(21,32,43,.18);padding:6px;display:grid}
.g-practice-menu>div a{color:#15202B;text-decoration:none;padding:10px 12px;border-radius:7px;font-weight:600;font-size:14px}
.g-practice-menu>div a:hover{background:#F7E7DD;color:#A8431A}
.g-practice-menu>div small{padding:6px 12px 8px;color:#4A5560;font-size:12px}

.topbar img.gradusLogo.checkup{content:url(/brand/gradus-checkup-compact-light.svg);height:40px;width:auto}

/* Checkboxes and radios keep their natural size (a page-wide 'input{width:100%}' was stretching them) */
input[type=checkbox],input[type=radio]{width:auto!important;padding:0!important;flex:0 0 auto;margin:3px 0 0;accent-color:#C4501C}
.pref-row span{margin:0!important;font-size:14px!important;font-weight:400!important}
.pref-row small{font-weight:400}

/* Console: Viewer / Editing toggle floats in its own corner and stays visible while scrolling */
.navbtn[data-action="admin-edit-toggle"]{position:fixed;top:76px;right:20px;z-index:1200;background:#fff!important;color:#15202B!important;border:1px solid #DDD8CC!important;box-shadow:0 10px 26px rgba(21,32,43,.22);font-weight:700;padding:10px 16px;border-radius:999px}
.navbtn[data-action="admin-edit-toggle"]::before{content:"\1F441\FE0E  "}
.navbtn.editon[data-action="admin-edit-toggle"]{background:#C4501C!important;color:#fff!important;border-color:#C4501C!important}
.navbtn.editon[data-action="admin-edit-toggle"]::before{content:"\270E  "}
@media (max-width:700px){.navbtn[data-action="admin-edit-toggle"]{top:auto;bottom:18px;right:16px}}

/* Client dashboard: summary cards open details */
.g-click{cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}
.g-click:hover,.g-click:focus-visible{border-color:#C4501C;box-shadow:0 10px 26px rgba(21,32,43,.12);transform:translateY(-1px);outline:none}
.g-cta{margin-top:10px;font-size:12px;font-weight:700;color:#A8431A}
#g-modal{position:fixed;inset:0;z-index:2147482000;display:grid;place-items:center;padding:16px}
.g-modal-bg{position:absolute;inset:0;background:rgba(21,32,43,.55)}
.g-modal-box{position:relative;background:#fff;color:#15202B;border-radius:14px;max-width:720px;width:100%;max-height:86vh;overflow:auto;padding:28px 26px 22px;box-shadow:0 30px 70px rgba(21,32,43,.35)}
.g-modal-x{position:absolute;top:10px;right:14px;border:0;background:none;font-size:30px;line-height:1;cursor:pointer;color:#4A5560}
.g-modal-box h2{margin:4px 0 6px}.g-modal-box h3{font-family:var(--g-display);font-size:16px;margin:22px 0 8px}
.g-build{border-top:1px solid #EEEAE2;padding:14px 0}.g-build .progress{margin:8px 0}
.g-steps{list-style:none;margin:6px 0 0;padding:0}.g-steps li{display:flex;gap:10px;padding:5px 0;color:#4A5560}
.g-steps li span{width:18px;text-align:center;color:#9AA2AA}.g-steps li.done{color:#15202B}.g-steps li.done span{color:#2F7A55;font-weight:800}
.g-bar{display:grid;grid-template-columns:minmax(150px,1.3fr) 2fr 34px;gap:10px;align-items:center;font-size:13px;padding:5px 0}.g-bar b{text-align:right}
.g-item{border-top:1px solid #EEEAE2;padding:10px 0}.g-item p{margin:4px 0 0;color:#4A5560}

/* 8-pillar progress */
.g-of{font-size:.45em;color:#4A5560;font-weight:600}
.g-pillbar{display:grid;grid-template-columns:repeat(8,1fr);gap:4px;margin-top:8px}
.g-pillbar i{height:9px;border-radius:5px;background:#E8E4DC}
.g-pillbar i.done{background:#2F7A55}.g-pillbar i.progress{background:#C4501C}.g-pillbar i.next{background:#E2B49C}
.g-pillar{border-top:1px solid #EEEAE2;padding:12px 0}
.g-pillar-h{display:flex;align-items:center;justify-content:space-between;gap:12px}
.g-pbuild{margin:10px 0 2px 14px;padding-left:12px;border-left:3px solid #F3F0EA}
.g-chip{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:4px 9px;border-radius:99px;white-space:nowrap}
.g-chip.done{background:#E6F1EA;color:#2F7A55}.g-chip.progress{background:#F7E7DD;color:#A8431A}.g-chip.next{background:#F3F0EA;color:#4A5560}.g-chip.not{background:#F6F6F4;color:#8A9199}
.g-steps li.fin{color:#15202B;background:#FBF3EE;border-radius:6px;padding:6px 8px;margin-top:4px}
/* Finish line: the last step of each Build */
.step.g-finish{background:#FBF3EE;border:1px dashed #C4501C;border-radius:10px;padding:12px;margin-top:10px}
.step.g-finish strong::before{content:"FINISH LINE \00B7  ";color:#A8431A;font-size:11px;letter-spacing:.12em}
/* Console metric details */
.g-mlist{margin-top:8px}
.g-mrow{display:flex;justify-content:space-between;gap:14px;padding:11px 6px;border-top:1px solid #EEEAE2;color:#15202B;text-decoration:none;border-radius:6px}
a.g-mrow:hover{background:#FBF9F5}
.g-mval{text-align:right;font-weight:700;white-space:nowrap}
.g-mtotal{background:#F3F0EA;border-radius:8px;padding:9px 12px;font-weight:700;margin:12px 0 4px}

.g-acts{list-style:none;margin:8px 0 2px;padding:0}.g-acts li{display:flex;gap:10px;font-size:13px;padding:3px 0;color:#15202B}.g-acts li span{color:#4A5560;min-width:64px;flex:0 0 auto}.g-noact{margin-top:6px;font-style:italic}.g-sess{align-items:flex-start}
