@import "https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;600;700&family=DM+Mono:wght@400;500&display=swap";.landing-page{background:var(--bg-base);width:100%;min-height:100vh;color:var(--text-primary);flex-direction:column;display:flex;position:relative;overflow-x:hidden}.landing-page:before{content:"";pointer-events:none;z-index:1;background:radial-gradient(circle,#7c5cfc14 0%,#0000 70%);width:600px;height:600px;position:absolute;top:-10%;right:-10%}.landing-page:after{content:"";pointer-events:none;z-index:1;background:radial-gradient(circle,#1111180a 0%,#0000 70%);width:500px;height:500px;position:absolute;bottom:10%;left:-5%}.landing-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-subtle);z-index:100;box-sizing:border-box;background:#222;justify-content:space-between;align-items:center;width:100%;height:64px;padding:0 40px;display:flex;position:sticky;top:0}.landing-header__brand{cursor:pointer;align-items:center;gap:10px;display:flex}.landing-header__logo{background:var(--brand);border-radius:var(--radius-md);color:#fff;width:28px;height:28px;box-shadow:0 4px 10px var(--brand-glow);justify-content:center;align-items:center;display:flex}.landing-header__name{letter-spacing:-.3px;font-size:16px;font-weight:700}.landing-header__nav{align-items:center;gap:24px;display:flex}.landing-header__link{color:var(--text-secondary);transition:color var(--duration-fast);cursor:pointer;font-size:14px;font-weight:500;text-decoration:none}.landing-header__link:hover{color:var(--text-primary)}.landing-header__btn{background:var(--secondary-color);color:#fff;border-radius:var(--radius-md);cursor:pointer;height:36px;transition:opacity var(--duration-fast);border:none;padding:0 16px;font-size:13.5px;font-weight:600}.landing-header__btn:hover{opacity:.88}.landing-hero{text-align:center;z-index:10;flex-direction:column;align-items:center;max-width:1100px;margin:0 auto;padding:80px 20px 40px;display:flex;position:relative}.landing-hero__tag{background:var(--brand-subtle);border-radius:var(--radius-full);letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary);border:1px solid #11111814;align-items:center;margin-bottom:24px;padding:6px 12px;font-size:11px;font-weight:700;display:inline-flex}.landing-hero__title{letter-spacing:-1.5px;color:var(--text-primary);max-width:800px;margin:0 0 20px;font-size:52px;font-weight:800;line-height:1.15}.landing-hero__subtitle{color:var(--text-secondary);max-width:700px;margin:0 0 36px;font-size:18px;line-height:1.6}.landing-hero__actions{gap:16px;margin-bottom:60px;display:flex}.landing-hero__cta-primary{background:var(--primary-color);color:#fff;border-radius:var(--radius-lg);cursor:pointer;height:48px;box-shadow:0 4px 14px var(--brand-glow);transition:opacity var(--duration-fast), transform var(--duration-fast);border:none;padding:0 28px;font-size:15px;font-weight:600}.landing-hero__cta-primary:hover{opacity:.9;transform:translateY(-1px)}.landing-preview{background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--radius-xl);width:100%;max-width:960px;box-shadow:var(--shadow-lg);box-sizing:border-box;margin-bottom:80px;padding:12px}.landing-preview__window{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--bg-base);flex-direction:column;width:100%;display:flex;overflow:hidden}.landing-preview__header{background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);align-items:center;gap:8px;height:40px;padding:0 16px;display:flex}.landing-preview__dot{border-radius:50%;width:10px;height:10px}.landing-preview__body{background:var(--bg-surface);height:380px;display:flex}.landing-preview__sidebar{border-right:1px solid var(--border-subtle);background:var(--bg-elevated);flex-direction:column;gap:8px;width:160px;padding:16px 12px;display:flex}.landing-preview__bar{border-radius:var(--radius-sm);background:var(--bg-hover);height:24px}.landing-preview__content{flex-direction:column;flex:1;gap:20px;padding:24px;display:flex}.landing-preview__grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.landing-preview__card{border:1px dashed var(--border-default);border-radius:var(--radius-md);background:var(--bg-elevated);height:120px}.landing-features{z-index:10;flex-direction:column;align-items:center;max-width:1100px;margin:0 auto 80px;padding:0 20px;display:flex}.landing-features__title{letter-spacing:-.5px;margin-bottom:48px;font-size:28px;font-weight:800}.landing-features__grid{grid-template-columns:repeat(3,1fr);gap:32px;width:100%;display:grid}.landing-features__card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-sizing:border-box;text-align:left;transition:transform var(--duration-base) var(--ease), box-shadow var(--duration-base) var(--ease), border-color var(--duration-base) var(--ease);padding:32px}.landing-features__card:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong);transform:translateY(-4px)}.landing-features__icon{border-radius:var(--radius-md);background:var(--brand-subtle);width:44px;height:44px;color:var(--text-primary);justify-content:center;align-items:center;margin-bottom:20px;display:flex}.landing-features__name{margin:0 0 10px;font-size:18px;font-weight:700}.landing-features__desc{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.5}.landing-prompt-cta{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-sizing:border-box;text-align:center;width:100%;max-width:800px;box-shadow:var(--shadow-md);margin:0 auto 100px;padding:40px}.landing-prompt-cta__title{margin:0 0 12px;font-size:24px;font-weight:800}.landing-prompt-cta__desc{color:var(--text-secondary);margin:0 0 24px;font-size:14px}.landing-prompt-cta__input-group{gap:12px;max-width:600px;margin:0 auto;display:flex}.landing-prompt-cta__input{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-elevated);flex:1;height:44px;padding:0 16px;font-size:14px}.landing-prompt-cta__input:focus{border-color:var(--text-primary);outline:none}.landing-prompt-cta__btn{background:var(--bg-elevated);color:#fff;border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;border:none;height:44px;padding:0 20px;font-size:14px;font-weight:600}.landing-footer{border-top:1px solid var(--border-subtle);background:var(--bg-surface);margin-top:auto;padding:40px}.landing-footer__content{justify-content:space-between;align-items:center;max-width:1100px;margin:0 auto;display:flex}.landing-footer__copyright{color:var(--text-muted);font-size:13px}.landing-footer__links{gap:20px;display:flex}.landing-footer__link{color:var(--text-secondary);transition:color var(--duration-fast);font-size:13px;text-decoration:none}.landing-footer__link:hover{color:var(--text-primary)}.auth-page{background:var(--bg-base);justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:relative;overflow:hidden}.auth-page:before{content:"";background:radial-gradient(circle, var(--brand-glow) 0%, transparent 70%);z-index:1;pointer-events:none;width:350px;height:350px;position:absolute;top:10%;left:20%}.auth-page:after{content:"";z-index:1;pointer-events:none;background:radial-gradient(circle,#7c5cfc14 0%,#0000 70%);width:400px;height:400px;position:absolute;bottom:10%;right:15%}.auth-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);width:100%;max-width:400px;box-shadow:var(--shadow-lg);text-align:center;z-index:10;animation:authCardIn .4s var(--ease) both;flex-direction:column;align-items:center;padding:40px 32px;display:flex;position:relative}@keyframes authCardIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-card__logo{background:var(--brand);border-radius:var(--radius-md);color:#fff;width:42px;height:42px;box-shadow:0 4px 12px var(--brand-glow);justify-content:center;align-items:center;margin-bottom:24px;display:flex}.auth-card__title{color:var(--text-primary);letter-spacing:-.5px;margin-bottom:8px;font-size:24px;font-weight:700}.auth-card__subtitle{color:var(--text-secondary);margin-bottom:32px;font-size:13.5px;line-height:1.5}.auth-card__google-btn{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);width:100%;height:44px;color:var(--text-primary);transition:background var(--duration-fast) var(--ease), border-color var(--duration-fast) var(--ease), box-shadow var(--duration-fast) var(--ease), transform var(--duration-fast) var(--ease);cursor:pointer;justify-content:center;align-items:center;gap:12px;margin-bottom:24px;font-size:13.5px;font-weight:600;display:flex}.auth-card__google-btn:hover{background:var(--bg-hover);border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.auth-card__google-btn:active{transform:scale(.98)}.auth-card__google-icon{flex-shrink:0;width:18px;height:18px}.auth-card__divider{width:100%;color:var(--text-muted);align-items:center;margin-bottom:24px;font-size:11.5px;font-weight:500;display:flex}.auth-card__divider:before,.auth-card__divider:after{content:"";background:var(--border-subtle);flex:1;height:1px}.auth-card__divider:before{margin-right:12px}.auth-card__divider:after{margin-left:12px}.auth-card__footer-text{color:var(--text-secondary);font-size:13px}.auth-card__footer-link{color:var(--text-primary);cursor:pointer;transition:color var(--duration-fast) var(--ease);margin-left:4px;font-weight:600}.auth-card__footer-link:hover{color:var(--brand-hover);text-decoration:underline}.auth-card__form{text-align:left;flex-direction:column;gap:16px;width:100%;margin-bottom:24px;display:flex}.auth-card__form-group{flex-direction:column;gap:6px;display:flex}.auth-card__label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:600}.auth-card__input{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);width:100%;height:40px;color:var(--text-primary);transition:border-color var(--duration-fast) var(--ease), box-shadow var(--duration-fast) var(--ease), background var(--duration-fast) var(--ease);padding:0 12px;font-size:14px}.auth-card__input:focus{background:var(--bg-surface);border-color:var(--text-primary);box-shadow:0 0 0 3px var(--brand-glow);outline:none}.auth-card__input--error{border-color:var(--danger)}.auth-card__input--error:focus{box-shadow:0 0 0 3px #dc262626}.auth-card__submit-btn{background:var(--text-primary);width:100%;height:44px;color:var(--text-inverse);border-radius:var(--radius-md);cursor:pointer;transition:opacity var(--duration-fast) var(--ease), transform var(--duration-fast) var(--ease);border:none;margin-top:8px;font-size:14px;font-weight:600}.auth-card__submit-btn:hover{opacity:.9}.auth-card__submit-btn:active{transform:scale(.98)}.auth-card__error-msg{color:var(--danger);border-radius:var(--radius-md);box-sizing:border-box;background:#dc262614;border:1px solid #dc262626;align-items:center;gap:6px;width:100%;padding:8px 12px;font-size:13px;display:flex}.auth-card__error-msg svg{flex-shrink:0}.field-error{color:var(--danger);font-size:12px;line-height:1.4}.animate-fade-in{animation:fadeIn .25s var(--ease) both}@keyframes fadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.google-chooser{width:100%;animation:fadeIn .3s var(--ease) both;flex-direction:column;align-items:center;display:flex}.google-chooser__list{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-elevated);flex-direction:column;width:100%;margin:20px 0;display:flex;overflow:hidden}.google-chooser__item{border:none;border-bottom:1px solid var(--border-subtle);cursor:pointer;text-align:left;width:100%;transition:background var(--duration-fast) var(--ease);background:0 0;align-items:center;gap:14px;padding:14px 18px;display:flex}.google-chooser__item:last-child{border-bottom:none}.google-chooser__item:hover{background:var(--bg-hover)}.google-chooser__avatar{background:var(--brand);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:600;display:flex}.google-chooser__info{flex-direction:column;flex:1;display:flex}.google-chooser__name{color:var(--text-primary);font-size:13.5px;font-weight:600}.google-chooser__email{color:var(--text-secondary);font-size:12px}.google-chooser__loading-indicator{color:var(--text-secondary);justify-content:center;align-items:center;gap:12px;padding:16px;font-size:14px;display:flex}.google-chooser__spinner{border:2px solid var(--border-subtle);border-top-color:var(--text-primary);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite googleSpin}@keyframes googleSpin{to{transform:rotate(360deg)}}.google-chooser__footer{flex-direction:column;align-items:center;gap:12px;width:100%;margin-top:10px;display:flex}.google-chooser__back-btn{color:var(--text-secondary);cursor:pointer;transition:color var(--duration-fast);background:0 0;border:none;font-size:13px;font-weight:500}.google-chooser__back-btn:hover{color:var(--text-primary);text-decoration:underline}.dashboard-hero{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;background:linear-gradient(135deg,#ff77e1,#ff9f43,#7bf5c0,#9a4dff);border:1px solid #ffffff14;border-radius:32px;justify-content:space-between;align-items:center;margin-bottom:48px;padding:48px 40px;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 24px #0006}.dashboard-hero__content{z-index:10;max-width:60%}.dashboard-hero__tag{letter-spacing:.1em;color:#a78bfa;background:#a78bfa1f;border-radius:9999px;margin-bottom:16px;padding:4px 10px;font-size:10px;font-weight:700}.dashboard-hero__title{margin-bottom:12px;font-size:28px;font-weight:700}.dashboard-tabs{border-bottom:1px solid var(--border-subtle);gap:12px;margin-bottom:24px;padding-bottom:8px;display:flex}.dashboard-tabs__item{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:background var(--duration-fast), color var(--duration-fast);background:0 0;border:none;padding:6px 12px;font-size:14px}.dashboard-tabs__item:hover{background:var(--bg-hover);color:var(--text-primary)}.dashboard-tabs__item--active{background:var(--bg-active);color:var(--text-primary);font-weight:600}.dashboard{flex:1;min-width:0;padding:28px 36px 60px;overflow-y:auto}.dashboard__breadcrumb{color:var(--text-muted);align-items:center;gap:5px;margin-bottom:20px;font-size:13px;display:flex}.dashboard__bc-link{color:var(--text-muted);cursor:pointer;transition:color var(--duration-fast)}.dashboard__bc-link:hover{color:var(--text-primary)}.dashboard__bc-current{color:var(--text-primary);font-weight:500}.dashboard__header{justify-content:space-between;align-items:flex-start;margin-bottom:24px;display:flex}.dashboard__title{color:var(--text-primary);letter-spacing:-.5px;font-size:26px;font-weight:700}.dashboard__subtitle{color:var(--text-secondary);margin-top:4px;font-size:13.5px}.dashboard__view-toggle{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);gap:2px;padding:3px;display:flex}.dashboard__view-btn{border-radius:var(--radius-sm);width:30px;height:30px;color:var(--text-muted);transition:background var(--duration-fast), color var(--duration-fast);justify-content:center;align-items:center;display:flex}.dashboard__view-btn:hover{color:var(--text-primary)}.dashboard__view-btn--active{background:var(--bg-active);color:var(--text-primary)}.dashboard__grid{grid-template-columns:repeat(3,1fr);gap:16px;max-width:960px;display:grid}.dashboard__grid--list{grid-template-columns:1fr}.project-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--duration-base), box-shadow var(--duration-base);text-align:left;flex-direction:column;gap:14px;padding:20px;display:flex}.project-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md)}.project-card--selected{border-color:var(--text-primary);box-shadow:0 0 0 1px var(--text-primary)}.project-card__header{justify-content:space-between;align-items:flex-start;display:flex}.project-card__icon{border:1.5px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-elevated);justify-content:center;align-items:center;width:44px;height:44px;display:flex}.project-card__initial{color:var(--text-primary);font-family:DM Mono,monospace;font-size:18px;font-weight:700}.project-card__badge{letter-spacing:.07em;border-radius:4px;padding:3px 8px;font-size:10px;font-weight:600}.project-card__body{flex-direction:column;flex:1;gap:6px;display:flex}.project-card__name{color:var(--text-primary);letter-spacing:-.2px;font-size:14.5px;font-weight:600}.project-card__desc{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.project-card__footer{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding-top:2px;display:flex}.project-card__avatars{display:flex}.project-card__avatar{background:var(--text-primary);border:2px solid var(--bg-surface);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;margin-left:-6px;font-size:10px;font-weight:600;display:flex}.project-card__avatar:first-child{margin-left:0}.project-card__avatar-count{color:#fff;font-size:9px;font-weight:700}.project-card__time{color:var(--text-muted);font-size:12px}.project-card__header-right{align-items:center;gap:6px;display:flex}.project-card__delete-btn{border-radius:var(--radius-sm);width:26px;height:26px;color:var(--text-muted);opacity:0;transition:opacity var(--duration-fast), color var(--duration-fast), background var(--duration-fast), border-color var(--duration-fast), transform var(--duration-fast);cursor:pointer;background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;display:flex}.project-card:hover .project-card__delete-btn{opacity:1}.project-card__delete-btn:hover{color:#ef4444;background:#ef444414;border-color:#ef444433}.project-card__delete-btn:active{transform:scale(.93)}.project-card__delete-btn--loading{opacity:1;cursor:not-allowed;color:var(--text-muted)}.project-card__delete-spinner{animation:.8s linear infinite deleteSpinAnim}@keyframes deleteSpinAnim{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.project-card__delete-error{color:#ef4444;margin-top:2px;font-size:12px}.project-card--new{border:1.5px dashed var(--border-default);background:0 0;justify-content:center;align-items:center;min-height:200px;display:flex}.project-card--new:hover{border-color:var(--border-strong);background:var(--bg-elevated);box-shadow:none}.project-card__new-inner{color:var(--text-muted);flex-direction:column;align-items:center;gap:10px;display:flex}.project-card__new-icon{justify-content:center;align-items:center;width:48px;height:48px;display:flex}.project-card__new-label{color:var(--text-secondary);font-size:13.5px;font-weight:500}.dashboard__state-card,.dashboard__form-shell{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--bg-surface);max-width:960px;margin-top:20px;padding:28px}.dashboard__state-title{color:var(--text-primary);margin-bottom:8px;font-size:22px}.dashboard__state-body{color:var(--text-secondary);margin-bottom:18px;font-size:14px;line-height:1.6}.dashboard__form-header{margin-bottom:22px}.dashboard__form-kicker{background:var(--bg-active);color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;align-items:center;padding:5px 10px;font-size:11px;font-weight:700;display:inline-flex}.dashboard__form{flex-direction:column;gap:18px;display:flex}.dashboard__field{color:var(--text-primary);flex-direction:column;gap:8px;font-size:13px;font-weight:600;display:flex}.dashboard__input,.dashboard__textarea{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-base);width:100%;color:var(--text-primary);font:inherit;padding:12px 14px}.dashboard__input:focus,.dashboard__textarea:focus{border-color:var(--border-strong);outline:none}.dashboard__textarea{resize:vertical;min-height:120px}.dashboard__form-actions{justify-content:flex-end;gap:12px;display:flex}.dashboard__error{color:#dc2626;font-size:13px;font-weight:600}.dashboard-hero{background:var(--bg-gradient);border-radius:26px;margin-bottom:22px;padding:26px 30px 80px;position:relative;overflow:hidden}.dashboard-hero:before{content:"";z-index:1;pointer-events:none;background:radial-gradient(circle,#7c5cfc26 0%,#0000 70%);width:250px;height:250px;position:absolute;top:-50px;right:-50px}.dashboard-hero__content{z-index:10;flex-direction:column;align-items:flex-start;max-width:60%;display:flex;position:relative}.dashboard-hero__tag{letter-spacing:.1em;color:#491fc7;border-radius:var(--radius-full);background:#a78bfa1f;margin-bottom:16px;padding:4px 10px;font-size:16px;font-weight:700}.dashboard-hero__title{letter-spacing:-.5px;margin-bottom:12px;font-size:26px;font-weight:700;line-height:1.2}.dashboard-hero__desc{color:#ffffffb3;margin-bottom:24px;font-size:13.5px;line-height:1.6}.dashboard-hero__cta{color:#111118;border-radius:var(--radius-md);height:38px;transition:background var(--duration-fast) var(--ease), box-shadow var(--duration-fast) var(--ease), transform var(--duration-fast) var(--ease);background:#fff;padding:0 20px;font-size:13px;font-weight:600}.dashboard-hero__cta:hover{background:#f0f0f3;box-shadow:0 4px 20px #ffffff26}.dashboard-hero__cta:active{transform:scale(.98)}.dashboard-hero__visual{z-index:10;color:#fff6;margin-right:20px;animation:3s ease-in-out infinite alternate heroPulse;position:relative}@keyframes heroPulse{0%{transform:translateY(0)scale(1)}to{transform:translateY(-5px)scale(1.02)}}.project-card--locked{position:relative;overflow:hidden}.project-card__badge--locked{border:1px solid var(--border-subtle);align-items:center;display:inline-flex;background:var(--bg-hover)!important;color:var(--text-muted)!important}.project-card__lock-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;transition:opacity var(--duration-base) var(--ease);color:var(--text-primary);z-index:20;background:#f4f4f5d9;flex-direction:column;justify-content:center;align-items:center;gap:10px;font-size:13px;font-weight:600;display:flex;position:absolute;inset:0}.project-card--locked:hover .project-card__lock-overlay{opacity:1}.project-card--locked-new{cursor:pointer;background:#fff3;border-style:dashed}.project-card--locked-new:hover{background:var(--bg-hover)}.chat{background:var(--bg-surface);border-right:1px solid var(--border-subtle);flex-direction:column;width:360px;min-width:360px;height:100%;display:flex;overflow:hidden}.chat__header{border-bottom:1px solid var(--border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;height:44px;padding:0 16px;display:flex}.chat__header-title{color:var(--text-secondary);letter-spacing:.03em;margin-left:22px;font-size:13px;font-weight:600}.chat__header-btn{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-muted);transition:background var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease);justify-content:center;align-items:center;display:flex}.chat__header-btn:hover{background:var(--bg-hover);color:var(--text-secondary)}.chat__header-btn--reset:hover{color:var(--danger,#e5484d)}.chat__socket-status{background:#e5484d;border-radius:50%;flex-shrink:0;width:7px;height:7px;transition:background .3s}.chat__socket-status--on{background:#30a46c}.chat__messages{flex-direction:column;flex:1;gap:14px;padding:16px 14px;display:flex;overflow-y:auto}.chat-quick-actions{flex-wrap:wrap;gap:6px;margin:6px 0 10px;display:flex}.chip{color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #35384a;border-radius:999px;padding:4px 8px;font-size:11px}.chip:disabled{opacity:.6;cursor:default}.msg{animation:msgIn .2s var(--ease) both;align-items:flex-start;gap:9px;display:flex}@keyframes msgIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.msg--user{flex-direction:row-reverse}.msg__avatar--ai{background:var(--brand-subtle);border:1px solid #7c5cfc33;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;margin-top:2px;display:flex}.msg__content-wrap{flex-direction:column;gap:4px;max-width:86%;display:flex}.msg--user .msg__content-wrap{align-items:flex-end}.msg__bubble{background:var(--bg-elevated);border:1px solid var(--border-subtle);color:var(--text-primary);white-space:pre-wrap;word-break:break-word;border-radius:12px 12px 12px 4px;padding:10px 13px;font-size:13px;line-height:1.55}.msg--user .msg__bubble{background:var(--brand-subtle);color:var(--text-primary);border-color:#7c5cfc33;border-radius:12px 12px 4px}.msg__time{color:var(--text-muted);padding:0 4px;font-size:10.5px}.msg__bubble :where(p,ul,ol){margin:0 0 6px}.msg__bubble :where(p,ul,ol):last-child{margin-bottom:0}.msg__bubble ul,.msg__bubble ol{padding-left:18px}.msg__bubble li{margin-bottom:2px}.msg__bubble code{background:#00000026;border-radius:4px;padding:1px 5px;font-family:SF Mono,Cascadia Code,Consolas,monospace;font-size:12px}.msg__bubble pre{background:#0003;border-radius:8px;margin:6px 0;padding:10px 12px;overflow-x:auto}.msg__bubble pre code{background:0 0;padding:0;font-size:12px;line-height:1.5}.msg__bubble strong{font-weight:600}.msg__bubble a{color:var(--brand);text-decoration:underline}.msg__bubble blockquote{border-left:3px solid var(--brand);opacity:.85;margin:6px 0;padding-left:10px}.msg__follow-ups{flex-direction:column;gap:10px;margin-top:6px;display:flex}.msg__follow-up-card{background:#7c5cfc14;border:1px solid #7c5cfc3d;border-radius:14px;padding:10px 12px}.msg__follow-up-question{color:var(--text-primary);margin-bottom:8px;font-size:12.5px;line-height:1.5}.msg__follow-up-options{flex-wrap:wrap;gap:8px;display:flex}.msg__follow-up-option{color:var(--text-primary);cursor:pointer;transition:border-color var(--duration-fast) var(--ease), background var(--duration-fast) var(--ease), transform var(--duration-fast) var(--ease);background:#0e0e19b8;border:1px solid #7c5cfc52;border-radius:999px;padding:6px 10px;font-size:11.5px;line-height:1.3}.msg__follow-up-option:hover{background:#7c5cfc29;border-color:#7c5cfc99;transform:translateY(-1px)}.msg__follow-up-option:disabled{opacity:.6;cursor:default;transform:none}.msg__follow-up-option--selected{color:#fff;background:#7c5cfc47;border-color:#7c5cfccc}.msg__follow-up-option--selected:hover{background:#7c5cfc5c;border-color:#7c5cfce6;transform:translateY(-1px)}.msg__follow-up-check{vertical-align:middle;flex-shrink:0;margin-right:4px}.msg__follow-up-index{color:var(--brand);opacity:.85;font-size:11px;font-weight:700}.msg__follow-up-submit-row{justify-content:space-between;align-items:center;gap:8px;margin-top:10px;display:flex}.msg__follow-up-count{color:var(--text-muted);font-size:11px}.msg__follow-up-submit{background:var(--brand);color:#fff;cursor:pointer;transition:background var(--duration-fast) var(--ease), box-shadow var(--duration-fast) var(--ease), transform var(--duration-fast) var(--ease);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:7px 14px;font-size:12px;font-weight:600;display:inline-flex}.msg__follow-up-submit:hover:not(:disabled){background:var(--brand-hover,#6b47f0);box-shadow:0 0 12px var(--brand-glow,#7c5cfc66);transform:translateY(-1px)}.msg__follow-up-submit:disabled{opacity:.7;cursor:default;pointer-events:none;transform:none}.msg__follow-up-submit-dot{background:#fff;border-radius:50%;width:5px;height:5px;animation:1.2s ease-in-out infinite typingBounce;display:inline-block}.msg__follow-up-submit-dot:nth-child(2){animation-delay:.15s}.msg__follow-up-submit-dot:nth-child(3){animation-delay:.3s}.msg__bubble--typing{align-items:center;gap:5px;padding:12px 14px;display:flex}.typing-dot{background:var(--text-muted);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite typingBounce}.typing-dot:nth-child(2){animation-delay:.15s}.typing-dot:nth-child(3){animation-delay:.3s}@keyframes typingBounce{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.prompt{border-top:1px solid var(--border-subtle);flex-shrink:0;padding:10px 12px 12px}.prompt__box{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-lg);transition:border-color var(--duration-fast) var(--ease), box-shadow var(--duration-fast) var(--ease);overflow:hidden}.prompt__box:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-subtle)}.prompt__textarea{width:100%;min-height:40px;max-height:160px;color:var(--text-primary);resize:none;background:0 0;border:none;padding:11px 14px 4px;font-size:13.5px;line-height:1.55;display:block;overflow-y:auto}.prompt__textarea::placeholder{color:var(--text-muted)}.prompt__textarea:disabled{opacity:.7;cursor:not-allowed}.prompt__toolbar{justify-content:space-between;align-items:center;padding:5px 8px 8px;display:flex}.prompt__toolbar-left{align-items:center;gap:2px;display:flex}.prompt__tool-btn{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-muted);transition:background var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease);justify-content:center;align-items:center;display:flex}.prompt__tool-btn:hover{background:var(--bg-hover);color:var(--text-secondary)}.prompt__model-select{border:1px solid var(--border-subtle,#30363d);border-radius:var(--radius-sm);color:var(--text-muted,#8b949e);cursor:pointer;transition:border-color var(--duration-fast) var(--ease);background:#21262d;outline:none;margin-left:4px;padding:2px 6px;font-size:11px}.prompt__model-select:hover,.prompt__model-select:focus{border-color:var(--border-accent,#1f6feb)}.prompt__send-btn{border-radius:var(--radius-md);background:var(--bg-active);width:30px;height:30px;color:var(--text-muted);transition:background var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease), box-shadow var(--duration-fast) var(--ease);justify-content:center;align-items:center;display:flex}.prompt__send-btn--active{background:var(--brand);color:#fff}.prompt__send-btn--active:hover{background:var(--brand-hover);box-shadow:0 0 12px var(--brand-glow)}.prompt__send-btn:disabled{opacity:1;pointer-events:none}.prompt__hint{color:var(--text-muted);text-align:center;margin-top:7px;font-size:10.5px}.chat__state-card{border:1px solid var(--border-subtle);background:var(--bg-elevated);border-radius:16px;padding:18px 16px}.chat__state-card--error{border-color:#ff5f5759}.chat__state-title{color:var(--text-primary);margin-bottom:6px;font-size:14px;font-weight:600}.chat__state-body{color:var(--text-muted);font-size:13px;line-height:1.6}.preview{background:var(--bg-base);flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.preview__content{background:#0e0e19;flex:1;padding:0;overflow-y:auto}.preview__content [role=tabpanel][hidden]{display:none}.preview-state-card{border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:18px;max-width:520px;padding:20px 18px}.preview-state-card--error{border-color:#ff5f5759}.preview-state-card__title{color:var(--text-primary);margin-bottom:8px;font-size:16px;font-weight:600}.preview-state-card__body{color:var(--text-muted);font-size:13px;line-height:1.6}.dash{max-width:900px;margin:0 auto;padding:28px 24px 40px}.dash__header{justify-content:space-between;align-items:flex-start;margin-bottom:22px;display:flex}.dash__title{color:#111;letter-spacing:-.5px;font-size:22px;font-weight:700}.dash__subtitle{color:#777;margin-top:2px;font-size:13px}.dash__export-btn{color:#444;cursor:pointer;background:#fff;border:1px solid #e0e0e5;border-radius:8px;height:34px;padding:0 14px;font-size:12.5px;font-weight:500;transition:border-color .12s,box-shadow .12s}.dash__export-btn:hover{border-color:#bbb;box-shadow:0 2px 6px #00000014}.dash__kpis{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px;display:grid}.kpi-card{background:#fff;border:1px solid #e8e8ec;border-radius:12px;flex-direction:column;gap:6px;padding:18px 16px;display:flex}.kpi-card__label{color:#888;text-transform:uppercase;letter-spacing:.05em;font-size:11.5px;font-weight:500}.kpi-card__value{color:#111;letter-spacing:-.5px;font-size:24px;font-weight:700;line-height:1}.kpi-card__delta{font-size:12px;font-weight:500}.kpi-card__delta--up{color:#16a34a}.kpi-card__delta--down{color:#dc2626}.dash__chart-card,.dash__table-card{background:#fff;border:1px solid #e8e8ec;border-radius:12px;margin-bottom:16px;padding:20px}.dash__chart-header{justify-content:space-between;align-items:baseline;margin-bottom:16px;display:flex}.dash__chart-title{color:#111;font-size:14px;font-weight:600}.dash__chart-sub{color:#999;font-size:12px}.dash__chart{align-items:flex-end;gap:6px;height:140px;display:flex}.bar-col{flex-direction:column;flex:1;align-items:center;gap:5px;height:100%;display:flex}.bar{border-radius:4px 4px 0 0;width:100%;transition:height .6s cubic-bezier(.34,1.56,.64,1);position:relative;overflow:hidden}.bar__fill{opacity:.85;background:linear-gradient(#7c5cfc 0%,#9f87ff 100%);border-radius:4px 4px 0 0;position:absolute;inset:0}.bar-col__label{color:#bbb;white-space:nowrap;font-size:9.5px}.dash__view-all{color:#7c5cfc;cursor:pointer;background:0 0;border:none;font-size:12px;font-weight:500}.orders-table{border-collapse:collapse;width:100%;font-size:13px}.orders-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:#aaa;border-bottom:1px solid #f0f0f2;padding:0 10px 10px;font-size:11px;font-weight:600}.orders-table td{color:#333;border-bottom:1px solid #f6f6f8;padding:11px 10px}.orders-table tr:last-child td{border-bottom:none}.orders-table tbody tr:hover td{background:#fafafa}.orders-table__id{color:#888;font-family:DM Mono,monospace;font-size:12px}.orders-table__product{color:#555}.orders-table__amount{color:#111;font-weight:600}.orders-table__badge{border-radius:99px;align-items:center;padding:2px 9px;font-size:11.5px;font-weight:500;display:inline-flex}.orders-table__badge--completed{color:#15803d;background:#dcfce7}.orders-table__badge--processing{color:#1d4ed8;background:#dbeafe}.orders-table__badge--pending{color:#a16207;background:#fef9c3}.dashboard-view{height:100%;padding:24px;overflow-y:auto}.dashboard-view__loading,.dashboard-view__error{color:var(--text-muted);padding:24px}.dashboard-view__error{color:#e5484d}.dashboard-view__stats{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:28px;display:grid}.dashboard-view__card{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:16px;display:flex}.dashboard-view__number{color:var(--text-primary);font-size:28px;font-weight:700}.dashboard-view__label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px}.dashboard-view__label a{color:var(--brand);text-decoration:underline}.dashboard-view__section-title{color:var(--text-secondary);margin-bottom:16px;font-size:14px;font-weight:600}.dashboard-view__timeline{flex-direction:column;gap:0;display:flex}.dashboard-view__event{border-left:2px solid var(--border-subtle);gap:12px;margin-left:6px;padding:10px 0 10px 20px;display:flex;position:relative}.dashboard-view__event:last-child{border-left-color:#0000}.dashboard-view__event-dot{background:var(--brand);border-radius:50%;width:10px;height:10px;position:absolute;top:14px;left:-6px}.dashboard-view__event-summary{color:var(--text-primary);font-size:13px;line-height:1.4}.dashboard-view__event-time{color:var(--text-muted);margin-top:2px;font-size:11px;display:block}.preview__header{background:var(--preview-header);border-radius:var(--radius-xl);color:var(--text-primary);padding:24px 32px}.preview__header-main{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.preview__header-copy{flex-direction:column;gap:8px;min-width:0;display:flex}.preview__title{margin:0;font-size:24px;font-weight:700}.preview__desc{color:var(--text-muted);margin:0;font-size:12px}.preview__header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.preview__header-btn{color:#c9d1d9;cursor:pointer;background:#21262d;border:1px solid #30363d;border-radius:6px;padding:6px 14px;font-size:13px;font-weight:600}.preview__header-btn:disabled{opacity:.55;cursor:not-allowed}.preview__download{color:var(--text-primary);letter-spacing:.02em;transition:transform var(--duration-fast) var(--ease), border-color var(--duration-fast) var(--ease);background:linear-gradient(135deg,#f6bb422e,#ffffff0f);border:1px solid #ffffff24;border-radius:999px;flex-shrink:0;padding:10px 16px;font-size:12px;font-weight:600}.preview__download:hover:not(:disabled){border-color:#f6bb4273;transform:translateY(-1px)}.preview__download:disabled{opacity:.55;cursor:not-allowed}@media (width<=720px){.preview__header-main{flex-direction:column;align-items:stretch}.preview__download{width:100%}}.preview__tabs{flex-wrap:wrap;gap:12px;margin:16px 0;padding-left:24px;display:flex}.preview__tab{cursor:pointer;border-radius:var(--radius-xl);background:var(--bg-surface);color:#fff;border:none;padding:8px 20px;font-size:14px;font-weight:500;transition:all .2s;position:relative;overflow:hidden}.preview__tab:after{content:"";background:var(--brand);opacity:0;border-radius:var(--radius-xl);transition:opacity .2s;position:absolute;inset:0}.preview__tab:hover:after{opacity:.08}.preview__tab--active{background:var(--brand);color:#fff}.preview__tab--active:after{opacity:.2}.preview__tab:focus-visible{outline-offset:2px;outline:2px solid #ffffff8f}.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#777;--xy-background-pattern-lines-color-default:#777;--xy-background-pattern-cross-color-default:#777;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}.architect-view{background:radial-gradient(circle at top right, #7c5cfc1f, transparent 28%), radial-gradient(circle at bottom left, #db4c7d14, transparent 24%), var(--bg-base);color:var(--text-primary);min-height:100%;padding:24px}.architect-view--state{justify-content:center;align-items:center;display:flex}.architect-view__canvas-shell{flex-direction:column;gap:16px;min-height:100%;display:flex}.architect-view__workspace{grid-template-columns:100%;align-items:start;gap:16px;display:grid}.architect-view__backdrop{z-index:99;-webkit-backdrop-filter:blur(6px);background:#00000073;position:fixed;inset:0}.architect-view__details{z-index:100;width:320px;margin:auto;position:fixed;top:50%;left:50%;right:0;transform:translate(-50%,-50%)}.architect-view__toolbar{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.architect-view__title{color:var(--text-primary);font-size:18px;font-weight:600}.architect-view__subtitle{color:var(--text-muted);margin-top:4px;font-size:13px;line-height:1.5}.architect-view__stats,.architect-view__relation-list{flex-wrap:wrap;gap:8px;display:flex}.architect-view__relation-chip{color:#d7ddf0;background:#7c5cfc1a;border:1px solid #7c5cfc3d;border-radius:999px;align-items:center;padding:6px 10px;font-size:12px;display:inline-flex}.architect-view__entity-list{flex-wrap:wrap;gap:10px;display:flex}.architect-view__entity-chip{color:#edf1fb;background:#0f0f18db;border:1px solid #7e8aa42e;border-radius:999px;align-items:center;padding:8px 12px;font-size:13px;display:inline-flex}.architect-view__entity-chip--active,.architect-view__entity-chip:hover,.architect-view__entity-chip:focus-visible{background:#7c5cfc2e;border-color:#7c5cfc57;outline:none}.architect-view__badge{text-align:center;min-width:28px;color:var(--text-muted);background:#12121ce0;border:1px solid #7e8aa42e;border-radius:999px;padding:6px 10px;font-size:12px}.architect-view__canvas{background:linear-gradient(180deg, #0d0d13eb, #07070bfa), var(--bg-surface);border:1px solid #7e8aa41f;border-radius:22px;height:min(78vh,980px);min-height:620px;overflow:hidden;box-shadow:inset 0 1px #ffffff08}.architect-view__details{background:linear-gradient(180deg, #101018f5, #09090efa), var(--bg-surface);border:1px solid #7e8aa424;border-radius:22px;flex-direction:column;gap:18px;min-height:620px;padding:20px;display:flex;box-shadow:0 18px 36px #0000003d,inset 0 1px #ffffff08}.architect-view__details-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.architect-view__details-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:#9aa3ba;font-size:11px}.architect-view__details-header h4{color:#f5f6fb;margin-top:6px;font-size:20px}.architect-view__details-close{width:34px;height:34px;color:var(--text-primary);background:#ffffff05;border:1px solid #7e8aa429;border-radius:999px;font-size:20px;line-height:1}.architect-view__details-section{flex-direction:column;gap:10px;display:flex}.architect-view__details-label{letter-spacing:.08em;text-transform:uppercase;color:#9aa3ba;font-size:11px}.architect-view__details-section strong{color:#f5f6fb}.architect-view__details-list{border-top:1px solid #7e8aa414;margin:0;padding:0;list-style:none}.architect-view__details-list li{color:var(--text-muted);border-bottom:1px solid #7e8aa414;justify-content:space-between;align-items:baseline;gap:12px;padding:12px 0;font-size:12px;display:flex}.architect-view__details-list li div{flex-direction:column;gap:4px;display:flex}.architect-view__details-list li small{color:#9aa3ba}.architect-view__canvas .react-flow__renderer{background:0 0}.architect-view__canvas .react-flow__pane{cursor:grab}.architect-view__canvas .react-flow__pane.dragging{cursor:grabbing}.architect-view__canvas .react-flow__controls,.architect-view__canvas .react-flow__minimap{background:#0c0c12eb;border:1px solid #7e8aa42e;border-radius:16px;overflow:hidden;box-shadow:0 18px 36px #00000047}.architect-view__canvas .react-flow__controls-button{color:var(--text-primary);background:#0c0c12eb;border-bottom:1px solid #7e8aa41f}.architect-view__canvas .react-flow__controls-button:hover{background:#7c5cfc29}.architect-view__canvas .react-flow__edge-path{stroke:#7c5cfcdb;filter:drop-shadow(0 0 10px #7c5cfc47)}.architect-view__canvas .react-flow__edge-text text{fill:#b8bed3}.architect-view__canvas .react-flow__attribution{display:none}.entity-node{background:linear-gradient(180deg, #12121cf5, #0d0d14fa), var(--bg-surface);border:1px solid #7e8aa42e;border-radius:18px;width:320px;box-shadow:0 18px 42px #00000047,inset 0 1px #ffffff0a}.entity-node__handle{background:#0f0f18;border:2px solid #7c5cfce6;width:11px;height:11px}.entity-node__header{cursor:grab;width:100%;color:inherit;text-align:left;background:0 0;border:none;border-bottom:1px solid #7e8aa41f;justify-content:space-between;align-items:baseline;gap:12px;padding:16px 16px 12px;display:flex}.entity-node__header:active{cursor:grabbing}.entity-node__header:hover,.entity-node__header:focus-visible{background:#7c5cfc14;outline:none}.entity-node__header h4{color:#f4f6fb;font-size:16px;font-weight:700}.entity-node__header span{color:#9aa3ba;text-transform:uppercase;letter-spacing:.08em;font-size:11px}.entity-node__list{margin:0;padding:8px 16px 14px;list-style:none}.entity-node__item{color:#99a3bd;justify-content:space-between;align-items:baseline;gap:12px;padding:7px 0;font-size:12.5px;display:flex}.entity-node__item+.entity-node__item{border-top:1px solid #7e8aa414}.entity-node__item-name{color:#f3f5fb;font-weight:500}.entity-node__item-meta{text-align:right}@media (width<=980px){.architect-view__toolbar{flex-direction:column}.architect-view__workspace{grid-template-columns:1fr}.architect-view__canvas{min-height:520px}.architect-view__details{min-height:0}}.vfs-playground__body{flex:1;display:flex;overflow:hidden}.vfs-playground__main{flex-direction:column;flex:1;min-width:0;display:flex}.vfs-playground__preview{color:#eee;background:#0b0b14;border-top:1px solid #2d2d3a;flex:1;justify-content:center;align-items:center;display:flex}.vfs-playground__preview-iframe{border:none;width:100%;height:100%}.vfs-playground__preview-hint{opacity:.8;font-size:13px}.vfs-playground{flex-direction:column;height:100vh;display:flex}.vfs-panels-root,.vfs-panels-inner{flex:auto;min-height:0}.vfs-pane{min-width:0;min-height:0;display:flex}.vfs-resizer{cursor:col-resize;background:#1e1e2a;width:4px;transition:background .15s}.vfs-resizer:hover{background:#3b82f6}.vfs-editor-pane{flex-direction:column;flex:auto;min-height:0;display:flex}.vfs-preview-pane{color:#eee;background:#0b0b14;border-top:1px solid #2d2d3a;flex:auto;justify-content:center;align-items:center;display:flex}.vfs-preview-iframe{border:none;width:100%;height:100%}.vfs-preview-loading{color:#8b949e;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:13px;display:flex}.vfs-preview-loading-spinner{border:3px solid #2d2d3a;border-top-color:#3b82f6;border-radius:50%;width:24px;height:24px;animation:.8s linear infinite vfs-spin}@keyframes vfs-spin{to{transform:rotate(360deg)}}.cm-tab-bar{background:#16161f;border-bottom:1px solid #2d2d3a;flex-shrink:0;display:flex;overflow-x:auto}.cm-tab{color:#8b949e;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;border-bottom:2px solid #0000;border-right:1px solid #2d2d3a;padding:6px 14px;font-family:monospace;font-size:12px}.cm-tab:hover{color:#c9d1d9;background:#1e1e2a}.cm-tab--active{color:#c9d1d9;background:#1a1a24;border-bottom-color:#3b82f6}.cm-tab__name{pointer-events:none}.cm-editor-wrapper{flex:auto;min-height:0;position:relative;overflow:hidden}.cm-editor-container{height:100%;overflow:hidden}.cm-editor-container .cm-editor{height:100%}.cm-editor-container .cm-scroller{overflow:auto}.cm-editor-placeholder{z-index:10;color:#8b949e;pointer-events:none;background:#1a1a24;justify-content:center;align-items:center;font-size:14px;display:flex;position:absolute;inset:0}.api-spec-view{background:var(--bg-base);color:var(--text-primary);min-height:100%;padding:24px}.api-spec-view--state{justify-content:center;align-items:center;display:flex}.api-spec-view__card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);margin-bottom:16px;padding:16px}.api-spec-view__code{white-space:pre;color:#d4d4d4;border-radius:var(--radius-md);background:#1e1e1e;padding:12px;font-family:DM Mono,monospace;font-size:13px;overflow-x:auto}.api-spec-view__meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.entity-table{background:radial-gradient(circle at top left, #4dc69614, transparent 26%), radial-gradient(circle at bottom right, #f5a62314, transparent 28%), var(--bg-base);min-height:100%;color:var(--text-primary);padding:24px}.entity-table--state{justify-content:center;align-items:center;display:flex}.entity-table__header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.entity-table__title{font-size:18px;font-weight:600}.entity-table__subtitle{color:var(--text-muted);margin-top:4px;font-size:13px;line-height:1.5}.entity-table__badge{min-width:88px;color:var(--text-muted);background:#12121ce0;border:1px solid #7e8aa42e;border-radius:999px;justify-content:center;align-items:center;padding:6px 12px;font-size:12px;display:inline-flex}.entity-table__toolbar{margin-bottom:18px}.entity-table__search{flex-direction:column;gap:8px;display:flex}.entity-table__search-label{color:var(--text-muted);font-size:12px}.entity-table__search-input{color:#edf1fb;background:#0a0a10db;border:1px solid #7e8aa42e;border-radius:14px;width:min(360px,100%);padding:12px 14px}.entity-table__search-input:focus-visible{outline-offset:2px;outline:2px solid #4dc69666}.entity-table__list{flex-direction:column;gap:14px;display:flex}.entity-table__card{background:linear-gradient(180deg, #12121cf0, #0c0c12fa), var(--bg-surface);border:1px solid #7e8aa429;border-radius:20px;box-shadow:0 20px 44px #00000038,inset 0 1px #ffffff08}.entity-table__toggle{text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:20px;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.entity-table__toggle:hover,.entity-table__toggle:focus-visible{background:#7c5cfc14;outline:none}.entity-table__toggle strong{color:#f5f6fb;font-size:16px;font-weight:600;display:block}.entity-table__toggle small{color:var(--text-muted);margin-top:4px;font-size:12px;display:block}.entity-table__meta{letter-spacing:.08em;text-transform:uppercase;color:#9aa3ba;font-size:11px}.entity-table__panel{padding:0 20px 20px}.entity-table__empty{background:#0a0a10e0;border:1px solid #7e8aa424;border-radius:18px;padding:20px}.entity-table__empty h4{color:#f5f6fb;margin-bottom:6px}.entity-table__empty p,.entity-table__submit-error{color:var(--text-muted)}.entity-table__summary{color:var(--text-muted);flex-wrap:wrap;gap:12px;margin-bottom:14px;padding-top:2px;font-size:12px;display:flex}.entity-table__table-shell{border:1px solid #7e8aa41f;border-radius:16px;overflow-x:auto}.entity-table__table{border-collapse:collapse;background:#0a0a10e0;width:100%}.entity-table__table th,.entity-table__table td{text-align:left;vertical-align:top;padding:12px 14px;font-size:13px}.entity-table__table th{letter-spacing:.05em;text-transform:uppercase;color:#a4acc4;border-bottom:1px solid #7e8aa424;font-size:11px;font-weight:600}.entity-table__table td{color:#edf1fb;border-bottom:1px solid #7e8aa414}.entity-table__table tbody tr:last-child td{border-bottom:none}.entity-table__inline-input{color:#edf1fb;background:#0a0a10eb;border:1px solid #7e8aa42e;border-radius:10px;width:100%;min-width:120px;padding:8px 10px}.entity-table__row-actions{flex-wrap:wrap;gap:8px;display:flex}.entity-table__row-action{color:#edf1fb;cursor:pointer;background:#12121ceb;border:1px solid #7e8aa42e;border-radius:10px;padding:8px 10px}.entity-table__row-action--primary{color:#0f1117;background:linear-gradient(135deg,#4dc696,#f5a623);border-color:#0000}.entity-table__editor{background:#0f0f18db;border:1px solid #7e8aa41f;border-radius:16px;margin-top:18px;padding:16px}.entity-table__editor-title{color:#f5f6fb;margin-bottom:14px;font-size:14px}.entity-table__editor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.entity-table__editor-field{color:var(--text-muted);flex-direction:column;gap:8px;font-size:12px;display:flex}.entity-table__editor-field input{color:#edf1fb;background:#0a0a10eb;border:1px solid #7e8aa42e;border-radius:12px;padding:10px 12px}.entity-table__editor-options{color:var(--text-muted);gap:16px;margin-top:14px;font-size:12px;display:flex}.entity-table__editor-options label{align-items:center;gap:8px;display:inline-flex}.entity-table__submit{color:#0f1117;cursor:pointer;background:linear-gradient(135deg,#4dc696,#f5a623);border:none;border-radius:12px;margin-top:16px;padding:10px 14px;font-weight:600}.entity-table__submit:disabled{opacity:.7;cursor:wait}@media (width<=860px){.entity-table{padding:18px}.entity-table__header{flex-direction:column}.entity-table__toggle{flex-direction:column;align-items:flex-start}.entity-table__editor-grid{grid-template-columns:1fr}}.meta-history{color:var(--text-primary);padding:28px 24px 36px}.meta-history--state{justify-content:center;align-items:center;min-height:320px;display:flex}.meta-history__header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.meta-history__title{margin:0;font-size:22px;font-weight:700}.meta-history__subtitle{color:var(--text-muted);max-width:680px;margin:8px 0 0;font-size:14px;line-height:1.6}.meta-history__badge{white-space:nowrap;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:600}.meta-history__timeline{flex-direction:column;gap:18px;margin:0;padding:8px 0 0;list-style:none;display:flex}.meta-history__item{grid-template-columns:18px minmax(0,1fr);align-items:start;gap:18px;display:grid}.meta-history__marker{background:linear-gradient(135deg,#f6bb42,#ff8f3f);border-radius:50%;width:12px;height:12px;margin-top:20px;box-shadow:0 0 0 6px #f6bb421f}.meta-history__card{background:#080c18b8;border:1px solid #ffffff14;border-radius:22px;padding:20px 22px}.meta-history__card-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.meta-history__version-title{margin:0;font-size:18px;font-weight:700}.meta-history__timestamp{color:var(--text-muted);margin:6px 0 0;font-size:13px}.meta-history__diff-button{color:#ffd681;white-space:nowrap;transition:border-color var(--duration-fast) var(--ease), transform var(--duration-fast) var(--ease);background:#f6bb4214;border:1px solid #f6bb4238;border-radius:999px;padding:8px 14px;font-size:12px;font-weight:600}.meta-history__diff-button:hover{border-color:#f6bb4280;transform:translateY(-1px)}.meta-history__stats{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.meta-history__stats span{color:var(--text-muted);background:#ffffff0d;border:1px solid #ffffff14;border-radius:999px;padding:6px 10px;font-size:12px}.meta-history__diff-region{margin-top:16px}.meta-history__diff-code{color:#cbe7ff;background:#060812eb;border:1px solid #ffffff14;border-radius:16px;margin:0;padding:16px;font-size:12px;line-height:1.6;overflow-x:auto}@media (width<=720px){.meta-history{padding:24px 16px 28px}.meta-history__header,.meta-history__card-header{flex-direction:column}.meta-history__diff-button{width:100%}}.layout{background:var(--bg-base);flex-direction:column;width:100vw;height:100vh;display:flex}.layout__body{flex:1;display:flex;position:relative;overflow:auto}.sidebar-toggle{z-index:10;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;transition:background var(--duration-fast), color var(--duration-fast), border-color var(--duration-fast), left var(--duration-fast);justify-content:center;align-items:center;display:flex;position:absolute;top:12px}.sidebar-toggle:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-default)}.sidebar-toggle--open{left:calc(var(--sidebar-width) - 28px - 8px)}.sidebar-toggle--closed{left:8px}.layout__main{background:var(--bg-base);flex-direction:column;flex:1;min-width:0;display:flex}.topbar{height:var(--topbar-height);background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;gap:24px;padding:0 20px;display:flex}.topbar__brand{flex-shrink:0;align-items:center;gap:20px;display:flex}.topbar__brand-name{color:var(--text-primary);letter-spacing:-.3px;font-size:15.5px;font-weight:700}.topbar__links{align-items:center;gap:2px;display:flex}.topbar__link{border-radius:var(--radius-md);height:30px;color:var(--text-secondary);transition:background var(--duration-fast), color var(--duration-fast);padding:0 10px;font-size:13.5px;font-weight:500}.topbar__link:hover{background:var(--bg-hover);color:var(--text-primary)}.topbar__link--active{color:var(--text-primary);font-weight:600}.topbar__right{flex:1;justify-content:flex-end;align-items:center;gap:10px;display:flex}.topbar__workspace-pill{background:var(--bg-active);border:1px solid var(--border-subtle);height:30px;color:var(--text-primary);border-radius:999px;align-items:center;padding:0 12px;font-size:12.5px;font-weight:600;display:inline-flex}.topbar__preview-text{color:var(--text-secondary);font-size:13px}.topbar__search{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);height:34px;color:var(--text-muted);cursor:text;min-width:200px;transition:border-color var(--duration-fast);align-items:center;gap:8px;padding:0 13px;font-size:13px;display:flex}.topbar__search:hover{border-color:var(--border-default)}.topbar__search-text{color:var(--text-muted)}.topbar__create-btn{background:var(--text-primary);color:#fff;border-radius:var(--radius-md);white-space:nowrap;height:34px;transition:opacity var(--duration-fast);padding:0 16px;font-size:13px;font-weight:600}.topbar__create-btn:hover{opacity:.85}.topbar__icon-btn{border-radius:var(--radius-md);width:34px;height:34px;color:var(--text-secondary);transition:background var(--duration-fast);justify-content:center;align-items:center;display:flex}.topbar__icon-btn:hover{background:var(--bg-hover)}.topbar__avatar{background:var(--text-primary);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.sidebar{width:var(--sidebar-width);min-width:var(--sidebar-width);background:var(--bg-surface);border-right:1px solid var(--border-subtle);flex-direction:column;gap:4px;height:100%;padding:16px 10px;display:flex;overflow-y:auto}.sidebar__workspace{border-bottom:1px solid var(--border-subtle);align-items:center;gap:10px;margin-top:32px;margin-bottom:6px;padding:8px 8px 14px;display:flex}.sidebar__ws-icon{border-radius:var(--radius-md);background:var(--text-primary);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.sidebar__ws-info{flex-direction:column;min-width:0;display:flex}.sidebar__ws-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:600;overflow:hidden}.sidebar__ws-version{color:var(--text-muted);font-family:DM Mono,monospace;font-size:11px}.sidebar__nav{flex-direction:column;flex:1;gap:1px;display:flex}.sidebar__nav--bottom{border-top:1px solid var(--border-subtle);flex:0;margin-top:4px;padding-top:8px}.sidebar__nav-item{border-radius:var(--radius-md);height:34px;color:var(--text-secondary);text-align:left;transition:background var(--duration-fast), color var(--duration-fast);background:0 0;align-items:center;gap:9px;padding:0 10px;font-size:13.5px;font-weight:500;display:flex}.sidebar__nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar__nav-item--active{background:var(--bg-active);color:var(--text-primary)}.sidebar__nav-icon{color:inherit;flex-shrink:0;align-items:center;display:flex}.layout__footer{border-top:1px solid var(--border-subtle);color:var(--text-muted);background:var(--bg-base);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 32px;font-size:12px;display:flex}.layout__footer-links{gap:16px;display:flex}.layout__footer-link{cursor:pointer;transition:color var(--duration-fast)}.layout__footer-link:hover{color:var(--text-primary)}.layout__footer-bottom{align-items:center;gap:24px;margin-top:12px;display:flex}.layout__creator-split{background:var(--bg-base);flex-direction:row;flex:1;width:100%;height:100%;display:flex;overflow:hidden}.sidebar__brand{align-items:center;gap:12px;padding:8px 0;display:flex}.sidebar__brand-name{color:var(--text-primary);margin-left:23px;font-size:14px;font-weight:600}.sidebar__workspace{padding:8px 0}.sidebar__workspace-name{color:var(--text-secondary);font-size:12px;font-weight:500}.sidebar__section-title{color:var(--text-primary);margin:12px 0 4px;font-size:13px;font-weight:600}.sidebar__nav,.sidebar__projects,.sidebar__recents{margin-top:4px}.sidebar__item{margin:2px 0}.sidebar__link{border-radius:var(--radius-md);width:100%;color:var(--text-secondary);transition:background var(--duration-fast), color var(--duration-fast);background:0 0;align-items:center;padding:6px 8px;font-size:13px;display:flex}.sidebar__link:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar__icon{margin-right:6px}.sidebar__footer-buttons{flex-direction:column;gap:8px;margin-top:auto;padding-top:12px;display:flex}.sidebar__btn{border-radius:var(--radius-md);cursor:pointer;width:100%;transition:background var(--duration-fast), opacity var(--duration-fast);border:none;padding:8px;font-size:13px;font-weight:600}.sidebar__btn--share{background:var(--bg-surface);color:var(--text-primary)}.sidebar__btn--upgrade{background:var(--text-primary);color:#fff}.sidebar__btn:hover{opacity:.9}.logo-badge{background:conic-gradient(from 200deg,#ff7ad9,#ffb86c,#7afcff,#7b61ff,#ff7ad9);border-radius:999px;width:24px;height:24px}.workspace-selector{background:radial-gradient(circle at top,#7e8aa43d,#0000 30%),linear-gradient(#06070b 0%,#10131b 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.workspace-selector__card{color:#f8fafc;background:#111827e0;border:1px solid #94a3b829;border-radius:28px;width:min(560px,100%);padding:32px;box-shadow:0 24px 90px #00000073}.workspace-selector__eyebrow{color:#cbd5e1;letter-spacing:.08em;text-transform:uppercase;background:#94a3b81f;border-radius:999px;margin-bottom:14px;padding:6px 10px;font-size:12px;display:inline-block}.workspace-selector__title{margin:0 0 12px;font-size:clamp(28px,4vw,40px);line-height:1.05}.workspace-selector__body{color:#cbd5e1;margin:0;font-size:16px;line-height:1.6}.workspace-selector__actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.workspace-selector__grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:28px;display:grid}.workspace-selector__workspace{color:#f8fafc;text-align:left;cursor:pointer;background:#0f172ac2;border:1px solid #94a3b82e;border-radius:22px;padding:20px;transition:transform .16s,border-color .16s,box-shadow .16s}.workspace-selector__workspace:hover{border-color:#f8fafc61;transform:translateY(-2px);box-shadow:0 18px 40px #0f172a47}.workspace-selector__workspace-head{justify-content:flex-end;margin-bottom:18px;display:flex}.workspace-selector__workspace-badge{color:#cbd5e1;letter-spacing:.08em;text-transform:uppercase;background:#f8fafc1f;border-radius:999px;align-items:center;padding:5px 10px;font-size:11px;font-weight:700;display:inline-flex}.workspace-selector__workspace-name{margin:0;font-size:22px;line-height:1.1}.workspace-selector__workspace-meta{color:#cbd5e1;margin:12px 0 0;font-size:14px}.workspace-selector__primary,.workspace-selector__secondary{cursor:pointer;border-radius:999px;padding:12px 18px;font-weight:700}.workspace-selector__primary{color:#020617;background:#f8fafc;border:0}.workspace-selector__secondary{color:#e2e8f0;background:0 0;border:1px solid #94a3b847}@media (width<=640px){.workspace-selector__card{border-radius:24px;padding:24px}.workspace-selector__workspace{padding:18px}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%}body{font-family:var(--font-base);background:var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,textarea{outline:none;font-family:inherit}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:99px}:root{--bg-base:#09090b;--bg-surface:#111113;--bg-elevated:#333;--bg-hover:#141116;--bg-active:#4f4f56;--primary-color:#c11818;--secondary-color:#393938;--bg-gradient:linear-gradient(135deg, #7b61ff, #6366f1, #3b82f6, #ec4899, #f97316);--preview-header:radial-gradient(circle at top left, #6366f159, transparent 35%), radial-gradient(circle at top right, #ec489947, transparent 30%), radial-gradient(circle at bottom left, #3b82f640, transparent 35%), radial-gradient(circle at bottom right, #f9731638, transparent 30%), #09090b;--border-subtle:#27272a;--border-default:#3f3f46;--border-strong:#52525b;--font-base:"Roboto", sans-serif;--text-primary:#fafafa;--text-secondary:#a1a1aa;--text-muted:#71717a;--text-inverse:#111118;--brand:#9d1a0c;--brand-hover:#e4e4e7;--brand-subtle:#ffffff14;--brand-glow:#ffffff1f;--success:#4ade80;--success-bg:#22c55e26;--warning:#facc15;--warning-bg:#facc1526;--danger:#f87171;--info:#60a5fa;--radius-sm:1px;--radius-md:2px;--radius-lg:4px;--radius-xl:6px;--radius-full:9999px;--shadow-sm:0 1px 2px #00000059;--shadow-md:0 4px 12px #00000073;--shadow-lg:0 10px 30px #0000008c;--sidebar-width:180px;--topbar-height:52px}
