@import url("fluent2-theme.css");
.memory-card-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-top: var(--strokeWidthThin) solid var(--colorNeutralStroke2);
  padding-top: var(--spacingVerticalSNudge);
}
* {
  box-sizing: border-box;
}
body {
  margin: 0;
  font-family:
    var(--fontFamilyBase),
    "Segoe UI Variable",
    "Segoe UI",
    -apple-system,
    BlinkMacSystemFont,
    Roboto,
    sans-serif;
  font-size: var(--fontSizeBody1);
  line-height: var(--lineHeightBody1);
  background: var(--colorNeutralBackground2);
  color: var(--colorNeutralForeground1);
}
button,
input,
textarea {
  font: inherit;
}
button {
  cursor: pointer;
}
:focus-visible {
  outline: 2px solid var(--colorStrokeFocus2);
  outline-offset: 2px;
}
.fui-icon {
  width: 20px;
  height: 20px;
  fill: currentColor;
}
.topbar,
.topbar-left,
.topbar-right,
.brand-logo,
.agent-status-chip,
.chat-header-persona,
.chat-input-wrapper,
.reports-header-row,
.brain-toolbar,
.modal-header,
.modal-footer {
  display: flex;
  align-items: center;
  gap: var(--spacingHorizontalSNudge);
}
.topbar {
  justify-content: space-between;
  min-height: 56px;
  padding: var(--spacingVerticalSNudge) var(--spacingHorizontalXL);
  background: var(--colorNeutralBackground1);
  border-bottom: var(--strokeWidthThin) solid var(--colorNeutralStroke2);
  box-shadow: var(--shadow2);
}
.topbar-right {
  margin-left: auto;
}
.brand-logo {
  font-size: var(--fontSizeSubtitle1);
  line-height: var(--lineHeightSubtitle1);
  font-weight: var(--fontWeightSemibold);
  color: var(--colorBrandForeground1);
}
.agent-status-chip,
.persona-badge,
.tab-badge,
.badge {
  font-size: var(--fontSizeCaption1);
  line-height: var(--lineHeightCaption1);
  padding: var(--spacingVerticalXXS) var(--spacingHorizontalSNudge);
  border-radius: var(--borderRadiusCircular);
  background: var(--colorNeutralBackground3);
  color: var(--colorNeutralForeground2);
}
.status-indicator {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--colorStatusSuccessForeground);
}
.btn,
.btn-tool,
.btn-icon-link,
.quick-chip,
.nav-tab,
.twin-tab-btn {
  border: var(--strokeWidthThin) solid transparent;
  border-radius: var(--borderRadiusMedium);
  min-height: 32px;
  padding: var(--spacingVerticalS) var(--spacingHorizontalMNudge);
  background: transparent;
  color: var(--colorNeutralForeground1);
  font-weight: var(--fontWeightMedium);
}
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--spacingHorizontalXS);
}
.btn-primary {
  background: var(--colorBrandBackground);
  color: var(--colorBrandForegroundInverted);
}
.btn-primary:hover {
  background: var(--colorBrandBackgroundHover);
}
.btn-secondary,
.btn-tool,
.quick-chip {
  background: var(--colorNeutralBackground1);
  border-color: var(--colorNeutralStroke1);
}
.btn-secondary:hover,
.btn-tool:hover,
.quick-chip:hover {
  background: var(--colorNeutralBackground3);
}
.icon-button {
  width: 32px;
  padding: var(--spacingVerticalS);
}
.main-nav {
  display: flex;
  gap: var(--spacingHorizontalXS);
  padding: var(--spacingVerticalS) var(--spacingHorizontalXL);
  background: var(--colorNeutralBackground1);
  border-bottom: var(--strokeWidthThin) solid var(--colorNeutralStroke2);
  overflow: auto;
}
.nav-tab,
.twin-tab-btn {
  white-space: nowrap;
  color: var(--colorNeutralForeground2);
}
.nav-tab.active,
.twin-tab-btn.active {
  color: var(--colorBrandForeground1);
  border-color: var(--colorBrandStroke1);
  background: var(--colorStatusInfoBackground);
}
.warning {
  background: var(--colorStatusWarningBackground);
  color: var(--colorStatusWarningForeground);
}
.content-area {
  padding: var(--spacingVerticalXL);
  max-width: 1600px;
  margin: auto;
}
.view-panel {
  display: none;
}
.view-panel.active {
  display: block;
}
.workspace-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: var(--spacingHorizontalL);
}
.chat-card,
.twin-card,
.kpi-card,
.goal-card,
.approval-card,
.memory-card,
.result-card,
.settings-section,
.shift-card,
.connection-card,
.autonomy-card {
  background: var(--colorNeutralBackground1);
  border: var(--strokeWidthThin) solid var(--colorNeutralStroke2);
  border-radius: var(--borderRadiusLarge);
  box-shadow: var(--shadow2);
}
.chat-card,
.twin-card {
  min-height: 640px;
}
.chat-header,
.reports-header-row,
.brain-toolbar {
  padding: var(--spacingVerticalL);
  justify-content: space-between;
  border-bottom: var(--strokeWidthThin) solid var(--colorNeutralStroke2);
}
.persona-avatar,
.msg-avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--colorBrandBackground);
  color: var(--colorBrandForegroundInverted);
  font-size: var(--fontSizeCaption1);
  font-weight: var(--fontWeightBold);
}
.persona-name,
.pane-title {
  margin: 0;
  font-size: var(--fontSizeSubtitle2);
  line-height: var(--lineHeightSubtitle2);
}
.chat-messages {
  height: 410px;
  overflow: auto;
  padding: var(--spacingVerticalL);
}
.chat-msg {
  display: flex;
  gap: var(--spacingHorizontalSNudge);
  margin-bottom: var(--spacingVerticalL);
}
.user-msg {
  flex-direction: row-reverse;
}
.msg-body {
  max-width: 85%;
  padding: var(--spacingVerticalSNudge) var(--spacingHorizontalMNudge);
  background: var(--colorNeutralBackground3);
  border-radius: var(--borderRadiusLarge);
}
.user-msg .msg-body {
  background: var(--colorStatusInfoBackground);
}
.msg-author,
.msg-time,
.chat-hint,
.pane-subtitle,
.text-muted {
  font-size: var(--fontSizeCaption1);
  line-height: var(--lineHeightCaption1);
  color: var(--colorNeutralForeground3);
}
.msg-text p {
  margin: 0 0 var(--spacingVerticalXS);
}
.quick-chips-bar {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacingHorizontalXS);
  padding: var(--spacingVerticalSNudge) var(--spacingHorizontalL);
}
.chat-input-form {
  padding: var(--spacingVerticalSNudge) var(--spacingHorizontalL);
  border-top: var(--strokeWidthThin) solid var(--colorNeutralStroke2);
}
.chat-input-wrapper textarea {
  flex: 1;
  resize: vertical;
  min-height: 40px;
  padding: var(--spacingVerticalSNudge);
  background: var(--colorNeutralBackground1);
  color: var(--colorNeutralForeground1);
  border: var(--strokeWidthThin) solid var(--colorNeutralStroke1);
  border-radius: var(--borderRadiusMedium);
}
.twin-tabs-header {
  display: flex;
  gap: var(--spacingHorizontalXS);
  padding: var(--spacingVerticalSNudge);
  border-bottom: var(--strokeWidthThin) solid var(--colorNeutralStroke2);
  overflow: auto;
}
.twin-subpane {
  display: none;
  padding: var(--spacingVerticalL);
}
.twin-subpane.active {
  display: block;
}
.reports-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--spacingHorizontalSNudge);
  margin: var(--spacingVerticalL) 0;
}
.kpi-card {
  padding: var(--spacingVerticalMNudge);
  display: grid;
  gap: var(--spacingVerticalXS);
}
.kpi-num {
  font-size: var(--fontSizeTitle3);
  line-height: var(--lineHeightTitle3);
  font-weight: var(--fontWeightSemibold);
}
.kpi-label {
  font-size: var(--fontSizeCaption1);
  line-height: var(--lineHeightCaption1);
  color: var(--colorNeutralForeground3);
}
.highlight-success {
  color: var(--colorStatusSuccessForeground);
}
.brain-canvas-container {
  height: 440px;
  background: var(--colorNeutralBackground3);
  border-radius: var(--borderRadiusLarge);
  overflow: hidden;
  position: relative;
}
.brain-canvas-container canvas {
  width: 100%;
  height: 100%;
}
.brain-tooltip {
  position: fixed;
  display: none;
  z-index: 5;
  padding: var(--spacingVerticalSNudge);
  background: var(--colorNeutralBackground1);
  border: var(--strokeWidthThin) solid var(--colorNeutralStroke1);
  border-radius: var(--borderRadiusMedium);
  box-shadow: var(--shadow8);
}
.section-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--spacingVerticalL);
}
h1 {
  font-size: var(--fontSizeTitle2);
  line-height: var(--lineHeightTitle2);
}
h2 {
  font-size: var(--fontSizeSubtitle1);
  line-height: var(--lineHeightSubtitle1);
}
.goals-grid,
.memory-grid,
.autonomy-options {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: var(--spacingHorizontalL);
}
.approvals-list,
.connections-list,
.shift-reports-list,
.activity-timeline {
  display: grid;
  gap: var(--spacingVerticalSNudge);
}
.goal-card,
.approval-card,
.memory-card,
.result-card,
.autonomy-card,
.connection-card,
.shift-card,
.settings-section {
  padding: var(--spacingVerticalL);
}
.settings-section {
  margin-bottom: var(--spacingVerticalL);
}
.empty-state,
.loading-state {
  padding: var(--spacingVerticalXL);
  text-align: center;
  color: var(--colorNeutralForeground3);
  background: var(--colorNeutralBackground1);
  border-radius: var(--borderRadiusLarge);
  border: var(--strokeWidthThin) solid var(--colorNeutralStroke2);
}
.modal-overlay {
  position: fixed;
  inset: 0;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--spacingVerticalL);
  background: var(--colorNeutralBackground4);
}
.modal-card {
  width: 90%;
  max-width: 700px;
  max-height: 90vh;
  overflow: auto;
  background: var(--colorNeutralBackground1);
  border-radius: var(--borderRadiusXLarge);
  box-shadow: var(--shadow28);
}
.modal-body {
  padding: var(--spacingVerticalL);
}
.modal-footer {
  justify-content: flex-end;
  padding: var(--spacingVerticalL);
  border-top: var(--strokeWidthThin) solid var(--colorNeutralStroke2);
}
.btn-close {
  border: 0;
  background: transparent;
  color: var(--colorNeutralForeground1);
  font-size: var(--fontSizeSubtitle2);
}
.toast-container {
  position: fixed;
  right: var(--spacingHorizontalL);
  bottom: var(--spacingVerticalL);
  z-index: 20;
}
.toast {
  padding: var(--spacingVerticalMNudge);
  margin-top: var(--spacingVerticalSNudge);
  border-radius: var(--borderRadiusMedium);
  box-shadow: var(--shadow16);
  background: var(--colorNeutralBackground1);
  border: var(--strokeWidthThin) solid var(--colorNeutralStroke1);
}
.toast-success {
  border-color: var(--colorStatusSuccessBorder);
}
.toast-error {
  border-color: var(--colorStatusDangerBorder);
}
.toast-info {
  border-color: var(--colorStatusInfoBorder);
}
.goal-badge,
.shift-badge {
  padding: var(--spacingVerticalXXS) var(--spacingHorizontalXS);
  border-radius: var(--borderRadiusSmall);
  background: var(--colorStatusInfoBackground);
  color: var(--colorStatusInfoForeground);
}
.goal-badge.completed {
  background: var(--colorStatusSuccessBackground);
  color: var(--colorStatusSuccessForeground);
}
.goal-badge.paused {
  background: var(--colorStatusWarningBackground);
  color: var(--colorStatusWarningForeground);
}
.btn-danger {
  background: var(--colorStatusDangerBackground);
  border-color: var(--colorStatusDangerBorder);
  color: var(--colorStatusDangerForeground);
}
.btn-link {
  color: var(--colorBrandForeground1);
}
.proposal-label {
  font-weight: var(--fontWeightSemibold);
  margin-top: var(--spacingVerticalMNudge);
}
.error-msg {
  color: var(--colorStatusDangerForeground);
  background: var(--colorStatusDangerBackground);
  padding: var(--spacingVerticalSNudge);
  border-radius: var(--borderRadiusMedium);
}
@media (max-width: 900px) {
  .workspace-layout {
    grid-template-columns: 1fr;
  }
  .reports-kpi-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 600px) {
  .topbar {
    padding: var(--spacingVerticalSNudge);
  }
  .agent-status-chip,
  .topbar-right .persona-badge,
  .btn-logout {
    display: none;
  }
  .content-area {
    padding: var(--spacingVerticalSNudge);
  }
  .chat-card,
  .twin-card {
    min-height: auto;
  }
  .chat-messages {
    height: 320px;
  }
}
.brain-nav-link{display:inline-flex;align-items:center;text-decoration:none}.brain-preview{min-height:440px;display:grid;align-content:center;justify-items:start;gap:var(--spacingVerticalL);padding:clamp(24px,6vw,72px);background:radial-gradient(circle at 75% 30%,var(--colorStatusInfoBackground),transparent 42%),var(--colorNeutralBackground3);border-radius:var(--borderRadiusLarge)}.brain-preview-eyebrow{margin:0 0 var(--spacingVerticalXS);font-size:var(--fontSizeCaption1);font-weight:var(--fontWeightSemibold);letter-spacing:.08em;color:var(--colorBrandForeground1)}.brain-preview .pane-subtitle{max-width:600px;margin:var(--spacingVerticalSNudge) 0 0;font-size:var(--fontSizeBody1)}.brain-preview-diagram{height:76px;display:flex;align-items:center;gap:28px}.brain-preview-diagram span{position:relative;width:14px;height:14px;border-radius:50%;background:var(--colorBrandBackground);box-shadow:0 0 18px var(--colorBrandBackground)}.brain-preview-diagram span:nth-child(2),.brain-preview-diagram span:nth-child(3){width:28px;height:28px;background:var(--colorStatusSuccessForeground)}.brain-preview-diagram span:not(:last-child)::after{content:"";position:absolute;left:100%;top:50%;width:28px;height:1px;background:var(--colorBrandStroke1)}.brain-open-button{font-size:var(--fontSizeBody1);min-height:40px}.brain-page{min-height:100vh;overflow:hidden}.brain-page-layout,.brain-workspace{min-height:100vh}.brain-page-layout{display:grid;grid-template-rows:auto 1fr}.brain-page-title{font-weight:var(--fontWeightSemibold);color:var(--colorNeutralForeground1);border-left:var(--strokeWidthThin) solid var(--colorNeutralStroke2);padding-left:var(--spacingHorizontalMNudge)}.brain-workspace{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding:var(--spacingVerticalL);gap:var(--spacingVerticalSNudge)}.brain-page-toolbar{padding:var(--spacingVerticalSNudge) var(--spacingHorizontalMNudge);border:var(--strokeWidthThin) solid var(--colorNeutralStroke2);border-radius:var(--borderRadiusLarge)}.brain-control-actions{display:flex;gap:var(--spacingHorizontalXS);flex-wrap:wrap}.brain-page-canvas{height:auto;min-height:0;border:var(--strokeWidthThin) solid var(--colorNeutralStroke2);border-radius:var(--borderRadiusLarge)}.brain-status-footer{display:flex;align-items:center;flex-wrap:wrap;gap:var(--spacingHorizontalL);padding:var(--spacingVerticalSNudge) var(--spacingHorizontalMNudge);font-size:var(--fontSizeCaption1);color:var(--colorNeutralForeground3)}.brain-status-footer code{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--colorNeutralForeground2)}@media(max-width:900px){.brain-page{overflow:auto}.brain-page-title,.brain-topbar .agent-status-chip{display:none}.brain-page-toolbar{align-items:flex-start;flex-direction:column}.brain-workspace{min-height:calc(100vh - 56px)}.brain-page-canvas{min-height:58vh}}@media(max-width:600px){.brain-back-button{font-size:0;width:32px;padding:0}.brain-back-button::after{content:"←";font-size:18px}.brain-workspace{padding:var(--spacingVerticalSNudge)}.brain-mode-switch{display:flex;flex-wrap:wrap}.brain-status-footer{gap:var(--spacingHorizontalSNudge)}}
.brain-preset-group{display:flex;align-items:center;gap:var(--spacingHorizontalXXS,4px);padding:3px;background:var(--colorNeutralBackground3);border:var(--strokeWidthThin) solid var(--colorNeutralStroke2);border-radius:var(--borderRadiusMedium)}
.brain-preset-group .btn-tool{white-space:nowrap}.brain-preset-group .btn-tool.active{color:var(--colorBrandForeground1);background:var(--colorBrandBackground2);border-color:var(--colorBrandStroke1)}
.brain-hud-dock{position:absolute;right:20px;bottom:20px;z-index:4;display:flex;align-items:center;gap:4px;padding:6px;background:color-mix(in srgb,var(--colorNeutralBackground1) 82%,transparent);border:var(--strokeWidthThin) solid var(--colorNeutralStroke2);border-radius:var(--borderRadiusLarge);box-shadow:0 8px 24px rgba(0,0,0,.22),0 2px 6px rgba(0,0,0,.12);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%)}
.brain-hud-button{display:grid;place-items:center;width:34px;height:34px;padding:0;color:var(--colorNeutralForeground1);background:transparent;border:0;border-radius:var(--borderRadiusMedium);cursor:pointer;transition:background-color .15s ease,color .15s ease,transform .15s ease}.brain-hud-button:hover{background:var(--colorNeutralBackground1Hover)}.brain-hud-button:active{background:var(--colorNeutralBackground1Pressed);transform:scale(.96)}.brain-hud-button:focus-visible{outline:2px solid var(--colorStrokeFocus2);outline-offset:2px}.brain-hud-button.active{color:var(--colorBrandForeground1);background:var(--colorBrandBackground2)}.brain-hud-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
[data-theme="light"] .brain-hud-dock{background:color-mix(in srgb,#fff 86%,transparent);box-shadow:0 8px 24px rgba(0,0,0,.14),0 2px 6px rgba(0,0,0,.08)}
@media(max-width:900px){.brain-preset-group{flex-wrap:wrap}.brain-hud-dock{right:12px;bottom:12px}}@media(max-width:600px){.brain-preset-group .btn-tool{font-size:var(--fontSizeCaption1)}.brain-hud-button{width:32px;height:32px}}
