/* GuidEX container-scoped styles. Host owns page-level CSS. */
#guidex-root {
  --gx-accent: var(--accent, #0b3a68);
  --gx-accent2: var(--accent2, #c03a3a);
  --gx-ink: var(--ink, #12202e);
  --gx-muted: var(--muted, #4a5f72);
  --gx-link: var(--link, var(--gx-accent));
  --gx-link-hover: var(--link-hover, var(--gx-link));
  --gx-link-decoration: var(--link-decoration, underline);
  --gx-link-hover-decoration: var(--link-hover-decoration, underline);
  --gx-bg: var(--bg, #f5f7fb);
  --gx-panel: var(--panel, #ffffff);
  --gx-panel2: var(--panel2, #e9eef5);
  --gx-card: var(--gx-panel);
  --gx-border: var(--border, #d7dee8);
  --gx-good: var(--good, #15803d);
  --gx-warn: var(--warn, #b45309);
  --gx-bad: var(--bad, #b91c1c);
  --gx-text: var(--gx-ink);
  --gx-fg: var(--gx-ink);
  --gx-primary: var(--gx-accent);
  --gx-success: var(--gx-good);
  --gx-btn-bg: var(--btn-bg, var(--gx-accent));
  --gx-btn-border: var(--btn-border, var(--gx-accent));
  --gx-btn-ink: var(--btn-ink, #fff);
  --gx-chat-drawer-width: var(--chat-drawer-width, 420px);
  --gx-sidepanel-width: 460px;
  --gx-focus-ring: var(--focus-ring, var(--gx-accent));
  --gx-radius: var(--radius, 14px);
  --gx-shadow: var(--shadow, 0 10px 30px rgba(15, 23, 42, 0.12));
  --gx-font-size-base: var(--font-size-base, 14px);
  --gx-font-size-sm: var(--font-size-sm, 13px);
  --gx-font-size-xs: var(--font-size-xs, 12px);
  --gx-font-size-lg: var(--font-size-lg, 18px);
  --gx-font-size-xl: var(--font-size-xl, 24px);
  --gx-line-height-base: var(--line-height-base, 1.5);
  --gx-control-height: var(--control-height, 44px);
  --gx-control-height-sm: var(--control-height-sm, 34px);
  --gx-surface-subtle: var(--surface-subtle, rgba(255,255,255,0.05));
  font-family: inherit;
  color: var(--gx-ink);
  font-size: var(--gx-font-size-base);
  line-height: var(--gx-line-height-base);
  position: relative;
  left: calc(-1 * var(--gx-sidepanel-shift, 0px));
  margin-right: var(--gx-sidepanel-reserve, 0px);
  transition: left 0.2s, margin-right 0.2s;
}
#guidex-root[data-contrast='light']{
  --gx-bg: #ffffff;
  --gx-panel: #ffffff;
  --gx-panel2: #f1f5f9;
  --gx-border: #cbd5e1;
  --gx-ink: #0f172a;
  --gx-muted: #475569;
  --gx-link: var(--gx-accent);
  --gx-btn-ink: #ffffff;
}
#guidex-root[data-contrast='dark']{
  --gx-bg: #020617;
  --gx-panel: #0f172a;
  --gx-panel2: #1e293b;
  --gx-border: #475569;
  --gx-ink: #f8fafc;
  --gx-muted: #cbd5e1;
  --gx-link: #93c5fd;
  --gx-btn-ink: #ffffff;
  --gx-accent: #60a5fa;
  --gx-good: #4ade80;
  --gx-warn: #fbbf24;
  --gx-bad: #ef4444;
}
#guidex-root,
#guidex-root * ,
#guidex-root *::before,
#guidex-root *::after { box-sizing: border-box; }
#guidex-root button,
#guidex-root input,
#guidex-root select,
#guidex-root textarea { font-family: inherit; }
/* Isolation: prevent parent-page broad selectors (a, h2, p, etc.) from bleeding into the widget */
#guidex-root a { color: var(--gx-link); text-decoration: var(--gx-link-decoration); text-underline-offset: 2px; text-decoration-thickness: 1px; }
#guidex-root a:hover { color: var(--gx-link-hover); text-decoration: var(--gx-link-hover-decoration); }
#guidex-root a:focus-visible,
#guidex-root button:focus-visible,
#guidex-root .gx-header-toolstrip__toggle:focus-within,
#guidex-root [role='button']:focus-visible,
#guidex-root .gx-btn:focus-visible,
#guidex-root .gx-select:focus-visible,
#guidex-root .gx-input:focus-visible {
  outline: 2px solid var(--gx-focus-ring);
  outline-offset: 2px;
}
#guidex-root h1, #guidex-root h2, #guidex-root h3, #guidex-root h4 { color: inherit; }
#guidex-root .gx-shell{
  color: var(--gx-ink); background: var(--gx-bg); border: 1px solid var(--gx-border);
  border-radius: var(--gx-radius); overflow: hidden; max-width: 1400px;
  box-shadow: var(--gx-shadow); display:flex; flex-direction:column;
}
#guidex-root .gx-shell-body{ min-width:0; flex:1 1 auto; }
#guidex-root #gx-shell-footer{ margin-top:auto; background:var(--gx-panel); border-top:1px solid var(--gx-border); }
#guidex-root .gx-shell-body--compact{ display:flex; flex-direction:column; }
#guidex-root .gx-shell-body--desktop{ display:grid; grid-template-columns:minmax(0, 1fr); align-items:start; }
#guidex-root.inspector-open .gx-shell-body--desktop{ grid-template-columns:minmax(0, 1fr) minmax(320px, var(--gx-sidepanel-width)); }
#guidex-root .gx-shell-primary{ min-width:0; display:flex; flex-direction:column; }
#guidex-root .gx-shell-aside{ display:none; min-width:0; background:var(--gx-panel); border-left:1px solid var(--gx-border); }
#guidex-root.inspector-open .gx-shell-aside{ display:flex; flex-direction:column; }
#guidex-root .gx-shell-slot{ min-width:0; }
#guidex-root .gx-shell-slot--atlas{ border-bottom:1px solid var(--gx-border); background:var(--gx-panel); }
#guidex-root .gx-shell-slot--inspector{ min-width:0; background:var(--gx-panel); }
#guidex-root[data-gx-sidepanel-mode='none'],
#guidex-root[data-gx-sidepanel-mode='stacked']{
  --gx-sidepanel-shift: 0px;
  --gx-sidepanel-reserve: 0px;
}
#guidex-root[data-gx-sidepanel-mode='floating']{
  --gx-sidepanel-reserve: 0px;
}
#guidex-root[data-guidex-surface='phone'] .gx-shell{
  width: min(100%, var(--gx-host-vw, 100vw));
  max-width: var(--gx-host-vw, 100vw);
  margin: 0 auto;
  border-radius: 0;
}
#guidex-root[data-guidex-surface='phone'] .gx-main,
#guidex-root[data-guidex-surface='phone'] .gx-toolbar,
#guidex-root[data-guidex-surface='phone'] .gx-footer{
  width: 100%;
  max-width: var(--gx-host-vw, 100vw);
}
#guidex-root[data-guidex-surface='phone'] .gx-shell-slot--atlas,
#guidex-root[data-guidex-surface='phone'] .gx-shell-slot--inspector{ width:100%; max-width:var(--gx-host-vw, 100vw); }
#guidex-root[data-guidex-surface='phone'] .gx-shell-slot--atlas{
  position: sticky;
  top: 0;
  z-index: 6;
}
#guidex-root[data-guidex-surface='phone'] .gx-shell-slot--inspector,
#guidex-root[data-guidex-surface='phone'] .gx-float-controls-wrap,
#guidex-root[data-guidex-surface='phone'] .gx-compact-nav-menu,
#guidex-root[data-guidex-surface='phone'] .gx-toolbar{
  display: none;
}
#guidex-root .gx-header{ padding: 14px 16px; background: var(--gx-panel); border-bottom: 1px solid var(--gx-border); }
#guidex-root .gx-titlebar{ display:flex; align-items:center; justify-content:space-between; gap: 12px; }
#guidex-root .gx-brand{ display: flex; align-items: center; gap: 8px; }
#guidex-root .gx-header-actions{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; justify-content:flex-end; }
#guidex-root .gx-header-voice-controls{ display:inline-flex; align-items:center; gap:10px; padding:6px 10px; border-radius:calc(var(--gx-radius) - 4px); background: var(--gx-panel2); border:1px solid var(--gx-border); }
#guidex-root .gx-header-voice-controls .gx-btn{ height:var(--gx-control-height-sm); min-width:var(--gx-control-height-sm); padding:0 8px; box-shadow:none; }
#guidex-root .gx-header-voice-controls .gx-btn,
#guidex-root .gx-header-voice-controls .gx-btn.ghost,
#guidex-root .gx-header-voice-controls .gx-btn.secondary{
  background: var(--gx-panel);
  border-color: var(--gx-border);
  color: var(--gx-ink);
}
#guidex-root .gx-brand-logo{ width: 28px; height: 28px; object-fit: contain; background: var(--gx-panel2); padding: 4px; border-radius: 4px; }
#guidex-root .gx-brand h1{ margin:0; font-size: var(--gx-font-size-lg); }
#guidex-root .gx-subtitle{ font-size: var(--gx-font-size-xs); color: var(--gx-muted); margin-top: 2px; }
#guidex-root .gx-header-toolstrip{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
#guidex-root .gx-header-toolstrip--compact{ justify-content:flex-start; }
#guidex-root .gx-header-toolstrip__field{ display:flex; flex-direction:column; gap:3px; min-width:94px; font-size:11px; font-weight:700; color:var(--gx-muted); text-transform:uppercase; letter-spacing:0.04em; }
#guidex-root .gx-mobile-entry-door{
  display:flex;
  flex-direction:column;
  gap:18px;
  padding:20px 16px 24px;
  background:linear-gradient(180deg, color-mix(in srgb, var(--gx-panel) 88%, #f0e4bf) 0%, var(--gx-bg) 100%);
}
#guidex-root .gx-mobile-entry-door__hero{
  display:flex;
  flex-direction:column;
  gap:10px;
}
#guidex-root .gx-mobile-entry-door__kicker{
  font-size:12px;
  font-weight:800;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:var(--gx-muted);
}
#guidex-root .gx-mobile-entry-door__title{
  margin:0;
  font-size:clamp(30px, 8vw, 42px);
  line-height:1.05;
}
#guidex-root .gx-mobile-entry-door__subtitle{
  margin:0;
  font-size:16px;
  line-height:1.55;
  color:var(--gx-muted);
}
#guidex-root .gx-mobile-entry-door__actions{
  display:flex;
  flex-direction:column;
}
#guidex-root .gx-mobile-entry-door__card{
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:18px 16px;
  border:1px solid var(--gx-border);
  border-radius:18px;
  background:var(--gx-panel);
  box-shadow:var(--gx-shadow);
}
#guidex-root .gx-mobile-entry-door__card-label{
  font-size:13px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:0.08em;
  color:var(--gx-accent);
}
#guidex-root .gx-mobile-entry-door__cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  width:100%;
  min-height:56px;
}
#guidex-root .gx-mobile-entry-door__cta-icon{
  width:20px;
  height:20px;
  object-fit:contain;
}
#guidex-root .gx-mobile-entry-door__note{
  margin:0;
  font-size:14px;
  line-height:1.5;
  color:var(--gx-muted);
}
#guidex-root .gx-mobile-entry-door__responses{
  display:flex;
  flex-direction:column;
  gap:10px;
}
#guidex-root .gx-mobile-entry-door__response{
  appearance:none;
  width:100%;
  min-height:48px;
  padding:12px 14px;
  border:1px solid var(--gx-border);
  border-radius:14px;
  background:var(--gx-panel2);
  color:var(--gx-ink);
  font:inherit;
  font-weight:700;
  text-align:left;
  cursor:pointer;
}
#guidex-root .gx-mobile-entry-door__response:focus-visible{
  outline:2px solid var(--gx-focus-ring);
  outline-offset:2px;
}
#guidex-root .gx-mobile-entry-door__response:hover{
  border-color:var(--gx-accent);
  background:color-mix(in srgb, var(--gx-accent) 10%, var(--gx-panel2));
}
#guidex-root .gx-mobile-entry-door__band{
  padding:14px 16px;
  border-radius:16px;
  background:color-mix(in srgb, var(--gx-accent) 10%, var(--gx-panel));
  border:1px solid color-mix(in srgb, var(--gx-accent) 20%, var(--gx-border));
  font-size:14px;
  line-height:1.55;
  color:var(--gx-ink);
}
#guidex-root .gx-header-toolstrip__field--inline{ flex-direction:row; align-items:center; gap:6px; min-width:auto; }
#guidex-root .gx-header-toolstrip__field--inline span{ display:inline-flex; align-items:center; }
#guidex-root .gx-header-toolstrip__field span,
#guidex-root .gx-header-toolstrip__toggle span{ white-space:nowrap; }
#guidex-root .gx-header-toolstrip__select{ min-width:80px; height:22px; padding:0 22px 0 8px; border-radius:999px; font-size:10px; }
#guidex-root .gx-header-toolstrip__pill-group{ display:inline-flex; align-items:center; gap:4px; padding:2px 6px 2px 8px; min-height:28px; border:1px solid var(--gx-border); border-radius:999px; background:var(--gx-panel2); }
#guidex-root .gx-header-toolstrip__pill-label{ white-space:nowrap; font-size:11px; font-weight:700; color:var(--gx-muted); text-transform:uppercase; letter-spacing:0.04em; }
#guidex-root .gx-header-pill{ min-width:42px; justify-content:center; box-shadow:none; }
#guidex-root .gx-header-pill.is-active,
#guidex-root .gx-header-pill[aria-pressed='true']{ background:var(--gx-accent); border-color:var(--gx-accent); color:var(--gx-btn-ink); }
#guidex-root .gx-header-toolstrip__toggle{ display:inline-flex; align-items:center; gap:8px; min-height:28px; padding:0 10px; border:1px solid var(--gx-border); border-radius:999px; background:var(--gx-panel2); color:var(--gx-ink); font-size:12px; font-weight:700; cursor:pointer; }
#guidex-root .gx-header-toolstrip__toggle input{ margin:0; }
#guidex-root .gx-header-tool{ min-width:36px; }
#guidex-root .gx-toolband{ display:flex; justify-content:flex-end; padding:10px 0 0; margin-top:8px; border-top:1px solid var(--gx-border); }
#guidex-root .gx-toolband .gx-header-toolstrip{ width:100%; justify-content:flex-end; }
#guidex-root .gx-footer-toolband{ background:transparent; border-bottom:none; }
#guidex-root.chat-open .gx-footer-toolband .gx-header-toolstrip{ justify-content:flex-start; }
#guidex-root .gx-toolbar{ display:flex; flex-direction:column; gap:10px; padding: 10px 12px; background: var(--gx-panel); border-bottom: 1px solid var(--gx-border); overflow-x:auto; }
#guidex-root .gx-toolbar--compact{ overflow:visible; gap:8px; }
#guidex-root .gx-float-controls-wrap{ position:sticky; top:10px; margin-left:auto; z-index:10002; display:flex; flex-direction:column; align-items:flex-end; gap:8px; width:max-content; max-width:calc(var(--gx-host-vw, 100vw) - 20px); }
#guidex-root .gx-float-controls{ display:flex; align-items:center; gap:3px; background:var(--gx-panel,#fff); border:1px solid var(--gx-border,#dee2e6); border-radius:18px; padding:3px 8px; box-shadow:0 2px 8px rgba(0,0,0,0.12); width:max-content; max-width:100%; }
#guidex-root .gx-float-controls .gx-btn{ padding:4px; font-size:14px; }
#guidex-root .gx-compact-nav-toggle{ flex:0 0 auto; min-width:44px; min-height:44px; padding:0 12px; font-size:20px; line-height:1; }
#guidex-root .gx-compact-nav-title{ flex:1 1 auto; min-width:0; font-size:var(--gx-font-size-lg); font-weight:800; color:var(--gx-ink); overflow-wrap:anywhere; }
#guidex-root .gx-compact-nav-menu{ display:flex; flex-direction:column; gap:6px; width:100%; }
#guidex-root .gx-compact-nav-menu.gx-compact-nav-menu--floating{ position:absolute; top:calc(100% + 8px); right:0; width:min(320px, calc(var(--gx-host-vw, 100vw) - 20px)); max-width:calc(var(--gx-host-vw, 100vw) - 20px); max-height:calc(var(--gx-host-vh, 100dvh) - 120px); overflow:auto; padding:10px; border:1px solid var(--gx-border); border-radius:14px; background:var(--gx-panel); box-shadow:var(--gx-shadow); z-index:10003; }
#guidex-root .gx-compact-nav-link{ display:flex; align-items:center; gap:8px; width:100%; min-width:0; min-height:44px; padding:10px 12px; border:1px solid var(--gx-border); border-radius:10px; background:var(--gx-panel2); color:var(--gx-ink); text-decoration:none; font-weight:700; }
#guidex-root button.gx-compact-nav-link{ appearance:none; text-align:left; cursor:pointer; font:inherit; }
#guidex-root .gx-compact-nav-link[aria-current='page']{ border-color:var(--gx-accent); background:color-mix(in srgb, var(--gx-accent) 12%, var(--gx-panel2)); }
#guidex-root .gx-compact-nav-link:focus-visible{ outline:2px solid var(--gx-focus-ring); outline-offset:2px; }
#guidex-root .gx-compact-nav-section{ display:flex; flex-direction:column; gap:8px; padding-top:6px; }
#guidex-root .gx-compact-nav-section-label{ font-size:var(--gx-font-size-xs); font-weight:800; color:var(--gx-muted); text-transform:uppercase; letter-spacing:0.06em; padding:2px 2px 0; }
#guidex-root .gx-compact-nav-tools{ display:flex; flex-direction:column; gap:8px; }
#guidex-root .gx-compact-nav-language{ display:flex; flex-direction:column; gap:8px; padding:10px 12px; border:1px solid var(--gx-border); border-radius:10px; background:var(--gx-panel2); }
#guidex-root .gx-compact-nav-language-label{ font-size:var(--gx-font-size-xs); font-weight:700; color:var(--gx-muted); text-transform:uppercase; letter-spacing:0.04em; }
#guidex-root .gx-compact-nav-language-buttons{ display:flex; gap:8px; flex-wrap:wrap; }
#guidex-root .gx-compact-nav-language-buttons .gx-header-pill{ min-width:52px; }
#guidex-root .gx-compact-nav-tool{ justify-content:center; }
#guidex-root .gx-footer{ padding:10px 12px; background:var(--gx-panel); border-top:none; font-size:var(--gx-font-size-xs); color:var(--gx-muted); display:flex; flex-direction:column; gap:2px; }
#guidex-root .gx-footer-row{ display:flex; justify-content:space-between; align-items:baseline; gap:12px; }
#guidex-root .gx-footer-left{ flex:0 0 auto; display:flex; align-items:center; }
#guidex-root .gx-footer-logo{ height:24px; width:auto; opacity:0.75; display:block; }
#guidex-root .gx-footer-right{ flex:0 0 auto; white-space:nowrap; text-align:right; display:flex; align-items:center; gap:10px; }
#guidex-root .gx-footer-data{ display:inline-block; }
#guidex-root .gx-footer-device{ display:inline-block; }
#guidex-root .gx-footer-privacy{ color:var(--gx-muted); text-align:left; line-height:1.3; display:block; white-space:normal; overflow:visible; text-overflow:clip; }
#guidex-root .gx-footer-privacy-main{ margin-bottom:2px; }
#guidex-root .gx-footer-privacy-sub{ margin-bottom:0; }
#guidex-root .gx-footer-brand{ font-size:11px; opacity:0.7; }
#guidex-root .gx-footer-link{ color:inherit; text-decoration:underline; }
#guidex-root .gx-footer-data-btn{ background:none; border:none; cursor:pointer; padding:0; color:inherit; font:inherit; }
#guidex-root .gx-footer-data-btn:focus-visible{ outline:2px solid var(--gx-accent); outline-offset:2px; border-radius:4px; }
#guidex-root [hidden]{ display:none !important; }
#guidex-root .gx-main{ padding: var(--gx-container-padding, 12px); }
#guidex-root[data-feat-compare='false'] a[href='#/compare'],
#guidex-root[data-feat-compare='false'] [data-action='compare_add']{ display:none !important; }
#guidex-root[data-feat-follow='false'] [data-action='follow'],
#guidex-root[data-feat-follow='false'] [data-action='follow_anyway']{ display:none !important; }
#guidex-root[data-feat-progress='false'] a[href='#/report'],
#guidex-root[data-feat-progress='false'] [data-action='open_portfolio_report'],
#guidex-root[data-feat-progress='false'] [data-action='detailed_myselfe_report']{ display:none !important; }
#guidex-root[data-feat-enroll='false'] .gx-enrollment-mock,
#guidex-root[data-feat-enroll='false'] [data-action='open_enrollment_mock']{ display:none !important; }
/* Back navigation bar — sits above screen content on non-primary routes */
#guidex-root .gx-back-bar{ padding: 4px 0 8px 0; }
#guidex-root .gx-card{ background: var(--gx-panel); border:1px solid var(--gx-border); border-radius: var(--gx-radius); padding: 16px; margin-bottom: 14px; box-shadow: var(--gx-shadow); }
#guidex-root .gx-card h3{ font-size:calc(var(--gx-font-size-base) + 3px); font-weight:700; margin:0 0 4px; color:var(--gx-ink); }
#guidex-root .gx-card h4{ font-size:var(--gx-font-size-base); font-weight:700; margin:12px 0 8px; color:var(--gx-ink); border-bottom:1px solid var(--gx-border); padding-bottom:6px; }
#guidex-root .gx-row{ display:flex; gap: 12px; flex-wrap: wrap; }
#guidex-root .gx-col{ flex: 1 1 260px; min-width: 240px; }
#guidex-root .gx-meta{ font-size: var(--gx-font-size-xs); color:var(--gx-muted); }
#guidex-root .gx-list-clean{ margin:8px 0 0 18px; padding:0; line-height:1.7; }
#guidex-root .gx-label{ display:block; font-weight:700; margin-bottom:6px; }
#guidex-root .gx-subhead{ margin:0 0 8px; padding:0; border:0; font-size:var(--gx-font-size-base); font-weight:700; color:var(--gx-ink); }
#guidex-root .gx-section-divider{ margin-top:16px; padding-top:12px; border-top:1px solid var(--gx-border); }
#guidex-root .gx-progress-track{ height:28px; border-radius:999px; overflow:hidden; background:var(--gx-border); }
#guidex-root .gx-progress-fill{ height:100%; min-width:40px; display:flex; align-items:center; justify-content:center; background:linear-gradient(90deg,var(--gx-accent),var(--gx-good)); color:var(--gx-btn-ink); font-weight:700; font-size:var(--gx-font-size-sm); }
#guidex-root .gx-progress-track--meter{ position:relative; }
#guidex-root .gx-progress-meter{ width:100%; height:100%; appearance:none; -webkit-appearance:none; border:none; background:transparent; display:block; }
#guidex-root .gx-progress-meter::-webkit-progress-bar{ background:var(--gx-border); border-radius:999px; }
#guidex-root .gx-progress-meter::-webkit-progress-value{ background:linear-gradient(90deg,var(--gx-accent),var(--gx-good)); border-radius:999px; }
#guidex-root .gx-progress-meter::-moz-progress-bar{ background:linear-gradient(90deg,var(--gx-accent),var(--gx-good)); border-radius:999px; }
#guidex-root .gx-progress-fill--label{ position:absolute; inset:0; background:none; }
#guidex-root .gx-progress-live-wrap{ margin-top:12px; border-top:1px solid var(--gx-border); padding-top:12px; }
#guidex-root .gx-progress-live-title{ margin:0 0 8px; }
#guidex-root .gx-progress-live-table{ width:100%; border-collapse:collapse; font-size:0.92rem; }
#guidex-root .gx-progress-live-head{ padding:5px 6px; border-bottom:2px solid var(--gx-border); }
#guidex-root .gx-progress-live-head--left{ text-align:left; }
#guidex-root .gx-progress-live-head--center{ text-align:center; }
#guidex-root .gx-progress-live-cell{ padding:5px 6px; border-bottom:1px solid var(--gx-border); }
#guidex-root .gx-progress-live-cell--center{ text-align:center; }
#guidex-root .gx-progress-live-badge{ display:inline-block; padding:1px 6px; border-radius:3px; font-size:11px; }
#guidex-root .gx-progress-live-badge--good{ background:var(--gx-good); color:#fff; }
#guidex-root .gx-progress-live-badge--accent{ background:var(--gx-accent); color:#fff; }
#guidex-root .gx-progress-live-badge--muted{ background:var(--gx-border); color:var(--gx-fg); }
#guidex-root .gx-progress-result-note{ font-size:13px; }
#guidex-root .gx-progress-result-note--warn{ color:var(--gx-warn); }
#guidex-root .gx-progress-result-note--error{ color:var(--gx-bad); }
#guidex-root .gx-progress-result-status{ font-size:13px; padding:10px 0; color:var(--gx-muted); }
#guidex-root .gx-progress-result-status--error{ color:var(--gx-bad); padding:8px 0; }
#guidex-root .gx-progress-result-status--loading{ color:var(--gx-muted); }
#guidex-root .gx-progress-result-status--muted{ color:var(--gx-muted); padding:8px 0; }
#guidex-root .gx-progress-result-summary{ background:var(--gx-panel,rgba(79,70,229,0.08)); border-left:4px solid #4f46e5; padding:12px 14px; border-radius:0 6px 6px 0; margin-bottom:12px; }
#guidex-root .gx-progress-result-title{ font-size:14px; font-weight:700; }
#guidex-root .gx-progress-result-title--sm{ margin-bottom:8px; }
#guidex-root .gx-progress-result-copy{ font-size:13px; color:var(--gx-muted); }
#guidex-root .gx-progress-result-copy--spaced{ margin-top:6px; }
#guidex-root .gx-progress-result-caption{ font-size:12px; color:var(--gx-muted); font-style:italic; }
#guidex-root .gx-progress-result-caption--spaced{ margin-top:8px; }
#guidex-root .gx-progress-result-table-wrap{ overflow-x:auto; margin-bottom:12px; }
#guidex-root .gx-progress-result-table{ width:100%; border-collapse:collapse; font-size:12px; }
#guidex-root .gx-progress-result-table-head{ background:var(--gx-surface-subtle,rgba(255,255,255,0.05)); }
#guidex-root .gx-progress-result-table th{ padding:6px 8px; text-align:left; }
#guidex-root .gx-progress-result-table-row{ border-bottom:1px solid var(--gx-border); }
#guidex-root .gx-progress-result-table td{ padding:5px 8px; }
#guidex-root .gx-progress-result-table-muted{ color:var(--gx-muted); }
#guidex-root .gx-progress-disposition{ display:inline-flex; padding:2px 7px; border-radius:12px; font-size:11px; font-weight:600; }
#guidex-root .gx-progress-disposition--good{ background:#dcfce7; color:var(--gx-good); }
#guidex-root .gx-progress-disposition--accent{ background:#dbeafe; color:var(--gx-accent); }
#guidex-root .gx-progress-disposition--warn{ background:#fef9c3; color:var(--gx-warn); }
#guidex-root .gx-progress-disposition--muted{ background:var(--gx-panel2); color:var(--gx-muted); }
#guidex-root .gx-progress-disposition--bad{ background:#fee2e2; color:var(--gx-bad); }
#guidex-root .gx-progress-caution{ background:#fffbeb; border:1px solid #fcd34d; border-radius:6px; padding:8px 12px; font-size:12px; color:var(--gx-warn); margin-bottom:10px; }
#guidex-root .gx-progress-caution-list{ margin:4px 0; padding-left:16px; }
#guidex-root .gx-progress-caution-item{ margin-bottom:2px; }
#guidex-root .gx-progress-result-actions-wrap{ margin-top:14px; padding-top:14px; border-top:1px solid var(--gx-border); }
#guidex-root .gx-progress-result-body{ margin-bottom:10px; }
#guidex-root .gx-progress-result-actions{ display:flex; flex-wrap:wrap; gap:8px; }
#guidex-root .gx-progress-evidence-stack{ display:grid; gap:10px; }
#guidex-root .gx-progress-evidence-image{ max-width:100%; max-height:160px; border-radius:4px; margin-top:4px; }
#guidex-root .gx-portfolio-shell{ position:relative; }
#guidex-root .gx-portfolio-hero{ display:flex; align-items:center; gap:14px; margin-bottom:16px; }
#guidex-root .gx-portfolio-hero__img{ height:48px; filter:invert(1); opacity:.85; }
#guidex-root .gx-portfolio-title{ margin:0; }
#guidex-root .gx-portfolio-subtitle{ margin-top:2px; }
#guidex-root .gx-portfolio-narrative{ margin-top:8px; color:var(--gx-muted); font-size:13px; line-height:1.6; }
#guidex-root .gx-portfolio-docs{ display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
#guidex-root .gx-portfolio-doc-badge{ display:inline-flex; align-items:center; gap:4px; padding:4px 10px; border-radius:6px; font-size:12px; }
#guidex-root .gx-portfolio-doc-badge--present{ background:rgba(37,99,235,.15); border:1px solid rgba(37,99,235,.3); color:var(--gx-accent); font-weight:600; }
#guidex-root .gx-portfolio-doc-badge--empty{ background:rgba(255,255,255,.05); color:var(--gx-muted); }
#guidex-root .gx-portfolio-summary{ margin-top:12px; padding:10px 14px; background:rgba(255,255,255,.04); border-radius:8px; font-size:13px; }
#guidex-root .gx-portfolio-summary__row{ margin-top:4px; }
#guidex-root .gx-portfolio-summary__value{ color:var(--gx-border); }
#guidex-root .gx-portfolio-section-title{ margin:0 0 14px; }
#guidex-root .gx-portfolio-card{ background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.08); border-radius:10px; padding:16px; margin-bottom:12px; }
#guidex-root .gx-portfolio-card__header{ display:flex; align-items:center; gap:10px; margin-bottom:8px; }
#guidex-root .gx-portfolio-card__icon{ font-size:24px; }
#guidex-root .gx-portfolio-card__body{ flex:1; }
#guidex-root .gx-portfolio-card__title{ font-size:15px; font-weight:700; color:var(--gx-border); }
#guidex-root .gx-portfolio-card__narrative{ font-size:12px; color:var(--gx-muted); margin-top:2px; }
#guidex-root .gx-portfolio-strength{ color:#fff; font-size:11px; font-weight:700; padding:3px 10px; border-radius:4px; }
#guidex-root .gx-portfolio-strength--good{ background:var(--gx-good); }
#guidex-root .gx-portfolio-strength--accent{ background:var(--gx-accent); }
#guidex-root .gx-portfolio-strength--warn{ background:var(--gx-warn); }
#guidex-root .gx-portfolio-strength--muted{ background:var(--gx-muted); }
#guidex-root .gx-portfolio-empty{ color:var(--gx-muted); font-style:italic; font-size:13px; padding:4px 0; }
#guidex-root .gx-portfolio-chip-list{ display:flex; flex-wrap:wrap; gap:6px; }
#guidex-root .gx-portfolio-chip-list--spaced{ margin-top:6px; }
#guidex-root .gx-portfolio-chip{ display:flex; align-items:center; gap:4px; padding:4px 8px; background:rgba(0,0,0,.2); border-radius:6px; font-size:12px; }
#guidex-root .gx-portfolio-chip--wide{ gap:6px; padding:6px 10px; }
#guidex-root .gx-portfolio-chip__label{ color:#c8d4e0; }
#guidex-root .gx-portfolio-reflections-head{ display:flex; align-items:center; gap:10px; margin:12px 0 8px; }
#guidex-root .gx-portfolio-badge--linkedin{ background:#0077b5; }
#guidex-root .gx-portfolio-action{ min-width:160px; text-align:center; }
#guidex-root .gx-portfolio-link-action{ display:inline-flex; align-items:center; justify-content:center; text-decoration:none; }
/* Progress screen — named container blocks (GoldPlan, GoldPath, My Playlist Checklist) */
#guidex-root .gx-progress-container{ margin-bottom:28px; }
#guidex-root .gx-progress-container .gx-container-heading{ font-size:calc(var(--gx-font-size-base) + 6px); font-weight:800; color:var(--gx-ink); margin:0 0 12px; padding-bottom:8px; border-bottom:2px solid var(--gx-accent); }
#guidex-root .gx-goldpath-statement{ background:var(--gx-panel); border:1px solid var(--gx-border); border-radius:var(--gx-radius); padding:16px; margin-bottom:14px; box-shadow:var(--gx-shadow); line-height:1.6; white-space:pre-wrap; word-break:break-word; }
#guidex-root .gx-field-stack{ display:flex; flex-direction:column; gap:10px; max-width:520px; }
#guidex-root .gx-actions-center{ display:flex; flex-wrap:wrap; justify-content:center; gap:10px; }
#guidex-root .gx-actions-stretch{ display:flex; gap:8px; }
#guidex-root .gx-actions-stretch > *{ flex:1; }
#guidex-root .gx-inline-actions{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-top:12px; }
#guidex-root .gx-row-tight{ gap:8px; }
#guidex-root .gx-center-copy{ text-align:center; }
#guidex-root .gx-mt-xs{ margin-top:6px; }
#guidex-root .gx-mt-sm{ margin-top:12px; }
#guidex-root .gx-meta-italic-top{ margin-top:6px; font-style:italic; }
#guidex-root .gx-btn--wide{ min-width:150px; text-align:center; justify-content:center; display:inline-flex; align-items:center; }
#guidex-root a.gx-btn--wide{ text-decoration:none; }
#guidex-root .gx-feature-panel{ padding:14px 16px; border:1px solid var(--gx-border); border-radius:calc(var(--gx-radius) - 4px); background:var(--gx-panel); }
#guidex-root .gx-feature-panel--subtle{ background:var(--gx-panel2); }
#guidex-root .gx-page-intro{ margin-top:0; }
#guidex-root .gx-page-intro-title{ margin:0 0 6px; font-size:clamp(1.4rem, 1.05rem + 1vw, 2rem); line-height:1.15; font-weight:700; color:var(--gx-ink); letter-spacing:-0.01em; }
#guidex-root .gx-page-intro-copy{ margin:0; line-height:1.5; color:var(--gx-muted); }
#guidex-root .gx-feature-panel--info{ background:rgba(37,99,235,0.06); border-color:rgba(37,99,235,0.18); }
#guidex-root .gx-feature-panel__eyebrow{ font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:0.05em; color:var(--gx-muted); margin-bottom:6px; }
#guidex-root .gx-feature-panel__title{ margin:0 0 8px; font-size:14px; font-weight:700; }
#guidex-root .gx-feature-panel__copy{ margin:0 0 10px; }
#guidex-root .gx-feature-panel__actions{ justify-content:center; gap:10px; flex-wrap:wrap; }
#guidex-root .gx-selfie-grid-shell{ overflow:hidden; }
#guidex-root .gx-selfie-layout{ max-width:1120px; margin:14px auto 0; display:flex; flex-direction:column; gap:20px; }
#guidex-root .gx-selfie-intro-panel{ max-width:820px; margin:10px auto 0; }
#guidex-root .gx-selfie-section{ --gx-selfie-section-accent: var(--gx-accent); --gx-selfie-section-bg: var(--gx-panel); max-width:100%; overflow:hidden; position:relative; scroll-margin-top:24px; border-color:rgba(15,23,42,0.12); background:linear-gradient(180deg, rgba(255,255,255,0.82), rgba(255,255,255,0.96)), var(--gx-selfie-section-bg); box-shadow:0 16px 34px rgba(15,23,42,0.08); }
#guidex-root .gx-selfie-section::before{ content:""; position:absolute; top:0; left:18px; right:18px; height:5px; border-radius:999px; background:var(--gx-selfie-section-accent); opacity:0.9; }
#guidex-root .gx-selfie-section::after{ content:""; position:absolute; inset:0; border-radius:inherit; box-shadow:inset 0 0 0 1px rgba(255,255,255,0.45); pointer-events:none; }
#guidex-root .gx-selfie-section--pillars{ --gx-selfie-section-accent:#0f4c81; --gx-selfie-section-bg:#eef5fb; }
#guidex-root .gx-selfie-section--actions{ --gx-selfie-section-accent:#8a6a12; --gx-selfie-section-bg:#fcf8ee; }
#guidex-root .gx-selfie-section--foundation{ --gx-selfie-section-accent:#0b3a68; --gx-selfie-section-bg:#f6f9fc; }
#guidex-root .gx-selfie-section--evidence{ --gx-selfie-section-accent:#2563eb; --gx-selfie-section-bg:#eef4ff; }
#guidex-root .gx-selfie-section--reflection{ --gx-selfie-section-accent:#0f766e; --gx-selfie-section-bg:#eef8f6; }
#guidex-root .gx-selfie-section--comparison{ --gx-selfie-section-accent:#7c3aed; --gx-selfie-section-bg:#f5f2ff; }
#guidex-root .gx-selfie-section__title{ font-size:18px; line-height:1.25; }
#guidex-root .gx-selfie-summary-grid{ display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:12px; }
#guidex-root .gx-selfie-summary-grid--tight{ grid-template-columns:repeat(4, minmax(0, 1fr)); }
#guidex-root .gx-selfie-summary-card{ min-width:0; padding:14px; border:1px solid var(--gx-border); border-radius:14px; background:var(--gx-panel); overflow-wrap:anywhere; }
#guidex-root .gx-selfie-summary-card__label{ font-size:11px; font-weight:800; letter-spacing:0.08em; text-transform:uppercase; color:var(--gx-muted); }
#guidex-root .gx-selfie-summary-card__value{ margin-top:8px; font-size:15px; font-weight:800; line-height:1.35; color:var(--gx-ink); }
#guidex-root .gx-selfie-summary-card__meta{ margin-top:8px; font-size:12px; line-height:1.45; color:var(--gx-muted); }
#guidex-root .gx-selfie-intake-grid{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:12px; }
#guidex-root .gx-selfie-intake-card{ min-width:0; min-height:122px; display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-start; gap:8px; padding:16px; border:1px solid var(--gx-border); border-radius:16px; background:var(--gx-panel); color:var(--gx-ink); cursor:pointer; text-decoration:none; box-sizing:border-box; transition:border-color .15s, box-shadow .15s, transform .15s; }
#guidex-root .gx-selfie-intake-card:hover,
#guidex-root .gx-selfie-intake-card:focus-visible{ border-color:var(--gx-accent); box-shadow:0 0 0 3px var(--gx-focus-ring); transform:translateY(-1px); outline:none; }
#guidex-root .gx-selfie-intake-card--button{ width:100%; appearance:none; text-align:left; font:inherit; }
#guidex-root .gx-selfie-intake-card--upload{ border:1px solid var(--gx-border); }
#guidex-root .gx-selfie-intake-card__icon{ font-size:24px; line-height:1; }
#guidex-root .gx-selfie-intake-card__title{ font-size:15px; font-weight:800; line-height:1.25; }
#guidex-root .gx-selfie-intake-card__meta{ font-size:12px; line-height:1.45; color:var(--gx-muted); max-width:26ch; }
#guidex-root .gx-selfie-memory-actions{ display:flex; justify-content:center; gap:16px; flex-wrap:wrap; }
#guidex-root .gx-selfie-memory-pill{ min-width:132px; min-height:36px; padding:8px 20px; border:1px solid #1f9f4a; border-radius:999px; background:#fff; color:#157a37; font:inherit; font-weight:700; cursor:pointer; box-shadow:0 1px 0 rgba(21,122,55,0.08); }
#guidex-root .gx-selfie-memory-pill:hover,
#guidex-root .gx-selfie-memory-pill:focus-visible{ background:#f4fff7; border-color:#157a37; outline:none; box-shadow:0 0 0 3px rgba(21,122,55,0.16); }
#guidex-root .gx-selfie-dimension-shell{ overflow:hidden; }
#guidex-root .gx-selfie-status-line{ margin-bottom:12px; font-size:13px; line-height:1.5; }
#guidex-root .gx-textarea-lg{ min-height:100px; width:100%; }
#guidex-root .gx-textarea-mono{ font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; }
#guidex-root .gx-meta-spaced{ margin-top:8px; }
#guidex-root .gx-meta-strong{ font-weight:700; }
#guidex-root .gx-meta-indent{ margin-left:24px; }
#guidex-root .gx-note-snippet{ font-size:11px; color:var(--gx-muted); margin-left:24px; margin-top:2px; font-style:italic; }
#guidex-root .gx-mt-none{ margin-top:0; }
#guidex-root .gx-check-row{ display:flex; align-items:flex-start; gap:6px; padding:4px 0; }
#guidex-root .gx-check-icon{ flex-shrink:0; width:18px; text-align:center; }
#guidex-root .gx-check-icon.is-done{ color:var(--gx-good); font-weight:800; }
#guidex-root .gx-check-icon.is-required,
#guidex-root .gx-check-label.is-required{ font-weight:700; }
#guidex-root .gx-check-icon.is-optional,
#guidex-root .gx-check-label.is-optional{ opacity:0.7; }
#guidex-root .gx-check-body{ flex:1; }
#guidex-root .gx-check-evidence{ flex-shrink:0; width:22px; height:22px; padding:0; margin:0; font-size:13px; line-height:20px; text-align:center; border:1px solid var(--gx-link); border-radius:50%; background:transparent; color:var(--gx-link); cursor:pointer; }
#guidex-root .gx-check-evidence-placeholder{ flex-shrink:0; width:22px; }
#guidex-root .gx-chip.gx-chip-muted,
#guidex-root .gx-chip.gx-chip-optional{ background:var(--gx-panel2); color:var(--gx-muted); border-color:var(--gx-border); }
#guidex-root .gx-row-good td{ background:rgba(21,128,61,0.08); }
#guidex-root .gx-school-summary{ margin-top:14px; padding-top:10px; border-top:1px solid var(--gx-border); }
#guidex-root .gx-school-title{ font-size:var(--gx-font-size-base); font-weight:700; color:var(--gx-ink); }
#guidex-root .gx-code-cell{ font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; white-space:nowrap; }
#guidex-root .gx-empty-cell{ text-align:center; padding:10px !important; color:var(--gx-muted) !important; font-size:var(--gx-font-size-sm); }
#guidex-root .gx-callout{ margin-top:8px; padding:8px 12px; background:var(--gx-panel2); border:1px solid var(--gx-border); border-radius:calc(var(--gx-radius) - 6px); font-size:var(--gx-font-size-sm); }
#guidex-root .gx-callout.gx-callout-info{ background:rgba(37,99,235,0.08); border-color:rgba(37,99,235,0.2); }
#guidex-root .gx-callout-label{ color:var(--gx-link); font-weight:600; }
#guidex-root .gx-callout-text{ color:var(--gx-ink); }
#guidex-root .gx-callout-meta{ color:var(--gx-muted); }
#guidex-root .gx-tabbar-sm{ display:flex; gap:4px; margin:16px 0 12px; flex-wrap:wrap; }
#guidex-root .gx-empty-state{ text-align:center; padding:24px; border:1px dashed var(--gx-border); border-radius:calc(var(--gx-radius) - 6px); }
#guidex-root .gx-empty-state-icon{ font-size:32px; line-height:1; }
#guidex-root .gx-inline-link{ display:inline-block; margin-top:10px; font-size:var(--gx-font-size-sm); color:var(--gx-link); }
#guidex-root .gx-subpanel{ margin-top:12px; padding:12px; background:var(--gx-panel2); border:1px solid var(--gx-border); border-radius:calc(var(--gx-radius) - 6px); }
#guidex-root .gx-banner{ display:flex; align-items:center; gap:8px; margin-bottom:12px; padding:10px 14px; background:rgba(37,99,235,0.08); border:1px solid rgba(37,99,235,0.15); border-radius:calc(var(--gx-radius) - 6px); }
#guidex-root .gx-banner-icon{ font-size:18px; }
#guidex-root .gx-banner-title{ font-weight:600; color:var(--gx-ink); font-size:15px; }
#guidex-root .gx-flex-grow{ flex:1; }
#guidex-root .gx-status-line{ font-size:11px; color:var(--gx-muted); margin-top:4px; }
#guidex-root .gx-status-line-good{ color:var(--gx-good); }
#guidex-root .gx-mb-xs{ margin-bottom:8px; }
#guidex-root .gx-mb-sm{ margin-bottom:10px; }
#guidex-root .gx-mt-md{ margin-top:14px; }
#guidex-root .gx-mt-lg{ margin-top:24px; }
#guidex-root .gx-muted-copy{ color:var(--gx-muted); font-size:var(--gx-font-size-sm); }
#guidex-root .gx-field-label{ display:block; font-weight:600; margin-bottom:4px; font-size:var(--gx-font-size-sm); }
#guidex-root .gx-pos-rel{ position:relative; }
#guidex-root .gx-form-row{ flex-wrap:wrap; gap:8px; margin-top:8px; }
#guidex-root .gx-form-grid-2{ display:grid; grid-template-columns:1fr 1fr; gap:8px 12px; }
#guidex-root .gx-stack-md{ display:flex; flex-direction:column; gap:12px; }
#guidex-root .gx-inline-action-row{ display:flex; gap:8px; flex-wrap:wrap; }
#guidex-root .gx-flex-1-200{ flex:1 1 200px; }
#guidex-root .gx-flex-1-180{ flex:1 1 180px; }
#guidex-root .gx-flex-1-320{ flex:1 1 320px; }
#guidex-root .gx-flex-1-280{ flex:1 1 280px; }
#guidex-root .gx-flex-1-250{ flex:1 1 250px; }
#guidex-root .gx-flex-0-200{ flex:0 1 200px; }
#guidex-root .gx-flex-0-180{ flex:0 1 180px; }
#guidex-root .gx-flex-0-160{ flex:0 1 160px; }
#guidex-root .gx-flex-0-140{ flex:0 1 140px; }
#guidex-root .gx-flex-0-120{ flex:0 1 120px; }
#guidex-root .gx-flex-0-90{ flex:0 1 90px; }
#guidex-root .gx-flex-0-80{ flex:0 1 80px; }
#guidex-root .gx-flex-0-70{ flex:0 1 70px; }
#guidex-root .gx-table-spaced{ width:100%; margin-top:12px; }
#guidex-root .gx-table-spaced-lg{ width:100%; margin-top:14px; }
#guidex-root .gx-empty-cell-lg{ padding:14px !important; }
#guidex-root .gx-note-tight{ margin-top:4px; font-size:11px; }
#guidex-root .gx-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;
}
#guidex-root .gx-btn{ display:inline-flex; align-items:center; justify-content:center; gap:8px; height:var(--gx-control-height); padding: 0 14px; border-radius: calc(var(--gx-radius) - 2px); border: 1px solid var(--gx-btn-border); background: var(--gx-btn-bg); color: var(--gx-btn-ink); font-weight: 700; font-size: var(--gx-font-size-sm); cursor:pointer; box-shadow: var(--gx-shadow); }
#guidex-root .gx-btn:hover{ filter:brightness(1.05); transform:translateY(-1px); }
#guidex-root .gx-btn-icon{ display:inline-flex; align-items:center; justify-content:center; line-height:1; }
#guidex-root .gx-btn-icon--help{ width:16px; height:16px; border-radius:999px; border:1px solid currentColor; font-size:11px; font-weight:800; }
#guidex-root .gx-btn.primary,
#guidex-root .gx-btn--fill{ background: var(--gx-btn-bg); border-color: var(--gx-btn-border); color: var(--gx-btn-ink); }
#guidex-root .gx-btn.secondary{ background: var(--gx-panel2); color: var(--gx-ink); border-color: var(--gx-border); box-shadow:none; }
#guidex-root .gx-btn.secondary:hover{ background: var(--gx-panel); }
#guidex-root .gx-btn.ghost{ background: var(--gx-panel2); color: var(--gx-ink); border-color: var(--gx-border); box-shadow:none; }
#guidex-root .gx-btn.ghost:hover{ background: var(--gx-panel); }
#guidex-root .gx-btn--outline{ background: var(--gx-panel); color: var(--gx-ink); border: 1px solid var(--gx-border); font-weight: 600; box-shadow:none; }
#guidex-root .gx-btn--outline:hover{ background: var(--gx-panel2); border-color: var(--gx-link); }
#guidex-root .gx-btn--muted{ background: var(--gx-panel2); color: var(--gx-muted); border-color: var(--gx-border); box-shadow:none; }
#guidex-root .gx-btn--sm{ height:var(--gx-control-height-sm); padding:0 12px; font-size:var(--gx-font-size-sm); border-radius:calc(var(--gx-radius) - 4px); }
#guidex-root .gx-btn--xs{ height:28px; padding:0 10px; font-size:var(--gx-font-size-xs); border-radius:999px; }
#guidex-root .gx-btn[disabled]{ background: var(--gx-panel2) !important; color: var(--gx-muted) !important; border-color: var(--gx-border) !important; box-shadow:none !important; cursor:not-allowed; opacity:0.8; }
#guidex-root .gx-ai-btn{ font-size: 48px; width: 64px; height: 64px; padding: 0; }
#guidex-root .gx-select, #guidex-root .gx-input{ height:var(--gx-control-height); width:100%; border-radius: calc(var(--gx-radius) - 2px); border:1px solid var(--gx-border); padding: 0 12px; background: var(--gx-panel); color: var(--gx-ink); }
#guidex-root textarea.gx-input, #guidex-root textarea.gx-select{ min-height:100px; height:auto; padding:12px; line-height:var(--gx-line-height-base); }
#guidex-root .gx-select:focus, #guidex-root .gx-input:focus{ border-color: var(--gx-accent); outline:none; box-shadow: 0 0 0 2px rgba(74,163,255,.15); }
#guidex-root .gx-select::placeholder, #guidex-root .gx-input::placeholder{ color: var(--gx-muted); opacity: 1; }
#guidex-root ::placeholder{ color: var(--gx-muted); opacity: 1; }
/* Dropdown option text — light bg + dark text for native OS dropdowns (accessibility) */
#guidex-root select option,
#guidex-root .gx-select option, #guidex-root .gx-input option,
#guidex-root select.gx-select option, #guidex-root select.gx-input option{
  background: #fff !important; color: #111 !important; font-size: 14px;
}
/* Typeahead suggestion panel */
#guidex-root .gx-suggest-panel{
  position:absolute; top:100%; left:0; right:0; z-index:200;
  max-height:240px; overflow-y:auto;
  background:#fff; border:1px solid #ccc; border-radius:8px;
  box-shadow:0 4px 16px rgba(0,0,0,.22); margin-top:2px;
}
#guidex-root .gx-suggest-panel .gx-suggest-item{
  padding:8px 12px; cursor:pointer; color:#111; font-size:13px;
  border-bottom:1px solid #eee; display:flex; flex-direction:column; gap:1px;
}
#guidex-root .gx-suggest-panel .gx-suggest-item:last-child{ border-bottom:none; }
#guidex-root .gx-suggest-panel .gx-suggest-item:hover,
#guidex-root .gx-suggest-panel .gx-suggest-item[aria-selected='true']{
  background:#e8f0fe;
}
#guidex-root .gx-suggest-item .gx-suggest-title{ font-weight:600; color:#111; }
#guidex-root .gx-suggest-item .gx-suggest-sub{ font-size:11px; color:#555; }
/* table styles */
#guidex-root .gx-table,
#guidex-root .gx-card table{ border-collapse:collapse; border-spacing:0; width:100%; font-size:var(--gx-font-size-sm); }
#guidex-root .gx-table th,
#guidex-root .gx-card table th{ text-align:left; font-weight:700; font-size:var(--gx-font-size-xs) !important; text-transform:uppercase; letter-spacing:.04em; color:var(--gx-muted) !important; padding:8px 10px !important; border-bottom:1px solid var(--gx-border) !important; background:transparent !important; }
#guidex-root .gx-table td,
#guidex-root .gx-card table td{ padding:8px 10px !important; border-bottom:1px solid var(--gx-border) !important; color:var(--gx-ink) !important; }
#guidex-root .gx-table tbody tr:hover td,
#guidex-root .gx-card table tbody tr:hover td{ background:transparent !important; }
#guidex-root .gx-table .gx-school-header td{ font-weight:700; background:var(--gx-panel2); color:var(--gx-ink) !important; font-size:var(--gx-font-size-sm); }
#guidex-root .gx-badge{ display:inline-flex; align-items:center; justify-content:center; min-width: 20px; height: 20px; padding: 0 6px; border-radius: 999px; background: var(--gx-accent2); color:#000; font-size: 12px; font-weight:700; }
#guidex-root .gx-badge-follow{ font-size:10px; }
#guidex-root .gx-navlink{ display:inline-flex; align-items:center; gap: 8px; text-decoration:none; color: var(--gx-ink); }
#guidex-root .gx-chip{ display:inline-flex; gap:6px; align-items:center; border:1px solid var(--gx-border); border-radius:999px; padding:6px 10px; font-size: var(--gx-font-size-xs); background: var(--gx-panel2); color: var(--gx-ink); }
#guidex-root .gx-chip.gx-chip-pending{ background:#8a8f98; color:#fff; border-color:#6b7280; }
#guidex-root .gx-chip.gx-chip-active{ background:#16a34a; color:#fff; border-color:#15803d; }
#guidex-root .gx-chip.gx-chip-done{ background:#2563eb; color:#fff; border-color:#1d4ed8; }
#guidex-root .gx-modal-backdrop{ position: fixed; inset: 0; background: rgba(0,0,0,0.45); display:flex; align-items:flex-end; justify-content:center; padding: 12px; z-index: 9999; }
#guidex-root .gx-modal{ width: min(860px, 100%); background: var(--gx-panel); border-radius: calc(var(--gx-radius) + 2px); border: 1px solid var(--gx-border); padding: 12px; box-shadow: var(--gx-shadow); }
#guidex-root .gx-surface-contract{ color:var(--gx-ink); }
#guidex-root .gx-surface-contract--popup{ align-items:center; }
#guidex-root .gx-surface-contract--dialog{ align-items:center; }
#guidex-root .gx-surface-contract--conversation{ display:flex; flex-direction:column; gap:12px; }
#guidex-root .gx-surface-shell{ position:relative; }
#guidex-root .gx-surface-shell__title-group{ min-width:0; display:flex; flex-direction:column; gap:4px; }
#guidex-root .gx-surface-shell__helper{ margin:0; padding:0 20px; font-size:13px; line-height:1.5; color:var(--gx-muted); }
#guidex-root .gx-screen-surface-contract{ display:flex; flex-direction:column; gap:16px; }
#guidex-root .gx-screen-surface-contract__header{ display:flex; justify-content:space-between; align-items:flex-start; gap:12px; flex-wrap:wrap; }
#guidex-root .gx-screen-surface-contract__title{ margin:0; font-size:clamp(1.375rem, 2vw, 1.75rem); font-weight:800; color:var(--gx-ink); }
#guidex-root .gx-screen-surface-contract__subtitle{ margin:4px 0 0; font-size:13px; line-height:1.5; color:var(--gx-muted); }
#guidex-root .gx-screen-surface-contract__actions{ display:flex; gap:10px; flex-wrap:wrap; align-items:center; }
#guidex-root .gx-screen-surface-contract__actions--secondary{ justify-content:flex-start; }
#guidex-root .gx-surface-dialog__action.gx-btn--danger{ background:var(--gx-bad); border-color:var(--gx-bad); color:#fff; }
#guidex-root .gx-conversation-surface{ border:1px solid var(--gx-border); border-radius:16px; background:var(--gx-panel); padding:16px; }
#guidex-root .gx-conversation-surface__header{ display:flex; flex-direction:column; gap:4px; }
#guidex-root .gx-conversation-surface__title{ margin:0; font-size:18px; font-weight:800; color:var(--gx-ink); }
#guidex-root .gx-conversation-surface__subtitle{ margin:0; font-size:13px; line-height:1.5; color:var(--gx-muted); }
#guidex-root .gx-conversation-surface__log{ min-height:180px; border:1px solid var(--gx-border); border-radius:12px; background:var(--gx-panel2); padding:12px; overflow:auto; }
#guidex-root .gx-conversation-surface__composer{ display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
#guidex-root .gx-conversation-surface__input{ flex:1 1 220px; }
#guidex-root .gx-conversation-surface__submit{ flex:0 0 auto; }
#guidex-root .gx-sheet-modal{ width:min(580px, 100%); max-height:90vh; padding:0; overflow:auto; color:var(--gx-ink); background:var(--gx-panel); border:1px solid var(--gx-border); border-radius:16px; box-shadow:var(--gx-shadow); }
#guidex-root .gx-sheet-modal--wide{ width:min(640px, 100%); }
#guidex-root .gx-sheet-modal__header{ display:flex; justify-content:space-between; align-items:flex-start; gap:12px; padding:18px 20px 14px; border-bottom:1px solid var(--gx-border); }
#guidex-root .gx-sheet-modal__title{ margin:0; font-size:20px; font-weight:800; color:var(--gx-ink); }
#guidex-root .gx-sheet-modal__subtitle{ margin:4px 0 0; font-size:12px; color:var(--gx-muted); line-height:1.5; }
#guidex-root .gx-sheet-modal__body{ padding:18px 20px 20px; display:flex; flex-direction:column; gap:16px; }
#guidex-root .gx-sheet-modal__footer{ display:flex; gap:10px; padding:16px 20px 20px; border-top:1px solid var(--gx-border); justify-content:flex-end; align-items:center; flex-wrap:wrap; }
#guidex-root .gx-sheet-modal__panel{ padding:12px 14px; background:var(--gx-panel2); border:1px solid var(--gx-border); border-radius:12px; }
#guidex-root .gx-sheet-modal__row{ display:flex; gap:8px; padding:6px 0; border-bottom:1px solid var(--gx-border); }
#guidex-root .gx-sheet-modal__row:last-child{ border-bottom:none; }
#guidex-root .gx-sheet-modal__label{ min-width:120px; font-weight:600; color:var(--gx-muted); font-size:12px; }
#guidex-root .gx-sheet-modal__value{ flex:1; font-size:13px; color:var(--gx-ink); }
#guidex-root .gx-sheet-modal__chip{ display:inline-flex; align-items:center; gap:6px; padding:2px 10px; border-radius:999px; background:var(--gx-panel); border:1px solid var(--gx-border); font-size:12px; color:var(--gx-ink); }
#guidex-root .gx-sheet-modal__close{ flex-shrink:0; }
#guidex-root .gx-sheet-modal__link{ margin-right:auto; text-decoration:none; display:inline-flex; align-items:center; justify-content:center; }
#guidex-root .gx-edit-profile-modal{ width:min(560px, 100%); max-width:560px; }
#guidex-root .gx-selfe-profile-modal{ width:min(1120px, calc(100% - 24px)); max-width:1120px; }
#guidex-root .gx-ep-section{ display:flex; flex-direction:column; gap:10px; }
#guidex-root .gx-ep-section__header{ font-size:11px; text-transform:uppercase; letter-spacing:0.08em; color:var(--gx-muted); font-weight:800; }
#guidex-root .gx-ep-upload-grid{ display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:10px; }
#guidex-root .gx-ep-upload-grid .gx-btn{ justify-content:center; min-height:42px; }
#guidex-root .gx-ep-upload-status{ font-size:12px; color:var(--gx-good); line-height:1.5; }
#guidex-root .gx-ep-field-label{ display:block; font-size:11px; text-transform:uppercase; letter-spacing:0.06em; color:var(--gx-muted); font-weight:700; }
#guidex-root .gx-ep-input{ width:100%; box-sizing:border-box; font-size:14px; padding:10px 14px; border-radius:10px; }
#guidex-root .gx-ep-inline-copy{ font-size:13px; color:var(--gx-muted); line-height:1.5; }
#guidex-root .gx-ep-aspiration-row{ display:flex; align-items:flex-start; justify-content:space-between; gap:12px; flex-wrap:wrap; }
#guidex-root .gx-ep-aspiration-summary{ flex:1 1 260px; min-width:0; font-size:13px; font-weight:600; color:var(--gx-ink); line-height:1.5; padding:10px 12px; border-radius:10px; border:1px solid var(--gx-border); background:var(--gx-panel); }
#guidex-root .gx-career-compass-modal{ width:min(720px, calc(100% - 24px)); }
#guidex-root .gx-career-compass__eyebrow{ font-size:11px; font-weight:800; letter-spacing:0.08em; text-transform:uppercase; color:var(--gx-accent); }
#guidex-root .gx-career-compass__tabs{ display:flex; gap:8px; flex-wrap:wrap; }
#guidex-root .gx-career-compass__tab{ appearance:none; border:1px solid var(--gx-border); background:transparent; color:var(--gx-ink); min-height:40px; padding:8px 14px; border-radius:999px; font-size:13px; font-weight:700; cursor:pointer; }
#guidex-root .gx-career-compass__tab.is-active{ background:var(--gx-accent); border-color:var(--gx-accent); color:var(--gx-btn-ink); }
#guidex-root .gx-career-compass__tab:focus-visible{ outline:none; box-shadow:0 0 0 3px var(--gx-focus-ring); }
#guidex-root .gx-career-compass__hint{ display:flex; flex-direction:column; gap:4px; font-size:13px; line-height:1.5; color:var(--gx-muted); }
#guidex-root .gx-career-compass__hint-note{ font-size:11px; font-style:italic; }
#guidex-root .gx-career-compass__grid{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:10px; }
#guidex-root .gx-career-compass__tile{ appearance:none; width:100%; text-align:left; border:1.5px solid var(--gx-border); background:var(--gx-panel2); color:var(--gx-ink); border-radius:12px; padding:12px; cursor:pointer; display:flex; flex-direction:column; gap:6px; min-height:128px; }
#guidex-root .gx-career-compass__tile.is-selected{ border-color:var(--gx-accent); background:rgba(41,128,185,0.12); }
#guidex-root .gx-career-compass__tile:focus-visible{ outline:none; box-shadow:0 0 0 3px var(--gx-focus-ring); }
#guidex-root .gx-career-compass__tile-title{ font-size:14px; font-weight:800; color:var(--gx-ink); }
#guidex-root .gx-career-compass__tile-copy{ font-size:12px; line-height:1.45; color:var(--gx-muted); }
#guidex-root .gx-career-compass__tile-example{ font-size:11px; line-height:1.4; color:var(--gx-muted); font-style:italic; margin-top:auto; }
#guidex-root .gx-career-compass__results{ display:flex; flex-direction:column; gap:10px; }
#guidex-root .gx-career-compass__results-title{ font-size:12px; font-weight:800; letter-spacing:0.08em; text-transform:uppercase; color:var(--gx-muted); }
#guidex-root .gx-career-compass__result-list{ display:flex; flex-direction:column; gap:10px; }
#guidex-root .gx-career-compass__result-card{ display:flex; justify-content:space-between; align-items:flex-start; gap:14px; border:1px solid var(--gx-border); border-radius:12px; padding:14px; background:var(--gx-panel2); }
#guidex-root .gx-career-compass__result-main{ flex:1 1 auto; min-width:0; display:flex; flex-direction:column; gap:6px; }
#guidex-root .gx-career-compass__result-name{ margin:0; font-size:15px; font-weight:800; color:var(--gx-ink); }
#guidex-root .gx-career-compass__result-copy{ margin:0; font-size:12px; line-height:1.45; color:var(--gx-muted); }
#guidex-root .gx-career-compass__chips{ display:flex; gap:6px; flex-wrap:wrap; }
#guidex-root .gx-career-compass__chip{ display:inline-flex; align-items:center; padding:2px 8px; border-radius:999px; font-size:11px; font-weight:700; }
#guidex-root .gx-career-compass__chip.is-salary{ background:#e8f4fd; color:var(--gx-accent); }
#guidex-root .gx-career-compass__chip.is-growth{ background:#eafaf1; color:var(--gx-good); }
#guidex-root .gx-career-compass__chip.is-education{ background:#fdf3e3; color:#7d4e00; }
#guidex-root .gx-career-compass__result-actions{ display:flex; flex-direction:column; align-items:flex-end; gap:8px; flex:0 0 auto; }
#guidex-root .gx-career-compass__result-cta{ white-space:nowrap; }
#guidex-root .gx-career-compass__onet-link{ font-size:12px; font-weight:700; color:var(--gx-accent); text-decoration:none; }
#guidex-root .gx-career-compass__empty{ text-align:center; color:var(--gx-muted); padding:16px 0; }
#guidex-root .gx-consent-modal{ background:var(--gx-panel); opacity:1; box-shadow: var(--gx-shadow); }
#guidex-root .gx-consent-modal .gx-card{ background:var(--gx-panel2); border-color: var(--gx-border); }
#guidex-root .gx-consent-modal .gx-meta{ color:var(--gx-muted); }
#guidex-root .gx-modal header{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom: 8px; }
#guidex-root .gx-kv{ display:grid; grid-template-columns: 140px 1fr; gap: 8px 10px; font-size: 13px; }
#guidex-root .gx-kv div:nth-child(odd){ opacity:0.75; }
#guidex-root .gx-check{ display:flex; gap:10px; align-items:flex-start; padding: 10px 0; border-bottom:1px solid var(--gx-border); }
#guidex-root .gx-check:last-child{ border-bottom:none; }
#guidex-root .gx-drawer{ position: fixed; top:0; right:0; height: var(--gx-host-vh, 100dvh); width: min(420px, 92vw); background: var(--gx-panel); border-left:1px solid var(--gx-border); z-index: 10000; display:flex; flex-direction:column; }
#guidex-root .gx-drawer header{ padding: 12px; border-bottom:1px solid var(--gx-border); display:flex; justify-content:space-between; align-items:center; }
#guidex-root .gx-drawer .gx-drawer-body{ padding: 12px; overflow:auto; flex:1; }
#guidex-root .gx-disclosure{ border:1px solid var(--gx-border); border-radius: calc(var(--gx-radius) - 2px); padding: 10px; background: var(--gx-panel); font-size: var(--gx-font-size-xs); line-height: 1.4; }
#guidex-root .gx-tabs{ display:flex; gap: 18px; align-items:center; padding: 0 2px; flex-wrap:wrap; }
#guidex-root .gx-tab{ appearance:none; background:transparent; border:none; padding: 10px 2px; font-size:calc(var(--gx-font-size-base) + 2px); color: var(--gx-ink); cursor:pointer; position:relative; font-weight:600; text-decoration:none; }
#guidex-root .gx-tab[aria-current='page']{ color: var(--gx-ink); }
#guidex-root .gx-tab[aria-current='page']::after{ content:""; position:absolute; left:0; right:0; bottom:-1px; height:3px; border-radius:3px; background: var(--gx-accent); }
#guidex-root .gx-tab:hover,
#guidex-root .gx-tab:focus{ background:transparent !important; color:var(--gx-accent) !important; outline:2px solid var(--gx-accent); outline-offset:2px; border-radius:4px; }
#guidex-root .gx-following-pathway-line{ display:grid; grid-template-columns:auto minmax(0, 1fr); align-items:baseline; column-gap:12px; row-gap:4px; padding:6px 2px 0; }
#guidex-root .gx-following-pathway-label{ font-size:var(--gx-font-size-sm); font-weight:700; color:var(--gx-muted); text-transform:uppercase; letter-spacing:0.04em; }
#guidex-root .gx-following-pathway-title{ min-width:0; font-size:var(--gx-font-size-xl); line-height:1.2; font-weight:800; color:var(--gx-ink); overflow-wrap:anywhere; }
#guidex-root .gx-tab-with-icon{ display:inline-flex; align-items:center; gap:4px; }
#guidex-root .gx-tab-emoji{ font-size:16px; line-height:1; display:inline-flex; align-items:center; justify-content:center; }
#guidex-root .gx-tab-icon{ height:18px; filter:invert(1); opacity:0.85; }
#guidex-root .gx-chatbox{ border:1px solid var(--gx-border); border-radius:calc(var(--gx-radius) - 2px); padding:12px; background: var(--gx-panel2); min-height:120px; display:flex; flex-direction:column; }
#guidex-root .gx-chatlog{ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; font-size:var(--gx-font-size-xs); line-height:1.35; color: var(--gx-ink); min-height:86px; white-space:pre-wrap; }
#guidex-root .gx-chatinput-row{ display:flex; gap:10px; align-items:center; border-top:1px solid rgba(255,255,255,.12); padding-top:10px; margin-top:10px; }
#guidex-root .gx-chatinput-row-grow{ margin-top:auto; }
#guidex-root .gx-chatinput-row .gx-input{ height:38px; border-radius:10px; background: var(--gx-panel); }
#guidex-root .gx-chat-drawer__input.gx-chatinput-row{ margin-top:0; padding-top:8px; padding-bottom:10px; border-top:none; border-bottom:1px solid var(--gx-border); }
#guidex-root .gx-chat-drawer__log{ padding-top:12px; }
#guidex-root .gx-send{ width:46px; height:38px; border-radius:10px; border:1px solid var(--gx-accent); background: var(--gx-accent); color:var(--gx-btn-ink); cursor:pointer; display:grid; place-items:center; }
#guidex-root .gx-follow-card{ border-radius:16px; background: var(--gx-panel2); border:1px solid var(--gx-border); padding:14px; }
#guidex-root .gx-follow-title{ font-weight:650; color: var(--gx-ink); margin-bottom:10px; }
#guidex-root .gx-follow-actions{ display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-top:12px; }
#guidex-root .gx-home-intro-card{ margin-top:0; }
#guidex-root .gx-home-mobile-atlas-shell{ padding:12px; }
#guidex-root .gx-home-mobile-atlas{ width:100%; display:flex; align-items:center; gap:12px; border:none; border-radius:14px; padding:14px; background:linear-gradient(135deg, rgba(11,58,104,0.12), rgba(37,99,235,0.08)); color:var(--gx-ink); text-align:left; cursor:pointer; }
#guidex-root .gx-home-mobile-atlas:focus-visible{ outline:none; box-shadow:0 0 0 3px var(--gx-focus-ring); }
#guidex-root .gx-home-mobile-atlas__media{ width:48px; height:48px; display:inline-flex; align-items:center; justify-content:center; border-radius:999px; background:var(--gx-panel); border:1px solid var(--gx-border); flex-shrink:0; }
#guidex-root .gx-home-mobile-atlas__body{ min-width:0; display:flex; flex-direction:column; gap:2px; flex:1; }
#guidex-root .gx-home-mobile-atlas__eyebrow{ font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:0.05em; color:var(--gx-muted); }
#guidex-root .gx-home-mobile-atlas__title{ font-size:15px; font-weight:800; color:var(--gx-ink); }
#guidex-root .gx-home-mobile-atlas__copy{ font-size:13px; line-height:1.4; color:var(--gx-muted); }
#guidex-root .gx-home-mobile-atlas__cta{ font-size:12px; font-weight:800; color:var(--gx-accent); flex-shrink:0; }
#guidex-root .gx-home-panel-copy{ margin:0 0 12px; line-height:1.5; }
#guidex-root .gx-home-pathway-card{ display:flex; flex-direction:column; gap:12px; }
#guidex-root .gx-home-pathway-select{ min-height:var(--gx-control-height); }
#guidex-root .gx-home-upload-group{ width:100%; justify-content:flex-start; }
#guidex-root .gx-home-upload-group .gx-btn{ flex:0 1 auto; }
#guidex-root .gx-home-open-pathway-btn:disabled{ opacity:0.6; cursor:not-allowed; }
#guidex-root .gx-home-pathway-status-active{ color:var(--gx-warn); }
#guidex-root .gx-home-action-stack > *{ flex:1 1 220px; }
#guidex-root .gx-home-action-stack .gx-btn{ min-width:160px; }
#guidex-root .gx-search-shell{ padding-bottom:8px; }
#guidex-root .gx-compass-active-wrap{ display:inline-flex; align-items:center; gap:2px; }
#guidex-root .gx-compass-active-wrap .gx-btn{ border-radius:999px 0 0 999px; }
#guidex-root .gx-compass-active-wrap .gx-btn.ghost{ border-radius:0 999px 999px 0; min-width:28px; padding:0 8px; font-size:16px; line-height:1; }
#guidex-root .gx-search-header{ display:flex; align-items:flex-start; justify-content:space-between; gap:12px; flex-wrap:wrap; }
#guidex-root .gx-search-title-block{ flex:1 1 420px; min-width:0; display:flex; flex-direction:column; gap:8px; }
#guidex-root .gx-search-tab-group{ display:inline-flex; gap:8px; flex-wrap:wrap; }
#guidex-root .gx-search-tab{ appearance:none; border:1px solid var(--gx-border); background:var(--gx-panel2); color:var(--gx-ink); min-height:40px; padding:8px 14px; border-radius:999px; font-size:14px; font-weight:700; cursor:pointer; }
#guidex-root .gx-search-tab[aria-pressed='true']{ background:var(--gx-accent); border-color:var(--gx-accent); color:var(--gx-btn-ink); }
#guidex-root .gx-search-tab:focus-visible{ outline:none; box-shadow:0 0 0 3px var(--gx-focus-ring); }
#guidex-root .gx-search-filter-grid{ margin-top:10px; }
#guidex-root .gx-search-filter-actions{ display:flex; gap:8px; flex-wrap:wrap; margin-top:12px; }
#guidex-root .gx-search-filter-actions .gx-btn{ flex:1 1 180px; }
#guidex-root .gx-search-summary{ margin-top:10px; }
#guidex-root .gx-search-panel-actions{ margin-top:12px; }
#guidex-root .gx-search-panel-title{ margin:0 0 8px; }
#guidex-root .gx-search-panel-body{ margin:0 0 14px; line-height:1.6; }
#guidex-root .gx-search-detail-note{ font-size:11px; opacity:0.6; }
#guidex-root .gx-search-accent-link{ color:var(--gx-accent); }
#guidex-root .gx-search-empty-body{ margin:0 0 16px; }
#guidex-root .gx-search-location-row,
#guidex-root .gx-search-work-filter{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
#guidex-root .gx-search-location-card{ padding:12px 16px; }
#guidex-root .gx-search-location-label{ font-size:14px; font-weight:600; }
#guidex-root .gx-search-location-row .gx-select{ flex:0 1 220px; }
#guidex-root .gx-search-location-row .gx-input{ flex:0 1 140px; }
#guidex-root .gx-search-work-filter .gx-input{ flex:1 1 280px; }
#guidex-root .gx-search-profile-banner{ display:flex; justify-content:space-between; align-items:center; gap:8px; }
#guidex-root .gx-search-next-step-title{ font-weight:800; }
#guidex-root .gx-search-next-step-body{ margin-top:6px; }
#guidex-root .gx-search-next-step-actions{ margin-top:10px; }
#guidex-root .gx-search-heading{ margin:0; }
#guidex-root .gx-search-purpose{ margin:6px 0 0; }
#guidex-root .gx-search-header-actions{ display:flex; gap:6px; align-items:center; flex-wrap:wrap; }
#guidex-root .gx-search-result-card{ padding:12px 14px; margin-bottom:10px; }
#guidex-root .gx-search-result-card--following{ border-left:4px solid var(--gx-good); }
#guidex-root .gx-search-following-badge{ display:inline-block; background:var(--gx-good); color:white; padding:2px 10px; border-radius:4px; font-size:12px; font-weight:700; margin-bottom:4px; }
#guidex-root .gx-search-result-head{ display:flex; justify-content:space-between; gap:10px; align-items:flex-start; }
#guidex-root .gx-search-result-main{ flex:1; min-width:0; }
#guidex-root .gx-search-result-title{ font-weight:800; font-size:15px; line-height:1.3; margin-bottom:4px; }
#guidex-root .gx-search-result-badges{ display:flex; gap:4px; flex-wrap:wrap; align-items:center; margin-bottom:4px; }
#guidex-root .gx-search-result-flow{ font-size:12px; }
#guidex-root .gx-search-flow-line{ font-size:12px; color:var(--gx-ink); }
#guidex-root .gx-search-demand-badge{ color:white; padding:1px 8px; border-radius:4px; font-size:11px; font-weight:700; margin-right:4px; }
#guidex-root .gx-search-demand-badge-high{ background:var(--gx-bad); }
#guidex-root .gx-search-demand-badge-medium{ background:var(--gx-warn); }
#guidex-root .gx-search-match-badge{ font-size:11px; font-weight:700; margin-right:6px; }
#guidex-root .gx-search-match-badge-strong{ color:var(--gx-good); }
#guidex-root .gx-search-match-badge-high{ color:var(--gx-accent); }
#guidex-root .gx-search-match-badge-moderate{ color:var(--gx-warn); }
#guidex-root .gx-search-match-badge-low{ color:var(--gx-bad); }
#guidex-root .gx-search-match-badge-weak{ color:var(--gx-muted); }
#guidex-root .gx-search-occ-group{ display:inline-flex; align-items:center; gap:3px; background:var(--gx-accent); color:#a9ccec; padding:1px 8px; border-radius:4px; font-size:11px; font-weight:600; border:none; cursor:pointer; }
#guidex-root .gx-search-result-actions{ display:flex; flex-direction:column; gap:6px; flex-shrink:0; min-width:120px; align-items:stretch; text-align:center; }
#guidex-root .gx-search-result-actions .gx-btn{ width:100%; justify-content:center; }
#guidex-root .gx-search-why{ margin-top:8px; border-top:1px solid var(--gx-border); padding-top:10px; }
#guidex-root .gx-search-why-title{ font-weight:700; font-size:13px; margin-bottom:6px; }
#guidex-root .gx-search-why-list{ margin:0 0 0 16px; padding:0; font-size:0.88rem; line-height:1.6; }
#guidex-root .gx-search-subpanel{ margin-bottom:14px; }
#guidex-root .gx-search-subpanel-spaced{ margin-bottom:14px; }
#guidex-root .gx-search-subpanel-title{ margin:0 0 12px; font-size:15px; font-weight:700; }
#guidex-root .gx-search-entity-submeta{ font-size:11px; color:var(--gx-muted); }
#guidex-root .gx-search-meta-warn{ color:var(--gx-warn); }
#guidex-root .gx-search-meta-top6{ margin-top:6px; }
#guidex-root .gx-search-meta-top4{ margin-top:4px; }
#guidex-root .gx-search-feature-panel{ margin-top:10px; }
#guidex-root .gx-search-feature-panel-title{ font-size:16px; }
#guidex-root .gx-search-panel-actions-top{ margin-top:10px; }
#guidex-root .gx-search-work-intro{ margin-bottom:12px; }
#guidex-root .gx-search-work-match-badge{ background:var(--gx-accent); color:#fff; font-size:11px; padding:2px 8px; border-radius:10px; margin-left:8px; }
#guidex-root .gx-search-work-badge{ display:inline-flex; align-items:center; gap:3px; color:white; padding:1px 8px; border-radius:4px; font-size:11px; font-weight:700; }
#guidex-root .gx-search-work-badge-high{ background:var(--gx-bad); }
#guidex-root .gx-search-work-badge-medium{ background:var(--gx-warn); }
#guidex-root .gx-search-work-onet{ display:inline-flex; align-items:center; gap:3px; background:var(--gx-accent); color:white; padding:1px 8px; border-radius:4px; font-size:11px; font-weight:600; border:none; cursor:pointer; }
#guidex-root .gx-search-work-card{ padding:0; overflow:hidden; }
#guidex-root .gx-search-work-card-body{ padding:16px 18px 12px; }
#guidex-root .gx-search-work-card-head{ display:flex; justify-content:space-between; align-items:flex-start; gap:12px; flex-wrap:wrap; }
#guidex-root .gx-search-work-main{ flex:1; min-width:200px; }
#guidex-root .gx-search-work-title{ margin:0; font-size:17px; line-height:1.3; }
#guidex-root .gx-search-work-badges{ margin-top:6px; display:flex; flex-wrap:wrap; gap:4px; align-items:center; }
#guidex-root .gx-search-work-desc{ margin:8px 0 0; font-size:13px; line-height:1.5; color:var(--gx-fg); opacity:0.85; }
#guidex-root .gx-search-work-actions{ display:flex; flex-direction:column; gap:6px; flex-shrink:0; min-width:140px; }
#guidex-root .gx-search-work-action{ text-align:center; }
#guidex-root .gx-search-work-stats{ display:grid; grid-template-columns:repeat(auto-fit,minmax(130px,1fr)); gap:1px; background:rgba(255,255,255,0.06); border-top:1px solid rgba(255,255,255,0.08); }
#guidex-root .gx-search-work-stat{ padding:10px 14px; background:var(--gx-bg); }
#guidex-root .gx-search-stat-label{ font-size:10px; text-transform:uppercase; letter-spacing:0.05em; color:var(--gx-muted); font-weight:600; }
#guidex-root .gx-search-stat-value{ font-size:13px; font-weight:600; margin-top:3px; }
#guidex-root .gx-search-stat-value-good{ color:var(--gx-good); }
#guidex-root .gx-search-stat-value-ink{ color:var(--gx-fg); }
#guidex-root .gx-search-stat-value-accent{ color:var(--gx-accent); }
#guidex-root .gx-search-stat-value-warn{ color:var(--gx-warn); }
#guidex-root .gx-search-stat-value-bad{ color:var(--gx-bad); }
/* S1 — mobile reflection gate (early-return panel shown when profile unconfirmed on phone) */
#guidex-root .gx-search-mobile-reflection-first{ max-width:560px; margin:0 auto; padding:24px 18px; }
/* S1 — entity tile cards (EX-4 institution tiles + future program/credential tiles) */
#guidex-root .gx-cards-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:14px; }
#guidex-root .gx-entity-tile{ padding:0; display:flex; flex-direction:column; cursor:pointer; }
#guidex-root .gx-entity-tile:hover,
#guidex-root .gx-entity-tile:focus-visible{ border-color:var(--gx-accent); box-shadow:0 0 0 3px var(--gx-focus-ring); }
#guidex-root .gx-entity-tile:focus-visible{ outline:none; box-shadow:0 0 0 3px var(--gx-focus-ring); }
#guidex-root .gx-entity-tile-body{ flex:1; padding:14px 16px; }
#guidex-root .gx-entity-tile-name{ margin:0 0 4px; font-size:15px; font-weight:800; line-height:1.25; color:var(--gx-ink); }
#guidex-root .gx-entity-tile-meta{ font-size:12px; color:var(--gx-muted); line-height:1.4; }
#guidex-root .gx-entity-tile-stat{ margin-top:8px; font-size:13px; color:var(--gx-ink); }
#guidex-root .gx-entity-tile-footer{ display:flex; gap:6px; padding:8px; border-top:1px solid rgba(255,255,255,0.08); }
#guidex-root .gx-entity-tile-footer .gx-btn{ flex:1; min-width:0; justify-content:center; }
#guidex-root .gx-entity-facts-surface .gx-sheet-modal__body{ display:flex; flex-direction:column; gap:10px; }
#guidex-root .gx-entity-facts{ display:flex; flex-direction:column; gap:10px; }
#guidex-root .gx-entity-facts-empty{ margin:0; }
#guidex-root .gx-entity-facts-section{ padding:10px 12px; border:1px solid var(--gx-border); border-radius:12px; background:var(--gx-panel2); }
#guidex-root .gx-entity-facts-section-title{ margin:0 0 8px; font-size:14px; font-weight:800; color:var(--gx-ink); }
#guidex-root .gx-entity-facts-rows{ display:flex; flex-direction:column; gap:8px; }
#guidex-root .gx-entity-facts-row{ display:flex; justify-content:space-between; gap:10px; align-items:flex-start; }
#guidex-root .gx-entity-facts-row--list{ display:block; }
#guidex-root .gx-entity-facts-label{ font-size:12px; color:var(--gx-muted); font-weight:700; }
#guidex-root .gx-entity-facts-value{ font-size:13px; color:var(--gx-ink); text-align:right; }
#guidex-root .gx-entity-facts-note{ font-size:11px; color:var(--gx-muted); }
#guidex-root .gx-entity-facts-text{ font-size:13px; color:var(--gx-ink); line-height:1.5; }
#guidex-root .gx-entity-facts-divider{ border:0; border-top:1px solid var(--gx-border); margin:6px 0; }
#guidex-root .gx-entity-facts-list{ margin:6px 0 0 18px; padding:0; display:flex; flex-direction:column; gap:4px; }
#guidex-root .gx-entity-facts-list-item{ font-size:13px; color:var(--gx-ink); }
#guidex-root .gx-entity-facts-chips{ display:flex; flex-wrap:wrap; gap:6px; margin-top:8px; }
#guidex-root .gx-entity-facts-chip{ display:inline-flex; padding:2px 8px; border-radius:999px; background:var(--gx-panel); border:1px solid var(--gx-border); font-size:11px; color:var(--gx-muted); }
#guidex-root .gx-entity-facts-actions{ display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; }
#guidex-root .gx-entity-facts-actions .gx-btn{ min-height:40px; }
#guidex-root .gx-entity-facts-actions .gx-btn:hover,
#guidex-root .gx-entity-facts-actions .gx-btn:focus-visible{ border-color:var(--gx-accent); box-shadow:0 0 0 2px var(--gx-focus-ring); }
/* S1 — narrow-phone card stacking: actions move below title at ≤600px */
@media (max-width: 600px) {
  #guidex-root .gx-search-result-head{ flex-wrap:wrap; }
  #guidex-root .gx-search-result-actions{ flex-direction:row; flex-shrink:1; min-width:0; width:100%; align-items:stretch; }
  #guidex-root .gx-search-result-actions .gx-btn{ flex:1; width:auto; }
  #guidex-root .gx-search-tab{ font-size:12px; padding:6px 10px; min-height:36px; }
  #guidex-root .gx-search-location-row{ flex-direction:column; align-items:stretch; }
  #guidex-root .gx-search-location-row .gx-select,
  #guidex-root .gx-search-location-row .gx-input{ flex:1 1 auto; width:100%; }
  #guidex-root .gx-cards-grid{ grid-template-columns:1fr; }
}
#guidex-root .gx-link-inline-flex{ text-decoration:none; display:inline-flex; align-items:center; }
#guidex-root .gx-reflection-cta{ gap:10px; }
#guidex-root .gx-mirror-icon-lg{ height:44px; filter:invert(1); opacity:0.85; }
#guidex-root .gx-card-center-lg{ text-align:center; padding:48px 24px; }
#guidex-root .gx-mirror-empty-logo{ height:64px; filter:invert(1); opacity:0.7; margin-bottom:16px; }
#guidex-root .gx-reflection-gate-title{ margin-bottom:8px; }
#guidex-root .gx-reflection-gate-copy{ font-size:15px; max-width:480px; margin:0 auto 20px; }
#guidex-root .gx-upload-group{ display:flex; align-items:center; gap:8px; padding:8px 12px; border:1px solid var(--gx-border); border-radius:10px; background:var(--gx-panel); flex-wrap:wrap; }
#guidex-root .gx-upload-group-spaced{ margin-top:12px; }
#guidex-root .gx-upload-status{ font-size:12px; color:var(--gx-muted); }
#guidex-root .gx-suggest-empty{ padding:10px 12px; color:var(--gx-muted); font-size:13px; }
#guidex-root .gx-btn.big{ height:56px; border-radius:14px; padding:0 18px; font-size:18px; }
#guidex-root .gx-btn.red{ background: var(--gx-accent); border-color: var(--gx-accent); box-shadow:none; color:var(--gx-btn-ink); }
#guidex-root .gx-entry-title{ margin-bottom:12px; }
#guidex-root .gx-entry-cards{ display:grid; grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)); align-items:stretch; gap:16px; max-width:1040px; margin:0 auto; }
#guidex-root .gx-entry-card-wrap{ min-width:0; max-width:none; color:inherit; text-decoration:none; }
#guidex-root .gx-entry-card-link{ display:block; color:inherit; text-decoration:none; appearance:none; background:none; border:none; padding:0; margin:0; font:inherit; cursor:pointer; text-align:inherit; width:100%; }
#guidex-root .gx-entry-card{ display:flex; flex-direction:column; align-items:center; text-align:center; gap:10px; min-height:220px; height:100%; padding:18px 16px; border:1px solid var(--gx-border); border-radius:10px; background:var(--gx-panel); transition:border-color .15s,box-shadow .15s; }
#guidex-root .gx-entry-card:hover{ border-color:var(--gx-accent); box-shadow:0 2px 8px rgba(37,99,235,0.12); }
#guidex-root .gx-entry-card-link:focus-visible{ outline:none; }
#guidex-root .gx-entry-card-link:focus-visible .gx-entry-card{ border-color:var(--gx-accent); box-shadow:0 0 0 3px var(--gx-focus-ring); }
#guidex-root .gx-entry-card--selected{ border-color:var(--gx-accent); background:rgba(37,99,235,0.06); }
#guidex-root .gx-entry-card-icon{ width:64px; height:64px; object-fit:contain; border-radius:999px; background:#fff; padding:8px; }
#guidex-root .gx-entry-card-emoji{ font-size:48px; line-height:1; width:64px; height:64px; display:flex; align-items:center; justify-content:center; background:rgba(11,58,104,.08); border-radius:999px; }
#guidex-root .gx-entry-card-title{ font-size:18px; font-weight:800; line-height:1.2; color:var(--gx-ink); }
#guidex-root .gx-entry-card-text{ font-size:15px; line-height:1.35; color:var(--gx-ink); }
#guidex-root .gx-entry-cta-row{ gap:12px; }
#guidex-root .gx-entry-cta{ flex:1 1 320px; min-width:220px; min-height:72px; height:auto; display:flex; align-items:center; justify-content:center; gap:10px; font-size:18px; font-weight:800; line-height:1.1; }
#guidex-root .gx-btn-center{ justify-content:center; }
#guidex-root .gx-entry-scope-wrap{ text-align:center; margin-bottom:8px; }
#guidex-root .gx-entry-scope-badge{ font-size:11px; padding:4px 12px; }
#guidex-root .gx-entry-subtitle{ margin-top:4px; }
#guidex-root .gx-entry-cta-icon{ width:42px; height:42px; object-fit:contain; }
#guidex-root .gx-entry-intents-link{ font-size:16px; padding:12px 24px; text-decoration:none; display:inline-flex; align-items:center; justify-content:center; }
#guidex-root .gx-home-reflection-circle{ text-align:center; margin-top:12px; }
#guidex-root .gx-home-reflection-circle__link{ justify-content:center; }
#guidex-root .gx-rc-shell{ max-width:720px; margin:0 auto; }
#guidex-root .gx-rc-home{ background:linear-gradient(180deg, rgba(195,151,57,0.12), rgba(10,17,28,0.96)); border-color:rgba(195,151,57,0.34); }
#guidex-root .gx-rc-hero{ display:flex; flex-direction:column; gap:10px; }
#guidex-root .gx-rc-hero--tight{ gap:8px; }
#guidex-root .gx-rc-kicker{ font-size:11px; font-weight:800; letter-spacing:0.14em; text-transform:uppercase; color:var(--gx-gold); }
#guidex-root .gx-rc-title{ margin:0; font-size:30px; line-height:1.08; }
#guidex-root .gx-rc-copy{ font-size:15px; line-height:1.55; max-width:58ch; }
#guidex-root .gx-rc-guidance{ font-size:14px; line-height:1.5; max-width:58ch; }
#guidex-root .gx-rc-action-stack{ display:flex; justify-content:flex-start; margin-top:18px; }
#guidex-root .gx-rc-grid{ display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:14px; margin-top:20px; }
#guidex-root .gx-rc-panel{ display:flex; flex-direction:column; align-items:flex-start; gap:8px; min-height:164px; padding:18px; border:1px solid rgba(195,151,57,0.22); border-radius:16px; background:rgba(255,255,255,0.03); color:inherit; }
#guidex-root .gx-rc-panel__eyebrow{ font-size:11px; font-weight:700; letter-spacing:0.12em; text-transform:uppercase; color:var(--gx-muted); }
#guidex-root .gx-rc-panel__title{ font-size:18px; line-height:1.2; }
#guidex-root .gx-rc-panel__copy{ line-height:1.45; }
#guidex-root .gx-rc-note{ line-height:1.55; }
#guidex-root .gx-rc-section-title{ font-size:12px; font-weight:800; letter-spacing:0.08em; text-transform:uppercase; color:var(--gx-muted); margin-bottom:10px; }
#guidex-root .gx-rc-chip-grid{ display:flex; flex-wrap:wrap; gap:8px; }
#guidex-root .gx-rc-chip-grid--sm{ gap:6px; }
#guidex-root .gx-rc-chip{ border:1px solid rgba(195,151,57,0.22); background:rgba(255,255,255,0.03); color:var(--gx-ink); border-radius:999px; padding:10px 14px; font:inherit; cursor:pointer; }
#guidex-root .gx-rc-chip--active{ background:rgba(195,151,57,0.18); border-color:rgba(195,151,57,0.54); color:#fff7de; }
#guidex-root .gx-rc-chip--sm{ padding:6px 10px; font-size:13px; }
#guidex-root .gx-badge--sm{ font-size:10px; min-width:16px; height:16px; padding:0 4px; }
/* Reflection inbox rows */
#guidex-root .gx-rc-inbox-list{ display:flex; flex-direction:column; gap:12px; }
#guidex-root .gx-rc-inbox-row{ padding:16px; border:1px solid var(--gx-border); border-radius:12px; background:rgba(255,255,255,0.02); }
#guidex-root .gx-rc-inbox-row[data-state='accepted']{ border-color:rgba(34,197,94,0.35); background:rgba(34,197,94,0.06); }
#guidex-root .gx-rc-inbox-row[data-state='dismissed']{ opacity:0.55; }
#guidex-root .gx-rc-inbox-row__head{ display:flex; justify-content:space-between; align-items:center; gap:8px; margin-bottom:8px; }
#guidex-root .gx-rc-inbox-row__body{ margin:0 0 6px; line-height:1.5; }
#guidex-root .gx-rc-inbox-row__note{ color:var(--gx-muted); font-style:italic; margin:4px 0; }
#guidex-root .gx-rc-inbox-row__state{ text-transform:capitalize; background:rgba(195,151,57,0.2); color:#fff7de; }
#guidex-root .gx-rc-inbox-row[data-state='accepted'] .gx-rc-inbox-row__state{ background:rgba(34,197,94,0.25); color:#bbf7d0; }
#guidex-root .gx-rc-inbox-row[data-state='dismissed'] .gx-rc-inbox-row__state{ background:rgba(100,116,139,0.2); color:var(--gx-muted); }
#guidex-root .gx-rc-inbox-row__actions{ display:flex; flex-wrap:wrap; gap:6px; margin-top:10px; }
#guidex-root .gx-btn--sm{ height:36px; padding:0 12px; font-size:13px; min-width:unset; }
#guidex-root .gx-rc-form-grid{ display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:10px; }
#guidex-root .gx-rc-form-grid__full{ grid-column:1 / -1; }
#guidex-root .gx-rc-recipient{ display:flex; justify-content:space-between; gap:12px; align-items:flex-start; padding:14px 0; border-top:1px solid var(--gx-border); }
#guidex-root .gx-rc-recipient:first-child{ border-top:none; padding-top:0; }
#guidex-root .gx-rc-recipient__main{ min-width:0; }

