.auth-login-switch[data-v-479897bd]{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--color-bg-secondary) 84%, transparent);grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;padding:4px;display:grid;position:relative;overflow:hidden}.auth-login-switch__thumb[data-v-479897bd]{border-radius:calc(var(--radius-lg) - 4px);background:var(--color-bg-base);border:1px solid color-mix(in srgb, var(--color-brand) 22%, var(--color-border));width:calc(50% - 4px);height:calc(100% - 8px);box-shadow:0 0 0 1px color-mix(in srgb, var(--color-brand) 10%, transparent), 0 8px 18px #00000014;transition:transform var(--transition-normal), box-shadow var(--transition-normal), border-color var(--transition-normal);pointer-events:none;position:absolute;top:4px;left:4px}.auth-login-switch__option[data-v-479897bd]{z-index:1;min-height:40px;padding:0 var(--space-4);color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:0;font-size:.95rem;font-weight:600;position:relative}.auth-login-switch__option[data-v-479897bd]:hover,.auth-login-switch__option--active[data-v-479897bd]{color:var(--color-text-primary)}.auth-login-switch__option[data-v-479897bd]:focus-visible{outline:2px solid color-mix(in srgb, var(--color-brand) 60%, transparent);outline-offset:-2px;border-radius:calc(var(--radius-lg) - 6px)}.login-page[data-v-972820fb]{background:var(--color-bg-base);flex-direction:column;min-height:100vh;display:flex}.auth-container[data-v-972820fb]{padding:var(--space-7) var(--space-5);flex:1;justify-content:center;align-items:center;display:flex}.fade-enter-active[data-v-972820fb],.fade-leave-active[data-v-972820fb]{transition:opacity var(--transition-fast)}.fade-enter-from[data-v-972820fb],.fade-leave-to[data-v-972820fb]{opacity:0}.borderless[data-v-972820fb]{background-color:var(--color-bg-tertiary);box-shadow:none!important;border:none!important}.btn-primary-solid[data-v-972820fb]{letter-spacing:.02em;border-radius:8px;font-weight:600}.auth-card[data-v-972820fb]{border-radius:var(--radius-xl);width:100%;max-width:420px;min-height:520px;padding:var(--space-7);box-sizing:border-box;flex-direction:column;display:flex}.auth-title[data-v-972820fb]{text-align:center;margin-bottom:8px;font-size:1.75rem;font-weight:600}.auth-subtitle[data-v-972820fb]{text-align:center;color:var(--color-text-secondary);margin-bottom:24px}.auth-form[data-v-972820fb]{flex-direction:column;flex:1;margin-top:24px;display:flex}.login-switch[data-v-972820fb]{margin-bottom:24px}.code-row[data-v-972820fb]{grid-template-columns:minmax(0,1fr) auto;gap:12px;width:100%;display:grid}.code-button[data-v-972820fb]{white-space:nowrap;min-width:132px}.form-actions[data-v-972820fb]{margin-top:24px}.auth-links[data-v-972820fb]{text-align:right;min-height:22px;margin-top:12px}.auth-links--hidden[data-v-972820fb]{visibility:hidden;pointer-events:none}.auth-footer[data-v-972820fb]{text-align:center;border-top:1px solid var(--color-border);color:var(--color-text-secondary);margin-top:auto;padding-top:24px}.link[data-v-972820fb]{color:var(--color-brand);margin-left:4px}.link[data-v-972820fb]:hover{color:var(--color-brand-hover)}.workspace-list[data-v-972820fb]{flex:1;margin-top:16px;overflow-y:auto}.workspace-info[data-v-972820fb]{flex-direction:column;display:flex}.workspace-name[data-v-972820fb]{font-weight:500}.workspace-role[data-v-972820fb]{color:var(--color-text-secondary);text-transform:capitalize;font-size:.75rem}.oauth-divider[data-v-972820fb]{margin:16px 0 12px}.oauth-buttons[data-v-972820fb]{justify-content:center;gap:16px;margin-bottom:8px;display:flex}@media (width<=640px){.code-row[data-v-972820fb]{grid-template-columns:1fr}.code-button[data-v-972820fb]{width:100%}}.register-page[data-v-05292861]{--surface-50:var(--color-bg-base);--surface-100:#9696960a;background:var(--surface-50);flex-direction:column;min-height:100vh;display:flex}.auth-container[data-v-05292861]{flex:1;justify-content:center;align-items:center;padding:40px 20px;display:flex}.borderless[data-v-05292861]{background-color:var(--surface-100);box-shadow:none!important;border:none!important}.btn-primary-solid[data-v-05292861]{letter-spacing:.02em;border-radius:8px;font-weight:600}.auth-card[data-v-05292861]{border-radius:24px;width:100%;max-width:468px;padding:40px}.auth-title[data-v-05292861]{text-align:center;margin-bottom:24px;font-size:1.75rem;font-weight:600}.auth-form[data-v-05292861]{margin-top:24px}.code-panel[data-v-05292861]{flex-direction:column;gap:12px;display:flex}.code-row[data-v-05292861]{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.code-input-wrap[data-v-05292861]{width:100%}.code-button[data-v-05292861]{white-space:nowrap;min-width:132px}.verify-row[data-v-05292861]{margin-top:4px}.verify-state[data-v-05292861]{color:var(--color-text-secondary);margin:0;font-size:.85rem;line-height:1.6}.verify-state.verified[data-v-05292861]{color:#16a34a;font-weight:600}.form-actions[data-v-05292861]{margin-top:24px}.auth-footer[data-v-05292861]{text-align:center;border-top:1px solid var(--color-border);color:var(--color-text-secondary);margin-top:24px;padding-top:24px}.link[data-v-05292861]{color:var(--color-brand);margin-left:4px}.link[data-v-05292861]:hover{color:var(--color-brand-hover)}@media (width<=640px){.auth-container[data-v-05292861]{padding:24px 16px}.auth-card[data-v-05292861]{border-radius:20px;max-width:100%;padding:28px 20px}.code-row[data-v-05292861]{grid-template-columns:1fr}.code-button[data-v-05292861]{width:100%}}.settings-content[data-v-7d03a3b6]{flex-direction:column;gap:24px;display:flex}.settings-section[data-v-7d03a3b6]{flex-direction:column;gap:16px;display:flex}.section-header[data-v-7d03a3b6]{border-bottom:1px solid var(--color-border);align-items:center;gap:8px;padding-bottom:8px;display:flex}.section-icon[data-v-7d03a3b6]{font-size:18px}.section-title[data-v-7d03a3b6]{color:var(--color-text-primary);font-size:14px;font-weight:600}.settings-group[data-v-7d03a3b6]{flex-direction:column;gap:12px;padding-left:8px;display:flex}.setting-item[data-v-7d03a3b6]{background:var(--color-bg-tertiary);border-radius:8px;justify-content:space-between;align-items:center;padding:8px 12px;transition:background .2s;display:flex}.setting-item[data-v-7d03a3b6]:hover{background:var(--color-bg-hover,#8080801a)}.setting-label[data-v-7d03a3b6]{color:var(--color-text-primary);align-items:center;gap:10px;font-size:13px;display:flex}.label-icon[data-v-7d03a3b6]{opacity:.8;font-size:16px}.slider-container[data-v-7d03a3b6]{align-items:center;gap:12px;display:flex}.slider-value[data-v-7d03a3b6]{min-width:40px;color:var(--color-text-secondary);text-align:right;font-family:monospace;font-size:12px}.fade-enter-active[data-v-d23fbaff],.fade-leave-active[data-v-d23fbaff]{transition:opacity .3s}.fade-enter-from[data-v-d23fbaff],.fade-leave-to[data-v-d23fbaff]{opacity:0}.logo[data-v-d23fbaff]{align-items:center;gap:var(--brand-lockup-gap);font-family:var(--brand-lockup-font-family);font-weight:700;font-size:var(--brand-lockup-text-size);line-height:var(--brand-lockup-line-height);color:var(--color-text-primary);white-space:nowrap;text-decoration:none;display:flex}.logo[data-v-d23fbaff]:hover{color:var(--color-text-primary)}.logo .logo-text[data-v-d23fbaff]{color:var(--color-text-primary);line-height:var(--brand-lockup-line-height);letter-spacing:-.01em;font-weight:700}.logo-mark[data-v-d23fbaff]{width:var(--brand-lockup-icon-size);height:var(--brand-lockup-icon-size);color:var(--color-brand);flex-shrink:0}.back-btn-logo[data-v-d23fbaff]{align-items:center;gap:var(--gap-xs);font-weight:700;font-size:var(--font-size-body-1);color:var(--color-text-primary);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0;text-decoration:none;transition:opacity .3s;display:flex}.back-btn-logo .logo-icon[data-v-d23fbaff]{font-size:var(--font-size-heading-3);line-height:1}.back-btn-logo[data-v-d23fbaff]:hover{opacity:.8}.header-nav[data-v-1d6105cb]{align-items:center;gap:var(--gap-xs);display:flex}.header-link-button[data-v-1d6105cb]{justify-content:center;align-items:center;gap:var(--space-1);min-height:var(--button-height-small);padding:0 var(--padding-button-sm-x);border-radius:var(--radius-md);border:1px solid var(--color-border);color:var(--color-text-primary);font-size:var(--font-size-body-2);transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);background:0 0;font-weight:500;text-decoration:none;display:inline-flex}.header-link-icon[data-v-1d6105cb]{font-size:var(--font-size-body-2);flex-shrink:0}.header-link-button[data-v-1d6105cb]:hover,.header-link-button[data-v-1d6105cb]:focus-visible{background:var(--color-bg-tertiary);border-color:var(--color-border-hover)}@media (width<=720px){.header-nav[data-v-1d6105cb]{display:none}}.slide-down-enter-active[data-v-faf5d272],.slide-down-leave-active[data-v-faf5d272]{transition:opacity .5s cubic-bezier(.34,1.56,.64,1),transform .5s cubic-bezier(.34,1.56,.64,1)}.slide-down-enter-from[data-v-faf5d272],.slide-down-leave-to[data-v-faf5d272]{opacity:0;transform:translate(-50%,-40px)}.editor-actions[data-v-faf5d272]{align-items:center;gap:var(--gap-sm);z-index:10;display:flex;position:absolute;left:50%;transform:translate(-50%)}.editor-mode-switch[data-v-faf5d272]{--editor-mode-option-width:88px;--editor-mode-option-height:26px;grid-template-columns:repeat(2, var(--editor-mode-option-width));height:calc(var(--editor-mode-option-height) + 4px);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);flex-shrink:0;align-items:center;padding:2px;display:grid;position:relative;overflow:hidden}.editor-mode-thumb[data-v-faf5d272]{width:calc(var(--editor-mode-option-width) - 4px);border-radius:var(--radius-sm);border:1px solid var(--color-border-hover);background:var(--color-bg-base);height:calc(100% - 4px);box-shadow:var(--shadow-sm);transition:transform var(--transition-normal), background-color var(--transition-normal), box-shadow var(--transition-normal);will-change:transform;position:absolute;top:2px;left:2px;transform:translate(0)}.editor-mode-switch[data-mode=code] .editor-mode-thumb[data-v-faf5d272]{transform:translateX(var(--editor-mode-option-width))}.editor-mode-option[data-v-faf5d272]{z-index:1;justify-content:center;align-items:center;gap:var(--space-1);min-width:0;height:100%;padding:0 var(--space-2);color:var(--color-text-secondary);cursor:pointer;font:inherit;font-size:var(--font-size-meta);white-space:nowrap;transition:color var(--transition-fast), transform var(--transition-fast);background:0 0;border:0;font-weight:600;line-height:1;display:inline-flex;position:relative}.editor-mode-option[data-v-faf5d272]:hover{color:var(--color-brand-hover)}.editor-mode-option.is-active[data-v-faf5d272]{color:var(--color-brand)}.editor-mode-option[data-v-faf5d272]:focus-visible{outline:2px solid var(--color-brand);outline-offset:-2px;border-radius:var(--radius-sm)}.editor-mode-icon[data-v-faf5d272]{font-size:var(--font-size-body-2);flex-shrink:0}.playground-actions[data-v-faf5d272]{min-width:0;max-width:min(860px,100vw - 420px)}.playground-title[data-v-faf5d272]{text-overflow:ellipsis;min-width:0;max-width:220px;color:var(--color-text-secondary);white-space:nowrap;font-size:.9rem;font-weight:600;overflow:hidden}.public-time[data-v-faf5d272],.readonly-notice-text[data-v-faf5d272]{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.readonly-notice-text[data-v-faf5d272]{max-width:220px;color:var(--color-text-tertiary);font-size:var(--font-size-body-2)}.public-time[data-v-faf5d272]{max-width:160px;color:var(--color-text-tertiary);font-size:var(--font-size-body-2)}.release-notes-link[data-v-faf5d272]{color:var(--color-brand);cursor:pointer;font-size:var(--font-size-body-2);white-space:nowrap;background:0 0;border:none;padding:0}@media (width<=960px){.playground-actions[data-v-faf5d272]{max-width:calc(100vw - 280px)}.public-time[data-v-faf5d272],.readonly-notice-text[data-v-faf5d272]{display:none}}@media (width<=720px){.playground-actions[data-v-faf5d272]{max-width:calc(100vw - 220px)}.release-notes-link[data-v-faf5d272]{display:none}.playground-title[data-v-faf5d272]{max-width:140px}}.header-connection-status[data-v-47214276]{align-items:center;gap:var(--space-1);min-width:0;display:inline-flex}.connection-pill[data-v-47214276]{justify-content:center;align-items:center;gap:var(--space-1);min-width:58px;height:28px;padding:0 var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-tertiary);color:var(--color-text-secondary);cursor:pointer;font:inherit;font-size:var(--font-size-meta);white-space:nowrap;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);font-weight:600;line-height:1;display:inline-flex}.connection-pill[data-v-47214276]:hover,.connection-pill[data-v-47214276]:focus-visible{background:var(--color-bg-hover,var(--color-bg-tertiary));border-color:var(--color-border-hover);color:var(--color-text-primary)}.connection-pill[data-v-47214276]:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}.connection-dot[data-v-47214276]{border-radius:var(--radius-full);background:var(--color-text-tertiary);width:7px;height:7px}.connection-pill.is-connected .connection-dot[data-v-47214276]{background:var(--color-success)}.connection-pill.is-connecting .connection-dot[data-v-47214276]{background:var(--color-warning)}.connection-pill.is-error .connection-dot[data-v-47214276]{background:var(--color-error)}.connection-pill.is-connected[data-v-47214276]{border-color:var(--color-success);color:var(--color-text-primary)}.connection-pill.is-error[data-v-47214276]{border-color:var(--color-error)}.connection-tooltip[data-v-47214276]{gap:var(--space-1);max-width:440px;font-size:var(--font-size-body-2);display:grid}.connection-tooltip span[data-v-47214276]{color:var(--color-text-secondary)}.connection-detail-list[data-v-47214276]{margin:var(--space-1) 0 0;border:1px solid var(--color-border);border-radius:var(--radius-md);gap:0;padding:0;display:grid;overflow:hidden}.connection-detail-row[data-v-47214276]{align-items:start;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary);grid-template-columns:minmax(72px,max-content) minmax(0,1fr);display:grid}.connection-detail-row[data-v-47214276]:last-child{border-bottom:0}.connection-detail-row dt[data-v-47214276],.connection-detail-row dd[data-v-47214276]{min-width:0;margin:0}.connection-detail-row dt[data-v-47214276]{color:var(--color-text-tertiary);white-space:nowrap;font-weight:600}.connection-detail-row dd[data-v-47214276]{color:var(--color-text-primary);overflow-wrap:anywhere}@media (width<=1120px){.connection-pill[data-v-47214276]{width:28px;min-width:28px;padding:0}.connection-label[data-v-47214276]{display:none}}.header-right[data-v-d5e196e1]{align-items:center;gap:var(--gap-xs);display:flex}.header-link-button[data-v-d5e196e1]{justify-content:center;align-items:center;gap:var(--space-1);min-height:var(--button-height-small);padding:0 var(--padding-button-sm-x);border-radius:var(--radius-md);border:1px solid var(--color-border);color:var(--color-text-primary);font-size:var(--font-size-body-2);transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);background:0 0;font-weight:500;text-decoration:none;display:inline-flex}.header-link-icon[data-v-d5e196e1]{font-size:var(--font-size-body-2);flex-shrink:0}.header-link-button[data-v-d5e196e1]:hover,.header-link-button[data-v-d5e196e1]:focus-visible{background:var(--color-bg-tertiary);border-color:var(--color-border-hover)}.header-download-link[data-v-d5e196e1]{white-space:nowrap}.action-btn[data-v-d5e196e1]{width:var(--button-height-medium);height:var(--button-height-medium);border-radius:var(--radius-md);background:var(--color-bg-tertiary);color:var(--color-text-secondary);cursor:pointer;border:none;justify-content:center;align-items:center;font-size:1rem;transition:background-color .2s,color .2s,transform .2s;display:flex}.action-btn[data-v-d5e196e1]:hover{background:var(--color-bg-hover,var(--color-bg-tertiary));color:var(--color-text-primary);transform:scale(1.05)}.action-btn[data-v-d5e196e1]:active{transform:scale(.95)}.locale-btn[data-v-d5e196e1]{width:auto;padding:0 var(--padding-sm);gap:var(--gap-xs);font-size:.85rem;font-weight:600}.locale-icon[data-v-d5e196e1]{align-items:center;display:flex}.locale-code[data-v-d5e196e1]{font-size:.8rem}.theme-btn[data-v-d5e196e1]{position:relative;overflow:hidden}.theme-btn[data-v-d5e196e1] svg{transition:transform .3s}.theme-btn[data-v-d5e196e1]:hover svg{transform:rotate(15deg)}.theme-btn.is-dark[data-v-d5e196e1] svg{color:var(--color-brand)}.user-btn[data-v-d5e196e1]{align-items:center;gap:var(--gap-xs);padding:var(--padding-2xs) var(--padding-sm) var(--padding-2xs) var(--padding-2xs);border-radius:var(--radius-md);background:var(--color-bg-tertiary);color:var(--color-text-primary);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);border:none;text-decoration:none;display:flex}.user-btn[data-v-d5e196e1]:hover,.user-btn[data-v-d5e196e1]:focus-visible{background:var(--color-bg-hover,var(--color-bg-tertiary))}.user-avatar[data-v-d5e196e1]{border-radius:var(--radius-sm);background:var(--color-brand);color:#18181c;justify-content:center;align-items:center;width:28px;height:28px;font-size:.8rem;font-weight:600;display:flex}.user-avatar-guest[data-v-d5e196e1]{background:var(--color-bg-hover,var(--color-bg-tertiary));color:var(--color-text-secondary)}.user-btn-guest[data-v-d5e196e1]{padding:var(--padding-2xs)}.user-name[data-v-d5e196e1]{font-size:.875rem;font-weight:500}@media (width<=720px){.header-right[data-v-d5e196e1]{gap:var(--space-1);margin-left:auto}.header-download-link[data-v-d5e196e1]{width:var(--button-height-medium);min-width:var(--button-height-medium);gap:0;padding:0;font-size:0}.header-download-link .header-link-icon[data-v-d5e196e1]{font-size:var(--font-size-body-1)}.locale-btn[data-v-d5e196e1]{width:var(--button-height-medium);padding:0}.locale-code[data-v-d5e196e1],.user-name[data-v-d5e196e1]{display:none}}.app-header[data-v-a2362ef6]{width:100%;z-index:var(--z-header);background:var(--color-bg-secondary);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);position:fixed;top:0;left:0;right:0}.header-container[data-v-a2362ef6]{max-width:var(--layout-public-max-width);padding:0 var(--padding-header-x);width:100%;height:var(--layout-header-height);justify-content:space-between;align-items:center;gap:var(--gap-xl);margin:0 auto;display:flex;position:relative}.app-header.is-editor .header-container[data-v-a2362ef6]{max-width:100vw;padding:0 var(--padding-header-x-wide)}.header-left[data-v-a2362ef6]{align-items:center;gap:var(--gap-sm);min-width:0;display:flex}.app-header.transitions-ready[data-v-a2362ef6]{transition:background-color .5s cubic-bezier(.4,0,.2,1),border-color .5s cubic-bezier(.4,0,.2,1),backdrop-filter .5s cubic-bezier(.4,0,.2,1)}.app-header.transitions-ready .header-container[data-v-a2362ef6]{transition:max-width .5s cubic-bezier(.4,0,.2,1),padding .5s cubic-bezier(.4,0,.2,1)}.app-header.transitions-ready .header-left[data-v-a2362ef6],.app-header.transitions-ready[data-v-a2362ef6] .header-right{transition:transform .5s cubic-bezier(.4,0,.2,1)}.slide-down-enter-active[data-v-a2362ef6],.slide-down-leave-active[data-v-a2362ef6]{transition:opacity .5s cubic-bezier(.34,1.56,.64,1),transform .5s cubic-bezier(.34,1.56,.64,1)}.slide-down-enter-from[data-v-a2362ef6],.slide-down-leave-to[data-v-a2362ef6]{opacity:0;transform:translate(-50%,-40px)}.fade-enter-active[data-v-a2362ef6],.fade-leave-active[data-v-a2362ef6]{transition:opacity .3s}.fade-enter-from[data-v-a2362ef6],.fade-leave-to[data-v-a2362ef6]{opacity:0}@media (width<=720px){.header-container[data-v-a2362ef6],.app-header.is-editor .header-container[data-v-a2362ef6]{gap:var(--gap-sm);padding:0 var(--padding-md)}.header-left[data-v-a2362ef6]{flex:0 auto}}.login-modal[data-v-d882f95d] .n-modal-mask{backdrop-filter:blur(8px)}.modal-hint[data-v-d882f95d]{color:var(--color-text-secondary);font-size:.875rem}.login-form[data-v-d882f95d]{margin-top:16px}.login-switch[data-v-d882f95d]{margin-bottom:16px}.code-row[data-v-d882f95d]{grid-template-columns:minmax(0,1fr) auto;gap:12px;width:100%;display:grid}.code-button[data-v-d882f95d]{white-space:nowrap;min-width:124px}.form-actions[data-v-d882f95d]{margin-top:24px}.oauth-divider[data-v-d882f95d]{margin:16px 0 12px}.oauth-buttons[data-v-d882f95d]{justify-content:center;gap:16px;margin-bottom:8px;display:flex}.form-footer[data-v-d882f95d]{text-align:center;margin-top:16px}@media (width<=640px){.code-row[data-v-d882f95d]{grid-template-columns:1fr}.code-button[data-v-d882f95d]{width:100%}}:root{box-sizing:border-box;--color-brand:#18a058;--color-brand-hover:#36ad6a;--color-brand-pressed:#0c7a43;--color-bg-base:#fff;--color-bg-secondary:#f5f7fa;--color-bg-tertiary:#e8ebed;--color-bg-card:#fff;--color-bg-modal:#fff;--color-bg-hover:#eef2f7;--color-text-primary:#1f2937;--color-text-secondary:#6b7280;--color-text-tertiary:#9ca3af;--color-text-inverse:#fff;--color-border:#e5e7eb;--color-border-hover:#d1d5db;--color-success:#18a058;--color-warning:#f59e0b;--color-error:#ef4444;--color-info:#3b82f6;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--transition-fast:.15s ease;--transition-normal:.25s ease;--transition-slow:.35s ease;--font-family-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-family-mono:SFMono-Regular, Menlo, Consolas, Courier, monospace;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-size-display-1:48px;--font-size-display-2:40px;--font-size-display-3:32px;--font-size-heading-1:28px;--font-size-heading-2:24px;--font-size-heading-3:20px;--font-size-body-1:16px;--font-size-body-2:14px;--font-size-meta:12px;--line-height-heading:1.2;--line-height-body:1.6;--brand-lockup-font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--brand-lockup-icon-size:var(--space-5);--brand-lockup-text-size:var(--font-size-body-1);--brand-lockup-gap:var(--gap-xs);--brand-lockup-line-height:var(--line-height-heading);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:40px;--space-8:48px;--space-9:64px;--padding-2xs:var(--space-1);--padding-xs:var(--space-2);--padding-sm:var(--space-3);--padding-md:var(--space-4);--padding-lg:var(--space-5);--padding-xl:var(--space-6);--padding-card-compact:var(--space-4);--padding-card:var(--space-5);--padding-panel:var(--space-5);--padding-modal:var(--space-5);--padding-header-x:var(--space-5);--padding-header-x-wide:var(--space-6);--padding-banner-y:var(--space-2);--padding-banner-x:var(--space-5);--padding-button-sm-x:var(--space-3);--padding-button-md-x:var(--space-4);--padding-button-lg-x:var(--space-5);--padding-input-sm-x:var(--space-3);--padding-input-md-x:var(--space-4);--padding-input-lg-x:var(--space-4);--padding-tag-x:var(--space-2);--gap-xs:var(--space-2);--gap-sm:var(--space-3);--gap-md:var(--space-4);--gap-lg:var(--space-5);--gap-xl:var(--space-6);--margin-xs:var(--space-2);--margin-sm:var(--space-3);--margin-md:var(--space-4);--margin-lg:var(--space-5);--margin-xl:var(--space-6);--margin-section:var(--space-8);--margin-page:var(--space-9);--height-tiny:24px;--height-small:32px;--height-medium:36px;--height-large:44px;--height-huge:46px;--button-height-small:32px;--button-height-medium:36px;--button-height-large:44px;--input-height-small:32px;--input-height-medium:36px;--input-height-large:40px;--tag-height-small:20px;--tag-height-medium:24px;--layout-public-max-width:1200px;--layout-reading-max-width:1080px;--layout-internal-max-width:1100px;--layout-header-height:60px;--layout-section-padding-desktop:120px;--layout-section-padding-mobile:80px;--panel-width-sm:240px;--panel-width-md:280px;--panel-width-lg:320px;--modal-width-sm:420px;--modal-width-md:560px;--modal-width-lg:720px;--z-header:100;--z-view-transition:9999;--focus-ring-color:#18a05829;--focus-ring-width:3px;--scrollbar-size:8px}:root[data-theme=dark]{--color-brand:#63e2b7;--color-brand-hover:#7fe7c4;--color-brand-pressed:#5acea7;--color-bg-base:#101014;--color-bg-secondary:#18181c;--color-bg-tertiary:#26262a;--color-bg-card:#1e1e22;--color-bg-modal:#2c2c30;--color-bg-hover:#303036;--color-text-primary:#f3f4f6;--color-text-secondary:#a0a0a6;--color-text-tertiary:#707074;--color-text-inverse:#101014;--color-border:#3a3a3e;--color-border-hover:#4a4a4e;--color-success:#63e2b7;--color-warning:#f5c542;--color-error:#e88080;--color-info:#70c0e8;--shadow-sm:0 1px 2px #0003;--shadow-md:0 4px 6px -1px #0000004d;--shadow-lg:0 10px 15px -3px #0006;--shadow-xl:0 20px 25px -5px #00000080;--focus-ring-color:#63e2b73d}*{box-sizing:border-box;margin:0;padding:0}html{font-size:var(--font-size-body-1);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scrollbar-gutter:stable}body{font-family:var(--font-family-sans);font-size:var(--font-size-body-1);background-color:var(--color-bg-base);color:var(--color-text-primary);line-height:var(--line-height-body);transition:background-color var(--transition-normal), color var(--transition-normal)}a{color:var(--color-brand);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-brand-hover)}::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}::-webkit-scrollbar-track{background:var(--color-bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-border-hover)}.container{width:100%;max-width:var(--layout-public-max-width);padding:0 var(--padding-lg);margin:0 auto}.section{padding:var(--layout-section-padding-desktop) 0}.card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--padding-card);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-normal)}.card:hover{box-shadow:var(--shadow-md)}::view-transition-old(root),::view-transition-new(root){mix-blend-mode:normal;animation:none}::view-transition-old(root){z-index:1}::view-transition-new(root){z-index:var(--z-view-transition);animation:.5s ease-out forwards ripple-reveal}@keyframes ripple-reveal{0%{clip-path:circle(0 at var(--ripple-x,50%) var(--ripple-y,50%))}to{clip-path:circle(var(--ripple-radius,100vmax) at var(--ripple-x,50%) var(--ripple-y,50%))}}:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:2px}@media (prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}@media (width<=768px){.section{padding:var(--layout-section-padding-mobile) 0}}.app-layout{min-height:100vh;padding-top:var(--layout-header-height);flex-direction:column;display:flex}.app-main{min-height:calc(100vh - var(--layout-header-height));flex-direction:column;flex:1;display:flex}.announcement-banners{flex-direction:column;display:flex}.announcement-banner{padding:var(--padding-banner-y) var(--padding-banner-x);justify-content:space-between;align-items:center;gap:var(--gap-sm);font-size:.875rem;line-height:1.5;display:flex}.announcement-banner--info{color:var(--color-text-primary);background:#1890ff1f;border-bottom:1px solid #1890ff4d}.announcement-banner--warning{color:var(--color-text-primary);background:#fa8c161f;border-bottom:1px solid #fa8c1659}.announcement-banner--critical{color:var(--color-text-primary);background:#ff4d4f1f;border-bottom:1px solid #ff4d4f59}.announcement-content{flex:1}.announcement-close{cursor:pointer;color:var(--color-text-secondary);padding:var(--padding-2xs) var(--padding-xs);border-radius:var(--radius-sm);transition:background var(--transition-fast);background:0 0;border:none;flex-shrink:0;font-size:1.1rem;line-height:1}.announcement-close:hover{color:var(--color-text-primary);background:#00000014}.auth-degraded-banner{padding:var(--padding-banner-y) var(--padding-banner-x);justify-content:space-between;align-items:center;gap:var(--gap-sm);color:var(--color-text-primary);background:#fa8c161f;border-bottom:1px solid #fa8c1659;font-size:.875rem;line-height:1.5;display:flex}.auth-degraded-retry{padding:var(--padding-2xs) var(--padding-sm);border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-primary);transition:background var(--transition-fast);background:#fa8c1633;border:1px solid #fa8c1666;flex-shrink:0;font-size:.8rem}.auth-degraded-retry:hover:not(:disabled){background:#fa8c1659}.auth-degraded-retry:disabled{opacity:.6;cursor:not-allowed}
