/*
 * YOU TICKET public-site themes.
 * The original black visual system remains the dark theme; light is the
 * default public-facing theme and intentionally keeps red/black as accents.
 */

html[data-theme="light"] {
  color-scheme: light;
  --ink: #f7f4ef;
  --surface: #ffffff;
  --surface-raised: #eee8e1;
  --paper: #171311;
  --muted: #655d57;
  --line: #d8d0c8;
  --red: #e51913;
  --red-dark: #a70d08;
  --orange: #ef130d;
  --focus: #b8120d;
}

html[data-theme="dark"] {
  color-scheme: dark;
}

body,
.site-header,
.site-nav,
.event-catalog,
.event-card,
.process-board,
.process-console-head,
.process-card,
.plaza-frame,
.calendar-workspace,
.calendar-agenda,
.calendar-day,
.agenda-event,
.cooperation-pathway-card,
.theme-toggle {
  transition:
    background-color 220ms ease,
    border-color 220ms ease,
    color 220ms ease,
    box-shadow 220ms ease;
}

.header-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}

.mobile-manager-trigger {
  display: none;
}

.theme-toggle {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 0 14px;
  border: 1px solid color-mix(in srgb, var(--paper) 24%, transparent);
  border-radius: var(--radius-pill);
  background: color-mix(in srgb, var(--surface) 82%, transparent);
  color: var(--paper);
  cursor: pointer;
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
}

.theme-toggle:hover {
  border-color: var(--red);
  color: var(--red);
}

.theme-toggle-icon {
  display: block;
  width: 15px;
  height: 15px;
  flex: 0 0 15px;
  background: currentColor;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 15px 15px;
  mask-size: 15px 15px;
}

html[data-theme="light"] .theme-toggle-icon {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='32 32 960 960'%3E%3Cpath fill='black' d='M511.419 91.092c-59.581 0-116.19 12.523-167.558 34.845 17.183-2.843 34.734-4.692 52.727-4.692 177.878 0 322.111 144.216 322.111 322.094 0 177.913-144.233 322.094-322.111 322.094-141.489 0-261.384-91.362-304.634-218.21 17.79 216.277 198.613 386.333 419.465 386.333 232.631 0 421.237-188.572 421.237-421.237 0.001-232.64-188.604-421.228-421.236-421.228zM357.498 528.675l30.6-105.716 105.699-30.558-105.699-30.583-30.6-105.699-30.549 105.699-105.709 30.583 105.709 30.558z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='32 32 960 960'%3E%3Cpath fill='black' d='M511.419 91.092c-59.581 0-116.19 12.523-167.558 34.845 17.183-2.843 34.734-4.692 52.727-4.692 177.878 0 322.111 144.216 322.111 322.094 0 177.913-144.233 322.094-322.111 322.094-141.489 0-261.384-91.362-304.634-218.21 17.79 216.277 198.613 386.333 419.465 386.333 232.631 0 421.237-188.572 421.237-421.237 0.001-232.64-188.604-421.228-421.236-421.228zM357.498 528.675l30.6-105.716 105.699-30.558-105.699-30.583-30.6-105.699-30.549 105.699-105.709 30.583 105.709 30.558z'/%3E%3C/svg%3E");
}

html[data-theme="dark"] .theme-toggle-icon {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2.25' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='4.25' fill='black' stroke='none'/%3E%3Cpath d='M12 1.5v3M12 19.5v3M1.5 12h3M19.5 12h3M4.57 4.57l2.12 2.12M17.31 17.31l2.12 2.12M4.57 19.43l2.12-2.12M17.31 6.69l2.12-2.12'/%3E%3C/g%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2.25' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='4.25' fill='black' stroke='none'/%3E%3Cpath d='M12 1.5v3M12 19.5v3M1.5 12h3M19.5 12h3M4.57 4.57l2.12 2.12M17.31 17.31l2.12 2.12M4.57 19.43l2.12-2.12M17.31 6.69l2.12-2.12'/%3E%3C/g%3E%3C/svg%3E");
}

html[data-theme="light"] body {
  background: var(--ink);
  color: var(--paper);
}

html[data-theme="light"] body::before {
  background:
    radial-gradient(circle at 82% 8%, rgba(229, 25, 19, 0.09), transparent 30%),
    radial-gradient(circle at 12% 58%, rgba(239, 19, 13, 0.055), transparent 32%);
}

html[data-theme="light"] .site-header {
  border-bottom-color: rgba(55, 42, 35, 0.08);
  background: rgba(247, 244, 239, 0.9);
  box-shadow: 0 9px 30px rgba(63, 38, 27, 0.06);
}

html[data-theme="light"] .site-header.is-scrolled {
  border-bottom-color: rgba(55, 42, 35, 0.08);
  background: rgba(247, 244, 239, 0.84);
  box-shadow: 0 12px 38px rgba(63, 38, 27, 0.1);
}

html[data-theme="light"] .home-static-page .site-header:not(.is-scrolled),
html[data-theme="light"] .cooperation-page .site-header:not(.is-scrolled) {
  background: rgba(247, 244, 239, 0.72);
  -webkit-backdrop-filter: blur(10px) saturate(1.08);
  backdrop-filter: blur(10px) saturate(1.08);
}

html[data-theme="light"] .site-nav a {
  color: #5f5650;
}

html[data-theme="light"] .site-nav a:hover,
html[data-theme="light"] .site-nav a.is-active {
  color: #171311;
}

html[data-theme="light"] .menu-toggle {
  border-color: #cfc6be;
}

html[data-theme="light"] .menu-toggle span {
  background: #171311;
}

html[data-theme="light"] .site-footer,
html[data-theme="light"] .cooperation-footer {
  color: #756c65;
}

html[data-theme="light"] .site-footer a,
html[data-theme="light"] .site-footer button,
html[data-theme="light"] .cooperation-footer nav a {
  color: #5f5650;
}

html[data-theme="light"] .footer-brand-logo {
  filter: none;
  opacity: 0.86;
}

html[data-theme="light"] .world-clock > span {
  color: #746b64;
}

html[data-theme="light"] dialog {
  border-color: #d7cec6;
  background: #fff;
  color: #171311;
  box-shadow: 0 36px 110px rgba(42, 24, 17, 0.26);
}

html[data-theme="light"] .manager-shell,
html[data-theme="light"] .profile-shell {
  background: #fff;
}

html[data-theme="light"] input,
html[data-theme="light"] textarea,
html[data-theme="light"] select {
  color-scheme: light;
}

/* Brand page */
html[data-theme="light"] .home-static-page main {
  background:
    radial-gradient(ellipse 70% 28% at 98% 10%, rgba(229, 25, 19, 0.09), transparent 76%),
    radial-gradient(ellipse 54% 34% at -6% 54%, rgba(229, 25, 19, 0.055), transparent 78%),
    #f7f4ef;
}

html[data-theme="light"] .home-static-page main::before {
  opacity: 0.22;
}

html[data-theme="light"] .home-static-page .hero {
  background: #f7f4ef;
  box-shadow: 0 0 0 100vmax #f7f4ef;
}

html[data-theme="light"] .home-static-page .hero::before {
  background:
    radial-gradient(ellipse 48% 54% at 76% 42%, rgba(229, 25, 19, 0.07), transparent 78%),
    #f7f4ef;
}

html[data-theme="light"] .hero-material-stage {
  overflow: hidden;
  border: 1px solid rgba(48, 35, 28, 0.1);
  border-radius: var(--radius-lg);
  background: #050505;
  box-shadow: 0 26px 70px rgba(74, 45, 31, 0.12);
}

html[data-theme="light"] .hero-material-image {
  mix-blend-mode: lighten;
}

html[data-theme="light"] .hero-intro {
  color: #655d57;
}

html[data-theme="light"] .text-action {
  border-bottom-color: #cfc6be;
  color: #514943;
}

html[data-theme="light"] .text-action:hover {
  border-bottom-color: var(--red);
  color: #171311;
}

html[data-theme="light"] .statement-mark,
html[data-theme="light"] .brand-statement h2 em {
  color: #3f3732;
}

html[data-theme="light"] .feedback-section::before {
  background:
    linear-gradient(90deg, rgba(247, 244, 239, 0.94) 0 34%, rgba(247, 244, 239, 0.6) 58%, rgba(247, 244, 239, 0.15) 100%),
    linear-gradient(180deg, var(--ink), transparent 18%, transparent 82%, var(--ink));
}

html[data-theme="light"] .feedback-section {
  color: var(--paper);
}

html[data-theme="light"] .feedback-heading > p {
  color: #655d57;
}

html[data-theme="light"] .team-preview {
  background:
    linear-gradient(145deg, rgba(229, 25, 19, 0.11), transparent 56%),
    #fff;
}

