:root{
  --ff12-ink:#123b3b;
  --ff12-ink-strong:#082f32;
  --ff12-muted:#67807f;
  --ff12-line:#d7e6e2;
  --ff12-surface:#ffffff;
  --ff12-bg:#f3f8f6;
  --ff12-soft:#edf6f3;
  --ff12-accent:#0b8f82;
  --ff12-accent-dark:#08756b;
  --ff12-accent-soft:#e7f5f1;
  --ff12-deep:#0d4947;
  --ff12-shadow:0 10px 30px rgba(32,85,78,.07);
}

html{background:var(--ff12-bg);color-scheme:light}
body{background:var(--ff12-bg)!important;color:var(--ff12-ink)!important}

/* Hide legacy/React headers whenever the v12 shell is present. */
body.ff-v12-shell #root>div>header:first-child,
body.ff-v12-shell>header.site-header,
body.ff-v12-shell>header:not(#ff-v12-header).site-header{display:none!important}

#ff-v12-header{position:sticky;top:0;z-index:90;background:rgba(255,255,255,.97);border-bottom:1px solid var(--ff12-line);box-shadow:0 5px 22px rgba(34,79,74,.055);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.ff12-header-inner{max-width:1320px;margin:0 auto;padding:11px 18px;display:flex;align-items:center;gap:16px}
.ff12-brand{display:flex;align-items:center;gap:11px;text-decoration:none;min-width:236px;color:var(--ff12-ink-strong)}
.ff12-brand-mark{width:42px;height:42px;border-radius:13px;background:var(--ff12-accent);display:grid;place-items:center;color:#fff;box-shadow:0 6px 18px rgba(11,143,130,.18)}
.ff12-brand-mark svg{width:22px;height:22px}
.ff12-brand-copy{display:flex;flex-direction:column;line-height:1.08}.ff12-brand-copy strong{font-size:18px;letter-spacing:-.025em;color:var(--ff12-ink-strong);font-weight:900}.ff12-brand-copy strong em{color:var(--ff12-accent);font-style:normal}.ff12-brand-copy small{font-size:11.5px;color:#6e8380;margin-top:4px;font-weight:600}

.ff12-search{flex:1;max-width:360px;position:relative}.ff12-search svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:17px;height:17px;color:#789692;pointer-events:none}.ff12-search input{width:100%;height:42px;border:1px solid var(--ff12-line);background:#f8fbfa;border-radius:14px;padding:0 15px 0 40px;color:var(--ff12-ink);font-size:14px;font-weight:600;outline:none;transition:.18s ease}.ff12-search input::placeholder{color:#8ca29f;font-weight:500}.ff12-search input:focus{background:#fff;border-color:#8ecdc5;box-shadow:0 0 0 4px rgba(11,143,130,.08)}

.ff12-nav{margin-left:auto;display:flex;align-items:center;gap:5px;white-space:nowrap}.ff12-nav-link,.ff12-nav-button{height:40px;display:inline-flex;align-items:center;gap:7px;border:1px solid transparent;border-radius:11px;padding:0 12px;background:transparent;color:#173f3e;font-size:13px;font-weight:800;text-decoration:none;cursor:pointer;transition:.16s ease}.ff12-nav-link:hover,.ff12-nav-button:hover,.ff12-nav-item.is-open>.ff12-nav-button{background:var(--ff12-accent-soft);border-color:#cfe7e1;color:var(--ff12-accent-dark)}.ff12-nav-link.is-home{background:var(--ff12-accent-soft);border-color:#cfe7e1;color:var(--ff12-accent-dark)}.ff12-nav-link svg,.ff12-nav-button svg{width:16px;height:16px}.ff12-chevron{width:13px!important;height:13px!important;transition:transform .16s ease}.ff12-nav-item.is-open .ff12-chevron{transform:rotate(180deg)}.ff12-count{min-width:19px;height:19px;border-radius:999px;padding:0 5px;display:inline-flex;align-items:center;justify-content:center;background:#dff1ed;color:var(--ff12-accent-dark);font-size:10px;font-weight:900}.ff12-nav-item{position:relative}

.ff12-mega{position:absolute;top:calc(100% + 10px);left:0;width:min(900px,calc(100vw - 40px));background:#fff;border:1px solid var(--ff12-line);border-radius:18px;box-shadow:0 22px 55px rgba(25,76,70,.14);padding:20px;opacity:0;visibility:hidden;transform:translateY(-5px);transition:.16s ease;pointer-events:none}.ff12-nav-item.is-open>.ff12-mega{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.ff12-nav-item.ff12-docs>.ff12-mega{width:min(650px,calc(100vw - 40px));left:auto;right:0}.ff12-mega-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 28px}.ff12-docs .ff12-mega-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ff12-mega-group h3{font-size:11px;line-height:1.3;text-transform:uppercase;letter-spacing:.06em;color:var(--ff12-accent);font-weight:900;margin:0 0 9px}.ff12-mega-group h3 button{all:unset;cursor:pointer}.ff12-mega-group h3 button:hover{text-decoration:underline}.ff12-mega-group a{display:flex;align-items:center;gap:8px;padding:6px 0;color:#5a7471;text-decoration:none;font-size:13px;font-weight:600;line-height:1.35}.ff12-mega-group a:hover{color:var(--ff12-accent-dark)}.ff12-dot{width:6px;height:6px;border-radius:999px;background:#c8e5df;flex:0 0 auto}.ff12-mega-group a:hover .ff12-dot{background:var(--ff12-accent)}.ff12-mega-footer{border-top:1px solid #e3eeeb;margin-top:16px;padding-top:13px;display:flex;justify-content:space-between;gap:12px;align-items:center;color:#718783;font-size:12px}.ff12-mega-footer button{border:0;background:var(--ff12-accent-soft);color:var(--ff12-accent-dark);border-radius:10px;padding:8px 11px;font-size:12px;font-weight:800;cursor:pointer}

/* Favorites exist only in the menu. */
.ff12-fav-popover{position:absolute;right:0;top:calc(100% + 10px);width:min(390px,calc(100vw - 28px));background:#fff;border:1px solid var(--ff12-line);border-radius:17px;box-shadow:0 22px 55px rgba(25,76,70,.16);padding:14px;opacity:0;visibility:hidden;transform:translateY(-5px);transition:.16s ease;pointer-events:none}.ff12-favorites.is-open>.ff12-fav-popover{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.ff12-fav-head{display:flex;align-items:center;justify-content:space-between;padding:2px 3px 10px;border-bottom:1px solid #e7efed}.ff12-fav-head strong{font-size:13px;color:var(--ff12-ink-strong)}.ff12-fav-head span{font-size:10px;color:#7b918e;font-weight:800}.ff12-fav-list{max-height:390px;overflow:auto;padding-top:6px}.ff12-fav-row{position:relative;display:flex;align-items:center;gap:10px;padding:9px 34px 9px 6px;border-radius:11px;text-decoration:none;color:var(--ff12-ink);min-width:0}.ff12-fav-row:hover{background:#f2f8f6}.ff12-mini-icon{width:38px;height:38px;border-radius:11px;background:var(--ff12-accent-soft);display:grid;place-items:center;color:var(--ff12-accent);flex:0 0 auto}.ff12-mini-icon svg{width:18px;height:18px}.ff12-mini-copy{min-width:0;display:flex;flex-direction:column;gap:2px}.ff12-mini-title{font-size:12.5px;font-weight:850;color:#153d3c;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ff12-mini-category{font-size:9.5px;text-transform:uppercase;letter-spacing:.055em;color:#78a09a;font-weight:800}.ff12-fav-remove{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:28px;height:28px;border:0;background:transparent;color:#9ab0ac;border-radius:8px;display:grid;place-items:center;cursor:pointer}.ff12-fav-remove:hover{background:#edf6f3;color:var(--ff12-accent)}.ff12-fav-remove svg{width:15px;height:15px}.ff12-fav-empty{padding:18px 8px 10px;color:#718784;font-size:12px;line-height:1.55}.ff12-fav-more{padding:9px 6px 3px;color:#829591;font-size:10px;text-align:center}

/* Home */
body.ff-v12-home #root>div{background:var(--ff12-bg)!important;color:var(--ff12-ink)!important}body.ff-v12-home #root main{padding-top:24px!important}body.ff-v12-home #root main>div.space-y-7>div:first-child{background:#fff!important;border:1px solid var(--ff12-line)!important;border-radius:20px!important;box-shadow:var(--ff12-shadow)!important;padding:24px!important}body.ff-v12-home #hero-title{color:var(--ff12-ink-strong)!important;letter-spacing:-.025em!important}body.ff-v12-home #hero-subtitle{color:#647e7a!important;font-size:13.5px!important}body.ff-v12-home #root main>div.space-y-7>div:first-child .bg-emerald-950{background:#e8f7f1!important;color:#0a7768!important;border-color:#bae6da!important}body.ff-v12-home #root main>div.space-y-7>div:first-child .border-slate-800{border-color:#dfeae7!important}body.ff-v12-home #root main>div.space-y-7>div:first-child .text-slate-300{color:#637b78!important}body.ff-v12-home #root main>div.space-y-7>div:first-child .bg-slate-950{background:#f7faf9!important}body.ff-v12-home #root main>div.space-y-7>div:first-child .border-slate-700{border-color:#dce8e5!important}

.ff12-recent-label{font-size:11px!important;text-transform:uppercase;letter-spacing:.06em!important;font-weight:900!important;color:#5c9b92!important}.ff12-recent-card{background:#fff!important;border:1px solid #d9e7e3!important;border-radius:14px!important;color:var(--ff12-ink)!important;padding:11px 13px!important;box-shadow:0 5px 16px rgba(35,81,75,.035)!important;min-height:70px;text-decoration:none}.ff12-recent-card:hover{border-color:#95cfc6!important;background:#fbfefd!important;transform:translateY(-1px)}.ff12-recent-empty{grid-column:1/-1;color:#80938f;font-size:12px;padding:12px 4px}

.ff-v12-tool-card{background:#fff!important;border:1px solid #d7e5e1!important;border-radius:18px!important;padding:22px 22px 20px!important;box-shadow:0 8px 24px rgba(31,79,72,.045)!important;min-height:205px!important;overflow:hidden!important;transform:none!important}.ff-v12-tool-card:hover{background:#fff!important;border-color:#8fcfc5!important;box-shadow:0 14px 36px rgba(31,79,72,.09)!important;transform:translateY(-2px)!important}.ff-v12-tool-card>div:first-child>div:first-child{padding-right:38px!important;margin-bottom:18px!important}.ff-v12-tool-card>div:first-child>div:first-child>div:first-child{width:48px!important;height:48px!important;border-radius:13px!important;background:#eaf5f2!important;border:0!important;box-shadow:none!important}.ff-v12-tool-card>div:first-child>div:first-child>div:first-child svg{color:var(--ff12-accent)!important}.ff-v12-tool-card h3{font-size:18px!important;line-height:1.24!important;color:#103837!important;font-weight:850!important;letter-spacing:-.015em!important;white-space:normal!important;display:block!important;-webkit-line-clamp:unset!important;overflow:visible!important}.ff-v12-tool-card h3+p{display:none!important}.ff-v12-tool-card h3+p+p{color:#6a807c!important;font-size:13px!important;line-height:1.7!important;margin-top:9px!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:3!important;overflow:hidden!important}.ff-v12-tool-card>div:last-child{display:none!important}.ff-v12-tool-card>div:first-child>div:first-child>span{background:#edf6f3!important;border-color:#d8eae5!important;color:#537f78!important}.ff12-star{position:absolute;right:18px;top:18px;width:31px;height:31px;border:0;background:transparent;color:#b5d3cd;border-radius:9px;display:grid;place-items:center;cursor:pointer;z-index:5;transition:.16s ease}.ff12-star:hover,.ff12-star:focus-visible{background:#e9f5f2;color:var(--ff12-accent);outline:none}.ff12-star.is-favorite{color:var(--ff12-accent);background:#e5f4f0}.ff12-star svg{width:19px;height:19px;fill:transparent;stroke:currentColor;stroke-width:1.8}.ff12-star.is-favorite svg{fill:#ccebe4}

body.ff-v12-home #root main .space-y-4>.border-b{border-color:#d9e6e2!important}body.ff-v12-home #root main .space-y-4>.border-b h2{color:#143c3b!important;font-size:17px!important}body.ff-v12-home #root main .space-y-4>.border-b h2+span{background:#e8f1ef!important;border-color:#d5e4e0!important;color:#587872!important}body.ff-v12-home #root main .space-y-4>.border-b button{background:#fff!important;border-color:#d6e5e1!important;color:#6c817d!important}

/* React tool pages: complete light green visual system. */
body.ff-v12-tool #root>div{background:var(--ff12-bg)!important;color:var(--ff12-ink)!important;padding-top:0!important;min-height:100vh}
body.ff-v12-tool #root main{color:var(--ff12-ink)!important}
body.ff-v12-tool #root .bg-slate-950,body.ff-v12-tool #root .bg-slate-950\/40,body.ff-v12-tool #root .bg-slate-950\/50,body.ff-v12-tool #root .bg-slate-950\/70{background-color:#f6faf8!important}
body.ff-v12-tool #root .bg-slate-900,body.ff-v12-tool #root .bg-slate-900\/90,body.ff-v12-tool #root .bg-slate-900\/95{background-color:#fff!important}
body.ff-v12-tool #root .bg-slate-800{background-color:#edf5f2!important}
body.ff-v12-tool #root .bg-slate-700{background-color:#e2eeea!important}
body.ff-v12-tool #root .border-slate-900,body.ff-v12-tool #root .border-slate-800,body.ff-v12-tool #root .border-slate-700{border-color:#d7e6e2!important}
body.ff-v12-tool #root .text-white,body.ff-v12-tool #root .text-slate-100{color:#103837!important}
body.ff-v12-tool #root .text-slate-200{color:#365b57!important}
body.ff-v12-tool #root .text-slate-300{color:#5f7975!important}
body.ff-v12-tool #root .text-slate-400{color:#768d89!important}
body.ff-v12-tool #root .text-sky-400,body.ff-v12-tool #root .text-cyan-400,body.ff-v12-tool #root .text-emerald-400{color:var(--ff12-accent)!important}
body.ff-v12-tool #root .bg-emerald-950{background:#e7f6f1!important}body.ff-v12-tool #root .border-emerald-700,body.ff-v12-tool #root .border-emerald-800{border-color:#b7dfd5!important}
body.ff-v12-tool #root [class*="bg-[#00a8e8]"]{background:var(--ff12-accent)!important;color:#fff!important;border-color:var(--ff12-accent)!important}body.ff-v12-tool #root [class*="bg-[#00a8e8]"]:hover{background:var(--ff12-accent-dark)!important}
body.ff-v12-tool #root [class*="text-[#00a8e8]"]{color:var(--ff12-accent)!important}body.ff-v12-tool #root [class*="border-[#00a8e8]"]{border-color:#82c8be!important}body.ff-v12-tool #root [class*="ring-[#00a8e8]"]{--tw-ring-color:rgba(11,143,130,.16)!important}
body.ff-v12-tool #root input,body.ff-v12-tool #root textarea,body.ff-v12-tool #root select{background:#f8fbfa!important;color:#143c3b!important;border-color:#cfdfdb!important}body.ff-v12-tool #root input:focus,body.ff-v12-tool #root textarea:focus,body.ff-v12-tool #root select:focus{border-color:#7fc7bd!important;box-shadow:0 0 0 3px rgba(11,143,130,.08)!important}
body.ff-v12-tool #root .shadow,body.ff-v12-tool #root .shadow-xs,body.ff-v12-tool #root .shadow-md{box-shadow:0 8px 24px rgba(37,83,77,.06)!important}
body.ff-v12-tool #root a[class*="text-[#00a8e8]"]{color:var(--ff12-accent)!important}

/* Standalone tool pages (OCR, remover fundo) adopt the same palette. */
body.ff-v12-tool.ff-v12-standalone{--bg:var(--ff12-bg);--panel:#fff;--panel-soft:#f7faf9;--line:var(--ff12-line);--text:var(--ff12-ink-strong);--muted:#6d837f;--accent:var(--ff12-accent);--accent2:var(--ff12-accent);--cyan:var(--ff12-accent);--cyan-dark:var(--ff12-accent-dark);background:var(--ff12-bg)!important;color:var(--ff12-ink)!important}
body.ff-v12-tool.ff-v12-standalone .page-shell{padding-top:24px}
body.ff-v12-tool.ff-v12-standalone .hero-card,body.ff-v12-tool.ff-v12-standalone .hero,body.ff-v12-tool.ff-v12-standalone .tool-card,body.ff-v12-tool.ff-v12-standalone .content-card{background:#fff!important;border-color:var(--ff12-line)!important;color:var(--ff12-ink)!important;box-shadow:var(--ff12-shadow)!important}
body.ff-v12-tool.ff-v12-standalone h1,body.ff-v12-tool.ff-v12-standalone h2,body.ff-v12-tool.ff-v12-standalone h3,body.ff-v12-tool.ff-v12-standalone strong{color:var(--ff12-ink-strong)!important}
body.ff-v12-tool.ff-v12-standalone p,body.ff-v12-tool.ff-v12-standalone li,body.ff-v12-tool.ff-v12-standalone .back-link{color:#617b76!important}
body.ff-v12-tool.ff-v12-standalone a{color:var(--ff12-accent-dark)}
body.ff-v12-tool.ff-v12-standalone .dropzone,body.ff-v12-tool.ff-v12-standalone .drop-zone,body.ff-v12-tool.ff-v12-standalone .file-panel,body.ff-v12-tool.ff-v12-standalone .progress-panel,body.ff-v12-tool.ff-v12-standalone .steps>div,body.ff-v12-tool.ff-v12-standalone textarea,body.ff-v12-tool.ff-v12-standalone select,body.ff-v12-tool.ff-v12-standalone input{background:#f7faf9!important;border-color:#cfe0dc!important;color:#123b3b!important}
body.ff-v12-tool.ff-v12-standalone .primary-btn{background:var(--ff12-accent)!important;color:#fff!important}body.ff-v12-tool.ff-v12-standalone .primary-btn:hover{background:var(--ff12-accent-dark)!important}body.ff-v12-tool.ff-v12-standalone .secondary-btn,body.ff-v12-tool.ff-v12-standalone .ghost-btn{background:#edf5f2!important;color:#24524e!important;border-color:#cfe0dc!important}body.ff-v12-tool.ff-v12-standalone .progress-bar{background:linear-gradient(90deg,var(--ff12-accent),#4ab7a9)!important}
body.ff-v12-tool.ff-v12-standalone .local-pill,body.ff-v12-tool.ff-v12-standalone .hero-badges span,body.ff-v12-tool.ff-v12-standalone .privacy-badge{background:#e8f7f1!important;border-color:#bee4da!important;color:#0a766a!important}
body.ff-v12-tool.ff-v12-standalone .site-footer{background:#123f3d!important;border-color:#245956!important;color:#d9ece8!important}

/* Institutional pages are also brought into the same green family. */
body.ff-v12-institutional{--ink:#123b3b;--navy:#123f3d;--blue:var(--ff12-accent);--line:var(--ff12-line);--muted:#647d79;--surface:#fff;--soft:var(--ff12-bg);--success:#087f6f;background:var(--ff12-bg)!important}
body.ff-v12-institutional .hero{background:linear-gradient(120deg,#123f3d,#0c6f67 68%,#0b8f82)!important}body.ff-v12-institutional .eyebrow{border-color:#83d0c4!important;background:rgba(255,255,255,.11)!important;color:#e9fffa!important}body.ff-v12-institutional .breadcrumbs a,body.ff-v12-institutional .content-card a,body.ff-v12-institutional .contact-box a{color:var(--ff12-accent-dark)!important}body.ff-v12-institutional .notice{border-left-color:var(--ff12-accent)!important;background:#eaf7f3!important;color:#255b55!important}body.ff-v12-institutional .link-card:hover{border-color:#8bcabe!important;box-shadow:0 7px 18px rgba(11,143,130,.09)!important}body.ff-v12-institutional .site-footer{background:#123f3d!important}

.ff12-toast{position:fixed;right:20px;bottom:20px;z-index:130;background:#123f3d;color:#fff;padding:10px 14px;border-radius:12px;box-shadow:0 12px 30px rgba(20,70,65,.22);font-size:12px;font-weight:700;opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s ease}.ff12-toast.is-visible{opacity:1;transform:translateY(0)}

@media (hover:hover) and (min-width:981px){.ff12-nav-item:hover>.ff12-mega{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}}
@media (max-width:1180px){.ff12-brand{min-width:auto}.ff12-brand-copy small{display:none}.ff12-search{max-width:300px}.ff12-nav-link,.ff12-nav-button{padding:0 9px}}
@media (max-width:980px){.ff12-header-inner{flex-wrap:wrap;padding:10px 16px;gap:10px}.ff12-brand{order:1}.ff12-search{order:2;max-width:none;flex:1;min-width:230px}.ff12-nav{order:3;width:100%;margin-left:0;overflow-x:auto;padding-top:2px;scrollbar-width:none}.ff12-nav::-webkit-scrollbar{display:none}.ff12-mega{position:fixed;left:16px!important;right:16px!important;top:116px;width:auto!important;max-height:70vh;overflow:auto}.ff12-mega-grid,.ff12-docs .ff12-mega-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ff12-fav-popover{position:fixed;right:16px;top:116px}}
@media (max-width:640px){.ff12-header-inner{padding:9px 12px}.ff12-brand-copy strong{font-size:16px}.ff12-brand-mark{width:38px;height:38px;border-radius:11px}.ff12-search{order:3;width:100%;min-width:100%}.ff12-nav{order:2;width:auto;flex:1;justify-content:flex-end}.ff12-nav-link,.ff12-nav-button{height:38px;font-size:12px;padding:0 8px}.ff12-nav-link span.ff12-label-mobile-hide{display:none}.ff12-mega{top:104px;left:10px!important;right:10px!important;padding:16px}.ff12-fav-popover{top:104px;left:10px;right:10px;width:auto}.ff12-mega-grid,.ff12-docs .ff12-mega-grid{grid-template-columns:1fr}.ff12-mega-group a{padding:7px 0}body.ff-v12-home #root main{padding-left:12px!important;padding-right:12px!important;padding-top:18px!important}body.ff-v12-home #root main>div.space-y-7>div:first-child{padding:18px!important;border-radius:17px!important}.ff-v12-tool-card{padding:18px!important;min-height:185px!important;border-radius:16px!important}.ff-v12-tool-card h3{font-size:16px!important}.ff-v12-tool-card>div:first-child>div:first-child>div:first-child{width:44px!important;height:44px!important}.ff12-star{top:14px;right:14px}}

/* ==========================================================
   FERRAMENTAS FLASH V13 — LAPIDAÇÃO VISUAL PREMIUM
   Cards inspirados no visual de referência e páginas internas
   alinhadas ao fundo/superfícies claras do OCR.
   ========================================================== */
:root{
  --ff13-bg:#f3f8f6;
  --ff13-surface:#ffffff;
  --ff13-soft:#eef6f3;
  --ff13-line:#d9e7e3;
  --ff13-line-strong:#a9d8d1;
  --ff13-ink:#0d3436;
  --ff13-muted:#607b78;
  --ff13-teal:#0b8f82;
  --ff13-teal-dark:#07786f;
  --ff13-teal-soft:#eaf5f2;
  --ff13-star:#f59e0b;
  --ff13-star-soft:#fff5dc;
  --ff13-shadow:0 10px 30px rgba(29,78,72,.055);
  --ff13-shadow-hover:0 18px 42px rgba(29,78,72,.105);
}

html,body{background:var(--ff13-bg)!important}

/* Home: mesma atmosfera clara e suave do OCR. */
body.ff-v12-home,
body.ff-v12-home #root,
body.ff-v12-home #root>div,
body.ff-v12-home #root main{background:var(--ff13-bg)!important}

/* Cards principais — leves, altos e com foco no ícone/título. */
.ff-v12-tool-card{
  position:relative!important;
  background:var(--ff13-surface)!important;
  border:1px solid var(--ff13-line)!important;
  border-radius:18px!important;
  box-shadow:var(--ff13-shadow)!important;
  padding:23px 23px 21px!important;
  min-height:210px!important;
  transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease,background .2s ease!important;
}
.ff-v12-tool-card:hover,
.ff-v12-tool-card:focus-visible{
  background:#fff!important;
  border-color:var(--ff13-line-strong)!important;
  box-shadow:var(--ff13-shadow-hover)!important;
  transform:translateY(-3px)!important;
  outline:none!important;
}
.ff-v12-tool-card.is-favorite-card{
  border-color:#b9ded8!important;
}

/* Ícone: suave por padrão; sólido teal no hover, como a referência. */
.ff-v12-tool-card>div:first-child>div:first-child>div:first-child{
  width:49px!important;
  height:49px!important;
  border-radius:14px!important;
  background:var(--ff13-teal-soft)!important;
  border:1px solid transparent!important;
  color:var(--ff13-teal)!important;
  box-shadow:none!important;
  transition:background .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease!important;
}
.ff-v12-tool-card>div:first-child>div:first-child>div:first-child svg{
  color:var(--ff13-teal)!important;
  stroke:currentColor!important;
  transition:color .2s ease,transform .2s ease!important;
}
.ff-v12-tool-card:hover>div:first-child>div:first-child>div:first-child,
.ff-v12-tool-card:focus-visible>div:first-child>div:first-child>div:first-child{
  background:var(--ff13-teal)!important;
  color:#fff!important;
  transform:translateY(-1px) scale(1.035)!important;
  box-shadow:0 8px 18px rgba(11,143,130,.18)!important;
}
.ff-v12-tool-card:hover>div:first-child>div:first-child>div:first-child svg,
.ff-v12-tool-card:focus-visible>div:first-child>div:first-child>div:first-child svg{
  color:#fff!important;
  transform:scale(1.04)!important;
}
.ff-v12-tool-card h3{color:var(--ff13-ink)!important;font-weight:850!important}
.ff-v12-tool-card h3+p+p{color:var(--ff13-muted)!important}

/* Estrela: contorno suave; favoritada fica laranja/dourada e preenchida. */
.ff12-star{
  width:34px!important;
  height:34px!important;
  top:17px!important;
  right:17px!important;
  border-radius:10px!important;
  color:#b8d6d1!important;
  background:transparent!important;
  transition:color .17s ease,background .17s ease,transform .17s ease,box-shadow .17s ease!important;
}
.ff12-star svg{
  width:21px!important;
  height:21px!important;
  fill:transparent!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  transition:fill .17s ease,stroke .17s ease,transform .17s ease!important;
}
.ff12-star:hover,.ff12-star:focus-visible{
  color:var(--ff13-teal)!important;
  background:var(--ff13-teal-soft)!important;
  transform:scale(1.07)!important;
  box-shadow:0 5px 14px rgba(11,143,130,.10)!important;
}
.ff12-star.is-favorite{
  color:var(--ff13-star)!important;
  background:var(--ff13-star-soft)!important;
  box-shadow:0 6px 15px rgba(245,158,11,.14)!important;
  transform:scale(1.04)!important;
}
.ff12-star.is-favorite svg{
  fill:var(--ff13-star)!important;
  stroke:var(--ff13-star)!important;
  transform:scale(1.06)!important;
}
.ff12-star.is-favorite:hover{
  color:#e88e05!important;
  background:#fff0c7!important;
  transform:scale(1.10)!important;
}

/* Mini cards de recentes no mesmo sistema visual. */
.ff12-recent-card{
  background:var(--ff13-surface)!important;
  border-color:var(--ff13-line)!important;
  box-shadow:0 6px 18px rgba(29,78,72,.04)!important;
}
.ff12-recent-card:hover{border-color:var(--ff13-line-strong)!important;box-shadow:0 10px 24px rgba(29,78,72,.08)!important}
.ff12-mini-icon{background:var(--ff13-teal-soft)!important;color:var(--ff13-teal)!important;transition:.18s ease}
.ff12-recent-card:hover .ff12-mini-icon,.ff12-fav-row:hover .ff12-mini-icon{background:var(--ff13-teal)!important;color:#fff!important;transform:scale(1.03)}

/* ==========================================================
   PÁGINAS DAS FERRAMENTAS — fundo e painéis no padrão do OCR
   ========================================================== */
body.ff-v12-tool,
body.ff-v12-tool #root,
body.ff-v12-tool #root>div,
body.ff-v12-tool #root main{
  background:var(--ff13-bg)!important;
  color:var(--ff13-ink)!important;
}

/* Neutraliza fundos escuros específicos usados pelo bundle React. */
body.ff-v12-tool #root [class*="bg-[#0b101b]"],
body.ff-v12-tool #root [class*="bg-[#0b141a]"],
body.ff-v12-tool #root [class*="bg-[#0d1522]"],
body.ff-v12-tool #root [class*="bg-[#0f172a]"],
body.ff-v12-tool #root [class*="bg-[#0f1e36]"],
body.ff-v12-tool #root [class*="bg-[#111c2e]"],
body.ff-v12-tool #root [class*="bg-[#141d2b]"],
body.ff-v12-tool #root [class*="bg-[#1e293b]"],
body.ff-v12-tool #root [class*="bg-[#202c33]"],
body.ff-v12-tool #root [class*="bg-[#223047]"],
body.ff-v12-tool #root [class*="bg-[#2a3942]"]{
  background:var(--ff13-surface)!important;
  color:var(--ff13-ink)!important;
}

/* Containers/painéis mais recorrentes do app. */
body.ff-v12-tool #root .rounded-xl.border,
body.ff-v12-tool #root .rounded-2xl.border,
body.ff-v12-tool #root .rounded-3xl.border{
  border-color:var(--ff13-line)!important;
}
body.ff-v12-tool #root .bg-slate-950,
body.ff-v12-tool #root .bg-slate-950\/40,
body.ff-v12-tool #root .bg-slate-950\/50,
body.ff-v12-tool #root .bg-slate-950\/70{background:var(--ff13-bg)!important}
body.ff-v12-tool #root .bg-slate-900,
body.ff-v12-tool #root .bg-slate-900\/90,
body.ff-v12-tool #root .bg-slate-900\/95{background:var(--ff13-surface)!important}
body.ff-v12-tool #root .bg-slate-800{background:var(--ff13-soft)!important}
body.ff-v12-tool #root .bg-slate-700{background:#e3efec!important}
body.ff-v12-tool #root .border-slate-900,
body.ff-v12-tool #root .border-slate-800,
body.ff-v12-tool #root .border-slate-700{border-color:var(--ff13-line)!important}
body.ff-v12-tool #root .text-white,
body.ff-v12-tool #root .text-slate-100{color:var(--ff13-ink)!important}
body.ff-v12-tool #root .text-slate-200{color:#365b57!important}
body.ff-v12-tool #root .text-slate-300{color:#597571!important}
body.ff-v12-tool #root .text-slate-400{color:#748c88!important}

/* Áreas de upload/entrada ganham fundo suave em vez do verde escuro. */
body.ff-v12-tool #root [class*="border-dashed"]{
  background:#f7fbf9!important;
  border-color:#b8d8d2!important;
}
body.ff-v12-tool #root [class*="border-dashed"]:hover{
  background:#f1f8f6!important;
  border-color:#72bdb3!important;
}

/* Botões/acento permanecem sólidos para contraste. */
body.ff-v12-tool #root [class*="bg-[#00a8e8]"],
body.ff-v12-tool #root .bg-teal-600,
body.ff-v12-tool #root .bg-emerald-600{
  background:var(--ff13-teal)!important;
  color:#fff!important;
  border-color:var(--ff13-teal)!important;
}
body.ff-v12-tool #root [class*="bg-[#00a8e8]"]:hover,
body.ff-v12-tool #root .bg-teal-600:hover,
body.ff-v12-tool #root .bg-emerald-600:hover{background:var(--ff13-teal-dark)!important}

/* Corrige combinações que ficaram com texto escuro sobre fundo teal. */
body.ff-v12-tool #root h1,
body.ff-v12-tool #root h2,
body.ff-v12-tool #root h3,
body.ff-v12-tool #root h4{color:var(--ff13-ink)!important}
body.ff-v12-tool #root p,
body.ff-v12-tool #root li{color:var(--ff13-muted)!important}

/* OCR e páginas standalone: a referência visual oficial das internas. */
body.ff-v12-tool.ff-v12-standalone{
  --bg:var(--ff13-bg)!important;
  --panel:var(--ff13-surface)!important;
  --panel-soft:#f7fbf9!important;
  --line:var(--ff13-line)!important;
  --text:var(--ff13-ink)!important;
  --muted:var(--ff13-muted)!important;
  --accent:var(--ff13-teal)!important;
  --accent2:var(--ff13-teal)!important;
  --cyan:var(--ff13-teal)!important;
  --cyan-dark:var(--ff13-teal-dark)!important;
  background:var(--ff13-bg)!important;
  color:var(--ff13-ink)!important;
}
body.ff-v12-tool.ff-v12-standalone .hero-card,
body.ff-v12-tool.ff-v12-standalone .hero,
body.ff-v12-tool.ff-v12-standalone .tool-card,
body.ff-v12-tool.ff-v12-standalone .content-card{
  background:var(--ff13-surface)!important;
  border-color:var(--ff13-line)!important;
  box-shadow:var(--ff13-shadow)!important;
}
body.ff-v12-tool.ff-v12-standalone .dropzone,
body.ff-v12-tool.ff-v12-standalone .drop-zone,
body.ff-v12-tool.ff-v12-standalone .file-panel,
body.ff-v12-tool.ff-v12-standalone .progress-panel,
body.ff-v12-tool.ff-v12-standalone .steps>div,
body.ff-v12-tool.ff-v12-standalone textarea,
body.ff-v12-tool.ff-v12-standalone select,
body.ff-v12-tool.ff-v12-standalone input{
  background:#f7fbf9!important;
  border-color:#cfe1dd!important;
  color:var(--ff13-ink)!important;
}
body.ff-v12-tool.ff-v12-standalone .site-footer{background:#103f3c!important;color:#e8f4f1!important}

@media(max-width:640px){
  .ff-v12-tool-card{padding:19px!important;min-height:190px!important}
  .ff-v12-tool-card>div:first-child>div:first-child>div:first-child{width:45px!important;height:45px!important;border-radius:13px!important}
  .ff12-star{top:13px!important;right:13px!important;width:32px!important;height:32px!important}
}
