/* Armant 360 · App de campo (campo.js). Regras trazidas do obras.css do sistema antigo (backup de 04/11/2026). */
/* app de campo */
body.cp-on .sidebar,body.cp-on .topbar,body.cp-on .page-heading,body.cp-on .demo-notice,body.cp-on .page-footer,body.cp-on .skip-link{display:none!important}
body.cp-on .app-shell{margin-left:0}
body.cp-on main{padding:0;max-width:none}
body.cp-on{background:#eef4f2}
body.cp-on .toast{left:50%}
.cp-app{max-width:560px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column}
.cp-top{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:12px;background:var(--petrol,#023c48);color:#e7fae4;padding:14px 16px}
.cp-top strong{display:block;font:500 16px Poppins,Roboto,sans-serif}
.cp-top small{display:block;font-size:11.5px;color:#a9c6c0}
.cp-back{width:38px;height:38px;border-radius:10px;background:#ffffff14;display:grid;place-items:center;font-size:20px;color:#e7fae4;flex:none}
.cp-back svg{width:18px;height:18px}
.cp-dot{margin-left:auto;width:9px;height:9px;border-radius:50%;background:#b8d7ad}
.cp-main{padding:14px 14px 40px;display:grid;gap:12px}
.cp-card{background:#fff;border:1px solid var(--line,#e4ecea);border-radius:16px;padding:16px}
.cp-card h2{font:500 15px Poppins,Roboto,sans-serif;color:var(--petrol,#023c48);margin-bottom:10px}
.cp-p{font-size:13px;color:var(--muted,#60767b);line-height:1.5;margin:6px 0}
.cp-lbl,.cp-form label{display:grid;gap:5px;font-size:13px;color:var(--muted,#60767b)}
.cp-form{display:grid;gap:12px}
.cp-lbl select,.cp-lbl input,.cp-form input,.cp-form select,.cp-form textarea{font:inherit;font-size:16px;color:var(--ink,#183c43);border:1px solid #d5e2de;border-radius:11px;padding:12px;background:#fff;width:100%;min-width:0}
.cp-btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:50px;border-radius:12px;background:var(--petrol,#023c48);color:#fff;font-size:15px;font-weight:500;margin-top:6px;text-align:center}
.cp-btn.alt{background:#317455}
.cp-btn[disabled]{opacity:.4}
.cp-pres{display:grid;gap:4px;margin-top:12px;font-size:14px;background:#fbf1e2;color:#7a4f14;border-radius:12px;padding:12px}
.cp-pres.in{background:var(--mint,#e7fae4);color:#245a40}
.cp-pres.out{background:#f1f3f2;color:var(--muted,#60767b)}
.cp-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cp-tile{background:#fff;border:1px solid var(--line,#e4ecea);border-radius:16px;padding:16px 14px;display:grid;gap:4px;min-height:110px;align-content:start}
.cp-tile svg{width:24px;height:24px;color:#317455;margin-bottom:6px}
.cp-tile strong{font-size:14.5px;color:var(--petrol,#023c48)}
.cp-tile small{font-size:12px;color:var(--muted,#60767b)}
.cp-tile:active{background:var(--mint,#e7fae4)}
.cp-tile.off{opacity:.55}
.cp-list{list-style:none;margin:0;padding:0;display:grid}
.cp-list li{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #edf1ee;font-size:13px}
.cp-list li:last-child{border-bottom:0}
.cp-list li>div{flex:1;min-width:0}
.cp-list strong{display:block;font-size:13.5px;color:var(--ink,#183c43)}
.cp-list small{display:block;font-size:11.5px;color:var(--muted,#60767b);line-height:1.4}
.cp-list li>span{font-size:12.5px;color:#317455;white-space:nowrap;font-variant-numeric:tabular-nums}
.cp-qty{width:84px!important;flex:none;text-align:right;font-size:16px;border:1px solid #d5e2de;border-radius:10px;padding:10px}
.cp-mini{border:1px solid #d5e2de;border-radius:9px;padding:7px 10px;font-size:12.5px;background:#fff}
.cp-link{color:#317455;font-size:13px;text-decoration:underline;padding:4px 0;text-align:left}
.cp-tl{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.cp-tl li{font-size:13px;display:flex;gap:10px}
.cp-tl b{font-variant-numeric:tabular-nums;color:#317455;min-width:42px}
.cp-foot{font-size:11.5px;color:var(--muted,#60767b);text-align:center;line-height:1.5;padding:0 10px}
.cp-pl{display:flex;gap:8px}
.cp-pl select{flex:1;min-width:0;font-size:15px;border:1px solid #d5e2de;border-radius:10px;padding:10px;background:#fff}
.cp-st{font-size:11.5px!important;border-radius:999px;padding:3px 9px;background:#fbf1e2;color:#9e651b!important}
.cp-st.atendido{background:var(--mint,#e7fae4);color:#317455!important}
.cp-st.recusado{background:#fdecea;color:#b42318!important}
.cp-rom{border:1px solid var(--line,#e4ecea);border-radius:12px;padding:12px;margin-bottom:10px}
.cp-rom ul{margin:8px 0;padding-left:18px;font-size:13px;line-height:1.6}
.cp-rh small{display:block;font-size:11.5px;color:var(--muted,#60767b)}
.cp-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.cp-chip{border:1px solid #d5e2de;border-radius:999px;padding:8px 12px;font-size:13px;background:#fff}
.cp-chip.on{background:var(--petrol,#023c48);color:#fff;border-color:var(--petrol,#023c48)}
.cp-foto{display:grid!important;place-items:center;border:1.5px dashed #bcd6d3;border-radius:12px;min-height:90px;background:#f6fbf9;color:#317455!important;font-size:14px!important;cursor:pointer;overflow:hidden}
.cp-foto img{width:100%;max-height:260px;object-fit:cover}
.cp-th{width:54px;height:54px;object-fit:cover;border-radius:8px;flex:none}
.cp-h3{font-size:12.5px;font-weight:600;color:var(--petrol,#023c48);margin:0 0 6px}
.cp-ccp{padding:0 21px 18px;margin:0!important}
/* tarefas do dia */
.cp-tasks{display:grid;gap:10px;margin:10px 0 4px}
.cp-task{display:grid;gap:4px;border:1px solid var(--line,#e4ecea);border-left:5px solid #9fb9b3;border-radius:14px;padding:14px;background:#fff}
.cp-task.p-alta{border-left-color:#d99a3c}
.cp-task.p-urgente{border-left-color:#b42318}
.cp-task.feito{background:#f3faf2}
.cp-task.parcial,.cp-task.naofeito{background:#fdf7ee}
.cp-tk-h{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}
.cp-tk-h strong{font-size:15px;color:var(--petrol,#023c48);line-height:1.3}
.cp-tk-h em{font-style:normal;font-size:11px;font-weight:600;color:#b42318;background:#fdecea;border-radius:999px;padding:2px 8px;white-space:nowrap}
.cp-task small{font-size:12px;color:var(--muted,#60767b)}
.cp-tk-go{font-size:13px;font-weight:600;color:#317455;margin-top:4px}
.cp-tk-st{font-size:12.5px;font-weight:600;color:#317455;margin-top:4px}
.cp-task.parcial .cp-tk-st,.cp-task.naofeito .cp-tk-st{color:#9e651b}
.cp-btn.ghost{background:#fff;color:var(--petrol,#023c48);border:1px solid #d5e2de}
.cp-more{border-radius:16px}
.cp-more summary{cursor:pointer;font-size:13.5px;font-weight:500;color:var(--petrol,#023c48);padding:12px 4px;list-style:none}
.cp-more summary::before{content:'▸ '}
.cp-more[open] summary::before{content:'▾ '}
.cp-more[open]{display:grid;gap:12px}
.cp-tag{font-size:11.5px;color:#317455;font-weight:600}
.cp-desc{font-size:14px;line-height:1.55;background:#f6f9f8;border-radius:10px;padding:10px 12px;margin:8px 0}
.cp-seg{display:flex;flex-wrap:wrap;gap:6px}
.cp-fotos{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.cp-ft{position:relative;border-radius:12px;overflow:hidden;aspect-ratio:4/3;background:#eef4f2}
.cp-ft img{width:100%;height:100%;object-fit:cover}
.cp-ftx{position:absolute;top:6px;right:6px;width:30px;height:30px;border-radius:50%;background:#023c48cc;color:#fff;font-size:18px;line-height:1}
.cp-fadd{aspect-ratio:4/3;min-height:0!important;gap:4px;font-size:26px!important}
.cp-fadd span{font-size:13px}
.cp-warn{font-size:12.5px;color:#9e651b;margin:0}
.pg-zoom .cp-btn{width:auto;padding:0 24px}
/* relatório diário */
.rp-bar{display:flex;gap:8px;flex-wrap:wrap}
.rp-bar .cp-btn{flex:1;margin:0}
.rp-ov{position:fixed;inset:0;z-index:96;background:#eef4f2;overflow:auto;padding:16px;display:grid;gap:12px;align-content:start;justify-items:center}
.rp-ov .rp-bar{width:min(820px,100%)}
.rp-wrap{width:100%;max-width:820px}
.rp-doc{background:#fff;border:1px solid var(--line,#e4ecea);border-radius:12px;padding:22px;color:#183c43;font-size:12.5px;display:grid;gap:14px}
.rp-h{display:flex;justify-content:space-between;gap:12px;border-bottom:2px solid #023c48;padding-bottom:10px}
.rp-h small{font-size:9.5px;letter-spacing:1.2px;color:#60767b}
.rp-h h1{font:500 18px Poppins,Roboto,sans-serif;letter-spacing:-.3px;margin:2px 0;line-height:1.3}
.rp-h p{color:#60767b;font-size:12px}
.rp-h img{height:34px;width:auto;object-fit:contain;filter:brightness(0) saturate(100%) invert(15%) sepia(40%) saturate(1500%) hue-rotate(160deg)}
.rp-doc h2{font-size:12.5px;font-weight:600;color:#023c48;text-transform:uppercase;letter-spacing:.6px;margin-bottom:6px}
.rp-doc table{width:100%;border-collapse:collapse;white-space:normal}
.rp-doc th,.rp-doc td{border:1px solid #e4ecea;padding:5px 7px;font-size:11.5px;color:#183c43;background:none}
.rp-doc ul{margin:0;padding-left:18px;line-height:1.6}
.rp-t{border:1px solid #e4ecea;border-radius:8px;padding:8px 10px;margin-bottom:8px;break-inside:avoid}
.rp-th{display:flex;justify-content:space-between;gap:8px}
.rp-m{color:#60767b;font-size:11.5px;margin:2px 0}
.rp-st{font-size:11px;font-weight:600;color:#317455}
.rp-st.parcial,.rp-st.naofeito{color:#9e651b}
.rp-st.pendente{color:#60767b}
.rp-ph{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:6px}
.rp-ph img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:6px}
.rp-f{font-size:10.5px;color:#60767b;border-top:1px solid #e4ecea;padding-top:10px;line-height:1.8}
@media print{body.rp-printing *{visibility:hidden!important}body.rp-printing .rp-doc,body.rp-printing .rp-doc *{visibility:visible!important}body.rp-printing .rp-doc{position:absolute;left:0;top:0;width:100%;border:0;padding:0}body.rp-printing .rp-ov{position:static;background:#fff}}
.cp-main{align-content:start}
body.cp-on .tr-offer,body.ac-on .nt-pop{display:none!important}
.cp-atr{display:grid;gap:2px;text-decoration:none;color:inherit;padding:14px 16px}
.cp-atr b{font-size:14px;color:var(--petrol,#023c48)}
.cp-atr small{font-size:12px;color:var(--muted,#60767b)}
.cp-fimok{background:#f3faf2;border-color:#cfe9cb}
.cp-sum{list-style:none;margin:8px 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.cp-sum li{background:#f6f9f8;border-radius:10px;padding:10px;font-size:12.5px;color:var(--muted,#60767b)}
.cp-sum b{display:block;font:500 20px Poppins,Roboto,sans-serif;color:var(--petrol,#023c48)}
.cp-sum li.warn{background:#fbf1e2}
.cp-sum li.warn b{color:#9e651b}
.cp-form label.cp-chk{display:flex;align-items:center;gap:8px;font-size:14px}
.cp-chk input{width:20px!important;height:20px}
.cp-sair{width:auto!important;padding:0 10px;font-size:12px!important;font-weight:600}
.rh-vact .cp-btn{width:auto;padding:0 22px}
/* app de campo: diário atrasado */
.cp-ph{display:flex;gap:6px;flex-wrap:wrap}
.cp-ph:empty{display:none}
.cp-ph img{width:68px;height:68px;object-fit:cover;border-radius:8px}
.rp-atr{border-left:4px solid #dc9a06;padding-left:12px}
.cp-st.triagem,.cp-st.compras,.cp-st.comprado{background:#f1e9fb;color:#6b3fa0!important}
.cp-mot{display:block;color:#b42318;font-size:11.5px}
/* foto do preço na bomba */
.cp-gpreco small{display:block;font-size:11px;color:#9e651b}
.cp-hint{display:block;color:var(--muted,#60767b);font-size:12px;margin-top:3px}
.cp-ths{display:flex;gap:4px}
.cp-hint-bad{color:#b42318!important;font-weight:600}
/* app de campo: concluir tarefa exige foto com legenda */
.cp-need{margin:4px 0;padding:8px 10px;border-radius:8px;background:#fff4e0;color:#7a4b00;font-size:14px}
.cp-need.ok{background:#e7f6e4;color:#23633f}
.cp-ft.cp-ftl{display:grid;gap:6px;aspect-ratio:auto;overflow:visible;background:none}
.cp-ftl img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}
.cp-leg{font:inherit;font-size:13px;border:1px solid #cfdcdc;border-radius:6px;padding:6px 8px;width:100%}
.pg-fig,.rp-ph figure{display:inline-grid;gap:2px;margin:0 6px 6px 0;vertical-align:top;max-width:140px}
.pg-fig figcaption,.rp-ph figcaption{font-size:11.5px;color:var(--muted,#62737a);line-height:1.3}
body.cp-on #view > .sx-nav{padding:10px 12px 0;margin:0;max-width:640px;margin-inline:auto}
/* barra de navegação em cima do app (era do modo simples antigo) */
.sx-nav{display:flex;flex-direction:row;flex-wrap:nowrap;gap:8px;align-items:center;margin:0 0 14px}
.sx-nav>*{flex:0 0 auto;white-space:nowrap}
.sx-nav-b{font-weight:600;font-size:17px;background:var(--petrol);color:#fff;border-radius:10px;padding:12px 22px}
.sx-nav-b:hover{filter:brightness(1.15)}
.sx-nav-l{font-weight:600;font-size:16px;color:var(--petrol);background:#fff;border:1px solid var(--line);border-radius:10px;padding:11px 16px}
body.cp-on #view>.sx-nav{padding:10px 12px 0;margin:0 auto;max-width:640px;overflow-x:auto}
@media (max-width:420px){.sx-nav-b{font-size:15px;padding:10px 14px}.sx-nav-l{font-size:14px;padding:9px 10px}}

/* aviso rápido (window.toast) */
.toast{position:fixed;bottom:24px;left:calc(50% + 118px);transform:translate(-50%,25px);background:var(--petrol);color:var(--mint);border:1px solid #ffffff30;padding:13px 19px;border-radius:9px;font-size:12px;box-shadow:0 5px 25px #023c4820;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:100}
.toast.visible{opacity:1;transform:translate(-50%,0)}
@media (max-width:820px){.toast{left:50%}}
.fade-in{animation:enter .3s ease-out}@keyframes enter{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