html[data-theme="light"] .team-preview-visual {
  background: #f0ebe6;
}

html[data-theme="light"] .social-platforms span {
  border-color: #c9c0b8;
  color: #504843;
}

html[data-theme="light"] .social-orbit-art::before {
  background: radial-gradient(ellipse 70% 66% at 56% 50%, rgba(229, 25, 19, 0.08), transparent 78%);
}

html[data-theme="light"] .process-section::before,
html[data-theme="light"] .metrics-section {
  background:
    radial-gradient(ellipse 74% 80% at 88% 20%, rgba(229, 25, 19, 0.08), transparent 74%),
    radial-gradient(ellipse 52% 66% at 8% 80%, rgba(239, 19, 13, 0.045), transparent 78%);
}

html[data-theme="light"] .process-board {
  border-color: #d4cbc3;
  background: #fff;
  box-shadow: 0 24px 74px rgba(68, 42, 30, 0.08);
}

html[data-theme="light"] .process-console-head,
html[data-theme="light"] .process-card {
  border-color: #e0d8d1;
  background: #fff;
}

html[data-theme="light"] .process-grid {
  background: #e0d8d1;
}

html[data-theme="light"] .process-live,
html[data-theme="light"] .process-card small {
  color: #756c65;
}

html[data-theme="light"] .metrics-grid article {
  border: 1px solid #ddd4cc;
  border-radius: var(--radius-md);
  background: rgba(255, 255, 255, 0.76);
  box-shadow: 0 16px 42px rgba(68, 42, 30, 0.05);
}

html[data-theme="light"] .metric-label {
  color: #5f5650;
}

html[data-theme="light"] .plaza-frame {
  border-color: rgba(229, 25, 19, 0.3);
  background: #fff;
  box-shadow: 0 28px 76px rgba(68, 42, 30, 0.1);
}

html[data-theme="light"] .plaza-data-rail {
  border-color: #ded5cd;
  color: #716861;
}

html[data-theme="light"] .closing-section::before {
  background: linear-gradient(transparent, rgba(229, 25, 19, 0.08));
}

/* Ticket plaza and event detail */
html[data-theme="light"] .catalog-page {
  background: #f7f4ef;
}

html[data-theme="light"] .event-catalog {
  border-color: #d9d0c8;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 24px 70px rgba(68, 42, 30, 0.07);
}

html[data-theme="light"] .filter-row button,
html[data-theme="light"] .catalog-empty button,
html[data-theme="light"] .inventory-toolbar button {
  border-color: rgba(229, 25, 19, 0.24);
  background: #fff;
  color: #3f3732;
  box-shadow: 0 5px 16px rgba(68, 42, 30, 0.05);
}

html[data-theme="light"] .catalog-search input {
  border-color: #d4cbc3;
  background: #fff;
  color: #171311;
}

html[data-theme="light"] .event-card {
  border-color: #d9d0c8;
  background: #fff;
  box-shadow: 0 14px 34px rgba(68, 42, 30, 0.06);
}

html[data-theme="light"] .event-card:hover {
  box-shadow: 0 22px 52px rgba(68, 42, 30, 0.13);
}

html[data-theme="light"] .event-meta {
  color: #6d645e;
}

html[data-theme="light"] .event-card-arrow {
  border-color: #d8d0c8;
}

html[data-theme="light"] .catalog-empty {
  border-color: #cfc6be;
}

html[data-theme="light"] .detail-breadcrumb {
  color: #716861;
}

html[data-theme="light"] .inventory-toolbar,
html[data-theme="light"] .detail-conversion,
html[data-theme="light"] .inventory-table-wrap,
html[data-theme="light"] .inventory-panel {
  border-color: #d9d0c8;
  background: #fff;
}

/* Calendar */
html[data-theme="light"] .calendar-search,
html[data-theme="light"] .calendar-workspace,
html[data-theme="light"] .calendar-selectors label,
html[data-theme="light"] .calendar-actions button,
html[data-theme="light"] .calendar-day,
html[data-theme="light"] .agenda-event {
  border-color: #d7cec6;
  background: #fff;
  color: #171311;
}

html[data-theme="light"] .calendar-search input,
html[data-theme="light"] .calendar-selectors select {
  color: #171311;
}

html[data-theme="light"] .calendar-weekdays,
html[data-theme="light"] .calendar-grid {
  background: #e2dad3;
}

html[data-theme="light"] .calendar-weekdays span,
html[data-theme="light"] .calendar-day.is-outside {
  color: #77706a;
}

html[data-theme="light"] .calendar-day.has-events:not(.is-selected) {
  background: #fff8f4;
}

html[data-theme="light"] .calendar-day.is-selected {
  background: var(--red);
  color: #fff;
}

html[data-theme="light"] .calendar-day.is-selected .calendar-day-events span {
  background: #171311;
}

/* Cooperation */
html[data-theme="light"] .cooperation-page {
  background: #f7f4ef;
}

html[data-theme="light"] .cooperation-hero::before {
  background:
    linear-gradient(90deg, #f7f4ef 0 28%, rgba(247, 244, 239, 0.92) 40%, rgba(247, 244, 239, 0.14) 68%, transparent 84%),
    linear-gradient(180deg, rgba(247, 244, 239, 0.15), transparent 68%, #f7f4ef 100%);
}

html[data-theme="light"] .cooperation-intro-copy p {
  color: #3f3732;
}

html[data-theme="light"] .cooperation-intro-copy p + p,
html[data-theme="light"] .cooperation-service-heading p,
html[data-theme="light"] .cooperation-contact-copy p {
  color: #6c635d;
}

html[data-theme="light"] .cooperation-marquee {
  background: #171311;
}

html[data-theme="light"] .cooperation-marquee b {
  color: #fff;
}

html[data-theme="light"] .cooperation-pathway::before {
  background: #938983;
}

html[data-theme="light"] .cooperation-pathway article::before {
  box-shadow: 0 0 0 6px #f7f4ef;
}

html[data-theme="light"] .cooperation-pathway-card {
  background: #fff;
  color: #171311;
  box-shadow: 0 16px 46px rgba(68, 42, 30, 0.07);
}

html[data-theme="light"] .cooperation-footer {
  border-color: #d9d0c8;
}

/* Hidden recruitment preview still follows the selected site theme. */
html[data-theme="light"] .recruitment-page,
html[data-theme="light"] .recruitment-page main {
  background: #f7f4ef;
}

@media (max-width: 1380px) {
  .theme-toggle-label {
    display: none;
  }

  .theme-toggle {
    width: 46px;
    padding: 0;
  }

  html[data-theme="light"] .site-nav {
    border-bottom-color: #d8d0c8;
    background: rgba(247, 244, 239, 0.97);
  }

  html[data-theme="light"] .site-nav a {
    border-bottom-color: #ded6cf;
  }
}

/* 2026-08-01 final light-theme visual pass.
   Keep these rules last so earlier compatibility layers cannot reintroduce dark surfaces. */
html[data-theme="light"] .hero-material-stage {
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
}

html[data-theme="light"] .hero-material-image {
  inset: -8% -12% -5%;
  width: 124%;
  height: 116%;
  object-fit: contain;
  object-position: center;
  mix-blend-mode: multiply;
  transform: none;
}

html[data-theme="light"] .team-preview,
html[data-theme="light"] .team-preview-visual {
  border: 0;
  background: transparent;
  box-shadow: none;
}

html[data-theme="light"] .team-preview.has-qr .team-preview-visual {
  background: #fff;
}

html[data-theme="light"] .metrics-grid article {
  border: 1px solid #e5e5ea;
  background: #fff;
  color: #48484a;
  box-shadow: none;
}

html[data-theme="light"] .metrics-grid strong {
  color: #48484a;
  font-weight: 800;
}

html[data-theme="light"] .metrics-grid article:hover,
html[data-theme="light"] .metrics-grid article:focus-within {
  border-color: var(--red);
  background: var(--red);
  color: #fff;
  transform: translateY(-3px);
}

html[data-theme="light"] .metrics-grid article:hover .metric-label,
html[data-theme="light"] .metrics-grid article:hover strong,
html[data-theme="light"] .metrics-grid article:hover em,
html[data-theme="light"] .metrics-grid article:focus-within .metric-label,
html[data-theme="light"] .metrics-grid article:focus-within strong,
html[data-theme="light"] .metrics-grid article:focus-within em {
  color: #fff;
}

html[data-theme="light"] .plaza-readout,
html[data-theme="light"] .plaza-readout strong,
html[data-theme="light"] .plaza-readout span,
html[data-theme="light"] .plaza-frame > a,
html[data-theme="light"] .plaza-frame > a:hover,
html[data-theme="light"] .plaza-frame > a:focus-visible {
  color: #fff;
}

html[data-theme="light"] .plaza-frame > a:hover,
html[data-theme="light"] .plaza-frame > a:focus-visible {
  background: #c9100b;
}

html[data-theme="light"] .calendar-mode-switch button {
  border: 0;
  background: transparent url("./assets/icons/calendar-mode-light.svg") center / 100% 100% no-repeat;
  color: #1d1d1f;
  box-shadow: none;
}

html[data-theme="light"] .calendar-mode-switch button > span:last-child {
  inset: 0 7% 0 29%;
}

html[data-theme="light"] .calendar-mode-switch button:hover {
  background-color: transparent;
  background-image: url("./assets/icons/calendar-mode-light.svg");
  color: var(--red);
}

html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"] {
  border: 0;
  background-color: #fff;
  background-image: url("./assets/icons/calendar-mode-active.svg");
  color: var(--red);
}

html[data-theme="light"] .calendar-mode-switch button small,
html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"] small {
  color: var(--red);
}

