:root {
  --bg:#f6f5f7; --card:#fff; --ink:#202026; --muted:#777782; --line:#e9e7eb;
  --pink:#df5b91; --pink-deep:#ba3d6c; --pink-pale:#fce7ef;
  --green:#2f9b72; --green-pale:#e8f7ef; --blue:#4775b9; --blue-pale:#edf3ff;
  --amber:#966110; --amber-pale:#fff5df; --shadow:0 14px 35px rgba(24,20,27,.08),0 2px 6px rgba(24,20,27,.035);
  --shadow-hover:0 20px 45px rgba(24,20,27,.12),0 4px 10px rgba(24,20,27,.045);
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { min-width:320px; min-height:100vh; margin:0; color:var(--ink); background:var(--bg); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
button,textarea { font:inherit; }
button { cursor:pointer; }
button:focus-visible { outline:3px solid rgba(223,91,145,.35); outline-offset:2px; }
.shell { display:flex; min-height:100vh; }
.sidebar { position:fixed; z-index:30; inset:0 auto 0 0; display:flex; flex-direction:column; width:245px; padding:22px 15px; border-right:1px solid var(--line); background:rgba(255,255,255,.9); backdrop-filter:blur(18px); }
.brand { display:flex; align-items:center; gap:10px; padding:0 9px; color:var(--ink); text-decoration:none; font-size:1rem; font-weight:900; letter-spacing:.14em; }
.brand-mark { display:grid; place-items:center; width:33px; height:33px; border-radius:10px; color:#fff; background:var(--ink); box-shadow:0 5px 12px rgba(32,32,38,.17); font-size:.71rem; letter-spacing:0; }
.workspace { display:flex; align-items:center; gap:9px; margin:32px 8px 18px; padding:11px; border:1px solid var(--line); border-radius:13px; color:var(--muted); background:#faf9fb; font-size:.78rem; font-weight:700; }
.workspace-icon { display:grid; place-items:center; width:25px; height:25px; border-radius:8px; color:#fff; background:var(--pink); font-size:.72rem; }
.menu { display:grid; gap:5px; }
.menu-button { display:flex; align-items:center; gap:12px; width:100%; border:0; border-radius:11px; padding:11px 12px; color:#6c6c77; background:transparent; text-align:left; font-size:.9rem; font-weight:730; transition:background .2s,color .2s,transform .2s; }
.menu-button:hover { color:var(--ink); background:#f6f5f7; }
.menu-button.active { color:var(--pink-deep); background:var(--pink-pale); }
.menu-button:active { transform:scale(.98); }
.menu-icon { display:grid; place-items:center; width:20px; height:20px; font-size:1rem; }
.sidebar-bottom { margin-top:auto; }
.usage-card { padding:14px; border:1px solid var(--line); border-radius:14px; background:#fbfafc; }
.usage-card strong { display:block; margin-bottom:5px; font-size:.8rem; }
.usage-card span { display:block; color:var(--muted); font-size:.72rem; line-height:1.45; }
.usage-bar { height:5px; margin-top:11px; overflow:hidden; border-radius:99px; background:#ecebf0; }
.usage-bar i { display:block; width:35%; height:100%; border-radius:inherit; background:var(--pink); }
.app { width:calc(100% - 245px); margin-left:245px; }
.topbar { position:sticky; z-index:20; top:0; display:flex; align-items:center; justify-content:space-between; gap:18px; min-height:76px; padding:16px 36px; border-bottom:1px solid rgba(233,231,235,.9); background:rgba(246,245,247,.84); backdrop-filter:blur(16px); }
.topbar-left,.top-actions,.profile { display:flex; align-items:center; }
.topbar-left { gap:12px; }
.crumb { color:var(--muted); font-size:.85rem; }
.crumb strong { color:var(--ink); }
.top-actions { gap:11px; }
.round-button { display:grid; place-items:center; width:37px; height:37px; border:1px solid var(--line); border-radius:11px; color:var(--ink); background:#fff; box-shadow:0 3px 8px rgba(20,20,25,.03); }
.profile { gap:9px; padding-left:5px; font-size:.8rem; font-weight:750; }
.profile-avatar { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; color:#fff; background:linear-gradient(135deg,#34343c,#70707a); font-size:.76rem; }
.back-button { display:none; align-items:center; gap:6px; border:1px solid var(--line); border-radius:10px; padding:9px 11px; color:var(--ink); background:#fff; font-size:.77rem; font-weight:800; }
.back-button.show { display:flex; }
main { width:min(1280px,calc(100% - 58px)); margin:0 auto; }
.page { display:none; padding:37px 0 55px; animation:enter .35s ease both; }
.page.active { display:block; }
@keyframes enter { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:translateY(0); } }
.page-header,.page-heading { margin-bottom:26px; }
.page-header { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; }
.eyebrow { margin:0 0 8px; color:var(--pink-deep); font-size:.7rem; font-weight:850; letter-spacing:.16em; text-transform:uppercase; }
.page-header h1,.page-heading h2 { margin:0; letter-spacing:-.05em; }
.page-header h1 { font-size:clamp(1.9rem,3.3vw,2.8rem); }
.page-heading h2 { font-size:clamp(1.65rem,3vw,2.35rem); }
.page-header p,.page-heading p { max-width:700px; margin:9px 0 0; color:var(--muted); font-size:.95rem; line-height:1.65; }
.card { border:1px solid var(--line); border-radius:19px; background:var(--card); box-shadow:var(--shadow); }
.primary-button,.secondary-button,.text-button { transition:background .18s,transform .18s,box-shadow .18s; font-weight:820; }
.primary-button { border:0; border-radius:12px; padding:11px 15px; color:#fff; background:var(--pink); box-shadow:0 8px 18px rgba(223,91,145,.2); font-size:.85rem; }
.primary-button:hover { background:var(--pink-deep); transform:translateY(-2px); }
.primary-button:active { transform:scale(.98); }
.secondary-button { border:1px solid var(--line); border-radius:11px; padding:9px 12px; color:var(--ink); background:#fff; font-size:.78rem; }
.secondary-button:hover { box-shadow:0 4px 11px rgba(24,20,27,.08); }
.text-button { border:0; padding:0; color:var(--pink-deep); background:transparent; font-size:.8rem; }
.dashboard-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:18px; }
.autonomy-section { margin-top:28px; }
.section-kicker { margin:5px 0 0; color:var(--muted); font-size:.8rem; }
.auto-updated { color:var(--green); font-size:.72rem; font-weight:800; }
.autonomy-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; margin-top:14px; }
.autonomy-card { min-height:148px; padding:15px; transition:transform .2s,box-shadow .2s; }
.autonomy-card:hover { transform:translateY(-3px); box-shadow:var(--shadow-hover); }
.auto-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:8px; }
.auto-icon { display:grid; place-items:center; width:33px; height:33px; border-radius:10px; color:var(--pink-deep); background:var(--pink-pale); font-size:.9rem; font-weight:900; }
.auto-icon.green { color:var(--green); background:var(--green-pale); }
.auto-icon.blue { color:var(--blue); background:var(--blue-pale); }
.auto-icon.amber { color:var(--amber); background:var(--amber-pale); }
.auto-metric { margin-top:17px; font-size:1.15rem; font-weight:900; letter-spacing:-.04em; }
.auto-label { margin-top:3px; color:var(--ink); font-size:.79rem; font-weight:780; }
.auto-detail { margin:7px 0 0; color:var(--muted); font-size:.71rem; line-height:1.42; }
.approval-section { margin-top:28px; }
.approval-card { padding:7px 20px; }
.welcome-card { padding:27px; }
.welcome-card h2 { max-width:580px; margin:0; font-size:clamp(1.55rem,3vw,2.25rem); letter-spacing:-.055em; }
.welcome-card > p { max-width:590px; margin:10px 0 20px; color:var(--muted); line-height:1.65; }
.command-box { border:1px solid #ebd5df; border-radius:15px; padding:13px; background:#fffafb; }
.command-label { display:flex; align-items:center; gap:8px; margin-bottom:10px; font-size:.82rem; font-weight:820; }
.clement-dot { display:grid; place-items:center; width:24px; height:24px; border-radius:8px; color:#fff; background:var(--ink); font-size:.7rem; }
.command-row { display:flex; gap:10px; }
.command-input { width:100%; min-height:54px; resize:vertical; border:1px solid var(--line); border-radius:11px; padding:14px; color:var(--ink); outline:none; background:#fff; line-height:1.4; }
.command-input:focus { border-color:rgba(223,91,145,.7); box-shadow:0 0 0 4px var(--pink-pale); }
.command-note { margin:10px 1px 0; color:var(--muted); font-size:.76rem; }
.command-result { display:none; margin-top:13px; padding:12px; border:1px solid #f0ccd9; border-radius:11px; color:#503f47; background:#fff5f8; font-size:.84rem; line-height:1.55; }
.command-result.show { display:block; animation:enter .3s ease both; }
.neural-card { position:relative; min-height:357px; padding:19px; overflow:hidden; }
.neural-head { position:relative; z-index:2; display:flex; align-items:flex-start; justify-content:space-between; }
.neural-head h3 { margin:0; font-size:1rem; }
.neural-head p { margin:5px 0 0; color:var(--muted); font-size:.76rem; }
.neural-badge { padding:6px 8px; border-radius:99px; color:#a33760; background:var(--pink-pale); font-size:.68rem; font-weight:800; }
.neural-stage { position:absolute; inset:53px 0 2px; }
.neural-stage::after { position:absolute; z-index:0; top:52%; left:50%; width:270px; height:180px; border-radius:50%; background:radial-gradient(ellipse,rgba(223,91,145,.13),transparent 70%); content:""; filter:blur(15px); transform:translate(-50%,-50%); pointer-events:none; }
#brainCanvas { position:relative; z-index:1; display:block; width:100%; height:100%; cursor:grab; touch-action:none; }
#brainCanvas:active { cursor:grabbing; }
.neural-hint { position:absolute; z-index:3; right:17px; bottom:13px; margin:0; color:#9a99a3; font-size:.66rem; pointer-events:none; }
.section-title { display:flex; align-items:center; justify-content:space-between; gap:15px; margin:28px 0 14px; }
.section-title h2 { margin:0; font-size:1.2rem; letter-spacing:-.035em; }
.project-grid,.agent-grid,.studio-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }
.project-card { padding:18px; text-align:left; transition:transform .2s,box-shadow .2s; }
button.project-card { width:100%; cursor:pointer; }
.project-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-hover); }
.project-meta,.progress-head { display:flex; align-items:center; justify-content:space-between; gap:10px; color:var(--muted); font-size:.72rem; }
.project-card h3 { margin:14px 0 8px; font-size:1rem; }
.project-card p { min-height:40px; margin:0; color:var(--muted); font-size:.8rem; line-height:1.55; }
.progress-head { margin-top:18px; color:#656570; font-weight:750; }
.progress { height:6px; margin-top:7px; overflow:hidden; border-radius:99px; background:#efeff2; }
.progress i { display:block; height:100%; border-radius:inherit; background:var(--pink); }
.agent-avatars { display:flex; margin-top:15px; }
.mini-agent { display:grid; place-items:center; width:25px; height:25px; margin-right:-5px; border:2px solid #fff; border-radius:50%; color:#40404a; background:#eeeeF1; font-size:.64rem; font-weight:850; }
.mini-agent.active { color:#fff; background:var(--ink); }
.state { display:inline-flex; align-items:center; gap:5px; padding:5px 7px; border-radius:99px; font-size:.67rem; font-weight:800; }
.state.running { color:var(--blue); background:var(--blue-pale); }
.state.review { color:var(--amber); background:var(--amber-pale); }
.state.done { color:var(--green); background:var(--green-pale); }
.state.future { color:#777782; background:#efeff2; }
.state::before { width:5px; height:5px; border-radius:50%; background:currentColor; content:""; }
.lower-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:18px; }
.list-card { padding:20px; }
.list-card h3 { margin:0 0 14px; font-size:1rem; }
.action-row { display:flex; align-items:center; gap:12px; padding:12px 0; border-bottom:1px solid var(--line); }
.action-row:last-child,.activity-row:last-child,.task:last-child,.settings-row:last-child { border-bottom:0; }
.action-icon { display:grid; place-items:center; flex-shrink:0; width:34px; height:34px; border-radius:10px; color:var(--pink-deep); background:var(--pink-pale); font-size:.88rem; }
.action-row strong { display:block; margin-bottom:3px; font-size:.83rem; }
.action-row span { display:block; color:var(--muted); font-size:.73rem; }
.action-action { margin-left:auto; }
.activity-row { display:flex; gap:12px; padding:12px 0; border-bottom:1px solid var(--line); }
.activity-dot { width:8px; height:8px; margin-top:4px; flex:0 0 auto; border-radius:50%; background:var(--pink); box-shadow:0 0 0 4px var(--pink-pale); }
.activity-dot.future { background:#aaaab2; box-shadow:0 0 0 4px #efeff2; }
.activity-row strong { display:block; font-size:.82rem; }
.activity-row p { margin:3px 0 0; color:var(--muted); font-size:.73rem; }
.agent-card { padding:20px; }
.agent-card.highlight { border-color:var(--pink); box-shadow:0 0 0 5px var(--pink-pale),var(--shadow); }
.agent-head { display:flex; align-items:center; gap:12px; }
.agent-avatar { display:grid; place-items:center; width:44px; height:44px; border-radius:14px; color:#fff; background:var(--ink); font-size:15px; font-weight:800; }
.agent-avatar.future { color:#6f6f79; background:#eeeeF1; }
.agent-name { font-size:15px; font-weight:800; }
.agent-role { margin-top:2px; color:var(--muted); font-size:12px; }
.skill-tags { display:flex; flex-wrap:wrap; gap:6px; margin-top:15px; }
.skill-tag { padding:4px 9px; border-radius:99px; color:var(--muted); background:#f4f3f5; font-size:11px; }
.tabs { display:flex; gap:8px; margin-bottom:16px; flex-wrap:wrap; }
.tab-button { border:1px solid var(--line); border-radius:999px; padding:8px 14px; color:var(--muted); background:#fff; font-size:.79rem; font-weight:750; }
.tab-button.active { border-color:var(--pink-pale); color:var(--pink-deep); background:var(--pink-pale); }
.studio-card { padding:18px; }
.studio-card h3 { margin:0 0 7px; font-size:1rem; }
.studio-card p { margin:0; color:var(--muted); font-size:.8rem; line-height:1.55; }
.connector-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:15px; }
.connector-card { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:18px; }
.connector-left { display:flex; align-items:center; gap:12px; }
.connector-logo { display:grid; place-items:center; width:40px; height:40px; border-radius:12px; color:var(--pink-deep); background:var(--pink-pale); font-size:17px; font-weight:900; }
.connector-name { font-size:14px; font-weight:800; }
.connector-status { margin-top:3px; color:var(--muted); font-size:11.5px; }
.switch { position:relative; flex:0 0 auto; width:42px; height:24px; border:1px solid var(--line); border-radius:999px; background:#eeeeF1; }
.switch::after { position:absolute; top:2px; left:2px; width:18px; height:18px; border-radius:50%; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.25); content:""; transition:transform .18s ease; }
.switch.on { border-color:var(--green); background:var(--green); }
.switch.on::after { transform:translateX(18px); }
.settings-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:18px; }
.settings-card { padding:6px 20px; }
.settings-row { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:16px 4px; border-bottom:1px solid var(--line); }
.settings-title { font-size:14px; font-weight:750; }
.settings-sub { margin-top:3px; color:var(--muted); font-size:12px; line-height:1.45; }
.empty-note { margin:20px; padding:13px; border:1px solid #f0ccd9; border-radius:12px; color:#694755; background:#fff5f8; font-size:.8rem; line-height:1.55; }
.project-detail { display:none; }
.project-detail.active { display:block; animation:enter .35s ease both; }
.detail-summary { padding:24px; }
.detail-summary h2 { margin:0; font-size:1.5rem; letter-spacing:-.04em; }
.detail-summary p { margin:8px 0 0; color:var(--muted); font-size:.88rem; line-height:1.55; }
.detail-progress { display:flex; align-items:center; gap:11px; margin-top:18px; color:var(--muted); font-size:.76rem; font-weight:800; }
.detail-progress .progress { flex:1; margin:0; }
.task { display:flex; align-items:center; gap:13px; padding:15px 17px; border-bottom:1px solid var(--line); }
.task-check { display:grid; place-items:center; flex:0 0 auto; width:23px; height:23px; border-radius:8px; color:#82828d; background:#f1f0f2; font-size:.75rem; font-weight:900; }
.task.done .task-check { color:#fff; background:var(--green); }
.task-text { min-width:0; }
.task-text strong { display:block; font-size:.85rem; }
.task-text span { display:block; margin-top:3px; color:var(--muted); font-size:.73rem; }
.task-agent { margin-left:auto; color:var(--muted); font-size:.75rem; font-weight:750; }
footer { display:flex; justify-content:space-between; gap:20px; padding:21px 0 35px; color:var(--muted); font-size:.73rem; }
footer a { color:inherit; text-decoration:none; }
@media (max-width:1080px) { .dashboard-grid,.settings-grid { grid-template-columns:1fr; } .project-grid,.agent-grid,.studio-grid { grid-template-columns:repeat(2,1fr); } .autonomy-grid { grid-template-columns:repeat(3,1fr); } }
@media (max-width:900px) {
  .sidebar { position:fixed; inset:auto 0 0; flex-direction:row; width:100%; height:auto; padding:8px 10px; border-top:1px solid var(--line); border-right:0; }
  .brand,.workspace,.sidebar-bottom { display:none; } .menu { display:flex; justify-content:space-around; width:100%; gap:2px; }
  .menu-button { flex:1; flex-direction:column; gap:3px; padding:6px 4px; text-align:center; font-size:10px; } .menu-icon { font-size:17px; }
  .app { width:100%; margin-left:0; } .topbar { padding:14px 16px; } .profile-name,.round-button { display:none; } main { width:min(100% - 32px,720px); } .page { padding:28px 0 90px; }
  .connector-grid { grid-template-columns:1fr; } .autonomy-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:620px) { .page-header,.command-row,.lower-grid { display:flex; flex-direction:column; align-items:stretch; } .page-header .primary-button,.command-row .primary-button { width:100%; } .project-grid,.agent-grid,.studio-grid,.autonomy-grid { grid-template-columns:1fr; } .top-actions { gap:4px; } .profile { padding-left:0; } footer { flex-direction:column; } .task-agent { display:none; } }