@media (max-width: 820px) {
  #guidex-root .gx-rc-title{ font-size:26px; }
  #guidex-root .gx-rc-grid{ grid-template-columns:1fr; }
  #guidex-root .gx-rc-form-grid{ grid-template-columns:1fr; }
  #guidex-root .gx-rc-action-stack{ justify-content:stretch; }
  #guidex-root .gx-rc-action-stack .gx-btn,
  #guidex-root .gx-rc-action-stack a{ width:100%; }
  #guidex-root .gx-rc-inbox-row__actions .gx-btn{ flex:1; }
}

/* Phase 2 — aspiration/scope shared classes (no inline styles) */
#guidex-root .gx-scope-card{ max-width:640px; margin:0 auto; }
#guidex-root .gx-scope-heading{ margin:0 0 4px; }
#guidex-root .gx-scope-sub{ margin-bottom:16px; }
#guidex-root .gx-section-label{ font-weight:700; font-size:13px; text-transform:uppercase; letter-spacing:0.04em; margin-bottom:8px; color:var(--gx-muted); }
#guidex-root .gx-section-label--field{ display:block; margin-bottom:6px; }
#guidex-root .gx-section-gap{ margin-bottom:20px; }
#guidex-root .gx-section-gap-sm{ margin-bottom:16px; }
#guidex-root .gx-stack-col{ display:flex; flex-direction:column; gap:8px; }
#guidex-root .gx-input--full{ width:100%; box-sizing:border-box; }
#guidex-root .gx-input--resizable{ width:100%; resize:vertical; box-sizing:border-box; }
#guidex-root .gx-action-bar{ display:flex; gap:10px; justify-content:flex-end; }
#guidex-root .gx-btn-group{ display:flex; gap:8px; flex-wrap:wrap; }
#guidex-root .gx-btn-group .gx-btn{ flex:1; min-width:100px; }
#guidex-root .gx-obj-option{ display:block; padding:10px 14px; border:1px solid var(--gx-border); border-radius:8px; cursor:pointer; }
#guidex-root .gx-obj-option--selected{ border-color:var(--gx-accent); background:rgba(37,99,235,0.15); }
#guidex-root .gx-obj-option-title{ font-weight:700; font-size:14px; }
#guidex-root .gx-obj-option-desc{ font-size:12px; color:var(--gx-muted); margin-top:2px; }

