/* Student learning is designed for a landscape Android tablet. The tutor view
   previews a phone mini-program inside the same offline HTML. */
.workspace.miniapp-workspace{margin:0;padding:22px 18px 28px;min-height:100dvh;background:#eaf0f7;display:flex;flex-direction:column;align-items:center;gap:16px}
.miniapp-demo-bar{width:100%;max-width:720px;min-height:36px;display:flex;justify-content:space-between;align-items:center;gap:14px}
.miniapp-device-label{font-size:13px;color:#5b718b;font-weight:600;letter-spacing:.5px}
.miniapp-demo-bar .role-switch{background:#dce7f4;border-color:#cfdeee}
.miniapp-demo-bar .role-switch>span,.miniapp-demo-bar .role-switch button{color:#5c7593}
.miniapp-demo-bar .role-switch button.active{color:#1a6fc4;background:#fff;box-shadow:0 1px 4px #173e6a12}
.miniapp-demo-bar .role-switch button:focus-visible{outline-color:#1a6fc4}
.miniapp-phone{width:100%;max-width:440px;height:calc(100dvh - 102px);min-height:360px;display:flex;flex-direction:column;overflow:hidden;border-radius:22px;border:1px solid #d5e0ed;background:#f3f6fa;box-shadow:0 16px 50px #314e701a}
.miniapp-nav{height:52px;min-height:52px;background:#fff;display:flex;align-items:center;justify-content:center;position:relative;border-bottom:1px solid #eef1f5;color:#233c58}
.miniapp-nav>b{font-size:16px;letter-spacing:1px;font-weight:600}
.miniapp-capsule{position:absolute;right:12px;top:12px;display:flex;align-items:center;justify-content:center;gap:9px;height:28px;width:78px;border:1px solid #e0e5ea;border-radius:18px;color:#263744;line-height:1}
.miniapp-capsule>span:first-child{font-size:15px;letter-spacing:1px}
.miniapp-capsule>span:last-child{font-size:17px}
.miniapp-capsule>i{width:1px;height:15px;background:#e0e5ea}
.main.miniapp-main{width:100%;max-width:none;margin:0;padding:0;min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;scroll-behavior:auto;scrollbar-width:thin;scrollbar-color:#cbd7e5 transparent}
body:has(.miniapp-workspace) #modal-root .modal{width:100%;max-width:440px;max-height:90dvh;border-radius:18px}
body:has(.miniapp-workspace) #modal-root .modal-backdrop{padding:20px}
body:has(.miniapp-workspace) #modal-root .modal-head{padding:17px 18px}
body:has(.miniapp-workspace) #modal-root .modal-body{padding:18px}
body:has(.miniapp-workspace) #toast{max-width:380px;font-size:13px}
.workspace[data-view-role="student"] .oln-complete{min-height:48px}
.workspace[data-view-role="student"] .os-step-flow-item{min-height:44px}
@media(min-width:900px){.workspace[data-view-role="student"] .subjectbar button{min-height:44px}.workspace[data-view-role="student"] .text-button,.workspace[data-view-role="student"] .delivery-device button{min-height:44px}.workspace[data-view-role="student"] .icon-button{min-width:44px;min-height:44px}.workspace[data-view-role="student"] .role-switch button{min-height:38px}}
@media(max-width:520px){.workspace.miniapp-workspace{padding:0;gap:0;background:#f3f6fa}.miniapp-demo-bar{padding:6px 12px;height:52px;min-height:52px;background:#eaf0f7;gap:8px;flex-shrink:0}.miniapp-device-label{font-size:11px}.miniapp-demo-bar .role-switch>span{display:none}.miniapp-demo-bar .role-switch button{font-size:11px;min-height:32px;padding:5px 10px}.miniapp-phone{max-width:none;height:calc(100dvh - 52px);min-height:300px;border:0;border-radius:0;box-shadow:none}.miniapp-nav{height:48px;min-height:48px}.miniapp-capsule{top:10px}body:has(.miniapp-workspace) #modal-root .modal-backdrop{padding:10px}}
@media print{.miniapp-demo-bar,.miniapp-nav{display:none!important}.workspace.miniapp-workspace{display:block;padding:0!important;background:#fff}.miniapp-phone{height:auto;max-width:none;display:block;overflow:visible;border:0;border-radius:0;box-shadow:none}.main.miniapp-main{overflow:visible;display:block}}
