@import"https://fonts.googleapis.com/css2?family=Barlow:wght@400;600;700&family=Bebas+Neue&family=Cinzel:wght@500;700&family=Cormorant+Garamond:wght@400;600;700&family=DM+Sans:wght@400;500;700&family=Fira+Sans:wght@400;500;700&family=Inter:wght@300;400;500;600;700&family=Lato:wght@400;700&family=Lora:ital,wght@0,400;0,600;0,700;1,400&family=Merriweather:wght@400;700&family=Montserrat:wght@400;600;700&family=Nunito:wght@400;600;700&family=Open+Sans:wght@400;600;700&family=Oswald:wght@500;700&family=PT+Serif:wght@400;700&family=Playfair+Display:wght@400;700&family=Poppins:wght@400;500;600;700&family=Raleway:wght@400;600;700&family=Roboto+Mono:wght@400;500&family=Roboto:wght@400;500;700&family=Source+Sans+3:wght@400;600;700&family=Source+Serif+4:wght@400;600;700&family=Ubuntu:wght@400;500;700&family=Work+Sans:wght@400;600;700&display=swap";:root{--bg-app: #090d16;--bg-panel: #111827;--bg-panel-hover: #1f2937;--bg-input: #1e293b;--bg-viewport: #0b0f19;--border-subtle: #1f2937;--border-medium: #374151;--border-active: #6366f1;--text-primary: #f8fafc;--text-secondary: #94a3b8;--text-muted: #64748b;--accent-primary: #6366f1;--accent-primary-hover: #4f46e5;--accent-gradient: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);--accent-success: #10b981;--accent-danger: #ef4444;--accent-warning: #f59e0b;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .25);--shadow-md: 0 4px 12px -1px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 30px -3px rgba(0, 0, 0, .5);--shadow-paper: 0 12px 40px rgba(0, 0, 0, .65), 0 2px 8px rgba(0, 0, 0, .4);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--font-sans: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "Roboto Mono", monospace}[data-theme=light]{--bg-app: #f1f5f9;--bg-panel: #ffffff;--bg-panel-hover: #f8fafc;--bg-input: #f8fafc;--bg-viewport: #cbd5e1;--border-subtle: #e2e8f0;--border-medium: #cbd5e1;--border-active: #6366f1;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #64748b;--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .06);--shadow-md: 0 4px 14px -1px rgba(0, 0, 0, .08);--shadow-lg: 0 10px 30px -3px rgba(0, 0, 0, .12);--shadow-paper: 0 12px 36px rgba(0, 0, 0, .16), 0 2px 8px rgba(0, 0, 0, .06)}[data-theme=light] .canvas-viewport{background:#cbd5e1;background-image:radial-gradient(rgba(0,0,0,.09) 1px,transparent 0)}[data-theme=light] .element-context-bar{background:#fffffff2;border:1px solid var(--border-medium);box-shadow:0 10px 28px #0000001f,0 0 0 1px #6366f140;color:var(--text-primary)}[data-theme=light] .selected-element-bar{background:#0000000a;border:1px solid var(--border-subtle)}[data-theme=light] .selected-element-bar .selected-bar-badge{background:#6366f11a;border:1px solid rgba(99,102,241,.25);color:#4338ca}[data-theme=light] .selected-element-bar .selected-bar-divider{background:var(--border-medium)}[data-theme=light] .selected-element-bar .icon-btn{color:var(--text-secondary)}[data-theme=light] .selected-element-bar .icon-btn:hover:not(:disabled){background:#00000012;color:var(--text-primary)}[data-theme=light] .selected-element-bar .icon-btn.active{background:var(--accent-primary);color:#fff}[data-theme=light] .context-align-divider{background:var(--border-medium)}[data-theme=light] .context-align-row{background:#f1f5f9bf}[data-theme=light] .context-align-header,[data-theme=light] .context-align-btn{color:var(--text-secondary)}[data-theme=light] .context-align-btn:hover{background:#e2e8f0;color:var(--text-primary)}[data-theme=light] .btn-group-nav,[data-theme=light] .save-indicator-badge{background:#0000000a}[data-theme=light] .toolbox-images-panel{box-shadow:6px 0 24px #0000001a}[data-theme=light] .toolbox-image-thumb{background:#0000000a;border:1px solid rgba(0,0,0,.08)}[data-theme=light] .shortcuts-popover{box-shadow:0 12px 36px #0000002e,0 0 0 1px #6366f133}[data-theme=light] .shortcuts-popover-header{background:#f8fafc}[data-theme=light] .shortcuts-popover-title{color:#0f172a}[data-theme=light] .icon-library-preview{background:#0000000a;border:1px solid rgba(0,0,0,.08);color:var(--text-primary)}[data-theme=light] .icon-library-card:hover .icon-library-preview{background:#6366f124;border-color:#6366f173;color:#4f46e5}[data-theme=light] .modal-content{box-shadow:0 20px 45px #0000002e}[data-theme=light] .toolbox-hint-toast{background:#0f172af2;color:#fff}[data-theme=light] input[type=range]::-webkit-slider-runnable-track{background:#cbd5e1;border-color:#0000000d}[data-theme=light] input[type=range]:hover::-webkit-slider-runnable-track{background:#94a3b8}[data-theme=light] input[type=range]::-moz-range-track{background:#cbd5e1;border-color:#0000000d}[data-theme=light] input[type=range]:hover::-moz-range-track{background:#94a3b8}[data-theme=light] *{scrollbar-color:rgba(0,0,0,.22) transparent}[data-theme=light] ::-webkit-scrollbar-thumb{background:#00000038}[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:#00000061}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;margin:0;padding:0;overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;font-family:var(--font-sans);background-color:var(--bg-app);color:var(--text-primary);-webkit-font-smoothing:antialiased}#root{height:100%;width:100%;display:flex;flex-direction:column;overflow:hidden}.editor-layout{display:flex;flex-direction:column;height:100%;width:100%;overflow:hidden}.editor-body{flex:1 1 0%;min-height:0;height:0;display:grid;grid-template-columns:auto minmax(0,1fr) 300px;grid-template-rows:minmax(0,1fr);overflow:hidden}.editor-body.spectator-cinema{grid-template-columns:minmax(0,1fr)!important}.editor-body.spectator-cinema .toolbox,.editor-body.spectator-cinema .pages-panel,.editor-body.spectator-cinema .properties-panel{display:none!important}.editor-body.spectator-locked .toolbox,.editor-body.spectator-locked .pages-panel,.editor-body.spectator-locked .properties-panel{opacity:.35;pointer-events:none;filter:grayscale(.5);transition:opacity .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}button{font-family:inherit;cursor:pointer;border:none;outline:none;transition:all .15s ease-in-out}input:not(.fabric-itext-textarea):not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]),select,textarea:not(.fabric-itext-textarea){font-family:inherit;outline:none;background:var(--bg-input);border:1px solid var(--border-medium);color:var(--text-primary);border-radius:var(--radius-sm);padding:6px 10px;font-size:13px;transition:border-color .15s ease}input:not(.fabric-itext-textarea):not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]):focus,select:focus,textarea:not(.fabric-itext-textarea):focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px #6366f133}*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:var(--radius-full);transition:background .15s ease}::-webkit-scrollbar-thumb:hover{background:#ffffff59}::-webkit-scrollbar-corner{background:transparent}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:22px;background:transparent;cursor:pointer;padding:0!important;margin:0;border:none!important;outline:none;box-shadow:none!important;display:block;vertical-align:middle}input[type=range]:focus{outline:none;box-shadow:none!important}input[type=range]::-webkit-slider-runnable-track{width:100%;height:6px;background:#ffffff1f;border-radius:var(--radius-full);border:1px solid rgba(255,255,255,.05);transition:background .15s ease,border-color .15s ease}input[type=range]:hover::-webkit-slider-runnable-track{background:#ffffff2e;border-color:#6366f159}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:var(--accent-primary);border:2px solid #ffffff;box-shadow:0 1px 4px #0006,0 0 #6366f100;cursor:grab;margin-top:-5px;transition:transform .12s ease,background .15s ease,box-shadow .15s ease}input[type=range]:hover::-webkit-slider-thumb{background:#818cf8;transform:scale(1.15);box-shadow:0 2px 6px #00000080,0 0 0 3px #6366f14d}input[type=range]:active::-webkit-slider-thumb{cursor:grabbing;transform:scale(1.05);background:var(--accent-primary-hover);box-shadow:0 2px 4px #0009,0 0 0 5px #6366f173}input[type=range]::-moz-range-track{width:100%;height:6px;background:#ffffff1f;border-radius:var(--radius-full);border:1px solid rgba(255,255,255,.05);transition:background .15s ease}input[type=range]:hover::-moz-range-track{background:#ffffff2e}input[type=range]::-moz-range-progress{background:var(--accent-primary);border-radius:var(--radius-full);height:6px}input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--accent-primary);border:2px solid #ffffff;box-shadow:0 1px 4px #0006;cursor:grab;transition:transform .12s ease,background .15s ease,box-shadow .15s ease}input[type=range]:hover::-moz-range-thumb{background:#818cf8;transform:scale(1.15);box-shadow:0 2px 6px #00000080,0 0 0 3px #6366f14d}input[type=range]:active::-moz-range-thumb{cursor:grabbing;transform:scale(1.05);background:var(--accent-primary-hover);box-shadow:0 2px 4px #0009,0 0 0 5px #6366f173}.fabric-itext-textarea,textarea.fabric-itext-textarea{position:fixed!important;top:0!important;left:0!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;border:none!important;padding:0!important;margin:0!important;outline:none!important;resize:none!important;background:transparent!important;box-shadow:none!important;z-index:-9999!important;overflow:hidden!important}.topbar{position:relative;background:var(--bg-panel);border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;padding:0 16px;box-sizing:border-box;flex-shrink:0}.topbar-upper{height:42px;min-height:42px;z-index:310}.topbar-main{height:44px;min-height:44px;z-index:300;justify-content:flex-start;gap:8px}.topbar-main .topbar-center{flex:0 1 auto;margin:0;justify-content:flex-start}.topbar-main .topbar-right{position:absolute;right:16px}.topbar-left,.topbar-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.topbar-center{display:flex;align-items:center;justify-content:center;flex:1;min-width:0;margin:0 10px}.app-brand{display:flex;align-items:center;gap:8px;font-weight:700;font-size:15px;letter-spacing:-.02em;color:var(--text-primary);padding-right:14px;border-right:1px solid var(--border-medium)}.brand-icon{width:28px;height:28px;background:var(--accent-gradient);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:#fff}.title-input{background:transparent;border:1px solid transparent;font-size:14px;font-weight:600;color:var(--text-primary);padding:4px 10px;width:min-content;field-sizing:content;max-width:100%;text-align:left;border-radius:var(--radius-sm);text-overflow:ellipsis;overflow:hidden;white-space:nowrap;transition:all .15s ease}.title-input:hover{background:var(--bg-panel-hover);border-color:var(--border-medium)}.title-input:focus{background:var(--bg-input);border-color:var(--accent-primary);width:min-content;max-width:100%}.save-indicator-badge{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);background:#ffffff0a;border:1px solid var(--border-subtle);cursor:default;-webkit-user-select:none;user-select:none;transition:all var(--transition-fast)}.save-indicator-badge:hover{background:#ffffff0f}.status-badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;padding:3px 8px;border-radius:var(--radius-full);background:#ffffff0d;color:var(--text-secondary)}.status-dot{width:9px;height:9px;border-radius:50%;display:inline-block;transition:all .2s ease}.status-dot.saved{background:var(--accent-success);box-shadow:0 0 6px #10b98180}.status-dot.saving{background:var(--accent-warning);animation:pulse 1s infinite}.status-dot.unsaved{background:var(--accent-warning);box-shadow:0 0 5px #f59e0b66}.status-dot.error{background:var(--accent-danger);box-shadow:0 0 6px #ef444480}.status-dot.offline,.status-dot.server-offline{background:var(--accent-danger, #ef4444);box-shadow:0 0 7px #ef4444b3}.btn-group-nav{display:flex;align-items:center;gap:3px;background:#ffffff0a;padding:2px 4px;border-radius:var(--radius-sm);border:1px solid var(--border-subtle)}.topbar-subpanel{display:inline-flex;align-items:center;gap:1px;background:#ffffff0a;padding:2px;border-radius:var(--radius-sm);border:1px solid var(--border-subtle)}.topbar-subpanel-btn{background:transparent;color:var(--text-secondary);width:30px;height:30px;border-radius:4px;display:flex;align-items:center;justify-content:center;border:1px solid transparent;cursor:pointer;transition:all .15s ease;padding:0}.topbar-subpanel-btn:hover:not(:disabled){background:var(--bg-panel-hover);color:var(--text-primary)}.topbar-subpanel-btn.active{background:#6366f133;color:#818cf8;border-color:#6366f173}.topbar-subpanel-btn.active:hover{background:#6366f14d;color:#a5b4fc}.print-guides-popover{position:absolute;top:calc(100% + 6px);left:0;width:280px;background:var(--bg-panel);border:1px solid var(--border-medium);border-radius:var(--radius-md, 8px);box-shadow:0 10px 28px #00000047,0 2px 8px #00000026;z-index:250;padding:12px;box-sizing:border-box;animation:fadeIn .12s ease-out}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.icon-btn{background:transparent;color:var(--text-secondary);width:34px;height:34px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}.icon-btn:hover:not(:disabled){background:var(--bg-panel-hover);color:var(--text-primary)}.icon-btn.active{background:#6366f133;color:#818cf8;border:1px solid rgba(99,102,241,.45)}.icon-btn.active:hover{background:#6366f14d;color:#a5b4fc}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.btn-secondary{background:var(--bg-input);border:1px solid var(--border-medium);color:var(--text-primary);padding:6px 12px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;display:flex;align-items:center;gap:6px}.btn-secondary:hover{background:var(--bg-panel-hover);border-color:var(--text-secondary)}.btn-subtarget-pill{background:var(--bg-input);border:1px solid var(--border-medium);color:var(--text-secondary);padding:7px 12px;border-radius:var(--radius-sm);font-size:12px;font-weight:500;display:flex;align-items:center;gap:8px;flex:1;min-width:0;max-width:100%;overflow:hidden;box-sizing:border-box;cursor:pointer;transition:all .15s ease;text-align:left}.btn-subtarget-pill svg,.btn-subtarget-pill>svg,.btn-subtarget-pill>span:first-child{flex-shrink:0}.btn-subtarget-pill>span{min-width:0}.btn-subtarget-pill:hover{background:var(--bg-panel-hover);color:var(--text-primary);border-color:var(--border-light)}.btn-subtarget-pill.active{background:#6366f12e;color:#818cf8;border-color:#6366f180;font-weight:600}.btn-primary{background:var(--accent-gradient);color:#fff;padding:7px 16px;border-radius:var(--radius-sm);font-size:13px;font-weight:600;display:flex;align-items:center;gap:6px;box-shadow:0 2px 8px #6366f159}.btn-primary:hover{opacity:.95;transform:translateY(-1px);box-shadow:0 4px 12px #6366f173}.toolbox-wrapper{display:flex;height:100%;position:relative;z-index:25}.toolbox{width:68px;flex-shrink:0;background:var(--bg-panel);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;align-items:center;padding:12px 0;gap:8px;z-index:10}.toolbox-subpanel{width:68px;height:100%;flex-shrink:0;background:var(--bg-panel);border-right:1px solid var(--border-subtle);box-shadow:2px 0 10px #0000001a;display:flex;flex-direction:column;align-items:center;padding:12px 0;gap:8px;z-index:9;overflow-y:auto;overflow-x:hidden;animation:slideInSubpanel .18s cubic-bezier(.16,1,.3,1)}.toolbox-nested-subpanel{z-index:8;border-right:1px solid var(--border-subtle)}@keyframes slideInSubpanel{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.toolbox-subpanel-header{display:flex;align-items:center;justify-content:space-between;width:52px;padding:0 2px 6px;border-bottom:1px solid var(--border-subtle);margin-bottom:2px}.toolbox-subpanel-title{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--text-muted)}.toolbox-subpanel-close{background:transparent;border:none;color:var(--text-muted);display:flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:var(--radius-sm);cursor:pointer;padding:0;transition:all .15s ease}.toolbox-subpanel-close:hover{background:var(--bg-panel-hover);color:var(--text-primary)}.tool-btn{width:46px;height:46px;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:10px;font-weight:500;position:relative}.tool-btn.draggable{cursor:grab}.tool-btn.draggable:active{cursor:grabbing}.tool-btn:hover{background:var(--bg-panel-hover);color:var(--text-primary)}.tool-btn.active{background:#6366f126;color:var(--accent-primary);border:1px solid rgba(99,102,241,.3)}.toolbox-hint-toast{position:absolute;top:70px;left:76px;background:#111827f2;border:1px solid var(--accent-primary);color:#fff;padding:6px 12px;border-radius:var(--radius-md);font-size:11px;font-weight:500;display:flex;align-items:center;gap:6px;white-space:nowrap;box-shadow:var(--shadow-lg);z-index:50;animation:fadeIn .15s ease-out;pointer-events:none}.toolbox-divider{width:32px;height:1px;background:var(--border-subtle);margin:6px 0}.canvas-workspace-area{position:relative;width:100%;height:100%;min-height:0;overflow:hidden;z-index:1}.canvas-viewport{background:var(--bg-viewport);background-image:radial-gradient(rgba(255,255,255,.08) 1px,transparent 0);background-size:24px 24px;position:relative;overflow:auto;width:100%;height:100%;min-height:0;-webkit-user-select:none;user-select:none}.canvas-scroll-container{min-width:100%;min-height:100%;width:max-content;height:max-content;display:flex;align-items:center;justify-content:center;padding:40px 32px;box-sizing:border-box;margin:auto}.canvas-sizer{position:relative}.canvas-sizer.canvas-preview-card{overflow:hidden;contain:paint}.canvas-sizer.is-live-canvas{overflow:visible!important;contain:none!important}.canvas-sizer.drag-over{outline:2px dashed var(--accent-primary);outline-offset:4px}.canvas-wrapper{position:absolute;top:0;left:0;box-shadow:var(--shadow-paper);background:#fff;transform-origin:top left}.canvas-multi-pages-stack{position:relative;display:flex;flex-direction:column;align-items:center;gap:36px;padding:24px 0 60px;box-sizing:border-box}.canvas-single-page-wrapper{position:relative;display:flex;align-items:center;justify-content:center;box-sizing:border-box}.canvas-page-card{display:flex;flex-direction:column;align-items:center;position:relative;transition:transform .15s ease;overflow:visible}.canvas-page-header{display:flex;align-items:center;justify-content:flex-end;width:100%;height:22px;min-height:22px;max-height:22px;margin-bottom:6px;padding:0 2px;font-size:12px;font-weight:600;color:var(--text-secondary);-webkit-user-select:none;user-select:none;overflow:visible;white-space:nowrap;flex-wrap:nowrap;box-sizing:border-box}.canvas-page-header .page-badge{display:inline-flex;align-items:center;gap:6px;background:var(--bg-input);border:1px solid var(--border-medium);padding:0 8px;height:22px;box-sizing:border-box;border-radius:var(--radius-sm);font-size:11px;color:var(--text-secondary);white-space:nowrap;flex-shrink:0;margin-right:auto}.canvas-page-header .page-badge span{white-space:nowrap;-webkit-user-select:none;user-select:none}.canvas-page-header .canvas-page-header-actions{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.canvas-page-card.is-active-page .canvas-page-header .page-badge{border-color:#2563eb;color:#3b82f6;background:#2563eb14;font-weight:700}.canvas-preview-wrapper{position:absolute;top:0;left:0;width:100%;height:100%;cursor:pointer;overflow:hidden;box-shadow:var(--shadow-paper);background:#fff}.canvas-preview-wrapper:hover{outline:2px solid rgba(37,99,235,.4);outline-offset:2px}.canvas-preview-image{width:100%;height:100%;object-fit:contain;display:block;background:transparent;image-rendering:-webkit-optimize-contrast;image-rendering:high-quality}.bleed-guide{position:absolute;pointer-events:none;border-style:dashed;border-color:#ef4444;opacity:1;box-sizing:border-box;z-index:15;filter:drop-shadow(0 0 2px rgba(239,68,68,.4))}.safe-zone-guide{position:absolute;pointer-events:none;border-style:dashed;border-color:#64748b;opacity:1;box-sizing:border-box;z-index:15;filter:drop-shadow(0 0 2px rgba(100,116,139,.4))}.dtp-grid-overlay{position:absolute;top:0;left:0;pointer-events:none;z-index:12}.zoom-controller{position:absolute;bottom:20px;left:50%;transform:translate(-50%);background:#111827d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-medium);border-radius:var(--radius-full);display:flex;align-items:center;padding:4px 8px;gap:6px;box-shadow:var(--shadow-lg);z-index:15}.zoom-label{font-size:12px;font-weight:600;min-width:44px;text-align:center;color:var(--text-primary);font-family:var(--font-mono)}.properties-panel{background:var(--bg-panel);border-left:1px solid var(--border-subtle);overflow-y:auto;overflow-x:hidden;padding:16px;display:flex;flex-direction:column;gap:20px;font-size:13px;z-index:10;box-sizing:border-box;min-height:0;height:100%}.panel-header{font-size:14px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;justify-content:space-between;padding-bottom:10px;border-bottom:1px solid var(--border-subtle)}.panel-section{display:flex;flex-direction:column;gap:10px}.section-title{font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--text-muted)}.prop-row{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;box-sizing:border-box}.prop-col{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.properties-panel input:not(.fabric-itext-textarea):not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]),.properties-panel select,.properties-panel textarea,.prop-col input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]),.prop-col select{width:100%;min-width:0;box-sizing:border-box}.dtp-guide-item{display:flex;align-items:center;gap:10px;cursor:pointer;padding:6px 8px;border-radius:var(--radius-sm);background:#ffffff05;border:1px solid rgba(255,255,255,.04);transition:all .15s ease;-webkit-user-select:none;user-select:none;width:100%;box-sizing:border-box}.dtp-guide-item:hover{background:#ffffff0f;border-color:#ffffff1a}.dtp-guide-item input[type=checkbox]{-moz-appearance:auto;appearance:auto;-webkit-appearance:auto;width:16px!important;height:16px!important;min-width:16px!important;max-width:16px!important;margin:0!important;padding:0!important;cursor:pointer;accent-color:var(--accent-primary);flex-shrink:0;box-shadow:none!important;border:none!important;background:transparent!important}.dtp-guide-color-badge{width:8px;height:8px;border-radius:50%;flex-shrink:0;box-shadow:0 0 4px currentColor}.dtp-guide-label{font-size:12px;color:var(--text-secondary);line-height:1.35;flex:1}.dtp-guide-item:hover .dtp-guide-label{color:var(--text-primary)}.properties-panel input[type=number]{padding:5px 6px;font-size:12px;font-family:var(--font-mono)}.prop-label{font-size:12px;color:var(--text-secondary);white-space:nowrap}.btn-group{display:flex;border:1px solid var(--border-medium);border-radius:var(--radius-sm);overflow:hidden}.btn-group button{flex:1;background:var(--bg-input);color:var(--text-secondary);padding:6px;font-size:12px;display:flex;align-items:center;justify-content:center;border-right:1px solid var(--border-medium)}.btn-group button:last-child{border-right:none}.btn-group button.active{background:var(--accent-primary);color:#fff}.stroke-dash-controls{margin-top:8px;padding:8px 10px;background:#00000008;border-radius:var(--radius-sm, 6px);border:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:8px}[data-theme=dark] .stroke-dash-controls,.dark .stroke-dash-controls{background:#ffffff08}.color-input-wrapper{display:flex;align-items:center;gap:8px;background:var(--bg-input);border:1px solid var(--border-medium);border-radius:var(--radius-sm);padding:3px 6px;width:100%;box-sizing:border-box}.color-picker{-webkit-appearance:none;border:none;width:22px;height:22px;border-radius:4px;cursor:pointer;background:none;padding:0;flex-shrink:0}.color-picker::-webkit-color-swatch-wrapper{padding:0}.color-picker::-webkit-color-swatch{border:1px solid rgba(255,255,255,.2);border-radius:4px}.color-hex{font-family:var(--font-mono);font-size:12px;color:var(--text-primary);background:transparent;border:none;width:100%;min-width:0;outline:none}.color-swatches-container{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px;align-items:center}.color-swatch-chip{transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease}.color-swatch-chip:hover{transform:scale(1.15)!important;z-index:2;box-shadow:0 2px 6px #00000059}.transparent-pattern-badge{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:var(--radius-sm);background:#ffffff0a;border:1px dashed var(--border-medium);font-size:11px;color:var(--text-muted)}.transparent-checker-swatch{width:18px;height:18px;border-radius:3px;border:1px solid rgba(255,255,255,.2);background-image:linear-gradient(45deg,#333 25%,transparent 25%),linear-gradient(-45deg,#333 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#333 75%),linear-gradient(-45deg,transparent 75%,#333 75%);background-size:8px 8px;background-position:0 0,0 4px,4px -4px,-4px 0px;background-color:#222;flex-shrink:0}.shape-no-fill-stroke-alert{display:flex;flex-direction:column;gap:6px;padding:8px 10px;background:#ef444414;border:1px solid rgba(239,68,68,.25);border-radius:var(--radius-sm);font-size:11px;color:#fca5a5;margin-top:8px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1100;animation:fadeIn .15s ease-out}.modal-overlay.modal-vectorize-overlay{z-index:1200}.modal-overlay.text-art-modal-overlay{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;z-index:999999!important}.modal-content{background:var(--bg-panel);border:1px solid var(--border-medium);border-radius:var(--radius-lg);width:640px;max-width:90vw;max-height:85vh;display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}.modal-header{padding:16px 22px;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.modal-body{padding:20px 22px;overflow-y:auto;flex:1;min-height:0}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:16px}.project-card{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:12px;cursor:pointer;display:flex;flex-direction:column;gap:8px;transition:all .15s ease}.project-card:hover{border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.project-thumb{position:relative;height:140px;background:#fff;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid var(--border-subtle)}.project-page-badge{position:absolute;bottom:8px;right:8px;background:#0f172ad1;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);color:#fff;font-size:10px;font-weight:600;padding:2px 7px;border-radius:var(--radius-sm);display:flex;align-items:center;gap:4px;border:1px solid rgba(255,255,255,.15);box-shadow:0 2px 6px #00000059;pointer-events:none}.project-thumb img{max-width:100%;max-height:100%;object-fit:contain}.project-title{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-primary)}.project-meta{font-size:11px;color:var(--text-muted);display:flex;justify-content:space-between;align-items:center}.project-footer-meta{font-size:11px;color:var(--text-muted);display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:2px}@keyframes fadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.spin,.spin-animation{animation:spin .85s linear infinite!important;display:inline-block;transform-origin:center center}.page-bar{background:var(--bg-panel);border-top:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;padding:0 16px;height:42px;min-height:42px;flex-shrink:0;z-index:20}.page-bar-left,.page-bar-right{display:flex;align-items:center;gap:8px}.page-bar-label{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text-secondary);padding-right:8px;border-right:1px solid var(--border-medium)}.page-tabs-container{display:flex;align-items:center;gap:6px;max-width:50vw;overflow-x:auto;scrollbar-width:thin}.page-tab{display:flex;align-items:center;gap:6px;padding:3px 10px;border-radius:var(--radius-sm);background:var(--bg-input);border:1px solid var(--border-medium);color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .15s ease}.page-tab:hover{background:var(--bg-panel-hover);color:var(--text-primary);border-color:var(--text-muted)}.page-tab.active{background:#2563eb26;border-color:#2563eb;color:#93c5fd;font-weight:600}.page-tab-del{background:transparent;color:var(--text-muted);width:16px;height:16px;border-radius:3px;display:flex;align-items:center;justify-content:center;padding:0;opacity:.6}.page-tab-del:hover{color:#ef4444;opacity:1}.icon-btn-sm{background:transparent;color:var(--text-secondary);width:28px;height:28px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;cursor:pointer}.icon-btn-sm:hover:not(:disabled){background:var(--bg-panel-hover);color:var(--text-primary)}.icon-btn-sm:disabled{opacity:.3;cursor:not-allowed}.view-mode-toggle-group{display:flex;align-items:center;background:var(--bg-input);border:1px solid var(--border-medium);border-radius:var(--radius-sm);padding:2px;gap:2px;margin-left:6px}.view-mode-toggle-group .icon-btn-sm{width:24px;height:24px;border-radius:3px;color:var(--text-muted)}.view-mode-toggle-group .icon-btn-sm:hover{color:var(--text-primary)}.view-mode-toggle-group .icon-btn-sm.active{background:var(--accent-primary);color:#fff}.btn-action-sm{background:var(--bg-input);border:1px solid var(--border-medium);color:var(--text-primary);padding:4px 10px;border-radius:var(--radius-sm);font-size:12px;font-weight:500;display:flex;align-items:center;gap:5px;cursor:pointer}.btn-action-sm:hover{background:var(--bg-panel-hover);border-color:var(--text-secondary)}.zoom-slider-wrapper{display:flex;align-items:center;gap:5px}.zoom-indicator-icon{color:#fff;opacity:1;flex-shrink:0;pointer-events:none;-webkit-user-select:none;user-select:none}[data-theme=light] .zoom-indicator-icon{color:#000}.zoom-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:76px;height:4px;background:var(--border-medium, #4b5563);border-radius:2px;outline:none;cursor:pointer;transition:all .15s ease}.zoom-slider:hover{background:#6b7280}.zoom-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent-primary, #6366f1);cursor:pointer;border:2px solid #ffffff;box-shadow:0 1px 4px #0006;transition:transform .1s ease,background .15s ease}.zoom-slider::-webkit-slider-thumb:hover{transform:scale(1.2);background:#4f46e5}.zoom-slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--accent-primary, #6366f1);cursor:pointer;border:2px solid #ffffff;box-shadow:0 1px 4px #0006;transition:transform .1s ease,background .15s ease}.zoom-slider::-moz-range-thumb:hover{transform:scale(1.2);background:#4f46e5}.zoom-value{font-size:12px;font-family:var(--font-mono);color:var(--text-primary);min-width:42px;text-align:center;font-weight:600;-webkit-user-select:none;user-select:none;transition:color .15s ease}.zoom-value:hover{color:var(--accent-primary, #6366f1)}.modal-templates{width:960px;max-width:95vw;height:85vh;max-height:780px;display:flex;flex-direction:column}.modal-icons-dialog{width:900px;max-width:95vw;height:85vh;max-height:750px;display:flex;flex-direction:column}.modal-vectorize{width:860px;max-width:95vw;height:85vh;max-height:760px;display:flex;flex-direction:column}.vectorize-layout{display:grid;grid-template-columns:260px 1fr;gap:0;flex:1;min-height:0;overflow:hidden}.vectorize-controls{padding:18px;border-right:1px solid var(--border-subtle);overflow-y:auto;display:flex;flex-direction:column;gap:16px}.vectorize-preview{background:var(--bg-viewport);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:16px;gap:12px}.vectorize-preview-img{max-width:100%;max-height:calc(100% - 80px);object-fit:contain;border-radius:6px;box-shadow:var(--shadow-md)}.vectorize-preview-svg{max-width:100%;max-height:calc(100% - 80px);border-radius:6px;box-shadow:var(--shadow-md);background:repeating-conic-gradient(#ffffff22 0% 25%,transparent 0% 50%) 0 0 / 12px 12px}.vectorize-preview-tabs{display:flex;gap:6px;position:absolute;top:14px;left:14px;z-index:5}.vectorize-preview-tab{font-size:11px;font-weight:600;padding:4px 10px;border-radius:999px;border:1px solid var(--border-medium);background:var(--bg-panel);color:var(--text-secondary);cursor:pointer;transition:all .15s}.vectorize-preview-tab.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.vectorize-progress-bar{width:100%;height:4px;background:var(--border-medium);border-radius:2px;overflow:hidden}.vectorize-progress-fill{height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6);transition:width .2s ease-out;border-radius:2px}.vectorize-preset-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.vectorize-preset-btn{padding:10px 8px;border-radius:var(--radius-md);border:1px solid var(--border-medium);background:var(--bg-input);color:var(--text-secondary);cursor:pointer;font-size:12px;font-weight:500;text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px;transition:all .15s;line-height:1.3}.vectorize-preset-btn:hover{border-color:var(--accent-primary);color:var(--text-primary);background:var(--bg-panel-hover)}.vectorize-preset-btn.active{border-color:var(--accent-primary);background:#6366f11f;color:var(--accent-primary)}.vectorize-stats-row{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--text-muted);padding:6px 10px;background:var(--bg-input);border-radius:var(--radius-sm)}.vectorize-footer{padding:14px 22px;border-top:1px solid var(--border-subtle);display:flex;gap:10px;justify-content:space-between;align-items:center;flex-shrink:0;flex-wrap:wrap}.vectorize-footer-left,.vectorize-footer-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.vector-clip-btn{display:inline-flex;align-items:center;justify-content:center;background:var(--bg-panel);border:1px solid var(--border-medium);border-radius:var(--radius-sm, 4px);color:var(--text-secondary);cursor:pointer;transition:all .15s ease;font-size:11px;font-weight:500;padding:4px 6px;width:100%}.vector-clip-btn:hover{border-color:var(--accent-primary);color:var(--text-primary);background:var(--bg-panel-hover)}.vector-clip-btn.active{border-color:var(--accent-primary);background:#6366f129;color:var(--accent-primary);font-weight:600}.vector-shape-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px 2px;height:48px;gap:3px;border-radius:var(--radius-sm, 4px);border:1px solid var(--border-medium);background:var(--bg-panel);cursor:pointer;transition:all .15s ease}.vector-shape-btn:hover{border-color:var(--accent-primary);background:var(--bg-panel-hover)}.vector-shape-btn.active{border-color:var(--accent-primary);background:#6366f129}.templates-category-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;padding:8px 20px;border-bottom:1px solid var(--border-subtle);background:#00000026;flex-shrink:0;width:100%;box-sizing:border-box;overflow-y:auto;max-height:96px;scrollbar-width:thin}.templates-cat-btn{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;height:27px;border-radius:var(--radius-full, 9999px);background:var(--bg-input);border:1px solid var(--border-medium);color:var(--text-secondary);font-size:11.5px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .15s ease;flex-shrink:0;box-sizing:border-box}.templates-cat-btn:hover{background:var(--bg-panel-hover);color:var(--text-primary);border-color:var(--text-secondary)}.templates-cat-btn.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary);box-shadow:0 2px 6px #6366f159}.templates-cat-count{font-size:10px;font-weight:600;padding:1px 5px;border-radius:10px;background:#ffffff26;line-height:1.2}.templates-cat-btn.active .templates-cat-count{background:#ffffff40;color:#fff}.templates-modal-body{flex:1;min-height:0;overflow-y:auto;padding:16px 20px}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(265px,1fr));gap:20px}.template-card{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);position:relative}.template-card:hover{border-color:var(--accent-primary);transform:translateY(-3px);box-shadow:0 10px 25px -5px #00000080,0 0 12px #3b82f633}.template-card-preview-container{height:220px;background:#fff;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--border-subtle);padding:8px}.template-card-preview{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.template-card-preview svg{max-width:100%;max-height:100%;box-shadow:0 2px 8px #0000001f;border-radius:2px}.template-card-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a99;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease}.template-card:hover .template-card-overlay{opacity:1}.template-apply-badge{display:inline-flex;align-items:center;gap:6px;background:var(--accent-primary);color:#fff;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;box-shadow:0 4px 12px #0000004d;transform:scale(.9);transition:transform .15s ease}.template-card:hover .template-apply-badge{transform:scale(1)}.template-card-info{padding:14px 16px 10px;flex:1;display:flex;flex-direction:column}.template-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.template-badge{font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;padding:2px 8px;border-radius:4px;border:1px solid transparent}.template-category-name{font-size:11px;color:var(--text-muted)}.template-title{font-size:14px;font-weight:700;color:var(--text-primary);margin:0 0 6px;line-height:1.3}.template-desc{font-size:12px;color:var(--text-secondary);line-height:1.45;margin:0;flex:1}.template-card-footer{padding:10px 16px 14px}.template-card-actions-group{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:10px 16px 14px}.template-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-md);border:1px solid var(--border-medium);background:var(--bg-panel);color:var(--text-primary);cursor:pointer;transition:all .15s ease}.template-icon-btn:hover{background:var(--bg-hover);border-color:var(--border-focus)}.template-btn-apply:hover{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.template-btn-edit:hover{background:#8b5cf62e;border-color:#8b5cf6;color:#8b5cf6}.template-btn-delete:hover{background:#ef444426;border-color:#ef4444;color:#ef4444}.btn-apply-template{width:100%;display:flex;align-items:center;justify-content:center;gap:7px;padding:7px 12px;border-radius:var(--radius-md);background:var(--bg-panel);border:1px solid var(--border-medium);color:var(--text-primary);font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease}.btn-apply-template:hover{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.templates-modal-footer{padding:14px 24px;border-top:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;background:#0000001a}.templates-replace-toggle{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.templates-replace-toggle input[type=checkbox]{accent-color:var(--accent-primary);width:15px;height:15px;cursor:pointer}.editing-zone-banner{position:absolute;top:14px;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:16px;background:#111827f2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(99,102,241,.5);box-shadow:0 8px 32px #00000080,0 0 0 1px #6366f133;border-radius:var(--radius-full);padding:8px 18px 8px 14px;animation:fadeInDown .2s cubic-bezier(.16,1,.3,1)}@keyframes fadeInDown{0%{opacity:0;transform:translate(-50%,-10px)}to{opacity:1;transform:translate(-50%)}}.banner-left{display:flex;align-items:center;gap:10px}.banner-badge{background:var(--accent-gradient);color:#fff;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;padding:3px 9px;border-radius:var(--radius-full);box-shadow:0 2px 8px #6366f166}.banner-text{font-size:13px;font-weight:500;color:var(--text-primary)}.btn-done-zone{display:inline-flex;align-items:center;gap:7px;background:var(--accent-success);color:#fff;border-radius:var(--radius-full);padding:6px 14px;font-size:12.5px;font-weight:600;cursor:pointer;transition:all .15s ease;box-shadow:0 2px 10px #10b98159}.btn-done-zone:hover{background:#059669;transform:translateY(-1px);box-shadow:0 4px 14px #10b98173}.header-hover-overlay,.footer-hover-overlay{position:absolute;left:0;right:0;width:100%;pointer-events:none;display:flex;align-items:center;justify-content:center;transition:all .18s ease;z-index:15;opacity:0}.header-hover-overlay{top:0;border-bottom:2px dashed rgba(99,102,241,.7);background:linear-gradient(to bottom,#6366f11f,#6366f105)}.footer-hover-overlay{border-top:2px dashed rgba(99,102,241,.7);background:linear-gradient(to top,#6366f11f,#6366f105)}.header-hover-overlay.visible,.footer-hover-overlay.visible{opacity:1;pointer-events:auto}.zone-indicator-badge{position:absolute;left:12px;top:8px;font-size:10px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--accent-primary);background:#111827d9;border:1px solid rgba(99,102,241,.4);padding:2px 7px;border-radius:4px;pointer-events:none}.btn-edit-zone{display:inline-flex;align-items:center;gap:7px;background:var(--bg-panel);color:var(--text-primary);border:1px solid var(--accent-primary);padding:6px 14px;border-radius:var(--radius-full);font-size:12.5px;font-weight:600;cursor:pointer;box-shadow:0 4px 16px #00000073,0 0 0 1px #6366f14d;transition:all .15s ease;pointer-events:auto}.btn-edit-zone:hover{background:var(--accent-primary);color:#fff;transform:translateY(-1px) scale(1.03);box-shadow:0 6px 20px #6366f173}[data-theme=light] .btn-edit-zone{background:#fff;color:#1e293b;border-color:var(--accent-primary);box-shadow:0 4px 16px #0000001f,0 0 0 1px #6366f14d}[data-theme=light] .btn-edit-zone:hover{background:var(--accent-primary);color:#fff}.canvas-wrapper .canvas-container{z-index:auto!important}.canvas-wrapper .lower-canvas{z-index:1!important}.canvas-wrapper .dtp-grid-overlay,.canvas-wrapper .bleed-guide,.canvas-wrapper .safe-zone-guide,.canvas-wrapper .dtp-header-divider,.canvas-wrapper .dtp-footer-divider{z-index:3}.active-zone-band{position:absolute;left:0;right:0;width:100%;z-index:4;pointer-events:none;box-shadow:inset 0 0 0 2px var(--accent-primary),0 0 24px #6366f140;background:#6366f10d}.header-active-band{border-bottom:2px solid var(--accent-primary)}.footer-active-band{border-top:2px solid var(--accent-primary)}.active-zone-badge{position:absolute;top:8px;right:12px;font-size:10.5px;font-weight:700;letter-spacing:.5px;color:#fff;background:var(--accent-primary);padding:2px 8px;border-radius:4px}.zone-dim-scrim{position:absolute;left:0;right:0;width:100%;background:#0b0f19a6;backdrop-filter:blur(1.5px);-webkit-backdrop-filter:blur(1.5px);z-index:5;pointer-events:none;display:flex;align-items:center;justify-content:center;transition:background .15s ease}.zone-dim-scrim:hover{background:#0b0f198c}.canvas-wrapper .upper-canvas{z-index:10!important}.scrim-prompt{background:#111827e0;border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-md);padding:8px 16px;display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--text-primary);font-size:13px;font-weight:600;box-shadow:0 4px 16px #00000080;pointer-events:none}.scrim-prompt small{font-size:11px;font-weight:400;color:var(--text-secondary)}.dtp-header-divider,.dtp-footer-divider{position:absolute;left:0;right:0;width:100%;pointer-events:none;z-index:8}.dtp-header-divider{border-bottom-style:dashed;border-bottom-color:#6366f1a6}.dtp-footer-divider{border-top-style:dashed;border-top-color:#6366f1a6}.object-zone-badge{font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:#fff;background:var(--accent-primary);padding:2px 7px;border-radius:4px}.hf-subsection{background:#ffffff06;border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:10px}.hf-subsection-title{display:block;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--text-muted);margin-bottom:8px}.btn-zone-exit-sm{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:var(--accent-warning);background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);padding:3px 8px;border-radius:4px;cursor:pointer;transition:all .15s ease}.btn-zone-exit-sm:hover{background:#f59e0b33}.hf-action-buttons{display:grid;grid-template-columns:1fr 1fr;gap:6px}.btn-zone-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 10px;border-radius:var(--radius-sm);background:var(--bg-input);border:1px solid var(--border-medium);color:var(--text-primary);font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease}.btn-zone-action:hover{background:var(--bg-panel-hover);border-color:var(--accent-primary);color:var(--text-primary)}.btn-zone-action.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff;box-shadow:0 2px 8px #6366f159}[data-theme=light] .btn-zone-action{background:#f1f5f9;border-color:#cbd5e1;color:#1e293b}[data-theme=light] .btn-zone-action:hover{background:#e2e8f0;border-color:#6366f1;color:#0f172a}[data-theme=light] .btn-zone-action.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.cover-page-notice{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-radius:var(--radius-sm);background:#3b82f614;border:1px solid rgba(59,130,246,.25);font-size:12px;color:var(--text-secondary);line-height:1.45}.shortcuts-trigger-wrapper{position:relative;display:inline-flex;align-items:center}.shortcuts-popover{position:absolute;top:calc(100% + 8px);right:0;width:440px;max-width:90vw;background:var(--bg-panel);border:1px solid var(--border-medium);box-shadow:0 12px 36px #000000a6,0 0 0 1px #6366f133;border-radius:var(--radius-lg);z-index:1000;display:flex;flex-direction:column;overflow:hidden;animation:popoverFadeIn .15s cubic-bezier(.16,1,.3,1)}@keyframes popoverFadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.shortcuts-popover-header{padding:11px 16px;background:#00000038;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center}.shortcuts-popover-title{font-size:13.5px;font-weight:700;color:var(--text-primary)}.shortcuts-popover-body{display:flex;flex-direction:column;gap:14px;padding:14px 16px;max-height:480px;overflow-y:auto}.shortcuts-group{display:flex;flex-direction:column;gap:6px}.shortcuts-group-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--accent-primary);margin-bottom:2px}.shortcuts-list{display:flex;flex-direction:column;gap:5px;background:#ffffff05;border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:8px 12px}.shortcut-item{display:flex;align-items:center;justify-content:space-between;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.04)}.shortcut-item:last-child{border-bottom:none}.shortcut-desc{font-size:12.5px;color:var(--text-primary)}.shortcut-keys{display:flex;align-items:center;gap:4px}.shortcut-key{display:inline-block;font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--text-primary);background:var(--bg-input);border:1px solid var(--border-medium);border-bottom:2px solid var(--border-medium);border-radius:4px;padding:2px 7px;box-shadow:0 1px 3px #0000004d}.key-plus{font-size:11px;color:var(--text-muted)}.canvas-context-menu{min-width:220px;background:var(--bg-panel);border:1px solid var(--border-medium);border-radius:var(--radius-md, 8px);box-shadow:0 16px 36px #0009,0 4px 12px #0006,0 0 0 1px #ffffff12;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:6px;display:flex;flex-direction:column;gap:2px;animation:contextMenuFadeIn .12s ease-out;-webkit-user-select:none;user-select:none}@keyframes contextMenuFadeIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.context-menu-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:var(--radius-sm, 6px);font-size:13px;font-weight:500;color:var(--text-primary);background:transparent;border:none;cursor:pointer;text-align:left;transition:all .15s ease;width:100%}.context-menu-item:hover{background:var(--bg-panel-hover);color:var(--text-primary)}.context-menu-item.context-menu-highlight{color:#34d399;font-weight:600}.context-menu-item.context-menu-highlight:hover{background:#10b98129;color:#6ee7b7}.context-menu-item.context-menu-danger{color:#f87171}.context-menu-item.context-menu-danger:hover{background:#ef444429;color:#fca5a5}.context-menu-divider{height:1px;background:var(--border-subtle);margin:4px 6px}.context-menu-shortcut{margin-left:auto;font-size:11px;color:var(--text-muted);font-family:var(--font-mono);background:var(--bg-input);padding:2px 6px;border-radius:4px;border:1px solid var(--border-subtle)}.context-menu-item:hover .context-menu-shortcut{color:var(--text-secondary);border-color:var(--border-medium)}[data-theme=light] .canvas-context-menu{background:#fff;border-color:#cbd5e1;box-shadow:0 12px 32px #0000001f,0 2px 8px #0000000f}[data-theme=light] .context-menu-item{color:#1e293b}[data-theme=light] .context-menu-item:hover{background:#f1f5f9;color:#0f172a}[data-theme=light] .context-menu-item.context-menu-highlight{color:#059669}[data-theme=light] .context-menu-item.context-menu-highlight:hover{background:#ecfdf5;color:#047857}[data-theme=light] .context-menu-item.context-menu-danger{color:#dc2626}[data-theme=light] .context-menu-item.context-menu-danger:hover{background:#fef2f2;color:#b91c1c}[data-theme=light] .context-menu-divider{background:#e2e8f0}[data-theme=light] .context-menu-shortcut{background:#f8fafc;color:#64748b;border-color:#e2e8f0}[data-theme=light] .context-menu-item:hover .context-menu-shortcut{color:#334155;border-color:#cbd5e1}.custom-element-delete-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:6px;background:#fffffff2;border:1px solid #fee2e2;color:#ef4444;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:30;transition:all .15s ease;box-shadow:0 2px 8px #00000026}.custom-element-delete-btn:hover{background:#ef4444;color:#fff;transform:scale(1.1);box-shadow:0 4px 12px #ef444466}[data-theme=dark] .custom-element-delete-btn{background:#1e293bf2;border-color:#ef444466;color:#f87171}[data-theme=dark] .custom-element-delete-btn:hover{background:#ef4444;color:#fff}.custom-element-edit-btn{width:28px;height:28px;border-radius:6px;background:#fffffff2;border:1px solid var(--border-subtle, #e2e8f0);color:var(--accent-primary, #6366f1);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:30;transition:all .15s ease;box-shadow:0 2px 8px #0000001f}.custom-element-edit-btn:hover{background:var(--accent-primary, #6366f1);color:#fff;transform:scale(1.1);box-shadow:0 4px 12px #6366f166}[data-theme=dark] .custom-element-edit-btn{background:#1e293bf2;border-color:#6366f166;color:#818cf8}[data-theme=dark] .custom-element-edit-btn:hover{background:#6366f1;color:#fff}.auto-elements-bar{animation:slideDown .18s cubic-bezier(.16,1,.3,1)}.auto-placeholder-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0003}.auto-placeholder-btn:active{transform:translateY(0)}.icon-library-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 8px;background:var(--bg-panel);border:1px solid var(--border-medium);border-radius:var(--radius-md, 8px);cursor:pointer;transition:all .16s ease;position:relative;text-align:center;outline:none}.icon-library-card:hover{background:var(--bg-panel-hover);border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:0 6px 18px #00000073,0 0 0 1px #6366f166}.icon-library-card:active{transform:translateY(0)}.icon-library-preview{width:52px;height:52px;display:flex;align-items:center;justify-content:center;margin-bottom:8px;border-radius:var(--radius-md, 8px);background:#ffffff0d;border:1px solid rgba(255,255,255,.08);color:var(--text-primary);transition:all .16s ease}.icon-library-card:hover .icon-library-preview{transform:scale(1.08);background:#6366f12e;border-color:#6366f173;color:#818cf8}.icon-library-title{font-size:11px;font-weight:600;color:var(--text-primary);line-height:1.25;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.icon-library-en{font-size:10px;color:var(--text-muted);margin-top:2px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auto-bar-hint-toast{animation:fadeIn .15s ease-out;pointer-events:none}.workspace-floating-bars-container{position:absolute;top:10px;left:50%;transform:translate(-50%);display:flex;flex-direction:row;align-items:flex-start;justify-content:center;gap:12px;z-index:100;pointer-events:none;max-width:calc(100% - 32px);flex-wrap:wrap}.workspace-floating-bars-container>*{position:relative!important;top:auto!important;left:auto!important;transform:none!important;pointer-events:auto}.element-context-bar{position:absolute;top:10px;left:50%;transform:translate(-50%);width:max-content;max-width:calc(100% - 32px);background:#0f172ad9;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-lg, 10px);box-shadow:0 8px 24px #00000059,0 0 0 1px #6366f140;display:flex;align-items:center;gap:14px;padding:8px 14px;z-index:100;pointer-events:auto;animation:slideDownFloating .18s cubic-bezier(.16,1,.3,1);box-sizing:border-box}.selected-element-bar{display:inline-flex;align-items:center;gap:3px;background:#ffffff0a;padding:2px 4px;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);box-sizing:border-box}.selected-element-bar .selected-bar-badge{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:5px;background:#6366f126;border:1px solid rgba(99,102,241,.35);font-size:11px;font-weight:600;color:#c7d2fe;margin-right:2px}.selected-element-bar .selected-bar-divider{width:1px;height:16px;background:#ffffff24;margin:0 2px;flex-shrink:0}.selected-element-bar .icon-btn{width:28px;height:28px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm, 6px);color:var(--text-secondary);background:transparent;border:none;cursor:pointer;transition:all .15s ease}.selected-element-bar .icon-btn:hover:not(:disabled){background:#ffffff1f;color:var(--text-primary)}.selected-element-bar .icon-btn.active{background:var(--accent-primary);color:#fff}.selected-element-bar .icon-btn:disabled{opacity:.35;cursor:not-allowed}.context-align-section{display:flex;flex-direction:column;align-items:center;gap:5px}.context-align-header{font-size:10.5px;font-weight:600;color:#94a3b8;letter-spacing:.02em;white-space:nowrap;-webkit-user-select:none;user-select:none}.context-align-rows{display:flex;flex-direction:column;gap:3px}.context-align-row{display:flex;justify-content:center;gap:2px;background:#0f172aa6;padding:2px;border-radius:5px;border:1px solid rgba(255,255,255,.08)}.context-align-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:24px;background:transparent;border:none;border-radius:4px;color:#cbd5e1;cursor:pointer;transition:all .12s ease;padding:0}.context-align-btn:hover:not(:disabled){background:#6366f14d;color:#fff}.context-align-btn:active:not(:disabled){background:#6366f180;transform:scale(.95)}.context-align-btn:disabled{opacity:.28;cursor:not-allowed}.context-align-btn.active{background:var(--accent-primary, #6366f1)!important;color:#fff!important}.context-align-divider{width:1px;height:54px;background:#ffffff1f;flex-shrink:0}.distribute-gap-popover{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);background:#0f172af2;border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-md, 8px);box-shadow:0 10px 25px #0006,0 0 0 1px #6366f14d;padding:10px 12px;width:270px;display:flex;flex-direction:column;gap:8px;z-index:120;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:slideDownFloating .15s ease-out;box-sizing:border-box}[data-theme=light] .distribute-gap-popover{background:#fff;border-color:#cbd5e1;box-shadow:0 10px 25px #0000001f,0 0 0 1px #6366f133}.distribute-gap-header{display:flex;align-items:center;justify-content:space-between}.distribute-gap-title{font-size:11.5px;font-weight:600;color:#e2e8f0}[data-theme=light] .distribute-gap-title{color:#1e293b}.distribute-gap-close{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:transparent;border:none;border-radius:4px;color:#94a3b8;cursor:pointer;transition:all .12s ease}.distribute-gap-close:hover{background:#ffffff1a;color:#fff}[data-theme=light] .distribute-gap-close:hover{background:#f1f5f9;color:#0f172a}.distribute-gap-body{display:flex;align-items:center;gap:10px}.distribute-gap-slider{flex:1;accent-color:#6366f1;cursor:pointer;height:4px}.distribute-gap-input-wrap{display:inline-flex;align-items:center;gap:3px;background:#0f172a99;border:1px solid rgba(255,255,255,.12);border-radius:4px;padding:2px 6px;width:72px;box-sizing:border-box}[data-theme=light] .distribute-gap-input-wrap{background:#f8fafc;border-color:#cbd5e1}.distribute-gap-number-input{width:44px;background:transparent;border:none;color:#f8fafc;font-size:12px;font-weight:500;text-align:right;outline:none;padding:0}[data-theme=light] .distribute-gap-number-input{color:#0f172a}.distribute-gap-number-input::-webkit-outer-spin-button,.distribute-gap-number-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.distribute-gap-unit{font-size:11px;color:#94a3b8;-webkit-user-select:none;user-select:none}@keyframes slideDownFloating{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}.floating-text-toolbar{position:absolute;z-index:150;display:flex;align-items:center;gap:4px;padding:4px 6px;background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:8px;box-shadow:var(--shadow-lg);animation:fadeInFast .15s ease-out;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);-webkit-user-select:none;user-select:none}.floating-font-select{height:28px;background:var(--bg-input);border:1px solid var(--border-medium);border-radius:5px;color:var(--text-primary);font-size:12px;padding:0 6px;max-width:130px;cursor:pointer;outline:none}.floating-font-select option{background:var(--bg-panel);color:var(--text-primary)}.floating-divider{width:1px;height:18px;background:var(--border-subtle);margin:0 2px}.floating-size-controls{display:flex;align-items:center;gap:2px;background:var(--bg-input);border:1px solid var(--border-medium);border-radius:5px;height:28px;padding:0 2px;flex-shrink:0}.floating-size-btn{background:none;border:none;color:var(--text-muted);width:20px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:3px;transition:all .12s;flex-shrink:0}.floating-size-btn:hover{background:var(--bg-panel-hover);color:var(--text-primary)}.floating-size-display{font-size:12px;font-weight:600;min-width:22px;text-align:center;color:var(--text-primary)}.floating-size-input{font-size:12px;font-weight:600;width:52px;min-width:52px;height:24px;padding:0 2px;box-sizing:border-box;text-align:center;color:var(--text-primary);background:transparent;border:1px solid transparent;border-radius:3px;outline:none;font-family:inherit;flex-shrink:0;transition:all .12s}.floating-size-input:hover{background:var(--bg-panel-hover)}.floating-size-input:focus{background:var(--bg-surface, #ffffff);border-color:var(--color-primary, #6366f1);box-shadow:0 0 0 1px var(--color-primary, #6366f1)}.floating-btn{background:none;border:1px solid transparent;color:var(--text-muted);width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:5px;transition:all .12s}.floating-btn:hover{background:var(--bg-panel-hover);color:var(--text-primary)}.floating-btn.active{background:var(--color-primary, #6366f1);color:#fff}.floating-btn-clear:hover{color:#ef4444;background:#ef44441f}.floating-btn:disabled{opacity:.32;cursor:not-allowed;pointer-events:none}.floating-btn-style-reset.active{color:#f59e0b;background:#f59e0b1f;border-color:#f59e0b59}.floating-btn-style-reset.active:hover{background:#f59e0b38;color:#d97706}.floating-btn-style-save.active{color:#fff;background:var(--color-primary, #6366f1);border-color:#6366f166}.floating-btn-style-save.active:hover{background:#4f46e5}.floating-color-trigger{width:28px;height:28px;background:var(--bg-input);border:1px solid var(--border-medium);border-radius:5px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .12s}.floating-color-trigger:hover{background:var(--bg-panel-hover)}.floating-color-indicator{width:16px;height:16px;border-radius:3px;border:1px solid var(--border-medium)}.floating-color-popover{position:absolute;top:36px;right:0;background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:8px;padding:10px 12px;box-shadow:0 10px 25px #0006,0 0 0 1px #6366f133;z-index:100;width:210px;display:flex;flex-direction:column;gap:10px;box-sizing:border-box;animation:fadeIn .15s ease-out}[data-theme=light] .floating-color-popover{background:#fff;border-color:#0000001f;box-shadow:0 10px 25px #00000026,0 0 0 1px #6366f133}.floating-color-group{display:flex;flex-direction:column;gap:6px}.floating-color-group-title{font-size:10px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.floating-color-swatches{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.floating-swatch{width:100%;height:24px;border-radius:4px;border:1px solid var(--border-medium);cursor:pointer;transition:transform .1s;box-sizing:border-box}.floating-swatch:hover{transform:scale(1.12)}.floating-swatch.active{border:2px solid var(--text-primary);outline:2px solid var(--color-primary, #6366f1)}.floating-settings-popover{position:absolute;top:36px;right:0;background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:8px;padding:12px 14px;box-shadow:0 10px 25px #0006,0 0 0 1px #6366f133;z-index:100;width:236px;display:flex;flex-direction:column;gap:12px;box-sizing:border-box;animation:fadeIn .15s ease-out}[data-theme=light] .floating-settings-popover{background:#fff;border-color:#0000001f;box-shadow:0 10px 25px #00000026,0 0 0 1px #6366f133}.floating-setting-item{display:flex;flex-direction:column;gap:4px}.floating-setting-header{display:flex;align-items:center;justify-content:space-between}.floating-setting-label{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:500;color:var(--text-secondary)}.floating-setting-label svg{color:var(--accent-primary, #818cf8);flex-shrink:0}[data-theme=light] .floating-setting-label svg{color:var(--accent-primary, #6366f1)}.floating-setting-val{font-size:11px;font-weight:600;color:var(--accent-primary, #818cf8)}.floating-slider{width:100%;height:4px;border-radius:2px;background:var(--bg-input);outline:none;cursor:pointer;accent-color:var(--accent-primary, #6366f1)}.text-art-card{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.text-art-card:hover{border-color:var(--accent-primary, #6366f1)!important;transform:translateY(-2px);box-shadow:0 6px 20px #00000059}[data-theme=light] .text-art-card{background-color:#fff!important;border-color:#e2e8f0!important}[data-theme=light] .text-art-card.is-selected{border-color:var(--accent-primary, #6366f1)!important;background-color:#6366f114!important}[data-theme=light] .text-art-modal-content{background-color:#fff!important;border-color:#cbd5e1!important}[data-theme=light] .text-art-modal-content .modal-header,[data-theme=light] .text-art-modal-content .modal-footer{background-color:#f8fafc!important;border-color:#e2e8f0!important}@media (max-width: 680px){.text-art-modal-grid{grid-template-columns:1fr!important}}.toolbox-images-panel{position:absolute;top:0;left:68px;width:250px;height:100%;background:var(--bg-panel);border-right:1px solid var(--border-subtle);box-shadow:6px 0 24px #00000073;display:flex;flex-direction:column;padding:12px;z-index:30;box-sizing:border-box;animation:slideInSubpanel .18s cubic-bezier(.16,1,.3,1);overflow:visible}.toolbox-images-close-handle{position:absolute;right:-13px;top:50%;transform:translateY(-50%);width:26px;height:26px;border-radius:50%;background:#4b5563;border:1px solid #6b7280;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:30;box-shadow:2px 2px 10px #00000073;transition:all .15s ease;padding:0}.toolbox-images-close-handle:hover{background:var(--accent-primary, #6366f1);color:#fff;border-color:var(--accent-primary, #6366f1);transform:translateY(-50%) scale(1.1);box-shadow:0 0 12px #6366f180}.toolbox-images-close-handle svg{color:#fff;stroke:#fff}.btn-upload-image{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 14px;background:var(--accent-primary);color:#fff;border:1px solid var(--accent-primary);border-radius:var(--radius-sm);font-size:12.5px;font-weight:600;cursor:pointer;transition:all .15s ease;box-shadow:0 2px 8px #6366f14d}.btn-upload-image:hover{background:#4f46e5;transform:translateY(-1px);box-shadow:0 4px 12px #6366f173}.btn-upload-image:active{transform:translateY(0)}.btn-catalog-image{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 14px;background:#10b9811f;color:#10b981;border:1px solid rgba(16,185,129,.35);border-radius:var(--radius-sm);font-size:12.5px;font-weight:600;cursor:pointer;transition:all .15s ease}.btn-catalog-image:hover{background:#10b981;color:#fff;border-color:#10b981;transform:translateY(-1px);box-shadow:0 4px 12px #10b98159}.btn-catalog-image:hover svg{color:#fff!important;stroke:#fff!important}.btn-catalog-image:active{transform:translateY(0)}.toolbox-images-list{flex:1;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;margin-top:10px;min-height:0;padding-right:2px;box-sizing:border-box;width:100%}.toolbox-images-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;box-sizing:border-box;padding-bottom:8px}.toolbox-image-card{position:relative;background:var(--bg-input);border:1px solid var(--border-medium);border-radius:var(--radius-sm);padding:6px;cursor:grab;display:flex;flex-direction:column;gap:5px;transition:all .15s ease;-webkit-user-select:none;user-select:none;min-width:0;width:100%;box-sizing:border-box;overflow:hidden}.toolbox-image-card:hover{border-color:var(--accent-primary);background:var(--bg-panel-hover);transform:translateY(-2px);box-shadow:0 4px 12px #00000059}.toolbox-image-card:active{cursor:grabbing}.toolbox-image-thumb{width:100%;height:80px;border-radius:4px;background:#0000004d;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid rgba(255,255,255,.05);box-sizing:border-box;flex-shrink:0;position:relative}.toolbox-image-thumb img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;pointer-events:none;display:block}.toolbox-image-name{font-size:10.5px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2;width:100%;box-sizing:border-box;min-width:0;display:block}.toolbox-image-delete{position:absolute;top:4px;right:4px;width:20px;height:20px;border-radius:4px;background:#0f172ae0;border:1px solid rgba(239,68,68,.4);color:#f87171;display:none;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:all .12s ease;z-index:2}.toolbox-image-card:hover .toolbox-image-delete{display:flex}.toolbox-image-delete:hover{background:#ef4444;color:#fff}.toolbox-images-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:36px 12px;color:var(--text-muted);gap:6px;font-size:12px;background:#ffffff04;border:1px dashed var(--border-subtle);border-radius:var(--radius-sm);margin-top:4px}.toolbox-images-empty small{font-size:10.5px;opacity:.75;line-height:1.35}.pages-panel{position:absolute;top:0;left:68px;width:260px;height:100%;background:var(--bg-panel);border-right:1px solid var(--border-subtle);box-shadow:6px 0 24px #00000073;display:flex;flex-direction:column;padding:12px;z-index:30;box-sizing:border-box;animation:slideInSubpanel .18s cubic-bezier(.16,1,.3,1);overflow:visible}[data-theme=light] .pages-panel{background:#fff;border-right:1px solid #e2e8f0;box-shadow:4px 0 20px #00000014}.pages-panel-close-handle{position:absolute;right:-13px;top:50%;transform:translateY(-50%);width:26px;height:26px;border-radius:50%;background:#4b5563;border:1px solid #6b7280;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:30;box-shadow:2px 2px 10px #00000073;transition:all .15s ease;padding:0}.pages-panel-close-handle:hover{background:var(--accent-primary, #6366f1);color:#fff;border-color:var(--accent-primary, #6366f1);transform:translateY(-50%) scale(1.1);box-shadow:0 0 12px #6366f180}.pages-panel-list{flex:1;display:flex;flex-direction:column;gap:12px;overflow-y:auto;overflow-x:hidden;margin-top:10px;padding-right:4px}.page-card{background:var(--bg-subtle, rgba(255, 255, 255, .03));border:1px solid var(--border-subtle);border-radius:var(--radius-md, 8px);padding:8px;cursor:pointer;transition:all .15s ease;position:relative;-webkit-user-select:none;user-select:none}.page-card:hover{background:var(--hover-bg, rgba(255, 255, 255, .06));border-color:var(--border-focus, #6366f1)}.page-card.active{border-color:var(--accent-primary, #6366f1);box-shadow:0 0 0 1px var(--accent-primary, #6366f1),0 4px 12px #6366f133;background:#6366f10f}.page-card.dragging{opacity:.35;transform:scale(.97)}.page-card.drag-over{border-color:var(--accent-primary, #6366f1);border-top:3px solid var(--accent-primary, #6366f1)}.page-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;gap:4px}.page-card-title-group{display:flex;align-items:center;gap:5px;min-width:0;flex:1}.page-card-grip{color:var(--text-muted);cursor:grab;flex-shrink:0}.page-card-grip:active{cursor:grabbing}.page-card-num{font-size:11.5px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.page-card-badge{font-size:9px;font-weight:600;padding:1px 4px;border-radius:4px;text-transform:uppercase;letter-spacing:.03em;flex-shrink:0}.page-card-badge.cover{background:#3b82f62e;color:#60a5fa;border:1px solid rgba(59,130,246,.3)}.page-card-badge.hidden{background:#f59e0b2e;color:#fbbf24;border:1px solid rgba(245,158,11,.3)}.page-card-badge.orientation{background:#94a3b826;color:var(--text-secondary);border:1px solid var(--border-subtle);font-size:8.5px}.page-card-actions{display:flex;align-items:center;gap:3px;flex-shrink:0}.page-action-btn{width:22px;height:22px;border-radius:4px;border:1px solid transparent;background:transparent;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:all .12s ease}.page-action-btn:hover:not(:disabled){background:var(--bg-hover, rgba(255, 255, 255, .08));color:var(--text-primary);border-color:var(--border-subtle)}.page-action-btn:disabled{opacity:.3;cursor:not-allowed}.page-action-btn.delete:hover:not(:disabled){color:#ef4444;background:#ef44441f;border-color:#ef444440}.page-action-btn.add:hover:not(:disabled){color:#10b981;background:#10b9811f;border-color:#10b98140}.page-action-btn.toggle-hide.is-hidden{color:#f59e0b}.page-action-btn.toggle-hide:hover:not(:disabled){color:#f59e0b;background:#f59e0b1f;border-color:#f59e0b40}.page-thumbnail-container{width:100%;background:#fff;border:1px solid var(--border-subtle);border-radius:4px;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 4px #00000026;transition:opacity .15s ease}.page-thumbnail-container.is-hidden{opacity:.65}.page-thumbnail-img{width:100%;height:100%;object-fit:contain;display:block}.page-thumbnail-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;background:#f8fafc;color:#94a3b8;position:relative}.page-hidden-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a99;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#fbbf24;font-size:11px;font-weight:600;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px)}.page-active-tag{position:absolute;bottom:4px;right:4px;background:var(--accent-primary, #6366f1);color:#fff;font-size:9px;font-weight:700;padding:1px 5px;border-radius:3px;text-transform:uppercase;letter-spacing:.04em;box-shadow:0 2px 5px #0000004d}.btn-pages-toggle{transition:all .15s ease;border-radius:4px;padding:3px 6px}.btn-pages-toggle:hover{background:var(--bg-hover, rgba(255, 255, 255, .08))}.btn-pages-toggle.active{background:#6366f126;color:var(--accent-primary)}.page-tab.page-tab-hidden{opacity:.75;font-style:italic}.pages-panel-footer{padding-top:10px;border-top:1px solid var(--border-subtle);margin-top:6px}.btn-add-page-panel{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 12px;background:var(--accent-primary, #6366f1);color:#fff;border:1px solid var(--accent-primary, #6366f1);border-radius:var(--radius-sm, 6px);font-size:12.5px;font-weight:600;cursor:pointer;transition:all .15s ease;box-shadow:0 2px 8px #6366f14d}.btn-add-page-panel:hover{background:#4f46e5;transform:translateY(-1px);box-shadow:0 4px 12px #6366f173}.btn-add-page-panel:active{transform:translateY(0)}.hf-page-status-card{margin-top:10px;padding:8px 10px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;display:flex;flex-direction:column;gap:5px;font-size:11.5px;color:#404040}.hf-page-status-row{display:flex;justify-content:space-between;align-items:center}.hf-page-status-label{font-weight:400;color:#404040}.hf-page-status-value{font-weight:700;color:#404040}[data-theme=dark] .hf-page-status-card{background:#1f2937;border-color:#374151;color:#e2e8f0}[data-theme=dark] .hf-page-status-label{color:#cbd5e1;font-weight:400}[data-theme=dark] .hf-page-status-value{color:#fff;font-weight:700}.btn-zone-reset-sm{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:4px;background:#6366f11a;border:1px solid rgba(99,102,241,.3);color:var(--accent-primary, #6366f1);cursor:pointer;padding:0;transition:all .15s ease}.btn-zone-reset-sm:hover{background:var(--accent-primary, #6366f1);color:#fff;border-color:var(--accent-primary, #6366f1);transform:scale(1.08)}[data-theme=light] .btn-zone-reset-sm{background:#e2e8f0;border-color:#cbd5e1;color:#4338ca}[data-theme=light] .btn-zone-reset-sm:hover{background:#6366f1;color:#fff;border-color:#6366f1}.online-catalog-card{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.online-catalog-card:hover{transform:translateY(-2px);border-color:var(--accent-primary, #6366f1)!important;box-shadow:0 8px 20px #00000029!important}.online-catalog-card:hover img{transform:scale(1.05)}.online-card-hover-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a73;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:5}.online-catalog-card:hover .online-card-hover-overlay{opacity:1;pointer-events:auto}.btn-insert-online-img{background:var(--accent-primary, #6366f1);color:#fff;border:none;border-radius:var(--radius-sm, 6px);padding:7px 12px;font-size:11.5px;font-weight:600;display:inline-flex;align-items:center;gap:6px;cursor:pointer;box-shadow:0 3px 10px #6366f166;transition:all .15s ease}.btn-insert-online-img:hover{background:#4f46e5;transform:scale(1.04);box-shadow:0 4px 14px #6366f18c}.btn-insert-online-img:active{transform:scale(.98)}.online-cat-btn:hover:not(.active){border-color:var(--accent-primary, #6366f1)!important;color:var(--text-primary)!important}.online-source-tab-btn:hover:not(.active){color:var(--text-primary)!important}.custom-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:999999;animation:dialogFadeIn .18s cubic-bezier(.16,1,.3,1)}[data-theme=light] .custom-dialog-backdrop{background:#0f172a73}.custom-dialog-card{background:var(--bg-panel);border:1px solid var(--border-medium);border-radius:16px;box-shadow:0 20px 45px -10px #00000080,0 0 0 1px #ffffff0d;width:100%;max-width:440px;margin:16px;overflow:hidden;animation:dialogScaleIn .22s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column}[data-theme=light] .custom-dialog-card{box-shadow:0 20px 45px -10px #00000026,0 0 0 1px #0000000d}.custom-dialog-card.dialog-variant-danger{border-top:3px solid var(--accent-danger, #ef4444)}.custom-dialog-card.dialog-variant-warning{border-top:3px solid var(--accent-warning, #f59e0b)}.custom-dialog-card.dialog-variant-success{border-top:3px solid var(--accent-success, #10b981)}.custom-dialog-card.dialog-variant-primary{border-top:3px solid var(--accent-primary, #6366f1)}.custom-dialog-card.dialog-variant-info{border-top:3px solid #3b82f6}.custom-dialog-header{padding:20px 22px 14px;display:flex;align-items:flex-start;gap:14px}.dialog-icon-badge{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dialog-icon-badge.badge-danger{background:#ef44441f;color:#ef4444;border:1px solid rgba(239,68,68,.25)}.dialog-icon-badge.badge-warning{background:#f59e0b1f;color:#f59e0b;border:1px solid rgba(245,158,11,.25)}.dialog-icon-badge.badge-success{background:#10b9811f;color:#10b981;border:1px solid rgba(16,185,129,.25)}.dialog-icon-badge.badge-info{background:#3b82f61f;color:#3b82f6;border:1px solid rgba(59,130,246,.25)}.dialog-icon-badge.badge-primary{background:#6366f11f;color:#6366f1;border:1px solid rgba(99,102,241,.25)}.dialog-title-wrap{flex:1;min-width:0;padding-top:2px}.dialog-title{margin:0;font-size:16px;font-weight:600;color:var(--text-primary);line-height:1.3}.dialog-description{margin-top:4px;font-size:12.5px;color:var(--text-muted)}.dialog-close-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.dialog-close-btn:hover{color:var(--text-primary);background:#ffffff14}.custom-dialog-body{padding:0 22px 18px}.dialog-message{margin:0;font-size:13.5px;line-height:1.55;color:var(--text-secondary);white-space:pre-line;word-break:break-word}.custom-dialog-footer{padding:14px 22px;background:#0000002e;border-top:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:flex-end;gap:10px}[data-theme=light] .custom-dialog-footer{background:#00000008}.dialog-btn{padding:8px 16px;border-radius:var(--radius-sm, 8px);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;outline:none;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;min-width:84px}.dialog-btn-secondary{background:transparent;color:var(--text-secondary);border-color:var(--border-medium)}.dialog-btn-secondary:hover{background:var(--bg-panel-hover);color:var(--text-primary);border-color:var(--text-muted)}.dialog-btn-action.btn-danger{background:#ef4444;color:#fff}.dialog-btn-action.btn-danger:hover{background:#dc2626;box-shadow:0 4px 12px #ef444459}.dialog-btn-action.btn-warning{background:#d97706;color:#fff}.dialog-btn-action.btn-warning:hover{background:#b45309;box-shadow:0 4px 12px #f59e0b59}.dialog-btn-action.btn-success{background:#10b981;color:#fff}.dialog-btn-action.btn-success:hover{background:#059669;box-shadow:0 4px 12px #10b98159}.dialog-btn-action.btn-primary{background:var(--accent-primary, #6366f1);color:#fff}.dialog-btn-action.btn-primary:hover{background:var(--accent-primary-hover, #4f46e5);box-shadow:0 4px 12px #6366f159}.dialog-btn-action.btn-info{background:#3b82f6;color:#fff}.dialog-btn-action.btn-info:hover{background:#2563eb;box-shadow:0 4px 12px #3b82f659}.dialog-btn:focus-visible{box-shadow:0 0 0 2px var(--bg-panel),0 0 0 4px var(--accent-primary, #6366f1)}.toast-container{position:fixed;bottom:24px;right:24px;z-index:1000000;display:flex;flex-direction:column-reverse;gap:10px;max-width:400px;width:calc(100vw - 48px);pointer-events:none}.toast-card{pointer-events:auto;display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:12px;background:var(--bg-panel);border:1px solid var(--border-medium);box-shadow:0 10px 30px -4px #00000080,0 2px 6px #0003;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);animation:toastSlideIn .22s cubic-bezier(.16,1,.3,1);cursor:pointer;transition:transform .15s ease,opacity .15s ease,box-shadow .15s ease;border-left-width:4px}[data-theme=light] .toast-card{box-shadow:0 10px 30px -4px #00000026,0 2px 6px #0000000d}.toast-card:hover{transform:translateY(-2px);box-shadow:0 14px 35px -4px #0009}.toast-card.toast-success{border-left-color:#10b981}.toast-card.toast-error{border-left-color:#ef4444}.toast-card.toast-warning{border-left-color:#f59e0b}.toast-card.toast-info{border-left-color:#3b82f6}.toast-icon-wrapper{margin-top:1px;flex-shrink:0}.toast-icon-success{color:#10b981}.toast-icon-error{color:#ef4444}.toast-icon-warning{color:#f59e0b}.toast-icon-info{color:#3b82f6}.toast-content{flex:1;min-width:0}.toast-title{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:2px}.toast-message{font-size:12.5px;color:var(--text-secondary);line-height:1.45;word-break:break-word}.toast-close-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:2px;border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}.toast-close-btn:hover{color:var(--text-primary);background:#ffffff14}@keyframes dialogFadeIn{0%{opacity:0}to{opacity:1}}@keyframes dialogScaleIn{0%{opacity:0;transform:scale(.94) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes cloudSavingPulse{0%{transform:scale(.76);opacity:.65;filter:drop-shadow(0 0 1px rgba(245,158,11,.3))}50%{transform:scale(1.22);opacity:1;filter:drop-shadow(0 0 6px rgba(245,158,11,.85))}to{transform:scale(.76);opacity:.65;filter:drop-shadow(0 0 1px rgba(245,158,11,.3))}}.cloud-saving{animation:cloudSavingPulse .7s ease-in-out infinite;transform-origin:center;display:inline-flex;align-items:center;justify-content:center;will-change:transform,opacity,filter}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin,.animate-spin{animation:spin 1s linear infinite!important;transform-origin:center;display:inline-flex}#native-print-container{display:none}@media print{@page{margin:0}*,*:before,*:after{box-shadow:none!important;text-shadow:none!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important}html,body,#root{margin:0!important;padding:0!important;background:#fff!important;color:#000!important;width:100%!important;height:auto!important;min-height:0!important;overflow:visible!important;display:block!important;position:static!important}.editor-layout,.modal-backdrop,.custom-modal-backdrop,.toast-container,.shortcuts-trigger-wrapper,.canvas-context-menu,.workspace-floating-bars-container,.floating-text-toolbar,.floating-vector-toolbar,.font-inspector-toolbar,.element-context-bar,.transform-context-bar,.zone-dim-scrim,.active-zone-band,.header-hover-overlay,.footer-hover-overlay,.dtp-alignment-guides-overlay,.dtp-grid-overlay,.dtp-header-divider,.dtp-footer-divider,.safe-zone-guide,.bleed-guide,.crop-marks-overlay,.topbar,.toolbox,.pages-panel,.properties-panel,.page-bar,.auto-elements-bar{display:none!important}#native-print-container{display:block!important;position:static!important;width:100%!important;margin:0!important;padding:0!important;background:transparent!important}.native-print-page{display:block!important;position:relative!important;width:100vw!important;height:100vh!important;max-width:100vw!important;max-height:100vh!important;margin:0!important;padding:0!important;box-sizing:border-box!important;overflow:hidden!important;background:#fff!important;page-break-after:always!important;break-after:page!important;page-break-inside:avoid!important;break-inside:avoid!important}.native-print-page:last-child{page-break-after:auto!important;break-after:auto!important}.native-print-page svg{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important}.native-print-image{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;margin:0!important;padding:0!important;border:none!important;image-rendering:-webkit-optimize-contrast;image-rendering:high-quality}body:not(:has(#native-print-container .native-print-page)) .editor-layout{display:block!important}body:not(:has(#native-print-container .native-print-page)) .editor-body{display:block!important}body:not(:has(#native-print-container .native-print-page)) .canvas-workspace-area,body:not(:has(#native-print-container .native-print-page)) .canvas-viewport,body:not(:has(#native-print-container .native-print-page)) .canvas-scroll-container{display:block!important;position:static!important;overflow:visible!important;background:#fff!important;width:100%!important;height:auto!important}}
