.creator-hero{padding:34px 0 24px;border-bottom:1px solid #f0f0ed}
.creator-hero h1{font-size:52px;line-height:1.04;letter-spacing:-.035em;margin:0 0 10px;font-weight:700}
.creator-hero p{margin:0;color:#6f6f6f;font-size:14px;line-height:1.7;max-width:850px}
.creator-shell{width:min(1460px,calc(100% - 44px));margin:0 auto}
.creator-actions{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid #ececea}
.creator-actions-inner{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px 0}
.creator-btn,.creator-select{height:36px;border:1px solid #d8d8d5;border-radius:999px;background:#fff;color:#333;padding:0 13px;font-family:inherit;font-size:11px;font-weight:600;cursor:pointer}
.creator-btn:hover,.creator-select:hover{border-color:#111;color:#111}
.creator-btn.primary{background:#111;color:#fff;border-color:#111}.creator-btn.primary:hover{background:#ef4a0b;border-color:#ef4a0b}
.creator-btn.export{border-color:#bbb}.creator-btn.danger:hover{border-color:#b42318;color:#b42318}
.creator-select{min-width:185px;max-width:260px}
.creator-save-state{margin-left:auto;font-size:10.5px;color:#8b8b8b;white-space:nowrap}
.creator-save-state.saved{color:#41845a}
.creator-workbench{--creator-preview-height:720px;--creator-editor-offset:0px;display:grid!important;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start;padding:26px 0 72px}
.creator-editor{display:block!important;width:100%!important;max-width:none!important;margin-top:var(--creator-editor-offset);border:1px solid #e1e1de;border-radius:18px;background:#fff;overflow:auto;position:sticky;top:58px;height:var(--creator-preview-height);max-height:var(--creator-preview-height);scrollbar-gutter:stable}
.creator-editor-head{padding:13px 13px 11px;border-bottom:1px solid #ececea;background:#fafaf8;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;position:sticky;top:0;z-index:3}.creator-editor-head-copy{min-width:0;flex:1}.creator-editor-size{flex:0 0 auto;border:1px solid #d8d8d5;border-radius:999px;background:#fff;color:#555;height:29px;padding:0 9px;display:inline-flex;align-items:center;gap:5px;font:inherit;font-size:9px;font-weight:700;cursor:pointer}.creator-editor-size:hover{border-color:#111;color:#111}.creator-editor-size-icon{font-size:12px;line-height:1}.creator-editor-size-label{white-space:nowrap}
.creator-editor-head h2{font-size:17px;margin:0 0 4px;letter-spacing:-.025em}.creator-editor-head p{font-size:9.5px;line-height:1.45;color:#777;margin:0}
.creator-section{border-bottom:1px solid #ececea}.creator-section:last-child{border-bottom:0}
.creator-section>summary{list-style:none;cursor:pointer;padding:11px 13px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10.5px;font-weight:700;background:#fff}
.creator-section>summary::-webkit-details-marker{display:none}.creator-section>summary:after{content:"+";font-size:15px;color:#999}.creator-section[open]>summary:after{content:"−"}
.creator-section[open]>summary{background:#fafaf8}
.creator-section-body{padding:12px 13px 15px;max-width:none}
.creator-grid-2{display:grid;grid-template-columns:1fr;gap:8px}
.creator-field{margin-bottom:9px}.creator-field:last-child{margin-bottom:0}
.creator-field label,.creator-field-label{display:flex;justify-content:space-between;gap:12px;margin-bottom:4px;font-size:9px;font-weight:700;color:#555}
.creator-field label span,.creator-field-label span{font-weight:500;color:#aaa}.char-count{font-variant-numeric:tabular-nums;white-space:nowrap}.char-count.over{color:#ef4a0b!important;font-weight:700!important}
.creator-field input,.creator-field textarea,.creator-field select{width:100%;border:1px solid #dcdcd8;border-radius:11px;background:#fff;padding:7px 8px;font:inherit;font-size:10.5px;color:#111;outline:none;transition:.12s}
.creator-field input:focus,.creator-field textarea:focus,.creator-field select:focus{border-color:#111;box-shadow:0 0 0 3px rgba(0,0,0,.035)}
.creator-field input.warn{border-color:#ef4a0b;background:#fff9f6}.creator-field textarea{min-height:58px;resize:vertical;line-height:1.5}
.creator-question{font-size:8.5px;color:#9a9a9a;line-height:1.35;margin:-1px 0 5px}
.field-note{margin-top:5px}.field-note summary{cursor:pointer;list-style:none;font-size:8.5px;color:#888;font-weight:600}.field-note summary::-webkit-details-marker{display:none}.field-note summary:before{content:"+ ";color:#ef4a0b}.field-note[open] summary:before{content:"− "}
.role-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:7px}.role-owner-dot{background:var(--owner)}.role-provider-dot{background:var(--provider)}.role-consumer-dot{background:var(--consumer)}.role-partner-dot{background:var(--partner)}
.creator-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 0 10px}.creator-toggle-row span{font-size:9.5px;color:#666}.creator-toggle-row input{width:18px;height:18px;accent-color:#111}
.flow-list{display:flex;flex-direction:column;gap:7px}.flow-row{border:1px solid #e4e4e1;border-radius:11px;padding:8px;background:#fafaf8}.flow-row-grid{display:grid;grid-template-columns:1fr 24px 1fr;gap:7px;align-items:center}.flow-arrow-mini{text-align:center;color:#999}.flow-row input,.flow-row select{width:100%;height:31px;border:1px solid #d9d9d6;border-radius:9px;background:#fff;padding:0 8px;font:inherit;font-size:9.5px}.flow-row-bottom{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:7px}.flow-remove{border:0;background:transparent;color:#aaa;font-size:16px;cursor:pointer}.flow-remove:hover{color:#b42318}
.add-flow{margin-top:11px;width:100%}
.creator-preview{display:block!important;width:100%!important;max-width:none!important;min-width:0;grid-column:1}.creator-preview-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:0 0 13px}.creator-preview-head h2{font-size:30px;line-height:1.15;margin:0 0 5px;letter-spacing:-.03em}.creator-preview-head p{font-size:12px;color:#777;margin:0;max-width:700px}
.creator-preview-badge{border:1px solid #dededb;border-radius:999px;padding:7px 11px;font-size:10px;color:#777;white-space:nowrap}
.creator-preview .canvas-stage{padding:18px 14px 13px;border-radius:24px}.creator-preview .svg-frame{overflow:auto}.creator-preview #pbmcSvg{min-width:980px}
.canvas-attribution-meta{font-size:6.4px;letter-spacing:.04em;fill:#9b9690;font-weight:500}
.creator-help{margin-top:11px;font-size:10px;line-height:1.6;color:#999;text-align:center}
.creator-workbench.editor-wide{grid-template-columns:1fr}.creator-workbench.editor-wide .creator-preview{grid-column:1}.creator-workbench.editor-wide .creator-editor{grid-column:1;position:relative;top:auto;height:var(--creator-preview-height);max-height:var(--creator-preview-height);margin-top:0}.creator-workbench.editor-wide .creator-editor-size-icon{transform:rotate(180deg)}
.creator-footer-note{padding:0 0 70px;color:#858585;font-size:11px;line-height:1.7;max-width:850px}
.creator-toast{position:fixed;right:22px;bottom:22px;z-index:200;background:#111;color:#fff;border-radius:999px;padding:10px 15px;font-size:11px;opacity:0;transform:translateY(10px);pointer-events:none;transition:.18s}.creator-toast.show{opacity:1;transform:none}
.creator-modal{position:fixed;inset:0;z-index:180;background:rgba(0,0,0,.34);display:none;align-items:center;justify-content:center;padding:20px}.creator-modal.show{display:flex}.creator-modal-card{width:min(520px,100%);max-height:80vh;overflow:auto;background:#fff;border-radius:22px;padding:22px;box-shadow:0 25px 70px rgba(0,0,0,.25)}.creator-modal-card h3{margin:0 0 12px;font-size:22px}.creator-modal-card p{font-size:12px;line-height:1.6;color:#777}.draft-list{display:flex;flex-direction:column;gap:8px;margin:15px 0}.draft-item{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;border:1px solid #e2e2df;border-radius:13px;padding:11px}.draft-open{border:0;background:transparent;text-align:left;cursor:pointer}.draft-open strong{display:block;font-size:12px}.draft-open span{font-size:9.5px;color:#999}.draft-delete{border:0;background:transparent;color:#aaa;cursor:pointer}.draft-delete:hover{color:#b42318}
@media(max-width:1000px){.creator-workbench{display:block!important}.creator-editor{position:relative;top:auto;height:var(--creator-preview-height);max-height:var(--creator-preview-height);margin-top:26px;overflow:auto}.creator-workbench.editor-wide .creator-editor{height:auto;max-height:none;overflow:visible}.creator-grid-2{grid-template-columns:1fr 1fr}.creator-section-body{max-width:980px}.creator-preview #pbmcSvg{min-width:900px}}
@media(max-width:820px){.creator-shell{width:calc(100% - 28px)}.creator-hero{padding:25px 0 19px}.creator-hero h1{font-size:40px}.creator-workbench{padding-top:18px}.creator-grid-2{grid-template-columns:1fr}.creator-preview-head{align-items:flex-start}.creator-preview-head h2{font-size:26px}.creator-preview #pbmcSvg{min-width:850px}.creator-save-state{width:100%;margin-left:0}.creator-actions{position:relative}.creator-actions-inner{padding:9px 0}}
@media(max-width:520px){.creator-hero h1{font-size:35px}.creator-btn,.creator-select{height:34px;font-size:10.5px}.creator-select{max-width:100%;flex:1}.creator-preview-head{display:block}.creator-preview-badge{display:inline-block;margin-top:8px}.creator-preview .canvas-stage{border-radius:18px;padding:10px 8px}.creator-preview #pbmcSvg{min-width:780px}.creator-editor-head{padding:17px}.creator-section>summary{padding:14px 16px}.creator-section-body{padding:15px 16px 18px}}


/* v3.06 — compact creator tools aligned above the editor */
.creator-actions{display:none!important}
.creator-workbench-head{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:end;margin:0 0 13px}
.creator-workbench-head .creator-preview-head{margin:0;min-width:0}
.creator-compact-tools{min-width:0;display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-end;gap:5px}
.creator-tool-buttons{display:flex;align-items:center;justify-content:flex-end;gap:5px;width:100%}
.creator-tool-btn,.creator-tool-menu>summary{height:28px;border:1px solid #d8d8d5;border-radius:999px;background:#fff;color:#555;padding:0 9px;font-family:inherit;font-size:9px;font-weight:700;line-height:26px;cursor:pointer;white-space:nowrap;box-sizing:border-box;list-style:none}
.creator-tool-menu>summary::-webkit-details-marker{display:none}
.creator-tool-btn:hover,.creator-tool-menu>summary:hover,.creator-tool-menu[open]>summary{border-color:#111;color:#111}
.creator-tool-btn.primary{background:#111;border-color:#111;color:#fff}.creator-tool-btn.primary:hover{background:#ef4a0b;border-color:#ef4a0b;color:#fff}
.creator-tool-menu{position:relative}
.creator-tool-popover{position:absolute;right:0;top:34px;z-index:60;width:218px;padding:8px;border:1px solid #dededb;border-radius:13px;background:#fff;box-shadow:0 16px 40px rgba(0,0,0,.11);display:flex;flex-direction:column;gap:5px}
.creator-export-popover{width:116px}
.creator-tool-label{font-size:8px;font-weight:700;color:#999;padding:2px 5px 0}
.creator-tool-select{width:100%;height:31px;border:1px solid #dddcd8;border-radius:9px;background:#fff;padding:0 8px;font:inherit;font-size:9.5px;color:#333;outline:none}
.creator-tool-item{width:100%;min-height:31px;border:0;border-radius:8px;background:#fff;color:#444;padding:7px 8px;text-align:left;font:inherit;font-size:9.5px;font-weight:600;cursor:pointer}.creator-tool-item:hover{background:#f5f5f2;color:#111}
.creator-compact-tools .creator-save-state{margin:0 3px 0 0;width:auto;font-size:8.5px;line-height:1.2;color:#aaa;text-align:right}.creator-compact-tools .creator-save-state.saved{color:#41845a}
.creator-preview-head{margin:0}
.creator-workbench{padding-top:26px}
.creator-workbench.editor-wide .creator-workbench-head{grid-template-columns:minmax(0,1fr) 340px}

@media(max-width:1000px){
  .creator-workbench-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:12px}
  .creator-preview-head{flex:1;min-width:0}
  .creator-compact-tools{flex:0 0 auto}
}
@media(max-width:700px){
  .creator-workbench-head{display:block}
  .creator-preview-head{margin-bottom:10px}
  .creator-compact-tools{align-items:flex-start}
  .creator-tool-buttons{justify-content:flex-start;flex-wrap:wrap}
  .creator-compact-tools .creator-save-state{text-align:left;margin-left:2px}
  .creator-tool-popover{left:0;right:auto}
  .creator-export-popover{left:auto;right:0}
}


/* v3.07 — tighten tool row to canvas/editor */
.creator-workbench{column-gap:22px;row-gap:5px}
.creator-workbench-head{margin-bottom:0}
@media(max-width:1000px){.creator-workbench-head{margin-bottom:4px}}
@media(max-width:700px){.creator-workbench-head{margin-bottom:5px}.creator-preview-head{margin-bottom:5px}}


/* v3.08 — PBMC Assistant */
.creator-editor-head-actions{display:flex;align-items:center;gap:5px;min-width:0}
.creator-ai-trigger{height:26px;border:1px solid #d9d9d6;border-radius:999px;background:#fff;padding:0 8px;font:inherit;font-size:8.5px;font-weight:700;color:#333;cursor:pointer;white-space:nowrap;transition:.15s}
.creator-ai-trigger span{color:#ef4a0b;margin-right:2px}.creator-ai-trigger:hover{border-color:#111;background:#111;color:#fff}.creator-ai-trigger:hover span{color:#fff}
.creator-editor-head .creator-editor-size{flex:0 0 auto}
.creator-question{position:relative}.creator-field-ai{margin-left:6px;border:0;background:transparent;padding:0;font:inherit;font-size:8px;font-weight:700;color:#a0a0a0;cursor:pointer;opacity:0;transition:.12s}.creator-field:focus-within .creator-field-ai,.creator-field:hover .creator-field-ai{opacity:1}.creator-field-ai:hover{color:#ef4a0b}
.creator-ai-modal{position:fixed;inset:0;z-index:260;display:none;align-items:center;justify-content:center;padding:22px;background:rgba(0,0,0,.34);backdrop-filter:blur(2px)}
.creator-ai-modal.show{display:flex}.creator-ai-card{width:min(760px,100%);max-height:min(82vh,900px);display:flex;flex-direction:column;background:#fff;border-radius:24px;box-shadow:0 28px 90px rgba(0,0,0,.24);overflow:hidden}
.creator-ai-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px 17px;border-bottom:1px solid #ecece8}.creator-ai-kicker{display:block;margin-bottom:4px;font-size:8.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#ef4a0b}.creator-ai-head h2{margin:0;font-size:24px;letter-spacing:-.03em}.creator-ai-close{width:31px;height:31px;border:1px solid #dededb;border-radius:50%;background:#fff;font-size:20px;line-height:27px;color:#777;cursor:pointer}.creator-ai-close:hover{border-color:#111;color:#111}
.creator-ai-body{padding:22px 24px 25px;overflow:auto}.creator-ai-intro{margin:0 0 17px;font-size:11.5px;line-height:1.6;color:#777;max-width:640px}
.creator-ai-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.creator-ai-action{min-height:118px;border:1px solid #dfdfdc;border-radius:16px;background:#fff;padding:15px;text-align:left;cursor:pointer;transition:.15s}.creator-ai-action:hover{border-color:#111;transform:translateY(-1px)}.creator-ai-action strong{display:block;margin-bottom:7px;font-size:12px;color:#111}.creator-ai-action span{display:block;font-size:10px;line-height:1.5;color:#858585}.creator-ai-action .ai-mark{margin-bottom:10px;font-size:14px;color:#ef4a0b}
.creator-ai-privacy{margin-top:16px;padding-top:13px;border-top:1px solid #eee;font-size:9px;line-height:1.55;color:#9a9a9a}
.creator-ai-back{border:0;background:transparent;padding:0 0 12px;font:inherit;font-size:9.5px;font-weight:700;color:#777;cursor:pointer}.creator-ai-back:hover{color:#111}
.creator-ai-form{display:grid;gap:13px}.creator-ai-form label{display:block;margin-bottom:5px;font-size:9px;font-weight:700;color:#555}.creator-ai-form label span{font-weight:500;color:#aaa}.creator-ai-form input,.creator-ai-form textarea{width:100%;border:1px solid #dcdcd8;border-radius:12px;background:#fff;padding:9px 10px;font:inherit;font-size:11px;color:#111;outline:none}.creator-ai-form textarea{min-height:100px;resize:vertical;line-height:1.5}.creator-ai-form input:focus,.creator-ai-form textarea:focus{border-color:#111;box-shadow:0 0 0 3px rgba(0,0,0,.035)}
.creator-ai-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:3px}.creator-ai-btn{height:34px;border:1px solid #d9d9d5;border-radius:999px;background:#fff;padding:0 13px;font:inherit;font-size:9.5px;font-weight:700;color:#444;cursor:pointer}.creator-ai-btn.primary{background:#111;border-color:#111;color:#fff}.creator-ai-btn.primary:hover{background:#ef4a0b;border-color:#ef4a0b}.creator-ai-btn:disabled{opacity:.45;cursor:default}
.creator-ai-loading{display:flex;align-items:center;gap:10px;padding:28px 0;color:#666;font-size:11px}.creator-ai-spinner{width:18px;height:18px;border:2px solid #e6e6e2;border-top-color:#ef4a0b;border-radius:50%;animation:creatorAiSpin .8s linear infinite}@keyframes creatorAiSpin{to{transform:rotate(360deg)}}
.creator-ai-summary{margin:0 0 14px;font-size:11.5px;line-height:1.55;color:#555}.creator-ai-result-actions{display:flex;justify-content:flex-end;gap:7px;margin-bottom:14px}.creator-ai-group{margin-top:15px}.creator-ai-group h3{margin:0 0 7px;font-size:10px;letter-spacing:.02em;text-transform:uppercase;color:#777}.creator-ai-suggestion{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border-top:1px solid #ecece8;padding:10px 2px}.creator-ai-suggestion:first-of-type{border-top:0}.creator-ai-suggestion-label{font-size:8.5px;font-weight:700;color:#999;margin-bottom:3px}.creator-ai-suggestion-value{font-size:11px;font-weight:700;color:#222}.creator-ai-suggestion-reason{margin-top:3px;font-size:9px;line-height:1.45;color:#888}.creator-ai-confidence{display:inline-block;margin-left:6px;font-size:7.5px;font-weight:600;color:#aaa;text-transform:uppercase}.creator-ai-accept{height:27px;border:1px solid #dddcd8;border-radius:999px;background:#fff;padding:0 9px;font:inherit;font-size:8.5px;font-weight:700;cursor:pointer}.creator-ai-accept:hover{border-color:#111;background:#111;color:#fff}.creator-ai-accept.done{border-color:#bcd9c4;background:#f2faf4;color:#41845a;cursor:default}
.creator-ai-review{border-top:1px solid #ecece8;padding:12px 0}.creator-ai-review:first-of-type{border-top:0}.creator-ai-review-top{display:flex;align-items:center;gap:8px;margin-bottom:5px}.creator-ai-review strong{font-size:11px}.creator-ai-severity{border-radius:999px;padding:3px 6px;font-size:7.5px;font-weight:700;text-transform:uppercase;background:#f3f3f0;color:#777}.creator-ai-severity.issue{background:#fff1eb;color:#c84b1b}.creator-ai-severity.strong{background:#eff8f1;color:#41845a}.creator-ai-review p{margin:0;font-size:10px;line-height:1.55;color:#777}.creator-ai-review .creator-ai-accept{margin-top:8px}
.creator-ai-setup{border:1px solid #e0e0dc;border-radius:15px;padding:16px;background:#fafaf8}.creator-ai-setup h3{margin:0 0 6px;font-size:13px}.creator-ai-setup p{margin:0 0 12px;font-size:10px;line-height:1.55;color:#777}.creator-ai-setup-row{display:flex;gap:7px}.creator-ai-setup-row input{flex:1;min-width:0;height:34px;border:1px solid #d9d9d5;border-radius:10px;padding:0 9px;font:inherit;font-size:10px}
.creator-ai-error{border:1px solid #f3cfc2;border-radius:13px;background:#fff8f5;padding:12px;font-size:10px;line-height:1.55;color:#9b3d1b}
.creator-ai-transaction-review{margin-top:20px;padding-top:4px;border-top:1px solid #ecece8}.creator-ai-flow-change{display:flex;align-items:center;gap:7px;margin:2px 0 6px;font-size:10px;font-weight:700;color:#333}.creator-ai-flow-action{display:inline-flex;align-items:center;justify-content:center;min-width:43px;height:19px;padding:0 6px;border-radius:999px;background:#f3f3f0;color:#666;font-size:7.5px;font-weight:800;text-transform:uppercase;letter-spacing:.03em}.creator-ai-flow-action.add{background:#eff8f1;color:#41845a}.creator-ai-flow-action.replace{background:#fff7e6;color:#a66b00}.creator-ai-flow-action.remove{background:#fff1eb;color:#c84b1b}
@media(max-width:700px){.creator-editor-head{align-items:flex-start}.creator-editor-head-actions{flex-wrap:wrap;justify-content:flex-end}.creator-ai-trigger{font-size:8px}.creator-field-ai{opacity:1}.creator-ai-modal{padding:10px;align-items:flex-end}.creator-ai-card{max-height:90vh;border-radius:20px 20px 12px 12px}.creator-ai-head{padding:18px}.creator-ai-body{padding:17px 18px 20px}.creator-ai-actions{grid-template-columns:1fr}.creator-ai-action{min-height:86px}.creator-ai-form-actions{justify-content:stretch}.creator-ai-btn{flex:1}.creator-ai-setup-row{display:grid;grid-template-columns:1fr}}
