@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";.notifications-section.qv-card-supplier{border-color:#0596694d;background:linear-gradient(135deg,var(--qv-bg-card) 0%,rgba(5,150,105,.05) 100%)}.notifications-section.qv-card-supplier:hover{border-color:var(--supplier-primary);box-shadow:0 4px 12px #05966933}.notifications-section .header{display:flex;align-items:flex-start;gap:var(--qv-space-4);padding-bottom:var(--qv-space-4);margin-bottom:var(--qv-space-2);border-bottom:1px solid rgba(255,255,255,.1)}.notifications-section .header-icon{width:2.5rem;height:2.5rem;border-radius:50%;background-color:var(--supplier-primary);color:var(--bs-white);display:flex;align-items:center;justify-content:center;flex-shrink:0}.notifications-section .header-text{min-width:0}.notifications-section .empty{text-align:center;padding:var(--qv-space-12) var(--qv-space-6)}.notifications-section .empty-icon-wrap{width:4.5rem;height:4.5rem;border-radius:50%;background-color:#10b98126;color:var(--supplier-accent);display:inline-flex;align-items:center;justify-content:center;margin-bottom:var(--qv-space-4)}.notifications-section .empty-icon{font-size:2rem}.notifications-section .empty-desc{font-size:var(--qv-text-sm);color:var(--qv-text-subtle, #adb5bd);max-width:22rem;margin:0 auto;line-height:var(--qv-leading-relaxed)}.supplier-layout{height:100vh;height:100dvh;display:flex;flex-direction:column;background-color:var(--qv-bg-primary);overflow:hidden}.supplier-layout .header{flex-shrink:0;padding:var(--qv-space-4) var(--qv-space-2);background-color:var(--qv-bg-card);position:sticky;top:0;z-index:10}.supplier-layout .header .brand-text{color:var(--bs-white)}.supplier-layout .body{display:flex;flex:1;min-height:0;overflow:hidden}.supplier-layout .sidebar{width:260px;flex-shrink:0;background-color:var(--qv-bg-card);border-right:1px solid rgba(255,255,255,.08);border-radius:0 .5rem .5rem 0;padding:var(--qv-space-4) 0;display:flex;flex-direction:column;overflow:hidden;margin-block:var(--qv-space-6)}.supplier-layout .sidebar .sidebar-nav{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.25rem;flex:1}.supplier-layout .sidebar .sidebar-item{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;color:#ffffffd9;text-decoration:none;transition:background-color .15s,color .15s;width:100%;text-align:left;border:none;border-radius:0}.supplier-layout .sidebar .sidebar-item .bi{flex-shrink:0}.supplier-layout .sidebar .sidebar-item,.supplier-layout .sidebar .sidebar-item a,.supplier-layout .sidebar .sidebar-item button{background:transparent;font:inherit}.supplier-layout .sidebar .sidebar-item:hover:not(:disabled){color:var(--bs-white);background-color:#ffffff0f}.supplier-layout .sidebar .sidebar-item.active{color:#fff;background:linear-gradient(135deg,var(--supplier-primary, #059669) 0%,rgba(5,150,105,.8) 100%);box-shadow:0 4px 12px #0596694d;border:none}.supplier-layout .sidebar .sidebar-item:disabled,.supplier-layout .sidebar .sidebar-item[aria-disabled]{opacity:.5;cursor:not-allowed}.supplier-layout .main{flex:1;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;padding:var(--qv-space-6)}.contract-detail{--contract-banner-confirm-start: var(--supplier-primary);--contract-banner-confirm-mid: var(--supplier-accent);--contract-banner-confirm-end: var(--supplier-primary-light);--contract-banner-requirements-bg-start: var(--qv-primary-900);--contract-banner-requirements-bg-end: var(--qv-primary-700);--contract-banner-requirements-text: var(--qv-primary-100);--contract-banner-requirements-text-muted: var(--qv-primary-50)}.contract-detail .workflow.workflow-inactive{opacity:.58;filter:saturate(.72);position:relative;transition:opacity .2s ease,filter .2s ease}.contract-detail .banner{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--qv-space-4);padding:var(--qv-space-4) var(--qv-space-6);border-radius:.5rem;flex-wrap:wrap}@media (max-width: 768px){.contract-detail .banner{flex-direction:column}}.contract-detail .banner.banner-confirm{background:linear-gradient(135deg,var(--contract-banner-requirements-bg-start) 0%,var(--contract-banner-requirements-bg-end) 100%);box-shadow:inset 0 0 0 1px #a7f3d01f}.contract-detail .banner.banner-confirm .banner-icon{background-color:#34d3992e;color:var(--contract-banner-requirements-text)}.contract-detail .banner.banner-confirm .confirm-text{color:var(--contract-banner-requirements-text)}.contract-detail .banner.banner-confirm .confirm-text.opacity-75,.contract-detail .banner.banner-confirm p.confirm-text{color:var(--contract-banner-requirements-text-muted);opacity:.95}.contract-detail .banner.banner-confirm .banner-btn-confirm{background-color:transparent;color:#ecfdf5;border:1px solid rgba(167,243,208,.35);font-weight:600}.contract-detail .banner.banner-confirm .banner-btn-confirm:hover:not(:disabled){background-color:#ffffff0f;color:#f0fdf4;border-color:#a7f3d08c}.contract-detail .banner.banner-confirm .banner-btn-confirm:disabled{opacity:.65}.contract-detail .banner.banner-requirements{background:linear-gradient(135deg,var(--contract-banner-confirm-start) 0%,var(--contract-banner-confirm-mid) 45%,var(--contract-banner-confirm-end) 100%);box-shadow:0 8px 28px #05966959}.contract-detail .banner.banner-requirements .banner-icon{background-color:#0000002e;color:var(--bs-white)}.contract-detail .banner.banner-requirements .text-white.opacity-75,.contract-detail .banner.banner-requirements p.text-white{color:#ffffffeb;opacity:.85}.contract-detail .banner.banner-requirements .banner-btn:not(.banner-btn-confirm){background-color:transparent;color:var(--bs-white);border:1px solid rgba(255,255,255,.92);font-weight:600}.contract-detail .banner.banner-requirements .banner-btn:not(.banner-btn-confirm):hover:not(:disabled){background-color:#ffffff24;color:var(--bs-white);border-color:var(--bs-white)}.contract-detail .banner-content{flex:1;min-width:0}.contract-detail .banner-icon{width:2.5rem;height:2.5rem;border-radius:50%;background-color:#fff3;color:var(--bs-white);display:flex;align-items:center;justify-content:center;flex-shrink:0}.contract-detail .banner-btn{flex-shrink:0;background-color:var(--bs-white);color:var(--supplier-primary);border:none;font-weight:600}.contract-detail .banner-btn:hover{background-color:#fffffff2;color:var(--supplier-primary-dark)}.contract-detail .data-preview-cell{cursor:pointer;min-width:6rem;vertical-align:middle;position:relative}.contract-detail .data-preview-cell--selected{background-color:rgba(var(--bs-primary-rgb),.15);outline:2px solid var(--bs-primary);outline-offset:-2px}.contract-detail .data-preview-cell--editing{padding:.125rem}.contract-detail .data-preview-cell--editing .form-control{width:100%;height:100%;border-radius:0;margin:0}.contract-detail .data-preview-cell--error{background-color:rgba(var(--bs-danger-rgb),.12)}.contract-detail .data-preview-cell--warning{background-color:rgba(var(--bs-warning-rgb),.12)}.contract-detail .data-preview-cell--locked{cursor:default;padding-left:1.25rem}.contract-detail .data-preview-cell__lock{position:absolute;top:.25rem;left:.35rem;opacity:.75;pointer-events:none}.contract-spec-modal .modal-header .btn-close{filter:invert(1)}.contract-spec-modal .step-content{min-height:300px}.contract-spec-modal .modal-footer{border-top:1px solid #dee2e6;padding:1rem}body{margin:0;min-width:320px;min-height:100vh}:root{--qv-primary: #059669;--qv-primary-50: #ecfdf5;--qv-primary-100: #d1fae5;--qv-primary-500: #10b981;--qv-primary-600: #059669;--qv-primary-700: #047857;--qv-primary-900: #064e3b;--qv-gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--qv-gradient-success: linear-gradient(135deg, #10b981 0%, #059669 100%);--qv-gradient-accent: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--supplier-primary: #059669;--supplier-accent: #10b981;--supplier-primary-dark: #047857;--supplier-primary-light: #34d399;--supplier-gradient: linear-gradient(135deg, #059669 0%, #10b981 100%);--supplier-gradient-hover: linear-gradient(135deg, #047857 0%, #059669 100%);--qv-bg-primary: #212529;--qv-bg-card: #343a40;--qv-bg-surface: #495057;--qv-success: #10b981;--qv-success-light: #d1fae5;--qv-success-dark: #047857;--qv-warning: #f59e0b;--qv-warning-light: #fef3c7;--qv-warning-dark: #d97706;--qv-error: #ef4444;--qv-error-light: #fee2e2;--qv-error-dark: #dc2626;--qv-font-primary: Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;--qv-font-mono: JetBrains Mono, Fira Code, Consolas, monospace;--qv-text-xs: .75rem;--qv-text-sm: .875rem;--qv-text-base: .95rem;--qv-text-lg: 1rem;--qv-text-xl: 1.125rem;--qv-text-2xl: 1.375rem;--qv-text-3xl: 1.625rem;--qv-text-4xl: 1.875rem;--qv-leading-tight: 1.25;--qv-leading-normal: 1.5;--qv-leading-relaxed: 1.75;--qv-space-1: .25rem;--qv-space-2: .5rem;--qv-space-3: .75rem;--qv-space-4: 1rem;--qv-space-5: 1.25rem;--qv-space-6: 1.5rem;--qv-space-8: 2rem;--qv-space-10: 2.5rem;--qv-space-12: 3rem;--qv-space-16: 4rem;--qv-space-20: 5rem;--qv-text-primary: #f8f9fa;--qv-text-secondary: #dee2e6;--qv-text-subtle: #adb5bd;--qv-text-muted: #6c757d;--qv-font-weight-light: 300;--qv-font-weight-normal: 400;--qv-font-weight-medium: 500;--qv-font-weight-semibold: 600;--qv-font-weight-bold: 700;--qv-line-height-tight: 1.25;--qv-line-height-normal: 1.5;--qv-line-height-relaxed: 1.75}.qv-heading-1{font-size:var(--qv-text-4xl);font-weight:var(--qv-font-weight-bold);line-height:var(--qv-line-height-tight);color:var(--qv-text-primary)}.qv-heading-2{font-size:var(--qv-text-3xl);font-weight:var(--qv-font-weight-bold);line-height:var(--qv-line-height-tight);color:var(--qv-text-primary)}.qv-heading-3{font-size:var(--qv-text-2xl);font-weight:var(--qv-font-weight-semibold);line-height:var(--qv-line-height-tight);color:var(--qv-text-primary)}.qv-heading-4{font-size:var(--qv-text-xl);font-weight:var(--qv-font-weight-semibold);line-height:var(--qv-line-height-normal);color:var(--qv-text-primary)}.qv-heading-5{font-size:var(--qv-text-lg);font-weight:var(--qv-font-weight-semibold);line-height:var(--qv-line-height-normal);color:var(--qv-text-primary)}.qv-heading-6{font-size:var(--qv-text-base);font-weight:var(--qv-font-weight-semibold);line-height:var(--qv-line-height-normal);color:var(--qv-text-primary)}.qv-text-subtle{color:var(--qv-text-subtle)}.qv-text-muted{color:var(--qv-text-muted)}.qv-text-primary{color:var(--qv-text-primary)}.qv-text-secondary{color:var(--qv-text-secondary)}.qv-text-supplier{color:var(--supplier-primary)}.qv-text-xs{font-size:var(--qv-text-xs)}.qv-text-sm{font-size:var(--qv-text-sm)}.qv-text-base{font-size:var(--qv-text-base)}.qv-text-lg{font-size:var(--qv-text-lg)}.qv-text-xl{font-size:var(--qv-text-xl)}.qv-text-2xl{font-size:var(--qv-text-2xl)}.qv-text-3xl{font-size:var(--qv-text-3xl)}.qv-text-4xl{font-size:var(--qv-text-4xl)}.qv-font-light{font-weight:var(--qv-font-weight-light)}.qv-font-normal{font-weight:var(--qv-font-weight-normal)}.qv-font-medium{font-weight:var(--qv-font-weight-medium)}.qv-font-semibold{font-weight:var(--qv-font-weight-semibold)}.qv-font-bold{font-weight:var(--qv-font-weight-bold)}.qv-leading-tight{line-height:var(--qv-line-height-tight)}.qv-leading-normal{line-height:var(--qv-line-height-normal)}.qv-leading-relaxed{line-height:var(--qv-line-height-relaxed)}.qv-card,.qv-card-supplier{background-color:var(--qv-bg-card);border:1px solid rgba(255,255,255,.1);border-radius:.5rem;padding:var(--qv-space-6);transition:all .3s ease}.qv-card:hover,.qv-card-supplier:hover{border-color:#fff3;box-shadow:0 4px 12px #0000004d}.cursor-pointer{cursor:pointer}.qv-card-supplier{border-color:#0596694d;background:linear-gradient(135deg,var(--qv-bg-card) 0%,rgba(5,150,105,.05) 100%)}.qv-card-supplier:hover{border-color:var(--supplier-primary);box-shadow:0 4px 12px #05966933}.qv-card-header{padding-bottom:var(--qv-space-2);margin-bottom:var(--qv-space-2);border-bottom:1px solid rgba(255,255,255,.1)}.qv-card-body{padding:0}.qv-card-footer{padding-top:var(--qv-space-4);margin-top:var(--qv-space-4);border-top:1px solid rgba(255,255,255,.1)}.qv-btn-primary{background:var(--qv-gradient-primary);border:none;color:var(--qv-text-primary);font-weight:var(--qv-font-weight-medium);padding:var(--qv-space-3) var(--qv-space-6);border-radius:.375rem;transition:all .3s ease;cursor:pointer}.qv-btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d;opacity:.9}.qv-btn-primary:active:not(:disabled){transform:translateY(0)}.qv-btn-primary:disabled{opacity:.5;cursor:not-allowed}.qv-btn-supplier,.btn-supplier{background:var(--supplier-gradient);border:none;border-radius:.5rem;font-weight:500;transition:all .2s ease-in-out;color:#fff}.qv-btn-supplier:hover:not(:disabled),.btn-supplier:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #05966933;color:#fff}.qv-btn-supplier:active:not(:disabled),.btn-supplier:active:not(:disabled){transform:translateY(0)}.qv-btn-supplier:disabled,.btn-supplier:disabled{opacity:.6;cursor:not-allowed}.qv-badge-supplier{background-color:var(--supplier-primary);color:#fff;padding:var(--qv-space-1) var(--qv-space-2);border-radius:4px;font-size:var(--qv-text-xs);font-weight:500}.bg-supplier{background-color:var(--supplier-primary)!important}.qv-btn-sm{padding:var(--qv-space-2) var(--qv-space-4);font-size:var(--qv-text-sm)}.qv-btn-lg{padding:var(--qv-space-4) var(--qv-space-8);font-size:var(--qv-text-lg)}.nav-tabs{border-bottom:1px solid rgba(255,255,255,.1)}.nav-tabs .nav-link{border:none;color:#6c757d;padding:.75rem 1.5rem}.nav-tabs .nav-link:hover{cursor:pointer;color:var(--qv-primary)}.nav-tabs .nav-link.active{color:var(--qv-primary);border-bottom:2px solid var(--qv-primary);background-color:transparent}.nav-tabs .nav-link:disabled{opacity:.5}.nav-tabs .nav-link:disabled:hover{cursor:default;color:var(--qv-text-muted)}.modal-content{border:1px solid rgba(255,255,255,.08);border-radius:.75rem;box-shadow:0 25px 50px -12px #00000080;overflow:hidden}.modal-header{background:var(--supplier-gradient);color:#fff;border-bottom:none;padding:var(--qv-space-5) var(--qv-space-6)}@keyframes qv-icon-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.qv-icon-spin{animation:qv-icon-spin .8s linear infinite}.qv-transition{transition:all .3s ease}.qv-transition-fast{transition:all .15s ease}.qv-transition-slow{transition:all .5s ease}.qv-hover-lift{transition:transform .3s ease,box-shadow .3s ease}.qv-hover-lift:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0003}.qv-hover-scale{transition:transform .3s ease}.qv-hover-scale:hover{transform:scale(1.05)}.qv-hover-scale-sm{transition:transform .3s ease}.qv-hover-scale-sm:hover{transform:scale(1.02)}@keyframes qv-fade-in{0%{opacity:0}to{opacity:1}}@keyframes qv-fade-out{0%{opacity:1}to{opacity:0}}.qv-fade-in{animation:qv-fade-in .3s ease-in-out}.qv-fade-out{animation:qv-fade-out .3s ease-in-out}@keyframes qv-slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes qv-slide-down{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.qv-slide-up{animation:qv-slide-up .3s ease-out}.qv-slide-down{animation:qv-slide-down .3s ease-out}.qv-hover-supplier{transition:all .2s ease-in-out}.qv-hover-supplier:hover{transform:translateY(-2px);box-shadow:0 4px 12px #05966933}.qv-glow-supplier:hover{box-shadow:0 0 20px #0596694d}.min-w-14rem{min-width:14rem}.btn-transparent{background-color:transparent}.btn-transparent:hover{background-color:var(--bs-btn-hover-bg)}:root{--bs-btn-hover-bg: #424649;--platform-supplier-primary: #059669;--platform-supplier-accent: #10b981}.text-supplier{color:var(--supplier-primary)!important}.border-supplier{border-color:var(--supplier-primary)!important}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--qv-font-primary);font-size:var(--qv-text-base);line-height:var(--qv-leading-normal)}p{margin:0}html,body{height:100%}
