/* The document owns the screen; tools float over it. */
.editor.editor-v2{height:min(100dvh,var(--editor-keyboard-height,100dvh));min-height:0;background:#e9ede6;padding-top:env(safe-area-inset-top,0px);box-sizing:border-box}
.editor-v2 .editor-header{height:48px;min-height:48px;padding:0 max(10px,env(safe-area-inset-right,0px)) 0 max(8px,env(safe-area-inset-left,0px));gap:8px;background:#f9faf5f2}
.editor-v2 .editor-identity,.editor-v2 .editor-header-actions{gap:8px}
.editor-v2 .editor-logo{font-size:28px;padding-right:10px}
.editor-v2 .document-title{font-size:12px;max-width:48vw}
.editor-v2 .save-status{font-size:8px;margin-top:2px}
.editor-v2 .editor-header .icon-btn{width:36px;height:40px;min-width:32px}
.editor-v2 .editor-header-actions .btn{height:36px;min-height:36px;padding:0 12px}
.editor-v2 .editor-body{display:flex;min-height:0;position:relative}
.editor-v2 .drawing-area{flex:1;position:relative;min-height:0;width:100%;isolation:isolate}
.editor-v2 .canvas-viewport{flex:1;width:100%;min-height:0;overflow:auto;position:relative;padding:12px var(--paper-gutter,18px) max(64px,env(safe-area-inset-bottom,0px));overscroll-behavior:none;overflow-anchor:none;touch-action:none;scroll-behavior:auto}
.editor-v2 .page-stack{display:flex;flex-direction:column;align-items:center;gap:14px;min-width:100%;margin:0;position:relative;isolation:isolate}
.editor-v2 .paper-holder{position:relative;flex:none;margin:0;background:#fffefb;box-shadow:0 2px 16px #26392b0c;outline:1px solid #dce3d566;border-radius:1px}
.editor-v2 .paper-holder canvas{display:block;touch-action:none;user-select:none;-webkit-user-select:none;max-width:none}
.editor-v2 .page-caption{position:absolute;right:9px;bottom:6px;pointer-events:none;font-size:8px;color:#9ca692}
.editor-v2 .canvas-footer{position:absolute;left:8px;right:8px;bottom:max(7px,env(safe-area-inset-bottom,0px));height:34px;min-height:34px;border:0;background:none;padding:0;z-index:8;pointer-events:none}
.editor-v2 .canvas-footer>*{pointer-events:auto;background:#f9faf5ec;border:1px solid #dce3d5;border-radius:20px;box-shadow:0 3px 14px #26392b09;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px)}
.editor-v2 .canvas-footer .page-indicator{padding:0 12px;min-height:32px;font-size:10px}
.editor-v2 .canvas-tool-label{display:none}
.editor-v2 .zoom-controls{padding:0 3px}
.editor-v2 .zoom-controls .icon-btn{height:32px;width:30px}
.editor-v2 .pages-panel{display:none;position:absolute;left:0;top:0;bottom:0;width:150px;z-index:26;box-shadow:10px 0 35px #20302118;padding:18px 16px}
.editor-v2 .pages-panel.open{display:flex}
.editor-v2 .properties-panel{display:none;position:absolute;right:0;top:0;bottom:0;width:min(280px,88vw);z-index:30;box-shadow:-10px 0 35px #283b2b1c;padding:20px;background:#f8f9f3fa}
.editor-v2 .properties-panel.open{display:block}
.editor-v2 .properties-toggle,.editor-v2 .properties-close{display:inline-grid}
.editor-v2 .selection-bar{bottom:49px;z-index:15;max-width:calc(100% - 16px)}
.editor-v2 .floating-toolbar{position:absolute;z-index:24;display:flex;align-items:center;gap:3px;width:max-content;max-width:calc(100% - 16px);height:auto;min-height:0;padding:5px;border:1px solid #d8dfcf;border-radius:16px;background:#fcfdf7ed;box-shadow:0 5px 25px #2030211b;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);touch-action:none;user-select:none;-webkit-user-select:none;box-sizing:border-box;transition:box-shadow .18s}
.editor-v2 .floating-toolbar-content{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;flex-wrap:wrap}
.editor-v2 .floating-toolbar .tool-group,.editor-v2 .floating-toolbar .undo-group{display:flex;align-items:center;gap:1px;width:auto;flex:none}
.editor-v2 .floating-toolbar .tool{height:36px;width:34px;min-width:0;border-radius:9px}
.editor-v2 .floating-toolbar .tool .icon{width:18px;height:18px}
.editor-v2 .floating-toolbar .tool.active{background:#dfe8d7;color:#345530}
.editor-v2 .floating-toolbar .tool.active:after{left:14px;right:14px;bottom:3px}
.editor-v2 .floating-toolbar .icon-btn{height:36px;width:32px;min-width:0}
.editor-v2 .floating-toolbar .toolbar-colors{display:flex;align-items:center;gap:8px;padding:0 7px;margin:0}
.editor-v2 .floating-toolbar .color-dot{width:18px;height:18px;border:2px solid #fcfdf7}
.editor-v2 .floating-toolbar .tool-divider{height:22px;display:block;margin:0 2px}
.editor-v2 [data-toolbar-handle]{width:20px;min-width:20px;height:36px;padding:0;cursor:grab;color:#a2ad98;display:grid;place-items:center;touch-action:none;border-radius:10px}
.editor-v2 [data-toolbar-handle]:focus-visible{outline:2px solid #718c65;outline-offset:1px}
.editor-v2 [data-toolbar-toggle]{width:30px;min-width:30px;height:36px;padding:0;display:grid;place-items:center;color:#7e8e70;border-radius:10px;touch-action:none}
.editor-v2 [data-toolbar-toggle] .icon{width:16px;height:16px}
.editor-v2 .floating-toolbar.is-dragging{box-shadow:0 10px 32px #20302128;cursor:grabbing}
.editor-v2 .floating-toolbar.is-dragging [data-toolbar-handle]{cursor:grabbing}
.editor-v2 .floating-toolbar.is-minimized{border-radius:50%;padding:4px;width:44px;height:44px;min-width:44px}
.editor-v2 .floating-toolbar.is-minimized .floating-toolbar-content,.editor-v2 .floating-toolbar.is-minimized [data-toolbar-handle],.editor-v2 .floating-toolbar.is-minimized .floating-palette{display:none!important}
.editor-v2 .floating-toolbar.is-minimized [data-toolbar-toggle]{width:34px;min-width:34px;height:34px;border-radius:50%;background:#e5eddd;color:#395a32}
.editor-v2 .floating-toolbar.is-minimized [data-toolbar-toggle] .icon{width:20px;height:20px}
.editor-v2 .floating-palette{position:absolute;top:calc(100% + 8px);right:0;width:232px;max-width:calc(100vw - 32px);padding:13px;background:#fffffaf5;border:1px solid #dbe3d2;border-radius:14px;box-shadow:0 10px 32px #20302124;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);touch-action:auto;display:grid;gap:12px;overflow:auto}
.editor-v2 .palette-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
.editor-v2 .palette-grid .color-dot{width:26px;height:26px;border-width:2px}
.editor-v2 .floating-palette label{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;color:#738168}
.editor-v2 .floating-palette input[type=color]{width:44px;height:32px;border:1px solid #dbe3d2;border-radius:6px;background:#fff;padding:3px}
.editor-v2 .floating-palette input[type=range]{width:125px;accent-color:#718f60}
.editor-v2 .input-mode-control{display:flex;gap:7px;align-items:center;font-size:10px;color:#718465}
.editor-v2 .input-mode-control select{max-width:150px;border:1px solid #d8e0ce;border-radius:7px;background:#fbfcf7;padding:7px;color:#42553c;font-size:11px}
.editor-v2 .page-continuation{font-size:10px;color:#9ba68f;padding:10px 12px;text-align:center;pointer-events:none}
@media(max-width:680px){
  .editor-v2 .editor-header{height:44px;min-height:44px;padding-left:max(4px,env(safe-area-inset-left,0px));padding-right:max(5px,env(safe-area-inset-right,0px));gap:4px}
  .editor-v2 .editor-logo{display:none}
  .editor-v2 .editor-identity,.editor-v2 .editor-header-actions{gap:3px}
  .editor-v2 .document-title{font-size:11px;max-width:48vw}
  .editor-v2 .editor-header .icon-btn{width:32px;min-width:30px;height:38px}
  .editor-v2 .editor-header-actions .btn{height:34px;min-height:34px;min-width:34px;padding:0 8px}
  .editor-v2 .canvas-viewport{padding-top:8px;padding-bottom:max(52px,env(safe-area-inset-bottom,0px))}
  .editor-v2 .page-stack{gap:12px}
  .editor-v2 .floating-toolbar{gap:1px;padding:4px;border-radius:14px}
  .editor-v2 .floating-toolbar-content{gap:3px;max-width:calc(100vw - 74px)}
  .editor-v2 .floating-toolbar .tool{width:32px;height:35px}
  .editor-v2 .floating-toolbar .tool .icon{width:17px;height:17px}
  .editor-v2 .floating-toolbar .tool.active:after{left:13px;right:13px}
  .editor-v2 .floating-toolbar .toolbar-colors{gap:9px;padding:0 5px}
  .editor-v2 .floating-toolbar .color-dot{width:20px;height:20px}
  .editor-v2 .floating-toolbar .undo-group .icon-btn{width:31px;height:31px}
  .editor-v2 .floating-toolbar .tool-divider{display:none}
  .editor-v2 [data-toolbar-handle]{width:15px;min-width:15px;height:40px}
  .editor-v2 [data-toolbar-toggle]{width:25px;min-width:25px;height:36px}
  .editor-v2 .canvas-footer{bottom:max(5px,env(safe-area-inset-bottom,0px))}
  .editor-v2 .canvas-footer .page-indicator{font-size:9px;padding:0 10px}
  .editor-v2 .zoom-controls .icon-btn{width:27px;height:30px}
  .editor-v2 #zoom-label{font-size:9px;width:37px}
}
@media(max-height:480px){
  .editor-v2 .editor-header{height:40px;min-height:40px}
  .editor-v2 .canvas-viewport{padding-top:6px}
  .editor-v2 .floating-toolbar-content{flex-wrap:nowrap;max-width:none}
  .editor-v2 .floating-toolbar{max-width:calc(100% - 16px)}
}
@media(prefers-reduced-motion:reduce){.editor-v2 .floating-toolbar{transition:none}}

.editor-v2 .page-stack,.editor-v2 .paper-holder{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.editor-v2 .flow-text-content,.editor-v2 .inline-text-content{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}
