/* Workspace React adapter. Existing PHP/navigation remains authoritative. */
#lop-react-workspace-root{position:relative;z-index:2147481900}.lop-react-workspace-dock{display:none}
html.lop-react-workspace-mounted body[data-lop-react-surface="workspace"] :where(.lopsp-info-main,.lopcw-main,.loptw-main,.lopsp-main){min-width:0}
html.lop-react-workspace-mounted body[data-lop-react-surface="workspace"] :where(.lopsp-grid,.lopcw-grid,.loptw-grid){min-width:0}
html.lop-react-workspace-mounted body[data-lop-react-surface="workspace"] :where(.lopsp-grid>*,.lopcw-grid>*,.loptw-grid>*){min-width:0}
html.lop-react-workspace-mounted body[data-lop-react-surface="workspace"] :where(.lopsp-page-head,.lopcw-page-intro,.loptw-page-intro){overflow-wrap:anywhere}
@media(max-width:767px){
 html.lop-react-workspace-mounted body[data-lop-react-surface="workspace"]{padding-bottom:74px!important}
 .lop-react-workspace-dock{position:fixed;left:10px;right:10px;bottom:max(10px,env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 9px;border:1px solid rgba(148,163,184,.34);border-radius:18px;background:rgba(255,255,255,.95);box-shadow:0 18px 50px rgba(15,23,42,.16);backdrop-filter:blur(16px);pointer-events:auto}
 .lop-react-workspace-dock__label{min-width:0;display:grid;gap:1px;padding-left:5px}.lop-react-workspace-dock__label small{font:800 9px/1.2 system-ui;text-transform:uppercase;letter-spacing:.08em;color:#64748b}.lop-react-workspace-dock__label strong{max-width:48vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:850 12px/1.3 system-ui;color:#0f172a}
 .lop-react-workspace-dock__actions{display:flex;gap:5px}.lop-react-workspace-dock button{display:grid;place-items:center;gap:1px;min-width:52px;min-height:46px;padding:4px 8px;border:0;border-radius:12px;background:#eef2ff;color:#312e81}.lop-react-workspace-dock button span{font-size:17px;line-height:1}.lop-react-workspace-dock button b{font:800 9px/1.1 system-ui}
}

/* Shared lightweight Workspace footer. It is React-owned presentation only; legacy role footers remain as fallback and are hidden only after a successful mount. */
html.lop-react-workspace-mounted body[data-lop-react-surface="workspace"] :where(.loptw-footer,.lopcw-footer){display:none!important}
.lop-react-workspace-footer{position:relative;z-index:1;box-sizing:border-box;width:auto;min-width:0;margin:0;padding:12px clamp(16px,2vw,28px);border-top:1px solid rgba(148,163,184,.22);background:rgba(255,255,255,.72);color:#7b8494;font:500 11px/1.45 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;backdrop-filter:blur(8px)}
.lop-react-workspace-footer__inner{width:100%;max-width:1480px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:14px;min-width:0}
.lop-react-workspace-footer__brand{display:flex;align-items:center;gap:8px;min-width:0}.lop-react-workspace-footer__brand strong{color:#475467;font-size:11.5px;font-weight:800;white-space:nowrap}.lop-react-workspace-footer__brand span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lop-react-workspace-footer__rhythm{display:flex;align-items:center;justify-content:flex-end;gap:7px;white-space:nowrap;color:#98a2b3}.lop-react-workspace-footer__rhythm span[aria-hidden="true"]{color:var(--lopws-primary,#2457e6);font-size:10px}
html.lop-student-workspace-v2803 .lop-react-workspace-footer{margin-left:var(--lop-student-side-width,248px);transition:margin-left .16s ease}
html.lop-student-workspace-v2803.lop-student-sidebar-collapsed .lop-react-workspace-footer{margin-left:var(--lop-student-side-compact,84px)}
body.lop-teacher-workspace-body .lop-react-workspace-footer,body.lop-center-workspace-body .lop-react-workspace-footer{margin-left:var(--lopws-side-width,248px);transition:margin-left .16s ease}
body.lop-companion-workspace-body .lop-react-workspace-footer{margin-left:var(--lop-student-side-width,248px);transition:margin-left .16s ease}
@media(max-width:860px){
 html.lop-student-workspace-v2803 .lop-react-workspace-footer,html.lop-student-workspace-v2803.lop-student-sidebar-collapsed .lop-react-workspace-footer,body.lop-teacher-workspace-body .lop-react-workspace-footer,body.lop-center-workspace-body .lop-react-workspace-footer,body.lop-companion-workspace-body .lop-react-workspace-footer{margin-left:0}
 .lop-react-workspace-footer{padding:11px 14px 86px;background:rgba(255,255,255,.9)}
 .lop-react-workspace-footer__inner{align-items:flex-start;gap:8px}.lop-react-workspace-footer__brand{display:grid;gap:1px}.lop-react-workspace-footer__brand span{white-space:normal}.lop-react-workspace-footer__rhythm{font-size:10px;gap:5px}
}
@media(max-width:520px){.lop-react-workspace-footer__rhythm{display:none}.lop-react-workspace-footer__brand strong{font-size:11px}.lop-react-workspace-footer__brand span{font-size:10.5px}}

/* v2.8.854 — smoother mobile workspace dock; inline React SVG icons, no text glyph dependency. */
.lop-react-workspace-dock button span svg{display:block;width:18px;height:18px}
@media(max-width:767px){
 .lop-react-workspace-dock{min-height:60px;padding:7px 8px;border-radius:17px}
 .lop-react-workspace-dock button{min-height:44px;border-radius:11px}
 .lop-react-workspace-dock__label strong{font-size:11.5px}
}
