@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-card: #1e293b;--bg-card-hover: #263548;--bg-input: #334155;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-muted: #64748b;--accent: #38bdf8;--accent-hover: #0ea5e9;--accent-glow: rgba(56, 189, 248, .15);--success: #22c55e;--danger: #ef4444;--danger-hover: #dc2626;--warning: #f59e0b;--border: #334155;--border-light: #475569;--radius: 12px;--radius-sm: 8px;--shadow: 0 4px 24px rgba(0, 0, 0, .3);--transition: .2s cubic-bezier(.4, 0, .2, 1)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,system-ui,-apple-system,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}.container{max-width:1100px;margin:0 auto;padding:0 24px}.page-header{padding:32px 0 24px;border-bottom:1px solid var(--border);margin-bottom:32px}.page-header h1{font-size:1.75rem;font-weight:700;background:linear-gradient(135deg,var(--accent),#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.page-header p{color:var(--text-secondary);margin-top:4px}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:var(--radius-sm);font-family:inherit;font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition);white-space:nowrap}.btn-primary{background:linear-gradient(135deg,var(--accent),#0ea5e9);color:#0f172a;box-shadow:0 0 20px var(--accent-glow)}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 0 30px var(--accent-glow)}.btn-secondary{background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{background:var(--bg-card-hover);border-color:var(--border-light)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:var(--danger-hover)}.btn-sm{padding:6px 12px;font-size:.8rem}.btn-icon{padding:6px 10px;font-size:1rem}.btn:disabled{opacity:.4;cursor:not-allowed}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px;transition:all var(--transition)}.card:hover{border-color:var(--border-light)}.card-glass{background:#1e293b99;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(148,163,184,.1)}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:.8rem;font-weight:500;color:var(--text-secondary);margin-bottom:6px;text-transform:uppercase;letter-spacing:.05em}.form-input,.form-select,.form-textarea{width:100%;padding:10px 14px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-family:inherit;font-size:.9rem;transition:border-color var(--transition);outline:none}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.form-textarea{resize:vertical;min-height:80px}.form-select{cursor:pointer}.form-row{display:flex;gap:12px}.form-row>*{flex:1}.form-actions{display:flex;gap:8px;margin-top:16px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--border)}th{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}tr:hover td{background:var(--bg-card-hover)}td .actions{display:flex;gap:6px}.badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:20px;font-size:.75rem;font-weight:500}.badge-accent{background:var(--accent-glow);color:var(--accent)}.badge-success{background:#22c55e26;color:var(--success)}.badge-warning{background:#f59e0b26;color:var(--warning)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .15s ease}.modal{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);padding:28px;min-width:400px;max-width:560px;max-height:80vh;overflow-y:auto;box-shadow:var(--shadow);animation:slideUp .2s ease}.modal h2{font-size:1.2rem;margin-bottom:20px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.home-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;text-align:center;padding:24px}.home-page h1{font-size:2.5rem;font-weight:700;background:linear-gradient(135deg,var(--accent),#a78bfa,#f472b6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:12px}.home-page p{color:var(--text-secondary);font-size:1.1rem;margin-bottom:40px}.home-buttons{display:flex;gap:20px}.home-btn{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px 48px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-family:inherit;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all var(--transition);text-decoration:none;min-width:220px}.home-btn:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 8px 32px #38bdf826}.home-btn .icon{font-size:2.5rem}.home-btn span:last-child{font-size:.85rem;color:var(--text-secondary);font-weight:400}.expert-layout{display:flex;min-height:100vh}.expert-sidebar{width:220px;background:var(--bg-secondary);border-right:1px solid var(--border);padding:24px 0;position:fixed;height:100vh;overflow-y:auto}.expert-sidebar h2{font-size:.9rem;color:var(--text-muted);padding:0 20px;margin-bottom:16px;text-transform:uppercase;letter-spacing:.05em}.expert-sidebar a{display:block;padding:10px 20px;color:var(--text-secondary);font-size:.9rem;transition:all var(--transition);border-left:3px solid transparent}.expert-sidebar a:hover,.expert-sidebar a.active{color:var(--text-primary);background:#38bdf80d;border-left-color:var(--accent)}.expert-content{flex:1;margin-left:220px;padding:32px}.survey-page{max-width:640px;margin:0 auto;padding:60px 24px}.survey-progress{height:4px;background:var(--bg-input);border-radius:2px;margin-bottom:40px;overflow:hidden}.survey-progress-bar{height:100%;background:linear-gradient(90deg,var(--accent),#a78bfa);border-radius:2px;transition:width .3s ease}.survey-question h2{font-size:1.4rem;margin-bottom:28px}.survey-option{display:block;width:100%;padding:16px 20px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-family:inherit;font-size:1rem;text-align:left;cursor:pointer;margin-bottom:10px;transition:all var(--transition)}.survey-option:hover{border-color:var(--accent);background:var(--bg-card-hover)}.survey-option.selected{border-color:var(--accent);background:var(--accent-glow);box-shadow:0 0 0 2px var(--accent-glow)}.survey-actions{margin-top:28px;display:flex;justify-content:flex-end}.results-page{max-width:720px;margin:0 auto;padding:60px 24px}.results-page h1{text-align:center;margin-bottom:8px;font-size:2rem}.results-page>p{text-align:center;color:var(--text-secondary);margin-bottom:40px}.results-section{margin-bottom:40px}.results-section h2{font-size:1.1rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:16px}.factor-chip{display:inline-flex;padding:8px 16px;background:var(--accent-glow);border:1px solid rgba(56,189,248,.2);border-radius:24px;color:var(--accent);font-size:.9rem;margin:0 8px 8px 0}.supplement-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:12px;transition:all var(--transition)}.supplement-card:hover{border-color:var(--border-light)}.supplement-card h3{font-size:1.1rem;margin-bottom:6px}.supplement-card .desc{color:var(--text-secondary);font-size:.9rem;margin-bottom:10px}.supplement-card .reason{font-size:.8rem;color:var(--text-muted);margin-bottom:12px}.supplement-card .buy-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 20px;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border-radius:var(--radius-sm);font-weight:500;font-size:.85rem;transition:all var(--transition)}.supplement-card .buy-btn:hover{transform:translateY(-1px);box-shadow:0 4px 16px #22c55e4d}.empty-state{text-align:center;padding:60px 20px;color:var(--text-muted)}.empty-state .icon{font-size:3rem;margin-bottom:12px}.error-msg{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:var(--danger);padding:12px 16px;border-radius:var(--radius-sm);font-size:.875rem;margin-bottom:16px}.weight-editor{margin-top:8px}.weight-item{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:.85rem}.weight-item input[type=number]{width:64px;padding:4px 8px;background:var(--bg-input);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);font-family:inherit;text-align:center}.flex-between{display:flex;justify-content:space-between;align-items:center}.mb-16{margin-bottom:16px}.mb-8{margin-bottom:8px}.mt-8{margin-top:8px}.text-sm{font-size:.85rem}.text-muted{color:var(--text-muted)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border-light)}