#guidex-root .gx-wizard-step-list{ display:flex; flex-wrap:wrap; gap:6px; margin-top:12px; }
#guidex-root .gx-wizard-step-btn{ padding:6px 14px; border-radius:20px; font-size:12px; white-space:nowrap; border:2px solid rgba(255,255,255,0.12); background:transparent; color:var(--gx-muted); cursor:pointer; }
#guidex-root .gx-wizard-step-btn.is-current{ background:rgba(37,99,235,0.3); border-color:rgba(37,99,235,0.7); color:#fff; font-weight:600; }
#guidex-root .gx-wizard-step-btn.is-complete{ background:rgba(37,99,235,0.08); border-color:rgba(37,99,235,0.2); color:var(--gx-muted); }
#guidex-root .gx-wizard-step-count{ font-size:10px; background:var(--gx-success); color:#fff; border-radius:50%; padding:1px 5px; }
#guidex-root .gx-wizard-nav-row{ display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; }
#guidex-root .gx-wizard-nav-btn{ min-width:100px; }
#guidex-root .gx-wizard-nav-btn-finish{ min-width:140px; }
/* S2: upload row — right-aligned on desktop, centered on phone */
#guidex-root .gx-wizard-upload-row{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; justify-content:flex-end; width:100%; }

/* My Story canonical workspace shell */
#guidex-root .gx-story-workspace{ padding:18px; }
#guidex-root .gx-story-header{ display:flex; align-items:flex-start; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-bottom:10px; }
#guidex-root .gx-story-header-main{ flex:1 1 420px; min-width:280px; }
#guidex-root .gx-story-header-tools{ flex:1 1 360px; min-width:280px; display:flex; flex-direction:column; align-items:flex-end; gap:8px; }
#guidex-root .gx-story-guide-btn{ white-space:nowrap; }
#guidex-root .gx-story-phase-row{ display:grid; grid-template-columns:repeat(2, minmax(180px, 1fr)); gap:8px; margin:10px 0 8px; }
#guidex-root .gx-story-phase-band{ padding:8px 10px; border-radius:10px; border:1px solid var(--gx-border); background:var(--gx-panel2); color:var(--gx-muted); font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:0.04em; }
#guidex-root .gx-story-phase-band.is-active{ border-color:rgba(37,99,235,0.45); background:rgba(37,99,235,0.14); color:var(--gx-link); }
#guidex-root .gx-story-entry-shell{ margin-top:10px; }
#guidex-root .gx-story-entry-shell > .gx-card{ margin-bottom:10px; }
#guidex-root .gx-story-nav-row{ margin-top:4px; }
#guidex-root .gx-story-nav-primary,
#guidex-root .gx-story-nav-secondary{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; }

