/* Submission, correspondence and services share readable ink, not a new shell.
   Light belongs to the existing backdrop and opaque paper edges. No refraction,
   pointer tracking, image filters or text glow are introduced. */
:is(.submission-workspace,.inbox-full,.inbox-sheet,.alice-offers-page) {
  --ny-text: #f8fbfc; --ny-muted: #d5e2e7; --ny-subtle: #c5d6de;
  --ny-link: #a9e6e8; --ny-icon: #a9e6df; --ny-focus: #a9e6e8;
  --ny-surface: #172d36; --ny-raised: #203b44; --ny-field: #132831;
  --ny-light-edge: #dcfff53b; --ny-light-key: #b8f0df;
  --ny-light-shadow: inset 0 1px 0 #dcfff526, 0 10px 28px #020f191f;
  --ny-line: #91cbd233; --ny-line-strong: #b4e1e561;
  color: var(--ny-text); font-family: var(--nylon-type-ui);
  font-size: 16px; font-weight: 500; line-height: 1.75; letter-spacing: normal;
}
html[data-theme="light"] :is(.submission-workspace,.inbox-full,.inbox-sheet,.alice-offers-page) {
  --ny-text: #2b5868; --ny-muted: #466370; --ny-subtle: #4b6672;
  --ny-link: #176c70; --ny-icon: #247e86; --ny-focus: #217b85;
  --ny-surface: #fdfffe; --ny-raised: #e8f4f0; --ny-field: #ffffff;
  --ny-light-edge: #ffffff; --ny-light-key: #1c8074;
  --ny-light-shadow: inset 0 1px 0 #ffffff, 0 8px 26px #21677710;
  --ny-line: #3375802b; --ny-line-strong: #33758055;
}
:is(.submission-workspace,.inbox-full,.inbox-sheet,.alice-offers-page) :is(h1,h2,h3,legend) {
  font-family: var(--nylon-type-ui); letter-spacing: -.012em;
}
:root :is(.submission-workspace,.inbox-full,.alice-offers-page) h1,
:root .inbox-full .inbox-heading h1 {
  font-weight: 700; line-height: 1.3;
}
.inbox-full .inbox-reader h2 { font-family: var(--nylon-type-ui); font-weight: 700; }
/* Module font shorthands previously reset controls and messages to thin 400.
   Apply the actual roles after those skins, including the side-sheet reader. */
:root .inbox-full .inbox-page .inbox-reader-body,
:root .inbox-full .inbox-page .inbox-search input,
:root .inbox-sheet .notice-body,
:root .alice-offers-page .alice-product-info p { font-weight: 500; }
/* Match the legacy interface form rule's typed-input specificity as well as
   its font shorthand, so visible fields do not fall back to Inter/400. */
:root .submission-workspace .form-field :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select,textarea) {
  font-family: var(--nylon-type-ui); font-weight: 500;
}
:root .submission-workspace .form-field .ny-select-trigger { font-family: var(--nylon-type-ui); }
:root .submission-workspace .form-field > label,
:root .submission-workspace .attestation-field label,
:root .submission-workspace :is(button,.button,.primary-button),
:root .inbox-full :is(.inbox-tabs a,.inbox-search button,.inbox-categories a,.inbox-reader-actions button),
:root .inbox-sheet :is(.inbox-tabs a,.notice-actions button),
:root .alice-offers-page :is(.alice-product-option-label,.alice-offers-service-choices button) { font-weight: 600; }
:root .inbox-full .inbox-page .inbox-row-title,
:root .inbox-full .inbox-page .inbox-row.is-unread .inbox-row-title,
:root .inbox-sheet .notice h2,
:root .alice-offers-page :is(.alice-product-info h3,.alice-offers-section-heading h2,.alice-offers-benefits h2) { font-weight: 700; }
:root .alice-offers-page .alice-offers-benefits .reward-heading h2 { font-weight: 700; }
:root .submission-workspace .form-field label small,
:root .alice-offers-page .alice-product-action small { font-weight: 500; }
:root .inbox-full .inbox-page .inbox-reader-body,
:root .inbox-full .inbox-page .inbox-reader h2,
:root .inbox-full .inbox-page .inbox-row-title,
:root .inbox-full .inbox-page .inbox-row.is-unread .inbox-row-title { color: var(--ny-text); }
:root .inbox-full .inbox-page .inbox-reader {
  background: var(--ny-surface); border-top-color: var(--ny-light-edge);
  box-shadow: var(--ny-light-shadow);
}
:is(.submission-card,.inbox-full .inbox-reader,.alice-offers-page .alice-product,
    .alice-offers-page .reward-empty,.alice-offers-page .reward-ticket) {
  background-color: var(--ny-surface); border-top-color: var(--ny-light-edge);
  box-shadow: var(--ny-light-shadow);
}
/* One restrained rim responds at the action, while prose and data stay still. */
:is(.submission-workspace .submission-file-field,.inbox-full .inbox-row,
    .alice-offers-page .alice-offers-service-choices>button) {
  transition: border-color 180ms ease, box-shadow 220ms ease;
}
.submission-workspace .submission-file-field:focus-within,
.inbox-full .inbox-row:focus-within,
.alice-offers-page .alice-offers-service-choices>button[aria-pressed="true"] {
  border-color: var(--ny-light-key); box-shadow: inset 0 1px 0 var(--ny-light-edge);
}
body:has(.submission-workspace,.inbox-full,.alice-offers-page)>.site-ambient::after {
  content: ""; display: block; position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(ellipse at 24% 0%,#9be6e330,transparent 55%),
    radial-gradient(ellipse at 92% 42%,#bedcaf0e,transparent 62%);
  opacity: 1; animation: none; transform: none; filter: none;
}
html[data-theme="light"] body:has(.submission-workspace,.inbox-full,.alice-offers-page)>.site-ambient::after {
  background: radial-gradient(ellipse at 24% 0%,#ffffff52,transparent 52%),
    radial-gradient(ellipse at 90% 42%,#c6f5e323,transparent 64%);
}
@media(prefers-reduced-motion:reduce) {
  :is(.submission-workspace .submission-file-field,.inbox-full .inbox-row,
      .alice-offers-page .alice-offers-service-choices>button) { transition: none; }
}
@media(forced-colors:active),print {
  body:has(.submission-workspace,.inbox-full,.alice-offers-page)>.site-ambient::after { display: none; }
  :is(.submission-card,.inbox-full .inbox-reader,.alice-offers-page .alice-product,
      .alice-offers-page .reward-empty,.alice-offers-page .reward-ticket) { box-shadow: none; }
}
