body{margin:0;font-family:Plus Jakarta Sans,Sora,Segoe UI,sans-serif;background:#1c1c1e;color:#e2e2e2;font-size:13px}*,*:before,*:after{box-sizing:border-box}.studio-shell{height:100vh;display:grid;grid-template-rows:48px minmax(0,1fr);background:#1c1c1e;overflow:hidden}.topbar{position:relative;z-index:20;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;padding:0 .9rem;background:#141416;border-bottom:1px solid #2a2a2e}.topbar-brand{display:flex;align-items:center;gap:.45rem;flex-shrink:0}.brand-icon{display:flex;align-items:center}.brand-name{font-size:.82rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#f0f0f0}.topbar-center{display:flex;align-items:center;gap:.6rem;min-width:0}.editor-tabs{display:inline-flex;align-items:center;gap:.22rem;padding:.2rem;border-radius:8px;background:#202024;border:1px solid #2f2f34;flex-shrink:0}.editor-tab-btn{height:28px;min-width:74px;border:1px solid transparent;border-radius:6px;background:transparent;color:#9a9aa1;font:inherit;font-size:.72rem;font-weight:600;cursor:pointer;transition:background .13s,border-color .13s,color .13s}.editor-tab-btn:hover{background:#2b2b30;color:#dadade}.editor-tab-btn-active{background:#31a8ff24!important;border-color:#31a8ff59!important;color:#8ad1ff!important}.project-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.22rem .55rem;background:#252528;border:1px solid #333336;border-radius:6px;font-size:.78rem;font-weight:600;color:#d8d8d8;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scene-node-count{font-size:.73rem;color:#666}.support-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.22rem .55rem;background:#fbbf2414;border:1px solid rgba(251,191,36,.22);border-radius:6px;font-size:.76rem;font-weight:700;color:#fcd34d;max-width:240px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-actions{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.api-badge{display:inline-flex;align-items:center;gap:.3rem;font-size:.7rem;font-weight:600;padding:.2rem .5rem;border-radius:20px;background:#ef44441a;border:1px solid rgba(239,68,68,.25);color:#fca5a5}.api-badge.api-online{background:#22c55e1a;border-color:#22c55e40;color:#86efac}.api-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.tb-btn{display:inline-flex;align-items:center;gap:.35rem;height:30px;padding:0 .65rem;font:inherit;font-size:.78rem;font-weight:600;border-radius:6px;cursor:pointer;border:1px solid transparent;transition:background .14s,border-color .14s}.tb-btn-ghost{background:#252528;border-color:#333336;color:#c8c8c8}.tb-btn-ghost:hover{background:#2e2e32;color:#efefef}.tb-btn:disabled{opacity:.45;cursor:not-allowed}.tb-btn:disabled:hover{background:inherit;color:inherit}.tb-btn-primary{background:linear-gradient(180deg,#31a8ff,#1a88e0);border-color:#31a8ff80;color:#fff}.tb-btn-primary:hover{background:linear-gradient(180deg,#45b4ff,#2594ea)}.studio-main{position:relative;height:100%;min-height:0;overflow:hidden}.side-panel{position:absolute;top:.5rem;bottom:.5rem;z-index:10;background:#18181af0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden}.left-panel{left:.5rem;width:220px;display:grid;grid-template-rows:auto auto 1fr;gap:.4rem;padding:.4rem}.right-panel{right:.5rem;width:260px;display:flex;flex-direction:column;gap:.4rem;overflow-y:auto;overflow-x:hidden;padding:.4rem}.panel-block{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:.65rem;display:flex;flex-direction:column;gap:.5rem;flex-shrink:0}.outliner-block{min-height:0;overflow:hidden;display:grid;grid-template-rows:auto 1fr;gap:.4rem;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:.65rem}.layers-block{max-height:190px;min-height:150px;overflow:hidden}.layers-list{display:flex;flex-direction:column;gap:.24rem;overflow-y:auto;min-height:0}.layer-row{display:flex;align-items:center;gap:.24rem}.layer-main-btn{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:.35rem;padding:.32rem .4rem;border-radius:6px;border:1px solid transparent;background:transparent;color:#b0b0b0;cursor:pointer;font:inherit;text-align:left;transition:background .12s,border-color .12s,color .12s}.layer-main-btn:hover{background:#2a2a2e;color:#e0e0e0}.layer-row-active .layer-main-btn{background:#31a8ff1a;border-color:#31a8ff4d;color:#7ec8ff}.layer-name{font-size:.74rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.layer-count{font-size:.62rem;color:#777;background:#1a1a1c;border:1px solid #2a2a2e;border-radius:999px;padding:.06rem .35rem;flex-shrink:0}.layer-create-row{display:flex;align-items:center;gap:.3rem}.layer-create-row .field-input{min-width:0;flex:1}.layer-create-row .panel-btn{width:30px;min-width:30px;padding:0}.panel-block-header{display:flex;align-items:center;justify-content:space-between;gap:.4rem;padding-bottom:.4rem;border-bottom:1px solid #2a2a2e;margin-bottom:.1rem}.panel-block-title{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#888}.panel-block-count{font-size:.68rem;font-weight:600;color:#555;background:#1a1a1c;border:1px solid #2a2a2e;border-radius:10px;padding:.1rem .4rem}.project-info{display:flex;flex-direction:column;gap:.25rem}.project-name{margin:0;font-size:.88rem;font-weight:700;color:#efefef;line-height:1.3}.project-desc{margin:0;font-size:.74rem;color:#666;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project-meta{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.meta-badge{display:inline-flex;align-items:center;gap:.25rem;font-size:.68rem;color:#777;background:#1a1a1c;border:1px solid #2a2a2e;border-radius:10px;padding:.12rem .4rem}.meta-badge-green{color:#4ade80;background:#4ade8014;border-color:#4ade8033}.panel-empty{margin:0;font-size:.76rem;color:#555}.outliner-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.45rem;padding:1.5rem .5rem;color:#444;font-size:.74rem;text-align:center}.outliner-list{display:flex;flex-direction:column;gap:.25rem;overflow-y:auto;min-height:0}.outliner-item-row{display:flex;align-items:stretch;gap:.28rem;padding-left:calc(var(--depth, 0) * 1.35rem);flex-shrink:0;min-height:0}.outliner-item-row-hidden{opacity:.62}.outliner-item{display:flex;align-items:center;gap:.45rem;padding:.4rem .5rem;border-radius:6px;background:transparent;border:1px solid transparent;cursor:pointer;font:inherit;text-align:left;color:#b0b0b0;transition:background .12s,border-color .12s,color .12s;flex:1;min-width:0}.outliner-item:hover{background:#2a2a2e;color:#d8d8d8}.outliner-item-active{background:#31a8ff1a!important;border-color:#31a8ff4d!important;color:#7ec8ff!important}.outliner-depth-marker{font-size:.66rem;color:#4a4a50;line-height:1;flex-shrink:0}.outliner-tree-dot{width:6px;height:6px;border-radius:50%;background:#3a3a3f;flex-shrink:0}.outliner-tree-parent{background:#31a8ffbf;box-shadow:0 0 0 2px #31a8ff26}.outliner-item-icon{display:flex;align-items:center;flex-shrink:0;color:currentColor}.outliner-item-body{display:flex;flex-direction:column;gap:.1rem;min-width:0;flex:1}.outliner-item-name{font-size:.8rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.outliner-item-type{font-size:.66rem;color:#555;display:flex;align-items:center;gap:.3rem}.outliner-item-actions{display:inline-flex;align-items:center;gap:.2rem;padding:.12rem 0}.outliner-layer-chip{display:inline-flex;align-items:center;padding:.04rem .28rem;border-radius:999px;border:1px solid rgba(148,163,184,.3);background:#94a3b81f;color:#94a3b8;font-size:.58rem;line-height:1.3;max-width:62px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.outliner-mini-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:5px;border:1px solid #333336;background:#1d1d20;color:#666;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.outliner-mini-btn:hover{background:#2a2a2e;color:#d0d0d0}.outliner-mini-btn-active{color:#60b8ff;border-color:#31a8ff59;background:#31a8ff1f}.outliner-item-row-hidden .outliner-mini-btn-active{color:#9ca3af;border-color:#9ca3af66;background:#9ca3af1f}.status-dot{width:5px;height:5px;border-radius:50%;background:#555;flex-shrink:0}.status-loading{background:#f59e0b}.status-ok{background:#22c55e}.status-error{background:#ef4444}.status-warn{background:#f97316}.panel-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.45rem .75rem;font:inherit;font-size:.76rem;font-weight:600;border-radius:6px;border:1px solid #333336;background:#252528;color:#c8c8c8;cursor:pointer;transition:background .13s,border-color .13s;width:100%}.panel-btn:hover:not(:disabled){background:#2e2e32;color:#efefef}.panel-btn:disabled{opacity:.4;cursor:not-allowed}.panel-btn-primary{background:linear-gradient(180deg,#31a8ff,#1a88e0);border-color:#31a8ff80;color:#fff}.panel-btn-primary:hover:not(:disabled){background:linear-gradient(180deg,#45b4ff,#2594ea)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:5px;border:1px solid #333336;background:transparent;cursor:pointer;padding:0;font:inherit;color:#888;transition:background .12s,color .12s;flex-shrink:0}.icon-btn:hover{background:#2a2a2e;color:#ccc}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.icon-btn:disabled:hover{background:transparent;color:#888}.icon-btn-danger:hover{background:#ef444426;border-color:#ef44444d;color:#fca5a5}.viewport-column{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-rows:auto minmax(0,1fr) 32px;gap:.4rem;padding:.5rem;min-height:0}.viewport-toolbar{display:flex;align-items:center;gap:.3rem;padding:.4rem .55rem;background:#212124;border:1px solid #2e2e32;border-radius:8px;flex-wrap:wrap}.toolbar-group{display:flex;align-items:center;gap:.25rem}.toolbar-sep{width:1px;height:18px;background:#2e2e32;margin:0 .2rem;flex-shrink:0}.tool-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .55rem;font:inherit;font-size:.76rem;font-weight:600;color:#999;background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.tool-btn:hover{background:#2a2a2e;color:#d0d0d0}.tool-btn-active{background:#31a8ff1f!important;border-color:#31a8ff4d!important;color:#60b8ff!important}.tool-btn kbd{font-size:.64rem;font-family:inherit;background:#1a1a1c;border:1px solid #333336;border-radius:3px;padding:.05rem .25rem;color:#555;line-height:1.4}.tool-btn-active kbd{background:#31a8ff26;border-color:#31a8ff40;color:#31a8ff}.toggle-label{display:inline-flex;align-items:center;gap:.35rem;font-size:.74rem;color:#888;cursor:pointer;-webkit-user-select:none;user-select:none;padding:.2rem .4rem}.toggle-check{display:none}.toggle-track{width:24px;height:13px;border-radius:7px;background:#333336;border:1px solid #3a3a3e;position:relative;transition:background .15s,border-color .15s;flex-shrink:0}.toggle-track:after{content:"";position:absolute;left:2px;top:1px;width:9px;height:9px;border-radius:50%;background:#666;transition:transform .15s,background .15s}.toggle-on{background:#31a8ff4d;border-color:#31a8ff80}.toggle-on:after{transform:translate(11px);background:#31a8ff}.viewport-frame{border-radius:8px;overflow:hidden;border:1px solid #2e2e32;min-height:0}.status-bar{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:0 .65rem;background:#1a1a1c;border:1px solid #2a2a2e;border-radius:6px;min-height:32px}.status-left{display:flex;align-items:center;gap:.45rem;min-width:0}.status-dot-indicator{width:6px;height:6px;border-radius:50%;background:#555;flex-shrink:0}.status-dot-blue{background:#31a8ff}.status-dot-red{background:#ef4444}.status-text{font-size:.74rem;color:#999;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-shortcuts{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.shortcut{display:inline-flex;align-items:center;gap:.2rem;font-size:.66rem;color:#555}.shortcut kbd{font-family:inherit;background:#252528;border:1px solid #333336;border-radius:3px;padding:.05rem .28rem;color:#666;font-size:.63rem}.shortcut-sep{width:1px;height:10px;background:#2e2e32}.add-toolbar{position:absolute;bottom:.9rem;left:50%;transform:translate(-50%);z-index:30;display:flex;align-items:center;gap:.2rem;padding:.35rem;background:#161618f2;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.1);border-radius:14px;white-space:nowrap}.add-tool-btn{display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:.5rem .9rem;border-radius:10px;border:1px solid transparent;background:transparent;color:#777;cursor:pointer;font:inherit;font-size:.64rem;font-weight:600;letter-spacing:.02em;transition:background .14s,color .14s,border-color .14s}.add-tool-btn:hover{background:#ffffff12;color:#ccc}.add-tool-active{background:#31a8ff1f!important;border-color:#31a8ff4d!important;color:#60b8ff!important}.add-toolbar-sep{width:1px;height:32px;background:#ffffff1a;margin:0 .15rem;flex-shrink:0}.add-form-popup{position:absolute;bottom:calc(.9rem + 72px);left:50%;transform:translate(-50%);width:300px;max-width:calc(100vw - 2rem);z-index:31;background:#161618f7;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1);border-radius:10px;overflow:hidden}.add-form-header{display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;border-bottom:1px solid rgba(255,255,255,.07)}.add-form-title{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#888}.add-form-body{padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.add-form-body .asset-form{gap:.5rem}.asset-form{display:flex;flex-direction:column;gap:.5rem}.asset-models{display:flex;flex-direction:column;gap:.35rem;border-top:1px solid #2a2a2e;padding-top:.45rem}.asset-models-head{display:flex;align-items:center;justify-content:space-between;gap:.4rem}.asset-models-empty{margin:0;font-size:.72rem;color:#666;background:#0003;border:1px solid rgba(255,255,255,.05);border-radius:6px;padding:.4rem .5rem}.asset-models-list{display:flex;flex-direction:column;gap:.25rem;max-height:150px;overflow-y:auto;padding-right:.1rem}.asset-model-item{display:flex;align-items:center;gap:.35rem;background:#1c1c1f;border:1px solid #2e2e32;border-radius:6px;padding:.2rem}.asset-model-item-active{border-color:#31a8ff73;background:#31a8ff14}.asset-model-select{flex:1;min-width:0;font:inherit;font-size:.74rem;color:#d0d0d0;background:transparent;border:none;text-align:left;padding:.22rem .35rem;border-radius:4px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.asset-model-select:hover{background:#26262a}.asset-model-actions{display:flex;align-items:center;gap:.18rem}.asset-model-actions .icon-btn{min-width:1.55rem;height:1.55rem;padding:0;font-size:.78rem}.file-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;padding:1rem .5rem;border:1.5px dashed #333336;border-radius:7px;color:#666;font-size:.75rem;cursor:pointer;text-align:center;transition:border-color .15s,color .15s,background .15s;position:relative}.file-drop:hover{border-color:#31a8ff;color:#31a8ff;background:#31a8ff0a}.file-input-hidden{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%;height:100%}.file-name{font-weight:600;color:#7ec8ff;font-size:.74rem;word-break:break-all}.file-hint{font-size:.67rem;color:#444}.mini-spinner{width:10px;height:10px;border:1.5px solid rgba(255,255,255,.25);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.inspector-name{font-size:.88rem;font-weight:700;color:#efefef;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.model-hint{font-size:.74rem;color:#aaa;background:#1e1e21;border:1px solid #2e2e32;border-radius:6px;padding:.4rem .5rem;line-height:1.4}.hint-error{background:#ef444414;border-color:#ef444433;color:#fca5a5}.hint-warn-box{background:#f9731614;border-color:#f9731633;color:#fdba74}.transform-group{display:flex;flex-direction:column;gap:.3rem}.transform-label{font-size:.67rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#666}.xyz-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.3rem}.xyz-field{display:flex;flex-direction:column;gap:0;position:relative}.xyz-axis{position:absolute;top:0;left:0;bottom:0;width:18px;display:flex;align-items:center;justify-content:center;font-size:.62rem;font-weight:800;letter-spacing:0;border-radius:4px 0 0 4px;z-index:1;pointer-events:none}.axis-x{background:#ef44442e;color:#f87171}.axis-y{background:#4ade802e;color:#4ade80}.axis-z{background:#60a5fa2e;color:#60a5fa}.xyz-field input[type=number]{padding:.38rem .3rem .38rem 22px;font:inherit;font-size:.76rem;background:#191919;border:1px solid #2e2e32;border-radius:5px;color:#d8d8d8;width:100%;transition:border-color .14s;-moz-appearance:textfield}.xyz-field input[type=number]::-webkit-outer-spin-button,.xyz-field input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none}.xyz-field input[type=number]:focus{outline:none;border-color:#31a8ff}.interaction-group{display:flex;flex-direction:column;gap:.4rem}.interaction-head{display:flex;align-items:center;justify-content:space-between;gap:.4rem}.interaction-empty{margin:0;font-size:.72rem;color:#666;background:#1e1e21;border:1px solid #2e2e32;border-radius:6px;padding:.45rem .5rem;line-height:1.4}.interaction-list{display:flex;flex-direction:column;gap:.4rem;max-height:210px;overflow-y:auto;padding-right:.1rem}.interaction-card{display:flex;flex-direction:column;gap:.35rem;background:#1c1c1f;border:1px solid #2e2e32;border-radius:6px;padding:.45rem}.interaction-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem}.interaction-card .field-input,.interaction-card .field-select{height:28px}.interaction-remove-btn{width:auto;align-self:flex-end;padding:.3rem .5rem;font-size:.68rem;color:#fca5a5;border-color:#ef444440;background:#ef444414}.interaction-remove-btn:hover:not(:disabled){color:#fecaca;background:#ef444424;border-color:#ef444459}.inspector-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:1.5rem .5rem;color:#444;font-size:.74rem;text-align:center;flex:1}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:.45rem}.marker-tools{margin-top:.55rem;padding-top:.55rem;border-top:1px solid #2a2a2e;display:flex;flex-direction:column;gap:.5rem}.marker-preview-card{display:flex;flex-direction:column;gap:.35rem;background:#191919;border:1px solid #2e2e32;border-radius:6px;padding:.45rem}.marker-preview-image{width:100%;border-radius:5px;border:1px solid #2e2e32;background:#0f0f10;object-fit:contain;max-height:170px}.field{display:flex;flex-direction:column;gap:.25rem}.field-label{font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#666}.field-input,.field-select{height:30px;padding:0 .5rem;font:inherit;font-size:.78rem;background:#191919;border:1px solid #2e2e32;border-radius:5px;color:#d0d0d0;width:100%;transition:border-color .14s}.field-input:focus,.field-select:focus{outline:none;border-color:#31a8ff}.field-input::placeholder{color:#444}.color-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.color-field{min-width:0}.color-input{width:100%;height:34px;padding:.18rem;background:#191919;border:1px solid #2e2e32;border-radius:6px;cursor:pointer}.color-input:disabled{opacity:.45;cursor:not-allowed}.hint{font-size:.72rem;border-radius:5px;padding:.35rem .5rem;margin:0}.hint-warn{background:#f9731614;border:1px solid rgba(249,115,22,.2);color:#fdba74}.publish-url-card{display:flex;align-items:flex-start;gap:.35rem;background:#191919;border:1px solid #2e2e32;border-radius:6px;padding:.45rem .55rem;color:#555;font-size:.72rem}.publish-url-link{color:#60a5fa;text-decoration:none;word-break:break-all;line-height:1.4;flex:1;min-width:0}.publish-url-link:hover{text-decoration:underline}.publish-qr-card{display:flex;flex-direction:column;gap:.55rem;margin-top:.55rem;background:#151518;border:1px solid #2b2b31;border-radius:8px;padding:.65rem}.publish-qr-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.publish-qr-preview{width:100%;max-width:180px;aspect-ratio:1;object-fit:contain;background:#fff;border-radius:10px;padding:.65rem;border:1px solid #2b2b31}.publish-qr-actions{display:flex;flex-wrap:wrap;gap:.5rem}.workflow-tab-view{position:absolute;top:0;right:0;bottom:0;left:0;z-index:12;display:flex;flex-direction:column}.panel-toggles{display:flex;align-items:center;gap:.2rem;padding-right:.5rem;border-right:1px solid #2a2a2e;margin-right:.1rem}.tb-btn-icon{width:30px;height:30px;padding:0;justify-content:center}.tb-btn-panel-active{background:#31a8ff1f!important;border-color:#31a8ff4d!important;color:#60b8ff!important}.json-panel{position:absolute;left:.5rem;right:.5rem;bottom:.5rem;height:200px;z-index:20;display:grid;grid-template-rows:36px minmax(0,1fr);background:#161618f5;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1);border-radius:10px;overflow:hidden}.bottom-header{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:0 .8rem;border-bottom:1px solid #2a2a2e}.bottom-title-group{display:flex;align-items:center;gap:.4rem;color:#777}.bottom-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.bottom-actions{display:flex;align-items:center;gap:.35rem}.bottom-actions .panel-btn{width:auto;height:26px;padding:0 .65rem;font-size:.74rem}.json-editor{width:100%;height:100%;resize:none;padding:.65rem .85rem;font-family:JetBrains Mono,IBM Plex Mono,SF Mono,Menlo,monospace;font-size:.76rem;line-height:1.6;background:#18181a;border:none;color:#b0c4de;caret-color:#31a8ff;outline:none}.json-editor:focus{background:#19191c}@media (max-width: 1280px){.left-panel{width:200px}.right-panel{width:240px}.settings-grid{grid-template-columns:1fr}}@media (max-width: 900px){.left-panel{width:180px}.right-panel{width:220px}.status-shortcuts,.panel-toggles{display:none}}.auth-brand.svelte-iv9qk0.svelte-iv9qk0{position:relative;z-index:1;padding:2.5rem;display:grid;place-items:center;border-right:1px solid rgba(124,58,237,.1);background:radial-gradient(ellipse 90% 70% at 20% 20%,rgba(109,40,217,.18) 0%,transparent 60%),#08080f99}.auth-brand-inner.svelte-iv9qk0.svelte-iv9qk0{max-width:460px;width:100%}.brand-logo.svelte-iv9qk0.svelte-iv9qk0{display:flex;align-items:center;gap:.75rem;margin-bottom:3.5rem}.brand-mark.svelte-iv9qk0.svelte-iv9qk0{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:#7c3aed24;border:1px solid rgba(124,58,237,.28);color:#a78bfa;font-size:.68rem;font-weight:800;letter-spacing:.05em}.brand-logo.svelte-iv9qk0 span.svelte-iv9qk0{font-weight:700;font-size:.95rem;letter-spacing:-.01em}.brand-copy.svelte-iv9qk0.svelte-iv9qk0{margin-bottom:2.5rem}.brand-copy.svelte-iv9qk0 h1.svelte-iv9qk0{margin:0 0 1rem;font-size:clamp(2.2rem,3.8vw,3.4rem);font-weight:800;letter-spacing:-.04em;line-height:1.04}.brand-gradient.svelte-iv9qk0.svelte-iv9qk0{background:linear-gradient(135deg,#a78bfa,#22d3ee);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.brand-copy.svelte-iv9qk0 p.svelte-iv9qk0{margin:0;font-size:1rem;color:#c8c8eb99;line-height:1.7;max-width:44ch}.brand-features.svelte-iv9qk0.svelte-iv9qk0{display:grid;gap:.75rem}.brand-feature.svelte-iv9qk0.svelte-iv9qk0{display:flex;align-items:flex-start;gap:1rem;padding:1rem 1.1rem;border-radius:14px;background:#7c3aed0d;border:1px solid rgba(124,58,237,.1)}.bf-dot.svelte-iv9qk0.svelte-iv9qk0{width:8px;height:8px;border-radius:50%;background:#a78bfa;flex-shrink:0;margin-top:.45rem;box-shadow:0 0 8px #a78bfa80}.bf-dot-cyan.svelte-iv9qk0.svelte-iv9qk0{background:#22d3ee;box-shadow:0 0 8px #22d3ee80}.bf-dot-green.svelte-iv9qk0.svelte-iv9qk0{background:#34d399;box-shadow:0 0 8px #34d39980}.brand-feature.svelte-iv9qk0 strong.svelte-iv9qk0{display:block;font-size:.9rem;font-weight:700;color:#f0f0ff;margin-bottom:.18rem}.brand-feature.svelte-iv9qk0 span.svelte-iv9qk0{font-size:.82rem;color:#c8c8eb8c;line-height:1.5}@media (max-width: 900px){.auth-brand.svelte-iv9qk0.svelte-iv9qk0{border-right:none;border-bottom:1px solid rgba(124,58,237,.1);padding:2rem 1.5rem}.brand-logo.svelte-iv9qk0.svelte-iv9qk0{margin-bottom:2rem}.brand-copy.svelte-iv9qk0 h1.svelte-iv9qk0{font-size:2rem}}.auth-tabs.svelte-1vowpiy{display:grid;grid-template-columns:repeat(2,1fr);gap:.35rem;padding:.3rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.07);border-radius:14px;margin-bottom:1.75rem}.auth-tab.svelte-1vowpiy{height:42px;border-radius:10px;border:1px solid transparent;background:transparent;color:#c8c8eb8c;font:inherit;font-weight:600;font-size:.88rem;cursor:pointer;transition:all .15s ease}.auth-tab.svelte-1vowpiy:hover:not(.auth-tab-active){color:#c8c8ebd9;background:#ffffff0a}.auth-tab-active.svelte-1vowpiy{background:#7c3aed2e;border-color:#7c3aed40;color:#a78bfa}.auth-panel.svelte-9o2l4i.svelte-9o2l4i{position:relative;z-index:1;display:grid;place-items:center;padding:2.5rem}.auth-form-wrap.svelte-9o2l4i.svelte-9o2l4i{width:100%;max-width:400px}.auth-form.svelte-9o2l4i.svelte-9o2l4i{display:grid;gap:1rem}.form-head.svelte-9o2l4i.svelte-9o2l4i{margin-bottom:.25rem}.form-head.svelte-9o2l4i h2.svelte-9o2l4i{margin:0 0 .3rem;font-size:1.75rem;font-weight:800;letter-spacing:-.03em;color:#f0f0ff}.form-head.svelte-9o2l4i p.svelte-9o2l4i{margin:0;font-size:.88rem;color:#c8c8eb8c;line-height:1.5}.form-field.svelte-9o2l4i.svelte-9o2l4i{display:grid;gap:.38rem}.form-field.svelte-9o2l4i label.svelte-9o2l4i{font-size:.8rem;font-weight:700;color:#c8c8ebb3;letter-spacing:.01em}.form-field.svelte-9o2l4i input.svelte-9o2l4i{height:48px;padding:0 1rem;border-radius:12px;border:1px solid rgba(124,58,237,.2);background:#0e0a1ecc;color:#f0f0ff;font:inherit;font-size:.93rem;transition:border-color .15s,box-shadow .15s;outline:none}.form-field.svelte-9o2l4i input.svelte-9o2l4i::placeholder{color:#b4b4dc47}.form-field.svelte-9o2l4i input.svelte-9o2l4i:focus{border-color:#7c3aed8c;box-shadow:0 0 0 3px #7c3aed1a}.form-feedback.svelte-9o2l4i.svelte-9o2l4i{padding:.75rem 1rem;border-radius:10px;font-size:.85rem;line-height:1.5;background:#7c3aed14;border:1px solid rgba(124,58,237,.18);color:#a78bfa}.form-feedback-error.svelte-9o2l4i.svelte-9o2l4i{background:#ef444412;border-color:#ef444433;color:#fca5a5}.form-submit.svelte-9o2l4i.svelte-9o2l4i{height:52px;border-radius:14px;border:none;background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff;font:inherit;font-size:.95rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.6rem;transition:all .15s ease;box-shadow:0 4px 18px #7c3aed4d;margin-top:.25rem}.form-submit.svelte-9o2l4i.svelte-9o2l4i:hover:not(:disabled){background:linear-gradient(135deg,#8b4cf7,#7c3aed);box-shadow:0 8px 28px #7c3aed6b;transform:translateY(-1px)}.form-submit.svelte-9o2l4i.svelte-9o2l4i:disabled{opacity:.5;cursor:wait}.submit-spinner.svelte-9o2l4i.svelte-9o2l4i{width:16px;height:16px;border:2px solid rgba(255,255,255,.28);border-top-color:#fff;border-radius:50%;animation:svelte-9o2l4i-spin .7s linear infinite;flex-shrink:0}@keyframes svelte-9o2l4i-spin{to{transform:rotate(360deg)}}.form-links.svelte-9o2l4i.svelte-9o2l4i{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.link-btn.svelte-9o2l4i.svelte-9o2l4i{padding:0;border:none;background:transparent;color:#a78bfa;font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:2px;text-decoration-color:#a78bfa4d;transition:color .15s}.link-btn.svelte-9o2l4i.svelte-9o2l4i:hover{color:#c4b5fd}@media (max-width: 480px){.auth-panel.svelte-9o2l4i.svelte-9o2l4i{padding:1.75rem 1rem}}.auth-page.svelte-14u5z5z{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:#08080f;color:#f0f0ff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;position:relative;overflow:hidden}.auth-orb.svelte-14u5z5z{position:fixed;border-radius:50%;filter:blur(90px);pointer-events:none;z-index:0}.auth-orb-1.svelte-14u5z5z{width:600px;height:600px;top:-200px;left:-100px;background:radial-gradient(circle,rgba(109,40,217,.22) 0%,transparent 70%)}.auth-orb-2.svelte-14u5z5z{width:400px;height:400px;bottom:-100px;right:25%;background:radial-gradient(circle,rgba(34,211,238,.1) 0%,transparent 70%)}@media (max-width: 900px){.auth-page.svelte-14u5z5z{grid-template-columns:1fr;grid-template-rows:auto 1fr}}.builder-dashboard{min-height:100vh;display:grid;grid-template-columns:240px 1fr;background:#08080f;color:#f0f0ff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;position:relative;overflow:hidden}.builder-dashboard .bg-orb{position:fixed;border-radius:50%;filter:blur(90px);pointer-events:none;z-index:0}.builder-dashboard .bg-orb-1{width:500px;height:500px;top:-180px;left:100px;background:radial-gradient(circle,rgba(109,40,217,.18) 0%,transparent 70%)}.builder-dashboard .bg-orb-2{width:380px;height:380px;bottom:0;right:5%;background:radial-gradient(circle,rgba(34,211,238,.08) 0%,transparent 70%)}.builder-dashboard .sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;justify-content:space-between;padding:1.5rem 1rem;border-right:1px solid rgba(124,58,237,.12);background:#0a0814d9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:10;overflow-y:auto}.builder-dashboard .sidebar-top{display:flex;flex-direction:column;gap:1.5rem}.builder-dashboard .brand{display:flex;align-items:center;gap:.65rem;padding:0 .25rem}.builder-dashboard .brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#7c3aed24;border:1px solid rgba(124,58,237,.28);color:#a78bfa;font-size:.65rem;font-weight:800;letter-spacing:.05em;flex-shrink:0}.builder-dashboard .brand-name{font-weight:700;font-size:.9rem;letter-spacing:-.01em;color:#f0f0ff}.builder-dashboard .user-block{display:flex;align-items:center;gap:.65rem;padding:.75rem;border-radius:12px;background:#7c3aed0f;border:1px solid rgba(124,58,237,.1)}.builder-dashboard .user-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#6d28d9);display:grid;place-items:center;font-size:.8rem;font-weight:800;color:#fff;flex-shrink:0}.builder-dashboard .user-info{display:flex;flex-direction:column;min-width:0}.builder-dashboard .user-name{font-size:.85rem;font-weight:700;color:#f0f0ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.builder-dashboard .user-role{font-size:.72rem;color:#c8c8eb73;font-weight:500}.builder-dashboard .nav{display:flex;flex-direction:column;gap:.25rem}.builder-dashboard .nav-group-label{font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#a78bfa80;padding:.75rem .5rem .25rem}.builder-dashboard .nav-group-label:first-child{padding-top:0}.builder-dashboard .section-divider{border:none;border-top:1px solid rgba(124,58,237,.12);margin:1.5rem 0}.builder-dashboard .nav-item{display:flex;align-items:center;gap:.65rem;width:100%;padding:.7rem .85rem;border-radius:10px;border:none;background:transparent;color:#c8c8eb8c;font:inherit;font-size:.88rem;font-weight:600;cursor:pointer;transition:all .15s ease;text-align:left}.builder-dashboard .nav-item:hover:not(.nav-item-active){background:#ffffff0d;color:#c8c8ebd9}.builder-dashboard .nav-item-active{background:#7c3aed24;color:#f0f0ff;border:1px solid rgba(124,58,237,.2)}.builder-dashboard .nav-dot{width:6px;height:6px;border-radius:50%;background:#c8c8eb33;flex-shrink:0;transition:background .15s}.builder-dashboard .nav-dot-active{background:#a78bfa;box-shadow:0 0 6px #a78bfa80}.builder-dashboard .nav-badge{margin-left:auto;padding:.1rem .45rem;border-radius:999px;background:#7c3aed2e;border:1px solid rgba(124,58,237,.25);font-size:.68rem;font-weight:700;color:#a78bfa}.builder-dashboard .nav-arrow{color:#34d399;font-size:1rem}.builder-dashboard .sidebar-bottom{display:flex;flex-direction:column;gap:.25rem}.builder-dashboard .sidebar-status{padding:.6rem .85rem;border-radius:8px;font-size:.78rem;color:#34d399;background:#34d39914;border:1px solid rgba(52,211,153,.18);margin-bottom:.25rem;line-height:1.4}.builder-dashboard .nav-item-studio{color:#34d399;border:1px solid rgba(52,211,153,.15)}.builder-dashboard .nav-item-studio:hover{background:#34d39914!important;color:#34d399!important;border-color:#34d39947!important}.builder-dashboard .nav-item-logout{color:#fca5a599}.builder-dashboard .nav-item-logout:hover{background:#ef444412!important;color:#fca5a5!important}.builder-dashboard .content{padding:3rem 2.5rem;overflow-y:auto;position:relative;z-index:1;max-width:1100px}.builder-dashboard .panel-head{margin-bottom:2.5rem}.builder-dashboard .eyebrow{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:#a78bfa;margin-bottom:.55rem}.builder-dashboard .eyebrow-secondary{color:#22d3eecc}.builder-dashboard .panel-head h1{margin:0 0 .4rem;font-size:clamp(1.8rem,3vw,2.4rem);font-weight:800;letter-spacing:-.035em}.builder-dashboard .panel-head p{margin:0;font-size:.95rem;color:#c8c8eb8c;line-height:1.6}.builder-dashboard .two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start}.builder-dashboard .card{padding:1.6rem;border-radius:18px;border:1px solid rgba(124,58,237,.15);background:#0c0c16e0;display:grid;gap:1rem}.builder-dashboard .card-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#c8c8eb59}.builder-dashboard .card h2{margin:0;font-size:1.15rem;font-weight:700;letter-spacing:-.025em}.builder-dashboard .card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.builder-dashboard .btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:none;border-radius:999px;font:inherit;font-weight:600;cursor:pointer;transition:all .15s ease;height:36px;padding:0 1rem;font-size:.84rem}.builder-dashboard .btn-sm{height:32px;padding:0 .85rem;font-size:.78rem}.builder-dashboard .btn-ghost{background:transparent;color:#c8c8eb99;border:1px solid rgba(124,58,237,.18)}.builder-dashboard .btn-ghost:hover:not(:disabled){background:#7c3aed14;color:#f0f0ff}.builder-dashboard .btn-danger{color:#fca5a5;border-color:#ef444433}.builder-dashboard .btn-danger:hover:not(:disabled){background:#ef444414;color:#fecaca}.builder-dashboard .btn-primary{height:46px;padding:0 1.4rem;font-size:.9rem;border-radius:12px;background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff;box-shadow:0 4px 16px #7c3aed47}.builder-dashboard .btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#8b4cf7,#7c3aed);box-shadow:0 8px 24px #7c3aed61;transform:translateY(-1px)}.builder-dashboard .btn-primary:disabled,.builder-dashboard .btn:disabled{opacity:.45;cursor:not-allowed}.builder-dashboard .btn-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.28);border-top-color:#fff;border-radius:50%;animation:builder-dashboard-spin .7s linear infinite}.builder-dashboard .progress-header{display:flex;align-items:baseline;gap:.5rem}.builder-dashboard .progress-percent{font-size:3rem;font-weight:800;letter-spacing:-.04em;line-height:1;background:linear-gradient(135deg,#a78bfa,#22d3ee);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.builder-dashboard .progress-sub{font-size:.85rem;color:#c8c8eb73;font-weight:600}.builder-dashboard .progress-track{height:7px;border-radius:999px;background:#7c3aed1a;overflow:hidden}.builder-dashboard .progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#7c3aed,#22d3ee);transition:width .5s ease}.builder-dashboard .checklist{display:grid;gap:.45rem}.builder-dashboard .checklist-item{display:flex;align-items:center;gap:.7rem;padding:.65rem .9rem;border-radius:10px;background:#ffffff08;border:1px solid rgba(255,255,255,.05);font-size:.85rem;color:#c8c8eb80}.builder-dashboard .checklist-done{background:#34d3990d;border-color:#34d39929;color:#c8f0dccc}.builder-dashboard .check-icon{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;font-size:.68rem;font-weight:800;flex-shrink:0;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);color:#c8c8eb4d}.builder-dashboard .check-icon-done{background:#34d39924;border-color:#34d3994d;color:#34d399}.builder-dashboard .alert-card{display:flex;gap:.85rem;align-items:flex-start;padding:.9rem;border-radius:12px;background:#fbbf240d;border:1px solid rgba(251,191,36,.16)}.builder-dashboard .alert-icon{font-size:.95rem;color:#fbbf24;margin-top:.1rem;flex-shrink:0}.builder-dashboard .alert-card strong{display:block;font-size:.88rem;color:#fde68a;margin-bottom:.2rem}.builder-dashboard .alert-card p{margin:0 0 .55rem;font-size:.8rem;color:#fde68aa6;line-height:1.5}.builder-dashboard .field{display:grid;gap:.38rem}.builder-dashboard .field label{font-size:.78rem;font-weight:700;color:#c8c8eba6}.builder-dashboard .field input{height:46px;padding:0 .95rem;border-radius:11px;border:1px solid rgba(124,58,237,.2);background:#0e0a1ecc;color:#f0f0ff;font:inherit;font-size:.9rem;outline:none;transition:border-color .15s,box-shadow .15s}.builder-dashboard .field input::placeholder{color:#b4b4dc40}.builder-dashboard .field input:focus{border-color:#7c3aed80;box-shadow:0 0 0 3px #7c3aed1a}.builder-dashboard .next-step{padding:.9rem;border-radius:11px;background:#7c3aed0d;border:1px solid rgba(124,58,237,.12)}.builder-dashboard .next-step-label{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#a78bfa;margin-bottom:.35rem}.builder-dashboard .next-step p{margin:0;font-size:.84rem;color:#c8c8eb99;line-height:1.55}.builder-dashboard .current-plan-name{font-size:2rem;font-weight:800;letter-spacing:-.04em;background:linear-gradient(135deg,#a78bfa,#22d3ee);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}.builder-dashboard .plan-summary-text{margin:0;font-size:.875rem;color:#c8c8eb99;line-height:1.6}.builder-dashboard .usage-group,.builder-dashboard .plan-list,.builder-dashboard .plan-mix,.builder-dashboard .usage-stack,.builder-dashboard .usage-mini,.builder-dashboard .mini-grid,.builder-dashboard .checklist,.builder-dashboard .status-stack,.builder-dashboard .row-actions,.builder-dashboard .account-company-cell,.builder-dashboard .user-cell,.builder-dashboard .tenant-meta{display:grid;gap:.45rem}.builder-dashboard .mini-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}.builder-dashboard .usage-item,.builder-dashboard .mix-item{display:grid;gap:.35rem}.builder-dashboard .usage-row,.builder-dashboard .mix-info{display:flex;justify-content:space-between;align-items:center}.builder-dashboard .usage-label{font-size:.78rem;font-weight:600;color:#c8c8eb80}.builder-dashboard .usage-value{font-size:.83rem;font-weight:700;color:#f0f0ff}.builder-dashboard .usage-limit{font-weight:400;color:#c8c8eb61}.builder-dashboard .usage-unlimited{font-size:.74rem;color:#34d399;font-weight:600}.builder-dashboard .usage-track,.builder-dashboard .mix-track{height:5px;border-radius:999px;background:#ffffff0d;overflow:hidden}.builder-dashboard .usage-track-mini{height:6px}.builder-dashboard .usage-fill,.builder-dashboard .mix-bar{height:100%;border-radius:999px;min-width:4px;transition:width .5s ease}.builder-dashboard .usage-fill-violet,.builder-dashboard .mix-bar-launch{background:linear-gradient(90deg,#7c3aed,#a78bfa)}.builder-dashboard .usage-fill-cyan,.builder-dashboard .mix-bar-studio{background:linear-gradient(90deg,#0891b2,#22d3ee)}.builder-dashboard .mix-bar-scale{background:linear-gradient(90deg,#059669,#34d399)}.builder-dashboard .helper-text,.builder-dashboard .metric-sub,.builder-dashboard .mix-name,.builder-dashboard .mini-stat span,.builder-dashboard .user-cell span,.builder-dashboard .tenant-meta small,.builder-dashboard .td-muted{color:#c8c8eb75}.builder-dashboard .helper-text{margin:0;font-size:.83rem;line-height:1.55}.builder-dashboard .plan-option{display:flex;align-items:flex-start;gap:.8rem;padding:.9rem 1rem;border-radius:12px;border:1px solid rgba(124,58,237,.1);background:#7c3aed08;cursor:pointer;transition:all .15s ease}.builder-dashboard .plan-option:hover{border-color:#7c3aed38;background:#7c3aed12}.builder-dashboard .plan-option-active{border-color:#7c3aed61;background:#7c3aed1a}.builder-dashboard .plan-option input[type=radio]{margin-top:.18rem;accent-color:#7c3aed;flex-shrink:0}.builder-dashboard .plan-option-body{display:grid;gap:.18rem;flex:1}.builder-dashboard .plan-option-top{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.builder-dashboard .plan-option-name{font-size:.88rem;font-weight:700;color:#f0f0ff;display:flex;align-items:center;gap:.45rem}.builder-dashboard .recommended-tag,.builder-dashboard .plan-badge{padding:.12rem .45rem;border-radius:6px;background:#7c3aed29;border:1px solid rgba(124,58,237,.26);color:#a78bfa;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.builder-dashboard .plan-option-price{font-size:1.05rem;font-weight:800;color:#f0f0ff;letter-spacing:-.02em;white-space:nowrap}.builder-dashboard .plan-option-price small{font-size:.7rem;color:#c8c8eb61;font-weight:400}.builder-dashboard .plan-option-meta,.builder-dashboard .count-chip{color:#a78bfa}.builder-dashboard .metrics-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.builder-dashboard .metric-card{padding:1.3rem;border-radius:16px;border:1px solid rgba(124,58,237,.14);background:#0c0c16e0;display:grid;gap:.18rem}.builder-dashboard .metric-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#c8c8eb61}.builder-dashboard .metric-value{display:block;font-size:2.4rem;font-weight:800;line-height:1;letter-spacing:-.04em;margin:.15rem 0}.builder-dashboard .metric-violet{color:#a78bfa}.builder-dashboard .metric-cyan{color:#22d3ee}.builder-dashboard .metric-green{color:#34d399}.builder-dashboard .metric-amber{color:#fbbf24}.builder-dashboard .admin-action-grid,.builder-dashboard .form-grid,.builder-dashboard .quick-stats{display:grid;gap:.8rem}.builder-dashboard .admin-action-grid{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);margin-bottom:1rem;align-items:start}.builder-dashboard .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.builder-dashboard .quick-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.builder-dashboard .mini-stat{padding:.85rem;border-radius:12px;border:1px solid rgba(124,58,237,.12);background:#7c3aed0d}.builder-dashboard .mini-stat strong{font-size:1.5rem;font-weight:800;letter-spacing:-.04em;color:#f0f0ff}.builder-dashboard .count-chip{padding:.25rem .7rem;border-radius:999px;background:#7c3aed1a;border:1px solid rgba(124,58,237,.2);font-size:.75rem;font-weight:700;white-space:nowrap}.builder-dashboard .table-wrap{overflow:auto;border-radius:12px;border:1px solid rgba(124,58,237,.1)}.builder-dashboard table{width:100%;min-width:980px;border-collapse:collapse}.builder-dashboard th{padding:.65rem .9rem;text-align:left;font-size:.67rem;letter-spacing:.1em;text-transform:uppercase;color:#c8c8eb59;font-weight:700;background:#7c3aed0a;border-bottom:1px solid rgba(124,58,237,.08)}.builder-dashboard td{padding:.8rem .9rem;border-bottom:1px solid rgba(255,255,255,.03);font-size:.85rem;color:#c8c8ebb3}.builder-dashboard tr:last-child td{border-bottom:none}.builder-dashboard tr:hover td{background:#7c3aed08}.builder-dashboard .td-main,.builder-dashboard .user-cell strong,.builder-dashboard .tenant-meta span,.builder-dashboard .mix-count{color:#f0f0ff;font-weight:700}.builder-dashboard .row-actions{grid-template-columns:repeat(2,minmax(0,max-content));align-content:start}.builder-dashboard .account-company-cell small{color:#c8c8eb75;font-size:.74rem}.builder-dashboard .table-input{min-height:36px;padding:0 .75rem;border-radius:10px;border:1px solid rgba(124,58,237,.18);background:#0e0a1eb8;color:#f0f0ff;font:inherit;font-size:.84rem;outline:none}.builder-dashboard .table-input:focus{border-color:#7c3aed6b;box-shadow:0 0 0 3px #7c3aed1a}.builder-dashboard .table-select{min-width:140px}.builder-dashboard .status-badge{padding:.18rem .55rem;border-radius:6px;background:#ffffff0a;border:1px solid rgba(255,255,255,.07);font-size:.68rem;font-weight:600;color:#c8c8eb73}.builder-dashboard .status-done{background:#34d39912;border-color:#34d3992e;color:#34d399}.builder-dashboard .role-badge{display:inline-flex;align-items:center;padding:.2rem .6rem;border-radius:999px;background:#22d3ee14;border:1px solid rgba(34,211,238,.18);color:#67e8f9;font-size:.72rem;font-weight:700}.builder-dashboard .role-admin{background:#7c3aed1f;border-color:#7c3aed40;color:#c4b5fd}.builder-dashboard .loading-state{text-align:center;padding:4rem;color:#c8c8eb73}.builder-dashboard .loading-ring{width:34px;height:34px;border:2px solid rgba(124,58,237,.16);border-top-color:#a78bfa;border-radius:50%;animation:builder-dashboard-spin .8s linear infinite;margin:0 auto 1rem}@keyframes builder-dashboard-spin{to{transform:rotate(360deg)}}@media (max-width: 1100px){.builder-dashboard .metrics-row{grid-template-columns:repeat(2,1fr)}.builder-dashboard .admin-action-grid,.builder-dashboard .form-grid,.builder-dashboard .quick-stats{grid-template-columns:1fr}}@media (max-width: 900px){.builder-dashboard .two-col{grid-template-columns:1fr}}@media (max-width: 720px){.builder-dashboard{grid-template-columns:1fr}.builder-dashboard .sidebar{position:static;height:auto;flex-direction:row;align-items:center;padding:.75rem 1rem;overflow-x:auto;border-right:none;border-bottom:1px solid rgba(124,58,237,.12)}.builder-dashboard .sidebar-top,.builder-dashboard .sidebar-bottom{flex-direction:row;align-items:center;gap:.25rem}.builder-dashboard .sidebar-top{flex:1}.builder-dashboard .user-block,.builder-dashboard .brand-name{display:none}.builder-dashboard .nav{flex-direction:row}.builder-dashboard .content{padding:1.5rem 1rem}}.forbidden-page.svelte-kal0b{min-height:100vh;display:grid;place-items:center;padding:1rem;background:linear-gradient(180deg,#101114,#181a1f);color:#f4f7fb}.forbidden-card.svelte-kal0b{width:min(560px,100%);padding:1.4rem;border-radius:28px;border:1px solid rgba(255,255,255,.08);background:#14161cd6;box-shadow:0 24px 64px #0000003d;text-align:center}.forbidden-kicker.svelte-kal0b{margin:0 0 .55rem;color:#8ad1ff;font-size:.8rem;text-transform:uppercase;letter-spacing:.14em;font-weight:700}h1.svelte-kal0b{margin:0;font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,serif;font-size:clamp(2rem,4vw,3.4rem);line-height:.96}p.svelte-kal0b{color:#e2e8f0c2;line-height:1.55}.forbidden-actions.svelte-kal0b{display:flex;justify-content:center;gap:.75rem;flex-wrap:wrap;margin-top:1rem}button.svelte-kal0b{min-height:46px;padding:0 1rem;border-radius:16px;border:1px solid rgba(255,255,255,.08);background:#ffffff0d;color:#f8fafc;font:inherit;font-weight:700;cursor:pointer}.danger.svelte-kal0b{background:#ef444424;border-color:#ef44443d}.builder-landing{min-height:100vh;background:#08080f;color:#f0f0ff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;position:relative;overflow-x:hidden}.builder-landing .bg-orb{position:fixed;border-radius:50%;filter:blur(90px);pointer-events:none;z-index:0}.builder-landing .bg-orb-1{width:700px;height:700px;top:-250px;left:50%;transform:translate(-50%);background:radial-gradient(circle,rgba(109,40,217,.22) 0%,transparent 70%)}.builder-landing .bg-orb-2{width:450px;height:450px;bottom:5%;right:-80px;background:radial-gradient(circle,rgba(34,211,238,.1) 0%,transparent 70%)}.builder-landing .bg-grid{position:fixed;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(124,58,237,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(124,58,237,.04) 1px,transparent 1px);background-size:48px 48px;pointer-events:none;z-index:0}.builder-landing .container{width:min(1280px,calc(100% - 3rem));margin:0 auto;position:relative;z-index:1}.builder-landing .navbar{position:sticky;top:0;z-index:100;padding:.875rem 1.5rem;background:#08080fbf;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(124,58,237,.1)}.builder-landing .nav-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1.5rem;max-width:1280px;margin:0 auto}.builder-landing .nav-brand{display:flex;align-items:center;gap:.65rem}.builder-landing .brand-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#7c3aed26;border:1px solid rgba(124,58,237,.3);color:#a78bfa;font-size:.7rem;font-weight:800;letter-spacing:.05em}.builder-landing .nav-brand span{font-weight:700;font-size:.95rem;letter-spacing:-.01em}.builder-landing .nav-center{display:flex;align-items:center;gap:.5rem;justify-content:center}.builder-landing .nav-chip{padding:.3rem .75rem;border-radius:999px;background:#7c3aed1a;border:1px solid rgba(124,58,237,.18);font-size:.78rem;color:#a78bfa;font-weight:600}.builder-landing .nav-end{display:flex;align-items:center;gap:.5rem;justify-content:flex-end}.builder-landing .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:none;border-radius:999px;font:inherit;font-weight:600;cursor:pointer;transition:all .15s ease;white-space:nowrap}.builder-landing .btn-sm{height:36px;padding:0 1rem;font-size:.85rem}.builder-landing .btn-lg{height:52px;padding:0 1.75rem;font-size:1rem}.builder-landing .btn-ghost{background:transparent;color:#c8c8eba6;border:1px solid transparent}.builder-landing .btn-ghost:hover{background:#ffffff0f;color:#f0f0ff;border-color:#7c3aed2e}.builder-landing .btn-primary{background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff;box-shadow:0 0 0 1px #7c3aed66,0 6px 20px #7c3aed40}.builder-landing .btn-primary:hover{background:linear-gradient(135deg,#8b4cf7,#7c3aed);box-shadow:0 0 0 1px #7c3aed80,0 10px 28px #7c3aed59;transform:translateY(-1px)}.builder-landing .btn-outline{background:transparent;color:#f0f0ff;border:1px solid rgba(255,255,255,.14)}.builder-landing .btn-outline:hover{background:#ffffff0f;border-color:#ffffff3d}.builder-landing .hero{padding:7rem 1.5rem 5rem;text-align:center}.builder-landing .hero-badges{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}.builder-landing .badge{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .85rem;border-radius:999px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);font-size:.78rem;font-weight:600;color:#c8c8ebb3}.builder-landing .badge-dot{width:6px;height:6px;border-radius:50%;background:#b4b4d273;flex-shrink:0}.builder-landing .badge-live{border-color:#34d39938;color:#34d399}.builder-landing .badge-live .badge-dot{background:#34d399;box-shadow:0 0 8px #34d39999}.builder-landing .badge-success{color:#34d399;border-color:#34d39938}.builder-landing .badge-warning{color:#fbbf24;border-color:#fbbf2438}.builder-landing .hero-title{font-size:clamp(2.8rem,6vw,5.5rem);font-weight:800;line-height:1.02;letter-spacing:-.04em;margin:0 0 1.5rem;color:#f0f0ff}.builder-landing .title-gradient{background:linear-gradient(135deg,#a78bfa,#22d3ee);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.builder-landing .hero-desc{max-width:56ch;margin:0 auto 2.5rem;font-size:1.1rem;color:#c8c8eba6;line-height:1.7}.builder-landing .hero-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.75rem;margin-bottom:4.5rem}.builder-landing .preview-window{max-width:920px;margin:0 auto;border-radius:20px;border:1px solid rgba(124,58,237,.2);background:#0c0c16e6;box-shadow:0 0 0 1px #7c3aed0f,0 48px 120px #0000008c,0 0 100px #7c3aed14;overflow:hidden}.builder-landing .preview-chrome{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:#100e20e6;border-bottom:1px solid rgba(124,58,237,.12)}.builder-landing .chrome-dots{display:flex;gap:6px;flex-shrink:0}.builder-landing .chrome-dots span{width:11px;height:11px;border-radius:50%;background:#ffffff1a}.builder-landing .chrome-tabs{display:flex;gap:.25rem}.builder-landing .chrome-tab{padding:.32rem .85rem;border-radius:8px;font-size:.78rem;font-weight:600;color:#c8c8eb73}.builder-landing .chrome-tab-active{background:#7c3aed24;color:#a78bfa;border:1px solid rgba(124,58,237,.22)}.builder-landing .chrome-status{margin-left:auto;display:flex;align-items:center;gap:.45rem;font-size:.75rem;color:#34d399;font-weight:600}.builder-landing .live-dot{width:7px;height:7px;border-radius:50%;background:#34d399;box-shadow:0 0 8px #34d39999}.builder-landing .preview-body{display:grid;grid-template-columns:1fr 200px}.builder-landing .preview-canvas{position:relative;min-height:280px;border-right:1px solid rgba(124,58,237,.1);background:linear-gradient(180deg,#080814fa,#0c0a1cf2)}.builder-landing .canvas-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(124,58,237,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(124,58,237,.07) 1px,transparent 1px);background-size:32px 32px}.builder-landing .ar-tag{position:absolute;padding:.45rem .75rem;border-radius:10px;font-size:.75rem;font-weight:700}.builder-landing .ar-tag-marker{top:1.2rem;left:1.2rem;background:#34d3991a;border:1px solid rgba(52,211,153,.22);color:#34d399}.builder-landing .ar-tag-model{top:75px;left:90px;background:linear-gradient(135deg,#7c3aedbf,#6d28d9bf);border:1px solid rgba(124,58,237,.45);color:#fff}.builder-landing .ar-tag-hotspot{top:145px;right:60px;background:linear-gradient(135deg,#22d3eeb3,#06b6d4b3);border:1px solid rgba(34,211,238,.4);color:#fff}.builder-landing .ar-tag-media{bottom:1.4rem;left:50%;transform:translate(-50%);background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#c8c8ebcc}.builder-landing .preview-inspector{padding:1rem;display:grid;gap:.6rem;align-content:start}.builder-landing .inspector-row{padding:.6rem .75rem;border-radius:9px;background:#7c3aed0d;border:1px solid rgba(124,58,237,.12)}.builder-landing .inspector-label{display:block;font-size:.64rem;text-transform:uppercase;letter-spacing:.1em;color:#b4b4dc66;font-weight:700;margin-bottom:.15rem}.builder-landing .inspector-row strong{font-size:.8rem;color:#f0f0ff;font-weight:600}.builder-landing .inspector-row-live{border-color:#34d39933}.builder-landing .text-live{color:#34d399!important}.builder-landing .section{padding:6rem 1.5rem;position:relative;z-index:1}.builder-landing .section-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:#a78bfa;margin-bottom:.75rem}.builder-landing .section-title{font-size:clamp(2rem,3.5vw,3rem);font-weight:800;letter-spacing:-.035em;line-height:1.05;margin:0 0 .85rem;color:#f0f0ff}.builder-landing .section-sub{font-size:1rem;color:#c8c8eb99;line-height:1.7;max-width:58ch;margin:0 0 3rem}.builder-landing .features-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:3rem}.builder-landing .feature-card{padding:1.75rem;border-radius:20px;border:1px solid rgba(124,58,237,.14);background:#0c0c16cc;transition:border-color .2s,transform .2s}.builder-landing .feature-card:hover{border-color:#7c3aed4d;transform:translateY(-2px)}.builder-landing .feature-number{font-size:.7rem;font-weight:800;letter-spacing:.1em;color:#a78bfa;margin-bottom:1rem;opacity:.65}.builder-landing .feature-card h3{margin:0 0 .6rem;font-size:1.1rem;font-weight:700;letter-spacing:-.02em;color:#f0f0ff}.builder-landing .feature-card p{margin:0;font-size:.88rem;color:#c8c8eb99;line-height:1.65}.builder-landing .plans-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-items:start}.builder-landing .plan-card{padding:1.75rem;border-radius:20px;border:1px solid rgba(124,58,237,.14);background:#0c0c16cc;position:relative;display:grid;gap:1rem}.builder-landing .plan-featured{border-color:#7c3aed66;background:linear-gradient(180deg,#120c28f2,#0c0a1cf2);box-shadow:0 0 0 1px #7c3aed1f,0 24px 64px #7c3aed26}.builder-landing .plan-badge{position:absolute;top:-1px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff;font-size:.68rem;font-weight:700;padding:.28rem .85rem;border-radius:0 0 10px 10px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.builder-landing .plan-top{display:flex;justify-content:space-between;align-items:flex-start;margin-top:.5rem}.builder-landing .plan-name{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#c8c8eb8c}.builder-landing .plan-price strong{display:block;font-size:2.6rem;font-weight:800;line-height:.9;letter-spacing:-.04em;color:#f0f0ff;text-align:right}.builder-landing .plan-period{display:block;font-size:.75rem;color:#b4b4dc66;text-align:right;margin-top:.2rem}.builder-landing .plan-desc{font-size:.875rem;color:#c8c8eb99;line-height:1.6;margin:0}.builder-landing .plan-limits{display:grid;gap:.4rem;padding:.85rem;border-radius:10px;background:#7c3aed0f;border:1px solid rgba(124,58,237,.1)}.builder-landing .limit-item{display:flex;align-items:center;gap:.5rem;font-size:.83rem;font-weight:600;color:#c8c8eba6}.builder-landing .limit-icon{color:#a78bfa;font-size:.7rem}.builder-landing .plan-list{list-style:none;padding:0;margin:0;display:grid;gap:.45rem}.builder-landing .plan-list li{padding-left:1.1rem;position:relative;font-size:.86rem;color:#c8c8eb99;line-height:1.5}.builder-landing .plan-list li:before{content:"";position:absolute;left:0;top:.52rem;width:5px;height:5px;border-radius:50%;background:#a78bfa;opacity:.55}.builder-landing .plan-cta{width:100%;height:44px;border-radius:12px;border:1px solid rgba(124,58,237,.18);background:#7c3aed0f;color:#c8c8ebcc;font:inherit;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .15s ease}.builder-landing .plan-cta:hover{background:#7c3aed1f;border-color:#7c3aed4d;color:#f0f0ff}.builder-landing .plan-cta-featured{background:linear-gradient(135deg,#7c3aed,#6d28d9);border-color:#7c3aed80;color:#fff;box-shadow:0 4px 16px #7c3aed4d}.builder-landing .plan-cta-featured:hover{background:linear-gradient(135deg,#8b4cf7,#7c3aed);box-shadow:0 8px 24px #7c3aed66;transform:translateY(-1px)}.builder-landing .loading-state{text-align:center;padding:4rem;color:#c8c8eb8c}.builder-landing .loading-ring{width:38px;height:38px;border:2px solid rgba(124,58,237,.18);border-top-color:#a78bfa;border-radius:50%;animation:builder-landing-spin .8s linear infinite;margin:0 auto 1rem}@keyframes builder-landing-spin{to{transform:rotate(360deg)}}@media (max-width: 1024px){.builder-landing .features-grid,.builder-landing .plans-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 768px){.builder-landing .hero{padding:5rem 1.5rem 3rem}.builder-landing .features-grid,.builder-landing .plans-grid,.builder-landing .preview-body{grid-template-columns:1fr}.builder-landing .preview-inspector,.builder-landing .nav-center{display:none}}@media (max-width: 480px){.builder-landing .hero-title{font-size:2.4rem}.builder-landing .nav-end .btn-ghost:not(.btn-primary){display:none}}.builder-launcher{min-height:100vh}.builder-launcher .launcher-shell{min-height:100vh;display:grid;grid-template-rows:52px minmax(0,1fr);background:#1c1c1e;color:#e2e2e2;font-family:Plus Jakarta Sans,Segoe UI,sans-serif}.builder-launcher .topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0 1.25rem;background:#141416;border-bottom:1px solid #2a2a2e}.builder-launcher .topbar-brand{display:flex;align-items:center;gap:.5rem}.builder-launcher .brand-icon{display:flex;align-items:center}.builder-launcher .brand-name{font-size:.84rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#f0f0f0}.builder-launcher .brand-sep{color:#3a3a3e;font-size:.9rem;margin:0 .1rem}.builder-launcher .brand-label{font-size:.75rem;color:#888;letter-spacing:.02em}.builder-launcher .topbar-right{display:flex;align-items:center;gap:1rem}.builder-launcher .user-chip{display:inline-flex;align-items:center;min-height:34px;padding:0 .85rem;border-radius:999px;background:#31a8ff1a;border:1px solid rgba(49,168,255,.18);color:#8ad1ff;font-size:.78rem;font-weight:700}.builder-launcher .topbar-stats{display:flex;align-items:center;gap:.75rem}.builder-launcher .stat{display:flex;align-items:baseline;gap:.3rem}.builder-launcher .stat-value{font-size:.84rem;font-weight:600;color:#d0d0d0}.builder-launcher .stat-label{font-size:.72rem;color:#777}.builder-launcher .stat-divider{width:1px;height:14px;background:#333}.builder-launcher .topbar-cta{height:34px;padding:0 .85rem;display:flex;align-items:center;gap:.4rem;font-size:.8rem}.builder-launcher .content{padding:1.6rem 1.75rem;display:grid;align-content:start;gap:1.25rem;overflow:auto}.builder-launcher .section-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.builder-launcher .section-title-group{display:flex;align-items:center;gap:.75rem}.builder-launcher .section-title{margin:0;font-size:1.3rem;font-weight:700;color:#f0f0f0;letter-spacing:-.01em}.builder-launcher .loading-badge{display:inline-flex;align-items:center;gap:.4rem;font-size:.74rem;color:#31a8ff;background:#31a8ff1a;border:1px solid rgba(49,168,255,.2);border-radius:20px;padding:.22rem .6rem}.builder-launcher .spinner{width:10px;height:10px;border:1.5px solid rgba(49,168,255,.3);border-top-color:#31a8ff;border-radius:50%;animation:builder-launcher-spin .8s linear infinite}.builder-launcher .search-wrap{position:relative;display:flex;align-items:center}.builder-launcher .search-icon{position:absolute;left:.65rem;color:#666;pointer-events:none}.builder-launcher .search-input{height:34px;padding:0 .75rem 0 2rem;background:#252528;border:1px solid #333336;border-radius:8px;color:#e0e0e0;font:inherit;font-size:.82rem;width:220px;transition:border-color .15s,box-shadow .15s}.builder-launcher .search-input::placeholder{color:#555}.builder-launcher .search-input:focus{outline:none;border-color:#31a8ff;box-shadow:0 0 0 3px #31a8ff26}.builder-launcher .search-input::-webkit-search-cancel-button{-webkit-appearance:none}.builder-launcher .banner{border-radius:8px;padding:.55rem .8rem;font-size:.82rem;margin:0}.builder-launcher .banner-info{background:#31a8ff14;border:1px solid rgba(49,168,255,.2);color:#7ec8ff}.builder-launcher .banner-error{background:#ef444414;border:1px solid rgba(239,68,68,.25);color:#fca5a5}.builder-launcher .empty-state{display:grid;place-items:center;gap:.75rem;text-align:center;padding:4rem 2rem}.builder-launcher .empty-art{margin-bottom:.5rem;opacity:.9}.builder-launcher .empty-title{margin:0;font-size:1.05rem;font-weight:600;color:#c8c8c8}.builder-launcher .empty-desc{margin:0;font-size:.86rem;color:#666;max-width:300px}.builder-launcher .empty-cta{margin-top:.5rem;display:inline-flex;align-items:center;gap:.4rem;padding:.6rem 1.1rem;font-size:.85rem}.builder-launcher .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.9rem;align-content:start}.builder-launcher .card{border-radius:10px;border:1px solid #2e2e32;background:#222226;transition:border-color .16s,box-shadow .16s,transform .12s;overflow:hidden;display:flex;flex-direction:column;min-height:200px}.builder-launcher .card:hover{border-color:#3a3a40;box-shadow:0 6px 28px #00000059;transform:translateY(-1px)}.builder-launcher .card-new{cursor:pointer;font:inherit;text-align:left;background:#1e1e21;border:1.5px dashed #333336;min-height:200px}.builder-launcher .card-new:hover{border-color:#31a8ff;background:#31a8ff0a;box-shadow:0 0 0 1px #31a8ff1f,0 6px 28px #00000040;transform:translateY(-1px)}.builder-launcher .card-new-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.65rem;height:100%;min-height:200px;color:#555;transition:color .16s}.builder-launcher .card-new:hover .card-new-inner{color:#31a8ff}.builder-launcher .card-new-icon{width:48px;height:48px;border-radius:12px;border:1.5px dashed currentColor;display:grid;place-items:center;transition:background .16s,border-style .16s}.builder-launcher .card-new:hover .card-new-icon{background:#31a8ff1a;border-style:solid}.builder-launcher .card-new-label{font-size:.82rem;font-weight:600;letter-spacing:.01em}.builder-launcher .card-thumb{position:relative;height:110px;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;color:#fff3}.builder-launcher .card-thumb-glow{position:absolute;top:0;right:0;bottom:0;left:0}.builder-launcher .card-thumb-icon{position:relative;z-index:1}.builder-launcher .published-badge{position:absolute;top:.5rem;right:.5rem;background:#22c55e2e;border:1px solid rgba(34,197,94,.35);color:#4ade80;font-size:.65rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.2rem .45rem;border-radius:20px;z-index:2}.builder-launcher .card-body{padding:.75rem .85rem .85rem;display:grid;gap:.35rem;flex:1}.builder-launcher .card-meta-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.builder-launcher .card-nodes{display:inline-flex;align-items:center;gap:.3rem;font-size:.7rem;color:#777}.builder-launcher .card-date{font-size:.7rem;color:#666}.builder-launcher .card-type{display:inline-flex;align-items:center;min-height:20px;padding:.12rem .45rem;border-radius:999px;background:#31a8ff1f;border:1px solid rgba(49,168,255,.2);color:#8dccff;font-size:.68rem;font-weight:600;letter-spacing:.02em}.builder-launcher .card-name{margin:0;font-size:.9rem;font-weight:600;color:#ededed;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.builder-launcher .card-desc{margin:0;font-size:.76rem;color:#666;line-height:1.4;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.builder-launcher .card-desc-empty{font-style:italic;color:#444}.builder-launcher .btn-open{margin-top:auto;padding-top:.5rem;display:inline-flex;align-items:center;gap:.35rem;font-size:.76rem;font-weight:600;color:#31a8ff;background:transparent;border:none;cursor:pointer;padding:.4rem .7rem;border-radius:6px;margin-top:.3rem;transition:background .14s,color .14s;align-self:start;font-family:inherit}.builder-launcher .btn-open:hover{background:#31a8ff1a;color:#5fc0ff}.builder-launcher .card-actions{display:flex;gap:.5rem;margin-top:auto;padding-top:.5rem}.builder-launcher .card-actions .btn-open{flex:1;margin-top:0;padding-top:.45rem}.builder-launcher .btn-delete{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:1px solid rgba(255,80,80,.2);border-radius:6px;color:#888;transition:all .14s}.builder-launcher .btn-delete:hover{background:#ff50501f;border-color:#ff505066;color:#ff6b6b}.builder-launcher .no-results{grid-column:1 / -1;padding:2.5rem 1rem;text-align:center;display:grid;gap:.8rem;place-items:center;color:#666;font-size:.86rem}.builder-launcher .no-results em{font-style:normal;color:#888}.builder-launcher button{font:inherit;cursor:pointer;border-radius:8px;transition:background .14s,border-color .14s,opacity .12s}.builder-launcher button:disabled{opacity:.45;cursor:not-allowed}.builder-launcher .btn{font-weight:600;border:1px solid transparent}.builder-launcher .btn-primary{background:linear-gradient(180deg,#31a8ff,#1a88e0);border-color:#31a8ff99;color:#fff;padding:.55rem 1rem;font-size:.82rem}.builder-launcher .btn-primary:hover:not(:disabled){background:linear-gradient(180deg,#45b4ff,#2594ea)}.builder-launcher .btn-ghost{background:transparent;border-color:#333336;color:#aaa;padding:.55rem 1rem;font-size:.82rem}.builder-launcher .btn-ghost:hover:not(:disabled){background:#2a2a2e;color:#e0e0e0}.builder-launcher .modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:1rem;background:#000000a6;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:builder-launcher-fade-in .15s ease}.builder-launcher .modal{width:min(100%,480px);background:#212124;border:1px solid #343438;border-radius:14px;box-shadow:0 32px 80px #0000008c;display:grid;gap:0;overflow:hidden;animation:builder-launcher-slide-up .18s cubic-bezier(.22,1,.36,1)}.builder-launcher .modal-header{display:flex;align-items:center;gap:.65rem;padding:1rem 1.1rem;border-bottom:1px solid #2e2e32}.builder-launcher .modal-header-icon{width:30px;height:30px;border-radius:8px;background:#31a8ff1f;border:1px solid rgba(49,168,255,.2);display:grid;place-items:center;flex-shrink:0}.builder-launcher .modal-title{margin:0;flex:1;font-size:.92rem;font-weight:600;color:#efefef;letter-spacing:.01em}.builder-launcher .modal-close{width:28px;height:28px;border-radius:6px;background:transparent;border:1px solid #383838;color:#888;display:grid;place-items:center;padding:0;flex-shrink:0}.builder-launcher .modal-close:hover{background:#2e2e32;color:#ccc}.builder-launcher .modal-form{display:grid;gap:1rem;padding:1.1rem}.builder-launcher .field{display:grid;gap:.38rem}.builder-launcher .field-label{font-size:.74rem;font-weight:600;color:#999;text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:.4rem}.builder-launcher .field-label-hint{font-size:.68rem;font-weight:400;color:#555;text-transform:none;letter-spacing:0}.builder-launcher .field-input{height:38px;padding:0 .75rem;background:#191919;border:1px solid #333336;border-radius:8px;color:#e8e8e8;font:inherit;font-size:.86rem;transition:border-color .15s,box-shadow .15s;width:100%}.builder-launcher .field-input::placeholder{color:#444}.builder-launcher .field-input:focus{outline:none;border-color:#31a8ff;box-shadow:0 0 0 3px #31a8ff26}.builder-launcher .experience-options{display:grid;gap:.65rem}.builder-launcher .experience-option{display:flex;align-items:flex-start;gap:.75rem;width:100%;padding:.9rem;border-radius:12px;border:1px solid #333336;background:#191919;color:#d9d9d9;text-align:left;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s}.builder-launcher .experience-option:hover{border-color:#4a4a52;background:#1d1d20}.builder-launcher .experience-option-active{border-color:#31a8ff;background:#31a8ff1a;box-shadow:0 0 0 3px #31a8ff1f}.builder-launcher .experience-option-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:#31a8ff24;color:#8dccff;font-size:.95rem;flex-shrink:0}.builder-launcher .experience-option-copy{display:grid;gap:.18rem}.builder-launcher .experience-option-copy strong{font-size:.86rem;font-weight:700;color:#f2f2f2}.builder-launcher .experience-option-copy small{font-size:.75rem;line-height:1.45;color:#9a9aa3}.builder-launcher .modal-actions{display:flex;justify-content:flex-end;gap:.55rem;padding-top:.25rem}@keyframes builder-launcher-spin{to{transform:rotate(360deg)}}@keyframes builder-launcher-fade-in{0%{opacity:0}to{opacity:1}}@keyframes builder-launcher-slide-up{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 640px){.builder-launcher .content{padding:1rem}.builder-launcher .section-header{flex-direction:column;align-items:flex-start}.builder-launcher .search-input{width:100%}.builder-launcher .grid{grid-template-columns:1fr}.builder-launcher .topbar-stats{display:none}}.viewport.svelte-ggoylj{width:100%;height:100%;min-height:300px;border-radius:6px;border:1px solid #4a4a4a;overflow:hidden;background:linear-gradient(160deg,#2b2b2b,#232323)}.preview-column.svelte-14oxxxk.svelte-14oxxxk{position:absolute;top:0;right:0;bottom:0;left:0;z-index:12;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:.75rem;padding:.8rem;background:radial-gradient(circle at top,rgba(49,168,255,.12),transparent 34%),linear-gradient(180deg,#141416,#101114)}.preview-toolbar.svelte-14oxxxk.svelte-14oxxxk,.preview-footer.svelte-14oxxxk.svelte-14oxxxk{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.9rem 1rem;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:#141416e0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.preview-copy.svelte-14oxxxk.svelte-14oxxxk{min-width:0}.preview-copy.svelte-14oxxxk h2.svelte-14oxxxk{margin:.45rem 0 .3rem;font-size:1rem;font-weight:700;color:#f3f4f6}.preview-copy.svelte-14oxxxk p.svelte-14oxxxk{margin:0;max-width:720px;color:#9ca3af;line-height:1.45}.preview-chip.svelte-14oxxxk.svelte-14oxxxk{display:inline-flex;align-items:center;padding:.22rem .52rem;border-radius:999px;background:#31a8ff24;border:1px solid rgba(49,168,255,.26);color:#8ad1ff;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.preview-actions.svelte-14oxxxk.svelte-14oxxxk{display:inline-flex;align-items:center;gap:.5rem}.preview-reset-btn.svelte-14oxxxk.svelte-14oxxxk{background:linear-gradient(180deg,#31a8ff2e,#31a8ff1a);border-color:#31a8ff47;color:#e5f4ff}.preview-frame.svelte-14oxxxk.svelte-14oxxxk{min-height:0;padding:.5rem;border-radius:18px;background:linear-gradient(180deg,#ffffff08,#ffffff03),#0f1012;border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 1px #ffffff0a}.preview-footer.svelte-14oxxxk.svelte-14oxxxk{padding-top:.7rem;padding-bottom:.7rem}.preview-status.svelte-14oxxxk.svelte-14oxxxk{display:inline-flex;align-items:center;gap:.45rem;color:#d1d5db;min-width:0}.preview-hints.svelte-14oxxxk.svelte-14oxxxk{display:inline-flex;align-items:center;gap:.8rem;color:#7d8592;font-size:.74rem;flex-wrap:wrap;justify-content:flex-end}@media (max-width: 920px){.preview-toolbar.svelte-14oxxxk.svelte-14oxxxk,.preview-footer.svelte-14oxxxk.svelte-14oxxxk{flex-direction:column;align-items:flex-start}.preview-actions.svelte-14oxxxk.svelte-14oxxxk,.preview-hints.svelte-14oxxxk.svelte-14oxxxk{width:100%;justify-content:flex-start}}.experience-help.svelte-1h2ytzs.svelte-1h2ytzs{margin:0 0 .9rem;font-size:.78rem;line-height:1.45;color:#e2e8f0b3}.mv-section-header.svelte-1h2ytzs.svelte-1h2ytzs{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.5rem .6rem;margin-top:.6rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:5px;color:#e2e8f0e6;font-size:.8rem;font-weight:600;letter-spacing:.03em;cursor:pointer;text-align:left}.mv-section-header.svelte-1h2ytzs.svelte-1h2ytzs:hover{background:#ffffff12}.mv-chevron.svelte-1h2ytzs.svelte-1h2ytzs{font-size:.7rem;transition:transform .18s;display:inline-block;opacity:.6}.mv-chevron.open.svelte-1h2ytzs.svelte-1h2ytzs{transform:rotate(90deg)}.mv-section.svelte-1h2ytzs.svelte-1h2ytzs{padding:.55rem .2rem .3rem}.checkbox-row.svelte-1h2ytzs.svelte-1h2ytzs{display:flex;align-items:center;gap:.65rem;margin-bottom:.65rem;color:#e2e8f0e0;font-size:.82rem;cursor:pointer}.checkbox-row.svelte-1h2ytzs input.svelte-1h2ytzs{width:14px;height:14px;flex-shrink:0}.field-hint.svelte-1h2ytzs.svelte-1h2ytzs{margin:.1rem 0 .6rem;font-size:.72rem;color:#e2e8f073;line-height:1.4}.ann-list.svelte-1h2ytzs.svelte-1h2ytzs{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.6rem}.ann-item.svelte-1h2ytzs.svelte-1h2ytzs{display:flex;align-items:center;gap:.55rem;width:100%;padding:.42rem .55rem;border-radius:5px;border:1px solid rgba(255,255,255,.07);background:#ffffff08;color:#e2e8f0d9;font-size:.8rem;cursor:pointer;text-align:left}.ann-item.svelte-1h2ytzs.svelte-1h2ytzs:hover{background:#ffffff12}.ann-item-selected.svelte-1h2ytzs.svelte-1h2ytzs{border-color:#14b8a680;background:#14b8a614}.ann-dot.svelte-1h2ytzs.svelte-1h2ytzs{width:8px;height:8px;border-radius:50%;background:#14b8a6;flex-shrink:0}.ann-item-label.svelte-1h2ytzs.svelte-1h2ytzs{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ann-delete-btn.svelte-1h2ytzs.svelte-1h2ytzs{background:none;border:none;color:#e2e8f059;font-size:.72rem;cursor:pointer;padding:0 2px;line-height:1;flex-shrink:0}.ann-delete-btn.svelte-1h2ytzs.svelte-1h2ytzs:hover{color:#ef4444}.ann-editor.svelte-1h2ytzs.svelte-1h2ytzs{padding:.4rem 0 0;border-top:1px solid rgba(255,255,255,.06);margin-top:.3rem}.ann-textarea.svelte-1h2ytzs.svelte-1h2ytzs{resize:vertical;min-height:56px;font-family:inherit}.mv-editor-wrap.svelte-1nxq6mh.svelte-1nxq6mh{width:100%;height:100%;position:relative}.mv-empty-state.svelte-1nxq6mh.svelte-1nxq6mh{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;color:#e2e8f080;pointer-events:none}.mv-empty-icon.svelte-1nxq6mh.svelte-1nxq6mh{opacity:.4}.mv-empty-state.svelte-1nxq6mh p.svelte-1nxq6mh{margin:0;font-size:.88rem;text-align:center}.mv-empty-hint.svelte-1nxq6mh.svelte-1nxq6mh{font-size:.74rem!important;opacity:.6}.mv-loading-overlay.svelte-1nxq6mh.svelte-1nxq6mh{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0006;pointer-events:none;border-radius:6px}.mv-spinner.svelte-1nxq6mh.svelte-1nxq6mh{width:36px;height:36px;border-radius:50%;border:3px solid rgba(20,184,166,.2);border-top-color:#14b8a6;animation:svelte-1nxq6mh-spin .9s linear infinite}@keyframes svelte-1nxq6mh-spin{to{transform:rotate(360deg)}}.mv-annotate-hint.svelte-1nxq6mh.svelte-1nxq6mh{position:absolute;bottom:44px;left:50%;transform:translate(-50%);background:#14b8a6e6;color:#042f2e;font-size:.78rem;font-weight:700;padding:.35rem .9rem;border-radius:999px;pointer-events:none;white-space:nowrap}.fed-root{display:flex;flex-direction:row;width:100%;height:100%;flex:1;min-height:0;background:#07080d;overflow:hidden}.fed-palette{width:220px;flex-shrink:0;background:#0c0d14;border-right:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;overflow:hidden;transition:width .18s ease}.fed-palette-closed{width:40px}.pal-header{display:flex;align-items:center;gap:.5rem;padding:.6rem .7rem .5rem;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.pal-toggle{width:24px;height:24px;border-radius:5px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#6060a0;cursor:pointer;transition:border-color .1s,color .1s;flex-shrink:0}.pal-toggle:hover{border-color:#ffffff2e;color:#c0c0e0}.pal-header-title{font-size:.72rem;font-weight:700;color:#8888b0;letter-spacing:.06em;text-transform:uppercase}.pal-section{padding:.55rem .7rem .4rem;border-bottom:1px solid rgba(255,255,255,.04);display:flex;flex-direction:column;gap:.25rem;flex-shrink:0}.pal-section-label{display:flex;align-items:center;gap:.28rem;margin:0 0 .3rem;font-size:.59rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#44446a}.pal-empty-note{font-size:.64rem;color:#30304a;margin:0;padding:.25rem 0}.pal-node-chip{display:flex;align-items:center;gap:.35rem;padding:.38rem .48rem;border-radius:8px;border:1px solid transparent;background:#ffffff08;cursor:pointer;text-align:left;min-width:0;transition:background .12s,border-color .12s}.pal-node-chip:hover{background:#ffffff12}.pal-chip-selected{border-color:#3b82f659!important;background:#3b82f614!important}.pal-chip-scene svg{color:#60a5fa;flex-shrink:0}.pal-chip-trigger svg{color:#a78bfa;flex-shrink:0}.pal-chip-action svg{color:#34d399;flex-shrink:0}.pal-chip-name{font-size:.69rem;font-weight:600;color:#d0d0e8;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pal-chip-type{font-size:.58rem;color:#45456a;flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80px}.pal-hint{display:flex;align-items:flex-start;gap:.38rem;margin:auto .7rem .7rem;padding:.5rem .55rem;border-radius:8px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);font-size:.63rem;color:#45456a;line-height:1.5}.pal-hint strong{color:#7070c0}.fed-canvas-col{flex:1;min-width:0;display:flex;flex-direction:column;min-height:0}.fed-topbar{height:46px;flex-shrink:0;display:flex;align-items:center;gap:.5rem;padding:0 .8rem;background:#0a0b12f7;border-bottom:1px solid rgba(255,255,255,.06)}.fed-zoom-group{display:flex;align-items:center;gap:.12rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:.18rem .2rem}.fed-tb-btn{width:26px;height:26px;border:none;background:transparent;color:#7070a0;border-radius:5px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .1s,color .1s}.fed-tb-btn:hover{background:#ffffff12;color:#e0e0ec}.fed-zoom-pct{min-width:3rem;text-align:center;font-size:.68rem;color:#a0a0c0;font-variant-numeric:tabular-nums}.fed-tb-divider{width:1px;height:18px;background:#ffffff12;flex-shrink:0}.fed-tb-pill{display:flex;align-items:center;gap:.3rem;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#8888b0;border-radius:7px;padding:.26rem .52rem;font-size:.67rem;cursor:pointer;transition:border-color .1s,color .1s}.fed-tb-pill:hover{border-color:#ffffff2e;color:#e0e0ec}.fed-topbar-spacer{flex:1}.fed-legend{display:flex;align-items:center;gap:.32rem}.fed-leg{display:flex;align-items:center;gap:.26rem;font-size:.6rem;font-weight:700;letter-spacing:.04em}.fed-leg-dot{width:7px;height:7px;border-radius:50%}.fed-leg-scene{color:#60a5fa}.fed-leg-scene .fed-leg-dot{background:#3b82f6}.fed-leg-trigger{color:#a78bfa}.fed-leg-trigger .fed-leg-dot{background:#8b5cf6}.fed-leg-action{color:#34d399}.fed-leg-action .fed-leg-dot{background:#10b981}.fed-leg-arrow{font-size:.58rem;color:#2c2c48}.fed-topbar-hint{font-size:.61rem;color:#35354e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fed-canvas{flex:1;min-height:0;position:relative;overflow:hidden;cursor:grab;background:radial-gradient(circle at 1.5px 1.5px,rgba(255,255,255,.05) 1.5px,transparent 1.5px) 0 0 / 24px 24px,#07080d}.fed-canvas-pan{cursor:grabbing}.fed-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;padding:2rem;text-align:center}.fed-empty-visual{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.fed-empty-node{width:80px;border-radius:8px;overflow:hidden;opacity:.25}.fed-empty-node-head{height:28px}.fed-empty-node-body{height:38px}.fed-empty-node-a .fed-empty-node-head{background:#3b82f680}.fed-empty-node-a .fed-empty-node-body{background:#3b82f626}.fed-empty-node-b .fed-empty-node-head{background:#8b5cf680}.fed-empty-node-b .fed-empty-node-body{background:#8b5cf626}.fed-empty-node-c .fed-empty-node-head{background:#10b98180}.fed-empty-node-c .fed-empty-node-body{background:#10b98126}.fed-empty-arrow{font-size:1.2rem;color:#2a2a44}.fed-empty-title{margin:0;font-size:.86rem;font-weight:700;color:#4a4a6a}.fed-empty-body{margin:0;font-size:.7rem;color:#30304a;line-height:1.6;max-width:280px}.fed-empty-body strong{color:#6060a0}.fed-world{position:absolute;top:0;left:0;transform-origin:top left;will-change:transform}.fed-svg{position:absolute;top:0;left:0;overflow:visible;pointer-events:none}.fed-edge{fill:none;stroke:#50506e73;stroke-width:2;stroke-linecap:round}.fed-edge-active{stroke:#3b82f6;stroke-width:2.5}.fed-elbl-bg{fill:#06070eeb;stroke:#3c508c4d;stroke-width:1}.fed-elbl-bg-act{stroke:#3b82f680}.fed-elbl-txt{font-size:10px;font-weight:700;fill:#6b7280;text-anchor:middle;letter-spacing:.04em}.fed-elbl-txt-act{fill:#93c5fd}.fn{position:absolute;display:flex;flex-direction:column;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#0e0f18;overflow:hidden;box-shadow:0 6px 28px #0009,0 1px 4px #0000004d;transition:border-color .15s,box-shadow .15s;-webkit-user-select:none;user-select:none}.fn:not(.fn-dragging):hover{border-color:#fff3;box-shadow:0 8px 36px #000000b3}.fn-dragging{box-shadow:0 16px 48px #000c,0 0 0 2px #ffffff26!important;z-index:999;cursor:grabbing}.fn-active{border-color:#3b82f6a6!important;box-shadow:0 0 0 3px #3b82f633,0 8px 36px #000000b3!important}.fn-locked{filter:saturate(.35) brightness(.6)}.fn-scene{border-color:#3b82f633}.fn-scene .fn-head{background:linear-gradient(90deg,#3b82f62e,#3b82f61a);border-bottom-color:#3b82f62e}.fn-scene .fn-head-icon{background:#3b82f633;border-color:#3b82f659;color:#60a5fa}.fn-scene .fn-head-type{color:#93c5fd}.fn-scene .fn-port{color:#3b82f6}.fn-trigger{border-color:#8b5cf633}.fn-trigger .fn-head{background:linear-gradient(90deg,#8b5cf62e,#8b5cf61a);border-bottom-color:#8b5cf62e}.fn-trigger .fn-head-icon{background:#8b5cf633;border-color:#8b5cf659;color:#a78bfa}.fn-trigger .fn-head-type{color:#c4b5fd}.fn-trigger .fn-port{color:#8b5cf6}.fn-action{border-color:#10b98133}.fn-action .fn-head{background:linear-gradient(90deg,#10b98129,#10b98114);border-bottom-color:#10b98129}.fn-action .fn-head-icon{background:#10b9812e;border-color:#10b9814d;color:#34d399}.fn-action .fn-head-type{color:#6ee7b7}.fn-action .fn-port{color:#10b981}.fn-empty{border-color:#ffffff14;border-style:dashed}.fn-empty .fn-head{background:#ffffff08;border-bottom-color:#ffffff0f}.fn-empty .fn-head-icon{background:#ffffff0d;border-color:#ffffff1a;color:#5050a0}.fn-empty .fn-head-type{color:#4545a0}.fn-empty .fn-port{color:#303060}.fn-head{display:flex;align-items:center;gap:.42rem;height:38px;padding:0 .65rem;flex-shrink:0;border-bottom:1px solid transparent;cursor:grab}.fn-head:active{cursor:grabbing}.fn-head-icon{width:24px;height:24px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid transparent}.fn-head-labels{flex:1;min-width:0}.fn-head-type{font-size:.6rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em}.fn-head-badge{flex-shrink:0}.fn-badge-lock{color:#ffffff40}.fn-head-add{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(59,130,246,.35);background:#3b82f61f;color:#93c5fd;border-radius:5px;cursor:pointer;transition:background .12s}.fn-head-add:hover{background:#3b82f647}.fn-drag-handle{color:#ffffff1f;flex-shrink:0;cursor:grab}.fn-drag-handle:active{cursor:grabbing}.fn-body{flex:1;display:flex;flex-direction:column;justify-content:center;gap:.2rem;padding:.45rem .65rem;cursor:pointer}.fn-body:hover{background:#ffffff04}.fn-title{margin:0;font-size:.76rem;font-weight:600;color:#e4e4f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fn-sub{margin:0;font-size:.65rem;color:#5858a0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fn-port{position:absolute;top:50%;transform:translateY(-50%);width:12px;height:12px;border-radius:50%;border:2.5px solid currentColor;background:#07080d;pointer-events:none;z-index:1}.fn-port-l{left:-6px}.fn-port-r{right:-6px}.fed-insp{width:290px;flex-shrink:0;background:#0c0d14;border-left:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;overflow:hidden;transition:width .18s ease;position:relative}.fed-insp-closed{width:40px}.insp-toggle{position:absolute;top:.6rem;left:.6rem;z-index:2;width:24px;height:24px;border-radius:5px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#6060a0;cursor:pointer;flex-shrink:0;transition:border-color .1s,color .1s}.insp-toggle:hover{border-color:#ffffff2e;color:#c0c0e0}.insp-placeholder{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.65rem;padding:3rem 1.5rem 1.5rem}.insp-ph-icon{color:#1e1e36}.insp-ph-title{margin:0;font-size:.78rem;font-weight:700;color:#35355a}.insp-ph-body{margin:0;font-size:.67rem;color:#28284a;line-height:1.55}.insp-ph-body strong{color:#6060a0}.insp-hd{display:flex;align-items:center;gap:.5rem;padding:2.8rem .75rem .6rem;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.insp-hd-avatar{width:32px;height:32px;flex-shrink:0;background:#3b82f626;border:1px solid rgba(59,130,246,.28);border-radius:8px;color:#60a5fa;display:flex;align-items:center;justify-content:center}.insp-hd-meta{flex:1;min-width:0}.insp-hd-name{margin:0;font-size:.74rem;font-weight:700;color:#eeeef8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.insp-hd-type{margin:.1rem 0 0;font-size:.6rem;color:#44446a}.insp-add-btn{flex-shrink:0;display:flex;align-items:center;gap:.26rem;border:1px solid rgba(59,130,246,.32);background:#3b82f624;color:#93c5fd;border-radius:7px;padding:.3rem .5rem;font-size:.63rem;font-weight:600;cursor:pointer;transition:background .12s}.insp-add-btn:hover:not(:disabled){background:#3b82f647}.insp-add-btn:disabled{opacity:.42;cursor:not-allowed}.insp-sim{display:flex;align-items:flex-start;gap:.38rem;margin:.5rem .7rem 0;padding:.42rem .52rem;border-radius:8px;background:#6366f11f;border:1px solid rgba(99,102,241,.28);color:#c7d2fe;font-size:.65rem;line-height:1.4;flex-shrink:0}.insp-rules-empty{margin:.6rem .7rem 0;padding:.65rem;border-radius:9px;border:1px dashed rgba(255,255,255,.07);background:#ffffff04;font-size:.67rem;color:#38386a;line-height:1.55;flex-shrink:0}.insp-rules-empty p{margin:0}.insp-rules-empty p+p{margin-top:.18rem}.insp-rules-empty strong{color:#6060b0}.insp-rule-list{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:.45rem;padding:.55rem .7rem .7rem}.insp-rule-list::-webkit-scrollbar{width:3px}.insp-rule-list::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:2px}.insp-rule{background:#10111a;border:1px solid rgba(255,255,255,.07);border-radius:10px;padding:.55rem .6rem;display:flex;flex-direction:column;gap:.4rem;flex-shrink:0}.insp-rule-active{border-color:#3b82f66b;background:#0d0e18;box-shadow:0 0 0 1px #3b82f624 inset}.insp-rule-hd{display:flex;align-items:center;justify-content:space-between;gap:.4rem}.insp-rule-hd-left{display:flex;align-items:center;gap:.25rem;min-width:0;overflow:hidden}.insp-rule-num{font-size:.56rem;font-weight:700;color:#38386a;background:#ffffff0a;border:1px solid rgba(255,255,255,.07);border-radius:4px;padding:.1rem .26rem;flex-shrink:0}.insp-pill{font-size:.56rem;font-weight:700;letter-spacing:.05em;padding:.12rem .36rem;border-radius:99px;white-space:nowrap;flex-shrink:0}.insp-pill-t{background:#371c648c;color:#c4b5fd;border:1px solid rgba(139,92,246,.28)}.insp-pill-a{background:#063c3280;color:#6ee7b7;border:1px solid rgba(16,185,129,.26)}.insp-rule-focus{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#44447a;border-radius:5px;cursor:pointer;transition:border-color .1s,color .1s}.insp-rule-focus:hover{border-color:#fff3;color:#c0c0e0}.insp-fields{display:grid;grid-template-columns:1fr 1fr;gap:.35rem}.insp-fields-play{margin-top:.1rem}.insp-field{display:flex;flex-direction:column;gap:.18rem}.insp-field-lbl{display:flex;align-items:center;gap:.2rem;font-size:.59rem;font-weight:600;color:#44446a;letter-spacing:.03em}.insp-ctrl{border:1px solid rgba(255,255,255,.1);background:#080910;color:#d0d0ec;font-size:.67rem;border-radius:7px;padding:.28rem .38rem;min-width:0;width:100%;transition:border-color .12s}.insp-ctrl:focus{outline:none;border-color:#3b82f67a}.insp-ctrl:disabled{opacity:.45;cursor:not-allowed}.insp-play-hint{margin:0;font-size:.6rem;color:#494982;line-height:1.5}.insp-rule-btns{display:flex;justify-content:flex-end;gap:.32rem}.insp-btn{display:flex;align-items:center;gap:.22rem;border-radius:6px;padding:.24rem .44rem;font-size:.62rem;font-weight:500;cursor:pointer;transition:background .12s,border-color .12s}.insp-btn:disabled{opacity:.42;cursor:not-allowed}.insp-btn-sim{border:1px solid rgba(16,185,129,.26);background:#043a2c33;color:#6ee7b7}.insp-btn-sim:hover:not(:disabled){background:#043a2c66;border-color:#10b9817a}.insp-btn-del{border:1px solid rgba(239,68,68,.24);background:#64141429;color:#fca5a5}.insp-btn-del:hover:not(:disabled){background:#6414145c;border-color:#ef444475}@media (max-width: 1100px){.fed-palette{display:none}.fed-insp{width:260px}.fed-legend,.fed-topbar-hint{display:none}}@media (max-width: 800px){.fed-root{flex-direction:column}.fed-insp{width:100%;height:240px;border-left:none;border-top:1px solid rgba(255,255,255,.06)}}
