.module-app{min-width:0;height:100svh;color:var(--im-color-text);background:var(--im-color-surface);font-family:var(--im-font-sans);padding-bottom:env(safe-area-inset-bottom);flex-direction:column;display:flex;overflow:hidden}.module-app .mail-titlebar{min-height:2.5rem;padding-top:env(safe-area-inset-top)}.module-account{color:inherit;font-size:var(--im-font-size-12);text-align:right;text-overflow:ellipsis;white-space:nowrap;opacity:.92;overflow:hidden}.module-ribbon{border-bottom:1px solid var(--im-color-border-strong);background:var(--im-color-surface-subtle);align-items:stretch;min-width:0;display:flex;box-shadow:0 2px 5px #191f270f}.ribbon-command-bar{flex:1;align-items:stretch;min-width:0;display:flex;position:relative}.ribbon-group-slot{align-items:stretch;display:flex}.ribbon-group-slot.is-overflowed{visibility:hidden;pointer-events:none;position:absolute;top:0;left:0}.ribbon-overflow{padding:0 var(--im-space-2);align-items:center;margin-left:auto;display:flex;position:relative}.ribbon-overflow-button{min-width:2.4rem}.ribbon-overflow-menu{z-index:40;top:calc(100% - var(--im-space-1));right:var(--im-space-2);gap:var(--im-space-1);min-width:13rem;padding:var(--im-space-2);border:1px solid var(--im-color-border-strong);border-radius:var(--im-radius-8);background:var(--im-color-surface);box-shadow:var(--im-shadow-menu);flex-direction:column;display:flex;position:absolute}.ribbon-overflow-menu section{flex-direction:column;gap:1px;display:flex}.ribbon-overflow-menu h2{padding:var(--im-space-1) var(--im-space-2);color:var(--im-color-text-tertiary);font-size:var(--im-font-size-11);letter-spacing:.06em;text-transform:uppercase;margin:0;font-weight:600}.ribbon-overflow-menu button{align-items:center;gap:var(--im-space-2);min-height:2rem;padding:0 var(--im-space-2);border-radius:var(--im-radius-4);color:var(--im-color-text);font:inherit;font-size:var(--im-font-size-13);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.ribbon-overflow-menu button:hover:not(:disabled),.ribbon-overflow-menu button[aria-current=true]{background:var(--im-color-hover)}.ribbon-overflow-menu button:disabled{opacity:.45;cursor:not-allowed}.ribbon-button img{object-fit:contain;flex:none}.ribbon-button .ribbon-view-glyph{color:inherit}.module-workspace{background:var(--im-color-canvas);flex:1;min-height:0;display:flex;overflow:hidden}.module-app .app-rail{flex:none;width:3rem}.module-body{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.calendar-banner,.contacts-banner,.calendar-status,.contacts-status{align-items:center;gap:var(--im-space-2);margin:var(--im-space-3) var(--im-space-5);padding:var(--im-space-3) var(--im-space-4);border-radius:var(--im-radius-8);font-size:var(--im-font-size-13);display:flex}.calendar-status,.contacts-status,.calendar-banner-info,.contacts-banner-info{color:var(--im-color-text-secondary);background:var(--im-color-surface-subtle);border:1px solid var(--im-color-border)}.calendar-banner-warning,.contacts-banner-warning{color:var(--im-color-warning-ink);background:var(--im-color-warning-soft);border:1px solid var(--im-color-warning-border)}.calendar-retry,.contacts-retry{padding:var(--im-space-1) var(--im-space-3);border:1px solid var(--im-color-border-strong);border-radius:var(--im-radius-6);background:var(--im-color-surface);color:var(--im-color-text);font-size:var(--im-font-size-12);cursor:pointer;margin-left:auto}.mail-status-spinner{animation:.9s linear infinite module-spin}@keyframes module-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.mail-status-spinner{animation:none}}.calendar{flex-direction:column;flex:1;min-height:0;display:flex}.calendar-header,.contacts-header{justify-content:space-between;align-items:center;gap:var(--im-space-4);padding:var(--im-space-4) var(--im-space-5);border-bottom:1px solid var(--im-color-border);background:var(--im-color-surface);display:flex}.calendar-heading,.contacts-heading{align-items:center;gap:var(--im-space-2);color:var(--im-color-text);display:flex}.calendar-heading h1,.contacts-heading h1{font-size:var(--im-font-size-20);margin:0;font-weight:600}.calendar-controls{align-items:center;gap:var(--im-space-2);display:flex}.calendar-month-label{text-align:center;min-width:11ch;font-size:var(--im-font-size-16)}.calendar-nav-button{padding:var(--im-space-1) var(--im-space-2);border:1px solid var(--im-color-border-strong);border-radius:var(--im-radius-6);background:var(--im-color-surface);min-width:32px;min-height:32px;color:var(--im-color-text);cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.calendar-nav-button:disabled{opacity:.5;cursor:default}.calendar-nav-button:hover:not(:disabled){background:var(--im-color-hover)}.calendar-layout,.contacts-layout{gap:var(--im-space-4);min-height:0;padding:var(--im-space-4) var(--im-space-5);flex:1;display:flex;overflow:hidden}.calendar-main{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.calendar-weekdays{color:var(--im-color-text-tertiary);font-size:var(--im-font-size-12);text-transform:uppercase;letter-spacing:.04em;grid-template-columns:repeat(7,1fr);gap:1px;font-weight:600;display:grid}.calendar-weekday{padding:var(--im-space-1) var(--im-space-2)}.calendar-grid{border:1px solid var(--im-color-border);background:var(--im-color-border);border-radius:var(--im-radius-8);grid-template-columns:repeat(7,1fr);grid-auto-rows:minmax(88px,1fr);gap:1px;display:grid;overflow:hidden}.calendar-day{gap:var(--im-space-1);padding:var(--im-space-1) var(--im-space-2);background:var(--im-color-surface);flex-direction:column;min-height:0;display:flex;position:relative;overflow:hidden}.calendar-day-create,.calendar-week-slot{cursor:pointer;background:0 0;border:0}.calendar-day-create{position:absolute;inset:0}.calendar-day-create:hover,.calendar-week-slot:hover{background:var(--im-color-hover)}.calendar-day-events,.calendar-week-hour-cell-events{pointer-events:none}.calendar-chip,.calendar-week-event-chip{pointer-events:auto}.calendar-week-slots{flex-direction:column;display:flex;position:absolute;inset:0}.calendar-week-slot{flex:1;padding:0}.calendar-day-muted{background:var(--im-color-surface-subtle);color:var(--im-color-text-tertiary)}.calendar-day-number{font-size:var(--im-font-size-12);align-self:flex-start;font-weight:600;position:relative}.calendar-day-today{border-radius:var(--im-radius-round);background:var(--im-color-action);min-width:22px;height:22px;color:var(--im-color-text-inverse);justify-content:center;align-items:center;padding:0 6px;display:inline-flex}.calendar-day-events,.calendar-week-hour-cell-events{flex-direction:column;gap:2px;min-height:0;display:flex;position:relative}.calendar-chip{width:100%;padding:2px var(--im-space-1);border:none;border-left:3px solid var(--im-color-action);border-radius:var(--im-radius-4);background:var(--im-color-selection);color:var(--im-color-text);font-size:var(--im-font-size-11);text-align:left;cursor:pointer;align-items:baseline;gap:4px;display:flex;overflow:hidden}.calendar-chip:hover{background:var(--im-color-hover)}.calendar-chip-cancelled{opacity:.65;text-decoration:line-through}.calendar-chip-time{color:var(--im-color-text-secondary);font-variant-numeric:tabular-nums}.calendar-chip-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-more{font-size:var(--im-font-size-11);color:var(--im-color-text-tertiary)}.calendar-agenda{margin-top:var(--im-space-4);overflow-y:auto}.calendar-agenda-title,.contacts-detail-group-title{margin:0 0 var(--im-space-2);font-size:var(--im-font-size-13);color:var(--im-color-text-secondary);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.calendar-agenda-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.calendar-agenda-item{gap:var(--im-space-3);width:100%;padding:var(--im-space-2) var(--im-space-3);border-radius:var(--im-radius-6);color:var(--im-color-text);text-align:left;cursor:pointer;background:0 0;border:none;display:flex}.calendar-agenda-item:hover{background:var(--im-color-hover)}.calendar-agenda-item-active{background:var(--im-color-selection)}.calendar-agenda-when{min-width:8ch;color:var(--im-color-text-secondary);font-variant-numeric:tabular-nums;font-size:var(--im-font-size-13)}.calendar-agenda-summary{font-size:var(--im-font-size-13)}.calendar-empty,.contacts-empty{padding:var(--im-space-4);color:var(--im-color-text-tertiary);font-size:var(--im-font-size-13)}.calendar-detail,.contacts-detail{min-height:0;padding:var(--im-space-4);border:1px solid var(--im-color-border);border-radius:var(--im-radius-12);background:var(--im-color-surface);flex:0 0 340px;overflow-y:auto}.contacts-detail:focus-visible{box-shadow:inset 0 0 0 2px var(--im-color-focus);outline:0}.calendar-detail-head{justify-content:space-between;align-items:flex-start;gap:var(--im-space-2);display:flex}.calendar-detail-title{font-size:var(--im-font-size-18);margin:0;font-weight:600}.calendar-detail-close{color:var(--im-color-text-tertiary);cursor:pointer;background:0 0;border:none}.calendar-detail-status{margin:var(--im-space-2) 0 0;padding:2px var(--im-space-2);border-radius:var(--im-radius-round);background:var(--im-color-warning-soft);color:var(--im-color-warning-ink);font-size:var(--im-font-size-11);font-weight:600;display:inline-block}.calendar-detail-status-cancelled{background:var(--im-color-error-soft);color:var(--im-color-error-ink)}.calendar-detail-head-actions{align-items:center;gap:var(--im-space-2);flex:none;display:flex}.calendar-detail-action,.calendar-detail-action-danger{justify-content:center;align-items:center;gap:var(--im-space-1);min-height:30px;padding:var(--im-space-1) var(--im-space-2);border:1px solid var(--im-color-border-strong);border-radius:var(--im-radius-6);background:var(--im-color-surface);color:var(--im-color-text);font:inherit;font-size:var(--im-font-size-12);cursor:pointer;font-weight:600;display:inline-flex}.calendar-detail-action-danger{color:var(--im-color-error-ink)}.calendar-detail-action:disabled,.calendar-detail-action-danger:disabled{opacity:.55;cursor:default}.calendar-detail-action:focus-visible,.calendar-detail-action-danger:focus-visible{box-shadow:var(--im-focus-ring);outline:none}.calendar-detail-confirm{margin:var(--im-space-3) 0 0;padding:var(--im-space-3);border:1px solid var(--im-color-error-ink);border-radius:var(--im-radius-6);background:var(--im-color-surface-subtle)}.calendar-detail-confirm p{margin:0 0 var(--im-space-2);color:var(--im-color-text);font-size:var(--im-font-size-13)}.calendar-detail-confirm-error{color:var(--im-color-error-ink)}.calendar-detail-confirm-actions{align-items:center;gap:var(--im-space-2);display:flex}.calendar-detail-confirm-actions button{align-items:center;gap:var(--im-space-2);min-height:32px;padding:0 var(--im-space-3);border:1px solid var(--im-color-border-strong);border-radius:var(--im-radius-6);background:var(--im-color-surface);color:var(--im-color-text);font-size:var(--im-font-size-13);cursor:pointer;font-weight:600;display:inline-flex}.calendar-detail-confirm-actions button:disabled{opacity:.55;cursor:default}.calendar-detail-confirm-actions .calendar-detail-action-danger{border-color:var(--im-color-error-ink)}.calendar-detail-list{gap:var(--im-space-3);margin:var(--im-space-4) 0 0;flex-direction:column;display:flex}.calendar-detail-row dt{color:var(--im-color-text-tertiary);font-size:var(--im-font-size-12);align-items:center;gap:6px;margin-bottom:2px;font-weight:600;display:flex}.calendar-detail-row dd{overflow-wrap:anywhere;font-size:var(--im-font-size-14);line-height:var(--im-line-height-ui);margin:0}.calendar-detail-muted{color:var(--im-color-text-tertiary)}.calendar-detail-description{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--im-color-text-secondary)}.calendar-attendees{gap:var(--im-space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.calendar-attendee{justify-content:space-between;align-items:center;gap:var(--im-space-2);display:flex}.calendar-rsvp{padding:1px var(--im-space-2);border-radius:var(--im-radius-round);font-size:var(--im-font-size-11);background:var(--im-color-surface-subtle);color:var(--im-color-text-secondary);font-weight:600}.calendar-rsvp-accepted{background:var(--im-color-success-soft);color:var(--im-color-success-ink)}.calendar-rsvp-declined{background:var(--im-color-error-soft);color:var(--im-color-error-ink)}.calendar-rsvp-tentative{background:var(--im-color-warning-soft);color:var(--im-color-warning-ink)}.calendar-new-button{justify-content:center;align-items:center;gap:var(--im-space-2);min-height:34px;padding:0 var(--im-space-3);border:1px solid var(--im-color-action);border-radius:var(--im-radius-6);background:var(--im-color-action);color:var(--im-color-text-inverse);font-size:var(--im-font-size-13);cursor:pointer;font-weight:600;text-decoration:none;display:inline-flex}.calendar-new-button:hover{background:var(--im-color-action-hover)}.calendar-new-button:disabled{opacity:.5;cursor:default}.calendar-meeting-block{color:var(--im-color-text);font-family:Arial,Helvetica,sans-serif;font-size:var(--im-font-size-14);line-height:1.6}.calendar-meeting-rule{height:0;margin:var(--im-space-3) 0;border:0;border-top:1px solid var(--im-color-border)}.calendar-meeting-heading{font-size:var(--im-font-size-14);margin:0;font-weight:700}.calendar-meeting-line{margin:0}.calendar-meeting-join{align-items:center;gap:var(--im-space-3);margin:var(--im-space-1) 0 var(--im-space-2);flex-wrap:wrap;display:flex}.calendar-meeting-link{color:var(--im-color-action);overflow-wrap:anywhere;font-weight:700}.calendar-meeting-note{color:var(--im-color-text-secondary);font-size:var(--im-font-size-12);margin:0}.calendar-meeting-note p{margin:0}.calendar-conference-link{color:var(--im-color-action);font-size:var(--im-font-size-13);overflow-wrap:anywhere;font-weight:600}.calendar-inline-compose{flex:1;min-width:0;min-height:0;margin-top:0;display:flex}.calendar-inline-compose .compose-window{height:100%;max-height:100%;overflow-y:auto}.calendar-compose-commands{border-top:0;border-bottom:1px solid var(--im-color-border);justify-content:flex-start}.calendar-compose-commands button:not(.compose-send):not(.ribbon-button){min-height:2.25rem;padding:0 var(--im-space-3);border:1px solid var(--im-color-border-strong);border-radius:var(--im-radius-6);background:var(--im-color-surface);color:var(--im-color-text);font:inherit;font-size:var(--im-font-size-13);cursor:pointer;font-weight:600}.calendar-compose-commands button:not(.compose-send):not(.ribbon-button):hover:not(:disabled){background:var(--im-color-hover)}.calendar-compose-commands button:not(.compose-send):not(.ribbon-button):disabled{opacity:.5;cursor:default}.calendar-compose-when{grid-template-columns:4.2rem minmax(0,1fr) auto minmax(0,1fr) auto}.calendar-compose-repeat{grid-template-columns:4.2rem minmax(0,1fr) auto minmax(0,10rem)}.calendar-compose-repeat-end-label{color:var(--im-color-text-secondary);font-size:var(--im-font-size-12);white-space:nowrap;font-weight:600}.calendar-compose-repeat-custom{grid-template-columns:4.2rem 5rem minmax(0,8rem) minmax(0,1fr)}.calendar-compose-repeat-until{grid-template-columns:4.2rem minmax(0,12rem)}.calendar-compose-weekdays{gap:var(--im-space-1);flex-wrap:wrap;display:flex}.calendar-compose-weekdays button{min-width:2.6rem;min-height:2rem;padding:0 var(--im-space-2);border:1px solid var(--im-color-border-strong);border-radius:var(--im-radius-6);background:var(--im-color-surface);color:var(--im-color-text-secondary);font:inherit;font-size:var(--im-font-size-12);cursor:pointer;font-weight:600}.calendar-compose-weekdays button[aria-pressed=true]{border-color:var(--im-color-action);background:var(--im-color-action);color:var(--im-color-text-inverse)}.calendar-compose-weekdays button:disabled{opacity:.5;cursor:default}.calendar-compose-allday{align-items:center;gap:var(--im-space-2);color:var(--im-color-text);font-size:var(--im-font-size-12);white-space:nowrap;font-weight:600;display:flex}.calendar-compose-body{background:var(--im-color-surface);border-bottom:1px solid var(--im-color-border);flex-direction:column;min-width:0;display:flex}.calendar-compose-body .calendar-meeting-block,.calendar-compose-body>.calendar-meeting-note{padding:0 var(--im-space-4) var(--im-space-4)}.calendar-meeting-copy{font-family:inherit}.calendar-composer-connect{justify-content:space-between;align-items:center;gap:var(--im-space-3);padding:var(--im-space-2) var(--im-space-3);border-bottom:1px solid var(--im-color-border);display:flex}.calendar-composer-connect p{color:var(--im-color-text-secondary);font-size:var(--im-font-size-12);margin:0}.calendar-composer-connect button,.calendar-meeting-copy,.calendar-composer-confirm-actions button{min-height:34px;padding:0 var(--im-space-3);border:1px solid var(--im-color-border-strong);border-radius:var(--im-radius-6);background:var(--im-color-surface);color:var(--im-color-text);font-size:var(--im-font-size-13);cursor:pointer;font-weight:600}.calendar-composer-connect button:disabled,.calendar-meeting-copy:disabled,.calendar-composer-confirm-actions button:disabled{opacity:.5;cursor:default}.calendar-composer-error{color:var(--im-color-error-ink);font-size:var(--im-font-size-13);margin:0}.calendar-composer-field-error{color:var(--im-color-error-ink);font-size:var(--im-font-size-12);margin:0}.calendar-composer-confirm{padding:var(--im-space-3);border:1px solid var(--im-color-error-ink);border-radius:var(--im-radius-8);background:var(--im-color-surface-subtle);margin:0}.calendar-composer-confirm p{margin:0 0 var(--im-space-2);color:var(--im-color-text);font-size:var(--im-font-size-13)}.calendar-composer-confirm-actions{justify-content:flex-end;align-items:center;gap:var(--im-space-2);display:flex}.calendar-composer-confirm-actions .calendar-composer-primary{align-items:center;gap:var(--im-space-2);border-color:var(--im-color-action);background:var(--im-color-action);color:var(--im-color-text-inverse);display:inline-flex}.calendar-inline-compose .calendar-composer-error,.calendar-inline-compose .calendar-composer-field-error,.calendar-inline-compose .calendar-composer-confirm{margin:var(--im-space-3) var(--im-space-4)}@media (max-width:720px){.calendar-compose-when{align-items:center;gap:var(--im-space-2);padding:var(--im-space-2) var(--im-space-3);flex-wrap:wrap;display:flex}.calendar-composer-connect{flex-direction:column;align-items:stretch}}.calendar-subheader{justify-content:space-between;align-items:center;gap:var(--im-space-4);padding:var(--im-space-2) var(--im-space-5);border-bottom:1px solid var(--im-color-border);background:var(--im-color-surface);display:flex}.calendar-sidebar{gap:var(--im-space-4);flex-direction:column;flex:0 0 232px;min-height:0;display:flex;overflow-y:auto}.calendar-mini-month{padding:var(--im-space-3);border:1px solid var(--im-color-border);border-radius:var(--im-radius-8);background:var(--im-color-surface)}.calendar-mini-month-header{margin-bottom:var(--im-space-2);color:var(--im-color-text);font-size:var(--im-font-size-12);justify-content:space-between;align-items:center;font-weight:600;display:flex}.calendar-mini-month-nav{border-radius:var(--im-radius-4);width:22px;height:22px;color:var(--im-color-text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.calendar-mini-month-nav:hover{background:var(--im-color-hover)}.calendar-mini-month-weekdays,.calendar-mini-month-grid{grid-template-columns:repeat(7,1fr);gap:1px;display:grid}.calendar-mini-month-weekdays{color:var(--im-color-text-tertiary);font-size:var(--im-font-size-11);text-align:center;text-transform:uppercase;margin-bottom:2px;font-weight:600}.calendar-mini-month-day{aspect-ratio:1;border-radius:var(--im-radius-round);color:var(--im-color-text);font-size:var(--im-font-size-11);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex}.calendar-mini-month-day:hover{background:var(--im-color-hover)}.calendar-mini-month-day-muted{color:var(--im-color-text-tertiary)}.calendar-mini-month-day-today{box-shadow:inset 0 0 0 1px var(--im-color-action);font-weight:700}.calendar-mini-month-day-selected{background:var(--im-color-action);color:var(--im-color-text-inverse)}.calendar-list{padding:var(--im-space-3);border:1px solid var(--im-color-border);border-radius:var(--im-radius-8);background:var(--im-color-surface)}.calendar-list-title{margin:0 0 var(--im-space-2);font-size:var(--im-font-size-12);color:var(--im-color-text-secondary);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.calendar-list-empty{color:var(--im-color-text-tertiary);font-size:var(--im-font-size-12);margin:0}.calendar-list-items{gap:var(--im-space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.calendar-list-item{align-items:center;gap:var(--im-space-2);color:var(--im-color-text);font-size:var(--im-font-size-13);cursor:pointer;display:flex}.calendar-list-swatch{border-radius:var(--im-radius-round);flex-shrink:0;width:10px;height:10px}.calendar-agenda-colour-dot{width:8px;height:8px;margin-right:var(--im-space-2);border-radius:var(--im-radius-round);flex-shrink:0;display:inline-block}.calendar-week-view{flex-direction:column;flex:1;min-height:0;display:flex}.calendar-week-header-row,.calendar-week-allday-row,.calendar-week-hour-row{align-items:stretch;display:grid}.calendar-week-gutter{padding:var(--im-space-1) var(--im-space-2);color:var(--im-color-text-tertiary);font-size:var(--im-font-size-11)}.calendar-week-day-header{padding:var(--im-space-2) var(--im-space-1);border-left:1px solid var(--im-color-border);font-size:var(--im-font-size-12);flex-direction:column;align-items:center;gap:2px;display:flex}.calendar-week-day-weekday{color:var(--im-color-text-tertiary);font-size:var(--im-font-size-11);letter-spacing:.04em;text-transform:uppercase}.calendar-week-day-number{font-weight:700}.calendar-week-day-header-today .calendar-week-day-number{color:var(--im-color-action)}.calendar-week-allday-row{border-top:1px solid var(--im-color-border);border-bottom:1px solid var(--im-color-border)}.calendar-week-allday-cell{min-height:24px;padding:var(--im-space-1);border-left:1px solid var(--im-color-border);flex-direction:column;gap:2px;display:flex}.calendar-week-grid-scroll{flex:1;min-height:0;overflow-y:auto}.calendar-week-grid{flex-direction:column;display:flex}.calendar-week-hour-row{border-top:1px solid var(--im-color-border);min-height:48px}.calendar-week-hour-label{padding:2px var(--im-space-2);color:var(--im-color-text-tertiary);font-size:var(--im-font-size-11);font-variant-numeric:tabular-nums}.calendar-week-hour-cell{border-left:1px solid var(--im-color-border);flex-direction:column;gap:2px;min-height:0;padding:2px;display:flex;position:relative}.calendar-week-event-chip{width:100%;padding:2px var(--im-space-1);border:none;border-left:3px solid var(--im-color-action);border-radius:var(--im-radius-4);background:var(--im-color-selection);color:var(--im-color-text);font-size:var(--im-font-size-11);text-align:left;cursor:pointer;flex-direction:column;display:flex;overflow:hidden}.calendar-week-event-chip:hover{background:var(--im-color-hover)}.calendar-week-event-chip-active{outline:2px solid var(--im-color-action);outline-offset:-2px}.calendar-week-event-chip-time{color:var(--im-color-text-secondary);font-variant-numeric:tabular-nums}.calendar-week-event-chip-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (max-width:960px){.calendar-layout{flex-direction:column}.calendar-sidebar{flex-flow:wrap;flex:none}}@media (max-width:700px){.calendar-header{padding:var(--im-space-2) var(--im-space-3)}.calendar-heading h1{font-size:var(--im-font-size-16)}.calendar-subheader{padding:var(--im-space-2) var(--im-space-3)}.calendar-controls{justify-content:space-between;width:100%}.calendar-month-label{min-width:0;font-size:var(--im-font-size-14)}.calendar-nav-today{min-height:32px;padding:0 var(--im-space-3);border:1px solid var(--im-color-border-strong);border-radius:var(--im-radius-6);background:var(--im-color-surface);color:var(--im-color-text);font:inherit;font-size:var(--im-font-size-13);cursor:pointer;font-weight:600}.calendar-nav-today:disabled{opacity:.5;cursor:default}.calendar-layout{gap:var(--im-space-3);padding:var(--im-space-3)}.calendar-main{overscroll-behavior:contain;overflow-y:auto}.calendar-main>:not(.calendar-inline-compose):not(.calendar-week-view){flex:none}.calendar-sidebar{gap:var(--im-space-2);flex:none;overflow:visible}.calendar-mini-month{display:none}.calendar-list{width:100%;padding:var(--im-space-2)}.calendar-list-items{gap:var(--im-space-2);flex-flow:wrap}.calendar-list-item{min-height:2rem;padding:0 var(--im-space-2);border:1px solid var(--im-color-border);border-radius:var(--im-radius-round);font-size:var(--im-font-size-12)}.calendar-weekdays{gap:0;font-size:10px}.calendar-weekday{padding:var(--im-space-1) 0;text-align:center}.calendar-grid{grid-auto-rows:minmax(2.9rem,auto)}.calendar-day{padding:var(--im-space-1) 2px;align-items:center;gap:3px}.calendar-day-number{pointer-events:none;align-self:center}.calendar-day-today{min-width:20px;height:20px;padding:0 4px}.calendar-day-events{flex-flow:wrap;justify-content:center;gap:3px}.calendar-chip{border-radius:var(--im-radius-round);background:0 0;border-left-width:.4rem;width:.4rem;height:.4rem;padding:0}.calendar-day-events .calendar-chip{pointer-events:none}.calendar-chip-time,.calendar-chip-title,.calendar-more{display:none}.calendar-agenda{margin-top:var(--im-space-3);overflow-y:visible}.calendar-agenda-item{padding:var(--im-space-2)}.calendar-detail{max-height:60%;padding:var(--im-space-3);flex:0 auto}:is(.calendar:has(.calendar-inline-compose) .calendar-subheader,.calendar-layout:has(.calendar-inline-compose) .calendar-sidebar){display:none}.calendar-main:has(.calendar-inline-compose){overflow:hidden}.calendar-inline-compose .compose-window{flex-direction:column;display:flex;overflow:hidden}.calendar-inline-compose .compose-form{overscroll-behavior:contain;flex:auto;order:2;min-height:0;overflow-y:auto}.calendar-inline-compose .compose-form>*{flex:none}.calendar-inline-compose .calendar-compose-commands{gap:var(--im-space-2);padding:var(--im-space-3);padding-bottom:max(var(--im-space-3), env(safe-area-inset-bottom));border-top:1px solid var(--im-color-border);border-bottom:0;flex-wrap:wrap;order:3}.calendar-inline-compose .calendar-compose-commands .compose-send{height:2.5rem;margin-right:0}.calendar-inline-compose .calendar-compose-commands .ribbon-button{gap:var(--im-space-2);min-width:0;min-height:2.5rem;padding:0 var(--im-space-3);border:1px solid var(--im-color-border-strong);border-radius:var(--im-radius-6);font-size:var(--im-font-size-13);flex-direction:row;margin-left:auto;font-weight:600}.calendar-inline-compose .calendar-composer-connect{order:1}.calendar-inline-compose .compose-address-row{align-items:stretch;gap:var(--im-space-1);min-height:0;padding:var(--im-space-2) var(--im-space-3);flex-direction:column;display:flex}.calendar-inline-compose .compose-address-row>label{font-size:var(--im-font-size-12)}.calendar-inline-compose .compose-address-row input:not([type=checkbox]),.calendar-inline-compose .compose-address-row select{width:100%;height:auto;min-height:2.5rem;padding:0 var(--im-space-2);border:1px solid var(--im-color-border-strong);border-radius:var(--im-radius-6);background:var(--im-color-surface)}.calendar-inline-compose .compose-address-row select{appearance:auto;padding-right:var(--im-space-2)}.calendar-inline-compose .compose-address-row>.calendar-compose-allday{min-height:2.5rem;font-size:var(--im-font-size-13);flex-direction:row;justify-content:flex-start}.calendar-inline-compose .compose-address-row input[type=checkbox]{flex:none;width:1.15rem;height:1.15rem}.calendar-inline-compose .calendar-compose-weekdays{gap:var(--im-space-1)}.calendar-inline-compose .calendar-compose-weekdays button{min-height:2.25rem}.calendar-inline-compose .compose-window .compose-body{min-height:7rem;max-height:none;padding:var(--im-space-3)}.calendar-compose-body .calendar-meeting-block{padding:var(--im-space-3);margin:0 var(--im-space-3) var(--im-space-3);border:1px solid var(--im-color-border);border-radius:var(--im-radius-8);background:var(--im-color-surface-subtle)}.calendar-compose-body .calendar-meeting-block .calendar-meeting-rule{display:none}.calendar-compose-body .calendar-meeting-join{align-items:stretch;gap:var(--im-space-2);flex-direction:column}.calendar-compose-body .calendar-meeting-copy{width:100%;min-height:2.5rem}.calendar-composer-connect{padding:var(--im-space-3)}}.contacts{background:var(--im-color-canvas);flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.contacts-search{align-items:center;gap:var(--im-space-2);padding:0 var(--im-space-3);border:1px solid var(--im-color-border-strong);border-radius:var(--im-radius-8);background:var(--im-color-surface);color:var(--im-color-text-tertiary);flex:0 320px;display:flex}.contacts-search input{min-width:0;padding:var(--im-space-2) 0;color:var(--im-color-text);font-size:var(--im-font-size-14);background:0 0;border:0;outline:0;flex:1}.contacts-search:focus-within{border-color:var(--im-color-focus);box-shadow:var(--im-focus-ring)}.contacts-primary-action,.contacts-secondary-action,.contacts-danger-action,.contacts-icon-button{justify-content:center;align-items:center;gap:var(--im-space-2);min-height:32px;padding:var(--im-space-1) var(--im-space-3);border:1px solid var(--im-color-border-strong);border-radius:var(--im-radius-6);background:var(--im-color-surface);color:var(--im-color-text);font:inherit;font-size:var(--im-font-size-13);cursor:pointer;line-height:1;text-decoration:none;display:inline-flex}.contacts-primary-action{border-color:var(--im-color-action);background:var(--im-color-action);color:var(--im-color-action-text)}.contacts-danger-action{color:var(--im-color-error-ink)}.contacts-icon-button{flex:none;width:32px;padding:0}.contacts-primary-action:disabled,.contacts-secondary-action:disabled,.contacts-danger-action:disabled,.contacts-icon-button:disabled{opacity:.55;cursor:default}.contacts-primary-action:focus-visible,.contacts-secondary-action:focus-visible,.contacts-danger-action:focus-visible,.contacts-icon-button:focus-visible,.contacts-person-row:focus-visible,.contacts-detail-back:focus-visible{box-shadow:var(--im-focus-ring);outline:0}.contacts .contacts-layout{flex:1;grid-template-columns:clamp(18rem,20vw,22rem) minmax(0,1fr);gap:0;min-height:0;padding:0;display:grid;overflow:hidden}.contacts-person-workspace{background:var(--im-color-surface);grid-template-columns:clamp(20rem,25vw,26rem) minmax(22rem,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.contacts-detail-tabs{display:none}.contacts-list-pane{border-right:1px solid var(--im-color-border);background:var(--im-color-surface);flex-direction:column;min-width:0;min-height:0;display:flex;overflow-y:auto}.contacts-list-group{padding:var(--im-space-3) var(--im-space-2);border-bottom:1px solid var(--im-color-border)}.contacts-list-group:last-child{border-bottom:0}.contacts-list-group-head{justify-content:space-between;align-items:center;gap:var(--im-space-2);padding:var(--im-space-1) var(--im-space-2) var(--im-space-2);display:flex}.contacts-list-group-head .contacts-heading{min-width:0}.contacts-list-group-meta{justify-content:flex-end;align-items:center;gap:var(--im-space-2);min-width:0;display:flex}.contacts-book-name{max-width:8rem;color:var(--im-color-text-tertiary);font-size:var(--im-font-size-11);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.contacts-book-picker{min-width:0}.contacts-book-picker select{max-width:9rem;min-height:26px;padding:0 var(--im-space-5) 0 var(--im-space-2);border:1px solid var(--im-color-border);border-radius:var(--im-radius-6);background:var(--im-color-surface);color:var(--im-color-text-secondary);font:inherit;font-size:var(--im-font-size-11);outline:0}.contacts-book-picker select:focus-visible{border-color:var(--im-color-focus);box-shadow:var(--im-focus-ring)}.contacts-heading h2{font-size:var(--im-font-size-13);text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:700;overflow:hidden}.contacts-count{min-width:21px;height:21px;padding:0 var(--im-space-2);border:1px solid var(--im-color-border);border-radius:var(--im-radius-round);background:var(--im-color-surface-subtle);color:var(--im-color-text-tertiary);font-size:var(--im-font-size-11);font-variant-numeric:tabular-nums;flex:none;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.contacts-person-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.contacts-person-row{align-items:center;gap:var(--im-space-3);width:100%;min-width:0;padding:var(--im-space-2);border-radius:var(--im-radius-8);color:var(--im-color-text);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--im-duration-ui) var(--im-easing-standard), background-color var(--im-duration-ui) var(--im-easing-standard);background:0 0;border:1px solid #0000;display:flex}.contacts-person-row:hover{background:var(--im-color-hover)}.contacts-person-row-active,.contacts-person-row-active:hover{border-color:var(--im-color-border);background:var(--im-color-selection)}.contacts-person-row-copy{flex-direction:column;flex:1;min-width:0;display:flex}.contacts-person-row-name,.contacts-person-row-secondary{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.contacts-person-row-name{font-size:var(--im-font-size-13);font-weight:600}.contacts-person-row-secondary{color:var(--im-color-text-secondary);font-size:var(--im-font-size-12);margin-top:1px}.contacts-list-pane .contacts-banner,.contacts-list-pane .contacts-status{margin:var(--im-space-1) var(--im-space-2);padding:var(--im-space-2);font-size:var(--im-font-size-12)}.contacts-list-pane .contacts-banner{flex-wrap:wrap;align-items:flex-start}.contacts-list-pane .contacts-retry{margin-left:0}.contacts-empty{justify-content:center;align-items:center;gap:var(--im-space-2);padding:var(--im-space-8) var(--im-space-4);border:1px dashed var(--im-color-border-strong);border-radius:var(--im-radius-12);background:var(--im-color-surface-subtle);color:var(--im-color-text-tertiary);text-align:center;flex-direction:column;display:flex}.contacts-empty svg{opacity:.7;flex:none}.contacts-empty p{max-width:44ch;font-size:var(--im-font-size-13);line-height:var(--im-line-height-ui);margin:0}.contacts-list-pane .contacts-empty{padding:var(--im-space-2);text-align:left;background:0 0;border:0;flex-direction:row;justify-content:flex-start}.contacts-list-pane .contacts-empty p{font-size:var(--im-font-size-12)}.contacts-truncated{margin:var(--im-space-2);color:var(--im-color-text-tertiary);font-size:var(--im-font-size-12)}.contacts-detail{min-width:0;min-height:0;padding:clamp(var(--im-space-5), 2.5vw, var(--im-space-8));border:0;border-right:1px solid var(--im-color-border);background:var(--im-color-surface);border-radius:0;overflow-y:auto}.contacts-detail>*{max-width:38rem}.contacts-context{min-width:0;min-height:0;padding:clamp(var(--im-space-5), 2.5vw, var(--im-space-8));background:var(--im-color-canvas);overflow-y:auto}.contacts-context>.contacts-empty{min-height:min(26rem,70%)}.contacts-context-head,.contacts-context-section-head{justify-content:space-between;align-items:flex-start;gap:var(--im-space-3);display:flex}.contacts-context-head{padding-bottom:var(--im-space-4);border-bottom:1px solid var(--im-color-border)}.contacts-context-head h2{font-size:var(--im-font-size-20);margin:0;line-height:1.2}.contacts-context-section{margin-top:var(--im-space-5);padding:var(--im-space-4);border:1px solid var(--im-color-border);border-radius:var(--im-radius-12);background:var(--im-color-surface)}.contacts-context-section-head h3{align-items:center;gap:var(--im-space-2);font-size:var(--im-font-size-14);margin:0;display:flex}.contacts-context-section-head p,.contacts-context-muted{color:var(--im-color-text-tertiary);font-size:var(--im-font-size-12);line-height:var(--im-line-height-ui);margin:3px 0 0}.contacts-context-link{color:var(--im-color-focus);font-size:var(--im-font-size-12);flex:none;font-weight:600;text-decoration:none}.contacts-context-link:hover{text-decoration:underline}.contacts-context-link:focus-visible{border-radius:var(--im-radius-4);box-shadow:var(--im-focus-ring);outline:0}.contacts-context-status,.contacts-context-warning{align-items:center;gap:var(--im-space-2);margin:var(--im-space-4) 0 0;color:var(--im-color-text-secondary);font-size:var(--im-font-size-13);display:flex}.contacts-context-warning{color:var(--im-color-error-ink);align-items:flex-start}.contacts-recent-mail-list,.contacts-availability-list,.contacts-shared-calendars ul{margin:var(--im-space-3) 0 0;flex-direction:column;gap:0;padding:0;list-style:none;display:flex}.contacts-recent-mail-item{border-top:1px solid var(--im-color-border);min-width:0}.contacts-recent-mail-item:first-child{border-top:0}.contacts-recent-mail-item>button{width:100%;min-width:0;padding:var(--im-space-3) var(--im-space-2);border-radius:var(--im-radius-6);color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:block}.contacts-recent-mail-item>button:hover{background:var(--im-color-hover)}.contacts-recent-mail-item>button:focus-visible{box-shadow:var(--im-focus-ring);outline:0}.contacts-recent-mail-subject{color:var(--im-color-text);font-size:var(--im-font-size-13);text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.contacts-recent-mail-meta{align-items:center;gap:var(--im-space-1);min-width:0;color:var(--im-color-text-tertiary);font-size:var(--im-font-size-11);margin-top:3px;display:flex}.contacts-recent-mail-meta span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.contacts-recent-mail-meta time{font-variant-numeric:tabular-nums;flex:none;margin-left:auto}.contacts-context-section .contacts-empty{margin-top:var(--im-space-3);padding:var(--im-space-5) var(--im-space-3)}.contacts-availability-list{gap:var(--im-space-2)}.contacts-availability-list li{align-items:flex-start;gap:var(--im-space-2);color:var(--im-color-text-secondary);font-size:var(--im-font-size-12);display:flex}.contacts-availability-list li span:last-child{flex-direction:column;gap:2px;display:flex}.contacts-availability-list strong{color:var(--im-color-text);font-size:var(--im-font-size-12)}.contacts-availability-dot,.contacts-calendar-swatch{border-radius:var(--im-radius-round);background:var(--im-color-error-ink);flex:none;width:9px;height:9px;margin-top:3px}.contacts-availability-tentative{background:var(--im-color-warning-ink)}.contacts-availability-unavailable{background:var(--im-color-text-tertiary)}.contacts-shared-calendars{margin-top:var(--im-space-4);padding-top:var(--im-space-3);border-top:1px solid var(--im-color-border)}.contacts-shared-calendars h4{font-size:var(--im-font-size-12);margin:0}.contacts-shared-calendars li{align-items:center;gap:var(--im-space-2);padding:var(--im-space-1) 0;color:var(--im-color-text-secondary);font-size:var(--im-font-size-12);display:flex}.contacts-calendar-swatch{background:var(--im-color-action);margin-top:0}.contacts-profile-facts{gap:var(--im-space-3);flex-direction:column;margin:0;display:flex}.contacts-profile-facts>div{gap:var(--im-space-3);grid-template-columns:minmax(6rem,.7fr) minmax(0,1.3fr);display:grid}.contacts-profile-facts dt{align-items:center;gap:var(--im-space-2);color:var(--im-color-text-tertiary);font-size:var(--im-font-size-12);display:flex}.contacts-profile-facts dd{min-width:0;color:var(--im-color-text);font-size:var(--im-font-size-13);overflow-wrap:anywhere;margin:0}.contacts-external-profiles{align-items:center;gap:var(--im-space-2);flex-wrap:wrap;display:flex}.contacts-detail>.contacts-empty{min-height:min(26rem,70%);margin:0 auto}.contacts-detail-back{align-items:center;gap:var(--im-space-2);margin-bottom:var(--im-space-3);padding:var(--im-space-1) var(--im-space-2);border-radius:var(--im-radius-6);color:var(--im-color-text-secondary);font:inherit;font-size:var(--im-font-size-13);cursor:pointer;background:0 0;border:0;display:none}.contacts-detail-head{align-items:center;gap:var(--im-space-4);padding-bottom:var(--im-space-4);border-bottom:1px solid var(--im-color-border);display:flex}.contacts-source-label{color:var(--im-color-text-tertiary);font-size:var(--im-font-size-11);letter-spacing:.045em;text-transform:uppercase;margin-bottom:3px;font-weight:700;display:block}.contacts-detail-name{font-size:var(--im-font-size-20);margin:0;font-weight:650;line-height:1.2}.contacts-detail-subtitle{color:var(--im-color-text-secondary);font-size:var(--im-font-size-13);margin:3px 0 0}.contacts-detail-actions,.contacts-editor-actions,.contacts-delete-confirmation>div{align-items:center;gap:var(--im-space-2);flex-wrap:wrap;display:flex}.contacts-detail-actions{margin-top:var(--im-space-4)}.contacts-managed-note,.contacts-editor-hint{max-width:58ch;margin:var(--im-space-4) 0 0;color:var(--im-color-text-secondary);font-size:var(--im-font-size-13);line-height:var(--im-line-height-body)}.contacts-delete-confirmation{margin-top:var(--im-space-3);padding:var(--im-space-3);border:1px solid var(--im-color-error-ink);border-radius:var(--im-radius-6);background:var(--im-color-surface-subtle)}.contacts-delete-confirmation p{margin:0 0 var(--im-space-2);color:var(--im-color-text);font-size:var(--im-font-size-13)}.contacts-detail-group{margin-top:var(--im-space-5)}.contacts-detail-group-title{align-items:center;gap:var(--im-space-2);margin:0 0 var(--im-space-2);color:var(--im-color-text-secondary);font-size:var(--im-font-size-12);letter-spacing:.04em;text-transform:uppercase;font-weight:700;display:flex}.contacts-detail-values{gap:var(--im-space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.contacts-detail-value{justify-content:space-between;align-items:center;gap:var(--im-space-3);min-width:0;font-size:var(--im-font-size-14);overflow-wrap:anywhere;display:flex}.contacts-detail a,.contacts-email-link{color:var(--im-color-focus);text-decoration:none}.contacts-email-link{font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;margin:0;padding:0}.contacts-detail a:hover,.contacts-email-link:hover{text-decoration:underline}.contacts-detail a.contacts-primary-action,.contacts-detail a.contacts-secondary-action{text-decoration:none}.contacts-detail a.contacts-primary-action{color:var(--im-color-action-text)}.contacts-detail-types{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:4px;display:flex}.contacts-type{padding:1px var(--im-space-2);border-radius:var(--im-radius-round);background:var(--im-color-surface-subtle);color:var(--im-color-text-secondary);font-size:var(--im-font-size-11);letter-spacing:.03em;text-transform:uppercase}.contacts-type-primary{background:var(--im-color-selection);color:var(--im-color-action)}.contacts-detail-org{font-size:var(--im-font-size-14);overflow-wrap:anywhere;margin:0}.contacts-detail-address{min-width:0;font-style:normal;line-height:var(--im-line-height-body);flex-direction:column;display:flex}.contacts-editor{background:0 0;border:0;margin:0;padding:0}.contacts-editor-head{justify-content:space-between;align-items:flex-start;gap:var(--im-space-3);padding-bottom:var(--im-space-4);border-bottom:1px solid var(--im-color-border);display:flex}.contacts-editor-head h2{font-size:var(--im-font-size-20);margin:0}.contacts-editor-grid{gap:var(--im-space-4);margin-top:var(--im-space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.contacts-editor-field,.contacts-editor-values{gap:var(--im-space-2);min-width:0;color:var(--im-color-text-secondary);font-size:var(--im-font-size-12);border:0;flex-direction:column;margin:0;padding:0;font-weight:600;display:flex}.contacts-editor-field-wide{grid-column:1/-1}.contacts-editor-field input,.contacts-editor-value input{width:100%;min-height:36px;padding:var(--im-space-1) var(--im-space-2);border:1px solid var(--im-color-border-strong);border-radius:var(--im-radius-6);background:var(--im-color-surface);color:var(--im-color-text);font:inherit;font-size:var(--im-font-size-14);outline:0;font-weight:400}.contacts-editor-field input:focus,.contacts-editor-value input:focus{border-color:var(--im-color-focus);box-shadow:var(--im-focus-ring)}.contacts-editor-value{align-items:center;gap:var(--im-space-2);display:flex}.contacts-editor-value label{flex:1;min-width:0}.contacts-editor-values .contacts-secondary-action{align-self:flex-start}.contacts-editor-address{gap:var(--im-space-3);min-width:0;padding:var(--im-space-3);border:1px solid var(--im-color-border);border-radius:var(--im-radius-8);background:var(--im-color-surface-subtle);flex-direction:column;margin:0;display:flex}.contacts-editor-address>legend{padding:0 var(--im-space-1);color:var(--im-color-text-secondary);font-size:var(--im-font-size-12);font-weight:700}.contacts-editor-address-grid{gap:var(--im-space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.contacts-editor-address-remove{align-self:flex-start}.contacts-editor-actions{margin-top:var(--im-space-5);justify-content:flex-end}@media (max-width:78rem){.contacts-person-workspace{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.contacts-detail-tabs{align-items:center;gap:var(--im-space-1);padding:var(--im-space-2) var(--im-space-3);border-bottom:1px solid var(--im-color-border);background:var(--im-color-surface);display:flex}.contacts-detail-tabs button{min-height:34px;padding:var(--im-space-1) var(--im-space-3);border-radius:var(--im-radius-6);color:var(--im-color-text-secondary);font:inherit;font-size:var(--im-font-size-12);cursor:pointer;background:0 0;border:1px solid #0000;font-weight:650}.contacts-detail-tabs button:hover{background:var(--im-color-hover)}.contacts-detail-tabs button:disabled{opacity:.55;cursor:default}.contacts-detail-tabs button[aria-pressed=true]{border-color:var(--im-color-border);background:var(--im-color-selection);color:var(--im-color-text)}.contacts-detail-tabs button:focus-visible{box-shadow:var(--im-focus-ring);outline:0}.contacts-detail[data-active=false],#contacts-context-panel[data-active=false]{display:none}.contacts-detail,.contacts-context{border:0}}@media (max-width:56rem){.contacts .contacts-layout{grid-template-columns:minmax(14rem,18rem) minmax(0,1fr)}}@media (max-width:720px){.calendar-header,.calendar-subheader,.contacts-header,.calendar-controls{flex-wrap:wrap}.contacts .contacts-layout{display:block;overflow:hidden}.contacts-list-pane,.contacts-detail,.contacts-context,.contacts-person-workspace{border:0;width:100%;height:100%}.contacts-person-workspace{display:none}.contacts-detail,.contacts-context{padding:var(--im-space-4)}.contacts-layout-detail-open .contacts-list-pane{display:none}.contacts-layout-detail-open .contacts-person-workspace{display:grid}.contacts-layout-detail-open .contacts-detail[data-active=false],.contacts-layout-detail-open #contacts-context-panel[data-active=false]{display:none}.contacts-detail-back{display:inline-flex}.contacts-editor-grid,.contacts-editor-address-grid{grid-template-columns:minmax(0,1fr)}.contacts-editor-field-wide{grid-column:auto}.contacts-detail-value{flex-direction:column;align-items:flex-start}.contacts-detail-types{justify-content:flex-start}.contacts-context-head,.contacts-context-section-head{flex-direction:column}.contacts-profile-facts>div{gap:var(--im-space-1);grid-template-columns:minmax(0,1fr)}.contacts-search input,.contacts-book-picker select,.contacts-editor-field input,.contacts-editor-value input{font-size:1rem}.contacts-editor-field input,.contacts-editor-value input,.contacts-book-picker select{min-height:2.5rem}.contacts-list-group-head{flex-wrap:wrap}.contacts-book-picker select,.contacts-book-name{max-width:100%}.contacts-primary-action,.contacts-secondary-action,.contacts-danger-action,.contacts-icon-button,.contacts-detail-tabs button{min-height:2.5rem}.contacts-icon-button{width:2.5rem}.contacts-person-row{min-height:2.75rem}.contacts-detail:has(.contacts-editor){padding-bottom:0}.contacts-editor-actions{z-index:2;margin:var(--im-space-5) calc(-1 * var(--im-space-4)) 0;padding:var(--im-space-3) var(--im-space-4);padding-bottom:max(var(--im-space-3), env(safe-area-inset-bottom));border-top:1px solid var(--im-color-border);background:var(--im-color-surface);position:sticky;bottom:0}.contacts-editor-actions>button{flex:1 1 0}}@media (prefers-reduced-motion:reduce){.contacts-person-row{transition:none}}@media (forced-colors:active){.contacts-person-row-active{border-color:highlight}}
.version-reload-prompt{z-index:80;align-items:center;gap:var(--im-space-3);width:max-content;max-width:calc(100% - var(--im-space-8));padding:var(--im-space-3) var(--im-space-4);border-radius:var(--im-radius-12);background:var(--im-color-navy);color:var(--im-color-text-inverse);box-shadow:var(--im-shadow-dialog);font-size:var(--im-font-size-13);line-height:var(--im-line-height-ui);margin-inline:auto;display:flex;position:fixed;inset-block-end:var(--im-space-4);inset-inline:0}.version-reload-prompt-icon{color:var(--im-color-text-inverse);display:inline-flex}.version-reload-prompt-text{font-weight:500}.version-reload-prompt-actions{align-items:center;gap:var(--im-space-1);display:inline-flex}.version-reload-prompt-reload{padding:var(--im-space-1) var(--im-space-3);border-radius:var(--im-radius-round);color:var(--im-color-text-inverse);font-size:var(--im-font-size-13);cursor:pointer;transition:background var(--im-duration-fast) var(--im-easing-standard);background:#ffffff1a;border:1px solid #ffffff47;font-weight:600}.version-reload-prompt-reload:hover{background:#ffffff2e}.version-reload-prompt-dismiss{padding:var(--im-space-1);border-radius:var(--im-radius-round);color:var(--im-color-text-dark-secondary);cursor:pointer;transition:color var(--im-duration-fast) var(--im-easing-standard);background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.version-reload-prompt-dismiss:hover{color:var(--im-color-text-inverse)}.version-reload-prompt-reload:focus-visible,.version-reload-prompt-dismiss:focus-visible{box-shadow:var(--im-focus-ring);outline:none}
