:root{--navy:#0b1f37;--blue:#1769e0;--bg:#f3f6f9;--border:#e2e8f0;--text:#172033;--muted:#6b778c}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px Inter,system-ui,sans-serif}.loading{padding:80px;text-align:center}.login{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#07182d,#133e6d)}.login section{width:min(410px,calc(100% - 32px));background:#fff;border-radius:18px;padding:38px;box-shadow:0 28px 80px #0006}.logo{width:52px;height:52px;display:grid;place-items:center;background:var(--blue);color:#fff;border-radius:14px;font-size:28px;font-weight:900;margin-bottom:22px}.login small,.title small{font-size:11px;letter-spacing:.12em;color:#718198;font-weight:800}.login h1{font-size:28px;margin:7px 0}.login p,.title p{color:var(--muted)}form{display:grid;gap:16px;margin-top:26px}label{display:grid;gap:7px;font-size:12px;font-weight:700}input{height:44px;border:1px solid var(--border);border-radius:9px;padding:0 13px;font:inherit;outline:none}input:focus{border-color:#6ea7ef;box-shadow:0 0 0 3px #1769e015}form button,.primary{height:44px;border:0;border-radius:9px;background:var(--blue);color:#fff;font-weight:800;padding:0 18px}.error{min-height:16px;color:#c62828;font-size:12px}.login footer{margin-top:26px;color:#8a95a5;font-size:11px;text-align:center}.shell{min-height:100vh;display:grid;grid-template-columns:240px 1fr}.shell>aside{position:fixed;inset:0 auto 0 0;width:240px;background:var(--navy);color:#fff;display:flex;flex-direction:column}.brand{height:76px;padding:0 22px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #ffffff18}.brand>b{width:38px;height:38px;display:grid;place-items:center;background:var(--blue);border-radius:11px;font-size:22px}.brand strong,.brand span{display:block}.brand strong{letter-spacing:.14em}.brand span{color:#91a5bd;font-size:11px}nav{padding:22px 12px;display:grid;gap:5px}nav button{height:44px;border:0;border-radius:8px;background:transparent;color:#aebed0;text-align:left;padding:0 14px;font-weight:650}nav button.active,nav button:hover{background:#ffffff13;color:#fff}nav em{float:right;background:#e95353;border-radius:99px;padding:2px 7px;font-size:10px;font-style:normal}aside footer{margin:auto 18px 18px;padding:14px;background:#ffffff0b;border-radius:10px}aside footer b,aside footer span{display:block}aside footer span{font-size:11px;color:#91a5bd;margin-top:3px}aside footer button{border:0;background:transparent;color:#7fb2f5;padding:8px 0 0}.shell>main{grid-column:2}.shell>main>header{height:76px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 30px;position:sticky;top:0;z-index:2}.shell header input{width:min(470px,75%);background:#f8fafc}.avatar{margin-left:auto;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#dceaff;color:#155fca;font-weight:800}.content{padding:30px;max-width:1400px;margin:auto}.title{margin-bottom:25px}.title h1{font-size:26px;margin:6px 0}.title-row{display:flex;justify-content:space-between;align-items:center;gap:20px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.stats article,.panel{background:#fff;border:1px solid var(--border);border-radius:12px}.stats article{padding:18px}.stats span{color:var(--muted);font-size:12px}.stats b{display:block;font-size:28px;margin-top:8px}.grid{display:grid;grid-template-columns:2fr 1fr;gap:20px}.grid section>h2,.attention h2{font-size:15px}.panel{overflow:auto}.table table{width:100%;border-collapse:collapse;min-width:680px}th{text-align:left;background:#f8fafc;color:#778497;text-transform:uppercase;font-size:10px;padding:12px 14px}td{border-top:1px solid #edf1f5;padding:13px 14px;font-size:12px}.code{color:var(--blue);font-weight:800}.actions{white-space:nowrap}.actions button{border:0;background:#e8f1ff;color:#155fca;border-radius:6px;padding:7px 9px;margin-right:6px;font-weight:700}.actions .danger{background:#fff0f0;color:#bd2525}.attention{padding:20px;height:max-content}.attention b{display:block;font-size:40px;color:#d88a00;margin-top:28px}.attention p{font-size:12px;color:var(--muted)}dialog{width:min(520px,calc(100% - 24px));border:0;border-radius:15px;padding:0;box-shadow:0 25px 80px #07182d55}dialog::backdrop{background:#07182daa}.modal-form{padding:24px;margin:0}.modal-head{display:flex;align-items:center;justify-content:space-between}.modal-head h2{margin:0}.close{border:0!important;background:transparent!important;color:#6b778c!important;font-size:25px!important;padding:0!important;width:34px}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.secondary{height:44px;border:1px solid var(--border);border-radius:9px;background:#fff;color:var(--text);font-weight:700;padding:0 18px}
select{height:44px;border:1px solid var(--border);border-radius:9px;padding:0 13px;background:#fff;color:var(--text);font:inherit;outline:none}select:focus{border-color:#6ea7ef;box-shadow:0 0 0 3px #1769e015}input[readonly]{background:#f1f4f7;color:#667386}
.report-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.report-card{padding:24px;min-width:0}.report-card h2{font-size:17px;margin-top:0}.report-card p{color:var(--muted);line-height:1.5}.report-filters{display:grid;gap:11px;margin:18px 0}.report-filters input,.report-filters select{width:100%;min-width:0}dialog{max-width:calc(100vw - 24px);overflow-x:hidden}.modal-form,.modal-form label,.modal-form input,.modal-form select{min-width:0;max-width:100%}.modal-form input,.modal-form select{width:100%}.title-actions{display:flex;flex-wrap:wrap;gap:9px;justify-content:flex-end}#print-area{display:none}
.workflow-box{margin-bottom:24px;padding:18px;border:1px solid #f1ca75;border-radius:12px;background:#fff8e8}.workflow-box>h2{margin:0 0 14px;font-size:16px}.workflow-box>h2 em{font-style:normal;background:#e95353;color:#fff;border-radius:99px;padding:3px 8px;font-size:11px}.detail-dialog{width:min(900px,calc(100vw - 24px));padding:24px}.detail-head{display:flex;justify-content:space-between;gap:15px}.detail-head h2{margin:4px 0}.detail-head p{color:var(--muted)}.detail-head .close{border:0;background:transparent;font-size:26px;height:36px}.material-list{display:grid;gap:8px;max-height:60vh;overflow-y:auto;margin:18px 0}.material-list article{display:grid;grid-template-columns:minmax(220px,2fr) repeat(2,minmax(80px,1fr));gap:12px;align-items:center;border:1px solid var(--border);border-radius:9px;padding:12px}.material-list article>div:first-child b,.material-list article span,.material-list article small{display:block}.material-list article span,.material-list article small{color:var(--muted);font-size:10px;margin-top:3px}.ok{color:#18834b}.low{color:#c62828}.period-filter{display:flex;flex-wrap:wrap;gap:12px;margin:-8px 0 20px}.period-filter label{min-width:170px}.management-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.lookup-card{padding:18px}.lookup-card>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.lookup-card h2{font-size:15px}.lookup-card .primary{height:34px}.lookup-card ul{list-style:none;padding:0;margin:12px 0 0}.lookup-card li{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border);padding:10px 0;color:var(--muted)}.danger-link{border:0;background:transparent;color:#bd2525;font-weight:700}.empty-card{padding:20px;color:var(--muted)}
.button-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.import-dialog{width:min(840px,calc(100vw - 24px))}.import-dialog .modal-head p{color:var(--muted);margin:6px 0 0}.import-dialog>.detail-head,.import-dialog>.modal-actions{margin:24px}.import-dialog>.import-preview{margin:0 24px}.import-preview{min-height:90px;max-height:48vh;overflow:auto}.import-preview .table table{min-width:520px}.import-errors{background:#fff0f0;color:#a92525;border-radius:8px;padding:12px 12px 12px 30px;line-height:1.6}.modal-actions button:disabled{opacity:.45;cursor:not-allowed}
.material-dialog{width:min(860px,calc(100vw - 24px))}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.address-grid{border:1px solid var(--border);border-radius:10px;margin:18px 0;padding:16px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.address-grid legend{padding:0 7px;font-weight:800;color:var(--navy)}.address-admin{padding:20px;margin-top:18px}.address-admin-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.address-admin-head h2{margin:0}.address-admin-head p{color:var(--muted)}.address-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.address-chips>span{background:#eef4fc;border:1px solid #d7e4f5;border-radius:99px;padding:8px 10px}.address-chips button{border:0;background:transparent;color:#bd2525;font-weight:900}
.report-chart-card{grid-column:1/-1}.production-chart{display:grid;gap:10px;margin:18px 0 22px}.chart-row{display:grid;grid-template-columns:minmax(170px,280px) minmax(160px,1fr) 70px;gap:12px;align-items:center}.chart-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.chart-row>div{height:22px;background:#edf2f7;border-radius:5px;overflow:hidden}.chart-row i{display:block;height:100%;background:linear-gradient(90deg,#1769e0,#54a0ff);border-radius:5px}.chart-row>b{text-align:right}.report-chart-card>.primary{margin-top:4px}
@media print{body.printing{background:#fff}.printing .shell{display:none!important}.printing #print-area{display:block!important;color:#000;font:10pt Arial,sans-serif}.print-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid #000;margin-bottom:14px;padding-bottom:8px}.print-head h1{font-size:17pt;margin:4px 0}.printing table{width:100%;border-collapse:collapse}.printing th,.printing td{border:1px solid #333;padding:5px;text-align:left;font-size:8.5pt}.printing th{background:#eee!important;color:#000}.order-sheet{break-after:page}.order-sheet:last-child{break-after:auto}.order-info{border:1px solid #333;padding:10px;line-height:1.8;margin-bottom:14px}.order-sheet h2{font-size:12pt}.signatures{display:flex;justify-content:space-around;margin-top:55px}.signatures span{width:35%;border-top:1px solid #000;text-align:center;padding-top:5px}@page{size:A4;margin:12mm}}
@media(max-width:1000px){.report-grid{grid-template-columns:1fr}.management-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.address-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.shell{grid-template-columns:76px 1fr}.shell>aside{width:76px}.brand{padding:0 19px}.brand div,nav button{font-size:0}nav button{text-align:center}nav button::first-letter{font-size:14px}aside footer{display:none}.content{padding:20px}.stats{grid-template-columns:1fr 1fr}.grid{grid-template-columns:1fr}.material-list article{grid-template-columns:1fr 1fr}.material-list article>div:first-child{grid-column:1/-1}}@media(max-width:520px){.shell{display:block}.shell>aside{position:static;width:100%;height:auto}.brand{height:62px}.brand div{display:block}nav{display:flex;overflow:auto;padding:8px}nav button{font-size:11px;white-space:nowrap}.shell>main{grid-column:1}.shell>main>header{height:62px;padding:0 14px}.content{padding:18px 12px}.title-row{align-items:flex-start;flex-direction:column}.title-actions{justify-content:flex-start;width:100%}.title-actions button,.title-actions .button-link{flex:1;min-width:135px}.title h1{font-size:22px}.stats{gap:9px}.stats article{padding:14px}.stats b{font-size:22px}.login section{padding:28px 22px}.modal-form{padding:20px 16px}.form-grid,.address-grid{grid-template-columns:1fr}.address-admin-head{align-items:flex-start;flex-direction:column}}

/* Cabeçalho Tubolar: marca à esquerda, identificação à direita. */
.brand.brand-header{height:auto;min-height:110px;flex-shrink:0;padding:18px 12px;display:flex;align-items:center;justify-content:center;gap:12px;background:#0b1f37}
.brand-header .brand-mark{flex:0 1 112px;min-width:0;background:#fff;border-radius:9px;padding:7px 5px}
.brand-header .brand-mark img{width:100%;height:auto;display:block}
.brand-header .brand-title{flex:1;min-width:0;text-align:center;line-height:1.35}
.brand-header .brand-title strong{font-size:14px;font-weight:800;letter-spacing:.04em;color:white}
.brand-header .brand-title span{font-size:12px;font-weight:400;color:#91a5bd;margin-top:3px}
@media(min-width:521px) and (max-width:800px){.brand.brand-header{min-height:76px;padding:10px 5px}.brand-header .brand-mark{flex-basis:66px;padding:5px 2px}.brand-header .brand-title{display:none}}
@media(max-width:520px){.brand.brand-header{min-height:110px;padding:18px 26px;gap:24px}.brand-header .brand-mark{flex:0 1 145px}.brand-header .brand-title{flex:0 1 135px}.brand-header .brand-title strong{font-size:17px}.brand-header .brand-title span{font-size:14px}}
