:root{--brand-gold: #DEC08E;--brand-taupe: #B2A48F;--brand-taupe-dark: #8A7A55;--brand-taupe-darker: #2C2416;--brand-bg-soft: #F2EBE0;--surface-0: #F4F2ED;--surface-1: #FFFFFF;--surface-2: #FAF8F4;--text-primary: #222018;--text-secondary: #6B6459;--text-muted: #A39C8C;--border: #E4DFD3;--radius: 8px;--success-bg: #E7F3E1;--success-text: #3B6D24;--warning-bg: #FBEFD9;--warning-text: #8A5A0B;--danger-bg: #FBE7E7;--danger-text: #A23434;--info-bg: #E7EEF7;--info-text: #35618F}*{box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}body{margin:0;background:var(--surface-0)}.app-shell{display:flex;min-height:100vh}.sidebar{width:220px;flex-shrink:0;background:var(--surface-1);border-right:1px solid var(--border);padding:20px 14px;display:flex;flex-direction:column}.sidebar-logo{display:flex;align-items:center;gap:10px;margin-bottom:24px;padding:0 6px}.sidebar-logo img{width:34px;height:auto}.sidebar-logo span{font-size:15px;font-weight:600;color:var(--text-primary)}.sidebar-nav{display:flex;flex-direction:column;gap:2px}.sidebar-link{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:var(--radius);font-size:13px;color:var(--text-secondary);text-decoration:none;cursor:pointer;border:none;background:transparent;text-align:left;width:100%}.sidebar-link i{font-size:16px}.sidebar-link.active{background:var(--brand-bg-soft);color:var(--brand-taupe-darker);font-weight:500}.sidebar-footer{margin-top:auto;padding-top:12px;border-top:1px solid var(--border)}.main-area{flex:1;min-width:0;padding:28px 36px}.page-header{margin-bottom:20px}.page-title{font-size:20px;font-weight:600;color:var(--text-primary);margin:0 0 2px}.page-subtitle{font-size:13px;color:var(--text-secondary);margin:0}.back-btn{border:none;background:transparent;padding:0;font-size:14px;color:var(--text-secondary);display:flex;align-items:center;gap:6px;cursor:pointer}.card{background:var(--surface-1);border:1px solid var(--border);border-radius:12px;padding:14px;margin-bottom:10px}.card-row{display:flex;align-items:center;gap:12px}.badge{font-size:11px;padding:3px 8px;border-radius:var(--radius);white-space:nowrap}.badge-success{background:var(--success-bg);color:var(--success-text)}.badge-warning{background:var(--warning-bg);color:var(--warning-text)}.badge-danger{background:var(--danger-bg);color:var(--danger-text)}.badge-info{background:var(--info-bg);color:var(--info-text)}.badge-neutral{background:var(--brand-bg-soft);color:var(--brand-taupe-dark)}.btn{font-size:13px;padding:8px 14px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-1);color:var(--text-primary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px}.btn-block{width:100%}.btn-primary{background:var(--brand-taupe);color:var(--brand-taupe-darker);border:none;font-weight:500}.btn-danger{color:var(--danger-text);border-color:#e8b9b9}.section-label{font-size:12px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin:0 0 6px}.field-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border)}.field-row:last-child{border-bottom:none}.field-label{font-size:13px;color:var(--text-secondary)}.field-value{font-size:13px;color:var(--text-primary)}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:16px}.metric-card{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px}.metric-label{font-size:11px;color:var(--text-secondary);margin:0}.metric-value{font-size:20px;font-weight:500;margin:2px 0 0}input,select,textarea{width:100%;height:36px;border-radius:var(--radius);border:1px solid var(--border);padding:0 10px;font-size:14px;background:var(--surface-1);color:var(--text-primary)}textarea{height:auto;padding:8px 10px}label{font-size:12px;color:var(--text-secondary);display:block;margin-bottom:4px}.form-group{margin-bottom:12px}.page-header-actions,.report-toolbar,.report-filters,.filter-row,.automation-log-main,.automation-log-status{display:flex;align-items:center}.page-header-actions,.report-toolbar{justify-content:space-between;gap:16px}.filter-row,.report-filters,.automation-log-status{gap:8px}.filter-row{flex-wrap:wrap;margin-bottom:16px}.report-toolbar{align-items:flex-end;margin-bottom:14px;flex-wrap:wrap}.report-toolbar .filter-row{margin-bottom:0}.report-filters{flex:1 1 420px;justify-content:flex-end;flex-wrap:wrap}.report-filters input{max-width:260px}.report-filters select{width:auto;min-width:150px}.automation-log-list{display:grid;gap:10px}.automation-log-card{margin:0}.automation-log-main{align-items:flex-start;gap:18px}.automation-log-status{min-width:150px;flex-wrap:wrap}.automation-log-content{flex:1;min-width:0}.automation-log-content p{margin:0 0 4px;color:var(--text-primary);font-size:13px}.automation-log-content span,.automation-log-details summary{color:var(--text-secondary);font-size:11px}.automation-log-details{margin-top:12px;border-top:1px solid var(--border);padding-top:10px}.automation-log-details summary{cursor:pointer}.automation-log-details pre{overflow:auto;max-height:360px;padding:12px;border-radius:var(--radius);background:var(--surface-2);color:var(--text-secondary);font:11px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap}.empty-state{color:var(--text-secondary);font-size:13px;text-align:center;padding:28px}.error-state{color:var(--danger-text);background:var(--danger-bg)}.table-shell{overflow-x:auto;border:1px solid var(--border);border-radius:12px;background:var(--surface-1)}.report-table{width:100%;border-collapse:collapse;font-size:13px}.report-table th,.report-table td{padding:11px 14px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle}.report-table th{color:var(--text-secondary);background:var(--surface-2);font-size:11px;font-weight:500;white-space:nowrap}.report-table tbody tr:last-child td{border-bottom:none}.report-table td span{display:block;margin-top:2px;color:var(--text-muted);font-size:11px}.value-positive{color:var(--success-text);font-weight:500}.value-negative{color:var(--danger-text);font-weight:500}.table-empty{color:var(--text-secondary);text-align:center!important;padding:28px!important}.report-print-header,.report-print-folgas{display:none}.compras-admin-lista{display:grid;gap:12px}.compra-admin-card{margin:0}.compra-resumo{width:100%;border:1px solid var(--border);text-align:left;cursor:pointer;background:var(--surface-1);padding:14px}.compra-resumo:hover{border-color:var(--brand-taupe)}.compra-resumo-nova{border-left:4px solid var(--danger-text)}.compra-resumo-itens{margin:10px 0 0;color:var(--text-secondary);font-size:13px}.compra-admin-topo{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.compra-admin-topo p{margin:3px 0 0;color:var(--text-secondary);font-size:12px}.compra-admin-itens{display:grid;gap:7px;margin:14px 0 8px}.compra-admin-itens>div{display:grid;grid-template-columns:minmax(180px,1fr) 130px;gap:8px;align-items:baseline;border-bottom:1px solid var(--border);padding-bottom:7px;font-size:13px}.compra-admin-itens span,.compra-admin-itens small{color:var(--text-secondary)}.link-btn{border:0;background:transparent;color:var(--brand-taupe-dark);cursor:pointer;padding:0;font-size:12px;text-decoration:underline;text-align:left}.compra-admin-acoes{display:flex;gap:12px;align-items:end;margin-top:12px}.compra-admin-acoes label{min-width:220px}.compras-relatorio-impressao,.relatorio-marca-cabecalho{display:none}.compra-detalhe-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#2c24165c;display:flex;justify-content:flex-end}.compra-detalhe{width:min(600px,100%);height:100%;overflow:auto;background:var(--surface-1);padding:26px;box-shadow:-12px 0 30px #00000029}.compra-detalhe h2{margin:3px 0 0;font-size:20px}@media print{@page{margin:12mm}body{background:#fff;color:#111}.sidebar,.page-header,.metric-grid,.report-toolbar,.report-print-area~*,.report-print-area:not(:has(.report-table)){display:none!important}.app-shell,.main-area{display:block;padding:0}.report-print-header{display:block;margin:0 0 7mm}.relatorio-marca-cabecalho{display:flex;align-items:center;gap:6mm;padding:0 0 5mm;margin:0 0 7mm;border-bottom:1.5px solid #b49762}.relatorio-marca-logo{width:70mm;height:22mm;overflow:visible;flex:0 0 auto}.relatorio-marca-logo img{display:block;width:100%;height:100%;object-fit:contain;object-position:left center}.relatorio-marca-nome{margin:0 0 1mm!important;color:#8b6d36!important;font-size:8pt!important;font-weight:700;letter-spacing:.9pt}.relatorio-marca-cabecalho h1{margin:0 0 1mm;color:#261f18;font-size:17pt}.relatorio-marca-cabecalho>div:last-child>p:last-child{margin:0;color:#5f574e;font-size:9pt}.report-print-header h1{margin:0 0 2mm;font-size:18pt}.report-print-header p{margin:0;color:#444;font-size:9pt}.compras-admin-lista,.report-toolbar,.page-header,.metric-grid{display:none!important}.compras-relatorio-impressao{display:block}.compras-relatorio-impressao h1{font-size:18pt;margin:0 0 2mm}.compras-relatorio-impressao>p{color:#444;font-size:9pt;margin:0 0 7mm}.compras-relatorio-impressao h2{margin:9mm 0 3mm;font-size:15pt;break-after:avoid}.compras-relatorio-impressao h3{margin:7mm 0 3mm;font-size:12pt;break-after:avoid}.report-print-folgas{display:block;margin-top:10mm;break-before:page}.report-print-folgas h2{margin:0 0 2mm;font-size:15pt}.report-print-folgas p{margin:0 0 5mm;color:#444;font-size:9pt}.table-shell{overflow:visible;border:0;border-radius:0}.report-table{font-size:9pt}.report-table th,.report-table td{padding:7px 8px;border-color:#bbb}.report-table th{background:#f1f1f1!important;color:#111}.report-table tr{break-inside:avoid}}@media (max-width: 760px){.page-header-actions,.report-toolbar,.automation-log-main{align-items:stretch;flex-direction:column}.report-filters{justify-content:flex-start}.report-filters input,.report-filters select{max-width:none;width:100%}.automation-log-status{min-width:0}}.login-shell{min-height:100vh;display:flex;align-items:center;justify-content:center}.login-card{width:340px;max-width:100%;background:var(--surface-1);border:1px solid var(--border);border-radius:16px;padding:28px 24px}
