:root{--jk:#b5cf19;--ink:#17202a;--bg:#f5f7f9}
body{background:var(--bg);color:var(--ink)}
body:has(.login-wrap){background:linear-gradient(90deg,rgba(12,17,19,.16),rgba(12,17,19,.4) 32%,rgba(12,17,19,.4) 68%,rgba(12,17,19,.16)),url("img/login-workshop-products-final.png") center/cover fixed no-repeat}
.navbar-brand img{width:54px;height:54px;object-fit:contain;margin-right:.65rem}
.navbar-brand small{display:block;font-size:.68rem;color:#6c757d}
.card{border:0;border-radius:14px;box-shadow:0 2px 12px #17202a12}
.stat{border-left:4px solid var(--jk)}
.table thead th{font-size:.78rem;text-transform:uppercase;color:#6c757d;white-space:nowrap}
.btn-jk{background:var(--jk);border-color:var(--jk);color:#111}
.btn-jk:hover{background:#9fb713;border-color:#9fb713}
.badge{min-width:105px}
.login-wrap{min-height:78vh;display:grid;place-items:center;padding-left:0}
.login-card{max-width:460px;width:100%;background:rgba(255,255,255,.97);box-shadow:0 18px 55px rgba(0,0,0,.34);backdrop-filter:blur(3px)}
.login-wordmark-image{display:block;width:100%;max-width:360px;height:145px;margin:0 auto;object-fit:contain;border-radius:10px;transform:translateX(12px)}
.help-status{border:1px solid #dde3e8;min-height:88px}
.help-status span{color:#4f5963}
.help-ok{background:#e8f5ed}
.help-soon{background:#fff1b8}
.help-bad{background:#fbe1e6}
.help-missing{background:#eef1f4}
.portal-footer{position:relative;padding:0 1.5rem 1.25rem;text-align:center;color:#6c757d;font-size:.9rem}
.portal-footer a{color:#5d6873;text-decoration:none}
.portal-footer a:hover{text-decoration:underline}
.portal-footer span{margin:0 .4rem}
.portal-version{position:absolute;right:1.5rem;color:#8b949e;font-size:.78rem}
body:has(.login-wrap) .portal-footer{color:#eef3f7;text-shadow:0 1px 2px rgba(0,0,0,.55)}
body:has(.login-wrap) .portal-footer a{color:#fff}
body:has(.login-wrap) .portal-version{color:#eef3f7}
@media(max-width:760px){body:has(.login-wrap){background-position:62% center}.login-wrap{justify-items:center;padding-left:0}.login-wordmark-image{height:120px;transform:translateX(6px)}.login-card{padding:1rem!important}.portal-version{position:static;display:block;margin-top:.25rem}}
@media print{*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.protocol,.protocol *,.table,.table *,.alert,.alert *,img{forced-color-adjust:none!important}nav,.print-hide{display:none!important}body{background:#fff}.card{box-shadow:none}.protocol{padding:0!important}.container-fluid{padding:0!important}.table{font-size:10px}}
