/* Shared local typography and accessible interactions, v3.0.10. */
html{font-family:var(--font-fa,"Vazirmatn",Tahoma,sans-serif);-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-family:var(--font-fa,"Vazirmatn",Tahoma,sans-serif);font-size:15px;line-height:1.75}
button,input,select,textarea{font-family:var(--font-fa,"Vazirmatn",Tahoma,sans-serif)!important}
input:not([type=range]):not([type=checkbox]):not([type=color]),select,textarea{font-size:14px!important;line-height:1.7;max-width:100%}
button{cursor:pointer;touch-action:manipulation}
button:disabled{cursor:wait;opacity:.6}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #3b9de7!important;outline-offset:3px}
body small{font-size:12px!important;line-height:1.8!important}
body label{line-height:1.8}
.toast{font-size:14px!important;line-height:1.9;max-width:min(90vw,580px);white-space:normal;overflow-wrap:anywhere}
.meeting-heading h2{font-size:16px!important}.meeting-heading small{font-size:12px!important}
.meeting-classroom>header>div b{font-size:16px!important}
.meeting-classroom>header nav button{font-size:13px!important;min-height:38px;padding-inline:16px}
.classroom-assets-head b,.classroom-empty b{font-size:15px!important}
.classroom-upload button,.remote-import-toggle,.voice-manager-open{font-size:13px!important;min-height:44px;height:auto!important;padding:10px 12px!important;line-height:1.7!important;white-space:normal}
.classroom-upload small,.asset-open small,.classroom-expiry-note,.classroom-search input,.classroom-filters button,.asset-actions button{font-size:12px!important;line-height:1.8!important}
.classroom-filters button{min-height:36px}.classroom-filters{gap:5px;flex-wrap:wrap}
.asset-open b{font-size:14px!important;line-height:1.8!important;overflow-wrap:anywhere}
.asset-actions button{min-height:34px;min-width:34px}
.classroom-privacy-hint,.quality-explainer{margin:10px 0 0;padding:10px 12px;border-radius:12px;font-size:12px;line-height:1.9;background:#238ee10a;color:#587184}
.quality-explainer{margin:12px;color:#b6c7d4;background:#ffffff07}
.document-toolbar,.board-toolbar{min-height:48px;height:auto;gap:8px;padding:8px;flex-shrink:0}
.document-toolbar>div,.board-toolbar>div{min-width:0;max-width:100%;overflow-x:auto;scrollbar-width:thin;align-items:center;gap:5px}
.document-toolbar button,.board-toolbar button,.media-session-actions button,.media-collab-bar button,.media-annotation-tools button{font-size:12px!important;min-height:38px;min-width:38px;height:auto;line-height:1.6;flex-shrink:0;white-space:nowrap}
.document-toolbar input,.document-toolbar select{min-height:36px}
.document-toolbar [data-doc-tool].active,.board-toolbar [data-board-tool].active{outline:2px solid #238ee170;outline-offset:-2px}
.media-header b{font-size:15px!important}.media-header small,.media-collab-bar>span{font-size:12px!important}
.media-collab-bar{gap:10px;flex-wrap:wrap;min-width:0}
.media-loading-state b{font-size:16px!important}.media-loading-state small{font-size:13px!important;max-width:90%;line-height:1.8}
.media-tap-play{min-height:48px;max-width:90%;font-size:14px!important;line-height:1.8}
.media-learning-panel p{font-size:13px!important;line-height:1.9}
.meeting-health-head h3{font-size:18px!important}.meeting-health-row b{font-size:14px!important}.meeting-health-row small{font-size:12px!important;white-space:normal}.meeting-health-row em{font-size:12px!important}
.meeting-health-panel{width:min(440px,calc(100vw - 24px));max-height:calc(100dvh - 110px);overflow:auto}
.meeting-health-row{grid-template-columns:26px minmax(0,1fr) auto;gap:8px}
.audio-recovery-note{font-size:12px!important;line-height:1.9}
.meeting-chat-messages,.message-body{overflow-wrap:anywhere}
.meeting-chat-form textarea{min-height:44px}
.classroom-assets-expand b,.classroom-assets-drawer-button b{font-size:12px!important}
.modal form,.modal section,.settings-card{max-width:100%;min-width:0}
.empty-state p,.empty-state small{max-width:48ch;line-height:1.9}
@media(max-width:700px){
  input:not([type=range]):not([type=checkbox]):not([type=color]),select,textarea{font-size:16px!important}
  .classroom-upload{display:flex!important;flex-direction:column;align-items:stretch;gap:8px}
  .classroom-upload>button{width:100%}
  .classroom-privacy-hint{margin:0}
  .meeting-classroom>header nav button{min-width:70px;padding-inline:12px}
  .document-toolbar,.board-toolbar{display:flex;flex-wrap:wrap;gap:5px}
  .document-toolbar>div,.board-toolbar>div{display:flex;flex:1 1 100%;width:100%;overflow-x:auto;padding:2px}
  .media-header{flex-wrap:wrap}.media-header>div{max-width:100%;min-width:0}.media-session-actions{max-width:100%;overflow-x:auto}
  #meetingClassroom.media-focus .media-header{flex-wrap:nowrap}
  #meetingClassroom.media-focus .media-session-actions{flex-shrink:0}
  .classroom-assets{overflow-y:auto;overscroll-behavior:contain}
  .meeting-health-panel{inset:auto 8px 86px;width:auto;max-height:70dvh}
  .dashboard-content,.main-content,.learn-main{min-width:0}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;animation-iteration-count:1!important}}
@media(forced-colors:active){button:focus-visible,a:focus-visible{outline:2px solid ButtonText!important}.meeting-signal{forced-color-adjust:auto}}

@media(max-width:800px){#preCallOverlay .precall-live-controls button{flex-direction:column;gap:3px;min-height:60px}#preCallOverlay .precall-live-controls button b{position:static!important;overflow:visible!important;width:auto!important;height:auto!important;clip-path:none!important;white-space:normal!important;font-size:12px!important;line-height:1.5!important}#preCallOverlay .precall-preview #micLevel{bottom:88px}}
.voice-manager :is(button,label),.media-session-actions :is(label,select),.meeting-sidebar p,.classroom-upload label,.media-marker-list b{font-size:13px!important;line-height:1.8}
.stat-card span,.page-head p,.focus-banner p,.focus-next small,.agenda-item small,.dashboard-view p,.continue-card p{font-size:13px!important;line-height:1.9!important}
.health-row>span{display:flex;min-width:0;flex-direction:column;gap:3px}
.health-row b,.health-row small{display:block;white-space:normal;overflow-wrap:anywhere;line-height:1.8}
.health-row b{font-size:14px!important}
.health-row{grid-template-columns:28px minmax(0,1fr) auto!important}
.cms-nav button,.cms-nav a,.mobile-nav button,.mobile-nav a{font-size:11px!important;line-height:1.5!important}
@media(max-width:800px){.cms-nav{height:78px!important;min-height:78px;align-items:stretch}.cms-nav button,.cms-nav a{min-width:0;gap:3px;white-space:normal}.cms-panel{padding-bottom:110px}.panel-title h1{font-size:25px;line-height:1.7}}
