@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--brand:#10b981;--brand-green:#10b981;--brand-hover:#059669;--brand-light:#d1fae5;--brand-mid:#10b9811a;--veyro-emerald-50:#ecfdf5;--veyro-emerald-300:#6ee7b7;--veyro-emerald-600:#059669;--canvas-bg:#f8fafc;--surface:#fff;--surface-hover:#f1f5f9;--sidebar-bg:#fff;--sidebar-width:232px;--sidebar-collapsed-width:64px;--text-primary:#0f172a;--text-secondary:#334155;--text-muted:#64748b;--text-inverse:#fff;--border:#e2e8f0;--border-color:#e2e8f0;--border-hover:#cbd5e1;--border-focus:#10b981;--card-bg:#fff;--card-border:#e2e8f0;--card-shadow:0 1px 2px #0f172a0a;--card-shadow-hover:0 4px 12px #0f172a0f;--success:#059669;--success-bg:#ecfdf5;--warning:#d97706;--warning-bg:#fef3c7;--danger:#dc2626;--danger-bg:#fef2f2;--info:#0284c7;--info-bg:#f0f9ff;--purple:#475569;--purple-bg:#f1f5f9;--font-ui:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--type-caption:.75rem;--type-body:.875rem;--type-label:.875rem;--type-subtitle:1rem;--type-title:1.25rem;--type-display:1.75rem;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--header-height:48px;--z-base:1;--z-dropdown:20;--z-sidebar:30;--z-nav:40;--z-modal:50;--z-toast:60;--glass-bg:var(--card-bg);--glass-border:var(--card-border);--glass-border-hover:var(--border-hover);--color-surface:var(--surface);--color-surface-hover:var(--surface-hover);--color-accent-green:var(--brand);--color-accent-blue:var(--text-secondary);--color-accent-orange:var(--warning);--color-accent-purple:var(--text-secondary);--bg-primary:var(--surface);--bg-secondary:var(--surface-hover);--shadow-sm:var(--card-shadow);--shadow-md:var(--card-shadow);--shadow-lg:var(--card-shadow-hover)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-ui);font-size:var(--type-body);color:var(--text-primary);background:var(--canvas-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}body.density-compact{font-size:.8125rem}body.density-compact td{padding:8px 12px}body.density-compact .card{padding:12px 16px}#root{display:contents}.tabular-nums,.kpi-value,.currency-value,.mono{font-family:var(--font-ui);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.app-container{flex-direction:column;width:100vw;height:100vh;display:flex;overflow:hidden}.app-body{flex:1;width:100%;min-height:0;display:flex;overflow:hidden}.top-header-bar{border-bottom:1px solid var(--border);background:var(--surface);height:48px;min-height:48px;max-height:48px;z-index:var(--z-nav);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:0 16px;display:flex}.desktop-sidebar{width:var(--sidebar-width);min-width:var(--sidebar-width);background:var(--surface);border-inline-end:1px solid var(--border);height:100%;z-index:var(--z-sidebar);flex-direction:column;flex-shrink:0;transition:width .18s,min-width .18s;display:none;overflow:visible}.desktop-sidebar.collapsed{width:var(--sidebar-collapsed-width);min-width:var(--sidebar-collapsed-width)}.rail-nav-link{position:relative}.desktop-sidebar.collapsed .rail-nav-link:after{content:attr(data-tooltip);inset-inline-start:calc(100% + 10px);color:#fff;font-size:var(--type-caption);white-space:nowrap;opacity:0;pointer-events:none;z-index:200;background:#0f172a;border-radius:6px;padding:4px 10px;font-weight:500;transition:opacity .12s;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 4px 12px #0f172a2e}.desktop-sidebar.collapsed .rail-nav-link:hover:after{opacity:1}.main-content{background:var(--canvas-bg);flex-direction:column;flex:1;min-width:0;height:100%;display:flex;overflow:hidden auto}.page-content-wrapper{flex:1;min-width:0;padding:20px 24px}.command-bar{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:16px;display:flex}.command-bar-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.responsive-tabs-bar{border-bottom:1px solid var(--border);align-items:center;gap:4px;display:flex;overflow-x:auto}.responsive-tabs-select{width:100%;font-size:var(--type-body);border:1px solid var(--border);background:var(--surface);color:var(--text-primary);border-radius:8px;padding:8px 12px;font-weight:600;display:none}@media (width<=640px){.responsive-tabs-bar{display:none!important}.responsive-tabs-select{display:block!important}}@media (width>=768px){.desktop-sidebar{display:flex}.desktop-hidden{display:none!important}}@media (width<=767px){.desktop-sidebar{display:none!important}.top-header-bar{padding:0 12px}.page-content-wrapper{padding:16px}.header-search-text,.header-search-kbd{display:none!important}.header-search-btn{justify-content:center!important;width:34px!important;padding:0!important}}@media (width<=1024px){.page-content-wrapper{padding:16px 20px}.responsive-two-col,.pos-layout-grid{grid-template-columns:1fr!important}.pipeline-layout{flex-direction:column!important}.pipeline-followup-sidebar{width:100%!important}}.card,.modal-panel,.modal-card,.drawer-panel{background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--card-shadow);border-radius:8px;transition:box-shadow .15s,border-color .15s}.card:hover{border-color:var(--border-hover)}h1,h2,h3,h4,h5,h6{font-family:var(--font-ui);color:var(--text-primary);text-transform:none;font-weight:600;line-height:1.3}h1,.type-title,h2{font-size:var(--type-title);letter-spacing:-.015em;font-weight:700}h3,.type-subtitle{font-size:var(--type-subtitle);font-weight:600}h4,.type-label{font-size:var(--type-label);font-weight:600}.type-display{font-size:var(--type-display);letter-spacing:-.02em;font-weight:700}.type-body{font-size:var(--type-body);font-weight:400}.type-caption{font-size:var(--type-caption);color:var(--text-muted);font-weight:500}p{color:var(--text-secondary);font-size:var(--type-body)}button{font-family:var(--font-ui);cursor:pointer;outline:none}.btn-primary{background:var(--brand);color:#fff;border:1px solid var(--brand);height:34px;font-family:var(--font-ui);font-size:var(--type-body);white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:6px 14px;font-weight:600;line-height:1;transition:background .15s;display:inline-flex}.btn-primary:hover{background:var(--brand-hover);border-color:var(--brand-hover)}.btn-secondary{background:var(--surface);color:var(--text-primary);border:1px solid var(--border);height:34px;font-family:var(--font-ui);font-size:var(--type-body);white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:6px 14px;font-weight:500;line-height:1;transition:background .15s,border-color .15s;display:inline-flex}.btn-secondary:hover{background:var(--surface-hover);border-color:var(--border-hover)}.btn-danger{background:var(--danger);color:#fff;border:1px solid var(--danger);height:34px;font-family:var(--font-ui);font-size:var(--type-body);border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:6px 14px;font-weight:600;transition:background .15s;display:inline-flex}.btn-danger:hover{background:#b91c1c}input,select,textarea{font-family:var(--font-ui);font-size:var(--type-body);border:1px solid var(--border);background:var(--surface);color:var(--text-primary);border-radius:6px;outline:none;padding:6px 12px;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--border-focus)!important;box-shadow:0 0 0 2px #10b98126!important}input::placeholder,textarea::placeholder{color:var(--text-muted)}.badge{font-size:var(--type-caption);white-space:nowrap;text-transform:none;border-radius:6px;align-items:center;gap:4px;padding:2px 8px;font-weight:600;display:inline-flex}.badge-green{background:var(--success-bg);color:var(--success)}.badge-amber{background:var(--warning-bg);color:var(--warning)}.badge-red{background:var(--danger-bg);color:var(--danger)}.badge-blue,.badge-purple{background:var(--surface-hover);color:var(--text-secondary)}table{border-collapse:collapse;width:100%}thead{background:var(--surface-hover)}th{font-family:var(--font-ui);font-size:var(--type-caption);text-transform:none;letter-spacing:0;color:var(--text-secondary);border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;padding:10px 16px;font-weight:600}[dir=rtl] th,[dir=rtl] td{text-align:right}td{border-bottom:1px solid var(--border);font-size:var(--type-body);color:var(--text-secondary);vertical-align:middle;padding:12px 16px}tr:last-child td{border-bottom:none}tbody tr:hover td{background:var(--surface-hover)}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}@media (width<=1100px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=540px){.kpi-grid{grid-template-columns:1fr}}.kpi-card{background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--card-shadow);border-radius:8px;padding:16px}.kpi-card .kpi-label{font-size:var(--type-label);color:var(--text-secondary);text-transform:none;margin-bottom:8px;font-weight:600}.kpi-card .kpi-value{font-size:var(--type-display);color:var(--text-primary);font-weight:700;line-height:1.2;font-family:var(--font-ui);font-variant-numeric:tabular-nums;margin-bottom:4px}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-box{background:linear-gradient(90deg,#e2e8f0 25%,#f1f5f9 50%,#e2e8f0 75%) 0 0/200% 100%;border-radius:6px;animation:1.5s linear infinite shimmer}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}@keyframes slideUpFade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes spin{0%{transform:rotate(0)}to{opacity:1;transform:rotate(360deg)}}.animate-slide-up{animation:.2s forwards slideUpFade}.animate-slide-in-right{animation:.2s forwards slideInRight}.spin,.animate-spin{animation:.9s linear infinite spin}.form-input{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text-primary);font-family:var(--font-ui);font-size:var(--type-body);border-radius:6px;outline:none;padding:8px 12px}.form-input:focus{border-color:var(--brand);box-shadow:0 0 0 2px #10b98126}
