@import url("https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700&display=swap");:root{color-scheme:light;--sidebar-width:220px;--sidebar-collapsed:60px;--topbar-height:56px;--bg:#f8f9fa;--surface:#fff;--border:#e8eaed;--border-light:#f3f4f6;--text:#111;--text-secondary:#4b5563;--text-muted:#6b7280;--accent:#6366f1}*{box-sizing:border-box}body{margin:0;font-family:DM Sans,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.app-layout{display:flex;height:100vh}.sidebar{width:var(--sidebar-width);background:#0a0a0a;display:flex;flex-direction:column;border-right:1px solid #1a1a1a;flex-shrink:0;overflow:hidden}.sidebar-logo{padding:14px 12px;border-bottom:1px solid #1a1a1a;min-height:56px}.sidebar-logo,.sidebar-logo-icon{display:flex;align-items:center;justify-content:center}.sidebar-logo-icon{width:26px;height:26px;border-radius:7px;background:linear-gradient(135deg,#6366f1,#8b5cf6);font-size:13px;font-weight:700;color:#fff;flex-shrink:0}.sidebar-logo-text{font-size:14px;font-weight:650;color:#fff;letter-spacing:-.02em}.sidebar-nav{flex:1 1;padding:12px 8px;display:flex;flex-direction:column;gap:2px}.sidebar-link{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:7px;font-size:13px;font-weight:500;color:#737373;transition:all .12s ease;white-space:nowrap}.sidebar-link:hover{background:rgba(255,255,255,.04);color:#a3a3a3}.sidebar-link.active{background:rgba(255,255,255,.08);color:#fff}.sidebar-link svg{flex-shrink:0}.topbar{justify-content:space-between;padding:0 28px;height:var(--topbar-height);border-bottom:1px solid var(--border);background:var(--surface);position:-webkit-sticky;position:sticky;top:0;z-index:10}.topbar,.topbar-breadcrumb{display:flex;align-items:center}.topbar-breadcrumb{gap:8px;font-size:12px;color:#9ca3af}.topbar-breadcrumb-active{font-weight:550;color:var(--text-secondary)}.main-content{flex:1 1;overflow:auto}.page-content{padding:28px 28px 40px;max-width:1200px}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.page-title{font-size:22px;font-weight:700;color:var(--text);margin:0;letter-spacing:-.02em}.page-subtitle{font-size:13px;color:var(--text-muted);margin:4px 0 0;font-weight:400}.card{background:var(--surface);border-radius:12px;border:1px solid var(--border);padding:18px 20px;transition:box-shadow .15s ease}.metrics-row{display:flex;gap:14px;margin-bottom:28px;flex-wrap:wrap}.metric-card{background:var(--surface);border-radius:12px;padding:20px 22px;border:1px solid var(--border);flex:1 1;min-width:180px;transition:box-shadow .15s ease}.metric-card:hover{box-shadow:0 2px 8px rgba(0,0,0,.04)}.metric-label{font-size:11.5px;color:var(--text-muted);font-weight:550;letter-spacing:.04em;text-transform:uppercase;margin-bottom:8px}.metric-value{font-size:32px;font-weight:700;color:var(--text);letter-spacing:-.03em;line-height:1}.table-card{background:var(--surface);border-radius:12px;border:1px solid var(--border);overflow:hidden}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{padding:11px 16px;text-align:left;font-size:11.5px;font-weight:550;color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid var(--border)}.table td{padding:13px 16px;border-bottom:1px solid var(--border-light);color:var(--text-secondary)}.table tbody tr{transition:background .1s ease}.table tbody tr:hover{background:#f8f9fc}.table tbody tr:last-child td{border-bottom:none}.table tbody tr td:first-child{font-weight:550;color:var(--text)}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:11.5px;font-weight:550;letter-spacing:.01em}.badge-active,.badge-approved,.badge-closed,.badge-completed,.badge-resolved,.badge-verified{background:rgba(16,185,129,.1);color:#059669}.badge-draft,.badge-expiring,.badge-in-treatment,.badge-pending-review,.badge-submitted,.badge-under-review{background:rgba(245,158,11,.1);color:#d97706}.badge-cancelled,.badge-critical,.badge-expired,.badge-high,.badge-open,.badge-rejected,.badge-reopened,.badge-rolled-back{background:rgba(239,68,68,.08);color:#dc2626}.badge-accepted,.badge-low,.badge-planned{background:rgba(107,114,128,.1);color:#6b7280}.badge-action-defined,.badge-contained,.badge-containment,.badge-in-progress,.badge-investigating,.badge-medium,.badge-pending-verification,.badge-standard{background:rgba(59,130,246,.08);color:#2563eb}.badge-corrective-action,.badge-under-investigation{background:rgba(139,92,246,.1);color:#7c3aed}.badge-internal{background:rgba(99,102,241,.1);color:#6366f1}.badge-external{background:rgba(168,85,247,.1);color:#a855f7}.badge-certification{background:rgba(14,165,233,.1);color:#0ea5e9}.badge-audit{background:rgba(139,92,246,.1);color:#7c3aed}.badge-incident{background:rgba(239,68,68,.08);color:#dc2626}.badge-customer-complaint{background:rgba(245,158,11,.1);color:#d97706}.badge-regulatory{background:rgba(202,138,4,.1);color:#ca8a04}.badge-normal,.badge-supplier{background:rgba(16,185,129,.1);color:#059669}.badge-emergency{background:rgba(239,68,68,.08);color:#dc2626}.badge-expedited,.badge-major{background:rgba(245,158,11,.1);color:#d97706}.badge-minor{background:rgba(59,130,246,.08);color:#2563eb}.badge-observation{background:rgba(16,185,129,.1);color:#059669}.score-badge{display:inline-flex;align-items:center;justify-content:center;width:32px;height:22px;border-radius:6px;font-size:11.5px;font-weight:650}.score-critical{background:rgba(239,68,68,.1);color:#dc2626}.score-high{background:rgba(245,158,11,.1);color:#d97706}.score-medium{background:rgba(59,130,246,.1);color:#2563eb}.score-low{background:rgba(16,185,129,.1);color:#059669}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;border:none;font-size:13px;font-weight:550;cursor:pointer;letter-spacing:.01em;font-family:inherit;transition:all .15s ease;line-height:1;white-space:nowrap}.btn:hover{opacity:.85}.btn:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.btn-primary{background:#111;color:#fff}.btn-primary:hover{background:#333}.btn-secondary{background:var(--surface);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:#f3f4f6}.btn-danger{background:#fff;color:#dc2626;border:1px solid #fca5a5}.btn-danger:hover{background:#fef2f2;border-color:#ef4444}.btn-ghost{background:none;color:var(--text-secondary);border:none;padding:6px 10px}.btn-ghost:hover{background:#f3f4f6;color:var(--text)}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.form-group{display:flex;flex-direction:column;gap:4px}.form-label{font-size:12px;font-weight:550;color:var(--text-secondary);letter-spacing:.01em}.form-input,.form-select,.form-textarea{width:100%;padding:9px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);font-size:13px;font-family:inherit;color:var(--text);transition:border-color .15s ease,box-shadow .15s ease;outline:none}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(99,102,241,.1)}.form-textarea{min-height:80px;resize:vertical}.form-full{grid-column:1/-1}.grid-2{grid-template-columns:1fr 1fr;grid-gap:14px}.grid-2,.grid-3{display:grid;gap:14px}.grid-3{grid-template-columns:repeat(3,1fr);grid-gap:14px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px}.muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.small{font-size:12px}.tabular{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.toast-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:center;gap:10px;padding:12px 18px;border-radius:10px;font-size:13px;font-weight:500;box-shadow:0 4px 16px rgba(0,0,0,.12),0 1px 4px rgba(0,0,0,.06);animation:toast-in .25s ease-out;min-width:280px;max-width:420px}.toast-success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.toast-error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.toast-warning{background:#fefce8;color:#854d0e;border:1px solid #fef08a}.toast-info{background:#eff6ff;color:#1e40af;border:1px solid #bfdbfe}.toast-icon{font-size:16px;flex-shrink:0}.toast-dismiss{margin-left:auto;background:none;border:none;padding:2px 6px;font-size:16px;cursor:pointer;opacity:.5;color:inherit;line-height:1}.toast-dismiss:hover{opacity:1}.toast-out{animation:toast-out .2s ease-in forwards}@keyframes toast-in{0%{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}@keyframes toast-out{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(40px)}}.spinner{display:inline-block;width:14px;height:14px;border:2px solid;border-right:2px solid transparent;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}::selection{background:#dbeafe;color:#1e3a5f}@media (max-width:900px){.sidebar{display:none}.form-grid,.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.metrics-row{flex-direction:column}.page-content{padding:20px 16px}}@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap");.landing{font-family:Plus Jakarta Sans,-apple-system,sans-serif;background:#050a0e;color:#c4cdd5;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased}.landing *{box-sizing:border-box;margin:0;padding:0}.landing a{text-decoration:none;color:inherit}.landing-container{max-width:1140px;margin:0 auto;padding:0 24px}.landing-header{position:fixed;top:0;left:0;right:0;z-index:100;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);background:rgba(5,10,14,.8);border-bottom:1px solid rgba(255,255,255,.06)}.landing-header-inner{justify-content:space-between;height:64px}.landing-header-inner,.landing-logo-link{display:flex;align-items:center}.landing-logo-img{height:26px;width:auto}.landing-nav{display:flex;gap:32px}.landing-nav-link{font-size:13.5px;font-weight:500;color:#8899a6;transition:color .2s;letter-spacing:-.01em}.landing-nav-link:hover{color:#e2e8f0}.landing-auth-buttons{display:flex;gap:10px;align-items:center}.landing-btn-ghost{font-size:13.5px;font-weight:500;color:#8899a6;padding:7px 16px;border-radius:8px;transition:all .2s}.landing-btn-ghost:hover{color:#e2e8f0;background:rgba(255,255,255,.05)}.landing-btn-primary{font-size:13.5px;font-weight:600;color:#050a0e;background:linear-gradient(135deg,#22d3ee,#0891b2);padding:8px 20px;border-radius:8px;transition:all .25s;display:inline-flex;align-items:center;justify-content:center;letter-spacing:-.01em}.landing-btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 30px rgba(34,211,238,.25)}.landing-btn-outline{font-size:13.5px;font-weight:600;color:#e2e8f0;border:1px solid rgba(255,255,255,.15);padding:8px 20px;border-radius:8px;transition:all .25s;display:inline-flex;align-items:center;justify-content:center}.landing-btn-outline:hover{border-color:rgba(34,211,238,.4);background:rgba(34,211,238,.05)}.landing-btn-lg{padding:12px 28px;font-size:15px;border-radius:10px}.landing-hero{position:relative;padding:160px 0 100px;text-align:center;overflow:hidden}.landing-hero-glow{position:absolute;top:-200px;left:50%;transform:translateX(-50%);width:800px;height:600px;background:radial-gradient(ellipse at center,rgba(8,145,178,.15) 0,rgba(34,211,238,.05) 40%,transparent 70%);pointer-events:none}.landing-hero-badge{display:inline-block;font-size:12.5px;font-weight:600;color:#22d3ee;background:rgba(34,211,238,.08);border:1px solid rgba(34,211,238,.15);padding:6px 16px;border-radius:100px;margin-bottom:28px;letter-spacing:.02em;text-transform:uppercase}.landing-hero-title{font-size:clamp(40px,6vw,64px);font-weight:800;color:#f1f5f9;line-height:1.1;letter-spacing:-.035em;margin-bottom:24px}.landing-hero-gradient{background:linear-gradient(135deg,#22d3ee,#0891b2,#06b6d4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-hero-sub{font-size:18px;line-height:1.7;color:#7a8a99;max-width:580px;margin:0 auto 40px;font-weight:400}.landing-hero-cta{display:flex;gap:14px;justify-content:center;margin-bottom:64px}.landing-hero-stats{display:flex;align-items:center;justify-content:center;gap:40px}.landing-stat{display:flex;flex-direction:column;align-items:center}.landing-stat-num{font-size:28px;font-weight:800;color:#f1f5f9;letter-spacing:-.03em}.landing-stat-label{font-size:12.5px;color:#5a6a78;font-weight:500;margin-top:4px;text-transform:uppercase;letter-spacing:.05em}.landing-stat-divider{width:1px;height:40px;background:rgba(255,255,255,.08)}.landing-features{padding:100px 0;text-align:center}.landing-section-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#22d3ee;margin-bottom:12px}.landing-section-title{font-size:clamp(28px,4vw,40px);font-weight:800;color:#f1f5f9;letter-spacing:-.03em;margin-bottom:14px}.landing-section-sub{font-size:16px;color:#6a7a88;margin-bottom:56px;max-width:520px;margin-left:auto;margin-right:auto}.landing-features-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:20px;gap:20px;text-align:left}.landing-feature-card{background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:32px 28px;transition:all .3s}.landing-feature-card:hover{border-color:rgba(34,211,238,.2);background:rgba(34,211,238,.03);transform:translateY(-2px)}.landing-feature-icon{width:44px;height:44px;border-radius:12px;background:rgba(34,211,238,.08);color:#22d3ee;display:flex;align-items:center;justify-content:center;margin-bottom:20px}.landing-feature-title{font-size:16px;font-weight:700;color:#e2e8f0;margin-bottom:10px;letter-spacing:-.01em}.landing-feature-desc{font-size:14px;line-height:1.65;color:#6a7a88}.landing-how{padding:100px 0;text-align:center;border-top:1px solid rgba(255,255,255,.04)}.landing-steps{display:flex;align-items:flex-start;justify-content:center;gap:24px;margin-top:56px}.landing-step{flex:1 1;max-width:300px;text-align:center}.landing-step-num{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#22d3ee,#0891b2);color:#050a0e;font-size:20px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;margin-bottom:20px}.landing-step-title{font-size:16px;font-weight:700;color:#e2e8f0;margin-bottom:10px}.landing-step-desc{font-size:14px;line-height:1.65;color:#6a7a88}.landing-step-arrow{color:rgba(255,255,255,.12);font-size:28px;margin-top:12px;flex-shrink:0}.landing-cta{padding:100px 0}.landing-cta-inner{position:relative;text-align:center;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.06);border-radius:24px;padding:72px 40px;overflow:hidden}.landing-cta-glow{position:absolute;top:-100px;left:50%;transform:translateX(-50%);width:500px;height:300px;background:radial-gradient(ellipse at center,rgba(34,211,238,.1) 0,transparent 60%);pointer-events:none}.landing-cta-title{font-size:clamp(28px,4vw,38px);font-weight:800;color:#f1f5f9;letter-spacing:-.03em;margin-bottom:14px;position:relative}.landing-cta-sub{font-size:16px;color:#6a7a88;margin-bottom:32px;position:relative}.landing-footer{border-top:1px solid rgba(255,255,255,.04);padding:64px 0 0}.landing-footer-inner{display:flex;justify-content:space-between;gap:60px}.landing-footer-brand{max-width:280px}.landing-footer-tagline{font-size:13px;color:#5a6a78;margin-top:12px;line-height:1.6}.landing-footer-links{display:flex;gap:64px}.landing-footer-col{display:flex;flex-direction:column;gap:10px}.landing-footer-heading{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#8899a6;margin-bottom:4px}.landing-footer-col a{font-size:13.5px;color:#5a6a78;transition:color .2s}.landing-footer-col a:hover{color:#22d3ee}.landing-footer-bottom{text-align:center;font-size:12.5px;color:#3a4a58;padding:32px 0;margin-top:48px;border-top:1px solid rgba(255,255,255,.04)}@media (max-width:768px){.landing-nav{display:none}.landing-features-grid{grid-template-columns:1fr}.landing-steps{flex-direction:column;align-items:center}.landing-step-arrow{transform:rotate(90deg);margin:0}.landing-footer-inner{flex-direction:column;gap:40px}.landing-footer-links{gap:40px;flex-wrap:wrap}.landing-hero-stats{flex-direction:column;gap:20px}.landing-stat-divider{width:40px;height:1px}}