@layer tokens{:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--paper:var(--lightningcss-light,oklch(100% 0 0))var(--lightningcss-dark,oklch(17.76% 0 0));--surface:var(--lightningcss-light,oklch(100% 0 0))var(--lightningcss-dark,oklch(25.2% 0 0));--soft:var(--lightningcss-light,oklch(98.51% 0 0))var(--lightningcss-dark,oklch(21.7787% 0 0));--ink:var(--lightningcss-light,oklch(21.7787% 0 0))var(--lightningcss-dark,oklch(92.1906% 0 0));--muted:var(--lightningcss-light,oklch(46.4002% 0 0))var(--lightningcss-dark,oklch(71.5474% 0 0));--border:var(--lightningcss-light,oklch(92.1906% 0 0))var(--lightningcss-dark,oklch(32.1093% 0 0));--edge:var(--lightningcss-light,oklch(63.3429% 0 0))var(--lightningcss-dark,oklch(65.0041% 0 0));--accent:var(--lightningcss-light,oklch(42.0914% .193453 328.363))var(--lightningcss-dark,oklch(83.6851% .064657 70.6014));--secondary:var(--lightningcss-light,oklch(51.0779% .067592 242.366))var(--lightningcss-dark,oklch(77.5091% .04764 237.424));--tint:var(--lightningcss-light,oklch(94.4501% .030653 325.817))var(--lightningcss-dark,oklch(26.9988% .016373 67.0387));--on-accent:var(--lightningcss-light,oklch(100% 0 0))var(--lightningcss-dark,oklch(17.76% 0 0));--hover:var(--lightningcss-light,oklch(34.3158% .157716 328.363))var(--lightningcss-dark,oklch(88.9958% .049265 71.1138));--danger:var(--lightningcss-light,oklch(50.0336% .182051 29.5127))var(--lightningcss-dark,oklch(71.1607% .181221 22.8389));--shadow:var(--lightningcss-light,oklch(0% 0 0/.05))var(--lightningcss-dark,oklch(0% 0 0/.3));--gap:clamp(.75rem, .6rem + .4vi, 1rem);--gutter:clamp(1rem, .6rem + 1.6vi, 1.75rem);--radius:4px;--small:clamp(.6875rem, .66rem + .06vi, .75rem);--body:clamp(.8125rem, .78rem + .08vi, .875rem);--heading:clamp(1rem, .93rem + .14vi, 1.125rem);font-synthesis:none;color:var(--ink);background:var(--paper);accent-color:var(--accent);font-family:ui-sans-serif,system-ui,-apple-system,sans-serif;font-size:100%;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}@layer base{*{box-sizing:border-box}html{scrollbar-gutter:stable}body{overflow-wrap:anywhere;margin:0}button,input,select,summary{font:inherit}button,.file-picker{appearance:none;border:1px solid var(--edge);border-radius:var(--radius);min-block-size:46px;min-inline-size:104px;color:var(--ink);background:var(--surface);font-size:var(--body);cursor:pointer;justify-content:center;align-items:center;gap:.5em;padding:clamp(.5rem,.44rem + .2vi,.75rem) clamp(.75rem,.6rem + .4vi,1.125rem);font-weight:600;display:inline-flex}:is(button,.file-picker):hover:not(:disabled):not(:has(input:disabled)){background:var(--tint);border-color:var(--accent)}@media (hover:hover){:is(button,.file-picker):hover:not(:disabled):not(:has(input:disabled)):not(.page-image){box-shadow:0 0 12px color-mix(in oklch, var(--accent) 30%, transparent)}}:is(button,.file-picker):active:not(:disabled):not(:has(input:disabled)){filter:brightness(1.5);transition-duration:0s}:is(button,.file-picker):active:not(:disabled):not(:has(input:disabled)):not(.page-image){box-shadow:0 0 14px color-mix(in oklch, var(--accent) 45%, transparent)}:is(button,.file-picker):disabled{color:var(--muted);background:var(--soft);border-color:var(--border);cursor:default}:is(button,.file-picker).primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}:is(button,.file-picker).primary:hover:not(:disabled):not(:has(input:disabled)){background:var(--hover);border-color:var(--hover)}:is(button,.file-picker).primary:disabled{background:var(--soft);color:var(--muted);border-color:var(--border)}input,select{max-inline-size:100%;color:var(--ink);background:var(--surface)}input::placeholder{color:var(--muted);opacity:1}input[type=number]{appearance:textfield}input::-webkit-inner-spin-button{appearance:none;margin:0}input::-webkit-outer-spin-button{appearance:none;margin:0}input[type=checkbox]{flex:none;block-size:1rem;inline-size:1rem;margin:0}select{border:1px solid var(--edge);border-radius:var(--radius);min-block-size:44px;padding-inline:var(--gap);font-size:var(--body)}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}h2,h3{font-size:var(--heading);font-weight:650}svg{flex:none;block-size:1.125rem;inline-size:1.125rem}ol,ul{margin:0;padding:0;list-style:none}summary{cursor:pointer;align-items:center;gap:.5em;min-block-size:44px;display:flex}summary:hover{color:var(--accent)}dialog{border:1px solid var(--border);padding:var(--gutter);max-inline-size:calc(100% - 2 * var(--gap));max-block-size:calc(100dvb - 2 * var(--gap));color:var(--ink);background:var(--surface);border-radius:8px}dialog::backdrop{background:oklch(0% 0 0/.45)}@media (prefers-reduced-motion:no-preference){button,.file-picker,summary{transition:background-color .12s,color .12s,border-color .12s,filter .12s,box-shadow .12s}dialog[open],.source-menu[open] .source-menu-actions,.source-layout{animation:.15s ease-out enter}}@keyframes enter{0%{opacity:0;translate:0 .25rem}to{opacity:1;translate:0}}}@layer components{@scope(#app){.masthead,main{inline-size:min(100%,1380px);padding-inline:var(--gutter);margin-inline:auto}main{padding-block-start:var(--gutter);padding-block-end:var(--gutter)}.header-inner{align-items:center;gap:var(--gap);border-block-end:1px solid var(--border);min-block-size:72px;display:flex}.brand{min-block-size:44px;color:var(--ink);align-items:center;gap:.65em;text-decoration:none;display:inline-flex}.brand .pdf-logo{block-size:44px;inline-size:44px;color:var(--accent);flex:none;padding:6px}.pdf-logo{background:currentColor;block-size:100%;inline-size:100%;display:block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.header-note{color:var(--muted);font-size:var(--small);align-items:center;gap:.5em;margin-inline-start:auto;display:inline-flex}.theme{min-block-size:44px;min-inline-size:44px;color:var(--accent);background:0 0;border:0;padding:10px}.theme .light-icon{display:none}.icon-button{background:0 0;border:0;min-block-size:44px;min-inline-size:44px;padding:8px}.help-button{color:var(--secondary)}.help-button svg{block-size:1.5rem;inline-size:1.5rem}[data-tour-active=true]{scroll-margin-block:var(--gutter)}@media (width<36em){.composition-card [data-tour-active=true]{scroll-margin-block-end:45dvb}}.welcome-dialog,.help-tour{inline-size:min(26rem, calc(100% - 2 * var(--gap)));font-size:var(--body)}.welcome-steps{gap:var(--gap);margin-block:var(--gutter);display:grid}.welcome-steps li{align-items:center;gap:var(--gap);display:flex}.welcome-steps li>svg{block-size:2rem;inline-size:2rem;color:var(--secondary)}.welcome-steps li span>span{color:var(--muted);display:block}.help-tour{max-block-size:calc(100dvb - 2 * var(--gap));color:var(--ink);padding:var(--gutter);background:var(--surface);border:1px solid var(--edge);box-shadow:0 8px 32px var(--shadow);inset-block:auto var(--gap);inset-inline:auto var(--gap);border-radius:8px;margin:0;position:fixed;overflow:auto}.help-tour .dialog-heading{z-index:1;background:var(--surface);box-shadow:0 calc(-1 * var(--gutter)) 0 var(--surface);gap:.5em;position:sticky;inset-block-start:0}.help-tour .tour-progress{color:var(--muted);font-size:var(--small);white-space:nowrap;align-self:center}.help-tour .dialog-heading .text-button{min-block-size:44px;min-inline-size:auto;color:var(--muted);font-size:var(--small);white-space:nowrap;padding-inline:.5em}.help-tour .tour-copy{gap:var(--gap);display:grid}@media (width<36em){.help-tour{max-block-size:45dvb}.help-tour .tour-label{display:none}}@media (prefers-reduced-motion:no-preference){.help-tour:popover-open{animation:.15s ease-out enter}}:is(.help-tour,.page-flight)::backdrop{pointer-events:none;inline-size:var(--focus-width);block-size:var(--focus-height);filter:blur(8px);background:var(--lightningcss-light,oklch(100% 0 0/.02))var(--lightningcss-dark,oklch(100% 0 0/.04));border-radius:min(50%,48px);inset:auto;inset-block-start:var(--focus-y);inset-inline-start:var(--focus-x);translate:-50% -50%;box-shadow:0 0 0 100vmax var(--lightningcss-light,oklch(0% 0 0/.74))var(--lightningcss-dark,oklch(0% 0 0/.7))}.page-flight{background:var(--surface);box-shadow:0 4px 16px var(--shadow), 0 0 12px color-mix(in oklch, var(--accent) 30%, transparent);pointer-events:none;border:0;border-radius:2px;margin:0;padding:0;position:fixed;inset:auto}.page-flight::backdrop{opacity:0}@media (prefers-reduced-motion:no-preference){.page-flight::backdrop{animation:2.4s ease-in-out both page-focus}}@keyframes page-focus{0%{opacity:0;translate:-50% -50%}6%,37.5%{opacity:1;translate:-50% -50%}to{opacity:0;translate:calc(-50% + var(--travel-x)) calc(-50% + var(--travel-y))}}.help-actions{justify-content:space-between;gap:var(--gap);flex-wrap:wrap;margin-block-start:var(--gutter);display:flex}.tool{min-block-size:48px;inline-size:64px;min-inline-size:64px;padding:8px}.danger:not(:disabled){color:var(--danger)}.text-button{min-inline-size:0;color:var(--accent);font-size:var(--small);background:0 0;border:0;padding-inline:.5em}.text-button:disabled{background:0 0}.download-action,.file-action{display:grid}:is(.download-action,.file-action)>*{grid-area:1/1}:is(.download-action,.file-action)>[aria-hidden=true]{visibility:hidden}.output-status{font-size:var(--small);color:var(--accent);justify-content:center;align-items:center;gap:.5em;display:inline-flex}.output-status .spinner{border:2px solid;border-inline-end-color:oklch(0% 0 0/0);border-radius:50%;flex:none;block-size:1em;inline-size:1em}@media (prefers-reduced-motion:no-preference){.output-status[aria-hidden=false] .spinner{animation:.8s linear infinite spin}}.count{border:1px solid var(--border);border-radius:var(--radius);min-inline-size:1.75em;font-size:var(--small);color:var(--muted);justify-content:center;align-items:center;padding-inline:.4em;display:inline-flex}.file-picker{position:relative}.file-picker input{opacity:0;cursor:pointer;block-size:100%;inline-size:100%;position:absolute;inset:0}.file-picker:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:3px}.file-picker:has(input:disabled){opacity:.55;cursor:default}.source-menu{position:relative}.source-menu summary{letter-spacing:.1em;justify-content:center;inline-size:44px;font-weight:700;list-style:none}.source-menu-actions{z-index:5;inline-size:max-content;max-inline-size:min(20rem,80vi);padding:var(--gap);gap:var(--gap);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:0 8px 24px var(--shadow);display:grid;position:absolute;inset-block-start:calc(100% + 4px);inset-inline-end:0}.editing-toolbar{align-items:center;gap:var(--gap);border-block-end:1px solid var(--border);margin-block-end:var(--gutter);display:flex}.tabs{gap:var(--gap);margin-inline-end:auto;display:flex}.tabs svg{block-size:1.5em;inline-size:1.5em}.tabs button{min-inline-size:90px;color:var(--muted);background:0 0;border:0;border-block-end:3px solid #0000;border-radius:0}.tabs button[aria-selected=true]{color:var(--accent);border-block-end-color:var(--accent)}.edit-dot{background:var(--accent);border-radius:50%;block-size:6px;inline-size:6px}.section-heading{justify-content:space-between;align-items:start;gap:var(--gap);margin-block-end:var(--gap);display:flex}.section-heading p{color:var(--muted);font-size:var(--small);margin-block-start:.25em}.section-heading>svg{color:var(--accent)}.section-heading h2{align-items:center;gap:.5em;display:flex}.workspace-icon{block-size:2.25rem;inline-size:2.25rem;color:var(--secondary)}.entry{border:1px solid var(--edge);border-radius:var(--radius);background:var(--surface);align-items:center;min-inline-size:0;display:flex}.entry>input:not([type=range]),.entry>select{min-block-size:44px;inline-size:0;min-inline-size:0;color:var(--ink);font-size:var(--body);background:0 0;border:0;flex:1;padding:10px 12px}.entry .step,.entry .reset{border:0;border-inline-start:1px solid var(--border);border-radius:0;flex:0 0 44px;min-block-size:44px;inline-size:44px;min-inline-size:44px;padding:8px;font-size:1.125rem}.entry .step:not(.primary),.entry .reset{background:0 0}.entry .reset{border-radius:0 var(--radius) var(--radius) 0}.entry .exact{text-align:end;flex:0 0 5.5rem;inline-size:5.5rem}.entry:has(>input:focus-visible,>select:focus-visible){outline:3px solid var(--accent)}.entry input:focus-visible,.entry select:focus-visible{outline:none}.entry button:focus-visible{outline-offset:-3px}.entry.invalid{border-color:var(--danger)}.visibility{border-radius:calc(var(--radius) - 1px) 0 0 calc(var(--radius) - 1px);flex:1;align-self:stretch;min-inline-size:0;display:flex;overflow:clip}.visibility label{min-block-size:44px;min-inline-size:0;font-size:var(--body);cursor:pointer;flex-wrap:wrap;flex:1;justify-content:center;align-items:center;gap:.5em;padding:10px 12px;display:flex;position:relative}.visibility label:not(:first-child){border-inline-start:1px solid var(--border)}.visibility label:hover:not(:has(input:disabled)){background:var(--tint)}@media (hover:hover){.visibility label:hover:not(:has(input:disabled)){box-shadow:0 0 12px color-mix(in oklch, var(--accent) 30%, transparent)}}.visibility label:active:not(:has(input:disabled)){filter:brightness(1.5);box-shadow:0 0 14px color-mix(in oklch, var(--accent) 45%, transparent);transition-duration:0s}@media (prefers-reduced-motion:no-preference){.visibility label{transition:filter .12s,box-shadow .12s}}.visibility label:has(input:checked){color:var(--lightningcss-light,var(--on-accent))var(--lightningcss-dark,var(--accent));background:var(--lightningcss-light,var(--accent))var(--lightningcss-dark,color-mix(in oklch, var(--tint) 80%, var(--accent)));font-weight:600}.visibility label:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:-3px}.visibility input{opacity:0;cursor:pointer;block-size:100%;inline-size:100%;margin:0;position:absolute;inset:0}.visibility input:focus-visible{outline:none}.visibility svg{flex:none;block-size:1.5em;inline-size:1.5em}.thumbnail{justify-content:center;align-items:center;min-block-size:154px;inline-size:100%;display:flex;position:relative}.thumbnail canvas{max-inline-size:100%;box-shadow:0 2px 8px var(--shadow);background:oklch(100% 0 0);display:block}.page-label{font-size:var(--small);justify-content:space-between;align-items:center;gap:.5em;padding-block:.6em .2em;display:flex}.page-context{font-size:var(--small);color:var(--muted)}.page-batches{justify-content:center;align-items:center;gap:var(--gap);margin-block:var(--gap);color:var(--muted);font-size:var(--small);display:flex}.control{padding-block:var(--gap)}fieldset{border:0;min-inline-size:0;margin:0;padding:0}fieldset:not(:first-child){margin-block-start:var(--gap)}legend{color:var(--accent);font-size:var(--body);margin-block-start:var(--gap);padding:0;font-weight:600}.control-label>:is(label,span){font-size:var(--body);font-weight:600}.parameter-id{color:var(--muted);font-family:ui-monospace,monospace;font-size:var(--small);margin-block-start:.2em;display:block}.control-description,.state{color:var(--muted);font-size:var(--small);margin-block:.5em}.state strong{font-weight:400}.state.override{color:var(--accent)}.picker{flex:0 0 44px;place-items:center;min-block-size:44px;display:grid;position:relative}.picker input{opacity:0;cursor:pointer;block-size:100%;inline-size:100%;position:absolute;inset:0}.swatch{border:1px solid var(--edge);border-radius:50%;block-size:20px;inline-size:20px}.swatch.unassigned{background:repeating-linear-gradient(45deg, var(--soft) 0 4px, var(--edge) 4px 5px)}.slider{flex:1;min-block-size:44px;inline-size:0;min-inline-size:0;margin-inline-start:.5em}.details{color:var(--muted);font-size:var(--small);margin-block-start:.4em}.details summary{min-block-size:36px;inline-size:fit-content}.details>div{padding:var(--gap);background:var(--soft);border-radius:var(--radius)}.details p:not(:first-child){margin-block-start:.5em}.more-options{margin-block-start:var(--gap)}.more-options>summary{color:var(--ink);font-size:var(--body);border:1px solid var(--edge);border-radius:var(--radius);background:var(--surface);justify-content:space-between;padding:.75em;font-weight:600}.preview{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:clip;container:preview/inline-size}.preview-heading{padding:var(--gap);border-block-end:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.5em;display:flex}.preview-heading>.preview-tools{margin-inline-start:auto}.compare[aria-pressed=true]{color:var(--accent);border-color:var(--accent);background:var(--tint)}.preview-tools{flex-wrap:wrap;justify-content:end;align-items:center;gap:12px;display:flex}.preview-tools output{color:var(--muted);font-size:var(--small);text-align:end;min-inline-size:2.5em}@container preview (width<=32em){.preview-heading>.preview-tools{flex-basis:100%;order:1}}.preview-scroll{background:var(--soft);max-block-size:620px;overflow:auto}.pdf-viewport{place-items:center;min-block-size:320px;padding:24px;display:grid;position:relative}.pdf-viewport canvas{box-shadow:0 3px 16px var(--shadow);background:oklch(100% 0 0);display:block}.render-status{font-size:var(--small);color:var(--muted);position:absolute;inset-block-end:.5em}.preview-caption{padding:var(--gap);border-block:1px solid var(--border);font-size:var(--small);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:.5em;display:flex}@keyframes spin{to{rotate:1turn}}.preview-navigation{align-items:center;gap:var(--gap);padding-inline:var(--gap);text-align:center;font-size:var(--small);grid-template-columns:44px 1fr 44px;display:grid}.blank-sheet{inline-size:calc(min(100%, 530px * var(--ratio)) * var(--zoom));aspect-ratio:var(--ratio);color:oklch(46.4% 0 0);box-shadow:0 3px 16px var(--shadow);background:oklch(100% 0 0);place-content:center;justify-items:center;gap:.5em;display:grid}:scope:has(>.lens) .page-image:not(:active) .thumbnail>canvas:hover{cursor:zoom-in}.lens{pointer-events:none;z-index:50;border:2px solid var(--accent);background:var(--surface);inline-size:min(320px,100vi - 24px);box-shadow:0 8px 32px var(--shadow);border-radius:6px;position:fixed;overflow:clip}.lens canvas{aspect-ratio:1;background:oklch(100% 0 0);inline-size:100%;display:block}.drop-zone{align-items:center;gap:var(--gutter);border:1px dashed var(--edge);min-block-size:420px;border-radius:12px;margin-block-start:var(--gap);padding:clamp(1.5rem,1rem + 4vi,3.5rem);padding-block-end:calc(1.5 * var(--gap));display:grid;position:relative}.drop-zone:focus-within{background:var(--tint);border-color:var(--accent)}.drop-zone:has(.drop-prompt){border-color:var(--accent);background:var(--tint)}.drop-zone:has(.drop-prompt)>:is(.welcome,.hero-mark,.drop-note){opacity:.15}.drop-zone .drop-note{color:var(--muted);font-size:var(--body);text-align:center;grid-column:1/-1;justify-content:center;align-self:end;align-items:center;gap:.5em;display:flex}.drop-zone .drop-note svg{block-size:2.25em;inline-size:2.25em}.drop-prompt{inset:var(--gap);place-content:center;justify-items:center;gap:var(--gap);padding:var(--gap);border:2px dashed var(--accent);color:var(--accent);background:color-mix(in oklch, var(--paper) 94%, var(--accent));text-align:center;pointer-events:none;border-radius:8px;display:grid;position:absolute}.drop-prompt svg{block-size:3rem;inline-size:3rem}.drop-prompt strong{font-size:clamp(1.25rem,1.1rem + .5vi,1.75rem)}.drop-prompt span{font-size:var(--body);color:var(--muted)}@media (prefers-reduced-motion:no-preference){.drop-prompt{transition:opacity .12s}@starting-style{.drop-prompt{opacity:0}}}.welcome{max-inline-size:35rem}.welcome .brand-title{color:var(--lightningcss-light,var(--ink))var(--lightningcss-dark,oklch(100% 0 0));letter-spacing:-.02em;margin-block-end:clamp(.5rem,.4rem + .4vi,1rem);font-family:ui-serif,Georgia,serif;font-size:clamp(2rem,1.6rem + 1.4vi,2.75rem);font-weight:500;line-height:1.2}.welcome .brand-title span{color:var(--accent)}.welcome h1{color:color-mix(in oklch, var(--ink), var(--muted));letter-spacing:-.03em;font-family:ui-serif,Georgia,serif;font-size:clamp(2rem,1.5rem + 2vi,3rem);font-weight:500}.welcome p:not(.brand-title){color:var(--muted);font-size:var(--body);margin-block-start:var(--gap)}.welcome .buttons{flex-wrap:wrap;justify-content:start;align-items:center;margin-block-start:var(--gutter)}.welcome .buttons>[role=status]{min-inline-size:min(100%,10em);color:var(--muted);font-size:var(--body);flex:10em}.hero-mark{aspect-ratio:1;inline-size:100%;color:var(--accent)}.footnote{color:var(--muted);font-size:var(--small);flex-wrap:wrap;align-items:center;gap:.5em;margin-block-start:var(--gutter);padding-block-start:var(--gap);display:flex}.footnote>p{text-align:center;flex:1}.footnote.first-action{inset-block-end:0;inset-inline:var(--gutter);max-inline-size:calc(1380px - 2 * var(--gutter));z-index:2;padding-block:var(--gap);background:var(--paper);margin-block:0;margin-inline:auto;position:fixed}.footnote.first-action>p>span{border-radius:var(--radius);max-inline-size:100%;padding:.25em .65em;animation:10.1s ease-in-out status-hint;display:inline-block}@keyframes status-hint{0%,80%{background-color:var(--accent);color:var(--on-accent);font-weight:700}to{color:var(--muted);background-color:#0000;font-weight:400}}main:has(>.footnote.first-action){padding-block-end:calc(4lh + 2 * var(--gap))}.composer~.footnote{border-block-start:1px solid var(--border)}.drop-zone+.footnote{margin-block-start:var(--gap)}.offline{font-size:var(--small)}.error{color:var(--danger);font-size:var(--body);border-radius:var(--radius);border:1px solid;margin-block:.75em;padding:.75em}.error-banner,.loading-notice{justify-content:space-between;align-items:center;gap:var(--gap);padding:var(--gap);border:1px solid var(--danger);color:var(--danger);border-radius:var(--radius);font-size:var(--body);margin-block-end:var(--gap);display:flex}.loading-notice{color:var(--accent);border-color:var(--accent);margin-block-start:var(--gap)}.dialog-heading{justify-content:space-between;align-items:start;gap:var(--gap);margin-block-end:var(--gap);display:flex}.dialog-heading p{font-size:var(--small);color:var(--muted);margin-block-start:.5em}.download-dialog{inline-size:min(100%,500px)}.settings-button{color:var(--accent)}.settings-drawer{border-block:0;border-inline-end:0;border-radius:0;block-size:100dvb;max-block-size:100dvb;inline-size:min(24rem,100vi);max-inline-size:100%;margin:0;inset-block:0;inset-inline:auto 0}@media (prefers-reduced-motion:no-preference){.settings-drawer{opacity:0;transition:opacity .16s, translate .16s, display .16s allow-discrete, overlay .16s allow-discrete;translate:100%}.settings-drawer[open]{opacity:1;animation:none;translate:0}@starting-style{.settings-drawer[open]{opacity:0;translate:100%}}}.magnification-options{gap:var(--gap);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.magnification-options legend{font-size:var(--body);margin-block-end:var(--gap);font-weight:600}.magnification-options label{min-block-size:44px;padding-inline:var(--gap);border:1px solid var(--edge);border-radius:var(--radius);font-size:var(--body);cursor:pointer;align-items:center;gap:.5em;display:flex}.magnification-options label:has(input:checked){color:var(--accent);background:var(--tint);border-color:var(--accent)}.magnification-options label:hover{background:var(--tint)}.buttons{justify-content:end;gap:var(--gap);display:flex}.empty{place-content:center;justify-items:center;gap:var(--gap);min-block-size:280px;padding:var(--gutter);text-align:center;color:var(--muted);display:grid}.skip{position:absolute;inset-inline-start:-100rem}.skip:focus{z-index:20;background:var(--surface);padding:var(--gap);inset-block-start:var(--gap);inset-inline-start:var(--gap)}@media (prefers-reduced-motion:no-preference){.hero-mark{animation:1.8s both logo-enter}.welcome{animation:.9s .2s both enter}}@keyframes logo-enter{0%{filter:blur(24px);opacity:0;transform:perspective(800px)rotateY(-35deg)rotate(70deg)translate(-20%)}65%{filter:blur();opacity:1;transform:perspective(800px)rotateY(-8deg)rotate(8deg)translate(3%)}to{filter:none;opacity:1;transform:none}}}@scope(html[data-theme=dark] #app){.theme .light-icon{display:block}.theme .dark-icon{display:none}}@media (prefers-color-scheme:dark){@scope(html:not([data-theme=light]) #app){.theme .light-icon{display:block}.theme .dark-icon{display:none}}}}@layer layouts{@scope(#app){.workspace-content,.source-tools{min-inline-size:0}.source-layout{gap:var(--gutter);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}@media (width<=30em){.header-inner{gap:.25rem}.header-note{display:none}.header-inner>button:first-of-type{margin-inline-start:auto}.brand .pdf-logo{block-size:40px;inline-size:40px}.preview-tools{gap:12px}.preview-tools .tool{min-inline-size:64px}}@media (width>40em){.drop-zone{grid-template-columns:minmax(0,1fr) clamp(180px,20vi,270px)}}@media (width<=40em){.drop-zone{text-align:center;grid-template-columns:minmax(0,1fr)}.drop-zone .welcome .buttons{justify-content:center}.hero-mark{order:-1;justify-self:center;inline-size:100px}}}@scope(#app){.composer{container:composer/inline-size}.composition-panels{gap:var(--gutter);display:grid}.selection-panel,.composition-output{min-inline-size:0;container:catalog/inline-size}.composition-output:only-child{border-inline-start:0;grid-column:1/-1;padding-inline-start:0}.composer .section-heading{align-items:center;min-block-size:46px;margin-block-end:0;padding-block-end:0}.composer .section-heading h2{font-size:var(--heading);align-items:center;gap:.5em;display:flex}.composer .section-heading p{font-size:var(--small);color:var(--muted);margin-block-start:.4em}.sequence-entry{margin-block:var(--gap)}.sequence-entry>p{text-align:start;margin-block:.5em 0}.sequence-help{font-size:var(--small);color:var(--muted)}.composition-grid{gap:var(--gap);grid-template-columns:repeat(auto-fill,minmax(min(100%,12rem),1fr));margin:0;padding:0;list-style:none;display:grid}.composition-card{border:2px solid var(--border);border-radius:var(--radius);background:var(--soft);grid-template-rows:44px 184px 44px;min-inline-size:0;padding:.35rem;display:grid;position:relative}@media (hover:hover){.composition-card:has(.page-grip:hover){border-color:var(--accent);box-shadow:0 6px 16px var(--shadow)}@media (prefers-reduced-motion:no-preference){.composition-card{transition:translate .16s,box-shadow .16s}.composition-card:has(.page-grip:hover){translate:0 -2px}}}.composition-card[data-dragging]{opacity:.45}.composition-card[data-drop]{border-color:var(--accent)}.composition-card[data-drop]:before,.composition-card[data-drop]:after{pointer-events:none;z-index:2;position:absolute}.composition-card[data-drop]:before{content:"";background:var(--accent);border-radius:1px;inline-size:2px;inset-block:0;inset-inline-start:calc(var(--gap) / -2 - 1px)}.composition-card[data-drop]:after{content:attr(data-drop-label);border-radius:var(--radius);font-size:var(--small);background:var(--tint);color:var(--accent);padding:.15em .5em;font-weight:500;inset-block-start:-.75em;inset-inline-start:0}.composition-card[data-drop][data-drop=after]:before{inset-inline-start:auto;inset-inline-end:calc(var(--gap) / -2 - 1px)}.composition-card.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.composition-card .page-context{overflow-wrap:anywhere;margin-block:.3em;display:block}.page-image{inline-size:100%;min-inline-size:0;color:var(--ink);text-align:start;cursor:grab;background:0 0;border:0;border-radius:0;padding:0;display:block;position:relative}.page-image:hover:not(:disabled){color:var(--accent);background:0 0}.page-image:active{cursor:grabbing}.page-image .page-label{padding-inline:.2em}.sequence-options{margin-block:var(--gap);padding-block:var(--gap);border-block:1px solid var(--border);font-size:var(--body)}.sequence-options>summary{color:var(--muted)}.sequence-options .menu-options>label:not(.align){margin-block-end:.4em;font-weight:600;display:block}.sequence-options .menu-options>label:not(.align):not(:first-child){margin-block-start:.75em}.sequence-options .menu-options>.entry{max-inline-size:20rem}.sequence-options .menu-options>p{color:var(--muted);font-size:var(--small);margin-block:.6em}.sequence-options .align{align-items:center;gap:.5em;margin-block:.75em;display:flex}.sequence-options input[type=checkbox]{block-size:1.2em;inline-size:1.2em;margin-block:.6em;margin-inline:0}.composition-totals{font-size:var(--small);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:.75em;display:flex}.composition-totals strong{color:var(--accent)}.occurrence-actions{border-block-start:1px solid var(--border);grid-template-columns:repeat(4,minmax(0,1fr));margin-block-start:.4em;display:grid}.occurrence-actions button{background:0 0;border:0;inline-size:100%;min-inline-size:44px;padding:0}.occurrence-actions button:hover:not(:disabled){background:var(--surface)}.composition-blank{inline-size:min(100%, 160px * var(--ratio));aspect-ratio:var(--ratio);border:1px solid var(--border);color:var(--muted);font-size:var(--small);background:var(--surface);flex-direction:column;justify-content:center;align-items:center;gap:.5em;display:flex}.selected-actions{grid-template-columns:minmax(0,1fr);gap:.5em;display:grid}.selected-actions button{overflow-wrap:anywhere;justify-content:start;padding-inline:.5em}.composition-empty{align-content:center;place-items:center;gap:var(--gap);min-block-size:10rem;padding:var(--gutter);color:var(--muted);text-align:center;display:grid}.composition-empty p{font-size:var(--body)}@container composer (width>55em){.composition-panels{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.source-tag{border:1px solid var(--border);border-radius:var(--radius);color:var(--muted);background:var(--surface);white-space:nowrap;font-size:var(--small);align-items:center;padding:.3em .5em;display:inline-flex}.mobile-workspace-tabs{display:none}.composer:not([data-drag]) .page-image:not(:active) .input-selection{cursor:pointer}.composer[data-drag] .composition-card{box-shadow:none;translate:0}.composer[data-drag] .composition-output{outline:1px dashed var(--accent);outline-offset:6px;border-radius:var(--radius)}.composer[data-drag] .composition-output[data-drop=end]{background:color-mix(in oklch, var(--accent) 5%, var(--paper));outline-style:solid}.composer[data-drag] .composition-output .sequence-help{color:var(--accent)}.composer[data-drag] [draggable=true]{cursor:grabbing}.composer .transfer:not(:disabled){cursor:grab}.composer .transfer:not(:disabled):active{cursor:grabbing}.composer .composition-card .thumbnail{block-size:100%;min-block-size:0;padding-block:0 calc((44px - 1.5 * var(--small)) / 2);padding-inline:8px}.composer .composition-card .page-label{grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);align-items:center;min-block-size:44px;padding-block:0;display:grid}.composer .composition-card .page-label .page-number .page-context{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.composer .composition-card .occurrence-actions{margin-block-start:0}.composer .source-catalog .page-image{grid-row:1/span 3;grid-template-columns:minmax(0,1fr);grid-template-rows:subgrid;align-items:stretch;gap:0;display:grid}.composer .input-footer{padding-inline:calc(var(--gap) / 2);border-block-start:1px solid var(--border);font-size:var(--small);color:var(--muted);justify-content:space-between;align-items:center;display:flex}.composer .input-selection{color:var(--muted);align-items:center;display:flex}.composer .input-selection svg{stroke-width:1.8px;block-size:28px;inline-size:28px}.composer .selected .input-selection{color:var(--accent)}.composer .output-count{border:1px solid var(--border);border-radius:var(--radius);background:var(--soft);min-inline-size:3ch;color:var(--muted);text-align:center;font-variant-numeric:tabular-nums;padding-inline:.5em}.composer .composition-card.selected:not(.added) .output-count{border-color:var(--accent);background:var(--tint);color:var(--accent)}.composer .composition-card.added .output-count{border-color:var(--accent);background:var(--accent);color:var(--on-accent);font-weight:700}.composer .composition-card[data-face=front]{background:color-mix(in oklch, var(--accent) 8%, var(--soft))}.composer .composition-card[data-face=front] .page-face{color:var(--accent)}.composer .page-grip{border-radius:var(--radius);min-block-size:44px;min-inline-size:44px;color:var(--secondary);cursor:grab;background:0 0;border:0;place-items:center;padding:0;display:grid}.composer .page-grip:is(:hover,:focus-visible){color:var(--accent);background:var(--tint)}.composer .page-face{min-block-size:44px;font-size:var(--small);color:var(--muted);justify-self:end;place-items:center;padding:.25em;display:grid}.composer .input-heading{grid-template-columns:minmax(0,1fr) auto auto;gap:.5em;display:grid}.composer .input-heading .file-picker{white-space:nowrap;justify-content:center;align-items:center;gap:.5em;display:inline-flex}.composer .source-tabs,.composer .output-tabs{border-block-end:1px solid var(--border);margin-block:var(--gap);flex-wrap:wrap;inline-size:100%}.composer .source-tabs{gap:.25em}.composer .source-tabs .tabs{flex-wrap:wrap;gap:0}.composer .source-tabs .style-status{gap:.25em;margin:0;margin-inline-start:auto}.composer .control-list{gap:var(--gap);grid-template-columns:minmax(0,1fr);display:grid}.composer .control-list .more-options{grid-column:1/-1}.composer .control{position:relative}.composer .control .control-label:has(.compact){grid-template-columns:minmax(0,1fr) 44px;align-items:center;display:grid}.composer .control .control-label:has(.compact) .parameter-id{overflow-wrap:anywhere;grid-area:2/1}.composer .control .details.compact{grid-area:1/2/span 2}.composer .control .details.compact summary{border-radius:var(--radius);justify-content:center;min-block-size:44px;inline-size:44px;padding:0}.composer .control .details.compact>div{z-index:20;padding:var(--gap);border:1px solid var(--edge);border-radius:var(--radius);background:var(--surface);box-shadow:0 4px 16px var(--shadow);font-size:var(--small);overflow-wrap:anywhere;position:absolute;inset-block-start:calc(44px + var(--gap));inset-inline:0}.composer .entry .selection-count{min-inline-size:0;font-size:var(--body);color:var(--muted);border:0;flex:1;padding-block:0;padding-inline:.75em}.composer .output-state{text-align:end;justify-content:end;gap:.25em .75em}.composer .sequence-entry .sequence-options{border:0;margin:0;padding:0;position:relative}.composer .sequence-entry .sequence-options>summary{border-inline-start:1px solid var(--border);justify-content:center;min-block-size:44px;min-inline-size:44px;padding:0}.composer .sequence-entry .sequence-options .menu-options{z-index:25;max-block-size:min(70dvb,40rem);inline-size:min(22rem,100cqi - 44px);padding:var(--gap);border:1px solid var(--edge);border-radius:var(--radius);background:var(--surface);box-shadow:0 4px 16px var(--shadow);font-size:var(--body);color:var(--ink);position:absolute;inset-block-start:calc(100% + .5em);inset-inline-end:0;overflow:auto}.composer .input-heading{container:heading/inline-size}.composer .composition-output>.section-heading{gap:var(--gap);grid-template-columns:minmax(0,1fr) auto auto;display:grid;container:heading/inline-size}.composer .transfer{border-radius:0 var(--radius) var(--radius) 0}.page-origin>summary{min-block-size:44px;min-inline-size:44px;-webkit-text-decoration:underline dotted var(--muted);text-decoration:underline dotted var(--muted);text-underline-offset:.2em;padding-inline:.25em}.page-origin .page-origin-info{z-index:6;padding:var(--gap);border:1px solid var(--edge);border-radius:var(--radius);background:var(--surface);color:var(--ink);box-shadow:0 4px 16px var(--shadow);font-size:var(--small);overflow-wrap:anywhere;gap:.4em;display:grid;position:absolute;inset-block-start:44px;inset-inline:.35rem}@container composer (width>55em){.composer .composition-panels{grid-template-rows:repeat(4,auto);gap:0}.composer .composition-panels .selection-panel,.composer .composition-panels .composition-output{grid-row:1/span 4;grid-template-rows:subgrid;row-gap:0;display:grid;container-type:normal}.composer .composition-panels .input-panel,.composer .composition-panels .output-panel{grid-row:3/span 2;grid-template-rows:subgrid;row-gap:0;display:grid}.composer .composition-panels .section-heading{grid-row:1;align-self:start}.composer .composition-panels .source-tabs,.composer .composition-panels .output-tabs{grid-row:2}.composer .composition-panels .page-content{align-self:start;min-inline-size:0;container:catalog/inline-size}.composer .composition-panels:has(.style-status){grid-template-rows:repeat(3,auto)}.composer .composition-panels:has(.style-status) .selection-panel,.composer .composition-panels:has(.style-status) .composition-output{grid-row:1/span 3}.composer .composition-panels:has(.style-status) .input-panel,.composer .composition-panels:has(.style-status) .output-panel{grid-row:3;display:block}.composer .selection-panel{padding-inline-end:var(--gutter)}.composer .composition-output{border-inline-start:0;padding-inline-start:var(--gutter);position:relative}.composer .composition-output:before{content:"";background:var(--border);inline-size:1px;position:absolute;inset-block:0;inset-inline-start:0}.composer .composition-output:only-child{padding-inline-start:0}.composer .composition-output:only-child:before{display:none}}@container catalog (width>35em){.composer .control{gap:.4em var(--gap);grid-template-columns:minmax(9rem,.7fr) minmax(0,1.3fr);align-items:center;display:grid}.composer .control .control-label{grid-area:1/1}.composer .control>.entry{grid-area:1/2}.composer .control .state{grid-column:2}.composer .control .details,.composer .control .control-description{grid-column:1/-1}}.input-picker{min-inline-size:0;position:relative}.input-picker>summary{border-radius:var(--radius)}.input-picker>summary h2{white-space:nowrap;min-inline-size:0;color:var(--ink);flex-wrap:wrap;flex:1;align-items:center;gap:.5em;display:flex}.input-picker>summary .count{font-size:var(--small)}.input-picker .input-current{text-overflow:ellipsis;min-inline-size:0;font-size:var(--body);color:var(--accent);font-weight:600;overflow:hidden}.input-picker .input-chevron{font-size:var(--small);color:var(--muted);place-items:center;display:grid;rotate:90deg}.input-picker .input-list{inline-size:min(32rem, calc(100vi - 2 * var(--gutter)));max-inline-size:min(32rem, calc(100vi - 2 * var(--gutter)));max-block-size:70dvb;inset-inline:0 auto;overflow:auto}.input-picker .input-list button{text-align:start;align-items:center;gap:.5em;min-inline-size:0;display:flex}.input-picker .input-list button>span:nth-child(2){overflow-wrap:anywhere;flex:1;min-inline-size:0}.input-picker .input-list button[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}.input-picker .input-actions{display:none}.output-style-context{font-size:var(--small);color:var(--muted);margin-block:var(--gap);padding-inline:var(--gap);text-align:center;text-wrap:pretty}@container composer (width<=55em){.composer .mobile-workspace-tabs{gap:.5em;margin-block-end:var(--gap);display:flex}.composer .mobile-workspace-tabs button{flex:1}.composer .mobile-workspace-tabs button[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.composer[data-view=input] .composition-output,.composer[data-view=output] .selection-panel{display:none}.composer .input-heading{grid-template-columns:minmax(0,1fr) auto}.composer .input-heading .source-menu,.composer .input-heading .input-label,.composer .input-heading .input-picker .count,.composer .input-heading .input-picker h2>.workspace-icon{display:none}.composer .input-heading .input-picker h2{flex-wrap:nowrap}.composer .input-heading .input-current{flex:1;max-inline-size:18ch}.composer .input-heading .input-chevron{flex:none}.composer .input-heading .input-actions{gap:var(--gap);border-block-start:1px solid var(--border);padding-block-start:var(--gap);display:grid}.composer .composition-output>.section-heading{grid-template-columns:minmax(0,1fr) auto}.composer .composition-output>.section-heading>div:first-child{display:none}.composer .composition-output>.section-heading .output-state{text-align:start;justify-content:start;min-inline-size:0}}@container composer (width>55em){@container heading (width<=32em){.composer .input-heading .file-picker{grid-column:1/-1;justify-self:end}.composer .composition-output>.section-heading .output-state{grid-area:2/1/auto/-1}.composer .composition-output>.section-heading .download-action{grid-area:1/3}}}@container composer (width<=12em){.composer .mobile-workspace-tabs button{flex-direction:column;padding-inline:.5em}.composer .mobile-workspace-tabs button .workspace-icon{block-size:1.5em;inline-size:1.5em}.composer .input-heading .file-picker,.composer .download-action>button{padding-inline:.5em}:is(.composer .input-heading .file-picker,.composer .download-action>button)>svg{display:none}.composer .input-chevron svg{block-size:1em;inline-size:1em}.composer .output-status{max-inline-size:7em}}.style-status{align-items:center;gap:var(--gap);margin-block:var(--gap);font-size:var(--small);flex-wrap:wrap;display:flex}@media (prefers-reduced-motion:no-preference){.composition-card{transition:border-color .15s,box-shadow .15s}}}}
