:root{color:#dde4eb;background:#202831;font-family:Tahoma,Verdana,Arial,sans-serif;font-synthesis:none;font-weight:400;line-height:1.5;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;--canvas: #202831;--panel: #2a333d;--panel-alt: #242d36;--panel-border: #4a5867;--panel-strong: #313b46;--muted: #a1adba;--accent: #667b92;--accent-strong: #a9b7c6;--danger: #cf8b96;--success: #84af93;--warning: #c6a371}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-width:320px;background:var(--canvas);color:inherit}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.65}h1,h2,h3,p{margin:0}#root,.app-shell{min-height:100vh}.app-header{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.85rem 1.5rem;border-bottom:1px solid var(--panel-border);background:var(--panel-strong);box-shadow:none}.app-header__brand{display:inline-block;font-size:1.08rem;font-weight:600;letter-spacing:0}.app-header__subtitle{margin-top:.15rem;color:var(--muted);font-size:.86rem}.app-header__actions{display:flex;align-items:center;gap:.75rem}.user-chip{display:inline-flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:2.5rem;padding:.45rem .8rem;border:1px solid var(--panel-border);border-radius:2px;background:#26303a;color:#d8e1ec}.user-chip small{color:#93a2b5;font-size:.76rem}.page-shell{max-width:1400px;margin:0 auto;padding:2rem}.page-grid{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.stack,.stack-xl{display:grid;gap:1rem}.stack-xl{gap:1.5rem}.card,.auth-card,.surface-card{border:1px solid var(--panel-border);border-radius:2px;background:var(--panel);box-shadow:none}.card,.surface-card{padding:1rem}.card--hero{background:var(--panel-strong);border-color:#566576}.card--nested{padding:1rem;border-radius:2px;background:var(--panel-alt);border:1px solid var(--panel-border);box-shadow:none}.auth-card{width:min(520px,calc(100vw - 2rem));padding:1.25rem}.center-screen{min-height:100vh;display:grid;place-items:center;padding:1rem}.section-label{color:var(--accent-strong);font-size:.74rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.helper-text{color:var(--muted)}.error-text{color:var(--danger)}.success-text{color:var(--success)}.field-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.field{display:grid;gap:.5rem}.field span{color:var(--muted);font-size:.92rem}.field input,.field select,.field textarea{width:100%;min-height:2.65rem;padding:.68rem .8rem;border:1px solid var(--panel-border);border-radius:2px;background:#1b232c;color:inherit}.field textarea{min-height:8rem;resize:vertical}.button-row,.button-column{display:flex;gap:.75rem;flex-wrap:wrap}.button-column{flex-direction:column}.button{display:inline-flex;align-items:center;justify-content:center;min-height:2.5rem;padding:.62rem .95rem;border:1px solid #6387b3;border-radius:2px;background:#55697f;color:#f4f7fb;cursor:pointer;font-weight:600}.button--ghost{border-color:var(--panel-border);background:#252f39;color:#d8e1ec}.divider-with-label{position:relative;display:flex;justify-content:center;align-items:center;margin:.25rem 0}.divider-with-label:before{content:"";position:absolute;inset:50% 0 auto;border-top:1px solid var(--panel-border)}.divider-with-label span{position:relative;padding:0 .75rem;background:var(--panel);color:var(--muted);font-size:.84rem}.card-list{display:grid;gap:.35rem}.item-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem .95rem;border-radius:2px;border:1px solid var(--panel-border);background:var(--panel-alt)}.item-card--static{align-items:flex-start}.item-card__link{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex:1;min-width:0;color:inherit;text-decoration:none}.registry-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;padding:.8rem .9rem;border-radius:2px;border:1px solid var(--panel-border);background:var(--panel-alt)}.registry-row__main{min-width:0;display:grid;gap:.2rem}.registry-row__meta{display:flex;gap:.75rem;flex-wrap:wrap}.registry-row__actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;justify-content:flex-end}.link-arrow{color:var(--accent-strong)}.empty-state{padding:1rem;border-radius:2px;border:1px solid var(--panel-border);background:var(--panel-alt);color:var(--muted)}.status-pill{display:inline-flex;align-items:center;justify-content:center;min-width:4rem;padding:.28rem .55rem;border:1px solid transparent;border-radius:2px;font-size:.76rem;font-weight:600;text-transform:uppercase;background:#2a3644}.status-pill--ready,.status-pill--online{border-color:#84af9359;background:#84af9324;color:var(--success)}.status-pill--error{border-color:#cf8b9659;background:#cf8b9624;color:var(--danger)}.status-pill--idle,.status-pill--offline{border-color:var(--panel-border);background:var(--panel-alt);color:var(--muted)}.surface-card{display:grid;gap:1rem}.surface-card__header,.surface-info-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.asset-control-card__header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;flex-wrap:wrap}.panel-assets{padding:0;overflow:hidden}.asset-row{display:grid;gap:0;padding:0;border:0;border-radius:0;background:transparent}.asset-row+.asset-row{border-top:1px solid rgba(255,255,255,.08)}.asset-row--expanded{background:#202b37}.asset-row__summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:.85rem;align-items:center;padding:.7rem .85rem}.asset-row__main{min-width:0;display:flex;align-items:center}.asset-row__main strong{font-size:.98rem}.asset-row__message{min-width:0;color:#95a5b7;font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.asset-row__controls{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;justify-content:flex-end}.asset-row__feedback{padding:0 .85rem .7rem;font-size:.88rem}.asset-row__details{display:grid;gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));padding:.8rem .85rem .85rem;border-top:1px solid rgba(255,255,255,.08)}.asset-actions{display:grid;gap:.85rem}.asset-actions__section,.asset-actions__stack{display:grid;gap:.5rem}.asset-actions__section-title,.asset-actions__title{font-weight:600}.asset-actions__section-title{color:var(--accent-strong);font-size:.84rem;letter-spacing:.04em;text-transform:uppercase}.asset-actions__quick-row,.asset-actions__segments{gap:.4rem}.asset-actions__card{display:grid;gap:.65rem;padding:.7rem;border:1px solid var(--panel-border);border-radius:2px;background:#141c246b}.asset-actions__choice-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.55rem .7rem;border:1px solid var(--panel-border);border-radius:2px;background:#141c246b}.asset-actions__title[title],.asset-actions__run-button[title]{cursor:help}.asset-actions__run-button{justify-self:flex-start}.asset-form .schema-form,.asset-form .schema-form__object{display:grid;gap:.55rem}.asset-form .schema-form,.asset-form .schema-form__object{margin:0}.asset-form .schema-form__property{display:grid;grid-template-columns:minmax(0,1fr) minmax(12rem,18rem);align-items:center;gap:.45rem .75rem;margin:0;padding:.15rem 0}.asset-form .schema-form__property--stacked{grid-template-columns:1fr}.asset-form .schema-form__meta{min-width:0}.asset-form .schema-form__label{color:var(--muted);font-size:.86rem;line-height:1.3}.asset-form .schema-form__description{margin:.15rem 0 0;color:var(--muted);font-size:.78rem}.asset-form .schema-form__control{justify-self:stretch;width:100%;min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:.5rem}.asset-form .schema-form__property--stacked .schema-form__control{justify-content:flex-start}.asset-form .asset-form-segmented,.asset-form .schema-form__segments{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.35rem;width:100%}.asset-form .schema-form__input{width:100%;min-height:2.2rem;padding:.42rem .62rem;border:1px solid var(--panel-border);border-radius:2px;background:#18212a;color:inherit;box-shadow:none}.asset-form .schema-form__select{appearance:none;padding-right:2rem;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 14px) calc(50% - 3px),calc(100% - 9px) calc(50% - 3px);background-size:5px 5px;background-repeat:no-repeat}.asset-form .schema-form__textarea{min-height:5.5rem;resize:vertical}.asset-form .schema-form__color{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;width:100%}.asset-form .schema-form__swatch{width:3rem;min-width:3rem;min-height:2.2rem;padding:.18rem;border:1px solid var(--panel-border);border-radius:2px;background:#18212a}.asset-form .schema-form__checkbox{width:1.05rem;height:1.05rem;accent-color:#7d9bc0}.asset-form .schema-form__array,.asset-form .schema-form__array-item{display:grid;gap:.45rem;width:100%}.asset-form .schema-form__array-body{width:100%}.asset-form .schema-form__array-button{justify-self:flex-start}.asset-form .schema-form__input:focus,.asset-form .schema-form__select:focus,.asset-form .schema-form__textarea:focus,.asset-form .schema-form__swatch:focus{outline:1px solid #7d9bc0;border-color:#7d9bc0}.button--small{min-height:2.25rem;padding:.42rem .75rem;font-size:.88rem;font-weight:700}.button--active{border-color:#7d9bc0;background:#3d536c;color:#f4f7fb}.button--danger{border-color:#cf8b964d;color:var(--danger)}.renderer-stage{position:relative;overflow:hidden;width:min(100%,var(--renderer-stage-width, 1920px));max-width:100%;margin-inline:auto;flex:0 0 auto;border-radius:2px;background:#0f141a;border:1px solid var(--panel-border)}.renderer-stage__canvas,.renderer-stage__layer{position:absolute;inset:0}.renderer-stage__canvas>*{width:100%;height:100%}.renderer-stage__layer>*{width:100%;height:100%}.renderer-stage--bare{width:min(100vw,var(--renderer-stage-width, 1920px),calc(100vh * var(--renderer-stage-aspect, 1.7777778)));max-width:100vw;max-height:min(100vh,var(--renderer-stage-height, 1080px));border:0;border-radius:0;background:#000}.renderer-page{min-height:100vh;display:grid;place-items:center;background:#000;overflow:hidden}.stat-grid{display:grid;gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:1rem}.stat-card{display:grid;gap:.25rem;padding:.8rem;border-radius:2px;background:var(--panel-alt);border:1px solid var(--panel-border)}.stat-card span{color:var(--muted);font-size:.88rem}.compact-log-card h2{margin-top:.15rem}.compact-log{display:grid;gap:.25rem;max-height:220px;overflow:auto}.compact-log__row{display:grid;grid-template-columns:7rem minmax(0,1.2fr) 7rem minmax(0,1.6fr);gap:.75rem;align-items:center;padding:.4rem .55rem;border-radius:2px;border:1px solid var(--panel-border);background:var(--panel-alt);font-size:.82rem}.compact-log__time{color:var(--muted);font-variant-numeric:tabular-nums}.compact-log__asset,.compact-log__command,.compact-log__result{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compact-log__command{color:#dce6fb}.compact-log__result--ready,.compact-log__result--online{color:var(--success)}.compact-log__result--error{color:var(--danger)}.compact-log__result--idle,.compact-log__result--offline{color:var(--muted)}@media(max-width:900px){.app-header,.surface-card__header,.surface-info-row,.item-card,.asset-row__summary,.registry-row{align-items:flex-start}.app-header{flex-direction:column}.app-header__actions{width:100%;justify-content:space-between}.page-shell{padding:1rem}.asset-row__summary,.compact-log__row,.registry-row{grid-template-columns:1fr}.asset-row__status,.asset-row__controls,.registry-row__actions{justify-content:flex-start}.asset-actions__choice-row,.asset-form .schema-form__property{grid-template-columns:1fr}.asset-form .schema-form__control,.asset-form .schema-form__property--stacked .schema-form__control,.asset-form .asset-form-segmented,.asset-form .schema-form__segments,.asset-form .schema-form__color{justify-content:flex-start}}
