/* ═══════════════════════════════════════════════════════════════════════════
   Mysomero Tutor — UI Phase 1 (v72.37.5)
   Readability, keyboard focus, touch targets, lock icon.
   Loaded AFTER chat.css. To switch everything here off without editing files:
       define( 'MSM_DISABLE_UI1', true );   // in wp-config.php
   ═══════════════════════════════════════════════════════════════════════════ */

/* 1 ── Keyboard focus ring for buttons and links only (not text fields: those
        already show their own highlighted border when focused) */
:is(#msm-app, body.msm-chat-page) :is(a, button, summary, [tabindex]:not([tabindex="-1"])):focus-visible {
    outline: 2px solid #6d28d9;
    outline-offset: 2px;
}
#msm-app[data-theme="dark"] :is(a, button, summary, [tabindex]:not([tabindex="-1"])):focus-visible {
    outline-color: #c4b5fd;
}

/* 2 ── Pinch-zoom is now allowed in the PWA. iOS zooms the page when a field
        under 16px gets focus, so keep fields at 16px on touch devices. */
@media (pointer: coarse) {
    #msm-app input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),
    #msm-app textarea,
    #msm-app select {
        font-size: 16px;
    }
}

/* 3 ── Touch targets: 44px minimum for close / back / menu buttons (touch only) */
@media (pointer: coarse) {
    .msm-menu-btn, .msm-panel-back-btn, .msm-esim-back-btn, .msm-plans-close,
    .msm-gate-close, .msm-share-modal-close, .msm-lb-xp-modal-close,
    .msm-lb-xp-back-btn, .msm-sf-close, .msm-ep-close, .msm-modal-close,
    .msm-co-close, .msm-diff-close {
        min-width: 44px;
        min-height: 44px;
    }
}

/* 4 ── Lock badge (replaces the ⭐ emoji on premium nav items) */
.msm-lock-badge { display: inline-flex; align-items: center; opacity: .8; }
.msm-lock-badge svg { width: 12px; height: 12px; display: block; }

/* 5 ── Minimum text size: anything under 12px is raised to 12px
        (small badges / status chips to 10px). Share-card text is untouched. */
