.ctool{max-width:980px;margin:16px auto}
.cpanel[hidden],#w2p-out[hidden],#p2w-out[hidden],#p2w-ocr[hidden],#i2p-out[hidden]{display:none}
.cpanel{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:clamp(16px,2.4vw,28px)}
.drop{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;padding:34px 16px;border:2px dashed var(--line);border-radius:18px;cursor:pointer;color:var(--muted);transition:border-color .2s,background .2s}
.drop:hover,.drop.over{border-color:var(--primary);background:var(--tint)}
.drop i{font-size:2rem;color:var(--primary)}
.drop b{color:var(--text);font-size:1rem}
.cmsg{min-height:1.4em;margin:12px 0 0;font-size:.9rem;color:var(--muted)}
.cmsg.err{color:#b91c1c}
.paper{margin-top:16px;max-height:560px;overflow:auto;background:#fff;color:#111;border:1px solid var(--line);border-radius:12px;padding:clamp(18px,4vw,44px);line-height:1.5;font-size:14px;font-family:Calibri,Arial,sans-serif}
.paper h1{font-size:1.7em;margin:.6em 0 .3em}.paper h2{font-size:1.4em;margin:.6em 0 .3em}.paper h3{font-size:1.2em;margin:.6em 0 .3em}
.paper p{margin:0 0 .7em}.paper img{max-width:100%;height:auto}
.paper table{border-collapse:collapse;width:100%;margin:.6em 0}.paper td,.paper th{border:1px solid #999;padding:4px 7px;vertical-align:top}
.paper ul,.paper ol{margin:0 0 .7em 1.4em;padding:0}
.paper .pg{border-top:1px dashed #bbb;margin:1em 0;color:#888;font-size:.75em;text-align:center}
.ilist{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}
.ilist li{position:relative;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--bg)}
.ilist img{display:block;width:100%;height:110px;object-fit:cover}
.ilist .nm{display:block;font-size:.72rem;padding:4px 6px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ilist .ct{position:absolute;top:4px;right:4px;display:flex;gap:3px}
.ilist .ct button{width:24px;height:24px;border:0;border-radius:6px;background:rgba(0,0,0,.6);color:#fff;cursor:pointer;font-size:.7rem}
.ctool select{height:40px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--text);font:inherit;font-size:.88rem;padding:0 10px}
@media screen{.print-host{display:none}}
@media print{body>*:not(.print-host){display:none!important}.print-host{display:block!important;background:#fff;color:#111;font:12pt/1.45 Calibri,Arial,sans-serif}.print-host img{max-width:100%}.print-host table{border-collapse:collapse;width:100%}.print-host td,.print-host th{border:1px solid #888;padding:3px 6px}.print-host .pg{page-break-after:always;height:0;border:0;margin:0}@page{size:A4;margin:18mm}}