@font-face{font-family:Readex Pro Variable;font-style:normal;font-display:swap;font-weight:160 700;src:url(/assets/readex-pro-arabic-wght-normal-DiwT_uOQ.woff2)format("woff2-variations");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Readex Pro Variable;font-style:normal;font-display:swap;font-weight:160 700;src:url(/assets/readex-pro-vietnamese-wght-normal-Do5Nl5oc.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Readex Pro Variable;font-style:normal;font-display:swap;font-weight:160 700;src:url(/assets/readex-pro-latin-ext-wght-normal-CsYMu49W.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Readex Pro Variable;font-style:normal;font-display:swap;font-weight:160 700;src:url(/assets/readex-pro-latin-wght-normal--ekFhJJC.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#e8edf5;--aurora-a:#488cff8c;--aurora-b:#28cdbe61;--aurora-c:#ffa06e6b;--aurora-d:#78aaff66;--grain:.05;--sheen:#fff9;--rim:#fff;--cursor-glow:#6eaaff59;--glass:#ffffff85;--glass-strong:#fafcffdb;--glass-edge:#ffffffbf;--glass-shine:#fffffff2;--glass-shadow:inset 0 1px 0 var(--glass-shine), 0 1px 2px #1018280f, 0 24px 48px -24px #1018284d;--blur:blur(24px) saturate(180%);--text:#0b1220;--text-soft:#2a3445;--muted:#4b5567;--line:#0f172a17;--fill:#ffffff8c;--fill-hover:#ffffffd9;--input:#ffffffe6;--accent:#2563eb;--accent-top:#5b9dff;--accent-bottom:#2b63f0;--accent-glow:#2b63f073;--accent-wash:#2563eb1f;--on-accent:#fff;--positive:#12805c;--danger:#c8261c;--danger-wash:#c8261c1a;--caution-bg:#fff6dc;--caution-edge:#f0c14b;--caution-ink:#6b4200;--error-bg:#fff0ee;--error-edge:#f0a59b;--error-ink:#9b1c14;--page-shadow:0 1px 2px #1018281f, 0 30px 60px -24px #10182873;--float:0 20px 50px -20px #10182873;--radius-lg:22px;--radius:14px;--radius-sm:10px;--dock:360px;--rail:128px;--ease:cubic-bezier(.2, .8, .2, 1);--spring:cubic-bezier(.34, 1.4, .64, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#04060b;--aurora-a:#286effb3;--aurora-b:#10beaf6b;--aurora-c:#ff783c42;--aurora-d:#3c82ff66;--grain:.07;--sheen:#ffffff1c;--rim:#fff9;--cursor-glow:#4682ff47;--glass:#0e121c75;--glass-strong:#0e121ce0;--glass-edge:#ffffff17;--glass-shine:#ffffff1a;--glass-shadow:inset 0 1px 0 var(--glass-shine), 0 24px 60px -24px #000000d9;--blur:blur(28px) saturate(160%);--text:#eef2fa;--text-soft:#cdd5e3;--muted:#9aa5b9;--line:#ffffff14;--fill:#ffffff0f;--fill-hover:#ffffff1c;--input:#0000004d;--accent:#6ea2ff;--accent-glow:#4682ff8c;--accent-wash:#5a96ff29;--positive:#4ade80;--danger:#ff8077;--danger-wash:#ff5a5024;--caution-bg:#33290f;--caution-edge:#8f6c1c;--caution-ink:#ffdc8f;--error-bg:#3a1513;--error-edge:#8a2e27;--error-ink:#ffb8b0;--page-shadow:0 1px 2px #0006, 0 40px 80px -30px #000000e6;--float:0 24px 60px -20px #000c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#04060b;--aurora-a:#286effb3;--aurora-b:#10beaf6b;--aurora-c:#ff783c42;--aurora-d:#3c82ff66;--grain:.07;--sheen:#ffffff1c;--rim:#fff9;--cursor-glow:#4682ff47;--glass:#0e121c75;--glass-strong:#0e121ce0;--glass-edge:#ffffff17;--glass-shine:#ffffff1a;--glass-shadow:inset 0 1px 0 var(--glass-shine), 0 24px 60px -24px #000000d9;--blur:blur(28px) saturate(160%);--text:#eef2fa;--text-soft:#cdd5e3;--muted:#9aa5b9;--line:#ffffff14;--fill:#ffffff0f;--fill-hover:#ffffff1c;--input:#0000004d;--accent:#6ea2ff;--accent-glow:#4682ff8c;--accent-wash:#5a96ff29;--positive:#4ade80;--danger:#ff8077;--danger-wash:#ff5a5024;--caution-bg:#33290f;--caution-edge:#8f6c1c;--caution-ink:#ffdc8f;--error-bg:#3a1513;--error-edge:#8a2e27;--error-ink:#ffb8b0;--page-shadow:0 1px 2px #0006, 0 40px 80px -30px #000000e6;--float:0 24px 60px -20px #000c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Readex Pro Variable,system-ui,sans-serif;font-size:.875rem;line-height:1.5}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--accent-wash)}.icon{flex:none}@media (width<=1023.98px){.wide-only{display:none!important}}@media (width>=1024px){.narrow-only{display:none!important}}.desk{min-height:100dvh}.mark{flex:none;display:block}.aurora{z-index:-1;pointer-events:none;background:var(--bg);position:fixed;inset:0;overflow:hidden}.aurora:before{content:"";background:radial-gradient(42% 38% at 18% 14%, var(--aurora-a), transparent 70%), radial-gradient(36% 34% at 88% 26%, var(--aurora-b), transparent 70%), radial-gradient(40% 36% at 66% 96%, var(--aurora-c), transparent 70%), radial-gradient(30% 30% at 30% 80%, var(--aurora-d), transparent 70%), radial-gradient(26% 34% at 90% 68%, var(--aurora-b), transparent 70%);position:absolute;inset:-20%}.aurora:after{content:"";opacity:var(--grain);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:absolute;inset:0}@media (width>=1024px){.aurora--live:before{animation:28s ease-in-out infinite alternate drift}}@keyframes drift{0%{transform:translate(-3%,-2%)rotate(0)scale(1)}to{transform:translate(3%,3%)rotate(8deg)scale(1.08)}}.glass,.bar,.panel,.toolbar,.notice,.zoom-group,.segmented{background:var(--glass);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);border:1px solid var(--glass-edge);box-shadow:var(--glass-shadow)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){:root{--glass:var(--glass-strong)}}.btn{min-height:40px;color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;transition:background-color .15s ease-out, box-shadow .2s ease-out, filter .15s ease-out, transform .2s var(--spring);background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}.btn:active:not(:disabled){transform:scale(.96)}.btn:disabled{cursor:not-allowed;opacity:.45}.btn-primary{background:linear-gradient(180deg, var(--accent-top), var(--accent-bottom));color:var(--on-accent);box-shadow:inset 0 1px 0 #fff6, inset 0 -1px 0 #00000026, 0 8px 22px -8px var(--accent-glow)}.btn-primary:hover:not(:disabled){filter:brightness(1.08);box-shadow:inset 0 1px 0 #ffffff73, inset 0 -1px 0 #00000026, 0 12px 30px -8px var(--accent-glow)}.btn-secondary{background:var(--fill);border-color:var(--glass-edge)}.btn-secondary:hover:not(:disabled),.btn-secondary[aria-pressed=true]{background:var(--fill-hover)}.btn-delete{background:var(--danger-wash);color:var(--danger)}.btn-delete:hover:not(:disabled){background:color-mix(in srgb, var(--danger) 20%, transparent)}.btn-ghost{padding-inline:12px}.btn-ghost:hover:not(:disabled){background:var(--fill-hover)}.btn-icon{min-width:40px;padding:0}.btn-large{min-height:52px;padding:0 26px;font-size:1rem}@media (pointer:coarse){.btn{min-height:44px}.btn-icon{min-width:44px}}.count{background:linear-gradient(180deg, var(--accent-top), var(--accent-bottom));color:#fff;font-variant-numeric:tabular-nums;min-width:20px;height:20px;box-shadow:0 4px 10px -4px var(--accent-glow);border-radius:999px;place-items:center;padding:0 6px;font-size:.6875rem;font-weight:600;line-height:1;display:inline-grid}.error{color:var(--danger);margin:0}.notice-text{color:var(--muted);margin:0}.landing{flex-direction:column;min-height:100dvh;display:flex}.landing-bar{width:min(1200px,100% - 24px);margin:max(12px, env(safe-area-inset-top)) auto 0;border-radius:18px;justify-content:space-between;align-items:center;gap:12px;padding:10px 18px 10px 12px;display:flex}.landing-bar-end{align-items:center;gap:8px;display:inline-flex}.landing-foot{padding:0 16px max(6px, env(safe-area-inset-bottom));text-align:center;font-size:.5625rem;line-height:1}.fine-link{color:var(--muted);opacity:.45;text-decoration:none}.fine-link:hover,.fine-link:focus-visible{opacity:1;text-decoration:underline}::view-transition-old(root){animation:.36s cubic-bezier(.4,0,1,1) both screen-out}::view-transition-new(root){animation:screen-in .56s var(--ease) both}@keyframes screen-out{to{opacity:0;filter:blur(8px);transform:scale(.97)}}@keyframes screen-in{0%{opacity:0;filter:blur(8px);transform:scale(1.03)}}::view-transition-group(brand-mark){animation-duration:.6s;animation-timing-function:var(--ease)}.brand .mark,.bar-mark .mark{view-transition-name:brand-mark}html.theme-switching::view-transition-old(root){mix-blend-mode:normal;animation:none}html.theme-switching::view-transition-new(root){mix-blend-mode:normal;animation:none}html.theme-switching::view-transition-new(root){z-index:1}.theme-switch .icon{transition:transform .5s var(--spring)}.theme-switch:hover .icon{transform:rotate(-20deg)scale(1.1)}.brand{letter-spacing:-.01em;align-items:center;gap:10px;font-size:1rem;font-weight:600;display:inline-flex}.landing-main{flex:1;place-items:center;padding:40px 16px 64px;display:grid}.hero{align-items:center;gap:48px;width:min(1200px,100%);display:grid}@media (width>=1024px){.hero{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:56px}}.hero-title{letter-spacing:-.04em;text-wrap:balance;margin:0 0 22px;font-size:clamp(2.375rem,1.2rem + 5vw,5.25rem);font-weight:600;line-height:1.04}.selection{background:var(--accent-wash);box-shadow:inset 0 0 0 2px var(--accent), 0 0 48px -6px var(--accent-glow);border-radius:.14em;padding:0 .14em .04em;display:inline-block}.caret{vertical-align:-.08em;background:var(--accent);border-radius:2px;width:.06em;height:.86em;margin-inline-start:.06em;animation:1.1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.hero-lede{max-width:34em;color:var(--text-soft);margin:0 0 30px;font-size:clamp(1rem,.95rem + .3vw,1.1875rem);line-height:1.6}.dropzone{border-radius:var(--radius-lg);max-width:560px;transition:box-shadow .2s ease-out, border-color .2s ease-out, transform .3s var(--spring);flex-wrap:wrap;align-items:center;gap:12px 18px;padding:16px;display:flex}@media (hover:none){.dropzone .btn-primary{flex:1}}.landing--dragging .dropzone{border-color:var(--accent);box-shadow:var(--glass-shadow), 0 0 0 6px var(--accent-wash), 0 0 60px -10px var(--accent-glow);transform:scale(1.02)}.hint{color:var(--muted)}@media (hover:none){.hint{display:none}}.upload-status{flex-basis:100%}.upload-status:empty{display:none}.progress:before{content:"";background:var(--fill-hover);border-radius:3px;height:6px;display:block}.progress-bar{background:linear-gradient(90deg, var(--accent-top), var(--accent-bottom));height:6px;box-shadow:0 0 16px var(--accent-glow);border-radius:3px;margin-top:-6px;transition:width .15s linear}.progress-bar--full{width:100%;animation:1.4s ease-in-out infinite breathe}@keyframes breathe{50%{opacity:.55}}.progress-label{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:8px;display:block}.facts{flex-wrap:wrap;gap:8px;margin:22px 0 0;padding:0;list-style:none;display:flex}.facts li{background:var(--fill);border:1px solid var(--glass-edge);color:var(--text-soft);border-radius:999px;padding:6px 14px;font-size:.8125rem}.drop-veil{z-index:50;pointer-events:none;background:color-mix(in srgb, var(--bg) 72%, transparent);-webkit-backdrop-filter:blur(16px)saturate(150%);backdrop-filter:blur(16px)saturate(150%);place-items:center;padding:24px;animation:.22s ease-out veil-in;display:grid;position:fixed;inset:0}.drop-frame{border:2px dashed var(--accent);background:var(--accent-wash);width:min(760px,100%);height:min(440px,70vh);box-shadow:0 0 90px -10px var(--accent-glow), inset 0 0 70px -20px var(--accent-glow);color:var(--text);letter-spacing:-.02em;animation:frame-in .45s var(--spring), frame-breathe 1.6s ease-in-out .45s infinite alternate;border-radius:36px;place-content:center;justify-items:center;gap:16px;font-size:clamp(1.25rem,1rem + 1vw,1.75rem);font-weight:600;display:grid}.drop-frame p{margin:0}.drop-frame .icon{color:var(--accent);animation:1s ease-in-out infinite alternate lift}@keyframes veil-in{0%{opacity:0}}@keyframes frame-in{0%{opacity:0;transform:scale(.92)}}@keyframes frame-breathe{to{box-shadow:0 0 120px -10px var(--accent-glow), inset 0 0 90px -20px var(--accent-glow);transform:scale(1.015)}}@keyframes lift{to{transform:translateY(-8px)}}.demo{aspect-ratio:1/.96;perspective:1600px;justify-self:center;width:min(100%,540px);position:relative;container-type:inline-size}.demo-sheet{color:#14161a;box-shadow:var(--page-shadow);transform:rotateY(calc(-9deg + var(--tx,0) * 9deg)) rotateX(calc(4deg - var(--ty,0) * 7deg)) rotateZ(-1deg);transform-style:preserve-3d;transition:transform .7s var(--ease);background:#fff;border-radius:4px;padding:8% 7%;font-family:Times New Roman,Times,serif;font-size:2.45cqi;position:absolute;inset:5% 13% 6% 5%}.demo-sheet:after{content:"";border-radius:inherit;background:linear-gradient(calc(115deg + var(--tx,0) * 25deg), #fff0 25%, #ffffff8c 45%, #fff0 62%);mix-blend-mode:soft-light;pointer-events:none;position:absolute;inset:0}.demo-sheet--behind{transform:rotateY(calc(-9deg + var(--tx,0) * 6deg)) rotateX(calc(4deg - var(--ty,0) * 5deg)) rotateZ(3.5deg) translateZ(-80px);opacity:.85;background:#f1f4f9;padding:0;inset:9% 5% 2% 15%}.demo-sheet p{margin:0}.demo-title{text-align:center;font-size:1.55em;font-weight:700;line-height:1.2}.demo-sheet .demo-subtitle{text-align:center;color:#5b6170;margin-bottom:1.4em;font-size:.85em}.demo-para{margin:1.2em 0}.demo-line{white-space:nowrap;border-radius:2px;width:fit-content;max-width:100%;margin-inline-start:-.15em;padding:0 .15em;line-height:1.5;transition:background-color .2s ease-out,box-shadow .2s ease-out}.demo-line--on{background:#2f6bff24;box-shadow:inset 0 0 0 1px #2f6bff,0 0 0 3px #2f6bff29}.demo-table{border:1px solid #c9ced8;grid-template-columns:1fr 1fr;font-size:.92em;display:grid}.demo-table p{border-bottom:1px solid #c9ced8;padding:.35em .6em}.demo-table p:nth-child(odd){border-inline-end:1px solid #c9ced8}.demo-table p:nth-last-child(-n+2){border-bottom:0}.demo-signs{justify-content:space-between;margin-top:2.6em;font-size:.9em;display:flex}.demo-signs p{border-top:1px solid #14161a;width:40%;padding-top:.4em}.demo-loupe{translate:calc(var(--tx,0) * 22px) calc(var(--ty,0) * 14px);top:30%;-webkit-backdrop-filter:blur(6px)saturate(140%);backdrop-filter:blur(6px)saturate(140%);color:#14161a;opacity:0;width:68%;transition:opacity .3s ease-out, transform .5s var(--spring), translate .7s var(--ease), top .6s var(--ease);background:#ffffffd1;border:1px solid #ffffffe6;border-radius:5cqi;justify-content:flex-end;padding:3.2cqi 3.6cqi;font-family:Times New Roman,Times,serif;font-size:5.6cqi;display:flex;position:absolute;inset-inline-end:0;overflow:hidden;transform:translateY(8px)scale(.96);box-shadow:inset 0 1px #fff,0 0 0 6px #ffffff2e,0 30px 60px -20px #0a143299;-webkit-mask-image:linear-gradient(90deg,#0000,#000 18%);mask-image:linear-gradient(90deg,#0000,#000 18%)}.demo-loupe--on{opacity:1;transform:none}.demo-loupe-text{white-space:pre;flex:none}.demo-caret{vertical-align:-.12em;background:#2f6bff;width:2px;height:1em;margin:0 1px;animation:1s step-end infinite blink;display:inline-block}.demo-check{translate:calc(var(--tx,0) * 12px) calc(var(--ty,0) * 8px);inset-inline-start:2%;background:var(--glass-strong);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);border:1px solid var(--glass-edge);box-shadow:var(--glass-shadow);color:var(--text);opacity:0;transition:opacity .25s ease-out, transform .4s var(--spring), translate .7s var(--ease);border-radius:999px;align-items:center;gap:8px;margin:0;padding:10px 16px;font-size:.8125rem;font-weight:500;display:inline-flex;position:absolute;bottom:3%;transform:translateY(10px)}.demo-check svg{color:var(--positive)}.demo-check--on{opacity:1;transform:none}.viewer{flex-direction:column;height:100dvh;display:flex;overflow:hidden}.bar{z-index:10;min-height:56px;margin:max(8px, env(safe-area-inset-top)) 8px 0;border-radius:18px;flex:none;align-items:center;gap:4px;padding:6px;display:flex;position:relative}@media (width>=1024px){.bar{min-height:60px;margin:12px 12px 0;padding:8px}}.bar-divider{background:var(--line);flex:none;width:1px;height:22px;margin-inline:6px}.bar-mark{flex:none;margin-inline-end:8px}.doc-title{flex-direction:column;flex:1;min-width:0;padding-inline-start:4px;line-height:1.3;display:flex}.doc-name{text-overflow:ellipsis;white-space:nowrap;font-size:.9375rem;font-weight:600;overflow:hidden}.doc-meta{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.75rem}.bar-actions{flex:none;align-items:center;gap:4px;display:flex}.bar-actions .btn-primary{margin-inline-start:4px}.bar-actions .count{margin-inline-start:2px}@media (width<=1023.98px){.bar .btn-primary{min-width:44px;padding:0}}.workspace{flex-direction:column;flex:1;min-height:0;display:flex}.canvas{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.dock{flex-direction:column;flex:none;display:flex;position:relative}@media (width>=1024px){.workspace{grid-template-columns:minmax(0, 1fr) var(--dock);gap:12px;padding:0 12px 12px;display:grid}.dock{gap:12px;min-height:0;padding-top:12px}.dock>.panel{border-radius:var(--radius-lg);flex:1;min-height:0;overflow-y:auto}.pages{-webkit-mask-image:linear-gradient(#0000,#000 20px calc(100% - 20px),#0000);mask-image:linear-gradient(#0000,#000 20px calc(100% - 20px),#0000)}}.banner{background:var(--caution-bg);border:1px solid var(--caution-edge);border-radius:var(--radius-sm);width:min(860px,100% - 24px);color:var(--caution-ink);flex:none;margin:12px auto 0;padding:10px 14px}.pages{overscroll-behavior:contain;flex:1;min-height:0;overflow:auto}.pages-inner{flex-direction:column;align-items:center;gap:18px;width:max-content;min-width:100%;padding:12px 12px 20px;display:flex}@media (width>=640px){.pages-inner{gap:32px;padding:28px 24px 96px}}.page-wrap{animation:page-rise .8s var(--ease) var(--delay,0s) both;flex:none;margin:0;position:relative}@keyframes page-rise{0%{opacity:0;transform:translateY(24px)scale(.98)}}.page{box-shadow:var(--page-shadow);background:#fff;border-radius:3px;position:relative;overflow:hidden}.page img{-webkit-user-select:none;user-select:none;width:100%;height:100%;transition:opacity .3s ease-out;display:block}.page--loading img,.page--failed img{opacity:0}.page img.page-prev{position:absolute;inset:0}.change-flash{pointer-events:none;animation:change-flash 2.6s var(--ease) forwards;border-radius:3px;position:absolute}@keyframes change-flash{0%{opacity:0;transform:scale(1.06)}12%{opacity:1;transform:none}65%{opacity:1}to{opacity:0}}.change-flash{background:#f59e0b29;box-shadow:inset 0 0 0 1.5px #f59e0b,0 0 0 5px #f59e0b29,0 0 36px #f59e0b8c}@keyframes lock-on{0%{background-color:#2f6bff66;box-shadow:inset 0 0 0 1.5px #2f6bff,0 0 0 16px #2f6bff00,0 0 60px #2f6bff99}}.viewer--working .line-box--selected{background-image:linear-gradient(100deg,#0000 20%,#2f6bff66 50%,#0000 80%);background-size:250% 100%;animation:1.1s linear infinite sheen}.spinner{border:2px solid;border-inline-end-color:#0000;border-radius:50%;flex:none;width:14px;height:14px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.page--loading:after{content:"";background:linear-gradient(100deg,#0000 30%,#2f6bff12 50%,#0000 70%) 0 0/200% 100%;animation:1.4s linear infinite sheen;position:absolute;inset:0}@keyframes sheen{0%{background-position:100% 0}to{background-position:-100% 0}}.page-overlay{position:absolute;inset:0}.page-failed{color:#4b5567;place-content:center;justify-items:center;gap:8px;display:grid;position:absolute;inset:0}.page-failed p{margin:0}.page-failed .btn-secondary{color:#0b1220;background:#eef2f8;border-color:#d9e0ea}.page-wrap figcaption{text-align:center;color:var(--muted);font-variant-numeric:tabular-nums;margin-top:10px;font-size:.75rem}.line-box{cursor:text;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:3px;padding:0;transition:background-color .12s ease-out,box-shadow .16s ease-out;position:absolute}@media (hover:hover){.line-box:hover{background:#2f6bff14;box-shadow:inset 0 0 0 1px #2f6bff80}}.viewer--show-text .line-box{background:#2f6bff0f;box-shadow:inset 0 0 0 1px #2f6bff57}.viewer--show-text .line-box--uncertain,.line-box--uncertain.line-box--selected{outline-offset:-1.5px;outline:1.5px dashed #b7791f}.line-box.line-box--selected{animation:lock-on .55s var(--ease);background:#2f6bff26;box-shadow:inset 0 0 0 1.5px #2f6bff,0 0 0 4px #2f6bff2e,0 0 26px #2f6bff59}.line-box:focus-visible{outline-offset:1px;outline:2px solid #2f6bff}.viewer--placing .page{cursor:crosshair}.viewer--placing .line-box{pointer-events:none}.spot{pointer-events:none;background:#2f6bff;border-radius:1px;width:2px;height:20px;margin:-10px 0 0 -1px;animation:1.1s step-end infinite blink;position:absolute;box-shadow:0 0 0 3px #2f6bff33,0 0 18px #2f6bff99}.spot-band{pointer-events:none;background:#2f6bff14;border:1.5px dashed #2f6bff;border-radius:3px;position:absolute}.spot-plan{font-weight:500}.lens{z-index:3;opacity:0;pointer-events:none;transition:opacity .18s ease-out, scale .3s var(--spring);background-color:#fff;background-repeat:no-repeat;border-radius:50%;position:absolute;top:0;left:0;scale:.85;box-shadow:0 0 0 1px #ffffffe6,0 0 0 7px #ffffff47,0 0 0 8px #0f172a1f,0 24px 50px -12px #050a1e99}.lens--on{opacity:1;scale:1}.lens:before{content:"";border-radius:inherit;background:radial-gradient(circle at 32% 24%,#ffffff80,#fff0 42%);position:absolute;inset:0;box-shadow:inset 0 2px 1px #ffffffe6,inset 0 -10px 24px -10px #0f172a59}.lens:after{content:"";background:#2f6bff;border-radius:50%;width:6px;height:6px;margin:-3px;position:absolute;top:50%;left:50%;box-shadow:0 0 0 2px #ffffffe6,0 0 10px #2f6bffcc}.change-outline{pointer-events:none;background:#f59e0b1f;border:2px solid #f59e0b;border-radius:3px;position:absolute;box-shadow:0 0 18px #f59e0b73}.zoom-group{border-radius:999px;align-items:center;display:flex}.zoom-group .btn[aria-pressed=true]{background:var(--accent-wash);color:var(--accent)}.toolbar .zoom-group{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0}.zoom-level{text-align:center;font-variant-numeric:tabular-nums;min-width:3.25em;font-size:.8125rem}.canvas-zoom{position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.canvas-zoom .zoom-group{background:var(--glass-strong);box-shadow:var(--glass-shadow), var(--float);padding:3px}@media (width<=1023.98px){.canvas-zoom{display:none}}.compare-bar{flex:none;justify-content:center;align-items:center;gap:8px;padding:12px 12px 0;display:flex}.segmented{border-radius:999px;padding:4px;display:inline-flex}.segmented button{min-height:34px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 16px;font-weight:500;transition:background-color .15s ease-out,color .15s ease-out}.segmented button[aria-pressed=true]{background:linear-gradient(180deg, var(--accent-top), var(--accent-bottom));color:#fff;box-shadow:0 6px 16px -6px var(--accent-glow)}.panel{color:var(--text);animation:panel-in .26s var(--ease);flex-direction:column;gap:14px;padding:16px 18px 18px;display:flex}.panel form{flex-direction:column;gap:14px;display:flex}.panel :is(p,h2,h3,dl,ul,ol,figure){margin:0}@keyframes panel-in{0%{opacity:0;transform:translateY(10px)scale(.99)}}@media (width<=1023.98px){.dock>.panel{max-height:58dvh;padding-bottom:max(18px, env(safe-area-inset-bottom));background:var(--glass-strong);border-width:1px 0 0;border-radius:26px 26px 0 0;overflow-y:auto}.home-panel{display:none!important}}@media (width>=640px) and (width<=1023.98px){.dock{align-items:center}.dock>.panel{border-width:1px 1px 0;width:min(100%,580px)}}.panel-head{justify-content:space-between;align-items:center;gap:8px;margin:-4px -8px -4px 0;display:flex}.panel-title{letter-spacing:-.01em;font-size:1.0625rem;font-weight:600;line-height:1.3}.panel-subtitle{font-size:.875rem;font-weight:600}.panel-lede{color:var(--text-soft)}.panel-note{color:var(--muted)}.panel-actions{flex-wrap:wrap;gap:8px;display:flex}.panel-section{border-top:1px solid var(--line);flex-direction:column;gap:10px;padding-top:18px;display:flex}.panel-foot{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:4px 12px;margin-top:auto;padding-top:18px;font-size:.75rem;display:flex}.home-panel{gap:18px;padding-top:20px}.home-panel .panel-title{letter-spacing:-.02em;font-size:1.375rem}.tools{flex-direction:column;gap:8px;display:flex}.tool{border:1px solid var(--glass-edge);border-radius:var(--radius);background:var(--fill);width:100%;color:var(--text);font:inherit;text-align:start;cursor:pointer;transition:background-color .15s ease-out, border-color .15s ease-out, box-shadow .2s ease-out, transform .2s var(--spring);align-items:center;gap:14px;padding:12px 14px;display:flex}.tool:hover{background:var(--fill-hover);transform:translateY(-1px)}.tool:active{transform:scale(.98)}.tool .icon{box-sizing:content-box;background:linear-gradient(180deg, var(--accent-top), var(--accent-bottom));color:#fff;box-shadow:inset 0 1px 0 #ffffff59, 0 6px 14px -6px var(--accent-glow);border-radius:11px;padding:9px}.tool[aria-pressed=true]{border-color:var(--accent);background:var(--accent-wash);box-shadow:0 0 0 3px var(--accent-wash)}.tool-text{flex-direction:column;flex:1;display:flex}.tool-name{font-weight:600}.tool-note{color:var(--muted);font-size:.8125rem}.switch{background:var(--line);width:36px;height:22px;box-shadow:inset 0 0 0 1px var(--line);border-radius:999px;flex:none;transition:background-color .2s ease-out;position:relative}.switch:after{content:"";top:2px;width:18px;height:18px;transition:transform .25s var(--spring);background:#fff;border-radius:50%;position:absolute;inset-inline-start:2px;box-shadow:0 2px 4px #00000040}[aria-pressed=true]>.switch{background:linear-gradient(180deg, var(--accent-top), var(--accent-bottom))}[aria-pressed=true]>.switch:after{transform:translate(14px)}.toolbar{margin:0 8px max(8px, env(safe-area-inset-bottom));background:var(--glass-strong);border-radius:22px;align-items:center;gap:2px;padding:4px;display:flex}@media (width>=640px){.toolbar{align-self:center;width:min(100%,560px)}}@media (width>=1024px){.toolbar{display:none}}.toolbar-item{min-height:52px;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:18px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:6px 4px;font-size:.75rem;font-weight:500;transition:background-color .15s ease-out;display:flex;position:relative}.toolbar-item:disabled{opacity:.4;cursor:not-allowed}.toolbar-item[aria-pressed=true]{background:var(--accent-wash);color:var(--accent)}.toolbar-item .count{top:2px;position:absolute;inset-inline-start:calc(50% + 4px)}.toolbar .zoom-group{border-inline-start:1px solid var(--line);border-radius:0;flex:none;margin-inline-start:4px;padding-inline-start:6px}.notice{border-radius:var(--radius);animation:panel-in .26s var(--ease);align-items:center;gap:8px;padding:4px 4px 4px 16px;display:flex}.notice p{flex:1;margin:0;padding-block:8px}.notice--done p:before{content:"";background:var(--positive);width:8px;height:8px;box-shadow:0 0 10px var(--positive);vertical-align:.05em;border-radius:50%;margin-inline-end:10px;display:inline-block}.notice-detail{color:var(--muted);margin-inline-start:18px;font-size:.75rem;display:block}.notice--warning,.notice--error{-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:var(--float)}.notice--warning{background:var(--caution-bg);border-color:var(--caution-edge);color:var(--caution-ink)}.notice--error{background:var(--error-bg);border-color:var(--error-edge);color:var(--error-ink)}.notice .btn-icon{color:inherit}@media (width<=1023.98px){.notice{inset-inline:10px;z-index:5;background:var(--glass-strong);box-shadow:var(--glass-shadow), var(--float);position:absolute;bottom:calc(100% + 10px)}.notice--warning{background:var(--caution-bg)}.notice--error{background:var(--error-bg)}}.loupe{flex-direction:column;gap:6px;display:flex}.loupe-lens{box-shadow:0 0 0 1px var(--glass-edge), 0 0 0 5px var(--fill), 0 18px 40px -18px #0000008c;background:#fff;border-radius:18px;position:relative;overflow:hidden}.loupe-lens:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(160deg,#ffffff8c,#fff0 38%);position:absolute;inset:0;box-shadow:inset 0 1px #ffffffe6,inset 0 0 0 1px #0f172a0f,inset 0 -8px 20px -12px #0f172a40}.loupe-scroll{scrollbar-width:none;padding:14px 16px;display:flex;overflow:auto hidden}.loupe-scroll::-webkit-scrollbar{display:none}.loupe-scroll img{background:#fff;flex:none;max-width:none;margin-inline:auto;display:block}.loupe figcaption{color:var(--muted);font-size:.75rem}.dialog{border:1px solid var(--glass-edge);background:var(--glass-strong);width:min(460px,100% - 32px);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);box-shadow:var(--glass-shadow), var(--float);color:var(--text);animation:dialog-in .38s var(--spring);border-radius:26px;padding:24px}.dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#04060b73;animation:.22s ease-out veil-in}@keyframes dialog-in{0%{opacity:0;transform:translateY(12px)scale(.96)}}.dialog-title{letter-spacing:-.015em;margin:0 0 8px;font-size:1.25rem;font-weight:600}.dialog-text{color:var(--text-soft);margin:0 0 20px;font-size:.9375rem}.dialog-actions{flex-wrap:wrap;gap:8px;display:flex}.line-text{text-align:start;overflow-wrap:anywhere;color:var(--text-soft);font-size:1rem;line-height:1.55}.line-warning{background:var(--caution-bg);border:1px solid var(--caution-edge);border-radius:var(--radius-sm);color:var(--caution-ink);padding:10px 12px;font-size:.8125rem}.line-style{border:1px solid var(--glass-edge);border-radius:var(--radius);background:var(--fill);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.line-style>div{min-width:0;padding:9px 12px}.line-style>div:nth-child(2n){border-inline-start:1px solid var(--line)}.line-style>div:nth-child(n+3){border-top:1px solid var(--line)}.line-style dt{color:var(--muted);font-size:.75rem}.line-style dd{text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:500;overflow:hidden}.swatch{vertical-align:-.1em;width:.9em;height:.9em;box-shadow:0 0 0 1px var(--glass-edge), 0 0 0 2px var(--line);border-radius:4px;margin-inline-end:.4em;display:inline-block}.line-others h3{color:var(--muted);margin-bottom:4px;font-size:.75rem;font-weight:500}.line-others ul{padding:0;font-size:.8125rem;list-style:none}.line-others li+li{margin-top:2px}.line-edit{width:100%;font:inherit;color:var(--text);background:var(--input);border:1px solid var(--glass-edge);border-radius:var(--radius);resize:vertical;text-align:start;padding:12px 14px;font-size:1rem;line-height:1.5;transition:border-color .15s ease-out,box-shadow .2s ease-out;display:block;box-shadow:inset 0 1px 3px #00000014}.line-edit:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-wash), 0 0 24px -6px var(--accent-glow);outline:none}.line-edit::placeholder{color:var(--muted)}.style-option{border:1px solid var(--glass-edge);border-radius:var(--radius);background:var(--fill);cursor:pointer;align-items:center;gap:10px;min-height:40px;padding:0 14px;transition:border-color .15s ease-out,background-color .15s ease-out;display:flex}.style-option--on{border-color:var(--accent);background:var(--accent-wash)}.style-option input{accent-color:var(--accent);margin:0}.style-option:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.style-choice{border:0;flex-direction:column;gap:8px;min-width:0;margin:0;padding:0;display:flex}.style-choice legend{color:var(--muted);margin-bottom:8px;padding:0;font-size:.75rem}.style-choice>.btn{align-self:flex-start}.style-option{align-items:flex-start;padding:10px 14px}.style-option input{margin-top:3px}.style-option-text{flex-direction:column;min-width:0;display:flex}.item-option{flex-wrap:wrap;margin-top:10px}.item-note{color:var(--muted);flex-basis:100%;padding-left:26px;font-size:.8125rem}.style-option-sample{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;overflow:hidden}.picked-list{padding:0;list-style:none}.picked-list li{background:var(--accent-wash);border:1px solid color-mix(in srgb, var(--accent) 35%, transparent);border-radius:var(--radius-sm);text-overflow:ellipsis;white-space:nowrap;margin-bottom:6px;padding:8px 12px;overflow:hidden}.edit-note{color:var(--muted);font-size:.8125rem}.edit-actions{flex-wrap:wrap;gap:8px;display:flex}.panel .error{font-size:.875rem}.changes-list{padding:0;list-style:none}.changes-list li{border-bottom:1px solid var(--line);align-items:center;gap:4px;padding:12px 0;display:flex}.changes-list li:first-child{padding-top:0}.changes-list li:last-child{border-bottom:0}.change-text{flex-direction:column;flex:1;min-width:0;display:flex}.change-text>span:first-child{overflow-wrap:anywhere}.change-meta{color:var(--muted);font-size:.75rem}.change--undone .change-text>span:first-child{color:var(--muted);text-decoration:line-through}.check-summary{overflow-wrap:anywhere}.check-shot figcaption{color:var(--muted);margin-bottom:6px;font-size:.75rem;font-weight:600}.check-frame{box-shadow:0 0 0 1px var(--glass-edge), 0 0 0 5px var(--fill), 0 16px 36px -18px #00000080;background:#fff;border-radius:16px;position:relative;overflow:hidden}.check-frame:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 1px #ffffffe6,inset 0 0 0 1px #0f172a0f}.check-strip{scrollbar-width:none;display:flex;overflow:auto hidden}.check-strip::-webkit-scrollbar{display:none}.check-strip img{background:#fff;flex:none;max-width:none;margin-inline:auto;display:block}@media (width<=1023.98px){.dock>.check-panel{max-height:82dvh}}.page-rail{display:none}@media (width>=1280px){.workspace--rail{grid-template-columns:var(--rail) minmax(0, 1fr) var(--dock)}.workspace--rail .page-rail{border-radius:var(--radius-lg);background:var(--glass);min-height:0;-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);border:1px solid var(--glass-edge);box-shadow:var(--glass-shadow);flex-direction:column;margin-top:12px;display:flex;overflow:hidden}.workspace--rail .page-chip{display:none}}.thumbs{scrollbar-width:thin;flex-direction:column;gap:14px;min-height:0;margin:0;padding:14px 18px;list-style:none;display:flex;overflow-y:auto}.thumbs--grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:14px;padding:2px;display:grid;overflow:visible}.thumb{width:100%;color:var(--muted);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:6px;padding:0;font-size:.75rem;display:flex}.thumb img{width:100%;height:auto;transition:box-shadow .2s ease-out, transform .25s var(--spring);background:#fff;border-radius:3px;display:block;box-shadow:0 0 0 1px #0f172a14,0 8px 18px -10px #00000073}.thumb:hover img{transform:translateY(-2px)}.thumb[aria-current=page]{color:var(--accent);font-weight:600}.thumb[aria-current=page] img{box-shadow:0 0 0 2px var(--accent), 0 0 0 6px var(--accent-wash), 0 10px 24px -8px var(--accent-glow)}.page-chip{top:12px;z-index:4;border:1px solid var(--glass-edge);background:var(--glass-strong);min-height:36px;-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);box-shadow:var(--glass-shadow), var(--float);color:var(--text);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:.8125rem;font-weight:600;display:inline-flex;position:absolute;inset-inline-end:16px}.page-chip[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}@media (pointer:coarse){.page-chip{min-height:40px}}.help-wrap{display:inline-flex;position:relative}.help-hint{top:calc(100% + 12px);z-index:30;border:1px solid color-mix(in srgb, var(--accent) 50%, transparent);background:linear-gradient(180deg, var(--accent-top), var(--accent-bottom));color:#fff;width:max-content;max-width:220px;font:inherit;text-align:start;box-shadow:0 12px 30px -10px var(--accent-glow);cursor:pointer;animation:hint-in .5s var(--spring) .6s both, hint-bob 2.4s ease-in-out 1.2s infinite;border-radius:14px;padding:10px 14px;font-size:.8125rem;font-weight:600;position:absolute;inset-inline-end:-8px}.help-hint:before{content:"";top:-6px;background:var(--accent-top);border-radius:3px 0 0;width:12px;height:12px;position:absolute;inset-inline-end:22px;transform:rotate(45deg)}@keyframes hint-in{0%{opacity:0;transform:translateY(-6px)scale(.9)}}@keyframes hint-bob{50%{transform:translateY(3px)}}.tour{width:100%;max-width:none;height:100%;max-height:none;color:var(--text);background:0 0;border:0;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.tour::backdrop{background:0 0}.tour-spot{box-shadow:0 0 0 2px var(--accent), 0 0 40px 4px var(--accent-glow), 0 0 0 200vmax #03060e9e;pointer-events:none;transition:left .45s var(--ease), top .45s var(--ease), width .45s var(--ease), height .45s var(--ease);border-radius:18px;position:absolute}.tour-card{border:1px solid var(--glass-edge);background:var(--glass-strong);width:min(360px,100vw - 24px);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);box-shadow:var(--glass-shadow), var(--float);opacity:0;transition:left .45s var(--ease), top .45s var(--ease), opacity .25s ease-out;border-radius:24px;padding:20px 20px 16px;position:absolute;top:0;left:0}.tour-card--placed{opacity:1}.tour-dots{gap:5px;margin-bottom:14px;display:flex}.tour-dot{background:var(--line);width:6px;height:6px;box-shadow:inset 0 0 0 1px var(--glass-edge);transition:width .3s var(--ease), background-color .3s ease-out;border-radius:999px}.tour-dot--on{background:linear-gradient(90deg, var(--accent-top), var(--accent-bottom));width:20px}.tour-title{letter-spacing:-.01em;margin:0 0 6px;padding-inline-end:28px;font-size:1.125rem;font-weight:600}.tour-text{color:var(--text-soft);margin:0 0 16px;font-size:.9375rem;line-height:1.55}.tour-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.tour-count{color:var(--muted);font-variant-numeric:tabular-nums;margin-inline-end:auto;font-size:.75rem}.tour-close{top:10px;position:absolute;inset-inline-end:10px}@property --lx{syntax:"<length>";inherits:false;initial-value:-9999px}@property --ly{syntax:"<length>";inherits:false;initial-value:-9999px}@property --cx{syntax:"<length>";inherits:false;initial-value:-9999px}@property --cy{syntax:"<length>";inherits:false;initial-value:-9999px}@media (hover:hover) and (pointer:fine){:is(.bar,.dock>.panel,.landing-bar,.dropzone,.canvas-zoom .zoom-group,.tool,.facts li){background-image:radial-gradient(340px circle at var(--lx) var(--ly), var(--sheen), transparent 70%);position:relative}:is(.bar,.dock>.panel,.landing-bar,.dropzone,.canvas-zoom .zoom-group,.tool,.facts li):before{--lx:inherit;--ly:inherit;content:"";border-radius:inherit;background:radial-gradient(180px circle at var(--lx) var(--ly), var(--rim), transparent 75%);-webkit-mask-composite:xor;pointer-events:none;padding:1px;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.dock>.panel:before{inset:0}.aurora--live{background:radial-gradient(560px circle at var(--cx) var(--cy), var(--cursor-glow), transparent 70%), var(--bg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}}
