.ssr-action-menu{position:relative;display:inline-block;font:12px/1.5 system-ui,sans-serif;color:var(--vp-ink,#e4f2ee)}
.ssr-action-menu>summary{display:flex;align-items:center;gap:16px;cursor:pointer;list-style:none;padding:6px 10px;border:1px solid transparent;border-radius:5px;user-select:none}
.ssr-action-menu>summary::-webkit-details-marker{display:none}
.ssr-action-menu>summary:hover,.ssr-action-menu[open]>summary{background:light-dark(#eef6f3,#1b3229);border-color:light-dark(#ccded5,#385747)}
.ssr-action-menu>summary>span{color:light-dark(#516e5e,#97b3a4);font-size:11px}
.ssr-action-menu>[role=menu]{position:absolute;top:calc(100% + 4px);left:0;z-index:50;min-width:190px;max-width:calc(100vw - 48px);padding:5px;border:1px solid light-dark(#cadbd2,#426151);border-radius:8px;background:light-dark(#f3f9f7,#10221c);box-shadow:0 12px 32px #0008}
.ssr-action-menu:not([open])>[role=menu]{display:none}
body .ssr-action-menu :is([role=menuitem],[role=menuitemcheckbox]){display:block;width:100%;text-align:left;white-space:normal;border:0;border-radius:4px;padding:9px 12px;background:transparent;color:light-dark(#21312c,#e4f2ee);font:12px/1.5 system-ui;cursor:pointer}
body .ssr-action-menu :is([role=menuitem],[role=menuitemcheckbox]):hover,body .ssr-action-menu :is([role=menuitem],[role=menuitemcheckbox]):focus-visible{background:light-dark(#e6f1ec,#2b4b3b);outline:2px solid #99cfad;outline-offset:-2px}
body .ssr-action-menu :is([role=menuitem],[role=menuitemcheckbox]):disabled{opacity:.4;cursor:default;background:transparent}
.ssr-action-menu [role=menuitemcheckbox]::after{content:'○' / '';float:right;margin-left:12px}
.ssr-action-menu [role=menuitemcheckbox][aria-checked=true]::after{content:'✓' / ''}
.ssr-action-menu>summary:focus-visible{outline:2px solid #99cfad;outline-offset:2px}
.ssr-action-menu[data-align=end]>[role=menu]{left:auto;right:0}

.image-studio{--is-bg:light-dark(#f5f6f6,#181c1b);--is-panel:light-dark(#f2f4f3,#202523);--is-line:light-dark(#d6dcd8,#353e38);--is-ink:light-dark(#2b2d1e,#f2f3ec);--is-muted:light-dark(#556256,#a4b0a5);--is-accent:#b8f568;background:var(--is-bg);color:var(--is-ink);font:13px/1.5 system-ui,sans-serif;border:1px solid var(--is-line);border-radius:16px;overflow:hidden;max-width:1800px;margin:12px auto;box-shadow:0 16px 60px #0002}
.image-studio *{box-sizing:border-box}.image-studio [hidden]{display:none!important}.image-studio button,.image-studio input,.image-studio textarea,.image-studio select{font:inherit}.image-studio button{background:transparent;color:var(--is-ink);border:1px solid var(--is-line);border-radius:7px;padding:7px 11px;cursor:pointer;white-space:nowrap}.image-studio button:hover:not(:disabled){background:light-dark(#e9eeea,#354236);border-color:#7c926e}.image-studio button:disabled{opacity:.35;cursor:default}.image-studio button:focus-visible,.image-studio input:focus-visible,.image-studio select:focus-visible,.image-studio textarea:focus-visible,.image-studio canvas:focus-visible{outline:2px solid var(--is-accent);outline-offset:2px}.image-studio .is-primary{background:var(--is-accent);color:#18220f;border-color:var(--is-accent);font-weight:650}.image-studio .is-primary:hover:not(:disabled){background:#ccff8b;color:#18220f}.is-brand{display:flex;align-items:center;gap:12px}.is-mark{background:var(--is-accent);color:#17231e;border-radius:10px;width:44px;height:44px;display:grid;place-items:center;font-size:34px}.is-eyebrow{font:10px/1.5 monospace;letter-spacing:1.8px;color:var(--is-muted)}.image-studio .is-project input{background:transparent;border:0;padding:0;color:var(--is-ink);max-width:340px;font-weight:600}.is-actions{flex-wrap:wrap}.is-toolbar{justify-content:space-between}.is-toolbar>div{display:flex;align-items:center;gap:5px}.is-separator{height:22px;width:1px;background:var(--is-line);margin:0 8px}.is-toolbar output{width:46px;text-align:center;color:var(--is-muted);font:11px monospace}.is-stage{min-width:0;position:relative;height:690px;min-height:440px;overflow:hidden;background-color:#151917;background-image:radial-gradient(#364137 1px,transparent 1px);background-size:20px 20px;color:#f2f3ec;}.is-stage canvas{display:block;width:100%;height:100%;touch-action:none;cursor:default}.is-stage[data-tool=pan] canvas{cursor:grab}.is-stage[data-tool=pan] canvas:active{cursor:grabbing}.is-stage.drag-over{outline:3px solid var(--is-accent);outline-offset:-3px}.is-empty{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);width:320px;text-align:center;color:#263c2c;pointer-events:none}.is-empty .is-eyebrow{color:#56664e}.image-studio .is-empty h2{font-size:44px;font-weight:550;line-height:1.04;letter-spacing:-2.2px;margin:16px 0}.is-empty p{font-size:14px;line-height:1.65;color:#50614e}.is-empty button{pointer-events:auto;display:block;margin:16px auto 0}.is-empty .is-demo{color:#263c2c;border:0;padding:0;font-size:12px}.is-stage-note{position:absolute;bottom:16px;left:20px;right:20px;display:flex;justify-content:space-between;font:9px monospace;letter-spacing:2px;color:#8a998b;pointer-events:none}.is-sidebar{border-left:1px solid var(--is-line);background:var(--is-panel);height:690px;overflow-y:auto}.is-panel{padding:17px 16px;border-bottom:1px solid var(--is-line)}.is-panel-title{display:flex;justify-content:space-between;align-items:center;gap:8px}.image-studio h2{font-size:12px;margin:0;font-weight:650}.is-panel-title>span{font:10px monospace;color:var(--is-muted)}.is-hint{font-size:11px;color:var(--is-muted);margin:8px 0 12px}.is-layers{display:flex;flex-direction:column;gap:4px;max-height:235px;overflow:auto}.is-layer{display:flex;align-items:center;border-radius:7px;border:1px solid transparent;min-width:0}.is-layer.selected{background:light-dark(#ebf0e9,#34422e);border-color:light-dark(#ccd6c2,#657951)}.is-layer .is-pick{border:0;flex:1;min-width:0;display:flex;align-items:center;gap:10px;text-align:left;padding:8px}.is-pick span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.is-swatch{flex:none;width:25px;height:25px;display:grid;place-items:center;border-radius:4px;background:light-dark(#e8ece9,#3b463d);font:14px serif}.is-layer .is-eye{border:0;font-size:11px;padding:6px}.is-layer-actions{display:flex;gap:4px;margin-top:12px}.is-layer-actions button{font-size:10px;padding:5px 7px}.image-studio fieldset{border:0;margin:12px 0 0;padding:0;min-width:0}.image-studio label{display:flex;flex-direction:column;gap:5px;font-size:10px;color:var(--is-muted);margin-top:10px}.image-studio input,.image-studio textarea,.image-studio select{min-width:0;width:100%;background:light-dark(#f5f7f5,#161c18);border:1px solid var(--is-line);border-radius:5px;padding:7px 8px;color:var(--is-ink);font-size:12px}.image-studio input[type=color]{height:33px;padding:3px}.is-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.is-wide{width:100%;margin-top:12px}.is-footer{display:flex;justify-content:space-between;gap:20px;padding:10px 18px;font-size:11px;color:var(--is-muted);border-top:1px solid var(--is-line)}.is-footer [data-error=true]{color:light-dark(#a55212,#ffc497)}.is-footer>span:last-child{white-space:nowrap;font-family:monospace}.image-studio dialog{color:var(--is-ink);background:var(--is-panel);border:1px solid var(--is-line);border-radius:14px;padding:24px;max-width:calc(100vw - 32px)}.image-studio dialog h2{font-size:19px}.image-studio dialog p{color:var(--is-muted)}.image-studio dialog::backdrop{background:#0009}
@media(min-height:1000px){.is-stage,.is-sidebar{height:780px}}@media(max-width:1000px){.is-toolbar button{padding:6px 8px}.is-stage,.is-sidebar{height:650px}}
@media(max-width:700px){.image-studio{margin:0;border-radius:10px}.is-header .is-actions{width:100%}.is-header .is-actions button{flex:1;font-size:11px;padding:8px 6px}.is-toolbar .is-tools{order:3;width:100%;justify-content:center;border-top:1px solid var(--is-line);padding-top:6px}.is-stage{height:410px;min-height:360px}.is-sidebar{height:auto;max-height:none;border-left:0;border-top:1px solid var(--is-line);display:grid;grid-template-columns:1fr 1fr}.is-panel{min-width:0;padding:14px 10px}.is-panel:last-child{grid-column:1/-1}.is-layer-actions{flex-wrap:wrap}.is-empty{width:240px}.image-studio .is-empty h2{font-size:34px}.is-footer{padding:10px;align-items:flex-start}.is-footer>span:first-child{max-width:70%}.is-stage-note{font-size:8px;left:12px;right:12px}}
.image-studio .is-template-trigger{color:var(--is-accent);border-color:light-dark(#cddcbf,#637f46)}.image-studio .is-template-dialog{width:1120px;max-width:calc(100vw - 40px);max-height:calc(100dvh - 48px);padding:28px;overflow-y:auto;background:light-dark(#f3f6f4,#19201c)}.is-template-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.image-studio .is-template-header h2{font-size:32px;letter-spacing:-1px;line-height:1.2;margin:8px 0}.is-template-header p{font-size:13px;margin:0}.is-template-header>button{font-size:24px;line-height:1;padding:5px 10px}.is-template-tools{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:22px 0 12px}.is-template-filters{display:flex;gap:5px;flex-wrap:wrap}.is-template-filters button{font-size:12px;padding:7px 12px;border-radius:30px}.is-template-filters button[aria-pressed=true]{background:var(--is-accent);border-color:var(--is-accent);color:#17231e}.image-studio .is-template-search{margin:0;width:260px;flex-shrink:0}.is-template-search input{font-size:12px}.is-template-summary{display:flex;justify-content:space-between;gap:12px;color:var(--is-muted);font-size:11px;margin:15px 0}.is-template-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.image-studio .is-template-card{padding:0;border-radius:10px;overflow:hidden;text-align:left;white-space:normal;display:flex;flex-direction:column;background:light-dark(#f0f3f1,#222b24);border-color:light-dark(#d2ded5,#35473a);transition:border-color .15s,transform .15s}.image-studio .is-template-card:hover{border-color:var(--is-accent);transform:translateY(-2px);background:light-dark(#ecf1ed,#28372a)}.is-template-preview{height:195px;display:flex;align-items:center;justify-content:center;padding:15px;background:light-dark(#f5f8f7,#111a15)}.is-template-preview canvas{display:block;max-width:100%;max-height:100%;width:auto;height:auto;box-shadow:0 6px 14px #0005}.is-template-details{display:flex;flex-direction:column;gap:6px;padding:14px;flex:1}.is-template-details strong{font-size:15px;font-weight:650;color:light-dark(#2b2e1f,#f1f3e9)}.is-template-details .is-eyebrow{font-size:9px;letter-spacing:1.5px;color:light-dark(#4c5e3f,#b8caab)}.is-template-description{font-size:11px;line-height:1.5;color:light-dark(#4a5a49,#b0beaf);flex:1}.is-template-size{font:10px monospace;color:light-dark(#435438,#c3d1ba);padding-top:9px}.is-template-footnote{font-size:11px;margin:20px 0 0;color:var(--is-muted)}
@media(max-width:950px){.is-template-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.is-template-tools{align-items:flex-start;flex-direction:column}.image-studio .is-template-search{width:100%;max-width:360px}.is-template-preview{height:175px}}
@media(max-width:600px){.image-studio .is-template-dialog{padding:18px;max-width:calc(100vw - 20px);max-height:calc(100dvh - 24px)}.image-studio .is-template-header h2{font-size:25px}.is-template-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.is-template-preview{height:160px;padding:10px}.is-template-details{padding:10px}.is-template-details strong{font-size:13px}.is-template-description{font-size:10px}.is-template-size{font-size:9px}.is-template-summary{font-size:10px;flex-wrap:wrap}.is-template-filters button{font-size:11px;padding:5px 10px}.is-header .is-actions .is-template-trigger{flex-basis:100%}}
.image-studio .is-settings-dialog{width:min(540px,calc(100vw - 24px));max-height:calc(100vh - 32px);overflow:auto;padding:26px;border:1px solid light-dark(#d0d9d3,#415045);border-radius:16px;background:light-dark(#f2f6f4,#1a241e);color:light-dark(#2e3020,#f0f1e8)}.image-studio .is-settings-dialog::backdrop{background:#000a}.image-studio .is-settings-dialog label{display:grid;gap:7px;margin:14px 0;color:light-dark(#3d4c3d,#c2cec2);font-size:12px}.image-studio .is-settings-dialog input,.image-studio .is-settings-dialog select,.image-studio .is-settings-dialog textarea{width:100%;padding:9px;border:1px solid light-dark(#d1d9d2,#425044);border-radius:6px;background:light-dark(#f5f9f7,#101b15);color:light-dark(#282e1f,#eff3e9);box-sizing:border-box}.image-studio .is-settings-dialog .is-check{display:flex;align-items:center;gap:10px}.image-studio .is-check input{width:18px;height:18px}.image-studio .is-photo-actions{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.image-studio #is-photo-fields h3{font-size:13px;margin-top:20px}.image-studio .is-settings-dialog .is-template-header h2{font-size:26px}.image-studio #is-publish-result{font-size:13px;line-height:1.6;overflow-wrap:anywhere}.image-studio #is-publish-result a{color:light-dark(#66a512,#b8f568)}

.is-personalize{background:light-dark(#edf2ee,#253629);border-bottom:1px solid light-dark(#d0dec6,#50683d)}.is-personalize .is-panel-title h2{color:var(--is-accent)}.is-personalize input[type=file]{font-size:10px;padding:6px;max-width:100%}.is-slot-author{border-top:1px solid var(--is-line);margin-top:18px;padding-top:12px}.is-slot-author summary{cursor:pointer;color:var(--is-accent);font-size:12px}.is-slot-author button{white-space:normal}@media(max-width:700px){.is-personalize{grid-column:1/-1}}
.image-studio .is-tools-dialog{width:min(880px,calc(100vw - 24px))}.is-workbench-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.is-workbench-grid>section{min-width:0;border-top:1px solid light-dark(#d1d9d2,#425044);padding-top:12px}.is-workbench-grid h3{font-size:17px;color:light-dark(#578632,#d8ebc9);margin:8px 0}.is-palette{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.is-palette button{font:11px monospace;padding:7px 2px}.is-workbench-status{padding:12px;background:light-dark(#ecf2ed,#26392b);border-radius:8px;font-size:12px;overflow-wrap:anywhere}.image-studio #is-histogram{display:block;width:100%;height:68px;margin:16px 0;background:light-dark(#f5f9f7,#101b15);border-radius:6px}.image-studio #is-tool-source,.image-studio #is-atom-result,.image-studio #is-source{overflow-wrap:anywhere}.image-studio #is-atom-result a{color:var(--is-accent)}@media(max-width:650px){.is-workbench-grid{grid-template-columns:1fr}}

.image-studio .is-compare-dialog{width:min(960px,94vw)}
.image-studio #is-compare-canvas{display:block;width:100%;height:auto;background:#111815}
.image-studio .is-compare-labels{display:flex;justify-content:space-between;padding:10px 0;color:light-dark(#64a512,#b8f66b)}
.image-studio #is-compare-split{width:100%}
.is-history-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:16px}.is-history-card{min-width:0;padding:14px;background:light-dark(#f2f7f3,#17251c);border:1px solid light-dark(#cfdad0,#415342);border-radius:12px}.is-history-card canvas{display:block;width:100%;height:180px;object-fit:contain;background:#0c1510;border-radius:7px}.is-history-card h3{font-size:15px;line-height:1.4}.is-history-prompt{font-size:13px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;max-height:100px;overflow:auto}.is-history-card .is-photo-actions{flex-wrap:wrap}.is-history-card button{white-space:normal;font-size:12px}.image-studio #is-history-note{overflow-wrap:anywhere}

/* Editor chrome uses the shared SSR menu contract and preserves app-owned commands. */
.is-menu-spacer{flex:1}.image-studio .is-menubar>button{font-size:12px;padding:5px 10px}.image-studio .ssr-action-menu>[role=menu]{z-index:100;min-width:220px;background:light-dark(#f0f4f1,#202a22);border-color:light-dark(#cdd9c8,#526847);max-height:calc(100dvh - 24px);overflow:auto}
.image-studio .ssr-action-menu [role=menuitem]{padding:8px 12px}
.image-studio .primitive-row--workspace-body-inspector{grid-template-columns:minmax(0,1fr) 310px}.image-studio[data-sidebar-hidden=true] .primitive-row--workspace-body-inspector{grid-template-columns:minmax(0,1fr)}
.image-studio .is-sidebar{scrollbar-width:thin;scrollbar-color:#53664d #202523}.is-sidebar-tabs{display:flex;position:sticky;top:0;z-index:2;padding:6px 10px;gap:3px;background:light-dark(#f3f6f3,#19221b);border-bottom:1px solid var(--is-line)}
.image-studio .is-sidebar-tabs button{flex:1;font-size:11px;padding:8px 6px;border-color:transparent}
.image-studio .is-panel[role=tabpanel]{min-height:200px}.image-studio .is-layer .is-more{border:0;padding:7px 8px;font-size:17px;line-height:1}.image-studio .is-swatch{background-size:cover;background-position:center}.image-studio .is-layer:not(.selected):hover{background:light-dark(#edf1ee,#2a342c)}.image-studio .is-layer[data-visible=false] .is-pick{opacity:.55}
.is-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;font-size:12px}.is-shortcuts dt{color:light-dark(#3b4b36,#c9d5c5)}.is-shortcuts dd{margin:0;text-align:right;font-family:monospace;color:var(--is-accent)}
.image-studio .is-stage,.image-studio .is-sidebar{height:clamp(480px,calc(100dvh - 240px),900px)}
.is-workbench-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:22px 0 14px}.image-studio #is-workbench-pane-create>section:last-child{grid-column:1/-1}.image-studio #is-workbench-pane-atom{grid-template-columns:1fr}
@media(max-width:1000px){.image-studio .primitive-row--workspace-body-inspector{grid-template-columns:minmax(0,1fr) 280px}}
@media(max-width:700px){.image-studio .primitive-row--workspace-body-inspector{grid-template-columns:1fr}.image-studio .is-sidebar{display:block;height:auto;max-height:600px}.image-studio .is-stage{height:400px;min-height:340px}.image-studio .ssr-action-menu>summary{padding:6px 8px;gap:4px}.is-menu-spacer{display:none}.image-studio .is-menubar>button{margin-left:auto}.image-studio .is-menubar>button:last-child{margin-left:4px}.image-studio .is-header .is-actions button{flex-basis:auto}.is-sidebar-tabs{top:0}.is-shortcuts{font-size:11px;gap:10px}.is-toolbar>div{flex-wrap:wrap}}
.image-studio .primitive-tabs{overflow:visible;border:0;border-radius:0;background:transparent}
.image-studio .primitive-tabs-panels{padding:0}

/* App-owned editor, flush with the shared runtime workspace. */
.image-studio{margin:0;padding:0;max-width:none;border:0;border-radius:0;box-shadow:none;container: image-studio / inline-size;--is-bg:var(--cre8-view-surface);--is-panel:var(--cre8-view-surface-alt);--is-ink:var(--cre8-view-fg);--is-muted:var(--cre8-view-fg-muted);--is-line:var(--cre8-view-border);--is-accent:var(--cre8-view-accent)}
/* The header, menu bar and toolbar are the shared editor strips (identity, menu, tools): their padding, rule, title and
   document name come from view-lib's editor chrome. */
.image-studio .is-empty{color:var(--cre8-view-fg-muted);width:min(280px,85%)}
.image-studio .is-empty h2{font-size:26px;letter-spacing:-.04em;color:var(--cre8-view-fg)}
.image-studio .is-empty p,.image-studio .is-empty .is-demo{color:var(--cre8-view-fg-muted)}
@container image-studio (max-width:740px){.image-studio .primitive-row--workspace-body-inspector{grid-template-columns:minmax(0,1fr)}.image-studio .is-sidebar{height:auto;max-height:450px;border-left:0;border-top:1px solid var(--is-line)}.image-studio .is-stage{height:420px;min-height:340px}.image-studio .is-toolbar>div{flex-wrap:wrap}}
/* Keep canvas copy and primary actions readable in both viewer themes. */
.image-studio .is-stage{background-color:light-dark(#f6faf8,#151917);background-image:radial-gradient(light-dark(#c6d2c9,#364137) 1px,transparent 1px)}
.image-studio .is-empty .is-eyebrow,.image-studio .is-stage-note{color:var(--cre8-view-fg-muted)}
.image-studio .is-primary,.image-studio [data-editor-strip] .is-primary{background:var(--is-accent);border-color:var(--is-accent);color:light-dark(#ffffff,#18220f)}
.image-studio .is-primary:hover:not(:disabled),.image-studio [data-editor-strip] .is-primary:hover:not(:disabled){background:var(--is-accent);border-color:var(--is-accent);color:light-dark(#ffffff,#18220f)}

/* Sliders preview live and commit on release; layer rows show where a dragged layer lands. */
.image-studio .is-slider>span{display:flex;justify-content:space-between;gap:8px}.image-studio .is-slider output{font-family:monospace;color:var(--is-ink)}
.image-studio input[type=range]{padding:0;border:0;background:transparent;accent-color:var(--is-accent);height:20px}
.image-studio .is-layer[draggable=true]{cursor:grab}.image-studio .is-layer.drop{border-color:var(--is-accent);box-shadow:inset 0 2px 0 var(--is-accent)}
.is-stage[data-tool=pan] canvas{cursor:grab!important}.is-stage[data-tool=pan] canvas:active{cursor:grabbing!important}

/* Icons are stroke drawings from one sprite, sized to the text beside them. */
.image-studio .is-sprite{position:absolute;width:0;height:0;overflow:hidden}
.image-studio .is-icon{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.image-studio button:has(>.is-icon),.image-studio .ssr-action-menu>summary{display:inline-flex;align-items:center;justify-content:center;gap:6px}
.image-studio .ssr-action-menu>summary .is-icon{width:13px;height:13px;opacity:.7}
.image-studio .is-toolbar{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
.image-studio .is-toolbar .is-group{display:flex;align-items:center;gap:2px;flex:none}
.image-studio .is-toolbar .is-segment{display:flex;align-items:center;border:1px solid var(--is-line);border-radius:7px}
.image-studio .is-toolbar .is-segment button{border-radius:6px}
.image-studio .is-toolbar .is-separator{margin:0 6px}
.image-studio .is-toolbar output{width:44px}
.image-studio .is-layer .is-eye{display:grid;place-items:center;padding:6px}.image-studio .is-layer .is-eye .is-icon{width:15px;height:15px}
.image-studio .is-layer[data-visible=false] .is-eye{opacity:.55}
.image-studio fieldset .is-check{flex-direction:row;align-items:center;gap:8px}.image-studio fieldset .is-check input{width:16px;height:16px}
@container image-studio (max-width:640px){.image-studio .is-toolbar .is-group>button>span{display:none}}

/* Opt-in editor chrome. Documents, canvases, transport and geometry stay app-owned. */
[data-editor-chrome]{
  --editor-surface:light-dark(#f6f8f6,#1b2220);
  --editor-raised:light-dark(#fff,#242e29);
  --editor-ink:var(--cre8-view-fg,light-dark(#182620,#edf3ee));
  --editor-muted:var(--cre8-view-fg-muted,light-dark(#536259,#a6b5ab));
  --editor-border:var(--cre8-view-border,light-dark(#cbd5ce,#3b4941));
  /* One accent for every editor: the page's own, so a selected tab matches the app tab above it. */
  --editor-accent:var(--cre8-view-accent,light-dark(#0f5c40,#51d88a));
  --editor-accent-ink:light-dark(#fff,#06130f);
  --editor-selected:color-mix(in srgb,var(--editor-accent) 16%,transparent);
  --editor-hover:color-mix(in srgb,var(--editor-ink) 8%,transparent);
  --editor-font:Inter,ui-sans-serif,system-ui,sans-serif;
  --editor-control-height:34px;
  --editor-control-radius:0px;
  --editor-strip-pad:5px 12px;
}
[data-editor-chrome] [data-editor-strip]{
  box-sizing:border-box;color:var(--editor-ink);background:var(--editor-surface);border-color:var(--editor-border);
  gap:4px;min-width:0;
}
[data-editor-chrome] [data-editor-strip] :is(button,summary,select){
  box-sizing:border-box;min-height:var(--editor-control-height);border-radius:var(--editor-control-radius);
  font:12px/1.4 var(--editor-font);color:var(--editor-ink);border-color:var(--editor-border);padding:6px 10px;
}
[data-editor-chrome] [data-editor-strip] select{background:var(--editor-raised)}
[data-editor-chrome] [data-editor-strip] :is(button,summary){background:transparent}
[data-editor-chrome] [data-editor-strip] :is([aria-selected=true],[aria-pressed=true]){
  background:var(--editor-selected);color:var(--editor-accent);border-color:var(--editor-accent);
}
[data-editor-chrome] [data-editor-strip] :is(button,summary):hover:not(:disabled,[aria-selected=true],[aria-pressed=true]){background:var(--editor-hover)}
[data-editor-chrome] [data-editor-strip] :is(button,select):disabled{opacity:.45;cursor:default}
[data-editor-chrome] :is(button,summary,select,input,textarea,[role=separator]):focus-visible{
  outline:2px solid var(--editor-accent);outline-offset:2px;
}

/* Strip anatomy. Every editor reads top to bottom: identity, menu, tools or modes, the work, status.
   An app marks the strip; the padding, rule and type come from here. */
[data-editor-chrome] [data-editor-strip]:is([data-editor-strip=identity],[data-editor-strip=menu],[data-editor-strip=tools],[data-editor-strip=modes]){
  display:flex;align-items:center;margin:0;padding:var(--editor-strip-pad);border-radius:0;
  border-bottom:1px solid var(--editor-border);
}
[data-editor-chrome] [data-editor-strip=identity]{flex-wrap:wrap;gap:4px 12px;min-height:44px}
[data-editor-chrome] [data-editor-strip=identity] :is(h1,h2){
  margin:0;font:700 15px/1.3 var(--editor-font);letter-spacing:-.01em;white-space:nowrap;color:var(--editor-ink);
}
[data-editor-chrome] [data-editor-strip=menu]{flex-wrap:wrap;gap:2px}
/* A menu bar set inside another strip is part of that strip's line. */
[data-editor-chrome] [data-editor-strip] [data-editor-strip=menu]{flex:0 0 auto;padding:0;border:0;background:transparent}
[data-editor-chrome] [data-editor-strip=modes]{flex-wrap:wrap}
/* The document in hand: a name over one muted line. */
[data-editor-chrome] [data-editor-part=project]{
  display:grid;flex:1 1 180px;min-width:0;padding-left:12px;border-left:1px solid var(--editor-border);
}
[data-editor-chrome] [data-editor-part=project]>:is(strong,input){
  overflow:hidden;font:600 13px/1.25 var(--editor-font);color:var(--editor-ink);text-overflow:ellipsis;white-space:nowrap;
}
[data-editor-chrome] [data-editor-part=project]>span{
  overflow:hidden;font:11px/1.25 var(--editor-font);color:var(--editor-muted);text-overflow:ellipsis;white-space:nowrap;
}
[data-editor-chrome] [data-editor-part=actions]{display:flex;flex:0 0 auto;align-items:center;gap:6px;margin-left:auto}
/* A way out of the editor wears the strip's button shape. */
[data-editor-chrome] [data-editor-part=actions] a:where(:not([role],[hidden])){
  display:inline-flex;align-items:center;box-sizing:border-box;min-height:var(--editor-control-height);padding:6px 10px;
  border:1px solid var(--editor-border);border-radius:var(--editor-control-radius);
  font:12px/1.4 var(--editor-font);color:var(--editor-ink);text-decoration:none;white-space:nowrap;
}
[data-editor-chrome] [data-editor-part=actions] a:where(:not([role],[hidden])):hover{background:var(--editor-hover)}
[data-editor-chrome] [data-editor-part=actions] :is(button,summary){border:1px solid var(--editor-border)}
/* The one action an editor exists for. */
[data-editor-chrome] [data-editor-strip] [data-editor-primary],
[data-editor-chrome] [data-editor-strip] [data-editor-primary]:hover:not(:disabled){
  background:var(--editor-accent);border-color:var(--editor-accent);color:var(--editor-accent-ink);font-weight:600;
}
[data-editor-chrome] [data-editor-strip=status]{
  display:flex;justify-content:space-between;gap:12px;margin:0;padding:6px 12px;
  border-top:1px solid var(--editor-border);font:11px/1.4 var(--editor-font);color:var(--editor-muted);
}
[data-editor-chrome] [data-editor-strip=status]>*{overflow:hidden;margin:0;text-overflow:ellipsis;white-space:nowrap}
[data-editor-chrome] [data-editor-strip=status] b{color:var(--editor-ink);font-weight:600;font-variant-numeric:tabular-nums}

/* Menus. The trigger's caret is drawn, so it sits on the label's midline in every editor. */
[data-editor-chrome] .ssr-action-menu>summary{gap:7px;border:0;font:12px/1.4 var(--editor-font);color:var(--editor-ink)}
[data-editor-chrome] .ssr-action-menu>summary>span[aria-hidden]{
  width:5px;height:5px;margin-top:-3px;overflow:hidden;font-size:0;opacity:.6;
  border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(45deg);
}
[data-editor-chrome] .ssr-action-menu:is([open],:hover)>summary{background:var(--editor-hover);border-color:transparent}
[data-editor-chrome] .ssr-action-menu>[role=menu]{
  background:var(--editor-raised);color:var(--editor-ink);border-color:var(--editor-border);
  border-radius:var(--editor-control-radius);
}
[data-editor-chrome] .ssr-action-menu :is([role=menuitem],[role=menuitemcheckbox]){
  color:var(--editor-ink);min-height:var(--editor-control-height);border-radius:var(--editor-control-radius);font-family:var(--editor-font);
}
[data-editor-chrome] .ssr-action-menu :is([role=menuitem],[role=menuitemcheckbox]):is(:hover,:focus-visible):not(:disabled){background:var(--editor-selected);outline-color:var(--editor-accent)}
[data-editor-chrome] .cre8-document-tab:has([aria-selected=true]){border-top-color:var(--editor-accent);background:var(--editor-selected)}
[data-editor-chrome] .cre8-document-tab>.primitive-tabs-button{border-radius:0;border:0}
[data-editor-chrome] .cre8-document-tab-close{padding:4px;min-width:28px}
[data-editor-chrome] [data-tab-dirty]{color:var(--editor-accent)}
[data-editor-chrome] button[data-ssr-menu-open]{min-height:var(--editor-control-height);min-width:var(--editor-control-height)}
@media(pointer:coarse){
  [data-editor-chrome]{--editor-control-height:44px}
  [data-editor-chrome] [data-editor-strip] :is(button,summary,select){min-width:44px}
  [data-editor-chrome] .ssr-action-menu :is([role=menuitem],[role=menuitemcheckbox]){min-height:44px}
}
@media(prefers-reduced-motion:reduce){[data-editor-chrome] [data-editor-strip] *{scroll-behavior:auto;transition:none}}
