:root{
  --brand-blue:#0175c0;
  --brand-cyan:#40c3f5;
  --brand-red:#c81125;
  --brand-yellow:#feb232;
  --ink:#292b2f;
  --muted:#68707a;
  --line:#e6e8eb;
  --surface:#ffffff;
  --background:#f6f7f8;
  --shadow:0 14px 36px rgba(27,35,45,.08);
}

*{box-sizing:border-box}
html{font-size:16px}
body{
  margin:0;
  min-height:100vh;
  font-family:Arial,"Helvetica Neue",sans-serif;
  background:var(--background);
  color:var(--ink);
  line-height:1.5;
}
a{color:var(--brand-blue)}
h1,h2,p{margin-top:0}
h1{font-size:clamp(2rem,4vw,3rem);line-height:1.08;letter-spacing:-.04em}
h2{font-size:1.35rem}

.container{width:min(1180px,100%);margin:0 auto;padding:42px 24px 70px}
.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:30px}
.page-heading h1{margin-bottom:8px}
.page-heading p{margin:0;color:var(--muted);font-size:1.05rem}
.registry-overview{display:grid;grid-template-columns:repeat(2,minmax(158px,1fr));gap:12px;width:min(520px,100%)}
.registry-counter{min-width:0;padding:13px 17px;border:1px solid var(--line);border-left:5px solid var(--brand-blue);border-radius:10px;background:#fff;box-shadow:0 10px 24px rgba(28,39,49,.06)}
.registry-counter-orders{border-left-color:#7b55c7}
.registry-counter span{display:block;margin-bottom:4px;color:var(--muted);font-size:.68rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.registry-counter strong{display:block;font-size:1.55rem;line-height:1;color:var(--ink)}
.origin-overview{grid-column:1/-1;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 10px 24px rgba(28,39,49,.05)}
.origin-overview-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}
.origin-overview-heading .eyebrow{margin-bottom:1px;font-size:.6rem}
.origin-overview-heading h2{margin:0;font-size:.92rem}
.origin-month-form{display:flex;align-items:center;gap:5px}
.origin-month-form label{font-size:.6rem;font-weight:800;text-transform:uppercase}
.origin-month-form input{width:124px;min-width:0;min-height:32px;padding:5px 7px;font-size:.78rem}
.origin-month-form button{min-height:32px;padding:5px 9px;font-size:.75rem;white-space:nowrap}
.origin-counters{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:9px}
.origin-counter{display:flex;justify-content:center;flex-direction:column;min-width:0;padding:7px 9px;border:1px solid transparent;border-left:3px solid var(--brand-blue);border-radius:7px;background:#f7fafc;color:inherit;text-decoration:none;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}
.origin-counter span{color:var(--muted);font-size:.56rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.origin-counter strong{margin-top:2px;font-size:1rem;line-height:1}
.origin-counter small{margin-top:4px;color:var(--brand-blue);font-size:.55rem;font-weight:800}
.origin-counter:hover{transform:translateY(-1px);border-color:#b9d9ed;box-shadow:0 7px 18px rgba(28,39,49,.09)}
.origin-counter:focus-visible{outline:3px solid rgba(0,117,192,.25);outline-offset:2px}
.origin-counter.active{border-color:var(--brand-blue);background:#eaf6fd;box-shadow:0 0 0 1px rgba(0,117,192,.08)}
.origin-client{border-left-color:#36a663}
.origin-unregistered{border-left-color:#9ca3aa}
.origin-filter-summary{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;margin:0 0 18px;padding:14px 18px;border:1px solid #b9d9ed;border-left:5px solid var(--brand-blue);border-radius:11px;background:#f3f9fd}
.origin-filter-summary>div{display:flex;flex-direction:column;gap:3px}
.origin-filter-summary .eyebrow{margin:0;font-size:.58rem}
.origin-filter-summary strong{font-size:1rem}
.origin-filter-summary small{color:var(--muted);font-weight:700}
.origin-filter-empty{padding:28px!important;color:var(--muted);white-space:normal!important}
.eyebrow{
  display:block;
  margin-bottom:10px;
  color:var(--brand-blue);
  font-size:.75rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.topbar{
  position:sticky;
  top:0;
  z-index:20;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
  min-height:78px;
  padding:13px max(24px,calc((100% - 1500px)/2));
  background:rgba(255,255,255,.96);
  border-bottom:1px solid var(--line);
  box-shadow:0 4px 18px rgba(30,35,40,.04);
  backdrop-filter:blur(12px);
}
.brand{
  display:flex;
  align-items:center;
  gap:11px;
  color:var(--ink);
  text-decoration:none;
}
.brand img{width:32px;height:32px;image-rendering:auto}
.brand img[src*="nova-logo.png"]{width:130px;height:58px;object-fit:cover;object-position:center;image-rendering:auto}
.topbar .brand img[src*="nova-logo-header.png"]{width:130px;height:54px;object-fit:cover;object-position:center;image-rendering:auto}
.brand-copy{display:flex;flex-direction:column;line-height:1.05}
.brand-copy strong{font-size:1.3rem;letter-spacing:-.04em}
.brand-copy small{margin-top:5px;color:var(--muted);font-size:.67rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.topbar nav{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  min-width:0;
  overflow-x:auto;
  scrollbar-width:none;
}
.topbar nav::-webkit-scrollbar{display:none}
.topbar nav a{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:10px 14px;
  border-radius:7px;
  color:#454a50;
  font-size:.9rem;
  font-weight:700;
  white-space:nowrap;
  text-decoration:none;
  transition:background .2s,color .2s,transform .2s;
}
.topbar nav a:hover,.topbar nav a.active{background:#eef7fc;color:var(--brand-blue)}
.topbar nav a.nav-primary{background:var(--ink);color:#fff}
.topbar nav a.nav-primary:hover{background:var(--brand-blue);color:#fff;transform:translateY(-1px)}
.topbar nav a.notification-nav{gap:7px}
.notification-nav span{
  display:inline-grid;
  min-width:20px;
  height:20px;
  padding:0 6px;
  place-items:center;
  color:#fff;
  background:var(--brand-red);
  border-radius:999px;
  font-size:.68rem;
}
.topbar-exit{color:var(--brand-red);font-size:.9rem;font-weight:700;text-decoration:none;white-space:nowrap}
.topbar-exit:hover{text-decoration:underline}

.card,.table-wrap,.stat{
  background:var(--surface);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}
.card{margin-bottom:24px;padding:30px;border-radius:14px}

.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.stat{
  position:relative;
  min-height:176px;
  padding:28px;
  overflow:hidden;
  border-radius:14px;
}
.stat::before{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:var(--stat-color,var(--brand-blue))}
.stat::after{
  content:"";
  position:absolute;
  right:-32px;
  bottom:-42px;
  width:118px;
  height:118px;
  border:20px solid var(--stat-color,var(--brand-blue));
  border-radius:50%;
  opacity:.07;
}
.stat-open{--stat-color:var(--brand-blue)}
.stat-workshop{--stat-color:var(--brand-yellow)}
.stat-ready{--stat-color:#299765}
.stat-payment{--stat-color:#7b55c7}
.stat-finished{--stat-color:var(--brand-red)}
.stat b{display:block;margin:8px 0 4px;font-size:3rem;line-height:1;font-weight:800;letter-spacing:-.05em}
.stat-label{font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.stat small{color:var(--muted)}
.stat-filter{
  display:block;
  min-height:176px;
  text-align:left;
  color:var(--ink);
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:14px;
}
.stat-filter:hover,.stat-filter.active{
  color:var(--ink);
  background:#fff;
  border-color:var(--stat-color);
  box-shadow:0 18px 42px rgba(27,35,45,.13);
  transform:translateY(-3px);
}
.stat-filter:focus-visible{outline:3px solid rgba(1,117,192,.25);outline-offset:3px}
.stat-footer{
  position:relative;
  z-index:1;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  min-width:0;
}
.stat-footer small{min-width:0;line-height:1.25}
.stat-action{
  flex:0 0 auto;
  color:var(--stat-color);
  font-size:.78rem;
  font-weight:800;
  white-space:nowrap;
}
.dashboard-ticket-lists{margin-top:26px}
.workshop-notifications{
  margin-bottom:26px;
  overflow:hidden;
  background:#fff;
  border:1px solid #f1d7da;
  border-left:5px solid var(--brand-red);
  border-radius:14px;
  box-shadow:var(--shadow);
}
.notification-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:20px 24px;
  background:#fffafb;
  border-bottom:1px solid #f1e0e2;
}
.notification-heading .eyebrow{margin-bottom:4px;color:var(--brand-red)}
.notification-heading h2{margin:0}
.notification-count{
  display:grid;
  min-width:34px;
  height:34px;
  padding:0 9px;
  place-items:center;
  color:#fff;
  background:var(--brand-red);
  border-radius:999px;
  font-weight:800;
}
.notification-list{display:grid}
.notification-item{
  display:grid;
  grid-template-columns:10px minmax(220px,1fr) auto auto;
  align-items:center;
  gap:16px;
  padding:17px 22px;
  color:var(--ink);
  border-bottom:1px solid var(--line);
  text-decoration:none;
  transition:background .2s;
}
.notification-item:last-child{border-bottom:0}
.notification-item:hover{background:#fffafb}
.notification-dot{width:9px;height:9px;background:var(--brand-red);border-radius:50%}
.notification-content{display:flex;min-width:0;flex-direction:column;gap:2px}
.notification-content>span{color:#4c535b;font-size:.9rem}
.notification-content small{color:var(--muted)}
.notification-cost{display:flex;align-items:flex-end;flex-direction:column;white-space:nowrap}
.notification-cost small{color:var(--muted)}
.notification-open{color:var(--brand-blue);font-size:.84rem;font-weight:800;white-space:nowrap}
.dashboard-ticket-panel{
  overflow:hidden;
  background:#fff;
  border:1px solid var(--line);
  border-radius:14px;
  box-shadow:var(--shadow);
  animation:ticket-list-in .2s ease;
}
.dashboard-ticket-panel[hidden]{display:none!important}
.dashboard-ticket-panel[data-list-panel="abiertos"]{--list-heading-color:var(--brand-blue);--list-heading-bg:#eaf6fd}
.dashboard-ticket-panel[data-list-panel="taller"]{--list-heading-color:var(--brand-yellow);--list-heading-bg:#fff5df}
.dashboard-ticket-panel[data-list-panel="listos"]{--list-heading-color:#27976c;--list-heading-bg:#eaf7f0}
.dashboard-ticket-panel[data-list-panel="pendientes_entrega"]{--list-heading-color:#7b55c7;--list-heading-bg:#f3edfb}
.dashboard-list-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  padding:22px 24px;
  background:var(--list-heading-bg);
  border-top:4px solid var(--list-heading-color);
  border-bottom:1px solid var(--line);
}
.dashboard-list-heading .eyebrow{margin-bottom:5px}
.dashboard-list-heading h2{margin:0}
.dashboard-list-heading-tools{display:flex;align-items:center;justify-content:flex-end;gap:14px}
.dashboard-list-search{width:min(340px,32vw)}
.dashboard-list-search input{width:100%;min-height:40px;padding:8px 12px;border:1px solid #c8d0d8;border-radius:10px;background:#fff;font-weight:600}
.dashboard-list-search input:focus{background:#fff}
.dashboard-list-table{max-width:100%;overflow-x:hidden;border:0;border-radius:0;box-shadow:none}
.dashboard-list-table table{width:100%;min-width:720px;table-layout:fixed}
.dashboard-list-table th,.dashboard-list-table td{padding-right:10px;padding-left:10px;white-space:normal;overflow-wrap:anywhere}
.dashboard-list-table th:nth-child(1){width:15%}
.dashboard-list-table th:nth-child(2){width:22%}
.dashboard-list-table th:nth-child(3){width:23%}
.dashboard-list-table th:nth-child(4){width:16%}
.dashboard-list-table th:nth-child(5){width:17%}
.dashboard-list-table th:nth-child(6){width:7%}
.dashboard-list-table td:nth-child(1),.dashboard-list-table td:nth-child(4),.dashboard-list-table td:nth-child(6){white-space:nowrap}
.dashboard-list-table .badge{max-width:100%;white-space:normal}
.order-preview-row{cursor:pointer;transition:background-color .16s ease,box-shadow .16s ease}
.order-preview-row:hover{background:#f2f8fc}
.order-preview-row.is-selected{background:#f5fbff;box-shadow:inset 0 0 0 3px rgba(0,119,190,.38)}
.order-preview-row:focus-visible{outline:3px solid rgba(0,119,190,.3);outline-offset:-3px}
.order-preview-dialog{width:min(820px,calc(100% - 30px));max-height:90vh;padding:0;border:0;border-radius:18px;box-shadow:0 28px 80px rgba(18,29,40,.28);overflow:hidden}
.order-preview-dialog::backdrop{background:rgba(18,25,33,.58);backdrop-filter:blur(2px)}
.order-preview-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 26px;border-bottom:1px solid var(--line);background:#fff}
.order-preview-header h2{margin:3px 0 0}
.order-preview-header>button{display:grid;place-items:center;width:38px;height:38px;padding:0;color:var(--muted);background:#edf1f4;border-radius:50%;font-size:1.5rem}
.order-preview-content{display:grid;gap:16px;max-height:calc(90vh - 92px);padding:22px 26px 26px;background:#f5f8fa;overflow-y:auto}
.order-preview-loading{padding:45px 10px;text-align:center;color:var(--muted);font-weight:700}
.order-preview-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px;background:#fff;border:1px solid var(--line);border-radius:14px}
.order-preview-field{display:grid;align-content:start;gap:4px;min-width:0;padding:10px 12px;background:#f8fafb;border-radius:9px}
.order-preview-field>span{color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.order-preview-field>strong{overflow-wrap:anywhere;white-space:pre-wrap}
.order-preview-wide{grid-column:1/-1}
.order-preview-sections section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:14px}
.order-preview-sections h3{grid-column:1/-1;margin:0 0 2px;color:var(--brand-blue)}
.order-preview-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px}
@media(max-width:640px){.order-preview-header,.order-preview-content{padding-left:16px;padding-right:16px}.order-preview-summary,.order-preview-sections section{grid-template-columns:1fr}.order-preview-wide,.order-preview-sections h3{grid-column:auto}.order-preview-actions{align-items:stretch;flex-direction:column-reverse}.order-preview-actions>*{justify-content:center;width:100%}}
.dashboard-list-empty{padding:32px 24px;color:var(--muted);text-align:center}
.table-secondary{display:block;margin-top:2px;color:var(--muted);font-size:.78rem}
@keyframes ticket-list-in{
  from{opacity:0;transform:translateY(-8px)}
  to{opacity:1;transform:translateY(0)}
}

label{display:flex;flex-direction:column;gap:7px;color:#3d4248;font-size:.86rem;font-weight:700}
input,select,textarea,button{font:inherit}
input,select,textarea{
  width:100%;
  padding:12px 13px;
  color:var(--ink);
  background:#fff;
  border:1px solid #cfd4d9;
  border-radius:7px;
  outline:none;
  transition:border-color .2s,box-shadow .2s;
}
input:focus,select:focus,textarea:focus{border-color:var(--brand-blue);box-shadow:0 0 0 3px rgba(1,117,192,.12)}
.serial-lookup-status{min-height:1.1em;color:var(--muted);font-size:.75rem;font-weight:600}
.serial-lookup-status[data-state="success"]{color:#287346}
.serial-lookup-status[data-state="error"]{color:#a5202f}
.required-mark{color:var(--brand-red);font-weight:900}
.field-label-text{display:inline;line-height:1.25}
[data-new-brand],[data-new-model]{margin-top:9px}
#sparePartField[hidden]{display:none!important}
.serial-client-dialog{width:min(92vw,640px);padding:0;border:0;border-radius:16px;box-shadow:0 24px 70px rgba(20,34,48,.25)}
.serial-client-dialog::backdrop{background:rgba(18,29,40,.55)}
.serial-dialog-content{padding:30px}
.serial-dialog-content h2{margin:6px 0 12px}
.serial-previous-client{display:flex;flex-direction:column;gap:5px;margin:18px 0;padding:16px 18px;border-left:4px solid var(--brand-blue);border-radius:8px;background:#f2f8fc}
.serial-previous-client span{color:var(--muted)}
.serial-dialog-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.serial-dialog-cancel{background:transparent;color:var(--muted);border:1px solid var(--line)}
textarea{min-height:105px;resize:vertical}
button{
  min-height:44px;
  padding:11px 20px;
  background:var(--ink);
  color:#fff;
  border:0;
  border-radius:7px;
  font-weight:800;
  cursor:pointer;
  transition:background .2s,transform .2s;
}
button:hover{background:var(--brand-blue);transform:translateY(-1px)}
.secondary{background:#e9ecef;color:var(--ink)}
.secondary:hover{background:#dfe4e8;color:var(--ink)}
.button-link{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:11px 20px;
  background:var(--ink);
  color:#fff;
  border-radius:7px;
  font-weight:800;
  text-decoration:none;
  transition:background .2s,transform .2s;
}
.button-link:hover{background:var(--brand-blue);transform:translateY(-1px)}
.button-link.secondary-link{background:#e9ecef;color:var(--ink)}
.button-link.secondary-link:hover{background:#dfe4e8;color:var(--ink)}

.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px}
.form-grid h1,.full{grid-column:1/-1}
.form-grid h1{padding-bottom:20px;border-bottom:1px solid var(--line)}
.new-order-reference{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:12px;border:1px solid #cfe3f1;border-radius:11px;background:#f5fafd;box-shadow:0 10px 24px rgba(28,39,49,.09)}
.new-order-reference>div{padding:10px 13px;border-left:4px solid var(--brand-blue);border-radius:7px;background:#fff}
.new-order-reference>div+div{border-left-color:var(--brand-yellow)}
.new-order-reference span,.new-order-reference small{display:block}
.new-order-reference span{margin-bottom:3px;color:var(--muted);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.new-order-reference strong{display:block;font-size:1.05rem;line-height:1.25}
.new-order-reference small{margin-top:2px;color:var(--muted);font-size:.67rem}
[data-service-notes][hidden]{display:none!important}
.form-grid.sale-service .sale-warranty-field,
.form-grid.sale-service .service-notes-field{grid-column:auto}
.form-grid.sale-service .service-notes-field textarea{height:46px;min-height:46px;resize:vertical}
[data-service-issue][hidden],[data-sale-warranty][hidden]{display:none!important}
[data-service-signature][hidden]{display:none!important}
.company-fields{display:grid;grid-template-columns:1fr 1fr;gap:19px}
.company-fields[hidden]{display:none!important}
.sale-fields{display:grid;grid-template-columns:1fr 1fr;gap:19px}
.sale-fields[hidden]{display:none!important}
[data-service-origin][hidden]{display:none!important}
.checkbox{flex-direction:row;align-items:center}
.checkbox input{width:auto;accent-color:var(--brand-blue)}
.role-selector{margin:0;padding:0;border:0;min-width:0}
.role-selector legend{margin-bottom:9px;font-weight:800}
.role-options{display:flex;gap:9px;flex-wrap:wrap}
.role-option{display:flex;align-items:center;flex:1 1 130px;min-height:54px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer}
.role-option:has(input:checked){border-color:var(--brand-blue);background:#eef8fe;box-shadow:0 0 0 1px rgba(0,117,192,.1)}
.role-option input{width:auto;margin:0;accent-color:var(--brand-blue)}
.role-option span{font-weight:800}
.actions{display:flex;gap:10px}
.terms{padding:22px 24px;background:#f0f8fc;border-left:4px solid var(--brand-blue);border-radius:8px}
.terms h2{margin:0 0 16px;font-size:1.25rem}
.terms h3{margin:18px 0 9px;font-size:.96rem}
.terms ul{margin:0;padding-left:21px;color:#4f5962;font-size:.9rem}
.terms li+li{margin-top:8px}
.signature-row{
  display:flex;
  justify-content:flex-end;
  width:100%;
  padding-top:42px;
}
.physical-signature{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  align-items:center;
  gap:10px;
  width:420px;
  max-width:100%;
  min-height:125px;
  text-align:center;
}
.physical-signature-line{display:block;width:100%;height:1px;border-top:2px solid #292b2f}

.search{display:flex;gap:10px;max-width:650px;margin:0 0 22px}
.search input{min-height:46px}
.order-search-row{display:flex;align-items:stretch;justify-content:space-between;gap:18px;margin-bottom:22px}
.order-search-row .search{flex:1 1 650px;margin:0}
.grouped-clients-link{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}
.inline{display:flex;gap:10px;margin:18px 0}
.inline select{max-width:260px}
.ticket-state-form{align-items:flex-end}
.ticket-state-field{width:min(100%,260px)}
.order-summary-card{padding:0;overflow:hidden}
.order-summary-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:19px 24px;border-bottom:1px solid var(--line)}
.order-summary-heading .eyebrow{margin-bottom:5px}
.order-summary-heading h2{margin:0;font-size:1.45rem}
.summary-tags{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.summary-count{padding:7px 12px;border-radius:999px;background:#e8f5ed;color:#176d3b;font-size:.78rem;font-weight:800}
.service-type-badge{padding:7px 12px;border-radius:999px;font-size:.78rem;font-weight:800}
.service-type-sale{background:#fff1d6;color:#8a5900}
.service-type-repair{background:#e8f4fb;color:#075f98}
.order-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;padding:16px 24px}
.order-detail-field{display:flex;flex-direction:column;gap:5px;min-height:52px;padding:9px 11px;border:1px solid #cfd4d9;border-radius:7px;background:#fff}
.order-detail-field>span{color:#3d4248;font-size:.74rem;font-weight:700}
.order-detail-field>strong{color:var(--ink);font-size:.86rem;line-height:1.3;overflow-wrap:anywhere}
.order-detail-wide{grid-column:1/-1;min-height:62px}
.order-detail-section-title{grid-column:1/-1;padding:7px 2px 0;border-top:1px solid var(--line)}
.order-detail-section-title .eyebrow{margin:0}
.order-summary-card .ticket-state-form{margin:0;padding:0 24px 20px}

.table-wrap{overflow:auto;border-radius:14px}
table{width:100%;border-collapse:collapse}
th,td{padding:15px 17px;border-bottom:1px solid var(--line);text-align:center;vertical-align:middle;white-space:nowrap}
th{background:#fafafa;color:#626970;font-size:.72rem;letter-spacing:.09em;text-transform:uppercase}
tbody tr{transition:background .2s}
tbody tr:hover{background:#f6fbfe}
tbody tr:last-child td{border-bottom:0}
td a{font-weight:800;text-decoration:none}
.table-actions{display:flex;align-items:center;justify-content:center;gap:14px}
.table-actions a:last-child{color:#59636d}
.order-list-wrap{max-width:100%;overflow-x:auto;overflow-y:hidden}
.order-list-table{width:100%;min-width:1100px;table-layout:fixed}
.order-list-table th,.order-list-table td{padding-left:12px;padding-right:12px;text-align:center;vertical-align:middle}
.order-list-table th:nth-child(1){width:15%}
.order-list-table th:nth-child(2){width:13%}
.order-list-table th:nth-child(3){width:10%}
.order-list-table th:nth-child(4){width:11%}
.order-list-table th:nth-child(5){width:13%}
.order-list-table th:nth-child(6){width:8%}
.order-list-table th:nth-child(7){width:8%}
.order-list-table th:nth-child(8){width:22%}
.order-list-table td:nth-child(1),.order-list-table td:nth-child(2){font-size:.84rem}
.order-list-table td:nth-child(3),.order-list-table td:nth-child(4){white-space:normal;overflow-wrap:anywhere}
.order-list-table .status-cell{justify-content:center;flex-wrap:wrap}
.order-list-table .table-actions{justify-content:center;gap:5px;white-space:nowrap}
.order-list-table .table-actions .button-compact{min-height:34px;padding:7px 8px;font-size:.78rem}
.local-days-heading{white-space:normal;line-height:1.25}
.local-days-cell{border-left:1px solid #eef0f2}
.local-days{display:flex;align-items:baseline;justify-content:center;gap:4px;color:#287346;white-space:nowrap}
.local-days strong{font-size:1rem}
.local-days span{font-size:.76rem;font-weight:800}
.warranty-cell{border-left:1px solid #eef0f2;white-space:normal}
.warranty-status{color:#287346;font-size:.78rem;font-weight:800}
.warranty-status.warranty-expired{color:var(--brand-red)}
.table-dash{color:var(--muted);font-size:1.1rem;font-weight:800}
.user-actions{display:flex;align-items:center;justify-content:center;gap:8px}
.users-table-wrap{max-width:100%;overflow-x:hidden}
.users-table{width:100%;table-layout:fixed}
.users-table th,.users-table td{padding:13px 10px;white-space:normal;overflow-wrap:anywhere}
.users-table th:nth-child(1){width:18%}
.users-table th:nth-child(2){width:17%}
.users-table th:nth-child(3){width:20%}
.users-table th:nth-child(4){width:20%}
.users-table th:nth-child(5){width:7%}
.users-table th:nth-child(6){width:8%}
.users-table th:nth-child(7){width:10%}
.users-table td:nth-child(5),.users-table td:nth-child(6){white-space:nowrap}
.users-table .user-actions{flex-wrap:wrap;gap:6px}
.users-table .button-link.button-compact,.users-table .button-compact{min-height:32px;padding:6px 8px;font-size:.75rem}
.inline-form{display:inline-flex;margin:0}
.button-link.button-compact,.button-compact{min-height:36px;padding:8px 12px;font-size:.82rem}
.admin-state-button{color:#5d3aa8;background:#f3effc;border:1px solid #d8cef0}
.admin-state-button:hover{color:#fff;background:#7047ba;border-color:#7047ba}
.danger-button{background:#fff0f1;color:#a40f20;border:1px solid #efc4c9}
.danger-button:hover{background:var(--brand-red);color:#fff}
.current-user-label{color:var(--muted);font-size:.78rem;font-weight:700}
.badge.badge-inactive{background:#f0f1f2;color:#626970}
.field-help{display:block;margin-top:6px;color:var(--muted);font-size:.78rem;font-weight:400}
.form-note{margin:0;padding:12px 14px;border-left:4px solid var(--brand-blue);border-radius:7px;background:#f1f8fc;color:#45515b}
.password-field{position:relative;display:block}
.password-field input{padding-right:92px}
.password-toggle{
  position:absolute;
  top:50%;
  right:7px;
  min-height:34px;
  padding:6px 10px;
  background:transparent;
  color:var(--brand-blue);
  font-size:.78rem;
  transform:translateY(-50%);
}
.password-toggle:hover{background:#e8f4fb;transform:translateY(-50%)}
.equipment-meta{display:block;margin-top:4px;color:var(--muted);font-size:.76rem}
.repeat-ingress{display:inline-block;margin-top:7px;padding:3px 8px;border-radius:999px;background:#eef5fb;color:#075f98;font-size:.72rem;font-weight:800}
.status-cell{display:flex;align-items:center;gap:9px}
.status-meta{color:#287346;font-size:.72rem;font-weight:800;white-space:nowrap}
.status-meta.warranty-expired{color:var(--brand-red)}
.service-history-card{padding:0;overflow:hidden}
.service-history-card>.diagnostic-heading{padding:28px 30px 20px}
.service-history-wrap{border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none}
.service-history-table th,.service-history-table td{white-space:normal;vertical-align:top}
.service-history-table td{min-width:120px;line-height:1.45}
.service-history-table td:nth-child(2),.service-history-table td:nth-child(4){min-width:210px}
.service-history-table td small{display:block;margin-top:5px;color:var(--muted)}
.service-history-table .current-service-entry{background:#f3f9fd}
.service-history-table .current-service-entry td:first-child{box-shadow:inset 4px 0 #77b9dc}
.service-order-toggle{display:inline-flex;align-items:center;gap:8px;padding:0;border:0;background:transparent;color:#0074bd;font:inherit;font-weight:800;cursor:pointer;text-align:left}
.service-order-toggle span{font-size:1.2rem;transition:transform .2s}
.service-order-toggle[aria-expanded="true"] span{transform:rotate(180deg)}
.service-detail-row td{padding:0;border-bottom:2px solid #cfe5f2;background:#f8fbfd}
.service-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:22px}
.service-detail-grid section{padding:18px;border:1px solid var(--line);border-radius:10px;background:#fff}
.service-detail-grid h3{margin:0 0 13px;color:#075f98}
.service-detail-grid p{margin:7px 0;white-space:normal}
.service-detail-link{display:inline-block;margin-top:10px;font-weight:800}
.service-history-cost{font-weight:800;white-space:nowrap!important}
.muted-report{color:var(--muted);font-style:italic}
.payment-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.payment-summary div{padding:17px 18px;border:1px solid var(--line);border-radius:10px;background:#fafbfc}
.payment-summary span{display:block;margin-bottom:7px;color:var(--muted);font-size:.82rem;font-weight:700}
.payment-summary strong{font-size:1.02rem}
.payment-original-total,.currency-conversion{padding:14px 16px;border:1px solid var(--line);border-radius:9px;background:#f7fafc}
.payment-original-total{display:flex;flex-direction:column;justify-content:center;gap:5px}
.payment-original-total span{color:var(--muted);font-size:.8rem;font-weight:700}
.currency-conversion{grid-column:1/-1;color:#075f98;font-weight:700}
.currency-conversion[data-state="error"]{color:#a5202f;background:#fff5f5}
.badge{
  display:inline-block;
  padding:6px 10px;
  background:#e8f4fb;
  color:#075f98;
  border-radius:999px;
  font-size:.78rem;
  font-weight:800;
}
.badge-accepted{
  background:#e8f6ed;
  color:#1f6b3d;
}
.badge-rejected{
  background:#fdebed;
  color:#b20f25;
}
.seller-status-badge{margin:0}
.history{margin:0;padding-left:20px;line-height:1.9}
.history li::marker{color:var(--brand-blue)}

.report-heading{align-items:flex-end}
.report-print-button{white-space:nowrap}
.report-toolbar{
  display:flex;
  align-items:stretch;
  flex-direction:column;
  gap:20px;
  margin-bottom:22px;
  padding:14px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:14px;
}
.report-period-controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.report-tabs{display:flex;gap:8px}
.report-tabs a{
  padding:11px 18px;
  color:#4f5862;
  border-radius:9px;
  font-weight:800;
  text-decoration:none;
}
.report-tabs a.active{color:#fff;background:var(--ink)}
.report-day-picker{display:flex;align-items:center;gap:8px;padding-left:14px;border-left:1px solid var(--line)}
.report-day-picker label{font-size:.82rem;font-weight:800;white-space:nowrap}
.report-day-picker input{width:auto;min-width:155px;padding:10px 12px}
.report-day-picker button{padding:11px 15px;white-space:nowrap}
.report-range-picker{flex-wrap:wrap}
.report-filter{display:flex;align-items:center;justify-content:flex-start;gap:10px;flex-wrap:wrap;padding-top:14px;border-top:1px solid var(--line)}
.report-filter label{font-size:.82rem}
.report-filter select{min-width:200px}
.report-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  margin-bottom:24px;
}
.report-summary article{
  padding:20px;
  background:#fff;
  border:1px solid var(--line);
  border-left:5px solid var(--brand-blue);
  border-radius:14px;
  box-shadow:0 12px 30px rgba(27,35,45,.06);
}
.report-summary article:nth-child(2){border-left-color:var(--brand-yellow)}
.report-summary article:nth-child(3){border-left-color:#36a663}
.report-summary article.report-total{border-left-color:var(--brand-red)}
.report-summary article.report-historical{border-left-color:#7652b8}
.report-summary article.report-net{border-left-color:#147db3}
.report-summary article.report-vat{border-left-color:#d88913}
.report-summary article.report-margin{border-left-color:#23895a}
.report-summary span{
  display:block;
  margin-bottom:7px;
  color:var(--muted);
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.report-summary strong{font-size:1.75rem}
.report-total-values{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.report-total-values b{font-size:1rem}
.report-summary article>small{display:block;margin-top:10px;color:var(--muted);font-size:.76rem;font-weight:700}
.report-print-layout{display:none}
.report-results{padding:0;overflow:hidden}
.report-results-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:22px;
  border-bottom:1px solid var(--line);
}
.report-results-heading h2{margin:2px 0 0}
.report-results-heading>span{color:var(--muted);font-weight:700}
.report-table{width:100%;min-width:1100px;table-layout:fixed}
.report-table th,.report-table td{white-space:normal;vertical-align:middle;word-break:normal;overflow-wrap:break-word}
.report-table th{padding:13px 9px;font-size:.61rem}
.report-table td{padding:14px 9px;font-size:.79rem;line-height:1.4}
.report-table th:nth-child(1){width:12%}
.report-table th:nth-child(2){width:9%}
.report-table th:nth-child(3){width:12%}
.report-table th:nth-child(4){width:8%}
.report-table th:nth-child(5){width:8%}
.report-table th:nth-child(6){width:9%}
.report-table th:nth-child(7){width:10%}
.report-table th:nth-child(8){width:10%}
.report-table th:nth-child(9){width:9%}
.report-table th:nth-child(10){width:13%}
.report-table td:first-child small{display:block;margin-top:4px;color:var(--muted)}
.report-table td:nth-child(9) strong,.report-table td:nth-child(9) small{display:block}
.report-table td:nth-child(9) small{margin-top:4px;color:var(--muted)}
.report-table .report-description{text-align:left;vertical-align:middle;line-height:1.45}
.report-description-preview{
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  line-clamp:2;
  cursor:help;
}
.report-cost{font-weight:800;white-space:normal!important}
.report-cost strong,.report-cost small{display:block}
.report-cost small{margin-top:4px;color:var(--muted);font-size:.7rem;font-weight:700}
.report-classification-form{display:grid;gap:6px}
.report-classification-form select{width:100%;min-width:0;padding:8px 30px 8px 9px;font-size:.74rem}
.report-classification-form button{width:100%;padding:7px 5px;font-size:.7rem}
.report-order-row{scroll-margin-top:90px}
.report-order-row:target{background:#eef8fe;box-shadow:inset 5px 0 0 var(--brand-blue)}
.report-empty{padding:42px;text-align:center;color:var(--muted)}

.alert{margin:12px 0;padding:11px 13px;background:#fff0f1;color:#961222;border-left:4px solid var(--brand-red);border-radius:7px}
.alert-success{margin-bottom:22px;background:#edf8f1;color:#25643c;border-left-color:#36a663}
.ticket-actions{margin:20px 0}
.diagnostic-card{
  position:relative;
  overflow:hidden;
  border-left:5px solid var(--brand-blue);
}
.diagnostic-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  margin-bottom:20px;
}
.diagnostic-heading .eyebrow{margin-bottom:5px}
.diagnostic-heading h2{margin:0}
.diagnostic-badge{
  display:inline-flex;
  padding:6px 10px;
  color:#25643c;
  background:#e8f6ed;
  border-radius:999px;
  font-size:.75rem;
  font-weight:800;
}
.diagnostic-text{
  padding:20px;
  color:#343a40;
  background:#f5f9fc;
  border:1px solid #dbe9f2;
  border-radius:9px;
  font-size:1rem;
  line-height:1.65;
  overflow-wrap:anywhere;
}
.repair-cost{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-top:14px;
  padding:15px 18px;
  background:#fff8e9;
  border-left:4px solid var(--brand-yellow);
  border-radius:8px;
}
.repair-cost span{color:#5f5a50;font-size:.88rem;font-weight:700}
.repair-cost strong{font-size:1.2rem}
.payment-card{border-left:5px solid #7b55c7}
.accounting-card{border-left:5px solid #1f9d68}
.accounting-card .payment-heading p{margin:5px 0 0;color:var(--muted)}
.accounting-status{display:inline-flex;align-items:center;min-height:32px;padding:6px 12px;border-radius:999px;font-size:.78rem;font-weight:900;white-space:nowrap}
.accounting-status.is-complete{background:#e8f7ef;color:#137646}
.accounting-status.is-pending{background:#fff2d5;color:#936000}
.accounting-breakdown{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:18px}
.accounting-flow{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff}
.accounting-flow-heading{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line)}
.accounting-flow-heading>span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;font-weight:900}
.accounting-flow-heading small{display:block;margin-bottom:2px;color:var(--muted);font-size:.68rem;font-weight:900;letter-spacing:.12em}
.accounting-flow-heading h3{margin:0;font-size:1.2rem}
.accounting-sale-flow .accounting-flow-heading{background:#f1f8fd}.accounting-sale-flow .accounting-flow-heading>span{color:#006cae;background:#dceffc}
.accounting-cost-flow .accounting-flow-heading{background:#fff8e9}.accounting-cost-flow .accounting-flow-heading>span{color:#946100;background:#ffe9b8}
.accounting-flow-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 18px}
.accounting-flow-row span{color:var(--muted);font-weight:700}.accounting-flow-row strong{font-size:1.05rem;text-align:right}
.accounting-flow-row+.accounting-flow-row{border-top:1px solid var(--line)}
.accounting-flow-row.accounting-deduction strong{color:#a34b37}
.accounting-flow-row.accounting-flow-total{background:#f7f9fa}.accounting-flow-row.accounting-flow-total span,.accounting-flow-row.accounting-flow-total strong{color:var(--ink);font-weight:900}
.accounting-cost-empty{display:flex;min-height:157px;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:24px;text-align:center;background:#fffdf8}
.accounting-cost-empty strong{color:#936000}.accounting-cost-empty span{max-width:330px;color:var(--muted);font-size:.85rem}
.accounting-equation{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1.15fr);align-items:stretch;gap:12px;margin-top:20px;padding:14px;border:1px solid #9bd8b9;border-radius:14px;background:#effaf4}
.accounting-equation>div{display:flex;flex-direction:column;justify-content:center;gap:5px;padding:14px 16px;border-radius:10px;background:#fff}
.accounting-equation>div span{color:var(--muted);font-size:.78rem;font-weight:800}.accounting-equation>div strong{font-size:1.08rem}
.accounting-equation>b{align-self:center;color:#607065;font-size:1.7rem}
.accounting-equation .accounting-profit{background:#dff5e9}.accounting-equation .accounting-profit span,.accounting-equation .accounting-profit strong{color:#137646}.accounting-equation .accounting-profit strong{font-size:1.22rem}
.workshop-detail-card{border-left:5px solid var(--brand-blue)}
.workshop-summary .workshop-summary-wide{grid-column:1/-1}
.equipment-exit-card{display:flex;align-items:center;justify-content:space-between;gap:24px;border-left:5px solid #27976c}
.equipment-exit-card h2{margin:5px 0 6px}.equipment-exit-card p{margin:0;color:var(--muted)}
.equipment-exit-card .button-link{flex:0 0 auto}
.payment-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  margin-bottom:20px;
}
.payment-heading h2{margin:3px 0 0}
.payment-badge{
  display:inline-flex;
  padding:6px 10px;
  color:#1f6b3d;
  background:#e8f6ed;
  border-radius:999px;
  font-size:.75rem;
  font-weight:800;
}
.payment-form{
  display:grid;
  grid-template-columns:minmax(180px,1fr) minmax(220px,1fr) auto;
  align-items:end;
  gap:16px;
}
.payment-form button{min-height:48px}
.payment-meta{margin:14px 0 0;color:var(--muted);font-size:.82rem}
.historical-cost-form{display:grid;grid-template-columns:minmax(260px,1.5fr) minmax(220px,1fr) auto;align-items:end;gap:16px;margin-top:20px;padding:18px;border:1px solid #d9ccef;border-radius:12px;background:#faf8fe}
.historical-cost-form h3{margin:2px 0 5px}
.historical-cost-form p{margin:0;color:var(--muted);font-size:.82rem}
.historical-cost-form label{display:flex;flex-direction:column;gap:7px;font-weight:800}
.historical-cost-form button{min-height:48px}
.stock-page{padding-bottom:70px}
.stock-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0}
.stock-stats>div{padding:20px 22px;border:1px solid var(--line);border-left:4px solid var(--brand-blue);border-radius:12px;background:#fff;box-shadow:var(--shadow)}
.stock-stats span{display:block;margin-bottom:8px;color:var(--muted);font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.stock-stats strong{font-size:1.35rem}
.stock-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.stock-section-heading h2{margin:4px 0 0}
.stock-form-card{border-left:5px solid var(--brand-yellow)}.stock-list-card{border-left:5px solid var(--brand-blue)}.stock-movements-card{border-left:5px solid #1f9d68}
.stock-item-form textarea{background:#fff}.stock-search{display:grid;grid-template-columns:minmax(240px,1fr) minmax(180px,.45fr) auto auto;align-items:end;gap:12px;margin-bottom:20px}.stock-search label{display:flex;flex-direction:column;gap:7px;font-weight:800}.stock-search button,.stock-search .button-link{min-height:48px}
.stock-category,.stock-quantity{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:.78rem;font-weight:900}.stock-category{color:#006cae;background:#e5f3fc}.stock-quantity{min-width:44px;justify-content:center;color:#137646;background:#e8f7ef}.stock-quantity.is-low{color:#936000;background:#fff2d5}.stock-quantity.is-empty{color:#b20c23;background:#ffe9ed}
.stock-list-card .table-wrap,.stock-movements-card .table-wrap{overflow-x:hidden}
.stock-table,.stock-movement-table{width:100%;min-width:0;table-layout:fixed}
.stock-table th,.stock-table td,.stock-movement-table th,.stock-movement-table td{padding:14px 10px;white-space:normal;overflow-wrap:anywhere}
.stock-table .table-secondary,.stock-movement-table .table-secondary{display:block;margin-top:5px;line-height:1.35;white-space:normal;overflow-wrap:anywhere}
.stock-table th:nth-child(1){width:14%}.stock-table th:nth-child(2){width:34%}.stock-table th:nth-child(3){width:15%}.stock-table th:nth-child(4){width:10%}.stock-table th:nth-child(5){width:15%}.stock-table th:nth-child(6){width:12%}
.stock-table td:nth-child(3){white-space:nowrap}.stock-table .table-actions{flex-wrap:wrap;gap:8px}
.stock-movement-table th:nth-child(1){width:15%}.stock-movement-table th:nth-child(2){width:33%}.stock-movement-table th:nth-child(3){width:15%}.stock-movement-table th:nth-child(4){width:9%}.stock-movement-table th:nth-child(5){width:13%}.stock-movement-table th:nth-child(6){width:15%}
.stock-movement-qty{font-weight:900}.stock-movement-qty.is-in{color:#137646}.stock-movement-qty.is-out{color:#b20c23}
.branch-badge{display:inline-flex;width:max-content;margin-top:5px;padding:4px 8px;border-radius:999px;background:#eef2f6;color:#374151;font-size:.68rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.branch-badge.branch-nova{background:#efffd7;color:#3f6600}.branch-badge.branch-multiserv{background:#e5f3fc;color:#006cae}
.accounting-sync-page{padding-bottom:70px}.integration-security-card,.integration-actions{display:flex;align-items:center;justify-content:space-between;gap:24px}.integration-security-card{border-left:5px solid #1f9d68}.integration-security-card h2,.integration-actions h2{margin:4px 0 7px}.integration-security-card p,.integration-actions p{margin:0;color:var(--muted)}.integration-actions{border-left:5px solid var(--brand-blue)}.integration-action-buttons{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.integration-action-buttons form{margin:0}.integration-stats{margin-top:20px}
.accounting-monthly-orders{margin-top:24px;padding:0;overflow:hidden}
.accounting-monthly-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:24px 30px;border-bottom:1px solid var(--line)}
.accounting-monthly-heading h2{margin:4px 0 6px}.accounting-monthly-heading p{margin:0;color:var(--muted)}
.accounting-monthly-controls{display:flex;align-items:flex-end;justify-content:flex-end;gap:14px;flex-wrap:wrap}
.accounting-month-totals{display:flex;gap:7px}.accounting-month-totals>div{display:flex;min-width:142px;padding:8px 10px;border:1px solid #cde2ef;border-radius:8px;background:#f3f9fd;flex-direction:column}.accounting-month-totals span{color:var(--muted);font-size:.56rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.accounting-month-totals strong{margin-top:2px;font-size:.84rem;white-space:nowrap}
.accounting-month-form{display:flex;align-items:center;gap:8px;flex:0 0 auto}.accounting-month-form label{font-size:.76rem;font-weight:800;text-transform:uppercase}.accounting-month-form input{width:155px}.accounting-month-form button{padding:11px 17px}
.accounting-orders-wrap{margin:0;border:0;border-radius:0}.accounting-orders-table{min-width:940px;margin:0;table-layout:fixed}.accounting-orders-table th,.accounting-orders-table td{padding-right:11px;padding-left:11px;vertical-align:middle;white-space:normal;overflow-wrap:anywhere}.accounting-orders-table th:nth-child(1){width:145px}.accounting-orders-table th:nth-child(2){width:100px}.accounting-orders-table th:nth-child(4){width:145px}.accounting-orders-table th:nth-child(5){width:125px}.accounting-orders-table th:nth-child(6){width:115px}.accounting-orders-table th:nth-child(7){width:180px}.accounting-orders-table td:nth-child(1),.accounting-orders-table td:nth-child(2),.accounting-orders-table td:nth-child(7){white-space:nowrap}.accounting-order-link{font-weight:800}.accounting-amount{white-space:nowrap}.accounting-amount .table-secondary{margin:0}
.cash-page{padding-bottom:80px}.cash-heading{align-items:flex-end}.cash-month-form{display:flex;align-items:flex-end;gap:8px}.cash-month-form label{font-size:.72rem;text-transform:uppercase}.cash-month-form input{width:165px}.cash-month-form button{padding:11px 18px}
.cash-current-month{padding:9px 13px;border:1px solid #cde2ef;border-radius:999px;background:#f3f9fd;color:#075f98;font-size:.78rem;font-weight:900;white-space:nowrap}
.cash-initial-card{display:flex;align-items:center;justify-content:space-between;gap:28px;border-left:5px solid #f0aa21}.cash-initial-card h2{margin:4px 0 7px}.cash-initial-card p{max-width:620px;margin:0;color:var(--muted)}.cash-initial-form{display:grid;grid-template-columns:145px 145px auto;align-items:end;gap:10px;flex:0 0 auto}.cash-initial-form button{min-height:46px;white-space:nowrap}
.cash-initial-edit-card{border-left-color:#299765}.cash-initial-editor{min-width:530px}.cash-initial-editor>summary{display:block;width:max-content;margin-left:auto;padding:11px 18px;border-radius:8px;background:var(--brand-blue);color:#fff;font-weight:800;cursor:pointer;list-style:none}.cash-initial-editor>summary::-webkit-details-marker{display:none}.cash-initial-editor[open]>summary{margin-bottom:14px;background:#425466}.cash-initial-editor .cash-initial-form{padding:14px;border:1px solid var(--line);border-radius:10px;background:#f7f9fa}
.cash-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 18px}.cash-total-card{display:flex;min-height:130px;padding:21px 22px;border:1px solid var(--line);border-left:5px solid var(--brand-blue);border-radius:12px;background:#fff;box-shadow:var(--shadow);flex-direction:column;justify-content:center}.cash-total-card>span{color:var(--muted);font-size:.68rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.cash-total-card>strong{margin:7px 0 4px;font-size:1.55rem;line-height:1.1}.cash-total-card>small{color:var(--muted);font-weight:700}.cash-total-card:nth-child(2){border-left-color:#7b55c7}.cash-total-card.cash-physical{border-left-color:#299765}
.cash-overview-seller{grid-template-columns:minmax(280px,420px)}
.cash-method-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:24px}.cash-method-grid article{display:flex;min-width:0;padding:15px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 8px 20px rgba(27,35,45,.05);flex-direction:column}.cash-method-grid span{margin-bottom:7px;color:var(--muted);font-size:.68rem;font-weight:900;text-transform:uppercase}.cash-method-grid strong{font-size:1rem}.cash-method-grid b{margin-top:2px;color:#5d4a98;font-size:.8rem}.cash-method-grid small{margin-top:7px;color:var(--muted)}
.cash-register-card h2,.cash-period-card h2,.cash-movements-card h2{margin:4px 0 6px}.cash-register-card .stock-section-heading p{margin:0;color:var(--muted)}.cash-payment-form{display:grid;grid-template-columns:minmax(260px,2fr) minmax(130px,1fr) minmax(150px,1fr) minmax(130px,1fr) auto;align-items:end;gap:12px;margin-top:20px}.cash-payment-form button{min-height:46px;white-space:nowrap}.cash-empty{margin-top:18px;padding:18px;border-radius:9px;background:#f7f9fa;color:var(--muted)}
.cash-withdrawal-card{display:flex;align-items:center;justify-content:space-between;gap:24px;border-left:5px solid var(--brand-red)}.cash-withdrawal-card h2{margin:4px 0 6px}.cash-withdrawal-card p{max-width:520px;margin:0;color:var(--muted)}.cash-withdrawal-form{display:grid;grid-template-columns:130px 140px minmax(210px,1fr) auto;align-items:end;gap:10px;flex:1;max-width:760px}.cash-withdrawal-form button{min-height:46px;background:var(--brand-red);white-space:nowrap}.cash-withdrawal-row{background:#fff8f8}.cash-negative{color:#a5202f}
.cash-product-card h2{margin:4px 0 6px}.cash-product-card .stock-section-heading p{margin:0;color:var(--muted)}.cash-product-form{display:grid;grid-template-columns:minmax(190px,1.5fr) minmax(120px,.8fr) minmax(145px,1fr) 125px 125px auto;align-items:end;gap:10px;margin-top:20px}.cash-product-form button{min-height:46px;white-space:nowrap}
.cash-period-card{display:flex;align-items:center;justify-content:space-between;gap:24px;border-left:5px solid #299765}.cash-period-card p{margin:0;color:var(--muted)}.cash-period-card form{margin:0}.cash-close-note{max-width:330px;color:var(--muted);font-size:.84rem;font-weight:700;text-align:right}
.cash-movements-card{padding:0;overflow:hidden}.cash-movements-card>.stock-section-heading{padding:24px 28px;border-bottom:1px solid var(--line)}.cash-movements-card .table-wrap{margin:0;border:0;border-radius:0;box-shadow:none}.cash-movements-table{min-width:1050px;table-layout:fixed}.cash-movements-table th,.cash-movements-table td{padding-right:11px;padding-left:11px;white-space:normal;overflow-wrap:anywhere}.cash-movements-table th:nth-child(1){width:145px}.cash-movements-table th:nth-child(2){width:145px}.cash-movements-table th:nth-child(4){width:140px}.cash-movements-table th:nth-child(5){width:120px}.cash-movements-table th:nth-child(6){width:150px}.cash-movements-table th:nth-child(7){width:145px}.cash-movements-table td:nth-child(1),.cash-movements-table td:nth-child(2),.cash-movements-table td:nth-child(6){white-space:nowrap}
.order-stock-panel{margin:20px 0;padding:18px;border:1px solid #cfe2d7;border-left:4px solid #1f9d68;border-radius:10px;background:#f5fbf7}
.order-stock-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.order-stock-heading h3{margin:3px 0 0}.order-stock-heading a,.order-stock-heading button{font-size:.82rem;font-weight:800}
.order-stock-used{display:grid;gap:7px;margin:14px 0}.order-stock-used>span{color:var(--muted);font-size:.85rem}.order-stock-used>div{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:9px 11px;border-radius:8px;background:#fff}.order-stock-used>div span{font-size:.82rem}.order-stock-used>div strong{white-space:nowrap}
.order-stock-message{margin:10px 0;padding:10px 12px;border-radius:8px;font-size:.82rem;font-weight:800}.order-stock-message.is-success{color:#17683b;background:#e5f6ec}.order-stock-message.is-error{color:#a90c22;background:#fdebed}.order-stock-message[hidden]{display:none}
.order-stock-form{display:grid;grid-template-columns:minmax(0,1fr) 90px auto;align-items:end;gap:10px;padding-top:14px;border-top:1px solid #d9e8df}.order-stock-form label{display:flex;flex-direction:column;gap:6px;font-size:.82rem;font-weight:800}.order-stock-form button{min-height:46px}
.order-stock-summary-card{border-left:5px solid #1f9d68}
.delivery-state-form{margin:22px 0 0;padding-top:20px;border-top:1px solid var(--line)}
.delivery-state-form .field-help{margin-top:7px}
.diagnostic-meta{margin:14px 0 0;color:var(--muted);font-size:.86rem}
.terms-settings-form{display:grid;gap:24px}
.terms-settings-card{margin:0}
.terms-settings-card h2{margin:4px 0 14px}
.terms-settings-card .form-note{margin-bottom:20px}
.terms-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.terms-settings-grid label{display:flex;min-width:0;flex-direction:column;gap:8px}
.terms-settings-grid textarea{min-height:190px;line-height:1.5;resize:vertical}
.terms-settings-actions{display:flex;align-items:center;justify-content:flex-end;gap:18px}
.terms-settings-actions small{margin-right:auto;color:var(--muted)}
.diagnostic-empty{
  padding:18px 20px;
  color:var(--muted);
  background:#f7f8f9;
  border:1px dashed #cfd4d9;
  border-radius:9px;
}
.login-page{
  display:grid;
  min-height:100vh;
  place-items:center;
  padding:24px;
  background:
    radial-gradient(circle at 12% 18%,rgba(64,195,245,.14),transparent 26%),
    radial-gradient(circle at 92% 84%,rgba(254,178,50,.16),transparent 24%),
    #f7f7f8;
}
.login-shell{
  display:grid;
  grid-template-columns:minmax(280px,.9fr) minmax(360px,1.1fr);
  width:min(920px,100%);
  min-height:560px;
  overflow:hidden;
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  box-shadow:0 24px 70px rgba(27,35,45,.13);
}
.login-brand{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:48px;
  overflow:hidden;
  background:var(--ink);
  color:#fff;
}
.login-brand::before,.login-brand::after{content:"";position:absolute;border-radius:50%;opacity:.9}
.login-brand::before{right:-66px;top:-48px;width:190px;height:190px;background:var(--brand-blue)}
.login-brand::after{right:52px;bottom:-78px;width:180px;height:180px;background:var(--brand-red)}
.login-brand .brand{position:relative;z-index:1;color:#fff}
.login-brand .brand img[src*="nova-logo.png"]{width:150px;height:68px}
.login-brand .brand-copy small{color:#c9cdd1}
.login-brand-message{position:relative;z-index:1}
.login-brand-message h2{max-width:340px;margin-bottom:12px;font-size:2.2rem;line-height:1.1;letter-spacing:-.04em}
.login-brand-message p{max-width:330px;margin:0;color:#c9cdd1}
.login-card{
  align-self:center;
  width:100%;
  margin:0;
  padding:52px;
  border:0;
  box-shadow:none;
}
.login-card h1{margin-bottom:8px;font-size:2.2rem}
.login-card>p{color:var(--muted)}
.login-card form{display:grid;gap:17px;margin:28px 0 18px}
.login-card button{width:100%}
.login-card small{color:var(--muted)}

body.drawer-open{overflow:hidden}
.technician-workspace{margin-top:30px}
.workshop-search{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:12px;padding:16px 18px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 10px 28px rgba(27,35,45,.06)}
.workshop-search label{display:grid;flex:1;gap:7px;margin:0;color:var(--ink);font-weight:800}
.workshop-search input{width:100%;margin:0;background:#f8fafb}
.workshop-search-count{flex:0 0 auto;padding:9px 12px;color:var(--brand-blue);background:#e8f4fb;border-radius:999px;font-size:.82rem;font-weight:800}
.workshop-search-empty{margin-bottom:12px;background:#fff;border:1px solid var(--line);border-radius:14px}
.workshop-item[hidden],.workshop-search-empty[hidden]{display:none!important}
.workshop-list{
  display:grid;
  gap:0;
  overflow:hidden;
  background:#fff;
  border:1px solid var(--line);
  border-radius:16px;
  box-shadow:0 18px 45px rgba(27,35,45,.08);
}
.workshop-item{
  display:grid;
  grid-template-columns:minmax(210px,1.3fr) minmax(180px,1fr) auto 24px;
  align-items:center;
  gap:20px;
  width:100%;
  padding:20px 22px;
  text-align:left;
  color:var(--ink);
  background:#fff;
  border:0;
  border-bottom:1px solid var(--line);
  border-radius:0;
  box-shadow:none;
}
.workshop-item:last-child{border-bottom:0}
.workshop-item:hover{
  color:var(--ink);
  background:#f5faff;
  transform:none;
}
.workshop-item-main,.workshop-item-equipment{display:flex;flex-direction:column;gap:4px}
.workshop-item-main strong{font-size:1.05rem}
.workshop-item small{color:var(--muted);font-size:.85rem;font-weight:500}
.workshop-warranty-badge{
  align-self:flex-start;
  margin:3px 0 2px;
  padding:6px 11px;
  color:#a80d24;
  background:#fdebed;
  border:1px solid #f4bcc5;
  border-radius:999px;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.08em;
  line-height:1;
  text-transform:uppercase;
}
.workshop-item-statuses{display:grid;gap:6px;justify-items:start}
.workshop-status-row{display:flex;align-items:center;gap:8px}
.workshop-status-row>small{min-width:58px;font-size:.68rem;font-weight:800;text-transform:uppercase}
.workshop-item .status{
  justify-self:start;
  padding:7px 11px;
  color:#75520b;
  background:#fff2d4;
  border-radius:999px;
  font-size:.76rem;
  font-weight:800;
}
.workshop-item .status-presupuestado{color:#075f98;background:#e8f4fb}
.workshop-item .status-recotizar{color:#9a3f00;background:#fff0dc}
.workshop-item .status-confirmado{color:#25643c;background:#e8f6ed}
.workshop-item .status-pending{color:#075f98;background:#e8f4fb}
.workshop-item .status-accepted{color:#1f6b3d;background:#e8f6ed}
.workshop-item .status-rejected{color:#b20f25;background:#fdebed}
.workshop-item-arrow{color:var(--brand-blue);font-size:2rem;font-weight:400;line-height:1}
.empty-workshop{display:flex;flex-direction:column;gap:7px;padding:34px;text-align:center}
.empty-workshop span{color:var(--muted)}
.drawer-overlay{
  position:fixed;
  z-index:40;
  inset:0;
  background:rgba(18,25,33,.42);
  backdrop-filter:blur(2px);
}
.technician-drawer{
  position:fixed;
  z-index:50;
  top:0;
  right:0;
  width:min(500px,100%);
  height:100vh;
  overflow-y:auto;
  color:var(--ink);
  background:#fff;
  box-shadow:-18px 0 55px rgba(21,29,38,.2);
  transform:translateX(105%);
  transition:transform .25s ease;
}
.technician-drawer.open{transform:translateX(0)}
.drawer-header{
  position:sticky;
  z-index:2;
  top:0;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  padding:25px 28px 20px;
  background:#fff;
  border-bottom:1px solid var(--line);
}
.drawer-header h2{margin:4px 0 0;font-size:1.65rem}
.drawer-close{
  display:grid;
  place-items:center;
  flex:0 0 38px;
  width:38px;
  height:38px;
  padding:0;
  color:var(--muted);
  background:#f0f3f5;
  border-radius:50%;
  font-size:1.7rem;
  font-weight:400;
  line-height:1;
}
.drawer-close:hover{color:var(--ink);background:#e3e9ed;transform:none}
.drawer-content{padding:25px 28px 40px}
.drawer-loading{padding:35px 0;color:var(--muted);text-align:center}
.drawer-details{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1px;
  margin:0 0 25px;
  overflow:hidden;
  background:var(--line);
  border:1px solid var(--line);
  border-radius:12px;
}
.drawer-detail{min-width:0;padding:13px 15px;background:#fff}
.drawer-detail-wide{grid-column:1/-1}
.drawer-detail dt{
  margin-bottom:4px;
  color:var(--muted);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.drawer-detail dd{margin:0;overflow-wrap:anywhere;font-weight:600;white-space:pre-wrap}
.drawer-form{
  display:grid;
  gap:10px;
  padding:20px;
  background:#f5f9fc;
  border-left:4px solid var(--brand-blue);
  border-radius:10px;
}
.drawer-form label{font-size:1.05rem}
.drawer-form textarea{min-height:150px;background:#fff}
.money-input{position:relative}
.money-input span{
  position:absolute;
  z-index:1;
  top:50%;
  left:14px;
  color:var(--muted);
  font-weight:800;
  transform:translateY(-50%);
}
.money-input input{padding-left:34px;background:#fff}
.drawer-form button{justify-self:start;margin-top:4px}
.drawer-state-fields{
  display:grid;
  gap:10px;
  margin-top:8px;
  padding:16px;
  background:#fff8e9;
  border-left:4px solid var(--brand-yellow);
  border-radius:10px;
}
.digital-key-notice{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:0 0 20px;
  padding:16px 18px;
  background:#edf8ff;
  border:1px solid #9fd5f2;
  border-left:4px solid var(--brand-blue);
  border-radius:10px;
}
.digital-key-notice[hidden]{display:none}
.digital-key-notice>div{display:grid;gap:4px}
.digital-key-notice .eyebrow{margin:0;font-size:.65rem}
.digital-key-notice small{color:var(--muted)}
.digital-key-notice button{flex:0 0 auto;padding:9px 12px;font-size:.78rem}
.digital-key-dialog,.digital-key-stock-dialog,.digital-key-assign-dialog{
  width:min(680px,calc(100% - 32px));
  max-height:88vh;
  padding:0;
  overflow:hidden;
  color:var(--ink);
  background:#fff;
  border:0;
  border-radius:16px;
  box-shadow:0 28px 80px rgba(15,25,35,.28);
}
.digital-key-dialog::backdrop,.digital-key-stock-dialog::backdrop,.digital-key-assign-dialog::backdrop{background:rgba(18,25,33,.58);backdrop-filter:blur(2px)}
.digital-key-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px;border-bottom:1px solid var(--line)}
.digital-key-dialog-header h2{margin:0}
.digital-key-dialog-header .eyebrow{margin-bottom:5px}
.digital-key-dialog-header>button{display:grid;place-items:center;width:38px;height:38px;padding:0;color:var(--muted);background:#edf1f4;border-radius:50%;font-size:1.5rem}
.order-stock-dialog{width:min(780px,calc(100% - 32px))}
.order-stock-create-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:0;padding:22px 24px 26px;border:0;border-radius:0;box-shadow:none;overflow-y:auto;max-height:calc(88vh - 92px)}
.order-stock-create-form label{display:grid;gap:7px;margin:0;font-weight:800}.order-stock-create-form .full{grid-column:1/-1}.order-stock-create-form textarea{background:#fff}
.digital-key-dialog-content{display:grid;gap:14px;max-height:calc(88vh - 92px);padding:20px 24px 26px;overflow-y:auto}
.admin-state-form{display:grid;gap:16px}
.admin-state-reset-warning{display:grid;gap:5px;padding:14px 16px;color:#7a4800;background:#fff5df;border:1px solid #f2d79e;border-left:5px solid var(--brand-yellow);border-radius:9px}
.admin-state-reset-warning[hidden]{display:none}
.admin-state-reset-warning span{font-size:.84rem;line-height:1.45}
.admin-state-dialog .actions{margin-top:2px}
.abandonment-dialog{width:min(720px,calc(100% - 32px))}
.abandonment-form{display:grid;gap:16px}
.abandonment-form label{display:grid;gap:8px;font-weight:800}
.abandonment-form label small{color:var(--muted);font-size:.78rem;font-weight:600}
.abandonment-form input[type="file"]{padding:12px;background:#f7fafc;border:1px dashed #aebdca;border-radius:9px}
.abandonment-warning{display:grid;gap:4px;padding:14px 16px;color:#7a4800;background:#fff5df;border:1px solid #f2d79e;border-left:5px solid var(--brand-yellow);border-radius:9px}
.abandonment-warning span{font-size:.84rem;line-height:1.45}
.abandonment-form .actions{margin-top:2px}
.abandonment-evidence-card{border-left:5px solid var(--brand-yellow)}
.abandonment-evidence-card>p{color:var(--muted)}
.abandonment-evidence-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.abandonment-evidence-dialog{width:min(1080px,calc(100% - 32px));max-height:94vh}
.abandonment-evidence-dialog-content{display:grid;gap:16px;max-height:calc(94vh - 92px);padding:20px 24px 24px;overflow:auto;background:#f3f6f8}
.abandonment-evidence-dialog-content img{display:block;max-width:100%;max-height:calc(94vh - 190px);margin:auto;border-radius:10px;box-shadow:0 8px 28px rgba(15,25,35,.18);object-fit:contain}
.abandonment-evidence-dialog-content img[hidden]{display:none}
.abandonment-evidence-loading{display:grid;min-height:280px;place-items:center;color:var(--muted);font-weight:800}
.abandonment-evidence-dialog-content .actions{justify-content:flex-end;margin:0}
.digital-key-dialog-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:16px;background:#f7fafc;border:1px solid var(--line);border-radius:12px}
.digital-key-dialog-card h3{grid-column:1/-1;margin:0 0 3px;color:var(--brand-blue)}
.digital-key-dialog-field{display:grid;gap:4px;padding:10px;background:#fff;border:1px solid #d7dfe5;border-radius:7px}
.digital-key-dialog-field span{color:var(--muted);font-size:.68rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.digital-key-dialog-field strong,.digital-key-dialog-field code{overflow-wrap:anywhere;font-size:.86rem}
.digital-key-dialog-key{grid-column:1/-1;border-left:4px solid var(--brand-yellow)}
.digital-key-dialog-key code{font-size:.95rem;font-weight:800;user-select:all}
.digital-keys-page{width:min(1380px,100%)}
.digital-key-form-card,.digital-key-list-card{margin-bottom:24px}
.digital-key-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}
.digital-key-section-heading h2{margin:0}
.digital-key-section-heading .eyebrow{margin-bottom:5px}
.permission-note{max-width:360px;padding:8px 11px;color:#76510a;background:#fff4d9;border-radius:8px;font-size:.78rem;font-weight:700}
.digital-key-form textarea{min-height:88px;resize:vertical}
.digital-key-search{display:grid;grid-template-columns:repeat(3,minmax(170px,1fr)) auto;gap:12px;align-items:end;margin:0 0 18px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#f8fbfd}
.digital-key-search label{display:grid;gap:6px;font-size:.78rem;font-weight:800;color:#3d4856}
.digital-key-search input{width:100%;min-height:42px;padding:9px 11px;border:1px solid #cbd5df;border-radius:9px;background:#fff}
.digital-key-search-actions{display:flex;gap:8px;align-items:center}
.digital-key-search-actions button,.digital-key-search-actions .button-link{min-height:42px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}
.digital-key-table{min-width:1180px}
.digital-key-table th,.digital-key-table td{padding:12px 10px;white-space:normal;vertical-align:top}
.digital-key-table code{overflow-wrap:anywhere;font-family:Consolas,"Courier New",monospace;font-size:.78rem}
.digital-key-details summary{color:var(--brand-blue);font-size:.8rem;font-weight:800;cursor:pointer}
.digital-key-details code{display:block;margin-top:7px;padding:8px;color:var(--ink);background:#fff8e9;border-radius:6px;white-space:pre-wrap;overflow-wrap:anywhere;user-select:all}
.digital-key-stock-badge{background:#e8f7ed;color:#287346}
.digital-key-use-button{margin-top:12px;width:100%;background:#287346}
.digital-key-use-button:disabled{cursor:wait;opacity:.65}
.digital-key-stock-open{display:inline-flex;align-items:center;gap:9px;background:#287346}
.digital-key-stock-open span{display:grid;place-items:center;min-width:24px;height:24px;padding:0 7px;color:#287346;background:#fff;border-radius:999px;font-size:.76rem}
.digital-key-stock-dialog{width:min(1050px,calc(100% - 32px));overflow:auto}
.digital-key-stock-dialog .table-wrap{max-height:calc(88vh - 92px);padding:18px 22px 24px;overflow:auto}
.digital-key-stock-dialog .digital-key-table{min-width:760px}
.digital-key-assign-dialog{width:min(760px,calc(100% - 32px));overflow:auto}
.digital-key-assign-dialog form{margin:0;padding:22px 24px 26px;border:0;border-radius:0;box-shadow:none}
.digital-key-assign-dialog input[readonly]{color:var(--muted);background:#edf1f4}
.optional-field::after{content:'Opcional para stock';color:var(--muted);font-size:.68rem;font-weight:600}
.digital-key-empty{padding:30px!important;color:var(--muted);text-align:center}
.digital-key-table .table-actions{align-items:flex-start;gap:7px}
.digital-key-table .danger-button{min-height:0;padding:4px 8px;font-size:.74rem}

.liquidation-page{padding-bottom:60px}
.liquidation-heading{align-items:flex-end}
.liquidation-month-form{display:flex;align-items:center;gap:9px;padding:12px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:var(--shadow)}
.liquidation-month-form label{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.liquidation-month-form input{min-width:170px;padding:10px 12px}
.liquidation-month-form button{padding:11px 16px}
.liquidation-month-form a{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#eef4f8;color:var(--ink);font-size:1.6rem;font-weight:800;text-decoration:none}
.liquidation-period{display:flex;align-items:center;gap:12px;margin-bottom:22px;padding:14px 18px;border-left:5px solid var(--brand-blue);border-radius:10px;background:#eef7fc}
.liquidation-period span{color:var(--muted);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.liquidation-period strong{font-size:1.12rem}
.liquidation-period small{margin-left:auto;color:var(--muted)}
.liquidation-main-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.liquidation-block{padding:24px;border-top:4px solid var(--brand-blue)}
.liquidation-block.expense-block{border-top-color:#f0aa21}
.liquidation-block-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}
.liquidation-block-heading h2{margin:3px 0 0}
.liquidation-block-heading>a{font-weight:800;text-decoration:none}
.liquidation-count{padding:6px 10px;border-radius:999px;background:#edf7f1;color:#287346;font-size:.75rem;font-weight:800;white-space:nowrap}
.liquidation-money-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.liquidation-money-grid>div{padding:16px;border:1px solid var(--line);border-radius:12px;background:#f9fbfc}
.liquidation-money-grid span{display:block;margin-bottom:7px;color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.liquidation-money-grid strong{font-size:1.22rem}
.liquidation-cost-block{margin-top:22px;padding:24px;border-top:4px solid #7652b8}
.liquidation-cost-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.liquidation-cost-grid>div{padding:13px;border:1px solid var(--line);border-radius:10px;background:#f9fbfc}
.liquidation-cost-grid span{display:block;margin-bottom:5px;color:var(--muted);font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.liquidation-cost-grid strong{font-size:.95rem}
.liquidation-vat-estimate{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:12px;padding:12px 14px;border-radius:10px;background:#eef7fc}
.liquidation-vat-estimate span{color:var(--muted);font-size:.78rem;font-weight:800}
.liquidation-cost-warning{margin:12px 0 0;padding:11px 13px;border-left:4px solid #f0aa21;border-radius:8px;background:#fff8e9;color:#6d5a31;font-size:.82rem}
.liquidation-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}
.liquidation-metrics div{display:flex;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--line)}
.liquidation-metrics dt{color:var(--muted)}
.liquidation-metrics dd{margin:0;font-weight:800}
.liquidation-detail-link{display:inline-block;margin-top:8px;font-weight:800;text-decoration:none}
.expense-category-list{max-height:154px;margin-top:14px;overflow:auto;border-top:1px solid var(--line)}
.expense-category-list div{display:flex;justify-content:space-between;gap:12px;padding:9px 4px;border-bottom:1px solid var(--line);font-size:.86rem}
.expense-category-list strong{white-space:nowrap}
.liquidation-empty{margin:18px 0 0;padding:18px;border:1px dashed var(--line);border-radius:10px;color:var(--muted);text-align:center}
.liquidation-balance{display:grid;grid-template-columns:1.15fr 1fr 1fr;align-items:center;gap:18px;margin:22px 0;padding:22px 26px;border-radius:16px;color:#fff;box-shadow:var(--shadow)}
.liquidation-balance.positive{background:linear-gradient(120deg,#16764b,#299f6c)}
.liquidation-balance.negative{background:linear-gradient(120deg,#9f1725,#cf2637)}
.liquidation-balance div{display:flex;flex-direction:column;gap:5px}
.liquidation-balance span{font-size:.72rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;opacity:.82}
.liquidation-balance strong{font-size:1.35rem}
.liquidation-balance small{grid-column:1/-1;opacity:.82}
.expense-entry,.expense-list-card{margin-top:22px;padding:24px}
.expense-form{display:grid;grid-template-columns:1fr 1.4fr .7fr 1fr;gap:14px}
.expense-form label{display:flex;flex-direction:column;gap:7px;font-weight:800}
.expense-form input,.expense-form select{width:100%}
.expense-form .expense-wide{grid-column:span 2}
.expense-submit{display:flex;align-items:flex-end}
.expense-submit button{width:100%}
.expense-table{width:100%;min-width:0;table-layout:fixed}
.expense-col-date{width:8%}
.expense-col-category{width:10%}
.expense-col-detail{width:12%}
.expense-col-receipt{width:13%}
.expense-col-amount{width:12%}
.expense-col-status{width:10%}
.expense-col-user{width:13%}
.expense-col-actions{width:22%}
.expense-table th,.expense-table td{padding:12px 10px;white-space:normal;vertical-align:middle}
.expense-amount{font-weight:800;white-space:nowrap!important}
.expense-status{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:.72rem;font-weight:800;white-space:nowrap}
.expense-status.pending{background:#fff3d7;color:#8a5a00}
.expense-status.paid{background:#e5f6ec;color:#187344}
.expense-payment-meta{display:block;margin-top:4px;color:var(--muted);font-size:.66rem;white-space:nowrap}
.expense-actions{display:flex;align-items:center;justify-content:flex-start;gap:6px;white-space:nowrap}
.expense-actions>a{font-weight:800;text-decoration:none}
.expense-actions details{position:relative}
.expense-actions summary{cursor:pointer;color:#a40f20;font-weight:800;list-style:none}
.expense-actions .expense-pay summary{color:#187344}
.expense-actions summary::-webkit-details-marker{display:none}
.expense-actions details form{position:absolute;z-index:20;right:0;top:28px;padding:8px;border:1px solid #efc4c9;border-radius:10px;background:#fff;box-shadow:var(--shadow)}
.expense-actions .expense-pay form{border-color:#b9dfc8}
.expense-actions .expense-pay button{min-height:34px;padding:7px 10px;background:#187344;white-space:nowrap}
.expense-actions .danger-button{min-height:34px;padding:7px 10px;white-space:nowrap}
.expense-locked{color:var(--muted);font-size:.78rem;font-weight:800}
.liquidation-note{margin:22px 0 0;padding:14px 18px;border-left:4px solid #f0aa21;border-radius:8px;background:#fff8e9;color:#6d5a31;font-size:.86rem}

@media (max-width:1000px){
  .liquidation-heading{align-items:flex-start}
  .liquidation-month-form{flex-wrap:wrap}
  .liquidation-main-grid{grid-template-columns:1fr}
  .expense-form{grid-template-columns:1fr 1fr}
  .liquidation-balance{grid-template-columns:1fr 1fr}
  .liquidation-balance>div:first-child{grid-column:1/-1}
  .liquidation-cost-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:640px){
  .liquidation-month-form{width:100%}
  .liquidation-month-form input{flex:1;min-width:140px}
  .liquidation-period{align-items:flex-start;flex-direction:column}
  .liquidation-period small{margin-left:0}
  .liquidation-money-grid,.expense-form,.liquidation-balance{grid-template-columns:1fr}
  .liquidation-cost-grid{grid-template-columns:1fr}
  .liquidation-vat-estimate{align-items:flex-start;flex-direction:column}
  .expense-form .expense-wide,.liquidation-balance>div:first-child{grid-column:auto}
}
.client-lookup-field{position:relative}
.client-lookup-field>small{color:var(--muted);font-size:.72rem;font-weight:600}
.client-lookup-results{position:absolute;z-index:20;top:100%;right:0;left:0;display:grid;max-height:300px;margin-top:6px;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 18px 45px rgba(15,25,35,.2)}
.client-lookup-results[hidden]{display:none}
.client-lookup-option{display:grid;gap:3px;width:100%;padding:11px 13px;color:var(--ink);background:#fff;border:0;border-bottom:1px solid var(--line);border-radius:0;text-align:left}
.client-lookup-option:last-child{border-bottom:0}
.client-lookup-option:hover,.client-lookup-option:focus{background:#edf8ff}
.client-lookup-option strong{font-size:.86rem}
.client-lookup-option small{color:var(--muted);font-size:.72rem}

@media(max-width:1800px) and (min-width:781px){
  .topbar nav{gap:10px}
  .topbar nav a{min-height:38px;padding:8px 10px;font-size:.8rem}
}

@media(max-width:1050px){
  .stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .report-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .digital-key-search{grid-template-columns:repeat(2,minmax(170px,1fr))}
  .expense-table{min-width:1000px}
  .users-table-wrap{overflow-x:auto}
  .users-table{min-width:900px}
  .cash-initial-card{align-items:stretch;flex-direction:column}
  .cash-initial-editor{min-width:0}.cash-initial-editor>summary{margin-left:0}
  .cash-initial-form{grid-template-columns:1fr 1fr auto}
  .cash-method-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .cash-payment-form{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cash-order-field{grid-column:1/-1}
  .cash-product-form{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cash-product-name{grid-column:1/-1}
  .cash-withdrawal-card{align-items:stretch;flex-direction:column}
  .cash-withdrawal-form{grid-template-columns:1fr 1fr;max-width:none}
  .cash-withdrawal-reason{grid-column:1/-1}
}

@media(max-width:780px){
  .topbar{position:static;display:flex;align-items:flex-start;gap:16px;flex-direction:column;padding:15px 20px}
  .topbar nav{position:static;left:auto;width:100%;overflow-x:auto;transform:none}
  .topbar nav a{white-space:nowrap}
  .topbar-exit{position:absolute;top:22px;right:20px}
  .container{padding:30px 18px 55px}
  .page-heading{align-items:flex-start;flex-direction:column}
  .dashboard-list-heading{align-items:flex-start;flex-direction:column}
  .dashboard-list-heading-tools{width:100%;align-items:flex-start;justify-content:flex-start;flex-direction:column;gap:10px}
  .dashboard-list-search{width:100%}
  .cash-month-form{width:100%;align-items:stretch;flex-wrap:wrap}.cash-month-form label{flex:1}.cash-month-form input{width:100%}
  .cash-overview{grid-template-columns:1fr}
  .cash-initial-form{grid-template-columns:1fr}
  .cash-method-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cash-payment-form{grid-template-columns:1fr}
  .cash-order-field{grid-column:auto}
  .cash-product-form{grid-template-columns:1fr}
  .cash-product-name{grid-column:auto}
  .cash-withdrawal-form{grid-template-columns:1fr}
  .cash-withdrawal-reason{grid-column:auto}
  .cash-period-card{align-items:stretch;flex-direction:column}
  .cash-close-note{text-align:left}
  .dashboard-list-table{overflow-x:auto}
  .accounting-monthly-heading{align-items:stretch;flex-direction:column;padding:20px}
  .accounting-monthly-controls{align-items:stretch;justify-content:flex-start;flex-direction:column}
  .accounting-month-form{flex-wrap:wrap}
  .registry-overview{width:100%}
  .registry-counter{flex:1 1 145px;min-width:0}
  .order-search-row{align-items:stretch;flex-direction:column}
  .order-search-row .search{flex-basis:auto;width:100%;max-width:none}
  .grouped-clients-link{width:100%}
  .equipment-exit-card{align-items:flex-start;flex-direction:column}
  .stats{grid-template-columns:1fr}
  .stat{min-height:145px}
  .stat-filter{min-height:145px}
  .form-grid{grid-template-columns:1fr}
  .new-order-reference{grid-template-columns:1fr}
  .order-detail-grid{grid-template-columns:1fr;padding:16px 20px}
  .order-detail-wide{grid-column:auto}
  .order-summary-heading{align-items:flex-start;padding:18px 20px}
  .order-summary-card .ticket-state-form{padding:0 20px 20px}
  .company-fields{grid-template-columns:1fr}
  .sale-fields{grid-template-columns:1fr}
  .payment-summary{grid-template-columns:1fr}
  .accounting-breakdown{grid-template-columns:1fr}
  .accounting-equation{grid-template-columns:1fr;text-align:center}
  .accounting-equation>b{line-height:1}
  .service-detail-grid{grid-template-columns:1fr}
  .login-shell{grid-template-columns:1fr;max-width:520px}
  .login-brand{min-height:230px;padding:34px}
  .login-brand-message h2{font-size:1.75rem}
  .login-card{padding:34px}
  .signature-row{padding-top:32px}
  .physical-signature{width:100%}
  .workshop-search{align-items:stretch;flex-direction:column}
  .workshop-search-count{align-self:flex-start}
  .workshop-item{grid-template-columns:1fr auto;gap:12px}
  .workshop-item-equipment{grid-column:1}
  .workshop-item-statuses{grid-column:2;grid-row:1/span 2}
  .workshop-item-arrow{grid-column:2;grid-row:2}
  .notification-item{grid-template-columns:10px 1fr auto}
  .notification-open{display:none}
  .report-toolbar{align-items:stretch;flex-direction:column}
  .report-period-controls{align-items:stretch;flex-direction:column}
  .report-day-picker{display:grid;grid-template-columns:1fr auto;padding:12px 0 0;border-top:1px solid var(--line);border-left:0}
  .report-day-picker label{grid-column:1/-1}
  .report-day-picker input{width:100%}
  .report-filter{align-items:stretch;flex-direction:column}
  .report-filter select{width:100%;min-width:0}
  .payment-form{grid-template-columns:1fr}
  .payment-form button{width:100%}
  .historical-cost-form{grid-template-columns:1fr}
  .historical-cost-form button{width:100%}
  .stock-stats{grid-template-columns:1fr}
  .stock-search{grid-template-columns:1fr}
  .stock-section-heading{flex-direction:column}
  .order-stock-form{grid-template-columns:1fr}
  .order-stock-heading{align-items:stretch;flex-direction:column}
  .order-stock-create-form{grid-template-columns:1fr}
  .order-stock-create-form .full{grid-column:auto}
  .terms-settings-grid{grid-template-columns:1fr}
  .digital-key-search{grid-template-columns:1fr}
  .digital-key-search-actions{align-items:stretch}
  .digital-key-search-actions button,.digital-key-search-actions .button-link{flex:1}
}

@media(max-width:520px){
  h1{font-size:2rem}
  .card{padding:22px}
  .accounting-monthly-orders{padding:0}
  .accounting-month-totals{display:grid;grid-template-columns:1fr}
  .accounting-month-totals>div{min-width:0}
  .accounting-month-form{align-items:stretch;flex-direction:column}
  .accounting-month-form input{width:100%}
  .brand-copy small{display:none}
  .topbar nav{gap:2px}
  .topbar nav a{padding:9px 10px;font-size:.82rem}
  .search,.inline{align-items:stretch;flex-direction:column}
  .inline select{max-width:none}
  .actions{align-items:stretch;flex-direction:column}
  .login-page{padding:12px}
  .login-brand{min-height:205px;padding:28px}
  .login-card{padding:28px}
  .drawer-header,.drawer-content{padding-left:20px;padding-right:20px}
  .drawer-details{grid-template-columns:1fr}
  .drawer-detail-wide{grid-column:auto}
  .dashboard-list-heading{align-items:flex-start;flex-direction:column}
  .origin-counters{grid-template-columns:1fr}
  .origin-filter-summary{align-items:stretch;flex-direction:column}
  .cash-method-grid{grid-template-columns:1fr}
  .notification-item{grid-template-columns:10px 1fr}
  .notification-cost{grid-column:2;align-items:flex-start;margin-top:5px}
  .report-tabs{display:grid;grid-template-columns:repeat(3,1fr)}
  .report-tabs a{text-align:center}
  .report-day-picker{grid-template-columns:1fr}
  .report-day-picker label{grid-column:auto}
  .report-summary{grid-template-columns:1fr}
  .terms-settings-actions{align-items:stretch;flex-direction:column}
  .terms-settings-actions button{width:100%}
  .digital-key-notice{align-items:stretch;flex-direction:column}
  .digital-key-notice button{width:100%}
  .digital-key-dialog-card{grid-template-columns:1fr}
  .digital-key-dialog-card h3,.digital-key-dialog-key{grid-column:auto}
  .digital-key-section-heading{align-items:stretch;flex-direction:column}
}
