/* Padrão visual MSJ, baseado no Milhas BIS. */
:root{--bg:#f5f7fb;--panel:#fff;--panel2:#f6f8fc;--line:#e4eaf2;--text:#182944;--muted:#728098;--primary:#2261de;--primary2:#2261de;--ok:#258466;--warn:#b37a1e;--danger:#be4358;--shadow:0 12px 40px #20355714}
body{background:var(--bg);color:var(--text);font-size:13px}.app{grid-template-columns:250px minmax(0,1fr)}.sidebar{background:#fff;padding:25px 17px;border-color:var(--line)}.sidebar .brand{padding:0 10px 23px;gap:11px}.sidebar .brand strong{font-size:21px;letter-spacing:-.6px}.sidebar .brand img{width:46px;height:46px}.sidebar .brand .muted{font-size:11px}.nav{gap:4px}.nav button{position:relative;min-height:44px;padding:12px 13px;font-size:12px;font-weight:550;color:#64718a;border-radius:9px}.nav button:hover{background:#f3f6fb}.nav button.active{background:#edf3ff;color:#2261de;box-shadow:none}.nav button.active:after{content:'';position:absolute;right:0;width:3px;height:20px;border-radius:4px;background:#2261de}.nav .section{font-size:9px;font-weight:700;letter-spacing:1.5px;color:#8b97ab;margin:21px 13px 7px}.nav-icon{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.side-bottom{padding:18px 10px;margin-top:25px}.side-bottom .btn{width:100%}.topbar{height:80px;background:#fff;border-color:var(--line);backdrop-filter:none;padding:0 34px}.topbar h2{font-size:16px;font-weight:650}.top-actions .user{font-size:12px}.main{padding:30px 34px;max-width:1600px}.page-head{margin-bottom:24px;align-items:center}.page-head h1{font-size:28px;letter-spacing:-.8px;margin:5px 0 9px}.page-head .muted{font-size:13px;line-height:1.6}.card,.panel{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 3px 14px #20355704}.card{padding:21px}.panel{margin-top:20px}.panel-head{padding:19px 22px}.panel-head h3{font-size:14px;font-weight:650}.metric{position:relative;border-top:1px solid var(--line);padding:21px 22px}.metric:before{content:'';position:absolute;top:0;left:22px;height:3px;width:28px;border-radius:0 0 4px 4px;background:#7a9ce8}.metric.green:before{background:#28a278}.metric.orange:before{background:#e2ac46}.metric.red:before{background:#df7481}.metric .label{font-size:11px;font-weight:550}.metric .value{font-size:25px;letter-spacing:-.6px;color:#223853;margin-top:11px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.metric .hint{font-size:10px;line-height:1.5;color:#8090a7;margin-top:7px}.btn{background:#2261de;font-size:12px;font-weight:650;min-height:39px;padding:10px 15px;border-radius:8px;border:1px solid transparent;color:#fff}.btn.primary{background:#2261de;box-shadow:0 3px 8px #2261de12}.btn.ghost{background:#fff;color:#52627c;border-color:#dfe5ef}.btn.danger{background:#fff1f3;color:#b33b52;border-color:#f3d1d9}.btn.small{font-size:11px;min-height:32px;padding:7px 10px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:focus-visible{outline:3px solid #95b9ff;outline-offset:2px}.input{background:#fff;border-color:#dee5ef;border-radius:9px;color:#18364f;padding:11px 12px;font-size:13px;min-height:42px}.input:focus{border-color:#80a3ee;box-shadow:0 0 0 3px #2261de12}.input[readonly]{background:#f6f8fc;color:#52627c}.field label{font-size:12px;color:#485975}.field{gap:7px}.toolbar{gap:9px}.toolbar .input{min-width:150px}.table-wrap{max-width:100%;-webkit-overflow-scrolling:touch}th{background:#f7f9fc;color:#7e8ca2;font-size:10px;padding:14px;border-color:#edf1f7}td{color:#4e607a;font-size:12px;padding:15px 14px;border-color:#eef2f7}tr:hover td{background:#fafcff}td .btn{margin:2px}.badge{background:#f1f4f9;color:#65738b;border-color:#e4eaf2;border-radius:6px}.badge.aprovado,.badge.concluido,.badge.concluida,.badge.pago{background:#eaf6ef;color:#27784e;border-color:#d0e9d9}.badge.producao,.badge.instalacao,.badge.enviado,.badge.parcial{background:#edf3ff;color:#3563b0;border-color:#dce7fa}.badge.pendente,.badge.aguardando,.badge.agendada,.badge.medicao{background:#fff6e3;color:#996c1e;border-color:#f3e4bc}.badge.cancelado,.badge.cancelada,.badge.recusado,.badge.expirado{background:#fff0f2;color:#af3d52;border-color:#f1d4da}dialog{background:#fff;color:var(--text);border-color:#d4dfeb;border-radius:15px;box-shadow:var(--shadow)}dialog::backdrop{background:#132c4b88}.close{color:#687a91}.modal-head,.modal-foot{border-color:var(--line);padding:18px 22px}.modal-head h3{font-size:16px}.modal-body{padding:22px}.client-choice{background:#f7f9fd;border-color:var(--line)}.quote-total{font-size:21px}.login{background:radial-gradient(ellipse at top right,#dce9ff,transparent 65%),#f5f7fb}.login-card{background:#fff;border-color:var(--line);box-shadow:0 12px 50px #2035570e}.login-card h1{color:#182944}.login-card .brand strong{color:#182944}.quick-add{border-color:var(--line);background:#fafcff}:root .project-card{border-color:var(--line);background:#fff}:root .project-card .project-hint{color:#728098}.project-preview svg{border:1px solid #e4eaf2}.cost-row .field{min-width:0}.cost-row input,.cost-row select{min-width:0;padding:9px}.cost-row label{font-size:10px}.project-card h4{font-size:13px}.toast{background:#258466}.toast.error{background:#be4358}
.dash-eyebrow{text-transform:uppercase;letter-spacing:1.6px;font-size:10px;color:#2261de;font-weight:700}.dash-period{display:flex;gap:7px;flex-wrap:wrap;align-items:end;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px;margin-bottom:20px}.dash-period .field{margin:0}.dash-period label{font-size:10px}.dash-period .input{min-width:130px}.dash-period .period-presets{display:flex;gap:6px;flex-wrap:wrap;margin-right:auto}.period-presets .active{color:#2261de;background:#edf3ff;border-color:#d4e3ff}.dash-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:20px;margin-top:20px}.dash-grid>.panel{margin:0}.dash-chart{padding:15px 20px}.dash-chart svg{width:100%;display:block;height:auto}.chart-key{display:flex;gap:15px;flex-wrap:wrap;font-size:10px;color:#728098;padding:0 3px 10px}.chart-key span:before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--series);margin-right:5px}.dash-note{font-size:11px;color:#728098;line-height:1.6;margin:14px 0}.dash-list{padding:5px 21px 17px}.dash-list-row{padding:13px 0;border-bottom:1px solid #eef2f7;display:flex;align-items:center;justify-content:space-between;gap:12px}.dash-list-row:last-child{border-bottom:0}.dash-list-row strong{font-size:12px;color:#344966}.dash-list-row small{display:block;font-size:10px;color:#8492a7;margin-top:5px}.dash-progress{height:5px;background:#edf2f8;border-radius:5px;overflow:hidden;margin-top:8px}.dash-progress>i{display:block;height:100%;background:#7098eb;border-radius:5px}.dash-alert{padding:12px 16px;border:1px solid #f0dfb7;background:#fff9ed;border-radius:10px;color:#8e6b28;font-size:12px;margin-top:15px;display:flex;align-items:center;gap:10px;justify-content:space-between}.dash-statuses{padding:15px 21px;display:grid;gap:14px}.dash-statuses .dash-list-row{border:0;padding:0}.dash-value{font-variant-numeric:tabular-nums;white-space:nowrap}.dash-wide{grid-column:1/-1}.dash-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:1050px){.app{grid-template-columns:minmax(0,1fr)}.sidebar{left:-280px;width:250px}.sidebar.open{left:0}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.main{padding:24px}.topbar{padding:0 24px}.dash-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:650px){.main{padding:20px 14px}.topbar{height:66px;padding:0 14px}.page-head{align-items:stretch}.page-head h1{font-size:24px}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric{padding:16px 13px}.metric .value{font-size:19px}.metric .label{font-size:10px}.metric:before{left:13px}.metric .hint{font-size:9px}.input{font-size:16px;min-height:44px}.btn{min-height:44px}.btn.small{min-height:36px}.dash-period{display:grid;grid-template-columns:1fr 1fr;padding:12px}.dash-period .period-presets{grid-column:1/-1;margin:0}.dash-period>.btn{grid-column:1/-1}.dash-period .input{min-width:0;width:100%}.dash-chart{padding:10px 6px}.dash-grid{gap:14px;margin-top:14px}.panel-head{padding:17px}.dash-alert{align-items:flex-start;flex-wrap:wrap}.dash-list{padding:3px 16px 13px}.modal-body{padding:16px}.project-card{padding:12px!important}.cost-row .input{font-size:14px}.quote-total{font-size:18px}.toolbar{flex-direction:column}.toolbar .input{width:100%;min-width:0}.sidebar{height:100dvh}.login-card{padding:26px}.login-card .brand strong{font-size:20px}}
@media print{body{background:#fff}.dash-period,.dash-alert .btn{display:none!important}.card,.panel{break-inside:avoid}.main{padding:0}.metric .value,td{color:#182944}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.msj-installation{grid-column:1/-1;border:1px solid var(--line);border-radius:12px;background:#f8faff;padding:15px;margin-top:12px}.msj-install-row{display:grid;grid-template-columns:1fr 1.5fr .7fr 1fr auto;gap:8px;align-items:end;margin:12px 0}.msj-install-row .field{margin:0;min-width:0}.msj-install-summary{font-weight:650;font-size:12px;color:#3563b0;line-height:1.7}.msj-installation p{line-height:1.6}:root .mv-summary{color:#526d9f}.quote-item{grid-template-columns:2fr .7fr .7fr .8fr .8fr auto;padding:16px;border:1px solid var(--line);border-radius:13px;margin:15px 0;background:#fff}@media(max-width:650px){.msj-install-row{grid-template-columns:1fr 1fr}.msj-install-row .field:nth-child(2){grid-column:1/-1}.msj-install-row .input{font-size:14px}}
.mf-section{grid-column:1/-1;border:1px solid #dce7fa;border-radius:12px;background:#f8faff;padding:16px;margin-top:12px}.mf-section[hidden],.mf-section [hidden]{display:none!important}.mf-section .muted{line-height:1.7}.mf-canvas{background:#fff;border:1px solid #e4eaf2;border-radius:10px;overflow:hidden}.mf-canvas [data-node],.mf-canvas [data-control]{cursor:grab}.mf-area{font-size:12px;line-height:1.7;color:#3563b0;font-weight:650}.mf-area[data-error="1"]{color:#af3d52}.mf-tools{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between;margin:14px 0}.mf-tools>span{font-size:12px;color:#728098}.mf-row{display:grid;grid-template-columns:36px 1fr 1fr 1.5fr auto;gap:8px;align-items:end;border-top:1px solid #e4eaf2;padding:12px 0}.mf-row>label,.mf-controls label{display:grid;gap:5px;font-size:11px;color:#64748b}.mf-curve-check{display:flex!important;align-items:center;align-self:center}.mf-curve-check input{width:18px;height:18px;min-height:0}.mf-controls{grid-column:2/5;display:grid;grid-template-columns:1fr 1fr;gap:10px}.mf-reference{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.mf-reference img{max-width:220px;max-height:160px;object-fit:contain;border-radius:8px}.mf-section>.form-grid{margin-top:16px;gap:14px}.mf-section .form-grid label{display:grid;gap:7px}@media(max-width:650px){.mf-section{padding:12px}.mf-row{grid-template-columns:32px 1fr 1fr auto}.mf-curve-check{grid-column:2/4}.mf-controls{grid-column:2/4}.mf-row .input{font-size:14px}}

@media screen{
body>.toast,body>#toast,body>.notification,body>.notifications{z-index:2147483646!important}.msj-dialog-notice{position:relative;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:13px 16px;margin:10px 18px 0;border:1px solid #f1bdc8;border-radius:10px;background:#fff0f2;color:#92263b;font:600 13px/1.6 Inter,system-ui,sans-serif;overflow-wrap:anywhere}.msj-dialog-notice[data-kind=success]{background:#eaf6ef;color:#226b48;border-color:#badbc8}.msj-dialog-notice>span{min-width:0}.msj-dialog-notice>button{border:0;min-width:32px;min-height:32px;padding:4px;background:transparent;color:inherit;border-radius:6px;font-size:21px;line-height:1;cursor:pointer;flex-shrink:0}.msj-dialog-notice>button:focus-visible{outline:3px solid #95b9ff}@media(max-width:650px){.msj-dialog-notice{margin:8px 12px 0;padding:11px 12px;font-size:13px}}
}
