/* Farmacia Pacheco identity. See brand/SOURCES.txt for verified public assets.
   The white, #444, #19499f, #67bc4a and #2793ce tokens come from the official
   store. Pale surfaces and darker hover states are interface adaptations. */
@font-face {
  font-family: "Raleway";
  src: url("brand/raleway-regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Raleway";
  src: url("brand/raleway-medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Raleway";
  src: url("brand/raleway-bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
body {font-family:"Raleway","Segoe UI",Arial,sans-serif;font-variant-numeric:lining-nums;}
.number,.stat-value,.detail-hero strong,.amount-input {font-variant-numeric:lining-nums tabular-nums;}
.sidebar {background:#fff;color:#444;border-right:1px solid #e6e7e8;padding-top:26px;}
.brand {display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding:0 13px 23px;}
.brand-logo {display:block;width:170px;height:52px;max-width:100%;object-fit:contain;}
.brand-product {display:block;color:#19499f;border-left:3px solid #67bc4a;padding-left:9px;margin-left:1px;font-size:10px;line-height:1.2;font-weight:700;letter-spacing:1.5px;}
.nav-label {color:#737d88;font-size:9px;}
.sidebar nav a {color:#49535f;font-weight:500;padding-top:9px;padding-bottom:9px;}
.sidebar nav a.active {color:#19499f;background:#edf2fb;box-shadow:inset 3px 0 0 #67bc4a;font-weight:700;}
.sidebar nav a:hover {color:#19499f;background:#f1f5fc;}
.nav-icon {color:#758499;}
.sidebar nav a.active .nav-icon {color:#19499f;}
.sidebar-bottom {color:#5e6c7c;padding-top:23px;}
.sidebar-bottom small {color:#737d88;}
.status-dot {background:#67bc4a;}
.topbar {border-top:4px solid #19499f;}
.topbar::before {content:"";position:absolute;left:240px;top:0;width:76px;height:4px;background:#67bc4a;}
.avatar {background:#edf2fb;color:#19499f;}
.page-heading h1,.panel-header h2,.panel-body h2,.login-form h2 {color:#19499f;}
.button {background:#19499f;border-color:#19499f;}
.button:hover {background:#143b80;border-color:#143b80;}
.button.secondary {color:#19499f;border-color:#d5deec;}
.button.secondary:hover {background:#edf2fb;border-color:#b9cae6;color:#19499f;}
.button.danger {background:var(--red);border-color:var(--red);color:#fff;}
.button.danger:hover {background:#a90303;border-color:#a90303;}
.kicker {color:#19499f;}
.empty-state .empty-icon {color:#19499f;background:#edf2fb;}
.step-number {color:#19499f;background:#edf2fb;}
.detail-hero {background:#f1f5fc;}
.development-note {background:#eff5fc;border-color:#dce6f3;color:#526c8a;}
.development-note strong {color:#19499f;}
.development-note a {color:#19499f;}
.tabs a.selected {color:#19499f;border-bottom-color:#67bc4a;}
.login-page {grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:#f6f7f9;}
.login-intro {position:relative;background:#fff;border-top:7px solid #67bc4a;padding:54px 10%;color:#444;}
.login-intro .brand {padding:0;gap:16px;}
.login-intro .brand-logo {width:255px;height:78px;}
.login-intro .brand-product {font-size:11px;letter-spacing:2px;}
.login-intro h1 {font-size:43px;line-height:1.2;font-weight:700;letter-spacing:-1.6px;color:#19499f;max-width:460px;margin:22px 0;}
.login-intro p {color:#66717e;max-width:420px;font-size:15px;}
.login-intro small {color:#66717e;font-size:11px;}
.login-intro .kicker {color:#19499f;}
.brand-rule {display:block;width:64px;height:5px;border-radius:3px;background:#67bc4a;margin:0 0 22px;}
.login-form {margin:0;min-height:100vh;padding:40px;}
.login-form-inner {max-width:400px;padding:34px 32px 27px;background:#fff;border:1px solid #e6e7e8;border-radius:14px;box-shadow:0 8px 34px #19499f06;}
.login-form h2 {font-size:25px;font-weight:700;letter-spacing:-.8px;}
.login-form .button {padding:13px 17px;}
.login-form .field input:focus,.access-card .field input:focus {border-color:#2793ce;outline:2px solid #2793ce25;}
.first-access {margin:21px 0 0!important;text-align:center;font-size:12px!important;}
.login-note {border-top:1px solid #edf0f4;padding-top:20px;line-height:1.7;font-size:11px!important;}
.access-page {border-top:6px solid #67bc4a;background:#f6f7f9;min-height:100vh;}
.access-shell {max-width:600px;min-height:0;padding:0;margin:5vh auto 7vh;}
.access-brand {align-items:center;padding:0 20px 24px;gap:12px;}
.access-brand .brand-logo {width:220px;height:auto;}
.access-card {background:#fff;border:1px solid #e6e7e8;border-radius:14px;padding:35px 40px;box-shadow:0 8px 34px #19499f06;}
.access-card h1 {font-size:27px;line-height:1.25;letter-spacing:-.8px;color:#19499f;margin:8px 0 14px;}
.access-card>p {font-size:13px;color:#66717e;margin:0 0 25px;}
.access-card .field {margin:20px 0;}
.access-card .field ul {padding-left:18px;color:#66717e;}
.access-card .button {margin-top:9px;}
.access-card .helptext {display:block;font-size:11px;line-height:1.65;margin-top:7px;color:#66717e;}
.access-note {font-size:11px;line-height:1.7;color:#66717e;margin:20px 25px;text-align:center;}
@media(max-width:1200px){
  .topbar::before{left:218px;}
  .brand {padding-left:6px;padding-right:6px;}
  .login-intro {padding:42px 9%;}
  .login-intro h1 {font-size:37px;}
}
@media(max-width:760px){
  .sidebar {border-right:0;border-bottom:1px solid #e6e7e8;padding:15px 18px 10px;}
  .sidebar .brand {flex-direction:row;align-items:center;justify-content:space-between;gap:12px;padding:0 5px 14px;}
  .sidebar .brand-logo {width:150px;height:auto;}
  .sidebar .brand-product {font-size:9px;line-height:1.6;letter-spacing:.8px;max-width:112px;}
  .sidebar nav a {padding-top:8px;padding-bottom:8px;}
  .sidebar nav a.active {box-shadow:inset 0 -3px 0 #67bc4a;}
  .topbar::before {display:none;}
  .login-intro {border-top-width:5px;padding:24px 25px;border-bottom:1px solid #e6e7e8;}
  .login-intro .brand {flex-direction:row;align-items:center;justify-content:space-between;gap:15px;}
  .login-intro .brand-logo {width:180px;height:auto;}
  .login-intro .brand-product {font-size:9px;letter-spacing:.7px;max-width:96px;line-height:1.5;}
  .login-intro .login-story {display:none;}
  .login-form {min-height:0;padding:28px 20px 40px;}
  .login-form-inner {padding:27px 25px;}
  .access-shell {margin:26px 18px 40px;max-width:none;}
  .access-card {padding:27px 25px;}
  .access-card h1 {font-size:24px;}
  .access-brand .brand-logo {width:190px;}
}
