:root {
  color-scheme: dark;
  --bg: #0b0e13;
  --panel: rgba(20, 25, 34, .86);
  --line: rgba(255,255,255,.085);
  --line-strong: rgba(255,255,255,.15);
  --text: #f4f5f7;
  --muted: #8e98a8;
  --accent: #b9ff6a;
  --accent-2: #75d5ff;
  --radius: 18px;
}

:root[data-theme="light"] {
  color-scheme: light;
  --bg: #f4f5f0;
  --panel: rgba(255, 255, 252, .9);
  --line: rgba(23, 32, 43, .1);
  --line-strong: rgba(23, 32, 43, .17);
  --text: #1a2028;
  --muted: #687383;
  --accent: #5d8f18;
  --accent-2: #167da8;
}

* { box-sizing: border-box; }
html { background: var(--bg); }
body {
  margin: 0; min-height: 100vh; color: var(--text);
  background:
    radial-gradient(circle at 86% 8%, rgba(91,129,255,.12), transparent 26rem),
    radial-gradient(circle at 58% 82%, rgba(185,255,106,.06), transparent 28rem),
    var(--bg);
  font-family: Manrope, system-ui, sans-serif;
}
button, input, textarea { font: inherit; }
button { color: inherit; }
.hidden { display:none!important; }
.noise {
  position: fixed; inset: 0; pointer-events: none; opacity: .025; z-index: 20;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
.login-screen { position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 70% 15%,rgba(117,213,255,.11),transparent 30rem),rgba(8,11,15,.96);backdrop-filter:blur(24px); }
.login-screen.hidden { display:none; }
.login-card { width:min(410px,100%);padding:38px;border:1px solid var(--line-strong);border-radius:24px;background:rgba(20,25,34,.94);box-shadow:0 35px 100px rgba(0,0,0,.45); }
.login-mark { display:grid;margin-bottom:28px; }
.login-card h1 { font:500 29px/1.2 Unbounded;margin-bottom:10px;letter-spacing:-.03em; }
.login-card > p:not(.kicker) { color:var(--muted);font-size:11px;margin-bottom:26px; }
.login-card label { display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.1em;margin-top:13px; }
.login-card input { width:100%;margin-top:7px;border:1px solid var(--line);border-radius:11px;background:#0e1218;color:var(--text);outline:0;padding:12px 13px; }
.login-card input:focus { border-color:rgba(185,255,106,.3); }
.login-card button { width:100%;margin-top:18px;border:0;border-radius:11px;background:var(--accent);color:#10150c;font-weight:800;padding:12px;cursor:pointer; }
.login-card button span { float:right; }.login-error { min-height:16px;color:#ff8e84;font-size:10px;padding-top:8px; }

.sidebar {
  position: fixed; inset: 0 auto 0 0; width: 260px; padding: 24px 16px 18px;
  background: rgba(10,13,18,.82); backdrop-filter: blur(20px);
  border-right: 1px solid var(--line); z-index: 10; display: flex; flex-direction: column;
}
.brand { display:flex;align-items:center;gap:12px;color:var(--text);text-decoration:none;padding:0 9px 28px; }
.brand > span:last-child { font-family:Unbounded,sans-serif;font-size:15px;letter-spacing:.12em; }
.brand small { display:block;margin-top:5px;color:var(--muted);font:500 9px Manrope;letter-spacing:.14em;text-transform:uppercase; }
.brand-mark { width:36px;height:36px;display:grid;grid-template-columns:repeat(3,1fr);gap:3px;transform:rotate(-7deg); }
.brand-mark i { border-radius:10px;background:linear-gradient(180deg,var(--accent),#6dcf72); }
.brand-mark i:nth-child(1) { height:68%;align-self:end;opacity:.52; }
.brand-mark i:nth-child(2) { height:100%; }
.brand-mark i:nth-child(3) { height:78%;align-self:center;opacity:.7; }
.nav { display:grid;gap:6px; }
.nav-item {
  border:0;background:transparent;color:var(--muted);text-align:left;padding:11px 13px;
  border-radius:11px;cursor:pointer;display:flex;align-items:center;gap:12px;font-size:13px;font-weight:600;
}
.nav-item span { font-size:17px;width:21px;color:#717c8d; }
.nav-item:hover { color:var(--text);background:rgba(255,255,255,.035); }
.nav-item.active { color:var(--text);background:rgba(185,255,106,.09);box-shadow:inset 0 0 0 1px rgba(185,255,106,.11); }
.nav-item.active span { color:var(--accent); }
.sidebar-foot { margin-top:auto; }
.environment { display:flex;align-items:center;gap:10px;padding:12px;border-top:1px solid var(--line); }
.environment strong,.environment small,.user-chip strong,.user-chip small { display:block; }
.environment strong { font-size:11px; }.environment small { color:var(--muted);font-size:10px;margin-top:3px; }
.pulse { width:7px;height:7px;background:var(--accent);border-radius:50%;box-shadow:0 0 0 5px rgba(185,255,106,.08); }
.user-chip { width:100%;border:1px solid var(--line);background:rgba(255,255,255,.025);border-radius:13px;display:flex;align-items:center;gap:10px;padding:9px;cursor:pointer; }
.avatar { display:grid;place-items:center;width:33px;height:33px;border-radius:10px;background:linear-gradient(145deg,#323a49,#202632);color:var(--accent);font-weight:700; }
.user-chip > span:nth-child(2) { text-align:left;flex:1; }
.user-chip strong { font-size:11px; }.user-chip small { color:var(--muted);font-size:9px;margin-top:2px; }.user-chip b { color:#687384;font-size:10px; }

.main { margin-left:260px;min-height:100vh; }
.topbar { height:72px;padding:0 34px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:8;background:rgba(11,14,19,.72);backdrop-filter:blur(20px); }
.breadcrumbs { display:flex;gap:10px;font-size:11px;text-transform:uppercase;letter-spacing:.12em; }
.breadcrumbs span,.breadcrumbs b { color:#596476; }.breadcrumbs strong { font-weight:600; }
.top-actions { display:flex;align-items:center;gap:8px; }
.icon-btn,.mobile-menu { width:36px;height:36px;border:1px solid var(--line);background:rgba(255,255,255,.025);border-radius:10px;cursor:pointer; }
.theme-toggle { height:36px;border:1px solid var(--line);background:rgba(255,255,255,.025);border-radius:10px;cursor:pointer;display:flex;align-items:center;gap:7px;padding:0 10px;color:var(--muted);font-size:10px;font-weight:700; }
.theme-toggle:hover { color:var(--text);border-color:var(--line-strong); }
.theme-icon { font-size:15px;line-height:1; }
.build-badge { color:var(--accent);border:1px solid rgba(185,255,106,.2);background:rgba(185,255,106,.07);font-size:10px;padding:6px 9px;border-radius:8px;font-weight:700; }
.mobile-menu { display:none; }
.view { display:none;padding:42px 42px 64px;max-width:1540px;margin:0 auto; }
.view.active { display:block;animation:appear .32s ease; }
@keyframes appear { from { opacity:0;transform:translateY(5px); } }

.hero { min-height:205px;display:flex;align-items:center;justify-content:space-between;overflow:hidden; }
.kicker { color:var(--accent);text-transform:uppercase;letter-spacing:.17em;font-size:9px;font-weight:700;margin:0 0 10px; }
h1,h2,h3,p { margin-top:0; }
.hero h1,.page-intro h1 { font:500 clamp(30px,4vw,54px)/1.05 Unbounded,sans-serif;letter-spacing:-.035em;margin-bottom:18px; }
.hero h1 span { color:var(--accent); }
.hero-copy,.page-intro p { color:var(--muted);max-width:680px;line-height:1.75;font-size:14px; }
.hero-orbit { position:relative;width:230px;height:180px;margin-right:45px;display:grid;place-items:center; }
.orbit { position:absolute;border:1px solid rgba(185,255,106,.14);border-radius:50%; }
.orbit-a { width:190px;height:90px;transform:rotate(25deg); }.orbit-b { width:160px;height:160px;border-color:rgba(117,213,255,.12); }
.core { width:78px;height:78px;border-radius:25px;display:grid;place-items:center;background:linear-gradient(145deg,#222b2b,#12191a);color:var(--accent);font:600 25px Unbounded;box-shadow:0 0 50px rgba(185,255,106,.12),inset 0 0 0 1px rgba(185,255,106,.18); }
.command { display:flex;align-items:center;gap:12px;padding:9px 10px 9px 16px;background:rgba(24,29,39,.92);border:1px solid var(--line-strong);border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.22); }
.command-icon { color:var(--accent); }.command input { flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font-size:13px; }
.command input::placeholder { color:#697486; }
.command button,.primary-btn { border:0;background:var(--accent);color:#11160d;font-weight:700;border-radius:10px;padding:11px 15px;cursor:pointer;font-size:11px; }
.command button span { margin-left:15px; }
.metrics { display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0 48px; }
.metric { padding:16px 17px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.018); }
.metric span { display:block;color:var(--muted);font-size:10px;margin-bottom:8px; }
.metric strong { font:500 21px Unbounded; }.metric small { color:#647082;font-size:9px;margin-left:7px; }
.section-heading { display:flex;align-items:end;justify-content:space-between;margin-bottom:18px; }
.section-heading h2 { font:500 23px Unbounded;margin:0; }.section-heading > span { color:var(--muted);font-size:11px; }
.module-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:38px; }
.module-card { min-height:166px;padding:19px;position:relative;overflow:hidden;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius); }
.module-card:after { content:"";position:absolute;width:120px;height:120px;right:-55px;top:-55px;border-radius:50%;background:var(--glow);filter:blur(10px);opacity:.45; }
.module-card .number { color:#5d6879;font:500 9px Unbounded; }.module-card h3 { margin:24px 0 7px;font-size:15px; }
.module-card p { color:var(--muted);font-size:11px;line-height:1.65; }.module-card .eyebrow { color:var(--tone);font-size:9px;text-transform:uppercase;letter-spacing:.12em; }
.module-card.violet { --tone:#b79cff;--glow:rgba(170,140,255,.25) }
.module-card.lime { --tone:#b9ff6a;--glow:rgba(185,255,106,.22) }
.module-card.cyan { --tone:#75d5ff;--glow:rgba(117,213,255,.25) }
.module-card.amber { --tone:#ffc76c;--glow:rgba(255,199,108,.25) }
.module-card.rose { --tone:#ff9aab;--glow:rgba(255,128,155,.2) }
.module-card.green { --tone:#8cefa7;--glow:rgba(140,239,167,.2) }
.module-card.blue { --tone:#8faeff;--glow:rgba(100,140,255,.25) }
.dashboard-grid { display:grid;grid-template-columns:1.25fr .75fr;gap:12px; }
.panel { background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:20px; }
.panel-head { display:flex;justify-content:space-between;align-items:center;margin-bottom:16px; }
.panel-head h3 { font-size:14px;margin:0; }.text-btn { border:0;background:transparent;color:var(--muted);font-size:10px;cursor:pointer; }
.task-list,.activity-list { display:grid;gap:8px; }
.task,.activity { display:flex;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.018); }
.task-check { width:20px;height:20px;border:1px solid #4b5668;border-radius:7px;display:grid;place-items:center;color:var(--accent); }
.task div,.activity div { flex:1; }.task strong,.activity strong { display:block;font-size:11px;margin-bottom:4px; }
.task small,.activity small { color:var(--muted);font-size:9px; }.task > span:last-child { color:#667183;font-size:9px; }
.empty { color:var(--muted);padding:18px;text-align:center;font-size:11px; }
.activity-icon { width:29px;height:29px;border-radius:9px;background:rgba(117,213,255,.08);color:var(--accent-2);display:grid;place-items:center;font-size:12px; }
.live-label { color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.12em; }
.live-label i { display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--accent);margin-right:5px; }

.page-intro { min-height:145px;display:flex;align-items:flex-start;justify-content:space-between;gap:30px; }
.page-intro h1 { font-size:clamp(29px,4vw,45px); }
.status-chip { white-space:nowrap;border:1px solid rgba(185,255,106,.18);background:rgba(185,255,106,.07);color:var(--accent);border-radius:999px;padding:8px 11px;font-size:9px;text-transform:uppercase;letter-spacing:.1em; }
.status-chip.planned { color:#b1bbca;border-color:var(--line-strong);background:rgba(255,255,255,.03); }
.memory-layout { display:grid;grid-template-columns:230px 1fr;gap:12px; }
.memory-tabs { display:grid;align-content:start;gap:7px; }
.memory-tab { border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.018);color:var(--muted);padding:14px;text-align:left;cursor:pointer; }
.memory-tab strong { display:block;font-size:11px;margin-bottom:5px;color:var(--text); }.memory-tab small { font-size:9px;line-height:1.45; }
.memory-tab.active { border-color:rgba(185,255,106,.24);background:rgba(185,255,106,.055); }
.editor-panel textarea { width:100%;min-height:420px;resize:vertical;border:1px solid var(--line);border-radius:12px;background:#0e1218;color:#dfe5ee;padding:18px;outline:0;font:12px/1.8 ui-monospace,SFMono-Regular,Menlo,monospace; }
.editor-panel textarea:focus { border-color:rgba(185,255,106,.3); }
.editor-actions { display:flex;align-items:center;justify-content:space-between;padding-top:12px;color:var(--muted);font-size:9px; }
.insight-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:12px; }
.insight-card { padding:23px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);min-height:180px; }
.insight-card.large { grid-column:1/-1;min-height:300px;display:grid;grid-template-columns:.8fr 1.2fr;gap:35px;align-items:center;background:radial-gradient(circle at 80% 50%,rgba(185,255,106,.08),transparent 40%),var(--panel); }
.insight-card h2 { font:500 24px/1.35 Unbounded; }.insight-card > span { color:var(--accent);font:500 10px Unbounded; }
.insight-card h3 { margin:45px 0 9px;font-size:15px; }.insight-card p { color:var(--muted);font-size:11px;line-height:1.75; }
.signal-map { min-height:230px;position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;align-items:center; }
.signal-map:before,.signal-map:after { content:"";position:absolute;inset:20% 15%;border:1px solid rgba(185,255,106,.11);border-radius:50%;transform:rotate(10deg); }
.signal-map:after { transform:rotate(-25deg);border-color:rgba(117,213,255,.11); }
.signal-map i,.signal-map b { position:relative;z-index:2;padding:10px;text-align:center;border:1px solid var(--line);border-radius:10px;background:#121821;font-size:9px;font-style:normal; }
.signal-map b { color:var(--accent);border-color:rgba(185,255,106,.22); }
.filter-row { display:flex;gap:7px;margin-bottom:18px;flex-wrap:wrap; }
.filter { border:1px solid var(--line);background:rgba(255,255,255,.02);color:var(--muted);border-radius:999px;padding:8px 13px;font-size:10px;cursor:pointer; }
.filter.active { background:var(--text);color:#101319; }
.connector-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:12px; }
.connector-card { border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);padding:18px;min-height:210px;display:flex;flex-direction:column; }
.connector-top { display:flex;align-items:center;justify-content:space-between; }
.connector-icon { width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,#2b3341,#161b24);display:grid;place-items:center;color:var(--accent);font-weight:800;font-size:11px; }
.connector-status { color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.1em; }.connector-status.ready { color:var(--accent); }
.connector-card h3 { margin:18px 0 7px;font-size:14px; }.connector-card p { color:var(--muted);font-size:10px;line-height:1.6;flex:1; }
.connector-meta { color:#647082;font-size:8px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:12px; }
.connector-card button { width:100%;border:1px solid var(--line-strong);background:rgba(255,255,255,.025);border-radius:10px;padding:9px;color:var(--text);font-size:10px;cursor:pointer; }
.connector-card button:hover { border-color:rgba(185,255,106,.25); }
.feature-stage { max-width:850px;margin:30px auto;padding:55px;text-align:center;border:1px solid var(--line);border-radius:26px;background:radial-gradient(circle at 50% 0,rgba(117,213,255,.08),transparent 55%),var(--panel); }
.feature-mark { width:70px;height:70px;border-radius:24px;background:#1b2330;margin:0 auto 22px;display:grid;place-items:center;color:var(--accent-2);font-size:25px; }
.feature-stage h2 { font:500 24px Unbounded; }.feature-stage > p { max-width:650px;margin:0 auto 28px;color:var(--muted);line-height:1.8;font-size:12px; }
.flow { display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap; }.flow span { border:1px solid var(--line);background:rgba(255,255,255,.025);border-radius:10px;padding:9px 12px;font-size:9px; }.flow b { color:#526074; }
.empty-blueprint { display:flex;align-items:center;gap:18px;border:1px dashed var(--line-strong);border-radius:18px;padding:24px;margin-bottom:12px; }
.empty-blueprint > span { width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:rgba(185,255,106,.08);color:var(--accent);font-size:20px; }
.empty-blueprint h2 { font-size:14px;margin-bottom:6px; }.empty-blueprint p { color:var(--muted);font-size:10px;margin:0; }
.artifact-templates { display:grid;grid-template-columns:repeat(2,1fr);gap:12px; }
.artifact-templates article { min-height:190px;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel); }
.artifact-templates span { color:var(--accent);font:500 10px Unbounded; }.artifact-templates h3 { margin:40px 0 9px;font:500 17px Unbounded; }
.artifact-templates p { color:var(--muted);font-size:10px;line-height:1.65; }
.audit-table-wrap { overflow-x:auto; }.audit-table { width:100%;border-collapse:collapse;font-size:10px; }
.audit-table th { color:#6f7b8d;text-transform:uppercase;letter-spacing:.11em;font-size:8px;text-align:left;padding:11px;border-bottom:1px solid var(--line-strong); }
.audit-table td { padding:15px 11px;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.55; }
.audit-table td:nth-child(2) { color:var(--accent);font-weight:700; }
.audit-table td:last-child span { display:inline-block;border:1px solid var(--line);padding:5px 7px;border-radius:7px;color:var(--muted);font-size:8px; }
.toast { position:fixed;right:24px;bottom:24px;background:#efffdc;color:#18200f;padding:12px 16px;border-radius:11px;font-size:10px;font-weight:700;z-index:50;transform:translateY(80px);opacity:0;transition:.25s;box-shadow:0 15px 40px rgba(0,0,0,.35); }
.toast.show { transform:none;opacity:1; }

.about-intro { min-height:210px; }
.value-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:12px; }
.value-card { min-height:210px;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel); }
.value-card > span { color:var(--accent);font:500 10px Unbounded; }
.value-card h3 { margin:42px 0 10px;font-size:16px; }
.value-card p { color:var(--muted);font-size:11px;line-height:1.75;margin:0; }
.about-heading,.cases-heading { margin-top:52px; }
.how-steps { display:grid;grid-template-columns:repeat(4,1fr);gap:10px; }
.how-steps article { display:flex;gap:13px;padding:18px;border-top:1px solid var(--line-strong); }
.how-steps b { color:var(--accent);font:500 12px Unbounded; }
.how-steps h3 { font-size:12px;margin-bottom:7px; }
.how-steps p { color:var(--muted);font-size:10px;line-height:1.6;margin:0; }
.case-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:12px; }
.case-card { min-height:250px;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);display:flex;flex-direction:column; }
.case-icon { width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:rgba(185,255,106,.08);color:var(--accent);font-weight:800;font-size:11px;margin-bottom:25px; }
.case-card h3 { font-size:15px;margin-bottom:12px; }
.case-card > p { color:var(--muted);font-size:11px;line-height:1.7;flex:1; }
.case-card small { color:var(--accent-2);font-size:9px;line-height:1.5; }

.chat-view { padding:24px!important;height:calc(100vh - 72px);height:calc(100dvh - 72px);max-width:none;overflow:hidden; }
.chat-shell { height:100%;min-height:0;display:grid;grid-template-columns:270px minmax(0,1fr);border:1px solid var(--line);border-radius:22px;overflow:hidden;background:var(--panel);box-shadow:0 24px 70px rgba(0,0,0,.12); }
.conversation-panel { min-width:0;min-height:0;padding:20px 14px 14px;border-right:1px solid var(--line);display:flex;flex-direction:column;overflow:hidden;background:rgba(10,14,19,.3); }
.conversation-head { display:flex;align-items:center;justify-content:space-between;padding:0 7px 15px; }
.conversation-head h2 { margin:0;font:500 19px Unbounded; }
.new-chat-btn { width:34px;height:34px;border:1px solid var(--line-strong);border-radius:10px;background:transparent;cursor:pointer;font-size:19px; }
.conversation-list { display:grid;align-content:start;gap:5px;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1; }
.conversation-item { width:100%;border:0;border-radius:10px;background:transparent;color:var(--muted);padding:11px 10px;text-align:left;cursor:pointer; }
.conversation-item strong { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;color:var(--text); }
.conversation-item small { display:block;margin-top:4px;font-size:8px; }
.conversation-item.active { background:rgba(185,255,106,.08);box-shadow:inset 0 0 0 1px rgba(185,255,106,.12); }
.provider-button { display:flex;align-items:center;gap:9px;width:100%;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.025);padding:10px;text-align:left;cursor:pointer; }
.provider-button > span:nth-child(2) { flex:1;min-width:0; }
.provider-button strong,.provider-button small { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.provider-button strong { font-size:9px; }.provider-button small { color:var(--muted);font-size:8px;margin-top:3px; }
.provider-dot { width:8px;height:8px;border-radius:50%;background:#687383; }
.provider-button.ready .provider-dot { background:var(--accent);box-shadow:0 0 0 5px rgba(185,255,106,.08); }
.provider-button b { color:var(--muted);font-size:12px; }
.chat-main { min-width:0;min-height:0;height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden; }
.chat-head { padding:22px 28px 17px;border-bottom:1px solid var(--line);display:flex;align-items:start;justify-content:space-between;gap:20px; }
.chat-head h1 { margin:0;font:500 21px Unbounded;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:680px; }
.chat-privacy { color:var(--muted);font-size:8px;border:1px solid var(--line);border-radius:999px;padding:7px 9px;white-space:nowrap; }
.chat-messages { min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:28px max(28px,calc((100% - 820px)/2));scroll-behavior:smooth; }
.chat-welcome { min-height:100%;display:grid;place-content:center;justify-items:center;text-align:center;padding:30px; }
.chat-orb { width:62px;height:62px;border-radius:21px;display:grid;place-items:center;background:linear-gradient(145deg,#252e2b,#121917);color:var(--accent);font:600 21px Unbounded;box-shadow:0 0 45px rgba(185,255,106,.12); }
.chat-welcome h2 { margin:20px 0 9px;font:500 22px Unbounded; }
.chat-welcome > p { max-width:500px;color:var(--muted);font-size:11px;line-height:1.7; }
.chat-suggestions { margin-top:18px;display:flex;gap:8px;flex-wrap:wrap;justify-content:center; }
.chat-suggestions button { border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--muted);padding:9px 12px;font-size:9px;cursor:pointer; }
.chat-suggestions button:hover { color:var(--text);border-color:var(--line-strong); }
.chat-message { display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;margin-bottom:22px; }
.chat-message.user { grid-template-columns:minmax(0,1fr);justify-items:end; }
.chat-avatar { width:34px;height:34px;border-radius:11px;background:rgba(185,255,106,.09);color:var(--accent);display:grid;place-items:center;font:600 11px Unbounded; }
.chat-bubble { min-width:0;max-width:760px; }
.chat-bubble .chat-role { display:block;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:6px; }
.chat-content { font-size:12px;line-height:1.72;white-space:pre-wrap;overflow-wrap:anywhere; }
.chat-message.user .chat-bubble { padding:11px 14px;border-radius:15px 15px 3px 15px;background:rgba(117,213,255,.09);border:1px solid rgba(117,213,255,.12); }
.chat-message.user .chat-role { display:none; }
.chat-thinking { color:var(--muted);font-size:10px;padding:12px 0; }
.chat-thinking i { display:inline-block;width:5px;height:5px;margin-right:4px;border-radius:50%;background:var(--accent);animation:pulse-dot 1.1s infinite alternate; }
.chat-thinking i:nth-child(2) { animation-delay:.2s }.chat-thinking i:nth-child(3) { animation-delay:.4s }
@keyframes pulse-dot { to { opacity:.25;transform:translateY(-2px) } }
.action-card { margin-top:12px;border:1px solid rgba(255,199,108,.28);border-radius:13px;background:rgba(255,199,108,.055);padding:14px; }
.action-card .kicker { color:#d99a2b; }
.action-card strong { display:block;font-size:11px;margin-bottom:6px; }
.action-card p { margin:0 0 12px;color:var(--muted);font-size:10px;white-space:pre-wrap;line-height:1.55; }
.action-buttons { display:flex;gap:7px; }
.action-buttons button { border:1px solid var(--line-strong);background:transparent;border-radius:9px;padding:8px 11px;font-size:9px;cursor:pointer; }
.action-buttons .confirm-action { border:0;background:var(--accent);color:#11160d;font-weight:700; }
.action-card.resolved { opacity:.62; }
.chat-composer { position:relative;margin:0 max(24px,calc((100% - 850px)/2)) 22px;padding:10px 58px 24px 14px;border:1px solid var(--line-strong);border-radius:17px;background:rgba(18,23,31,.94);box-shadow:0 15px 40px rgba(0,0,0,.15); }
.chat-composer textarea { width:100%;max-height:160px;resize:none;border:0;outline:0;background:transparent;color:var(--text);font-size:12px;line-height:1.55; }
.chat-composer > button { position:absolute;right:9px;top:9px;width:40px;height:40px;border:0;border-radius:12px;background:var(--accent);color:#11160d;font-size:18px;font-weight:800;cursor:pointer; }
.chat-composer > button:disabled { opacity:.5;cursor:wait; }
.chat-composer > small { position:absolute;left:14px;bottom:7px;color:var(--muted);font-size:7px; }
.provider-dialog select { width:100%;border:1px solid var(--line);border-radius:11px;background:#0e1218;color:var(--text);outline:0;padding:12px 13px; }

.integration-modal { position:fixed;inset:0;z-index:90;padding:24px;display:grid;place-items:center;background:rgba(4,7,10,.72);backdrop-filter:blur(18px); }
.integration-modal.hidden { display:none; }
.integration-dialog { width:min(560px,100%);max-height:calc(100vh - 48px);overflow:auto;border:1px solid var(--line-strong);border-radius:24px;background:#121720;box-shadow:0 35px 100px rgba(0,0,0,.5);padding:26px; }
.integration-dialog-head { display:flex;align-items:flex-start;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid var(--line); }
.integration-dialog-head h2 { font:500 24px Unbounded;margin:0; }
.modal-close { width:36px;height:36px;border:1px solid var(--line);background:rgba(255,255,255,.025);border-radius:10px;color:var(--muted);font-size:22px;line-height:1;cursor:pointer; }
.wizard-loading,.wizard-message { color:var(--muted);font-size:11px;line-height:1.7;padding:35px 4px;text-align:center; }
.wizard-copy { color:var(--muted);font-size:11px;line-height:1.7;margin:18px 0; }
.wizard-form { display:grid;gap:15px;padding-top:22px; }
.wizard-form label > span,.policy-title { display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:7px; }
.wizard-form input { width:100%;border:1px solid var(--line);border-radius:11px;background:#0e1218;color:var(--text);outline:0;padding:12px 13px; }
.wizard-form input:focus { border-color:rgba(185,255,106,.3); }
.policy-options { display:grid;grid-template-columns:1fr 1fr;gap:8px; }
.policy-option { position:relative;display:block;border:1px solid var(--line);border-radius:12px;padding:13px;cursor:pointer; }
.policy-option input { position:absolute;opacity:0;pointer-events:none; }
.policy-option:has(input:checked) { border-color:rgba(185,255,106,.3);background:rgba(185,255,106,.06); }
.policy-option strong { display:block;font-size:11px;margin-bottom:4px; }
.policy-option small { color:var(--muted);font-size:9px;line-height:1.45; }
.wizard-actions { display:flex;gap:8px;justify-content:flex-end;margin-top:5px; }
.secondary-btn { border:1px solid var(--line-strong);background:transparent;color:var(--text);font-size:10px;border-radius:10px;padding:10px 13px;cursor:pointer; }
.wizard-hint { border:1px solid var(--line);background:rgba(117,213,255,.05);border-radius:11px;padding:11px;color:var(--muted);font-size:10px;line-height:1.55; }
.wizard-error { min-height:15px;color:#ff8e84;font-size:10px; }
.connection-card { margin-top:22px;border:1px solid var(--line);border-radius:15px;padding:16px;background:rgba(255,255,255,.018); }
.connection-account { display:flex;align-items:center;gap:12px; }
.connection-account .avatar { flex:0 0 40px;width:40px;height:40px; }
.connection-account strong,.connection-account small { display:block; }
.connection-account small { color:var(--muted);font-size:9px;margin-top:4px; }
.connection-details { display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px; }
.connection-details div { border-top:1px solid var(--line);padding-top:10px; }
.connection-details span,.connection-details strong { display:block; }
.connection-details span { color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.09em;margin-bottom:4px; }
.connection-details strong { font-size:10px; }
.dialog-preview { display:grid;gap:6px;margin-top:14px; }
.dialog-preview article { display:flex;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:9px;padding:9px 11px;font-size:10px; }
.dialog-preview small { color:var(--muted); }
.danger-btn { border:1px solid rgba(255,100,100,.25);background:rgba(255,100,100,.05);color:#ff9e96;font-size:10px;border-radius:10px;padding:10px 13px;cursor:pointer; }

:root[data-theme="light"] body {
  background:
    radial-gradient(circle at 86% 8%, rgba(57, 112, 184, .1), transparent 26rem),
    radial-gradient(circle at 58% 82%, rgba(109, 154, 45, .08), transparent 28rem),
    var(--bg);
}
:root[data-theme="light"] .noise { opacity:.018;mix-blend-mode:multiply; }
:root[data-theme="light"] .login-screen {
  background:radial-gradient(circle at 70% 15%,rgba(22,125,168,.12),transparent 30rem),rgba(244,245,240,.97);
}
:root[data-theme="light"] .login-card {
  background:rgba(255,255,252,.96);
  box-shadow:0 35px 100px rgba(42,52,61,.16);
}
:root[data-theme="light"] .login-card input,
:root[data-theme="light"] .editor-panel textarea {
  background:#fbfcf8;color:var(--text);
}
:root[data-theme="light"] .sidebar {
  background:rgba(248,249,245,.9);
  box-shadow:8px 0 32px rgba(39,48,57,.035);
}
:root[data-theme="light"] .topbar { background:rgba(244,245,240,.8); }
:root[data-theme="light"] .nav-item:hover,
:root[data-theme="light"] .user-chip,
:root[data-theme="light"] .icon-btn,
:root[data-theme="light"] .mobile-menu,
:root[data-theme="light"] .theme-toggle,
:root[data-theme="light"] .metric,
:root[data-theme="light"] .task,
:root[data-theme="light"] .activity,
:root[data-theme="light"] .memory-tab,
:root[data-theme="light"] .filter,
:root[data-theme="light"] .connector-card button,
:root[data-theme="light"] .flow span {
  background:rgba(22,31,41,.025);
}
:root[data-theme="light"] .nav-item.active {
  background:rgba(93,143,24,.1);
  box-shadow:inset 0 0 0 1px rgba(93,143,24,.12);
}
:root[data-theme="light"] .avatar {
  background:linear-gradient(145deg,#e6eadf,#d8ddd2);
}
:root[data-theme="light"] .breadcrumbs span,
:root[data-theme="light"] .breadcrumbs b,
:root[data-theme="light"] .module-card .number,
:root[data-theme="light"] .metric small,
:root[data-theme="light"] .connector-meta,
:root[data-theme="light"] .audit-table th { color:#718093; }
:root[data-theme="light"] .core {
  background:linear-gradient(145deg,#f9fbee,#e6ecdc);
  box-shadow:0 0 50px rgba(93,143,24,.12),inset 0 0 0 1px rgba(93,143,24,.18);
}
:root[data-theme="light"] .command {
  background:rgba(255,255,252,.94);
  box-shadow:0 20px 60px rgba(42,52,61,.09);
}
:root[data-theme="light"] .signal-map i,
:root[data-theme="light"] .signal-map b { background:#f8faf5; }
:root[data-theme="light"] .connector-icon {
  background:linear-gradient(145deg,#e7ecdf,#dce3d5);
}
:root[data-theme="light"] .feature-mark { background:#e7edf0; }
:root[data-theme="light"] .integration-modal { background:rgba(43,51,58,.35); }
:root[data-theme="light"] .integration-dialog { background:#fbfcf8;box-shadow:0 35px 100px rgba(42,52,61,.2); }
:root[data-theme="light"] .wizard-form input { background:#fff;color:var(--text); }
:root[data-theme="light"] .connection-card { background:rgba(22,31,41,.02); }
:root[data-theme="light"] .conversation-panel { background:rgba(244,246,240,.65); }
:root[data-theme="light"] .provider-button { background:rgba(22,31,41,.025); }
:root[data-theme="light"] .chat-orb { background:linear-gradient(145deg,#edf1e8,#dfe7d9); }
:root[data-theme="light"] .chat-composer { background:rgba(255,255,252,.97);box-shadow:0 15px 40px rgba(42,52,61,.08); }
:root[data-theme="light"] .provider-dialog select { background:#fff;color:var(--text); }
:root[data-theme="light"] .filter.active { background:var(--text);color:#fff; }
:root[data-theme="light"] .module-card.violet { --tone:#7357b8; }
:root[data-theme="light"] .module-card.lime { --tone:#5d8f18; }
:root[data-theme="light"] .module-card.cyan { --tone:#167da8; }
:root[data-theme="light"] .module-card.amber { --tone:#a36700; }
:root[data-theme="light"] .module-card.rose { --tone:#ad4962; }
:root[data-theme="light"] .module-card.green { --tone:#2d8548; }
:root[data-theme="light"] .module-card.blue { --tone:#4669b8; }

@media (max-width:1200px) {
  .module-grid,.connector-grid { grid-template-columns:repeat(2,1fr); }
  .case-grid { grid-template-columns:repeat(2,1fr); }
  .metrics { grid-template-columns:repeat(2,1fr); }
  .dashboard-grid { grid-template-columns:1fr; }
}
@media (max-width:760px) {
  .sidebar { transform:translateX(-100%);transition:.25s;box-shadow:20px 0 60px rgba(0,0,0,.45); }
  .sidebar.open { transform:none; }.main { margin-left:0; }.mobile-menu { display:block; }
  .topbar { padding:0 16px; }.view { padding:28px 16px 48px; }
  .hero-orbit { display:none; }.hero { min-height:180px; }.command { align-items:stretch; }
  .command button { width:44px;padding:10px;font-size:0;flex:0 0 44px; }
  .command button:after { content:"→";font-size:16px; }.command button span { display:none; }
  .module-grid,.connector-grid,.artifact-templates,.memory-layout,.insight-grid,.value-grid,.case-grid,.how-steps { grid-template-columns:1fr; }
  .insight-card.large { grid-template-columns:1fr; }.memory-tabs { grid-template-columns:repeat(2,1fr); }
  .metrics { gap:8px; }.metric { padding:13px; }.section-heading > span { display:none; }
  .page-intro { min-height:130px; }.page-intro > .primary-btn,.page-intro > .status-chip { display:none; }
  .theme-toggle { width:36px;padding:0;justify-content:center; }
  .theme-label { display:none; }
  .integration-modal { padding:10px;align-items:end; }
  .integration-dialog { width:100%;max-height:92vh;border-radius:22px 22px 12px 12px;padding:20px; }
  .policy-options,.connection-details { grid-template-columns:1fr; }
  .chat-view { padding:0!important;height:calc(100vh - 72px);height:calc(100dvh - 72px); }
  .chat-shell { min-height:0;border:0;border-radius:0;grid-template-columns:1fr; }
  .conversation-panel { display:none; }
  .chat-head { padding:16px; }.chat-head h1 { font-size:16px; }
  .chat-privacy { display:none; }
  .chat-messages { padding:22px 16px; }
  .chat-composer { margin:0 10px 10px; }
}
