.a45-overlay{position:fixed;inset:0;z-index:15000;background:rgba(13,16,25,.75);display:flex;justify-content:center;color:var(--ink,#20212a);padding:12px;box-sizing:border-box}.a45-shell{width:min(1100px,100%);max-height:100%;background:var(--surface,#fff);border-radius:16px;display:flex;flex-direction:column;min-width:0;overflow:hidden;box-shadow:0 14px 60px #0005}.a45-overlay *{box-sizing:border-box}.a45-header{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line,#dedee5);flex-shrink:0}.a45-header>div{flex:1;min-width:0}.a45-header strong,.a45-header small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.a45-header small{font-size:12px;margin-top:3px;color:var(--muted,#656572)}.a45-overlay button,.a45-overlay select{min-height:44px;border:1px solid var(--line,#d9d9e4);border-radius:9px;background:var(--surface,#fff);color:inherit;padding:8px 12px;font:inherit;cursor:pointer}.a45-overlay button:disabled{opacity:.45;cursor:default}.a45-overlay [hidden]{display:none!important}.a45-overlay :focus-visible{outline:3px solid #3d79c5;outline-offset:2px}.a45-overlay [aria-pressed=true]{background:#f5e4ec;color:#862350;border-color:#ac4679}.a45-notice{padding:8px 16px;font-size:12px;background:var(--bg,#f4f5f8);line-height:1.4}.a45-tools{padding:8px 16px;border-bottom:1px solid var(--line,#ddd);flex-shrink:0}.a45-tool-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.a45-tool-row+.a45-tool-row{margin-top:6px}.a45-tools label{font-size:12px;display:flex;align-items:center;gap:5px}.a45-tools [data-textbox]{display:block;margin-top:6px}.a45-overlay textarea{font:inherit;font-size:16px;color:inherit;width:100%;min-width:0;display:block;background:var(--bg,#f5f5f8);border:1px solid var(--line,#ddd);border-radius:9px;padding:8px;resize:vertical}.a45-paging{display:flex;align-items:center;justify-content:center;gap:16px;flex-shrink:0;border-bottom:1px solid var(--line,#ddd);font-size:13px}.a45-paging button{border:0;background:transparent}.a45-view{flex:1;min-height:130px;overflow:auto;padding:14px;background:#dfe2e8;overscroll-behavior:contain;touch-action:pan-x pan-y}.a45-paper{position:relative;background:white;box-shadow:0 1px 8px #0002;max-width:none;touch-action:pan-x pan-y;user-select:none;margin:auto}.a45-paper[data-tool=text],.a45-paper[data-tool=line],.a45-paper[data-tool=pen]{touch-action:none;cursor:crosshair}.a45-paper img{width:100%;height:100%;display:block;pointer-events:none}.a45-paper svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.a45-footer{padding:8px 16px 12px;border-top:1px solid var(--line,#ddd);font-size:12px;flex-shrink:0;max-height:36%;overflow:auto}.a45-hint{margin:0 0 6px;color:var(--muted,#626271);line-height:1.35}.a45-footer label{display:block}.a45-footer textarea{min-height:44px;max-height:110px}.a45-buttons{display:flex;justify-content:flex-end;gap:8px;margin-top:8px;flex-wrap:wrap}.a45-buttons .primary{background:#962457;color:white;border-color:#962457}.a45-footer [data-error]{color:#bc2833;margin:5px 0;overflow-wrap:anywhere}.a45-footer a{display:block;margin:8px 0;color:var(--accent,#9a2257);font-size:14px}.a45-narrow .a45-shell{width:390px}.w35-decision.returned{border-color:#ab6b14;background:rgba(171,107,20,.1)}.w35-decision.returned>strong{color:#ac711e}.w35-file-actions [data-annotate]{color:var(--accent,#942052)}
@media(max-width:600px){.a45-overlay{padding:0;height:100dvh}.a45-shell{border-radius:0}.a45-header{padding:8px 10px;gap:8px}.a45-header strong{font-size:16px}.a45-header>button{padding:8px}.a45-notice{padding:6px 10px;font-size:11px}.a45-tools{padding:6px 10px}.a45-tool-row{gap:4px}.a45-tools button{font-size:12px;padding:7px 8px}.a45-tools select{font-size:14px;padding:6px}.a45-tools label{font-size:11px}.a45-view{padding:8px}.a45-footer{padding:6px 10px max(8px,env(safe-area-inset-bottom));max-height:34%}.a45-buttons button{flex:1;font-size:13px;padding:8px}.a45-paging{gap:12px}}
@media(prefers-reduced-motion:reduce){.a45-overlay *{scroll-behavior:auto}}

/* editor88: collapsible comment and touch zoom slider */
.a88-comment-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.a88-comment-head button{min-width:44px;min-height:44px;font-size:14px}.a45-tools .a88-zoom{display:flex;flex:1 1 220px;gap:8px;font-size:12px}.a88-zoom input[type=range]{flex:1;min-width:80px;width:100%;min-height:44px;padding:0;accent-color:var(--accent,#962457);touch-action:pan-y}.a88-zoom output{min-width:4ch;font-variant-numeric:tabular-nums;font-size:14px}.a45-overlay input[type=range]:disabled{opacity:.45}
