/* Kompass AI Register: product page and local application. Uses the colors and fonts from styles.css. */
.crumbs{font-size:.85rem;color:var(--stone)}.crumbs a{color:var(--stone)}
.rg-wrap{padding-block:clamp(2.5rem,6vw,4.5rem) clamp(3rem,7vw,5.5rem)}
.rg-sub{font-size:.88rem;color:var(--stone);max-width:80ch}
.rg-none{font-size:.92rem;color:var(--stone)}
.rg-link{font:inherit;font-size:.92rem;background:none;border:0;padding:0;color:var(--ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer;text-align:left}
.rg-danger{color:var(--accent);margin-left:auto}
.rg-err{font-size:.9rem;color:var(--accent)}
.rg-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.rg-consent{flex-direction:row;align-items:flex-start;gap:.7rem;font-size:.85rem;letter-spacing:0;line-height:1.5}
.rg-consent input{width:auto;margin-top:.25rem;flex:none}

/* product page */
.rg-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule)}
.rg-three>div{background:var(--paper);padding:1.6rem 1.4rem;display:grid;gap:.6rem;align-content:start}
.rg-three h2{font-size:1.6rem}.rg-three p{font-size:.95rem;color:var(--stone)}
@media (max-width:820px){.rg-three{grid-template-columns:1fr}}
.rg-block{margin-top:3rem;display:grid;gap:1rem;max-width:1000px}
.rg-block h2{font-size:clamp(1.8rem,3vw,2.4rem)}.rg-block h3{font-size:1.35rem}
.rg-map{width:100%;border-collapse:collapse;font-size:.92rem}
.rg-map th,.rg-map td{text-align:left;vertical-align:top;padding:.7rem .8rem;border-bottom:1px solid var(--rule)}
.rg-map thead th{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--stone);border-bottom:1px solid var(--ink)}
.rg-map tbody th{font-family:var(--display);font-size:1.1rem;font-weight:500;width:46%}
@media (max-width:700px){.rg-map,.rg-map tbody,.rg-map tr,.rg-map th,.rg-map td{display:block;width:100%}.rg-map thead{display:none}.rg-map tr{padding:.6rem 0;border-bottom:1px solid var(--ink)}.rg-map td,.rg-map th{border:0;padding:.25rem 0}.rg-map tbody th{width:100%}}
.rg-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem}
@media (max-width:820px){.rg-two{grid-template-columns:1fr}}
.rg-card{border-top:1px solid var(--ink);padding-top:1rem;display:grid;gap:.9rem;align-content:start}
.rg-card ul,.rg-list{margin:0;padding-left:1.1rem;display:grid;gap:.4rem;font-size:.95rem}
.rg-card .chip{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;padding:.2rem .6rem;border:1px solid var(--rule);color:var(--stone);border-radius:2px;justify-self:start}

