:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#14243b;background:#f4f7fb;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}.app-shell{display:grid;grid-template-columns:248px 1fr;min-height:100vh}.sidebar{background:#073b69;color:#fff;padding:20px 16px;position:fixed;inset:0 auto 0 0;width:248px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;gap:12px;align-items:center;padding:4px 8px 24px}.brand strong{display:block;font-size:17px}.brand small{display:block;color:#bcd3e8;margin-top:3px}.crest,.login-logo{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:#f7c843;color:#073b69;font-weight:900;box-shadow:inset 0 0 0 2px #ffffff52}.sidebar nav{display:grid;gap:5px}.sidebar nav a,.logout{border:0;background:transparent;color:#dbe9f5;text-decoration:none;display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:10px}.sidebar nav a:hover,.sidebar nav a.active{background:#155a91;color:#fff}.logout{margin-top:auto;width:100%}.mobile-close,.hamb{display:none}.app-shell>main{grid-column:2}.topbar{height:74px;background:#fff;border-bottom:1px solid #e4eaf1;display:flex;align-items:center;gap:20px;padding:0 28px;position:sticky;top:0;z-index:10}.global-search{position:relative;display:flex;align-items:center;gap:8px;background:#f4f7fa;border:1px solid #e4eaf1;border-radius:12px;padding:0 13px;max-width:610px;flex:1}.global-search input{border:0;background:transparent;outline:0;width:100%;padding:12px 0}.search-pop{position:absolute;left:0;right:0;top:49px;background:#fff;border:1px solid #e1e8ef;border-radius:12px;box-shadow:0 18px 50px #122c4426;overflow:hidden}.search-pop button{display:block;width:100%;border:0;background:#fff;text-align:left;padding:11px 14px}.search-pop button:hover{background:#f2f7fb}.search-pop small{display:block;color:#6f7d8d}.user-chip{margin-left:auto;text-align:right}.user-chip span,.user-chip small{display:block}.user-chip small{color:#718096}.content{padding:30px;max-width:1600px;margin:auto}.page-title{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.page-title h1{font-size:29px;margin-bottom:7px}.page-title p:not(.eyebrow){color:#6b7887;max-width:720px}.eyebrow{font-size:12px;letter-spacing:.12em;font-weight:800;color:#2d78b5;margin-bottom:6px}.actions{display:flex;gap:10px;flex-wrap:wrap}.primary,.secondary,.form-actions button,.pay-btn{border:0;border-radius:10px;padding:11px 15px;font-weight:750;display:inline-flex;gap:8px;align-items:center;justify-content:center}.primary{background:#f2c230;color:#163451}.primary:hover{background:#e6b317}.secondary{background:#e7f1f8;color:#0a4c7e}.notice{padding:14px 16px;border-radius:12px;margin-bottom:18px;display:flex;align-items:center;gap:9px}.notice.danger{background:#fff0ef;color:#9a2b25;border:1px solid #ffd4d0}.metric-grid{display:grid;grid-template-columns:repeat(6,minmax(145px,1fr));gap:13px;margin-bottom:22px}.metric{background:#fff;border:1px solid #e3e9ef;border-radius:15px;padding:17px;min-height:130px;box-shadow:0 4px 16px #14304909}.metric-icon{width:36px;height:36px;border-radius:10px;background:#edf5fb;color:#0f5d93;display:grid;place-items:center;margin-bottom:16px}.metric span,.metric small{display:block;color:#718096}.metric strong{display:block;font-size:21px;margin:5px 0}.two-cols{display:grid;grid-template-columns:1.55fr 1fr;gap:18px}.panel{background:#fff;border:1px solid #e2e9ef;border-radius:15px;overflow:hidden;margin-bottom:20px}.panel-head{padding:18px 20px;border-bottom:1px solid #edf1f5;display:flex;justify-content:space-between;align-items:center}.panel-head h2{font-size:18px;margin:0}.panel-head button,.link,.tiny-link{border:0;background:transparent;color:#17679f;font-weight:700}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:13px 16px;border-bottom:1px solid #edf1f4;white-space:nowrap}th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#7d8894;background:#fbfcfd}tbody tr{cursor:pointer}tbody tr:hover{background:#f8fbfd}.cell-sub{display:block;color:#86919d;margin-top:3px}.invoice-row{display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:center;padding:14px 18px;border-bottom:1px solid #edf1f4;cursor:pointer}.invoice-row small{display:block;color:#788694;margin-top:3px}.doc-icon{width:38px;height:38px;display:grid;place-items:center;background:#eef6fb;color:#126297;border-radius:10px}.toolbar{display:flex;gap:12px;margin-bottom:16px}.searchbox{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #dde5ec;border-radius:11px;padding:0 13px;max-width:520px;width:100%}.searchbox.big{max-width:760px}.searchbox input{border:0;outline:0;padding:12px 0;width:100%;background:transparent}.status{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:11px;font-weight:800;background:#eaf1f6;color:#506273}.status.a-vencer,.status.em-aberto{background:#e7f3ff;color:#17649c}.status.vence-hoje{background:#fff3d2;color:#9a6810}.status.vencida{background:#ffebe9;color:#b52f29}.status.paga{background:#e7f8ed;color:#277d46}.status.cancelada,.status.sem-conta{background:#eef0f2;color:#68737c}.status.parcialmente-paga{background:#fff4da;color:#8b6511}.empty{text-align:center;padding:52px 20px;color:#72808d}.empty svg{width:42px;height:42px;color:#8aa4b8}.empty h3{color:#26384a;margin:10px 0 6px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#081c2f80;display:grid;place-items:center;padding:20px;z-index:100}.modal{width:min(650px,100%);max-height:92vh;background:#fff;border-radius:16px;box-shadow:0 30px 90px #00000040;overflow:hidden}.modal.wide{width:min(960px,100%)}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid #e6ebef}.modal-head h2{margin:0;font-size:20px}.icon-btn{width:36px;height:36px;border:0;border-radius:10px;background:#eff3f6;font-size:24px}.modal-body{padding:20px;overflow:auto;max-height:calc(92vh - 72px)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label{font-size:13px;font-weight:700;color:#4b5b69}.form-grid input,.form-grid select,.form-grid textarea,.report-filter input{width:100%;margin-top:6px;border:1px solid #d8e1e8;border-radius:9px;padding:10px 11px;outline:none;background:#fff;color:#1d2d3d}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#3f83b6;box-shadow:0 0 0 3px #e8f2f9}.form-grid textarea{min-height:76px;resize:vertical}.span2{grid-column:span 2}.check{display:flex!important;gap:9px;align-items:center}.check input{width:auto;margin:0}.section-title{font-weight:850;color:#0c4e7c;border-bottom:1px solid #e9eef2;padding:8px 0 9px}.form-actions{display:flex;justify-content:flex-end;gap:9px;border-top:1px solid #edf0f3;padding-top:15px}.form-actions>button:not(.primary){background:#edf2f5;color:#47596b}.alert{padding:10px 12px;border-radius:9px;background:#e9f7ee;color:#2d7547}.alert.error{background:#ffeded;color:#a6332b}.installments{display:grid;gap:8px}.installment{display:grid;grid-template-columns:55px 1fr 1fr;gap:10px;align-items:end;background:#f7f9fb;padding:10px;border-radius:10px}.installment strong{align-self:center}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.detail-grid>div{background:#f7f9fb;border-radius:10px;padding:12px}.detail-grid small,.detail-grid strong{display:block}.detail-grid small{color:#73808c;margin-bottom:4px}.subhead{margin:24px 0 10px;font-size:16px}.dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px dashed #b9cad7;border-radius:12px;padding:20px;color:#557084;cursor:pointer;background:#fbfdff}.dropzone strong{color:#1d526f;margin-top:5px}.dropzone span{font-size:12px;margin-top:4px}.file-row,.payment-row,.account-mini{display:flex;align-items:center;gap:10px;padding:11px;border-bottom:1px solid #edf1f4}.file-row>div,.payment-row>div{flex:1}.file-row small,.payment-row small{display:block;color:#7a8793}.file-row button{display:flex;align-items:center;gap:6px;border:0;background:#edf5fa;color:#17679f;border-radius:8px;padding:8px 10px}.account-mini{display:grid;grid-template-columns:55px 1fr 1fr 130px}.payment-row b{margin-left:auto}.pay-btn{margin-top:20px}.attach{display:flex;gap:4px;align-items:center}.muted{color:#7a8793}.report-filter{background:#fff;border:1px solid #e2e9ef;border-radius:12px;padding:12px;align-items:end}.report-filter label{font-size:12px;font-weight:700}.report-metrics{grid-template-columns:repeat(3,1fr);max-width:900px}.settings-panel{max-width:800px;padding:20px}.backup-note{background:#f2f7fb;border-left:4px solid #2a76aa;padding:13px}.backup-note p{margin:4px 0 0;color:#607282}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 10%,#d9edf9,transparent 35%),linear-gradient(135deg,#073b69,#0d5d91);padding:20px}.login-card{background:#fff;width:min(420px,100%);padding:34px;border-radius:20px;box-shadow:0 24px 80px #00000038;text-align:center}.login-logo{margin:0 auto 20px;width:64px;height:64px;font-size:20px}.login-card h1{margin-bottom:6px}.login-card>p:not(.eyebrow){color:#768391}.login-card form{text-align:left;display:grid;gap:14px;margin:24px 0}.login-card label{font-size:13px;font-weight:700}.login-card input{width:100%;margin-top:6px;padding:12px;border:1px solid #d4dee6;border-radius:10px}.full{width:100%}.loading{padding:40px;color:#6f7d89}.tiny-link{padding:4px 0}@media (max-width:1200px){.metric-grid{grid-template-columns:repeat(3,1fr)}.two-cols{grid-template-columns:1fr}.detail-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:800px){.app-shell{display:block}.app-shell>main{display:block}.sidebar{transform:translate(-100%);transition:.2s}.sidebar.open{transform:translate(0)}.mobile-close,.hamb{display:grid;place-items:center}.mobile-close{margin-left:auto;border:0;background:#155a91;color:#fff;border-radius:8px;width:34px;height:34px}.hamb{border:0;background:#eef4f8;border-radius:9px;width:40px;height:40px}.topbar{padding:0 14px;height:66px}.user-chip{display:none}.content{padding:20px 14px}.page-title{display:block}.page-title .primary,.page-title .secondary,.page-title .actions{margin-top:12px;width:100%}.page-title .actions button{flex:1}.metric-grid,.report-metrics{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}.span2{grid-column:span 1}.detail-grid{grid-template-columns:1fr}.modal-backdrop{padding:8px}.modal{max-height:96vh}.modal-body{max-height:calc(96vh - 70px)}.account-mini{grid-template-columns:50px 1fr}.account-mini .status{justify-self:start}.report-filter{align-items:stretch;flex-direction:column}.installment{grid-template-columns:45px 1fr}.installment label:last-child{grid-column:2}.global-search{min-width:0}}@media (max-width:480px){.metric-grid{grid-template-columns:1fr 1fr}.metric{padding:13px;min-height:112px}.metric strong{font-size:17px}.metric-icon{margin-bottom:10px}.page-title h1{font-size:25px}.global-search input{font-size:13px}.login-card{padding:25px 20px}}.quick-supplier{margin-top:8px;padding:10px;background:#f5f9fc;border:1px solid #dce7ef;border-radius:10px;display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:end}.quick-supplier input{margin:0}.file-actions{display:flex;gap:7px}.file-actions button{display:flex;align-items:center;gap:6px;border:0;background:#edf5fa;color:#17679f;border-radius:8px;padding:8px 10px}@media (max-width:800px){.quick-supplier{grid-template-columns:1fr}.file-actions{flex-direction:column}}.proof-btn{border:0;background:#edf5fa;color:#17679f;border-radius:8px;padding:7px 9px;font-weight:700}.app-shell>main{min-width:0;display:flex;flex-direction:column;min-height:100vh}.content{width:100%;flex:1}.brand{align-items:center}.brand-logo-box{width:64px;min-width:64px;height:52px;border-radius:12px;background:#fff;display:grid;place-items:center;padding:4px;overflow:hidden;box-shadow:0 3px 12px #0000001f}.brand-logo-box img{display:block;max-width:100%;max-height:100%;object-fit:contain}.brand-copy{min-width:0}.brand-copy strong{font-size:15px;line-height:1.15}.brand-copy small{font-size:11px}.login-stack{width:min(440px,100%);display:grid;gap:14px}.login-brand-logo{display:block;width:min(280px,88%);height:auto;max-height:145px;object-fit:contain;margin:0 auto 14px}.login-help{color:#7a8793}.app-footer{padding:17px 24px;border-top:1px solid #e0e7ed;color:#718096;background:#fff;text-align:center;font-size:12px;display:flex;justify-content:center;align-items:center;gap:7px;flex-wrap:wrap}.app-footer a{color:#17679f;text-decoration:none;font-weight:700}.app-footer a:hover{text-decoration:underline}.login-footer{border:0;background:#fffffff0;border-radius:12px;padding:11px 14px;box-shadow:0 8px 28px #0000001a}@media (max-width:800px){.brand-logo-box{width:56px;min-width:56px;height:46px}.brand-copy strong{font-size:14px}.app-footer{padding:14px 12px}.login-stack{width:min(420px,100%)}}@media (max-width:480px){.login-brand-logo{width:min(240px,90%)}.footer-sep{display:none}.app-footer span,.app-footer a{width:100%}}.director-page{max-width:860px;margin:0 auto;padding-bottom:24px}.director-hero{background:linear-gradient(135deg,#073b69,#0d5d91);color:#fff;border-radius:20px;padding:24px;margin-bottom:16px;box-shadow:0 12px 34px #073b6929}.director-hero .eyebrow{color:#ffd95c}.director-hero h1{margin:4px 0 8px;font-size:30px}.director-hero p{margin:0;color:#dceaf4}.director-steps{display:flex;align-items:center;gap:9px;margin-top:20px;flex-wrap:wrap}.director-steps span{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:800}.director-steps b{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#ffc82e;color:#073b69}.director-steps svg{width:16px;color:#9fc5df}.director-card{background:#fff;border:1px solid #dce6ed;border-radius:18px;padding:20px;margin-bottom:14px;box-shadow:0 5px 18px #14344e0d}.director-card.disabled-card{opacity:.58}.director-card-title{display:flex;gap:12px;align-items:flex-start;margin-bottom:16px}.director-card-title>span{width:34px;height:34px;min-width:34px;border-radius:10px;background:#0d5d91;color:#fff;display:grid;place-items:center;font-weight:900}.director-card-title h2{font-size:18px;margin:0 0 3px}.director-card-title p{margin:0;color:#738392;font-size:13px}.director-search{display:flex;align-items:center;gap:9px;border:2px solid #d5e2eb;border-radius:13px;padding:0 13px;background:#fff}.director-search:focus-within{border-color:#2f83ba;box-shadow:0 0 0 4px #e7f2f9}.director-search input{border:0;outline:0;background:transparent;width:100%;font-size:16px;padding:14px 0;color:#203445}.supplier-results{margin-top:8px;border:1px solid #e0e8ee;border-radius:12px;overflow:hidden}.supplier-results button{width:100%;border:0;border-bottom:1px solid #edf1f4;background:#fff;padding:13px;display:grid;grid-template-columns:34px 1fr 20px;gap:9px;align-items:center;text-align:left;color:#263b4e}.supplier-results button:last-child{border-bottom:0}.supplier-results button:active{background:#eef7fc}.supplier-results svg:first-child{color:#17679f}.supplier-results span strong,.supplier-results span small{display:block}.supplier-results span small{color:#7b8995;margin-top:2px}.supplier-selected{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;background:#eef9f2;border:1px solid #cde9d6;border-radius:13px;padding:13px}.supplier-selected>svg{color:#29864d}.supplier-selected strong,.supplier-selected small{display:block}.supplier-selected small{color:#688274;margin-top:2px}.supplier-selected button,.quick-toggle,.file-change{border:0;background:transparent;color:#17679f;font-weight:800;display:flex;align-items:center;gap:5px}.quick-toggle{margin-top:12px;padding:8px 0}.quick-director{margin-top:8px;background:#f6f9fb;border:1px solid #dce6ed;border-radius:13px;padding:14px;display:grid;gap:11px}.quick-director label,.director-form label{font-size:13px;font-weight:800;color:#435668}.quick-director label small,.director-form label small{font-weight:500;color:#82909b}.quick-director input,.director-form input{width:100%;margin-top:6px;border:1px solid #d6e0e7;border-radius:10px;padding:12px;font-size:16px;background:#fff;color:#203445;outline:none}.quick-director input:focus,.director-form input:focus{border-color:#3d86b7;box-shadow:0 0 0 3px #e8f3f9}.quick-note{font-size:12px;color:#617585;background:#fff7dc;border-left:4px solid #efba26;padding:9px 10px;border-radius:7px}.director-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.director-span{grid-column:span 2}.director-upload{border:2px dashed #a9c3d4;border-radius:16px;min-height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:18px;background:#fafdff;cursor:pointer;color:#587286}.director-upload>svg{width:38px;height:38px;color:#17679f;margin-bottom:7px}.director-upload strong{color:#174e72;font-size:16px;max-width:95%;overflow-wrap:anywhere}.director-upload small{margin-top:5px}.director-upload.has-file{background:#effaf3;border-color:#8dc7a1}.director-upload.has-file>svg{color:#27844b}.file-change{margin:8px auto 0;padding:7px}.director-big{min-height:48px;justify-content:center}.director-submit{width:100%;min-height:56px;border-radius:14px;font-size:16px;justify-content:center}.director-submit:disabled{opacity:.45;cursor:not-allowed}.director-alert{margin:12px 0}.director-footnote{text-align:center;color:#788995;font-size:12px;margin:12px 10px}.director-success{max-width:620px;margin:6vh auto;background:#fff;border:1px solid #dbe7ee;border-radius:22px;padding:32px;text-align:center;box-shadow:0 18px 50px #1036521f}.director-success>svg{width:62px;height:62px;color:#2d9557;margin-bottom:8px}.director-success h1{font-size:30px;margin:5px}.director-success>p:not(.eyebrow){color:#71818e}.success-summary{display:grid;grid-template-columns:1fr 1fr;gap:9px;text-align:left;margin:22px 0}.success-summary span{background:#f6f9fb;border-radius:10px;padding:10px;color:#7b8993;font-size:12px}.success-summary strong{display:block;color:#253b4b;font-size:14px;margin-top:3px;overflow-wrap:anywhere}.director-sidebar-note{margin:16px 12px;padding:12px;border-radius:10px;background:#ffffff17;display:flex;gap:8px;color:#d9e9f5;font-size:11px;line-height:1.4}.pending-badge{display:inline-flex;margin-left:8px;background:#fff1c8;color:#8a6311;padding:4px 7px;border-radius:999px;font-size:10px;font-weight:900;vertical-align:middle}.notice.director-pending{background:#fff7df;color:#6f5512;border:1px solid #f1d57f;display:flex;align-items:center;gap:10px}.notice.director-pending button{margin-left:auto;border:0;background:#fff;color:#17679f;border-radius:8px;padding:7px 10px;font-weight:800}@media (max-width:800px){.director-shell .content{padding:14px 10px}.director-page{max-width:100%}.director-hero{border-radius:16px;padding:18px}.director-hero h1{font-size:26px}.director-card{border-radius:14px;padding:15px}.director-form{grid-template-columns:1fr}.director-span{grid-column:span 1}.director-upload{min-height:140px}.success-summary{grid-template-columns:1fr}.director-success{margin:2vh auto;padding:24px 17px}.notice.director-pending{align-items:flex-start;flex-wrap:wrap}.notice.director-pending button{margin-left:0;width:100%}}@media (max-width:480px){.director-steps{justify-content:space-between;gap:4px}.director-steps span{font-size:11px}.director-steps svg{width:13px}.director-card-title h2{font-size:17px}.supplier-selected{grid-template-columns:30px 1fr}.supplier-selected button{grid-column:2;justify-self:start;padding:0}.director-upload strong{font-size:15px}.director-submit{position:sticky;bottom:8px;z-index:20;box-shadow:0 8px 24px #08426940}}