/* My Selfie canonical workspace shell */
#guidex-root .gx-selfie-workspace{ padding:18px; }
#guidex-root .gx-selfie-header{ display:flex; align-items:flex-start; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-bottom:10px; }
#guidex-root .gx-selfie-header-main{ flex:1 1 420px; min-width:280px; }
#guidex-root .gx-selfie-header-tools{ flex:1 1 360px; min-width:280px; display:flex; flex-direction:column; align-items:flex-end; gap:8px; }
#guidex-root .gx-selfie-guide-btn{ white-space:nowrap; }
#guidex-root .gx-selfie-phase-row{ display:grid; grid-template-columns:repeat(2, minmax(180px, 1fr)); gap:8px; margin:10px 0 8px; }
#guidex-root .gx-selfie-phase-band{ padding:8px 10px; border-radius:10px; border:1px solid var(--gx-border); background:var(--gx-panel2); color:var(--gx-muted); font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:0.04em; }
#guidex-root .gx-selfie-phase-band.is-active{ border-color:rgba(37,99,235,0.45); background:rgba(37,99,235,0.14); color:var(--gx-link); }
#guidex-root .gx-selfie-phase-label{ text-align:center; }
#guidex-root .gx-selfie-entry-shell{ margin-top:10px; }
#guidex-root .gx-selfie-nav-row{ margin-top:4px; display:flex; justify-content:space-between; gap:8px; flex-wrap:wrap; }
#guidex-root .gx-selfie-nav-primary,
#guidex-root .gx-selfie-nav-secondary{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; }

/* My Mirror canonical workspace shell */
#guidex-root .gx-mirror-workspace{ padding:18px; }
#guidex-root .gx-mirror-header{ display:flex; align-items:flex-start; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-bottom:10px; }
#guidex-root .gx-mirror-header-main{ flex:1 1 420px; min-width:280px; }
#guidex-root .gx-mirror-header-tools{ flex:1 1 360px; min-width:280px; display:flex; flex-direction:column; align-items:flex-end; gap:8px; }
#guidex-root .gx-mirror-guide-btn{ white-space:nowrap; }
#guidex-root .gx-mirror-phase-row{ display:grid; grid-template-columns:repeat(2, minmax(180px, 1fr)); gap:8px; margin:10px 0 8px; }
#guidex-root .gx-mirror-phase-band{ padding:8px 10px; border-radius:10px; border:1px solid var(--gx-border); background:var(--gx-panel2); color:var(--gx-muted); font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:0.04em; }
#guidex-root .gx-mirror-phase-band.is-active{ border-color:rgba(37,99,235,0.45); background:rgba(37,99,235,0.14); color:var(--gx-link); }
#guidex-root .gx-mirror-phase-label{ text-align:center; }
#guidex-root .gx-mirror-entry-shell{ margin-top:10px; }

#guidex-root .gx-details-spaced{ margin-bottom:14px; }
#guidex-root .gx-details-summary-link{ cursor:pointer; color:var(--gx-link); font-size:13px; }

#guidex-root .gx-transcript-status{ margin-top:8px; padding:8px 12px; background:rgba(37,99,235,0.1); border:1px solid rgba(37,99,235,0.25); border-radius:8px; font-size:13px; }
#guidex-root .gx-transcript-status-label{ color:#7baadc; font-weight:600; }
#guidex-root .gx-transcript-status-name{ color:#e8eef4; }
#guidex-root .gx-transcript-status-meta{ color:#99aabb; }
#guidex-root .gx-transcript-status-action{ margin-left:8px; }

#guidex-root .gx-college-tab-row{ display:flex; gap:4px; margin:16px 0 12px; }
#guidex-root .gx-college-intent-panel{ margin-bottom:16px; }
#guidex-root .gx-school-banner{ display:flex; align-items:center; gap:8px; margin-bottom:12px; padding:10px 14px; background:rgba(37,99,235,0.08); border:1px solid rgba(37,99,235,0.15); border-radius:8px; }
#guidex-root .gx-school-banner-icon{ font-size:18px; }
#guidex-root .gx-school-banner-name{ font-weight:600; color:var(--gx-text); font-size:15px; }
#guidex-root .gx-school-banner-action{ margin-left:auto; }

#guidex-root .gx-autofill-panel{ border-radius:8px; padding:14px 16px; margin-bottom:16px; }
#guidex-root .gx-autofill-panel-ready{ background:rgba(37,99,235,0.06); border:1px solid rgba(37,99,235,0.14); }
#guidex-root .gx-autofill-panel-empty{ background:rgba(255,255,255,0.03); border:1px dashed rgba(255,255,255,0.15); }
#guidex-root .gx-autofill-panel-row{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
#guidex-root .gx-autofill-panel-icon{ font-size:20px; }
#guidex-root .gx-autofill-panel-body{ flex:1; }
#guidex-root .gx-autofill-panel-title{ font-weight:600; font-size:14px; color:var(--gx-fg); }
#guidex-root .gx-autofill-panel-copy{ font-size:12px; color:var(--gx-muted); }
#guidex-root .gx-field-label-gap{ margin-bottom:6px; }

#guidex-root .gx-credit-item-row{ display:flex; justify-content:space-between; align-items:center; padding:5px 0; border-bottom:1px solid rgba(255,255,255,0.04); }
#guidex-root .gx-credit-item-title{ font-weight:500; font-size:13px; }
#guidex-root .gx-credit-item-meta{ margin-left:8px; font-size:11px; }
#guidex-root .gx-credit-item-credit{ color:var(--gx-success); font-weight:600; }
#guidex-root .gx-credit-assessment-card{ margin-bottom:8px; }
#guidex-root .gx-credit-assessment-summary{ cursor:pointer; font-weight:600; font-size:14px; padding:10px 12px; background:rgba(255,255,255,0.03); border-radius:8px; display:flex; align-items:center; gap:8px; }
#guidex-root .gx-credit-assessment-meta{ font-size:12px; font-weight:400; color:var(--gx-muted); }
#guidex-root .gx-credit-assessment-badge{ margin-left:auto; font-size:11px; font-weight:500; padding:2px 8px; border-radius:10px; background:rgba(37,99,235,0.12); color:#93c5fd; }
#guidex-root .gx-credit-assessment-body{ padding:4px 14px; }
#guidex-root .gx-credit-assessment-note{ font-size:12px; color:#93c5fd; padding:6px 10px; margin-bottom:8px; background:rgba(37,99,235,0.06); border-radius:6px; border-left:3px solid rgba(37,99,235,0.4); }
#guidex-root .gx-credit-assessment-note-copy{ color:var(--gx-muted); }

#guidex-root .gx-credit-agent-panel{ background:linear-gradient(135deg, rgba(37,99,235,0.12), rgba(139,92,246,0.08)); border:1px solid rgba(37,99,235,0.25); border-radius:12px; padding:18px 20px; margin-bottom:16px; }
#guidex-root .gx-credit-agent-row{ display:flex; align-items:flex-start; gap:12px; }
#guidex-root .gx-credit-agent-icon{ font-size:28px; }
#guidex-root .gx-credit-agent-body{ flex:1; }
#guidex-root .gx-credit-agent-title{ margin:0 0 8px; font-size:15px; }
#guidex-root .gx-credit-agent-copy{ font-size:13px; color:var(--gx-fg); margin:0 0 10px; line-height:1.6; }
#guidex-root .gx-credit-agent-copy-muted{ color:var(--gx-muted); margin:0; }
#guidex-root .gx-credit-agent-list{ font-size:13px; margin:0 0 12px; padding-left:20px; list-style:none; }
#guidex-root .gx-credit-agent-list-item{ padding:3px 0; }

#guidex-root .gx-credit-summary-grid{ display:flex; flex-wrap:wrap; gap:12px; margin-bottom:14px; }
#guidex-root .gx-credit-summary-card{ flex:1 1 200px; padding:12px 16px; background:rgba(37,99,235,0.08); border:1px solid rgba(37,99,235,0.15); border-radius:10px; text-align:center; }
#guidex-root .gx-credit-summary-value{ font-size:24px; font-weight:700; }
#guidex-root .gx-credit-summary-value-success{ color:var(--gx-success); }
#guidex-root .gx-credit-summary-value-info{ color:#60a5fa; }
#guidex-root .gx-credit-summary-value-violet{ color:#c084fc; }
#guidex-root .gx-credit-summary-label{ font-size:11px; color:var(--gx-muted); }

#guidex-root .gx-life-panel{ padding:14px; border-radius:8px; }
#guidex-root .gx-life-panel-info{ background:rgba(37,99,235,0.06); border:1px solid rgba(37,99,235,0.15); }
#guidex-root .gx-life-panel-success{ background:rgba(22,163,74,0.06); border:1px solid rgba(22,163,74,0.15); }
#guidex-root .gx-life-panel-title{ font-weight:600; font-size:14px; margin-bottom:8px; }
#guidex-root .gx-life-panel-title-info{ color:var(--gx-primary); }
#guidex-root .gx-life-panel-title-success{ color:var(--gx-success); }
#guidex-root .gx-life-row{ display:flex; align-items:center; gap:8px; padding:8px 0; border-bottom:1px solid rgba(255,255,255,0.06); }
#guidex-root .gx-life-row-main{ flex:1; }
#guidex-root .gx-life-intro-copy{ font-size:15px; line-height:1.6; margin-top:8px; color:var(--gx-text); }
#guidex-root .gx-life-action-row{ display:flex; gap:10px; flex-wrap:wrap; margin-top:16px; }
#guidex-root .gx-life-action-primary{ min-width:180px; }
#guidex-root .gx-life-category-card{ display:flex; align-items:center; gap:10px; padding:10px 14px; border-radius:8px; cursor:pointer; background:rgba(255,255,255,0.03); border:1px solid rgba(255,255,255,0.08); margin-bottom:4px; }
#guidex-root .gx-life-category-label{ font-size:14px; }
#guidex-root .gx-life-category-list{ display:flex; flex-direction:column; gap:2px; }
#guidex-root .gx-life-checkbox{ width:18px; height:18px; accent-color:var(--gx-primary); }
#guidex-root .gx-life-entry-row{ display:flex; align-items:flex-start; gap:8px; padding:10px 0; border-bottom:1px solid rgba(255,255,255,0.06); }
#guidex-root .gx-life-period-option{ display:inline-flex; align-items:center; gap:4px; margin-right:12px; white-space:nowrap; }
#guidex-root .gx-life-step-header{ display:flex; justify-content:space-between; align-items:center; margin-bottom:4px; }
#guidex-root .gx-life-step-progress{ font-size:12px; }
#guidex-root .gx-life-prompt{ font-size:14px; color:var(--gx-text); margin-bottom:6px; line-height:1.6; }
#guidex-root .gx-life-examples{ margin-bottom:14px; font-style:italic; }
#guidex-root .gx-life-entry-form{ margin-top:12px; padding:14px; background:rgba(255,255,255,0.02); border:1px solid rgba(255,255,255,0.08); border-radius:8px; }
#guidex-root .gx-life-period-row{ display:flex; flex-wrap:wrap; gap:4px 0; margin-bottom:8px; }
#guidex-root .gx-life-summary-row{ display:flex; justify-content:space-between; padding:4px 0; }
#guidex-root .gx-life-status-row{ display:flex; align-items:center; gap:8px; margin-bottom:8px; }
#guidex-root .gx-life-status-icon{ font-size:20px; }
#guidex-root .gx-life-summary-box{ margin-top:10px; padding:10px 14px; background:rgba(255,255,255,0.03); border-radius:8px; }

