/* Additive studio tools. All editor-only styles are scoped to this page. */
.cz-editor{--cz-purple:#713de1;--cz-card:var(--raised,#fff);--cz-surface:var(--panel,#f6f5fa);--cz-text:var(--ink,#252134);--cz-border:var(--line,#e6e2ef)}
.cz-editor [hidden],.cz-font-dialog [hidden]{display:none!important}.cz-object-tools{border:1px solid var(--cz-border);border-radius:16px;background:var(--cz-card);padding:16px;margin:0 0 22px;color:var(--cz-text)}.cz-tool-heading{margin-bottom:18px}.cz-tool-heading h3{margin:5px 0 0;font-size:18px;letter-spacing:-.025em}.cz-eyebrow{font:600 10px/1.4 Arial,sans-serif;letter-spacing:.13em;color:var(--cz-purple)}
.cz-object-tools label,.cz-photo-adjustments label{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:14px;color:var(--cz-text);margin:12px 0}.cz-object-tools input:not([type=checkbox]):not([type=color]),.cz-object-tools select,.cz-object-tools textarea{width:100%;min-width:0;border:1px solid var(--cz-border);border-radius:9px;padding:9px;background:var(--cz-card);color:var(--cz-text);font:inherit;min-height:40px}.cz-object-tools input[type=range],.cz-photo-adjustments input[type=range]{padding:0;min-height:28px;accent-color:var(--cz-purple)}.cz-object-tools input[type=color],.cz-photo-adjustments input[type=color]{height:36px;width:52px;padding:3px;border:1px solid var(--cz-border);border-radius:8px;background:var(--cz-card)}.cz-object-tools input[type=checkbox]{width:18px;height:18px;accent-color:var(--cz-purple)}
.cz-object-tools button,.cz-font-dialog button,.cz-photo-presets button{border:1px solid var(--cz-border);border-radius:9px;background:var(--cz-card);color:var(--cz-text);font:500 14px/1.3 Arial,sans-serif;padding:9px 11px;cursor:pointer;min-height:40px}.cz-object-tools button:hover,.cz-font-dialog button:hover{border-color:var(--cz-purple)}.cz-object-tools button:focus-visible,.cz-font-dialog button:focus-visible,.cz-editor input:focus-visible,.cz-editor select:focus-visible,.cz-editor canvas:focus-visible{outline:2px solid #9861f3;outline-offset:3px}.cz-object-tools [aria-pressed=true],.cz-font-dialog [aria-pressed=true],.cz-photo-presets [aria-pressed=true]{background:color-mix(in srgb,var(--cz-purple) 12%,var(--cz-card));border-color:var(--cz-purple);color:var(--cz-text)}.cz-object-tools button:disabled,.cz-object-tools input:disabled{opacity:.5;cursor:not-allowed}
.cz-object-actions,.cz-layer-actions,.cz-alignment,.cz-add-elements{display:flex;gap:6px;flex-wrap:wrap}.cz-object-actions{margin:10px 0 16px}.cz-object-actions button{flex:1;padding-inline:6px}.cz-object-tools details{border-top:1px solid var(--cz-border);padding-top:13px;margin-top:16px}.cz-object-tools summary{font-size:14px;font-weight:600;cursor:pointer;min-height:25px}.cz-font-trigger{width:100%;display:flex;align-items:center;gap:10px;padding:13px!important}.cz-font-trigger strong{font-size:17px;flex:1;text-align:left}.cz-font-trigger>span:first-child{font-size:10px;color:var(--muted,#797289)}.cz-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cz-two-columns label{display:block;margin-bottom:0}.cz-two-columns input,.cz-two-columns select{margin-top:7px}.cz-inline-controls{display:flex;align-items:end;gap:6px;flex-wrap:wrap}.cz-inline-controls label{flex:1;margin:10px 0 0}.cz-inline-controls>button{min-width:38px}.cz-inline-controls label:last-child{min-width:86px}.cz-object-hint{font-size:11px;line-height:1.5;color:var(--muted,#797289);margin-top:14px}.cz-add-elements{border-top:1px solid var(--cz-border);padding-top:14px;margin-top:15px}.cz-add-elements h4{width:100%;font-size:14px;margin-bottom:5px}.cz-layer-actions,.cz-alignment{margin-top:12px}.cz-layer-actions button{flex:1 1 40%}.cz-alignment button{flex:1 1 28%}.cz-pairings{display:grid;gap:8px;margin-top:12px}.cz-pairings button{display:flex;flex-direction:column;text-align:left;gap:5px}.cz-pairings button strong{font-size:13px}.cz-pairings button span{font-size:11px;color:var(--muted,#797289)}
.cz-canvas-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;margin-bottom:15px}.cz-zoom{display:flex;align-items:center;border:1px solid var(--cz-border);border-radius:25px;background:var(--cz-card);overflow:hidden}.cz-zoom button{border:0;background:none;color:var(--cz-text);min-width:36px;min-height:36px;cursor:pointer}.cz-zoom output{min-width:44px;text-align:center;font-size:14px}.cz-canvas-actions select{background:var(--cz-card);color:var(--cz-text);border:1px solid var(--cz-border);border-radius:8px;padding:7px;min-height:36px;font-size:14px}.cz-editor .canvas-stage{overflow:auto;align-items:flex-start;min-height:0}.cz-canvas-wrap{position:relative;flex:none;margin:auto;box-shadow:0 14px 40px #25104522;touch-action:none}.cz-editor .cz-canvas-wrap canvas{display:block;width:100%!important;height:100%!important;max-width:none;max-height:none;box-shadow:none;border-radius:0}.cz-selection{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.cz-mobile-header,.cz-bottom-toolbar,.cz-sheet-head,.cz-mobile-only{display:none!important}.cz-preview-mode .cz-selection,.cz-preview-mode .properties-panel,.cz-preview-mode .slide-sidebar{display:none!important}.cz-preview-mode .editor-layout{display:block}.cz-preview-mode .canvas-workspace{max-width:1200px;margin:auto}.cz-preview-mode .cz-canvas-wrap{touch-action:pan-y}
.cz-font-dialog{--cz-card:var(--raised,#fff);--cz-text:var(--ink,#252134);--cz-border:var(--line,#e6e2ef);--cz-purple:#713de1;max-width:min(600px,calc(100vw - 32px));width:600px;height:min(780px,88dvh);max-height:88dvh;border:1px solid var(--cz-border);border-radius:24px;padding:0;background:var(--cz-card);color:var(--cz-text);overflow:hidden;box-shadow:0 24px 100px #1f113a40}.cz-font-dialog[open]{display:flex;flex-direction:column}.cz-font-dialog::backdrop{background:#13072170;backdrop-filter:blur(3px)}.cz-font-dialog header{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 16px}.cz-font-dialog h2{font-size:22px;letter-spacing:-.035em;margin:5px 0}.cz-font-dialog header button{font-size:24px;width:40px;padding:0}.cz-search{display:block;margin:0 24px;font-size:14px;font-weight:500}.cz-search input{display:block;width:100%;box-sizing:border-box;background:var(--panel,#f7f5fa);border:1px solid var(--cz-border);border-radius:12px;padding:14px;margin-top:7px;font-size:16px;color:var(--cz-text)}.cz-font-tabs{display:flex;gap:8px;overflow-x:auto;padding:16px 24px;flex-shrink:0}.cz-font-tabs button{flex:none;white-space:nowrap;border-radius:30px;min-height:34px}.cz-font-list{overflow-y:auto;overscroll-behavior:contain;flex:1;min-height:0;padding:0 24px 16px}.cz-font-row{display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--cz-border);padding:8px 0}.cz-font-row>button:first-child{flex:1;text-align:left;font-size:24px;min-height:62px;border-color:transparent}.cz-font-row>button:last-child{font-size:24px;padding:5px;min-width:40px}.cz-font-status{flex:none;margin:0;padding:12px 24px;font-size:11px;border-top:1px solid var(--cz-border);line-height:1.5}.cz-empty{padding:24px;font-size:14px;color:var(--muted,#797289)}.cz-photo-presets{display:flex;flex-wrap:wrap;gap:6px}.cz-photo-presets button{padding:8px;font-size:11px}.cz-color-swatches{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.cz-color-swatches button{width:30px;height:30px;min-height:30px;border:1px solid #7775;border-radius:50%;box-shadow:inset 0 0 0 3px #ffffff70;cursor:pointer}.cz-photo-adjustments label input[type=text]{width:100%;min-height:40px;border:1px solid var(--cz-border);border-radius:8px;background:var(--cz-card);color:var(--cz-text);padding:8px}
@media(min-width:901px){.cz-editor .editor-layout{grid-template-columns:132px minmax(300px,1fr) 320px}.cz-editor .properties-panel{padding:18px 16px}.cz-editor .slide-sidebar{grid-column:auto}.cz-editor .slide-list{flex-direction:column}.cz-editor .slide-item canvas{width:70px}.cz-editor .canvas-workspace{padding-inline:22px}}
@media(min-width:1300px){.cz-editor .editor-layout{grid-template-columns:170px minmax(340px,1fr) 350px}.cz-editor .slide-item canvas{width:94px}}
@media(max-width:900px){
.cz-editor .editor-header,.cz-editor .experience-footer,.cz-editor .workspace-toolbar,.cz-editor .workspace-note,.cz-editor .history-toolbar,.cz-editor .project-save-bar,.cz-editor .panel-label,.cz-editor .sidebar-note{display:none!important}.cz-mobile-header{display:grid!important;grid-template-columns:34px minmax(0,1fr) auto;gap:8px;padding:10px 12px 7px;background:var(--cz-card);border-bottom:1px solid var(--cz-border);position:sticky;top:0;z-index:20;align-items:center;min-height:70px}.cz-mobile-header>a{font-size:34px;text-decoration:none;color:var(--cz-text);grid-row:1/3;text-align:center}.cz-mobile-name{min-width:0}.cz-mobile-name .project-name{width:100%;max-width:100%;font-size:14px;min-width:0;color:var(--cz-text);padding:5px}.cz-mobile-history{display:flex;gap:4px;grid-column:3;grid-row:1/3}.cz-mobile-history button{font-size:0;padding:0;min-height:40px;min-width:38px;background:var(--cz-card);color:var(--cz-text)}.cz-mobile-history #edit-undo:before{content:'↶';font-size:23px}.cz-mobile-history #edit-redo:before{content:'↷';font-size:23px}.cz-mobile-status{font-size:10px;padding-left:5px;line-height:1.3;color:var(--muted,#777)}.cz-mobile-status[data-state=saved]{color:#1a9063}.cz-mobile-status[data-state=error]{color:#d44861}
.cz-editor .editor-layout{display:flex;flex-direction:column;min-height:calc(var(--cz-vh,100dvh) - 70px);padding-bottom:calc(77px + env(safe-area-inset-bottom));background:var(--cz-surface)}.cz-editor .canvas-workspace{padding:12px 10px 0;width:100%;position:static;align-self:stretch;min-width:0}.cz-editor .canvas-stage{padding:8px 6px;border-radius:14px;min-height:0}.cz-canvas-actions{gap:7px;margin:0 0 8px}.cz-canvas-actions .button{min-height:36px;padding:7px 10px;font-size:11px}.cz-mobile-only{display:inline-flex!important}.cz-zoom button{min-width:29px;min-height:34px}.cz-zoom output{min-width:30px;font-size:11px}.cz-editor .preview-controls{padding:10px 0 8px;gap:12px}.cz-editor .preview-controls>.button{display:none}.cz-editor .preview-controls span{font-size:11px}.cz-editor .overflow-note{font-size:11px;padding:7px;margin:4px}
.cz-editor .slide-sidebar{border:0;background:transparent;padding:10px 12px;order:2}.cz-editor .slide-list{flex-direction:row;justify-content:flex-start;gap:10px;overflow-x:auto;max-width:none;margin:0;scroll-snap-type:x proximity;padding:2px 0 8px}.cz-editor .slide-item{flex:none;display:flex;flex-direction:column-reverse;gap:5px;padding:6px;border:1px solid var(--cz-border);border-radius:9px;background:var(--cz-card);scroll-snap-align:center;min-width:52px}.cz-editor .slide-item canvas{width:36px;max-height:65px;object-fit:contain;box-shadow:none}.cz-editor .slide-item>span{font-size:10px}.cz-editor .slide-item[aria-pressed=true]{border-color:var(--cz-purple);box-shadow:0 0 0 1px var(--cz-purple);background:color-mix(in srgb,var(--cz-purple) 8%,var(--cz-card))}.cz-editor .page-actions{display:flex;overflow-x:auto;flex-wrap:nowrap;margin:0;gap:5px}.cz-editor .page-actions button{white-space:nowrap;font-size:10px;min-height:28px}
.cz-bottom-toolbar{display:flex!important;position:fixed;bottom:0;left:0;right:0;z-index:50;min-height:66px;padding:7px 8px calc(7px + env(safe-area-inset-bottom));background:var(--cz-card);border-top:1px solid var(--cz-border);box-shadow:0 -8px 25px #20123e08;justify-content:space-between;gap:4px}.cz-bottom-toolbar button{flex:1;border:0;border-radius:12px;min-width:0;font-size:11px;font-weight:600;background:transparent;color:var(--cz-text);min-height:47px}.cz-bottom-toolbar button[aria-pressed=true]{background:color-mix(in srgb,var(--cz-purple) 12%,var(--cz-card));color:var(--cz-purple)}
.cz-editor .properties-panel{position:fixed;z-index:45;left:0;right:0;bottom:calc(66px + env(safe-area-inset-bottom));max-height:calc(var(--cz-vh,100dvh) - 160px);height:46dvh;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;border:1px solid var(--cz-border);border-radius:22px 22px 0 0;padding:0 16px 25px;background:var(--cz-card);box-shadow:0 -12px 35px #1b103a12;order:3}.cz-editor .properties-panel[data-sheet=collapsed]{display:none}.cz-editor .properties-panel[data-sheet=full]{height:calc(var(--cz-vh,100dvh) - 156px)}.cz-sheet-head{display:grid!important;grid-template-columns:1fr 38px 38px;align-items:center;position:sticky;top:0;background:var(--cz-card);z-index:2;margin:0 -1px 14px;padding:5px 0 10px;border-bottom:1px solid var(--cz-border)}.cz-sheet-head>[data-sheet-handle]{grid-column:1/-1;width:100%;height:20px;border:0;background:none;cursor:ns-resize;touch-action:none}.cz-sheet-head>[data-sheet-handle] span{display:block;height:4px;width:38px;border-radius:8px;background:var(--cz-border);margin:auto}.cz-sheet-head strong{font-size:13px}.cz-sheet-head>button:not([data-sheet-handle]){border:0;border-radius:8px;background:var(--cz-surface);color:var(--cz-text);font-size:21px;min-height:34px}
.cz-object-tools{border:0;padding:0;margin-bottom:16px}.cz-tool-heading{display:none}.cz-object-tools button{min-height:44px}.cz-object-tools input:not([type=checkbox]):not([type=color]),.cz-object-tools select,.cz-object-tools textarea{font-size:16px;min-height:44px}.cz-object-tools label{font-size:13px}.cz-editor .properties-panel[data-tool=text] [data-mobile-tool]:not([data-mobile-tool=text]),.cz-editor .properties-panel[data-tool=photo] [data-mobile-tool]:not([data-mobile-tool=photo]),.cz-editor .properties-panel[data-tool=background] [data-mobile-tool]:not([data-mobile-tool=background]),.cz-editor .properties-panel[data-tool=template] [data-mobile-tool]:not([data-mobile-tool=template]),.cz-editor .properties-panel[data-tool=elements] [data-mobile-tool]{display:none!important}.cz-editor .properties-panel[data-tool=background] .cz-object-tools,.cz-editor .properties-panel[data-tool=template] .cz-object-tools{display:none}.cz-editor .properties-panel[data-tool=photo] [data-text-tools],.cz-editor .properties-panel[data-tool=photo] .cz-add-elements,.cz-editor .properties-panel[data-tool=text] .cz-add-elements{display:none!important}
.cz-font-dialog{max-width:100%;width:100%;height:84dvh;max-height:84dvh;margin:auto 0 0;border-radius:24px 24px 0 0;padding-bottom:env(safe-area-inset-bottom)}.cz-font-dialog header{padding:20px 18px 12px}.cz-font-dialog h2{font-size:21px}.cz-search{margin-inline:18px}.cz-font-tabs{padding:14px 18px}.cz-font-list{padding-inline:18px}.cz-font-row>button:first-child{font-size:25px;min-height:66px}.cz-editor .toast{bottom:calc(83px + env(safe-area-inset-bottom));z-index:150}.cz-preview-mode .cz-bottom-toolbar{display:none!important}.cz-preview-mode .editor-layout{padding-bottom:0}.cz-preview-mode .canvas-workspace{width:100%}.cz-keyboard .cz-bottom-toolbar{display:none!important}.cz-keyboard .properties-panel{bottom:0;max-height:55%;height:50%;border-radius:18px 18px 0 0}.cz-keyboard .editor-layout{padding-bottom:0}.cz-keyboard .cz-canvas-actions{display:none}.cz-editor .photo-editor{max-height:95dvh;border-radius:22px 22px 0 0;margin:auto 0 0;width:100%;max-width:100%;padding-bottom:env(safe-area-inset-bottom)}
}
@media(prefers-reduced-motion:reduce){.cz-editor *,.cz-font-dialog *{scroll-behavior:auto!important;transition:none!important}}

.cz-editor .properties-panel[data-tool=photo] .cz-object-hint{margin-bottom:12px}.cz-editor .properties-panel input[type=range]{width:100%}

@media(max-width:900px){.cz-editor .photo-editor[open]{display:flex;flex-direction:column;height:94dvh;overflow:hidden}.cz-editor .photo-editor-heading{flex:none;padding:12px 16px}.cz-editor .photo-editor-heading h2{font-size:22px}.cz-editor .photo-editor-heading p{font-size:12px}.cz-editor .photo-editor-body{display:grid;grid-template-columns:1fr;grid-template-rows:minmax(120px,28dvh) minmax(0,1fr);gap:10px;flex:1;min-height:0;overflow:hidden;padding:10px}.cz-editor .photo-preview-column{position:static;height:100%;min-height:0;padding:8px}.cz-editor .photo-preview-column canvas{max-height:calc(28dvh - 16px)}.cz-editor .photo-preview-column p{display:none}.cz-editor .photo-controls{overflow-y:auto;overscroll-behavior:contain}.cz-editor .photo-editor-footer{flex:none;position:static;padding:10px 12px}.cz-editor .photo-editor-footer [data-status]{font-size:12px;max-height:3.6em;overflow:auto}}

.cz-editor .photo-editor,.cz-editor .photo-editor-footer,.cz-editor .photo-editor select,.cz-editor .photo-editor [data-close]{background:var(--cz-card);color:var(--cz-text)}.cz-editor .photo-preview-column{background:var(--cz-surface)}.cz-editor .photo-editor p{color:var(--muted,#657087)}

.cz-font-role{font-size:12px;color:var(--muted,#657087)}

@media(max-width:900px){.cz-editor[data-editor-sheet=half] .cz-canvas-actions [data-mobile-save],.cz-editor[data-editor-sheet=half] .cz-canvas-actions [data-mobile-download],.cz-editor[data-editor-sheet=half] .cz-canvas-actions [data-image-format]{display:none!important}}
