:root{font-family:Tahoma,Segoe UI,Arial,sans-serif;font-size:14px;color:#162033;background:radial-gradient(circle at top left,rgba(221,133,163,.1),transparent 22%),radial-gradient(circle at top right,rgba(144,199,211,.08),transparent 18%),#f5f7fb}*{box-sizing:border-box}body{margin:0;min-width:320px}a{color:inherit;text-decoration:none}.app-shell{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:100vh}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:14px;min-height:70px;padding:8px 18px;border-bottom:1px solid rgba(20,32,51,.08);background:#fffffff5;box-shadow:0 10px 28px #1118270d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.brand-block{display:flex;align-items:center;width:132px;min-width:132px;padding:6px 8px;border-radius:8px;background:linear-gradient(180deg,#fff,#fcf7f9);border:1px solid rgba(20,32,51,.05);box-shadow:0 6px 18px #1118270a}.brand-logo{display:block;width:100%;max-height:48px;object-fit:contain}.nav{display:flex;align-items:center;gap:2px;min-width:0}.nav-group{position:relative;display:flex;align-items:center}.nav-group-toggle{display:flex;align-items:center;justify-content:center;gap:5px;min-height:34px;padding:7px 9px;border:0;border-radius:8px;background:transparent;color:#526174;font:inherit;font-size:.95rem;font-weight:800;cursor:pointer;white-space:nowrap}.nav-group-toggle:hover{background:#fff;color:#123e68}.nav-caret{font-size:.72rem;line-height:1}.nav-submenu{position:absolute;top:100%;left:0;z-index:30;display:grid;gap:3px;min-width:214px;padding:8px;border:1px solid rgba(20,32,51,.08);border-radius:8px;background:#fff;box-shadow:0 18px 42px #0f172a24}.nav-link{min-height:34px;padding:8px 9px;border-radius:8px;color:#49576b;border-bottom:2px solid transparent;font-size:.95rem;font-weight:600;transition:.18s ease;white-space:nowrap}.nav-sub-link{display:block;padding:9px 10px;border-bottom:0;border-left:3px solid transparent}.nav-link:hover,.nav-link.active{background:#fff;color:#123e68;box-shadow:0 6px 18px #1118270d}.nav-link.active{border-bottom-color:#145070;font-weight:800}.nav-sub-link.active{border-bottom-color:transparent;border-left-color:#145070}.content{padding:16px 22px}.module-page{display:grid;gap:14px}.section-heading{display:flex;align-items:center;justify-content:space-between;min-height:34px}.section-heading h3{margin:0;font-size:1.55rem}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.panel{padding:14px;border-radius:8px;background:#fffffff7;border:1px solid rgba(20,32,51,.06);box-shadow:0 14px 34px #1118270d}.panel strong{display:block;color:#122033;line-height:1.4}.metric-panel{min-height:96px}.cadastros-panel{display:grid;gap:14px;align-content:start}.panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.section-copy{display:grid;gap:2px}.section-copy span{color:#6a7486;font-size:.84rem}.filters-row{display:grid;grid-template-columns:minmax(240px,1fr) 132px auto 82px 90px;gap:10px;align-items:center}.products-filters-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(160px,.8fr) 120px 128px 82px;gap:10px;align-items:center}.users-filters-row{display:grid;grid-template-columns:minmax(240px,1fr) auto 82px;gap:10px;align-items:center}.product-lookup-row{display:grid;grid-template-columns:minmax(220px,1fr) 110px;gap:10px;align-items:center}.empty-action{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid rgba(20,32,51,.08);border-radius:8px;background:#fbfdff;color:#526174;font-weight:700}.variations-editor{gap:10px}.variation-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:10px;align-items:end;padding:10px;border:1px solid rgba(20,32,51,.08);border-radius:8px;background:#fbfdff}.variation-remove{min-height:34px}.text-input{width:100%;height:34px;min-height:34px;border:1px solid #d6deea;border-radius:8px;padding:0 12px;background:#fff;color:#142033;font:inherit}.accounting-input{text-align:right;font-variant-numeric:tabular-nums}.text-input:focus{outline:2px solid rgba(20,80,112,.14);border-color:#78a6c3}.text-area{min-height:92px;height:auto;padding:12px;resize:vertical}.primary-button,.secondary-button,.danger-button{min-height:34px;padding:0 14px;border:0;border-radius:8px;font:inherit;font-weight:700;cursor:pointer}.select-with-action{display:grid;grid-template-columns:minmax(0,1fr) 38px;gap:8px}.square-button{width:38px;padding:0;font-size:1.2rem}.secondary-button:disabled{opacity:.55;cursor:not-allowed}.primary-button{background:#145070;color:#fff}.primary-button:disabled{opacity:.65;cursor:wait}.secondary-button{background:#edf7fb;color:#145070}.danger-button{background:#bb4a5a;color:#fff}.compact-button{padding-inline:16px;white-space:nowrap}.table-wrap{overflow:auto;border:1px solid rgba(20,32,51,.08);border-radius:8px}.data-table{width:100%;border-collapse:collapse;background:#fff;table-layout:fixed}.data-table th,.data-table td{padding:9px 10px;border-bottom:1px solid rgba(20,32,51,.08);text-align:left;font-size:1rem}.data-table th{color:#5a6b81;font-size:.95rem;text-transform:uppercase;letter-spacing:0}.data-table th:last-child,.data-table td:last-child{width:132px;text-align:center}.numeric-cell{text-align:right;font-variant-numeric:tabular-nums}.finance-tree{display:grid;gap:12px}.finance-tree-section{display:grid;gap:8px}.finance-tree-list{display:grid;gap:6px}.finance-tree-item{display:grid;gap:6px;padding:8px 10px;border:1px solid rgba(20,32,51,.08);border-radius:8px;background:#fbfdff}.finance-tree-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:8px;align-items:center}.finance-tree-name{font-weight:800;color:#122033}.finance-tree-meta{color:#6a7486;font-size:.88rem;font-weight:700}.finance-tree-children{display:grid;gap:5px;margin-left:30px}.finance-tree-child{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px 8px;border-radius:8px;background:#fff}.data-table tbody tr:hover{background:#fafcff}.actions-cell{display:inline-flex;align-items:center;justify-content:center;gap:12px;width:100%}.header-actions{display:flex;justify-content:flex-end;gap:10px;margin-left:auto}.link-button,.danger-link,.success-link{border:0;background:transparent;padding:0;font:inherit;font-weight:700;cursor:pointer}.link-button{color:#145070}.danger-link{color:#bb4a5a}.success-link{color:#1f7a54}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field{display:grid;gap:8px}.field span,.checkbox-field span{color:#526174;font-size:1rem;font-weight:700}.field-full{grid-column:1 / -1}.checkbox-field{display:inline-flex;align-items:center;gap:10px}.filters-checkbox{min-height:34px;white-space:nowrap}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:2px}.muted-text,.error-text,.success-text{margin:0;font-size:.92rem;font-weight:600}.muted-text{color:#5a6b81}.error-text{color:#bb4a5a}.success-text{color:#1f7a54}.pagination-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#526174;font-weight:600}.page-size-field,.pagination-actions{display:inline-flex;align-items:center;gap:8px}.compact-select{width:78px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:20px;background:#0f172a7a}.modal-panel{width:min(780px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:16px;border-radius:8px;background:#fff;box-shadow:0 24px 80px #0f172a3d}.confirm-panel{display:grid;gap:16px;width:min(420px,100%)}.confirm-actions{display:flex;justify-content:flex-end;gap:10px}@media (max-width: 900px){.topbar{position:static;align-items:flex-start;flex-direction:column;gap:8px;padding:10px 14px}.brand-block{width:118px;min-width:118px}.brand-logo{max-height:42px}.nav{flex-wrap:wrap;width:100%}.nav-submenu{left:0}.form-grid{grid-template-columns:1fr}.filters-row{grid-template-columns:1fr;max-width:none}.products-filters-row,.users-filters-row{grid-template-columns:1fr}.product-lookup-row,.empty-action{align-items:stretch;flex-direction:column;grid-template-columns:1fr}.variation-row{grid-template-columns:1fr}.pagination-bar,.pagination-actions,.page-size-field{align-items:stretch;flex-direction:column}}
