/* Assured Inventory company identity, matching Lottery Ledger's branding.css.
   The original logo artwork is reused unmodified and never stretched. */
:root{
  font-family:Inter,"Segoe UI",Arial,sans-serif;
  --brand:#1b247b;--brand-hover:#111957;--brand-soft:#eef1ff;
  --navy:#10142e;--green:var(--brand);--muted:#65728a;--line:#dce2ee;
  --location-highlight:#edf1ff;--amber:#86510e;
  color:#1b243b;background:#f4f6fb;
}
body{background:#f4f6fb}
h1,h2,h3{color:#17213b}
a{color:var(--brand)}
button{color:#303e5b;border-color:#d9e0ef}
button:hover{background:#f0f3fc;border-color:#b8c4e6}
button.primary{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 2px 4px #121b6415}
button.primary:hover{background:var(--brand-hover);border-color:var(--brand-hover)}
button.danger{color:#a12b3c}
button.danger:hover{background:#fff1f3;border-color:#e8b7c0}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #4259be;outline-offset:3px}
input,select,textarea{border-color:#cfd8ea;color:#253655;accent-color:var(--brand)}
input:focus,textarea:focus,select:focus{outline:3px solid #dce3fb;border-color:#7386d3}
label{color:#52617b}
.sidebar{padding:0;background:linear-gradient(165deg,#171d52 0%,#10142e 52%,#0c1026 100%);color:#bdc7e1}
.sidebar>.brand{padding:25px 24px 22px;flex-direction:column;align-items:flex-start;gap:16px;letter-spacing:0;flex-shrink:0}
.brand-logo{display:block;width:190px;aspect-ratio:1.98;background:#fff;border-radius:7px;overflow:hidden;flex-shrink:0;box-shadow:0 4px 16px #03051c20}
.brand-logo img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.brand-caption{line-height:1.4;min-width:0}
.brand-caption>strong{display:block;font-size:17px;font-weight:650;letter-spacing:-.2px;color:white}
.brand .brand-caption>.brand-sub{display:block;font-size:9px;letter-spacing:1.8px;margin-top:6px;color:#a9b5d6}
.sidebar>nav{margin:15px 12px 12px;gap:6px;flex:1;min-height:0;overflow-y:auto;align-content:start;scrollbar-width:thin;scrollbar-color:#46558a transparent}
.sidebar nav button{color:#c4cde3;border:1px solid transparent;border-radius:7px;font-weight:500}
.sidebar nav button:hover{background:#ffffff0c}
.sidebar nav button.selected{background:#293574;color:#fff;box-shadow:inset 3px 0 #a5b5ff}
.sidebar-bottom{padding:19px 23px;border-top:1px solid #30395b;color:#a7b5d4;font-size:12px;line-height:1.8;flex-shrink:0}
.sidebar-bottom small{color:#a7b5d4}
.sidebar-bottom a{color:#dce4ff;text-decoration:underline;text-underline-offset:3px}
.sidebar-bottom .dot{background:#9db0ff}
.workspace{min-width:0}
header{border-bottom-color:#dfe4ef}
.eyebrow{color:var(--brand)}
.card,.stat{border-color:#dfe5ef;box-shadow:0 2px 7px #111c4404}
.stat span,.item-row small,.breadcrumbs,.source-note{color:#65738b}
.tag{background:#edf1ff;color:#34488e}
.tag.amber{background:#fff3e3;color:#85500e}
.tag.gray{background:#edf1fa;color:#526582}
.progress{background:#e6eaf5}
.progress div{background:#354b9e}
.item-row{border-color:#dfe5ef}
.item-row:hover{background:#f9faff}
.item-row .quantity{color:var(--brand)}
.total,.recorded-total{background:#edf1ff}
.entry-preview{background:#f2f5fb;color:#334767}
.entry-preview strong{color:var(--brand)}
.entry-guidance,.recorded-units,.notes-panel,.history summary{color:#526582}
.history summary{min-height:32px}
.statusline{color:#34488e}
th{color:#53617c;background:#f5f7fc}
td,th{border-bottom-color:#e4e9f2}
fieldset{border:1px solid #d7dfef;border-radius:9px;padding:15px}
legend{color:#405478;font-weight:600;padding:0 7px}
dialog{color:#233451;box-shadow:0 20px 100px #0a10383b;border:1px solid #d8dfed}
dialog::backdrop{background:#0c123c80}
#toast{background:#222e75}
.toast-error{background:#9c3042!important}
/* Review red/yellow and warning states retain their audit meaning. */
.review-red{background:#fff0ed!important;color:#942f25!important;border-color:#e7b6ae!important}
.review-yellow{background:#fff6d7!important;color:#785511!important;border-color:#e8d083!important}
.login-page{display:block}
.brand-login{display:grid;grid-template-columns:minmax(310px,42%) minmax(0,58%);min-height:100vh}
.login-art{background:linear-gradient(150deg,#202775,#10142e 75%);color:#fff;padding:48px clamp(30px,5vw,76px);display:flex;flex-direction:column;align-items:flex-start}
.login-art .brand-logo{width:min(250px,100%);aspect-ratio:1.98;box-shadow:none}
.login-art .brand-caption{margin-top:20px}
.login-art .brand-caption>strong{font-size:21px}
.login-art .brand-sub{display:block;font-size:10px;letter-spacing:2px;color:#a9b5d6;margin-top:7px}
.login-intro{margin:auto 0;padding:60px 0;max-width:360px}
.login-intro .eyebrow{color:#b6c4ff}
.login-intro h2{font-size:clamp(30px,3.2vw,43px);font-weight:600;color:#fff;line-height:1.2;letter-spacing:-1.2px;margin:15px 0 20px}
.login-intro p{color:#c0c9e4;font-size:16px;line-height:1.8}
.login-art-footer{font-size:11px;line-height:1.7;color:#a9b5d6}
.login-main{display:flex;align-items:center;justify-content:center;padding:48px clamp(24px,5vw,72px);min-width:0}
.login-box{width:100%;max-width:440px}
.login-box h1{font-size:31px;letter-spacing:-.8px;margin:9px 0 12px}
.login-box>p{color:var(--muted);font-size:15px;line-height:1.7}
.login-box .card{margin:24px 0;padding:24px 28px}
.login-box form label:first-child{margin-top:0}
.login-box input{min-height:50px}
.login-box button.primary{width:100%;min-height:50px;margin-top:5px}
.login-box #owner-signin{font-size:13px}
.login-box #owner-signin a{text-underline-offset:3px}
.login-error{color:#a52820;min-height:20px}
.login-help{font-size:12px!important;margin-top:20px}
.customer-directory-card{grid-column:1/-1;min-width:0}
.directory-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}
.directory-heading h2{margin:0 0 7px;overflow-wrap:anywhere}
.directory-heading p{margin:0;font-size:14px}
.directory-actions{margin:0;flex-shrink:0;gap:8px}
.directory-actions button{font-size:14px;white-space:nowrap}
.directory-breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:0 0 20px;font-size:13px;color:var(--muted)}
.directory-breadcrumbs button{background:none;border:0;padding:3px 0;min-height:30px;color:var(--brand);font-size:13px;font-weight:500;box-shadow:none;text-align:left}
.directory-breadcrumbs button:hover{text-decoration:underline}
.directory-customer-grid,.directory-store-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}
.directory-store-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
.directory-item{display:flex;align-items:center;gap:13px;padding:17px 18px;min-height:78px;text-align:left;min-width:0;background:#fff;border:1px solid #dfe5ef;border-radius:9px}
.directory-item:hover{background:#f5f7ff;border-color:#b4c1e8}
.directory-item-copy{display:block;min-width:0;flex:1}
.directory-item strong{display:block;color:#243552;font-size:15px;line-height:1.4;font-weight:600;overflow-wrap:anywhere}
.directory-item small{display:block;color:var(--muted);font-weight:400;font-size:12px;line-height:1.4;margin-top:4px}
.directory-arrow{color:#7485b9;font-size:27px;font-weight:400;line-height:1}
.directory-store-number{display:grid;place-items:center;min-width:45px;min-height:40px;padding:8px;border-radius:7px;background:#edf1ff;color:var(--brand);font-size:15px;font-weight:700;font-variant-numeric:tabular-nums}
.directory-list-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.directory-back{min-height:36px;padding:5px 9px;font-size:13px}
.directory-profile-toolbar{display:flex;gap:10px;justify-content:space-between;flex-wrap:wrap;margin:0 0 20px}
.directory-profile-toolbar button{font-size:14px}
.store-contact-grid{display:grid;grid-template-columns:1fr 2fr 1fr;gap:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin-bottom:24px}
.store-contact-grid span{display:block;font-size:12px;color:var(--muted);margin-bottom:7px}
.store-contact-grid strong{font-size:15px;font-weight:500;line-height:1.6;display:block;overflow-wrap:anywhere}
.directory-profile .table-wrap{max-width:650px}
.directory-profile p{overflow-wrap:anywhere}
@media(max-width:780px){.directory-heading{flex-direction:column;gap:16px}.directory-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.directory-actions button{padding:10px 12px;min-width:0}.store-contact-grid{grid-template-columns:1fr;gap:18px}.directory-item{padding:15px}}
@media(max-width:1000px) and (min-width:651px){
  .sidebar>.brand{padding:24px 20px 19px}.sidebar .brand-logo{width:165px}
  .sidebar .brand-caption>strong{font-size:16px}.sidebar-bottom{padding:17px 20px}
  .brand-login{grid-template-columns:40% 60%}.login-art{padding:38px 24px}.login-main{padding:35px 30px}
}
@media(max-width:650px){
  .sidebar{position:static;width:100%;padding:14px 18px;display:block}
  .sidebar>.brand{padding:0;flex-direction:row;align-items:center;gap:15px}
  .sidebar .brand-logo{width:125px}.sidebar .brand-caption>strong{font-size:16px}
  .brand .brand-caption>.brand-sub{font-size:8px;letter-spacing:1.4px}
  .sidebar>nav{display:flex;overflow-x:auto;margin:14px -4px 0;padding-bottom:2px;gap:3px}
  .sidebar nav button{flex:0 0 auto;white-space:nowrap;padding:9px 10px;min-height:44px;font-size:12px}
  .sidebar-bottom{display:none}
  body.counting .sidebar{padding:10px 17px}body.counting .sidebar .brand-logo{width:105px}
  .brand-login{display:block}.login-art{padding:26px 24px 23px;display:flex;flex-direction:row;gap:18px;align-items:center}
  .login-art .brand-logo{width:140px}.login-art .brand-caption{margin:0}.login-art .brand-caption>strong{font-size:17px}
  .login-art .brand-sub{font-size:8px;letter-spacing:1.4px}.login-intro,.login-art-footer{display:none}
  .login-main{padding:30px 22px 40px}.login-box h1{font-size:28px}.login-box .card{padding:22px}
}
@media(max-width:370px){.sidebar .brand-logo{width:105px}.sidebar .brand-caption>strong{font-size:14px}.login-art{gap:12px;padding:22px 18px}.login-art .brand-logo{width:120px}.login-art .brand-caption>strong{font-size:15px}}
