/* TesTex shared branding — loaded after Bootstrap and existing application styles. */
:root{--testex-ink:#171d1c;--testex-muted:#5c6661;--testex-red:#b51e28;--testex-green:#a2d66e;--testex-paper:#f3f5f0;--testex-line:#dce2d9}
body{margin:0;color:var(--testex-ink);font-family:Arial,Helvetica,sans-serif;background:linear-gradient(#f3f5f0eb,#f3f5f0eb),url('../content/brand/dots.png') right top/400px auto no-repeat fixed;background-color:var(--testex-paper);line-height:1.5}
a{color:#384f32}a:hover{color:#911620}button,a,input,select,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #659337;outline-offset:3px}
h1,h2,h3{color:var(--testex-ink);font-weight:600;letter-spacing:-.035em}h1{font-size:clamp(1.65rem,3vw,2.15rem);margin-bottom:1rem}h2{font-size:1.55rem}h3{font-size:1.25rem}
body>.container-fluid,body>.container,body>#wrapper{padding-top:24px;padding-bottom:24px}body>.container-fluid{padding-left:28px;padding-right:28px}
.testex-header{background:linear-gradient(#17201cf2,#17201cf2),url('../content/brand/dots.png') right center/300px auto no-repeat;color:white;border-bottom:3px solid var(--testex-green);box-shadow:0 3px 15px #17201c12}
.testex-header>.container-fluid{padding:18px 28px}.testex-header-row{align-items:center;gap:16px 0}.testex-header #logo img{width:150px;height:58px;object-fit:contain}.testex-header #middle_banner{flex:1;min-width:0}.testex-header #middle_banner>.row:first-child{margin:0 0 8px}.testex-header #middle_banner p{margin:0;color:#c4cec6;font-size:12px;max-width:720px}.testex-header h2{color:var(--testex-green);font-size:18px}.testex-header a{color:white;font-size:13px;text-decoration:none}.testex-header a:hover{color:var(--testex-green)}.testex-nav{gap:3px}.testex-nav>.col-auto{padding:0}.testex-nav a{display:flex;align-items:center;gap:7px;min-height:44px;padding:9px 11px;border-radius:5px}.testex-nav a:hover,.testex-nav a[aria-current=page]{background:#2a382e;box-shadow:inset 0 -2px var(--testex-green)}.testex-header img:not(#logo img){width:19px;height:19px;object-fit:contain}.testex-header #user_splash{flex:0 0 auto;font-size:13px;max-width:240px}.testex-header #user_splash object{width:14px;height:14px;filter:invert(1);pointer-events:none}.testex-header #user_splash a{display:inline-flex;align-items:center;gap:6px;min-height:44px}.testex-header #user_splash .d-lg-none{display:none!important}.testex-nav-toggle{display:none}
.testex-eyebrow{font-size:10px;letter-spacing:.18em;font-weight:700;color:var(--testex-muted);margin:0 0 10px}.testex-muted{color:var(--testex-muted)}.testex-menu>.row{gap:18px;margin:22px 0}.testex-menu-card{background:white;border:1px solid var(--testex-line);border-top:3px solid var(--testex-green);border-radius:10px;padding:20px;flex:1 1 270px;min-width:0;box-shadow:0 4px 15px #17201c04}.testex-menu-card>span{font-size:17px;font-weight:700;display:block;margin-bottom:12px}.testex-menu-card ul{padding:0;margin:0}.testex-menu-card li+li{border-top:1px solid #edf0ea}.testex-menu-card a{display:block;padding:11px 4px;font-size:14px;min-height:44px}.testex-menu-card a:hover{background:#f3f6ef;text-decoration:none}
.btn{border-radius:6px;font-weight:600;min-height:42px;padding:9px 15px}.btn-primary{background:var(--testex-red);border-color:var(--testex-red)}.btn-primary:hover,.btn-primary:active,.btn-primary:focus{background:#911620!important;border-color:#911620!important}.btn-outline-primary{color:var(--testex-red);border-color:var(--testex-red)}.btn-outline-primary:hover{background:var(--testex-red);border-color:var(--testex-red)}.btn-outline-dark{color:var(--testex-ink);border-color:#88968a}.btn-dark,.bg-dark{background-color:#17201c!important}.btn-link{color:#384f32}.form-control,.custom-select{border-color:#b9c5b6;border-radius:6px;min-height:42px;height:auto;color:var(--testex-ink)}.form-control:focus,.custom-select:focus{border-color:#659337;box-shadow:0 0 0 3px #a2d66e40}label{font-weight:600;font-size:14px}input[type=checkbox],input[type=radio]{accent-color:var(--testex-red)}.card,.modal-content{border-color:var(--testex-line);border-radius:10px}.modal-header{border-bottom-color:var(--testex-line)}.modal-footer{border-top-color:var(--testex-line)}
.table{background:white;color:var(--testex-ink)}.table .thead-dark th,.table-dark{background-color:#17201c;border-color:#425047;color:white}.table-striped tbody tr:nth-of-type(odd){background-color:#f2f5ef}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:#28362e}.table td,.table th{vertical-align:middle}.table .table-success,.table .table-warning,.table .table-danger{color:#171d1c}.table-bordered,.table-bordered td,.table-bordered th{border-color:var(--testex-line)}.table-hover tbody tr:hover td,.table-hover tbody tr:hover th{background-color:#e7f1dc}.table-dark.table-hover tbody tr:hover td{color:#171d1c}
.testex-table-scroll{max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;margin-bottom:1rem;border-radius:6px}.testex-table-scroll>.table{margin-bottom:0}.testex-table-scroll:focus-visible{outline:3px solid #659337;outline-offset:2px}.testex-table-scroll .sticky-top{z-index:2}.pageination-container,#sidebar-panel,#sidebar-toggle>button,.search-tier-two{background:white;border-color:var(--testex-line)}.pageination-container{height:auto;min-height:44px;flex-wrap:wrap;gap:4px}.pageination-buttons{min-width:40px;min-height:40px;border:1px solid var(--testex-line);background:#f3f5f0}.pageination-buttons svg{height:24px}.user-filter{background:var(--testex-paper)}#wrapper>.container{min-width:0}#sidebar-panel{box-shadow:4px 6px 22px #17201c20;padding:16px;max-height:85vh;overflow:auto}.SEARCH_SIDEBAR{z-index:1020}.SEARCH_SIDEBAR #sidebar-panel{max-width:calc(100vw - 56px)}#sidebar-toggle>button{min-width:40px;min-height:48px}#sidebar-toggle{width:40px}#sidebar-toggle svg{height:30px}#sidebar-toggle button:focus-visible{outline-offset:-3px}
.testex-login{min-height:100vh;display:grid;place-items:center;padding:24px}.testex-login-card{background:white;width:min(460px,100%);padding:36px;border:1px solid var(--testex-line);border-top:4px solid var(--testex-green);border-radius:12px;box-shadow:0 18px 65px #17201c10}.testex-login-brand{display:block;margin-bottom:26px}.testex-login-brand img{object-fit:contain;object-position:left center;max-width:100%}.testex-login-footer{color:var(--testex-muted);font-size:11px;border-top:1px solid var(--testex-line);margin:26px 0 0;padding-top:18px}.testex-login .form-control{font-size:16px;min-height:48px}.testex-login button{min-height:48px}.testex-embedded{background:white}
@media(max-width:991.98px){.testex-header>.container-fluid{padding:12px 16px}.testex-header-row{position:relative}.testex-header #logo{flex:1}.testex-header #logo img{width:126px;height:46px}.testex-nav-toggle{display:flex;align-items:center;gap:12px;min-height:44px;background:transparent;border:1px solid #77867a;color:white;border-radius:5px;padding:8px 12px;margin-right:15px}.testex-header #middle_banner{display:none;flex:0 0 100%;order:4;padding-top:12px}.testex-header #middle_banner.is-open{display:block}.testex-header #middle_banner>.row:first-child{display:none}.testex-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.testex-nav .col-auto{width:auto;max-width:none}.testex-header #user_splash{flex:0 0 100%;max-width:none;text-align:left;font-size:12px}.testex-header #user_splash>.row{display:inline-flex;vertical-align:middle}.testex-header #user_splash a{min-height:36px}.testex-menu-card{flex-basis:240px}}
@media(max-width:575.98px){body>.container-fluid,body>.container,body>#wrapper{padding:18px 14px}body>#wrapper{padding-left:40px}.testex-header>.container-fluid{padding:10px 14px}.testex-menu>.row{gap:12px;margin:16px 0}.testex-menu-card{flex-basis:100%;padding:16px}.testex-login{padding:16px}.testex-login-card{padding:26px 22px}.form-control,.custom-select,input[type=text],input[type=password],input[type=number],input[type=date],input[type=email],textarea,select{font-size:16px;max-width:100%}.btn{min-height:44px;white-space:normal}.modal-dialog{margin:10px}.modal-content{max-width:100%}.modal-body{overflow-x:auto}.modal-footer{gap:6px}.modal-footer .btn{flex:1}.ClickScreen>.row>[class^=col-],.ClickScreen>form>.row>[class^=col-]{flex:0 0 100%;max-width:100%;min-width:0;padding-right:15px!important}.ClickScreen .col-auto{max-width:100%;min-width:0}.ClickScreen .row{row-gap:8px}.testex-table-scroll{width:100%}.testex-table-scroll table{font-size:14px}.testex-table-scroll td,.testex-table-scroll th{padding:9px;white-space:normal}.testex-table-scroll .btn{white-space:nowrap}.SEARCH_SIDEBAR{position:fixed!important;top:10px!important;left:0;max-height:calc(100dvh - 20px);max-width:100vw}#sidebar-panel{max-height:calc(100dvh - 20px);padding:14px;width:min(340px,calc(100vw - 48px))}#sidebar-toggle>button{height:52px}.SEARCH_SIDEBAR.closed{transform:translateX(calc(-100% + 40px));animation:none}.SEARCH_SIDEBAR.open{transform:translateX(0);animation:none}.user-heading{position:static}}
@media(prefers-reduced-motion:reduce){.SEARCH_SIDEBAR{animation:none!important}*{scroll-behavior:auto!important}}
@media print{body{background:white!important;color:black}.testex-header,.testex-nav-toggle{display:none!important}.testex-table-scroll{overflow:visible;border:0;max-height:none}body>.container-fluid,body>.container,body>#wrapper{padding:0}.testex-menu-card{box-shadow:none}.testex-table-scroll table{font-size:inherit}}

/* Legacy fixed Bootstrap columns become full-width fields on phones. */
@media screen and (max-width:575.98px){
 body.testex-app>.container-fluid .row>:is(.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11){flex:0 0 100%;max-width:100%;min-width:0;margin-left:0!important;margin-right:0!important}
 body.testex-app>.container-fluid .row{row-gap:10px}
 body.testex-app>.container-fluid .row>.col-auto{max-width:100%;min-width:0}
 body.testex-app>.container-fluid .form-inline{gap:8px}
}
.ClickScreen .col-auto,#wrapper .col-auto{max-width:100%;min-width:0}

/* Legacy document and messaging tables also need to fit within the viewport. */
.testex-table-scroll>table{max-width:none}
.testex-table-scroll td{overflow-wrap:break-word}
.testex-table-scroll img{max-width:100%;height:auto}
