/* Corvana material system: satin architecture, clear glass sheets, polished controls. */
:root {
  --canvas: #eaeaea;
  --text-primary: #353535;
  --text-secondary: #686868;
  --text-tertiary: #757574;
  --ink: #323232;
  --muted: #777776;
  --line: rgba(66,67,66,.11);
  --glass-sheet: linear-gradient(118deg, rgba(255,255,255,.81) 0%, rgba(255,255,255,.43) 43%, rgba(249,249,249,.49) 72%, rgba(255,255,255,.72) 100%);
  --shadow-sheet: 0 1px 1px rgba(255,255,255,.92), 0 2px 3px rgba(52,53,52,.05), 0 18px 32px -15px rgba(57,58,57,.22), 0 35px 55px -35px rgba(46,47,46,.23);
  --shadow-control: 0 1px 2px rgba(61,61,60,.10), 0 5px 9px -4px rgba(52,52,51,.14), inset 0 1px 1px #ffffff, inset 0 -1px 1px rgba(100,102,98,.19);
  --ease: cubic-bezier(.22,.75,.24,1);
}
body { background:#dedede; }
.ambient {
  background: radial-gradient(ellipse at 12% 5%, #f9f9f9 0, transparent 55%),
    radial-gradient(ellipse at 88% 95%, #cccccb 0, transparent 58%), #e3e3e2;
}
.app-shell {
  border-radius:27px;
  border:1px solid rgba(255,255,255,.85);
  background:rgba(247,247,246,.66);
  box-shadow:0 0 0 1px rgba(94,94,92,.14), 0 10px 30px -12px rgba(59,60,58,.17),
    0 30px 70px -40px rgba(63,64,62,.25), inset 0 1px 1px #ffffff;
}
.workspace {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:
    radial-gradient(ellipse at 42% 14%, rgba(255,255,255,.87), transparent 66%),
    radial-gradient(ellipse at 92% 86%, rgba(203,204,203,.26), transparent 52%),
    linear-gradient(130deg, #eeeeee 7%, #f0f0f0 48%, #e6e6e5 100%);
}
/* A still, broad reflection gives translucent surfaces something to transmit. */
.workspace::before {
  content:"";
  position:absolute;
  z-index:-1;
  width:91%;height:69%;opacity:.77;
  right:-36%;bottom:-25%;
  border-radius:50%;
  transform:rotate(-29deg);
  background:linear-gradient(145deg, rgba(255,255,255,.43), rgba(255,255,255,.03) 45%, rgba(195,196,194,.19));
  border-top:1px solid rgba(255,255,255,.65);
  box-shadow:0 -10px 19px -17px rgba(126,128,124,.36),inset 0 20px 30px -25px rgba(255,255,255,.95),0 -28px 50px -27px rgba(255,255,255,.6);
  pointer-events:none;
}
.workspace::after {
  content:"";position:absolute;inset:0;z-index:4;pointer-events:none;border-radius:0 26px 26px 0;
  box-shadow:inset 0 1px 1px #ffffff,inset -1px -1px 1px rgba(255,255,255,.7);
}
.sidebar {
  background:linear-gradient(115deg,rgba(255,255,255,.76),rgba(246,246,245,.57) 55%,rgba(227,227,226,.49));
  backdrop-filter:blur(34px) saturate(1.18);
  -webkit-backdrop-filter:blur(34px) saturate(1.18);
  border-right:1px solid rgba(150,151,149,.2);
  box-shadow:inset 1px 1px 1px rgba(255,255,255,.9),inset -1px 0 0 rgba(255,255,255,.92),6px 0 24px -16px rgba(73,75,71,.14);
}
.brand-mark { mix-blend-mode:multiply; overflow:visible; }
.brand-row .brand-icon { width:33px;height:31px; }
.brand-wordmark { font-size:20px;font-weight:550;color:#323231;letter-spacing:-.7px; }
.brand-home { gap:10px; }
.brand-home:hover .brand-icon { filter:drop-shadow(0 2px 1px rgba(50,50,49,.12)); }
.nav-item { color:#666766; font-size:13px; }
.nav-item>.icon { color:#787977; }
.nav-item:hover { background:rgba(221,222,220,.36);color:#414240; }
.nav-item.active {
  color:#3f413e;
  background:linear-gradient(130deg,rgba(216,217,215,.79),rgba(224,225,223,.65));
  box-shadow:inset 0 1px 3px rgba(102,104,99,.075), inset 0 -1px 0 rgba(255,255,255,.85),0 1px 1px rgba(108,110,106,.03);
}
.nav-item.active>.icon { color:#656763; }
.project-item { color:#626461; }
.project-item.selected { color:#494b47; }
.section-label { color:#858783;letter-spacing:1.35px; }
.sidebar-divider { border-color:rgba(146,148,144,.17);box-shadow:0 1px 0 rgba(255,255,255,.64); }
.user-button { border:1px solid transparent; }
.user-button:hover { background:rgba(255,255,255,.3);border-color:rgba(255,255,255,.7); }
.avatar {
  background:linear-gradient(135deg,#eeeeed,#d7d7d6);
  border-color:rgba(255,255,255,.95);color:#737371;
  box-shadow:0 2px 4px rgba(93,93,90,.09),inset 0 1px 1px #ffffff;
}
.topbar { border-bottom-color:rgba(255,255,255,.35); }
.space-name { color:#717370; }
.space-name span span { color:#878986; }
.search-trigger {
  background:linear-gradient(140deg,rgba(226,227,225,.57),rgba(235,235,234,.35));
  border:1px solid rgba(228,229,227,.5);
  box-shadow:inset 0 1px 3px rgba(113,116,111,.075),0 1px 1px rgba(255,255,255,.95);
  color:#848682;
}
.home { margin-top:clamp(40px,7vh,82px); }
.welcome-meta { gap:18px;margin-bottom:25px; }
.hero-mark {
  position:relative;width:64px;height:64px;border-radius:19px;transform:none;
  background:linear-gradient(135deg,#ffffffc9,rgba(255,255,255,.35) 49%,rgba(227,228,226,.42));
  border:1px solid rgba(255,255,255,.9);
  box-shadow:0 0 0 1px rgba(170,172,167,.16),0 2px 3px rgba(111,114,109,.13),0 10px 19px -10px rgba(86,89,83,.3),inset 0 2px 2px #ffffff,inset 0 -2px 3px rgba(157,160,155,.16);
}
.hero-mark::before {
  content:"";position:absolute;inset:3px;border-radius:15px;pointer-events:none;
  border:1px solid rgba(255,255,255,.5);
  background:linear-gradient(135deg,rgba(255,255,255,.67),transparent 44%,rgba(255,255,255,.13) 64%,rgba(255,255,255,.65));
}
.hero-mark .brand-icon { position:relative;z-index:1;width:44px;height:39px;filter:drop-shadow(0 2px 1px rgba(68,70,66,.1)); }
.welcome h1 { font-size:40px;line-height:1.25;letter-spacing:-1.65px;color:#373836;font-weight:420; }
.welcome h1 span { color:#8c8c8b;font-weight:400; }
.welcome-subtitle { font-size:12px;color:#7f807e;letter-spacing:0;margin-top:15px; }
.updated { color:#80827f;font-size:11px; }
.meta-divider { background:rgba(164,167,162,.24); }
.privacy-pill {
  background:linear-gradient(135deg,rgba(255,255,255,.56),rgba(243,244,242,.36));
  color:#737672;border:1px solid rgba(255,255,255,.93);box-shadow:var(--shadow-control);
}
.composer {
  border-radius:29px;
  padding:25px 26px 20px;
  min-height:190px;
  border:1px solid rgba(255,255,255,.92);
  background:var(--glass-sheet);
  backdrop-filter:blur(32px) saturate(1.3);
  -webkit-backdrop-filter:blur(32px) saturate(1.3);
  box-shadow:var(--shadow-sheet),inset 0 2px 2px rgba(255,255,255,.94),inset 1px 0 1px #ffffffa3,inset -1px -2px 3px rgba(136,139,134,.19);
  transition:box-shadow 220ms var(--ease),border-color 220ms var(--ease);
  isolation:isolate;
}
.composer::before {
  inset:3px;
  border-radius:25px;
  border:1px solid transparent;
  border-top-color:rgba(255,255,255,.72);
  border-bottom-color:rgba(255,255,255,.61);
  box-shadow:0 2px 1px -1px rgba(129,132,127,.18),0 5px 5px -4px rgba(255,255,255,.94),inset 0 2px 4px -3px #ffffff;
  background:linear-gradient(113deg,transparent 34%,rgba(255,255,255,.22) 47%,rgba(255,255,255,.04) 52%,transparent 65%);
  pointer-events:none;
  z-index:-1;
}
.composer::after {
  content:"";position:absolute;inset:1px;border-radius:27px;z-index:-1;pointer-events:none;
  background:radial-gradient(ellipse 350px 180px at var(--light-x,24%) var(--light-y,0%),rgba(255,255,255,.77),transparent 78%);
  opacity:.45;transition:opacity 300ms var(--ease);
}
.composer.is-lit::after { opacity:.85; }
.composer:focus-within {
  border-color:#ffffff;
  box-shadow:0 0 0 1px rgba(180,183,178,.24),0 2px 2px rgba(255,255,255,.94),0 20px 35px -18px rgba(80,83,77,.23),0 34px 60px -35px rgba(69,72,67,.2),inset 0 2px 2px #ffffff,inset -1px -2px 3px rgba(136,139,134,.2);
}
.composer textarea { font-size:18px;color:#4c4e4a;line-height:1.65; }
.composer textarea::placeholder { color:#747771; }
.composer-bottom { gap:10px; }
.glass-button,.new-button {
  position:relative;isolation:isolate;
  background:linear-gradient(135deg,rgba(255,255,255,.74),rgba(255,255,255,.31) 44%,rgba(233,234,232,.31));
  border:1px solid rgba(255,255,255,.93);
  box-shadow:var(--shadow-control);
  backdrop-filter:blur(10px) saturate(1.25);
  -webkit-backdrop-filter:blur(10px) saturate(1.25);
  transition:box-shadow 180ms var(--ease),background 180ms var(--ease),transform 180ms var(--ease);
}
.glass-button::before,.new-button::before {
  content:"";position:absolute;inset:2px;border-radius:inherit;pointer-events:none;z-index:-1;
  border-top:1px solid rgba(255,255,255,.85);border-bottom:1px solid rgba(255,255,255,.54);
  background:radial-gradient(ellipse at var(--light-x,20%) var(--light-y,0%),rgba(255,255,255,.62),transparent 75%);
}
.glass-button:hover,.new-button:hover {
  background:linear-gradient(135deg,rgba(255,255,255,.87),rgba(255,255,255,.5) 60%,rgba(234,236,232,.4));
  box-shadow:0 1px 2px rgba(76,79,74,.1),0 7px 12px -6px rgba(78,81,76,.21),inset 0 1px 1px #ffffff,inset 0 -1px 1px rgba(146,149,143,.18);
  transform:translateY(-1px);
}
.glass-button:active,.new-button:active {
  transform:translateY(.5px) scale(.985);
  box-shadow:0 1px 1px rgba(255,255,255,.87),inset 0 1px 3px rgba(84,87,82,.13);
}
.new-button { border-radius:15px;color:#555854; }
.circle-button { width:40px;height:40px;color:#666965; }
.circle-button .icon { width:18px;height:18px; }
.create-button { height:40px;padding:0 16px;font-size:12px;color:#545752; }
.context-button { color:#7c7f7b;font-size:10px; }
.context-button .context-dot,.status-dot { background:#91938f; }
.send-button {
  width:37px;height:37px;color:#ffffff;border:1px solid #5c5e5b;
  background:linear-gradient(140deg,#848682,#5a5c58 49%,#424440);
  box-shadow:0 0 0 1px rgba(255,255,255,.5),0 3px 5px rgba(56,58,54,.19),inset 0 1px 1px #e7e8e5ad,inset 0 -1px 1px rgba(27,29,26,.21);
}
.send-button:disabled {
  border-color:rgba(173,175,170,.35);
  background:linear-gradient(140deg,#dadcd9,#c8cac6 50%,#bdbfbb);
  box-shadow:0 0 0 1px rgba(255,255,255,.71),0 3px 5px rgba(93,96,90,.11),inset 0 1px 1px #fafbf9,inset 0 -1px 1px rgba(106,109,102,.13);
}
.send-button:not(:disabled):active { transform:translateY(1px) scale(.95); }
.suggestion { background:rgba(255,255,255,.29);border-color:rgba(216,218,214,.55);color:#626b5b;box-shadow:inset 0 1px 0 rgba(255,255,255,.64); }
.suggestion:hover { background:rgba(255,255,255,.65);color:#535651; }
.recent { margin-top:44px; }
.recent-heading h2 { color:#6e706c;font-size:12px; }
.activity-title { color:#50554b;font-size:12px; }
.activity-detail,.activity-date { color:#6b7464; }
.activity-list,.activity-row { border-color:rgba(161,164,159,.18); }
.activity-row:hover { background:rgba(255,255,255,.34); }
.activity-icon { background:linear-gradient(140deg,#ffffff94,#f3f4f251);box-shadow:0 2px 4px rgba(91,94,88,.08),inset 0 1px 1px #ffffff; }
.text-button,.workspace-footer,.workspace-footer button { color:#7a7d79; }
/* Clear, thicker glass floats above the more diffuse workspace. */
.popover,.modal {
  background:linear-gradient(125deg,rgba(255,255,255,.88),rgba(249,249,248,.74) 57%,rgba(243,244,242,.8));
  backdrop-filter:blur(40px) saturate(1.2);
  -webkit-backdrop-filter:blur(40px) saturate(1.2);
  border:1px solid rgba(255,255,255,.95);
  box-shadow:0 0 0 1px rgba(165,168,163,.23),0 4px 9px rgba(64,67,62,.07),0 28px 65px -18px rgba(52,55,51,.24),inset 0 2px 2px #ffffff,inset 0 -2px 3px rgba(155,158,152,.16);
}
.popover { border-radius:18px;padding:7px; }
.menu-item { color:#5b5e59;font-size:12px; }
.menu-item:hover,.search-result:hover,.search-result:focus { background:rgba(220,222,218,.55); }
.menu-item span small { color:#828580;font-size:10px; }
.modal { border-radius:26px; }
.modal::backdrop { background:rgba(72,74,70,.14);backdrop-filter:blur(7px); }
.modal-head h2 { color:#444743;font-weight:450; }
.modal-body { color:#737672; }
.form-input { background:rgba(255,255,255,.55);border-color:rgba(170,173,168,.37);color:#535652;box-shadow:inset 0 1px 2px rgba(101,104,98,.05); }
.form-input:focus { border-color:#b0b3ae;box-shadow:0 0 0 3px rgba(157,160,154,.12); }
.button-primary { background:linear-gradient(140deg,#747773,#545752);box-shadow:0 2px 4px rgba(66,69,64,.15),inset 0 1px 1px #d8dad670; }
.feature-card,.directory-panel,.list-panel {
  background:linear-gradient(125deg,rgba(255,255,255,.66),rgba(255,255,255,.34) 58%,rgba(248,249,247,.33));
  border:1px solid rgba(255,255,255,.85);
  box-shadow:0 0 0 1px rgba(161,164,158,.08),0 2px 3px rgba(89,92,87,.025),0 14px 26px -18px rgba(79,82,77,.19),inset 0 1px 1px #ffffff,inset 0 -1px 1px rgba(184,187,182,.16);
  backdrop-filter:blur(22px) saturate(1.1);
  -webkit-backdrop-filter:blur(22px) saturate(1.1);
}
.directory-panel { border-radius:25px; }
.directory-row.selected { background:linear-gradient(125deg,rgba(214,216,212,.72),rgba(224,226,222,.55));box-shadow:inset 0 1px 2px rgba(123,127,120,.09),inset 0 -1px 1px rgba(255,255,255,.8); }
.directory-row:hover { background-color:rgba(230,232,228,.34); }
.directory-row strong { color:#535651;font-size:13px; }
.directory-row small { color:#6b7364;font-size:11px; }
.directory-link { font-size:12px;color:#71746f;border-color:rgba(168,171,165,.19); }
.directory-heading { color:#858884; }
.organization-mark {
  background:linear-gradient(135deg,rgba(255,255,255,.78),rgba(249,249,247,.55));
  box-shadow:0 0 0 1px rgba(189,191,186,.2),0 5px 10px -4px rgba(109,112,106,.22),inset 0 2px 2px #ffffff,inset 0 -2px 3px rgba(160,162,156,.19);
  backdrop-filter:blur(15px);width:61px;height:61px;border-radius:17px;top:-32px;
}
.organization-mark .brand-icon { width:42px;height:34px; }
.overview-cover { border-radius:22px;box-shadow:0 0 0 1px rgba(143,145,140,.13),0 5px 12px -7px rgba(73,75,71,.25); }
.overview-cover::after { box-shadow:inset 0 1px 2px rgba(255,255,255,.85),inset 0 0 0 1px rgba(255,255,255,.26); }
.overview-identity h1 { color:#424440; }
.overview-identity p,.overview-footnote { color:#7a7c78; }
.conversation .composer { background:linear-gradient(118deg,rgba(255,255,255,.89),rgba(252,252,251,.77)); }
.message-user { background:linear-gradient(125deg,rgba(226,228,224,.48),rgba(234,236,232,.31));border-color:rgba(194,197,192,.33);color:#5c5f5a; }
.message-agent { color:#6e716d; }
.message-agent .agent-label { color:#4c504b; }
.agent-label .brand-icon { width:26px;height:23px; }
:focus-visible { outline-color:#939691; }
/* Tone values keep the light neutral, with warmth confined to the existing icons and cover. */
@media(min-width:1500px) {
  .home { margin-top:clamp(65px,8vh,110px); }
  .welcome h1 { font-size:43px; }
}
@media(max-width:1150px) {
  .welcome h1 { font-size:35px; }
  .welcome-meta { gap:14px; }
}
@media(max-width:900px) {
  .app-shell { border-radius:20px; }
  .welcome h1 { font-size:31px; }
  .hero-mark { width:56px;height:56px;border-radius:17px; }
  .hero-mark .brand-icon { width:38px;height:33px; }
  .welcome-meta { gap:12px;font-size:10px; }
  .context-button { display:none; }
  .composer { padding:23px 21px 19px; }
  .workspace::before { width:120%;right:-58%; }
}
@media(max-height:790px) and (min-width:701px) {
  .home { margin-top:27px; }
  .welcome-meta { margin-bottom:21px; }
  .hero-mark { width:54px;height:54px;border-radius:16px; }
  .hero-mark .brand-icon { width:37px;height:32px; }
  .welcome h1 { font-size:34px; }
  .composer { margin-top:27px;min-height:174px;padding:20px 24px 17px; }
  .recent { margin-top:35px; }
}
@media(max-width:700px) {
  .app-shell { border-radius:0;box-shadow:none; }
  .workspace::after { border-radius:0; }
  .workspace::before { width:145%;height:55%;right:-75%;bottom:-16%; }
  .sidebar { background:linear-gradient(120deg,#fafaf9f5,#eeefeeed); }
  .topbar { border-bottom-color:rgba(255,255,255,.58); }
  .search-trigger { background:none;box-shadow:none;border:0; }
  .home { margin-top:34px; }
  .welcome-meta { gap:11px;margin-bottom:24px; }
  .hero-mark { width:51px;height:51px;border-radius:16px; }
  .hero-mark::before { border-radius:12px; }
  .hero-mark .brand-icon { width:35px;height:31px; }
  .updated { font-size:9px; }
  .welcome h1 { font-size:29px;letter-spacing:-1.1px; }
  .welcome-subtitle { font-size:11px; }
  .composer { padding:22px 18px 17px;border-radius:26px;min-height:176px; }
  .composer::before { border-radius:22px; }
  .composer::after { border-radius:24px; }
  .composer textarea { font-size:16px; }
  .circle-button { width:38px;height:38px; }
  .create-button { height:38px;padding:0 13px;font-size:11px; }
  .composer-bottom { gap:9px; }
  .suggestion { font-size:10px; }
  .recent { margin-top:36px; }
  .activity-title { font-size:12px; }
  .activity-detail,.activity-date { font-size:10px; }
  .directory-row strong { font-size:13px; }
  .directory-row small { font-size:11px; }
  .organization-mark { width:56px;height:56px; }
  .organization-mark .brand-icon { width:39px;height:32px; }
}
@media(prefers-reduced-motion:reduce) {
  .composer::after { opacity:.45!important; }
  *,*::before,*::after { animation:none!important;transition:none!important;scroll-behavior:auto!important; }
}
@media(prefers-contrast:more) {
  :root { --text-primary:#272727;--text-secondary:#4c4c4b;--text-tertiary:#545453; }
  .composer,.modal,.popover,.directory-panel,.feature-card,.list-panel { background:rgba(255,255,255,.96);border-color:#a4a6a3; }
  .nav-item,.activity-title,.activity-detail,.directory-row strong,.directory-row small,.welcome-subtitle { color:#484947; }
}
