/* Muallim Match v3.14 — admin round 1 */
/* v3.26.1: status colours on every page (the delete-account button was invisible outside the admin dashboard) */
:root{--ok-bg:#e3f3e8;--ok:#1c7c54;--warn-bg:#fbf1d9;--warn:#8a6514;--bad-bg:#f8e3e1;--bad:#a13d3d;--info-bg:#e5eef8;--info:#2f5f8f;--off-bg:#eceeed;--off:#5d6762}
.admin-dashboard{--mm-a-deep:#123f2e;--mm-a-green:#176445;--mm-a-gold:#c6a55f;--mm-a-line:rgba(23,100,69,.14);--mm-a-soft:#eff6ef;--mm-a-muted:#687b71;
  --ok-bg:#e3f3e8;--ok:#1c7c54;--warn-bg:#fbf1d9;--warn:#8a6514;--bad-bg:#f8e3e1;--bad:#a13d3d;--info-bg:#e5eef8;--info:#2f5f8f;--off-bg:#eceeed;--off:#5d6762}
.mm-sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
body:has(.mm-admin-layout) .footer{display:none}

/* layout */
.mm-admin-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;align-items:start}
.mm-admin-side{position:sticky;top:88px;background:var(--mm-a-deep);color:#e6f0ea;border-radius:16px;padding:16px 10px;display:flex;flex-direction:column;gap:6px}
.mm-admin-side-label{margin:0 0 6px;padding:0 10px;font-size:12px;letter-spacing:.06em;color:var(--mm-a-gold);font-weight:700}
.mm-admin-side nav{display:grid;gap:2px}
.mm-admin-side nav button{display:flex;align-items:center;gap:10px;width:100%;border:0;background:transparent;color:inherit;font:inherit;font-size:15px;text-align:left;padding:10px 12px;border-radius:10px;cursor:pointer;opacity:.85;min-height:44px}
.mm-admin-side nav button:hover{background:rgba(255,255,255,.07);opacity:1}
.mm-admin-side nav button.active{background:rgba(255,255,255,.14);opacity:1;font-weight:700}
.mm-admin-side nav button:focus-visible,.mm-admin-bottom>*:focus-visible,.mm-admin-subtabs button:focus-visible{outline:2px solid var(--mm-a-gold);outline-offset:2px}
.mm-admin-side svg,.mm-admin-bottom svg,.mm-admin-sheet svg{width:20px;height:20px;flex:none}
.mm-admin-count{margin-left:auto;background:var(--bad);color:#fff;border-radius:999px;font-size:11px;line-height:18px;padding:0 7px;font-weight:700}
.mm-admin-weblink{display:flex;align-items:center;gap:8px;margin-top:12px;padding:10px 12px;color:inherit;opacity:.75;font-size:14px;text-decoration:none;border-top:1px solid rgba(255,255,255,.12)}
.mm-admin-weblink:hover{opacity:1}
.mm-admin-main{min-width:0;display:grid;gap:18px;align-content:start}
.mm-admin-main>.dashboard-header{margin:0}
.mm-admin-head h1{margin:0;font-size:clamp(24px,3vw,30px)}
.mm-admin-layout:not([data-mm-group="review"]) .mm-admin-student-review-card{display:none}

/* sub tabs */
.mm-admin-subtabs{display:flex;gap:4px;border-bottom:1px solid var(--mm-a-line);overflow-x:auto;scrollbar-width:none}
.mm-admin-subtabs button{flex:none;border:0;background:transparent;font:inherit;color:var(--mm-a-muted);padding:10px 14px;border-bottom:2px solid transparent;cursor:pointer;font-weight:500;min-height:44px}
.mm-admin-subtabs button.active{color:var(--mm-a-green);border-bottom-color:var(--mm-a-green);font-weight:700}
.mm-admin-subtabs em{font-style:normal;font-size:12px;background:var(--mm-a-soft);border-radius:999px;padding:0 8px;margin-left:6px}

/* bottom bar (mobile only) */
.mm-admin-bottom{display:none}
.mm-admin-sheet-backdrop{position:fixed;inset:0;background:rgba(10,30,22,.35);z-index:80;display:flex;align-items:flex-end}
.mm-admin-sheet{width:100%;background:#fff;border-radius:20px 20px 0 0;padding:10px 16px calc(18px + env(safe-area-inset-bottom,0px));display:grid;gap:4px}
.mm-admin-sheet-grip{justify-self:center;width:40px;height:4px;border-radius:4px;background:#d6dfda;margin-bottom:6px}
.mm-admin-sheet>button,.mm-admin-sheet>a{display:flex;align-items:center;gap:12px;border:0;background:transparent;font:inherit;font-size:16px;color:#183429;padding:13px 10px;border-radius:12px;text-decoration:none;text-align:left;cursor:pointer}
.mm-admin-sheet>button.active{background:var(--mm-a-soft);color:var(--mm-a-green);font-weight:700}

@media (max-width:1023px) and (min-width:768px){
  .mm-admin-layout{grid-template-columns:1fr}
  .mm-admin-side{position:static;flex-direction:row;align-items:center;overflow-x:auto;padding:8px}
  .mm-admin-side-label,.mm-admin-weblink{display:none}
  .mm-admin-side nav{display:flex}
  .mm-admin-side nav button{width:auto;white-space:nowrap}
}
@media (max-width:767px){
  .mm-admin-layout{grid-template-columns:1fr;gap:14px}
  .mm-admin-side{display:none}
  body:has(.mm-admin-layout) main{padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))}
  .mm-admin-bottom{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:70;background:#fff;border-top:1px solid var(--mm-a-line);padding:6px 4px calc(8px + env(safe-area-inset-bottom,0px));box-shadow:0 -6px 20px rgba(18,63,46,.08)}
  .mm-admin-bottom>button,.mm-admin-bottom>a{position:relative;display:grid;justify-items:center;gap:2px;border:0;background:transparent;font:inherit;font-size:11px;color:var(--mm-a-muted);text-decoration:none;padding:6px 0;min-height:52px;cursor:pointer}
  .mm-admin-bottom>.active{color:var(--mm-a-green);font-weight:700}
  .mm-admin-bottom .mm-admin-count{position:absolute;top:0;left:calc(50% + 4px);margin:0;font-size:10px;line-height:16px;padding:0 5px}
}

/* pills */
.mm-pill{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700;white-space:nowrap}
.mm-pill::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.mm-pill.ok{background:var(--ok-bg);color:var(--ok)}.mm-pill.warn{background:var(--warn-bg);color:var(--warn)}.mm-pill.bad{background:var(--bad-bg);color:var(--bad)}.mm-pill.info{background:var(--info-bg);color:var(--info)}.mm-pill.off{background:var(--off-bg);color:var(--off)}
.mm-role-tag{display:inline-block;border:1px solid var(--mm-a-line);border-radius:6px;padding:0 8px;font-size:12px;color:var(--mm-a-muted)}
.mm-code{display:block;font-size:11px;color:var(--mm-a-muted);font-family:ui-monospace,monospace}
.btn.danger-solid{background:var(--bad);color:#fff;border-color:var(--bad)}

/* users */
.mm-admin-users{display:grid;gap:14px}
.mm-admin-toolbar{display:flex;gap:10px;flex-wrap:wrap}
.mm-admin-search{flex:1 1 240px;min-width:0}
.mm-admin-toolbar select{flex:0 0 auto}
.mm-admin-table-card{padding:0;overflow:visible}
.mm-admin-table table{width:100%;border-collapse:collapse}
.mm-admin-table th{font-size:12px;color:var(--mm-a-muted);text-align:left;font-weight:700;padding:10px 14px;border-bottom:1px solid var(--mm-a-line);white-space:nowrap}
.mm-admin-table td{padding:12px 14px;border-bottom:1px solid var(--mm-a-line);vertical-align:middle}
.mm-admin-table tr:last-child td{border-bottom:0}
.mm-admin-table .num{text-align:right;font-variant-numeric:tabular-nums}
.mm-user-name strong{display:block}
.mm-user-name small{font-size:11px;color:var(--mm-a-muted);font-family:ui-monospace,monospace}
.mm-cell-actions{width:48px;text-align:right}
.mm-row-menu{position:relative;display:inline-block}
.mm-dots{border:0;background:transparent;font-size:20px;line-height:1;color:var(--mm-a-muted);width:36px;height:36px;border-radius:8px;cursor:pointer}
.mm-dots:hover{background:var(--mm-a-soft)}
.mm-row-menu-pop{position:absolute;right:0;top:100%;z-index:20;background:#fff;border:1px solid var(--mm-a-line);border-radius:10px;box-shadow:0 10px 24px rgba(18,63,46,.14);padding:4px;min-width:170px}
.mm-row-menu-pop button{display:block;width:100%;text-align:left;border:0;background:transparent;font:inherit;padding:9px 12px;border-radius:8px;cursor:pointer}
.mm-row-menu-pop button:hover{background:var(--mm-a-soft)}
.mm-row-menu-pop button.danger{color:var(--bad)}
.mm-admin-pager{display:flex;gap:8px;align-items:center;justify-content:flex-end;padding:10px 14px;color:var(--mm-a-muted);font-size:13px;flex-wrap:wrap}
.mm-admin-pager span{margin-right:auto}
.mm-admin-confirm-backdrop{position:fixed;inset:0;background:rgba(10,30,22,.4);z-index:90;display:grid;place-items:center;padding:16px}
.mm-admin-confirm{max-width:420px;width:100%;display:grid;gap:8px}
.mm-admin-confirm h3,.mm-admin-confirm p{margin:0}
.mm-admin-confirm .action-row{justify-content:flex-end;margin-top:6px}
@media (max-width:767px){
  .mm-admin-table table,.mm-admin-table tbody,.mm-admin-table tr,.mm-admin-table td{display:block}
  .mm-admin-table thead{display:none}
  .mm-admin-table tr{position:relative;padding:12px 14px;border-bottom:1px solid var(--mm-a-line)}
  .mm-admin-table td{border:0;padding:3px 0;display:flex;justify-content:space-between;gap:12px;text-align:right}
  .mm-admin-table td::before{content:attr(data-label);color:var(--mm-a-muted);font-size:12px;text-align:left}
  .mm-admin-table td:first-child{text-align:left;padding-right:44px}
  .mm-admin-table td:first-child::before{display:none}
  .mm-admin-table td.mm-cell-actions{position:absolute;top:8px;right:8px;width:auto;padding:0}
  .mm-admin-table td.mm-cell-actions::before{display:none}
  .mm-admin-table td[colspan]::before{display:none}
}

/* announcements */
.mm-ann{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:16px;align-items:start}
@media (max-width:1023px){.mm-ann{grid-template-columns:1fr}}
.mm-ann-list{padding:0;display:grid}
.mm-ann-list-head{display:flex;gap:12px;justify-content:space-between;align-items:flex-start;padding:16px 16px 10px}
.mm-ann-list-head h2{margin:0;font-size:18px}
.mm-ann-list-head p{margin:2px 0 0;font-size:13px}
.mm-ann-list .mm-seg{margin:0 16px 10px}
.mm-seg{display:inline-flex;flex-wrap:wrap;background:var(--mm-a-soft);border-radius:10px;padding:3px;gap:2px;justify-self:start}
.mm-seg button{border:0;background:transparent;font:inherit;font-size:13px;font-weight:600;color:var(--mm-a-muted);padding:5px 12px;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.mm-seg button.on{background:#fff;color:var(--mm-a-green);box-shadow:0 1px 2px rgba(0,0,0,.08)}
.mm-missing{width:7px;height:7px;border-radius:50%;background:var(--mm-a-gold);display:inline-block}
.mm-ann-rows{display:grid;border-top:1px solid var(--mm-a-line)}
.mm-ann-row{--k:var(--info);display:flex;gap:12px;align-items:flex-start;justify-content:space-between;width:100%;text-align:left;border:0;border-bottom:1px solid var(--mm-a-line);border-left:4px solid var(--k);background:transparent;font:inherit;padding:12px 16px 12px 14px;cursor:pointer}
.mm-ann-row:last-child{border-bottom:0}
.mm-ann-row:hover,.mm-ann-row.selected{background:var(--mm-a-soft)}
.mm-ann-row strong{display:block;font-size:14px}
.mm-ann-row small{display:block;color:var(--mm-a-muted);font-size:12px;margin-top:2px}
.sev-info{--k:var(--info)}.sev-success{--k:var(--ok)}.sev-warning{--k:var(--mm-a-gold)}.sev-important{--k:var(--bad)}
.mm-ann-empty{padding:16px;margin:0}
.mm-ann-form{display:grid;gap:14px}
.mm-ann-form-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.mm-ann-form-head h3{margin:0}
.mm-ann-form label{display:grid;gap:6px;font-weight:600}
.mm-ann-form fieldset{border:0;padding:0;margin:0;display:grid;gap:6px}
.mm-ann-form legend{font-weight:600;padding:0;margin-bottom:6px}
.mm-chips{display:flex;flex-wrap:wrap;gap:6px}
.mm-chips button{border:1px solid #cfdcd3;background:#fff;border-radius:999px;font:inherit;font-size:13px;font-weight:500;padding:5px 13px;cursor:pointer;min-height:34px}
.mm-chips button.on{background:var(--mm-a-green);border-color:var(--mm-a-green);color:#fff}
.mm-chips.quiet button{border-style:dashed;color:var(--mm-a-muted);font-size:12px;min-height:30px}
.mm-kinds{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
@media (max-width:520px){.mm-kinds{grid-template-columns:repeat(2,minmax(0,1fr))}}
.mm-kinds button{display:grid;gap:2px;text-align:left;border:1px solid #cfdcd3;background:#fff;border-radius:10px;padding:8px 10px;font:inherit;cursor:pointer}
.mm-kinds b{display:flex;align-items:center;gap:6px;font-size:13px}
.mm-kinds b::before{content:"";width:10px;height:10px;border-radius:3px;background:var(--k)}
.mm-kinds small{font-size:11.5px;color:var(--mm-a-muted)}
.mm-kinds button.on{border-color:var(--mm-a-green);box-shadow:0 0 0 2px rgba(23,100,69,.18)}
.mm-ann-preview{display:grid;gap:6px}
.mm-ann-banner{display:grid;gap:2px;border-radius:12px;padding:12px 14px;border:1px solid;font-size:14px}
.mm-ann-banner.sev-info{background:var(--info-bg);border-color:#c9daee;color:#24476b}
.mm-ann-banner.sev-success{background:var(--ok-bg);border-color:#bfe0cb;color:#14563b}
.mm-ann-banner.sev-warning{background:var(--warn-bg);border-color:#ecd9a6;color:#5f4610}
.mm-ann-banner.sev-important{background:var(--bad-bg);border-color:#ecc3bf;color:#7c2b2b}
.mm-ann-foot{display:flex;gap:8px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--mm-a-line);padding-top:12px}
.mm-switch{display:flex!important;grid-template-columns:none;align-items:center;gap:8px!important;font-weight:500!important;margin-right:auto}
.mm-switch input{width:18px;height:18px;accent-color:var(--mm-a-green)}
.mm-ann-placeholder{display:grid;gap:6px;align-content:center;min-height:200px;text-align:center}
.mm-ann-placeholder h3,.mm-ann-placeholder p{margin:0}
.mm-ann-form input[type="datetime-local"],.mm-ann-form input,.mm-ann-form textarea{border:1px solid #cfdcd3;border-radius:10px;padding:9px 11px;font:inherit;background:#fff;min-height:42px}
.mm-ann-form input:focus,.mm-ann-form textarea:focus{outline:none;border-color:var(--mm-a-green);box-shadow:0 0 0 3px rgba(23,100,69,.14)}

/* campaign card tidy */
.admin-campaign-card input[type="datetime-local"]{border:1px solid #cfdcd3;border-radius:10px;padding:9px 11px;font:inherit;min-height:42px}

/* homepage settings */
.homepage-editor-heading.mm-sticky-save{position:sticky;top:76px;z-index:5;background:#fff;border:1px solid var(--mm-a-line);border-radius:12px;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 6px 18px rgba(20,63,46,.06)}
.mm-sticky-save h2{margin:0;font-size:18px}
.mm-sticky-save small{display:block}
details.mm-acc{border:1px solid var(--mm-a-line);border-radius:12px;padding:0;background:#fff}
details.mm-acc>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:10px;padding:14px 16px;font-weight:700;font-size:15px}
details.mm-acc>summary::-webkit-details-marker{display:none}
details.mm-acc>summary::after{content:"";margin-left:auto;width:8px;height:8px;border-right:2px solid var(--mm-a-muted);border-bottom:2px solid var(--mm-a-muted);transform:rotate(-45deg);transition:transform .15s}
details.mm-acc[open]>summary::after{transform:rotate(45deg)}
details.mm-acc>summary:focus-visible{outline:2px solid var(--mm-a-green);outline-offset:-2px;border-radius:12px}
details.mm-acc[open]{padding:0 16px 16px}
details.mm-acc[open]>summary{margin:0 -16px 6px}
@media (prefers-reduced-motion:reduce){details.mm-acc>summary::after{transition:none}}
@media (max-width:767px){.homepage-editor-heading.mm-sticky-save{top:64px}}

/* credit */
.mm-trial-card{display:grid;grid-template-columns:minmax(0,1fr) 160px auto;gap:12px;align-items:end}
.mm-trial-card h3,.mm-trial-card p{margin:0}
@media (max-width:767px){.mm-trial-card{grid-template-columns:1fr}}
@media (max-width:767px){.mm-admin-table table{min-width:0}}
.mm-admin-search,.mm-admin-toolbar select{border:1px solid #cfdcd3;border-radius:10px;padding:9px 12px;font:inherit;background:#fff;min-height:42px}
.mm-admin-search:focus,.mm-admin-toolbar select:focus{outline:none;border-color:var(--mm-a-green);box-shadow:0 0 0 3px rgba(23,100,69,.14)}
.mm-ann-list-head .btn{white-space:nowrap;flex:none}
.mm-novideo-dialog{max-width:440px;width:calc(100% - 32px);border:0;border-radius:18px;padding:24px;display:grid;gap:10px;text-align:center}
.mm-novideo-dialog::backdrop{background:rgba(10,30,22,.45)}
.mm-novideo-dialog h2{margin:0;font-size:20px}
.mm-novideo-dialog p{margin:0;color:#4d6157}
.mm-novideo-dialog .action-row{justify-content:center;margin-top:8px;flex-wrap:wrap}
.teacher-card .teacher-about{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.teacher-card .teacher-about{white-space:pre-line}
.mm-readmore{display:grid;gap:4px;justify-items:start}
.mm-readmore-text{margin:0;white-space:pre-line;display:-webkit-box;-webkit-line-clamp:var(--mm-lines,3);line-clamp:var(--mm-lines,3);-webkit-box-orient:vertical;overflow:hidden}
.mm-readmore-text.open{display:block;-webkit-line-clamp:unset;line-clamp:none;overflow:visible}
.mm-readmore-toggle{border:0;background:none;padding:2px 0;font:inherit;font-weight:700;color:#176445;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.mm-readmore-toggle:focus-visible{outline:2px solid #176445;outline-offset:2px;border-radius:4px}
textarea.mm-bio-input{min-height:160px;resize:vertical;line-height:1.6}

/* ===== v3.15 review fixes ===== */
/* header: one line at 1280–1440px (Windows scrollbar included) */
.topbar .desktop-nav a,.topbar .desktop-nav button,.topbar .account-actions a,.topbar .account-actions button,.topbar .account-role{white-space:nowrap}
@media (min-width:1024px) and (max-width:1440px){
  .topbar .desktop-nav{gap:14px!important}
  .topbar .desktop-nav a{font-size:13.5px}
  .topbar .brand small{display:none}
  .topbar .account-role{display:none}
  .topbar .account-actions .btn{padding-inline:12px}
}
/* language switch + small touch targets */
.language-switch button{font-size:12px;min-width:36px;min-height:36px}
@media (max-width:767px){.language-switch button{min-width:44px;min-height:44px}.footer-links a{display:inline-flex;align-items:center;min-height:44px}}
/* register choices */
.mm-register-choices{display:grid;gap:10px;margin:8px 0 14px}
.mm-register-choice{display:grid;gap:4px;padding:14px 16px;border:1px solid #cfdcd3;border-radius:14px;background:#fff;color:inherit;text-decoration:none}
.mm-register-choice strong{font-size:16px;color:#123f2e}
.mm-register-choice span{color:#4f6359;font-size:14px}
.mm-register-choice.primary{border-color:#176445;background:#eff6ef}
.mm-register-choice:hover,.mm-register-choice:focus-visible{border-color:#176445;outline:none;box-shadow:0 0 0 3px rgba(23,100,69,.14)}
/* inbox empty */
.mm-inbox-empty{display:grid;gap:8px;justify-items:start;padding:18px 14px;border:1px dashed #cfdcd3;border-radius:14px;margin:8px 0}
.mm-inbox-empty p{margin:0;color:#4f6359}
/* announcements: one at a time */
.mm-ann-more{justify-self:start;border:0;background:none;font:inherit;font-weight:700;color:#176445;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:4px 2px}
/* admin overview extra queue */
.mm-extra-queue .admin-queue button{display:grid;gap:4px;text-align:left;border:1px solid var(--mm-a-line,#dce8e1);border-radius:12px;background:#fbfcfa;padding:12px 14px;font:inherit;cursor:pointer}
.mm-extra-queue .admin-queue button strong{font-size:22px}
.mm-extra-queue .admin-queue button:hover{border-color:#176445}
/* package form */
.mm-pkg-form form{display:grid;gap:12px;margin-bottom:16px}
.mm-pkg-form .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.mm-pkg-form label{display:grid;gap:6px;font-weight:600}
.mm-pkg-form label:has(>input[type="checkbox"]){display:flex;align-items:center;gap:8px;font-weight:500}
.mm-pkg-form form>button{justify-self:start}
@media (max-width:640px){.mm-pkg-form .form-grid{grid-template-columns:1fr}}
/* wallet picker */
.mm-wallet-picker{display:grid;gap:6px;font-weight:600;max-width:480px;margin-bottom:12px}
.mm-wallet-picker-row{display:flex;gap:8px}
.mm-wallet-picker input{flex:1;min-width:0;border:1px solid #cfdcd3;border-radius:10px;padding:9px 12px;font:inherit;font-weight:400}
/* audit log */
.mm-audit{display:grid;gap:12px}
.mm-audit-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.mm-audit-head h2,.mm-audit-head p{margin:0}
.mm-audit-list{list-style:none;margin:0;padding:0;display:grid}
.mm-audit-list li{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;padding:10px 0;border-top:1px solid #e3ece6}
.mm-audit-list li:first-child{border-top:0}
.mm-audit-list time{font-size:12px;color:#55675e;font-variant-numeric:tabular-nums}
.mm-audit-list li div{display:grid;gap:2px}
.mm-audit-list small{color:#55675e;font-size:12px}
@media (max-width:540px){.mm-audit-list li{grid-template-columns:1fr;gap:2px}}
/* admin users: role tabs wrap on phones instead of hidden horizontal scroll */
@media (max-width:767px){.mm-admin-users .mm-admin-subtabs{flex-wrap:wrap;border-bottom:0;gap:6px}.mm-admin-users .mm-admin-subtabs button{border:1px solid #dce8e1;border-radius:999px;min-height:38px;padding:6px 12px}.mm-admin-users .mm-admin-subtabs button.active{border-color:#176445;background:#eff6ef}}
.mm-row-menu-pop a{display:block;padding:9px 12px;border-radius:8px;color:inherit;text-decoration:none}
.mm-row-menu-pop a:hover{background:var(--mm-a-soft,#eff6ef)}
/* file inputs in admin */
.admin-dashboard input[type="file"]{font:inherit;font-size:13px;color:#4f6359;max-width:100%}
.admin-dashboard input[type="file"]::file-selector-button{font:inherit;font-weight:700;border:1px solid #176445;color:#176445;background:#fff;border-radius:10px;padding:8px 14px;margin-right:10px;cursor:pointer}
/* teacher contact note */
.mm-contact-note{margin:-4px 0 6px;font-size:13px}
/* readable sizes and contrast */
.mm-pill{font-size:12px}
.mm-pill.ok{color:#145c3d}.mm-pill.warn{color:#6e500c}.mm-pill.off{color:#4a524e}.mm-pill.info{color:#244b72}.mm-pill.bad{color:#8c2f2f}
.mm-admin-users .mm-user-name small,.mm-code{color:#55675e}
.site-announcement small{color:#3f5148}
.mm-admin-side-label{font-size:12px}
/* v3.15: teacher profile sections fold on phones */
@media (max-width:767px){
  [data-mm-sections] [data-mm-sec-hidden]{display:none!important}
  [data-mm-sections] > h2[data-mm-sec]{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0 0;padding:14px 14px;border:1px solid #dce8e1;border-radius:12px;background:#fbfcfa;font-size:17px;cursor:pointer;-webkit-tap-highlight-color:transparent}
  [data-mm-sections] > h2[data-mm-sec]::after{content:"";flex:none;width:9px;height:9px;border-right:2px solid #55675e;border-bottom:2px solid #55675e;transform:rotate(45deg);transition:transform .15s}
  [data-mm-sections] > h2[data-mm-sec][aria-expanded="true"]{background:#eff6ef;border-color:#176445}
  [data-mm-sections] > h2[data-mm-sec][aria-expanded="true"]::after{transform:rotate(-135deg)}
  [data-mm-sections] > h2[data-mm-sec]:focus-visible{outline:2px solid #176445;outline-offset:2px}
}
@media (max-width:767px) and (prefers-reduced-motion:reduce){[data-mm-sections] > h2[data-mm-sec]::after{transition:none}}
/* v3.15: bottom bar on desktop — same bar as phones, a little roomier */
@media (min-width:768px){
  .mm-bottom-nav{bottom:18px;max-width:560px;box-shadow:0 10px 30px rgba(15,81,50,.25)}
  .mm-bottom-shell{padding-bottom:120px}
  .mm-bottom-sheet{max-width:560px;bottom:110px}
  .mm-bottom-shell .footer{padding-bottom:110px}
}

/* v3.16: account deletion page + admin requests */
.mm-delete-page .card{display:grid;gap:10px;margin-top:16px}
.mm-delete-page h2{margin:0;font-size:1.1rem}
.mm-delete-page ul{margin:0;padding-left:20px;display:grid;gap:4px}
.mm-delete-page textarea{width:100%;box-sizing:border-box}
.mm-delete-agree{display:flex;gap:10px;align-items:flex-start;line-height:1.5}
.mm-delete-agree input{margin-top:4px;width:18px;height:18px;flex:none}
.mm-delete-action .btn{justify-self:start}
.mm-delete-status{display:grid;gap:6px;background:#fff7e6;border:1px solid #f3d9a4;border-radius:12px;padding:12px}
.mm-delete-status p{margin:0}
.mm-admin-deletions{display:grid;gap:10px;margin-bottom:14px;border-left:4px solid var(--bad)}
.mm-admin-deletions h2{margin:0;font-size:1.05rem}
.mm-admin-deletions h2 em{font-style:normal;background:var(--bad);color:#fff;border-radius:999px;padding:0 8px;font-size:.85rem}
.mm-admin-deletion-row{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;border-top:1px solid #e6ece8;padding-top:10px}
.mm-admin-deletion-row small{display:block;color:#5b6b62}
.mm-admin-deletion-row p{margin:4px 0 0}
.mm-delete-note{margin:0;background:#eaf6ef;border-radius:10px;padding:8px 12px}

/* v3.18: qualification document viewer works on phones (PDF drawn page by page, buttons pinned on top) */
.mm-qualification-viewer .mm-document-header{position:sticky;top:-24px;z-index:2;background:#fff;margin:-24px -24px 0;padding:16px 24px 8px}
.mm-qualification-viewer .mm-document-actions{margin:0 0 8px}
.mm-qualification-viewer .mm-document-status{margin:4px 0 12px}
.mm-qualification-viewer canvas.mm-document-page{height:auto;max-width:100%;margin:0 auto 12px;background:#fff}
@media (max-width:760px){
  .mm-qualification-viewer{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:16px;border-radius:0}
  .mm-qualification-viewer .mm-document-header{top:-16px;margin:-16px -16px 0;padding:12px 16px 8px}
  .mm-qualification-viewer .mm-document-actions .btn{width:100%;text-align:center}
}

/* v3.19: teacher reviews */
.mm-stars{display:inline-flex;gap:1px;line-height:1;font-size:1rem}
.mm-stars .on{color:#e0a100}.mm-stars .off{color:#cfd8d3}
.mm-teacher-reviews .mm-reviews-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}
.mm-teacher-reviews .mm-reviews-head h2{margin:0}
.mm-reviews-summary{display:inline-flex;align-items:center;gap:6px}
.mm-review-list{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:12px}
.mm-review-item{border-top:1px solid #e3ece7;padding-top:12px}
.mm-review-item.hidden{opacity:.6}
.mm-review-item-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.mm-review-item-head time{color:#6b7f76;font-size:.85rem;margin-left:auto}
.mm-review-item p{margin:6px 0 0;overflow-wrap:anywhere}
.mm-review-form{border:1px solid #d7e7df;background:#f8fcfa;border-radius:14px;padding:14px;margin:12px 0;display:grid;gap:8px}
.mm-review-form h3{margin:0}
.mm-star-picker{display:flex;gap:4px}
.mm-star-picker button{font-size:2rem;line-height:1;background:none;border:0;padding:4px;cursor:pointer;min-width:44px;min-height:44px}
.mm-star-picker button.on{color:#e0a100}.mm-star-picker button.off{color:#cfd8d3}
.mm-star-picker button:focus-visible{outline:2px solid #1d6b4f;border-radius:8px}
.mm-review-saved{color:#1d6b4f}
.mm-admin-reviews summary{cursor:pointer}
.mm-review-form label{display:grid;gap:6px;width:100%}
.mm-review-form textarea{width:100%;box-sizing:border-box}
.mm-review-item > small{display:block;margin:4px 0}.mm-review-item > .btn{margin-top:6px}
#reviews{scroll-margin-top:88px}
/* v3.19.1: stars filled by the average (4.5 = four and a half yellow stars) */
.mm-stars .mm-star{position:relative;display:inline-block;color:#d5dcd8;line-height:1}
.mm-stars .mm-star-fill{position:absolute;left:0;top:0;overflow:hidden;white-space:nowrap;color:#f5b301}
.mm-card-rating{display:inline-flex;align-items:center;gap:6px}
.mm-card-rating .mm-stars{font-size:1.05rem}
.mm-card-rating b{font-weight:700}
.mm-star-picker button.on{color:#f5b301}
/* v3.19.2: small version number at the bottom of the footer */
.footer .mm-app-version{display:block;margin-top:6px;font-size:.72rem;opacity:.55;letter-spacing:.02em;text-align:right}
.footer .mm-app-version{margin-left:auto;align-self:flex-end}
/* v3.21 push notifications card */
.mm-push-card{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.mm-push-card .mm-push-text{flex:1 1 320px;min-width:0}
.mm-push-card h2{margin:5px 0 8px}
.mm-push-card p{margin:0 0 7px}
.mm-push-card .mm-push-on{font-weight:700;color:#125b3c;margin:6px 0 0}
.mm-push-card[data-status="on"]{padding-top:14px;padding-bottom:14px}
.mm-push-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.mm-push-actions .btn{flex:none}
.mm-push-steps{margin:8px 0 0;padding-left:1.3em;color:#3f5a4e;line-height:1.6}
.mm-push-steps li{margin:3px 0}
.mm-push-message{flex-basis:100%;margin:0!important;padding:10px 14px;border-radius:12px;background:#edf7f2;color:#125b3c}
@media(max-width:700px){.mm-push-card{flex-direction:column;align-items:stretch;gap:14px}.mm-push-card .mm-push-text{flex:0 0 auto}.mm-push-actions{width:100%}.mm-push-actions .btn{flex:1 1 auto}}
.mm-admin-layout:not([data-mm-group="overview"]) .mm-push-card{display:none}
/* v3.22 institution job offers */
.mm-offer-card{display:grid;gap:12px}
.mm-offer-card h2{margin:5px 0 6px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mm-offer-card .mm-offer-title p{margin:0;color:#4c6358}
.mm-offer-count{display:inline-grid;place-items:center;min-width:26px;height:26px;padding:0 7px;border-radius:999px;background:#d64545;color:#fff;font-size:.85rem}
.mm-offer{border:1px solid #dce8e2;border-radius:16px;padding:14px 16px;background:#fbfdfc;display:grid;gap:8px}
.mm-offer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap}
.mm-offer-subject{margin:0;font-weight:700;color:#153f30}
.mm-offer-facts{list-style:none;margin:0;padding:0;display:grid;gap:3px;color:#3f5a4e}
.mm-offer-message{margin:0;padding:8px 12px;border-left:3px solid #9fd0b7;background:#f2f8f5;border-radius:8px;color:#2f4a3e;white-space:pre-wrap}
.mm-offer-note{margin:0;color:#60766c;font-size:.92rem}
.mm-offer-msg{margin:0;padding:10px 14px;border-radius:12px;background:#edf7f2;color:#125b3c}
.mm-offer-empty{margin:0;color:#60766c}
.mm-offer-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.mm-offer-actions .btn{flex:none}
.mm-offer-verified{display:inline-block;padding:2px 8px;border-radius:999px;background:#dff4e8;color:#125b3c;font-size:.8rem;font-weight:700}
.mm-offer-chip{display:inline-flex;padding:4px 10px;border-radius:999px;font-size:.82rem;font-weight:700;background:#edf2ef;color:#4c6358;white-space:nowrap}
.mm-offer-chip.pending{background:#fff3d6;color:#7c5a09}
.mm-offer-chip.accepted{background:#dff4e8;color:#125b3c}
.mm-offer-chip.declined{background:#ffe4df;color:#8e2d20}
.mm-offer-about summary,.mm-offer-history summary{cursor:pointer;color:#0f5132;font-weight:600}
.mm-offer-about p{margin:6px 0 0;color:#3f5a4e}
.mm-offer-decline{display:grid;gap:8px}
.mm-offer-decline textarea{width:100%;box-sizing:border-box}
.mm-offer-list,.mm-offer-history{display:grid;gap:6px}
.mm-offer-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:space-between;padding:10px 0;border-top:1px solid #e6efea}
.mm-offer-row>span{flex:1 1 240px;min-width:0}
.mm-offer-row small{display:block;color:#60766c}
.mm-offer-switch{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;margin:0!important;font-weight:600}
.mm-offer-switch input{width:auto!important;min-height:0!important}
.mm-offer-banner{margin:0;padding:10px 14px;border-radius:12px;font-weight:600}
.mm-offer-banner.good{background:#dff4e8;color:#125b3c}.mm-offer-banner.warn{background:#fff3d6;color:#7c5a09}.mm-offer-banner.bad{background:#ffe4df;color:#8e2d20}
.mm-offer-profile-box{display:grid;gap:8px;padding:0 0 14px;margin:0 0 14px;border-bottom:1px solid #e6efea}
.mm-offer-profile-box h3{margin:0}
.mm-offer-dialog{width:min(640px,calc(100vw - 24px));max-height:92dvh;overflow:auto;border:0;border-radius:22px;padding:22px;color:#173e2d;box-shadow:0 30px 90px #001b1260}
.mm-offer-dialog::backdrop{background:#001b1288}
.mm-offer-admin-dialog{width:min(900px,calc(100vw - 24px))}
.mm-offer-form{display:grid;gap:12px}
.mm-offer-form label{display:grid;gap:5px;font-weight:600}
.mm-offer-form input,.mm-offer-form select,.mm-offer-form textarea{width:100%;box-sizing:border-box;font-weight:400}
.mm-offer-form label[hidden]{display:none}
.mm-offer-admin-card{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.mm-offer-admin-card h2{margin:5px 0 8px}.mm-offer-admin-card p{margin:0 0 7px}
.mm-admin-layout:not([data-mm-group="review"]) .mm-offer-admin-card{display:none}
@media(max-width:700px){.mm-offer-actions .btn{flex:1 1 auto}.mm-offer-dialog{padding:16px}.mm-offer-admin-card{flex-direction:column;align-items:stretch}}

/* v3.24 teacher search: 5 filters (search, subject, gender, province, max price) */
.filterbar.mm-filter-5{grid-template-columns:2fr repeat(4,1fr)}
@media(max-width:900px){.filterbar.mm-filter-5{grid-template-columns:1fr 1fr}.filterbar.mm-filter-5>input[type=search]{grid-column:1/-1}}
@media(max-width:620px){.filterbar.mm-filter-5{grid-template-columns:1fr}}

/* v3.25 institution start: steps, one ID form, contacts after accepting, reports */
.mm-inst-steps{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.mm-inst-steps>li{display:flex;gap:12px;align-items:flex-start;padding:12px;border:1px solid #e6efea;border-radius:14px;background:#fbfdfc}
.mm-inst-steps>li.done{background:#f1faf5;border-color:#cfe9da}
.mm-inst-steps>li>div{flex:1;min-width:0;display:grid;gap:8px}
.mm-inst-steps p{margin:0}
.mm-inst-step-n{flex:0 0 28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#e6efea;color:#174f39;font-weight:700}
.mm-inst-steps>li.done .mm-inst-step-n{background:#174f39;color:#fff}
.mm-inst-id-form{display:grid;gap:10px}
.mm-inst-id-form label{display:grid;gap:4px;font-weight:600}
.mm-inst-id-form input[type=text],.mm-inst-id-form input:not([type]),.mm-inst-id-form input[type=date],.mm-inst-id-form input[type=file]{width:100%;border:1px solid #d7e3dc;border-radius:12px;padding:10px;background:#fff;font:inherit}
.mm-inst-id-form small{font-weight:400;color:#60766c}
.mm-inst-id-form .mm-inst-consent{display:flex;gap:8px;align-items:flex-start;font-weight:400;font-size:.85rem;color:#40564c;max-height:9em;overflow:auto}
.mm-inst-consent input{margin-top:3px;flex:0 0 auto}
.mm-offer-contacts{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:6px;padding:8px 10px;border-radius:10px;background:#f1faf5}
.mm-offer-contacts small{font-size:.9rem;color:#174f39}
.mm-offer-report{font-size:.85rem}
.mm-offer-reported{color:#8e2d20}

/* v3.25 ID photo step (selfie mix-ups) */
.mm-idphoto{display:grid;gap:10px;padding:14px;border:2px solid #cfe9da;border-radius:16px;background:#f7fbf9;margin:6px 0}
.mm-idphoto h3{margin:0}
.mm-idphoto-guide{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.mm-idphoto-sample{width:150px;height:auto;flex:0 0 auto}
.mm-idphoto-guide ul{margin:0;padding-left:18px;display:grid;gap:4px;flex:1 1 200px}
.mm-idphoto-guide li.bad{color:#8e2d20;font-weight:700}
.mm-idphoto-buttons{display:flex;gap:8px;flex-wrap:wrap}
.mm-idphoto-preview{max-width:100%;max-height:260px;border-radius:12px;border:1px solid #d7e3dc;justify-self:start;background:#fff}
.mm-idphoto-warn{margin:0;padding:8px 12px;border-radius:10px;background:#fff3d6;color:#7c5a09;font-weight:600}
.mm-idphoto-confirm{font-weight:600}
/* v3.26: learner-profile window — phone + birth date */
.mm-student-basics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px 14px;margin:4px 0 12px}
.mm-student-basics label{display:grid;gap:6px;font-weight:600}
.mm-student-basics input{width:100%;min-height:44px}
.mm-student-basics small{grid-column:1/-1;color:#5c6b63}
.mm-student-required-note{margin:0 0 10px}
.mm-quick-start{text-align:center}
/* v3.27 notification popup (push-v321.js) */
.mm-push-prompt{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(10,30,22,.45)}
.mm-push-prompt-card{width:min(420px,100%);background:#fff;border-radius:20px;padding:24px 22px 20px;box-shadow:0 18px 50px rgba(0,0,0,.25);text-align:center}
.mm-push-prompt-icon{font-size:38px;line-height:1;margin-bottom:8px}
.mm-push-prompt-card h2{margin:0 0 8px;font-size:1.3rem}
.mm-push-prompt-card p{margin:0 0 14px;color:#3f5a4e;line-height:1.6}
.mm-push-prompt-card .mm-push-message{text-align:left}
.mm-push-prompt-actions{display:flex;flex-direction:column;gap:10px}
.mm-push-prompt-actions .btn{width:100%}
/* v3.28 เรียนวันละนิด (fragment-v328-learn.js) */
.mm-learn,.mm-learn-dash,.mm-learn-home{--lg:#145c4b;--lg2:#1f7262;--lgs:#e3eeea;--gold:#f0b443;--golds:#fdf1d8;--ink:#1b2a24;--mute:#66756e;--line:#e2e5e0}
.mm-learn{max-width:560px}
.mm-learn [lang="ar"],.mm-learn-dash-ar,.mm-learn-admin-ar,.mm-learn-ar-input,.mm-learn-home [lang="ar"]{font-family:"Amiri","Noto Naskh Arabic","Traditional Arabic",serif}
.mm-learn-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px}
.mm-learn-head p{margin:0;color:var(--mute)}
.mm-learn-head h1{margin:2px 0 0;font-size:1.7rem}
.mm-learn-pills{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.mm-learn-pill{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;font-weight:700;text-decoration:none}
.mm-learn-pill.gold{background:var(--golds);color:#8a5a00}
.mm-learn-pill.green{background:var(--lgs);color:var(--lg)}
.mm-learn-hero{display:block;background:var(--lg);color:#fff;border-radius:24px;padding:22px 20px;margin-bottom:16px;text-decoration:none}
.mm-learn-hero-top{display:flex;justify-content:space-between;align-items:center;gap:10px;font-weight:700}
.mm-learn-chip{background:var(--lg2);border-radius:999px;padding:5px 12px;font-weight:500;font-size:.9rem}
.mm-learn-hero-ar{font-size:2.2rem;line-height:1.9;text-align:center;margin:14px 0 6px}
.mm-learn-hero-meta{text-align:center;opacity:.85;margin:0 0 16px}
.mm-learn-hero h2{margin:4px 0 6px;color:#fff}
.mm-learn-hero-kicker{margin:0;opacity:.85;font-weight:700}
.mm-learn-card{display:block;width:100%;text-align:left;background:#fff;border:1px solid var(--line);border-radius:20px;padding:16px 18px;margin-bottom:14px;color:var(--ink);font:inherit}
.mm-learn-card p{margin:4px 0 0}
.mm-learn-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.mm-learn-row>div{flex:1;min-width:0}
.mm-learn-review{cursor:pointer}.mm-learn-review:disabled{cursor:default;opacity:.85}
.mm-learn-review p{color:var(--mute)}
.mm-learn-week{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-top:12px;text-align:center}
.mm-learn-week span{display:block;width:34px;height:34px;margin:0 auto 4px;border-radius:50%;background:#e4e7e1}
.mm-learn-week .done span{background:var(--lg)}
.mm-learn-week .today:not(.done) span{background:#fff;border:2px dashed var(--lg)}
.mm-learn-week .today small{font-weight:700;color:var(--ink)}
.mm-learn-week small{color:var(--mute)}
.mm-learn-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:14px;padding:11px 18px;font:inherit;font-weight:700;cursor:pointer;text-decoration:none;white-space:nowrap}
.mm-learn-btn.big{width:100%;padding:15px 18px;font-size:1.05rem}
.mm-learn-btn.green{background:var(--lg);color:#fff}
.mm-learn-btn.gold{background:var(--gold);color:#1b1b1b}
.mm-learn-btn.outline{background:#fff;color:var(--lg);border:2px solid var(--lg)}
.mm-learn-btn:disabled{opacity:.6;cursor:default}
.mm-learn-round{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:14px;flex:none;border:0}
.mm-learn-round.gold{background:var(--gold);color:#1b1b1b;border-radius:50%;width:52px;height:52px;cursor:pointer}
.mm-learn-round.gold-soft{background:var(--golds);color:#8a5a00}
.mm-learn-round.green-soft{background:var(--lgs);color:var(--lg)}
.mm-learn-screen{display:flex;flex-direction:column;gap:14px;padding-bottom:110px}
.mm-learn-top{display:flex;align-items:center;gap:12px}
.mm-learn-top.end{justify-content:flex-end}
.mm-learn-iconbtn{width:44px;height:44px;border-radius:14px;border:1px solid var(--line);background:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--ink)}
.mm-learn-progress{flex:1;display:flex;gap:6px}
.mm-learn-progress span{flex:1;height:7px;border-radius:9px;background:#dcdfd8}
.mm-learn-progress span.on{background:var(--lg)}
.mm-learn-step-count{font-weight:700;color:var(--mute)}
.mm-learn-kicker{margin:0;color:var(--lg);font-weight:700}
.mm-learn-kicker-row{display:flex;justify-content:space-between;align-items:center;gap:10px;color:var(--mute)}
.mm-learn-title{margin:0;font-size:1.6rem}
.mm-learn-center{text-align:center}
.mm-learn-arabic{font-size:2.3rem;line-height:2;margin:4px 0}
.mm-learn-translit{color:var(--mute);font-style:italic;margin:0 0 12px!important}
.mm-learn-audio{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.mm-learn-label{margin:0 0 6px!important;color:var(--mute);font-weight:700;font-size:.92rem}
.mm-learn-meaning{font-size:1.15rem;line-height:1.7}
.mm-learn-note{color:var(--mute)}
.mm-learn-source{border-top:1px solid var(--line);padding-top:10px;margin-top:12px!important;color:var(--mute);font-size:.92rem}
.mm-learn-bottom{position:sticky;bottom:calc(84px + env(safe-area-inset-bottom));z-index:5;margin-top:auto}
.mm-learn-line p{font-size:1.7rem;line-height:2;text-align:center;margin:0;color:#7d8a83}
.mm-learn-line mark{background:var(--lgs);color:var(--lg);border-radius:10px;padding:0 6px}
.mm-learn-word{background:var(--lg);color:#fff;border-radius:24px;padding:20px}
.mm-learn-word-head{display:flex;justify-content:space-between;gap:10px}
.mm-learn-word-head h2{margin:0;color:#fff}
.mm-learn-word-head p{margin:4px 0 0;font-style:italic;opacity:.85}
.mm-learn-word-ar{font-size:3.2rem;text-align:center;margin:6px 0 12px;line-height:1.8}
.mm-learn-word-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mm-learn-word-grid div{background:var(--lg2);border-radius:16px;padding:10px 14px}
.mm-learn-word-grid span{display:block;font-size:.88rem;opacity:.85}
.mm-learn-word-grid b{display:block;text-align:right;font-size:1.5rem;font-weight:400}
.mm-learn-word-note{margin:12px 0 0;line-height:1.6}
.mm-learn-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px}
.mm-learn-chips button{background:#fff;border:1px solid var(--line);border-radius:16px;padding:10px 6px;cursor:pointer;font:inherit;color:var(--ink)}
.mm-learn-chips b{display:block;font-size:1.4rem;font-weight:400}
.mm-learn-chips span{font-size:.88rem;color:var(--mute)}
.mm-learn-quiz-ar{font-size:3rem;text-align:center;margin:6px 0 0;line-height:1.8}
.mm-learn-quiz-q{text-align:center;margin:0 0 6px;font-size:1.25rem}
.mm-learn-options{display:flex;flex-direction:column;gap:10px}
.mm-learn-options button{display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left;background:#fff;border:1.5px solid var(--line);border-radius:16px;padding:15px 16px;font:inherit;font-size:1.05rem;cursor:pointer;color:var(--ink)}
.mm-learn-options button:disabled{cursor:default}
.mm-learn-options .right{background:var(--lgs);border:2px solid var(--lg);color:var(--lg);font-weight:700}
.mm-learn-options .wrong{background:#fbe7e5;border:2px solid #a8322b;color:#7d1e18;font-weight:700}
.mm-learn-options .dim{color:var(--mute)}
.mm-learn-sheet{position:sticky;bottom:calc(76px + env(safe-area-inset-bottom));z-index:6;background:#fff;border:1px solid var(--line);border-radius:22px 22px 16px 16px;padding:16px;box-shadow:0 -8px 24px rgba(0,0,0,.08);display:flex;flex-direction:column;gap:12px}
.mm-learn-sheet p{margin:0}
.mm-learn-sheet-msg{display:flex;gap:12px;align-items:center}
.mm-learn-sheet-msg p{color:var(--mute);margin:2px 0 0}
.mm-learn-done{text-align:center}
.mm-learn-done h1{margin:0}
.mm-learn-flame{width:84px;height:84px;border-radius:50%;background:var(--golds);color:#b07000;display:flex;align-items:center;justify-content:center;margin:0 auto}
.mm-learn-flame svg{width:40px;height:40px}
.mm-learn-sub{color:var(--mute);margin:0}
.mm-learn-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.mm-learn-stats div{background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px 6px}
.mm-learn-stats b{display:block;font-size:1.5rem}
.mm-learn-stats span{color:var(--mute);font-size:.9rem}
.mm-learn-teacher{text-align:left}
.mm-learn-teacher p{opacity:.85}
.mm-learn-done .mm-learn-row{text-align:left}
.mm-learn-reward{margin:0}
.mm-learn-dash{display:flex;align-items:center;justify-content:space-between;gap:14px;text-decoration:none;color:inherit;flex-wrap:wrap}
.mm-learn-dash>div{flex:1 1 220px;min-width:0}
.mm-learn-dash-ar{font-size:1.6rem;line-height:1.8;margin:4px 0;text-align:right}
.mm-learn-home .container{max-width:640px}
.mm-learn-home{padding-bottom:96px}
/* chat back in the top bar on phones (the bottom bar now has วันละนิด instead) */
.mm-bottom-shell .header-tools .mm-chat-trigger{display:grid}
.mm-learn-home-card{text-align:center}
.mm-learn-home-card .mm-learn-btn{margin-top:4px}
.mm-learn-admin-filter{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.mm-learn-admin-item{border-top:1px solid #e5e8e3;padding:14px 0}
.mm-learn-admin-item h3{margin:6px 0 4px}
.mm-learn-admin-item-head{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.mm-learn-admin-ar{font-size:1.6rem;line-height:1.9;text-align:right;margin:4px 0}
.mm-learn-admin-grid,.mm-learn-admin-word{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mm-learn-admin-grid label,.mm-learn-admin-word label{display:flex;flex-direction:column;gap:4px;font-weight:600}
.mm-learn-admin-grid .wide,.mm-learn-admin-word .wide{grid-column:1/-1}
.mm-learn-admin-word{border:1px solid #e2e5e0;border-radius:14px;padding:12px;margin:0 0 10px}
.mm-learn-ar-input{font-size:1.3rem}
.mm-learn-admin-preview .mm-learn{margin:0 auto;--lg:#145c4b;--lg2:#1f7262;--lgs:#e3eeea;--gold:#f0b443;--golds:#fdf1d8;--ink:#1b2a24;--mute:#66756e;--line:#e2e5e0}
@media(max-width:560px){.mm-learn-admin-grid,.mm-learn-admin-word{grid-template-columns:1fr}.mm-learn-hero-ar{font-size:1.9rem}.mm-learn-arabic{font-size:2rem}}

/* v3.28 new home (fragment-v328-home.js): only the new cards on the dashboard home view */
.dashboard-stack:has(> .mm-home) > :not(h1):not(.mm-home):not(.mm-offer-teacher-card){display:none!important}
.dashboard-stack:has(> .mm-home) > h1{margin-bottom:4px}
.dashboard-stack:has(> .mm-home){display:flex;flex-direction:column}
.dashboard-stack:has(> .mm-home) > .mm-home{order:1}
.dashboard-stack:has(> .mm-home) > .mm-offer-teacher-card{order:2}
.mm-home{display:flex;flex-direction:column;gap:14px}
.mm-home .card{margin:0}
.mm-next-step{display:flex;align-items:center;gap:12px;padding:12px 14px}
.mm-next-step>div{flex:1;min-width:0}
.mm-next-step small{display:block;color:#66756e;font-size:.82rem}
.mm-next-step p{margin:2px 0 0;font-weight:600;line-height:1.4}
.mm-next-step .btn{flex:none;padding:8px 14px}
.mm-next-icon{font-size:1.4rem;flex:none}
.mm-prayer{background:linear-gradient(135deg,#145c4b,#1f7262);color:#fff;border:0}
.mm-prayer .eyebrow{color:#cfe7dc}
.mm-prayer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.mm-prayer-next{margin:4px 0 0;font-size:1.05rem}
.mm-prayer-next b{font-size:1.35rem}
.mm-prayer-gear{background:rgba(255,255,255,.15);border:0;color:#fff;border-radius:12px;width:40px;height:40px;font-size:1.2rem;cursor:pointer}
.mm-prayer-row{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-top:12px;text-align:center}
.mm-prayer-row div{background:rgba(255,255,255,.1);border-radius:14px;padding:8px 2px}
.mm-prayer-row small{display:block;font-size:.8rem;opacity:.85}
.mm-prayer-row b{font-size:1rem}
.mm-prayer-row .next{background:#f0b443;color:#1b1b1b}
.mm-prayer-row .past{opacity:.55}
.mm-prayer-foot{margin:10px 0 0;font-size:.78rem;opacity:.8}
.mm-prayer-settings{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin-top:12px}
.mm-prayer-settings label{display:flex;flex-direction:column;gap:4px;font-weight:600;flex:1 1 180px}
.mm-prayer-settings select{color:#1b2a24}
.mm-prayer .mm-prayer-settings .btn.ghost{background:#fff;color:#145c4b}
.mm-prayer-method{display:flex;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.5);flex:1 1 100%}
.mm-prayer-method button{flex:1;border:0;background:transparent;color:inherit;padding:8px 6px;font:inherit;font-size:.86rem;cursor:pointer}
.mm-prayer-method button.on{background:#fff;color:#145c4b;font-weight:700}
.mm-prayer-setup p{margin:4px 0 0}
.mm-prayer .field-error{color:#ffd9d6;flex-basis:100%;margin:0}
.mm-picks-head{display:flex;justify-content:space-between;align-items:baseline}
.mm-picks-head h2{margin:0;font-size:1.15rem}
.mm-picks-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(150px,1fr);gap:10px;overflow-x:auto;padding:8px 2px 6px;scroll-snap-type:x mandatory}
.mm-pick{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;padding:14px 10px;text-decoration:none;color:inherit;scroll-snap-align:start}
.mm-pick img,.mm-pick-initial{width:64px;height:64px;border-radius:50%;object-fit:cover}
.mm-pick-initial{display:flex;align-items:center;justify-content:center;background:#e3eeea;color:#145c4b;font-weight:700;font-size:1.4rem}
.mm-pick small{color:#66756e;font-size:.82rem}
.mm-pick .mm-pick-meta{color:#145c4b;font-weight:600}
.mm-ready-head{display:flex;justify-content:space-between;align-items:center;gap:10px}
.mm-ready-head p{margin:4px 0 0}
.mm-ready-pct{font-size:1.8rem;color:#145c4b}
.mm-ready-bar{height:10px;border-radius:9px;background:#e4e7e1;margin:12px 0;overflow:hidden}
.mm-ready-bar span{display:block;height:100%;background:#145c4b;border-radius:9px}
.mm-ready-list{margin:0 0 12px;padding-left:1.2em;color:#66756e;columns:2}
.mm-overview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px}
.mm-overview-grid>*{background:#f3f6f2;border:0;border-radius:14px;padding:12px 6px;text-align:center;font:inherit;color:inherit}
.mm-overview-grid button{cursor:pointer}
.mm-overview-grid b{display:block;font-size:1.35rem;color:#145c4b}
.mm-overview-grid small{color:#66756e;font-size:.8rem}
.mm-overview-grid .alert b{color:#b4232c}
@media(max-width:560px){.mm-overview-grid{grid-template-columns:repeat(2,1fr)}.mm-ready-list{columns:1}}
/* bell popover: turn on notifications for this device (push-v321.js) */
.mm-push-bell-row{display:flex;align-items:center;gap:10px;margin:0 0 8px;padding:10px 12px;border-radius:12px;background:#fdf1d8;color:#5a3d00}
.mm-push-bell-row span{flex:1;font-size:.9rem;line-height:1.4}
.mm-push-bell-row .btn{flex:none;padding:6px 12px}

.mm-learn-more{display:flex;flex-direction:column;gap:6px}
.mm-learn-more p{margin:0!important}
.mm-learn-more .mm-learn-btn{align-self:flex-start;margin-top:6px}

.mm-learn-badges{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:12px 0 0!important;font-size:.88rem;color:var(--mute)}
.mm-learn-badge-new{display:flex;flex-direction:column;align-items:center;gap:8px;background:var(--golds);border-radius:20px;padding:16px}
.mm-learn-badge-big{font-size:3rem;line-height:1}

/* v3.28.2 prayer card: stronger times, highlighted next prayer */
.mm-prayer-row small{opacity:1;font-weight:600}
.mm-prayer-row b{font-size:1.08rem;font-weight:800;color:#fff}
.mm-prayer-row .past{opacity:.72}
.mm-prayer-row .next b,.mm-prayer-row .next small{color:#1b1b1b}
.mm-prayer-next .mm-prayer-next-time{color:#f0b443}
.mm-prayer-next span{font-weight:600}

.mm-learn-sound{border:0;background:#eef2ee;border-radius:999px;width:40px;height:40px;font-size:1.1rem;cursor:pointer;flex:none}
.mm-learn-head .mm-learn-sound{align-self:flex-start}
/* v3.29 learning categories */
.mm-learn-freeline{margin:4px 2px 10px;font-weight:700;color:var(--lg)}
.mm-learn-kindchips{display:flex;gap:8px;overflow-x:auto;padding:2px 0 12px;scrollbar-width:none}
.mm-learn-kindchips button{flex:none;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;font:inherit;font-weight:700;color:var(--ink);cursor:pointer}
.mm-learn-kindchips button.on{background:var(--lg);border-color:var(--lg);color:#fff}
.mm-learn-hero-img{display:block;width:110px;height:110px;margin:14px auto 8px;border-radius:24px;background:#fff}
.mm-learn-pics{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;margin-bottom:16px}
.mm-learn-pics button{background:#fff;border:1px solid var(--line);border-radius:18px;padding:10px;display:flex;flex-direction:column;align-items:center;gap:4px;font:inherit;cursor:pointer;color:var(--ink)}
.mm-learn-pics img{width:100%;max-width:120px;aspect-ratio:1;border-radius:14px}
.mm-learn-pics b{font-size:1.5rem;font-weight:400;line-height:1.6}
.mm-learn-pics small{color:var(--mute)}
.mm-learn-word-img{display:block;width:140px;height:140px;margin:0 auto 10px;border-radius:24px;background:#fff;border:1px solid var(--line)}
.mm-learn-options.pics{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mm-learn-options.pics button{flex-direction:column;justify-content:center;padding:10px;position:relative}
.mm-learn-options.pics img{width:100%;max-width:140px;aspect-ratio:1;border-radius:12px}
.mm-learn-admin-img{display:block;width:72px;height:72px;margin-top:6px;border-radius:12px;border:1px solid #e2e5e0;background:#fff}

/* v3.29.1 category tabs + one lesson card */
.mm-learn-kindchips{margin-bottom:4px}
.mm-learn-kindchips button{position:relative}
.mm-learn-kinddot{position:absolute;top:4px;right:6px;width:9px;height:9px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 2px #fff}
.mm-learn-kindchips button.on .mm-learn-kinddot{box-shadow:0 0 0 2px var(--lg)}
.mm-learn-hero-done{font-size:1.4rem;font-weight:700;text-align:center;margin:22px 0 4px}
.mm-learn-hero-ask{background:rgba(255,255,255,.12);border-radius:16px;padding:12px;display:flex;flex-wrap:wrap;gap:8px}
.mm-learn-hero-ask p{margin:0 0 2px;width:100%;font-weight:700;text-align:center}
.mm-learn-hero-ask .mm-learn-btn{flex:1}
.mm-learn-btn.ghost{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.6)}
.mm-learn-hero-err{margin:10px 0 0;background:#fbe7e5;color:#7d1e18;border-radius:12px;padding:8px 12px;font-weight:600}
.mm-learn-hero .mm-learn-btn.big{width:100%}
/* v3.30 admin "view as" demo accounts */
.mm-demo-card{display:grid;gap:12px;margin-bottom:16px;border:1.5px dashed #c9a24a;background:#fffaf0}
.mm-demo-card h3{margin:2px 0 4px}
.mm-demo-card p{margin:0}
.mm-demo-roles{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.mm-demo-role{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 6px;border:1px solid #e2e5e0;border-radius:14px;background:#fff;font:inherit;cursor:pointer;color:#1b2a24}
.mm-demo-role span{font-size:1.6rem}
.mm-demo-role b{font-size:.92rem}
.mm-demo-role:disabled{opacity:.6;cursor:default}
#mm-demo-bar{position:fixed;top:0;left:0;right:0;z-index:2147483000;height:36px;display:flex;align-items:center;justify-content:center;gap:8px;padding:0 8px;background:#3a2a00;color:#fff;font-size:.85rem;white-space:nowrap;overflow:hidden}
html.mm-demo-on body{padding-top:36px}
html.mm-demo-on .topbar{top:36px}
.mm-demo-bar-text{font-weight:700;overflow:hidden;text-overflow:ellipsis;min-width:0}
.mm-demo-bar-pick{font:inherit;border-radius:8px;border:0;padding:3px 4px;max-width:132px;flex:none}
.mm-demo-bar-back{font:inherit;font-weight:700;border:0;border-radius:8px;padding:4px 10px;background:#f0b443;color:#1b1b1b;cursor:pointer;flex:none}
/* v3.30.1 lesson calendar: days with a lesson stand out (selected day stays dark green) */
.mm-calendar-grid button.has-lesson{background:#f0b443;border-color:#d99a22;color:#1b1b1b;font-weight:800;box-shadow:0 2px 0 #d99a22}
.mm-calendar-grid button.has-lesson small{background:#fff;color:#7a4d00;font-weight:800}
.mm-calendar-grid button.selected.has-lesson{background:#176345;border-color:#176345;color:#fff;box-shadow:none}
.mm-calendar-grid button.selected.has-lesson small{background:#fff;color:#176345}
.mm-calendar-lesson strong{white-space:nowrap;flex-basis:100%}
/* v3.30.1 class booking card hints */
.mm-booking-hints{margin:8px 0 4px;padding:10px 12px 10px 28px;border-radius:12px;background:#fdf1d8;color:#6d4800;font-size:.92rem;display:grid;gap:4px}
.mm-booking-hint{margin:6px 0 0;color:#6d4800;font-size:.92rem}
/* v3.30.1 field holding a phone / LINE / e-mail / link */
.mm-contact-bad{border-color:#b3261e!important;box-shadow:0 0 0 3px rgba(179,38,30,.18)!important;background:#fff6f5!important}
/* v3.32 (owner 2026-10-16): lessons full screen like Duolingo — one thing per screen, button always at the bottom */
html.mm-learn-focus-on,html.mm-learn-focus-on body{overflow:hidden}
html.mm-learn-focus-on #mm-demo-bar,html.mm-learn-focus-on .topbar,html.mm-learn-focus-on .mm-bottom-nav{display:none!important}
.mm-learn-focus{position:fixed;inset:0;z-index:9000;background:#fff;display:flex;flex-direction:column;height:100vh;height:100dvh;max-width:600px;margin:0 auto;padding-top:env(safe-area-inset-top)}
@media (min-width:640px){.mm-learn-focus{box-shadow:0 0 0 100vmax #f3f5f1}}
.mm-learn-focus-top{display:flex;align-items:center;gap:12px;padding:12px 16px 6px;flex:none}
.mm-learn-x{width:40px;height:40px;border:0;background:transparent;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;color:#8a948f;cursor:pointer;flex:none}
.mm-learn-x svg{width:24px;height:24px}
.mm-learn-x:hover{background:#f1f3ef}
.mm-learn-x-space{width:40px;flex:none}
.mm-learn-bar{flex:1;height:14px;border-radius:99px;background:#e5e8e3;overflow:hidden}
.mm-learn-bar span{display:block;height:100%;border-radius:99px;background:var(--lg);transition:width .35s ease;min-width:14px;box-shadow:inset 0 -4px 0 rgba(0,0,0,.08)}
.mm-learn-focus-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:10px 18px 16px;display:flex;flex-direction:column;gap:12px}
.mm-learn-focus-body.center>:first-child{margin-top:auto}.mm-learn-focus-body.center>:last-child{margin-bottom:auto}
.mm-learn-focus-body .mm-learn-title{font-size:1.35rem;text-align:center}
.mm-learn-focus-body .mm-learn-kicker{text-align:left}
.mm-learn-focus-body.center .mm-learn-kicker{text-align:center}
.mm-learn-focus-foot{flex:none;padding:12px 16px calc(14px + env(safe-area-inset-bottom));border-top:2px solid #eef0ec;background:#fff;display:flex;flex-direction:column;gap:10px;transition:background .2s}
.mm-learn-focus-foot.ok{background:#e4f4e9;border-top-color:#e4f4e9}
.mm-learn-focus-foot.bad{background:#fbe7e5;border-top-color:#fbe7e5}
.mm-learn-focus-foot .field-error{margin:0}
.mm-learn-feedback{display:flex;gap:12px;align-items:center;animation:mmLearnUp .22s ease-out}
.mm-learn-feedback b{font-size:1.15rem}
.mm-learn-feedback p{margin:2px 0 0;font-size:.95rem}
.mm-learn-focus-foot.ok .mm-learn-feedback{color:var(--lg)}
.mm-learn-focus-foot.bad .mm-learn-feedback{color:#8f241d}
.mm-learn-feedback-icon{width:40px;height:40px;border-radius:50%;background:#fff;display:inline-flex;align-items:center;justify-content:center;flex:none}
@keyframes mmLearnUp{from{transform:translateY(14px);opacity:0}to{transform:none;opacity:1}}
.mm-learn-btn.red{background:#c0392b;color:#fff;border-color:#c0392b}
.mm-learn-focus .mm-learn-btn.big{width:100%;min-height:52px;font-size:1.05rem;border-radius:16px;box-shadow:0 4px 0 rgba(0,0,0,.14)}
.mm-learn-focus .mm-learn-btn.big:active:not(:disabled){transform:translateY(2px);box-shadow:0 2px 0 rgba(0,0,0,.14)}
.mm-learn-focus .mm-learn-btn.big:disabled{background:#e5e8e3;color:#9aa39e;border-color:#e5e8e3;box-shadow:none;opacity:1}
.mm-learn-read{text-align:center;display:flex;flex-direction:column;gap:8px}
.mm-learn-read .mm-learn-arabic{font-size:clamp(2rem,9vw,2.6rem);margin:0}
.mm-learn-read .mm-learn-translit{margin:0!important}
.mm-learn-read .mm-learn-meaning{margin:6px 0 0;font-size:1.05rem}
.mm-learn-read .mm-learn-note{margin:0;font-size:.92rem}
.mm-learn-read .mm-learn-source{margin:4px 0 0!important}
.mm-learn-round.blue{background:#1cb0f6;color:#fff;border-radius:16px;cursor:pointer;box-shadow:0 4px 0 #1899d6}
.mm-learn-round.big{width:64px;height:64px;border-radius:20px}
.mm-learn-round.big svg{width:30px;height:30px}
.mm-learn-slow{border:1.5px solid var(--line);background:#fff;border-radius:14px;padding:0 14px;height:44px;font:inherit;font-weight:700;color:var(--ink);cursor:pointer;align-self:center}
.mm-learn-read .mm-learn-audio{align-items:center}
.mm-learn-focus .mm-learn-line{font-size:1.45rem;line-height:1.9;text-align:center;margin:0;color:#7d8a83}
.mm-learn-focus .mm-learn-line mark{background:var(--lgs);color:var(--lg);border-radius:10px;padding:0 6px}
.mm-learn-focus .mm-learn-word{padding:16px 18px;display:flex;flex-direction:column;gap:10px}
.mm-learn-focus .mm-learn-word-ar{margin:0;font-size:clamp(2.4rem,11vw,3.2rem);line-height:1.6}
.mm-learn-focus .mm-learn-word-head{align-items:center}
.mm-learn-focus .mm-learn-word-grid b{font-size:1.3rem}
.mm-learn-focus .mm-learn-word-note{margin:0;font-size:.95rem}
.mm-learn-focus .mm-learn-word-img{width:110px;height:110px;margin:0 auto}
.mm-learn-quiz-head{display:flex;align-items:center;justify-content:center;gap:16px;padding:6px 0}
.mm-learn-focus .mm-learn-quiz-ar{margin:0;font-size:clamp(2.4rem,11vw,3rem)}
.mm-learn-review-src{margin:0;color:var(--mute);font-size:.9rem}
.mm-learn-focus .mm-learn-options button{border-width:2px;border-bottom-width:4px;padding:13px 16px}
.mm-learn-focus .mm-learn-options .sel{border-color:#84d8ff;background:#ddf4ff;color:#1899d6;font-weight:700}
.mm-learn-focus .mm-learn-options.pics{gap:10px}
.mm-learn-focus .mm-learn-options.pics img{max-width:120px}
.mm-learn-focus .mm-learn-pics{margin:0}
@media (max-height:640px){.mm-learn-focus-body{gap:8px;padding-top:4px}.mm-learn-focus .mm-learn-options button{padding:10px 14px}.mm-learn-focus .mm-learn-word-ar,.mm-learn-focus .mm-learn-quiz-ar{font-size:2.2rem}}
.mm-learn-focus .mm-learn-done{display:flex;flex-direction:column;gap:14px;padding-top:8px}
.mm-learn-focus .mm-learn-done .mm-learn-btn.big{box-shadow:none}
.mm-learn-focus .mm-learn-pics{grid-template-columns:repeat(3,1fr);gap:8px}
.mm-learn-focus .mm-learn-pics button{padding:6px 4px;border-radius:14px;gap:0;border-width:2px;border-bottom-width:4px}
.mm-learn-focus .mm-learn-pics img{max-width:84px;border-radius:10px}
.mm-learn-focus .mm-learn-pics b{font-size:1.25rem;line-height:1.5}
.mm-learn-focus .mm-learn-pics small{font-size:.8rem}
@media (max-height:720px){.mm-learn-focus .mm-learn-options.pics img{max-width:88px}.mm-learn-focus .mm-learn-options.pics button{padding:6px}.mm-learn-quiz-head{padding:0}.mm-learn-focus .mm-learn-quiz-ar{line-height:1.4}.mm-learn-focus-foot{padding-top:10px;gap:8px}}
/* v3.33: our own "allow location" window before the phone's prompt */
.mm-gps-ask-backdrop{position:fixed;inset:0;z-index:9500;background:rgba(10,30,22,.45);display:flex;align-items:flex-end;justify-content:center;padding:16px}
@media (min-width:640px){.mm-gps-ask-backdrop{align-items:center}}
.mm-gps-ask{background:#fff;color:#16241d;border-radius:22px;padding:22px 20px 18px;max-width:420px;width:100%;box-shadow:0 18px 50px rgba(0,0,0,.25);text-align:center;animation:mmLearnUp .2s ease-out}
.mm-gps-ask-icon{width:56px;height:56px;border-radius:50%;background:var(--lgs,#e4f4e9);display:flex;align-items:center;justify-content:center;font-size:1.6rem;margin:0 auto 8px}
.mm-gps-ask h3{margin:0 0 8px;font-size:1.15rem;color:#16241d!important}
.mm-gps-ask p{margin:0 0 16px;line-height:1.6;color:#4d5c55!important;font-size:.95rem}
.mm-gps-ask-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mm-gps-ask-actions .btn{width:100%;justify-content:center}
/* v3.35 (owner 2026-10-16): admin bottom bar = the teachers'/students' floating green bar */
@media (max-width:767px){
  body:has(.mm-admin-layout) main{padding-bottom:calc(110px + env(safe-area-inset-bottom,0px))}
  .mm-admin-bottom{position:fixed;z-index:70;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));max-width:520px;margin-inline:auto;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding:6px;background:#0f5132;border:0;border-radius:40px;box-shadow:0 6px 26px #0f513238;isolation:isolate}
  .mm-ab-capsule{position:absolute;z-index:0;left:6px;top:6px;bottom:6px;width:calc((100% - 12px)/5);background:#eff8f1;border-radius:32px;transform:translateX(calc(var(--mm-ab-active)*100%));transition:transform 180ms ease-out,opacity 120ms linear;pointer-events:none}
  .mm-ab-capsule.is-hidden{opacity:0}
  .mm-admin-bottom>.mm-ab-item{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:64px;padding:7px 2px;border:0;background:transparent;color:#dcebe2;text-decoration:none;font:inherit;font-size:12px;cursor:pointer;border-radius:32px;-webkit-tap-highlight-color:transparent}
  .mm-admin-bottom>.mm-ab-item.is-active{color:#0f5132;font-weight:700}
  .mm-admin-bottom>.mm-ab-item:focus-visible{outline:3px solid #f1c85b;outline-offset:2px}
  .mm-ab-icon{position:relative;display:block;width:25px;height:25px}
  .mm-admin-bottom .mm-ab-icon svg{width:25px;height:25px}
  .mm-ab-label{line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
  .mm-ab-badge{position:absolute;top:-6px;right:-12px;background:#b4232c;color:#fff;border:2px solid #0f5132;border-radius:20px;min-width:20px;min-height:20px;padding:1px 4px;display:grid;place-items:center;font-size:11px;font-weight:700;line-height:1.1}
  .mm-admin-sheet-backdrop{z-index:90;align-items:flex-end;padding:0 12px calc(100px + env(safe-area-inset-bottom,0px))}
  .mm-admin-sheet{max-width:520px;margin-inline:auto;border-radius:24px;box-shadow:0 8px 28px #10281e33;padding:12px 14px}
  .mm-admin-sheet-grip{display:none}
}
@media (max-width:767px) and (prefers-reduced-motion:reduce){.mm-ab-capsule{transition:none}}
/* v3.35: admin overview order — prayer times, what to review, daily learning, numbers, view-as, other queues, notifications */
.mm-admin-main>*{order:5}
.mm-admin-main>.mm-admin-head,.mm-admin-main>.mm-admin-subtabs{order:0}
.mm-admin-main>.mm-prayer{order:1}
.mm-admin-main>.card:has(>.admin-queue){order:2}
.mm-admin-main>.mm-learn-dash{order:3}
.mm-admin-main>.mm-admin-stats3{order:4}
.mm-admin-main>.mm-push-card{order:9}
.mm-admin-stats3{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px}
.mm-admin-stats3 .stat-card{padding:12px 12px 10px;gap:2px}
.mm-admin-stats3 .stat-card span{font-size:.82rem;line-height:1.3}
.mm-admin-stats3 .stat-card strong{font-size:1.5rem}
.mm-admin-main>.card:has(>.admin-queue) .admin-queue{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.mm-admin-main>.card:has(>.admin-queue) .admin-queue>div{padding:10px}.mm-admin-main>.card:has(>.admin-queue) .admin-queue span{font-size:.82rem;line-height:1.3}
@media (min-width:768px){.mm-admin-main>.card:has(>.admin-queue) .admin-queue{grid-template-columns:repeat(4,minmax(0,1fr))}}
/* v3.35: fixes seen in the owner's admin video */
.mm-learn-admin>.mm-learn-row{flex-wrap:wrap;gap:10px;align-items:flex-start}
.mm-learn-admin>.mm-learn-row>div:first-child{flex:1 1 280px;min-width:0}
@media (max-width:767px){
  .mm-learn-admin>.mm-learn-row>.btn{flex:1 1 auto;justify-content:center}
  /* sub-tabs (เนื้อหาและประกาศ, เครดิต…) were cut off at the right; show them as wrapping pills like the users page */
  .mm-admin-subtabs{flex-wrap:wrap;border-bottom:0;gap:6px;overflow:visible}
  .mm-admin-subtabs button{border:1px solid #dce8e1;border-radius:999px;min-height:38px;padding:6px 12px;white-space:nowrap}
  .mm-admin-subtabs button.active{border-color:#176445;background:#eff6ef}
}
/* v3.36 (owner 2026-10-16): นักเรียนหาโรงเรียน */
.mm-schools{display:grid;gap:14px}
.mm-school-filters{display:grid;gap:10px}
.mm-school-types{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}
.mm-school-types::-webkit-scrollbar{display:none}
.mm-school-types button,.mm-school-view button{flex:none;border:1.5px solid var(--border,#dce8e1);background:#fff;border-radius:999px;padding:8px 14px;font:inherit;font-size:.92rem;cursor:pointer;color:#16241d;white-space:nowrap}
.mm-school-types button.on,.mm-school-view button.on{background:#0f5132;border-color:#0f5132;color:#fff;font-weight:700}
.mm-school-tools{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.mm-school-tools select{min-height:42px;border-radius:12px;border:1.5px solid var(--border,#dce8e1);padding:0 10px;font:inherit;background:#fff;flex:1 1 140px}
.mm-school-view{display:flex;gap:4px;margin-left:auto}
.mm-school-list{display:grid;gap:10px}
@media(min-width:900px){.mm-school-list{grid-template-columns:1fr 1fr}}
.mm-school-card{display:flex;gap:12px;align-items:flex-start;text-decoration:none;color:inherit;padding:14px}
.mm-school-card h3{margin:0 0 2px;font-size:1.05rem}
.mm-school-card p{margin:0}
.mm-school-card-body{flex:1;min-width:0;display:grid;gap:4px}
.mm-school-levels{font-size:.92rem;color:#2d3d35}
.mm-school-badges{display:flex;gap:6px;flex-wrap:wrap;margin-top:2px}
.mm-school-ic{width:46px;height:46px;border-radius:14px;background:#e9f5ee;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex:none}
.mm-school-ic.big{width:60px;height:60px;font-size:2rem;border-radius:18px}
.mm-school-go{font-size:1.6rem;color:#8a948f;align-self:center}
.mm-school-empty{text-align:center;padding:24px}
.mm-school-foot{text-align:center}
.mm-school-map-wrap{display:grid;gap:6px}
.mm-school-map{width:100%;border-radius:18px;overflow:hidden;border:1px solid var(--border,#dce8e1);background:#e8eee9;z-index:0}
.mm-school-map .leaflet-popup-content{font-family:inherit;margin:10px 12px}
.mm-map-sub{color:#5c6b64;font-size:.85rem;margin-top:2px}
.mm-map-link{display:inline-block;margin-top:6px;font-weight:700;color:#0f5132!important}
.mm-school-mine{display:grid;gap:6px}
.mm-school-mine-row{display:flex;justify-content:space-between;align-items:center;gap:8px;text-decoration:none;color:inherit;padding:6px 0;border-top:1px solid #eef1ee}
.mm-school-detail{display:grid;gap:12px}
.mm-school-back{color:#0f5132;font-weight:700;text-decoration:none}
.mm-school-head{display:flex;gap:14px;align-items:center}
.mm-school-head h1{margin:2px 0;font-size:1.4rem}
.mm-school-head p{margin:0}
.mm-school-desc{margin:0;white-space:pre-line;line-height:1.7}
.mm-school-facts{display:grid;gap:12px}
.mm-school-facts small,.mm-school-onsite small{display:block;color:#5c6b64;font-weight:700;margin-bottom:2px}
.mm-school-facts p,.mm-school-onsite p{margin:0;white-space:pre-line;line-height:1.6}
.mm-school-dir{text-align:center}
.mm-school-apply{position:sticky;bottom:calc(96px + env(safe-area-inset-bottom,0px));z-index:5}
.mm-school-apply .btn.full{width:100%;min-height:52px;font-size:1.05rem;box-shadow:0 6px 18px #0f513233}
@media(min-width:768px){.mm-school-apply{bottom:16px}}
.mm-school-sheet{text-align:left;max-height:calc(100dvh - 140px);overflow-y:auto}
.mm-school-sheet h3{text-align:center}
.mm-school-modes{display:grid;gap:10px;margin:6px 0 14px}
.mm-school-modes button{display:grid;grid-template-columns:44px 1fr;grid-template-rows:auto auto;column-gap:10px;text-align:left;border:2px solid var(--border,#dce8e1);border-bottom-width:4px;border-radius:16px;background:#fff;padding:12px;font:inherit;cursor:pointer;color:#16241d}
.mm-school-modes button span{grid-row:1/3;font-size:1.8rem;display:flex;align-items:center;justify-content:center}
.mm-school-modes button small{color:#5c6b64}
.mm-school-modes button:hover{border-color:#0f5132}
.mm-gps-ask-actions.one{grid-template-columns:1fr}
.mm-school-onsite{display:grid;gap:12px;background:#f5faf7;border-radius:14px;padding:12px;margin-bottom:12px}
.mm-school-onsite ul{margin:4px 0 0;padding-left:20px;line-height:1.7}
.mm-school-form{display:grid;gap:10px;margin-bottom:12px}
.mm-school-form label{display:grid;gap:4px;font-weight:700;font-size:.92rem;color:#16241d}
.mm-school-form input,.mm-school-form textarea{font:inherit;font-weight:400;border:1.5px solid var(--border,#dce8e1);border-radius:12px;padding:10px 12px;width:100%;box-sizing:border-box}
.mm-school-form-row{display:grid;grid-template-columns:1fr 1.6fr;gap:10px}
.mm-school-home{display:flex;gap:12px;align-items:center;text-decoration:none;color:inherit;padding:14px}
.mm-school-home div{flex:1;display:grid;gap:2px}
.mm-school-settings{display:grid;gap:12px}
.mm-school-settings-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;background:none;border:0;padding:0;font:inherit;text-align:left;cursor:pointer;color:inherit}
.mm-school-settings-head h2{margin:2px 0}
.mm-school-settings-head p{margin:0}
.mm-school-settings-body{display:grid;gap:12px}
.mm-school-settings-body label{display:grid;gap:4px;font-weight:700;font-size:.92rem}
.mm-school-settings-body select,.mm-school-settings-body textarea{font:inherit;font-weight:400;border:1.5px solid var(--border,#dce8e1);border-radius:12px;padding:10px 12px}
.mm-school-label{display:block}
.mm-school-pin-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:6px}
.mm-school-checks{display:flex;gap:14px;flex-wrap:wrap}
.mm-school-settings-body .mm-school-check{display:flex;gap:8px;align-items:center;font-weight:400}
.mm-school-check input{width:20px;height:20px;accent-color:#0f5132}
.mm-school-apps{display:grid;gap:10px}
.mm-school-apps h2{display:flex;gap:8px;align-items:center;margin:0}
.mm-school-app{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #eef1ee;padding-top:10px;flex-wrap:wrap}
.mm-school-app>div:first-child{display:grid;gap:2px;flex:1 1 220px}
.mm-school-app p{margin:4px 0 0;font-size:.92rem}
.mm-school-app-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.btn.small{min-height:34px;padding:4px 12px;font-size:.88rem}
.muted.small,p.small{font-size:.86rem;margin:0}
/* v3.37 (owner 2026-10-17): prayer-time alerts inside the prayer card settings */
.mm-prayer-alerts{display:grid;gap:10px;border-top:1px solid rgba(255,255,255,.18);padding-top:12px;margin-top:2px}
.mm-prayer-switch{display:flex;align-items:center;gap:12px;cursor:pointer}
.mm-prayer-switch input{position:absolute;opacity:0;width:1px;height:1px}
.mm-prayer-switch-ui{flex:none;width:46px;height:28px;border-radius:99px;background:rgba(255,255,255,.28);position:relative;transition:background .2s}
.mm-prayer-switch-ui::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:transform .2s}
.mm-prayer-switch input:checked+.mm-prayer-switch-ui{background:#f0b443}
.mm-prayer-switch input:checked+.mm-prayer-switch-ui::after{transform:translateX(18px)}
.mm-prayer-switch input:focus-visible+.mm-prayer-switch-ui{outline:3px solid #f1c85b;outline-offset:2px}
.mm-prayer-switch>span:last-child{display:grid;gap:2px}
.mm-prayer-switch small{opacity:.85;font-size:.85rem}
.mm-prayer-alert-chips{display:flex;gap:6px;flex-wrap:wrap}
.mm-prayer-alert-chips button{border:1.5px solid rgba(255,255,255,.45);background:transparent;color:#fff;border-radius:999px;padding:6px 12px;font:inherit;font-size:.9rem;cursor:pointer}
.mm-prayer-alert-chips button.on{background:#fff;color:#145c4b;border-color:#fff;font-weight:700}
.mm-prayer-alert-err{margin:0;background:#fff3f2;color:#8f241d;border-radius:12px;padding:8px 10px;font-size:.9rem}
.mm-prayer-alert-note{margin:0;font-size:.88rem;opacity:.9}
.mm-admin-school-types{display:grid;gap:10px}
.mm-admin-school-types h2{margin:0;display:flex;gap:8px;align-items:center}
.mm-admin-school-type{display:grid;gap:6px;border-top:1px solid #eef1ee;padding-top:10px}
.mm-admin-school-type label{display:grid;gap:4px;font-weight:700;font-size:.92rem}
.mm-admin-school-type input{font:inherit;font-weight:400;border:1.5px solid var(--border,#dce8e1);border-radius:12px;padding:8px 12px}
.mm-school-settings-body input{font:inherit;font-weight:400;border:1.5px solid var(--border,#dce8e1);border-radius:12px;padding:10px 12px}

/* v3.38 (owner 2026-10-17): job posts — school's list, 3-step form, publish window, applicants, teachers' job board */
.mm-jobs-admin{display:grid;gap:14px}
.mm-jobs-top{display:grid;gap:12px}
.mm-jobs-top h1{margin:4px 0 6px;font-size:1.45rem}
.mm-jobs-top-actions{display:flex;flex-wrap:wrap;gap:8px}
.mm-jobs-empty{display:grid;justify-items:center;text-align:center;gap:4px;padding:28px 16px}
.mm-jobs-empty span{font-size:2rem}
.mm-job-card{display:grid;gap:10px;padding:16px;border-radius:18px}
.mm-job-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.mm-job-card-head h3{margin:0 0 2px;font-size:1.08rem;line-height:1.35}
.mm-job-card-head p{margin:0;font-size:.88rem}
.mm-job-pay{flex:none;background:#e7f4ec;color:#0f5132;font-weight:700;border-radius:12px;padding:6px 10px;font-size:.88rem;text-align:right;max-width:48%}
.mm-job-tags{display:flex;flex-wrap:wrap;gap:6px}
.mm-job-tags span{background:#f1f5f3;color:#2b3b33;border-radius:999px;padding:4px 10px;font-size:.8rem}
.mm-job-tags span.subj{background:#fff7e0;color:#6e500c}
.mm-job-facts{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;margin:0;font-size:.92rem}
.mm-job-facts dt{color:#5b6a62;white-space:nowrap}
.mm-job-facts dd{margin:0;color:#16241d;overflow-wrap:anywhere}
.mm-job-facts dd.pre{white-space:pre-line}
.mm-job-manage{display:grid;gap:10px;border-top:1px solid #e6ede9;padding-top:10px}
.mm-job-manage-info{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}
.mm-job-apps-btn{border:0;background:none;font:inherit;color:#0f5132;cursor:pointer;padding:4px 0;font-weight:600}
.mm-job-apps-btn b{color:#b45309}
.mm-job-manage-actions{display:flex;flex-wrap:wrap;gap:8px}
/* the form uses the full-screen lesson frame */
.mm-job-editor .mm-learn-focus-body{align-items:stretch;text-align:left;gap:14px;max-width:560px}
.mm-job-editor .mm-learn-focus-body>:first-child{margin-top:0}
.mm-job-editor h2{margin:4px 0 0;font-size:1.3rem}
.mm-job-step{flex:none;font-size:.85rem;color:#5b6a62;font-weight:600}
.mm-job-field{display:grid;gap:6px}
.mm-job-field>span{font-weight:600;font-size:.95rem}
.mm-job-field input,.mm-job-field textarea,.mm-job-add input,.mm-job-row.pay input,.mm-job-search{width:100%;box-sizing:border-box;border:1.5px solid #dce8e1;border-radius:12px;padding:11px 12px;font:inherit;background:#fff;color:#16241d}
.mm-job-field textarea{resize:vertical}
.mm-job-chips{display:flex;flex-wrap:wrap;gap:8px}
.mm-job-chips button{border:1.5px solid #dce8e1;background:#fff;border-radius:999px;padding:8px 14px;font:inherit;font-size:.92rem;cursor:pointer;color:#16241d}
.mm-job-chips button.on{background:#0f5132;border-color:#0f5132;color:#fff;font-weight:700}
.mm-job-add{display:flex;gap:8px}
.mm-job-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mm-job-row.pay{grid-template-columns:1fr auto 1fr;align-items:center}
.mm-job-foot{display:flex;gap:10px;width:100%;max-width:560px;margin:0 auto}
.mm-job-foot .btn{flex:1}
/* publish + applicants windows */
.mm-job-publish,.mm-job-apps{text-align:left}
.mm-job-days{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}
.mm-job-days button{display:grid;gap:2px;border:1.5px solid #dce8e1;background:#fff;border-radius:14px;padding:10px 4px;font:inherit;cursor:pointer;color:#16241d;text-align:center}
.mm-job-days button small{color:#5b6a62;font-size:.75rem}
.mm-job-days button.on{border-color:#0f5132;background:#e7f4ec;box-shadow:0 0 0 1px #0f5132}
.mm-job-pub-sum{font-size:.92rem;color:#2b3b33}
.mm-job-apps{max-width:520px;max-height:86vh;overflow:auto}
.mm-job-app-list{display:grid;gap:10px;margin:10px 0}
.mm-job-app{border:1px solid #e6ede9;border-radius:14px;padding:12px;display:grid;gap:8px}
.mm-job-app-head{display:flex;align-items:center;gap:10px}
.mm-job-app-head>div{flex:1;min-width:0;display:grid}
.mm-job-app-pic{width:44px;height:44px;border-radius:50%;object-fit:cover;flex:none}
.mm-job-app-pic.ph{display:grid;place-items:center;background:#e7f4ec;color:#0f5132;font-weight:700}
.mm-job-ok{color:#0f7a4a}
.mm-job-app-msg{margin:0;font-size:.92rem;white-space:pre-line;color:#2b3b33}
.mm-gps-ask-actions.one{justify-content:center}
/* teachers' board */
.mm-job-board .mm-school-filters{display:grid;gap:10px;margin-bottom:14px}
.mm-job-list{display:grid;gap:12px}
.mm-job-apply{display:grid;gap:10px}
@media (min-width:860px){.mm-job-list{grid-template-columns:1fr 1fr;align-items:start}}
@media (max-width:420px){.mm-job-card-head{flex-direction:column}.mm-job-pay{max-width:none;text-align:left}.mm-job-row{grid-template-columns:1fr}.mm-job-row.pay{grid-template-columns:1fr auto 1fr}.mm-job-days{grid-template-columns:repeat(2,1fr)}}

/* v3.39 (owner 2026-10-17): prayer page /prayer — countdown, alert settings, one switch per prayer */
.mm-prayer-more{display:block;margin-top:12px;text-align:center;background:rgba(255,255,255,.14);color:#fff!important;border-radius:14px;padding:11px 12px;font-weight:700;text-decoration:none}
.mm-prayer-more:hover{background:rgba(255,255,255,.22)}
.mm-ppage{max-width:560px;margin:0 auto;padding:8px 16px 120px;display:grid;gap:14px;color:#16241d}
.mm-ppage-bar{display:grid;grid-template-columns:44px 1fr 44px;align-items:center}
.mm-ppage-bar h1{margin:0;text-align:center;font-size:1.25rem}
.mm-ppage-back{width:44px;height:44px;border-radius:50%;border:0;background:#e7f0eb;display:grid;place-items:center;cursor:pointer}
.mm-ppage-back svg{width:22px;height:22px;fill:none;stroke:#0f5132;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.mm-ppage-hero{background:linear-gradient(160deg,#0f5132,#2f6b55);color:#fff;border-radius:24px;padding:20px 18px 16px;text-align:center;display:grid;gap:2px}
.mm-ppage-next{margin:0;font-size:.98rem;opacity:.92}
.mm-ppage-count{margin:2px 0 0;font-size:clamp(2.6rem,13vw,3.6rem);font-weight:800;letter-spacing:.02em;font-variant-numeric:tabular-nums;line-height:1.1}
.mm-ppage-unit{margin:0 0 10px;font-size:.8rem;opacity:.75}
.mm-ppage-place{justify-self:center;display:flex;align-items:center;gap:8px;border:0;background:rgba(255,255,255,.16);color:#fff;border-radius:999px;padding:8px 14px;font:inherit;font-size:.92rem;cursor:pointer;max-width:100%}
.mm-ppage-place span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mm-ppage-place b{flex:none;text-decoration:underline}
.mm-ppage-place svg{flex:none;width:18px;height:18px;fill:none;stroke:#fff;stroke-width:2}
.mm-ppage-settings{background:#0f5132;color:#fff;border-radius:20px}
.mm-ppage-notify{background:#fff;border:1px solid #dce8e1;border-radius:20px;padding:14px;display:grid;gap:10px;box-shadow:0 4px 14px rgba(15,81,50,.06)}
.mm-ppage-notify.warn{border-color:#f2c48d;background:#fffaf2}
.mm-ppage-notify-head{display:flex;align-items:center;gap:12px}
.mm-ppage-notify-head>div{display:grid;gap:2px;min-width:0}
.mm-ppage-notify-head small{color:#5b6a62;font-size:.88rem}
.mm-ppage-notify.warn .mm-ppage-notify-head small{color:#b45309}
.mm-ppage-saving{color:#0f7a4a!important}
.mm-ppage-bell{flex:none;width:46px;height:46px;border-radius:50%;background:#2f6b55;display:grid;place-items:center}
.mm-ppage-bell svg{width:24px;height:24px;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.mm-ppage-sound{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.mm-ppage-sound button{border:1.5px solid #dce8e1;background:#fff;border-radius:12px;padding:10px;font:inherit;font-weight:600;cursor:pointer;color:#16241d}
.mm-ppage-sound button.on{background:#e7f4ec;border-color:#0f5132;color:#0f5132}
.mm-ppage-err{margin:0;color:#b42318;font-size:.9rem}
.mm-ppage-title{margin:6px 2px 0;font-size:1.3rem;color:#1f4d3c}
.mm-ppage-list{background:#fff;border:1px solid #dce8e1;border-radius:22px;padding:4px 14px;box-shadow:0 4px 14px rgba(15,81,50,.06)}
.mm-ppage-row{display:grid;grid-template-columns:48px 1fr auto 60px;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #edf2ef}
.mm-ppage-row:last-child{border-bottom:0}
.mm-ppage-ico{width:48px;height:48px;border-radius:50%;background:#f1f5f3;display:grid;place-items:center}
.mm-ppage-ico svg{width:24px;height:24px;fill:none;stroke:#5b6a62;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.mm-ppage-row.next .mm-ppage-ico{background:#0f5132}.mm-ppage-row.next .mm-ppage-ico svg{stroke:#fff}
.mm-ppage-row.sun .mm-ppage-ico{background:#fde9c8}.mm-ppage-row.sun .mm-ppage-ico svg{stroke:#e07b10}
.mm-ppage-name{display:grid;gap:2px;min-width:0}
.mm-ppage-name b{font-size:1.02rem;line-height:1.3}
.mm-ppage-name b span{font-weight:500;color:#5b6a62;font-size:.92rem}
.mm-ppage-name small{font-size:.82rem;color:#5b6a62}
.mm-ppage-name small.ok{color:#0f7a4a}.mm-ppage-name small.warn{color:#c2410c;font-weight:600}
.mm-ppage-row.sun b,.mm-ppage-row.sun .mm-ppage-time{color:#e07b10}
.mm-ppage-row.next b,.mm-ppage-row.next .mm-ppage-time{color:#0f5132}
.mm-ppage-row.past .mm-ppage-time,.mm-ppage-row.past b{opacity:.55}
.mm-ppage-time{font-size:1.35rem;font-weight:700;font-variant-numeric:tabular-nums}
.mm-pswitch{justify-self:end;width:56px;height:32px;border-radius:999px;border:0;background:#cdd7d2;position:relative;cursor:pointer;padding:0;transition:background .15s;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.mm-pswitch span{position:absolute;top:3px;left:3px;width:26px;height:26px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .15s}
.mm-pswitch.on{background:#0f5132}.mm-pswitch.on span{transform:translateX(24px)}
.mm-pswitch:focus-visible{outline:3px solid #f2b84b;outline-offset:2px}
.mm-pswitch::before{content:"";position:absolute;inset:-8px}
.mm-ppage-foot{margin:0;text-align:center;color:#5b6a62;font-size:.82rem}
@media (max-width:360px){.mm-ppage-row{grid-template-columns:40px 1fr auto 58px;gap:8px}.mm-ppage-ico{width:40px;height:40px}.mm-ppage-time{font-size:1.15rem}}
/* v3.39.1 (owner 2026-10-17): all 5 prayer times on the first screen — smaller hero, tighter rows, alert card below the list */
.mm-ppage{gap:10px;padding-top:4px}
.mm-ppage-bar h1{font-size:1.15rem}
.mm-ppage-back{width:38px;height:38px}
.mm-ppage-bar{grid-template-columns:38px 1fr 38px}
.mm-ppage-hero{padding:12px 14px 12px;border-radius:20px}
.mm-ppage-next{font-size:.9rem}
.mm-ppage-count{font-size:clamp(2rem,10vw,2.6rem);margin:0}
.mm-ppage-unit{margin:0 0 6px;font-size:.72rem}
.mm-ppage-place{padding:6px 12px;font-size:.85rem}
.mm-ppage-title{margin:2px 2px -2px;font-size:1.05rem}
.mm-ppage-list{padding:2px 12px}
.mm-ppage-row{grid-template-columns:38px 1fr auto 52px;gap:10px;padding:8px 0;min-height:52px}
.mm-ppage-ico{width:38px;height:38px}
.mm-ppage-ico svg{width:20px;height:20px}
.mm-ppage-name b{font-size:.98rem}
.mm-ppage-name small{font-size:.76rem}
.mm-ppage-time{font-size:1.2rem}
.mm-ppage-row.sun{padding:5px 0;min-height:40px}
.mm-ppage-row.sun .mm-ppage-ico{width:30px;height:30px;margin-left:4px}
.mm-ppage-row.sun .mm-ppage-time{font-size:1rem}
.mm-ppage-row.sun small{display:none}
.mm-pswitch{width:50px;height:30px}
.mm-pswitch span{width:24px;height:24px}
.mm-pswitch.on span{transform:translateX(20px)}

/* v3.40 (owner 2026-10-17): institution verifies with the owner's ID card OR an institution document */
.mm-proof-pick{border:0;margin:0 0 12px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.mm-proof-pick legend{font-weight:700;margin-bottom:8px;padding:0}
.mm-proof-pick label{display:block;cursor:pointer}
.mm-proof-pick input{position:absolute;opacity:0;pointer-events:none}
.mm-proof-pick span{display:grid;gap:2px;border:2px solid #dce8e1;border-radius:14px;padding:12px;background:#fff;height:100%;box-sizing:border-box}
.mm-proof-pick small{color:#5b6a62;font-size:.8rem}
.mm-proof-pick input:checked+span{border-color:#0f5132;background:#e7f4ec;box-shadow:0 0 0 1px #0f5132}
.mm-proof-pick input:focus-visible+span{outline:3px solid #f2b84b;outline-offset:2px}
.mm-inst-id-form[data-proof="id"] .mm-proof-doc-only,.mm-inst-id-form[data-proof="doc"] .mm-proof-id-only{display:none!important}
.mm-inst-id-form select{width:100%;padding:10px;border-radius:10px;border:1.5px solid #dce8e1;font:inherit;background:#fff}
.mm-idphoto-docnote{margin:4px 0 10px;padding-left:18px;font-size:.88rem;color:#2b3b33}
.mm-proof-pdfname{margin:6px 0;font-weight:600;color:#0f5132;overflow-wrap:anywhere}
@media (max-width:360px){.mm-proof-pick{grid-template-columns:1fr}}

/* v3.41 (owner 2026-10-17): institution photos — school uploads, gallery on the school page / job posts, admin review */
.mm-inst-photos{display:grid;gap:10px}
.mm-inst-photos h2{margin:0}
.mm-inst-photos p{margin:0}
.mm-inst-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}
.mm-inst-photo{position:relative;display:grid;gap:4px;align-content:start}
.mm-inst-photo small{font-size:.8rem;color:#2b3b33;overflow-wrap:anywhere}
.mm-inst-photo small.bad{color:#b42318}
.mm-inst-photo .mm-pill{justify-self:start}
.mm-inst-photo-img{display:block;width:100%;aspect-ratio:4/3;border:0;padding:0;border-radius:12px;overflow:hidden;background:#eef3f0;cursor:zoom-in}
.mm-inst-photo-img img,.mm-inst-photo-img .ph{display:block;width:100%;height:100%;object-fit:cover}
.mm-inst-photo-del{position:absolute;top:6px;right:6px;width:30px;height:30px;border-radius:50%;border:0;background:rgba(0,0,0,.6);color:#fff;font-size:.9rem;cursor:pointer;display:grid;place-items:center}
.mm-inst-photo-del.static{position:static;background:#eef3f0;color:#2b3b33;flex:none}
.mm-inst-photo-queue{display:grid;gap:8px;background:#f6faf8;border:1px dashed #b9d9c8;border-radius:14px;padding:10px}
.mm-inst-photo-q{display:flex;align-items:center;gap:8px}
.mm-inst-photo-q img{width:64px;height:48px;object-fit:cover;border-radius:8px;flex:none}
.mm-inst-photo-q input{flex:1;min-width:0;border:1.5px solid #dce8e1;border-radius:10px;padding:9px 10px;font:inherit}
.mm-inst-photo-actions{display:flex;flex-wrap:wrap;gap:8px}
.mm-school-gallery{display:grid;gap:8px;min-width:0}
.mm-school-gallery h2{margin:4px 2px 0;font-size:1.1rem}
.mm-school-gallery h2 small{font-weight:500;color:#5b6a62;font-size:.85rem}
.mm-school-gallery-strip{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px;scrollbar-width:thin}
.mm-school-gallery-item{flex:0 0 auto;width:min(72%,280px);scroll-snap-align:start;border:0;padding:0;background:none;display:grid;gap:4px;text-align:left;cursor:zoom-in;font:inherit;color:inherit}
.mm-school-gallery-item img,.mm-school-gallery-item .ph{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;background:#eef3f0}
.mm-school-gallery-item small{font-size:.82rem;color:#2b3b33;padding:0 2px}
.mm-job-apply .mm-school-gallery-item{width:min(60%,220px)}
.mm-photo-viewer{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.92);display:grid;place-items:center;padding:56px 12px 72px}
.mm-photo-viewer img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px}
.mm-photo-viewer p{color:#fff}
.mm-photo-viewer-x{position:absolute;top:12px;right:12px;width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.15);color:#fff;font-size:1.2rem;cursor:pointer}
.mm-photo-viewer-bar{position:absolute;left:0;right:0;bottom:14px;display:flex;align-items:center;justify-content:center;gap:16px;color:#fff;padding:0 12px;text-align:center}
.mm-photo-viewer-bar button{width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.15);color:#fff;font-size:1.6rem;cursor:pointer;flex:none}
.mm-admin-inst-photos{display:grid;gap:10px}
.mm-admin-inst-photo-list{display:grid;gap:12px}
.mm-admin-inst-photo{display:grid;grid-template-columns:140px 1fr;gap:12px;align-items:start;border:1px solid #e6ede9;border-radius:14px;padding:10px}
.mm-admin-inst-photo>div{display:grid;gap:6px;min-width:0}
.mm-admin-inst-photo input{border:1.5px solid #dce8e1;border-radius:10px;padding:8px 10px;font:inherit}
.mm-admin-quick{display:flex;flex-wrap:wrap;gap:6px}
.mm-admin-quick button{border:1px solid #dce8e1;background:#fff;border-radius:999px;padding:4px 10px;font:inherit;font-size:.8rem;cursor:pointer}
@media (max-width:480px){.mm-admin-inst-photo{grid-template-columns:1fr}}

/* v3.42 (owner 2026-10-17): share a teacher — icon on cards, share menu, picture card themes, stats */
.teacher-card{position:relative}
.mm-share-corner{position:absolute;top:14px;right:14px;z-index:2;width:46px;height:46px;border-radius:50%;border:1.5px solid #dce8e1;background:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 8px rgba(15,81,50,.08)}
.mm-share-corner svg,.mm-share-btn svg{width:22px;height:22px;fill:none;stroke:#0f5132;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.mm-share-corner:hover{background:#e7f4ec}
.mm-share-btn{display:inline-flex;align-items:center;gap:8px;margin:6px 0}
.mm-share-btn.primary svg{stroke:#fff}
.mm-share-backdrop{position:fixed;inset:0;z-index:1000;background:rgba(10,30,20,.45);display:flex;align-items:flex-end;justify-content:center}
.mm-share-sheet{background:#fff;color:#16241d;width:100%;max-width:520px;border-radius:24px 24px 0 0;padding:16px 16px calc(18px + env(safe-area-inset-bottom));display:grid;gap:14px;max-height:92vh;overflow:auto;animation:mmLearnUp .2s ease-out}
@media (min-width:640px){.mm-share-backdrop{align-items:center}.mm-share-sheet{border-radius:24px}}
.mm-share-head{display:flex;align-items:center;gap:8px}
.mm-share-head h3{flex:1;margin:0;font-size:1.1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mm-share-x{width:40px;height:40px;border-radius:50%;border:0;background:#f1f5f3;font-size:1.1rem;cursor:pointer;flex:none;color:#16241d}
.mm-share-link{display:flex;gap:8px}
.mm-share-link input{flex:1;min-width:0;border:1.5px solid #dce8e1;border-radius:12px;padding:10px 12px;font:inherit;font-size:.9rem;color:#2b3b33;background:#f8fbf9}
.mm-share-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.mm-share-opt{display:grid;justify-items:center;gap:6px;border:1.5px solid #e2ece6;background:#fff;border-radius:16px;padding:14px 6px;font:inherit;cursor:pointer;color:#16241d}
.mm-share-opt span{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#eef6f1;font-size:1.25rem;font-weight:800}
.mm-share-opt b{font-size:.85rem;font-weight:600;text-align:center}
.mm-share-opt.fb span{background:#1877f2;color:#fff;font-family:Arial,sans-serif}
.mm-share-opt.line span{background:#06c755;color:#fff;font-family:Arial,sans-serif}
.mm-share-opt.x span{background:#111;color:#fff}
.mm-share-opt.card{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:12px;background:#fbf5e6;border-color:#e6cf92}
.mm-share-opt.card b{font-size:1rem}
.mm-share-opt.card span{background:#fff}
.mm-share-themes{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}
.mm-share-themes::-webkit-scrollbar{display:none}
.mm-share-themes button{flex:none;display:flex;align-items:center;gap:8px;border:1.5px solid #dce8e1;background:#fff;border-radius:999px;padding:7px 14px 7px 8px;font:inherit;font-size:.88rem;cursor:pointer;color:#16241d}
.mm-share-themes button span{width:22px;height:22px;border-radius:50%;flex:none}
.mm-share-themes .th-arch span{background:radial-gradient(circle at 50% 30%,#1d6b4c,#082d1f);box-shadow:inset 0 0 0 3px #e9c46a}
.mm-share-themes .th-cream span{background:linear-gradient(#0f5132 45%,#fbf5e6 45%);box-shadow:inset 0 0 0 2px #e6cf92}
.mm-share-themes .th-minimal span{background:linear-gradient(90deg,#fff 50%,#a9c6b6 50%);box-shadow:inset 0 0 0 2px #dce8e1}
.mm-share-themes .th-star span{background:#0e2a3b;box-shadow:inset 0 0 0 3px #d4a64a}
.mm-share-themes .th-pastel span{background:linear-gradient(135deg,#cfeadc,#f8d9d3)}
.mm-share-themes button.on{border-color:#0f5132;background:#e7f4ec;font-weight:700}
.mm-share-preview{position:relative;display:grid;place-items:center;min-height:200px;background:#f4f7f5;border-radius:16px;overflow:hidden}
.mm-share-preview img{display:block;width:100%;max-width:400px;height:auto;border-radius:10px;transition:opacity .2s}
.mm-share-preview img.dim{opacity:.4}
.mm-share-wait{position:absolute;margin:0;font-weight:600;color:#0f5132}
.mm-share-actions{display:flex;gap:10px}
.mm-share-actions .btn{flex:1}
.mm-share-msg{margin:0;text-align:center;font-weight:600;color:#0f7a4a}
.mm-myshare{display:grid;gap:12px}
.mm-myshare-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}
.mm-myshare-head p{margin:4px 0 0;color:#2b3b33}
.mm-myshare-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:8px}
.mm-myshare-stats>div{background:#f4f8f5;border-radius:14px;padding:10px;display:grid;justify-items:center;text-align:center}
.mm-myshare-stats b{font-size:1.4rem;color:#0f5132}
.mm-myshare-stats small{font-size:.78rem;color:#5b6a62}
.mm-admin-share{display:grid;gap:10px}
.mm-admin-share-list{margin:0;padding-left:22px;display:grid;gap:6px}
.mm-admin-share-list li small{display:block;color:#5b6a62}

/* v3.43 (owner 2026-10-17): one-screen home + account-type picker (top bar: logo and TH/EN only) */
html.mm-landing .topbar nav,html.mm-landing .account-actions,html.mm-landing .mobile-menu-button,html.mm-landing .mobile-nav-panel,html.mm-landing .footer,html.mm-landing #mm-home-dots,html.mm-landing .mm-carousel-edge{display:none!important}
html.mm-landing .app-shell>main{padding:0;max-width:none}
.mm-land{min-height:calc(100vh - 78px);min-height:calc(100dvh - 78px);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);grid-template-rows:1fr auto;align-items:center;gap:20px 40px;padding:32px clamp(20px,6vw,90px) 10px;background:radial-gradient(70% 90% at 85% 40%,#e3efe8 0%,#f4f8f5 60%)}
.mm-land-text{min-width:0}
.mm-land-kicker{display:flex;align-items:center;gap:14px;margin:0;color:#1d6b4c;font-weight:700;letter-spacing:.18em;font-size:.95rem}
.mm-land-kicker::before{content:"";width:46px;height:2px;background:#c9a14a}
.mm-land h1{font-size:clamp(2.6rem,6vw,5.2rem);line-height:1.08;margin:16px 0 8px;color:#13261d}
.mm-land h1 span{position:relative;display:inline-block}
.mm-land h1 span::after{content:"";position:absolute;left:2%;right:6%;bottom:-4px;height:7px;border-radius:8px;background:#a9cdb9;z-index:-1}
.mm-land-sub{font-size:clamp(1rem,1.6vw,1.3rem);color:#5b6a62;line-height:1.6;max-width:560px;margin:18px 0 0}
.mm-land-ctas{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:560px;margin-top:30px}
.mm-land-btn{min-height:62px;display:flex!important;align-items:center;justify-content:center;font-size:1.15rem!important;border-radius:18px!important;text-decoration:none}
.mm-land-btn.primary{box-shadow:0 12px 26px rgba(15,81,50,.25)}
.mm-land-art{display:grid;place-items:center;min-width:0}
.mm-land-art svg{width:100%;max-width:520px;height:auto}
.mm-land-foot{grid-column:1/-1;text-align:center;font-size:.85rem;color:#7c8a82;margin:0;padding-bottom:6px}
.mm-land-foot a{color:#7c8a82}
.mm-strip{margin-top:30px;max-width:620px;min-width:0}
.mm-strip-label{display:flex;align-items:center;gap:8px;font-size:.95rem;color:#5b6a62;font-weight:600;margin:0 0 10px}
.mm-strip-label i{width:9px;height:9px;border-radius:50%;background:#2fb36b;box-shadow:0 0 0 4px #d6f0e1}
.mm-strip-mask{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.mm-strip-track{display:flex;gap:12px;width:max-content;animation:mmStrip 40s linear infinite}
@keyframes mmStrip{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.mm-strip-track{animation:none}}
.mm-strip-chip{display:flex;align-items:center;gap:10px;background:#fff;border:1.5px solid #e2ece6;border-radius:999px;padding:6px 18px 6px 6px;box-shadow:0 4px 12px rgba(15,81,50,.06);user-select:none}
.mm-strip-chip img,.mm-strip-chip .av{width:44px;height:44px;border-radius:50%;object-fit:cover;flex:none;border:3px solid #fff;box-shadow:0 0 0 2px #e9c46a}
.mm-strip-chip .av{display:grid;place-items:center;color:#fff;font-weight:700;font-size:1.1rem}
.mm-strip-chip b{display:block;font-size:.95rem;line-height:1.2;white-space:nowrap}
.mm-strip-chip small{font-size:.78rem;color:#5b6a62;white-space:nowrap}
@media (max-width:820px){
  .mm-land{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;text-align:center;padding:10px 20px 6px;gap:0;align-content:start;background:radial-gradient(90% 50% at 50% 20%,#e3efe8 0%,#f4f8f5 70%)}
  .mm-land-art{order:-1}.mm-land-art svg{max-width:250px}
  .mm-land-kicker{justify-content:center;font-size:.75rem}.mm-land-kicker::before{width:28px}
  .mm-land-sub{margin:12px auto 0}
  .mm-land-ctas{grid-template-columns:1fr;gap:10px;margin:22px auto 0;max-width:none}
  .mm-land-btn{min-height:56px}
  .mm-strip{margin:20px auto 0}.mm-strip-label{justify-content:center;font-size:.85rem}
  .mm-land-foot{padding-top:14px}
}
.mm-roles{position:relative;min-height:calc(100vh - 78px);padding:40px clamp(16px,5vw,80px) 30px;text-align:center;background:radial-gradient(80% 70% at 50% 0%,#e3efe8 0%,#f4f8f5 70%)}
.mm-roles-back{position:absolute;left:clamp(14px,3vw,32px);top:22px;width:46px;height:46px;border-radius:50%;background:#fff;border:1.5px solid #dce8e1;font-size:1.5rem;color:#0f5132;cursor:pointer}
.mm-roles h1{font-size:clamp(1.8rem,3.4vw,2.8rem);margin:24px 0 0;color:#13261d}
.mm-roles-lead{color:#5b6a62;font-size:1.1rem;margin:6px 0 0}
.mm-roles-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1120px;margin:34px auto 0}
.mm-role-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:14px;background:#fff;border-radius:28px;border:2px solid #e2ece6;padding:20px 20px 24px;color:#13261d!important;text-decoration:none!important;box-shadow:0 14px 34px rgba(15,81,50,.08);transition:transform .15s,border-color .15s}
.mm-role-card:hover{transform:translateY(-3px);border-color:#0f5132}
.mm-role-pic{width:100%;height:150px;border-radius:20px;display:grid;place-items:center;font-size:84px;line-height:1}
.r-student .mm-role-pic{background:linear-gradient(160deg,#fff7e0,#f4e3b5)}.r-teacher .mm-role-pic{background:linear-gradient(160deg,#e3efe8,#bcd9c8)}.r-institution .mm-role-pic{background:linear-gradient(160deg,#e6eef6,#c4d6e8)}
.mm-role-info{display:grid;gap:6px}
.mm-role-info b{font-size:1.6rem;font-weight:700}
.mm-role-info small{font-size:1rem;color:#5b6a62;line-height:1.5}
.mm-role-go{margin-top:auto;width:100%;min-height:52px;border-radius:16px;color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;background:#0f5132}
.r-student .mm-role-go{background:#9a6f1c}.r-institution .mm-role-go{background:#1f4f78}
.mm-role-arrow{display:none}
.mm-roles-have{margin-top:26px;color:#5b6a62}
@media (max-width:820px){
  .mm-roles{padding:20px 16px 24px}.mm-roles-back{top:14px}
  .mm-roles h1{margin-top:52px}
  .mm-roles-cards{grid-template-columns:1fr;gap:12px;margin-top:20px}
  .mm-role-card{flex-direction:row;align-items:center;text-align:left;padding:12px 38px 12px 12px;border-radius:22px;gap:14px}
  .mm-role-pic{width:88px;height:88px;flex:none;font-size:48px;border-radius:16px}
  .mm-role-info b{font-size:1.3rem}.mm-role-info small{font-size:.9rem}
  .mm-role-go{display:none}.mm-role-arrow{display:block;position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:1.6rem;color:#9fb3a8}
}
.mm-land h1{position:relative;z-index:0}
.mm-roles-have a,.mm-land-foot a{text-underline-offset:4px}
.mm-roles-have a{color:#0f5132!important;font-weight:700;text-decoration:underline}
/* v3.44: prayer alert test button */
.mm-ppage-test{min-height:48px}
.mm-ppage-test-msg{margin:0;font-size:.9rem;color:#0f5132;background:#eef6f1;border-radius:12px;padding:10px 12px;line-height:1.5}
.mm-ppage-useweb{display:block;width:100%;margin-top:8px;background:none;border:0;color:#5b6b63;font-size:.85rem;text-decoration:underline;padding:6px}
/* v3.44 (owner 2026-10-17): the home page must fit one screen (phone and computer) — sizes follow the screen height */
html.mm-landing,html.mm-landing body{overflow-x:hidden}
.mm-land{height:calc(100dvh - var(--mm-top,78px));min-height:0;overflow:hidden;padding-top:clamp(8px,2.5dvh,32px);padding-bottom:4px;align-content:center}
.mm-land-art svg{max-height:min(62dvh,520px);width:auto;max-width:100%}
.mm-land h1{font-size:clamp(2rem,8.4dvh,5.2rem);margin:clamp(6px,1.6dvh,16px) 0 4px}
.mm-land-sub{margin-top:clamp(6px,1.6dvh,18px);font-size:clamp(.92rem,2.1dvh,1.3rem)}
.mm-land-ctas{margin-top:clamp(12px,3dvh,30px)}
.mm-land-btn{min-height:clamp(48px,7dvh,62px)}
.mm-strip{margin-top:clamp(10px,2.6dvh,30px)}
.mm-strip-label{margin-bottom:clamp(4px,1dvh,10px)}
.mm-strip-chip{padding:4px 14px 4px 4px}
.mm-strip-chip img,.mm-strip-chip .av{width:clamp(32px,4.6dvh,44px);height:clamp(32px,4.6dvh,44px)}
.mm-land-foot{padding:4px 0 6px}
@media (max-width:820px){
  .mm-land{--mm-top:64px;grid-template-rows:auto auto auto;align-content:space-evenly;padding:6px 18px 4px}
  .mm-land-art svg{max-height:clamp(110px,24dvh,240px)}
  .mm-land-kicker{font-size:.7rem;margin-top:2px}
  .mm-land h1{font-size:clamp(1.9rem,5.4dvh,3rem)}
  .mm-land-sub{font-size:clamp(.85rem,2dvh,1rem);line-height:1.5}
  .mm-land-ctas{gap:8px;margin-top:clamp(10px,2.2dvh,22px)}
  .mm-land-btn{min-height:clamp(44px,6.4dvh,56px);font-size:1.05rem!important}
  .mm-strip{margin-top:clamp(8px,1.8dvh,20px)}
  .mm-strip-label{font-size:.8rem}
  .mm-strip-chip b{font-size:.85rem}.mm-strip-chip small{font-size:.72rem}
  .mm-land-foot{padding-top:6px;font-size:.78rem}
}

/* v3.45 นัดเรียน · slips · after-match guide */
@keyframes mmPulse{0%{box-shadow:0 0 0 0 rgba(28,124,84,.55)}70%{box-shadow:0 0 0 12px rgba(28,124,84,0)}100%{box-shadow:0 0 0 0 rgba(28,124,84,0)}}
.mm-pulse{animation:mmPulse 1.6s ease-out infinite;position:relative}
@media (prefers-reduced-motion:reduce){.mm-pulse{animation:none;outline:3px solid #8fd1ad}}
.mm-lessons{display:grid;gap:14px;min-width:0}
.mm-lessons-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.mm-lessons-head h2{margin:0}
.mm-lessons-next{display:flex;gap:12px;align-items:center;background:linear-gradient(135deg,#0f5132,#1c7c54);color:#fff;border-radius:18px;padding:14px 16px}
.mm-lessons-next>span{font-size:1.8rem}.mm-lessons-next small{display:block;opacity:.85}.mm-lessons-next b{display:block;font-size:1.05rem;line-height:1.35}
.mm-lessons-next.empty{background:#f4f8f5;color:#24332b;border:1px dashed #b9d6c4}.mm-lessons-next.empty p{margin:0}
.mm-lessons-group{display:grid;gap:10px}.mm-lessons-group h3{margin:4px 0 0;font-size:1rem}.mm-lessons-group h3 small{color:#6b7570;font-weight:600}
.mm-lesson-card{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;background:#fff;border:1px solid #e0e7e3;border-radius:18px;padding:14px;box-shadow:0 2px 8px rgba(15,81,50,.05)}
.mm-lesson-card.live{border-color:#1c7c54;box-shadow:0 0 0 2px #bfe0cb}
.mm-lesson-card.closed{opacity:.6}
.mm-lesson-when{display:grid;align-content:start;justify-items:center;text-align:center;background:#f4f8f5;border-radius:14px;padding:10px 6px;gap:2px}
.mm-lesson-when b{font-size:1rem;color:#0f5132}.mm-lesson-when span{font-weight:700;font-size:.9rem}.mm-lesson-when small{font-size:.75rem;color:#8a6514;font-weight:700}
.mm-lesson-body{display:grid;gap:8px;min-width:0}
.mm-lesson-who{display:flex;gap:10px;align-items:center;min-width:0}.mm-lesson-who>div{min-width:0}.mm-lesson-who b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mm-lesson-who small{color:#6b7570}
.mm-lesson-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.mm-lesson-note{margin:0;font-size:.88rem;color:#4a524e;background:#fafbfa;border-radius:10px;padding:6px 10px}
.mm-lesson-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.mm-lesson-card small.bad,.mm-slip small.bad{color:#a13d3d}
.mm-lesson-input{width:100%;box-sizing:border-box;border:1px solid #cfd8d3;border-radius:12px;padding:10px 12px;font:inherit}
.mm-lessons-due-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;border-top:1px solid #eef2ef}.mm-lessons-due-row small{display:block;color:#6b7570}
.mm-lessons-due h3,.mm-lessons-slips h3{margin:0 0 6px}
.mm-lessons-more{background:#fff;border:1px solid #e0e7e3;border-radius:16px;padding:10px 14px}.mm-lessons-more summary{cursor:pointer;font-weight:700;color:#24332b}.mm-lessons-more[open]>summary{margin-bottom:10px}
.mm-slip{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;padding:10px 0;border-top:1px solid #eef2ef}
.mm-slip-img{border:0;padding:0;background:#f4f8f5;border-radius:10px;width:72px;height:96px;overflow:hidden;display:grid;place-items:center;font-size:1.6rem;cursor:zoom-in}
.mm-slip-img img{width:100%;height:100%;object-fit:cover}
.mm-slip-info{display:grid;gap:4px;justify-items:start;min-width:0}.mm-slip-info small{color:#6b7570}
.mm-slip-reason{display:grid;gap:6px;width:100%}
.mm-pay-sheet{display:grid;gap:12px}
.mm-pay-to{display:flex;gap:12px;align-items:center;background:#f4f8f5;border-radius:14px;padding:12px}.mm-pay-to p{margin:2px 0;font-weight:700;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.mm-pay-to small{display:block;color:#6b7570}.mm-pay-to b{display:block}
.mm-pay-qr{width:120px;height:120px;object-fit:contain;background:#fff;border-radius:10px}
.mm-pay-list{display:grid;gap:4px}
.mm-pay-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px 10px;border:1px solid #e0e7e3;border-radius:12px;cursor:pointer}
.mm-pay-row input{width:20px;height:20px}
.mm-pay-file{display:flex;gap:12px;align-items:center}.mm-pay-file img{width:64px;height:86px;object-fit:cover;border-radius:8px}.mm-pay-file>span{font-size:2rem}
.mm-guide{display:grid;gap:10px}.mm-guide h2{margin:0;font-size:1.05rem;display:flex;gap:8px;align-items:center}
.mm-guide-steps{margin:0;padding-left:22px;color:#4a524e;font-size:.9rem;display:grid;gap:2px}
.mm-guide-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;padding:10px;border:1px solid #e0e7e3;border-radius:14px}
.mm-guide-item.pulse{border-color:#9fd3b5;background:#f7fcf9}
.mm-guide-info{min-width:0}.mm-guide-info b{display:block}.mm-guide-info small{color:#6b7570}
.mm-guide-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.mm-guide-no{border:0;background:none;color:#6b7570;text-decoration:underline;font:inherit;font-size:.85rem;cursor:pointer;padding:4px}
.mm-guide-fold{display:grid;gap:8px}
.mm-guide-toggle{border:0;background:none;font:inherit;font-weight:700;color:#24332b;text-align:left;cursor:pointer;padding:4px 0}
.mm-lesson-dialog{display:grid;gap:10px}.mm-lesson-dialog h3{margin:0}
.mm-room-nolesson{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;background:#fbf1d9;color:#6e500c;border-radius:12px;padding:8px 12px;margin:6px 0;font-size:.9rem}
.mm-admin-funnel{display:grid;gap:8px}
@media (max-width:480px){.mm-lesson-card{grid-template-columns:74px minmax(0,1fr);padding:12px;gap:10px}.mm-pay-qr{width:96px;height:96px}}
.mm-lesson-when span{font-size:1.15rem}.mm-lesson-when em{font-style:normal;font-size:.75rem;color:#6b7570}

/* v3.46 lesson card does everything · view-only calendar · disputes with evidence */
.mm-lesson-steps{display:flex;gap:4px;margin:0;padding:0;list-style:none;font-size:.78rem}
.mm-lesson-steps li{flex:1;text-align:center;padding:4px 2px;border-radius:999px;background:#eef2ef;color:#6b7570;font-weight:700;white-space:nowrap}
.mm-lesson-steps li.done{background:var(--ok-bg);color:#145c3d}
.mm-lesson-flag{display:grid;gap:3px;background:#f4f8f5;border-left:4px solid #1c7c54;border-radius:10px;padding:8px 10px;font-size:.9rem}
.mm-lesson-flag small{color:#6b7570}
.mm-lesson-flag.bad{background:#fbeeed;border-color:#a13d3d}.mm-lesson-flag.bad b{color:#8c2f2f}
.mm-lesson-card.alert{border-color:#d9a3a3;box-shadow:0 0 0 2px #f3d6d4}
.mm-lesson-card.flash{animation:mmFlash 1.6s ease}
@keyframes mmFlash{0%,60%{box-shadow:0 0 0 4px #8fd1ad}100%{box-shadow:none}}
.btn.danger{background:#a13d3d;color:#fff;border-color:#a13d3d}
.mm-lmonth{display:grid;gap:8px;padding:12px 14px}
.mm-lmonth-head{display:flex;align-items:center;justify-content:space-between}
.mm-lmonth-head button{border:1px solid #dfe6e2;background:#fff;border-radius:10px;width:36px;height:36px;font-size:1.2rem;cursor:pointer}
.mm-lmonth-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}
.mm-lmonth-grid .dow{font-size:.75rem;color:#6b7570;padding:2px 0}
.mm-lmonth-grid button{position:relative;border:0;background:none;border-radius:10px;height:38px;font:inherit;font-size:.92rem;color:#9aa39e}
.mm-lmonth-grid button.has{background:#1c7c54;color:#fff;font-weight:800;cursor:pointer}
.mm-lmonth-grid button.today{outline:2px solid #e3b23c;outline-offset:-2px;color:#24332b}
.mm-lmonth-grid button.has.today{color:#fff}
.mm-lmonth-grid button i{position:absolute;top:2px;right:4px;font-style:normal;font-size:.62rem;background:#e3b23c;color:#24332b;border-radius:999px;min-width:14px;line-height:14px}
.mm-dispute-quote{margin:0;background:#fbeeed;border-radius:10px;padding:8px 10px;font-size:.9rem}
.mm-dispute-tips{margin:0;padding-left:20px;font-size:.85rem;color:#6b7570}
.mm-dispute-files{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.mm-dispute-file{display:inline-flex;gap:4px;align-items:center;background:#f4f8f5;border-radius:999px;padding:4px 8px;font-size:.82rem}
.mm-dispute-file button{border:0;background:none;cursor:pointer;color:#a13d3d}
.mm-lesson-dialog{max-height:88dvh;overflow:auto}
.mm-lesson-dialog small.bad{color:#a13d3d}
.mm-dispute-facts{display:grid;gap:6px;background:#f4f8f5;border-radius:12px;padding:10px 12px;margin:6px 0}
.mm-dispute-facts ul{margin:0;padding-left:18px;font-size:.9rem}
.mm-lesson-dialog{text-align:left}.mm-lesson-dialog .mm-job-chips{justify-content:flex-start}

/* v3.46.1 one big button per card, the rest under ⋯ */
.mm-lesson-bar{display:flex;gap:8px;align-items:center}
.mm-lesson-main{flex:1;min-height:48px;font-size:1rem}
.mm-lesson-wait{flex:1;font-size:.85rem;color:#6b7570}
.mm-lesson-icon{flex:none;width:48px;height:48px;display:grid;place-items:center;border:1px solid #dfe6e2;background:#fff;border-radius:14px;font-size:1.25rem;line-height:1;cursor:pointer;text-decoration:none;color:#24332b}
.mm-lesson-icon.on{background:#eef2ef}
.mm-lesson-menu{display:grid;border:1px solid #e0e7e3;border-radius:14px;overflow:hidden;background:#fff}
.mm-lesson-menu>*{display:block;text-align:left;border:0;border-top:1px solid #eef2ef;background:none;padding:12px 14px;font:inherit;font-size:.95rem;color:#24332b;text-decoration:none;cursor:pointer}
.mm-lesson-menu>*:first-child{border-top:0}
.mm-lesson-menu>*:hover{background:#f4f8f5}
.mm-lesson-menu .bad{color:#a13d3d}
.mm-lesson-chips small{font-size:.82rem}
.mm-lesson-main{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-left:10px;padding-right:10px}.mm-lesson-icon{width:44px;height:48px}

/* v3.46.2 calendar-tile date, cards fold open/closed */
.mm-lesson-card{display:block;padding:0;overflow:hidden}
.mm-lesson-head{display:grid;grid-template-columns:56px minmax(0,1fr) 20px;gap:12px;align-items:center;width:100%;border:0;background:none;padding:12px 14px;text-align:left;font:inherit;color:inherit;cursor:pointer}
.mm-lesson-tile{display:grid;justify-items:center;align-content:center;width:56px;height:62px;border-radius:12px;background:#f4f8f5;border:1px solid #e0e7e3;line-height:1.1}
.mm-lesson-tile b{font-size:1.45rem;color:#0f5132}
.mm-lesson-tile small{font-size:.7rem;color:#6b7570}
.mm-lesson-tile.today{background:#1c7c54;border-color:#1c7c54}.mm-lesson-tile.today b,.mm-lesson-tile.today small{color:#fff}
.mm-lesson-headtext{display:grid;gap:3px;justify-items:start;min-width:0}
.mm-lesson-headtext b{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mm-lesson-headtext small{color:#4a524e;font-size:.85rem}
.mm-lesson-caret{color:#6b7570;font-size:.9rem;text-align:center}
.mm-lesson-card.open .mm-lesson-body{padding:0 14px 14px;border-top:1px solid #eef2ef;padding-top:12px}
.mm-lesson-card .mm-lesson-who small{color:#6b7570}
.mm-lesson-card.closed .mm-lesson-head{opacity:.65}
.mm-lessons-people{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}
.mm-lessons-people button{flex:none}

/* v3.46.4 institution proof first */
.mm-inst-gate{border:2px solid #e3b23c;display:grid;gap:8px}
.mm-inst-gate h2{margin:0}
.mm-inst-gate .mm-offer-card{box-shadow:none;border:0;padding:0;margin:0;background:none}
.mm-admin-inst-photo .mm-pill.warn{white-space:normal;margin:4px 0}

/* v3.46.5 institution photos easier to find for the admin */
.mm-admin-photo-link{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;border:2px solid #e3b23c}
.mm-admin-photo-link>span:first-child{font-size:1.6rem}.mm-admin-photo-link div{flex:1;display:grid}.mm-admin-photo-link small{color:#6b7570}
.mm-inst-admin-photos{display:grid;gap:6px;margin:8px 0}
.mm-inst-admin-photos>div{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:6px}
.mm-inst-admin-photos img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px;background:#eef2ef}

/* v3.47 calendar: tap a day to create / ask for a lesson */
.mm-lmonth-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.mm-lmonth-grid button{cursor:pointer;color:#24332b}
.mm-lmonth-grid button.past{color:#b5bcb8}
.mm-lmonth-grid button:disabled{cursor:default}
.mm-lmonth-grid button:not(.has):not(:disabled):hover{background:#eef2ef}
.mm-day-sheet{display:grid;gap:12px}
.mm-day-lessons{display:grid;gap:6px}
.mm-day-lesson{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left;border:1px solid #e0e7e3;background:#f7fbf8;border-radius:12px;padding:10px 12px;font:inherit;cursor:pointer}
.mm-day-lesson b{color:#0f5132}.mm-day-lesson span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mm-day-lesson small{color:#6b7570}
.mm-day-lesson.closed{opacity:.55}
.mm-day-new{display:grid;gap:8px;border-top:1px solid #eef2ef;padding-top:12px}
.mm-lmonth-grid button.has.past{color:#fff;opacity:.55}

/* v3.48 learn: more kinds of quiz questions, review old lessons, auto-play */
.mm-learn-auto{font-size:.78rem;width:auto;padding:0 10px;white-space:nowrap}
.mm-learn-options.ar button span{font-family:Amiri,"Noto Naskh Arabic",serif;font-size:1.6rem;line-height:1.6}
.mm-learn-quiz-th{font-size:1.4rem;text-align:center;margin:18px 0}
.mm-learn-listen{display:flex;gap:14px;align-items:center;justify-content:center;margin:22px 0}
.mm-learn-match{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.mm-learn-match>div{display:grid;gap:10px;align-content:start}
.mm-learn-match button{min-height:58px;border:2px solid #dfe6e2;border-bottom-width:4px;border-radius:14px;background:#fff;font:inherit;font-size:1rem;padding:8px;cursor:pointer;color:#24332b}
.mm-learn-match button.ar{font-family:Amiri,"Noto Naskh Arabic",serif;font-size:1.5rem}
.mm-learn-match button.sel{border-color:#3b82c4;background:#eaf3fb}
.mm-learn-match button.done{border-color:#bfe0cb;background:#eef8f2;color:#8aa596;opacity:.6}
.mm-learn-match button.wrong{border-color:#e08a8a;background:#fbeeed;animation:mmShake .35s}
.mm-learn-match button:disabled{cursor:default}
@keyframes mmShake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
.mm-learn-history{display:grid;gap:8px}
.mm-learn-hist-row{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:10px;align-items:center;border-top:1px solid #eef2ef;padding-top:8px}
.mm-learn-hist-row img{width:52px;height:52px;object-fit:cover;border-radius:10px}
.mm-learn-hist-ar{font-family:Amiri,serif;font-size:1rem;text-align:center;color:#0f5132;overflow:hidden;white-space:nowrap}
.mm-learn-hist-row b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mm-learn-hist-row small{color:#6b7570}
.mm-learn-more-link{border:0;background:none;font:inherit;font-weight:700;color:#0f5132;cursor:pointer;text-align:left;padding:4px 0}

/* v3.48 round 2: speak along */
.mm-learn-speak{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:center;margin:14px 0}
.mm-learn-speak.compact{margin:8px 0}
.mm-learn-mic{border:0;border-bottom:4px solid #b4741f;background:#f0b443;color:#3d2a07;font:inherit;font-weight:800;font-size:1.05rem;border-radius:999px;padding:12px 22px;cursor:pointer;display:inline-flex;gap:8px;align-items:center}
.mm-learn-speak.compact .mm-learn-mic{font-size:.95rem;padding:9px 16px}
.mm-learn-mic.rec{background:#d64545;border-bottom-color:#8f2424;color:#fff}
.mm-learn-mic.rec .dot{width:10px;height:10px;border-radius:50%;background:#fff;animation:mmBlink 1s infinite}
@keyframes mmBlink{50%{opacity:.2}}
.mm-learn-speak-btn{border:2px solid #dfe6e2;border-bottom-width:4px;background:#fff;border-radius:999px;padding:9px 16px;font:inherit;font-weight:700;cursor:pointer;color:#24332b}
.mm-learn-speak-hint{text-align:center;color:#4a524e;margin:4px 0 0}
.mm-learn-speak-note{text-align:center;color:#8a938e;font-size:.82rem;margin:6px 0}
.mm-learn-speak-foot{display:grid;gap:6px;width:100%}
.mm-learn-skip{border:0;background:none;color:#6b7570;font:inherit;font-size:.9rem;text-decoration:underline;cursor:pointer;padding:4px}

/* v3.48 round 2b: automatic check */
.mm-learn-speak.check{flex-direction:column}
.mm-learn-heard{display:grid;gap:4px;text-align:center;border-radius:14px;padding:10px 14px;min-width:240px}
.mm-learn-heard.ok{background:#e3f3e8;color:#145c3d}.mm-learn-heard.bad{background:#fbeeed;color:#8c2f2f}
.mm-learn-heard bdi{font-family:Amiri,serif;font-size:1.3rem}
.mm-learn-word .mm-learn-heard.ok{background:#d9f0e2}
.mm-learn-word .mm-learn-skip{color:#cfe7dc}

/* v3.48 round 3: trace the word */
.mm-learn-trace{display:grid;gap:10px;justify-items:center;margin-top:8px}
.mm-learn-trace-board{width:100%;display:flex;justify-content:center}
.mm-learn-trace canvas{background:#fbfdfb;border:2px dashed #cfdcd4;border-radius:18px;touch-action:none;cursor:crosshair}
.mm-learn-trace-msg{margin:0;font-weight:700;text-align:center}.mm-learn-trace-msg.ok{color:#1c7c54}.mm-learn-trace-msg.bad{color:#a13d3d}
.mm-learn-trace-btns{display:flex;gap:10px;justify-content:center}
.mm-learn-trace-head{display:flex;gap:12px;align-items:center;justify-content:center;margin:6px 0}
.mm-learn-trace-head b{display:block;font-size:1.25rem}.mm-learn-trace-head small{color:#6b7570}
.mm-learn-mic:disabled{opacity:.5;cursor:default}

/* v3.49 learn for children: pictures (Arabic-language lessons), choices speak, say the picture */
.mm-learn-ask-say{border:0;background:#eaf3fb;border-radius:999px;width:30px;height:30px;font-size:.95rem;cursor:pointer;vertical-align:middle;margin-left:4px}
.mm-learn-quiz-pic{display:block;margin:10px auto;max-width:220px;width:62%;aspect-ratio:1;object-fit:cover;border-radius:22px;border:3px solid #e0e7e3;background:#fff}
.mm-learn-match .pics{grid-template-columns:1fr}
.mm-learn-match button.pic{padding:4px;min-height:0;display:grid;place-items:center}
.mm-learn-match button.pic img{width:100%;max-height:74px;object-fit:contain;border-radius:10px}
.mm-learn-hint{display:block;margin:4px auto;border:0;background:none;color:#8a6514;font:inherit;font-weight:700;cursor:pointer}
.mm-learn-quiz-ar.small{font-size:2rem;margin:4px 0;text-align:center}

/* v3.49.1 เรียนวันละนิดบนคอม: wider column, bigger Arabic, pictures and buttons (phones unchanged) */
@media (min-width:900px){
  .mm-learn{max-width:720px}
  .mm-learn-focus{max-width:780px}
  .mm-learn-focus-body{max-width:none;padding:18px 40px 22px}
  .mm-learn-focus-foot{padding-left:40px;padding-right:40px}
  .mm-learn-arabic{font-size:3.1rem}
  .mm-learn-word-ar,.mm-learn-quiz-ar{font-size:3.8rem}
  .mm-learn-meaning,.mm-learn-word-head h2{font-size:1.35rem}
  .mm-learn-pics{grid-template-columns:repeat(3,1fr);gap:14px}
  .mm-learn-pics img{max-width:150px}
  .mm-learn-pics b{font-size:1.8rem}
  .mm-learn-pics small{font-size:1rem}
  .mm-learn-word-img{max-width:170px}
  .mm-learn-options button{min-height:64px;font-size:1.1rem}
  .mm-learn-options.ar button span{font-size:2.1rem}
  .mm-learn-options.pics{grid-template-columns:repeat(4,1fr)}
  .mm-learn-quiz-pic{max-width:280px}
  .mm-learn-match{gap:14px}
  .mm-learn-match button{min-height:76px;font-size:1.15rem}
  .mm-learn-match button.ar{font-size:1.9rem}
  .mm-learn-match button.pic img{max-height:100px}
  .mm-learn-btn.big{min-height:58px;font-size:1.1rem}
}
/* v3.49.1: the lesson screen rules above are scoped with .mm-learn-focus, so the desktop sizes need the same scope */
@media (min-width:900px){
  .mm-learn-focus .mm-learn-arabic{font-size:3.1rem}
  .mm-learn-focus .mm-learn-word-ar,.mm-learn-focus .mm-learn-quiz-ar{font-size:3.6rem}
  .mm-learn-focus .mm-learn-pics img{max-width:140px}
  .mm-learn-focus .mm-learn-pics b{font-size:1.8rem}
  .mm-learn-focus .mm-learn-pics small{font-size:1rem}
  .mm-learn-focus .mm-learn-quiz-pic{max-width:200px}
  .mm-learn-focus .mm-learn-options.ar{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  .mm-learn-focus .mm-learn-options.ar button{justify-content:center;min-height:76px}
}
@media (min-width:900px) and (max-height:820px){
  .mm-learn-focus .mm-learn-quiz-pic{max-width:170px}
  .mm-learn-focus .mm-learn-word-img{max-width:120px}
}
/* v3.50 member school pins */
.leaflet-marker-icon.mm-pin-grey{filter:grayscale(1) brightness(1.15) opacity(.9)}
.leaflet-marker-icon.mm-pin-ok{filter:hue-rotate(-75deg) saturate(1.3)}
.mm-pin-legend{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center;margin:0}
.mm-pin-legend .ok{color:#1f8a4c;font-size:1.1rem}.mm-pin-legend .grey{color:#9aa5a0;font-size:1.1rem}
.mm-pin-card{background:#fafbfa;border-style:dashed}
.mm-pin-card .mm-school-ic{background:#eef0ef;filter:grayscale(.6)}
.mm-pin-add-cta{display:flex;gap:12px;align-items:center;text-decoration:none;color:inherit;padding:14px;border:1.5px dashed #b9d3c4;background:#f6fbf8}
.mm-pin-add-cta>span:first-child{font-size:1.6rem}
.mm-pin-add-cta div{flex:1;display:grid;gap:2px;min-width:0}
.mm-pin-detail .mm-school-head .mm-school-ic{background:#eef0ef}
.mm-pin-detail .mm-school-head .mm-pill{display:inline-block;margin-top:6px}
.mm-pin-note{font-size:.92rem}
.mm-pin-photo{display:block;width:100%;border:0;padding:0;border-radius:16px;overflow:hidden;background:#eef3f0;cursor:zoom-in;max-height:320px}
.mm-pin-photo img{display:block;width:100%;max-height:320px;object-fit:cover}
.mm-pin-claim{display:grid;gap:8px;justify-items:start}
.mm-pin-claim p{margin:0}
.mm-pin-report-row{display:flex;justify-content:center}
.mm-pin-reasons{display:flex;flex-wrap:wrap;gap:8px}
.mm-pin-reasons button{border:1.5px solid var(--border,#dce8e1);background:#fff;border-radius:999px;padding:8px 14px;font:inherit;font-size:.92rem;cursor:pointer;min-height:40px}
.mm-pin-reasons button.on{background:#0f5132;border-color:#0f5132;color:#fff;font-weight:700}
.mm-pin-add-page{display:grid;gap:14px}
.mm-pin-add{display:grid;gap:14px}
.mm-pin-add h1{margin:0;font-size:1.4rem}
.mm-pin-add label{display:grid;gap:6px;font-weight:600}
.mm-pin-add input,.mm-pin-add select{font:inherit;padding:10px 12px;border:1.5px solid var(--border,#dce8e1);border-radius:12px;background:#fff;min-height:44px}
.mm-pin-near ul{margin:6px 0;padding-left:20px}
.mm-pin-photo-pick{display:grid;gap:6px;justify-items:start}
.mm-pin-photo-prev{display:flex;gap:10px;align-items:center}
.mm-pin-photo-prev img{width:120px;height:90px;object-fit:cover;border-radius:12px}
.mm-pin-done{display:grid;gap:4px}
.mm-pin-mine{display:grid;gap:8px}
.mm-pin-mine-row{display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid #eef2ef;padding-top:8px}
.mm-pin-mine-row>div{display:grid;gap:2px;min-width:0}
.mm-pin-mine-row .bad{color:var(--bad,#b42318)}
.mm-admin-pins{display:grid;gap:14px}
.mm-admin-pin-group{display:grid;gap:10px}
.mm-admin-pin-group h3{margin:0;font-size:1rem}
.mm-admin-pin{display:grid;grid-template-columns:140px 1fr;gap:12px;align-items:start;border:1px solid #e6ede9;border-radius:14px;padding:10px}
.mm-admin-pin:not(:has(.mm-inst-photo-img)){grid-template-columns:1fr}
.mm-admin-pin>div{display:grid;gap:6px;min-width:0}
.mm-admin-pin label{display:grid;gap:4px;font-weight:600}
.mm-admin-pin input[type=text],.mm-admin-pin input:not([type]){font:inherit;padding:8px 10px;border:1.5px solid var(--border,#dce8e1);border-radius:10px}
.mm-admin-pin .mm-pill{justify-self:start;white-space:normal}
.mm-admin-pin-report{display:grid;gap:6px;border:1px solid #e6ede9;border-radius:14px;padding:10px}
.mm-admin-pin-report ul{margin:0;padding-left:20px}
@media (max-width:560px){.mm-admin-pin{grid-template-columns:1fr}}
.mm-pin-add .mm-school-form-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
.mm-pin-add .mm-school-form-row>label,.mm-pin-add>*{min-width:0}
.mm-pin-add input,.mm-pin-add select{width:100%;min-width:0;box-sizing:border-box}
.mm-pin-mine-row .mm-pill{flex:none}
.mm-admin-pin label.mm-school-check{display:flex;align-items:center;gap:8px;font-weight:500}
/* v3.51 support us */
.mm-support-trigger{color:#1f8a4c}
.mm-support-trigger svg{display:block}
.mm-support{display:grid;gap:14px}
.mm-support-hero{display:grid;gap:8px;justify-items:start;background:linear-gradient(160deg,#f1faf4,#fff 70%)}
.mm-support-hero h1{margin:0;font-size:1.5rem;text-wrap:balance}
.mm-support-hero p{margin:0}
.mm-support-heart{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#e3f4e9;color:#1f8a4c}
.mm-support-heart svg{width:28px;height:28px}
.mm-support-heart.small{width:40px;height:40px;flex:none}
.mm-support-heart.small svg{width:22px;height:22px}
.mm-support-block{display:grid;gap:8px}
.mm-support-block h2{margin:0;font-size:1.1rem}
.mm-support-block p{margin:0}
.mm-support-list{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.mm-support-note{background:#f4f8f5;border-radius:12px;padding:10px 12px;font-size:.95rem}
.mm-support-uses{display:grid;gap:10px}
.mm-support-use{border:1px solid #e6ede9;border-radius:14px;padding:10px 12px;display:grid;gap:4px}
.mm-support-use.mine{border-color:#1f8a4c;background:#f1faf4}
.mm-support-use small{color:#1f8a4c;font-weight:600}
.mm-support-use ul{margin:0;padding-left:20px}
.mm-support-go{display:flex;align-items:center;justify-content:center;gap:6px}
.mm-support-go svg{width:20px;height:20px}
.mm-support-foot{text-align:center;margin:0}
.mm-support-nudge{display:flex;gap:12px;align-items:center;text-decoration:none;color:inherit;border:1.5px solid #cfe7d8;background:#f4fbf6;border-radius:16px;padding:12px 14px;text-align:left}
.mm-support-nudge>span:nth-child(2){flex:1;display:grid;gap:2px;min-width:0}
.mm-support-nudge small{color:#4f6158}
@media (max-width:380px){.header-tools .language-switch.compact{transform:scale(.88);transform-origin:right center}}
@media (max-width:430px){.topbar .brand>span:not(.brand-mark){display:none!important}}
/* v3.51.1 glossy heart + shorter support page */
.mm-support-trigger{color:inherit}
.mm-heart3d{display:block;filter:drop-shadow(0 1px 1.5px rgba(16,90,50,.35))}
.mm-support-heart{background:none;width:auto;height:auto}
.mm-support-heart svg{width:auto;height:auto}
.mm-support-heart.small svg{width:30px;height:30px}
.mm-support-hero{justify-items:center;text-align:center;gap:10px}
.mm-support-points{display:flex;flex-wrap:wrap;justify-content:center;gap:6px}
.mm-support-points span{background:#eef8f1;border-radius:999px;padding:5px 12px;font-size:.9rem}
.mm-support-go svg{width:22px;height:22px}
.mm-support-more summary{cursor:pointer;font-weight:700;min-height:28px}
.mm-support-more[open] summary{margin-bottom:10px}
.mm-heart3d,.mm-heart3d *{stroke:none!important;fill-opacity:1}.mm-support-trigger .mm-heart3d{width:26px;height:26px}
.mm-support-how{font-weight:600;color:#14864a}.mm-learn-done .mm-support-nudge{margin:4px 0}
.mm-support-nudge .mm-support-heart.small{display:grid;place-items:center;width:44px!important;height:44px!important;border-radius:50%;background:#e3f4e9}.mm-support-nudge .mm-heart3d{width:32px!important;height:32px!important;min-width:32px;flex:none}
/* v3.51.3 (owner): top bar icons the same size and on one line */
.header-tools{align-items:center}
.header-tools .notification-bell{display:flex;align-items:center;height:40px}
.header-tools .notification-trigger{width:40px;height:40px;min-height:40px;box-sizing:border-box;display:inline-grid;place-items:center;padding:0;margin:0}
.header-tools .mobile-menu-button{width:40px;height:40px;min-height:40px;box-sizing:border-box;margin:0}
.header-tools .language-switch.compact{height:40px;box-sizing:border-box}
.mm-bottom-sheet a.mm-sheet-support{display:flex;align-items:center;justify-content:center;gap:8px;background:#f1faf4;border:1.5px solid #cfe7d8;color:#14864a;font-weight:700}
/* v3.52 owner or helper when pinning */
.mm-pin-who{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
.mm-pin-who button{display:grid;gap:4px;justify-items:center;text-align:center;border:1.5px solid var(--border,#dce8e1);background:#fff;border-radius:16px;padding:14px 10px;font:inherit;cursor:pointer;min-width:0}
.mm-pin-who button span{font-size:1.6rem}
.mm-pin-who button small{color:#5f7068;font-size:.85rem}
.mm-pin-who button.on{border-color:#14864a;background:#f1faf4;box-shadow:0 0 0 2px #14864a inset}
.mm-pin-owner{display:grid;gap:6px}
.mm-pin-owner p,.mm-pin-owner ol{margin:0}
.mm-pin-owner ol{padding-left:20px;display:grid;gap:4px}
.mm-pin-owner .btn{justify-self:start}
.mm-pin-owner-next{display:grid;gap:8px;justify-items:start;border:1.5px solid #cfe7d8}
.mm-pin-owner-next p{margin:0}
/* v3.52 school logos */
.mm-school-ic.logo{background:#fff;border:1px solid #e3ebe6;overflow:hidden;padding:0}
.mm-school-ic.logo img{width:100%;height:100%;object-fit:contain}
.mm-logo-pick{display:flex;gap:12px;align-items:center}
.mm-logo-pick>div{display:grid;gap:4px;min-width:0}
.mm-logo-pick .logo-slot{background:#f4f7f5;border:1.5px dashed #c9d9cf;overflow:hidden}
.mm-logo-pick .logo-slot img{width:100%;height:100%;object-fit:contain;background:#fff}
.mm-logo-actions{display:flex;gap:6px;flex-wrap:wrap}
.mm-logo-edit{display:grid;gap:6px;justify-items:start;border-bottom:1px solid #eef2ef;padding-bottom:12px}
.mm-map-logo{display:block;width:44px;height:44px;object-fit:contain;border-radius:10px;border:1px solid #e3ebe6;margin-bottom:4px;background:#fff}
.mm-admin-pin-logo{display:flex;gap:10px;align-items:center}
.mm-admin-logo-row{grid-template-columns:auto 1fr;display:grid;gap:12px;align-items:start}
.mm-admin-logo-row>div{display:grid;gap:6px;min-width:0}
/* v3.52 school types admin */
.mm-admin-types{display:grid;gap:12px}
.mm-admin-type-add{display:grid;gap:6px;background:#f4f8f5;border-radius:14px;padding:12px}
.mm-admin-type-row{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:8px;align-items:center}
.mm-admin-type-row input{font:inherit;padding:8px 10px;border:1.5px solid var(--border,#dce8e1);border-radius:10px;min-width:0;box-sizing:border-box;width:100%}
.mm-admin-type-row input.ic{text-align:center;font-size:1.2rem}
.mm-admin-type-row input.num{width:72px}
.mm-admin-type-list{display:grid;gap:8px}
.mm-admin-type-item{display:grid;gap:6px;border:1px solid #e6ede9;border-radius:14px;padding:10px}
.mm-admin-type-item.off{opacity:.6;background:#fafafa}
.mm-admin-type-foot{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.mm-type-del{color:#b42318}
.mm-type-confirm{display:flex;flex-wrap:wrap;gap:8px;align-items:center;background:#fff4f2;border-radius:10px;padding:8px 10px}
.mm-type-confirm span{flex:1 1 100%;font-size:.92rem}
.mm-type-del-yes{background:#b42318;color:#fff;border:0}
/* v3.53 Arabic: phrases, sentences, dialogs */
.mm-learn-hero-unit{margin:0;font-size:.85rem;opacity:.9;font-weight:600}
.mm-lines-tools{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap}
.mm-lines{display:grid;gap:10px}
.mm-line{display:grid;gap:2px;text-align:center;border:1.5px solid #dfe9e3;background:#fff;border-radius:18px;padding:12px 14px;font:inherit;cursor:pointer;color:inherit}
.mm-line b{font-family:Amiri,"Noto Naskh Arabic",serif;font-size:1.6rem;line-height:1.7;font-weight:700}
.mm-line-tr{color:#6b7c73}.mm-line-th{color:#2c3b33;font-size:.95rem}
.mm-line-who{font-weight:700;color:#14864a;font-size:.8rem}
.mm-line.on{border-color:#14864a;box-shadow:0 0 0 3px rgba(20,134,74,.15)}
.mm-lines.dialog .mm-line{max-width:88%;text-align:right}
.mm-lines.dialog .mm-line.a{justify-self:start;background:#f3f8f5;border-bottom-left-radius:6px;text-align:left}
.mm-lines.dialog .mm-line.b{justify-self:end;background:#e9f6ee;border-bottom-right-radius:6px}
.mm-lines.dialog .mm-line b{text-align:right}
.mm-lines.small .mm-line b{font-size:1.25rem}
.mm-lines-new{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.mm-lines-new button{border:1px solid #dfe9e3;background:#fff;border-radius:999px;padding:4px 12px;font:inherit;cursor:pointer}
.mm-lines-new button span{font-family:Amiri,serif;font-size:1.15rem}
.mm-line-q{align-items:center}
.mm-line-q>div{display:grid;gap:2px;min-width:0}
.mm-blank{display:inline-block;min-width:3.2em;min-height:1.2em;border-bottom:3px solid #14864a;color:#14864a;margin:0 .25em}
.mm-build{display:grid;gap:14px}
.mm-build-answer{min-height:64px;border:2px dashed #cfe0d6;border-radius:16px;padding:8px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-start}
.mm-build-answer.ok{border-color:#1f8a4c;background:#eefaf2}.mm-build-answer.bad{border-color:#d0453a;background:#fff3f2}
.mm-build-hint{color:#8a9a92;font-size:.9rem;width:100%;text-align:center}
.mm-build-pool{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.mm-build button{font-family:Amiri,"Noto Naskh Arabic",serif;font-size:1.45rem;border:1.5px solid #cfe0d6;background:#fff;border-radius:14px;padding:4px 14px;cursor:pointer;min-height:48px;box-shadow:0 2px 0 #cfe0d6}
.mm-build-pool button.used{visibility:hidden}
.mm-path{display:grid;gap:12px}
.mm-path-unit{display:grid;gap:8px;border:1px solid #e3ebe6;border-radius:16px;padding:10px 12px}
.mm-path-unit.done{background:#f3faf6}
.mm-path-head{display:flex;gap:10px;align-items:center}
.mm-path-head>div{display:grid}
.mm-path-no{width:32px;height:32px;border-radius:50%;background:#14864a;color:#fff;display:grid;place-items:center;font-weight:700}
.mm-path-steps{display:grid;grid-template-columns:repeat(auto-fill,minmax(54px,1fr));gap:6px}
.mm-path-step{display:grid;justify-items:center;gap:2px;border:1.5px solid #dfe9e3;background:#fff;border-radius:14px;padding:6px 2px;font:inherit;font-size:1.1rem}
.mm-path-step small{font-size:.7rem;color:#5f7068}
.mm-path-step.done{border-color:#1f8a4c;background:#eaf7ef;color:#1f8a4c;cursor:pointer}
.mm-path-step.now{border-color:#e0a521;background:#fff7e3;box-shadow:0 0 0 3px rgba(224,165,33,.2)}
.mm-path-step.lock{opacity:.55}
.mm-learn-options.ar button span[dir=rtl]{flex:1;text-align:right}
.mm-learn-pics-ar{display:grid;place-items:center;aspect-ratio:1;width:100%;border-radius:18px;background:#f3f8f5;font-family:Amiri,"Noto Naskh Arabic",serif;font-size:2.4rem;color:#145c4b}
/* v3.53.1 chat look */
.mm-lines.dialog .mm-line{max-width:86%}
.mm-lines.small .mm-line b{font-size:1.35rem;line-height:1.8}
.mm-line.mine{border:2px dashed #14864a;background:#fff;cursor:default}
.mm-line.mine.ok{border-style:solid;background:#e9f6ee}.mm-line.mine.bad{border-color:#d0453a;background:#fff3f2}
.mm-line-play{border:0;background:#eaf3ff;border-radius:999px;width:30px;height:30px;cursor:pointer;font-size:.9rem;vertical-align:middle}
.mm-typing{display:inline-flex;gap:5px;padding:8px 2px;justify-content:flex-end}
.mm-typing i{width:8px;height:8px;border-radius:50%;background:#9cc9ad;animation:mmTyping 1.2s infinite}
.mm-typing i:nth-child(2){animation-delay:.2s}.mm-typing i:nth-child(3){animation-delay:.4s}
@keyframes mmTyping{0%,60%,100%{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
@media (prefers-reduced-motion:reduce){.mm-typing i{animation:none}}
.mm-reply-hint{margin:6px 0 0;text-align:right;color:#6b7c73;font-size:.85rem}
.mm-reply-opts{display:grid;gap:8px;justify-items:end}
.mm-reply-opts button{max-width:86%;border:1.5px solid #cfe7d8;background:#f4fbf6;border-radius:18px 18px 6px 18px;padding:8px 16px;font-family:Amiri,"Noto Naskh Arabic",serif;font-size:1.35rem;line-height:1.7;cursor:pointer;color:inherit;text-align:right}
.mm-reply-opts button.sel{border-color:#14864a;background:#dff3e7;box-shadow:0 0 0 3px rgba(20,134,74,.15)}
.mm-reply-opts button.right{border-color:#1f8a4c;background:#dff3e7}.mm-reply-opts button.wrong{border-color:#d0453a;background:#fff3f2}.mm-reply-opts button.dim{opacity:.45}
.mm-blank-line{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:4px 12px;font-family:Amiri,"Noto Naskh Arabic",serif;font-size:2rem;line-height:1.9;padding:8px 4px}
.mm-blank-line .mm-blank{display:inline-block;min-width:3.2em;min-height:1.4em;margin:0;border-bottom:3px solid #14864a;text-align:center;color:#14864a}
.mm-blank-line .mm-blank.ok{color:#1f8a4c}.mm-blank-line .mm-blank.bad{color:#d0453a;border-color:#d0453a}
.mm-blank-meta{display:flex;gap:8px;align-items:center;justify-content:center;color:#5f7068}
/* v3.54 prayer: tabs, qibla, calc settings, Hijri */
.mm-ppage-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:#eef4f0;border-radius:999px;padding:4px;margin:0 0 12px}
.mm-ppage-tabs button{border:0;background:transparent;border-radius:999px;padding:9px 6px;font:inherit;font-weight:600;color:#3e5148;cursor:pointer}
.mm-ppage-tabs button.on{background:#14634a;color:#fff}
.mm-ppage-locate,.mm-prayer-locate{display:block;margin:8px auto 0;border:0;background:rgba(255,255,255,.18);color:inherit;border-radius:999px;padding:6px 14px;font:inherit;font-size:.9rem;cursor:pointer}
.mm-prayer-locate{background:#eef7f1;color:#14634a;width:100%}
.mm-prayer-links{display:flex;gap:6px;flex-wrap:wrap}.mm-prayer-links .mm-prayer-more{flex:1}
.mm-hijri{display:flex;gap:8px;align-items:center;margin:8px 0 0;padding:8px 10px;background:#f4f8f5;border-radius:12px;font-size:.92rem}
.mm-hijri small{color:#5f7068}
.mm-pcalc{display:grid;gap:8px;margin-top:12px}
.mm-pcalc h3{margin:0;font-size:1rem;display:flex;gap:6px;align-items:center}
.mm-pcalc ul{margin:0;padding-left:18px;display:grid;gap:4px;font-size:.92rem}
.mm-pcalc-note{margin:0;background:#f4f7f5;border-radius:12px;padding:8px 10px;font-size:.85rem;color:#4f6158}
.mm-pcalc-label{color:#5f7068;font-weight:600;margin-top:4px}
.mm-pcalc-seg{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.mm-pcalc-seg button{border:1.5px solid #dfe9e3;background:#fff;border-radius:12px;padding:9px 6px;font:inherit;font-size:.88rem;cursor:pointer;color:#3e5148}
.mm-pcalc-seg button.on{border-color:#14634a;background:#eef7f1;color:#14634a;font-weight:700}
.mm-pcalc-adj{display:grid;gap:6px}
.mm-pcalc-adj>div{display:grid;grid-template-columns:1fr 36px 84px 36px;align-items:center;gap:6px}
.mm-pcalc-adj button{width:36px;height:36px;border-radius:50%;border:1.5px solid #dfe9e3;background:#fff;font-size:1.2rem;cursor:pointer}
.mm-pcalc-adj b{text-align:center;font-weight:600;color:#3e5148;font-size:.9rem}
.mm-qibla{display:grid;justify-items:center;gap:8px;text-align:center;padding:8px 0}
.mm-qibla-dial{position:relative;width:min(78vw,300px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#fff 60%,#eef4f0 61%);border:3px solid #dfe9e3;box-shadow:0 6px 24px rgba(20,99,74,.12)}
.mm-qibla-dial.on{border-color:#1f8a4c;box-shadow:0 0 0 6px rgba(31,138,76,.18)}
.mm-qibla-rose{position:absolute;inset:0;transform:rotate(var(--dial,0deg));transition:transform .25s ease-out}
.mm-qibla-rose>b{position:absolute;font-weight:700;color:#5f7068}
.mm-qibla-rose .n{top:8px;left:50%;transform:translateX(-50%);color:#d0453a}.mm-qibla-rose .s{bottom:8px;left:50%;transform:translateX(-50%)}
.mm-qibla-rose .e{right:10px;top:50%;transform:translateY(-50%)}.mm-qibla-rose .w{left:10px;top:50%;transform:translateY(-50%)}
.mm-qibla-kaaba{position:absolute;inset:0;display:flex;justify-content:center}.mm-qibla-kaaba i{font-style:normal;font-size:1.6rem;margin-top:30px}
.mm-qibla-needle{position:absolute;inset:18%;display:flex;justify-content:center;transition:transform .25s ease-out}
.mm-qibla-needle span{width:10px;height:50%;background:linear-gradient(#14634a,#3f9a6e);border-radius:6px 6px 2px 2px;clip-path:polygon(50% 0,100% 18%,70% 18%,70% 100%,30% 100%,30% 18%,0 18%)}
.mm-qibla-dial.on .mm-qibla-needle span{background:linear-gradient(#1f8a4c,#5fc48a)}
@media (prefers-reduced-motion:reduce){.mm-qibla-rose,.mm-qibla-needle{transition:none}}
.mm-qibla-big{margin:6px 0 0;font-size:1.5rem;font-weight:700;color:#14634a}
.mm-qibla-sub{margin:0;color:#3e5148}.mm-qibla-help{margin:0;font-size:.88rem;color:#5f7068;max-width:340px}
.mm-qibla-foot{margin:4px 0 0;font-size:.85rem;color:#5f7068}
.mm-qibla-place{display:flex;justify-content:center;margin-top:6px}.mm-qibla-place .mm-ppage-place{background:#14634a;color:#fff}
.mm-admin-hijri{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.mm-admin-hijri>div:first-child{display:grid;gap:2px;min-width:0}.mm-admin-hijri-btns{display:flex;gap:6px}
.mm-hijri.compact{background:rgba(255,255,255,.14);color:inherit;margin:6px 0 10px;padding:6px 12px;border-radius:999px;display:inline-flex;font-size:.9rem}
.mm-hijri.compact small{color:inherit;opacity:.8}
.mm-ppage-hero .mm-hijri.compact{margin:0 auto 8px}

/* v3.54 (owner 2026-10-21): home prayer card — Hijri date on top, qibla icon beside the gear, next prayer on one line */
.mm-prayer-head{align-items:center}
.mm-prayer-date{flex:1;min-width:0}
.mm-prayer-date .mm-hijri.compact{margin:0;display:flex;font-size:.84rem;line-height:1.35;border-radius:14px;padding:6px 10px}
.mm-prayer-date .mm-hijri.compact small{display:block}
.mm-prayer-qibla{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;flex:none}
.mm-prayer-head .mm-prayer-gear{flex:none}
.mm-prayer-where{display:block;margin-top:12px}
.mm-prayer-next.one{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:clamp(.8rem,3.7vw,1.05rem);margin-bottom:12px}
.mm-prayer-next.one b{font-size:clamp(1rem,4.9vw,1.35rem)}

/* v3.55 (owner 2026-10-21): pin from a Google Maps link */
.mm-maplink{margin-top:12px;padding:12px;border:1px dashed #b9d3c7;border-radius:14px;background:#f6faf8}
.mm-maplink label{display:block;margin:0}
.mm-maplink label>b{display:block;font-size:.95rem;margin-bottom:6px}
.mm-maplink-row{display:flex;gap:8px;align-items:center}
.mm-maplink-row input{flex:1;min-width:0}
.mm-maplink-row .btn{flex:none;white-space:nowrap}
.mm-maplink-msg{margin:8px 0 0;font-size:.9rem;border-radius:10px;padding:8px 10px}
.mm-maplink-msg.ok{background:#e6f4ec;color:#145c4b}
.mm-maplink-msg.warn{background:#fff6e0;color:#8a5a00}
.mm-maplink-msg.bad{background:#fdecea;color:#a3261b}
.mm-maplink-howto{background:none;border:0;padding:0;margin-top:8px;color:#145c4b;text-decoration:underline;font-size:.88rem;cursor:pointer}
.mm-maplink-steps{margin:6px 0 0;padding-left:20px;font-size:.88rem;color:#3d4c45}
.mm-maplink-steps li{margin:3px 0}

/* v3.56 (owner 2026-10-21): several school types per place */
.mm-school-extra{margin-top:4px}
.mm-school-extra .muted.small{margin:2px 0 8px}
.mm-school-extra-chips{display:flex;flex-wrap:wrap;gap:8px}
.mm-school-extra-chips button{border:1.5px solid #cfe0d8;background:#fff;color:#1d3b31;border-radius:999px;padding:8px 14px;font-size:.92rem;cursor:pointer;min-height:40px}
.mm-school-extra-chips button.on{background:#145c4b;border-color:#145c4b;color:#fff;font-weight:700}
.mm-school-extra-chips button:disabled{opacity:.45;cursor:not-allowed}

/* v3.56.1: how many extra types → one dropdown each */
.mm-school-extra-count{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 4px}
.mm-school-extra-count button{min-width:52px;min-height:42px;border:1.5px solid #cfe0d8;background:#fff;color:#1d3b31;border-radius:12px;padding:6px 12px;font-weight:700;cursor:pointer}
.mm-school-extra-count button.on{background:#145c4b;border-color:#145c4b;color:#fff}
.mm-school-extra-list{display:grid;gap:8px}
.mm-school-extra-list label{margin:0}
.mm-school-extra-count{flex-wrap:nowrap;gap:6px}
.mm-school-extra-count button{flex:1 1 0;min-width:0;padding:6px 4px}

/* v3.57 (owner 2026-10-21): search schools by name */
.mm-school-search{position:relative;display:flex;align-items:center}
.mm-school-search svg{position:absolute;left:14px;width:20px;height:20px;fill:#5f7068;pointer-events:none}
.mm-school-search input{width:100%;min-height:48px;padding:10px 44px 10px 44px;border:1.5px solid var(--border,#dce8e1);border-radius:14px;font:inherit;font-size:1rem;background:#fff}
.mm-school-search input:focus{outline:none;border-color:#145c4b;box-shadow:0 0 0 3px rgba(20,92,75,.15)}
.mm-school-search input::-webkit-search-cancel-button{display:none}
.mm-school-search button{position:absolute;right:8px;width:32px;height:32px;border:0;border-radius:50%;background:#eef4f1;color:#3d4c45;cursor:pointer;font-size:.9rem}
.mm-pin-add-cta.top{margin:4px 0 14px}
/* v3.58.2 (owner 2026-10-21): teacher search filters were 5 tall rows on a phone — search on top, the 4 filters in a 2×2 grid, shorter boxes */
@media(max-width:620px){
  .filterbar.mm-filter-5{grid-template-columns:1fr 1fr;gap:8px;padding:12px}
  .filterbar.mm-filter-5>:first-child{grid-column:1/-1}
  .filterbar.mm-filter-5 input,.filterbar.mm-filter-5 select{min-height:44px;padding:9px 12px;font-size:.95rem;border-radius:12px}
  .filterbar.mm-filter-5 select{padding-right:28px;text-overflow:ellipsis}
}
/* v3.58.2 (owner 2026-10-21): page headings on /schools and /teachers took half the phone screen — smaller and shorter */
@media(max-width:620px){
  .mm-schools>.page-heading,.section.container:has(>.filterbar.mm-filter-5)>.page-heading{margin-bottom:12px}
  .mm-schools>.page-heading .eyebrow,.section.container:has(>.filterbar.mm-filter-5)>.page-heading .eyebrow{display:none}
  .mm-schools>.page-heading h1,.section.container:has(>.filterbar.mm-filter-5)>.page-heading h1{font-size:1.6rem;line-height:1.25;margin:0 0 4px;letter-spacing:-.01em}
  .mm-schools>.page-heading p,.section.container:has(>.filterbar.mm-filter-5)>.page-heading p{font-size:.92rem;margin:0}
  .mm-schools,.section.container:has(>.filterbar.mm-filter-5){padding-top:18px}
}
/* v3.59 (owner 2026-10-24): institution start in 3 steps */
.mm-inst-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:0 0 8px}
.mm-inst-progress span{height:6px;border-radius:999px;background:#dfe9e4}
.mm-inst-progress span.done{background:#2f8f63}
.mm-inst-progress span.on{background:#f0b443}
.mm-inst-progress-labels{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;list-style:none;margin:0 0 12px;padding:0;font-size:.8rem;color:#7a8a83;text-align:center}
.mm-inst-progress-labels li.done{color:#2f8f63;font-weight:700}
.mm-inst-progress-labels li.on{color:#1d3b31;font-weight:700}
.mm-inst-steps-card h2{margin:4px 0 6px}
.mm-inst-steps-card>.muted{margin:0 0 12px}
.mm-inst-start .eyebrow{display:block;margin-bottom:4px}
.mm-inst-start h1{margin:2px 0 4px}
.mm-inst-start-grid{display:grid;gap:12px;margin-top:12px}
.mm-inst-start-grid label{margin:0}
.mm-inst-start-grid small{display:block;color:#6b7b74;margin-top:4px;font-size:.82rem}
.mm-inst-start-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mm-inst-start-form{display:grid;gap:12px}
.mm-proof-who{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#f4f8f5;border-radius:12px;padding:10px 12px;margin:4px 0 2px}
.mm-proof-who-edit{border:1.5px solid #cfe0d8;background:#fff;border-radius:10px;padding:6px 12px;font-weight:700;color:#145c4b;cursor:pointer;flex:none}
.mm-proof-who-note{display:block;color:#6b7b74;margin:0 0 10px}
.mm-proof-extra{margin:8px 0}
.mm-proof-extra summary{cursor:pointer;color:#145c4b;font-weight:700}
.mm-inst-start-form label{display:grid;gap:6px;font-weight:600;margin:0}
.mm-inst-start-form input,.mm-inst-start-form select{width:100%;min-height:46px;border:1px solid var(--border,#dce8e1);border-radius:12px;padding:10px 12px;background:#fff;font:inherit;font-weight:400}
.mm-inst-start-form .mm-offer-actions .btn{width:100%}
/* v3.59.1 (owner 2026-10-24): institution home — prayer card is the first thing on a phone */
@media(max-width:700px){
  .mm-inst-home>h1{font-size:1.35rem;line-height:1.3;margin:0 0 10px}
  .mm-inst-home>h1+p{display:none}
}

/* v3.60 (owner 2026-10-24): optional "ท่องจำทั้งบท" */
.mm-recite-card{display:flex;align-items:center;gap:12px;text-align:left}
.mm-recite-card>div{flex:1;min-width:0}
.mm-recite-card p{margin:2px 0 0;font-size:.88rem;color:#5f7068}
.mm-recite-icon{font-size:1.8rem}
.mm-recite{display:grid;gap:12px;text-align:center}
.mm-recite-title{margin:0}
.mm-recite-lines{list-style:none;margin:0;padding:0;display:grid;gap:10px;text-align:center}
.mm-recite-lines li{border-radius:14px;padding:8px 10px;background:#f6faf8;transition:background .2s}
.mm-recite-lines li.on{background:#fff4d8;box-shadow:0 0 0 2px #f0b443 inset}
.mm-recite-lines small{display:block;color:#5f7068;margin-top:4px}
.mm-recite-ar{font-family:Amiri,'Noto Naskh Arabic',serif;font-size:1.55rem;line-height:2.1;margin:0}
.mm-recite-ar.big{font-size:2rem;line-height:2.3;background:#f6faf8;border-radius:16px;padding:12px}
.mm-recite-gap{display:inline-block;border-bottom:3px dashed #9db8ab;margin:0 4px;min-width:2.2em;line-height:1.2}
.mm-recite-hint{margin:0;color:#3d4c45;background:#eef4f1;border-radius:12px;padding:8px 12px}
.mm-recite-tools{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.mm-recite-ok{color:#1f8a4c;font-weight:700;margin:0}
.mm-recite-foot{display:grid;gap:8px;width:100%}
.mm-recite-big{font-size:3.2rem}

/* v3.62 ผู้ใช้งานทั่วไป */
.mm-land-general{grid-column:1/-1;display:flex;align-items:center;justify-content:center;min-height:40px;font-size:1rem;color:#13261d!important;background:none;border:0;text-decoration:none!important}
.mm-land-general:hover{text-decoration:underline!important}
.mm-roles-cards{grid-template-columns:repeat(4,1fr);gap:18px;max-width:1240px}
.mm-role-pic{height:130px}
.r-general .mm-role-pic{background:linear-gradient(160deg,#f1eefb,#d9d1f0)}.r-general .mm-role-go{background:#5b4a99}
@media (max-width:820px){.mm-roles-cards{grid-template-columns:1fr}.mm-role-pic{height:88px}}
.mm-home-general{max-width:760px;margin:0 auto;padding-top:18px;padding-bottom:28px}
.mm-gen-hello h1{margin:0;font-size:clamp(1.35rem,4.4vw,1.9rem);color:#13261d}
.mm-gen-hello p{margin:4px 0 0;color:#5b6a62}
.mm-gen-learn{display:flex;gap:12px;align-items:center;padding:14px}
.mm-gen-learn>div{flex:1;display:grid;gap:2px}.mm-gen-learn small{color:#5b6a62}
.mm-gen-learn-ic{font-size:30px;width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:#fff7e0;flex:none}
.mm-gen-join h2,.mm-gen-up h2{margin:0 0 4px;font-size:1.15rem}
.mm-gen-join-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px}
.mm-gen-join-card{display:grid;gap:2px;justify-items:center;text-align:center;padding:12px 8px;border-radius:16px;border:1.5px solid #e2ece6;background:#fbfdfc;color:#13261d!important;text-decoration:none!important}
.mm-gen-join-card span{font-size:28px}.mm-gen-join-card small{color:#5b6a62;font-size:.8rem;line-height:1.35}
.mm-gen-join-card.r-general{border-color:#cfc6ee;background:#f7f5fd}
.mm-gen-have{margin:10px 0 0;text-align:center;color:#5b6a62;font-size:.92rem}
.mm-gen-have a{color:#0f5132!important;font-weight:700}
.mm-gen-up-list{display:grid;gap:8px;margin-top:10px}
.mm-gen-up-btn{display:flex;gap:12px;align-items:center;text-align:left;width:100%;padding:10px 12px;border-radius:16px;border:1.5px solid #e2ece6;background:#fff;cursor:pointer;font:inherit;color:#13261d}
.mm-gen-up-btn>span:first-child{font-size:26px}.mm-gen-up-btn>span:nth-child(2){flex:1;display:grid;gap:1px}.mm-gen-up-btn small{color:#5b6a62}
.mm-gen-up-btn.on{border-color:#0f5132;background:#eef6f1}
.mm-gen-go{color:#9fb3a8;font-size:1.4rem}
.mm-gen-confirm{margin-top:10px;padding:12px;border-radius:14px;background:#fffaf0;border:1px solid #f0dfb4}
.mm-gen-confirm p{margin:0 0 10px;line-height:1.55}
.mm-gen-acc{display:grid;gap:8px}
.mm-gen-name-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.mm-gen-name-row b{font-size:1.1rem}
.mm-gen-name{display:flex;gap:8px;flex-wrap:wrap}.mm-gen-name input{flex:1;min-width:160px}
.mm-gen-links{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.mm-gen-links a,.mm-gen-links button{display:flex;align-items:center;min-height:44px;padding:0 12px;border-radius:12px;border:1px solid #e2ece6;background:#fbfdfc;color:#13261d!important;text-decoration:none!important;font:inherit;cursor:pointer;text-align:left}
.mm-gen-signup ul{margin:6px 0 4px;padding-left:20px;line-height:1.7}
.mm-gen-google{display:flex!important;align-items:center;justify-content:center;gap:12px;margin-top:6px}
.mm-gen-start label{display:grid;gap:6px;margin:8px 0 12px}
.mm-gen-back{padding-top:12px}
.mm-gen-tostudent{display:grid;gap:8px;padding:12px;border-radius:14px;background:#f7f5fd;border:1px solid #d9d1f0}
.mm-gen-tostudent p{margin:0;line-height:1.55}
@media (max-width:600px){.mm-gen-join-grid{grid-template-columns:1fr 1fr}.mm-gen-links{grid-template-columns:1fr}}
@media (max-width:600px){.mm-gen-learn{flex-wrap:wrap}.mm-gen-learn .btn{width:100%;justify-content:center}}
.mm-gen-or{display:flex;align-items:center;gap:10px;margin:14px 0 6px;color:#7a8a82;font-size:.9rem}
.mm-gen-or::before,.mm-gen-or::after{content:"";flex:1;height:1px;background:#e2ece6}
.mm-gen-email{display:grid;gap:10px}
.mm-gen-email label{display:grid;gap:4px}
.mm-gen-email .mm-gen-consent{display:flex;gap:8px;align-items:flex-start;font-size:.92rem}
.mm-gen-consent input{width:20px;height:20px;margin-top:2px;flex:none}
.mm-gen-email label.mm-gen-consent{display:flex!important;flex-direction:row;align-items:flex-start;gap:8px}
.mm-gen-email .mm-gen-consent input{width:20px!important;min-height:0!important;height:20px;padding:0;margin:2px 0 0;flex:none}

/* v3.63 หน้าแรก: ภาพพื้นหลัง + โลโก้ + 3 มิติ (layers move by --tx/--ty, -1..1) */
.mm-land-3d{position:relative;isolation:isolate;background:#e7efe9;--tx:0;--ty:0}
.mm-land-scene{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.mm-land-bg{position:absolute;inset:-6%;background:url(/landing/bg-mobile-v363.jpg) center bottom/cover no-repeat;transform:translate3d(calc(var(--tx)*-16px),calc(var(--ty)*-12px),0) scale(1.03);will-change:transform}
.mm-land-light{position:absolute;width:70vmax;height:70vmax;left:calc(50% - 35vmax + var(--tx)*14vmax);top:calc(-30vmax + var(--ty)*8vmax);border-radius:50%;background:radial-gradient(circle,rgba(255,252,235,.55),rgba(255,252,235,0) 65%);mix-blend-mode:screen}
.mm-land-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(244,248,245,.5) 0%,rgba(244,248,245,.28) 42%,rgba(244,248,245,0) 64%)}
.mm-land-leaves{position:absolute;inset:0;transform:translate3d(calc(var(--tx)*34px),calc(var(--ty)*26px),0);will-change:transform}
.mm-land-leaf{position:absolute;color:#4f8a5f;opacity:.28;filter:blur(1.5px);transform:rotate(var(--r));animation:mmLeafFloat 9s ease-in-out infinite}
.mm-land-leaf svg{display:block;width:100%;height:auto}
@keyframes mmLeafFloat{0%,100%{translate:0 0;rotate:0deg}50%{translate:6px -14px;rotate:8deg}}
.mm-land-3d .mm-land-art{perspective:700px}
.mm-land-logo{position:relative;width:clamp(96px,16dvh,150px);aspect-ratio:1;transform:translate3d(calc(var(--tx)*10px),calc(var(--ty)*8px),0) rotateY(calc(var(--tx)*16deg)) rotateX(calc(var(--ty)*-14deg));transform-style:preserve-3d;will-change:transform}
.mm-land-logo img{position:relative;width:100%;height:100%;border-radius:24%;box-shadow:calc(var(--tx)*-12px) calc(14px + var(--ty)*-8px) 30px rgba(15,60,40,.35),0 0 0 4px rgba(255,255,255,.7)}
.mm-land-halo{position:absolute;inset:-22%;border-radius:50%;background:radial-gradient(circle,rgba(255,244,200,.85),rgba(255,244,200,0) 68%);transform:translateZ(-40px);animation:mmHalo 5s ease-in-out infinite}
@keyframes mmHalo{0%,100%{opacity:.75;scale:1}50%{opacity:1;scale:1.08}}
.mm-land-3d .mm-land-text{position:relative;transform:translate3d(calc(var(--tx)*4px),calc(var(--ty)*3px),0)}
.mm-land-3d .mm-strip-label{display:inline-flex;background:rgba(255,255,255,.88);padding:4px 12px;border-radius:999px}
.mm-land-3d .mm-land-foot,.mm-land-3d .mm-land-foot a{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.45)}
.mm-land-3d-btn{position:absolute;right:12px;bottom:46px;z-index:2;border:0;border-radius:999px;padding:6px 12px;font:inherit;font-size:.8rem;background:rgba(255,255,255,.88);color:#0f5132;box-shadow:0 4px 12px rgba(0,0,0,.15);cursor:pointer}
@media (min-width:821px){
  .mm-land-bg{background-image:url(/landing/bg-desktop-v363.jpg);background-position:center 60%}
  .mm-land-3d{grid-template-columns:minmax(0,1fr);text-align:center;justify-items:center;align-content:center}
  .mm-land-3d .mm-land-art{order:-1}
  .mm-land-3d .mm-land-text{display:grid;justify-items:center;max-width:760px}
  .mm-land-3d .mm-land-kicker{justify-content:center}
  .mm-land-3d .mm-land-sub{margin-left:auto;margin-right:auto}
  .mm-land-3d .mm-land-ctas{width:100%}
  .mm-land-3d .mm-strip{width:min(760px,90vw)}
  .mm-land-veil{background:radial-gradient(60% 70% at 50% 42%,rgba(244,248,245,.62),rgba(244,248,245,0) 75%)}
}
@media (prefers-reduced-motion:reduce){.mm-land-leaf,.mm-land-halo{animation:none}}
.mm-land-3d .mm-land-general{text-shadow:0 0 8px rgba(255,255,255,.95),0 0 2px #fff}
@media (min-width:821px){.mm-land-3d .mm-land-foot,.mm-land-3d .mm-land-foot a{color:#46584e;text-shadow:0 0 6px rgba(255,255,255,.9)}}
/* v3.63: logo = the P mark on its own green tile (crop edges fade into the tile, no cut-off text) */
.mm-land-logo::before{content:"";position:absolute;inset:0;border-radius:24%;background:radial-gradient(120% 120% at 30% 15%,#1e8a55 0%,#0d5a35 45%,#083d24 100%);box-shadow:calc(var(--tx)*-12px) calc(14px + var(--ty)*-8px) 30px rgba(15,60,40,.35),0 0 0 4px rgba(255,255,255,.7)}
.mm-land-logo img{box-shadow:none;border-radius:0;transform:scale(.86);-webkit-mask-image:radial-gradient(closest-side,#000 72%,transparent 100%);mask-image:radial-gradient(closest-side,#000 72%,transparent 100%)}
.mm-land-halo{z-index:-1}
/* v3.63: phones — the text sits on the busy part of the portrait picture, so lighten that band and darken the text */
@media (max-width:820px){
  .mm-land-veil{background:linear-gradient(180deg,rgba(246,250,247,.62) 0%,rgba(246,250,247,.7) 38%,rgba(246,250,247,.55) 56%,rgba(246,250,247,.12) 72%,rgba(246,250,247,0) 80%)}
  .mm-land-3d h1{color:#0d2219;text-shadow:0 0 14px rgba(255,255,255,.9),0 0 3px rgba(255,255,255,.9)}
  .mm-land-3d .mm-land-sub{color:#26382f;font-weight:500;text-shadow:0 0 10px rgba(255,255,255,.95),0 0 2px #fff}
  .mm-land-3d .mm-land-kicker{color:#0f5132;text-shadow:0 0 8px rgba(255,255,255,.9)}
  .mm-land-3d .mm-land-general{font-weight:600}
}
.mm-land-logo img{transform:scale(1.02);-webkit-mask-image:radial-gradient(closest-side,#000 80%,transparent 100%);mask-image:radial-gradient(closest-side,#000 80%,transparent 100%)}
/* v3.63 (owner): full LOGO V.3 (with the name) — no extra tile; rounded corners hide the white outside */
.mm-land-logo::before{content:none}
.mm-land-logo img{transform:none;-webkit-mask-image:none;mask-image:none;border-radius:18%;box-shadow:calc(var(--tx)*-12px) calc(14px + var(--ty)*-8px) 30px rgba(15,60,40,.35),0 0 0 4px rgba(255,255,255,.7)}
/* v3.63: brighter portrait picture → lighter wash, dark footer links on every screen */
@media (max-width:820px){.mm-land-veil{background:linear-gradient(180deg,rgba(246,250,247,.4) 0%,rgba(246,250,247,.5) 40%,rgba(246,250,247,.32) 58%,rgba(246,250,247,0) 74%)}}
.mm-land-3d .mm-land-foot,.mm-land-3d .mm-land-foot a{color:#2f4339;text-shadow:0 0 6px rgba(255,255,255,.95),0 0 2px #fff}
/* v3.63 (owner mock-up): phones — the arch frames the page. The header floats on the picture (no white bar, no small
   logo), the whole portrait picture shows (pillars left/right visible), content sits inside the arch opening. */
@media (max-width:820px){
  html.mm-landing:has(.mm-land-3d) .topbar{position:absolute;left:0;right:0;top:0;z-index:5;background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important}
  html.mm-landing:has(.mm-land-3d) .topbar .brand{visibility:hidden}
  .mm-land.mm-land-3d{--mm-top:0px;height:100dvh;padding:calc(64px + 6dvh) 14vw 0;align-content:start;grid-template-rows:auto auto 1fr;gap:0}
  .mm-land-bg{inset:-8px -16px;background-size:cover;background-position:center top;transform:translate3d(calc(var(--tx)*-12px),calc(var(--ty)*-6px),0)}
  .mm-land-leaves{transform:translate3d(calc(var(--tx)*22px),calc(var(--ty)*16px),0)}
  .mm-land-logo{width:clamp(84px,25vw,118px)}
  .mm-land-3d .mm-land-kicker{margin-top:clamp(10px,2dvh,18px)}
  .mm-land-3d h1{font-size:clamp(1.8rem,5dvh,2.5rem);margin:clamp(4px,1dvh,10px) 0 2px}
  .mm-land-3d .mm-land-sub{font-size:clamp(.8rem,1.8dvh,.95rem);margin-top:clamp(4px,1dvh,10px)}
  .mm-land-3d .mm-land-ctas{margin-top:clamp(12px,2.6dvh,24px);gap:clamp(8px,1.4dvh,12px)}
  .mm-land-3d .mm-land-btn{min-height:clamp(42px,6dvh,52px);font-size:1rem!important}
  .mm-land-3d .mm-land-general{min-height:34px}
  .mm-land-3d .mm-strip{margin-top:clamp(6px,1.4dvh,14px)}
  .mm-land-3d .mm-land-foot{position:absolute;left:0;right:0;bottom:max(10px,env(safe-area-inset-bottom));padding:0}
  .mm-land-veil{background:radial-gradient(70% 45% at 50% 42%,rgba(246,250,247,.55),rgba(246,250,247,.2) 70%,rgba(246,250,247,0) 100%)}
  .mm-land-3d-btn{bottom:44px}
}
@media (max-width:820px){
  .mm-land-3d .mm-land-sub{margin-left:-7vw;margin-right:-7vw}
  .mm-land-3d .mm-land-foot,.mm-land-3d .mm-land-foot a{color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.6)}
}
/* v3.63 (owner): calmer portrait picture — arch opening ≈ 16–84% wide, apex ≈ 21% down, sill ≈ 81% down */
@media (max-width:820px){
  .mm-land.mm-land-3d{padding:calc(18dvh) 17vw 0}
  .mm-land-logo{width:clamp(76px,21vw,104px)}
  .mm-land-3d h1{font-size:clamp(1.7rem,4.6dvh,2.3rem)}
  .mm-land-3d .mm-land-sub{margin-left:-4vw;margin-right:-4vw}
  .mm-land-3d .mm-land-ctas{margin-top:clamp(10px,2dvh,20px)}
  .mm-land-3d .mm-land-btn{min-height:clamp(40px,5.6dvh,50px)}
  .mm-land-3d .mm-strip{margin-top:clamp(4px,1dvh,10px)}
  .mm-land-veil{background:radial-gradient(60% 40% at 50% 46%,rgba(255,255,255,.45),rgba(255,255,255,0) 100%)}
}
@media (max-width:820px){
  .mm-land.mm-land-3d{padding-top:calc(23dvh)}
  .mm-land-logo{width:clamp(70px,19vw,96px)}
  .mm-land-3d .mm-land-sub{margin-left:-10vw;margin-right:-10vw;text-wrap:balance}
}
/* v3.63 (owner): composition on phones — everything that reads sits inside the arch opening (≈14–86% wide,
   apex ≈22% down, sill ≈86% down); the teacher strip rests on the floor line; links at the very bottom. */
@media (max-width:820px){
  .mm-land.mm-land-3d{padding:24dvh 18vw 0}
  .mm-land-3d .mm-land-text{transform:none;display:flex;flex-direction:column;align-items:center}
  .mm-land-logo{width:clamp(68px,18vw,88px)}
  .mm-land-3d .mm-land-kicker{margin-top:2.2dvh;font-size:.68rem;letter-spacing:.16em}
  .mm-land-3d .mm-land-kicker::before{width:20px}
  .mm-land-3d h1{font-size:clamp(1.6rem,4.3dvh,2.15rem);margin:1dvh 0 0;line-height:1.12}
  .mm-land-3d .mm-land-sub{margin:1.4dvh 0 0;font-size:clamp(.78rem,1.75dvh,.9rem);line-height:1.5;text-wrap:balance}
  .mm-land-3d .mm-land-ctas{width:100%;margin-top:2.6dvh;gap:1.3dvh}
  .mm-land-3d .mm-land-btn{min-height:clamp(40px,5.6dvh,48px);border-radius:14px!important}
  .mm-land-3d .mm-land-general{margin-top:.4dvh;min-height:30px;font-size:.92rem}
  .mm-land-3d .mm-strip{position:absolute;left:0;right:0;bottom:calc(4.5dvh + 16px);margin:0}
  .mm-land-3d .mm-strip-label{font-size:.72rem;margin-bottom:6px}
  .mm-land-3d .mm-strip-chip{padding:3px 12px 3px 3px}
  .mm-land-3d .mm-strip-chip img,.mm-land-3d .mm-strip-chip .av{width:34px;height:34px}
  .mm-land-3d .mm-land-foot{bottom:max(8px,env(safe-area-inset-bottom));font-size:.72rem}
  .mm-land-veil{background:radial-gradient(48% 36% at 50% 45%,rgba(255,255,255,.4),rgba(255,255,255,0) 100%)}
}
@media (max-width:820px){
  .mm-land-3d .mm-land-text{position:static}
  .mm-land-3d .mm-land-sub{margin-left:-5vw;margin-right:-5vw}
}
@media (max-width:820px){
  .mm-land.mm-land-3d{padding-top:25dvh}
  .mm-land-3d .mm-land-kicker{margin-top:1.8dvh}
  .mm-land-3d .mm-land-sub{width:calc(100% + 10vw);margin:1.2dvh -5vw 0}
  .mm-land-3d .mm-land-ctas{margin-top:2.2dvh;gap:1.1dvh}
  .mm-land-3d .mm-strip{bottom:14.2dvh;left:14vw;right:14vw}
  .mm-land-3d .mm-strip-label{margin-bottom:4px}
}
/* v3.63 (owner): keep the look of the 390×844 sample on every phone. The picture is anchored to the bottom and scales
   with the screen width, so the arch/sill sit at fixed vw distances from the bottom; text, logo and buttons size by
   width too (min() with dvh keeps short screens — Safari with its bars — from overflowing). */
@media (max-width:820px){
  .mm-land-bg{background-position:center bottom}
  .mm-land.mm-land-3d{padding:76px 18vw 52vw;align-content:end;grid-template-rows:auto auto}
  .mm-land-logo{width:min(19vw,10dvh)}
  .mm-land-3d .mm-land-kicker{margin-top:min(4vw,2dvh);font-size:min(3vw,1.6dvh)}
  .mm-land-3d h1{font-size:min(9.4vw,5dvh);margin:min(2vw,1dvh) 0 0}
  .mm-land-3d .mm-land-sub{font-size:min(3.8vw,2dvh);margin-top:min(2.6vw,1.3dvh)}
  .mm-land-3d .mm-land-ctas{margin-top:min(4.8vw,2.4dvh);gap:min(2.6vw,1.3dvh)}
  .mm-land-3d .mm-land-btn{min-height:min(12.2vw,6.2dvh);font-size:min(4.3vw,2.2dvh)!important}
  .mm-land-3d .mm-land-general{font-size:min(4vw,2dvh);min-height:min(8vw,4dvh)}
  .mm-land-3d .mm-strip{bottom:30.5vw}
}
/* v3.63.1 (owner): desktop too — no white bar; the header (TH/EN, heart) floats on the picture, no small logo.
   The page fills the whole window and the logo/headline shrink on short windows so nothing is cut off. */
@media (min-width:821px){
  html.mm-landing:has(.mm-land-3d) .topbar{position:absolute;left:0;right:0;top:0;z-index:5;background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important}
  html.mm-landing:has(.mm-land-3d) .topbar .brand{visibility:hidden}
  .mm-land.mm-land-3d{--mm-top:0px;height:100dvh;padding-top:max(64px,8dvh);padding-bottom:max(36px,5dvh)}
  .mm-land-logo{width:min(150px,15dvh)}
  .mm-land-3d .mm-land-kicker{margin-top:min(22px,2.2dvh)}
  .mm-land-3d h1{font-size:min(5.2rem,7.6dvh);margin:min(14px,1.4dvh) 0 4px}
  .mm-land-3d .mm-land-sub{margin-top:min(16px,1.6dvh)}
  .mm-land-3d .mm-land-ctas{margin-top:min(28px,2.8dvh)}
  .mm-land-3d .mm-land-btn{min-height:min(62px,7dvh)}
  .mm-land-3d .mm-strip{margin-top:min(26px,2.4dvh)}
  .mm-land-3d .mm-land-foot{position:absolute;left:0;right:0;bottom:8px;padding:0}
}
@media (min-width:821px){.mm-land.mm-land-3d{gap:0;grid-template-rows:auto auto;align-content:center}}
/* v3.63.1 (owner): role picker — 4 cards fit one phone screen without scrolling */
@media (max-width:820px){
  .mm-roles{min-height:0;padding:12px 16px 14px}
  .mm-roles-back{top:10px;width:40px;height:40px;font-size:1.3rem}
  .mm-roles h1{margin-top:6px;padding:0 44px;font-size:clamp(1.3rem,3.4dvh,1.75rem)}
  .mm-roles-lead{font-size:.92rem;margin-top:2px}
  .mm-roles-cards{gap:min(10px,1.3dvh);margin-top:min(16px,2dvh)}
  .mm-role-card{padding:min(10px,1.2dvh) 34px min(10px,1.2dvh) 10px;border-radius:18px;gap:12px}
  .mm-role-pic{width:min(64px,8.5dvh);height:min(64px,8.5dvh);font-size:min(34px,4.6dvh);border-radius:14px}
  .mm-role-info{gap:2px}
  .mm-role-info b{font-size:min(1.15rem,2.5dvh)}
  .mm-role-info small{font-size:min(.84rem,1.9dvh);line-height:1.35}
  .mm-roles-have{margin-top:min(14px,1.8dvh);font-size:.92rem}
}
/* v3.63.1 ผู้ใช้ทั่วไป: small account card on home + settings page */
.mm-gen-acc{display:flex!important;align-items:center;gap:12px;padding:12px 14px;text-decoration:none!important;color:#13261d!important}
.mm-gen-acc-av{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#e3efe8;color:#0f5132;font-weight:700;font-size:1.1rem;flex:none}
.mm-gen-acc-who{flex:1;display:grid;gap:1px;min-width:0}.mm-gen-acc-who b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mm-gen-acc-who small{color:#5b6a62}
.mm-gen-acc-go{color:#0f5132;font-weight:600;font-size:.92rem;white-space:nowrap}
.mm-set-head{display:flex;align-items:center;gap:10px}.mm-set-head h1{margin:0;font-size:1.4rem}
.mm-set-back{width:40px;height:40px;border-radius:50%;border:1.5px solid #dce8e1;background:#fff;font-size:1.3rem;color:#0f5132;cursor:pointer}
.mm-set-card{display:grid;gap:4px;padding:12px 14px}
.mm-set-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid #eef3f0}
.mm-set-card .eyebrow+.mm-set-row,.mm-set-card>.mm-set-row:first-child{border-top:0}
.mm-set-ic{font-size:1.3rem;width:30px;text-align:center;flex:none}
.mm-set-txt{flex:1;display:grid;gap:1px;min-width:0}.mm-set-txt small{color:#5b6a62;overflow-wrap:anywhere}
.mm-set-ok{margin:0;color:#0f5132;font-size:.9rem}
.mm-set-row .btn.danger{color:#b4232a!important;border-color:#f1c6c8!important}
.mm-set-act{flex:none;display:flex;align-items:center}.mm-set-act>*{order:0;margin:0}
.mm-set-row .btn.danger{background:#fff!important;color:#b4232a!important;border:1.5px solid #f1c6c8!important}


/* v3.64 ที่ละหมาด */
.mm-prayer-links2{margin-top:12px}.mm-prayer-links2 .mm-prayer-more{margin-top:0;padding:11px 8px;font-size:.92rem}
.mm-places-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.mm-places-head h1{margin:0;font-size:clamp(1.25rem,4.6vw,1.7rem)}
.mm-places-sub{margin:4px 0 10px;font-size:.9rem}
.mm-place-filters{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}
.mm-place-filters button{border:1.5px solid #dce8e1;background:#fff;border-radius:999px;padding:6px 12px;font:inherit;font-size:.88rem;cursor:pointer;color:#13261d}
.mm-place-filters button.on{background:#0f5132;border-color:#0f5132;color:#fff}
.mm-place-list{display:grid;gap:10px;margin-top:10px}
.mm-place-card{display:flex;align-items:center;gap:12px;padding:12px;text-decoration:none!important;color:#13261d!important}
.mm-place-ic{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-size:26px;background:#eef6f1;flex:none}.mm-place-ic.big{width:60px;height:60px;font-size:34px}
.mm-place-card-body{flex:1;min-width:0}.mm-place-card-body h3{margin:0;font-size:1.02rem}.mm-place-card-body p{margin:2px 0 0;font-size:.86rem}
.mm-place-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.mm-place-chips span{font-size:.76rem;background:#f3f7f4;border:1px solid #e2ece6;border-radius:999px;padding:2px 8px}
.mm-place-pin span{display:grid;place-items:center;width:36px;height:36px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#fff;border:2px solid #0f5132;box-shadow:0 3px 8px rgba(0,0,0,.25);font-size:18px}
.mm-place-pin span::first-letter{display:inline-block}
.mm-place-pin{background:none;border:0}
.mm-place-pin span>*{transform:rotate(45deg)}
.mm-place-types{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.mm-place-types button{display:grid;justify-items:center;gap:2px;padding:10px 6px;border-radius:14px;border:1.5px solid #dce8e1;background:#fff;font:inherit;font-size:.86rem;cursor:pointer;color:#13261d}
.mm-place-types button span{font-size:24px}.mm-place-types button.on{border-color:#0f5132;background:#eef6f1;font-weight:700}
.mm-place-q{display:grid;gap:6px;margin:10px 0}.mm-place-q>b{font-size:.94rem}
.mm-place-opts{display:flex;flex-wrap:wrap;gap:6px}
.mm-place-opts button{border:1.5px solid #dce8e1;background:#fff;border-radius:12px;padding:7px 12px;font:inherit;font-size:.88rem;cursor:pointer;color:#13261d}
.mm-place-opts button.on{border-color:#0f5132;background:#0f5132;color:#fff}
.mm-place-women{border:1px solid #f0d9e4;background:#fff8fb;border-radius:14px;padding:6px 12px;margin:8px 0}
.mm-place-head{display:flex;align-items:center;gap:12px}.mm-place-head h1{margin:2px 0 0;font-size:1.3rem}
.mm-place-facts{display:grid;gap:0;padding:6px 14px}
.mm-place-fact{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-top:1px solid #eef3f0}.mm-place-fact:first-child{border-top:0}
.mm-place-fact span{color:#5b6a62}.mm-place-fact.unknown b{color:#9aa8a0;font-weight:500}
.mm-place-facts-women{margin-top:8px;padding-top:8px;border-top:1px solid #eef3f0}
.mm-place-sheet{max-height:86vh;overflow:auto}
.mm-place-add .mm-school-label{display:block;margin:4px 0}
/* v3.64: upright emoji pins (circle + pointer); prayer-card button pair stays on one line */
.mm-place-pin span{transform:none;border-radius:50%;position:relative;width:34px;height:34px;font-size:18px;line-height:1}
.mm-place-pin span::after{content:"";position:absolute;left:50%;bottom:-8px;transform:translateX(-50%);border:6px solid transparent;border-top:8px solid #0f5132;border-bottom:0}
.mm-prayer-links2{flex-wrap:nowrap}.mm-prayer-links2 .mm-prayer-more{white-space:nowrap;font-size:clamp(.74rem,3.3vw,.92rem);padding:11px 6px;min-width:0;overflow:hidden;text-overflow:ellipsis}

/* v3.64 round 2: extras, reward, cleanliness votes, photo later */
.mm-place-extra{border:1px solid #e2ece6;border-radius:14px;padding:8px 12px;margin:10px 0}
.mm-place-extra summary{cursor:pointer;font-weight:700;color:#0f5132;padding:4px 0}
.mm-place-note{display:grid;gap:6px;margin:10px 0}
.mm-place-reward{display:flex;gap:10px;align-items:flex-start;background:#fff8e6;border:1px solid #f0dfb4;border-radius:14px;padding:10px 12px;margin:6px 0 10px}
.mm-place-reward>span{font-size:26px}.mm-place-reward>div{flex:1;display:grid;gap:3px}.mm-place-reward small{color:#6b5a2e}
.mm-place-reward-bar{display:block;height:8px;border-radius:99px;background:#f0e3c2;overflow:hidden;margin-top:4px}.mm-place-reward-bar i{display:block;height:100%;background:#c9a14a;border-radius:99px}
.mm-place-reward-link{display:inline-block;margin:0 0 6px;color:#8a6a1c!important;font-weight:700;font-size:.9rem;text-decoration:none!important}
.mm-place-where{margin:4px 0 2px;font-weight:600;color:#13261d}
.mm-place-addphoto{display:flex;justify-content:center}
.mm-place-clean{display:grid;gap:8px;padding:12px 14px}
.mm-place-clean-head{display:flex;justify-content:space-between;align-items:center;gap:8px}
.mm-place-clean-opts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.mm-place-clean-opts button,.mm-place-clean-opts a{display:grid;justify-items:center;gap:2px;padding:8px 4px;border-radius:14px;border:1.5px solid #dce8e1;background:#fff;font:inherit;font-size:.86rem;cursor:pointer;color:#13261d!important;text-decoration:none!important}
.mm-place-clean-opts span{font-size:22px}.mm-place-clean-opts em{font-style:normal;font-weight:700;color:#0f5132}
.mm-place-clean-opts .on{border-color:#0f5132;background:#eef6f1}

/* v3.64 round 3: compact card, photo thumbs, ✓/✕, stars */
.mm-place-card{align-items:flex-start}
.mm-place-ic.photo{object-fit:cover;padding:0;background:#eef6f1}
.mm-place-card-body h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mm-place-card-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin-top:6px}
.mm-place-card-foot .mm-place-chips{margin:0;flex:1;min-width:0}
.mm-place-chips span{white-space:nowrap}
.mm-place-by{flex:none;max-width:40%;color:#7a8a82;font-size:.74rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mm-place-fact b.mm-yes{color:#1c8a4f;font-size:1.15rem}.mm-place-fact b.mm-no{color:#c0392b;font-size:1.05rem}
.mm-place-stars{display:flex;gap:6px;justify-content:center}
.mm-place-stars button,.mm-place-stars a{font-size:2rem;line-height:1;background:none;border:0;color:#d5ddd8;cursor:pointer;padding:2px 4px;text-decoration:none!important}
.mm-place-stars .on{color:#f2b33d}.mm-place-stars .on.mine{color:#e39b12}

/* v3.64.2: tidy place filters, still detail map + full-screen map, reward rule */
.mm-place-bar{display:flex;gap:8px;align-items:center;margin-top:6px}
.mm-place-bar .mm-school-search{flex:1;margin:0}
.mm-place-viewbtn{flex:none;height:46px;padding:0 14px;border-radius:14px;border:1.5px solid #dce8e1;background:#fff;font:inherit;font-weight:700;font-size:.9rem;color:#0f5132;cursor:pointer;white-space:nowrap}
.mm-place-filters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;margin:10px 0 6px;padding:0 0 2px}
.mm-place-filters::-webkit-scrollbar{display:none}
.mm-place-filters button{flex:none;white-space:nowrap;padding:7px 12px;font-size:.86rem}
.mm-place-filters button.near{border-color:#0f5132;color:#0f5132;font-weight:700}
.mm-place-filters button.near.on{background:#0f5132;color:#fff}
.mm-school-map-wrap.still{position:relative}
.mm-map-peek{position:absolute;inset:0;z-index:500;background:transparent;border:0;cursor:pointer;display:flex;align-items:flex-end;justify-content:center;padding:10px}
.mm-map-peek span{background:rgba(255,255,255,.95);color:#0f5132;font-weight:700;font-size:.82rem;border-radius:999px;padding:6px 12px;box-shadow:0 2px 8px rgba(0,0,0,.18)}
.mm-map-full{position:fixed;inset:0;z-index:3000;background:rgba(10,30,20,.55);display:flex;align-items:stretch;justify-content:center}
.mm-map-full-box{background:#fff;width:100%;max-width:900px;display:flex;flex-direction:column;gap:8px;padding:10px 12px max(12px,env(safe-area-inset-bottom))}
.mm-map-full-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.mm-map-full-head b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mm-map-full-x{width:40px;height:40px;border-radius:50%;border:1.5px solid #dce8e1;background:#fff;font-size:1.1rem;cursor:pointer;flex:none}
html.mm-map-full-on .mm-bottom-nav{display:none}
.mm-place-reward small{display:block}
.mm-place-reward-now{font-weight:700;color:#7a5a12!important}
.mm-place-reward.admin{display:block;margin:6px 0 10px;font-size:.9rem}
.mm-place-answered{margin:6px 0 0;font-size:.88rem;color:#8a6a1c;background:#fff8e6;border-radius:10px;padding:7px 10px}
.mm-place-answered.ok{color:#0f5132;background:#eef6f1}

/* v3.64.2 prayer place written reviews */
.mm-place-reviews { display: grid; gap: 10px; }
.mm-place-reviews > .btn { justify-self: start; }
.mm-place-review-form { display: grid; gap: 6px; }
.mm-place-review-form textarea { width: 100%; font: inherit; }
.mm-place-review-meta { display: flex; justify-content: space-between; gap: 8px; }
.mm-place-review-list { display: grid; gap: 0; }
.mm-place-review { position: relative; padding: 10px 0; border-top: 1px solid var(--line, #e7e2d8); }
.mm-place-review:first-child { border-top: 0; padding-top: 2px; }
.mm-place-review.mine { background: rgba(15, 118, 110, .05); margin: 0 -10px; padding: 10px; border-radius: 10px; border-top: 0; }
.mm-place-review-top { display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
.mm-place-review-top b { font-size: .95rem; }
.mm-place-review-top small { margin-left: auto; }
.mm-place-review-stars { color: #e0a400; font-size: .82rem; letter-spacing: 1px; }
.mm-place-review p { margin: 4px 0 0; line-height: 1.55; white-space: pre-wrap; overflow-wrap: anywhere; }
.mm-place-review-edit { background: none; border: 0; padding: 4px 0 0; color: var(--teal, #0f766e); font: inherit; font-size: .85rem; cursor: pointer; }
.mm-danger-text { color: #b42318 !important; }

/* v3.64.3 places: nearest-first note, "ดูเพิ่ม", help-fill card */
.mm-place-order { margin: 2px 0 8px; }
.mm-place-more { margin-top: 10px; }
.mm-place-help { display: flex; align-items: center; gap: 12px; justify-content: space-between; background: #fff8e6; border-color: #f3dfa6; }
.mm-place-help > div { display: grid; gap: 2px; min-width: 0; }
.mm-place-help .btn { flex: none; }

/* v3.64.4 places: type tabs (ทั้งหมด / มัสยิด / มุศ็อลลา / ห้องละหมาด) */
.mm-place-types-tab { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; margin: 8px 0 6px; }
.mm-place-types-tab::-webkit-scrollbar { display: none; }
.mm-place-types-tab button { flex: none; border: 1px solid var(--line, #e7e2d8); background: #fff; color: inherit; border-radius: 10px; padding: 7px 12px; font: inherit; font-size: .9rem; font-weight: 600; cursor: pointer; white-space: nowrap; }
.mm-place-types-tab button.on { background: var(--teal, #0f766e); border-color: var(--teal, #0f766e); color: #fff; }

/* v3.64.5 admin: search a pin to delete it */
.mm-admin-place-delete input[type=search] { width: 100%; margin-bottom: 8px; }
.mm-admin-place-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.mm-admin-place-row > div:first-child { display: grid; gap: 2px; min-width: 0; }
.mm-danger-btn { background: #b42318 !important; border-color: #b42318 !important; color: #fff !important; }
.mm-place-fact-note b { text-align: right; max-width: 62%; overflow-wrap: anywhere; font-weight: 600; }

/* v3.64.6 places: duplicate check + edit rule */
.mm-place-dups { display: grid; gap: 10px; border: 1px solid #f3c7a6; background: #fff6ee; }
.mm-place-dup { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding-top: 8px; border-top: 1px solid #f3dcc8; }
.mm-place-dup > div { display: grid; gap: 2px; min-width: 0; }
.mm-place-dups > .btn { justify-self: start; }
.mm-place-rule { font-size: .88rem; }
.mm-admin-dup { display: grid; gap: 6px; }

/* v3.64.7: never wider than the phone (nothing pans sideways); no double-tap zoom */
html, body { overflow-x: clip; max-width: 100%; }
html { touch-action: manipulation; -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }

/* v3.64.8: a long pin name (kept on one line) must not widen the whole list past the phone */
.mm-place-list { grid-template-columns: minmax(0, 1fr); }
.mm-place-list > *, .mm-place-card { min-width: 0; max-width: 100%; }
.mm-admin-place-row > div:first-child, .mm-place-dup > div { overflow: hidden; }

/* v3.64.9: ที่ละหมาด · เวลาละหมาด · กิบลัต tab row (prayer page + /places) */
.mm-ppage-tabs.three { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px; }
.mm-ppage-tabs.three > * { display: flex; align-items: center; justify-content: center; text-align: center; border-radius: 999px; padding: 9px 4px; font-weight: 600; font-size: .88rem; color: #3e5148; text-decoration: none !important; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mm-ppage-tabs.three > .on { background: #14634a; color: #fff; }
.mm-places > .mm-ppage-tabs { margin: 0 0 12px; }

/* v3.65.1: tab row under the header for การสอน (teacher) / ครู (student) pages — phones only (desktop has its own nav) */
.mm-role-tabs-wrap { display: none; }
@media (max-width: 767px) {
  .mm-role-tabs-wrap { display: block; padding-top: 12px; }
  .mm-role-tabs { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; background: #eef4f0; border-radius: 999px; padding: 4px; }
  .mm-role-tabs::-webkit-scrollbar { display: none; }
  .mm-role-tabs a { flex: none; border-radius: 999px; padding: 8px 12px; font-weight: 600; font-size: .86rem; color: #3e5148; text-decoration: none !important; white-space: nowrap; }
  .mm-role-tabs a.on { background: #14634a; color: #fff; }
}

/* v3.67: tab row = plain text + underline (all fit); hides on computers as before */
@media (max-width: 767px) {
  .mm-role-tabs-wrap { padding-top: 4px; }
  .mm-role-tabs { background: none; border-radius: 0; padding: 0; gap: 0; justify-content: space-between; border-bottom: 1px solid #e3ece6; overflow-x: auto; }
  .mm-role-tabs a { padding: 10px 4px 9px; border-radius: 0; font-size: .92rem; color: #6b7b73; position: relative; }
  .mm-role-tabs a.on { background: none; color: #13261d; }
  .mm-role-tabs a.on::after { content: ""; position: absolute; left: 20%; right: 20%; bottom: -1px; height: 3px; border-radius: 3px; background: #14634a; }
}
/* v3.67: หาครู feed (phones) */
.mm-sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.mm-feed-page { padding: 0 0 110px; }
.mm-feed-top { padding: 8px 14px 0; }
.mm-feed-search { display: flex; gap: 8px; }
.mm-feed-box { flex: 1; min-width: 0; display: flex; align-items: center; gap: 8px; background: #eef3ef; border-radius: 999px; padding: 0 14px; }
.mm-feed-box input { flex: 1; min-width: 0; border: 0; background: transparent; font: inherit; font-size: 16px; padding: 10px 0; outline: none; color: #13261d; }
.mm-feed-filter { position: relative; flex: none; border: 0; background: #eef3ef; border-radius: 999px; padding: 0 14px; font: inherit; font-weight: 600; color: #13261d; cursor: pointer; }
.mm-feed-filter b { position: absolute; top: -4px; right: -2px; min-width: 18px; height: 18px; border-radius: 999px; background: #e0533d; color: #fff; font-size: .7rem; display: grid; place-items: center; }
.mm-feed-subjects { position: relative; margin: 6px -14px 0; }
.mm-feed-subjects::after { content: "›"; position: absolute; right: 0; top: 0; bottom: 0; width: 44px; display: grid; place-items: center end; padding-right: 10px; color: #6b7b73; font-size: 1.3rem; pointer-events: none; background: linear-gradient(90deg, rgba(246,248,246,0), #f6f8f6 60%); }
.mm-feed-subjects-row { display: flex; gap: 18px; overflow-x: auto; scrollbar-width: none; padding: 6px 40px 8px 14px; }
.mm-feed-subjects-row::-webkit-scrollbar { display: none; }
.mm-feed-subjects-row button { flex: none; border: 0; background: none; padding: 2px 0; font: inherit; font-size: .93rem; color: #6b7b73; white-space: nowrap; cursor: pointer; }
.mm-feed-subjects-row button.on { color: #13261d; font-weight: 700; }
.mm-feed-count { display: flex; justify-content: space-between; align-items: center; gap: 8px; padding: 2px 14px 6px; font-size: .82rem; color: #6b7b73; }
.mm-feed-count button { border: 0; background: none; color: #14634a; font: inherit; font-weight: 600; flex: none; }
.mm-feed { columns: 2; column-gap: 8px; padding: 0 8px; }
.mm-feed-card { display: block; break-inside: avoid; margin-bottom: 8px; background: #fff; border-radius: 14px; overflow: hidden; box-shadow: 0 1px 3px rgba(0,0,0,.07); color: #13261d !important; text-decoration: none !important; }
.mm-feed-ph { position: relative; display: grid; place-items: center; }
.mm-feed-ph img { width: 100%; height: 100%; object-fit: cover; display: block; }
.mm-feed-init { font-size: 3rem; font-weight: 700; color: rgba(255,255,255,.92); }
.mm-feed-vid { position: absolute; top: 8px; right: 8px; width: 28px; height: 28px; border-radius: 999px; background: rgba(0,0,0,.4); color: #fff; display: grid; place-items: center; font-size: .78rem; }
.mm-feed-tag { position: absolute; left: 8px; bottom: 8px; max-width: calc(100% - 16px); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; background: rgba(255,255,255,.93); color: #0f5132; font-size: .72rem; font-weight: 700; border-radius: 999px; padding: 2px 8px; }
.mm-feed-body { padding: 8px 10px 10px; }
.mm-feed-body h3 { margin: 0; font-size: .95rem; line-height: 1.35; overflow-wrap: anywhere; }
.mm-feed-ok { display: inline-block; margin-left: 4px; background: #e3f3ea; color: #0f5132; font-size: .66rem; font-weight: 700; border-radius: 999px; padding: 1px 6px; vertical-align: 2px; white-space: nowrap; }
.mm-feed-body p { margin: 3px 0 0; font-size: .8rem; color: #6b7b73; line-height: 1.4; }
.mm-feed-foot { display: flex; align-items: center; gap: 6px; margin-top: 6px; font-size: .8rem; }
.mm-feed-price { font-weight: 700; color: #0f5132; }
.mm-feed-price small { font-weight: 400; color: #6b7b73; margin-left: 2px; }
.mm-feed-ask { color: #6b7b73; }
.mm-feed-star { color: #b27b00; }
.mm-feed-heart { margin-left: auto; border: 0; background: none; font-size: 1.15rem; line-height: 1; color: #9aa69f; padding: 2px; cursor: pointer; }
.mm-feed-heart.on { color: #d1435b; }
.mm-feed-more { text-align: center; padding: 14px; color: #6b7b73; font-size: .85rem; }
.mm-feed-empty { margin: 10px 14px; background: #fff; border-radius: 14px; padding: 18px; text-align: center; }
.mm-feed-dim { position: fixed; inset: 0; z-index: 9995; background: rgba(10,30,20,.45); display: flex; align-items: flex-end; }
.mm-feed-sheet { width: 100%; max-height: 86vh; overflow-y: auto; background: #fff; border-radius: 22px 22px 0 0; padding: 12px 16px calc(18px + env(safe-area-inset-bottom, 0px)); animation: mmIosIn .25s ease-out; }
.mm-feed-grab { width: 40px; height: 5px; border-radius: 9px; background: #d6e0da; margin: 0 auto 10px; }
.mm-feed-sheet-head { display: flex; justify-content: space-between; align-items: center; font-size: 1.1rem; }
.mm-feed-sheet-head button { border: 0; background: none; color: #14634a; font: inherit; font-size: .88rem; font-weight: 600; }
.mm-feed-sheet h4 { margin: 14px 0 6px; font-size: .86rem; color: #6b7b73; }
.mm-feed-pills { display: flex; flex-wrap: wrap; gap: 6px; }
.mm-feed-pills button { border: 1.5px solid #dce8e1; background: #fff; border-radius: 999px; padding: 6px 12px; font: inherit; font-size: .88rem; color: #13261d; cursor: pointer; }
.mm-feed-pills button.on { background: #0f5132; border-color: #0f5132; color: #fff; }
.mm-feed-go { margin-top: 16px; }
@keyframes mmIosIn { from { transform: translateY(24px); opacity: 0; } }

/* v3.67: หาครู feed on computers — wider page, 3–4 columns, heading, centred filter window */
.mm-feed-h1 { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
@media (min-width: 768px) {
  .mm-feed-page { max-width: 1180px; margin: 0 auto; padding: 18px 24px 60px; }
  .mm-feed-h1 { position: static; width: auto; height: auto; clip: auto; margin: 0 0 4px; font-size: 1.9rem; }
  .mm-feed-top { padding: 8px 0 0; }
  .mm-feed-search { max-width: 640px; }
  .mm-feed-subjects { margin: 8px 0 0; }
  .mm-feed-subjects::after { display: none; }
  .mm-feed-subjects-row { padding: 6px 0 8px; flex-wrap: wrap; }
  .mm-feed-count { padding: 4px 0 10px; font-size: .9rem; }
  .mm-feed { columns: 3; column-gap: 16px; padding: 0; }
  .mm-feed-card { margin-bottom: 16px; transition: transform .15s, box-shadow .15s; }
  .mm-feed-card:hover { transform: translateY(-2px); box-shadow: 0 8px 22px rgba(10,40,25,.12); }
  .mm-feed-body h3 { font-size: 1.02rem; }
  .mm-feed-body p, .mm-feed-foot { font-size: .86rem; }
  .mm-feed-dim { align-items: center; justify-content: center; }
  .mm-feed-sheet { width: min(560px, 92vw); max-height: 82vh; border-radius: 22px; padding: 18px 22px 22px; }
  .mm-feed-grab { display: none; }
}
@media (min-width: 1100px) { .mm-feed { columns: 4; } }

/* v3.67.3: the teacher photo stays inside its frame (tall photos used to spill over the name / subjects / price);
   the frame keeps its shape on every screen width (aspect-ratio instead of a fixed height) */
.mm-feed-ph { overflow: hidden; width: 100%; }
.mm-feed-ph img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 25%; }
.mm-feed-vid, .mm-feed-tag { z-index: 1; }
.mm-feed-body { position: relative; background: #fff; }
@media (min-width: 768px) { .mm-feed-subjects-row { row-gap: 6px; } }
/* v3.69.0 top-up cards (fragment-v369-topup.js) */
.mm-topup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
@media (min-width:720px){.mm-topup-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.mm-topup-card{position:relative;display:flex;flex-direction:column;gap:6px;padding:14px 12px 12px;border-radius:18px;background:var(--tp-bg,#eef6f1);border:2px solid transparent;box-shadow:0 6px 16px rgba(24,68,49,.08);overflow:hidden}
.mm-topup-card.best{border-color:#f5b301;box-shadow:0 10px 24px rgba(245,179,1,.28)}
.mm-topup-best{position:absolute;top:0;right:0;background:#f5b301;color:#3a2a00;font-size:.72rem;font-weight:700;padding:3px 10px;border-bottom-left-radius:12px}
.mm-topup-head{display:flex;align-items:center;gap:8px}
.mm-topup-icon{width:34px;height:34px;border-radius:11px;background:#fff;display:grid;place-items:center;font-size:1.15rem;box-shadow:0 2px 6px rgba(0,0,0,.06)}
.mm-topup-name{font-size:1rem;color:var(--tp-ink,#0f5b3b)}
.mm-topup-credits{display:flex;align-items:baseline;gap:5px;margin-top:2px}
.mm-topup-credits strong{font-size:1.9rem;line-height:1;font-weight:800;color:var(--tp-ink,#0f5b3b)}
.mm-topup-credits span{font-size:.82rem;color:#4b6258}
.mm-topup-bonus{align-self:flex-start;font-size:.74rem;font-weight:700;color:#8a5a00;background:#fff4cf;border-radius:999px;padding:3px 9px}
.mm-topup-bonus.none{color:#5b6b63;background:rgba(255,255,255,.7);font-weight:600}
.mm-topup-buy{margin-top:4px;border:0;border-radius:12px;padding:10px 6px;background:var(--tp-ink,#0f5b3b);color:#fff;font-weight:700;font-size:.95rem;cursor:pointer}
.mm-topup-buy:disabled{opacity:.55;cursor:default}
/* v3.70.0: change a prayer place photo */
.mm-place-photo-tools{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;justify-content:center;margin-top:-4px}
.mm-admin-photo-swap{display:flex;gap:10px;align-items:center;margin:6px 0}
.mm-admin-photo-swap>div{display:grid;gap:4px;justify-items:center;flex:1;max-width:160px}
.mm-admin-photo-swap>span{font-size:20px;color:#6b7a72}

/* v3.73.0 monthly supporter plans */
.mm-plans{display:grid;gap:12px;margin:0 0 14px}
.mm-plan-now{display:flex;align-items:center;gap:10px;background:#e9f5ee;border:1px solid #cfe7da;border-radius:16px;padding:12px 14px}
.mm-plan-now b{display:block}.mm-plan-now small{color:#6b7b73}.mm-plan-now .btn{margin-left:auto;flex:none}
.mm-plan-now-icon{font-size:1.4rem;white-space:nowrap}
.mm-plan-done{margin:0;background:#e9f5ee;color:#0f5132;border-radius:12px;padding:10px 12px;font-weight:600}
.mm-plan-card{position:relative;background:#fff;border:1.5px solid #e3ece6;border-radius:18px;padding:14px}
.mm-plan-card.hot{border-color:#14634a}.mm-plan-card.mine{background:#f6fbf8}
.mm-plan-rib{position:absolute;top:-10px;right:14px;background:#14634a;color:#fff;font-size:.72rem;font-weight:700;border-radius:999px;padding:2px 10px}
.mm-plan-top{display:flex;align-items:center;gap:10px}
.mm-plan-top h3{margin:0;font-size:1.02rem}.mm-plan-top small{color:#6b7b73}
.mm-plan-ico{flex:none;width:44px;height:44px;border-radius:12px;background:#f1f6f3;display:grid;place-items:center;font-size:1.5rem;line-height:1;white-space:nowrap;overflow:hidden}
.mm-plan-ico.two{font-size:.95rem;letter-spacing:-1px}
.mm-plan-price{margin-left:auto;text-align:right;flex:none}.mm-plan-price b{font-size:1.25rem;color:#0f5132}.mm-plan-price small{display:block;color:#6b7b73;font-size:.72rem}
.mm-plan-card ul{margin:10px 0;padding:0;list-style:none;display:grid;gap:4px;font-size:.9rem}
.mm-plan-card li:before{content:"✓ ";color:#14634a;font-weight:700}
.mm-plan-note{margin:0 0 8px;font-size:.82rem;color:#6b7b73}
.mm-plan-ask{display:flex;flex-wrap:wrap;gap:8px;align-items:center;background:#f6f8f6;border-radius:14px;padding:10px}
.mm-plan-ask p{margin:0;width:100%;font-size:.88rem}
.mm-plan-foot{margin:0;font-size:.8rem;color:#6b7b73;text-align:center;line-height:1.6}
.mm-plan-hide{display:flex;gap:8px;align-items:center;font-size:.86rem;justify-content:center}
.mm-plan-badge{display:inline-block;margin-left:4px;font-size:.72rem;background:#e3f3ea;color:#0f5132;border-radius:999px;padding:1px 7px;font-weight:700;vertical-align:middle;line-height:1.5}
.mm-plan-me{margin-left:6px;text-decoration:none}
.mm-supporters-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.mm-supporters-list li{display:flex;gap:10px;align-items:center;border-bottom:1px solid #eef2ef;padding-bottom:8px}
.mm-supporters-list li:last-child{border:0}
.mm-supporters-list b{display:block}.mm-supporters-list small{color:#6b7b73}
.mm-supporters-ico{width:40px;text-align:center;font-size:1.2rem;white-space:nowrap}
.mm-supporters-hidden{margin:10px 0 0;color:#6b7b73;text-align:center}
.mm-supporters .btn.full{margin-top:14px}
.mm-learn-limit{display:grid;gap:8px;text-align:center}
.mm-learn-limit .mm-learn-btn{justify-self:center}
.mm-learn-dots{display:flex;justify-content:center;gap:6px}.mm-learn-dots span{width:26px;height:8px;border-radius:9px;background:var(--lg)}
.mm-learn-upsell{display:flex;gap:10px;align-items:center;text-align:left;background:#fff8e6;border:1px solid #f1dca0;border-radius:14px;padding:10px 12px;color:var(--ink);text-decoration:none}
.mm-learn-upsell b{display:block}.mm-learn-upsell small{color:var(--mute)}.mm-learn-upsell .mm-school-go{margin-left:auto}
.mm-learn-upsell-ico{font-size:1.3rem;white-space:nowrap}
.mm-learn-limit-or{margin:0;font-size:.8rem;color:var(--mute)}
.mm-admin-plans-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin:8px 0}
.mm-admin-plans-grid>div{display:grid;gap:2px;background:#f6f8f6;border-radius:12px;padding:10px}
.mm-admin-plans-grid b{font-size:1.3rem}.mm-admin-plans-grid small{color:#6b7b73;font-size:.76rem}
#mm-bottom-me-title a.mm-plan-me{display:inline!important;padding:0!important;background:none!important;border:0!important;min-height:0!important;width:auto!important;margin:0 0 0 6px!important;box-shadow:none!important}
.mm-supporters-ico,.mm-plan-now-icon,.mm-learn-upsell-ico{letter-spacing:-3px}

/* v3.74.0 prayer-time pages per province */
.mm-pv-crumb{font-size:.82rem;color:#6b7b73}.mm-pv-crumb a{color:#0f5132}
.mm-pv-head h1{margin:0;font-size:1.5rem;line-height:1.3}.mm-pv-head p{margin:4px 0 0;color:#6b7b73}
.mm-pv-next{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#0f5132;color:#fff;border-radius:18px;padding:14px 16px}
.mm-pv-next b{font-size:1.5rem;font-variant-numeric:tabular-nums;letter-spacing:.5px}
.mm-pv-times{padding:6px 16px}
.mm-pv-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #edf2ef;font-size:1.02rem}
.mm-pv-row:last-child{border:0}.mm-pv-row b{font-size:1.2rem;font-variant-numeric:tabular-nums}
.mm-pv-row.sun{color:#6b7b73}.mm-pv-row.next{color:#0f5132;font-weight:700}.mm-pv-row.next b:after{content:" ●";font-size:.7rem;vertical-align:middle}
.mm-pv-note{margin:-4px 0 0;font-size:.78rem;color:#6b7b73;line-height:1.5}
.mm-pv-qibla{display:flex;align-items:center;gap:12px}.mm-pv-qibla b{display:block;font-size:1.1rem}.mm-pv-qibla small{color:#6b7b73}.mm-pv-qibla .btn{margin-left:auto;flex:none}
.mm-pv-qibla-ico{font-size:1.8rem}
.mm-pv-places h2,.mm-pv-monthcard h2,.mm-pv-faq h2,.mm-pv-near h2,.mm-pv-region h2{margin:0 0 8px;font-size:1.05rem}
.mm-pv-places ul{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:6px}
.mm-pv-places li a{display:flex;justify-content:space-between;gap:8px;padding:8px 10px;background:#f6f8f6;border-radius:12px;color:#16241d;text-decoration:none}
.mm-pv-places li small{color:#6b7b73;flex:none}
.mm-pv-month-head{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.mm-pv-month-head>div{display:flex;gap:6px}
.mm-pv-scroll{overflow-x:auto;margin-top:8px}
.mm-pv-month{width:100%;border-collapse:collapse;font-size:.84rem;font-variant-numeric:tabular-nums;text-align:center}
.mm-pv-month th{background:#0f5132;color:#fff;padding:6px 4px;font-weight:600}.mm-pv-month td{padding:5px 4px;border-bottom:1px solid #edf2ef}
.mm-pv-month td:first-child{text-align:left;white-space:nowrap}.mm-pv-month tr.fri td{background:#f3faf6}.mm-pv-month tr.today td{background:#fff3cf;font-weight:700}
.mm-pv-print-note{display:none}
.mm-pv-funnel{display:flex;align-items:center;gap:12px;background:#fff8e6;border:1px solid #f1dca0;border-radius:16px;padding:12px 14px;color:#16241d;text-decoration:none}
.mm-pv-funnel>span:first-child{font-size:1.5rem}.mm-pv-funnel b{display:block}.mm-pv-funnel small{color:#6b7b73}.mm-pv-funnel .mm-school-go{margin-left:auto}
.mm-pv-faq details{border-bottom:1px solid #edf2ef;padding:8px 0}.mm-pv-faq details:last-child{border:0}.mm-pv-faq summary{cursor:pointer;font-weight:600}.mm-pv-faq p{margin:6px 0 0;color:#3d4d45}
.mm-pv-chips{display:flex;flex-wrap:wrap;gap:6px}.mm-pv-chips a{background:#eef4f0;color:#0f5132;border-radius:999px;padding:6px 12px;text-decoration:none;font-size:.88rem}
.mm-pv-all{display:inline-block;margin-top:10px;color:#0f5132}
.mm-pv-region ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px}
.mm-pv-region li a{display:grid;padding:8px 10px;background:#f6f8f6;border-radius:12px;color:#16241d;text-decoration:none}.mm-pv-region li small{color:#6b7b73;font-size:.76rem}
/* the static copy Google reads (before the app starts) */
.mm-pv .mm-pv-month{max-width:640px}.mm-pv-today{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px 16px}
@media print{
  body *{visibility:hidden}.mm-pv-monthcard,.mm-pv-monthcard *{visibility:visible}
  .mm-pv-monthcard{position:absolute;left:0;top:0;width:100%;border:0;box-shadow:none}.mm-pv-month-head button{display:none}.mm-pv-print-note{display:block;font-size:.8rem}
  .mm-pv-scroll{overflow:visible}.mm-pv-month{font-size:10pt}
}
.mm-pv-page{grid-template-columns:minmax(0,1fr)}.mm-pv-page>*{min-width:0}
.mm-pv-monthcard{padding:14px 8px}.mm-pv-monthcard h2,.mm-pv-month-head{padding:0 6px}.mm-pv-month{font-size:.78rem;table-layout:fixed}.mm-pv-month th,.mm-pv-month td{padding:5px 1px}.mm-pv-month th:first-child,.mm-pv-month td:first-child{width:52px;padding-left:4px}
.mm-pv-month{min-width:0}
.mm-pv-link{background:#fff;border:1px solid #e3ece6;border-radius:18px;padding:12px 14px;display:grid;gap:6px}
.mm-pv-link-main{display:flex;align-items:center;gap:12px;color:#16241d;text-decoration:none}
.mm-pv-link-main>span:first-child{font-size:1.5rem}.mm-pv-link-main b{display:block}.mm-pv-link-main small{color:#6b7b73}.mm-pv-link-main .mm-school-go{margin-left:auto}
.mm-pv-link-other{justify-self:start;margin-left:46px;font-size:.86rem;color:#0f5132}

/* v3.76.0 teacher topic pages */
.mm-topic{display:grid;gap:14px;grid-template-columns:minmax(0,1fr)}
.mm-topic-hero{display:grid;gap:8px}.mm-topic-hero h1{margin:0;font-size:1.5rem;line-height:1.3}.mm-topic-hero p{margin:0;color:#3d4d45;line-height:1.6}
.mm-topic-icon{font-size:2rem}
.mm-topic-hero .mm-pv-chips span{background:#eef4f0;color:#0f5132;border-radius:999px;padding:6px 12px;font-size:.86rem}
.mm-topic-list h2{margin:0 0 10px;font-size:1.1rem}
.mm-topic-list ul{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px}
.mm-topic-list li a{display:flex;align-items:center;gap:12px;padding:10px;background:#f6f8f6;border-radius:14px;color:#16241d;text-decoration:none}
.mm-topic-list li img,.mm-topic-noimg{width:56px;height:56px;border-radius:14px;object-fit:cover;flex:none}
.mm-topic-noimg{display:grid;place-items:center;background:#dfe8e2;color:#0f5132;font-weight:700;font-size:1.3rem}
.mm-topic-list li b{display:block}.mm-topic-list li small{color:#6b7b73}.mm-topic-list li .mm-school-go{margin-left:auto}
.mm-topic-chips{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;max-width:960px;margin:8px auto 24px;padding:0 16px}
.mm-topic-chips a{background:#eef4f0;color:#0f5132;border-radius:999px;padding:7px 12px;text-decoration:none;font-size:.86rem}

/* v3.77.0 ครู Plus */
.mm-tplus-badge{display:inline-block;margin-left:6px;font-size:.74rem;font-weight:700;color:#7a5a12;background:#fff3cf;border:1px solid #f1dca0;border-radius:999px;padding:1px 8px;vertical-align:middle;white-space:nowrap}
.mm-tplus-badge.small{margin:2px 0 0;font-size:.68rem}
.mm-tplus-lock{border:2px dashed #e0b84a;background:#fffaf0;display:grid;gap:10px}
.mm-tplus-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.mm-tplus-head b{font-size:1.15rem}.mm-tplus-head span{font-weight:700;color:#7a5a12}
.mm-tplus-lock p{margin:0}.mm-tplus-lock ul{margin:0;padding-left:20px;display:grid;gap:4px}.mm-tplus-lock li.soon{color:#6b7b73;list-style:none;margin-left:-20px;font-size:.86rem}
.mm-tplus-note{margin:0;font-size:.8rem;color:#6b7b73}
.mm-tplus-on{display:grid;gap:10px}.mm-tplus-on h3{margin:6px 0 0;font-size:1rem}
.mm-tplus-done{background:#e9f5ee;color:#0f5132;font-weight:700;border-radius:12px;padding:10px 12px}
.mm-tplus-row{display:grid;gap:2px}.mm-tplus-row span,.mm-tplus-row small{color:#6b7b73;font-size:.82rem}
.mm-tplus-trial,.mm-tplus-editor{display:grid;gap:8px;background:#f6f8f6;border-radius:14px;padding:12px}
.mm-tplus-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.mm-tplus-grid label,.mm-tplus-editor>label{display:grid;gap:4px;font-size:.84rem}
.mm-tplus-calc{margin:0;font-weight:700;color:#0f5132;font-size:.88rem}
.mm-tplus-pack{display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px solid #e3ece6;border-radius:14px;padding:10px 12px}
.mm-tplus-pack.off{opacity:.6}.mm-tplus-pack b{display:block}.mm-tplus-pack small{color:#6b7b73;font-size:.8rem}
.mm-tplus-pack-btns{display:flex;gap:6px;flex-wrap:wrap}
.mm-tplus-prices{display:grid;gap:8px;margin:10px 0}
.mm-tplus-pcard{position:relative;display:grid;gap:2px;border:1px solid #e3ece6;border-radius:14px;padding:10px 12px;background:#fff}
.mm-tplus-pcard b{font-size:1.05rem;color:#0f5132}.mm-tplus-pcard small{color:#6b7b73}.mm-tplus-pcard p{margin:2px 0;font-size:.86rem}
.mm-tplus-pcard.trial{background:#fffaf0;border-color:#f1dca0}
.mm-tplus-pcard.month{border:2px solid #14634a}.mm-tplus-pcard .btn{justify-self:start;margin-top:4px}
.mm-feed-pack{position:absolute;left:8px;top:8px;background:rgba(255,255,255,.92);color:#0f5132;font-size:.7rem;font-weight:700;border-radius:999px;padding:2px 8px}
.mm-tplus-lead{margin:0;font-weight:600}
.mm-tplus-benefits{display:grid;gap:10px}
.mm-tplus-benefit{display:flex;gap:10px;align-items:flex-start}.mm-tplus-benefit>span{font-size:1.3rem;line-height:1.4}
.mm-tplus-benefit b{display:block}.mm-tplus-benefit small{color:#5d6b64;line-height:1.5}
.mm-tplus-soon{margin:0;font-size:.82rem;color:#6b7b73;background:#fff;border-radius:12px;padding:8px 10px}
.mm-tplus-benefits{gap:6px}
details.mm-tplus-benefit{display:block;background:#fff;border:1px solid #f1dca0;border-radius:12px;padding:0}
details.mm-tplus-benefit summary{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;list-style:none}
details.mm-tplus-benefit summary::-webkit-details-marker{display:none}
details.mm-tplus-benefit summary>span{font-size:1.25rem}
details.mm-tplus-benefit summary::after{content:"›";margin-left:auto;font-size:1.3rem;color:#7a5a12;transition:transform .2s}
details.mm-tplus-benefit[open] summary::after{transform:rotate(90deg)}
details.mm-tplus-benefit p{margin:0;padding:0 12px 12px 47px;color:#5d6b64;font-size:.88rem;line-height:1.55}
.mm-tplus-tap{margin:-2px 0 0;font-size:.78rem;color:#7a5a12}
/* v3.78: โหลดแอป button (computers only); v3.78.1 phone icon */
.mm-getapp-btn{display:none;align-items:center;gap:7px;height:38px;padding:0 14px 0 11px;border:1.5px solid #14634a;border-radius:999px;background:#fff;color:#14634a;font:inherit;font-weight:700;font-size:13.5px;white-space:nowrap;cursor:pointer}
.mm-getapp-btn:hover{background:#eef6f1}
.mm-getapp-phone{width:19px;height:19px;flex:none;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round}
@media (min-width:1101px){.mm-getapp-btn{display:inline-flex}}
/* v3.79: image popup (ประกาศภาพ) */
.mm-imgpop{position:fixed;inset:0;z-index:9993;background:rgba(10,25,18,.62);display:grid;place-items:center;padding:16px;animation:mmPopIn .25s ease-out}
@keyframes mmPopIn{from{opacity:0}}
.mm-imgpop-box{display:flex;flex-direction:column;align-items:center;gap:14px;width:min(420px,100%)}
.mm-imgpop-frame{position:relative;width:100%;border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 20px 60px rgba(0,0,0,.45)}
.mm-imgpop-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.mm-imgpop-track::-webkit-scrollbar{display:none}
.mm-imgpop-slide{flex:0 0 100%;scroll-snap-align:center;border:0;padding:0;margin:0;background:#fff;cursor:default;line-height:0}
.mm-imgpop-slide.has-link{cursor:pointer}
.mm-imgpop-slide img{width:100%;height:auto;max-height:calc(100vh - 170px);max-height:calc(100dvh - 170px);object-fit:contain;display:block}
.mm-imgpop-dots{position:absolute;left:0;right:0;bottom:10px;display:flex;gap:6px;justify-content:center}
.mm-imgpop-dots button{width:8px;height:8px;border-radius:9px;border:0;padding:0;background:rgba(255,255,255,.65);box-shadow:0 0 0 1px rgba(0,0,0,.15);cursor:pointer}
.mm-imgpop-dots button.on{width:22px;background:#fff}
.mm-imgpop-arrow{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:50%;border:0;background:rgba(255,255,255,.85);font-size:1.5rem;line-height:1;color:#13261d;cursor:pointer;display:none}
.mm-imgpop-arrow.prev{left:8px}.mm-imgpop-arrow.next{right:8px}
@media (hover:hover){.mm-imgpop-arrow{display:grid;place-items:center}}
.mm-imgpop-x{width:52px;height:52px;border-radius:50%;border:0;background:#fff;color:#3e5148;font-size:1.3rem;cursor:pointer;box-shadow:0 6px 20px rgba(0,0,0,.25)}
.mm-imgpop-skip{color:#fff;font-size:.88rem;display:flex;align-items:center;gap:6px;cursor:pointer}
.mm-imgpop-skip input{width:18px;height:18px;accent-color:#14634a}
.mm-admin-popups .mm-pop-f{display:block;margin:10px 0}
.mm-admin-popups .mm-pop-f>b{display:block;font-size:.88rem;margin-bottom:5px}
.mm-admin-popups .mm-pop-f input:not([type=checkbox]){width:100%;box-sizing:border-box}
.mm-pop-thumbs{display:flex;gap:8px;flex-wrap:wrap}
.mm-pop-th{position:relative;width:64px;height:88px;border-radius:10px;overflow:hidden;background:#eef4f0}
.mm-pop-th img{width:100%;height:100%;object-fit:cover}
.mm-pop-th button{position:absolute;top:3px;right:3px;width:22px;height:22px;border-radius:50%;border:0;background:rgba(0,0,0,.6);color:#fff;font-size:.7rem;cursor:pointer;padding:0}
.mm-pop-add{width:64px;height:88px;border-radius:10px;border:2px dashed #b9d3c4;display:grid;place-items:center;color:#14634a;font-size:1.5rem;cursor:pointer}
.mm-pop-add input{display:none}
.mm-pop-chips{display:flex;gap:8px;flex-wrap:wrap}
.mm-pop-chips button{border:1.5px solid #cfe0d6;background:#fff;border-radius:999px;padding:6px 12px;font:inherit;font-size:.85rem;cursor:pointer}
.mm-pop-chips button.on{background:#14634a;border-color:#14634a;color:#fff}
.mm-pop-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mm-pop-list{margin-top:16px;border-top:1px solid #e3ece6;padding-top:10px}
.mm-pop-row{display:flex;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid #f0f4f1}
.mm-pop-row img{width:36px;height:48px;border-radius:6px;object-fit:cover;flex:none}
.mm-pop-info{flex:1;min-width:0}.mm-pop-info b,.mm-pop-info small{display:block}
.mm-pop-st{border-radius:999px;padding:2px 9px;font-size:.75rem;white-space:nowrap}
.mm-pop-st.on{background:#e3f4ea;color:#14634a}.mm-pop-st.wait{background:#fff3d6;color:#8a5a00}.mm-pop-st.off{background:#eef0ef;color:#5b6b63}
/* v3.80: สถิติการใช้งาน (admin overview) */
.mm-admin-usage .mm-us-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.mm-admin-usage .mm-us-head h2{margin:0}
.mm-us-range{display:flex;gap:4px;background:#f1f5f2;border-radius:999px;padding:3px}
.mm-us-range button{border:0;background:none;border-radius:999px;padding:5px 12px;font:inherit;font-size:.82rem;cursor:pointer;color:#3e5148}
.mm-us-range button.on{background:#14634a;color:#fff}
.mm-us-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0 12px}
.mm-us-kpis>div{background:#f4f8f5;border-radius:12px;padding:10px}
.mm-us-kpis b{display:block;font-size:1.4rem;line-height:1.2}.mm-us-kpis small{color:#5b6b63;font-size:.76rem}
@media (max-width:560px){.mm-us-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
.mm-us-chart{display:flex;align-items:flex-end;gap:3px;height:90px;border-bottom:1px solid #dfe5e1;margin:4px 0 12px}
.mm-us-chart i{flex:1;min-width:0;background:#14634a;border-radius:3px 3px 0 0;opacity:.85}
.mm-us-sub{display:block;font-size:.88rem;margin:10px 0 4px}
.mm-us-split{display:flex;height:12px;border-radius:9px;overflow:hidden;background:#eef2ef}
.mm-us-split i{display:block}
.mm-us-legend{display:flex;gap:6px 14px;flex-wrap:wrap;font-size:.76rem;color:#5b6b63;margin-top:6px}
.mm-us-legend span:before{content:"";display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:4px;background:var(--c)}
.mm-us-table{overflow-x:auto}
.mm-us-table table{min-width:0;width:100%;border-collapse:collapse;font-size:.84rem}
.mm-us-table th{text-align:left;color:#5b6b63;font-weight:600;border-bottom:1px solid #e3ece6;padding:6px}
.mm-us-table td{padding:7px 6px;border-bottom:1px solid #f0f4f1;white-space:nowrap}
.mm-us-up{color:#14634a;font-weight:700}.mm-us-down{color:#b3261e;font-weight:700}
/* v3.81: เรียนสักนิด แผนที่ด่าน + เป้าหมายวันนี้ */
.mm-learn-goals{background:#fff8e6;border:1px solid #f0d58a;border-radius:18px;padding:12px 14px;margin:12px 0}
.mm-learn-goals.done{background:#eaf6ef;border-color:#9fd3b5}
.mm-learn-goals-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:6px}
.mm-learn-goals-head small{color:#8a6a1a}
.mm-learn-goal{display:grid;grid-template-columns:26px minmax(0,1fr) 34% 34px;align-items:center;gap:8px;margin:6px 0;font-size:.9rem}
.mm-learn-goal-ic{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:.85rem}
.mm-learn-goal.ok .mm-learn-goal-ic{background:#14634a;color:#fff;font-weight:800}
.mm-learn-goal-bar{height:9px;border-radius:9px;background:#efe3bf;overflow:hidden}
.mm-learn-goal-bar i{display:block;height:100%;background:#e0a82a;border-radius:9px;transition:width .4s}
.mm-learn-goal.ok .mm-learn-goal-bar i{background:#14634a}
.mm-learn-goal small{text-align:right;color:#5b6b63}
.mm-learn-goals-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px;font-size:.85rem;font-weight:700}
.mm-learn-goals-foot .mm-learn-btn{padding:6px 12px;font-size:.82rem}
.mm-map{display:flex;flex-direction:column;gap:12px;margin:12px 0 16px}
.mm-map-unit{border-radius:20px}
.mm-map-banner{width:100%;display:flex;justify-content:space-between;align-items:center;gap:10px;border:0;border-radius:18px;padding:12px 16px;background:#14634a;color:#fff;font:inherit;text-align:left;cursor:pointer;box-shadow:0 4px 0 #0d4433}
.mm-map-banner small{display:block;opacity:.8;font-size:.76rem}.mm-map-banner b{font-size:1rem}
.mm-map-banner span{font-size:.85rem;font-weight:700;white-space:nowrap}
.mm-map-unit.done .mm-map-banner{background:#c99a2e;box-shadow:0 4px 0 #9a7215}
.mm-map-unit:not(.now):not(.done) .mm-map-banner{background:#5f7d6f;box-shadow:0 4px 0 #445a4f}
.mm-map-path{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 0 4px}
.mm-map-node{position:relative;display:flex;flex-direction:column;align-items:center;width:150px}
.mm-map-node.l{transform:translateX(-58px)}.mm-map-node.r{transform:translateX(58px)}
.mm-map-dot{width:64px;height:58px;border-radius:50%;border:0;font-size:1.5rem;font-weight:800;display:grid;place-items:center;cursor:pointer;color:#fff;background:#e0b33a;box-shadow:0 6px 0 #a8811d;transition:transform .1s}
.mm-map-dot:active:not(:disabled){transform:translateY(4px);box-shadow:0 2px 0 #a8811d}
.mm-map-dot.now{width:74px;height:68px;background:#14634a;box-shadow:0 6px 0 #0d4433,0 0 0 6px rgba(20,99,74,.18);animation:mmMapPulse 1.6s infinite}
@keyframes mmMapPulse{50%{box-shadow:0 6px 0 #0d4433,0 0 0 12px rgba(20,99,74,.08)}}
.mm-map-dot.lock{background:#dfe5e1;color:#93a29a;box-shadow:0 6px 0 #c4ccc7;cursor:default;font-size:1.2rem}
.mm-map-dot.chest.ready,.mm-map-dot.test.ready{background:#fff3d0;box-shadow:0 6px 0 #e0b33a;animation:mmMapPulse 1.6s infinite}
.mm-map-dot.chest.opened{background:#eef2ef;box-shadow:0 6px 0 #cfd8d2;cursor:default}
.mm-map-dot.test.passed{background:#e0b33a;box-shadow:0 6px 0 #a8811d}
.mm-map-dot.chest.lock,.mm-map-dot.test.lock{font-size:1.5rem;filter:grayscale(1);opacity:.65}
.mm-map-start{margin-top:8px;background:#fff;border:2px solid #14634a;color:#14634a;border-radius:12px;padding:3px 12px;font-weight:800;font-size:.82rem}
.mm-map-label{margin-top:6px;font-size:.74rem;color:#5b6b63;text-align:center;line-height:1.3;max-width:150px}
.mm-map-toast{position:fixed;left:50%;bottom:calc(100px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);z-index:9980;background:#13261d;color:#fff;border-radius:14px;padding:10px 16px;font-weight:700;box-shadow:0 10px 30px rgba(0,0,0,.3);max-width:calc(100vw - 32px);text-align:center}
/* v3.81.1: slim sticky top bar like a learning app; unit banners stick under it */
.mm-learn-top{position:sticky;top:var(--mm-learn-top,64px);z-index:15;display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 -16px 6px;padding:8px 12px;background:rgba(255,255,255,.96);backdrop-filter:blur(6px);border-bottom:1px solid #e6ece8}
.mm-learn-top-track{display:flex;align-items:center;gap:6px;border:1.5px solid #dfe7e2;background:#fff;border-radius:14px;padding:6px 10px;font:inherit;cursor:pointer;min-width:0}
.mm-learn-top-track span{font-size:1.15rem}.mm-learn-top-track b{font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:110px}
.mm-learn-top-track small{color:#5b6b63}
.mm-learn-top-stats{display:flex;align-items:center;gap:2px}
.mm-learn-top-stats>span,.mm-learn-top-stats>button,.mm-learn-top-stats>a{display:flex;align-items:center;gap:3px;border:0;background:none;font:inherit;font-size:.95rem;padding:6px 6px;border-radius:10px;color:#13261d;text-decoration:none;cursor:default}
.mm-learn-top-stats>button,.mm-learn-top-stats>a{cursor:pointer}
.mm-learn-top-stats>button:hover,.mm-learn-top-stats>a:hover{background:#f1f5f2}
.mm-learn-top-stats b{font-size:.9rem}
.mm-learn-top-stats>span:not(.on):first-child{filter:grayscale(1);opacity:.6}
.mm-learn-top-stats>button.done b{color:#14634a}
.mm-learn-top-menu{position:absolute;left:8px;right:8px;top:calc(100% + 6px);background:#fff;border:1px solid #e3ece6;border-radius:18px;box-shadow:0 16px 40px rgba(10,40,25,.2);padding:6px;max-height:70vh;overflow:auto}
.mm-learn-top-menu>button{width:100%;display:flex;align-items:center;gap:10px;border:0;background:none;border-radius:12px;padding:10px;font:inherit;text-align:left;cursor:pointer}
.mm-learn-top-menu>button.on{background:#eef6f1}
.mm-learn-top-menu>button:hover{background:#f4f8f5}
.mm-learn-top-ic{font-size:1.4rem;width:32px;text-align:center}
.mm-learn-top-nm{flex:1;min-width:0}.mm-learn-top-nm b,.mm-learn-top-nm small{display:block}.mm-learn-top-nm small{color:#5b6b63;font-size:.78rem}
.mm-learn-top-menu.goals{padding:0;border:0;background:none;box-shadow:none}
.mm-learn-top-menu.goals .mm-learn-goals{margin:0;box-shadow:0 16px 40px rgba(10,40,25,.2)}
.mm-map-banner{position:sticky;top:calc(var(--mm-learn-top,64px) + 56px);z-index:6}
.mm-map{margin-top:6px}
.mm-learn-prefs{align-items:center}
.mm-learn .mm-learn-freeline{text-align:center;margin:6px 0 12px}
@media (min-width:900px){.mm-learn-top{margin:0 0 8px;border-radius:16px;border:1px solid #e6ece8}}
.section.mm-learn:has(> .mm-learn-top){padding-top:0}
/* v3.81.2: pay sheet over the path (no jump down) */
.mm-learn-paysheet-shade{position:fixed;inset:0;z-index:10050;background:rgba(10,25,18,.5);display:flex;align-items:flex-end;justify-content:center;animation:mmPopIn .2s ease-out}
.mm-learn-paysheet{width:min(480px,100%);background:#fff;border-radius:24px 24px 0 0;padding:22px 18px calc(18px + env(safe-area-inset-bottom,0px));text-align:center;display:flex;flex-direction:column;gap:10px;animation:mmLearnSheetUp .25s ease-out}
@keyframes mmLearnSheetUp{from{transform:translateY(40px)}}
.mm-learn-paysheet-ico{font-size:2.4rem;line-height:1}
.mm-learn-paysheet h3{margin:0;font-size:1.15rem}
.mm-learn-paysheet p{margin:0;color:#5b6b63}
.mm-learn-paysheet .mm-learn-btn.big{width:100%;text-align:center;justify-content:center;text-decoration:none}
.mm-learn-paysheet .mm-learn-upsell{text-align:left}
.mm-learn-paysheet-row{display:flex;gap:8px}.mm-learn-paysheet-row .mm-learn-btn{flex:1}
@media (min-width:768px){.mm-learn-paysheet-shade{align-items:center}.mm-learn-paysheet{border-radius:24px}}
.mm-learn-paysheet-shade{--lg:#145c4b;--lg2:#1f7262;--lgs:#e3eeea;--gold:#f0b443;--golds:#fdf1d8;--ink:#1b2a24;--mute:#66756e;--line:#e2e5e0;font-family:inherit}
html.mm-sheet-open .mm-bottom-nav{visibility:hidden}
/* v3.84: ครูสอนตามบ้าน + ขอใช้ตำแหน่งครั้งเดียว */
.mm-home-tutor .mm-home-head{display:flex;justify-content:space-between;align-items:center;gap:10px}
.mm-home-tutor h3{margin:0}
.mm-home-body{margin-top:10px;display:flex;flex-direction:column;gap:8px}
.mm-home-map{height:240px;border-radius:14px;overflow:hidden;border:1px solid #dfe7e2;z-index:0}
.mm-home-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.mm-home-lbl{font-size:.88rem;margin-top:4px}
.mm-home-chips{display:flex;gap:6px;flex-wrap:wrap}
.mm-home-chips button{border:1.5px solid #cfe0d6;background:#fff;border-radius:999px;padding:6px 14px;font:inherit;font-size:.85rem;cursor:pointer}
.mm-home-chips button.on{background:#14634a;border-color:#14634a;color:#fff}
.mm-home-tutor input{width:100%;box-sizing:border-box}
.mm-feed-home{display:inline-block;margin:2px 0;background:#fff3d6;color:#8a5a00;border-radius:999px;padding:2px 9px;font-size:.74rem;font-weight:700}
.mm-geo-uses{display:flex;flex-direction:column;gap:4px;text-align:left;background:#f4f8f5;border-radius:12px;padding:10px 14px;font-size:.88rem}
.mm-geo-sheet small{color:#5b6b63}
.mm-geo-later{border:0;background:none;color:#5b6b63;font:inherit;font-size:.86rem;cursor:pointer;padding:6px}

/* v3.84.1: azan on-time status (app 1.2.1+) */
.mm-ppage-exact{margin:0;border-radius:12px;padding:10px 12px;font-size:.9rem;line-height:1.5}
.mm-ppage-exact.ok{color:#0f5132;background:#eef6f1}
.mm-ppage-exact.warn{display:grid;gap:8px;color:#7c3d06;background:#fff3e0;border:1px solid #f2c48d}
.mm-ppage-exact.warn b{color:#b45309}
/* v3.85: เงินเข้า + ลำดับผู้สนับสนุน */
.mm-money-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
.mm-money-list{display:flex;flex-direction:column}
.mm-money-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid #f0f4f1}
.mm-money-row.today .mm-money-amt{color:#14634a}
.mm-money-when{font-size:.78rem;color:#5b6b63;white-space:nowrap}
.mm-money-who b,.mm-money-who small{display:block}.mm-money-who small{color:#5b6b63;font-size:.76rem}
.mm-money-amt{font-size:1rem}
.mm-pdisp{display:flex;flex-direction:column;gap:6px;margin-top:10px}
.mm-pdisp-opt{display:flex;gap:10px;align-items:flex-start;border:1.5px solid #e3ece6;border-radius:12px;padding:8px 10px;cursor:pointer}
.mm-pdisp-opt.on{border-color:#14634a;background:#f2f8f4}
.mm-pdisp-opt b,.mm-pdisp-opt small{display:block}.mm-pdisp-opt small{color:#5b6b63;font-size:.78rem}
.mm-pdisp-alias{display:flex;gap:8px;padding-left:30px}.mm-pdisp-alias input{flex:1;min-width:0}
.mm-srank{list-style:none;margin:0;padding:0}
.mm-srank li{display:flex;align-items:center;gap:12px;padding:10px 4px;border-bottom:1px solid #f0f4f1}
.mm-srank li.me{background:#f2f8f4;border-radius:12px}
.mm-srank li.past{opacity:.75}
.mm-srank-no{width:34px;text-align:center;font-weight:800;color:#5b6b63;flex:none}
.mm-srank-no.top{font-size:1.4rem}
.mm-srank-who b,.mm-srank-who small{display:block}.mm-srank-who small{color:#5b6b63;font-size:.8rem}
.mm-srank-who em{font-style:normal;color:#14634a;font-size:.8rem}

/* v3.86 account review */
.mm-admin-student-review-card,.mm-offer-admin-card{display:none!important}
.mm-rv>h2{margin:0}
.mm-rv-tabs{display:flex;gap:6px;background:#eef4f1;border-radius:14px;padding:4px}
.mm-rv-tab{flex:1;border:0;background:transparent;border-radius:11px;padding:10px 6px;font:inherit;font-weight:700;color:#3d5249;display:flex;align-items:center;justify-content:center;gap:6px;cursor:pointer}
.mm-rv-tab.on{background:#fff;color:#0f5a43;box-shadow:0 1px 4px rgba(0,0,0,.08)}
.mm-rv-num{background:#d9534f;color:#fff;border-radius:999px;font-size:.75rem;min-width:20px;padding:1px 6px;line-height:18px}
.mm-rv-tools{display:flex;gap:8px;align-items:center}
.mm-rv-tools input{flex:1;min-width:0}
.mm-rv-tools select{width:auto}
.mm-rv-empty{background:#f3f8f5;border-radius:14px;padding:18px;text-align:center;color:#2f6b52;font-weight:600}
.mm-rv-card .mm-review-top{align-items:flex-start}
.mm-rv-card .mm-review-name h2{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:1.1rem;margin:0 0 2px}
.mm-rv-card .mm-review-name p{margin:2px 0;font-size:.88rem}
.mm-rv-sum{color:#5b6b63}.mm-rv-sum b{color:#a15c00;font-weight:600}
.mm-rv-card .mm-state.idle{background:#f0f0f0;color:#6b6b6b}
.mm-rv-card .mm-review-toggle strong small{font-weight:400}
.mm-rv-nudge{border:1px dashed #b9d3c6;border-radius:14px;padding:12px;display:grid;gap:8px;background:#fbfdfc}
.mm-rv-nudge-head{display:flex;justify-content:space-between;gap:8px;align-items:baseline}
.mm-rv-nudge-head small{color:#5b6b63}
.mm-rv-chips{display:flex;flex-wrap:wrap;gap:6px}
.mm-rv-chip{border:1px solid #cfdcd5;background:#fff;border-radius:999px;padding:6px 11px;font:inherit;font-size:.85rem;color:#3d5249;cursor:pointer}
.mm-rv-chip.on{background:#e3f3ea;border-color:#2f8a63;color:#0f5a43;font-weight:600}
.mm-rv-nudge-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.mm-rv-ok{color:#1f7a50;margin:0;font-weight:600}
.mm-rv-allset{color:#1f7a50;margin:0;font-size:.9rem}
.mm-rv-block{margin:0;background:#fff6e5;color:#8a5300;border-radius:10px;padding:8px 10px;font-size:.88rem}
.mm-rv-actions{display:flex;gap:8px;flex-wrap:wrap}
.mm-rv-actions .btn{flex:1;min-width:120px}
.mm-rv-ask{display:grid;gap:8px}
.mm-rv-decide{display:grid;gap:8px}
.mm-rv-students{display:grid;gap:10px}
.mm-rv-student{background:#fff;border:1px solid #e3ebe7;border-radius:14px;padding:12px;display:grid;gap:10px}
.mm-rv-student-main{display:flex;gap:10px;align-items:center}
.mm-rv-student-main>div{flex:1;min-width:0}
.mm-rv-student-main b,.mm-rv-student-main small{display:block}
.mm-rv-student-main small{color:#5b6b63;font-size:.82rem}
.mm-rv-goals{white-space:normal}
.mm-rv-more{justify-self:center}
.mm-rv-inst{background:#fff;border:1px solid #e3ebe7;border-radius:14px;padding:14px;display:grid;gap:10px}
.mm-rv-inst p{margin:0}

/* v3.87 teacher profile steps */
.mm-wz{display:grid;gap:14px;scroll-margin-top:80px}
.mm-wz-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.mm-wz-head h2{margin:2px 0 0;font-size:1.2rem}
.mm-wz-dirty{background:#fff3dc;color:#8a5300;border-radius:999px;padding:3px 10px;font-size:.78rem;white-space:nowrap}
.mm-wz-dots{display:flex;gap:6px;align-items:center}
.mm-wz-dot{flex:1;height:34px;border-radius:10px;border:1.5px solid #d6e3dc;background:#fff;font:inherit;font-weight:700;color:#7a8c83;cursor:pointer}
.mm-wz-dot.done{background:#e3f3ea;border-color:#9fd0b7;color:#1f7a50}
.mm-wz-dot.on{background:#0f5a43;border-color:#0f5a43;color:#fff}
.mm-wz-body{display:grid;gap:12px}
.mm-wz-body label{display:grid;gap:4px;font-weight:600}
.mm-wz-body label small{font-weight:400}
.mm-wz-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mm-wz-ok{margin:0;color:#1f7a50;font-weight:600}
.mm-wz-nav{display:flex;justify-content:space-between;gap:10px;position:sticky;bottom:84px;background:linear-gradient(transparent,#fff 30%);padding-top:10px}
.mm-wz-nav .btn{min-width:120px}
.mm-wz-nav .btn.primary{flex:1;max-width:260px;margin-left:auto}
.mm-wz-status,.mm-wz-extra{padding:0}
.mm-wz-status>summary,.mm-wz-extra>summary{padding:14px 16px;font-weight:700;cursor:pointer;list-style:none}
.mm-wz-status>summary::after,.mm-wz-extra>summary::after{content:"⌄";float:right;color:#7a8c83}
.mm-wz-status[open]>summary::after,.mm-wz-extra[open]>summary::after{content:"⌃"}
.mm-wz-status>section{padding:0 16px 16px;margin:0;border:0;box-shadow:none}
.mm-wz-extra[open]{padding:0 16px 16px;display:grid;gap:10px}
.mm-wz-extra[open]>summary{margin:0 -16px}
.mm-wz-extra h3{margin:8px 0 0;font-size:1rem}
.mm-wz-extra label{display:grid;gap:4px}
.mm-wz-next{display:flex;align-items:center;gap:12px;padding:14px;position:relative;border:1.5px solid #f0c36a;background:#fffaf0}
.mm-wz-next.plus{border-color:#e8d48a;background:linear-gradient(135deg,#fffbea,#fff)}
.mm-wz-next-ic{font-size:1.8rem;flex:none}
.mm-wz-next>div{flex:1;min-width:0}
.mm-wz-next b,.mm-wz-next small{display:block}
.mm-wz-next small{color:#5b6b63;font-size:.82rem}
.mm-wz-x{position:absolute;top:2px;right:6px;border:0;background:none;font-size:1.2rem;color:#9aa8a1;cursor:pointer}
.mm-wz-shade{position:fixed;inset:0;background:rgba(10,30,22,.45);z-index:1200;display:flex;align-items:flex-end;justify-content:center}
.mm-wz-sheet{background:#fff;width:100%;max-width:520px;max-height:92vh;overflow:auto;border-radius:22px 22px 0 0;padding:18px 16px calc(18px + env(safe-area-inset-bottom));display:grid;gap:10px}
.mm-wz-sheet h2{margin:0}
.mm-wz-sheet p{margin:0}
.mm-wz-sheet-ok{color:#1f7a50;font-weight:700}
.mm-wz-sheet .card{box-shadow:none;margin:0}
@media (min-width:768px){.mm-wz-shade{align-items:center}.mm-wz-sheet{border-radius:22px}.mm-wz-nav{bottom:0}}

/* v3.88 teacher profile: status card + same collapsible section for everything */
.mm-tprof{display:grid;gap:10px}
.mm-tstat{display:grid;gap:8px;padding:14px 16px;border:1.5px solid #cfe3d8;background:linear-gradient(180deg,#f4fbf7,#fff)}
.mm-tstat-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.mm-tstat-top b{color:#0f5a43;white-space:nowrap}
.mm-tstat-chip{border-radius:999px;padding:4px 10px;font-size:.82rem;font-weight:700;background:#eef2f0;color:#4c5d55}
.mm-tstat-chip.ok{background:#dff3e8;color:#14634a}.mm-tstat-chip.wait{background:#fff3dc;color:#8a5300}.mm-tstat-chip.bad{background:#fde6e4;color:#a33a32}
.mm-tstat-bar{height:7px;border-radius:99px;background:#e3ece7;overflow:hidden}
.mm-tstat-bar span{display:block;height:100%;background:#14634a;border-radius:99px;transition:width .3s}
.mm-tstat-line{margin:0;font-size:.92rem;color:#2c3d35}
.mm-tstat-act{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.mm-tstat-act .btn{flex:1;min-width:150px}
.mm-tstat-more{border:0;background:none;color:#14634a;font:inherit;font-size:.88rem;text-decoration:underline;cursor:pointer;padding:6px 2px}
.mm-wz-detail>section{margin:4px 0 0;padding:12px 0 0;border:0;border-top:1px solid #e3ebe7;box-shadow:none;background:none}
.mm-sec{padding:0;overflow:hidden}
.mm-sec-head{display:flex;align-items:center;gap:10px;width:100%;padding:13px 14px;border:0;background:none;font:inherit;text-align:left;color:inherit;cursor:pointer;min-height:54px}
div.mm-sec-head{cursor:default}
.mm-sec-ic{font-size:1.25rem;width:26px;text-align:center;flex:none}
.mm-sec-title{flex:1;min-width:0;font-size:1rem}
.mm-sec-chip{font-size:.78rem;border-radius:999px;padding:3px 9px;background:#f0f3f1;color:#56665e;white-space:nowrap;max-width:48%;overflow:hidden;text-overflow:ellipsis}
.mm-sec-chip.ok{background:#e3f3ea;color:#14634a}.mm-sec-chip.warn{background:#fff3dc;color:#8a5300}
.mm-sec-chev{color:#7a8c83;transition:transform .2s;flex:none}
.mm-sec.open>.mm-sec-head .mm-sec-chev{transform:rotate(180deg)}
.mm-sec.open>.mm-sec-head{border-bottom:1px solid #eef2f0}
.mm-sec-body{padding:14px}
.mm-sec-hint{margin:-6px 14px 12px 50px;font-size:.84rem;color:#6b7b73}
.mm-sec-body>.form-card,.mm-sec-body>.card{margin:0;padding:0;border:0;box-shadow:none;background:none}
.mm-sec-body>.form-card>h2{display:none}
.mm-sec-body>.mm-tplus-lock>.mm-tplus-head{display:none}
.mm-sec-body .mm-wz{display:grid;gap:12px}
.mm-sec-body .mm-wz-head h3{margin:0;font-size:1.02rem}
.mm-home-tutor.mm-sec .mm-home-body{padding:0 14px 14px}
.mm-home-tutor.mm-sec .mm-pswitch{flex:none}
.mm-sec-body .mm-wz-extra{display:grid;gap:10px}
.mm-sec-body .mm-wz-extra label{display:grid;gap:4px}
.mm-sec-body .mm-wz-extra h3{margin:6px 0 0;font-size:1rem}
.card.form-card.mm-sec{padding:0;gap:0}
/* v3.88.1 day chips */
.mm-wz-times{display:grid;gap:10px}
.mm-wz-times>p{margin:-6px 0 0}
.mm-wz-time{border:1px solid #e1ebe5;border-radius:14px;padding:10px;display:grid;gap:10px;background:#fbfdfc}
.mm-wz-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.mm-wz-day{border:1.5px solid #d6e3dc;background:#fff;border-radius:10px;padding:9px 0;font:inherit;font-size:.9rem;color:#4c5d55;cursor:pointer;white-space:nowrap;overflow:hidden}
.mm-wz-day.on{background:#0f5a43;border-color:#0f5a43;color:#fff;font-weight:700}
.mm-wz-range{display:flex;align-items:center;gap:8px}
.mm-wz-range input{flex:1;min-width:0}
/* v3.88.1: the sticky step bar covered "+ เพิ่มช่วงเวลา" / "เพิ่มวิชา" → keep it in the flow */
.mm-wz-nav{position:static;background:none;padding-top:4px}
/* v3.88.1 (owner screenshot): subject chips were spaced by a general label margin → compact wrap */
.mm-wz-body .subject-picker{gap:6px}
.mm-wz-body .chips.selectable{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 2px}
.mm-wz-body .chips.selectable label.chip{display:inline-flex;align-items:center;margin:0;padding:6px 11px;min-height:0;height:auto;font-weight:500;font-size:.88rem;line-height:1.3}
.mm-wz-body .chips.selectable label.chip.selected{font-weight:700}
.mm-wz-body .chips.selectable label.chip.selected::before{content:"✓ "}
.mm-wz-other>summary{color:#14634a;font-size:.88rem;cursor:pointer;padding:4px 0;list-style:none}
.mm-wz-other>summary::-webkit-details-marker{display:none}
.mm-wz-other[open]>summary{margin-bottom:6px}
.mm-wz-other h2,.mm-wz-other h3{font-size:.95rem;margin:4px 0}
/* v3.88.1 subject groups */
.mm-wz-sgroups{display:grid;gap:6px}
.mm-wz-sgroup{border:1px solid #e1ebe5;border-radius:12px;background:#fff;overflow:hidden}
.mm-wz-sgroup.open{border-color:#b9d8c8}
.mm-wz-shead{display:flex;align-items:center;gap:10px;width:100%;border:0;background:none;padding:11px 12px;font:inherit;text-align:left;cursor:pointer;color:inherit}
.mm-wz-sname{flex:1;min-width:0;display:grid}
.mm-wz-sname small{color:#14634a;font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mm-wz-scount{font-size:.78rem;border-radius:999px;padding:2px 9px;background:#f0f3f1;color:#56665e;white-space:nowrap}
.mm-wz-scount.on{background:#0f5a43;color:#fff;font-weight:700}
.mm-wz-sgroup.open .mm-sec-chev{transform:rotate(180deg)}
.mm-wz-sgroup .chips.selectable{padding:0 12px 12px;margin:0}
/* v3.89.1 deadline banner: use the app as a general user instead */
.mm-v37-deadline-banner .mm-go-general-box{display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.mm-v37-deadline-banner .mm-go-general{font-size:14px;padding:8px 12px}