html[data-theme="light"] .calendar-workspace {
  border: 0;
  background: transparent;
  box-shadow: none;
}

html[data-theme="light"] .calendar-panel,
html[data-theme="light"] .calendar-agenda {
  border: 0;
  background: transparent;
  box-shadow: none;
}

html[data-theme="light"] .calendar-toolbar,
html[data-theme="light"] .calendar-agenda > div:first-child {
  border-color: #e5e5ea;
  background: transparent;
}

html[data-theme="light"] .calendar-weekdays,
html[data-theme="light"] .calendar-grid {
  background: transparent;
}

html[data-theme="light"] .calendar-day {
  border-color: #d2d2d7;
  background: #fff;
  color: #3a3a3c;
}

html[data-theme="light"] .calendar-day.is-outside {
  border-color: #e5e5ea;
  background: transparent;
  color: #aeaeb2;
}

html[data-theme="light"] .calendar-day.has-events:not(.is-selected),
html[data-theme="light"] .calendar-day:hover,
html[data-theme="light"] .calendar-day:focus-visible {
  border-color: var(--red);
  background: #fff;
}

html[data-theme="light"] .calendar-day.is-selected {
  border-color: var(--red);
  background: var(--red);
  color: #fff;
}

html[data-theme="light"] .cooperation-marquee {
  border-color: var(--red);
  background: var(--red);
}

html[data-theme="light"] .cooperation-marquee b,
html[data-theme="light"] .cooperation-pathway-label {
  color: #fff;
}

html[data-theme="light"] .wishlist-contact-guide {
  background: linear-gradient(135deg, #ef130d, #a60d09);
}

html[data-theme="light"] .wishlist-contact-guide > p,
html[data-theme="light"] .wishlist-contact-guide > p strong {
  color: #fff;
}

html[data-theme="light"] .profile-dialog,
html[data-theme="dark"] .profile-dialog {
  border: 0;
  outline: 0;
}

/* 2026-08-01 visual QA pass: final authority for independent light-theme components. */
html[data-theme="light"] body.home-static-page #home .hero-material-stage {
  overflow: visible;
}

html[data-theme="light"] body.home-static-page #home .hero-material-image {
  inset: -11% -15% 10% -13%;
  width: 128%;
  height: 112%;
  object-fit: contain;
  object-position: center top;
  transform: none;
  translate: 0 -18px;
  -webkit-mask-image: none;
  mask-image: none;
}

.brand-statement h2 {
  max-width: 100%;
  padding-right: clamp(12px, 2.5vw, 44px);
  overflow: visible;
  font-size: clamp(44px, 4.75vw, 86px);
}

.brand-statement h2 span,
.brand-statement h2 em {
  max-width: 100%;
  overflow: visible;
}

html[data-theme="light"] .team-layout {
  padding: 0;
  border: 0;
  background: transparent;
}

html[data-theme="light"] .team-grid {
  gap: 10px;
}

html[data-theme="light"] .team-member {
  min-height: 58px;
  padding: 10px 12px;
  border: 1px solid #dedee3;
  border-radius: 12px;
  background: #ffffff;
  color: #3a3a3c;
  box-shadow: none;
}

html[data-theme="light"] .team-member:hover,
html[data-theme="light"] .team-member:focus-visible,
html[data-theme="light"] .team-member.is-active {
  border-color: var(--red);
  background: var(--red);
  color: #ffffff;
  transform: none;
}

html[data-theme="light"] .team-preview,
html[data-theme="light"] .team-preview.has-qr {
  padding: 18px;
  border: 1px solid #dedee3;
  border-radius: 16px;
  background: #ffffff;
  box-shadow: none;
}

html[data-theme="light"] .team-preview-visual,
html[data-theme="light"] .team-preview.has-qr .team-preview-visual {
  border: 0;
  background: #ffffff;
}

html[data-theme="light"] .metrics-grid article {
  border: 1px solid #2c2c2e;
  background: #2c2c2e;
  color: #ffffff;
  box-shadow: none;
  cursor: pointer;
}

html[data-theme="light"] .metrics-grid article .metric-label,
html[data-theme="light"] .metrics-grid article strong,
html[data-theme="light"] .metrics-grid article em {
  color: #ffffff;
}

html[data-theme="light"] .metrics-grid article:hover,
html[data-theme="light"] .metrics-grid article:focus-visible,
html[data-theme="light"] .metrics-grid article.is-active {
  border-color: var(--red);
  background: var(--red);
  color: #ffffff;
  outline: none;
  transform: none;
}

html[data-theme="light"] .plaza-readout strong {
  letter-spacing: 0.08em;
  line-height: 0.86;
}

html[data-theme="light"] .catalog-controls .filter-row button {
  box-shadow: none;
  transform: none;
}

html[data-theme="light"] .catalog-controls .filter-row button:hover,
html[data-theme="light"] .catalog-controls .filter-row button:focus-visible,
html[data-theme="light"] .catalog-controls .filter-row button.is-active {
  border-color: var(--red);
  background: var(--red);
  color: #ffffff;
  box-shadow: none;
  transform: none;
}

html[data-theme="light"] .inventory-popover {
  border: 1px solid #d2d2d7;
  background: #ffffff;
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.12);
}

html[data-theme="light"] .inventory-option {
  border-color: #e5e5ea;
  background: #ffffff;
  color: #3a3a3c;
}

html[data-theme="light"] .inventory-option:hover,
html[data-theme="light"] .inventory-option:focus-visible,
html[data-theme="light"] .inventory-option.is-selected {
  background: var(--red);
  color: #ffffff;
}

html[data-theme="light"] .inventory-option i {
  color: currentColor;
}

html[data-theme="light"] .wishlist-quantity {
  border: 1px solid #d2d2d7;
  background: #ffffff;
}

html[data-theme="light"] .wishlist-quantity button,
html[data-theme="light"] .wishlist-quantity input {
  border-color: #e5e5ea;
  background: #ffffff;
  color: #3a3a3c;
}

html[data-theme="light"] .wishlist-quantity button:hover:not(:disabled),
html[data-theme="light"] .wishlist-quantity button:focus-visible {
  background: var(--red);
  color: #ffffff;
}

html[data-theme="light"] body.event-detail-v12 .inventory-code-row {
  border-color: #e5e5ea;
  background: #ffffff;
  color: #6e6e73;
}

html[data-theme="light"] body.event-detail-v12 .wishlist-ticket-title,
html[data-theme="light"] body.event-detail-v12 .wishlist-empty strong {
  color: #2c2c2e;
}

html[data-theme="light"] body.event-detail-v12 .wishlist-ticket-summary span,
html[data-theme="light"] body.event-detail-v12 .wishlist-empty,
html[data-theme="light"] body.event-detail-v12 .wishlist-remove {
  color: #6e6e73;
}

html[data-theme="light"] body.event-detail-v12 .inventory-codes > .wishlist-contact-guide {
  border-top-color: #e5e5ea;
  background: #ffffff;
}

html[data-theme="light"] body.event-detail-v12 .wishlist-clear {
  border-color: #d2d2d7;
  background: #ffffff;
  color: #515154;
}

html[data-theme="dark"] .wishlist-contact-guide {
  border: 1px solid rgba(230, 24, 18, 0.34);
  background: #161314;
  box-shadow: none;
}

html[data-theme="dark"] .wishlist-contact-guide > p {
  border: 0;
  background: rgba(230, 24, 18, 0.1);
  color: #e8e8ed;
}

html[data-theme="dark"] .detail-manager-cta {
  border: 1px solid #3a2a2a;
  background: #0e0e0f;
  color: #d1d1d6;
}