/* application */
.rg-top{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;align-items:flex-end;margin-bottom:1rem}
.rg-top h2{font-size:clamp(1.5rem,2.6vw,2.1rem);max-width:30ch}
.rg-acting{font-size:.88rem;color:var(--stone)}
.rg-banner{background:var(--note);color:var(--note-fg);padding:.7rem 1rem;font-size:.9rem;margin-bottom:1rem}
.rg-banner .rg-link{color:inherit}
.rg-tabs{display:flex;gap:.2rem;flex-wrap:wrap;border-bottom:1px solid var(--rule);margin-bottom:1.6rem}
.rg-tabs button{font:inherit;font-size:.92rem;background:none;border:0;border-bottom:2px solid transparent;color:var(--stone);padding:.6rem .9rem;cursor:pointer}
.rg-tabs button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--ink)}
#rg-body{display:grid;gap:2rem}
#rg-body h3{font-size:1.5rem}
.rg-tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule)}
.rg-tiles>div{background:var(--paper);padding:1rem 1.1rem;display:grid;gap:.2rem;align-content:start}
.rg-tiles span{font-size:.8rem;color:var(--stone)}.rg-tiles b{font-family:var(--display);font-size:2.2rem;font-weight:500;line-height:1.1;font-variant-numeric:lining-nums}.rg-tiles small{font-size:.74rem;color:var(--stone)}
@media (max-width:900px){.rg-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
.rg-two{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
@media (max-width:820px){.rg-two{grid-template-columns:1fr}}
.rg-bars{list-style:none;margin:.6rem 0 0;padding:0;display:grid;gap:.6rem}
.rg-bars li{display:grid;grid-template-columns:7rem 1fr 2rem;gap:.7rem;align-items:center;font-size:.9rem}
.rg-bars b{text-align:right;font-weight:500;font-variant-numeric:lining-nums}
.rg-bar{height:10px;background:var(--rule)}.rg-bar i{display:block;height:100%}
.t-high{background:var(--accent)}.t-medium{background:var(--stone)}.t-low{background:var(--ink)}.t-none{background:var(--clay)}.t-status{background:var(--ink)}
.rg-gaps{list-style:none;margin:.6rem 0 0;padding:0;display:grid;border-top:1px solid var(--ink)}
.rg-gaps li{display:grid;grid-template-columns:1fr auto;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--rule);align-items:start}
.rg-gaps small{display:block;font-size:.8rem;color:var(--stone)}
.rg-gaps p{font-size:.88rem;margin-top:.3rem}
.rg-count{font-family:var(--display);font-size:1.6rem;font-variant-numeric:lining-nums}
.rg-gaps li.none .rg-count{color:var(--stone)}
.rg-empty{border:1px solid var(--rule);background:var(--card);padding:2rem;display:grid;gap:1rem;max-width:760px}
.rg-tools{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center;margin-bottom:.8rem}
.rg-tools input[type=search]{max-width:22rem}
.rg-tools select{width:auto}
.rg-tools .btn{padding:.55rem 1.1rem;font-size:.88rem}
.rg-tablewrap{overflow-x:auto}
.rg-table{width:100%;border-collapse:collapse;font-size:.9rem}
.rg-table th,.rg-table td{padding:.6rem .6rem;text-align:left;border-bottom:1px solid var(--rule);vertical-align:top}
.rg-table thead th{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--stone);border-bottom:1px solid var(--ink)}
.rg-table small{display:block;color:var(--stone);font-size:.78rem}
.rg-table td:first-child{white-space:nowrap}
.rg-th{font:inherit;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--stone);background:none;border:0;padding:0;cursor:pointer}
.rg-chip{display:inline-block;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;padding:.15rem .5rem;border:1px solid var(--rule);color:var(--stone);border-radius:2px}
.rg-chip.t-high{background:none;color:var(--accent);border-color:var(--accent)}
.rg-chip.t-medium{background:none;color:var(--ink);border-color:var(--stone)}
.rg-chip.t-low{background:none;color:var(--stone)}
.rg-chip.s-live{color:var(--ink);border-color:var(--ink)}
.rg-flag{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.rg-chipbtn{font:inherit;font-size:.88rem;background:none;color:var(--ink);border:1px solid var(--rule);padding:.4rem .9rem;border-radius:2px;cursor:pointer}
.rg-chipbtn[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.rg-preview{border:1px solid var(--rule);padding:1.4rem;background:var(--paper);max-width:900px}
.rg-preview h1{font-size:2rem}.rg-preview h3{font-size:1.3rem;margin-top:1rem}
.rg-preview .rp-box{border:1px solid var(--rule);padding:.6rem .8rem;font-size:.85rem;color:var(--stone);margin:.8rem 0}
.rg-preview .rp-meta{color:var(--stone);font-size:.9rem}
.rp-tab{width:100%;border-collapse:collapse;font-size:.88rem;margin:.4rem 0}
.rp-tab th,.rp-tab td{padding:.4rem .4rem;border-bottom:1px solid var(--rule);text-align:left;vertical-align:top}
.rp-tab th small{display:block;font-weight:400;color:var(--stone);font-size:.78rem}
.rg-form{display:grid;gap:1rem}
.rg-form .f2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.rg-form .f3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
@media (max-width:700px){.rg-form .f2,.rg-form .f3{grid-template-columns:1fr}}

/* dialogs */
dialog#regEditor,dialog#regApproval,dialog#regGate,dialog#pilotDlg{border:1px solid var(--rule);background:var(--paper);color:var(--ink);padding:0;border-radius:2px;max-height:calc(100vh - 2rem);overflow:auto}
dialog#regEditor{width:min(920px,calc(100vw - 2rem))}
dialog#regApproval,dialog#regGate,dialog#pilotDlg{width:min(600px,calc(100vw - 2rem))}
dialog::backdrop{background:rgba(20,17,14,.55)}
.rg-dlg{padding:1.6rem 1.5rem;display:grid;gap:1.3rem}
.rg-dlg h3{font-size:1.6rem}.rg-dlg h4{font-family:var(--display);font-size:1.25rem;font-weight:500;margin-bottom:.5rem}
.rg-dlg-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}
.rg-dlg-foot{display:flex;gap:.8rem;align-items:center;flex-wrap:wrap;position:sticky;bottom:0;background:var(--paper);padding:.8rem 0;border-top:1px solid var(--rule)}
.rg-scores{display:grid;gap:.9rem}
.rg-score{display:grid;grid-template-columns:minmax(0,1fr) 6rem;gap:1rem;align-items:start}
.rg-score label{font-size:.92rem;letter-spacing:0;color:var(--ink)}.rg-score label small{display:block;color:var(--stone);font-size:.78rem}
.rg-tierline{font-size:.95rem}
.rg-wf{display:grid;gap:.7rem}
.rg-gate{background:var(--note);color:var(--note-fg);padding:.7rem 1rem;font-size:.9rem}.rg-gate ul{margin:.3rem 0 0;padding-left:1.1rem}
.rg-hist{margin:0;padding-left:1.1rem;font-size:.85rem;color:var(--stone);display:grid;gap:.3rem}
.rg-evrow{display:flex;justify-content:space-between;gap:1rem;font-size:.9rem;padding:.3rem 0;border-bottom:1px solid var(--rule)}

/* printable report: hidden on screen, the only thing shown when printing */
#reg-print{display:none}
@media print{
  @page{size:A4;margin:16mm 16mm 22mm;@bottom-center{content:"Prepared from the institution's own records. Not evidence of compliance. Kompass AI Register | Private and confidential";font:8pt Jost,Arial,sans-serif;color:#6B625A}}
  header.site,footer,.skip,.hero,.rg-wrap,noscript,dialog{display:none!important}
  .page{animation:none!important;opacity:1!important}
  body{background:#fff;color:#27221D;font-size:10.5pt}
  #reg-print{display:block!important;color:#27221D}
  #reg-print h1{font-family:var(--display);font-size:28pt;margin:0 0 .3em}
  #reg-print h3{font-family:var(--display);font-size:15pt;margin:1.3em 0 .4em;break-after:avoid-page}
  #reg-print .rp-meta{color:#6B625A;margin-bottom:1em}
  #reg-print .rp-box{border:1px solid #D8D0C2;padding:.7em .9em;font-size:9pt;color:#6B625A;margin-bottom:1em}
  #reg-print .rp-tab{width:100%;border-collapse:collapse;font-size:9pt}
  #reg-print .rp-tab th,#reg-print .rp-tab td{padding:.35em .4em;border-bottom:1px solid #D8D0C2;text-align:left;vertical-align:top}
  #reg-print .rp-tab tr{break-inside:avoid}
  #reg-print .rp-foot{margin-top:2em;font-size:8pt;color:#6B625A;border-top:1px solid #D8D0C2;padding-top:4pt}
}
