/* AgentHub 2.0 — Premium interface
 * Dependency-free design system. All colors are theme tokens.
 * Breakpoints: 1280 (compact), 1100 (rail), 760 (mobile), 480 (small).
 */
:root {
  color-scheme: light;
  --bg:#f7f8fb; --surface:#fff; --surface-alt:#fafbfe; --surface-hover:#f2f3f9;
  --ink:#252837; --muted:#717687; --subtle:#959baa; --border:#e7e9f1;
  --accent:#6b57d7; --accent-hover:#5743bf; --accent-soft:#efecfc; --accent-line:#ded6fc;
  --green:var(--accent); --green-dark:var(--accent-hover); --mint:var(--accent-soft); --mint-line:var(--accent-line);
  --positive:#21826c; --positive-soft:#eaf6f0; --orange:#aa712c; --orange-soft:#fcf3e7;
  --blue:#4d76bc; --blue-soft:#edf3fd; --rose:#bb6688; --rose-soft:#fcedf3;
  --shadow:0 3px 8px #22254503,0 1px 2px #22254503; --shadow-lg:0 12px 36px #2524470d;
  --sidebar:244px; --r:14px; --header:70px;
  --sidebar-bg:#171921; --sidebar-text:#b3b7c7; --sidebar-muted:#858b9f;
  --hero-bg:#f0eefb; --hero-line:#dcd7f4; --hero-ink:#36304e;
  --font:Inter,"Inter Display",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}