html[data-theme="dark"] .detail-manager-cta strong {
  background: rgba(230, 24, 18, 0.12);
  color: #ff6961;
}

html[data-theme="light"] body.cooperation-page,
html[data-theme="light"] body.cooperation-page main {
  background: #f5f5f7;
}

html[data-theme="light"] .cooperation-hero {
  background: transparent;
}

html[data-theme="light"] .cooperation-hero::before {
  background: linear-gradient(90deg, #f5f5f7 0%, rgba(245, 245, 247, 0.98) 28%, rgba(245, 245, 247, 0.78) 45%, rgba(245, 245, 247, 0) 70%);
}

html[data-theme="light"] .calendar-mode-switch {
  gap: 16px;
}

html[data-theme="light"] .calendar-mode-switch button {
  height: 76px;
  border: 0;
  background: transparent url("./assets/icons/calendar-mode-light.svg?v=20260801g") center / 100% 100% no-repeat;
  color: #1d1d1f;
  box-shadow: none;
  transform: none;
}

html[data-theme="light"] .calendar-mode-switch button > span:last-child {
  inset: 0 6% 0 29%;
}

html[data-theme="light"] .calendar-mode-switch button:hover,
html[data-theme="light"] .calendar-mode-switch button:focus-visible {
  border: 0;
  background: transparent url("./assets/icons/calendar-mode-light.svg?v=20260801g") center / 100% 100% no-repeat;
  color: var(--red);
  transform: none;
}

html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"] {
  border: 0;
  background: transparent url("./assets/icons/calendar-mode-active.svg") center / 100% 100% no-repeat;
  color: #ffffff;
}

html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"] strong,
html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"] small {
  color: #ffffff;
}

html[data-theme="light"] .forecast-item {
  margin-bottom: 12px;
  border: 1px solid #dedee3;
  border-radius: 18px;
  background: #ffffff;
  box-shadow: none;
}

html[data-theme="light"] .forecast-item-meta {
  border-color: #e5e5ea;
}

html[data-theme="light"] .forecast-note {
  border-color: #e5e5ea;
  background: #f5f5f7;
  color: #515154;
}

html[data-theme="light"] .forecast-item-actions > button,
html[data-theme="light"] .forecast-item-actions > a {
  box-shadow: none;
}

/* Final authority for the latest light UI review. */
html[data-theme="light"] .wishlist-contact-guide {
  border: 1px solid #dedee3;
  background: #fff;
  box-shadow: none;
}

html[data-theme="light"] .wishlist-contact-guide > p {
  border: 0;
  background: #f5f5f7;
  color: #515154;
}

html[data-theme="light"] .wishlist-contact-guide > p strong { color: var(--red); }

html[data-theme="light"] .detail-manager-cta {
  border: 1px solid #dedee3;
  background: #f5f5f7;
  color: #515154;
}

html[data-theme="light"] .detail-manager-cta strong {
  background: #fff;
  color: var(--red);
}

html[data-theme="light"] .wishlist-manager-verify {
  border: 1px solid var(--red);
  background: var(--red);
  color: #fff;
}

html[data-theme="light"] .wishlist-manager-verify:hover,
html[data-theme="light"] .wishlist-manager-verify:focus-visible {
  border-color: #1d1d1f;
  background: #1d1d1f;
}

html[data-theme="light"] .calendar-mode-switch button,
html[data-theme="light"] .calendar-mode-switch button:hover,
html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"] {
  border: 1px solid #d2d2d7;
  border-radius: 999px;
  background-color: #fff;
  background-image: none;
  box-shadow: none;
  color: #3a3a3c;
  transform: none;
}

html[data-theme="light"] .calendar-mode-switch button > span:last-child { inset: 0 8%; }

html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"],
html[data-theme="light"] .calendar-mode-switch button:hover,
html[data-theme="light"] .calendar-mode-switch button:focus-visible {
  border-color: var(--red);
  background-color: var(--red);
  color: #fff;
}

html[data-theme="light"] .calendar-mode-switch button small { color: var(--red); }

html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"] small,
html[data-theme="light"] .calendar-mode-switch button:hover small,
html[data-theme="light"] .calendar-mode-switch button:focus-visible small {
  color: rgba(255, 255, 255, 0.82);
}

html[data-theme="light"] .calendar-workspace {
  border: 0;
  background: transparent;
  box-shadow: none;
}

html[data-theme="light"] .calendar-panel,
html[data-theme="light"] .calendar-agenda {
  border: 1px solid #d8d8dd;
  border-radius: 18px;
  background: #fff;
  box-shadow: none;
}

html[data-theme="light"] .team-layout {
  padding: 14px;
  border: 1px solid #dedee3;
  border-radius: 18px;
  background: #fff;
  box-shadow: none;
}

html[data-theme="light"] .metrics-grid article {
  border: 1px solid var(--red);
  background: var(--red);
  color: #fff;
}

html[data-theme="light"] .metrics-grid article .metric-label,
html[data-theme="light"] .metrics-grid article strong,
html[data-theme="light"] .metrics-grid article em { color: #fff; }

html[data-theme="light"] .metrics-grid article:hover,
html[data-theme="light"] .metrics-grid article:focus-within {
  border-color: #1d1d1f;
  background: #1d1d1f;
  color: #fff;
  transform: translateY(-3px);
}

html[data-theme="light"] .plaza-readout strong {
  display: block;
  font-size: clamp(64px, 4.6vw, 82px);
  font-kerning: none;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.06em;
  line-height: 0.82;
  white-space: nowrap;
}

/* 2026-08-01 final light-theme interaction pass.
   Keep component geometry stable and change state through color only. */
html[data-theme="light"] .wishlist-contact-guide {
  border: 1px solid #dedee3;
  background: #fff;
  box-shadow: none;
}

html[data-theme="light"] .wishlist-contact-guide > p {
  border: 0;
  background: #f5f5f7;
  color: #515154;
}

html[data-theme="light"] .wishlist-contact-guide > p strong {
  color: var(--red);
}

html[data-theme="light"] .detail-manager-cta {
  border: 1px solid #dedee3;
  background: #f5f5f7;
  color: #515154;
}

html[data-theme="light"] .detail-manager-cta strong {
  background: #fff;
  color: var(--red);
}

html[data-theme="light"] .wishlist-manager-verify {
  border: 1px solid var(--red);
  background: var(--red);
  color: #fff;
}

html[data-theme="light"] .wishlist-manager-verify:hover,
html[data-theme="light"] .wishlist-manager-verify:focus-visible {
  background: #1d1d1f;
  border-color: #1d1d1f;
}

html[data-theme="light"] .calendar-mode-switch button,
html[data-theme="light"] .calendar-mode-switch button:hover,
html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"] {
  border: 1px solid #d2d2d7;
  border-radius: 999px;
  background-color: #fff;
  background-image: none;
  box-shadow: none;
  color: #3a3a3c;
  transform: none;
}

html[data-theme="light"] .calendar-mode-switch button > span:last-child {
  inset: 0 8%;
}

html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"],
html[data-theme="light"] .calendar-mode-switch button:hover,
html[data-theme="light"] .calendar-mode-switch button:focus-visible {
  border-color: var(--red);
  background-color: var(--red);
  color: #fff;
}

html[data-theme="light"] .calendar-mode-switch button small {
  color: var(--red);
}

html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"] small,
html[data-theme="light"] .calendar-mode-switch button:hover small,
html[data-theme="light"] .calendar-mode-switch button:focus-visible small {
  color: rgba(255, 255, 255, 0.82);
}

html[data-theme="light"] .calendar-workspace {
  border: 0;
  background: transparent;
  box-shadow: none;
}

html[data-theme="light"] .calendar-panel,
html[data-theme="light"] .calendar-agenda {
  border: 1px solid #d8d8dd;
  border-radius: 18px;
  background: #fff;
  box-shadow: none;
}

html[data-theme="light"] .team-layout {
  padding: 14px;
  border: 1px solid #dedee3;
  border-radius: 18px;
  background: #fff;
  box-shadow: none;
}

html[data-theme="light"] .metrics-grid article {
  border: 1px solid var(--red);
  background: var(--red);
  color: #fff;
}

html[data-theme="light"] .metrics-grid article .metric-label,
html[data-theme="light"] .metrics-grid article strong,
html[data-theme="light"] .metrics-grid article em {
  color: #fff;
}

html[data-theme="light"] .metrics-grid article:hover,
html[data-theme="light"] .metrics-grid article:focus-within {
  border-color: #1d1d1f;
  background: #1d1d1f;
  color: #fff;
  transform: translateY(-3px);
}

