/* 详情页 · 快捷详情页 / 模板 / 我的创作（对标竞品「详情页」四个 tab）
   底层沿用 style.css 里的 de-* 布局，这里只补新加的 dp-* 部件。 */

/* ── 左栏：上传素材 / 编辑模板 ── */
.dp-switch{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;background:#f5f3ef;border-radius:9px;margin-bottom:10px}
:root[data-theme=dark] .dp-switch{background:#2b2d2c}
.dp-switch-btn{border:0;background:transparent;color:var(--muted);font-size:12.5px;padding:7px 8px;border-radius:7px;min-height:0;cursor:pointer}
.dp-switch-btn:hover{color:var(--ink)}
.dp-switch-btn.active{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:0 1px 4px #4a3b2a14}

.dp-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:100%;
  padding:22px 10px;border:1.5px dashed var(--border);border-radius:11px;background:transparent;cursor:pointer;min-height:0}
.dp-add:hover{border-color:var(--accent);background:var(--soft)}
.dp-add-icon{font-size:17px;color:var(--muted);line-height:1}
.dp-add strong{font-size:12.5px;color:var(--ink)}
.dp-add-hint{font-style:normal;font-size:10.5px;color:var(--muted)}

/* ── 工具条 ── */
.dp-bar-btn{}
.dp-sep{width:1px;height:18px;background:var(--border);margin:0 3px}
.dp-num{width:60px;font-size:11.5px;padding:4px 6px;min-height:0}
.dp-color{width:30px;height:24px;padding:1px;min-height:0;flex:none}
.dp-font{width:auto;max-width:130px;font-size:11.5px;padding:4px 6px;min-height:0;margin-top:0}
.dp-fav.on{color:#b8860b;border-color:#e6cf9a;background:#fdf7e9}

/* ── 空状态 ── */
.dp-empty{display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--muted);text-align:center;padding:40px 20px}
.dp-empty-icon{font-size:30px;opacity:.5;line-height:1}
.dp-empty strong{font-size:14px;color:var(--ink)}
.dp-empty p{margin:0;font-size:12px}

/* ── 右侧「责任」 ── */
.dp-duty-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.dp-duty-add{width:24px;height:24px;min-height:0;padding:0;border-radius:7px;border:1px dashed var(--border);background:transparent;color:var(--muted);font-size:13px;cursor:pointer}
.dp-duty-add:hover{border-color:var(--accent);color:var(--accent)}
.dp-duty-now{margin:0;font-size:12.5px;color:var(--ink);font-weight:500}
.dp-duty-hint{margin:0;font-size:12px;color:var(--muted);text-align:center;padding:6px 0}
.de-layer-no{font-size:10.5px;color:var(--muted);font-variant-numeric:tabular-nums;flex:none}

/* ── 模板库 ── */
.dp-gallery{display:flex;flex-direction:column;gap:14px}
.dp-gtabs{display:flex;gap:4px;padding:4px;background:#f5f3ef;border-radius:10px;width:fit-content}
:root[data-theme=dark] .dp-gtabs{background:#2b2d2c}
.dp-gtab{border:0;background:transparent;color:var(--muted);font-size:13px;padding:8px 22px;border-radius:8px;min-height:0;cursor:pointer}
.dp-gtab:hover{color:var(--ink)}
.dp-gtab.active{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:0 1px 5px #4a3b2a18}

.dp-filters{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.dp-filters input{width:min(260px,52vw);font-size:12.5px}
.dp-filters select{width:auto;font-size:12.5px;margin-top:0}

.dp-kinds{display:flex;gap:8px;flex-wrap:wrap}
.dp-kind{border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:12.5px;padding:7px 16px;border-radius:9px;min-height:0;cursor:pointer}
.dp-kind:hover{border-color:var(--accent);color:var(--ink)}
.dp-kind.active{background:var(--soft);border-color:var(--accent);color:var(--ink);font-weight:600}

.dp-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(196px,1fr));gap:16px}
.dp-newcard{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;aspect-ratio:3/4;
  border:1.5px dashed var(--border);border-radius:12px;background:#fbfaf8;cursor:pointer;min-height:0}
:root[data-theme=dark] .dp-newcard{background:#232625}
.dp-newcard:hover{border-color:var(--accent);background:var(--soft)}
.dp-newcard-icon{font-size:26px;color:var(--muted);line-height:1}
.dp-newcard strong{font-size:13px;color:var(--ink)}

.dp-card{border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden;display:flex;flex-direction:column}
.dp-card.active{border-color:var(--accent);box-shadow:0 0 0 2px var(--soft)}
.dp-cover{position:relative;aspect-ratio:3/4;background:#efece7;display:flex;align-items:center;justify-content:center;overflow:hidden}
.dp-thumb{display:block;max-width:100%;max-height:100%;box-shadow:0 2px 10px #4a3b2a1f}
.dp-cover-badges{position:absolute;left:8px;top:8px;display:flex;gap:5px;flex-wrap:wrap;max-width:calc(100% - 46px)}
.dp-badge{font-size:10.5px;padding:2px 8px;border-radius:20px;font-weight:600;white-space:nowrap}
.dp-badge.sys{background:#f0ede8;color:#6b645b}
.dp-badge.free{background:#e9f2ec;color:#2f6b4d}
.dp-star{position:absolute;right:6px;top:6px;width:26px;height:26px;min-height:0;padding:0;border-radius:50%;
  border:1px solid var(--border);background:#ffffffd9;color:var(--muted);font-size:13px;line-height:1;cursor:pointer}
.dp-star:hover{color:#b8860b;border-color:#e6cf9a}
.dp-star.on{color:#b8860b;background:#fdf7e9;border-color:#e6cf9a}
.dp-card-body{padding:10px 12px 12px;display:flex;flex-direction:column;gap:5px;flex:1}
.dp-card-body strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dp-card-sub{margin:0;font-size:11px;color:var(--muted)}
.dp-card-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto}
.dp-rev{font-size:10.5px;color:var(--muted);font-variant-numeric:tabular-nums;letter-spacing:.06em}
.dp-go{border:1px solid var(--border);background:var(--surface);color:var(--ink);font-size:12px;padding:6px 14px;border-radius:8px;min-height:0;cursor:pointer}
.dp-go:hover{border-color:var(--accent);color:var(--accent)}
.dp-del{border:1px solid var(--border);background:transparent;color:var(--muted);font-size:12px;padding:6px 12px;border-radius:8px;min-height:0;cursor:pointer}
.dp-del:hover{border-color:#e0b3ab;color:#b3372b}
.dp-empty-note{grid-column:1/-1;margin:0}

/* ── 我的创作 ── */
.dp-projects{display:flex;flex-direction:column;gap:14px}
.dp-projects-head{display:flex;align-items:center;gap:12px}
.dp-projects-head h3{margin:0;font-size:15px}
.dp-projects-head .primary{margin-left:auto;width:auto}
.dp-project-cover{aspect-ratio:4/3}

/* ── 打开项目弹窗 ── */
.dp-picker{max-width:min(620px,94vw)}
.dp-picker-list{max-height:52vh;overflow:auto;margin-top:10px}

@media(max-width:700px){
 .dp-filters{justify-content:flex-start}
 .dp-filters input{width:100%}
}
