
:root{--bg:#f6f7f9;--paper:#fff;--ink:#20252c;--muted:#9297a2;--secondary:#727883;--border:#e9ebee;--soft:#f3f4f6;--accent:#ee6947;--accent-hover:#dd5836;--accent-light:#fff1eb;--navy:#122941;--green:#25856a;--radius:12px;--shadow:0 12px 45px #1a243412;--font:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif}
*{box-sizing:border-box}html,body{margin:0;height:100%;font-family:var(--font);color:var(--ink);font-size:13px;background:var(--bg)}button,input,textarea,select{font:inherit}button{cursor:pointer;color:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{border:0;background:none}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible{outline:3px solid #ee694777;outline-offset:3px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #ee694744;outline-offset:1px}button svg{flex-shrink:0}input,textarea,select{color:var(--ink)}::selection{background:#fee0cf}svg{display:block}h1,h2,h3,p{margin:0}button{transition:background .16s,color .16s,box-shadow .16s,transform .16s}button:not(:disabled):active{transform:translateY(1px)}.icon{width:18px;height:18px;stroke:currentColor;stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round;display:inline-block;vertical-align:middle}.icon.small{width:15px;height:15px}.icon-btn{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;color:var(--secondary)}.icon-btn:hover{background:var(--soft);color:var(--ink)}.icon-btn.active{background:var(--accent-light);color:var(--accent)}.btn{height:34px;display:inline-flex;gap:7px;align-items:center;justify-content:center;padding:0 13px;border-radius:8px;font-size:12px;font-weight:550;white-space:nowrap;border:1px solid transparent}.btn.primary{background:var(--accent);color:white;box-shadow:0 3px 6px #dc59351a}.btn.primary:hover{background:var(--accent-hover);box-shadow:0 4px 12px #d7573229}.btn.outline{border-color:#dfe2e7;background:#fff}.btn.outline:hover{background:#f8f9fb}.btn.ghost:hover{background:var(--soft)}.btn.dark{background:var(--navy);color:white}.muted{color:var(--muted)}.small{font-size:11px}.uppercase{font-size:10px;letter-spacing:1.4px}.divider{height:20px;width:1px;background:var(--border);margin:0 5px}.chip{display:inline-flex;align-items:center;gap:4px;padding:3px 7px;border-radius:5px;background:#f3f4f6;color:#79818b;font-size:10px;white-space:nowrap}.chip.green{background:#eaf6f0;color:#308a6c}.chip.orange{background:var(--accent-light);color:#c56645}.dot{width:5px;height:5px;border-radius:50%;display:inline-block;background:currentColor}.hide{display:none!important}
/* Application shell */
.app{height:100dvh;min-height:660px;display:grid;grid-template-rows:64px minmax(0,1fr);overflow:hidden}.topbar{display:flex;align-items:center;background:#fff;border-bottom:1px solid var(--border);z-index:20;gap:0}.brand{width:252px;flex-shrink:0;display:flex;gap:10px;align-items:center;padding:0 22px;text-align:left;height:64px;border-right:1px solid var(--border)}.brand-icon{width:31px;height:34px;position:relative;display:block}.brand-icon i{position:absolute;display:block;background:var(--accent);width:19px;height:23px;transform:skewY(-10deg);border-radius:3px;top:4px}.brand-icon i:first-child{left:1px;background:#fbd3c6}.brand-icon i:nth-child(2){left:6px;background:#f5a185}.brand-icon i:last-child{left:11px;background:#e86b49}.brand-title{font-size:20px;letter-spacing:3px;font-weight:700;line-height:1.15}.brand-subtitle{font-size:9px;letter-spacing:1.5px;color:#9b9ca5;margin-top:4px}.project-switch{display:flex;align-items:center;gap:10px;margin-left:22px;padding:8px 10px;border-radius:8px;max-width:335px;overflow:hidden}.project-switch:hover{background:var(--soft)}.project-switch .name{font-size:13px;font-weight:580;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-switch .project-icon{color:var(--secondary)}.save-state{display:flex;gap:5px;align-items:center;font-size:10px;color:#9198a1;margin-left:8px}.save-state .icon{color:#81a08c;width:14px;height:14px}.top-spacer{flex:1}.search-launch{height:30px;display:flex;align-items:center;gap:9px;font-size:11px;color:#9b9faa;padding:0 9px;border:1px solid var(--border);border-radius:7px;margin-right:16px}.search-launch kbd{font-family:var(--font);font-size:9px;border:1px solid var(--border);padding:1px 3px;border-radius:3px}.demo-badge{font-size:10px;display:flex;align-items:center;gap:5px;color:#967965;white-space:nowrap;margin-right:17px}.demo-badge .dot{background:#d4ac75}.topbar .export{margin-right:18px}.avatar{height:30px;width:30px;border-radius:50%;background:#172c42;color:#fff;display:grid;place-items:center;font-size:10px;margin-right:23px;border:3px solid #f1f3f5}.workspace{display:grid;grid-template-columns:252px minmax(400px,1fr) 320px;min-height:0;position:relative}.sidebar{border-right:1px solid var(--border);display:flex;flex-direction:column;background:#fcfcfd;min-height:0;overflow:hidden}.side-top{padding:22px 17px 17px}.workspace-label{display:flex;justify-content:space-between;align-items:center;color:#a1a5ae;font-size:10px;letter-spacing:1.2px;margin:0 9px 13px}.side-nav{width:100%;display:flex;align-items:center;gap:11px;text-align:left;height:38px;padding:0 11px;border-radius:7px;margin:3px 0;color:#7c828d;font-size:12px}.side-nav:hover{background:#f0f1f4}.side-nav.active{background:#f2f1f0;color:#353434;font-weight:600}.side-nav.active .icon{color:var(--accent)}.side-nav .counter{margin-left:auto;font-size:10px;background:#e8e8e7;padding:2px 6px;border-radius:4px;color:#7f8287}.tree-toolbar{display:flex;align-items:center;justify-content:space-between;padding:15px 20px 8px;border-top:1px solid var(--border)}.tree-toolbar span{color:#80848d;font-size:11px;letter-spacing:.3px}.tree-toolbar .icon-btn{height:24px;width:24px}.tree-subnote{font-size:10px;color:#b3b7bd;margin:0 20px 15px}.tree{overflow-y:auto;overflow-x:hidden;flex:1;padding:0 9px 12px;scrollbar-width:thin;scrollbar-color:#e4e6e8 transparent}.tree-row{height:39px;display:flex;align-items:center;gap:6px;position:relative;border-radius:7px;margin:2px 0;width:100%;text-align:left;padding-right:8px;font-size:11px;color:#7b818b}.tree-row:hover{background:#f2f3f6}.tree-row.selected{background:#fff0e8;color:#b6563b;font-weight:600}.tree-row.selected:before{content:"";position:absolute;left:0;width:3px;height:18px;background:var(--accent);border-radius:0 3px 3px 0}.tree-arrow{height:22px;width:14px;display:grid;place-items:center;color:#a4a9b2;flex:none}.tree-arrow .icon{height:12px;width:12px}.tree-arrow.empty{opacity:0}.tree-icon{color:#97a0ad;flex-shrink:0;display:flex}.tree-icon .icon{width:15px;height:15px}.tree-row.selected .tree-icon{color:var(--accent)}.tree-name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.tree-star{margin-left:auto;color:#bca47a;flex-shrink:0}.tree-star .icon{width:11px;height:11px;fill:#bca47a22}.tree-level{position:absolute;left:29px;top:-3px;height:45px;border-left:1px solid #e9ebef;pointer-events:none}.sidebar-footer{margin:9px 17px 16px;padding:15px 12px 10px;border:1px solid #e7e9ed;border-radius:10px;background:linear-gradient(130deg,#fff,#f3f5f7)}.kit-info{display:flex;justify-content:space-between;font-size:11px;margin-bottom:9px}.kit-info .muted{font-size:10px}.kit-progress{height:3px;background:#e3e6e9;border-radius:3px;overflow:hidden}.kit-progress span{display:block;height:100%;background:var(--navy);border-radius:3px;transition:width .5s}.kit-footer{font-size:10px;color:#969ca4;display:flex;justify-content:space-between;margin-top:10px}.kit-footer button{color:#53647a;font-size:10px;display:flex;align-items:center;gap:3px}
/* Center workspace */
.main{min-width:0;min-height:0;display:flex;flex-direction:column;background:#f7f8fa;position:relative;overflow:hidden}.main-toolbar{padding:22px 26px 17px;background:#fff;border-bottom:1px solid var(--border);flex-shrink:0}.title-row{display:flex;align-items:center;gap:10px;margin-bottom:16px;min-height:24px}.title-row h1{font-size:18px;font-weight:600;letter-spacing:-.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.artifact-type{font-size:10px;color:#8c929c;background:#f2f3f5;border:1px solid #e8eaed;padding:3px 6px;border-radius:4px;white-space:nowrap}.title-actions{display:flex;margin-left:auto;gap:3px;align-items:center}.star-btn{color:#b59361}.star-btn.pinned .icon{fill:#b5936122}.view-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.view-tabs{display:flex;align-items:center;padding:3px;border:1px solid #eceef1;background:#f6f7f9;border-radius:8px;gap:1px}.view-tab{height:29px;padding:0 10px;border-radius:5px;display:flex;align-items:center;justify-content:center;gap:6px;font-size:11px;color:#9399a2}.view-tab .icon{width:14px;height:14px}.view-tab:hover{color:var(--ink)}.view-tab.active{background:#fff;color:#414852;box-shadow:0 1px 4px #2222220d}.right-view-actions{display:flex;gap:5px;align-items:center}.preview-tools{display:flex;gap:4px;align-items:center}.right-view-actions .btn{height:29px;padding:0 8px;font-size:10px}.content-view{display:flex;flex-direction:column;flex:1;min-height:0;position:relative}.stage{display:flex;flex:1;min-height:0;flex-direction:column;padding:22px 28px 16px;position:relative;background-image:radial-gradient(#cbd0d665 .7px,transparent .7px);background-size:14px 14px;overflow:hidden}.breadcrumbs{display:flex;align-items:center;gap:7px;min-height:16px;color:#a7adb6;font-size:10px;position:relative;z-index:2;flex-shrink:0}.breadcrumbs button{color:#9299a3;font-size:10px;padding:0}.breadcrumbs button:hover{color:var(--accent)}.breadcrumbs .icon{width:10px;height:10px;color:#bfc3c9}.breadcrumbs span:last-child{color:#525e6c}.image-stage{display:flex;flex:1;align-items:center;justify-content:center;min-height:0;padding:25px 3px 16px;position:relative}.art-frame{width:100%;max-height:100%;position:relative;aspect-ratio:16/9;filter:drop-shadow(0 17px 16px #15223921);border-radius:3px;transition:transform .3s;will-change:transform}.art-frame>svg{width:100%;height:100%;border-radius:3px}.art-frame:after{content:"";position:absolute;inset:0;border:1px solid #00000006;border-radius:3px;pointer-events:none}.frame-tag{position:absolute;left:0;top:-21px;font-size:9px;letter-spacing:.35px;color:#a2aab3;font-variant-numeric:tabular-nums;display:flex;align-items:center;gap:5px}.frame-tag .dot{height:4px;width:4px;background:#acb6c3}.frame-tag.right{left:auto;right:0}.preview-caption{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#9da4af;flex-shrink:0;margin-top:4px}.zoom-control{display:flex;align-items:center;gap:2px;border:1px solid #e4e7eb;border-radius:7px;background:#ffffffcf;height:29px;box-shadow:0 2px 4px #26334204}.zoom-control .icon-btn{width:27px;height:25px}.zoom-control .icon{width:13px;height:13px}.zoom-control button.label{font-size:10px;color:#818995;min-width:36px;padding:0 3px}.zoom-control .vbar{height:12px;width:1px;background:var(--border)}.stage-note{display:flex;gap:5px;align-items:center;font-size:9px}.stage-note .icon{width:12px;height:12px}.filmstrip{padding:18px 25px 16px;border-top:1px solid var(--border);background:#fff;flex-shrink:0}.strip-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;font-size:11px;color:#737b87}.strip-header strong{color:#343d48;font-weight:550;margin-right:6px}.strip-header button{font-size:10px;color:#a3a8b0;display:flex;align-items:center;gap:3px}.strip-header button .icon{width:12px;height:12px}.strip-track{display:flex;gap:13px;overflow-x:auto;padding-bottom:3px;scrollbar-width:thin;scrollbar-color:#e7e9ed transparent}.thumb-card{min-width:135px;width:calc((100% - 39px)/4);flex-shrink:0;text-align:left;padding:0}.thumb-image{aspect-ratio:16/9;border-radius:5px;position:relative;background:#e9edf3;overflow:hidden;box-shadow:0 0 0 1px #00000007}.thumb-image svg{width:100%;height:100%}.thumb-card.selected .thumb-image{box-shadow:0 0 0 2px var(--accent);border:3px solid #fff}.thumb-card:hover .thumb-image{box-shadow:0 0 0 2px #f2baa7}.thumb-title{margin-top:9px;display:flex;align-items:center;font-size:10px;gap:5px;color:#66717f}.thumb-title span:first-child{max-width:calc(100% - 22px);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.thumb-title .icon{width:11px;height:11px;color:#c0a275;margin-left:auto}.thumb-meta{font-size:9px;color:#a4aab2;margin-top:3px}.new-thumb{min-height:65px;border:1px dashed #dfe3e9;display:grid;place-items:center;aspect-ratio:16/9;border-radius:5px;color:#adb4bf}.new-thumb .icon{width:24px;height:24px}.thumb-card.create:hover .new-thumb{background:var(--accent-light);border-color:#f5b09a;color:var(--accent)}
/* Derivation inspector */
.inspector{background:#fff;border-left:1px solid var(--border);display:flex;flex-direction:column;min-height:0;position:relative}.inspector-header{padding:23px 21px 19px;border-bottom:1px solid var(--border)}.inspector-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.inspector-heading h2{font-size:14px;font-weight:600;display:flex;align-items:center;gap:8px}.inspector-heading h2>.icon{color:var(--accent);width:17px;height:17px}.inspector-header p{font-size:10px;color:#a4a9b1;margin-top:8px}.inspector-scroll{flex:1;overflow:auto;padding:20px 21px 13px;scrollbar-width:thin;scrollbar-color:#e3e5e9 transparent}.field{margin-bottom:22px}.field-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;gap:8px}.field-label{font-size:11px;color:#656e7a;font-weight:550;display:flex;align-items:center;gap:6px}.field-label .step{font-size:9px;color:#b2b8c0;font-weight:400;font-variant-numeric:tabular-nums}.field-header .mini{color:#a0a7b1;font-size:9px}.parent-card{border:1px solid #e4e8ed;display:flex;align-items:center;padding:9px;border-radius:8px;gap:11px;position:relative}.parent-thumb{width:66px;aspect-ratio:16/9;overflow:hidden;border-radius:3px;background:#e9edf1;flex-shrink:0}.parent-thumb svg{width:100%;height:100%}.parent-info{min-width:0}.parent-name{font-size:11px;font-weight:550;margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.parent-note{font-size:9px;color:#a0a7b1;display:flex;align-items:center;gap:4px}.parent-card .root-symbol{width:50px;height:37px;display:grid;place-items:center;background:var(--accent-light);color:var(--accent);border-radius:5px}.primary-line{position:absolute;bottom:-12px;left:40px;height:11px;border-left:1px dashed #cbd1da}.segmented{display:flex;gap:3px;border-radius:7px;background:#f3f4f6;padding:3px}.segmented button{flex:1;height:30px;display:flex;align-items:center;justify-content:center;gap:4px;font-size:10px;color:#9096a0;border-radius:5px;border:1px solid transparent;white-space:nowrap}.segmented button.active{background:#fff;color:#535e6b;box-shadow:0 1px 5px #17223908;border-color:#e7e9ee}.segmented button.active .icon{color:var(--accent)}.segmented .icon{width:13px;height:13px}.instruction-wrap{border:1px solid #e3e6eb;border-radius:8px;overflow:hidden;transition:box-shadow .2s,border-color .2s;background:#fdfdfd}.instruction-wrap:focus-within{border-color:#ecaa94;box-shadow:0 0 0 3px #fff0e9}.instruction-wrap textarea{font-size:11px;line-height:1.95;resize:vertical;width:100%;border:0;padding:10px 11px 2px;min-height:102px;max-height:220px;outline:none!important;background:transparent}.instruction-foot{font-size:9px;display:flex;justify-content:space-between;padding:5px 10px 9px;color:#b0b5bc}.instruction-foot .icon{width:12px;height:12px;color:#aab3be}.prompt-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.prompt-chips button{font-size:9px;color:#8e969f;padding:4px 6px;border:1px solid #eceef2;border-radius:4px;background:#fff}.prompt-chips button:hover{border-color:#efb39d;color:var(--accent);background:var(--accent-light)}.references{display:flex;gap:8px;flex-wrap:wrap}.ref-thumb{width:57px;height:51px;border-radius:6px;overflow:visible;position:relative;background:#f1f4f8;border:1px solid #e7ebef;display:flex;align-items:center;justify-content:center}.ref-thumb>svg,.ref-thumb>img{width:100%;height:100%;border-radius:5px;object-fit:cover}.ref-thumb .remove{display:none;position:absolute;right:-4px;top:-5px;width:16px;height:16px;align-items:center;justify-content:center;background:#424c59;border:2px solid white;border-radius:50%;color:#fff}.ref-thumb .remove .icon{width:9px;height:9px}.ref-thumb:hover .remove,.ref-thumb:focus-within .remove{display:flex}.ref-thumb .ref-role{position:absolute;bottom:3px;left:3px;background:#ffffffea;font-size:7px;padding:2px 3px;border-radius:3px;color:#667283;max-width:46px;white-space:nowrap;overflow:hidden}.add-ref{width:57px;height:51px;border:1px dashed #d5dce4;border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#a9b0ba;font-size:8px}.add-ref:hover{color:var(--accent);border-color:var(--accent);background:#fff8f5}.add-ref .icon{width:17px;height:17px}.ref-note{font-size:9px;color:#abb1b9;line-height:1.6;margin-top:8px}.config-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:15px 0}.config-item label{display:block;font-size:10px;color:#979faa;margin-bottom:7px}.config-item select{width:100%;border:1px solid #e2e6ed;border-radius:6px;background:#fff;height:32px;padding:0 7px;font-size:10px}.inherit-header{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #f0f1f4;padding-top:15px;margin-bottom:10px;font-size:10px;color:#929aa5}.inherit-row{display:flex;align-items:center;justify-content:space-between;margin:11px 0;font-size:10px;color:#7d8691}.switch{height:17px;width:29px;background:#d9dee4;border-radius:20px;position:relative;flex-shrink:0}.switch:after{content:"";position:absolute;left:3px;top:3px;height:11px;width:11px;background:#fff;border-radius:50%;box-shadow:0 1px 2px #0002;transition:transform .2s}.switch.on{background:#587368}.switch.on:after{transform:translateX(12px)}.model-pill{display:flex;align-items:center;justify-content:space-between;color:#8e97a1;margin-top:18px;font-size:10px}.model-pill span:last-child{font-size:9px;background:#f6f7f9;border:1px solid #eceef2;padding:5px 7px;border-radius:5px;color:#737e8a}.inspector-bottom{padding:15px 21px 14px;border-top:1px solid var(--border);background:#fff;flex-shrink:0}.derive-button{width:100%;height:42px;font-size:12px;gap:8px}.derive-button .icon{width:17px;height:17px}.derive-button .kbd{margin-left:auto;font-size:9px;opacity:.65;font-weight:400}.derive-button .button-text{margin-right:auto}.derive-footnote{text-align:center;font-size:9px;color:#acb2ba;margin-top:9px;display:flex;justify-content:center;gap:4px;align-items:center}.derive-footnote .icon{width:11px;height:11px}
/* Graph and comparison */
.graph-view{position:relative;flex:1;min-height:0;overflow:hidden;background-image:radial-gradient(#cad2dd 1px,transparent 1px);background-size:20px 20px;cursor:grab;touch-action:none}.graph-view:active{cursor:grabbing}.graph-scene{position:absolute;transform-origin:0 0;top:0;left:0;width:1300px;height:800px;will-change:transform}.graph-lines{position:absolute;inset:0;width:1300px;height:800px;pointer-events:none}.graph-node{position:absolute;width:183px;text-align:left;background:#fff;border:1px solid #e2e7ef;box-shadow:0 5px 12px #19325208;border-radius:9px;padding:6px;transition:border-color .2s,box-shadow .2s}.graph-node:hover{border-color:#afbac8;box-shadow:0 8px 22px #19325214}.graph-node.selected{border:2px solid var(--accent);padding:5px;box-shadow:0 0 0 4px #ee694714}.graph-node:before,.graph-node:after{content:"";position:absolute;left:-4px;top:50%;width:6px;height:6px;background:#c8d0dd;border:1.5px solid white;border-radius:50%}.graph-node:after{left:auto;right:-4px}.graph-node svg{width:100%;height:96px;border-radius:5px}.graph-node-info{padding:8px 4px 5px;font-size:10px;display:flex;align-items:center;gap:6px}.graph-node-info .icon{width:12px;height:12px;color:#aaa}.graph-node-info .chip{font-size:8px;margin-left:auto;padding:2px 4px}.graph-node-label{position:absolute;font-size:10px;letter-spacing:1px;color:#a1aab6;white-space:nowrap}.graph-caption{position:absolute;top:20px;left:25px;z-index:3;display:flex;gap:13px;align-items:center;background:#ffffffeb;padding:8px 12px;border:1px solid #e5eaf0;border-radius:7px;font-size:9px;color:#909aa7}.line-demo{width:15px;height:0;border-top:1px solid #9da9bd;display:inline-block;margin-right:5px;vertical-align:middle}.line-demo.dashed{border-top:1px dashed var(--accent)}.graph-controls{position:absolute;bottom:18px;right:22px;z-index:3}.graph-open{position:absolute;bottom:20px;left:25px;z-index:3;font-size:10px;color:#a0a8b4}.compare-view{flex:1;min-height:0;overflow:auto;padding:26px;background-image:radial-gradient(#cbd0d655 .8px,transparent .8px);background-size:14px 14px}.compare-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.compare-header p{font-size:11px;color:#8993a0}.compare-header select{width:200px;max-width:50%;padding:8px;border:1px solid #dfe4eb;border-radius:7px;background:#fff;font-size:11px}.compare-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start;margin-top:60px}.compare-card{min-width:0}.compare-card>svg{width:100%;height:auto;border-radius:4px;box-shadow:0 14px 25px #1a2c411a}.compare-label{display:flex;align-items:center;justify-content:space-between;font-size:11px;margin:13px 0}.compare-label small{font-size:9px;color:#a4aeba}.compare-details{font-size:10px;line-height:1.9;color:#8a95a3;background:#ffffff99;padding:12px 14px;border:1px solid #e4e9ef;border-radius:8px}.compare-strip{margin-top:25px;padding:15px 18px;background:#fff;border:1px solid #e3e8ee;border-radius:9px;display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#7e8895}.compare-strip span{display:flex;align-items:center;gap:7px}.compare-strip .icon{color:var(--green);width:14px;height:14px}
/* Other project surfaces */
.library,.brief-view{padding:28px 30px;overflow:auto;flex:1}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:26px}.page-heading h1{font-size:24px;font-weight:550;letter-spacing:-.5px}.page-heading p{margin-top:8px;font-size:11px;color:#99a1ab;line-height:1.8}.library-tools{display:flex;gap:8px;margin-bottom:20px}.library-tools button{font-size:11px;padding:7px 12px;border-radius:6px;color:#9aa2ad}.library-tools button.active{background:#e9ecf0;color:#4e5a6a}.material-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:19px}.material-card{background:#fff;border:1px solid #e5e9ee;border-radius:10px;overflow:hidden}.material-image{width:100%;aspect-ratio:1.45;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#edf0f4}.material-image svg,.material-image img{width:100%;height:100%;object-fit:cover}.material-info{padding:12px;display:flex;flex-direction:column;gap:7px}.material-info strong{font-size:11px;font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-info .meta{display:flex;align-items:center;justify-content:space-between;color:#a4acb6;font-size:9px}.drop-zone{border:1px dashed #ced6e1;border-radius:10px;min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#ffffff60;color:#9fa8b4;cursor:pointer;text-align:center;padding:15px}.drop-zone:hover,.drop-zone.drag{border-color:var(--accent);color:var(--accent);background:#fff5ef}.drop-zone>.icon{width:29px;height:29px}.drop-zone p{font-size:11px}.drop-zone small{font-size:9px;color:#a9b0b9}.library-notice{margin-top:24px;padding:14px 18px;border:1px solid #e7e9ef;border-radius:8px;color:#939dab;line-height:1.8;font-size:10px;background:#fff}.brief-form{max-width:800px}.brief-block{background:white;border:1px solid #e4e8ed;border-radius:12px;margin-bottom:20px;overflow:hidden}.brief-block-header{padding:18px 22px;border-bottom:1px solid #eef0f3;font-size:12px;display:flex;align-items:center;gap:9px}.brief-block-header .icon{width:16px;height:16px;color:#8f9dae}.brief-block-content{padding:22px}.form-label{display:block;color:#85909d;font-size:11px;margin-bottom:9px}.text-input{width:100%;background:#fafbfc;border:1px solid #e2e6ed;border-radius:7px;padding:10px 11px;font-size:12px}.brief-block textarea{width:100%;min-height:110px;resize:vertical;line-height:1.9;background:#fafbfc;border:1px solid #e2e6ed;border-radius:7px;padding:10px 11px;font-size:12px}.palette-row{display:flex;gap:13px;align-items:center}.palette-color{border:1px solid #e4e8ed;border-radius:7px;display:flex;align-items:center;gap:8px;padding:8px 10px;font-size:11px}.palette-color input{width:26px;height:26px;border:0;padding:0;background:none;border-radius:5px;cursor:pointer}.principles{display:flex;gap:8px;flex-wrap:wrap;margin-top:17px}.principles .chip{font-size:10px;background:#f6f7f9;color:#7f8a98;padding:6px 9px}.full-main .workspace{grid-template-columns:252px minmax(400px,1fr)}.full-main .inspector{display:none}.welcome{flex:1;display:flex;align-items:center;justify-content:center;text-align:center;padding:40px;flex-direction:column;background-image:radial-gradient(#cbd0d655 1px,transparent 1px);background-size:20px 20px}.welcome-art{position:relative;width:240px;height:140px;margin-bottom:38px}.welcome-art i{position:absolute;border:1px solid #dce2e9;border-radius:9px;width:160px;aspect-ratio:16/9;background:#f0f3f7;left:40px;top:26px;box-shadow:0 8px 18px #1d355116;transform:rotate(-12deg)}.welcome-art i:nth-child(2){transform:rotate(8deg);background:#dce6f7}.welcome-art i:nth-child(3){transform:none;background:linear-gradient(130deg,#142e4f,#5486ba);display:grid;place-items:center}.welcome-art .icon{width:27px;height:27px;color:#c6def2}.welcome h1{font-size:24px;font-weight:550}.welcome p{max-width:370px;font-size:12px;line-height:1.9;color:#9aa4af;margin:16px 0 23px}
/* Modals, overlays and feedback */
.modal-backdrop{position:fixed;inset:0;background:#14253e40;backdrop-filter:blur(6px);z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;animation:fade-in .15s ease}.modal{width:570px;max-width:100%;max-height:calc(100dvh - 48px);background:#fff;border:1px solid #ffffff99;border-radius:15px;box-shadow:0 32px 110px #0c213844;display:flex;flex-direction:column;overflow:hidden;animation:modal-in .2s ease}.modal.wide{width:790px}.modal-header{padding:22px 24px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border)}.modal-header h2{font-size:17px;font-weight:550}.modal-header p{font-size:11px;color:#99a3b0;margin-top:7px;line-height:1.7}.modal-content{padding:23px 24px;overflow:auto}.modal-footer{border-top:1px solid var(--border);padding:15px 24px;display:flex;gap:10px;justify-content:flex-end;align-items:center}.modal-footer .note{margin-right:auto;color:#a3abb6;font-size:10px}.project-list{display:flex;flex-direction:column;gap:10px}.project-option{display:flex;align-items:center;text-align:left;width:100%;gap:14px;padding:12px;border:1px solid #e5e9ef;border-radius:9px}.project-option:hover{border-color:#eeb49d;background:#fffaf8}.project-option.current{border-color:#edab94;background:#fff9f5}.project-option .project-mini{width:78px;aspect-ratio:16/9;background:#e7edf6;border-radius:5px;overflow:hidden}.project-option .project-mini svg{width:100%;height:100%}.project-option strong{font-size:12px;font-weight:550;display:block;margin-bottom:6px}.project-option small{font-size:10px;color:#9ba5b1}.project-option .icon{margin-left:auto;color:var(--accent);width:16px;height:16px}.new-project-form{display:flex;gap:8px;margin-top:22px;padding-top:20px;border-top:1px solid #eff1f4}.new-project-form input{min-width:0;flex:1}.ref-picker-tabs{display:flex;gap:8px;margin-bottom:18px}.ref-picker-tabs button{height:30px;border-radius:6px;padding:0 12px;color:#9aa5b1;font-size:11px}.ref-picker-tabs button.active{background:#f0f3f6;color:#506174}.ref-picker-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.ref-option{border:1px solid #e2e7ee;padding:6px;text-align:left;border-radius:8px;position:relative;min-width:0}.ref-option.selected{border:2px solid var(--accent);padding:5px;background:#fff8f3}.ref-option .ref-preview{aspect-ratio:16/10;border-radius:4px;overflow:hidden;background:#eff3f7}.ref-option .ref-preview svg,.ref-option .ref-preview img{width:100%;height:100%;object-fit:cover}.ref-option span.name{display:block;font-size:10px;padding:8px 3px 4px;color:#717e8e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ref-check{position:absolute;right:10px;top:10px;border-radius:50%;background:#fff;width:18px;height:18px;border:1px solid #d5dce6;display:grid;place-items:center}.ref-option.selected .ref-check{background:var(--accent);border-color:var(--accent);color:white}.ref-check .icon{width:11px;height:11px}.search-modal{align-self:flex-start;margin-top:min(16vh,120px)}.search-input-wrap{display:flex;align-items:center;gap:12px;padding:20px;border-bottom:1px solid #e9edf2}.search-input-wrap>.icon{color:#a8b0bc}.search-input-wrap input{border:0;font-size:14px;outline:none;width:100%}.search-results{max-height:420px;overflow:auto;padding:9px}.search-row{width:100%;display:flex;align-items:center;gap:12px;height:52px;padding:0 12px;border-radius:7px;text-align:left}.search-row:hover,.search-row:first-child{background:#f4f6f8}.search-row .search-thumb{width:52px;aspect-ratio:16/9;overflow:hidden;border-radius:3px}.search-row svg{width:100%;height:100%}.search-row strong{font-size:11px;display:block;font-weight:550}.search-row small{font-size:9px;color:#9aa6b6;display:block;margin-top:4px}.search-row>.icon{margin-left:auto;color:#a8b2bf;width:14px;height:14px}.export-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.export-card{padding:5px;border:1px solid #e3e8ef;border-radius:8px;cursor:pointer}.export-card:has(input:checked){border-color:var(--accent);background:#fff7f1}.export-card svg{width:100%;height:auto;border-radius:4px}.export-card-label{display:flex;gap:6px;align-items:center;padding:8px 4px;font-size:10px;color:#788799}.export-card input{accent-color:var(--accent)}.export-summary{font-size:11px;line-height:1.9;color:#8a97a7;background:#f7f9fb;padding:13px 15px;border-radius:8px;margin-bottom:18px}.export-filters{display:flex;gap:7px;margin-bottom:13px}.export-filters button{font-size:10px;color:#8a96a7;border:1px solid #e5e9ef;padding:5px 9px;border-radius:5px}.toast-region{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:200;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none;max-width:90vw}.toast{display:flex;align-items:center;gap:9px;background:#203247;color:#fff;padding:12px 18px;font-size:12px;box-shadow:0 8px 30px #18304b30;border-radius:9px;animation:toast-in .3s ease;line-height:1.6}.toast .icon{width:16px;height:16px;color:#9fcbb6}.job-panel{position:absolute;inset:0;background:#f6f8f9e8;backdrop-filter:blur(8px);z-index:15;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:30px}.job-orbit{width:130px;height:130px;position:relative;margin-bottom:26px}.job-orbit:before,.job-orbit:after{content:"";position:absolute;inset:0;border-radius:50%;border:1px solid #dce2e9}.job-orbit:before{animation:orbit 4s linear infinite;border-top-color:var(--accent);border-right-color:#ee694755}.job-orbit:after{inset:14px;border-style:dashed;border-color:#d5dce5;animation:orbit 14s linear infinite reverse}.job-orbit .core{position:absolute;inset:34px;background:#fff;border:1px solid #e1e6ed;border-radius:15px;display:grid;place-items:center;box-shadow:0 12px 25px #233b5622;transform:rotate(-7deg)}.job-orbit .core .icon{width:25px;height:25px;color:var(--accent)}.job-panel h2{font-weight:500;font-size:19px}.job-panel p{color:#8d9aa9;font-size:11px;margin-top:12px;line-height:1.9}.job-progress{width:250px;height:3px;background:#e2e7ed;margin-top:25px;border-radius:5px;overflow:hidden}.job-progress span{display:block;background:var(--accent);height:100%;width:0;transition:width .4s}.job-steps{display:flex;gap:18px;color:#a9b2bd;font-size:9px;margin-top:15px}.job-steps .done{color:#698f7f}.job-panel .btn{margin-top:22px;color:#96a0ad;font-size:10px}.fullscreen-overlay{position:fixed;inset:0;z-index:90;background:#101922f7;backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:75px 55px}.fullscreen-art{max-width:1400px;width:100%;max-height:100%;aspect-ratio:16/9;filter:drop-shadow(0 18px 30px #0004)}.fullscreen-art svg{width:100%;height:100%;max-height:100%}.fullscreen-top{position:absolute;top:22px;left:30px;right:30px;display:flex;align-items:center;justify-content:space-between;color:#c1cbd6}.fullscreen-top .icon-btn{color:#bac7d8;background:#ffffff10}.fullscreen-top .btn{background:#ffffff12;color:#d3deeb;border:1px solid #ffffff20}.fullscreen-top div{display:flex;gap:8px;align-items:center}.fullscreen-top small{font-size:10px;color:#8392a2}.fullscreen-note{position:absolute;bottom:22px;color:#7e8fa1;font-size:11px}.detail-grid{display:grid;grid-template-columns:100px 1fr;gap:14px 16px;font-size:11px;line-height:1.9}.detail-grid dt{color:#a0a9b5}.detail-grid dd{margin:0;color:#6b798b;overflow-wrap:anywhere}.detail-instruction{padding:14px;background:#f7f9fb;border:1px solid #ebeff4;border-radius:7px;font-size:12px;line-height:1.9;color:#738194;margin-top:18px}.help-content{font-size:12px;line-height:1.9;color:#7f8c9c}.help-content h3{font-size:14px;font-weight:550;color:#394b60;margin:20px 0 7px}.help-content h3:first-child{margin-top:0}.help-shortcuts{display:grid;grid-template-columns:1fr auto;gap:8px;margin:12px 0;font-size:11px}.help-shortcuts kbd{font-family:var(--font);font-size:10px;padding:3px 6px;border:1px solid #dfe5ed;border-radius:4px;background:#f8fafd}.help-disclaimer{padding:13px 15px;background:#fff7ec;border:1px solid #f4e5cd;border-radius:8px;font-size:11px;color:#a68a67;margin-top:20px}.mobile-menu,.inspector-toggle,.mobile-close{display:none}.mobile-shade{display:none}
@keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes modal-in{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toast-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes reveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.reveal{animation:reveal .5s ease both}.art-frame.reveal{animation:reveal .6s cubic-bezier(.16,1,.3,1)}
@media(min-width:1750px){.workspace{grid-template-columns:274px minmax(400px,1fr) 352px}.brand{width:274px}.inspector-scroll{padding:23px 24px}.inspector-header{padding-left:24px}.inspector-bottom{padding-left:24px;padding-right:24px}.main-toolbar{padding:25px 32px 20px}.stage{padding:27px 42px 25px}.filmstrip{padding:22px 32px}.thumb-card{min-width:170px}.tree-row{height:43px;font-size:12px}.field{margin-bottom:25px}.full-main .workspace{grid-template-columns:274px minmax(400px,1fr)}}
@media(max-width:1260px){.workspace{grid-template-columns:218px minmax(365px,1fr) 291px}.brand{width:218px;padding-left:18px}.brand-title{font-size:18px}.project-switch{margin-left:10px}.inspector-scroll{padding:18px 16px 12px}.inspector-header{padding-left:16px;padding-right:16px}.inspector-bottom{padding:14px 16px}.main-toolbar{padding:19px 20px 16px}.stage{padding:20px 20px 15px}.filmstrip{padding:16px 20px}.tree-row{font-size:10px;gap:4px}.tree-toolbar{padding-left:16px}.tree-subnote{margin-left:16px;font-size:9px}.search-launch{width:29px;overflow:hidden;white-space:nowrap;padding:0 6px;margin-right:12px}.search-launch span,.search-launch kbd{display:none}.save-state{font-size:9px}.avatar{margin-right:15px}.demo-badge{margin-right:12px}.full-main .workspace{grid-template-columns:218px minmax(400px,1fr)}.thumb-card{min-width:114px}.view-tab{padding:0 8px;font-size:10px}.view-tab .icon{width:12px;height:12px}.right-view-actions .download-label{display:none}}
@media(max-width:1040px){.workspace{grid-template-columns:210px minmax(0,1fr)}.brand{width:210px}.inspector{position:fixed;top:64px;right:0;bottom:0;width:320px;z-index:45;box-shadow:-10px 0 35px #152e4920;transform:translateX(105%);transition:transform .25s}.inspector.open{transform:translateX(0)}.inspector-toggle{display:flex}.inspector .mobile-close{display:flex}.save-state{display:none}.search-launch{margin-right:9px}.main-toolbar{padding:20px 25px 16px}.stage{padding:24px 30px 16px}.filmstrip{padding:20px 25px}.full-main .workspace{grid-template-columns:210px minmax(0,1fr)}.full-main .inspector.open{display:flex}.title-row h1{font-size:19px}.mobile-shade.show{display:block;position:fixed;inset:64px 0 0;z-index:40;background:#182c4638}.sidebar{z-index:41}.preview-caption{margin-top:14px}}
@media(max-width:720px){.app{min-height:600px}.brand{width:auto;border:0;padding:0 12px 0 4px;gap:8px}.brand-title{font-size:16px}.brand-subtitle{display:none}.brand-icon{transform:scale(.8);width:27px}.mobile-menu{display:flex;margin-left:10px}.project-switch{margin-left:0;padding:8px 5px;gap:6px;max-width:190px}.project-switch .name{font-size:11px}.project-switch .project-icon{display:none}.project-switch>.icon{width:12px;height:12px}.demo-badge{display:none}.avatar{display:none}.topbar .export{margin-right:12px;padding:0 9px;height:31px;font-size:10px}.search-launch{display:none}.workspace,.full-main .workspace{grid-template-columns:minmax(0,1fr)}.sidebar{position:fixed;top:64px;bottom:0;left:0;width:245px;box-shadow:10px 0 30px #152e4920;transform:translateX(-105%);transition:transform .25s}.sidebar.open{transform:translateX(0)}.main-toolbar{padding:19px 19px 15px}.title-row{margin-bottom:14px}.title-row h1{font-size:17px}.artifact-type{font-size:8px;padding:3px 5px}.view-tab{font-size:10px;height:29px;padding:0 7px;gap:4px}.view-tab .icon{width:12px;height:12px}.right-view-actions .btn{padding:0 5px;gap:3px}.right-view-actions .btn.inspector-toggle{font-size:10px}.right-view-actions .download-label{display:none}.right-view-actions .btn.download-btn{width:26px;border:0;background:transparent}.view-row{gap:4px}.stage{padding:19px 20px 17px}.breadcrumbs{font-size:9px;gap:4px;overflow:hidden;white-space:nowrap}.breadcrumbs button{font-size:9px;white-space:nowrap}.image-stage{padding:25px 0 12px}.stage-note{font-size:8px}.stage-note span{max-width:135px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.frame-tag{font-size:8px;top:-18px}.filmstrip{padding:16px 20px}.thumb-card{min-width:132px}.thumb-meta{font-size:8px}.strip-header{font-size:10px}.inspector{width:min(340px,92vw)}.compare-view{padding:20px}.compare-pair{grid-template-columns:1fr;margin-top:25px;gap:25px}.compare-header{align-items:flex-start}.compare-header p{font-size:10px;line-height:1.8}.compare-header select{font-size:10px}.compare-strip{font-size:10px;gap:10px;line-height:1.8}.graph-caption{left:15px;top:16px;gap:9px;font-size:8px}.graph-open{left:16px;bottom:18px;font-size:9px;max-width:180px;line-height:1.8}.library,.brief-view{padding:22px 19px}.page-heading h1{font-size:22px}.material-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.material-card strong{font-size:10px}.drop-zone{min-height:160px}.palette-row{flex-wrap:wrap;gap:8px}.palette-color{font-size:10px}.brief-block-content{padding:17px}.modal-backdrop{padding:14px}.modal{max-height:calc(100dvh - 28px);border-radius:12px}.modal-content{padding:19px}.modal-header{padding:18px 19px}.modal-header h2{font-size:16px}.modal-header p{font-size:10px}.modal-footer{padding:14px 19px}.modal-footer .note{font-size:9px;line-height:1.7}.ref-picker-grid,.export-grid{grid-template-columns:repeat(2,1fr)}.fullscreen-overlay{padding:60px 15px}.fullscreen-top{left:16px;right:16px;font-size:11px}.fullscreen-top small{display:none}.new-project-form{flex-wrap:wrap}.new-project-form .text-input{min-width:170px}.export-card-label{font-size:9px}.toast{font-size:11px;padding:10px 14px}.inspector-scroll{padding:20px}.job-panel{padding:20px}.job-panel h2{font-size:17px}.job-panel p{font-size:10px}.job-orbit{width:105px;height:105px}.job-orbit .core{inset:26px}.detail-grid{grid-template-columns:72px 1fr;font-size:10px}.view-tabs{padding:2px}.stage-note .icon{display:none}}
@media(max-height:790px) and (min-width:1041px){.field{margin-bottom:18px}.inspector-scroll{padding-top:16px}.instruction-wrap textarea{min-height:83px}.inspector-header{padding-top:21px;padding-bottom:16px}.main-toolbar{padding-top:19px;padding-bottom:15px}.filmstrip{padding-top:14px;padding-bottom:12px}.thumb-card{width:calc((100% - 52px)/5);min-width:110px}.strip-header{margin-bottom:10px}.stage{padding-top:18px}.inspector-bottom{padding-top:12px;padding-bottom:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Server-backed workspace additions. */
.art-frame>svg image{image-rendering:auto}.server-notice{position:fixed;top:75px;left:50%;transform:translateX(-50%);z-index:300;max-width:640px;padding:14px 20px;background:#fff1eb;border:1px solid #eeb299;border-radius:9px;color:#9b492e}.job-progress span.indeterminate{width:40%!important;animation:progress-slide 1.8s ease-in-out infinite}.model-pill span:last-child{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.provider-badge{color:#2d826b}.boot-error{max-width:550px;margin:15vh auto;padding:35px;line-height:1.9;background:white;border:1px solid #eee;border-radius:15px}@keyframes progress-slide{from{transform:translateX(-100%)}to{transform:translateX(350%)}}
/* Recorded inputs and task history retain the existing workspace visual language. */
.profile-details{font-size:10px;color:var(--secondary);margin:16px 0;line-height:1.7}.profile-details summary{cursor:pointer;color:var(--ink)}.profile-details p{margin-top:6px;overflow-wrap:anywhere}.reference-roles{display:grid;gap:8px;margin-top:12px}.reference-roles label{font-size:10px;color:var(--secondary);display:grid;gap:4px}.reference-roles .text-input{height:30px;font-size:11px}.task-list{display:grid;gap:14px}.task-card{padding:18px;border:1px solid var(--border);border-radius:10px;background:white}.task-card>div:first-child{display:flex;justify-content:space-between;gap:12px}.task-card p{margin-top:10px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.task-actions{display:flex;gap:10px;margin-top:14px;align-items:center;flex-wrap:wrap}.task-error{font-size:11px;color:#ab4b30;line-height:1.7;margin:8px 0}.task-warning{font-size:12px;line-height:1.8;color:#995236;margin-bottom:16px}.job-inputs{display:flex;gap:12px;overflow:auto;margin:15px 0}.job-inputs figure{margin:0;min-width:130px;max-width:180px}.job-inputs img{width:130px;height:80px;object-fit:contain;background:var(--soft);border-radius:5px}.job-inputs figcaption{font-size:10px;line-height:1.6;margin-top:5px}.job-inputs code{display:block;overflow-wrap:anywhere;color:var(--muted)}.recipe-prompt{font-size:11px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;margin-top:12px}.task-history h1{font-size:25px}

/* Keyboard focus and ordered reference controls. */
.tree-row:focus-visible,summary:focus-visible,[tabindex="-1"]:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.reference-controls{display:flex;gap:8px;margin-top:-4px}.reference-controls button{font-size:10px;border:1px solid var(--border);border-radius:5px;padding:4px 9px}.reference-controls button:last-child{margin-left:auto}.reference-roles label{overflow-wrap:anywhere}.modal:has(.job-inputs) .job-inputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));overflow:visible}.modal:has(.job-inputs) .job-inputs figure{min-width:0}.toast-region:has(.toast){max-height:30vh;overflow:hidden}

.draft-status{font-size:11px;color:var(--secondary);margin:-10px 0 20px;line-height:1.7}.draft-recovery{font-size:10px;color:var(--secondary);margin:10px 0 0;text-decoration:underline}.modal-footer{flex-wrap:wrap}.modal-footer .btn{white-space:normal;min-height:34px;height:auto;padding-top:8px;padding-bottom:8px}.save-state[data-action="recover"]{color:#ad4c2d;text-decoration:underline}.detail-instruction{white-space:pre-wrap;overflow-wrap:anywhere}.page-heading h1{overflow-wrap:anywhere;min-width:0}.title-row h1{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.brief-draft-warning{font-size:10px;margin:8px 0 0}.brief-draft-warning button{color:var(--accent);text-decoration:underline;padding:0}

.storage-usage{display:grid;gap:8px;margin-bottom:24px}.storage-usage strong{font-size:22px;font-weight:500}.storage-usage span{color:var(--muted);font-size:11px}.storage-usage meter{width:100%;height:15px;accent-color:var(--accent)}.storage-note{font-size:11px;line-height:1.9;color:var(--secondary);margin-top:18px}

/* Small previews load lazily; full canvas and exported pixels keep originals. */
.artifact-thumbnail{display:block;width:100%;height:100%;object-fit:contain;border-radius:inherit}
.graph-node>.artifact-thumbnail{height:96px;border-radius:5px}
.export-card>.artifact-thumbnail{height:auto;border-radius:4px}
.ref-option .ref-preview .artifact-thumbnail,.material-image img{object-fit:contain}

.project-lifecycle-row{display:flex;align-items:center;gap:8px;min-width:0}.project-lifecycle-row .project-option{flex:1;min-width:0}.delete-ack{display:flex;align-items:flex-start;gap:8px;margin:16px 0;line-height:1.7}.delete-ack input{margin-top:5px;flex:none}@media(max-width:520px){.project-lifecycle-row{flex-wrap:wrap}.project-lifecycle-row .project-option{flex-basis:100%}}

.connection-fields { display: grid; gap: 8px; margin: 18px 0; }
.connection-fields .form-label { margin-top: 8px; }
.connection-capabilities { min-height: 180px; font-family: ui-monospace, monospace; }