#guidex-root .gx-review-suggestion-card{ border-radius:10px; padding:14px 16px; margin-bottom:10px; }
#guidex-root .gx-review-suggestion-green{ background:rgba(74,222,128,0.06); border:1px solid rgba(74,222,128,0.2); }
#guidex-root .gx-review-suggestion-blue{ background:rgba(96,165,250,0.06); border:1px solid rgba(96,165,250,0.2); }
#guidex-root .gx-review-suggestion-yellow{ background:rgba(251,191,36,0.06); border:1px solid rgba(251,191,36,0.2); }
#guidex-root .gx-review-suggestion-violet{ background:rgba(192,132,252,0.06); border:1px solid rgba(192,132,252,0.2); }
#guidex-root .gx-review-suggestion-header{ display:flex; align-items:center; gap:8px; margin-bottom:8px; }
#guidex-root .gx-review-suggestion-icon{ font-size:20px; }
#guidex-root .gx-review-suggestion-title{ margin:0; font-size:14px; }
#guidex-root .gx-review-suggestion-badge{ margin-left:auto; font-size:11px; padding:2px 8px; border-radius:10px; font-weight:600; }
#guidex-root .gx-review-suggestion-badge-green{ background:rgba(74,222,128,0.15); color:#4ade80; }
#guidex-root .gx-review-suggestion-badge-blue{ background:rgba(96,165,250,0.15); color:#60a5fa; }
#guidex-root .gx-review-suggestion-badge-yellow{ background:rgba(251,191,36,0.15); color:#fbbf24; }
#guidex-root .gx-review-suggestion-badge-violet{ background:rgba(192,132,252,0.15); color:#c084fc; }
#guidex-root .gx-review-suggestion-copy{ font-size:13px; margin:0 0 6px; color:var(--gx-fg); }
#guidex-root .gx-review-suggestion-list{ font-size:12px; margin:4px 0 0; padding-left:18px; color:var(--gx-fg); }

#guidex-root .gx-review-dashboard{ display:flex; flex-wrap:wrap; gap:10px; margin-bottom:16px; }
#guidex-root .gx-review-dashboard-card{ flex:1 1 140px; padding:14px; border-radius:10px; text-align:center; }
#guidex-root .gx-review-dashboard-card-green{ background:rgba(74,222,128,0.08); border:1px solid rgba(74,222,128,0.15); }
#guidex-root .gx-review-dashboard-card-yellow{ background:rgba(251,191,36,0.08); border:1px solid rgba(251,191,36,0.15); }
#guidex-root .gx-review-dashboard-card-blue{ background:rgba(96,165,250,0.08); border:1px solid rgba(96,165,250,0.15); }
#guidex-root .gx-review-dashboard-card-violet{ background:rgba(192,132,252,0.08); border:1px solid rgba(192,132,252,0.15); }
#guidex-root .gx-review-dashboard-value{ font-size:28px; font-weight:700; }
#guidex-root .gx-review-dashboard-value-green{ color:#4ade80; }
#guidex-root .gx-review-dashboard-value-yellow{ color:#fbbf24; }
#guidex-root .gx-review-dashboard-value-blue{ color:#60a5fa; }
#guidex-root .gx-review-dashboard-value-violet{ color:#c084fc; }
#guidex-root .gx-review-dashboard-label{ font-size:11px; color:var(--gx-muted); }

#guidex-root .gx-review-section{ margin-bottom:16px; }
#guidex-root .gx-review-section-title{ margin:0 0 10px; font-size:15px; }
#guidex-root .gx-review-narrative{ resize:vertical; font-size:14px; line-height:1.6; min-height:160px; }
@media (min-width: 720px){
  #guidex-root .gx-modal-backdrop{ align-items:center; }
}
@media (max-width: 560px){
  #guidex-root .gx-ep-upload-grid{ grid-template-columns:1fr; }
  #guidex-root .gx-ep-aspiration-row{ flex-direction:column; align-items:stretch; }
}

@media (max-width: 900px){
  #guidex-root .gx-career-compass__grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px){
  #guidex-root .gx-conversation-surface__composer{ flex-direction:column; align-items:stretch; }
  #guidex-root .gx-career-compass__grid{ grid-template-columns:1fr; }
  #guidex-root .gx-career-compass__result-card{ flex-direction:column; }
  #guidex-root .gx-career-compass__result-actions{ width:100%; align-items:stretch; }
  #guidex-root .gx-career-compass__result-cta{ width:100%; justify-content:center; }
  #guidex-root .gx-career-compass__onet-link{ text-align:center; }
}

#guidex-root[data-guidex-surface='phone'] .gx-header-toolstrip__toggle span,
#guidex-root[data-guidex-surface='phone'] .gx-header-toolstrip__field span,
#guidex-root[data-guidex-surface='phone'] .gx-header-toolstrip__pill-label,
#guidex-root[data-guidex-surface='phone'] .gx-footer-right,
#guidex-root[data-guidex-surface='phone'] .gx-badge,
#guidex-root[data-guidex-surface='phone'] .gx-wizard-step-btn,
#guidex-root[data-guidex-surface='phone'] .gx-life-period-option,
#guidex-root[data-guidex-surface='phone'] .gx-code-cell,
#guidex-root[data-guidex-surface='tablet'] .gx-footer-right {
  white-space: normal;
}
/* S2: wizard step buttons need 44px touch target on phone */
#guidex-root[data-guidex-surface='phone'] .gx-wizard-step-btn {
  min-height: 44px;
}
/* S2: upload row — centered on phone, buttons expand to fill */
#guidex-root[data-guidex-surface='phone'] .gx-wizard-upload-row { justify-content: center; }
#guidex-root[data-guidex-surface='phone'] .gx-wizard-upload-row .gx-btn { flex: 1 1 auto; }
#guidex-root[data-guidex-surface='phone'] .gx-story-header { flex-direction: column; }
#guidex-root[data-guidex-surface='phone'] .gx-story-header-main,
#guidex-root[data-guidex-surface='phone'] .gx-story-header-tools { min-width: 0; width: 100%; }
#guidex-root[data-guidex-surface='phone'] .gx-story-header-tools { align-items: stretch; }
#guidex-root[data-guidex-surface='phone'] .gx-story-guide-btn { width: 100%; }
#guidex-root[data-guidex-surface='phone'] .gx-story-phase-row { grid-template-columns: 1fr; }
#guidex-root[data-guidex-surface='phone'] .gx-story-nav-primary,
#guidex-root[data-guidex-surface='phone'] .gx-story-nav-secondary { width: 100%; }
#guidex-root[data-guidex-surface='phone'] .gx-story-nav-primary .gx-btn,
#guidex-root[data-guidex-surface='phone'] .gx-story-nav-secondary .gx-btn { width: 100%; }
#guidex-root[data-guidex-surface='phone'] .gx-selfie-header { flex-direction: column; }
#guidex-root[data-guidex-surface='phone'] .gx-selfie-header-main,
#guidex-root[data-guidex-surface='phone'] .gx-selfie-header-tools { min-width: 0; width: 100%; }
#guidex-root[data-guidex-surface='phone'] .gx-selfie-header-tools { align-items: stretch; }
#guidex-root[data-guidex-surface='phone'] .gx-selfie-guide-btn { width: 100%; }
#guidex-root[data-guidex-surface='phone'] .gx-selfie-phase-row { grid-template-columns: 1fr; }
#guidex-root[data-guidex-surface='phone'] .gx-selfie-nav-primary,
#guidex-root[data-guidex-surface='phone'] .gx-selfie-nav-secondary { width: 100%; }
#guidex-root[data-guidex-surface='phone'] .gx-selfie-nav-primary .gx-btn,
#guidex-root[data-guidex-surface='phone'] .gx-selfie-nav-secondary .gx-btn { width: 100%; }
#guidex-root[data-guidex-surface='phone'] .gx-mirror-header { flex-direction: column; }
#guidex-root[data-guidex-surface='phone'] .gx-mirror-header-main,
#guidex-root[data-guidex-surface='phone'] .gx-mirror-header-tools { min-width: 0; width: 100%; }
#guidex-root[data-guidex-surface='phone'] .gx-mirror-header-tools { align-items: stretch; }
#guidex-root[data-guidex-surface='phone'] .gx-mirror-guide-btn { width: 100%; }
#guidex-root[data-guidex-surface='phone'] .gx-mirror-phase-row { grid-template-columns: 1fr; }
/* S3: challenges action buttons expand to full row on phone */
#guidex-root[data-guidex-surface='phone'] .gx-challenges-actions { flex-direction: column; }
#guidex-root[data-guidex-surface='phone'] .gx-challenges-actions .gx-btn { width: 100%; }

#guidex-root[data-guidex-surface='phone'] .gx-header-toolstrip__field,
#guidex-root[data-guidex-surface='phone'] .gx-header-toolstrip__toggle,
#guidex-root[data-guidex-surface='phone'] .gx-btn--wide,
#guidex-root[data-guidex-surface='phone'] .gx-entry-cta,
#guidex-root[data-guidex-surface='phone'] .gx-home-action-stack .gx-btn,
#guidex-root[data-guidex-surface='phone'] .gx-btn-group .gx-btn,
#guidex-root[data-guidex-surface='phone'] .gx-wizard-nav-btn,
#guidex-root[data-guidex-surface='phone'] .gx-wizard-nav-btn-finish,
#guidex-root[data-guidex-surface='phone'] .gx-life-action-primary,
#guidex-root[data-guidex-surface='phone'] .gx-search-result-actions,
#guidex-root[data-guidex-surface='phone'] .gx-action-col,
#guidex-root[data-guidex-surface='phone'] .gx-occ-card {
  min-width: 0;
  width: 100%;
  max-width: 100%;
}

#guidex-root[data-guidex-surface='phone'] .gx-footer-right,
#guidex-root[data-guidex-surface='tablet'] .gx-footer-right {
  flex: 1 1 100%;
  flex-wrap: wrap;
  overflow: visible;
  text-overflow: clip;
  gap: 6px 10px;
}

#guidex-root[data-guidex-surface='phone'] .gx-ref-grid {
  min-width: 0;
  flex-wrap: wrap;
}

#guidex-root[data-guidex-surface='phone'] .gx-ref-col {
  flex: 1 1 100%;
  max-width: 100%;
}

@media (max-width: 720px){
  #guidex-root .gx-float-controls-wrap{ top:58px; right:8px; align-items:flex-end; max-width:calc(var(--gx-host-vw, 100vw) - 16px); }
  #guidex-root .gx-float-controls{ justify-content:flex-end; }
  #guidex-root .gx-compact-nav-menu.gx-compact-nav-menu--floating{ width:min(300px, calc(var(--gx-host-vw, 100vw) - 16px)); max-width:calc(var(--gx-host-vw, 100vw) - 16px); max-height:calc(var(--gx-host-vh, 100dvh) - 104px); }
  #guidex-root .gx-footer-row{ flex-direction:column; align-items:flex-start; gap:2px; }
  #guidex-root .gx-footer-right{ text-align:left; white-space:normal; overflow:visible; text-overflow:clip; }
  #guidex-root .gx-entry-cards{ grid-template-columns:1fr; gap:12px; }
  #guidex-root .gx-entry-card{ min-height:unset; padding:16px 14px; }
  #guidex-root .gx-entry-card-title{ font-size:17px; }
  #guidex-root .gx-entry-card-text{ font-size:14px; }
  #guidex-root .gx-entry-cta{ min-width:100%; min-height:62px; font-size:16px; }
  #guidex-root .gx-home-action-stack{ flex-direction:column; align-items:stretch; }
  #guidex-root .gx-home-action-stack > *{ flex:1 1 auto; width:100%; }
  #guidex-root .gx-home-mobile-atlas{ align-items:flex-start; }
  #guidex-root .gx-home-mobile-atlas__cta{ padding-top:2px; }
  #guidex-root .gx-home-upload-group{ flex-direction:column; align-items:stretch; }
  #guidex-root .gx-home-upload-group .gx-btn,
  #guidex-root .gx-home-upload-group .gx-upload-status,
  #guidex-root .gx-home-upload-group span[id$='-status']{ width:100%; justify-content:flex-start; }
  #guidex-root .gx-search-header{ flex-direction:column; align-items:stretch; }
  #guidex-root .gx-search-tab-group{ width:100%; }
  #guidex-root .gx-search-tab{ flex:1 1 150px; justify-content:center; }
  #guidex-root .gx-search-filter-actions .gx-btn,
  #guidex-root .gx-search-location-row .gx-select,
  #guidex-root .gx-search-location-row .gx-input,
  #guidex-root .gx-search-location-row .gx-btn,
  #guidex-root .gx-search-work-filter .gx-input,
  #guidex-root .gx-search-work-filter .gx-btn{ flex:1 1 100%; width:100%; }
  #guidex-root .gx-search-result-head{ flex-direction:column; }
  #guidex-root .gx-search-result-actions{ width:100%; min-width:0; }
}

#guidex-root .gx-inspector-host {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 9998;
  pointer-events: none;
}
#guidex-root .gx-inspector-panel {
  position: fixed;
  top: 88px;
  right: 14px;
  bottom: 14px;
  height: auto;
  max-height: calc(100vh - 104px);
  width: var(--gx-sidepanel-width);
  z-index: 9999;
  background: var(--gx-panel, #ffffff);
  border: 1px solid var(--gx-border, #d7dee8);
  border-radius: 18px;
  box-shadow: 0 18px 42px rgba(15,23,42,0.22);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  font: 13px/1.45 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--gx-ink, #12202e);
  pointer-events: auto;
}
#guidex-root .gx-shell-slot .gx-inspector-panel {
  position: relative;
  inset: auto;
  width: 100%;
  height: 100%;
  max-height: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
#guidex-root .gx-inspector-panel[hidden] { display: none; }
#guidex-root .gx-inspector-panel__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  background: var(--gx-accent, #0b3a68);
  color: #fff;
  font-weight: 700;
  font-size: 13px;
  flex-shrink: 0;
}
#guidex-root .gx-inspector-panel__title {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
#guidex-root .gx-inspector-panel__subtitle {
  font-size: 11px;
  opacity: 0.78;
}
#guidex-root .gx-inspector-panel__actions {
  display: flex;
  align-items: center;
  gap: 8px;
}
#guidex-root .gx-inspector-panel__close {
  background: none;
  border: none;
  color: #fff;
  font-size: 18px;
  cursor: pointer;
  line-height: 1;
  padding: 2px 4px;
}
#guidex-root .gx-inspector-panel__body {
  flex: 1 1 auto;
  overflow-y: auto;
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
#guidex-root .gx-inspector-panel__intro {
  padding: 10px 12px;
  border: 1px solid var(--gx-border, #d7dee8);
  border-radius: 12px;
  background: var(--gx-panel2, #eef3f9);
  color: var(--gx-muted, #4a5f72);
  font-size: 12px;
}
#guidex-root .gx-inspector-panel__intro span {
  color: var(--gx-ink, #12202e);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}
#guidex-root .gx-inspector-section {
  border: 1px solid var(--gx-border, #d7dee8);
  border-radius: 6px;
  padding: 8px 10px;
  margin: 0;
}
#guidex-root .gx-inspector-section legend {
  font-size: 11px;
  font-weight: 700;
  color: var(--gx-muted, #4a5f72);
  text-transform: uppercase;
  letter-spacing: 0.04em;
  padding: 0 4px;
}
#guidex-root .gx-inspector-label {
  display: flex;
  flex-direction: column;
  gap: 3px;
  font-size: 12px;
  font-weight: 500;
  color: var(--gx-ink, #12202e);
  margin-top: 8px;
}
#guidex-root .gx-inspector-label:first-of-type { margin-top: 4px; }
#guidex-root .gx-inspector-label__meta {
  font-size: 11px;
  font-weight: 500;
  color: var(--gx-muted, #4a5f72);
}
#guidex-root .gx-inspector-chk {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  color: var(--gx-ink, #12202e);
  margin-top: 6px;
  cursor: pointer;
}
#guidex-root .gx-inspector-panel .gx-input,
#guidex-root .gx-inspector-panel .gx-select {
  width: 100%;
  min-height: 36px;
  padding: 8px 10px;
  border: 1px solid var(--gx-border, #d7dee8);
  border-radius: 8px;
  background: var(--gx-panel, #ffffff);
  color: var(--gx-ink, #12202e);
}
#guidex-root .gx-inspector-panel__footer {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-top: 1px solid var(--gx-border, #d7dee8);
  flex-shrink: 0;
  background: var(--gx-panel, #ffffff);
}
#guidex-root .gx-inspector-panel__footer .gx-btn {
  height: var(--gx-control-height-sm, 34px);
  padding: 0 12px;
  border-radius: 10px;
  border: 1px solid var(--gx-accent, #0b3a68);
  background: var(--gx-accent, #0b3a68);
  color: var(--gx-btn-ink, #fff);
  font-weight: 700;
  cursor: pointer;
}
#guidex-root .gx-inspector-panel__footer .gx-btn.ghost {
  background: transparent;
  color: var(--gx-link, #0b3a68);
  border-color: transparent;
}
#guidex-root .gx-inspector-status {
  min-width: 0;
  font-size: 11px;
  color: var(--gx-muted, #4a5f72);
}
#guidex-root .gx-inspector-target--active {
  outline: 3px solid var(--gx-accent, #0b3a68);
  outline-offset: 3px;
  box-shadow: 0 0 0 6px color-mix(in srgb, var(--gx-accent, #0b3a68) 18%, transparent);
  transition: outline-color 120ms ease, box-shadow 120ms ease;
}

@media (max-width: 900px) {
  #guidex-root .gx-shell-body--desktop,
  #guidex-root.inspector-open .gx-shell-body--desktop {
    grid-template-columns:minmax(0, 1fr);
  }
  #guidex-root .gx-shell-aside,
  #guidex-root.inspector-open .gx-shell-aside {
    display:block;
    border-left:none;
    border-top:1px solid var(--gx-border);
  }
  #guidex-root .gx-shell-slot--inspector .gx-inspector-panel {
    min-height:0;
  }
  #guidex-root .gx-titlebar {
    align-items: flex-start;
    flex-direction: column;
  }
  #guidex-root .gx-header-voice-controls,
  #guidex-root .gx-header-actions,
  #guidex-root .gx-header-toolstrip {
    width: 100%;
    justify-content: flex-start;
  }
  #guidex-root .gx-header-voice-controls{
    flex-wrap:wrap;
    gap:8px;
    padding:8px;
  }
  #guidex-root .gx-header-voice-controls .gx-btn,
  #guidex-root .gx-header-actions .gx-btn,
  #guidex-root .gx-header-actions a.gx-btn{
    min-height:44px;
    min-width:44px;
  }
  #guidex-root .gx-following-pathway-line {
    grid-template-columns:1fr;
    align-items:flex-start;
  }
  #guidex-root .gx-following-pathway-title {
    font-size:var(--gx-font-size-lg);
  }
  #guidex-root .gx-toolband {
    justify-content: stretch;
    padding-top: 10px;
  }
  #guidex-root .gx-toolbar{
    padding:10px 10px 6px;
  }
  #guidex-root .gx-toolband .gx-header-toolstrip {
    justify-content: flex-start;
  }
  #guidex-root .gx-header-toolstrip__field,
  #guidex-root .gx-header-toolstrip__toggle {
    flex: 1 1 120px;
  }
  #guidex-root .gx-header-toolstrip__field{
    min-width:0;
    font-size:12px;
  }
  #guidex-root .gx-header-toolstrip__select,
  #guidex-root .gx-header-toolstrip__toggle{
    min-height:44px;
    height:auto;
    font-size:14px;
  }
  #guidex-root .gx-tabs{
    gap:8px;
    flex-wrap:nowrap;
    overflow-x:auto;
    padding-bottom:4px;
    -webkit-overflow-scrolling:touch;
  }
  #guidex-root .gx-tab{
    flex:0 0 auto;
    min-height:44px;
    display:inline-flex;
    align-items:center;
  }
}


/* === Persona Intake Wizard === */
#guidex-root .gx-wizard{
  max-width:640px; margin:0 auto; padding:20px 16px;
}
/* Phase 2 — step label (was inline) */
#guidex-root .gx-wiz-step-label{
  font-size:12px; font-weight:600; text-transform:uppercase; letter-spacing:0.06em;
  color:var(--gx-muted); margin-bottom:6px; text-align:center;
}
/* Progress bar */
#guidex-root .gx-wiz-progress{
  height:6px; background:var(--gx-border); border-radius:3px; margin-bottom:32px; overflow:hidden;
}
#guidex-root .gx-wiz-bar{
  width:20%;
  height:100%; background:var(--gx-accent); border-radius:3px; transition:width .4s ease;
}
/* Step container */
#guidex-root .gx-wiz-step{
  animation: wizFadeIn .3s ease;
}
@keyframes wizFadeIn{
  from{ opacity:0; transform:translateY(12px); }
  to{ opacity:1; transform:translateY(0); }
}
/* Headings */
#guidex-root .gx-wiz-heading{
  text-align:center; font-size:24px; font-weight:800; margin:0 0 8px; line-height:1.3;
}
#guidex-root .gx-wiz-sub{
  text-align:center; font-size:15px; opacity:.7; margin:0 0 28px; line-height:1.4;
}
/* Choice grid — group and persona cards */
#guidex-root .gx-wiz-choices{
  display:flex; flex-wrap:wrap; gap:14px; justify-content:center;
}
#guidex-root .gx-wiz-card{
  display:flex; flex-direction:column; align-items:center; text-align:center;
  gap:6px; padding:20px 18px; min-width:240px; max-width:280px; flex:1 1 240px;
  border:2px solid var(--gx-border); border-radius:14px;
  background:var(--gx-panel); cursor:pointer;
  transition:border-color .2s, background .2s, transform .15s;
  font-family:inherit; color:inherit;
}
#guidex-root .gx-wiz-card:hover{
  border-color:var(--gx-accent); transform:translateY(-2px);
}
#guidex-root .gx-wiz-card:focus-visible{
  outline:2px solid var(--gx-accent); outline-offset:2px;
}
#guidex-root .gx-wiz-card-icon{ font-size:36px; line-height:1; }
#guidex-root .gx-wiz-card-label{ font-weight:700; font-size:17px; line-height:1.2; }
#guidex-root .gx-wiz-card-desc{ font-size:13px; opacity:.65; line-height:1.3; }
/* Persona panel container */
#guidex-root .gx-wiz-persona-panel{
  display:none; flex-wrap:wrap; gap:14px; justify-content:center; width:100%;
}
/* Chip grid — factors and styles */
#guidex-root .gx-wiz-chips{
  display:flex; flex-wrap:wrap; gap:10px; justify-content:center;
}
#guidex-root .gx-wiz-chip{
  display:flex; align-items:center; gap:8px; padding:10px 18px;
  border:2px solid var(--gx-border); border-radius:24px;
  background:var(--gx-panel); cursor:pointer;
  transition:border-color .15s, background .15s;
  font-family:inherit; font-size:15px; color:inherit; font-weight:600;
}
#guidex-root .gx-wiz-chip:hover{ border-color:var(--gx-accent); }
#guidex-root .gx-wiz-chip.selected,
#guidex-root .gx-wiz-chip[aria-pressed='true']{
  border-color:var(--gx-accent); background:rgba(11,58,104,.15);
}
/* Nav row */
#guidex-root .gx-wiz-nav{
  display:flex; justify-content:center; gap:12px; margin-top:32px;
}
/* Result step */
#guidex-root .gx-wiz-opening{ text-align:center; margin-bottom:20px; }
#guidex-root .gx-wiz-todo-list{
  text-align:left; max-width:400px; margin:0 auto; padding-left:24px;
  line-height:2; font-size:17px;
}
#guidex-root .gx-wiz-todo-link{
  color:var(--gx-accent); text-decoration:none; font-weight:600;
}
#guidex-root .gx-wiz-todo-link:hover{ text-decoration:underline; }
#guidex-root .gx-intents-center{ text-align:center; }
#guidex-root .gx-intents-hero{ text-align:center; padding:20px 24px; }
#guidex-root .gx-intents-opening-copy{ font-size:20px; line-height:1.5; }

@media (max-width: 600px){
  #guidex-root .gx-wiz-card{ min-width:100%; max-width:none; }
  #guidex-root .gx-wiz-heading{ font-size:20px; }
}

/* === KSA Reflection Panel === */
#guidex-root .gx-reflection-panel{ padding:16px; }
#guidex-root .gx-ref-header{ display:flex; align-items:baseline; justify-content:space-between; margin-bottom:14px; }
#guidex-root .gx-ref-label-left,
#guidex-root .gx-ref-label-right{ font-size:13px; font-weight:700; opacity:0.7; text-transform:uppercase; letter-spacing:0.05em; }
#guidex-root .gx-ref-grid{ display:grid; grid-template-columns:repeat(7, minmax(0, 1fr)); gap:10px; justify-content:center; width:100%; min-width:0; }
#guidex-root .gx-ref-col{ min-width:0; max-width:none; background:rgba(255,255,255,0.92); border-radius:12px; padding:12px 8px 14px; text-align:center; display:flex; flex-direction:column; align-items:center; gap:6px; color:#1a2a3a; transition: transform 0.2s, box-shadow 0.2s; cursor:pointer; position:relative; overflow:hidden; }
#guidex-root .gx-ref-col:hover{ transform:translateY(-4px); box-shadow: 0 8px 28px rgba(0,0,0,0.22); z-index:2; }
#guidex-root .gx-ref-icon{ font-size:36px; line-height:1; width:56px; height:56px; display:flex; align-items:center; justify-content:center; background:rgba(11,58,104,0.08); border-radius:999px; }
#guidex-root .gx-ref-title{ font-size:12px; font-weight:700; line-height:1.2; min-height:28px; display:flex; align-items:center; }
#guidex-root .gx-ref-meter{ width:100%; height:6px; background:rgba(0,0,0,0.08); border-radius:3px; overflow:hidden; margin:2px 0; }
#guidex-root .gx-ref-meter-fill{ height:100%; background: linear-gradient(90deg, var(--gx-accent), var(--gx-accent2)); border-radius:3px; transition: width 0.4s ease; }
#guidex-root .gx-ref-meter-native{ width:100%; height:8px; margin:2px 0; }
#guidex-root .gx-ref-meter-native::-webkit-meter-bar{ background:rgba(0,0,0,0.08); border-radius:3px; }
#guidex-root .gx-ref-meter-native::-webkit-meter-optimum-value{ background:linear-gradient(90deg, var(--gx-accent), var(--gx-accent2)); border-radius:3px; }
#guidex-root .gx-ref-meter-native::-moz-meter-bar{ background:linear-gradient(90deg, var(--gx-accent), var(--gx-accent2)); border-radius:3px; }
#guidex-root .gx-ref-attrs{ list-style:none; padding:0; margin:4px 0 0; font-size:12px; line-height:1.5; text-align:center; color:#2a3a4a; }
#guidex-root .gx-ref-attrs li{ padding:1px 0; }
#guidex-root .gx-ref-empty{ color:#8899aa; font-style:italic; font-size:11px; list-style:none; text-align:center; }
#guidex-root .gx-ref-badge-list{ list-style:none; text-align:center; display:flex; gap:4px; justify-content:center; flex-wrap:wrap; }
#guidex-root .gx-ref-source-count{ display:inline-block; color:#fff; font-size:10px; font-weight:700; padding:1px 6px; border-radius:3px; }
#guidex-root .gx-ref-source-count-transcript{ background:#2563eb; }
#guidex-root .gx-ref-source-count-resume{ background:#16a34a; }
#guidex-root .gx-ref-source-count-linkedin{ background:#0077b5; }
#guidex-root .gx-ref-source-count-conversation{ background:#9333ea; }
#guidex-root .gx-ref-source-count-life{ background:#d97706; }
#guidex-root .gx-ref-tap-hint{ font-size:10px; color:#6688aa; margin-top:6px; cursor:pointer; }
#guidex-root .gx-reflection-title{ margin:0; text-align:center; flex:1; }
#guidex-root .gx-reflection-actions{ margin-top:14px; justify-content:center; gap:12px; }
#guidex-root .gx-selfie-intro-copy{ text-align:center; line-height:1.7; padding-top:10px; }
#guidex-root .gx-selfie-caption{ text-align:center; margin-top:10px; font-style:italic; }
#guidex-root .gx-evidence-panel-title{ margin:0 0 4px; }
#guidex-root .gx-evidence-panel-subtitle{ font-size:15px; font-weight:700; color:#7baadc; margin-bottom:12px; }
#guidex-root .gx-evidence-empty{ color:#8899aa; font-style:italic; }
#guidex-root .gx-evidence-summary{ padding:14px; background:rgba(37,99,235,0.08); border:1px solid rgba(37,99,235,0.2); border-radius:10px; margin-bottom:14px; }
#guidex-root .gx-evidence-summary-copy{ font-size:14px; color:#e8eef4; line-height:1.6; }
#guidex-root .gx-evidence-careers{ font-size:13px; color:#7baadc; margin-top:8px; }
#guidex-root .gx-evidence-details{ margin-top:8px; }
#guidex-root .gx-evidence-summary-toggle{ cursor:pointer; font-size:12px; font-weight:700; color:#6688aa; text-transform:uppercase; letter-spacing:.04em; }
#guidex-root .gx-evidence-source-group{ margin-top:10px; }
#guidex-root .gx-evidence-source-heading{ display:inline-block; color:#fff; font-size:10px; font-weight:700; padding:2px 8px; border-radius:4px; text-transform:uppercase; letter-spacing:.04em; }
#guidex-root .gx-evidence-item{ padding:5px 0; border-bottom:1px solid rgba(255,255,255,0.06); }
#guidex-root .gx-evidence-item-title{ font-size:12px; font-weight:600; color:#e8eef4; }
#guidex-root .gx-evidence-soc-list{ margin-top:3px; display:flex; gap:3px; flex-wrap:wrap; }
#guidex-root .gx-evidence-soc-chip{ font-size:9px; background:#1e3a5f; color:#7baadc; padding:1px 5px; border-radius:3px; }
#guidex-root .gx-evidence-ksa-panel{ margin-top:14px; padding:10px; background:rgba(37,99,235,0.1); border:1px solid rgba(37,99,235,0.25); border-radius:8px; }
#guidex-root .gx-evidence-ksa-title{ font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:#7baadc; margin-bottom:6px; }
#guidex-root .gx-evidence-ksa-row{ padding:3px 0; display:flex; align-items:center; gap:6px; }
#guidex-root .gx-evidence-ksa-code{ font-weight:600; color:#e8eef4; font-size:12px; }
#guidex-root .gx-evidence-ksa-role{ color:#99aabb; font-size:12px; }
#guidex-root .gx-evidence-ksa-btn{ font-size:10px; background:#2563eb; color:#fff; border:none; border-radius:3px; padding:2px 8px; cursor:pointer; }
#guidex-root .gx-text-left{ text-align:left; }
#guidex-root .gx-text-center{ text-align:center; }
#guidex-root .gx-justify-center{ justify-content:center; }
#guidex-root .gx-list-meta{ margin:8px 0 0 18px; padding:0; line-height:1.6; }
#guidex-root .gx-list-meta-spaced{ margin:10px 0 12px 18px; }
#guidex-root .gx-selfie-story-label{ display:block; font-weight:600; margin-bottom:6px; }
#guidex-root .gx-selfie-story-input{ width:100%; resize:vertical; }
#guidex-root .gx-selfie-actions-mt{ margin-top:12px; }
#guidex-root .gx-reflection-handoff{ max-width:760px; margin:0 auto 12px; }
#guidex-root .gx-reflection-handoff-copy{ line-height:1.6; }
#guidex-root .gx-reflection-handoff-meta{ margin-top:10px; line-height:1.6; }
#guidex-root .gx-reflection-handoff-actions{ margin-top:10px; }

