*{margin:0;padding:0;box-sizing:border-box}:root{--bg:#06080f;--bg2:#0a0f1e;--card:#0c1220;--card2:#111827;--card3:#1a2332;--border:rgba(255,255,255,0.06);--border2:rgba(255,255,255,0.1);--text:#e2e8f0;--text2:#f8fafc;--muted:#64748b;--dim:#334155;--blue:#60a5fa;--green:#4ade80;--red:#f87171;--amber:#fbbf24;--purple:#a78bfa;--cyan:#22d3ee;--pink:#f472b6;--teal:#2dd4bf;--orange:#fb923c;--blue-bg:rgba(96,165,250,0.12);--green-bg:rgba(74,222,128,0.1);--red-bg:rgba(248,113,113,0.1);--amber-bg:rgba(251,191,36,0.1);--purple-bg:rgba(167,139,250,0.1);--cyan-bg:rgba(34,211,238,0.1)}body{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;overflow-x:hidden}button,a,.btn,.btn-primary,.btn-secondary,.btn-sm,.btn-ghost,.btn-ai,.nav-item,.auth-tab,.tour-step{touch-action:manipulation}a{color:var(--blue);text-decoration:none}input,select,textarea,button{font-family:inherit}.app{display:flex;min-height:100vh}.sidebar{width:260px;background:var(--card);border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:200;transition:transform 0.3s;contain:layout style paint}.sidebar-header{padding:20px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,rgba(59,130,246,0.06),transparent)}.sidebar-logo{display:flex;align-items:center;gap:12px}.sidebar-logo .icon{width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,#3b82f6,#06b6d4);display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:900;color:#fff;box-shadow:0 0 24px rgba(59,130,246,0.35);letter-spacing:-0.5px}.sidebar-logo h1{font-size:16px;font-weight:800;color:var(--text2);line-height:1.2;letter-spacing:-0.3px}.sidebar-logo .sub{font-size:9px;color:var(--blue);text-transform:uppercase;letter-spacing:1.5px;margin-top:3px;font-weight:600;opacity:0.8}.sidebar-nav{flex:1;padding:12px;overflow-y:auto}.nav-section{font-size:9px;text-transform:uppercase;letter-spacing:1.5px;color:var(--dim);padding:16px 12px 6px;font-weight:600}.nav-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;cursor:pointer;color:var(--muted);font-size:13px;font-weight:500;transition:all 0.15s;margin-bottom:2px}.nav-item:hover{background:rgba(255,255,255,0.04);color:var(--text)}.nav-item.active{background:rgba(59,130,246,0.12);color:var(--blue);font-weight:600}.nav-item .ni{font-size:16px;width:20px;text-align:center}.nav-item .badge{margin-left:auto;background:var(--blue);color:#fff;font-size:10px;padding:2px 7px;border-radius:10px;font-weight:700}.sidebar-footer{padding:16px;border-top:1px solid var(--border)}.user-info{display:flex;align-items:center;gap:10px}.user-avatar{width:34px;height:34px;border-radius:8px;background:linear-gradient(135deg,var(--purple),var(--blue));display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#fff}.user-name{font-size:12px;font-weight:600;color:var(--text)}.user-role{font-size:10px;color:var(--muted);text-transform:capitalize}.btn-logout{margin-top:10px;width:100%;padding:7px;border-radius:6px;border:1px solid var(--border2);background:transparent;color:var(--muted);font-size:11px;cursor:pointer;transition:all 0.15s}.btn-logout:hover{background:rgba(248,113,113,0.1);color:var(--red);border-color:rgba(248,113,113,0.3)}.main{flex:1;margin-left:260px;min-height:100vh}.topbar{display:flex;align-items:center;justify-content:space-between;padding:16px 28px;border-bottom:1px solid var(--border);background:rgba(12,18,32,0.95);backdrop-filter:blur(20px);position:sticky;top:0;z-index:100}.topbar h2{font-size:17px;font-weight:800;color:var(--text2);letter-spacing:-0.2px}.topbar-right{display:flex;align-items:center;gap:14px}.hamburger{display:none;background:none;border:none;color:var(--text);font-size:22px;cursor:pointer;padding:4px 8px}.sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:150}.content{padding:24px 28px}.view{display:none;animation:fadeIn 0.25s ease}.view.active{display:block;contain:layout style paint}@keyframes fadeIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.auth-wrapper{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--bg)}.auth-card{width:440px;max-width:95vw;background:var(--card);border:1px solid var(--border2);border-radius:16px;overflow:hidden}.auth-header{padding:32px 32px 0;text-align:center}.auth-header .logo-big{width:64px;height:64px;border-radius:16px;background:linear-gradient(135deg,#3b82f6,#06b6d4);display:inline-flex;align-items:center;justify-content:center;font-size:24px;font-weight:900;color:#fff;margin-bottom:18px;box-shadow:0 0 40px rgba(59,130,246,0.35),0 0 80px rgba(6,182,212,0.15);letter-spacing:-0.5px}.auth-header h1{font-size:24px;font-weight:800;color:var(--text2);letter-spacing:-0.3px}.auth-header p{font-size:14px;color:var(--muted);margin-top:8px;line-height:1.5}.auth-tabs{display:flex;margin:24px 32px 0;border-bottom:1px solid var(--border)}.auth-tab{flex:1;padding:10px;text-align:center;font-size:13px;font-weight:600;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;transition:all 0.15s}.auth-tab.active{color:var(--blue);border-color:var(--blue)}.auth-body{padding:24px 32px 32px}.auth-body .field{margin-bottom:16px}.auth-body .field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{margin-bottom:16px}.field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin-bottom:16px}.field-row .field{margin-bottom:0}.field label{display:block;font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:0.8px;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;padding:10px 14px;background:var(--bg2);border:1px solid var(--border2);border-radius:8px;color:var(--text);font-size:13px;transition:border-color 0.15s;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--blue)}.field textarea{resize:vertical;min-height:80px}.field select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.field .hint{font-size:11px;color:var(--dim);margin-top:4px}.field-inline{display:flex;align-items:center;gap:8px}.multi-select{display:flex;flex-wrap:wrap;gap:6px;padding:8px;background:var(--bg2);border:1px solid var(--border2);border-radius:8px;min-height:42px}.multi-select .chip{display:flex;align-items:center;gap:4px;padding:4px 10px;background:var(--blue-bg);border:1px solid rgba(96,165,250,0.3);border-radius:6px;font-size:11px;color:var(--blue);font-weight:500}.multi-select .chip .remove{cursor:pointer;font-size:14px;line-height:1;opacity:0.7}.multi-select .chip .remove:hover{opacity:1}.multi-select input{border:none;background:none;outline:none;color:var(--text);font-size:12px;flex:1;min-width:100px;padding:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;border:none;transition:all 0.15s}.btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 2px 10px rgba(59,130,246,0.3)}.btn-primary:hover{box-shadow:0 4px 16px rgba(59,130,246,0.4);transform:translateY(-1px)}.btn-secondary{background:var(--card3);color:var(--text);border:1px solid var(--border2)}.btn-secondary:hover{background:rgba(255,255,255,0.08)}.btn-success{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff}.btn-danger{background:rgba(248,113,113,0.15);color:var(--red);border:1px solid rgba(248,113,113,0.3)}.btn-ghost{background:transparent;color:var(--muted);padding:8px 12px}.btn-ghost:hover{color:var(--text);background:rgba(255,255,255,0.04)}.btn-sm{padding:6px 14px;font-size:12px}.btn-ai{background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff;box-shadow:0 2px 10px rgba(139,92,246,0.3)}.btn-ai:hover{box-shadow:0 4px 16px rgba(139,92,246,0.4)}.btn:disabled{opacity:0.5;cursor:not-allowed;transform:none !important}.btn .spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,0.3);border-top-color:#fff;border-radius:50%;animation:spin 0.6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stat-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:22px;contain:layout style paint}.stat-card .stat-label{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:10px}.stat-card .stat-value{font-size:30px;font-weight:800;color:var(--text2);line-height:1;letter-spacing:-0.5px}.stat-card .stat-sub{font-size:11px;color:var(--muted);margin-top:6px;display:flex;align-items:center;gap:4px}.stat-card .stat-icon{font-size:20px;float:right;margin-top:-4px}.stat-card.blue{border-color:rgba(96,165,250,0.2);background:linear-gradient(135deg,var(--card),rgba(96,165,250,0.05))}.stat-card.green{border-color:rgba(74,222,128,0.2);background:linear-gradient(135deg,var(--card),rgba(74,222,128,0.05))}.stat-card.amber{border-color:rgba(251,191,36,0.2);background:linear-gradient(135deg,var(--card),rgba(251,191,36,0.05))}.stat-card.purple{border-color:rgba(167,139,250,0.2);background:linear-gradient(135deg,var(--card),rgba(167,139,250,0.05))}.table-card{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden;contain:layout style paint}.table-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.table-header h3{font-size:14px;font-weight:700;color:var(--text2)}.table-filters{display:flex;gap:10px;align-items:center}.table-filters select,.table-filters input{padding:6px 12px;background:var(--bg2);border:1px solid var(--border2);border-radius:6px;color:var(--text);font-size:12px;outline:none}.table-filters input{width:200px}table{width:100%;border-collapse:collapse}thead th{padding:10px 16px;text-align:left;font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:0.8px;border-bottom:1px solid var(--border);background:rgba(0,0,0,0.2);cursor:pointer;user-select:none;white-space:nowrap}thead th:hover{color:var(--text)}tbody tr{border-bottom:1px solid var(--border);transition:background 0.1s;cursor:pointer}tbody tr:hover{background:rgba(255,255,255,0.02)}tbody td{padding:12px 16px;font-size:13px;white-space:nowrap}.td-wrap{white-space:normal;max-width:250px}.badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:6px;font-size:11px;font-weight:600;text-transform:capitalize}.badge-active,.badge-open{background:var(--blue-bg);color:var(--blue);border:1px solid rgba(96,165,250,0.3)}.badge-draft{background:rgba(100,116,139,0.15);color:var(--muted);border:1px solid rgba(100,116,139,0.3)}.badge-evaluating,.badge-pending,.badge-submitted{background:var(--amber-bg);color:var(--amber);border:1px solid rgba(251,191,36,0.3)}.badge-awarded,.badge-accepted,.badge-won,.badge-delivered{background:var(--green-bg);color:var(--green);border:1px solid rgba(74,222,128,0.3)}.badge-closed,.badge-rejected,.badge-lost,.badge-expired{background:var(--red-bg);color:var(--red);border:1px solid rgba(248,113,113,0.3)}.badge-cancelled{background:rgba(100,116,139,0.1);color:#94a3b8;border:1px solid rgba(100,116,139,0.2)}.badge-verified{background:var(--green-bg);color:var(--green);border:1px solid rgba(74,222,128,0.3)}.pdca-badge-wrap{display:inline-flex;flex-direction:column;align-items:center;gap:2px}.pdca-phase-tag{font-size:9px;font-weight:700;letter-spacing:0.5px;text-transform:uppercase;color:var(--muted);opacity:0.8}.panel{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:20px;margin-bottom:20px;contain:layout style paint}.panel h3{font-size:14px;font-weight:700;color:var(--text2);margin-bottom:14px;display:flex;align-items:center;gap:8px}.panel-ai{border-color:rgba(139,92,246,0.2);background:linear-gradient(135deg,var(--card),rgba(139,92,246,0.04))}.section{margin-bottom:44px}.section h3{font-size:14px;font-weight:700;color:var(--text2);margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid var(--border)}.section-num{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;background:var(--blue-bg);color:var(--blue);font-size:11px;font-weight:700;margin-right:8px}.pagination{display:flex;align-items:center;justify-content:center;gap:4px;padding:16px}.pagination button{padding:6px 12px;border-radius:6px;border:1px solid var(--border);background:var(--card);color:var(--muted);font-size:12px;cursor:pointer;transition:all 0.1s}.pagination button:hover{background:var(--card3);color:var(--text)}.pagination button.active{background:var(--blue);color:#fff;border-color:var(--blue)}.pagination button:disabled{opacity:0.3;cursor:not-allowed}.toast-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:8px}.toast{padding:12px 20px;border-radius:10px;font-size:13px;font-weight:500;display:flex;align-items:center;gap:10px;animation:slideIn 0.3s ease;min-width:280px;box-shadow:0 8px 30px rgba(0,0,0,0.4)}.toast-success{background:#065f46;color:#6ee7b7;border:1px solid rgba(110,231,183,0.3)}.toast-error{background:#7f1d1d;color:#fca5a5;border:1px solid rgba(252,165,165,0.3)}.toast-info{background:#1e3a5f;color:#93c5fd;border:1px solid rgba(147,197,253,0.3)}@keyframes slideIn{from{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}.dialog-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.6);display:flex;align-items:center;justify-content:center;z-index:9000;animation:fadeIn 0.15s;contain:layout style}.dialog{background:var(--card);border:1px solid var(--border2);border-radius:14px;padding:28px;max-width:420px;width:90vw}.dialog h3{font-size:16px;font-weight:700;color:var(--text2);margin-bottom:10px}.dialog p{font-size:13px;color:var(--muted);margin-bottom:20px;line-height:1.5}.dialog-actions{display:flex;justify-content:flex-end;gap:10px}.kv-rows{display:flex;flex-direction:column;gap:8px}.kv-row{display:flex;gap:8px;align-items:center}.kv-row input{flex:1}.kv-row .btn-remove{padding:8px;color:var(--red);background:none;border:none;cursor:pointer;font-size:16px}.supplier-match{display:flex;align-items:center;gap:14px;padding:14px;background:var(--bg2);border:1px solid var(--border);border-radius:10px;margin-bottom:8px}.supplier-match .score{font-size:20px;font-weight:800;color:var(--green);min-width:50px;text-align:center}.supplier-match .info{flex:1}.supplier-match .info h4{font-size:13px;font-weight:600;color:var(--text2)}.supplier-match .info p{font-size:11px;color:var(--muted)}.supplier-match input[type=checkbox]{width:18px;height:18px;accent-color:var(--blue)}.best-cell{background:rgba(74,222,128,0.08);color:var(--green);font-weight:700}.ai-panel{background:linear-gradient(135deg,rgba(139,92,246,0.08),rgba(99,102,241,0.05));border:1px solid rgba(139,92,246,0.2);border-radius:12px;padding:20px;margin-top:16px}.ai-panel h4{font-size:13px;font-weight:700;color:var(--purple);margin-bottom:10px;display:flex;align-items:center;gap:6px}.ai-panel ul{list-style:none;padding:0}.ai-panel li{font-size:12px;color:var(--text);padding:6px 0;border-bottom:1px solid rgba(139,92,246,0.1);display:flex;align-items:flex-start;gap:8px}.ai-panel li:last-child{border:none}.empty-state{text-align:center;padding:48px 20px;color:var(--muted)}.empty-state .icon{font-size:48px;margin-bottom:16px;opacity:0.4}.empty-state h3{font-size:16px;color:var(--text);margin-bottom:8px}.empty-state p{font-size:13px;max-width:360px;margin:0 auto 20px;line-height:1.5}.loading-full{display:flex;align-items:center;justify-content:center;padding:60px;flex-direction:column;gap:16px}.loading-full .spinner-lg{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--blue);border-radius:50%;animation:spin 0.8s linear infinite}.loading-full p{font-size:13px;color:var(--muted)}.hero-banner{background:linear-gradient(135deg,rgba(59,130,246,0.12),rgba(6,182,212,0.08),rgba(139,92,246,0.06));border:1px solid rgba(96,165,250,0.15);border-radius:16px;padding:32px 36px;margin-bottom:28px;position:relative;overflow:hidden}.hero-banner::before{content:'';position:absolute;top:-60%;right:-10%;width:340px;height:340px;background:radial-gradient(circle,rgba(59,130,246,0.08) 0%,transparent 70%);pointer-events:none}.hero-banner::after{content:'';position:absolute;bottom:-40%;left:-5%;width:240px;height:240px;background:radial-gradient(circle,rgba(6,182,212,0.06) 0%,transparent 70%);pointer-events:none}.hero-banner .hero-logo{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#3b82f6,#06b6d4);display:inline-flex;align-items:center;justify-content:center;font-size:20px;font-weight:900;color:#fff;box-shadow:0 0 30px rgba(59,130,246,0.25);margin-bottom:16px}.hero-banner h2{font-size:24px;font-weight:800;color:var(--text2);margin-bottom:6px;letter-spacing:-0.3px}.hero-banner .hero-sub{font-size:14px;color:var(--muted);margin-bottom:20px;line-height:1.6}.hero-banner .hero-stats{display:flex;gap:24px;flex-wrap:wrap}.hero-banner .hero-stat{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text);font-weight:500}.hero-banner .hero-stat .hs-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:15px}.hero-banner .hero-stat .hs-icon.blue{background:var(--blue-bg);color:var(--blue)}.hero-banner .hero-stat .hs-icon.green{background:var(--green-bg);color:var(--green)}.hero-banner .hero-stat .hs-icon.purple{background:var(--purple-bg);color:var(--purple)}.onboarding-tour{background:var(--card);border:1px solid var(--border2);border-radius:16px;padding:28px 32px;margin-bottom:28px;position:relative}.onboarding-tour .tour-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.onboarding-tour .tour-header h3{font-size:16px;font-weight:700;color:var(--text2);display:flex;align-items:center;gap:10px}.onboarding-tour .tour-header h3 .tour-icon{width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,rgba(139,92,246,0.15),rgba(99,102,241,0.1));display:flex;align-items:center;justify-content:center;font-size:14px}.onboarding-tour .tour-dismiss{background:none;border:none;color:var(--muted);cursor:pointer;font-size:11px;padding:4px 10px;border-radius:6px;transition:all 0.15s}.onboarding-tour .tour-dismiss:hover{background:rgba(255,255,255,0.06);color:var(--text)}.onboarding-tour .tour-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.tour-step{background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:20px;text-align:center;transition:all 0.2s;cursor:pointer;position:relative}.tour-step:hover{border-color:rgba(96,165,250,0.3);background:rgba(96,165,250,0.04);transform:translateY(-2px)}.tour-step.completed{border-color:rgba(74,222,128,0.3);background:rgba(74,222,128,0.04)}.tour-step .step-num{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;margin-bottom:12px;box-shadow:0 2px 8px rgba(59,130,246,0.3)}.tour-step.completed .step-num{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 2px 8px rgba(34,197,94,0.3)}.tour-step .step-title{font-size:13px;font-weight:700;color:var(--text2);margin-bottom:6px}.tour-step .step-desc{font-size:11px;color:var(--muted);line-height:1.5}.tour-step .step-arrow{position:absolute;right:-12px;top:50%;transform:translateY(-50%);color:var(--dim);font-size:14px}.tour-progress{display:flex;gap:6px;margin-top:16px;justify-content:center}.tour-progress .tp-dot{width:8px;height:8px;border-radius:50%;background:var(--dim);transition:all 0.2s}.tour-progress .tp-dot.done{background:var(--green)}.tour-progress .tp-dot.current{background:var(--blue);box-shadow:0 0 8px rgba(96,165,250,0.4)}.landing-wrapper{min-height:100vh;background:var(--bg);overflow-x:hidden}.landing-hero{text-align:center;padding:60px 24px 40px;position:relative;overflow:hidden}.landing-hero::before{content:'';position:absolute;top:-30%;left:50%;transform:translateX(-50%);width:800px;height:800px;background:radial-gradient(circle,rgba(59,130,246,0.1) 0%,rgba(6,182,212,0.05) 40%,transparent 70%);pointer-events:none}.landing-hero .lh-logo{width:72px;height:72px;border-radius:18px;background:linear-gradient(135deg,#3b82f6,#06b6d4);display:inline-flex;align-items:center;justify-content:center;font-size:28px;font-weight:900;color:#fff;margin-bottom:20px;box-shadow:0 0 50px rgba(59,130,246,0.4),0 0 100px rgba(6,182,212,0.15);position:relative}.landing-hero h1{font-size:36px;font-weight:900;color:var(--text2);letter-spacing:-0.5px;margin-bottom:10px}.landing-hero .lh-sub{font-size:16px;color:var(--muted);max-width:560px;margin:0 auto 36px;line-height:1.6}.landing-counters{display:flex;justify-content:center;gap:32px;flex-wrap:wrap;margin-bottom:40px}.landing-counter{text-align:center;min-width:110px}.landing-counter .lc-num{font-size:36px;font-weight:900;letter-spacing:-1px;line-height:1}.landing-counter .lc-num.blue{color:var(--blue)}.landing-counter .lc-num.green{color:var(--green)}.landing-counter .lc-num.amber{color:var(--amber)}.landing-counter .lc-num.purple{color:var(--purple)}.landing-counter .lc-num.cyan{color:var(--cyan)}.landing-counter .lc-label{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin-top:6px}.landing-sections{max-width:960px;margin:0 auto;padding:0 24px 40px}.landing-row{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}.landing-panel{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:24px;position:relative;overflow:hidden;contain:content}.landing-panel h3{font-size:15px;font-weight:700;color:var(--text2);margin-bottom:14px;display:flex;align-items:center;gap:8px}.landing-panel h3 .lp-icon{font-size:18px}.landing-cat-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.landing-cat{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--bg2);border:1px solid var(--border);border-radius:8px;font-size:12px;color:var(--text)}.landing-cat .lcat-count{font-weight:700;color:var(--blue);font-size:13px}.landing-rfq{padding:10px 0;border-bottom:1px solid var(--border);font-size:12px;display:flex;justify-content:space-between;align-items:center}.landing-rfq:last-child{border:none}.landing-rfq .lr-title{color:var(--text);font-weight:500}.landing-rfq .lr-cat{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:0.5px;padding:3px 8px;background:var(--bg2);border-radius:4px}.landing-ai-demo{background:linear-gradient(135deg,rgba(139,92,246,0.08),rgba(99,102,241,0.04));border:1px solid rgba(139,92,246,0.15);border-radius:14px;padding:24px;max-width:960px;margin:0 auto 40px;text-align:center}.landing-ai-demo h3{font-size:15px;font-weight:700;color:var(--purple);margin-bottom:6px}.landing-ai-demo p{font-size:12px;color:var(--muted);margin-bottom:16px}.landing-ai-scores{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.landing-ai-score{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:14px 20px;min-width:140px;text-align:center}.landing-ai-score .las-val{font-size:24px;font-weight:800;color:var(--green);line-height:1}.landing-ai-score .las-label{font-size:10px;color:var(--muted);margin-top:4px;text-transform:uppercase;letter-spacing:0.5px}.landing-ai-score .las-sub{font-size:11px;color:var(--text);margin-top:6px}.landing-cta{text-align:center;padding:0 24px 60px;max-width:960px;margin:0 auto}.landing-cta h2{font-size:22px;font-weight:800;color:var(--text2);margin-bottom:8px}.landing-cta p{font-size:13px;color:var(--muted);margin-bottom:20px}.landing-cta .btn{padding:14px 40px;font-size:15px}@media(max-width:1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}.onboarding-tour .tour-steps{grid-template-columns:1fr}.landing-row{grid-template-columns:1fr}.landing-cat-grid{grid-template-columns:1fr 1fr}}@media(max-width:768px){.sidebar{transform:translateX(-100%)}.sidebar.open{transform:translateX(0)}.sidebar-overlay.active{display:block}.main{margin-left:0}.hamburger{display:block}.stats-grid{grid-template-columns:1fr 1fr}.content{padding:16px}.field-row{grid-template-columns:1fr !important}.table-filters{flex-wrap:wrap}.hero-banner{padding:24px 20px}.hero-banner h2{font-size:20px}.hero-banner .hero-stats{flex-direction:column;gap:12px}.landing-hero h1{font-size:26px}.landing-counters{gap:16px}.landing-counter .lc-num{font-size:28px}.landing-ai-scores{flex-direction:column;align-items:center}.ad-tiers-grid{grid-template-columns:1fr 1fr !important}.ad-roi-grid{grid-template-columns:1fr 1fr 1fr !important}input,select,textarea,.field input,.field select,.field textarea,.table-filters input,.table-filters select,.multi-select input{font-size:16px !important}.btn-sm,.btn,.btn-ghost,.btn-logout{min-height:44px;min-width:44px}.btn-sm,.btn,.btn-ghost{padding:10px 16px}.nav-item{min-height:44px;padding:12px 16px}.table-card{overflow-x:auto;-webkit-overflow-scrolling:touch}.sup-detail-card{width:96%;max-width:100%}body{font-size:14px}label,.hint,.field label{font-size:13px}tbody td,thead th{font-size:13px}input[type=checkbox]{width:24px;height:24px;min-width:24px}.table-filters{flex-direction:column}.table-filters input,.table-filters select{width:100%;max-width:100%}}@media(max-width:480px){.stats-grid{grid-template-columns:1fr}.ad-tiers-grid{grid-template-columns:1fr !important}.ad-roi-grid{grid-template-columns:1fr !important}.content{padding:12px !important}.table-header{padding:12px 14px;flex-direction:column;align-items:flex-start;gap:10px}tbody td{font-size:12px;padding:8px 10px}thead th{font-size:9px;padding:8px 10px}.stat-card{padding:14px}.stat-card .value{font-size:20px}.sup-detail-card{width:98vw;max-width:98vw;padding:12px;border-radius:10px}.sup-detail-header{padding:16px 16px 0}.sup-detail-body{padding:14px 16px 16px}.sup-detail-stat-row{grid-template-columns:1fr}.field-row,.auth-body .field-row{grid-template-columns:1fr !important;gap:8px}}#supplier-detail-modal{position:fixed;inset:0;background:rgba(0,0,0,0.65);display:none;align-items:center;justify-content:center;z-index:9000;animation:fadeIn 0.15s}#supplier-detail-modal.open{display:flex}.sup-detail-card{background:var(--card);border:1px solid var(--border2);border-radius:16px;width:560px;max-width:95vw;max-height:90vh;overflow-y:auto}.sup-detail-header{padding:24px 24px 0;display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.sup-detail-body{padding:20px 24px 24px}.sup-detail-stat-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.sup-detail-stat{background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:12px 14px}.sup-detail-stat .sds-label{font-size:10px;text-transform:uppercase;letter-spacing:0.8px;color:var(--muted);font-weight:600}.sup-detail-stat .sds-val{font-size:18px;font-weight:700;color:var(--text2);margin-top:4px}.sup-ratings-list{margin-top:12px;display:flex;flex-direction:column;gap:8px}.sup-rating-item{background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:12px 14px}.sup-rating-item .sri-stars{color:var(--amber);letter-spacing:1px;font-size:15px}.sup-rating-item .sri-comment{font-size:12px;color:var(--muted);margin-top:6px;line-height:1.5}.sup-rating-item .sri-meta{font-size:10px;color:var(--dim);margin-top:4px}.u-style-1{font-size:14px;font-weight:600;color:#e2e8f4;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px;user-select:none;}.u-style-2{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;}.u-style-3{font-size:13px;color:#64748b;line-height:1.7;max-height:0;overflow:hidden;transition:max-height 0.3s ease,padding-top 0.3s ease;}.u-style-4{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#06b6d4);color:#fff;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;}.u-style-5{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#fbbf24,#f97316);color:#000;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;}.u-style-6{font-weight:400;font-size:11px;color:var(--muted);}.u-style-7{font-size:20px;color:#3b82f6;font-weight:300;flex-shrink:0;transition:transform 0.2s;}.u-style-8{background:none;border:none;color:var(--muted);cursor:pointer;font-size:22px;line-height:1;padding:4px;}

/* Claim Listing UI */
.claim-banner{background:linear-gradient(135deg,rgba(96,165,250,0.15),rgba(74,222,128,0.12));border:1px solid rgba(96,165,250,0.3);border-radius:10px;padding:16px;margin-bottom:16px;text-align:center}
.claim-banner p{color:var(--text);font-size:13px;line-height:1.5;margin:0 0 12px}
.claim-banner .btn-claim{background:linear-gradient(135deg,#3b82f6,#10b981);color:#fff;border:none;padding:10px 24px;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;transition:transform 0.15s,box-shadow 0.15s;letter-spacing:0.3px}
.claim-banner .btn-claim:hover{transform:translateY(-1px);box-shadow:0 4px 16px rgba(59,130,246,0.35)}
.claim-banner .btn-claim:disabled{opacity:0.5;cursor:not-allowed;transform:none;box-shadow:none}
.verified-badge{display:inline-flex;align-items:center;gap:4px;background:var(--green-bg);border:1px solid rgba(74,222,128,0.25);color:var(--green);font-size:11px;font-weight:700;padding:3px 10px;border-radius:10px;letter-spacing:0.5px}
.source-badge{display:inline-flex;align-items:center;gap:4px;background:rgba(255,255,255,0.04);border:1px solid var(--border);color:var(--muted);font-size:10px;font-weight:600;padding:3px 8px;border-radius:6px;letter-spacing:0.3px}
.sdm-info-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:6px;font-size:12px;color:var(--muted)}
.sdm-info-row a{color:var(--blue);text-decoration:none}.sdm-info-row a:hover{text-decoration:underline}
.sdm-description{font-size:13px;color:var(--text);line-height:1.55;margin-bottom:16px;padding:12px;background:var(--bg2);border:1px solid var(--border);border-radius:8px}
#claim-request-modal{position:fixed;inset:0;background:rgba(0,0,0,0.65);display:none;align-items:center;justify-content:center;z-index:9100;animation:fadeIn 0.15s}
#claim-request-modal.open{display:flex}
.claim-dialog{background:var(--card);border:1px solid var(--border2);border-radius:14px;padding:28px;max-width:440px;width:92vw}
.claim-dialog h3{font-size:16px;font-weight:700;color:var(--text2);margin-bottom:6px}
.claim-dialog .claim-sub{font-size:12px;color:var(--muted);margin-bottom:20px;line-height:1.5}
.claim-dialog .field{margin-bottom:14px}
.claim-dialog .field label{display:block;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:0.8px;margin-bottom:6px}
.claim-dialog .field input{width:100%;padding:10px 12px;background:var(--bg2);border:1px solid var(--border2);border-radius:8px;color:var(--text);font-size:13px;outline:none;box-sizing:border-box}
.claim-dialog .field input:focus{border-color:rgba(96,165,250,0.4)}
.claim-dialog .claim-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
.claim-success{text-align:center;padding:20px 0}
.claim-success .icon{font-size:48px;margin-bottom:12px}
.claim-success h4{font-size:15px;font-weight:700;color:var(--text2);margin-bottom:8px}
.claim-success p{font-size:13px;color:var(--muted);line-height:1.5}
#claim-complete-view{position:fixed;inset:0;background:var(--bg);display:none;align-items:center;justify-content:center;z-index:9200;flex-direction:column}
#claim-complete-view.open{display:flex}
.claim-complete-card{background:var(--card);border:1px solid var(--border2);border-radius:16px;padding:32px;max-width:420px;width:92vw;text-align:center}
.claim-complete-card h2{font-size:18px;font-weight:800;color:var(--text2);margin-bottom:8px}
.claim-complete-card .cc-sub{font-size:13px;color:var(--muted);margin-bottom:24px;line-height:1.5}
.claim-complete-card .field{margin-bottom:14px;text-align:left}
.claim-complete-card .field label{display:block;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:0.8px;margin-bottom:6px}
.claim-complete-card .field input{width:100%;padding:10px 12px;background:var(--bg2);border:1px solid var(--border2);border-radius:8px;color:var(--text);font-size:13px;outline:none;box-sizing:border-box}
.claim-complete-card .field input:focus{border-color:rgba(96,165,250,0.4)}
.claim-complete-card .cc-error{color:var(--red);font-size:12px;margin-top:8px;display:none}

.epd-faq-item.open .epd-faq-icon{transform:rotate(45deg)}.epd-faq-item.open .epd-faq-a{max-height:200px!important;padding-top:10px!important}