.form-error{color:red}.auth-heading{color:#393939;font-size:2rem}.auth-form{background-color:#fff;border-radius:.5rem;border:.1rem solid rgb(216,216,216);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem;-webkit-border-radius:.5rem;-moz-border-radius:.5rem;-ms-border-radius:.5rem;-o-border-radius:.5rem}.auth-button{color:#fff;cursor:pointer;margin-top:1rem;width:21rem;height:3rem;font-size:1.4rem;border-radius:.3rem;border:none;background-color:var(--third-color);font-weight:600;-webkit-border-radius:.3rem;-moz-border-radius:.3rem;-ms-border-radius:.3rem;-o-border-radius:.3rem}.auth-button:hover{background-color:var(--primary-color)}.auth-button:disabled{cursor:not-allowed}.outer{height:100vh;width:100vw;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem}.name-input-container{display:flex;gap:1rem}.name-input{color:#3a3a3a;font-size:1rem;padding:.5rem 1rem;width:10rem;border:1px solid rgb(221,220,220);border-radius:.3rem;-webkit-border-radius:.3rem;-moz-border-radius:.3rem;-ms-border-radius:.3rem;-o-border-radius:.3rem}.name-input::placeholder{color:#8e8e8e}.name-input:disabled{cursor:not-allowed}.auth-input{color:#3a3a3a;font-size:1rem;padding:.5rem 1rem;width:21rem;border:1px solid rgb(221,220,220);border-radius:.3rem;-webkit-border-radius:.3rem;-moz-border-radius:.3rem;-ms-border-radius:.3rem;-o-border-radius:.3rem}.auth-input::placeholder{color:#8e8e8e}.auth-input:disabled{cursor:not-allowed}.label-row{color:#606060;display:flex;flex-direction:column;justify-content:center;gap:.3rem}.label-row div{font-size:.9rem}.red-text{color:red;margin-left:.2rem}.label-row div{display:flex}.show-icon{position:absolute;right:.7rem;cursor:pointer;font-size:1.5rem;color:#666}.password-input-container{position:relative;display:flex;align-items:center}.auth-switch-text{color:#606060;font-size:1rem}.auth-switch-button{all:unset;color:var(--primary-color);font-weight:400;font-size:1rem;cursor:pointer}.auth-switch-button:disabled{cursor:not-allowed}.auth-switch-button:hover{text-decoration:underline}.auth-switch-button:focus{text-decoration:underline}.otp-container{width:21rem;display:flex;gap:1rem}.otp-input{color:#3a3a3a;font-size:1rem;padding:.5rem 1rem;width:100%;border:1px solid rgb(221,220,220);border-radius:.3rem;-webkit-border-radius:.3rem;-moz-border-radius:.3rem;-ms-border-radius:.3rem;-o-border-radius:.3rem}.otp-input::placeholder{color:#8e8e8e}.otp-input:disabled{cursor:not-allowed}.resend-otp{all:unset;color:var(--primary-color);cursor:pointer}.resend-otp:disabled{cursor:not-allowed}.forgot-password-container{position:relative;width:21rem}.forgot-password{all:unset;color:var(--primary-color);cursor:pointer;position:absolute;right:0rem;font-size:.9rem;font-weight:400}.forgot-password:disabled{cursor:not-allowed}.forgot-password:hover{text-decoration:underline}.forgot-password:focus{text-decoration:underline}.login-button{color:#fff;cursor:pointer;width:5rem;height:2rem;font-size:1.1rem;border-radius:.4rem;border:none;background-color:var(--third-color);font-weight:600;-webkit-border-radius:.4rem;-moz-border-radius:.4rem;-ms-border-radius:.4rem;-o-border-radius:.4rem}.login-button:hover{background-color:var(--primary-color)}.login-button:disabled{cursor:not-allowed}.header{width:100vw;height:3.5rem;display:flex;padding:.4rem 1.5rem;justify-content:space-between;align-items:center;position:fixed;background-color:#fff;box-shadow:0 2px 10px #0000000f;z-index:900}.header-nav{display:flex;gap:1.5rem}.nav-link{font-size:1rem;font-weight:500;color:#374151;text-decoration:none;padding:.3rem .2rem;border-bottom:2px solid transparent}.nav-link:hover{color:var(--primary-color)}.nav-link.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.user-name{font-size:1.05rem}.profile-container{cursor:pointer;display:flex;align-items:center;gap:.5rem}.avatar-container{display:flex;flex-direction:column;position:relative}.avatar{border-radius:50%;-webkit-border-radius:50%;-moz-border-radius:50%;-ms-border-radius:50%;-o-border-radius:50%;overflow:hidden}.avatar-img-fallback{background-color:var(--primary-color);color:#fff;font-size:.9rem;font-weight:600;display:flex;align-items:center;justify-content:center}.avatar-menu{position:absolute;right:0;top:3rem;background:#fff;border:1px solid #ddd;border-radius:6px;min-width:8rem;box-shadow:0 4px 12px #0000001a;z-index:902}.avatar-menu-item{width:100%;padding:.5rem 1rem;background:none;border:none;text-align:left;cursor:pointer}.avatar-menu-item:hover{background:#f5f5f5}.avatar-menu-item.danger{color:red}.user-name{display:none}@media screen and (min-width:700px){.user-name{display:inline}}.logo{cursor:pointer;font-size:1.6rem;font-weight:800;display:flex}.left-logo{font-size:inherit;color:var(--primary-color)}.right-logo{font-size:inherit;color:var(--fourth-color)}.white-logo{font-size:inherit;color:#fff}.feedback-overlay{position:fixed;inset:0;background:#00000080;z-index:300;display:flex;align-items:center;justify-content:center}.feedback-modal{width:100%;max-width:420px;background:#fff;border-radius:8px;padding:20px}.feedback-title{font-size:1.3rem;font-weight:600;margin-bottom:16px}.feedback-label{display:flex;font-size:.9rem;margin-bottom:6px;margin-top:12px}.feedback-select,.feedback-textarea{width:100%;padding:8px 10px;border-radius:6px;border:1px solid #ddd;font-size:.95rem}.feedback-textarea{resize:vertical}.feedback-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.btn{padding:6px 14px;border-radius:6px;font-size:.9rem;cursor:pointer;border:none}.btn.primary{background-color:var(--primary-color);color:#fff}.btn.secondary{background:#e5e7eb}.btn:disabled{opacity:.6;cursor:not-allowed}.error-display{color:red;font-size:1.2rem;text-align:center;border:none;border-radius:10px;-webkit-border-radius:10px;-moz-border-radius:10px;-ms-border-radius:10px;-o-border-radius:10px}.red-background{padding:.5rem 1.2rem;background-color:#ede6e6}.error-display-outer{display:flex;align-items:center;justify-content:center;flex-grow:1}.footer{width:100vw;padding:3rem 5rem;display:flex;flex-direction:column;justify-content:space-between;align-items:center;background:var(--primary-color);color:#fff;gap:2rem}.footer-left{display:flex;flex-direction:column;align-items:center;gap:.8rem}.footer-meta{display:flex;flex-direction:column;align-items:center;gap:.3rem}.copyright{font-size:.8rem}.support{display:flex;gap:.3rem}.footer-email{color:#ffffffd9;text-decoration:none}.footer-email:hover{text-decoration:underline}.footer-right{display:flex;gap:1.5rem}.footer-link{background:none;border:none;color:#fff;cursor:pointer;font-size:1rem;padding:0}.footer-link:hover{text-decoration:underline}.footer-link.feedback{font-weight:600}@media screen and (min-width:1024px){.footer{flex-direction:row}.footer-left,.footer-meta{align-items:flex-start}}.features{padding:8rem 2rem 3rem;display:flex;flex-direction:column;justify-content:center;align-items:center}.features-header{text-align:center;margin-bottom:5rem}.features-header h2{font-size:3.2rem;font-weight:800;color:var(--primary-color)}.features-header p{font-size:1.6rem;color:var(--fourth-color);margin-top:1rem}.features-container{width:100%;display:flex;justify-content:space-around;align-items:center;flex-wrap:wrap;gap:2rem}.feature-card{width:20rem;height:28rem;background:#fff;padding:3rem;border-radius:1rem;box-shadow:0 0 2rem .01rem #00000014;text-align:center;transition:transform .2s ease}.feature-card:hover{transform:translateY(-6px)}.feature-card .icon{font-size:3rem;margin-bottom:1.5rem}.feature-card h3{font-size:2rem;margin-bottom:1rem}.feature-card p{font-size:1.4rem;color:var(--fourth-color)}.coming-soon{position:relative;opacity:.85}.badge{position:absolute;top:.8rem;right:.8rem;font-size:.9rem;background-color:var(--third-color);color:#fff;padding:.3rem .8rem;border-radius:.5rem}.hero{width:100%;display:flex;flex-direction:column;gap:1rem}.hero-heading{font-size:4.2rem;color:var(--primary-color);font-weight:800;text-align:center}.hero-description{font-size:2rem;color:var(--fourth-color);text-align:center}.primary-btn{color:#fff;cursor:pointer;margin-top:3rem;width:21rem;height:3rem;font-size:1.4rem;border-radius:.3rem;border:none;background-color:var(--third-color);font-weight:600;-webkit-border-radius:.3rem;-moz-border-radius:.3rem;-ms-border-radius:.3rem;-o-border-radius:.3rem}.primary-btn:hover{background-color:var(--primary-color)}.primary-btn:disabled{cursor:not-allowed}.hero{min-height:calc(100vh - 3rem);display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at top,rgba(99,102,241,.15),transparent 60%)}.hero-heading-container{display:flex;flex-direction:column}.controls{width:100%;display:flex;gap:1rem;flex-direction:column;justify-content:space-between;align-items:center;margin:2.5rem 0}@media screen and (min-width:600px){.controls{flex-direction:row}}.controls-search{width:15rem;max-width:40rem;height:2.8rem;padding:0 1rem;border-radius:.4rem;border:1px solid var(--fourth-color);font-size:1rem}@media screen and (min-width:1000px){.controls-search{width:30rem}}.controls-search:focus{border-color:var(--primary-color)}.controls-sort{display:flex;gap:.8rem}.controls-select{height:2.8rem;padding:0 .8rem;border-radius:.4rem;border:1px solid var(--fourth-color);background-color:#fff;font-size:1rem;cursor:pointer;color:var(--secondary-text-color)}.controls-select option{color:var(--secondary-text-color)}.controls-select:focus{border-color:var(--primary-color)}.viz-card{width:19rem;height:18rem;background-color:#fff;border-radius:.75rem;border:1px solid rgba(0,0,0,.06);display:flex;flex-direction:column;justify-content:space-between;padding:2rem;transition:transform .2s ease,box-shadow .2s ease;cursor:pointer;-webkit-transition:transform .2s ease,box-shadow .2s ease;-moz-transition:transform .2s ease,box-shadow .2s ease;-ms-transition:transform .2s ease,box-shadow .2s ease;-o-transition:transform .2s ease,box-shadow .2s ease}.viz-card:hover{transform:translateY(-4px);box-shadow:0 10px 30px #1b3c5326}.viz-card-body{display:flex;flex-direction:column;gap:1rem;overflow-wrap:break-word}.viz-title{font-size:1.3rem;font-weight:700;color:var(--primary-color);line-height:1.3;text-align:justify}.viz-description{font-size:1rem;color:var(--fourth-color);line-height:1.6;text-align:justify}.viz-tags{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.5rem}.viz-tag{font-size:.8rem;padding:.25rem .6rem;border-radius:999px;font-weight:500;color:#495669;background:#ecedf0}.viz-tag.more{color:#374151;background:#dbdfe8}.card-stats{display:flex;justify-content:space-between}.stat{display:flex;flex-direction:column;align-items:center;flex-grow:1;font-size:.6rem;color:#313946}.stat-value{color:var(--third-text-color);font-size:inherit}.stat-label{font-size:.9rem;color:var(--third-text-color)}.viz-grid-wrapper{width:100%}.viz-grid{display:grid;grid-template-columns:repeat(1,auto);justify-content:space-around;row-gap:1.8rem}@media screen and (min-width:900px){.viz-grid{grid-template-columns:repeat(2,auto)}}@media screen and (min-width:1270px){.viz-grid{grid-template-columns:repeat(3,auto);justify-content:space-between}}.viz-empty{text-align:center;padding:4rem 1rem;color:var(--fourth-color);font-size:1.2rem}.viz-loading{text-align:center;padding:2rem;color:var(--secondary-color);font-size:1rem}.studio-card{height:18rem;width:19rem;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:.8rem;display:flex;flex-direction:column;gap:.8rem;transition:box-shadow .2s ease,transform .2s ease}.studio-card:hover{box-shadow:0 6px 18px #0000000f;transform:translateY(-2px)}.studio-card-header{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:var(--third-text-color)}.status{padding:.2rem .6rem;border-radius:999px;font-size:.7rem;font-weight:500;-webkit-border-radius:999px;-moz-border-radius:999px;-ms-border-radius:999px;-o-border-radius:999px}.status.published{background:#ecfdf5;color:#047857}.status.draft{background:#fef3c7;color:#92400e}.date{font-size:.7rem}.studio-card-body{flex-grow:1}.studio-title{font-size:1rem;font-weight:600;color:var(--primary-color);margin-bottom:.5rem}.studio-description{font-size:.8rem;color:var(--third-color);line-height:1.4;margin-bottom:.6rem}.studio-tags{display:flex;flex-wrap:wrap;gap:.4rem}.studio-tag{font-size:.6rem;background:#f3f4f6;color:#374151;padding:.3rem .6rem;border-radius:6px}.studio-tag.more{font-size:.6rem;color:#374151;background:#e5e7eb}.studio-card-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #f3f4f6;padding-top:.6rem}.stats{display:flex;gap:.8rem;width:14rem;justify-content:space-between}.stats-item{display:flex;flex-grow:1;flex-direction:column;align-items:center;justify-content:center}.stats-item span{font-size:.5rem;color:#6b7280}.actions{display:flex;gap:.3rem}.actions button{all:unset;font-size:.6rem;padding:.3rem .4rem;border-radius:6px;background:var(--third-color);color:#fff;cursor:pointer;transition:background-color .15s ease,border-color .15s ease;-webkit-transition:background-color .15s ease,border-color .15s ease;-moz-transition:background-color .15s ease,border-color .15s ease;-ms-transition:background-color .15s ease,border-color .15s ease;-o-transition:background-color .15s ease,border-color .15s ease}.actions button:hover{background:var(--primary-color)}.actions button:disabled{opacity:.6;cursor:not-allowed}.page-header{width:100%;height:fit-content;padding:4rem 1rem 3rem;display:flex;flex-direction:column;align-items:center;gap:1rem;background:radial-gradient(circle at top,rgba(99,102,241,.12),transparent 65%)}.page-title{font-size:3.5rem;font-weight:800;color:var(--primary-color);letter-spacing:-.03em;text-align:center}.page-subtitle{max-width:60rem;font-size:1.4rem;color:var(--fourth-color);text-align:center;line-height:1.6}.visulaization-header{width:100%;padding:3rem 0 2rem;border-bottom:.1rem solid rgba(0,0,0,.08);text-align:justify;text-justify:inter-word}.visulaization-header-inner{display:flex;flex-direction:column;gap:1.5rem}.visulaization-title{font-weight:700;color:var(--primary-color);line-height:1.2;font-size:3rem}.visulaization-description{width:100%;font-size:1.6rem;line-height:1.6;color:var(--secondary-text-color)}.visulaization-tags{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:.5rem;width:100%}.visulaization-tag{font-size:1.2rem;padding:.4rem 1rem;border-radius:1.6rem;background-color:#4568821f;color:var(--secondary-color);font-weight:500;white-space:nowrap}.viz-engagement{display:flex;justify-content:space-between;align-items:center;padding:1.2rem 0;margin-bottom:2rem;border-bottom:.1rem solid rgba(0,0,0,.08)}.viz-engagement-left{display:flex;align-items:center;gap:1rem}.viz-meta{display:flex;align-items:center;gap:.4rem;font-size:.9rem;color:var(--fourth-color)}.viz-engagement-right{display:flex;gap:1.8rem}.viz-stat{display:flex;align-items:center;gap:.4rem;font-size:.95rem;color:var(--secondary-color)}.viz-stat svg{font-size:1.1rem;color:var(--third-color)}.viz-engagement-button{all:unset;cursor:pointer;display:flex;align-items:center;justify-content:center}.viz-engagement-button:disabled{cursor:not-allowed}.viz-theory{margin-top:4rem}.viz-theory-title{font-size:2.2rem;font-weight:700;color:var(--primary-color);margin-bottom:1.5rem;border-left:.4rem solid var(--primary-color);padding-left:1rem}.viz-theory-content{font-size:1.4rem;color:var(--secondary-text-color);white-space:pre-wrap;display:flex;flex-direction:column;gap:.8rem;text-align:justify;text-justify:inter-word}.theory-primary{color:var(--primary-text-color);font-size:1.8rem;font-weight:500}.theory-secondary{color:var(--secondary-text-color);font-size:1.2rem;font-weight:500}.theory-third{color:var(--third-text-color);font-size:1rem}.theory-subtopic{font-size:1.2rem;padding-left:3rem;position:relative;color:var(--secondary-text-color);min-height:1.6rem}.theory-subtopic:before{content:"●";position:absolute;left:1rem;top:0rem;font-size:1.2rem;color:var(--primary-text-color)}.theory-code{margin:12px 0;padding:14px 16px;background:#0f172a;border-radius:8px;overflow-x:auto;font-family:Fira Code,JetBrains Mono,monospace;font-size:.9rem;line-height:1.5;color:#e5e7eb;border:1px solid rgba(255,255,255,.08)}.theory-code code{white-space:pre}.theory-code::-webkit-scrollbar{height:6px}.theory-code::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.viz-stage-wrapper{width:100%;margin-top:2rem;border-radius:0;background:linear-gradient(180deg,var(--display-panel-bg-start) 0%,var(--display-panel-bg-end) 100%);border:.08rem solid var(--display-panel-border);box-shadow:0 .6rem 1.8rem #00000038;display:flex;flex-direction:column;align-items:center;padding:0}.viz-stage-controls{display:flex;align-items:center;gap:.8rem;margin-bottom:0;width:100%;padding:.5rem .65rem;background:var(--display-controls-bg);border:.08rem solid var(--display-controls-border);border-radius:0;transition:opacity .3s ease}.viz-stage-controls.hidden{opacity:0;pointer-events:none}.viz-stage-controls.visible{opacity:1;pointer-events:auto}.viz-stage-wrapper:not(:fullscreen) .viz-stage-controls{opacity:1!important;pointer-events:auto!important}.viz-stage-controls>button{background:var(--display-button-bg);height:2.2rem;width:3.2rem;color:var(--display-button-text);border:.08rem solid var(--display-button-border);border-radius:0;cursor:pointer;display:flex;align-items:center;justify-content:center}.viz-stage-controls>button svg{font-size:1rem}.viz-stage-controls>button:hover{background:var(--display-button-hover-bg)}.viz-stage-scrubber{flex-grow:1;accent-color:var(--display-scrubber-accent)}.viz-scrubber-shell{position:relative;flex:1;min-width:10rem}.viz-scrubber-shell .viz-stage-scrubber{width:100%}.viz-scrubber-tooltip{position:absolute;top:calc(100% + .4rem);transform:translate(-50%);pointer-events:none;font-size:.68rem;line-height:1;padding:.22rem .42rem;border:.08rem solid rgba(255,255,255,.2);background:#101219f5;color:#dbe8ff;white-space:nowrap;z-index:100}.viz-stage-time{display:none;align-items:center;gap:.15rem;max-width:min(34vw,22rem);white-space:nowrap;vertical-align:middle;font-size:1rem;color:var(--display-controls-muted);min-width:0;flex-shrink:1}.viz-stage-chapter-label{display:inline-block;min-width:0;max-width:min(24vw,14rem);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viz-stage-time-value{white-space:nowrap;flex-shrink:0}@media screen and (min-width:768px){.viz-stage-time{display:inline-flex}}.viz-stage{position:relative;width:100%;aspect-ratio:16 / 9;background:var(--display-surface-bg);border-radius:0;border:.08rem solid var(--display-surface-border);overflow:hidden;cursor:pointer;container-type:size}.viz-component{position:absolute;font-size:2cqw;-webkit-user-select:none;user-select:none;text-align:center;top:0;left:0;will-change:transform,opacity;white-space:pre-wrap;word-break:break-word;line-height:1.2}.viz-connectors{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}.viz-stage-world{position:absolute;inset:0;transform-origin:0 0;z-index:0}.viz-stage-wrapper:fullscreen{width:100vw;height:100vh;margin:0;padding:0;border-radius:0;border:none;box-shadow:none;background:var(--display-surface-bg);position:relative;overflow:hidden}.viz-stage-wrapper:fullscreen .viz-stage-controls{position:absolute;top:0;left:0;right:0;z-index:20;margin:0;border:none;border-bottom:.08rem solid var(--display-stage-border);background:var(--display-fullscreen-controls-bg)}.viz-stage-wrapper:fullscreen .viz-stage{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;border:none}.viz-settings-wrapper{position:relative;margin-left:auto}.viz-settings-btn{background:none;border:1px solid var(--display-button-border);color:var(--display-button-text);padding:.25rem .5rem;cursor:pointer;font-size:.85rem;line-height:1}.viz-settings-btn.active{border-color:var(--display-controls-muted);color:#fff}.viz-settings-panel{position:absolute;top:calc(100% + .5rem);right:0;background:color-mix(in srgb,var(--display-surface-bg) 95%,#000 5%);border:1px solid var(--display-stage-border);padding:.75rem;min-width:14rem;box-shadow:0 .5rem 1.5rem #00000080;z-index:200;display:flex;flex-direction:column;gap:.5rem;overflow-y:auto;overflow-x:hidden;max-width:10rem}.viz-settings-section-label{font-size:.62rem;text-transform:uppercase;letter-spacing:.07em;color:var(--display-controls-muted);margin-top:.2rem}.viz-settings-speed-options{display:flex;align-items:center;gap:.3rem;flex-wrap:wrap}.viz-settings-speed-btn{background:none;border:1px solid var(--display-button-border);color:var(--display-button-text);padding:.2rem .5rem;cursor:pointer;font-size:.72rem;white-space:nowrap;transition:all .12s}.viz-settings-speed-btn:hover{background:color-mix(in srgb,var(--display-button-border) 40%,transparent)}.viz-settings-speed-btn.active{border-color:var(--display-controls-muted);color:#fff;background:color-mix(in srgb,var(--display-button-border) 60%,transparent)}.viz-stage-wrapper:fullscreen .viz-settings-panel{z-index:100}.viz-settings-chapter-list{display:flex;flex-direction:column;gap:.15rem;max-height:10rem;overflow-y:scroll;margin-top:.2rem;flex-shrink:0;overflow-x:hidden}.viz-settings-chapter-btn{display:flex;align-items:center;gap:.5rem;width:100%;padding:.25rem .4rem;background:none;border:1px solid transparent;color:var(--display-button-text);font-size:.72rem;text-align:left;cursor:pointer;transition:all .12s}.viz-settings-chapter-btn:hover{background:color-mix(in srgb,var(--display-button-border) 40%,transparent);border-color:var(--display-button-border)}.viz-settings-chapter-btn.active{color:#fff;border-color:var(--display-button-border);background:color-mix(in srgb,var(--display-button-border) 60%,transparent)}.viz-settings-chapter-time{font-size:.62rem;color:var(--display-controls-muted);min-width:2.5rem;flex-shrink:0}.viz-settings-chapter-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:inherit}.viz-comments{margin-top:4rem;padding-top:2rem;border-top:1px solid #e5e7eb}.viz-comments-title{font-size:1.8rem;font-weight:600;margin-bottom:1rem;color:var(--primary-text-color)}.viz-comment-input{display:flex;flex-direction:column;gap:.5rem;margin-bottom:2rem}.viz-comment-input textarea{resize:vertical;padding:.6rem;font-size:1rem;border-radius:6px;border:1px solid #d1d5db;font-family:inherit;-webkit-border-radius:6px;-moz-border-radius:6px;-ms-border-radius:6px;-o-border-radius:6px}.viz-comment-input button{align-self:flex-end;padding:.4rem .8rem;font-size:1rem;border-radius:6px;background:var(--third-color);color:#fff;border:none;cursor:pointer}.viz-comment-input button:hover{background-color:var(--primary-color)}.viz-comment-input button:disabled{opacity:.6;cursor:not-allowed}.viz-comment-login-hint{width:100%;height:10rem;display:flex;align-items:center;justify-content:center;border-radius:6px;box-shadow:0 0 .5rem .2rem #e9e9eb;margin:3rem 0rem 1rem;-webkit-border-radius:6px;-moz-border-radius:6px;-ms-border-radius:6px;-o-border-radius:6px}.viz-comment-login-button{all:unset;cursor:pointer;color:var(--primary-color);font-size:1.5rem}.viz-comment-login-button:hover{text-decoration:underline}.viz-comment-list{display:flex;flex-direction:column;gap:.8rem}.viz-comment{padding-bottom:.8rem;border-bottom:1px solid #f1f5f9}.viz-comment-header{display:flex;justify-content:space-between;font-size:1.4rem;margin-bottom:.2rem}.viz-comment-user{font-weight:500;color:var(--primary-color);cursor:pointer}.viz-comment-date{font-size:1rem;font-weight:400;color:var(--third-text-color)}.viz-comment-text{font-size:1rem;color:var(--secondary-text-color);line-height:1.5}.folder-pathbar{position:fixed;top:3.5rem;left:50%;transform:translate(-50%);width:80%;z-index:800;background:#fff;border-bottom:1px solid rgba(0,0,0,.05);padding:.4rem 0}.folder-pathbar-scroll{display:flex;align-items:center;gap:.4rem;overflow-x:auto;scrollbar-width:none}.folder-pathbar-scroll::-webkit-scrollbar{display:none}.folder-pathbar-item{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.folder-pathbar-link{display:flex;align-items:center;gap:.3rem;font-size:.85rem;font-weight:500;color:var(--secondary-color);background:#00000006;padding:.25rem .55rem;border-radius:6px;cursor:pointer;white-space:nowrap;transition:all .15s ease;max-width:10rem;overflow:hidden;text-overflow:ellipsis;border:1px solid rgba(0,0,0,.06)}.folder-pathbar-link:hover{background:#0000000d;color:var(--primary-text-color)}.crumb-text{font-size:inherit;font-weight:inherit;color:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.folder-pathbar-current{font-size:.85rem;font-weight:600;color:var(--primary-color);padding:.25rem .55rem;border-radius:6px;background:#00000009;white-space:nowrap;max-width:14rem;overflow:hidden;text-overflow:ellipsis}.folder-pathbar-separator{font-size:.7rem;color:var(--fourth-color)}.folder-pathbar-item:not(:last-child):not(:nth-last-child(2)) .folder-pathbar-link{max-width:7rem;opacity:.8}.folder-pathbar-item:nth-last-child(2) .folder-pathbar-link{max-width:9rem;opacity:.9}.folder-pathbar-item:last-child .folder-pathbar-current{max-width:14rem;opacity:1}.folder-pathbar-link:first-child,.folder-pathbar-current:first-child{border:1px solid rgba(0,0,0,.2);border-radius:8px;padding:.25rem .55rem}.title-input{width:100%;margin-bottom:2rem}.title-label{display:block;font-size:1rem;font-weight:500;color:var(--fourth-text-color);margin-bottom:8px}.title-label .required{color:#ef4444;margin-left:.1rem}.title-field::placeholder{color:var(--fourth-text-color);font-size:1.1rem;font-weight:400}.title-field:focus{border-bottom-color:#3b82f6}.title-meta{display:flex;justify-content:space-between;align-items:center;margin-top:.3rem;font-size:.8rem;color:var(--fourth-text-color)}.title-meta .hint{font-size:inherit;font-style:italic}.title-meta .count{font-variant-numeric:tabular-nums}.title-field{width:100%;padding:10px 12px;font-size:1.4rem;line-height:1.5;color:#e5e7eb;background-color:#0f172a;border:1px solid #1f2937;border-radius:6px;outline:none}.title-field:disabled{cursor:not-allowed}.description-input{width:100%;margin-bottom:2rem}.description-label{display:block;font-size:1rem;font-weight:500;color:var(--fourth-text-color);margin-bottom:8px}.description-label .required{color:#ef4444;margin-left:.1rem}.description-field{width:100%;padding:.5rem 0;font-size:2rem;font-weight:600;color:var(--primary-text-color);background:transparent;border:none;border-bottom:1px solid var(--border, #1f2937);outline:none;transition:border-color .2s ease}.description-field:disabled{cursor:not-allowed}.description-field::placeholder{color:var(--fourth-text-color);font-weight:500}.description-field:focus{border-bottom-color:#3b82f6}.description-meta{display:flex;justify-content:space-between;align-items:center;margin-top:.3rem;font-size:.8rem;color:var(--fourth-text-color)}.description-meta .hint{font-size:inherit;font-style:italic}.description-field{width:100%;resize:vertical;min-height:90px;padding:10px 12px;font-size:1rem;line-height:1.5;color:#e5e7eb;background-color:#0f172a;border:1px solid #1f2937;border-radius:6px;outline:none}.description-field::placeholder{color:#6b7280}.description-field:focus{border-color:#2563eb}.description-meta .count{font-variant-numeric:tabular-nums}.tag-input{width:100%;margin-bottom:2rem}.tag-label{display:block;font-size:1rem;font-weight:500;color:var(--fourth-text-color);margin-bottom:8px}.tag-box{display:flex;flex-wrap:wrap;gap:8px;padding:10px 12px;background:var(--surface, #0f172a);border:1px solid var(--border, #1f2937);border-radius:8px}.tag-box input{flex:1;min-width:120px;min-height:1.6rem;background:transparent;border:none;outline:none;color:var(--text-primary, #e5e7eb);font-size:.8rem}.tag-box input:disabled{cursor:not-allowed}.tag-box input::placeholder{color:var(--text-muted, #6b7280)}.tag-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;font-size:.8rem;background:#1e293b;border-radius:6px;color:#c7d2fe}.tag-chip button{background:none;border:none;cursor:pointer;color:#94a3b8;font-size:14px;line-height:1}.tag-chip button:disabled{cursor:not-allowed}.tag-chip button:hover{color:#f87171}.tag-meta{display:flex;justify-content:space-between;margin-top:6px;font-size:.8rem;color:var(--fourth-text-color)}.tag-meta .hint{font-size:inherit;font-style:italic}.tag-meta .count{font-variant-numeric:tabular-nums}.animation-input{width:100%;margin-bottom:2rem}.animation-label{display:block;font-size:1rem;font-weight:500;color:var(--fourth-text-color);margin-bottom:8px}.animation-label .required{color:#ef4444;margin-left:.1rem}.animation-actions{display:flex;gap:12px;margin-bottom:12px}.btn{padding:10px 14px;font-size:1rem;border-radius:8px;cursor:pointer;border:none}.btn.primary{background:#3b82f6;color:#fff}.btn.primary:disabled{cursor:not-allowed;opacity:.6}.btn.primary:hover{background:#2563eb}.btn.secondary{background:transparent;border:1px solid var(--fourth-color);color:var(--primary-text-color)}.btn.secondary:disabled{cursor:not-allowed}.btn.secondary:hover{background:var(--fourth-text-color)}.selected-animation{font-size:.9rem;color:var(--third-text-color);margin-bottom:10px}.selected-animation span{color:var(--secondary-text-color);font-weight:500}.animation-list{border:1px solid var(--fourth-text-color);border-radius:10px;max-height:260px;overflow-y:auto}.animation-item{padding:12px 14px;cursor:pointer;border-bottom:1px solid var(--fourth-text-color)}.animation-item:last-child{border-bottom:none}.animation-item:hover,.animation-item.active{background:#3b82f626}.animation-item .title{font-size:14px;font-weight:500;color:var(--primary-text-color)}.animation-item .meta{font-size:12px;color:var(--secondary-text-color);margin-top:2px}.loading,.empty{padding:14px;font-size:13px;color:var(--primary-text-color);text-align:center}.theory-input{width:100%;margin-bottom:2rem}.theory-label{display:block;font-size:1rem;font-weight:500;color:var(--fourth-text-color);margin-bottom:8px}.theory-label .required{color:#ef4444;margin-left:.1rem}.theory-toolbar{display:flex;gap:8px;margin-bottom:10px;flex-wrap:wrap}.theory-tag-btn{padding:6px 12px;font-size:13px;border-radius:6px;border:1px solid var(--border, #1f2937);background:var(--surface, #0b1220);color:var(--text-muted, #9ca3af);cursor:pointer;transition:all .15s ease}.theory-tag-btn:disabled{cursor:not-allowed}.theory-tag-btn:hover{background:#111827;color:#e5e7eb}.theory-tag-btn.active{border-color:#3b82f6;color:#3b82f6}.theory-field{width:100%;padding:14px;font-size:14px;line-height:1.6;color:var(--text-primary, #e5e7eb);background-color:var(--surface, #020617);border:1px solid var(--border, #1f2937);border-radius:10px;resize:vertical;outline:none}.theory-field:disabled{cursor:not-allowed}.theory-field::placeholder{color:var(--text-muted, #6b7280)}.theory-field:focus{border-color:#3b82f6}.theory-hint{margin-top:6px;font-size:.8rem;color:var(--fourth-text-color);font-style:italic}.create-viz-btn-wrapper{display:flex;justify-content:flex-end;align-items:center;margin-top:32px;padding-top:24px;border-top:1px solid var(--border, #1f2937)}.create-viz-btn{padding:12px 22px;font-size:15px;font-weight:600;border-radius:8px;border:none;cursor:pointer;background:#3b82f6;color:#fff;transition:background .2s ease,opacity .2s ease}.create-viz-btn:hover:not(:disabled){background:#2563eb}.create-viz-btn:disabled{opacity:.6;cursor:not-allowed}.studio-layout-outer{width:100vw;padding:1rem;background-color:#eff1f3}.studio-layout-inner{border:2px solid #dbdde0;padding:1rem;flex-grow:1;background-color:#fff;border-radius:.3rem;-webkit-border-radius:.3rem;-moz-border-radius:.3rem;-ms-border-radius:.3rem;-o-border-radius:.3rem}.update-visualization-button-container{display:flex;justify-content:flex-end;align-items:center;margin-top:32px;padding-top:24px;border-top:1px solid var(--border, #1f2937)}.update-visualization-actions{display:flex;gap:.6rem}.success-toast{color:green;font-size:1.2rem;text-align:center;border:none;border-radius:10px;-webkit-border-radius:10px;-moz-border-radius:10px;-ms-border-radius:10px;-o-border-radius:10px}.green-background{background-color:#bee3be;padding:.5rem 1.2rem}.success-toast-container{display:flex;align-items:center;justify-content:center;flex-grow:1}.profile-header{width:100%;padding:32px 0;border-bottom:1px solid var(--fourth-text-color)}.profile-header.loading,.profile-header.error{text-align:center;color:var(--third-text-color, #9ca3af);padding:40px 0}.profile-header-inner{max-width:1100px;margin:0 auto;padding:0 16px;display:flex;gap:24px;align-items:flex-start}.profile-avatar img{width:96px;height:96px;border-radius:50%;object-fit:cover}.avatar-fallback{width:96px;height:96px;border-radius:50%;background:var(--primary-color);color:var(--fourth-color);font-size:2.5rem;font-weight:600;display:flex;align-items:center;justify-content:center}.profile-info{flex:1}.profile-name{font-size:2rem;font-weight:600;color:var(--primary-color)}.profile-email{font-size:1rem;color:var(--secondary-text-color);margin-top:4px}.profile-bio{margin-top:12px;font-size:.9rem;color:var(--secondary-text-color);max-width:700px}.profile-meta{margin-top:16px;display:flex;gap:24px;font-size:1rem}.profile-meta span{color:var(--fourth-text-color)}.privacy-page{max-width:800px;margin:4rem auto;padding:0 1.5rem;color:var(--text-primary, #111827)}.privacy-page h1{font-size:2rem;margin-bottom:.5rem}.updated{font-size:.85rem;color:var(--text-muted, #6b7280);margin-bottom:2rem}.privacy-section{margin-bottom:2rem}.privacy-section h2{font-size:1.2rem;margin-bottom:.6rem}.privacy-section p{line-height:1.6;color:var(--text-secondary, #374151)}.privacy-section ul{padding-left:1.2rem}.privacy-section li{margin-bottom:.4rem}.terms-page{max-width:900px;margin:0 auto;padding:3rem 1.5rem 4rem;color:var(--text-primary, #111827)}.terms-page h1{font-size:2.2rem;font-weight:700;margin-bottom:.5rem}.updated{font-size:.9rem;color:var(--text-muted, #6b7280);margin-bottom:2rem}.terms-section{margin-bottom:2rem}.terms-section h2{font-size:1.2rem;font-weight:600;margin-bottom:.6rem}.terms-section p{font-size:1rem;line-height:1.6;color:var(--text-secondary, #374151)}.terms-section ul{padding-left:1.2rem}.terms-section li{margin-bottom:.4rem;color:var(--text-secondary, #374151)}.about-builtfor{padding:8rem 2rem 3rem;display:flex;flex-direction:column;align-items:center}.about-builtfor-header{text-align:center;margin-bottom:5rem;display:flex;flex-direction:column;align-items:center}.about-builtfor-header h2{font-size:3.2rem;font-weight:800;color:var(--primary-color)}.about-builtfor-header p{font-size:1.6rem;color:var(--fourth-color);margin-top:1rem;max-width:1000px}.about-builtfor-container{width:100%;display:flex;justify-content:center;gap:3rem;flex-wrap:wrap}.builtfor-card{width:20rem;height:24rem;background:#fff;padding:3rem;border-radius:1rem;box-shadow:0 0 2rem .01rem #00000014;text-align:center;transition:transform .2s ease}.builtfor-card:hover{transform:translateY(-6px)}.builtfor-card .icon{font-size:3rem;margin-bottom:1.5rem}.builtfor-card h3{font-size:2rem;margin-bottom:1rem}.builtfor-card p{font-size:1.4rem;color:var(--fourth-color)}.about-cta{width:100%;padding:8rem 2rem 0rem;display:flex;justify-content:center;align-items:center;background:radial-gradient(circle at top,rgba(99,102,241,.15),transparent 60%)}.about-cta-inner{max-width:900px;text-align:center}.about-cta-title{font-size:3.2rem;font-weight:800;color:var(--primary-color);margin-bottom:1rem}.about-cta-description{font-size:1.6rem;color:var(--fourth-color);margin-bottom:3rem}.about-features{padding:8rem 2rem 3rem;display:flex;flex-direction:column;align-items:center}.about-features-header{text-align:center;margin-bottom:5rem}.about-features-header h2{font-size:3.2rem;font-weight:800;color:var(--primary-color)}.about-features-header p{font-size:1.6rem;color:var(--fourth-color);margin-top:1rem}.about-features-container{width:100%;max-width:1100px;display:flex;flex-direction:column;justify-content:space-around;align-items:center;gap:2rem}@media screen and (min-width:1024px){.about-features-container{flex-direction:row;flex-wrap:wrap}}.about-feature-card{width:20rem;height:28rem;background:#fff;padding:3rem;border-radius:1rem;box-shadow:0 0 2rem .01rem #00000014;text-align:center;transition:transform .2s ease}.about-feature-card:hover{transform:translateY(-6px)}.about-feature-card .icon{font-size:3rem;margin-bottom:1.5rem}.about-feature-card h3{font-size:2rem;margin-bottom:1rem}.about-feature-card p{font-size:1.4rem;color:var(--fourth-color)}.about-hero{min-height:calc(100vh - 3.5rem);width:100%;display:flex;align-items:center;justify-content:center;padding:0 2rem;background:radial-gradient(circle at top,rgba(99,102,241,.15),transparent 60%)}.about-hero-inner{max-width:900px;display:flex;flex-direction:column;gap:1.2rem;align-items:center;text-align:center}.about-hero-title{font-size:4.2rem;font-weight:800;color:var(--primary-color)}.about-hero-subtitle{font-size:2rem;color:var(--fourth-color);font-weight:500}.about-hero-description{font-size:1.2rem;color:var(--fourth-color);max-width:720px;line-height:1.6}.about-reason{width:100%;padding:6rem 2rem;display:flex;justify-content:center}.about-reason-inner{max-width:1000px;display:flex;flex-direction:column;gap:2rem;text-align:center}.about-reason-title{font-size:3.2rem;font-weight:800;color:var(--primary-color)}.about-reason-text{font-size:1.5rem;line-height:1.9;color:var(--fourth-color)}.animation-card{height:16rem;width:19rem;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:.8rem;display:flex;flex-direction:column;gap:.8rem;transition:box-shadow .2s ease,transform .2s ease}.animation-card:hover{box-shadow:0 6px 18px #0000000f;transform:translateY(-2px)}.animation-card-header{width:100%;display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:var(--third-text-color, #6b7280)}.animation-card-title{width:100%;font-size:1rem;font-weight:600;color:var(--primary-color, #111827);margin-bottom:.5rem;overflow-wrap:break-word;text-align:justify}.animation-card-description{font-size:.8rem;color:var(--third-color, #4b5563);line-height:1.4;text-align:justify;margin-bottom:.6rem;flex-grow:1}.animation-card-meta{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #f3f4f6;padding-top:.6rem;font-size:.7rem;color:#6b7280}.animation-card-actions{display:flex;gap:.5rem;margin-top:.5rem}.animation-card-actions button{all:unset;flex:1;text-align:center;font-size:.8rem;padding:.6rem;border-radius:6px;background:var(--secondary-color, #3b82f6);color:#fff;cursor:pointer;transition:background-color .15s ease}.animation-card-actions button:hover{background:var(--primary-color, #1d4ed8)}.animation-card-actions button:disabled{opacity:.6;cursor:not-allowed}.studio-hub-container{min-height:80vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;background-color:#f9fafb}.studio-hub-header{text-align:center;margin-bottom:4rem}.studio-hub-header h1{font-size:2.5rem;color:#111827;margin-bottom:.5rem}.studio-hub-header p{font-size:1.1rem;color:#6b7280}.studio-options-grid{display:flex;flex-wrap:wrap;gap:2.5rem;justify-content:center;max-width:900px;margin:0 auto}.hub-option-card{width:20rem;background:#fff;border:1px solid #e5e7eb;border-radius:20px;padding:3rem 2rem;text-align:center;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;align-items:center;gap:1.2rem}.hub-option-card:hover{transform:translateY(-10px);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;border-color:var(--primary-color)}.hub-icon{font-size:3rem;margin-bottom:.5rem}.hub-option-card h2{font-size:1.5rem;color:var(--primary-color);margin:0}.hub-option-card p{color:var(--fourth-color);font-size:.95rem;line-height:1.6;margin:0}.hub-btn{margin-top:auto;padding:.6rem 1.5rem;border-radius:8px;border:none;width:11rem;background:var(--third-color);color:#fff;font-weight:600;font-size:.9rem;transition:all .2s}.hub-option-card .hub-btn:hover{cursor:pointer;background:var(--primary-color);color:#fff}@media(max-width:640px){.studio-options-grid{grid-template-columns:1fr}}.folder-meta{width:100%;margin:3rem 0 1rem;padding-bottom:1rem;border-bottom:1px solid rgba(0,0,0,.07)}.folder-meta-title{font-size:32px;font-weight:700;color:var(--primary-color);margin:0;letter-spacing:-.02em}.folder-meta-description{margin-top:10px;font-size:.9rem;color:var(--secondary-text-color);line-height:1.7;display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.folder-view-switcher{display:flex;gap:8px;margin-bottom:16px}.folder-view-btn{border:1px solid var(--fourth-color);background:#fff;padding:8px 12px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,border-color .15s ease,color .15s ease;font-size:16px;color:var(--primary-color)}.folder-view-btn:hover{border-color:var(--secondary-color);background:#45688214}.folder-view-btn.active{background:var(--third-color);color:#fff;border-color:var(--third-color)}.folder-entry-row{display:flex;align-items:center;gap:1rem;height:4.6rem;background:#fff;border-radius:.9rem;cursor:pointer;transition:all .15s ease}.folder-entry-row.hovered{background:#45688214;transform:translateY(-.1rem)}.folder-entry-row.no-desc .folder-entry-text{justify-content:center}.folder-entry-index{width:2rem;text-align:right;font-size:.9rem;color:var(--third-text-color)}.folder-entry-icon{width:2.6rem;height:2.6rem;border-radius:.7rem;display:flex;align-items:center;justify-content:center;font-size:1.1rem;background:#1b3c531a;color:var(--primary-color);flex-shrink:0}.folder-entry-text{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}.folder-entry-title{font-size:.95rem;font-weight:600;color:var(--primary-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.folder-entry-description{font-size:.85rem;color:var(--secondary-text-color);margin-top:.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.folder-entry-badge{width:6rem;text-align:center;font-size:.75rem;padding:.25rem .7rem;border-radius:.6rem;text-transform:capitalize;font-weight:500;background:#1b3c5314;color:var(--primary-color)}.folder-entry-badge-container{width:6rem;display:flex;justify-content:flex-start;align-items:center}.folder-list-view{display:flex;flex-direction:column;gap:.1rem}.folder-list-view::-webkit-scrollbar{width:6px}.folder-list-view::-webkit-scrollbar-thumb{background:var(--fourth-color);border-radius:3px}.folder-list-view::-webkit-scrollbar-track{background:transparent}.folder-entry-card{position:relative;display:flex;flex-direction:column;align-items:center;padding:1rem;border-radius:1rem;border:.1rem solid rgba(27,60,83,.12);background:#fff;cursor:pointer;transition:border-color .15s ease,background .15s ease;width:14rem;min-height:12.5rem;-webkit-transition:border-color .15s ease,background .15s ease;-moz-transition:border-color .15s ease,background .15s ease;-ms-transition:border-color .15s ease,background .15s ease;-o-transition:border-color .15s ease,background .15s ease}.folder-entry-card:hover{border-color:#1b3c5340;background:#4568820a}.folder-entry-card-header{width:100%;display:flex;justify-content:flex-end;margin-bottom:.4rem}.folder-entry-card-type{font-size:.65rem;padding:.2rem .5rem;border-radius:.5rem;background:#1b3c5314;color:var(--primary-color);text-transform:capitalize;font-weight:500}.folder-entry-card-icon{width:3.2rem;height:3.2rem;border-radius:.9rem;display:flex;align-items:center;justify-content:center;font-size:1.6rem;background:#1b3c531a;color:var(--primary-color);margin-bottom:.6rem}.folder-entry-card-title{width:100%;font-size:1rem;font-weight:600;color:var(--primary-text-color);text-align:center;line-height:1.3;height:2rem;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.folder-entry-card-description{font-size:.82rem;color:var(--secondary-text-color);text-align:center;line-height:1.3;display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.folder-grid-view{display:grid;grid-template-columns:repeat(auto-fit,14rem);justify-content:center;gap:1rem 1.25rem;width:100%}.folder-entries-section{width:100%;display:flex;flex-direction:column;gap:12px}.folder-empty{text-align:center;color:var(--secondary-text-color);font-size:14px;padding:40px 0}.folder-entries-loading{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.folder-entry-skeleton{height:120px;border-radius:8px;background:#c8c8c833;animation:pulse 1.2s infinite ease-in-out}@keyframes pulse{0%{opacity:1}50%{opacity:.4}to{opacity:1}}.visualizations-page{position:relative}.folder-controls{display:flex;align-items:center;justify-content:flex-start;gap:1rem;margin-bottom:1rem}.add-item-btn{padding:.5rem 1rem;background-color:var(--primary-color);color:#fff;border:none;border-radius:.375rem;cursor:pointer}.add-item-btn:disabled{opacity:.6;cursor:not-allowed}.studio-folder-meta{width:100%;margin:3rem 0 1rem;padding-bottom:1rem;border-bottom:1px solid rgba(0,0,0,.07)}.studio-folder-meta-title{font-size:32px;font-weight:700;color:var(--primary-color);margin:0;letter-spacing:-.02em}.studio-folder-meta-description{margin-top:10px;font-size:.9rem;color:var(--secondary-text-color);line-height:1.7;display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.studio-folder-meta-edit{display:flex;flex-direction:column;gap:10px}.studio-folder-meta-input-title{font-size:1.5rem;padding:6px 10px;width:100%}.studio-folder-meta-input-desc{font-size:.9rem;padding:6px 10px;width:100%;min-height:60px;resize:vertical}.studio-folder-meta-actions{display:flex;gap:10px;margin-top:10px}.studio-folder-meta-btn-edit,.studio-folder-meta-btn-delete,.studio-folder-meta-btn-save,.studio-folder-meta-btn-cancel{padding:6px 12px;font-size:.9rem;cursor:pointer;border:1px solid #ccc;border-radius:5px}.studio-folder-meta-btn-edit:hover,.studio-folder-meta-btn-save:hover{background-color:var(--primary-color);color:#fff}.studio-folder-meta-btn-delete:hover{background-color:#e74c3c;color:#fff}.studio-folder-meta-btn-cancel:hover{background-color:#ccc}.studio-folder-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.studio-folder-view-switcher{display:flex;gap:8px}.studio-folder-view-btn{border:1px solid var(--fourth-color);background:#fff;padding:8px 12px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,border-color .15s ease,color .15s ease;font-size:16px;color:var(--primary-color)}.studio-folder-view-btn:hover{border-color:var(--secondary-color);background:#45688214}.studio-folder-view-btn.active{background:var(--third-color);color:#fff;border-color:var(--third-color)}.studio-folder-actions{display:flex;gap:8px}.studio-folder-btn-add,.studio-folder-btn-reorder{display:flex;align-items:center;gap:6px;padding:8px 12px;border-radius:6px;border:1px solid var(--fourth-color);background:#fff;font-size:.9rem;cursor:pointer;color:var(--primary-color);transition:background .15s ease,border-color .15s ease,color .15s ease}.studio-folder-btn-add:hover{background-color:var(--third-color);color:#fff;border-color:var(--third-color)}.studio-folder-btn-reorder:hover{background-color:#45688226;border-color:var(--secondary-color)}.studio-folder-btn-save-order,.studio-folder-btn-cancel-order{display:flex;align-items:center;gap:6px;padding:8px 12px;border-radius:6px;font-size:.9rem;cursor:pointer;border:1px solid var(--fourth-color);transition:background .15s ease,border-color .15s ease,color .15s ease}.studio-folder-btn-save-order{background-color:var(--success-color, #28a745);color:#fff;border-color:var(--success-color, #28a745)}.studio-folder-btn-save-order:hover{background-color:#218838;border-color:#1e7e34}.studio-folder-btn-cancel-order{background-color:#fff;color:var(--danger-color, #dc3545);border-color:var(--danger-color, #dc3545)}.studio-folder-btn-cancel-order:hover{background-color:var(--danger-color, #dc3545);color:#fff}.add-item-modal-backdrop{position:fixed;inset:0;background:#00000073;display:flex;justify-content:center;align-items:center;z-index:2000}.add-item-modal{width:640px;max-height:85vh;background:#fff;border-radius:14px;padding:18px;display:flex;flex-direction:column;box-shadow:0 10px 40px #00000026}.add-item-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.add-item-modal-header h2{font-size:1.4rem;color:var(--primary-color)}.add-item-step-select{display:flex;gap:16px;justify-content:center}.add-item-type-btn{flex:1;padding:22px;border:1px solid var(--fourth-color);border-radius:10px;background:#fff;cursor:pointer;font-size:1rem;display:flex;gap:10px;align-items:center;justify-content:center;transition:all .15s ease}.add-item-type-btn:hover{background:var(--third-color);color:#fff;transform:translateY(-2px)}.add-item-folder-form{display:flex;flex-direction:column;gap:10px}.add-item-folder-form input,.add-item-folder-form textarea{padding:10px;border-radius:8px;border:1px solid var(--fourth-color);font-size:.95rem}.add-item-folder-form textarea{resize:none}.add-item-folder-form button{align-self:flex-end;padding:10px 16px;border-radius:8px;border:none;background:var(--third-color);color:#fff;cursor:pointer;font-weight:600}.add-item-viz-section{display:flex;flex-direction:column;gap:10px;overflow:hidden}.add-item-search{display:flex;gap:6px;align-items:center;border:1px solid var(--fourth-color);padding:6px;border-radius:6px}.add-item-search input{border:none;outline:none;flex:1}.add-item-viz-list{overflow-y:auto;max-height:300px;display:flex;flex-direction:column;gap:8px}.add-item-viz-card{border:1px solid var(--fourth-color);padding:10px;border-radius:8px;display:flex;justify-content:space-between;gap:12px;transition:background .15s ease,transform .1s ease}.add-item-viz-card:hover{background:#00000008;transform:translateY(-1px)}.add-item-viz-card h4{margin:0 0 4px;font-size:.95rem;color:var(--primary-color)}.add-item-viz-card p{margin:0;font-size:.8rem;color:var(--secondary-text-color);line-height:1.4;display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.add-item-viz-card button{background:var(--third-color);color:#fff;border:none;border-radius:6px;padding:6px 12px;cursor:pointer}.add-item-pagination{display:flex;justify-content:center;gap:10px}.add-item-pagination button{padding:6px 12px;border-radius:6px;border:1px solid var(--fourth-color);background:#fff;cursor:pointer}.studio-folder-entries-section{width:100%;display:flex;flex-direction:column;gap:14px}.studio-folder-empty{text-align:center;color:var(--secondary-text-color);font-size:14px;padding:50px 0}.studio-folder-entries-loading{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:18px}.studio-folder-entry-skeleton{height:140px;border-radius:10px;background:linear-gradient(90deg,#c8c8c833 25%,#dcdcdc59 37%,#c8c8c833 63%);background-size:400% 100%;animation:studio-folder-skeleton 1.4s ease infinite}@keyframes studio-folder-skeleton{0%{background-position:100% 50%}to{background-position:0 50%}}.studio-folder-list-view{display:flex;flex-direction:column;gap:2px;border-radius:10px;overflow:hidden}.studio-folder-list-view::-webkit-scrollbar{width:6px}.studio-folder-list-view::-webkit-scrollbar-thumb{background:var(--fourth-color);border-radius:3px}.studio-folder-list-view::-webkit-scrollbar-track{background:transparent}.studio-folder-entry-row{display:flex;align-items:center;gap:1rem;height:4.8rem;padding:0 .8rem;background:#fff;border-radius:.9rem;cursor:pointer;transition:all .15s ease}.studio-folder-entry-row.hovered{background:#45688214;transform:translateY(-1px)}.studio-folder-entry-row.no-desc .studio-folder-entry-text{justify-content:center}.studio-folder-entry-drag{cursor:grab;color:var(--third-text-color);font-size:.9rem}.studio-folder-entry-index{width:2rem;text-align:right;font-size:.9rem;color:var(--third-text-color)}.studio-folder-entry-icon{width:2.6rem;height:2.6rem;border-radius:.7rem;display:flex;align-items:center;justify-content:center;font-size:1.1rem;background:#1b3c531a;color:var(--primary-color);flex-shrink:0}.studio-folder-entry-text{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}.studio-folder-entry-title{font-size:.95rem;font-weight:600;color:var(--primary-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.studio-folder-entry-description{font-size:.85rem;color:var(--secondary-text-color);margin-top:.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.studio-folder-entry-badge-container{width:6rem}.studio-folder-entry-badge{width:100%;text-align:center;font-size:.75rem;padding:.25rem .7rem;border-radius:.6rem;text-transform:capitalize;font-weight:500;background:#1b3c5314;color:var(--primary-color)}.studio-folder-entry-delete{border:none;background:transparent;color:#c0392b;font-size:1rem;cursor:pointer;padding:6px}.studio-folder-entry-delete:hover{transform:scale(1.1)}.studio-folder-entry-card{position:relative;display:flex;flex-direction:column;align-items:center;padding:1rem;border-radius:1rem;border:.1rem solid rgba(27,60,83,.12);background:#fff;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .12s ease;width:14rem;min-height:12.5rem}.studio-folder-entry-card:hover{border-color:#1b3c5340;background:#4568820a;transform:translateY(-2px)}.studio-folder-entry-card-remove{position:absolute;top:.5rem;left:.5rem;background:#fff;border:1px solid rgba(27,60,83,.15);width:1.8rem;height:1.8rem;border-radius:.5rem;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.9rem;color:#c0392b;transition:background .15s ease,border-color .15s ease}.studio-folder-entry-card-remove:hover{background:#c0392b14;border-color:#c0392b4d}.studio-folder-entry-card-header{width:100%;display:flex;justify-content:flex-end;margin-bottom:.4rem}.studio-folder-entry-card-type{font-size:.65rem;padding:.2rem .5rem;border-radius:.5rem;background:#1b3c5314;color:var(--primary-color);text-transform:capitalize;font-weight:500}.studio-folder-entry-card-icon{width:3.2rem;height:3.2rem;border-radius:.9rem;display:flex;align-items:center;justify-content:center;font-size:1.6rem;background:#1b3c531a;color:var(--primary-color);margin-bottom:.6rem}.studio-folder-entry-card-title{width:100%;font-size:1rem;font-weight:600;color:var(--primary-text-color);text-align:center;line-height:1.3;height:2rem;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.studio-folder-entry-card-description{font-size:.82rem;color:var(--secondary-text-color);text-align:center;line-height:1.3;display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.studio-folder-grid-view{display:grid;grid-template-columns:repeat(auto-fit,14rem);justify-content:center;gap:1rem 1.25rem;width:100%}:root{--display-surface-bg: #111214;--display-surface-border: #232428;--display-stage-border: #2a2a2f;--display-panel-bg-start: #1a1b1f;--display-panel-bg-end: #141518;--display-panel-border: #2a2a2f;--display-controls-bg: #16171b;--display-controls-border: #2d2d33;--display-controls-muted: #b1b1bb;--display-button-bg: #1e1f24;--display-button-border: #353640;--display-button-text: #e4e4ea;--display-button-hover-bg: #2a2c35;--display-scrubber-accent: #7b7f8a;--display-fullscreen-controls-bg: rgba(22, 23, 27, .92)}.editor-display{position:relative;background:var(--display-surface-bg);display:flex;flex-direction:column;border:.08rem solid var(--display-surface-border)}.minimize-width-display{width:calc(100vw - 20rem)}.full-width-display{width:100vw}.minimize-height-display{height:calc(100vh - 16rem)}.full-height-display{height:calc(100vh - 4rem)}.editor-display-controls{display:flex;align-items:center;gap:.75rem;padding:.2rem 1rem;border-bottom:1px solid var(--display-stage-border);background:var(--display-surface-bg);height:fit-content}.editor-display-controls button{background:none;border:1px solid var(--display-button-border);color:var(--display-button-text);padding:.25rem .6rem;cursor:pointer;font-size:.8rem}.editor-playback-time{font-size:.72rem;color:var(--display-controls-muted);display:inline-flex;align-items:center;gap:.25rem;min-width:0}.editor-playback-time span{font-size:inherit;color:var(--display-controls-muted)}.editor-current-chapter-inline{max-width:6rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editor-stage{position:relative;overflow:hidden;width:100%;height:auto;max-height:100%;aspect-ratio:16 / 9;background-color:var(--display-surface-bg);border:2px solid var(--display-stage-border);margin:auto;container-type:size;box-sizing:border-box}.editor-stage-full-view{position:relative;overflow:hidden;width:100%;height:auto;max-height:100%;aspect-ratio:16 / 9;background-color:var(--display-surface-bg);border:2px solid var(--display-stage-border);margin:auto;box-sizing:border-box;container-type:size}.focused-component:after{content:"";position:absolute;height:calc(100% + 10px);width:calc(100% + 10px);top:-5px;left:-5px;background-color:transparent;box-shadow:0 0 5px 1px var(--fourth-color);border-radius:inherit;-webkit-border-radius:inherit;-moz-border-radius:inherit;-ms-border-radius:inherit;-o-border-radius:inherit}.editor-connectors{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3}.editor-stage-world{position:absolute;inset:0;transform-origin:0 0;z-index:1}.editor-component{position:absolute;font-size:1cqw;-webkit-user-select:none;user-select:none;cursor:pointer;top:0;left:0;will-change:transform,opacity;text-align:center;line-height:1.2;white-space:pre-wrap;word-break:break-word}.editor-display:fullscreen{width:100vw!important;height:100vh!important;margin:0;padding:0;border-radius:0;background:var(--display-surface-bg)}.editor-display:fullscreen .editor-stage,.editor-display:fullscreen .editor-stage-full-view{width:100%;height:100%;aspect-ratio:auto}.editor-display:fullscreen .editor-stage,.editor-display:fullscreen .editor-stage *,.editor-display:fullscreen .editor-stage-full-view,.editor-display:fullscreen .editor-stage-full-view *{cursor:none}.editor-display:fullscreen .editor-waveform-section,.editor-display:fullscreen .editor-waveform-scrollbar,.editor-display:fullscreen .editor-waveform-footer{display:none}.editor-display-controls button.export-btn{background:none;border:1px solid var(--display-button-border);color:var(--display-button-text);padding:.25rem .6rem;cursor:pointer;font-size:.8rem;display:flex;align-items:center;gap:.4rem}.editor-display-controls button.export-btn:disabled{opacity:.5;cursor:not-allowed}.editor-display-controls button.export-btn.exporting{position:relative;overflow:hidden;border-color:var(--fourth-color);color:var(--fourth-color)}.editor-display-controls button.export-btn.exporting:before{content:"";position:absolute;left:0;top:0;height:100%;width:var(--export-progress, 0%);background:var(--fourth-color);opacity:.15;transition:width .3s ease}.editor-display-controls button.cancel-btn{border-color:#ef4444;color:#ef4444}.editor-display-controls button.cancel-btn:hover{background:#ef444422}.editor-display-controls select{background:none;border:1px solid var(--display-button-border);color:var(--display-button-text);padding:.25rem .4rem;cursor:pointer;font-size:.8rem;outline:none}.editor-display-controls select:disabled{opacity:.5;cursor:not-allowed}.editor-display-controls select option{background:var(--display-surface-bg);color:var(--display-button-text)}.editor-display-controls .export-group{display:flex;align-items:center;gap:.5rem;margin-left:auto;padding-left:.75rem;border-left:1px solid var(--display-stage-border)}.editor-scrubber-wrapper{flex:1;position:relative;display:flex;align-items:center}.editor-scrubber-wrapper input[type=range]{width:100%}.editor-chapter-dot{position:absolute;width:.4rem;height:.4rem;border-radius:50%;background:var(--display-button-text);transform:translate(-50%);pointer-events:none;opacity:.8;top:50%;margin-top:-.2rem}.editor-scrubber-tooltip{position:absolute;top:calc(100% + .4rem);transform:translate(-50%);background:#000000bf;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;font-size:.68rem;padding:.18rem .5rem;white-space:nowrap;pointer-events:none;border:1px solid rgba(255,255,255,.1);z-index:100}.editor-chapter-toast{position:absolute;top:calc(100% + .4rem);left:50%;transform:translate(-50%);background:#000000bf;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;font-size:.72rem;padding:.2rem .6rem;white-space:nowrap;pointer-events:none;border:1px solid rgba(255,255,255,.1);animation:editor-toast-fade 2s ease forwards;z-index:100}@keyframes editor-toast-fade{0%{opacity:0;transform:translate(-50%) translateY(4px)}15%{opacity:1;transform:translate(-50%) translateY(0)}75%{opacity:1}to{opacity:0}}.editor-settings-wrapper{position:relative;margin-left:auto}.editor-settings-btn{background:none;border:1px solid var(--display-button-border);color:var(--display-button-text);padding:.25rem .5rem;cursor:pointer;font-size:.85rem;line-height:1}.editor-settings-btn.active{border-color:var(--display-controls-muted);color:#fff}.editor-settings-panel{position:absolute;top:calc(100% + .5rem);right:0;background:color-mix(in srgb,var(--display-surface-bg) 95%,#000 5%);border:1px solid var(--display-stage-border);padding:.75rem;min-width:14rem;box-shadow:0 .5rem 1.5rem #00000080;z-index:200;display:flex;flex-direction:column;gap:.3rem;height:15rem;overflow-y:auto;overflow-x:hidden}.editor-settings-label{font-size:.62rem;text-transform:uppercase;letter-spacing:.07em;color:var(--display-controls-muted);margin-bottom:.2rem}.editor-settings-row{display:flex;align-items:center;gap:.3rem;flex-wrap:wrap}.editor-settings-chip{background:none;border:1px solid var(--display-button-border);color:var(--display-button-text);padding:.2rem .5rem;cursor:pointer;font-size:.72rem;white-space:nowrap;transition:all .12s}.editor-settings-chip:hover{background:color-mix(in srgb,var(--display-button-border) 40%,transparent)}.editor-settings-chip.active{border-color:var(--display-controls-muted);color:#fff;background:color-mix(in srgb,var(--display-button-border) 60%,transparent)}.editor-settings-chip:disabled{opacity:.5;cursor:not-allowed}.export-chip{position:relative;overflow:hidden}.export-chip.exporting{border-color:var(--fourth-color);color:var(--fourth-color)}.editor-export-phase{font-size:.62rem;color:#bdbdc7;text-transform:capitalize}.export-chip.exporting:before{content:"";position:absolute;left:0;top:0;height:100%;width:var(--export-progress, 0%);background:var(--fourth-color);opacity:.15;transition:width .3s ease}.cancel-chip{border-color:#ef4444!important;color:#ef4444!important}.editor-settings-select{background:none;border:1px solid var(--display-button-border);color:var(--display-button-text);padding:.2rem .4rem;cursor:pointer;font-size:.72rem;outline:none}.editor-settings-select option{background:var(--display-surface-bg);color:var(--display-button-text)}.editor-settings-chapter-list{display:flex;flex-direction:column;gap:.15rem;max-height:10rem;overflow-y:scroll;margin-top:.2rem;flex-shrink:0;overflow-x:hidden}.editor-settings-chapter-btn{display:flex;align-items:center;gap:.5rem;width:100%;padding:.25rem .4rem;background:none;border:1px solid transparent;color:var(--display-button-text);font-size:.72rem;cursor:pointer;text-align:left;transition:all .12s}.editor-settings-chapter-btn:hover{background:color-mix(in srgb,var(--display-button-border) 40%,transparent);border-color:var(--display-button-border)}.editor-settings-chapter-btn.active{color:#fff;border-color:var(--display-button-border);background:color-mix(in srgb,var(--display-button-border) 60%,transparent)}.editor-chapter-time{font-size:.62rem;color:var(--display-controls-muted);min-width:2.5rem;flex-shrink:0}.editor-chapter-title{flex:1;min-width:0;max-width:10rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:inherit;color:inherit}.editor-timelock-display{all:unset;font-size:.66rem;color:var(--display-controls-muted);font-variant-numeric:tabular-nums;padding:.2rem .4rem;border:1px solid var(--display-button-border);width:4.5rem}.editor-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:1.7rem;line-height:1}.editor-chip-with-icon{display:inline-flex;align-items:center;justify-content:center;gap:.3rem;line-height:1;font-size:inherit}.editor-settings-label-spaced{margin-top:.75rem}.editor-stage-canvas{width:100%;height:100%;display:block}.editor-waveform-section{border-bottom:1px solid var(--display-stage-border);background:linear-gradient(180deg,var(--display-panel-bg-start),var(--display-panel-bg-end));padding:.1rem .3rem;display:flex;flex-direction:column;gap:.25rem}.editor-waveform-header{display:flex;align-items:center;gap:.5rem;font-size:.64rem;color:var(--display-controls-muted);text-transform:uppercase;letter-spacing:.06em}.editor-waveform-title{font-weight:600;color:var(--display-button-text);font-size:.64rem;letter-spacing:.06em}.editor-waveform-hint{font-size:.6rem;color:var(--display-controls-muted);text-transform:none;letter-spacing:0}.editor-waveform-actions{margin-left:auto;display:inline-flex;align-items:center;gap:.3rem}.editor-waveform-zoom-btn{width:1.1rem;height:1.1rem;border:1px solid var(--display-button-border);background:var(--display-button-bg);color:var(--display-button-text);font-size:.7rem;line-height:1;padding:0;cursor:pointer}.editor-waveform-zoom-btn:hover{background:var(--display-button-hover-bg)}.editor-waveform-zoom-label{font-size:.6rem;color:var(--display-controls-muted);text-transform:none;letter-spacing:0;min-width:2.8rem;text-align:center}.editor-waveform-reset{border:1px solid var(--display-button-border);background:var(--display-button-bg);color:var(--display-button-text);font-size:.58rem;padding:.12rem .35rem;cursor:pointer}.editor-waveform-reset:hover{background:var(--display-button-hover-bg)}.editor-waveform-shell{position:relative;height:4.4rem;border:1px solid var(--display-panel-border);background:color-mix(in srgb,var(--display-panel-bg-start) 80%,#000 20%);overflow:hidden;cursor:col-resize}.editor-waveform-canvas{display:block;width:100%;height:100%}.editor-waveform-scrollbar{position:relative;height:.4rem;border:1px solid var(--display-panel-border);background:color-mix(in srgb,var(--display-panel-bg-start) 65%,#000 35%);cursor:pointer}.editor-waveform-scrollbar-handle{position:absolute;top:0;bottom:0;border:1px solid var(--display-button-border);background:color-mix(in srgb,var(--display-button-text) 25%,transparent);cursor:grab}.editor-waveform-scrollbar-handle:active{cursor:grabbing}.editor-waveform-loading,.editor-waveform-empty{position:absolute;inset:0;display:grid;place-items:center;font-size:.64rem;color:var(--display-controls-muted);background:#00000040;z-index:2;pointer-events:none}.editor-waveform-tooltip{position:absolute;right:.35rem;top:.35rem;font-size:.6rem;color:var(--display-button-text);background:#00000073;padding:.1rem .4rem;border:1px solid rgba(255,255,255,.12);pointer-events:none}.editor-waveform-footer{display:flex;align-items:center;justify-content:space-between;font-size:.58rem;color:var(--display-controls-muted);font-variant-numeric:tabular-nums;gap:.5rem}.editor-waveform-footer-time,.editor-waveform-footer-current{color:var(--display-button-text);font-size:inherit}.editor-waveform-footer-times{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;font-size:inherit}.editor-waveform-timelock{display:inline-flex;align-items:center;gap:.35rem;flex-shrink:0}.editor-waveform-timelock-btn{height:1.2rem;padding:0 .45rem;border:1px solid var(--display-button-border);background:var(--display-button-bg);color:var(--display-button-text);font-size:.58rem;cursor:pointer}.editor-waveform-timelock-btn.active{border-color:var(--display-controls-muted);color:#fff}.editor-waveform-timelock-input{width:4.8rem;height:1.2rem;padding:0 .35rem;border:1px solid var(--display-button-border);background:var(--display-button-bg);color:var(--display-button-text);font-size:.6rem;font-variant-numeric:tabular-nums}.editor-tools-bar{background:transparent;border:none;padding:0;display:flex;align-items:center;gap:.4rem;width:100%}.editor-tools-group{display:inline-flex;align-items:center;gap:.35rem;padding:.08rem .2rem;border:1px solid var(--display-panel-border);background:color-mix(in srgb,var(--display-panel-bg-start) 75%,#000 25%)}.editor-tools-label{font-size:.52rem;letter-spacing:.08em;color:var(--display-controls-muted);text-transform:uppercase}.editor-tools-color-input{width:1.1rem;height:1.1rem;padding:0;border:none;background:none;cursor:pointer}.editor-tools-color-hex{width:5.4rem;height:1.2rem;padding:0 .35rem;border:1px solid var(--display-button-border);background:var(--display-button-bg);color:var(--display-button-text);font-size:.6rem;text-transform:uppercase}.editor-tools-btn{height:1.2rem;padding:0 .4rem;border:1px solid var(--display-button-border);background:var(--display-button-bg);color:var(--display-button-text);font-size:.58rem;cursor:pointer}.editor-tools-btn:hover{background:var(--display-button-hover-bg)}.animation-workbench{--wb-bg: #0f0f11;--wb-text: #d7d7db;--wb-header-bg: #171719;--wb-header-border: #2a2a2f;--wb-panel-bg: #141416;--wb-panel-border: #2a2a2f;--wb-panel-inner-border: #2f2f35;--wb-input-bg: #111113;--wb-input-border: #2f2f34;--wb-input-text: #ececf1;--wb-focus: #8b949e;--wb-btn-bg: #18181b;--wb-btn-border: #313136;--wb-btn-text: #d8d8de;--wb-btn-primary-bg: #2a2a2f;--wb-btn-primary-border: #3a3a40;--wb-btn-primary-text: #f2f2f5;--wb-muted: #9a9aa3;--wb-script-bg: #101012;--wb-script-border: #2c2c31;--wb-script-text: #ececf1;--wb-scroll-track: #111114;--wb-scroll-thumb: #3e3e45;--wb-scroll-thumb-hover: #575760;--wb-console-bg: #111114;--wb-console-border: #2a2a2f;--wb-console-separator: #25252a;--wb-log-empty: #8f8f98;--wb-log-error: #ff6b81;--wb-log-success: #39d98a;--wb-log-info: #52b6ff;--wb-log-print: #bb86fc;--wb-log-warning: #f59e0b;min-height:100vh;height:100vh;background:var(--wb-bg);color:var(--wb-text);display:flex;flex-direction:column;overflow:hidden}.animation-workbench.theme-light{--wb-bg: #e7ebf3;--wb-text: #1c2433;--wb-header-bg: #e9edf7;--wb-header-border: #cfd7ea;--wb-panel-bg: #ffffff;--wb-panel-border: #d3dced;--wb-panel-inner-border: #dbe3f1;--wb-input-bg: #ffffff;--wb-input-border: #c5d0e6;--wb-input-text: #1c2433;--wb-focus: #2f67d8;--wb-btn-bg: #e9eefb;--wb-btn-border: #c4d0ea;--wb-btn-text: #1f2a3e;--wb-btn-primary-bg: #2f67d8;--wb-btn-primary-border: #2b60cc;--wb-btn-primary-text: #f8fbff;--wb-muted: #526381;--wb-script-bg: #fbfcff;--wb-script-border: #d0d9ed;--wb-script-text: #1f2a3e;--wb-scroll-track: #e7edf8;--wb-scroll-thumb: #9daecc;--wb-scroll-thumb-hover: #7f92b7;--wb-console-bg: #f6f9ff;--wb-console-border: #d2dbef;--wb-console-separator: #dde4f3;--wb-log-empty: #6c7b97;--wb-log-error: #b4233f;--wb-log-success: #1e7a46;--wb-log-info: #1b5fd1;--wb-log-print: #6a33b8}.animation-workbench.theme-light .animation-workbench-back-action-btn{border-color:#a8b6d1;background:#dbe4f4;color:#1f2d44}.animation-workbench.theme-light .animation-workbench-back-action-btn:hover:not(:disabled){background:#ced9ee}.animation-workbench.theme-light .animation-workbench-clear-btn{border-color:#d6b1b8;background:#f3e0e4;color:#7a2436}.animation-workbench.theme-light .animation-workbench-clear-btn:hover:not(:disabled){background:#edd0d7}.animation-workbench.theme-light .animation-workbench-log{font-weight:500}.animation-workbench-header{display:flex;justify-content:space-between;align-items:center;gap:.6rem;padding:.38rem .55rem;border-bottom:.08rem solid var(--wb-header-border);background:var(--wb-header-bg)}.animation-workbench-header-fields{flex:1;display:grid;grid-template-columns:2fr 3fr 1fr;gap:.45rem}.animation-workbench-inline-field{display:flex;align-items:center;gap:.28rem;width:100%;min-width:0}.animation-workbench-inline-label{font-size:.72rem;color:var(--wb-muted);white-space:nowrap}.animation-workbench-header input{width:100%;flex:1 1 0%;min-width:0;background:var(--wb-input-bg);color:var(--wb-input-text);border:.08rem solid var(--wb-input-border);border-radius:0;padding:.22rem .38rem;outline:none;font-size:.78rem;line-height:1.2}.animation-workbench-header input:focus{border-color:var(--wb-focus);box-shadow:0 0 0 .12rem color-mix(in srgb,var(--wb-focus) 18%,transparent)}.animation-workbench-header-actions{display:flex;align-items:center;gap:.24rem}.animation-workbench-header-actions .animation-workbench-btn{height:1.7rem;display:inline-flex;align-items:center;justify-content:center}.animation-workbench-theme-btn{width:1.7rem;padding:0}.animation-workbench-btn{border:.08rem solid var(--wb-btn-border);background:var(--wb-btn-bg);color:var(--wb-btn-text);border-radius:0;padding:.24rem .52rem;font-size:.75rem;cursor:pointer;line-height:1;min-width:1.7rem}.animation-workbench-btn.active{border-color:var(--wb-focus);color:var(--wb-btn-primary-text);background:color-mix(in srgb,var(--wb-btn-primary-bg) 65%,var(--wb-btn-bg))}.animation-workbench-btn.primary{border-color:var(--wb-btn-primary-border);background:var(--wb-btn-primary-bg);color:var(--wb-btn-primary-text)}.animation-workbench-save-btn{border-color:#2c72e8;background:#2f7dfd;color:#f8fbff}.animation-workbench-save-btn:hover:not(:disabled){background:#3e8aff}.animation-workbench-run-btn{border-color:#178f60;background:#1fa36d;color:#f7fffb}.animation-workbench-run-btn:hover:not(:disabled){background:#29b779}.animation-workbench-preview-btn{display:inline-flex;align-items:center;gap:.22rem}.animation-workbench-back-action-btn{border-color:#3a3a40;background:#232327;color:#e8e8ed}.animation-workbench-back-action-btn:hover:not(:disabled){background:#2e2e34}.animation-workbench-clear-btn{border-color:#45454d;background:#2b2b31;color:#ececf1}.animation-workbench-clear-btn:hover:not(:disabled){background:#36363d}.animation-workbench-btn:disabled{opacity:.65;cursor:not-allowed}.animation-workbench-back-btn{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;padding:0;flex:0 0 auto}.animation-workbench-body{flex:1;display:flex;gap:.38rem;padding:.38rem;min-height:0;overflow:hidden}.animation-workbench-left-side{display:flex;flex-direction:column;gap:.38rem;flex:1;min-height:0;overflow:hidden}.animation-workbench-preview{background:var(--wb-panel-bg);border:.08rem solid var(--wb-panel-border);border-radius:0;padding:.34rem;display:flex;flex-direction:column;min-height:0;flex:0 0 auto}.animation-workbench-display-shell{height:fit-content;width:100%;margin:0;overflow:hidden}.animation-workbench-preview .editor-display{width:100%;height:100%;border-radius:0;overflow:hidden}.animation-workbench-preview .editor-display.full-width-display,.animation-workbench-preview .editor-display.minimize-width-display{width:100%}.animation-workbench-preview .editor-display.full-height-display,.animation-workbench-preview .editor-display.minimize-height-display{height:100%}.animation-workbench-preview .editor-stage,.animation-workbench-preview .editor-stage-full-view{width:100%;height:auto;aspect-ratio:16 / 9;margin:auto;border:none}.animation-workbench-script-side{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.animation-workbench-script-side .animation-workbench-script{flex:1;min-height:0}.animation-workbench-script>.animation-workbench-script-editor,.animation-workbench-script>.animation-workbench-script-monaco-wrapper{flex:1;min-height:0;overflow:hidden}.animation-workbench-script-monaco-wrapper{display:flex;flex-direction:column;flex:1;min-height:0}.animation-workbench-script-body{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;height:100%}.animation-workbench-splitter{height:.35rem;cursor:row-resize;background:var(--wb-panel-border);border-top:.08rem solid var(--wb-panel-inner-border);border-bottom:.08rem solid var(--wb-panel-inner-border)}.animation-workbench-console-embedded{min-height:6rem;overflow:hidden;display:flex;flex-direction:column}.animation-workbench-script-monaco-wrapper .monaco-editor{--vscode-editor-background: var(--wb-script-bg)}.animation-workbench-script-monaco-wrapper .monaco-editor .find-widget,.animation-workbench-script-monaco-wrapper .monaco-editor .editor-widget.find-widget{z-index:50;overflow:visible}.animation-workbench-script-monaco-wrapper .monaco-editor .find-widget .button.close,.animation-workbench-script-monaco-wrapper .monaco-editor .find-widget [title=Escape],.animation-workbench-script-monaco-wrapper .monaco-editor .find-widget [title="Close (Escape)"]{min-width:28px;min-height:28px;position:relative;z-index:51;pointer-events:auto}.animation-workbench-script-monaco-wrapper *{font-size:inherit}.animation-workbench-script,.animation-workbench-console{background:var(--wb-panel-bg);border:.08rem solid var(--wb-panel-border);border-radius:0;padding:.34rem;display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.animation-workbench-tools-panel{background:var(--wb-panel-bg);border:.08rem solid var(--wb-panel-border);border-radius:0;padding:.34rem;display:flex;flex-direction:column;gap:.3rem;flex:1 1 auto;min-height:0}.animation-workbench-tools-body{display:flex;flex-direction:column;gap:.3rem}.animation-workbench-panel-head{display:flex;align-items:center;justify-content:space-between;gap:.36rem;margin-bottom:.3rem}.animation-workbench-panel-head h3{margin:0;font-size:.82rem;color:var(--wb-text)}.animation-workbench-panel-actions{display:flex;align-items:center;gap:.24rem}.animation-workbench-panel-actions .animation-workbench-btn{height:1.7rem;display:inline-flex;align-items:center;justify-content:center}.animation-workbench-btn *{font-size:inherit}.animation-workbench-find-panel{border:.08rem solid var(--wb-input-border);background:var(--wb-input-bg);margin-bottom:.3rem;padding:.28rem;display:flex;flex-direction:column;gap:.24rem}.animation-workbench-find-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto auto auto;gap:.24rem;align-items:center}.animation-workbench-find-row+.animation-workbench-find-row{grid-template-columns:minmax(0,1fr) auto auto}.animation-workbench-find-input{width:100%;min-width:0;height:1.7rem;border:.08rem solid var(--wb-input-border);background:var(--wb-script-bg);color:var(--wb-input-text);padding:.22rem .38rem;font-size:.74rem;line-height:1.2;outline:none}.animation-workbench-find-input:focus{border-color:var(--wb-focus)}.animation-workbench-find-count{min-width:3.3rem;font-size:.68rem;color:var(--wb-muted);text-align:right}.animation-workbench-find-case{display:inline-flex;align-items:center;gap:.16rem;height:1.7rem;border:.08rem solid var(--wb-btn-border);background:var(--wb-btn-bg);padding:0 .34rem;color:var(--wb-btn-text)}.animation-workbench-find-case input{margin:0}.animation-workbench-find-case span{font-family:Consolas,Courier New,monospace;font-size:.75rem;font-weight:400;line-height:1;letter-spacing:0;text-transform:none;color:var(--wb-btn-text)}.animation-workbench-version{font-size:.68rem;color:var(--wb-muted);border:.08rem solid var(--wb-input-border);background:var(--wb-input-bg);border-radius:0;padding:.18rem .34rem}.animation-workbench-script-editor{--wb-script-font-size: .84rem;--wb-script-line-height: 1.45;--wb-script-padding: .42rem;--wb-script-line-height-px: 1.218rem ;flex:1;height:100%;min-height:0;width:100%;border:.08rem solid var(--wb-script-border);background:var(--wb-script-bg);display:grid;grid-template-columns:3.2rem minmax(0,1fr);overflow:hidden}.animation-workbench-script-gutter{border-right:.08rem solid var(--wb-script-border);color:var(--wb-muted);background:color-mix(in srgb,var(--wb-script-bg) 92%,var(--wb-bg) 8%);overflow:hidden}.animation-workbench-script-gutter-content{padding:var(--wb-script-padding) .36rem}.animation-workbench-script-gutter-line{display:flex;align-items:center;justify-content:flex-end;gap:.18rem;line-height:var(--wb-script-line-height);font-family:monospace;font-size:var(--wb-script-font-size);white-space:pre}.animation-workbench-script-gutter-number{min-width:1.7rem;text-align:right;line-height:var(--wb-script-line-height);font-family:monospace;font-size:var(--wb-script-font-size)}.animation-workbench-fold-toggle{width:.84rem;height:calc(var(--wb-script-font-size) * var(--wb-script-line-height));border:0;background:transparent;color:var(--wb-muted);display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer;font-size:.62rem;line-height:1}.animation-workbench-fold-toggle:disabled{opacity:.22;cursor:default}.animation-workbench-fold-toggle:not(:disabled):hover{color:var(--wb-input-text)}.animation-workbench-script-layers{position:relative;height:100%;min-height:0;overflow:hidden}.animation-workbench-suggestions{position:absolute;top:0;left:0;z-index:6;width:20rem;max-height:12rem;overflow-y:auto;border:.08rem solid var(--wb-btn-primary-border);background:color-mix(in srgb,var(--wb-panel-bg) 92%,#000000 8%);box-shadow:0 .6rem 1.4rem #00000059;display:flex;flex-direction:column;will-change:transform}.animation-workbench-suggestions[data-ready="0"]{opacity:0;pointer-events:none}.animation-workbench-suggestions[data-ready="1"]{opacity:1;pointer-events:auto}.animation-workbench-suggestion-item{display:flex;align-items:center;justify-content:space-between;gap:.5rem;border:0;background:transparent;color:var(--wb-input-text);text-align:left;padding:.3rem .54rem;font-family:Consolas,Courier New,monospace;font-size:.76rem;line-height:var(--wb-script-line-height);cursor:pointer}.animation-workbench-suggestion-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.animation-workbench-suggestion-kind{font-size:.64rem;line-height:1;padding:.14rem .28rem;border-radius:.24rem;background:color-mix(in srgb,var(--wb-btn-border) 78%,transparent);color:var(--wb-muted);text-transform:uppercase}.animation-workbench-suggestion-item:hover,.animation-workbench-suggestion-item.active{background:color-mix(in srgb,var(--wb-btn-primary-bg) 34%,transparent);color:var(--wb-btn-primary-text)}.animation-workbench-signature{position:absolute;top:0;left:0;z-index:5;min-width:14rem;max-width:28rem;padding:.36rem .48rem;border:.08rem solid var(--wb-btn-primary-border);background:color-mix(in srgb,var(--wb-panel-bg) 92%,#000000 8%);box-shadow:0 .5rem 1.2rem #0000004d;font-family:Consolas,Courier New,monospace;font-size:.74rem;line-height:1.3;color:var(--wb-input-text);will-change:transform}.animation-workbench-signature[data-ready="0"]{opacity:0;pointer-events:none}.animation-workbench-signature[data-ready="1"]{opacity:1;pointer-events:auto}.animation-workbench-signature-label{display:block;color:var(--wb-input-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.animation-workbench-signature-meta{margin-top:.18rem;font-size:.66rem;color:var(--wb-muted)}.animation-workbench-signature-meta span{color:var(--wb-input-text)}.animation-workbench-signature-param{color:var(--wb-muted)}.animation-workbench-signature-param.active{color:var(--wb-btn-primary-text);background:color-mix(in srgb,var(--wb-btn-primary-bg) 50%,transparent);padding:0 .12rem}.animation-workbench-script-highlight,.animation-workbench-script-textarea-layer{position:absolute;inset:0;margin:0;border:0;border-radius:0;background:transparent;font-family:monospace;font-size:var(--wb-script-font-size);line-height:var(--wb-script-line-height);padding:var(--wb-script-padding);white-space:pre;tab-size:2}.animation-workbench-script-highlight{overflow:hidden;pointer-events:none}.animation-workbench-folded-line-overlay{position:absolute;inset:0;overflow:hidden;pointer-events:none}.animation-workbench-folded-line-highlight{position:absolute;left:0;right:0;background:color-mix(in srgb,var(--wb-btn-primary-bg) 30%,#ffffff 6%)}.animation-workbench-script-highlight-content{display:inline-block;min-width:100%;color:var(--wb-script-text);font-size:inherit;font-family:inherit;line-height:inherit}.animation-workbench-script-highlight-content span{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit;word-spacing:inherit;font-kerning:inherit;font-variant-ligatures:inherit;white-space:inherit}.animation-workbench-script-highlight-content.overlay,.animation-workbench-script-highlight-content.overlay span{color:transparent}.animation-workbench-find-match{background:color-mix(in srgb,#facc15 30%,transparent);border-radius:.08rem;font-size:inherit;font-family:inherit;line-height:inherit}.animation-workbench-find-match.active{background:color-mix(in srgb,#22d3ee 50%,transparent)}.match-bracket{background:color-mix(in srgb,#60a5fa 38%,transparent);border-radius:.08rem}.error-char{display:inline;line-height:inherit;border-radius:.08rem;background:#ef444466}.syntax-keyword{color:#f472b6}.syntax-type{color:#22d3ee}.syntax-command{color:#60a5fa}.syntax-special-function{color:#a78bfa}.syntax-identifier{color:var(--wb-script-text)}.syntax-symbol{color:#94a3b8}.syntax-prop{color:#f9a8d4}.syntax-command-prop{color:#fda4af}.syntax-command-prop-invalid{color:#ef4444;text-decoration:wavy underline #ef4444;text-underline-offset:.08rem}.syntax-number-literal{color:#f59e0b}.syntax-string-literal{color:#86efac}.syntax-bool-literal{color:#c4b5fd}.syntax-comment{color:#64748b}.animation-workbench-script-textarea-layer{resize:none;overflow:auto;outline:none;color:transparent;caret-color:var(--wb-script-text)}.animation-workbench-script-textarea-layer::selection{background:color-mix(in srgb,var(--wb-focus) 35%,transparent)}.animation-workbench-script-textarea-layer:focus{box-shadow:none}.animation-workbench-script-textarea-layer{scrollbar-width:thin;scrollbar-color:var(--wb-scroll-thumb) var(--wb-scroll-track)}.animation-workbench-script-textarea-layer::-webkit-scrollbar{width:.45rem;height:.45rem}.animation-workbench-script-textarea-layer::-webkit-scrollbar-track{background:var(--wb-scroll-track);border-radius:.5rem}.animation-workbench-script-textarea-layer::-webkit-scrollbar-thumb{background:var(--wb-scroll-thumb);border-radius:.5rem;border:.08rem solid var(--wb-scroll-track)}.animation-workbench-script-textarea-layer::-webkit-scrollbar-thumb:hover{background:var(--wb-scroll-thumb-hover)}.animation-workbench-console-list{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:.2rem;background:var(--wb-console-bg);border:.08rem solid var(--wb-console-border);padding:.2rem;scrollbar-width:thin;scrollbar-color:var(--wb-scroll-thumb) var(--wb-scroll-track)}.animation-workbench-console-list::-webkit-scrollbar{width:.4rem;height:.4rem}.animation-workbench-console-list::-webkit-scrollbar-track{background:var(--wb-scroll-track)}.animation-workbench-console-list::-webkit-scrollbar-thumb{background:var(--wb-scroll-thumb);border-radius:.4rem;border:.08rem solid var(--wb-scroll-track)}.animation-workbench-console-list::-webkit-scrollbar-thumb:hover{background:var(--wb-scroll-thumb-hover)}.animation-workbench-empty{margin:auto;color:var(--wb-log-empty);font-size:.78rem}.animation-workbench-log{padding:.14rem .18rem .16rem}.animation-workbench-log+.animation-workbench-log{border-top:.08rem solid var(--wb-console-separator)}.animation-workbench-log-message{margin:0;font-size:.72rem;line-height:1.25;word-break:break-word;white-space:pre-wrap}.animation-workbench-log-stack{margin:.12rem 0 0;padding:.16rem .2rem;border-left:.12rem solid color-mix(in srgb,var(--wb-log-error) 40%,transparent);background:color-mix(in srgb,var(--wb-console-bg) 70%,#000000 30%);font-size:.62rem;line-height:1.25;white-space:pre-wrap;word-break:break-word}.animation-workbench-log-meta{margin:.04rem 0 0;font-size:.62rem;line-height:1.2;letter-spacing:.01rem;white-space:pre-wrap;opacity:.95}.animation-workbench-log.error{color:var(--wb-log-error)}.animation-workbench-log.success{color:var(--wb-log-success)}.animation-workbench-log.info{color:var(--wb-log-info)}.animation-workbench-log.print{color:var(--wb-log-print)}.animation-workbench-log.warning{color:var(--wb-log-warning)}@media(max-width:70rem){.animation-workbench-header{align-items:stretch;flex-direction:column}.animation-workbench-header-fields{grid-template-columns:1fr}.animation-workbench-body{grid-template-columns:1fr;grid-template-rows:minmax(20rem,1fr) minmax(24rem,1fr)}.animation-workbench-left-side{grid-template-rows:minmax(15rem,1fr) 10rem}}.animation-workbench-suggestion-kind.kind-snippet{background:color-mix(in srgb,#a78bfa 20%,transparent);color:#a78bfa}.animation-workbench-presets-side{display:flex;flex-direction:column;width:14rem;flex-shrink:0;min-height:0;overflow:hidden}.presets-panel{background:var(--wb-panel-bg);border:.08rem solid var(--wb-panel-border);display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;padding:.34rem}.presets-tabs{display:flex;gap:0;margin-bottom:.3rem;border:.08rem solid var(--wb-btn-border);overflow:hidden}.presets-tab{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:.24rem;border:none;border-right:.08rem solid var(--wb-btn-border);background:var(--wb-btn-bg);color:var(--wb-muted);font-size:.7rem;padding:.28rem .2rem;cursor:pointer;white-space:nowrap}.presets-tab span{font-size:inherit;color:inherit}.presets-tab:last-child{border-right:none}.presets-tab:hover{background:color-mix(in srgb,var(--wb-btn-bg) 60%,var(--wb-panel-inner-border));color:var(--wb-text)}.presets-tab.active{background:var(--wb-btn-primary-bg);color:var(--wb-btn-primary-text);border-color:var(--wb-btn-primary-border)}.presets-tab-badge{font-size:.6rem;background:color-mix(in srgb,var(--wb-focus) 30%,transparent);color:var(--wb-focus);border-radius:.6rem;padding:0 .28rem;line-height:1.5;min-width:1rem;text-align:center}.presets-tab.active .presets-tab-badge{background:color-mix(in srgb,#fff 20%,transparent);color:var(--wb-btn-primary-text)}.presets-actions{display:flex;gap:.24rem;margin-bottom:.3rem}.presets-upload-btn,.presets-record-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:.28rem;font-size:.72rem;padding:.26rem .3rem;height:1.7rem}.presets-upload-btn span,.presets-record-btn span{font-size:inherit;color:inherit}.presets-record-btn.recording{border-color:#e05252;background:color-mix(in srgb,#e05252 18%,var(--wb-btn-bg));color:#ff7b7b;animation:preset-record-pulse 1.4s ease-in-out infinite}@keyframes preset-record-pulse{0%,to{opacity:1}50%{opacity:.7}}.presets-asset-list{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:.12rem;scrollbar-width:thin;scrollbar-color:var(--wb-scroll-thumb) var(--wb-scroll-track)}.presets-asset-list::-webkit-scrollbar{width:.35rem}.presets-asset-list::-webkit-scrollbar-track{background:var(--wb-scroll-track)}.presets-asset-list::-webkit-scrollbar-thumb{background:var(--wb-scroll-thumb);border-radius:.4rem}.presets-asset-list::-webkit-scrollbar-thumb:hover{background:var(--wb-scroll-thumb-hover)}.presets-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;color:var(--wb-muted);text-align:center;padding:1.2rem .6rem}.presets-empty p{margin:0;font-size:.76rem;color:var(--wb-text)}.presets-empty span{font-size:.66rem;color:var(--wb-muted);line-height:1.4}.preset-asset-row{display:flex;align-items:center;gap:.28rem;padding:.24rem .28rem;border:.08rem solid transparent;background:var(--wb-input-bg)}.preset-asset-row:hover{border-color:var(--wb-panel-inner-border);background:color-mix(in srgb,var(--wb-input-bg) 70%,var(--wb-panel-inner-border))}.preset-play-btn{width:1.4rem;height:1.4rem;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border:.08rem solid var(--wb-btn-border);background:var(--wb-btn-bg);color:var(--wb-muted);cursor:pointer;border-radius:0;padding:0}.preset-play-btn:hover{color:var(--wb-text);border-color:var(--wb-focus)}.preset-play-btn.playing{color:#52b6ff;border-color:#52b6ff;background:color-mix(in srgb,#52b6ff 12%,var(--wb-btn-bg))}.preset-img-thumb{width:1.8rem;height:1.4rem;flex-shrink:0;border:.08rem solid var(--wb-btn-border);overflow:hidden;background:var(--wb-script-bg)}.preset-img-thumb img{width:100%;height:100%;object-fit:cover}.preset-video-icon{width:1.4rem;height:1.4rem;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border:.08rem solid var(--wb-btn-border);background:var(--wb-btn-bg);color:var(--wb-muted)}.preset-asset-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.06rem}.preset-asset-name{font-size:.7rem;color:var(--wb-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.preset-asset-meta{font-size:.6rem;color:var(--wb-muted);line-height:1.2;white-space:nowrap}.preset-rename-input{width:100%;background:var(--wb-script-bg);border:.08rem solid var(--wb-focus);color:var(--wb-input-text);font-size:.7rem;padding:.1rem .26rem;outline:none;line-height:1.3}.preset-asset-btns{display:flex;gap:.1rem;flex-shrink:0;opacity:0;transition:opacity .1s}.preset-asset-row:hover .preset-asset-btns{opacity:1}.preset-icon-btn{width:1.3rem;height:1.3rem;display:inline-flex;align-items:center;justify-content:center;border:.08rem solid var(--wb-btn-border);background:var(--wb-btn-bg);color:var(--wb-muted);cursor:pointer;padding:0}.preset-icon-btn:hover{color:var(--wb-text);border-color:var(--wb-focus)}.preset-icon-btn.danger:hover{color:var(--wb-log-error);border-color:var(--wb-log-error);background:color-mix(in srgb,var(--wb-log-error) 10%,var(--wb-btn-bg))}.preset-audio-row{flex-direction:column;align-items:stretch;gap:.2rem;padding-bottom:.3rem}.preset-audio-top{display:flex;align-items:center;gap:.28rem}.preset-scrubber-row{display:flex;align-items:center;gap:.2rem;padding:0 .1rem}.preset-scrubber-time{font-size:.58rem;color:var(--wb-muted);white-space:nowrap;min-width:1.8rem;text-align:center;font-variant-numeric:tabular-nums}.preset-scrubber{flex:1;-webkit-appearance:none;appearance:none;height:.18rem;background:var(--wb-btn-border);border-radius:.1rem;outline:none;cursor:pointer}.preset-scrubber::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:.7rem;height:.7rem;border-radius:50%;background:var(--wb-focus);cursor:pointer;border:none}.preset-scrubber::-moz-range-thumb{width:.7rem;height:.7rem;border-radius:50%;background:var(--wb-focus);cursor:pointer;border:none}.presets-stop-btn{width:1.7rem;height:1.7rem;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:0;border-color:#45454d;background:#2b2b31;color:#ececf1}.presets-stop-btn:hover:not(:disabled){background:#36363d}.presets-record-btn.paused{border-color:#7b6f3a;background:color-mix(in srgb,#f59e0b 12%,var(--wb-btn-bg));color:#f59e0b}.preset-pending-input-row{display:flex;align-items:center;gap:.24rem}.preset-icon-btn.active-trim{color:#f59e0b;border-color:#f59e0b;background:color-mix(in srgb,#f59e0b 12%,var(--wb-btn-bg))}.preset-video-row{flex-direction:column;align-items:stretch;gap:0}.preset-video-row-top{display:flex;align-items:center;gap:.28rem}.preset-trim-panel{margin-top:.3rem;padding:.3rem;border:.08rem solid var(--wb-panel-inner-border);background:color-mix(in srgb,var(--wb-input-bg) 60%,var(--wb-script-bg));display:flex;flex-direction:column;gap:.22rem}.preset-trim-header{display:flex;align-items:center;gap:.22rem;font-size:.68rem;color:var(--wb-muted)}.preset-trim-header span{flex:1;font-size:inherit;color:inherit}.preset-trim-fields{display:flex;align-items:center;gap:.2rem}.preset-trim-field{flex:1;display:flex;flex-direction:column;gap:.1rem}.preset-trim-label{font-size:.6rem;color:var(--wb-muted);line-height:1}.preset-trim-input{width:100%;background:var(--wb-script-bg);border:.08rem solid var(--wb-input-border);color:var(--wb-input-text);font-size:.7rem;padding:.14rem .24rem;outline:none;line-height:1.3;-moz-appearance:textfield;appearance:textfield}.preset-trim-input::-webkit-outer-spin-button,.preset-trim-input::-webkit-inner-spin-button{-webkit-appearance:none}.preset-trim-input:focus{border-color:var(--wb-focus)}.preset-trim-input:disabled{opacity:.5}.preset-trim-preview{font-size:.62rem;color:#39d98a;white-space:nowrap;align-self:flex-end;padding-bottom:.14rem}.preset-trim-save-options{display:flex;gap:0;border:.08rem solid var(--wb-btn-border);overflow:hidden}.preset-trim-option{flex:1;font-size:.68rem;padding:.2rem .3rem;border:none;background:var(--wb-btn-bg);color:var(--wb-muted);cursor:pointer;line-height:1}.preset-trim-option:first-child{border-right:.08rem solid var(--wb-btn-border)}.preset-trim-option:hover{background:color-mix(in srgb,var(--wb-btn-bg) 60%,var(--wb-panel-inner-border));color:var(--wb-text)}.preset-trim-option.active{background:var(--wb-btn-primary-bg);color:var(--wb-btn-primary-text);border-color:var(--wb-btn-primary-border)}.preset-trim-option:disabled{opacity:.5;cursor:not-allowed}.preset-trim-error{font-size:.62rem;color:var(--wb-log-error);line-height:1.3}.preset-trim-submit{display:inline-flex;align-items:center;justify-content:center;gap:.24rem;border:.08rem solid #7b6f3a;background:color-mix(in srgb,#f59e0b 14%,var(--wb-btn-bg));color:#f59e0b;font-size:.7rem;padding:.22rem .3rem;cursor:pointer;line-height:1;width:100%}.preset-trim-submit:hover:not(:disabled){background:color-mix(in srgb,#f59e0b 22%,var(--wb-btn-bg))}.preset-trim-submit:disabled{opacity:.5;cursor:not-allowed}.preset-trim-submit span{font-size:inherit;color:inherit}.context-view{transform:translateY(2.8rem)!important;-webkit-transform:translateY(2.8rem)!important;-moz-transform:translateY(2.8rem)!important;-ms-transform:translateY(2.8rem)!important;-o-transform:translateY(2.8rem)!important}.workbench-hover-pointer.bottom:after{transform:rotate(225deg)!important;top:-1.2rem!important}.monaco-editor .find-widget[aria-hidden=true] .controls{display:none!important}.errors-page{display:flex;flex-direction:column;gap:1rem;width:100%}.errors-tabs{display:flex;gap:.75rem}.errors-tab{border:1px solid #d7dde4;background:#fff;color:var(--secondary-text-color);border-radius:.5rem;padding:.55rem 1rem;cursor:pointer;font-size:.95rem}.errors-tab.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.errors-controls{width:100%;display:flex;gap:1rem;flex-wrap:wrap;align-items:center;justify-content:space-between}.errors-search{width:min(34rem,100%);height:2.65rem;border:1px solid #d8dee6;border-radius:.45rem;padding:0 .9rem;font-size:.95rem}.errors-selects{display:flex;gap:.65rem}.errors-select{height:2.65rem;border:1px solid #d8dee6;border-radius:.45rem;background:#fff;color:var(--secondary-text-color);padding:0 .7rem}.errors-overview{display:flex;width:100%;justify-content:space-between;color:var(--third-text-color);font-size:.85rem}.errors-grid{width:100%;display:grid;grid-template-columns:1fr;gap:1rem}.errors-list-card,.errors-detail-card{border:1px solid #e4e7eb;border-radius:.65rem;background:#fff}.errors-list-card{min-height:26rem;padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.errors-detail-card{min-height:26rem;padding:1rem;overflow:hidden}.errors-list{list-style:none;display:flex;flex-direction:column;gap:.6rem;overflow:auto;max-height:33rem}.errors-item{border:1px solid #e7ebf0;border-radius:.55rem;padding:.75rem;cursor:pointer;display:flex;flex-direction:column;gap:.45rem}.errors-item.selected{border-color:var(--primary-color);box-shadow:0 0 0 1px #1b3c5326}.errors-item-head{display:flex;gap:.4rem;flex-wrap:wrap}.pill{display:inline-flex;align-items:center;border-radius:999px;border:1px solid #d9dee5;padding:.15rem .55rem;text-transform:capitalize;font-size:.75rem;color:var(--secondary-text-color)}.pill.open{color:#92400e;border-color:#f5d08a;background:#fff7e4}.pill.ignored{color:#334155;border-color:#cbd5e1;background:#f8fafc}.pill.resolved{color:#166534;border-color:#97d4ab;background:#ecfdf3}.pill.source{text-transform:lowercase}.errors-item h3{font-size:.95rem;color:var(--primary-text-color)}.errors-item p{font-size:.83rem;color:var(--secondary-text-color);line-height:1.35}.errors-item-foot{display:flex;justify-content:space-between;gap:.6rem;color:var(--fourth-text-color);font-size:.75rem}.errors-pagination{display:flex;justify-content:flex-end;gap:.5rem;margin-top:auto}.errors-pagination button{border:1px solid #d0d7de;background:#fff;border-radius:.4rem;padding:.45rem .75rem;font-size:.82rem;cursor:pointer}.errors-pagination button:disabled{opacity:.45}.errors-state{color:var(--third-text-color);font-size:.95rem;padding:.6rem}.errors-detail-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;flex-wrap:wrap;margin-bottom:1rem}.errors-detail-head h2{font-size:1.05rem;color:var(--primary-text-color)}.errors-detail-actions{display:flex;gap:.45rem}.status-btn{border:1px solid #d0d7de;background:#fff;border-radius:.42rem;padding:.45rem .7rem;cursor:pointer;font-size:.78rem;text-transform:capitalize}.status-btn.resolved{color:#166534;border-color:#97d4ab}.status-btn.ignored{color:#475569;border-color:#cbd5e1}.status-btn.open{color:#a16207;border-color:#f5d08a}.kv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.kv-grid label{color:var(--third-text-color);font-size:.75rem}.kv-grid p{color:var(--primary-text-color);font-size:.86rem;margin-top:.1rem;word-break:break-word}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.errors-block{margin-top:1rem}.errors-block h3{font-size:.9rem;margin-bottom:.45rem;color:var(--primary-text-color)}.errors-block pre{font-size:.78rem;color:#1e293b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:.45rem;padding:.7rem;overflow:auto;max-height:14rem;white-space:pre-wrap;word-break:break-word}@media screen and (min-width:1000px){.errors-grid{grid-template-columns:.95fr 1.4fr}}:root{--primary-color: #1b3c53;--secondary-color: #234c6a;--third-color: #456882;--fourth-color: #a9a9a9;--primary-text-color: #1f2933;--secondary-text-color: #4b5563;--third-text-color: #6b7280;--fourth-text-color: #9ca3af}*{box-sizing:border-box;margin:0;padding:0;font-size:12px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;-ms-overflow-style:none;scrollbar-width:none}*::-webkit-scrollbar{width:0;height:0}.required{padding-left:.3rem;color:red}button:disabled{cursor:not-allowed}input:disabled{cursor:not-allowed}select:disabled{cursor:not-allowed}textarea:disabled{cursor:not-allowed}.loader{width:4rem;height:4rem;border:.3rem solid var(--fourth-color);border-radius:50%;display:inline-block;position:relative;box-sizing:border-box;animation:rotation 1s linear infinite}.loader:after{content:"";box-sizing:border-box;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:3rem;height:3rem;border-radius:50%;border:.3rem solid;border-color:var(--primary-color) transparent}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.page-layout{height:fit-content;width:100%;min-height:100vh;display:flex;flex-direction:column;align-items:center;background-color:#f9fafb}.page{width:80%;margin:0 auto;padding-top:3rem;padding-bottom:2rem;transition:width .3s ease;overflow:hidden;min-height:calc(100vh - 11rem)}@media screen and (min-width:1800px){.page{max-width:1800px}}.viz-container{width:100%;padding:1rem 0}@media screen and (min-width:768px){*{font-size:18px}}@media screen and (min-width:1440px){*{font-size:20px}}
