/* Purposeful working surfaces and accessible interaction across SAGA. */
:where(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #087ca4;outline-offset:4px}
.skip-link{position:fixed;top:10px;left:15px;transform:translateY(-160%);z-index:100;background:#163f48;color:white;padding:13px 20px;border-radius:8px}.skip-link:focus{transform:none}
.page:has(.intro){padding-top:35px}.intro{max-width:760px;margin-bottom:28px}.intro h1{font-size:clamp(29px,3.4vw,46px);line-height:1.1;letter-spacing:-.045em;margin:12px 0 14px}.intro .lead{font-size:16px;line-height:1.55;max-width:640px}.intro .version{display:none}
body:not(.has-profile):not(.training-mode) .precall{display:none}
.mastery-label{color:#62626d!important}.footer{color:#666672}html[data-theme="dark"] .footer{color:#a7a7b2}
.platform-dialog input,.platform-dialog select{min-height:44px}.icon-button,.text-button,.mode-option,.training-source-option{min-height:40px}
body:has(#termDialog) .filters input,body:has(#termDialog) .filters select{min-height:44px}
body:has(#termDialog) .recommended-card,body:has(#termDialog) .term-card{transition:border-color .15s,box-shadow .15s}
@media(max-width:900px){.nav-inner{flex-wrap:wrap;gap:10px}.nav-right{width:100%;min-width:0}.nav-tools{width:100%;overflow-x:auto;padding:3px 1px 6px;gap:8px}.nav-tools>*{flex-shrink:0}.nav-tools .text-icon-button{display:inline-grid;white-space:nowrap;font-size:12px;min-height:40px}.nav-status{display:none}.page:has(.intro){padding-top:26px}.intro h1{font-size:32px}.intro .lead{font-size:15px}.callbar{gap:14px}body.live-mode .callbar{top:124px}.setup{padding:17px}.mode-switch-wrap{align-items:flex-start;flex-wrap:wrap;gap:10px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

.needs-ai-setup .ai-mini,.needs-ai-setup .ai-wait{display:none}
#aiSetupNotice{background:#fff3d9;color:#745419;padding:13px 16px;border-radius:10px;margin-bottom:18px;font-size:13px;line-height:1.5}