:root[data-theme="dark"] {
  color-scheme:dark;
  --bg:#15171f; --surface:#1d202b; --surface-alt:#20232f; --surface-hover:#292c3a;
  --ink:#eceef7; --muted:#a4aabd; --subtle:#898fa3; --border:#303445;
  --accent:#a194ff; --accent-hover:#b6acff; --accent-soft:#2d2944; --accent-line:#4c426e;
  --positive:#78d4b3; --positive-soft:#223a34; --orange:#e9b87c; --orange-soft:#3c3227;
  --blue:#97b9ed; --blue-soft:#29354e; --rose:#e6a2bf; --rose-soft:#3f2c39;
  --shadow:0 3px 8px #00000012,0 1px 2px #00000012; --shadow-lg:0 12px 36px #00000020;
  --sidebar-bg:#11131a; --hero-bg:#252138; --hero-line:#41385b; --hero-ink:#e0d9f8;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.55 var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
button,input,select,textarea{font:inherit}
button{cursor:pointer;color:inherit;border:0;background:transparent}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button:disabled{cursor:not-allowed;opacity:.5}
a{color:inherit;text-decoration:none}
svg{display:inline-block;vertical-align:middle;flex-shrink:0}
h1,h2,h3,h4,p{margin:0}
h1{font-size:28px;letter-spacing:-1px;font-weight:650;line-height:1.3}
h2{font-size:18px;letter-spacing:-.4px;font-weight:630;line-height:1.45}
h3{font-size:14px;font-weight:620;line-height:1.5}
h4{font-size:12px;font-weight:650}
strong{font-weight:620}
small{font-size:11px}
button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
input:focus,textarea:focus,select:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
input::placeholder,textarea::placeholder{color:var(--subtle);opacity:1}
::selection{background:var(--accent-line);color:var(--ink)}
::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:var(--border);border-radius:8px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;top:-80px;left:20px;z-index:500;background:var(--accent);color:white;padding:12px 20px;border-radius:8px}.skip-link:focus{top:12px}
.muted{color:var(--muted)}.small{font-size:13px}.tiny{font-size:11px}.eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:650;color:var(--muted)}
.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flex{display:flex;align-items:center}.between{justify-content:space-between}
.gap4{gap:4px}.gap6{gap:6px}.gap8{gap:8px}.gap10{gap:10px}.gap12{gap:12px}.gap16{gap:16px}.grow{flex:1;min-width:0}.wrap{flex-wrap:wrap}.w100{width:100%}
.mt4{margin-top:4px}.mt8{margin-top:8px}.mt12{margin-top:12px}.mt16{margin-top:16px}.mt24{margin-top:24px}.hidden{display:none!important}
.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow);min-width:0}
.divider{height:1px;background:var(--border);margin:24px 0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:9px 15px;border:1px solid var(--border);background:var(--surface);border-radius:8px;font-size:12px;font-weight:580;white-space:nowrap;transition:background .16s,border-color .16s,box-shadow .16s,transform .16s}
.btn:hover{background:var(--surface-hover);border-color:var(--accent-line)}.btn:active{transform:translateY(1px)}
.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 3px 8px #6551cc20}.btn.primary:hover{background:var(--accent-hover)}
[data-theme="dark"] .btn.primary,[data-theme="dark"] .send-btn{color:#19142c}
.btn.soft{background:var(--accent-soft);color:var(--accent);border-color:transparent}.btn.soft:hover{border-color:var(--accent-line)}
.btn.small{min-height:31px;padding:5px 10px;font-size:11px}.btn.ghost{background:transparent;border-color:transparent;box-shadow:none;color:var(--muted)}.btn.ghost:hover{background:var(--surface-hover);color:var(--ink)}
.btn.danger{color:#c36060;background:var(--rose-soft);border-color:transparent}
.text-btn{font-size:12px;color:var(--accent);font-weight:580;display:inline-flex;align-items:center;gap:7px;padding:3px 0;white-space:nowrap}.text-btn:hover{color:var(--accent-hover)}
.icon-btn{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;flex-shrink:0;color:var(--muted);transition:background .16s,color .16s}
.icon-btn:hover{background:var(--surface-hover);color:var(--ink)}.icon-btn.active{background:var(--accent-soft);color:var(--accent)}.icon-btn.pinned{color:#ba9350}.icon-btn.pinned svg{fill:#ba935022}
.tag{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:3px 8px;line-height:1.55;border-radius:5px;background:var(--surface-hover);color:var(--muted);font-size:10px;font-weight:550;white-space:nowrap}
.tag.green{background:var(--positive-soft);color:var(--positive)}.tag.violet{background:var(--accent-soft);color:var(--accent)}.tag.blue{background:var(--blue-soft);color:var(--blue)}.tag.orange{background:var(--orange-soft);color:var(--orange)}.tag.rose,.tag.red{background:var(--rose-soft);color:var(--rose)}
.dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:currentColor;flex-shrink:0}
.input,.select{width:100%;min-height:40px;border:1px solid var(--border);border-radius:8px;padding:9px 12px;background:var(--surface);color:var(--ink);font-size:13px;transition:border-color .16s,box-shadow .16s}
.select{cursor:pointer;padding-right:24px}.input:disabled{background:var(--surface-hover);color:var(--subtle)}
.searchbox{position:relative;display:flex;align-items:center}.searchbox>svg{position:absolute;left:13px;color:var(--muted);pointer-events:none}.searchbox input{padding-left:38px;min-width:0}
.field{display:block;margin-bottom:20px}.field>span,.field>label{display:block;font-size:12px;font-weight:600;margin-bottom:8px}.field .hint{display:block;color:var(--muted);font-size:11px;font-weight:400;line-height:1.7;margin:7px 0 0}.field textarea{resize:vertical;min-height:100px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.avatar{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;background:var(--accent-soft);color:var(--accent)}.avatar svg{width:21px;height:21px}
.avatar.green{background:var(--accent-soft);color:var(--accent)}.avatar.violet{background:#f0ebfc;color:#9170c9}.avatar.blue{background:var(--blue-soft);color:var(--blue)}.avatar.orange{background:var(--orange-soft);color:#c19059}.avatar.rose{background:var(--rose-soft);color:var(--rose)}.avatar.slate{background:var(--surface-hover);color:#8593a7}
[data-theme="dark"] .avatar.violet{background:#332b48;color:#bea3eb}
.avatar.sm{width:32px;height:32px;border-radius:10px;font-size:11px}.avatar.sm svg{width:17px;height:17px}.avatar.lg{width:48px;height:48px;border-radius:14px}.avatar.lg svg{width:25px;height:25px}.avatar.xl{width:64px;height:64px;border-radius:19px}.avatar.xl svg{width:31px;height:31px}
.presence{position:absolute;bottom:-2px;right:-2px;width:10px;height:10px;background:#48ae8b;border:2px solid var(--surface);border-radius:50%}
.user-avatar{display:flex;align-items:center;justify-content:center;background:#e8e5f4;color:#756490;border:2px solid var(--surface);border-radius:50%;width:34px;height:34px;font-size:10px;font-weight:650;flex-shrink:0}
.user-avatar.blue{background:var(--blue-soft);color:var(--blue)}.user-avatar.violet{background:var(--accent-soft);color:var(--accent)}.user-avatar.orange{background:var(--orange-soft);color:var(--orange)}
.progress{height:5px;border-radius:8px;background:var(--surface-hover);overflow:hidden}.progress>span{display:block;height:100%;background:var(--accent);border-radius:inherit}
.count-pill{display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;line-height:21px;min-width:22px;padding:0 5px;background:var(--surface-hover);color:var(--muted);border-radius:5px}
/* Application shell */
.app-shell{display:flex;min-height:100dvh}
.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);z-index:40;padding:0 17px;background:var(--sidebar-bg);color:var(--sidebar-text);display:flex;flex-direction:column;border-right:1px solid #ffffff06}
.brand{height:82px;display:flex;align-items:center;gap:10px;padding:0 10px;flex-shrink:0}
.brand-mark{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#ede8ff;background:linear-gradient(140deg,#8e7ae6,#6550cd);box-shadow:inset 0 1px 0 #ffffff33,0 4px 10px #00000020}
.brand-mark svg{stroke-width:1.8}.brand-word{font-size:23px;letter-spacing:-1.2px;font-weight:650;color:#fff}.brand-dot{color:#b6a6ff}.brand-version{margin-left:4px;font-size:9px;border:1px solid #ffffff1b;border-radius:4px;line-height:17px;padding:0 4px;color:#a3a6b8}
.workspace-switch{display:flex;align-items:center;gap:10px;padding:11px 10px;border:1px solid #ffffff12;background:#ffffff04;border-radius:9px;margin:0 3px 14px;text-align:left;flex-shrink:0;color:#b0b4c4}.workspace-switch:hover{background:#ffffff08}
.workspace-switch strong{display:block;color:#e5e6ed;font-size:11px;line-height:1.5;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-switch small{display:block;color:#969aac;font-size:10px;margin-top:2px}
.workspace-symbol{display:flex;align-items:center;justify-content:center;border:1px solid #ffffff0b;background:#ffffff07;border-radius:7px;width:33px;height:33px;color:#a89acb}
.sidebar-search{display:flex;align-items:center;gap:9px;margin:0 3px 23px;color:#979caf;text-align:left;font-size:11px;padding:7px 9px;border-radius:7px}.sidebar-search:hover{background:#ffffff07}.sidebar-search kbd{margin-left:auto;font-size:9px;color:#8c91a3;background:#ffffff05;border:1px solid #ffffff10;padding:1px 4px;border-radius:4px}
.nav-scroll{overflow:auto;scrollbar-width:none;flex:1;min-height:100px}.nav-label{padding:0 13px;margin:0 0 10px;color:var(--sidebar-muted);font-size:8.5px;letter-spacing:1.45px;font-weight:600}.nav-label.admin{margin-top:25px}
.nav-item{display:flex;align-items:center;gap:11px;min-height:42px;padding:10px 12px;margin-bottom:4px;width:100%;text-align:left;border-radius:7px;color:var(--sidebar-text);font-size:13px;font-weight:450;transition:background .16s,color .16s;position:relative}.nav-item svg{stroke-width:1.65;color:#9298ad}.nav-item:hover{background:#ffffff05;color:#fff}.nav-item.active{background:#a291fa16;color:#d7ceff;font-weight:550}.nav-item.active svg{color:#b5a5ff}.nav-item.active:before{content:"";position:absolute;left:-4px;height:17px;width:3px;background:#a692f4;border-radius:4px}
.nav-item .badge{margin-left:auto;min-width:19px;line-height:19px;border-radius:5px;background:#ffffff0b;color:#bfc1cf;font-size:9px;text-align:center}.nav-new{font-size:8px;margin-left:auto;letter-spacing:.6px;color:#aba0d2;border:1px solid #a393d72b;border-radius:4px;padding:1px 5px}
.sidebar-bottom{padding-top:19px;flex-shrink:0}.sidebar-usage{padding:14px 13px;border:1px solid #ffffff0c;background:linear-gradient(110deg,#ffffff06,#ffffff02);border-radius:10px;margin:0 3px 14px;font-size:10px;color:#a9a9bf}.sidebar-usage .flex>span:first-child{font-size:10px;color:#c4c5d3}.sidebar-sample{font-size:7px;letter-spacing:1px;color:#9492aa;border:1px solid #ffffff10;padding:1px 4px;border-radius:4px}
.usage-numbers{display:flex;align-items:baseline;gap:5px;margin:12px 0 10px}.usage-numbers strong{color:#ecebf4;font-size:16px;letter-spacing:-.3px;font-weight:550}.usage-numbers>span{font-size:10px;color:#9291a6}.sidebar-usage .progress{height:4px;background:#ffffff0b}.sidebar-usage .progress>span{background:#a893eb}.usage-link{padding:10px 0 0;color:#b9afd9;font-size:9px;display:flex;align-items:center;justify-content:space-between;width:100%}
.sidebar-help{display:flex;align-items:center;gap:10px;font-size:11px;color:#a0a6b8;width:100%;padding:8px 12px 17px}.sidebar-help svg:last-child{margin-left:auto;color:#73798b}
.profile{border-top:1px solid #ffffff0b;display:flex;align-items:center;gap:10px;padding:17px 6px;width:100%;text-align:left}.profile .user-avatar{background:#3a3245;color:#d6c1d9;border:1px solid #ffffff13}.profile strong{display:block;font-size:11px;color:#e3e3ed;font-weight:550}.profile small{display:block;font-size:9px;color:#969aac;margin-top:2px}.profile>svg{color:#9a9cb0}
.main-shell{margin-left:var(--sidebar);width:calc(100% - var(--sidebar));min-width:0}
.topbar{height:var(--header);padding:0 34px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:18px;background:var(--surface);position:sticky;top:0;z-index:25}
.breadcrumbs{display:flex;align-items:center;gap:13px;font-size:11px;color:var(--muted);min-width:0}.current{color:var(--ink);font-weight:500}.crumb-slash{color:var(--subtle);font-weight:300;font-size:14px}.top-actions{display:flex;align-items:center;gap:12px}.demo-badge{display:flex;align-items:center;gap:6px;font-size:9px;color:var(--positive);background:var(--positive-soft);padding:4px 8px;border-radius:5px;white-space:nowrap}.demo-badge .dot{width:4px;height:4px}.global-search{display:flex;align-items:center;gap:9px;border:1px solid var(--border);background:var(--surface-alt);color:var(--subtle);padding:8px 10px;border-radius:7px;font-size:11px}.global-search .kbd{margin-left:18px}.kbd{font-family:var(--font);font-size:9px;line-height:17px;padding:0 5px;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--muted);white-space:nowrap}
.top-divider{height:23px;width:1px;background:var(--border);margin:0 3px}.bell-wrap{position:relative}.bell-wrap>i{position:absolute;width:6px;height:6px;right:7px;top:6px;background:#c39053;border:1.5px solid var(--surface);border-radius:50%}.top-avatar{margin-left:3px;width:31px;height:31px;font-size:9px}.mobile-menu,.mobile-shade,.mobile-bottom-nav{display:none}
.page{padding:29px 34px 32px;max-width:1580px;margin:0 auto;animation:pageIn .23s ease both}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.page-heading p{font-size:12px;color:var(--muted);margin-top:7px;line-height:1.8}.heading-actions{display:flex;align-items:center;gap:9px;flex-shrink:0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:28px 0 17px}.section-heading h2{font-size:17px;font-weight:600}.section-heading p{font-size:11px;color:var(--muted);margin-top:4px}.section-heading .searchbox{width:255px}.subtle-label{font-size:12px;color:var(--subtle);font-weight:450;margin-left:6px;letter-spacing:0}
/* Overview */
.dashboard-page{padding-top:23px}
.dashboard-greeting{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.greeting-label{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink);font-weight:500}.wave-icon{color:#bc9155}.dashboard-date{font-size:10px;color:var(--muted);display:flex;align-items:center;gap:7px;text-transform:capitalize}
.dashboard-hero{display:flex;align-items:center;position:relative;min-height:270px;isolation:isolate;overflow:hidden;border:1px solid var(--hero-line);border-radius:15px;background:linear-gradient(115deg,var(--surface) -12%,var(--hero-bg) 80%)}
.hero-copy{padding:30px 32px;flex:1;z-index:2}.hero-eyebrow{display:flex;align-items:center;gap:7px;letter-spacing:1.7px;font-size:8px;font-weight:650;color:#82749e;margin-bottom:14px}.hero-eyebrow .dot{color:#9d8bcc}.hero-copy h1{font-size:35px;font-weight:650;line-height:1.2;letter-spacing:-1.25px;color:var(--hero-ink)}.hero-copy h1>span{color:var(--accent)}.hero-copy p{color:var(--muted);font-size:12px;line-height:1.85;margin-top:12px}.hero-actions{display:flex;gap:11px;margin-top:20px}.hero-actions .btn{font-size:11px;min-height:37px;padding:8px 12px}.hero-actions .primary{flex-direction:row-reverse}.hero-actions .ghost{color:var(--hero-ink);font-weight:500}
.hero-art{position:relative;width:340px;height:280px;flex-shrink:0;margin-right:28px;display:flex;align-items:center;justify-content:center}.hero-art:before{content:"";position:absolute;inset:35px 30px;background:radial-gradient(ellipse,#aa93f13d,transparent 65%);filter:blur(9px)}.orbit{position:absolute;border:1px solid var(--hero-line);border-radius:50%;left:50%;top:48%;transform:translate(-50%,-50%)}.orbit-outer{width:282px;height:282px;border-style:dashed;opacity:.65}.orbit-middle{width:216px;height:216px}.orbit-inner{width:140px;height:140px;background:#ffffff19;box-shadow:0 0 35px #b9a7e210}
.orbit-center{height:88px;width:88px;border-radius:25px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#faf8ff,#e9e1fb);color:#9d83db;border:1px solid #fff;box-shadow:0 11px 30px #8b6bba20,inset 0 -2px 5px #d6c8f02a;position:relative;top:-6px;transform:rotate(-9deg)}.orbit-center svg{stroke-width:1.15;fill:#ae96e112;transform:rotate(9deg)}
.orbit-node{position:absolute;width:49px;height:49px;border-radius:15px;background:var(--surface);display:flex;align-items:center;justify-content:center;box-shadow:0 7px 15px #7364890d;border:1px solid var(--hero-line)}.node-doc{left:42px;top:42px;color:#967ac5;transform:rotate(-11deg)}.node-people{right:44px;top:22px;color:#ac92ce;transform:rotate(12deg)}.node-code{right:17px;top:141px;color:#6e8eaa;transform:rotate(12deg)}.node-mail{left:40px;bottom:32px;color:#ad956f;transform:rotate(-8deg)}.orbit-dot{position:absolute;width:8px;height:8px;border-radius:50%;background:#b9a2dc;border:2px solid var(--hero-bg)}.dot-one{right:44px;bottom:33px}.dot-two{left:12px;top:138px;width:6px;height:6px;background:#bdc8dc}.hero-caption{position:absolute;bottom:13px;left:50%;transform:translateX(-50%);background:var(--surface);box-shadow:0 3px 8px #73648906;border:1px solid var(--hero-line);border-radius:20px;white-space:nowrap;padding:5px 11px;font-size:8px;color:var(--muted);display:flex;align-items:center;gap:6px}.hero-caption .dot{color:#79a791;width:4px;height:4px}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:25px}.dashboard-stats{margin-top:20px;margin-bottom:0;gap:15px}.stat-card{padding:17px 19px 15px;min-width:0}.stat-label{font-size:12px;color:var(--muted)}.stat-icon{color:var(--subtle);display:flex;align-items:center;justify-content:center;width:25px;height:25px}.stat-value{font-size:29px;line-height:1.35;letter-spacing:-1px;font-weight:600;margin:8px 0 7px;font-variant-numeric:tabular-nums}.stat-meta{font-size:10px;color:var(--muted);display:flex;align-items:center;gap:7px;min-height:18px;flex-wrap:wrap}.stat-foot-icon{display:flex;color:var(--positive)}.stat-link{font-size:9px;gap:7px}.positive{color:var(--positive)}.trend{color:var(--positive);display:inline-flex;align-items:center;gap:3px;font-size:9px;font-weight:550}.mini-avatars{display:flex;padding-left:3px}.mini-avatars i{width:20px;height:20px;border-radius:50%;border:1.5px solid var(--surface);margin-left:-3px;background:#e7e1ef;color:#8c75a2;display:flex;align-items:center;justify-content:center;font-size:6px;font-weight:700;font-style:normal}.mini-avatars i:nth-child(2){background:#e5e9f5;color:#7e93bb}.mini-avatars i:nth-child(3){background:#f1e8df;color:#b39572}
.quick-agent-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.quick-agent{padding:17px 18px;text-align:left;transition:transform .2s,box-shadow .2s,border-color .2s;min-width:0}.quick-agent:hover{transform:translateY(-3px);border-color:var(--accent-line);box-shadow:var(--shadow-lg)}.quick-agent-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.quick-agent .avatar{width:37px;height:37px;border-radius:11px}.quick-agent .avatar svg{width:19px;height:19px}.quick-agent-arrow{color:var(--subtle);opacity:.8}.quick-agent h3{font-size:13px;letter-spacing:-.1px;font-weight:620}.quick-agent p{font-size:11px;color:var(--muted);margin-top:4px}.quick-agent-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:19px;gap:6px}.quick-agent-bottom>.tag{font-size:9px;padding:2px 6px}.quick-agent-bottom>span:last-child{display:inline-flex;align-items:center;gap:4px;font-size:9px;color:var(--subtle)}
.dashboard-lower{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(255px,1fr);gap:20px;margin-top:25px}.panel-heading{padding:19px 20px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px}.panel-heading h2{font-size:14px;letter-spacing:-.2px}.attention-icon{display:flex;color:var(--muted)}.attention-tabs{display:flex;gap:24px;margin:0 20px;border-bottom:1px solid var(--border)}.attention-tabs>button{padding:7px 0 11px;display:flex;align-items:center;gap:6px;border-bottom:2px solid transparent;font-size:10px;color:var(--muted);margin-bottom:-1px}.attention-tabs>button.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:550}.attention-tabs span{display:inline-flex;align-items:center;justify-content:center;min-width:16px;line-height:16px;padding:0 4px;background:var(--surface-hover);font-size:8px;border-radius:4px}.attention-tabs .active span{background:var(--accent-soft)}
.attention-row{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:15px 20px;border-bottom:1px solid var(--border);transition:background .16s}.attention-row:last-child{border-bottom:0}.attention-row:hover{background:var(--surface-alt)}.attention-row strong{display:block;font-size:12px;font-weight:550;line-height:1.6}.attention-row small{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:9px;margin-top:2px}.attention-row small>span{color:var(--subtle)}.attention-row-arrow{color:var(--subtle)}.panel-footer-link{width:100%;display:flex;align-items:center;justify-content:center;gap:7px;font-size:10px;padding:13px;color:var(--muted);border-top:1px solid var(--border);border-radius:0 0 var(--r) var(--r)}.panel-footer-link:hover{background:var(--surface-alt);color:var(--accent)}
.pulse-panel{display:flex;flex-direction:column}.pulse-panel .panel-heading{padding-bottom:8px}.pulse-number{display:flex;align-items:center;gap:12px;padding:0 20px}.pulse-number strong{font-size:27px;font-weight:600;letter-spacing:-.8px}.pulse-description{font-size:9px;color:var(--muted);padding:0 20px;margin-top:2px}.pulse-chart{display:flex;gap:16px;margin:18px 23px 0;height:133px;align-items:flex-end;padding-bottom:23px;position:relative;flex:1;min-height:110px}.pulse-chart:before{content:"";position:absolute;inset:0 0 24px;border-bottom:1px solid var(--border);background:repeating-linear-gradient(to top,transparent 0,transparent 35px,var(--border) 36px,var(--border) 37px);opacity:.5}.pulse-column{position:relative;flex:1;height:100%;display:flex;align-items:flex-end;justify-content:center;min-width:0}.pulse-bar{height:var(--bar);width:100%;max-width:26px;position:relative;border-radius:4px 4px 0 0;background:var(--accent-line);min-height:3px}.pulse-bar.selected{background:var(--accent)}.pulse-bar:hover{background:var(--accent)}.pulse-bar span{opacity:0;position:absolute;top:-20px;font-size:9px;left:50%;transform:translateX(-50%);color:var(--accent)}.pulse-bar:hover span{opacity:1}.pulse-column small{position:absolute;bottom:-21px;font-size:8px;color:var(--subtle)}.pulse-panel .panel-footer-link{margin-top:12px}.dashboard-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px;font-size:8px;color:var(--subtle)}.dashboard-footer>span:first-child{display:flex;align-items:center;gap:6px}.dashboard-footer .dot{color:var(--positive);width:4px;height:4px}.dashboard-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;padding:33px 15px;gap:8px;color:var(--muted);font-size:11px;min-height:219px}.dashboard-empty svg{color:var(--positive)}.dashboard-empty strong{font-weight:500}
/* Agent library */
.library-feature{border-radius:15px;border:1px solid #555272;background:linear-gradient(110deg,#292b43,#3e3659);color:#fff;display:flex;justify-content:space-between;align-items:center;overflow:hidden;min-height:223px}.feature-content{padding:29px 32px}.feature-eyebrow{font-size:8px;letter-spacing:1.7px;color:#b8aacd;font-weight:600}.feature-content h2{font-size:26px;letter-spacing:-.7px;font-weight:580;margin-top:10px}.feature-content p{font-size:11px;color:#b8b6cb;margin-top:8px;line-height:1.9}.feature-button{margin-top:20px;background:#ffffff10;border-color:#ffffff1c;color:#ede9fa;flex-direction:row-reverse;font-size:11px;min-height:36px}.feature-button:hover{background:#ffffff18;border-color:#ffffff30}.feature-art{position:relative;width:330px;height:220px;margin-right:40px;display:flex;align-items:center;justify-content:center}.feature-art:before{content:"";position:absolute;width:260px;height:260px;border:1px dashed #ffffff16;border-radius:50%}.feature-art-ring{position:absolute;width:180px;height:180px;border:1px solid #ffffff18;border-radius:50%}.feature-art-core{width:85px;height:85px;border-radius:25px;background:linear-gradient(135deg,#8b78b370,#65548940);border:1px solid #c5aad84d;box-shadow:0 0 50px #b497dc12;display:flex;align-items:center;justify-content:center;color:#c2acdf;transform:rotate(-9deg)}.feature-art-core svg{stroke-width:1.1}.feature-chip{position:absolute;display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:13px;background:#3f3955;border:1px solid #ffffff22;color:#c3afdb;box-shadow:0 7px 15px #0000000b}.feature-chip.c1{top:18px;left:49px;transform:rotate(-11deg)}.feature-chip.c2{bottom:19px;left:26px;transform:rotate(9deg)}.feature-chip.c3{right:19px;top:97px;transform:rotate(12deg)}
.library-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid var(--border)}.chip-tabs{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.chip-tab{display:flex;align-items:center;gap:6px;font-size:11px;padding:7px 12px;border:1px solid transparent;border-radius:7px;color:var(--muted);white-space:nowrap}.chip-tab:hover{background:var(--surface-hover)}.chip-tab.active{border-color:var(--accent-line);color:var(--accent);background:var(--accent-soft);font-weight:550}.chip-tab>span{font-size:9px;opacity:.75}.result-count{font-size:10px;color:var(--subtle);white-space:nowrap}
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.agent-card{padding:22px;display:flex;flex-direction:column;transition:border-color .2s,box-shadow .2s,transform .2s}.agent-card:hover{border-color:var(--accent-line);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.agent-card-title{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:19px}.agent-card h3{font-size:14px;letter-spacing:-.2px}.agent-card-title .tag{font-size:9px}.agent-desc{font-size:11px;line-height:1.9;color:var(--muted);margin:10px 0 20px;min-height:44px}.agent-card-meta{display:flex;align-items:center;gap:15px;padding-bottom:17px;border-bottom:1px solid var(--border);margin-top:auto}.agent-card-meta>span{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:10px}.agent-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:14px;gap:8px}.agent-card-footer .btn{font-size:11px;min-height:34px;padding:7px 11px}.agent-create-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;min-height:275px;border:1px dashed var(--accent-line);background:var(--surface-alt);border-radius:14px;text-align:center;padding:25px}.agent-create-card>span{display:flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent);width:49px;height:49px;border-radius:15px}.agent-create-card strong{font-size:12px}.agent-create-card p{font-size:11px;color:var(--muted);line-height:1.8}.agent-create-card:hover{background:var(--accent-soft)}
/* Chat workspace */
.workspace-page{height:calc(100dvh - var(--header));min-height:720px;display:flex;flex-direction:column;padding-bottom:25px}.workspace-page .page-heading{margin-bottom:23px}.workspace-page h1{font-size:25px}.workspace-stage{display:grid;grid-template-columns:228px minmax(0,1fr);gap:17px;flex:1;min-height:0;position:relative}.agent-list-panel{display:flex;flex-direction:column;overflow:hidden}.list-head{padding:20px 15px 0}.list-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.list-title h3{font-size:12px}.list-head .input{min-height:34px;padding-top:7px;padding-bottom:7px;font-size:11px;background:var(--surface-alt)}
.tabs{display:flex;align-items:center;gap:2px;padding:3px;background:var(--surface-hover);border-radius:7px}.tab{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;border-radius:5px;padding:6px 7px;color:var(--muted);font-size:10px;font-weight:500}.tab.active{background:var(--surface);color:var(--ink);box-shadow:0 2px 4px #18182f09}.agent-list{padding:10px;flex:1;overflow:auto}.agent-list-divider{font-size:8px;letter-spacing:1.3px;color:var(--subtle);font-weight:600;padding:14px 7px 13px}.agent-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:12px 9px;border:1px solid transparent;border-radius:9px;position:relative;margin-bottom:6px;transition:background .15s}.agent-item:hover{background:var(--surface-hover)}.agent-item.selected{background:var(--accent-soft);border-color:var(--accent-line)}.agent-item .avatar{width:33px;height:33px;border-radius:10px}.agent-item .avatar svg{width:17px;height:17px}.agent-item strong{font-size:11px;line-height:1.5;display:block;font-weight:570}.agent-item p{font-size:9px;color:var(--muted);margin-top:3px;line-height:1.5}.selected-dot{width:4px;height:4px;border-radius:50%;background:var(--accent);position:absolute;right:7px;top:13px}.list-bottom{padding:14px 13px;border-top:1px solid var(--border)}.list-bottom .btn{width:100%;background:var(--surface-alt);border-style:dashed;font-size:10px;min-height:35px;color:var(--muted)}
.chat-panel{display:flex;flex-direction:column;overflow:hidden;min-width:0}.chat-header{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:76px;padding:15px 23px;border-bottom:1px solid var(--border);flex-shrink:0}.chat-header h3{font-size:13px;font-weight:590}.chat-header .status{display:flex;align-items:center;gap:5px;font-size:9px;color:var(--muted);margin-top:3px}.chat-header .status .dot{color:var(--positive);width:4px;height:4px}.status-separator{margin:0 4px;color:var(--subtle)}.chat-head-actions{display:flex;align-items:center;gap:4px}.chat-private{display:flex;align-items:center;gap:5px;font-size:9px;color:var(--subtle);margin-right:10px}.chat-feed{overflow-y:auto;flex:1;padding:24px 30px;scroll-behavior:smooth;overscroll-behavior:contain}.welcome{max-width:600px;margin:0 auto;padding-top:15px}.welcome-symbol{position:relative;display:flex;align-items:center;justify-content:center;margin-bottom:23px}.welcome-orbit{display:flex;align-items:center;justify-content:center;width:66px;height:66px;border-radius:22px;background:linear-gradient(140deg,var(--surface),var(--accent-soft));border:1px solid var(--accent-line);color:var(--accent);box-shadow:0 7px 17px #8876c90d;position:relative;transform:rotate(-7deg)}.welcome-orbit:before{content:"";position:absolute;inset:-7px;border:1px dashed var(--accent-line);border-radius:26px;transform:rotate(13deg)}.welcome-orbit svg{transform:rotate(7deg);stroke-width:1.3}.welcome-spark{position:absolute;width:4px;height:4px;transform:rotate(45deg);background:var(--accent-line);top:12px;left:calc(50% - 60px)}.welcome-spark.two{left:calc(50% + 61px);top:51px;width:6px;height:6px}.welcome .eyebrow{text-align:center;font-size:8px;letter-spacing:1.8px;color:var(--accent);opacity:.65;margin-bottom:11px}.welcome h2{text-align:center;font-size:31px;line-height:1.33;letter-spacing:-1px;font-weight:610}.welcome-desc{text-align:center;font-size:12px;color:var(--muted);line-height:1.85;margin:13px auto 25px;max-width:390px}
.prompt-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.prompt-card{display:grid;grid-template-columns:30px minmax(0,1fr);gap:2px 12px;align-items:center;min-height:81px;position:relative;text-align:left;border:1px solid var(--border);border-radius:11px;padding:16px 18px;background:var(--surface);transition:border-color .2s,transform .2s,box-shadow .2s}.prompt-card:hover{border-color:var(--accent-line);background:var(--surface-alt);transform:translateY(-2px);box-shadow:var(--shadow)}.prompt-icon{display:flex;align-items:center;justify-content:center;width:29px;height:29px;background:var(--accent-soft);color:var(--accent);border-radius:8px;grid-column:1;grid-row:1 / span 2;margin-bottom:0}.prompt-card:nth-child(2) .prompt-icon{background:var(--blue-soft);color:var(--blue)}.prompt-card:nth-child(3) .prompt-icon{background:var(--orange-soft);color:var(--orange)}.prompt-card:nth-child(4) .prompt-icon{background:var(--positive-soft);color:var(--positive)}.prompt-card strong{grid-column:2;display:block;font-size:12px;font-weight:560;align-self:end}.prompt-card p{grid-column:2;font-size:10px;color:var(--muted);margin-top:0;align-self:start;line-height:1.6}.prompt-card>svg{position:absolute;right:9px;top:9px;width:11px;height:11px;color:var(--subtle);opacity:0}.prompt-card:hover>svg{opacity:.65}.welcome-hint{display:flex;justify-content:center;align-items:center;gap:6px;font-size:9px;color:var(--subtle);margin:21px 0 2px}.workspace-tip{display:flex;gap:8px;color:var(--muted);font-size:11px;background:var(--surface-alt);padding:13px;border-radius:8px;line-height:1.8}
.composer-wrap{padding:0 24px 13px;background:var(--surface);flex-shrink:0}.composer{padding:15px 15px 11px;border:1px solid var(--accent-line);border-radius:13px;box-shadow:0 2px 7px #544e8007;background:var(--surface);max-width:830px;margin:0 auto;transition:box-shadow .2s,border-color .2s}.composer:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.composer textarea{border:0;outline:0!important;box-shadow:none!important;padding:0;resize:none;width:100%;font-size:13px;line-height:1.8;min-height:47px;height:47px;max-height:135px;color:var(--ink);background:transparent}.composer-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px}.composer-actions .icon-btn{width:29px;height:29px}.composer-divider{height:14px;width:1px;background:var(--border);margin:0 6px}.model-select{border:0;border-radius:5px;background:var(--surface-alt);padding:5px 6px;font-size:10px;color:var(--muted);max-width:160px;cursor:pointer;min-width:0}.char-count{font-size:9px;color:var(--subtle)}.send-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:var(--accent);color:white;border-radius:10px;flex-shrink:0}.send-btn:hover{background:var(--accent-hover)}.composer-note{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:var(--subtle);margin:10px auto 0;gap:8px;max-width:830px}.composer-note>span{display:flex;align-items:center;gap:4px}.composer-note kbd{font-size:9px;font-family:var(--font)}.attachment-chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:9px}.attachment-chip{display:inline-flex;align-items:center;gap:5px;max-width:100%;font-size:10px;color:var(--accent);background:var(--accent-soft);border:1px solid var(--accent-line);padding:4px 7px;border-radius:6px;overflow-wrap:anywhere}.attachment-chip button{padding:2px;display:flex}.mobile-agent-trigger{display:none}.agent-shade{display:none}
.detail-panel{display:none}.detail-panel.open{display:flex;flex-direction:column;position:fixed;right:20px;top:85px;bottom:22px;width:290px;z-index:51;overflow:auto;box-shadow:var(--shadow-lg);animation:drawerIn .2s ease}.detail-shade{position:fixed;inset:var(--header) 0 0 var(--sidebar);background:#1e18341f;backdrop-filter:blur(2px);z-index:50}.detail-head{padding:20px 18px 0;display:flex;align-items:center;justify-content:space-between;gap:8px}.detail-head h3{font-size:12px}.detail-profile{text-align:center;margin:0 20px;padding:24px 0;border-bottom:1px solid var(--border)}.detail-profile .avatar{margin:0 auto 13px}.detail-profile h3{font-size:14px}.detail-profile p{font-size:11px;color:var(--muted);line-height:1.85;margin:7px 0 13px}.detail-section{padding:21px 20px;border-bottom:1px solid var(--border)}.detail-section h4{font-size:11px;margin-bottom:14px}.capability{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted);margin-bottom:12px}.capability:last-child{margin-bottom:0}.capability>svg{color:var(--accent)}.doc-row{display:flex;align-items:center;gap:9px;margin-top:16px}.doc-icon{display:flex;align-items:center;justify-content:center;background:var(--surface-alt);border:1px solid var(--border);color:var(--muted);width:32px;height:37px;border-radius:7px;flex-shrink:0}.doc-row strong{display:block;font-size:10px;font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-row small{display:block;color:var(--subtle);font-size:9px;margin-top:2px}.permission-info{display:flex;gap:8px;padding:12px;background:var(--accent-soft);color:var(--muted);border-radius:8px;font-size:10px;line-height:1.8}.permission-info svg{color:var(--accent);margin-top:2px}.detail-footer{padding:17px 20px;margin-top:auto}.detail-footer .btn{width:100%;font-size:11px}
.chat-date{display:flex;align-items:center;gap:15px;color:var(--subtle);font-size:10px;margin:0 0 25px}.chat-date:before,.chat-date:after{content:"";flex:1;height:1px;background:var(--border)}.message{display:flex;align-items:flex-start;gap:11px;margin-bottom:28px;max-width:830px;margin-left:auto;margin-right:auto}.message .avatar{width:30px;height:30px}.message .avatar svg{width:17px;height:17px}.message.user{justify-content:flex-end}.bubble-wrap{max-width:90%;min-width:0}.message.user .bubble-wrap{max-width:85%}.message-meta{display:flex;align-items:center;gap:9px;font-size:10px;color:var(--subtle);margin-bottom:8px}.message-meta strong{color:var(--ink);font-size:11px;font-weight:580}.bubble{font-size:13px;line-height:1.95;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink)}.message.user .bubble{background:var(--accent-soft);padding:12px 17px;border:1px solid var(--accent-line);border-radius:13px 4px 13px 13px}.message.user .message-meta{justify-content:flex-end}.message-actions{display:flex;gap:3px;margin-top:11px}.message-actions .icon-btn{width:29px;height:29px}.demo-inline{display:inline-flex;align-items:center;gap:5px;font-size:9px;color:var(--subtle);margin-top:10px;border-radius:4px;padding:3px 6px;background:var(--surface-alt)}.typing{display:flex;gap:5px;padding:13px 0}.typing i{width:5px;height:5px;border-radius:50%;background:var(--accent);animation:typing 1.1s ease infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
/* Tables, forms and administration */
.toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}.toolbar .searchbox{width:290px}.filter-group{display:flex;align-items:center;gap:8px}.filter-group .select{width:auto;font-size:11px;min-height:38px}.table-wrap{overflow-x:auto;border-radius:var(--r)}.data-table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}.data-table th{position:relative;padding:14px 20px;font-size:10px;font-weight:550;color:var(--muted);background:var(--surface-alt);border-bottom:1px solid var(--border)}.data-table td{padding:16px 20px;border-bottom:1px solid var(--border);font-size:11px;color:var(--muted)}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:var(--surface-alt)}.data-table .user-cell{display:flex;align-items:center;gap:11px}.user-cell strong{display:block;color:var(--ink);font-size:12px;font-weight:550}.user-cell small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.checkbox{width:15px;height:15px;accent-color:var(--accent);cursor:pointer}.table-footer{display:flex;align-items:center;justify-content:space-between;padding:15px 20px;font-size:10px;gap:12px;color:var(--muted);border-top:1px solid var(--border)}.table-footer>span:last-child{display:flex;align-items:center;gap:6px}.selection-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:8px;margin-bottom:17px;color:var(--accent);font-size:12px;gap:10px}.notice{padding:15px 17px;background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:10px;display:flex;align-items:flex-start;gap:10px;font-size:11px;color:var(--muted);line-height:1.9;margin-bottom:25px}.notice>svg{margin-top:3px;color:var(--accent)}.notice.neutral{background:var(--surface-alt);border-color:var(--border)}.notice.neutral>svg{color:var(--muted)}.section-label{font-size:13px;font-weight:600;margin-bottom:17px}.bottom-note{display:flex;align-items:flex-start;gap:7px;font-size:10px;line-height:1.8;color:var(--subtle);margin-top:22px}.bottom-note svg{margin-top:2px}
.permission-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:24px}.role-panel{padding:9px;height:fit-content}.role-item{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:16px 14px;border-radius:8px;border:1px solid transparent;color:var(--muted);margin-bottom:5px}.role-item:last-child{margin-bottom:0}.role-item.active{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent)}.role-item strong{display:block;font-size:12px;font-weight:580}.role-item small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.role-settings{padding:26px 28px}.role-settings-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:22px;border-bottom:1px solid var(--border);gap:12px}.role-settings-head h3{font-size:16px}.permission-group{padding:25px 0 3px}.permission-group-title{font-size:9px;letter-spacing:1.1px;color:var(--subtle);margin-bottom:9px;font-weight:600}.permission-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0}.permission-row strong{display:block;font-size:12px;font-weight:550}.permission-row p{font-size:11px;color:var(--muted);margin-top:4px}.switch{display:inline-flex;position:relative;width:35px;height:21px;flex-shrink:0;cursor:pointer}.switch input{position:absolute;inset:0;margin:0;width:100%;height:100%;opacity:0;z-index:2;cursor:pointer}.switch .track{position:absolute;inset:0;background:var(--border);border-radius:20px;transition:background .2s}.switch .track:after{content:"";position:absolute;left:3px;top:3px;width:15px;height:15px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0002;transition:transform .2s}.switch input:checked+.track{background:var(--accent)}.switch input:checked+.track:after{transform:translateX(14px)}.switch input:disabled+.track{opacity:.5}.switch input:focus-visible+.track{outline:3px solid var(--accent-line);outline-offset:3px}.settings-footer{display:flex;justify-content:flex-end;gap:9px;border-top:1px solid var(--border);padding-top:22px;margin-top:23px}.permissions-caption{font-size:11px;color:var(--muted);margin-top:18px}
.connection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.provider-card{padding:23px;display:flex;flex-direction:column}.provider-logo{display:flex;align-items:center;justify-content:center;width:45px;height:45px;background:#f6ede5;color:#b99170;border:1px solid #e9d9c936;border-radius:12px}.provider-logo.openai{background:var(--positive-soft);color:var(--positive)}.provider-logo.gemini{background:var(--blue-soft);color:var(--blue)}[data-theme="dark"] .provider-logo:not(.openai):not(.gemini){background:#3c332e;color:#dbb190}.provider-card h3{font-size:15px;margin-top:20px}.provider-card p{font-size:10px;color:var(--muted);margin-top:6px}.provider-meta{display:grid;gap:14px;border-top:1px solid var(--border);padding:18px 0;margin-top:22px}.provider-meta>div{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;color:var(--muted)}.provider-meta strong{font-weight:500;color:var(--ink)}.connection-add{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;min-height:265px;border:1px dashed var(--accent-line);border-radius:14px;background:var(--surface-alt);color:var(--muted);padding:24px;text-align:center}.connection-add>svg{color:var(--accent)}.connection-add strong{font-size:12px;color:var(--ink)}.connection-add span{font-size:10px}.connection-add:hover{background:var(--accent-soft)}
.charts-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:22px;margin-bottom:25px}.chart-card{padding:25px}.chart-card h3{font-size:13px}.chart{height:220px;display:flex;gap:22px;align-items:flex-end;position:relative;padding:0 8px 28px;margin-top:32px;border-bottom:1px solid var(--border)}.chart:before{content:"";position:absolute;inset:0 0 28px;pointer-events:none;background:repeating-linear-gradient(to top,transparent 0,transparent 43px,var(--border) 44px,var(--border) 45px);opacity:.6}.chart-col{flex:1;position:relative;height:100%;display:flex;align-items:flex-end;justify-content:center;min-width:0}.chart-bar{height:var(--h);width:100%;max-width:39px;min-height:4px;border-radius:6px 6px 0 0;background:var(--accent-line);position:relative;z-index:1;transition:height .3s}.chart-bar:hover,.chart-bar.highlight{background:var(--accent)}.chart-bar .value{position:absolute;top:-23px;left:50%;transform:translateX(-50%);font-size:10px;color:var(--accent);opacity:0}.chart-bar:hover .value{opacity:1}.chart-col .xlabel{position:absolute;bottom:-23px;font-size:10px;color:var(--muted);white-space:nowrap}.donut-wrap{display:flex;align-items:center;justify-content:center;padding:28px 0}.donut{width:151px;height:151px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:conic-gradient(var(--accent) 0 65%,#b8acd9 65% 86%,var(--accent-soft) 86% 100%)}.donut-hole{width:116px;height:116px;border-radius:50%;background:var(--surface);display:flex;align-items:center;justify-content:center;flex-direction:column}.donut-hole strong{font-size:25px;letter-spacing:-.5px}.donut-hole span{font-size:9px;color:var(--muted);margin-top:3px}.legend{display:flex;align-items:center;justify-content:center;gap:16px;color:var(--muted);font-size:10px}.legend .dot{width:7px;height:7px}.legend>span:first-child .dot{background:var(--accent)}.legend>span:nth-child(2) .dot{background:#b8acd9}.legend>span:nth-child(3) .dot{background:var(--accent-line)}.activity-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:10px}.activity-panel{padding:23px}
/* Tasks */
.task-summary{display:flex;gap:38px;align-items:center;margin-bottom:26px;padding:4px 0 19px;border-bottom:1px solid var(--border)}.task-summary>div{display:flex;align-items:center;gap:11px}.task-summary strong{font-size:20px;font-weight:570}.task-summary .tag{background:none;padding:0;font-size:11px}.segmented{display:flex;align-items:center;gap:2px;background:var(--surface);border:1px solid var(--border);padding:3px;border-radius:8px}.segmented button{display:flex;align-items:center;gap:6px;border-radius:5px;color:var(--muted);font-size:10px;padding:7px 10px}.segmented button.active{background:var(--accent-soft);color:var(--accent)}.task-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.task-column{padding:13px 11px;background:var(--surface-hover);border:1px solid var(--border);border-radius:12px;min-height:480px}.task-column-head{display:flex;align-items:center;gap:6px;padding:0 4px 13px}.task-column-head h2{font-size:11px;font-weight:600;letter-spacing:0}.task-column-head>.tag{padding:3px;background:none}.task-column-head>.tag .dot{width:6px;height:6px}.task-column-head>.count-pill{background:var(--surface);font-size:9px;min-width:18px;line-height:19px;margin-left:3px}.task-column-head .icon-btn{margin-left:auto;width:25px;height:25px}.task-card{padding:14px 16px 15px;background:var(--surface);border:1px solid var(--border);border-radius:10px;margin-bottom:13px;box-shadow:var(--shadow);transition:box-shadow .16s,border-color .16s}.task-card:hover{border-color:var(--accent-line);box-shadow:var(--shadow-lg)}.task-card>.flex .icon-btn{width:23px;height:23px}.task-id{font-size:9px;color:var(--subtle);letter-spacing:.2px}.task-card h3{font-size:12px;line-height:1.75;margin:8px 0}.task-card h3 button{padding:0;text-align:left;font-weight:580}.task-card p{font-size:10px;line-height:1.85;color:var(--muted)}.task-agent{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--muted);margin-top:16px}.task-agent .avatar{width:24px;height:24px;border-radius:7px}.task-agent svg{width:13px;height:13px}.task-card-footer{border-top:1px solid var(--border);margin-top:15px;padding-top:12px;display:flex;align-items:center;justify-content:space-between;gap:6px}.task-card-footer>span{display:flex;align-items:center;gap:4px;font-size:9px;color:var(--subtle)}.task-card-footer .btn{font-size:9px;min-height:27px;padding:4px 6px}.task-card-footer .btn svg{width:12px}.task-empty{border:1px dashed var(--border);border-radius:8px;padding:27px 15px;text-align:center;color:var(--subtle);font-size:11px}.task-list-row{display:flex;align-items:center;gap:15px;padding:20px;border-bottom:1px solid var(--border)}.task-list-row:last-child{border-bottom:0}.task-list-row p{font-size:10px;color:var(--muted);margin-top:4px}.row-title{font-size:12px;font-weight:550;text-align:left;padding:0}.row-title:hover{color:var(--accent)}
/* Knowledge and history */
.folder-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:31px}.folder-card{padding:21px;text-align:left;position:relative;transition:border-color .2s,background .2s}.folder-card:hover,.folder-card.selected{border-color:var(--accent-line);background:var(--surface-alt)}.folder-card>.avatar{margin-bottom:20px}.folder-card>svg{position:absolute;right:20px;top:24px;color:var(--subtle)}.folder-card strong{display:block;font-size:13px}.folder-card p{font-size:10px;color:var(--muted);margin-top:6px}.folder-card p span{margin:0 4px;color:var(--subtle)}.file-badge{width:36px;height:41px;display:flex;align-items:center;justify-content:center;background:var(--surface-hover);color:var(--muted);border:1px solid var(--border);border-radius:7px;flex-shrink:0;font-size:8px;font-weight:650}.file-badge.pdf{background:var(--rose-soft);color:var(--rose);border-color:transparent}.file-badge.docx{background:var(--blue-soft);color:var(--blue);border-color:transparent}.file-badge.xlsx{background:var(--positive-soft);color:var(--positive);border-color:transparent}.file-link{display:flex;align-items:center;gap:12px;text-align:left;padding:0}.file-link strong{font-size:11px;font-weight:550;color:var(--ink);display:block}.file-link small{display:block;font-size:9px;color:var(--subtle);margin-top:4px}.history-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:22px 24px;border-bottom:1px solid var(--border)}.history-row:last-child{border-bottom:0}.history-row:hover{background:var(--surface-alt)}.history-row h3{font-size:13px;margin-bottom:5px}.history-row p{font-size:11px;color:var(--muted)}
/* Dialogs, palette, feedback */
.overlay-backdrop{position:fixed;inset:0;z-index:100;background:#15112266;backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:25px;animation:fadeIn .16s ease}.modal{width:100%;max-width:570px;max-height:90dvh;overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:17px;box-shadow:0 30px 100px #14112535;outline:none;animation:modalIn .2s ease}.modal.wide{max-width:760px}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:21px 26px;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:2;background:var(--surface);border-radius:17px 17px 0 0;gap:15px}.modal-head h2{font-size:17px;letter-spacing:-.4px}.modal-body{padding:25px 26px}.modal-foot{padding:18px 26px;display:flex;align-items:center;justify-content:flex-end;gap:9px;border-top:1px solid var(--border);background:var(--surface);position:sticky;bottom:0;z-index:2}.modal-intro{font-size:12px;color:var(--muted);line-height:1.85;margin-bottom:23px}.modal .notice{font-size:11px}.modal .check-label{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--muted);padding:7px 0}.color-options{display:flex;align-items:center;gap:9px}.color-choice{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:2px solid transparent;border-radius:50%;padding:4px}.color-choice.selected{border-color:var(--accent)}.color-choice span{width:18px;height:18px;border-radius:50%}.file-detail{display:grid;grid-template-columns:1fr 1fr;gap:16px;background:var(--surface-alt);padding:17px;border:1px solid var(--border);border-radius:9px;margin:23px 0}.file-detail p{font-size:10px;color:var(--muted)}.file-detail strong{display:block;font-size:11px;font-weight:500;margin-top:5px}.preview-document{background:var(--surface-alt);border:1px solid var(--border);border-radius:9px;padding:20px;font-size:12px;line-height:1.9;color:var(--muted);white-space:pre-line}.muted-block,.more-panel{background:var(--surface-alt);border:1px solid var(--border);border-radius:9px;padding:17px;font-size:11px;line-height:1.9;color:var(--muted)}.more-panel{border-style:dashed}.agent-toggle-list{display:grid;grid-template-columns:1fr 1fr;gap:4px 18px;margin-top:8px}.query-text{background:var(--accent-soft);padding:13px;font-size:12px;border-radius:8px;color:var(--muted);margin-top:12px}.help-grid{display:grid;gap:23px}.help-item{display:flex;align-items:flex-start;gap:14px}.help-item>svg{color:var(--accent);margin-top:3px}.help-item strong{font-size:13px;display:block;margin-bottom:4px}.help-item p{font-size:12px;color:var(--muted);line-height:1.85}
.command-box{max-width:600px;align-self:flex-start;margin-top:min(14vh,140px)}.command-input{display:flex;align-items:center;gap:12px;padding:19px 21px;border-bottom:1px solid var(--border);color:var(--muted)}.command-input input{padding:6px 0;border:0;outline:0;box-shadow:none;background:transparent;color:var(--ink);flex:1;min-width:0;font-size:14px}.command-results{padding:9px;max-height:415px;overflow:auto}.command-result{display:flex;align-items:center;gap:12px;text-align:left;width:100%;padding:13px 14px;font-size:12px;border-radius:7px;color:var(--muted)}.command-result:hover,.command-result:focus-visible{background:var(--accent-soft);color:var(--accent);outline:none}.command-result .tag{margin-left:auto;font-size:9px}.command-result>svg:last-child{margin-left:auto;color:var(--subtle)}.command-hint{font-size:10px;color:var(--subtle);border-top:1px solid var(--border);padding:13px 23px}
.modal[data-kind="notifications"],.modal[data-kind="task-detail"]{position:absolute;right:14px;top:14px;bottom:14px;max-height:calc(100dvh - 28px);max-width:480px;width:calc(100vw - 28px);display:flex;flex-direction:column;animation:drawerIn .22s ease;border-radius:14px}.modal[data-kind="task-detail"]{max-width:640px}.modal[data-kind="notifications"] .modal-body,.modal[data-kind="task-detail"] .modal-body{flex:1;overflow:auto}.modal[data-kind="notifications"] .modal-head,.modal[data-kind="task-detail"] .modal-head{position:static;flex-shrink:0}.modal[data-kind="notifications"] .modal-foot,.modal[data-kind="task-detail"] .modal-foot{position:static;flex-shrink:0}.notification-intro{display:flex;align-items:center;gap:13px;margin-bottom:21px;background:var(--surface-alt);border:1px solid var(--border);border-radius:12px;padding:17px}.notification-intro h3{font-size:13px}.notification-intro p{font-size:10px;color:var(--muted);margin-top:3px}.notification-row{display:flex;align-items:flex-start;gap:11px;padding:20px 0;border-bottom:1px solid var(--border)}.notification-row:last-child{border-bottom:0}.notification-row strong{display:block;font-size:12px;line-height:1.8}.notification-row p{color:var(--muted);font-size:10px;margin-top:4px}.unread-dot{display:block;width:5px;height:5px;background:var(--accent);border-radius:50%;margin-top:9px;flex-shrink:0}
.empty-state{text-align:center;padding:65px 25px;color:var(--muted)}.empty-state>svg{color:var(--accent);background:var(--accent-soft);box-sizing:content-box;padding:16px;border-radius:20px;margin-bottom:18px;width:30px;height:30px}.empty-state h3{font-size:15px;font-weight:550;margin-bottom:7px;color:var(--ink)}.empty-state p{font-size:12px;line-height:1.85}.empty-state .btn{margin-top:21px}.list-empty{text-align:center;padding:35px 15px;font-size:11px;color:var(--muted);line-height:1.8}.loading-screen{padding:75px;text-align:center;color:var(--muted)}.code-label{font-family:ui-monospace,monospace;font-size:10px;background:var(--surface-hover);color:var(--accent);border-radius:5px;padding:3px 6px}.status-legend{display:flex;align-items:center;gap:18px;font-size:11px;color:var(--muted)}.status-legend .flex{gap:6px}
#toast-root{position:fixed;bottom:26px;left:calc(50% + var(--sidebar)/2);transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;z-index:200;max-width:calc(100vw - 32px)}.toast{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);color:var(--ink);box-shadow:0 10px 35px #28223b20;border-radius:11px;padding:13px 18px;max-width:460px;font-size:12px;line-height:1.8;animation:toastIn .2s ease}.toast>svg{color:var(--positive);flex-shrink:0}.toast.error>svg{color:var(--orange)}.skeleton{background:linear-gradient(90deg,var(--surface-hover),var(--border),var(--surface-hover));background-size:200% 100%;height:12px;border-radius:6px;animation:shimmer 1.4s linear infinite}
@keyframes pageIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes modalIn{from{opacity:0;transform:translateY(10px) scale(.99)}to{opacity:1;transform:none}}@keyframes drawerIn{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:none}}@keyframes toastIn{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}@keyframes typing{0%,70%,100%{opacity:.25;transform:translateY(0)}35%{opacity:1;transform:translateY(-3px)}}@keyframes shimmer{to{background-position:-200% 0}}
/* Wide desktop: allow a docked inspector without compressing the conversation. */
@media(min-width:1650px){:root{--sidebar:256px}.workspace-stage.has-detail{grid-template-columns:236px minmax(0,1fr) 270px}.workspace-stage.has-detail .detail-panel.open{display:flex;position:static;width:auto;box-shadow:var(--shadow);animation:none}.workspace-stage.has-detail .detail-shade{display:none}.hero-copy h1{font-size:40px}.hero-art{margin-right:70px}.page{padding-left:40px;padding-right:40px}.quick-agent h3{font-size:13px}.quick-agent p{font-size:11px}.stat-label{font-size:12px}}
@media(max-width:1280px){:root{--sidebar:220px}.sidebar{padding:0 13px}.brand{padding-left:8px}.brand-word{font-size:22px}.brand-version{display:none}.nav-item{font-size:11px;padding-left:11px;gap:10px}.workspace-switch strong{font-size:10px}.topbar{padding:0 25px;gap:12px}.top-actions{gap:7px}.global-search .kbd{margin-left:5px}.page{padding-left:25px;padding-right:25px}.hero-copy{padding-left:25px}.hero-copy h1{font-size:32px}.hero-art{width:290px;margin-right:10px;transform:scale(.94)}.hero-eyebrow{font-size:7px;letter-spacing:1.35px}.stat-card{padding:15px 15px 14px}.stat-label{font-size:10px}.stat-value{font-size:27px}.stat-meta{font-size:8px;gap:5px}.quick-agent{padding:15px}.quick-agent h3{font-size:11px}.quick-agent p{font-size:9px}.quick-agent-bottom{margin-top:16px}.workspace-stage{grid-template-columns:209px minmax(0,1fr);gap:14px}.list-head{padding-left:13px;padding-right:13px}.agent-item{padding-left:6px;padding-right:6px;gap:8px}.agent-item strong{font-size:10px}.agent-item p{font-size:8px}.chat-feed{padding:24px}.welcome{padding-top:15px}.welcome h2{font-size:29px}.welcome-desc{font-size:11px}.prompt-card{padding:14px}.prompt-card p{font-size:9px}.prompt-card strong{font-size:10px}.chat-private{display:none}.chat-header{padding-left:20px;padding-right:20px}.feature-art{margin-right:15px;width:290px}.agent-card{padding:19px}.agent-card h3{font-size:13px}.agent-card-title{flex-wrap:wrap;gap:6px}.agent-card-meta{gap:10px;font-size:9px}.permission-layout{grid-template-columns:210px minmax(0,1fr)}.task-board{gap:14px}.task-card{padding:12px}.folder-card{padding:18px}.folder-card p{font-size:9px}.dashboard-lower{gap:17px;grid-template-columns:minmax(0,1.65fr) minmax(245px,1fr)}}
@media(max-width:1100px) and (min-width:761px){:root{--sidebar:78px}.sidebar{padding:0 10px}.brand{height:78px;justify-content:center;padding:0}.brand-word,.brand-version,.workspace-switch,.sidebar-search,.nav-label,.nav-text,.nav-item .badge,.nav-new,.sidebar-usage,.sidebar-help span,.sidebar-help svg:last-child,.profile .grow,.profile>svg{display:none}.nav-scroll{margin-top:10px}.nav-group+.nav-label+.nav-group{padding-top:17px;border-top:1px solid #ffffff0b;margin-top:19px}.nav-item{justify-content:center;height:45px;padding:10px;margin-bottom:6px}.nav-item svg{width:21px;height:21px}.nav-item.active:before{left:-3px}.sidebar-help{justify-content:center;padding:15px 0}.profile{justify-content:center;padding:18px 0}.sidebar-bottom{padding-top:10px}.brand-mark{width:35px;height:35px}.demo-badge{font-size:8px}.global-search{font-size:10px}.topbar{padding:0 23px}.page{padding-left:24px;padding-right:24px}.hero-art{margin-right:5px}.hero-copy h1{font-size:34px}.quick-agent h3{font-size:12px}.quick-agent p{font-size:10px}}
@media(max-width:950px){.top-actions .demo-badge{display:none}.stats-grid{gap:12px}.quick-agent-grid{gap:12px}.hero-art{width:250px;margin-right:0;transform:scale(.85)}.hero-copy h1{font-size:31px}.hero-copy p{font-size:11px}.hero-copy{padding-left:25px;min-width:0}.quick-agent{padding:14px}.quick-agent h3{font-size:11px}.quick-agent-bottom>span:last-child{font-size:8px}.dashboard-stats .stat-meta>span:last-child{font-size:8px}.dashboard-lower{grid-template-columns:minmax(0,1.5fr) minmax(225px,1fr)}.attention-row{padding:15px}.attention-row strong{font-size:10px}.attention-row small{font-size:8px}.panel-heading{padding:17px 16px 11px}.panel-heading h2{font-size:13px}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.connection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-art{width:230px;margin-right:15px;transform:scale(.85)}.feature-content{padding-left:25px}.feature-content h2{font-size:25px}.workspace-stage{grid-template-columns:192px minmax(0,1fr)}.list-head{padding:18px 11px 0}.agent-item .avatar{width:29px;height:29px;border-radius:9px}.agent-item strong{font-size:9px}.agent-item p{font-size:8px}.welcome h2{font-size:27px}.welcome .eyebrow{font-size:7px}.welcome-hint{font-size:8px}.chat-header .status{font-size:8px}.chat-feed{padding:22px 20px}.composer-wrap{padding-left:16px;padding-right:16px}.composer-note{font-size:8px}.char-count{display:none}.folder-grid{gap:12px}.folder-card{padding:15px}.folder-card strong{font-size:12px}.folder-card p{font-size:8px}.charts-grid{grid-template-columns:1.3fr 1fr}.chart-card{padding:20px}.chart{gap:16px}.task-board{gap:11px}.task-column{padding:11px 8px}.task-column-head h2{font-size:10px}.task-card{padding:11px}.task-card h3{font-size:11px}.task-card p{font-size:9px}.task-agent{font-size:9px}.task-card-footer>span{font-size:8px}.task-card-footer .btn{font-size:8px;padding:3px 5px}.task-card-footer .btn svg{display:none}.role-settings{padding:23px}.page-heading h1{font-size:25px}.page-heading p{font-size:11px}}
/* Mobile: full-size controls, off-canvas navigation, persistent bottom bar. */
@media(max-width:760px){
 :root{--sidebar:0px;--header:60px}.main-shell{margin-left:0;width:100%;padding-bottom:67px}.sidebar{width:263px;transform:translateX(-100%);visibility:hidden;transition:transform .2s,visibility .2s;padding:0 17px;z-index:80}.sidebar.open{transform:none;visibility:visible}.sidebar.open .brand-word{display:inline}.sidebar.open .brand-version{display:inline}.sidebar .brand{height:76px}.sidebar .nav-label{font-size:9px}.sidebar .nav-item{font-size:12px;min-height:43px}.sidebar .workspace-switch strong{font-size:12px}.sidebar .workspace-switch small{font-size:10px}.sidebar .workspace-switch{margin-bottom:12px}.sidebar .nav-label.admin{margin-top:20px}.sidebar .sidebar-bottom{padding-top:12px}.sidebar-usage{display:none}.sidebar-search{margin-bottom:17px}.sidebar .profile{padding-top:15px;padding-bottom:15px}.sidebar-help{padding-bottom:15px}.mobile-shade.open{display:block;position:fixed;inset:0;background:#15152266;backdrop-filter:blur(3px);z-index:79}.mobile-menu{display:inline-flex;width:30px;height:34px}.topbar{padding:0 14px;gap:8px}.breadcrumbs{gap:7px;font-size:11px}.workspace-crumb,.crumb-slash{display:none}.top-actions{gap:3px}.global-search{border:0;background:none;padding:8px;min-width:31px}.global-search span,.global-search kbd{display:none}.top-divider{display:none}.top-avatar{width:28px;height:28px;font-size:8px;margin-left:2px}.top-actions .icon-btn{width:31px;height:34px}.topbar .grow{gap:7px}.mobile-bottom-nav{display:flex;align-items:center;justify-content:space-around;position:fixed;bottom:0;left:0;right:0;z-index:35;height:calc(65px + env(safe-area-inset-bottom));padding:4px 8px calc(4px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--border);box-shadow:0 -3px 15px #26244004}.mobile-bottom-nav button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;flex:1;height:50px;color:var(--muted);border-radius:9px}.mobile-bottom-nav button span{font-size:9px;font-weight:500}.mobile-bottom-nav button.active{color:var(--accent);background:var(--accent-soft)}
 .page{padding:23px 19px 26px}.page-heading{align-items:flex-start;gap:12px;margin-bottom:23px}.page-heading h1{font-size:24px;letter-spacing:-.7px}.page-heading p{font-size:11px;line-height:1.8;max-width:350px;margin-top:6px}.heading-actions{gap:6px}.heading-actions .btn{font-size:11px;padding:8px 10px;min-height:36px}.heading-actions .hide-mobile{display:none}.heading-actions .btn svg{width:14px}.section-heading{margin:25px 0 15px;gap:15px}.section-heading h2{font-size:16px}.section-heading p{font-size:10px}.section-heading .text-btn{font-size:10px}.section-heading .searchbox{width:200px}.subtle-label{font-size:10px}
 .dashboard-greeting{align-items:flex-start;margin-bottom:17px}.greeting-label{font-size:11px}.dashboard-date{font-size:9px;gap:4px}.dashboard-date svg{width:13px}.dashboard-hero{min-height:255px;border-radius:13px}.hero-copy{padding:25px 23px}.hero-copy h1{font-size:31px}.hero-copy p{font-size:11px}.hero-eyebrow{font-size:7px;letter-spacing:1px;margin-bottom:13px}.hero-art{width:200px;transform:scale(.74);margin-right:-20px;margin-left:-30px}.hero-actions{gap:5px;margin-top:19px}.hero-actions .btn{font-size:10px;padding:8px 10px}.hero-actions .ghost{font-size:10px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:22px}.dashboard-stats{margin-top:15px;margin-bottom:0}.stat-card{padding:16px}.stat-label{font-size:11px}.stat-value{font-size:28px}.stat-meta{font-size:10px;gap:6px}.dashboard-stats .stat-meta>span:last-child{font-size:9px}.stat-link{font-size:9px}.stat-icon{width:25px;height:25px}.quick-agent-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.quick-agent{padding:17px}.quick-agent h3{font-size:12px}.quick-agent p{font-size:10px}.quick-agent-bottom{margin-top:16px}.quick-agent-bottom>span:last-child{font-size:9px}.quick-agent-top{margin-bottom:13px}.dashboard-lower{grid-template-columns:1fr;gap:18px;margin-top:22px}.panel-heading{padding:18px 20px 13px}.panel-heading h2{font-size:14px}.attention-row{padding:16px 20px}.attention-row strong{font-size:12px}.attention-row small{font-size:10px}.attention-tabs button{font-size:11px}.panel-footer-link{font-size:11px;padding:14px}.pulse-chart{flex:none;height:140px;gap:23px;margin-bottom:3px}.pulse-bar{max-width:36px}.pulse-number strong{font-size:29px}.pulse-description{font-size:10px}.pulse-column small{font-size:10px}.dashboard-footer{font-size:9px;margin-top:22px}.dashboard-footer>span:last-child{display:none}
 .library-feature{min-height:219px}.feature-content{padding:24px}.feature-content h2{font-size:24px}.feature-content p{font-size:11px}.feature-art{width:190px;transform:scale(.75);margin-left:-30px;margin-right:-10px}.library-toolbar{flex-wrap:wrap;gap:10px;margin-bottom:17px}.chip-tabs{gap:3px}.chip-tab{font-size:11px;padding:6px 10px}.result-count{display:none}.card-grid{gap:13px}.agent-card{padding:18px}.agent-card .avatar.lg{width:42px;height:42px;border-radius:12px}.agent-card-title{margin-top:16px;flex-direction:column;align-items:flex-start;gap:7px}.agent-card h3{font-size:13px}.agent-desc{font-size:11px;line-height:1.85;margin:10px 0 18px}.agent-card-meta{flex-wrap:wrap;gap:7px 12px}.agent-card-meta>span{font-size:9px}.agent-card-footer .btn{font-size:10px;padding:7px 9px}.agent-card-footer .btn svg{width:12px}.agent-card-footer>.icon-btn{width:28px}.agent-create-card{min-height:270px;padding:19px}.agent-create-card strong{font-size:12px}.agent-create-card p{font-size:10px}
 .workspace-page{height:calc(100dvh - var(--header) - 65px - env(safe-area-inset-bottom));min-height:0;padding:17px 13px 13px}.workspace-page .page-heading{margin-bottom:14px;align-items:center}.workspace-page .page-heading h1{font-size:20px}.workspace-page .page-heading p{display:none}.workspace-page .heading-actions .btn{font-size:10px;min-height:32px;padding:6px 9px}.workspace-stage{display:flex;gap:0;flex:1;min-height:0}.agent-list-panel{display:none}.agent-list-panel.open{display:flex;position:fixed;left:12px;top:72px;bottom:80px;width:270px;z-index:55;box-shadow:0 12px 50px #15152230}.agent-list-panel.open .agent-item{padding:13px 10px;gap:11px}.agent-list-panel.open .agent-item strong{font-size:12px}.agent-list-panel.open .agent-item p{font-size:10px}.agent-list-panel.open .agent-item .avatar{width:35px;height:35px}.agent-list-panel.open .list-head{padding:20px 16px 0}.list-title h3{font-size:13px}.chat-panel{flex:1;min-width:0;width:100%;border-radius:12px}.chat-header{min-height:63px;padding:11px 12px;gap:5px}.chat-header>.flex{gap:8px}.chat-header h3{font-size:12px}.chat-header .avatar{width:31px;height:31px;border-radius:10px}.chat-header .avatar svg{width:17px}.chat-header .status{font-size:8px}.chat-header .status-separator,.chat-header .status-separator+span{display:none}.chat-head-actions{gap:0}.chat-head-actions .icon-btn{width:28px;height:30px}.mobile-agent-trigger{display:inline-flex;width:23px;height:29px;flex-shrink:0}.chat-feed{padding:22px 18px}.welcome{padding-top:14px;max-width:460px}.welcome h2{font-size:27px}.welcome-symbol{margin-bottom:23px}.welcome-orbit{width:58px;height:58px;border-radius:19px}.welcome-orbit:before{border-radius:24px}.welcome .eyebrow{font-size:7px;letter-spacing:1.2px}.welcome-desc{font-size:11px;margin-top:11px;margin-bottom:22px}.prompt-grid{gap:10px}.prompt-card{padding:13px}.prompt-icon{width:27px;height:27px;margin-bottom:12px}.prompt-icon svg{width:17px}.prompt-card strong{font-size:11px}.prompt-card p{font-size:9px}.welcome-hint{font-size:8px;margin-top:17px;gap:5px;line-height:1.8;align-items:flex-start}.welcome-hint svg{margin-top:1px}.composer-wrap{padding:0 12px 9px}.composer{padding:12px 12px 9px;border-radius:11px}.composer textarea{font-size:13px;min-height:40px;height:40px}.composer-actions{margin-top:5px;gap:4px}.composer-actions>.flex{gap:3px}.composer-actions .icon-btn{width:28px;height:28px}.composer-divider{margin:0 3px}.model-select{font-size:9px;max-width:134px;padding:5px}.send-btn{width:33px;height:33px;border-radius:9px}.composer-note{font-size:8px;margin-top:8px;justify-content:center}.composer-note>span:last-child{display:none}.message{gap:9px;margin-bottom:24px}.message .bubble{font-size:13px}.message-meta{font-size:9px;gap:7px}.message-meta strong{font-size:10px}.message .bubble-wrap{max-width:88%}.message.user .bubble{padding:10px 13px}.detail-panel.open{top:72px;bottom:80px;right:12px;width:min(300px,calc(100vw - 24px));z-index:60}.detail-shade{inset:60px 0 65px;z-index:59}
 .toolbar{gap:12px;flex-wrap:wrap}.toolbar .searchbox{width:auto;flex:1;min-width:185px}.filter-group{gap:6px;max-width:100%;flex-wrap:wrap}.filter-group .select{font-size:11px}.permission-layout{grid-template-columns:1fr;gap:17px}.role-panel{display:flex;gap:5px;padding:7px;overflow:auto}.role-item{padding:11px;min-width:143px;margin:0;gap:8px}.role-item strong{font-size:11px}.role-item small{font-size:9px}.role-item svg{width:18px;height:18px}.role-settings{padding:22px}.permission-row strong{font-size:12px}.permission-row p{font-size:11px}.role-settings-head h3{font-size:15px}.connection-grid{grid-template-columns:1fr}.provider-card{padding:22px}.connection-add{min-height:150px}.charts-grid{grid-template-columns:1fr;gap:18px}.chart-card{padding:22px}.chart{gap:18px}.data-table th{position:relative;padding:13px 16px;font-size:10px}.data-table td{padding:15px 16px;font-size:11px}.table-footer{font-size:10px;padding:14px 16px}.table-footer>span:last-child{font-size:9px}.selection-bar{font-size:11px;flex-wrap:wrap}.selection-bar .btn{font-size:10px}.notice{font-size:11px;padding:13px 15px;margin-bottom:21px}.bottom-note{font-size:10px}
 .task-summary{gap:24px;margin-bottom:23px;overflow:auto;white-space:nowrap}.task-summary>div{gap:8px}.task-summary .tag{font-size:10px}.task-summary strong{font-size:18px}.task-board{grid-template-columns:1fr;gap:19px}.task-column{min-height:0;padding:14px 12px}.task-column-head h2{font-size:12px}.task-column-head{padding-bottom:15px}.task-card{padding:17px;margin-bottom:13px}.task-card h3{font-size:13px;margin-top:10px}.task-card p{font-size:11px}.task-agent{font-size:11px;margin-top:18px}.task-agent .avatar{width:27px;height:27px}.task-id{font-size:10px}.task-card-footer>span{font-size:10px}.task-card-footer .btn{font-size:10px;min-height:31px;padding:6px 10px}.task-card-footer .btn svg{display:inline-block}.task-list-row{gap:10px;padding:17px}.task-list-row .tag{font-size:8px}.task-list-row p{font-size:9px}.row-title{font-size:12px}.task-list-row>.icon-btn{display:none}.folder-grid{grid-template-columns:1fr 1fr;gap:13px;margin-bottom:25px}.folder-card{padding:20px}.folder-card strong{font-size:13px}.folder-card p{font-size:10px}.history-row{padding:18px;gap:12px}.history-row h3{font-size:12px}.history-row p{font-size:10px}.history-row .btn{font-size:10px}
 .overlay-backdrop{padding:15px}.modal{max-height:calc(100dvh - 30px);border-radius:14px}.modal-head{padding:18px 21px}.modal-head h2{font-size:16px}.modal-body{padding:23px 21px}.modal-foot{padding:16px 21px;gap:8px}.modal-foot .btn{font-size:11px;min-height:37px;padding:8px 11px}.form-row{grid-template-columns:1fr;gap:0}.agent-toggle-list{grid-template-columns:1fr}.command-box{margin-top:35px}.command-input{padding:15px}.command-input input{font-size:13px}.command-hint{font-size:9px;padding:13px 18px}.command-results{max-height:calc(100dvh - 220px)}.modal[data-kind="notifications"],.modal[data-kind="task-detail"]{right:8px;top:8px;bottom:8px;width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.modal[data-kind="task-detail"] .modal-foot{flex-wrap:wrap}.modal[data-kind="task-detail"] .modal-foot>.btn:first-child{margin-right:auto!important}.notification-intro{padding:15px}.notification-row strong{font-size:12px}#toast-root{left:50%;bottom:81px;max-width:calc(100vw - 28px)}.toast{font-size:11px;padding:12px 15px}
}
@media(max-width:580px){.hero-art{display:none}.dashboard-hero{min-height:262px}.hero-copy{padding:25px}.hero-copy h1{font-size:34px}.hero-copy p{font-size:11px}.hero-eyebrow{font-size:7px;letter-spacing:1.1px}.hero-actions{gap:10px}.hero-actions .btn{font-size:11px;padding:9px 12px;min-height:37px}.dashboard-hero:after{content:"";position:absolute;width:220px;height:220px;border:1px solid var(--hero-line);border-radius:50%;right:-150px;top:-80px;box-shadow:0 0 0 30px #b9a5e40b,0 0 0 60px #b9a5e408;z-index:0}.dashboard-date{display:none}.feature-art{display:none}.library-feature{position:relative}.feature-content{padding:25px;position:relative;z-index:1}.feature-content h2{font-size:24px}.feature-content p br{display:none}.library-feature:after{content:"";position:absolute;width:200px;height:200px;border:1px solid #ffffff0f;border-radius:50%;right:-125px;top:5px;box-shadow:0 0 0 30px #ffffff03,0 0 0 60px #ffffff02}.library-page .section-heading{flex-wrap:wrap}.library-page .section-heading .searchbox{width:100%}.section-heading{gap:10px}.section-heading h2{font-size:15px}.section-heading p{font-size:10px}.section-heading .text-btn{font-size:9px}.subtle-label{display:none}.page-heading{flex-wrap:wrap;gap:15px}.page-heading .heading-actions{width:auto}.page-heading h1{font-size:24px}.page-heading p{font-size:11px}.workspace-page .page-heading{flex-wrap:nowrap;gap:8px}.workspace-page .page-heading h1{font-size:18px}.workspace-page .heading-actions .btn{font-size:9px;padding:6px 8px}.card-grid{grid-template-columns:1fr}.agent-card{padding:22px}.agent-card-title{flex-direction:row;align-items:center}.agent-card h3{font-size:15px}.agent-card-title .tag{font-size:10px}.agent-desc{font-size:12px;min-height:0}.agent-card-meta>span{font-size:11px}.agent-card-footer .btn{font-size:12px;padding:9px 13px;min-height:38px}.agent-card-footer .btn svg{width:15px}.agent-card-footer>.icon-btn{width:34px}.agent-create-card{min-height:215px}.stat-label{font-size:10px}.stat-value{font-size:28px}.stat-meta{font-size:8px;gap:4px}.dashboard-stats .stat-meta>span:last-child{font-size:8px}.stat-link{font-size:8px}.quick-agent{padding:16px}.quick-agent h3{font-size:11px}.quick-agent p{font-size:9px}.quick-agent-bottom>.tag{font-size:8px}.quick-agent-bottom>span:last-child{font-size:8px}.attention-row{padding:16px}.attention-row strong{font-size:11px}.attention-row small{font-size:9px}.task-summary{gap:18px}.task-summary .tag{font-size:9px}.task-summary strong{font-size:16px}.task-summary>div{gap:6px}.tasks-page .toolbar{gap:10px}.tasks-page .toolbar .searchbox{min-width:100%;width:100%}.task-list-row .tag{white-space:normal;max-width:76px;text-align:center}.folder-card{padding:18px}.folder-card p{font-size:9px}.table-footer{flex-wrap:wrap}.history-row{align-items:flex-start}.history-row>.flex:last-child{flex-direction:column}.toolbar .filter-group{width:100%}.permission-row{gap:15px}.role-settings{padding:20px}.selection-bar>div{flex-wrap:wrap}.modal-foot .btn{font-size:10px}.composer textarea{font-size:13px}.chat-header .status{font-size:7px}.chat-header h3{font-size:11px}.chat-header>.flex{gap:7px}.chat-header .avatar{width:29px;height:29px}.chat-head-actions .icon-btn{width:25px}.chat-header{padding:11px 10px}.welcome h2{font-size:25px}.welcome .eyebrow{font-size:6.5px}.prompt-card strong{font-size:10px}.prompt-card p{font-size:8px;line-height:1.7}.welcome-desc{font-size:10px}.model-select{max-width:118px}.welcome-hint{font-size:7px}}
@media(max-width:370px){.page{padding-left:14px;padding-right:14px}.hero-copy{padding-left:20px;padding-right:20px}.hero-copy h1{font-size:31px}.hero-copy p{font-size:10px}.hero-actions{gap:4px}.hero-actions .btn{font-size:10px;padding:8px 10px}.hero-eyebrow{font-size:6.5px}.stat-card{padding:13px}.stat-label{font-size:9px}.quick-agent{padding:13px}.quick-agent h3{font-size:10px}.quick-agent p{font-size:8px}.attention-row strong{font-size:10px}.attention-row small{font-size:8px}.section-heading .text-btn{font-size:8px}.theme-toggle{display:none}.task-summary{gap:12px}.task-summary .tag{font-size:8px}.workspace-page{padding-left:9px;padding-right:9px}.composer-wrap{padding-left:9px;padding-right:9px}.chat-feed{padding-left:13px;padding-right:13px}.prompt-card{padding:11px}.prompt-card p{font-size:8px}.model-select{max-width:111px}.composer-divider{margin:0 1px}.chat-header .status{font-size:6.5px}.task-list-row>.avatar{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}html{scroll-behavior:auto}}
/* Height-aware conversation layout: keep composer and starter actions in view. */
@media(min-width:761px) and (max-height:930px){
 .workspace-page{min-height:650px;padding-top:23px;padding-bottom:20px}.workspace-page .page-heading{margin-bottom:18px}
 .chat-feed{padding-top:18px;padding-bottom:18px}.welcome{padding-top:4px}.welcome-symbol{margin-bottom:15px}
 .welcome-orbit{width:49px;height:49px;border-radius:16px}.welcome-orbit:before{border-radius:20px;inset:-5px}.welcome-orbit svg{width:25px;height:25px}
 .welcome h2{font-size:26px;line-height:1.3}.welcome .eyebrow{margin-bottom:8px}.welcome-desc{font-size:11px;margin:10px auto 17px}
 .prompt-card{min-height:70px;padding:12px 15px}.prompt-grid{gap:10px}.welcome-hint{display:none}
}
@media(max-width:760px){
 .agent-shade{display:block;position:fixed;inset:60px 0 65px;z-index:54;background:#1e183438;backdrop-filter:blur(2px)}
 .welcome{padding-top:5px}.welcome-symbol{margin-bottom:18px}.welcome-orbit{width:46px;height:46px;border-radius:15px}.welcome-orbit:before{inset:-5px;border-radius:20px}.welcome-orbit svg{width:24px;height:24px}
 .welcome h2{font-size:25px;line-height:1.3}.welcome .eyebrow{margin-bottom:9px;font-size:7px}.welcome-desc{font-size:11px;margin:11px auto 18px}
 .prompt-grid{gap:9px}.prompt-card{min-height:65px;padding:13px 11px;grid-template-columns:25px minmax(0,1fr);gap:7px}
 .prompt-icon{width:25px;height:25px;grid-row:auto;margin:0}.prompt-icon svg{width:16px;height:16px}.prompt-card strong{font-size:10px;align-self:center;line-height:1.6}.prompt-card p{display:none}
 .prompt-card>svg{display:none}.welcome-hint{display:none}.chat-header .status{font-size:8px}.chat-header .status-category{display:none}
}
@media(max-width:760px) and (max-height:740px){
 .chat-feed{padding-top:17px;padding-bottom:17px}.welcome-symbol{margin-bottom:13px}.welcome-orbit{width:38px;height:38px;border-radius:12px}.welcome-orbit:before{border-radius:16px}.welcome h2{font-size:23px}.welcome-desc{font-size:10px;margin:9px auto 13px}.welcome .eyebrow{display:none}.prompt-card{min-height:57px;padding-top:10px;padding-bottom:10px}.composer textarea{height:36px;min-height:36px}.composer-wrap{padding-bottom:8px}
}

[data-theme="dark"] .orbit-center{background:linear-gradient(135deg,#574771,#362d4f);border-color:#ad9ad14d;color:#c0acf2;box-shadow:0 10px 35px #0000001c,inset 0 1px 0 #ffffff12}

/* AgentHub 2.1 - interaction and accessibility refinements.
 * Mobile-first touch targets; geometry and behavior are independent of backend.
 */
:root {
 --muted:#626a7d; --subtle:#737c8e; --touch:44px; --focus:#7057dc;
 --nav-height:0px; --viewport-height:100dvh; --control-radius:10px;
 --text-small:12px; --text-body:14px;
}
:root[data-theme="dark"] {--muted:#aeb6cb;--subtle:#9ea8be;--focus:#b2a3ff;}
html {scroll-padding-top:90px;}
body {font-size:14px;}
button, a, input, select, textarea {touch-action:manipulation;}
button {min-width:24px;}
button, a { -webkit-user-drag:none; }
button:focus-visible, a:focus-visible, [tabindex]:focus-visible {outline:3px solid var(--focus);outline-offset:3px;}
input:focus-visible, textarea:focus-visible, select:focus-visible {outline:2px solid var(--focus);outline-offset:2px;}
[hidden] {display:none!important;}
.app-icon {flex-shrink:0;display:inline-block;vertical-align:middle;overflow:visible;pointer-events:none;stroke-width:2!important;}
.app-icon * {stroke-linecap:round;stroke-linejoin:round;}
.icon-btn {width:40px;height:40px;border-radius:10px;}
.icon-btn .app-icon {width:19px;height:19px;}
.icon-btn:hover {background:var(--surface-hover);}
.icon-btn:active, .btn:active, .send-btn:active {transform:translateY(1px);}
.icon-btn.active {box-shadow:inset 0 0 0 1px var(--accent-line);}
.btn {min-height:40px;font-size:12px;border-radius:9px;}
.btn.small {min-height:34px;}
.text-btn {min-height:28px;font-size:12px;}
.input, .select {min-height:42px;font-size:13px;border-radius:9px;}
.tag {font-size:11px;line-height:1.55;}
.tag.green {color:var(--positive);background:var(--positive-soft);}
.topbar {z-index:35;}
.top-actions {gap:8px;}
.top-actions .user-avatar {width:36px;height:36px;}
.global-search {min-height:38px;}
.breadcrumbs {font-size:12px;}
.brand-version {font-size:10px;}
.sidebar-search {font-size:12px;min-height:38px;}
.nav-item {min-height:44px;font-size:13px;gap:11px;}
.nav-item .app-icon {width:20px;height:20px;}
.nav-label {font-size:10px;letter-spacing:1.4px;}
.profile {position:relative;min-height:68px;gap:11px;}
.profile > .app-icon {width:20px;height:20px;margin-left:auto;color:#bac1d3;}
.profile:hover {background:#ffffff06;}
.profile strong {font-size:12px;}
.profile small {font-size:10px;}
.nav-close {display:none;}
.sidebar .nav-item:focus-visible, .sidebar button:focus-visible {outline-color:#b5a4ff;outline-offset:1px;}
.workspace-switch strong {font-size:12px;}
.workspace-switch small {font-size:11px;}
.sidebar-help {min-height:44px;font-size:12px;}
.sidebar-usage {font-size:11px;}
.usage-link {font-size:11px;min-height:30px;}
.page-heading p {font-size:13px;line-height:1.65;}
.section-heading p {font-size:12px;line-height:1.7;}
.dashboard-date, .greeting-label {font-size:12px;}
.hero-copy p {font-size:13px;line-height:1.9;}
.hero-copy h1 {letter-spacing:-1.3px;}
.stat-card .stat-label {font-size:12px;}
.stat-meta {font-size:11px;gap:5px;flex-wrap:wrap;}
.quick-agent-card {min-height:157px;}
.quick-agent-card strong {font-size:14px;}
.quick-agent-card p {font-size:12px;}
.attention-row strong {font-size:13px;line-height:1.6;}
.attention-row small {font-size:11px;line-height:1.6;}
.panel-footer-link {font-size:12px;min-height:44px;}
.dashboard-tabs button {min-height:40px;font-size:12px;}
.agent-card .agent-desc {font-size:13px;line-height:1.85;}
.agent-card-meta {font-size:11px;flex-wrap:wrap;row-gap:10px;}
.agent-card-footer .btn {font-size:12px;}
.chip-tab {min-height:36px;font-size:12px;}
.feature-content p {font-size:13px;}
.role-item strong {font-size:13px;}
.role-item small {font-size:11px;}
.permission-row {gap:20px;}
.permission-row strong {font-size:13px;line-height:1.6;}
.permission-row p {font-size:12px;line-height:1.7;}
.switch {width:44px;height:28px;}
.switch .track {inset:3px 2px;background:#9aa2b0;}
.switch .track:after {width:16px;height:16px;top:3px;left:3px;}
.switch input:checked+.track:after {transform:translateX(18px);}
.switch input:focus-visible+.track {outline:3px solid var(--focus);outline-offset:3px;}
.notice,.bottom-note {font-size:12px;line-height:1.75;}
.bottom-note {align-items:flex-start;}
.bottom-note > .app-icon {margin-top:3px;}
.data-table td {font-size:12px;padding-top:16px;padding-bottom:16px;}
.data-table th {font-size:11px;}
.data-table .user-cell strong,.file-link strong {font-size:13px;}
.data-table .user-cell small,.file-link small {font-size:11px;}
.table-footer {font-size:11px;gap:12px;flex-wrap:wrap;}
.checkbox {width:18px;height:18px;}
.file-link {text-align:left;}
.task-card h3 {font-size:14px;}
.task-card p {font-size:12px;}
.task-card-footer .btn {min-height:36px;font-size:11px;}
.history-row h3 {font-size:13px;}
.history-row p {font-size:12px;line-height:1.7;}
.provider-card p,.provider-meta>div {font-size:12px;line-height:1.7;}
.empty-state p {font-size:13px;}
.empty-state h3 {font-size:16px;}
.workspace-page {height:calc(var(--viewport-height) - var(--header));min-height:0!important;}
.workspace-stage,.chat-panel {min-height:0;}
.agent-list-panel {min-height:0;}
.agent-item {padding:13px 10px;min-height:66px;}
.agent-item strong {font-size:12px;}
.agent-item p {font-size:11px;}
.list-title h3 {font-size:14px;}
.agent-list {overscroll-behavior:contain;}
.list-head .input {font-size:12px;min-height:40px;}
.list-head .tab {font-size:12px;min-height:36px;}
.list-head .tabs {gap:3px;}
.list-bottom .btn {font-size:12px;}
.agent-list-close {display:none;}
.chat-header {min-height:75px;flex-shrink:0;}
.chat-header h3 {font-size:14px;}
.chat-header .status {font-size:11px;}
.chat-feed {overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;}
.welcome-desc {font-size:13px;line-height:1.85;}
.welcome-hint {font-size:11px;line-height:1.7;}
.prompt-card {min-height:120px;}
.prompt-card strong {font-size:13px;}
.prompt-card p {font-size:11px;line-height:1.65;}
.prompt-card .prompt-icon .app-icon {width:19px;height:19px;}
.bubble {font-size:14px;line-height:1.9;}
.message-meta {font-size:11px;}
.message-meta strong {font-size:12px;}
.message-actions .icon-btn {width:36px;height:36px;}
.message-actions .app-icon {width:17px;height:17px;}
.composer textarea {font-size:14px;line-height:1.75;max-height:135px;}
.composer-actions {gap:8px;}
.composer-actions .icon-btn {width:36px;height:36px;}
.composer-actions .icon-btn .app-icon {width:19px;height:19px;}
.model-select {font-size:11px;min-height:34px;}
.send-btn {width:38px;height:38px;border-radius:11px;}
.send-btn[disabled] {background:var(--surface-hover);color:var(--subtle);box-shadow:none;opacity:1;}
.composer-note {font-size:10px;line-height:1.6;}
.char-count {font-size:10px;}
.attachment-chip {font-size:11px;gap:5px;max-width:100%;}
.attachment-chip > button {min-width:28px;min-height:28px;display:inline-flex;align-items:center;justify-content:center;}
.detail-head h3 {font-size:14px;}
.detail-profile h3 {font-size:15px;}
.detail-profile p {font-size:12px;}
.detail-section h4 {font-size:12px;}
.capability {font-size:12px;line-height:1.65;}
.doc-row {min-height:44px;}
.doc-row strong {font-size:11px;}
.doc-row small,.permission-info {font-size:10px;}
.detail-footer .btn {font-size:12px;}
.jump-latest {position:absolute;left:50%;bottom:165px;z-index:5;transform:translateX(-50%);display:flex;align-items:center;gap:8px;min-height:40px;padding:8px 15px;border:1px solid var(--border);border-radius:99px;background:var(--surface);color:var(--ink);box-shadow:var(--shadow-lg);font-size:12px;}
.jump-latest:hover {border-color:var(--accent-line);color:var(--accent);}
.modal {display:flex;flex-direction:column;max-height:calc(var(--viewport-height) - 48px);border:1px solid var(--border);border-radius:18px;}
.modal-head {flex-shrink:0;padding:20px 24px;position:static;}
.modal-head h2 {display:flex;align-items:center;gap:12px;font-size:18px;line-height:1.5;}
.modal-head h2 small {display:block;font-size:12px;font-weight:400;letter-spacing:0;color:var(--muted);margin-top:2px;}
.modal-heading-icon {width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent);border-radius:13px;flex-shrink:0;}
.modal > form {display:flex;flex-direction:column;min-height:0;overflow:hidden;}
.modal-body {min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:24px;scrollbar-gutter:stable;}
.modal-foot {flex-shrink:0;position:static;padding:16px 24px;min-height:76px;background:var(--surface);}
.modal-intro {font-size:13px;line-height:1.8;}
.field>span,.field>label {font-size:12px;line-height:1.6;}
.field .hint {font-size:11px;line-height:1.7;}
.modal .check-label {min-height:40px;font-size:12px;}
.modal .notice {font-size:12px;}
.modal[data-kind="task-detail"] .modal-body {padding-bottom:24px;}
.modal[data-kind="settings"] {max-width:720px;}
.modal[data-kind="settings"] .modal-body {background:var(--surface-alt);}
.settings-intro {display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;color:var(--muted);margin-bottom:20px;}
.settings-intro>span:first-child {display:flex;align-items:center;gap:7px;}
.settings-section {border:1px solid var(--border);border-radius:12px;padding:20px;background:var(--surface);margin:0 0 16px;}
.settings-section .field:last-child {margin-bottom:0;}
.settings-section-title {display:flex;align-items:center;gap:10px;margin-bottom:18px;}
.settings-section-title .app-icon {color:var(--accent);}
.settings-section-title h3 {font-size:14px;}
.settings-section-title p {color:var(--muted);font-size:12px;margin-top:3px;line-height:1.65;}
.settings-fieldset {border:0;padding:0;margin:0;min-width:0;}
.settings-fieldset legend {font-size:12px;font-weight:600;margin-bottom:12px;}
.theme-options {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.theme-option {position:relative;cursor:pointer;display:block;min-width:0;}
.theme-option input,.density-option input {position:absolute;opacity:0;width:100%;height:100%;margin:0;inset:0;cursor:pointer;}
.theme-preview {display:flex;height:80px;border:1.5px solid var(--border);border-radius:9px;padding:7px;background:#f5f6fb;gap:7px;overflow:hidden;}
.theme-preview .mini-side {width:22%;background:#262937;border-radius:4px;display:flex;flex-direction:column;gap:4px;padding:7px 4px;}
.mini-side b {height:3px;background:#858499;border-radius:2px;}
.mini-side b:first-child {background:#ae9cfb;height:5px;margin-bottom:4px;}
.theme-preview .mini-main {flex:1;display:flex;flex-direction:column;gap:5px;}
.mini-main b {height:7px;width:52%;background:#d9d8ea;border-radius:2px;}
.mini-main i {display:block;background:#ebe5fc;border-radius:3px;height:23px;}
.mini-main em {display:block;background:white;flex:1;border:1px solid #e7e9f1;border-radius:3px;}
.theme-preview.preview-dark {background:#1d202c;}
.preview-dark .mini-main b {background:#5d6279;}
.preview-dark .mini-main i {background:#413652;}
.preview-dark .mini-main em {background:#262a3a;border-color:#36394a;}
.theme-preview.preview-system {background:linear-gradient(90deg,#f5f6fb 50%,#1d202c 50%);}
.preview-system .mini-main em {background:linear-gradient(90deg,white 50%,#262a3a 50%);border-color:#9a9aaa;}
.theme-caption {display:flex;align-items:center;gap:6px;margin-top:10px;font-size:12px;font-weight:550;}
.theme-check {margin-left:auto;border:1px solid var(--border);width:17px;height:17px;border-radius:50%;display:flex;align-items:center;justify-content:center;}
.theme-check svg {opacity:0;width:11px;height:11px;}
.theme-option:has(input:checked) .theme-preview {border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft);}
.theme-option:has(input:checked) .theme-check {background:var(--accent);border-color:var(--accent);color:var(--surface);}
.theme-option:has(input:checked) .theme-check svg {opacity:1;}
.theme-option:has(input:focus-visible) {outline:3px solid var(--focus);outline-offset:5px;border-radius:8px;}
.density-options {display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.density-option {position:relative;display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:9px;padding:13px;cursor:pointer;font-size:12px;}
.density-option:has(input:checked) {background:var(--accent-soft);border-color:var(--accent);color:var(--accent);}
.density-option:has(input:focus-visible) {outline:3px solid var(--focus);outline-offset:3px;}
.settings-separator {height:1px;background:var(--border);margin:20px 0;}
.settings-section .permission-row {padding:14px 0;}
.settings-section .permission-row:last-child {padding-bottom:0;}
.settings-note {display:flex;align-items:flex-start;gap:10px;padding:15px;border:1px solid var(--border);border-radius:10px;font-size:12px;line-height:1.8;color:var(--muted);background:var(--surface);}
.settings-note .app-icon {margin-top:2px;color:var(--accent);}
.settings-note strong {color:var(--ink);}
.settings-reset {margin-right:auto;color:var(--muted);}
.unsaved-guard {flex-shrink:0;padding:14px 24px;border-bottom:1px solid var(--accent-line);background:var(--accent-soft);display:flex;gap:12px;align-items:center;flex-wrap:wrap;}
.unsaved-guard>p {flex:1;min-width:160px;font-size:12px;line-height:1.7;}
.unsaved-guard .btn {font-size:12px;}
.command-box {overflow:hidden;}
.command-input {flex-shrink:0;}
.command-input input {font-size:15px;}
.command-results {min-height:0;overscroll-behavior:contain;}
.command-result {min-height:44px;font-size:13px;}
.command-result:focus {background:var(--accent-soft);outline:2px solid var(--accent);outline-offset:-2px;}
.command-hint {font-size:11px;flex-shrink:0;}
#ui-tooltip {position:fixed;z-index:400;max-width:240px;pointer-events:none;background:#242436;color:#f7f8ff;padding:8px 11px;border-radius:7px;font-size:12px;line-height:1.6;box-shadow:0 4px 18px #10102330;border:1px solid #ffffff1a;}
.toast {font-size:13px;min-height:44px;}
#toast-root {pointer-events:none;bottom:calc(var(--nav-height) + 18px);}
:root[data-motion="reduced"] *, :root[data-motion="reduced"] *:before, :root[data-motion="reduced"] *:after {animation:none!important;transition:none!important;scroll-behavior:auto!important;}
@media (prefers-reduced-motion:reduce) {*,*:before,*:after {animation:none!important;transition:none!important;scroll-behavior:auto!important;}}
@media(min-width:1101px) and (max-height:840px) {
 .brand {height:69px;padding-top:16px;padding-bottom:16px;}.workspace-switch{margin-bottom:14px}.sidebar-search{margin-bottom:14px}.nav-label.admin{margin-top:20px}.sidebar-usage{display:none}.sidebar-bottom{padding-top:7px}.sidebar-help{padding-top:5px;padding-bottom:5px}.profile{min-height:64px;}.nav-item{margin-bottom:2px;}
}
@media(min-width:761px) and (max-width:1100px) {.profile > .app-icon{display:none}.sidebar .nav-item{min-height:48px}.workspace-page{padding-top:18px;}.nav-item.active{border-radius:10px;}}
@media(min-width:761px) {
 :root[data-density="compact"] .nav-item {min-height:38px;padding-top:8px;padding-bottom:8px;}
 :root[data-density="compact"] .page {padding-top:20px;}
 :root[data-density="compact"] .agent-item {min-height:58px;padding-top:10px;padding-bottom:10px;}
 :root[data-density="compact"] .data-table td {padding-top:10px;padding-bottom:10px;}
 :root[data-density="compact"] .stat-card {padding-top:16px;padding-bottom:16px;}
 :root[data-density="compact"] .quick-agent-card {min-height:138px;}
}
@media(min-width:1650px) {.workspace-stage.has-detail{grid-template-columns:250px minmax(0,1fr) 290px}.workspace-stage.has-detail .detail-panel.open{min-height:0}.workspace-stage.has-detail .detail-panel .close-detail{display:flex}}
@media(max-width:1100px) { .workspace-stage{grid-template-columns:220px minmax(0,1fr)}.workspace-page .page-heading p{font-size:12px}.prompt-card strong{font-size:12px} }
@media(max-width:760px) {
 :root {--header:calc(60px + env(safe-area-inset-top));--nav-height:calc(66px + env(safe-area-inset-bottom));}
 :root.keyboard-open {--nav-height:0px;}
 .main-shell {padding-bottom:var(--nav-height);min-height:var(--viewport-height);}
 .topbar {height:var(--header);padding:env(safe-area-inset-top) 12px 0;gap:5px;position:sticky;top:0;}
 .topbar .top-actions {gap:0;}
 .topbar .breadcrumbs {font-size:12px;gap:5px;}
 .topbar .global-search {width:40px;height:44px;min-width:0;justify-content:center;padding:0;}
 .topbar .theme-toggle {display:none;}
 .topbar .icon-btn {width:44px;height:44px;}
 .top-avatar {margin-left:5px;}
 .page {padding:21px 17px;}
 .page-heading {gap:12px;align-items:flex-start;}
 .page-heading h1 {font-size:24px;letter-spacing:-.65px;line-height:1.35;}
 .page-heading p {font-size:12px;line-height:1.8;}
 .page-heading .heading-actions .btn {min-height:44px;font-size:12px;}
 .page-heading .heading-actions {flex-shrink:0;}
 .icon-btn,.composer-actions .icon-btn,.message-actions .icon-btn {width:44px;height:44px;}
 .btn,.btn.small,.text-btn,.chip-tab,.role-item {min-height:44px;}
 .text-btn {font-size:12px;}
 input.input,select.select,textarea.input,.composer textarea,.command-input input,.field textarea {font-size:16px!important;}
 .input,.select {min-height:46px;}
 .icon-btn .app-icon,.message-actions .app-icon {width:20px;height:20px;}
 .sidebar {padding:env(safe-area-inset-top) 17px env(safe-area-inset-bottom);width:min(310px,calc(100vw - 48px));height:var(--viewport-height);z-index:80;}
 .sidebar.open .brand {height:76px;padding:20px 5px;}
 .sidebar.open .brand-word {font-size:23px;}
 .sidebar.open .nav-item {min-height:47px;font-size:14px;}
 .sidebar.open .sidebar-search {font-size:13px;min-height:44px;margin-bottom:20px;}
 .sidebar.open .workspace-switch {min-height:58px;}
 .sidebar.open .workspace-switch strong {font-size:13px;}
 .sidebar.open .workspace-switch small {font-size:11px;}
 .sidebar.open .sidebar-help {min-height:44px;font-size:12px;padding-bottom:8px;}
 .sidebar.open .nav-close {display:flex;position:absolute;top:calc(16px + env(safe-area-inset-top));right:14px;color:#c8ccdb;background:#ffffff07;}
 .sidebar.open .sidebar-usage {display:none;}
 .sidebar.open .profile {min-height:67px;padding:12px 5px;}
 .sidebar.open .profile strong {font-size:13px;}
 .sidebar.open .profile small {font-size:11px;}
 .sidebar.open .profile>.app-icon {display:block;width:21px;height:21px;}
 .sidebar-bottom {padding-top:10px;}
 .nav-label.admin {margin-top:25px;}
 .mobile-shade.open,.agent-shade,.detail-shade {background:#10122265;backdrop-filter:blur(3px);}
 .mobile-bottom-nav {height:var(--nav-height);padding:5px 8px calc(5px + env(safe-area-inset-bottom));z-index:40;}
 .mobile-bottom-nav button {min-height:54px;min-width:44px;gap:5px;font-size:11px;position:relative;border-radius:11px;}
 .mobile-bottom-nav button .app-icon {width:22px;height:22px;}
 .mobile-bottom-nav button.active {background:var(--accent-soft);}
 .mobile-bottom-nav button.active:before {display:none;}
 .keyboard-open .mobile-bottom-nav {display:none;}
 .dashboard-greeting {margin-bottom:17px;}
 .greeting-label {font-size:12px;}
 .hero-copy {padding:25px 23px;}
 .hero-copy p {font-size:13px;}
 .hero-copy h1 {font-size:34px;line-height:1.25;letter-spacing:-1.1px;}
 .hero-eyebrow {font-size:8px;letter-spacing:1px;}
 .hero-actions {gap:7px;}
 .hero-actions .btn {min-height:44px;font-size:12px;padding:10px 12px;}
 .stats-grid {gap:11px;}
 .stat-card {padding:16px;}
 .stat-card .stat-label {font-size:12px;line-height:1.6;}
 .stat-value {font-size:27px;}
 .stat-meta {font-size:11px;line-height:1.65;}
 .dashboard-stats .stat-meta .text-btn {min-height:28px;font-size:11px;}
 .section-heading h2 {font-size:17px;}
 .quick-agent-grid {gap:11px;}
 .quick-agent-card {padding:17px;min-height:166px;}
 .quick-agent-card strong {font-size:13px;line-height:1.6;}
 .quick-agent-card p {font-size:12px;line-height:1.6;}
 .quick-agent-card .tag,.quick-agent-card .quick-agent-meta{font-size:10px;}
 .attention-row {padding:17px;min-height:85px;gap:10px;}
 .attention-row strong {font-size:13px;}
 .attention-row small {font-size:11px;flex-wrap:wrap;}
 .dashboard-tabs button {min-height:44px;font-size:12px;}
 .dashboard-footer {font-size:10px;line-height:1.8;}
 .workspace-page {height:calc(var(--viewport-height) - var(--header) - var(--nav-height));padding:10px 10px 12px;min-height:0;}
 .workspace-page .page-heading {display:none;}
 .workspace-stage {display:flex;min-height:0;}
 .chat-panel {border-radius:15px;min-height:0;}
 .chat-header {height:73px;min-height:73px;padding:8px 10px;gap:3px;}
 .chat-header > .flex {gap:9px;}
 .chat-header .avatar {width:35px;height:35px;border-radius:11px;}
 .chat-header .avatar .app-icon {width:20px;height:20px;}
 .chat-header h3 {font-size:13px;line-height:1.5;}
 .chat-header .status {font-size:10px;line-height:1.6;}
 .chat-header .status-category,.chat-header .status-separator {display:none;}
 .chat-private {display:none;}
 .mobile-agent-trigger {width:38px;height:44px;margin:0;}
 .chat-head-actions {gap:0;}
 .chat-head-actions .icon-btn {width:38px;height:44px;}
 .chat-feed {padding:22px 16px;scrollbar-gutter:auto;}
 .welcome {padding-top:7px;}
 .welcome h2 {font-size:25px;line-height:1.4;letter-spacing:-.75px;}
 .welcome .eyebrow {font-size:8px;letter-spacing:1.2px;}
 .welcome-desc {font-size:13px;line-height:1.8;margin-bottom:22px;}
 .welcome-symbol {margin-bottom:22px;}
 .welcome-orbit {width:53px;height:53px;}
 .prompt-grid {gap:10px;}
 .prompt-card {padding:14px;min-height:117px;}
 .prompt-card strong {font-size:12px;line-height:1.6;}
 .prompt-card p {font-size:11px;line-height:1.6;}
 .prompt-card .prompt-icon {width:29px;height:29px;margin-bottom:11px;}
 .prompt-card .prompt-icon .app-icon {width:18px;height:18px;}
 .welcome-hint {font-size:10px;line-height:1.8;margin-top:18px;align-items:flex-start;}
 .composer-wrap {padding:0 10px 10px;}
 .composer {padding:12px 11px 9px;border-radius:13px;}
 .composer textarea {line-height:1.55;min-height:44px;max-height:110px;}
 .composer-actions {margin-top:7px;gap:4px;}
 .composer-actions>.flex {gap:1px;}
 .composer-actions .icon-btn {width:36px;min-width:36px;height:44px;}
 .composer-actions .model-select {min-height:44px;font-size:12px;max-width:144px;padding-left:7px;padding-right:2px;}
 .composer-divider {display:none;}
 .send-btn {width:44px;height:44px;border-radius:12px;}
 .send-btn .app-icon {width:21px;height:21px;}
 .char-count {display:none;}
 .composer-note {font-size:10px;margin-top:8px;padding:0 2px;line-height:1.6;}
 .composer-note>span:last-child {display:none;}
 .attachment-chip {font-size:12px;}
 .attachment-chip>button {min-width:36px;min-height:44px;}
 .bubble {font-size:14px;line-height:1.85;}
 .message-meta strong {font-size:12px;}
 .message-meta {font-size:10px;}
 .message.user .bubble-wrap {max-width:91%;}
 .message.assistant .bubble-wrap {max-width:calc(100% - 39px);}
 .message-actions {gap:4px;}
 .demo-inline {font-size:10px;line-height:1.7;}
 .jump-latest {bottom:177px;min-height:44px;font-size:12px;}
 .agent-list-panel.open {position:fixed;inset:12px auto 12px 12px;max-height:calc(var(--viewport-height) - 24px);width:min(320px,calc(100vw - 24px));z-index:81;border-radius:16px;}
 .agent-list-close {display:flex;margin-right:-5px;}
 .agent-list-panel .list-title {gap:8px;}
 .agent-list-panel .list-title .count-pill {margin-left:auto;}
 .agent-list-panel .list-head {padding:15px 18px 0;}
 .agent-list-panel .agent-item {min-height:72px;gap:12px;}
 .agent-list-panel .agent-item strong {font-size:14px;}
 .agent-list-panel .agent-item p {font-size:12px;}
 .agent-list-panel .agent-item .avatar {width:39px;height:39px;}
 .list-head .tab {min-height:44px;font-size:12px;}
 .detail-panel.open {inset:12px 12px 12px auto;width:min(330px,calc(100vw - 24px));max-height:calc(var(--viewport-height) - 24px);z-index:81;border-radius:16px;}
 .detail-shade,.agent-shade {z-index:80;position:fixed;inset:0;}
 .detail-head {padding:14px 14px 0;}
 .detail-section {padding:20px;}
 .detail-profile {padding:20px 8px;}
 .detail-profile p {font-size:13px;}
 .detail-section h4 {font-size:13px;}
 .doc-row strong {font-size:12px;max-width:none;}
 .doc-row small {font-size:11px;}
 .permission-info {font-size:11px;}
 .card-grid {grid-template-columns:1fr;gap:14px;}
 .agent-card {padding:21px;}
 .agent-card .avatar.lg {width:48px;height:48px;}
 .agent-card .agent-desc {font-size:13px;min-height:0;line-height:1.8;}
 .agent-card h3 {font-size:16px;}
 .agent-card-footer .btn {min-height:44px;font-size:13px;}
 .agent-card .tag {font-size:11px;}
 .agent-card-meta {font-size:12px;}
 .library-toolbar {gap:10px;}
 .chip-tabs {max-width:100%;flex-wrap:nowrap;overflow-x:auto;padding:3px 2px 7px;scrollbar-width:thin;}
 .chip-tab {flex-shrink:0;font-size:12px;padding:9px 13px;}
 .library-feature .feature-content {padding:23px;}
 .feature-content p {font-size:13px;}
 .toolbar {gap:12px;}
 .filter-group {width:100%;gap:8px;}
 .filter-group .select {flex:1;min-width:0;font-size:14px!important;}
 .folder-card {padding:17px;min-height:160px;}
 .folder-card strong {font-size:14px;}
 .folder-card p {font-size:11px;line-height:1.6;}
 .permission-layout {gap:18px;}
 .role-panel {padding:5px;}
 .role-item {min-width:122px;min-height:60px;}
 .role-item strong {font-size:12px;}
 .role-item small {font-size:10px;}
 .role-settings {padding:19px;}
 .permission-row strong {font-size:13px;}
 .permission-row p {font-size:12px;}
 .switch {min-width:48px;width:48px;height:44px;}
 .switch .track {inset:10px 2px;}
 .switch .track:after {width:18px;height:18px;}
 .switch input:checked+.track:after {transform:translateX(20px);}
 .task-card h3 {font-size:14px;}
 .task-card p {font-size:12px;}
 .task-card-footer .btn {min-height:44px;font-size:12px;}
 .task-summary {gap:18px;}
 .task-summary>div {gap:7px;}
 .task-summary .tag {font-size:11px;}
 .history-row {flex-wrap:wrap;gap:12px;}
 .history-row>.flex:last-child {margin-left:auto;}
 .history-row h3 {font-size:14px;}
 .history-row p {font-size:12px;}
 .history-row .btn {min-height:44px;font-size:12px;}
 .overlay-backdrop {padding:0;align-items:flex-end;}
 .modal {max-height:calc(var(--viewport-height) - env(safe-area-inset-top) - 10px);max-width:100%;border-radius:20px 20px 0 0;animation:modalIn .18s ease;}
 .modal-head {padding:16px 18px;min-height:72px;}
 .modal-head h2 {font-size:17px;gap:10px;}
 .modal-head h2 small {font-size:11px;}
 .modal-body {padding:20px 18px;}
 .modal-foot {padding:13px 18px calc(13px + env(safe-area-inset-bottom));min-height:74px;gap:8px;flex-wrap:wrap;}
 .modal-foot .btn {font-size:13px;min-height:44px;}
 .modal[data-kind="notifications"],.modal[data-kind="task-detail"] {position:relative;inset:auto;bottom:0;max-width:100%;width:100%;max-height:calc(var(--viewport-height) - env(safe-area-inset-top) - 10px);}
 .modal[data-kind="settings"] .modal-head {align-items:flex-start;}
 .modal[data-kind="settings"] .modal-body {padding:17px;}
 .modal[data-kind="settings"] .modal-foot {gap:7px;}
 .settings-reset {font-size:0!important;min-width:44px;padding:8px!important;}
 .settings-reset .app-icon {width:20px;height:20px;}
 .settings-section {padding:17px;margin-bottom:14px;}
 .settings-section-title h3 {font-size:14px;}
 .settings-intro {font-size:11px;gap:8px;}
 .settings-intro .tag {font-size:10px;}
 .theme-options {gap:9px;}
 .theme-preview {height:65px;padding:5px;gap:5px;}
 .theme-caption {font-size:12px;gap:5px;flex-wrap:wrap;}
 .theme-caption>.app-icon {width:15px;height:15px;}
 .theme-check {width:15px;height:15px;}
 .density-option {padding:13px 10px;font-size:12px;min-height:50px;gap:8px;}
 .settings-note {font-size:11px;}
 .modal .check-label {min-height:44px;font-size:13px;}
 .modal .checkbox {width:20px;height:20px;}
 .unsaved-guard {padding:13px 18px;gap:8px;}
 .unsaved-guard>p {width:100%;flex-basis:100%;font-size:12px;}
 .command-box {align-self:flex-start;margin:calc(12px + env(safe-area-inset-top)) 10px 0;max-width:calc(100% - 20px);max-height:calc(var(--viewport-height) - 24px);border-radius:15px;}
 .command-input {padding:11px 13px;}
 .command-input input {font-size:16px;}
 .command-hint {font-size:10px;}
 .command-result {min-height:49px;font-size:13px;padding:11px 12px;}
 #toast-root {max-width:calc(100vw - 24px);width:fit-content;}
 .toast {font-size:12px;padding:12px 15px;}
}
@media(max-width:640px) {
 .data-table.mobile-cards {display:block;white-space:normal;border-collapse:separate;}
 .mobile-cards thead {position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;}
 .mobile-cards tbody {display:block;padding:12px;}
 .mobile-cards tbody tr {display:flex;flex-wrap:wrap;gap:0;position:relative;border:1px solid var(--border);background:var(--surface);padding:16px;margin-bottom:12px;border-radius:12px;}
 .mobile-cards tbody tr:last-child {margin-bottom:0;}
 .mobile-cards tbody td {display:flex;align-items:flex-start;justify-content:space-between;gap:14px;width:100%;padding:9px 0!important;border:0!important;font-size:12px;line-height:1.7;}
 .mobile-cards tbody .mobile-field:before {content:attr(data-label);color:var(--muted);font-size:12px;flex-shrink:0;}
 .mobile-cards tbody .mobile-summary {padding:0 38px 13px 0!important;margin-bottom:7px;border-bottom:1px solid var(--border)!important;}
 .mobile-summary .user-cell {min-width:0;gap:10px;}
 .mobile-summary .user-cell strong {font-size:14px;}
 .mobile-summary .user-cell small {font-size:11px;overflow-wrap:anywhere;}
 .mobile-summary .file-link {width:100%;min-width:0;gap:10px;}
 .mobile-summary .file-link strong {white-space:normal;overflow-wrap:anywhere;font-size:13px;}
 .mobile-summary .file-link small {font-size:11px;}
 .mobile-cards tbody .mobile-actions {position:absolute;right:8px;top:10px;width:auto;padding:0!important;}
 .mobile-cards tbody .mobile-select {order:10;justify-content:flex-start;align-items:center;min-height:44px;border-top:1px solid var(--border)!important;margin-top:7px;padding:9px 0 0!important;cursor:pointer;}
 .mobile-select:after {content:"Chọn hồ sơ";color:var(--muted);font-size:12px;}
 .mobile-select .checkbox {width:21px;height:21px;margin:0;}
 .table-wrap:has(.mobile-cards) {overflow:visible;}
 .selection-bar {flex-wrap:wrap;gap:10px;font-size:12px;}
 .selection-bar .btn {min-height:44px;font-size:12px;}
 .table-footer {padding:15px;font-size:11px;line-height:1.7;}
}
@media(max-width:360px) {
 .page {padding-left:13px;padding-right:13px;}
 .hero-copy {padding:23px 18px;}
 .hero-copy h1 {font-size:31px;}
 .hero-copy p {font-size:12px;}
 .hero-actions {flex-wrap:wrap;gap:4px;}
 .hero-actions .btn {font-size:12px;}
 .stat-card {padding:13px;}
 .stat-card .stat-label {font-size:11px;}
 .quick-agent-card {padding:15px;}
 .topbar {padding-left:5px;padding-right:8px;}
 .topbar .global-search {width:36px;}
 .topbar .breadcrumbs {font-size:11px;}
 .chat-header {padding:8px;}
 .chat-header .avatar {display:none;}
 .chat-header h3 {font-size:13px;}
 .composer-actions .icon-btn {width:33px;min-width:33px;}
 .composer-actions .model-select {max-width:128px;font-size:11px;}
 .prompt-card {padding:12px;}
 .prompt-card strong {font-size:11px;}
 .prompt-card p {font-size:10px;}
 .page-heading {flex-wrap:wrap;}
 .task-summary {gap:10px;}
 .task-summary .tag {font-size:10px;padding-left:5px;padding-right:5px;}
 .settings-section {padding:14px;}
 .theme-caption>.app-icon {display:none;}
}
@media(max-width:760px) and (max-height:500px) {
 .topbar {height:50px;min-height:50px;}
 :root {--header:50px;}
 .workspace-page {padding:4px 9px 5px;}
 .chat-header {min-height:53px;height:53px;padding-top:4px;padding-bottom:4px;}
 .composer textarea {min-height:28px;}
 .composer {padding-top:8px;padding-bottom:5px;}
 .composer-actions {margin-top:0;}
 .composer-note {display:none;}
 .welcome {padding-top:4px;}
 .sidebar.open .brand {height:61px;}
 .sidebar.open .workspace-switch,.sidebar.open .sidebar-help {display:none;}
 .sidebar.open .sidebar-search {margin-bottom:7px;}
 .sidebar.open .nav-label {margin-top:14px;}
}
/* Final optical rhythm and compact-height rules. */
@media(min-width:1101px) and (max-height:1000px) {.sidebar-usage{display:none}.sidebar-bottom{padding-top:8px}}
@media(max-width:760px) {
 .welcome {padding-top:0;}
 .welcome-symbol {margin-bottom:16px;}
 .welcome-orbit {width:44px;height:44px;border-radius:14px;}
 .welcome-orbit:before {width:54px;height:54px;border-radius:18px;}
 .welcome-orbit .app-icon {width:25px;height:25px;}
 .welcome h2 {font-size:24px;margin-top:8px;line-height:1.36;}
 .welcome-desc {font-size:12px;line-height:1.8;margin:10px auto 18px;}
 .welcome .eyebrow {font-size:8px;}
 .prompt-card {display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:78px;padding:12px 14px;gap:7px;}
 .prompt-card .prompt-icon {width:25px;height:25px;margin:0;}
 .prompt-card strong {font-size:12px;}
 .prompt-card p {display:none;}
 .welcome-hint {margin-top:13px;font-size:10px;}
 .composer-actions .icon-btn,.chat-head-actions .icon-btn,.mobile-agent-trigger {width:44px;min-width:44px;height:44px;}
 .composer-actions .model-select {max-width:133px;}
 .list-head .tab {min-width:44px;}
 .dashboard-stats .stat-meta .text-btn {min-height:44px;}
 .topbar .global-search {width:44px;}
 .tag {font-size:11px;}
}
@media(max-width:360px) {
 .composer-actions .model-select {max-width:112px;}
 .chat-header > .flex {gap:5px;}
 .chat-head-actions .icon-btn {width:44px;}
 .chat-header .status {font-size:9px;}
 .chat-header h3 {font-size:12px;}
}
/* Pointer areas stay distinct from glyph dimensions. */
.checkbox {width:24px;height:24px;flex-shrink:0;}
.attention-panel .panel-heading .icon-btn,.panel-heading .icon-btn {width:36px;height:36px;}
.mobile-select-all {display:none;}
@media(max-width:640px) {
 .mobile-select .checkbox {width:24px;height:24px;}
 .mobile-select-all {display:flex;align-items:center;gap:10px;min-height:52px;padding:12px 16px 0;font-size:13px;cursor:pointer;}
 .mobile-select-all input {width:24px;height:24px;}
}
@media(max-width:760px) {.attention-panel .panel-heading .icon-btn,.panel-heading .icon-btn{width:44px;height:44px}}
@media(max-width:960px) and (max-height:500px) {
 .workspace-page{padding:8px 12px;height:calc(var(--viewport-height) - var(--header) - var(--nav-height));}
 .workspace-page .page-heading{display:none;}
 .workspace-stage{display:flex;}
 .workspace-stage .chat-panel{width:100%;}
 .workspace-stage .agent-list-panel:not(.open){display:none;}
 .mobile-agent-trigger{display:inline-flex;min-width:44px;height:44px;}
 .workspace-stage .agent-list-panel.open{position:fixed;inset:10px auto 10px 10px;max-height:calc(var(--viewport-height) - 20px);width:310px;z-index:81;display:flex;}
 .agent-list-close{display:flex;}
 .agent-shade{display:block;position:fixed;inset:0;z-index:80;background:#11132670;backdrop-filter:blur(3px);}
 .chat-header{height:55px;min-height:55px;}
 .composer-wrap{padding-bottom:8px;}
 .composer{padding-top:9px;padding-bottom:7px;}
 .composer textarea{min-height:30px;}
 .composer-note{display:none;}
 .chat-feed{padding-top:15px;padding-bottom:15px;}
 .workspace-page .welcome{padding-top:0;}
}
/* Contrast refinement for small labels, status tags and initials. */
:root:not([data-theme="dark"]) {--subtle:#667085;--positive:#18745e;--blue:#3e68aa;--orange:#905e21;}
.user-avatar,.topbar .user-avatar {color:#615078;}
.user-avatar.blue {color:#405f95;}
.user-avatar.orange {color:#845b2d;}
.user-avatar.violet {color:#685082;}
.mini-avatars i {color:#69517e;}
.mini-avatars i:nth-child(2) {color:#47618f;}
.mini-avatars i:nth-child(3) {color:#845b31;}
.hero-eyebrow {color:#72618e;}
:root[data-theme="dark"] .hero-eyebrow {color:#b5a7d2;}
:root[data-theme="dark"] .btn {background:var(--surface);color:var(--ink);border-color:var(--border);}
:root[data-theme="dark"] .btn.primary {background:var(--accent);color:#19142c;border-color:var(--accent);}
:root[data-theme="dark"] .btn.soft {background:var(--accent-soft);color:var(--accent);border-color:var(--accent-line);}
:root[data-theme="dark"] .btn.ghost {background:transparent;color:var(--muted);border-color:transparent;}
:root[data-theme="dark"] .btn.danger {background:#3c242b;color:#ffb5c1;border-color:#6f3545;}
:root[data-theme="dark"] .user-avatar.blue {color:#aac9ff;}
:root[data-theme="dark"] .user-avatar.violet {color:#d2baf5;}
:root[data-theme="dark"] .user-avatar.orange {color:#efc79a;}
.topbar .top-avatar.user-avatar {color:var(--accent);background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:10px;width:38px;height:38px;}
.topbar .top-avatar .app-icon {width:20px;height:20px;}
@media(max-width:760px) {.topbar .top-avatar.user-avatar{width:44px;height:44px;min-width:44px;margin-left:3px;}}
/* Card overflow-menu controls retain generous, non-shrinking hit areas. */
.task-card .icon-btn,.task-card > .flex .icon-btn {width:36px;height:36px;min-width:36px;min-height:36px;flex-shrink:0;}
@media(max-width:760px) {.task-card .icon-btn,.task-card > .flex .icon-btn{width:44px;height:44px;min-width:44px;min-height:44px;}}

/* AgentHub 2.2 | Adaptive navigation, work panes, focus mode.
   The layout controller owns --sidebar and data-*; chat is never re-rendered. */
:root { --layout-ease:cubic-bezier(.22,.68,.2,1); --layout-duration:220ms; }
.main-shell {transition:margin-left var(--layout-duration) var(--layout-ease),width var(--layout-duration) var(--layout-ease);}
.sidebar {transition:width var(--layout-duration) var(--layout-ease),padding var(--layout-duration) var(--layout-ease),transform var(--layout-duration) var(--layout-ease),visibility var(--layout-duration);overflow:hidden;}
.sidebar .nav-scroll {min-height:0;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#ffffff18 transparent;}
.sidebar .nav-item {white-space:nowrap;position:relative;min-width:0;}
.sidebar .nav-text {overflow:hidden;text-overflow:ellipsis;}
.sidebar .workspace-switch .grow {overflow:hidden;}
.sidebar .workspace-switch strong {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;}
.nav-toggle {display:inline-flex;flex-shrink:0;width:40px;height:40px;color:var(--muted);}
.topbar>.flex {min-width:0;gap:12px;}
.topbar .breadcrumbs {min-width:0;}
.topbar .breadcrumbs .current {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.topbar .demo-badge {display:none;}
.layout-trigger {display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 11px;border:1px solid var(--border);border-radius:9px;background:var(--surface);font-size:12px;font-weight:550;flex-shrink:0;}
.layout-trigger:hover {border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent);}
.layout-auto-dot {display:none;width:5px;height:5px;border-radius:50%;background:var(--accent);}
.layout-trigger[data-mode="auto"] .layout-auto-dot {display:block;}
.sidebar-layout {display:flex;gap:4px;align-items:center;padding:8px 0 12px;flex-shrink:0;border-top:1px solid #ffffff0a;}
.sidebar-collapse {min-height:42px;padding:0 11px;display:flex;align-items:center;gap:11px;border-radius:9px;flex:1;color:#b7bdcd;text-align:left;}
.sidebar-collapse:hover,.sidebar-layout-settings:hover {color:#eee9ff;background:#ffffff09;}
.sidebar-collapse .sidebar-layout-label {font-size:12px;white-space:nowrap;}
.sidebar-collapse kbd {margin-left:auto;color:#9399ad;font-size:10px;line-height:18px;border:1px solid #ffffff15;border-radius:4px;min-width:18px;text-align:center;}
.sidebar-layout-settings {width:36px;height:40px;color:#a5acc0;}
.sidebar-bottom {flex-shrink:0;}
:root[data-nav="expanded"] .sidebar {padding-left:17px;padding-right:17px;transform:none;visibility:visible;}
:root[data-nav="expanded"] .sidebar .brand {justify-content:flex-start;padding:0 8px;gap:9px;height:78px;}
:root[data-nav="expanded"] .sidebar .brand-word {display:inline;font-size:23px;}
:root[data-nav="expanded"] .sidebar .workspace-switch {display:flex;min-height:55px;}
:root[data-nav="expanded"] .sidebar .sidebar-search {display:flex;}
:root[data-nav="expanded"] .sidebar .nav-label {display:block;font-size:9px;}
:root[data-nav="expanded"] .sidebar .nav-text {display:inline;}
:root[data-nav="expanded"] .sidebar .nav-item {justify-content:flex-start;padding:10px 12px;font-size:12px;min-height:44px;height:auto;gap:11px;margin-bottom:3px;}
:root[data-nav="expanded"] .sidebar .nav-item .badge {display:inline-block;}
:root[data-nav="expanded"] .sidebar .nav-new {display:inline-block;}
:root[data-nav="expanded"] .sidebar .profile {justify-content:flex-start;padding:15px 5px;gap:11px;}
:root[data-nav="expanded"] .sidebar .profile .grow {display:block;}
:root[data-nav="expanded"] .sidebar .profile>.app-icon {display:inline-block;}
:root[data-nav="expanded"] .sidebar .sidebar-help {justify-content:flex-start;padding:10px 11px;}
:root[data-nav="expanded"] .sidebar .sidebar-help span {display:inline;}
:root[data-nav="expanded"] .sidebar .sidebar-help svg:last-child {display:inline;}
:root[data-nav="expanded"] .sidebar .nav-group+.nav-label+.nav-group {border-top:0;padding-top:0;margin-top:0;}
:root[data-nav="compact"] .sidebar {padding:0 10px;transform:none;visibility:visible;}
:root[data-nav="compact"] .sidebar .brand {height:74px;justify-content:center;padding:0;gap:0;}
:root[data-nav="compact"] .brand-mark {width:36px;height:36px;border-radius:11px;}
:root[data-nav="compact"] .sidebar :is(.brand-word,.brand-version,.nav-label,.nav-text,.nav-new,.sidebar-usage,.sidebar-layout-label,.sidebar-collapse kbd,.sidebar-layout-settings) {display:none;}
:root[data-nav="compact"] .workspace-switch {display:flex;width:44px;height:44px;min-height:44px;padding:5px;margin:0 auto 7px;justify-content:center;border-color:#ffffff0a;}
:root[data-nav="compact"] .workspace-switch>.grow,:root[data-nav="compact"] .workspace-switch>.app-icon {display:none;}
:root[data-nav="compact"] .workspace-symbol {width:30px;height:30px;border:0;}
:root[data-nav="compact"] .sidebar-search {display:flex;align-items:center;justify-content:center;width:44px;min-height:44px;margin:0 auto 15px;padding:0;}
:root[data-nav="compact"] .sidebar-search span,:root[data-nav="compact"] .sidebar-search kbd {display:none;}
:root[data-nav="compact"] .nav-scroll {margin-top:0;}
:root[data-nav="compact"] .sidebar .nav-item {height:46px;min-height:46px;justify-content:center;gap:0;padding:0;margin-bottom:5px;}
:root[data-nav="compact"] .sidebar .nav-item .app-icon {width:21px;height:21px;}
:root[data-nav="compact"] .sidebar .nav-item.active {background:#8d74ed20;border-radius:10px;}
:root[data-nav="compact"] .sidebar .nav-item.active:before {left:-7px;height:19px;border-radius:0 4px 4px 0;}
:root[data-nav="compact"] .sidebar .nav-item .badge {display:block;position:absolute;top:3px;right:4px;min-width:13px;height:13px;line-height:13px;padding:0 3px;font-size:8px;border-radius:4px;background:#413556;color:#e5d8ff;}
:root[data-nav="compact"] .sidebar .nav-group+.nav-label+.nav-group {border-top:1px solid #ffffff0c;padding-top:13px;margin-top:13px;}
:root[data-nav="compact"] .sidebar-bottom {padding-top:8px;}
:root[data-nav="compact"] .sidebar-layout {justify-content:center;padding:8px 0 4px;}
:root[data-nav="compact"] .sidebar-collapse {height:44px;min-height:44px;max-width:44px;justify-content:center;padding:0;}
:root[data-nav="compact"] .sidebar .sidebar-help {justify-content:center;padding:4px 0;min-height:44px;}
:root[data-nav="compact"] .sidebar-help span,:root[data-nav="compact"] .sidebar-help svg:last-child {display:none;}
:root[data-nav="compact"] .sidebar .profile {min-height:66px;justify-content:center;padding:12px 0;}
:root[data-nav="compact"] .profile>.grow,:root[data-nav="compact"] .profile>.app-icon {display:none;}
:root[data-nav="hidden"] .sidebar {transform:translateX(-100%);visibility:hidden;pointer-events:none;}
.focus-exit {display:none;align-items:center;gap:8px;border:1px solid var(--accent-line);background:var(--accent-soft);color:var(--accent);border-radius:8px;min-height:36px;padding:6px 11px;font-size:12px;white-space:nowrap;}
.focus-exit kbd {font-size:10px;border:1px solid var(--accent-line);border-radius:4px;padding:0 4px;color:var(--muted);}
:root[data-focus="true"] .focus-exit {display:inline-flex;}
:root[data-focus="true"] .topbar .breadcrumbs {display:none;}
:root[data-focus="true"] .workspace-page>.page-heading {display:none;}
:root[data-focus="true"] .workspace-page {padding-top:18px;padding-bottom:18px;}
:root[data-focus="true"] .workspace-stage>.chat-panel {max-width:1440px;margin:0 auto;width:100%;}
:root[data-focus="true"] .chat-feed {padding-left:max(24px,calc((100% - 900px)/2));padding-right:max(24px,calc((100% - 900px)/2));}
:root[data-focus="true"] .composer-wrap {width:100%;max-width:960px;margin:0 auto;}
/* Three panes adapt to actual available width instead of viewport presets. */
.workspace-stage {display:grid!important;gap:16px;min-width:0;position:relative;align-items:stretch;}
.workspace-stage>.chat-panel {width:100%;min-width:0;grid-row:1;container-type:inline-size;container-name:chat;}
.workspace-stage>.agent-list-panel {min-width:0;grid-row:1;}
.workspace-stage>.detail-panel {min-width:0;grid-row:1;}
.workspace-stage[data-agents="expanded"]>.agent-list-panel {display:flex;position:relative;inset:auto;width:auto;max-height:none;z-index:auto;box-shadow:var(--shadow);border-radius:var(--r);}
.workspace-stage[data-agents="hidden"]>.agent-list-panel {display:none!important;}
.workspace-stage[data-agents="compact"]>.agent-list-panel {display:flex;position:relative;inset:auto;width:72px;max-height:none;z-index:auto;overflow:hidden;box-shadow:var(--shadow);border-radius:var(--r);}
.workspace-stage .mobile-agent-trigger {display:inline-flex;min-width:36px;width:36px;height:38px;margin:0;}
.workspace-stage .agent-collapse {display:inline-flex;width:32px;height:34px;margin-left:auto;}
.workspace-stage .list-title {gap:5px;}
.workspace-stage .list-title h3 {font-size:13px;white-space:nowrap;}
.workspace-stage .list-title .count-pill {margin-left:3px;font-size:10px;}
.workspace-stage .agent-list-close {display:none;}
.workspace-stage .chat-head-actions {flex-shrink:0;}
.workspace-stage .chat-header {gap:8px;padding-left:16px;padding-right:16px;}
.workspace-stage .chat-header>.flex {min-width:0;gap:10px;}
.workspace-stage .chat-header h3 {white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.workspace-stage .chat-private {display:none;}
.workspace-stage[data-agents="compact"] .agent-list-panel .list-head {padding:12px 9px 0;}
.workspace-stage[data-agents="compact"] .agent-list-panel .list-title {justify-content:center;margin:0 0 10px;}
.workspace-stage[data-agents="compact"] .agent-list-panel .list-title h3,
.workspace-stage[data-agents="compact"] .agent-list-panel .count-pill,
.workspace-stage[data-agents="compact"] .agent-list-panel .searchbox,
.workspace-stage[data-agents="compact"] .agent-list-panel .tabs,
.workspace-stage[data-agents="compact"] .agent-list-divider,
.workspace-stage[data-agents="compact"] .agent-item>.grow {display:none;}
.workspace-stage[data-agents="compact"] .agent-collapse {margin:0;width:44px;height:40px;}
.workspace-stage[data-agents="compact"] .agent-list {padding:0 7px;}
.workspace-stage[data-agents="compact"] .agent-item {padding:6px;margin-bottom:8px;min-height:50px;justify-content:center;gap:0;border-radius:11px;}
.workspace-stage[data-agents="compact"] .agent-item .avatar {width:36px;height:36px;border-radius:10px;}
.workspace-stage[data-agents="compact"] .agent-item .selected-dot {right:3px;top:3px;}
.workspace-stage[data-agents="compact"] .agent-item.selected {box-shadow:inset 0 0 0 1px var(--accent-line);}
.workspace-stage[data-agents="compact"] .list-bottom {padding:10px 9px;}
.workspace-stage[data-agents="compact"] .list-bottom .btn {height:44px;min-height:44px;width:100%;padding:0;font-size:0;gap:0;}
.workspace-stage[data-agents="compact"] .list-bottom .app-icon {width:18px;height:18px;}
.workspace-stage>.agent-shade,.workspace-stage>.detail-shade {display:none!important;}
.workspace-stage[data-agents="overlay"]>.agent-shade,
.workspace-stage[data-detail="overlay"]>.detail-shade {display:block!important;position:fixed;inset:0;z-index:79;background:#14152842;backdrop-filter:blur(3px);}
.workspace-stage[data-agents="overlay"]>.agent-list-panel,
.workspace-stage[data-detail="overlay"]>.detail-panel {display:flex!important;position:fixed;inset:12px auto auto 12px;width:min(320px,calc(100vw - 24px));height:calc(var(--viewport-height) - 24px);max-height:calc(var(--viewport-height) - 24px);z-index:81;border-radius:16px;box-shadow:0 20px 80px #15152438;animation:drawerIn .2s var(--layout-ease);}
.workspace-stage[data-detail="overlay"]>.detail-panel {inset:12px 12px auto auto;width:min(340px,calc(100vw - 24px));}
.workspace-stage[data-agents="overlay"] .agent-list-close {display:inline-flex;min-width:44px;width:44px;height:44px;margin-left:auto;}
.workspace-stage[data-agents="overlay"] .agent-collapse {display:none;}
.workspace-stage[data-agents="overlay"] .list-head {padding:15px 18px 0;}
.workspace-stage[data-agents="overlay"] .agent-item {min-height:72px;padding:12px;gap:12px;}
.workspace-stage[data-agents="overlay"] .agent-item strong {font-size:14px;}
.workspace-stage[data-agents="overlay"] .agent-item p {font-size:12px;}
.workspace-stage[data-detail="hidden"]>.detail-panel {display:none!important;}
.workspace-stage[data-detail="docked"]>.detail-panel {display:flex!important;position:relative;inset:auto;width:auto;height:auto;max-height:none;z-index:auto;box-shadow:var(--shadow);animation:none;border-radius:var(--r);overflow:auto;}
.workspace-stage .detail-panel .close-detail {display:inline-flex;}
.workspace-stage .detail-head {gap:6px;padding:14px 15px 0;}
.workspace-stage .detail-head h3 {font-size:13px;white-space:nowrap;}
.workspace-stage .detail-head .icon-btn {width:34px;min-width:34px;height:36px;}
.pane-resizer {display:none;position:absolute;top:12px;bottom:12px;width:14px;z-index:8;cursor:col-resize;touch-action:none;outline-offset:-2px!important;border-radius:8px;align-items:center;justify-content:center;}
.agent-resizer {left:calc(var(--agent-pane-width) + 1px);}
.detail-resizer {right:calc(var(--detail-pane-width) + 1px);}
.workspace-stage[data-agents="expanded"]>.agent-resizer,
.workspace-stage[data-detail="docked"]>.detail-resizer {display:flex;}
.pane-resizer:before {content:"";position:absolute;width:2px;top:0;bottom:0;border-radius:4px;background:var(--accent);opacity:0;transition:opacity .15s;}
.pane-resizer i {width:3px;height:28px;border-radius:4px;background:var(--border);transition:background .15s;}
.pane-resizer:hover i,.pane-resizer:focus-visible i {background:var(--accent);}
.pane-resizer:hover:before,.pane-resizer:focus-visible:before {opacity:.3;}
.layout-resizing,.layout-resizing * {cursor:col-resize!important;user-select:none!important;}
.layout-resizing .main-shell {transition:none;}
/* UI density follows the space released by a collapsed main menu. */
.page:not(.workspace-page) {container-type:inline-size;container-name:page;}
@container page (max-width:980px) {
 .card-grid,.connection-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
 .dashboard-lower {grid-template-columns:minmax(0,1.5fr) minmax(250px,1fr);gap:16px;}
 .task-board {gap:12px;}
 .hero-copy h1 {font-size:32px;}
 .hero-art {transform:scale(.85);margin-right:-10px;}
 .stats-grid {gap:12px;}
}
@container page (max-width:760px) {
 .stats-grid,.quick-agent-grid,.folder-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
 .dashboard-lower,.charts-grid,.permission-layout {grid-template-columns:minmax(0,1fr);}
 .hero-art,.feature-art {display:none;}
 .hero-copy {padding:25px;}
 .hero-copy h1 {font-size:34px;}
 .dashboard-hero {min-height:260px;}
 .task-board {grid-template-columns:minmax(0,1fr);}
 .role-panel {display:flex;overflow:auto;gap:6px;}
 .role-panel .role-item {min-width:140px;}
 .toolbar {flex-wrap:wrap;gap:12px;}
 .toolbar .searchbox {max-width:100%;}
}
@container page (max-width:500px) {
 .card-grid,.connection-grid {grid-template-columns:minmax(0,1fr);}
 .hero-copy h1 {font-size:30px;}
 .page-heading {flex-wrap:wrap;}
 .folder-grid {grid-template-columns:minmax(0,1fr);}
 .toolbar .filter-group {flex-wrap:wrap;}
}
@container chat (max-width:520px) {
 .chat-header .status-separator,.chat-header .status-category {display:none;}
 .chat-header .status {font-size:10px;}
 .chat-header h3 {font-size:13px;}
 .chat-header .chat-head-actions [data-action="new-chat"] {display:none;}
 .chat-header .chat-head-actions .icon-btn {width:36px;min-width:36px;}
 .welcome h2 {font-size:28px;}
 .welcome-desc {font-size:12px;}
 .chat-feed {padding:20px 18px;}
 .prompt-card {padding:12px;min-height:112px;}
 .prompt-card strong {font-size:12px;}
 .prompt-card p {font-size:11px;}
 .composer-note>span:last-child {display:none;}
 .char-count {display:none;}
}
@container chat (max-width:340px) {
 .chat-header>.flex {gap:6px;}
 .chat-header>.flex>.avatar {display:none;}
 .chat-header {padding-left:8px;padding-right:8px;}
 .prompt-card {min-height:105px;}
}
/* Layout preferences: immediate local changes, no account or server settings. */
.modal[data-kind="layout"] {max-width:620px;}
.layout-intro {display:flex;align-items:center;gap:7px;color:var(--positive);font-size:12px;margin-bottom:23px;}
.layout-section {margin-bottom:25px;}
.layout-section h3 {font-size:14px;}
.layout-section>p {font-size:12px;color:var(--muted);line-height:1.8;margin-top:5px;margin-bottom:14px;}
.layout-options {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.layout-choice {padding:10px;border:1px solid var(--border);border-radius:12px;background:var(--surface);text-align:left;min-width:0;transition:background .15s,border-color .15s;}
.layout-choice:hover {border-color:var(--accent-line);background:var(--surface-hover);}
.layout-choice[aria-checked="true"] {background:var(--accent-soft);border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);}
.layout-mini {height:82px;background:var(--surface-alt);border:1px solid var(--border);border-radius:7px;display:flex;gap:6px;padding:6px;margin-bottom:12px;overflow:hidden;position:relative;}
.layout-mini-sidebar {display:flex;flex-direction:column;gap:6px;width:36%;border-radius:4px;background:#292b38;padding:9px 5px;font-style:normal;}
.layout-mini-sidebar b {display:block;height:4px;width:90%;border-radius:3px;background:#6d6c85;}
.layout-mini-sidebar b:first-child {background:#a794f3;}
.mini-compact .layout-mini-sidebar {width:17%;align-items:center;padding:9px 3px;}
.mini-compact .layout-mini-sidebar b {height:6px;width:6px;}
.mini-auto .layout-mini-sidebar {width:26%;}
.layout-mini-content {flex:1;display:grid;grid-template-columns:1fr 1fr;gap:5px;font-style:normal;}
.layout-mini-content b {border-radius:3px;background:var(--surface);border:1px solid var(--border);}
.layout-mini-content b:first-child {grid-column:span 2;background:var(--accent-soft);border-color:var(--accent-line);}
.mini-auto-dot {position:absolute;bottom:7px;right:7px;width:12px;height:12px;border:3px solid var(--surface);background:var(--accent);border-radius:50%;box-shadow:0 0 0 1px var(--border);}
.layout-choice-title {display:flex;align-items:center;gap:6px;font-size:12px;font-weight:650;white-space:nowrap;}
.layout-choice-check {width:16px;height:16px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--border);margin-left:auto;flex-shrink:0;}
.layout-choice-check svg {opacity:0;}
.layout-choice[aria-checked="true"] .layout-choice-check {background:var(--accent);border-color:var(--accent);color:white;}
.layout-choice[aria-checked="true"] .layout-choice-check svg {opacity:1;}
.layout-choice-desc {display:block;font-size:10px;line-height:1.65;color:var(--muted);margin-top:6px;}
.layout-agent-options {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
.layout-agent-options button {min-height:44px;padding:9px;border:1px solid var(--border);border-radius:9px;display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;}
.layout-agent-options button[aria-checked="true"] {border-color:var(--accent);background:var(--accent-soft);color:var(--accent);}
.adaptive-explainer {display:flex;align-items:flex-start;gap:12px;padding:15px;border:1px solid var(--border);border-radius:11px;background:var(--surface-alt);}
.adaptive-explainer>.app-icon {color:var(--accent);margin-top:3px;}
.adaptive-explainer strong {font-size:13px;}
.adaptive-explainer p {font-size:12px;line-height:1.85;color:var(--muted);margin-top:4px;}
#layout-status {display:block;font-size:11px;color:var(--accent);margin-top:8px;}
.layout-shortcuts {display:grid;gap:10px;margin-top:20px;font-size:12px;color:var(--muted);}
.layout-shortcuts>span {display:flex;justify-content:space-between;align-items:center;gap:10px;}
.layout-shortcuts kbd {font-size:10px;color:var(--ink);padding:4px 7px;background:var(--surface-alt);border:1px solid var(--border);border-radius:6px;}
@media(min-width:761px) and (max-height:800px) {
 :root[data-nav="expanded"] .sidebar .brand {height:65px;}
 :root[data-nav="expanded"] .sidebar .workspace-switch {margin-bottom:10px;}
 :root[data-nav="expanded"] .sidebar .sidebar-search {margin-bottom:15px;}
 :root[data-nav="expanded"] .sidebar .nav-label.admin {margin-top:18px;}
 .sidebar-layout {padding-top:5px;padding-bottom:5px;}
 .sidebar .sidebar-usage {display:none;}
}
@media(max-width:1100px) {
 .topbar {padding-left:18px;padding-right:18px;}
 .global-search span {display:none;}
 .global-search {min-width:0;}
 .global-search kbd {display:none;}
 .layout-trigger {height:40px;}
}
@media(max-width:760px) {
 :root[data-nav="drawer"] .sidebar {width:min(310px,calc(100vw - 32px));}
 .main-shell {transition:none;}
 .topbar {padding-left:10px;padding-right:10px;}
 .topbar>.flex {gap:6px;}
 .topbar .nav-toggle {display:inline-flex;width:44px;min-width:44px;height:44px;}
 .topbar .layout-trigger {width:44px;min-width:44px;height:44px;padding:0;justify-content:center;background:none;border-color:transparent;gap:0;position:relative;}
 .layout-trigger>span {display:none;}
 .layout-auto-dot {position:absolute;right:8px;top:8px;}
 .topbar .global-search {display:none;}
 .sidebar-layout {border-top:0;padding:0 0 5px;}
 .sidebar-layout .sidebar-collapse {display:none;}
 .sidebar-layout .sidebar-layout-settings {width:100%;height:44px;justify-content:flex-start;padding:0 11px;gap:11px;}
 .sidebar-layout .sidebar-layout-settings:after {content:"B\1ed1  c\1ee5 c linh ho\1ea1 t";font-size:13px;}
 .workspace-stage {gap:0;}
 .workspace-stage .chat-header {min-height:70px;padding-left:9px;padding-right:9px;}
 .workspace-stage .chat-header>.flex {gap:7px;}
 .workspace-stage .chat-header .mobile-agent-trigger {width:44px;min-width:44px;height:44px;}
 .workspace-stage .chat-head-actions .icon-btn {width:44px;min-width:44px;height:44px;}
 .workspace-stage .chat-header .avatar {width:30px;height:30px;}
 .workspace-stage .chat-header .status {font-size:10px;}
 .workspace-stage .chat-head-actions [data-action="new-chat"] {display:none;}
 .workspace-stage .detail-head .icon-btn {width:44px;height:44px;min-width:44px;}
 .pane-resizer {display:none!important;}
 :root[data-focus="true"] {--nav-height:0px;}
 :root[data-focus="true"] .mobile-bottom-nav {display:none;}
 :root[data-focus="true"] .focus-exit {min-height:40px;font-size:11px;padding:6px 8px;}
 :root[data-focus="true"] .focus-exit kbd {display:none;}
 :root[data-focus="true"] .workspace-page {padding:10px 10px 12px;}
 :root[data-focus="true"] .chat-feed {padding:20px 17px;}
 .layout-options {gap:8px;}
 .layout-choice {padding:8px;}
 .layout-choice-title {flex-wrap:wrap;gap:4px;white-space:normal;font-size:11px;}
 .layout-choice-title>.app-icon {display:none;}
 .layout-choice-desc {font-size:10px;line-height:1.7;}
 .layout-mini {height:68px;}
 .layout-agent-options button {flex-direction:column;font-size:11px;min-height:62px;gap:7px;}
 .layout-shortcuts {display:none;}
}
@media(max-width:360px) {
 .topbar .bell-wrap {display:none;}
 .focus-exit>span {font-size:10px;}
 .workspace-stage .chat-header>.flex>.avatar {display:none;}
 .layout-choice-check {width:14px;height:14px;}
}
@media(prefers-reduced-motion:reduce) {
 .sidebar,.main-shell,.pane-resizer:before,.pane-resizer i {transition:none!important;}
}

/* AgentHub 2.3 | More room for work. Loaded after the existing design system.
   Desktop uses a compact heading. Mobile chat has no upper or lower nav bars;
   actions live beside the composer. No JS re-render is needed for resizing. */
:root { --header:56px; --work-gutter:12px; --pane-gap:10px; }
.mobile-only {display:none!important;}
.topbar {height:var(--header);padding-left:16px;padding-right:16px;}
.topbar .global-search {min-height:34px;}
.page {max-width:none;padding:16px;}
.page-heading {margin-bottom:16px;gap:12px;min-height:40px;}
.page-heading h1 {font-size:24px;letter-spacing:-.7px;}
.page-heading>div:first-child {min-width:0;}
.page-heading p {display:none;}
.heading-actions {flex-shrink:0;}
:root[data-view="workspace"],:root[data-view="workspace"] body {overflow:hidden;}
:root[data-view="workspace"] .main-shell {min-height:0;height:var(--viewport-height);}
.workspace-page,:root[data-density="compact"] .workspace-page,:root[data-focus="true"] .workspace-page {height:calc(var(--viewport-height) - var(--header));padding:10px var(--work-gutter);min-height:0!important;max-width:none;}
.workspace-page>.page-heading {flex-shrink:0;min-height:38px;height:38px;margin:0 0 10px;align-items:center;}
.workspace-page>.page-heading h1 {font-size:22px;line-height:1.25;}
.workspace-page>.page-heading .btn {min-height:36px;padding:7px 13px;}
.workspace-stage {gap:var(--pane-gap);min-height:0;min-width:0;}
.workspace-stage>.chat-panel {border-radius:12px;}
.workspace-stage .chat-header {height:56px;min-height:56px;padding:0 14px;}
.workspace-stage .chat-header .avatar {width:32px;height:32px;border-radius:10px;}
.workspace-stage .chat-header .avatar .app-icon {width:18px;height:18px;}
.workspace-stage .chat-header h3 {font-size:13px;}
.workspace-stage .chat-header .status {font-size:10px;margin-top:1px;}
.workspace-stage .chat-head-actions .icon-btn {width:38px;min-width:38px;height:38px;}
.workspace-stage .mobile-agent-trigger {width:34px;min-width:34px;height:38px;}
.workspace-stage[data-agents="expanded"] .list-head {padding:13px 12px 0;}
.workspace-stage[data-agents="expanded"] .list-title {margin-bottom:9px;}
.workspace-stage[data-agents="expanded"] .list-head .input {min-height:36px;}
.workspace-stage[data-agents="expanded"] .list-head .tabs {margin-top:9px;}
.workspace-stage[data-agents="expanded"] .list-head .tab {min-height:32px;font-size:11px;}
.workspace-stage[data-agents="expanded"] .agent-list {padding:7px;}
.workspace-stage[data-agents="expanded"] .agent-list-divider {padding:9px 8px;}
.workspace-stage[data-agents="expanded"] .agent-item {min-height:59px;padding:10px 8px;margin-bottom:3px;gap:9px;}
.workspace-stage[data-agents="expanded"] .agent-item p {font-size:10px;}
.workspace-stage[data-agents="expanded"] .list-bottom {padding:10px;}
.workspace-stage[data-agents="expanded"] .list-bottom .btn {font-size:11px;min-height:36px;}
.pane-resizer {width:var(--pane-gap);}
.agent-resizer {left:var(--agent-pane-width);}
.detail-resizer {right:var(--detail-pane-width);}
.chat-feed,:root[data-focus="true"] .chat-feed {padding:18px clamp(18px,2.1vw,32px) 18px;scrollbar-width:thin;}
.chat-feed:has(.compact-welcome) {display:flex;flex-direction:column;}
.chat-date {margin-bottom:16px;font-size:10px;}
.message {margin-bottom:22px;}
.message.assistant {max-width:100%;}
.message.assistant .bubble-wrap {width:100%;max-width:calc(100% - 42px);}
.message.user .bubble-wrap {max-width:85%;}
.bubble {font-size:14px;line-height:1.85;overflow-wrap:anywhere;}
.message-actions {margin-top:6px;}
.message-actions .icon-btn {width:32px;height:32px;}
.demo-inline {margin-top:6px;}
.composer-wrap,:root[data-focus="true"] .composer-wrap {padding:0 clamp(14px,1.6vw,24px) 9px;max-width:none;width:100%;flex-shrink:0;}
.composer {padding:10px 12px 7px;border-radius:14px;box-shadow:0 2px 12px #27223b04;border-color:var(--accent-line);}
.composer:focus-within {box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 7%,transparent);border-color:var(--accent);}
.composer-input-row {display:flex;align-items:flex-end;gap:10px;min-width:0;}
.composer-input-row textarea {display:block;flex:1;min-width:0;width:0;min-height:34px;max-height:160px;margin:0;padding:5px 0;resize:none;font-size:14px;line-height:1.65;}
.composer-input-row .send-btn {flex-shrink:0;width:38px;height:38px;border-radius:11px;}
.composer-actions {display:flex;align-items:center;justify-content:flex-start;gap:6px;margin-top:3px;min-height:34px;}
.composer-desktop-tools {display:flex;align-items:center;gap:3px;}
.composer-spacer {flex:1;}
.composer-actions .model-select {font-size:11px;max-width:200px;min-height:32px;}
.composer-actions .icon-btn {width:34px;min-width:34px;height:34px;}
.composer-note {margin-top:5px;font-size:9px;min-height:14px;}
.composer-note kbd {font:inherit;}
#jump-latest {bottom:calc(var(--composer-height,130px) + 12px);}
.compact-welcome {width:100%;max-width:640px;padding:24px 0;margin:auto;}
.compact-welcome .welcome-symbol {margin-bottom:16px;}
.compact-welcome .welcome-orbit {width:52px;height:52px;border-radius:16px;}
.compact-welcome .welcome-orbit:before {width:64px;height:64px;border-radius:20px;}
.compact-welcome h2 {font-size:30px;letter-spacing:-.9px;line-height:1.35;margin:0;}
.welcome-agent-label {display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;color:var(--muted);margin:10px 0 25px;}
.welcome-agent-label .tag {font-size:10px;background:var(--surface-hover);color:var(--muted);}
.compact-welcome .prompt-grid {gap:10px;}
.compact-welcome .prompt-card {display:flex;align-items:flex-start;gap:11px;min-height:84px;padding:16px;text-align:left;}
.compact-welcome .prompt-card .prompt-icon {width:30px;height:30px;flex-shrink:0;margin:0;border-radius:8px;}
.compact-welcome .prompt-card>div:nth-child(2) {padding-top:1px;min-width:0;}
.compact-welcome .prompt-card strong {font-size:12px;line-height:1.6;}
.compact-welcome .prompt-card p {font-size:11px;margin-top:4px;}
.compact-welcome .prompt-card>.app-icon {position:absolute;right:9px;top:9px;width:11px;height:11px;opacity:.6;}
.compact-welcome .welcome-hint {margin-top:20px;font-size:10px;}
:root[data-focus="true"] .workspace-stage>.chat-panel {max-width:none;margin:0;}
/* Compact action sheets retain all operations without a permanent mobile header. */
.modal[data-kind="chat-tools"],.modal[data-kind="chat-attachments"],.modal[data-kind="chat-history"] {max-width:540px;}
.chat-tool-agent {display:flex;align-items:center;gap:11px;padding:0 0 18px;margin-bottom:16px;border-bottom:1px solid var(--border);}
.chat-tool-agent strong {display:block;font-size:13px;}
.chat-tool-agent small {font-size:11px;color:var(--muted);display:block;margin-top:3px;}
.chat-tools-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:16px;}
.chat-tool-action {display:flex;align-items:center;gap:12px;width:100%;min-width:0;min-height:66px;padding:12px;text-align:left;border-radius:11px;border:1px solid transparent;}
.chat-tool-action:hover {background:var(--accent-soft);border-color:var(--accent-line);}
.chat-tool-action strong {font-size:13px;line-height:1.5;display:block;}
.chat-tool-action small {display:block;font-size:11px;line-height:1.5;color:var(--muted);margin-top:4px;}
.chat-tool-icon {width:34px;height:34px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--accent);background:var(--accent-soft);border-radius:10px;}
.chat-tools-grid .chat-tool-action {border-color:var(--border);flex-direction:column;align-items:flex-start;gap:10px;min-height:105px;}
.chat-tools-grid .chat-tool-action>.app-icon {display:none;}
.chat-tools-secondary {display:grid;gap:3px;}
.chat-tools-secondary .chat-tool-action>.app-icon {color:var(--muted);}
.sheet-demo-note {font-size:11px;color:var(--muted);line-height:1.7;margin-top:16px;padding:0 12px;}
.quick-history-search {margin-bottom:12px;}
.quick-history-row {display:flex;align-items:center;gap:12px;min-height:74px;width:100%;padding:12px 8px;text-align:left;border-bottom:1px solid var(--border);}
.quick-history-row:hover {background:var(--surface-hover);}
.quick-history-row strong {display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;}
.quick-history-row small {display:block;font-size:11px;color:var(--muted);margin-top:4px;}
.quick-history-row>.app-icon {color:var(--muted);}
.quick-history-empty {display:flex;flex-direction:column;align-items:center;gap:13px;padding:44px 12px;color:var(--muted);font-size:13px;}
@media (max-width:760px), (max-width:960px) and (max-height:500px) {
 :root {--work-gutter:10px;}
 .page {padding:14px 12px;}
 .page-heading {margin-bottom:14px;}
 .page-heading h1 {font-size:23px;}
 :root[data-view="workspace"] {--header:0px;--nav-height:0px;--pane-gap:0px;}
 :root[data-view="workspace"] .topbar,
 :root[data-view="workspace"] .workspace-page>.page-heading,
 :root[data-view="workspace"] .workspace-stage .chat-header,
 :root[data-view="workspace"] .mobile-bottom-nav {display:none!important;}
 :root[data-view="workspace"] .main-shell {position:fixed;inset:var(--viewport-top,0px) 0 auto;height:var(--viewport-height);min-height:0!important;padding:0!important;width:100%;margin:0;transition:none;}
 :root[data-view="workspace"] #main-content {height:100%;min-height:0;overflow:hidden;}
 :root[data-view="workspace"] .workspace-page {height:100%;padding:0!important;max-width:none;}
 :root[data-view="workspace"] .workspace-stage {height:100%;min-height:0;gap:0;}
 :root[data-view="workspace"] .workspace-stage>.chat-panel {height:100%;max-width:none;border:0;border-radius:0;margin:0;box-shadow:none;background:var(--surface);}
 :root[data-view="workspace"] .mobile-only {display:inline-flex!important;}
 :root[data-view="workspace"] .desktop-only {display:none!important;}
 :root[data-view="workspace"] .chat-feed {padding:max(12px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) 16px max(14px,env(safe-area-inset-left));scrollbar-gutter:auto;}
 :root[data-view="workspace"] .chat-date {font-size:10px;margin-bottom:20px;margin-top:0;}
 :root[data-view="workspace"] .message {gap:8px;margin-bottom:24px;}
 :root[data-view="workspace"] .message.assistant {display:block;}
 :root[data-view="workspace"] .message.assistant>.avatar {display:none;}
 :root[data-view="workspace"] .message.assistant .bubble-wrap {max-width:100%;width:100%;}
 :root[data-view="workspace"] .message-meta {font-size:10px;margin-bottom:6px;}
 :root[data-view="workspace"] .message-meta strong {font-size:12px;color:var(--muted);}
 :root[data-view="workspace"] .bubble {font-size:15px;line-height:1.8;}
 :root[data-view="workspace"] .message.user .bubble-wrap {max-width:90%;}
 :root[data-view="workspace"] .message.user .message-meta strong {display:none;}
 :root[data-view="workspace"] .message.user .bubble {border-radius:17px 5px 17px 17px;padding:10px 14px;}
 :root[data-view="workspace"] .message-actions {gap:2px;margin-left:-9px;margin-top:3px;}
 :root[data-view="workspace"] .message-actions .icon-btn {width:44px;height:44px;}
 :root[data-view="workspace"] .demo-inline {font-size:10px;padding:3px 6px;line-height:1.6;}
 :root[data-view="workspace"] .composer-wrap {width:100%;max-width:none;flex-shrink:0;padding:6px max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:var(--surface);}
 :root[data-view="workspace"] .composer {padding:6px;border-radius:20px;box-shadow:0 3px 18px #23204006;border:1px solid var(--accent-line);background:var(--surface);}
 :root[data-view="workspace"] .composer:focus-within {border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 7%,transparent);}
 :root[data-view="workspace"] .composer-input-row {min-height:44px;gap:6px;align-items:flex-end;}
 :root[data-view="workspace"] .composer-input-row textarea {font-size:16px!important;line-height:1.6;min-height:28px;padding:8px 0;margin:0 0 0 1px;max-height:120px;}
 :root[data-view="workspace"] .composer-input-row .send-btn {height:44px;width:44px;border-radius:14px;}
 :root[data-view="workspace"] .composer-input-row .composer-add {height:44px;width:44px;min-width:44px;border-radius:13px;align-items:center;justify-content:center;color:var(--muted);}
 :root[data-view="workspace"] .composer-actions {display:flex;gap:5px;margin:2px 0 0;padding:0 1px;min-height:44px;}
 :root[data-view="workspace"] .composer-agent-switch {display:flex;align-items:center;gap:6px;min-height:44px;min-width:0;flex:1;max-width:210px;padding:0 7px;border-radius:12px;font-size:12px;line-height:1.4;text-align:left;color:var(--ink);}
 .composer-agent-switch:hover {background:var(--surface-hover);}
 .agent-mini {width:22px;height:26px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--accent);}
 .agent-mini.blue {color:var(--blue);}.agent-mini.orange {color:var(--orange);}.agent-mini.rose {color:var(--rose);}
 .agent-short-name {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:capitalize;}
 .composer-agent-switch>.app-icon {color:var(--muted);margin-left:auto;}
 :root[data-view="workspace"] .composer-actions .model-select {font-size:12px!important;min-height:44px;max-width:138px;min-width:0;flex:0 1 130px;padding:0 5px;background:transparent;border:0;border-radius:10px;margin-left:auto;}
 :root[data-view="workspace"] .composer-actions .composer-more {width:44px;min-width:44px;height:44px;margin-left:1px;border-radius:12px;display:flex;align-items:center;justify-content:center;}
 :root[data-view="workspace"] .composer-note {display:none;}
 :root[data-view="workspace"] .attachment-chips {margin:1px 3px 7px;max-height:92px;overflow:auto;}
 :root[data-view="workspace"] .attachment-chip {font-size:11px;min-height:40px;}
 :root[data-view="workspace"] .attachment-chip>button {min-width:40px;height:40px;}
 :root[data-view="workspace"] #jump-latest {bottom:calc(var(--composer-height,116px) + 10px);min-height:40px;padding:7px 12px;font-size:11px;z-index:4;}
 :root[data-view="workspace"] .compact-welcome {padding:22px 0;max-width:530px;}
 :root[data-view="workspace"] .compact-welcome .welcome-symbol {margin-bottom:20px;}
 :root[data-view="workspace"] .compact-welcome h2 {font-size:28px;letter-spacing:-.9px;}
 :root[data-view="workspace"] .welcome-agent-label {margin:10px 0 27px;font-size:12px;}
 :root[data-view="workspace"] .compact-welcome .prompt-grid {gap:9px;}
 :root[data-view="workspace"] .compact-welcome .prompt-card {padding:13px 12px;min-height:94px;flex-direction:column;gap:9px;border-radius:13px;}
 :root[data-view="workspace"] .compact-welcome .prompt-icon {height:24px;width:24px;background:transparent;border-radius:0;}
 :root[data-view="workspace"] .compact-welcome .prompt-card strong {font-size:12px;line-height:1.5;}
 :root[data-view="workspace"] .compact-welcome .prompt-card p {display:none;}
 :root[data-view="workspace"] .compact-welcome .welcome-hint {font-size:10px;line-height:1.7;margin-top:22px;justify-content:center;}
 :root[data-view="workspace"] .pane-resizer {display:none!important;}
 /* Sheets overlay, never shrink or rebuild the message list. */
 .workspace-stage[data-agents="overlay"]>.agent-list-panel,
 .workspace-stage[data-detail="overlay"]>.detail-panel {position:fixed;inset:auto auto 0 50%;transform:translateX(-50%);width:min(560px,100%);height:min(650px,calc(var(--viewport-height) - 16px));max-height:calc(var(--viewport-height) - 16px);border-radius:22px 22px 0 0;box-shadow:0 -10px 50px #15152420;animation:none;padding-bottom:env(safe-area-inset-bottom);}
 .workspace-stage[data-agents="overlay"] .list-head {padding:12px 16px 0;}
 .workspace-stage[data-agents="overlay"] .list-title {margin-bottom:10px;}
 .workspace-stage[data-agents="overlay"] .agent-list-divider {display:none;}
 .workspace-stage[data-agents="overlay"] .agent-item {min-height:62px;padding:10px 12px;margin-bottom:3px;}
 .workspace-stage[data-agents="overlay"] .list-bottom {padding:10px 14px;}
 .workspace-stage[data-detail="overlay"] .detail-head {padding:10px 16px 0;}
 .workspace-stage[data-detail="overlay"] .detail-profile {padding:20px 10px;}
 .modal[data-kind="chat-tools"],.modal[data-kind="chat-attachments"],.modal[data-kind="chat-history"] {max-width:560px;width:100%;border-radius:22px 22px 0 0;max-height:calc(var(--viewport-height) - 12px);margin:0;}
 .overlay-backdrop:has(.modal[data-kind^="chat-"]) {align-items:flex-end;padding:0;}
 .modal[data-kind^="chat-"] .modal-head {padding:16px 18px 12px;min-height:64px;}
 .modal[data-kind^="chat-"] .modal-head h2 {font-size:18px;}
 .modal[data-kind^="chat-"] .modal-body {padding:16px 18px max(20px,env(safe-area-inset-bottom));}
 .modal[data-kind^="chat-"] .modal-head .icon-btn {width:44px;height:44px;min-width:44px;}
 .chat-tool-action strong {font-size:13px;}
 .chat-tool-action small {font-size:12px;}
 .chat-tools-grid .chat-tool-action {min-height:102px;}
 .quick-history-search input {font-size:16px;min-height:44px;}
 :root[data-view="workspace"] #toast-root {bottom:calc(130px + env(safe-area-inset-bottom));}
 /* Also support a phone rotated to landscape. */
 :root[data-nav="drawer"] .sidebar {width:min(310px,calc(100vw - 32px));height:var(--viewport-height);padding:env(safe-area-inset-top) 17px env(safe-area-inset-bottom);z-index:80;}
 :root[data-nav="drawer"] .sidebar:not(.open) {visibility:hidden;transform:translateX(-100%);pointer-events:none;}
 :root[data-nav="drawer"] .sidebar.open {visibility:visible;transform:none;pointer-events:auto;}
 :root[data-nav="drawer"] .sidebar.open .nav-text {display:inline;}
 :root[data-nav="drawer"] .sidebar.open .nav-item {justify-content:flex-start;gap:12px;min-height:44px;}
 :root[data-nav="drawer"] .sidebar.open .nav-close {display:flex;position:absolute;top:8px;right:8px;z-index:2;}
 :root[data-nav="drawer"] .mobile-shade.open {display:block;position:fixed;inset:0;z-index:79;background:#14152850;backdrop-filter:blur(3px);}
}
@media(max-width:360px) {
 :root[data-view="workspace"] .chat-feed {padding-left:12px;padding-right:12px;}
 :root[data-view="workspace"] .composer-actions .model-select {max-width:112px;flex-basis:112px;font-size:11px!important;}
 :root[data-view="workspace"] .composer-agent-switch {gap:4px;padding:0 4px;font-size:11px;}
 .chat-tools-grid {gap:8px;}
 .chat-tools-grid .chat-tool-action {padding:10px;}
}
@media(max-width:960px) and (max-height:500px) {
 :root[data-view="workspace"] .chat-feed {padding-top:10px;padding-bottom:10px;}
 :root[data-view="workspace"] .compact-welcome {padding:6px 0;max-width:650px;}
 :root[data-view="workspace"] .compact-welcome .welcome-symbol {display:none;}
 :root[data-view="workspace"] .compact-welcome h2 {font-size:22px;}
 :root[data-view="workspace"] .compact-welcome .welcome-agent-label {margin:5px 0 12px;}
 :root[data-view="workspace"] .compact-welcome .prompt-grid {grid-template-columns:repeat(4,minmax(0,1fr));}
 :root[data-view="workspace"] .compact-welcome .prompt-card {min-height:66px;padding:9px;gap:5px;}
 :root[data-view="workspace"] .compact-welcome .welcome-hint {margin-top:10px;}
 :root[data-view="workspace"] .composer-wrap {padding-top:4px;padding-bottom:max(5px,env(safe-area-inset-bottom));}
 :root[data-view="workspace"] .composer {max-width:760px;margin:auto;}
 :root[data-nav="drawer"] .sidebar .brand {height:52px;}
 :root[data-nav="drawer"] .sidebar .sidebar-usage {display:none;}
 :root[data-nav="drawer"] .sidebar .sidebar-help {display:none;}
}
@media(prefers-reduced-motion:reduce) {
 .composer,.prompt-card,.chat-tool-action {transition:none!important;}
}
.agent-short-name {text-transform:none;}
@media(max-width:760px), (max-width:960px) and (max-height:500px) {
 :root[data-view="workspace"] .overlay-backdrop {top:var(--viewport-top,0px);bottom:auto;height:var(--viewport-height);}
 .workspace-stage[data-agents="overlay"]>.agent-list-panel,
 .workspace-stage[data-detail="overlay"]>.detail-panel {
  --sheet-height:min(650px,calc(var(--viewport-height) - 16px));
  top:calc(var(--viewport-top,0px) + var(--viewport-height) - var(--sheet-height));bottom:auto;height:var(--sheet-height);
 }
 :root[data-view="workspace"][data-nav="drawer"] .sidebar {top:var(--viewport-top,0px);bottom:auto;}
}
/* A full-height screen must not enter with a translateY animation: even a few
   pixels would momentarily push the composer beneath the visible viewport. */
.workspace-page {animation:none!important;}
@media(max-width:760px) {
 :root:not([data-view="workspace"]) {--header:calc(56px + env(safe-area-inset-top));}
}

.md{line-height:1.72;font-size:15px;overflow-wrap:anywhere;color:var(--ink)}
.md>:first-child{margin-top:0}.md>:last-child{margin-bottom:0}
.md p{margin:0 0 .8em}
.md h1,.md h2,.md h3,.md h4{color:var(--ink);line-height:1.32;font-weight:750;letter-spacing:-.015em}
.md h1{font-size:1.42em;margin:.2em 0 .45em}.md h2{font-size:1.18em;margin:1.25em 0 .55em}.md h3{font-size:1.06em;margin:1.05em 0 .45em}.md h4{font-size:1em;margin:.9em 0 .4em}
.md ul,.md ol{margin:0 0 .85em;padding-left:1.45em}.md li{margin:.32em 0;line-height:1.68}.md li>ul,.md li>ol{margin:.25em 0 0}
.md a{color:var(--accent);text-decoration:underline}
.md code{font-family:ui-monospace,SFMono-Regular,Consolas,Menlo,monospace;font-size:.88em;background:var(--surface-alt);border:1px solid var(--border);border-radius:6px;padding:1px 6px}
.md pre{margin:0 0 .9em;background:var(--surface-alt);border:1px solid var(--border);border-radius:12px;padding:12px 14px;overflow-x:auto;max-width:100%}
.md pre code{background:none;border:0;padding:0;font-size:.86em;white-space:pre;color:var(--ink)}
.md blockquote{margin:0 0 .9em;padding:.35em 0 .35em 14px;border-left:3px solid var(--accent);color:var(--muted)}
.md blockquote>p{margin:0}
.md hr{border:0;border-top:1px solid var(--border);margin:1.1em 0}
.md .md-table{overflow-x:auto;max-width:100%;margin:.35em 0 1em}
.md a.md-img{display:block;width:fit-content;max-width:100%;margin:0 0 .9em;line-height:0}
.md a.md-img img{display:block;max-width:100%;height:auto;max-height:70vh;border-radius:14px;border:1px solid var(--accent-line,rgba(0,0,0,.12));cursor:zoom-in;background:rgba(127,127,127,.08)}
/* ChatGPT Web clean horizontal-line tables */
.md table{border-collapse:collapse;width:100%;min-width:100%;font-size:.94em}
.md th,.md td{border:0;border-bottom:1px solid var(--border);padding:10px 16px 10px 0;text-align:left;vertical-align:top;background:transparent;line-height:1.6}
.md th:last-child,.md td:last-child{padding-right:0}
.md th{color:var(--ink);font-weight:700;border-bottom:1.5px solid var(--border);padding-bottom:9px}
.md tbody tr:nth-child(even) td{background:transparent}
.md tbody tr:hover td{background:color-mix(in srgb,var(--surface-alt) 55%,transparent)}
/* ChatGPT Web colored status pills */
.md-pills{display:flex;flex-wrap:wrap;gap:6px;margin:.15em 0 .95em}
.md h1+.md-pills,.md h2+.md-pills{margin-top:-.1em}
.md-pill{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;font-size:.78em;font-weight:650;line-height:1.55;letter-spacing:.01em;white-space:nowrap;vertical-align:middle}
.md-pill.green{background:#dcfce7;color:#15803d}
.md-pill.orange{background:#ffedd5;color:#b45309}
.md-pill.gray{background:#f1f5f9;color:#475569}
.md-pill.blue{background:#dbeafe;color:#1d4ed8}
.md-pill.red{background:#fee2e2;color:#b91c1c}
:root[data-theme="dark"] .md-pill.green{background:rgba(34,197,94,.18);color:#86efac}
:root[data-theme="dark"] .md-pill.orange{background:rgba(245,158,11,.18);color:#fcd34d}
:root[data-theme="dark"] .md-pill.gray{background:rgba(148,163,184,.18);color:#cbd5e1}
:root[data-theme="dark"] .md-pill.blue{background:rgba(59,130,246,.2);color:#93c5fd}
:root[data-theme="dark"] .md-pill.red{background:rgba(239,68,68,.2);color:#fca5a5}
/* ChatGPT Web 2x2 KPI / Metric Stat Cards */
.md-kpi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:.45em 0 1.05em}
.md-kpi-card{border:1px solid var(--border);border-radius:14px;padding:13px 16px;background:color-mix(in srgb,var(--surface) 82%,var(--surface-alt));display:flex;flex-direction:column;gap:4px;min-width:0}
.md-kpi-label{font-size:.82em;color:var(--muted);line-height:1.4;font-weight:500}
.md-kpi-value{font-size:1.38em;font-weight:750;color:var(--ink);line-height:1.25;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
@media (max-width:480px){.md-kpi-grid{grid-template-columns:1fr}}
/* ChatGPT Web collapsible "Đã xử lý trong Xs" thinking header */
.md-thought{margin:0 0 10px;font-size:13px;color:var(--muted)}
.md-thought>summary{list-style:none;display:inline-flex;align-items:center;gap:5px;cursor:pointer;font-weight:550;color:var(--muted);padding:3px 0;user-select:none;transition:color .15s}
.md-thought>summary::-webkit-details-marker{display:none}
.md-thought>summary:hover{color:var(--ink)}
.md-thought>summary .app-icon{transition:transform .18s ease;opacity:.75}
.md-thought[open]>summary .app-icon{transform:rotate(180deg)}
.md-thought-body{margin-top:6px;padding:8px 0 8px 13px;border-left:2px solid var(--border);color:var(--muted);font-size:13px;line-height:1.65}
.md-thought-body p{margin:0 0 .45em}.md-thought-body p:last-child{margin-bottom:0}
/* Realtime agent activity */
@keyframes livePulse{0%{box-shadow:0 0 0 0 rgba(124,92,255,.55)}70%{box-shadow:0 0 0 8px rgba(124,92,255,0)}100%{box-shadow:0 0 0 0 rgba(124,92,255,0)}}
.live-pill{display:inline-flex;align-items:center;gap:7px;max-width:280px;padding:5px 11px;border-radius:999px;border:1px solid var(--border);font-size:11.5px;color:var(--muted);white-space:nowrap;cursor:default}
.live-pill-text{overflow:hidden;text-overflow:ellipsis}
.live-pill-dot{width:7px;height:7px;border-radius:50%;background:#22a06b;flex:none}
.live-pill.busy{color:var(--ink);border-color:var(--accent,#7c5cff)}
.live-pill.busy .live-pill-dot{background:var(--accent,#7c5cff);animation:livePulse 1.4s infinite}
.live-pill.offline .live-pill-dot{background:#d9534f}
.agent-busy .avatar{position:relative}
.agent-busy .avatar::after{content:"";position:absolute;right:-2px;bottom:-2px;width:9px;height:9px;border-radius:50%;background:var(--accent,#7c5cff);border:2px solid var(--surface,#fff);animation:livePulse 1.4s infinite}
@media (prefers-reduced-motion:reduce){.live-pulse,.live-step.now,.live-pill.busy .live-pill-dot,.agent-busy .avatar::after{animation:none}}
@media (max-width:760px){.live-pill{max-width:150px}}
.md a.md-file{display:inline-flex;align-items:center;gap:8px;margin:.4em 0;padding:8px 14px;border-radius:10px;border:1px solid var(--accent,#3a9070);background:var(--surface-alt);color:var(--ink);font-weight:600;font-size:.92em;text-decoration:none;transition:background .15s,transform .12s}
.md a.md-file:hover{background:rgba(58,144,112,.12);transform:translateY(-1px)}
.md-file-card{display:inline-flex;align-items:stretch;flex-wrap:wrap;gap:0;margin:.45em 0;border-radius:12px;border:1px solid var(--border);background:var(--surface-alt);overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.04);max-width:100%}
.md-file-view{display: inline-flex;align-items:center;gap:9px;padding:9px 14px;border:0;background:transparent;color:var(--ink);font:inherit;font-size:.92em;font-weight:600;cursor:pointer;text-align:left;transition:background .15s}
.md-file-view:hover{background:color-mix(in srgb,var(--accent,#3a9070) 10%,transparent)}
.md-file-badge{display:inline-flex;align-items:center;justify-content:center;padding:2px 7px;border-radius:6px;font-size:.72em;font-weight:800;letter-spacing:.03em;color:#fff;background:#2563eb;flex-shrink:0}
.md-file-badge.xlsx,.md-file-badge.csv{background:#15803d}
.md-file-badge.docx{background:#1d4ed8}
.md-file-badge.md{background:#6d28d9}
.md-file-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:340px}
.md-file-eye{font-size:.78em;font-weight:650;color:var(--accent,#3a9070);padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--accent,#3a9070) 13%,transparent);white-space:nowrap}
.md-file-card a.md-file{margin:0;border:0;border-left:1px solid var(--border);border-radius:0;padding:9px 13px;background:transparent;color:var(--ink);font-size:.84em;font-weight:650;text-decoration:none;white-space:nowrap}
.md-file-card a.md-file:hover{background:color-mix(in srgb,var(--accent,#3a9070) 14%,transparent);transform:none}
.msg-export-btn{width:auto!important;padding:0 8px!important;gap:4px;font-size:11px;font-weight:500}
.modal[data-kind="file-viewer"]{max-width:min(1040px,96vw);width:100%}
.file-viewer-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:12px;padding:8px 12px;border-radius:10px;background:var(--surface-alt);border:1px solid var(--border)}
.file-viewer-modes{display:inline-flex;gap:4px;background:var(--surface);padding:3px;border-radius:8px;border:1px solid var(--border)}
.file-viewer-mode{padding:5px 11px;border-radius:6px;font-size:12px;font-weight:600;color:var(--muted);border:0;background:transparent;cursor:pointer}
.file-viewer-mode.active{background:var(--accent,#3a9070);color:#fff}
.word-viewer-wrap{background:color-mix(in srgb,var(--surface-alt) 75%,var(--border));border:1px solid var(--border);border-radius:14px;padding:18px;max-height:66vh;overflow:auto}
.word-doc-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11.5px;color:var(--muted);margin-bottom:12px;padding:0 4px}
.word-page{background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:10px;box-shadow:0 6px 24px rgba(15,23,42,.06);padding:28px 34px;max-width:800px;margin:0 auto}
@media (max-width:640px){.word-viewer-wrap{padding:10px}.word-page{padding:18px 16px}}
.excel-viewer-wrap{border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--surface)}
.excel-sheet-tabs{display:flex;align-items:center;gap:4px;padding:7px 10px;background:var(--surface-alt);border-bottom:1px solid var(--border);overflow-x:auto}
.excel-sheet-tab{padding:5px 12px;border-radius:7px;border:1px solid transparent;background:transparent;font-size:12px;font-weight:600;color:var(--muted);cursor:pointer;white-space:nowrap}
.excel-sheet-tab.active{background:var(--surface);color:#15803d;border-color:var(--border);box-shadow:0 1px 2px rgba(0,0,0,.05)}
.excel-grid-scroll{max-height:56vh;overflow:auto}
.excel-grid{border-collapse:collapse;width:100%;font-size:12.5px;line-height:1.45}
.excel-grid th,.excel-grid td{border:1px solid var(--border);padding:7px 11px;text-align:left;vertical-align:middle;white-space:nowrap}
.excel-grid thead th{position:sticky;top:0;z-index:2;background:var(--surface-alt);color:var(--muted);font-weight:700;font-size:11px;text-align:center;user-select:none}
.excel-grid .excel-row-num{position:sticky;left:0;z-index:1;background:var(--surface-alt);color:var(--muted);font-weight:600;font-size:11px;text-align:center;width:38px;min-width:38px;user-select:none}
.excel-grid tbody tr.excel-header-row td:not(.excel-row-num){background:color-mix(in srgb,#15803d 12%,var(--surface));font-weight:700;color:var(--ink)}
.excel-grid tbody tr:nth-child(even):not(.excel-header-row) td:not(.excel-row-num){background:color-mix(in srgb,var(--surface-alt) 45%,transparent)}
.excel-grid tbody tr:hover td:not(.excel-row-num){background:color-mix(in srgb,#15803d 8%,var(--surface))}
.excel-grid td.excel-cell-num{text-align:right;font-variant-numeric:tabular-nums;font-weight:550}
.excel-status-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:8px 12px;background:var(--surface-alt);border-top:1px solid var(--border);font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.excel-status-sums{display:flex;flex-wrap:wrap;gap:12px;color:var(--ink);font-weight:600}
/* ChatGPT Web Smart Code Blocks + Composer Mode Pills + Stop/Voice/Canvas */
.md-code-wrap{margin:0 0 .95em;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--surface-alt)}
.md-code-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 12px;background:color-mix(in srgb,var(--surface-alt) 70%,var(--border));border-bottom:1px solid var(--border);font-size:11.5px;color:var(--muted)}
.md-code-lang{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-weight:650;text-transform:lowercase}
.md-code-actions{display:inline-flex;align-items:center;gap:6px}
.md-code-btn{border:1px solid var(--border);background:var(--surface);color:var(--ink);border-radius:6px;padding:2px 8px;font-size:11px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}
.md-code-btn:hover{border-color:var(--accent,#3a9070);color:var(--accent,#3a9070)}
.md .md-code-wrap pre{margin:0;border:0;border-radius:0;background:transparent}
.mode-pill{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}
.mode-pill:hover{border-color:var(--accent,#3a9070);color:var(--ink)}
.mode-pill.active{background:color-mix(in srgb,var(--accent,#3a9070) 15%,var(--surface));border-color:var(--accent,#3a9070);color:var(--accent,#3a9070)}
.voice-btn.recording{color:#dc2626!important;background:rgba(220,38,38,.12)!important;animation:livePulse 1.2s infinite}
.send-btn.stop-btn{background:var(--ink)!important;color:var(--surface)!important;cursor:pointer!important;opacity:1!important}
.stop-square{width:11px;height:11px;border-radius:2px;background:currentColor;display:inline-block}
.message.user .user-actions{opacity:0;transition:opacity .15s;justify-content:flex-end;margin-top:4px}
.message.user:hover .user-actions,.message.user:focus-within .user-actions{opacity:1}
.msg-user-imgs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:6px;justify-content:flex-end}
.canvas-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:12px;padding:8px 10px;border-radius:10px;background:var(--surface-alt);border:1px solid var(--border)}
.canvas-ai-tools{display:flex;flex-wrap:wrap;gap:6px}
.canvas-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:stretch}
.canvas-editor{width:100%;min-height:420px;height:100%;resize:vertical;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px;line-height:1.65;padding:14px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--ink)}
@media (max-width:860px){.canvas-split{grid-template-columns:1fr}}
/* ChatGPT Web Projects (1 Dự án = 1 Agent) */
.project-sub-list{margin:2px 0 8px 18px;padding-left:10px;border-left:1.5px solid var(--border);display:flex;flex-direction:column;gap:2px}
.workspace-stage[data-agents="compact"] .project-sub-list,.workspace-stage[data-agents="compact"] .project-count-badge{display:none!important}
.project-count-badge{font-size:10.5px;font-weight:650;color:var(--muted);background:var(--surface-alt);border:1px solid var(--border);border-radius:999px;padding:1px 6px;flex-shrink:0}
.project-sub-new{display:flex;align-items:center;gap:6px;width:100%;padding:5px 8px;border:0;border-radius:7px;background:transparent;color:var(--accent,#3a9070);font:inherit;font-size:11.5px;font-weight:650;cursor:pointer;text-align:left}
.project-sub-new:hover{background:color-mix(in srgb,var(--accent,#3a9070) 10%,transparent)}
.project-sub-item{display:flex;align-items:center;gap:2px;border-radius:7px;padding-right:4px}
.project-sub-item.active{background:color-mix(in srgb,var(--accent,#3a9070) 12%,var(--surface-alt))}
.project-sub-item:hover{background:var(--surface-alt)}
.project-sub-chat{display:flex;align-items:center;gap:6px;flex:1;min-width:0;padding:5px 8px;border:0;background:transparent;color:var(--ink);font:inherit;font-size:11.5px;cursor:pointer;text-align:left}
.project-sub-item.active .project-sub-chat{font-weight:650;color:var(--accent,#3a9070)}
.project-sub-del{border:0;background:transparent;color:var(--muted);padding:3px;border-radius:5px;cursor:pointer;opacity:0;transition:opacity .15s}
.project-sub-item:hover .project-sub-del{opacity:1}
.project-sub-del:hover{color:#dc2626;background:rgba(220,38,38,.1)}
.project-dashboard{max-width:780px;margin:0 auto;padding:18px 12px 26px;text-align:left}
.project-dash-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:18px}
.project-dash-title{display:flex;align-items:center;gap:12px}
.project-dash-title h2{margin:0;font-size:21px;line-height:1.25;letter-spacing:-.02em}
.project-tagline{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.5}
.project-cards-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px}
@media (max-width:680px){.project-cards-grid{grid-template-columns:1fr}}
.project-card{border:1px solid var(--border);border-radius:14px;padding:14px 16px;background:color-mix(in srgb,var(--surface) 88%,var(--surface-alt));display:flex;flex-direction:column;justify-content:space-between;gap:10px;text-align:left;transition:border-color .15s,box-shadow .15s}
.project-card:hover{border-color:var(--accent,#3a9070);box-shadow:0 4px 14px rgba(0,0,0,.04)}
.project-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.project-card-head strong{display:flex;align-items:center;gap:7px;font-size:13.5px;color:var(--ink)}
.project-card-body{font-size:12.5px;color:var(--muted);line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.project-file-pills{display:flex;flex-wrap:wrap;gap:6px}
.project-file-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:7px;border:1px solid var(--border);background:var(--surface);color:var(--ink);font:inherit;font-size:11.5px;font-weight:550;cursor:pointer;max-width:100%}
.project-file-pill:hover{border-color:var(--accent,#3a9070);color:var(--accent,#3a9070)}
.project-chats-section{margin-top:18px;border:1px solid var(--border);border-radius:14px;background:var(--surface);overflow:hidden}
.project-chats-head{display:flex;align-items:center;justify-content:space-between;padding:11px 15px;background:var(--surface-alt);border-bottom:1px solid var(--border);font-size:12.5px;font-weight:700;color:var(--ink)}
.project-chat-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 15px;border-bottom:1px solid var(--border);transition:background .15s}
.project-chat-row:last-child{border-bottom:0}
.project-chat-row:hover{background:color-mix(in srgb,var(--surface-alt) 60%,transparent)}
.project-chat-open{display:flex;align-items:center;gap:10px;flex:1;min-width:0;border:0;background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer;padding:0}
.project-chat-open strong{display:block;font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.project-chat-open small{display:block;font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.chat-project-pill{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:999px;border:1px solid var(--border);background:var(--surface-alt);color:var(--ink);font:inherit;font-size:11.5px;font-weight:600;cursor:pointer;white-space:nowrap}
.chat-project-pill:hover{border-color:var(--accent,#3a9070);color:var(--accent,#3a9070)}