.msm-logo-version{font-size:10px}
.msm-section-label{font-size:12px}
.msm-topic-quiz-btn{font-size:12px}
.msm-fb-reason-label{font-size:12px}
.msm-related-label{font-size:12px}
.msm-bookmark-del{font-size:12px}
.msm-advance-xp{font-size:12px}
.msm-weekly-text em{font-size:12px}
.msm-camp-cta-gate{font-size:12px}
@media(max-width:700px){
.msm-weekly-btn{font-size:12px}
}
@media(max-width:400px){
.msm-weekly-text{font-size:12px}
.msm-weekly-btn{font-size:12px}
}
.msm-sp-day-date{font-size:12px}
.msm-sp-day-sub{font-size:12px}
.msm-mobile-nav-item{font-size:12px}
@media(max-width:700px){
.msm-teaser-title{font-size:12px}
.msm-teaser-enroll-btn{font-size:12px}
.msm-header-stats .msm-daily-pill{font-size:12px}
}
.msm-topic-item-num{font-size:12px}
.msm-topic-quiz-btn{font-size:12px}
.msm-history-see-all{font-size:12px}
.msm-explorer-sub{font-size:12px}
.msm-explorer-check{font-size:12px}
.msm-explorer-next-label{font-size:12px}
.msm-explorer-more-hint{font-size:12px}
.msm-pg-card-trend{font-size:12px}
.msm-search-clear{font-size:12px}
.msm-search-group-label{font-size:12px}
.msm-sr-sub{font-size:12px}
.msm-search-empty{font-size:12px}
.msm-topic-loading, .msm-topic-empty{font-size:12px}
.msm-welcome-hint-btn{font-size:12px}
.msm-tt-sub{font-size:12px}
.msm-tt-badge{font-size:10px}
.msm-tool-grid-pills-label{font-size:12px}
@media (max-width: 700px){
.msm-tt-sub{font-size:12px}
}
.msm-opener-meta-label{font-size:12px}
.msm-exam-answer-key{font-size:12px}
.msm-tp-section-head{font-size:12px}
.msm-exam-field label{font-size:12px}
.msm-score-label{font-size:12px}
.msm-stat-pill span{font-size:12px}
.msm-result-q-num{font-size:12px}
.msm-fc-field label{font-size:12px}
.msm-fc-card-label{font-size:12px}
.msm-fc-ring-sub{font-size:12px}
.msm-fc-stat-box span:last-child{font-size:12px}
.msm-lb-pod-school{font-size:12px}
.msm-lb-pod-streak{font-size:12px}
.msm-lb-you-tag{font-size:10px}
.msm-lb-item-school{font-size:12px}
.msm-lb-item-xp small{font-size:12px}
.msm-lb-item-change{font-size:12px}
.msm-lb-separator{font-size:12px}
.msm-lb-my-pos-school{font-size:12px}
.msm-lb-my-pos-meta{font-size:12px}
.msm-lb-you-pinned-label{font-size:10px}
@media (max-width: 600px){
.msm-lb-item-rank{font-size:12px}
.msm-lb-item-change{font-size:12px}
.msm-lb-item-school{font-size:12px}
}
.msm-more-tray-label{font-size:12px}
.msm-more-tray-item{font-size:12px}
.msm-user-dropdown-email{font-size:12px}
.msm-pw-strength span{font-size:12px}
.msm-consent-minor{font-size:12px}
@media(max-width:700px){
.msm-header-login-btn{font-size:12px}
}
.msm-search-see-all-btn{font-size:12px}
.msm-sim-card__sub{font-size:12px}
.msm-sim-card__views{font-size:12px}
.msm-sim-disc-desc{font-size:12px}
.msm-sim-disc-action{font-size:12px}
.msm-teaser-badge{font-size:10px}
.msm-teaser-title{font-size:12px}
.msm-teaser-subtitle{font-size:12px}
.msm-teaser-enroll-btn{font-size:12px}
#msm-quiz-change-diff{font-size:12px}
.msm-pp-paper-count{font-size:12px}
.msm-pp-q-topic{font-size:12px}
.msm-mode-desc{font-size:12px}
.msm-mode-badge{font-size:10px}
.msm-uneb-level-label{font-size:12px}
.msm-uneb-class-label{font-size:12px}
.msm-uneb-paper-count{font-size:12px}
.msm-esim-step-label{font-size:12px}
.msm-uneb-paper-num{font-size:12px}
.msm-daily-pill{font-size:12px}
.msm-lock-badge{font-size:10px}
.msm-expiry-tag{font-size:12px}
.msm-feat-teacher-only{font-size:12px}
.msm-plan-current-tag{font-size:12px}
.msm-plan-trial-note{font-size:12px}
.msm-plans-divider{font-size:12px}
.msm-plans-footer-note{font-size:12px}
.msm-gate-badge-label{font-size:10px}
.msm-gate-note{font-size:12px}
.msm-more-tray-item .msm-tray-lock{font-size:12px}
.msm-limit-wall-perks span{font-size:12px}
.msm-limit-wall-note{font-size:12px}
.msm-math-gate-label{font-size:12px}
.msm-math-gate-note{font-size:12px}
.msm-note-panel-breadcrumb{font-size:12px}
.msm-signup-eyebrow{font-size:12px}
.msm-onboard-level-label{font-size:12px}
.msm-drill-progress{font-size:12px}
.msm-drill-difficulty{font-size:12px}
.msm-drill-section-label{font-size:12px}
.msm-field-hint{font-size:12px}
.msm-user-dropdown-section-label{font-size:12px}
.msm-link-code-hint{font-size:12px}
.msm-parent-child-pill{font-size:12px}
.msm-parent-child-pill em{font-size:12px}
.msm-child-meta{font-size:12px}
.msm-child-action-btn{font-size:12px}
.msm-child-no-login-notice{font-size:12px}
.msm-child-create-login-btn{font-size:12px}
.msm-cp-stat-label{font-size:12px}
.msm-cp-section-title{font-size:12px}
.msm-cp-sub-expires{font-size:12px}
.msm-cp-weak-score{font-size:12px}
.msm-cp-last-active{font-size:12px}
.msm-share-toast-sub{font-size:12px}
.msm-lb-xp-hint-btn{font-size:12px}
.msm-lb-xp-action-label small{font-size:12px}
.msm-lb-xp-levels-label{font-size:12px}
.msm-lb-xp-levels-swipe{font-size:12px}
.msm-lb-xp-level-step.msm-active-rung::after{font-size:10px}
.msm-lb-xp-level-name{font-size:12px}
.msm-lb-xp-level-req{font-size:12px}
.msm-lb-xp-levels-btn-left small{font-size:12px}
.msm-lb-xp-ladder-num{font-size:12px}
.msm-lb-xp-ladder-info small{font-size:12px}
.msm-ep-avatar-hint{font-size:12px}
.msm-ep-optional{font-size:12px}
.msm-ep-level-label{font-size:12px}
.msm-sf-upgrade-sub{font-size:12px}
.msm-sf-section-label{font-size:12px}
.msm-dd-email{font-size:12px}
.msm-sf-upgrade-copy span{font-size:12px}
.msm-sf-plan-strip span{font-size:12px}
.msm-ac-meta{font-size:12px}
.msm-ac-nf-label{font-size:12px}
.msf-school-field-msm label{font-size:12px}
.msm-nav-new-badge{font-size:10px}
.msm-tray-new-badge{font-size:10px}
.msm-dp-label{font-size:12px}
.msm-disc-see-all{font-size:12px}
.msm-disc-cat{font-size:12px}
.msm-disc-views{font-size:12px}
.msm-disc-prog-pct{font-size:12px}
.msm-hub-ql-label{font-size:12px}
.msm-hub-results-label{font-size:12px}
.msm-hub-result-sub{font-size:12px}
.msm-req-chips span{font-size:12px}
.msm-simreq-toggle{font-size:12px}
.msm-lesson-topic-title{font-size:12px}
.msm-lesson-play-btn{font-size:12px}
.msm-camp-chevron{font-size:12px}
.msm-camp-meta{font-size:12px}
.msm-camp-gate{font-size:12px}
.msm-camp-stat-lbl{font-size:12px}
.msm-camp-copy-btn{font-size:12px}
.msm-camp-stat-v2 .msm-camp-stat-lbl{font-size:12px}
.msm-camp-prize-pos{font-size:12px}
.msm-camp-prizes-title{font-size:12px}
.msm-rules-pill{font-size:12px}
.msm-rules-fine{font-size:12px}
.msm-camp-prizes-toggle-more{font-size:12px}
.msm-camp-lb-title, .msm-camp-last-title{font-size:12px}
.msm-camp-lb-prize{font-size:12px}
.msm-disc-see-all{font-size:12px}
.msm-tray-teacher-badge{font-size:10px}
.msm-tcc-divider{font-size:12px}
.msm-tcc-note{font-size:12px}
.msm-lb-optout-compact{font-size:12px}
.msm-camp-hero-ends{font-size:12px}
.msm-camp-ended-next{font-size:12px}
.msm-crank-you{font-size:10px}
.msm-crank-xp small{font-size:12px}
.msm-camp-ref-banner-label{font-size:12px}
.msm-camp-ref-banner-url{font-size:12px}
.msm-camp-ref-banner-btn{font-size:12px}
.msm-ref-funnel-lbl{font-size:12px}
.msm-tcr-status{font-size:12px}
.msm-sf-ref-stat-lbl{font-size:12px}
.msm-sf-ref-rates span{font-size:12px}
.msm-sf-ref-url{font-size:12px}
.msm-sim-new-ribbon{font-size:10px}
.msm-co-body label{font-size:12px}
.msm-co-hint{font-size:12px}
.msm-co-plan-price #msm-co-plan-currency{font-size:12px}
.msm-co-meta{font-size:12px}
.msm-co-lock{font-size:12px}
.msm-co-fallback-row{font-size:12px}
.msm-co-confirm-nudge p{font-size:12px}
@media (min-width: 701px){
.msm-kbd-hint{font-size:12px}
}
.msm-logo-sub{font-size:12px}
