.app-header{z-index:2;padding-top:env(safe-area-inset-top,0px);background:var(--color-surface);border-bottom:1px solid var(--color-border-hairline);position:absolute;top:0;left:0;right:0}.app-header__plate{height:var(--appbar-height);background:var(--color-surface);align-items:center;display:flex}.app-header__nav{align-items:center;gap:var(--space-4);padding-left:var(--space-5);flex:auto;display:flex}.app-header__menu{flex:none;width:30px;height:30px;display:flex}.app-header__menu img{width:100%;height:100%}.app-header__menu:active{opacity:.5}.app-header__title{font-family:var(--font-display);font-weight:var(--font-weight-medium);font-size:var(--type-nav-size);line-height:var(--type-nav-line);letter-spacing:var(--type-nav-tracking);color:var(--color-text-heading);margin:0}
.wordmark{--wordmark-size:var(--type-wordmark-size);--wordmark-tracking:var(--type-wordmark-tracking);--wordmark-gap:3.8px;align-items:center;gap:var(--wordmark-gap);align-self:center;display:flex}.wordmark__mark{width:var(--wordmark-size);height:var(--wordmark-size);flex:none}.wordmark__text{font-family:var(--font-display);font-weight:var(--font-weight-semibold);font-size:var(--wordmark-size);letter-spacing:var(--wordmark-tracking);color:var(--color-wordmark-from);background:linear-gradient(to right, var(--color-wordmark-from), var(--color-wordmark-to));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}
.drawer__backdrop{z-index:3;position:absolute;inset:0}.drawer__backdrop[data-open=false]{display:none}.drawer{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);width:var(--drawer-width);z-index:4;background:var(--color-surface);box-shadow:var(--shadow-drawer);transition:transform var(--duration-sheet) var(--ease-standard), visibility 0s linear 0s;flex-direction:column;display:flex;position:absolute;top:0;bottom:0;left:0}.drawer[data-open=false]{visibility:hidden;transition:transform var(--duration-sheet) var(--ease-standard), visibility 0s linear var(--duration-sheet);transform:translate(-110%)}.drawer[data-open=true]{transform:translate(0)}@media (prefers-reduced-motion:reduce){.drawer{transition:none}}.drawer__head{padding:23px var(--space-9) 0;flex:none;justify-content:space-between;align-items:center;display:flex}.drawer__close{color:var(--color-text-tertiary);display:flex}.drawer__nav{min-height:0;padding:var(--space-9) var(--space-5) 0;flex:auto;overflow-y:auto}.drawer__nav ul{flex-direction:column;display:flex}.drawer__item{width:100%;height:var(--pill-height);align-items:center;gap:var(--space-4);padding:var(--space-5);border-radius:var(--radius-sm);font-family:var(--font-display);font-size:var(--type-row-title-size);line-height:var(--type-row-title-line);display:flex}.drawer__item[data-selected=true]{background:var(--color-surface-sunken);font-weight:var(--font-weight-semibold);color:var(--color-text-heading)}.drawer__item[data-selected=false]{font-weight:var(--font-weight-regular);color:var(--color-text-tertiary)}.drawer__item-icon{width:var(--space-9);height:var(--space-9);flex:none;justify-content:center;align-items:center;display:flex}.drawer__item-icon img{object-fit:contain;width:100%;height:100%}.drawer__item-label{white-space:nowrap}.drawer__account{align-items:center;gap:var(--space-4);margin:var(--space-4) var(--space-4) 32px;padding:0 var(--space-2);text-align:left;color:var(--color-text-tertiary);flex:none;display:flex}.drawer__avatar{border-radius:var(--radius-full);flex:none;justify-content:center;align-items:center;width:32px;height:32px;display:flex;position:relative;overflow:hidden}.drawer__avatar img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.drawer__avatar-photo{z-index:1}.drawer__avatar[data-photo=true] .drawer__avatar-initial{display:none}.drawer__avatar-initial{font-family:var(--font-display);font-weight:var(--font-weight-semibold);letter-spacing:-.1829px;color:var(--color-text-primary);font-size:12.19px;position:relative}.drawer__account-text{flex-direction:column;flex:auto;min-width:0;display:flex}.drawer__account-name{font-family:var(--font-display);font-weight:var(--font-weight-semibold);font-size:var(--type-row-title-size);line-height:var(--type-row-title-line);color:var(--color-text-heading);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.drawer__signout{height:var(--chip-height);padding:0 var(--space-5);border:1px solid var(--color-border-button);border-radius:var(--radius-full);background:var(--color-surface-sunken);font-family:var(--font-display);font-weight:var(--font-weight-semibold);font-size:var(--type-micro-size);letter-spacing:var(--type-micro-tracking);color:var(--color-text-tertiary);white-space:nowrap;flex:none}.drawer__signout:active{opacity:.7}
.app-shell{--app-header-total:calc(var(--appbar-height) + env(safe-area-inset-top,0px) + 1px);flex-direction:column;flex:auto;min-height:0;display:flex;position:relative}.app-shell__scroll{-webkit-overflow-scrolling:touch;min-height:0;padding:0 var(--gutter);padding-top:calc(var(--app-header-total) + var(--space-11));padding-bottom:calc(var(--space-12) + env(safe-area-inset-bottom,0px));flex-direction:column;flex:auto;display:flex;overflow-y:auto}
.contact-pill{min-width:0;height:var(--pill-height);justify-content:center;align-items:center;gap:var(--space-4);padding:0 var(--space-5);background:var(--color-surface);border:1.2px solid var(--color-border-field);border-radius:var(--radius-full);filter:drop-shadow(var(--shadow-pill));flex:1 1 0;display:flex}.contact-pill__icon{object-fit:contain;flex:none;width:16px;height:16px}.contact-pill__label{font-family:var(--font-display);font-weight:var(--font-weight-semibold);font-size:var(--type-row-title-size);letter-spacing:var(--type-row-title-tracking);color:var(--color-text-heading);white-space:nowrap}.contact-pill:active{opacity:.7}
.connector{padding:var(--space-7);background:var(--color-surface-sunken);border:1px solid var(--color-border-button);border-radius:var(--radius-lg);flex-direction:column;display:flex}.connector__main{align-items:center;gap:var(--space-2);display:flex}.connector__body{align-items:flex-start;gap:var(--space-5);flex:auto;min-width:0;display:flex}.connector__art{flex:none;margin-top:2px;display:block}.connector__art--symbol{width:var(--space-9);height:var(--space-9);color:var(--color-text-tertiary);justify-content:center;align-items:center;margin-top:0;display:flex}.connector__text{flex-direction:column;gap:2px;min-width:0;display:flex}.connector__name{font-family:var(--font-display);font-weight:var(--font-weight-semibold);font-size:var(--type-row-title-size);line-height:var(--type-row-title-line);color:var(--color-text-strong)}.connector__description{font-family:var(--font-display);font-weight:var(--font-weight-regular);font-size:var(--type-micro-size);line-height:var(--type-micro-line);color:var(--color-text-tertiary)}.connector__action{height:var(--chip-height);min-width:72px;padding:0 var(--space-5);border:1px solid var(--color-border-button);border-radius:var(--radius-full);font-family:var(--font-display);font-weight:var(--font-weight-semibold);font-size:var(--type-micro-size);letter-spacing:var(--type-micro-tracking);color:var(--color-text-tertiary);white-space:nowrap;transition:opacity var(--duration-fast) var(--ease-standard);background:#ffffffe6;flex:none;justify-content:center;align-items:center;display:flex}.connector__action:disabled{opacity:.5;cursor:default}.connector__action:not(:disabled):active{opacity:.7}.connector__accounts{margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--color-border-button);flex-direction:column;display:flex}.account{align-items:center;gap:var(--space-2);padding:var(--space-2) 0;font-family:var(--font-display);font-size:var(--type-micro-size);line-height:var(--type-micro-line);flex-wrap:wrap;display:flex}.account+.account{border-top:1px solid var(--color-border-hairline)}.account__email{min-width:0;font-weight:var(--font-weight-medium);color:var(--color-text-heading);text-overflow:ellipsis;white-space:nowrap;flex:auto;overflow:hidden}.account__status{color:var(--color-text-alert);flex:none}.account__disconnect{font-family:inherit;font-size:inherit;font-weight:var(--font-weight-medium);color:var(--color-text-tertiary);text-underline-position:from-font;flex:none;text-decoration:underline}.account__disconnect:active{color:var(--color-danger)}.account__confirm{gap:var(--space-2);padding:var(--space-5);margin-top:var(--space-2);background:var(--color-surface-alert);border-radius:var(--radius-md);color:var(--color-text-alert);flex-direction:column;flex:100%;display:flex}.account__confirm-actions{gap:var(--space-2);display:flex}.account__btn{height:var(--chip-height);padding:0 var(--space-5);border-radius:var(--radius-full);font-family:var(--font-display);font-weight:var(--font-weight-semibold);font-size:var(--type-micro-size);color:var(--color-text-tertiary);background:var(--color-surface);border:1px solid}.account__btn--danger{background:var(--color-danger);border-color:var(--color-danger);color:var(--color-accent-text)}.account__btn:active{opacity:.7}
.notice{align-items:center;gap:var(--space-5);padding:var(--space-5) var(--space-7);border-radius:var(--radius-md);border:1px solid var(--color-border-button);background:var(--color-surface-sunken);font-family:var(--font-display);font-size:var(--type-micro-size);line-height:var(--type-micro-line);letter-spacing:var(--type-micro-tracking);color:var(--color-text-tertiary);display:flex}.notice[data-tone=error]{border-color:var(--color-border-alert);background:var(--color-surface-alert);color:var(--color-text-alert)}.notice__text{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.notice__message{font-weight:var(--font-weight-medium)}.notice__fix{opacity:.85}.notice__retry{height:var(--chip-height);padding:0 var(--space-5);border-radius:var(--radius-full);font-family:var(--font-display);font-weight:var(--font-weight-semibold);font-size:var(--type-micro-size);color:inherit;border:1px solid;flex:none}.notice__retry:active{opacity:.6}
.home__lockup{justify-content:center;margin-bottom:36px;display:flex}.home__section{gap:var(--space-4);flex-direction:column;display:flex}.home__section+.home__section{margin-top:var(--space-8)}.home__section--contact+.home__section{margin-top:var(--space-11)}.home__section-title{font-family:var(--font-display);font-weight:var(--font-weight-semibold);font-size:var(--type-section-size);line-height:var(--type-section-line);color:var(--color-text-heading);margin:0}.home__channels{gap:var(--space-4);display:flex}.home__rows{gap:var(--space-4);flex-direction:column;display:flex}.home__holding{flex:auto}.home__skeleton{border-radius:var(--radius-lg);background:var(--color-surface-sunken);border:1px solid var(--color-border-button);height:90px;animation:skeleton-pulse 1.4s var(--ease-standard) infinite}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.55}}@media (prefers-reduced-motion:reduce){.home__skeleton{animation:none}}
.site-icon{width:var(--lettermark-size);height:var(--lettermark-size);background:var(--color-surface-sunken);border:1px solid var(--color-border-field);border-radius:var(--radius-md);flex:none;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.site-icon__letter{font-family:var(--font-display);font-weight:var(--font-weight-semibold);font-size:var(--type-body-size);color:var(--color-text-heading);line-height:1}.site-icon__img{object-fit:contain;background:var(--color-surface);width:100%;height:100%;padding:6px;position:absolute;inset:0}
.key-card{gap:var(--space-5);padding:var(--space-7);background:var(--color-surface);border:1px solid var(--color-border-button);border-radius:var(--radius-lg);box-shadow:var(--shadow-pill);flex-direction:column;display:flex}.key-card__head{align-items:center;gap:var(--space-5);min-width:0;display:flex}.key-card__identity{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.key-card__site{font-family:var(--font-display);font-weight:var(--font-weight-semibold);font-size:var(--type-row-title-size);line-height:var(--type-row-title-line);color:var(--color-text-strong);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.key-card__saved{font-family:var(--font-display);font-weight:var(--font-weight-regular);font-size:var(--type-micro-size);line-height:var(--type-micro-line);color:var(--color-text-muted)}.key-card__remove{height:var(--chip-height);padding:0 var(--space-5);border:1px solid var(--color-border-button);border-radius:var(--radius-full);background:var(--color-surface-sunken);font-family:var(--font-display);font-weight:var(--font-weight-semibold);font-size:var(--type-micro-size);letter-spacing:var(--type-micro-tracking);color:var(--color-text-tertiary);flex:none}.key-card__remove:disabled{opacity:.5;cursor:default}.key-card__confirm{gap:var(--space-5);padding:var(--space-5);background:var(--color-surface-alert);border-radius:var(--radius-md);font-family:var(--font-display);font-size:var(--type-micro-size);line-height:var(--type-micro-line);color:var(--color-text-alert);flex-direction:column;display:flex}.key-card__confirm-actions{gap:var(--space-2);display:flex}.key-card__btn{height:var(--chip-height);padding:0 var(--space-5);border-radius:var(--radius-full);background:var(--color-surface);font-family:var(--font-display);font-weight:var(--font-weight-semibold);font-size:var(--type-micro-size);color:var(--color-text-tertiary);border:1px solid}.key-card__btn--danger{background:var(--color-danger);border-color:var(--color-danger);color:var(--color-accent-text)}.key-card__btn:active{opacity:.7}
.keys{gap:var(--space-4);flex-direction:column;display:flex}.keys__title{font-family:var(--font-display);font-weight:var(--font-weight-semibold);font-size:var(--type-section-size);line-height:var(--type-section-line);color:var(--color-text-heading);margin:0}.keys__list{gap:var(--space-4);flex-direction:column;display:flex}.keys__skeleton{border-radius:var(--radius-lg);background:var(--color-surface-sunken);border:1px solid var(--color-border-button);height:70px;animation:skeleton-pulse 1.4s var(--ease-standard) infinite}.keys__footnote{margin:var(--space-2) 0 0;font-family:var(--font-display);font-weight:var(--font-weight-regular);font-size:var(--type-micro-size);line-height:var(--type-micro-line);letter-spacing:var(--type-micro-tracking);color:var(--color-text-placeholder)}.keys--empty{text-align:center;justify-content:center;align-items:center;gap:var(--space-5);padding-bottom:var(--space-12);flex:auto}.keys__empty-glyph{opacity:.35;width:40px;height:40px}.keys__empty-title{font-family:var(--font-display);font-weight:var(--font-weight-semibold);font-size:var(--type-section-size);color:var(--color-text-heading);margin:0}.keys__empty-body{max-width:260px;font-family:var(--font-display);font-weight:var(--font-weight-regular);font-size:var(--type-micro-size);line-height:var(--type-body-relaxed-line);color:var(--color-text-tertiary);margin:0}
.connect{min-height:0;padding:calc(var(--space-12) + env(safe-area-inset-top,0px)) var(--gutter) calc(var(--space-12) + env(safe-area-inset-bottom,0px));flex:auto;justify-content:center;align-items:center;display:flex}.connect__content{width:100%;max-width:var(--content-width);gap:var(--space-11);flex-direction:column;display:flex}.connect__header{gap:var(--space-2);flex-direction:column;display:flex}.connect__title{font-family:var(--font-display);font-weight:var(--font-weight-medium);font-size:var(--type-title-size);line-height:var(--type-title-line);letter-spacing:var(--type-title-tracking);color:var(--color-text-primary);margin:0}.connect__subtitle{font-family:var(--font-display);font-weight:var(--font-weight-regular);font-size:var(--type-body-size);line-height:var(--type-body-relaxed-line);letter-spacing:var(--type-body-tracking);color:var(--color-text-secondary);margin:0}.connect__problem{padding:var(--space-5) var(--space-7);border-radius:var(--radius-md);background:var(--color-surface-alert);color:var(--color-text-alert);font-family:var(--font-display);font-size:var(--type-micro-size);line-height:var(--type-body-relaxed-line)}.connect__link{font-family:var(--font-display);font-weight:var(--font-weight-medium);font-size:var(--type-row-title-size);color:var(--color-text-tertiary);text-underline-position:from-font;align-self:center;text-decoration:underline}
