/*
Theme Name: Chácara Frotas
Theme URI: https://chacara.mg.gov.br/
Author: Luiz Felipe Coelho
Description: Plataforma municipal de gestão de frota, manutenção externa, autorizações e custos.
Version: 0.4.6
Requires at least: 6.2
Requires PHP: 8.0
Text Domain: chacara-frotas
*/
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap');
:root{--ink:#152b37;--muted:#70808d;--line:#e2e9ec;--bg:#f4f7f8;--green:#106e58;--green2:#0c5948;--mint:#e9f5f0;--orange:#f2a93b;--white:#fff}
*{box-sizing:border-box}body{margin:0;background:var(--bg);font:14px 'DM Sans',Arial,sans-serif;color:var(--ink)}h1,h2,h3,.logo{font-family:Outfit,Arial,sans-serif}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}.app{min-height:100vh;display:grid;grid-template-columns:256px minmax(0,1fr)}.sidebar{background:#102e32;color:#d7e9e5;padding:26px 18px;display:flex;flex-direction:column;gap:24px}.brand{display:flex;align-items:center;gap:12px;padding:8px}.emblem{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#d6eee3;color:#0b5745;font-size:25px}.logo{font-size:19px;font-weight:700;color:white;line-height:1}.brand small{display:block;font-size:10px;letter-spacing:1.1px;text-transform:uppercase;color:#9fc4b9;margin-top:7px}.nav{display:grid;gap:5px}.nav a{display:flex;gap:12px;align-items:center;padding:13px 14px;border-radius:11px;font-weight:600;color:#b9d1cc}.nav a:hover,.nav a.active{background:#255048;color:#fff}.nav b{font-size:17px;font-weight:400;width:23px;text-align:center}.sidefoot{margin-top:auto;padding:15px 10px;border-top:1px solid #31565a;font-size:12px;color:#b8cfcb}.main{min-width:0}.topbar{height:82px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 36px}.topbar .eyebrow,.eyebrow{color:#7a8d96;letter-spacing:1.5px;text-transform:uppercase;font-size:10px;font-weight:800}.profile{display:flex;align-items:center;gap:12px;color:#4a6570}.avatar{background:#d8eee5;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;color:var(--green);font-weight:800}.content{max-width:1490px;margin:auto;padding:32px 36px 70px}.heading{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:28px;flex-wrap:wrap}.heading h1{font-size:30px;margin:5px 0 6px;letter-spacing:-.7px}.heading p{color:var(--muted);margin:0}.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;background:var(--green);color:white;border:1px solid var(--green);padding:11px 17px;border-radius:10px;cursor:pointer;font-weight:700}.btn:hover{background:var(--green2)}.btn.outline{background:white;color:var(--green);border-color:#bdd5cc}.btn:disabled{opacity:.5;cursor:not-allowed}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:22px}.metric,.panel{background:white;border:1px solid var(--line);border-radius:16px;box-shadow:0 7px 22px rgba(19,47,55,.025)}.metric{padding:22px 24px}.metric .icon{display:inline-flex;background:#e8f4ef;color:var(--green);padding:10px;border-radius:11px;font-size:18px}.metric label{display:block;color:var(--muted);font-size:12px;margin:13px 0 8px}.metric strong{font-size:31px;font-family:Outfit;font-weight:700}.metric .tiny{font-size:11px;color:#8da1a7;margin-top:6px}.grid2{display:grid;grid-template-columns:1.4fr 1fr;gap:20px}.panel{padding:23px;margin-bottom:20px}.panel h2{font-size:18px;margin:0 0 15px}.panelhead{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.panelhead h2{margin:0}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{font-size:10px;letter-spacing:.6px;text-transform:uppercase;color:#8a9ba4;background:#f8fafb}th,td{padding:13px 12px;border-bottom:1px solid #edf1f3}td{font-weight:500}tr:last-child td{border-bottom:0}.sub{display:block;color:var(--muted);font-size:11px;margin-top:3px}.pill{display:inline-block;padding:5px 9px;border-radius:99px;font-size:11px;font-weight:800;background:#edf4f5;color:#617580}.pill.open,.pill.approved{background:#e3f5ec;color:#08754d}.pill.pending{background:#fff2d8;color:#9c6b0a}.pill.rejected{background:#ffe9e6;color:#a93222}.progress{height:9px;background:#edf1f1;border-radius:10px;overflow:hidden}.progress i{display:block;background:#18856c;height:100%;border-radius:10px}.barrow{display:grid;grid-template-columns:125px 1fr 32px;align-items:center;gap:12px;margin:17px 0}.barrow span,.barrow small{font-size:12px}.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.toolbar input,.toolbar select{width:auto;max-width:260px;flex:1}.field{display:grid;gap:7px;margin-bottom:16px}.field label{color:#546c77;font-weight:700;font-size:12px}.field input,.field select,.field textarea,.toolbar input,.toolbar select{border:1px solid #dbe4e8;background:white;border-radius:9px;padding:11px 12px;color:#1b3943;min-width:0}.field textarea{min-height:90px;resize:vertical}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.alert{border-radius:11px;padding:13px 15px;margin-bottom:20px;background:#e5f5ea;color:#155c40;border:1px solid #cde9d4}.alert.error{background:#fff0ee;color:#9a2921;border-color:#f5d2cb}.callout{padding:18px;border-radius:12px;background:#f0f7f4;color:#496e61;line-height:1.6}.steps{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 21px}.steps span{background:#f1f5f5;border-radius:9px;padding:10px 13px;color:#566f76;font-size:12px}.empty{padding:28px;text-align:center;color:var(--muted)}.loginwrap{min-height:100vh;display:grid;place-items:center;background:linear-gradient(120deg,#082f35,#197056);padding:20px}.login{width:min(450px,100%);background:white;border-radius:22px;padding:36px;box-shadow:0 22px 80px #072c2e50}.login h1{font-size:30px;margin-bottom:8px}.login p{color:var(--muted)}.login input{width:100%;padding:12px;border:1px solid var(--line);border-radius:9px}.login label{display:block;margin:12px 0 5px}.login #wp-submit{background:var(--green);color:white;font-weight:700;cursor:pointer}.login .login-remember label{display:flex;gap:8px;align-items:center}.login .login-remember input{width:auto}.footnote{font-size:12px;color:var(--muted);margin-top:18px;line-height:1.6}.feature{display:flex;align-items:center;gap:12px;padding:14px;background:#f6f9f8;border-radius:10px;margin:8px 0}.feature span{color:var(--green);font-size:20px}.actions{display:flex;gap:8px;flex-wrap:wrap}.inlineform{display:inline}.fancybig{font:700 44px Outfit;color:#0c735b}.landing{min-height:100vh;background:linear-gradient(125deg,#092f36 5%,#106d58 92%);color:white;display:grid;place-items:center;padding:32px}.landing-inner{max-width:850px;text-align:center}.landing h1{font-size:clamp(36px,7vw,68px);letter-spacing:-2px;margin:17px 0}.landing p{font-size:18px;color:#c9e3dc;line-height:1.7}.landing .btn{background:#f3bd5d;border-color:#f3bd5d;color:#153a33;margin:20px auto;font-size:16px;padding:16px 26px}.landing .brand{justify-content:center}.landing .brand .logo{font-size:21px}.landing .brand small{color:#b8d6ce}.notice{margin:0 0 17px;color:#7d919a;font-size:12px}.tinyref{font-size:11px;color:#879ba3}
.cf-logo{width:48px;height:48px;object-fit:contain;border-radius:8px;background:#fff;padding:3px;flex-shrink:0}
@media(max-width:1050px){.app{grid-template-columns:78px 1fr}.sidebar{padding:22px 10px}.brand{justify-content:center}.brand .logo,.nav a span,.sidefoot{display:none}.nav a{justify-content:center}.grid2{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.app{display:block}.sidebar{padding:12px;display:block}.sidebar .brand{display:none}.nav{display:flex;overflow:auto}.nav a{padding:10px 13px;white-space:nowrap}.nav a span{display:inline}.topbar{height:65px;padding:0 18px}.content{padding:23px 14px 60px}.metrics{gap:9px}.metric{padding:15px}.metric strong{font-size:25px}.panel{padding:15px}.formgrid{grid-template-columns:1fr}.heading h1{font-size:25px}}
@media(max-width:680px){.driver-mode .sidebar{position:fixed;z-index:30;bottom:0;left:0;right:0;background:#fff;box-shadow:0 -3px 30px #17343b20;padding:3px 8px}.driver-mode .nav{justify-content:space-around}.driver-mode .nav a{color:#596d77;display:flex;flex-direction:column;gap:3px;padding:7px 5px;font-size:9px}.driver-mode .nav a.active{color:#106e58;background:#edf7f2}.driver-mode .nav b{font-size:20px}.driver-mode .nav a span{max-width:65px;overflow:hidden;text-overflow:ellipsis}.driver-mode .content{padding-bottom:105px}.driver-mode .topbar{background:#fff}.driver-mode .heading h1{font-size:27px}}

/* Identidade Chácara: azul #00308B extraído da logomarca enviada. */
:root{--ink:#142b4d;--muted:#6a7d96;--line:#e1e8f1;--bg:#f3f6fa;--green:#00308b;--green2:#00266e;--mint:#e8eefb;--orange:#dcb14f}
.sidebar{background:linear-gradient(180deg,#072657 0%,#031b40 100%);color:#dfebfc}
.nav a{color:#c5d7f0}.nav a:hover,.nav a.active{background:#194480;color:#fff}.sidefoot{border-color:#2d4b7b;color:#b7c9e3}
.metric .icon,.avatar{background:#e9effc;color:#00308b}.progress i{background:#00308b}.btn{background:#00308b;border-color:#00308b}.btn:hover{background:#00266e}.btn.outline{color:#00308b;border-color:#aebfdf}.feature span{color:#00308b}.fancybig{color:#00308b}
.landing{background:radial-gradient(circle at 85% 16%,#2c5697 0%,transparent 34%),linear-gradient(130deg,#081f49 2%,#00308b 95%)}
.landing .btn{background:#f2c35a;border-color:#f2c35a;color:#162b4d}.loginwrap{background:linear-gradient(140deg,#061a43,#00308b)}
.pill.approved,.pill.open{background:#e5effc;color:#00308b}.callout{background:#edf3fd;color:#355984}
.cf-logo.cf-official{display:block;width:205px;height:72px;max-width:100%;object-fit:contain;object-position:left center;border-radius:9px;background:#fff;padding:5px}
.brand:has(.cf-official){justify-content:center;padding:5px 0}.brand:has(.cf-official) .logo{display:none}
.landing .brand .cf-official{width:min(360px,85vw);height:118px;object-position:center;padding:14px;border-radius:17px;box-shadow:0 15px 35px #00143936}
.login .cf-official{width:100%;height:100px;padding:8px;object-position:center;border:1px solid #e5ecf4}
.cf-print-logo{max-width:850px;margin:24px auto -16px}.cf-print-logo .cf-logo{width:240px;height:75px;object-fit:contain;background:#fff}
@media(max-width:1050px){.sidebar .cf-logo.cf-official{width:55px;height:55px;object-fit:cover;object-position:left center}.sidebar .brand:has(.cf-official){justify-content:center}}
@media(max-width:680px){.sidebar .brand{display:none}.driver-mode .nav a.active{background:#eaf0fc;color:#00308b}}

/* Barra institucional VBU, adaptada ao rodapé do Chácara Frotas. */
.cf-institutional-footer{position:relative;z-index:2;width:100%;font-family:'DM Sans',Arial,sans-serif}
.cf-footer-top{min-height:88px;padding:22px 3.5% 20px;background:linear-gradient(115deg,#3e647c 0%,#2c4c78 50%,#3e5e96 100%);text-align:center;display:flex;flex-direction:column;justify-content:center;gap:20px}
.cf-footer-rule{height:1px;background:rgba(215,226,243,.18);width:100%}
.cf-footer-description{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;font-size:10px;font-weight:800;letter-spacing:.65px;color:#9eb9e1}
.cf-footer-dot{width:5px;height:5px;background:#f2cb44;border-radius:50%;display:inline-block;flex-shrink:0}
.cf-footer-bottom{min-height:64px;background:#fff;display:flex;justify-content:center;align-items:center;gap:66px;padding:13px 18px;color:#143565;border-top:1px solid #ecf0f5}
.cf-vbu-mark{display:flex;flex-direction:column;align-items:center;line-height:1;color:#173967}
.cf-vbu-mark strong{font-family:Outfit,Arial,sans-serif;font-size:23px;letter-spacing:-3px;font-weight:800}
.cf-vbu-mark strong span{color:#178b6b}
.cf-vbu-mark small{font-size:6px;font-weight:900;letter-spacing:.2px;margin-top:2px}
.cf-footer-credit{font-size:12px;font-weight:600;letter-spacing:-.1px}
.cf-footer-credit strong{font-weight:900;color:#072b5c}
.cf-footer-credit a{font-weight:900;color:#047347}
.cf-footer-credit a:hover{text-decoration:underline}
.cf-footer-separator{padding:0 4px;color:#677b91}
@media(max-width:680px){.cf-footer-top{min-height:60px;padding:13px 12px;gap:11px}.cf-footer-description{font-size:8px;gap:7px;letter-spacing:.25px}.cf-footer-bottom{gap:20px;min-height:57px;padding:10px 12px}.cf-footer-credit{font-size:11px}.cf-vbu-mark strong{font-size:20px}.cf-footer-driver .cf-footer-top{display:none}.cf-footer-driver .cf-footer-bottom{min-height:42px;padding:8px 12px 85px}.cf-footer-driver .cf-vbu-mark{display:none}}
@media print{.cf-institutional-footer{display:none!important}}

/* Navegação lateral sempre visível, mesmo em páginas com tabelas extensas. */
@media(min-width:681px){
  .app{align-items:start}
  .sidebar{position:sticky;top:0;align-self:start;height:100vh;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#46648e transparent}
  .sidebar::-webkit-scrollbar{width:6px}
  .sidebar::-webkit-scrollbar-thumb{background:#46648e;border-radius:10px}
}
.cf-user-actions{border-top:1px solid var(--line);margin-top:22px;padding-top:19px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.cf-user-actions h2{flex-basis:100%;margin:0 0 4px}
.cf-user-actions .btn{font-size:12px}
.cf-table-actions{display:flex;align-items:center;gap:7px;white-space:nowrap}
.cf-table-actions .btn{padding:10px 12px;font-size:12px}
.btn.cf-danger-button{background:#b42d36;border-color:#b42d36;color:#fff}
.btn.cf-danger-button:hover{background:#922029;border-color:#922029}
.cf-danger-panel{border-color:#edc6c9}
.cf-danger-panel h2{color:#9d2630}
.cf-danger-check{display:flex;align-items:flex-start;gap:10px;color:#7d3039;font-weight:700;line-height:1.5}
.cf-danger-check input{width:18px;height:18px;flex-shrink:0;margin-top:2px}

/* v0.3.0 — prontuário individual de patrimônio */
.cf-vehicle-name{font-weight:800;color:#082a65;text-decoration:none}.cf-vehicle-name:hover{text-decoration:underline}
.btn.cf-open-vehicle{font-size:12px;padding:9px 13px;white-space:nowrap}
.cf-vehicle-identity{display:flex;align-items:center;gap:22px;flex-wrap:wrap;background:linear-gradient(110deg,#fff,#edf3ff);border:1px solid #dbe5f7;border-radius:20px;padding:26px;margin-bottom:20px;box-shadow:0 8px 28px rgba(10,40,90,.035)}
.cf-vehicle-icon{display:grid;place-items:center;width:74px;height:74px;flex-shrink:0;border-radius:18px;background:#dfeafd;color:#07358a;font-size:39px}
.cf-vehicle-identity-main{flex:1;min-width:160px}.cf-vehicle-identity-main h2{font-size:30px;color:#092953;margin:5px 0}.cf-vehicle-identity-main p{margin:0;color:#6a7d96}.cf-vehicle-tags{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.cf-vehicle-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:21px}.cf-vehicle-metrics .metric{min-width:0}.cf-vehicle-metrics .metric strong{font-size:clamp(19px,2vw,27px);white-space:normal;overflow-wrap:anywhere}
.cf-vehicle-tabs{display:flex;gap:7px;flex-wrap:wrap;border-bottom:1px solid #dce5f3;margin:5px 0 22px;padding-bottom:12px}.cf-vehicle-tabs a{padding:11px 15px;color:#526782;text-decoration:none;font-weight:750;font-size:13px;border-radius:12px;transition:background .15s,color .15s}.cf-vehicle-tabs a:hover{background:#e9effa}.cf-vehicle-tabs a.active{background:#09358c;color:white}
.cf-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.cf-detail-grid>div{padding:14px;border:1px solid #e4ebf5;border-radius:12px;background:#f9fbff;min-width:0}.cf-detail-grid span{display:block;font-size:11px;color:#71839b;margin-bottom:7px}.cf-detail-grid strong{display:block;color:#132f56;overflow-wrap:anywhere;font-size:13px}
.cf-health-alert,.cf-health-ok{padding:14px 16px;margin:10px 0;border-radius:12px;font-size:13px;font-weight:650}.cf-health-alert{background:#fff6e2;color:#815611;border:1px solid #f1dfaf}.cf-health-ok{background:#e7f6ec;color:#126c41;border:1px solid #cce9d6}
.cf-profile-form{margin-top:10px;max-width:800px}.cf-cost-row{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #e8edf5;padding:17px 0;color:#556985}.cf-cost-row strong{color:#102d55;text-align:right}.cf-cost-total{font-weight:800;font-size:17px}.cf-cost-total strong{color:#00308b}
.cf-table-actions .cf-open-vehicle{padding:9px 12px;font-size:11px}
.cf-table-actions .cf-danger-button{white-space:nowrap}
@media(max-width:1100px){.cf-vehicle-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.cf-vehicle-metrics,.cf-detail-grid{grid-template-columns:1fr}.cf-vehicle-identity{padding:18px;gap:14px}.cf-vehicle-identity-main h2{font-size:23px}.cf-vehicle-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.cf-vehicle-tabs a{white-space:nowrap}}

/* v0.3.2 — frota em linhas compactas sem rolagem horizontal */
.cf-fleet-panel{overflow:hidden}
.cf-fleet-head,.cf-fleet-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1.13fr) minmax(0,1fr) minmax(0,1.35fr);gap:14px;align-items:center}
.cf-fleet-head{padding:15px 16px;background:#f4f7fc;border-radius:12px 12px 0 0;color:#7f91a9;font-size:10px;font-weight:800;letter-spacing:.065em}
.cf-fleet-row{padding:17px 16px;border-bottom:1px solid #e5ebf4;min-width:0;transition:background .15s}
.cf-fleet-row:hover{background:#f9fbff}.cf-fleet-row:last-child{border-bottom:0}
.cf-fleet-row>div{min-width:0}.cf-fleet-primary,.cf-fleet-ident{display:flex;flex-direction:column;gap:5px;overflow-wrap:anywhere}
.cf-fleet-primary .cf-vehicle-name{font-size:13px;line-height:1.35}.cf-fleet-ident strong{font-size:13px;color:#14345f}
.cf-fleet-sub{color:#7c8ca5;font-size:11px;line-height:1.45}.cf-fleet-department{font-size:12px;color:#18385d;overflow-wrap:anywhere}
.cf-fleet-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;min-width:0}
.cf-fleet-actions .btn{font-size:11px;padding:10px 11px;white-space:nowrap;text-align:center;line-height:1.2}
.cf-fleet-mobile-label{display:none}
.cf-fleet-pagination{margin-top:18px;border-top:1px solid #e7ecf5;padding-top:17px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;font-size:12px;color:#71819a}
.cf-fleet-page-links{display:flex;flex-wrap:wrap;gap:5px}.cf-fleet-page-links a{display:inline-flex;align-items:center;justify-content:center;min-height:35px;min-width:35px;padding:7px 11px;border:1px solid #d8e2f1;border-radius:9px;color:#173e78;font-weight:700;text-decoration:none}.cf-fleet-page-links a.active{background:#00308b;color:white;border-color:#00308b}
@media(max-width:1150px){.cf-fleet-head{display:none}.cf-fleet-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:#fff;border:1px solid #e6ecf5;border-radius:14px;margin-top:10px;gap:13px}.cf-fleet-actions{justify-content:flex-end}.cf-fleet-department{align-self:center}.cf-fleet-mobile-label{display:block;color:#8291a7;font-size:10px;margin-bottom:4px}}
@media(max-width:670px){.cf-fleet-row{grid-template-columns:minmax(0,1fr);padding:16px}.cf-fleet-actions{justify-content:stretch}.cf-fleet-actions .btn{flex:1;min-width:0}.cf-fleet-department{align-self:start}.cf-fleet-primary .cf-vehicle-name{font-size:15px}.cf-fleet-pagination{justify-content:center;text-align:center}}

/* v0.4.0 — Central de manutenção e oficinas */
.cf-workshops-grid{align-items:start}.cf-workshop-list{display:grid;gap:12px;margin-top:16px}.cf-workshop-card{border:1px solid #e3eaf3;background:#f9fbff;border-radius:13px;padding:16px}.cf-workshop-card-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.cf-workshop-card-head strong{color:#12335c;overflow-wrap:anywhere}.cf-workshop-card p{font-size:12px;color:#687d96;margin:8px 0}.cf-workshop-card .btn{margin-top:8px;font-size:12px}
.cf-quote-line-head,.cf-quote-line{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,2fr) minmax(0,.82fr) minmax(0,1fr) 40px;gap:8px;align-items:center}
.cf-quote-line-head{font-size:10px;font-weight:800;letter-spacing:.03em;color:#7d8fa8;margin:16px 0 8px;padding:0 2px}
.cf-quote-line{margin-bottom:9px;min-width:0}.cf-quote-line input,.cf-quote-line select{min-width:0;width:100%;border:1px solid #dce4ef;border-radius:9px;min-height:40px;padding:8px;font-size:12px;background:#fff;color:#18345a}
.cf-quote-line .cf-remove-line.btn{padding:4px;min-width:35px;height:39px;color:#9d303b;font-size:19px}
.cf-quote-bottom{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:19px 0}.cf-quote-sum{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#eaf1ff;border-radius:11px;padding:13px 16px;color:#153b75;font-weight:750}.cf-quote-sum strong{font-size:20px;color:#00308b}
.cf-quote-summary>div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #e5ecf5;padding:12px 0;font-size:12px}.cf-quote-summary small{display:block;color:#7789a4;margin-top:4px}.cf-quote-summary>div>strong{white-space:nowrap}
.cf-guide-wrap{max-width:890px;margin:38px auto;padding:40px;background:#fff;border:1px solid #dce5f1;border-radius:18px;box-shadow:0 18px 50px rgba(11,40,78,.06)}.cf-guide-header{display:flex;gap:20px;align-items:center;padding-bottom:21px;border-bottom:2px solid #00308b}.cf-guide-header img{max-width:150px;max-height:92px;object-fit:contain}.cf-guide-header h1{margin:7px 0 8px;font-size:27px;color:#0c2d62}.cf-guide-header p{margin:0;color:#657895}
.cf-guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:23px 0}.cf-guide-grid>div{padding:13px;border:1px solid #e0e7f2;border-radius:10px;display:grid;gap:5px}.cf-guide-grid small{font-size:10px;color:#8393a9}.cf-guide-grid strong{color:#12345c}.cf-guide-grid span{font-size:12px;color:#667990}.cf-guide-wrap h2{font-size:17px;margin:23px 0 10px;color:#123b79}.cf-guide-wrap p{font-size:13px;line-height:1.6}.cf-guide-total{display:flex;justify-content:space-between;align-items:center;background:#eaf0ff;border-radius:12px;padding:16px 19px;margin:14px 0;color:#10386f;font-weight:800}.cf-guide-total strong{font-size:24px}.cf-guide-approvals{display:grid;gap:7px}.cf-guide-approvals>div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #e4ebf4;padding:11px 0;font-size:12px}.cf-guide-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}
@media(max-width:1080px){.cf-quote-line-head{display:none}.cf-quote-line{grid-template-columns:1fr 1fr}.cf-quote-line input[name="item_description[]"]{grid-column:1/-1}.cf-quote-line .cf-remove-line.btn{grid-column:2;justify-self:end}}
@media(max-width:680px){.cf-guide-wrap{padding:19px;margin:15px 8px}.cf-guide-header{flex-wrap:wrap}.cf-guide-grid{grid-template-columns:1fr}.cf-quote-line{grid-template-columns:1fr}.cf-quote-line input[name="item_description[]"]{grid-column:auto}.cf-quote-line .cf-remove-line.btn{grid-column:auto}.cf-quote-sum{flex:1}.cf-guide-total{flex-wrap:wrap}}

/* v0.4.1 — arquivos internos */
.cf-documents{margin-top:19px}.cf-document-list{display:grid;gap:10px;margin:15px 0 23px}.cf-document-row{display:flex;gap:13px;align-items:center;border:1px solid #e1e8f3;background:#f9fbff;border-radius:12px;padding:13px}.cf-document-symbol{flex-shrink:0;display:grid;place-items:center;background:#e6eeff;color:#063b91;width:42px;height:42px;border-radius:10px;font-size:21px}.cf-document-row>div{flex:1;min-width:0}.cf-document-row strong{display:block;font-size:13px;color:#1c3b63;overflow-wrap:anywhere}.cf-document-row small{display:block;font-size:11px;color:#7b8ca5;margin-top:4px}.cf-document-row .btn{flex-shrink:0;font-size:12px;padding:9px 12px}.cf-document-form{border-top:1px solid #e2e9f2;margin-top:20px;padding-top:18px}.cf-document-form input[type="file"],.cf-damage-photo input[type="file"]{max-width:100%;font-size:12px}.cf-damage-photo{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;padding:19px;border:1px dashed #afc4e1;background:#f6f9ff;border-radius:13px;margin:17px 0}.cf-damage-photo strong{color:#1a3e77}
@media(max-width:680px){.cf-document-row{flex-wrap:wrap}.cf-document-row .btn{width:100%}}

/* v0.4.2 — perfil administrador sem secretaria */
.cf-user-department-field[hidden]{display:none!important}

/* v0.4.3 — senha definida no cadastro e redefinição opcional na edição */
.cf-password-controls{display:flex;flex-wrap:wrap;align-items:center;gap:9px 17px;margin:-5px 0 18px;color:#70809b;font-size:11px}
.cf-password-controls label{display:inline-flex;align-items:center;gap:7px;color:#224678;font-size:12px;white-space:nowrap;cursor:pointer}
.cf-password-controls input{accent-color:#00308b}

/* v0.4.5 — navegação móvel com atalhos fixos e menu completo */
.cf-mobile-tabs,.cf-mobile-scrim,.cf-mobile-sheet{display:none}
@media(max-width:680px){
  .sidebar,.driver-mode .sidebar{display:none!important}
  .cf-mobile-tabs{position:fixed;inset:auto 0 0;z-index:1000;display:grid;grid-template-columns:repeat(var(--cf-mobile-columns,5),minmax(0,1fr));gap:2px;background:rgba(255,255,255,.97);backdrop-filter:blur(16px);border-top:1px solid #dce5f2;box-shadow:0 -8px 28px rgba(9,34,75,.10);padding:6px 6px calc(6px + env(safe-area-inset-bottom,0px));min-height:68px}
  .cf-mobile-tab{appearance:none;background:transparent;border:0;border-radius:12px;min-width:0;min-height:56px;padding:7px 2px 5px;color:#667992;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;cursor:pointer;text-decoration:none}
  .cf-mobile-tab svg{display:block;flex-shrink:0;stroke-width:1.85}
  .cf-mobile-tab span{display:block;max-width:100%;font-size:10px;line-height:1.2;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .cf-mobile-tab.is-active{background:#e9f0ff;color:#00308b}
  .cf-mobile-tab:focus-visible,.cf-mobile-sheet a:focus-visible,.cf-mobile-sheet button:focus-visible{outline:2px solid #00308b;outline-offset:2px}
  .cf-mobile-scrim{display:block;position:fixed;inset:0;z-index:1100;background:rgba(4,24,58,.58);backdrop-filter:blur(2px)}
  .cf-mobile-sheet{display:flex;flex-direction:column;position:fixed;inset:auto 0 0;z-index:1110;max-height:min(85dvh,760px);background:#fff;border-radius:24px 24px 0 0;box-shadow:0 -18px 60px rgba(1,19,55,.25);overflow:hidden;padding-bottom:env(safe-area-inset-bottom,0px)}
  .cf-mobile-scrim[hidden],.cf-mobile-sheet[hidden]{display:none!important}
  .cf-mobile-sheet-header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:21px 19px 15px;border-bottom:1px solid #e9edf5}
  .cf-mobile-sheet-header>div{display:grid;gap:5px;min-width:0}
  .cf-mobile-sheet-header small{font-size:9px;letter-spacing:.12em;font-weight:800;color:#8a99b0}
  .cf-mobile-sheet-header strong{font:700 22px Outfit,Arial,sans-serif;color:#102e62}
  .cf-mobile-sheet-close{border:1px solid #dce5f2;background:#f6f9ff;color:#234d8b;width:42px;height:42px;display:grid;place-items:center;border-radius:12px;flex-shrink:0;cursor:pointer}
  .cf-mobile-sheet-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:16px 18px 18px;align-content:start}
  .cf-mobile-sheet-link{min-height:76px;display:flex;align-items:center;gap:11px;min-width:0;padding:11px 13px;border:1px solid #e0e8f3;background:#f9fbff;border-radius:13px;font-size:12px;font-weight:700;line-height:1.4;color:#27456f;text-decoration:none}
  .cf-mobile-sheet-link svg{flex-shrink:0;color:#00308b}
  .cf-mobile-sheet-link span{overflow-wrap:anywhere;min-width:0}
  .cf-mobile-sheet-link.is-active{background:#e8efff;border-color:#a9c1ed;color:#00308b}
  .cf-mobile-sheet-logout{flex-shrink:0;display:flex;align-items:center;justify-content:center;gap:9px;margin:0 18px 13px;padding:13px;border-radius:11px;border:1px solid #eedde3;background:#fff6f7;color:#a02a45;font-size:12px;font-weight:800;text-decoration:none}
  .main .content,.driver-mode .content{padding-bottom:calc(106px + env(safe-area-inset-bottom,0px))}
  body:has(.cf-mobile-tabs) .cf-institutional-footer{margin-bottom:calc(68px + env(safe-area-inset-bottom,0px))}
  html.cf-mobile-menu-is-open,html.cf-mobile-menu-is-open body{overflow:hidden}
}
@media(max-width:360px){.cf-mobile-tab span{font-size:9px}.cf-mobile-sheet-grid{gap:8px;padding:12px}.cf-mobile-sheet-link{padding:9px;font-size:11px}}
@media print{.cf-mobile-tabs,.cf-mobile-scrim,.cf-mobile-sheet{display:none!important}}
.cf-document-superseded{background:#f2f4f7;opacity:.82}.cf-document-version{font-weight:700;color:#355ea0!important}
