:root{--bg:#f2f4f7;--panel:#fff;--border:#d0d5dd;--accent:#2563eb;--danger:#d92d20;--text:#111827;--muted:#667085;--radius:10px;--shadow:0 8px 24px #1018281f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.4}@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;--bg:#0f1115;--panel:#181b21;--border:#2f3541;--accent:#6ea0ff;--danger:#f97066;--text:#e6e8ec;--muted:#9aa3b2;--shadow:0 8px 24px #00000073}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]){--bg:#0f1115;--panel:#181b21;--border:#2f3541;--accent:#6ea0ff;--danger:#f97066;--text:#e6e8ec;--muted:#9aa3b2;--shadow:0 8px 24px #00000073}}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--bg);color:var(--text)}.sa-layer{touch-action:none;position:absolute;inset:0}.sa-layer svg{cursor:crosshair;touch-action:none;pointer-events:all;display:block}.sa-item{fill:color-mix(in srgb, var(--accent,#2563eb) 10%, transparent);stroke:var(--accent,#2563eb);pointer-events:none}.sa-box{fill:none;stroke:var(--accent,#2563eb);pointer-events:none}.sa-band{fill:color-mix(in srgb, var(--accent,#2563eb) 14%, transparent);stroke:var(--accent,#2563eb);stroke-dasharray:4 3;pointer-events:none}.up-wrap{width:100%;max-width:560px;margin:0 auto}.up-zone{text-align:center;border:2px dashed var(--border,#d0d5dd);background:var(--panel,#fff);color:var(--text,#111827);cursor:pointer;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:48px 24px;transition:border-color .15s,background-color .15s;display:flex;position:relative}.up-zone:hover{border-color:var(--accent,#2563eb)}.up-zone:focus-visible{outline:3px solid var(--accent,#2563eb);outline-offset:3px}.up-drag{border-color:var(--accent,#2563eb);background:color-mix(in srgb, var(--accent,#2563eb) 8%, var(--panel,#fff))}.up-error{border-color:var(--danger,#d92d20)}.up-busy{cursor:progress;opacity:.85}.up-input{display:none}.up-icon{color:var(--accent,#2563eb)}.up-title{margin:0;font-size:1.05rem;font-weight:600}.up-hint{color:var(--muted,#667085);margin:0;font-size:.875rem}.up-status{text-align:center;min-height:1.5em;margin-top:12px}.up-status .up-error{color:var(--danger,#d92d20);border:0;margin:0;font-size:.9rem}.up-spinner{border:3px solid var(--border,#d0d5dd);border-top-color:var(--accent,#2563eb);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite up-spin}@keyframes up-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.up-spinner{animation-duration:2s}.up-zone{transition:none}}:root[data-theme=dark] .up-zone{border-color:var(--border,#475467);background:var(--panel,#1d2939);color:var(--text,#f2f4f7)}:root[data-theme=dark] .up-hint{color:var(--muted,#98a2b3)}:root[data-theme=dark] .up-status .up-error{color:var(--danger,#f97066)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .up-zone{border-color:var(--border,#475467);background:var(--panel,#1d2939);color:var(--text,#f2f4f7)}:root:not([data-theme=light]):not([data-theme=dark]) .up-hint{color:var(--muted,#98a2b3)}:root:not([data-theme=light]):not([data-theme=dark]) .up-status .up-error{color:var(--danger,#f97066)}}.dv-scroll{background:var(--canvas-bg,#e4e7ec);overflow-anchor:none;width:100%;height:100%;overflow:auto}.dv-scroll:focus-visible{outline:2px solid var(--accent,#2563eb);outline-offset:-2px}.dv-stage{box-sizing:border-box;flex-direction:column;width:max-content;min-width:100%;padding:0 24px;display:flex}.dv-page{background:#fff;flex:none;margin:0 auto 16px;position:relative;box-shadow:0 1px 3px #10182833,0 8px 24px #1018281f}.dv-canvasbox{position:absolute;inset:0;overflow:hidden}.dv-canvasbox .dv-canvas{width:100%;height:100%;display:block}.dv-layer{pointer-events:auto;position:absolute;top:0;left:0}.dv-error{text-align:center;height:fit-content;color:var(--danger,#d92d20);margin:auto;font-size:.95rem;position:absolute;inset:0}:root[data-theme=dark] .dv-scroll{background:var(--canvas-bg,#101828)}:root[data-theme=dark] .dv-page{box-shadow:0 1px 3px #0009,0 8px 24px #00000080}:root[data-theme=dark] .dv-error{color:var(--danger,#f97066)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .dv-scroll{background:var(--canvas-bg,#101828)}:root:not([data-theme=light]):not([data-theme=dark]) .dv-page{box-shadow:0 1px 3px #0009,0 8px 24px #00000080}:root:not([data-theme=light]):not([data-theme=dark]) .dv-error{color:var(--danger,#f97066)}}.sm-wrap{position:relative}.sm-button{font:inherit;border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;display:inline-flex}.sm-button:hover{border-color:var(--accent)}.sm-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sm-option:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.sm-pop{z-index:950;border:1px solid var(--border);background:var(--panel);width:240px;color:var(--text);box-shadow:var(--shadow);border-radius:12px;padding:12px;position:absolute;top:calc(100% + 6px);right:0}.sm-group{border:0;flex-direction:column;gap:4px;margin:0;padding:0;display:flex}.sm-legend{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;padding:0;font-size:12px;font-weight:600}.sm-option{cursor:pointer;border:1px solid #0000;border-radius:8px;grid-template-columns:1fr;gap:0;padding:8px 10px;display:grid;position:relative}.sm-option:hover{background:color-mix(in srgb, var(--accent) 8%, transparent)}.sm-option--on{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent)}.sm-option input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.sm-label{font-weight:600}.sm-hint{color:var(--muted);font-size:12px}.sm-landing{z-index:900;position:fixed;top:12px;right:16px}.cl-backdrop{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.cl-dialog{background:var(--panel,#fff);width:100%;max-width:440px;color:var(--text,#111827);border:1px solid var(--border,#d0d5dd);border-radius:14px;padding:22px 24px;box-shadow:0 20px 50px #0000004d}.cl-title{align-items:center;gap:10px;margin:0 0 10px;font-size:1.1rem;line-height:1.3;display:flex}.cl-icon{color:#1f2937;background:#f59e0b;border-radius:50%;flex:none;place-items:center;width:24px;height:24px;font-size:.9rem;font-weight:700;display:grid}.cl-body p{color:var(--muted,#667085);margin:0 0 10px;font-size:.9rem;line-height:1.5}.cl-body p:last-child{margin-bottom:0}.cl-actions{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.cl-btn{font:inherit;border:1px solid var(--border,#d0d5dd);color:inherit;cursor:pointer;background:0 0;border-radius:8px;padding:9px 14px;font-weight:600}.cl-btn:hover{border-color:var(--accent,#2563eb)}.cl-btn:focus-visible{outline:3px solid var(--accent,#2563eb);outline-offset:2px}.cl-danger{color:#fff;background:#b42318;border-color:#b42318}.cl-danger:hover{background:#912018;border-color:#912018}.th-panel{background:var(--panel,#fff);border-right:1px solid var(--border,#d0d5dd);flex-direction:column;flex:none;width:112px;height:100%;min-height:0;display:flex}.th-head{border-bottom:1px solid var(--border,#d0d5dd);flex-direction:column;flex:none;gap:6px;padding:8px;display:flex}.th-title{color:var(--muted,#667085);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.th-count{font-variant-numeric:tabular-nums;margin-left:2px;font-weight:500}.th-add{height:28px;font:inherit;color:var(--accent,#2563eb);cursor:pointer;border:1px solid var(--accent,#2563eb);background:color-mix(in srgb, var(--accent,#2563eb) 8%, var(--panel,#fff));border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:0 8px;font-size:.8125rem;font-weight:600;display:inline-flex}.th-add:hover:not(:disabled){background:color-mix(in srgb, var(--accent,#2563eb) 16%, var(--panel,#fff))}.th-add:disabled{opacity:.6;cursor:progress}.th-add:focus-visible,.th-err-x:focus-visible,.th-mini:focus-visible{outline:2px solid var(--accent,#2563eb);outline-offset:1px}.th-err{overflow-wrap:anywhere;max-height:6.5em;color:var(--danger,#b42318);background:color-mix(in srgb, var(--danger,#d92d20) 10%, var(--panel,#fff));border-radius:6px;align-items:flex-start;gap:4px;margin:0;padding:4px 6px;font-size:.6875rem;line-height:1.3;display:flex;overflow-y:auto}.th-err span{flex:1;min-width:0}.th-err-x{color:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;flex:none;padding:0 2px;font-size:1rem;line-height:1}.th-sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.th-rail{box-sizing:border-box;flex-direction:column;flex:1 1 0;align-items:stretch;gap:8px;min-height:0;padding:18px 0 0;display:flex;position:relative;overflow:hidden auto}.th-end{flex:1 0 auto;min-height:28px}.th-item{border-radius:var(--radius,10px);color:var(--muted,#667085);font:inherit;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:none;align-items:center;gap:4px;margin:0;padding:4px;display:flex}.th-item:hover{background:color-mix(in srgb, var(--accent,#2563eb) 8%, transparent)}.th-item:focus-visible{outline:3px solid var(--accent,#2563eb);outline-offset:1px}.th-frame{box-sizing:content-box;border:2px solid var(--border,#d0d5dd);background:#fff;border-radius:4px;display:block;position:relative;box-shadow:0 1px 2px #10182826}.th-canvas{border-radius:2px;position:absolute;inset:0;overflow:hidden}.th-canvas canvas{width:100%;height:100%;display:block}.th-active .th-frame{border-color:var(--accent,#2563eb);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent,#2563eb) 30%, transparent)}.th-active{color:var(--text,#111827);font-weight:600}.th-num{font-variant-numeric:tabular-nums;font-size:.75rem;line-height:1}.th-badge{box-sizing:border-box;background:var(--accent,#2563eb);color:#fff;text-align:center;border-radius:9px;min-width:18px;height:18px;padding:0 5px;font-size:.6875rem;font-weight:600;line-height:18px;position:absolute;top:-8px;right:-8px}:root[data-theme=dark] .th-frame{box-shadow:0 1px 2px #00000080}:root[data-theme=dark] .th-badge{color:#0f1115}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .th-frame{box-shadow:0 1px 2px #00000080}:root:not([data-theme=light]):not([data-theme=dark]) .th-badge{color:#0f1115}}.th-cell{flex:none;justify-content:center;display:flex;position:relative}.th-cell[draggable=true]{cursor:grab}.th-dragging{opacity:.4}.th-line-before:before,.th-line-after:after{content:"";z-index:2;background:var(--accent,#2563eb);height:4px;box-shadow:0 0 0 2px color-mix(in srgb, var(--accent,#2563eb) 25%, transparent);pointer-events:none;border-radius:2px;position:absolute;left:8px;right:8px}.th-line-before:before{top:-6px}.th-line-after:after{bottom:-6px}.th-end-on:before{content:none}.th-tag{z-index:3;white-space:nowrap;pointer-events:none;background:var(--accent,#2563eb);color:#fff;border-radius:999px;padding:1px 7px;font-size:.6875rem;font-weight:600;position:absolute;left:50%;transform:translate(-50%)}.th-line-before>.th-tag{top:-13px}.th-line-after>.th-tag{bottom:-13px}:root[data-theme=dark] .th-tag{color:#0f1115}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .th-tag{color:#0f1115}}.th-mini{border:1px solid var(--border,#d0d5dd);background:var(--panel,#fff);width:22px;height:22px;color:var(--muted,#667085);cursor:pointer;opacity:0;border-radius:6px;place-items:center;padding:0;transition:opacity .12s;display:grid}.th-rot{flex-direction:column;gap:4px;display:flex;position:absolute;top:4px;left:6px}.th-delete{position:absolute;top:4px;right:6px}.th-cell:hover .th-mini,.th-cell:focus-within .th-mini{opacity:1}.th-dragging .th-mini{opacity:0}.th-mini:hover{color:var(--accent,#2563eb);border-color:var(--accent,#2563eb)}.th-delete:hover{color:#b42318;border-color:#b42318}@media (hover:none){.th-mini{opacity:1}}.th-menu{z-index:1000;background:var(--panel,#fff);min-width:190px;color:var(--text,#111827);border:1px solid var(--border,#d0d5dd);border-radius:var(--radius,10px);box-shadow:var(--shadow,0 8px 24px #1018281f);flex-direction:column;padding:4px;display:flex;position:fixed}.th-menu-item{font:inherit;text-align:left;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:8px 10px;font-size:.875rem}.th-menu-item:hover{background:color-mix(in srgb, var(--accent,#2563eb) 10%, transparent)}.th-menu-item:focus-visible{outline:2px solid var(--accent,#2563eb);outline-offset:-2px;background:color-mix(in srgb, var(--accent,#2563eb) 10%, transparent)}.th-add[aria-expanded=true]{background:color-mix(in srgb, var(--accent,#2563eb) 18%, var(--panel,#fff))}.th-panel--wide{width:216px}.th-wide{height:24px;font:inherit;color:var(--muted,#667085);cursor:pointer;border:1px solid var(--border,#d0d5dd);background:0 0;border-radius:6px;padding:0 8px;font-size:.75rem}.th-wide:hover{color:var(--text,#111827)}.th-wide:focus-visible{outline:2px solid var(--accent,#2563eb);outline-offset:1px}.th-multi{flex-direction:column;gap:4px;padding:0 6px 6px;display:flex}.th-actions{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.th-count{width:100%;font-size:.72rem;font-weight:600}.th-actions .th-mini,.th-selbtn{opacity:1;width:auto;min-width:28px;min-height:28px;padding:0 8px;font-size:.72rem;position:static}.th-selbtn--on{background:var(--accent);color:#fff}.th-picked .th-frame{outline:3px solid var(--accent);outline-offset:2px}@media (pointer:coarse){.th-actions .th-mini,.th-selbtn{min-width:40px;min-height:40px}}.ln{flex-direction:column;gap:40px;max-width:1080px;margin:0 auto;padding:32px 20px 56px;display:flex}.ln-hero{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:32px;display:grid}.ln-copy{flex-direction:column;gap:14px;min-width:0;display:flex}.ln h1{letter-spacing:-.02em;margin:0;font-size:clamp(1.7rem,4.4vw,2.6rem);line-height:1.12}.ln-sub{color:var(--muted);max-width:34em;margin:0;font-size:1.05rem;line-height:1.5}.ln-drop{margin-top:8px}.ln-drop .up-wrap{max-width:none;margin:0}.ln-drop .up-zone{padding:34px 20px}.ln-features{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.ln-card{border:1px solid var(--border);background:var(--panel);border-radius:14px;flex-direction:column;gap:6px;padding:18px;display:flex}.ln-card svg{color:var(--accent)}.ln-card h2{margin:4px 0 0;font-size:1rem}.ln-card p{color:var(--muted);margin:0;font-size:.875rem;line-height:1.5}.ln-trust{background:color-mix(in srgb, var(--accent) 7%, var(--panel));border:1px solid var(--border);border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:18px;display:grid}.ln-trust div{flex-direction:column;gap:2px;display:flex}.ln-trust span{color:var(--muted);font-size:.875rem}@media (width<=860px){.ln-hero{grid-template-columns:minmax(0,1fr)}.ln-features{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.ln{gap:28px;padding:20px 16px 40px}.ln-features,.ln-trust{grid-template-columns:minmax(0,1fr)}}.logo{align-items:center;gap:8px;display:inline-flex}.logo-name{letter-spacing:-.03em;white-space:nowrap;font-size:1.1em;font-weight:800}.logo-accent{color:var(--accent)}.ln-copy .logo{font-size:1.7rem}.ln-privacy{border:1px solid var(--border);background:var(--panel);border-radius:14px;padding:22px}.ln-privacy h2{margin:0 0 12px;font-size:1.15rem}.ln-privacy-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.ln-privacy h3{color:var(--accent);margin:0 0 4px;font-size:.95rem}.ln-privacy p{color:var(--muted);margin:0;font-size:.875rem;line-height:1.5}@media (width<=860px){.ln-privacy-grid{grid-template-columns:minmax(0,1fr)}}.lh{justify-self:center;width:100%;max-width:520px}.lh svg{width:100%;height:auto;display:block;overflow:visible}.lh-paper{fill:var(--panel);stroke:var(--border)}.lh-head{letter-spacing:.08em;fill:var(--muted);font:700 13px Segoe UI,system-ui,sans-serif}.lh-rule{fill:var(--border)}.lh-label{fill:var(--muted);font:500 13px Segoe UI,system-ui,sans-serif}.lh-text{fill:var(--text);font:600 15px Segoe UI,system-ui,sans-serif}.lh-line{fill:var(--border)}.lh-bar{fill:#0b0d12;stroke:var(--border);stroke-width:1px}.lh-find{fill:#facc1547;stroke:#d99a00;stroke-width:1.5px;opacity:0}.lh-found{opacity:0}.lh-chip{fill:#d99a00}.lh-chip-text{fill:#111827;font:700 12px Segoe UI,system-ui,sans-serif}.lh-badge-bg{fill:color-mix(in srgb, #16a34a 14%, var(--panel));stroke:#16a34a;stroke-width:1.5px}.lh-badge-icon{fill:none;stroke:#16a34a;stroke-width:1.8px;stroke-linejoin:round}.lh-badge-tick{fill:none;stroke:#16a34a;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.lh-badge-text{fill:var(--text);font:700 13px Segoe UI,system-ui,sans-serif}.lh-dot{fill:var(--border)}.lh-dot-text{fill:var(--text);font:700 13px Segoe UI,system-ui,sans-serif}.lh-step-text{fill:var(--muted);font:600 14px Segoe UI,system-ui,sans-serif}.lh-step3 .lh-dot{fill:var(--accent)}.lh-step3 .lh-dot-text{fill:#fff}.lh-step3 .lh-step-text{fill:var(--text)}.lh-device-line{stroke:var(--border);stroke-width:1px}.lh-device-text{fill:var(--muted);font:600 12.5px Segoe UI,system-ui,sans-serif}.lh .lh-bar{transform-box:fill-box;transform-origin:0}@media (prefers-reduced-motion:no-preference){.lh *{animation-duration:12s;animation-timing-function:ease-in-out;animation-iteration-count:infinite}.lh[data-paused=true] *{animation-play-state:paused}.lh-find{animation-name:lh-find}.lh-found{animation-name:lh-found}.lh-r1 .lh-bar{animation-name:lh-bar1}.lh-r2 .lh-bar{animation-name:lh-bar2}.lh-r3 .lh-bar{animation-name:lh-bar3}.lh-badge{animation-name:lh-badge}.lh-step1{animation-name:lh-s1}.lh-step2{animation-name:lh-s2}.lh-step3{animation-name:lh-s3}}.lh-step{opacity:.45}.lh-step3{opacity:1}@keyframes lh-find{0%,6%{opacity:0}12%,36%{opacity:1}42%,to{opacity:0}}@keyframes lh-found{0%,14%{opacity:0}18%,36%{opacity:1}40%,to{opacity:0}}@keyframes lh-bar1{0%,38%{transform:scaleX(0)}46%,94%{transform:scaleX(1)}98%,to{transform:scaleX(0)}}@keyframes lh-bar2{0%,44%{transform:scaleX(0)}52%,94%{transform:scaleX(1)}98%,to{transform:scaleX(0)}}@keyframes lh-bar3{0%,50%{transform:scaleX(0)}58%,94%{transform:scaleX(1)}98%,to{transform:scaleX(0)}}@keyframes lh-badge{0%,64%{opacity:0;transform:translateY(6px)}72%,94%{opacity:1;transform:translateY(0)}98%,to{opacity:0}}@keyframes lh-s1{0%,34%{opacity:1}38%,to{opacity:.45}}@keyframes lh-s2{0%,34%{opacity:.45}40%,62%{opacity:1}66%,to{opacity:.45}}@keyframes lh-s3{0%,62%{opacity:.45}68%,94%{opacity:1}98%,to{opacity:.45}}.ln-drop .app-landing-version{text-align:left;color:var(--muted);margin:10px 0 0;font-size:12px}@media (width<=520px){.ln{padding-top:64px}}.app-landing-tool{max-width:560px;color:var(--muted);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 12px;margin:14px auto 0;font-size:.85rem;display:flex}.app-landing-xl{min-height:40px;font:inherit;color:inherit;border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;padding:0 14px;font-weight:600}.app-landing-xl:hover{border-color:var(--accent,#2563eb)}.app-dev-badge{letter-spacing:.03em;text-transform:uppercase;color:#1f1300;vertical-align:middle;background:#f59e0b;border-radius:999px;margin-left:6px;padding:2px 7px;font-size:.68rem;font-style:normal;font-weight:700}.sg-back{z-index:950;background:#00000073;place-items:center;padding:12px;display:grid;position:fixed;inset:0}.sg-box{background:var(--panel);width:min(620px,100%);max-height:92dvh;color:var(--text);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:10px;padding:16px 18px;display:flex;overflow:auto}.sg-box h2{margin:0;font-size:1.1rem}.sg-box h3{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:6px 0 0;font-size:.8rem}.sg-tabs{gap:4px;display:flex}.sg-tab{min-height:40px;font:inherit;border:1px solid var(--border);color:inherit;cursor:pointer;background:0 0;border-radius:8px;padding:0 16px;font-weight:600}.sg-tab--on{background:var(--accent);border-color:var(--accent);color:#fff}.sg-colours{gap:8px;display:flex}.sg-colour{border:2px solid var(--border);cursor:pointer;border-radius:50%;width:32px;height:32px}.sg-colour--on{outline:3px solid var(--accent);outline-offset:2px}.sg-pane{flex-direction:column;gap:8px;display:flex}.sg-pane label{flex-direction:column;gap:4px;font-size:.85rem;font-weight:600;display:flex}.sg-pane input[type=text]{height:40px;font:inherit;border:1px solid var(--border);background:var(--panel);color:inherit;border-radius:8px;padding:0 10px}.sg-preview,.sg-pad{border:1px dashed var(--border);background:color-mix(in srgb, var(--panel) 92%, #888);border-radius:10px;width:100%;height:auto}.sg-pad{touch-action:none;cursor:crosshair;aspect-ratio:7/2}.sg-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sg-row--end{justify-content:flex-end}.sg-hint{color:var(--muted);margin:0;font-size:.8rem}.sg-error{color:var(--danger,#b42318);margin:0;font-size:.85rem}.sg-box .app-button{min-height:40px}.sg-pane textarea,.sg-pane select{font:inherit;border:1px solid var(--border);background:var(--panel);color:inherit;border-radius:8px;min-height:40px;padding:6px 10px}.sg-pane input[type=checkbox]{width:22px;height:22px}.xl-box{width:min(760px,100%)}.xl-drop{border:2px dashed var(--border);border-radius:12px;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;padding:18px;display:flex}.xl-file{overflow-wrap:anywhere}.xl-check{align-items:center;flex-direction:row!important;gap:8px!important;font-weight:500!important}.xl-scroll{border:1px solid var(--border);border-radius:8px;max-height:40dvh;overflow:auto}.xl-table{border-collapse:collapse;width:100%;font-size:.82rem}.xl-table th,.xl-table td{border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;padding:5px 9px}.xl-table th{background:color-mix(in srgb, var(--panel) 88%, #888);position:sticky;top:0}.xl-table td.xl-num{text-align:right;font-variant-numeric:tabular-nums}.xl-checks{flex-direction:column;gap:6px;margin:0;padding:0;font-size:.85rem;list-style:none;display:flex}.xl-ok strong{color:var(--text)}.xl-bad strong{color:var(--danger,#b42318)}.xl-result{flex-direction:column;gap:8px;display:flex}.xl-badge{letter-spacing:.03em;text-transform:uppercase;vertical-align:middle;color:#92400e;background:#fef3c7;border:1px solid #f59e0b;border-radius:999px;margin-left:8px;padding:2px 8px;font-size:.7rem;font-weight:700}.xl-warn{background:color-mix(in srgb, #f59e0b 16%, var(--panel));background:color-mix(in srgb, #f59e0b 14%, var(--panel));border:1px solid #d97706;border-radius:8px;margin:0;padding:8px 10px;font-size:.82rem}.ink-layer{touch-action:none;position:absolute;inset:0}.ink-layer svg{cursor:crosshair;touch-action:none;pointer-events:all;display:block}.sc-back{z-index:950;background:#00000073;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.sc-box{background:var(--panel);width:min(560px,100%);max-height:86dvh;color:var(--text);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:8px;padding:18px 20px;display:flex;overflow:auto}.sc-box h2{margin:0;font-size:1.1rem}.sc-box h3{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:10px 0 4px;font-size:.8rem}.sc-box dl{flex-direction:column;gap:4px;margin:0;display:flex}.sc-box dl div{grid-template-columns:minmax(150px,220px) 1fr;gap:10px;font-size:.875rem;display:grid}.sc-box dt,.sc-box dd{margin:0}.sc-box kbd{font:inherit;border:1px solid var(--border);background:var(--bg);border-radius:5px;padding:1px 6px;font-size:.8rem}.sc-box .app-button{align-self:flex-end;margin-top:8px}@media (width<=520px){.sc-box dl div{grid-template-columns:1fr;gap:2px}}.pc-bar{background:var(--panel,#fff);color:var(--text,#111827);border-bottom:1px solid var(--border,#d0d5dd);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 20px;padding:8px 12px;display:flex}.pc-group{align-items:center;gap:6px;display:flex}.pc-btn,.pc-input,.pc-select{height:34px;font:inherit;color:inherit;border:1px solid var(--border,#d0d5dd);background:var(--panel,#fff);border-radius:8px}.pc-btn{cursor:pointer;min-width:34px;padding:0 10px;font-size:1.2rem;line-height:1}.pc-btn.pc-text{font-size:.875rem}.pc-btn:hover:not(:disabled){border-color:var(--accent,#2563eb)}.pc-btn:disabled{opacity:.4;cursor:not-allowed}.pc-input{text-align:center;width:52px;padding:0 6px}.pc-select{padding:0 6px}.pc-total{color:var(--muted,#667085);white-space:nowrap;font-size:.875rem}.pc-pct{text-align:center;font-variant-numeric:tabular-nums;min-width:3.5em;font-size:.9rem}.pc-btn:focus-visible,.pc-input:focus-visible,.pc-select:focus-visible{outline:3px solid var(--accent,#2563eb);outline-offset:2px}.pc-sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.pc-icon{justify-content:center;align-items:center;padding:0 8px;display:inline-flex}.pc-icon[aria-pressed=true]{background:var(--accent,#2563eb);border-color:var(--accent,#2563eb);color:#fff}.pc-seg{border:1px solid var(--border,#d0d5dd);border-radius:8px;height:34px;display:inline-flex;overflow:hidden}.pc-segbtn{background:var(--panel,#fff);color:var(--muted,#667085);font:inherit;cursor:pointer;border:0;align-items:center;gap:6px;padding:0 10px;font-size:.875rem;display:inline-flex}.pc-segbtn+.pc-segbtn{border-left:1px solid var(--border,#d0d5dd)}.pc-segbtn:hover{color:var(--text,#111827)}.pc-segbtn[aria-pressed=true]{background:color-mix(in srgb, var(--accent,#2563eb) 14%, var(--panel,#fff));color:var(--accent,#2563eb);font-weight:600}.pc-segbtn:focus-visible{outline:3px solid var(--accent,#2563eb);outline-offset:-3px}@media (width<=520px){.pc-segbtn span{display:none}}:root[data-theme=dark] .pc-icon[aria-pressed=true]{color:#0f1115}:root[data-theme=dark] .pc-segbtn{background:var(--panel,#1d2939)}:root[data-theme=dark] .pc-bar{background:var(--panel,#1d2939);color:var(--text,#f2f4f7);border-color:var(--border,#475467)}:root[data-theme=dark] .pc-btn,:root[data-theme=dark] .pc-input,:root[data-theme=dark] .pc-select{background:var(--panel,#1d2939);border-color:var(--border,#475467)}:root[data-theme=dark] .pc-total{color:var(--muted,#98a2b3)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .pc-icon[aria-pressed=true]{color:#0f1115}:root:not([data-theme=light]):not([data-theme=dark]) .pc-segbtn{background:var(--panel,#1d2939)}:root:not([data-theme=light]):not([data-theme=dark]) .pc-bar{background:var(--panel,#1d2939);color:var(--text,#f2f4f7);border-color:var(--border,#475467)}:root:not([data-theme=light]):not([data-theme=dark]) .pc-btn,:root:not([data-theme=light]):not([data-theme=dark]) .pc-input,:root:not([data-theme=light]):not([data-theme=dark]) .pc-select{background:var(--panel,#1d2939);border-color:var(--border,#475467)}:root:not([data-theme=light]):not([data-theme=dark]) .pc-total{color:var(--muted,#98a2b3)}}.pc-danger{place-items:center;display:inline-grid}.pc-danger:hover:not(:disabled){color:#b42318;border-color:#b42318}.tb-toolbar{box-sizing:border-box;scrollbar-width:thin;background:var(--panel,#fff);border:1px solid var(--border,#d0d5dd);border-radius:var(--radius,10px);height:44px;color:var(--text,#111827);flex-wrap:nowrap;align-items:center;gap:8px;padding:0 8px;display:flex;overflow:auto hidden}.tb-group{flex:none;align-items:center;gap:2px;display:flex}.tb-sep{background:var(--border,#d0d5dd);flex:none;width:1px;height:22px}.tb-btn,:is(.tb-chev,.tb-cmt-chev),:is(.tb-shape,.tb-cmt-main),.tb-text,.tb-add{font:inherit;color:var(--muted,#667085);cursor:pointer;background:0 0;border:1px solid #0000;transition:background .12s,color .12s,border-color .12s}.tb-btn{border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:inline-flex}.tb-btn:hover:not(:disabled),:is(.tb-chev,.tb-cmt-chev):hover,:is(.tb-shape,.tb-cmt-main):hover,.tb-text:hover,.tb-add:hover:not(:disabled){color:var(--text,#111827);background:#7f7f7f24}.tb-btn:focus-visible,:is(.tb-chev,.tb-cmt-chev):focus-visible,:is(.tb-shape,.tb-cmt-main):focus-visible,.tb-text:focus-visible,.tb-cell:focus-visible,.tb-add:focus-visible{outline:2px solid var(--accent,#2563eb);outline-offset:1px}.tb-btn:disabled{opacity:.38;cursor:not-allowed}.tb-btn[aria-pressed=true],.tb-btn[aria-pressed=true]:hover:not(:disabled),.tb-add[aria-pressed=true],.tb-add[aria-pressed=true]:hover:not(:disabled){background:color-mix(in srgb, var(--accent,#2563eb) 14%, transparent);color:var(--accent,#2563eb);border-color:color-mix(in srgb, var(--accent,#2563eb) 55%, transparent)}.tb-split{border:1px solid #0000;border-radius:8px;align-items:center;height:32px;display:inline-flex}.tb-split--active{background:color-mix(in srgb, var(--accent,#2563eb) 14%, transparent);border-color:color-mix(in srgb, var(--accent,#2563eb) 55%, transparent);color:var(--accent,#2563eb)}.tb-split--active :is(.tb-shape,.tb-cmt-main),.tb-split--active :is(.tb-chev,.tb-cmt-chev){color:var(--accent,#2563eb)}:is(.tb-shape,.tb-cmt-main){white-space:nowrap;border-radius:7px 0 0 7px;align-items:center;gap:6px;height:100%;padding:0 4px 0 7px;font-size:13px;font-weight:500;display:inline-flex}.tb-shape-name{text-overflow:ellipsis;max-width:120px;overflow:hidden}:is(.tb-chev,.tb-cmt-chev){border-radius:0 7px 7px 0;justify-content:center;align-items:center;width:22px;height:100%;padding:0;display:inline-flex}:is(.tb-chev,.tb-cmt-chev)[aria-expanded=true] svg{transform:rotate(180deg)}.tb-text{white-space:nowrap;border-radius:8px;height:28px;margin-left:4px;padding:0 10px;font-size:13px;font-weight:500}.tb-btn--danger:hover:not(:disabled),.tb-text.tb-btn--danger:hover{color:#dc2626}.tb-pop{z-index:1000;box-sizing:border-box;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:thin;background:var(--panel,#fff);max-width:calc(100vw - 16px);max-height:min(70vh,100vh - 16px);color:var(--text,#111827);border:1px solid var(--border,#d0d5dd);border-radius:var(--radius,10px);box-shadow:var(--shadow,0 8px 24px #1018281f);position:fixed;overflow-y:auto}.tb-sec{padding:0 8px 6px}.tb-pop-title{z-index:1;letter-spacing:.06em;text-transform:uppercase;color:var(--muted,#667085);background:var(--panel,#fff);border-bottom:1px solid color-mix(in srgb, var(--border,#d0d5dd) 60%, transparent);margin:0 -8px 4px;padding:8px 10px 5px;font-size:11px;font-weight:600;position:sticky;top:0}.tb-grid{grid-template-columns:repeat(8,32px);gap:2px;padding-top:4px;display:grid}.tb-cell{width:32px;height:32px;color:var(--text,#111827);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;padding:0;scroll-margin-top:36px;scroll-margin-bottom:6px;transition:background .12s,border-color .12s;display:inline-flex}.tb-cell:hover{background:#7f7f7f29}.tb-cell--active,.tb-cell--active:hover{background:color-mix(in srgb, var(--accent,#2563eb) 14%, transparent);color:var(--accent,#2563eb);border-color:var(--accent,#2563eb)}.tb-add{white-space:nowrap;border-radius:8px;align-items:center;gap:6px;height:32px;padding:0 9px;font-size:13px;font-weight:500;display:inline-flex}.tb-add:disabled{opacity:.45;cursor:progress}@media (width<=1100px){.tb-comment-name{display:none}.tb-cmt-main{padding-right:2px}.tb-recent,.tb-add-name{display:none}.tb-add{justify-content:center;width:32px;padding:0}}@media (width<=900px){.tb-recent{display:none}}@media (width<=640px){.tb-shape-name{display:none}:is(.tb-shape,.tb-cmt-main){padding-right:2px}}@media (prefers-reduced-motion:reduce){.tb-btn,:is(.tb-chev,.tb-cmt-chev),:is(.tb-shape,.tb-cmt-main),.tb-text,.tb-cell,.tb-add{transition:none}}.tb-kind{background:#7f7f7f24;border-radius:9px;gap:2px;padding:2px;display:inline-flex}.tb-kind-btn{height:28px;font:inherit;color:var(--muted,#667085);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:7px;padding:0 12px;font-size:13px;font-weight:600}.tb-kind-btn:hover:not([aria-pressed=true]){color:var(--text,#111827)}.tb-kind-btn:focus-visible{outline:2px solid var(--accent,#2563eb);outline-offset:1px}.tb-kind-btn[aria-pressed=true]{color:var(--accent,#2563eb);background:var(--panel,#fff);border-color:color-mix(in srgb, var(--accent,#2563eb) 55%, transparent)}.tb-kind-btn--redact[aria-pressed=true]{color:var(--danger,#d92d20);border-color:color-mix(in srgb, var(--danger,#d92d20) 65%, transparent);background:color-mix(in srgb, var(--danger,#d92d20) 10%, var(--panel,#fff))}.tb-grid--comment{grid-template-columns:repeat(7,32px)}.se-svg{touch-action:none;-webkit-user-select:none;user-select:none;outline:none;display:block;position:absolute;inset:0;overflow:visible}.se-svg--draw{cursor:crosshair}.se-svg--select{cursor:default}.se-mask{fill:var(--se-dim,#080c148c);pointer-events:none}.se-mask--cut{fill:var(--se-cut,#dc262661)}.se-outline-under,.se-outline,.se-poly-line-under,.se-poly-line{fill:none;pointer-events:none;vector-effect:non-scaling-stroke;stroke-linejoin:round}.se-outline-under,.se-poly-line-under{stroke:var(--se-outline-under,#fff);stroke-width:3px;opacity:.9}.se-outline,.se-poly-line{stroke:var(--se-outline,#111827);stroke-width:1.5px;stroke-dasharray:6 4}.se-outline--selected{stroke:var(--se-outline-selected,var(--se-outline,#111827));stroke-width:2.25px}.se-body{fill:#0000;stroke:none;cursor:move;pointer-events:all}.se-bbox{fill:none;stroke:var(--accent,#2563eb);stroke-width:1px;opacity:.6;pointer-events:none;vector-effect:non-scaling-stroke}.se-edge-hit{stroke:#0000;stroke-width:12px;vector-effect:non-scaling-stroke;pointer-events:stroke;cursor:move}.se-handle,.se-vertex,.se-poly-point{fill:var(--panel,#fff);stroke:var(--accent,#2563eb);stroke-width:1.5px;vector-effect:non-scaling-stroke;pointer-events:all}.se-vertex{cursor:grab}.se-vertex:hover,.se-handle:hover{fill:var(--accent,#2563eb)}.se-radius-handle{fill:var(--accent,#2563eb);stroke:var(--panel,#fff);stroke-width:1.5px;vector-effect:non-scaling-stroke;cursor:ew-resize;pointer-events:all}.se-poly-point{pointer-events:none}.se-poly-point--close{fill:var(--accent,#2563eb)}.se-badge{pointer-events:none}.se-badge-bg{fill:var(--accent,#2563eb);stroke:var(--panel,#fff);stroke-width:1.5px;vector-effect:non-scaling-stroke;pointer-events:none}.se-badge-text{fill:var(--se-badge-text,#fff);text-anchor:middle;dominant-baseline:central;pointer-events:none;-webkit-user-select:none;user-select:none;font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-weight:700}.se-svg[data-tool=select]{cursor:default}.se-svg[data-tool=freehand]{cursor:crosshair}.se-live{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.se-fill,.se-redact-fill{pointer-events:none}.se-outline--redact,.se-poly-line--redact{stroke:var(--danger,#d92d20);stroke-width:2px;stroke-dasharray:7 4}.se-outline--redact.se-outline--selected{stroke-width:3px}.se-redact-tag{pointer-events:none}.se-redact-tag-bg{fill:var(--danger,#d92d20);stroke:#fff;stroke-width:1px;vector-effect:non-scaling-stroke}.se-redact-tag-text{fill:#fff;letter-spacing:.04em;text-anchor:middle;dominant-baseline:central;-webkit-user-select:none;user-select:none;font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-weight:700}:root[data-theme=dark] .se-redact-tag-bg{fill:#b42318;stroke:#fff}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .se-redact-tag-bg{fill:#b42318;stroke:#fff}}.ptp{min-width:0;color:var(--text,#111827);border:0;flex-direction:column;gap:6px;margin:0;padding:0;font-size:13px;display:flex}.ptp *,.ptp :before,.ptp :after{box-sizing:border-box}.ptp-label{float:left;width:100%;margin-bottom:6px;padding:0;font-size:12.5px;font-weight:600}.ptp-label+*{clear:both}.ptp-label--hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.ptp-seg{background:#64748b24;border-radius:8px;gap:2px;padding:2px;display:flex}.ptp-chip{text-align:center;white-space:nowrap;min-width:0;min-height:28px;color:var(--muted,#667085);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:6px;flex:1 1 0;justify-content:center;align-items:center;padding:3px 4px;font-size:12.5px;font-weight:500;display:flex;position:relative}.ptp-chip input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.ptp-chip:hover:not(.ptp-chip--on){color:var(--text,#111827)}.ptp-chip--on{color:var(--text,#111827);background:var(--panel,#fff);box-shadow:0 0 0 1px var(--border,#d0d5dd), 0 1px 2px #10182814}.ptp-chip:has(input:focus-visible){outline:2px solid var(--accent,#2563eb);outline-offset:1px}.ptp-range{align-items:center;gap:8px;display:flex}.ptp-field{color:var(--muted,#667085);align-items:center;gap:6px;font-size:12.5px;display:flex}.ptp-field input,.ptp-text{min-height:30px;font:inherit;color:var(--text,#111827);border:1px solid var(--border,#d0d5dd);background:0 0;border-radius:7px;padding:4px 8px}.ptp-field input{width:64px}.ptp-text{width:100%}.ptp-field input:focus-visible,.ptp-text:focus-visible{outline:2px solid var(--accent,#2563eb);outline-offset:1px}.ptp-text--bad{border-color:#b42318}.ptp-of{color:var(--muted,#667085);font-size:12.5px}.ptp-specific{flex-direction:column;gap:4px;display:flex}.ptp-error{color:#b42318;margin:0;font-size:12px}:root[data-theme=dark]:not([data-theme=light]) .ptp-error{color:#fda29b}:root[data-theme=dark]:not([data-theme=light]) .ptp-text--bad{border-color:#fda29b}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]):not([data-theme=light]) .ptp-error{color:#fda29b}:root:not([data-theme=light]):not([data-theme=dark]):not([data-theme=light]) .ptp-text--bad{border-color:#fda29b}}:root[data-theme=dark] .ptp-error{color:#fda29b}:root[data-theme=dark] .ptp-text--bad{border-color:#fda29b}.xd-backdrop{z-index:1000;background:#0a0e168c;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.xd{--xd-track:#64748b24;--xd-sunken:#f6f7f9;--xd-danger:#b42318;--xd-ok-fg:#166534;--xd-ok-bg:#dcfce7;--xd-warn-fg:#92400e;--xd-warn-bg:#fef3c7;--xd-check-a:#d9dce1;--xd-check-b:#fff;--xd-on-accent:#fff;background:var(--panel,#fff);width:min(980px,100%);height:min(820px,100%);max-height:100%;color:var(--text,#111827);border:1px solid var(--border,#d0d5dd);box-shadow:var(--shadow,0 8px 24px #10182833);border-radius:16px;outline:none;flex-direction:column;font-size:14px;line-height:1.45;display:flex;overflow:hidden}:root[data-theme=dark]:not([data-theme=light]) .xd{--xd-track:#94a3b829;--xd-sunken:#1e222a;--xd-danger:#fda29b;--xd-ok-fg:#86efac;--xd-ok-bg:#22c55e29;--xd-warn-fg:#fde68a;--xd-warn-bg:#f59e0b2e;--xd-check-a:#3a3f4a;--xd-check-b:#262a32;--xd-on-accent:#0b1220}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]):not([data-theme=light]) .xd{--xd-track:#94a3b829;--xd-sunken:#1e222a;--xd-danger:#fda29b;--xd-ok-fg:#86efac;--xd-ok-bg:#22c55e29;--xd-warn-fg:#fde68a;--xd-warn-bg:#f59e0b2e;--xd-check-a:#3a3f4a;--xd-check-b:#262a32;--xd-on-accent:#0b1220}}:root[data-theme=dark] .xd{--xd-track:#94a3b829;--xd-sunken:#1e222a;--xd-danger:#fda29b;--xd-ok-fg:#86efac;--xd-ok-bg:#22c55e29;--xd-warn-fg:#fde68a;--xd-warn-bg:#f59e0b2e;--xd-check-a:#3a3f4a;--xd-check-b:#262a32;--xd-on-accent:#0b1220}.xd *,.xd :before,.xd :after{box-sizing:border-box}.xd-sr{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.xd-head{border-bottom:1px solid var(--border,#d0d5dd);flex:none;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 22px 12px;display:flex}.xd-head-text{min-width:0}.xd-title{letter-spacing:-.01em;margin:0;font-size:18px;font-weight:700}.xd-facts{color:var(--muted,#667085);font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:12.5px}.xd-x{width:32px;height:32px;color:var(--muted,#667085);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;display:grid}.xd-x:hover:not(:disabled){background:var(--xd-track);color:var(--text,#111827)}.xd-x:disabled{opacity:.4;cursor:not-allowed}.xd-scroll{overscroll-behavior:contain;flex:auto;min-height:0;padding:18px 22px 20px;overflow-y:auto}.xd-cols{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:24px;display:grid}.xd-main{flex-direction:column;gap:26px;min-width:0;display:flex;container-type:inline-size}.xd-step{flex-direction:column;gap:12px;min-width:0;display:flex}.xd-step-h{align-items:center;gap:10px;margin:0;font-size:15px;font-weight:700;display:flex}.xd-step-n{font-variant-numeric:tabular-nums;width:24px;height:24px;color:var(--accent,#2563eb);background:color-mix(in srgb, var(--accent,#2563eb) 14%, transparent);border-radius:999px;flex:none;place-items:center;font-size:12.5px;font-weight:700;display:grid}.xd-step-hint{color:var(--muted,#667085);margin:-6px 0 0;font-size:12.5px}.xd-set{border:0;flex-direction:column;gap:8px;min-width:0;margin:0;padding:0;display:flex}.xd-legend{color:var(--muted,#667085);align-items:center;gap:8px;margin:0 0 8px;padding:0;font-size:12.5px;font-weight:600;display:flex}.xd-info{color:var(--muted,#667085);align-items:flex-start;gap:8px;margin:0;font-size:12.5px;display:flex}.xd-info svg{flex:none;margin-top:2px}.xd-cards{gap:10px;min-width:0;display:grid}.xd-cards--2{grid-template-columns:repeat(2,minmax(0,1fr))}@container (width<=520px){.xd-cards--2{grid-template-columns:minmax(0,1fr)}}.xd-card{background:var(--panel,#fff);border:1px solid var(--border,#d0d5dd);cursor:pointer;border-radius:12px;align-items:flex-start;gap:12px;min-width:0;padding:12px 42px 12px 12px;transition:border-color .12s,background-color .12s,box-shadow .12s;display:flex;position:relative}.xd-card input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.xd-card:hover:not(.xd-card--disabled):not(.xd-card--on){background:var(--xd-sunken);border-color:color-mix(in srgb, var(--accent,#2563eb) 40%, var(--border,#d0d5dd))}.xd-card--on{border-color:var(--accent,#2563eb);background:color-mix(in srgb, var(--accent,#2563eb) 7%, var(--panel,#fff));box-shadow:0 0 0 1px var(--accent,#2563eb)}.xd-card--disabled{opacity:.55;cursor:not-allowed}.xd-card--disabled input{cursor:not-allowed}.xd-card:has(input:focus-visible){outline:2px solid var(--accent,#2563eb);outline-offset:2px}.xd-card-art{background:var(--xd-sunken);border-radius:8px;flex:none;place-items:center;width:56px;height:56px;display:grid}.xd-card-body{flex-direction:column;gap:3px;min-width:0;display:flex}.xd-card-title{flex-wrap:wrap;align-items:baseline;gap:4px 8px;font-weight:650;display:flex}.xd-card-line{font-size:13px}.xd-card-note{color:var(--muted,#667085);font-size:12px}.xd-rec{color:var(--accent,#2563eb);font-size:11.5px;font-weight:600}.xd-tick{width:20px;height:20px;color:var(--xd-on-accent);border:1.5px solid var(--border,#d0d5dd);border-radius:999px;place-items:center;transition:background-color .12s,border-color .12s;display:grid;position:absolute;top:12px;right:12px}.xd-card--on .xd-tick{background:var(--accent,#2563eb);border-color:var(--accent,#2563eb)}.xd-badge{white-space:nowrap;border-radius:999px;flex:none;padding:1px 9px;font-size:11px;font-weight:650}.xd-badge--ok{color:var(--xd-ok-fg);background:var(--xd-ok-bg)}.xd-badge--flat{color:var(--xd-warn-fg);background:var(--xd-warn-bg)}.xd-inside{flex-wrap:wrap;align-items:center;gap:6px 12px;padding:2px 2px 0;display:flex}.xd-inside--off{opacity:.55}.xd-inside-h{font-size:12.5px;font-weight:600}.xd-seg{background:var(--xd-sunken);border:1px solid var(--border,#d0d5dd);border-radius:10px;flex-wrap:wrap;gap:2px;padding:3px;display:inline-flex}.xd-seg-opt{cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;min-height:30px;padding:4px 12px;font-size:12.5px;display:inline-flex;position:relative}.xd-seg-opt input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.xd-seg-opt input:disabled{cursor:not-allowed}.xd-seg-opt--on{background:var(--panel,#fff);border-color:var(--accent,#2563eb);font-weight:600}.xd-seg-opt:has(input:focus-visible){outline:2px solid var(--accent,#2563eb);outline-offset:2px}.xd-more-btn{min-height:28px;font:inherit;color:var(--accent,#2563eb);cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:6px;padding:2px 4px;font-size:12.5px;font-weight:600;display:inline-flex}.xd-more-btn:hover{text-decoration:underline}.xd-more-body{background:var(--xd-sunken);border:1px solid var(--border,#d0d5dd);border-radius:10px;margin-top:6px;padding:10px 12px;font-size:12.5px}.xd-more-body p{margin:0}.xd-more-list{flex-direction:column;gap:6px;margin:0;padding-left:16px;display:flex}.xd-chev{transition:transform .15s;transform:rotate(-90deg)}.xd-chev--open{transform:rotate(0)}.xd-adv{border:1px solid var(--border,#d0d5dd);border-radius:12px}.xd-adv-btn{width:100%;min-height:40px;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:12px;justify-content:space-between;align-items:center;padding:8px 14px;font-size:13px;font-weight:600;display:flex}.xd-adv-btn:hover{background:var(--xd-track)}.xd-adv-body{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:4px 14px 14px;display:grid}@container (width<=520px){.xd-adv-body{grid-template-columns:minmax(0,1fr)}}.xd-field{flex-direction:column;gap:5px;min-width:0;display:flex}.xd-field>label{font-size:12.5px;font-weight:600}.xd-field select,.xd-field input[type=number],.xd-name-input{width:100%;min-height:38px;font:inherit;color:inherit;background:var(--panel,#fff);border:1px solid var(--border,#d0d5dd);border-radius:10px;padding:6px 12px}.xd-field input:disabled{opacity:.5}.xd-field select option{color:#111827;background:#fff}.xd-name-input:disabled{opacity:.6}.xd-hint{color:var(--muted,#667085);margin:0;font-size:12px}.xd-check{color:var(--text,inherit);cursor:pointer;align-items:flex-start;gap:8px;margin:4px 0 0;font-size:13px;display:flex}.xd-check input{width:16px;height:16px;accent-color:var(--accent,#2563eb);flex:none;margin-top:2px}.xd-redact,.xd-callout{border-radius:12px;padding:12px 14px;font-size:13px}.xd-redact{border:1px solid color-mix(in srgb, var(--danger,#d92d20) 55%, var(--border,#d0d5dd));background:color-mix(in srgb, var(--danger,#d92d20) 7%, transparent)}.xd-redact-title{color:var(--xd-danger);margin:0 0 4px;font-size:13px;font-weight:700}.xd-redact-line{margin:0 0 6px}.xd-redact-list{flex-direction:column;gap:3px;margin:0;padding-left:18px;font-size:12.5px;display:flex}.xd-more--redact{margin-top:4px}.xd-more--redact .xd-more-btn{color:var(--xd-danger)}.xd-callout{border:1px solid var(--border,#d0d5dd);background:color-mix(in srgb, var(--accent,#2563eb) 6%, transparent)}.xd-callout-line{margin:0 0 4px;font-weight:600}.xd-callout-sub{color:var(--muted,#667085);margin:0;font-size:12.5px}.xd-merge-warn{color:var(--xd-warn-fg);background:var(--xd-warn-bg);border-radius:8px;margin:8px 0 0;padding:6px 10px;font-weight:600}.xd-side{flex-direction:column;gap:14px;min-width:0;display:flex;position:sticky;top:0}.xd-prev{margin:0}.xd-preview{border:1px solid var(--border,#d0d5dd);background-color:var(--xd-check-b);background-image:repeating-conic-gradient(var(--xd-check-a) 0% 25%, transparent 0% 50%);background-size:16px 16px;border-radius:12px;justify-content:center;align-items:center;min-height:140px;padding:10px;display:flex}.xd-preview-img{width:auto;max-width:100%;height:auto;max-height:170px;display:block;box-shadow:0 1px 4px #10182833}.xd-preview[aria-busy=true] .xd-preview-img{opacity:.55}.xd-preview-empty{color:var(--muted,#667085);background:var(--panel,#fff);border-radius:6px;padding:3px 8px;font-size:12px}.xd-cap{color:var(--muted,#667085);text-align:center;margin:6px 0 0;font-size:12px}.xd-get{border:1px solid var(--border,#d0d5dd);background:var(--xd-sunken);border-radius:12px;padding:12px 14px}.xd-get-h{margin:0 0 6px;font-size:13px;font-weight:700}.xd-get-list{margin:0}.xd-get-row{border-top:1px solid var(--border,#d0d5dd);grid-template-columns:96px minmax(0,1fr);gap:8px;padding:6px 0;font-size:12.5px;display:grid}.xd-get-row:first-child{border-top:0}.xd-get-row dt{color:var(--muted,#667085)}.xd-get-row dd{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;margin:0}.xd-tone-ok{color:var(--xd-ok-fg);font-weight:650}.xd-tone-flat{color:var(--xd-warn-fg);font-weight:650}.xd-tone-danger{color:var(--xd-danger);font-weight:650}.xd-tone-muted{color:var(--muted,#667085)}.xd-get-notes{color:var(--muted,#667085);border-top:1px solid var(--border,#d0d5dd);flex-direction:column;gap:3px;margin:6px 0 0;padding:8px 0 0 16px;font-size:12px;display:flex}.xd-foot{background:var(--panel,#fff);border-top:1px solid var(--border,#d0d5dd);flex-direction:column;flex:none;gap:8px;padding:12px 22px 14px;display:flex;box-shadow:0 -6px 14px -10px #10182840}.xd-status{flex-direction:column;max-height:28vh;display:flex;overflow-y:auto}.xd-status>*+*{margin-top:8px}.xd-status>.xd-error:empty{margin-top:0}.xd-bar{justify-content:space-between;align-items:center;gap:12px 16px;display:flex}.xd-summary{min-width:0;color:var(--muted,#667085);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;flex:auto;margin:0;font-size:12.5px;font-weight:600;overflow:hidden}.xd-warn{color:var(--xd-warn-fg);background:var(--xd-warn-bg);border-radius:8px;margin:0;padding:6px 10px;font-size:12px}.xd-progress{background:var(--xd-track);border-radius:3px;height:5px;overflow:hidden}.xd-progress-bar{background:var(--accent,#2563eb);height:100%;transition:width .2s}.xd-progress-wrap .xd-hint{margin-bottom:4px}.xd-error{color:var(--xd-danger);margin:0;font-size:13px}.xd-error:empty{display:none}.xd-notice{color:var(--xd-warn-fg);background:var(--xd-warn-bg);border-radius:8px;padding:8px 12px;font-size:13px}.xd-notice ul{margin:4px 0 0;padding-left:16px}.xd-notice--ok{color:var(--xd-ok-fg);background:var(--xd-ok-bg)}.xd-actions{flex:none;justify-content:flex-end;gap:8px;display:flex}.xd-btn{min-height:40px;font:inherit;color:inherit;border:1px solid var(--border,#d0d5dd);cursor:pointer;background:0 0;border-radius:10px;padding:6px 20px;font-weight:650}.xd-btn:hover:not(:disabled){background:var(--xd-track)}.xd-btn--primary{color:var(--xd-on-accent);background:var(--accent,#2563eb);border-color:#0000}.xd-btn--primary:hover:not(:disabled){background:var(--accent,#2563eb);filter:brightness(1.08)}.xd-btn:disabled{opacity:.5;cursor:not-allowed}.xd-btn[aria-busy=true]{cursor:progress}.xd-status--done{max-height:46vh}@media (height<=720px){.xd-status--done{max-height:54vh}.xd-done{gap:6px;padding:8px 10px}}.xd-done{border:1px solid color-mix(in srgb, var(--xd-ok-fg) 35%, var(--border,#d0d5dd));background:color-mix(in srgb, var(--xd-ok-bg) 55%, var(--panel,#fff));border-radius:12px;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.xd-done-head{align-items:flex-start;gap:10px;min-width:0;display:flex}.xd-done-icon{color:var(--xd-ok-fg);flex:none;place-items:center;margin-top:1px;display:grid}.xd-done-text{min-width:0}.xd-done-title{color:var(--xd-ok-fg);margin:0;font-size:15px;font-weight:700}.xd-done-title:focus{outline:none}.xd-done-title:focus-visible{outline:2px solid var(--accent,#2563eb);outline-offset:3px;border-radius:4px}.xd-done-name{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;margin:2px 0 0;font-size:13px;font-weight:650}.xd-done-meta{color:var(--muted,#667085);margin:2px 0 0;font-size:12.5px}.xd-done-notes{padding-left:32px}.xd-done-list{background:var(--xd-sunken);border:1px solid var(--border,#d0d5dd);border-radius:10px;flex-direction:column;gap:5px;margin:4px 0 0;padding:8px 10px;font-size:12.5px;list-style:none;display:flex}.xd-done-list li{align-items:flex-start;gap:8px;min-width:0;display:flex}.xd-done-list svg{color:var(--muted,#667085);flex:none;margin-top:2px}.xd-done-list span{overflow-wrap:anywhere;min-width:0}.xd-done-msg{color:var(--muted,#667085);margin:0 0 0 32px;font-size:12.5px}.xd-done-msg:empty{height:0;margin-top:-8px;overflow:hidden}.xd-done-msg--warn{color:var(--xd-warn-fg);font-weight:600}.xd-actions--done{flex-wrap:wrap;align-items:center}.xd-actions--done .xd-btn--close{margin-left:8px}:is(.xd-btn,.xd-x,.xd-adv-btn,.xd-more-btn,.xd-field select,.xd-field input,.xd-name-input):focus-visible,.xd-check input:focus-visible{outline:2px solid var(--accent,#2563eb);outline-offset:2px}.xd:focus-visible{outline:none}.xd-art{display:block}.xd-art-page{fill:var(--panel,#fff);stroke:var(--muted,#667085);stroke-width:1.5px}.xd-art-ghost{fill:none;stroke:var(--muted,#667085);stroke-width:1px;stroke-dasharray:3 3;opacity:.55}.xd-art-shape,.xd-art-page--shape{fill:color-mix(in srgb, var(--accent,#2563eb) 35%, transparent);stroke:var(--accent,#2563eb);stroke-width:1.5px}.xd-art-line{fill:none;stroke:var(--muted,#667085);stroke-width:2px;stroke-linecap:round;opacity:.7}.xd-art-line--on{stroke:var(--accent,#2563eb);opacity:.9}.xd-art-hole{fill:var(--xd-track);stroke:var(--accent,#2563eb);stroke-width:1.5px;stroke-dasharray:3 2}.xd-art-redact{fill:var(--text,#111827)}@media (height<=720px) and (width>=801px){.xd-scroll{padding-top:14px}.xd-side{gap:8px}.xd-preview{min-height:0;padding:6px}.xd-preview-img{max-height:104px}.xd-cap{margin-top:4px}.xd-get{padding:8px 12px}.xd-get-row{padding:4px 0}.xd-get-notes{display:none}}@media (height<=520px){.xd-side{position:static}}@media (prefers-reduced-motion:reduce){.xd-card,.xd-tick,.xd-chev,.xd-progress-bar{transition:none}}@media (width<=800px){.xd-cols{grid-template-columns:minmax(0,1fr);gap:18px}.xd-side{order:-1;grid-template-columns:120px minmax(0,1fr);align-items:start;gap:12px;display:grid;position:static}.xd-side:not(:has(.xd-prev)){grid-template-columns:minmax(0,1fr)}.xd-preview{min-height:100px;padding:6px}.xd-preview-img{max-height:120px}.xd-get-row{grid-template-columns:100px minmax(0,1fr)}}@media (width<=560px){.xd-backdrop{padding:0}.xd{border:0;border-radius:0;width:100%;height:100%}.xd-head{padding:12px 16px 10px}.xd-scroll{padding:14px 16px 16px}.xd-foot{padding:10px 16px 12px}.xd-main{gap:22px}.xd-side{grid-template-columns:minmax(0,1fr)}.xd-side .xd-prev{grid-template-columns:96px minmax(0,1fr);align-items:center;gap:10px;display:grid}.xd-side .xd-prev .xd-cap{text-align:left;margin:0}.xd-preview{min-height:80px}.xd-preview-img{max-height:100px}.xd-get-notes{display:none}.xd-get-row{padding:4px 0}.xd-bar{flex-direction:column;align-items:stretch;gap:8px}.xd-summary{white-space:normal;text-align:center}.xd-actions .xd-btn{flex:1 1 0;padding-inline:10px}.xd-actions .xd-btn--primary{flex:2 1 0}.xd-actions--done{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.xd-actions--done .xd-btn{flex:none}.xd-actions--done .xd-btn--open,.xd-actions--done .xd-btn--close{grid-column:1/-1;margin-left:0}.xd-done-notes,.xd-done-msg{margin-left:0;padding-left:0}.xd-done-help{padding-left:12px}.xd-status--done{max-height:40vh}.xd-adv-body{grid-template-columns:minmax(0,1fr)}}.xd-check{flex-direction:column;align-items:flex-start;gap:6px;margin-top:10px;display:flex}.xd-check-list{flex-direction:column;gap:3px;margin:4px 0;padding-left:18px;font-size:13px;display:flex}.xd-protect{flex-direction:column;gap:8px;display:flex}.xd-protect-body{flex-direction:column;gap:8px;max-width:360px;display:flex}.xd-protect input[type=password],.xd-protect input[type=text]{height:36px;font:inherit;border:1px solid var(--border,#d0d5dd);background:var(--panel,#fff);color:inherit;border-radius:8px;padding:0 10px}.xd-link{font:inherit;color:var(--accent,#2563eb);cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:0;font-size:12.5px;text-decoration:underline}.fm{gap:8px}.fm-summary{cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:2px 0;list-style:none;display:flex}.fm-summary::-webkit-details-marker{display:none}.fm-summary:before{content:"";border-right:2px solid var(--muted,#667085);border-bottom:2px solid var(--muted,#667085);width:6px;height:6px;transition:transform .12s;transform:rotate(-45deg)}.fm[open]>.fm-summary:before{transform:rotate(45deg)}.fm-summary:focus-visible,.fm-link:focus-visible,.fm-remove:focus-visible{outline:2px solid var(--accent,#2563eb);outline-offset:2px}.fm-title{margin:0}.fm-body{flex-direction:column;gap:8px;margin-top:8px;display:flex}.fm-rights{color:var(--text,#111827)}.fm-drop{text-align:center;border:1.5px dashed var(--border,#d0d5dd);background:color-mix(in srgb, var(--sp-track) 60%, transparent);border-radius:10px;flex-direction:column;align-items:center;gap:6px;padding:12px 10px;display:flex}.fm-drop--over{border-color:var(--accent,#2563eb);background:color-mix(in srgb, var(--accent,#2563eb) 10%, transparent)}.fm-drop-text{color:var(--muted,#667085);margin:0;font-size:12.5px}.fm-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.fm-summary-line{margin:0;font-size:12.5px}.fm-link{font:inherit;color:var(--accent,#2563eb);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;text-decoration:underline}.fm-msgs{max-height:120px;overflow-y:auto}.fm-msgs,.fm-families,.fm-fonts{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.fm-msg{border:1px solid var(--border,#d0d5dd);overflow-wrap:anywhere;border-radius:8px;flex-direction:column;gap:2px;padding:6px 8px;font-size:12px;display:flex}.fm-msg--bad{color:var(--sp-danger,#b42318);border-color:color-mix(in srgb, var(--sp-danger,#b42318) 40%, transparent);background:color-mix(in srgb, var(--sp-danger,#b42318) 8%, transparent)}.fm-msg--warn{color:var(--sp-attn,#b45309);border-color:color-mix(in srgb, var(--sp-attn,#b45309) 40%, transparent);background:color-mix(in srgb, var(--sp-attn,#b45309) 10%, transparent)}.fm-msg-file{font-weight:600}.fm-fam{border:1px solid var(--border,#d0d5dd);border-radius:10px;flex-direction:column;gap:6px;padding:8px;display:flex}.fm-fam-head{flex-direction:column;gap:1px;display:flex}.fm-fam-name{overflow-wrap:anywhere;font-size:13.5px}.fm-fam-styles{color:var(--muted,#667085);font-size:11.5px}.fm-font{border-top:1px solid var(--border,#d0d5dd);flex-direction:column;gap:3px;padding-top:6px;display:flex}.fm-font-main{align-items:center;gap:6px;min-width:0;display:flex}.fm-style{background:var(--sp-track);border-radius:999px;flex:none;padding:1px 7px;font-size:11px;font-weight:600}.fm-meta{overflow-wrap:anywhere;min-width:0;color:var(--muted,#667085);flex:1;font-size:11.5px}.fm-remove{flex:none;padding:2px 8px;font-size:12px}.fm-sample{text-overflow:ellipsis;white-space:nowrap;color:var(--text,#111827);font-synthesis:none;font-size:17px;line-height:1.3;overflow:hidden}.fm-warn{color:var(--sp-attn,#b45309);margin:0;font-size:11.5px}.fm-warn--bad{color:var(--sp-danger,#b42318)}.fm-confirm{flex-direction:column;gap:6px;display:flex}.cp-root,.cp-popover{--cp-bg:var(--panel,#fff);--cp-border:var(--border,#d0d5dd);--cp-accent:var(--accent,#2563eb);--cp-text:var(--text,#111827);--cp-muted:var(--muted,#667085);--cp-radius:var(--radius,10px);--cp-shadow:var(--shadow,0 8px 24px #1018281f);--cp-check-a:#d4d7dd;--cp-check-b:#fff;--cp-hover:#64748b1f;--cp-ring:#0f172a24;box-sizing:border-box;font-size:13px;line-height:1.4}:root[data-theme=dark]:not([data-theme=light]) .cp-root,:root[data-theme=dark]:not([data-theme=light]) .cp-popover{--cp-check-a:#4a505c;--cp-check-b:#2a2e36;--cp-ring:#ffffff38;--cp-shadow:var(--shadow,0 10px 30px #00000080)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]):not([data-theme=light]) .cp-root,:root:not([data-theme=light]):not([data-theme=dark]):not([data-theme=light]) .cp-popover{--cp-check-a:#4a505c;--cp-check-b:#2a2e36;--cp-ring:#ffffff38;--cp-shadow:var(--shadow,0 10px 30px #00000080)}}:root[data-theme=dark] .cp-root,:root[data-theme=dark] .cp-popover{--cp-check-a:#4a505c;--cp-check-b:#2a2e36;--cp-ring:#ffffff38}.cp-root *,.cp-popover *,.cp-popover :before,.cp-popover :after{box-sizing:border-box}.cp-root{min-width:0;color:var(--cp-text);flex-direction:column;gap:6px;display:flex}.cp-label{letter-spacing:.06em;text-transform:uppercase;color:var(--cp-muted);font-size:11px;font-weight:600}.cp-swatch--none,.cp-compare-swatch.cp-swatch--none{background-color:var(--cp-check-b);background-image:repeating-conic-gradient(var(--cp-check-a) 0% 25%, transparent 0% 50%);background-size:8px 8px;position:relative}.cp-swatch--none:after{content:"";border-radius:inherit;background:linear-gradient(to top right,#0000 calc(50% - 1px),#dc2626 calc(50% - 1px) calc(50% + 1px),#0000 calc(50% + 1px));position:absolute;inset:0}.cp-swatch--rainbow{background:conic-gradient(red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.cp-swatch{width:20px;height:20px;box-shadow:inset 0 0 0 1px var(--cp-ring);border-radius:6px;flex:none;display:inline-block;overflow:hidden}.cp-trigger{width:100%;min-height:38px;font:inherit;color:var(--cp-text);border:1px solid var(--cp-border);cursor:pointer;text-align:left;background:0 0;border-radius:8px;align-items:center;gap:10px;padding:7px 10px;font-size:13px;display:flex}.cp-trigger:hover:not(:disabled){background:var(--cp-hover)}.cp-trigger[aria-expanded=true]{border-color:var(--cp-accent)}.cp-trigger:disabled{opacity:.5;cursor:not-allowed}.cp-trigger-text{font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.cp-chevron{width:14px;height:14px;color:var(--cp-muted);flex:none;transition:transform .15s}.cp-chevron--up{transform:rotate(180deg)}.cp-trigger:focus-visible,.cp-row-btn:focus-visible,.cp-btn:focus-visible,.cp-sw:focus-visible,.cp-sv:focus-visible,.cp-hue:focus-visible{outline:2px solid var(--cp-accent);outline-offset:2px}.cp-popover{z-index:1000;background:var(--cp-bg);width:min(292px,100vw - 16px);max-height:calc(100vh - 16px);color:var(--cp-text);border:1px solid var(--cp-border);box-shadow:var(--cp-shadow);border-radius:12px;padding:12px;position:fixed;overflow-y:auto}.cp-popover:focus{outline:none}.cp-caption{letter-spacing:.07em;text-transform:uppercase;color:var(--cp-muted);margin:12px 0 7px;font-size:10.5px;font-weight:600}.cp-caption:first-child{margin-top:0}.cp-grid{grid-template-columns:repeat(var(--cp-cols,10), minmax(0, 1fr));gap:5px;display:grid}.cp-sw{aspect-ratio:1;cursor:pointer;color:#fff;width:100%;box-shadow:inset 0 0 0 1px var(--cp-ring);border:0;border-radius:6px;justify-content:center;align-items:center;margin:0;padding:0;transition:transform 80ms;display:flex;position:relative}.cp-sw--light{color:#111827}.cp-sw:hover{z-index:1;transform:scale(1.12)}.cp-sw--gap{margin-top:5px}.cp-sw--on{box-shadow:inset 0 0 0 1px var(--cp-ring), 0 0 0 2px var(--cp-bg), 0 0 0 4px var(--cp-accent);z-index:1}.cp-check{width:70%;height:70%}.cp-sw .cp-check{filter:drop-shadow(0 0 1px #00000040)}.cp-divider{background:var(--cp-border);opacity:.7;height:1px;margin:12px -12px 6px}.cp-row-btn{width:100%;font:inherit;color:var(--cp-text);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;margin:0;padding:6px 8px;font-size:13px;display:flex}.cp-row-btn>span:not(.cp-swatch){flex:1}.cp-row-btn:hover{background:var(--cp-hover)}.cp-row-btn--on .cp-check{width:16px;height:16px;color:var(--cp-accent)}.cp-custom{flex-direction:column;gap:10px;padding:10px 2px 2px;display:flex}.cp-sv{cursor:crosshair;touch-action:none;height:130px;box-shadow:inset 0 0 0 1px var(--cp-ring);background-image:linear-gradient(#0000,#000),linear-gradient(90deg,#fff,#0000);border-radius:8px;position:relative}.cp-sv-thumb,.cp-hue-thumb{pointer-events:none;border:2px solid #fff;border-radius:50%;width:16px;height:16px;margin:-8px 0 0 -8px;position:absolute;box-shadow:0 0 0 1px #00000059,0 1px 3px #0000004d}.cp-hue{cursor:pointer;touch-action:none;height:12px;box-shadow:inset 0 0 0 1px var(--cp-ring);background:linear-gradient(90deg,red 0%,#ff0 16.66%,#0f0 33.33%,#0ff 50%,#00f 66.66%,#f0f 83.33%,red 100%);border-radius:6px;margin:2px 0;position:relative}.cp-hue-thumb{top:50%}.cp-custom-row{align-items:flex-end;gap:12px;display:flex}.cp-compare{box-shadow:0 0 0 1px var(--cp-ring);border-radius:8px;display:flex;overflow:hidden}.cp-compare-half{flex-direction:column;width:46px;display:flex}.cp-compare-swatch{border-radius:0;height:30px;display:block;position:relative}.cp-compare-cap{text-align:center;color:var(--cp-muted);background:var(--cp-bg);padding:2px 0;font-size:10px}.cp-hex{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.cp-hex-cap{letter-spacing:.07em;text-transform:uppercase;color:var(--cp-muted);font-size:10.5px;font-weight:600}.cp-hex-field{border:1px solid var(--cp-border);background:0 0;border-radius:8px;align-items:center;gap:2px;height:32px;padding:0 8px;display:flex}.cp-hex-field:focus-within{border-color:var(--cp-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--cp-accent) 30%, transparent)}.cp-hex-field--bad{border-color:#d92d20}.cp-hex-hash{color:var(--cp-muted)}.cp-hex-field input{width:100%;min-width:0;font:inherit;font-variant-numeric:tabular-nums;text-transform:uppercase;color:var(--cp-text);background:0 0;border:0;outline:none;flex:1;padding:0;font-size:13px}.cp-hint{color:var(--cp-muted);font-size:12px}.cp-hint--bad{color:#d92d20}:root[data-theme=dark]:not([data-theme=light]) .cp-hint--bad{color:#fda29b}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]):not([data-theme=light]) .cp-hint--bad{color:#fda29b}}:root[data-theme=dark] .cp-hint--bad{color:#fda29b}.cp-btn{font:inherit;color:var(--cp-text);border:1px solid var(--cp-border);cursor:pointer;background:0 0;border-radius:8px;padding:7px 10px;font-size:13px}.cp-btn:hover{background:var(--cp-hover)}@media (prefers-reduced-motion:reduce){.cp-sw,.cp-chevron{transition:none}}.ct{gap:10px}.ct-actions{flex-wrap:wrap;gap:6px;display:flex}.ct-actions .sp-btn{flex:auto}.ct-section{gap:8px;padding-top:2px}.ct-style{flex-direction:column;gap:8px;display:flex}.ct-row{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.ct-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.ct-field{flex-direction:column;gap:3px;min-width:0;font-size:12.5px;display:flex}.ct-field--wide{grid-column:1/-1}.ct-field label,.ct-label{color:var(--muted,#667085);font-size:12px;font-weight:600}.ct-field :is(input[type=number],select,textarea){width:100%;min-height:32px;font:inherit;color:var(--text,#111827);background:var(--panel,#fff);border:1px solid var(--border,#d0d5dd);border-radius:8px;padding:4px 8px}.ct-field textarea{resize:vertical;min-height:64px;line-height:1.35}.ct-field :is(input,select,textarea):focus-visible,.ct-toggle:focus-visible,.ct-error button:focus-visible{outline:2px solid var(--accent,#2563eb);outline-offset:1px}.ct-field input[type=range]{width:100%;accent-color:var(--accent,#2563eb)}.ct-num{display:block;position:relative}.ct-suffix{pointer-events:none;color:var(--muted,#667085);position:absolute;top:50%;right:22px;transform:translateY(-50%)}.ct-static{min-height:32px;color:var(--muted,#667085);font-variant-numeric:tabular-nums;align-items:center;display:flex}.ct-row .ct-field{width:96px}.ct-toggles{background:var(--sp-track);border-radius:9px;gap:2px;padding:2px;display:inline-flex}.ct-toggle{width:30px;height:30px;font:inherit;color:var(--muted,#667085);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;place-items:center;padding:0;font-weight:700;display:grid}.ct-toggle--i{font-family:Georgia,Times New Roman,serif;font-style:italic}.ct-toggle:hover:not([aria-pressed=true]){color:var(--text,#111827)}.ct-toggle[aria-pressed=true]{color:var(--accent,#2563eb);background:var(--panel,#fff);border-color:color-mix(in srgb, var(--accent,#2563eb) 55%, transparent)}.ct-warn{color:var(--sp-attn,#b45309);background:color-mix(in srgb, var(--sp-attn,#b45309) 12%, transparent);border:1px solid color-mix(in srgb, var(--sp-attn,#b45309) 40%, transparent);border-radius:8px;margin:0;padding:6px 8px;font-size:12px}.ct-error{color:var(--sp-danger,#b42318);background:color-mix(in srgb, var(--danger,#d92d20) 10%, var(--panel,#fff));border-radius:8px;align-items:flex-start;gap:6px;margin:0;padding:6px 8px;font-size:12px;display:flex}.ct-error span{overflow-wrap:anywhere;flex:1;min-width:0}.ct-error button{color:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;font-size:1rem;line-height:1}.ct-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ct-list{max-height:180px}.ct-item-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sp{--sp-track:#64748b24;--sp-check-a:#d9dce1;--sp-check-b:#fff;--sp-danger:#b42318;--sp-attn:#b45309;--sp-redact:var(--danger,#d92d20);background:var(--panel,#fff);width:320px;max-width:100%;height:100%;min-height:0;color:var(--text,#111827);border:1px solid var(--border,#d0d5dd);border-radius:var(--radius,10px);flex-direction:column;font-size:14px;line-height:1.4;display:flex;overflow:hidden}:root[data-theme=dark]:not([data-theme=light]) .sp{--sp-check-a:#3a3f4a;--sp-check-b:#262a32;--sp-track:#94a3b829;--sp-danger:#fda29b;--sp-attn:#fbbf24}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]):not([data-theme=light]) .sp{--sp-check-a:#3a3f4a;--sp-check-b:#262a32;--sp-track:#94a3b829;--sp-danger:#fda29b;--sp-attn:#fbbf24}}:root[data-theme=dark] .sp{--sp-check-a:#3a3f4a;--sp-check-b:#262a32;--sp-track:#94a3b829;--sp-danger:#fda29b;--sp-attn:#fbbf24}.sp *,.sp :before,.sp :after{box-sizing:border-box}.sp-body{overscroll-behavior:contain;flex:auto;min-height:0;overflow-y:auto}.sp-visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.sp-tabs{border-bottom:1px solid var(--border,#d0d5dd);flex:none;gap:2px;padding:8px 12px 0;display:flex}.sp-tab{min-height:34px;font:inherit;color:var(--muted,#667085);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:1;justify-content:center;align-items:center;gap:6px;margin-bottom:-1px;padding:4px 10px;font-weight:600;display:inline-flex;position:relative}.sp-tab:hover:not(.sp-tab--on){color:var(--text,#111827);background:var(--sp-track);border-radius:8px 8px 0 0}.sp-tab--on{color:var(--text,#111827);border-bottom-color:var(--accent,#2563eb)}.sp-badge{background:var(--sp-attn,#d97706);border-radius:50%;width:8px;height:8px}.sp-panel{flex-direction:column;gap:10px;padding:12px 16px;display:flex}:is(.sp-tab,.sp-icon,.sp-link,.sp-btn,.sp-export,.sp-field select,.sp-field input,.sp-check input):focus-visible{outline:2px solid var(--accent,#2563eb);outline-offset:-2px}.sp-export:focus-visible,.sp-btn:focus-visible,.sp-icon:focus-visible,.sp-link:focus-visible{outline-offset:2px}.sp-group{border:0;flex-direction:column;gap:8px;min-width:0;margin:0;padding:0;display:flex}.sp-caption{float:left;width:100%;margin-bottom:6px;padding:0;font-size:12.5px;font-weight:600}.sp-caption+*{clear:both}.sp-hint{color:var(--muted,#667085);margin:0;font-size:12px}.sp-hint--note{color:var(--text,#111827)}.sp-hint--centre{text-align:center}.sp-rule{background:var(--border,#d0d5dd);border:0;width:100%;height:1px;margin:0}.sp-row{align-items:center;gap:8px;display:flex}.sp-row--between{justify-content:space-between}.sp-count{color:var(--muted,#667085);font-variant-numeric:tabular-nums;font-size:12.5px}.sp-seg{background:var(--sp-track);border-radius:10px;gap:2px;padding:3px;display:flex}.sp-seg-item{min-height:30px;color:var(--muted,#667085);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:8px;flex:1;justify-content:center;align-items:center;padding:4px 8px;font-weight:500;display:flex;position:relative}.sp-seg-item input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.sp-seg-item:hover:not(.sp-seg-item--on){color:var(--text,#111827)}.sp-seg-item--on{color:var(--text,#111827);background:var(--panel,#fff);box-shadow:0 0 0 1px var(--border,#d0d5dd), 0 1px 2px #10182814}.sp-seg-item:has(input:focus-visible){outline:2px solid var(--accent,#2563eb);outline-offset:2px}.sp-btn{min-height:30px;font:inherit;color:inherit;border:1px solid var(--border,#d0d5dd);cursor:pointer;background:0 0;border-radius:8px;padding:4px 12px;font-size:13px;font-weight:500}.sp-btn:hover:not(:disabled){background:var(--sp-track)}.sp-btn:disabled{opacity:.5;cursor:not-allowed}.sp-btn--quiet{color:var(--muted,#667085);border-color:#0000;padding:4px 8px}.sp-btn--danger{color:var(--sp-danger)}.sp-btn--primary{color:var(--accent,#2563eb);border-color:var(--accent,#2563eb)}.sp-check{cursor:pointer;align-items:flex-start;gap:8px;font-size:13px;display:flex}.sp-check input{accent-color:var(--accent,#2563eb);flex:none;margin:2px 0 0}.sp-footer{border-top:1px solid var(--border,#d0d5dd);background:var(--panel,#fff);flex-direction:column;flex:none;gap:8px;padding:12px 16px 14px;display:flex;box-shadow:0 -6px 12px -10px #10182840}.sp-summary{flex-direction:column;display:flex}.sp-summary-main{font-variant-numeric:tabular-nums;font-weight:600}.sp-summary-size{color:var(--muted,#667085);font-variant-numeric:tabular-nums;font-size:12px}.sp-export{width:100%;min-height:42px;font:inherit;color:#fff;background:var(--accent,#2563eb);cursor:pointer;border:0;border-radius:10px;padding:10px 14px;font-weight:600}:root[data-theme=dark]:not([data-theme=light]) .sp-export{color:#0b1220}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]):not([data-theme=light]) .sp-export{color:#0b1220}}:root[data-theme=dark] .sp-export{color:#0b1220}.sp-export:hover:not(:disabled){filter:brightness(1.08)}.sp-export:disabled{opacity:.5;cursor:not-allowed}.sp-export[aria-busy=true]{cursor:progress}.sp-push{margin-left:auto}.sp-icons{gap:4px;display:flex}.sp-icon{width:32px;height:32px;color:inherit;border:1px solid var(--border,#d0d5dd);cursor:pointer;background:0 0;border-radius:8px;place-items:center;padding:0;display:grid}.sp-icon:hover:not(:disabled){background:var(--sp-track)}.sp-icon:disabled{opacity:.4;cursor:not-allowed}.sp-icon--danger:not(:disabled){color:var(--sp-danger)}.sp-link{font:inherit;color:var(--accent,#2563eb);text-underline-offset:2px;cursor:pointer;white-space:nowrap;background:0 0;border:0;flex:none;padding:2px 0;font-size:12.5px;font-weight:500;text-decoration:underline}.sp-link:disabled{opacity:.45;cursor:not-allowed;text-decoration:none}.sp-fill{gap:6px}.sp-fill .cp-trigger{min-height:34px;padding-top:5px;padding-bottom:5px}.sp-row .sp-hint{flex:1;min-width:0}.sp-tab:focus-visible{outline-offset:-2px}.sp-self-start{align-self:flex-start;margin-left:-8px}.sp-h{align-items:center;gap:8px;margin:2px 0 0;font-size:13px;font-weight:700;display:flex}.sp-h--redact{color:var(--sp-redact)}.sp-pill{text-align:center;font-variant-numeric:tabular-nums;min-width:22px;color:var(--text,#111827);background:var(--sp-track);border-radius:999px;padding:1px 7px;font-size:12px;font-weight:600}.sp-pill--redact{color:var(--sp-redact);background:color-mix(in srgb, var(--sp-redact) 14%, transparent)}.sp-hint--text{color:var(--text,#111827)}.sp-redact{border:1px solid color-mix(in srgb, var(--sp-redact) 45%, var(--border,#d0d5dd));background:color-mix(in srgb, var(--sp-redact) 5%, transparent);border-radius:10px;flex-direction:column;gap:8px;min-width:0;padding:10px 12px;display:flex}.sp-seg-btn{font:inherit;cursor:pointer;background:0 0;border:0;font-weight:500}.sp-seg-btn:disabled{opacity:.5;cursor:not-allowed}.sp-seg-btn:focus-visible{outline:2px solid var(--accent,#2563eb);outline-offset:2px}.sp-seg-btn--redact.sp-seg-item--on{color:var(--sp-redact);box-shadow:0 0 0 1px var(--sp-redact), 0 1px 2px #10182814}.sp-list{flex-direction:column;gap:2px;max-height:140px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.sp-list-item{width:100%;min-height:28px;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;justify-content:space-between;align-items:center;gap:8px;padding:3px 8px;font-size:12.5px;display:flex}.sp-list-item:hover{background:var(--sp-track)}.sp-list-item:focus-visible{outline:2px solid var(--accent,#2563eb);outline-offset:-2px}.sp-list-item--on{border-color:var(--accent,#2563eb);font-weight:600}.sp-list--redact .sp-list-item--on{border-color:var(--sp-redact)}.sp-list-page{color:var(--muted,#667085);font-variant-numeric:tabular-nums}.ob-view{pointer-events:none;display:block;position:absolute;inset:0;overflow:visible}.ob-overlay{pointer-events:none;touch-action:none;-webkit-user-select:none;user-select:none;outline:none;display:block;position:absolute;inset:0;overflow:visible}.ob-overlay--text{cursor:text}.ob-capture{fill:#0000;pointer-events:all;cursor:text}.ob-body{fill:#0000;stroke:none;pointer-events:all;cursor:move}.ob-body--text{cursor:text}.ob-frame{fill:none;stroke:var(--accent,#2563eb);stroke-width:1.5px;vector-effect:non-scaling-stroke;pointer-events:none}.ob-stem{stroke:var(--accent,#2563eb);stroke-width:1px;vector-effect:non-scaling-stroke;pointer-events:none}.ob-handle{fill:#fff;stroke:var(--accent,#2563eb);stroke-width:1.5px;vector-effect:non-scaling-stroke;pointer-events:all}.ob-rotate{fill:var(--accent,#2563eb);stroke:#fff;stroke-width:1.5px;vector-effect:non-scaling-stroke;pointer-events:all;cursor:grab}:root[data-theme=dark] .ob-handle{fill:#181b21}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .ob-handle{fill:#181b21}}.ob-edit{z-index:3;box-sizing:border-box;position:absolute}.ob-edit-area{resize:none;box-sizing:border-box;white-space:pre-wrap;overflow-wrap:anywhere;border:1px dashed var(--accent,#2563eb);background:color-mix(in srgb, var(--accent,#2563eb) 7%, #ffffff8c);font-kerning:none;width:100%;caret-color:var(--accent,#2563eb);border-radius:0;outline:none;margin:0;padding:0;display:block;overflow:hidden}.th-objects{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.ob-tail{fill:#f97316;stroke:#fff;stroke-width:1.5px;vector-effect:non-scaling-stroke;pointer-events:all;cursor:crosshair}.ob-edit--comment{pointer-events:none}.ob-edit--comment .ob-edit-area--comment{pointer-events:all;border:1px dashed var(--accent,#2563eb);box-sizing:content-box;background:0 0;margin:-1px;padding:0}.ob-line-hit{fill:none;stroke:#0000;pointer-events:stroke;cursor:move}.te-root{pointer-events:none;position:absolute;inset:0}.te-lines{display:block;position:absolute;inset:0;overflow:visible}.te-capture{fill:#0000;pointer-events:all;cursor:default}.te-line{fill:#0000;stroke:#0000;stroke-width:1px;vector-effect:non-scaling-stroke;pointer-events:all;cursor:pointer;outline:none;transition:fill .1s,stroke .1s}.te-line:hover,.te-line:focus-visible{fill:color-mix(in srgb, var(--accent,#2563eb) 14%, transparent);stroke:color-mix(in srgb, var(--accent,#2563eb) 70%, transparent)}.te-line--edited{stroke:color-mix(in srgb, var(--accent,#2563eb) 45%, transparent);stroke-dasharray:3 2}.te-line--result{fill:#0000}.te-line--off{cursor:not-allowed}.te-line--off:hover{fill:color-mix(in srgb, var(--muted,#667085) 14%, transparent);stroke:var(--muted,#667085);stroke-dasharray:3 2}.te-cover{pointer-events:none;display:block;position:absolute;inset:0;overflow:visible}.te-editor{z-index:4;pointer-events:auto;position:absolute}.te-input{resize:none;box-sizing:border-box;outline:1px dashed var(--accent,#2563eb);outline-offset:1px;font-kerning:none;font-variant-ligatures:none;width:100%;height:100%;caret-color:var(--accent,#2563eb);overflow-wrap:normal;border:0;border-radius:0;margin:0;padding:0;display:block;overflow:hidden}.te-bar{z-index:6;pointer-events:auto;box-sizing:border-box;background:var(--panel,#fff);width:400px;max-width:94vw;color:var(--text,#111827);border:1px solid var(--border,#d0d5dd);border-radius:var(--radius,10px);box-shadow:var(--shadow,0 8px 24px #1018281f);flex-direction:column;gap:6px;padding:8px;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:13px;line-height:1.35;display:flex;position:absolute}.te-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.te-row--end{gap:6px}.te-select,.te-size input{height:28px;font:inherit;color:inherit;background:var(--bg,#f2f4f7);border:1px solid var(--border,#d0d5dd);border-radius:7px;min-width:0;padding:0 6px}.te-select{text-overflow:ellipsis;flex:230px;max-width:300px}.te-size{align-items:center;gap:4px;display:inline-flex}.te-size input{width:64px}.te-colour{align-items:center;gap:4px;display:inline-flex}.te-colour input{background:var(--bg,#f2f4f7);border:1px solid var(--border,#d0d5dd);cursor:pointer;border-radius:7px;width:34px;height:28px;padding:1px}.te-cap{letter-spacing:.05em;text-transform:uppercase;color:var(--muted,#667085);font-size:11px;font-weight:600}.te-tog,.te-btn{min-width:28px;height:28px;font:inherit;color:var(--muted,#667085);border:1px solid var(--border,#d0d5dd);cursor:pointer;background:0 0;border-radius:7px;padding:0 9px;font-weight:600}.te-tog--i{font-style:italic}.te-btn:hover,.te-tog:hover{color:var(--text,#111827);background:#7f7f7f24}.te-tog[aria-pressed=true]{color:var(--accent,#2563eb);background:color-mix(in srgb, var(--accent,#2563eb) 14%, transparent);border-color:color-mix(in srgb, var(--accent,#2563eb) 55%, transparent)}.te-btn--primary{color:#fff;background:var(--accent,#2563eb);border-color:var(--accent,#2563eb)}:root[data-theme=dark] .te-btn--primary{color:#0f1115}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .te-btn--primary{color:#0f1115}}.te-btn--primary:hover{color:#fff;background:color-mix(in srgb, var(--accent,#2563eb) 88%, #000)}.te-btn:focus-visible,.te-tog:focus-visible,.te-select:focus-visible,.te-size input:focus-visible,.te-colour input:focus-visible{outline:2px solid var(--accent,#2563eb);outline-offset:1px}.te-info{color:var(--text,#111827);margin:0;font-size:12px}.te-info--small{color:var(--muted,#667085);font-size:11.5px}.te-flag{color:var(--accent,#2563eb);margin:0;font-size:12px;font-weight:600}.te-warn{color:var(--danger,#d92d20);margin:0;font-size:12px}.te-note{z-index:5;text-align:center;max-width:88%;color:var(--text,#111827);background:var(--panel,#fff);border:1px solid var(--border,#d0d5dd);box-shadow:var(--shadow,0 8px 24px #1018281f);pointer-events:none;border-radius:8px;margin:0;padding:6px 12px;font-size:13px;position:absolute;top:10px;left:50%;transform:translate(-50%)}.te-note--busy{color:var(--muted,#667085)}@media (prefers-reduced-motion:reduce){.te-line{transition:none}}.te-row--opts{flex-wrap:wrap;gap:12px}.te-check{cursor:pointer;align-items:center;gap:6px;font-size:12px;display:inline-flex}.te-check input{margin:0}.te-btn--small{margin:2px 0;padding:3px 8px;font-size:12px}.te-editor--overlap{outline-offset:1px;outline:2px solid #dc2626}.te-match{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.hl-swatches{gap:6px;margin:6px 0 8px;display:flex}.hl-swatch{border:2px solid var(--border,#d0d5dd);cursor:pointer;border-radius:50%;width:26px;height:26px;padding:0}.hl-swatch--on{border-color:var(--text,#111827);box-shadow:0 0 0 2px var(--accent,#2563eb)}.hl-swatch:focus-visible,.hl-mode input:focus-visible+span{outline:3px solid var(--accent,#2563eb);outline-offset:2px}.hl-modes{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.hl-mode{text-align:center;cursor:pointer;flex:auto}.hl-mode input{opacity:0;pointer-events:none;position:absolute}.hl-mode span{border:1px solid var(--border,#d0d5dd);border-radius:8px;padding:7px 8px;font-weight:600;display:block}.hl-mode--on span{background:var(--accent,#2563eb);border-color:var(--accent,#2563eb);color:#fff}.hl-pct{text-align:right;min-width:3ch;color:var(--muted,#667085);font-size:.85rem}.hl-layer{touch-action:none;position:absolute;inset:0}.hl-layer--on{cursor:crosshair}.hl-layer svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.hl-preview{fill-opacity:.45;mix-blend-mode:multiply}.hl-sel{fill:#2563eb38;stroke:#2563ebcc;stroke-width:1px;vector-effect:non-scaling-stroke}.hl-bar{z-index:5;background:var(--panel,#fff);color:var(--text,#111827);border:1px solid var(--border,#d0d5dd);border-radius:10px;align-items:center;gap:4px;padding:4px;display:flex;position:absolute;box-shadow:0 6px 18px #00000040}.hl-bar button{font:inherit;border:1px solid var(--border,#d0d5dd);color:inherit;cursor:pointer;white-space:nowrap;background:0 0;border-radius:7px;padding:6px 10px;font-weight:600}.hl-bar button:hover{border-color:var(--accent,#2563eb)}.hl-bar button:focus-visible{outline:3px solid var(--accent,#2563eb);outline-offset:2px}.hl-bar button:disabled{opacity:.5;cursor:wait}.hl-chip{vertical-align:-1px;border:1px solid #00000059;border-radius:3px;width:12px;height:12px;margin-right:6px;display:inline-block}.hl-note{z-index:5;color:#fff;background:#111827e6;border-radius:8px;max-width:90%;padding:6px 12px;font-size:.85rem;position:absolute;top:12px;left:50%;transform:translate(-50%)}.hl-erase{fill:#dc262640;stroke:#dc2626;stroke-width:1.5px;vector-effect:non-scaling-stroke}.hl-quick{-webkit-user-select:none;user-select:none;background:var(--panel,#fff);color:var(--text,#111827);border-bottom:1px solid var(--border,#d0d5dd);flex-wrap:wrap;flex:none;justify-content:center;align-items:center;gap:8px 12px;padding:6px 12px;font-size:.85rem;display:flex;position:static}.hl-quick .hl-modes{margin:0}.hl-quick .hl-mode span{white-space:nowrap;padding:5px 10px}.hl-quick .hl-swatches{margin:0}.hl-quick .hl-swatch{width:22px;height:22px}.hl-quick input[type=color]{border:1px solid var(--border,#d0d5dd);cursor:pointer;background:0 0;border-radius:6px;width:28px;height:26px;padding:0}.hl-quick label.hl-q{align-items:center;gap:6px;display:flex}.hl-quick input[type=range]{width:90px}.hl-quick button{font:inherit;border:1px solid var(--border,#d0d5dd);color:inherit;cursor:pointer;background:0 0;border-radius:7px;padding:5px 10px;font-weight:600}.hl-quick button:hover{border-color:var(--accent,#2563eb)}.hl-quick .hl-done{background:var(--accent,#2563eb);color:#fff;border-color:var(--accent,#2563eb)}.hl-quick-hint{color:var(--muted,#667085)}.ts,.hl-quick{box-sizing:border-box;min-height:46px}.ts{scrollbar-width:thin;background:var(--panel,#fff);color:var(--text,#111827);border-bottom:1px solid var(--border,#d0d5dd);white-space:nowrap;align-items:center;gap:8px 14px;padding:6px 12px;font-size:.85rem;display:flex;overflow:auto hidden}.ts>*,.ts-group>*{flex:none}.ts-group{align-items:center;gap:6px;display:flex}.ts-seg{border:1px solid var(--border,#d0d5dd);border-radius:8px;display:inline-flex;overflow:hidden}.ts-segbtn{font:inherit;color:inherit;border:0;border-right:1px solid var(--border,#d0d5dd);cursor:pointer;background:0 0;padding:5px 10px;font-weight:600}.ts-segbtn:last-child{border-right:0}.ts-segbtn--on{background:var(--accent,#2563eb);color:#fff}.ts-segbtn--on.ts-segbtn--danger{background:#b42318}.ts-segbtn:disabled{opacity:.5;cursor:default}.ts-btn{font:inherit;border:1px solid var(--border,#d0d5dd);color:inherit;cursor:pointer;background:0 0;border-radius:7px;padding:5px 10px;font-weight:600}.ts-btn:hover:not(:disabled){border-color:var(--accent,#2563eb)}.ts-btn[aria-pressed=true]{background:var(--accent,#2563eb);border-color:var(--accent,#2563eb);color:#fff}.ts-btn:disabled{opacity:.5;cursor:default}.ts-btn--b{min-width:30px;font-weight:800}.ts-btn--i{min-width:30px;font-style:italic}.ts-btn--ic{padding:5px 7px;line-height:0}.ts-btn--danger{color:#b42318}.ts-caret{margin-left:5px;font-size:.7em}.ts-icon{border:1px solid var(--border,#d0d5dd);color:inherit;cursor:pointer;background:0 0;border-radius:7px;padding:6px;line-height:0}.ts-icon:hover:not(:disabled){border-color:var(--accent,#2563eb)}.ts-icon--danger{color:#b42318}.ts-icon:disabled{opacity:.45;cursor:default}.ts-tag{font-weight:700}.ts-tag--redact{color:#b42318}.ts-hint{color:var(--muted,#667085)}.ts-name{text-overflow:ellipsis;max-width:360px;overflow:hidden}.ts-count{color:var(--muted,#667085)}.ts-select{border:1px solid var(--border,#d0d5dd);background:var(--panel,#fff);color:inherit;font:inherit;border-radius:7px;max-width:170px;padding:5px 6px}.ts-range{align-items:center;gap:6px;display:inline-flex}.ts-range input{width:90px}.ts .ct-field{flex-direction:row;align-items:center;gap:6px;margin:0;display:flex}.ts .ct-field label{margin:0}.ts .ct-num input{width:64px}.ts .cp-root{flex-direction:row;align-items:center;gap:6px}.ts .hl-swatches{margin:0}.ts-card{z-index:60;background:var(--panel,#fff);color:var(--text,#111827);border:1px solid var(--border,#d0d5dd);white-space:normal;border-radius:12px;padding:10px 12px;position:fixed;overflow:auto;box-shadow:0 10px 30px #0000004d}.ts-card .ct-section{margin:0}.ts-card .sp-h{display:none}.app-shell .hl-quick{white-space:nowrap;scrollbar-width:thin;flex-wrap:nowrap;justify-content:flex-start;overflow:auto hidden}.app-shell .hl-quick>*{flex:none}.mg-root{z-index:40;background:var(--surface,#fff);border:1px solid var(--border,#d1d5db);border-radius:8px;max-width:calc(100vw - 24px);position:fixed;bottom:70px;right:360px;overflow:hidden;box-shadow:0 6px 24px #00000038}.mg-head{cursor:move;border-bottom:1px solid var(--border,#d1d5db);touch-action:none;align-items:center;gap:8px;padding:4px 8px;font-size:12px;display:flex}.mg-title{flex:1;font-weight:600}.mg-zoom{align-items:center;gap:4px;display:inline-flex}.mg-cap{color:var(--muted,#6b7280)}.mg-zoom select,.mg-hide{font-size:12px}.mg-hide{cursor:pointer;padding:2px 8px}.mg-view{background:#fff;max-width:100%;position:relative;overflow:hidden}.mg-canvas,.mg-objects,.mg-cross{pointer-events:none;position:absolute;top:0;left:0}.mg-cross line{stroke:#dc2626;stroke-width:1px;opacity:.8}.mg-chip{z-index:40;border:1px solid var(--border,#d1d5db);background:var(--surface,#fff);cursor:pointer;border-radius:16px;padding:5px 10px;font-size:12px;position:fixed;bottom:70px;right:360px;box-shadow:0 2px 10px #0000002e}.fp-root{z-index:45;background:var(--surface,#fff);border:1px solid var(--border,#d1d5db);border-radius:10px;flex-direction:column;gap:8px;width:330px;max-height:calc(100vh - 160px);padding:10px 12px;font-size:13px;display:flex;position:fixed;top:110px;left:130px;overflow:auto;box-shadow:0 8px 28px #00000040}.fp-head{justify-content:space-between;align-items:center;display:flex}.fp-x{cursor:pointer;color:inherit;background:0 0;border:0;font-size:20px;line-height:1}.fp-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.fp-cap{color:var(--muted,#6b7280)}.fp-input,.fp-root select{font:inherit;border:1px solid var(--border,#d1d5db);background:var(--surface,#fff);color:inherit;border-radius:6px;padding:6px 8px}.fp-input{box-sizing:border-box;width:100%}.fp-check{cursor:pointer;align-items:center;gap:5px;display:inline-flex}.fp-btn{font:inherit;border:1px solid var(--border,#d1d5db);color:inherit;cursor:pointer;background:0 0;border-radius:6px;padding:6px 12px}.fp-btn:hover{background:#7f7f7f24}.fp-btn:disabled{opacity:.6;cursor:default}.fp-btn--primary{background:var(--accent,#2563eb);border-color:var(--accent,#2563eb);color:#fff}.fp-btn--danger{color:#b91c1c;border-color:#b91c1c}.fp-status{margin:0;font-weight:600}.fp-hint{color:var(--muted,#6b7280);margin:0;font-size:12px}.fp-list{border:1px solid var(--border,#d1d5db);border-radius:6px;max-height:220px;margin:0;padding:0;list-style:none;overflow:auto}.fp-item{text-align:left;border:0;border-bottom:1px solid var(--border,#e5e7eb);width:100%;color:inherit;cursor:pointer;font:inherit;background:0 0;gap:8px;padding:5px 8px;display:flex}.fp-item:hover{background:#7f7f7f24}.fp-page{color:var(--muted,#6b7280);min-width:36px}.fp-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fp-cats{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.fp-link{font:inherit;color:var(--accent,#2563eb);cursor:pointer;background:0 0;border:0;padding:0;font-size:.75rem;text-decoration:underline}textarea.fp-input{resize:vertical;font:inherit}.bp-backdrop{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.bp-dialog{--bp-track:#64748b24;background:var(--panel,#fff);width:100%;max-width:560px;max-height:100%;color:var(--text,#111827);border:1px solid var(--border,#d0d5dd);border-radius:14px;padding:22px 24px;overflow-y:auto;box-shadow:0 20px 50px #0000004d}.bp-dialog *,.bp-dialog :before,.bp-dialog :after{box-sizing:border-box}.bp-title{margin:0 0 6px;font-size:1.1rem;line-height:1.3}.bp-lead{color:var(--muted,#667085);margin:0 0 14px;font-size:.9rem;line-height:1.5}.bp-cols{grid-template-columns:minmax(0,1fr) 160px;align-items:start;gap:20px;display:grid}.bp-form{flex-direction:column;gap:12px;min-width:0;display:flex}.bp-field{flex-direction:column;gap:4px;min-width:0;display:flex}.bp-field label,.bp-set legend{padding:0;font-size:12.5px;font-weight:600}.bp-set{border:0;flex-direction:column;gap:6px;min-width:0;margin:0;padding:0;display:flex}.bp-set:disabled{opacity:.6}.bp-dialog :is(select,input[type=number]){width:100%;min-height:36px;font:inherit;color:var(--text,#111827);background:var(--panel,#fff);border:1px solid var(--border,#d0d5dd);border-radius:8px;padding:6px 10px}.bp-dialog :is(select,input):focus-visible,.bp-btn:focus-visible{outline:3px solid var(--accent,#2563eb);outline-offset:1px}.bp-custom{border:0;grid-template-columns:1fr 1fr;gap:8px;min-width:0;margin:0;padding:0;display:grid}.bp-custom .bp-field:last-child{grid-column:1/-1}.bp-sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.bp-seg{background:var(--bp-track);border-radius:10px;gap:2px;padding:3px;display:flex}.bp-seg-item{min-height:32px;color:var(--muted,#667085);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:8px;flex:1;justify-content:center;align-items:center;padding:4px 8px;font-weight:500;display:flex;position:relative}.bp-seg-item input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.bp-seg-item--on{color:var(--text,#111827);background:var(--panel,#fff);box-shadow:0 0 0 1px var(--border,#d0d5dd), 0 1px 2px #10182814}.bp-seg-item:has(input:focus-visible){outline:3px solid var(--accent,#2563eb);outline-offset:1px}.bp-pos{grid-template-columns:1fr 1fr;gap:8px;display:grid}.bp-pos select:only-child{grid-column:1/-1}.bp-hint{color:var(--muted,#667085);margin:0;font-size:12px}.bp-error{color:var(--danger,#b42318);margin:8px 0 0;font-size:13px}.bp-preview{text-align:center;flex-direction:column;align-items:center;gap:8px;margin:0;display:flex}.bp-box{border:1px dashed var(--border,#d0d5dd);background:var(--bp-track);border-radius:10px;place-items:center;display:grid}.bp-sheet{border:1px solid var(--border,#d0d5dd);background:#fff;box-shadow:0 2px 8px #10182840}.bp-preview figcaption{font-variant-numeric:tabular-nums;font-size:12.5px}.bp-preview figcaption span{color:var(--muted,#667085)}.bp-actions{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.bp-btn{font:inherit;border:1px solid var(--border,#d0d5dd);color:inherit;cursor:pointer;background:0 0;border-radius:8px;padding:9px 14px;font-weight:600}.bp-btn:hover:not(:disabled){border-color:var(--accent,#2563eb)}.bp-btn:disabled{opacity:.55;cursor:not-allowed}.bp-primary{background:var(--accent,#2563eb);border-color:var(--accent,#2563eb);color:#fff}:root[data-theme=dark] .bp-primary{color:#0b1220}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]) .bp-primary{color:#0b1220}}@media (width<=520px){.bp-cols{grid-template-columns:1fr}.bp-preview{order:-1}}.app-landing{flex-direction:column;gap:16px;max-width:640px;margin:0 auto;padding:64px 20px;display:flex}.app-landing h1{margin:0;font-size:clamp(1.6rem,4vw,2.2rem)}.app-landing p{color:var(--muted);margin:0;line-height:1.5}.app-landing-version{text-align:center;font-size:12px}.app-shell{background:var(--bg);grid-template-rows:auto auto auto minmax(0,1fr) auto;height:100dvh;display:grid}.app-header{background:var(--panel);border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:8px 16px;display:flex}.app-title{white-space:nowrap}.app-version{color:var(--muted);white-space:nowrap;font-size:12px}.app-file{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);flex:1;overflow:hidden}.app-button{font:inherit;border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;border-radius:8px;padding:6px 12px}.app-button:hover{border-color:var(--accent)}.app-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-body{min-width:0;min-height:0;display:flex}.app-body>.dv-scroll{flex:1 1 0;min-width:0}.app-stage-loading{color:var(--muted);flex:1;place-items:center;display:grid}.app-side{background:var(--panel);border-left:1px solid var(--border);flex-direction:column;flex:0 0 340px;min-height:0;display:flex;overflow:hidden}.app-footer{background:var(--panel);border-top:1px solid var(--border)}.app-toast{z-index:900;color:#fff;box-shadow:var(--shadow);background:#1f2937;border-radius:10px;align-items:center;gap:14px;padding:10px 14px;font-size:14px;display:flex;position:fixed;bottom:72px;left:50%;transform:translate(-50%)}.app-toast button{font:inherit;color:#93c5fd;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:2px 6px;font-weight:600}.app-toast button:hover{text-decoration:underline}.app-toast button:focus-visible{outline:2px solid #93c5fd}.app-landing-demo{border:1px solid var(--border,#d0d5dd);border-radius:10px;width:min(720px,100%);height:auto;margin:16px auto 0;display:block}.app-toast--error{background:#7a271a;bottom:120px}.app-toast--error button{color:#fecdca}.app-pages-btn,.app-sheet-handle,.app-scrim,.app-open-short{display:none}@media (width<=900px){.app-shell{height:100dvh;overflow:hidden}.app-header{gap:6px;padding:4px 8px}.app-title{text-overflow:ellipsis;flex:1;min-width:0;font-size:1rem;overflow:hidden}.app-title .logo-name{display:none}.app-home-btn{font-size:.8rem}.app-version,.app-file{display:none}.app-button{white-space:nowrap;min-height:44px;padding:0 12px}.app-pages-btn{align-items:center;display:inline-flex}.app-shortcuts-btn{display:none}.app-pages-btn[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.app-open-btn{font-size:.8rem}.app-open-long{display:none}.app-open-short{display:inline}.app-header .app-button,.app-header .sm-button{padding:0 10px;font-size:.8rem}.app-body{padding-bottom:76px;position:relative}.app-body>.dv-scroll{flex:1 1 0;height:auto}.th-panel{z-index:90;width:min(240px,80vw);position:fixed;top:0;bottom:0;left:0;box-shadow:0 0 30px #00000059}.th-panel--wide{width:min(240px,80vw)}.th-wide{display:none}.app-scrim{z-index:85;background:#0006;border:0;display:block;position:fixed;inset:0}.app-side{z-index:70;border-left:0;border-top:1px solid var(--border);border-radius:14px 14px 0 0;flex:none;width:auto;max-height:86dvh;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 24px #0003}.app-sheet-handle{width:100%;min-height:36px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;font-size:.8rem;display:block}.app-side .sp{border:0;flex-direction:column;width:auto;min-height:0;display:flex}.app-side:not(.app-side--open) .sp-tabs,.app-side:not(.app-side--open) .sp-body{display:none}.app-side--open{height:80dvh}.app-side--open .sp{flex:1}.tb-btn{width:44px;height:44px}.tb-toolbar{height:52px}.ts{min-height:52px}.ts-btn,.ts-segbtn,.ts-icon,.ts-select{min-height:40px}.hl-quick{overflow-x:auto}.app-header .sm-button{min-height:44px}}.app-tip{z-index:120;background:var(--panel);width:min(620px,100vw - 24px);color:var(--text);border:1px solid var(--accent);border-radius:10px;align-items:center;gap:12px;padding:10px 14px;font-size:.85rem;display:flex;position:fixed;bottom:72px;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #00000040}.app-tip button{min-height:36px;font:inherit;border:1px solid var(--border);background:var(--panel);color:inherit;cursor:pointer;border-radius:8px;flex:none;padding:0 14px;font-weight:600}
