:root{--brand-primary:#14b8a6;--brand-primary-dark:#0f766e;--brand-primary-light:#5eead4;--brand-secondary:#0ea5e9;--brand-accent:#f59e0b;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444;--color-info:#3b82f6;--color-white:#ffffff;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--text-primary:var(--color-gray-900);--text-secondary:var(--color-gray-600);--text-muted:var(--color-gray-500);--text-inverse:var(--color-white);--text-link:var(--brand-primary);--text-link-hover:var(--brand-primary-dark);--bg-primary:var(--color-white);--bg-secondary:var(--color-gray-50);--bg-tertiary:var(--color-gray-100);--bg-overlay:rgba(0, 0, 0, 0.5);--bg-hover:var(--color-gray-100);--bg-active:var(--color-gray-200);--border-light:var(--color-gray-200);--border-medium:var(--color-gray-300);--border-dark:var(--color-gray-400);--font-family-sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI','Roboto','Oxygen','Ubuntu','Cantarell',sans-serif;--font-family-mono:'SF Mono','Monaco','Cascadia Code','Roboto Mono','Courier New',monospace;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--radius-sm:0.25rem;--radius-md:0.375rem;--radius-lg:0.5rem;--radius-xl:0.75rem;--radius-2xl:1rem;--radius-full:9999px;--shadow-xs:0 1px 2px 0 rgba(0, 0, 0, 0.05);--shadow-sm:0 1px 3px 0 rgba(0, 0, 0, 0.1),0 1px 2px -1px rgba(0, 0, 0, 0.1);--shadow-md:0 4px 6px -1px rgba(0, 0, 0, 0.1),0 2px 4px -2px rgba(0, 0, 0, 0.1);--shadow-lg:0 10px 15px -3px rgba(0, 0, 0, 0.1),0 4px 6px -4px rgba(0, 0, 0, 0.1);--shadow-xl:0 20px 25px -5px rgba(0, 0, 0, 0.1),0 8px 10px -6px rgba(0, 0, 0, 0.1);--transition-fast:150ms cubic-bezier(0.4, 0, 0.2, 1);--transition-base:200ms cubic-bezier(0.4, 0, 0.2, 1);--transition-slow:300ms cubic-bezier(0.4, 0, 0.2, 1);--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070}*{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-family-sans);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--text-primary);background-color:var(--bg-secondary)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--text-primary)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}p{margin-bottom:var(--spacing-md);color:var(--text-secondary)}a{color:var(--text-link);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--text-link-hover)}code,pre{font-family:var(--font-family-mono);font-size:var(--font-size-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--font-family-sans);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:1.5;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);white-space:nowrap;text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{color:var(--text-inverse);background-color:var(--brand-primary);border-color:var(--brand-primary)}.btn-primary:hover:not(:disabled){background-color:var(--brand-primary-dark);border-color:var(--brand-primary-dark)}.btn-secondary{color:var(--text-primary);background-color:var(--color-white);border-color:var(--border-medium)}.btn-secondary:hover:not(:disabled){background-color:var(--bg-hover)}.btn-success{color:var(--text-inverse);background-color:var(--color-success);border-color:var(--color-success)}.btn-danger{color:var(--text-inverse);background-color:var(--color-error);border-color:var(--color-error)}.btn-warning{color:var(--text-primary);background-color:var(--color-warning);border-color:var(--color-warning)}.btn-sm{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-xs)}.btn-lg{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-base)}input,select,textarea{font-family:var(--font-family-sans);font-size:var(--font-size-sm);line-height:var(--line-height-normal)}input[type=date],input[type=datetime-local],input[type=email],input[type=number],input[type=password],input[type=text],input[type=time],select,textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);color:var(--text-primary);background-color:var(--bg-primary);border:1px solid var(--border-medium);border-radius:var(--radius-md);transition:all var(--transition-fast)}input:focus,select:focus,textarea:focus{outline:0;border-color:var(--brand-primary);box-shadow:0 0 0 3px rgba(20,184,166,.1)}label{display:block;margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary)}.card{background-color:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.card-header{padding:var(--spacing-lg);border-bottom:1px solid var(--border-light);background-color:var(--bg-secondary)}.card-body{padding:var(--spacing-lg)}.card-footer{padding:var(--spacing-lg);border-top:1px solid var(--border-light);background-color:var(--bg-secondary)}table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm);background-color:var(--bg-primary)}thead{background-color:var(--bg-secondary);border-bottom:2px solid var(--border-medium)}th{padding:var(--spacing-md);font-weight:var(--font-weight-semibold);text-align:left;color:var(--text-primary)}td{padding:var(--spacing-md);border-bottom:1px solid var(--border-light);color:var(--text-secondary)}tbody tr:hover{background-color:var(--bg-hover)}.badge{display:inline-flex;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:1;border-radius:var(--radius-full);white-space:nowrap}.badge-primary{color:var(--text-inverse);background-color:var(--brand-primary)}.badge-success{color:var(--text-inverse);background-color:var(--color-success)}.badge-warning{color:var(--text-primary);background-color:var(--color-warning)}.badge-error{color:var(--text-inverse);background-color:var(--color-error)}.badge-secondary{color:var(--text-primary);background-color:var(--color-gray-200)}.modal-backdrop{position:fixed;inset:0;background-color:var(--bg-overlay);z-index:var(--z-modal-backdrop)}.modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:600px;max-height:90vh;background-color:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);overflow:hidden;z-index:var(--z-modal)}.modal-header{padding:var(--spacing-lg);border-bottom:1px solid var(--border-light)}.modal-header h3{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.modal-body{padding:var(--spacing-lg);overflow-y:auto;max-height:calc(90vh - 160px)}.modal-footer{padding:var(--spacing-lg);border-top:1px solid var(--border-light);display:flex;justify-content:flex-end;gap:var(--spacing-md)}.alert{padding:var(--spacing-md);border:1px solid transparent;border-radius:var(--radius-md);margin-bottom:var(--spacing-md)}.alert-success{color:#065f46;background-color:#d1fae5;border-color:#6ee7b7}.alert-warning{color:#92400e;background-color:#fef3c7;border-color:#fcd34d}.alert-error{color:#991b1b;background-color:#fee2e2;border-color:#fca5a5}.alert-info{color:#1e40af;background-color:#dbeafe;border-color:#93c5fd}nav{background-color:var(--bg-primary);border-bottom:1px solid var(--border-light);box-shadow:var(--shadow-sm)}.nav-link{padding:var(--spacing-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);transition:all var(--transition-fast)}.nav-link.active,.nav-link:hover{color:var(--brand-primary);background-color:var(--brand-primary-light)}.m-0{margin:0}.p-0{padding:0}.mt-md{margin-top:var(--spacing-md)}.mb-md{margin-bottom:var(--spacing-md)}.p-md{padding:var(--spacing-md)}.text-center{text-align:center}.text-right{text-align:right}.text-muted{color:var(--text-muted)}.text-primary{color:var(--brand-primary)}.hidden{display:none}.flex{display:flex}.inline-flex{display:inline-flex}.block{display:block}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-md{gap:var(--spacing-md)}.w-full{width:100%}.w-auto{width:auto}@media print{body{font-family:var(--font-family-sans);font-size:11pt;color:#000;background:#fff}.no-print{display:none!important}}.supplier-tab-btn{padding:.75rem 1.5rem;border-bottom:2px solid transparent;transition:all .2s;background:0 0;border:none;cursor:pointer;color:var(--text-secondary)}.supplier-tab-btn.active{border-bottom-color:var(--brand-primary);color:var(--brand-primary)}.supplier-tab-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}