:root{--primary:#036AAB;--primary-ink:#024E80;--primary-soft:#e4f0f9;--sidebar:#333366;--accent:#0091D4;--bg:#eef2f7;--surface:#fff;--surface-2:#f2f6fb;--ink:#1b2733;--ink-2:#6B7374;--ink-3:#6B7374;--border:#d8dfe6;--border-2:#b9c7d4;--brand:var(--primary);--brand-ink:var(--primary-ink);--brand-bg:var(--primary-soft);--amber:#b06a00;--amber-bg:#fbeed6;--blue:#036AAB;--blue-bg:#e4f0f9;--red:#b0341f;--red-bg:#f8e0da;--gray:#6B7374;--gray-bg:#f2f6fb;--slate:#475569;--slate-bg:#e2e8f0;--sans:"Nunito Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--mono:"IBM Plex Mono",ui-monospace,"Cascadia Mono",Consolas,monospace;--menu-largura:264px;--menu-recolhido:76px;--radius:10px;--sombra:0 1px 2px rgba(27,39,51,.08)}html,body{height:100%}button,input,select,textarea{font:inherit}button:focus-visible,a:focus-visible,[tabindex="0"]:focus-visible{outline:3px solid #38bdf8;outline-offset:3px}input:focus-visible,select:focus-visible{outline:2px solid var(--primary-soft);outline-offset:1px}.app{grid-template-columns:var(--menu-largura) minmax(0,1fr);grid-template-rows:minmax(0,1fr);height:100dvh;min-height:0;transition:grid-template-columns .18s ease;overflow:hidden}.app.menu-recolhido{grid-template-columns:var(--menu-recolhido) minmax(0,1fr)}.side{display:flex;position:relative;top:auto;min-width:0;min-height:0;height:100%;padding:12px;gap:8px;background:linear-gradient(180deg,#02233f,#01192f 52%,#000f20);color:#f8fafc}.menu-toggle,.menu-close,.menu-open{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:40px;padding:8px;border-radius:7px;color:inherit;background:transparent}.menu-toggle{justify-content:flex-start;width:100%;font-size:12px;flex-shrink:0}.menu-toggle:hover,.menu-close:hover{background:#38bdf824}.menu-toggle svg,.menu-close svg,.menu-open svg{width:20px;height:20px;flex-shrink:0}.menu-close,.mobile-menu-bar{display:none}.side .brand{flex-direction:column;align-items:flex-start;justify-content:center;gap:9px;min-height:82px;padding:14px 4px;border:0;flex-shrink:0}.logo-energold{display:block;width:170px;max-width:100%;height:auto;object-fit:contain}.side .brand-sub{color:#f8fafc;opacity:.9;font-family:var(--sans);font-size:9px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.nav{min-height:0;padding:0;scrollbar-width:thin;scrollbar-color:#456278 transparent}.nav-label{color:#f8fafc;opacity:.9;font-size:10px;padding:14px 8px 7px;letter-spacing:.08em}.nav-item{min-height:40px;padding:9px 10px;gap:11px;border-radius:8px;font-size:13px;font-weight:600;color:#f8fafc}.nav-item svg{width:18px;height:18px;opacity:1}.nav-item:hover{background:#38bdf824;color:#fff}.nav-item.active{background:#0ea5e947;box-shadow:inset 3px 0 #38bdf8}.nav-item .tag{color:#f8fafc;background:#ffffff1a}.nav-text{min-width:0;overflow-wrap:anywhere}.side-foot{padding:12px 2px 0;flex-shrink:0}.user-tog{padding:0;flex-wrap:wrap;gap:10px;cursor:default}.user-tog:hover{background:transparent}.avatar{width:32px;height:32px;background:#075985;color:#fff;font-weight:700}.who{font-size:12px;font-weight:700;color:#fff;overflow-wrap:anywhere}.role{color:#f8fafc;font-size:11px}.user-tog .swap{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:38px;margin-top:2px;padding:8px;border:1px solid rgba(248,250,252,.3);color:#fff;border-radius:7px;font-size:12px}.user-tog .swap svg{width:18px;height:18px}.menu-recolhido .side .brand{align-items:center}.menu-recolhido .logo-energold{width:52px}.menu-recolhido .brand-sub,.menu-recolhido .nav-text,.menu-recolhido .nav-label,.menu-recolhido .nav-item .tag,.menu-recolhido .user-text,.menu-recolhido .swap-text,.menu-recolhido .menu-toggle span{display:none}.menu-recolhido .nav-item,.menu-recolhido .user-tog,.menu-recolhido .menu-toggle{justify-content:center}.menu-recolhido .menu-toggle svg{transform:rotate(180deg)}.main{min-width:0;min-height:0;height:100%;overflow:hidden}.topbar{position:relative;top:auto;flex-shrink:0;min-height:68px;height:auto;padding:14px 22px;flex-wrap:wrap}.crumb{min-width:0;overflow-wrap:anywhere}.crumb b{font-weight:700}.search{flex:1 1 150px;max-width:280px}.search input{width:100%;min-width:0;min-height:42px;background:var(--surface)}.btn{min-height:40px;justify-content:center;max-width:100%;white-space:normal;text-align:center;font-weight:700}.btn svg{flex-shrink:0;width:18px;height:18px}.btn-ghost:hover{border-color:var(--primary);color:var(--primary)}.content{flex:1;min-width:0;min-height:0;width:100%;padding:22px 24px 40px;overflow:auto}.content>div{min-width:0}.page-head{align-items:center;flex-wrap:wrap}.page-title{font-size:20px;font-weight:700;letter-spacing:0}.page-head>div{min-width:0}.page-desc{overflow-wrap:anywhere}.head-actions{flex-wrap:wrap;max-width:100%}.summary{gap:14px}.stat{min-width:0;border-radius:var(--radius);box-shadow:var(--sombra);padding:16px;min-height:112px}.stat-k{font-size:12px;font-weight:600}.stat-v{font-family:var(--sans);font-size:22px;line-height:28px;font-weight:700;letter-spacing:0;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.stat-sub{font-size:11px}.chip{font-size:12px;font-weight:700;min-height:36px}.chip.on{background:var(--primary);border-color:var(--primary)}.tbl-wrap,.boq{min-width:0;max-width:100%;overflow:auto;border-radius:var(--radius);box-shadow:var(--sombra)}.tbl-wrap:focus-visible,.boq:focus-visible{outline-offset:-3px}.tbl-wrap>table{min-width:700px}.boq>table{min-width:540px}thead th{padding:10px 12px;font-size:11.5px;font-weight:700;letter-spacing:.04em;white-space:nowrap}tbody td{padding:10px 12px;font-size:13px;border-bottom-color:#edf1f5}.forn,.svc-name{font-weight:600}.pill,.setor-tag,.cat-badge,.role-badge{font-size:11.5px;font-weight:700}.st-ativo,.st-aprovada,.st-alocado{background:#dcf1e5;color:#1f7a4a}.st-ativo .dot,.st-aprovada .dot,.st-alocado .dot{background:#1f7a4a}.st-aditivo{background:#ebe5f7;color:#5b3fa6}.st-aditivo .dot{background:#5b3fa6}.st-paga{background:#dcf1e5;color:#1f7a4a}.st-paga .dot{background:#1f7a4a}.scrim,.modal-scrim{background:#0f192880}.drawer{height:100dvh;max-width:100vw}.dr-head{flex-shrink:0}.dr-body{min-height:0;overflow:auto}.tabs{flex-wrap:wrap}.tab{min-height:40px}.dr-title{overflow-wrap:anywhere}.close{width:40px;height:40px;flex-shrink:0}.modal-scrim{padding:20px}.modal{border-radius:12px;width:min(560px,100%);max-height:calc(100dvh - 40px);box-shadow:0 20px 50px #00000040}.modal-head{padding:14px 18px}.modal-head h3{font-weight:700}.form{padding:16px 18px}.modal-foot{padding:14px 18px;flex-wrap:wrap}.fg{min-width:0}.fg label{font-size:12px;font-weight:700;color:var(--ink-2)}.fg input,.fg select{min-height:42px;min-width:0;max-width:100%;padding:7px 10px}.fg-row,.fg-row3,.papel-grid,.cycle{min-width:0}.fg-row>*,.fg-row3>*,.cycle>*{min-width:0}.cycle-v{overflow-wrap:anywhere}.med-head,.aprov-card,.ativo-row,.fitem,.aprov-actions{flex-wrap:wrap}.aprov-card{box-shadow:var(--sombra);border-radius:var(--radius)}.toast{max-width:calc(100vw - 32px);overflow-wrap:anywhere}.login-screen{grid-template-columns:minmax(0,1fr) 460px;place-items:stretch;padding:0;background:var(--surface);overflow:auto}.login-hero{color:#fff;padding:56px;display:flex;flex-direction:column;justify-content:space-between;gap:40px;min-width:0;background:linear-gradient(120deg,#121a2c9e,#121a2cd6),url(/assets/login-bg-73RhAy-8.jpg) center/cover}.login-hero .logo-energold{width:190px;margin-bottom:20px}.login-hero-top{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#cfd6e6}.login-hero h1{font-size:40px;font-weight:800;line-height:1.05;letter-spacing:-.02em;max-width:12ch}.login-hero p{margin-top:16px;max-width:46ch;color:#d6dcea;line-height:1.6;font-size:15px}.login-hero-foot{font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:#aab3c8}.login-card{width:auto;min-width:0;max-width:100%;border-radius:0;box-shadow:none;padding:48px;display:flex;flex-direction:column;justify-content:center}.login-brand{display:none}.login-h{font-size:22px;font-weight:700;margin-bottom:26px}.login-card .fg input{min-height:44px;border-radius:6px;padding:11px 12px;font-size:14px}.login-note{color:var(--ink-2)}@media(max-width:1100px){.summary{grid-template-columns:repeat(2,minmax(0,1fr))}.content{padding:20px 18px 36px}}@media(max-width:860px){.login-screen{grid-template-columns:minmax(0,1fr)}.login-hero{display:none}.login-card{width:min(460px,100%);margin:auto;padding:32px 24px}.login-brand{display:block;background:#02233f;border-radius:10px;padding:20px 24px;margin-bottom:28px}.login-brand .logo-energold{width:180px;margin:auto}.app{grid-template-columns:var(--menu-largura) minmax(0,1fr)}.app.menu-recolhido{grid-template-columns:var(--menu-recolhido) minmax(0,1fr)}}@media(max-width:760px){.app,.app.menu-recolhido{grid-template-columns:minmax(0,1fr)}.side{position:fixed;inset:0 auto 0 0;width:min(290px,85vw);height:100dvh;z-index:55;transform:translate(-100%);visibility:hidden;transition:transform .18s ease,visibility .18s}.menu-aberto .side{transform:none;visibility:visible}.menu-veil{position:fixed;inset:0;z-index:54;background:#0f192880}.menu-close{display:inline-flex;align-self:flex-end;flex-shrink:0}.menu-toggle{display:none}.menu-recolhido .side .brand{align-items:flex-start}.menu-recolhido .logo-energold{width:170px}.menu-recolhido .brand-sub,.menu-recolhido .nav-text,.menu-recolhido .nav-label,.menu-recolhido .user-text,.menu-recolhido .swap-text{display:block}.menu-recolhido .nav-item .tag{display:inline}.menu-recolhido .nav-item,.menu-recolhido .user-tog{justify-content:flex-start}.mobile-menu-bar{display:flex;align-items:center;gap:12px;padding:10px 12px;min-height:62px;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0}.menu-open{border:1px solid var(--border);width:42px;height:42px;flex-shrink:0}.mobile-menu-bar small{display:block;font-size:9px;color:var(--ink-2);letter-spacing:.1em}.mobile-menu-title{font-size:14px;font-weight:700}.topbar{padding:12px;gap:10px}.crumb{width:100%}.search{margin-left:0;max-width:none;flex:1 1 100%}.search input{width:100%}.topbar>.btn{flex:1 1 auto}.content{padding:16px 12px 32px}.summary{grid-template-columns:minmax(0,1fr)}.page-head{align-items:flex-start}.head-actions{width:100%}.head-actions .btn{flex:1 1 auto}.fg-row,.fg-row3,.cycle,.papel-grid{grid-template-columns:minmax(0,1fr)}.modal-scrim{padding:10px}.modal{max-height:calc(100dvh - 20px)}.modal-head,.modal-foot,.form,.dr-head,.dr-body{padding:14px}.modal-foot .btn{flex:1}.detail-inner{padding:8px 12px}.aprov-main{flex:1 1 100%}.aprov-actions{width:100%}.aprov-actions .btn{flex:1}.log{flex-wrap:wrap}.log-when{margin-left:0;padding-left:0}.med-total{margin-left:0;text-align:left}.fitem .fi-val{overflow-wrap:anywhere}}@media(max-width:360px){.login-card{padding:24px 18px}}@media(prefers-reduced-motion:reduce){.app,.side{transition:none}}.account-info .cycle-v{font-size:15px;overflow-wrap:anywhere}.account-card{max-width:620px;padding:22px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.password-control{display:flex;gap:8px}.password-control input{min-width:0;flex:1}.password-control button{min-height:44px}.account-card .account-field,#password-return-panel .account-field{margin:16px 0}.password-return #login .login-card>:not(.login-brand):not(#password-return-panel){display:none!important}@media(max-width:600px){.account-card{padding:14px}.account-info{grid-template-columns:1fr}}.account-card h3{margin:0 0 16px}.account-card #account-policy,#return-policy{font-size:12px;color:var(--ink-2);margin:12px 0}.password-control input{width:0}.account-card [role=status]{overflow-wrap:anywhere}.nhost-status{flex-shrink:0;white-space:normal;overflow-wrap:anywhere;margin-bottom:12px}#nhost-app-status{margin:0;border-radius:0;padding:8px 22px;font-size:12px}.nhost-environment{flex-shrink:0;padding:4px 22px;background:var(--surface-2);border-bottom:1px solid var(--border);font-size:11px;font-weight:600;color:var(--ink-2)}.nhost-busy [data-nhost-save]{cursor:wait}#nhost-retry{margin-top:10px;align-self:flex-start}@media(max-width:760px){#nhost-app-status,.nhost-environment{padding-inline:12px}}#u-role{white-space:normal;overflow-wrap:anywhere}#userScrim{grid-template-columns:minmax(0,1fr)}#userScrim .modal{min-width:0}#userScrim .papel-opt{min-height:44px}#userScrim label.papel-opt{display:flex;flex-direction:row;align-items:center}
