.ambient-effects { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.design-switch .ambient-controls { margin-top: 8px; padding-top: 8px; border-top: 1px solid #ffffff26; }
.design-switch .ambient-controls button { padding: 7px 9px; font-size: 11px; }
body[data-design='one'] .briefing-header { background: #26334d55; }
body[data-design='physio'] .briefing-header { background: #34758030; }
body[data-design='one'][data-layout='v2'] .briefing-header { --number-left: calc(50% - 108px); }
body[data-design='one'] .briefing-number { top: 32px; }
body[data-design='one'][data-layout='v2'] .briefing-heading { padding-left: calc(50% - 38px); padding-top: 31px; padding-right: 8%; }
.phase-placeholder { max-width: 780px; margin: 0 auto; display: grid; gap: 20px; line-height: 1.6; }
.phase-placeholder p { margin: 0; }
.phase-placeholder textarea { width: 100%; box-sizing: border-box; padding: 16px; border: 1px solid var(--design-border); border-radius: var(--design-radius); background: #ffffff09; color: var(--design-text); font: inherit; resize: vertical; }
@media (max-width: 600px) {
  .design-switch { max-width: 230px; }
  .phase-navigation { bottom: 220px; }
  body[data-design='one'][data-layout='v2'] .briefing-header { --number-left: calc(50% - 98px); }
  body[data-design='one'][data-layout='v2'] .briefing-heading { padding-left: calc(50% - 32px); }
}

/* Interactive contents are not clipped by the decorative SVG glass surfaces. */
.briefing-card > .phase-summary { top: calc(var(--header-height) + 28px); bottom: 14%; }
@media (max-width: 600px) {
  .briefing-card > .phase-summary { top: calc(var(--header-height) + 8px); bottom: 12%; }
}
.vanta-login { position: absolute !important; inset: 0; pointer-events: none; opacity: .28; }
.vanta-login[hidden], .vanta-portal[hidden] { display: none; }
.vanta-portal { position: absolute !important; inset: -80px; pointer-events: none; opacity: .28; transform: translate(var(--vanta-x,0px),calc(var(--vanta-y,0px) + var(--vanta-swipe,0px))); transition: transform .65s ease-out, filter .65s ease-out; }
.design-switch .vanta-options { margin-top: 5px; align-items: center; gap: 10px; }
.vanta-options a { color: #c4c8cf; font-size: 10px; }
.vanta-options span { font-size: 10px; max-width: 150px; }
@media (max-width: 600px) { .phase-navigation { bottom: 255px; } }
/* Halo is a halo band around the unchanged login geometry. */
.vanta-login {
  inset:auto;left:50%;top:50%;
  width:calc(min(720px,92vw,88svh) * 1.16);
  height:calc(min(720px,92vw,88svh) * 1.16);
  transform:translate(-50%,-50%);opacity:.18;
  -webkit-mask-image:radial-gradient(circle,transparent 52%,#000 58%,#000 62%,transparent 70%);
  mask-image:radial-gradient(circle,transparent 52%,#000 58%,#000 62%,transparent 70%);
}
.ambient-host { position:fixed;inset:0;pointer-events:none;overflow:hidden; }
.ambient-host[hidden] { display:none; }
.design-switch { max-height:calc(100dvh - 32px);overflow:auto;padding-top:16px; }
.design-switch .design-collapse { position:absolute;right:8px;top:5px;padding:3px 10px; }
.design-switch > span { padding-right:35px; }
.design-switch.is-collapsed { padding:0;overflow:hidden; }
.design-switch.is-collapsed > :not(.design-collapse) { display:none!important; }
.design-switch.is-collapsed .design-collapse { position:static;padding:12px 18px; }
.design-switch .effect-tuning { display:grid;gap:8px;margin-top:10px; }
.effect-tuning label { display:grid;grid-template-columns:1fr auto;gap:3px 12px;font-size:11px; }
.effect-tuning input { grid-column:1 / -1;width:100%;margin:0;accent-color:#b9cbd4; }
.effect-tuning label[hidden],.effect-tuning[hidden] { display:none!important; }
.design-switch .login-effects-toggle { font-size:11px;margin-top:6px; }
body.design-menu-collapsed .phase-navigation { bottom:28px; }
@media(prefers-reduced-motion:reduce) { .vanta-portal { transition:none; } }
.design-switch .halo-tuning { display:grid;grid-template-columns:1fr auto;gap:4px 12px;font-size:11px;margin:8px 0; }
.halo-tuning input { grid-column:1 / -1;width:100%;margin:0;accent-color:#b9cbd4; }
.portal-ring.shape-halo { filter:url(#shape-halo-trail);pointer-events:none; }
.portal-ring.shape-halo .ring-trail { stroke-width:12px; }
.effect-context { margin:8px 0;font-size:11px;max-width:380px;color:#b9c7ce; }
.design-switch button[hidden] { display:none; }
.design-switch input:disabled,.design-switch button:disabled { cursor:default;opacity:.65; }
