:root{--campo-bg: #0a3d4f;--campo-surface: #ffffff;--campo-primary: #0070be;--campo-text: #0a3d4f;--campo-muted: #4a5b6b;--campo-border: #d4dde4}*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,system-ui,-apple-system,sans-serif}.campo-login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(160deg,#0a3d4f,#0070be)}.campo-login__card{width:min(400px,100%);background:var(--campo-surface);border-radius:16px;padding:32px 26px;box-shadow:0 20px 50px #06142859;display:flex;flex-direction:column;gap:14px}.campo-login__eyebrow{margin:0;letter-spacing:.1em;font-size:12px;font-weight:700;color:var(--campo-primary)}.campo-login__card h1{margin:0;color:var(--campo-text);font-size:24px}.campo-login__hint{margin:0;color:var(--campo-muted);font-size:14px}.campo-login__error{margin:0;background:#fdecea;color:#b4231f;padding:10px 12px;border-radius:10px}.campo-login__form{display:flex;flex-direction:column;gap:14px}.campo-login__form label{display:flex;flex-direction:column;gap:6px}.campo-login__form label span{font-weight:600;color:var(--campo-text);font-size:14px}.campo-login__form input{padding:12px 14px;border:1px solid var(--campo-border);border-radius:10px;font-size:16px}.campo-login__form input:focus-visible{outline:3px solid #3e98cc;outline-offset:1px}.campo-login__form button{margin-top:4px;padding:12px 16px;border:none;border-radius:10px;background:var(--campo-primary);color:#fff;font-weight:700;font-size:16px;cursor:pointer}.campo-login__form button:disabled{opacity:.6;cursor:progress}.campo-app{min-height:100vh;background:#f4f7fa;color:#1b2733;box-sizing:border-box}.campo-header{background:#0b5fb0;color:#fff;padding:18px 20px 20px}.campo-header__topo{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.campo-header__data{margin:0;font-size:12px;color:#bfd8f2}.campo-header__titulo{margin:2px 0 0;font-size:21px;font-weight:700}.campo-header__acoes{display:flex;align-items:center;gap:10px}.campo-net{width:10px;height:10px;border-radius:50%;display:inline-block;flex:0 0 auto}.campo-net--on{background:#6ee7b7}.campo-net--off{background:#fca5a5}.campo-header__sair{background:#ffffff29;color:#fff;border:none;border-radius:999px;padding:8px 16px;font-size:13px;font-weight:600;cursor:pointer}.campo-kpis{display:flex;gap:10px;margin-top:16px}.campo-kpi{flex:1;background:#ffffff24;border-radius:11px;padding:10px 12px;display:flex;flex-direction:column}.campo-kpi__num{font-size:20px;font-weight:700}.campo-kpi__lbl{font-size:11px;color:#bfd8f2}.campo-app__topo{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px}.campo-corpo{padding:14px 16px 24px}.campo-filtros{display:flex;gap:8px;overflow-x:auto;padding-bottom:12px}.campo-chip{flex:0 0 auto;background:#fff;color:#55677a;border:1px solid #e2e8f0;border-radius:999px;padding:7px 14px;font-size:12.5px;font-weight:600;cursor:pointer;white-space:nowrap}.campo-chip--ativo{background:#0b5fb0;color:#fff;border-color:#0b5fb0}.campo-banner{border-radius:12px;padding:10px 12px;margin:0 0 12px;font-size:13.5px}.campo-banner--offline{background:#fef3e7;color:#8a4b06}.campo-banner--info{background:#e8f1fb;color:#0b5fb0}.campo-banner--erro{background:#fdecec;color:#c6273e}.campo-estado{color:#55677a;padding:20px 0;text-align:center}.campo-lista{list-style:none;margin:0;padding:0;display:grid;gap:10px}.campo-ordem{width:100%;text-align:left;background:#fff;border:1px solid #e2e8f0;border-radius:15px;padding:14px;color:inherit;cursor:pointer;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px}.campo-ordem__icone{width:40px;height:40px;border-radius:12px;background:#f1f5f9;display:flex;align-items:center;justify-content:center}.campo-ordem__icone--corte{color:#c6273e}.campo-ordem__icone--religacao{color:#0b5fb0}.campo-ordem__corpo{display:grid;gap:3px;min-width:0}.campo-ordem__linha{display:flex;align-items:center;gap:8px}.campo-ordem__tipo{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.campo-ordem__tipo--corte{color:#c6273e}.campo-ordem__tipo--religacao{color:#0b5fb0}.campo-ordem__status{font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px;background:#fef3e7;color:#b45309}.campo-ordem__status--em_execucao{background:#e8f1fb;color:#0b5fb0}.campo-ordem__status--cancelada{background:#fdecec;color:#c6273e}.campo-ordem__titular{font-weight:700;font-size:15px;color:#1b2733}.campo-ordem__endereco{font-size:12.5px;color:#55677a}.campo-ordem__meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px;font-size:12px;color:#94a3b8}.campo-ordem__ref{font-weight:600}.campo-ordem__dist{color:#0b5fb0;font-weight:600}.campo-ordem__regiao{font-size:12px;color:#94a3b8}.campo-ordem__chevron{color:#c0ccda;font-size:22px;align-self:center}.campo-ordem__aviso{margin-top:4px;background:#f1f5f9;border-radius:10px;padding:9px 12px;font-size:11.5px;color:#8a4b06}.campo-tag{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:5px 12px;width:fit-content}.campo-tag--corte{background:#fdecec;color:#c6273e}.campo-tag--religacao{background:#e8f1fb;color:#0b5fb0}.campo-detalhe{background:#fff;border:1px solid #e2e8f0;border-radius:15px;padding:16px;margin-bottom:14px}.campo-detalhe h1{margin:0 0 6px;font-size:22px;color:#1b2733}.campo-detalhe__endereco{margin:0;color:#55677a}.campo-detalhe__regiao,.campo-detalhe__motivo,.campo-detalhe__nota{margin:6px 0 0;color:#55677a;font-size:14px}.campo-acoes{display:grid;gap:10px}.campo-trava{background:#fef3e7;color:#8a4b06;border-radius:12px;padding:12px;margin:0;font-size:14px}.campo-btn{border:1px solid #e2e8f0;background:#fff;color:#1b2733;border-radius:12px;padding:14px;font-size:16px;font-weight:600;cursor:pointer}.campo-btn--primario{background:#0b5fb0;border-color:#0b5fb0;color:#fff}.campo-btn--ghost{background:transparent;border-color:transparent;color:#0b5fb0}.campo-btn--secundario{background:#e8f6ef;border-color:#cdebdd;color:#1f6f4a;display:block;text-align:center;margin-bottom:12px}.campo-btn--ocupado{opacity:.7}.campo-btn:disabled{opacity:.5;cursor:not-allowed}
