/* Terminal 11 Basic Style Guide V1, supplied by Terminal 11 Marketing.
   T11-only font assets from terminal11.om, see fonts/terminal11/SOURCE.md. */
@font-face{font-family:'T11 Avenir';src:url('fonts/terminal11/Avenir-Light.ttf') format('truetype');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:'T11 Avenir';src:url('fonts/terminal11/Avenir-Book.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'T11 Avenir';src:url('fonts/terminal11/Avenir-Regular.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'T11 Avenir';src:url('fonts/terminal11/Avenir-Medium.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'T11 Avenir';src:url('fonts/terminal11/Avenir-Heavy.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'T11 Avenir';src:url('fonts/terminal11/Avenir-Black.ttf') format('truetype');font-weight:900;font-style:normal;font-display:swap}
html[data-brand="terminal11"]{
  /* shadcn/ui language (ui.shadcn.com) in Terminal 11 colours: neutral zinc
     surfaces, hairline borders, small radius, and ONE primary, the guide's blue.
     The old names are kept so every page restyles from here: 900 page,
     800 card, 700 secondary, 600 pressed. The guide's yellow is an accent line
     only, because yellow text cannot be read on white. */
  --t11-blue:#00269C;
  --t11-indigo:#231F78;
  --t11-yellow:#FFD600;
  --navy-900:#FAFAFA;
  --navy-800:#FFFFFF;
  --navy-700:#F4F4F5;
  --navy-600:#E4E4E7;
  --yellow:var(--t11-blue);
  --sky:var(--t11-blue);
  --paper:#09090B;
  --ink:#09090B;
  --muted:#71717A;
  --rule:#E4E4E7;
  --good:#15803D;
  --bad:#DC2626;
  --ring:rgba(0,38,156,.22);
  --radius:10px;
  --shadow-sm:0 1px 2px rgba(9,9,11,.05);
  --shadow:0 1px 3px rgba(9,9,11,.08),0 1px 2px -1px rgba(9,9,11,.08);
  color-scheme:light;
  --font-ui:'T11 Avenir','Avenir Arabic','Avenir','Avenir Next','Plex',system-ui,sans-serif;
  --font-display:var(--font-ui);
}
html[data-brand="terminal11"] body:not(.ui)>header{
  padding:0 clamp(4px,2vw,16px);
  gap:0;
}
/* Guide page 3: X is the height of the upper logo row, about .30 of its width. */
html[data-brand="terminal11"] body:not(.ui) .t11-logo{
  padding:24px;
  max-width:none;
}
html[data-brand="terminal11"] body:not(.ui) .t11-logo img{
  width:80px;
  height:auto;
  display:block;
}
html[data-brand="terminal11"] body:not(.ui)>header .strap,
html[data-brand="terminal11"] body:not(.ui)>header.account-header>span{
  letter-spacing:.06em;
  font-size:12px;
}
html[data-brand="terminal11"] body:not(.ui)>header .clock{margin-right:24px}
html[data-brand="terminal11"] body:not(.ui) :is(h1,h2,h3){font-weight:800}
html[data-brand="terminal11"] body:not(.ui) :is(input,select,textarea){border-color:var(--rule)}
html[data-brand="terminal11"] body:not(.ui) :is(input,textarea)::placeholder{color:var(--muted);opacity:1}
html[data-brand="terminal11"] body:not(.ui) .reader svg{fill:currentColor;stroke:none}
html[data-brand="terminal11"] body:not(.ui) .devices-page>main{max-width:1100px;margin:0 auto}
html[data-brand="terminal11"] body:not(.ui) .devices-page #out{white-space:nowrap;flex-shrink:0}
html[data-brand="terminal11"] body:not(.ui) .receipt-page .doc{--muted:#5A656F;--good:#137A45;--bad:#B3261E}
@media(max-width:640px){
  html[data-brand="terminal11"] body:not(.ui) .t11-logo{padding:20px}
  html[data-brand="terminal11"] body:not(.ui) .t11-logo img{width:64px}
  html[data-brand="terminal11"] body:not(.ui)>header .strap,
  html[data-brand="terminal11"] body:not(.ui)>header.account-header>span{font-size:11px}
}
@media print{
  html[data-brand="terminal11"] body:not(.ui).receipt-page{background:white}
}

/* Screen only: the receipt keeps its own paper rules for print. */
@media screen{
html[data-brand="terminal11"] body:not(.ui){background:var(--navy-900);color:var(--paper)}
html[data-brand="terminal11"] body:not(.ui)>header{background:#fff;color:var(--paper);border-bottom:1px solid var(--rule);box-shadow:inset 0 -3px 0 -1px var(--t11-yellow)}
html[data-brand="terminal11"] body:not(.ui)>header .strap,
html[data-brand="terminal11"] body:not(.ui)>header.account-header>span{color:var(--muted)}
html[data-brand="terminal11"] body:not(.ui)>header .clock{color:var(--muted)}
html[data-brand="terminal11"] body:not(.ui) .t11-logo img{content:url('t11-logo-on-light.svg')}
html[data-brand="terminal11"] body:not(.ui) .bhd-signature img,
html[data-brand="terminal11"] body:not(.ui) .bhd-footer img.bhd-screen-logo{content:url('bhd-logo.svg')}
html[data-brand="terminal11"] body:not(.ui) .site-nav{background:#fff;border-bottom:1px solid var(--rule)}
html[data-brand="terminal11"] body:not(.ui) .site-nav a{color:var(--muted);border-radius:8px;font-weight:600;transition:background .15s,color .15s}
html[data-brand="terminal11"] body:not(.ui) .site-nav a:hover{background:var(--navy-700);color:var(--paper)}
html[data-brand="terminal11"] body:not(.ui) .site-nav a[aria-current="page"]{background:var(--navy-700);color:var(--paper)}
html[data-brand="terminal11"] body:not(.ui) .site-nav a[href="/pay"]{color:var(--t11-blue)}
html[data-brand="terminal11"] body:not(.ui)>footer,
html[data-brand="terminal11"] body:not(.ui) .receipt-page .bhd-footer{background:#fff;border-top:1px solid var(--rule);color:var(--muted)}
html[data-brand="terminal11"] body:not(.ui)>footer .bhd-signature{color:var(--muted)}
html[data-brand="terminal11"] body:not(.ui) :is(.card,.board,.ticket,.login,.dashboard-kpis article,.who,.past){border-color:var(--rule);border-radius:calc(var(--radius) + 2px);box-shadow:var(--shadow-sm)}
html[data-brand="terminal11"] body:not(.ui) :is(input,select,textarea){background-color:#fff;color:var(--paper);border:1px solid var(--rule);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:border-color .15s,box-shadow .15s}
html[data-brand="terminal11"] body:not(.ui) :is(input,select,textarea):focus-visible{outline:0;border-color:var(--t11-blue);box-shadow:0 0 0 3px var(--ring)}
html[data-brand="terminal11"] body:not(.ui) :is(a,button):focus-visible{outline:0;box-shadow:0 0 0 3px var(--ring)}
html[data-brand="terminal11"] body:not(.ui) :is(input,textarea)::placeholder{color:#A1A1AA}
html[data-brand="terminal11"] body:not(.ui) button,html[data-brand="terminal11"] body:not(.ui) .action{border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:background .15s,border-color .15s,color .15s,opacity .15s}
html[data-brand="terminal11"] body:not(.ui) :is(button,.action){color:var(--paper)}
/* Primary: one colour, white text. */
html[data-brand="terminal11"] body:not(.ui) :is(button.go,button.print,button.send,#bycard,#go,#take,#add,#unlock,.action.primary,button.primary,.primary,.amounts button.on,.dashboard-tabs button[aria-selected="true"]),
html[data-brand="terminal11"] body:not(.ui) .skip-link{background:var(--t11-blue);border-color:var(--t11-blue);color:#fff}
html[data-brand="terminal11"] body:not(.ui) :is(button.go,button.print,button.send,#bycard,#go,#take,#add,#unlock,.action.primary,.primary):not(:disabled):hover{background:#001E7D}
html[data-brand="terminal11"] body:not(.ui) :is(button,.action):disabled{background:var(--navy-700);color:#A1A1AA;border-color:var(--rule);box-shadow:none}
html[data-brand="terminal11"] body:not(.ui) :is(.pad button,.dashboard-tabs button,.dashboard-actions button,button.ghost,button.change-code,.amounts button):not(.go):not(.on):not([aria-selected="true"]):hover{background:var(--navy-700)}
html[data-brand="terminal11"] body:not(.ui) :is(.why,.mailnote,.pasthead span){color:var(--muted)}
html[data-brand="terminal11"] body:not(.ui) .code:empty::after{color:#D4D4D8}
html[data-brand="terminal11"] body:not(.ui) :is(.error,.err,.msg.bad,.bad){color:var(--bad)}
html[data-brand="terminal11"] body:not(.ui) .document-status{border-radius:999px;padding:2px 10px;background:var(--navy-700);color:var(--paper);border-color:transparent;font-weight:600}
html[data-brand="terminal11"] body:not(.ui) table th{color:var(--muted);font-weight:600}
html[data-brand="terminal11"] body:not(.ui) .bhd-signature strong{color:var(--paper)}
html[data-brand="terminal11"] body:not(.ui) :is(.note.good,.verdict.ok,.msg.ok){background:#F0FDF4;border-color:#BBF7D0;color:#166534}
html[data-brand="terminal11"] body:not(.ui) :is(.note.bad,.verdict.short,.msg.bad){background:#FEF2F2;border-color:#FECACA;color:#991B1B}
html[data-brand="terminal11"] body:not(.ui) .note.wait{background:#FEFCE8;border-color:#FDE68A;color:#854D0E}
html[data-brand="terminal11"] body:not(.ui) .msg:not(.ok):not(.bad){background:#EFF4FF;border-color:#C7D6FF;color:var(--t11-blue)}
html[data-brand="terminal11"] body:not(.ui) button.warn{border-color:#FECACA;color:#B91C1C;background:#fff}
html[data-brand="terminal11"] body:not(.ui) button.warn:hover{background:#FEF2F2}
html[data-brand="terminal11"] body:not(.ui) .drop{background:#fff;border:1.5px dashed #D4D4D8;color:var(--muted);border-radius:calc(var(--radius) + 2px);transition:border-color .15s,background .15s}
html[data-brand="terminal11"] body:not(.ui) .drop:hover{border-color:var(--t11-blue);background:#F8FAFF}
html[data-brand="terminal11"] body:not(.ui) .drop.has{border-style:solid;border-color:var(--t11-blue);color:var(--paper);background:#F8FAFF}
html[data-brand="terminal11"] body:not(.ui) .receipt-page .doc{--paper:#FFFFFF;--ink:#09090B;--line:#E4E4E7;--navy-800:var(--t11-blue);--yellow:var(--t11-blue);border-radius:calc(var(--radius) + 2px);box-shadow:var(--shadow)}
html[data-brand="terminal11"] body:not(.ui) .receipt-page .doc button{background:var(--t11-blue);color:#fff}
html[data-brand="terminal11"] body:not(.ui) .devices-page button{border-color:var(--rule);background:#fff;color:var(--paper)}
html[data-brand="terminal11"] body:not(.ui) .devices-page :is(button.primary,form button:not(#out)){background:var(--t11-blue);border-color:var(--t11-blue);color:#fff}
html[data-brand="terminal11"] body:not(.ui) .devices-page .card{background:#fff}
html[data-brand="terminal11"] body:not(.ui) button.linky{box-shadow:none;color:var(--t11-blue);background:transparent}
html[data-brand="terminal11"] body:not(.ui) td{border-bottom-color:var(--rule)}
html[data-brand="terminal11"] body:not(.ui) :is(tr:hover td,.row:hover){background:var(--navy-900)}
html[data-brand="terminal11"] body:not(.ui) :is(.notice,.note):not(.good):not(.bad):not(.wait){border-radius:var(--radius)}
}


/* The design system (ui.css) takes only tokens and the logo from the brand. */
html[data-brand="terminal11"] body.ui{
  --brand:#00269C; --brand-hover:#001C78; --brand-soft:#E8EDFB;
  --accent:#FFD600; --accent-ink:#0D1330;
  --font:'T11 Avenir','Avenir Next','Avenir','Segoe UI Variable','Segoe UI',system-ui,-apple-system,sans-serif;
}
html[data-brand="terminal11"] body.ui :is(.k-bar .logo img,.bar .brand img){content:url('t11-logo-on-light.svg')}
