:root{--font-family-body:"Inter", sans-serif;--font-family-headings:"Outfit", sans-serif;--color-bg-app:#121212;--color-bg-panel:#212121;--color-bg-sidebar:#1a1a1a;--color-gold:#c6a87c;--color-gold-hover:#bfa071;--color-gold-glow:#c6a87c26;--color-text-primary:#f5f5f5;--color-text-secondary:#aaa;--color-text-muted:#666;--color-border:#333;--color-border-focus:#c6a87c;--color-bg-input:#0003;--color-bg-table-header:#0000004d;--color-success:#4caf50;--color-success-bg:#4caf501a;--color-error:#f44336;--color-error-bg:#f443361a;--color-info:#2196f3;--color-info-bg:#2196f31a;--shadow-sm:0 2px 4px #0003;--shadow-md:0 4px 12px #0006;--shadow-lg:0 8px 24px #0009;--border-radius-sm:4px;--border-radius-md:8px;--border-radius-lg:12px;--transition-smooth:all .25s cubic-bezier(.4, 0, .2, 1)}[data-theme=light]{--color-bg-app:#f5f6fa;--color-bg-panel:#fff;--color-bg-sidebar:#fff;--color-text-primary:#1f2937;--color-text-secondary:#4b5563;--color-text-muted:#9ca3af;--color-border:#e5e7eb;--color-bg-input:#fff;--color-bg-table-header:#f3f4f6;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #0000000d, 0 2px 4px -1px #0000000d;--shadow-lg:0 10px 15px -3px #0000000d, 0 4px 6px -2px #0000000d}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family-body);background-color:var(--color-bg-app);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;line-height:1.5;transition:background-color .3s,color .3s,border-color .3s,box-shadow .3s}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-headings);color:var(--color-text-primary);font-weight:400}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-app)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--border-radius-md);border:1px solid var(--color-bg-app)}::-webkit-scrollbar-thumb:hover{background:var(--color-gold)}.app-container{min-height:100vh;display:flex;overflow-x:hidden}.main-content{background-color:var(--color-bg-app);flex:1;min-width:0;height:100vh;padding:2rem;overflow-y:auto}.panel{background:var(--color-bg-panel);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);transition:var(--transition-smooth);margin-bottom:1.5rem;padding:1.5rem}.panel:hover{border-color:#c6a87c4d}.form-group{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.form-label{font-family:var(--font-family-headings);color:var(--color-text-secondary);font-size:.875rem;font-weight:500}.form-input{background-color:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--border-radius-md);width:100%;color:var(--color-text-primary);font-family:var(--font-family-body);transition:var(--transition-smooth);padding:.625rem .875rem;font-size:.875rem}select.form-input{padding-top:.375rem;padding-bottom:.375rem}select.form-input option,select option{background-color:var(--color-bg-panel);color:var(--color-text-primary)}.form-input:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 2px var(--color-gold-glow);outline:none}.form-input::placeholder{color:var(--color-text-muted)}.btn{font-family:var(--font-family-headings);border-radius:var(--border-radius-md);cursor:pointer;transition:var(--transition-smooth);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;display:inline-flex}.btn-primary{background-color:var(--color-gold);color:#121212}.btn-primary:hover{background-color:var(--color-gold-hover);box-shadow:0 0 12px var(--color-gold-glow)}.btn-export{font-family:var(--font-family-headings);border-radius:var(--border-radius-md);cursor:pointer;border:1px solid var(--color-gold);background-color:var(--color-gold);color:#121212;white-space:nowrap;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;transition:all .2s ease-in-out;display:inline-flex}.btn-export:hover{color:#000;background-color:#dcb38a;border-color:#dcb38a;transform:translateY(-1px);box-shadow:0 0 16px #c6a87c66}.btn-export:active{transform:translateY(0)}.btn-export-loading{opacity:.85;pointer-events:none;box-shadow:0 0 14px var(--color-gold-glow);cursor:wait!important}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner-animate{animation:1s linear infinite spin}.btn-secondary{border-color:var(--color-border);color:var(--color-text-primary);background-color:#0000}.btn-secondary:hover{border-color:var(--color-gold);color:var(--color-gold)}.btn-icon{border-radius:var(--border-radius-md);justify-content:center;align-items:center;width:38px;height:38px;padding:0;display:inline-flex}.grid{gap:1rem;display:grid}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.grid-cols-5{grid-template-columns:repeat(5,1fr)}@media (width<=1200px){.grid-cols-5{grid-template-columns:repeat(3,1fr)}}@media (width<=960px){.grid-cols-3,.grid-cols-4,.grid-cols-5{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.grid-cols-2,.grid-cols-3,.grid-cols-4,.grid-cols-5{grid-template-columns:1fr}}.table-container{border-radius:var(--border-radius-lg);border:1px solid var(--color-border);width:100%;box-shadow:var(--shadow-md);-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}.table{border-collapse:collapse;text-align:left;background-color:var(--color-bg-panel);width:100%}.table th{background-color:var(--color-bg-table-header);color:var(--color-text-secondary);font-family:var(--font-family-headings);border-bottom:1px solid var(--color-border);padding:1rem;font-size:.875rem;font-weight:500}.table td{border-bottom:1px solid var(--color-border);color:var(--color-text-primary);padding:1rem;font-size:.875rem}.table tr:last-child td{border-bottom:none}.table tr:hover td{background-color:#ffffff05}.chip,.badge{border-radius:50px;justify-content:center;align-items:center;min-width:42px;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-flex}.chip-success,.badge-success{background-color:var(--color-success-bg);color:var(--color-success);border:1px solid #4caf5033}.chip-error,.chip-danger,.badge-error,.badge-danger{background-color:var(--color-error-bg);color:var(--color-error);border:1px solid #f4433633}.chip-info,.badge-info{background-color:var(--color-info-bg);color:var(--color-info);border:1px solid #2196f333}.chip-secondary,.badge-secondary{color:var(--color-text-secondary);border:1px solid var(--color-border);background-color:#ffffff0d}.chip-gold,.badge-gold{color:var(--color-gold);border:1px solid var(--color-gold);background-color:#c6a87c26}.sidebar{background-color:var(--color-bg-sidebar);border-right:1px solid var(--color-border);z-index:100;width:260px;height:100vh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:sticky;top:0}.sidebar-brand{border-bottom:1px solid var(--color-border);height:70px;font-family:var(--font-family-headings);letter-spacing:.5px;align-items:center;padding:0 1.5rem;font-size:1.25rem;font-weight:600;display:flex}.brand-gold{color:var(--color-gold)}.brand-erp{color:var(--color-text-primary);margin-left:4px;font-weight:300}.sidebar-nav{flex-direction:column;flex:1;gap:1.25rem;padding:1.5rem 1rem;display:flex;overflow-y:auto}.nav-section-label{font-family:var(--font-family-headings);letter-spacing:1.5px;color:var(--color-text-muted);margin-bottom:.5rem;padding-left:.5rem;font-size:.6875rem;font-weight:700}.nav-link,.nav-group-header,.nav-sub-link{border-radius:var(--border-radius-md);color:var(--color-text-secondary);transition:var(--transition-smooth);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:.75rem;width:100%;padding:.625rem .75rem;font-size:.875rem;text-decoration:none;display:flex}.nav-link:hover,.nav-group-header:hover{color:var(--color-text-primary);background-color:#ffffff08}.nav-link.active{color:var(--color-gold);background-color:#c6a87c14;font-weight:500}.nav-group-header{justify-content:space-between}.nav-group-title{align-items:center;gap:.75rem;display:flex}.nav-group-items{border-left:1px solid var(--color-border);flex-direction:column;gap:.25rem;margin-top:.25rem;margin-left:1.25rem;padding-left:1.25rem;display:flex}.nav-sub-link{padding:.5rem .75rem;font-size:.8125rem}.nav-sub-link.active{color:var(--color-gold);font-weight:500}.layout-frame{flex-direction:column;flex:1;min-width:0;height:100vh;display:flex}.header{background-color:var(--color-bg-panel);border-bottom:1px solid var(--color-border);height:70px;box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;padding:0 2rem;display:flex}.header-title{font-family:var(--font-family-headings);font-size:1.125rem;font-weight:500}.user-profile{align-items:center;gap:.75rem;display:flex}.user-avatar{background-color:var(--color-gold);color:#121212;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.875rem;font-weight:600;display:flex}.user-info{flex-direction:column;display:flex}.user-name{font-size:.8125rem;font-weight:500}.user-role,.user-email{color:var(--color-gold);letter-spacing:.5px;font-size:.6875rem;font-weight:600}.btn-manifest{border-color:var(--color-text-primary);color:var(--color-text-primary);transition:var(--transition-smooth);background-color:#0000}.btn-manifest:hover{background-color:var(--color-text-primary);color:var(--color-bg-app);box-shadow:0 0 10px #ffffff26}.btn-docs{border-color:var(--color-gold);color:var(--color-gold);transition:var(--transition-smooth);background-color:#0000}.btn-docs:hover{background-color:var(--color-gold);color:#121212;box-shadow:0 0 10px var(--color-gold-glow)}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.sidebar-toggle{color:var(--color-text-primary);cursor:pointer;border-radius:var(--border-radius-md);transition:var(--transition-smooth);background:0 0;border:none;justify-content:center;align-items:center;padding:.5rem;display:none}.sidebar-toggle:hover{color:var(--color-gold);background-color:#ffffff0d}[data-theme=light] .sidebar-toggle:hover{background-color:#0000000d}.sidebar-backdrop{z-index:99;background-color:#00000080;width:100vw;height:100vh;position:fixed;top:0;left:0}@media (width<=1023px){.sidebar{z-index:100;height:100vh;transition:transform .3s cubic-bezier(.4,0,.2,1);position:fixed;top:0;left:-260px;transform:translate(0)}.sidebar.open{transform:translate(260px)}.sidebar-toggle{margin-right:1rem;display:inline-flex}.header{padding:0 1rem}.main-content{padding:1rem}.header form{flex:1;max-width:260px}.header form input{min-width:0!important}.header form button{flex-shrink:0!important}.header .btn-icon{margin-left:.15rem!important}}@media (width<=768px){.header{gap:.35rem;height:60px;padding:0 .5rem}.sidebar-toggle{margin-right:0;padding:.3rem}.header form{flex:1;min-width:0;gap:.2rem!important;max-width:none!important;padding:.15rem .3rem!important}.header form select{border-right:1px solid var(--color-border)!important;padding:.1rem .1rem .1rem .2rem!important;font-size:.75rem!important;display:inline-block!important}.header form input{font-size:.75rem!important}.header form button{padding:.1rem!important}.user-info{display:none}.user-profile{gap:.25rem}.user-avatar{width:28px;height:28px;font-size:.75rem}.header .btn-icon{width:28px;height:28px;margin-left:0!important}.header .btn-icon svg{width:14px;height:14px}.table{min-width:650px}}@media (width<=480px){.header{gap:.2rem;padding:0 .25rem}.header form{gap:.15rem!important;padding:.1rem .2rem!important}.header form select{padding:.05rem .05rem .05rem .15rem!important;font-size:.7rem!important}.header form input{font-size:.7rem!important}.user-profile{gap:.15rem}.user-avatar{width:24px;height:24px;font-size:.7rem}.header .btn-icon{width:24px;height:24px}.header .btn-icon svg{width:12px;height:12px}}.dashboard-header-row{justify-content:flex-end;align-items:center;gap:1.5rem;margin-top:.25rem;margin-bottom:.25rem;display:flex}@media (width<=768px){.dashboard-header-row{flex-direction:column-reverse;align-items:stretch;gap:.5rem;width:100%}.dashboard-header-row>div{width:100%;justify-content:space-between!important;display:flex!important}.dashboard-header-row select.form-input{max-width:180px;width:100%!important;height:34px!important;padding:.25rem .5rem!important}}@media (width<=960px){.dashboard-grid{grid-template-columns:1fr!important}}.dashboard-flex-responsive{flex-direction:row;flex:1;align-items:center;gap:1rem;width:100%;display:flex}.country-chart-container{flex:0 0 50%;width:50%;height:400px;position:relative}@media (width<=768px){.dashboard-flex-responsive{flex-direction:column!important;align-items:stretch!important}.dashboard-flex-responsive>div:first-child{flex:none!important;width:100%!important}.dashboard-flex-responsive>div:last-child{margin-top:1rem;flex:none!important;width:100%!important;max-height:250px!important}.country-chart-container{flex:none!important;width:100%!important;height:300px!important}}.spin{animation:1s linear infinite spin}@media (width<=768px){.table th.col-hidden-mobile,.table td.col-hidden-mobile{display:none!important}.table-container{box-sizing:border-box;width:100%;overflow-x:auto}.table{width:100%!important;min-width:0!important}.table th,.table td{box-sizing:border-box;padding:.75rem .625rem}.table tr.expanded-card-row>td{border-bottom:none;padding:0!important}}.row-expand-card{background:var(--color-bg-panel);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.75rem 1rem;padding:.875rem 1rem;animation:.16s cardSlideDown;display:grid}@keyframes cardSlideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.row-expand-card .card-field{flex-direction:column;gap:.2rem;display:flex}.row-expand-card .card-field-label{letter-spacing:.6px;color:var(--color-text-muted);text-transform:uppercase;font-size:.68rem;font-weight:700}.row-expand-card .card-field-value{color:var(--color-text-primary);font-size:.875rem}.btn-row-expand{cursor:pointer;color:var(--color-text-secondary);border-radius:var(--border-radius-sm);background:0 0;border:none;justify-content:center;align-items:center;padding:3px 5px;transition:color .15s,background .15s;display:inline-flex}.btn-row-expand:hover{color:var(--color-gold);background:var(--color-gold-glow)}
