/* Formatio: white space and coral accents, with an interactive format wheel. */
:root{--accent:#ec4339;--accent-hover:#d8322a;--ink:#202532;--line:#e9ebf0;--radius:18px}
body{color:var(--ink);background:#fff}
main{position:relative}
.simple-header{background:#ffffffd9;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-color:#eff0f4}
.simple-header nav{padding-inline:clamp(20px,4vw,56px)}
.simple-header .navlinks{justify-content:flex-end}
.navlinks>a,.file-menu-trigger{font-size:15px;color:#575e6b}
.brand,.footer-inner .brand{color:#252b38}
.primary{border-radius:999px;box-shadow:0 6px 16px #ec43391b;font-weight:600}
.primary:hover{transform:translateY(-2px);box-shadow:0 9px 22px #ec433928}
.primary:disabled{transform:none}
.outline{border-radius:10px}
.converter,.extract-upload,.extract-file-panel,.extract-result-panel,.reader-upload,.reader-app,.content-card,.directory-group{border-color:#e6e9ef;border-radius:18px;box-shadow:0 8px 30px #25314403}
.upload-empty{background:linear-gradient(140deg,#fdfafa,#fff);border-color:#e6dfe0;border-radius:14px}
.file-menu{border-radius:16px;padding:10px;box-shadow:0 14px 45px #25314412}
.file-menu a{border-radius:9px}
footer{position:relative;background:#fff;border-color:#eceef2;margin-top:30px}
.footer-inner{min-height:112px}
.landing-glow{position:absolute;top:-72px;left:0;right:0;height:1050px;overflow:hidden;pointer-events:none;z-index:0}
.landing-glow i{position:absolute;border-radius:50%;filter:blur(85px);opacity:.52;animation:ambient-drift 18s ease-in-out infinite alternate}
.landing-glow i:nth-child(1){width:520px;height:500px;left:-270px;top:-210px;background:#ffe0d9}
.landing-glow i:nth-child(2){width:500px;height:500px;right:-230px;top:280px;background:#dff6ed;animation-delay:-8s}
.landing-glow i:nth-child(3){width:400px;height:260px;left:37%;top:650px;background:#f2e9ff;opacity:.32;animation-delay:-12s}
.landing-hero{max-width:1240px;position:relative;display:grid;grid-template-columns:1.02fr 1fr;gap:clamp(32px,5vw,70px);align-items:center;padding-top:78px;padding-bottom:80px}
.landing-copy{position:relative;z-index:2;animation:landing-enter .65s backwards}
.local-pill{display:inline-flex;align-items:center;gap:9px;border:1px solid #ece6e4;background:#ffffffc9;border-radius:999px;padding:8px 14px;font-size:14px;color:#8f625a;margin:0 0 25px}
.local-pill>span{width:7px;height:7px;border-radius:50%;background:#68b09c;box-shadow:0 0 0 3px #68b09c1c}
.landing-copy h1{font-size:clamp(46px,5vw,68px);font-weight:750;line-height:1.25;letter-spacing:-2.5px;margin:0 0 25px;color:#202532}
.landing-copy h1>span{color:var(--accent)}
.landing-description{font-size:18px;line-height:1.85;color:#697180;max-width:440px;margin:0 0 28px}
.landing-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.landing-actions .primary,.landing-secondary{min-height:54px;padding:14px 25px;gap:11px;font-size:16px}
.landing-secondary{display:inline-flex;align-items:center;justify-content:center;border:1px solid #e9e6e6;background:#ffffffbf;border-radius:999px;color:#545b68;font-weight:550}
.landing-secondary:hover{background:#fff;border-color:#e9b1aa;transform:translateY(-2px)}
.landing-secondary svg,.landing-actions svg{width:18px;height:18px}
.landing-note{font-size:14px;line-height:1.8;color:#6e7583;margin:20px 0 0}
.orbit-demo{position:relative;z-index:1;min-width:0;margin-top:26px;border:1px solid #ffffff;background:#ffffffd4;border-radius:26px;box-shadow:0 24px 65px #45526012,0 3px 9px #45526007;backdrop-filter:blur(16px);animation:landing-enter .8s .1s backwards}
.demo-titlebar{height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;background:#f1f2f4a8;border-radius:26px 26px 0 0;color:#6c7584;font-size:13px;gap:12px}
.demo-titlebar>span:first-child{display:flex;align-items:center;gap:7px}
.demo-titlebar svg{width:16px;height:16px;color:#79725a}
.window-dots{display:flex;gap:6px}
.window-dots i{width:8px;height:8px;border-radius:50%;background:#d8dbe0}
.orbit-tabs{display:flex;justify-content:center;gap:24px;padding:23px 20px 0}
.sample-file{display:flex;flex-direction:column;align-items:center;gap:9px;min-width:74px;padding:8px 10px 10px;border:1px solid transparent;border-radius:14px;color:#667386;font-size:13px;transition:background .2s,border-color .2s,transform .2s}
.sample-file:hover,.sample-file.is-selected{background:#fff7f4;border-color:#f4ddd7;color:#9b594d;transform:translateY(-2px)}
.sample-sheet{display:flex;flex-direction:column;align-items:center;justify-content:center;width:47px;height:55px;background:#fff;border:1px solid #e8e9ed;box-shadow:0 6px 12px #4e596d08;border-radius:10px;gap:3px}
.sample-sheet svg{width:24px;height:24px}
.sample-sheet b{font:600 10px/1.3 system-ui;letter-spacing:.3px;border-radius:3px;padding:1px 4px;color:#fff}
.sample-image svg{color:#5a7b75}.sample-image b{background:#88bab0}
.sample-text svg{color:#67738e}.sample-text b{background:#8299c1}
.sample-audio svg{color:#7f6d93}.sample-audio b{background:#ab8cc6}
.orbit-wheel{width:276px;height:276px;margin:12px auto 18px;position:relative;filter:drop-shadow(0 14px 20px #53617b12);animation:wheel-enter .8s .2s backwards}
.orbit-track{position:absolute;inset:0;border-radius:50%;border:1px solid #fff;background:conic-gradient(from -45deg,#fcfcfd 0deg 89deg,#e5e8ec 89deg 90deg,#f7f8fa 90deg 179deg,#e5e8ec 179deg 180deg,#fcfcfd 180deg 269deg,#e5e8ec 269deg 270deg,#f7f8fa 270deg 359deg,#e5e8ec 359deg);box-shadow:inset 0 0 0 1px #e8ebf0}
.orbit-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);height:132px;width:132px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;background:#fff;border:7px solid #f9e9e4;border-radius:50%;box-shadow:0 0 0 4px #ffffffc9;pointer-events:none;color:#9f6656}
.orbit-core svg{width:26px;height:26px}
.orbit-core strong{font-size:16px;font-weight:600;color:#5a5f6e}
.orbit-core span{font-size:13px;color:#6c7583}
.orbit-link{position:absolute;display:grid;place-items:center;height:49px;width:74px;border-radius:15px;color:#647083;font-size:15px;font-weight:650;z-index:1;transition:background .2s,color .2s,transform .2s}
.orbit-link:hover,.orbit-link:focus-visible{background:#fcece7;color:#9b594d;transform:scale(1.06)}
.orbit-north{top:12px;left:101px}.orbit-east{top:114px;right:2px}.orbit-south{bottom:12px;left:101px}.orbit-west{top:114px;left:2px}
.orbit-wheel[data-mode=text] .orbit-core{border-color:#e9effa;color:#647694}
.orbit-wheel[data-mode=audio] .orbit-core{border-color:#f4e8f8;color:#8e649a}
.orbit-hint{display:flex;align-items:center;gap:9px;margin:0 22px;padding:12px 14px;background:#fafbfc;border:1px solid #eef0f3;border-radius:12px;min-height:62px}
.hint-spark{color:#787285;font-size:20px}
.orbit-hint p{font-size:13px;line-height:1.7;color:#697586;margin:0}
.demo-caption{display:flex;align-items:center;justify-content:space-between;margin:0;padding:18px 24px 21px;font-size:13px;color:#6a7687}
.demo-caption>span{color:#7a6e83}
.format-ribbon{position:relative;max-width:1184px;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);padding-block:18px}
.format-ribbon>div{display:flex;align-items:center;justify-content:space-around;gap:24px;min-width:860px}
.format-ribbon span{font-size:15px;font-weight:600;letter-spacing:1px;color:#70737b}
.format-ribbon i{font-size:13px;font-style:normal;color:#757279}
.landing-tools{position:relative;max-width:1240px;padding-top:52px;padding-bottom:25px;scroll-margin-top:90px}
.home-tool-grid{gap:16px}
.feature-card{border-radius:18px;min-height:200px;padding:24px 20px;background:#fff;border-color:#e8ecf2;box-shadow:0 8px 25px #45526003;animation:none}
.feature-card:hover{border-color:#dcb4aa;box-shadow:0 12px 30px #776b620a}
.feature-card h2{color:#4d5669;font-size:18px}
.feature-card p{color:#687588;font-size:14px;line-height:1.8}
.feature-icon{border-radius:14px;width:47px;height:47px}
.feature-arrow{color:#6d747f}
.landing-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;list-style:none;padding:36px 0;margin:44px 0 0;border-block:1px solid #edf0f5}
.landing-steps li{display:flex;gap:14px}
.landing-steps li>span{font-size:13px;color:#7f726b;font-weight:600;padding-top:3px}
.landing-steps strong{font-size:16px;color:#6a7282;font-weight:550}
.landing-steps p{font-size:14px;color:#68768a;margin:8px 0 0;line-height:1.9}
.landing-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding-top:34px}
.landing-benefits p{display:flex;gap:14px;color:#68768a;font-size:14px;line-height:1.9;margin:0}
.landing-benefits svg{width:23px;height:23px;color:#6c737f;margin-top:3px}
.landing-benefits strong{display:block;font-size:16px;font-weight:550;color:#6a7282;margin-bottom:5px}
.landing-faq{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px;margin-top:70px;padding-top:40px;border-top:1px solid #edf0f5}
.landing-faq>div:first-child>p{font-size:29px;font-weight:650;color:#515c71;line-height:1.6;margin-bottom:18px}
.landing-faq>div:first-child>a{font-size:14px;color:#9e6656;display:inline-flex;gap:12px;align-items:center}
.landing-faq>div:first-child>a svg{width:16px;height:16px}
.landing-faq details{border-bottom:1px solid #edf0f5}
.landing-faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;font-size:16px;color:#52627a;padding:17px 0;cursor:pointer}
.landing-faq summary::-webkit-details-marker{display:none}
.landing-faq summary>span{font-size:20px;color:#6b7382;transition:transform .2s}
.landing-faq details[open] summary>span{transform:rotate(45deg)}
.landing-faq details p{font-size:14px;color:#65758a;line-height:1.95;margin:0 0 20px}
.landing-faq details a{display:inline-block;color:#9e6656}
@keyframes ambient-drift{to{transform:translate(30px,20px) scale(1.06)}}
@keyframes landing-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes wheel-enter{from{opacity:0;transform:rotate(-12deg) scale(.94)}to{opacity:1;transform:rotate(0) scale(1)}}
@media(min-width:1500px){.landing-hero{padding-top:100px;padding-bottom:100px}.landing-copy h1{font-size:74px}}
@media(max-width:1100px){.landing-hero{gap:35px;padding-top:65px;padding-bottom:60px}.landing-copy h1{font-size:58px;letter-spacing:-2px}.landing-description{font-size:17px}.orbit-tabs{gap:12px}.landing-actions .primary,.landing-secondary{padding-inline:20px}.landing-benefits,.landing-steps{gap:22px}}
@media(max-width:900px){.landing-hero{gap:24px}.landing-copy h1{font-size:50px}.landing-description{font-size:16px}.landing-actions{gap:10px}.landing-actions .primary,.landing-secondary{font-size:14px;padding:12px 17px;min-height:47px}.local-pill{font-size:13px;padding:7px 11px}.orbit-demo{margin-top:22px}.orbit-tabs{gap:4px;padding-inline:12px}.sample-file{padding-inline:6px;min-width:70px}.orbit-hint{margin-inline:16px;padding:10px}.demo-titlebar{padding-inline:18px}.landing-tools{padding-top:35px}.landing-benefits{gap:18px}.landing-benefits p{gap:10px}.landing-faq{gap:35px}}
@media(max-width:760px){.simple-header .navlinks{justify-content:flex-start}.navlinks>a,.file-menu-trigger{font-size:14px}.landing-hero{display:flex;flex-direction:column;align-items:stretch;gap:28px;padding-top:46px;padding-bottom:40px}.landing-copy h1{font-size:clamp(48px,9vw,66px);letter-spacing:-2px;line-height:1.23;margin-bottom:22px}.landing-description{font-size:17px;max-width:480px}.local-pill{margin-bottom:22px}.landing-actions .primary,.landing-secondary{font-size:15px;min-height:50px;padding-inline:22px}.orbit-demo{width:100%;max-width:470px;align-self:center;margin-top:0}.orbit-tabs{gap:26px;padding-top:20px}.orbit-wheel{margin-top:9px;margin-bottom:15px}.orbit-hint{margin-inline:22px;min-height:56px}.landing-glow{height:1300px}.landing-glow i:nth-child(1){left:-290px;top:-180px}.landing-glow i:nth-child(2){right:-270px;top:650px}.landing-glow i:nth-child(3){top:400px;left:20%}.landing-tools{padding-top:28px}.feature-card{min-height:174px;padding:21px}.feature-card p{font-size:14px}.landing-steps{margin-top:32px;padding-block:28px;gap:24px;grid-template-columns:1fr}.landing-benefits{grid-template-columns:1fr;gap:24px;padding-top:28px}.format-ribbon{padding-block:12px}.format-ribbon>div{justify-content:flex-start;gap:22px;min-width:760px}.format-ribbon span{font-size:14px}.landing-faq{grid-template-columns:1fr;gap:12px;margin-top:40px;padding-top:30px}.landing-faq>div:first-child>p{font-size:25px;margin-bottom:12px}.footer-inner{gap:18px 22px}}
@media(max-width:480px){.navlinks>a,.file-menu-trigger{font-size:13px}.landing-hero{padding-top:36px}.landing-copy h1{font-size:clamp(44px,11vw,52px);letter-spacing:-2px}.landing-description{font-size:16px}.landing-note{font-size:13px}.landing-actions{gap:10px}.landing-actions .primary,.landing-secondary{font-size:14px;min-height:48px;padding-inline:19px}.orbit-demo{border-radius:22px}.demo-titlebar{border-radius:22px 22px 0 0;height:42px}.orbit-tabs{gap:14px;padding-inline:10px}.sample-file{font-size:13px;min-width:72px}.orbit-wheel{width:260px;height:260px}.orbit-north,.orbit-south{left:93px}.orbit-east,.orbit-west{top:106px}.orbit-core{width:124px;height:124px}.orbit-core strong{font-size:15px}.orbit-hint{margin-inline:16px}.demo-caption{padding:16px 19px;font-size:13px}.feature-card{padding:18px;min-height:170px}.feature-card h2{font-size:17px}.feature-card p{font-size:13px}.footer-links{font-size:14px}}
@media(prefers-reduced-motion:reduce){.landing-glow i,.landing-copy,.orbit-demo,.orbit-wheel{animation:none!important}.primary:hover,.landing-secondary:hover,.sample-file:hover,.sample-file.is-selected,.feature-card:hover{transform:none}}

/* Complete product story: examples, capabilities, format families and help. */
.home-section{max-width:1240px;position:relative;margin-top:72px}
.home-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:30px}
.section-eyebrow{font-size:14px;line-height:1.8;color:#97695d;margin:0 0 10px}
.home-section-head h2{font-size:32px;line-height:1.5;letter-spacing:-.8px;margin:0;color:#303947}
.home-section-head>p{font-size:15px;color:#68768a;line-height:1.9;max-width:280px;margin:0 0 4px}
.home-section-head>a{display:flex;align-items:center;gap:10px;font-size:14px;color:#9e6656;white-space:nowrap;padding-bottom:5px}
.home-section-head>a svg{width:17px;height:17px}
.home-section>.landing-steps{margin-top:0}
.showcase-tabs{display:flex;gap:7px;flex-wrap:wrap;border-bottom:1px solid #edf0f5;margin-bottom:22px;padding-bottom:13px}
.showcase-tabs button{padding:10px 19px;border:1px solid transparent;border-radius:999px;font-size:14px;color:#64748b}
.showcase-tabs button[aria-selected=true]{background:#fff2ed;border-color:#f6ded5;color:#a7614d;font-weight:600}
.showcase-tabs button:hover{background:#faf6f4}
.showcase-panel{display:grid;grid-template-columns:.95fr 1.05fr;gap:42px;align-items:center;padding:42px;border:1px solid #ece8e6;border-radius:24px;background:linear-gradient(130deg,#fffdfc,#fff)}
.showcase-copy{min-width:0}
.showcase-index{font-size:13px;letter-spacing:1.5px;font-weight:550;color:#8a6d61}
.showcase-copy h3{font-size:27px;color:#354052;line-height:1.5;letter-spacing:-.6px;margin:15px 0}
.showcase-copy>p{font-size:15px;line-height:1.95;color:#64748b;margin-bottom:18px}
.showcase-copy ul{padding-left:18px;font-size:14px;line-height:2.1;color:#64748b;margin-bottom:25px}
.showcase-copy .primary{font-size:14px;min-height:46px;padding-inline:21px}
.showcase-more{display:block;width:fit-content;font-size:14px;color:#916a59;margin-top:17px}
.showcase-art{min-width:0;min-height:320px;position:relative;border:1px solid #edf0f5;border-radius:20px;background:#fafbfc;padding:38px 24px 24px;overflow:hidden}
.art-caption{position:absolute;left:21px;top:14px;font-size:12px;color:#6b737f}
.art-photo{height:170px;position:relative;background:#fbe8db;border-radius:12px;padding:24px;overflow:hidden;box-shadow:0 10px 20px #ab705c12;transform:rotate(-3deg);max-width:270px;margin:auto}
.art-photo span{position:relative;font-size:30px;line-height:1.1;font-weight:750;letter-spacing:-1px;color:#744e43;z-index:1}
.art-photo i{position:absolute;width:170px;height:170px;right:-45px;bottom:-35px;border-radius:50%;background:#d88a72}
.art-image-output{max-width:280px;background:#ffffffed;border:1px solid #e7e8ee;border-radius:12px;padding:17px;margin:-12px 0 0 auto;position:relative}
.art-image-output>span:first-child{display:flex;align-items:center;gap:7px;color:#65758a;font-size:13px}
.art-image-output svg{width:16px;height:16px}
.art-line{display:block;height:1px;background:#edf0f5;margin:12px 0}
.art-image-output strong{display:flex;align-items:center;gap:12px;font-size:13px;color:#97695d;font-weight:600}
.art-image-output small{display:block;font-size:12px;color:#6c7584;margin-top:11px}
.art-scan{background:#fff;border:1px solid #e6e9ef;border-radius:11px;padding:22px;max-width:285px;transform:rotate(-3deg);margin:4px auto 0;position:relative}
.art-scan>span{font-size:17px;font-weight:650;color:#4b5563}
.art-scan p,.art-text p{font:14px/1.9 ui-monospace,SFMono-Regular,Consolas,monospace;color:#66758a;margin:14px 0 0}
.art-scan i{position:absolute;left:12px;right:12px;top:20%;height:2px;background:#e2a18c;box-shadow:0 3px 12px #e2a18c6b;animation:scan-sweep 5s ease-in-out infinite alternate}
.art-text{position:relative;max-width:280px;background:#fff;border:1px solid #e6e9ef;border-radius:11px;padding:18px;margin:-12px 0 0 auto;box-shadow:0 9px 25px #33415509}
.art-text>span{font-size:13px;color:#677670;display:flex;align-items:center;justify-content:space-between}
.art-text svg{width:17px;height:17px;color:#5f7b70}
.art-text>div{display:flex;gap:8px;margin-top:14px}
.art-text b{font-size:11px;font-weight:500;background:#f2f7f4;color:#65796f;border-radius:5px;padding:4px 7px}
.book-art{padding:43px 18px 22px;background:#fbfaf7}
.art-book{display:grid;grid-template-columns:100px 1fr;min-height:255px;background:#fff;border:1px solid #e9e6df;border-radius:12px;overflow:hidden}
.art-book aside{display:flex;flex-direction:column;gap:15px;padding:22px 12px;background:#f7f5f0;border-right:1px solid #ece9e2}
.art-book aside b{font-size:12px;color:#787467;font-weight:500}
.art-book aside span{font-size:11px;line-height:1.8;color:#777267}
.art-book aside span:first-of-type{color:#926b56}
.art-book>div{padding:22px 18px}
.art-book>div>span{font-size:11px;color:#777267}
.art-book h4{font-size:17px;color:#6c6459;line-height:1.7;font-family:serif;margin:15px 0 11px}
.art-book p{font-size:12px;font-family:serif;color:#787269;line-height:2.1}
.art-book i{display:block;height:2px;background:linear-gradient(90deg,#cfae90 30%,#f0e8de 30%);margin-top:20px}
.art-book small{font-size:11px;color:#79736a;display:block;margin-top:8px}
.capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 42px}
.capability-grid article{padding-top:14px;min-width:0}
.capability-grid article>svg{width:25px;height:25px;color:#936c60;margin-bottom:16px}
.capability-grid h3{font-size:17px;color:#475569;letter-spacing:0;margin:0 0 10px}
.capability-grid p{font-size:14px;line-height:1.95;color:#677486;margin:0;max-width:330px}
.format-family-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.format-family-grid details{border:1px solid #e7ebf1;border-radius:18px;background:#fff;min-width:0;align-self:start}
.format-family-grid summary{display:flex;align-items:center;gap:13px;cursor:pointer;list-style:none;padding:21px 20px}
.format-family-grid summary::-webkit-details-marker{display:none}
.format-family-grid summary>svg{width:25px;height:25px;color:#8f6b5e}
.format-family-grid summary>span{font-size:17px;color:#475569;font-weight:600;min-width:0}
.format-family-grid summary small{display:block;font-size:13px;line-height:1.7;color:#687384;font-weight:400;margin-top:5px}
.format-family-grid summary i{font-style:normal;font-size:18px;font-weight:400;color:#6e757f;margin-left:auto}
.format-family-grid details[open] summary i{transform:rotate(45deg)}
.format-family-grid details>div{padding:0 20px 22px}
.format-family-grid details p{font-size:13px;color:#677486;line-height:1.9;min-height:49px;margin:0 0 15px;border-top:1px solid #f0f3f7;padding-top:15px;overflow-wrap:anywhere}
.format-family-grid dl{display:grid;grid-template-columns:65px minmax(0,1fr);gap:9px 10px;font-size:13px;line-height:1.9;margin:0 0 18px}
.format-family-grid dt{color:#6a7384}
.format-family-grid dd{color:#5f7088;margin:0}
.format-family-grid details a{display:block;width:fit-content;color:#986a59;font-size:14px;line-height:1.8;margin-top:8px}
.format-family-grid details>div>small{display:block;color:#6a7589;font-size:13px;line-height:1.9;margin-top:16px}
.site-facts{display:grid;grid-template-columns:1fr 1fr;border:1px solid #e7ebf1;border-radius:18px;margin:0;overflow:hidden;background:#fff}
.site-facts>div{display:flex;gap:22px;padding:21px 23px;border-bottom:1px solid #edf0f5;min-width:0}
.site-facts>div:nth-child(odd){border-right:1px solid #edf0f5}
.site-facts>div:nth-last-child(-n+2){border-bottom:0}
.site-facts dt{font-size:14px;color:#6c7584;flex:0 0 70px;line-height:1.9}
.site-facts dd{font-size:14px;line-height:1.9;color:#63748c;margin:0}
.home-faq-list{max-width:850px;margin-inline:auto}
.home-faq-list details{border-bottom:1px solid #e9eef4}
.home-faq-list summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;font-size:16px;line-height:1.8;color:#586b85;padding:20px 0}
.home-faq-list summary::-webkit-details-marker{display:none}
.home-faq-list summary>span{font-size:20px;font-weight:400;color:#6a7584}
.home-faq-list details[open] summary>span{transform:rotate(45deg)}
.home-faq-list details p{font-size:15px;line-height:1.95;color:#64748b;max-width:760px;margin:0 0 22px}
.closing-cta{display:flex;align-items:center;justify-content:space-between;gap:36px;padding:40px 44px;background:linear-gradient(120deg,#fff5f0,#fcfbff 65%,#f6fcf9);border:1px solid #f0e6e2;border-radius:24px;margin-bottom:50px}
.closing-cta h2{font-size:30px;line-height:1.5;color:#475569;margin:0 0 12px;letter-spacing:-.5px}
.closing-cta>div>p:last-child{font-size:15px;line-height:1.9;color:#69758a;margin:0}
.closing-cta>div:last-child{display:flex;align-items:center;gap:17px;flex-shrink:0;flex-wrap:wrap}
.closing-cta .primary{min-height:48px;padding-inline:23px;font-size:14px}
.closing-cta .primary svg{width:17px;height:17px}
.closing-secondary{font-size:14px;color:#926c59;white-space:nowrap}
.footer-directory{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding-top:44px;padding-bottom:36px}
.footer-about p{font-size:15px;line-height:1.9;color:#697383;margin:21px 0 17px}
.footer-about>span{display:flex;align-items:center;gap:7px;color:#67776d;font-size:14px}
.footer-about>span svg{width:16px;height:16px}
.footer-directory nav{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.footer-directory nav h2{font-size:15px;color:#61758e;font-weight:600;letter-spacing:0;margin:0 0 5px}
.footer-directory nav a{font-size:14px;line-height:1.8;color:#68768b}
.footer-directory nav a:hover{color:var(--accent)}
.footer-bottom{display:flex;align-items:center;gap:26px;border-top:1px solid #edf0f5;min-height:74px;font-size:14px;color:#65738a;line-height:1.8;flex-wrap:wrap;padding-block:20px}
.footer-bottom a{margin-left:auto}
@keyframes scan-sweep{from{top:20%}to{top:78%}}
@media(max-width:1050px){.showcase-panel{padding:30px;gap:28px}.showcase-copy h3{font-size:24px}.showcase-art{padding-inline:17px}.capability-grid{gap:26px}.format-family-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-facts>div{padding:20px;gap:15px}.closing-cta{padding:32px;gap:25px}.closing-cta>div:last-child{flex-direction:column}.footer-directory{gap:28px}.art-book{grid-template-columns:80px 1fr}.art-book>div{padding:18px 14px}}
@media(max-width:760px){.home-section{margin-top:48px}.home-section-head{align-items:flex-start;flex-direction:column;gap:13px;margin-bottom:23px}.home-section-head h2{font-size:27px}.home-section-head>p{max-width:100%;font-size:14px}.section-eyebrow{font-size:13px}.showcase-panel{grid-template-columns:1fr;padding:25px;gap:27px}.showcase-copy h3{font-size:25px}.showcase-copy>p{font-size:15px}.showcase-art{min-height:300px}.showcase-tabs{gap:4px}.showcase-tabs button{padding:9px 16px;font-size:14px}.capability-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.capability-grid article{padding-top:8px}.capability-grid h3{font-size:16px}.capability-grid p{font-size:14px}.site-facts{grid-template-columns:1fr}.site-facts>div:nth-child(odd){border-right:0}.site-facts>div:nth-last-child(2){border-bottom:1px solid #edf0f5}.site-facts>div{padding:18px 20px}.home-faq-list summary{font-size:15px;padding-block:18px}.home-faq-list details p{font-size:14px}.closing-cta{flex-direction:column;align-items:flex-start;padding:28px;gap:24px;margin-bottom:32px}.closing-cta h2{font-size:26px}.closing-cta>div:last-child{flex-direction:row}.footer-directory{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 22px;padding-top:32px;padding-bottom:28px}.footer-about{grid-column:1/-1}.footer-about p{margin:16px 0 12px}.footer-directory nav h2{font-size:14px}.footer-directory nav a{font-size:14px}.footer-bottom{font-size:13px;gap:12px 20px}}
@media(max-width:480px){.home-section{margin-top:40px}.home-section-head h2{font-size:25px}.showcase-panel{padding:22px 19px;border-radius:18px}.showcase-copy h3{font-size:23px}.showcase-tabs button{font-size:13px;padding:9px 14px}.showcase-art{padding-inline:15px}.art-photo{height:155px}.art-photo span{font-size:27px}.art-book{grid-template-columns:75px 1fr}.art-book aside{padding-inline:10px}.art-book>div{padding-inline:12px}.capability-grid{grid-template-columns:1fr;gap:23px}.capability-grid article{display:grid;grid-template-columns:30px 1fr;gap:0 13px;padding-top:0}.capability-grid article>svg{grid-row:span 2;margin-top:2px}.capability-grid h3{margin-bottom:6px}.capability-grid p{max-width:none}.format-family-grid{grid-template-columns:1fr;gap:13px}.format-family-grid summary{padding:18px}.format-family-grid details>div{padding:0 18px 20px}.format-family-grid details p{min-height:0}.closing-cta{padding:25px 21px}.closing-cta h2{font-size:24px}.closing-cta>div:last-child{gap:16px}.footer-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 22px}.footer-about{grid-column:1/-1}.footer-bottom>span:nth-child(2){display:none}.footer-bottom{font-size:14px}.footer-directory nav{gap:11px}}
@media(prefers-reduced-motion:reduce){.art-scan i{animation:none!important}}

/* Consistent sans-serif typography with a quiet editing workspace. */
:root{--ui-font:"Inter","Noto Sans SC","PingFang SC","Microsoft YaHei",Arial,sans-serif}
body{font-family:var(--ui-font);font-size:16px;line-height:1.75;font-weight:400}
button,input,select,textarea{font-family:var(--ui-font)}
h1,h2,h3,h4{letter-spacing:-.02em;font-weight:600}
.navlinks>a,.file-menu-trigger,.file-menu a{font-size:15px}
.primary,.outline,.format-select,.extract-export select,.extract-export .primary,.extract-export .outline{font-size:15px}
.breadcrumb,.upload-foot,.upload-foot button,.workspace-assurance,.tool-caption,.file-meta,.row-status,.row-status.error{font-size:14px;line-height:1.8}
.landing-copy h1{font-size:60px;line-height:1.25;letter-spacing:-.04em;font-weight:650}
.landing-description{font-size:17px;line-height:1.85}
.home-section-head h2{font-size:29px;line-height:1.5;font-weight:600}
.home-section-head>p{font-size:15px}
.showcase-copy h3,.closing-cta h2{font-size:26px;line-height:1.5}
.capability-grid p,.showcase-copy>p,.showcase-copy ul,.format-family-grid details p,.format-family-grid dl,.format-family-grid details>div>small,.site-facts dt,.site-facts dd,.home-faq-list details p{font-size:15px;line-height:1.85}
.feature-card h2{font-size:18px;font-weight:600}
.feature-card p{font-size:14px}
.footer-directory nav a,.footer-directory nav h2,.footer-about p,.footer-bottom{font-size:15px;line-height:1.85}
.extract-upload h2{font-size:20px;font-weight:600}
.extract-upload p,.extract-upload small,.extract-options>label,.extract-options input[type=text],.extract-range-help,.extract-option-hint,.extract-progress-line p{font-size:14px;line-height:1.8}
.extract-options input[type=text]{height:42px}
.extract-panel-heading h3{font-size:15px;font-weight:600}
.extract-panel-heading>span,.extract-panel-heading button{font-size:14px}
.extract-panel-heading{padding:16px 20px}
.extract-file-select strong{font-size:15px}
.extract-file-select small{font-size:13px}
.extract-result-panel #result-text{font-family:var(--ui-font);font-size:17px;line-height:1.85;color:#303846;padding:23px 24px;min-height:380px;letter-spacing:0}
.extract-result-panel #result-text::placeholder{font-family:var(--ui-font);font-size:16px;color:#8b929e}
.extract-export{padding:15px 18px;gap:10px;flex-wrap:wrap}
.extract-export .primary,.extract-export .outline,.extract-export select{min-height:40px}
.extract-progress-line progress{height:3px}
.extract-progress-line p:empty{display:none}
.extract-progress-line:has(p:empty){display:none}
.orbit-hint{margin-bottom:22px}
@media(max-width:1050px){.landing-copy h1{font-size:52px}.capability-grid{gap:26px}.site-facts>div{flex-direction:column;gap:6px}.site-facts dt{flex-basis:auto}}
@media(max-width:760px){body{font-size:15px}.navlinks>a,.file-menu-trigger{font-size:14px}.landing-copy h1{font-size:48px}.home-section-head h2{font-size:26px}.showcase-copy h3,.closing-cta h2{font-size:24px}.capability-grid p,.format-family-grid dl,.format-family-grid details p,.format-family-grid details>div>small,.home-faq-list details p{font-size:15px}.extract-result-panel #result-text{font-size:17px;min-height:320px;padding:20px}.extract-upload p,.extract-upload small,.extract-options>label,.extract-options input[type=text],.extract-range-help,.extract-option-hint,.extract-progress-line p{font-size:14px}.extract-panel-heading h3{font-size:15px}.footer-directory nav a,.footer-directory nav h2,.footer-bottom{font-size:14px}}
@media(max-width:480px){.landing-copy h1{font-size:42px}.home-section-head h2{font-size:25px}.extract-upload-actions{gap:14px}.extract-upload-actions .primary,.extract-run .primary,.extract-export .primary,.extract-export .outline,.extract-export select{font-size:14px}.extract-export select{min-width:130px}.extract-export{padding:12px;gap:8px}.extract-result-panel #result-text{padding:18px}.file-row .row-status{font-size:14px}.feature-card p{font-size:14px}.file-row{grid-template-columns:27px minmax(55px,1fr) 80px 22px}.format-select{width:80px}.footer-about p{font-size:15px}}

/* Descriptive headings, black primary text, and a continuous format ribbon. */
:root{--ink:#161616}
body{color:#161616}
main :is(h1,h2,h3,h4),.feature-card h2,.home-section-head h2,.showcase-copy h3,.capability-grid h3,.format-family-grid summary>span,.home-faq-list summary{color:#161616}
main :is(.prose,.showcase-copy>p,.showcase-copy li,.capability-grid p,.format-family-grid details p,.format-family-grid dd,.site-facts dd,.home-faq-list details p,.feature-card p,.landing-steps strong,.landing-steps p,.directory-intro,.group-heading p,.input-formats,.availability-note,.reader-status,.reader-format-note,.extract-upload p,.extract-options>label){color:#161616}
.format-family-grid summary small,.format-family-grid dt,.format-family-grid details>div>small,.site-facts dt,.art-caption,.file-meta,.extract-file-select small{color:#64748b}
.home-title{max-width:1240px;padding-top:38px;padding-bottom:12px}
.home-title h1{font-size:30px;line-height:1.5;font-weight:600;letter-spacing:-.02em;margin:0}
.landing-tools{padding-top:28px}
.format-ribbon{margin-top:12px;padding-block:20px;max-width:1240px}
.format-ribbon>.ribbon-track{display:flex;justify-content:flex-start;gap:0;min-width:0;width:max-content;animation:format-scroll 26s linear infinite;will-change:transform}
.ribbon-group{display:flex;align-items:center;justify-content:space-around;flex-shrink:0;gap:32px;min-width:1100px;padding-right:32px}
.format-ribbon span{color:#171717;font-size:15px}
.format-ribbon i{color:#b5bac3;font-size:12px}

.expanded-footer .footer-directory{grid-template-columns:minmax(0,1fr) auto;gap:48px}
.expanded-footer .footer-about{max-width:480px}
.expanded-footer .footer-about p,.expanded-footer nav h2,.expanded-footer nav a{color:#171717}
.expanded-footer .footer-directory nav{display:grid;grid-template-columns:repeat(2,max-content);gap:10px 28px}
.expanded-footer .footer-directory nav h2{grid-column:1/-1}
.expanded-footer .footer-bottom{color:#64748b}
@keyframes format-scroll{to{transform:translateX(-50%)}}
@media(max-width:760px){.home-title{padding-top:28px;padding-bottom:10px}.home-title h1{font-size:26px}.ribbon-group{min-width:960px;gap:26px;padding-right:26px}.format-ribbon>.ribbon-track{animation-duration:24s}.expanded-footer .footer-directory{grid-template-columns:1fr;gap:27px}.expanded-footer .footer-about{grid-column:auto}.expanded-footer .footer-directory nav{grid-template-columns:repeat(2,minmax(0,1fr));justify-items:start}.landing-tools{padding-top:22px}}
@media(max-width:480px){.home-title h1{font-size:23px}.home-title{padding-top:24px}.format-ribbon{margin-top:8px;padding-block:15px}.format-ribbon span{font-size:14px}}
@media(prefers-reduced-motion:reduce){.format-ribbon>.ribbon-track{animation:none!important;transform:none;will-change:auto}}

.prose h2,.tool-heading h1,.page-hero h1,.reader-hero h1,.directory-group .group-heading h2,.extract-panel-heading h3,.extract-upload h2{color:#171717}
.extract-result-panel #result-text{color:#171717}

/* Shared navigation */
html { scroll-padding-top: 84px; }
.simple-header {
  height: auto;
  border: 0;
  background: var(--canvas);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  transition: background .25s, box-shadow .25s;
}
.simple-header.is-scrolled {
  background: color-mix(in srgb,var(--canvas) 88%,transparent);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 1px var(--line);
}
.simple-header .header-inner {
  position: relative;
  display: flex;
  align-items: center;
  height: auto;
  min-height: 68px;
  max-width: 1160px;
  gap: clamp(14px,3vw,36px);
  padding: 10px 24px;
}
.simple-header .brand { flex: 0 0 auto; min-height: 44px; font-size: 22px; letter-spacing: -.9px; }
.simple-header .brand-icon { width: 30px; height: 30px; font-size: 28px; }
.simple-header .navlinks {
  display: flex;
  align-items: center;
  flex: 1;
  justify-content: flex-end;
  gap: clamp(16px,2.5vw,32px);
  padding: 0;
  margin: 0;
  overflow: visible;
}
.simple-header .navlinks > a,.simple-header .file-menu-trigger {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-height: 44px;
  padding: 0;
  border: 0;
  color: var(--ink);
  font-size: 14px;
  font-weight: 600;
  white-space: nowrap;
}
.simple-header .navlinks > a:hover,.simple-header .file-menu-trigger:hover,
.simple-header .file-menu-trigger[aria-expanded=true],.simple-header .navlinks > a[aria-current] { color: var(--accent-hover); }
.simple-header .navlinks > a::after,.simple-header .file-menu-trigger::after { display: none; }
.simple-header .file-menu-trigger span { margin: 0; color: inherit; font-size: inherit; }
.file-menu-trigger svg { width: 14px; height: 14px; transition: transform .2s; }
.file-menu-trigger[aria-expanded=true] svg { transform: rotate(180deg); }
.simple-header .header-download {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  gap: 6px;
  min-height: 44px;
  padding: 0 15px;
  border-radius: 999px;
  background: #ca352c;
  color: #fff;
  font-size: 14px;
  font-weight: 650;
  white-space: nowrap;
}
.simple-header .header-download:hover { background: #af2a23; }
.header-download svg { width: 17px; height: 17px; }
.simple-header .file-menu {
  position: absolute;
  inset: calc(100% + 2px) 24px auto auto;
  width: min(930px,calc(100% - 48px));
  max-height: calc(100dvh - 80px);
  padding: 16px;
  overflow: auto;
  overscroll-behavior: contain;
  background: var(--canvas);
  border: 1px solid var(--line);
  box-shadow: 0 18px 50px #25314422;
}
.menu-grid,.directory-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.directory-group { min-width: 0; padding: 14px; border: 1px solid var(--line); border-radius: 16px; background: var(--canvas); }
.directory-group h3 { display: flex; align-items: center; gap: 8px; margin: 0 0 8px; font-size: 16px; font-weight: 750; }
.directory-group h3 svg { width: 19px; height: 19px; color: var(--accent); }
.directory-group ul { list-style: none; margin: 0; padding: 0; }
.directory-group a,.simple-header .file-menu .directory-group a { display: block; padding: 9px 8px; border-radius: 8px; color: var(--ink); }
.directory-group a:hover,.simple-header .file-menu .directory-group a:hover { background: var(--soft); color: var(--accent-hover); }
.directory-group a strong { display: block; font-size: 14px; font-weight: 640; }
.directory-group a small { display: block; color: var(--muted); font-size: 12px; line-height: 1.5; }
.menu-grid { gap: 10px; }
.menu-grid .directory-group { padding: 8px 9px; border: 0; }
.menu-grid .directory-group h3 { padding-left: 8px; }
.simple-header .file-menu .menu-grid a { padding-block: 6px; }
.menu-grid a small { display: none; }
.simple-header .file-menu .menu-all { display: flex; align-items: center; gap: 7px; justify-content: center; margin-top: 10px; border-top: 1px solid var(--line); color: var(--accent-hover); font-weight: 650; }
.menu-all svg { width: 16px; height: 16px; }
@media (max-width: 900px) { .directory-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 700px) {
  html { scroll-padding-top: 74px; }
  .simple-header .header-inner { min-height: 62px; gap: 13px; padding: 7px 16px; }
  .simple-header .navlinks { gap: 0; }
  .simple-header .header-tools,.simple-header .navlinks > .desktop-nav-link { display: none; }
  .simple-header .header-download { padding-inline: 12px; }
}
@media (max-width: 520px) { .directory-grid { grid-template-columns: minmax(0,1fr); gap: 9px; } }
@media (max-width: 360px) {
  .simple-header .header-inner { padding-inline: 12px; gap: 10px; }
  .simple-header .brand { font-size: 21px; }
}
@media (prefers-reduced-motion: reduce) {
  .simple-header,.file-menu-trigger svg { transition: none; }
}

main > :is(.tool-hero,.workbench,.extractor,.reader,.advanced-directory,.page-hero,.format-catalog) { margin-top: 24px; }
.image-output { padding: 0 18px; border-top: 1px solid var(--line); background: var(--soft); text-align: left; }
.image-output summary { padding-block: 12px; cursor: pointer; font-weight: 650; }
.image-output fieldset { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr) auto; gap: 16px; align-items: start; min-width: 0; padding: 4px 0 16px; margin: 0; border: 0; }
.image-output label,.image-output small { display: block; font-size: 13px; }
.image-output output { float: right; padding-left: 5px; color: var(--accent-hover); }
.image-output input { display: block; width: 100%; height: 40px; margin-block: 4px; }
.image-output input[type=range] { accent-color: var(--accent); }
.image-output input[type=number] { padding-inline: 9px; border: 1px solid var(--line); border-radius: 8px; background: var(--canvas); color: var(--ink); }
.image-output small { color: var(--muted); }
.image-output button { align-self: center; white-space: nowrap; }
@media (max-width: 550px) { .image-output fieldset { grid-template-columns: minmax(0,1fr); gap: 11px; } .image-output button { justify-self: start; } }

.landing-tools{padding-top:38px}
.format-ribbon{margin-top:30px;padding-block:20px}
.expanded-footer { background: var(--soft); border-top: 1px solid var(--line); }
.expanded-footer .footer-directory {
  display: grid; grid-template-columns: minmax(0,1.5fr) repeat(2,minmax(0,1fr));
  align-items: start; gap: 24px clamp(22px,6vw,90px); padding-block: 32px 22px;
}
.expanded-footer .footer-directory nav { display: grid; grid-template-columns: 1fr; gap: 0; justify-items: start; }
.expanded-footer .footer-directory nav h2 { margin: 0 0 3px; color: var(--ink); font-size: 16px; font-weight: 700; }
.expanded-footer .footer-directory nav a,.footer-legal a { display: inline-flex; align-items: center; min-height: 44px; color: var(--ink); font-size: 15px; }
.expanded-footer a:hover { color: var(--accent-hover); }
.footer-legal {
  display: flex; align-items: center; gap: 5px 20px; min-height: 60px; padding-block: 5px;
  border-top: 1px solid var(--line); color: var(--muted); font-size: 14px;
}
.footer-legal .footer-back { margin-left: auto; gap: 6px; white-space: nowrap; }
.footer-back span { display: grid; place-items: center; width: 26px; height: 26px; border: 1px solid var(--line); border-radius: 50%; }
@media(max-width:760px){
  .landing-tools { padding-top: 28px; }
  .format-ribbon { margin-top: 22px; padding-block: 17px; }
  .expanded-footer .footer-directory { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px 24px; padding-block: 24px 16px; }
  .footer-brand { grid-column: 1/-1; }
  .footer-legal { gap: 4px 13px; }
  .footer-legal,.footer-legal a { font-size: 13px; }
}
@media(max-width:480px){.landing-tools{padding-top:24px}}

@media (max-width: 480px) {
  .wrap { padding-inline: 16px; }
  .landing-tools .home-tool-grid > .feature-card {
    min-width: 0;
    border-radius: 14px;
  }
  .landing-tools .feature-card h2 { overflow-wrap: anywhere; }
  .landing-tools .all-tools-link { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .all-tools-link > .outline { grid-column: 1 / -1; }
  .all-tools-link > a { display: flex; align-items: center; justify-content: center; min-height: 44px; }
  .landing-tools .all-tools-link > a:not(.outline) { border: 1px solid var(--line); border-radius: 9px; }
  .converter .upload-actions { width: min(100%, 320px); }
  .converter .upload-actions .choose { flex: 1; justify-content: center; }
  .queue-bottom { display: grid; gap: 8px; }
  .queue-bottom > div { width: 100%; }
  .queue-bottom .convert-btn { flex: 1; justify-content: center; }
  .queue-bottom .addfiles { justify-self: start; min-height: 44px; }
  .queue-bottom .settings-btn { min-width: 44px; min-height: 44px; }
  .file-row {
    grid-template-columns: 23px minmax(0, 1fr) 76px 44px;
    gap: 4px 7px;
    padding: 8px;
  }
  .file-row .format-select, .file-row .remove-file { width: 100%; min-height: 44px; }
  .file-row .remove-file { font-size: 22px; }
  .file-row .row-status { grid-column: 2 / -1; overflow-wrap: anywhere; }
  .file-row .row-status a { min-height: 44px; display: inline-grid; place-items: center; }
  .extract-upload-actions { width: 100%; }
  .extract-upload-actions .primary { flex: 1; justify-content: center; }
  .extract-options input[type=text], .extract-export select, .reader-controls select,
  #reader-search-input { font-size: 16px; }
  .extract-export { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .extract-export select { grid-area: 1 / 1; width: 100%; min-width: 0; }
  #extract-download { grid-area: 1 / 2; }
  .extract-export :is(button, select) { min-height: 44px; justify-content: center; }
  .reader-toolbar { gap: 10px; }
  .reader-controls { justify-content: flex-start; }
  .reader-controls :is(button, select), .reader-page-controls button,
  .reader-sidebar-tabs button { min-height: 44px; }
  .reader-font-controls button { min-width: 44px; }
  .reader-sidebar-panel { max-height: 32svh; }
  #reader-frame { height: 65svh; min-height: 320px; }
  .reader-page-controls { gap: 6px; }
  .reader-page-controls > div { min-width: 0; }
  .reader-page-controls progress { max-width: 100%; }
}

/* Home and shared page rhythm */
.home-tools-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px 20px;
  margin-bottom: 22px;
}
.home-tools-heading h1 {
  margin: 0;
  font-size: clamp(25px, 3vw, 38px);
  line-height: 1.22;
  font-weight: 720;
  letter-spacing: -.035em;
}
.home-tools-heading .outline { gap: 8px; min-height: 44px; white-space: nowrap; }
.home-tools-heading svg, .home-shortcuts svg { width: 17px; height: 17px; }
.landing-tools .feature-card { min-height: 170px; border-radius: 18px; }
.home-shortcuts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin-top: 16px;
}
.home-shortcuts a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  gap: 7px;
  padding: 0 12px;
  border: 1px solid var(--line);
  border-radius: 10px;
  color: var(--ink);
}
.home-shortcuts a:hover { border-color: #e7a297; color: #b52f26; }
.home-shortcuts svg { color: #97655c; }
#how-it-works .landing-steps { gap: 16px; padding-block: 20px; }
#how-it-works .landing-steps li { gap: 10px; align-items: flex-start; }
#how-it-works .landing-steps li > span {
  display: grid;
  place-items: center;
  flex: 0 0 30px;
  height: 30px;
  padding: 0;
  border-radius: 8px;
  background: #fbefeb;
  color: #9a3f34;
}
#how-it-works .landing-steps p { margin-top: 3px; }
#capabilities .capability-grid { gap: 12px; }
#capabilities .capability-grid article {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 16px;
}
#capabilities .capability-grid article > svg { margin: 0 0 12px; }
#capabilities .capability-grid article > a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  margin-top: auto;
  padding-top: 4px;
  font-weight: 600;
  color: #a63d32;
}
html[data-theme=dark] #capabilities .capability-grid article > a { color: #ffad9f; }
.site-facts dt { flex: none; color: var(--ink); font-weight: 650; }
@media (max-width: 760px) {
  .home-tools-heading { margin-bottom: 14px; }
  .home-tools-heading .outline { padding-inline: 10px; font-size: 13px; }
  .landing-tools .home-tool-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .landing-tools .home-tool-grid > .feature-card { min-height: 132px; padding: 14px; }
  .landing-tools .feature-card h2 { font-size: 16px; margin-bottom: 3px; }
  .landing-tools .feature-card p { font-size: 13px; line-height: 1.55; }
  .landing-tools .feature-icon { width: 40px; height: 40px; margin-bottom: 10px; }
  #how-it-works .landing-steps { grid-template-columns: 1fr; gap: 14px; }
  .home-section-head > a { min-height: 44px; padding-bottom: 0; }
  .home-section-head { gap: 4px; margin-bottom: 15px; }
  .home-faq-list details > summary, .format-family-grid details > summary { min-height: 48px; }
  .content-layout.has-toc { display: flex; flex-direction: column; gap: 14px; }
  .content-layout.has-toc > * { width: 100%; min-width: 0; }
  .content-layout .content-sidebar {
    display: block;
    position: static;
    order: -1;
    padding: 12px 14px;
    border: 1px solid var(--line);
    border-radius: 12px;
  }
  .content-sidebar h3 { margin-bottom: 2px; }
  .article-toc { flex-flow: row wrap; gap: 0 12px; padding: 0; border: 0; }
  .article-toc a { display: inline-flex; align-items: center; min-height: 44px; padding: 0; border: 0; }
  .tool-heading { flex-wrap: wrap; }
  .tool-heading h1 { min-width: 0; overflow-wrap: anywhere; }
  .tool-heading .compact-settings { min-height: 44px; }
}
@media (max-width: 480px) {
  .landing-tools .home-tool-grid > .feature-card { padding-right: 21px; }
  .home-shortcuts { gap: 6px; }
  .home-shortcuts a { flex: 1 1 auto; padding-inline: 8px; font-size: 13px; }
  #capabilities .capability-grid article { padding: 15px 17px; }
  .group-heading { align-items: flex-start; flex-direction: column; gap: 9px; }
  .group-heading > .outline { min-height: 44px; }
}

.pdf-directory { padding-block: clamp(24px,5vw,56px) 0; }
.pdf-directory-intro { display: flex; align-items: center; gap: 16px; margin-bottom: 24px; }
.pdf-directory-icon { display: grid; flex: 0 0 54px; height: 54px; place-items: center; border-radius: 15px; color: #a83e32; background: #f9e9e5; }
.pdf-directory-icon svg { width: 28px; height: 28px; }
.pdf-directory-intro h1,.pdf-extract-heading h1 { margin: 0; font-size: clamp(26px,4.5vw,45px); line-height: 1.18; letter-spacing: -.035em; }
.pdf-directory-intro p,.pdf-extract-heading p { margin: 7px 0 0; color: var(--muted); }
.pdf-directions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.pdf-directions section,.pdf-page-tools { min-width: 0; padding: clamp(13px,2.1vw,25px); border: 1px solid var(--line); border-radius: 18px; background: var(--canvas); }
.pdf-directions h2,.pdf-page-tools h2 { margin: 0 0 10px; font-size: 19px; }
.pdf-directions a { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 67px; padding: 10px 7px; border-top: 1px solid var(--line); color: var(--ink); }
.pdf-directions a:hover { background: var(--soft); color: var(--accent-hover); }
.pdf-directions a strong,.pdf-directions a small { display: block; }
.pdf-directions a small { margin-top: 2px; color: var(--muted); font-size: 13px; line-height: 1.55; }
.pdf-directions a svg { flex: 0 0 18px; width: 18px; height: 18px; color: var(--accent-hover); }
.pdf-page-tools { margin-top: 14px; background: var(--soft); }
.pdf-page-tools div { display: flex; flex-wrap: wrap; gap: 5px 20px; }
.pdf-page-tools a { display: inline-flex; align-items: center; min-height: 44px; color: var(--ink); }
.pdf-page-tools a:hover,.pdf-directory-note a,.pdf-extract-heading a,.wb-conversion-note a { color: var(--accent-hover); }
.pdf-directory-note,.wb-conversion-note { color: var(--muted); }
.pdf-extract-heading { margin: 22px 0 16px; }
.pdf-extract-heading a { display: inline-flex; align-items: center; min-height: 44px; }
.workbench[data-task=document-pdf] .wb-image-output { display: none; }
@media (max-width: 690px) { .pdf-directions { grid-template-columns: minmax(0,1fr); } }

/* Allow translated navigation labels to fit narrow screens. */
@media (max-width: 520px) {
  .simple-header .header-inner { gap: 9px; padding-inline: 12px; }
  .simple-header .navlinks { min-width: 0; }
  .simple-header .navlinks > a {
    min-width: 0;
    white-space: normal;
    text-align: center;
    line-height: 1.2;
    overflow-wrap: anywhere;
    font-size: 12px;
  }
  .simple-header .header-download { gap: 4px; padding-inline: 9px; font-size: 12px; }
  .simple-header .header-download span { max-width: 6.5em; white-space: normal; line-height: 1.2; }
}

html:lang(ja){--ui-font:Inter,"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}
html:lang(ko){--ui-font:Inter,"Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif}
html:lang(zh-TW){--ui-font:Inter,"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif}
html:lang(en),html:lang(fr),html:lang(de),html:lang(es){--ui-font:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.navlinks a,.navlinks summary,.outline,.primary,button,label,summary,h1,h2,h3{overflow-wrap:anywhere}