/* MySelfe report view */
#guidex-root .gx-doc-badge{ display:inline-flex; align-items:center; gap:4px; padding:4px 10px; border-radius:6px; font-size:12px; }
#guidex-root .gx-doc-badge-present{ background:rgba(37,99,235,0.15); border:1px solid rgba(37,99,235,0.3); color:#7baadc; font-weight:600; }
#guidex-root .gx-doc-badge-missing{ background:var(--gx-surface-subtle); color:var(--gx-muted); }
#guidex-root .gx-report-dim{ background:rgba(255,255,255,0.03); border:1px solid rgba(255,255,255,0.08); border-radius:10px; padding:16px; margin-bottom:12px; }
#guidex-root .gx-report-dim-header{ display:flex; align-items:center; gap:10px; margin-bottom:8px; }
#guidex-root .gx-report-dim-icon{ font-size:24px; }
#guidex-root .gx-report-dim-meta{ flex:1; }
#guidex-root .gx-report-dim-title{ font-size:15px; font-weight:700; color:#e8eef4; }
#guidex-root .gx-report-dim-copy{ font-size:12px; color:#99aabb; margin-top:2px; }
#guidex-root .gx-report-strength{ color:#fff; font-size:11px; font-weight:700; padding:3px 10px; border-radius:4px; }
#guidex-root .gx-report-strength-strong{ background:#16a34a; }
#guidex-root .gx-report-strength-developing{ background:#2563eb; }
#guidex-root .gx-report-strength-emerging{ background:#f39c12; }
#guidex-root .gx-report-strength-muted{ background:#667788; }
#guidex-root .gx-report-empty{ color:var(--gx-muted); font-style:italic; font-size:13px; padding:4px 0; }
#guidex-root .gx-report-chip-row{ display:flex; flex-wrap:wrap; gap:6px; }
#guidex-root .gx-report-chip-row-spaced{ margin-top:6px; }
#guidex-root .gx-report-chip{ background:rgba(0,0,0,0.2); border-radius:6px; padding:4px 8px; font-size:12px; display:flex; align-items:center; gap:4px; }
#guidex-root .gx-report-chip-lg{ padding:6px 10px; gap:6px; }
#guidex-root .gx-report-chip-icon{ color:#fff; font-size:9px; padding:1px 4px; border-radius:2px; background:var(--chip-color, #9333ea); }
#guidex-root .gx-report-chip-icon[data-chip-color='#2563eb']{ background:#2563eb; }
#guidex-root .gx-report-chip-icon[data-chip-color='#16a34a']{ background:#16a34a; }
#guidex-root .gx-report-chip-icon[data-chip-color='#0077b5']{ background:#0077b5; }
#guidex-root .gx-report-chip-icon[data-chip-color='#9333ea']{ background:#9333ea; }
#guidex-root .gx-report-chip-icon-award{ background:#d97706; }
#guidex-root .gx-report-chip-text{ color:#c8d4e0; }
#guidex-root .gx-report-chip-text-strong{ color:#e8eef4; font-weight:600; }
#guidex-root .gx-report-chip-meta{ color:#99aabb; font-size:11px; }
#guidex-root .gx-report-reflection-header{ margin-top:12px; display:flex; align-items:center; gap:10px; margin-bottom:8px; }
#guidex-root .gx-report-reflection-title{ font-size:15px; font-weight:700; color:#e8eef4; }
#guidex-root .gx-report-narrative{ margin-top:8px; color:#99aabb; font-size:13px; line-height:1.6; }
#guidex-root .gx-report-shell{ position:relative; }
#guidex-root .gx-report-header{ display:flex; align-items:center; gap:14px; margin-bottom:16px; }
#guidex-root .gx-report-logo{ height:48px; filter:invert(1); opacity:0.85; }
#guidex-root .gx-report-title{ margin:0; }
#guidex-root .gx-report-subcopy{ margin-top:2px; }
#guidex-root .gx-report-docs{ display:flex; gap:8px; flex-wrap:wrap; margin-top:12px; }
#guidex-root .gx-report-context{ margin-top:12px; padding:10px 14px; background:rgba(255,255,255,0.04); border-radius:8px; font-size:13px; }
#guidex-root .gx-report-context-line{ color:#99aabb; }
#guidex-root .gx-report-context-line-spaced{ margin-top:4px; }
#guidex-root .gx-report-context-strong{ color:#e8eef4; font-weight:600; }
#guidex-root .gx-report-context-value{ color:#e8eef4; }

/* Evidence popup overlay */
#guidex-root .gx-evidence-overlay{ position:fixed; top:0; left:0; width:100%; height:100%; z-index:9999; display:flex; align-items:center; justify-content:center; }
#guidex-root .gx-evidence-backdrop{ position:absolute; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.6); }
#guidex-root .gx-evidence-modal{ position:relative; background:var(--gx-card, #1a2a3a); color:#e8eef4; border:1px solid var(--gx-border, #334); border-radius:14px; padding:24px 28px; max-width:520px; width:90%; max-height:80vh; overflow-y:auto; box-shadow: 0 12px 48px rgba(0,0,0,0.5); }
#guidex-root .gx-evidence-close{ position:absolute; top:10px; right:14px; background:none; border:none; color:var(--gx-muted); font-size:24px; cursor:pointer; line-height:1; padding:4px; }
#guidex-root .gx-evidence-close:hover{ color:#fff; }

@media (max-width: 860px){
  #guidex-root .gx-selfie-summary-grid,
  #guidex-root .gx-selfie-summary-grid--tight{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
  #guidex-root .gx-selfie-intake-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
  #guidex-root .gx-ref-grid{ grid-template-columns:repeat(3, minmax(0, 1fr)); }
  #guidex-root .gx-ref-col{ max-width:none; }
}
@media (max-width: 480px){
  #guidex-root .gx-selfie-layout{ gap:12px; }
  #guidex-root .gx-selfie-summary-grid,
  #guidex-root .gx-selfie-summary-grid--tight,
  #guidex-root .gx-selfie-intake-grid,
  #guidex-root .gx-ref-grid{ grid-template-columns:1fr; }
  #guidex-root .gx-selfie-intake-card{ min-height:120px; }
  #guidex-root .gx-ref-col{ max-width:100%; }
}

/* ── Pathway Carousel (Netflix-style horizontal scroll) ─────────────── */
#guidex-root .gx-carousel-wrap{
  position:relative; margin:0 -12px; padding:0 12px;
}
#guidex-root .gx-carousel{
  display:flex; gap:16px; overflow-x:auto; scroll-snap-type:x mandatory;
  padding:16px 40px; -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
}
#guidex-root .gx-carousel::-webkit-scrollbar{ display:none; }
#guidex-root .gx-carousel-card{
  flex:0 0 300px; scroll-snap-align:center;
  background:var(--gx-panel); border:1px solid var(--gx-border);
  border-radius:16px; padding:20px; min-height:260px;
  transition:transform 0.35s cubic-bezier(.22,1,.36,1), opacity 0.35s ease, box-shadow 0.35s ease;
  transform:scale(0.88); opacity:0.55;
  display:flex; flex-direction:column; justify-content:space-between;
  box-shadow:0 2px 8px rgba(0,0,0,.18);
}
#guidex-root .gx-carousel-card.gx-cc-center{
  transform:scale(1); opacity:1;
  border-color:rgba(37,99,235,.5);
  box-shadow:0 8px 32px rgba(37,99,235,.25), 0 2px 8px rgba(0,0,0,.3);
}
#guidex-root .gx-carousel-card.gx-cc-near{
  transform:scale(0.94); opacity:0.8;
}
#guidex-root .gx-carousel-card .gx-cc-title{
  font-size:16px; font-weight:800; line-height:1.3; margin-bottom:6px;
}
#guidex-root .gx-carousel-card .gx-cc-badges{
  display:flex; flex-wrap:wrap; gap:4px; margin-bottom:8px;
}
#guidex-root .gx-carousel-card .gx-cc-stats{
  display:grid; grid-template-columns:1fr 1fr; gap:6px 12px;
  font-size:12px; color:var(--gx-muted); margin-bottom:12px;
}
#guidex-root .gx-carousel-card .gx-cc-stat-val{
  font-weight:700; color:var(--gx-ink); font-size:13px;
}
#guidex-root .gx-carousel-card .gx-cc-actions{
  display:flex; gap:8px; flex-wrap:wrap; margin-top:auto;
}
#guidex-root .gx-compare-carousel-card--following{ border-color:var(--gx-good)!important; }
#guidex-root .gx-carousel-arrow{
  position:absolute; top:50%; transform:translateY(-50%);
  z-index:10; width:36px; height:36px; border-radius:50%;
  background:rgba(37,99,235,.7); border:none; color:#fff;
  font-size:18px; cursor:pointer; display:flex; align-items:center; justify-content:center;
  transition:background .2s;
}
#guidex-root .gx-carousel-arrow:hover{ background:rgba(37,99,235,1); }
#guidex-root .gx-carousel-arrow.gx-ca-left{ left:4px; }
#guidex-root .gx-carousel-arrow.gx-ca-right{ right:4px; }
#guidex-root .gx-carousel-dots{
  display:flex; justify-content:center; gap:6px; margin-top:10px;
}
#guidex-root .gx-carousel-dot{
  width:8px; height:8px; border-radius:50%; background:rgba(255,255,255,.2);
  transition:all .3s;
}
#guidex-root .gx-carousel-dot.active{ background:#2563eb; transform:scale(1.3); }
@media (max-width: 480px){
  #guidex-root .gx-carousel-card{ flex:0 0 260px; min-height:220px; padding:14px; }
  #guidex-root .gx-ref-header{ flex-direction:column; align-items:center; gap:4px; }
}

/* === Portfolio Report Panel === */
#guidex-root .gx-report-summary{ display:flex; gap:12px; flex-wrap:wrap; margin:12px 0; }
#guidex-root .gx-report-stat{ flex:1 1 120px; background:rgba(255,255,255,0.08); border:1px solid var(--gx-border); border-radius:10px; padding:12px; text-align:center; min-width:100px; }
#guidex-root .gx-report-stat-label{ font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:0.04em; opacity:0.75; margin-bottom:6px; }
#guidex-root .gx-report-stat-value{ font-size:22px; font-weight:800; }
#guidex-root .gx-report-stat-items{ font-size:13px; line-height:1.6; text-align:left; }

/* === Utility Classes — replace inline style= attributes === */
/* Badges */
#guidex-root .gx-badge{ display:inline-flex; align-items:center; padding:1px 8px; border-radius:4px; font-size:11px; font-weight:700; color:#fff; white-space:nowrap; }
#guidex-root .gx-badge--danger{ background:var(--gx-bad); }
#guidex-root .gx-badge--warn{ background:var(--gx-warn); }
#guidex-root .gx-badge--info{ background:var(--gx-accent); }
#guidex-root .gx-badge--success{ background:var(--gx-good); }
#guidex-root .gx-badge--purple{ background:#9333ea; }
#guidex-root .gx-compare-card{ margin-bottom:8px; }
#guidex-root .gx-compare-card__header{ display:flex; justify-content:space-between; align-items:flex-start; gap:10px; }
#guidex-root .gx-compare-card__title{ font-weight:800; font-size:15px; }
#guidex-root .gx-compare-card__meta{ margin-top:4px; }
#guidex-root .gx-compare-card__actions{ display:flex; gap:6px; }
#guidex-root .gx-compare-subtitle{ margin-bottom:12px; }
#guidex-root .gx-compare-subtitle-sm{ margin-bottom:8px; }
#guidex-root .gx-compare-onet{ display:inline-flex; align-items:center; gap:3px; background:var(--gx-accent); color:#fff; padding:1px 8px; border-radius:4px; font-size:11px; font-weight:600; border:none; cursor:pointer; }
#guidex-root .gx-compare-header{ display:flex; align-items:center; gap:10px; padding:12px 16px; border-bottom:1px solid var(--gx-border); }
#guidex-root .gx-compare-header__title{ margin:0; font-size:17px; }
#guidex-root .gx-compare-header__subtitle{ margin:2px 0 0; }
#guidex-root .gx-compare-empty-subtitle{ margin-bottom:16px; }
#guidex-root .gx-compare-link-action{ display:inline-flex; align-items:center; justify-content:center; text-decoration:none; }
#guidex-root .gx-compare-hub__title{ margin:0 0 6px; }
#guidex-root .gx-compare-hub__subtitle{ margin:0 0 12px; }
#guidex-root .gx-compare-scope-row{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:10px; }
#guidex-root .gx-compare-attr-row{ display:flex; flex-wrap:wrap; gap:8px; }
#guidex-root .gx-compare-scope--active{ border-color:var(--gx-link); box-shadow:0 0 0 1px rgba(37,99,235,.45) inset; }
#guidex-root .gx-compare-attr--on{ border-color:var(--gx-good); color:var(--gx-ink); }
#guidex-root .gx-compare-attr--off{ opacity:.75; }
#guidex-root .gx-compare-work-card{ flex:1; min-width:280px; max-width:420px; padding:0; overflow:hidden; }
#guidex-root .gx-compare-work-card__body{ padding:16px 18px 12px; }
#guidex-root .gx-compare-work-card__header{ display:flex; justify-content:space-between; align-items:flex-start; gap:8px; }
#guidex-root .gx-compare-work-card__title{ font-weight:800; font-size:16px; line-height:1.3; }
#guidex-root .gx-compare-work-card__soc{ font-size:12px; color:var(--gx-muted); margin-top:2px; }
#guidex-root .gx-compare-work-card__remove{ flex-shrink:0; }
#guidex-root .gx-compare-work-card__desc{ margin:8px 0 0; font-size:13px; line-height:1.5; color:var(--gx-fg); opacity:.85; }
#guidex-root .gx-compare-work-card__metrics-wrap{ border-top:1px solid rgba(255,255,255,.08); }
#guidex-root .gx-compare-work-card__metrics{ display:grid; grid-template-columns:1fr 1fr; gap:1px; background:rgba(255,255,255,.06); }
#guidex-root .gx-compare-work-metric{ padding:12px 14px; background:var(--gx-bg); }
#guidex-root .gx-compare-work-metric__label{ font-size:10px; text-transform:uppercase; letter-spacing:.05em; color:var(--gx-muted); font-weight:600; }
#guidex-root .gx-compare-work-metric__value{ margin-top:4px; font-weight:800; }
#guidex-root .gx-compare-work-metric__value--base{ font-size:13px; font-weight:600; color:var(--gx-fg); }
#guidex-root .gx-compare-metric--success{ font-size:16px; color:var(--gx-good); }
#guidex-root .gx-compare-metric--warn{ font-size:13px; color:var(--gx-warn); }
#guidex-root .gx-compare-metric--danger{ font-size:16px; color:var(--gx-bad); }
#guidex-root .gx-compare-metric--info{ font-size:13px; color:var(--gx-accent); }
#guidex-root .gx-compare-metric--link{ font-size:16px; color:var(--gx-link); }
#guidex-root .gx-compare-work-card__footer{ padding:12px 18px; border-top:1px solid rgba(255,255,255,.08); }
#guidex-root .gx-compare-work-card__footer-label{ font-size:11px; text-transform:uppercase; letter-spacing:.05em; color:var(--gx-muted); font-weight:600; margin-bottom:6px; }
#guidex-root .gx-compare-work-card__footer--hidden{ display:none; }
#guidex-root .gx-compare-work-pathway{ font-size:12px; color:var(--gx-link); }
#guidex-root .tc-badge{ cursor:pointer; display:inline-flex; align-items:center; justify-content:center; border:0; padding:1px 6px; border-radius:10px; line-height:1; user-select:none; font-size:11px; font-weight:700; font-family:system-ui,sans-serif; }
#guidex-root .tc-tier-gold{ background:var(--gx-fg); color:#b8860b; }
#guidex-root .tc-tier-grey{ background:var(--gx-muted); color:var(--gx-muted); }
#guidex-root .gx-gc-badge-offset{ margin-left:4px; }
#guidex-root .gx-gc-icon{ font-size:15px; line-height:1; }
#guidex-root .gx-gc-fact-row{ display:flex; justify-content:space-between; align-items:baseline; padding:4px 0; font-size:12px; border-bottom:1px solid var(--gx-border,var(--gx-bg)); }
#guidex-root .gx-gc-fact-label{ font-weight:600; color:var(--gx-muted,#9fb0c7); }
#guidex-root .gx-gc-fact-value{ color:var(--gx-ink,#e8eef8); font-weight:600; }
#guidex-root .gx-gc-fact-annotation{ font-size:10px; opacity:.6; }
#guidex-root .gx-gc-source-note{ font-size:10px; color:var(--gx-muted,#9fb0c7); margin-top:2px; }
#guidex-root .gx-gc-fact-chip{ background:var(--gx-panel2,var(--gx-bg)); border:1px solid var(--gx-border,var(--gx-bg)); border-radius:8px; padding:8px 10px; margin-bottom:4px; }
#guidex-root .gx-gc-fact-chip-text{ font-size:12px; color:var(--gx-ink,#e8eef8); }
#guidex-root .gx-gc-loading{ padding:12px 0; }
#guidex-root .gx-gc-source-row{ padding:6px 10px 0; font-size:11px; color:var(--gx-muted); }
#guidex-root .gx-gc-source-strong{ color:var(--gx-fg); }
#guidex-root .gx-gc-ingredients-toggle{ width:100%; display:flex; align-items:center; justify-content:space-between; padding:8px 10px; background:#fff8e6; border:none; border-bottom:1px solid #d8c48c; cursor:pointer; font-size:12px; font-weight:700; color:#5f4b12; text-align:left; }
#guidex-root .gx-gc-chevron{ transition:transform 0.15s ease; }
#guidex-root .gx-gc-chevron-open{ transform:rotate(180deg); }
#guidex-root .gx-gc-ingredients-wrap{ padding:0 10px 8px; border-bottom:3px solid var(--gx-fg); background:#fffdf6; }
#guidex-root .gx-gc-section{ padding-top:8px; }
#guidex-root .gx-gc-section-title{ font-size:10px; font-weight:900; text-transform:uppercase; letter-spacing:0.08em; color:var(--gx-muted); margin-bottom:4px; }
#guidex-root .gx-gc-body-text{ font-size:12px; line-height:1.45; color:var(--gx-fg); }
#guidex-root .gx-gc-empty-note{ font-size:11px; color:var(--gx-muted); font-style:italic; }
#guidex-root .gx-gc-list{ margin:0; padding-left:16px; font-size:12px; color:var(--gx-fg); line-height:1.45; }
#guidex-root .gx-gc-inferred-body{ font-size:11px; color:var(--gx-muted); line-height:1.45; margin-top:4px; }
#guidex-root .gx-gc-map-empty{ padding:3px 0; font-size:13px; color:var(--gx-muted); border-bottom:1px solid var(--gx-border); }
#guidex-root .gx-gc-details-wrap{ padding:8px 10px; }
#guidex-root .gx-gc-details-title{ font-size:10px; font-weight:900; text-transform:uppercase; letter-spacing:0.06em; margin-bottom:6px; }
#guidex-root .gx-gc-details-title-accepted{ color:#8a6508; }
#guidex-root .gx-gc-details-title-equivalent{ color:var(--gx-good); margin-top:8px; }
#guidex-root .gx-gc-details-title-exam{ color:var(--gx-warn); margin-top:8px; }
#guidex-root .gx-gc-ap-row{ padding:6px 10px; background:#fef9ee; border-radius:4px; margin-bottom:4px; font-size:12px; }
#guidex-root .gx-gc-ap-row-exam{ font-weight:600; }
#guidex-root .gx-gc-ap-row-meta{ color:var(--gx-muted); font-size:11px; }
#guidex-root .gx-gc-actions{ padding:8px 10px; display:flex; gap:6px; flex-wrap:wrap; border-top:1px solid var(--gx-border); }
#guidex-root .gx-gc-btn{ flex:1; min-width:100px; min-height:44px; padding:8px 12px; font-size:12px; font-weight:700; border-radius:4px; cursor:pointer; text-align:center; border:1px solid #b8860b; }
#guidex-root .gx-gc-btn-outline{ background:#fff; color:#b8860b; }
#guidex-root .gx-gc-btn-solid{ background:#b8860b; color:#fff; }
#guidex-root .gx-gc-accred-section{ padding:10px; border-top:3px solid var(--gx-fg); font-size:13px; line-height:1.5; }
#guidex-root .gx-gc-footer{ padding:6px 10px; font-size:10px; color:var(--gx-muted); border-top:5px solid var(--gx-fg); line-height:1.4; }
#guidex-root .gx-gc-error{ color:var(--gx-bad); font-size:13px; padding:12px 10px; }
#guidex-root .gx-gc-ksa-row{ padding:6px 0; border-bottom:1px solid var(--gx-panel2); }
#guidex-root .gx-gc-ksa-title{ font-size:12px; font-weight:700; color:var(--gx-fg); }
#guidex-root .gx-gc-tag{ display:inline-block; font-size:9px; font-weight:700; padding:1px 4px; border-radius:3px; text-transform:uppercase; margin-right:4px; }
#guidex-root .gx-gc-tag-skill{ background:#e8f5e9; color:var(--gx-good); }
#guidex-root .gx-gc-tag-ability{ background:#fce4ec; color:var(--gx-bad); }
#guidex-root .gx-gc-tag-knowledge{ background:#fff3cd; color:#8a5a00; }
#guidex-root .gx-gc-ksa-why{ font-size:11px; color:var(--gx-muted); line-height:1.4; margin-top:2px; }
#guidex-root .gx-gc-summary{ padding:8px 0 4px; border-top:1px solid var(--gx-border); margin-top:6px; }
#guidex-root .gx-gc-rating-wrap{ padding:0 10px; }
#guidex-root .gx-gc-rating-header{ display:flex; justify-content:space-between; align-items:baseline; padding:6px 0; font-size:15px; font-weight:700; border-bottom:3px solid var(--gx-fg); }
#guidex-root .gx-gc-stars{ color:#b8860b; font-size:18px; letter-spacing:2px; }
#guidex-root .gx-gc-section-divider{ border-bottom:8px solid var(--gx-fg); margin:4px 0; }
#guidex-root .gx-gc-taxonomy-heading{ font-size:10px; font-weight:900; text-transform:uppercase; letter-spacing:0.08em; padding:6px 0 2px; border-bottom:1px solid var(--gx-fg); }
#guidex-root .gx-gc-taxonomy-row{ display:flex; justify-content:space-between; align-items:baseline; padding:3px 0; font-size:13px; border-bottom:1px solid var(--gx-border); }
#guidex-root .gx-gc-taxonomy-value{ font-weight:700; text-align:right; }
#guidex-root .gx-gc-taxonomy-tag{ font-size:10px; color:#b8860b; font-style:italic; }
#guidex-root .gx-gc-onet-link{ color:#8a6508; text-decoration:underline; font-size:12px; }
#guidex-root .gx-gc-nf-row{ display:flex; justify-content:space-between; align-items:baseline; padding:3px 0; font-size:13px; border-bottom:1px solid var(--gx-border); }
#guidex-root .gx-gc-nf-label-strong{ font-weight:700; }
#guidex-root .gx-gc-nf-label-regular{ font-weight:400; }
#guidex-root .gx-gc-nf-value-wrap{ display:flex; gap:8px; align-items:baseline; }
#guidex-root .gx-gc-nf-value{ font-weight:700; text-align:right; }
#guidex-root .gx-gc-nf-pct{ font-weight:400; font-size:12px; color:var(--gx-muted); text-align:right; min-width:40px; }
#guidex-root .gx-gc-transfer-row{ display:grid; grid-template-columns:1fr auto; gap:8px; padding:8px 10px; background:var(--gx-panel); border-radius:4px; margin-bottom:4px; font-size:12px; }
#guidex-root .gx-gc-transfer-org{ font-weight:600; }
#guidex-root .gx-gc-transfer-equiv{ color:var(--gx-muted); }
#guidex-root .gx-gc-transfer-pill{ display:inline-block; font-size:9px; font-weight:700; padding:2px 6px; border-radius:10px; color:#fff; align-self:center; }
#guidex-root .gx-gc-transfer-pill-confirmed{ background:var(--gx-good); }
#guidex-root .gx-gc-transfer-pill-inferred{ background:var(--gx-warn); }
#guidex-root .gx-gc-transfer-pill-potential{ background:var(--gx-muted); }
#guidex-root .gx-tm-equiv{ display:flex; align-items:flex-start; gap:6px; }
#guidex-root .gx-tm-equiv-check{ color:var(--gx-good); font-size:14px; margin-top:1px; }
#guidex-root .gx-tm-code{ font-size:12px; font-weight:600; color:var(--gx-accent); }
#guidex-root .gx-tm-equiv-title{ font-size:12px; color:var(--gx-ink); line-height:1.3; margin-top:1px; }
#guidex-root .gx-tm-equiv-note{ font-size:10px; color:var(--gx-muted); }
#guidex-root .gx-tm-empty{ color:var(--gx-muted); font-size:12px; }
#guidex-root .gx-tm-save-status{ font-size:12px; padding:6px 12px; border-radius:6px; margin-bottom:10px; border:1px solid transparent; }
#guidex-root .gx-tm-save-status-ok{ color:var(--gx-good); background:rgba(22,163,74,0.08); border-color:rgba(22,163,74,0.2); }
#guidex-root .gx-tm-save-status-error{ color:var(--gx-bad); background:rgba(220,38,38,0.08); border-color:rgba(220,38,38,0.2); }
#guidex-root .gx-tm-empty-message{ margin-bottom:12px; }
#guidex-root .gx-tm-table-empty{ text-align:center; padding:20px; color:var(--gx-muted); }
#guidex-root .gx-tm-school-cell{ background:rgba(37,99,235,0.06); padding:7px 12px; font-weight:700; font-size:13px; border-top:1px solid var(--gx-border); }
#guidex-root .gx-tm-term{ font-size:11px; margin-top:2px; }
#guidex-root .gx-tm-code-cell{ white-space:nowrap; }
#guidex-root .gx-tm-title-cell{ min-width:140px; font-size:13px; }
#guidex-root .gx-tm-grade-cell{ text-align:center; font-weight:600; }
#guidex-root .gx-tm-credits-cell{ text-align:right; white-space:nowrap; }
#guidex-root .gx-tm-equiv-cell{ min-width:200px; padding:6px 10px; }
#guidex-root .gx-tm-program-chip{ background:rgba(37,99,235,0.1); padding:1px 8px; border-radius:4px; margin-right:6px; }
#guidex-root .gx-tm-breadcrumb{ display:flex; align-items:center; gap:6px; margin-bottom:14px; font-size:12px; color:var(--gx-muted); }
#guidex-root .gx-tm-breadcrumb-link{ color:var(--gx-link); text-decoration:none; }
#guidex-root .gx-tm-header{ display:flex; align-items:flex-start; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-bottom:16px; }
#guidex-root .gx-tm-title{ margin:0 0 4px; }
#guidex-root .gx-tm-heading-line{ font-size:14px; margin-bottom:4px; }
#guidex-root .gx-tm-user-name{ color:var(--gx-ink); }
#guidex-root .gx-tm-arrow{ color:var(--gx-muted); margin:0 6px; }
#guidex-root .gx-tm-inst-name{ color:var(--gx-accent); }
#guidex-root .gx-tm-subtitle{ font-size:12px; color:var(--gx-muted); }
#guidex-root .gx-tm-actions{ display:flex; flex-wrap:wrap; gap:8px; }
#guidex-root .gx-tm-summary{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:14px; }
#guidex-root .gx-tm-stat-card{ flex:1 1 140px; padding:10px 16px; background:rgba(37,99,235,0.08); border:1px solid rgba(37,99,235,0.15); border-radius:10px; text-align:center; }
#guidex-root .gx-tm-stat-value{ font-size:22px; font-weight:700; }
#guidex-root .gx-tm-stat-value-compact{ font-size:17px; }
#guidex-root .gx-tm-stat-value-good{ color:var(--gx-good); }
#guidex-root .gx-tm-stat-value-accent{ color:var(--gx-accent); }
#guidex-root .gx-tm-stat-value-purple{ color:#c084fc; }
#guidex-root .gx-tm-stat-label{ font-size:11px; color:var(--gx-muted); }
#guidex-root .gx-tm-table-wrap{ overflow-x:auto; border:1px solid var(--gx-border); border-radius:10px; margin-bottom:14px; }
#guidex-root .gx-tm-table{ width:100%; margin:0; }
#guidex-root .gx-tm-table-head{ background:var(--gx-panel2); }
#guidex-root .gx-tm-th-code{ width:90px; }
#guidex-root .gx-tm-th-grade{ width:54px; text-align:center; }
#guidex-root .gx-tm-th-credits{ width:56px; text-align:right; }
#guidex-root .gx-tm-th-equiv{ min-width:200px; }
#guidex-root .gx-tm-about{ margin-bottom:12px; }
#guidex-root .gx-tm-about-summary{ cursor:pointer; font-size:13px; color:var(--gx-link); padding:4px 0; }
#guidex-root .gx-tm-about-body{ margin-top:8px; padding:12px 14px; background:var(--gx-panel2); border:1px solid var(--gx-border); border-radius:8px; font-size:13px; line-height:1.65; color:var(--gx-muted); }
#guidex-root .gx-tm-about-p{ margin:0; }
#guidex-root .gx-tm-about-p-spaced{ margin:0 0 8px; }
#guidex-root .gx-tm-strong-ink{ color:var(--gx-ink); }
#guidex-root .gx-tm-footer-actions{ display:flex; flex-wrap:wrap; gap:8px; padding-top:10px; border-top:1px solid var(--gx-border); }
/* Layout utilities */
#guidex-root .gx-no-underline{ text-decoration:none; }
#guidex-root .gx-action-col{ flex:1; min-width:220px; }
#guidex-root .gx-flex-between{ display:flex; justify-content:space-between; align-items:flex-start; gap:10px; }
#guidex-root .gx-flex-row{ display:flex; flex-wrap:wrap; gap:16px; align-items:flex-start; }
#guidex-root .gx-flex-center{ display:flex; align-items:center; gap:8px; }
#guidex-root .gx-w-full{ width:100%; }
/* Spacing */
#guidex-root .gx-mt-sm{ margin-top:6px; }
#guidex-root .gx-mt-md{ margin-top:10px; }
#guidex-root .gx-mt-lg{ margin-top:12px; }
#guidex-root .gx-mb-sm{ margin-bottom:8px; }

