*{box-sizing:border-box}body{margin:0;background:#eef3f7;font-family:Inter,Segoe UI,Arial,Helvetica,sans-serif;color:#142033}.app-shell{min-height:100vh;background:radial-gradient(circle at 15% 0%,rgba(27,224,232,.08),transparent 28%),#eef3f7}.topbar{min-height:108px;padding:14px 34px;display:flex;align-items:center;gap:25px;background:linear-gradient(110deg,#07141f 0%,#0c2733 58%,#063b48 100%);color:#fff;box-shadow:0 6px 24px rgba(2,20,30,.18);position:relative;overflow:hidden}.topbar:after{content:"";position:absolute;right:-90px;top:-120px;width:360px;height:360px;border:1px solid rgba(42,229,232,.18);border-radius:50%}.brand{display:flex;align-items:center;gap:16px;min-width:0}.brand-logo{width:78px;height:78px;object-fit:cover;border-radius:18px;box-shadow:0 0 24px rgba(21,225,232,.25);background:#07141f}.brand-text{min-width:0}.eyebrow,.modal-kicker{font-size:10px;letter-spacing:2px;font-weight:800;color:#25dfe4}.brand-text h1{margin:2px 0 4px;font-size:25px;letter-spacing:.3px}.brand-text p{margin:0;color:#b9c9d2;font-size:13px}.top-actions{margin-left:auto;display:flex;align-items:center;gap:12px;position:relative;z-index:2}.api-status{display:flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.06);font-size:11px;font-weight:800;color:#d7f9fa}.status-dot{width:8px;height:8px;border-radius:50%;background:#25d88d;box-shadow:0 0 10px #25d88d}.config-btn{background:linear-gradient(135deg,#1bdde4,#08aab8);box-shadow:0 8px 20px rgba(0,184,197,.2)}.container{max-width:1320px;margin:0 auto;padding:22px}.hero-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;margin-bottom:16px;border-radius:16px;background:linear-gradient(135deg,#ffffff,#f7fbfc);border:1px solid #dce7ed;box-shadow:0 5px 18px rgba(16,38,53,.06)}.hero-kicker{font-size:10px;font-weight:800;letter-spacing:1.8px;color:#0aaab5}.hero-strip h2{margin:5px 0 4px;font-size:22px}.hero-strip p{margin:0;color:#64748b;font-size:13px}.hero-badge{padding:12px 18px;border-radius:12px;background:#e9fbfc;color:#078c98;font-size:12px;font-weight:900;white-space:nowrap}.card{background:#fff;border:1px solid #dce5eb;border-radius:16px;padding:20px;margin-bottom:16px;box-shadow:0 4px 18px rgba(15,35,48,.055)}.section-title,.table-title{display:flex;align-items:center;gap:12px;margin-bottom:16px}.title-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#e8fbfc}.section-title h3,.table-title h3{margin:0;font-size:16px}.section-title p,.table-title span{margin:3px 0 0;color:#748397;font-size:12px}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}label{display:flex;flex-direction:column;gap:7px;font-weight:750;font-size:12px;color:#344054}input,select{height:42px;border:1px solid #cfd9e2;border-radius:9px;padding:0 11px;font-size:14px;background:#fff;color:#172033;outline:none;transition:.18s}input:focus,select:focus{border-color:#13cbd4;box-shadow:0 0 0 3px rgba(19,203,212,.1)}button{border:0;border-radius:9px;padding:11px 16px;background:linear-gradient(135deg,#132332,#1b3445);color:#fff;font-weight:800;cursor:pointer;transition:.18s;box-shadow:0 3px 8px rgba(10,25,38,.1)}button:hover{transform:translateY(-1px);filter:brightness(1.04)}button:disabled{opacity:.6;cursor:not-allowed;transform:none}.secondary{background:#edf2f6;color:#243447;box-shadow:none}.actions{display:flex;gap:9px;margin-top:16px;flex-wrap:wrap}.toolbar{border-top:1px solid #edf1f4;padding-top:15px}.table-title{justify-content:space-between}.hint{padding:8px 11px;border-radius:9px;background:#f1f7f9;color:#557080;font-size:11px;font-weight:700}.table-wrap{overflow:auto;border:1px solid #e3eaf0;border-radius:11px}table{width:100%;border-collapse:collapse;min-width:780px}th,td{padding:12px 11px;border-bottom:1px solid #e7edf1;text-align:left;font-size:13px}th{background:#f2f6f8;color:#3d4c5c;font-size:11px;letter-spacing:.4px}tbody tr:last-child td{border-bottom:0}.check-col{width:44px;text-align:center}td input{height:17px;width:17px;accent-color:#12cbd4}.clickable-row{cursor:pointer;transition:.15s}.clickable-row:hover{background:#f3fbfc}.model-link{color:#078c98;font-weight:800;cursor:pointer}.pager{display:flex;justify-content:center;align-items:center;gap:15px;padding-top:14px;color:#5b6b7c;font-size:12px;font-weight:700}.summary-grid{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:14px;margin-bottom:16px}.stat-card{background:#fff;border:1px solid #dce5eb;border-radius:16px;padding:16px 18px;display:flex;align-items:center;gap:13px;box-shadow:0 4px 18px rgba(15,35,48,.055)}.stat-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-size:19px;font-weight:900}.stat-icon.blue{background:#eaf2ff;color:#2d6cdf}.stat-icon.teal{background:#e7fbfc;color:#08a9b5}.stat-card span{font-size:10px;color:#748397;font-weight:900;letter-spacing:.5px}.stat-card strong{display:block;font-size:23px;margin-top:3px}.action-stat{justify-content:space-between}.action-stat strong{font-size:17px}.action-stat button{background:linear-gradient(135deg,#0e6f7a,#10cbd4)}.hidden{display:none!important}.modal.hidden{display:none!important}.modal{position:fixed;inset:0;background:rgba(3,15,24,.62);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:20px;z-index:50}.modalBox{background:#fff;width:min(560px,100%);border-radius:18px;padding:24px;border:1px solid #dce7ed;box-shadow:0 25px 70px rgba(0,0,0,.25)}.modalBox h2{margin:3px 0 6px}.modalBox label{margin:13px 0}.modalBox input{width:100%}.romHeader{display:flex;align-items:center;gap:15px;margin-bottom:14px}.romHeader h2{margin:0}.section-sub{margin:3px 0 0;color:#748397;font-size:12px}.romHeader>div:first-child{margin-right:auto}.check{display:flex;flex-direction:row;align-items:center;gap:7px}.check input{height:17px;width:17px}.right{text-align:right}.ok{color:#078a55;font-weight:800;margin-top:10px}.error{color:#b42318;font-weight:800;margin-top:10px}.muted{color:#667085;font-size:13px}.tokenRow{display:flex;gap:8px;align-items:stretch}.tokenRow input{flex:1;min-width:0}.eyeBtn{min-width:48px;padding:0 12px}.productsModal .modalBox{width:min(1050px,94vw);max-height:88vh;overflow:auto}.products-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:14px}.products-head h2{margin:3px 0}.products-meta{font-size:13px;color:#475569}.products-table td,.products-table th{padding:9px 10px}.products-total{margin-top:12px;padding:12px;border-radius:10px;background:#f2f7f9;font-size:14px;font-weight:800;color:#17303c}.products-loading{padding:24px;text-align:center;color:#475569}.loginBox{max-width:440px}
@media(max-width:900px){.topbar{padding:12px 18px}.api-status{display:none}.grid{grid-template-columns:1fr 1fr}.summary-grid{grid-template-columns:1fr 1fr}.action-stat{grid-column:1/-1}.brand-logo{width:65px;height:65px}.brand-text h1{font-size:20px}}
@media(max-width:600px){.container{padding:10px}.topbar{align-items:flex-start}.brand-logo{width:58px;height:58px}.brand-text h1{font-size:17px}.brand-text p{font-size:11px}.config-btn{font-size:11px;padding:9px}.hero-strip{padding:16px}.hero-badge{display:none}.grid{grid-template-columns:1fr}.summary-grid{grid-template-columns:1fr}.table-title{align-items:flex-start;flex-direction:column}.romHeader{align-items:flex-start;flex-direction:column}.romHeader>div:first-child{margin-right:0}}

/* Paginação compacta do romaneio */
.romaneio-table-wrap{max-height:none;overflow:hidden}
.romaneio-pagination{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  padding:12px 0 2px;
  font-size:13px;
}
.page-arrow{
  width:36px;
  height:34px;
  border:1px solid #d7e0e8;
  border-radius:9px;
  background:#fff;
  color:#12283a;
  font-size:25px;
  line-height:1;
  cursor:pointer;
}
.page-arrow:hover:not(:disabled){background:#eef8fb;border-color:#18c7d8}
.page-arrow:disabled{opacity:.35;cursor:not-allowed}
.romaneio-pagination span{min-width:130px;text-align:center;color:#536579}
.romaneio-pagination strong{color:#12283a}

/* V13: tabela do romaneio compacta, exibindo até 10 itens por página */
.romaneio-table-wrap{overflow:hidden;}
.romaneio-table-wrap .data-table tbody tr{height:42px;}

.btn-print-main{
  min-width:180px;
  font-weight:800;
}
@media print{
  body{background:#fff!important}
  .no-print,.romaneio-actions,.btn-print-main,#configBtn,
  .filters,.toolbar,.pagination,.page-arrow{display:none!important}
  #romaneio{box-shadow:none!important;border:0!important;margin:0!important}
  .romaneio-table-wrap{overflow:visible!important}
  .romaneio-pagination{display:none!important}
  .romaneio-head{border-bottom:2px solid #12283a;padding-bottom:10px}
}

.action-buttons{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.btn-print-note{background:#0ea5e9!important;color:#fff!important}.btn-print-note:hover{filter:brightness(.95)}.btn-print-note:disabled{opacity:.6;cursor:wait}

/* Impressão individual da nota */
.row-print-note{border:0;border-radius:9px;padding:7px 10px;font-weight:800;font-size:11px;cursor:pointer;background:#e0f2fe;color:#0369a1;white-space:nowrap}
.row-print-note:hover{background:#bae6fd;transform:translateY(-1px)}
.row-print-note:disabled{opacity:.6;cursor:wait;transform:none}


/* V25 - ações da nota lado a lado */
.row-actions{display:flex;gap:7px;align-items:center;justify-content:flex-start;white-space:nowrap}
.row-print-note,.row-romaneio{border:0;border-radius:9px;padding:7px 10px;font-weight:800;font-size:11px;cursor:pointer;white-space:nowrap}
.row-print-note{background:#e0f2fe;color:#0369a1}
.row-print-note:hover{background:#bae6fd}
.row-romaneio{background:#e7f8ef;color:#087443}
.row-romaneio:hover{background:#c9f0dc}
.row-print-note:disabled,.row-romaneio:disabled{opacity:.6;cursor:wait;transform:none}
@media(max-width:700px){.row-actions{flex-direction:column;align-items:stretch}.row-print-note,.row-romaneio{width:100%}}

/* V26 - tela de login e administração */
.login-screen{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:24px;background:linear-gradient(135deg,#07111f,#0f2742 55%,#07111f)}
.system-login-card{width:min(430px,94vw);background:#fff;border-radius:22px;padding:34px;box-shadow:0 25px 70px rgba(0,0,0,.35);text-align:center}
.login-logo{max-width:220px;max-height:70px;object-fit:contain;margin:0 auto 18px}
.system-login-card h1{margin:8px 0 8px;color:#0f172a;font-size:27px}.system-login-card p{color:#64748b;margin:0 0 22px}.system-login-card label{text-align:left;display:block;margin:12px 0}.system-login-card input{width:100%;box-sizing:border-box;padding:13px 14px;border:1px solid #cbd5e1;border-radius:10px;margin-top:6px;font-size:15px}.login-main-btn{width:100%;border:0;border-radius:11px;padding:14px;background:#0f172a;color:#fff;font-weight:800;cursor:pointer;margin-top:8px}.admin-access-btn{width:100%;border:0;background:transparent;color:#0f766e;font-weight:700;padding:12px;cursor:pointer}.system-login-card small{display:block;margin-top:18px;color:#94a3b8}.hidden{display:none!important}
.adminBox{max-width:900px}.admin-create-grid{display:grid;grid-template-columns:1.1fr 1.1fr .8fr auto;gap:12px;align-items:end;margin:18px 0}.admin-create-grid label{font-size:13px;font-weight:700;color:#334155}.admin-create-grid input,.admin-create-grid select{display:block;width:100%;box-sizing:border-box;margin-top:6px;padding:11px;border:1px solid #cbd5e1;border-radius:9px}.admin-create-action button{height:40px;white-space:nowrap}.user-status{opacity:.9}.logout-btn{border-color:#cbd5e1}
@media(max-width:760px){.admin-create-grid{grid-template-columns:1fr}.admin-create-action button{width:100%}.top-actions{flex-wrap:wrap}.system-login-card{padding:26px}}


/* V27 - visual moderno, responsivo e administração aprimorada */
:root{--navy:#071827;--navy2:#0b2a3a;--cyan:#13cbd4;--cyan2:#0aa8b5;--surface:#ffffff;--bg:#f4f7fa;--line:#e3eaf0;--text:#132238;--muted:#66778a}
body{background:var(--bg);-webkit-font-smoothing:antialiased}.app-shell{background:linear-gradient(180deg,#eef6f8 0,#f7f9fb 260px,#f4f7fa 100%)}
.topbar{min-height:92px;padding:14px clamp(16px,3vw,38px);background:linear-gradient(120deg,#06131f,#0a2938 62%,#07515a);border-bottom:1px solid rgba(255,255,255,.08)}
.brand-logo{width:64px;height:64px;border-radius:16px}.brand-text h1{font-size:clamp(18px,2vw,25px)}.container{width:min(1380px,100%);padding:clamp(12px,2vw,24px)}
.card,.stat-card,.hero-strip{border-radius:18px;border-color:#e1e8ee;box-shadow:0 8px 28px rgba(13,35,49,.055)}
button{border-radius:11px}.config-btn{border:1px solid rgba(255,255,255,.12)}
.login-screen{background:radial-gradient(circle at 20% 10%,rgba(19,203,212,.22),transparent 30%),linear-gradient(145deg,#04111d,#0a2638 55%,#07515a)}
.system-login-card{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.65);border-radius:28px;padding:38px;box-shadow:0 35px 90px rgba(0,0,0,.38)}
.system-login-card:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,#13cbd4,#0b87a1)}
.system-login-card input{height:48px;border-radius:12px;background:#f9fbfc}.login-main-btn{height:49px;border-radius:12px;background:linear-gradient(135deg,#092337,#0a7e8b);box-shadow:0 10px 24px rgba(7,80,95,.22)}
.adminBox{width:min(980px,96vw);max-height:90vh;overflow:auto}.admin-create-grid{padding:16px;border:1px solid #e3eaf0;border-radius:15px;background:#f8fafb}
.user-name-cell{display:flex;align-items:center;gap:10px}.user-name-cell small{display:block;color:#8291a2;margin-top:2px}.user-avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#e7f9fa;color:#087f89;font-weight:900}
.role-badge{display:inline-flex;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:900}.role-admin{background:#e8f5ff;color:#1769aa}.role-user{background:#eef2f6;color:#526273}
.user-actions{display:flex;gap:7px;flex-wrap:wrap}.password-btn,.delete-btn{padding:8px 10px;font-size:10px;box-shadow:none}.password-btn{background:#e7f9fa;color:#087b84}.delete-btn{background:#fff0f0;color:#b42318;border:1px solid #ffd4d4}
.table-wrap{border-radius:13px;background:#fff}tbody tr:hover{background:#f8fcfd}
@media(max-width:820px){.topbar{align-items:center;flex-wrap:wrap}.brand{width:100%}.top-actions{width:100%;margin-left:0;display:grid;grid-template-columns:1fr 1fr}.top-actions .api-status{display:flex}.top-actions button{width:100%}.grid{grid-template-columns:1fr 1fr}.adminBox{padding:18px}.admin-create-grid{grid-template-columns:1fr 1fr}.admin-create-action{grid-column:1/-1}.admin-create-action button{width:100%}}
@media(max-width:560px){.system-login-card{padding:26px 20px;border-radius:22px}.login-logo{max-width:180px}.topbar{padding:12px}.brand-logo{width:54px;height:54px}.brand-text p{display:none}.top-actions{grid-template-columns:1fr}.api-status{justify-content:center}.container{padding:9px}.hero-strip{padding:15px}.hero-strip h2{font-size:18px}.card{padding:14px}.grid,.summary-grid,.admin-create-grid{grid-template-columns:1fr}.actions>button{flex:1 1 100%}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}th,td{padding:10px 8px}.user-actions{flex-direction:column}.password-btn,.delete-btn{width:100%}.modal{padding:8px}.modalBox{padding:18px;border-radius:18px}.products-head{gap:8px}.row-actions{flex-direction:row}.row-print-note,.row-romaneio{width:auto}}
