body.w3-tools-page { color:#192637; background:#f5f7f9; }
html body.w3-tools-page .qa-body-wrapper { box-sizing:border-box; width:calc(100% - 40px); max-width:1120px; margin:0 auto; padding:0; overflow:visible; }
body.w3-tools-page .qa-body-wrapper .qa-main-wrapper { display:block; width:100%; margin:0; padding:0; overflow:visible; }
body.w3-tools-page .qa-main-wrapper .qa-main { float:none; width:100%!important; min-width:0; margin:0; padding:0; border:0; background:transparent; box-shadow:none; }
body.w3-tools-page .qa-main .qa-part-custom { margin:0; padding:0; border:0; background:transparent; }
.w3-pdf { --pdf-ink:#172538; --pdf-muted:#64758c; --pdf-border:#dce4ed; padding:24px 0 48px; color:var(--pdf-ink); font-size:14px; line-height:1.55; }
.w3-pdf *, .w3-pdf *::before,.w3-pdf *::after { box-sizing:border-box; }
.w3-pdf [hidden] { display:none!important; }
.w3-pdf h1,.w3-pdf h2,.w3-pdf h3,.w3-pdf p { margin:0; padding:0; border:0; background:none; }
.w3-pdf button,.w3-pdf select,.w3-pdf input,.w3-pdf a { font:inherit; }
.w3-pdf button { cursor:pointer; }
.w3-pdf button:disabled { cursor:not-allowed; opacity:.48; }
.w3-pdf :is(button,input,select,a):focus-visible { outline:3px solid #315cf3; outline-offset:3px; }
.pdf-crumb { display:flex; flex-wrap:wrap; gap:9px; color:var(--pdf-muted); font-size:12px; margin-bottom:18px; }
.pdf-crumb a { color:#546a85; }
.pdf-heading { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-bottom:24px; }
.pdf-eyebrow { color:#99710b; font-size:10px; font-weight:700; letter-spacing:1.1px; }
body.w3-tools-page .w3-pdf .pdf-heading h1 { width:auto; margin:6px 0 8px; padding:0; border:0; background:transparent; box-shadow:none; font-size:32px; line-height:1.2; letter-spacing:-.7px; color:var(--pdf-ink); }
.pdf-heading p { color:var(--pdf-muted); max-width:690px; }
.pdf-private { display:flex; flex-shrink:0; align-items:center; gap:8px; color:#157958; font-size:12px; }
.pdf-private svg { width:21px; height:21px; }
.pdf-workspace { display:grid; grid-template-columns:minmax(0,1fr) 310px; gap:22px; align-items:start; }
.pdf-editor,.pdf-settings { min-width:0; border:1px solid var(--pdf-border); background:#fff; border-radius:14px; padding:24px; }
.pdf-drop { display:flex; align-items:center; flex-direction:column; text-align:center; padding:26px 16px; background:#fffcf2; border:1.5px dashed #e2c86f; border-radius:10px; transition:background .15s,border-color .15s; }
.pdf-drop.is-over { background:#fff2ba; border-color:#ac7900; }
.pdf-upload-icon { width:50px; height:50px; margin-bottom:12px; color:#c49400; }
.w3-pdf .pdf-drop h2 { color:var(--pdf-ink); font-size:18px; font-weight:700; }
.pdf-drop p { margin-top:5px; color:var(--pdf-muted); font-size:13px; }
.pdf-drop small { margin-top:14px; color:var(--pdf-muted); font-size:11px; }
.pdf-button { display:inline-flex; align-items:center; justify-content:center; gap:14px; min-height:43px; border:1px solid transparent; border-radius:8px; padding:10px 18px; font-weight:700!important; font-size:13px!important; text-decoration:none!important; }
.pdf-button-primary { color:#172538!important; background:#ffca05; border-color:#f4bf00; }
.pdf-button-primary:hover { background:#f6bf00; }
.pdf-drop .pdf-button { margin-top:18px; }
.pdf-list-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:22px; }
.w3-pdf .pdf-list-heading h2 { color:var(--pdf-ink); font-size:15px; font-weight:700; }
.pdf-list-heading h2 span { display:inline-block; border-radius:6px; margin-left:5px; padding:1px 6px; background:#f0f3f8; color:var(--pdf-muted); font-size:11px; }
.pdf-list-heading p { font-size:11px; color:var(--pdf-muted); margin-top:4px; }
.pdf-text-button { border:0; padding:5px 0; background:none; color:#526882; font-size:11px!important; white-space:nowrap; text-decoration:underline; text-underline-offset:3px; }
.pdf-pages { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; padding:0!important; margin:18px 0 0!important; list-style:none!important; }
.pdf-pages:empty { margin-top:0!important; }
.pdf-page { position:relative; min-width:0; border:1px solid var(--pdf-border); border-radius:9px; padding:9px; background:#fff; }
.pdf-page.is-target { border-color:#c49100; background:#fffbdf; }
.pdf-page.is-dragging { opacity:.45; }
.pdf-thumb { position:relative; display:flex; align-items:center; justify-content:center; aspect-ratio:1; background:#f4f6f9; border-radius:5px; overflow:hidden; }
.pdf-thumb img { display:block; width:100%; height:100%; object-fit:contain; border:0; }
.pdf-page-number { position:absolute; top:6px; left:6px; display:grid; place-items:center; z-index:1; width:23px; height:23px; border-radius:6px; background:#fff; color:#34475f; box-shadow:0 1px 6px #18283d14; font-size:11px; font-weight:700; }
.pdf-page-name { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:11px; margin:7px 0 6px; color:#526882; }
.pdf-page-actions { display:flex; justify-content:space-between; gap:4px; }
.pdf-page-actions button { display:grid; place-items:center; width:29px; min-height:30px; padding:0; background:#f5f7fa; border:1px solid #e3e9f1; border-radius:5px; color:#3b516f; font-size:15px; }
.pdf-page-actions button:hover { background:#fff5cd; border-color:#e7cf80; }
.pdf-page-actions button[data-action=remove] { color:#af4248; }
.pdf-status { margin-top:15px!important; color:var(--pdf-muted); font-size:11px; }
.pdf-settings-title { display:flex; align-items:center; gap:9px; margin-bottom:16px; }
.pdf-step { display:inline-grid; place-items:center; width:25px; height:25px; border-radius:7px; background:#fff3c5; color:#9a7100; font-size:12px; font-weight:700; }
.w3-pdf .pdf-settings h2 { color:var(--pdf-ink); font-size:17px; font-weight:700; }
.pdf-settings>label { display:block; margin:15px 0 6px; color:#33465f; font-size:12px; font-weight:700; }
.pdf-settings select,.pdf-filename { width:100%; min-height:41px; border:1px solid var(--pdf-border); border-radius:7px; background:#f8fafc; color:var(--pdf-ink); }
.pdf-settings select { padding:8px 10px; font-size:12px; }
.pdf-filename { display:flex; align-items:center; padding-right:10px; font-size:12px; color:var(--pdf-muted); }
.w3-pdf .pdf-filename input[type=text] { flex:1; min-width:0; width:100%; padding:9px 10px; border:0; background:transparent; color:var(--pdf-ink); box-shadow:none; }
.pdf-help,.pdf-local-note { color:var(--pdf-muted); font-size:11px; line-height:1.6; }
.pdf-help { margin-top:7px!important; }
.pdf-local-note { margin-top:16px!important; padding-top:15px!important; border-top:1px solid #edf0f4!important; }
.pdf-create { width:100%; margin-top:20px; }
.pdf-progress-wrap { margin-top:14px; font-size:12px; }
.pdf-progress-wrap label { display:block; color:var(--pdf-muted); }
.pdf-progress-wrap progress { width:100%; height:8px; margin:8px 0; accent-color:#dbab00; }
.pdf-result { display:flex; flex-direction:column; gap:6px; margin-top:14px; padding:13px; background:#edf9f3; border:1px solid #cde9db; border-radius:8px; font-size:12px; color:#146945; }
.pdf-result>span { color:#426b58; font-size:11px; }
.pdf-result a { margin-top:5px; }
.pdf-error { padding:12px 16px!important; margin-bottom:16px!important; color:#9b2a36; border:1px solid #f0d4d9!important; background:#fff3f5!important; border-radius:8px; font-size:12px; white-space:pre-line; }
.pdf-guide { display:grid; grid-template-columns:1fr 1fr 1fr; gap:28px; margin-top:28px; padding:24px 0 0; border-top:1px solid var(--pdf-border); }
.w3-pdf .pdf-guide h2,.w3-pdf .pdf-guide h3 { font-size:13px; font-weight:700; color:#34475e; margin-bottom:7px; }
.pdf-guide .pdf-step { display:none; }
.pdf-guide p { font-size:12px; color:var(--pdf-muted); }
@media(max-width:1000px) { .pdf-private { display:none; } .pdf-workspace { grid-template-columns:minmax(0,1fr) 285px; gap:16px; } .pdf-editor,.pdf-settings { padding:18px; } .pdf-pages { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:740px) { html body.w3-tools-page .qa-body-wrapper { width:calc(100% - 24px); } .w3-pdf { padding:18px 0 32px; } body.w3-tools-page .w3-pdf .pdf-heading h1 { font-size:27px; } .pdf-heading p { font-size:13px; } .pdf-workspace { grid-template-columns:1fr; } .pdf-pages { grid-template-columns:repeat(3,minmax(0,1fr)); } .pdf-guide { grid-template-columns:1fr; gap:18px; } }
@media(max-width:450px) { .pdf-editor,.pdf-settings { padding:15px; } .pdf-drop { padding:20px 10px; } body.w3-tools-page .w3-pdf .pdf-heading h1 { font-size:25px; } .pdf-pages { grid-template-columns:repeat(2,minmax(0,1fr)); } .pdf-list-heading { align-items:flex-start; } .pdf-page-actions button { min-height:34px; } }
@media(prefers-reduced-motion:reduce) { .w3-pdf * { transition:none!important; } }
