/* PBL 资料同步 / 学生提问：独立模块样式（不改动原页面既有样式） */
:root { --ps-accent:#1f8f78; --ps-line:#dbe7ef; }
.pblshare-card{margin-top:16px;background:#fff;border:1px solid var(--ps-line);border-radius:16px;padding:18px;box-shadow:0 2px 10px rgba(16,42,67,.05)}
.pblshare-card h2{margin:0;font-size:16px;color:#0f2744;display:flex;align-items:center;gap:8px}
.pblshare-sub{font-size:12px;color:#6b7c8f;margin:4px 0 12px;line-height:1.55}
.pblshare-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.pblshare-input, .pblshare-textarea, .pblshare-file{font:inherit;border:1px solid #cfdeea;border-radius:10px;padding:9px 11px;background:#f8fbfd;color:#16324f;outline:none}
.pblshare-input:focus,.pblshare-textarea:focus{border-color:#67b7a5;box-shadow:0 0 0 3px rgba(31,143,120,.10)}
.pblshare-input{flex:1;min-width:140px;font-size:12.5px}
.pblshare-textarea{width:100%;min-height:64px;resize:vertical;font-size:13px;line-height:1.6}
.pblshare-btn{font:inherit;border:0;border-radius:10px;padding:9px 15px;background:var(--ps-accent);color:#fff;font-weight:700;cursor:pointer;font-size:13px}
.pblshare-btn:hover{filter:brightness(1.05)}
.pblshare-btn.ghost{background:#eef6f3;color:#1f6f5c;border:1px solid #c9e4dc}
.pblshare-btn:disabled{opacity:.55;cursor:not-allowed}
.pblshare-list{display:flex;flex-direction:column;gap:9px;margin-top:12px;max-height:360px;overflow:auto;padding-right:3px}
.pblshare-item{border:1px solid #e2edf4;background:#fbfdff;border-radius:12px;padding:10px 11px}
.pblshare-item .t{display:flex;align-items:center;gap:8px;font-weight:700;font-size:13px;color:#12385a;word-break:break-all}
.pblshare-item .t .tag{font-weight:600;font-size:10.5px;padding:2px 7px;border-radius:999px;background:#e7f5f1;color:#1f7a64;white-space:nowrap}
.pblshare-item .m{font-size:11.5px;color:#7b8da3;margin-top:4px;line-height:1.6}
.pblshare-item .note{font-size:12.5px;color:#35506b;margin-top:6px;background:#f3f8fb;border-left:3px solid #9ec9bd;padding:6px 8px;border-radius:0 7px 7px 0;line-height:1.6}
.pblshare-voice{font-size:11.5px;margin-top:7px;color:#1f6f5c;background:#f0faf6;border:1px solid #d7eee6;border-radius:8px;padding:6px 8px;line-height:1.55}
.pblshare-voice.none{color:#8a6b2a;background:#fffaf0;border-color:#f0e1bf}
.pblshare-voice b{font-weight:700}
.pblshare-actions{display:flex;gap:8px;margin-top:9px;flex-wrap:wrap}
.pblshare-actions a,.pblshare-actions button{font:inherit;font-size:12px;border-radius:8px;padding:6px 10px;border:1px solid #cfe0eb;background:#fff;color:#225070;text-decoration:none;cursor:pointer}
.pblshare-actions a:hover,.pblshare-actions button:hover{background:#eef7fb}
.pblshare-empty{font-size:12.5px;color:#8a9bad;padding:14px;border:1px dashed #d5e2ec;border-radius:10px;text-align:center;margin-top:10px}
.pblshare-count{font-size:11.5px;color:#6b7c8f;font-weight:500;margin-left:auto}
.pblshare-drop{border:1px dashed #b9d8ce;background:#f7fcfa;border-radius:12px;padding:10px 12px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.pblshare-drop .hint{font-size:11.5px;color:#7d918d;line-height:1.5}
.pblshare-status{font-size:11.5px;color:#1f7a64;margin-top:7px;min-height:16px}
.pblshare-status.err{color:#b44545}
/* 文件查看浮层 */
.pblshare-viewer{position:fixed;inset:0;z-index:9999;background:rgba(7,13,22,.62);backdrop-filter:blur(4px);display:none;align-items:center;justify-content:center;padding:18px}
.pblshare-viewer.on{display:flex}
.pblshare-viewer .box{width:min(1000px,96vw);height:min(86vh,900px);background:#fff;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 24px 70px rgba(0,0,0,.35)}
.pblshare-viewer .hd{display:flex;align-items:center;gap:10px;padding:11px 14px;border-bottom:1px solid #e2edf4;background:#f8fbfd;color:#16324f}
.pblshare-viewer .hd .nm{font-weight:700;font-size:13px;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pblshare-viewer .hd a,.pblshare-viewer .hd button{font-size:12px;border:1px solid #cfe0eb;background:#fff;border-radius:8px;padding:6px 10px;color:#225070;cursor:pointer;text-decoration:none}
.pblshare-viewer .bd{flex:1;overflow:auto;background:#eef3f7;display:flex;align-items:center;justify-content:center}
.pblshare-viewer iframe{width:100%;height:100%;border:0;background:#fff}
.pblshare-viewer img{max-width:100%;max-height:100%;object-fit:contain;background:#fff}
.pblshare-viewer video{max-width:100%;max-height:100%;background:#000}
.pblshare-viewer pre{width:100%;height:100%;overflow:auto;margin:0;padding:16px;background:#fff;color:#1c2b3a;font:13px/1.65 Consolas,"Microsoft YaHei",monospace;white-space:pre-wrap}
.pblshare-viewer .fallback{padding:30px;text-align:center;color:#51708a;font-size:13px;line-height:2}
/* 教师抽屉 */
.pblshare-drawer{position:fixed;inset:0;z-index:9998;background:rgba(7,13,22,.58);backdrop-filter:blur(3px);display:none;justify-content:flex-end}
.pblshare-drawer.on{display:flex}
.pblshare-drawer .panel{width:min(620px,96vw);height:100%;background:#0f1929;color:#e8f0ff;border-left:1px solid #243955;display:flex;flex-direction:column;box-shadow:-18px 0 50px rgba(0,0,0,.35)}
.pblshare-drawer .hd{padding:16px 18px;border-bottom:1px solid #243955;display:flex;align-items:center;gap:10px}
.pblshare-drawer .hd h2{margin:0;font-size:17px;color:#eaf4ff}
.pblshare-drawer .hd .x{margin-left:auto;background:#182741;border:1px solid #2d4867;color:#cfe1ff;border-radius:9px;padding:6px 10px;cursor:pointer}
.pblshare-drawer .body{padding:14px 16px;overflow:auto;flex:1}
.pblshare-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}
.pblshare-kpi{background:#152238;border:1px solid #263b57;border-radius:11px;padding:9px 10px}
.pblshare-kpi .k{font-size:10.5px;color:#8fa6c2}.pblshare-kpi .v{font:700 19px/1.3 ui-monospace,Consolas,monospace;margin-top:2px;color:#dff3ff}
.pblshare-drawer .tabs{display:flex;gap:7px;margin:4px 0 10px}
.pblshare-drawer .tabs button{border:1px solid #2b4361;background:#152238;color:#a9c0da;border-radius:9px;padding:6px 11px;font-size:12px;cursor:pointer}
.pblshare-drawer .tabs button.on{background:#1d4b47;border-color:#2f7569;color:#c8fff0}
.pblshare-drawer .pblshare-item{background:#152238;border-color:#263b57}
.pblshare-drawer .pblshare-item .t{color:#e5f0ff}
.pblshare-drawer .pblshare-item .m{color:#8fa6c2}
.pblshare-drawer .pblshare-item .note{background:#101d30;color:#b9cce0;border-left-color:#2f7569}
.pblshare-drawer .pblshare-voice{background:#102a26;border-color:#234d45;color:#a8e7d7}
.pblshare-drawer .pblshare-voice.none{background:#2a2314;border-color:#5b4a27;color:#e8c982}
.pblshare-drawer .pblshare-actions a,.pblshare-drawer .pblshare-actions button{background:#182741;border-color:#2d4867;color:#cfe1ff}
.pblshare-drawer .pblshare-empty{color:#8fa6c2;border-color:#2b4361}
.pblshare-drawer .pblshare-status{color:#8fe3cd}
.pblshare-drawer .pblshare-status.err{color:#f0a0a0}
@media(max-width:720px){.pblshare-kpis{grid-template-columns:repeat(2,1fr)}.pblshare-list{max-height:320px}}

/* 学生端：资料抽屉 + 右侧问题同步 */
.pblshare-duo{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:16px;margin-top:16px;align-items:start}
.pblshare-duo .pblshare-card{margin-top:0;min-width:0}
.pblshare-drawers{display:flex;flex-direction:column;gap:8px;margin-top:10px;max-height:420px;overflow:auto;padding-right:3px}
.pblshare-drawer-item{border:1px solid #e2edf4;background:#fbfdff;border-radius:11px;overflow:hidden}
.pblshare-drawer-item>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;padding:10px 12px;color:#12385a;font-weight:700;font-size:13px;user-select:none}
.pblshare-drawer-item>summary::-webkit-details-marker{display:none}
.pblshare-drawer-item>summary:hover{background:#f3faf7}
.pblshare-drawer-item .nm{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pblshare-drawer-item .cnt{font-size:11px;font-weight:600;color:#1f7a64;background:#eaf7f2;border-radius:999px;padding:2px 8px;white-space:nowrap}
.pblshare-drawer-item .chev{font-size:13px;color:#8aa1b6;transition:transform .15s}
.pblshare-drawer-item[open] .chev{transform:rotate(180deg)}
.pblshare-drawer-item .body{padding:8px 9px 10px;border-top:1px solid #e8f1f6;background:#fff}
.pblshare-drawer-item .body .pblshare-item{margin-top:7px;background:#fbfdff}
.pblshare-drawer-item .body .pblshare-item:first-child{margin-top:0}
.pblshare-qgroups{display:flex;flex-direction:column;gap:10px;margin-top:10px;max-height:420px;overflow:auto;padding-right:3px}
.pblshare-qgroup{background:#f8fbfd;border:1px solid #e2edf4;border-radius:11px;padding:9px}
.pblshare-qgroup .qname{display:flex;align-items:center;justify-content:space-between;gap:8px;font-weight:700;color:#12385a;font-size:12.5px;margin-bottom:6px}
.pblshare-qgroup .qname span:last-child{font-weight:600;font-size:10.5px;color:#1f7a64;background:#eaf7f2;padding:2px 7px;border-radius:999px}
.pblshare-qgroup .pblshare-item{background:#fff;border-color:#e6eff5;margin-top:6px}
.pblshare-qgroup .pblshare-item:first-of-type{margin-top:0}
@media(max-width:980px){.pblshare-duo{grid-template-columns:1fr}.pblshare-drawers,.pblshare-qgroups{max-height:none}}


/* 推送状态由课程模块显式驱动；空态不占正文阅读高度 */
#s-course-card.is-unpushed,#s-course-card.is-tab-empty{height:auto;min-height:0}
#s-course-card.is-unpushed #s-course-body,#s-course-card.is-tab-empty #s-course-body{min-height:0;height:auto;max-height:none;overflow:visible}
#s-course-card.is-unpushed #s-course-tabs{display:none}
#s-course-card.is-unpushed .course-empty{padding:8px 0;text-align:left}
#s-course-card.is-unpushed .course-empty .ico{display:none}
#s-course-card.is-unpushed .course-empty .t1{font-size:13px;margin:0 0 3px}
#s-course-card.is-unpushed .course-empty .t2{font-size:12px}
#s-course-card.is-unpushed #s-course-body p{margin:4px 0;font-size:12px}
.pblshare-file{width:100%;min-width:0;max-width:100%;font-size:12px;box-sizing:border-box}
.pblshare-duo .pblshare-card{padding:16px}
.pblshare-history{padding:10px;font-size:12px;color:#51708a}

/* 学生端单页四标签工作区 */
.pbl-tab-workspace{width:min(1180px,calc(100% - 36px));margin:0 auto 28px}
.pbl-tabbar{display:flex;align-items:center;gap:8px;overflow-x:auto;padding:6px;margin:2px 0 12px;background:#fff;border:1px solid #e0eaf2;border-radius:14px;box-shadow:0 2px 10px rgba(16,42,67,.04)}
.pbl-tabbar button{flex:0 0 auto;border:0;background:transparent;color:#51708a;font:inherit;font-weight:700;font-size:13.5px;padding:9px 16px;border-radius:10px;cursor:pointer;display:flex;align-items:center;gap:7px;transition:.15s}
.pbl-tabbar button:hover{background:#f1f8fa;color:#1f6f8b}
.pbl-tabbar button.on{background:#e7f5f2;color:#126b58;box-shadow:0 0 0 1px #c9e8df inset}
.pbl-tab-n{min-width:18px;height:18px;line-height:18px;padding:0 5px;border-radius:999px;background:#edf4f8;color:#51708a;font-size:10.5px;font-weight:700;text-align:center}
.pbl-tab-n:empty{display:none}
.pbl-tabbar button.on .pbl-tab-n{background:#1f8f78;color:#fff}
.pbl-tabpanel{display:none}
.pbl-tabpanel.on{display:block;animation:pbltabin .18s ease}
@keyframes pbltabin{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}
.pbl-tabpanel>.card,.pbl-tabpanel>.pblshare-card{margin:0;width:100%;min-width:0}
.pbl-tabpanel .stu-side{display:flex;flex-direction:column;gap:14px}
.pbl-tabpanel .stu-side .card{width:100%;margin:0}
.pbl-tabpanel #s-feed{max-height:60vh}
.pbl-tabpanel .pblshare-duo{display:block;margin-top:0}
.pbl-tabpanel .pblshare-card{margin-top:0}
.pbl-tabpanel #pblshare-flist,.pbl-tabpanel .pblshare-drawers,.pbl-tabpanel .pblshare-qgroups{max-height:55vh}
.stu-grid{display:none!important}
@media(max-width:920px){.pbl-tab-workspace{width:auto;margin:0 14px 20px}.pbl-tabbar{padding:5px}.pbl-tabbar button{padding:8px 12px;font-size:12.5px}}
