:root,:root[data-theme=dark]{color-scheme:dark;--df-bg: #141311;--df-surface: #1b1916;--df-surface-2: #232019;--df-surface-3: #2c2820;--df-sunken: #100f0d;--df-ink: #edeae3;--df-ink-2: rgba(237, 234, 227, .72);--df-ink-3: rgba(237, 234, 227, .46);--df-line: rgba(237, 234, 227, .09);--df-line-strong: rgba(237, 234, 227, .17);--df-brand: #d9d3c6;--df-brand-strong: #e6e1d6;--df-brand-soft: rgba(217, 211, 198, .12);--df-brand-ink: #1b1916;--df-seal: #e2644e;--df-seal-soft: rgba(226, 100, 78, .14);--df-canvas: #f8f2e7;--df-success: #4cc38a;--df-warning: #e8a33d;--df-error: #e5534b;--df-scroll-thumb: rgba(237, 234, 227, .18);--df-stage-shadow: 0 18px 56px -16px rgba(0, 0, 0, .6);--df-mono: "JetBrains Mono", "Cascadia Code", Consolas, "Courier New", monospace;--df-font: "MiSans", "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif}:root[data-theme=light]{color-scheme:light;--df-bg: #faf8f4;--df-surface: #ffffff;--df-surface-2: #f0ede6;--df-surface-3: #e6e1d6;--df-sunken: #f1eee7;--df-ink: #26231e;--df-ink-2: rgba(38, 35, 30, .74);--df-ink-3: rgba(38, 35, 30, .52);--df-line: rgba(38, 35, 30, .12);--df-line-strong: rgba(38, 35, 30, .22);--df-brand: #2a2722;--df-brand-strong: #1c1a16;--df-brand-soft: rgba(42, 39, 34, .08);--df-brand-ink: #faf8f4;--df-seal: #c8402f;--df-seal-soft: rgba(200, 64, 47, .1);--df-canvas: #f8f2e7;--df-success: #1f8a5d;--df-warning: #b97a14;--df-error: #c93a32;--df-scroll-thumb: rgba(38, 35, 30, .24);--df-stage-shadow: 0 18px 44px -18px rgba(38, 35, 30, .3)}:root{background:var(--df-bg);color:var(--df-ink);font-family:var(--df-font)}body{margin:0;background:var(--df-bg)}.app-shell{min-height:100vh;display:flex;background:var(--df-bg)}.login-page{min-height:100vh;display:grid;place-items:center;background:var(--df-bg)}.login-card{width:380px;border-color:var(--df-line);box-shadow:none}.login-brand{font-weight:700;letter-spacing:.12em;font-size:16px;color:var(--df-ink)}.login-brand span{display:block;font-weight:400;letter-spacing:.18em;font-size:10px;color:var(--df-ink-3);margin-top:4px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.page-title-row{display:flex;align-items:center;gap:10px;min-width:0}.page-title{margin:0;font-size:20px;line-height:1.3;font-weight:600;color:var(--df-ink)}.page-subtitle{margin:6px 0 0;font-size:13px;color:var(--df-ink-2)}.page-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;padding-top:2px}.app-sider{width:232px;flex:0 0 232px;position:sticky;top:0;height:100vh;overflow:hidden;background:var(--df-sunken);border-right:1px solid var(--df-line);padding:20px 12px;display:flex;flex-direction:column}.sider-brand{display:flex;align-items:center;gap:10px;padding:4px 10px 26px}.sider-brand-name{display:block;color:var(--df-ink);font-weight:700;letter-spacing:.16em;font-size:14px}.sider-brand-sub{display:block;color:var(--df-ink-3);font-size:10px;letter-spacing:.14em;margin-top:3px}.nav-group-label{margin:14px 10px 6px;font-size:11px;color:var(--df-ink-3)}.nav-list{display:grid;gap:2px}.sider-nav{flex:1 1 auto;min-height:0;overflow-y:auto;padding-bottom:10px;scrollbar-color:var(--df-scroll-thumb) transparent}.nav-item{display:flex;align-items:center;gap:10px;height:36px;padding:0 10px;border-radius:8px;color:var(--df-ink-2);font-size:13px;text-decoration:none;transition:color .12s,background-color .12s;position:relative}.nav-item:hover{background:var(--df-surface-2);color:var(--df-ink)}.nav-item[data-active=true]{background:var(--df-surface-2);color:var(--df-brand);font-weight:600}.nav-item[data-active=true]:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:2px;border-radius:1px;background:var(--df-brand)}.sider-operator{flex:0 0 auto;border-top:1px solid var(--df-line);padding:14px 10px 2px;display:flex;align-items:center;gap:10px}.sider-operator-avatar{width:30px;height:30px;border-radius:50%;background:var(--df-brand-soft);color:var(--df-brand);font-size:13px;display:grid;place-items:center}.sider-operator-name{display:block;color:var(--df-ink);font-size:12px;font-weight:500}.sider-operator-status{display:flex;align-items:center;gap:5px;color:var(--df-ink-3);font-size:11px}.sider-operator-dot{width:6px;height:6px;border-radius:50%;background:var(--df-success)}.app-main{flex:1;min-width:0;display:flex;flex-direction:column}.app-header{height:60px;position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--df-bg) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--df-line);display:flex;align-items:center;justify-content:space-between;padding:0 28px}.app-crumb{color:var(--df-ink-2);font-size:13px}.app-crumb strong{color:var(--df-ink);font-weight:600}.app-header-right{display:flex;align-items:center;gap:10px}.app-gate-badge{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border-radius:999px;background:var(--df-seal-soft);color:var(--df-seal);font-size:12px}.btn-ghost{height:30px;padding:0 12px;border-radius:8px;border:1px solid var(--df-line-strong);background:transparent;color:var(--df-ink-2);font-size:12px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:color .12s,background-color .12s,border-color .12s}.btn-ghost:hover{color:var(--df-ink);background:var(--df-surface-2);border-color:var(--df-ink-3)}.app-avatar{width:30px;height:30px;border-radius:50%;background:var(--df-brand-soft);color:var(--df-brand);font-size:13px;display:grid;place-items:center}.app-content{flex:1;width:100%;max-width:1440px;margin:0 auto;padding:28px 36px 40px}.app-footer{height:42px;border-top:1px solid var(--df-line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;color:var(--df-ink-3);font-size:11px}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.stat-card{display:block;background:var(--df-surface);border:1px solid var(--df-line);border-radius:12px;padding:16px 18px;text-decoration:none;color:inherit;transition:border-color .12s}.stat-card:hover{border-color:var(--df-line-strong)}.stat-label{display:flex;align-items:center;justify-content:space-between;color:var(--df-ink-2);font-size:12px}.stat-chevron{color:var(--df-ink-3);transition:transform .12s}.stat-card:hover .stat-chevron{transform:translate(2px);color:var(--df-brand)}.stat-value{display:block;margin-top:8px;font-family:var(--df-mono);font-variant-numeric:tabular-nums;font-size:26px;color:var(--df-seal)}.overview-stack{display:flex;flex-direction:column;gap:16px}.overview-two-col{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:16px;align-items:start}.panel-card{background:var(--df-surface);border:1px solid var(--df-line);border-radius:12px}.panel-card-body{padding:18px 20px}.panel-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px}.panel-title{font-size:15px;font-weight:600;color:var(--df-ink)}.panel-note{font-size:12px;color:var(--df-ink-3)}.pipeline{display:flex;flex-wrap:wrap;gap:18px 22px;padding-top:4px}.pipe-node{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;min-width:128px}a.pipe-node{text-decoration:none}a.pipe-node:hover .pipe-label{color:var(--df-ink)}.pipe-dot{grid-row:span 2;width:26px;height:26px;border-radius:50%;border:1.5px solid var(--df-line-strong);color:var(--df-ink-3);font-size:12px;display:grid;place-items:center;font-family:var(--df-mono)}.pipe-node.is-done .pipe-dot{background:var(--df-brand);border-color:var(--df-brand);color:var(--df-brand-ink);font-weight:700}.pipe-node.is-current .pipe-dot{border:2px solid var(--df-brand);color:var(--df-brand);box-shadow:0 0 0 4px var(--df-brand-soft)}.pipe-label{font-size:13px;color:var(--df-ink-2)}.pipe-node.is-done .pipe-label,.pipe-node.is-current .pipe-label{color:var(--df-brand);font-weight:600}.pipe-hint{font-size:11px;color:var(--df-ink-3)}.quick-list{display:grid;gap:2px}.quick-row{display:flex;align-items:center;gap:10px;height:38px;padding:0 10px;border-radius:8px;color:var(--df-ink-2);font-size:13px;text-decoration:none;transition:color .12s,background-color .12s}.quick-row:hover{background:var(--df-surface-2);color:var(--df-ink)}.gate-row{display:flex;align-items:center;justify-content:space-between;padding:9px 0;font-size:13px;color:var(--df-ink-2)}.gate-row+.gate-row{border-top:1px solid var(--df-line)}.gate-note{margin:10px 0 0;font-size:12px;color:var(--df-ink-3)}.df-tag{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px;border-radius:6px;background:var(--df-surface-2);color:var(--df-ink-2);font-size:12px;white-space:nowrap}.df-tag.tag-success{background:color-mix(in srgb,var(--df-success) 14%,transparent);color:var(--df-success)}.df-tag.tag-warning{background:color-mix(in srgb,var(--df-warning) 14%,transparent);color:var(--df-warning)}.df-tag.tag-error{background:color-mix(in srgb,var(--df-error) 14%,transparent);color:var(--df-error)}.df-tag.tag-on{background:var(--df-seal-soft);color:var(--df-seal)}.tag-dot{width:6px;height:6px;border-radius:50%;background:var(--df-ink-3)}.df-tag.tag-success .tag-dot{background:var(--df-success)}.df-tag.tag-warning .tag-dot{background:var(--df-warning)}.df-tag.tag-error .tag-dot{background:var(--df-error)}.list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px}.seg{display:inline-flex;gap:2px;padding:3px;border-radius:8px;background:var(--df-surface);border:1px solid var(--df-line)}.seg button{height:28px;padding:0 12px;border:0;border-radius:6px;background:transparent;color:var(--df-ink-2);font-size:12px;cursor:pointer;transition:color .12s,background-color .12s}.seg button:hover{color:var(--df-ink)}.seg button[aria-pressed=true]{background:var(--df-surface-3);color:var(--df-ink);font-weight:500}.table-card{background:var(--df-surface);border:1px solid var(--df-line);border-radius:12px;overflow:hidden}.df-table .ant-table{background:transparent;color:var(--df-ink)}.df-table .ant-table-thead>tr>th{background:transparent;color:var(--df-ink-3);font-size:12px;font-weight:500;border-bottom:1px solid var(--df-line)}.df-table .ant-table-tbody>tr>td{border-bottom:1px solid var(--df-line)}.df-table .ant-table-tbody>tr:hover>td{background:var(--df-surface-2)!important}.cell-title-link{color:var(--df-ink);font-weight:500;text-decoration:none}.cell-title-link:hover{color:var(--df-brand)}.cell-mono{font-family:var(--df-mono);font-variant-numeric:tabular-nums;font-size:12px;color:var(--df-ink-2)}.ant-typography code{font-family:var(--df-mono)!important}.flow-cta{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin-top:14px;font-size:13px;color:var(--df-ink-2)}.flow-cta-text strong{color:var(--df-ink)}.cta-link{color:var(--df-brand);font-weight:500;text-decoration:none}.cta-link:hover{color:var(--df-brand-strong)}.notice{display:flex;align-items:flex-start;gap:10px;margin-top:14px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--df-warning) 32%,transparent);background:color-mix(in srgb,var(--df-warning) 9%,transparent);border-radius:10px}.notice-ico{flex:none;margin-top:2px;font-size:15px;color:var(--df-warning)}.notice-text{margin:0;font-size:13px;line-height:1.6;color:var(--df-ink-2)}.notice-text strong{color:var(--df-ink)}.meta-list{margin:0}.meta-row{display:grid;grid-template-columns:128px 1fr;gap:12px;padding:9px 0;border-bottom:1px solid var(--df-line)}.meta-row:last-child{border-bottom:0}.meta-row dt{color:var(--df-ink-3);font-size:12px}.meta-row dd{margin:0;color:var(--df-ink);font-size:13px;min-width:0}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;align-items:start;margin-top:16px}.cust-stack{display:flex;flex-direction:column;gap:16px;min-width:0}.flow-steps{display:flex;align-items:flex-start;gap:10px}.flow-node{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;min-width:140px}.flow-dot{grid-row:span 2;width:24px;height:24px;border-radius:50%;border:1.5px solid var(--df-line-strong);color:var(--df-ink-3);font-size:12px;display:grid;place-items:center;font-family:var(--df-mono)}.flow-node.is-done .flow-dot{background:var(--df-brand);border-color:var(--df-brand);color:var(--df-brand-ink);font-weight:700}.flow-node.is-current .flow-dot,.flow-node.pending .flow-dot{border:2px solid var(--df-brand);color:var(--df-brand);box-shadow:0 0 0 4px var(--df-brand-soft)}.flow-label{font-size:13px;color:var(--df-ink-2)}.flow-node.is-done .flow-label,.flow-node.is-current .flow-label{color:var(--df-brand);font-weight:600}.flow-note{font-size:11px;color:var(--df-ink-3)}.flow-link{flex:1;height:2px;min-width:24px;border-radius:1px;background:var(--df-line);margin-top:12px}.flow-link.is-done{background:color-mix(in srgb,var(--df-brand) 40%,transparent)}.snapshot-card .panel-card-body{padding:14px 16px}.artifact-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--df-line);font-size:13px}.artifact-row:last-child{border-bottom:0}.artifact-name{color:var(--df-ink)}.artifact-value{font-family:var(--df-mono);font-variant-numeric:tabular-nums;font-size:12px;color:var(--df-ink-2)}.immutable-note,.pg-note{margin:10px 0 0;font-size:12px;color:var(--df-ink-3)}.assets-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}.upload-card{margin-bottom:16px;background:var(--df-surface);border:1px solid var(--df-line);border-radius:12px;padding:18px 20px 20px}.upload-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 12px}.asset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}.asset-card{position:relative;display:block;width:100%;padding:0;text-align:left;background:var(--df-surface);border:1px solid var(--df-line);border-radius:10px;overflow:hidden;cursor:pointer;color:inherit;transition:border-color .12s,transform .12s}.asset-card:hover{border-color:var(--df-line-strong);transform:translateY(-2px)}.asset-card.is-selected{border-color:var(--df-brand);box-shadow:0 0 0 1px var(--df-brand);transform:none}.asset-cover{position:relative;display:block;aspect-ratio:16 / 9;background:var(--df-canvas);overflow:hidden}.asset-cover-img,.asset-cover-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.asset-cover-media{display:grid;place-items:center;color:var(--df-ink-3);background:linear-gradient(145deg,var(--df-surface-2),var(--df-surface-3))}.asset-check{position:absolute;top:8px;right:8px;width:20px;height:20px;border-radius:50%;background:var(--df-brand);color:var(--df-brand-ink);font-size:12px;font-weight:700;display:grid;place-items:center}.asset-body{display:block;padding:10px 12px 12px}.asset-name{display:block;color:var(--df-ink);font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-meta{display:block;margin-top:3px;font-family:var(--df-mono);font-size:11px;color:var(--df-ink-3)}.asset-figure{display:block;width:100%;aspect-ratio:16 / 9;object-fit:cover;background:var(--df-surface-2);border-radius:11px 11px 0 0}.asset-side-body{position:sticky;top:80px;padding:16px}.director-shell{position:fixed;inset:0;z-index:10;width:100vw;height:100vh;display:flex;flex-direction:column;background:var(--df-bg)}.director-header{height:52px;flex:0 0 52px;background:var(--df-sunken);border-bottom:1px solid var(--df-line);display:flex;align-items:center;justify-content:space-between;padding:0 16px}.director-header>div{display:flex;align-items:center;gap:10px}.director-main{flex:1;min-height:0;display:flex}.workbench-thumbs{width:176px;flex:0 0 176px;background:var(--df-sunken);border-right:1px solid var(--df-line);padding:12px;overflow-y:auto}.thumb-head{display:flex;justify-content:space-between;align-items:center;padding:0 4px 10px;color:var(--df-ink-3);font-size:11px}.thumbs{display:grid;gap:8px}.thumbs>.ant-btn{height:auto!important;padding:7px!important;text-align:left;white-space:normal;border:1px solid transparent;border-radius:8px;background:transparent}.thumbs>.ant-btn:hover{background:var(--df-surface-2)!important}.thumbs>.ant-btn.selected{background:var(--df-brand-soft)!important;border-color:color-mix(in srgb,var(--df-brand) 45%,transparent)}.mini{width:100%;aspect-ratio:16 / 9;overflow:hidden;background:var(--df-canvas);border-radius:4px}.thumbs span{display:block;margin-top:5px;font-size:11px;color:var(--df-ink-3);text-align:right}.stage-content{flex:1;min-width:0;display:flex;flex-direction:column;background:radial-gradient(ellipse at 50% 38%,var(--df-surface) 0%,var(--df-bg) 68%)}.canvasbar{height:50px;flex:0 0 50px;background:var(--df-surface);border-bottom:1px solid var(--df-line);display:flex;align-items:center;justify-content:space-between;padding:0 18px;color:var(--df-ink-2);font-size:12px}.beat-range{width:110px!important;padding:0!important;border:0!important;background:transparent!important}.stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:24px}.fit{width:min(100%,calc((100vh - 145px) * 16 / 9));aspect-ratio:16 / 9;background:var(--df-canvas);box-shadow:var(--df-stage-shadow);border-radius:6px;overflow:hidden}.scale-frame{width:100%;height:100%;overflow:hidden}.scale-inner{width:1920px;height:1080px;transform-origin:top left}.inspector{width:300px;flex:0 0 300px;background:var(--df-sunken);border-left:1px solid var(--df-line);padding:14px 16px;overflow-y:auto}.inspector .ant-tabs-nav,.inspector .ant-form-item{margin-bottom:12px}.inspector .ant-list-item{font-size:12px}.df-slide{isolation:isolate}.wizard-layout{max-width:880px;margin:0 auto}.wizard-progress{margin-bottom:18px}.wizard-steps{display:flex;flex-wrap:wrap;gap:10px 22px}.wizard-step{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--df-ink-3)}.wizard-step-no{width:24px;height:24px;border-radius:50%;border:1.5px solid var(--df-line-strong);display:grid;place-items:center;font-family:var(--df-mono);font-size:12px}.wizard-step.is-done{color:var(--df-brand)}.wizard-step.is-done .wizard-step-no{background:var(--df-brand);border-color:var(--df-brand);color:var(--df-brand-ink);font-weight:700}.wizard-step.is-current{color:var(--df-ink);font-weight:600}.wizard-step.is-current .wizard-step-no{border:2px solid var(--df-brand);color:var(--df-brand);box-shadow:0 0 0 4px var(--df-brand-soft)}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.choice-card{display:block;width:100%;text-align:left;padding:14px 16px;background:var(--df-surface);border:1px solid var(--df-line);border-radius:10px;cursor:pointer;color:inherit;transition:border-color .12s}.choice-card:hover{border-color:var(--df-brand)}.choice-title{display:block;font-size:14px;font-weight:600;color:var(--df-ink)}.choice-desc{display:block;margin-top:5px;font-size:12px;color:var(--df-ink-2)}.chk{display:flex;align-items:flex-start;gap:8px;padding:7px 0;font-size:12px;color:var(--df-ink-2)}.chk.chk-ok{color:var(--df-success)}.chk.chk-wait{color:var(--df-warning)}.wizard-foot{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.nav-group-toggle{display:flex;align-items:center;gap:8px;width:100%;margin:14px 0 6px;padding:0 10px;height:30px;border:0;border-top:1px dashed var(--df-line-strong);border-radius:0;background:transparent;color:var(--df-ink-3);font-size:11px;cursor:pointer;transition:color .12s}.nav-group-toggle:hover{color:var(--df-ink-2)}.nav-group-toggle-label{font-weight:500;letter-spacing:.08em}.nav-group-toggle-hint{flex:1;text-align:right;font-size:10px;opacity:.8}.nav-group-toggle svg{transition:transform .16s}.nav-group-toggle.is-open svg{transform:rotate(90deg)}.advanced-collapse{background:var(--df-surface);border:1px solid var(--df-line);border-radius:12px}.advanced-collapse>.ant-collapse-item{border-bottom:0}.advanced-collapse .ant-collapse-header{color:var(--df-ink-2);font-size:13px}.advanced-collapse .ant-collapse-content{background:transparent;color:var(--df-ink);border-top:1px solid var(--df-line)}.overview-hero .pipe-node{grid-template-columns:auto 1fr;row-gap:3px;min-width:168px;flex:1}.pipeline-lg{gap:20px 26px}.pipe-count{font-family:var(--df-mono);font-variant-numeric:tabular-nums;font-size:12px;color:var(--df-ink-2)}.pipe-node.is-done .pipe-count{color:var(--df-seal)}.pipe-action{font-size:11px;color:var(--df-brand);opacity:0;transition:opacity .12s}a.pipe-node:hover .pipe-action{opacity:1}.overview-hero .pipe-hint,.overview-hero .pipe-action{grid-column:2}*{scrollbar-width:thin;scrollbar-color:var(--df-scroll-thumb) transparent}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-thumb{background:var(--df-scroll-thumb);border-radius:9999px}*::-webkit-scrollbar-track{background:transparent}::selection{background:color-mix(in srgb,var(--df-brand) 30%,transparent);color:var(--df-ink)}@media(max-width:1100px){.app-sider{width:200px;flex-basis:200px}.app-content{padding:22px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-two-col,.detail-grid,.assets-layout{grid-template-columns:1fr}.asset-side-body{position:static}.upload-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.choice-grid{grid-template-columns:1fr}.workbench-thumbs{width:150px;flex-basis:150px}.inspector{width:260px;flex-basis:260px}}@media(prefers-reduced-motion:reduce){*{transition-duration:.01ms!important}}
