:root{--bg: #0b0f14;--bg-panel: #10161d;--bg-panel-2: #141c24;--border: #212b35;--text: #e8edf2;--text-dim: #8b9aa8;--text-faint: #5b6b7a;--teal: #2dd4bf;--teal-dim: #1a3732;--blue: #3b82f6;--purple: #a855f7;--orange: #f59e0b;--red: #ef4444;--green: #22c55e;--radius: 10px;--font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;background:var(--bg);color:var(--text);font-family:var(--font)}a{color:inherit;text-decoration:none}button{font-family:var(--font);cursor:pointer}input,textarea,select{font-family:var(--font)}.app-shell{display:flex;height:100vh;overflow:hidden}.topbar{height:56px;border-bottom:1px solid var(--border);background:var(--bg-panel);display:flex;align-items:center;padding:0 20px;gap:24px;flex-shrink:0}.brand{display:flex;align-items:center;gap:8px;font-weight:800;font-size:16px;letter-spacing:-.02em;color:var(--text)}.brand-mark{width:22px;height:22px;border-radius:6px;background:linear-gradient(135deg,var(--teal),var(--blue));display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:900;color:#04201c}.nav-tabs{display:flex;gap:4px;flex:1}.nav-tab{padding:8px 14px;border-radius:7px;font-size:13.5px;font-weight:500;color:var(--text-dim);display:flex;align-items:center;gap:6px;transition:background .15s,color .15s}.nav-tab:hover{color:var(--text);background:#182029}.nav-tab.active{color:var(--teal);background:var(--teal-dim)}.topbar-search{background:var(--bg-panel-2);border:1px solid var(--border);border-radius:8px;padding:7px 12px;font-size:13px;color:var(--text-dim);width:260px}.topbar-avatar{width:30px;height:30px;border-radius:50%;background:var(--teal);color:#04201c;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px}.main-area{flex:1;display:flex;flex-direction:column;overflow:hidden}.page-scroll{flex:1;overflow-y:auto;padding:24px 28px 60px}.panel{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);padding:18px}.panel-title{font-size:14px;font-weight:600;color:var(--text);margin:0 0 14px;display:flex;justify-content:space-between;align-items:center}.page-header{margin-bottom:20px}.page-header h1{font-size:22px;margin:0 0 4px;font-weight:700}.page-header p{margin:0;color:var(--text-dim);font-size:13.5px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.stat-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.stat-label{color:var(--text-dim);font-size:12.5px;display:flex;align-items:center;gap:6px;margin-bottom:8px}.stat-value{font-size:26px;font-weight:700}.stat-delta{color:var(--green);font-size:12px;margin-left:8px;font-weight:600}.two-col{display:grid;grid-template-columns:1.4fr 1fr;gap:14px;margin-bottom:14px}.badge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:20px;font-size:11px;font-weight:600}.badge-blue{background:#152238;color:#7cb0ff}.badge-orange{background:#3a2a10;color:#f5b94c}.badge-purple{background:#2a1d3a;color:#c79bf5}.badge-teal{background:var(--teal-dim);color:var(--teal)}.badge-green{background:#122c1c;color:#4ade80}.badge-red{background:#3a1414;color:#f87171}.badge-gray{background:#1c242c;color:var(--text-dim)}.activity-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--border);font-size:13px}.activity-row:last-child{border-bottom:none}.avatar-dot{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0;color:#0b0f14}.fit-ring{font-weight:700;font-size:12.5px;color:var(--teal)}table.data-table{width:100%;border-collapse:collapse;font-size:13px}table.data-table th{text-align:left;color:var(--text-dim);font-weight:500;padding:8px 10px;border-bottom:1px solid var(--border);font-size:12px}table.data-table td{padding:10px;border-bottom:1px solid var(--border);vertical-align:middle}table.data-table tr:hover td{background:#121a22;cursor:pointer}.btn{border:1px solid var(--border);background:var(--bg-panel-2);color:var(--text);border-radius:7px;padding:7px 13px;font-size:12.5px;font-weight:600;display:inline-flex;align-items:center;gap:6px}.btn:hover{background:#1b242d}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--teal);border-color:var(--teal);color:#04201c}.btn-primary:hover{background:#26c3ae}.btn-danger{background:#2a1414;border-color:#4a1f1f;color:#f87171}.pill-skill{background:#182029;border:1px solid var(--border);border-radius:20px;padding:3px 10px;font-size:11.5px;color:var(--text-dim)}.funnel-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}.funnel-bar{height:34px;border-radius:6px;display:flex;align-items:center;padding:0 12px;font-weight:700;font-size:15px}.input,textarea.input{width:100%;background:var(--bg-panel-2);border:1px solid var(--border);border-radius:7px;padding:9px 11px;color:var(--text);font-size:13px}.input:focus,textarea.input:focus{outline:1px solid var(--teal)}.tag-filter{padding:5px 12px;border-radius:20px;font-size:12.5px;border:1px solid var(--border);color:var(--text-dim);background:var(--bg-panel-2)}.tag-filter.active{background:var(--teal-dim);color:var(--teal);border-color:var(--teal)}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.chat-bubble{background:var(--bg-panel-2);border:1px solid var(--border);border-radius:8px;padding:8px 11px;font-size:12.5px;margin-bottom:8px;max-width:85%}.chat-bubble.me{margin-left:auto;background:var(--teal-dim);border-color:#1f5a50}.toggle{width:36px;height:20px;border-radius:20px;background:var(--border);position:relative;display:inline-block;cursor:pointer;transition:background .15s}.toggle.on{background:var(--teal)}.toggle .knob{width:16px;height:16px;border-radius:50%;background:#fff;position:absolute;top:2px;left:2px;transition:left .15s}.toggle.on .knob{left:18px}.empty-note{color:var(--text-faint);font-size:12.5px;text-align:center;padding:24px}.alert{padding:10px 12px;border-radius:7px;font-size:12.5px;margin-bottom:10px}.alert-warn{background:#3a2a10;color:#f5b94c;border:1px solid #5a4010}.alert-error{background:#3a1414;color:#f87171;border:1px solid #5a1f1f}.alert-info{background:#10263a;color:#7cb0ff;border:1px solid #1f3f5a}.checkbox{width:15px;height:15px;accent-color:var(--teal)}
