/* M-81B book management extends the existing roster surface and token scale. */
.ro-books{grid-template-columns:repeat(auto-fill,minmax(min(250px,100%),1fr))}
.ro-book{min-width:0;display:flex;flex-direction:column;justify-content:space-between;gap:12px;cursor:default}
.ro-book-pick{min-width:0;display:flex;align-items:flex-start;gap:10px;cursor:pointer}
.ro-book-pick span{min-width:0;overflow-wrap:anywhere}
.ro-book-pick input{flex:none}
.ro-book-actions,.ro-history-actions{display:flex;flex-wrap:wrap;gap:8px}
.ro-book-actions{padding-left:28px}
.ro-book-actions .btn,.ro-history-actions .btn{min-height:44px}
.ro-book-actions .ro-book-delete{border:0;background:transparent;color:var(--muted);padding-inline:12px}
.ro-book-actions .ro-book-delete:hover{background:var(--bad-s);color:var(--bad-d)}
.ro-book-compat{margin:16px 0 0;padding:12px 16px;background:var(--amber-0);border-radius:var(--r-sm);color:var(--amber-d);font-size:var(--fs-ui);line-height:1.6}
.ro-book-history{margin-top:24px;padding-top:16px;border-top:1px solid var(--line)}
.ro-book-history>summary{min-height:44px;display:flex;align-items:center;gap:8px;cursor:pointer;color:var(--ink);font-size:var(--fs-h3);font-weight:600}
.ro-history-count{font-size:var(--fs-ui);font-weight:400;color:var(--muted)}
.ro-history-body{padding:4px 0 0}
.ro-history-body>.small{margin:0 0 12px}
.ro-history-list{display:grid;gap:8px}
.ro-history-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;background:var(--soft);border-radius:var(--r-sm)}
.ro-history-item>div:first-child{min-width:0;overflow-wrap:anywhere}
.ro-history-item b{display:block;font-size:var(--fs-ui);color:var(--ink)}
.ro-history-item small{display:block;margin-top:4px;color:var(--muted);font-size:var(--fs-sm)}
.ro-history-actions{flex:none}
.ro-history-state,.ro-history-error{padding:16px;color:var(--muted);background:var(--soft);border-radius:var(--r-sm)}
.ro-history-error{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--bad-d)}
.mbm{color:var(--ink)}
.mbm-head{padding:4px 48px 20px 0}
.mbm-head h2{overflow-wrap:anywhere;line-height:1.3}
.mbm-head p{margin:8px 0 0;color:var(--muted);font-size:var(--fs-ui);line-height:1.6}
.mbm-sections{display:grid;gap:8px}
.mbm-section{overflow:hidden;border-radius:var(--r-sm);background:var(--soft)}
.mbm-section>button{width:100%;min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;border:0;background:transparent;text-align:left;color:var(--ink);font:600 var(--fs-ui)/1.5 var(--font);cursor:pointer}
.mbm-section>button:hover,.mbm-section>button[aria-expanded=true]{background:var(--pri-s)}
.mbm-section>button small{flex:none;font-size:var(--fs-sm);font-weight:500;color:var(--muted)}
.mbm-section-body{padding:0 12px 12px}
.mbm-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,44%);align-items:start;gap:16px;padding:16px;background:var(--panel);border-radius:var(--r-xs)}
.mbm-row+.mbm-row{margin-top:8px}
.mbm-row>div:first-child{min-width:0}
.mbm-row b{font-size:var(--fs-ui);font-weight:600}
.mbm-row span{display:block;margin-top:4px;color:var(--muted);font-size:var(--fs-sm)}
.mbm-row p{margin:8px 0 12px;color:var(--muted);font-size:var(--fs-ui);line-height:1.5}
.mbm-row a{min-height:44px;display:inline-flex;align-items:center}
.mbm-image{min-height:96px;display:flex;align-items:center;justify-content:center;background:var(--soft);border-radius:var(--r-xs);overflow:hidden}
.mbm-image img{display:block;width:100%;max-height:320px;object-fit:contain}
.mbm-image span{margin:0;padding:16px;text-align:center}
.mbm-missing{display:block;color:var(--bad-d);line-height:1.5}
.mbm-state,.mbm-error{padding:20px 16px;border-radius:var(--r-sm);background:var(--soft);color:var(--muted);line-height:1.6}
.mbm-error{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--bad-d);background:var(--bad-s)}
.mbm-error .btn,.ro-history-error .btn{flex:none;min-height:44px}
.ro-book :focus-visible,.ro-book-history :focus-visible,.mbm :focus-visible{outline:2px solid var(--focus);outline-offset:2px}
@media(max-width:600px){
  .ro-book-actions{padding-left:0}
  .ro-history-item{align-items:flex-start;flex-direction:column}
  .ro-history-actions{width:100%}
  .mbm-row{grid-template-columns:1fr}
  .mbm-head{padding-right:40px}
  .mbm-error,.ro-history-error{align-items:flex-start;flex-direction:column}
}
/* M-102 上传书的知识点打标状态：一行小字，重试是行内链接 */
.ro-book-kp{margin:0;padding-left:28px;color:var(--muted);font-size:var(--fs-ui);line-height:1.6;overflow-wrap:anywhere}
.ro-book-kp .rowlink{min-height:44px;padding-inline:4px}
