/* Identidade visual BDI. As regras de impressão existentes são preservadas. */
@media screen {
 :root{--bdi-ink:#152b47;--bdi-muted:#586c83;--bdi-line:#dce4ed;--bdi-blue:#244f86;--bdi-surface:#fff;--bdi-radius:16px}
 body{background:#f1f4f8;color:var(--bdi-ink);font-family:'Segoe UI',Arial,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}
 aside{width:258px;padding:28px 18px 18px;background:linear-gradient(165deg,#172e4d,#0d1e35 80%);border-right:1px solid #ffffff0d;box-shadow:5px 0 28px #142b4710}
 .brand-logo{gap:12px}.brand-logo img{width:94px;height:94px;border-radius:20px;border:5px solid white;box-shadow:0 8px 22px #0002}.brand-logo span{font-size:10px;letter-spacing:4px;color:#e5edf8}
 .version{text-align:center;font-size:9px;line-height:1.6;letter-spacing:1.4px;color:#acbed5;margin:17px 0 19px;padding-bottom:18px;border-bottom:1px solid #ffffff16}
 nav{padding-right:4px;margin:0}nav button{display:flex;align-items:center;gap:11px;min-height:42px;margin:4px 0;padding:10px 12px;color:#ccd7e7;border:1px solid transparent;border-radius:9px;font-size:12px;font-weight:500;line-height:1.4;transition:background .15s,border-color .15s}
 nav button::before{content:'';width:7px;height:7px;flex:0 0 7px;border:1px solid #91abc9;border-radius:2px;transform:rotate(-8deg)}
 nav button:hover{background:#ffffff0d;color:white;border-color:#ffffff12}nav button.active{background:#f2f6fd;color:#172f50;border-color:#fff;box-shadow:0 3px 10px #0001;font-weight:650}nav button.active::before{background:#315e94;border-color:#315e94}
 nav button[data-action="cloud-logout"],nav button[data-action="logout"]{margin-top:14px;border-top-color:#ffffff20}
 .aside-foot{margin-top:14px;padding:15px 10px 0;border-top:1px solid #ffffff16;line-height:1.8;color:#a5b8d1}.aside-foot small{color:#bbcce0;font-size:10px;letter-spacing:.2px;display:block}
 main{margin-left:258px;padding:30px 38px 48px;max-width:1750px}
 header{gap:20px;min-height:70px;margin-bottom:27px;padding-bottom:22px;border-bottom:1px solid var(--bdi-line)}header small{font-size:10px;letter-spacing:1.7px;color:var(--bdi-muted);font-weight:600}header h1{font-size:29px;line-height:1.25;letter-spacing:-.9px;margin:7px 0 0;font-weight:650}header>button{font-size:12px;padding:11px 15px;background:#fff;box-shadow:0 2px 6px #162b4505}
 h2{font-size:20px;font-weight:650;letter-spacing:-.5px;margin-top:0;line-height:1.35}h3{font-size:15px;font-weight:650;line-height:1.5}p{line-height:1.7}small{color:var(--bdi-muted)}
 button,.button{min-height:40px;border-radius:9px;border-color:#ccd7e4;padding:10px 15px;font-size:13px;font-weight:600;line-height:1.35;transition:background .15s,box-shadow .15s}button:hover,.button:hover{background:#edf2f8;border-color:#b7c8da}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #6b9cda;outline-offset:3px}
 .primary{background:var(--bdi-blue);border-color:var(--bdi-blue);color:#fff;box-shadow:0 3px 8px #244f861a}.primary:hover{background:#193d6b;border-color:#193d6b}.danger{color:#a6293c;border-color:#eccbd1}.danger:hover{background:#fff0f2;border-color:#d991a0}
 .panel,.card{border:1px solid #dfe6ee;border-radius:var(--bdi-radius);padding:25px;background:var(--bdi-surface);box-shadow:0 3px 14px #18375904;margin-bottom:22px}.panel{overflow-x:auto}.panel>.row.between{margin-bottom:17px}.panel>.row.between h2{margin:0}.panel>.row.between p{margin:5px 0}
 .grid{gap:17px}.grid>.card{margin-bottom:0;position:relative;overflow:hidden;padding:21px 23px}.grid>.card::after{content:'';position:absolute;right:21px;top:24px;width:7px;height:7px;border-radius:50%;background:#c8d9ed}.grid>.card small{display:block;padding-right:14px;font-size:10px;letter-spacing:1px;color:#536982;font-weight:650}.metric{font-size:31px;font-weight:650;letter-spacing:-1.2px;line-height:1.25;font-variant-numeric:tabular-nums;margin:15px 0 8px}.muted{font-size:12px;color:#60738a;line-height:1.75}.grid:has(>.card:nth-child(4)):not(:has(>.card:nth-child(5))){grid-template-columns:repeat(4,minmax(0,1fr))}
 .hero{position:relative;overflow:hidden;background:linear-gradient(112deg,#142d4c,#244f7b);border:1px solid #233f61;border-radius:18px;padding:32px 35px;margin:25px 0;color:white;box-shadow:0 8px 24px #142b4710}.hero::after{content:'';position:absolute;width:240px;height:240px;border:1px solid #ffffff12;border-radius:50%;right:-35px;top:-65px;pointer-events:none;box-shadow:0 0 0 40px #ffffff04,0 0 0 80px #ffffff03}.hero>div{position:relative;z-index:1}.hero h2{font-size:29px;letter-spacing:-.8px;margin:11px 0}.hero p{font-size:13px;max-width:550px;color:#d0deee;line-height:1.85;margin-bottom:22px}.eyebrow{font-size:9px;font-weight:600;letter-spacing:2px;color:#c0d6ef}.hero .primary{background:white;color:#183d67;border-color:white;box-shadow:none}.hero .primary:hover{background:#e6eef9}
 .tag{display:inline-block;border:1px solid #dde6f2;border-radius:6px;background:#f0f5fc;padding:4px 9px;color:#395c87;font-size:10px;font-weight:650;letter-spacing:.3px}.notice{border-radius:0 10px 10px 0;background:#edf3fb;border-left:3px solid #4b73a2;color:#385371;font-size:12px;padding:15px 19px;line-height:1.8}.notice.warning,.warning{background:#fff6e6;border-color:#c79133;color:#79551d}.empty{padding:44px 20px;color:#61748a;font-size:13px}
 table{font-size:12px;line-height:1.65;font-variant-numeric:tabular-nums}th{background:#f6f8fb;font-size:10px;letter-spacing:.8px;color:#51667e;font-weight:650;padding:13px 12px;white-space:nowrap}td{padding:16px 12px;border-bottom-color:#e8edf3;vertical-align:middle}tbody tr:hover{background:#f9fbfe}td button{min-height:33px;padding:7px 10px;margin:3px;font-size:11px;border-radius:7px}td small{letter-spacing:0;font-size:10px}tbody tr:last-child td{border-bottom:0}.catalog-group th{background:#ebf1f9;color:#29486b;border-top:1px solid #d8e3ef;padding:13px 12px}
 label{font-size:12px;color:#405873;font-weight:600;margin:15px 0 7px}input,select,textarea{border:1px solid #cbd6e3;border-radius:9px;padding:11px 12px;min-height:43px;background:#fcfdff;font-size:13px;line-height:1.5;transition:border-color .15s,box-shadow .15s}input::placeholder,textarea::placeholder{color:#78899d;opacity:1}input:focus,select:focus,textarea:focus{outline:none;border-color:#547fb2;box-shadow:0 0 0 3px #527eb21a;background:white}textarea{min-height:100px;resize:vertical}input[type="checkbox"]{min-height:auto;accent-color:#244f86}input[type="search"],#catalog-search{max-width:560px}.form-grid{gap:0 20px}.help,.equipment-help{font-size:12px;color:#5c7189;line-height:1.8}.check{min-height:40px}.check label{margin:0}.tools{gap:9px;margin:19px 0}.print-line,.equipment-advanced{border-color:#dce5ef;border-radius:12px;background:#fafcfe;padding:20px}
 dialog{padding:29px;border:1px solid #e0e7f0;border-radius:18px;box-shadow:0 24px 100px #0d254638;max-height:89dvh}dialog::backdrop{background:#0d223b99;backdrop-filter:blur(3px)}dialog h2{padding-bottom:17px;border-bottom:1px solid var(--bdi-line)}dialog footer{position:sticky;bottom:-29px;padding:18px 0 6px;background:#fff;border-top:1px solid var(--bdi-line);z-index:2}dialog #fields{padding-bottom:10px}.result{background:linear-gradient(150deg,#193b62,#112b49);border-color:#1a3b5e;color:white}.result small,.result .muted{color:#cbd9eb}.result .metric{font-size:34px;letter-spacing:-1px}.costline{font-size:12px;padding:12px 0;gap:15px}.payment-box,.delivery-box{border-radius:12px;background:#fbfcfe;border-color:#dce5ef}.quote-sheet{box-shadow:0 5px 24px #142b4708}.quote-sheet .quote-logo{border-radius:12px}.quote-notes{color:#425b76}#toast{background:#173b61;box-shadow:0 6px 24px #142b4726;border-radius:11px;font-size:13px;z-index:100}
 /* Acesso interno: sem serviços externos ou fontes remotas. */
 body.login-page{min-height:100dvh;background:#edf2f8;background-image:radial-gradient(ellipse at 15% 20%,#d9e5f4,transparent 60%)}body.login-page main{max-width:1050px;margin:0 auto;min-height:100dvh;padding:50px 30px;display:flex;align-items:center}.login-shell{display:grid;grid-template-columns:1fr 1.08fr;width:100%;min-height:550px;background:#fff;border:1px solid #d9e3ef;border-radius:23px;overflow:hidden;box-shadow:0 22px 70px #142b4712}.login-brand{position:relative;overflow:hidden;background:linear-gradient(150deg,#193453,#0d213a);padding:48px 40px;color:white;display:flex;flex-direction:column;justify-content:space-between}.login-brand::after{content:'';position:absolute;width:310px;height:310px;border:1px solid #ffffff16;border-radius:50%;right:-160px;bottom:-110px;box-shadow:0 0 0 50px #ffffff04;pointer-events:none}.login-brand img{width:98px;height:98px;object-fit:contain;border:6px solid white;border-radius:20px;background:white}.login-brand .eyebrow{display:block;margin-top:19px;letter-spacing:2.6px}.login-brand h2{font-size:32px;line-height:1.3;letter-spacing:-1px;margin:32px 0 16px;max-width:290px}.login-brand p{color:#c2d1e4;font-size:13px;line-height:1.9;max-width:280px}.login-brand small{color:#aabfd8;font-size:10px;letter-spacing:.4px}.login-form-panel{padding:52px 44px;display:flex;flex-direction:column;justify-content:center}.login-form-panel .eyebrow{color:#506b8a;font-size:9px;letter-spacing:1.7px}.login-form-panel h1{font-size:27px;letter-spacing:-.8px;margin:13px 0 4px}.login-form-panel>p{font-size:13px;color:#60748b;margin:5px 0 17px}.login-form-panel .form-grid{display:block}.login-form-panel label{font-size:12px;margin-top:17px}.login-form-panel input{min-height:46px}.login-form-panel button{width:100%;margin-top:24px;min-height:45px}.login-form-panel .help{border-top:1px solid #e3e9f1;padding-top:19px;margin-top:13px;font-size:11px;line-height:1.85}#auth-message{font-size:12px;color:#a32f40;min-height:18px;margin:12px 0 0}
 @media(min-width:1500px){main{padding-left:48px;padding-right:48px}}
 @media(max-width:1150px){aside{width:224px;padding-inline:14px}main{margin-left:224px;padding:26px}.grid:has(>.card:nth-child(4)):not(:has(>.card:nth-child(5))){grid-template-columns:repeat(2,minmax(0,1fr))}.metric{font-size:28px}.split{grid-template-columns:1fr}.result{position:static}}
 @media(max-width:850px) and (min-width:701px){main{padding:22px}.grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.hero{padding:26px}.hero h2{font-size:24px}.panel,.card{padding:20px}.login-brand{padding:34px 26px}.login-form-panel{padding:36px 28px}}
 @media(max-width:700px){aside{position:static;width:100%;padding:17px 18px 0;border-right:0;box-shadow:none;border-radius:0 0 17px 17px}.brand-logo{flex-direction:row;justify-content:flex-start;gap:13px}.brand-logo img{width:48px;height:48px;border-radius:11px;border-width:3px}.brand-logo span{font-size:11px;letter-spacing:3px}.version,.aside-foot{display:none}nav{display:flex;flex-direction:row;overflow-x:auto;overflow-y:hidden;gap:5px;padding:13px 0 12px;margin:0;scrollbar-width:thin}nav button{min-height:39px;flex:0 0 auto;white-space:nowrap;padding:9px 12px;margin:0;font-size:11px}nav button::before{display:none}nav button[data-action="cloud-logout"],nav button[data-action="logout"]{margin:0;border-top-color:transparent}main{margin-left:0;padding:23px 16px 35px}header{gap:13px;padding-bottom:17px;margin-bottom:20px;min-height:0}header h1{font-size:24px;letter-spacing:-.6px}header small{font-size:9px;letter-spacing:1px}header>button{font-size:11px;padding:9px 11px;min-height:36px}.panel,.card{padding:19px;border-radius:13px;margin-bottom:17px}.panel>.row.between{gap:13px}.grid{grid-template-columns:1fr;gap:12px}.grid:has(>.card:nth-child(4)):not(:has(>.card:nth-child(5))){grid-template-columns:repeat(2,minmax(0,1fr))}.grid>.card{padding:17px}.grid>.card small{font-size:9px;letter-spacing:.5px}.grid>.card::after{right:14px;top:20px;width:5px;height:5px}.metric{font-size:26px;margin-top:13px}.grid>.card .muted{font-size:11px}.hero{padding:24px;margin:19px 0;border-radius:14px}.hero h2{font-size:25px;max-width:290px}.hero p{font-size:12px}.hero::after{right:-155px}.form-grid,.two{grid-template-columns:1fr;gap:0}.tools{gap:8px}.tools>button{flex:1 1 auto;font-size:12px}.help{font-size:11px}table{font-size:11px;min-width:510px}th{font-size:9px;padding:11px 9px}td{padding:13px 9px}.payment-grid,.client-details{grid-template-columns:1fr}.quote-sheet table{min-width:450px}dialog{padding:21px;width:calc(100% - 22px);max-height:92dvh;border-radius:15px}dialog footer{bottom:-21px;padding-bottom:5px}#toast{left:16px;right:16px;bottom:16px}.result .metric{font-size:30px}body.login-page main{padding:22px 16px;min-height:100dvh}.login-shell{grid-template-columns:1fr;min-height:0;border-radius:18px}.login-brand{padding:23px 26px;display:block}.login-brand img{width:59px;height:59px;border-radius:14px;border-width:4px;float:left;margin-right:16px}.login-brand .eyebrow{padding-top:11px;margin:0;font-size:9px}.login-brand h2{font-size:19px;margin:6px 0 0;max-width:none;letter-spacing:-.4px}.login-brand p,.login-brand>small{display:none}.login-brand::after{width:180px;height:180px;bottom:-130px;right:-35px}.login-form-panel{padding:29px 26px}.login-form-panel h1{font-size:25px}.login-form-panel>.eyebrow{display:none}.login-form-panel .help{margin-bottom:0}.login-form-panel input{font-size:16px}}
 @media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
}
