.editor-root{--mobile-sheet-compact-height: clamp(112px, 16dvh, 146px);--mobile-sheet-expanded-height: min(58dvh, 520px);display:grid;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;grid-template-rows:64px minmax(0,1fr);background:var(--app-bg);overflow:hidden}.editor-topbar{display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--panel-border);background:var(--panel-bg);padding:0 20px}.editor-brand{display:flex;min-width:168px;align-items:center;gap:10px;color:var(--text-primary);font-weight:850;text-decoration:none}.editor-brand-mark{display:grid;width:34px;height:34px;place-items:center;border-radius:8px;background:var(--text-primary);color:var(--panel-bg);font-size:13px}.privacy-badge{display:inline-flex;align-items:center;gap:8px;min-width:0;border:1px solid rgba(22,163,74,.28);border-radius:999px;background:#16a34a17;color:var(--privacy);font-size:13px;font-weight:800;padding:8px 12px}.autosave-indicator{border:1px solid var(--panel-border);border-radius:999px;color:var(--text-secondary);font-size:12px;font-weight:800;padding:7px 10px;white-space:nowrap}.autosave-indicator.saving{border-color:color-mix(in srgb,var(--accent) 45%,var(--panel-border));color:var(--accent-strong)}.autosave-indicator.saved{border-color:#16a34a47;color:var(--privacy)}.autosave-indicator.error{border-color:#dc262659;color:#b91c1c}.topbar-actions{display:flex;flex:0 1 auto;align-items:center;gap:10px;min-width:0;margin-left:auto;overflow-x:auto;scrollbar-width:none}.topbar-actions::-webkit-scrollbar{display:none}.primary-button,.secondary-button,.canvas-actions button,.task-stack button,.insert-page-button{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:8px;border-radius:8px;padding:0 14px;font-weight:800}.primary-button{border:1px solid var(--accent);background:var(--accent);color:#fff}.secondary-button,.canvas-actions button,.task-stack button,.insert-page-button{border:1px solid var(--panel-border);background:var(--panel-bg);color:var(--text-primary)}.task-stack button.primary-panel-action{border-color:var(--accent);background:var(--accent);color:#fff}.crop-scope-group{display:grid;gap:8px}.crop-scope-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.task-stack button.crop-scope-option{display:grid;min-height:54px;align-content:center;gap:2px;border-color:color-mix(in srgb,var(--accent) 18%,var(--border));background:color-mix(in srgb,var(--surface) 94%,var(--accent));color:var(--text-primary);text-align:left}.task-stack button.crop-scope-option span{font-weight:700}.task-stack button.crop-scope-option small{color:var(--text-muted);font-size:.78rem}.task-stack button.crop-scope-option.selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--surface));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 16%,transparent)}.crop-proposal-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.crop-proposal-actions button:first-child{border-color:color-mix(in srgb,var(--accent) 44%,var(--panel-border));background:color-mix(in srgb,var(--accent) 10%,var(--panel-bg))}.crop-auto-message{margin:-4px 0 0;color:var(--text-muted);font-size:12px;font-weight:750;line-height:1.35}.crop-auto-message.warning{color:var(--danger)}.crop-mobile-target-summary{display:none}.crop-range-field{display:grid;gap:6px}.crop-range-field input{min-height:40px;border:1px solid color-mix(in srgb,var(--accent) 22%,var(--panel-border));border-radius:8px;background:var(--panel-bg);color:var(--text-primary);padding:0 12px;font-weight:750}.crop-range-field small,.crop-apply-summary{color:var(--text-muted);font-size:12px;font-weight:750;line-height:1.35}.crop-range-field small.error{color:var(--danger)}.crop-apply-summary{margin:-2px 0 0}.edit-text-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.edit-text-status-grid span,.edit-text-selection-card{display:inline-flex;min-height:34px;align-items:center;justify-content:center;gap:6px;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-muted);color:var(--text-primary);font-size:12px;font-weight:800}.edit-text-selection-card{display:grid;justify-content:stretch;gap:3px;padding:10px;text-align:left}.edit-text-selection-card strong{color:var(--text-primary);font-size:13px}.edit-text-selection-card span{color:var(--text-muted);font-size:12px}.edit-text-style-card{display:grid;gap:8px;padding:12px;border:1px solid var(--panel-border);border-radius:10px;background:var(--panel-muted)}.edit-text-style-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.edit-text-style-title{font-size:12px;font-weight:800;color:var(--text-primary)}.edit-text-style-readout{display:inline-flex;align-items:center;gap:6px;min-width:0}.edit-text-readout-row{display:flex;align-items:center;gap:8px;min-width:0}.edit-text-tag{padding:1px 6px;border-radius:5px;background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent-strong);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.03em}.edit-text-style-font{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;color:var(--text-primary)}.edit-text-style-font.muted{color:var(--text-muted);font-weight:600}.edit-text-style-size{font-size:11px;color:var(--text-muted)}.edit-text-style-swatch{width:14px;height:14px;border-radius:4px;border:1px solid color-mix(in srgb,var(--text-primary) 30%,transparent);flex:none}.edit-text-panel .field-label{font-size:11px;font-weight:700;color:var(--text-muted)}.edit-text-panel .panel-select{width:100%;padding:7px 9px;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg);color:var(--text-primary);font-size:13px;font-weight:600}.edit-text-panel .panel-select:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 22%,transparent)}.edit-text-panel .panel-button{padding:8px 12px;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg);color:var(--text-primary);font-size:12px;font-weight:700;cursor:pointer}.edit-text-panel .panel-button.danger{border-color:color-mix(in srgb,var(--danger) 40%,var(--panel-border));color:var(--danger)}.edit-text-panel .panel-button.danger:hover:not(:disabled){background:var(--danger);color:#fff}.edit-text-style-row{display:flex;align-items:center;gap:8px}.edit-text-style-toggles{flex:none}.edit-text-style-toggles button{padding:6px 10px}.edit-text-size-field{display:inline-flex;align-items:center;gap:4px;margin-left:auto;padding:0 8px;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg)}.edit-text-size-field input{width:48px;border:none;background:transparent;color:var(--text-primary);font-size:13px;font-weight:700;text-align:right;padding:6px 0}.edit-text-size-field span{font-size:11px;color:var(--text-muted)}.edit-text-swatches{display:flex;flex-wrap:wrap;gap:6px}.edit-text-swatch{width:26px;height:26px;border-radius:7px;border:1px solid color-mix(in srgb,var(--text-primary) 22%,transparent);cursor:pointer;padding:0;position:relative}.edit-text-swatch.active{box-shadow:0 0 0 2px var(--accent)}.edit-text-swatch-custom{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(135deg,#f87171,#facc15,#34d399,#60a5fa,#a78bfa)}.edit-text-swatch-custom input{position:absolute;inset:-4px;width:calc(100% + 8px);height:calc(100% + 8px);border:none;padding:0;cursor:pointer;opacity:0}.edit-text-style-hint{margin:0}.edit-text-selection-info{display:grid;gap:3px}.edit-text-delete{margin-top:8px;width:100%;display:inline-flex;align-items:center;justify-content:center;gap:6px}.secondary-button input[type=file]{position:absolute}button:disabled,.secondary-button:has(input:disabled){cursor:not-allowed;opacity:.55}.editor-workspace{display:grid;min-height:0;grid-template-columns:240px minmax(0,1fr) 330px;background:var(--app-bg)}.page-strip,.right-panel,.document-stage{display:flex;min-height:0;flex-direction:column;background:var(--panel-bg)}.page-strip{border-right:1px solid var(--panel-border);background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 5%,transparent),transparent 180px),var(--panel-bg);overflow:hidden}.right-panel{border-left:1px solid var(--panel-border);overflow:hidden}.right-panel>.task-stack{flex:1 1 auto;min-height:0;overflow-y:auto}.document-stage{min-width:0}.mobile-sheet-backdrop,.mobile-sheet-handle-row,.mobile-pages-backdrop,.mobile-pages-close,.mobile-command-only{display:none}.mobile-sheet-close{display:none;margin-left:auto;width:32px;height:32px;place-items:center;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg);color:var(--text-secondary)}.panel-title{display:flex;align-items:center;gap:8px;min-height:48px;border-bottom:1px solid var(--panel-border);color:var(--text-secondary);font-size:12px;font-weight:850;padding:0 16px;text-transform:uppercase}.empty-panel{color:var(--text-secondary);line-height:1.5;padding:18px}.thumbnail-list{display:grid;align-content:start;gap:4px;flex:1 1 auto;min-height:0;overflow:auto;padding:10px 12px 14px;scrollbar-gutter:stable}.thumbnail-list.virtualized{align-items:start}.thumbnail-virtual-spacer{flex:0 0 auto;min-width:1px;min-height:1px}.editor-thumbnail-slot{display:grid;gap:2px;min-width:0}.editor-thumbnail-slot .page-card{border-radius:8px;padding:7px;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.editor-thumbnail-slot .page-card:hover,.editor-thumbnail-slot .page-card:focus-within{border-color:color-mix(in srgb,var(--accent) 55%,var(--panel-border));background:color-mix(in srgb,var(--accent) 6%,transparent)}.editor-thumbnail-slot .page-card.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 11%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 26%,transparent),0 10px 24px color-mix(in srgb,var(--accent) 10%,transparent)}.editor-insert-boundary{position:relative;display:grid;min-height:24px;place-items:center;padding:0;border:0;background:transparent;color:var(--accent);cursor:pointer;-webkit-tap-highlight-color:transparent}.editor-insert-boundary:focus-visible{outline:none}.editor-insert-line{width:100%;max-width:142px;height:2px;border-radius:999px;background:color-mix(in srgb,var(--accent) 22%,transparent);transition:background .16s ease,max-width .16s ease}.editor-insert-dot{position:absolute;display:grid;width:22px;height:22px;place-items:center;border:1px solid color-mix(in srgb,var(--accent) 80%,white);border-radius:999px;background:var(--accent);color:#fff;box-shadow:0 6px 16px color-mix(in srgb,var(--accent) 28%,transparent);transform:scale(.86);transition:box-shadow .16s ease,transform .16s ease}.editor-insert-boundary:hover .editor-insert-line,.editor-insert-boundary:focus-visible .editor-insert-line{max-width:168px;background:color-mix(in srgb,var(--accent) 60%,transparent)}.editor-insert-boundary:hover .editor-insert-dot,.editor-insert-boundary:focus-visible .editor-insert-dot{transform:scale(1);box-shadow:0 8px 20px color-mix(in srgb,var(--accent) 40%,transparent)}.thumbnail-card{display:grid;gap:8px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text-secondary);padding:8px;text-align:center}.thumbnail-card>button:first-child{display:grid;gap:8px;border:0;background:transparent;color:inherit;padding:0}.thumbnail-card.selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent-strong)}.thumbnail-card.checked{border-color:#16a34a;box-shadow:0 0 0 2px #16a34a24}.thumbnail-page{display:grid;aspect-ratio:.72;place-items:center;border:1px solid var(--panel-border);border-radius:6px;background:var(--panel-bg);color:var(--text-soft);font-size:20px;font-weight:850}.thumbnail-card.selected .thumbnail-page{border-color:var(--accent)}.insert-page-button{margin:14px}.page-check{display:flex;align-items:center;justify-content:center;gap:6px;color:var(--text-secondary);font-size:12px;font-weight:800}.page-mini-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}.page-mini-actions button{display:grid;min-height:28px;place-items:center;border:1px solid var(--panel-border);border-radius:7px;background:var(--panel-bg);color:var(--text-secondary)}.tool-rail{display:flex;gap:8px;overflow-x:auto;border-bottom:1px solid var(--panel-border);background:var(--panel-muted);padding:10px 14px;scrollbar-width:none}.tool-rail::-webkit-scrollbar{display:none}.tool-rail button{display:inline-flex;min-height:34px;align-items:center;justify-content:center;gap:7px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text-secondary);font-size:13px;font-weight:800;padding:0 12px;white-space:nowrap}.tool-rail button svg{flex:0 0 auto}.tool-rail button.active{border-color:var(--panel-border);background:var(--panel-bg);color:var(--text-primary)}.canvas-area{min-height:0;overflow:hidden;background:linear-gradient(var(--canvas-grid) 1px,transparent 1px),linear-gradient(90deg,var(--canvas-grid) 1px,transparent 1px),var(--app-bg);background-size:24px 24px;padding:0;position:relative;scroll-padding-top:82px}.canvas-scroll{box-sizing:border-box;width:100%;height:100%;min-height:0;overflow:auto;padding:82px 40px 40px;scroll-padding-top:82px}.canvas-area.empty{display:grid;align-content:start;justify-items:center;gap:18px;padding:clamp(32px,8vh,82px) 32px 40px}.canvas-area.empty .error-banner{width:min(520px,92vw);margin:0}.page-preview-shell{--editor-page-base-width: min(72vh, 72vw, 760px);position:relative;display:grid;place-items:center;width:max-content;min-width:min(100%,340px);margin:0 auto;touch-action:pan-x pan-y;user-select:none}.clean-pdf-panel{box-sizing:border-box;width:100%;border:1px solid rgba(15,23,42,.14);border-radius:8px;background:var(--panel-bg);color:var(--text-primary);padding:12px;user-select:none}.clean-pdf-panel-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.clean-pdf-panel-header strong{flex:1;font-size:13px;letter-spacing:0}.clean-pdf-panel-icon{display:inline-grid;width:26px;height:26px;place-items:center;border-radius:7px;background:#2563eb1a;color:#1d4ed8}.clean-pdf-icon-button{display:inline-grid;width:28px;height:28px;place-items:center;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--text-muted);cursor:pointer}.clean-pdf-icon-button:hover{border-color:var(--panel-border);color:var(--text-primary)}.clean-pdf-panel-title{margin:0 0 5px;color:var(--text-primary);font-size:13px;font-weight:760;line-height:1.35}.clean-pdf-panel-copy{margin:0;color:var(--text-muted);font-size:12px;line-height:1.45}.clean-pdf-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0 0 10px}.clean-pdf-status-grid span{display:inline-flex;min-width:0;min-height:32px;align-items:center;justify-content:center;gap:6px;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--panel-border));border-radius:7px;background:color-mix(in srgb,var(--accent) 7%,var(--panel-bg));color:var(--text-primary);font-size:12px;font-weight:800;white-space:nowrap}.clean-pdf-panel-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.clean-pdf-primary-button,.clean-pdf-danger-button,.clean-pdf-secondary-button{display:inline-flex;min-height:32px;align-items:center;justify-content:center;gap:6px;border-radius:7px;padding:0 11px;font-size:12px;font-weight:760;cursor:pointer}.clean-pdf-primary-button{border:1px solid #2563eb;background:#2563eb;color:#fff}.clean-pdf-danger-button{border:1px solid #dc2626;background:#dc2626;color:#fff}.clean-pdf-secondary-button{border:1px solid var(--panel-border);background:var(--panel-bg);color:var(--text-primary)}.clean-pdf-primary-button:disabled,.clean-pdf-danger-button:disabled,.clean-pdf-secondary-button:disabled{cursor:not-allowed;opacity:.58}.page-canvas-toolbar{position:absolute;top:12px;left:50%;z-index:24;display:flex;align-items:center;justify-content:center;gap:6px;width:max-content;max-width:min(calc(100% - 24px),760px);margin:0;padding:7px;border:1px solid color-mix(in srgb,var(--accent) 25%,var(--panel-border));border-radius:999px;background:color-mix(in srgb,var(--panel-bg) 88%,#1f130d);backdrop-filter:blur(10px);box-shadow:0 12px 28px #0f172a2e;transform:translate(-50%)}.page-canvas-toolbar button{display:grid;width:36px;min-height:36px;place-items:center;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--text-primary);font-size:11px;font-weight:850;touch-action:manipulation}.page-canvas-toolbar button:hover:not(:disabled),.page-canvas-toolbar button:focus-visible{border-color:color-mix(in srgb,var(--accent) 38%,transparent);background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent-strong);outline:none}.page-canvas-toolbar button:disabled{opacity:.38}.page-canvas-toolbar button.danger:hover:not(:disabled),.page-canvas-toolbar button.danger:focus-visible{border-color:#dc262659;background:#dc26261a;color:#dc2626}.page-canvas-toolbar-status{display:grid;min-width:68px;color:var(--text-primary);font-size:12px;font-weight:900;line-height:1.1;text-align:center;white-space:nowrap}.page-canvas-toolbar-status small{color:var(--text-secondary);font-size:10px;font-weight:800}.page-canvas-toolbar-zoom{font-variant-numeric:tabular-nums;min-width:48px}.toolbar-separator{width:1px;height:26px;background:var(--panel-border)}.toolbar-icon-flip{transform:rotate(180deg)}.drop-target{box-sizing:border-box;display:grid;width:min(520px,90vw);max-width:100%;min-height:260px;place-items:center;align-content:center;gap:12px;border:1px dashed color-mix(in srgb,var(--accent) 52%,var(--panel-border));border-radius:8px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 9%,transparent),transparent 48%),color-mix(in srgb,var(--panel-bg) 96%,var(--accent));color:var(--text-secondary);padding:40px;text-align:center;box-shadow:0 18px 46px #0f172a24;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.drop-target:hover,.drop-target:focus-within{border-color:var(--accent);box-shadow:0 22px 54px color-mix(in srgb,var(--accent) 16%,rgba(15,23,42,.12));transform:translateY(-1px)}.drop-target svg{color:var(--accent)}.drop-target span{color:var(--text-primary);font-size:20px;font-weight:850}.drop-target small{max-width:360px;line-height:1.5}.empty-editor-stack{box-sizing:border-box;display:grid;justify-items:center;gap:18px;width:min(560px,92vw);max-width:100%}.password-panel{box-sizing:border-box;display:grid;gap:12px;width:100%;border:1px solid rgba(217,119,6,.28);border-radius:8px;background:color-mix(in srgb,var(--panel-bg) 94%,#f59e0b);color:var(--text-primary);padding:16px;box-shadow:var(--shadow-soft)}.password-panel p,.password-panel small{margin:0;color:var(--text-secondary);line-height:1.5}.password-panel label{display:grid;gap:6px;color:var(--text-secondary);font-size:12px;font-weight:850}.password-panel input{min-height:38px;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg);color:var(--text-primary);padding:0 10px}.password-panel button{min-height:38px;border:1px solid var(--text-primary);border-radius:8px;background:var(--text-primary);color:var(--panel-bg);font-weight:850}.pdf-page-preview{display:grid;width:var(--editor-page-base-width);min-width:0;max-width:760px;place-items:center;background:#fff;box-shadow:0 24px 60px #0f172a33;border-radius:3px;position:relative}.pdf-page-preview.text-cursor-mode{cursor:text}.text-placement-hit-layer{position:absolute;z-index:0;inset:0;cursor:text;background:transparent;touch-action:pan-x pan-y}.text-placement-hit-layer.replace-mode{cursor:crosshair;touch-action:none}.text-placement-hit-layer:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 35%,transparent);outline-offset:-6px}.replace-region-draft{position:absolute;z-index:4;box-sizing:border-box;border:2px solid var(--accent);border-radius:4px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 18%,transparent),color-mix(in srgb,#ffffff 12%,transparent));box-shadow:0 0 0 1px color-mix(in srgb,#ffffff 65%,transparent) inset,0 10px 26px #f9731638;pointer-events:none}.replace-region-draft.active{outline:1px dashed color-mix(in srgb,var(--accent) 72%,#111827);outline-offset:3px}.safe-margin{position:absolute;inset:6%;border:1px dashed var(--warning);opacity:.75;pointer-events:none}.inline-text-draft{position:absolute;z-index:5;box-sizing:border-box;min-width:96px;min-height:34px;border:1px dashed color-mix(in srgb,var(--accent) 72%,transparent);border-radius:3px;outline:1px solid color-mix(in srgb,var(--accent) 18%,transparent);background:color-mix(in srgb,white 16%,transparent);box-shadow:0 8px 22px #0f172a14;caret-color:var(--accent);font-family:Helvetica,Arial,sans-serif;font-weight:400;line-height:1.2;padding:0;resize:none;touch-action:manipulation}.inline-text-draft::placeholder{color:color-mix(in srgb,var(--accent) 62%,#64748b);font-weight:500}.inline-text-draft:focus{border-style:solid;outline:2px solid color-mix(in srgb,var(--accent) 18%,transparent);background:color-mix(in srgb,white 24%,transparent)}.cover-replace-toggle{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;padding:12px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--accent) 8%,var(--panel-bg))}.cover-replace-toggle input{margin-top:3px;accent-color:var(--accent)}.cover-replace-toggle span{display:grid;gap:4px}.cover-replace-toggle strong{color:var(--text-primary);font-size:.88rem}.cover-replace-toggle small{color:var(--text-muted);line-height:1.45}.cover-replace-note{border-color:color-mix(in srgb,var(--accent) 28%,var(--border))}.crop-interaction-layer{position:absolute;z-index:4;inset:0;touch-action:pan-y}.crop-interaction-layer.dragging{touch-action:none}.crop-overlay{position:absolute;z-index:1;box-sizing:border-box;border:2px solid var(--accent);border-radius:6px;background:color-mix(in srgb,var(--accent) 10%,transparent);box-shadow:0 0 0 9999px #0f172a75,0 0 0 1px color-mix(in srgb,#ffffff 68%,transparent) inset,0 0 28px color-mix(in srgb,var(--accent) 40%,transparent);cursor:move;touch-action:none}.crop-handle{position:absolute;display:grid;width:56px;height:56px;margin:0;border:0;border-radius:999px;background:transparent;padding:0;place-items:center;touch-action:none}.crop-handle:after{display:block;width:18px;height:18px;border:3px solid #ffffff;border-radius:999px;background:var(--accent);box-shadow:0 8px 18px #0f172a47;content:""}.crop-handle.nw{top:-28px;left:-28px;cursor:nwse-resize}.crop-handle.ne{top:-28px;right:-28px;cursor:nesw-resize}.crop-handle.sw{bottom:-28px;left:-28px;cursor:nesw-resize}.crop-handle.se{right:-28px;bottom:-28px;cursor:nwse-resize}.crop-handle.top,.crop-handle.bottom{left:50%;width:84px;height:44px;border-radius:999px;transform:translate(-50%);cursor:ns-resize}.crop-handle.top{top:-22px}.crop-handle.bottom{bottom:-22px}.crop-handle.top:after,.crop-handle.bottom:after{width:46px;height:12px}.crop-handle.left,.crop-handle.right{top:50%;width:44px;height:84px;border-radius:999px;transform:translateY(-50%);cursor:ew-resize}.crop-handle.left{left:-22px}.crop-handle.right{right:-22px}.crop-handle.left:after,.crop-handle.right:after{width:12px;height:46px}.crop-pointer-trail{position:absolute;z-index:2;width:11px;height:11px;border-radius:999px;background:#ffb020;box-shadow:0 0 0 2px #ffffffe6,0 0 18px #f97316f2;pointer-events:none;transform:translate(-50%,50%)}.crop-magnifier{position:absolute;z-index:3;width:88px;height:88px;border:3px solid #ffffff;border-radius:999px;background:radial-gradient(circle at center,transparent 0 8px,rgba(255,255,255,.88) 9px 10px,transparent 11px),linear-gradient(var(--accent),var(--accent)) center / 2px 34px no-repeat,linear-gradient(90deg,var(--accent),var(--accent)) center / 34px 2px no-repeat,color-mix(in srgb,var(--accent) 20%,rgba(15,23,42,.12));box-shadow:0 14px 32px #0f172a42;pointer-events:none;transform:translate(-50%,calc(100% + 18px))}.security-layer{position:absolute;z-index:3;display:grid;overflow:hidden;place-items:center;border:2px solid #111827;color:#111827;font-size:11px;font-weight:850;line-height:1.2;padding:0;pointer-events:none;text-align:center}.security-layer.redaction{background:#111827e0;color:#fff}.security-layer.draft{border-color:#0f766e;background:#14b8a62e;color:#0f766e}.security-layer.whiteout{border-color:transparent;background:#fffffffa;color:transparent}.security-layer.watermark,.security-layer.stamp,.security-layer.signature,.security-layer.text,.security-layer.image{background:#ffffffb3}.security-layer.stamp{border-color:#dc2626;color:#dc2626}.security-layer.signature{border-color:#111827}.security-layer.text,.security-layer.signature,.security-layer.stamp,.security-layer.watermark,.security-layer.image{border-color:var(--accent);background:color-mix(in srgb,white 82%,var(--accent));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent),0 12px 26px #0f172a24}.security-layer.text{justify-content:start;place-items:start;text-align:left;border:0 solid transparent;background:transparent;box-shadow:none;overflow:visible;padding:0;font-family:Helvetica,Arial,sans-serif;font-weight:400}.editable-text-layer{z-index:2;cursor:move;pointer-events:auto;transform-origin:center;touch-action:none;user-select:none}.editable-text-layer.selected{z-index:6;outline:2px solid color-mix(in srgb,var(--accent) 82%,#111827);outline-offset:2px;box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 16%,transparent),0 10px 24px #0f172a1a}.editable-text-layer.gesture-move,.editable-text-layer.gesture-resize,.editable-text-layer.gesture-rotate{opacity:.9}.alignment-guide{position:absolute;z-index:5;background:#d946ef;box-shadow:0 0 0 1px #d946ef33;opacity:.9;pointer-events:none}.alignment-guide.vertical{top:0;bottom:0;width:1px;transform:translate(-50%)}.alignment-guide.horizontal{right:0;left:0;height:1px;transform:translateY(50%)}.editable-text-content{display:block;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;overflow-wrap:anywhere;line-height:1.2;white-space:pre-wrap}.text-resize-handles{position:absolute;inset:0;pointer-events:none}.text-resize-handle{position:absolute;z-index:2;width:var(--handle-size);height:var(--handle-size);min-height:var(--handle-size);border:var(--handle-border-width) solid var(--handle-color);border-radius:var(--handle-radius);background:var(--handle-fill);box-shadow:var(--handle-shadow);opacity:var(--handle-opacity);padding:0;pointer-events:auto;touch-action:none}.text-resize-handle:hover,.text-resize-handle:focus-visible{opacity:1}.text-resize-handle:after{content:"";position:absolute;inset:-12px}.text-resize-handle.n,.text-resize-handle.s{cursor:ns-resize}.text-resize-handle.e,.text-resize-handle.w{cursor:ew-resize}.text-resize-handle.ne,.text-resize-handle.sw{cursor:nesw-resize}.text-resize-handle.nw,.text-resize-handle.se{cursor:nwse-resize}.text-resize-handle.nw{top:-4px;left:-4px}.text-resize-handle.n{top:-4px;left:50%;transform:translate(-50%)}.text-resize-handle.ne{top:-4px;right:-4px}.text-resize-handle.e{top:50%;right:-4px;transform:translateY(-50%)}.text-resize-handle.se{right:-4px;bottom:-4px}.text-resize-handle.s{bottom:-4px;left:50%;transform:translate(-50%)}.text-resize-handle.sw{bottom:-4px;left:-4px}.text-resize-handle.w{top:50%;left:-4px;transform:translateY(-50%)}.text-rotate-zones{position:absolute;inset:-24px;pointer-events:none}.text-rotate-zone{position:absolute;z-index:3;width:28px;height:28px;min-height:28px;border:0;border-radius:999px;background:transparent;padding:0;pointer-events:auto;touch-action:none}.text-rotate-zone:after{position:absolute;inset:8px;border:1px solid color-mix(in srgb,var(--accent) 55%,transparent);border-right-color:transparent;border-radius:999px;content:"";opacity:0;transition:opacity .12s ease,transform .12s ease}.text-rotate-zone:hover:after,.text-rotate-zone:focus-visible:after{opacity:1;transform:scale(1.25)}.text-rotate-zone.nw{top:0;left:0;cursor:alias}.text-rotate-zone.ne{top:0;right:0;cursor:alias}.text-rotate-zone.se{right:0;bottom:0;cursor:alias}.text-rotate-zone.sw{bottom:0;left:0;cursor:alias}.text-context-toolbar{position:absolute;left:50%;top:-48px;z-index:4;display:inline-flex;gap:4px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--panel-border));border-radius:999px;background:color-mix(in srgb,var(--panel-bg) 88%,#1f130d);box-shadow:0 12px 24px #0f172a24;padding:4px;pointer-events:auto;transform:translate(-50%) rotate(calc(-1 * var(--text-rotation, 0deg)));transform-origin:center}.text-context-toolbar button{min-height:28px;border:0;border-radius:999px;background:transparent;color:var(--text-primary);font-size:11px;font-weight:900;padding:0 8px}.text-context-toolbar button:hover,.text-context-toolbar button:focus-visible{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent-strong);outline:none}.text-rotation-tooltip{position:absolute;left:50%;top:calc(100% + 10px);z-index:5;border:1px solid color-mix(in srgb,var(--accent) 28%,transparent);border-radius:999px;background:color-mix(in srgb,var(--panel-bg) 82%,transparent);backdrop-filter:blur(10px);box-shadow:0 12px 24px #0f172a24;color:var(--text-primary);font-size:12px;font-weight:900;padding:5px 9px;pointer-events:none;transform:translate(-50%) rotate(calc(-1 * var(--text-rotation, 0deg)));white-space:nowrap}.inline-text-edit{z-index:7;transform-origin:center}.security-layer.image{background:repeating-linear-gradient(45deg,color-mix(in srgb,var(--accent) 13%,white),color-mix(in srgb,var(--accent) 13%,white) 8px,#ffffffd1 8px 16px);color:color-mix(in srgb,var(--accent) 72%,#111827);font-weight:900}.security-layer.signature{font-family:Georgia,Times New Roman,serif;font-style:italic}.security-layer.stamp{border-style:dashed;font-weight:950;letter-spacing:.04em;text-transform:uppercase;transform:rotate(-2deg)}.page-preview-content{display:grid;gap:10px;color:#475569;text-align:center}.page-preview-content strong{color:#0f172a;font-size:28px}.page-preview-render{position:absolute;inset:0;display:grid;place-items:center;width:100%;height:100%;overflow:hidden}.editor-page-canvas{display:block;border-radius:2px}.editor-page-canvas-host{position:relative;display:grid;min-height:0;place-items:center}.editor-page-canvas-host.rendering:after{position:absolute;right:10px;bottom:10px;width:7px;height:7px;border-radius:999px;background:color-mix(in srgb,var(--accent) 82%,white);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 18%,transparent);content:"";opacity:.75;pointer-events:none}.editor-page-canvas-host.active,.editor-page-canvas.active,.editor-page-canvas-host.live-edit,.editor-page-canvas.live-edit{width:100%;height:100%}.editor-page-canvas-host.thumbnail,.editor-page-canvas.thumbnail,.thumbnail-page .editor-page-canvas{width:100%;height:auto}.thumbnail-crop-indicator{position:absolute;z-index:2;box-sizing:border-box;border:2px solid var(--accent);border-radius:3px;box-shadow:0 0 0 1px #ffffffe6,0 0 12px color-mix(in srgb,var(--accent) 34%,transparent);pointer-events:none}.thumbnail-clean-match-indicator{position:absolute;z-index:3;box-sizing:border-box;border:2px solid #16a34a;border-radius:2px;background:#16a34a29;box-shadow:0 0 0 1px #ffffffd1,0 0 12px #16a34a3d;pointer-events:none}.editor-thumbnail-slot .editor-page-canvas-host{height:auto;min-height:92px}.editor-thumbnail-slot .editor-page-canvas{width:100%;height:auto}.editor-page-canvas-error{font-size:12px;color:var(--text-soft)}.canvas-actions{display:flex;justify-content:center;gap:10px;border-top:1px solid var(--panel-border);background:var(--panel-bg);padding:14px}.error-banner{position:absolute;top:16px;left:50%;transform:translate(-50%);border:1px solid rgba(220,38,38,.24);border-radius:8px;background:var(--panel-bg);color:var(--danger);padding:10px 14px;font-weight:800;box-shadow:var(--shadow-soft)}.task-stack{display:grid;grid-auto-rows:min-content;gap:12px;padding:18px}.task-stack h2{margin:0;font-size:20px}.task-heading-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.task-heading-row h2{min-width:0}.task-stack .icon-button{width:36px;min-height:36px;padding:0}.task-stack h3{margin:4px 0 0;font-size:14px}.geometry-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.geometry-grid label,.field-row{display:grid;gap:6px;color:var(--text-secondary);font-size:12px;font-weight:850}.geometry-grid input,.field-row input,.field-row select{min-height:36px;min-width:0;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg);color:var(--text-primary);padding:0 9px}.field-row input[type=range]{min-height:28px;padding:0}.image-toggle-row{grid-template-columns:auto 1fr;align-items:center}.image-toggle-row input{width:18px;min-height:18px}.field-row.compact{gap:5px}.field-row textarea{min-height:88px;min-width:0;resize:vertical;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg);color:var(--text-primary);line-height:1.45;padding:10px}.phase-d-panel{border-top:3px solid color-mix(in srgb,var(--accent) 70%,transparent)}.style-control-group,.geometry-editor{display:grid;gap:8px}.geometry-editor{grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid color-mix(in srgb,var(--accent) 16%,var(--panel-border));border-radius:8px;background:color-mix(in srgb,var(--accent) 4%,transparent);padding:10px}.segmented-control,.text-rotation-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.segmented-control.two-up{grid-template-columns:repeat(2,minmax(0,1fr))}.segmented-control button,.text-rotation-presets button,.format-button-row button{min-height:34px;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg);color:var(--text-secondary);font-size:12px;font-weight:850;text-transform:capitalize}.segmented-control button.active,.segmented-control button:hover:not(:disabled),.text-rotation-presets button:hover:not(:disabled),.format-button-row button.active,.format-button-row button:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 36%,var(--panel-border));background:color-mix(in srgb,var(--accent) 10%,var(--panel-bg));color:var(--accent-strong)}.format-button-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.format-button-row.two-up{grid-template-columns:repeat(2,minmax(0,1fr))}.format-button-row button{display:grid;place-items:center;text-transform:none}.document-fonts-note{display:grid;gap:3px;border:1px dashed var(--panel-border);border-radius:8px;color:var(--text-secondary);font-size:11px;line-height:1.35;padding:9px}.document-fonts-note strong{color:var(--text-primary);font-size:12px}.direct-text-status{border-style:solid;background:color-mix(in srgb,var(--accent) 6%,var(--panel-bg))}.direct-text-status.warning{border-color:color-mix(in srgb,var(--warning) 45%,var(--panel-border));background:color-mix(in srgb,var(--warning) 8%,var(--panel-bg))}.color-control{display:grid;gap:8px}.color-swatch-grid{display:flex;flex-wrap:wrap;gap:7px}.color-swatch-grid button{width:30px;min-height:30px;border:2px solid var(--panel-bg);border-radius:999px;padding:0;box-shadow:0 0 0 1px var(--panel-border)}.color-swatch-grid button[data-transparent=true]{background:linear-gradient(45deg,transparent 46%,#ef4444 47%,#ef4444 53%,transparent 54%),conic-gradient(#e5e7eb 25%,#fff 0 50%,#e5e7eb 0 75%,#fff 0);background-size:100% 100%,12px 12px}.color-swatch-grid button.active{box-shadow:0 0 0 2px var(--accent),0 8px 16px color-mix(in srgb,var(--accent) 18%,transparent)}.custom-color-picker{display:flex;min-height:34px;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg);color:var(--text-secondary);font-size:12px;font-weight:850;padding:5px 7px 5px 10px}.custom-color-picker input{width:42px;min-height:26px;border:0;border-radius:6px;background:transparent;padding:0}.contrast-preset-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.contrast-preset-row button{display:flex;min-height:38px;align-items:center;gap:7px;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg);color:var(--text-primary);font-size:11px;font-weight:850;padding:5px 7px;text-align:left}.contrast-preset-row button:hover,.contrast-preset-row button:focus-visible{border-color:color-mix(in srgb,var(--accent) 36%,var(--panel-border));background:color-mix(in srgb,var(--accent) 8%,var(--panel-bg))}.contrast-preset-row span{display:grid;min-width:30px;min-height:24px;place-items:center;border:1px solid var(--panel-border);border-radius:6px;font-weight:950}.signature-preview-card{display:grid;min-height:82px;place-items:center;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--panel-border));border-radius:8px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 8%,transparent),transparent),var(--panel-bg);color:var(--text-primary);font-family:Georgia,Times New Roman,serif;font-size:28px;font-style:italic;box-shadow:var(--shadow-soft)}.signature-task-panel{gap:14px}.signature-panel-section{display:flex;flex-direction:column;gap:10px}.forms-placement-overlay{position:absolute;inset:0;z-index:6;pointer-events:none}.forms-scan-sweep{position:absolute;inset:0;display:none;pointer-events:none}.forms-field-target{position:absolute;z-index:2;display:block;box-sizing:border-box;border:0;border-radius:4px;background:transparent;color:transparent;box-shadow:none;pointer-events:auto;cursor:text;appearance:none;outline:none;transition:box-shadow .14s ease,background-color .14s ease}.forms-field-target:hover,.forms-field-target:focus-visible{background:color-mix(in srgb,var(--accent) 7%,transparent);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--accent) 45%,transparent)}.forms-field-target.is-active{background:color-mix(in srgb,var(--accent) 10%,transparent);box-shadow:0 0 0 2px var(--accent),0 0 0 6px color-mix(in srgb,var(--accent) 22%,transparent);animation:forms-focus-ring-in .2s ease-out}.forms-field-target.is-filled:not(.is-active){background:transparent;box-shadow:none}@keyframes forms-focus-ring-in{0%{box-shadow:0 0 0 2px var(--accent),0 0 0 12px color-mix(in srgb,var(--accent) 0%,transparent)}to{box-shadow:0 0 0 2px var(--accent),0 0 0 6px color-mix(in srgb,var(--accent) 22%,transparent)}}.forms-field-checkbox,.forms-field-radio{border-radius:4px}.forms-field-radio{border-radius:999px}.forms-field-target.is-low-confidence{border-style:solid}.forms-field-target.is-low-confidence:hover,.forms-field-target.is-low-confidence:focus-visible,.forms-field-target.is-low-confidence.is-active:not(.is-filled){border-style:none;border-color:transparent;background:transparent}.forms-acro-widget{position:absolute;z-index:1;display:block;box-sizing:border-box;border:0;border-radius:4px;background:transparent;color:transparent;pointer-events:auto;cursor:text;appearance:none;outline:none;transition:box-shadow .14s ease,background-color .14s ease}.forms-acro-widget:hover,.forms-acro-widget:focus-visible{background:color-mix(in srgb,var(--accent) 7%,transparent);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--accent) 45%,transparent)}.forms-acro-widget.is-active{background:color-mix(in srgb,var(--accent) 10%,transparent);box-shadow:0 0 0 2px var(--accent),0 0 0 6px color-mix(in srgb,var(--accent) 22%,transparent);animation:forms-focus-ring-in .2s ease-out}.forms-acro-widget.is-unsupported,.forms-acro-widget.is-unsupported:hover,.forms-acro-widget.is-unsupported:focus-visible{background:transparent;box-shadow:none;cursor:not-allowed}.forms-acro-widget.forms-acro-choice{z-index:2;color:var(--text, #111827);background-color:color-mix(in srgb,var(--surface, #fff) 96%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent);cursor:pointer;font:inherit;font-size:12px;padding:0 16px 0 4px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23888' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 4px center;background-size:8px 5px}.forms-acro-widget.forms-acro-choice:hover,.forms-acro-widget.forms-acro-choice.is-active{background-color:color-mix(in srgb,var(--surface, #fff) 99%,transparent);box-shadow:inset 0 0 0 1.5px var(--accent)}.forms-acro-choice option{color:var(--text, #111827);background:var(--surface, #fff)}.forms-mobile-action-bar{display:none}@media(max-width:820px){.forms-mobile-action-bar{position:fixed;left:0;right:0;bottom:calc(var(--forms-kb-inset, 0px) + env(safe-area-inset-bottom,0px));z-index:70;display:flex;gap:8px;padding:8px 12px;background:color-mix(in srgb,var(--surface, #fff) 94%,transparent);border-top:1px solid var(--panel-border, #e5e7eb);box-shadow:0 -6px 18px #00000024;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.forms-mobile-action{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:44px;border:1px solid var(--panel-border, #e5e7eb);border-radius:10px;background:var(--surface, #fff);color:var(--text, #111827);font-size:14px;font-weight:600}.forms-mobile-action:disabled{opacity:.45}.forms-mobile-done{background:var(--accent, #2563eb);border-color:var(--accent, #2563eb);color:#fff}.forms-primary-actions button,.forms-map-item,.forms-size-control input,.forms-stepper-group button,.forms-color-row button,.forms-control-label select{min-height:44px}.forms-color-row button{min-width:44px}}.forms-inline-editor{position:absolute;z-index:3;overflow:hidden;border-radius:4px;pointer-events:auto}.forms-inline-editor-field{display:block;box-sizing:border-box;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:4px;background:color-mix(in srgb,var(--surface, #fff) 96%,transparent);appearance:none;outline:none;resize:none;overflow:hidden;caret-color:var(--accent);box-shadow:0 0 0 2px var(--accent),0 0 0 6px color-mix(in srgb,var(--accent) 22%,transparent)}.forms-inline-editor-field::selection{background:color-mix(in srgb,var(--accent) 28%,transparent)}.forms-inline-editor[data-fit=tight] .forms-inline-editor-field{caret-color:#b45309;box-shadow:0 0 0 2px #f59e0b,0 0 0 6px color-mix(in srgb,#f59e0b 24%,transparent)}.forms-inline-editor[data-fit=overflow] .forms-inline-editor-field{caret-color:#b91c1c;box-shadow:0 0 0 2px #ef4444,0 0 0 6px color-mix(in srgb,#ef4444 24%,transparent)}.forms-inline-fit-warning{position:absolute;z-index:4;padding:1px 6px;border-radius:5px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;line-height:1.4;white-space:nowrap;pointer-events:none}.forms-inline-suggestion{position:absolute;z-index:5;display:inline-flex;align-items:center;gap:6px;margin:0;padding:2px 6px 2px 8px;border:1px solid #2563eb;border-radius:6px;background:#eff6ff;color:#1e3a8a;font-size:11px;line-height:1.4;white-space:nowrap;cursor:pointer;box-shadow:0 1px 3px #0f172a33}.forms-inline-suggestion:hover{background:#dbeafe}.forms-inline-suggestion-label{font-weight:700}.forms-inline-suggestion-value{max-width:220px;overflow:hidden;text-overflow:ellipsis}.forms-inline-suggestion-key{padding:0 4px;border-radius:3px;background:#2563eb;color:#fff;font-size:9px;font-weight:700}.forms-draft-banner{display:flex;align-items:center;gap:10px;margin:0 0 12px;padding:10px 12px;border:1px solid var(--border-subtle, #e2e8f0);border-radius:10px;background:var(--surface-raised, #f8fafc);color:var(--text-primary, #0f172a)}.forms-draft-banner-resume{border-color:#2563eb;background:#eff6ff}.forms-draft-banner>svg{flex:0 0 auto;color:#2563eb}.forms-draft-banner-body{flex:1 1 auto;min-width:0}.forms-draft-banner-title{margin:0;font-size:13px;font-weight:600}.forms-draft-banner-hint{margin:2px 0 0;font-size:11.5px;color:var(--text-secondary, #64748b)}.forms-draft-banner-buttons{display:flex;flex-direction:column;gap:4px}.forms-draft-banner-action{padding:6px 12px;border:none;border-radius:7px;background:#2563eb;color:#fff;font-size:12px;font-weight:600;cursor:pointer}.forms-draft-banner-action:disabled{opacity:.6;cursor:default}.forms-draft-banner-secondary{padding:6px 12px;border:1px solid var(--border-subtle, #cbd5e1);border-radius:7px;background:transparent;color:var(--text-secondary, #475569);font-size:12px;cursor:pointer}@media(prefers-color-scheme:dark){.forms-draft-banner-resume{background:#2563eb29}}.forms-flatten-choice{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border:1px solid var(--border-subtle, #e2e8f0);border-radius:10px;background:var(--surface-raised, #f8fafc)}.forms-flatten-choice-title{font-size:12px;font-weight:600;color:var(--text-secondary, #64748b);text-transform:uppercase;letter-spacing:.04em}.forms-flatten-choice label{display:flex;align-items:flex-start;gap:8px;cursor:pointer}.forms-flatten-choice input[type=radio]{margin-top:3px;flex:0 0 auto}.forms-flatten-choice label strong{display:block;font-size:13px;color:var(--text-primary, #0f172a)}.forms-flatten-choice label small{display:block;margin-top:1px;font-size:11.5px;line-height:1.35;color:var(--text-secondary, #64748b)}.forms-flatten-warnings{margin:2px 0 0;padding:8px 10px 8px 26px;border-radius:8px;background:#d977061f;color:#92400e;font-size:11.5px;line-height:1.4}.forms-flatten-warnings li+li{margin-top:4px}@media(prefers-color-scheme:dark){.forms-flatten-warnings{background:#d9770633;color:#fbbf24}}.forms-progress-indicator{display:flex;align-items:center;gap:8px;min-width:190px;color:var(--text-secondary);font-size:12px}.forms-progress-track{width:86px;height:6px;overflow:hidden;border-radius:999px;background:var(--surface-muted)}.forms-progress-fill{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .18s ease,background .18s ease}.forms-progress-fill[data-complete=true]{background:#16a34a}.forms-privacy-badge{display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid color-mix(in srgb,#16a34a 34%,var(--border));border-radius:999px;background:color-mix(in srgb,#16a34a 9%,var(--surface));color:var(--text-primary);font-size:12px}.forms-privacy-dot{width:8px;height:8px;border-radius:999px;background:#16a34a;box-shadow:0 0 0 4px #16a34a24}.forms-privacy-muted{color:var(--text-secondary)}.forms-task-panel{display:flex;min-height:0;flex-direction:column;gap:12px;overflow:auto;padding-right:3px;scrollbar-width:thin}.forms-panel-card{display:grid;gap:12px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.forms-fill-card{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 6%,transparent),transparent 58%),var(--surface)}.forms-panel-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.forms-panel-title-row.compact{align-items:center}.forms-panel-title-row h2,.forms-panel-title-row h3{margin:0;color:var(--text-primary)}.forms-panel-title-row h2{font-size:17px}.forms-panel-title-row h3{font-size:13px}.forms-panel-title-row p,.forms-panel-note,.forms-empty-state{margin:4px 0 0;color:var(--text-secondary);font-size:12px;line-height:1.4}.forms-mode-pill,.forms-warning-pill{flex:0 0 auto;border-radius:999px;background:var(--surface-muted);color:var(--text-secondary);font-size:11px;font-weight:800;line-height:1;padding:5px 7px;white-space:nowrap}.forms-warning-pill{background:#f59e0b24;color:#b45309}.forms-progress-block{display:grid;gap:7px}.forms-progress-copy{display:flex;align-items:baseline;justify-content:space-between;gap:10px;color:var(--text-secondary);font-size:12px}.forms-progress-copy strong{color:var(--text-primary);font-size:18px}.forms-primary-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.forms-primary-actions button,.forms-link-button,.forms-stepper-group button{border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-primary);cursor:pointer;font:inherit}.forms-primary-actions button{min-height:34px;padding:8px 9px;font-size:12px;font-weight:750}.forms-primary-actions button:disabled,.forms-stepper-group button:disabled{cursor:not-allowed;opacity:.55}.forms-primary-actions .forms-finish-button{grid-column:1 / -1;border-color:color-mix(in srgb,var(--accent) 72%,var(--border));background:var(--accent);color:#fff}.forms-selected-field{display:grid;gap:3px;min-width:0;padding:8px;border-radius:7px;background:var(--surface-muted)}.forms-selected-field span{color:var(--text-secondary);font-size:11px}.forms-selected-field strong{min-width:0;overflow:hidden;color:var(--text-primary);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.forms-appearance-panel{gap:10px}.forms-link-button{min-height:28px;padding:5px 8px;font-size:12px}.forms-control-label{display:grid;gap:5px;min-width:0;color:var(--text-secondary);font-size:11px}.forms-control-label select,.forms-control-label input{width:100%;min-width:0;box-sizing:border-box;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text-primary);font:inherit;font-size:12px;min-height:34px;padding:7px 8px}.forms-control-label select:focus,.forms-control-label input:focus,.forms-profile-field input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}.forms-size-control{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px}.forms-stepper-group{display:flex;gap:5px}.forms-stepper-group button{width:34px;height:34px;font-size:16px;line-height:1}.forms-color-control{display:grid;gap:6px;color:var(--text-secondary);font-size:11px}.forms-color-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.forms-color-row button{width:24px;height:24px;border:1px solid var(--border);border-radius:999px;box-shadow:0 0 0 1px #ffffffb8 inset;cursor:pointer}.forms-color-row button.is-active{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 32%,transparent),0 0 0 1px #ffffffb8 inset}.forms-custom-color{display:inline-flex;align-items:center;gap:5px;color:var(--text-secondary);font-size:11px}.forms-custom-color input{width:28px;height:24px;padding:0;border:1px solid var(--border);border-radius:6px;background:transparent}.forms-control-warning{margin:0;padding:7px 8px;border-radius:7px;background:#f59e0b1f;color:#92400e;font-size:12px;line-height:1.35}.forms-acro-panel{display:grid;gap:10px;padding:10px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.forms-acro-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.forms-acro-header h3,.forms-section-title{margin:0;color:var(--text-primary);font-size:12px;font-weight:900;letter-spacing:0;text-transform:uppercase}.forms-acro-header p,.forms-acro-item p{margin:3px 0 0;color:var(--text-secondary);font-size:12px;line-height:1.35}.forms-acro-warnings{display:grid;gap:5px;margin:0;padding:0;list-style:none}.forms-acro-warnings li{border-left:3px solid #f59e0b;border-radius:6px;background:#f59e0b1a;color:var(--text-primary);font-size:12px;line-height:1.35;padding:7px 8px}.forms-acro-list{display:grid;gap:7px;max-height:220px;overflow:auto}.forms-acro-item{display:flex;flex-wrap:wrap;align-items:center;gap:5px 7px;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:8px}.forms-acro-name{flex:1 1 100%;overflow:hidden;color:var(--text-primary);font-size:12px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.forms-acro-item small{color:var(--text-secondary);font-size:11px}.forms-acro-badge{display:inline-flex;align-items:center;border-radius:999px;background:var(--surface-muted);color:var(--text-secondary);font-size:10px;font-weight:850;line-height:1;padding:4px 6px;text-transform:uppercase}.forms-acro-badge.is-supported{background:#16a34a1f;color:#15803d}.forms-acro-badge.is-warning{background:#f59e0b24;color:#b45309}.forms-static-fallback-toggle{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-primary);font-size:12px;font-weight:750;line-height:1.35;padding:8px}.forms-static-fallback-toggle input{width:14px;height:14px;margin:0}.forms-profile-panel{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.forms-profile-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.forms-profile-header h3{margin:0;font-size:14px}.forms-profile-header p{margin:2px 0 0;color:var(--text-secondary);font-size:12px;line-height:1.35}.forms-profile-status{flex:0 0 auto;padding:4px 7px;border-radius:999px;background:var(--surface-muted);color:var(--text-secondary);font-size:11px}.forms-profile-status.error{background:#dc26261c;color:#b91c1c}.forms-chip-group{display:flex;flex-wrap:wrap;gap:6px}.forms-chip-group button{border:1px solid color-mix(in srgb,var(--accent) 42%,var(--border));border-radius:999px;padding:5px 8px;background:color-mix(in srgb,var(--accent) 8%,var(--surface));color:var(--text-primary);font:inherit;font-size:12px;cursor:pointer}.forms-chip-group.secondary button{border-color:var(--border);background:var(--surface)}.forms-profile-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;max-height:230px;overflow:auto;padding-right:2px}.forms-profile-field{display:flex;min-width:0;flex-direction:column;gap:4px}.forms-profile-field span{color:var(--text-secondary);font-size:11px}.forms-profile-field input{width:100%;box-sizing:border-box;border:1px solid var(--border);border-radius:7px;min-height:32px;padding:6px 8px;background:var(--surface);color:var(--text-primary);font:inherit;font-size:12px}.forms-profile-actions{display:flex;gap:8px;flex-wrap:wrap}.forms-profile-actions button{border:1px solid var(--border);border-radius:8px;padding:7px 9px;background:var(--surface);color:var(--text-primary);font:inherit;font-size:12px;cursor:pointer}.forms-profile-actions button:disabled{cursor:not-allowed;opacity:.55}.forms-profile-error{margin:0;color:#b91c1c;font-size:12px;line-height:1.35}.forms-field-map{display:flex;min-height:80px;max-height:320px;flex-direction:column;gap:7px;overflow:auto;padding-right:2px}.forms-map-item{display:flex;width:100%;align-items:center;gap:9px;min-height:42px;padding:8px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-primary);text-align:left;cursor:pointer}.forms-map-item.is-active,.forms-map-item:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.forms-map-item.is-filled{border-color:color-mix(in srgb,#16a34a 55%,var(--border))}.forms-map-index{display:grid;width:22px;height:22px;flex:0 0 auto;place-items:center;border-radius:999px;background:var(--surface-muted);color:var(--text-secondary);font-size:12px}.forms-real-field-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--text-secondary);font-size:12px}.forms-map-copy{min-width:0;display:flex;flex-direction:column;gap:2px}.forms-map-copy span,.forms-map-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.forms-map-copy small{color:var(--text-secondary)}@media(prefers-reduced-motion:reduce){.forms-scan-sweep{animation:none;opacity:0}.forms-field-target,.forms-acro-widget,.forms-progress-fill{transition:none}.forms-field-target.is-active,.forms-acro-widget.is-active{animation:none}}.signature-library-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.signature-save-badge{display:inline-flex;align-items:center;min-height:24px;border:1px solid var(--panel-border);border-radius:999px;color:var(--text-secondary);font-size:11px;font-weight:800;padding:0 8px;white-space:nowrap}.signature-save-badge.saved{border-color:#16a34a52;background:#16a34a14;color:#166534}.signature-finish-section{position:sticky;bottom:0;padding-top:12px;margin-top:2px;background:var(--panel-bg, #fff);border-top:1px solid var(--border-subtle, rgba(15, 23, 42, .08));z-index:2}.signature-apply-button{min-height:44px;font-weight:600}.signature-disclosure{font-size:11px;opacity:.72}.signature-create-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.signature-create-grid button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px}.signature-asset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:8px}.signature-asset-card{display:grid;gap:6px;min-width:0;padding:8px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-primary)}.signature-asset-card.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.signature-asset-preview-button{display:grid;gap:6px;min-width:0;min-height:80px;padding:0;border:0;background:transparent;color:inherit}.signature-asset-grid img,.signature-selected-asset img{display:block;width:100%;max-height:72px;object-fit:contain;background-color:#fff;background-image:linear-gradient(45deg,#e5e7eb 25%,transparent 25%),linear-gradient(-45deg,#e5e7eb 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e5e7eb 75%),linear-gradient(-45deg,transparent 75%,#e5e7eb 75%);background-position:0 0,0 6px,6px -6px,-6px 0;background-size:12px 12px;border-radius:4px}.signature-asset-grid span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.signature-asset-actions{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.signature-asset-actions .icon-button{width:28px;height:28px;min-height:28px;padding:0}.signature-asset-actions .icon-button.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent-strong)}.signature-asset-rename{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px}.signature-asset-rename input{min-width:0;min-height:32px;border:1px solid var(--panel-border);border-radius:7px;background:var(--panel-bg);color:var(--text-primary);padding:0 8px;font-size:12px}.signature-selected-asset{padding:10px;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface) 92%,var(--accent))}.signature-dialog-backdrop{position:fixed;inset:0;z-index:70;display:flex;align-items:center;justify-content:center;padding:16px;background:#0f172a80}.signature-dialog{width:min(760px,100%);max-height:min(760px,calc(100vh - 32px));display:flex;flex-direction:column;gap:14px;padding:18px;border:1px solid var(--panel-border);border-radius:12px;background:var(--panel-bg);box-shadow:0 22px 54px #0f172a52;overflow:auto}.signature-dialog-header,.signature-dialog-footer,.signature-control-row{display:flex;align-items:center;gap:10px}.signature-dialog-header{justify-content:space-between}.signature-dialog-header h2,.signature-dialog-header p{margin:0}.signature-dialog-header p,.signature-error{font-size:13px;color:var(--text-secondary)}.signature-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.signature-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px}.signature-tabs button.active,.signature-style-grid button.selected,.signature-color-row button.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.signature-studio-body,.signature-studio-pane{display:flex;flex-direction:column;gap:12px}.signature-dialog-draw .signature-studio-body,.signature-dialog-draw .signature-studio-pane{min-height:0}.signature-pad-canvas{width:100%;max-width:100%;aspect-ratio:720 / 260;border:1px solid var(--border);border-radius:8px;background:var(--surface);cursor:crosshair;touch-action:none}.signature-control-row{flex-wrap:wrap}.signature-control-row label{flex:1 1 140px;display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-secondary)}.signature-style-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.signature-style-grid button{min-height:52px;font-size:22px;overflow:hidden}.signature-typed-preview{min-height:96px;display:grid;place-items:center;padding:14px;border:1px dashed var(--border);border-radius:8px;background:var(--surface);font-size:clamp(38px,8vw,76px);line-height:1}.signature-import-box{min-height:130px;display:grid;place-items:center;gap:8px;padding:18px;border:1px dashed var(--border);border-radius:8px;background:var(--surface);text-align:center;cursor:pointer}.signature-import-box input{display:none}.signature-import-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.signature-import-actions label{display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer}.signature-import-actions input{display:none}.signature-dialog-footer{justify-content:flex-end;flex-wrap:wrap}.signature-color-row{margin-right:auto;display:inline-flex;align-items:center;gap:6px}.signature-color-row button,.signature-color-row input{width:28px;height:28px;padding:0;border:1px solid var(--border);border-radius:999px;overflow:hidden}.signature-error{margin:0;color:#dc2626}.signature-tool-grid,.signature-place-actions,.signature-field-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.signature-tool-grid button,.signature-place-actions button,.signature-field-nav button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px}.signature-field-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.signature-fields-panel .field-row{margin-top:0}.signature-tool-grid button.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.signature-pending-list{display:flex;flex-direction:column;gap:6px;padding:0;margin:0;list-style:none}.signature-pending-list li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px;align-items:center;padding:6px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.signature-pending-list li.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.signature-pending-list li>button:first-child{min-width:0;border:none;background:transparent;color:var(--text-primary);text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.signature-numeric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.signature-numeric-grid label,.signature-color-property{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-secondary)}.signature-numeric-grid input[type=number]{width:100%;min-width:0}.signature-placement-overlay,.signature-drop-layer{position:absolute;inset:0;z-index:3}.signature-placement-overlay{overflow:visible;cursor:crosshair}.signature-placement-overlay[data-tool=select]{cursor:default}.signature-drop-layer{z-index:2;pointer-events:auto}.signature-draft{cursor:move}.signature-draft-hit{fill:transparent;stroke:none;pointer-events:all}.signature-draft image,.signature-draft text,.signature-draft polyline{pointer-events:none}.signature-field-highlight{cursor:pointer}.signature-field-highlight rect{fill:#2563eb14;stroke:#2563eb57;stroke-width:1.2px;stroke-dasharray:4 3;pointer-events:all}.signature-field-highlight.active rect,.signature-field-highlight.magnetic rect{fill:#2563eb2e;stroke:#1d4ed8d1;stroke-width:1.6px;stroke-dasharray:none}.signature-field-highlight.magnetic rect{fill:#16a34a33;stroke:#166534d1}.signature-selection-frame rect{fill:none;stroke:var(--accent);stroke-width:1.4px;stroke-dasharray:5 4}.signature-resize-handle,.signature-rotate-handle{fill:var(--handle-fill);stroke:var(--handle-color);stroke-width:var(--handle-border-width);opacity:var(--handle-opacity);cursor:pointer}.signature-resize-handle:hover,.signature-rotate-handle:hover{opacity:1}.signature-rotate-stem{stroke:var(--handle-color);stroke-width:1.3px;stroke-dasharray:3 3}.signature-inline-editor{position:absolute;z-index:5;min-width:160px;transform:translateY(-50%)}.signature-inline-editor input{width:100%;box-sizing:border-box;padding:8px 10px;border:1px solid var(--accent);border-radius:6px;background:var(--surface);color:var(--text-primary);box-shadow:0 8px 22px #0f172a38;font:inherit}.signature-context-toolbar{position:absolute;z-index:6;display:inline-flex;align-items:center;gap:4px;transform:translate(-50%);padding:5px;border:1px solid var(--border);border-radius:8px;background:var(--panel-bg);box-shadow:0 10px 28px #0f172a38}.signature-next-field-chip{position:absolute;z-index:6;min-height:30px;max-width:min(132px,calc(100% - 16px));transform:translateY(-50%);border-color:#1d4ed84d;border-radius:999px;background:var(--panel-bg);color:var(--accent);font-size:12px;font-weight:850;box-shadow:0 8px 24px #0f172a33;white-space:nowrap}.signature-context-toolbar button,.signature-toolbar-color{width:28px;height:28px;display:inline-grid;place-items:center;padding:0;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text-primary)}.signature-context-toolbar button.danger{color:#dc2626}.signature-toolbar-color{position:relative;overflow:hidden}.signature-toolbar-color input{position:absolute;inset:0;opacity:0;cursor:pointer}.signature-toolbar-opacity input{width:72px}@media(max-width:720px){.signature-dialog-backdrop{align-items:stretch;padding:0}.signature-dialog{width:100%;height:100vh;height:100dvh;max-height:none;padding:12px;border-radius:0}.signature-dialog-draw .signature-studio-body,.signature-dialog-draw .signature-studio-pane{flex:1 1 auto}.signature-dialog-draw .signature-pad-canvas{flex:1 1 auto;min-height:min(46dvh,360px);aspect-ratio:auto}.signature-create-grid,.signature-tabs,.signature-style-grid,.signature-import-actions,.signature-control-row{grid-template-columns:1fr}.signature-dialog-footer{position:sticky;bottom:0;align-items:stretch;padding-top:10px;background:var(--panel-bg)}.signature-dialog-footer .primary-button,.signature-dialog-footer .secondary-button{justify-content:center}.signature-context-toolbar{max-width:calc(100vw - 20px);overflow-x:auto}.signature-next-field-chip{max-width:calc(100% - 16px)}}.stamp-template-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.stamp-template-grid button{min-height:42px;border:1px dashed currentColor;border-radius:8px;background:color-mix(in srgb,currentColor 7%,var(--panel-bg));font-size:12px;font-weight:900;text-transform:uppercase;transform:rotate(-1.5deg)}.stamp-template-grid button.active{background:color-mix(in srgb,currentColor 13%,var(--panel-bg));box-shadow:0 0 0 2px color-mix(in srgb,currentColor 25%,transparent)}.phase-d-image-picker{position:relative;overflow:hidden;gap:8px}.phase-d-image-picker.busy{opacity:.72}.phase-d-image-picker input{position:absolute;inset:0;cursor:pointer;opacity:0}.image-drop-target{display:grid;gap:3px;border:1px dashed color-mix(in srgb,var(--accent) 38%,var(--panel-border));border-radius:8px;background:color-mix(in srgb,var(--accent) 5%,transparent);color:var(--text-primary);font-size:12px;padding:10px}.image-drop-target span{color:var(--text-secondary);font-size:11px}.image-staged-action-row{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(82px,.75fr);gap:8px;border:1px solid color-mix(in srgb,var(--accent) 20%,var(--panel-border));border-radius:8px;background:color-mix(in srgb,var(--panel-bg) 94%,white);box-shadow:0 8px 18px #0f172a14;padding:8px}.image-staged-action-row button{min-width:0;justify-content:center}.image-staged-z-order{grid-column:1 / -1;border-top:1px solid var(--panel-border);padding-top:8px}.image-inspector,.image-panel-section{display:grid;gap:9px}.image-panel-section{border-top:1px solid var(--panel-border);padding-top:10px}.image-panel-section:first-child{border-top:0;padding-top:0}.image-panel-section h3{margin:0;color:var(--text-secondary);font-size:11px;font-weight:900;letter-spacing:0;text-transform:uppercase}.image-panel-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;border:1px solid var(--panel-border);border-radius:8px;background:color-mix(in srgb,var(--panel-bg) 92%,var(--panel-border));padding:4px}.image-panel-tabs button{min-width:0;border:0;border-radius:6px;background:transparent;color:var(--text-secondary);font:inherit;font-size:12px;font-weight:850;padding:7px 4px;cursor:pointer}.image-panel-tabs button.active{background:var(--panel-bg);color:var(--text-primary);box-shadow:0 1px 4px #0f172a24}.watermark-group-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.watermark-group-list li{border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg);padding:8px;display:grid;gap:8px}.watermark-group-list li.selected{border-color:color-mix(in srgb,var(--accent) 55%,var(--panel-border));background:color-mix(in srgb,var(--accent) 6%,var(--panel-bg))}.watermark-group-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:8px;align-items:center}.watermark-group-row img{width:34px;height:34px;border:1px solid var(--panel-border);border-radius:6px;object-fit:contain;background:repeating-conic-gradient(rgba(15,23,42,.08) 0% 25%,transparent 0% 50%) 0 0 / 12px 12px}.watermark-group-meta{display:grid;gap:2px;min-width:0}.watermark-group-meta strong{overflow:hidden;color:var(--text-primary);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.watermark-group-meta span{color:var(--text-secondary);font-size:11px;font-weight:750}.watermark-group-actions{display:flex;gap:6px}.watermark-group-actions button{min-width:0;padding:5px 9px;font-size:11px}.watermark-group-actions button.danger{border-color:color-mix(in srgb,#dc2626 40%,var(--panel-border));color:#b91c1c}.watermark-group-editor{display:grid;gap:8px;border-top:1px solid var(--panel-border);padding-top:8px}.watermark-group-opacity{display:grid;grid-template-columns:auto minmax(0,1fr) 42px;gap:8px;align-items:center;color:var(--text-secondary);font-size:11px;font-weight:850;text-transform:uppercase}.watermark-group-opacity span{text-align:right;color:var(--text-primary);font-size:12px}.watermark-group-editor-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.watermark-group-editor-row span{color:var(--text-secondary);font-size:11px;font-weight:850;text-transform:uppercase}.watermark-group-editor-row button{min-width:0;padding:5px 9px;font-size:11px}.extract-image-list{display:grid;gap:6px;margin:0;padding:0;list-style:none;max-height:300px;overflow-y:auto}.extract-image-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg);padding:6px;align-items:center}.extract-image-list li.selected{border-color:color-mix(in srgb,var(--accent) 55%,var(--panel-border));background:color-mix(in srgb,var(--accent) 6%,var(--panel-bg))}.extract-image-label{display:grid;gap:2px;min-width:0;border:0;background:transparent;color:var(--text-primary);font:inherit;text-align:left;padding:2px 4px;cursor:pointer}.extract-image-label strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.extract-image-label span{color:var(--text-secondary);font-size:11px;font-weight:750}.extract-image-save{min-width:0;padding:6px 10px;font-size:11px}.image-staging-card{display:grid;gap:3px;border:1px solid color-mix(in srgb,var(--accent) 22%,var(--panel-border));border-radius:8px;background:color-mix(in srgb,var(--accent) 6%,var(--panel-bg));padding:10px}.image-staging-card strong{min-width:0;overflow:hidden;color:var(--text-primary);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.image-staging-card span{color:var(--text-secondary);font-size:12px;font-weight:750}.selected-image-inspector{gap:9px}.image-priority-controls{position:sticky;top:0;z-index:2;border:1px solid color-mix(in srgb,var(--accent) 20%,var(--panel-border));border-radius:8px;background:color-mix(in srgb,var(--panel-bg) 94%,white);box-shadow:0 8px 18px #0f172a14;padding:8px}.image-selected-action-row{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(82px,.75fr);gap:8px}.image-selected-action-row button{min-width:0;justify-content:center}.image-placement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.image-placement-grid label,.image-rotation-control{display:grid;gap:4px;color:var(--text-secondary);font-size:11px;font-weight:850;text-transform:uppercase}.image-placement-grid input,.image-rotation-control input{width:100%;min-width:0;border:1px solid var(--panel-border);border-radius:6px;background:var(--panel-bg);color:var(--text-primary);font:inherit;font-size:13px;font-weight:760;padding:7px 8px}.image-arrange-grid,.image-align-grid,.image-transform-grid,.image-save-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.image-align-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.image-inspector-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.image-arrange-grid button,.image-align-grid button,.image-transform-grid button,.image-save-grid button,.image-inspector-actions button,.image-inspector-actions .secondary-button{min-width:0}.image-layer-control{display:grid;gap:6px}.image-layer-control>span{color:var(--text-secondary);font-size:11px;font-weight:850;text-transform:uppercase}.image-replace-button{position:relative;overflow:hidden;justify-content:center}.image-replace-button input{position:absolute;inset:0;cursor:pointer;opacity:0}.image-replace-button.disabled{cursor:not-allowed;opacity:.55}.image-arrange-grid button,.image-align-grid button,.image-transform-grid button,.image-save-grid button{display:inline-flex;min-height:34px;align-items:center;justify-content:center;gap:5px;padding-inline:7px}.image-arrange-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.image-arrange-grid.compact button{min-height:32px;padding-inline:5px}.page-object-list-section{gap:8px}.page-object-list{display:grid;gap:6px;max-height:220px;overflow:auto;padding-right:2px}.page-object-list button{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:3px 8px;min-height:44px;border:1px solid var(--panel-border);border-radius:7px;background:var(--panel-bg);color:var(--text-primary);padding:8px;text-align:left}.page-object-list button.active{border-color:color-mix(in srgb,var(--accent) 48%,var(--panel-border));background:color-mix(in srgb,var(--accent) 8%,var(--panel-bg));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 10%,transparent)}.page-object-list button strong{min-width:0;overflow:hidden;font-size:12px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.page-object-list button small{grid-column:2;min-width:0;overflow:hidden;color:var(--text-secondary);font-size:11px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.page-object-kind{grid-row:span 2;display:inline-flex;min-width:44px;justify-content:center;border-radius:999px;background:color-mix(in srgb,var(--accent) 9%,var(--panel-muted));color:var(--text-secondary);font-size:10px;font-weight:900;line-height:1;padding:5px 6px;text-transform:uppercase}.page-object-kind.image{background:#2563eb1a;color:#1d4ed8}.page-object-kind.text{background:#0f172a14;color:#334155}.page-object-kind.path{background:#d977061f;color:#92400e}.page-object-kind.form{background:#7c3aed1a;color:#6d28d9}.page-object-list-empty{border:1px dashed var(--panel-border);border-radius:7px;color:var(--text-secondary);font-size:12px;font-weight:800;padding:10px}.danger-button{display:inline-flex;align-items:center;justify-content:center;gap:5px;border-color:color-mix(in srgb,#dc2626 36%,var(--panel-border));color:#b91c1c}.panel-link{display:inline-flex;min-height:36px;align-items:center;justify-content:center;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg);color:var(--text-primary);font-size:13px;font-weight:850;padding:0 10px;text-decoration:none}.readiness{border-radius:8px;font-size:22px;font-weight:850;padding:14px;text-align:center}.readiness.good{background:#16a34a17;color:var(--privacy)}.readiness.needsAttention{background:#d977061a;color:var(--warning)}.readiness.risky{background:#dc26261a;color:var(--danger)}.issue-card{border:1px solid var(--panel-border);border-radius:8px;padding:14px;background:var(--panel-muted)}.issue-card.warning{border-left:3px solid var(--warning)}.issue-card.danger{border-left:3px solid var(--danger)}.issue-card h3{margin:0 0 6px;font-size:15px}.issue-card small{display:inline-flex;margin-top:10px;color:var(--text-soft);font-size:12px;font-weight:800}.issue-card p,.panel-note{margin:0;color:var(--text-secondary);line-height:1.5;font-size:13px}.issue-card button{margin-top:12px;width:100%}.diagnostic-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px}.diagnostic-meta span{border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-muted);color:var(--text-secondary);font-size:12px;font-weight:850;padding:10px;text-align:center}.fix-card{display:grid;gap:12px;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg);padding:14px}.fix-card.applied{border-color:#16a34a4d;background:#16a34a0f}.fix-card h3{margin:0 0 6px;font-size:15px}.fix-card p{margin:0;color:var(--text-secondary);font-size:13px;line-height:1.5}.fix-card button{width:100%}.session-facts{display:grid;gap:12px;margin:0}.session-facts div{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--panel-border);padding-bottom:12px}.session-facts dt{color:var(--text-secondary)}.session-facts dd{margin:0;font-weight:800;color:var(--text-primary)}.panel-note{margin-top:8px}.security-panel-warning{border:1px solid rgba(217,119,6,.24);border-left:3px solid var(--warning);border-radius:8px;background:#d9770614;color:var(--text-secondary);font-size:13px;line-height:1.5;margin:0;padding:12px}.redaction-strategy{display:flex;flex-direction:column;gap:8px}.redaction-strategy-option{display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);cursor:pointer}.redaction-strategy-option.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.redaction-strategy-title{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:13.5px}.redaction-strategy-desc{font-size:12px;line-height:1.45;color:var(--text-secondary)}.redaction-apply-secure{background:#b91c1c;border-color:#b91c1c;color:#fff}.redaction-apply-secure:not(:disabled):hover{background:#991b1b}.redaction-verify{display:flex;align-items:flex-start;gap:8px;font-size:12.5px;line-height:1.4;border-radius:8px;padding:9px 11px}.redaction-verify.passed{border:1px solid rgba(22,163,74,.3);background:#16a34a1a;color:var(--text-secondary)}.redaction-verify.failed{border:1px solid rgba(220,38,38,.35);background:#dc26261a;color:#b91c1c;font-weight:600}.redaction-verify svg{flex:none;margin-top:1px}.redaction-sanitize{border:1px solid var(--border);border-radius:8px;padding:8px 12px;font-size:12.5px}.redaction-sanitize summary{cursor:pointer;font-weight:600;color:var(--text-secondary)}.redaction-check{display:flex;align-items:center;gap:8px;margin-top:8px;color:var(--text-secondary);line-height:1.35}.redaction-check input{flex:none}.redaction-check-note{color:var(--text-tertiary, var(--text-secondary));opacity:.8}.redaction-submode{display:inline-flex;gap:0;border:1px solid var(--border);border-radius:8px;overflow:hidden;align-self:flex-start}.redaction-submode button{border:none;border-radius:0;padding:6px 18px;background:var(--surface);font-size:13px}.redaction-submode button.active{background:var(--accent);color:#fff}.whiteout-hit-layer.redact-text-layer{cursor:text}.redact-text-draft{position:absolute;z-index:4;box-sizing:border-box;background:#dc262652;border:1px solid rgba(220,38,38,.6);border-radius:2px;pointer-events:none}.pending-redaction-mark{position:absolute;z-index:4;box-sizing:border-box;margin:0;padding:0;border:1.5px dashed var(--accent);border-radius:2px;cursor:pointer}.pending-redaction-mark.black{background:#111827ad}.pending-redaction-mark.white{background:#ffffffb8;border-color:#dc2626}.pending-redaction-mark:hover{border-style:solid}.whiteout-hit-layer{position:absolute;z-index:3;inset:0;cursor:crosshair;background:transparent;touch-action:none}.whiteout-hit-layer:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 35%,transparent);outline-offset:-6px}.whiteout-region-draft{position:absolute;z-index:4;box-sizing:border-box;border:2px dashed #dc2626;border-radius:3px;background:#dc262624;pointer-events:none}.whiteout-region-draft.active{outline:1px dashed rgba(220,38,38,.72);outline-offset:3px}.whiteout-color-row{display:flex;align-items:center;gap:8px}.whiteout-color-row button{display:inline-flex;align-items:center;gap:6px}.whiteout-color-row button.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.whiteout-swatch{width:14px;height:14px;border-radius:4px;border:1px solid rgba(17,24,39,.35)}.whiteout-swatch.white{background:#fff}.whiteout-swatch.black{background:#111827}.whiteout-pending-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:220px;overflow-y:auto}.whiteout-pending-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.whiteout-pending-meta{font-size:12.5px;color:var(--text-secondary)}.panel-link-button{border:none;background:none;padding:0;font-size:12.5px;color:var(--accent);cursor:pointer;text-decoration:underline}.security-confirm{display:flex;align-items:flex-start;gap:8px;color:var(--text-secondary);font-size:13px;font-weight:800;line-height:1.4}.security-confirm input{margin-top:2px}.overlay-button-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}@media(max-width:1100px){.editor-workspace{grid-template-columns:220px minmax(0,1fr)}.right-panel{position:fixed;inset:auto 0 0;z-index:60;height:calc(var(--mobile-sheet-compact-height) + var(--safe-bottom));max-height:calc(100dvh - 64px);border-left:0;border-top:1px solid var(--panel-border);border-radius:16px 16px 0 0;box-shadow:0 -18px 44px #0f172a3d;transform:translateY(0);transition:none;visibility:visible;pointer-events:auto;overflow:hidden;padding-bottom:var(--safe-bottom)}.right-panel.mobile-open{height:calc(var(--mobile-sheet-expanded-height) + var(--safe-bottom));overflow:auto}.right-panel.no-document{transform:translateY(100%);visibility:hidden;pointer-events:none}.right-panel.clean-task-panel{height:calc(var(--mobile-sheet-compact-height) + var(--safe-bottom))}.right-panel.clean-task-panel.mobile-open{height:calc(var(--mobile-sheet-expanded-height) + var(--safe-bottom))}.mobile-sheet-handle-row{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;grid-template-rows:6px 12px;align-items:center;gap:8px;width:100%;min-height:34px;border:0;border-bottom:1px solid color-mix(in srgb,var(--panel-border) 72%,transparent);background:var(--panel-bg);color:var(--text-secondary);padding:5px 12px 4px;cursor:ns-resize;touch-action:none}.mobile-sheet-grip{grid-column:2;grid-row:1;justify-self:center;width:38px;height:4px;border-radius:999px;background:color-mix(in srgb,var(--text-secondary) 34%,transparent)}.mobile-sheet-label{grid-column:2;grid-row:2;justify-self:center;color:var(--text-secondary);font-size:11px;font-weight:850;line-height:1;text-transform:uppercase}.mobile-sheet-handle-row svg{grid-column:3;grid-row:1 / span 2;justify-self:end}.mobile-sheet-close{display:inline-grid}.right-panel .panel-title{position:sticky;top:0;z-index:1;background:var(--panel-bg)}.right-panel .task-stack button.primary-panel-action{position:sticky;top:56px;z-index:2;box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 24%,transparent)}.right-panel:not(.mobile-open) .panel-title{min-height:38px;padding:0 12px}.right-panel:not(.mobile-open) .panel-title svg,.right-panel:not(.mobile-open) .panel-title .panel-collapse,.right-panel:not(.mobile-open) .panel-title .mobile-sheet-close{display:none}.right-panel:not(.mobile-open) .panel-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.right-panel.clean-task-panel:not(.mobile-open) .panel-title{display:none}.right-panel.clean-task-panel:not(.mobile-open) .task-stack{padding:6px 10px 10px}.right-panel.clean-task-panel:not(.mobile-open) .clean-pdf-panel{border:0;padding:0}.right-panel.clean-task-panel:not(.mobile-open) .clean-pdf-panel-header{display:none}.right-panel.clean-task-panel:not(.mobile-open) .clean-pdf-status-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:7px}.right-panel.clean-task-panel:not(.mobile-open) .clean-pdf-panel-title{margin:0;overflow:hidden;font-size:12px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.right-panel.clean-task-panel:not(.mobile-open) .clean-pdf-panel-copy{display:none}.right-panel.clean-task-panel:not(.mobile-open) .clean-pdf-panel-actions{margin-top:8px}.right-panel.crop-task-panel:not(.mobile-open) .panel-title{display:none}.right-panel.crop-task-panel:not(.mobile-open) .task-stack{gap:7px;padding:7px 10px 10px}.right-panel.crop-task-panel:not(.mobile-open) .task-stack>h2,.right-panel.crop-task-panel:not(.mobile-open) .task-stack>h3,.right-panel.crop-task-panel:not(.mobile-open) .task-stack>.panel-note,.right-panel.crop-task-panel:not(.mobile-open) .crop-auto-message,.right-panel.crop-task-panel:not(.mobile-open) .crop-scope-group,.right-panel.crop-task-panel:not(.mobile-open) .crop-range-field,.right-panel.crop-task-panel:not(.mobile-open) .crop-apply-summary,.right-panel.crop-task-panel:not(.mobile-open) .geometry-grid,.right-panel.crop-task-panel:not(.mobile-open) .task-stack>button:not(.primary-panel-action){display:none}.right-panel.crop-task-panel:not(.mobile-open) .crop-proposal-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.right-panel.crop-task-panel:not(.mobile-open) .crop-proposal-actions button,.right-panel.crop-task-panel:not(.mobile-open) .task-stack button.primary-panel-action{min-height:32px;padding:0 10px;font-size:12px}.right-panel.crop-task-panel:not(.mobile-open) .crop-mobile-target-summary{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;min-height:30px;border:1px solid color-mix(in srgb,var(--accent) 16%,var(--panel-border));border-radius:8px;background:color-mix(in srgb,var(--accent) 6%,var(--panel-bg));padding:0 9px}.right-panel.crop-task-panel:not(.mobile-open) .crop-mobile-target-summary span{color:var(--text-primary);font-size:12px;font-weight:850;white-space:nowrap}.right-panel.crop-task-panel:not(.mobile-open) .crop-mobile-target-summary small{min-width:0;overflow:hidden;color:var(--text-muted);font-size:11px;font-weight:760;text-overflow:ellipsis;white-space:nowrap}.right-panel.crop-task-panel:not(.mobile-open) .task-stack button.primary-panel-action{position:static;width:100%;box-shadow:none}.right-panel.sign-task-panel:not(.mobile-open) .panel-title{display:none}.right-panel.sign-task-panel:not(.mobile-open) .signature-task-panel{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;padding:7px 10px 10px}.right-panel.sign-task-panel:not(.mobile-open) .signature-task-panel>h2,.right-panel.sign-task-panel:not(.mobile-open) .signature-task-panel>.panel-note,.right-panel.sign-task-panel:not(.mobile-open) .signature-panel-section:not(.signature-place-section):not(.signature-properties-panel):not(.signature-finish-section){display:none}.right-panel.sign-task-panel:not(.mobile-open) .signature-place-section{gap:7px;order:2}.right-panel.sign-task-panel:not(.mobile-open) .signature-place-section>h3,.right-panel.sign-task-panel:not(.mobile-open) .signature-tool-grid,.right-panel.sign-task-panel:not(.mobile-open) .signature-place-actions button:nth-child(n+4){display:none}.right-panel.sign-task-panel:not(.mobile-open) .signature-place-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.right-panel.sign-task-panel:not(.mobile-open) .signature-place-actions button{min-height:34px;padding:0 8px;font-size:12px}.right-panel.sign-task-panel:not(.mobile-open) .signature-properties-panel{order:1;gap:7px;padding:7px 9px;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--panel-border));border-radius:8px;background:color-mix(in srgb,var(--accent) 5%,var(--panel-bg))}.right-panel.sign-task-panel:not(.mobile-open) .signature-properties-panel h3,.right-panel.sign-task-panel:not(.mobile-open) .signature-properties-panel .signature-color-property,.right-panel.sign-task-panel:not(.mobile-open) .signature-properties-panel .field-row{display:none}.right-panel.sign-task-panel:not(.mobile-open) .signature-numeric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.right-panel.sign-task-panel:not(.mobile-open) .signature-numeric-grid label:nth-child(-n+4){display:none}.right-panel.sign-task-panel:not(.mobile-open) .signature-finish-section{position:static;order:0;gap:7px;padding:0;margin:0;border-top:0}.right-panel.sign-task-panel:not(.mobile-open) .signature-finish-section h3,.right-panel.sign-task-panel:not(.mobile-open) .signature-finish-section .panel-note,.right-panel.sign-task-panel:not(.mobile-open) .signature-finish-section .secondary-button{display:none}.right-panel.sign-task-panel:not(.mobile-open) .signature-apply-button{min-height:36px;width:100%;box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 24%,transparent)}}@media(max-width:760px){.editor-root{height:100vh;height:100dvh;min-height:100vh;min-height:100dvh;max-height:100vh;max-height:100dvh;grid-template-rows:52px minmax(0,1fr);overflow:hidden}.editor-topbar{align-items:center;flex-wrap:nowrap;gap:8px;min-width:0;padding:6px 8px}.editor-brand{min-width:0;gap:0}.editor-brand>span:not(.editor-brand-mark),.privacy-badge,.topbar-undo-redo,.theme-toggle span,.topbar-actions .secondary-button span,.topbar-actions .primary-button span{display:none}.editor-brand-mark,.theme-toggle,.topbar-actions .secondary-button,.topbar-actions .primary-button{width:36px;min-width:36px;height:36px;min-height:36px;padding:0;border-radius:10px}.topbar-actions{width:auto;flex-wrap:nowrap;gap:6px;margin-left:auto;overflow:visible}.autosave-indicator{min-width:0;max-width:38vw;overflow:hidden;padding:6px 9px;font-size:11px;text-overflow:ellipsis}.editor-workspace{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr);height:100%;min-height:0}.page-strip{position:fixed;inset:52px auto 0 0;z-index:58;width:min(280px,84vw);max-height:none;border-right:0;border-right:1px solid var(--panel-border);border-bottom:0;box-shadow:16px 0 42px #0f172a42;transform:translate(-100%);transition:transform .16s ease;visibility:hidden;pointer-events:none}.page-strip.mobile-open{transform:translate(0);visibility:visible;pointer-events:auto}.mobile-pages-backdrop{display:block;position:fixed;inset:52px 0 0;z-index:54;border:0;background:#0f172a2e}.mobile-pages-close{display:inline-grid;width:32px;height:32px;place-items:center;margin-left:6px;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg);color:var(--text-secondary)}.thumbnail-list{grid-auto-flow:row;grid-auto-columns:initial;flex:1 1 auto;max-height:none;overflow:auto;padding:10px}.thumbnail-list.virtualized{align-items:start}.insert-page-button{margin:0 12px 12px}.pdf-page-preview{width:92%;min-width:0}.page-preview-shell{--editor-page-base-width: min(92vw, 760px);min-width:0}.page-canvas-toolbar{position:static;box-sizing:border-box;flex:0 0 52px;justify-content:flex-start;width:100%;min-height:52px;height:52px;max-width:none;border-right:0;border-left:0;border-radius:0;background:color-mix(in srgb,var(--panel-bg) 94%,#1f130d);box-shadow:none;transform:none;overflow-x:auto;padding:7px 8px;scrollbar-width:none}.page-canvas-toolbar button{width:38px;min-width:38px;height:38px;min-height:38px;border-radius:10px}.page-canvas-toolbar .mobile-command-only{display:grid}.page-canvas-toolbar .toolbar-separator.mobile-command-only{display:block}.page-canvas-toolbar::-webkit-scrollbar{display:none}.page-canvas-toolbar-status{min-width:62px;font-size:11px}.page-canvas-toolbar-status small{font-size:9px}.document-stage{min-height:0}.tool-rail{gap:7px;min-height:58px;padding:6px 8px 7px;background:color-mix(in srgb,var(--panel-bg) 86%,var(--panel-muted))}.tool-rail button{flex:0 0 64px;min-width:64px;min-height:45px;flex-direction:column;gap:3px;border-radius:10px;font-size:10px;line-height:1.05;padding:4px 6px;text-align:center}.tool-rail button svg{width:17px;height:17px}.tool-rail button span{overflow:hidden;max-width:100%;text-overflow:ellipsis}.canvas-area{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;padding:0;overflow:hidden}.canvas-area.empty{padding:28px 12px 20px}.canvas-scroll{flex:1 1 auto;height:auto;min-height:0;overflow:auto;padding:12px 12px calc(var(--mobile-sheet-compact-height) + 28px + var(--safe-bottom));overscroll-behavior:contain}.editor-workspace[data-mobile-sheet-expanded=true] .canvas-scroll{padding-bottom:calc(var(--mobile-sheet-expanded-height) + 28px + var(--safe-bottom))}.canvas-actions{flex-wrap:wrap}.primary-button,.secondary-button,.canvas-actions button,.task-stack button,.insert-page-button,.tool-rail button{min-height:44px}}.page-strip-select-toggle{margin-left:auto;min-height:30px;padding:0 12px;border:1px solid var(--panel-border);border-radius:999px;background:var(--panel-bg);color:var(--text-secondary);font-weight:800;font-size:12px}.page-strip-select-toggle.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent-strong)}.thumbnail-blank{display:grid;place-items:center;width:100%;aspect-ratio:.72;border:1px dashed var(--panel-border);border-radius:6px;background:var(--panel-bg);color:var(--text-soft);font-size:20px;font-weight:850}.canvas-actions-count{align-self:center;font-size:13px;font-weight:800;color:var(--text-secondary)}.page-ops-section{display:grid;gap:8px}.page-ops-label{font-size:12px;font-weight:800;text-transform:uppercase;color:var(--text-secondary)}.page-ops-grid{display:flex;flex-wrap:wrap;gap:6px}.page-ops-grid button{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg);color:var(--text-primary);font-weight:700}.panel-collapse{display:inline-grid;place-items:center;margin-left:auto;width:30px;height:30px;border:1px solid var(--panel-border);border-radius:8px;background:var(--panel-bg);color:var(--text-secondary)}.panel-expand{display:flex;flex-direction:column;align-items:center;gap:12px;height:100%;padding:16px 0;border:0;background:var(--panel-bg);color:var(--text-secondary);cursor:pointer}.panel-expand span{writing-mode:vertical-rl;transform:rotate(180deg);font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}@media(min-width:1101px){.editor-workspace[data-panel-collapsed=true]{grid-template-columns:240px minmax(0,1fr) 48px}}@media(max-width:1100px){.panel-collapse{display:none}}@media(max-width:760px){.right-panel{height:calc(var(--mobile-sheet-compact-height) + var(--safe-bottom));max-height:calc(100dvh - 52px)}.right-panel.mobile-open,.right-panel.clean-task-panel.mobile-open{height:calc(var(--mobile-sheet-expanded-height) + var(--safe-bottom))}}.overlay-rotation-frame{position:absolute;top:50%;left:50%;transform-origin:center center}.panel-section{border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--panel-bg)}.panel-section+.panel-section,.task-stack>.panel-section{margin-top:8px}.panel-section-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 12px;cursor:pointer;font-weight:700;font-size:12px;list-style:none;user-select:none}.panel-section-summary::-webkit-details-marker{display:none}.panel-section-summary:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}.panel-section[open]>.panel-section-summary{border-bottom:1px solid var(--border)}.panel-section-chevron{flex:none;transition:transform .15s ease;color:var(--panel-muted)}.panel-section[open]>.panel-section-summary .panel-section-chevron{transform:rotate(90deg)}.panel-section-body{display:flex;flex-direction:column;gap:12px;padding:12px}.numbering-section{display:flex;flex-direction:column;gap:10px}.numbering-hint{font-size:11px;color:var(--panel-muted)}.numbering-bates-grid,.numbering-range{display:grid;grid-template-columns:1fr 1fr;gap:8px}.numbering-preview{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px;border-radius:8px;background:color-mix(in srgb,var(--accent) 8%,transparent)}.numbering-preview-label{font-size:11px;font-weight:700;color:var(--panel-muted)}.numbering-preview code{font-size:11px;padding:2px 6px;border-radius:5px;background:var(--panel-bg);border:1px solid var(--border)}.numbering-apply{justify-content:center}.object-select-layer{position:absolute;inset:0;pointer-events:auto;touch-action:none}.object-select-layer.paragraph-edit-only{cursor:text}.object-select-box{position:absolute;z-index:4;margin:0;padding:0;background:transparent;border:1px dashed rgba(37,99,235,.55);border-radius:2px;cursor:pointer;pointer-events:auto;touch-action:none;transform-origin:center;transition:border-color .12s ease,background .12s ease}.object-select-box:hover{border-color:#2563ebf2;background:#2563eb0f}.object-select-layer.clean-mode .object-select-box{border-color:#0e7490ad;background:#0e749006;cursor:crosshair;pointer-events:none}.object-select-layer.clean-mode .object-select-box:hover{border-color:#0e7490f5;background:#0e74901a}.object-select-layer.clean-mode .object-select-box.selected{border:2px solid #f97316;background:#f973161a;box-shadow:0 0 0 1px #ffffffc7}.object-select-box.selected{border:1px solid #2563eb;background:#2563eb0d;box-shadow:0 0 0 1px #ffffffa6}.object-select-box.image-controls.selected{border:1.5px solid #2563eb;background:transparent;box-shadow:0 0 0 1px #ffffffe6}.object-select-box.editing-text{border-color:#2563ebb8;background:transparent}.object-select-box.dragging{background:#2563eb29}.object-select-box.image-controls.dragging{background:#1d4ed80d}.object-marquee{position:absolute;z-index:12;box-sizing:border-box;border:1px dashed #2563eb;background:#2563eb1a;pointer-events:none}.object-select-layer.clean-mode .object-marquee{border-color:#0e7490;background:#0e74901f}.clean-seed-boundary{position:absolute;z-index:14;box-sizing:border-box;border:2px solid #f97316;background:#f9731614;box-shadow:0 0 0 1px #ffffffc7;pointer-events:none}.clean-match-boundary{position:absolute;z-index:15;box-sizing:border-box;border:2px solid #16a34a;border-radius:2px;background:#16a34a24;box-shadow:0 0 0 1px #ffffffb8,0 0 16px #16a34a2e;pointer-events:none}.object-group-box{position:absolute;z-index:6;box-sizing:border-box;border:1.5px dashed #2563eb;border-radius:2px;background:#2563eb0f;cursor:pointer;pointer-events:auto;touch-action:none}.object-group-box:hover{background:#2563eb17}.object-group-box.selected{z-index:8;border:1px solid #2563eb;background:#2563eb0f;box-shadow:0 0 0 1px #ffffffa6}.object-group-box.auto-equation{border-color:#64748bad;background:#64748b0a}.object-group-box.auto-equation:hover{background:#64748b14}.object-group-box.auto-equation.selected{border-color:#2563eb;background:#2563eb0f;box-shadow:0 0 0 1px #ffffffa6}.object-group-box.paragraph{z-index:2;border-color:#64748b8c;background:#64748b09}.object-group-box.paragraph:hover{background:#64748b13}.object-group-box.paragraph.selected{z-index:8;border-color:#2563eb;background:#2563eb0d;box-shadow:0 0 0 1px #ffffffa6}.object-group-box.direct-paragraph{z-index:3;border-color:#2563eb94;background:#2563eb09}.object-group-box.direct-paragraph:hover{background:#2563eb14}.object-group-box.direct-paragraph.selected{z-index:8;border-color:#2563eb;background:#2563eb1f;box-shadow:0 0 0 1px #2563eb2e}.object-group-box.direct-atom{z-index:7;border-color:#d97706c7;background:#d9770613}.object-group-box.direct-atom:hover{background:#d977061f}.object-group-box.direct-atom.selected{border-color:#b45309;background:#d9770629;box-shadow:0 0 0 1px #d9770638}.object-group-box.direct-edit-target.invisible-hit-target{z-index:10;border-color:transparent;background:transparent;box-shadow:none;outline:none}.object-group-box.direct-edit-target.invisible-hit-target:hover,.object-group-box.direct-edit-target.invisible-hit-target:focus{border-color:transparent;background:transparent;box-shadow:none}.object-group-box.manual{border-color:#0f766e;background:#14b8a612}.object-group-box.manual:hover{background:#14b8a61c}.object-group-box.manual.selected{border-color:#0f766e;background:#14b8a624;box-shadow:0 0 0 1px #14b8a62e}.object-group-label{position:absolute;bottom:100%;left:0;margin-bottom:2px;color:#fff;background:#0f766e;border-radius:4px;font-size:11px;line-height:1.4;padding:1px 6px;pointer-events:none;white-space:nowrap}.object-group-box.auto-equation .object-group-label,.object-group-box.paragraph .object-group-label,.object-group-box.direct-paragraph .object-group-label{background:#2563eb}.object-group-box.direct-atom .object-group-label{background:#b45309}.paragraph-reflow-preview{position:absolute;inset:0;z-index:11;pointer-events:none}.paragraph-reflow-line,.paragraph-reflow-atom{position:absolute;box-sizing:border-box;border-radius:2px}.paragraph-reflow-line{border:1px solid rgba(37,99,235,.82);background:#2563eb14}.paragraph-reflow-atom{border:1.5px solid #0f766e;background:#14b8a629;box-shadow:0 0 0 1px #14b8a61a}.object-group-toolbar{position:absolute;top:-40px;right:0;z-index:9;display:inline-flex;padding:3px;border-radius:7px;background:#1e293b;box-shadow:0 6px 18px #0f172a4d;pointer-events:auto}.object-group-toolbar button{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:0;border-radius:5px;background:transparent;color:#fff;cursor:pointer}.object-group-toolbar button:hover,.object-group-toolbar button:focus-visible{background:#ffffff2e;outline:none}.object-select-label{position:absolute;bottom:100%;left:0;margin-bottom:2px;max-width:240px;overflow:hidden;font-size:11px;line-height:1.4;white-space:nowrap;text-overflow:ellipsis;color:#fff;background:#2563eb;padding:1px 6px;border-radius:4px;pointer-events:none}.object-context-toolbar{position:absolute;left:50%;top:-48px;z-index:5;display:inline-flex;gap:4px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--panel-border));border-radius:999px;background:color-mix(in srgb,var(--panel-bg) 90%,white);box-shadow:0 12px 24px #0f172a24;padding:4px;pointer-events:auto;transform:translate(-50%)}.object-context-toolbar button,.object-text-actions button{display:inline-grid;place-items:center;min-width:32px;min-height:32px;border:0;border-radius:999px;background:transparent;color:var(--text-primary)}.object-context-toolbar button:hover,.object-context-toolbar button:focus-visible,.object-text-actions button:hover,.object-text-actions button:focus-visible{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent-strong);outline:none}.object-resize-handle,.object-rotate-handle{position:absolute;z-index:4;display:inline-grid;place-items:center;width:var(--handle-size);height:var(--handle-size);margin:calc(var(--handle-size) / -2);border:var(--handle-border-width) solid var(--handle-color);border-radius:var(--handle-radius);background:var(--handle-fill);box-shadow:var(--handle-shadow);color:var(--handle-color);opacity:var(--handle-opacity);pointer-events:auto;touch-action:none}.object-select-box.selected:hover .object-resize-handle,.object-resize-handle:hover,.object-rotate-handle:hover{opacity:1}.object-resize-handle:before,.object-rotate-handle:before{content:"";position:absolute;inset:-9px;border-radius:999px}.object-resize-handle.nw{left:0;top:0;cursor:nwse-resize}.object-resize-handle.n{left:50%;top:0;cursor:ns-resize}.object-resize-handle.ne{right:0;top:0;cursor:nesw-resize}.object-resize-handle.e{right:0;top:50%;cursor:ew-resize}.object-resize-handle.se{right:0;bottom:0;cursor:nwse-resize}.object-resize-handle.s{left:50%;bottom:0;cursor:ns-resize}.object-resize-handle.sw{left:0;bottom:0;cursor:nesw-resize}.object-resize-handle.w{left:0;top:50%;cursor:ew-resize}.object-rotate-handle{left:50%;top:-56px;width:18px;height:18px;margin:-9px;cursor:alias;transform:translate(-50%);opacity:.85}.object-select-box.image-controls .object-resize-handle{width:var(--handle-size);height:var(--handle-size);margin:calc(var(--handle-size) / -2);border-radius:var(--handle-radius)}.object-select-box.image-controls .object-resize-handle.n,.object-select-box.image-controls .object-resize-handle.s{width:16px;height:5px;margin:-2.5px -8px;border-radius:999px}.object-select-box.image-controls .object-resize-handle.e,.object-select-box.image-controls .object-resize-handle.w{width:5px;height:16px;margin:-8px -2.5px;border-radius:999px}.object-select-box.image-controls .object-resize-handle:before{inset:-12px}.object-select-box.image-controls .object-rotate-handle{top:-24px;width:18px;height:18px;margin:-9px;border-radius:999px}.object-select-box.image-controls .object-rotate-handle:before{inset:-12px}.object-select-box.image-controls .object-rotate-handle:after{content:"";position:absolute;left:50%;top:100%;width:1px;height:10px;background:var(--handle-color);opacity:.5;transform:translate(-50%);pointer-events:none}.object-select-box.image-controls .object-rotate-handle:hover,.object-select-box.image-controls .object-rotate-handle:focus-visible,.object-select-box.image-controls .object-resize-handle:hover,.object-select-box.image-controls .object-resize-handle:focus-visible{background:#eff6ff;outline:2px solid rgba(29,78,216,.18);outline-offset:2px}.object-rotation-tooltip{position:absolute;left:50%;bottom:calc(100% + 8px);z-index:5;border:1px solid rgba(255,255,255,.15);border-radius:999px;background:#0f172ad9;backdrop-filter:blur(8px);color:#fff;font-size:11px;font-weight:600;padding:4px 10px;pointer-events:none;transform:translate(-50%);white-space:nowrap;box-shadow:0 4px 12px #00000040}.pdf-edit-caret{position:absolute;background:#1d4ed8;pointer-events:none;z-index:11;animation:pdf-caret-blink 1.05s steps(1) infinite}@keyframes pdf-caret-blink{50%{opacity:0}}.pdfium-caret{position:absolute;min-width:1px;background:#1d4ed8;pointer-events:none;z-index:12;animation:pdf-caret-blink 1.05s steps(1) infinite}.pdfium-selection{position:absolute;background:#1d4ed847;pointer-events:none;z-index:11}.pdfium-selection-toolbar{position:absolute;z-index:14;pointer-events:auto;display:flex;align-items:center;gap:2px;max-width:92vw;padding:3px;background:#111827f0;border-radius:10px;box-shadow:0 4px 16px #00000052}.pdfium-selection-action{display:inline-flex;align-items:center;gap:4px;padding:5px 9px;font-size:12px;font-weight:600;color:#f3f4f6;background:transparent;border:none;border-radius:7px;cursor:pointer;white-space:nowrap;touch-action:manipulation}.pdfium-selection-action:hover{background:#ffffff24}.pdfium-selection-action-danger{color:#fca5a5}.pdfium-selection-action-danger:hover{background:#b91c1c;color:#fff}@media(max-width:640px){.pdfium-selection-action{padding:7px;font-size:0;gap:0}.pdfium-caret-menu .pdfium-selection-action{padding:6px 10px;font-size:12px;gap:4px}}.pdfium-caret-menu{z-index:15}.pdfium-block-box{position:absolute;border:1px dashed rgba(29,78,216,.5);border-radius:2px;pointer-events:none;z-index:10}.pdfium-block-box.dragging{border:1.5px solid #f97316;background:#f9731614;box-shadow:0 0 0 1px #f9731640}.pdfium-move-grip{position:absolute;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;color:#fff;background:#1d4ed8;border-radius:50%;box-shadow:0 1px 4px #0000004d;cursor:grab;z-index:15;pointer-events:auto;touch-action:none;opacity:.85}.pdfium-move-grip:active{cursor:grabbing}.pdfium-move-grip.dragging{background:#f97316;opacity:1;transform-origin:center}.pdfium-resize-frame{position:absolute;border:1px solid rgba(29,78,216,.6);border-radius:2px;pointer-events:none;z-index:11}.pdfium-resize-frame.dragging{border:1.5px solid #f97316;background:#f973160f}.pdfium-resize-handle{position:absolute;width:var(--handle-size);height:var(--handle-size);padding:0;border:var(--handle-border-width) solid var(--handle-color);background:var(--handle-fill);border-radius:var(--handle-radius);box-shadow:var(--handle-shadow);opacity:var(--handle-opacity);z-index:16;pointer-events:auto;touch-action:none;transform:translate(-50%,50%)}.pdfium-resize-handle:hover,.pdfium-resize-handle:focus-visible{opacity:1}.pdfium-resize-handle:before{content:"";position:absolute;inset:-8px}.pdfium-resize-handle.nw{cursor:nwse-resize}.pdfium-resize-handle.ne,.pdfium-resize-handle.sw{cursor:nesw-resize}.pdfium-resize-handle.se{cursor:nwse-resize}@media(pointer:coarse){.pdfium-resize-handle{width:var(--handle-size-touch);height:var(--handle-size-touch)}.pdfium-resize-handle:before{inset:-14px}.pdfium-move-grip{width:30px;height:30px}}.pdfium-resize-readout{position:absolute;transform:translate(6px,50%);padding:2px 6px;font-size:11px;font-weight:700;color:#fff;background:#f97316;border-radius:4px;white-space:nowrap;pointer-events:none;z-index:17}.pdfium-caret-input{position:absolute;padding:0;margin:0;border:0;outline:none;resize:none;overflow:hidden;background:transparent;color:transparent;caret-color:transparent;opacity:0;pointer-events:none;white-space:nowrap;font-size:16px;line-height:1;z-index:12}.caret-toolbar{width:max-content}.caret-edit-layer{position:absolute;z-index:11;pointer-events:auto}.caret-edit-surface{position:absolute;inset:0}.caret-edit-input{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;border:none;outline:none;resize:none;overflow:hidden;background:transparent;color:transparent;caret-color:#1d4ed8;white-space:pre-wrap;word-break:break-word}.caret-edit-toolbar{position:absolute;bottom:calc(100% + 4px);left:0;z-index:12;display:none;gap:3px;padding:2px;border-radius:7px;background:#1e293b;box-shadow:0 6px 18px #0f172a4d}.caret-edit-toolbar button{border:none;background:transparent;color:#e2e8f0;cursor:pointer;font-size:13px;line-height:1;padding:3px 6px;border-radius:5px}.caret-edit-toolbar button:hover{background:#334155}.caret-edit-note{position:absolute;top:calc(100% + 4px);left:0;max-width:320px;padding:3px 7px;border-radius:6px;background:#b45309;color:#fff;font-size:11px;line-height:1.3;z-index:12}.object-paragraph-editor{position:absolute;z-index:9;pointer-events:auto}.object-paragraph-editor textarea{width:100%;height:100%;min-height:2.6em;margin:-2px 0 0 -3px;padding:2px 3px;border:1px solid rgba(37,99,235,.45);border-radius:2px;background:#fff;color:var(--text-primary);resize:none;outline:none;line-height:1.16;box-sizing:border-box;overflow:hidden}.object-paragraph-editor textarea:focus{border-color:#2563ebd9}.projection-surface{position:absolute;inset:0;padding:0 1px;margin:0;box-sizing:border-box;outline:none;white-space:normal;overflow-wrap:break-word;overflow:visible;caret-color:#1d4ed8;box-shadow:0 0 0 1px #2563eb59;border-radius:1px}.projection-surface:focus{box-shadow:0 0 0 1px #2563eba6}.projection-surface.pristine{box-shadow:none}.projection-surface.pristine:focus{box-shadow:0 0 0 1px #2563eb52}.projection-surface.dirty{box-shadow:0 0 0 1px #2563eb8c}.pure-projection-surface{position:absolute;inset:0;min-width:0;min-height:0;outline:none;pointer-events:auto}.pure-projection-surface:focus-visible{box-shadow:none}.pure-projection-items{position:absolute;inset:0}.pure-projection-item{appearance:none;position:absolute;display:grid;place-items:center;min-width:4px;min-height:4px;margin:0;padding:0;border:1px solid transparent;border-radius:2px;background:transparent;color:transparent;overflow:hidden;pointer-events:auto}.pure-projection-item:hover,.pure-projection-item:focus-visible,.pure-projection-item.selected{border-color:#2563ebe6;background:#2563eb0e;outline:none}.pure-projection-item.inserted{border-color:#16a34ab3;background:#16a34a1c}.pure-projection-item.inserted.selected{border-color:#166534f2;background:#16a34a2e}.pure-projection-item.inlineAtom,.pure-projection-item.blockAtom{border-color:transparent;background:transparent}.pure-projection-item.inlineAtom:hover,.pure-projection-item.inlineAtom:focus-visible,.pure-projection-item.inlineAtom.selected,.pure-projection-item.blockAtom:hover,.pure-projection-item.blockAtom:focus-visible,.pure-projection-item.blockAtom.selected{border-color:#7c3aedbf;background:#7c3aed0a}.pure-projection-item.blockAtom{border-style:dashed}.pure-projection-item img{width:100%;height:100%;object-fit:fill;user-select:none;pointer-events:none}.pure-glyph-mark,.pure-atom-mark{width:100%;height:100%;background:currentColor;opacity:0}.pure-projection-toolbar,.pure-glyph-palette{position:absolute;z-index:12;display:inline-flex;align-items:center;gap:3px;border-radius:7px;background:#1e293b;box-shadow:0 6px 18px #0f172a4d;padding:2px;pointer-events:auto}.pure-projection-toolbar{left:0;bottom:calc(100% + 4px)}.pure-glyph-palette{left:0;top:calc(100% + 4px);max-width:min(420px,92vw);overflow-x:auto}.pure-projection-toolbar button,.pure-glyph-palette button{display:inline-flex;min-width:24px;height:24px;align-items:center;justify-content:center;gap:3px;border:0;border-radius:5px;background:transparent;color:#e2e8f0;font-size:10px;font-weight:800;white-space:nowrap}.pure-projection-toolbar button:disabled{color:#e2e8f061;cursor:not-allowed}.pure-projection-toolbar button:not(:disabled):hover,.pure-projection-toolbar button:not(:disabled):focus-visible,.pure-glyph-palette button:hover,.pure-glyph-palette button:focus-visible{background:#ffffff21;outline:none}.proj-eq{display:inline-block;vertical-align:middle;margin:0 .5px;user-select:none}.proj-eq-block{display:block;margin:.1em auto;user-select:none}.proj-eq-fallback{display:inline-block;padding:0 3px;border-radius:2px;background:#2563eb1a;border:1px solid rgba(37,99,235,.28);color:#1e3a8a;font-style:italic;white-space:nowrap;user-select:none}.projection-editor-footer{flex:0 0 auto;color:var(--text-secondary);font-family:var(--font-sans);font-size:10px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shape-drawing-overlay{position:absolute;z-index:3;inset:0;width:100%;height:100%;cursor:crosshair;touch-action:none;outline:none}.shape-drawing-overlay:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 35%,transparent);outline-offset:-6px}.shape-drawing-overlay .shape-draft{cursor:pointer}.shape-drawing-overlay .shape-draft:hover{filter:brightness(.85)}.shape-drawing-overlay .shape-draft-live{pointer-events:none}.shape-toolbar{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:6px}.shape-tool-button{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;font-size:12.5px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-primary);cursor:pointer}.shape-tool-button.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset;color:var(--accent)}.shape-tool-hint{margin-top:-4px}.shape-properties{display:flex;flex-direction:column;gap:10px;padding:10px;border:1px solid var(--panel-border);border-radius:10px;background:var(--panel-bg)}.shape-prop-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.shape-prop-row select{flex:0 1 auto}.shape-prop-row input[type=range]{flex:1 1 90px;min-width:70px}.shape-opacity-value{font-size:12px;color:var(--text-secondary);min-width:34px;text-align:right}.shape-prop-options{display:inline-flex;gap:4px;flex-wrap:wrap}.shape-prop-options button{padding:5px 9px;font-size:12px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text-primary);cursor:pointer}.shape-prop-options button.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset;color:var(--accent)}.shape-prop-check{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--text-secondary)}.shape-color-picker{display:flex;flex-direction:column;gap:6px}.shape-color-swatches{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.shape-color-swatch{width:20px;height:20px;padding:0;border:1px solid rgba(17,24,39,.35);border-radius:6px;cursor:pointer}.shape-color-swatch.small{width:15px;height:15px;border-radius:4px}.shape-color-swatch.active{outline:2px solid var(--accent);outline-offset:1px}.shape-color-swatch.none{position:relative;background:var(--surface)}.shape-color-swatch.none:after{content:"";position:absolute;inset:2px;background:linear-gradient(to top right,transparent 44%,var(--danger) 46%,var(--danger) 54%,transparent 56%)}.shape-color-custom input[type=color]{width:24px;height:24px;padding:0;border:1px solid var(--border);border-radius:6px;background:none;cursor:pointer}.shape-history-buttons{display:inline-flex;align-items:center;gap:6px}.shape-pending-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:220px;overflow-y:auto}.shape-pending-row{display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.shape-pending-swatch{flex:0 0 auto;width:12px;height:12px;border-radius:4px;border:1px solid rgba(17,24,39,.35)}.shape-pending-meta{flex:1 1 auto;font-size:12.5px;color:var(--text-secondary)}.shape-commit-mode{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:4px}.shape-commit-option{display:flex;flex-direction:column;gap:3px;min-height:44px;padding:9px 10px;text-align:left;border-radius:9px;border:1px solid var(--border, #d5d9e0);background:var(--surface, #ffffff);color:inherit;cursor:pointer}.shape-commit-option.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.shape-commit-option-title{font-weight:600;font-size:.82rem}.shape-commit-option-hint{font-size:.7rem;opacity:.7;line-height:1.25}@media(max-width:640px){.shape-commit-mode{grid-template-columns:1fr}}.shape-flatten-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:100%;margin-top:8px;padding:10px 12px;font-weight:600;border-radius:9px;border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer}.shape-flatten-button:disabled{opacity:.55;cursor:default}.shape-drawing-overlay[data-tool=select]{cursor:default}.shape-drawing-overlay[data-tool=select] .shape-draft{cursor:move}.shape-selection-outline{stroke:var(--handle-color);stroke-width:1.5px;stroke-dasharray:5 4;opacity:.7}.shape-selection-handle{fill:var(--handle-fill);stroke:var(--handle-color);stroke-width:var(--handle-border-width);opacity:var(--handle-opacity)}.shape-selection-handle:hover{opacity:1}.shape-rotate-stem{stroke:var(--handle-color);stroke-width:1.3px;stroke-dasharray:3 3}.shape-rotate-handle{fill:var(--handle-fill);stroke:var(--handle-color);stroke-width:var(--handle-border-width);opacity:var(--handle-opacity)}.shape-rotate-handle:hover{opacity:1}.shape-marquee{fill:color-mix(in srgb,var(--accent) 12%,transparent);stroke:var(--accent);stroke-width:1px;stroke-dasharray:4 3}.shape-selection-panel{display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid var(--accent);border-radius:10px;background:color-mix(in srgb,var(--accent) 6%,var(--panel-bg))}.shape-selection-panel .shape-properties{padding:0;border:none;background:transparent}.shape-selection-actions{display:inline-flex;gap:6px;flex-wrap:wrap}.icon-button.danger{color:#dc2626;border-color:color-mix(in srgb,#dc2626 45%,var(--border))}.shape-pending-select{flex:1 1 auto;display:inline-flex;align-items:center;gap:8px;padding:0;margin:0;border:none;background:none;text-align:left;cursor:pointer;color:inherit;font:inherit;min-width:0}.shape-pending-row.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.shape-export-gate-backdrop{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:16px;background:#0f172a73}.shape-export-gate{width:min(420px,100%);padding:18px;border:1px solid var(--panel-border);border-radius:12px;background:var(--panel-bg);box-shadow:0 18px 44px #0f172a47}.shape-export-gate h3{margin:0 0 8px}.shape-export-gate p{margin:0 0 14px;font-size:13.5px;color:var(--text-secondary);line-height:1.45}.shape-export-gate-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.shape-polygon-vertex{fill:var(--surface);stroke:var(--accent);stroke-width:1.5;vector-effect:non-scaling-stroke}.shape-polygon-vertex.first{fill:var(--accent)}.shape-callout-anchor{fill:var(--accent);stroke:var(--surface);stroke-width:1.5;vector-effect:non-scaling-stroke}.shape-snap-guide{stroke:var(--accent);stroke-width:1;stroke-dasharray:4 3;opacity:.85}.shape-text-popover{position:absolute;z-index:4;box-sizing:border-box;min-width:48px;min-height:32px}.shape-text-popover textarea{width:100%;height:100%;box-sizing:border-box;margin:0;border:1px solid var(--accent);border-radius:4px;background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:0 6px 18px #0f172a38;font-family:Helvetica,Arial,sans-serif;resize:none;overflow:hidden;outline:none}.shape-text-field{display:flex;flex-direction:column;gap:4px}.shape-text-input{width:100%;box-sizing:border-box;padding:7px 9px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-primary);font:inherit;resize:vertical}.shape-text-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 1px var(--accent) inset}@media(max-width:900px){.shape-toolbar{grid-template-columns:repeat(auto-fill,minmax(84px,1fr))}.shape-tool-button{padding:9px 10px}.shape-color-swatch{width:24px;height:24px}.shape-selection-actions .icon-button{width:34px;height:34px}.shape-text-input{padding:9px 10px;min-height:44px}.shape-export-gate-actions{flex-direction:column;align-items:stretch}.shape-export-gate-actions .primary-button,.shape-export-gate-actions .secondary-button{justify-content:center}}
