:root{color:#1f2933;background:#f4f6f8;font-family:Inter,Segoe UI,Microsoft YaHei,system-ui,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}button,input{font:inherit}.admin-shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100%}.single-instance-page{min-height:100%;display:flex;align-items:center;justify-content:center;padding:24px;background:#eef2f6}.single-instance-panel{width:min(520px,100%);border:1px solid #d8dee6;border-radius:8px;background:#fff;color:#1f2933;padding:24px;display:flex;flex-direction:column;gap:12px}.single-instance-panel h1{margin:0;font-size:21px}.single-instance-panel p{margin:0;color:#52616f;line-height:1.7}.single-instance-panel small{color:#66788a}.single-instance-actions{display:flex;flex-wrap:wrap;gap:8px}.sidebar{background:#15202b;color:#f7fafc;padding:18px 14px;display:flex;flex-direction:column;gap:22px}.brand{display:flex;align-items:center;gap:10px;min-height:36px;padding:0 8px;font-weight:700}.nav-list{display:flex;flex-direction:column;gap:6px}.nav-item{width:100%;height:38px;border:0;border-radius:6px;color:#d7dde5;background:transparent;display:grid;grid-template-columns:20px 1fr 16px;align-items:center;gap:10px;padding:0 10px;text-align:left;cursor:pointer}.nav-item:hover:not(:disabled),.nav-item.active{color:#fff;background:#243447}.nav-item:disabled{color:#738195;cursor:not-allowed}.main{min-width:0;display:flex;flex-direction:column}.topbar{min-height:64px;padding:12px 18px;border-bottom:1px solid #d8dee6;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:18px}.connection-block,.login-block{display:flex;align-items:center;gap:10px;min-width:0}.mode-pill,.admin-name{height:34px;border-radius:999px;display:inline-flex;align-items:center;gap:7px;padding:0 12px;font-size:13px;white-space:nowrap}.mode-offline{color:#8a4b00;background:#fff1d6}.mode-unauth{color:#1f5f86;background:#dff3ff}.mode-admin,.admin-name{color:#17613d;background:#ddf7e9}.server-field{height:38px;display:flex;align-items:center;gap:8px;color:#52616f;font-size:13px}.server-field input{width:min(34vw,360px);min-width:220px;height:34px;border:1px solid #c8d0d9;border-radius:6px;padding:0 10px;color:#1f2933;background:#fff}.login-input{width:132px;height:34px;border:1px solid #c8d0d9;border-radius:6px;padding:0 10px}.login-input:disabled{color:#8795a5;background:#eef2f6}.icon-button,.text-button{height:34px;border:1px solid #c8d0d9;border-radius:6px;background:#fff;color:#243447;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer}.icon-button{width:34px;padding:0}.text-button{padding:0 12px}.icon-button:hover:not(:disabled),.text-button:hover:not(:disabled){border-color:#55718f;background:#f6f9fc}.icon-button:disabled,.text-button:disabled{color:#8795a5;background:#eef2f6;cursor:not-allowed}.status-strip{display:flex;align-items:center;gap:10px;min-height:58px;padding:10px 18px;background:#eef2f6;border-bottom:1px solid #d8dee6;flex-wrap:wrap}.metric{min-width:132px;width:max-content;max-width:260px;min-height:38px;border-left:3px solid;background:#fff;padding:5px 12px;display:flex;flex-direction:column;justify-content:center}.metric span{color:#66788a;font-size:11px}.metric strong{color:#1f2933;font-size:13px;line-height:1.25;overflow-wrap:anywhere}.metric-green{border-color:#2f9e68}.metric-amber{border-color:#d9822b}.metric-blue{border-color:#2f80c0}.metric-gray{border-color:#8795a5}.inline-error{min-height:34px;color:#9b2c2c;background:#ffe8e8;border:1px solid #f5b5b5;border-radius:6px;padding:7px 10px;font-size:13px;overflow-wrap:anywhere}.workspace{flex:1;min-height:0;padding:22px}.workspace-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}.workspace-title-main{display:flex;align-items:center;gap:10px;min-width:0}.workspace-title h1{margin:0;font-size:22px;font-weight:700}.title-layout-switch{min-height:36px;border:1px solid #d8dee6;border-radius:8px;background:#fff;padding:4px 6px 4px 10px;display:flex;align-items:center;gap:10px;color:#52616f;font-size:13px}.module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.module-tile{min-height:96px;border:1px solid #d8dee6;border-radius:8px;background:#fff;padding:16px;display:flex;flex-direction:column;justify-content:space-between}.module-tile span{font-size:15px;font-weight:650}.module-tile strong{color:#66788a;font-size:12px;text-transform:uppercase}.locked-panel{min-height:180px;border:1px dashed #b8c2cc;border-radius:8px;color:#66788a;background:#fff;display:flex;align-items:center;justify-content:center;gap:10px}.effect-creator-workspace,.design-workspace{display:grid;grid-template-columns:minmax(220px,240px) minmax(400px,1fr) minmax(300px,360px);gap:16px;align-items:start}.design-sidebar,.design-editor,.effect-console,.effect-data-panel,.effect-action-log{border:1px solid #d8dee6;border-radius:8px;background:#fff;padding:14px}.section-heading{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-weight:700}.full-width{width:100%}.project-list{display:flex;flex-direction:column;gap:6px;margin-top:12px}.project-row{width:100%;border:1px solid #d8dee6;border-radius:6px;background:#fff;padding:10px;text-align:left;display:flex;flex-direction:column;gap:4px;cursor:pointer}.project-row.active,.project-row:hover{border-color:#55718f;background:#f6f9fc}.project-row span{color:#1f2933;font-weight:650}.project-row small{color:#66788a}.editor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.editor-grid label,.editor-columns label{display:flex;flex-direction:column;gap:6px;color:#52616f;font-size:13px}.editor-grid input,.editor-columns textarea{width:100%;border:1px solid #c8d0d9;border-radius:6px;color:#1f2933;background:#fff}.editor-grid input{height:34px;padding:0 10px}.editor-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.effect-data-panel .editor-grid.compact{grid-template-columns:1fr}.editor-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:12px}.editor-columns textarea{min-height:220px;resize:vertical;padding:10px;font-family:Consolas,Cascadia Code,monospace;font-size:12px;line-height:1.5}.editor-actions{display:flex;align-items:center;gap:12px;margin-top:14px}.save-status{display:inline-flex;align-items:center;gap:6px;color:#52616f;font-size:13px}.effect-console-column,.effect-side-column,.effect-package-lifecycle-panel{display:flex;flex-direction:column;gap:12px;min-width:0}.effect-package-lifecycle-panel .packaging-controls,.effect-package-lifecycle-panel .packaging-result,.effect-package-lifecycle-panel .version-management-panel,.effect-package-lifecycle-panel .integrity-preview,.effect-package-lifecycle-panel-version-management{width:100%}.effect-package-lifecycle-panel-version-management .version-management-panel{min-height:0}.effect-package-lifecycle-panel-build-strip{width:100%}.effect-package-build-strip{display:flex;flex-direction:column;gap:10px;border:1px solid #d8dee6;border-radius:8px;background:#fff;padding:14px}.effect-package-build-strip-body{display:flex;gap:12px;align-items:center;justify-content:space-between}.effect-package-build-strip-body dl{display:grid;grid-template-columns:repeat(3,minmax(110px,1fr));gap:10px;flex:1;margin:0}.effect-package-build-strip-body div{border:1px solid #e2e8ef;border-radius:6px;background:#f8fbfd;padding:8px 10px}.effect-package-build-strip-body dt{color:#66788a;font-size:12px}.effect-package-build-strip-body dd{margin:2px 0 0;color:#102033;font-weight:700;overflow-wrap:anywhere}.package-version-inline-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.package-version-inline-grid input{min-width:0}.compact-result-summary span,.compact-result-summary code{overflow-wrap:anywhere}.effect-console{display:flex;flex-direction:column;gap:12px}.console-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.console-head div:first-child{display:flex;flex-direction:column;gap:4px}.console-head strong{font-size:18px}.console-head span{color:#66788a;font-size:13px}.console-obs-chip{min-height:30px;border-radius:999px;color:#66788a;background:#eef2f6;padding:6px 10px;font-size:12px;white-space:nowrap}.console-obs-chip.connected{color:#17613d;background:#ddf7e9}.console-card{border:1px solid #d8dee6;border-radius:8px;background:#f9fbfd;padding:12px;display:flex;flex-direction:column;gap:10px}.console-card h2{margin:0;font-size:15px}.console-card p{margin:0;color:#66788a;font-size:12px;line-height:1.6}.segmented-control{display:grid;grid-template-columns:repeat(auto-fit,minmax(98px,1fr));gap:4px}.segmented-control button{min-height:30px;border:1px solid #d8dee6;border-radius:6px;color:#52616f;background:#fff;cursor:pointer}.segmented-control button.active{border-color:#18879a;color:#0f6675;background:#e8f7fa;font-weight:650}.slider-row,.color-input-row,.text-input-row,.enum-control-row,.number-input-row,.checkbox-row{display:flex;align-items:center;gap:10px;color:#52616f;font-size:13px}.slider-row,.enum-control-row{flex-direction:column;align-items:stretch}.enum-control-row>span{font-weight:600}.slider-row span{display:flex;justify-content:space-between;gap:10px}.slider-row input[type=range]{width:100%;accent-color:#18879a}.color-input-row,.text-input-row,.number-input-row{justify-content:space-between}.color-input-row input,.text-input-row input,.number-input-row input{min-width:170px;height:32px;border:1px solid #c8d0d9;border-radius:6px;background:#fff;padding:0 8px}.schema-control-list{display:flex;flex-direction:column;gap:10px}.conveyor-console-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.conveyor-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(160px,1fr));gap:10px}.conveyor-video-list{max-height:220px;overflow:auto;display:flex;flex-direction:column;gap:6px}.conveyor-video-row{display:grid;grid-template-columns:42px minmax(0,1fr) 34px;align-items:center;gap:8px;min-height:38px;border:1px solid #d8dee6;border-radius:6px;background:#fff;padding:4px 6px 4px 10px}.conveyor-video-index{color:#66788a;font-size:12px;font-variant-numeric:tabular-nums}.conveyor-video-name{min-width:0;overflow:hidden;color:#243447;font-size:13px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.icon-button.danger{color:#9b1c1c}.runtime-panel{border:1px solid #d8dee6;border-radius:8px;background:#f9fbfd;padding:12px;display:flex;flex-direction:column;gap:10px}.runtime-panel h2{margin:0;font-size:15px}.runtime-inline-row{display:grid;grid-template-columns:minmax(126px,.8fr) minmax(130px,.9fr) minmax(110px,.8fr);gap:10px;align-items:stretch}.runtime-inline-row .number-input-row input{min-width:0;width:96px}.readonly-chip-row,.toggle-chip-row{min-height:34px;border:1px solid #d8dee6;border-radius:6px;background:#fff;padding:6px 8px;display:flex;align-items:center;justify-content:space-between;gap:10px;color:#52616f;font-size:13px}.toggle-chip-row input{width:16px;height:16px;accent-color:#18879a}.readonly-chip-row strong{color:#1f2933}.layout-switch-row{min-height:34px;border:1px solid #d8dee6;border-radius:6px;background:#fff;padding:4px 6px 4px 8px;display:flex;align-items:center;justify-content:space-between;gap:10px;color:#52616f;font-size:13px}.layout-toggle{display:grid;grid-template-columns:repeat(2,minmax(54px,1fr));gap:4px;min-width:128px}.layout-toggle-option{position:relative;display:block}.layout-toggle-option input{position:absolute;opacity:0;pointer-events:none}.layout-toggle-option span{min-height:26px;border:1px solid #d8dee6;border-radius:5px;color:#52616f;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}.layout-toggle-option input:checked+span{border-color:#18879a;color:#0f6675;background:#e8f7fa;font-weight:650}.requires-row{display:grid;grid-template-columns:64px 1fr;gap:8px;color:#52616f;font-size:13px}.requires-row div{display:flex;flex-wrap:wrap;gap:6px}.dependency-link,.dependency-missing{border-radius:999px;border:0;background:#eef5fb;color:#294661;padding:4px 8px;display:inline-flex;align-items:center;gap:6px;font-family:inherit;font-size:12px}.dependency-link{cursor:pointer}.dependency-link:hover{background:#dff1f7;color:#0f6675}.dependency-link strong,.dependency-missing strong{font-size:12px}.dependency-link small,.dependency-missing small{color:#66788a;font-size:11px}.dependency-missing{background:#fff4e5;color:#8a4b13}.manual-recolor-console{display:flex;flex-direction:column;gap:12px}.manual-actions{display:flex;flex-wrap:wrap;gap:8px}.manual-actions button{align-items:center;background:#fff;border:1px solid #c9d3dc;border-radius:6px;color:#17202a;cursor:pointer;display:inline-flex;gap:7px;justify-content:center;min-height:32px;padding:0 10px}.manual-actions button:hover:not(:disabled){border-color:#2a8390;background:#f6fbfc}.manual-actions button.primary{background:#176b75;border-color:#176b75;color:#fff}.manual-actions button.toggle-active{background:#e8f4f6;border-color:#176b75;color:#176b75;font-weight:720}.manual-actions button.toggle-active.danger{background:#fff1f1;border-color:#c24141;color:#9f2424}.manual-actions button:disabled{cursor:not-allowed;opacity:.55}.manual-recolor-layout{align-items:start;display:grid;gap:14px;grid-template-columns:minmax(220px,340px) minmax(0,1fr)}.manual-preview{aspect-ratio:9 / 16;background:#050607;border:1px solid #243747;border-radius:8px;color:#9aa8b2;display:grid;min-height:0;overflow:hidden;place-items:center;position:relative;width:100%}.manual-mask-overlay{pointer-events:none;position:absolute;z-index:2}.manual-mask-overlay.clothing{border:2px solid #41d96d;clip-path:polygon(0 0,100% 0,calc(100% - var(--mask-taper, 0%)) 100%,var(--mask-taper, 0%) 100%);box-shadow:0 0 0 999px #0000002e,0 0 0 8px #41d96d3d,inset 0 0 24px #41d96d57;opacity:.9}.manual-mask-overlay.face{background:#599aff14;border:2px dashed #6bb6ff;box-shadow:0 0 0 4px #599aff2e,inset 0 0 24px #599aff47}.manual-mask-overlay.exclude{background:#ff5b5b14;border:2px dashed #ff5b5b;box-shadow:0 0 0 4px #ff5b5b2e,inset 0 0 24px #ff5b5b57}.manual-controls{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}.detected-color-panel,.preset-color-panel,.recolor-guide-panel{border:1px solid #d5dde5;border-radius:8px;display:grid;gap:10px;grid-column:span 2;padding:10px}.detected-color-panel>span,.preset-color-panel>span,.recolor-guide-section>span{color:#5a6975;font-size:13px;font-weight:760}.detected-color-row{align-items:center;display:grid;gap:8px;grid-template-columns:34px minmax(0,1fr) auto}.detected-color-row button{align-items:center;background:#fff;border:1px solid #c9d3dc;border-radius:6px;color:#17202a;cursor:pointer;display:inline-flex;gap:7px;justify-content:center;min-height:32px;padding:0 10px;white-space:nowrap}.detected-color-row button:hover{border-color:#2a8390;background:#f6fbfc}.detected-color-row code{color:#5d6b76;font-family:Cascadia Code,Consolas,monospace;font-size:12px}.detected-color-swatch,.preset-color-dot{border:2px solid #ffffff;box-shadow:0 0 0 1px #9aa8b2;display:inline-block}.detected-color-swatch{border-radius:999px;height:28px;width:28px}.recolor-guide-panel{background:#fbfdfe;grid-template-columns:1.1fr 1fr}.recolor-guide-section{display:grid;gap:8px;min-width:0}.recolor-guide-swatches,.recolor-guide-tags{display:flex;flex-wrap:wrap;gap:7px}.recolor-guide-swatch,.recolor-guide-tags span{align-items:center;background:#f1f5f7;border:1px solid #d4dde4;border-radius:999px;color:#4f5f6a;display:inline-flex;font-size:12px;font-weight:680;min-height:26px;padding:4px 8px}.recolor-guide-swatch span{border:2px solid #ffffff;border-radius:999px;box-shadow:0 0 0 1px #9aa8b2;height:14px;margin-right:5px;width:14px}.recolor-guide-tags span{background:#fff7f4;border-color:#ead5cd;color:#7a5347}.engine-selector,.mode-selector{display:grid;gap:8px;grid-column:span 2}.engine-selector{grid-template-columns:repeat(2,minmax(0,1fr))}.mode-selector{grid-template-columns:repeat(3,minmax(0,1fr))}.engine-selector button,.mode-selector button{min-width:0;padding:0 10px;white-space:nowrap}.preset-color-grid{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr))}.preset-color-button{align-items:center;background:#fff;border:1px solid #cdd8e4;border-radius:6px;color:#203143;cursor:pointer;display:inline-flex;font-size:12px;font-weight:700;gap:7px;justify-content:flex-start;min-height:32px;min-width:0;padding:0 10px}.preset-color-button:hover{border-color:#2a8390}.preset-color-button.active{border-color:#188a9b;background:#e2f6f8;color:#0d6572;font-weight:700}.preset-color-dot{border-radius:999px;height:18px;width:18px}.manual-controls .toggle-field{align-items:center;color:#5a6975;display:flex;font-size:13px;font-weight:650;gap:10px;min-height:42px}.manual-controls .toggle-field input{accent-color:#176b75;height:18px;width:18px}.manual-controls .slider-row{grid-column:span 2}.console-actions{display:flex;justify-content:flex-end;gap:8px}.effect-data-panel{align-self:start}.effect-icon-editor{display:flex;flex-direction:column;gap:12px}.effect-icon-preview{border:1px solid #c8d0d9;border-radius:8px;background:#eef9fb;color:#0f6670;display:grid;grid-template-columns:34px minmax(0,1fr);gap:4px 10px;align-items:center;padding:10px}.effect-icon-preview svg{grid-row:span 2}.effect-icon-preview span{color:#52616f;font-size:12px}.effect-icon-preview strong{color:#1f2933;font-size:14px}.effect-icon-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.effect-icon-choice{min-height:42px;border:1px solid #d8dee6;border-radius:6px;background:#fff;color:#243447;display:flex;align-items:center;gap:7px;padding:0 9px;cursor:pointer}.effect-icon-choice:hover,.effect-icon-choice.active{border-color:#0f7884;background:#eef9fb;color:#0f6670}.effect-icon-choice span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700}.effect-readonly-list{display:flex;flex-direction:column;gap:8px;margin:14px 0 0}.effect-readonly-list div{display:grid;gap:3px;border:1px solid #d8dee6;border-radius:6px;background:#f8fafc;padding:8px 10px}.effect-readonly-list dt{color:#66788a;font-size:12px}.effect-readonly-list dd{margin:0;color:#1f2933;font-size:13px;font-weight:700;overflow-wrap:anywhere}.data-editor-stack{display:flex;flex-direction:column;gap:12px;margin-top:12px}.data-editor-stack label{display:flex;flex-direction:column;gap:6px;color:#52616f;font-size:13px}.data-editor-stack textarea{min-height:160px;width:100%;border:1px solid #c8d0d9;border-radius:6px;color:#1f2933;background:#fff;resize:vertical;padding:10px;font-family:Consolas,Cascadia Code,monospace;font-size:12px;line-height:1.5}.status-badge{border-left:3px solid #d9822b;border-radius:6px;background:#f6f9fc;padding:8px 10px;display:flex;flex-direction:column;gap:3px}.status-badge span{color:#66788a;font-size:12px}.status-badge strong{color:#1f2933;font-size:13px;overflow-wrap:anywhere}.status-badge-active{border-left-color:#2f9e68}.creator-log{max-height:220px}.helper-text{margin:0;color:#52616f;line-height:1.7}.debug-workspace{display:grid;grid-template-columns:260px minmax(0,1fr) 340px;gap:16px;align-items:stretch}.debug-controls,.debug-preview,.debug-log{border:1px solid #d8dee6;border-radius:8px;background:#fff;padding:14px}.debug-controls{display:flex;flex-direction:column;gap:12px}.debug-controls label{display:flex;flex-direction:column;gap:6px;color:#52616f;font-size:13px}.debug-controls select{height:34px;border:1px solid #c8d0d9;border-radius:6px;color:#1f2933;background:#fff;padding:0 8px}.debug-actions{display:flex;gap:8px}.log-stream{display:flex;flex-direction:column;gap:6px;max-height:360px;overflow:auto}.empty-log{color:#66788a;padding:12px 0}.debug-log-row{display:grid;grid-template-columns:72px minmax(0,1fr);gap:8px;border-left:3px solid #8795a5;background:#f6f9fc;padding:8px;font-size:12px}.debug-log-row time{color:#66788a}.log-info{border-color:#2f80c0}.log-warn{border-color:#d9822b}.log-error{border-color:#c43d3d}.simulation-workspace{display:grid;grid-template-columns:minmax(420px,560px) minmax(280px,1fr);gap:16px;align-items:start}.simulation-controls,.simulation-log{border:1px solid #d8dee6;border-radius:8px;background:#fff;padding:14px}.simulation-controls{display:flex;flex-direction:column;gap:10px}.simulation-status{display:flex;flex-direction:column;gap:4px;border-radius:6px;background:#f6f9fc;color:#1f2933;padding:10px;font-size:13px}.simulation-status small{color:#687789}.simulation-user-card{display:flex;flex-direction:column;gap:8px;margin:0;border:1px solid #d8dee6;border-radius:8px;background:#f8fafc;padding:10px}.simulation-debug-client-card{display:flex;flex-direction:column;gap:10px;border:1px solid #d8dee6;border-radius:8px;background:#fbfdff;padding:10px}.simulation-debug-client-card small{color:#66788a;line-height:1.45}.simulation-debug-client-meta{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin:0}.simulation-debug-client-meta div{display:grid;gap:3px}.simulation-debug-client-meta dt{color:#66788a;font-size:12px}.simulation-debug-client-meta dd{margin:0;color:#1f2933;font-size:13px;font-weight:700;overflow-wrap:anywhere}.simulation-user-card div{display:grid;gap:3px}.simulation-user-card dt{color:#66788a;font-size:12px}.simulation-user-card dd{margin:0;color:#1f2933;font-size:13px;font-weight:700;overflow-wrap:anywhere}.simulation-controls label{display:flex;flex-direction:column;gap:6px;color:#52616f;font-size:13px}.simulation-controls input{height:34px;border:1px solid #c8d0d9;border-radius:6px;color:#1f2933;background:#fff;padding:0 10px}.simulation-actions{display:flex;flex-wrap:wrap;gap:8px}.simulation-package-list{display:flex;flex-direction:column;gap:10px}.simulation-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.simulation-list-toolbar .text-button{flex:0 0 auto}.simulation-section-help{margin:0;color:#52616f;font-size:13px;line-height:1.55}.simulation-effect-picker-panel{display:flex;flex-direction:column;gap:10px;border:1px solid #d8dee6;border-radius:8px;background:#f8fafc;padding:10px}.simulation-complete-note,.simulation-list-summary,.simulation-empty-state{color:#66788a;font-size:12px;line-height:1.45}.simulation-complete-note,.simulation-list-summary,.simulation-empty-state{border-radius:6px;background:#eef5f8;padding:8px 10px}.simulation-section-toolbar,.simulation-package-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.simulation-search-field{display:grid!important;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:8px!important;border:1px solid #c8d0d9;border-radius:6px;background:#fff;padding:0 8px;color:#66788a!important}.simulation-search-field input{width:100%;height:34px;border:0;background:transparent;color:#1f2933;padding:0;outline:none}.simulation-effect-picker-list{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;max-height:280px;overflow:auto}.simulation-effect-picker-option{width:100%;border:1px solid #c8d0d9;border-radius:6px;background:#fff;color:#1f2933;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;text-align:left;cursor:pointer}.simulation-effect-picker-option:hover,.simulation-effect-picker-option.selected{border-color:#0f7884;background:#eef9fb}.simulation-effect-picker-option span{display:grid;gap:3px;min-width:0}.simulation-effect-picker-option strong{font-size:13px}.simulation-effect-picker-option code{color:#52616f;font-family:Consolas,Cascadia Code,monospace;font-size:12px;overflow-wrap:anywhere}.simulation-picker-actions{display:flex;flex-wrap:wrap;gap:8px}.simulation-package-card{display:flex;flex-direction:column;gap:8px;border:1px solid #d8dee6;border-radius:8px;background:#f8fafc;padding:10px}.simulation-package-card small{color:#687789;overflow-wrap:anywhere}.simulation-package-heading{display:grid;gap:4px;min-width:0}.simulation-package-heading strong{color:#1f2933;font-size:14px}.simulation-package-heading code{color:#52616f;font-family:Consolas,Cascadia Code,monospace;font-size:12px;overflow-wrap:anywhere}.simulation-package-row-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.simulation-package-summary{display:grid;gap:3px;color:#52616f;font-size:12px}.simulation-package-summary code,.simulation-package-summary strong{color:#1f2933;font-size:13px;overflow-wrap:anywhere}.simulation-inline-check{display:grid!important;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:8px!important;color:#1f2933!important;font-weight:700}.simulation-inline-check input{width:16px;height:16px;padding:0}.packaging-workspace{display:grid;grid-template-columns:280px minmax(0,1fr) minmax(280px,420px);gap:16px;align-items:start}.packaging-controls,.packaging-result,.integrity-preview{border:1px solid #d8dee6;border-radius:8px;background:#fff;padding:14px}.packaging-controls{display:flex;flex-direction:column;gap:10px}.packaging-controls label{display:flex;flex-direction:column;gap:6px;color:#52616f;font-size:13px}.packaging-controls input,.packaging-controls select{height:34px;border:1px solid #c8d0d9;border-radius:6px;color:#1f2933;background:#fff;padding:0 10px}.field-with-action{display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:8px;align-items:center}.local-service-note{border:1px solid #d8dee6;border-radius:6px;background:#f6f9fc;color:#52616f;padding:8px 10px;font-size:12px;line-height:1.4}.local-service-note-ok{border-color:#b7e4c7;background:#edf9f1;color:#17613d}.result-summary{display:flex;flex-direction:column;gap:8px}.result-summary code,.integrity-preview pre{display:block;border-radius:6px;background:#f6f9fc;color:#1f2933;padding:10px;overflow-wrap:anywhere;white-space:pre-wrap;font-family:Consolas,Cascadia Code,monospace;font-size:12px}.download-link{width:fit-content;height:34px;margin-top:14px;border:1px solid #c8d0d9;border-radius:6px;color:#243447;background:#fff;display:inline-flex;align-items:center;gap:7px;padding:0 12px;text-decoration:none}.download-link:hover{border-color:#55718f;background:#f6f9fc}.result-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:14px}.result-actions .download-link{margin-top:0}.packaging-side-column{display:flex;flex-direction:column;gap:16px;min-width:0}.version-management-panel{border:1px solid #d8dee6;border-radius:8px;background:#fff;padding:14px}.version-empty{border-radius:6px;background:#f6f9fc;color:#66788a;padding:10px;font-size:13px}.package-version-list{display:flex;flex-direction:column;gap:10px}.package-version-row{display:flex;flex-direction:column;gap:7px;border:1px solid #d8dee6;border-radius:6px;padding:10px;color:#243447}.package-version-row-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.package-version-row code,.package-version-row small{overflow-wrap:anywhere}.package-version-row code{border-radius:6px;background:#f6f9fc;padding:6px 8px;font-family:Consolas,Cascadia Code,monospace;font-size:12px}.package-version-row small{color:#66788a;line-height:1.4}.package-version-pill{flex:0 0 auto;display:inline-flex;align-items:center;min-height:24px;border:1px solid #d8dee6;border-radius:999px;padding:0 9px;font-size:12px;font-weight:700;white-space:nowrap}.package-version-pill-gray{border-color:#d8dee6;background:#f6f9fc;color:#66788a}.package-version-pill-amber{border-color:#f0c98d;background:#fff7e8;color:#8a5a00}.package-version-pill-green{border-color:#a8d8bd;background:#edf9f1;color:#17613d}.version-delete-steps{display:flex;flex-direction:column;gap:3px;color:#66788a;font-size:12px}.version-delete-steps .step-done{color:#17613d;font-weight:700}.package-version-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.users-workspace{display:grid;grid-template-columns:260px 260px minmax(320px,.85fr) minmax(420px,1.15fr);gap:16px;align-items:start}.users-list-panel,.user-create-panel,.user-detail-panel,.devices-panel,.entitlements-panel{border:1px solid #d8dee6;border-radius:8px;background:#fff;padding:14px}.users-list{display:flex;flex-direction:column;gap:6px}.user-row{width:100%;border:1px solid #d8dee6;border-radius:6px;background:#fff;padding:10px;text-align:left;display:flex;flex-direction:column;gap:4px;cursor:pointer;position:relative}.user-row.active,.user-row:hover{border-color:#55718f;background:#f6f9fc}.user-row small{color:#66788a}.user-row em{align-self:flex-start;font-style:normal}.user-status-pill{border-radius:999px;padding:2px 8px;background:#eef2f6;color:#52616f;font-size:12px;font-weight:700}.user-status-pill-enabled{background:#e8f6ef;color:#17613d}.user-status-pill-disabled{background:#f8e7e7;color:#8a2d2d}.user-create-panel,.user-detail-panel,.devices-panel,.entitlements-panel{display:flex;flex-direction:column;gap:10px}.users-list-panel{grid-row:1 / span 2}.devices-panel{grid-column:2 / 4}.entitlements-panel{grid-column:4;grid-row:1 / span 2}.device-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.device-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:start;border:1px solid #d8dee6;border-left:3px solid #23815d;border-radius:6px;padding:10px;background:#fff}.device-row-disabled{border-left-color:#a04343;background:snow}.device-main{min-width:0;display:flex;flex-direction:column;gap:4px}.device-main small,.device-main code{color:#66788a;overflow-wrap:anywhere}.device-row .text-button{grid-column:1 / -1;justify-self:start}.user-create-panel label,.user-detail-panel label,.entitlements-panel label{display:flex;flex-direction:column;gap:6px;color:#52616f;font-size:13px}.user-create-panel input,.user-detail-panel input,.password-reset-row input,.entitlements-panel select{height:34px;border:1px solid #c8d0d9;border-radius:6px;color:#1f2933;background:#fff;padding:0 10px}.user-detail-panel textarea{min-height:116px;border:1px solid #c8d0d9;border-radius:6px;color:#1f2933;background:#fff;padding:10px;resize:vertical;font-family:Consolas,Cascadia Code,monospace;font-size:12px;line-height:1.5}.user-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.user-summary-grid div{border-left:3px solid #2f80c0;border-radius:6px;background:#f6f9fc;padding:8px 10px;display:flex;flex-direction:column;gap:3px}.user-summary-grid span{color:#66788a;font-size:12px}.user-summary-grid strong{color:#1f2933;font-size:13px;overflow-wrap:anywhere}.user-management-actions,.password-reset-row,.entitlement-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.password-reset-row input,.entitlement-toolbar select{min-width:0;flex:1}.version-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 10px;font-size:13px}.version-row span{color:#66788a}.version-row strong{overflow-wrap:anywhere}.entitlement-help{margin:0;color:#52616f;line-height:1.6;font-size:13px}.entitlement-list-summary{border-radius:6px;background:#f6f9fc;color:#52616f;padding:8px 10px;font-size:13px}.user-effect-search-field{min-height:34px;border:1px solid #c8d0d9;border-radius:6px;background:#fff;color:#52616f;padding:0 10px;display:flex!important;flex-direction:row!important;align-items:center;gap:8px}.user-effect-search-field input{min-width:0;height:32px;flex:1;border:0;outline:0;padding:0;color:#1f2933;background:transparent}.user-effect-picker-panel{border:1px solid #d8dee6;border-radius:6px;background:#f8fafc;padding:10px;display:flex;flex-direction:column;gap:8px}.user-effect-picker-list{display:flex;flex-direction:column;gap:6px;max-height:260px;overflow:auto}.user-effect-picker-option{width:100%;border:1px solid #d8dee6;border-radius:6px;background:#fff;color:#1f2933;padding:8px 10px;display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left;cursor:pointer}.user-effect-picker-option:hover,.user-effect-picker-option.selected{border-color:#55718f;background:#eef6ff}.user-effect-picker-option span{min-width:0;display:flex;flex-direction:column;gap:3px}.user-effect-picker-option code,.user-effect-picker-option small{color:#66788a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-effect-picker-actions{display:flex;flex-wrap:wrap;gap:8px}.entitlement-list{display:flex;flex-direction:column;gap:8px}.entitlement-row{display:grid;grid-template-columns:minmax(180px,1fr) 72px 70px 34px;gap:8px;align-items:center;border:1px solid #d8dee6;border-radius:6px;padding:8px}.entitlement-row-required{background:#f6f9fc}.entitlement-main{display:flex;min-width:0;flex-direction:column;gap:3px}.entitlement-main strong,.entitlement-main small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entitlement-main small{color:#66788a}.entitlement-row label{flex-direction:row;align-items:center}.required-pill{display:inline-flex;align-items:center;justify-content:center;gap:3px;border-radius:999px;background:#eef2f6;color:#52616f;min-height:24px;padding:0 8px;font-size:12px;font-weight:700}.required-pill-on{background:#e8f6ef;color:#17613d}.user-empty{border:1px dashed #c8d0d9;border-radius:6px;color:#66788a;padding:10px;text-align:center}.publishing-workspace{display:grid;grid-template-columns:minmax(280px,1fr) minmax(320px,1fr) minmax(260px,360px);gap:16px;align-items:start}.client-versions-workspace{display:flex;flex-direction:column;gap:14px}.client-version-toolbar,.client-version-build-panel,.client-version-list-panel{border:1px solid #d8dee6;border-radius:8px;background:#fff;padding:14px}.client-version-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.client-version-build-panel{display:flex;flex-direction:column;gap:12px}.client-version-build-grid{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:10px}.client-version-build-grid div{display:grid;gap:4px;border-radius:6px;background:#f6f9fc;padding:9px 10px}.client-version-build-grid span,.client-version-build-panel small{color:#66788a;font-size:12px}.client-version-build-grid strong{color:#1f2933;font-size:13px;overflow-wrap:anywhere}.client-version-build-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.segmented-control{display:inline-flex;overflow:hidden;border:1px solid #bfd0dc;border-radius:6px;background:#fff}.segmented-option{min-height:32px}.segmented-option input{position:absolute;opacity:0;pointer-events:none}.segmented-option span{display:inline-flex;align-items:center;min-height:32px;border-left:1px solid #d8dee6;padding:0 12px;color:#0f3e57;font-size:13px;font-weight:700;cursor:pointer}.segmented-option:first-child span{border-left:0}.segmented-option input:checked+span{background:#0f7884;color:#fff}.file-select-button{position:relative;display:inline-flex;align-items:center;gap:6px;min-height:34px;border:1px solid #b7c4d1;border-radius:6px;padding:0 12px;color:#0f3e57;background:#f8fbfd;cursor:pointer}.file-select-button input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.client-version-list{display:flex;flex-direction:column;gap:10px}.client-version-row{border:1px solid #d8dee6;border-radius:8px;background:#fbfdff;overflow:hidden}.client-version-row-header{display:grid;grid-template-columns:20px minmax(90px,150px) auto minmax(180px,1fr);gap:10px;align-items:center;width:100%;min-height:44px;border:0;background:transparent;padding:10px 12px;text-align:left}.client-version-row-header small{color:#66788a;overflow-wrap:anywhere}.client-version-row-body{display:flex;flex-direction:column;gap:10px;border-top:1px solid #e2e8ef;padding:12px}.client-version-meta-grid{display:grid;grid-template-columns:minmax(120px,180px) minmax(120px,180px) minmax(90px,120px) minmax(220px,1fr);gap:10px}.client-version-meta-grid label{display:flex;flex-direction:column;gap:5px;color:#52616f;font-size:13px}.client-version-meta-grid input,.client-version-meta-grid textarea{border:1px solid #c8d0d9;border-radius:6px;color:#1f2933;font:inherit}.client-version-meta-grid input{min-height:32px;padding:0 8px}.client-version-meta-grid input[type=checkbox]{width:20px;min-height:20px}.client-version-meta-grid textarea{min-height:68px;resize:vertical;padding:8px}.client-version-detail-list{display:flex;flex-direction:column;gap:6px}.client-version-detail-list code,.client-version-detail-list small{overflow-wrap:anywhere}.client-version-detail-list code{border-radius:6px;background:#f6f9fc;padding:6px 8px;font-family:Consolas,Cascadia Code,monospace}.warning-text{color:#9b4d00}.publishing-panel{border:1px solid #d8dee6;border-radius:8px;background:#fff;padding:14px;display:flex;flex-direction:column;gap:10px}.catalog-list,.publish-form{display:flex;flex-direction:column;gap:8px}.catalog-row,.pending-row{border:1px solid #d8dee6;border-radius:6px;padding:10px;display:flex;flex-direction:column;gap:4px}.catalog-row span,.catalog-row small,.pending-row span,.pending-row small{color:#66788a}.catalog-actions{display:flex;gap:8px;margin-top:6px}.publish-form label{display:flex;flex-direction:column;gap:6px;color:#52616f;font-size:13px}.publish-form input{min-height:34px;border:1px solid #c8d0d9;border-radius:6px;color:#1f2933;background:#fff;padding:6px 10px}.publishing-panel code{display:block;border-radius:6px;background:#f6f9fc;color:#1f2933;padding:10px;overflow-wrap:anywhere;white-space:pre-wrap;font-family:Consolas,Cascadia Code,monospace;font-size:12px}.download-verification-panel{min-height:240px}.download-verification-hint,.download-verification-unavailable{margin:0;color:#52616f;font-size:13px;line-height:1.5}.download-verification-unavailable{color:#9b4d00}.download-verification-details{display:grid;gap:8px;margin:0}.download-verification-details div{display:grid;gap:3px;border:1px solid #e0e7ef;border-radius:6px;background:#fbfdff;padding:8px 9px}.download-verification-details dt{color:#66788a;font-size:12px}.download-verification-details dd{margin:0;color:#1f2933;font-size:13px;overflow-wrap:anywhere}.obs-workspace{display:grid;grid-template-columns:280px minmax(320px,.8fr) minmax(360px,1fr);gap:16px;align-items:start}.obs-panel{border:1px solid #d8dee6;border-radius:8px;background:#fff;padding:14px;display:flex;flex-direction:column;gap:10px}.obs-panel label{display:flex;flex-direction:column;gap:6px;color:#52616f;font-size:13px}.obs-panel .checkbox-row{flex-direction:row;align-items:center}.obs-panel input:not([type=checkbox]){height:34px;border:1px solid #c8d0d9;border-radius:6px;color:#1f2933;background:#fff;padding:0 10px}.obs-state-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.obs-lists-panel,.obs-log-panel{min-height:300px}.obs-list-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.obs-name-list{display:flex;flex-direction:column;gap:6px;max-height:360px;margin-top:8px;overflow:auto}.obs-name-list span{border:1px solid #d8dee6;border-radius:6px;background:#f6f9fc;padding:7px 8px;color:#52616f;font-size:12px;overflow-wrap:anywhere}@media(max-width:900px){.admin-shell{grid-template-columns:1fr}.sidebar{position:static}.topbar,.connection-block,.login-block,.workspace-title{align-items:stretch;flex-direction:column}.server-field,.server-field input,.login-input,.text-button{width:100%}.design-workspace,.effect-creator-workspace,.manual-recolor-layout,.simulation-workspace,.packaging-workspace,.users-workspace{grid-template-columns:1fr}.users-list-panel,.devices-panel,.entitlements-panel{grid-column:auto;grid-row:auto}.device-list,.publishing-workspace,.obs-workspace,.entitlement-row{grid-template-columns:1fr}}