html[data-theme="light"] .plaza-readout strong {
  display: block;
  font-size: clamp(64px, 4.6vw, 82px);
  font-kerning: none;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.06em;
  line-height: 0.82;
  white-space: nowrap;
}

@media (max-width: 600px) {
  .site-header {
    grid-template-columns: 1fr auto auto;
  }

  .header-actions {
    gap: 6px;
  }

  .theme-toggle {
    width: 42px;
    min-height: 42px;
  }

  .manager-trigger {
    padding-inline: 14px;
  }

  .site-nav .mobile-manager-trigger {
    display: inline-flex;
    width: 100%;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 12px;
    border: 0;
    border-radius: var(--radius-pill);
    background: var(--red);
    color: #fff;
    cursor: pointer;
    font: inherit;
    font-weight: 800;
  }

  .site-nav .mobile-manager-trigger:hover,
  .site-nav .mobile-manager-trigger:focus-visible {
    background: var(--red-dark);
    color: #fff;
  }
}

@media (prefers-reduced-motion: reduce) {
  body,
  .site-header,
  .site-nav,
  .theme-toggle {
    transition: none;
  }
}

/* 2026-08-01: light mode is a standalone, minimal public-site art direction. */
html[data-theme="light"] {
  --ink: #f5f5f7;
  --surface: #ffffff;
  --surface-raised: #f0f0f2;
  --paper: #2c2c2e;
  --muted: #6e6e73;
  --line: #d2d2d7;
  --red: #ef130d;
  --red-dark: #bd0f0a;
  --orange: #ef130d;
  --focus: #ef130d;
}

html[data-theme="light"] body,
html[data-theme="light"] .catalog-page,
html[data-theme="light"] .cooperation-page,
html[data-theme="light"] .recruitment-page,
html[data-theme="light"] .recruitment-page main,
html[data-theme="light"] .home-static-page main {
  background: #f5f5f7;
  color: #2c2c2e;
}

html[data-theme="light"] {
  background: #f5f5f7;
}

html[data-theme="light"] body::before,
html[data-theme="light"] .home-static-page main::before {
  display: none;
}

/* The light site deliberately keeps a black navigation rail and footer. */
html[data-theme="light"] .site-header,
html[data-theme="light"] .site-header.is-scrolled,
html[data-theme="light"] .home-static-page .site-header:not(.is-scrolled),
html[data-theme="light"] .cooperation-page .site-header:not(.is-scrolled) {
  border-bottom-color: rgba(255, 255, 255, 0.08);
  background: #050505;
  box-shadow: none;
  color: #f5f5f7;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}

html[data-theme="light"] .site-header.is-scrolled {
  background: rgba(5, 5, 5, 0.9);
  -webkit-backdrop-filter: blur(18px) saturate(1.1);
  backdrop-filter: blur(18px) saturate(1.1);
}

html[data-theme="light"] .site-nav a {
  color: #a1a1a6;
}

html[data-theme="light"] .site-nav a:hover,
html[data-theme="light"] .site-nav a.is-active {
  color: #ffffff;
}

html[data-theme="light"] .menu-toggle,
html[data-theme="light"] .theme-toggle {
  border-color: #3a3a3c;
  background: #1c1c1e;
  color: #f5f5f7;
}

html[data-theme="light"] .menu-toggle span {
  background: #f5f5f7;
}

html[data-theme="light"] .site-footer,
html[data-theme="light"] .cooperation-footer {
  position: relative;
  z-index: 1;
  border-color: #1c1c1e;
  background: #050505;
  box-shadow: 0 0 0 100vmax #050505;
  clip-path: inset(0 -100vmax);
  color: #8e8e93;
}

html[data-theme="light"] .site-footer a,
html[data-theme="light"] .site-footer button,
html[data-theme="light"] .cooperation-footer nav a,
html[data-theme="light"] .world-clock > span {
  color: #8e8e93;
}

html[data-theme="light"] .world-clock strong,
html[data-theme="light"] .world-clock time {
  color: #ffffff;
}

html[data-theme="light"] .footer-brand-logo {
  filter: grayscale(1) brightness(0) invert(1);
  opacity: 0.92;
}

html[data-theme="light"] body[data-page="plaza"] .site-footer,
html[data-theme="light"] body[data-page="calendar"] .site-footer {
  border-color: #d2d2d7;
  background: #f5f5f7;
  box-shadow: 0 0 0 100vmax #f5f5f7;
  color: #6e6e73;
}

html[data-theme="light"] body[data-page="plaza"] .site-footer .world-clock > span,
html[data-theme="light"] body[data-page="calendar"] .site-footer .world-clock > span {
  color: #8e8e93;
}

html[data-theme="light"] body[data-page="plaza"] .site-footer .world-clock time,
html[data-theme="light"] body[data-page="calendar"] .site-footer .world-clock time {
  color: #2c2c2e;
}

html[data-theme="light"] body[data-page="plaza"] .site-footer .footer-brand-logo,
html[data-theme="light"] body[data-page="calendar"] .site-footer .footer-brand-logo {
  filter: none;
}

/* Brand page: clean white surfaces and theme-specific artwork. */
html[data-theme="light"] .home-static-page .hero,
html[data-theme="light"] .home-static-page .hero::before,
html[data-theme="light"] .brand-statement,
html[data-theme="light"] .feedback-section,
html[data-theme="light"] .team-section,
html[data-theme="light"] .social-section,
html[data-theme="light"] .process-section,
html[data-theme="light"] .metrics-section,
html[data-theme="light"] .closing-section {
  background: #f5f5f7;
  box-shadow: none;
}

html[data-theme="light"] .home-static-page .hero {
  box-shadow: 0 0 0 100vmax #f5f5f7;
}

html[data-theme="light"] .home-static-page .hero::before,
html[data-theme="light"] .feedback-section::before,
html[data-theme="light"] .process-section::before,
html[data-theme="light"] .closing-section::before {
  background: transparent;
}

html[data-theme="light"] .hero-material-stage {
  overflow: hidden;
  border: 0;
  border-radius: 16px;
  background: #ffffff;
  box-shadow: none;
}

html[data-theme="light"] .hero-material-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  filter: none;
  mix-blend-mode: normal;
  transform: none;
  translate: none;
  -webkit-mask-image: none;
  mask-image: none;
}

html[data-theme="light"] .hero-starfield,
html[data-theme="light"] .feedback-decoration,
html[data-theme="light"] .social-orbit-art {
  display: none;
}

html[data-theme="light"] .hero-intro,
html[data-theme="light"] .feedback-heading > p,
html[data-theme="light"] .section-heading > p,
html[data-theme="light"] .social-copy > p,
html[data-theme="light"] .process-heading > p,
html[data-theme="light"] .metrics-heading > p {
  color: #6e6e73;
}

html[data-theme="light"] .statement-mark,
html[data-theme="light"] .brand-statement h2 em {
  color: #48484a;
}

html[data-theme="light"] .social-platforms span {
  border-color: #d2d2d7;
  background: #ffffff;
  color: #48484a;
}

html[data-theme="light"] .social-card {
  border: 1px solid #e5e5ea;
  box-shadow: none;
}

html[data-theme="light"] .social-card {
  background: #ffffff;
  color: #2c2c2e;
}

html[data-theme="light"] .social-card small {
  color: #6e6e73;
}

html[data-theme="light"] .social-card:nth-child(4n + 1),
html[data-theme="light"] .social-card:nth-child(4n + 4) {
  border-color: #ef130d;
  background: #ef130d;
  color: #ffffff;
}

html[data-theme="light"] .social-card:nth-child(4n + 1) small,
html[data-theme="light"] .social-card:nth-child(4n + 4) small {
  color: rgba(255, 255, 255, 0.78);
}

html[data-theme="light"] .process-board {
  border-color: #d2d2d7;
  background: #ffffff;
  box-shadow: none;
}

html[data-theme="light"] .process-console-head,
html[data-theme="light"] .process-card {
  border-color: #e5e5ea;
  background: #ffffff;
  box-shadow: none;
}

html[data-theme="light"] .process-grid {
  background: #e5e5ea;
}

html[data-theme="light"] .process-control,
html[data-theme="light"] .process-card:hover .process-control {
  border-color: #d2d2d7;
  background: #f5f5f7;
  box-shadow: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  transform: none;
}

html[data-theme="light"] .process-number,
html[data-theme="light"] .process-card:hover .process-number {
  color: transparent;
  text-shadow: none;
  -webkit-text-stroke-color: #ef130d;
}

html[data-theme="light"] .process-live,
html[data-theme="light"] .process-card small,
html[data-theme="light"] .metric-label {
  color: #6e6e73;
}

html[data-theme="light"] .process-card strong,
html[data-theme="light"] .metrics-grid strong {
  color: #1d1d1f;
}