/* ── Challenges Scope ── */
#guidex-root .gx-challenges-scope{ max-width:680px; margin:0 auto; }
#guidex-root .gx-challenges-heading{ margin:0 0 4px; }
#guidex-root .gx-challenges-subtext{ margin:0 0 20px; }
#guidex-root .gx-challenges-grid{
  display:grid; grid-template-columns:repeat(auto-fill, minmax(200px, 1fr));
  gap:12px; margin-bottom:12px;
}
#guidex-root .gx-challenge-tile{
  display:flex; flex-direction:column; align-items:center; gap:4px;
  padding:16px 12px; border:1px solid var(--gx-border); border-radius:10px;
  background:var(--gx-panel); color:var(--gx-ink); cursor:pointer;
  transition:border-color .15s, background .15s; text-align:center;
  font-family:inherit; font-size:inherit; line-height:1.4;
}
#guidex-root .gx-challenge-tile:hover{
  border-color:var(--gx-accent); background:color-mix(in srgb, var(--gx-accent) 8%, var(--gx-panel));
}
#guidex-root .gx-challenge-tile--selected{
  border-color:var(--gx-accent); background:color-mix(in srgb, var(--gx-accent) 14%, var(--gx-panel));
}
#guidex-root .gx-challenge-tile-icon{ font-size:24px; }
#guidex-root .gx-challenge-tile-label{ font-weight:700; font-size:14px; }
#guidex-root .gx-challenge-tile-desc{ font-size:12px; color:var(--gx-muted); }
#guidex-root .gx-challenges-counter{ display:block; margin-bottom:12px; }
#guidex-root .gx-challenges-freetext{ margin-bottom:16px; }
#guidex-root .gx-challenges-actions{ display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
/* S3: evidence source badge — shared layout, background set inline per source */
#guidex-root .gx-evidence-source-badge{ display:inline-block; font-size:10px; font-weight:700; padding:1px 6px; border-radius:3px; color:#fff; }
/* S3: badge list row inside selfie ref column */
#guidex-root .gx-selfie-evidence-badge-list{ list-style:none; text-align:center; display:flex; gap:4px; justify-content:center; flex-wrap:wrap; }
/* S4: playlist row primitives — shared across earned, needed, credentials, work rows */
#guidex-root .gx-pl-row{ display:flex; align-items:center; gap:10px; padding:8px 0; border-bottom:1px solid rgba(255,255,255,0.05); flex-wrap:wrap; }
#guidex-root .gx-pl-row-baseline{ align-items:baseline; }
#guidex-root .gx-pl-row__body{ flex:1; min-width:0; }
#guidex-root .gx-pl-row__title{ font-size:14px; font-weight:600; }
#guidex-root .gx-pl-row__title--good{ color:var(--gx-good); }
#guidex-root .gx-pl-row__title--border{ color:var(--gx-border); }
#guidex-root .gx-pl-row__title--warn{ color:var(--gx-warn); }
#guidex-root .gx-pl-row__title--link{ color:var(--gx-link); }
#guidex-root .gx-pl-row__sub{ font-size:12px; color:var(--gx-muted); margin-left:6px; }
#guidex-root .gx-pl-row__meta{ font-size:11px; color:var(--gx-muted); }
#guidex-root .gx-pl-row__meta--gap{ margin-left:8px; }
#guidex-root .gx-pl-row__meta--accent{ color:var(--gx-accent); }
#guidex-root .gx-pl-row__badge{ font-size:11px; font-weight:700; }
#guidex-root .gx-pl-row__badge--good{ color:var(--gx-good); }
#guidex-root .gx-pl-row__badge--warn{ color:var(--gx-warn); }
#guidex-root .gx-pl-row__badge--accent{ color:var(--gx-accent); }
#guidex-root .gx-pl-row__badge--muted{ color:var(--gx-muted); }
/* S4: reorder button — 44px touch target, no background, bordered */
#guidex-root .gx-pl-reorder-btn{ min-width:32px; min-height:44px; padding:0 6px; background:none; border:1px solid rgba(255,255,255,0.15); border-radius:4px; color:var(--gx-muted); cursor:pointer; font-size:12px; line-height:1; display:inline-flex; align-items:center; justify-content:center; }
#guidex-root .gx-pl-emoji-sm{ font-size:14px; }
#guidex-root .gx-pl-emoji-md{ font-size:16px; }
/* S4: suggestion item row */
#guidex-root .gx-pl-suggestion{ display:flex; align-items:center; gap:12px; padding:10px 14px; background:rgba(37,99,235,0.08); border:1px solid rgba(37,99,235,0.18); border-radius:8px; flex-wrap:wrap; }
#guidex-root .gx-pl-suggestion__icon{ font-size:22px; flex-shrink:0; }
#guidex-root .gx-pl-suggestion__body{ flex:1; min-width:0; }
#guidex-root .gx-pl-suggestion__title{ font-size:14px; font-weight:700; color:var(--gx-border); }
#guidex-root .gx-pl-suggestion__desc{ font-size:12px; color:var(--gx-muted); }
#guidex-root .gx-pl-suggestion__action{ flex-shrink:0; }
#guidex-root .gx-pl-card-tight{ margin-bottom:12px; }
#guidex-root .gx-pl-summary-head{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
#guidex-root .gx-pl-summary-kicker{ font-size:13px; color:var(--gx-muted); }
#guidex-root .gx-pl-summary-title{ font-size:16px; font-weight:800; color:var(--gx-border); }
#guidex-root .gx-pl-summary-receiver{ font-size:13px; color:var(--gx-muted); }
#guidex-root .gx-pl-summary-stats{ text-align:right; }
#guidex-root .gx-pl-summary-pct{ font-size:28px; font-weight:900; }
#guidex-root .gx-pl-summary-pct--good{ color:var(--gx-good); }
#guidex-root .gx-pl-summary-pct--warn{ color:var(--gx-warn); }
#guidex-root .gx-pl-summary-pct--accent{ color:var(--gx-accent); }
#guidex-root .gx-pl-summary-meter{ width:100%; height:8px; margin-top:12px; appearance:none; -webkit-appearance:none; border:none; background:transparent; display:block; }
#guidex-root .gx-pl-summary-meter::-webkit-progress-bar{ background:rgba(255,255,255,0.08); border-radius:6px; }
#guidex-root .gx-pl-summary-meter::-webkit-progress-value{ border-radius:6px; }
#guidex-root .gx-pl-summary-meter::-moz-progress-bar{ border-radius:6px; }
#guidex-root .gx-pl-summary-meter--good::-webkit-progress-value{ background:var(--gx-good); }
#guidex-root .gx-pl-summary-meter--warn::-webkit-progress-value{ background:var(--gx-warn); }
#guidex-root .gx-pl-summary-meter--accent::-webkit-progress-value{ background:var(--gx-accent); }
#guidex-root .gx-pl-summary-meter--good::-moz-progress-bar{ background:var(--gx-good); }
#guidex-root .gx-pl-summary-meter--warn::-moz-progress-bar{ background:var(--gx-warn); }
#guidex-root .gx-pl-summary-meter--accent::-moz-progress-bar{ background:var(--gx-accent); }
#guidex-root .gx-pl-context{ margin-top:8px; line-height:1.7; }
#guidex-root .gx-pl-context-list{ margin:0 0 0 18px; padding:0; font-size:0.9rem; line-height:1.7; }
#guidex-root .gx-pl-title-reset{ margin:0 0 12px; }
#guidex-root .gx-pl-hero{ display:flex; align-items:center; gap:14px; margin-bottom:4px; }
#guidex-root .gx-pl-hero-icon{ font-size:36px; }
#guidex-root .gx-pl-hero-heading{ margin:0; }
#guidex-root .gx-pl-hero-goal{ margin-top:2px; }
#guidex-root .gx-pl-section-label{ font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:0.05em; margin:10px 0 6px; }
#guidex-root .gx-pl-section-label--spaced{ margin-top:12px; }
#guidex-root .gx-pl-section-label--good{ color:var(--gx-good); }
#guidex-root .gx-pl-section-label--warn{ color:var(--gx-warn); }
#guidex-root .gx-pl-section-label--link{ color:var(--gx-link); }
#guidex-root .gx-pl-empty-state{ color:var(--gx-good); font-size:14px; }
#guidex-root .gx-pl-empty-state--center{ text-align:center; padding:16px; }
#guidex-root .gx-pl-suggestions-list{ display:flex; flex-direction:column; gap:8px; }
/* phone: suggestion CTA buttons go full width */
#guidex-root[data-guidex-surface='phone'] .gx-pl-suggestion { flex-direction:column; align-items:stretch; }
#guidex-root[data-guidex-surface='phone'] .gx-pl-suggestion .gx-btn { width:100%; justify-content:center; }
#guidex-root .gx-mb-md{ margin-bottom:12px; }
/* Typography */
#guidex-root .gx-bold{ font-weight:700; }
#guidex-root .gx-title-sm{ font-weight:800; font-size:15px; line-height:1.3; }
#guidex-root .gx-title-md{ font-weight:800; font-size:16px; line-height:1.3; }
/* Stat grid for occupation/career cards */
#guidex-root .gx-stat-grid{ display:grid; grid-template-columns:1fr 1fr; gap:1px; background:rgba(255,255,255,0.06); }
#guidex-root .gx-stat-cell{ padding:12px 14px; background:var(--gx-bg); }
#guidex-root .gx-stat-label{ font-size:10px; text-transform:uppercase; letter-spacing:0.05em; color:var(--gx-muted); font-weight:600; }
#guidex-root .gx-stat-value{ font-size:16px; font-weight:800; margin-top:4px; }
#guidex-root .gx-stat-value--sm{ font-size:13px; font-weight:600; margin-top:4px; }
#guidex-root .gx-stat-value--accent{ color:var(--gx-accent); }
#guidex-root .gx-stat-value--good{ color:var(--gx-good); }
#guidex-root .gx-stat-value--warn{ color:var(--gx-warn); }
#guidex-root .gx-stat-value--bad{ color:var(--gx-bad); }
#guidex-root .gx-stat-value--muted{ color:var(--gx-muted); }
/* Description text */
#guidex-root .gx-desc{ margin:8px 0 0; font-size:13px; line-height:1.5; color:var(--gx-fg); opacity:0.85; }
#guidex-root .gx-desc-lg{ margin:8px 0 0; font-size:15px; line-height:1.6; }
/* Occupation card layout */
#guidex-root .gx-occ-card{ flex:1; min-width:280px; max-width:420px; padding:0; overflow:hidden; }
#guidex-root .gx-occ-card-body{ padding:16px 18px 12px; }
#guidex-root .gx-occ-card-section{ padding:12px 18px; border-top:1px solid rgba(255,255,255,0.08); }
#guidex-root .gx-section-label{ font-size:11px; text-transform:uppercase; letter-spacing:0.05em; color:var(--gx-muted); font-weight:600; margin-bottom:6px; }
/* Evidence box (achievement, progress) */
#guidex-root .gx-evidence-box{ background:rgba(37,99,235,0.07); border:1px solid rgba(37,99,235,0.18); padding:8px 12px; border-radius:8px; margin-top:10px; }
/* Inline link flex */
#guidex-root .gx-link-flex{ display:inline-flex; align-items:center; justify-content:center; text-decoration:none; }
#guidex-root .gx-action-col{ flex:1 1 220px; min-width:220px; }
#guidex-root .gx-action-col--sm{ flex:1 1 160px; min-width:160px; }
#guidex-root .gx-summary-col{ flex:1 1 200px; min-width:200px; }
#guidex-root .gx-meta-nowrap{ white-space:nowrap; }
#guidex-root .gx-settings-head{ display:flex; justify-content:space-between; align-items:flex-start; gap:20px; flex-wrap:wrap; margin-bottom:12px; }
#guidex-root .gx-settings-tabs{ display:grid; grid-template-columns:repeat(auto-fit, minmax(120px, 1fr)); gap:6px; flex:1; max-width:680px; min-width:280px; }
#guidex-root .gx-settings-tabs .gx-btn[aria-selected='true']{ background:var(--gx-accent); color:#fff; border-color:var(--gx-accent); }
#guidex-root .gx-settings-title-reset{ margin-top:0; }
#guidex-root .gx-settings-title-spaced{ margin-top:20px; }
#guidex-root .gx-settings-kv-sm{ margin-top:8px; }
#guidex-root .gx-settings-kv-md{ margin-top:10px; }
#guidex-root .gx-settings-row-sm{ margin-top:8px; }
#guidex-root .gx-settings-row-md{ margin-top:12px; }
#guidex-root .gx-settings-log-line{ font-family:monospace; margin-bottom:4px; }
#guidex-root .gx-settings-mono-value{ font-family:monospace; font-size:13px; }
#guidex-root .gx-settings-check-label{ display:inline-flex; align-items:center; gap:10px; cursor:pointer; }
#guidex-root .gx-settings-check-input{ width:20px; height:20px; cursor:pointer; }
#guidex-root .gx-settings-scroll-body{ background:rgba(0,0,0,0.05); border-radius:8px; padding:12px; max-height:240px; overflow-y:auto; }
#guidex-root .gx-settings-meta-strong{ font-weight:600; }
#guidex-root .gx-settings-code{ font-size:12px; }
#guidex-root .gx-settings-install-grid{ display:grid; grid-template-columns:140px minmax(0, 1fr); gap:6px 12px; align-items:center; margin-top:10px; }
#guidex-root .gx-settings-detected{ margin-top:12px; padding:8px 10px; background:rgba(0,0,0,0.04); border-radius:6px; font-size:12px; color:var(--muted); }
#guidex-root .gx-field-select-sm{ height:36px; width:auto; min-width:140px; }
#guidex-root .gx-field-select-md{ height:36px; width:auto; min-width:200px; }
#guidex-root .gx-field-select-lg{ height:34px; width:auto; min-width:320px; }
#guidex-root .gx-field-input-mono{ height:36px; width:min(100%, 300px); font-family:monospace; font-size:13px; }
#guidex-root .gx-field-input-mono-wide{ height:36px; width:min(100%, 400px); font-family:monospace; font-size:13px; }
#guidex-root .gx-field-input-sm{ height:34px; width:min(100%, 220px); font-size:13px; }
#guidex-root .gx-field-input-md{ height:34px; width:min(100%, 320px); font-size:13px; }

#guidex-root[data-guidex-surface='phone'] .gx-settings-tabs,
#guidex-root[data-guidex-surface='tablet'] .gx-settings-tabs{
  grid-template-columns:repeat(2, minmax(0, 1fr));
  min-width:0;
  max-width:none;
  width:100%;
}

#guidex-root[data-guidex-surface='phone'] .gx-settings-install-grid,
#guidex-root[data-guidex-surface='tablet'] .gx-settings-install-grid{
  grid-template-columns:minmax(0, 1fr);
}

#guidex-root[data-guidex-surface='phone'] .gx-action-col,
#guidex-root[data-guidex-surface='phone'] .gx-action-col--sm,
#guidex-root[data-guidex-surface='phone'] .gx-summary-col,
#guidex-root[data-guidex-surface='tablet'] .gx-action-col,
#guidex-root[data-guidex-surface='tablet'] .gx-summary-col{
  min-width:0;
  width:100%;
}

#guidex-root[data-guidex-surface='phone'] .gx-field-select-sm,
#guidex-root[data-guidex-surface='phone'] .gx-field-select-md,
#guidex-root[data-guidex-surface='phone'] .gx-field-select-lg,
#guidex-root[data-guidex-surface='phone'] .gx-field-input-mono,
#guidex-root[data-guidex-surface='phone'] .gx-field-input-mono-wide,
#guidex-root[data-guidex-surface='phone'] .gx-field-input-sm,
#guidex-root[data-guidex-surface='phone'] .gx-field-input-md,
#guidex-root[data-guidex-surface='tablet'] .gx-field-select-lg,
#guidex-root[data-guidex-surface='tablet'] .gx-field-input-mono-wide{
  min-width:0;
  width:100%;
}

#guidex-root[data-guidex-surface='phone'] [style*='min-width:320px'],
#guidex-root[data-guidex-surface='phone'] [style*='min-width:220px'],
#guidex-root[data-guidex-surface='phone'] [style*='min-width:200px'],
#guidex-root[data-guidex-surface='phone'] [style*='min-width:180px'],
#guidex-root[data-guidex-surface='phone'] [style*='min-width:160px'],
#guidex-root[data-guidex-surface='tablet'] [style*='min-width:320px']{
  min-width:0 !important;
}

