@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#202b39;--muted:#78808b;--blue:#2959d9;--line:#e6e8ec;--bg:#f7f8fa}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:14px 'DM Sans',sans-serif;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}[hidden]{display:none!important}:focus-visible{outline:3px solid #94b4ff;outline-offset:4px}.shell{width:min(1080px,calc(100% - 64px));margin-inline:auto}.site-header{height:92px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:5px;font:800 19px Manrope,sans-serif;letter-spacing:-.7px}.brand-mark{display:grid;place-items:center;background:var(--blue);color:white;width:31px;height:31px;border-radius:7px;margin-right:8px;font-size:25px;font-weight:500}.brand-divider{color:#a4acb7;font-weight:400;margin:0 2px}.beta{font:10px 'DM Sans',sans-serif;letter-spacing:1.4px;color:var(--muted);border-left:1px solid #d8dce3;padding-left:12px;margin-left:9px}.site-header nav{display:flex;align-items:center;gap:30px;font-size:12px;color:#5b6470}.text-button{border:0;background:none;color:inherit;padding:8px 0;font-weight:500}.text-button:hover,a:hover{color:var(--blue)}.intro{text-align:center;padding:46px 0 35px;position:relative}.intro:before{content:'';position:absolute;inset:10px 10% 0;z-index:-1;opacity:.45;background-image:linear-gradient(#dee3ec 1px,transparent 1px),linear-gradient(90deg,#dee3ec 1px,transparent 1px);background-size:32px 32px;mask-image:radial-gradient(ellipse,black 0%,transparent 70%)}.eyebrow,.section-label{font-size:10px;font-weight:600;letter-spacing:1.7px;color:var(--muted)}.eyebrow{display:flex;align-items:center;justify-content:center;gap:9px;margin:0 0 18px}.eyebrow span{width:6px;height:6px;background:var(--blue);border-radius:50%}h1,h2,h3,h4,p{margin:0}h1{font-family:Manrope,sans-serif;font-size:clamp(42px,5.2vw,59px);font-weight:800;line-height:1.13;letter-spacing:-3px}h1 span{color:var(--blue)}.intro-copy{color:#727b87;line-height:1.75;font-size:14px;margin-top:17px}.intro-meta{display:flex;gap:15px;justify-content:center;align-items:center;margin-top:19px;color:#616b79;font-size:11px}.intro-meta i{width:3px;height:3px;background:#b7bdc6;border-radius:50%}.workspace{background:white;border:1px solid #dfe3e9;border-radius:15px;box-shadow:0 8px 30px #25345106,0 2px 4px #25345102;overflow:hidden}.workspace-heading{padding:23px 30px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}h2{font:700 21px Manrope,sans-serif;letter-spacing:-.6px}.workspace-heading h2{margin-top:7px;font-size:20px}.server-status{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:7px}.server-status:before{content:'';width:6px;height:6px;border-radius:50%;background:#c5a15b}.server-status.ready:before{background:#34856a}.workspace-body{display:grid;grid-template-columns:1.2fr 1fr;gap:32px;padding:26px 30px 24px}.file-column{padding-right:32px;border-right:1px solid var(--line)}.section-caption{display:flex;align-items:center;gap:9px;margin-bottom:19px}.step-number{display:grid;place-items:center;font-size:10px;color:#87909c;background:#f2f4f7;border-radius:5px;width:23px;height:23px}.section-caption h3{font-size:13px;font-weight:600}.small-note{margin-left:auto;font-size:10px;color:#8a929e}.upload-area{border:1px dashed #cbd5e4;border-radius:9px;min-height:200px;background:#fafbfd;display:flex;align-items:center;justify-content:center;flex-direction:column;transition:background .2s,border-color .2s}.upload-area.dragover{background:#edf3ff;border-color:var(--blue)}.document-icon{width:35px;height:43px;border:1.5px solid #aabbd9;border-radius:4px;position:relative;background:white;margin-bottom:14px;transform:rotate(-6deg)}.document-icon:before{content:'';position:absolute;right:-1px;top:-1px;width:11px;height:11px;border-left:1.5px solid #aabbd9;border-bottom:1.5px solid #aabbd9;background:#fafbfd}.document-icon span{position:absolute;left:5px;bottom:8px;font-size:9px;font-weight:700;letter-spacing:1px;color:#7290bf}.upload-area h4{font-size:14px;font-weight:600}.upload-area p{font-size:12px;color:#8b94a0;margin-top:5px}.browse-button{margin-top:16px;background:white;border:1px solid #dbe1ea;border-radius:6px;padding:9px 15px;color:#45546b;font-size:11px;font-weight:600}.browse-button span{margin-left:18px}.browse-button:hover{border-color:var(--blue);color:var(--blue)}.file-note{display:flex;gap:8px;color:#818b97;font-size:10px;line-height:1.6;margin-top:12px;max-width:390px}.format-tag{margin-left:auto;font-size:10px;font-weight:600;color:#6f7f96;background:#f1f4f8;padding:4px 7px;border-radius:4px}fieldset{border:0;padding:0;margin:0}legend{font-size:11px;color:#737c88;padding:0;margin-bottom:9px}.segmented{display:flex;background:#f2f4f7;border:1px solid #ebedf1;padding:3px;border-radius:7px}.segmented label{flex:1;position:relative;cursor:pointer}.segmented input{position:absolute;opacity:0;width:100%;height:100%;margin:0}.segmented span{display:block;text-align:center;padding:9px 4px;font-size:11px;color:#818995;border:1px solid transparent;border-radius:5px}.segmented input:checked+span{background:white;color:var(--ink);box-shadow:0 1px 4px #182d4410;border-color:#e1e5ec}.segmented input:focus-visible+span{outline:2px solid var(--blue)}.option-help{font-size:10px;color:#818b97;line-height:1.6;margin-top:10px}.advanced{margin-top:19px;border-top:1px solid var(--line);padding-top:13px}.advanced summary{display:flex;justify-content:space-between;font-size:11px;color:#647080;cursor:pointer;list-style:none}.advanced summary::-webkit-details-marker{display:none}.advanced[open] summary>span{transform:rotate(45deg)}.trace-option{display:flex;align-items:center;gap:7px;font-size:11px;margin-top:15px}.trace-option input{accent-color:var(--blue)}.trace-option small{display:block;color:var(--muted);margin-top:3px}.convert-button{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;background:var(--blue);border:1px solid var(--blue);color:white;border-radius:7px;padding:13px 16px;font-size:12px;font-weight:600;transition:background .15s}.options-column>.convert-button{margin-top:22px}.convert-button:hover:not(:disabled){background:#1f48ba}.convert-button:disabled{background:#eaf0fc;border-color:#eaf0fc;color:#8ca4d4}.action-note{font-size:10px;text-align:center;color:#818b97;margin-top:10px;line-height:1.5}.workspace-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 30px;background:#fcfcfd;border-top:1px solid var(--line);font-size:9px;color:#818b97}.workspace-footer>span:last-child{font-size:8px;letter-spacing:1.1px}.compatibility{text-align:center;padding:25px 0 30px;border-bottom:1px solid var(--line)}.compatibility>span{font-size:8px;letter-spacing:1.6px;color:#8e98a5}.compatibility p{margin-top:12px;font-size:13px;font-weight:500;color:#818995}.compatibility i{font-style:normal;margin:0 16px;color:#c3c8d0}.how-it-works{padding:32px 0;display:grid;grid-template-columns:1fr 1.85fr;gap:35px}.how-it-works h2{font-size:18px;margin-top:10px}.how-it-works ol{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin:0;padding:0}.how-it-works li>span{font-size:10px;color:#8998b2}.how-it-works h3{font-size:12px;margin:10px 0 6px;font-weight:600}.how-it-works li p{font-size:11px;color:#818b97;line-height:1.65}.site-footer{border-top:1px solid var(--line);padding:22px 0 28px;display:flex;justify-content:space-between;gap:15px;color:#818b97;font-size:10px}.selected-file{display:flex;gap:13px;align-items:center;min-height:200px;padding:24px;background:#f8faff;border:1px solid #dce5f6;border-radius:9px}.file-badge{padding:12px 8px;border:1px solid #cbd8f1;color:var(--blue);border-radius:5px;font-size:10px}.selected-file>div{min-width:0;flex:1}.selected-file strong{display:block;overflow-wrap:anywhere;font-size:13px}.selected-file #fileSize{display:block;color:var(--muted);font-size:11px;margin-top:6px}.selected-file button{font-size:11px}.status-area{border-top:1px solid var(--line);margin:0 30px;padding:22px 0}.status-heading{display:flex;justify-content:space-between;gap:15px;font-size:12px}.status-heading span{color:var(--muted)}.progress-track{height:5px;background:#eef1f6;border-radius:5px;overflow:hidden;margin:13px 0}.progress-track>div{height:100%;width:0;background:var(--blue);transition:width .3s}.status-area p{font-size:11px;color:var(--muted);line-height:1.6}.result-actions{display:flex;align-items:center;gap:25px;margin-top:18px}.result-actions .convert-button{width:auto;min-width:170px}.result-actions .text-button{font-size:12px}.error-message{background:#fff3f0;color:#a74a35;border:1px solid #f2dcd5;border-radius:6px;margin:0 30px 20px;padding:13px;font-size:12px;line-height:1.6}dialog{width:min(460px,calc(100% - 32px));padding:30px;border:1px solid var(--line);border-radius:14px;color:var(--ink);box-shadow:0 20px 80px #13274422}dialog::backdrop{background:#14243b55;backdrop-filter:blur(3px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center}dialog h2{margin:14px 0}dialog p{font-size:12px;color:var(--muted);line-height:1.6}dialog label{display:block;margin:22px 0 9px;font-size:12px}textarea{width:100%;border:1px solid #dbe1ea;border-radius:7px;padding:12px;resize:vertical;min-height:100px;font-size:13px;color:var(--ink)}dialog .convert-button{margin-top:15px}dialog .error-message{margin:12px 0}
/* Fluid tool layout: grow the workspace without stretching it edge to edge. */
.shell{width:min(1280px,calc(100% - clamp(48px,8vw,160px)))}
.site-header{height:clamp(56px,8dvh,76px)}
.intro{padding:clamp(16px,3dvh,32px) 0 clamp(18px,3dvh,32px)}
.intro:before{display:none}
h1{font-size:clamp(42px,3.5vw,56px);letter-spacing:-1.8px;line-height:1.2}
.intro-copy{margin-top:14px;font-size:16px}
.workspace-heading{padding:16px 28px}
.workspace-heading>.small-note{margin-left:0;font-size:12px}
.section-caption h2{font:600 16px 'DM Sans',sans-serif;letter-spacing:0}
.workspace-body{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(24px,2.5vw,40px);padding:clamp(18px,2.5dvh,28px) 28px}
.file-column{min-width:0;padding-right:clamp(24px,2.5vw,40px)}
.options-column{min-width:0}
.upload-area,.selected-file{min-height:clamp(190px,25dvh,280px)}
.upload-area h4{font-size:16px}
.browse-button{font-size:14px;min-height:44px;padding:11px 18px}
.site-header nav,.server-status,.small-note,.format-tag{font-size:12px}
legend,.advanced summary,.trace-option{font-size:14px}
.segmented span{font-size:14px;padding:12px 6px}
.convert-button{min-height:48px;font-size:14px}
.file-note,.option-help,.action-note{font-size:12px;line-height:1.65}
.file-note{max-width:none}
.selected-file strong{font-size:15px}
.selected-file #fileSize,.selected-file button,.status-area p{font-size:13px}
.status-heading{font-size:14px}
.workspace-footer{justify-content:center;padding:13px 20px;text-align:center}
.workspace-footer>span:last-child{font-size:12px;letter-spacing:0}
.usage-counter{font:inherit;color:inherit;font-variant-numeric:tabular-nums}
.site-footer{margin-top:16px;padding:12px 0;font-size:12px;flex-wrap:wrap;line-height:1.6}
.dialog-heading h2{margin:0}
@media(max-width:760px){.shell{width:calc(100% - 36px)}.site-header{height:76px}.site-header nav{gap:16px}.site-header nav>a,.beta{display:none}.intro{padding:38px 0 30px}h1{letter-spacing:-2px}.intro-copy{font-size:12px}.workspace-heading{padding:21px;align-items:flex-start;gap:14px}.workspace-heading h2{font-size:17px}.server-status{max-width:105px;line-height:1.5;font-size:9px}.server-status:before{flex-shrink:0}.workspace-body{grid-template-columns:1fr;gap:25px;padding:22px}.file-column{border:0;padding:0}.upload-area,.selected-file{min-height:185px}.file-note{max-width:none}.options-column{border-top:1px solid var(--line);padding-top:22px}.workspace-footer{padding:13px 22px;line-height:1.6}.workspace-footer>span:last-child{display:none}.compatibility p{font-size:11px;line-height:1.9}.compatibility i{margin:0 6px}.how-it-works{grid-template-columns:1fr;gap:25px;padding:30px 0}.how-it-works ol{gap:16px}.site-footer{flex-wrap:wrap;font-size:9px}.status-area{margin:0 22px}.result-actions{gap:15px;flex-wrap:wrap}.error-message{margin-inline:22px}}
.server-status.waking{animation:server-breathe 2.4s ease-in-out infinite}
@keyframes server-breathe{0%,100%{opacity:1}50%{opacity:.45}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media(max-width:760px){h1{font-size:36px;letter-spacing:-1.5px}.workspace-footer>span:last-child{display:inline}.file-column{padding-right:0}.intro{padding:32px 0 25px}.intro-copy{font-size:14px}.server-status{font-size:12px}.site-footer{font-size:12px}.upload-area,.selected-file{min-height:220px}}
/* Save vertical space before reducing readability; never clip active controls. */
@media(min-width:761px) and (max-height:800px){
  .site-header{height:56px}
  .intro{display:flex;align-items:center;justify-content:space-between;gap:24px;text-align:left;padding:12px 0}
  h1{font-size:36px}
  .intro-copy{margin:0;font-size:14px}
  .workspace-heading{padding:10px 28px}
  .workspace-body{padding-block:18px}
  .upload-area,.selected-file{min-height:190px}
  .section-caption{margin-bottom:12px}
  .advanced{margin-top:12px;padding-top:10px}
  .trace-option{margin-top:10px}
  .trace-option small{display:inline;margin-left:8px}
  .options-column>.convert-button{margin-top:14px}
  .segmented span{padding-block:10px}
  .workspace-footer{padding-block:10px}
  .status-area{padding:12px 0}
  .result-actions{margin-top:12px}
}
@media(max-width:760px){
  .site-header{height:56px}
  .intro{padding:16px 0}
  h1{font-size:30px}
  .intro-copy{margin-top:6px;line-height:1.5}
  .workspace-heading{padding:10px 16px;align-items:center}
  .workspace-body{padding:16px;gap:14px}
  .section-caption{margin-bottom:10px}
  .upload-area,.selected-file{min-height:120px}
  .upload-area .document-icon{display:none}
  .browse-button{margin-top:10px}
  .file-note{margin-top:8px}
  .options-column{padding-top:14px}
  .advanced{margin-top:12px;padding-top:10px}
  .options-column>.convert-button{margin-top:14px}
  .workspace-footer{padding:10px 16px}
  .site-footer{margin-top:12px;padding:10px 0;gap:6px 12px}
}