html[data-theme="light"] .process-card:hover,
html[data-theme="light"] .metrics-grid article,
html[data-theme="light"] .metrics-grid article:hover {
  border-color: #d2d2d7;
  background: #ffffff;
  box-shadow: none;
  color: #2c2c2e;
  transform: none;
}

/* Calendar: every functional surface receives an intentional light state. */
html[data-theme="light"] .calendar-mode-switch button {
  border: 1px solid #d2d2d7;
  background: #ffffff;
  background-image: none;
  box-shadow: none;
  color: #3a3a3c;
}

html[data-theme="light"] .calendar-mode-switch button > span:last-child {
  inset: 0 8%;
}

html[data-theme="light"] .calendar-mode-switch button small {
  color: #ef130d;
}

html[data-theme="light"] .calendar-mode-switch button:hover,
html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"] {
  border-color: #ef130d;
  background: #ef130d;
  background-image: none;
  box-shadow: none;
  color: #ffffff;
}

html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"] small {
  color: rgba(255, 255, 255, 0.8);
}

html[data-theme="light"] .calendar-mode-switch button:focus-visible {
  outline-color: #ef130d;
}

html[data-theme="light"] .calendar-search,
html[data-theme="light"] .calendar-search:focus-within,
html[data-theme="light"] .calendar-panel,
html[data-theme="light"] .calendar-agenda {
  border-color: #d2d2d7;
  background: #ffffff;
  box-shadow: none;
}

html[data-theme="light"] .calendar-search input,
html[data-theme="light"] .calendar-toolbar h2,
html[data-theme="light"] .calendar-agenda h2,
html[data-theme="light"] .calendar-selectors select,
html[data-theme="light"] .calendar-actions button {
  color: #2c2c2e;
}

html[data-theme="light"] .calendar-search button,
html[data-theme="light"] .calendar-actions button:hover {
  background: #ef130d;
  color: #ffffff;
}

html[data-theme="light"] .calendar-toolbar {
  border-bottom-color: #e5e5ea;
}

html[data-theme="light"] .calendar-selectors label,
html[data-theme="light"] .calendar-actions button {
  border-color: #d2d2d7;
  background: #f5f5f7;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}

html[data-theme="light"] .calendar-selectors option {
  background: #ffffff;
  color: #2c2c2e;
}

html[data-theme="light"] .calendar-weekdays {
  color: #6e6e73;
}

html[data-theme="light"] .calendar-grid {
  background: #f0f0f2;
}

html[data-theme="light"] .calendar-day {
  border-color: #d2d2d7;
  background: #ffffff;
  color: #1d1d1f;
  box-shadow: none;
}

html[data-theme="light"] .calendar-day:hover,
html[data-theme="light"] .calendar-day:focus-visible,
html[data-theme="light"] .calendar-day.has-events:not(.is-selected) {
  border-color: #ef130d;
  background: #ffffff;
}

html[data-theme="light"] .calendar-day.is-selected {
  border-color: #ef130d;
  background: #ef130d;
  color: #ffffff;
}

html[data-theme="light"] .calendar-day.is-outside {
  background: #f5f5f7;
  color: #8e8e93;
}

html[data-theme="light"] .calendar-agenda > div:first-child {
  border-color: #e5e5ea;
  background: #ffffff;
}

html[data-theme="light"] .agenda-card,
html[data-theme="light"] .agenda-event {
  border-color: #e5e5ea;
  background: #f5f5f7;
  color: #2c2c2e;
  box-shadow: none;
}

html[data-theme="light"] .agenda-card small,
html[data-theme="light"] .agenda-event small,
html[data-theme="light"] .calendar-search-status {
  color: #6e6e73;
}

html[data-theme="light"] .agenda-group > header h3,
html[data-theme="light"] .agenda-card strong,
html[data-theme="light"] .agenda-event strong {
  color: #2c2c2e;
}

html[data-theme="light"] .agenda-empty {
  border-color: #d2d2d7;
  color: #8e8e93;
}

/* The rest of the public catalog uses the same neutral material palette. */
html[data-theme="light"] .event-catalog,
html[data-theme="light"] .event-card,
html[data-theme="light"] .plaza-frame,
html[data-theme="light"] .inventory-toolbar,
html[data-theme="light"] .detail-conversion,
html[data-theme="light"] .inventory-table-wrap,
html[data-theme="light"] .cooperation-pathway-card {
  border-color: #d2d2d7;
  background: #ffffff;
  box-shadow: none;
}

/* Event detail: light mode is a complete material system, not a dark panel skin. */
html[data-theme="light"] .event-summary,
html[data-theme="light"] .seatmap-card,
html[data-theme="light"] .venue-card,
html[data-theme="light"] .inventory-panel,
html[data-theme="light"] .inventory-codes,
html[data-theme="light"] .event-content-card,
html[data-theme="light"] .official-announcements,
html[data-theme="light"] .qa-list {
  border-color: #d2d2d7;
  background: #ffffff;
  color: #2c2c2e;
  box-shadow: none;
}

html[data-theme="light"] .event-summary article,
html[data-theme="light"] .panel-title,
html[data-theme="light"] .inventory-heading,
html[data-theme="light"] .inventory-table th,
html[data-theme="light"] .inventory-table td {
  border-color: #e5e5ea;
}

html[data-theme="light"] .event-summary span,
html[data-theme="light"] .event-summary p,
html[data-theme="light"] .inventory-heading p,
html[data-theme="light"] .inventory-table th {
  color: #6e6e73;
}

html[data-theme="light"] .event-summary strong,
html[data-theme="light"] .inventory-heading h2,
html[data-theme="light"] .inventory-table td {
  color: #2c2c2e;
}

html[data-theme="light"] .official-announcement {
  border-color: #e5e5ea;
}

html[data-theme="light"] .official-announcements-heading {
  border-color: #e5e5ea;
}

html[data-theme="light"] .official-announcements-heading h3 {
  color: #2c2c2e;
}

html[data-theme="light"] .official-announcement-tag,
html[data-theme="light"] .official-announcement-date time {
  color: #2c2c2e;
}

html[data-theme="light"] .official-announcement-content,
html[data-theme="light"] .official-announcement-empty {
  color: #6e6e73;
}

html[data-theme="light"] .official-announcement-topline,
html[data-theme="light"] .official-announcement-date,
html[data-theme="light"] .official-announcement-content {
  border-color: #e5e5ea;
}

html[data-theme="light"] .official-announcement-link {
  border-color: #8e8e93;
  color: #2c2c2e;
}

html[data-theme="light"] .official-announcement-link:hover,
html[data-theme="light"] .official-announcement-link:focus-visible {
  border-color: #2c2c2e;
  background: #2c2c2e;
  color: #ffffff;
}

html[data-theme="light"] body[data-page="event"] .official-info .official-announcements,
html[data-theme="light"] body[data-page="event"] .official-info .qa-list {
  border-color: transparent;
  background: transparent;
}

html[data-theme="light"] body[data-page="event"] .official-announcement,
html[data-theme="light"] body[data-page="event"] .official-announcement-empty,
html[data-theme="light"] body[data-page="event"] .official-info .qa-list details,
html[data-theme="light"] body[data-page="event"] .official-info-cta {
  border-color: #d2d2d7;
  background: #ffffff;
  color: #2c2c2e;
  box-shadow: none;
}

html[data-theme="light"] body[data-page="event"] .official-announcement-empty strong,
html[data-theme="light"] body[data-page="event"] .qa-section-heading h3,
html[data-theme="light"] body[data-page="event"] .official-info-cta strong {
  color: #2c2c2e;
}

html[data-theme="light"] body[data-page="event"] .official-info .qa-source {
  border-color: #d2d2d7;
  color: #6e6e73;
}

html[data-theme="light"] body[data-page="event"] .official-info .qa-list details p,
html[data-theme="light"] body[data-page="event"] .official-info .qa-empty,
html[data-theme="light"] body[data-page="event"] .official-info-cta p,
html[data-theme="light"] body[data-page="event"] .official-info-intro {
  color: #515154;
}

html[data-theme="light"] body[data-page="event"] .qa-filter-row button {
  border-color: rgba(229, 25, 19, 0.24);
  background: #ffffff;
  color: #3f3732;
  box-shadow: none;
  transform: none;
}

html[data-theme="light"] body[data-page="event"] .qa-filter-row button:hover,
html[data-theme="light"] body[data-page="event"] .qa-filter-row button:focus-visible,
html[data-theme="light"] body[data-page="event"] .qa-filter-row button.is-active {
  border-color: var(--red);
  background: var(--red);
  color: #ffffff;
  box-shadow: none;
  transform: none;
}

html[data-theme="light"] .inquiry-guide-content > p:last-of-type {
  color: #515154;
}

html[data-theme="light"] .inquiry-guide-actions button:first-child {
  border-color: #d2d2d7;
  background: #ffffff;
  color: #2c2c2e;
}

html[data-theme="light"] .visual-resource-switch button {
  border-color: #d2d2d7;
  background: #ffffff;
  color: #6e6e73;
  box-shadow: none;
}

html[data-theme="light"] .visual-resource-switch button:hover,
html[data-theme="light"] .visual-resource-switch button:focus-visible {
  border-color: #a1a1a6;
  color: #2c2c2e;
}

html[data-theme="light"] .visual-resource-switch button.is-active {
  border-color: var(--red);
  background: var(--red);
  color: #ffffff;
}

html[data-theme="light"] .event-material-viewer,
html[data-theme="light"] .venue-media-viewer,
html[data-theme="light"] .venue-media,
html[data-theme="light"] .media-placeholder,
html[data-theme="light"] .event-poster {
  background: #f5f5f7;
  color: #8e8e93;
}

html[data-theme="light"] .event-material-stage {
  color: #8e8e93;
}

html[data-theme="light"] .event-material-arrow {
  border-color: #d2d2d7;
  background: rgba(255, 255, 255, 0.92);
  color: #2c2c2e;
}

html[data-theme="light"] .event-material-pagination,
html[data-theme="light"] .venue-media-note {
  border-color: #e5e5ea;
  background: rgba(255, 255, 255, 0.94);
  color: #6e6e73;
}

html[data-theme="light"] .inventory-table th {
  background: #f5f5f7;
}

html[data-theme="light"] .inventory-table button {
  background: var(--red);
  color: #ffffff;
}

html[data-theme="light"] .inventory-table button:disabled {
  background: #e5e5ea;
  color: #8e8e93;
}

html[data-theme="light"] body.event-detail-v12 .inventory-panel > .inventory-toolbar {
  border-bottom-color: #e5e5ea;
}

@media (min-width: 861px) {
  html[data-theme="light"] body[data-page="event"] .inventory-toolbar {
    background: transparent;
  }
}

@media (max-width: 1380px) {
  html[data-theme="light"] .site-nav {
    border-bottom-color: #2c2c2e;
    background: #050505;
  }

  html[data-theme="light"] .site-nav a {
    border-bottom-color: #2c2c2e;
    color: #d1d1d6;
  }
}

/* Final component states: intentionally last in the cascade. */
html[data-theme="light"] .hero-material-stage {
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
}

html[data-theme="light"] .hero-material-image {
  inset: -14% -18% -10%;
  width: 136%;
  height: 126%;
  object-fit: contain;
  object-position: center;
  mix-blend-mode: normal;
}

@media (max-width: 600px) {
  html[data-theme="light"] body.home-static-page #home .hero-material-stage {
    min-height: 0;
    padding-block: 48px 24px;
  }

  html[data-theme="light"] body.home-static-page #home .hero-material-image {
    position: relative;
    inset: auto;
    left: 50%;
    display: block;
    width: 136%;
    height: auto;
    transform: translateX(-50%);
    translate: none;
  }
}

