/* meadowism Studio — approved Figma visual system, real editor controls. */
@font-face{font-family:Outfit;src:url('../assets/outfit-variable.woff2') format('woff2');font-weight:100 900;font-display:swap}
#root {
.cx-node{position:absolute!important;width:360px!important;background:#f8f9f5!important;border:none!important;border-radius:16px!important;box-shadow:none!important;color:#232722!important;overflow:visible!important;font-family:Outfit,Arial,sans-serif!important;transform:none!important}.cx-node *{font-family:Outfit,Arial,sans-serif!important;box-shadow:none!important}.cx-node-header{position:relative!important;height:104px!important;padding:24px 28px!important;background:transparent!important;border:0!important;border-radius:0!important;display:block!important}.cx-node-num{position:absolute;left:28px;top:24px;color:#70776d!important;font-size:10px!important;letter-spacing:.6px}.cx-node-type{display:block!important;position:absolute;left:62px;top:24px;color:#70776d!important;font-size:10px!important;letter-spacing:.6px}.cx-node-title{display:block!important;position:absolute;top:47px;left:28px;font-size:28px!important;font-weight:500!important;letter-spacing:-1.1px!important;color:#232722!important;max-width:225px;white-space:normal!important;line-height:1.12!important}.cx-node-collapse{position:absolute;right:24px;top:20px;width:24px!important;height:24px!important;background:none!important;border:0!important;color:#70776d!important}.cx-node-collapse-ico{width:16px;height:16px}.cx-node-actions{position:absolute;right:23px;top:57px;display:flex;gap:6px}.cx-node-act{width:24px!important;height:24px!important;color:#70776d!important;border:0!important;background:transparent!important}.cx-node-act-ico{width:15px;height:15px;stroke:currentColor;stroke-width:1.3}.cx-node-badge{position:absolute;left:20px;top:69px;width:3px!important;height:3px!important;background:#566349!important}.cx-node-body{padding:0 28px 28px!important;max-height:none!important;overflow:visible!important}.cx-field-l{font-size:13px!important;font-weight:400!important;line-height:1.45!important;color:#232722!important;margin:20px 0 8px!important;letter-spacing:0!important;text-transform:none!important;display:flex;justify-content:space-between;gap:12px;align-items:baseline}.cx-field-l:first-child{margin-top:0!important}.cx-field-v{font-size:13px!important;color:#232722!important;font-variant-numeric:tabular-nums}.cx-field-optional{font-size:11px!important;color:#70776d!important;line-height:1.4!important;max-width:180px;text-align:right}.cx-node button,.cx-node input,.cx-node select,.cx-node textarea{font-size:12px!important}.cx-node button{white-space:normal!important;line-height:1.3!important}.cx-select,.cx-size-input,.cx-size-unit,.cx-textarea,.cx-text-node-fields input:not([type=checkbox]):not([type=color]),.cx-text-node-fields select,.cx-text-node-fields textarea{min-height:38px!important;border:1px solid #d5dbd0!important;background:#f0f2eb!important;border-radius:7px!important;padding:9px 11px!important;color:#232722!important;width:100%;line-height:1.45!important}.cx-textarea{height:auto!important;min-height:78px!important;resize:vertical}.cx-range{width:100%!important;appearance:none!important;height:18px!important;background:transparent!important;margin:5px 0 10px!important;border:0!important;accent-color:#293128}.cx-range::-webkit-slider-runnable-track{height:4px;background:#d5dbd0;border-radius:2px}.cx-range::-webkit-slider-thumb{appearance:none;width:14px;height:14px;border-radius:50%;background:#293128;margin-top:-5px}.cx-grid2{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:8px!important}.cx-tile{border:1px solid #d5dbd0!important;border-radius:7px!important;padding:12px 5px!important;background:transparent!important;min-height:88px;color:#232722!important;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.cx-tile-icon{width:42px!important;height:42px!important}.cx-tile-span{grid-column:1/-1!important;flex-direction:row!important;min-height:52px}.cx-tile-span .cx-tile-icon{width:28px!important;height:28px!important}.cx-size-row{display:grid!important;grid-template-columns:1fr 12px 1fr 68px;gap:8px;align-items:center}.cx-size-x{text-align:center}.cx-craft-row,.cx-seg-layout{display:flex!important;flex-wrap:wrap!important;gap:7px!important}.cx-chip,.cx-seg-b{padding:9px 10px!important;background:#f0f2eb!important;color:#232722!important;border:1px solid #d5dbd0!important;border-radius:6px!important;flex:1 0 auto;font-size:12px!important}.cx-craft-note,.cx-render-note{font-size:12px!important;line-height:1.5!important;color:#70776d!important;margin:12px 0 16px!important}.cx-mini-stat{margin-top:24px!important;padding:17px 0 0!important;border:0!important;border-top:1px solid #d5dbd0!important;background:none!important;border-radius:0!important}.cx-mini-stat-v{font-size:28px!important;line-height:1.2!important;font-weight:500!important;letter-spacing:-.8px;color:#232722!important}.cx-mini-stat-k{font-size:11px!important;margin-top:6px;color:#70776d!important;letter-spacing:0!important;text-transform:none!important}.cx-fabric-list{display:flex;flex-direction:column;gap:8px!important;max-height:none!important;overflow:visible!important}.cx-fabric-row{width:100%;display:flex;align-items:center;gap:12px!important;padding:11px!important;min-height:62px;background:#f0f2eb!important;border:1px solid #d5dbd0!important;border-radius:7px!important;text-align:left;color:#232722!important}.cx-fabric-sw{width:30px!important;height:32px!important;flex-shrink:0;border-radius:4px!important;border:1px solid #c6cbbf}.cx-fabric-info{min-width:0}.cx-fabric-name{font-size:13px!important;font-weight:500!important;line-height:1.35}.cx-fabric-meta{font-size:11px!important;line-height:1.5!important;color:#70776d!important}.cx-yarn-spin{font-size:10px!important;font-weight:400}.cx-node .sel{background:#293027!important;border-color:#293027!important;color:#f8f9f5!important}.cx-node .sel .cx-fabric-meta{color:#e1e6db!important}.cx-node button:disabled,.cx-node .dis{opacity:.38!important}.cx-row{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin-top:16px!important}.cx-btn-ghost,.cx-render-filebtn{border:1px solid #d5dbd0!important;background:#f0f2eb!important;color:#232722!important;min-height:36px!important;border-radius:7px!important;padding:9px 11px!important;flex:1 0 auto}.cx-btn-primary{width:100%;background:#252923!important;color:white!important;border:0!important;border-radius:7px!important;min-height:44px!important;padding:12px!important}.cx-motif-preview,.cx-airender-preview,.cx-airender-pattern-preview{height:186px!important;background:#edf0e7!important;border:1px solid #d5dbd0!important;border-radius:9px!important;margin-top:9px!important;display:flex;align-items:center;justify-content:center;overflow:hidden!important}.cx-airender-pattern-preview{height:135px!important}.cx-motif-svg{width:100%!important;height:100%!important;object-fit:contain}.cx-airender-preview-img{width:100%;height:100%;object-fit:contain}.cx-render-preview{margin-top:10px;display:flex;gap:12px;align-items:center}.cx-render-thumb{width:58px;height:58px;object-fit:cover;border-radius:6px}.cx-render-clear{border:0;background:none;color:#70776d}.cx-motif-matte-placeholder,.cx-airender-preview-placeholder{font-size:12px!important;color:#70776d!important;padding:20px;text-align:center;line-height:1.5}.cx-hidden-file{display:none!important}.cx-colorsplit-list{display:flex;flex-direction:column;gap:8px}.cx-colorsplit-row{background:#f0f2eb!important;border:1px solid #d5dbd0!important;border-radius:7px!important;display:flex;align-items:center;gap:12px;padding:10px}.cx-colorsplit-swatch{position:relative;width:28px;height:28px;flex-shrink:0}.cx-colorsplit-color-input{width:28px;height:28px}.cx-colorsplit-swatch-fill{position:absolute;inset:0;pointer-events:none;border-radius:3px}.cx-colorsplit-meta{flex:1}.cx-colorsplit-hex{background:none!important;border:0!important;width:100%;color:#232722}.cx-colorsplit-px{font-size:10px;color:#70776d}.cx-colorsplit-vis{border:1px solid #d5dbd0;border-radius:5px;padding:5px 10px;background:#f8f9f5}.cx-qty{display:flex;gap:9px;height:40px}.cx-qty button,.cx-qty input{border:1px solid #d5dbd0!important;background:#f0f2eb!important;border-radius:7px!important;color:#232722!important}.cx-qty button{width:44px}.cx-qty input{flex:1;min-width:0;text-align:center}.cx-text-node-fields label{display:flex;flex-direction:column;gap:8px;font-size:12px;margin-bottom:15px}.cx-text-fields{display:grid!important;grid-template-columns:1fr 1fr;gap:0 14px!important}.cx-text-node-fields .cx-text-enabled{flex-direction:row;align-items:center}.cx-text-node-fields p{font-size:12px;line-height:1.5;color:#70776d;margin:8px 0 0}.cx-text-node-fields input[type=color]{width:100%;height:38px;border:1px solid #d5dbd0;border-radius:7px;background:#f0f2eb}.cx-text-node-fields input[type=checkbox]{accent-color:#293027;width:15px;height:15px}.cx-port{width:9px!important;height:9px!important;background:#f8f9f5!important;border:1px solid #87947d!important;border-radius:50%!important;transform:translateY(-50%)!important}.cx-port.in{left:-4.5px!important}.cx-port.out{right:-4.5px!important;background:#293027!important}.cx-layout-motif-card{background:#f0f2eb!important;border:1px solid #d5dbd0!important;border-radius:9px!important;padding:16px!important;margin-top:12px}.cx-layout-motif-h{font-size:12px!important;font-weight:500!important}.cx-node-collapsed-summary{padding:0 28px 26px!important;background:none!important;min-height:75px;font-size:13px;line-height:1.5;border:0!important}.cx-node-collapsed-summary *{white-space:normal!important;overflow:visible!important;color:#70776d!important}.cx-render-note-err{color:#a33d3d!important}.cx-mt{margin-top:20px!important}
.cx-node-title,.cx-field-v,.cx-craft-note{font-style:normal!important}.cx-chip{width:auto!important;flex:1 0 45%!important}.cx-chip:last-child{flex-grow:0!important}.cx-port.out{left:auto!important;right:-4.5px!important}.cx-port.in{right:auto!important}.cx-node-badge{left:17px!important;top:64px!important}

/* Remove redundant node type labels; retain number and main title. */
.cx-node-type{display:none!important}

/* Approved compact typography across the entire library. */
.cx-node-title{font-size:32px!important;top:43px!important;line-height:1.15!important}
.cx-node-num{font-size:12px!important}
.cx-field-l,.cx-field-v,.cx-fabric-name,.cx-text-node-fields label{font-size:16px!important}
.cx-node input,.cx-node select,.cx-node textarea{font-size:16px!important}
.cx-node button{font-size:14px!important}
.cx-field-optional,.cx-fabric-meta,.cx-mini-stat-k{font-size:12px!important}
.cx-craft-note,.cx-render-note,.cx-text-node-fields p,.cx-node-collapsed-summary{font-size:14px!important}
.cx-field-l{margin-top:16px!important}.cx-craft-row{gap:6px!important}.cx-chip{flex:1 0 auto!important;padding:9px 7px!important}
.cx-node .cx-craft-row .cx-chip{font-size:13px!important}
.cx-node .cx-render-note{line-height:1.5!important}

}
#root .cx-app {
 --sans:Outfit,Arial,sans-serif;--mono:Outfit,Arial,sans-serif;--ink:#232722;--ink-2:#70776d;--warm:#70776d;--paper:#f8f9f5;--line:#d5dbd0;--line-strong:#a3b394;--bg-1:#dce7ce;--bg-2:#f0f2eb;--canvas-bg:#dce7ce;--node-bg:#f8f9f5;--accent:#293027;--accent-2:#667558;--selected-ring:#a3b394;--studio-white:#f8f9f5;--studio-green:#293027;--studio-soft:#f0f2eb;
 font-family:Outfit,Arial,sans-serif!important;color:#232722!important;background:#dce7ce!important;border:0!important;box-shadow:none!important;
 & *{font-family:Outfit,Arial,sans-serif;}
 &::before,& .cx-topbar::after,& .cx-node-header::after,& .cx-sidebar::after,& .cx-side-h::after,& .cx-canvas-col::before,& .cx-canvas-col::after,& .cx-canvas-wrap::before,& .cx-canvas-wrap::after{display:none!important}
 & :is(button,input,textarea,select,summary){font-family:Outfit,Arial,sans-serif!important}
 & :focus-visible{outline:2px solid #536b40!important;outline-offset:3px!important}
 & .cx-topbar{height:auto!important;min-height:76px;padding:16px 24px!important;flex-wrap:wrap;gap:14px 24px;background:#f8f9f5!important;border:0!important;box-shadow:none!important;flex-shrink:0}
 & .meadowism-wordmark{font-size:32px;font-weight:650;letter-spacing:-1.4px;line-height:1;white-space:nowrap;color:#232722}
 & .meadowism-wordmark span{font-size:10px;vertical-align:super;letter-spacing:0;margin-left:3px}
 & .cx-topbar-mid{overflow:visible;min-width:360px}
 & .cx-topbar-nav{gap:4px;max-width:none}
 & .cx-topbar-r{overflow:visible;flex-wrap:wrap;gap:8px;justify-content:flex-end;--cx-topbar-ctrl-h:38px}
 & .cx-navlink{font-size:15px!important;font-weight:400!important;padding:10px 12px!important;color:#232722!important;border-radius:8px;text-transform:none!important;letter-spacing:0!important}
 & .cx-navlink.active{background:#e6ebdf!important;border:0!important;box-shadow:none!important}
 & :is(.cx-tbtn,.cx-theme-picker){font-size:14px!important;background:#f0f2eb!important;border:1px solid #d5dbd0!important;color:#232722!important;border-radius:8px!important;box-shadow:none!important;text-transform:none!important;letter-spacing:0!important}
 & .cx-tbtn.primary{background:#293027!important;border-color:#293027!important;color:#f8f9f5!important}
 & .cx-workspace{padding:16px 24px 24px;gap:16px;background:#dce7ce}
 & .cx-workspace-toolbar{min-height:48px}
 & .cx-workspace h1{font-size:32px;font-weight:500;letter-spacing:-1px}
 & .cx-workspace h2{font-size:22px;font-weight:500;letter-spacing:-.5px}
 & .cx-workspace-demo{font-size:13px}
 & :is(.cx-workspace-toolbar,.cx-workspace-panel-head) button,& .cx-workspace-layout-options>summary{font-size:16px;background:#f8f9f5!important;border-radius:8px;min-height:42px}
 & .cx-workspace-panel{border-radius:16px;background:#f8f9f5!important}
 & .cx-workspace-editor{background:#dce7ce!important}
 & .cx-workspace-panel-head{padding:12px 16px}
 & .cx-workspace-layout-options>div{background:#f8f9f5!important;border:1px solid #d5dbd0;box-shadow:0 8px 24px #23272216}
 & .cx-workspace-split::after{background:#a3b394!important}
 & .cx-workspace-split-horizontal::before{background:#d5dbd0!important}
 & .cx-sidebar{background:#f8f9f5!important;border:0!important;border-radius:16px!important;box-shadow:none!important;color:#232722!important}
 & .cx-proj-name{font-size:22px!important;font-style:normal!important;letter-spacing:-.5px!important;color:#232722!important}
 & .cx-saved{font-size:12px!important;letter-spacing:0!important;text-transform:none!important;color:#70776d!important}
 & .cx-side-section{padding:20px 16px!important}
 & .cx-side-h{font-size:15px!important;color:#232722!important;letter-spacing:0!important;text-transform:none!important}
 & .cx-graph-list li{padding:10px 8px!important;border-radius:7px;min-height:40px}
 & .cx-gl-label{font-size:15px!important}
 & :is(.cx-gl-num,.cx-gl-meta,.cx-fabric-meta,.cx-ws-tag){font-size:12px!important;letter-spacing:0!important}
 & .cx-proj-list li.active,& .cx-graph-list li.sel{background:#e6ebdf!important;color:#232722!important}
 & .cx-workshop-list li{font-size:13px!important;background:none!important;line-height:1.5}
 & .cx-grid{background-color:#dce7ce!important}
 & .cx-grid[data-cx-canvas-pattern="weave"]{background-image:linear-gradient(#cedbbe 1px,transparent 1px),linear-gradient(90deg,#cedbbe 1px,transparent 1px)!important}
 & .cx-node.sel{background:#f8f9f5!important;outline:2px solid #879b76;outline-offset:3px}
 & .cx-node.err{outline:2px solid #a84940;outline-offset:3px}
 & .cx-node-header{cursor:grab}
 & .cx-node-header:active{cursor:grabbing}
 & .cx-node-collapsed-summary{min-height:75px!important;height:auto!important;padding-bottom:26px!important}
 & .cx-node-collapsed-summary-title,& .cx-node-collapsed-summary-meta{font-size:14px!important;line-height:1.5!important}
 & .cx-node-motif .cx-textarea{min-height:64px!important}
 & .cx-node-motif .cx-motif-preview{height:144px!important}
 & .cx-node-motif .cx-field-l{margin-top:16px!important}
 & .cx-port{cursor:crosshair}
 & .cx-port.hover-valid{outline:3px solid #607e48!important}
 & .cx-port.hover-invalid{outline:3px solid #a84940!important}
 & :is(.cx-wire-tools,.cx-zoom,.cx-minimap,.cx-hint,.cx-moodboard){background:#f8f9f5!important;border:1px solid #d5dbd0!important;border-radius:12px!important;box-shadow:none!important}
 & .cx-wire-tool{font-size:14px;background:#f8f9f5!important;color:#232722!important;border:0!important}
 & .cx-wire-tool.sel{background:#293027!important;color:#f8f9f5!important}
 & .cx-moodboard-head{background:#f8f9f5!important;color:#232722!important;font-size:20px!important;border-bottom:1px solid #d5dbd0!important}
 & .cx-prev-bar{padding:20px!important;background:#f8f9f5!important;border:0!important}
 & .cx-prev-l{font-size:22px!important;font-weight:500!important;letter-spacing:-.4px!important;text-transform:none!important;color:#232722!important}
 & .cx-prev-bar-row-head{flex-wrap:wrap;gap:10px}
 & .cx-prev-ico{width:32px!important;height:32px!important;flex-shrink:0}
 & .cx-prev-r,& .cx-prev-hint{font-size:14px!important;color:#70776d!important;font-style:normal!important}
 & .cx-prev-mode-btn{font-size:14px!important;min-height:36px;padding:8px 18px!important;letter-spacing:0!important;text-transform:none!important}
 & .cx-prev-mode-btn.on{background:#293027!important;color:#f8f9f5!important}
 & .cx-prev-zoom-mini{font-size:16px!important;width:28px!important;height:28px!important}
 & .cx-prev-zoom-pct{font-size:13px!important}
 & .cx-prev-area{background:#edf0e7!important;border:0!important;border-radius:12px;margin:0 16px!important}
 & .cx-prev-footer{padding:16px 20px!important;background:#f8f9f5!important}
 & .cx-prev-footer summary{font-size:16px!important}
 & .cx-tp-row{padding:9px 0!important;border-color:#d5dbd0!important}
 & .cx-tp-row :is(.k,.v){font-size:14px!important;letter-spacing:0!important;text-transform:none!important}
 & .cx-result-status{font-size:13px!important;color:#70776d!important;padding:12px 20px!important}
 & .cx-ai-chat-panel,& .cx-ai-chat-bar{background:#f8f9f5!important;color:#232722!important;border-color:#d5dbd0!important;box-shadow:none!important}
 & .cx-ai-chat-empty,& .cx-ai-chat-msg-text{font-size:16px!important;line-height:1.5!important}
 & .cx-ai-chat-compose{background:#f0f2eb!important;border-color:#d5dbd0!important;box-shadow:none!important}
 & .cx-ai-chat-input{font-size:16px!important;background:#f8f9f5!important;border-radius:8px!important;color:#232722!important}
 & .cx-ai-chat-send{background:#293027!important;color:#f8f9f5!important;font-size:14px!important;border-radius:8px!important}
 & .cx-ai-chat-msg-user .cx-ai-chat-msg-text{background:#e6ebdf!important}
 & .cx-prompt-entry{background-color:#dce7ce!important;background-image:linear-gradient(#cedbbe 1px,transparent 1px),linear-gradient(90deg,#cedbbe 1px,transparent 1px);background-size:28px 28px}
 & .cx-prompt-brand{color:#232722!important;font-weight:650!important;letter-spacing:-1px!important}
 & .cx-prompt-content{width:min(760px,100%);max-width:760px;background:#f8f9f5!important;border-radius:24px;padding:40px}
 & .cx-prompt-content h1{font-size:clamp(36px,4vw,52px)!important;font-weight:500!important;color:#232722!important;line-height:1.08!important;letter-spacing:-1.5px!important}
 & .cx-prompt-intro{font-size:18px;color:#70776d}
 & .cx-prompt-form{padding:0;background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important}
 & .cx-prompt-form :is(label,textarea,button){font-size:16px!important}
 & .cx-prompt-form textarea{min-height:144px;background:#f0f2eb;border:1px solid #d5dbd0;border-radius:8px;padding:16px}
 & .cx-prompt-submit{background:#293027!important;color:#f8f9f5!important}
 & .cx-modal-card{background:#f8f9f5!important;border:0!important;border-radius:24px!important;padding:32px!important;color:#232722!important}
 & .cx-modal-card::before{display:none!important}
 & .cx-tp-title{font-size:36px!important;font-style:normal!important;font-weight:500!important;letter-spacing:-1px!important;color:#232722!important}
 & .cx-tp-title i{font-style:normal}
 & :is(.cx-tp-sub,.cx-tp-m,.cx-tp-issue){font-size:14px!important;line-height:1.5!important}
 & .cx-tp-k{font-size:12px!important;letter-spacing:.3px!important;color:#70776d!important}
 & .cx-tp-v{font-size:22px!important}
 & .cx-tp-grid section{background:#f0f2eb!important;border:0!important;border-radius:10px;padding:16px}
 & :is(.cx-btn-primary,.cx-btn-ghost){font-family:Outfit!important;border-radius:8px!important;font-size:14px!important}
 & .cx-btn-primary{background:#293027!important;color:#f8f9f5!important}
 & .cx-btn-ghost{background:#f0f2eb!important;color:#232722!important;border:1px solid #d5dbd0!important}
 & button:disabled{cursor:not-allowed}
}
body:has(#root .cx-app){background:#dce7ce!important}
.cx-email-cap-panel{font-family:Outfit,Arial,sans-serif!important;background:#f8f9f5!important;border-radius:24px!important;color:#232722!important}
.cx-email-cap-title{font:500 30px/1.15 Outfit,Arial,sans-serif!important;color:#232722!important}
.cx-email-cap-submit{background:#293027!important;color:#f8f9f5!important}
@media(max-width:1350px){#root .cx-app .cx-topbar-r{flex:1 1 100%;justify-content:flex-start}#root .cx-app .cx-topbar-mid{justify-content:flex-end}}
@media(max-width:760px){#root .cx-app .cx-prompt-content{padding:24px}#root .cx-app .cx-workspace{padding:12px}#root .cx-app .cx-topbar{padding:12px!important}}
@media(prefers-reduced-motion:reduce){#root .cx-app *{animation:none!important;scroll-behavior:auto!important}}

/* Restore information hidden by the former compact skin. */
#root .cx-app .cx-node *{box-sizing:border-box}
#root .cx-app .cx-node-body{display:block!important;gap:0!important}
#root .cx-app :is(.cx-node-num,.cx-field-optional,.cx-node-body>.cx-render-note,.cx-prev-l,.cx-prev-r){display:block!important}
#root .cx-app .cx-node-motif .cx-field-l:first-child{margin-top:0!important}
#root .cx-app .cx-node-motif .cx-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
#root .cx-app .cx-node-motif .cx-row button{width:100%!important;min-width:0!important;min-height:38px!important}
#root .cx-app .cx-node-motif .cx-row button:first-child{grid-column:1/-1;background:#293027!important;color:#f8f9f5!important;min-height:42px!important}
#root .cx-app .cx-node-motif .cx-motif-preview{height:144px!important}
#root .cx-app .cx-node-collapsed-summary :is(.cx-node-sum-title,.cx-node-sum-meta){font-size:14px!important;line-height:1.5!important}
#root .cx-app .cx-workspace{background-image:linear-gradient(#cedbbe80 1px,transparent 1px),linear-gradient(90deg,#cedbbe80 1px,transparent 1px);background-size:28px 28px}
#root .cx-app .cx-prev-bar-row-tools{flex-wrap:wrap;gap:10px}
#root .cx-app .cx-prev-l{flex:1 1 160px}
#root .cx-app .cx-prev-r{margin-top:8px}

#root .cx-app .cx-node-collapsed-summary :is(.cx-node-collapsed-primary,.cx-node-collapsed-secondary){font-size:14px!important;line-height:1.5!important}

/* Keep material and supplier names legible on the selected dark row. */
#root .cx-app .cx-node .cx-fabric-row.sel .cx-fabric-name { color:#f8f9f5!important; }

/* One pale canvas surface: remove legacy multiply tint and textile header strips. */
#root .cx-app .cx-grid { background-color:#dce7ce!important; mix-blend-mode:normal!important; opacity:1!important; filter:none!important; }
#root .cx-app .cx-grid[data-cx-canvas-pattern="weave"] { background-size:28px 28px!important; background-image:linear-gradient(#cedbbe66 1px,transparent 1px),linear-gradient(90deg,#cedbbe66 1px,transparent 1px)!important; }
#root .cx-app .cx-canvas-wrap { background:#dce7ce!important; }
#root .cx-app .cx-node-header::before,
#root .cx-app .cx-node-header::after { content:none!important; display:none!important; }

/* The assistant occupies an overlay layer in the canvas column; it never remounts. */
#root .cx-app .cx-workspace-floating-chat { display:grid; grid-template-rows:minmax(0,1fr); position:relative; isolation:isolate; }
#root .cx-app .cx-workspace-floating-chat > .cx-workspace-panel { grid-row:1; min-width:0; }
#root .cx-app .cx-workspace-floating-chat > .cx-workspace-studio { grid-column:1; min-height:0; }
#root .cx-app .cx-workspace-floating-chat > .cx-workspace-editor { grid-column:1; }
#root .cx-app .cx-workspace-two-panels > .cx-workspace-editor { grid-column:3; }
#root .cx-app .cx-workspace-floating-chat > .cx-workspace-split { grid-column:2; grid-row:1; }
#root .cx-app .cx-chat-dock {
 grid-row:1; align-self:end; justify-self:center; z-index:35;
 width:min(560px,calc(100% - 32px)); height:min(300px,calc(100% - 76px)); min-height:0;
 margin:0 0 16px; padding:0; border:1px solid #d5dbd0!important; border-radius:18px!important;
 background:#f8f9f5!important; box-shadow:0 8px 28px #23272212!important; overflow:hidden;
}
#root .cx-app .cx-workspace-two-panels > .cx-chat-dock { margin-bottom:76px; height:min(280px,calc(100% - 136px)); }
#root .cx-app .cx-chat-dock.cx-chat-dock-collapsed { height:48px; width:min(280px,calc(100% - 32px)); }
#root .cx-app .cx-chat-dock-toggle { display:flex; align-items:center; justify-content:space-between; gap:16px; width:100%; flex:0 0 48px; padding:12px 18px; border:0; border-radius:0; background:#f8f9f5; color:#232722; font-size:15px!important; text-align:left; cursor:pointer; }
#root .cx-app .cx-chat-dock-toggle:hover { background:#f0f2eb; }
#root .cx-app #cx-chat-dock-content[hidden] { display:none!important; }
#root .cx-app .cx-chat-dock .cx-ai-chat-panel { width:100%!important; height:100%!important; min-height:0!important; }
#root .cx-app .cx-chat-dock .cx-ai-chat-list { padding:0 18px 8px; }
#root .cx-app .cx-chat-dock .cx-ai-chat-empty { margin:0; font-size:14px!important; font-weight:400; }
#root .cx-app .cx-chat-dock .cx-ai-chat-compose { margin:4px 12px 12px; padding:10px; }
#root .cx-app .cx-chat-dock .cx-ai-chat-input { min-height:58px!important; max-height:100px; font-size:16px!important; padding:10px 12px; }
#root .cx-app .cx-chat-dock .cx-ai-chat-compose-row { gap:8px; }
#root .cx-app .cx-chat-dock .cx-ai-chat-send { margin-left:auto; min-height:36px; padding:8px 18px; }

/* Align the two workspace headings with their respective columns. */
#root .cx-app .cx-workspace-aligned-toolbar { display:grid; align-items:start; column-gap:16px; }
#root .cx-app .cx-workspace-aligned-two { column-gap:0; }
#root .cx-app .cx-workspace-editor-toolbar { grid-column:2; display:flex; align-items:flex-start; justify-content:space-between; flex-wrap:wrap; gap:8px 16px; min-width:0; }
#root .cx-app .cx-workspace-aligned-two .cx-workspace-editor-toolbar { grid-column:3; }
#root .cx-app .cx-workspace-aligned-toolbar :is(h1,h2) { margin:0; font-size:32px; line-height:40px; font-weight:500; letter-spacing:-1px; white-space:nowrap; }
#root .cx-app .cx-workspace-editor-toolbar .cx-workspace-actions { margin-left:auto; justify-content:flex-end; }
#root .cx-app .cx-chat-dock,
#root .cx-app .cx-workspace-two-panels > .cx-chat-dock { margin-bottom:8px; }

/* Compact section controls share the editor action row with Expand. */
#root .cx-app .cx-workspace-sidebar-tools { display:flex; align-items:center; flex:0 0 auto; }
#root .cx-app .cx-side-tabs--toolbar { position:static!important; display:flex!important; flex-direction:row!important; align-items:center!important; gap:8px!important; padding:0!important; margin:0!important; background:none!important; border:0!important; }
#root .cx-app .cx-side-tabs--toolbar .cx-side-tab { flex:0 0 auto!important; flex-direction:row!important; gap:7px; width:auto!important; min-width:0!important; min-height:42px; padding:8px 10px!important; border:0!important; border-radius:8px!important; background:#f8f9f5!important; color:#232722!important; font-size:14px!important; letter-spacing:0!important; box-shadow:none!important; }
#root .cx-app .cx-side-tabs--toolbar .cx-side-tab[aria-selected="true"] { background:#293027!important; color:#f8f9f5!important; }
#root .cx-app .cx-workspace-editor-toolbar .cx-workspace-actions { flex-wrap:nowrap; align-items:center; max-width:100%; }
#root .cx-app .cx-workspace-editor-toolbar .cx-workspace-actions > button,
#root .cx-app .cx-workspace-layout-options { flex-shrink:0; }
#root .cx-app .cx-workspace-sidebar-tools { min-width:0; flex-shrink:1; overflow-x:auto; }
#root .cx-app .cx-canvas-col > .cx-sidebar { left:auto!important; right:16px!important; top:12px!important; max-height:calc(100% - 24px)!important; }

#root .cx-app .cx-workspace-editor-toolbar .cx-workspace-actions { gap:6px; }
#root .cx-app .cx-workspace-editor-toolbar .cx-workspace-actions > button,
#root .cx-app .cx-workspace-editor-toolbar .cx-workspace-layout-options > summary { font-size:14px!important; padding:8px!important; }
#root .cx-app .cx-side-tabs--toolbar { gap:6px!important; }
#root .cx-app .cx-side-tabs--toolbar .cx-side-tab { padding:8px!important; gap:5px; }

/* Preview guidance is contextual rather than a permanent paragraph. */
#root .cx-app .cx-preview-info { display:inline-block; position:relative; vertical-align:middle; margin-left:8px; line-height:1; letter-spacing:0; }
#root .cx-app .cx-preview-info-button { display:inline-flex; align-items:center; justify-content:center; width:22px; height:22px; padding:0; border:1px solid #a3b394; border-radius:50%; background:transparent; color:#70776d; font-size:13px; font-weight:500; cursor:help; }
#root .cx-app .cx-preview-info-tooltip { display:none; position:absolute; z-index:80; top:100%; left:-120px; width:260px; max-width:calc(100vw - 64px); padding:12px 14px; border:1px solid #d5dbd0; border-radius:10px; background:#f8f9f5; color:#70776d; box-shadow:0 4px 18px #23272216; font-size:14px; font-weight:400; line-height:1.5; letter-spacing:0; text-transform:none; white-space:normal; }
#root .cx-app .cx-preview-info:hover .cx-preview-info-tooltip,
#root .cx-app .cx-preview-info:focus-within .cx-preview-info-tooltip { display:block; }

#root .cx-app .cx-prev-l:has(.cx-preview-info) { overflow:visible!important; }

/* Live embroidery node and SVG stitch inspection. */
.cx-stitch-controls { display: grid; gap: 16px; }
.cx-stitch-note { margin: 0; font-size: 12px; line-height: 1.5; color: var(--muted, #596052); }
.cx-stitch-field { display: grid; gap: 8px; font-size: 13px; line-height: 1.4; }
.cx-stitch-field > span { display: flex; justify-content: space-between; gap: 12px; }
.cx-stitch-field output { font-variant-numeric: tabular-nums; }
.cx-stitch-field input[type=range] { width: 100%; min-height: 24px; margin: 0; accent-color: #486342; }
.cx-stitch-field input:disabled { opacity: .4; cursor: not-allowed; }
.cx-stitch-color, .cx-stitch-check { display: flex; align-items: center; gap: 10px; min-height: 32px; font-size: 13px; }
.cx-stitch-color { justify-content: space-between; }
.cx-stitch-color input { width: 56px; height: 32px; padding: 2px; border: 1px solid #bac4b3; background: transparent; border-radius: 6px; cursor: pointer; }
.cx-stitch-check input { width: 18px; height: 18px; accent-color: #486342; }
.cx-stitch-controls :is(input, select):focus-visible { outline: 2px solid #2c4924; outline-offset: 3px; }
.cx-stitch-vessel { position: relative; max-width: 100%; min-height: 180px; overflow: hidden; border: 1px solid rgba(30, 40, 25, .12); border-radius: 8px; }
.cx-stitch-svg { display: block; width: 100%; height: 100%; }
.cx-stitch-empty { position: absolute; inset: 0; display: grid; place-content: center; margin: 0; padding: 20px; text-align: center; font-size: 13px; line-height: 1.6; }
.cx-stitch-caption { display: grid; gap: 3px; margin-top: 12px; text-align: center; font-size: 11px; line-height: 1.5; color: #4b5547; }
.cx-preview .cx-prev-bar-row-tools { flex-wrap: wrap; }
