/* Sentante Brand Guide 2025 — UI only. Binary font and SVG assets supplied in companion deployment ZIP. */
@font-face{font-family:'PP Neue Montreal';src:url('/static/sentante/fonts/PPNeueMontreal-Book.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'PP Neue Montreal';src:url('/static/sentante/fonts/PPNeueMontreal-Regular.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:'PP Neue Montreal';src:url('/static/sentante/fonts/PPNeueMontreal-Bold.ttf') format('truetype');font-style:normal;font-weight:700 900;font-display:swap}
@font-face{font-family:'PP Neue Montreal';src:url('/static/sentante/fonts/PPNeueMontreal-Light.ttf') format('truetype');font-style:normal;font-weight:300;font-display:swap}
:root{--bg:#f5f5f5;--surface:#fff;--surface-soft:#f7f7f7;--surface-soft-2:#eef3ff;--text:#111;--muted:#696969;--line:#e2e2e2;--line-strong:#c9c9c9;--primary:#3e7eee;--primary-dark:#2564cf;--primary-soft:#edf3ff;--dark:#101010;--danger:#b52228;--ok:#16784b;--shadow:0 12px 34px rgba(0,0,0,.05);--shadow-soft:0 3px 14px rgba(0,0,0,.035);--radius:12px}
html,body{font-family:'PP Neue Montreal',Arial,sans-serif}
body{background:#f6f6f6;color:var(--text);line-height:1.48}
h1,h2,h3,h4,p,button,input,select,textarea,table{font-family:'PP Neue Montreal',Arial,sans-serif}
h1,h2,h3{color:#101010;letter-spacing:-.025em;font-weight:400}
h1{font-size:clamp(27px,2.6vw,36px)}h2{font-size:21px}
.topbar{background:#111!important;border-bottom:1px solid #252525!important;box-shadow:none!important;min-height:72px}
.topbar a,.topbar .dropbtn{font-weight:400!important;color:#e9e9e9!important}
.topbar a:hover,.topbar .dropbtn:hover,.topbar .active-nav{color:#fff!important}
.topbar .nav-user,.topbar span{color:#c2c2c2}
.topbar .nav-logo{height:38px;max-width:210px;object-fit:contain;border-radius:3px;box-shadow:none}
.topbar .dropdown-content{background:#fff;border-color:#dfdfdf;border-radius:10px;box-shadow:0 14px 36px rgba(0,0,0,.13)}
.topbar .dropdown-content a{color:#111!important}.topbar .dropdown-content a:hover{color:#111!important;background:#f1f4fa!important}
.topbar .nav-count{border-color:#111!important}
.container{max-width:1440px;padding-inline:clamp(16px,3vw,44px);margin-block:30px}
.card{background:#fff;border:1px solid #e5e5e5;border-radius:12px;box-shadow:var(--shadow-soft)}
.card.brand-card::before{height:2px;background:var(--primary)}
.data-table th,th{background:#f5f5f5;color:#3f3f3f;letter-spacing:0;font-weight:500}
td,.data-table td{border-bottom-color:#eaeaea}
.data-table tbody tr:hover td,table tbody tr:hover td{background:#f8faff}
.btn,button{font-weight:500;border-radius:8px;box-shadow:none;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease}
.btn:hover,button:hover{transform:none;box-shadow:none}
.btn.secondary,button.secondary{border-color:#d5d5d5;color:#191919}
input,select,textarea{border-radius:8px;border-color:#cfcfcf}
input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(62,126,238,.12)}
label{font-weight:500;color:#333}
.badge{font-weight:500;border-radius:7px}
.section-title{align-items:center}
.login::before{content:"";display:block;height:110px;border-radius:12px 12px 0 0;background:#111 url('/static/sentante/graphics/white-1.svg') center/cover no-repeat;margin-bottom:20px}
.btn.danger,button.danger,a.btn.danger{background:#b52228!important;border-color:#b52228!important}
:focus-visible{outline:2px solid #3e7eee;outline-offset:2px}
@media(max-width:800px){.container{margin:18px auto}.topbar{padding-inline:14px}.card{padding:16px}.section-title{align-items:flex-start}}

/* Keep the TSS build/version indicator at its original bottom-right viewport position. */
html body .tss-version-corner{position:fixed!important;left:auto!important;top:auto!important;right:10px!important;bottom:7px!important;width:auto!important;max-width:max-content!important;z-index:90!important;margin:0!important;transform:none!important;display:block!important;background:rgba(255,255,255,.9);border:1px solid #d9dce2;border-radius:7px;padding:3px 7px;font-size:11px;line-height:1.2;color:#69717e;pointer-events:none}
@media(max-width:700px){html body .tss-version-corner{right:6px!important;bottom:5px!important}}


/* Sentante visual motif — shared TSS design, trialled first in Demo.
   Shift right from the previous local -60px: align graphic at +100px. */
body{position:relative;background:#f7f7f7}
body::before{content:"";position:fixed;inset:72px 0 0;pointer-events:none;z-index:0;opacity:.16;background-image:url('/static/sentante/graphics/black-1.svg');background-position:left 350px top 80px;background-repeat:no-repeat;background-size:min(1150px,90vw) auto}
body>.container{position:relative;z-index:1}
.topbar{z-index:30}
.topbar .tss-parts-menu .dropdown-content{min-width:205px}
.topbar .tss-parts-menu .dropbtn{white-space:nowrap}
@media(max-width:700px){body::before{background-size:900px auto;opacity:.09;background-position:left 90px top 70px}}

/* Sentante neutral-action scheme: contemporary grey buttons, clear hierarchy.
   Keep destructive actions red and semantic status indicators unchanged. */
:root{--primary:#666b73;--primary-dark:#454a52;--primary-soft:#f0f1f2}
.btn:not(.secondary):not(.danger):not(.light),button:not(.secondary):not(.danger):not(.dropbtn):not(.light),input[type="submit"],input[type="button"]{
  background:#666b73;color:#fff;border:1px solid #666b73;box-shadow:none;border-radius:9px;
}
.btn:not(.secondary):not(.danger):not(.light):hover,button:not(.secondary):not(.danger):not(.dropbtn):not(.light):hover,input[type="submit"]:hover,input[type="button"]:hover{
  background:#454a52;border-color:#454a52;box-shadow:none;
}
.btn:not(.secondary):not(.danger):not(.light):active,button:not(.secondary):not(.danger):not(.dropbtn):not(.light):active{
  background:#30343a;border-color:#30343a;
}
.btn.secondary,button.secondary{background:#f3f4f5;color:#33383e;border:1px solid #d6d9dd;box-shadow:none;border-radius:9px}
.btn.secondary:hover,button.secondary:hover{background:#e6e8ea;color:#24282e}
input:focus,select:focus,textarea:focus{border-color:#737981;box-shadow:0 0 0 3px rgba(102,107,115,.15)}
:focus-visible{outline-color:#666b73}

/* Sentante grey controls: restrained depth and consistent keyboard/disabled states. */
.btn:not(.secondary):not(.danger):not(.light),a.btn:not(.secondary):not(.danger):not(.light),button:not(.secondary):not(.danger):not(.dropbtn):not(.light),input[type=submit],input[type=button]{
  font-weight:500;letter-spacing:0;border-radius:9px;
  transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.btn:not(.secondary):not(.danger):not(.light):focus-visible,button:not(.secondary):not(.danger):not(.dropbtn):not(.light):focus-visible{
  outline:2px solid #25282d;outline-offset:2px;
}
button:disabled,.btn[aria-disabled=true],input[type=submit]:disabled{
  opacity:.5;cursor:not-allowed;transform:none;box-shadow:none;
}
