html:has(.site-surface){color-scheme:dark;background:#0d0d0d;scrollbar-width:thin;scrollbar-color:#505050 #171717}.site-surface{--site-bg:#0d0d0d;--site-panel:#171717;--site-border:#323232;--site-text:#ededed;--site-muted:#a1a1a1;--site-accent:#ace5cf;color-scheme:dark;min-height:100svh;color:var(--site-text);background:var(--site-bg);letter-spacing:0;scrollbar-color:#505050 #171717;scrollbar-width:thin}.site-surface :where(button,a,input,select):focus-visible{outline:2px solid var(--site-accent);outline-offset:4px}.site-surface button:disabled{cursor:not-allowed;opacity:.45}.site-surface :where(button,a){-webkit-tap-highlight-color:transparent}.site-surface :where(button,a,input,select){transition:color .16s,background .16s,border-color .16s}.site-surface :where(input,select){color:var(--site-text);background:var(--site-panel);border:1px solid var(--site-border);border-radius:5px}.site-surface input::placeholder{color:#8c8c8c}.site-eyebrow{margin:0 0 18px;color:var(--site-muted);font-size:12px;font-weight:500}.site-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:0 18px;border:1px solid transparent;border-radius:5px;cursor:pointer;font-size:14px;font-weight:600;line-height:1.4;text-decoration:none}.site-button-primary{color:#101713;background:var(--site-accent);border-color:var(--site-accent)}.site-button-primary:hover:not(:disabled){color:#101713;background:#c5efdf;border-color:#c5efdf}.site-button-quiet{color:#d7d7d7;background:transparent;border-color:var(--site-border)}.site-button-quiet:hover:not(:disabled){color:#fff;background:#242424;border-color:#555}.site-button-danger{color:#ffd7d7;background:#522424;border-color:#904747}.site-button-danger:hover:not(:disabled){background:#6b2929}.site-icon-button{display:inline-flex;flex:0 0 40px;width:40px;height:40px;align-items:center;justify-content:center;padding:0;color:var(--site-muted);background:transparent;border:1px solid transparent;border-radius:5px;cursor:pointer}.site-icon-button:hover:not(:disabled){color:#eee;background:#282828}.site-brand{display:inline-flex;align-items:center;gap:9px;font-size:19px;font-weight:650}.site-brand svg{color:var(--site-accent)}.landing-page{overflow:clip}.landing-hero{position:relative;display:grid;grid-gap:38px;gap:38px;padding:48px 0 30px;isolation:isolate}.landing-copy{position:relative;z-index:2;width:min(100% - 80px,1160px);margin:0 auto;pointer-events:none;animation:site-enter .65s ease-out both}.landing-copy h1{margin:0;font-size:88px;line-height:1;font-weight:650}.landing-copy h1 span{color:var(--site-accent)}.landing-copy h2{margin:22px 0 0;font-size:28px;line-height:1.5;font-weight:500}.landing-description{margin:10px 0 0;font-size:15px;color:var(--site-muted);line-height:1.8}.landing-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px;pointer-events:auto}.landing-scene{width:min(100% - 80px,1160px);margin:0 auto}.scene-flow{display:grid;grid-template-columns:minmax(0,1fr) 48px minmax(0,1fr) 48px minmax(0,1.65fr);align-items:center}.scene-node{position:relative;min-width:0;background:#191919;border:1px solid #404040;border-radius:7px;box-shadow:0 8px 24px #0003;animation:site-enter .7s ease-out .12s both;transition:border-color .2s,box-shadow .2s}.scene-node:hover{border-color:#858585;box-shadow:0 8px 24px #0006}.scene-node-heading{display:flex;align-items:center;gap:9px;padding:15px 17px;color:#d4d4d4;font-size:12px}.scene-node-heading small{margin-left:auto;color:#979797;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.scene-node p{margin:0;padding:5px 17px 22px;color:#c6c6c6;font-size:13px;line-height:1.9}.scene-generation,.scene-prompt{min-height:174px}.scene-prompt svg{color:#ace5cf}.scene-generation svg{color:#e4c68c}.scene-generation dl{display:grid;grid-gap:10px;gap:10px;margin:5px 17px 20px;font-size:12px}.scene-generation dl div{display:flex;justify-content:space-between;gap:10px}.scene-generation dt{color:#9b9b9b}.scene-generation dd{margin:0;color:#ddd}.scene-preview svg{color:#e3bda8}.scene-image{position:relative;aspect-ratio:1.5;margin:0 7px 7px;overflow:hidden;border-radius:3px}.scene-image img{object-fit:contain}.scene-port{position:absolute;right:-5px;top:50%;width:8px;height:8px;background:#ace5cf;border:2px solid #171717;border-radius:50%}.scene-port-image{background:#e3bda8}.scene-port-input{left:-5px;right:auto}.scene-connector{position:relative;display:grid;place-items:center;color:#ace5cf}.scene-connector:before{content:"";position:absolute;width:100%;height:1px;background:currentColor;opacity:.4}.scene-connector svg{position:relative;background:#0d0d0d;animation:scene-direction 2.8s ease-in-out infinite}.scene-connector-image{color:#e3bda8}.landing-scene figcaption{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:20px;color:#b4b4b4;font-size:12px}.landing-scene figcaption small{color:#858585;font-size:10px}.landing-workflow{padding:64px max(40px,calc((100% - 1160px) / 2));background:#111;border-top:1px solid #2b2b2b;scroll-margin-top:24px}.landing-section-title h2{margin:0;font-size:28px;font-weight:500}.landing-workflow ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:32px;gap:32px;margin:44px 0 0;padding:0;list-style:none}.landing-workflow li{padding-top:20px;border-top:1px solid #363636}.landing-workflow li>span{color:#a4cbb8;font-size:12px}.landing-workflow h3{margin:20px 0 10px;font-size:18px;font-weight:500}.landing-workflow li p{margin:0;color:#a1a1a1;font-size:14px;line-height:1.8}.site-footer{display:flex;align-items:center;gap:28px;flex-wrap:wrap;padding:34px max(40px,calc((100% - 1160px) / 2));border-top:1px solid #282828;color:#999;font-size:12px}.site-footer>a{display:inline-flex;align-items:center;gap:8px}.site-footer>a:hover{color:#ededed}.site-footer>a:nth-child(2){margin-left:auto;color:#ace5cf}.site-surface.auth-page{position:relative;display:grid;grid-template-columns:1fr;place-items:center;padding:110px 24px 85px;overflow:visible;background:#101010}.site-surface .auth-back-link{position:absolute;top:24px;left:28px;display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 8px;color:#aaa;font-size:13px;border:0;background:none;box-shadow:none}.site-surface .auth-back-link:hover{color:#fff}.site-surface .auth-panel{width:min(100%,390px);padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;animation:site-enter .5s ease-out both}.auth-brand{display:inline-flex;align-items:center;gap:10px;margin-bottom:52px;font-size:26px}.auth-brand svg{color:#ace5cf}.site-surface .auth-header{margin:0 0 32px}.site-surface .auth-header h1{font-size:28px;line-height:1.4;font-weight:550}.site-surface .auth-header p{margin-top:14px;color:#a1a1a1;font-size:14px;line-height:1.9;text-wrap:pretty}.site-surface .auth-otoken-actions{gap:0}.site-surface .auth-otoken-action{width:100%;min-height:50px;gap:12px}.auth-divider{position:relative;display:flex;align-items:center;gap:16px;margin:28px 0 14px;color:#8f8f8f;font-size:11px}.auth-divider:after,.auth-divider:before{content:"";flex:1 1;height:1px;background:#333}.site-surface .auth-mode-button{margin:12px 0 0;color:#cecece;font-size:13px;font-weight:400;background:none}.site-surface .auth-mode-button:hover:not(:disabled){color:#fff;background:#222}.site-surface .auth-otoken-register{margin:0;border-color:#383838;gap:8px}.site-surface .auth-form{gap:20px}.site-surface .auth-field{gap:9px;color:#ccc;font-size:13px;font-weight:400}.site-surface .auth-field input{min-height:46px;background:#191919;color:#eee;border-color:#414141}.site-surface .auth-field input:focus{box-shadow:none}.auth-password{position:relative;display:block}.auth-password input{padding-right:46px}.auth-password button{position:absolute;right:3px;top:3px}.site-surface .auth-submit{width:100%;min-height:46px;background:#ace5cf}.site-surface .auth-submit:hover:not(:disabled){background:#c5efdf}.site-surface .auth-error{font-size:13px;color:#ffc0c0;background:#301c1c;border-color:#633636}.auth-footnote{display:flex;justify-content:center;align-items:center;gap:7px;margin:30px 0 0;padding-top:24px;border-top:1px solid #2c2c2c;color:#959595;font-size:12px}.auth-footer{position:absolute;bottom:26px;color:#888;font-size:11px}.library-page{padding:0 40px 36px}.library-nav{display:flex;align-items:center;gap:36px;width:min(100%,1160px);height:76px;margin:0 auto;border-bottom:1px solid #2d2d2d}.library-nav nav{display:flex;gap:28px;align-self:stretch;align-items:stretch;margin-left:auto;font-size:13px;color:#a1a1a1}.library-nav nav a{display:inline-flex;align-items:center;border-bottom:2px solid transparent}.library-nav nav a[aria-current]{color:#eee;border-bottom-color:#ace5cf}.library-nav nav a:hover{color:#fff}.library-shell{width:min(100%,1160px);margin:0 auto}.library-intro{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:54px 0 34px}.library-intro .site-eyebrow{margin-bottom:12px}.library-intro h1{display:flex;align-items:center;gap:16px;margin:0;font-size:34px;font-weight:550}.library-intro h1 span{color:#888;font-size:18px;font-weight:400}.library-create{display:flex;gap:12px;align-items:center;padding:12px 12px 12px 20px;border:1px solid #424242;border-radius:6px;background:#181818;color:#b2c9bc}.library-create>input{flex:1 1;min-width:0;width:100%;min-height:44px;padding:0 8px;border:0;background:transparent;font-size:14px}.library-create>button{flex-shrink:0}.library-controls{display:flex;align-items:center;gap:16px;margin:36px 0 0}.library-search{display:flex;align-items:center;gap:10px;width:min(100%,360px);color:#999;border:1px solid #383838;border-radius:5px;padding-left:12px}.library-search input{width:100%;min-width:0;height:40px;font-size:13px;border:0;background:transparent}.library-sort{display:flex;align-items:center;gap:10px;margin-left:auto;font-size:12px;color:#999;white-space:nowrap}.library-sort select{height:40px;padding:0 28px 0 12px;cursor:pointer;font-size:12px}.library-notice{height:24px;margin:8px 0;color:#ace5cf;font-size:12px;line-height:24px}.library-list{list-style:none;padding:0;margin:0;border-top:1px solid #363636}.library-item{border-bottom:1px solid #2d2d2d}.library-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;grid-gap:18px;gap:18px;min-height:96px;padding:16px 12px;transition:background .14s}.library-item.is-editing,.library-row:hover{background:#171717}.library-index{color:#929292;font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.library-project-name{display:grid;grid-gap:7px;gap:7px;min-width:0}.library-project-name>:first-child{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:15px;font-weight:550;overflow-wrap:anywhere;line-height:1.6}.library-project-name a:hover{color:#ace5cf}.library-project-name>span{color:#999;font-size:11px}.library-row-actions{display:flex;gap:4px;align-items:center}.library-delete:hover:not(:disabled){color:#ffabab;background:#382222}.library-editor{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:16px 24px 24px 66px;border-top:1px solid #333}.library-rename{display:flex;flex:1 1;align-items:center;gap:14px;min-width:0;font-size:12px;color:#aaa}.library-rename>span{flex-shrink:0}.library-rename input{width:100%;min-width:0;min-height:42px;padding:8px 12px;font-size:14px}.library-editor-actions{display:flex;gap:10px;margin-left:auto}.library-delete-warning{flex:1 1;min-width:0}.library-delete-warning strong{display:block;font-size:14px;font-weight:500;overflow-wrap:anywhere}.library-delete-warning p{margin:8px 0 0;font-size:12px;color:#b8b8b8;line-height:1.8}.library-action-error{width:100%;margin:0}.library-action-error,.library-error{color:#ffc0c0;font-size:13px;overflow-wrap:anywhere}.library-error{display:flex;align-items:center;gap:12px;justify-content:space-between;padding:12px 16px;margin-top:24px;border:1px solid #6d3939;border-radius:5px}.library-error button{flex-shrink:0}.library-empty{display:flex;min-height:245px;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#a1a1a1;border-top:1px solid #333}.library-empty h2,.library-empty p{margin:0;font-size:14px;font-weight:400}.library-empty svg{color:#b6c6bf}.library-footer{display:flex;justify-content:space-between;gap:16px;margin-top:24px;color:#929292;font-size:11px}@media (max-width:1000px) and (min-width:761px){.scene-flow{grid-template-columns:minmax(0,1fr) 30px minmax(0,.9fr) 30px minmax(0,1.5fr)}}@media (max-width:760px){.landing-hero{padding:30px 0 24px;gap:30px}.landing-copy,.landing-scene{width:calc(100% - 40px)}.scene-flow{grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr);grid-template-rows:auto 30px auto;max-width:540px;margin:0 auto}.scene-prompt{grid-column:1;grid-row:1}.scene-generation{grid-column:3;grid-row:1}.scene-connector-text{grid-column:2;grid-row:1}.scene-connector-image{grid-column:1/-1;grid-row:2;width:100%;height:30px}.scene-connector-image:before{top:0;left:50%;width:calc(25% + 8px);height:15px;background:none;border-right:1px solid;border-bottom:1px solid}.scene-connector-image:after{content:"";position:absolute;left:50%;top:15px;height:15px;width:1px;background:currentColor;opacity:.4}.scene-connector-image svg{position:absolute;left:calc(50% - 8px);bottom:0;z-index:1;animation:scene-direction-down 2.8s ease-in-out infinite}.scene-preview{grid-column:1/-1;grid-row:3;width:min(100%,360px);justify-self:center}.scene-generation .scene-port-image{right:auto;left:50%;top:auto;bottom:-5px}.scene-preview .scene-port-input{top:-5px;left:50%}.landing-scene figcaption{max-width:540px;margin:15px auto 0}}@media (max-width:700px){.landing-copy h1{font-size:64px}.landing-copy h2{font-size:24px;margin-top:16px}.landing-copy .site-eyebrow{font-size:11px;margin-bottom:14px}.landing-description{font-size:14px}.landing-actions{margin-top:20px}.scene-node-heading{padding:12px;font-size:11px;gap:7px}.scene-node p{padding:2px 12px 15px;font-size:12px}.scene-generation dl{margin:2px 12px 15px;font-size:11px;gap:8px}.scene-generation,.scene-prompt{min-height:147px}.scene-preview{width:min(100%,320px)}.landing-workflow{padding:32px 24px 42px}.landing-section-title h2{font-size:24px}.landing-workflow ol{grid-template-columns:1fr;gap:28px;margin-top:28px}.landing-workflow h3{margin-top:14px}.site-footer{padding:26px 24px;gap:20px}.site-surface.auth-page{padding:100px 24px 80px}.site-surface .auth-back-link{top:18px;left:18px}.auth-brand{margin-bottom:36px}.library-page{padding:0 20px 28px}.library-nav{gap:18px;height:68px}.library-nav nav{gap:18px}.site-brand{font-size:17px}.library-intro{padding:32px 0 28px;gap:16px}.library-intro h1{font-size:28px;gap:10px}.library-create{flex-wrap:wrap;gap:6px;padding:10px}.library-create>svg{display:none}.library-create>input{flex-basis:100%}.library-create>button{width:100%}.library-controls{flex-wrap:wrap;gap:12px;margin-top:24px}.library-search{width:100%}.library-sort{margin-left:0}.library-controls>button{margin-left:auto}.library-row{gap:8px;grid-template-columns:minmax(0,1fr) auto;padding:14px 0}.library-index{display:none}.library-row-actions{gap:0}.library-project-name>:first-child{font-size:14px}.library-editor{padding:18px 12px}.library-rename{flex-basis:100%;flex-direction:column;align-items:stretch;gap:8px}.library-delete-warning{flex-basis:100%}.library-error{align-items:stretch;flex-direction:column}}@media (max-width:360px){.landing-copy h1{font-size:56px}.landing-hero{padding:18px 0;gap:20px}.landing-copy h2{margin-top:12px}.landing-actions{margin-top:16px}.scene-node-heading{padding:10px;gap:5px}.scene-node-heading small{font-size:9px}.scene-preview{width:250px}.library-page{padding-right:14px;padding-left:14px}.library-row .site-icon-button{width:34px;flex-basis:34px}}@keyframes site-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes scene-direction{0%,to{opacity:.55;transform:translateX(-2px)}50%{opacity:1;transform:translateX(2px)}}@keyframes scene-direction-down{0%,to{opacity:.55;transform:rotate(90deg) translateX(-2px)}50%{opacity:1;transform:rotate(90deg) translateX(2px)}}@media (prefers-reduced-motion:reduce) and (max-width:760px){.scene-connector-image svg{transform:rotate(90deg)}}@media (prefers-reduced-motion:reduce){.site-surface *,.site-surface :after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.scene-node:hover{transform:none}}