html[data-theme="light"] .team-preview,
html[data-theme="light"] .team-preview-visual {
  border: 0;
  background: transparent;
  box-shadow: none;
}

html[data-theme="light"] .team-preview.has-qr .team-preview-visual {
  background: #fff;
}

html[data-theme="light"] .team-layout {
  padding: 14px;
  border: 1px solid #dedee3;
  border-radius: 18px;
  background: #fff;
  box-shadow: none;
}

html[data-theme="light"] .metrics-grid article {
  border: 1px solid var(--red);
  background: var(--red);
  color: #fff;
  box-shadow: none;
}

html[data-theme="light"] .metrics-grid article .metric-label,
html[data-theme="light"] .metrics-grid article strong,
html[data-theme="light"] .metrics-grid article em {
  color: #fff;
}

html[data-theme="light"] .metrics-grid article:hover,
html[data-theme="light"] .metrics-grid article:focus-within {
  border-color: #1d1d1f;
  background: #1d1d1f;
  color: #fff;
  transform: translateY(-3px);
}

html[data-theme="light"] .plaza-readout,
html[data-theme="light"] .plaza-readout strong,
html[data-theme="light"] .plaza-readout span,
html[data-theme="light"] .plaza-frame > a,
html[data-theme="light"] .plaza-frame > a:hover,
html[data-theme="light"] .plaza-frame > a:focus-visible {
  color: #fff;
}

html[data-theme="light"] .plaza-readout strong {
  display: block;
  font-size: clamp(64px, 4.6vw, 82px);
  font-kerning: none;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.06em;
  line-height: 0.82;
  white-space: nowrap;
}

body.home-static-page #home .hero-material-image-dark,
body.home-static-page #home .hero-material-image-light {
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
}

html[data-theme="dark"] body.home-static-page #home .hero-material-image-dark,
html[data-theme="light"] body.home-static-page #home .hero-material-image-light {
  visibility: visible;
  opacity: 1;
}

@media (max-width: 600px) {
  html[data-theme="light"] body.home-static-page #home .hero-material-image-dark {
    position: absolute;
    inset: 0;
  }
}

html[data-theme="dark"] body.home-static-page .plaza-readout strong {
  display: block;
  font-size: clamp(64px, 4.6vw, 82px);
  font-kerning: none;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.06em;
  line-height: 0.82;
  white-space: nowrap;
}

html[data-theme="light"] .plaza-frame > a:hover,
html[data-theme="light"] .plaza-frame > a:focus-visible {
  background: #c9100b;
}

html[data-theme="light"] .calendar-mode-switch button {
  border: 1px solid #d2d2d7;
  border-radius: 999px;
  background: #fff;
  color: #3a3a3c;
  box-shadow: none;
  transform: none;
}

html[data-theme="light"] .calendar-mode-switch button > span:last-child {
  inset: 0 8%;
}

html[data-theme="light"] .calendar-mode-switch button small {
  color: var(--red);
}

html[data-theme="light"] .calendar-mode-switch button:hover,
html[data-theme="light"] .calendar-mode-switch button:focus-visible,
html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"] {
  border-color: var(--red);
  background: var(--red);
  color: #fff;
}

html[data-theme="light"] .calendar-mode-switch button:hover small,
html[data-theme="light"] .calendar-mode-switch button:focus-visible small,
html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"] small {
  color: rgba(255, 255, 255, 0.82);
}

html[data-theme="light"] .calendar-mode-switch button:hover strong,
html[data-theme="light"] .calendar-mode-switch button:focus-visible strong,
html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"] strong {
  color: #fff;
}

html[data-theme="light"] .calendar-workspace {
  border: 0;
  background: transparent;
  box-shadow: none;
}

html[data-theme="light"] .calendar-panel,
html[data-theme="light"] .calendar-agenda {
  border: 1px solid #d8d8dd;
  border-radius: 18px;
  background: #fff;
  box-shadow: none;
}

html[data-theme="light"] .calendar-toolbar,
html[data-theme="light"] .calendar-agenda > div:first-child {
  border-color: #e5e5ea;
  background: transparent;
}

html[data-theme="light"] .calendar-weekdays,
html[data-theme="light"] .calendar-grid {
  background: transparent;
}

html[data-theme="light"] .calendar-day {
  border-color: #d2d2d7;
  background: #fff;
  color: #3a3a3c;
}

html[data-theme="light"] .calendar-day.is-outside {
  border-color: #e5e5ea;
  background: transparent;
  color: #aeaeb2;
}

html[data-theme="light"] .calendar-day.has-events:not(.is-selected),
html[data-theme="light"] .calendar-day:hover,
html[data-theme="light"] .calendar-day:focus-visible {
  border-color: var(--red);
  background: #fff;
}

html[data-theme="light"] .calendar-day.is-selected {
  border-color: var(--red);
  background: var(--red);
  color: #fff;
}

html[data-theme="light"] .cooperation-marquee {
  border-color: var(--red);
  background: var(--red);
}

html[data-theme="light"] .cooperation-marquee b,
html[data-theme="light"] .cooperation-pathway-label {
  color: #fff;
}

html[data-theme="light"] .wishlist-contact-guide {
  border: 1px solid #dedee3;
  background: #fff;
  box-shadow: none;
}

html[data-theme="light"] .wishlist-contact-guide > p {
  border: 0;
  background: #f5f5f7;
  color: #515154;
}

html[data-theme="light"] .wishlist-contact-guide > p strong {
  color: var(--red);
}

html[data-theme="light"] .detail-manager-cta {
  border: 1px solid #dedee3;
  background: #f5f5f7;
  color: #515154;
}

