.cta-button{border-radius:var(--border-radius);cursor:pointer;text-align:center;font-size:1rem;font-family:var(--font-mono);transition:all var(--transition-speed) var(--transition-easing);border:none;padding:.6rem 1.2rem;text-decoration:none;display:block}.cta-button.primary{background-color:var(--color-accent);color:var(--color-accent-button-text);box-shadow:0 4px 12px color-mix(in srgb, var(--color-accent) 30%, transparent);transform:translateY(0)}.cta-button.primary:hover{background-color:var(--color-accent-hover);transform:translateY(-1px)}.cta-button.primary:active{transform:translateY(0)}.cta-button.secondary{background-color:var(--color-background);color:var(--color-text);border:1px solid var(--color-border)}.cta-button.secondary:hover{background-color:var(--color-secondary-button-hover)}.cta-button.current-plan{color:var(--color-text);border:1px solid var(--color-text);cursor:default;opacity:.8}.cta-button.current-plan:hover{background-color:var(--color-background);opacity:1;cursor:pointer}.cta-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-card .cta-button,.social-auth-buttons .cta-button{width:100%}.auth-card .cta-button.secondary{margin-top:var(--spacing-md)}.auth-form .cta-button.primary{margin-top:var(--spacing-xl)}.auth-card .cta-button{justify-content:center;align-items:center;display:flex}.auth-container{min-height:80vh;padding:var(--spacing-xl) var(--spacing-md);justify-content:center;align-items:center;display:flex}.auth-card{max-width:400px;padding:var(--spacing-xl);border:1px solid var(--color-border);border-radius:var(--border-radius)}.auth-title{text-align:center;margin-bottom:var(--spacing-lg);color:var(--color-text);font-size:1.5rem;font-weight:600;font-family:var(--font-mono)}.auth-form{margin-bottom:var(--spacing-lg)}.auth-card .home-link{font-family:var(--font-serif)}.auth-form .form-group,.sso-auth-section .form-group{margin-bottom:var(--spacing-md);flex-direction:column;align-items:flex-start;width:100%;display:flex}.auth-form .form-group label,.sso-auth-section .form-group label{margin-bottom:var(--spacing-sm);text-align:left;width:100%;font-weight:500}.auth-form .form-group.checkbox{align-items:flex-start;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);flex-direction:row;display:flex}.auth-form .form-group.checkbox input[type=checkbox]{flex-shrink:0;width:auto;margin:.125rem 0 0}.auth-form .form-group.checkbox label{opacity:.8;font-size:.8rem;line-height:1.4;font-family:var(--font-mono);text-align:left;margin-bottom:0;font-weight:400}.auth-form input[type=text],.auth-form input[type=email],.auth-form input[type=password],.sso-auth-section input[type=text]{width:100%;max-width:100%;padding:var(--spacing-smd);border:1px solid var(--color-border);border-radius:var(--border-radius);background-color:var(--color-background);color:var(--color-text);transition:border-color var(--transition-speed) var(--transition-easing);font-size:1rem;font-family:var(--font-mono);box-sizing:border-box}.auth-form input[type=text]:focus,.auth-form input[type=email]:focus,.auth-form input[type=password]:focus,.sso-auth-section input[type=text]:focus{border-color:var(--color-text);outline:none}.auth-form input[type=text]:disabled,.auth-form input[type=email]:disabled,.auth-form input[type=password]:disabled,.sso-auth-section input[type=text]:disabled{opacity:.6;cursor:not-allowed}.auth-divider,.divider{margin:var(--spacing-lg) 0;text-align:center;align-items:center;display:flex}.auth-divider:before,.auth-divider:after,.divider:before,.divider:after{content:"";background-color:var(--color-border);flex:1;height:1px}.auth-divider span,.divider span{padding:0 var(--spacing-md);color:var(--color-text);opacity:.7;font-size:.9rem;font-family:var(--font-mono)}.social-auth-buttons,.social-buttons{gap:var(--spacing-smd);margin-bottom:var(--spacing-lg);flex-direction:column;display:flex}.social-button{justify-content:center;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-smd) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius);background-color:var(--color-background);color:var(--color-text);font-size:1rem;font-family:var(--font-mono);cursor:pointer;transition:border-color var(--transition-speed) var(--transition-easing), background-color var(--transition-speed) var(--transition-easing);display:flex}.social-button:hover:not(:disabled){border-color:var(--color-text);background-color:var(--color-surface)}.social-button:disabled{opacity:.6;cursor:not-allowed}.social-button.github svg,.social-button.google svg,.button-icon{flex-shrink:0}.submit-button{width:100%;padding:var(--spacing-smd) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius);background-color:var(--color-text);color:var(--color-background);font-size:1rem;font-family:var(--font-mono);cursor:pointer;transition:opacity var(--transition-speed) var(--transition-easing);font-weight:500}.submit-button:hover:not(:disabled){opacity:.9}.submit-button:disabled{opacity:.6;cursor:not-allowed}.error-message{padding:var(--spacing-smd);margin-bottom:var(--spacing-md);border:1px solid var(--color-danger);border-radius:var(--border-radius);background-color:var(--color-danger-bg);color:var(--color-danger);font-size:.9rem;font-family:var(--font-mono)}.auth-links{text-align:center;color:var(--color-text);font-size:.9rem}.auth-links .auth-separator{margin:0 var(--spacing-sm);opacity:.5}.verification-status{margin:var(--spacing-md) 0}.verified-badge{padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--color-success-background);color:var(--color-success);border-radius:var(--border-radius);margin-left:var(--spacing-sm);font-weight:500;display:inline-block}.unverified-badge{padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--color-warning-background);color:var(--color-warning);border-radius:var(--border-radius);margin-left:var(--spacing-sm);font-weight:500;display:inline-block}.verify-link{margin-left:var(--spacing-md);color:var(--color-primary);cursor:pointer;text-decoration:underline}.verify-link:hover{text-decoration:none}.success-message{background-color:var(--color-success-background);border:1px solid var(--color-success-border);border-radius:var(--border-radius);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.signup-tier-info{border:1px solid var(--color-accent);border-radius:var(--border-radius);padding:var(--spacing-md);margin-bottom:var(--spacing-md);font-family:var(--font-mono)}.signup-tier-info p{color:var(--color-text);margin:0;font-size:.9rem}.loading-container{justify-content:center;align-items:center;height:80vh;display:flex}.loading-container p{font-size:1.2rem}.auth-loading{background-color:var(--color-background);min-height:100vh;color:var(--color-text);justify-content:center;align-items:center;gap:var(--spacing-md);flex-direction:column;display:flex}.auth-loading p{color:var(--color-text-secondary);margin:0;font-size:.875rem}.auth-loading-spinner{border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite auth-spin}@keyframes auth-spin{to{transform:rotate(360deg)}}@media (max-width:480px){.auth-container{padding:var(--spacing-md) var(--spacing-sm);min-height:70vh}.auth-card{padding:var(--spacing-lg)}.auth-title{font-size:1.25rem}.auth-links{gap:var(--spacing-smd);flex-direction:column;align-items:center;display:flex}.auth-links .auth-separator{display:none}}.conf-links{gap:var(--spacing-xl);flex-direction:column;min-width:260px;display:flex}.conf-link-group{text-align:center}.conf-link-group h3{margin-bottom:var(--spacing-md);color:var(--color-text);font-size:1.1rem;font-weight:500;font-family:var(--font-mono)}.conf-link-list{gap:var(--spacing-smd);flex-direction:column;display:flex}.resizable-panel-group{width:100%;height:100%;display:flex;overflow:hidden}.resizable-panel{flex-direction:column;display:flex;overflow:hidden}.resizable-handle{touch-action:none;z-index:var(--z-sticky);background:0 0;justify-content:center;align-items:center;display:flex;position:relative}.resizable-panel-group--horizontal>.resizable-handle:after{content:"";cursor:col-resize;position:absolute;top:0;bottom:0;left:-4px;right:-4px}.resizable-panel-group:has(>.resizable-handle:hover) .ui-scrollbar--autohide::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb)}@supports not selector(::-webkit-scrollbar){.resizable-panel-group:has(>.resizable-handle:hover) .ui-scrollbar--autohide{scrollbar-color:var(--scrollbar-thumb) transparent}}.resizable-panel-group--vertical>.resizable-handle:after{content:"";cursor:row-resize;position:absolute;top:-4px;bottom:-4px;left:0;right:0}.resizable-handle:before{content:"";background:var(--color-border);transition:width var(--transition-speed) var(--transition-easing), height var(--transition-speed) var(--transition-easing), background-color var(--transition-speed) var(--transition-easing);position:absolute}.resizable-handle[data-separator=active]:before,.resizable-handle--dragging:before{background:color-mix(in srgb, var(--color-text-tertiary) 35%, var(--color-border))}.resizable-panel-group--horizontal>.resizable-handle{cursor:col-resize;width:1px}.resizable-panel-group--horizontal>.resizable-handle:before{width:1px;top:0;bottom:0;right:0}.resizable-panel-group--horizontal>.resizable-handle:hover:before,.resizable-panel-group--horizontal>.resizable-handle[data-separator=hover]:before,.resizable-panel-group--horizontal>.resizable-handle[data-separator=active]:before,.resizable-panel-group--horizontal>.resizable-handle--dragging:before{width:2px}.resizable-handle:focus{outline:none}.resizable-panel-group--horizontal>.resizable-handle:focus-visible:before{background:var(--color-primary);width:2px}.resizable-panel-group .chat-panel>*{transition:opacity var(--transition-speed) var(--transition-easing)}@property --chat-spring-px{syntax:"*";inherits:false}body.is-chat-panel-springing .resizable-panel-group .chat-panel>*,.resizable-panel-group .chat-panel--parked>*{min-width:340px}body.is-chat-panel-settling .resizable-panel-group .chat-panel>*,.resizable-panel-group .chat-panel--parked>*{width:var(--chat-content-rest-px,340px)}body.is-chat-panel-settling .resizable-panel-group>.chat-panel:first-child>*,.resizable-panel-group>.chat-panel--parked:first-child>*{align-self:flex-end}.chat-panel.chat-panel--will-close>*{opacity:.5}.chat-panel--parked{visibility:hidden}.chat-panel__hydrate{min-height:0;animation:chat-panel-content-in var(--transition-speed) var(--transition-easing);flex-direction:column;flex:1;display:flex}.chat-panel__chat{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.chat-panel__chat[hidden]{display:none}@keyframes chat-panel-content-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.chat-panel__hydrate{animation:none}}.editor-layout--right-panel-closing .resizable-panel-group--horizontal>.chat-panel{z-index:calc(var(--z-header) + 1);position:relative}.panel-peek-tab-anchor{z-index:var(--z-sticky);position:fixed;top:50%;transform:translateY(-50%)}.panel-peek-tab-anchor--left{left:0}.panel-peek-tab-anchor--right{right:var(--spacing-xs)}.panel-peek-tab{cursor:pointer;touch-action:none;width:20px;height:64px;transition:opacity var(--transition-speed) var(--transition-easing), transform var(--transition-speed) var(--transition-easing);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.panel-peek-tab--left{width:var(--spacing-smd);padding:0 0 0 var(--spacing-xs);justify-content:flex-start}@media (hover:hover){.panel-peek-tab--left{opacity:0;transform:translateX(calc(-1 * var(--spacing-sm)))}.panel-peek-tab--right{opacity:0;transform:translateX(var(--spacing-sm))}body.is-pointer-near-left-edge .panel-peek-tab--left,body.is-pointer-near-right-edge .panel-peek-tab--right{opacity:1;transform:translate(0)}.panel-peek-tab--left:focus-visible{opacity:1;transform:translate(0)}.panel-peek-tab--right:focus-visible{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.panel-peek-tab{transition:none}}.panel-peek-tab__line{border-radius:var(--radius-pill);background:var(--color-text-tertiary);opacity:.45;width:4px;height:44px;transition:opacity var(--transition-speed) var(--transition-easing), background-color var(--transition-speed) var(--transition-easing)}.panel-peek-tab:hover .panel-peek-tab__line{opacity:1}.panel-peek-tab:focus-visible{outline:none}.panel-peek-tab:focus-visible .panel-peek-tab__line{background:var(--color-primary);opacity:1}@media (max-width:768px){.panel-peek-tab-anchor,.panel-peek-tab{display:none}}.resizable-panel-group--horizontal>.chat-panel{flex:0 0 min(var(--chat-rest-px,0px), 70%)}.resizable-panel-group--horizontal>.chat-panel--parked{flex-basis:0}body.is-chat-panel-springing .resizable-panel-group--horizontal>.chat-panel{flex:0 0 var(--chat-spring-px,0px)!important}.resizable-panel-group--vertical>.resizable-handle{cursor:row-resize;height:4px}.resizable-panel-group--vertical>.resizable-handle:before{height:1px;top:50%;left:0;right:0;transform:translateY(-50%)}.resizable-panel-group--vertical>.resizable-handle:hover:before,.resizable-panel-group--vertical>.resizable-handle[data-separator=hover]:before,.resizable-panel-group--vertical>.resizable-handle[data-separator=active]:before{height:2px}.resizable-handle__grip{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.resizable-handle__grip-line{background:var(--color-border);border-radius:var(--radius-xs);transition:background-color var(--transition-speed-fast) var(--transition-easing);flex-shrink:0}.resizable-panel-group--horizontal .resizable-handle__grip-line{width:2px;height:24px}.resizable-panel-group--vertical .resizable-handle__grip-line{width:24px;height:2px}.resizable-handle:hover .resizable-handle__grip-line,.resizable-handle[data-separator=active] .resizable-handle__grip-line{background:var(--color-text-secondary)}.editor-layout{height:100vh;flex-direction:column;width:100%;height:100dvh;display:flex;overflow:hidden}.editor-layout__content{flex:1;display:flex;overflow:hidden}.editor-panel{background:var(--color-background);flex-direction:column;display:flex;overflow:hidden}.editor-panel #editor-container{flex-direction:column;flex:1;display:flex}.chat-panel{background:var(--color-background);border-left:none;flex-direction:column;display:flex;overflow:hidden}.resizable-panel-group--horizontal>.chat-panel--card{background:0 0}.resizable-panel-group--horizontal>.chat-panel--card>*{box-sizing:border-box;padding:calc(var(--editor-overlay-header-height) - 10px + var(--spacing-md)) var(--spacing-md) var(--spacing-md) var(--spacing-md)}body.is-chat-panel-springing .resizable-panel-group .chat-panel--card>*,body.is-chat-panel-settling .resizable-panel-group .chat-panel--card>*,.resizable-panel-group .chat-panel--card.chat-panel--parked>*{width:auto;min-width:0}body.is-chat-panel-springing .resizable-panel-group .chat-panel--card .panel-card{min-width:calc(340px - 2 * var(--spacing-md));flex-shrink:0}body.is-chat-panel-settling .resizable-panel-group .chat-panel--card .panel-card,.resizable-panel-group .chat-panel--card.chat-panel--parked .panel-card{width:calc(var(--chat-content-rest-px,340px) - 2 * var(--spacing-md));flex-shrink:0}body.is-chat-panel-settling .resizable-panel-group>.chat-panel--card:first-child .panel-card,.resizable-panel-group>.chat-panel--card.chat-panel--parked:first-child .panel-card{align-self:flex-end}body .editor-layout--card.editor-layout--right-panel-open .editor-layout__header,body.is-chat-panel-springing .editor-layout--card.editor-layout--right-panel-open .editor-layout__header{padding-right:var(--spacing-md);right:0;overflow:visible}.editor-layout--card .resizable-panel-group--horizontal>.editor-panel{z-index:var(--z-base);position:relative}.editor-layout--card .resizable-panel-group--horizontal>.chat-panel--card,.editor-layout--card.editor-layout--right-panel-closing .resizable-panel-group--horizontal>.chat-panel--card{z-index:var(--z-raised);pointer-events:none;position:relative}.editor-layout--card.editor-layout--right-panel-open:not(.editor-layout--right-panel-closing) .resizable-panel-group--horizontal>.editor-panel:first-child{--editor-card-inset:min(var(--chat-rest-px,0px), 70%);margin-right:calc(-1 * var(--editor-card-inset) - 1px)}.editor-layout--card.editor-layout--right-panel-open:not(.editor-layout--right-panel-closing) .resizable-panel-group--horizontal>.editor-panel:first-child #editor-container .cm-editor .cm-scroller{padding-right:var(--editor-card-inset)}body.is-chat-panel-springing .editor-layout--card .resizable-panel-group--horizontal>.editor-panel:first-child{margin-right:calc(-1 * var(--chat-spring-px,0px) - 1px)!important}body.is-chat-panel-springing .editor-layout--card .resizable-panel-group--horizontal>.editor-panel:first-child #editor-container .cm-editor .cm-scroller{padding-right:var(--chat-spring-px,0px)!important}.editor-layout--card .resizable-panel-group--horizontal>.resizable-handle{pointer-events:none}.editor-layout--card .resizable-panel-group--horizontal>.resizable-handle:after{pointer-events:auto;left:calc(var(--spacing-md) - 4px);right:calc(-1 * var(--spacing-md) - 4px)}.editor-layout--card .resizable-panel-group--horizontal>.chat-panel+.resizable-handle:after{left:calc(-1 * var(--spacing-md) - 4px);right:calc(var(--spacing-md) - 4px)}.editor-layout--card .resizable-panel-group--horizontal>.resizable-handle:before{right:auto;left:calc(var(--spacing-md) + 1px)}.editor-layout--card .resizable-panel-group--horizontal>.chat-panel+.resizable-handle:before{left:auto;right:calc(var(--spacing-md) + 1px)}.editor-layout--card .resizable-panel-group--horizontal>.resizable-handle:before,.editor-layout--card .resizable-panel-group--horizontal>.resizable-handle--dragging:before,.editor-layout--card .resizable-panel-group--horizontal>.resizable-handle .resizable-handle__grip-line{background:0 0}.editor-layout--card .resizable-panel-group--horizontal>.resizable-handle:focus-visible:before{background:var(--color-primary)}.mobile-view-toggle{bottom:var(--spacing-lg);right:var(--spacing-lg);z-index:var(--z-dropdown);display:none;position:fixed}.mobile-view-toggle__button{background:var(--color-primary);color:#fff;cursor:pointer;width:56px;height:56px;box-shadow:var(--shadow-md);transition:transform var(--transition-speed-fast) var(--transition-easing), background-color var(--transition-speed-fast) var(--transition-easing);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.mobile-view-toggle__button:hover{background:var(--color-accent-hover);transform:scale(1.05)}.mobile-view-toggle__button:active{transform:scale(.95)}.mobile-view-toggle__icon{width:24px;height:24px}@media (max-width:768px){.mobile-view-toggle{display:block}.editor-layout__content--mobile{position:relative}.editor-layout__content--mobile .editor-panel,.editor-layout__content--mobile .chat-panel{transition:opacity var(--transition-speed) var(--transition-easing), visibility var(--transition-speed) var(--transition-easing);position:absolute;top:0;bottom:0;left:0;right:0}.editor-layout__content--mobile .editor-panel--hidden,.editor-layout__content--mobile .chat-panel--hidden{opacity:0;visibility:hidden;pointer-events:none}.editor-layout__content--mobile .resizable-handle{display:none}}.header-chat-toggle{align-items:center;gap:var(--spacing-sm);border-radius:var(--border-radius);background:var(--color-background);border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;transition:background-color var(--transition-speed) var(--transition-easing), border-color var(--transition-speed) var(--transition-easing);padding:6px 12px;font-family:inherit;font-size:14px;display:flex}.header-chat-toggle:hover{border-color:var(--color-text)}.header-chat-toggle--active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.header-chat-toggle--active:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.header-chat-toggle__icon{width:16px;height:16px}.header-chat-toggle__badge{background:var(--color-danger-fill);color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:11px;font-weight:600;display:flex}.header-chat-toggle__badge:empty,.header-chat-toggle__badge[data-count="0"]{display:none}.header-actions{align-items:center;gap:var(--spacing-md);display:flex}.header-panel-swap{align-items:center;gap:var(--spacing-sm);border-radius:var(--border-radius);background:var(--color-background);border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;transition:background-color var(--transition-speed) var(--transition-easing), border-color var(--transition-speed) var(--transition-easing);padding:6px 12px;font-family:inherit;font-size:14px;display:flex}.header-panel-swap:hover{border-color:var(--color-text)}.header-panel-swap--active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.header-panel-swap--active:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.header-panel-swap__icon{width:18px;height:18px}@media (max-width:768px){.header-chat-toggle__text{display:none}.header-chat-toggle{padding:6px}.header-panel-swap__text{display:none}.header-panel-swap{padding:6px}}.header-version-history{color:var(--color-text-secondary)}.header-sidebar-toggle{background:var(--color-background);border-color:#0000;margin-right:0}.header-sidebar-toggle:hover:not(:disabled){background:var(--color-secondary-button);border-color:#0000}.header-sidebar-toggle__icon{width:16px;height:16px}.editor-layout__header-right .header-overflow-menu__trigger,.editor-layout__header-right .editor-layout__header-agent-controls .ui-button{background:var(--color-background);border-color:#0000}.editor-layout__header-right .header-overflow-menu__trigger:hover:not(:disabled),.editor-layout__header-right .editor-layout__header-agent-controls .ui-button:hover:not(:disabled){background:var(--color-secondary-button);border-color:#0000}body.is-sidebar-spring-animating .editor-layout--with-sidebar{padding-left:var(--sidebar-spring-width,0px)!important}
