/* ============================================================
 * P0c191 —— 封面镜头专项管理（封面库面板 + 封面独立生成任务）
 * 宿主：projects.html（工程墙）/ tasks.html（任务队列）
 * 颜色全部复用既有浅蓝白体系（#38BDF8 / #38BDF8 / #1d2129 / #e6f4ff…），零深色
 * 容器前缀 .p0c-*，绝不污染既有 .i3-* / .i5-* 样式
 * ============================================================ */

/* ---------- 工程卡上的「封面库」入口按钮 ---------- */
.i3-ops .p0c-libbtn { background:#e6f4ff; color:#1d2129; }
.i3-ops .p0c-libbtn:hover { background:#DFEBF9; }
/* CSS 合成封面时隐藏 I3 默认的大字字母占位 */
.i3-cover.p0c-cov-title .i3-cover-ic,
.i3-cover.p0c-cov-grad .i3-cover-ic { display:none; }

/* ---------- 封面墙补丁：CSS 合成封面的底 ---------- */
.i3-cover.p0c-cov-title { background:linear-gradient(165deg,#e6f4ff 0%,#DEEBFB 45%,#CEE2F8 100%) !important; }
.i3-cover.p0c-cov-grad { background:linear-gradient(160deg,#f7f9fc 0%,#D8E7FA 60%,#C9DFF8 100%) !important; }
.i3-cover .p0c-covtitle {
  position:absolute; left:8px; right:8px; top:50%; transform:translateY(-50%);
  text-align:center; font-size:13px; font-weight:700; line-height:1.4;
  color:#1d2129; text-shadow:0 1px 0 rgba(255,255,255,.6); pointer-events:none;
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;
}
.i3-cover .p0c-covnone {
  position:absolute; left:0; right:0; bottom:22%; text-align:center;
  font-size:12px; color:#7A93B5; pointer-events:none;
}

/* ---------- 封面库弹窗 ---------- */
.p0c-mask { position:fixed; inset:0; background:rgba(30,42,58,.42); z-index:95; display:flex; align-items:center; justify-content:center; }
.p0c-modal { background:#fff; border-radius:16px; padding:22px; width:min(720px,94vw); max-height:88vh; overflow-y:auto; box-shadow:0 20px 60px rgba(29,33,41,.25); }
.p0c-m-title { font-size:16px; font-weight:700; display:flex; align-items:center; gap:8px; }
.p0c-m-close { margin-left:auto; border:0; background:#e6f4ff; color:#1d2129; width:28px; height:28px; border-radius:8px; cursor:pointer; font-size:14px; }
.p0c-guide { margin:8px 0 4px; font-size:13px; color:#606266; background:#F2F7FD; border:1px dashed rgba(56,189,248,.45); border-radius:12px; padding:8px 11px; line-height:1.5; }
.p0c-guide b { color:#1d2129; }
.p0c-vergrid { display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:14px; margin-top:14px; }
.p0c-ver { border:1.5px solid #f5f7fa; border-radius:12px; overflow:hidden; background:#ffffff; transition:all .18s; }
.p0c-ver.p0c-on { border-color:#38BDF8; box-shadow:0 0 0 3px rgba(56,189,248,.18); }
.p0c-thumb { position:relative; aspect-ratio:9/13; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.p0c-thumb img { width:100%; height:100%; object-fit:cover; }
.p0c-th-title { background:linear-gradient(165deg,#e6f4ff 0%,#DEEBFB 45%,#CEE2F8 100%); }
.p0c-th-title .p0c-th-name { padding:0 12px; text-align:center; font-size:16px; font-weight:700; line-height:1.45; color:#1d2129; }
.p0c-th-grad { background:linear-gradient(160deg,#f7f9fc 0%,#D8E7FA 60%,#C9DFF8 100%); }
.p0c-th-grad .p0c-th-none { font-size:12px; color:#7A93B5; }
.p0c-badge-on { position:absolute; top:8px; left:8px; background:linear-gradient(90deg,#38BDF8,#38BDF8); color:#fff; font-size:12px; font-weight:600; padding:3px 9px; border-radius:999px; }
.p0c-ver-meta { padding:9px 10px 11px; }
.p0c-ver-name { font-size:13px; font-weight:600; color:#1d2129; }
.p0c-ver-sub { font-size:12px; color:#606266; margin-top:2px; line-height:1.4; }
.p0c-ver-ops { display:flex; gap:6px; margin-top:9px; }
.p0c-ver-ops button { flex:1; padding:6px 0; border-radius:8px; border:0; cursor:pointer; font-size:12px; font-weight:600; transition:all .15s; }
.p0c-vset { background:linear-gradient(90deg,#38BDF8,#38BDF8); color:#fff; }
.p0c-vset:hover { filter:brightness(1.07); }
.p0c-vset[disabled] { background:#e6f4ff; color:#9DB4D0; cursor:default; }
.p0c-vdel { background:#ffece8; color:#f53f3f; }
.p0c-vdel:hover { filter:brightness(.97); }
.p0c-foot { margin-top:14px; display:flex; align-items:center; gap:10px; }
.p0c-foot .p0c-hint { flex:1; font-size:12px; color:#606266; }
.p0c-reset { background:#e6f4ff; color:#1d2129; border:0; border-radius:12px; padding:7px 13px; font-size:13px; font-weight:600; cursor:pointer; }
.p0c-reset:hover { background:#DFEBF9; }
.p0c-empty-ver { grid-column:1/-1; text-align:center; padding:26px 10px; color:#606266; font-size:14px; }

/* ---------- tasks.html：封面独立生成入口区 ---------- */
.p0c-taskbox { margin:18px 0 4px; }
.p0c-tb-head { display:flex; align-items:center; gap:8px; font-size:16px; font-weight:700; }
.p0c-tb-guide { margin-top:6px; font-size:13px; color:#606266; background:#F2F7FD; border:1px dashed rgba(56,189,248,.45); border-radius:12px; padding:8px 11px; line-height:1.5; }
.p0c-tb-guide b { color:#1d2129; }
.p0c-tb-row { display:flex; gap:10px; margin-top:12px; align-items:center; flex-wrap:wrap; }
.p0c-tb-row .v10-inp { width:240px; }
.p0c-tb-note { font-size:12px; color:#7A93B5; }
.p0c-ledger { margin-top:12px; border-top:1px dashed rgba(56,189,248,.4); padding-top:10px; }
.p0c-ledger-h { font-size:13px; font-weight:600; color:#1d2129; margin-bottom:8px; }
.p0c-lrow { display:flex; align-items:center; gap:10px; padding:8px 10px; border:1px solid #f5f7fa; border-radius:12px; background:#ffffff; margin-bottom:7px; font-size:13px; }
.p0c-lrow .p0c-l-no { font-weight:700; color:#1d2129; }
.p0c-lrow .p0c-l-badge { font-size:12px; padding:2px 8px; border-radius:999px; background:#e6f4ff; color:#1d2129; }
.p0c-lrow .p0c-l-badge.p0c-l-local { background:#FFF6E8; color:#A97B2F; }
.p0c-lrow .p0c-l-meta { flex:1; color:#606266; font-size:13px; }
.p0c-lrow .p0c-l-del { border:0; background:#ffece8; color:#f53f3f; border-radius:8px; padding:4px 10px; font-size:12px; cursor:pointer; }
.p0c-ledger-empty { font-size:13px; color:#7A93B5; padding:6px 2px; }
