.focus-stage { text-align: center; padding: 35px 24px; border-color: #5deaf67a; }
.focus-stage h2 { font: 750 clamp(24px,4vw,42px)/1.25 var(--font-display); max-width: 800px; margin: 10px auto; overflow-wrap: anywhere; }
.focus-stage > p { color: var(--text-secondary); }
.focus-stage output { display: block; font: 500 clamp(36px,7vw,80px) var(--hud-font); color: var(--accent); margin: 28px 0; }
.focus-controls { display: flex; justify-content: center; gap: 10px; flex-wrap: wrap; margin-bottom: 20px; }
.focus-stage small,.focus-summary span { font-size: 16px; color: var(--text-muted); }
.focus-start form,.focus-manual form { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; align-items: end; }
.focus-start label,.focus-manual label,.focus-report label,#focus-editor label { display: grid; gap: 6px; font-size: 16px; }
.focus-start select,.focus-manual input,.focus-manual select,.focus-manual textarea,#focus-editor input,#focus-editor textarea { width: 100%; }
.focus-manual summary { cursor: pointer; font-weight: 650; }
.focus-manual form { margin-top: 20px; }
.focus-summary { display: grid; gap: 6px; margin: 18px 0; font-size: 16px; }
.focus-report { margin-top: 20px; }
.focus-report form { display: flex; align-items: end; gap: 12px; flex-wrap: wrap; }
.focus-report p { font-size: 16px; color: var(--text-secondary); }
.focus-groups { display: grid; grid-template-columns: repeat(auto-fit,minmax(190px,1fr)); gap: 12px; margin: 20px 0; }
.focus-groups article { display: grid; gap: 7px; padding: 15px; background: #5deaf60c; border: 1px solid #5deaf638; font-size: 16px; }
.focus-groups b { color: var(--info); font: 600 22px var(--hud-font); }
.focus-entries article { display: flex; align-items: center; gap: 12px; padding: 16px 0; border-top: 1px solid var(--border); }
.focus-entries article > div { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.focus-entries strong { font-size: 16px; }.focus-entries small { display:block; margin-top:5px; color: var(--text-muted); font-size:16px; }
.focus-entries p { white-space: pre-wrap; }.focus-entries b { font: 16px var(--hud-font); }
.focus-history { padding: 16px 0; border-top: 1px solid var(--border); font-size: 16px; overflow-wrap: anywhere; }
#focus-editor { width: min(620px,calc(100vw - 28px)); max-height: 85dvh; overflow: auto; padding: 24px; }
#focus-editor label { margin: 14px 0; }
.focus-brief { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 20px; }
.focus-brief strong,.focus-brief small { display:block; }.focus-brief small { margin-top:5px; color:var(--text-secondary); font-size:16px; }
.os-focus [data-focus-secondary] { display: none; }
.os-focus .focus-stage { min-height: 62vh; display: flex; flex-direction: column; justify-content: center; }
.focus-critical .day-alert { display: flex; flex-wrap: wrap; }
@media(max-width:650px) {
  .focus-start form,.focus-manual form { grid-template-columns: 1fr; }
  .focus-entries article { flex-wrap: wrap; }.focus-entries article > div { flex-basis: 100%; }
  .focus-controls .button { min-height:44px; }
  #focus-editor input,#focus-editor textarea,.focus-manual input,.focus-manual select,.focus-manual textarea,.focus-start select { font-size:16px; }
}
