:root {
  color-scheme: light;
  --ink: #203c34;
  --muted: #607369;
  --line: #dce4db;
  --green: #24584a;
  --paper: #fffefb;
  --accent: #986e43;
  --font-body: "HK Perks Inter", "HK Perks Reading", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
  --font-editorial: "HK Perks Editorial", "Songti SC", "Noto Serif CJK SC", serif;
  --font-tech: "HK Perks Inter", var(--font-body);
  font-family: var(--font-body);
  color: var(--ink);
  background: #f5f6f1;
}
* {
  box-sizing: border-box;
}
body {
  margin: 0;
  background: #f5f6f1;
}
[hidden] {
  display: none !important;
}
header,
main,
footer {
  max-width: 1240px;
  margin: auto;
  padding: 28px 36px;
}
header {
  display: flex;
  align-items: center;
  gap: 24px;
  border-bottom: 1px solid var(--line);
}
header .brand {
  margin-right: auto;
  font-family: var(--font-editorial);
  font-size: 28px;
  font-weight: 650;
  text-decoration: none;
}
.brand small {
  display: block;
  font:
    10px/1.8 ui-monospace,
    monospace;
  letter-spacing: 3px;
}
.eyebrow {
  letter-spacing: 3px;
  font:
    11px ui-monospace,
    monospace;
  color: var(--green);
  margin-top: 24px;
}
h1 {
  font-family: var(--font-editorial);
  font-size: clamp(32px, 4.6vw, 54px);
  font-weight: 550;
  line-height: 1.5;
  margin: 18px 0;
}
h2 {
  font-size: 21px;
  margin: 4px 0 16px;
}
h3 {
  font-size: 17px;
  line-height: 1.7;
}
p,
li {
  line-height: 1.85;
}
a {
  color: var(--green);
  text-underline-offset: 4px;
}
.lede {
  font-size: 18px;
  color: var(--muted);
  margin-bottom: 36px;
}
.panel,
.plan {
  background: #ffffffba;
  border: 1px solid var(--line);
  border-radius: 22px;
  padding: 28px;
  margin: 22px 0;
  box-shadow: 0 10px 30px #19392b04;
}
.login {
  max-width: 560px;
}
.login form {
  margin: 24px 0;
}
.login small {
  line-height: 1.8;
}
.pill {
  display: inline-block;
  padding: 5px 11px;
  border-radius: 9px;
  background: #e8ede0;
  color: #71662f;
  font:
    12px ui-monospace,
    monospace;
}
label {
  display: grid;
  gap: 8px;
  margin: 12px 0;
  color: var(--muted);
  font-size: 14px;
}
input,
select,
textarea,
button {
  font: inherit;
}
input,
select,
textarea {
  color: var(--ink);
  border: 1px solid #cfdcd4;
  background: #fbfcf9;
  border-radius: 10px;
  padding: 12px;
  min-width: 0;
  width: 100%;
}
textarea {
  min-height: 84px;
  resize: vertical;
}
button {
  border: 1px solid #cddbd3;
  background: #f5f8f2;
  color: var(--green);
  padding: 10px 15px;
  border-radius: 10px;
  cursor: pointer;
  min-height: 42px;
}
button:hover {
  background: #e5eee3;
}
button:disabled {
  opacity: 0.5;
  cursor: wait;
}
.primary {
  background: var(--green);
  color: white;
  border-color: var(--green);
  padding: 13px 20px;
}
.primary:hover {
  background: #185549;
}
button.danger {
  color: #a34250;
}
button:focus-visible,
a:focus-visible,
input:focus-visible,
summary:focus-visible {
  outline: 3px solid #598e9a;
  outline-offset: 3px;
}
.inline,
.member-bar,
.section-heading,
.row {
  display: flex;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
}
.inline {
  align-items: flex-end;
  flex-wrap: wrap;
}
.inline label {
  margin: 8px 0;
}
.grow {
  flex: 1;
  min-width: 240px;
}
.form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 20px;
}
.check {
  display: flex;
  align-items: center;
  gap: 9px;
}
.check input {
  width: 18px;
  height: 18px;
  accent-color: var(--green);
}
.section-heading {
  margin: 30px 0 16px;
}
.section-heading h2 {
  margin: 0;
}
.panel .section-heading {
  margin-top: 0;
}
.muted,
small {
  color: var(--muted);
}
.stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 15px;
}
.stat {
  padding: 22px;
  background: #e5eee580;
  border: 1px solid var(--line);
  border-radius: 16px;
}
.stat b {
  display: block;
  font:
    36px ui-monospace,
    monospace;
  margin-bottom: 8px;
}
.metric {
  display: flex;
  gap: 30px;
  flex-wrap: wrap;
  margin: 20px 0;
}
.metric strong {
  font:
    28px ui-monospace,
    monospace;
  display: block;
}
.metric small {
  display: block;
  margin: 7px 0;
}
.progress {
  height: 6px;
  border-radius: 6px;
  background: #e3e9df;
  overflow: hidden;
}
.progress span {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, #5b9880, #739ab5);
  width: var(--progress);
}
summary {
  cursor: pointer;
  line-height: 1.8;
  color: var(--green);
  padding: 12px 0;
}
details {
  border-top: 1px solid var(--line);
  margin-top: 16px;
}
.guide {
  background: #edf2e780;
  border-left: 3px solid #9aae84;
  padding: 16px 20px;
  border-radius: 0 12px 12px 0;
}
.guide p {
  margin: 4px 0;
}
.guide li {
  color: #647564;
}
.row {
  padding: 16px 0;
  border-bottom: 1px solid var(--line);
  align-items: flex-start;
}
.row:last-child {
  border-bottom: 0;
}
.row > div:first-child {
  flex: 1;
  min-width: 0;
}
.row strong {
  line-height: 1.7;
}
.row p {
  margin: 5px 0;
}
.row .actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  max-width: 390px;
}
.note {
  background: #f2eadc;
  color: #7c6239;
  border-radius: 12px;
  padding: 12px 16px;
}
.unread {
  border-left: 3px solid #6b97b0;
  padding-left: 16px;
}
.tabs {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  padding: 20px 0;
}
.code-card {
  margin-top: 22px;
  border: 1px solid #bca679;
  background: #f8f2e7;
  padding: 20px;
  border-radius: 14px;
}
.code-card input {
  font:
    16px ui-monospace,
    monospace;
  margin: 16px 0;
}
.code-card button {
  margin-right: 10px;
}
#feedback {
  position: relative;
  top: 0;
  z-index: 10;
  background: #e1eee4;
  border: 1px solid #adc7b5;
  border-radius: 12px;
  padding: 14px 18px;
}
#feedback.error {
  background: #fff0ed;
  border-color: #ddb7b2;
  color: #953c35;
}
.empty {
  color: var(--muted);
  padding: 24px 0;
}
.ledger {
  font-size: 14px;
}
.ledger .voided {
  opacity: 0.6;
}
.mono {
  font-family: ui-monospace, monospace;
  overflow-wrap: anywhere;
}
pre {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  background: #f4f6f1;
  padding: 16px;
  border-radius: 10px;
  font-size: 13px;
  max-height: 350px;
  overflow: auto;
}
footer {
  font-size: 12px;
  color: var(--muted);
  border-top: 1px solid var(--line);
  padding-bottom: 35px;
}
section {
  scroll-margin-top: 24px;
}
select {
  max-width: 100%;
}
@media (max-width: 700px) {
  header,
  main,
  footer {
    padding: 20px 18px;
  }
  header {
    gap: 12px;
  }
  header a:not(.brand) {
    font-size: 13px;
  }
  .brand small {
    font-size: 9px;
  }
  .panel,
  .plan {
    padding: 20px 16px;
    border-radius: 16px;
  }
  .member-bar,
  .row {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }
  .form-grid {
    grid-template-columns: 1fr;
  }
  .inline {
    align-items: stretch;
    flex-direction: column;
  }
  .inline > * {
    width: 100%;
  }
  .stats {
    grid-template-columns: repeat(2, 1fr);
  }
  .metric {
    gap: 20px;
  }
  .metric strong {
    font-size: 24px;
  }
  .row .actions {
    max-width: none;
  }
  .section-heading {
    gap: 10px;
    flex-wrap: wrap;
  }
  h1 {
    font-size: 34px;
  }
  .grow {
    min-width: 0;
  }
  .tabs {
    gap: 14px;
    font-size: 14px;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .panel,
  .plan {
    animation: arrive 0.25s ease both;
  }
  @keyframes arrive {
    from {
      opacity: 0.6;
      transform: translateY(6px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
}

h1 {
  text-wrap: balance;
}

.member-app {
  --surface: #fffefb;
  --gold: #9b7745;
  --blue: #4e7893;
  background: #f5f6f1;
}
.member-app :focus-visible {
  outline: 2px solid var(--green);
  outline-offset: 4px;
}
.member-app main,
.member-app header,
.member-app footer {
  max-width: 1320px;
}
.member-app main {
  padding-top: 28px;
  min-height: 75vh;
}
.member-header {
  gap: 20px;
  padding-top: 18px;
  padding-bottom: 18px;
}
.header-divider {
  width: 1px;
  height: 30px;
  background: var(--line);
}
.header-label {
  font-size: 13px;
  color: var(--muted);
}
.header-actions {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-left: auto;
}
.header-actions a {
  font-size: 14px;
}
.member-app button,
.member-app .button {
  min-height: 42px;
  font-family: inherit;
  font-size: 14px;
  transition:
    background 0.18s,
    transform 0.18s;
}
.member-app .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  padding: 11px 18px;
  text-decoration: none;
}
.member-app .primary {
  color: white;
  background: var(--green);
  border-color: var(--green);
}
.member-app button:disabled {
  opacity: 0.55;
  cursor: wait;
}
.member-app h1 {
  font-family: "HK Perks Editorial", serif;
  font-size: clamp(32px, 3.6vw, 44px);
  margin: 15px 0 10px;
  font-weight: 600;
  line-height: 1.3;
}
.member-app h1 em {
  color: var(--green);
  font-style: normal;
}
.member-app h2 {
  font-size: 26px;
  letter-spacing: -0.025em;
  margin: 9px 0 18px;
  font-family: "HK Perks Editorial", serif;
  font-weight: 600;
  line-height: 1.45;
}
.member-app h3 {
  font-size: 17px;
  margin: 0 0 13px;
}
.workspace-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  margin-bottom: 24px;
}
.member-app .eyebrow {
  margin-top: 0;
  font:
    11px "HK Perks Tech",
    monospace;
  letter-spacing: 0.18em;
  color: var(--muted);
}
.member-app .lede {
  font-size: 15px;
  margin: 0;
  line-height: 1.8;
}
.identity {
  display: flex;
  gap: 14px;
  align-items: center;
  max-width: 330px;
}
.identity-mark {
  display: grid;
  place-items: center;
  background: #e7ede3;
  border: 1px solid #d6dfcf;
  border-radius: 18px;
  width: 52px;
  height: 60px;
  flex-shrink: 0;
  font:
    29px "HK Perks Editorial",
    serif;
  color: #7e7745;
}
.identity strong {
  display: block;
  margin: 5px 0 3px;
  font-size: 17px;
  overflow-wrap: anywhere;
}
.identity small {
  display: block;
  font-size: 11px;
  color: var(--muted);
}
.member-app .pill {
  font:
    11px "HK Perks Tech",
    "HK Perks Sans",
    sans-serif;
  padding: 5px 8px;
  letter-spacing: 0.02em;
  border-radius: 5px;
}
.dashboard {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.dashboard button {
  text-align: left;
  padding: 17px 22px;
  min-height: 102px;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 17px;
  box-shadow: 0 4px 14px #203e3603;
}
.dashboard button:first-child {
  background: #e8f0e9;
  border-color: #cddfd2;
}
.dashboard button small {
  display: block;
  font-size: 12px;
  color: var(--muted);
}
.dashboard strong {
  display: block;
  font:
    32px "HK Perks Tech",
    monospace;
  margin-top: 10px;
  letter-spacing: -0.05em;
}
.dashboard button:nth-child(2) strong {
  color: var(--gold);
}
.dashboard button:nth-child(3) strong {
  color: var(--blue);
}
.dashboard button:nth-child(4) strong {
  color: #807097;
}
.workspace-nav {
  display: flex;
  gap: 28px;
  align-items: center;
  border-bottom: 1px solid var(--line);
  margin: 20px 0 24px;
}
.workspace-nav a {
  text-decoration: none;
  padding: 15px 0;
  font-size: 14px;
  color: var(--muted);
  position: relative;
  white-space: nowrap;
}
.workspace-nav a[aria-current="page"] {
  color: var(--ink);
  font-weight: 650;
}
.workspace-nav a[aria-current="page"]::after {
  content: "";
  height: 3px;
  background: var(--green);
  border-radius: 3px;
  position: absolute;
  bottom: -1px;
  left: 0;
  right: 0;
}
.workspace-nav a span {
  font:
    11px "HK Perks Tech",
    monospace;
  background: #e5ece4;
  border-radius: 4px;
  padding: 2px 5px;
  margin-left: 4px;
}
.workspace-nav button {
  margin-left: auto;
  min-height: 34px;
  background: transparent;
  border: 0;
  color: var(--muted);
  font-size: 12px;
}
.member-app .section-heading {
  gap: 20px;
  align-items: center;
  margin: 0 0 16px;
}
.member-app .section-heading h2 {
  margin: 6px 0 0;
}
.member-app .panel {
  border-radius: 18px;
  background: var(--surface);
  padding: 25px;
}
.plan-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin: 16px 0 10px;
}
.segmented {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
}
.segmented button {
  border: 1px solid transparent;
  background: transparent;
  border-radius: 8px;
  color: var(--muted);
  padding: 8px 13px;
  min-height: 34px;
  font-size: 12px;
}
.segmented button[aria-pressed="true"] {
  background: #e4ece3;
  border-color: #d5e0d3;
  color: var(--green);
  font-weight: 650;
}
.month-control {
  font-size: 11px;
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--muted);
}
.member-app .month-control input {
  width: 144px;
  font-size: 12px;
  margin: 0;
  min-height: 37px;
  padding: 7px 9px;
}
.result-count {
  font-size: 12px;
  color: var(--muted);
  margin: 15px 0;
}
.next-action {
  display: flex;
  align-items: center;
  gap: 16px;
  border: 1px solid #dfd8c4;
  background: #f5f1e6;
  border-radius: 14px;
  padding: 14px 20px;
}
.next-action .action-dot {
  width: 9px;
  height: 9px;
  flex-shrink: 0;
  background: #ad8b46;
  border-radius: 50%;
  box-shadow: 0 0 0 5px #ad8b4614;
}
.next-action div {
  flex: 1;
  min-width: 0;
}
.next-action strong {
  font-size: 13px;
}
.next-action p {
  font-size: 12px;
  margin: 5px 0 0;
  color: #796d50;
  line-height: 1.7;
}
.next-action button {
  font-size: 12px;
  background: #fffaf1;
  border-color: #dcd2b9;
  white-space: nowrap;
}
.plan-grid,
.offer-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.member-app .plan {
  margin: 0;
  border-radius: 18px;
  padding: 24px;
  background: var(--surface);
  min-width: 0;
}
.plan-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  font-size: 11px;
  color: var(--muted);
}
.bank-label {
  display: flex;
  align-items: center;
  gap: 7px;
}
.bank-dot {
  height: 7px;
  width: 7px;
  border-radius: 50%;
  background: var(--bank-color, var(--green));
  flex-shrink: 0;
}
.member-app .plan h3 {
  font-size: 17px;
  line-height: 1.7;
  margin: 16px 0 4px;
  overflow-wrap: anywhere;
}
.plan-context {
  font-size: 11px;
  color: var(--muted);
  margin: 0;
  line-height: 1.8;
}
.plan-status {
  font-size: 11px;
  color: var(--green);
  background: #e8f0e8;
  border-radius: 5px;
  padding: 4px 7px;
  white-space: nowrap;
}
.plan-status.attention {
  color: #896738;
  background: #f4ecdc;
}
.plan-status.received {
  color: #766087;
  background: #f0eaf4;
}
.plan-status.archived {
  color: #75847b;
  background: #edf0eb;
}
.member-app .metric {
  margin: 21px 0 15px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.member-app .metric strong {
  font:
    24px "HK Perks Tech",
    monospace;
  letter-spacing: -0.045em;
  overflow-wrap: anywhere;
}
.member-app .metric small {
  font-size: 11px;
  color: var(--muted);
  line-height: 1.5;
}
.member-app .progress {
  height: 5px;
}
.progress-label {
  display: flex;
  justify-content: space-between;
  font-size: 11px;
  color: var(--muted);
  margin-top: 8px;
  gap: 12px;
}
.plan-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  list-style: none;
  padding: 0;
  margin: 21px 0;
  gap: 5px;
}
.plan-steps li {
  font-size: 10px;
  color: #89968e;
  display: flex;
  align-items: center;
  gap: 5px;
}
.plan-steps i {
  font:
    10px "HK Perks Tech",
    monospace;
  display: inline-grid;
  place-items: center;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #edf0e9;
  flex-shrink: 0;
}
.plan-steps .done {
  color: var(--green);
}
.plan-steps .done i {
  background: #dcebdd;
}
.plan-next {
  font-size: 12px;
  line-height: 1.9;
  background: #f1f5ef;
  border-radius: 9px;
  padding: 11px 13px;
  min-height: 65px;
  color: #536e62;
}
.plan-actions {
  display: flex;
  gap: 8px;
  margin-top: 17px;
  flex-wrap: wrap;
}
.plan-actions button {
  font-size: 12px;
  padding: 8px 11px;
  min-height: 36px;
}
.plan-actions .quiet {
  margin-left: auto;
  border-color: transparent;
  background: transparent;
  color: var(--muted);
}
.empty-state {
  grid-column: 1/-1;
  text-align: center;
  border: 1px dashed #cbdacc;
  background: #fbfcf680;
  border-radius: 18px;
  padding: 44px 24px;
}
.empty-symbol {
  display: inline-grid;
  place-items: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #e5ede2;
  font:
    25px "HK Perks Tech",
    monospace;
  margin-bottom: 13px;
}
.empty-state h3 {
  margin: 0;
  font:
    23px "HK Perks Editorial",
    serif;
}
.empty-state p {
  font-size: 13px;
  color: var(--muted);
  line-height: 1.9;
  margin-bottom: 20px;
}
.offer-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 180px 160px;
  gap: 12px;
  background: #eaf0e780;
  padding: 18px;
  border-radius: 14px;
}
.offer-toolbar label {
  font-size: 11px;
}
.offer-toolbar input,
.offer-toolbar select {
  margin: 6px 0 0;
  font-size: 13px;
  background: var(--surface);
  width: 100%;
}
.offer {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 17px;
  padding: 24px;
  min-width: 0;
  display: flex;
  flex-direction: column;
}
.offer h3 {
  font-size: 17px;
  line-height: 1.7;
  margin: 17px 0 10px;
}
.offer .reward-copy {
  color: var(--muted);
  line-height: 1.9;
  font-size: 13px;
  margin: 0 0 18px;
  flex: 1;
}
.offer-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-top: 1px solid var(--line);
  padding-top: 16px;
}
.offer-footer a {
  font-size: 12px;
  color: var(--muted);
}
.offer-footer button {
  font-size: 12px;
  min-height: 36px;
}
#more-offers {
  display: block;
  margin: 24px auto;
}
.account-grid {
  display: grid;
  grid-template-columns: 1fr 1.5fr;
  gap: 20px;
}
.account-grid .panel {
  margin: 0;
}
.member-app .row {
  gap: 15px;
}
.member-app .row strong {
  font-size: 14px;
}
.member-app .row p {
  font-size: 12px;
  line-height: 1.9;
}
.member-app .row small {
  font-size: 11px;
  color: var(--muted);
}
.member-app .row .actions {
  max-width: 210px;
}
.member-app .row button {
  min-height: 34px;
  font-size: 11px;
  padding: 7px 10px;
}
.notice-list {
  margin-top: 18px;
}
.notice-list a {
  font-size: 12px;
}
.account-facts {
  display: grid;
  gap: 18px;
  margin: 24px 0;
}
.account-facts dt {
  font-size: 11px;
  color: var(--muted);
}
.account-facts dd {
  margin: 5px 0 0;
  font-size: 16px;
}
.activation-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 70px;
  align-items: center;
  margin: 45px 0;
}
.activation-intro h2 {
  font-size: 36px;
  line-height: 1.6;
  margin: 20px 0;
}
.activation-intro ol {
  padding: 0;
  list-style: none;
}
.activation-intro li {
  display: flex;
  gap: 20px;
  align-items: flex-start;
  margin: 25px 0;
}
.activation-intro b {
  font:
    14px "HK Perks Tech",
    monospace;
  color: var(--gold);
  padding-top: 4px;
}
.activation-intro strong {
  font-size: 15px;
}
.activation-intro p {
  font-size: 13px;
  color: var(--muted);
  margin: 6px 0;
  line-height: 1.8;
}
.activation-card {
  margin: 0 !important;
}
.activation-card h2 {
  font-size: 29px;
}
.activation-card p {
  font-size: 13px;
  line-height: 1.9;
}
.activation-card .activation-subscribe {
  --subscribe-accent: #7b5427;
  width: 100%;
  min-height: 46px;
  margin-bottom: 8px;
  padding: 10px 14px;
  gap: 6px;
  flex-wrap: wrap;
  line-height: 1.5;
  border: 1px solid color-mix(in srgb, var(--gold) 28%, var(--surface));
  background: color-mix(in srgb, var(--gold) 7%, var(--surface));
}
.activation-card .activation-subscribe:hover {
  border-color: var(--gold);
  background: color-mix(in srgb, var(--gold) 11%, var(--surface));
}
.activation-subscribe-hint {
  color: var(--muted);
  font-size: 13px;
  font-weight: 400;
}
.activation-subscribe-action {
  color: var(--subscribe-accent);
  font-size: 14px;
  font-weight: 650;
  text-decoration: underline;
  text-underline-offset: 4px;
  text-decoration-thickness: 1px;
}
:root[data-theme="night"] .activation-card .activation-subscribe {
  --subscribe-accent: #e7c88f;
}
.activation-card label {
  font-size: 12px;
}
.activation-card input {
  font-size: 14px;
}
.activation-card .primary {
  width: 100%;
  margin: 5px 0 18px;
}
.activation-card small {
  font-size: 11px;
  line-height: 1.9;
  color: var(--muted);
  display: block;
}
.member-app dialog {
  width: min(740px, calc(100vw - 28px));
  max-height: 88dvh;
  border: 1px solid #cfddd1;
  border-radius: 22px;
  background: var(--surface);
  color: var(--ink);
  padding: 26px 30px;
  box-shadow: 0 24px 90px #19382f30;
  overflow: auto;
}
.member-app dialog::backdrop {
  background: #18362d55;
  backdrop-filter: blur(4px);
}
.dialog-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}
.dialog-heading button {
  border: 0;
  background: #edf1e9;
  border-radius: 50%;
  font-size: 22px;
  width: 34px;
  min-height: 34px;
  padding: 0;
  line-height: 1;
  flex-shrink: 0;
}
.member-app dialog h2 {
  font-family: var(--font-body);
  font-size: 23px;
  margin: 20px 0 12px;
  line-height: 1.65;
}
.member-app dialog label {
  font-size: 12px;
}
.member-app dialog input,
.member-app dialog select {
  font-size: 14px;
}
.member-app dialog p,
.member-app dialog li {
  font-size: 13px;
  line-height: 1.9;
}
.member-app dialog li {
  margin-bottom: 9px;
}
.dialog-tabs {
  display: flex;
  gap: 5px;
  padding: 10px 0 15px;
  border-bottom: 1px solid var(--line);
  margin-bottom: 22px;
}
.dialog-tabs button {
  flex: 1;
  border: 0;
  background: transparent;
  min-height: 37px;
  padding: 8px;
  font-size: 13px;
}
.dialog-tabs button[aria-pressed="true"] {
  background: #e6eee2;
  color: var(--green);
}
.dialog-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: 20px;
}
.dialog-actions a {
  font-size: 12px;
}
.form-error {
  background: #fbebe7;
  padding: 12px;
  border-radius: 8px;
  color: #943d30;
}
.member-app .note {
  font-size: 12px;
  line-height: 1.9;
  background: #f5efdf;
}
.guide-steps {
  list-style: none;
  padding: 0;
  counter-reset: guide;
}
.guide-steps li {
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 15px 18px;
  display: flex;
  gap: 14px;
}
.guide-steps i {
  font:
    14px "HK Perks Tech",
    monospace;
  color: var(--muted);
  padding-top: 4px;
}
.guide-steps .done i {
  color: var(--green);
}
.guide-steps strong {
  font-size: 14px;
}
.guide-steps p {
  margin: 5px 0;
  color: var(--muted);
}
.guide-steps .done {
  background: #f0f5eb;
}
.guide-facts {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 15px;
}
.guide-facts div {
  background: #f0f4ed;
  padding: 14px;
  border-radius: 10px;
}
.guide-facts small {
  display: block;
  color: var(--muted);
  font-size: 11px;
  margin-bottom: 6px;
}
.guide-facts strong {
  font-size: 13px;
  line-height: 1.7;
}
.member-app .ledger {
  max-height: 440px;
  overflow: auto;
}
.member-app .ledger .row {
  flex-wrap: wrap;
}
.member-app .ledger .row > div:first-child {
  min-width: 180px;
}
.inline-confirm {
  display: flex;
  gap: 7px;
  align-items: center;
  flex-wrap: wrap;
  font-size: 11px;
}
.inline-confirm input {
  width: 145px;
  font-size: 12px !important;
  min-height: 34px;
  margin: 0;
}
.member-app #feedback {
  position: sticky;
  top: 10px;
  margin: 0 0 18px;
  font-size: 13px;
  box-shadow: 0 4px 20px #153d2810;
}
.loading-state {
  padding: 45px;
  text-align: center;
  color: var(--muted);
}
.member-app footer {
  font-size: 11px;
  line-height: 1.9;
  margin-top: 45px;
  padding-top: 23px;
}
@media (max-width: 1000px) {
  .identity {
    max-width: 270px;
  }
  .header-label {
    display: none;
  }
  .account-grid {
    grid-template-columns: 1fr;
  }
  .plan-steps {
    gap: 2px;
  }
  .plan-steps li {
    font-size: 9px;
    gap: 3px;
  }
  .plan-actions .quiet {
    margin-left: 0;
  }
  .offer-toolbar {
    grid-template-columns: minmax(0, 1fr) 145px 145px;
  }
  .activation-layout {
    gap: 30px;
  }
}
@media (max-width: 700px) {
  .member-app main {
    padding-top: 26px;
  }
  .member-header {
    padding: 17px 18px;
    gap: 12px;
  }
  .header-divider {
    display: none;
  }
  .header-actions {
    gap: 12px;
  }
  .header-actions a {
    font-size: 12px;
  }
  .workspace-hero {
    display: block;
    margin-bottom: 23px;
  }
  .identity {
    margin-top: 22px;
    max-width: none;
  }
  .identity-mark {
    width: 39px;
    height: 45px;
    border-radius: 12px;
    font-size: 22px;
  }
  .identity strong {
    display: inline-block;
    margin: 0 0 0 8px;
    font-size: 14px;
  }
  .identity small {
    margin-top: 5px;
  }
  .member-app h1 {
    font-size: 34px;
  }
  .member-app .lede {
    font-size: 13px;
  }
  .dashboard {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
  }
  .dashboard button {
    min-height: 100px;
    padding: 16px;
  }
  .dashboard strong {
    font-size: 28px;
  }
  .dashboard button small {
    font-size: 11px;
  }
  .workspace-nav {
    gap: 0;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 15px 0 25px;
  }
  .workspace-nav a {
    font-size: 12px;
    padding: 16px 0;
  }
  .workspace-nav button {
    display: none;
  }
  .workspace-nav a span {
    font-size: 10px;
    margin-left: 2px;
  }
  .member-app .section-heading h2 {
    font-size: 22px;
  }
  .member-app .section-heading {
    gap: 12px;
    align-items: center;
  }
  .member-app .section-heading .button {
    font-size: 12px;
    padding: 10px 12px;
    min-height: 37px;
  }
  .member-app .eyebrow {
    margin-top: 0;
    font-size: 9px;
    letter-spacing: 0.13em;
  }
  .plan-toolbar {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }
  .segmented {
    gap: 1px;
  }
  .segmented button {
    padding: 8px 11px;
    font-size: 11px;
  }
  .month-control {
    align-self: flex-end;
  }
  .plan-grid,
  .offer-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .member-app .plan,
  .offer {
    padding: 20px;
  }
  .next-action {
    padding: 15px;
    gap: 12px;
    flex-wrap: wrap;
  }
  .next-action button {
    margin-left: 21px;
  }
  .next-action div {
    min-width: 200px;
  }
  .plan-steps li {
    font-size: 10px;
    gap: 5px;
  }
  .offer-toolbar {
    grid-template-columns: 1fr 1fr;
    padding: 13px;
    gap: 10px;
  }
  .offer-toolbar .search-field {
    grid-column: 1/-1;
  }
  .offer-toolbar input,
  .offer-toolbar select {
    font-size: 12px;
  }
  .offer h3 {
    font-size: 16px;
  }
  .offer-footer {
    gap: 8px;
  }
  .account-grid {
    gap: 15px;
  }
  .member-app dialog {
    padding: 21px 18px;
    border-radius: 17px;
    max-height: 91dvh;
  }
  .member-app dialog h2 {
    font-size: 20px;
  }
  .dialog-tabs {
    gap: 2px;
  }
  .dialog-tabs button {
    font-size: 12px;
    padding: 7px 4px;
  }
  .dialog-actions {
    align-items: stretch;
    flex-direction: column;
  }
  .guide-facts {
    gap: 10px;
  }
  .guide-facts strong {
    font-size: 12px;
  }
  .activation-layout {
    grid-template-columns: 1fr;
    gap: 20px;
    margin: 25px 0;
  }
  .activation-intro {
    display: none;
  }
  .member-app .row .actions {
    max-width: none;
  }
  .member-app #feedback {
    font-size: 12px;
  }
  .member-app footer {
    margin-top: 25px;
  }
  .empty-state {
    padding: 34px 20px;
  }
  .empty-state h3 {
    font-size: 22px;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .workspace-panel {
    animation: member-in 0.28s ease both;
  }
  .dashboard button:hover,
  .offer:hover {
    transform: translateY(-2px);
    border-color: #baccbd;
  }
  .member-app .progress span {
    transition: width 0.45s ease;
  }
  @keyframes member-in {
    from {
      opacity: 0.4;
      transform: translateY(5px);
    }
    to {
      opacity: 1;
      transform: none;
    }
  }
}

.member-header .brand {
  margin-right: 0;
  font-family: var(--font-editorial);
}

.member-app { font-family: var(--font-body); }
:root:lang(zh-Hant) {
  --font-body: "HK Perks Inter", "PingFang HK", "PingFang TC", "Microsoft JhengHei", "Noto Sans CJK TC", system-ui, sans-serif;
  --font-editorial: "Songti TC", "PMingLiU", "Noto Serif CJK TC", serif;
}

