
  .topdf-tool .topdf-container { max-width: 860px; }
  .topdf-formats { display:flex; flex-wrap:wrap; justify-content:center; gap:6px; margin:-4px 0 16px; }
  .topdf-formats span.on { border-color: var(--accent); background: color-mix(in srgb, var(--accent) 18%, var(--card)); color: var(--text); }
  .topdf-pop { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 6px 8px; margin: -6px 0 18px; font-size: .84rem; }
  .topdf-pop-l { color: var(--muted); font-weight: 600; }
  .topdf-pop-a { padding: 4px 11px; border-radius: 999px; border: 1px solid var(--border); color: var(--text); text-decoration: none; font-weight: 600; white-space: nowrap; transition: border-color .15s, background .15s; }
  .topdf-pop-a:hover { border-color: var(--accent); }
  .topdf-pop-a[aria-current="page"] { background: var(--accent); border-color: var(--accent); color: var(--accent-text); }
  .topdf-formats span { padding:3px 9px; border:1px solid var(--border); border-radius:999px; background:var(--card); color:var(--muted); font-size:.74rem; font-weight:600; letter-spacing:.02em; }
  .topdf-panel { margin-top:8px; padding:20px 22px; border:1px solid var(--border); border-radius:14px; background:var(--card); }
  .topdf-title { margin:0 0 12px; font-size:1.05rem; font-weight:600; }
  .topdf-list { list-style:none; margin:0; padding:0; display:grid; gap:6px; }
  .topdf-item { display:flex; align-items:center; gap:10px; padding:8px 10px; border:1px solid var(--border); border-radius:10px; background:var(--bg); }
  .topdf-badge { flex:none; min-width:46px; padding:4px 0; border-radius:6px; text-align:center; font-size:.7rem; font-weight:800; letter-spacing:.03em; color:var(--accent); background:color-mix(in srgb, var(--accent) 11%, var(--card)); }
  .topdf-badge[data-kind=word] { color:color-mix(in srgb, #2B5BD7 70%, var(--text)); background:color-mix(in srgb, #2B5BD7 16%, var(--card)); }
  .topdf-badge[data-kind=sheet] { color:color-mix(in srgb, #1E7A46 70%, var(--text)); background:color-mix(in srgb, #1E7A46 18%, var(--card)); }
  .topdf-badge[data-kind=slides] { color:color-mix(in srgb, #C9472A 70%, var(--text)); background:color-mix(in srgb, #C9472A 16%, var(--card)); }
  .topdf-badge[data-kind=image] { color:color-mix(in srgb, #B7791F 70%, var(--text)); background:color-mix(in srgb, #B7791F 18%, var(--card)); }
  .topdf-name { min-width:0; flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.9rem; color:var(--text); }
  .topdf-size { flex:none; color:var(--muted); font-size:.78rem; }
  .topdf-del { flex:none; width:30px; height:30px; padding:0; display:grid; place-items:center; border-radius:8px; }
  .topdf-del svg { width:14px; height:14px; }
  .topdf-opts { display:grid; gap:14px; margin-top:16px; padding-top:16px; border-top:1px solid var(--border); }
  .topdf-opts[hidden] { display:none; }
  .topdf-opt-label { display:block; margin:0 0 6px; font-size:.82rem; font-weight:600; color:var(--text); }
  .topdf-seg { display:inline-flex; flex-wrap:wrap; gap:6px; }
  .topdf-seg input { position:absolute; opacity:0; pointer-events:none; }
  .topdf-seg label { margin:0; padding:7px 12px; border:1px solid var(--border); border-radius:8px; background:var(--bg); font-size:.84rem; font-weight:500; cursor:pointer; transition:border-color .15s ease, background .15s ease; }
  .topdf-seg label:hover { border-color:color-mix(in srgb, var(--accent) 55%, var(--border)); }
  .topdf-seg input:checked + label { border-color:var(--accent); background:color-mix(in srgb, var(--accent) 10%, var(--card)); color:var(--text); }
  .topdf-seg input:focus-visible + label { outline:2px solid var(--accent); outline-offset:2px; }
  .topdf-check { display:flex; align-items:flex-start; gap:9px; margin:0; font-weight:500; font-size:.88rem; cursor:pointer; }
  .topdf-check input { margin-top:3px; }
  .topdf-check small { display:block; color:var(--muted); font-size:.78rem; font-weight:400; }
  .topdf-note { margin:14px 0 0; color:var(--muted); font-size:.8rem; line-height:1.45; }
  .topdf-actions { display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-top:16px; }
  .topdf-status { margin-left:auto; color:var(--muted); font-size:.9rem; }
  .topdf-status.ok { color:var(--ok); }
  .topdf-status.error { color:var(--error); }
  .topdf-stage { position:fixed; left:-30000px; top:0; width:1200px; height:900px; border:0; background:#fff; pointer-events:none; }
  @media (max-width: 680px) {
    .topdf-panel { padding:16px; }
    .topdf-size { display:none; }
    .topdf-actions button { width:100%; }
    .topdf-status { width:100%; margin-left:0; }
  }
