.as-root{display:flex;flex-direction:column;height:100%;min-height:0;overflow-y:auto;padding:1.5rem;gap:1.25rem}.as-header{display:flex;align-items:center;justify-content:space-between}.as-header-left{display:flex;align-items:center;gap:.625rem;color:var(--vs-text-primary)}.as-title{margin:0;font-size:1.25rem;font-weight:700}.as-subtitle{color:var(--vs-text-tertiary);font-size:.8125rem}.as-create-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem 1.125rem;border:none;border-radius:.625rem;background:var(--vs-accent);color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.as-create-btn:hover{opacity:.9;transform:translateY(-.0625rem);box-shadow:0 .25rem .75rem rgba(0,0,0,.15)}.as-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(17.5rem,1fr));gap:1rem}.as-card{display:flex;flex-direction:column;border:.0625rem solid var(--vs-border);border-radius:.75rem;background:var(--vs-bg-secondary);overflow:hidden;cursor:pointer;transition:all .2s}.as-card:hover{border-color:var(--vs-accent);transform:translateY(-.125rem);box-shadow:0 .5rem 1.5rem rgba(0,0,0,.1)}.as-card-cover{height:10rem;background:var(--vs-bg-tertiary);overflow:hidden}.as-card-cover img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.as-card-cover-empty{display:flex;align-items:center;justify-content:center;height:100%;color:var(--vs-text-tertiary)}.as-card-body{display:flex;flex-direction:column;gap:.5rem;padding:.875rem}.as-card-top{display:flex;align-items:center;justify-content:space-between}.as-card-title{margin:0;font-size:.9375rem;font-weight:600;color:var(--vs-text-primary)}.as-card-desc{margin:0;font-size:.8125rem;color:var(--vs-text-tertiary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.as-card-footer{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--vs-text-tertiary)}.as-card-time{flex:1}.as-card-delete{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:0;border:none;border-radius:.375rem;background:transparent;color:var(--vs-text-tertiary);cursor:pointer;opacity:0;transition:all .2s}.as-card:hover .as-card-delete{opacity:1}.as-card-delete:hover{background:rgba(239,68,68,.1);color:#ef4444}.as-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:.75rem;color:var(--vs-text-tertiary);font-size:.875rem}.as-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.4);backdrop-filter:blur(.25rem)}.as-modal{width:90%;max-width:30rem;padding:1.5rem;border-radius:1rem;background:var(--vs-bg-primary);box-shadow:0 1.25rem 3.75rem rgba(0,0,0,.2)}.as-modal-title{margin:0 0 1rem;font-size:1.125rem;font-weight:600;color:var(--vs-text-primary)}.as-modal-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}.as-form-item{display:flex;flex-direction:column;gap:.375rem;margin-bottom:.75rem}.as-form-item label{font-size:.8125rem;font-weight:500;color:var(--vs-text-secondary)}.as-input,.as-textarea{padding:.5rem .75rem;border:.0625rem solid var(--vs-border);border-radius:.5rem;background:var(--vs-bg-secondary);color:var(--vs-text-primary);font-family:inherit;font-size:.875rem;outline:none;resize:vertical}.as-input:focus,.as-textarea:focus{border-color:var(--vs-accent)}.as-textarea--result{background:var(--vs-bg-tertiary);line-height:1.7}.as-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1.125rem;border:.0625rem solid transparent;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.as-btn--primary{background:var(--vs-accent);color:#fff;border-color:var(--vs-accent)}.as-btn--primary:hover{opacity:.9}.as-btn--primary:disabled{opacity:.5;cursor:not-allowed}.as-btn--ghost{background:transparent;color:var(--vs-text-secondary);border-color:var(--vs-border)}.as-btn--ghost:hover{border-color:var(--vs-text-primary);color:var(--vs-text-primary)}.as-icon-btn{display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;border:.0625rem solid var(--vs-border);border-radius:.5rem;background:transparent;color:var(--vs-text-secondary);cursor:pointer;transition:all .2s}.as-icon-btn:hover{background:var(--vs-bg-tertiary);color:var(--vs-text-primary)}.as-workspace{padding:0;gap:0;overflow:hidden}.as-ws-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.25rem;border-bottom:.0625rem solid var(--vs-border)}.as-ws-header-left{display:flex;align-items:center;gap:.625rem}.as-ws-title{margin:0;font-size:1rem;font-weight:600;color:var(--vs-text-primary)}.as-ws-progress{font-size:.8125rem;color:var(--vs-text-tertiary)}.as-ws-content{flex:1;overflow-y:auto;padding:1.25rem}.as-steps{display:flex;align-items:center;padding:1rem 1.25rem;border-bottom:.0625rem solid var(--vs-border);background:var(--vs-bg-secondary);gap:0;overflow-x:auto}.as-step{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:.5rem;cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0}.as-step:hover{background:var(--vs-bg-tertiary)}.as-step--active{background:color-mix(in srgb,var(--vs-accent) 12%,transparent)}.as-step--active .as-step-label{color:var(--vs-accent);font-weight:600}.as-step--disabled{opacity:.5;pointer-events:none}.as-step-indicator{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:50%;background:var(--vs-bg-tertiary);color:var(--vs-text-tertiary);font-size:.75rem;font-weight:600;flex-shrink:0}.as-step--active .as-step-indicator{background:var(--vs-accent);color:#fff}.as-step--completed .as-step-indicator{background:var(--vs-success, #34c759);color:#fff}.as-step--running .as-step-indicator{background:var(--vs-accent);color:#fff}.as-step-label{font-size:.8125rem;color:var(--vs-text-secondary)}.as-step-line{width:1.5rem;height:.125rem;background:var(--vs-border);flex-shrink:0;margin:0 .25rem}.as-step-line--done{background:var(--vs-success, #34c759)}.as-stage{display:flex;flex-direction:column;gap:1rem}.as-stage-header h3{margin:0;font-size:1.125rem;font-weight:600;color:var(--vs-text-primary)}.as-stage-desc{margin:.25rem 0 0;font-size:.8125rem;color:var(--vs-text-tertiary)}.as-stage-body{display:flex;flex-direction:column;gap:1rem}.as-stage-empty{padding:2.5rem;text-align:center;color:var(--vs-text-tertiary);font-size:.875rem}.as-result{display:flex;flex-direction:column;gap:.375rem}.as-result label{font-size:.8125rem;font-weight:500;color:var(--vs-text-secondary)}.as-storyboard-list{display:flex;flex-direction:column;gap:.75rem}.as-sb-card{display:flex;gap:.875rem;padding:1rem;border:.0625rem solid var(--vs-border);border-radius:.75rem;background:var(--vs-bg-secondary)}.as-sb-index{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:50%;background:var(--vs-accent);color:#fff;font-size:.875rem;font-weight:600;flex-shrink:0}.as-sb-content{flex:1;display:flex;flex-direction:column;gap:.5rem;min-width:0}.as-sb-field label{display:block;font-size:.6875rem;font-weight:600;color:var(--vs-text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.125rem}.as-sb-field p{margin:0;font-size:.875rem;color:var(--vs-text-primary);line-height:1.6}.as-sb-prompt{font-family:SF Mono,Monaco,Consolas,monospace;font-size:.75rem!important;color:var(--vs-text-secondary)!important;background:var(--vs-bg-tertiary);padding:.375rem .625rem;border-radius:.375rem}.as-sb-meta{font-size:.75rem;color:var(--vs-text-tertiary)}.as-image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.75rem}.as-img-card{border:.0625rem solid var(--vs-border);border-radius:.625rem;overflow:hidden;background:var(--vs-bg-secondary)}.as-img-preview{height:8.75rem;background:var(--vs-bg-tertiary);overflow:hidden}.as-img-preview img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.as-img-placeholder{display:flex;align-items:center;justify-content:center;height:100%;color:var(--vs-text-tertiary)}.as-img-info{padding:.625rem}.as-img-index{font-size:.75rem;font-weight:600;color:var(--vs-accent)}.as-img-desc{margin:.25rem 0 0;font-size:.75rem;color:var(--vs-text-tertiary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.as-camera-list{display:flex;flex-direction:column;gap:.625rem}.as-camera-item{display:flex;align-items:center;gap:.875rem;padding:.75rem;border:.0625rem solid var(--vs-border);border-radius:.625rem;background:var(--vs-bg-secondary)}.as-camera-preview{width:5rem;height:3.125rem;border-radius:.375rem;overflow:hidden;flex-shrink:0}.as-camera-preview img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.as-camera-info{flex:1;display:flex;flex-direction:column;gap:.375rem}.as-camera-index{font-size:.8125rem;font-weight:600;color:var(--vs-text-primary)}.as-camera-types{display:flex;flex-wrap:wrap;gap:.25rem}.as-camera-type{padding:.25rem .625rem;border:.0625rem solid var(--vs-border);border-radius:.875rem;background:transparent;color:var(--vs-text-secondary);font-size:.75rem;cursor:pointer;transition:all .2s}.as-camera-type:hover{border-color:var(--vs-accent);color:var(--vs-accent)}.as-camera-type.active{background:var(--vs-accent);border-color:var(--vs-accent);color:#fff}.as-video-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(12.5rem,1fr));gap:.75rem}.as-video-item{border:.0625rem solid var(--vs-border);border-radius:.625rem;overflow:hidden;background:var(--vs-bg-secondary)}.as-video-preview{position:relative;height:7.5rem;background:var(--vs-bg-tertiary);overflow:hidden}.as-video-preview img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.as-video-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.3);color:#fff}.as-video-info{display:flex;align-items:center;gap:.5rem;padding:.5rem .625rem;font-size:.75rem;color:var(--vs-text-secondary)}.as-video-duration{color:var(--vs-accent);font-weight:500}.as-video-camera{padding:.0625rem .375rem;border-radius:.25rem;background:var(--vs-bg-tertiary);font-size:.6875rem}.as-spin{animation:as-spin 1s linear infinite}@keyframes as-spin{to{transform:rotate(360deg)}}@media(max-width:640px){.as-root{padding:1rem}.as-grid{grid-template-columns:1fr}.as-header{flex-direction:column;align-items:flex-start;gap:.75rem}.as-steps{padding:.75rem}}