.registration-entry { padding: 1rem 1.15rem; margin: 1rem 0; border: 1px solid #bfd3c9; border-radius: 14px; background: color-mix(in srgb, var(--paper, #fffefa) 92%, #2f8671 8%); color: var(--ink, #183f38); font-size: .94rem; line-height: 1.6; overflow-wrap: anywhere; }
.registration-heading { display:flex; flex-wrap:wrap; gap:.5rem 1rem; align-items:center; }
.registration-heading strong { font-size:1rem; }
.registration-heading span, .registration-timing { font-size:.85rem; }
.registration-entry p { margin:.5rem 0; }
.registration-entry .registration-note { font-size:.82rem; opacity:.85; margin-bottom:0; }
.registration-links { display:flex; gap:.6rem; flex-wrap:wrap; margin:.8rem 0; }
.registration-links a { display:inline-flex; padding:.55rem .85rem; border-radius:9px; background:#21695c; color:#fff; text-decoration:none; font-weight:600; }
.registration-links a:hover { background:#184d43; }
.registration-links a:focus-visible { outline:3px solid #b38e4c; outline-offset:3px; }
.registration-entry details { margin-top:.7rem; }
.registration-entry summary { cursor:pointer; }
.registration-entry ol { padding-left:1.4rem; margin:.6rem 0; }
.registration-entry li + li { margin-top:.35rem; }
.registration-closed, .registration-unknown { border-color:#d7c8a8; background:color-mix(in srgb, var(--paper, #fffefa) 93%, #b28743 7%); }
.registration-closed .registration-links a { background:transparent; color:inherit; border:1px solid #a8b5ad; font-weight:400; }
.registration-not_required { background:transparent; }
.participation-guidance { margin:1rem 0; color:var(--ink, #183f38); font-size:.94rem; line-height:1.65; overflow-wrap:anywhere; }
.participation-guidance p { margin:.45rem 0; }
.participation-guidance .registration-alert, .registration-entry .registration-alert { color:#a82e3b; }
.participation-guidance .registration-alert strong, .registration-entry .registration-alert strong { font-weight:700; }
.participation-instructions { margin-top:.65rem; }
.participation-instructions > summary { cursor:pointer; text-decoration:underline; text-underline-offset:3px; }
.participation-instructions ol { margin:.65rem 0; padding-left:1.4rem; }
.participation-instructions li + li { margin-top:.35rem; }
.participation-instructions .registration-links a { display:inline; padding:0; border-radius:0; background:none; color:inherit; font-weight:500; text-decoration:underline; text-underline-offset:3px; }
.participation-instructions .registration-links a:hover { background:none; text-decoration-thickness:2px; }
html[data-theme="night"] .participation-guidance .registration-alert,
html[data-theme="night"] .registration-entry .registration-alert { color:#ffb4bc; }
@media (max-width:480px) { .registration-entry { padding:.85rem; } .registration-links a { width:100%; justify-content:center; } }

/* Spending conclusions are compact facts, separate from eligibility warnings. */
.spending-analysis{margin-block:18px;padding:18px;border:1px solid var(--line,#ccd6d0);border-radius:14px;background:var(--paper,#fff);color:var(--ink,#263b34)}
.spending-analysis h4{margin:0 0 12px;font-size:18px}.spending-analysis dl{display:flex;flex-wrap:wrap;gap:12px 28px;margin:0 0 12px}.spending-analysis dt{font-size:14px}.spending-analysis dd{margin:4px 0 0;font-size:20px;font-weight:650;font-variant-numeric:tabular-nums}.spending-analysis p,.spending-analysis li{font-size:15px;line-height:1.65}.spending-analysis ul{padding-inline-start:20px;margin-block:10px}.spending-analysis form{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.spending-analysis input{width:125px;max-width:100%;min-height:40px}.spending-analysis [data-analysis-result]{flex-basis:100%;margin:0}.spending-analysis label{max-width:100%;overflow-wrap:anywhere}.spending-analysis .pay-note{margin-bottom:0}@media(max-width:600px){.spending-analysis{padding:14px}.spending-analysis dl{display:grid;gap:10px}.spending-analysis dd{font-size:19px}}

.spending-analysis form label{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:14px}.spending-analysis form label>span:first-child{flex-basis:100%}.spending-analysis .analysis-rate-pair{display:inline-flex;gap:8px;align-items:center;flex-wrap:wrap}.spending-analysis form button{align-self:flex-end}

/* Published-fact conclusions: independent paths, compact hierarchy. */
.spending-analysis .analysis-path{padding-block:13px;border-top:1px solid var(--line,#ccd6d0)}
.spending-analysis .analysis-path h5{margin:0 0 8px;font-size:15px;font-weight:650;line-height:1.5;overflow-wrap:anywhere}
.spending-analysis .analysis-path dl{margin-bottom:6px;gap:8px 24px}.spending-analysis .analysis-path p{margin:6px 0}
.spending-analysis .analysis-source-note{color:var(--muted,#57675f);overflow-wrap:anywhere}
.spending-analysis .analysis-basis,.spending-analysis .analysis-more{margin-block:12px}
.spending-analysis summary{cursor:pointer;font-size:14px;line-height:1.6}.spending-analysis .analysis-basis li{font-size:14px}

/* Public owner referral, visually distinct from official registration and terms. */
.bank-referral{margin:20px 0;padding:20px;border:1px solid var(--line,#d6d7cd);border-inline-start:3px solid #b8934d;border-radius:14px;background:var(--paper,#fff);color:var(--ink,#273a35);font-size:15px;line-height:1.65;overflow-wrap:anywhere}
.bank-referral-heading{display:flex;align-items:center;gap:12px}.bank-referral-heading>strong{font-size:17px}.bank-referral-heading>span{font-size:13px;color:var(--muted,#65716b)}
.bank-referral p{margin:8px 0}.bank-referral-code{display:flex;gap:10px;align-items:center;max-width:420px;margin-block:14px}
.bank-referral input,.bank-referral select,.bank-referral textarea{box-sizing:border-box;width:100%;max-width:100%;min-height:44px;border:1px solid var(--line,#cbd1ca);border-radius:8px;background:var(--paper,#fff);color:inherit;padding:10px;font:inherit}
.bank-referral [data-referral-code]{min-width:0;flex:1;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:23px;line-height:1.3;font-weight:650;letter-spacing:.12em}
.bank-referral button{flex-shrink:0;min-height:44px;border:1px solid #295c50;border-radius:8px;background:#295c50;color:#fff;padding:10px 16px;font:inherit;font-weight:600;cursor:pointer}
.bank-referral button:disabled{opacity:.55;cursor:wait}.bank-referral :is(button,input,select,textarea,summary):focus-visible{outline:3px solid #bb944c;outline-offset:3px}
.bank-referral .bank-referral-reward{margin-block:16px;padding-block:14px;border-block:1px solid var(--line,#d6d7cd)}
.bank-referral-reward>strong{font-size:19px;font-weight:650}.bank-referral .bank-referral-note{font-size:13px;color:var(--muted,#65716b);line-height:1.65}
.bank-referral-claim>summary{font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:4px}.bank-referral-claim form{margin-top:16px;max-width:720px}
.bank-referral-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.bank-referral label{display:grid;gap:5px;font-size:14px;margin-bottom:12px}.bank-referral textarea{resize:vertical}
.bank-referral .bank-referral-consent{display:flex;align-items:flex-start;gap:8px;margin-block:14px}.bank-referral-consent input[type=checkbox]{width:18px;height:18px;min-height:18px;margin:4px 0 0;flex-shrink:0;accent-color:#295c50}
.bank-referral-status{font-size:14px}.bank-referral-status:empty{display:none}.bank-referral-error{color:#a82e3b}
html[data-theme=night] .bank-referral{background:var(--paper,#202b2a)}
html[data-theme=night] .bank-referral button{border-color:#79b4a4;background:#b4d7c8;color:#173b32}
html[data-theme=night] .bank-referral-error{color:#ffb4bc}
@media(max-width:600px){.bank-referral{padding:16px}.bank-referral-fields{grid-template-columns:1fr}.bank-referral-code{flex-wrap:wrap}.bank-referral-code input{flex-basis:125px}.bank-referral-code button{max-width:100%;white-space:normal}}

.workspace-nav {flex-wrap:wrap;gap:8px}
.wallet-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(265px,1fr));gap:20px;margin-top:24px}
.wallet-card {padding:28px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(125deg,var(--surface),color-mix(in srgb,var(--green) 8%,var(--surface)));min-height:180px}
.wallet-card h3 {font-size:25px;margin:18px 0 8px}.archived {opacity:.65}
.workspace-form {display:grid;gap:20px}.workspace-form label:not(.check) {display:grid;gap:8px;min-width:0}.workspace-form input,.workspace-form select {min-width:0;width:100%}.workspace-form .check input {width:auto}
.field-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px}
#workspace-dialog {width:min(780px,calc(100vw - 24px));max-height:90dvh;padding:28px;box-sizing:border-box;border:1px solid var(--line);border-radius:24px;background:var(--surface);color:var(--ink)}
#workspace-dialog::backdrop {background:rgb(20 48 42 / 35%);backdrop-filter:blur(5px)}
#workspace-dialog h3 {line-height:1.5}#workspace-dialog-content {overflow-wrap:anywhere}
.ledger-links {border:1px solid var(--line);border-radius:16px;padding:18px;margin:0;min-width:0;max-height:330px;overflow:auto}.ledger-link {border-top:1px solid var(--line);padding:16px 0}.ledger-link:first-of-type {border:0}.ledger-link .field-grid {margin-top:12px}.ledger-link>label {font-weight:650}
.unified-ledger {margin-top:24px}.ledger-row {display:flex;justify-content:space-between;gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}.ledger-row:last-child {border:0}.ledger-row>div {min-width:0}.ledger-row h3 {margin:8px 0;font-size:24px}.ledger-row p {margin:5px 0;overflow-wrap:anywhere}.ledger-row .actions {align-content:center;flex-wrap:wrap}
.reward-totals,.strategy-metrics {display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:20px;margin:20px 0 28px}.reward-totals>div,.strategy-metrics>div {padding:18px;background:color-mix(in srgb,var(--green) 6%,transparent);border-radius:16px}.reward-totals strong,.strategy-metrics strong {display:block;font-size:28px;margin-top:10px;font-family:var(--font-mono,monospace)}
.calendar-list {display:grid;gap:12px}.calendar-event {display:grid;grid-template-columns:68px 1fr 20px;gap:20px;align-items:center;width:100%;text-align:left;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:18px}.calendar-event time {font:30px var(--font-mono,monospace)}.calendar-event time small {display:block;font-size:11px;margin-top:7px}.calendar-event strong {display:block;font-size:16px;margin-top:10px;line-height:1.6}
.rule-diff {display:grid;gap:6px;padding:16px 0;border-bottom:1px solid var(--line)}.rule-diff del {background:#b9535310;color:var(--ink)}.rule-diff ins {background:#25877512;text-decoration:none}.simulation-answer {padding:20px;border:1px solid var(--line);border-radius:14px;margin-top:20px}.simulation-answer strong {font-size:22px;color:var(--green)}
#mail-settings {margin-top:0}#mail-settings form {max-width:680px;margin:20px 0}.receipt-amount {font-size:32px;margin:0}
.mail-settings-panel {max-width:980px}.mail-settings-panel h3 {margin:0}.mail-settings-panel .section-heading {gap:16px;align-items:center}.mail-channel-note {padding:14px 18px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft,#eef4ef);font-size:15px;line-height:1.7}.mail-address-display {font-size:18px;font-weight:650;overflow-wrap:anywhere}.mail-preferences {padding-top:24px;border-top:1px solid var(--line)}.workspace-form label.mail-consent {display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 0}.mail-consent span {display:grid;gap:6px}.mail-consent strong {font-size:18px;color:var(--ink)}.mail-consent small {font-size:14px;font-weight:400;color:var(--muted)}.workspace-form .mail-consent input {appearance:none;flex:none;width:48px;height:28px;margin:0;padding:0;border:1px solid #b6c9c0;border-radius:20px;background:#c6d3cb;cursor:pointer;transition:background .18s}.mail-consent input::before {content:'';display:block;width:20px;height:20px;margin:3px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #193d3026;transition:transform .18s}.mail-consent input:checked {background:#236b59;border-color:#236b59}.mail-consent input:checked::before {transform:translateX(20px)}.mail-consent input:disabled {opacity:.5;cursor:not-allowed}.mail-settings-panel button {justify-self:start}.mail-settings-panel [disabled] {cursor:not-allowed}.mail-settings-panel summary {font-weight:600}.mail-settings-panel #mail-settings-status:empty {display:none}@media(max-width:600px){.mail-settings-panel {padding:20px}.mail-settings-panel .section-heading {align-items:flex-start;flex-wrap:wrap}.mail-consent strong {font-size:16px}.mail-consent small {line-height:1.6}}
body[data-workspace-view="mail"] .account-scope-bar {display:none}.mail-settings-panel .workspace-form {gap:14px;margin:16px 0}.mail-settings-panel .workspace-form p {margin:0;font-size:14px;line-height:1.7}@media(prefers-reduced-motion:reduce){.mail-consent input,.mail-consent input::before{transition:none}}
@media(max-width:640px){.ledger-row {display:block}.ledger-row .actions {margin-top:18px}.calendar-event {gap:10px;padding:16px}.workspace-nav a {font-size:13px;padding:10px}#workspace-dialog {padding:20px}.strategy-metrics {gap:8px}.strategy-metrics strong {font-size:23px}}

/* Verified planning keeps the magazine palette, with compact numeric goals. */
.smart-advisor {margin:22px 0;padding:22px;border:1px solid color-mix(in srgb,var(--green) 22%,var(--line));border-radius:18px;background:color-mix(in srgb,var(--green) 4%,var(--surface));overflow-wrap:anywhere}
.advisor-heading {display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:16px;font-size:12px;color:var(--muted)}
.advisor-kicker {display:block;font-size:12px;font-weight:650;letter-spacing:.07em;color:var(--green)}
.advisor-goals {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:18px}
.advisor-goal {min-width:0}.advisor-goal>small {color:var(--muted);line-height:1.6}.advisor-goal>strong {display:block;font:600 clamp(20px,2vw,26px)/1.6 var(--font-mono,monospace);margin:6px 0;color:var(--ink)}
.advisor-goal p {font-size:13px;line-height:1.8;margin:5px 0}.advisor-reward {color:var(--green);font-weight:650}
.advisor-limits {display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.advisor-limits span,.payment-methods span {font-size:12px;border:1px solid var(--line);border-radius:7px;padding:5px 9px;background:var(--surface)}
.payment-advice {padding:18px;margin:16px 0;border-left:3px solid var(--green);background:color-mix(in srgb,var(--green) 5%,var(--surface));border-radius:0 12px 12px 0;font-size:13px;line-height:1.8}
.payment-advice strong {display:block;margin:5px 0;font-size:15px}.payment-advice p {margin:9px 0}.payment-advice summary {font-size:12px}.payment-methods {display:flex;gap:7px;flex-wrap:wrap;margin:9px 0}
.payment-warning {color:#99521d;font-weight:650}.advisor-footnote {font-size:12px;line-height:1.8;color:var(--muted);margin:14px 0 0}
.smart-advisor.is-compact {padding:18px;margin:18px 0}.is-compact .advisor-goal>strong {font-size:23px}.is-compact .advisor-heading {margin-bottom:8px}.advisor-shortcuts {display:grid;gap:10px;padding:16px;border:1px dashed var(--line);border-radius:12px;font-size:13px}.advisor-shortcuts .actions {flex-wrap:wrap}.advisor-shortcuts button {font-size:13px;white-space:normal}.advisor-shortcuts small {color:var(--muted)}
@media(max-width:520px){.smart-advisor {padding:16px}.advisor-goals {grid-template-columns:1fr}.payment-advice {padding:13px}.advisor-goal>strong {font-size:23px}}

.manual-complete-summary {display:flex;align-items:center;gap:18px;padding:24px;margin:24px 0;background:color-mix(in srgb,var(--green) 7%,var(--surface));border:1px solid color-mix(in srgb,var(--green) 25%,var(--line));border-radius:18px}
.manual-complete-summary>span {display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border-radius:50%;background:var(--green);color:var(--surface);font-size:23px}
.manual-complete-summary strong {font-size:18px;color:var(--green)}.manual-complete-summary p {margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.8}.completion-records {margin-bottom:20px;font-size:13px}.completion-records summary {cursor:pointer;color:var(--muted)}
@media(max-width:520px){.manual-complete-summary {padding:18px;align-items:flex-start;gap:12px}.manual-complete-summary strong {font-size:16px}.plan-actions {flex-wrap:wrap}}

/* Payout follow-up stays separate from the spending progress and real receipts. */
.reward-tracking {margin:20px 0;padding:20px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--green) 4%,var(--surface));font-size:13px;overflow-wrap:anywhere}
.reward-tracking-head {display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center}.reward-tracking-head strong {color:var(--green);font-size:14px}
.reward-tracking p {line-height:1.8;margin:12px 0}.reward-due {display:flex;gap:10px;flex-wrap:wrap;align-items:baseline;color:var(--muted)}.reward-due time {font:600 19px var(--font-mono,monospace);color:var(--ink)}
.reward-tracking small {display:block;color:var(--muted);margin:8px 0;line-height:1.7}.reward-tracking .actions {display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.reward-tracking button {font-size:13px;padding:10px 14px;white-space:normal}.reward-tracking details {margin-top:12px;color:var(--muted)}.reward-tracking summary {cursor:pointer}.reward-tracking summary:focus-visible {outline:2px solid var(--green)}
.reward-tracking.overdue,.reward-tracking.due {border-color:color-mix(in srgb,#b2753b 40%,var(--line));background:color-mix(in srgb,#b2753b 5%,var(--surface))}.reward-tracking.overdue .reward-tracking-head strong,.reward-tracking.due .reward-tracking-head strong {color:#986025}
.reward-tracking-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(390px,100%),1fr));gap:22px}.reward-followup {padding:24px;border:1px solid var(--line);border-radius:22px;background:var(--surface);min-width:0}.reward-followup>small {color:var(--muted)}.reward-followup h3 {font-size:19px;line-height:1.6;margin:12px 0}.reward-followup .reward-tracking {margin-bottom:0}.reward-records-heading {margin-top:40px}
@media(max-width:520px){.reward-followup {padding:18px}.reward-tracking {padding:16px}.reward-tracking .actions button {flex:1 1 auto}}

/* Account-aware, compact progress cards. Details stay in the plan dialog. */
.account-scope-bar{display:flex;align-items:center;gap:16px;margin:22px 0 28px;padding:14px 18px;border:1px solid var(--line);border-radius:16px;background:var(--surface,#fff)}
.account-scope-bar label{display:flex;align-items:center;gap:12px;font-size:13px;white-space:nowrap}
.account-scope-bar select{max-width:330px;min-width:170px;padding:9px 32px 9px 12px;font-size:14px}
.account-scope-bar #account-scope-note{flex:1;font-size:12px;color:var(--muted)}
.account-scope-bar a{font-size:13px;white-space:nowrap}
#plans{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}
#plans .compact-plan{padding:20px;border-radius:20px;gap:0;min-width:0;box-shadow:0 6px 24px #173f3504}
.compact-plan .plan-top{gap:8px;margin:0 0 12px;font-size:12px}
.compact-plan .bank-label{font-size:12px;gap:7px}
.compact-plan .bank-label i{width:7px;height:7px}
.compact-plan .plan-status{padding:5px 8px;border-radius:7px;font-size:11px;white-space:nowrap;margin-left:auto}
.compact-plan .plan-delete-trigger{display:grid;place-items:center;flex:0 0 40px;width:40px;min-height:40px;padding:8px;border-color:transparent;background:transparent;color:#a9474f;border-radius:9px}
.compact-plan .plan-delete-trigger svg{width:18px;height:18px}
.compact-plan .plan-delete-trigger:hover{border-color:#d8b4b8;background:#a9474f0d}
.compact-plan .plan-account{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.plan-account>span{border:1px solid var(--line);padding:1px 5px;border-radius:4px;font-size:10px;flex-shrink:0}
#plans .compact-plan h3{font-size:17px;line-height:1.5;margin:0 0 7px;font-weight:650;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#plans .compact-plan .plan-context{font-size:11px;line-height:1.6;margin:0 0 18px;color:var(--muted)}
.compact-completed{display:flex;align-items:center;gap:11px;padding:14px 12px;margin-bottom:15px;border-radius:12px;background:color-mix(in srgb,var(--green,#226b5b) 7%,transparent)}
.compact-completed>span{display:grid;place-items:center;width:30px;height:30px;flex-shrink:0;border-radius:50%;background:var(--green,#226b5b);color:white;font-size:18px}
.compact-completed strong{display:block;font-size:14px;line-height:1.6;font-weight:600}
.compact-completed small{display:block;font-size:11px;line-height:1.6;color:var(--muted)}
.compact-progress{margin:0 0 14px}
.compact-numbers{display:flex;justify-content:space-between;gap:16px;margin:0 0 10px}
.compact-numbers>span:last-child{text-align:right}
.compact-numbers small{display:block;font-size:11px;color:var(--muted);margin-bottom:3px}
.compact-numbers strong{font-family:var(--font-data,monospace);font-size:25px;font-weight:500;line-height:1.4;font-variant-numeric:tabular-nums}
.compact-plan .progress{height:5px;margin:0 0 6px;border-radius:5px}
.compact-progress-note{display:block;font-size:10px;line-height:1.6;color:var(--muted)}
.compact-plan .compact-reward{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;border:none;border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;padding:12px 0;margin:0 0 12px;text-align:left;background:transparent;font-size:11px;line-height:1.5}
.compact-reward>span{color:var(--muted)}
.compact-reward>strong{font-size:11px;white-space:nowrap;font-weight:600}
.compact-reward.overdue>strong{color:#a7682e}
.compact-plan .plan-actions{display:flex;flex-wrap:wrap;gap:7px;margin:0;justify-content:flex-start;align-items:center}
.compact-plan .plan-actions button{min-height:34px;padding:6px 10px;border-radius:9px;font-size:12px;line-height:1.5;white-space:nowrap}
.compact-plan .plan-actions .quiet{padding-inline:4px;margin-left:auto}
.compact-warning{font-size:11px;line-height:1.6;color:#946023;margin:0 0 10px}
.profiles-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;margin:24px 0;align-items:start}
.holder-card{padding:20px;border:1px solid var(--line);border-radius:20px;background:var(--surface,#fff);min-width:0}
.holder-card .section-heading{margin:0 0 10px}
.holder-card h3{font-size:19px;margin:0}
.holder-heading{min-width:0}
.holder-summary{font-size:12px;color:var(--muted);margin:6px 0 0}
.account-row{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding:15px 0}
.account-row strong{font-size:15px}.account-row small{display:block;font-size:12px;color:var(--muted);margin-top:5px}
.account-row button,.holder-card button{font-size:12px;padding:7px 10px;min-height:34px}
.account-group{border-top:1px solid var(--line);padding:14px 0 18px;min-width:0}
.holder-card .section-heading h3{min-width:0;overflow-wrap:anywhere}
.account-group:last-child{padding-bottom:0}
.account-group .account-row{border:0;padding:0 0 12px;align-items:flex-start}
.account-group .account-row>div:first-child{min-width:0;overflow-wrap:anywhere}
.account-group .account-row .actions{flex-wrap:wrap;flex-shrink:0;gap:6px}
.account-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:12px}
.account-cards .wallet-card{display:flex;flex-direction:column;padding:14px;border-radius:12px;min-height:0;min-width:0}
.account-cards .wallet-card h4{font-size:16px;margin:8px 0 12px;overflow-wrap:anywhere}
.account-cards .wallet-card .eyebrow{font-size:10px;letter-spacing:1px}
.account-cards .wallet-card .actions{flex-wrap:wrap;justify-content:flex-start;gap:6px;margin-top:auto}
.account-cards .wallet-card p,.account-cards .wallet-card small,.account-empty{font-size:12px;line-height:1.7;margin:0 0 12px}
.account-add-card{margin-top:10px}
.card-bank-note{font-size:13px;margin:0}
.join-accounts{border:1px solid var(--line);border-radius:12px;padding:16px;margin:18px 0}
.join-accounts legend{padding:0 7px;font-size:14px}.join-accounts p{font-size:12px;line-height:1.7}
.plan-assignment{padding:12px 0;border-bottom:1px solid var(--line);margin-bottom:16px}.plan-assignment p{font-size:13px}
.wallet-account{display:block;color:var(--muted);margin:10px 0 0}
.reward-followup{padding:20px}.reward-followup>h3{font-size:17px;margin:8px 0 14px}.reward-followup>small{font-size:12px;color:var(--muted)}
@media(max-width:1199px){#plans{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){#plans,.profiles-grid{grid-template-columns:minmax(0,1fr)}.account-scope-bar{flex-wrap:wrap;padding:12px;gap:10px}.account-scope-bar label{flex:1}.account-scope-bar select{width:100%;min-width:0;max-width:250px}.account-scope-bar #account-scope-note{flex-basis:100%;order:3}.account-row{flex-wrap:wrap}.compact-plan .plan-actions button{min-height:40px}#plans .compact-plan{padding:18px}.compact-plan .compact-reward{min-height:44px}}

/* One shared calendar axis on desktop, one local flight line on small screens. */
.flight-filters{flex-wrap:wrap;margin:22px 0}.flight-filters button{white-space:normal}.flight-filters button span{font-family:var(--font-mono,monospace);font-size:11px;margin-left:5px;color:var(--muted)}
.flight-heading{display:flex;justify-content:space-between;gap:18px;align-items:baseline;margin:22px 0 16px}.flight-heading h3{font-size:17px;margin:0}.flight-heading p{font-size:12px;color:var(--muted);margin:0;line-height:1.7}
.flight-axis,.reward-flight{display:grid;grid-template-columns:minmax(210px,1fr) minmax(280px,1.5fr) 190px;column-gap:26px}.flight-axis{padding:0 24px 10px;font-size:11px;color:var(--muted)}.flight-axis>div{display:flex;justify-content:space-between;gap:6px;font-family:var(--font-mono,monospace)}.flight-axis>span:last-child{text-align:right}
.reward-flight-list{display:grid;gap:14px}.reward-flight{--flight-color:var(--green);padding:22px 24px;border:1px solid var(--line);border-radius:20px;background:var(--surface);align-items:center;overflow-wrap:anywhere;min-width:0}.reward-flight.upcoming{--flight-color:#99631e;border-color:color-mix(in srgb,#99631e 35%,var(--line))}.reward-flight.overdue{--flight-color:#b0473d;border-color:color-mix(in srgb,#b0473d 35%,var(--line))}.reward-flight.received{background:color-mix(in srgb,var(--green) 4%,var(--surface))}
.flight-identity,.flight-middle,.flight-deadline{min-width:0}.flight-identity>small{font-size:11px;color:var(--muted)}.flight-identity h3{font-size:16px;line-height:1.65;margin:8px 0}.flight-identity p{font-size:11px;color:var(--muted);margin:6px 0}.flight-deadline{text-align:right}.flight-deadline>small{display:block;font-size:11px;color:var(--muted)}.flight-deadline>time{display:block;font:600 23px/1.6 var(--font-mono,monospace);color:var(--ink);white-space:nowrap}.flight-deadline>strong{display:block;font-size:12px;line-height:1.8;color:var(--flight-color)}.flight-deadline>span{display:block;font-size:11px;color:var(--muted);line-height:1.7}
.flight-track{position:relative;height:50px;margin:4px 12px 0}.flight-rail,.flight-elapsed{position:absolute;top:26px;left:var(--flight-left);width:var(--flight-width);border-top:2px dashed var(--line)}.flight-elapsed{width:var(--flight-elapsed);border-top:2px solid var(--flight-color)}.flight-origin,.flight-destination{position:absolute;top:22px;left:var(--flight-left);width:8px;height:8px;border:2px solid var(--flight-color);border-radius:50%;background:var(--surface);transform:translateX(-50%);box-sizing:border-box}.flight-destination{left:var(--flight-right);width:10px;height:10px;top:21px;border-radius:2px;transform:translateX(-50%) rotate(45deg)}.flight-plane{display:grid;place-items:center;position:absolute;left:var(--flight-marker);top:11px;width:30px;height:30px;transform:translateX(-50%);border-radius:50%;color:var(--flight-color);background:var(--surface);box-shadow:0 0 0 4px var(--surface)}.flight-plane svg{width:24px;height:24px;transform:rotate(90deg)}.flight-plane.is-confirmed{font-size:18px;background:var(--green);color:white;box-shadow:0 0 0 3px var(--surface)}
.flight-dates{display:flex;justify-content:space-between;gap:8px;font-size:10px;color:var(--muted);line-height:1.7}.flight-dates>span:nth-child(2){text-align:center}.flight-dates>span:last-child{text-align:right}.flight-dates time{display:block;font-family:var(--font-mono,monospace);white-space:nowrap}.flight-no-start{font-size:12px;color:var(--muted);line-height:1.7}.flight-plot-local{display:none}.flight-footer{grid-column:1/-1;display:flex;justify-content:space-between;gap:16px;align-items:start;border-top:1px solid var(--line);padding-top:13px;margin-top:16px}.flight-footer .actions{margin:0;flex-wrap:wrap;justify-content:flex-end;gap:8px}.flight-footer button{font-size:12px;min-height:40px;padding:9px 12px;white-space:normal}.flight-evidence{font-size:12px;color:var(--muted);min-width:0;flex:1}.flight-evidence summary{cursor:pointer;line-height:2}.flight-evidence p{line-height:1.8;margin:8px 0}.flight-evidence summary:focus-visible{outline:2px solid var(--green);outline-offset:3px}.flight-empty{padding:24px;color:var(--muted);font-size:13px;background:var(--surface);border:1px solid var(--line);border-radius:18px;line-height:1.8}
@media(max-width:1000px){.flight-axis,.flight-plot-shared{display:none}.flight-plot-local{display:block}.reward-flight{grid-template-columns:minmax(0,1fr) 190px;gap:10px 20px}.flight-identity{grid-column:1;grid-row:1}.flight-deadline{grid-column:2;grid-row:1}.flight-middle{grid-column:1/-1;grid-row:2}.flight-footer{grid-row:3}.flight-heading{display:block}.flight-heading p{margin-top:8px}}
@media(max-width:520px){.reward-flight{padding:18px;display:flex;flex-direction:column;align-items:stretch;gap:8px}.flight-deadline{display:flex;flex-wrap:wrap;gap:3px 10px;align-items:baseline;text-align:left;order:1}.flight-deadline>small{flex-basis:100%}.flight-deadline>time{font-size:23px}.flight-deadline>span{flex-basis:100%}.flight-middle{order:2}.flight-footer{order:3;display:block;margin-top:12px}.flight-footer .actions{justify-content:flex-start;margin-top:10px}.flight-footer button{min-height:44px;flex:1 1 auto}.flight-dates{font-size:10px}.flight-filters button{font-size:12px;padding:10px}.flight-heading h3{font-size:16px}}

.reward-flight.date-only{grid-template-columns:minmax(0,1fr) 220px}.date-only .flight-middle{display:none}
@media(max-width:520px){.reward-flight.date-only{display:flex}}

.flight-now{font-size:10px;color:var(--flight-color);font-family:var(--font-mono,monospace);line-height:1.7}.flight-footer .flight-evidence{padding:0;border:0;background:transparent;border-radius:0;margin:0}.flight-dates>span:last-child{text-align:right}.flight-dates>span:first-child{text-align:left}

/* Month abbreviations help match statement notes to the earning cycle. */
.reward-month-guide{padding:12px 16px;margin:16px 0;border:1px solid var(--line);border-radius:14px;background:var(--surface);font-size:12px;color:var(--muted)}.reward-month-guide summary{cursor:pointer;line-height:1.8;color:var(--green)}.reward-month-guide summary:focus-visible{outline:2px solid var(--green);outline-offset:3px}.reward-month-guide p{line-height:1.8;margin:12px 0}.reward-month-guide dl{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:12px 0 0}.reward-month-guide dl>div{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;background:color-mix(in srgb,var(--green) 5%,transparent)}.reward-month-guide dt{font-family:var(--font-mono,monospace);color:var(--ink);font-weight:600}.reward-month-guide dd{margin:0;white-space:nowrap}.reward-month-guide abbr,.flight-month-code{text-decoration:none}.flight-month-code{font-family:var(--font-mono,monospace);color:var(--green);font-weight:600}
@media(max-width:720px){.reward-month-guide dl{grid-template-columns:repeat(3,minmax(0,1fr))}.reward-month-guide{padding:12px}.reward-month-guide dl>div{padding:8px}}

/* Calendar dates and participating plans remain distinct and readable. */
.calendar-toolbar,.calendar-month-control {display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}
.calendar-toolbar {justify-content:space-between;margin:24px 0}
.calendar-month-control label {margin:0}.calendar-month-control input {min-width:170px;margin-top:8px}
.calendar-month-control button {min-height:46px;min-width:44px}
.calendar-summary {display:flex;align-items:center;gap:12px;color:var(--muted);padding:15px 20px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.calendar-summary strong {color:var(--green);font-family:var(--font-mono,monospace);font-size:22px}
.calendar-summary>span {margin-left:12px}.calendar-list {margin-top:18px}
.calendar-event small.muted {display:block;margin-top:8px}
.calendar-activities {margin-top:30px}.calendar-activities .section-heading {margin-bottom:16px}
.calendar-activity-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.calendar-activity {position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:10px;text-align:left;white-space:normal;padding:22px 42px 22px 22px;background:var(--surface);border:1px solid var(--line);border-radius:18px;min-width:0}
.calendar-activity strong {font-size:16px;line-height:1.6}.calendar-activity span,.calendar-activity small,.calendar-event strong {overflow-wrap:anywhere}
.calendar-activity small {color:var(--muted);line-height:1.6}.calendar-open {position:absolute;right:20px;top:24px;color:var(--green)}
.calendar-activity-grid>.empty-state {grid-column:1/-1}
@media(max-width:640px){.calendar-toolbar {align-items:flex-start;gap:16px}.calendar-month-control {gap:8px}.calendar-month-control input {min-width:140px}.calendar-activity-grid {grid-template-columns:1fr}.calendar-activity {padding:18px 36px 18px 18px}.calendar-summary {padding:12px;gap:8px}.calendar-summary>span {margin-left:4px}}

/* Original route symbols; colors identify categories, never brand ownership. */
.pay-icon{--pay-ink:#507084;--pay-tint:#e6eef2;display:inline-grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:13px;color:var(--pay-ink);background:var(--pay-tint)}
.pay-icon svg{width:27px;height:27px}.pay-violet{--pay-ink:#63518e;--pay-tint:#eee8f7}.pay-ochre{--pay-ink:#8c651c;--pay-tint:#f8eed9}.pay-blue{--pay-ink:#fff;--pay-tint:#1372cf}.pay-indigo{--pay-ink:#fff;--pay-tint:#1372cf}.pay-teal{--pay-ink:#fff;--pay-tint:#138544}.pay-coral{--pay-ink:#b65a44;--pay-tint:#f9eae1}.pay-purple{--pay-ink:#8554a0;--pay-tint:#f1e7f6}.pay-wine{--pay-ink:#963e56;--pay-tint:#f7e6ec}.pay-rose{--pay-ink:#a04676;--pay-tint:#f5e7f0}
.pay-guidance{margin:18px 0;padding:20px;border:1px solid var(--line,#dce5df);border-radius:18px;background:var(--surface,#fbfcf9);text-align:left;line-height:1.65;color:var(--ink,#193e36)}
.pay-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.pay-section-heading h4{font-size:18px;font-weight:600;line-height:1.5;margin:3px 0}.pay-section-heading a,.pay-directory-card>a{font-size:12px;color:var(--accent,#21695d);text-decoration:underline;text-underline-offset:3px}.pay-eyebrow{font:11px/1.4 monospace;letter-spacing:.12em;color:var(--muted,#607970)}
.pay-note,.pay-empty{font-size:13px;color:var(--muted,#607970);margin:12px 0 16px}.pay-route-list{display:grid;gap:8px}.pay-route{display:flex;align-items:start;gap:12px;padding:12px 0;border-bottom:1px solid var(--line,#dce5df)}.pay-route:last-child{border-bottom:0}.pay-route-content{min-width:0;flex:1}.pay-route-heading{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pay-route-heading strong{font-size:14px}.pay-route-content small{font-size:12px;color:var(--muted,#607970)}.pay-state{font-size:11px;border:1px solid var(--line,#dce5df);border-radius:20px;padding:1px 8px;white-space:nowrap}.pay-state-conditional .pay-state{color:#246353;background:#e5f1e8}.pay-state-restricted .pay-state{color:#855c26;background:#faf0db}.pay-state-unknown .pay-state{color:#5d6b67;background:#edf0eb}.pay-providers,.pay-unknown-note{font-size:12px!important;margin:5px 0!important;color:var(--muted,#607970)}
.pay-evidence{font-size:13px;margin:7px 0 0}.pay-evidence summary,.pay-other>summary,.pay-sources>summary{cursor:pointer;color:var(--accent,#21695d);font-size:13px}.pay-evidence ul,.pay-sources ul{padding-left:20px;margin:10px 0;overflow-wrap:anywhere}.pay-evidence li{margin:8px 0}.pay-evidence li>span{color:var(--muted,#607970);font-size:11px}.pay-other,.pay-sources{margin-top:14px}.pay-sources li{font-size:12px}.pay-sources a{color:inherit}.pay-reviewed{padding:12px 15px;background:var(--soft,#edf3eb);border-left:3px solid var(--accent,#21695d);border-radius:6px;margin:14px 0}.pay-reviewed strong{font-size:14px}.pay-reviewed p{font-size:13px;margin:7px 0}.pay-reviewed-limit{color:var(--muted,#607970)}
.pay-directory-page{max-width:1200px;margin:0 auto;padding:30px 24px 60px}.pay-directory-nav{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:14px;padding-bottom:25px;border-bottom:1px solid var(--line,#dce5df)}.pay-directory-nav a{color:inherit}.pay-directory-hero{max-width:720px;padding:45px 0 30px}.pay-directory-hero h1{font-size:clamp(30px,5vw,48px);line-height:1.3;margin:15px 0}.pay-directory-hero p{color:var(--muted,#607970);line-height:1.8}.pay-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.pay-directory-card{position:relative;padding:24px;border:1px solid var(--line,#dce5df);border-radius:20px;background:var(--surface,#fbfcf9);display:flex;flex-direction:column;align-items:start;gap:12px}.pay-directory-number{position:absolute;right:24px;top:25px;color:var(--muted,#607970);font:14px monospace}.pay-directory-card h2{font-size:19px;margin:4px 0 -7px}.pay-directory-card small{font-size:12px;color:var(--muted,#607970)}.pay-directory-card p{font-size:14px;line-height:1.7;margin:0}.pay-directory-caution{font-size:12px;line-height:1.75;color:var(--muted,#607970);padding:12px;background:var(--soft,#edf3eb);border-radius:10px}.pay-directory-card>a{margin-top:auto}.pay-attribution{font-size:12px;color:var(--muted,#607970);margin-top:25px;line-height:1.8}
@media(max-width:900px){.pay-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:580px){.pay-directory-grid{grid-template-columns:1fr}.pay-guidance{padding:14px}.pay-section-heading{align-items:start;flex-direction:column}.pay-route{gap:9px}.pay-directory-page{padding:20px 16px}.pay-icon{flex-basis:36px;width:36px;height:36px}.pay-icon svg{width:25px;height:25px}}

/* Override broad member dialog details styles only inside this component. */
.pay-guidance .pay-evidence{padding:0;border:0;border-radius:0;background:transparent;margin:7px 0 0}
.pay-guidance .pay-evidence>summary{padding:0;font-size:12px;border:0}
.pay-guidance .pay-other,.pay-guidance .pay-sources{padding:12px 0 0;border:0;border-top:1px solid var(--line,#dce5df);border-radius:0;background:transparent}

/* One row of routes keeps activity cards aligned; all routes remain in details. */
.card-payment-routes{display:flex;flex-direction:column;gap:6px;margin:10px 0 4px;min-height:64px}
.card-payment-heading{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:24px}
.card-payment-label,.card-payment-pending,.card-payment-empty{font-size:11px;line-height:1.5;color:var(--muted,#607970)}
.card-payment-context{font-size:10px;opacity:.85}
.card-payment-empty{display:flex;align-items:center;margin:0;min-height:34px;font-size:12px}
.card-payment-badges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.card-payment-badge{display:flex;align-items:center;gap:5px;min-width:0;min-height:34px;padding:4px 6px 4px 4px;border:1px solid var(--line,#dce5df);border-radius:8px;background:var(--paper,#fbfcf9);color:var(--ink,#193e36);text-align:left;line-height:1.3;cursor:pointer}
.card-payment-badge .pay-icon{flex:0 0 22px;width:22px;height:22px;border-radius:6px}
.card-payment-badge .pay-icon svg{width:18px;height:18px}
.card-payment-name{min-width:0;font-size:11px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card-payment-badge small{flex-shrink:0;font-size:10px;white-space:nowrap;color:var(--gold,#9a651c);margin-left:auto}
.card-payment-badge:hover{border-color:var(--green,#21665d);background:var(--soft,#edf3eb)}
.card-payment-badge:focus-visible{outline:2px solid var(--green,#21665d);outline-offset:3px}
.card-payment-more{padding:2px 0 2px 5px;border-radius:4px;background:transparent;color:var(--green,#216657);font-size:11px;line-height:1.5;white-space:nowrap;min-height:24px}
.card-payment-more:hover{text-decoration:underline;text-underline-offset:3px}
@media(pointer:coarse){.card-payment-badge{min-height:40px}.card-payment-more{min-height:28px}}

/* Explicit exclusions are separate from possible qualifying routes. */
.pay-excluded{margin-top:14px;padding-top:12px;border-top:1px solid var(--line,#dce5df)}
.pay-excluded>summary{cursor:pointer;font-size:13px;font-weight:600;color:#a43c44}
.pay-state-excluded .pay-state{color:#a43c44;background:#fce9eb;border-color:#efc7cc}
.pay-excluded>.pay-note{margin:6px 0;font-size:12px}
.pay-guidance .pay-excluded{border:0;border-top:1px solid var(--line,#dce5df);padding:12px 0 0;border-radius:0;background:transparent}
.pay-guidance .pay-excluded>summary{padding:0;color:#a43c44}

.pay-restricted { margin: 1rem 0; padding: .9rem 1rem; border: 1px solid #d7bd87; border-radius: 12px; background: color-mix(in srgb, var(--paper, #fffefa) 92%, #d7bd87 8%); }
.pay-restricted > summary { color: #90682e; font-weight: 600; cursor: pointer; }

/* Card-network scope is visible before individual route details. */
.pay-network-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0}
.pay-network-group{min-width:0;padding:12px;border:1px solid var(--line,#dce5df);border-radius:12px;background:var(--surface,#fbfcf9)}
.pay-network-group>strong{font-size:13px}.pay-network-group>p{font-size:12px!important;line-height:1.6;margin:8px 0 0!important}
.pay-network-methods{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.pay-network-methods>span{display:inline-flex;align-items:center;gap:5px;font-size:11px;padding:3px 6px;border-radius:7px;background:var(--soft,#edf3eb);max-width:100%}
.pay-network-methods .pay-icon{flex:0 0 22px;width:22px;height:22px;border-radius:6px}.pay-network-methods .pay-icon svg{width:17px;height:17px}
.pay-networks{font-size:12px!important;font-weight:600;color:var(--accent,#21695d);margin:5px 0!important}
.pay-review-basis{font-size:11px!important;color:var(--muted,#607970)}
@media(max-width:580px){.pay-network-groups{grid-template-columns:1fr}.pay-network-group{padding:10px}}

.pay-usage,.pay-path-help{margin:7px 0;font-size:12px;line-height:1.65}
.pay-usage>summary,.pay-path-help>summary{font-size:12px;color:var(--accent,#21695d);cursor:pointer;overflow-wrap:anywhere}
.pay-usage p,.pay-path-help p{font-size:12px!important;margin:7px 0!important;color:var(--muted,#607970)}
.pay-path-help{padding:10px 12px;border:1px solid var(--line,#dce5df);border-radius:10px;background:var(--soft,#edf3eb);margin:12px 0}
.pay-path-help a{font-size:12px;color:var(--accent,#21695d)}
.pay-guidance .pay-usage{padding:0;border:0;border-radius:0;background:transparent}
.pay-guidance .pay-usage>summary,.pay-guidance .pay-path-help>summary{padding:0;font-size:12px}
.pay-knowledge{margin:0 0 28px;scroll-margin-top:20px}.pay-knowledge>h2{font-size:22px;margin:0}
.pay-scenarios{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
.pay-scenarios>li{min-width:0;padding:16px;border:1px solid var(--line,#dce5df);border-radius:14px;background:var(--surface,#fbfcf9)}
.pay-scenarios>li:last-child{grid-column:1/-1}.pay-scenarios>li>div{display:flex;align-items:center;gap:8px}
.pay-scenarios h3{font-size:14px;font-weight:600;margin:0}.pay-scenarios .pay-icon{flex:0 0 28px;width:28px;height:28px;border-radius:8px}.pay-scenarios .pay-icon svg{width:21px;height:21px}
.pay-scenarios p{font-size:13px;line-height:1.7;margin:10px 0 7px}.pay-scenarios small{display:block;font-size:12px;line-height:1.65;color:var(--muted,#607970)}
.pay-mainland-note{font-size:13px;line-height:1.7;padding:12px 15px;border-left:3px solid var(--accent,#21695d);background:var(--soft,#edf3eb);border-radius:8px}
@media(max-width:580px){.pay-scenarios{grid-template-columns:1fr}.pay-scenarios>li{padding:14px}}

/* Edition-specific merchant conditions stay in details, not activity cards. */
.merchant-guidance{margin:18px 0;padding:18px;border:1px solid var(--line,#dce5df);border-radius:16px;background:var(--surface,#fbfcf9);text-align:left;line-height:1.65;color:var(--ink,#193e36)}
.merchant-guidance h4{font-size:17px;margin:4px 0 12px;font-weight:600}.merchant-regions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.merchant-region{min-width:0;padding:12px;border-radius:10px;background:var(--soft,#edf3eb)}.merchant-region>strong{font-size:13px}.merchant-guidance p{font-size:12px!important;margin:7px 0!important}.merchant-region small,.merchant-footnote{display:block;font-size:11px;line-height:1.65;color:var(--muted,#607970)}
.merchant-guidance details{border:0!important;padding:0!important;margin:10px 0!important;background:transparent!important}.merchant-guidance summary{padding:0!important;font-size:12px!important;cursor:pointer;color:var(--accent,#21695d)}
.merchant-names{display:flex;flex-wrap:wrap;gap:5px;margin:9px 0}.merchant-names>span{max-width:100%;font-size:11px;padding:2px 7px;border:1px solid var(--line,#dce5df);border-radius:6px;overflow-wrap:anywhere;background:var(--surface,#fbfcf9)}
.merchant-checks ul{padding-left:18px;font-size:12px}.merchant-checks li{margin:6px 0}.merchant-mcc a,.merchant-evidence a{font-size:11px;color:var(--accent,#21695d);text-underline-offset:3px}.merchant-evidence{display:flex;flex-wrap:wrap;gap:8px 16px;padding-top:10px;border-top:1px solid var(--line,#dce5df);margin-bottom:8px}
@media(max-width:580px){.merchant-regions{grid-template-columns:1fr}.merchant-guidance{padding:14px}.merchant-region{padding:10px}}
.merchant-member-route{padding:12px;border-left:3px solid var(--accent,#21695d);border-radius:10px;background:var(--soft,#edf3eb);margin:12px 0}
.merchant-member-route>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.merchant-member-route strong{font-size:13px}.merchant-member-route>div>span:last-child{font-size:10px;color:var(--gold,#8c651c);padding:2px 7px;border:1px solid var(--line,#dce5df);border-radius:6px}
.merchant-member-route .pay-icon{width:26px;height:26px;flex:0 0 26px;border-radius:7px}.merchant-member-route .pay-icon svg{width:20px;height:20px}.merchant-member-route ol{font-size:12px;padding-left:20px;margin:10px 0}.merchant-member-route li{margin:5px 0}.merchant-member-route small{display:block;font-size:11px;line-height:1.65;color:var(--muted,#607970)}
/* Evidence-backed conditions stay folded; activity cards keep their footprint. */
.guide-evidence{margin:18px 0;padding:18px;border:1px solid var(--line,#d9e4dc);border-radius:18px;background:var(--surface,#fffefa)}
.guide-evidence h4{margin:4px 0 12px;font-size:18px}
.guide-topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px}
.guide-topic-grid>details{min-width:0;border-top:1px solid var(--line,#d9e4dc);padding:10px 0;font-size:13px;overflow-wrap:anywhere}
.guide-topic-grid>details>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;list-style:none}
.guide-topic-grid small{font-size:11px;color:var(--muted,#71837b);flex-shrink:0}
.guide-topic-grid ul{padding-left:17px;line-height:1.7}
.guide-topic-grid p{margin:8px 0}
.guide-topic-grid .guide-unresolved{color:#916a32}
.guide-quotes{font-size:11px;color:var(--muted,#71837b)}
.guide-quotes blockquote{margin:8px 0;padding:8px 10px;border-left:2px solid var(--line,#d9e4dc);white-space:pre-wrap}
@media(max-width:600px){.guide-topic-grid{grid-template-columns:1fr}.guide-evidence{padding:14px}.guide-topic-grid>details>summary{flex-wrap:wrap}}

/* Qualification comes first; unstated tools do not create a visual task list. */
.pay-scope{margin:14px 0 10px;padding:18px;border:1px solid var(--line,#dce5df);border-radius:14px;background:color-mix(in srgb,var(--paper,#fffefa) 97%,#587689 3%);overflow-wrap:anywhere}
.pay-scope-heading{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}
.pay-scope-label{font-size:18px;font-weight:600;color:var(--ink,#193e36)}
.pay-scope-heading small{font-size:13px;color:var(--muted,#607970)}
.pay-scope .pay-scope-definition{font-size:var(--pay-reading-size,17px)!important;line-height:1.75;margin:12px 0 16px!important;color:var(--ink,#193e36)}
.pay-scope-conditions,.pay-scope-exclusions{margin-top:12px;font-size:12px;line-height:1.75}
.pay-scope-conditions>strong,.pay-scope-exclusions>strong{display:block;font-size:16px;letter-spacing:.02em;font-weight:600;color:var(--ink,#193e36)}
.pay-scope ul{margin:5px 0 0;padding-left:18px;font-size:12px;line-height:1.75}
.pay-scope li{margin:4px 0}
.pay-scope-exclusions{border-top:1px solid var(--line,#dce5df);padding-top:11px}
.pay-scope-exclusions>strong{color:var(--pay-exclusion-ink,#943d4b)}
.pay-critical-warnings{border-left:3px solid #b48943;padding:14px 12px;margin:16px 0 0;background:color-mix(in srgb,var(--paper,#fffefa) 92%,#dcc89f 8%);border-radius:8px;font-size:16px;color:var(--ink,#193e36)}
.pay-critical-warnings>strong{font-size:16px;font-weight:600;color:var(--pay-warning-ink,#795525)}
.pay-specified-routes{margin:16px 0 8px}.pay-specified-routes>h5{font-size:13px;font-weight:600;margin:0}.pay-specified-routes>.pay-note{font-size:11px;line-height:1.65;margin:5px 0}
.pay-member-invite{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid var(--line,#dce5df);padding-top:13px;margin-top:15px}
.pay-member-invite strong{font-size:13px;font-weight:600}.pay-member-invite p{font-size:11px!important;line-height:1.65;margin:4px 0!important;color:var(--muted,#607970)}
.pay-member-invite a{font-size:12px;color:var(--accent,#21695d);white-space:nowrap;text-underline-offset:3px}
.pay-member-tag{padding:3px 7px;border:1px solid #d7cba9;border-radius:5px;color:#8c702f;font:10px/1.4 monospace;letter-spacing:.06em}
.pay-recommendations{margin:22px 0}.pay-recommendation-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin-top:14px}
.pay-recommendation{min-width:0;padding:18px;border:1px solid var(--line,#dce5df);border-radius:14px;background:color-mix(in srgb,var(--paper,#fffefa) 97%,#587689 3%);overflow-wrap:anywhere}
.pay-recommendation:nth-child(even){background:color-mix(in srgb,var(--paper,#fffefa) 97%,#8c7960 3%)}
.pay-recommendation:only-child{grid-column:1/-1}
.pay-recommendation-title{display:flex;align-items:start;gap:12px}.pay-recommendation-title>span{display:grid;place-items:center;flex:0 0 34px;min-height:34px;border-radius:9px;border:1px solid var(--line,#dce5df);background:color-mix(in srgb,var(--paper,#fffefa) 90%,#587689 10%);font:600 14px/1.4 var(--font-tech,monospace);color:var(--pay-condition-ink,#405c70)}
.pay-recommendation h5{margin:2px 0 0;font-size:19px;font-weight:600;line-height:1.6}.pay-recommendation p{margin:12px 0!important;font-size:var(--pay-reading-size,17px)!important;line-height:1.75;color:var(--ink,#193e36)}
.pay-recommendation ul{padding-left:18px;margin:8px 0;font-size:11px;line-height:1.7}.pay-recommendation>small{display:block;padding-top:12px;margin-top:12px;border-top:1px solid var(--line,#dce5df);font-size:13px;line-height:1.75;color:var(--pay-reading-secondary,var(--muted,#607970))}
.pay-recommendation-routes{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.pay-recommendation-routes>span{display:inline-flex;align-items:center;gap:6px;font-size:14px}
.pay-recommendation-routes .pay-icon{flex:0 0 24px;width:24px;height:24px;border-radius:7px}.pay-recommendation-routes svg{width:18px;height:18px}
.card-scope-definition{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:11px;line-height:1.6}
.pay-preview .pay-scope{padding:12px;margin-top:0}.pay-preview .pay-scope-definition{font-size:12px}.pay-preview .pay-scope li{font-size:11px}
.preview-scope{font-size:12px!important;line-height:1.75;color:var(--muted,#607970)}
.detail-member-strategy{font-size:13px;padding:12px 0;border-top:1px solid var(--line,#dce5df)}.detail-member-strategy summary{cursor:pointer;color:var(--accent,#21695d)}
@media(max-width:580px){.pay-recommendation-grid{grid-template-columns:1fr}.pay-scope{padding:12px}.pay-member-invite{align-items:flex-start}.pay-member-invite a{padding-top:1px}.pay-scope-definition{font-size:13px!important}}
.pay-confirmation-basis{display:block;margin:4px 0;font-size:11px!important;color:var(--gold,#90682e)!important}

/* Public summaries keep core scope visible; all remaining conditions are expandable. */
.pay-condition-more{padding:10px 0 0;margin:10px 0 0;border:0;border-top:1px solid var(--line,#dce5df);border-radius:0;background:transparent}
.pay-condition-more>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;font-size:12px;line-height:1.6;color:var(--accent,#21695d);list-style:none}
.pay-condition-more>summary>span{font-size:10px;color:var(--muted,#607970);white-space:nowrap}
.pay-condition-more[open]>summary>span{display:none}
.pay-scope .pay-condition-context{font-size:11px!important;line-height:1.65;margin:8px 0!important;color:var(--muted,#607970)}
.pay-guidance .pay-condition-more,.pay-preview .pay-condition-more{padding:10px 0 0;border:0;border-top:1px solid var(--line,#dce5df);border-radius:0;background:transparent}
.pay-guidance .pay-condition-more>summary,.pay-preview .pay-condition-more>summary{padding:0;font-size:14px}

/* Numbers and type labels support reading; row colors never indicate eligibility. */
.pay-guidance,.pay-preview,.guide-evidence{
  --pay-reading-size:17px;
  --pay-condition-ink:#405c70;
  --pay-exclusion-ink:#943d4b;
  --pay-warning-ink:#795525;
  --pay-reading-secondary:color-mix(in srgb,var(--ink,#193e36) 78%,var(--paper,#fffefa) 22%);
}
.pay-guidance>.pay-section-heading h4,.pay-recommendations>.pay-section-heading h4,.guide-evidence>.pay-section-heading h4{font-size:22px;line-height:1.5;font-weight:600}
.pay-scope-conditions{--pay-row-accent:var(--pay-condition-ink);--pay-row-tint:#587689}
.pay-scope-exclusions{--pay-row-accent:var(--pay-exclusion-ink);--pay-row-tint:#ae6475}
.pay-critical-warnings{--pay-row-accent:var(--pay-warning-ink);--pay-row-tint:#b38a4c}
.pay-recommendation-conditions{margin-top:16px}
.pay-recommendation-common{margin-top:16px;padding:14px;border-left:3px solid var(--pay-condition-ink);border-radius:8px;background:var(--soft,#edf3eb)}
.pay-recommendation-common .pay-reading-list>li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;margin:8px 0}
.pay-path-evidence{margin:16px 0;padding:12px 0;border:0;border-top:1px solid var(--line,#dce5df);background:transparent}
.pay-path-evidence>summary{cursor:pointer;font-size:15px;line-height:1.75;color:var(--accent,#21695d)}
.pay-path-evidence>summary:focus-visible,.pay-excluded>summary:focus-visible{outline:2px solid var(--pay-condition-ink);outline-offset:5px}
.pay-guidance .pay-excluded-names,.pay-preview .pay-excluded-names{font-size:14px;line-height:1.75;margin:8px 0;overflow-wrap:anywhere;color:var(--pay-exclusion-ink,#943d4b)}
.pay-reading-label{display:block;font-size:15px;line-height:1.6;font-weight:600;color:var(--pay-reading-secondary)}
.pay-reading-list,.pay-scope-visible{list-style:none;margin:10px 0 0;padding:0;font-size:var(--pay-reading-size,17px);line-height:1.75;--pay-list-accent:var(--pay-row-accent,var(--pay-condition-ink,#405c70));--pay-list-tint:var(--pay-row-tint,#587689)}
.pay-scope .pay-reading-list>li,.pay-scope .pay-scope-visible>li,.pay-recommendation .pay-reading-list>li,.guide-topic-grid .pay-reading-list>li{
  display:grid;grid-template-columns:32px minmax(0,1fr);align-items:start;gap:12px;margin:0;padding:14px 12px;border-left:3px solid color-mix(in srgb,var(--pay-list-accent) 45%,var(--paper,#fffefa) 55%);border-bottom:1px solid var(--line,#dce5df);background:color-mix(in srgb,var(--paper,#fffefa) 94%,var(--pay-list-tint) 6%);font-size:var(--pay-reading-size,17px);line-height:1.75;color:var(--ink,#193e36)
}
.pay-scope .pay-reading-list>li:nth-child(even),.pay-scope .pay-scope-visible>li:nth-child(even),.pay-recommendation .pay-reading-list>li:nth-child(even),.guide-topic-grid .pay-reading-list>li:nth-child(even){background:color-mix(in srgb,var(--paper,#fffefa) 98%,var(--pay-list-tint) 2%)}
.pay-reading-list>li:first-child,.pay-scope-visible>li:first-child{border-top:1px solid var(--line,#dce5df);border-top-right-radius:9px}
.pay-reading-list>li:last-child,.pay-scope-visible>li:last-child{border-bottom-right-radius:9px}
.pay-reading-number{display:grid;place-items:center;min-height:30px;margin-top:1px;border:1px solid color-mix(in srgb,var(--pay-list-accent) 28%,var(--paper,#fffefa) 72%);border-radius:7px;background:color-mix(in srgb,var(--paper,#fffefa) 87%,var(--pay-list-tint) 13%);font:600 13px/1.4 var(--font-tech,monospace);color:var(--pay-list-accent)}
.pay-reading-text{min-width:0;font-size:inherit;line-height:inherit;overflow-wrap:anywhere;color:var(--ink,#193e36)}
.pay-reading-text>p{margin:0!important;font-size:var(--pay-reading-size,17px)!important;line-height:1.75!important;color:inherit}
.pay-reading-text>.pay-note{display:block;margin:8px 0 0;font-size:13px!important;line-height:1.7;color:var(--pay-reading-secondary)}
.pay-scope .pay-condition-context{font-size:14px!important;line-height:1.75;color:var(--pay-reading-secondary)}
.pay-condition-more>summary>span{font-size:12px;color:var(--pay-reading-secondary)}
.pay-condition-more>summary:focus-visible,.guide-topic-grid>details>summary:focus-visible{outline:2px solid var(--pay-condition-ink);outline-offset:5px;border-radius:3px}
.guide-topic-title{display:flex;align-items:center;gap:10px;min-width:0;font-size:16px;line-height:1.6}
.guide-topic-number{display:grid;place-items:center;flex:0 0 27px;min-height:27px;border:1px solid var(--line,#dce5df);border-radius:7px;background:color-mix(in srgb,var(--paper,#fffefa) 90%,#587689 10%);font:600 12px/1.4 var(--font-tech,monospace);color:var(--pay-condition-ink)}
.guide-topic-grid>details>summary>small{font-size:12px;color:var(--pay-reading-secondary)}
.guide-topic-grid .guide-quotes{margin-top:10px;font-size:14px;color:var(--pay-reading-secondary)}
.guide-topic-grid .guide-quotes>summary{font-size:14px;color:var(--pay-condition-ink)}
.guide-topic-grid .guide-quotes blockquote{font-size:15px;line-height:1.8}
.guide-topic-grid .guide-quotes a{font-size:13px;line-height:1.75;overflow-wrap:anywhere}
[data-theme="night"] .pay-guidance,[data-theme="night"] .pay-preview,[data-theme="night"] .guide-evidence{--pay-condition-ink:#aac2d4;--pay-exclusion-ink:#e6a5b2;--pay-warning-ink:#e0bf87}
@media(max-width:580px){
  .pay-guidance,.pay-preview,.guide-evidence{--pay-reading-size:16px}
  .pay-guidance>.pay-section-heading h4,.pay-recommendations>.pay-section-heading h4,.guide-evidence>.pay-section-heading h4{font-size:20px}
  .pay-scope,.pay-recommendation{padding:13px}
  .pay-scope-label{font-size:17px}
  .pay-scope-heading small{font-size:12px}
  .pay-scope .pay-scope-definition,.pay-preview .pay-scope .pay-scope-definition{font-size:16px!important}
  .pay-scope .pay-reading-list>li,.pay-scope .pay-scope-visible>li,.pay-recommendation .pay-reading-list>li,.guide-topic-grid .pay-reading-list>li{grid-template-columns:28px minmax(0,1fr);gap:9px;padding:12px 9px}
  .pay-reading-number{min-height:27px;font-size:12px}
  .pay-recommendation h5{font-size:18px}
  .pay-recommendation-title{gap:10px}
  .pay-recommendation-title>span{flex-basis:30px;min-height:30px;font-size:13px}
  .pay-critical-warnings{padding:12px 9px}
  .pay-recommendation>small,.pay-reading-text>.pay-note{font-size:13px}
}

/* Edition-bound SVIP guide. Presentation only; guide facts never live in this sheet. */
/* One shared appearance entry at the page top, with a nested-dialog entry for plans. */
[data-appearance-root] { flex:none; }
.appearance-trigger { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:38px; padding:8px 12px; margin:0; border:1px solid var(--line,#dce5dd); border-radius:12px; background:var(--paper,#fffefa); color:var(--ink,#173e38); font:600 13px/1.4 system-ui,sans-serif; white-space:nowrap; cursor:pointer; }
.appearance-trigger svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.4; }
.appearance-current { color:var(--muted,#657b73); padding-left:7px; border-left:1px solid var(--line,#dce5dd); font-size:12px; font-weight:400; }
dialog.appearance-panel { box-sizing:border-box; position:fixed; inset:auto; margin:0; width:358px; max-width:calc(100vw - 24px); max-height:calc(100dvh - 24px); overflow:auto; padding:23px; border:1px solid #d9e1df; border-radius:19px; background:#fffefa; color:#223647; box-shadow:0 20px 75px #142c3b26; text-align:left; font:14px/1.6 system-ui,sans-serif; color-scheme:light; }
dialog.appearance-panel::backdrop { background:#1425361a; }
dialog.appearance-panel { animation:none; transform:none; }
dialog.appearance-panel *,dialog.appearance-panel *::before,dialog.appearance-panel *::after { box-sizing:border-box; }
dialog.appearance-panel .appearance-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:0 0 22px; padding:0; border:0; max-width:none; }
dialog.appearance-panel .appearance-eyebrow { color:#697983; font-size:10px; letter-spacing:.17em; }
dialog.appearance-panel h2 { margin:3px 0 0; color:inherit; font:650 22px/1.4 system-ui,sans-serif; }
dialog.appearance-panel button { cursor:pointer; font-family:inherit; }
dialog.appearance-panel .appearance-close { display:grid; place-items:center; width:34px; height:34px; min-height:34px; padding:0; margin:0; border:1px solid #dde3e6; border-radius:50%; background:transparent; color:inherit; font-size:22px; line-height:1; }
dialog.appearance-panel fieldset { min-width:0; margin:0 0 20px; padding:0; border:0; }
dialog.appearance-panel fieldset:last-child { margin-bottom:0; }
dialog.appearance-panel legend { margin-bottom:10px; padding:0; color:inherit; font-size:13px; font-weight:650; }
dialog.appearance-panel .appearance-skins { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
dialog.appearance-panel .appearance-skin { display:flex; flex-direction:column; gap:6px; align-items:stretch; min-width:0; min-height:44px; margin:0; padding:9px; border:1px solid #dce3e7; border-radius:12px; background:transparent; color:inherit; text-align:left; font-size:13px; line-height:1.5; box-shadow:none; }
dialog.appearance-panel .appearance-skin[aria-pressed="true"] { border-color:#315c75; box-shadow:0 0 0 1px #315c75; background:#edf3f7; }
dialog.appearance-panel .appearance-skin small { color:#627482; font-size:11px; font-weight:400; line-height:1.5; overflow-wrap:anywhere; }
dialog.appearance-panel .appearance-sample { display:grid; grid-template-columns:1.05fr 1fr; grid-template-rows:20px 12px; gap:5px; height:70px; padding:13px 10px; border-radius:6px; background:#24584a; }
dialog.appearance-panel .appearance-sample i { grid-row:1/3; background:linear-gradient(#d8c59d 0 3px,transparent 3px 9px,#dbe6ee 9px 14px,transparent 14px 20px,#aabccc 20px 23px,transparent 23px); }
dialog.appearance-panel .appearance-sample b { grid-row:1/3; background:#f7f3ea; border-left:3px solid #ba9b62; }
dialog.appearance-panel .appearance-sample em { display:none; }
dialog.appearance-panel .appearance-sample-anime { background:#e7f0fc; position:relative; }
dialog.appearance-panel .appearance-sample-anime i { background:linear-gradient(#52718e 0 4px,transparent 4px 10px,#a8c1d5 10px 13px,transparent 13px 20px,#a8c1d5 20px 23px,transparent 23px); }
dialog.appearance-panel .appearance-sample-anime b { border:1px solid #6f88a0; border-radius:5px; background:#fff9e9; transform:rotate(6deg); box-shadow:3px 3px 0 #bacfe3; }
dialog.appearance-panel .appearance-sample-anime em { position:absolute; display:block; left:12px; bottom:9px; width:16px; height:17px; border:1px solid #567589; border-radius:6px; background:#b8d0c5; }
dialog.appearance-panel .appearance-note { margin:10px 0 0; color:#627482; font-size:11px; line-height:1.6; }
dialog.appearance-panel .appearance-options { display:flex; gap:8px; }
dialog.appearance-panel .appearance-options button { flex:1; min-width:0; min-height:38px; padding:8px; margin:0; border:1px solid #dce3e7; border-radius:8px; background:transparent; color:inherit; font-size:12px; line-height:1.5; box-shadow:none; }
dialog.appearance-panel .appearance-options button[aria-pressed="true"] { background:#294f67; border-color:#294f67; color:#fffefa; }
dialog.appearance-panel button:disabled { opacity:.5; cursor:not-allowed; }
dialog.appearance-panel button:focus-visible,.appearance-trigger:focus-visible { outline:2px solid #557b96; outline-offset:3px; }
html[data-theme="night"] dialog.appearance-panel { background:#202d36; border-color:#4c6270; color:#e3edf2; color-scheme:dark; }
html[data-theme="night"] dialog.appearance-panel :is(.appearance-eyebrow,.appearance-note,.appearance-skin small) { color:#b3c2cf; }
html[data-theme="night"] dialog.appearance-panel :is(.appearance-close,.appearance-skin,.appearance-options button) { border-color:#4c6270; }
html[data-theme="night"] dialog.appearance-panel .appearance-skin[aria-pressed="true"] { background:#304b60; border-color:#b0cce2; box-shadow:0 0 0 1px #b0cce2; }
html[data-theme="night"] dialog.appearance-panel .appearance-options button[aria-pressed="true"] { color:#20313e; background:#b0cce2; border-color:#b0cce2; }
html[data-theme="night"]:has(.member-app) { --ink:#e5eee8; --muted:#a7bbb0; --line:#3b5548; --green:#b2d5bf; --paper:#1b2e28; color:#e5eee8; background:#14231f; color-scheme:dark; }
html[data-theme="night"] .member-app { --surface:#1b2e28; background:#14231f; }
html[data-motion="paused"] .member-app *,html[data-motion="paused"] .member-app *::before,html[data-motion="paused"] .member-app *::after { animation-duration:0s!important; transition-duration:0s!important; scroll-behavior:auto!important; }
@media(max-width:600px) {
  dialog.appearance-panel { inset:auto 0 0!important; width:100%; max-width:100%; max-height:88dvh; padding:23px 22px calc(24px + env(safe-area-inset-bottom)); border-radius:22px 22px 0 0; }
  dialog.appearance-panel::backdrop { background:#14253666; }
  dialog.appearance-panel .appearance-options button,dialog.appearance-panel .appearance-close { min-height:44px; }
  dialog.appearance-panel .appearance-close { width:44px; }
  .appearance-trigger { min-height:40px; padding:8px 10px; }
  .appearance-current { display:none; }
}
/* Skin chooses the illustration language; the site's day/night theme chooses luminance. */
.member-guide, dialog.mg-evidence-dialog {
  --mg-ink:#223647; --mg-muted:#69757f; --mg-body-ink:#4b5862;
  --mg-paper:#fffefa; --mg-wash:#f6f4ef; --mg-line:#dfe3e5;
  --mg-deep:#294f67; --mg-gold:#876936; --mg-outline:#576f85;
  --mg-shadow:#1d354212; --mg-offset:#d7e4ef;
  --mg-hero:#eef3f6; --mg-ticket:#fffefa; --mg-mascot:#d7e7ff;
  --mg-type-chapter:22px; --mg-type-item:18px; --mg-type-body:17px; --mg-type-meta:12px;
  --mg-reward:#294f67; --mg-reward-ink:#223e54; --mg-reward-muted:#5c7383;
  --mg-reward-line:#cfdae2; --mg-reward-wash:#eef3f6; --mg-reward-soft:#e3edf4;
  --mg-overview:#416a58; --mg-overview-ink:#315341; --mg-overview-muted:#657b6c;
  --mg-overview-line:#d1dfd5; --mg-overview-wash:#f2f6f0; --mg-overview-soft:#e7efe1;
  --mg-flow:#376d7b; --mg-flow-ink:#2d5260; --mg-flow-muted:#597681;
  --mg-flow-line:#d2e2e6; --mg-flow-wash:#f3f8f9; --mg-flow-soft:#eaf3f5;
  --mg-time:#6b6080; --mg-time-ink:#514763; --mg-time-muted:#71677e;
  --mg-time-line:#dfd9e8; --mg-time-wash:#f7f5fa; --mg-time-soft:#efebf4;
  --mg-details:#566d82; --mg-details-ink:#3b4e61; --mg-details-muted:#677787;
  --mg-details-line:#dbe2e9; --mg-details-wash:#f3f6f9; --mg-details-soft:#eaf0f5;
  --mg-caution:#876936; --mg-caution-ink:#6b542f; --mg-caution-muted:#816c47;
  --mg-caution-line:#e3d5ba; --mg-caution-wash:#f8f4ec; --mg-caution-soft:#f0e7d3;
  --mg-tone:var(--mg-reward); --mg-tone-ink:var(--mg-reward-ink);
  --mg-tone-muted:var(--mg-reward-muted); --mg-tone-line:var(--mg-reward-line);
  --mg-tone-wash:var(--mg-reward-wash); --mg-tone-soft:var(--mg-reward-soft);
  color-scheme:light; color:var(--mg-ink);
  font-family:var(--font-body,"HK Perks Inter","HK Perks Reading","PingFang SC","Microsoft YaHei",sans-serif);
  font-size:var(--mg-type-body); font-weight:400; line-height:1.75;
}
html[data-guide-skin="anime"] :is(.member-guide,dialog.mg-evidence-dialog) {
  --mg-ink:#2c4258; --mg-muted:#667889; --mg-body-ink:#465965;
  --mg-paper:#fffefb; --mg-wash:#f1f6fc; --mg-line:#c6d4e2;
  --mg-deep:#315778; --mg-gold:#826729; --mg-hero:#e8f0fb;
  --mg-ticket:#fffefb; --mg-outline:#2e4357; --mg-shadow:#304b6812;
  --mg-reward:#355d88; --mg-reward-ink:#2c4665; --mg-reward-muted:#5c7390;
  --mg-reward-line:#c5d8ec; --mg-reward-wash:#edf5ff; --mg-reward-soft:#deebfa;
  --mg-overview:#47705d; --mg-overview-ink:#345644; --mg-overview-muted:#607b6a;
  --mg-overview-line:#cbded0; --mg-overview-wash:#f1f8ed; --mg-overview-soft:#e3f0dc;
  --mg-flow:#397486; --mg-flow-ink:#2c5663; --mg-flow-muted:#577b86;
  --mg-flow-line:#c1dde5; --mg-flow-wash:#edf8fb; --mg-flow-soft:#dceff4;
  --mg-time:#70618f; --mg-time-ink:#534469; --mg-time-muted:#796c8a;
  --mg-time-line:#d7ccea; --mg-time-wash:#f3eefb; --mg-time-soft:#e9dff7;
  --mg-details:#57728f; --mg-details-ink:#3d566e; --mg-details-muted:#687e95;
  --mg-details-line:#cbd8e6; --mg-details-wash:#eff5fb; --mg-details-soft:#e1ebf6;
  --mg-caution:#86672f; --mg-caution-ink:#674e28; --mg-caution-muted:#846e47;
  --mg-caution-line:#c7a656; --mg-caution-wash:#fbf5e4; --mg-caution-soft:#f7edc9;
}
html[data-theme="night"] :is(.member-guide,dialog.mg-evidence-dialog) {
  --mg-ink:#e8eef1; --mg-muted:#aab6bf; --mg-body-ink:#c1cbd2;
  --mg-paper:#202a30; --mg-wash:#29323a; --mg-line:#44515c;
  --mg-deep:#a7cce2; --mg-gold:#d3b984; --mg-outline:#dce6ef;
  --mg-shadow:#00000024; --mg-offset:#17212c; --mg-hero:#2b3945;
  --mg-ticket:#202a30; --mg-mascot:#708bac;
  --mg-reward:#a7cce2; --mg-reward-ink:#d6e7f1; --mg-reward-muted:#b0c3d0;
  --mg-reward-line:#4d6475; --mg-reward-wash:#283946; --mg-reward-soft:#354b5f;
  --mg-overview:#b2d6bc; --mg-overview-ink:#dae9dc; --mg-overview-muted:#adbfaf;
  --mg-overview-line:#4c6355; --mg-overview-wash:#2b3932; --mg-overview-soft:#354a3a;
  --mg-flow:#a0cfdd; --mg-flow-ink:#d4e8ed; --mg-flow-muted:#a8c3cb;
  --mg-flow-line:#48616a; --mg-flow-wash:#293b43; --mg-flow-soft:#344b56;
  --mg-time:#c9b6dd; --mg-time-ink:#e4d9ed; --mg-time-muted:#c1b6ce;
  --mg-time-line:#625771; --mg-time-wash:#322e3b; --mg-time-soft:#443a51;
  --mg-details:#b3c6db; --mg-details-ink:#d9e2ed; --mg-details-muted:#b5c1d0;
  --mg-details-line:#4c5d70; --mg-details-wash:#2a3441; --mg-details-soft:#354355;
  --mg-caution:#d3b984; --mg-caution-ink:#eee2c9; --mg-caution-muted:#c8bba0;
  --mg-caution-line:#8f7b50; --mg-caution-wash:#39362e; --mg-caution-soft:#494332;
  color-scheme:dark;
}
html[data-guide-skin="anime"][data-theme="night"] :is(.member-guide,dialog.mg-evidence-dialog) {
  --mg-paper:#202d38; --mg-hero:#2b3e51; --mg-ticket:#202d38;
  --mg-ink:#e4edf7; --mg-body-ink:#c1cfdc; --mg-muted:#a9bbcc;
  --mg-deep:#aaccec; --mg-outline:#dce6f1; --mg-gold:#dfc77d;
  --mg-reward:#aaccec; --mg-reward-ink:#e3edf7; --mg-reward-line:#708499;
  --mg-reward-wash:#2b3e51; --mg-reward-soft:#364c65; --mg-reward-muted:#b1c5d9;
  --mg-caution:#dfc77d; --mg-caution-ink:#f0e7cb; --mg-caution-line:#d3bf7a;
  --mg-caution-wash:#3c3c30; --mg-caution-soft:#494735; --mg-caution-muted:#cabc99;
}
.member-guide { box-sizing:border-box; min-width:0; width:100%; padding:27px 30px 23px;
  border:1px solid var(--mg-line); border-radius:11px; background:var(--mg-paper);
  box-shadow:0 8px 28px var(--mg-shadow); text-align:left; }
.member-guide *,dialog.mg-evidence-dialog * { box-sizing:border-box; }
.member-guide [hidden],dialog.mg-evidence-dialog [hidden] { display:none; }
.member-guide p { margin:0; font-size:var(--mg-type-body); line-height:1.75; overflow-wrap:anywhere; }
.member-guide ol { margin:0; padding:0; list-style:none; }
.member-guide ol>li { margin:0; font-size:inherit; line-height:inherit; }
.member-guide h5 { margin:0 0 8px; color:var(--mg-tone-ink); font-size:var(--mg-type-item); font-weight:700; line-height:1.5; overflow-wrap:anywhere; }
/* Each chapter keeps one recognizable hue, with neutral readable paragraphs. */
.member-guide :is(.mg-overview,.mg-highlights-reading) { --mg-tone:var(--mg-overview); --mg-tone-ink:var(--mg-overview-ink); --mg-tone-muted:var(--mg-overview-muted); --mg-tone-line:var(--mg-overview-line); --mg-tone-wash:var(--mg-overview-wash); --mg-tone-soft:var(--mg-overview-soft); }
.member-guide .mg-section:has(>.mg-choice-flow) { --mg-tone:var(--mg-flow); --mg-tone-ink:var(--mg-flow-ink); --mg-tone-muted:var(--mg-flow-muted); --mg-tone-line:var(--mg-flow-line); --mg-tone-wash:var(--mg-flow-wash); --mg-tone-soft:var(--mg-flow-soft); }
.member-guide .mg-time-section { --mg-tone:var(--mg-time); --mg-tone-ink:var(--mg-time-ink); --mg-tone-muted:var(--mg-time-muted); --mg-tone-line:var(--mg-time-line); --mg-tone-wash:var(--mg-time-wash); --mg-tone-soft:var(--mg-time-soft); }
.member-guide :is(.mg-details-library,.mg-table-section) { --mg-tone:var(--mg-details); --mg-tone-ink:var(--mg-details-ink); --mg-tone-muted:var(--mg-details-muted); --mg-tone-line:var(--mg-details-line); --mg-tone-wash:var(--mg-details-wash); --mg-tone-soft:var(--mg-details-soft); }
.member-guide :is(.mg-critical,.mg-notes,.mg-pending) { --mg-tone:var(--mg-caution); --mg-tone-ink:var(--mg-caution-ink); --mg-tone-muted:var(--mg-caution-muted); --mg-tone-line:var(--mg-caution-line); --mg-tone-wash:var(--mg-caution-wash); --mg-tone-soft:var(--mg-caution-soft); }
/* The toolbar is separate from the illustrated cover, as in the approved prototype. */
.member-guide .mg-header { display:flex; justify-content:space-between; align-items:center; gap:18px; max-width:none; margin:0 0 25px; padding:0 0 17px; border:0; border-bottom:1px solid var(--mg-line); }
.member-guide .mg-header>div:first-child { min-width:0; }
.member-guide .mg-eyebrow,dialog.mg-evidence-dialog .mg-eyebrow { display:block; color:var(--mg-muted); font-size:12px; font-weight:650; line-height:1.6; letter-spacing:.13em; }
.member-guide .mg-eyebrow i { padding:0 7px; color:var(--mg-gold); font-style:normal; }
.member-guide .mg-header-tools { display:flex; flex:0 0 auto; align-items:center; gap:10px; flex-wrap:wrap; justify-content:flex-end; min-width:0; }
.member-guide .mg-skin-label { color:var(--mg-muted); font-size:11px; letter-spacing:.04em; line-height:1.4; }
.member-guide .mg-skin-switch { display:inline-flex; align-items:stretch; gap:3px; padding:3px; border:1px solid var(--mg-line); border-radius:7px; background:var(--mg-wash); }
.member-guide .mg-skin-switch button { display:inline-flex; align-items:center; justify-content:center; min-height:34px; margin:0; padding:6px 10px; border:1px solid transparent; border-radius:4px; background:transparent; color:var(--mg-muted); font:500 12px/1.4 "PingFang SC","Microsoft YaHei",sans-serif; white-space:nowrap; cursor:pointer; box-shadow:none; transition:background-color .16s ease,color .16s ease,border-color .16s ease; }
.member-guide .mg-skin-switch button[aria-pressed="true"] { background:var(--mg-deep); color:var(--mg-paper); border-color:var(--mg-deep); font-weight:700; }
.member-guide .mg-version { padding:4px 9px; border:1px solid var(--mg-caution-line); border-radius:5px; color:var(--mg-gold); background:var(--mg-caution-wash); font-size:11px; white-space:nowrap; line-height:1.5; }
.member-guide .mg-hero { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); align-items:start; position:relative; gap:32px; padding:20px 0 28px; margin:0 0 31px; border-bottom:1px solid var(--mg-line); }
.member-guide .mg-hero:not(:has(.mg-hero-visual)) { grid-template-columns:minmax(0,1fr); }
.member-guide .mg-hero-copy,.member-guide .mg-hero-visual { min-width:0; }
.member-guide .mg-hero-copy h4 { margin:8px 0 19px; color:var(--mg-deep); font-family:var(--font-editorial,"HK Perks Editorial","Songti SC","STSong","Noto Serif CJK SC",serif); font-size:clamp(27px,2.45vw,36px); line-height:1.45; font-weight:650; letter-spacing:-.025em; overflow-wrap:anywhere; text-wrap:balance; }
.member-guide .mg-hero-copy>.mg-hero-caption { margin-top:17px; color:var(--mg-body-ink); font-size:var(--mg-type-body); line-height:1.75; }
.member-guide .mg-hero-reward { margin:0; padding:0 0 0 26px; border-left:1px solid var(--mg-line); }
.member-guide .mg-hero-reward>.mg-section-title { font-size:var(--mg-type-chapter); margin-bottom:14px; }
.member-guide .mg-hero-reward>.mg-section-title::before { display:none; }
.member-guide .mg-section,.member-guide .mg-overview,.member-guide .mg-details-library { margin:31px 0; min-width:0; }
.member-guide .mg-section-title { margin:0 0 17px; color:var(--mg-tone); font-size:var(--mg-type-chapter); font-weight:700; line-height:1.45; letter-spacing:-.015em; overflow-wrap:anywhere; }
.member-guide .mg-section-title::before { content:''; display:inline-block; width:2px; height:18px; margin-right:10px; border-radius:1px; background:var(--mg-tone); vertical-align:-1px; }
/* Reading conditions are actual cards with full text, never oversized tab buttons. */
.member-guide .mg-critical { display:block; position:relative; margin:30px 0; padding:0; border:0; background:transparent; }
.member-guide .mg-critical>svg { position:absolute; top:0; left:0; width:29px; height:29px; padding:4px; border:1px solid var(--mg-tone-line); border-radius:8px; background:var(--mg-tone-wash); fill:none; stroke:var(--mg-tone); stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.member-guide .mg-critical>div { min-width:0; }
.member-guide .mg-critical>div>strong { display:block; margin:0 0 19px 42px; color:var(--mg-tone); font-size:var(--mg-type-chapter); font-weight:700; line-height:1.45; letter-spacing:-.015em; }
.member-guide .mg-critical-items { display:grid; grid-template-columns:repeat(var(--mg-critical-columns,2),minmax(0,1fr)); gap:13px; }
.member-guide .mg-critical-item { min-width:0; padding:18px 20px; border:1px solid var(--mg-tone-line); border-radius:10px; background:var(--mg-tone-wash); }
.member-guide .mg-critical-item:last-child:nth-child(odd) { grid-column:1 / -1; }
.member-guide .mg-critical-item>header { display:flex; justify-content:space-between; align-items:start; gap:12px; max-width:none; margin:0 0 8px; padding:0; border:0; }
.member-guide .mg-critical-item h5 { margin:0; color:var(--mg-tone-ink); font-size:var(--mg-type-item); }
.member-guide .mg-critical-item p { color:var(--mg-body-ink); font-size:var(--mg-type-body); }
.member-guide .mg-critical-item .mg-reference { flex:0 0 auto; margin:0; min-height:27px; }
.member-guide .mg-scope-library .mg-critical { margin:0 0 18px; }
/* Local uncertainty has its own readable boundary in both skins and themes. */
.member-guide .mg-pending { margin:26px 0; padding:18px 20px; border:1px dashed var(--mg-tone-line); border-left:3px solid var(--mg-tone); border-radius:9px; background:var(--mg-tone-wash); }
.member-guide .mg-pending>header { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin:0 0 10px; padding:0; border:0; }
.member-guide .mg-pending .mg-section-title { margin:0; font-size:var(--mg-type-item); }
.member-guide .mg-pending .mg-section-title::before { display:none; }
.member-guide .mg-pending-badge { padding:3px 8px; border:1px solid var(--mg-tone-line); border-radius:5px; background:var(--mg-tone-soft); color:var(--mg-tone-ink); font-size:12px; font-weight:700; }
.member-guide .mg-pending>.mg-pending-intro { color:var(--mg-body-ink); font-size:14px; line-height:1.7; }
.member-guide .mg-pending-items { display:grid; gap:14px; margin-top:17px; }
.member-guide .mg-pending-item { min-width:0; padding-top:14px; border-top:1px solid var(--mg-tone-line); }
.member-guide .mg-pending-item>header { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; margin:0 0 7px; padding:0; border:0; }
.member-guide .mg-pending-item>header>div { min-width:0; }
.member-guide .mg-pending-scope { display:block; margin-bottom:3px; color:var(--mg-tone-muted); font-size:12px; }
.member-guide .mg-pending-item h5 { margin:0; }
.member-guide .mg-pending-item p { color:var(--mg-body-ink); }
.member-guide .mg-pending-item .mg-reference { flex:0 0 auto; margin:0; }
.member-guide .mg-highlights-reading { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
.member-guide .mg-highlights-reading>.mg-highlight { display:grid; grid-template-columns:28px minmax(0,1fr); gap:12px; padding:17px 19px; border:1px solid var(--mg-tone-line); border-radius:10px; background:var(--mg-tone-wash); }
.member-guide .mg-highlights-reading>.mg-highlight:last-child:nth-child(odd) { grid-column:1 / -1; }
.member-guide .mg-highlight p { color:var(--mg-body-ink); }
.member-guide .mg-number { display:inline-grid; place-items:center; width:28px; height:28px; flex:0 0 auto; border-radius:7px; background:var(--mg-tone-soft); color:var(--mg-tone); font-size:11px; font-weight:650; font-variant-numeric:tabular-nums; }
/* Compact labels control a single full reading panel. The buttons hold no reward values. */
.member-guide .mg-choice-group { display:flex; flex-direction:column; gap:14px; min-width:0; position:relative; }
.member-guide :is(.mg-compact-tabs,.mg-visual-grid,.mg-steps,.mg-milestones) { display:flex; flex-wrap:wrap; gap:8px; min-width:0; position:relative; }
.member-guide :is(.mg-visual-item,.mg-step,.mg-milestone) { min-width:0; max-width:100%; display:flex; }
.member-guide .mg-choice { display:inline-flex; align-items:center; justify-content:flex-start; gap:8px; width:auto; max-width:100%; min-width:0; min-height:43px; margin:0; padding:8px 12px; border:1px solid var(--mg-tone-line); border-radius:6px; background:var(--mg-paper); color:var(--mg-tone-muted); font:inherit; font-size:14px; line-height:1.5; text-align:left; cursor:pointer; box-shadow:none; transition:transform .16s ease,background-color .16s ease,border-color .16s ease,color .16s ease; }
.member-guide .mg-choice strong { min-width:0; font-size:14px; font-weight:600; line-height:1.5; overflow-wrap:anywhere; }
.member-guide .mg-choice-index,.member-guide .mg-node-number { flex:0 0 auto; color:var(--mg-tone-muted); font-size:11px; font-weight:500; font-variant-numeric:tabular-nums; }
.member-guide .mg-choice-arrow { flex:0 0 auto; width:16px; height:16px; margin-left:2px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; transition:transform .16s ease; }
.member-guide .mg-choice[aria-selected="true"] { background:var(--mg-tone-soft); border-color:var(--mg-tone); color:var(--mg-tone-ink); }
.member-guide .mg-choice[aria-selected="true"] .mg-choice-index { color:var(--mg-tone); }
.member-guide .mg-choice:focus-visible,.member-guide .mg-skin-switch button:focus-visible { outline:2px solid var(--mg-gold); outline-offset:3px; }
.member-guide .mg-choice-panel { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; min-width:0; margin:0; padding:18px 21px; border:1px solid var(--mg-tone-line); border-radius:9px; background:var(--mg-tone-wash); color:var(--mg-body-ink); }
.member-guide .mg-choice-panel[hidden] { display:none; }
.member-guide .mg-choice-panel-body { min-width:0; flex:1 1 auto; }
.member-guide .mg-choice-panel h5 { color:var(--mg-tone-ink); font-size:var(--mg-type-item); }
.member-guide .mg-choice-panel p { color:var(--mg-body-ink); font-size:var(--mg-type-body); }
.member-guide .mg-choice-panel>.mg-reference { margin-top:0; flex:0 0 auto; }
.member-guide .mg-visual-plain { display:block; min-width:0; width:100%; margin:0 0 13px; }
.member-guide .mg-visual-value { display:block; color:var(--mg-tone); font-size:30px; font-weight:650; letter-spacing:-.035em; line-height:1.3; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; text-wrap:balance; }
.member-guide .mg-visual-value-long { font-size:24px; line-height:1.4; letter-spacing:-.015em; }
.member-guide .mg-visual-value-main { display:block; }
.member-guide .mg-visual-value-tail { display:block; padding-top:4px; font-size:var(--mg-type-body); font-weight:500; line-height:1.6; letter-spacing:0; }
.member-guide .mg-visual-value-annotated .mg-visual-value-main { display:inline; }
.member-guide .mg-visual-value-annotation { display:inline-block; max-width:100%; margin-left:.3em; color:var(--mg-muted); font-size:var(--mg-type-body); font-weight:500; line-height:1.6; letter-spacing:0; vertical-align:baseline; }
.member-guide .mg-choice-flow .mg-visual-value { font-size:var(--mg-type-item); }
.member-guide .mg-hero-reward .mg-choice-group { gap:18px; }
.member-guide .mg-hero-reward .mg-choice-panel { position:relative; display:block; padding:0; border:0; border-radius:0; background:transparent; }
.member-guide .mg-hero-reward .mg-choice-panel[hidden] { display:none; }
/* Every tier is a peer: switching panels must not change its type scale. */
.member-guide .mg-hero-reward .mg-visual-value { font-size:28px; line-height:1.35; color:var(--mg-deep); }
.member-guide .mg-hero-reward .mg-visual-value-long { font-size:24px; line-height:1.4; }
.member-guide .mg-hero-reward .mg-choice-panel h5 { margin:0 0 10px; }
.member-guide .mg-hero-reward .mg-choice-panel p { padding-top:12px; margin-top:13px; border-top:1px solid var(--mg-line); }
.member-guide .mg-hero-reward .mg-choice-panel>.mg-reference { margin-top:8px; }
.member-guide .mg-hero-reward .mg-compact-tabs { gap:6px; order:1; }
.member-guide .mg-hero-reward .mg-choice { min-height:36px; padding:6px 9px; font-size:12px; }
.member-guide .mg-hero-reward .mg-choice strong { font-size:12px; }
.member-guide .mg-hero-reward .mg-choice-arrow { width:13px; height:13px; }
.member-guide .mg-hero-reward .mg-choice-index { font-size:10px; }
.member-guide .mg-connector { display:none; }
.member-guide .mg-diagram-hint { color:var(--mg-muted); font-size:12px; margin-bottom:14px; }
/* Full tables, scenarios and notes retain readable titles and every authored character. */
.member-guide .mg-table-section { margin:0 0 11px; overflow:hidden; border:1px solid var(--mg-tone-line); border-radius:9px; background:var(--mg-paper); }
.member-guide .mg-table-section>summary { display:flex; align-items:center; gap:14px; min-height:74px; padding:16px 19px; cursor:pointer; list-style:none; }
.member-guide .mg-table-section>summary::-webkit-details-marker,.member-guide .mg-scenario>summary::-webkit-details-marker { display:none; }
.member-guide .mg-table-section>summary>svg { flex:0 0 auto; width:32px; height:32px; padding:6px; border-radius:7px; background:var(--mg-tone-soft); fill:none; stroke:var(--mg-tone); stroke-width:1.35; }
.member-guide .mg-table-section>summary>span:not(.mg-detail-toggle) { min-width:0; }
.member-guide .mg-table-section>summary strong { display:block; color:var(--mg-tone-ink); font-size:var(--mg-type-item); font-weight:700; line-height:1.5; overflow-wrap:anywhere; }
.member-guide .mg-table-section>summary small { display:block; margin-top:3px; color:var(--mg-muted); font-size:11px; }
.member-guide .mg-detail-toggle { margin-left:auto; color:var(--mg-tone-muted); font-size:11px; white-space:nowrap; }
.member-guide .mg-detail-toggle i { display:inline-block; margin-left:8px; font-style:normal; transition:transform .16s ease; }
.member-guide .mg-table-section[open]>summary { background:var(--mg-tone-wash); }
.member-guide .mg-table-section[open] .mg-detail-toggle i { transform:rotate(45deg); }
.member-guide .mg-table-scroll { overflow-x:auto; border-top:1px solid var(--mg-line); scrollbar-width:thin; scrollbar-color:var(--mg-tone-line) transparent; }
.member-guide .mg-table-hint { display:none; margin:0; padding:0 19px 12px; color:var(--mg-muted); font-size:11px; }
.member-guide table { width:100%; border-collapse:collapse; table-layout:auto; color:var(--mg-body-ink); font-size:var(--mg-type-body); }
.member-guide th,.member-guide td { min-width:85px; padding:12px 15px; vertical-align:top; text-align:left; overflow-wrap:anywhere; line-height:1.8; }
.member-guide thead th { border-bottom:1px solid var(--mg-line); background:var(--mg-tone-wash); color:var(--mg-tone-ink); font-size:var(--mg-type-body); font-weight:700; }
.member-guide tbody tr+tr>* { border-top:1px solid var(--mg-line); }
.member-guide tbody th { font-weight:650; }
.member-guide .mg-evidence-column { width:60px; min-width:60px; padding-left:4px; padding-right:13px; }
.member-guide .mg-evidence-column .mg-reference { margin:0; }
.member-guide :is(.mg-table-section>summary,.mg-table-scroll,.mg-notes>summary,.mg-scenario>summary):focus-visible { outline:2px solid var(--mg-tone); outline-offset:-4px; }
.member-guide .mg-scenarios { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr)); gap:13px; }
.member-guide .mg-scenario { min-width:0; border:1px solid var(--mg-line); border-radius:9px; background:var(--mg-paper); }
.member-guide .mg-scenario>summary { display:flex; align-items:center; gap:12px; padding:17px; cursor:pointer; list-style:none; }
.member-guide .mg-scenario>summary strong { min-width:0; color:var(--mg-tone-ink); font-size:var(--mg-type-item); font-weight:700; line-height:1.5; overflow-wrap:anywhere; }
.member-guide .mg-scenario>summary>i { flex:0 0 auto; margin-left:auto; color:var(--mg-tone-muted); font-size:14px; font-style:normal; transition:transform .16s ease; }
.member-guide .mg-scenario[open]>summary>i { transform:rotate(45deg); }
.member-guide .mg-scenario-body { padding:0 17px 17px; color:var(--mg-body-ink); }
.member-guide .mg-notes { margin:28px 0 0; padding:19px 0; border-top:1px solid var(--mg-tone-line); border-bottom:1px solid var(--mg-tone-line); }
.member-guide .mg-notes>summary { color:var(--mg-tone); font-size:var(--mg-type-chapter); font-weight:700; line-height:1.45; cursor:pointer; }
.member-guide .mg-notes>summary span { margin-left:10px; color:var(--mg-muted); font-size:11px; font-weight:400; }
.member-guide .mg-notes>ol { display:grid; gap:20px; padding-top:22px; }
.member-guide .mg-note { display:grid; grid-template-columns:28px minmax(0,1fr); gap:12px; }
.member-guide .mg-note h5 { font-size:var(--mg-type-item); color:var(--mg-tone-ink); }
.member-guide .mg-note p { color:var(--mg-body-ink); }
.member-guide .mg-footer { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; max-width:none; margin:24px 0 0; padding:17px 0 0; border:0; border-top:1px solid var(--mg-line); color:var(--mg-muted); font-size:11px; }
.member-guide .mg-reference,dialog.mg-evidence-dialog [data-mg-show-all] { display:inline-flex; align-items:center; gap:5px; min-height:30px; margin:4px 0 0; padding:4px 0; border:0; border-radius:4px; background:transparent; color:var(--mg-tone-muted); font:inherit; font-size:var(--mg-type-meta); font-weight:500; line-height:1.5; cursor:pointer; white-space:nowrap; box-shadow:none; }
.member-guide .mg-reference:focus-visible,dialog.mg-evidence-dialog button:focus-visible { outline:2px solid var(--mg-tone); outline-offset:4px; }
/* Explicit dialog specificity wins against the workspace's generic dialog shell. */
dialog.mg-evidence-dialog { width:min(740px,calc(100vw - 32px)); max-height:min(760px,calc(100dvh - 48px)); margin:auto; padding:27px; border:1px solid var(--mg-line); border-radius:16px; background:var(--mg-paper); color:var(--mg-ink); box-shadow:0 28px 90px #00000035; overflow-y:auto; }
dialog.mg-evidence-dialog::backdrop { background:#14253599; backdrop-filter:blur(3px); }
dialog.mg-evidence-dialog>header { display:flex; justify-content:space-between; align-items:start; gap:18px; max-width:none; margin:0; padding:0; border:0; }
dialog.mg-evidence-dialog>header h3 { margin:7px 0 0; color:var(--mg-ink); font-size:23px; line-height:1.4; }
dialog.mg-evidence-dialog .mg-dialog-close { flex:0 0 auto; width:38px; height:38px; margin:0; padding:0; border:1px solid var(--mg-line); border-radius:9px; background:var(--mg-wash); color:var(--mg-ink); font-size:24px; cursor:pointer; box-shadow:none; }
dialog.mg-evidence-dialog .mg-evidence-tools { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; margin:15px 0 22px; color:var(--mg-muted); font-size:12px; }
dialog.mg-evidence-dialog .mg-evidence-tools p { margin:0; }
dialog.mg-evidence-dialog .mg-evidence-card { padding:20px 0; border-top:1px solid var(--mg-line); }
dialog.mg-evidence-dialog .mg-evidence-card h4 { margin:0 0 10px; color:var(--mg-tone-ink); font-size:var(--mg-type-item); font-weight:700; line-height:1.5; overflow-wrap:anywhere; }
dialog.mg-evidence-dialog blockquote { margin:0 0 13px; padding:0 0 0 16px; border-left:2px solid var(--mg-gold); color:var(--mg-body-ink); font-size:var(--mg-type-body); line-height:1.75; white-space:pre-wrap; overflow-wrap:anywhere; }
dialog.mg-evidence-dialog a { color:var(--mg-deep); font-size:var(--mg-type-meta); line-height:1.75; overflow-wrap:anywhere; }
.member-guide .mg-skin-mascot { display:none; }
.pay-guidance:has(>.member-guide) { min-width:0; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
/* Neutral anime uses the actual outlined cover, tilted ticket and warm condition cards. */
html[data-guide-skin="anime"] .member-guide { border:2px solid var(--mg-outline); border-radius:17px; box-shadow:5px 6px 0 var(--mg-offset); }
html[data-guide-skin="anime"] .member-guide .mg-header { padding-bottom:4px; border-bottom:0; }
html[data-guide-skin="anime"] .member-guide .mg-hero { padding:26px 25px 37px; gap:26px; border:2px solid var(--mg-outline); border-radius:17px; background:var(--mg-hero); }
html[data-guide-skin="anime"] .member-guide .mg-hero-copy h4 { margin-top:9px; color:var(--mg-ink); font-family:var(--font-body,"HK Perks Inter","HK Perks Reading","PingFang SC","Microsoft YaHei",sans-serif); font-size:clamp(26px,2.35vw,34px); font-weight:700; line-height:1.5; letter-spacing:-.035em; }
html[data-guide-skin="anime"] .member-guide .mg-hero-copy h4::first-line { text-decoration:underline; text-decoration-color:var(--mg-caution-soft); text-decoration-thickness:7px; text-underline-offset:-1px; text-decoration-skip-ink:none; }
html[data-guide-skin="anime"] .member-guide .mg-hero-copy>.mg-hero-caption { color:var(--mg-body-ink); }
html[data-guide-skin="anime"] .member-guide .mg-hero-reward { padding:0; border:0; }
html[data-guide-skin="anime"] .member-guide .mg-hero-reward>.mg-section-title { color:var(--mg-muted); font-size:var(--mg-type-chapter); }
html[data-guide-skin="anime"] .member-guide .mg-hero-reward .mg-choice-panel { position:relative; margin:7px 7px 5px; padding:20px 22px 22px; border:2px solid var(--mg-outline); border-radius:13px; background:var(--mg-ticket); box-shadow:5px 5px 0 var(--mg-offset); transform:rotate(2deg); }
html[data-guide-skin="anime"] .member-guide .mg-hero-reward .mg-choice-panel::after { content:''; display:block; height:7px; margin-top:14px; background:repeating-linear-gradient(90deg,var(--mg-outline) 0 2px,transparent 2px 5px,var(--mg-outline) 5px 6px,transparent 6px 10px); opacity:.43; }
html[data-guide-skin="anime"] .member-guide .mg-hero-reward .mg-choice-panel p { border-top:2px dashed var(--mg-reward-line); }
html[data-guide-skin="anime"] .member-guide .mg-hero-reward .mg-visual-value { color:var(--mg-reward); }
html[data-guide-skin="anime"] .member-guide .mg-skin-switch { border-radius:19px; }
html[data-guide-skin="anime"] .member-guide .mg-skin-switch button { border-radius:15px; }
html[data-guide-skin="anime"] .member-guide .mg-skin-switch button[aria-pressed="true"] { background:var(--mg-reward-soft); color:var(--mg-reward-ink); border-color:var(--mg-outline); }
html[data-guide-skin="anime"] .member-guide .mg-skin-mascot { position:absolute; display:block; right:50%; bottom:-12px; width:61px; height:58px; border:2px solid var(--mg-outline); border-radius:24px 24px 19px 19px; background:var(--mg-mascot); transform:rotate(-5deg); }
html[data-guide-skin="anime"] .member-guide .mg-mascot-cap { position:absolute; top:-9px; left:-1px; width:55px; height:17px; border:2px solid var(--mg-outline); border-radius:12px 12px 3px 3px; background:var(--mg-time-wash); }
html[data-guide-skin="anime"] .member-guide .mg-mascot-face::before { content:''; position:absolute; top:20px; left:16px; width:4px; height:6px; border-radius:4px; background:#162433; box-shadow:19px 0 0 #162433; }
html[data-guide-skin="anime"] .member-guide .mg-mascot-face::after { content:''; position:absolute; top:30px; left:25px; width:10px; height:6px; border-bottom:2px solid #162433; border-radius:0 0 9px 9px; }
html[data-guide-skin="anime"] .member-guide .mg-mascot-pass { position:absolute; bottom:-4px; left:-11px; width:28px; height:27px; border:2px solid var(--mg-outline); border-radius:5px; background:var(--mg-caution-wash); }
html[data-guide-skin="anime"] .member-guide .mg-mascot-pass::before { content:''; position:absolute; top:5px; left:5px; width:12px; height:12px; border:1.5px solid var(--mg-outline); border-radius:4px; }
html[data-guide-skin="anime"] .member-guide .mg-mascot-pass::after { content:''; position:absolute; bottom:4px; left:7px; width:9px; border-top:1.5px solid var(--mg-outline); }
html[data-guide-skin="anime"] .member-guide .mg-critical-item { border:1.5px solid var(--mg-caution-line); border-radius:12px; padding:18px 20px; }
html[data-guide-skin="anime"] .member-guide .mg-section-title::before { width:11px; height:11px; border:1.5px solid var(--mg-tone); border-radius:3px; background:var(--mg-tone-soft); vertical-align:1px; }
html[data-guide-skin="anime"] .member-guide .mg-choice { border-width:1.5px; border-radius:8px; box-shadow:0 2px 0 var(--mg-tone-line); }
html[data-guide-skin="anime"] .member-guide .mg-choice[aria-selected="true"] { box-shadow:none; }
html[data-guide-skin="anime"] .member-guide .mg-choice-panel:not([hidden]),html[data-guide-skin="anime"] .member-guide :is(.mg-highlight,.mg-table-section,.mg-scenario) { border-width:1.5px; border-radius:11px; }
html[data-guide-skin="anime"] dialog.mg-evidence-dialog { border:2px solid var(--mg-outline); border-radius:15px; box-shadow:5px 6px 0 var(--mg-offset),0 25px 80px #00000030; }
html[data-guide-skin="anime"] dialog.mg-evidence-dialog .mg-dialog-close { border:1.5px solid var(--mg-outline); border-radius:50%; background:var(--mg-reward-soft); }
html[data-guide-skin="anime"] dialog.mg-evidence-dialog blockquote { padding:13px 15px; border:1px dashed var(--mg-line); border-left:3px solid var(--mg-gold); border-radius:8px; background:var(--mg-caution-wash); }
@media (hover:hover) and (pointer:fine) {
  .member-guide .mg-choice:hover { border-color:var(--mg-tone); background:var(--mg-tone-wash); transform:translateY(-1px); }
  .member-guide .mg-choice:hover .mg-choice-arrow { transform:translateX(2px); }
  .member-guide .mg-choice[aria-selected="true"]:hover { background:var(--mg-tone-soft); }
  .member-guide .mg-skin-switch button[aria-pressed="false"]:hover { color:var(--mg-deep); background:var(--mg-reward-soft); }
  .member-guide .mg-reference:hover,dialog.mg-evidence-dialog [data-mg-show-all]:hover { color:var(--mg-tone-ink); text-decoration:underline; text-underline-offset:3px; }
  .member-guide :is(.mg-table-section>summary,.mg-scenario>summary):hover { background:var(--mg-tone-wash); }
  dialog.mg-evidence-dialog .mg-dialog-close:hover { background:var(--mg-reward-soft); }
}
.member-guide .mg-choice:active { transform:translateY(1px); }
@media (max-width:850px) {
  .member-guide .mg-header { align-items:flex-start; flex-wrap:wrap; }
  .member-guide .mg-header-tools { justify-content:flex-start; }
  .member-guide .mg-hero { grid-template-columns:minmax(0,1fr); gap:20px; }
  .member-guide .mg-hero-reward { padding:19px 0 0; border:0; border-top:1px solid var(--mg-line); }
  html[data-guide-skin="anime"] .member-guide .mg-hero { grid-template-columns:minmax(0,1fr); padding:24px 22px 30px; }
  html[data-guide-skin="anime"] .member-guide .mg-hero-reward { border:0; padding:0; }
  html[data-guide-skin="anime"] .member-guide .mg-skin-mascot { right:24px; }
}
@media (max-width:650px) {
  .member-guide,dialog.mg-evidence-dialog { --mg-type-chapter:20px; --mg-type-item:17px; --mg-type-body:16px; font-size:var(--mg-type-body); }
  .member-guide { padding:20px 17px 18px; }
  .member-guide .mg-header { gap:11px; margin-bottom:18px; padding-bottom:14px; }
  .member-guide .mg-eyebrow { font-size:11px; }
  .member-guide .mg-header-tools { width:100%; flex-wrap:wrap; justify-content:space-between; gap:8px; }
  .member-guide .mg-skin-label { display:none; }
  .member-guide .mg-skin-switch button { min-height:44px; }
  .member-guide .mg-hero-reward .mg-choice { min-height:44px; }
  .member-guide .mg-version { font-size:10px; }
  .member-guide .mg-hero { padding:8px 0 24px; margin-bottom:28px; }
  .member-guide .mg-hero-copy h4 { margin:0 0 13px; font-size:25px; line-height:1.5; }
  .member-guide .mg-hero-copy>.mg-hero-caption { margin-top:12px; }
  .member-guide .mg-hero-reward .mg-visual-value { font-size:26px; }
  .member-guide .mg-hero-reward .mg-visual-value-long { font-size:22px; }
  .member-guide .mg-critical,.member-guide .mg-overview,.member-guide .mg-section,.member-guide .mg-details-library { margin:27px 0; }
  .member-guide .mg-section-title { margin-bottom:14px; }
  .member-guide .mg-critical>div>strong { margin-left:39px; margin-bottom:16px; }
  .member-guide .mg-critical-items,.member-guide .mg-highlights-reading { grid-template-columns:minmax(0,1fr); gap:11px; }
  .member-guide .mg-critical-item { padding:16px; }
  .member-guide .mg-critical-item>header { flex-wrap:wrap; gap:3px 12px; }
  .member-guide .mg-critical-item .mg-reference { margin:0; }
  .member-guide .mg-highlights-reading>.mg-highlight { padding:16px; grid-template-columns:25px minmax(0,1fr); gap:10px; }
  .member-guide .mg-number { width:25px; height:25px; }
  .member-guide .mg-choice-group { gap:12px; }
  .member-guide .mg-choice { padding:8px 10px; }
  .member-guide .mg-choice-panel { flex-direction:column; gap:5px; padding:16px; }
  .member-guide .mg-choice-panel>.mg-reference { min-height:36px; }
  .member-guide .mg-visual-value { font-size:27px; }
  .member-guide .mg-visual-value-long { font-size:22px; }
  .member-guide .mg-table-section>summary { gap:10px; padding:14px; }
  .member-guide .mg-table-hint { display:block; padding:0 14px 10px; }
  .member-guide th,.member-guide td { min-width:84px; padding:11px 12px; }
  .member-guide .mg-long-column .mg-cell-text { display:block; min-width:250px; }
  .member-guide .mg-evidence-column { min-width:54px; padding-right:12px; }
  .member-guide .mg-reference { min-height:36px; }
  .member-guide .mg-scenario>summary { padding:16px; }
  .member-guide .mg-note { grid-template-columns:25px minmax(0,1fr); gap:10px; }
  .member-guide .mg-footer { align-items:flex-start; }
  html[data-guide-skin="anime"] .member-guide { padding:18px 15px; border-radius:14px; box-shadow:3px 4px 0 var(--mg-offset); }
  html[data-guide-skin="anime"] .member-guide .mg-hero { gap:20px; padding:19px 16px 29px; border-radius:13px; }
  html[data-guide-skin="anime"] .member-guide .mg-hero-copy h4 { font-size:24px; }
  html[data-guide-skin="anime"] .member-guide .mg-hero-reward>.mg-section-title { font-size:var(--mg-type-chapter); }
  html[data-guide-skin="anime"] .member-guide .mg-hero-reward .mg-choice-panel { margin:4px 3px 5px; padding:16px 17px 18px; transform:rotate(1deg); }
  html[data-guide-skin="anime"] .member-guide .mg-critical-item { padding:16px; }
  dialog.mg-evidence-dialog { max-height:calc(100dvh - 32px); padding:21px; border-radius:14px; }
  dialog.mg-evidence-dialog .mg-dialog-close { width:42px; height:42px; }
}
@media (max-width:379px) {
  .member-guide { padding:18px 13px 16px; }
  .member-guide .mg-header-tools { justify-content:flex-start; }
  .member-guide .mg-version { margin-left:0; }
  html[data-guide-skin="anime"] .member-guide { padding:16px 11px; }
  html[data-guide-skin="anime"] .member-guide .mg-hero { padding:17px 12px 26px; }
  html[data-guide-skin="anime"] .member-guide .mg-hero-reward .mg-choice-panel { margin-left:1px; margin-right:1px; padding:14px 13px 17px; transform:none; }
}
@media (prefers-reduced-motion:reduce) {
  .member-guide .mg-choice,.member-guide .mg-choice-arrow,.member-guide .mg-skin-switch button,.member-guide .mg-detail-toggle i,.member-guide .mg-scenario>summary>i { transition:none; }
  .member-guide .mg-choice:hover,.member-guide .mg-choice:active,.member-guide .mg-choice:hover .mg-choice-arrow { transform:none; }
}
@media (forced-colors:active) {
  .member-guide .mg-choice[aria-selected="true"],.member-guide .mg-skin-switch button[aria-pressed="true"] { outline:2px solid Highlight; outline-offset:-3px; }
  .member-guide .mg-skin-mascot { display:none!important; }
  .member-guide .mg-hero-reward .mg-choice-panel { transform:none; }
}

/* Readable highlight cards own their header inside every workspace shell. */
.member-guide .mg-highlight>div>header { display:flex; align-items:start; justify-content:space-between; gap:12px; max-width:none; margin:0 0 8px; padding:0; border:0; }
.member-guide .mg-highlight>div>header h5 { margin:0; min-width:0; flex:1 1 auto; }
.member-guide .mg-highlight>div>header .mg-reference { flex:0 0 auto; margin:0; }
@media(max-width:650px) { .member-guide .mg-highlight>div>header { flex-wrap:wrap; gap:3px 12px; } }
/* A drawn check marks selection without depending on a hue change. */
.member-guide .mg-choice[aria-selected="true"]::after { content:''; display:block; flex:0 0 auto; width:9px; height:5px; margin-left:2px; border-left:2px solid currentColor; border-bottom:2px solid currentColor; transform:rotate(-45deg); }
/* The cover's nested section carries no normal chapter outside margin. */
.member-guide .mg-hero .mg-hero-reward { margin:0; }
/* Nested plan dialogs must keep full article paragraphs at reading size. */
.member-guide :is(.mg-highlight,.mg-note,.mg-critical-item,.mg-choice-panel,.mg-scenario-body) p { font-size:var(--mg-type-body); line-height:1.75; }
.member-guide .mg-condition-icon { flex:0 0 auto; width:20px; height:20px; margin-top:3px; fill:none; stroke:var(--mg-tone); stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.member-guide .mg-critical-item>header h5 { min-width:0; flex:1 1 auto; }
/* Original document glyphs distinguish condition titles from body paragraphs. */
.member-guide .mg-critical-item>header h5 { display:flex; align-items:flex-start; gap:8px; flex:1 1 auto; }
.member-guide .mg-critical-item>header h5>span { min-width:0; }

/* Material uncertainties are visible in public cards and both member skins. */
.terms-disclosure{color:#81300e;background:#fff3e5;border:2px solid #b75014;border-radius:16px;padding:20px;margin:18px 0;font:inherit;line-height:1.65;overflow-wrap:anywhere}
.terms-disclosure>header{display:flex;gap:12px;align-items:flex-start}.terms-disclosure>header>span{font-size:26px;line-height:1.4}.terms-disclosure h3{font:inherit;font-size:19px;font-weight:750;margin:0 0 6px}.terms-disclosure h4{font:inherit;font-weight:700;margin:0 0 6px}.terms-disclosure p{margin:6px 0}.terms-disclosure-issues{display:grid;gap:16px;margin-top:18px}.terms-disclosure-issues>article{border-top:1px solid #d9ab89;padding-top:14px}.terms-disclosure summary{cursor:pointer;font-weight:650}.terms-disclosure blockquote{font:inherit;font-size:13px;border-left:3px solid currentColor;padding-left:12px;margin:12px 0}.terms-disclosure a{color:inherit;text-decoration:underline}
.terms-disclosure-compact{margin:8px 0;padding:0;border:0;background:transparent;color:#8b5b23;font:inherit;font-size:12px;font-weight:500;line-height:1.5;flex-shrink:0}
[data-theme="night"] .terms-disclosure{color:#ffe1bc;background:#302018;border-color:#e7a16a}[data-theme="night"] .terms-disclosure-issues>article{border-color:#76533c}
[data-theme="night"] .terms-disclosure-compact{color:#daba83}
@media(max-width:600px){.terms-disclosure{padding:15px}.terms-disclosure h3{font-size:17px}.terms-disclosure>header{gap:8px}.terms-disclosure>header>span{font-size:23px}}

/* Distinct compositions, sharing the exact same authored facts and type scale. */
.member-guide .mg-appearance-trigger { display:none; }
dialog[open] .member-guide .mg-appearance-trigger { display:inline-flex; align-items:center; min-height:36px; padding:6px 10px; margin:0; border:1px solid var(--mg-line); border-radius:7px; background:var(--mg-paper); color:var(--mg-deep); font:600 12px/1.5 system-ui,sans-serif; cursor:pointer; }
.member-guide .mg-cover-art { display:none; }
.member-guide { counter-reset:guide-chapter; }
.member-guide :is(.mg-section,.mg-overview,.mg-details-library)[data-mg-section]>.mg-section-title { display:flex; align-items:center; gap:12px; counter-increment:guide-chapter; }
.member-guide :is(.mg-section,.mg-overview,.mg-details-library)[data-mg-section]>.mg-section-title::before { content:counter(guide-chapter,decimal-leading-zero); display:inline-grid; place-items:center; width:30px; height:30px; margin:0; flex:none; background:var(--mg-tone-soft); color:var(--mg-tone); border:0; border-radius:6px; font:600 12px/1 system-ui,sans-serif; }
html[data-guide-skin="business"] .member-guide { border-top:3px solid var(--mg-gold); border-radius:5px; box-shadow:0 8px 24px var(--mg-shadow); }
html[data-guide-skin="business"] .member-guide .mg-header { margin-bottom:20px; padding-bottom:13px; }
html[data-guide-skin="business"] .member-guide .mg-hero { align-items:start; gap:26px; margin-bottom:29px; padding:0; border:0; border-radius:5px; background:transparent; }
html[data-guide-skin="business"] .member-guide .mg-hero-copy { padding:27px; border-radius:5px; background:var(--mg-wash); }
html[data-guide-skin="business"] .member-guide .mg-hero-copy h4 { margin-top:0; color:var(--mg-deep); font-size:clamp(26px,2.25vw,34px); line-height:1.5; }
html[data-guide-skin="business"] .member-guide .mg-hero-copy::before { content:''; display:block; width:36px; height:3px; margin-bottom:19px; background:#c9b17d; }
html[data-guide-skin="business"] .member-guide .mg-hero-copy>.mg-hero-caption { color:var(--mg-body-ink); font-size:var(--mg-type-body); }
html[data-guide-skin="business"] .member-guide .mg-hero-reward { padding-left:0; border:0; }
html[data-guide-skin="business"] .member-guide .mg-hero-reward>.mg-section-title { color:var(--mg-deep); font-size:var(--mg-type-chapter); }
html[data-guide-skin="business"] .member-guide .mg-hero-reward .mg-choice-panel { padding:20px; border:0; border-left:3px solid var(--mg-gold); border-radius:3px; background:var(--mg-wash); }
html[data-guide-skin="business"] .member-guide .mg-highlights-reading>.mg-highlight { padding:18px 13px; border:0; border-top:1px solid var(--mg-tone-line); border-radius:0; background:transparent; }
html[data-guide-skin="business"] .member-guide .mg-critical-item { border:0; border-left:2px solid var(--mg-tone-line); border-radius:3px; }
html[data-guide-skin="business"] .member-guide .mg-visual-reward .mg-choice-panel { border-radius:3px; }
html[data-guide-skin="anime"] .member-guide { border:1px solid var(--mg-line); border-radius:16px; background-color:var(--mg-paper); background-image:radial-gradient(var(--mg-line) .6px,transparent .6px); background-size:14px 14px; box-shadow:0 5px 0 var(--mg-offset); }
html[data-guide-skin="anime"] .member-guide .mg-hero { padding:25px; margin-top:3px; border:1px solid var(--mg-outline); background:var(--mg-hero); border-radius:19px 19px 28px 9px; }
html[data-guide-skin="anime"] .member-guide .mg-hero-copy h4 { font-size:clamp(26px,2.25vw,34px); line-height:1.5; }
html[data-guide-skin="anime"] .member-guide .mg-cover-art { display:block; width:164px; max-width:70%; margin-top:16px; }
.member-guide .mg-cover-art svg { display:block; width:100%; height:auto; overflow:visible; fill:none; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.member-guide .mg-art-shadow { fill:var(--mg-reward-line); opacity:.45; stroke:none; }
.member-guide .mg-art-page { fill:var(--mg-overview-soft); stroke:var(--mg-outline); }
.member-guide .mg-art-ticket { fill:var(--mg-caution-wash); stroke:var(--mg-outline); }
.member-guide .mg-art-line { fill:none; stroke:var(--mg-outline); stroke-width:1.6; }
.member-guide .mg-art-spark { fill:var(--mg-caution-soft); stroke:var(--mg-gold); }
html[data-guide-skin="anime"] .member-guide .mg-highlights-reading { grid-template-columns:minmax(0,1fr); gap:4px; margin-left:14px; padding-left:17px; border-left:2px dashed var(--mg-tone-line); }
html[data-guide-skin="anime"] .member-guide .mg-highlights-reading>.mg-highlight { grid-template-columns:29px minmax(0,1fr); gap:12px; margin-left:-33px; padding:15px 12px 15px 0; border:0; border-radius:0; background:var(--mg-paper); }
html[data-guide-skin="anime"] .member-guide .mg-highlight .mg-number { border:1px solid var(--mg-tone-line); border-radius:50%; background:var(--mg-tone-soft); }
html[data-guide-skin="anime"] .member-guide .mg-choice-flow>.mg-compact-tabs { padding:9px 0; }
html[data-guide-skin="anime"] .member-guide .mg-choice-flow>.mg-compact-tabs::before { content:''; position:absolute; top:50%; left:8px; right:8px; border-top:2px dashed var(--mg-tone-line); }
html[data-guide-skin="anime"] .member-guide .mg-choice-flow .mg-choice { position:relative; z-index:1; border-radius:22px; box-shadow:none; }
html[data-guide-skin="anime"] .member-guide .mg-choice-flow .mg-choice-panel { border-radius:15px; background:var(--mg-tone-wash); }
html[data-guide-skin="anime"] .member-guide .mg-hero-reward .mg-choice-panel { box-shadow:4px 4px 0 var(--mg-offset); transform:rotate(1deg); }
@media(max-width:800px) {
  html[data-guide-skin="business"] .member-guide .mg-hero { grid-template-columns:minmax(0,1fr); gap:19px; }
  html[data-guide-skin="business"] .member-guide .mg-hero-reward { padding:18px 0 0; border-top:1px solid #9bafbf66; }
}
@media(max-width:600px) {
  html[data-guide-skin="business"] .member-guide .mg-hero { padding:0; }
  html[data-guide-skin="business"] .member-guide .mg-hero-copy { padding:22px 18px; }
  html[data-guide-skin="anime"] .member-guide .mg-hero { padding:21px 16px; }
  html[data-guide-skin="business"] .member-guide .mg-hero-copy h4,html[data-guide-skin="anime"] .member-guide .mg-hero-copy h4 { font-size:25px; }
  html[data-guide-skin="anime"] .member-guide .mg-cover-art { width:130px; margin-top:12px; }
  html[data-guide-skin="anime"] .member-guide .mg-highlights-reading>.mg-highlight { gap:9px; }
  dialog[open] .member-guide .mg-appearance-trigger { min-height:44px; }
}

body:not(:has([data-member-guide])) [data-appearance-skin-label] { display:none; }
.site-header:has([data-appearance-root]) { gap:16px; }
@media(min-width:601px) and (max-width:1000px) {
  .site-header:has([data-appearance-root]) { flex-wrap:wrap; gap:14px; }
  .site-header:has([data-appearance-root]) .header-tools { margin-left:auto; }
  .site-header:has([data-appearance-root]) .primary-nav { order:3; width:100%; justify-content:center; }
}
@media(max-width:600px) {
  .site-header:has([data-appearance-root]) { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; }
  .site-header:has([data-appearance-root]) .header-tools { display:flex; flex-wrap:wrap; justify-content:flex-start; width:100%; gap:8px; }
}
html[data-theme="night"] .member-app :is(.panel,.plan,.compact-plan,.offer,.account-scope-bar,.workspace-navigation,.personal-actions) { background:var(--paper); color:var(--ink); }
html[data-theme="night"] .member-app :is(input,select,textarea) { background:#223b33; border-color:var(--line); color:var(--ink); }
html[data-theme="night"] .member-app dialog:not(.appearance-panel):not(.mg-evidence-dialog) { background:var(--paper); border-color:var(--line); color:var(--ink); }

/* Compose the article for its actual reading width, including a plan dialog.
   A wider viewport alone must not enlarge a guide inside a narrow container. */
.member-guide { container-name:member-reading; container-type:inline-size; }
@container member-reading (min-width:900px) {
  .member-guide .mg-hero-with-ticket {
    grid-template-columns:minmax(250px,.65fr) minmax(0,1.35fr);
    gap:28px;
  }
  html[data-guide-skin="business"] .member-guide .mg-hero-copy {
    padding:4px 0 4px 22px; border-left:3px solid var(--mg-gold);
    border-radius:0; background:transparent;
  }
  html[data-guide-skin="business"] .member-guide .mg-hero-copy::before { display:none; }
  html[data-guide-skin="business"] .member-guide .mg-hero-copy h4,
  html[data-guide-skin="anime"] .member-guide .mg-hero-copy h4 {
    margin:0 0 12px; font-size:26px; line-height:1.5;
  }
  html[data-guide-skin="business"] .member-guide .mg-hero-copy h4 { color:var(--mg-deep); }
  html[data-guide-skin="business"] .member-guide .mg-hero-copy>.mg-hero-caption {
    margin-top:0; color:var(--mg-muted);
  }
  html[data-guide-skin="anime"] .member-guide .mg-cover-art { width:112px; margin-top:12px; }
  .member-guide .mg-hero-reward .mg-choice-group { gap:12px; }
  .member-guide .mg-hero-reward .mg-compact-tabs { order:0; gap:8px; }
  .member-guide .mg-hero-reward .mg-choice { padding:8px 11px; min-height:38px; }
  .member-guide .mg-hero-reward .mg-choice strong { font-size:13px; }
  .member-guide .mg-hero-reward .mg-choice-panel h5 { margin-bottom:8px; }
  .member-guide .mg-hero-reward .mg-choice-panel p { margin-top:10px; padding-top:10px; }
  /* Restriction cards have one compact reading scale in both skins. Keep the
     chapter heading prominent and leave phone / narrow-dialog typography alone. */
  .member-guide .mg-critical {
    --mg-type-restriction-title:17px; --mg-type-restriction-body:16px;
    margin:24px 0;
  }
  .member-guide .mg-critical>div>strong { margin-bottom:12px; }
  .member-guide .mg-critical-items { align-items:start; gap:10px 12px; }
  .member-guide .mg-critical-item>header { align-items:flex-start; gap:10px; margin-bottom:6px; }
  .member-guide .mg-critical-item>header h5 {
    gap:7px; font-size:var(--mg-type-restriction-title); font-weight:700; line-height:1.45;
  }
  .member-guide .mg-critical-item .mg-condition-icon { width:18px; height:18px; }
  .member-guide .mg-critical-item .mg-reference {
    margin:0; padding:3px 0; min-height:24px; flex:none;
    font-size:var(--mg-type-meta); line-height:1.5;
  }
  html[data-guide-skin="business"] .member-guide .mg-critical-item {
    border:1px solid var(--mg-tone-line); border-top:3px solid var(--mg-tone-line);
    border-radius:8px;
  }
  html[data-guide-skin] .member-guide .mg-critical-item { padding:13px 16px; }
  .member-guide .mg-critical-item p {
    margin:0; font-size:var(--mg-type-restriction-body); line-height:1.6;
  }
}
@container member-reading (min-width:1200px) {
  .member-guide .mg-hero-reward .mg-choice-panel:not([hidden]) {
    display:grid; grid-template-columns:minmax(0,1fr) auto; gap:14px 18px; align-items:start;
  }
  .member-guide .mg-hero-reward .mg-choice-panel-body {
    display:grid; grid-template-columns:minmax(220px,.9fr) minmax(0,1.1fr);
    gap:8px 26px; align-items:start;
  }
  .member-guide .mg-hero-reward .mg-visual-plain { grid-column:1; grid-row:1; margin:0; }
  .member-guide .mg-hero-reward .mg-choice-panel h5 { grid-column:1; grid-row:2; margin:0; }
  .member-guide .mg-hero-reward .mg-choice-panel p {
    grid-column:2; grid-row:1 / span 2; margin:0; padding:0; border:0;
  }
  .member-guide .mg-hero-reward .mg-choice-panel>.mg-reference {
    margin:0; align-self:start;
  }
  .member-guide .mg-hero-reward .mg-choice-panel::after { grid-column:1 / -1; }
  .member-guide .mg-critical-items:has(>.mg-critical-item:nth-child(3)) {
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .member-guide .mg-critical-items:has(>.mg-critical-item:nth-child(3))>.mg-critical-item:last-child:nth-child(odd) {
    grid-column:auto;
  }
}

/* Pine and warm paper form the business palette. Chapter cues use restrained
   green/grey tones; gold accents and actual uncertainty retain separate roles. */
html:not([data-guide-skin="anime"]) :is(.member-guide,dialog.mg-evidence-dialog) {
  --mg-ink:#203c34; --mg-muted:#607369; --mg-body-ink:#3c5148;
  --mg-paper:#fffefb; --mg-wash:#f4f5ef; --mg-line:#dce4db;
  --mg-deep:#24584a; --mg-gold:#94733d; --mg-outline:#607369;
  --mg-reward:#24584a; --mg-reward-ink:#234c40; --mg-reward-muted:#607369;
  --mg-reward-line:#d7e1d7; --mg-reward-wash:#f2f5ee; --mg-reward-soft:#e8eee4;
  --mg-overview:#42664e; --mg-overview-ink:#34513f; --mg-overview-muted:#607369;
  --mg-overview-line:#d5dfd3; --mg-overview-wash:#f3f5ef; --mg-overview-soft:#e9eee3;
  --mg-flow:#35635a; --mg-flow-ink:#315149; --mg-flow-muted:#607369;
  --mg-flow-line:#d4e0d9; --mg-flow-wash:#f1f5f0; --mg-flow-soft:#e7eee8;
  --mg-time:#5b6a5b; --mg-time-ink:#455541; --mg-time-muted:#66735f;
  --mg-time-line:#dbe1d4; --mg-time-wash:#f5f6ef; --mg-time-soft:#eceee3;
  --mg-details:#53675e; --mg-details-ink:#3f544a; --mg-details-muted:#607369;
  --mg-details-line:#dce3dc; --mg-details-wash:#f4f6f1; --mg-details-soft:#eaf0e8;
}
html[data-theme="night"]:not([data-guide-skin="anime"]) :is(.member-guide,dialog.mg-evidence-dialog) {
  --mg-ink:#e5eee8; --mg-muted:#a7bbb0; --mg-body-ink:#c8d8ce;
  --mg-paper:#1b2e28; --mg-wash:#23392f; --mg-line:#3b5548;
  --mg-deep:#b2d5bf; --mg-gold:#d8bc82; --mg-outline:#a7bbb0;
  --mg-reward:#b2d5bf; --mg-reward-ink:#e0ede3; --mg-reward-muted:#a7bbb0;
  --mg-reward-line:#3f5b4a; --mg-reward-wash:#243d30; --mg-reward-soft:#2d4837;
  --mg-overview:#b8d2b7; --mg-overview-ink:#e0ebdc; --mg-overview-muted:#aabbab;
  --mg-overview-line:#465e47; --mg-overview-wash:#283d2b; --mg-overview-soft:#304935;
  --mg-flow:#b1d0c2; --mg-flow-ink:#dfebe5; --mg-flow-muted:#a7bbb0;
  --mg-flow-line:#425c50; --mg-flow-wash:#263c31; --mg-flow-soft:#30493e;
  --mg-time:#c6d0b3; --mg-time-ink:#e6ebd7; --mg-time-muted:#b5bda8;
  --mg-time-line:#535e45; --mg-time-wash:#323b29; --mg-time-soft:#3d4834;
  --mg-details:#bbcec0; --mg-details-ink:#e1eae2; --mg-details-muted:#a7bbb0;
  --mg-details-line:#485d4f; --mg-details-wash:#2a3c30; --mg-details-soft:#34483b;
}
html:not([data-guide-skin="anime"]) .member-guide :is(.mg-critical,.mg-notes) {
  --mg-tone:var(--mg-deep); --mg-tone-ink:var(--mg-ink); --mg-tone-muted:var(--mg-muted);
  --mg-tone-line:var(--mg-line); --mg-tone-wash:var(--mg-paper); --mg-tone-soft:var(--mg-wash);
}
html:not([data-guide-skin="anime"]) .member-guide .mg-critical-item { border-top-color:var(--mg-gold); }

.member-app.guide-active{padding-bottom:400px;overflow:hidden}
.guide-active .workspace-panel{animation:none!important}
.member-app #usage-guide{display:inline-flex;align-items:center;white-space:nowrap;flex-shrink:0;padding:8px 12px}
.member-app dialog.usage-guide{position:fixed;inset:0;margin:0;padding:0;width:100vw;max-width:none;height:100dvh;max-height:none;border:0;border-radius:0;background:transparent;color:var(--ink);overflow:hidden;box-shadow:none}
.member-app dialog.usage-guide::backdrop{background:transparent;backdrop-filter:none}
.guide-shade{position:fixed;background:rgb(16 42 36 / 56%);pointer-events:none}
.guide-highlight{position:fixed;border:3px solid #9cdec7;border-radius:12px;box-shadow:0 0 0 2px #23685b,0 0 28px #8be0be70;pointer-events:none}
.guide-highlight span{position:absolute;top:-13px;right:-10px;display:grid;place-items:center;width:27px;height:27px;border:2px solid var(--surface);border-radius:50%;background:var(--green);color:white;font-size:13px;font-weight:700}
.guide-card{position:fixed;width:min(390px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:22px;box-shadow:0 18px 70px #102b3640}
.guide-welcome .guide-card{width:min(470px,calc(100vw - 24px))}
.guide-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}
.guide-heading .eyebrow{margin:0;letter-spacing:2px;font-size:11px}
.guide-heading button{padding:0;width:36px;min-height:36px;background:transparent;border:0;font-size:23px}
.member-app .guide-card h2{font-size:25px;margin:14px 0 12px;line-height:1.4}
.member-app .guide-card p{font-size:14px;line-height:1.8;margin:0 0 14px}
.guide-overview{list-style:none;counter-reset:guide-step;display:grid;gap:10px;margin:20px 0;padding:0}
.guide-overview li{counter-increment:guide-step;display:flex;align-items:center;gap:12px;font-size:14px;line-height:1.6}
.guide-overview li::before{content:counter(guide-step);display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:#e5eee7;color:var(--green);font-family:ui-monospace,monospace}
.member-app .guide-card .guide-hint{font-size:12px;line-height:1.8;color:var(--muted);padding:10px 12px;background:#eef3ee;border-radius:10px}
.guide-progress{display:flex;gap:6px;margin:18px 0}
.guide-progress i{height:4px;flex:1;border-radius:4px;background:var(--line)}
.guide-progress i.is-current{background:var(--green)}
.guide-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:18px}
.guide-actions button{padding:9px 13px;white-space:nowrap}
.guide-actions [data-guide-skip]{margin-right:auto;padding-left:0;color:var(--muted);border-color:transparent;background:transparent;font-size:12px}
.guide-status{color:var(--muted)}
@media(max-width:640px){.guide-card{padding:18px;border-radius:18px}.member-app .guide-card h2{font-size:23px}.guide-actions button{padding:9px 11px}.guide-heading .eyebrow{letter-spacing:1px}}

.purchase-form{margin-bottom:1.5rem}.purchase-form .field-grid{gap:1rem}.purchase-form input,.purchase-form select,.purchase-confirmation input,.purchase-confirmation select{max-width:100%;min-width:0}.purchase-option{margin-bottom:1rem}.purchase-option h3{margin:.8rem 0;overflow-wrap:anywhere}.purchase-option-head{display:flex;justify-content:space-between;gap:.75rem;flex-wrap:wrap;color:var(--muted)}.purchase-gain{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}.purchase-gain strong{font-family:var(--tech-font,monospace);font-size:2rem;color:var(--accent)}.purchase-gain small{font-size:1rem}.purchase-checks,.purchase-evidence{border-top:1px solid var(--line);padding:1rem 0}.purchase-checks summary,.purchase-evidence summary{cursor:pointer;color:var(--accent);font-weight:600}.purchase-confirmation{padding-top:1rem}.purchase-confirmation .check{margin:.8rem 0}.purchase-reasons{padding-left:1.25rem}.purchase-reasons li{margin:.3rem 0}.purchase-group{margin:1.25rem 0 .75rem}.purchase-option .actions{flex-wrap:wrap}.purchase-option .actions>*{white-space:normal}.purchase-option .field-grid{margin:.75rem 0}#purchase-results{scroll-margin-top:1rem}@media(max-width:600px){.purchase-gain{align-items:flex-start;flex-direction:column;gap:.3rem}.purchase-option-head{flex-direction:column}.purchase-form .field-grid,.purchase-confirmation .field-grid{grid-template-columns:1fr}.purchase-option .actions>*{flex:1 1 auto}.purchase-option{padding:1rem}}

.purchase-option .pill.ok{color:var(--green);background:color-mix(in srgb,var(--green) 9%,var(--surface))}
.purchase-steps{display:flex;list-style:none;padding:0;margin:0 0 24px;gap:24px;border-bottom:1px solid var(--line);padding-bottom:17px;color:var(--muted);font-size:12px}.purchase-steps li{display:flex;align-items:center;gap:8px}.purchase-steps b,.purchase-section legend>b,.purchase-result-number{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:7px;background:#e8eee2;color:#806839;font:11px 'HK Perks Tech',monospace}
.purchase-section{border:0;padding:0;margin:0 0 22px;min-width:0}.purchase-section legend{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:600;margin-bottom:18px;padding:0}.member-app.is-authenticated .purchase-form .field-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px 18px}.purchase-form label{font-size:12px;min-width:0}.purchase-form input,.purchase-form select{font-size:13px;min-height:45px}.purchase-hint{font-size:11px;line-height:1.8;color:var(--muted);margin:12px 0 0}.planning-extra{border-top:1px solid var(--line);padding-top:15px}.planning-extra summary{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;font-size:12px;color:var(--green)}.planning-extra summary>span{font-size:11px;color:var(--muted)}.planning-extra[open] .field-grid{margin-top:16px}.planning-extra .muted{grid-column:span 2;font-size:11px;line-height:1.8}.purchase-submit{border-top:1px solid var(--line);padding-top:18px;margin-top:18px}.purchase-submit button{font-size:12px;min-height:43px}.purchase-route-summary{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:10px 0 14px;color:var(--muted);font-size:12px}.purchase-route-summary>span{display:inline-flex;align-items:center;gap:7px;padding:5px 9px;border:1px solid var(--line);border-radius:9px}.purchase-route-summary .bank-mark{width:22px;height:22px;font-size:8px}.purchase-result-number{margin-right:7px}.planning-invalidated{padding:14px 16px;border:1px solid #ddccaa;border-radius:12px;background:#f7f1e4;color:#876a3a;font-size:12px}#purchase-results{scroll-margin-top:20px}
@media(max-width:900px){.member-app.is-authenticated .purchase-form .field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.planning-extra .muted{grid-column:auto}.purchase-steps{gap:14px;font-size:11px}}
@media(max-width:600px){.member-app .purchase-form{padding:17px}.member-app.is-authenticated .purchase-form .field-grid{grid-template-columns:minmax(0,1fr);gap:13px}.purchase-steps{gap:12px;font-size:10px;padding-bottom:14px;margin-bottom:20px}.purchase-steps b{width:21px;height:21px;font-size:10px}.purchase-steps li{gap:5px}.purchase-section legend{font-size:14px;gap:8px;margin-bottom:14px}.purchase-submit{gap:10px}.purchase-submit button{width:100%}.planning-extra summary{align-items:flex-start}.purchase-route-summary{font-size:11px}.purchase-route-summary>span{max-width:100%;overflow-wrap:anywhere}}

.member-app #planning-single>.section-heading{margin:16px 0 12px}.member-app #planning-single>.section-heading p{margin:8px 0;font-size:13px}.member-app #planning-single>.section-heading .eyebrow{font-size:10px}.planning-extra summary::after{content:'＋';flex:none;color:var(--green)}.planning-extra[open] summary::after{content:'−'}.planning-extra summary>span{margin-left:auto}

.purchase-card-scope{margin-top:14px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--green) 4%,var(--surface));font-size:12px;line-height:1.7}.purchase-card-scope p{margin:0 0 5px}.purchase-card-scope .muted{font-size:11px}.purchase-card-scope .actions{margin-top:10px;flex-wrap:wrap;align-items:flex-start}.purchase-card-scope button{font-size:11px;min-height:38px}.purchase-card-scope summary{padding:8px;cursor:pointer;color:var(--green)}.purchase-account-choices{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.purchase-account-choices button{white-space:normal;text-align:left;overflow-wrap:anywhere}.purchase-bank-filters{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 10px}.purchase-bank-filters button{display:flex;gap:8px;align-items:center;font-size:12px;min-height:40px;border-radius:10px}.purchase-bank-filters button[aria-pressed=true]{background:var(--green);border-color:var(--green);color:var(--surface)}.purchase-bank-filters span{font-family:var(--tech-font,monospace);opacity:.8}.purchase-bank-filters button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}

.purchase-search-progress{padding:1rem 1.15rem;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--text);line-height:1.65}.purchase-search-progress span{display:block;font-size:.86em;color:var(--muted)}

.purchase-activity-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;margin:14px 0;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--green) 4%,var(--surface))}.purchase-activity-controls p{margin:0;font-size:12px;color:var(--muted)}.purchase-activity-controls label{font-size:12px;max-width:75%;min-width:0;flex:1}.purchase-activity-controls select{margin-top:6px;width:100%;min-width:0;max-width:100%;min-height:40px;font-size:12px}@media(max-width:600px){.purchase-activity-controls{align-items:stretch;flex-direction:column;gap:10px}.purchase-activity-controls label{max-width:100%}}

.member-app.is-authenticated .member-header{padding-top:16px;padding-bottom:16px}
.member-app.is-authenticated main{padding-top:18px}
.member-app.is-authenticated .workspace-hero{margin:0 0 16px;gap:18px;display:flex;align-items:center;justify-content:space-between}
.member-app.is-authenticated .workspace-hero .eyebrow{display:none}
.member-app.is-authenticated .workspace-hero h1{font-size:30px;line-height:1.35;margin:0 0 4px;letter-spacing:-.025em}
.member-app.is-authenticated .workspace-hero .lede{font-size:12px;line-height:1.6}
.member-app.is-authenticated .identity{margin:0;gap:9px;max-width:300px}
.member-app.is-authenticated .identity-mark{width:34px;height:38px;border-radius:10px;font-size:21px}
.member-app.is-authenticated .identity strong{font-size:14px;display:inline;margin:0 0 0 8px}
.member-app.is-authenticated .identity small{font-size:10px;margin-top:3px}
.member-app.is-authenticated .identity .pill{font-size:10px;padding:3px 5px}
.member-app.is-authenticated .dashboard{gap:10px}
.member-app.is-authenticated .dashboard button{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;min-height:68px;border-radius:12px}
.member-app.is-authenticated .dashboard button small{font-size:11px;line-height:1.5}
.member-app.is-authenticated .dashboard strong{font-size:28px;line-height:1.2;margin:0;letter-spacing:-.035em}
.member-app.is-authenticated .account-scope-bar{margin:14px 0 22px;padding:10px 14px;border-radius:12px;gap:14px}
.member-app.is-authenticated .account-scope-bar select{padding-top:8px;padding-bottom:8px}
.member-app.is-authenticated #panel-plans .section-heading{margin-bottom:14px;gap:14px}
.member-app.is-authenticated #panel-plans .section-heading .eyebrow{display:none}
.member-app.is-authenticated #panel-plans .section-heading h2{font-size:25px;line-height:1.4;margin:0}
.member-app.is-authenticated #panel-plans .section-heading .actions{margin:0}
.member-app.is-authenticated .next-action{padding:14px 16px;margin-bottom:18px;gap:12px}
.member-app.is-authenticated .next-action strong{font-size:13px}
.member-app.is-authenticated .next-action p{font-size:12px;margin-top:5px}
.member-app.is-authenticated .next-action button{font-size:12px;padding:8px 12px;flex:none}
@media(max-width:1000px){.member-app.is-authenticated .dashboard button{padding:12px}.member-app.is-authenticated .workspace-hero h1{font-size:27px}}
@media(max-width:700px){
 .member-app.is-authenticated .member-header{padding:12px 18px;gap:10px}.member-app.is-authenticated .brand{font-size:25px}.member-app.is-authenticated .brand small{font-size:9px;letter-spacing:.17em}
 .member-app.is-authenticated main{padding-top:14px}.member-app.is-authenticated .workspace-hero{align-items:flex-start;gap:12px;margin-bottom:13px}.member-app.is-authenticated .workspace-hero h1{font-size:22px;line-height:1.35;margin:0}.member-app.is-authenticated .workspace-hero .lede{display:none}
 .member-app.is-authenticated .identity-mark{display:none}.member-app.is-authenticated .identity{max-width:155px}.member-app.is-authenticated .identity strong{display:block;margin:3px 0 0;font-size:12px}.member-app.is-authenticated .identity small{font-size:9px;line-height:1.4}.member-app.is-authenticated .identity .pill{font-size:9px}
 .member-app.is-authenticated .dashboard{gap:8px}.member-app.is-authenticated .dashboard button{min-height:57px;padding:10px 12px;gap:8px}.member-app.is-authenticated .dashboard button small{font-size:10px}.member-app.is-authenticated .dashboard strong{font-size:24px}
 .member-app.is-authenticated .account-scope-bar{margin:12px 0 18px;padding:10px;gap:8px}.member-app.is-authenticated .account-scope-bar label{gap:8px;font-size:11px}.member-app.is-authenticated .account-scope-bar select{font-size:12px;max-width:none;min-width:0}.member-app.is-authenticated .account-scope-bar a{font-size:11px}.member-app.is-authenticated .account-scope-bar #account-scope-note{font-size:10px}
 .member-app.is-authenticated #panel-plans .section-heading{align-items:flex-start;gap:10px}.member-app.is-authenticated #panel-plans .section-heading h2{font-size:21px}.member-app.is-authenticated #panel-plans .section-heading .actions{gap:6px}.member-app.is-authenticated #panel-plans .section-heading .button{font-size:11px;padding:8px 10px;min-height:36px}
 .member-app.is-authenticated .next-action{padding:12px;gap:8px;margin-bottom:14px}.member-app.is-authenticated .next-action strong{font-size:12px}.member-app.is-authenticated .next-action p{font-size:11px}.member-app.is-authenticated .next-action button{padding:8px;font-size:11px}
}

/* SVIP navigation: a distinct green-and-gold console, with restrained feedback. */
.workspace-navigation{--nav-ink:#234b3f;--nav-muted:#4d6559;--nav-icon:#426553;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;margin:18px 0 16px;padding:11px 12px 8px;border:1px solid #cddcd3;border-radius:18px;background:linear-gradient(120deg,#fcfdf9ed,#f1f6f0e8);box-shadow:0 5px 22px #173e3806,inset 0 1px 0 #fff;min-width:0}
.workspace-nav-caption{grid-column:1;grid-row:1;display:flex;align-items:center;gap:9px;padding-left:6px;color:var(--nav-muted);font-size:11px;font-weight:600;letter-spacing:.08em;min-width:0}
.nav-svip-mark{display:inline-flex;align-items:center;gap:5px;padding:3px 7px;border:1px solid #d7c49780;border-radius:6px;background:#f0e9d94d;color:#806336;font:10px/1.3 'HK Perks Tech',monospace;letter-spacing:.1em}
.nav-svip-mark::before{content:'';display:block;width:4px;height:4px;transform:rotate(45deg);background:#a38447}
.workspace-nav-tools{grid-column:2;grid-row:1;display:flex;align-items:center;gap:5px;min-width:0}
.workspace-nav-tools button{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:30px;padding:5px 9px;margin:0;border:1px solid #cfdbd2;border-radius:9px;background:#fcfdf98c;color:var(--nav-muted);font-size:11px;white-space:nowrap;overflow:hidden;cursor:pointer;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.workspace-nav-tools .nav-icon{width:14px;height:14px;flex:none}
.workspace-nav-track{grid-column:1/-1;grid-row:2;display:flex;align-items:center;gap:5px;min-width:0}
.workspace-navigation .workspace-nav{display:flex;flex:1;min-width:0;align-items:center;justify-content:flex-start;flex-wrap:nowrap;gap:6px;margin:0;padding:6px;border:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;scroll-padding-inline:6px;overscroll-behavior-x:contain}
.workspace-navigation .workspace-nav::-webkit-scrollbar{display:none}
.workspace-navigation .workspace-nav a{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;flex:none;gap:7px;min-height:44px;padding:10px 12px;border:1px solid transparent;border-radius:11px;background:transparent;color:var(--nav-ink);text-decoration:none;font-size:13px;font-weight:550;line-height:1.4;white-space:nowrap;overflow:hidden;-webkit-tap-highlight-color:transparent;transition:color .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.workspace-navigation .workspace-nav .nav-label{display:block;padding:0;margin:0;border:0;border-radius:0;background:transparent;color:inherit;font:inherit;letter-spacing:0}
.workspace-navigation .nav-icon{display:block;width:18px;height:18px;flex:none;color:var(--nav-icon);transition:color .18s ease,transform .18s ease}
.workspace-navigation .workspace-nav-tools .nav-icon{width:14px;height:14px;color:inherit}
.workspace-navigation .workspace-nav a[data-view=planning]>.nav-icon{color:#a17c39}
.workspace-navigation .workspace-nav .nav-count{min-width:18px;padding:1px 5px;margin:0;border:1px solid #cedccf;border-radius:5px;background:#e4ece4;color:#426357;text-align:center;font:10px/1.4 'HK Perks Tech',monospace}
.workspace-navigation .workspace-nav a[data-view=notifications]>.nav-count[data-positive=true]{border-color:#dcc58f;background:#f6ead0;color:#76581e}
.workspace-navigation .workspace-nav a[aria-current=page]{border-color:#b89d62;background:linear-gradient(120deg,#23685b,#174e44);color:#fffdf3;font-weight:650;box-shadow:0 3px 9px #174e4421,inset 0 1px 0 #ffffff14}
.workspace-navigation .workspace-nav a[aria-current=page]::after{content:none}
.workspace-navigation .workspace-nav a[aria-current=page]>.nav-icon{color:#e8d4a4}
.workspace-navigation .workspace-nav a[aria-current=page]>.nav-count{border-color:#ffffff28;background:#ffffff19;color:#fffdf3}
.workspace-navigation .nav-scroll-control{display:inline-flex;align-items:center;justify-content:center;flex:none;width:29px;min-height:36px;padding:4px;border:1px solid #d3dfd5;border-radius:9px;background:#fbfcf6;color:#446558;cursor:pointer;transition:background .18s ease,transform .18s ease,opacity .18s ease}
.workspace-navigation .nav-scroll-control .nav-icon{width:16px;height:16px;color:inherit}
.workspace-navigation .nav-scroll-control:disabled{opacity:.35;cursor:default}
.workspace-navigation :is(a,button):focus-visible{outline:2px solid #a67d30;outline-offset:3px}
.workspace-nav-tools #refresh[data-busy] .nav-icon{animation:nav-refresh-turn .9s linear infinite}
.workspace-navigation .nav-ripple{position:absolute;z-index:-1;pointer-events:none;margin:0;padding:0;border:0;border-radius:50%;background:#7ba79042;transform:translate(-50%,-50%) scale(0);opacity:1;animation:nav-ripple-expand .48s ease-out forwards}
.workspace-navigation a[aria-current=page] .nav-ripple{background:#f2db9b3b}
@media(hover:hover) and (pointer:fine){
 .workspace-navigation .workspace-nav a:hover{border-color:#bfd1c5;background:#e4eee4b3;color:#174e44;transform:translateY(-2px);box-shadow:0 4px 10px #173e380d}
 .workspace-navigation .workspace-nav a:hover>.nav-icon{color:#9a762f;transform:rotate(-7deg)}
 .workspace-navigation .workspace-nav a[aria-current=page]:hover{border-color:#dac18c;background:linear-gradient(120deg,#2a7565,#1b584a);color:#fffdf3;box-shadow:0 5px 12px #174e4430}
 .workspace-navigation .workspace-nav a[aria-current=page]:hover>.nav-icon{color:#f0dcae}
 .workspace-nav-tools button:hover{background:#fffdf5;border-color:#b9a171;box-shadow:0 3px 8px #173e380b;transform:translateY(-1px)}
 .workspace-nav-tools #usage-guide:hover>.nav-icon{color:#a17c39;transform:rotate(-10deg)}
 .workspace-navigation .nav-scroll-control:not(:disabled):hover{background:#e7eee1;border-color:#b9cbbd}
}
.workspace-navigation .workspace-nav a:active,.workspace-nav-tools button:not(:disabled):active,.workspace-navigation .nav-scroll-control:not(:disabled):active{transform:translateY(0) scale(.97);box-shadow:inset 0 1px 4px #173e3819}
@keyframes nav-ripple-expand{to{transform:translate(-50%,-50%) scale(1);opacity:0}}
@keyframes nav-refresh-turn{to{transform:rotate(360deg)}}
@media(max-width:700px){
 .workspace-navigation{margin:12px 0 14px;padding:9px 7px 6px;gap:3px 6px;border-radius:14px}
 .workspace-nav-caption{gap:6px;padding-left:5px;font-size:10px;letter-spacing:.04em}.nav-svip-mark{font-size:9px;padding:3px 5px}
 .workspace-nav-tools{gap:4px}.workspace-nav-tools button{min-height:32px;padding:5px 7px;font-size:10px}.workspace-nav-tools .nav-icon{width:13px;height:13px}
 .workspace-navigation .workspace-nav{gap:5px;padding:6px 4px}.workspace-navigation .workspace-nav a{min-height:44px;padding:10px 11px;gap:6px;font-size:12px;border-radius:9px}
 .workspace-navigation .nav-icon{width:17px;height:17px}.workspace-navigation .nav-scroll-control{width:24px;min-height:34px;padding:3px;border-radius:7px}
}
@media(prefers-reduced-motion:reduce){
 .workspace-navigation .workspace-nav{scroll-behavior:auto}.workspace-navigation :is(a,button,.nav-icon){transition:none!important;animation:none!important}.workspace-navigation .nav-ripple{display:none}
 .workspace-navigation .workspace-nav a:hover,.workspace-nav-tools button:hover,.workspace-navigation .workspace-nav a:active,.workspace-nav-tools button:active,.workspace-navigation .nav-icon{transform:none!important}
}

/* Personal workbench: one compact context, grouped navigation and actionable content. */
.member-app.is-authenticated main,.member-app.is-authenticated .member-header,.member-app.is-authenticated footer{max-width:1480px}
.member-header .brand{display:flex;align-items:center;gap:10px;font-size:24px}
.member-header .brand small{font-size:8px;letter-spacing:.28em;margin-top:3px}
.member-brand-symbol{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:11px;background:#23685b;color:#fffefa;flex:none}
.member-brand-symbol svg{width:27px;height:27px}
.member-app.is-authenticated .workspace-hero{padding:0 2px 16px;margin:0 0 20px;border-bottom:1px solid var(--line)}
.member-app.is-authenticated .workspace-hero h1{font-size:25px}.member-app.is-authenticated .workspace-hero .lede{font-size:12px}
.workbench-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:26px;align-items:start}
.workbench-content{min-width:0}.workbench-context{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px;letter-spacing:.06em;margin:0 0 13px}
#workspace-live-status{display:inline-flex;gap:7px;align-items:center;letter-spacing:0}
#workspace-live-status::before{content:'';width:10px;height:10px;border:1.5px solid var(--line);border-top-color:var(--green);border-radius:50%;animation:workbench-spin .9s linear infinite}
.member-app.is-authenticated .account-scope-bar{padding:10px 14px;margin:0 0 12px;gap:12px;border-radius:13px}
.member-app.is-authenticated .account-scope-bar label{font-size:11px;gap:10px}.account-scope-bar select{max-width:290px}
.member-app.is-authenticated .account-scope-bar #account-scope-note{font-size:11px}.member-app.is-authenticated .account-scope-bar a{font-size:11px}
.member-app.is-authenticated #dashboard{margin:16px 0 22px}.member-app.is-authenticated #dashboard button{min-height:74px;padding:14px}
.member-app.is-authenticated #dashboard small{font-size:11px}.member-app.is-authenticated #dashboard strong{font-size:28px}
.nav-group-label{display:none}.workspace-panel{scroll-margin-top:24px}
.personal-actions{background:linear-gradient(110deg,#f9fbf5,#edf4ed);border:1px solid #cdddcf;border-radius:18px;padding:20px;margin-bottom:24px}
.personal-actions .section-heading{margin:0 0 16px!important;align-items:center}.personal-actions h3{font-size:20px;line-height:1.45;margin:6px 0}.personal-actions .eyebrow{font-size:9px;letter-spacing:.15em}
.personal-actions .muted{font-size:11px;margin:4px 0}.personal-actions .button{font-size:11px;white-space:nowrap}
.personal-action-list{display:grid;gap:10px}.personal-action{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:12px;align-items:center;border-top:1px solid #d5e2d5;padding:13px 0}
.task-number{align-self:start;color:#997a42;font:12px 'HK Perks Tech',monospace;padding-top:3px}.personal-action strong{display:block;font-size:13px;line-height:1.6;overflow-wrap:anywhere}
.personal-action small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.personal-action p{font-size:12px;margin:6px 0 0;line-height:1.7;color:var(--muted)}
.personal-action button{white-space:nowrap;font-size:12px;padding:9px 12px;background:var(--surface)}
.personal-shortcuts{display:flex;gap:16px;flex-wrap:wrap;border-top:1px solid #d5e2d5;padding-top:14px;margin-top:5px}
.personal-shortcuts a,.personal-shortcuts button{display:inline-flex;align-items:center;gap:12px;font-size:12px;color:var(--green);padding:0;background:transparent;border:0;text-decoration:none}
.personal-shortcuts span{color:#997a42}.personal-empty{display:flex;gap:14px;align-items:center;padding:7px 0 14px}.personal-empty>span{display:flex;align-items:center;justify-content:center;flex:none;width:32px;height:32px;color:var(--green);background:#e2ece1;border-radius:50%}
.personal-empty p{font-size:12px;line-height:1.8;color:var(--muted);margin:0;flex:1}
.bank-mark{display:inline-flex;align-items:center;justify-content:center;flex:none;width:29px;height:29px;border-radius:8px;background:color-mix(in srgb,var(--bank-color) 12%,#fffefa);color:var(--bank-color);font:600 9px 'HK Perks Tech',monospace;letter-spacing:.05em}
.member-app .compact-plan,.member-app .offer{position:relative;overflow:hidden;border-radius:18px;border:1px solid #dbe4d9;background:var(--surface);padding:20px;display:flex;flex-direction:column;min-width:0;box-shadow:0 5px 20px #1b4e4004}
.compact-plan::before,.offer::before{content:'';position:absolute;top:0;left:20px;width:34px;height:2px;background:var(--bank-color,var(--green))}
.member-app .compact-plan h3,.member-app .offer h3{font-size:17px;line-height:1.6;margin:13px 0 10px}
.member-app .compact-plan .plan-account{font-size:11px;margin-top:12px}.plan-reward-summary,.member-app .offer .reward-copy{font-size:12px;line-height:1.8;background:#f3f6f0;border-radius:10px;padding:11px 12px;margin:0 0 12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.plan-reward-summary b,.reward-copy b{color:#1c4d42;font-weight:700}.member-app .compact-plan .plan-context{font-size:11px}.member-app .compact-plan .compact-progress{margin-top:12px}
.member-app .compact-plan .plan-actions{margin-top:auto;padding-top:14px;gap:7px}.member-app .compact-plan .plan-actions button{font-size:11px;min-height:36px;padding:7px 10px}
.member-app .compact-reward{border-radius:10px;margin:12px 0}.member-app .compact-reward>span{font-size:11px}.member-app .compact-reward strong{font-size:11px}
.member-app .offer .offer-footer{margin-top:auto;padding-top:16px}.member-app .offer .offer-footer>*{font-size:12px}
.member-app .workspace-panel button,.member-app .workspace-panel .button{transition:background .16s ease,box-shadow .16s ease,transform .16s ease}
.member-app .workspace-panel button:active,.member-app .workspace-panel .button:active{transform:scale(.98)}
.member-app button[data-busy]::after{content:'';display:inline-block;width:11px;height:11px;margin-left:8px;border:1.5px solid currentColor;border-right-color:transparent;border-radius:50%;vertical-align:middle;animation:workbench-spin .9s linear infinite}
.member-app #refresh[data-busy]::after{content:none}
.member-app.is-authenticated #feedback{position:fixed;z-index:50;left:50%;top:auto;bottom:24px;transform:translateX(-50%);display:flex;gap:14px;align-items:center;max-width:min(620px,calc(100vw - 32px));width:max-content;margin:0;padding:12px 16px;box-shadow:0 6px 26px #173e3820;font-size:12px;border-radius:12px}
#feedback button{flex:none;border:0;background:transparent;padding:0 4px;font-size:20px;min-width:28px;min-height:28px;color:inherit}
#workspace-mobile-nav{display:none}.member-app #workspace-more-dialog{width:min(460px,calc(100vw - 24px));padding:18px;border-radius:20px;max-height:85dvh;overflow:auto}
#workspace-more-dialog h2{font-size:20px;margin:0}.member-app #workspace-more-dialog .dialog-heading{margin-bottom:6px}
@media(min-width:1100px){
 #workspace-sidebar{position:sticky;top:18px}.workspace-navigation{display:block;margin:0;padding:15px 10px;border-radius:16px}
 .workspace-nav-caption{font-size:11px;margin:0 4px 13px}.workspace-nav-tools{display:flex;justify-content:flex-start;margin:0 4px 11px;gap:6px}.workspace-nav-tools button{font-size:11px;padding:6px 8px}
 .workspace-nav-track{display:block}.workspace-navigation .workspace-nav{display:flex;flex-direction:column;align-items:stretch;gap:3px;padding:0;max-height:calc(100dvh - 180px);overflow-y:auto;overflow-x:hidden}
 .workspace-navigation .workspace-nav a{min-height:46px;justify-content:flex-start;padding:10px;font-size:14px;font-weight:650;white-space:normal;flex:none}.workspace-navigation .workspace-nav .nav-count{margin-left:auto}
 .workspace-navigation .nav-group-label{display:block;font-size:11px;font-weight:650;letter-spacing:.06em;color:var(--nav-muted);padding:13px 10px 6px}.workspace-navigation .nav-scroll-control{display:none!important}
}
@media(min-width:761px) and (max-width:1099px){.workbench-layout{grid-template-columns:minmax(0,1fr);gap:16px}.workspace-navigation{margin:0}.workbench-content{min-width:0}.member-app.is-authenticated #dashboard{gap:8px}.member-app.is-authenticated #dashboard button{padding:12px;gap:6px}.member-app.is-authenticated #dashboard strong{font-size:24px}}
@media(max-width:760px){
 .member-app.is-authenticated main{padding-top:14px;padding-bottom:82px}.member-app.is-authenticated footer{padding-bottom:82px}.workbench-layout{display:block}#workspace-sidebar{display:none}
 .member-app.is-authenticated .member-header{padding-top:12px;padding-bottom:12px;gap:10px}.member-header .brand{font-size:20px;gap:8px}.member-brand-symbol{width:30px;height:30px}.member-brand-symbol svg{width:23px;height:23px}.header-actions{gap:12px}.member-app .header-actions a{font-size:11px}
 .member-app.is-authenticated .workspace-hero{margin-bottom:16px;padding-bottom:12px;align-items:center}.member-app.is-authenticated .workspace-hero h1{font-size:19px}.member-app.is-authenticated .identity-mark{display:none}.member-app.is-authenticated .identity strong{font-size:11px;margin-left:5px}.member-app.is-authenticated .identity{gap:0;max-width:145px}.member-app.is-authenticated .identity small{font-size:9px}
 .member-app.is-authenticated .account-scope-bar{padding:10px;margin:0 0 10px;gap:8px}.member-app.is-authenticated .account-scope-bar label{flex:1;min-width:0;display:flex}.member-app.is-authenticated .account-scope-bar select{flex:1;min-width:0;max-width:210px}.member-app.is-authenticated #account-scope-note{display:none}
 .workbench-context{margin-bottom:14px;font-size:10px}.member-app.is-authenticated #dashboard{margin-top:12px;gap:9px}.member-app.is-authenticated #dashboard button{min-height:60px;padding:11px}.member-app.is-authenticated #dashboard small{font-size:10px}.member-app.is-authenticated #dashboard strong{font-size:25px}
 .personal-actions{padding:15px;border-radius:15px}.personal-actions h3{font-size:17px}.personal-actions .section-heading{gap:8px}.personal-actions .section-heading .button{padding:5px;font-size:10px}.personal-action{grid-template-columns:22px minmax(0,1fr);gap:9px}.personal-action button{grid-column:2;justify-self:start;padding:7px 11px;min-height:36px}.personal-action strong{font-size:12px}.personal-shortcuts{gap:12px}.personal-shortcuts a,.personal-shortcuts button{font-size:11px}.personal-empty{flex-wrap:wrap}.personal-empty .button{margin-left:46px}
 .member-app #workspace-mobile-nav{position:fixed;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;z-index:40;left:0;right:0;bottom:0;padding:7px 10px calc(7px + env(safe-area-inset-bottom));background:#f9fbf6f5;backdrop-filter:blur(14px);border-top:1px solid #cddbcf;box-shadow:0 -4px 22px #1b4e4007}
 #workspace-mobile-nav a,#workspace-mobile-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:49px;padding:5px 2px;text-decoration:none;font-size:10px;color:#657d70;border:0;background:transparent;border-radius:11px}
 #workspace-mobile-nav svg{display:block;width:20px;height:20px}#workspace-mobile-nav a[aria-current=page],#workspace-mobile-nav button.current{color:#1d5c4c;background:#e5eee2;font-weight:700}
 #workspace-mobile-nav [data-mobile-record]{color:#fffefa;background:#23685b;margin:0 5px;box-shadow:0 3px 9px #1b4e4020}#workspace-mobile-nav>button:last-child>span{position:relative}.mobile-unread{position:absolute;top:-24px;left:15px;min-width:14px;border-radius:4px;padding:1px 3px;background:#f2e0b7;color:#725222;font:9px monospace}
 #workspace-more-dialog .workspace-navigation{display:block;margin:0;padding:8px;border:0;background:transparent;box-shadow:none}#workspace-more-dialog .workspace-nav-caption{display:none}#workspace-more-dialog .workspace-nav-tools{justify-content:flex-start;margin:0 0 10px}#workspace-more-dialog .workspace-nav-track{display:block}
 #workspace-more-dialog .workspace-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:0;gap:7px;overflow:visible}#workspace-more-dialog .workspace-nav a{min-height:48px;padding:9px;justify-content:flex-start;font-size:11px;gap:6px;white-space:normal}#workspace-more-dialog .nav-group-label{display:block;grid-column:1/-1;font-size:10px;color:var(--muted);padding:8px 3px 2px}#workspace-more-dialog .nav-scroll-control{display:none!important}
 .member-app.is-authenticated #feedback{bottom:calc(86px + env(safe-area-inset-bottom));max-width:calc(100vw - 28px);font-size:11px;padding:10px 12px}
 .member-app .plan-grid,.member-app .offer-grid{grid-template-columns:minmax(0,1fr)}.member-app .compact-plan,.member-app .offer{padding:18px}.member-app .compact-plan h3,.member-app .offer h3{font-size:16px}
}
@media(prefers-reduced-motion:reduce){.member-app .workspace-panel button,.member-app .workspace-panel .button{transition:none}.member-app button[data-busy]::after,#workspace-live-status::before{animation:none}.member-app .workspace-panel button:active,.member-app .workspace-panel .button:active{transform:none}}
@keyframes workbench-spin{to{transform:rotate(360deg)}}
/* Startup feedback stays readable before private data is ready. */
.member-app .loading-state { padding: 32px 20px; border: 1px solid #d6e4dd; border-radius: 18px; background: #ffffffb8; }
.startup-spinner { display: inline-block; width: 18px; height: 18px; margin-right: 10px; border: 2px solid #d6e4dd; border-top-color: #246b5c; border-radius: 50%; vertical-align: middle; animation: startup-spin 1s linear infinite; }
.startup-steps { display: flex; justify-content: center; flex-wrap: wrap; gap: 18px; list-style: none; padding: 0; margin: 18px 0; font-size: 12px; }
.startup-steps li { color: #70887f; }
.startup-steps .current { color: #246b5c; font-weight: 700; }
.startup-reload { font-size: 12px; }
#startup-hint { margin: 12px 0; font-size: 13px; }
.startup-error .startup-spinner { animation: none; border-color: #a47939; }
.startup-error #startup-message { color: #976b2f; }
@keyframes startup-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .startup-spinner { animation: none; } }
/* Language controls and English labels retain room on the member header. */
.member-header .brand { flex-shrink: 0; }
.member-header .brand > span:last-child { white-space: nowrap; }
@media (max-width: 760px) {
 .member-app .member-header { display: grid; grid-template-columns: 1fr; gap: 10px; }
 .member-app .member-header .header-actions { display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 10px; width: 100%; }
 .member-app .member-header .brand { width: max-content; max-width: 100%; }
 .member-app .member-header .brand small { letter-spacing: .17em; }
 .member-app .account-scope-bar { flex-wrap: wrap; }
 .member-app.is-authenticated .account-scope-bar label { flex: 1 1 100%; }
}

/* Navigation must remain readable without hover, in both page themes. */
.workspace-navigation .workspace-nav .nav-label>span { padding:0; margin:0; border:0; border-radius:0; color:inherit; background:transparent; font:inherit; }
@media(min-width:1100px) { .workspace-navigation .workspace-nav .nav-label { min-width:0; white-space:normal; overflow-wrap:anywhere; line-height:1.5; } }
html[data-theme="night"] .workspace-navigation { --nav-ink:#e0ece2; --nav-muted:#b9cbbd; --nav-icon:#b9d2c0; }
html[data-theme="night"] .workspace-nav-tools button { background:#263f34; border-color:#4d695a; color:var(--nav-ink); }
html[data-theme="night"] .workspace-nav-caption .nav-svip-mark { background:#3b3a2a; border-color:#746448; color:#ead49f; }
/* Long localized header actions wrap within the tablet viewport. */
@media(min-width:761px) and (max-width:1099px){.member-app .member-header{flex-wrap:wrap}.member-app .header-actions{flex-wrap:wrap;max-width:100%;min-width:0;gap:8px}}

/* Introductory course: editorial hierarchy, restrained chapter accents. */
.member-app[data-workspace-view="learn"] .account-scope-bar,
.member-app[data-workspace-view="learn"] .workspace-hero { display:none; }
.member-app[data-workspace-view="learn"] .workbench-context { margin-bottom:18px; }
.member-app[data-workspace-view="learn"] .workspace-nav .nav-label>span { padding:0; margin:0; border:0; border-radius:0; color:inherit; background:transparent; font:inherit; }
.learning-page { --learn-ink:#263e38; --learn-muted:#64736d; --learn-line:#dce4dd; --learn-paper:#fffefa; --learn-wash:#f2f5ef; color:var(--learn-ink); }
.learning-page *, .learning-page *::before, .learning-page *::after { box-sizing:border-box; }
.learning-page svg { display:block; width:20px; height:20px; flex:none; }
.member-app .learning-page p { font-size:15px; line-height:1.8; margin:0; }
.member-app .learning-page h2,.member-app .learning-page h3,.member-app .learning-page h4 { font-family:var(--font-body); }
.learning-page .learn-kicker { display:block; color:var(--learn-muted); font-size:10px; font-weight:650; line-height:1.6; letter-spacing:.16em; }
.learn-kicker span { color:#ad9157; padding:0 8px; }
.member-app .learn-heading { display:flex; align-items:center; justify-content:space-between; gap:18px; max-width:none; margin:0 0 22px; padding:0; border:0; }
.member-app .learn-heading h2 { font-size:29px; font-weight:720; letter-spacing:-.035em; line-height:1.45; margin:5px 0 0; }
.member-app .learn-tour { display:flex; align-items:center; gap:7px; padding:9px 12px; min-height:40px; font-size:12px; border:1px solid var(--learn-line); border-radius:10px; background:transparent; color:var(--learn-muted); }
.learn-tour svg { width:16px; height:16px; }
.learn-hero { display:grid; grid-template-columns:minmax(0,1fr) 280px; align-items:center; position:relative; overflow:hidden; padding:32px 36px; border:1px solid #284d43; border-radius:20px; background:#173d34; color:#f8f7ee; }
.learn-hero-copy { position:relative; z-index:1; }
.learn-hero-tag { display:block; color:#d4bd87; font-size:10px; letter-spacing:.2em; line-height:1.5; }
.member-app .learn-hero h3 { margin:12px 0 14px; font-family:var(--font-editorial); font-size:clamp(26px,2.3vw,36px); font-weight:600; line-height:1.5; letter-spacing:.025em; color:#f8f7ee; }
.member-app .learn-hero p { max-width:42ch; color:#c2d1c7; font-size:13px; line-height:1.85; }
.learn-hero-meta { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin-top:21px; color:#d8ddce; font-size:11px; }
.learn-hero-meta i { width:3px; height:3px; background:#b8a471; border-radius:50%; }
.learn-art { position:relative; min-height:214px; isolation:isolate; }
.learn-art-orbit { position:absolute; width:224px; height:224px; top:-5px; right:4px; border:1px solid #98b5a13b; border-radius:50%; box-shadow:0 0 0 25px #86a68f08,0 0 0 51px #86a68f05; }
.learn-art-card { position:absolute; width:205px; height:126px; border-radius:12px; padding:17px; box-shadow:0 13px 25px #071e2033; }
.learn-art-card-back { top:16px; left:17px; transform:rotate(-12deg); color:#f6e6bd; background:#41685a; border:1px solid #8da493; }
.learn-art-card-back>span { font-size:9px; letter-spacing:.12em; }
.learn-art-card-back>b { position:absolute; bottom:14px; left:17px; color:#e7d4a7; font-size:11px; font-weight:500; letter-spacing:.15em; }
.learn-art-card-front { right:11px; top:76px; transform:rotate(7deg); color:#173d34; border:1px solid #e6d9b5; background:linear-gradient(125deg,#f3ead1,#d7c59a); }
.learn-art-card-front>svg { width:27px; height:20px; color:#a48a53; }
.learn-art-card-front>span { display:block; margin:15px 0 8px; font-size:8px; font-weight:700; letter-spacing:.17em; }
.learn-art-card-front>i { display:inline-block; width:27px; height:3px; margin-right:4px; background:#a08e664f; border-radius:2px; }
.learn-art-card-front>b { position:absolute; right:16px; top:11px; font:24px/1.2 var(--font-editorial); }
.learn-art-card-front>b>span { color:#8e743a; }
.learn-art-seal { position:absolute; display:grid; place-items:center; width:38px; height:38px; right:1px; bottom:0; background:#244e42; border:1px solid #b9a16a; border-radius:50%; color:#e1cd9b; }
.learn-layout { display:grid; grid-template-columns:205px minmax(0,1fr); gap:26px; align-items:start; margin-top:28px; }
.learn-curriculum { --learn-nav-ink:#2c4c40; --learn-nav-muted:#4d6559; position:sticky; top:20px; padding:5px 0; }
.learn-progress-heading { display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:14px; }
.learn-progress-heading strong { font-weight:650; }
.learn-progress-heading>span { color:var(--learn-nav-muted); font-size:12px; font-variant-numeric:tabular-nums; }
.learn-curriculum progress { display:block; width:100%; height:4px; border:0; border-radius:5px; overflow:hidden; margin:11px 0; appearance:none; background:#dce5dc; accent-color:#356952; }
.learn-curriculum progress::-webkit-progress-bar { background:#dce5dc; }
.learn-curriculum progress::-webkit-progress-value { background:#356952; border-radius:5px; }
.learn-curriculum progress::-moz-progress-bar { background:#356952; }
.member-app .learn-curriculum .learn-progress-note { font-size:12px; color:var(--learn-nav-muted); margin-bottom:18px; line-height:1.7; }
.learn-curriculum nav { display:grid; gap:5px; }
.learn-curriculum nav a { display:flex; align-items:center; gap:9px; padding:12px 8px; border:1px solid transparent; border-radius:11px; text-decoration:none; color:var(--learn-nav-ink); transition:background .15s ease,border-color .15s ease; }
.learn-curriculum nav a[aria-current] { background:#e8efe6; border-color:#cfddce; color:#244f3e; }
.learn-nav-number { display:grid; place-items:center; width:27px; height:27px; flex:none; border:1px solid #d2dcd1; border-radius:8px; font-size:12px; font-variant-numeric:tabular-nums; }
.learn-nav-number[data-learn-read=true] { color:#fff; background:#356952; border-color:#356952; }
.learn-nav-number svg { width:16px; height:16px; }
.learn-curriculum nav strong { display:block; font-size:15px; font-weight:650; line-height:1.6; }
.learn-curriculum nav small { display:block; font-size:12px; font-weight:500; line-height:1.7; color:var(--learn-nav-muted); }
.learn-nav-arrow { margin-left:auto; font-size:19px; opacity:.65; }
.member-app .learn-curriculum .learn-local-note { border-top:1px solid var(--learn-line); padding-top:14px; margin:17px 8px 0; color:var(--learn-nav-muted); font-size:12px; line-height:1.8; }
.learn-content { min-width:0; scroll-margin-top:24px; }
.learn-lesson { --chapter:#34644f; --chapter-wash:#edf3e9; --chapter-line:#cfddc8; padding:27px; background:var(--learn-paper); border:1px solid var(--learn-line); border-radius:17px; }
.learn-lesson[data-tone=blue] { --chapter:#345b84; --chapter-wash:#edf3fa; --chapter-line:#cfddec; }
.learn-lesson[data-tone=amber] { --chapter:#866536; --chapter-wash:#faf4e8; --chapter-line:#e6dac1; }
.learn-lesson[data-tone=plum] { --chapter:#755976; --chapter-wash:#f4eff5; --chapter-line:#e0d3e4; }
.learn-lesson-heading { display:flex; align-items:flex-start; gap:18px; margin-bottom:21px; }
.learn-lesson-heading>div { flex:1; min-width:0; }
.learn-lesson-heading .learn-kicker { color:var(--chapter); font-size:10px; }
.learn-lesson-heading .learn-kicker span { padding:0 0 0 3px; color:var(--learn-muted); }
.member-app .learn-lesson-heading h3 { margin:8px 0 9px; font-size:24px; line-height:1.5; font-weight:720; letter-spacing:-.02em; color:var(--learn-ink); }
.learn-lesson-heading h3:focus { outline:none; }
.learn-lesson-heading h3:focus-visible { outline:2px solid var(--chapter); outline-offset:4px; }
.member-app .learn-lesson-heading p { font-size:13px; color:var(--learn-muted); }
.learn-chapter-icon { display:grid; place-items:center; width:43px; height:43px; flex:none; background:var(--chapter-wash); color:var(--chapter); border:1px solid var(--chapter-line); border-radius:12px; }
.learn-chapter-icon svg { width:23px; height:23px; }
.member-app .learn-takeaway { display:flex; flex-wrap:wrap; align-items:baseline; gap:7px 14px; margin-bottom:23px; padding:12px 15px; border-left:3px solid var(--chapter); border-radius:0 9px 9px 0; background:var(--chapter-wash); }
.learn-takeaway>span { color:var(--chapter); font-size:11px; font-weight:600; white-space:nowrap; }
.learn-takeaway>strong { color:var(--chapter); font-size:14px; line-height:1.75; font-weight:650; }
.member-app .learn-lesson h4 { font-size:16px; line-height:1.65; font-weight:700; margin:0 0 7px; color:var(--learn-ink); }
.learn-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; }
.learn-card-type { min-width:0; padding:0 0 14px; border:1px solid var(--learn-line); border-radius:12px; overflow:hidden; }
.learn-mini-card { position:relative; height:91px; margin:13px 13px 15px; padding:12px; border:1px solid #c7d6c9; border-radius:9px; color:#426754; background:#eaf0e6; }
.learn-mini-card>span { font-size:10px; letter-spacing:.1em; }
.learn-mini-card svg { position:absolute; top:11px; right:11px; width:21px; height:21px; }
.learn-mini-card>small { position:absolute; bottom:12px; left:12px; font-size:10px; font-weight:650; letter-spacing:.1em; color:inherit; }
.learn-card-type[data-card-type="1"] .learn-mini-card { color:#46617b; background:#e8eef3; border-color:#c9d6e2; }
.learn-card-type[data-card-type="2"] .learn-mini-card { color:#84693e; background:#f5edda; border-color:#e2d4b4; }
.member-app .learn-card-type h4,.member-app .learn-card-type p,.learn-card-type .learn-item-detail { padding:0 14px; }
.member-app .learn-card-type p { font-size:13px; line-height:1.85; color:var(--learn-muted); }
.learn-deduct { display:flex; align-items:center; flex-wrap:wrap; gap:5px; margin:14px 14px 10px; padding-top:11px; border-top:1px solid var(--learn-line); font-size:11px; color:#466452; line-height:1.6; }
.learn-deduct svg { width:13px; height:13px; }
.learn-item-detail { display:block; font-size:11px; line-height:1.7; color:var(--learn-ink); }
.learn-path-picker { display:flex; gap:7px; padding:5px; margin-bottom:16px; border-radius:11px; background:var(--learn-wash); border:1px solid var(--learn-line); }
.member-app .learn-path-picker button { flex:1; min-width:0; padding:9px 5px; min-height:40px; background:transparent; border:1px solid transparent; border-radius:8px; color:var(--learn-muted); font-size:13px; white-space:normal; }
.member-app .learn-path-picker button[aria-pressed=true] { color:var(--chapter); border-color:var(--chapter-line); background:var(--learn-paper); box-shadow:0 2px 5px #183e3b09; font-weight:700; }
.learn-path-diagram { padding:21px; background:var(--chapter-wash); border:1px solid var(--chapter-line); border-radius:12px; }
.learn-diagram-label { font-size:10px; letter-spacing:.08em; color:var(--chapter); }
.member-app .learn-path-diagram h4 { font-size:19px; margin:4px 0 20px; color:var(--chapter); }
.learn-flow { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; padding:0; margin:0 0 20px; list-style:none; }
.learn-flow li { position:relative; padding:14px 12px; background:var(--learn-paper); border:1px solid var(--chapter-line); border-radius:10px; }
.learn-flow li+li::before { position:absolute; left:-16px; top:36px; content:'→'; color:var(--chapter); font-size:13px; }
.learn-flow li>span { display:block; font-size:10px; color:var(--chapter); margin-bottom:6px; }
.learn-flow li>strong { font-size:13px; line-height:1.7; font-weight:600; }
.member-app .learn-path-diagram p { font-size:14px; color:var(--learn-muted); }
.learn-path-detail { display:block; margin-top:12px; color:var(--chapter); font-size:13px; line-height:1.7; }
.learn-check-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 25px; }
.learn-check-item { display:flex; align-items:flex-start; gap:12px; border-top:1px solid var(--learn-line); padding:19px 0; }
.learn-item-number { display:grid; place-items:center; width:27px; height:27px; flex:none; color:var(--chapter); background:var(--chapter-wash); border:1px solid var(--chapter-line); border-radius:7px; font-size:10px; font-weight:650; }
.member-app .learn-check-item p { font-size:14px; color:var(--learn-muted); }
.learn-money-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; margin-top:12px; }
.learn-money-grid>section { position:relative; min-width:0; padding:19px 15px; border:1px solid var(--chapter-line); border-radius:12px; background:var(--chapter-wash); }
.learn-money-number { display:block; color:var(--chapter); font-size:10px; margin-bottom:19px; }
.learn-money-grid small { display:block; font-size:10px; line-height:1.7; color:var(--learn-muted); }
.member-app .learn-money-grid h4 { margin:5px 0 12px; }
.learn-money-value { display:block; font-size:20px; font-weight:700; line-height:1.5; color:var(--chapter); margin-bottom:12px; }
.member-app .learn-money-grid p { font-size:13px; color:var(--learn-muted); line-height:1.8; }
.learn-state-flow { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); list-style:none; gap:12px; padding:19px 0 0; margin:18px 0 0; border-top:1px solid var(--learn-line); }
.learn-state-flow li { display:flex; gap:8px; align-items:flex-start; }
.learn-state-flow li>span { color:var(--chapter); font-size:10px; padding-top:3px; }
.learn-state-flow strong { display:block; font-size:12px; line-height:1.8; font-weight:650; }
.learn-state-flow small { display:block; font-size:10px; color:var(--learn-muted); line-height:1.8; }
.learn-workflow { list-style:none; padding:0; margin:0; }
.learn-workflow li { display:flex; align-items:flex-start; gap:16px; padding:19px 0; border-top:1px solid var(--learn-line); }
.learn-workflow li:first-child { border-top:0; padding-top:0; }
.learn-workflow .learn-item-number { width:32px; height:32px; }
.member-app .learn-workflow p { font-size:14px; color:var(--learn-muted); }
.learn-action { display:inline-flex; align-items:center; justify-content:space-between; gap:12px; font-size:13px; line-height:1.7; font-weight:650; text-decoration:none; color:var(--chapter); }
.learn-action svg { width:16px; height:16px; }
.learn-workflow .learn-action { font-size:12px; margin-top:10px; }
.learn-note { display:flex; align-items:flex-start; gap:12px; margin:24px 0; padding:17px; border-radius:11px; background:var(--learn-wash); border:1px solid var(--learn-line); }
.learn-note>svg { width:17px; height:17px; color:var(--chapter); margin-top:4px; }
.member-app .learn-note h4 { font-size:14px; color:var(--chapter); margin:0 0 6px; }
.member-app .learn-note p { font-size:13px; color:var(--learn-muted); line-height:1.85; }
.learn-quiz { padding-top:22px; margin-top:24px; border-top:1px solid var(--learn-line); }
.learn-small-heading { display:flex; align-items:center; gap:7px; font-size:11px; color:var(--chapter); font-weight:650; }
.learn-small-heading svg { width:15px; height:15px; }
.learn-quiz fieldset { min-width:0; padding:0; margin:14px 0 0; border:0; }
.learn-quiz legend { padding:0; margin:0 0 12px; font-size:15px; line-height:1.8; font-weight:650; color:var(--learn-ink); }
.learn-quiz-options { display:grid; gap:9px; }
.member-app .learn-quiz-options button { display:flex; align-items:center; gap:12px; width:100%; min-height:46px; padding:10px 13px; border:1px solid var(--learn-line); border-radius:9px; background:transparent; text-align:left; font-size:13px; color:var(--learn-muted); line-height:1.7; }
.learn-quiz-options button>span { display:grid; place-items:center; width:23px; height:23px; border:1px solid var(--learn-line); border-radius:6px; font-size:10px; flex:none; }
.member-app .learn-quiz-options button.is-correct { background:#edf4e9; border-color:#a6bf9e; color:#355c3f; }
.member-app .learn-quiz-options button.is-retry { background:#fbf3e6; border-color:#d7c39c; color:#775c30; }
.learn-answer { margin:12px 0 0; padding:13px; border-radius:9px; background:var(--chapter-wash); color:var(--chapter); }
.learn-answer>strong { font-size:12px; }
.member-app .learn-answer p { font-size:13px; line-height:1.8; margin-top:4px; color:var(--learn-muted); }
.learn-practice { display:flex; align-items:center; justify-content:space-between; gap:15px; flex-wrap:wrap; border-top:1px solid var(--learn-line); border-bottom:1px solid var(--learn-line); margin-top:24px; padding:17px 0; }
.learn-practice>span { font-size:11px; color:var(--learn-muted); }
.learn-sources { margin-top:18px; font-size:11px; color:var(--learn-muted); }
.learn-sources summary { cursor:pointer; width:fit-content; padding:6px 0; }
.learn-sources summary>span { padding:1px 5px; margin-left:4px; border-radius:4px; background:var(--learn-wash); font-variant-numeric:tabular-nums; }
.learn-sources ul { padding-left:20px; margin:8px 0 0; }
.learn-sources a { color:var(--learn-muted); }
.member-app .learn-lesson-footer { display:flex; align-items:center; gap:16px; justify-content:space-between; margin:23px 0 0; padding:0; max-width:none; font-size:11px; color:var(--learn-muted); }
.learn-lesson-footer>a { text-decoration:none; color:var(--learn-muted); min-height:42px; display:flex; align-items:center; }
.learn-lesson-footer>span { margin-left:auto; font-variant-numeric:tabular-nums; }
.member-app .learn-complete { display:flex; gap:10px; align-items:center; padding:11px 15px; min-height:42px; color:#fffefa; background:var(--chapter); border:1px solid var(--chapter); border-radius:9px; font-size:12px; line-height:1.6; }
.learn-complete svg { width:15px; height:15px; }
.member-app .learn-complete:disabled { opacity:.65; cursor:default; }
.learn-finished { display:flex; align-items:center; gap:10px; margin-top:18px; padding:12px; background:var(--chapter-wash); border-radius:9px; font-size:12px; color:var(--chapter); }
.learn-finished svg { width:16px; height:16px; }
.member-app .learning-page .learn-content-note { font-size:11px; color:var(--learn-muted); margin:20px 0 0; padding-left:231px; }
.learn-loading { min-height:230px; display:grid; align-content:center; justify-items:center; gap:10px; color:var(--muted); border:1px solid var(--line); border-radius:16px; padding:25px; }
.learning-page a:focus-visible,.learning-page button:focus-visible,.learning-page summary:focus-visible { outline:2px solid #508e7b; outline-offset:4px; }
@media(hover:hover) { .learn-curriculum nav a:hover { background:var(--learn-wash); border-color:var(--learn-line); } .member-app .learn-quiz-options button:hover { border-color:var(--chapter); } .learn-action:hover { text-decoration:underline; } }
@media(max-width:1390px) and (min-width:1100px) { .learn-layout { grid-template-columns:180px minmax(0,1fr); gap:18px; } .learn-lesson { padding:23px; } .learn-card-grid { gap:10px; } .learn-hero { grid-template-columns:minmax(0,1fr) 245px; padding:28px; } .member-app .learning-page .learn-content-note { padding-left:198px; } }
@media(max-width:1250px) { .learn-card-grid { grid-template-columns:minmax(0,1fr); } .learn-card-type { display:grid; grid-template-columns:108px minmax(0,1fr); padding:15px; column-gap:16px; } .learn-mini-card { grid-column:1; grid-row:1/5; margin:0; height:76px; } .member-app .learn-card-type h4,.member-app .learn-card-type p,.learn-card-type .learn-item-detail { grid-column:2; padding:0; } .learn-deduct { grid-column:2; margin:9px 0 7px; padding-top:9px; } }
@media(max-width:850px) { .learn-layout { grid-template-columns:minmax(0,1fr); gap:17px; margin-top:21px; } .learn-curriculum { position:static; } .learn-curriculum nav { display:flex; gap:7px; overflow-x:auto; padding:3px 2px 9px; scrollbar-width:thin; scroll-padding-inline:4px; } .learn-curriculum nav a { flex:none; min-width:135px; padding:10px; border-color:var(--learn-line); background:var(--learn-paper); } .learn-curriculum nav small,.learn-nav-arrow,.member-app .learn-curriculum .learn-progress-note,.member-app .learn-curriculum .learn-local-note { display:none; } .learn-progress-heading { font-size:13px; } .learn-curriculum progress { margin:9px 0; } .learn-hero { grid-template-columns:minmax(0,1fr) 215px; padding:26px; } .learn-art { transform:scale(.85); transform-origin:right center; margin-left:-20px; } .member-app .learning-page .learn-content-note { padding-left:0; } }
@media(max-width:600px) { .member-app .learn-heading { margin-bottom:17px; gap:10px; align-items:center; } .member-app .learn-heading h2 { font-size:24px; } .learning-page .learn-heading .learn-kicker { font-size:8px; letter-spacing:.12em; } .learn-kicker span { padding:0 4px; } .member-app .learn-tour { font-size:10px; gap:5px; padding:7px 9px; max-width:125px; line-height:1.7; min-height:38px; } .learn-tour svg { width:14px; height:14px; } .learn-hero { display:block; padding:24px 22px; border-radius:15px; } .learn-hero-copy { max-width:100%; } .learn-hero-tag { font-size:8px; letter-spacing:.17em; } .member-app .learn-hero h3 { font-size:27px; line-height:1.5; margin:11px 0 12px; } .member-app .learn-hero p { font-size:12px; max-width:35ch; } .learn-hero-meta { margin-top:17px; gap:8px; font-size:10px; } .learn-art { display:none; } .learn-layout { gap:12px; margin-top:18px; } .learn-curriculum nav a { min-width:145px; padding:9px 10px; gap:9px; } .learn-curriculum nav strong { font-size:13px; } .learn-nav-number { width:25px; height:25px; } .learn-lesson { padding:19px 17px; border-radius:13px; } .learn-lesson-heading { gap:12px; margin-bottom:17px; } .member-app .learn-lesson-heading h3 { font-size:21px; margin:7px 0 8px; } .member-app .learn-lesson-heading p { font-size:12px; } .learn-chapter-icon { width:35px; height:35px; border-radius:10px; } .learn-chapter-icon svg { width:20px; height:20px; } .member-app .learn-takeaway { padding:11px 12px; gap:4px; margin-bottom:19px; } .learn-takeaway>span { width:100%; font-size:10px; } .learn-takeaway>strong { font-size:13px; } .learn-card-type { display:block; padding:14px; } .learn-mini-card { width:150px; height:80px; margin:0 0 13px; } .member-app .learn-card-type h4 { font-size:16px; } .member-app .learn-card-type p { font-size:14px; } .learn-deduct { margin-top:12px; font-size:12px; } .learn-item-detail { font-size:12px; } .learn-path-picker { gap:2px; padding:3px; } .member-app .learn-path-picker button { font-size:11px; min-height:41px; padding:8px 3px; } .learn-path-diagram { padding:16px 13px; } .learn-flow { display:flex; flex-direction:column; gap:17px; margin-bottom:17px; } .learn-flow li { padding:11px 13px; display:flex; align-items:center; gap:10px; } .learn-flow li>span { margin:0; } .learn-flow li+li::before { content:'↓'; left:calc(50% - 4px); top:-20px; } .learn-check-grid { grid-template-columns:minmax(0,1fr); gap:0; } .learn-check-item { padding:16px 0; gap:10px; } .learn-money-grid { grid-template-columns:minmax(0,1fr); gap:10px; } .learn-money-grid>section { padding:17px; } .learn-money-number { margin-bottom:12px; } .learn-money-value { font-size:20px; } .learn-state-flow { grid-template-columns:minmax(0,1fr); gap:12px; } .learn-state-flow strong { font-size:13px; } .learn-state-flow small { font-size:12px; } .learn-workflow li { gap:12px; padding:17px 0; } .learn-workflow .learn-item-number { width:27px; height:27px; } .learn-note { gap:10px; padding:14px 12px; margin:20px 0; } .member-app .learn-note h4 { font-size:14px; } .member-app .learn-note p { font-size:13px; } .learn-quiz { padding-top:19px; margin-top:20px; } .learn-quiz legend { font-size:14px; } .member-app .learn-quiz-options button { font-size:13px; } .learn-practice { padding:15px 0; gap:8px; } .learn-practice>span { width:100%; } .learn-action { font-size:13px; } .member-app .learn-lesson-footer { flex-wrap:wrap; gap:12px; margin-top:18px; } .member-app .learn-complete { min-height:44px; padding:10px 12px; } .member-app .learning-page .learn-content-note { font-size:10px; } }
@media(prefers-reduced-motion:reduce) { .learning-page * { transition:none!important; scroll-behavior:auto!important; } }
html[data-theme="night"] .learning-page { --learn-ink:#e2e7e2; --learn-muted:#a6b5ad; --learn-line:#374f44; --learn-paper:#1b3028; --learn-wash:#223b30; }
html[data-theme="night"] .learn-lesson { --chapter:#a6c7ad; --chapter-wash:#283e30; --chapter-line:#4c6952; }
html[data-theme="night"] .learn-lesson[data-tone="blue"] { --chapter:#acc7e4; --chapter-wash:#263b4b; --chapter-line:#4d6881; }
html[data-theme="night"] .learn-lesson[data-tone="amber"] { --chapter:#dfc38c; --chapter-wash:#3c3525; --chapter-line:#75633e; }
html[data-theme="night"] .learn-lesson[data-tone="plum"] { --chapter:#d1b4d8; --chapter-wash:#3b2e40; --chapter-line:#735d7d; }
html[data-theme="night"] .learn-curriculum nav a[aria-current] { color:#c7dbbc; background:#2b4232; border-color:#58714d; }
html[data-theme="night"] .learn-deduct { color:#a8c9b2; }
html[data-theme="night"] .learn-quiz-options button.is-correct { color:#c2dcaf; background:#2c452d; border-color:#66815a; }
html[data-theme="night"] .learn-quiz-options button.is-retry { color:#e4c78f; background:#443a27; border-color:#887044; }
html[data-theme="night"] .member-app .learn-complete { background:#35644e; border-color:#6d9478; color:#f4f5e9; }

/* Practice collection: compact controls, explicit teaching context, same type scale. */
.learn-collections { display:flex; align-items:center; gap:5px; width:fit-content; max-width:100%; padding:4px; margin:0 0 21px; border:1px solid var(--learn-line); border-radius:11px; background:var(--learn-paper); }
.learn-collections a { display:flex; align-items:center; gap:9px; min-height:39px; padding:8px 16px; color:var(--learn-muted); font-size:13px; font-weight:600; line-height:1.5; border:1px solid transparent; border-radius:8px; text-decoration:none; }
.learn-collections a[aria-current] { background:#214e40; color:#fffefa; border-color:#214e40; }
.learn-collections a>span:last-child { display:inline-grid; place-items:center; min-width:19px; height:19px; border-radius:5px; background:#7e9e8521; font-size:10px; font-variant-numeric:tabular-nums; }
.learn-collections a[aria-current]>span:last-child { background:#ffffff26; }
.learning-page[data-learning-track="practice"] .learn-hero { padding-block:24px; }
.learning-page[data-learning-track="practice"] .learn-art { min-height:174px; transform:scale(.86); transform-origin:center; }
.member-app .learning-page[data-learning-track="practice"] .learn-hero h3 { font-size:30px; }
.learn-lab { min-width:0; }
.learn-lab-kicker { display:block; margin:0 0 9px; color:var(--chapter); font-size:10px; line-height:1.7; font-weight:650; letter-spacing:.08em; }
.learn-scenario-tabs { display:flex; gap:6px; padding:4px; margin-bottom:16px; border:1px solid var(--learn-line); border-radius:10px; background:var(--learn-wash); }
.member-app .learn-scenario-tabs button { flex:1; min-width:0; min-height:41px; padding:8px 5px; border:1px solid transparent; border-radius:7px; color:var(--learn-muted); background:transparent; font-size:12px; line-height:1.5; }
.member-app .learn-scenario-tabs button[aria-pressed="true"] { background:var(--learn-paper); border-color:var(--chapter-line); color:var(--chapter); font-weight:700; box-shadow:0 2px 5px #254e3d0a; }
.learn-scenario { padding:21px; border:1px solid var(--chapter-line); border-radius:12px; background:var(--chapter-wash); }
.member-app .learn-scenario>h4 { font-size:18px; color:var(--chapter); }
.learn-scenario-flow { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); list-style:none; padding:0; gap:16px; margin:20px 0 16px; }
.learn-scenario-flow li { position:relative; padding:13px 11px; border:1px solid var(--chapter-line); border-radius:9px; background:var(--learn-paper); min-width:0; }
.learn-scenario-flow li+li::before { content:'→'; position:absolute; top:32px; left:-14px; color:var(--chapter); font-size:12px; }
.learn-scenario-flow li>span { display:block; margin-bottom:7px; color:var(--chapter); font-size:10px; }
.learn-scenario-flow li>strong { display:block; font-size:13px; font-weight:650; line-height:1.7; }
.member-app p.learn-scenario-note { font-size:12px; color:var(--learn-muted); }
.learn-scenario-checks>section { display:flex; align-items:flex-start; gap:12px; padding:18px 0; border-bottom:1px solid var(--learn-line); }
.member-app .learn-scenario-checks h4 { font-size:16px; margin-bottom:6px; }
.member-app .learn-scenario-checks p { font-size:14px; color:var(--learn-muted); }
.learn-lab-question { display:flex; align-items:flex-start; gap:11px; padding:15px; margin-top:18px; border-left:3px solid var(--chapter); border-radius:0 9px 9px 0; background:var(--chapter-wash); color:var(--chapter); }
.learn-lab-question>svg { width:17px; height:17px; margin-top:3px; }
.learn-lab-question span { display:block; font-size:10px; margin-bottom:4px; }
.learn-lab-question strong { display:block; font-size:13px; line-height:1.8; font-weight:650; }
.learn-demo-notice { display:flex; align-items:flex-start; gap:10px; padding:15px; border:1px solid var(--chapter-line); border-radius:10px; background:var(--chapter-wash); color:var(--chapter); }
.learn-demo-notice>svg { width:18px; height:18px; margin-top:3px; }
.member-app .learn-demo-notice h4 { font-size:14px; margin-bottom:5px; color:var(--chapter); }
.member-app .learn-demo-notice p { font-size:12px; color:var(--learn-muted); }
.learn-demo-rules { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:17px; padding:18px 0; margin-bottom:3px; }
.member-app .learn-demo-rules h4 { font-size:14px; color:var(--chapter); }
.member-app .learn-demo-rules p { font-size:12px; color:var(--learn-muted); }
.learn-case-picker { padding:17px 0; border-top:1px solid var(--learn-line); border-bottom:1px solid var(--learn-line); }
.learn-case-picker label { margin:0 0 9px; font-size:12px; color:var(--learn-muted); }
.learn-case-picker>div { display:grid; grid-template-columns:36px minmax(0,1fr) 36px; align-items:stretch; gap:7px; }
.member-app .learn-case-picker button { display:grid; place-items:center; min-height:43px; padding:0; color:var(--chapter); font-size:22px; border-radius:8px; border:1px solid var(--chapter-line); background:var(--chapter-wash); }
.member-app .learn-case-picker select { width:100%; min-width:0; font-size:13px; padding:10px; border-color:var(--chapter-line); border-radius:8px; color:var(--learn-ink); background:var(--learn-paper); }
.member-app .learn-case-picker button:disabled { opacity:.35; cursor:default; }
.learn-reward-example { margin-top:22px; }
.member-app .learn-reward-example>h4 { font-size:17px; }
.learn-example-inputs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; padding:14px 0; margin:12px 0 0; border-block:1px solid var(--learn-line); }
.learn-example-inputs dt { color:var(--learn-muted); font-size:10px; line-height:1.7; }
.learn-example-inputs dd { margin:5px 0 0; font-size:14px; color:var(--learn-ink); font-variant-numeric:tabular-nums; }
.member-app p.learn-threshold-state { display:flex; align-items:center; gap:7px; margin:13px 0; font-size:11px; color:var(--chapter); }
.learn-threshold-state svg { width:15px; height:15px; }
.learn-reward-results { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.learn-reward-results>section { min-width:0; padding:16px 13px; border:1px solid var(--chapter-line); border-radius:10px; background:var(--chapter-wash); }
.learn-reward-results>section>span { display:block; margin-bottom:9px; font-size:11px; line-height:1.7; color:var(--learn-muted); }
.learn-reward-results strong { display:block; font-size:22px; font-weight:700; line-height:1.4; color:var(--chapter); font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.member-app p.learn-example-explanation { padding:15px 0; font-size:13px; color:var(--learn-muted); }
.learn-budgets { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:2px; }
.learn-budget { min-width:0; padding:15px 13px; border:1px solid var(--learn-line); border-radius:10px; }
.learn-budget-heading { display:flex; align-items:baseline; justify-content:space-between; gap:6px; flex-wrap:wrap; }
.member-app .learn-budget-heading h4 { font-size:13px; margin-bottom:10px; }
.learn-budget-heading>span { color:var(--learn-muted); font-size:10px; }
.learn-budget-bar { display:flex; height:8px; overflow:hidden; margin:4px 0 13px; border-radius:5px; background:var(--learn-wash); }
.learn-budget-used { display:block; height:100%; background:#b4bfb7; }
.learn-budget-added { display:block; height:100%; background:var(--chapter); }
.learn-budget-legend { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; margin:0; }
.learn-budget-legend dt { color:var(--learn-muted); font-size:9px; line-height:1.8; }
.learn-budget-legend dd { margin:4px 0 0; font-size:11px; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.learn-diagnostic { padding:19px; border:1px solid var(--chapter-line); border-radius:12px; background:var(--chapter-wash); }
.learn-diagnostic-top { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.learn-diagnostic-top .learn-lab-kicker { margin:0; }
.member-app .learn-diagnostic-top button { padding:5px 0; min-height:30px; font-size:11px; border:0; background:transparent; color:var(--chapter); text-decoration:underline; text-underline-offset:3px; }
.learn-diagnostic-trail { display:flex; gap:6px; flex-wrap:wrap; list-style:none; padding:0; margin:16px 0 20px; }
.learn-diagnostic-trail li { padding:4px 7px; font-size:10px; line-height:1.8; color:var(--chapter); border:1px solid var(--chapter-line); border-radius:5px; }
.learn-diagnostic-question { margin-top:20px; }
.learn-diagnostic-step { color:var(--learn-muted); font-size:10px; }
.member-app .learn-diagnostic-question h4 { margin:9px 0 15px; font-size:17px; }
.learn-diagnostic-choices { display:grid; gap:9px; }
.member-app .learn-diagnostic-choices button { display:flex; align-items:center; justify-content:space-between; gap:15px; min-height:48px; padding:13px 15px; text-align:left; line-height:1.7; font-size:13px; border:1px solid var(--chapter-line); border-radius:9px; color:var(--learn-ink); background:var(--learn-paper); }
.learn-diagnostic-choices button svg { width:16px; height:16px; color:var(--chapter); }
.learn-diagnostic-result { margin-top:21px; }
.learn-result-icon { display:grid; place-items:center; width:32px; height:32px; color:var(--chapter); border:1px solid var(--chapter-line); border-radius:9px; background:var(--learn-paper); margin-bottom:13px; }
.member-app .learn-diagnostic-result h4 { font-size:17px; color:var(--chapter); }
.learn-diagnostic-result>ol { padding-left:20px; margin:15px 0; }
.learn-diagnostic-result>ol>li { margin:9px 0; font-size:14px; line-height:1.85; color:var(--learn-muted); }
.learn-diagnostic-result>.learn-action { font-size:12px; }
.member-app .learn-diagnostic-back { padding:7px 0; min-height:36px; margin-top:18px; border:0; background:transparent; color:var(--chapter); font-size:11px; }
.learn-template { padding-top:15px; margin-top:18px; border-top:1px solid var(--chapter-line); }
.learn-template summary { font-size:12px; color:var(--chapter); cursor:pointer; padding:5px 0; }
.member-app .learn-template p { margin:10px 0; color:var(--learn-muted); font-size:12px; }
.member-app .learn-template textarea { display:block; width:100%; min-height:270px; padding:12px; color:var(--learn-ink); background:var(--learn-paper); border:1px solid var(--chapter-line); font:12px/1.8 var(--font-body); resize:vertical; }
.learn-template>div { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-top:11px; }
.member-app .learn-template button { padding:8px 13px; min-height:39px; font-size:12px; border-color:var(--chapter); background:var(--learn-paper); color:var(--chapter); }
.learn-template [role="status"] { color:var(--chapter); font-size:11px; line-height:1.8; }
.member-app p.learn-checked-on { color:var(--learn-muted); font-size:10px; margin-top:10px; }
.learn-diagnostic-focus:focus { outline:none; }
.learn-diagnostic-focus:focus-visible { outline:2px solid var(--chapter); outline-offset:4px; }
@media(max-width:1250px) { .learn-scenario-flow { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; } .learn-scenario-flow li+li::before { content:none; } .learn-demo-rules { grid-template-columns:minmax(0,1fr); gap:11px; } .learn-demo-rules>section { border-left:2px solid var(--chapter-line); padding-left:12px; } }
@media(max-width:600px) {
 .learn-collections { width:100%; margin-bottom:17px; }.learn-collections a { flex:1; justify-content:center; padding:8px 10px; min-height:42px; font-size:12px; }
 .member-app .learning-page[data-learning-track="practice"] .learn-hero h3 { font-size:26px; }.learning-page[data-learning-track="practice"] .learn-hero { padding:22px; }
 .learn-scenario-tabs { gap:2px; }.member-app .learn-scenario-tabs button { min-height:44px; padding:8px 3px; font-size:10px; }
 .learn-scenario { padding:16px 13px; }.member-app .learn-scenario>h4 { font-size:16px; }
 .learn-scenario-flow { grid-template-columns:minmax(0,1fr); gap:8px; margin-block:16px; }.learn-scenario-flow li { display:flex; align-items:center; gap:12px; padding:10px 12px; }.learn-scenario-flow li>span { margin:0; flex:none; }.learn-scenario-flow li>strong { font-size:13px; }
 .learn-scenario-checks>section { gap:10px; padding:16px 0; }.member-app .learn-scenario-checks h4 { font-size:15px; }.learn-lab-question { padding:12px; gap:9px; }
 .learn-demo-notice { padding:13px 11px; gap:8px; }.member-app .learn-demo-notice p { font-size:12px; }
 .learn-case-picker>div { grid-template-columns:34px minmax(0,1fr) 34px; gap:5px; }.member-app .learn-case-picker select { font-size:11px; padding-inline:5px; }.member-app .learn-case-picker button { min-height:44px; }
 .member-app .learn-reward-example>h4 { font-size:16px; }.learn-example-inputs { grid-template-columns:minmax(0,1fr); gap:8px; }.learn-example-inputs>div { display:flex; justify-content:space-between; align-items:baseline; gap:10px; }.learn-example-inputs dd { margin:0; font-size:13px; }
 .learn-reward-results { grid-template-columns:minmax(0,1fr); gap:8px; }.learn-reward-results>section { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:13px; }.learn-reward-results>section>span { margin:0; font-size:11px; }.learn-reward-results strong { font-size:20px; }
 .learn-budgets { grid-template-columns:minmax(0,1fr); gap:10px; }.learn-budget-legend dt { font-size:10px; }.learn-budget-legend dd { font-size:12px; }
 .learn-diagnostic { padding:16px 13px; }.member-app .learn-diagnostic-question h4,.member-app .learn-diagnostic-result h4 { font-size:16px; }.member-app .learn-diagnostic-choices button { padding:12px; font-size:13px; min-height:48px; }
 .member-app .learn-diagnostic-top button,.member-app .learn-diagnostic-back { min-height:40px; }.member-app .learn-template button { min-height:44px; }
}
html[data-theme="night"] .learn-collections a[aria-current] { background:#315442; border-color:#7c9c7d; }
html[data-theme="night"] .learn-budget-used { background:#82958a; }
/* Longer translated header labels also need room on small tablets. */
@media(min-width:761px) and (max-width:1000px) {
 .member-app[data-workspace-view="learn"] .member-header { flex-wrap:wrap; gap:12px 18px; }
 .member-app[data-workspace-view="learn"] .member-header .header-actions { flex-wrap:wrap; min-width:0; margin-left:auto; gap:10px; }
}

html[data-theme="night"] .learn-curriculum { --learn-nav-ink:#e1ece2; --learn-nav-muted:#b9cbbd; }
html[data-theme="night"] .learn-curriculum nav a[aria-current] { color:#e0eed8; }

.planning-tabs{display:flex;gap:6px;margin:0 0 22px;border-bottom:1px solid var(--line);padding-bottom:10px}
.planning-tabs button{border:0;background:transparent;color:var(--muted);font-size:14px;padding:8px 14px;border-radius:8px}
.planning-tabs button[aria-selected=true]{background:#23685b10;color:var(--green);font-weight:700}
.planning-tabs span{display:inline-block;margin-left:5px;font-size:11px;padding:1px 5px;background:#23685b10;border-radius:4px}
.batch-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:14px;padding:18px;margin-bottom:14px}
.batch-toolbar label{flex:1;min-width:180px;font-size:12px;color:var(--muted)}
.batch-toolbar input{margin-top:6px}.batch-toolbar .actions{margin:0;gap:6px}.batch-toolbar button{font-size:12px;padding:8px 12px}
#batch-save-status{font-size:11px;color:var(--muted)}
.batch-totals{display:flex;gap:14px;align-items:baseline;flex-wrap:wrap;margin:18px 0;padding:16px;border:1px solid var(--line);border-radius:12px;background:#23685b08}
.batch-totals>span,.batch-totals>small{font-size:12px;color:var(--muted)}.batch-totals strong{font-size:24px;color:var(--green)}.batch-totals strong small{font-size:12px}
.batch-rows{display:grid;gap:12px;margin-bottom:24px}.batch-row{padding:18px}.batch-row-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.batch-row h3{font-size:17px;margin:6px 0;overflow-wrap:anywhere}.batch-row h3 span{display:inline-block;margin-left:10px;font-size:16px}.batch-row .eyebrow{font-size:10px;letter-spacing:.04em}.batch-row>p{font-size:12px;margin:8px 0}.batch-row .pill{font-size:10px;white-space:normal}.batch-row .actions{gap:6px;margin-top:12px}.batch-row .actions button,.batch-row .actions a{font-size:12px;padding:7px 10px;min-height:34px}.batch-row-reward{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--green)}.batch-row-reward span{color:var(--muted)}
#batch-options .purchase-option{margin:12px 0}#batch-options .purchase-confirmation .check{font-size:13px}#batch-options h3{font-size:18px}#batch-saved{padding:18px;margin-top:20px}#batch-saved summary{cursor:pointer;font-size:14px}.batch-saved-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.batch-saved-row strong{font-size:13px;overflow-wrap:anywhere}.batch-saved-row small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.batch-saved-row button{flex:none;font-size:12px}
@media(max-width:700px){.batch-toolbar{padding:12px;gap:10px}.batch-toolbar .actions{flex:1 0 100%;flex-wrap:wrap}.batch-row{padding:12px}.batch-row-head{flex-direction:column;gap:6px}.batch-row h3 span{display:block;margin:5px 0 0}.batch-totals{gap:10px;padding:12px}.batch-totals>small{flex-basis:100%}#batch-options .purchase-option{padding:14px}.batch-row .actions{flex-wrap:wrap}}

.svip-contact-teaser{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px;padding:19px 22px;border:1px solid var(--border,var(--line,#d0ddd3));border-radius:14px;background:color-mix(in srgb,var(--green,#226450) 5%,var(--surface,#fff))}
.svip-contact-teaser span{display:inline-block;font:10px var(--tech-font,monospace);color:#937538;border:1px solid #c9b37e;border-radius:5px;padding:2px 5px;margin-right:8px}.svip-contact-teaser strong{font-size:14px}.svip-contact-teaser p{font-size:12px;color:var(--muted,#678178);margin:8px 0 0}.svip-contact-teaser a{flex:none;text-decoration:none}
.activation-layout.has-svip-contact{align-items:start}.has-svip-contact>.activation-intro{display:none}.activation-contact{margin:0!important;min-width:0;text-align:left}.activation-contact[hidden]{display:none}.member-app .activation-contact h2{font-size:27px;margin:14px 0}.activation-contact-lead{font-size:14px;color:var(--muted,#678178);line-height:1.8;margin:0 0 20px;max-width:420px}
#svip-message-form{display:grid;gap:16px}#svip-message-form label{display:block;font-size:14px;line-height:1.7;margin:0}#svip-message-form input,#svip-message-form textarea{display:block;width:100%;margin-top:6px;padding:11px 12px;font-family:inherit;font-size:15px;line-height:1.65;border:1px solid var(--line,#d0ddd3);border-radius:10px;background:var(--surface,#fff);color:var(--ink,#244c43);box-sizing:border-box}#svip-message-form textarea{resize:vertical;min-height:130px}#svip-message-form .optional{margin-left:6px;font-size:12px;color:var(--muted,#678178);font-weight:400}#svip-message-form small{display:block;margin-top:6px;font-size:12px;line-height:1.8;color:var(--muted,#678178)}#svip-message-form .svip-message-note{margin:0}#svip-message-form button{min-height:44px;width:100%;margin:0}
.svip-contact-status{font-size:14px;line-height:1.7;color:var(--green,#246050);min-height:24px;margin:14px 0 0}.svip-contact-status.error,#contact-admin-status.error{color:var(--danger,#a14d46)}.activation-contact :is(button,input,textarea):focus-visible{outline:2px solid #ba975b;outline-offset:3px}
.message-admin-toolbar{display:flex;gap:12px;align-items:end;max-width:260px}.message-admin-toolbar label{width:100%}#contact-admin-status{font-size:14px;line-height:1.7;min-height:24px}.message-admin-item{border:1px solid var(--line,#d0ddd3);border-radius:12px;padding:18px;margin:14px 0;min-width:0}.message-admin-heading{display:flex;align-items:start;justify-content:space-between;gap:12px}.message-admin-heading strong{font-size:17px;overflow-wrap:anywhere}.message-admin-item .message-admin-created{font-size:12px;color:var(--muted,#678178);margin:8px 0 14px}.message-admin-reply{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px;font-size:14px;line-height:1.7}.message-admin-reply dt{color:var(--muted,#678178)}.message-admin-reply dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.message-admin-text{font-size:16px;line-height:1.85;margin:0 0 16px;white-space:pre-wrap;overflow-wrap:anywhere}.message-admin-item .actions{margin:0}.message-admin-pages{margin-top:18px}
.svip-contact-teaser a{transition:transform .18s ease,box-shadow .18s ease}.svip-contact-teaser a:hover{transform:translateY(-2px);box-shadow:0 5px 14px #315b431a}.svip-contact-teaser a:active{transform:translateY(0)}
@media(max-width:800px){.activation-layout.has-svip-contact{grid-template-columns:minmax(0,1fr);gap:20px}.has-svip-contact>.activation-card{order:1}.has-svip-contact>.activation-contact{order:2}}
@media(max-width:640px){.svip-contact-teaser{align-items:stretch;flex-direction:column;padding:16px;gap:12px}.svip-contact-teaser a{width:100%;font-size:12px;text-align:center}.member-app .activation-contact h2{font-size:24px}.message-admin-item{padding:14px}}
@media(prefers-reduced-motion:reduce){.svip-contact-teaser a{transition:none}}

[data-language-switch] { display: inline-flex; flex: 0 0 auto; align-items: center; }
.language-switch {
  display: inline-flex;
  gap: 2px;
  padding: 3px;
  border: 1px solid var(--line, #d4dfd7);
  border-radius: 999px;
  background: var(--paper, #f7f8f4);
  color: var(--ink, #243d33);
}
.language-switch button {
  display: inline-grid;
  place-items: center;
  min-width: 32px;
  min-height: 34px;
  padding: 5px 8px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: inherit;
  font: 600 12px/1.1 var(--font-body, sans-serif);
  cursor: pointer;
  white-space: nowrap;
}
.language-switch button[aria-pressed="true"] { background: var(--green, #24614a); color: var(--bg, #fff); }
.language-switch button:focus-visible { outline: 2px solid var(--green, #24614a); outline-offset: 3px; }
@media (pointer: coarse) { .language-switch button { min-height: 40px; min-width: 36px; } }
@media (min-width: 601px) and (max-width: 1100px) {
  .home-page .site-header { flex-wrap: wrap; }
  .home-page .site-header > .primary-nav {
    order: 3;
    flex-basis: 100%;
    min-width: 0;
    width: 100%;
    justify-content: center;
    flex-wrap: wrap;
  }
  .home-page .site-header > .header-tools {
    min-width: 0;
    margin-left: auto;
    flex-wrap: wrap;
  }
}
@media (min-width: 681px) and (max-width: 1100px) {
  .network-page .site-header { flex-wrap: wrap; }
  .network-page .site-header > .primary-nav {
    order: 3;
    flex-basis: 100%;
    min-width: 0;
    width: 100%;
    justify-content: center;
    flex-wrap: wrap;
  }
  .network-page .site-header > [data-language-switch] { margin-left: auto; }
}
@media (max-width: 600px) {
  /* Keep the language, SVIP and existing controls reachable. Longer labels
     use a separate toolbar row instead of stretching the viewport. */
  .home-page .site-header { flex-wrap: wrap; }
  .home-page .site-header > .brand { flex-basis: 100%; min-width: 0; }
  .home-page .site-header > .header-tools {
    flex: 1 0 100%;
    min-width: 0;
    margin-left: 0;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  .home-page .primary-nav { align-items: stretch; }
  .home-page .primary-nav a {
    display: flex;
    flex: 1 1 0;
    min-width: 0;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    padding: 6px 4px;
    line-height: 1.3;
    text-align: center;
    white-space: normal;
    overflow-wrap: anywhere;
  }
  .home-page .primary-nav a > i18n-text { min-width: 0; }
}

.potential-rewards { margin: 18px 0 22px; padding: 20px; border: 1px solid var(--line); border-radius: 16px; background: var(--paper); color: var(--ink); }
.potential-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 14px; }
.potential-heading h3 { margin: 3px 0 0; font: 700 18px/1.45 var(--font-body); color: var(--green); }
.potential-heading > span { font-size: 12px; color: var(--muted); text-align: right; }
.potential-eyebrow { font-size: 10px; font-weight: 600; letter-spacing: .14em; color: var(--gold); }
.potential-coverage { margin: 0 0 14px; font-size: 13px; line-height: 1.7; overflow-wrap: anywhere; }
.potential-coverage strong { color: var(--green); font-weight: 650; }
.potential-coverage p { margin: 4px 0; color: var(--ink); font-size: 12px; }
.potential-value-summary { margin: 16px 0 20px; padding-bottom: 16px; border-bottom: 1px solid var(--line); }
.potential-value-summary h4 { margin: 0 0 10px; font: 650 15px/1.6 var(--font-body); color: var(--green); }
.potential-value-summary > p { margin: 8px 0 0; font-size: 12px; line-height: 1.75; color: var(--ink); }
.potential-value-summary .potential-group dl { grid-template-columns: repeat(auto-fit,minmax(120px,1fr)); }
.potential-groups { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,440px),1fr)); gap: 12px; }
.potential-group { padding: 14px 16px; border-radius: 11px; border: 1px solid var(--line); background: var(--soft); min-width: 0; }
.potential-group-label { font-size: 12px; font-weight: 650; color: var(--green); }
.potential-group[data-potential-source="personal_estimate"] { border-style: dashed; }
.potential-group dl { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin: 12px 0 7px; }
.potential-group dl > div { min-width: 0; }
.potential-group dt { font-size: 12px; line-height: 1.5; color: var(--ink); }
.potential-group dd { font-size: clamp(16px,1.6vw,22px); line-height: 1.6; font-weight: 700; margin: 3px 0 0; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.potential-group dd[data-potential-net] { color: var(--green); }
.potential-group p { font-size: 11px; margin: 0; color: var(--muted); line-height: 1.6; }
.potential-notes { margin: 14px 0; padding-left: 12px; border-left: 3px solid var(--gold); }
.potential-notes p { margin: 5px 0; font-size: 12px; line-height: 1.75; color: var(--ink); }
.potential-fx-note { color: var(--green); font-size: 13px; line-height: 1.75; }
.potential-rewards summary { cursor: pointer; font-size: 13px; font-weight: 650; color: var(--green); }
.potential-rewards details > p { font-size: 12px; line-height: 1.65; }
.potential-table-scroll { overflow: auto; max-height: 520px; margin-top: 12px; }
.potential-rewards table { width: 100%; border-collapse: collapse; font-size: 12px; }
.potential-rewards th,.potential-rewards td { padding: 11px 10px; border-bottom: 1px solid var(--line); vertical-align: top; text-align: left; min-width: 110px; }
.potential-rewards tbody th { font-weight: 600; min-width: 230px; max-width: 300px; }
.potential-rewards small { display: block; font-size: 11px; line-height: 1.6; font-weight: 400; color: var(--muted); margin-top: 5px; }
.potential-rewards td button { padding: 7px 9px; white-space: nowrap; font-size: 12px; }
.potential-dialog { padding: 24px; width: min(620px,calc(100% - 28px)); max-height: calc(100dvh - 40px); overflow: auto; border: 1px solid var(--line); border-radius: 16px; background: var(--paper); color: var(--ink); }
.potential-dialog::backdrop { background: #112c2580; }
.potential-dialog .potential-heading button { margin-left: auto; min-width: 36px; min-height: 36px; font-size: 22px; }
.potential-dialog p { font-size: 13px; line-height: 1.75; }
.potential-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; margin: 15px 0; }
.potential-fields label { display: grid; gap: 7px; min-width: 0; font-size: 13px; }
.potential-fields :is(input,select) { width: 100%; min-width: 0; padding: 10px 11px; font: inherit; background: var(--paper); color: var(--ink); border: 1px solid var(--line); border-radius: 8px; }
.potential-dialog fieldset { border: 1px solid var(--line); padding: 12px 14px; border-radius: 10px; margin: 16px 0; min-width: 0; }
.potential-dialog legend { font-size: 13px; font-weight: 650; padding: 0 5px; }
.potential-confirm { display: flex; gap: 9px; align-items: flex-start; font-size: 13px; line-height: 1.7; }
.potential-confirm input { margin-top: 5px; flex: 0 0 auto; }
.potential-dialog .potential-form-error { color: #b24242; }
@media (max-width: 600px) {
  .potential-rewards { padding: 16px; }
  .potential-heading { align-items: flex-start; flex-direction: column; gap: 7px; }
  .potential-heading > span { text-align: left; }
  .potential-group { padding: 12px; }
  .potential-group dl { gap: 9px; }
  .potential-group dt { font-size: 11px; }
  .potential-group dd { font-size: 16px; }
  .potential-dialog { padding: 18px; }
  .potential-dialog .potential-heading { flex-direction: row; }
  .potential-fields { grid-template-columns: minmax(0,1fr); }
}

.recorded-rewards { border-top: 3px solid var(--green); }
.recorded-group dl { grid-template-columns: repeat(4,minmax(0,1fr)); }
.recorded-group [data-recorded-net] { color: var(--green); }
.recorded-group [data-recorded-received] { color: var(--gold); }
.recorded-group dd { font-size: clamp(15px,1.35vw,20px); }
.recorded-pagination { display:flex; align-items:center; gap:12px; justify-content:space-between; margin-top:12px; font-size:12px; flex-wrap:wrap; }
.recorded-fx-note { font-weight:600; }
#recorded-cost-dialog .potential-confirm input { width:18px; height:18px; padding:0; flex:0 0 18px; accent-color:var(--green); }
#recorded-cost-dialog .potential-confirm span { min-width:0; overflow-wrap:anywhere; }
#recorded-cost-dialog .potential-heading h3 { min-width:0; overflow-wrap:anywhere; }
#recorded-cost-dialog .potential-heading button { flex:0 0 auto; }
@media(max-width:700px) { .recorded-group dl { grid-template-columns: repeat(2,minmax(0,1fr)); } }

/* Shared member palette, distinct hierarchy for discovery and conditional sums. */
.planning-modes{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 22px;padding:5px;width:fit-content;max-width:100%;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.member-app .planning-modes button{min-height:42px;border:0;background:transparent;color:var(--ink);font-size:14px;padding:9px 17px;border-radius:9px;white-space:normal}
.member-app .planning-modes button[aria-pressed=true]{background:var(--green);color:var(--surface);box-shadow:0 2px 6px #0001}
.planning-modes button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.explore-heading{margin:0 0 22px;max-width:760px}.explore-heading .eyebrow{font-size:11px;letter-spacing:.17em;color:var(--accent)}
.member-app .explore-heading h2{font-size:clamp(23px,2.2vw,30px);line-height:1.35;margin:9px 0 12px;color:var(--ink);font-weight:650;letter-spacing:-.025em}
.explore-heading p{font-size:14px;line-height:1.8;color:var(--muted);margin:0}
.member-app .explore-form{padding:24px;margin-bottom:22px}.explore-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 20px}.explore-fields.explore-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.member-app .explore-form label{font-size:13px;color:var(--ink);min-width:0;display:flex;flex-direction:column;gap:8px;line-height:1.6;font-weight:550}
.member-app .explore-form input,.member-app .explore-form select{margin:0;min-height:46px;min-width:0;width:100%;max-width:100%;font-size:15px;font-weight:400;line-height:1.5;background:var(--surface)}
.member-app .explore-form input::placeholder{color:var(--muted);opacity:1;font-size:13px}
.explore-extra{border-top:1px solid var(--line);margin-top:22px;padding-top:17px}.explore-extra summary{cursor:pointer;display:flex;align-items:center;flex-wrap:wrap;gap:7px 14px;color:var(--ink);font-size:14px;font-weight:600;list-style:none}
.explore-extra summary::after{content:'＋';margin-left:auto;color:var(--green);font-size:18px}.explore-extra[open] summary::after{content:'−'}.explore-extra summary small{color:var(--muted);font-weight:400;font-size:12px}.explore-extra[open]>.explore-fields{margin-top:18px}
.explore-bank-field{border:0;margin:19px 0 22px;padding:0;min-width:0}.explore-bank-field legend{font-size:13px;font-weight:550;padding:0;margin-bottom:12px;color:var(--ink)}#explore-banks{display:flex;flex-wrap:wrap;gap:9px}
.member-app .explore-form .explore-bank{display:flex;flex-direction:row;gap:7px;align-items:center;font-size:13px;border:1px solid var(--line);padding:8px 11px;border-radius:9px;background:var(--surface);cursor:pointer;font-weight:400}
.member-app .explore-form .explore-bank:has(input:checked){border-color:var(--green);background:color-mix(in srgb,var(--green) 7%,var(--surface));color:var(--green)}
.member-app .explore-form .explore-bank input{width:15px;height:15px;min-height:0;flex:none;accent-color:var(--green)}
.explore-hint{font-size:12px;line-height:1.8;color:var(--muted);margin:16px 0 0}.explore-hint button{font-size:12px}
.explore-submit{margin-top:22px;display:flex}.member-app .explore-submit button{min-height:46px;padding:11px 23px;font-size:14px}.explore-submit button:disabled{opacity:.65}
.explore-intro{border:1px dashed var(--line);border-radius:15px;padding:24px;display:flex;align-items:flex-start;gap:16px;color:var(--muted)}.explore-intro>span{display:grid;place-items:center;width:36px;height:36px;flex:none;border-radius:10px;background:color-mix(in srgb,var(--green) 7%,var(--surface));color:var(--green);font-size:23px}.explore-intro strong{color:var(--ink);font-size:15px;font-weight:600}.explore-intro p{font-size:13px;line-height:1.75;margin:7px 0 0}
.explore-results-head{margin:28px 0 16px}.member-app .explore-results-head h3{font-size:18px;font-weight:650;margin:0 0 8px;color:var(--ink)}.explore-results-head p{font-size:13px;line-height:1.7;color:var(--muted);margin:0}
.explore-assumptions{border-left:3px solid var(--accent);padding:12px 16px;background:color-mix(in srgb,var(--accent) 6%,var(--surface));border-radius:0 10px 10px 0;margin:0 0 20px}.explore-assumptions p{font-size:12px;line-height:1.85;margin:0;color:var(--ink)}.explore-assumptions p+p{margin-top:6px;color:var(--muted)}
.explore-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.member-app .explore-card{min-width:0;padding:22px;overflow-wrap:anywhere;border-radius:16px;border-top:3px solid var(--green)}.member-app .explore-card.needs-details{border-top-color:var(--accent)}
.explore-card-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;font-size:12px;color:var(--muted);line-height:1.6}.explore-card-top>span:first-child{color:var(--green);font-weight:650}.explore-card-top>span:last-child{text-align:right}
.member-app .explore-card h3{font-size:17px;font-weight:650;line-height:1.65;margin:14px 0 16px;color:var(--ink)}
.explore-reward{padding:15px 17px;background:color-mix(in srgb,var(--green) 6%,var(--surface));border:1px solid color-mix(in srgb,var(--green) 15%,var(--line));border-radius:11px}.explore-reward small{display:block;color:var(--muted);font-size:12px}.explore-reward>strong{display:block;font-size:25px;line-height:1.4;letter-spacing:-.02em;color:var(--green);margin-top:5px;font-family:var(--font-tech,var(--font-body));font-weight:650}.needs-details .explore-reward>strong{font-size:18px;color:var(--ink)}.explore-reward p{font-size:12px;line-height:1.8;color:var(--muted);margin:8px 0 0}
.member-app .explore-card h4{font-size:13px;color:var(--ink);margin:17px 0 8px;font-weight:650}.explore-card p,.explore-card li{font-size:13px;line-height:1.85;color:var(--ink)}.explore-card ul{padding-left:19px;margin:0}.explore-card p{margin:6px 0}.explore-requirements ul{color:var(--ink)}
.explore-cost{border-top:1px solid var(--line);margin-top:16px;padding-top:13px}.explore-cost>small{font-size:12px;font-weight:600;color:var(--muted)}.explore-cost p{font-size:12px;margin:6px 0}.explore-cost strong{margin-left:8px;font-weight:650;color:var(--green)}.explore-cost small{font-size:11px;line-height:1.8;color:var(--muted)}
.explore-ceiling{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:16px 0;padding:12px 0;display:flex;gap:7px 12px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--muted)}.explore-ceiling strong{font-size:14px;color:var(--ink);margin-left:auto;font-weight:600}.explore-ceiling small{flex-basis:100%;font-size:11px;text-align:right}
.explore-conditions{font-size:13px;margin-bottom:16px}.explore-conditions summary{color:var(--green);font-weight:600;cursor:pointer;line-height:1.7}.explore-conditions p,.explore-conditions li{color:var(--muted);font-size:12px}.explore-guide{font-size:13px;font-weight:600;color:var(--green);display:inline-block;padding:6px 0}.explore-more{margin:20px 0;flex-wrap:wrap}.explore-more button{font-size:13px;min-height:42px}.explore-updated{border:1px solid var(--line);padding:16px;border-radius:12px;font-size:13px;color:var(--ink)}#explore-results{scroll-margin-top:20px}
@media(max-width:1000px){.explore-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.explore-cards{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){.member-app .planning-modes{width:100%;gap:4px}.member-app .planning-modes button{flex:1;padding:9px 10px;font-size:12px}.member-app .explore-form,.member-app .explore-card{padding:18px}.explore-fields,.explore-fields.explore-two{grid-template-columns:minmax(0,1fr);gap:16px}.explore-extra summary{font-size:13px}.explore-extra summary small{flex-basis:82%;order:1;font-size:11px}.explore-submit button{width:100%}.explore-intro{padding:18px}.explore-heading p{font-size:13px}.explore-cards{gap:16px}.explore-more button{width:100%}}
.explore-match-note{display:block;font-size:11px;line-height:1.8;color:var(--muted);margin-top:10px}.explore-cost details{margin:8px 0}.explore-cost summary{font-size:12px;color:var(--green);cursor:pointer}.explore-cost a{font-size:12px}
.workbench-content:has(#panel-planning:not([hidden]) #purchase-explore-form)>.account-scope-bar{display:none}
.member-app .explore-submit .primary{color:var(--surface)}
.explore-card:only-child{grid-column:1/-1}