html[data-theme="light"] .detail-manager-cta strong {
  background: #fff;
  color: var(--red);
}

html[data-theme="light"] .wishlist-manager-verify {
  border: 1px solid var(--red);
  background: var(--red);
  color: #fff;
}

html[data-theme="light"] .wishlist-manager-verify:hover,
html[data-theme="light"] .wishlist-manager-verify:focus-visible {
  border-color: #1d1d1f;
  background: #1d1d1f;
}

html[data-theme="light"] .profile-dialog,
html[data-theme="dark"] .profile-dialog {
  border: 0;
  outline: 0;
}
/* 2026-08-02: final light-theme interaction corrections */
html[data-theme="light"] .metrics-grid article {
  border-color: #29292b;
  background: #29292b;
  color: #fff;
  box-shadow: none;
}

html[data-theme="light"] .metrics-grid article span,
html[data-theme="light"] .metrics-grid article strong {
  color: #fff;
}

html[data-theme="light"] .metrics-grid article:hover,
html[data-theme="light"] .metrics-grid article:focus-visible {
  border-color: #38383b;
  background: #38383b;
  color: #fff;
}

html[data-theme="light"] .metrics-grid article.is-active,
html[data-theme="light"] .metrics-grid article.is-active:hover,
html[data-theme="light"] .metrics-grid article.is-active:focus-visible {
  border-color: var(--red);
  background: var(--red);
  color: #fff;
}

html[data-theme="light"] .calendar-mode-switch {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  width: 100%;
}

html[data-theme="light"] .calendar-mode-switch button {
  position: relative;
  min-height: 86px;
  padding: 4px 4px 4px 30%;
  overflow: hidden;
  border: 1px solid #d2d2d7;
  border-radius: 999px;
  background: #fff;
  color: #1d1d1f;
  box-shadow: none;
}

html[data-theme="light"] .calendar-mode-switch button::before {
  position: absolute;
  top: 50%;
  left: 7%;
  width: 48px;
  aspect-ratio: 1;
  content: "";
  background: #d8d8dc;
  clip-path: polygon(50% 0, 60% 40%, 100% 50%, 60% 60%, 50% 100%, 40% 60%, 0 50%, 40% 40%);
  transform: translateY(-50%);
}

html[data-theme="light"] .calendar-mode-switch button > .calendar-mode-icon {
  display: none;
}

html[data-theme="light"] .calendar-mode-switch button > span:last-child {
  position: absolute;
  inset: 4px 4px 4px 30%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 1px solid #d2d2d7;
  border-radius: 999px;
  background: #f5f5f7;
}

html[data-theme="light"] .calendar-mode-switch button strong {
  color: #1d1d1f;
}

html[data-theme="light"] .calendar-mode-switch button small {
  color: var(--red);
}

html[data-theme="light"] .calendar-mode-switch button:hover,
html[data-theme="light"] .calendar-mode-switch button:focus-visible {
  border-color: var(--red);
  background: #fff;
  color: #1d1d1f;
}

html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"],
html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"]:hover,
html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"]:focus-visible {
  border-color: var(--red);
  background: var(--red);
  color: var(--red);
}

html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"]::before {
  background: #fff;
}

html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"] > span:last-child {
  border-color: #e0e0e3;
  background: #f5f5f7;
}

html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"] strong,
html[data-theme="light"] .calendar-mode-switch button[aria-selected="true"] small {
  color: var(--red);
}

html[data-theme="light"] .forecast-workspace,
html[data-theme="light"] .forecast-list {
  background: transparent !important;
}

html[data-theme="light"] .forecast-item {
  background: #fff !important;
}

html[data-theme="light"] .wishlist-contact-actions .detail-manager-cta,
html[data-theme="light"] .wishlist-contact-actions .wishlist-manager-verify {
  border-color: var(--red);
  background: var(--red);
  color: #fff;
}

html[data-theme="light"] .wishlist-contact-actions .detail-manager-cta strong {
  background: rgba(255, 255, 255, 0.18);
  color: #fff;
}

html[data-theme="light"] .wishlist-contact-actions .detail-manager-cta:hover:not(:disabled),
html[data-theme="light"] .wishlist-contact-actions .wishlist-manager-verify:hover {
  border-color: #bd100b;
  background: #bd100b;
  color: #fff;
}

@media (max-width: 760px) {
  html[data-theme="light"] .calendar-mode-switch {
    gap: 8px;
  }

  html[data-theme="light"] .calendar-mode-switch button {
    min-height: 66px;
    padding-left: 25%;
  }

  html[data-theme="light"] .calendar-mode-switch button::before {
    left: 6%;
    width: 34px;
  }

  html[data-theme="light"] .calendar-mode-switch button > span:last-child {
    inset: 4px 4px 4px 25%;
  }
}

/* 2026-08-02: stable interaction states requested in the final review. */
html[data-theme="light"] .metrics-grid article:hover {
  border-color: var(--red);
  background: var(--red);
  color: #fff;
}

html[data-theme="light"] .metrics-grid article:hover .metric-label,
html[data-theme="light"] .metrics-grid article:hover strong,
html[data-theme="light"] .metrics-grid article:hover em {
  color: #fff;
}

html[data-theme="light"] .metrics-grid article.is-active {
  border-color: #29292b;
  background: #29292b;
}

html[data-theme="light"] .wishlist-contact-actions .detail-manager-cta:disabled,
html[data-theme="dark"] .wishlist-contact-actions .detail-manager-cta:disabled {
  border-color: var(--red);
  background: var(--red);
  color: #fff;
  cursor: not-allowed;
  opacity: 1;
}

html[data-theme="light"] .wishlist-contact-actions .detail-manager-cta:disabled strong,
html[data-theme="dark"] .wishlist-contact-actions .detail-manager-cta:disabled strong {
  background: rgba(255, 255, 255, 0.18);
  color: #fff;
}

html[data-theme="light"] .wishlist-contact-actions .detail-manager-cta:hover:not(:disabled),
html[data-theme="light"] .wishlist-contact-actions .wishlist-manager-verify:hover,
html[data-theme="dark"] .wishlist-contact-actions .detail-manager-cta:hover:not(:disabled),
html[data-theme="dark"] .wishlist-contact-actions .wishlist-manager-verify:hover {
  border-color: #1d1d1f;
  background: #1d1d1f;
  color: #fff;
}

html[data-theme="light"] .wishlist-contact-actions .detail-manager-cta:hover:not(:disabled) strong,
html[data-theme="dark"] .wishlist-contact-actions .detail-manager-cta:hover:not(:disabled) strong {
  background: rgba(255, 255, 255, 0.18);
  color: #fff;
}

/* Calendar mode switch: canonical light-theme states. */
html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch {
  width: min(100%, 780px);
  gap: 10px;
}

html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button {
  position: relative;
  height: 72px;
  min-height: 72px;
  padding: 0;
  overflow: hidden;
  border: 0;
  border-radius: 999px;
  background: transparent url("./assets/icons/calendar-mode-light.svg") center / 100% 100% no-repeat;
  color: #1d1d1f;
  box-shadow: none;
  transform: none;
}

html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button::before {
  display: none;
}

html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button > .calendar-mode-icon {
  display: none;
}

html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button > span:last-child,
html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button:hover > span:last-child,
html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button:focus-visible > span:last-child,
html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button[aria-selected="true"] > span:last-child {
  position: absolute;
  inset: 0 7% 0 29%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 999px;
  background: transparent;
}

html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button strong,
html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button:hover strong,
html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button:focus-visible strong {
  color: #1d1d1f;
}

html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button small,
html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button:hover small,
html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button:focus-visible small,
html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button[aria-selected="true"] small {
  color: var(--red);
}

@media (max-width: 760px) {
  html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch {
    width: 100%;
    gap: 8px;
  }

  html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button {
    height: 48px;
    min-height: 48px;
  }

  html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button > span:last-child {
    inset: 0 4% 0 25%;
  }
}

html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button:hover,
html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button:focus-visible {
  background: transparent url("./assets/icons/calendar-mode-light.svg") center / 100% 100% no-repeat;
  color: #1d1d1f;
  transform: translateY(-2px);
}

html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button[aria-selected="true"],
html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button[aria-selected="true"]:hover,
html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button[aria-selected="true"]:focus-visible {
  background: transparent url("./assets/icons/calendar-mode-active.svg?v=20260803h") center / 100% 100% no-repeat;
  color: var(--red);
  box-shadow: none;
}

html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button[aria-selected="true"] strong {
  color: var(--red);
}

html[data-theme="light"] body[data-page="calendar"] .calendar-mode-switch button[aria-selected="true"] small {
  color: var(--red);
}
