/* PDF tools — app styles on top of ds.css + tools.css */
.p-crumb{font-size:.85rem;color:var(--ink-3);margin-bottom:10px}
.p-crumb a{color:var(--ink-2);font-weight:700}
.p-answer{padding:22px 24px}
.p-work{padding:clamp(16px,3vw,28px)}
.p-modes{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.p-drop{border:3px dashed var(--line-2);border-radius:10px;padding:26px 18px;text-align:center;background:color-mix(in srgb,var(--m-soft) 22%,#fff);cursor:pointer}
.p-drop:focus{outline:3px solid var(--m);outline-offset:2px}
.p-drop.is-over{border-color:var(--ink);background:color-mix(in srgb,var(--m-soft) 55%,#fff)}
.p-drop-big{font-size:1.12rem;font-weight:800;color:var(--ink);margin:0}
.hint{font-size:.85rem;color:var(--ink-3);margin-top:6px}
.p-h3{font-size:1.08rem;margin:20px 0 8px}
.p-note{font-size:.82rem;font-weight:400;color:var(--ink-3)}
.p-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.p-list li{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:#fff}
.p-list .p-name{font-weight:800;color:var(--ink);word-break:break-all}
.p-list .p-meta{font-size:.85rem;color:var(--ink-3);font-variant-numeric:tabular-nums}
.p-list .p-rowbtns{margin-left:auto;display:flex;gap:6px}
.p-list .p-rowbtns button{min-width:42px;min-height:38px;font-size:1rem}
.p-panel{border:2px solid var(--line-2);border-radius:8px;padding:16px;margin:20px 0 6px;background:#fff}
.p-panel legend{font-weight:900;color:var(--ink);padding:0 8px}
.p-panel label{display:block;margin:12px 0 6px;color:var(--ink)}
.p-panel input[type="text"],.p-panel select{width:100%;font:inherit;font-size:16px;color:var(--ink);background:var(--card,#fff);border:2px solid var(--line-2);border-radius:6px;padding:10px 12px}
.p-panel input[type="range"]{width:100%;accent-color:var(--ink);min-height:32px}
.p-panel input:focus,.p-panel select:focus{outline:3px solid var(--m);outline-offset:1px;border-color:var(--ink)}
.p-radio{display:flex!important;gap:8px;align-items:flex-start;font-weight:400}
.p-radio input{margin-top:4px;width:20px;height:20px;flex:0 0 auto}
.p-progress{margin-top:16px}
.p-progress progress{width:100%;height:22px;accent-color:var(--ink)}
.p-status{min-height:1.5em;font-weight:800;color:var(--ink);margin-top:14px}
.p-status.is-error{color:#b00020}
.p-result{border:2px solid var(--ink);border-radius:8px;padding:14px 16px;margin-top:12px;background:#fff;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center}
.p-result .p-sizes{font-variant-numeric:tabular-nums;color:var(--ink-2)}
.p-result a.btn{text-decoration:none}
.p-notice{border:2px solid var(--ink);border-radius:6px;padding:12px 16px;margin-top:16px;background:#fff}
.p-steps li{margin-bottom:10px;max-width:72ch}
#how-it-works p,#how-it-works li{max-width:78ch}
#how-it-works h3{margin:22px 0 8px}
