.debug-panel{position:fixed;right:1rem;left:1rem;bottom:1rem;z-index:9999}@media (min-width: 576px){.debug-panel{right:0rem;left:unset;min-width:25%}}

/* Light and dark palettes follow the native Runtipi theme. */
:root,body[data-bs-theme=light]{--access-bg:#edf0f5;--access-panel:#fafbfc;--access-input:#f5f7fa;--access-soft:#e4e9f2;--access-text:#263244;--access-muted:#687b93;--access-line:#ced8e6;--access-scheme:light}
body[data-bs-theme=dark]{--access-bg:#101722;--access-panel:#1b2635;--access-input:#142031;--access-soft:#253448;--access-text:#edf2f8;--access-muted:#a3b2c6;--access-line:#36465b;--access-scheme:dark}
/* CSTISA branding override for the installed Runtipi frontend. */
@font-face{font-family:'CSTISA Titillium';src:url('/cstisa-brand/TitilliumWeb-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'CSTISA Titillium';src:url('/cstisa-brand/TitilliumWeb-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
:root,[data-bs-theme=light],[data-bs-theme=dark]{--tblr-primary:#ef0022!important;--tblr-primary-rgb:239,0,34!important;--tblr-link-color:#b8000f!important;--tblr-link-hover-color:#ef0022!important;--tblr-font-sans-serif:'CSTISA Titillium',sans-serif!important}
.page-center:has(input[type=password]){background:linear-gradient(125deg,#e1e6ee,#f4f6f9)!important;border-top:5px solid #ef0022;--tblr-body-color:var(--access-text);--tblr-border-color:var(--access-line);--tblr-bg-surface:#fff;--tblr-card-bg:#fff;color:var(--access-text)!important}
.page-center img[alt="Runtipi logo"]{width:165px!important;height:165px!important;object-fit:contain;filter:none!important}
.page-center:has(input[type=password]) .container-tight{max-width:470px!important}
.page-center:has(input[type=password]) .card{background:#fff!important;border:1px solid var(--access-line)!important;border-radius:15px!important;box-shadow:0 18px 60px #22395414!important;color:var(--access-text)!important}
.page-center:has(input[type=password]) .card-body{padding:30px!important}
.page-center:has(input[type=password]) h2{font-weight:700!important;font-size:25px!important;color:var(--access-text)!important}
.page-center:has(input[type=password]) input{background:var(--access-input)!important;border:1px solid var(--access-line)!important;color:var(--access-text)!important;border-radius:7px!important}
.page-center:has(input[type=password]) input:focus{border-color:#ef0022!important;box-shadow:0 0 0 3px #ef002220!important}
.page-center:has(input[type=password]) .btn-primary{background:#ef0022!important;border-color:#ef0022!important;color:white!important}
.page-center:has(input[type=password]) .btn-primary:hover{background:#b8000f!important;border-color:#b8000f!important}
.page-center:has(input[type=password]) a{color:#b8000f!important}
header.navbar{background:var(--access-soft)!important;border-top:4px solid #ef0022!important;border-bottom:1px solid var(--access-line)!important;color:var(--access-text)!important;--tblr-navbar-color:var(--access-muted);--tblr-navbar-hover-color:#b8000f;--tblr-navbar-active-color:#b8000f}
header.navbar .navbar-brand{font-size:0!important;color:var(--access-text)!important;gap:10px}
header.navbar .navbar-brand:after{content:'Access Portal';font-size:20px;font-weight:700;letter-spacing:.025em;color:var(--access-text)}
header.navbar img[alt="Runtipi logo"]{width:65px!important;max-width:65px!important;height:62px!important;max-height:none!important;object-fit:contain}
header.navbar .nav-link,header.navbar .btn-ghost{color:var(--access-muted)!important}
header.navbar .nav-item.active>.nav-link,header.navbar .nav-link:hover{color:#b8000f!important;background:#ffffff80!important;border-radius:5px}
.navbar-overlap:after{background:var(--access-soft)!important}
.page:has(header.navbar){background:var(--access-bg)!important}
.page:has(header.navbar) .page-header{color:var(--access-text)!important}
body:has(header.navbar){--tblr-body-color:var(--access-text)!important;--tblr-body-bg:var(--access-bg)!important;--tblr-bg-surface:var(--access-panel)!important;--tblr-bg-surface-secondary:var(--access-soft)!important;--tblr-bg-surface-tertiary:var(--access-soft)!important;--tblr-border-color:var(--access-line)!important;--tblr-secondary:var(--access-muted)!important;color:var(--access-text)!important;color-scheme:var(--access-scheme)}
.page:has(header.navbar) .page-title,.page:has(header.navbar) .breadcrumb{color:var(--access-text)!important}
.page:has(header.navbar) .card{background:var(--access-panel)!important;color:var(--access-text)!important;border-color:var(--access-line)!important}
.page:has(header.navbar) .card-title{color:var(--access-text)!important}
header.navbar .btn{background:var(--access-panel)!important;color:var(--access-muted)!important;border-color:var(--access-line)!important}
/* Dialogs are mounted outside .page and must share its light form palette. */
body:has(header.navbar) .modal{--tblr-body-color:var(--access-text);--tblr-bg-forms:var(--access-input);--tblr-border-color:var(--access-line);color-scheme:var(--access-scheme)}
body:has(header.navbar) .modal-content{background:var(--access-panel)!important;color:var(--access-text)!important;border-color:var(--access-line)!important;border-radius:14px!important}
body:has(header.navbar) .modal-header{background:var(--access-input)!important;border-color:var(--access-line)!important;border-radius:14px 14px 0 0!important}
body:has(header.navbar) .modal-footer{background:var(--access-soft)!important;border-color:var(--access-line)!important;border-radius:0 0 14px 14px!important}
body:has(header.navbar) .modal :is(.form-control,.form-select){background:var(--access-input)!important;color:var(--access-text)!important;border:1px solid var(--access-line)!important;border-radius:7px!important;box-shadow:none!important}
body:has(header.navbar) .modal :is(.form-control,.form-select)::placeholder{color:#78869a!important;opacity:1}
body:has(header.navbar) .modal :is(.form-control,.form-select):focus{background:#fff!important;border-color:#8797ad!important;outline:0!important;box-shadow:0 0 0 3px #8797ad26!important}
body:has(header.navbar) .modal :is(.form-label,.modal-title){color:var(--access-text)!important}
body:has(header.navbar) .modal :is(.btn-success,.btn-primary){background:#ef0022!important;border-color:#ef0022!important;color:#fff!important;border-radius:7px!important}
body:has(header.navbar) .modal :is(.btn-success,.btn-primary):hover{background:#b8000f!important;border-color:#b8000f!important}

body[data-bs-theme=dark] .page-center:has(input[type=password]){background:linear-gradient(125deg,#101722,#253448)!important}
body[data-bs-theme=dark] .page-center:has(input[type=password]) .card{background:var(--access-panel)!important}
body[data-bs-theme=dark] a{--tblr-link-color:#ff8394;--tblr-link-hover-color:#ffa5b0}header.navbar .navbar-brand img{background:#fff;border-radius:5px}[data-cstisa-users] .nav-link{font-weight:700;color:var(--tblr-link-color)!important}

.cstisa-identity-hint{border:1px solid var(--access-line);border-left:3px solid #ef0022;border-radius:7px;padding:12px 14px;background:var(--access-input);color:var(--access-muted);font-size:13px;line-height:1.6;margin-bottom:20px}
