/*
Theme Name: Ferramentas Web
Author: Ferramentas Web
Description: Portal moderno de ferramentas gratuitas para domínios, IP, DNS e futuras utilidades, com estrutura para AdSense.
Version: 3.15.0
License: GPL-2.0-or-later
Text Domain: ferramentas-web
*/
:root{--navy:#0b154d;--blue:#147de8;--cyan:#10bce8;--purple:#7139ed;--yellow:#ffbd18;--muted:#56617d;--line:#dce6f5;--shadow:0 18px 45px rgba(28,54,118,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--navy);background:#fff;line-height:1.5}a{text-decoration:none;color:inherit}.container{width:min(1380px,calc(100% - 44px));margin:auto}.site-header{height:90px;background:#fff;border-bottom:1px solid #e9eef7;position:sticky;top:0;z-index:30}.header-inner{height:100%;display:flex;align-items:center;gap:28px}.brand{font-size:28px;font-weight:900;display:flex;align-items:center;gap:11px;position:relative;white-space:nowrap}.brand-mark{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#258de9,#0867d6);color:#fff;font-size:28px;box-shadow:0 8px 18px #1b77d633}.brand i{position:absolute;width:120px;height:4px;background:var(--yellow);border-radius:50%;left:64px;bottom:-5px;transform:rotate(5deg)}.nav{margin-left:auto;display:flex;align-items:center;gap:12px;font-weight:750}.nav a{padding:11px 14px;border-radius:24px;display:flex;gap:7px;align-items:center}.nav a.active,.nav a:hover{background:#e9f4ff;color:#076bd1}.header-search{width:48px;height:48px;border-radius:50%;background:#f0f5fd;display:grid;place-items:center;font-size:28px}.hero-new{position:relative;overflow:hidden;background:radial-gradient(circle at 12% 50%,#00aee7 0,transparent 28%),radial-gradient(circle at 80% 20%,#116de2 0,transparent 32%),linear-gradient(110deg,#0754bc 0%,#3a2bc6 52%,#1359df 100%);color:#fff;padding:48px 0 72px}.hero-grid{display:grid;grid-template-columns:1.45fr .85fr;align-items:center;gap:40px;min-height:280px}.hero-copy h1{font-size:clamp(45px,5vw,66px);line-height:1.05;margin:0 0 20px;letter-spacing:-.035em}.hero-copy h1 span{color:var(--yellow);position:relative}.hero-copy h1 span:after{content:"";position:absolute;left:15%;right:5%;bottom:-12px;height:5px;border-radius:50%;background:var(--yellow);transform:rotate(2deg)}.hero-copy p{font-size:22px;max-width:750px;margin:0 0 26px}.tool-search{max-width:760px;height:58px;background:#fff;border-radius:30px;display:flex;align-items:center;padding:0 22px;gap:14px;box-shadow:0 10px 25px #00124c33;color:var(--navy)}.tool-search b{font-size:27px}.tool-search input{border:0;outline:0;font:inherit;font-size:18px;width:100%;color:var(--navy)}.hero-art{height:270px;position:relative}.globe{position:absolute;right:25px;top:5px;width:180px;height:180px;border:10px solid #5fe0ff;border-radius:50%;display:grid;place-items:center;font-size:140px;line-height:1;color:#64e1ff88;box-shadow:0 0 40px #10d9ff55}.laptop{position:absolute;left:25px;top:65px;width:290px}.screen{height:165px;border:12px solid #b8d8ff;border-radius:18px;background:linear-gradient(135deg,#137adf,#4a2cd2);box-shadow:0 15px 30px #001c6c55;padding:25px}.screen span{display:block;height:10px;background:#9bdcff88;border-radius:10px;margin:8px 0;width:70%}.screen span:nth-child(2){width:50%}.screen span:nth-child(3){width:60%}.gear{position:absolute;left:55px;bottom:30px;font-size:48px;color:#9edcff}.base{height:18px;background:linear-gradient(#d7e8ff,#7bb5ff);border-radius:4px 4px 20px 20px;margin:-2px -35px 0}.cursor{position:absolute;right:85px;bottom:20px;font-size:65px;color:#8a44ef;text-shadow:-3px -3px 0 #fff,3px -3px 0 #fff,-3px 3px 0 #fff,3px 3px 0 #fff;transform:rotate(-20deg)}.wave{position:absolute;bottom:-1px;left:-3%;width:106%;height:45px;background:#fff;border-radius:50% 50% 0 0/100% 100% 0 0}.categories{padding:28px 0 36px}.section-title{display:flex;align-items:center;justify-content:center;gap:28px;margin-bottom:38px}.section-title i{height:2px;background:#bfd0f4;width:230px}.section-title h2{font-size:34px;margin:0;text-align:center}.category-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px}.category-box{padding:26px 24px;border-radius:22px;border:1px solid;box-shadow:0 12px 28px rgba(39,77,150,.09)}.category-box.domains{background:linear-gradient(135deg,#f5fbff,#dcefff);border-color:#74c7ff}.category-box.network{background:linear-gradient(135deg,#fbf8ff,#eadcff);border-color:#b89cff}.cat-head{display:flex;gap:20px;align-items:center;margin-bottom:22px}.cat-icon{width:88px;height:88px;flex:0 0 88px;border-radius:18px;display:grid;place-items:center;color:#fff;font-size:56px;font-weight:900;box-shadow:0 10px 22px #2268a933}.domains .cat-icon{background:linear-gradient(145deg,#32b9ff,#0872da)}.network .cat-icon{background:linear-gradient(145deg,#9a64ff,#6b1fd5)}.cat-head h3{font-size:34px;margin:0 0 3px}.cat-head p{font-size:18px;margin:0;color:#162056}.tool-link{background:#fff;border:1px solid #bdd9f4;border-radius:17px;padding:15px 18px;display:grid;grid-template-columns:74px 1fr 25px;align-items:center;gap:16px;box-shadow:0 10px 20px rgba(27,70,130,.09);transition:.2s}.tool-link:hover{transform:translateY(-3px);box-shadow:0 16px 30px rgba(27,70,130,.15)}.tool-link-icon{width:62px;height:62px;border-radius:15px;background:#e8f5ff;display:grid;place-items:center;color:#147de8;font-size:22px;font-weight:900}.network .tool-link-icon{color:#7937e8;background:#f2eaff}.tool-link strong{display:block;font-size:20px;margin-bottom:3px}.tool-link span{display:block;color:#243064;font-size:16px}.tool-link>b{font-size:42px;color:#126fe0}.benefits{margin-top:42px;background:#f1f6fd;border-radius:20px;display:grid;grid-template-columns:1fr 1fr 1.25fr;padding:22px 28px}.benefits>div{display:flex;align-items:center;gap:18px;padding:0 24px;border-right:1px solid #c9d8ee}.benefits>div:last-child{border:0}.benefits b{font-size:38px;color:#ffb500}.benefits>div:nth-child(2)>b{color:#24bd78}.benefits>div:nth-child(3)>b{color:#6639e9}.benefits p{margin:0}.benefits strong,.benefits span{display:block}.benefits strong{font-size:18px}.benefits span{color:#27335e}.no-tools{text-align:center;padding:30px;color:var(--muted)}.ad-slot{margin:26px auto;padding:18px;border:1px dashed #bfcce0;border-radius:14px;text-align:center;color:#8997ac;background:#fbfcfe}.tool-zone{padding:70px 0;scroll-margin-top:90px;background:#f8fbff}.tool-zone.alt{background:#fff}.tool-panel{max-width:900px;margin:auto;background:#fff;border:1px solid #cfe3fa;border-radius:24px;padding:34px;box-shadow:var(--shadow)}.tool-panel.purple{border-color:#dfd0ff}.panel-badge{display:inline-block;padding:6px 11px;border-radius:999px;background:#e8f4ff;color:#0873d9;font-size:12px;font-weight:900;letter-spacing:.08em}.purple .panel-badge{background:#f0e9ff;color:#7139ed}.tool-panel h2{font-size:34px;margin:12px 0 5px}.tool-panel>p{color:var(--muted);margin-top:0}.checker{margin-top:24px}.checker-form{display:flex;gap:10px;background:#f7faff;border:1px solid #cbdcf1;border-radius:16px;padding:7px}.checker input{flex:1;min-width:0;border:0;background:transparent;padding:13px;font-size:16px;outline:0}.checker button{border:0;border-radius:11px;padding:13px 23px;background:linear-gradient(135deg,#1688ee,#1263db);color:#fff;font-weight:850;cursor:pointer}.purple .checker button{background:linear-gradient(135deg,#8b55ef,#6330db)}.checker button:disabled{opacity:.6}.status{margin-top:14px}.result{margin-top:18px}.age{font-size:22px;font-weight:900;margin-bottom:12px}.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.result-grid>div{padding:14px;border-radius:13px;background:#f5f8fd;overflow-wrap:anywhere}.result-grid b{display:block;font-size:12px;text-transform:uppercase;color:#6b7890;margin-bottom:4px}.note{font-size:13px!important;color:#6c7890!important;margin-top:14px!important}.error{color:#b91c1c}.faq-section{padding:65px 0;background:#f7faff}.faq-section h2{text-align:center;font-size:34px}.faq-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.faq-grid article{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}.faq-grid h3{margin-top:0}.faq-grid p{color:var(--muted);margin-bottom:0}.site-footer{background:#081431;color:#d9e4f5;padding:42px 0}.footer-inner{display:flex;justify-content:space-between;gap:30px;align-items:center}.footer-inner strong{font-size:20px;color:#fff;display:block}.footer-inner small{display:block;margin-top:5px}.footer-links{display:flex;gap:18px;flex-wrap:wrap}.page-content{max-width:900px;margin:55px auto;min-height:55vh}.page-content h1{font-size:42px}.post-list article{padding:18px 0;border-bottom:1px solid var(--line)}
@media(max-width:900px){.nav a span{display:none}.hero-grid{grid-template-columns:1fr}.hero-art{display:none}.category-grid{grid-template-columns:1fr}.benefits{grid-template-columns:1fr}.benefits>div{border-right:0;border-bottom:1px solid #c9d8ee;padding:16px}.benefits>div:last-child{border:0}.section-title i{width:70px}.faq-grid{grid-template-columns:1fr}}
@media(max-width:650px){.container{width:min(100% - 26px,1380px)}.site-header{height:70px}.brand{font-size:20px}.brand-mark{width:38px;height:38px;font-size:22px}.brand i{display:none}.nav{display:none}.header-search{margin-left:auto;width:40px;height:40px}.hero-new{padding:42px 0 64px}.hero-copy h1{font-size:42px}.hero-copy p{font-size:17px}.tool-search{height:54px}.section-title{gap:12px}.section-title h2{font-size:27px}.section-title i{width:30px}.category-box{padding:20px 15px}.cat-head{align-items:flex-start}.cat-icon{width:62px;height:62px;flex-basis:62px;font-size:38px}.cat-head h3{font-size:27px}.cat-head p{font-size:15px}.tool-link{grid-template-columns:52px 1fr 15px;padding:13px 11px;gap:10px}.tool-link-icon{width:48px;height:48px}.tool-link strong{font-size:16px}.tool-link span{font-size:13px}.tool-link>b{font-size:28px}.benefits{padding:10px}.tool-panel{padding:24px 16px}.checker-form{flex-direction:column;background:transparent;border:0;padding:0}.checker input{border:1px solid #cbdcf1;border-radius:11px;background:#f7faff}.checker button{width:100%}.result-grid{grid-template-columns:1fr}.footer-inner{align-items:flex-start;flex-direction:column}}

/* v2.1 — categoria Segurança / SSL */
@media(min-width:1001px){.category-grid{grid-template-columns:repeat(3,1fr)}}
.category-box.security{background:linear-gradient(135deg,#f5fff9,#ddf8e9);border-color:#7bd7a7}.security .cat-icon{background:linear-gradient(145deg,#39cf86,#15945c);font-size:42px}.security .tool-link-icon{color:#148b57;background:#e7faef}.green{border-color:#bfead3}.green .panel-badge{background:#e6f9ee;color:#148b57}.green .checker button{background:linear-gradient(135deg,#35c77f,#148b57)}

/* v2.2 — ferramentas em páginas próprias */
.tool-page-hero{padding:54px 0 28px;background:linear-gradient(135deg,#f7fbff,#eef3ff)}
.tool-page-hero .back-tools{display:inline-flex;gap:8px;align-items:center;color:#176fd2;font-weight:800;margin-bottom:15px}
.tool-page-hero h1{font-size:clamp(34px,5vw,52px);margin:0 0 10px}
.tool-page-hero p{font-size:18px;color:var(--muted);max-width:760px;margin:0}
.tool-page-wrap{padding:38px 0 70px;background:#f8fbff;min-height:55vh}
.category-box .tool-link{margin-top:8px}
.category-box .tool-link + .tool-link{margin-top:12px}

/* v2.3 — contador de palavras */
.text-tools{border-color:#ffd89b;background:linear-gradient(135deg,#fffdf7,#fff7e7)}
.text-tools .cat-icon{background:#fff0ce;color:#b86b00}
.counter-area{width:100%;min-height:280px;border:1px solid #dbe3ef;border-radius:18px;padding:18px;font:inherit;resize:vertical;background:#fff;outline:none}
.counter-area:focus{border-color:#7c5cff;box-shadow:0 0 0 4px rgba(124,92,255,.10)}
.counter-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px}
.counter-stat{background:#fff;border:1px solid #e7ecf4;border-radius:16px;padding:18px;text-align:center}
.counter-stat strong{display:block;font-size:28px;color:#20283a}.counter-stat span{color:#697386;font-size:14px}
@media(max-width:700px){.counter-stats{grid-template-columns:repeat(2,1fr)}}

/* v2.4 — alterar maiúsculas/minúsculas */
.case-actions{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}
.case-actions button{border:0;border-radius:12px;padding:12px 16px;font-weight:800;cursor:pointer;background:#eef2ff;color:#4f46e5}
.case-actions button:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(79,70,229,.14)}
.case-actions .primary{background:linear-gradient(135deg,#6558f5,#8b5cf6);color:#fff}
.case-output{margin-top:14px}

/* v2.5 — calculadora de idade */
.calculator-tools{border-color:#bfe6d0;background:linear-gradient(135deg,#fbfffc,#eefbf3)}
.calculator-tools .cat-icon{background:#dcf7e7;color:#16834b}
.age-form{display:grid;grid-template-columns:1fr auto;gap:12px;margin-top:18px}
.age-form input{min-height:52px;border:1px solid #dbe3ef;border-radius:14px;padding:0 15px;font:inherit;background:#fff}
.age-form button{border:0;border-radius:14px;padding:0 22px;font-weight:800;background:linear-gradient(135deg,#16a05d,#24b46d);color:#fff;cursor:pointer}
.age-answer{margin-top:20px;padding:22px;border:1px solid #dfe8e3;border-radius:18px;background:#fff}
.age-answer .big{font-size:28px;font-weight:900;color:#173d2b;margin-bottom:12px}
@media(max-width:650px){.age-form{grid-template-columns:1fr}.age-form button{min-height:52px}}

/* v2.6 — calculadora de horas */
.hours-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}
.hours-field label{display:block;font-weight:800;margin-bottom:7px}
.hours-field input{width:100%;min-height:52px;border:1px solid #dbe3ef;border-radius:14px;padding:0 15px;font:inherit;background:#fff}
.hours-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.hours-actions button{border:0;border-radius:14px;padding:13px 20px;font-weight:800;cursor:pointer}
.hours-actions .calculate{background:linear-gradient(135deg,#16a05d,#24b46d);color:#fff}
.hours-actions .clear{background:#eef2f7;color:#334155}
.hours-result{margin-top:20px;padding:22px;border:1px solid #dfe8e3;border-radius:18px;background:#fff}
.hours-result .big{font-size:28px;font-weight:900;color:#173d2b;margin-bottom:8px}
@media(max-width:650px){.hours-grid{grid-template-columns:1fr}}

/* v2.9 — novas calculadoras */
.calc-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:18px}
.calc-field label{display:block;font-weight:800;margin-bottom:7px}
.calc-field input,.calc-field select{width:100%;min-height:52px;border:1px solid #dbe3ef;border-radius:14px;padding:0 15px;font:inherit;background:#fff}
.calc-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.calc-actions button{border:0;border-radius:14px;padding:13px 20px;font-weight:800;cursor:pointer}
.calc-actions .calculate{background:linear-gradient(135deg,#16a05d,#24b46d);color:#fff}
.calc-actions .clear{background:#eef2f7;color:#334155}
.calc-result{margin-top:20px;padding:22px;border:1px solid #dfe8e3;border-radius:18px;background:#fff}
.calc-result .big{font-size:28px;font-weight:900;color:#173d2b;margin-bottom:8px}
@media(max-width:650px){.calc-form-grid{grid-template-columns:1fr}}

/* v3.0 — novas ferramentas */
.utility-tools{border-color:#cfd9ff;background:linear-gradient(135deg,#fcfdff,#f2f5ff)}
.utility-tools .cat-icon{background:#e7ecff;color:#4f46e5}
.generator-tools{border-color:#e6d1ff;background:linear-gradient(135deg,#fff,#faf3ff)}
.generator-tools .cat-icon{background:#f0e3ff;color:#7c3aed}
.simple-tool-actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}
.simple-tool-actions button{border:0;border-radius:14px;padding:13px 18px;font-weight:800;cursor:pointer}
.simple-tool-actions .primary{background:linear-gradient(135deg,#6558f5,#8b5cf6);color:#fff}
.simple-tool-actions .secondary{background:#eef2f7;color:#334155}
.tool-result-box{margin-top:18px;padding:20px;border:1px solid #e3e8f1;border-radius:18px;background:#fff}
.password-output{font-size:20px;font-weight:800;word-break:break-all}
.names-list{width:100%;min-height:220px;border:1px solid #dbe3ef;border-radius:18px;padding:16px;font:inherit;resize:vertical}
.table-output{width:100%;border-collapse:collapse;margin-top:10px}.table-output td{padding:9px 12px;border-bottom:1px solid #edf0f5}

/* v3.1 — opções do gerador de senhas */
.password-options{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:18px 0}
.password-option{display:flex;align-items:center;gap:10px;border:1px solid #e3e8f1;border-radius:14px;padding:13px 14px;background:#fff;font-weight:700}
.password-option input{width:20px;height:20px;accent-color:#6558f5}
@media(max-width:650px){.password-options{grid-template-columns:1fr}}

/* v3.2 */
.quote-items{display:grid;gap:10px;margin-top:14px}
.quote-row{display:grid;grid-template-columns:2fr .7fr 1fr auto;gap:8px;align-items:end}
.quote-row button{min-height:48px;border:0;border-radius:12px;padding:0 14px;cursor:pointer}
.quote-preview{margin-top:20px;padding:24px;border:1px solid #e3e8f1;border-radius:18px;background:#fff}
.quote-preview h3{margin-top:0}.quote-total{font-size:25px;font-weight:900;text-align:right;margin-top:16px}
.name-results{display:grid;gap:10px;margin-top:16px}.name-result{padding:13px 15px;border:1px solid #e5eaf2;border-radius:13px;background:#fff;font-weight:800}
@media(max-width:700px){.quote-row{grid-template-columns:1fr 1fr}.quote-row .desc{grid-column:1/-1}}

/* v3.6 — resultado simplificado do verificador de site */
.site-status-card{padding:22px;border-radius:18px;margin-top:18px}
.site-status-card.online{background:#ecfdf3;border:1px solid #a7e8bf}
.site-status-card.offline{background:#fff1f2;border:1px solid #fecdd3}
.site-status-title{font-size:23px;font-weight:900;margin-bottom:7px}
.site-status-card.online .site-status-title{color:#137a43}
.site-status-card.offline .site-status-title{color:#be123c}
.site-status-help{margin:0;color:#475569;line-height:1.6}

/* v3.8 */
.extracted-links{display:grid;gap:9px;margin-top:16px}
.extracted-link{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:12px 14px;border:1px solid #e3e8f1;border-radius:12px;background:#fff}
.extracted-link a{overflow-wrap:anywhere}
.wifi-options{display:flex;gap:14px;flex-wrap:wrap;margin:14px 0}
.wifi-options label{display:flex;gap:8px;align-items:center;font-weight:700}

/* v3.11 - Verificador de Segurança de Site */
.safety-score{display:flex;align-items:center;gap:14px;margin:18px 0;padding:18px;border:1px solid #e5e7eb;border-radius:16px}
.safety-score strong{font-size:22px}
.safety-list{display:grid;gap:10px;margin-top:16px}
.safety-row{display:grid;grid-template-columns:180px 170px 1fr;gap:16px;align-items:center;padding:14px;border:1px solid #e5e7eb;border-radius:12px}
.safety-ok{color:#15803d;font-weight:800}.safety-warn{color:#b45309;font-weight:800}.safety-bad{color:#b91c1c;font-weight:800}.safety-unknown{color:#64748b;font-weight:800}
@media(max-width:700px){.safety-row{grid-template-columns:1fr;gap:5px}}

/* v3.13 — Ferramentas PDF */
.category-box.pdf-tools{background:linear-gradient(135deg,#fff8f8,#ffe7e7);border-color:#f3a1a1}
.pdf-tools .cat-icon{background:linear-gradient(145deg,#f45b5b,#c92f42);font-size:42px}
.pdf-tools .tool-link-icon{color:#c92f42;background:#fff0f0}
.pdf-panel{border-color:#f0caca}
.pdf-box{margin-top:22px;display:grid;gap:14px}
.pdf-box input[type=file],.pdf-text{width:100%;border:1px solid #cbdcf1;border-radius:12px;background:#fff;padding:14px;font:inherit}
.pdf-box label{font-weight:800;color:#27335e;margin-bottom:-7px}
.pdf-action{border:0;border-radius:12px;padding:14px 22px;background:linear-gradient(135deg,#ef5350,#c92f42);color:#fff;font:inherit;font-weight:850;cursor:pointer}
.pdf-action:disabled{opacity:.6;cursor:wait}
.pdf-downloads{display:flex;gap:10px;flex-wrap:wrap}
.pdf-mini{display:inline-block;padding:10px 14px;border-radius:10px;background:#eef5ff;color:#1263db;font-weight:800}

/* v3.14 — novas ferramentas PDF */
.pdf-textarea{resize:vertical;min-height:220px;line-height:1.55}
.pdf-organizer{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:14px;margin:8px 0}
.pdf-page-card{border:1px solid #d8e3f0;background:#fff;border-radius:14px;padding:10px;text-align:center;cursor:grab;box-shadow:0 5px 18px rgba(28,50,90,.07)}
.pdf-page-card img{display:block;max-width:100%;height:150px;object-fit:contain;margin:0 auto 8px;transition:transform .15s}
.pdf-page-card strong,.pdf-page-card small{display:block}
.pdf-page-actions{display:flex;justify-content:center;gap:5px;margin:8px 0}
.pdf-page-actions button{border:1px solid #d8e3f0;background:#f7faff;border-radius:8px;padding:6px 8px;cursor:pointer;font-weight:700}

/* v3.15 — pré-visualização de PDFs e imagens */
.pdf-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(125px,1fr));gap:14px;margin:8px 0 4px}
.pdf-preview-card{min-width:0;border:1px solid #d8e3f0;background:#fff;border-radius:14px;padding:10px;text-align:center;box-shadow:0 5px 18px rgba(28,50,90,.06)}
.pdf-preview-card img{display:block;width:100%;height:145px;object-fit:contain;background:#f7f9fc;border-radius:8px;margin-bottom:8px}
.pdf-preview-card strong,.pdf-preview-card small{display:block;overflow:hidden;text-overflow:ellipsis}
.pdf-preview-card small{font-size:11px;color:#667085;margin-top:4px;white-space:nowrap}
.pdf-preview-file{grid-column:1/-1;border:1px solid #e0e7f1;border-radius:14px;padding:12px;background:#fbfcff}
.pdf-preview-filename{font-weight:800;margin-bottom:10px;overflow-wrap:anywhere}
.pdf-preview-inner{display:grid;grid-template-columns:repeat(auto-fill,minmax(115px,1fr));gap:12px}
.pdf-preview-error,.pdf-preview-more{grid-column:1/-1;padding:12px;border-radius:10px;background:#fff7ed;color:#8a4b08}
@media(max-width:480px){.pdf-preview-grid,.pdf-preview-inner{grid-template-columns:repeat(2,minmax(0,1fr))}.pdf-preview-card img{height:125px}}
