:root{--ui-color-accent:#ededed;--ui-color-accent-hover:#fff;--ui-color-add-page-border:#ccd5e4;--ui-color-add-page-hover-border:#91abe8;--ui-color-add-page-hover-surface:#f0f4ff;--ui-color-add-page-text:#647897;--ui-color-background:#000;--ui-color-button-border:#333;--ui-color-button-hover-border:#555;--ui-color-button-hover-surface:#202020;--ui-color-button-secondary-text:#ededed;--ui-color-count-text:var(--ui-color-muted);--ui-color-danger:#bc3b35;--ui-color-danger-hover:#a52e29;--ui-color-danger-surface:#fff0ef;--ui-color-edit-label-border:#dce2ed;--ui-color-edit-label-text:#334663;--ui-color-error-surface:#241b0b;--ui-color-error-text:#ffc978;--ui-color-export-icon:#677d9e;--ui-color-export-icon-border:#dce3ef;--ui-color-export-surface:#fbfcfe;--ui-color-field-border:#333;--ui-color-field-label:#878787;--ui-color-field-text:#ededed;--ui-color-filename-extension:var(--ui-color-muted);--ui-color-filename-text:var(--ui-color-muted);--ui-color-floating-surface:#111;--ui-color-focus:#aaa;--ui-color-icon-hover-surface:#eaf0fb;--ui-color-icon-text:var(--ui-color-muted);--ui-color-line:#1f1f1f;--ui-color-muted:#878787;--ui-color-navigation-text:var(--ui-color-muted);--ui-color-on-accent:#000;--ui-color-page-border:#1f1f1f;--ui-color-page-hover-border:#a6bbeb;--ui-color-page-limit-text:var(--ui-color-muted);--ui-color-page-preview-surface:#edf0f5;--ui-color-page-review-border:#ddac62;--ui-color-page-success:#268064;--ui-color-page-tools-border:#e9edf3;--ui-color-page-warning:#8e5919;--ui-color-panel-border:#1f1f1f;--ui-color-privacy-badge-text:var(--ui-color-muted);--ui-color-privacy-status:#228260;--ui-color-selected-surface:#262626;--ui-color-soft:#111;--ui-color-steps-border:#d9dfe9;--ui-color-steps-text:var(--ui-color-muted);--ui-color-subtle-separator:#a2aab7;--ui-color-subtle-surface:#1f1f1f;--ui-color-success:#22c55e;--ui-color-surface:#000;--ui-color-text:#ededed;--ui-color-upload-border:#cbd4e4;--ui-color-upload-help-text:var(--ui-color-muted);--ui-color-upload-surface:#fafbfe;--ui-control-button-font-size:var(--ui-font-size-control);--ui-control-button-height:44px;--ui-control-button-padding-block:11px;--ui-control-button-padding-inline:18px;--ui-control-button-radius:var(--ui-radius-control);--ui-control-compact-button-font-size:var(--ui-control-button-font-size);--ui-control-compact-button-height:40px;--ui-control-field-font-size:var(--ui-font-size-body);--ui-control-field-height:40px;--ui-control-field-radius:var(--ui-radius-small-control);--ui-control-icon-button-height:36px;--ui-control-icon-button-radius:var(--ui-radius-small-control);--ui-control-icon-button-width:36px;--ui-control-mobile-field-font-size:var(--ui-font-size-section);--ui-control-mobile-field-height:44px;--ui-control-mobile-primary-height:44px;--ui-control-picker-icon-size:16px;--ui-control-picker-language-min-width:160px;--ui-control-picker-max-height:320px;--ui-control-picker-option-height:44px;--ui-control-picker-language-width:126px;--ui-control-picker-language-mobile-width:112px;--ui-control-picker-language-narrow-width:96px;--ui-control-text-button-font-size:var(--ui-control-button-font-size);--ui-control-text-button-height:40px;--ui-font-family:Geist, Arial, sans-serif;--ui-font-size-body:16px;--ui-font-size-caption:12px;--ui-font-size-control:14px;--ui-font-size-page:36px;--ui-font-size-page-mobile:28px;--ui-font-size-section:16px;--ui-font-size-emphasis:18px;--ui-font-weight-regular:400;--ui-font-weight-semibold:600;--ui-line-height-body:1.6;--ui-line-height-caption:1.55;--ui-line-height-control:1.3;--ui-line-height-heading:1.2;--ui-line-height-label:20px;--ui-line-height-reading:28px;--ui-radius-badge:4px;--ui-radius-card:7px;--ui-radius-circle:50%;--ui-radius-control:6px;--ui-radius-panel:10px;--ui-radius-small-control:var(--ui-radius-control);--ui-radius-upload-icon:12px;--ui-shadow-dialog:0 16px 48px #00000073;--ui-shadow-edit-hover:0 1px 3px #26375416;--ui-shadow-page-image-img:0 2px 6px #25334c21;--ui-shadow-picker:var(--ui-shadow-dialog);--ui-shadow-scanner:0 2px 4px #18243c04;--ui-space-lg:16px;--ui-space-md:12px;--ui-space-sm:8px;--ui-space-xl:24px;--ui-space-xs:4px;--ui-space-xxl:32px;--ui-space-xxxl:48px;--ui-font-family-mono:"Geist Mono", monospace;--ui-reference-background:var(--ui-color-background);--ui-reference-foreground:var(--ui-color-text);--ui-reference-muted:var(--ui-color-muted);--ui-reference-surface:var(--ui-color-subtle-surface);--ui-reference-border:var(--ui-color-line);--ui-reference-success:var(--ui-color-success);--ui-reference-success-background:#22c55e1a;--ui-reference-font-family:var(--ui-font-family);--ui-reference-font-family-mono:var(--ui-font-family-mono);--ui-reference-title-size:var(--ui-font-size-page);--ui-reference-body-size:var(--ui-font-size-body);--ui-reference-label-size:var(--ui-font-size-control);--ui-reference-control-size:12px;--ui-reference-content-width:var(--ui-layout-content-width);--ui-layout-content-width:1152px;--ui-layout-header-height:56px;font-family:var(--ui-font-family);color:var(--ui-color-text);background:var(--ui-color-background);font-synthesis:none}*{box-sizing:border-box}body{font-size:var(--ui-font-size-body);margin:0}button,input,select{font:inherit;color:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer;touch-action:manipulation;border:0}button:disabled{cursor:not-allowed;opacity:.45}a{color:inherit;text-decoration:none}a:hover{color:var(--ui-color-accent)}button svg,a svg{flex-shrink:0}:where(button,a,input,select,summary):focus-visible{outline:3px solid var(--ui-color-focus);outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:var(--ui-font-weight-semibold)}p{line-height:var(--ui-line-height-body)}fieldset{border:0;min-width:0;margin:0;padding:0}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.skip-link{padding:var(--ui-space-md);background:var(--ui-color-surface);z-index:400;position:fixed;top:-100px;left:20px}.skip-link:focus{top:10px}.muted{color:var(--ui-color-muted)}.helper-text{font-size:var(--ui-font-size-body);line-height:var(--ui-line-height-body);margin:var(--ui-space-md) 0 0}strong,b{font-weight:var(--ui-font-weight-semibold)}.tiny{font-size:var(--ui-font-size-caption);line-height:var(--ui-line-height-caption)}.site-header{background:var(--ui-color-surface);border-bottom:1px solid var(--ui-color-line)}.header-inner{max-width:1280px;min-height:72px;padding:0 var(--ui-space-xxl);justify-content:space-between;align-items:center;gap:var(--ui-space-xl);margin:auto;display:flex}.brand{font-size:var(--ui-font-size-section);font-weight:var(--ui-font-weight-semibold);letter-spacing:-.35px;white-space:nowrap;align-items:center;gap:10px;display:flex}.brand img{display:block}.site-header nav{font-size:var(--ui-font-size-control);color:var(--ui-color-navigation-text);align-items:center;gap:26px;display:flex}.language-wrap{border-left:1px solid var(--ui-color-line);padding-left:20px}.language-wrap select{width:auto;min-height:44px;font-size:var(--ui-font-size-control);padding:var(--ui-space-sm) 0;background:0 0;border:0}.language-wrap .language-select{text-overflow:ellipsis;width:188px;min-width:0;max-width:188px}.language-error{padding:var(--ui-space-lg);color:var(--ui-color-error-text);background:var(--ui-color-error-surface);font-size:var(--ui-font-size-body)}.main-wrap{max-width:1280px;padding:34px var(--ui-space-xxl) 0;margin:auto}.workspace-heading{justify-content:space-between;align-items:center;gap:var(--ui-space-xl);margin-bottom:25px;display:flex}.workspace-heading h1{font-size:var(--ui-font-size-page);line-height:var(--ui-line-height-heading);letter-spacing:-.8px;margin-bottom:9px}.workspace-heading p{color:var(--ui-color-muted);font-size:var(--ui-font-size-body);margin-bottom:0}.privacy-badge{align-items:center;gap:var(--ui-space-sm);font-size:var(--ui-font-size-body);white-space:nowrap;color:var(--ui-color-privacy-badge-text);display:flex}.status-dot{border-radius:var(--ui-radius-circle);background:var(--ui-color-privacy-status);width:6px;height:6px}.badge-separator{color:var(--ui-color-subtle-separator);margin:0 3px}.scanner{background:var(--ui-color-surface);border:1px solid var(--ui-color-panel-border);border-radius:var(--ui-radius-panel);box-shadow:var(--ui-shadow-scanner);scroll-margin-top:20px}.scanner-top{border-bottom:1px solid var(--ui-color-line);padding:var(--ui-space-lg) var(--ui-space-xl);justify-content:space-between;align-items:center;gap:15px;display:flex}.workflow-steps{align-items:center;gap:var(--ui-space-xxl);font-size:var(--ui-font-size-body);color:var(--ui-color-steps-text);margin:0;padding:0;list-style:none;display:flex}.workflow-steps li{align-items:center;gap:var(--ui-space-sm);display:flex}.workflow-steps li>span{border:1px solid var(--ui-color-steps-border);border-radius:var(--ui-radius-circle);width:22px;height:22px;font-size:var(--ui-font-size-caption);font-weight:var(--ui-font-weight-semibold);place-items:center;display:inline-grid}.workflow-steps li.current{color:var(--ui-color-accent);font-weight:var(--ui-font-weight-semibold)}.workflow-steps li.current>span{border-color:var(--ui-color-accent);background:var(--ui-color-accent);color:var(--ui-color-on-accent)}.page-limit{color:var(--ui-color-page-limit-text);font-size:var(--ui-font-size-body);font-variant-numeric:tabular-nums}.workspace{grid-template-columns:minmax(0,1fr) 304px;min-height:510px;display:grid}.workspace.empty-workspace{grid-template-columns:1fr;min-height:0}.pages-panel{padding:var(--ui-space-xl);min-width:0}.panel-heading{justify-content:space-between;align-items:center;gap:var(--ui-space-lg);margin-bottom:22px;display:flex}.panel-heading h2{font-size:var(--ui-font-size-section);letter-spacing:-.2px;margin-bottom:0}.count{background:var(--ui-color-subtle-surface);min-width:23px;height:21px;color:var(--ui-color-count-text);border-radius:var(--ui-radius-badge);font-size:var(--ui-font-size-caption);font-weight:var(--ui-font-weight-semibold);vertical-align:1px;place-items:center;margin-left:5px;padding:0 5px;display:inline-grid}.panel-actions{gap:var(--ui-space-sm);flex-shrink:0;display:flex}.button{justify-content:center;align-items:center;gap:var(--ui-space-sm);min-height:var(--ui-control-button-height);padding:var(--ui-control-button-padding-block) var(--ui-control-button-padding-inline);border-radius:var(--ui-control-button-radius);font-size:var(--ui-control-button-font-size);font-weight:var(--ui-font-weight-semibold);line-height:var(--ui-line-height-control);white-space:nowrap;border:1px solid #0000;transition:background .12s;display:inline-flex}.button.primary{color:var(--ui-color-on-accent);background:var(--ui-color-accent);border-color:var(--ui-color-accent)}.button.primary:hover:enabled{background:var(--ui-color-accent-hover)}.button.danger{background:var(--ui-color-danger);border-color:var(--ui-color-danger);color:var(--ui-color-on-accent)}.button.danger:hover:enabled{background:var(--ui-color-danger-hover);border-color:var(--ui-color-danger-hover)}.button.secondary{background:var(--ui-color-surface);border-color:var(--ui-color-button-border);color:var(--ui-color-button-secondary-text)}.button.secondary:hover:enabled{background:var(--ui-color-button-hover-surface);border-color:var(--ui-color-button-hover-border)}.button.compact{padding:9px var(--ui-space-md);min-height:var(--ui-control-compact-button-height);font-size:var(--ui-control-compact-button-font-size)}.text-button{color:var(--ui-color-accent);font-size:var(--ui-control-text-button-font-size);font-weight:var(--ui-font-weight-semibold);padding:var(--ui-space-sm) 0;min-height:var(--ui-control-text-button-height);background:0 0;justify-content:center;align-items:center;gap:6px;display:inline-flex}.text-button:hover:enabled{text-decoration:underline}.full-width{width:100%;margin-bottom:10px}.mobile-export{display:none}.drop-zone{border:1.5px dashed var(--ui-color-upload-border);background:var(--ui-color-upload-surface);border-radius:var(--ui-radius-card);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:300px;padding:30px 20px;display:flex}.upload-icon{background:var(--ui-color-selected-surface);width:56px;height:56px;color:var(--ui-color-accent);border-radius:var(--ui-radius-upload-icon);place-items:center;margin-bottom:18px;display:grid}.drop-zone h2{font-size:var(--ui-font-size-section);letter-spacing:-.4px;margin-bottom:var(--ui-space-xl)}.drop-zone .button{min-width:170px}.drop-zone .upload-limits{color:var(--ui-color-upload-help-text);font-size:var(--ui-font-size-body);margin:18px 0 0}.sample{font-size:var(--ui-font-size-body);color:var(--ui-color-muted);margin-top:var(--ui-space-md);justify-content:center;align-items:center;gap:7px;display:flex}.page-grid{gap:var(--ui-space-lg);grid-template-columns:repeat(auto-fill,minmax(155px,1fr));align-items:start;display:grid}.page-card{background:var(--ui-color-surface);border:1px solid var(--ui-color-page-border);border-radius:var(--ui-radius-card);min-width:0;transition:border-color .12s;overflow:hidden}.page-card:hover{border-color:var(--ui-color-page-hover-border)}.page-card.needs-check{border-color:var(--ui-color-page-review-border)}.page-image{background:var(--ui-color-page-preview-surface);justify-content:center;align-items:center;width:100%;height:205px;padding:18px;display:flex;position:relative;overflow:hidden}.page-image img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%;box-shadow:var(--ui-shadow-page-image-img);display:block}.edit-hover{border:1px solid var(--ui-color-edit-label-border);background:var(--ui-color-floating-surface);border-radius:var(--ui-radius-small-control);box-shadow:var(--ui-shadow-edit-hover);font-size:var(--ui-font-size-body);color:var(--ui-color-edit-label-text);white-space:nowrap;justify-content:center;align-items:center;gap:5px;padding:6px 10px;display:flex;position:absolute;bottom:9px;left:50%;transform:translate(-50%)}.page-meta{justify-content:space-between;align-items:center;gap:var(--ui-space-xs) var(--ui-space-sm);padding:var(--ui-space-md);flex-wrap:wrap;display:flex}.page-number{font-size:var(--ui-font-size-body);font-weight:var(--ui-font-weight-semibold)}.page-state{color:var(--ui-color-page-success);font-size:var(--ui-font-size-body);align-items:center;gap:3px;display:flex}.page-state.warning{color:var(--ui-color-page-warning)}.page-filename{font-size:var(--ui-font-size-caption);white-space:nowrap;text-overflow:ellipsis;color:var(--ui-color-filename-text);margin:-4px var(--ui-space-md) 10px;overflow:hidden}.page-actions{border-top:1px solid var(--ui-color-page-tools-border);align-items:center;gap:0;padding:2px;display:flex}.page-actions>span{flex:1}.icon-button{min-width:var(--ui-control-icon-button-width);min-height:var(--ui-control-icon-button-height);color:var(--ui-color-icon-text);border-radius:var(--ui-control-icon-button-radius);background:0 0;justify-content:center;align-items:center;padding:7px;display:inline-flex}.icon-button:hover:enabled{background:var(--ui-color-icon-hover-surface);color:var(--ui-color-accent)}.icon-button.danger:hover:enabled{background:var(--ui-color-danger-surface);color:var(--ui-color-danger)}.add-card{justify-content:center;align-items:center;gap:var(--ui-space-md);background:var(--ui-color-upload-surface);border:1px dashed var(--ui-color-add-page-border);border-radius:var(--ui-radius-card);min-height:317px;font-size:var(--ui-font-size-body);color:var(--ui-color-add-page-text);flex-direction:column;display:flex}.add-card:hover:enabled{background:var(--ui-color-add-page-hover-surface);color:var(--ui-color-accent);border-color:var(--ui-color-add-page-hover-border)}.export-panel{border-left:1px solid var(--ui-color-line);background:var(--ui-color-export-surface);border-radius:0 var(--ui-radius-panel) var(--ui-radius-panel) 0;padding:25px 23px}.export-heading{margin-bottom:var(--ui-space-xl);align-items:center;gap:10px;display:flex}.export-icon{width:38px;height:42px;color:var(--ui-color-export-icon);border:1px solid var(--ui-color-export-icon-border);border-radius:var(--ui-radius-control);background:var(--ui-color-surface);place-items:center;display:grid}.export-panel h2{font-size:var(--ui-font-size-section);letter-spacing:-.2px;margin-bottom:var(--ui-space-xs)}.field-label{font-size:var(--ui-font-size-body);font-weight:var(--ui-font-weight-regular);color:var(--ui-color-field-label);margin:18px 0 7px;display:block}.export-panel fieldset>.field-label:first-child{margin-top:0}.filename-field{border:1px solid var(--ui-color-field-border);border-radius:var(--ui-control-field-radius);background:var(--ui-color-surface);align-items:center;min-width:0;display:flex}.filename-field:focus-within{outline:2px solid var(--ui-color-focus);outline-offset:1px}.filename-field input{width:100%;min-width:0;font-size:var(--ui-control-field-font-size);background:0 0;border:0;outline:none;padding:11px 10px}.filename-field>span{font-size:var(--ui-font-size-body);color:var(--ui-color-filename-extension);padding-right:11px}select{width:100%;min-height:var(--ui-control-field-height);border:1px solid var(--ui-color-field-border);border-radius:var(--ui-control-field-radius);background:var(--ui-color-surface);color:var(--ui-color-field-text);font-size:var(--ui-control-field-font-size);padding:9px 10px}@supports (appearance:base-select) and selector(select::picker(select)){select.custom-select,select.custom-select::picker(select){appearance:base-select}select.custom-select{justify-content:space-between;align-items:center;gap:var(--ui-space-sm);cursor:pointer;display:inline-flex}select.custom-select:hover:enabled,select.custom-select:open{border-color:var(--ui-color-button-hover-border)}select.custom-select:disabled{cursor:not-allowed}select.custom-select::picker-icon{content:"";width:var(--ui-control-picker-icon-size);height:var(--ui-control-picker-icon-size);color:var(--ui-color-muted);background-color:currentColor;flex-shrink:0;margin-inline-start:auto;mask:url(/icons/lucide-chevron-down.svg) 50%/contain no-repeat}select.custom-select:open::picker-icon{rotate:180deg}select.custom-select::picker(select){box-sizing:border-box;position-area:block-end span-inline-end;position-try-order:normal;position-try-fallbacks:flip-block, flip-inline, flip-block flip-inline;min-inline-size:anchor-size(self-inline);max-inline-size:calc(100dvw - var(--ui-space-xxl));max-block-size:min(var(--ui-control-picker-max-height), 60dvh);margin-block:var(--ui-space-xs);padding:var(--ui-space-xs);border:1px solid var(--ui-color-line);border-radius:var(--ui-radius-panel);background:var(--ui-color-surface);color:var(--ui-color-text);box-shadow:var(--ui-shadow-picker);font:inherit;overflow:auto}select.custom-select option{align-items:center;gap:var(--ui-space-md);min-height:var(--ui-control-picker-option-height);padding:var(--ui-space-sm) var(--ui-space-md);border-radius:var(--ui-radius-control);background:var(--ui-color-surface);color:var(--ui-color-text);font:inherit;line-height:var(--ui-line-height-control);cursor:pointer;border:0;display:flex}select.custom-select option:checked{background:var(--ui-color-soft);font-weight:var(--ui-font-weight-semibold)}select.custom-select option:hover,select.custom-select option:focus{background:var(--ui-color-button-hover-surface)}select.custom-select option:focus-visible{outline:2px solid var(--ui-color-focus);outline-offset:-2px}select.custom-select option::checkmark{content:"";width:var(--ui-control-picker-icon-size);height:var(--ui-control-picker-icon-size);color:var(--ui-color-accent);background-color:currentColor;flex-shrink:0;order:1;margin-inline-start:auto;mask:url(/icons/lucide-check.svg) 50%/contain no-repeat}.language-wrap select.custom-select{padding:var(--ui-space-sm);border-radius:var(--ui-control-field-radius);border:1px solid #0000}.language-wrap select.custom-select:hover,.language-wrap select.custom-select:open{background:var(--ui-color-button-hover-surface)}.language-wrap select.custom-select::picker(select){min-inline-size:var(--ui-control-picker-language-min-width)}}.main-wrap{min-height:calc(100vh - 180px);padding-bottom:48px}h1{font-size:var(--ui-font-size-page);line-height:var(--ui-line-height-heading);letter-spacing:-.6px}h2{font-size:var(--ui-font-size-section)}.page-heading{margin:8px 0 28px}.page-heading p{margin-bottom:0}.tool-grid{gap:var(--ui-space-lg);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.tool-card{justify-content:space-between;align-items:center;gap:var(--ui-space-lg);background:var(--ui-color-surface);border:1px solid var(--ui-color-line);border-radius:var(--ui-radius-panel);padding:28px 24px;display:flex}.tool-card h2{margin:0;line-height:1.5}.tool-card:hover{border-color:var(--ui-color-accent)}.panel{background:var(--ui-color-surface);border:1px solid var(--ui-color-line);border-radius:var(--ui-radius-panel);padding:var(--ui-space-xl)}.empty{place-items:center;min-height:200px;display:grid}.showcase{gap:var(--ui-space-xl);display:grid}.field{gap:var(--ui-space-sm);min-width:0;display:grid}.field label{font-size:var(--ui-font-size-body)}input{width:100%;min-width:0;min-height:var(--ui-control-field-height);border:1px solid var(--ui-color-field-border);border-radius:var(--ui-control-field-radius);background:var(--ui-color-surface);padding:9px 10px}.actions{gap:var(--ui-space-md);flex-wrap:wrap;align-items:center;display:flex}.actions .button{white-space:normal}.result-panel{border-top:1px solid var(--ui-color-line);padding-top:var(--ui-space-xl)}.result-panel h2{color:var(--ui-color-success)}.error{color:var(--ui-color-error-text);background:var(--ui-color-error-surface);padding:var(--ui-space-md);border-radius:var(--ui-radius-control);overflow-wrap:anywhere}.prose{max-width:740px;padding-bottom:40px}.prose p{font-size:var(--ui-font-size-section);line-height:1.75}.prose h2{margin-top:var(--ui-space-xxl)}.site-footer{gap:var(--ui-space-xl);max-width:1280px;color:var(--ui-color-muted);border-top:1px solid var(--ui-color-line);justify-content:space-between;margin:auto;padding:24px 32px;display:flex}.site-footer div{gap:var(--ui-space-xl);flex-wrap:wrap;display:flex}.confirm-dialog{border:1px solid var(--ui-color-line);border-radius:var(--ui-radius-panel);max-width:min(440px,100vw - 32px);padding:var(--ui-space-xl);box-shadow:var(--ui-shadow-dialog)}.confirm-dialog::backdrop{background:#1118}.confirm-buttons{justify-content:flex-end;gap:var(--ui-space-md);display:flex}@media (width<=680px){.header-inner{flex-wrap:wrap;gap:8px;padding:12px 16px}.site-header nav{flex-wrap:wrap;flex:1;justify-content:flex-end;gap:12px}.language-wrap{padding-left:8px}.language-wrap .language-select{width:145px;max-width:145px}.main-wrap{padding:24px 16px 32px}h1{font-size:var(--ui-font-size-page-mobile)}.tool-grid{grid-template-columns:1fr}input,select{font-size:var(--ui-control-mobile-field-font-size);min-height:var(--ui-control-mobile-field-height)}.button{min-height:var(--ui-control-mobile-primary-height)}.site-footer{flex-direction:column;padding:20px 16px}.panel{padding:var(--ui-space-lg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-latin.woff2)format("woff2")}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-mono-latin.woff2)format("woff2")}.reference-page{background:var(--ui-reference-background);min-height:100vh;color:var(--ui-reference-foreground);font-family:var(--ui-reference-font-family);font-size:var(--ui-reference-body-size);-webkit-font-smoothing:antialiased;line-height:24px}.reference-page a{color:inherit}.reference-page a:hover{color:var(--ui-reference-foreground)}.reference-page p,.reference-page h1,.reference-page h2,.reference-page h3{margin:0}.reference-container{max-width:var(--ui-reference-content-width);width:100%;padding:var(--ui-space-xxxl) var(--ui-space-xxl);flex:1;margin:0 auto}.reference-breadcrumb{align-items:center;gap:var(--ui-space-sm);min-width:0;margin-bottom:var(--ui-space-xl);color:var(--ui-reference-muted);font-size:var(--ui-font-size-control);line-height:var(--ui-line-height-label);display:flex}.reference-page h1{font-size:var(--ui-reference-title-size);font-weight:var(--ui-font-weight-semibold);letter-spacing:-.9px;margin-bottom:8px;line-height:40px}.reference-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:64px;display:grid}.reference-primary{grid-column:span 9;min-width:0;overflow:hidden}.reference-sidebar{grid-column:span 3;min-width:0}.reference-install{margin:40px 0}.reference-section-heading{border-bottom:1px solid var(--ui-reference-border);justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.reference-section-heading h2,.reference-sidebar h2{font-family:var(--ui-reference-font-family-mono);font-size:var(--ui-reference-label-size);font-weight:var(--ui-font-weight-regular);line-height:var(--ui-line-height-label);text-transform:uppercase}.reference-source .reference-section-heading h2{text-transform:none}.reference-format{font-family:var(--ui-reference-font-family-mono);font-size:var(--ui-font-size-caption);gap:4px;line-height:16px;display:flex}.reference-format button{border-radius:var(--ui-radius-badge);color:var(--ui-reference-muted);font-family:inherit;font-size:inherit;background:0 0;align-items:center;gap:4px;padding:4px 8px;font-weight:500;line-height:16px;display:flex}.reference-format button[aria-pressed=true],.reference-format button:hover{background:var(--ui-reference-surface);color:var(--ui-reference-foreground)}.reference-install .reference-section-heading{margin-bottom:20px}.reference-page .gs-copy{margin:0}.reference-page .gs-copy-code>.button{gap:var(--ui-space-sm);border-radius:var(--ui-radius-control);background:var(--ui-reference-surface);width:100%;min-height:36px;color:var(--ui-reference-muted);font-family:var(--ui-reference-font-family-mono);font-size:var(--ui-font-size-control);font-weight:var(--ui-font-weight-regular);line-height:var(--ui-line-height-label);border:0;align-items:center;padding:8px 12px;display:flex}.reference-page .gs-copy-code>.button:hover{color:var(--ui-reference-foreground)}.reference-page .gs-copy-code>.button:hover:enabled{background:var(--ui-reference-surface);border-color:var(--ui-reference-surface);color:var(--ui-reference-foreground)}.reference-page .gs-copy-code code{text-overflow:ellipsis;white-space:nowrap;text-align:left;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:var(--ui-font-size-control);line-height:var(--ui-line-height-label);font-weight:var(--ui-font-weight-regular);flex:1;overflow:hidden}.reference-page .gs-copy-code svg{width:14px;height:14px}.reference-page .gs-copy-recovery{margin-top:16px}.reference-page .gs-copy-recovery textarea{background:var(--ui-reference-surface);color:var(--ui-reference-foreground);border-color:var(--ui-reference-muted)}.reference-markdown{font-size:var(--ui-font-size-body);line-height:var(--ui-line-height-reading);color:var(--ui-reference-muted);overflow-wrap:anywhere;display:flow-root}.reference-markdown .gs-source-content{display:flow-root}.reference-markdown p{line-height:var(--ui-line-height-reading);margin:20px 0}.reference-markdown strong{color:var(--ui-reference-foreground);font-weight:var(--ui-font-weight-semibold)}.reference-markdown .gs-source-content>:last-child{margin-bottom:0}.reference-markdown.is-collapsed .gs-source-content>:nth-child(n+6){display:none}.reference-markdown.is-collapsed .gs-source-content>:nth-child(5){margin-bottom:0}.reference-markdown pre{border-radius:var(--ui-radius-control);white-space:pre;font-family:var(--ui-reference-font-family-mono);font-size:var(--ui-font-size-control);border:0;margin:24px 0;padding:12px 16px;line-height:21px;overflow-x:auto;background:var(--ui-reference-surface)!important;color:var(--ui-reference-foreground)!important}.reference-markdown pre code{font-family:inherit;font-size:inherit;line-height:inherit}.reference-markdown pre span{color:inherit!important}.reference-expand{text-align:center;width:100%;font-family:var(--ui-reference-font-family);font-size:var(--ui-font-size-control);font-weight:500;line-height:var(--ui-line-height-label);color:var(--ui-reference-muted);background:0 0;margin-top:16px;padding:12px 0;display:block}.reference-expand:hover{color:var(--ui-reference-foreground)}.reference-sidebar section{padding:32px 0}.reference-sidebar h2{margin-bottom:8px}.reference-sidebar p,.reference-repository{font-size:var(--ui-font-size-control);line-height:var(--ui-line-height-label)}.reference-sidebar .reference-installs{height:164px;padding-top:0}.reference-sidebar .reference-install-count{font-family:var(--ui-reference-font-family-mono);font-size:30px;font-weight:var(--ui-font-weight-semibold);line-height:36px}.reference-sparkline{width:160px;max-width:100%;height:48px;color:var(--ui-reference-muted);opacity:.65;margin-top:16px}.reference-sparkline svg{width:100%;height:100%;display:block;overflow:visible}.reference-repository{font-family:var(--ui-reference-font-family-mono);font-weight:500;line-height:24px}.reference-stars{align-items:center;gap:4px;display:flex}.reference-audits{margin-top:12px}.reference-audits>a{justify-content:space-between;align-items:center;gap:var(--ui-space-sm);border-radius:var(--ui-radius-control);font-size:var(--ui-font-size-control);line-height:var(--ui-line-height-label);margin:0 -8px;padding:8px 8px 12px;font-weight:500;display:flex}.reference-audits>a:hover{background:var(--ui-reference-surface)}.reference-pass{border-radius:var(--ui-radius-badge);color:var(--ui-reference-success);background:var(--ui-reference-success-background);font-family:var(--ui-reference-font-family-mono);font-size:var(--ui-font-size-caption);font-weight:var(--ui-font-weight-regular);text-transform:uppercase;padding:4px 8px;line-height:16px}@media (width<=1023px){.reference-container{padding-inline:24px}.reference-grid{grid-template-columns:minmax(0,1fr)}.reference-primary,.reference-sidebar{grid-column:1}}@media (width<=639px){.reference-container{padding:8px 16px}}.reference-sparkline{margin-top:20px}.reference-sidebar h2{color:#fff}.reference-sidebar p{font-family:var(--ui-reference-font-family-mono)}.reference-sidebar .reference-install-count{letter-spacing:-.75px}.reference-repository{font-weight:var(--ui-font-weight-regular);line-height:var(--ui-line-height-label)}.reference-stars{gap:6px}.reference-markdown pre{min-height:234px}.gs-copy{margin-top:var(--ui-space-md);min-width:0}.gs-copy .button{white-space:normal;text-align:left}.gs-copy-recovery{margin-top:var(--ui-space-lg)}.gs-copy-recovery p{color:var(--ui-color-error-text)}.gs-copy-recovery label{line-height:var(--ui-line-height-body);display:block}.gs-copy-recovery textarea{width:100%;font-family:var(--ui-font-family-mono);font-size:var(--ui-font-size-body);color:var(--ui-color-text);background:var(--ui-color-surface);border:1px solid var(--ui-color-field-border);border-radius:var(--ui-radius-control);padding:var(--ui-space-md);margin-top:var(--ui-space-sm);display:block}.gs-copy-recovery textarea:focus-visible{outline:3px solid var(--ui-color-focus);outline-offset:3px}.good-app{color-scheme:dark;flex-direction:column;min-height:100dvh;display:flex}.good-header{height:var(--ui-layout-header-height);justify-content:space-between;align-items:center;gap:var(--ui-space-lg);border-bottom:1px solid var(--ui-reference-border);flex-shrink:0;padding:0 16px;display:flex}.good-brand{align-items:center;gap:var(--ui-space-sm);font-size:var(--ui-font-size-emphasis);line-height:var(--ui-line-height-reading);font-weight:var(--ui-font-weight-semibold);letter-spacing:-.4px;flex-shrink:0;display:inline-flex}.good-header-actions{align-items:center;gap:var(--ui-space-xl);min-width:0;display:flex}.good-desktop-nav{align-items:center;gap:var(--ui-space-xl);display:flex}.good-desktop-nav a{min-height:44px;font-size:var(--ui-font-size-control);line-height:var(--ui-line-height-label);color:var(--ui-reference-muted);align-items:center;display:flex}.good-desktop-nav a[aria-current=page]{color:var(--ui-reference-foreground)}.good-language{width:var(--ui-control-picker-language-width);border-radius:var(--ui-radius-badge);min-width:0;min-height:40px;color:var(--ui-reference-muted);background:var(--ui-reference-background);font-family:inherit;font-size:var(--ui-font-size-control);line-height:var(--ui-line-height-label);white-space:nowrap;text-overflow:ellipsis;border:0;padding:0 4px}.good-mobile-nav{border-radius:var(--ui-radius-control);width:40px;height:40px;color:var(--ui-reference-muted);background:0 0;flex-shrink:0;justify-content:center;align-items:center;display:none}.good-mobile-nav:hover{background:var(--ui-reference-surface)}.good-navigation-dialog{border:1px solid var(--ui-reference-border);border-radius:var(--ui-radius-control);width:min(288px,100vw - 32px);max-height:calc(100dvh - 80px);color:var(--ui-reference-foreground);background:var(--ui-reference-background);box-shadow:var(--ui-shadow-dialog);margin:0;padding:4px;position:fixed;top:64px;left:auto;right:16px;overflow-y:auto}.good-navigation-dialog::backdrop{background:#0009}.good-navigation-dialog>div{justify-content:space-between;align-items:center;height:40px;padding:0 12px;display:flex}.good-navigation-dialog>div>span{font-size:var(--ui-font-size-caption);color:var(--ui-reference-muted);line-height:16px}.good-navigation-dialog button{width:32px;height:32px;color:var(--ui-reference-muted);border-radius:var(--ui-radius-control);background:0 0;justify-content:center;align-items:center;display:flex}.good-navigation-dialog nav{flex-direction:column;display:flex}.good-navigation-dialog nav a{border-bottom:1px solid var(--ui-reference-border);min-height:44px;font-size:var(--ui-font-size-control);line-height:var(--ui-line-height-label);color:var(--ui-reference-muted);align-items:center;padding:0 12px;display:flex}.good-navigation-dialog nav a:last-child{border:0}.good-navigation-dialog a[aria-current=page]{color:var(--ui-reference-foreground)}.good-main{width:100%;max-width:var(--ui-reference-content-width);padding:var(--ui-space-xxxl) var(--ui-space-xxl);flex:1;margin:0 auto}.good-collection-heading{justify-content:space-between;align-items:center;gap:var(--ui-space-xl);margin-bottom:var(--ui-space-xxl);display:flex}.good-collection-heading h1{align-items:center;gap:var(--ui-space-md);margin:0;display:flex}.good-count{color:var(--ui-reference-muted);font-family:var(--ui-reference-font-family-mono);font-size:var(--ui-font-size-control);line-height:var(--ui-line-height-label);font-weight:var(--ui-font-weight-regular);letter-spacing:0}.good-search{align-items:center;gap:var(--ui-space-sm);border:1px solid var(--ui-color-field-border);border-radius:var(--ui-radius-control);width:320px;min-width:0;max-width:100%;color:var(--ui-reference-muted);padding:0 12px;display:flex}.good-search>svg{flex-shrink:0}.good-search input{width:100%;min-width:0;min-height:40px;color:var(--ui-reference-foreground);font-family:inherit;font-size:var(--ui-font-size-control);line-height:var(--ui-line-height-label);background:0 0;border:0;padding:8px 0}.good-search input::placeholder{color:var(--ui-reference-muted);opacity:1}.good-search:focus-within{outline:2px solid var(--ui-color-focus);outline-offset:2px}.good-search input:focus-visible{outline:0}.good-skills-table{border-collapse:collapse;table-layout:fixed;width:100%}.good-skills-table th{border-bottom:1px solid var(--ui-reference-border);color:var(--ui-reference-muted);font-family:var(--ui-reference-font-family-mono);font-size:var(--ui-font-size-caption);line-height:16px;font-weight:var(--ui-font-weight-regular);text-transform:uppercase;text-align:left;padding:12px 0}.good-skills-table th:first-child{width:40px}.good-skills-table th:last-child{text-align:right;width:176px}.good-skills-table td{border-bottom:1px solid var(--ui-reference-border)}.good-skills-table tbody tr:hover{background:var(--ui-color-soft)}.good-index{color:var(--ui-reference-muted);font-family:var(--ui-reference-font-family-mono);font-size:var(--ui-font-size-control);line-height:var(--ui-line-height-label)}.good-skill-link{overflow-wrap:anywhere;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;padding:20px 16px 20px 0;display:flex}.good-skill-link strong{font-size:var(--ui-font-size-emphasis);font-weight:var(--ui-font-weight-semibold);line-height:24px}.good-repository,.good-description{color:var(--ui-reference-muted);font-size:var(--ui-font-size-control);line-height:var(--ui-line-height-label)}.good-repository{font-family:var(--ui-reference-font-family-mono)}.good-installs{text-align:right;font-family:var(--ui-reference-font-family-mono);font-size:var(--ui-font-size-control);line-height:var(--ui-line-height-label)}.install-counts{align-items:baseline;gap:var(--ui-space-xs);flex-wrap:wrap;display:flex}.install-counts>span{white-space:nowrap}.good-installs .install-counts{justify-content:flex-end}.good-skills-table td.good-empty{text-align:center;padding:64px 16px}.good-empty p{color:var(--ui-reference-muted);font-size:var(--ui-font-size-control);margin-bottom:16px}.good-document{max-width:760px}.good-document h1{margin-bottom:var(--ui-space-xl)}.good-document>p{color:var(--ui-reference-muted);line-height:var(--ui-line-height-reading)}.good-document h2{font-size:var(--ui-font-size-control);line-height:var(--ui-line-height-label);font-weight:var(--ui-font-weight-regular);margin:32px 0 16px}.good-data-links{margin:0;padding:0;list-style:none}.good-data-links a,.good-document-back{align-items:center;gap:var(--ui-space-sm);width:fit-content;min-height:44px;font-size:var(--ui-font-size-control);line-height:var(--ui-line-height-label);display:flex}.good-data-links li{border-bottom:1px solid var(--ui-reference-border)}.good-document-back{margin-top:24px}.good-footer{justify-content:space-between;align-items:center;gap:var(--ui-space-sm) 24px;width:100%;max-width:var(--ui-reference-content-width);border-top:1px solid var(--ui-reference-border);color:var(--ui-reference-muted);font-size:var(--ui-font-size-caption);line-height:var(--ui-line-height-label);flex-wrap:wrap;flex-shrink:0;margin:0 auto;padding:16px 32px;display:flex}.good-footer nav{align-items:center;gap:var(--ui-space-xl);flex-wrap:wrap;display:flex}.good-footer a{align-items:center;min-height:40px;display:flex}@media (width<=680px){.good-desktop-nav{display:none}.good-mobile-nav{display:flex}.good-header-actions{gap:var(--ui-space-sm)}.good-language{width:var(--ui-control-picker-language-mobile-width)}.good-main{padding:var(--ui-space-xxl) var(--ui-space-lg)}.good-collection-heading{align-items:stretch;gap:var(--ui-space-xl);margin-bottom:var(--ui-space-xl);flex-direction:column}.good-collection-heading h1{font-size:28px;line-height:36px}.good-search{width:100%}.good-search input{font-size:var(--ui-font-size-body);min-height:44px}.good-skills-table th:first-child{width:28px}.good-skills-table th:last-child{width:104px}.good-skill-link{padding-right:8px}.good-footer{padding:16px}.good-footer nav{gap:var(--ui-space-lg)}}@media (width<=360px){.good-header{gap:var(--ui-space-sm)}.good-language{width:var(--ui-control-picker-language-narrow-width)}}@supports (appearance:base-select) and selector(select::picker(select)){.good-language.custom-select{padding:var(--ui-space-sm);border-radius:var(--ui-control-field-radius);border:1px solid #0000}.good-language>button{min-width:0;color:inherit;font:inherit;text-align:start;background:0 0;border:0;flex:1;padding:0;display:block}.good-language selectedcontent{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.good-language.custom-select:hover:enabled,.good-language.custom-select:open{background:var(--ui-color-button-hover-surface)}.good-language.custom-select::picker(select){min-inline-size:var(--ui-control-picker-language-min-width);background:var(--ui-color-floating-surface);border-color:var(--ui-color-field-border)}.good-language.custom-select option{background:0 0}.good-language.custom-select option:checked{background:var(--ui-color-selected-surface)}.good-language.custom-select option:hover,.good-language.custom-select option:focus{background:var(--ui-color-button-hover-surface)}}.good-language.custom-select>button:focus-visible{outline:none}.good-language:focus-visible{outline:2px solid var(--ui-color-focus);outline-offset:2px}@media (width<=360px){.good-language.custom-select{padding-inline:var(--ui-space-xs)}}
