/* Inter, self-hosted (SIL OFL 1.1, notice in /vendor/fonts/inter-LICENSE.txt). */
@font-face{font-family:"Inter";font-style:normal;font-display:swap;font-weight:100 900;src:url("/vendor/fonts/inter-latin-ext-wght-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Inter";font-style:normal;font-display:swap;font-weight:100 900;src:url("/vendor/fonts/inter-latin-wght-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font-family:Inter,"Segoe UI",Arial,sans-serif;background:#fafafa;color:#181d34}button,input,select{font:inherit}button,a,input{outline-offset:5px}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}[hidden]{display:none!important}.topbar{height:86px;max-width:1200px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e9eaf0;padding:0 28px}.brand{display:flex;align-items:center;gap:10px}.brand-symbol{width:40px;height:40px;border-radius:12px;background:#273ce7;color:white;font-size:1.75rem;font-weight:800;display:flex;align-items:center;justify-content:center;letter-spacing:-4px;padding-right:4px}.brand-symbol span{color:#bbc6ff;font-size:1.25rem;margin:5px 0 0 2px}.brand strong{font-size:1.375rem;letter-spacing:-.8px}.brand strong>span{font-weight:400;margin-left:4px;color:#7e8398}.topbar nav{display:flex;align-items:center;gap:29px;font-size:0.8125rem;font-weight:600;color:#61677e}.text-button{padding:0;border:0;background:transparent;color:inherit;font-size:0.8125rem;font-weight:600}.text-button:hover,a:hover{color:#273ce7}.preview-badge{font-size:0.6875rem;color:#61677e;background:#eeeff5;border-radius:30px;padding:8px 12px;display:flex;gap:6px;align-items:center}.preview-badge i,.green-dot{width:6px;height:6px;border-radius:50%;background:#638374;display:inline-block}main{max-width:1144px;padding:0 24px;margin:auto}.hero{min-height:440px;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:30px;padding:64px 0 52px}.eyebrow{font-size:0.625rem;font-weight:700;letter-spacing:1.45px;color:#8a8fa1;display:flex;align-items:center;gap:12px}.tiny-line{width:20px;height:1px;background:#b7bdcb}h1{font-size:clamp(2.375rem,calc(4.7vw * var(--ui-text-factor,1)),3.8125rem);line-height:1.07;letter-spacing:-3px;margin:22px 0 21px;font-weight:750}h1 span{color:#273ce7}.hero-copy>p{font-size:0.9375rem;color:#787e94;line-height:1.8;max-width:440px}.hero-actions{display:flex;gap:10px;margin-top:28px}.button{border:0;display:inline-flex;align-items:center;justify-content:space-between;gap:24px;font-size:0.75rem;font-weight:600;border-radius:9px;padding:14px 18px;transition:background .15s,transform .15s}.button:hover{transform:translateY(-1px)}.button:disabled{opacity:.5;cursor:not-allowed;transform:none}.primary{background:#273ce7;color:white}.primary:hover{color:white;background:#1c2fca}.subtle{background:#eef0f7;color:#525b75}.dark{background:#181d34;color:white}.hero-points{display:flex;gap:24px;margin-top:22px;font-size:0.625rem;color:#8a8fa1}.hero-points b{color:#63776e;margin-right:5px}.hero-art{position:relative;height:338px}.art-orbit{position:absolute;border-radius:50%;border:1px solid #e3e5f1;width:325px;height:325px;left:70px;top:0}.art-orbit.two{width:250px;height:250px;left:108px;top:37px}.file-card{position:absolute;background:white;border:1px solid #e4e6f0;border-radius:17px;box-shadow:0 18px 45px #1e275112;padding:18px}.file-card.back{width:174px;height:216px;left:54px;top:35px;transform:rotate(-14deg);background:#fff9f2;border-color:#f0e4d7}.file-tab{font-size:0.625rem;font-weight:800;color:#b66d3d;background:#ffeddc;display:inline-block;padding:6px 8px;border-radius:5px}.abstract-photo{height:103px;position:relative;overflow:hidden;background:#ffe4c9;border-radius:7px;margin:10px 0 12px}.abstract-photo i{width:50px;height:50px;border-radius:50%;background:#e4a377;position:absolute;top:14px;right:16px}.abstract-photo b{position:absolute;width:165px;height:120px;top:59px;left:-24px;background:#d0b1c6;transform:rotate(24deg);border-radius:40px}.file-card.back>span{font-size:0.5625rem;line-height:1.5;color:#a68872}.file-card.front{width:205px;height:246px;left:185px;top:65px;transform:rotate(8deg)}.file-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.pdf-mark{font-size:0.625rem;font-weight:800;color:#4052da;background:#eceeff;padding:7px 9px;border-radius:6px}.file-heading i{color:#bcc0d1;font-size:0.75rem}.paper-line{height:6px;width:70%;background:#e8ebf3;border-radius:3px;margin-bottom:8px}.paper-line.long{width:90%}.paper-line.short{width:47%}.mini-pages{display:flex;gap:7px;margin:21px 0}.mini-pages i{border:1px solid #d9def0;background:linear-gradient(#f3f5fb 65%,#e3e8ff 65%);width:33px;height:41px;border-radius:4px}.file-bottom{display:flex;align-items:center;justify-content:space-between;font-size:0.5625rem;line-height:1.6;color:#949aaf}.file-bottom b{border-radius:50%;background:#273ce7;color:white;display:flex;align-items:center;justify-content:center;width:27px;height:27px;font-size:1rem}.art-label{position:absolute;left:48px;bottom:7px;font-size:0.6875rem;color:#8c92aa;line-height:1.65}.art-label>span{font-size:1.5rem;float:left;margin-right:11px;color:#e4a574}.art-label strong{font-weight:500;color:#626b8e}.tools-section{padding:23px 0 45px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px}h2{font-size:1.8125rem;letter-spacing:-1px;margin:10px 0 0}.section-heading>p{color:#9095a5;line-height:1.65;font-size:0.6875rem;margin:0}.filter-row{display:flex;gap:9px;align-items:center;border-bottom:1px solid #e7e9f0;padding-bottom:18px;margin-bottom:23px}.filter{border:1px solid #e4e7ef;background:white;padding:8px 15px;border-radius:7px;font-size:0.75rem;color:#7b8299}.filter.active{background:#181d34;border-color:#181d34;color:white}.filter span{margin-left:7px;font-size:0.5625rem;color:#b2b7c8}.filter-caption{margin-left:auto;display:flex;align-items:center;gap:6px;font-size:0.625rem;color:#8b92a4}.tool-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.tool-card{padding:22px;border:1px solid #e7e9f0;background:white;text-align:left;min-height:183px;border-radius:12px;transition:transform .2s,border-color .2s,box-shadow .2s;position:relative}.tool-card:hover{transform:translateY(-3px);border-color:#b7bef8;box-shadow:0 12px 25px #202a5b08}.tool-icon{display:inline-flex;width:39px;height:39px;justify-content:center;align-items:center;border-radius:10px;background:#eef0ff;color:#5969e1}.tool-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.tool-card.image .tool-icon{background:#fff2e4;color:#bb8151}.tool-card h3{font-size:0.8125rem;letter-spacing:-.1px;margin:16px 0 7px}.tool-card p{font-size:0.6875rem;color:#959bad;line-height:1.65;margin:0;max-width:165px}.card-arrow{position:absolute;right:20px;top:25px;color:#c0c5d3;font-size:1.125rem}.tool-tag{font-size:0.5rem;color:#8992c9;background:#f0f2fc;border-radius:4px;padding:3px 5px;float:right;margin-top:3px}.trust-strip{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #e7e9f0;padding:39px 0;gap:45px}.step-number{font-size:0.6875rem;font-weight:700;color:#b6bccb}.trust-strip h3{font-size:0.8125rem;margin:12px 0 8px}.trust-strip p{font-size:0.6875rem;line-height:1.7;color:#959bad;max-width:220px}.future-strip{margin:12px 0 45px;padding:29px 30px;background:#eef0fc;border:1px solid #e6e9f8;border-radius:14px;display:flex;align-items:center;gap:24px}.future-symbol{font-size:2.25rem;color:#8391e8}.future-strip h3{font-size:1.3125rem;letter-spacing:-.5px;margin:7px 0 9px}.future-strip p{font-size:0.6875rem;color:#9198b3;line-height:1.6;margin:0}.future-strip .button{margin-left:auto;white-space:nowrap}footer{border-top:1px solid #e7e9f0;max-width:1144px;padding:26px 24px;margin:auto;display:flex;align-items:center;gap:25px;flex-wrap:wrap}.brand-symbol.small{width:29px;height:29px;border-radius:8px;font-size:1.375rem}.brand-symbol.small span{font-size:0.875rem}footer .brand strong{font-size:1.0625rem}footer>span{font-size:0.625rem;color:#a4a9b8}footer>div{margin-left:auto;display:flex;gap:20px;font-size:0.6875rem;color:#7b8398}footer small{width:100%;font-size:0.625rem;color:#a4a9b8}.workspace{margin:0 0 35px;border:1px solid #e2e5f1;background:white;border-radius:15px;padding:28px;scroll-margin-top:25px}.work-heading{display:flex;justify-content:space-between}.work-heading h2{font-size:1.5rem;margin-top:6px}.work-heading p{font-size:0.75rem;color:#8c93a7;line-height:1.7;margin-bottom:22px}.icon-button{width:30px;height:30px;border-radius:7px;border:1px solid #e6e8f0;background:white;color:#9299ae;font-size:1.3125rem}.work-layout{display:grid;grid-template-columns:1fr 270px;gap:25px}.dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:25px;border:1px dashed #bbc5f8;border-radius:10px;background:#f9faff;cursor:pointer;min-height:184px;gap:9px}.dropzone:hover,.dropzone.drag{background:#eef1ff}.upload-icon{font-size:1.875rem;color:#6878e9;line-height:1}.dropzone strong{font-size:0.8125rem}.dropzone>span:not(.upload-icon){font-size:0.6875rem;color:#8f96ae}.dropzone small{font-size:0.625rem;color:#a4abc0}.dropzone input{display:none}.file-list{list-style:none;padding:0;margin:16px 0}.file-list li{border-bottom:1px solid #eeeef5;display:flex;align-items:center;gap:8px;padding:9px 0;font-size:0.6875rem}.file-label{min-width:0;flex:1}.file-label strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.file-label small{color:#a0a7ba}.file-list button{border:0;background:#f1f3f8;border-radius:4px;font-size:0.6875rem;padding:4px 7px;color:#7c849b}.empty-hint{font-size:0.625rem;color:#a0a7ba;margin-top:12px}.options-panel{padding:18px;background:#f7f8fc;border:1px solid #eaecf4;border-radius:10px;align-self:start}.options-panel h3{font-size:0.8125rem;margin:0 0 17px}.options-panel label{display:flex;flex-direction:column;gap:7px;font-size:0.6875rem;margin:12px 0;color:#646e86}.options-panel input:not([type=range]),.options-panel select{border:1px solid #e1e5f0;border-radius:6px;padding:9px;min-width:0;width:100%;background:white;color:#45516d;font-size:0.75rem}.options-panel input[type=range]{width:100%;accent-color:#273ce7}.tool-note{font-size:0.625rem;color:#929cb3;line-height:1.7;margin:15px 0}.run-button{width:100%}.cancel-button{width:100%;margin-top:8px;justify-content:center}.status{font-size:0.6875rem;color:#6c7790;line-height:1.7;margin-top:10px}.status.error{color:#b44b4b}.results{border-top:1px solid #ebedf4;margin-top:20px;padding-top:20px}.result-heading{display:flex;align-items:center;justify-content:space-between}.result-heading h3{font-size:0.875rem}.result-row{display:flex;align-items:center;gap:15px;padding:14px 0;border-bottom:1px solid #eeeff4}.result-row>div{flex:1;min-width:0}.result-row strong{display:block;font-size:0.75rem;overflow-wrap:anywhere}.result-row small{display:block;font-size:0.625rem;line-height:1.65;color:#909bb1}.results>small{display:block;margin-top:15px;font-size:0.625rem;color:#a0a9bc}.saving{font-weight:600;color:#398968!important}.result-row .button{padding:9px 13px;font-size:0.625rem;white-space:nowrap}dialog{border:1px solid #e3e6f1;border-radius:15px;max-width:620px;width:calc(100% - 35px);padding:34px;color:#202841;box-shadow:0 30px 100px #0b164b33}dialog::backdrop{background:#101c3a66;backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:15px;top:15px}dialog h2{margin:5px 0 20px}dialog p,dialog li{font-size:0.8125rem;line-height:1.8;color:#7f8a9f}dialog ul{padding-left:20px}.plan-comparison{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:20px 0}.plan-comparison>div{padding:18px;border:1px solid #e1e5f2;border-radius:10px}.plan-comparison h3{margin:0;font-size:0.9375rem}.plan-comparison strong{font-size:1.6875rem;display:block;margin:13px 0}.plan-comparison small{font-size:0.625rem;color:#9ba3b7}.plan-comparison li{font-size:0.6875rem}.dialog-label{font-size:0.625rem;color:#6879c4;font-weight:600;text-transform:uppercase;letter-spacing:1px}body.processing .file-list button{pointer-events:none;opacity:.3}@media(max-width:980px){.hero{grid-template-columns:1.2fr 1fr;gap:10px}.hero-art{transform:scale(.85);transform-origin:center}.hero-actions{flex-direction:column;align-items:start}.tool-grid{grid-template-columns:repeat(3,1fr)}.future-strip{flex-wrap:wrap}.future-strip .button{margin-left:55px}.topbar nav{gap:15px}.hero-points{gap:12px}}@media(max-width:700px){.topbar{height:72px;padding:0 20px}.topbar nav{display:none}.brand strong{font-size:1.25rem}main{padding:0 20px}.hero{padding-top:35px;grid-template-columns:1fr;gap:0}.hero-art{height:245px;margin-top:24px;transform:scale(.75);transform-origin:top left;margin-left:calc((100vw - 370px)/2)}h1{font-size:3rem;letter-spacing:-2.5px}.hero-copy>p{font-size:0.875rem}.hero-actions{flex-direction:row;flex-wrap:wrap}.hero-points{font-size:0.5625rem}.eyebrow{font-size:0.5rem;letter-spacing:1.1px}.section-heading{display:block}.section-heading>p{margin-top:12px}.tool-grid{grid-template-columns:repeat(2,1fr);gap:10px}.tool-card{padding:17px;min-height:180px}.tool-card h3{font-size:0.75rem}.tool-card p{font-size:0.625rem}.card-arrow{right:15px}.filter-caption{display:none}.trust-strip{grid-template-columns:1fr;gap:12px;padding:25px 0}.trust-strip>div{display:grid;grid-template-columns:35px 1fr;gap:5px}.trust-strip h3{margin:0}.trust-strip p{grid-column:2;max-width:none;margin-top:0}.step-number{padding-top:2px}.future-strip{padding:23px;gap:14px}.future-strip>div{flex:1}.future-strip h3{font-size:1.125rem}.future-strip .button{margin:5px 0 0;width:100%}.workspace{padding:20px}.work-layout{grid-template-columns:1fr}.work-heading h2{font-size:1.3125rem}.options-panel{width:100%}.plan-comparison{grid-template-columns:1fr}footer{padding:24px 20px;gap:15px}footer>div{width:100%;margin:0}.result-row{gap:8px}}
#options-fields{border:0;padding:0;margin:0;min-width:0}.target-presets{display:flex;gap:6px;margin:8px 0}.target-presets button{flex:1;min-width:0;padding:7px 4px;border:1px solid #dce1f2;border-radius:6px;background:white;color:#5263c5;font-size:0.625rem}.target-presets button:hover{background:#ecefff}.target-presets button:disabled{opacity:.5;cursor:not-allowed}.field-hint{display:block;font-size:0.625rem;line-height:1.7;color:#808aa1;margin:8px 0}.options-panel label.checkbox-row{flex-direction:row;align-items:flex-start;gap:9px;line-height:1.6}.options-panel .checkbox-row input[type=checkbox]{width:auto;flex:none;margin:2px 0 0;padding:0;accent-color:#273ce7}.target-outcome{display:inline-block;font-size:0.625rem;font-weight:600;padding:4px 7px;border-radius:5px;margin:7px 0 4px}.target-outcome.met{color:#287253;background:#edf7f0}.target-outcome.missed{color:#8a5d1c;background:#fff4df}.status.warning{color:#8a5d1c}#options-fields:disabled{opacity:.65}@media(max-width:420px){.result-row{align-items:flex-start;flex-wrap:wrap}.result-row>div{flex-basis:100%}.result-row .button{margin-bottom:6px}}
#quality-advice{margin-top:12px}.quality-warning{margin:10px 0 0;padding:12px;border:1px solid #ebd29e;border-left:3px solid #b8791f;background:#fff8e9;border-radius:7px;color:#765018}.quality-warning strong,.result-row .quality-warning strong{display:block;font-size:0.6875rem;line-height:1.5}.quality-warning p{margin:5px 0 0;font-size:0.6875rem;line-height:1.7;color:#765018}
.skip-link{position:fixed;left:16px;top:-80px;z-index:50;background:#181d34;color:white;padding:12px;border-radius:6px}.skip-link:focus{top:10px}.tool-card{display:block}.tool-card:hover h3{color:#273ce7}.result-row>.result-actions{flex:none;display:flex;gap:8px;flex-wrap:wrap}.result-actions .button{justify-content:center}.ad-placement{margin:35px 0 45px;padding:16px 0;border-top:1px solid #e7e9f0;border-bottom:1px solid #e7e9f0;text-align:center}.ad-placement>small{display:block;color:#727b8f;font-size:0.625rem;letter-spacing:.6px;margin-bottom:12px}.ad-content{width:100%;min-height:120px}.ad-demo{min-height:120px;background:repeating-linear-gradient(135deg,#f1f3f8,#f1f3f8 12px,#f7f8fc 12px,#f7f8fc 24px);border:1px dashed #ccd2df;border-radius:8px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:9px;color:#6a748c;font-size:0.75rem;padding:18px}.ad-demo small{font-size:0.625rem;color:#8790a5}.ad-placement ins{display:block}.ad-consent{padding:20px 24px;margin:25px 0;background:#f1f3fc;border:1px solid #dce2f7;border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:20px}.ad-consent p{font-size:0.75rem;line-height:1.7;max-width:630px;margin:0}.consent-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.ad-consent .consent-actions{flex:none;margin:0}.tool-intro{padding:48px 0 28px;max-width:750px}.tool-intro h1{font-size:2.625rem;letter-spacing:-1.7px;margin:16px 0}.tool-intro p{font-size:0.875rem;color:#748098;line-height:1.8}.breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:0.6875rem;color:#7886a1}.tool-guide,.content-page{padding:25px 0 40px;max-width:850px;font-size:0.875rem;line-height:1.9;color:#69758f}.tool-guide h2,.content-page h2{font-size:1.4375rem;color:#181d34;margin:25px 0 10px}.tool-guide h3{font-size:1rem;color:#293550}.tool-guide li{margin:8px 0}.tool-guide details{border-bottom:1px solid #e4e8f0;padding:15px 0}.tool-guide summary{cursor:pointer;font-weight:600;color:#374461}.tool-guide details p{margin:10px 0 0}.tool-guide a,.content-page a{color:#273ce7;text-decoration:underline}.content-page{min-height:50vh}.content-page h1{font-size:2.5rem;color:#181d34;letter-spacing:-1.4px;line-height:1.2}.content-page .content-callout{padding:16px 20px;background:#eef1ff;border:1px solid #e1e5f9;border-radius:8px}.noscript-note{padding:20px;text-align:center}#compare-dialog{max-width:1100px;width:calc(100% - 32px)}#compare-close{position:absolute;right:16px;top:16px}.compare-toolbar{display:flex;gap:8px;flex-wrap:wrap}.compare-toolbar [aria-pressed=true]{background:#181d34;color:white}.compare-hint{font-size:0.6875rem!important}.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.compare-grid figure{margin:0;min-width:0}.compare-grid figcaption{font-size:0.8125rem;line-height:1.8;margin-bottom:10px}.compare-grid figcaption strong,.compare-grid figcaption small{display:block}.compare-grid figcaption small{font-size:0.6875rem;color:#75829d}.compare-viewport{height:360px;max-height:50vh;overflow:auto;border:1px solid #dce1ec;border-radius:9px;background-color:white;background-image:linear-gradient(45deg,#e8ebf2 25%,transparent 25%),linear-gradient(-45deg,#e8ebf2 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e8ebf2 75%),linear-gradient(-45deg,transparent 75%,#e8ebf2 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0}.compare-viewport img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;margin:auto}.actual-size .compare-viewport img{max-width:none;max-height:none;margin:0}@media(max-width:700px){.ad-consent{display:block}.ad-consent .consent-actions{margin-top:15px}.ad-demo,.ad-content{min-height:100px}.tool-intro h1{font-size:2.125rem}.compare-grid{grid-template-columns:1fr}.compare-viewport{height:260px;max-height:35vh}#compare-dialog{padding:22px;max-height:90vh}.result-row>.result-actions{flex-basis:100%}.content-page h1{font-size:2rem}footer>div{flex-wrap:wrap;row-gap:12px}.tool-intro{padding-top:30px}}

/* Brand assets and labels are generated from branding.json. */
/* Shared navigation and centered close controls apply to every page. */
.language-selector{flex:none;width:72px;min-height:36px;padding:7px;border:1px solid #dfe3ee;border-radius:11px;background:#fff;color:#58657e;font-size:0.6875rem;text-align:center;cursor:pointer}
.language-picker{position:relative;flex:none;font-size:0.75rem;line-height:1.4}
.language-switch{flex:none}.topbar .language-fallback{display:flex;align-items:center;gap:3px;padding:3px;border:1px solid #e0e3ee;border-radius:10px;background:#fff;font-size:0.6875rem}.language-fallback a{display:inline-flex;align-items:center;justify-content:center;min-width:33px;min-height:28px;padding:4px 7px;border-radius:6px}.language-fallback [aria-current=page]{background:#f1edff;color:#5539eb}
.language-notice{display:flex;align-items:center;gap:12px;width:calc(100% - 40px);max-width:1096px;margin:12px auto 0;padding:10px 12px;border:1px solid #e2def7;border-radius:9px;background:#f6f4ff;font-size:0.6875rem;color:#6d7290}.language-notice .text-button{font-size:0.6875rem;color:#5539eb;text-decoration:underline}.language-notice .icon-button{margin-left:auto;width:26px;height:26px;flex:none}.language-notice .icon-button svg{width:14px;height:14px}@media(max-width:500px){.language-notice{flex-wrap:wrap;gap:6px 12px;padding-right:38px;position:relative}.language-notice .icon-button{position:absolute;right:8px;top:50%;transform:translateY(-50%)}}
.language-trigger{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:82px;height:36px;padding:0 10px;border:1px solid #e0e3ee;border-radius:11px;background:#fff;color:#59627b;font-size:0.6875rem;font-weight:650;transition:background .15s,border-color .15s,box-shadow .15s}
.language-trigger>svg{display:block;width:15px;height:15px;flex:none}.language-trigger .language-chevron{width:13px;height:13px;transition:transform .15s}
.language-trigger:hover,.language-trigger[aria-expanded=true]{border-color:#c8bfff;background:#f5f3ff;color:#5539eb}.language-trigger[aria-expanded=true] .language-chevron{transform:rotate(180deg)}
.language-trigger:focus-visible,.language-selector:focus-visible{outline:2px solid #7660ef;outline-offset:3px}
.language-menu{position:absolute;right:0;top:calc(100% + 9px);z-index:40;width:194px;padding:7px;border:1px solid #e4e2f1;border-radius:14px;background:#fff;box-shadow:0 12px 32px #24203f14,0 2px 6px #24203f08}
.language-menu-heading{display:block;padding:5px 9px 8px;font-size:0.625rem;font-weight:600;color:#8990a2}
.language-option{display:flex;align-items:center;gap:10px;min-height:42px;padding:7px 9px;border-radius:8px;color:#555e76;cursor:pointer;outline:none}.language-option+.language-option{margin-top:3px}
.language-code{display:inline-flex;align-items:center;justify-content:center;width:28px;height:25px;flex:none;border:1px solid #e9eaf1;border-radius:6px;background:#f8f9fc;font-size:0.5625rem;font-weight:700;letter-spacing:.3px}.language-name{flex:1;font-size:0.75rem;font-weight:550}
.language-check{display:block;width:17px;height:17px;flex:none;visibility:hidden}.language-option[aria-selected=true]{background:#f1edff;color:#5539eb}.language-option[aria-selected=true] .language-code{border-color:#ded6ff;background:#e8e1ff}.language-option[aria-selected=true] .language-check{visibility:visible}
.language-option:hover,.language-option:focus-visible{background:#f5f4fb;color:#4633c1}.language-option:focus-visible{box-shadow:inset 0 0 0 2px #bdb0fb}
@media(prefers-reduced-motion:reduce){:root:not([data-reduced-motion=no]) .language-trigger,:root:not([data-reduced-motion=no]) .language-trigger .language-chevron{transition:none}}
@media(max-width:900px){.topbar .preview-badge{display:none}}
@media(min-width:701px) and (max-width:900px){.hero-art{transform:scale(.72);transform-origin:top left}}
.button{justify-content:center;gap:12px;text-align:center}
.options-panel .range-label>span{display:flex;align-items:center;justify-content:space-between;gap:8px}.range-label output{font-weight:600;color:#5539eb;white-space:nowrap}.options-panel .field-hint{font-size:0.6875rem;color:#707d95;line-height:1.65}.options-panel .target-explanation{padding:10px 12px;border-left:2px solid #c4bafa;background:#eeebfa;border-radius:0 6px 6px 0}.options-panel .tool-note{font-size:0.6875rem;color:#707d95}
.trust-strip{gap:16px;padding:24px 0}.trust-strip>div{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:start;gap:14px;padding:20px;border:1px solid #e1e5f0;border-radius:12px;background:#fff}.trust-strip .step-number{display:flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border-radius:10px;background:#eeebff;color:#5539eb;font-size:0.6875rem;line-height:1}.trust-strip h3{font-size:0.875rem;line-height:1.5;margin:3px 0 8px}.trust-strip p{font-size:0.75rem;line-height:1.7;max-width:none;margin:0;grid-column:auto;color:#7a859b}
.topbar nav{margin-left:auto}
.icon-button{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;padding:0;line-height:1}
.icon-button svg{display:block;width:18px;height:18px}
@media(min-width:701px){.hero{min-height:420px;padding:56px 0 46px}main>.hero h1{font-size:clamp(2.25rem,calc(4vw * var(--ui-text-factor,1)),3.125rem)}.tool-card{padding:20px;min-height:174px}}
@media(min-width:981px){.hero-art{transform:scale(.94);transform-origin:center}}
@media(max-width:700px){.hero{padding-top:32px;padding-bottom:46px}main>.hero h1{font-size:2.5rem}.tool-card{padding:16px;min-height:174px}}
@media(max-width:360px){main>.hero h1{font-size:2.125rem}}
.ad-main{min-width:0}.ad-rail-column{display:none}.ad-rail{position:sticky;top:108px;width:160px;margin:0;padding:12px 0}.ad-rail .ad-content,.ad-rail ins{width:160px;height:600px;min-height:600px}.ad-rail .ad-demo{height:600px;min-height:600px;padding:12px;font-size:0.6875rem;line-height:1.6}.ad-rail .ad-demo small{font-size:0.625rem}/* Side ad: shown from 1280 px on screens with a precise pointer; 160 px wide, 300 px on large screens. */
:root{--rail-width:10rem}
.ad-rail{width:var(--rail-width)}.ad-rail .ad-content,.ad-rail ins,.ad-rail .ad-demo,.ad-rail .ad-promotion{width:100%}
@media(min-width:1180px) and (hover:hover) and (pointer:fine){.ad-layout:has(>.ad-rail-column .ad-rail:not([hidden])){display:grid;grid-template-columns:minmax(0,1fr) var(--rail-width);gap:32px}.ad-layout:has(>.ad-rail-column .ad-rail:not([hidden])) .ad-rail-column{display:block}.tools-body:has(.ad-rail:not([hidden])){display:grid;grid-template-columns:minmax(0,1fr) var(--rail-width);gap:24px;align-items:stretch}.tools-body .ad-rail:not([hidden]){display:flex}}
/* Home: the side ad sits beside the tool grid and takes the grid's height. */
.tools-body .ad-rail{position:static;display:none;flex-direction:column;margin:0;padding:0;border:0}.tools-body .ad-rail .ad-content,.tools-body .ad-rail ins,.tools-body .ad-rail .ad-demo,.tools-body .ad-rail .ad-promotion{flex:1;height:auto;min-height:250px}
.brand{min-width:0;max-width:290px}.brand-logo{display:block;flex-shrink:0;width:40px;height:40px;object-fit:contain}.brand-logo.small{width:29px;height:29px}.brand strong{overflow-wrap:anywhere;line-height:1.15}.topbar{gap:20px}.topbar nav,.preview-badge{flex-shrink:0}.preview-badge{white-space:nowrap}@media(max-width:700px){.topbar{gap:12px}.topbar .brand{flex:1}.topbar .brand strong{font-size:1.125rem}.brand-logo{width:34px;height:34px}}
.hero h1{font-size:clamp(2.375rem,calc(4.3vw * var(--ui-text-factor,1)),3.375rem);line-height:1.08;letter-spacing:-2px}.hero h1 .hero-brand{display:block;font-size:1.125rem;line-height:1.6;letter-spacing:-.4px;margin-bottom:12px;color:#5539eb}.hero h1>span:last-child{color:#5539eb}.hero-vortex{position:absolute;top:30px;left:75px;width:260px;height:260px;opacity:.15;transform:rotate(-18deg);filter:blur(1px)}.upload-icon{background:transparent}.upload-icon img{display:block;border-radius:12px}.button.primary{background:#5539eb}.button.primary:hover{background:#4327cd}.tool-card:hover h3{color:#5539eb}.processing .upload-icon img{animation:vortex-spin 1.4s ease-in-out infinite}@keyframes vortex-spin{0%{transform:rotate(0) scale(1)}50%{transform:rotate(360deg) scale(.65)}100%{transform:rotate(720deg) scale(1)}}@media(max-width:700px){.hero h1{font-size:2.625rem;letter-spacing:-1.8px}.hero h1 .hero-brand{font-size:1rem}.hero-art{margin-top:18px}}@media(max-width:360px){.hero h1{font-size:2.25rem;letter-spacing:-1.5px}}@media(prefers-reduced-motion:reduce){:root:not([data-reduced-motion=no]) .processing .upload-icon img{animation:none}}

.ad-promotion{min-height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:20px;border:1px solid #e0e4f4;border-radius:10px;background:#f5f6fc;color:#47516e;font-size:0.75rem;line-height:1.6}.ad-promotion small{color:#6d7791;font-size:0.625rem}.ad-promotion strong{font-size:1.125rem;color:#252e50}.ad-promotion a{color:#5136dc;text-decoration:underline;text-underline-offset:3px}.ad-rail .ad-promotion{min-height:600px;padding:14px}.ad-rail .ad-promotion strong{font-size:1rem}#ad-consent{flex-wrap:wrap}#ad-consent .consent-actions{flex:0 1 auto}#ad-settings .consent-actions .button,#ad-consent .consent-actions .button{justify-content:center;text-align:center;white-space:normal;max-width:100%}@media(max-width:480px){#ad-settings .consent-actions,#ad-consent .consent-actions{flex-direction:column;align-items:stretch}}

.usage-controls{margin:20px 0;padding:18px 20px;border:1px solid #dfe4f3;border-radius:10px;background:#f5f6fc}.usage-controls p{margin:0}.usage-controls .button{justify-content:center;text-align:center;white-space:normal;max-width:100%}

/* One fluid shell keeps the header, tools and footer aligned on wide screens. */
:root{--site-shell-width:100%;--site-gutter:clamp(16px,1.6vw,40px)}
.topbar,main,footer{width:100%;max-width:var(--site-shell-width);padding-inline:var(--site-gutter)}
.language-notice{max-width:calc(var(--site-shell-width) - 2 * var(--site-gutter));width:calc(100% - 2 * var(--site-gutter))}
.hero-copy>p{max-width:56ch}
.hero h1>span:last-child{display:block}
footer>div{flex-wrap:wrap;row-gap:12px}
@media(min-width:981px){.hero-art{width:440px;max-width:100%;justify-self:center}}

/* Redesign, Oct 2026: the task comes first on tool pages, results are prominent, the header works on phones. */
/* Tool pages: the page title is the only visible heading; the workspace heading stays for screen readers. */
.tool-intro{padding:28px 0 18px}.tool-intro h1{margin:12px 0 8px}.tool-intro p{margin:0;max-width:72ch}
body[data-tool] .work-heading{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
body[data-tool] #close-workspace{display:none}
/* Compact upload row: icon, text and a visible call to action. The whole row stays one label. */
.dropzone{flex-direction:row;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:14px 18px;min-height:0;padding:20px 22px;text-align:left}
.upload-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;flex:none}.upload-icon svg{display:block;width:24px;height:24px}
.dropzone>span.dropzone-copy{display:flex;flex-direction:column;gap:4px;flex:1 1 180px;min-width:0;font-size:inherit;color:inherit}
.dropzone-copy strong{font-size:0.9375rem}.dropzone-copy>span{font-size:0.75rem;line-height:1.5;color:var(--ui-muted)}.dropzone-copy small{font-size:0.6875rem;line-height:1.5;color:var(--ui-muted)}
.dropzone>span.dropzone-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:10px;background:var(--ui-solid);color:var(--ui-on-solid);font-size:0.8125rem;font-weight:650;white-space:nowrap}
.dropzone:hover>span.dropzone-action{background:var(--ui-solid-hover)}
.processing .upload-icon svg{animation:upload-pulse 1.2s ease-in-out infinite}@keyframes upload-pulse{50%{transform:translateY(-3px);opacity:.55}}
/* Settings: the action button stays reachable while long option lists scroll. */
.options-panel h3{font-size:0.9375rem}
/* Desktop: the panel follows the page and scrolls on its own; the button is pinned to its bottom edge. */
.options-panel{padding-bottom:0}
.run-area{position:sticky;bottom:0;z-index:2;margin:6px -18px 0;padding:14px 18px 18px;background:inherit;border-top:1px solid var(--ui-border);border-radius:0 0 10px 10px}
@media(min-width:701px){.options-panel{position:sticky;top:96px;max-height:calc(100dvh - 112px);overflow:auto;overscroll-behavior:contain}html[lang=pt-BR] .options-panel{max-height:calc(100dvh - 172px)}}
/* Phones: the button becomes a bottom bar; in Portuguese it leaves room for the Libras button beside it. */
@media(max-width:700px){.run-area{margin-inline:-18px;padding-inline:18px}html[lang=pt-BR] .run-area .run-button,html[lang=pt-BR] .run-area .cancel-button{width:calc(100% - 96px)}}
/* Results open above the files, as a card. */
.results{margin:0 0 24px;padding:18px 20px;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface);scroll-margin-top:96px}
.results:focus{outline:none}.result-heading h3{font-size:1rem;margin:0}

.result-row .saving{font-weight:700;color:var(--ui-success)!important}
/* Phones: the navigation wraps to a second row instead of disappearing. */
@media(max-width:700px){
.topbar{height:auto;min-height:64px;flex-wrap:wrap;row-gap:4px;padding-block:10px 4px}
.topbar>nav{display:flex;order:3;flex:1 1 100%;margin-left:0;gap:2px;justify-content:space-between;overflow-x:auto}
.topbar>nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 8px}
.dropzone>span.dropzone-action{flex:1 1 100%}
.dropzone{padding:16px}
}
.topbar>nav a[aria-current]{color:var(--ui-text);box-shadow:inset 0 -2px 0 var(--ui-solid)}
/* Information pages: summary + table of contents for long policies, cards for short ones. */
.content-page{max-width:1080px}.content-page a.button{text-decoration:none}
.content-page>p,.content-page>h2,.doc-body p{max-width:72ch}
.page-lead{font-size:1rem}.page-meta{font-size:0.8125rem}
.doc-summary h2{font-size:1.125rem;margin:22px 0 12px}
.doc-summary ul,.report-checklist,.plan-list{list-style:none;margin:0;padding:0}
.doc-summary ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:12px}
.doc-summary li,.info-card,.contact-card,.plan-card,.report-checklist li,.page-toc{border:1px solid var(--ui-border);background:var(--ui-surface)}
.doc-summary li{display:flex;flex-direction:column;gap:6px;padding:18px;border-radius:12px;line-height:1.5}
.doc-summary strong,.report-checklist strong,.info-cta strong{color:var(--ui-text)}.doc-summary strong{font-size:0.9375rem}.doc-summary span{font-size:0.8125rem}
.doc-layout{display:flex;flex-wrap:wrap;align-items:flex-start;gap:24px 48px;margin-top:28px}
.page-toc{flex:1 1 220px;max-width:280px;padding:14px;border-radius:12px;font-size:0.8125rem;line-height:1.4}
.page-toc>strong{display:block;padding:2px 8px 8px;font-size:0.6875rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ui-muted)}
.page-toc ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.page-toc li{margin:0}
.page-toc a{display:block;padding:8px;border-radius:8px;text-decoration:none}.page-toc a:hover{background:var(--ui-soft)}
.doc-body{flex:999 1 520px;min-width:0;max-width:760px}.doc-body h2{scroll-margin-top:96px}.doc-body section:first-child h2{margin-top:0}
@media(min-width:900px){.page-toc{position:sticky;top:100px;max-height:calc(100dvh - 120px);overflow:auto}}
@media(max-width:899px){.page-toc{max-width:none}}
.info-grid,.contact-cards,.plan-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:14px;margin:20px 0 8px}
.info-card{padding:22px 24px;border-radius:14px}.content-page .info-card h2{font-size:1.0625rem;margin:0 0 8px}.info-card p{margin:0;font-size:0.875rem;line-height:1.7}
.info-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;margin-top:20px;padding:22px 24px;border:1px solid var(--ui-border);border-radius:14px;background:var(--ui-tint)}.info-cta strong{display:block;font-size:1.0625rem}.info-cta p{margin:4px 0 0}
.contact-card,.plan-card{display:flex;flex-direction:column;gap:12px;padding:24px;border-radius:16px}
.contact-card.contact-primary,.plan-card.plan-current{border:2px solid var(--ui-solid)}
.content-page .contact-card h2,.content-page .plan-head h2{margin:0;font-size:1.25rem}.contact-card p{margin:0}
.contact-card .button,.plan-card .button{margin-top:auto;align-self:flex-start;min-height:46px;font-size:0.8125rem}
.report-checklist{counter-reset:step;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:12px;margin:12px 0}
.report-checklist li{counter-increment:step;display:flex;flex-direction:column;gap:4px;padding:16px 18px;border-radius:12px;line-height:1.45}
.report-checklist li::before{content:counter(step);display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin-bottom:6px;border-radius:8px;background:var(--ui-tint);color:var(--ui-link);font-weight:700;font-size:0.8125rem}
.report-checklist strong{font-size:0.875rem}.report-checklist span{font-size:0.8125rem}
.plan-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.plan-badge{font-size:0.6875rem;font-weight:700;padding:4px 10px;border-radius:999px;white-space:nowrap}.plan-badge-ok{background:var(--ui-success-bg);color:var(--ui-success)}.plan-badge-soon{background:var(--ui-warning-bg);color:var(--ui-warning)}
.plan-price{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}.plan-price strong{font-size:1.875rem;letter-spacing:-.5px;color:var(--ui-text)}.plan-price span{font-size:0.875rem}
.plan-caption{margin:0;font-size:0.6875rem;font-weight:650;letter-spacing:.06em;text-transform:uppercase}
.plan-list{display:flex;flex-direction:column;gap:8px}.plan-list li{display:flex;gap:10px;align-items:baseline;margin:0;line-height:1.55;font-size:0.875rem}
.plan-list li::before{content:"\2713";flex:none;font-weight:700;color:var(--ui-success)}.plan-list-pending li::before{content:"\25CB";font-weight:400;color:var(--ui-muted)}

/* ===== Parity with the approved design (Oct 2026) =====
   Measurements copied from the design at 1280 px, in rem: from 1280 px up the root font grows with the
   screen (accessibility.css), so the whole composition scales like a zoom and fills the width. */
/* Content uses the screen up to 90rem (about 1620 px on a 1920 px screen), leaving a small margin beyond that. */
:root{--site-gutter:1.5rem;--site-shell-width:calc(90rem + 2 * var(--site-gutter))}
body{font-size:1rem}
/* Header */
.topbar{height:auto;min-height:4.75rem;padding-block:1rem;gap:1rem 1.75rem}
.brand{gap:.625rem;max-width:none}.topbar .brand-logo{width:2.25rem;height:2.25rem;border-radius:.625rem}.topbar .brand strong{font-size:1.25rem;font-weight:800;letter-spacing:-.02em}
.topbar>nav{gap:.25rem;font-size:.9375rem;font-weight:500}
.topbar>nav a{display:inline-flex;align-items:center;padding:.625rem .75rem;border-radius:.5rem}
.topbar>nav a[aria-current]{background:var(--ui-soft);box-shadow:none}
.topbar .accessibility-launcher.in-header{width:2.75rem;height:2.75rem;min-height:2.75rem;border-radius:.625rem}.topbar .accessibility-launcher.in-header>svg{width:1.25rem;height:1.25rem}
.language-trigger{height:2.75rem;min-width:0;padding:0 .875rem;gap:.5rem;border-radius:.625rem;font-size:.875rem;font-weight:600}.language-trigger>svg{width:1.125rem;height:1.125rem}
/* Home: hero */
.hero{display:flex;flex-wrap:wrap;align-items:center;gap:3rem;min-height:0;padding:4rem 0 0}
.hero-copy{flex:0 1 38rem;min-width:0;display:flex;flex-direction:column;gap:1.375rem}
.hero .eyebrow{display:block;font-size:.8125rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
main>.hero h1,.hero h1{margin:0;font-size:3.5rem;line-height:1.05;font-weight:800;letter-spacing:-.02em}
.hero h1>span:last-child{display:inline}
.hero-copy>p{margin:0;max-width:32.5rem;font-size:1.125rem;line-height:1.6}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;margin:0}
.hero-actions .hero-cta{height:3.25rem;padding:0 1.5rem;gap:.625rem;border-radius:.75rem;font-size:1rem;font-weight:700}
.hero-cta svg,.quick-arrow svg,.quick-points svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}
.hero-cta svg{width:1.125rem;height:1.125rem;stroke-width:2.2}
.hero-actions .hero-privacy{min-height:2.75rem;font-size:.9375rem;font-weight:500;color:var(--ui-link);text-decoration:underline;text-underline-offset:.25rem}
.hero-quick{flex:1 1 23.75rem;min-width:0;padding:.625rem;border:1px solid var(--ui-border);border-radius:1.125rem;background:var(--ui-surface)}
.quick-head{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;padding:.875rem 1rem .625rem}.quick-head strong{font-size:.9375rem;font-weight:700}.quick-head span{font-size:.8125rem;color:var(--ui-muted)}
.quick-list{display:flex;flex-direction:column}
.quick-link{display:flex;align-items:center;gap:.875rem;padding:.875rem 1rem;border-radius:.75rem;color:var(--ui-text)}.quick-link:first-child,.quick-link:hover{background:var(--ui-soft)}
.quick-link .tool-icon{flex:none;width:2.75rem;height:2.75rem;border-radius:.625rem}.quick-link .tool-icon svg{width:1.375rem;height:1.375rem}
.quick-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:.125rem}.quick-copy strong{font-size:1rem;font-weight:700}.quick-copy small{font-size:.875rem;line-height:1.4;color:var(--ui-muted)}
.quick-arrow{display:flex;color:var(--ui-muted)}.quick-arrow svg{width:1.125rem;height:1.125rem;stroke-width:2}
.quick-points{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;padding:.875rem 1rem .625rem;font-size:.8125rem;color:var(--ui-muted)}.quick-points span{display:inline-flex;align-items:center;gap:.375rem}.quick-points svg{width:.875rem;height:.875rem;stroke:var(--ui-success);stroke-width:2.6}
/* Home: tools */
.tools-section{padding:4.5rem 0 0}
.section-heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;margin:0 0 1.5rem}
.section-heading .eyebrow{font-size:.8125rem;font-weight:700;letter-spacing:.12em}
.section-heading h2{margin:.625rem 0 0;font-size:2.125rem;font-weight:800;letter-spacing:-.01em}
.section-heading .filter-row{margin:0;padding:0;border:0;gap:.5rem}
.filter{height:2.75rem;padding:0 1rem;border-radius:.625rem;font-size:.875rem;font-weight:600}.filter span{margin:0;font-size:inherit;color:inherit}.filter span::before{content:" · "}
.section-heading .filter.active{background:var(--ui-tint);border-color:var(--ui-solid);color:var(--ui-text)}
.tool-grid{grid-template-columns:repeat(auto-fill,minmax(15.625rem,1fr));gap:1rem}
.tool-card{display:flex;flex-direction:column;gap:.625rem;min-height:0;padding:1.375rem;border-radius:.875rem}
.tool-card .tool-icon{width:2.5rem;height:2.5rem;border-radius:.625rem}.tool-card .tool-icon svg{width:1.25rem;height:1.25rem}
.tool-card h3{margin:0;font-size:1.0625rem;font-weight:700;letter-spacing:0}.tool-card p{margin:0;max-width:none;font-size:.875rem;line-height:1.5}
.card-arrow{display:none}.tool-tag{float:none;align-self:flex-start;margin:0;padding:.1875rem .375rem;border-radius:.25rem;font-size:.625rem}
.tools-body:has(.ad-rail:not([hidden])){gap:1.5rem}
/* Home: how it works and the Pro banner */
.how-section{padding-top:4.5rem;border-top:0}.how-section h2{margin:0 0 1.5rem;font-size:1.75rem;font-weight:800;letter-spacing:0}
.how-section .trust-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(16.25rem,1fr));gap:1rem;padding:0;border:0}
.trust-strip>div{display:flex;gap:1rem;padding:1.375rem;border-radius:.875rem}
.trust-strip .step-number{flex:none;width:2.25rem;height:2.25rem;border-radius:.625rem;font-size:.875rem;font-weight:700}
.trust-strip .step-copy{display:flex;flex-direction:column;gap:.375rem}.trust-strip h3{margin:0;font-size:1rem;font-weight:700}.trust-strip p{margin:0;font-size:.875rem;line-height:1.5}
.future-strip{flex-wrap:wrap;gap:1.25rem 2rem;margin:4.5rem 0 0;padding:1.75rem 2rem;border-radius:1rem}
.future-symbol{display:none}
.future-strip>div{flex:1 1 26.25rem;min-width:0;display:flex;flex-direction:column;gap:.5rem}
.future-strip .eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.future-strip h3{margin:0;font-size:1.375rem;font-weight:700;letter-spacing:0}.future-strip p{margin:0;font-size:.9375rem;line-height:1.55}
.future-strip .future-cta{margin:0;height:3rem;padding:0 1.25rem;border:1px solid var(--ui-border);border-radius:.75rem;background:transparent;color:var(--ui-text);font-size:.9375rem;font-weight:600;white-space:nowrap}
/* Footer */
footer{margin-top:4.5rem;padding-top:1.75rem;gap:1rem 2rem}
footer .brand strong{font-size:1rem;font-weight:700}footer .brand-logo.small{width:1.75rem;height:1.75rem}
footer>span,footer>div,footer .text-button{font-size:.875rem;font-weight:400}footer>div{gap:.5rem 1.25rem}
/* Tool pages */
.tool-intro{max-width:none;padding:1.75rem 0 1.5rem}.breadcrumbs{gap:.5rem;font-size:.875rem}
.tool-intro h1{margin:1.375rem 0 .625rem;font-size:2.625rem;line-height:1.1;font-weight:800;letter-spacing:-.02em}
.tool-intro p{max-width:none;font-size:1.0625rem;line-height:1.55}
body[data-tool] .workspace{margin:0 0 3rem;padding:0;border:0;background:transparent;border-radius:0}
.work-layout{grid-template-columns:minmax(0,1fr) 20rem;gap:1.25rem}
.dropzone{gap:1rem 1.25rem;padding:1.375rem 1.5rem;border-width:1.5px;border-radius:1rem}
.upload-icon{width:3rem;height:3rem;border-radius:.75rem}.upload-icon svg{width:1.5rem;height:1.5rem}
.dropzone-copy strong{font-size:1rem}.dropzone-copy>span,.dropzone-copy small{font-size:.8125rem}
.dropzone>span.dropzone-action{min-height:2.75rem;padding:0 1.125rem;border-radius:.625rem;background:var(--ui-tint);color:var(--ui-text);font-size:.875rem;font-weight:600}
.dropzone:hover>span.dropzone-action{background:var(--ui-tint)}
.empty-hint{margin-top:1rem;font-size:.8125rem}
.options-panel{padding:1.375rem 1.375rem 0;border-radius:1rem}
.options-panel h3{margin:0 0 1.25rem;font-size:1.0625rem;font-weight:700}
.options-panel label{gap:.5rem;margin:0 0 1.25rem;font-size:.875rem;font-weight:600}
.options-panel input:not([type=range]):not([type=checkbox]){min-height:2.875rem;padding:0 .875rem;border-radius:.625rem;font-size:.9375rem}
.options-panel .select-trigger{min-height:2.875rem;padding:0 .875rem;border-radius:.625rem;font-size:.9375rem}
.options-panel .field-hint,.options-panel .tool-note,.status{font-size:.8125rem}
.target-presets button{height:2.25rem;border-radius:.5rem;font-size:.8125rem}
.run-area{margin:.375rem -1.375rem 0;padding:1rem 1.375rem 1.25rem;border-radius:0 0 1rem 1rem}
.run-button,.cancel-button{height:3.25rem;border-radius:.75rem;font-size:1rem;font-weight:700}
.results{padding:1.125rem 1.375rem;border-radius:1rem}.result-heading h3{font-size:1rem}
.result-row{gap:1rem;padding:1.25rem 0}.result-row strong{font-size:.9375rem}.result-row small{font-size:.8125rem}

.result-row .button{min-height:2.75rem;padding:0 1rem;border-radius:.625rem;font-size:.875rem}
.tool-guide{max-width:none;padding:3rem 0 0;font-size:.9375rem;line-height:1.6}
.tool-guide h2{margin:0 0 1rem;font-size:1.5rem;font-weight:700}.tool-guide ol{margin:0 0 2rem;padding-left:1.375rem}.tool-guide li{margin:.625rem 0}
.tool-guide details{padding:.875rem 0}.tool-guide summary{font-size:.9375rem}
.guide-cols{display:flex;flex-wrap:wrap;gap:0 2.5rem}.guide-cols>div{flex:1 1 23.75rem;min-width:0}.tool-guide>h2{margin-top:2rem}
body[data-tool] #tools{padding-top:3rem}
body[data-tool] #tools .eyebrow,body[data-tool] #tools .filter-row{display:none}
body[data-tool] #tools .section-heading{margin-bottom:.875rem}body[data-tool] #tools .section-heading h2{margin:0;font-size:1.25rem;font-weight:700}
body[data-tool] #tools .tool-grid{display:flex;flex-wrap:wrap;gap:.625rem}
body[data-tool] #tools .tool-card{flex-direction:row;padding:.625rem 1rem;border-radius:.625rem}
body[data-tool] #tools .tool-card :is(.tool-icon,p,.tool-tag,.card-arrow){display:none}
body[data-tool] #tools .tool-card h3{font-size:.875rem;font-weight:500}
/* Information pages */
.content-page{max-width:68.75rem;padding:2rem 0 2.5rem;font-size:1rem;line-height:1.65}
.content-page h1{margin:1rem 0 .875rem;font-size:2.75rem;line-height:1.1;font-weight:800;letter-spacing:-.02em}
.content-page h2{margin:2.5rem 0 .75rem;font-size:1.5rem;line-height:1.3}
.page-lead{font-size:1.0625rem}.page-meta{font-size:.875rem}
.doc-summary h2{margin:1.5rem 0 1rem;font-size:1.25rem}.doc-summary ul{gap:.875rem}.doc-summary li{padding:1.25rem;border-radius:.875rem}.doc-summary strong{font-size:.9375rem}.doc-summary span{font-size:.875rem}
.doc-layout{gap:2rem 3.5rem;margin-top:3rem}.page-toc{flex-basis:13.75rem;max-width:17.5rem;padding:1.125rem;border-radius:.875rem;font-size:.875rem}.page-toc a{padding:.5rem .625rem}
.doc-body{max-width:47.5rem}.doc-body section+section h2{margin-top:2.5rem}
.info-grid,.contact-cards,.plan-cards{grid-template-columns:repeat(auto-fit,minmax(min(26.25rem,100%),1fr));gap:1rem;margin:1.5rem 0 .5rem}
.info-card{padding:1.625rem;border-radius:1rem}.content-page .info-card h2{margin:0 0 .75rem;font-size:1.1875rem}.info-card p{font-size:.9375rem;line-height:1.6}
.info-cta{gap:1rem 1.5rem;margin-top:1.5rem;padding:1.5rem 1.75rem;border-radius:1rem}.info-cta strong{font-size:1.125rem}.info-cta p{font-size:.9375rem}
.contact-card,.plan-card{gap:.875rem;padding:1.75rem;border-radius:1.125rem}
.content-page .contact-card h2,.content-page .plan-head h2{font-size:1.375rem;font-weight:800}
.contact-card p,.plan-list li{font-size:.9375rem}
.contact-card .button,.plan-card .button,.info-cta .button{min-height:3.125rem;padding:0 1.25rem;border-radius:.75rem;font-size:.9375rem;font-weight:700}
.report-checklist{gap:.875rem}.report-checklist li{padding:1.25rem;border-radius:.875rem}.report-checklist li::before{width:1.875rem;height:1.875rem;border-radius:.5rem}.report-checklist strong{font-size:.9375rem}.report-checklist span{font-size:.875rem}
.plan-badge{padding:.3125rem .6875rem;font-size:.75rem}.plan-price strong{font-size:2.5rem}.plan-price span{font-size:.9375rem}
.plan-caption{font-size:.8125rem}.plan-list{gap:.75rem}
/* Phones keep the earlier adaptations at the design's sizes. */
@media(max-width:700px){
main>.hero h1,.hero h1{font-size:2.5rem}.hero{gap:2rem;padding-top:2rem}
.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem}.tool-card{padding:1rem}
.section-heading h2{font-size:1.75rem}.tool-intro h1{font-size:1.875rem}
.work-layout{grid-template-columns:1fr}.future-strip{padding:1.5rem}
}
@media(min-width:981px){.tool-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){.topbar{column-gap:.5rem}.topbar .brand-logo{width:2rem;height:2rem}.topbar .brand strong{font-size:1.125rem;white-space:nowrap;overflow-wrap:normal}.language-trigger{padding:0 .625rem}}
@media(max-width:700px){.run-area .run-button,.run-area .cancel-button{padding:0 1rem;font-size:.9375rem;white-space:nowrap}}

/* Tool page parts that follow the approved design: intro chips, settings panel and result rows. */
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.tool-intro-row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem 2rem}
.tool-intro-copy{flex:1 1 32.5rem;min-width:0}
.tool-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none}
.tool-chips li{padding:.4375rem .75rem;border:1px solid var(--ui-border);border-radius:999px;font-size:.8125rem;line-height:1.3;color:var(--ui-muted);white-space:nowrap}
.workspace .options-panel label:not(.checkbox-row),.workspace .options-panel .field-label{color:var(--ui-text)}
.workspace .options-panel label.checkbox-row{min-height:2.75rem;align-items:center;font-weight:500;color:var(--ui-muted)}
.options-panel .checkbox-row input[type=checkbox]{width:1.125rem;height:1.125rem;margin:0}
.field-group{display:flex;flex-direction:column;gap:.5rem;margin:0 0 1.25rem}
.field-label{font-size:.875rem;font-weight:600}
.segmented{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.125rem;padding:.1875rem;border:1px solid var(--ui-border);border-radius:.75rem;background:var(--ui-page)}
.workspace .options-panel .segmented label{position:relative;display:flex;flex-direction:row;align-items:center;justify-content:center;min-height:2.5rem;margin:0;padding:0 .125rem;border-radius:.5rem;font-size:.8125rem;font-weight:600;line-height:1.2;text-align:center;color:var(--ui-muted);cursor:pointer;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease}
.workspace .options-panel .segmented label>span{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.workspace .options-panel .segmented label:hover{color:var(--ui-text)}
.workspace .options-panel .segmented label:has(input:checked){background:var(--ui-tint);color:var(--ui-text);box-shadow:inset 0 0 0 1px var(--ui-solid)}
.workspace .options-panel .segmented label:has(input:focus-visible){outline:2px solid var(--ui-focus);outline-offset:2px}
.options-panel .segmented input[type=radio]{position:absolute;inset:0;width:100%;height:100%;min-height:0;margin:0;padding:0;border:0;opacity:0;cursor:pointer;appearance:none}
.input-suffix{position:relative;display:flex;align-items:center}
.options-panel .input-suffix input[type=number]{padding-right:3rem;font-weight:600}
.input-suffix>span{position:absolute;right:.875rem;font-size:.875rem;font-weight:500;color:var(--ui-muted);pointer-events:none}
.workspace .target-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.375rem;margin:-.5rem 0 1.25rem}
.workspace .target-presets button{transition:background-color .2s ease,border-color .2s ease,color .2s ease}
.workspace .target-presets button[aria-pressed=true]{border-color:var(--ui-solid);background:var(--ui-tint);color:var(--ui-text)}
.options-panel .target-explanation{margin:0 0 1.25rem}
.settings-help{margin:0 0 1rem;padding-top:.875rem;border-top:1px solid var(--ui-border)}
.settings-help summary{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:1.5rem;font-size:.875rem;font-weight:600;color:var(--ui-text);cursor:pointer;list-style:none}
.settings-help summary::-webkit-details-marker{display:none}
.settings-help summary::after{content:'';flex:none;width:.4375rem;height:.4375rem;margin-right:.25rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-.125rem) rotate(45deg);transition:transform .2s ease}
.settings-help[open] summary::after{transform:translateY(.125rem) rotate(-135deg)}
.settings-help[open] .settings-help-body{animation:kv-fade .25s ease-out}
.options-panel .settings-help .field-hint{margin:.625rem 0 0;font-size:.8125rem;line-height:1.55}
.run-note{display:block;margin-top:.625rem;font-size:.8125rem;text-align:center;color:var(--ui-muted)}
.run-note:empty,.status:not(:empty)+.run-note{display:none}
.options-panel #image-format-hint{margin:-.75rem 0 1.25rem}
.result-row{align-items:center;flex-wrap:wrap;gap:1rem 1.25rem}
.result-row>.result-thumb{flex:none;display:flex;align-items:center;justify-content:center;width:4.5rem;height:3.375rem;overflow:hidden;border:1px solid var(--ui-border);border-radius:.5rem;background:var(--ui-soft);color:var(--ui-muted)}
.result-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.result-thumb svg{width:1.5rem;height:1.5rem}
.result-row>.result-main{flex:1 1 15rem;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:.375rem}
.result-row .result-main>strong{font-size:.9375rem}
.result-row .result-main>small{margin:0}
.result-row .target-outcome{margin:0}
.result-row>.result-sizes{flex:none;display:flex;align-items:baseline;gap:.625rem;white-space:nowrap}
.result-before{font-size:.875rem;color:var(--ui-muted);text-decoration:line-through}
.result-before.plain{text-decoration:none}
.result-row .result-after{display:inline;font-size:1.25rem;font-weight:800;color:var(--ui-text)}
.result-badge{align-self:center;padding:.1875rem .625rem;border-radius:999px;background:var(--ui-success);color:var(--ui-page);font-size:.875rem;font-weight:700}
.result-row>.result-actions{flex:none}
@media(max-width:700px){.result-row>.result-main{flex-basis:calc(100% - 5.75rem)}.result-row>.result-sizes{flex-basis:100%}.result-row>.result-actions{flex-basis:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.result-actions>a[download]{grid-column:1/-1;order:-1}.result-actions>button:only-of-type{grid-column:1/-1}.result-row .result-actions .button{margin:0}}

/* Motion: short, purposeful and switched off by the reduced-motion preferences. */
@keyframes kv-rise{from{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:none}}
@keyframes kv-fade{from{opacity:0}to{opacity:1}}
@keyframes kv-pop{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}
.results:not([hidden]){animation:kv-rise .35s cubic-bezier(.2,.7,.3,1)}
.result-row{animation:kv-rise .4s cubic-bezier(.2,.7,.3,1) backwards}
.result-row:nth-child(2){animation-delay:.06s}.result-row:nth-child(3){animation-delay:.12s}.result-row:nth-child(4){animation-delay:.18s}.result-row:nth-child(n+5){animation-delay:.24s}
.result-badge{animation:kv-pop .3s .25s cubic-bezier(.2,.7,.3,1) backwards}
.tool-grid.is-filtered>.tool-card{animation:kv-rise .3s cubic-bezier(.2,.7,.3,1) backwards}
.tool-grid.is-filtered>.tool-card:nth-child(2){animation-delay:.03s}.tool-grid.is-filtered>.tool-card:nth-child(3){animation-delay:.06s}.tool-grid.is-filtered>.tool-card:nth-child(4){animation-delay:.09s}.tool-grid.is-filtered>.tool-card:nth-child(n+5){animation-delay:.12s}
.quality-warning{animation:kv-fade .25s ease-out}
dialog[open]{animation:kv-pop .2s cubic-bezier(.2,.7,.3,1)}
dialog[open]::backdrop{animation:kv-fade .2s ease-out}
.dropzone{transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease}
.dropzone .upload-icon{transition:transform .25s cubic-bezier(.2,.7,.3,1)}
.dropzone:hover .upload-icon,.dropzone.drag .upload-icon{transform:translateY(-.1875rem)}
.workspace .dropzone.drag{border-style:solid;border-color:var(--ui-solid);box-shadow:0 0 0 4px var(--ui-tint)}
.button{transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease,transform .15s ease}
.dropzone-action,.filter,.text-button{transition:background-color .2s ease,border-color .2s ease,color .2s ease}

/* Phone layout from the design: menu button, touch copy, bottom bar and a settings sheet. */
.menu-toggle,.settings-toggle,.sheet-close,.settings-backdrop,.drop-touch{display:none}
.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 1.25rem}
.options-panel .panel-heading h3{margin:0}
.options-panel .panel-heading h3:focus{outline:none}
@media(hover:none) and (pointer:coarse){.dropzone-copy>.drop-pointer{display:none}.dropzone-copy>.drop-touch{display:block}}
@keyframes kv-sheet{from{transform:translateY(1.5rem);opacity:0}to{transform:none;opacity:1}}
@media(max-width:700px){
.topbar.has-menu{position:relative;flex-wrap:nowrap}
.topbar.has-menu>nav{display:none}
.topbar .menu-toggle{display:inline-flex;align-items:center;justify-content:center;flex:none;width:2.75rem;height:2.75rem;padding:0;border:1px solid var(--ui-border);border-radius:.625rem;background:var(--ui-surface);color:var(--ui-text)}
.menu-toggle svg{width:1.25rem;height:1.25rem}
.topbar.has-menu.menu-open>nav{position:absolute;top:100%;left:0;right:0;z-index:40;display:flex;flex-direction:column;align-items:stretch;gap:.25rem;padding:.5rem var(--site-gutter) 1rem;overflow:visible;background:var(--ui-page);border-bottom:1px solid var(--ui-border);box-shadow:0 1rem 1.5rem #0003;animation:kv-fade .2s ease-out}
.topbar.has-menu.menu-open>nav a{min-height:3rem;padding:0 .75rem;font-size:1rem;border-radius:.5rem}
.topbar.has-menu.menu-open>nav a[aria-current]{background:var(--ui-soft);box-shadow:none}
.dropzone>span.dropzone-action{display:none}
.workspace .dropzone{padding:1rem;border-radius:.875rem}
body[data-tool] .vlibras{--vlibras-bottom:calc(6.25rem + env(safe-area-inset-bottom))}
body[data-tool] footer{padding-bottom:calc(6rem + env(safe-area-inset-bottom))}
.workspace .options-panel{position:static;max-height:none;overflow:visible;padding:0;border:0;background:none;box-shadow:none}
body:not(.settings-open) .workspace .options-panel>:not(.run-area){display:none}
.workspace .run-area{position:fixed;left:0;right:0;bottom:0;z-index:35;display:flex;flex-wrap:wrap;align-items:stretch;gap:.625rem;margin:0;padding:.75rem var(--site-gutter) calc(1rem + env(safe-area-inset-bottom));background:var(--ui-surface);border-top:1px solid var(--ui-border);border-radius:0;box-shadow:0 -.5rem 1.5rem #0000001f}
.run-area .settings-toggle{display:flex;flex:1 1 0;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:.0625rem;height:3.25rem;padding:0 .5rem;border:1px solid var(--ui-border);border-radius:.75rem;background:transparent;color:var(--ui-text);font-size:.875rem;font-weight:600;line-height:1.2}
.settings-toggle small{max-width:100%;overflow:hidden;font-size:.75rem;font-weight:500;color:var(--ui-muted);white-space:nowrap;text-overflow:ellipsis}
.settings-toggle[aria-expanded=true]{border-color:var(--ui-solid);background:var(--ui-tint)}
html[lang] .run-area .run-button,html[lang] .run-area .cancel-button{flex:1.4 1 0;min-width:0;width:auto;height:3.25rem;min-height:3.25rem;margin:0;padding:0 .75rem;justify-content:center;overflow:hidden;font-size:.875rem;text-overflow:ellipsis}
.run-area .run-button>span{display:none}
body.processing .run-area .run-button{display:none}
.run-area .status{order:-1;flex:1 1 100%;margin:0}
.run-area .status:empty,.run-area .run-note{display:none}
body.settings-open{overflow:hidden}
body.settings-open .settings-backdrop{display:block;position:fixed;inset:0;z-index:33;background:#000000a6;animation:kv-fade .2s ease-out}
body.settings-open .workspace .options-panel{position:fixed;left:0;right:0;bottom:0;z-index:34;display:block;max-height:calc(100dvh - 5rem);overflow:auto;overscroll-behavior:contain;padding:1.25rem var(--site-gutter) 0;background:var(--ui-surface);border-top:1px solid var(--ui-border);border-radius:1rem 1rem 0 0;animation:kv-sheet .25s cubic-bezier(.2,.7,.3,1)}
body.settings-open .workspace .run-area{position:sticky;margin:0 calc(-1 * var(--site-gutter));box-shadow:none}
body.settings-open .sheet-close{display:inline-flex;min-height:2.75rem;padding:0 1rem;font-size:.875rem}
}
@media(max-width:700px){html[lang] .run-area .run-button,html[lang] .run-area .cancel-button{white-space:normal;line-height:1.2;text-align:center}}
@media(max-width:380px){
:root{--site-gutter:1rem}
.topbar{column-gap:.375rem}
.topbar .brand strong{font-size:1rem}
.topbar .language-trigger{min-width:0;width:2.75rem;padding:0}
.topbar .language-trigger>svg{display:none}
html[lang] .run-area .run-button,html[lang] .run-area .cancel-button{flex-grow:1.6;padding:0 .5rem;font-size:.8125rem}
}

/* "Seus arquivos": one card with a row per file, like the design. */
.files-card{margin:1rem 0 0;border:1px solid var(--ui-border);border-radius:1rem;background:var(--ui-surface);overflow:hidden}
.files-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1rem;padding:1.125rem 1.375rem;border-bottom:1px solid var(--ui-border)}
.files-head h3{margin:0;font-size:1rem;font-weight:700}
.files-head span{font-size:.875rem;color:var(--ui-muted)}
.files-card .file-list.preview-list{display:block;margin:0;padding:0}
:root .files-card .file-list.preview-list>li,:root[data-theme] .files-card .file-list.preview-list>li{display:grid;grid-template-columns:auto 4.5rem minmax(0,1fr) auto auto auto;grid-template-areas:"drag thumb order left right remove" "drag thumb label left right remove";align-items:center;gap:.125rem 1rem;padding:1rem 1.375rem;border:0;border-bottom:1px solid var(--ui-border);border-radius:0;background:transparent;box-shadow:none}
:root .files-card .file-list.preview-list>li:not(:has(.drag-file)){grid-template-columns:4.5rem minmax(0,1fr) auto;grid-template-areas:"thumb order remove" "thumb label remove"}
:root .files-card .file-list.preview-list>li:last-child{border-bottom:0}
:root[data-theme] .files-card .file-list.preview-list>li.selected-preview{background:var(--ui-soft);box-shadow:inset 3px 0 0 var(--ui-solid)}
:root[data-theme] .files-card .file-list.preview-list>li.drop-target{background:var(--ui-tint);box-shadow:inset 0 0 0 2px var(--ui-focus)}
.files-card .file-list.preview-list .file-controls{display:contents}
.files-card .file-list.preview-list .file-thumb{grid-area:thumb;width:4.5rem;height:3.375rem;min-height:0;padding:0;border-radius:.5rem;overflow:hidden}
.files-card .file-thumb img{width:100%;height:100%;object-fit:cover}
.files-card .file-thumb span{padding:.25rem;font-size:.625rem;line-height:1.3}
.files-card .file-order-number{grid-area:order;align-self:end;justify-self:start;font-size:.75rem;color:var(--ui-muted)}
.files-card .file-list.preview-list .file-label{grid-area:label;align-self:start;display:block;min-width:0}
.files-card .file-label strong{display:block;font-size:.9375rem;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.files-card .file-label small{display:inline;margin:0;font-size:.8125rem;line-height:1.5;color:var(--ui-muted)}
.files-card .file-label .file-preview-detail:not(:empty)::before{content:' · '}
.files-card .file-list.preview-list .file-controls button{width:2.75rem;height:2.75rem;min-width:0;margin:0;border-radius:.625rem}
.files-card .file-controls .drag-file{grid-area:drag;margin:0}
.files-card .file-controls [data-move$=",-1"]{grid-area:left}
.files-card .file-controls [data-move$=",1"]{grid-area:right}
.files-card .file-controls [data-remove]{grid-area:remove}
.files-card .reorder-hint{margin:0;padding:.875rem 1.375rem;border-top:1px solid var(--ui-border);font-size:.8125rem;color:var(--ui-muted)}
@keyframes kv-progress{from{background-position:100% 0}to{background-position:-100% 0}}
.files-card li.is-processing .file-label::after{content:'';display:block;height:.375rem;margin-top:.5rem;border-radius:999px;background:linear-gradient(90deg,var(--ui-soft) 0 30%,var(--ui-solid) 30% 60%,var(--ui-soft) 60%) 0 0/200% 100%;animation:kv-progress 1.2s linear infinite}
.files-card li.is-done .file-thumb::after{content:'✓';position:absolute;right:.25rem;bottom:.25rem;display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border-radius:50%;background:var(--ui-success);color:var(--ui-page);font-size:.75rem;font-weight:800}
@media(max-width:700px){
.files-head{padding:.875rem 1rem}
:root .files-card .file-list.preview-list>li,:root[data-theme] .files-card .file-list.preview-list>li{grid-template-columns:3.5rem minmax(0,1fr) auto auto auto;grid-template-areas:"thumb order order order order" "thumb label label label label" "drag . left right remove";gap:.25rem .75rem;padding:1rem}
:root .files-card .file-list.preview-list>li:not(:has(.drag-file)){grid-template-columns:3.5rem minmax(0,1fr) auto;grid-template-areas:"thumb order remove" "thumb label remove"}
.files-card .file-list.preview-list .file-thumb{width:3.5rem;height:2.75rem}
.files-card .file-controls .drag-file{justify-self:start}
.files-card .reorder-hint{padding:.75rem 1rem}
}
.info-cta-actions{display:flex;flex-wrap:wrap;gap:.75rem}
.content-page .page-lead+.page-meta{margin-top:.25rem}

/* Plans, contact and feedback details from the design. */
.page-planos h1 span{color:var(--ui-link)}
.plan-upkeep{max-width:45rem;margin-top:2.5rem}
.content-page .plan-upkeep h2{margin:0 0 .75rem;font-size:1.375rem}
.plan-upkeep p{margin:0;font-size:1rem;line-height:1.6}
.contact-primary>.plan-badge{align-self:flex-start}
.category-choice{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(11rem,100%),1fr));gap:.5rem;margin:0;padding:0;border:0;min-width:0}
.category-choice legend{margin-bottom:.5rem;padding:0;font-size:.875rem;font-weight:600}
.form-stack .category-choice label{position:relative;display:flex;flex-direction:row;align-items:center;gap:.625rem;min-height:3rem;margin:0;padding:0 .875rem;border:1px solid var(--ui-border);border-radius:.75rem;background:var(--ui-page);font-size:.875rem;font-weight:600;color:var(--ui-text);cursor:pointer;transition:border-color .2s ease,background-color .2s ease}
.form-stack .category-choice input[type=radio]{flex:none;width:1.125rem;height:1.125rem;margin:0;padding:0;accent-color:var(--ui-solid)}
.form-stack .category-choice label:has(input:checked){border-color:var(--ui-solid);background:var(--ui-tint)}
.operations-heading .breadcrumbs{margin-bottom:.75rem}
.page-contato>p:first-of-type{font-size:1.0625rem;color:var(--ui-muted)}

/* Support page without its link, and the 404 page. */
.thread-empty h2{margin-top:0}
.thread-empty .info-cta-actions{margin-top:1rem}
.page-404 .error-code{margin:0;font-size:.875rem;font-weight:700;letter-spacing:.12em;color:var(--ui-link)}
.page-404 h1{margin-top:.5rem}
.page-404 .info-cta-actions{margin:1.5rem 0 2.5rem}
.not-found-tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(16rem,100%),1fr));gap:.75rem}
.not-found-tools .quick-link{display:flex;align-items:center;gap:.875rem;padding:1rem;border:1px solid var(--ui-border);border-radius:.875rem;background:var(--ui-surface);text-decoration:none;color:var(--ui-text);transition:border-color .2s ease,transform .2s ease}
.not-found-tools .quick-link:hover{border-color:var(--ui-focus);transform:translateY(-2px)}
.not-found-tools .quick-copy{display:flex;flex-direction:column;gap:.125rem}
.not-found-tools .quick-copy small{font-size:.8125rem;color:var(--ui-muted)}

/* Inner pages are centered columns at the design widths; the header keeps the full shell. */
.content-page{margin-inline:auto}
.content-page.page-privacidade{max-width:75rem}
.content-page.page-planos{max-width:65rem}
.content-page.page-termos>.page-lead,.content-page.page-termos>.page-meta{max-width:47.5rem}
body[data-page=feedback] .operations-main{max-width:calc(75rem + 2 * var(--site-gutter))}
body[data-page=thread] .operations-main{max-width:calc(68.75rem + 2 * var(--site-gutter))}
.card-icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:2.5rem;height:2.5rem;border-radius:.625rem;background:var(--ui-tint);color:var(--ui-link)}
.card-icon svg{width:1.25rem;height:1.25rem}
.card-icon-plain{background:var(--ui-soft);color:var(--ui-muted)}
.doc-summary li .card-icon{width:auto;height:auto;background:none;border-radius:0;justify-content:flex-start}
.doc-summary li .card-icon svg{width:1.375rem;height:1.375rem}
.info-card-head{display:flex;align-items:center;gap:.75rem;margin:0 0 .75rem}
.content-page .info-card .info-card-head h2{margin:0}
.contact-card-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}
.contact-card .card-icon{width:2.75rem;height:2.75rem;border-radius:.6875rem}
.contact-card .button svg{flex:none}

/* Tool pages: other tools as simple links; phones get the short intro and no limit chips. */
.other-tools{margin:2.5rem 0 0}
.other-tools h2{margin:0 0 .875rem;font-size:1.25rem;font-weight:700}
.other-tool-links{display:flex;flex-wrap:wrap;gap:.625rem}
.other-tool-links a{display:inline-flex;align-items:center;min-height:2.75rem;padding:0 1rem;border:1px solid var(--ui-border);border-radius:.625rem;background:var(--ui-surface);color:var(--ui-text);font-size:.875rem;font-weight:500;text-decoration:none;transition:border-color .2s ease,background-color .2s ease}
.other-tool-links a:hover{border-color:var(--ui-focus);background:var(--ui-soft)}
.intro-short,.menu-accessibility{display:none}
@media(max-width:700px){
.tool-intro .intro-long,.tool-intro .tool-chips{display:none}
.tool-intro .intro-short{display:inline}
.topbar.has-menu .accessibility-launcher.in-header{display:none}
.topbar.has-menu.menu-open>nav .menu-accessibility{display:flex;align-items:center;gap:.625rem;min-height:3rem;margin-top:.25rem;padding:0 .75rem;border:0;border-top:1px solid var(--ui-border);border-radius:0;background:none;color:var(--ui-text);font:inherit;font-size:1rem;text-align:left;cursor:pointer}
.menu-accessibility svg{width:1.25rem;height:1.25rem;flex:none}
}

/* Results inside the file rows (compress and resize). */
:root .files-card .file-list.preview-list>li.has-result,:root[data-theme] .files-card .file-list.preview-list>li.has-result{grid-template-columns:4.5rem minmax(0,1fr) auto auto;grid-template-areas:"thumb label sizes actions";align-items:center;gap:.5rem 1.25rem}
.files-card li.has-result .file-thumb{grid-area:thumb;align-self:center}
.files-card li.has-result .file-label{grid-area:label;align-self:center;display:flex;flex-direction:column;align-items:flex-start;gap:.375rem}
.files-card li.has-result .file-label small{display:block}
.files-card li.has-result .target-outcome{margin:0}
.files-card li.has-result .result-sizes{grid-area:sizes;display:flex;align-items:baseline;gap:.625rem;white-space:nowrap}
.files-card li.has-result .result-actions{grid-area:actions;display:flex;gap:.5rem}
.files-card li.has-result .result-actions .button{min-height:2.75rem;padding:0 1rem;border-radius:.625rem;font-size:.875rem;white-space:nowrap}
.files-head #files-count{margin-left:auto}
.files-head .text-button{font-size:.875rem;color:var(--ui-link)}
.files-note{margin:0;padding:.875rem 1.375rem;border-top:1px solid var(--ui-border);font-size:.8125rem;color:var(--ui-muted)}
.files-card li.has-result .result-actions>a[download]:only-child{grid-column:1/-1}

/* Preview: same card language as the rest of the tool, with an example area before any file. */
.workspace .file-viewer{margin:1rem 0 0;padding:0;border:1px solid var(--ui-border);border-radius:1rem;background:var(--ui-surface);overflow:hidden}
.workspace .preview-heading{align-items:center;margin:0;padding:1rem 1.375rem;border-bottom:1px solid var(--ui-border)}
.workspace .preview-heading h3{margin:.375rem 0 .125rem;font-size:.9375rem}
.workspace .preview-heading small{font-size:.8125rem;color:var(--ui-muted)}
.workspace .preview-heading .text-button{margin:0;font-size:.875rem}
.preview-kind{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:999px;background:var(--ui-soft);color:var(--ui-muted);font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.file-viewer[data-kind=result] .preview-kind{background:var(--ui-success-bg);color:var(--ui-success)}
.workspace #preview-body{padding:1rem 1.375rem 1.25rem}
.workspace .preview-toolbar{margin:0 0 .75rem;font-size:.8125rem;color:var(--ui-muted)}
.workspace .file-viewer .preview-toolbar button,.workspace .file-viewer .preview-toolbar input,.workspace .file-viewer .preview-toolbar .select-trigger{min-height:2.25rem;border:1px solid var(--ui-border);border-radius:.5rem;background:var(--ui-page);color:var(--ui-text)}
.workspace .file-viewer .preview-toolbar button{width:2.25rem;height:2.25rem}
.workspace .file-viewer .preview-stage{height:24rem;padding:1rem;border:1px solid var(--ui-border);border-radius:.75rem;background:var(--ui-page);color:var(--ui-muted)}
.workspace .file-viewer .preview-stage canvas{border-radius:2px;box-shadow:0 .5rem 1.5rem #0000004d}
.workspace .file-viewer .preview-stage img{background:repeating-conic-gradient(#8881 0 25%,transparent 0 50%) 0 0/16px 16px}
.workspace .file-viewer .preview-stage p{color:var(--ui-muted);font-size:.875rem}
.workspace .preview-caption{margin-top:.75rem;font-size:.75rem;line-height:1.6;color:var(--ui-muted)}
.workspace .empty-hint.preview-placeholder{margin:1rem 0 0;border:1px dashed var(--ui-border);border-radius:1rem;background:var(--ui-surface);overflow:hidden;font-size:1rem;color:var(--ui-muted)}
.workspace .empty-hint.preview-placeholder[hidden]{display:none}
.placeholder-head{display:flex;flex-direction:column;align-items:flex-start;gap:.375rem;padding:1rem 1.375rem;border-bottom:1px dashed var(--ui-border)}
.placeholder-head strong{font-size:.9375rem;color:var(--ui-text)}
.placeholder-head span:not(.preview-kind){font-size:.875rem}
.placeholder-head small{font-size:.8125rem}
.placeholder-stage{position:relative;display:flex;flex-direction:column;align-items:center;gap:.875rem;margin:1rem 1.375rem 1.25rem;padding:1rem;border:1px solid var(--ui-border);border-radius:.75rem;background:var(--ui-page)}
.placeholder-toolbar{display:flex;justify-content:space-between;align-self:stretch}
.placeholder-toolbar span{width:7rem;height:1.5rem;border-radius:.5rem;background:var(--ui-soft)}
.placeholder-toolbar span+span{width:5rem}
.placeholder-page{display:flex;flex-direction:column;gap:.5rem;width:9rem;height:12rem;padding:1rem .875rem;border-radius:3px;background:var(--ui-surface);box-shadow:0 .5rem 1.5rem #0000002e}
.placeholder-page span{display:block;height:.375rem;border-radius:999px;background:var(--ui-soft)}
.placeholder-page .ph-title{width:60%;height:.5rem;background:var(--ui-tint)}
.placeholder-page .short{width:55%}
.placeholder-page .ph-block{height:3rem;border-radius:.25rem;background:var(--ui-tint)}
.placeholder-photo{display:none;align-items:center;justify-content:center;width:15rem;height:10rem;border-radius:.5rem;background:var(--ui-soft);color:var(--ui-link)}
.preview-placeholder[data-kind=image] .placeholder-page{display:none}
.preview-placeholder[data-kind=image] .placeholder-photo{display:flex}
.preview-placeholder .placeholder-page,.preview-placeholder .placeholder-photo{animation:kv-fade .4s ease-out}
@media(max-width:700px){.workspace .file-viewer .preview-stage{height:18rem}.placeholder-head{padding:.875rem 1rem}.placeholder-stage{margin:.875rem 1rem 1rem}.placeholder-page{width:7.5rem;height:10rem}.placeholder-photo{width:12rem;height:8rem}.placeholder-toolbar span{width:5rem}.placeholder-toolbar span+span{width:3.5rem}}
/* The row adapts to the card width, which depends on the side panels, not only on the screen. */
.files-card{container-type:inline-size}
.result-sizes .result-after{display:inline;font-size:1.25rem;font-weight:800;color:var(--ui-text)}
@container (max-width:52rem){
:root .files-card .file-list.preview-list>li.has-result,:root[data-theme] .files-card .file-list.preview-list>li.has-result{grid-template-columns:4.5rem minmax(0,1fr) auto;grid-template-areas:"thumb label label" "thumb sizes actions"}
}
@container (max-width:30rem){
:root .files-card .file-list.preview-list>li.has-result,:root[data-theme] .files-card .file-list.preview-list>li.has-result{grid-template-columns:minmax(0,1fr);grid-template-areas:"thumb" "label" "sizes" "actions"}
.files-card li.has-result .result-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
}
#workspace #file-list .file-label .quality-warning strong{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}

/* Ads: the side rail grows to 300 px on wide screens; on the home it is a 300 x 250
   rectangle aligned with the tool grid, which drops to three columns when narrow. */
@media(min-width:1440px){:root{--rail-width:18.75rem}}
.tools-body{--rail-width:18.75rem;container-type:inline-size}
.tools-body .ad-rail .ad-content{display:flex;align-items:center;justify-content:center}
@container (min-width:50rem) and (max-width:75rem){.tools-body .tool-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.tools-body .ad-rail .ad-demo,.tools-body .ad-rail .ad-promotion{align-self:stretch;width:100%}
main>.ad-placement[data-ad-placement=top]{margin-bottom:0}
/* Home catalog: compact list grouped by file type (PDF, images, video, audio, spreadsheets). */
.tool-grid{display:flex;flex-wrap:wrap;align-items:flex-start;gap:1rem}
.tool-column{flex:1 1 20rem;min-width:0;display:flex;flex-direction:column;gap:1rem}
.tool-group{padding:.5rem;border:1px solid var(--ui-border);border-radius:1rem;background:var(--ui-surface);color:var(--ui-text)}
.tool-group-head{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .75rem;min-height:3.25rem;padding:.25rem .75rem;border-radius:.625rem;list-style:none;cursor:pointer}
.tool-group-head::-webkit-details-marker{display:none}
.tool-group-head::marker{content:""}
.tool-group-head:hover{background:var(--ui-soft)}
.tool-group[open]>.tool-group-head{margin-bottom:.375rem;padding-bottom:.625rem;border-bottom:1px solid var(--ui-border);border-radius:.625rem .625rem 0 0}
.tool-group-head .tool-icon{flex:none;width:2.25rem;height:2.25rem;border-radius:.625rem}
.tool-group-head .tool-icon svg{width:1.25rem;height:1.25rem;stroke-width:2}
.tool-group-head h3{margin:0;font-size:1.125rem;font-weight:800;letter-spacing:0;overflow-wrap:anywhere}
.tool-group-count{margin-left:auto;font-size:.8125rem;color:var(--ui-muted);white-space:nowrap}
.tool-group-chevron{display:flex;color:var(--ui-muted)}
.tool-group-chevron svg{width:1.125rem;height:1.125rem;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease}
.tool-group[open] .tool-group-chevron svg{transform:rotate(180deg)}
.tool-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column}
.tool-link{display:flex;align-items:center;gap:.75rem;min-height:2.75rem;padding:.375rem .75rem;border-radius:.625rem;color:var(--ui-text);font-size:.9375rem;font-weight:500;line-height:1.35}
.tool-link:hover,.tool-link:focus-visible{background:var(--ui-soft)}
.tool-link:hover .tool-name{color:var(--ui-link)}
.tool-link .tool-icon{flex:none;width:1.25rem;height:1.25rem;border-radius:0;background:none}
.tool-link .tool-icon svg{width:1.125rem;height:1.125rem;stroke-width:2}
.tool-name{flex:1;min-width:0;overflow-wrap:anywhere}
.tool-badge{flex:none;display:inline-flex;align-items:center;padding:.1875rem .5625rem;border-radius:999px;background:var(--ui-tint);color:var(--ui-link);font-size:.75rem;font-weight:700;line-height:1.3}
.tool-group-head .tool-badge{display:none}
.tool-future{display:flex;flex-direction:column;gap:.5rem;padding:1.375rem;border:1px solid var(--ui-border);border-radius:1rem;background:var(--ui-soft)}
.tool-future .eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.tool-future strong{font-size:1.0625rem;line-height:1.35}
.tool-future p{margin:0;font-size:.875rem;line-height:1.55;color:var(--ui-muted)}
.tool-future .text-button{align-self:flex-start;min-height:2.75rem;padding:0;font-size:.9375rem;font-weight:600;color:var(--ui-link)}
.tool-grid.is-searching .tool-future{display:none}
@media(max-width:700px){.tool-grid,.tool-column{gap:.75rem}.tool-column{flex-basis:100%}.tool-group-head{min-height:3.5rem}.tool-group-head .tool-badge{display:inline-flex}.tool-link{min-height:3rem;font-size:1rem}}
/* Toasts (notices): below the header, away from the Libras and accessibility buttons. */
.toast-region{position:fixed;z-index:45;top:5.75rem;right:max(1rem,env(safe-area-inset-right));width:min(26.25rem,calc(100vw - 2rem));display:flex;flex-direction:column;gap:.625rem;pointer-events:none}
.toast{position:relative;overflow:hidden;display:flex;align-items:flex-start;gap:.75rem;padding:.875rem .375rem .5rem 1rem;border:1px solid var(--toast-border,var(--ui-border));border-radius:.875rem;background:var(--ui-surface);color:var(--ui-text);box-shadow:0 .75rem 2rem rgba(16,21,34,.16);pointer-events:auto;animation:toast-in .2s ease-out}
.toast-error{--toast-accent:var(--ui-error);--toast-accent-bg:var(--ui-error-bg);--toast-border:var(--ui-error-border)}
.toast-warning{--toast-accent:var(--ui-warning);--toast-accent-bg:var(--ui-warning-bg);--toast-border:var(--ui-warning-border)}
.toast-success{--toast-accent:var(--ui-success);--toast-accent-bg:var(--ui-success-bg);--toast-border:var(--ui-border)}
.toast-info{--toast-accent:var(--ui-link);--toast-accent-bg:var(--ui-tint);--toast-border:var(--ui-border)}
.toast-icon{flex:none;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;margin-top:.125rem;border-radius:.5625rem;background:var(--toast-accent-bg);color:var(--toast-accent)}
.toast-icon svg,.toast-close svg{width:1.125rem;height:1.125rem;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.toast-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem;padding:.1875rem 0 .375rem}
.toast-title{font-size:.9375rem;font-weight:700;line-height:1.35;overflow-wrap:anywhere}
.toast-message{margin:0;font-size:.875rem;line-height:1.5;color:var(--ui-muted);overflow-wrap:anywhere}
.toast-items{margin:.375rem 0 0;padding:.5rem .625rem;list-style:none;border-radius:.625rem;background:var(--ui-soft);display:flex;flex-direction:column;gap:.25rem;font-size:.8125rem;line-height:1.4}
.toast-items li{display:flex;justify-content:space-between;gap:.75rem}
.toast-item-name{min-width:0;overflow-wrap:anywhere}
.toast-item-detail{flex:none;font-weight:600;color:var(--toast-accent)}
.toast-actions{display:flex;flex-wrap:wrap;gap:0 1.125rem}
.toast-action{min-height:2.75rem;padding:0;border:0;background:none;color:var(--toast-accent);font-size:.875rem;font-weight:700;text-align:left}
.toast-action:hover{text-decoration:underline;text-underline-offset:.2rem}
.toast-close{flex:none;display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;margin-top:-.375rem;border:0;border-radius:.625rem;background:none;color:var(--ui-muted)}
.toast-close:hover{background:var(--ui-soft);color:var(--ui-text)}
.toast-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--toast-accent);transform-origin:left;animation:toast-timer 5s linear forwards}
.toast:is(:hover,:focus-within) .toast-progress{animation-play-state:paused}
@keyframes toast-in{from{opacity:0;transform:translateY(-.5rem)}}
@keyframes toast-timer{from{transform:scaleX(1)}to{transform:scaleX(0)}}
@media(prefers-reduced-motion:reduce){:root:not([data-reduced-motion=no]) .toast-progress{display:none}}
/* Tasks without settings keep the action beside the task, above the files. */
#workspace.simple-workflow .work-layout{grid-template-columns:minmax(0,1fr)}
#workspace.simple-workflow .run-area{position:sticky;top:1rem;bottom:auto;z-index:8;display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin:0 0 1rem;padding:1rem;border:1px solid;border-radius:1rem}
.quick-workflow-summary{flex:1 1 16rem;min-width:0}
.quick-workflow-summary strong,.quick-workflow-summary small{display:block;overflow-wrap:anywhere}
.quick-workflow-summary strong{font-size:1rem;line-height:1.4}
.quick-workflow-summary small{font-size:.8125rem;line-height:1.5;margin-top:.25rem}
#workspace.simple-workflow .run-area .run-button,#workspace.simple-workflow .run-area .cancel-button{flex:0 1 auto;width:auto;max-width:100%;min-height:3.25rem;margin:0;white-space:normal;line-height:1.3;text-align:center}
#workspace.simple-workflow .run-area .status{flex:1 1 100%;margin:0}
#workspace.simple-workflow .run-area .run-note{display:none}
.files-head .add-more-files{min-height:2.75rem;margin:0;font-size:.8125rem;padding:.5rem .75rem}
#workspace.simple-workflow #dropzone.has-files{padding:.75rem 1rem}
#workspace.simple-workflow #dropzone.has-files .dropzone-copy>.drop-pointer:not(strong){display:none}
#workspace #file-list.pdf-page-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));gap:1rem;padding:1rem;margin:0}
#workspace #file-list.pdf-page-list>li{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"order" "thumb" "label" "actions";gap:.625rem;align-items:center;padding:.875rem;border:1px solid;border-radius:.75rem;box-shadow:none}
#workspace #file-list.pdf-page-list .file-order-number{font-size:.875rem;font-weight:700;align-self:auto}
#workspace #file-list.pdf-page-list .file-thumb{width:100%;height:11rem;min-height:0;padding:.5rem;border-radius:.375rem}
#workspace #file-list.pdf-page-list .file-thumb img{width:100%;height:100%;object-fit:contain}
#workspace #file-list.pdf-page-list .file-label{min-width:0;min-height:3rem}
#workspace #file-list.pdf-page-list .file-label strong{font-size:.8125rem}
#workspace #file-list.pdf-page-list .file-preview-detail{display:none}
#workspace #file-list.pdf-page-list .file-preview-detail.preview-error{display:block}
#workspace #file-list.pdf-page-list .file-controls{grid-area:actions;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.25rem}
#workspace #file-list.pdf-page-list .file-controls .drag-file{margin-right:auto}
#workspace #file-list.pdf-page-list .file-controls button{flex:none;width:2.75rem;height:2.75rem}
@media(max-width:700px){
 #workspace.simple-workflow .run-area{position:fixed;top:auto;bottom:0;z-index:35;gap:.5rem;justify-content:center;margin:0;padding:.75rem var(--site-gutter) calc(1rem + env(safe-area-inset-bottom));border-width:1px 0 0;border-radius:0}
 #workspace.simple-workflow .quick-workflow-summary{flex-basis:100%;text-align:center}
 #workspace.simple-workflow .quick-workflow-summary small{display:none}
 #workspace.simple-workflow .run-area .run-button,#workspace.simple-workflow .run-area .cancel-button{flex:1 1 100%;height:auto;width:100%;padding:.75rem}
 #workspace #file-list.pdf-page-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));gap:.625rem;padding:.75rem}
 #workspace #file-list.pdf-page-list>li{padding:.625rem;gap:.5rem}
 #workspace #file-list.pdf-page-list .file-thumb{height:8rem}
 #workspace #file-list.pdf-page-list .file-controls button{min-width:0;padding:0}
 body:has(#workspace.simple-workflow) footer{padding-bottom:calc(10rem + env(safe-area-inset-bottom))}
 body:has(#workspace.simple-workflow) .vlibras{--vlibras-bottom:calc(9rem + env(safe-area-inset-bottom))}
}
@media(max-width:360px){#workspace #file-list.pdf-page-list{grid-template-columns:minmax(0,1fr)}#workspace #file-list.pdf-page-list .file-thumb{height:10rem}}
@media(max-width:700px){.toast-region{top:calc(5rem + env(safe-area-inset-top));left:.75rem;right:.75rem;width:auto}}
