:root{--color-bg: #e0e6f0;--color-surface: #ffffff;--color-surface-hover: #f5f5f5;--color-border: #e5e5e5;--color-text-primary: #2b262c;--color-text-secondary: #5d646f;--color-label: #4d4d4d;--color-heading: #101828;--color-accent: #000000;--color-accent-shade: #333333;--color-danger: #dc2626;--color-success: #1b7a12;--color-avatar-fg: #ffffff;--color-btn-primary-bg: #000000;--color-btn-primary-bg-hover: #333333;--color-btn-primary-text: #ffffff;--color-btn-disabled-bg: #cccccc;--color-btn-disabled-text: #666666;--color-btn-success-text: #ffffff;--color-btn-danger-bg-hover: #b91c1c;--color-btn-danger-text: #ffffff;--color-btn-danger-tint: rgba(220, 38, 38, .12);--ds-spinner-accent: #000000;--ds-spinner-track: rgba(0, 0, 0, .15);--color-input-bg: #ffffff;--color-input-border: #d8dee9;--radius-btn: 24px;--radius-card: 16px;--radius-input: 16px;--shadow-card: 0 1px 3px rgba(0, 0, 0, .08);--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--font-size-display: 28px;--font-size-body: 17px;--font-size-secondary: 15px;--font-size-caption: 12px;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;line-height:1.5;color-scheme:light}*{box-sizing:border-box}html{scrollbar-gutter:stable}body{margin:0;padding:0;font-family:var(--font-family);color:var(--color-text-primary);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.app-shell{--back-affordance: 44px;--child-header-height: calc(var(--space-lg) + var(--space-md) + var(--back-affordance));min-height:100vh;min-height:100dvh;background-color:var(--color-bg)}.app-shell__container{width:100%;max-width:640px;margin:0 auto;padding:0 var(--space-md)}.app-shell__main{padding:var(--space-md) 0 var(--space-lg)}.app-header{padding-top:var(--space-lg)}.app-header__bar{display:flex;align-items:center;justify-content:flex-end;min-height:32px}.app-header__trailing{display:inline-flex;align-items:center}.app-header__title{margin:var(--space-md) 0 0;font-size:var(--font-size-body);font-weight:600;color:var(--color-heading)}.app-header__title-row{position:relative;display:flex;align-items:center;justify-content:center;margin:var(--space-md) 0 0}.app-header__title-row>.app-header__title{margin:0}.app-header__leading{position:absolute;left:0;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center}.app-header__back{display:inline-flex;align-items:center;justify-content:center;width:var(--back-affordance);height:var(--back-affordance);margin:0;padding:0;background:var(--color-surface);border:none;border-radius:50%;box-shadow:var(--shadow-card);font-size:20px;line-height:1;color:var(--color-heading);text-decoration:none;cursor:pointer}.app-header__back:disabled{color:var(--color-btn-disabled-text);cursor:not-allowed}.section-list{display:flex;flex-direction:column;gap:var(--space-lg)}.account-home__actions{margin-top:var(--space-lg)}.section{display:flex;flex-direction:column;gap:var(--space-sm)}.section__title{margin:0;padding:0 var(--space-xs);font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-secondary)}.section__card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);overflow:hidden}.list-row{display:flex;align-items:center;gap:var(--space-md);width:100%;min-height:64px;padding:var(--space-md);text-align:left;color:var(--color-text-primary);background-color:var(--color-surface);border:none;border-bottom:1px solid var(--color-border);font-family:inherit;font-size:var(--font-size-body)}.list-row:last-child{border-bottom:none}.list-row--button{cursor:pointer}.list-row--button:hover{background-color:var(--color-surface-hover)}.list-row--button:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.list-row__leading{display:inline-flex;align-items:center;flex-shrink:0}.list-row__body{display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-width:0}.list-row__label{font-weight:500}.list-row__description{font-size:14px;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-row__value{color:var(--color-text-secondary);font-size:15px;flex-shrink:0}.list-row__chevron{color:var(--color-text-secondary);font-size:20px;line-height:1;flex-shrink:0}.list-row__external{margin-left:var(--space-sm);color:var(--color-accent);font-size:15px;line-height:1;flex-shrink:0}.list-row--danger .list-row__label{color:var(--color-danger)}.ds-spinner{display:inline-block;width:var(--ds-spinner-size, 20px);height:var(--ds-spinner-size, 20px);border:var(--ds-spinner-stroke, 2px) solid var(--ds-spinner-track, rgba(0, 150, 136, .15));border-top-color:var(--ds-spinner-accent, #000000);border-radius:50%;animation:ds-spin .75s linear infinite}.ds-spinner--small{--ds-spinner-size: 20px;--ds-spinner-stroke: 2px}.ds-spinner--medium{--ds-spinner-size: 32px;--ds-spinner-stroke: 3px}.ds-spinner--large{--ds-spinner-size: 48px;--ds-spinner-stroke: 4px}.page-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh}@media(prefers-reduced-motion:reduce){.ds-spinner{animation-duration:3s}}@keyframes ds-spin{to{transform:rotate(360deg)}}.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background-color:var(--avatar-bg, var(--color-accent));color:var(--color-avatar-fg);font-weight:600;text-transform:uppercase;flex-shrink:0;-webkit-user-select:none;user-select:none}.avatar--accent{color:var(--color-avatar-fg, #ffffff);background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-shade) 100%)}.avatar--sm{width:32px;height:32px;font-size:13px}.avatar--md{width:44px;height:44px;font-size:16px}.avatar--lg{width:56px;height:56px;font-size:20px}.primary-button,.secondary-button{width:100%;padding:14px;font-size:var(--font-size-body);font-weight:600;font-family:inherit;border-radius:var(--radius-btn);cursor:pointer;margin-top:var(--space-md);display:flex;align-items:center;justify-content:center;gap:var(--space-sm);transition:background-color .2s,color .2s}@media(prefers-reduced-motion:reduce){.primary-button,.secondary-button{transition:none}}.primary-button{background-color:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);border:none}.primary-button:hover:not(:disabled){background-color:var(--color-btn-primary-bg-hover)}.secondary-button{background-color:var(--color-surface);color:var(--color-text-primary);border:1px solid var(--color-border)}.secondary-button:hover:not(:disabled){background-color:var(--color-surface-hover)}.primary-button:disabled,.secondary-button:disabled{background-color:var(--color-btn-disabled-bg);color:var(--color-btn-disabled-text);cursor:not-allowed}.success-button{background-color:var(--color-success);color:var(--color-btn-success-text)}.success-button:disabled{background-color:var(--color-success);color:var(--color-btn-success-text);cursor:default}.danger-button{background-color:var(--color-danger);color:var(--color-btn-danger-text);border-color:var(--color-danger)}.danger-button:hover:not(:disabled){background-color:var(--color-btn-danger-bg-hover)}.danger-button:disabled{border-color:var(--color-btn-disabled-bg)}.form-field{display:flex;flex-direction:column;gap:6px}.form-field__control{position:relative;display:flex;align-items:center}.form-field__control>label{position:absolute;left:14px;top:9px;font-size:var(--font-size-caption);font-weight:400;line-height:1;color:var(--color-text-secondary);pointer-events:none;transition:top .15s ease,font-size .15s ease}.form-field input:placeholder-shown:not(:focus)+label{top:50%;transform:translateY(-50%);font-size:var(--font-size-body)}@media(prefers-reduced-motion:reduce){.form-field__control>label{transition:none}}.form-field input,.form-field select{padding:24px 14px 8px;font-size:var(--font-size-body);font-family:inherit;border:1px solid var(--color-input-border);border-radius:var(--radius-input);background:var(--color-input-bg);width:100%}.form-field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%235d646f' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:calc(12px + 12px + var(--space-sm))}.form-field input:focus,.form-field select:focus{outline:none;border-color:var(--color-accent)}.form-field input:focus-visible,.form-field select:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.form-field input.error,.form-field select.error{border-color:var(--color-danger)}.error-text{color:var(--color-danger);font-size:var(--font-size-caption);margin-top:4px;display:block}.form-field__control>input{flex:1}.form-field__control--reveal>input{padding-right:44px}.form-field__reveal{position:absolute;right:var(--space-sm);display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:none;border:none;color:var(--color-text-secondary);cursor:pointer}.checkbox{display:flex;align-items:flex-start;gap:var(--space-sm)}.checkbox__input{width:20px;height:20px;margin:0;flex-shrink:0;accent-color:var(--color-accent);cursor:pointer}.checkbox__label{font-size:15px;line-height:1.4;color:var(--color-text-primary);cursor:pointer}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);padding:var(--space-md)}.toggle-row__label{font-size:15px;line-height:1.4;color:var(--color-text-primary)}.toggle{position:relative;flex:0 0 38px;width:38px;height:22px;padding:0;border:none;border-radius:22px;background:var(--color-border);cursor:pointer;transition:background .2s}.toggle[aria-checked=true]{background:var(--color-accent)}.toggle:disabled{cursor:not-allowed}.toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--color-surface);box-shadow:0 1px 2px #0003;transition:left .2s}.toggle[aria-checked=true]:after{left:18px}@media(prefers-reduced-motion:reduce){.toggle,.toggle:after{transition:none}}.banner{position:fixed;top:calc(var(--child-header-height) + var(--space-sm));left:50%;transform:translate(-50%);z-index:10;display:flex;align-items:flex-start;gap:var(--space-sm);width:calc(100% - 2 * var(--space-md));max-width:calc(640px - 2 * var(--space-md));padding:var(--space-md);border:1px solid;border-radius:10px;background:var(--color-surface);box-shadow:0 4px 16px #0000002e}.banner--error{color:var(--color-danger)}.banner--success{color:var(--color-success)}output.banner{display:flex}.banner__body{flex:1}.banner__message{margin:0;font-size:15px;line-height:1.4;color:inherit}.banner__detail{margin:var(--space-xs) 0 0;font-size:13px;line-height:1.4;color:var(--color-text-secondary)}.banner__action{margin:calc(var(--space-xs) - 4px) 0 -4px;padding:4px 0;border:none;background:none;font:inherit;font-size:13px;font-weight:600;color:inherit;text-decoration:underline;cursor:pointer}.banner__action:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.banner__dismiss{flex:0 0 auto;padding:var(--space-xs);border:none;background:none;font-size:20px;line-height:1;color:var(--color-text-secondary);cursor:pointer}.banner__dismiss:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.interstitial__message{color:var(--color-text-secondary);font-size:15px;margin:0 0 var(--space-md)}.identity-header{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);padding:var(--space-lg) 0;text-align:center}.identity-header__name{margin:var(--space-sm) 0 0;font-size:var(--font-size-display);font-weight:500;color:var(--color-heading)}.identity-header__email{margin:0;font-size:var(--font-size-secondary);color:var(--color-text-secondary)}.info-panel{background-color:var(--color-surface-hover);border-radius:var(--radius-card);padding:var(--space-md)}.info-panel__title{margin:0 0 var(--space-xs);font-size:var(--font-size-secondary);font-weight:600;color:var(--color-heading)}.info-panel__body{margin:0;font-size:14px;line-height:1.5;color:var(--color-text-secondary)}.session-ended{display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-md)}.session-ended__title{margin:0;font-size:18px;font-weight:600;color:var(--color-heading)}.session-ended__detail{margin:0;font-weight:600}.session-ended__body{margin:0;color:var(--color-text-secondary)}.session-ended__redirect{margin:0;font-size:14px;color:var(--color-text-secondary)}body.platform-ios.safe-area-native:not(.safe-area-handled) .app-shell__container{padding-top:max(env(safe-area-inset-top,0px),44px)}body.platform-ios.safe-area-native:not(.safe-area-handled) .account-home__actions{padding-bottom:max(env(safe-area-inset-bottom,0px),34px)}body.platform-ios.safe-area-native:not(.safe-area-handled) .banner{top:calc(max(env(safe-area-inset-top,0px),44px) + var(--child-header-height) + var(--space-sm))}body.platform-ios{overscroll-behavior-y:none}.delete-account{display:flex;flex-direction:column;gap:var(--space-md);padding:0 var(--space-md)}.delete-account__icon{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;margin:0 auto;border-radius:50%;background-color:var(--color-btn-danger-tint);color:var(--color-danger)}.delete-account__heading{margin:0;font-size:var(--font-size-display);font-weight:600;text-align:center;color:var(--color-heading)}.delete-account__lede,.delete-account__note{margin:0;font-size:var(--font-size-secondary);line-height:1.5;color:var(--color-text-secondary)}.delete-account__list{margin:0;padding-left:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-sm);font-size:var(--font-size-secondary);line-height:1.5;color:var(--color-text-secondary)}.delete-account__list strong{color:var(--color-text-primary)}.profile-avatar{display:flex;justify-content:center;padding:var(--space-lg) 0}.profile-form{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-md)}.form-subtitle-block{display:flex;flex-direction:column;gap:var(--space-xs)}.form-subtitle{margin:0;font-size:var(--font-size-secondary);line-height:1.4;text-align:center;color:var(--color-text-secondary)}.form-subtitle--strong{font-weight:600;color:var(--color-text-primary)}.confirm-dialog{width:min(92vw,420px);padding:var(--space-lg);border:none;border-radius:var(--radius-card);background:var(--color-surface);color:var(--color-text-primary)}.confirm-dialog::backdrop{background:#00000073}.confirm-dialog__title{margin:0 0 var(--space-sm);font-size:1.125rem;text-align:center}.confirm-dialog__body{margin:0 0 var(--space-lg);color:var(--color-text-secondary);text-align:center}.confirm-dialog__actions{display:flex;flex-direction:column;gap:var(--space-sm)}.mfa-factors{display:flex;flex-direction:column;gap:var(--space-md)}.mfa-factors .section{gap:var(--space-md)}.mfa-factor{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm);min-height:64px;padding:var(--space-md)}.mfa-factor__value{font-variant-numeric:tabular-nums}.mfa-factor__primary{font-size:var(--font-size-caption);color:var(--color-text-secondary)}.mfa-factor__actions{display:flex;gap:var(--space-md);margin-left:auto}.mfa-factor__action{padding:0;background:none;border:none;color:var(--color-accent);cursor:pointer}.mfa-factor__action--danger{color:var(--color-danger)}.mfa-factor__action:disabled{color:var(--color-btn-disabled-text);cursor:not-allowed}.mfa-phone,.mfa-method,.mfa-verify{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-md)}.mfa-phone__title,.mfa-method__title{margin:0;font-size:18px;font-weight:600;color:var(--color-heading)}.mfa-empty{color:var(--color-text-secondary)}.mfa-method__lede,.mfa-phone__lede,.mfa-phone__disclaimer{margin:0;font-size:var(--font-size-secondary);line-height:1.5;color:var(--color-text-secondary)}.mfa-method__option,.mfa-primary-list label{display:flex;align-items:flex-start;gap:var(--space-sm);padding:var(--space-sm) 0}.mfa-method__option small{display:block;color:var(--color-text-secondary)}.mfa-primary-list{margin:0 0 var(--space-md);padding:0;list-style:none}.code-field input{letter-spacing:.4em;font-variant-numeric:tabular-nums}.phone-field{display:grid;gap:var(--space-sm)}