/* ── Transfer / Achievements Wizard ─────────────────────────────────────── */
/* Shell header */
#guidex-root .gx-tr-header-row{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-bottom:6px; }
#guidex-root .gx-tr-header-title{ margin:0; flex-shrink:0; }
#guidex-root .gx-tr-header-actions{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin-left:auto; }
#guidex-root .gx-tr-upload-label{ cursor:pointer; white-space:nowrap; }
#guidex-root .gx-tr-ai-status{ font-size:12px; color:var(--gx-muted); }
#guidex-root .gx-tr-step-row{ display:flex; flex-wrap:wrap; gap:6px; }
#guidex-root .gx-tr-step-badge{ font-size:10px; background:var(--gx-success,green); color:#fff; border-radius:50%; padding:1px 5px; }
#guidex-root .gx-tr-why-details{ margin-bottom:10px; }
#guidex-root .gx-tr-why-summary{ cursor:pointer; font-size:13px; font-weight:600; color:var(--gx-link); list-style:disclosure-closed; }
#guidex-root .gx-tr-why-panel{ margin-top:8px; padding:14px 16px; background:var(--gx-panel2,var(--gx-bg)); border:1px solid rgba(255,255,255,0.12); border-radius:10px; display:flex; flex-direction:column; gap:9px; font-size:13px; color:var(--gx-ink); line-height:1.5; }
#guidex-root .gx-btn--warn{ color:var(--gx-warn); border-color:var(--gx-warn); }
/* Nav buttons */
#guidex-root .gx-tr-nav-prev,
#guidex-root .gx-tr-nav-next{ min-width:100px; }
#guidex-root .gx-tr-nav-finish{ min-width:140px; }
/* Form layouts */
#guidex-root .gx-tr-form-grid{ display:grid; grid-template-columns:1fr 1fr; gap:8px 12px; margin-top:12px; }
#guidex-root .gx-tr-form-lbl{ font-weight:600; margin-bottom:4px; display:block; }
#guidex-root .gx-tr-input-full{ width:100%; }
#guidex-root .gx-tr-select-full{ width:100%; height:36px; }
/* College / school layouts */
#guidex-root .gx-tr-school-banner{ display:flex; align-items:center; gap:8px; margin-bottom:12px; padding:10px 14px; background:rgba(37,99,235,0.08); border:1px solid rgba(37,99,235,0.15); border-radius:8px; }
#guidex-root .gx-tr-school-heading{ display:flex; align-items:center; gap:8px; padding:6px 2px; font-weight:700; font-size:14px; }
#guidex-root .gx-tr-school-group{ margin-bottom:16px; }
#guidex-root .gx-tr-table-scroll{ overflow-x:auto; border:1px solid var(--gx-border,var(--gx-bg)); border-radius:8px; }
#guidex-root .gx-tr-transcript-status{ margin-bottom:12px; padding:8px 12px; background:rgba(37,99,235,0.08); border:1px solid rgba(37,99,235,0.2); border-radius:8px; font-size:13px; display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
#guidex-root .gx-tr-transcript-ok{ margin-top:8px; padding:8px 12px; background:rgba(37,99,235,0.1); border:1px solid rgba(37,99,235,0.25); border-radius:8px; font-size:13px; }
#guidex-root .gx-tr-manual-entry{ display:none; margin-top:12px; padding:12px; background:rgba(255,255,255,0.03); border:1px solid rgba(255,255,255,0.1); border-radius:8px; }
/* Intent panel */
#guidex-root .gx-tr-intent-label{ font-size:13px; font-weight:600; display:block; margin-bottom:6px; }
#guidex-root .gx-tr-intent-field-label{ font-size:13px; font-weight:600; display:block; margin-bottom:4px; }
/* Resume section */
#guidex-root .gx-tr-resume-panel{ border-radius:8px; padding:14px 16px; margin-bottom:16px; }
#guidex-root .gx-tr-resume-panel--active{ background:rgba(37,99,235,0.06); border:1px solid rgba(37,99,235,0.14); }
#guidex-root .gx-tr-resume-panel--empty{ background:rgba(255,255,255,0.03); border:1px dashed rgba(255,255,255,0.15); }
#guidex-root .gx-tr-resume-inner{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
#guidex-root .gx-tr-resume-icon{ font-size:20px; }
#guidex-root .gx-tr-resume-title{ font-weight:600; font-size:14px; color:var(--gx-fg); }
#guidex-root .gx-tr-resume-sub{ font-size:12px; color:var(--gx-muted); }
/* Life history */
#guidex-root .gx-tr-life-cat{ display:flex; align-items:center; gap:10px; padding:10px 14px; border-radius:8px; cursor:pointer; background:rgba(255,255,255,0.03); border:1px solid rgba(255,255,255,0.08); margin-bottom:4px; }
#guidex-root .gx-tr-life-cat-check{ width:18px; height:18px; accent-color:var(--gx-primary,var(--gx-accent)); }
#guidex-root .gx-tr-life-period-opts{ display:flex; flex-wrap:wrap; gap:4px 0; margin-bottom:8px; }
#guidex-root .gx-tr-life-period-label{ display:inline-flex; align-items:center; gap:4px; margin-right:12px; white-space:nowrap; }
#guidex-root .gx-tr-life-period-check{ accent-color:var(--gx-primary,var(--gx-accent)); }
#guidex-root .gx-tr-life-entry-row{ display:flex; align-items:flex-start; gap:8px; padding:10px 0; border-bottom:1px solid rgba(255,255,255,0.06); }
#guidex-root .gx-tr-life-entry-body{ flex:1; }
#guidex-root .gx-tr-inferred{ margin-top:16px; padding:14px; background:rgba(37,99,235,0.06); border:1px solid rgba(37,99,235,0.15); border-radius:8px; }
#guidex-root .gx-tr-inferred-title{ font-weight:600; font-size:14px; margin-bottom:8px; color:var(--gx-primary,var(--gx-accent)); }
#guidex-root .gx-tr-inferred-row{ display:flex; align-items:center; gap:8px; padding:8px 0; border-bottom:1px solid rgba(255,255,255,0.06); }
#guidex-root .gx-tr-inferred-info{ flex:1; }
#guidex-root .gx-tr-life-summary-box{ margin-top:14px; padding:12px; background:rgba(22,163,74,0.06); border:1px solid rgba(22,163,74,0.15); border-radius:8px; }
#guidex-root .gx-tr-life-summary-title{ font-weight:600; font-size:14px; color:var(--gx-success,var(--gx-good)); }
#guidex-root .gx-tr-drill-add-panel{ margin-top:12px; padding:14px; background:rgba(255,255,255,0.02); border:1px solid rgba(255,255,255,0.08); border-radius:8px; }
#guidex-root .gx-tr-drill-header{ display:flex; justify-content:space-between; align-items:center; margin-bottom:4px; }
#guidex-root .gx-tr-life-cat-summary{ margin-top:10px; padding:10px 14px; background:rgba(255,255,255,0.03); border-radius:8px; }
#guidex-root .gx-tr-life-cat-row{ display:flex; justify-content:space-between; padding:4px 0; }
/* Credit summary tiles */
#guidex-root .gx-tr-tiles{ display:flex; flex-wrap:wrap; gap:12px; margin-bottom:14px; }
#guidex-root .gx-tr-tile{ flex:1 1 200px; padding:12px 16px; border-radius:10px; text-align:center; }
#guidex-root .gx-tr-tile--green{ background:rgba(74,222,128,0.08); border:1px solid rgba(74,222,128,0.15); }
#guidex-root .gx-tr-tile--blue{ background:rgba(96,165,250,0.08); border:1px solid rgba(96,165,250,0.15); }
#guidex-root .gx-tr-tile--yellow{ background:rgba(251,191,36,0.08); border:1px solid rgba(251,191,36,0.15); }
#guidex-root .gx-tr-tile--purple{ background:rgba(192,132,252,0.08); border:1px solid rgba(192,132,252,0.15); }
#guidex-root .gx-tr-tile--accent{ background:rgba(37,99,235,0.08); border:1px solid rgba(37,99,235,0.15); }
#guidex-root .gx-tr-tile-num{ font-size:24px; font-weight:700; }
#guidex-root .gx-tr-tile-num--green{ color:var(--gx-good); }
#guidex-root .gx-tr-tile-num--blue{ color:var(--gx-accent); }
#guidex-root .gx-tr-tile-num--yellow{ color:var(--gx-warn); }
#guidex-root .gx-tr-tile-num--purple{ color:#c084fc; }
#guidex-root .gx-tr-tile-num--success{ color:var(--gx-success,var(--gx-good)); }
#guidex-root .gx-tr-tile-label{ font-size:11px; color:var(--gx-muted); }
/* Assessment panel */
#guidex-root .gx-tr-assess-summary{ cursor:pointer; font-weight:600; font-size:14px; padding:10px 12px; background:rgba(255,255,255,0.03); border-radius:8px; display:flex; align-items:center; gap:8px; }
#guidex-root .gx-tr-assess-badge{ margin-left:auto; font-size:11px; font-weight:500; padding:2px 8px; border-radius:10px; background:rgba(37,99,235,0.12); color:var(--gx-link); }
#guidex-root .gx-tr-assess-body{ padding:4px 14px; }
#guidex-root .gx-tr-assess-pathway{ font-size:12px; color:var(--gx-link); padding:6px 10px; margin-bottom:8px; background:rgba(37,99,235,0.06); border-radius:6px; border-left:3px solid rgba(37,99,235,0.4); }
#guidex-root .gx-tr-assess-item-row{ display:flex; justify-content:space-between; align-items:center; padding:5px 0; border-bottom:1px solid rgba(255,255,255,0.04); }
#guidex-root .gx-tr-assess-credit-note{ color:var(--gx-success,var(--gx-good)); font-weight:600; }
#guidex-root .gx-tr-td-code{ white-space:nowrap; font-family:monospace; font-size:12px; }
#guidex-root .gx-tr-td-title{ min-width:140px; }
#guidex-root .gx-tr-td-nowrap{ white-space:nowrap; }
#guidex-root .gx-tr-td-grade{ white-space:nowrap; text-align:center; font-weight:600; }
#guidex-root .gx-tr-td-cr{ text-align:right; }
#guidex-root .gx-tr-td-center{ text-align:center; }
#guidex-root .gx-tr-transcript-label{ color:var(--gx-accent); font-weight:600; }
#guidex-root .gx-tr-school-banner-icon{ font-size:18px; }
#guidex-root .gx-tr-school-banner-name{ font-weight:600; }
#guidex-root .gx-tr-school-banner{ margin-bottom:10px; }
#guidex-root .gx-tr-agent-panel{ background:linear-gradient(135deg, rgba(37,99,235,0.12), rgba(139,92,246,0.08)); border:1px solid rgba(37,99,235,0.25); border-radius:12px; padding:18px 20px; margin-bottom:16px; }
#guidex-root .gx-tr-agent-inner{ display:flex; align-items:flex-start; gap:12px; }
#guidex-root .gx-tr-agent-icon{ font-size:28px; }
#guidex-root .gx-tr-agent-body{ flex:1; }
#guidex-root .gx-tr-agent-title{ margin:0 0 8px; font-size:15px; }
#guidex-root .gx-tr-agent-intro{ font-size:13px; color:var(--gx-fg); margin:0 0 10px; line-height:1.6; }
#guidex-root .gx-tr-agent-list{ font-size:13px; margin:0 0 12px; padding-left:20px; list-style:none; }
#guidex-root .gx-tr-agent-actions{ display:flex; flex-wrap:wrap; gap:8px; }
#guidex-root .gx-tr-fortknox{ display:flex; align-items:center; gap:10px; padding:8px 12px; margin-bottom:12px; background:rgba(250,200,60,0.07); border:1px solid rgba(250,200,60,0.22); border-radius:8px; font-size:12px; color:var(--gx-ink); }
/* Suggestion cards (review step) */
#guidex-root .gx-tr-suggestion-card{ border-radius:10px; padding:14px 16px; margin-bottom:10px; }
#guidex-root .gx-tr-suggestion-card--green{ background:rgba(74,222,128,0.06); border:1px solid rgba(74,222,128,0.2); }
#guidex-root .gx-tr-suggestion-card--blue{ background:rgba(96,165,250,0.06); border:1px solid rgba(96,165,250,0.2); }
#guidex-root .gx-tr-suggestion-card--yellow{ background:rgba(251,191,36,0.06); border:1px solid rgba(251,191,36,0.2); }
#guidex-root .gx-tr-suggestion-card--purple{ background:rgba(192,132,252,0.06); border:1px solid rgba(192,132,252,0.2); }
#guidex-root .gx-tr-suggestion-head{ display:flex; align-items:center; gap:8px; margin-bottom:8px; }
#guidex-root .gx-tr-suggestion-icon{ font-size:20px; }
#guidex-root .gx-tr-suggestion-title{ margin:0; font-size:14px; }
#guidex-root .gx-tr-suggestion-badge{ margin-left:auto; font-size:11px; padding:2px 8px; border-radius:10px; font-weight:600; }
#guidex-root .gx-tr-suggestion-badge--green{ background:rgba(74,222,128,0.15); color:var(--gx-good); }
#guidex-root .gx-tr-suggestion-badge--blue{ background:rgba(96,165,250,0.15); color:var(--gx-accent); }
#guidex-root .gx-tr-suggestion-badge--yellow{ background:rgba(251,191,36,0.15); color:var(--gx-warn); }
#guidex-root .gx-tr-suggestion-badge--purple{ background:rgba(192,132,252,0.15); color:#c084fc; }
#guidex-root .gx-tr-suggestion-body{ font-size:13px; margin:0 0 6px; color:var(--gx-fg); }
#guidex-root .gx-tr-suggestion-list{ font-size:12px; margin:4px 0 0; padding-left:18px; color:var(--gx-fg); }
/* Review section — AI block, narrative, portfolio */
#guidex-root .gx-tr-ai-section{ border-top:1px solid var(--gx-border); padding-top:16px; margin-top:8px; }
#guidex-root .gx-tr-ai-section-head{ display:flex; align-items:center; gap:8px; margin-bottom:8px; }
#guidex-root .gx-tr-ai-section-title{ margin:0; font-size:14px; }
#guidex-root .gx-tr-narrative-section{ margin-top:20px; border-top:1px solid var(--gx-border); padding-top:16px; }
#guidex-root .gx-tr-narrative-area{ width:100%; resize:vertical; font-size:14px; line-height:1.6; min-height:160px; box-sizing:border-box; }
#guidex-root .gx-tr-narrative-row{ display:flex; gap:8px; align-items:center; margin-top:8px; flex-wrap:wrap; }
#guidex-root .gx-tr-narrative-saved{ display:none; color:var(--gx-success); font-size:12px; margin-left:4px; }
#guidex-root .gx-tr-narrative-ai-status{ display:none; font-size:12px; color:var(--gx-muted); margin-left:4px; }
#guidex-root .gx-tr-portfolio-section{ margin-top:20px; border-top:1px solid var(--gx-border); padding-top:16px; }
#guidex-root .gx-tr-portfolio-actions{ display:flex; flex-wrap:wrap; gap:8px; }
#guidex-root .gx-tr-portfolio-link{ text-decoration:none; display:inline-flex; align-items:center; justify-content:center; }
/* Misc helpers */
#guidex-root .gx-tr-odata-status{ font-size:11px; color:var(--gx-muted); margin-top:4px; display:none; }
#guidex-root .gx-tr-empty-row-hint{ text-align:center; padding:14px; color:var(--gx-muted); }
#guidex-root .gx-ach-match-panel{ margin:14px 0 16px; padding:12px 14px; border:1px solid rgba(37,99,235,0.16); border-radius:10px; background:rgba(37,99,235,0.05); }
#guidex-root .gx-ach-match-title{ margin:0 0 6px; }
#guidex-root .gx-ach-match-empty{ margin:0; }
#guidex-root .gx-ach-match-intro{ margin:0 0 10px; }
#guidex-root .gx-ach-match-row{ display:flex; justify-content:space-between; gap:12px; align-items:center; padding:10px 0; border-bottom:1px solid rgba(255,255,255,0.05); }
#guidex-root .gx-ach-match-main{ min-width:0; }
#guidex-root .gx-ach-match-name{ font-weight:600; }
#guidex-root .gx-ach-match-side{ display:flex; align-items:center; gap:10px; flex-shrink:0; }
#guidex-root .gx-ach-match-pct{ font-size:12px; font-weight:700; color:var(--gx-link); }
#guidex-root .gx-ach-org-empty{ color:var(--gx-muted); font-size:13px; margin:8px 0; }
#guidex-root .gx-ach-org-table{ font-size:13px; border-collapse:collapse; width:100%; }
#guidex-root .gx-ach-org-overlay{ position:fixed; inset:0; background:rgba(0,0,0,0.55); display:flex; align-items:center; justify-content:center; z-index:9999; backdrop-filter:blur(3px); padding:16px; }
#guidex-root .gx-ach-org-modal{ background:var(--gx-panel,var(--gx-panel2)); border:1px solid var(--gx-border,var(--gx-bg)); width:100%; max-width:420px; border-radius:10px; box-shadow:0 16px 64px rgba(0,0,0,0.4); position:relative; }
#guidex-root .gx-ach-org-head{ display:flex; justify-content:space-between; align-items:center; padding:14px 18px; border-bottom:1px solid var(--gx-border,var(--gx-bg)); }
#guidex-root .gx-ach-org-title{ font-weight:700; font-size:15px; }
#guidex-root .gx-ach-org-close{ background:none; border:none; color:var(--ink,#fff); font-size:18px; cursor:pointer; padding:2px 6px; }
#guidex-root .gx-ach-org-body{ padding:18px; }
#guidex-root .gx-ach-org-key{ font-weight:600; padding:4px 12px 4px 0; color:var(--gx-muted); white-space:nowrap; }
#guidex-root .gx-ach-org-val{ padding:4px 0; }
#guidex-root .gx-ach-org-chip-row{ display:flex; flex-wrap:wrap; gap:6px; margin-top:6px; font-size:11px; line-height:1.4; }
#guidex-root .gx-ach-org-chip{ padding:2px 8px; border-radius:999px; text-decoration:none; }
#guidex-root .gx-ach-org-chip--id{ background:rgba(148,163,184,0.12); color:var(--gx-muted); }
#guidex-root .gx-ach-org-chip--domain{ background:rgba(37,99,235,0.12); color:var(--gx-link,var(--gx-accent)); }
#guidex-root .gx-ach-org-chip--catalog{ background:rgba(16,185,129,0.12); color:#86efac; }
#guidex-root .gx-ach-org-chip--atlas{ background:rgba(245,158,11,0.12); color:#fcd34d; }
#guidex-root .gx-ach-upload-status{ display:block; width:100%; min-height:16px; font-size:12px; text-align:right; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; color:var(--gx-muted); }
#guidex-root .gx-ach-upload-status[data-stage='success']{ color:var(--gx-success,var(--gx-good)); }
#guidex-root .gx-ach-upload-status[data-stage='error'],
#guidex-root .gx-ach-upload-status[data-stage='saved_with_error']{ color:var(--gx-warn,var(--gx-warn)); }
#guidex-root .gx-ach-upload-status[data-stage='uploading']{ color:var(--gx-link,var(--gx-accent)); }
#guidex-root .gx-ach-clear-demo{ white-space:nowrap; color:var(--gx-warn); border-color:var(--gx-warn); }
#guidex-root .gx-ach-ps-head{ display:flex; justify-content:space-between; align-items:flex-start; gap:12px; flex-wrap:wrap; margin-bottom:10px; }
#guidex-root .gx-ach-ps-title{ margin:0; }
#guidex-root .gx-ach-ps-subtitle{ margin:4px 0 0; }
#guidex-root .gx-ach-ps-actions{ display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
#guidex-root .gx-ach-ps-textarea{ width:100%; box-sizing:border-box; resize:vertical; font-size:14px; line-height:1.6; padding:10px 12px; border:1px solid var(--gx-border,rgba(0,0,0,0.15)); border-radius:8px; background:var(--gx-input-bg,var(--gx-bg)); color:var(--gx-ink); }
#guidex-root .gx-ach-evidence-attached{ margin-top:6px; font-size:12px; color:var(--gx-success,var(--gx-good)); }
#guidex-root .gx-evidence-ai-status{ font-size:11px; align-self:center; color:var(--gx-muted); }
#guidex-root .gx-evidence-ai-status.is-muted{ color:var(--gx-muted); }
#guidex-root .gx-evidence-ai-status.is-warn{ color:var(--gx-warn); }
#guidex-root .gx-evidence-ai-status.is-good{ color:var(--gx-good); }
#guidex-root .gx-ai-suggestion-status{ font-size:12px; color:var(--gx-muted); }
#guidex-root .gx-ai-suggestion-status.is-muted{ color:var(--gx-muted); }
#guidex-root .gx-ai-suggestion-status.is-warn{ color:var(--gx-warn); }
#guidex-root .gx-ai-suggestion-status.is-good{ color:var(--gx-good); }
#guidex-root .gx-ach-link{ color:var(--gx-link,var(--gx-accent)); }
#guidex-root .gx-ach-why-details{ width:min(100%, 420px); }
#guidex-root .gx-ach-summary-details{ margin-bottom:14px; }
#guidex-root .gx-ach-summary-summary{ cursor:pointer; color:var(--gx-link,var(--gx-accent)); font-size:13px; }
#guidex-root .gx-ach-review-details{ margin-top:12px; }
#guidex-root .gx-ach-review-summary{ cursor:pointer; font-size:13px; color:var(--gx-link,var(--gx-accent)); }
#guidex-root .gx-ach-review-panel{ margin-top:8px; padding:12px; border:1px solid rgba(245,158,11,0.25); background:rgba(245,158,11,0.08); border-radius:8px; font-size:13px; }
#guidex-root .gx-ach-review-note{ margin-bottom:8px; }
#guidex-root .gx-ach-review-overflow{ margin-top:8px; font-size:12px; color:var(--gx-muted); }
#guidex-root .gx-ach-inline-details{ margin-top:6px; }
#guidex-root .gx-ach-inline-summary{ cursor:pointer; font-size:13px; color:var(--gx-link,var(--gx-accent)); padding:6px 0; }
#guidex-root .gx-ach-transcript-file{ color:var(--gx-border); }
#guidex-root .gx-ach-org-link{ cursor:pointer; text-decoration:underline; text-decoration-style:dotted; text-underline-offset:3px; color:inherit; }

/* ── Atlas Session Screen (gx-session-*) ────────────────────────────────────
   Full-viewport call layout. Atlas avatar on top, user pip corner,
   transcript scrolls quietly, controls at bottom.
   Primary surface: phone. Desktop degrades gracefully.
   ───────────────────────────────────────────────────────────────────────── */
#guidex-root .gx-session-root{
  display:flex; flex-direction:column; align-items:center;
  min-height:calc(var(--gx-host-vh,100vh) - 80px);
  padding:0 0 env(safe-area-inset-bottom,0);
  position:relative; overflow:hidden;
  background:var(--gx-bg);
}
#guidex-root .gx-session-atlas-stage{
  display:flex; flex-direction:column; align-items:center;
  padding:24px 16px 8px;
  flex:0 0 auto;
}
#guidex-root .gx-session-atlas-frame{
  position:relative; width:160px; height:160px;
  display:flex; align-items:center; justify-content:center;
}
/* Pulse ring — animates when Atlas is speaking (class added via JS: is-speaking) */
#guidex-root .gx-session-atlas__ring{
  position:absolute; inset:-8px;
  border-radius:50%;
  border:3px solid var(--gx-accent);
  opacity:0;
  transition:opacity 0.3s;
}
#guidex-root .gx-session-atlas-frame.is-speaking .gx-session-atlas__ring{
  opacity:1;
  animation:gx-atlas-pulse 1.8s ease-in-out infinite;
}
@keyframes gx-atlas-pulse{
  0%,100%{ box-shadow:0 0 0 0 color-mix(in srgb, var(--gx-accent) 35%, transparent); }
  50%{     box-shadow:0 0 0 18px color-mix(in srgb, var(--gx-accent) 0%, transparent); }
}
#guidex-root .gx-session-atlas__gif{
  width:148px; height:148px; object-fit:cover;
  border-radius:50%;
  border:3px solid var(--gx-border);
}
#guidex-root .gx-session-atlas-name{
  margin-top:8px; font-size:13px; font-weight:700;
  color:var(--gx-muted); letter-spacing:0.05em; text-transform:uppercase;
}
/* Transcript shell — collapsed by default; toggle to recall the conversation */
#guidex-root .gx-session-transcript-shell{
  width:100%; max-width:560px;
}
#guidex-root .gx-session-transcript-toggle{
  display:block; width:100%; text-align:center;
  font-size:12px; color:var(--gx-muted);
  padding:6px 0; cursor:pointer;
  list-style:none; outline:none;
  user-select:none;
}
#guidex-root .gx-session-transcript-toggle::-webkit-details-marker{ display:none; }
#guidex-root .gx-session-transcript-toggle:hover{ color:var(--gx-ink); }
#guidex-root .gx-session-transcript-shell[open] .gx-session-transcript-toggle{
  color:var(--gx-accent);
}
/* Transcript — quiet rolling log */
#guidex-root .gx-session-transcript{
  flex:1 1 auto; width:100%; max-width:560px;
  overflow-y:auto; padding:8px 20px;
  display:flex; flex-direction:column; gap:10px;
}
#guidex-root .gx-session-transcript__message{
  display:flex; flex-direction:column; gap:2px;
  padding:10px 14px; border-radius:12px;
  font-size:15px; line-height:1.5;
  max-width:88%;
}
#guidex-root .gx-session-transcript__message--atlas{
  align-self:flex-start;
  background:var(--gx-panel); border:1px solid var(--gx-border);
}
#guidex-root .gx-session-transcript__message--person{
  align-self:flex-end;
  background:var(--gx-accent); color:var(--gx-btn-ink);
}
#guidex-root .gx-session-transcript__speaker{
  font-size:11px; font-weight:700; color:var(--gx-muted);
  text-transform:uppercase; letter-spacing:0.04em;
}
/* User presence pip — bottom-right corner */
#guidex-root .gx-session-user-pip{
  position:absolute; bottom:160px; right:16px;
  width:64px; height:64px; border-radius:50%;
  background:var(--gx-panel2); border:2px solid var(--gx-border);
  display:flex; align-items:center; justify-content:center;
  font-size:28px; overflow:hidden;
  cursor:pointer;
}
#guidex-root .gx-session-user-pip video{
  width:100%; height:100%; object-fit:cover;
}
/* Oath / consent notice */
#guidex-root .gx-session-oath{
  font-size:12px; color:var(--gx-muted); text-align:center;
  padding:0 20px; margin:0; max-width:480px;
}
/* Text input row */
#guidex-root .gx-session-input-row{
  display:flex; gap:8px; align-items:center;
  width:100%; max-width:560px; padding:10px 16px;
  background:var(--gx-panel); border-top:1px solid var(--gx-border);
}
#guidex-root .gx-session-input{
  flex:1 1 auto; height:44px; padding:0 14px;
  border:1px solid var(--gx-border); border-radius:var(--gx-radius);
  background:var(--gx-bg); color:var(--gx-ink);
  font-size:15px; outline:none;
}
#guidex-root .gx-session-input:focus-visible{ border-color:var(--gx-accent); box-shadow:0 0 0 2px color-mix(in srgb, var(--gx-accent) 25%, transparent); }
#guidex-root .gx-session-send-btn{ flex:0 0 auto; height:44px; }
/* Session control toolbar */
#guidex-root .gx-session-controls{
  display:flex; justify-content:center; align-items:center; gap:20px;
  padding:12px 20px;
  width:100%;
}
#guidex-root .gx-session-ctrl-btn{
  display:inline-flex; align-items:center; justify-content:center;
  width:52px; height:52px; border-radius:50%;
  background:var(--gx-panel2); border:1px solid var(--gx-border);
  font-size:22px; cursor:pointer; color:var(--gx-ink);
  text-decoration:none;
  transition:background 0.15s, border-color 0.15s;
}
#guidex-root .gx-session-ctrl-btn:hover{ background:var(--gx-panel); border-color:var(--gx-accent); }
#guidex-root .gx-session-ctrl-btn:focus-visible{ outline:2px solid var(--gx-accent); outline-offset:2px; }
#guidex-root .gx-session-ctrl-btn.is-active{ background:var(--gx-accent); border-color:var(--gx-accent); color:var(--gx-btn-ink); }
#guidex-root .gx-session-ctrl-btn--end{ background:var(--gx-danger,#dc2626); border-color:var(--gx-danger,#dc2626); color:#fff; }
#guidex-root .gx-session-ctrl-btn--end:hover{ opacity:0.85; }
#guidex-root .gx-session-ctrl-btn--disabled{ opacity:0.38; cursor:not-allowed; }
/* Back row */
#guidex-root .gx-session-back-row{
  display:flex; flex-direction:column; align-items:center; gap:4px;
  padding:8px 20px 16px; text-align:center;
}
/* Session launch CTA on home screen */
#guidex-root .gx-home-session-cta{
  display:flex; align-items:center; justify-content:center;
  padding:12px 16px;
}
#guidex-root .gx-home-session-btn{
  display:inline-flex; align-items:center; gap:10px;
  padding:12px 24px; border-radius:var(--gx-radius);
  background:var(--gx-accent); color:var(--gx-btn-ink);
  font-size:15px; font-weight:700; text-decoration:none;
  border:none; cursor:pointer;
  transition:opacity 0.15s;
}
#guidex-root .gx-home-session-btn:hover{ opacity:0.88; }
#guidex-root .gx-home-session-btn:focus-visible{ outline:2px solid var(--gx-accent); outline-offset:3px; }
#guidex-root .gx-home-session-btn__img{
  width:32px; height:32px; border-radius:50%; object-fit:cover;
}
#guidex-root .gx-home-session-meta{ margin-top:4px; }
#guidex-root .gx-ach-school-count{ font-size:12px; font-weight:400; color:var(--gx-muted); margin-left:6px; }
#guidex-root .gx-ach-school-banner-compact{ display:flex; align-items:center; gap:8px; margin-bottom:10px; padding:8px 12px; background:rgba(37,99,235,0.08); border:1px solid rgba(37,99,235,0.15); border-radius:8px; }
#guidex-root .gx-ach-school-banner-title{ font-weight:600; font-size:14px; }
#guidex-root .gx-ach-stack-gap{ margin-top:8px; }
#guidex-root .gx-ach-stack-gap-sm{ margin-top:6px; }
#guidex-root .gx-ach-ai-card{ background:rgba(37,99,235,0.07); border:1px solid rgba(37,99,235,0.18); border-radius:8px; padding:10px 14px; margin-bottom:6px; display:flex; justify-content:space-between; align-items:center; gap:10px; }
#guidex-root .gx-ach-ai-card-main{ flex:1; font-size:13px; }
#guidex-root .gx-ach-ai-card-title{ font-weight:600; }
#guidex-root .gx-ach-ai-card-date{ color:var(--gx-muted); margin-left:8px; font-size:12px; }
#guidex-root .gx-ach-ai-card-tag{ color:var(--gx-muted); margin-left:6px; font-size:11px; border:1px solid rgba(255,255,255,0.12); border-radius:4px; padding:1px 6px; }
#guidex-root .gx-ach-ai-card-claim{ margin-top:3px; }
#guidex-root .gx-ach-ai-card-context{ margin-top:3px; font-size:12px; color:var(--gx-muted); }
#guidex-root .gx-ach-ai-card-btn{ flex-shrink:0; }
#guidex-root .gx-ach-assess-title{ font-weight:500; font-size:13px; }
#guidex-root .gx-ach-assess-meta{ margin-left:8px; font-size:11px; }
#guidex-root .gx-ach-accordion{ margin-bottom:8px; }
#guidex-root .gx-ach-assess-count{ font-size:12px; font-weight:400; color:var(--gx-muted); }
#guidex-root .gx-ach-agent-empty{ margin:0; line-height:1.6; }
#guidex-root .gx-ach-credit-pot{ font-size:12px; color:var(--gx-good); margin-bottom:2px; }
#guidex-root .gx-ach-credit-action{ font-size:12px; color:var(--gx-muted); }
#guidex-root .gx-ach-fortknox-icon{ font-size:15px; }
#guidex-root .gx-ach-status-good{ display:block; font-size:12px; color:var(--gx-good); }
#guidex-root .gx-ach-status-warn{ display:block; font-size:12px; color:var(--gx-warn); }
#guidex-root .gx-ach-school-match-shell{ display:block; margin-top:12px; border-top:1px solid rgba(255,255,255,0.06); padding-top:12px; }
#guidex-root .gx-ach-school-match-loading{ padding:4px 0; color:var(--gx-muted); font-size:12px; }
#guidex-root .gx-ach-school-match-empty{ font-size:12px; color:var(--gx-muted); }
#guidex-root .gx-ach-school-match-empty--warn{ color:var(--gx-warn); }
#guidex-root .gx-ach-school-match-title{ font-size:11px; font-weight:700; color:var(--gx-accent); text-transform:uppercase; letter-spacing:0.05em; margin-bottom:10px; }
#guidex-root .gx-ach-school-match-row{ display:flex; align-items:center; gap:10px; padding:10px 12px; margin-bottom:6px; background:rgba(37,99,235,0.07); border:1px solid rgba(37,99,235,0.2); border-radius:8px; }
#guidex-root .gx-ach-school-match-main{ flex:1; min-width:0; }
#guidex-root .gx-ach-school-match-name{ font-size:13px; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
#guidex-root .gx-ach-school-match-meter-row{ display:flex; align-items:center; gap:6px; margin-top:4px; }
#guidex-root .gx-ach-school-match-meter{ flex:1; height:4px; background:rgba(255,255,255,0.1); border-radius:2px; overflow:hidden; }
#guidex-root .gx-ach-school-match-link{ white-space:nowrap; text-decoration:none; }
#guidex-root .gx-ach-upload-group{ display:flex; align-items:center; gap:8px; padding:8px 12px; border:1px solid var(--gx-border); border-radius:10px; background:rgba(0,0,0,0.15); margin-top:12px; }
#guidex-root .gx-ach-upload-status{ font-size:12px; color:var(--gx-muted); }
/* ──────────────────────────────────────────────────────────────────────── */

#guidex-root[data-guidex-surface='phone'] span[style*='white-space:nowrap'],
#guidex-root[data-guidex-surface='phone'] div[style*='white-space:nowrap'],
#guidex-root[data-guidex-surface='phone'] label[style*='white-space:nowrap'],
#guidex-root[data-guidex-surface='phone'] td[style*='white-space:nowrap'],
#guidex-root[data-guidex-surface='phone'] th[style*='white-space:nowrap']{
  white-space:normal !important;
}

