/* SIGNAL ARCHITECT — MILESTONE 9 SPRINT 9.1 ADAPTIVE EXPERIENCE FRAMEWORK */
.sa-adaptive-context-badge {
  position: fixed; right: 18px; bottom: 82px; z-index: 9994;
  display: grid; gap: 2px; min-width: 178px; padding: 10px 13px;
  border: 1px solid rgba(84, 203, 255, .38); border-radius: 12px;
  background: rgba(7, 16, 35, .94); color: #eaf4ff; text-align: left;
  box-shadow: 0 16px 36px rgba(0,0,0,.34); cursor: pointer;
  backdrop-filter: blur(12px);
}
.sa-adaptive-context-badge span { color: #61ddff; font-size: .62rem; font-weight: 900; letter-spacing: .13em; }
.sa-adaptive-context-badge b { font-size: .76rem; letter-spacing: .035em; }
.sa-adaptive-context-badge:hover { transform: translateY(-1px); border-color: rgba(84,203,255,.72); }
.sa-adaptive-context-dialog { width: min(720px, calc(100vw - 30px)); padding: 0; border: 1px solid rgba(97,221,255,.3); border-radius: 18px; background: #081225; color: #edf5ff; box-shadow: 0 30px 90px rgba(0,0,0,.62); }
.sa-adaptive-context-dialog::backdrop { background: rgba(1,5,14,.76); backdrop-filter: blur(7px); }
.sa-adaptive-context-card { padding: clamp(20px, 4vw, 34px); }
.sa-adaptive-context-card header { display:flex; justify-content:space-between; gap:18px; align-items:flex-start; }
.sa-adaptive-context-card header span { color:#61ddff; font-size:.7rem; font-weight:900; letter-spacing:.14em; }
.sa-adaptive-context-card h2 { margin:7px 0 0; font-size:clamp(1.5rem,4vw,2.15rem); }
.sa-adaptive-context-card header button { border:0; background:transparent; color:#b8c5df; font-size:1.8rem; cursor:pointer; }
.sa-adaptive-context-card > p { color:#aab8d3; line-height:1.65; max-width:620px; }
.sa-adaptive-context-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin:22px 0; }
.sa-adaptive-context-grid label { display:grid; gap:7px; color:#b9c7de; font-size:.75rem; font-weight:800; letter-spacing:.04em; }
.sa-adaptive-context-grid select { width:100%; min-height:44px; border-radius:10px; border:1px solid rgba(111,153,229,.28); background:#0d1930; color:#eef5ff; padding:0 12px; }
.sa-adaptive-context-summary { display:grid; gap:6px; padding:16px; border:1px solid rgba(97,221,255,.2); border-radius:12px; background:rgba(97,221,255,.055); }
.sa-adaptive-context-summary strong { color:#fff; }
.sa-adaptive-context-summary span { color:#b8c6df; }
.sa-adaptive-context-summary small { color:#61ddff; letter-spacing:.055em; }
.sa-adaptive-context-card footer { display:flex; justify-content:flex-end; gap:10px; margin-top:22px; }
.sa-adaptive-context-card footer button { min-height:42px; padding:10px 15px; border-radius:10px; border:1px solid rgba(111,153,229,.35); background:rgba(32,62,125,.25); color:#eef5ff; font-weight:850; cursor:pointer; }
.sa-adaptive-context-card footer [data-save] { background:linear-gradient(135deg,#245ad7,#173f9f); border-color:#5793ff; }
.sa-adaptive-guide-profile { display:inline-flex; align-items:center; gap:7px; margin:6px 0 4px; padding:6px 9px; border-radius:999px; background:rgba(97,221,255,.08); border:1px solid rgba(97,221,255,.18); color:#9deaff; font-size:.68rem; font-weight:850; letter-spacing:.06em; }
html[data-sa-research-path="foundations"] .sa-adaptive-advanced-detail { display:none !important; }
html[data-sa-research-path="professional"] .sa-adaptive-guided-detail,
html[data-sa-research-path="research"] .sa-adaptive-guided-detail,
html[data-sa-research-path="operations"] .sa-adaptive-guided-detail { display:none !important; }
@media (max-width: 680px) {
  .sa-adaptive-context-badge { right:12px; bottom:76px; min-width:0; max-width:calc(100vw - 24px); }
  .sa-adaptive-context-grid { grid-template-columns:1fr; }
  .sa-adaptive-context-card footer { flex-direction:column-reverse; }
  .sa-adaptive-context-card footer button { width:100%; }
}


/* =========================================================
   FLOATING CONTROL COMPACT DOCK v1.0
   RESEARCH ENVIRONMENT = RE
   Compact by default; hover/focus expands full context.
   Existing dialog behavior is unchanged.
   ========================================================= */
.sa-adaptive-context-badge{
  width:42px;
  min-width:42px;
  height:42px;
  min-height:42px;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  white-space:nowrap;
  transition:width .18s ease, padding .18s ease, transform .18s ease, border-color .18s ease;
}
.sa-adaptive-context-badge span,
.sa-adaptive-context-badge b{
  display:none;
}
.sa-adaptive-context-badge::after{
  content:"RE";
  color:#61ddff;
  font-size:11px;
  font-weight:900;
  letter-spacing:.07em;
}
.sa-adaptive-context-badge:hover,
.sa-adaptive-context-badge:focus-visible{
  width:178px;
  padding:10px 13px;
  display:grid;
  gap:2px;
  justify-content:stretch;
}
.sa-adaptive-context-badge:hover::after,
.sa-adaptive-context-badge:focus-visible::after{content:""}
.sa-adaptive-context-badge:hover span,
.sa-adaptive-context-badge:hover b,
.sa-adaptive-context-badge:focus-visible span,
.sa-adaptive-context-badge:focus-visible b{
  display:block;
}
@media(max-width:700px){
 .sa-adaptive-context-badge:hover,
 .sa-adaptive-context-badge:focus-visible{
   width:42px;min-width:42px;padding:0;display:flex;justify-content:center;
 }
 .sa-adaptive-context-badge:hover::after,
 .sa-adaptive-context-badge:focus-visible::after{content:"RE"}
 .sa-adaptive-context-badge:hover span,
 .sa-adaptive-context-badge:hover b,
 .sa-adaptive-context-badge:focus-visible span,
 .sa-adaptive-context-badge:focus-visible b{display:none}
}
