.usw {
  --rd-gold-text: #dcc07c;
  --rd-title: #f4e4ba;
  --rd-ink: var(--text, #e8eefb);
  --rd-muted: var(--text-muted, #8fa3c8);
  --rd-edge: rgba(201, 169, 97, 0.66);
  --rd-bg:
    linear-gradient(105deg, rgba(255, 236, 190, 0) 12%, rgba(255, 236, 190, 0.075) 24%, rgba(255, 236, 190, 0.015) 33%, rgba(255, 236, 190, 0) 42%, rgba(255, 236, 190, 0) 66%, rgba(255, 236, 190, 0.05) 77%, rgba(255, 236, 190, 0) 88%),
    radial-gradient(80% 70% at 100% 0%, rgba(201, 169, 97, 0.2), rgba(201, 169, 97, 0) 62%),
    radial-gradient(70% 60% at 0% 100%, rgba(201, 169, 97, 0.09), rgba(201, 169, 97, 0) 60%),
    linear-gradient(160deg, #1a2440 0%, #121a2e 52%, #171c2a 100%);
  --rd-shadow: 0 1px 2px rgba(0, 0, 0, 0.36), 0 12px 30px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 236, 190, 0.12);
  --usw-img-edge: rgba(201, 169, 97, 0.44);
  position: relative;
  margin: 14px 0 18px;
  padding: 16px 16px 14px;
  border: 1px solid var(--rd-edge);
  border-radius: 16px;
  background: var(--rd-bg);
  box-shadow: var(--rd-shadow);
  color: var(--rd-ink);
}
:root[data-theme="light-a"] .usw,
:root[data-theme="light-b"] .usw,
:root[data-theme="light-c"] .usw,
:root[data-theme="champagne"] .usw {
  --rd-gold-text: #7a5a1e;
  --rd-title: var(--text, #4a3618);
  --rd-edge: #c9a961;
  --rd-bg: linear-gradient(165deg, var(--card-bg, #fffdf4) 0%, rgba(201, 169, 97, 0.1) 100%), var(--card-bg, #fffdf4);
  --rd-shadow: 0 1px 2px rgba(122, 90, 30, 0.14), 0 8px 22px rgba(122, 90, 30, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.9);
  --usw-img-edge: #c9a961;
}
:root[data-theme="champagne"] .usw {
  --rd-title: #4a3618;
  --rd-ink: #4a3618;
  --rd-muted: #6b5225;
  --rd-bg:
    linear-gradient(105deg, rgba(255, 255, 255, 0) 16%, rgba(255, 255, 255, 0.6) 26%, rgba(255, 255, 255, 0.14) 33%, rgba(255, 255, 255, 0) 43%, rgba(255, 255, 255, 0) 68%, rgba(255, 255, 255, 0.34) 78%, rgba(255, 255, 255, 0) 87%),
    radial-gradient(58% 46% at 88% -10%, rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0) 62%),
    radial-gradient(72% 52% at 2% 108%, rgba(108, 74, 20, 0.2), rgba(108, 74, 20, 0) 58%),
    linear-gradient(102deg, #faf0dd 0%, #ead5ab 16%, #fcf6e8 31%, #e5cd9e 47%, #f8ead0 63%, #dfc591 80%, #f4e7cc 100%);
}
.usw-head { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; }
.usw .usw-title { margin: 0; font-size: calc(17px * var(--fs, 1)); font-weight: 800; line-height: 1.4; color: var(--rd-title); letter-spacing: 0.02em; }
.usw p.usw-headline { margin: 10px 0 14px; font-size: calc(19px * var(--fs, 1)); font-weight: 700; line-height: 1.55; letter-spacing: 0.01em; color: var(--text-strong, var(--rd-title)); }
.usw .usw-headline > span, .usw .usw-sec-h > span { display: inline-block; max-width: 100%; }
.usw-cards { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; align-items: start; }
@media (min-width: 768px) { .usw-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.usw-card {
  display: block; min-width: 0; border-radius: 12px; overflow: hidden;
  border: 1px solid var(--usw-img-edge); box-shadow: 0 2px 10px rgba(0, 0, 0, 0.22);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.usw-card:hover { transform: translateY(-1px); }
.usw-card:focus-visible { outline: 2px solid var(--rd-edge); outline-offset: 2px; }
.usw-card img { display: block; width: 100%; height: auto; }
.usw-secs { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; margin-top: 14px; }
@media (min-width: 1024px) {
  .usw-secs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .usw-sec:last-child:nth-child(odd) { grid-column: 1 / -1; }
}
.usw .usw-sec { padding: 13px 14px 10px; }
.usw .usw-sec-h { margin: 8px 0 6px; font-size: calc(17px * var(--fs, 1)); font-weight: 700; line-height: 1.5; letter-spacing: 0; color: var(--text-strong); }
.usw p.usw-insight { margin: 0; font-size: calc(14px * var(--fs, 1)); line-height: 1.7; color: var(--text); }
.usw .usw-fold-body p, .usw .usw-body p { margin: 8px 0 2px; font-size: calc(13.5px * var(--fs, 1)); line-height: 1.85; color: var(--text); }
.usw .usw-fold-body p.usw-fold-note { margin: 10px 0 2px; font-size: calc(11.5px * var(--fs, 1)); line-height: 1.6; color: var(--text-faint); }
.usw-foot { margin-top: 12px; }
.usw-foot p { margin: 4px 2px 0; font-size: calc(11.5px * var(--fs, 1)); line-height: 1.6; color: var(--rd-muted); }
@media (prefers-reduced-motion: reduce) { .usw-card { transition: none; } .usw-card:hover { transform: none; } }
.usw-head .usw-more { margin-left: auto; color: var(--rd-gold-text); text-decoration: none; font-weight: 700; border: 1px solid var(--rd-edge); background: transparent; }
.usw-head .usw-more:hover { background: rgba(201, 169, 97, 0.14); }
.usw-head .usw-more:focus-visible { outline: 2px solid var(--rd-edge); outline-offset: 2px; }
.usw p.usw-holiday { margin: 10px 0 2px; padding: 8px 12px; border-radius: 10px; border: 1px dashed var(--rd-edge); background: rgba(201, 169, 97, 0.1); font-size: calc(13.5px * var(--fs, 1)); line-height: 1.6; color: var(--rd-ink); }
.usw .usw-foot p.usw-link { margin-top: 8px; }
.usw .usw-foot p.usw-link a { color: var(--rd-gold-text); font-weight: 700; font-size: calc(13px * var(--fs, 1)); text-decoration: none; border-bottom: 1px solid var(--rd-edge); }
.usw .usw-body p { margin: 8px 0 2px; }
.usd-wrap { max-width: 880px; margin: 0 auto; padding: 14px 16px 44px; box-sizing: border-box; }
.usd-crumb { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; margin: 4px 2px 10px; font-size: calc(12.5px * var(--fs, 1)); color: var(--text-muted); }
.usd-crumb a { color: var(--text-muted); text-decoration: none; border-bottom: 1px dotted var(--border-strong, var(--border)); }
.usd-crumb a:hover { color: var(--text); }
.usw.usd-page { margin-top: 4px; }
.usw.usd-page .usw-title { font-size: calc(20px * var(--fs, 1)); }
.usw.usd-page .usw-secs { grid-template-columns: minmax(0, 1fr); }
.usw.usd-page .usw-sec:last-child:nth-child(odd) { grid-column: auto; }
.usw.usd-page .usw-body p { font-size: calc(15px * var(--fs, 1)); line-height: 1.9; }
.usd-pager { display: flex; flex-wrap: wrap; gap: 8px 10px; justify-content: space-between; margin: 16px 0 0; }
.usd-pager a { display: inline-flex; align-items: center; min-height: 36px; padding: 6px 14px; border-radius: 999px; border: 1px solid var(--border-strong, var(--border)); background: var(--card-bg); color: var(--text); text-decoration: none; font-size: calc(13px * var(--fs, 1)); font-weight: 600; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06); }
.usd-pager a:hover { border-color: #c9a961; }
.usd-pager .usd-all { order: 2; }
.usd-pager .usd-prev { order: 1; }
.usd-pager .usd-next { order: 3; }
.usd-index { padding: 4px 2px 0; }
.usd-index h1.usd-title { margin: 4px 0 8px; font-size: calc(22px * var(--fs, 1)); font-weight: 800; color: var(--text-strong, var(--text)); letter-spacing: 0.02em; }
.usd-index .usd-lede { margin: 0 0 16px; font-size: calc(14.5px * var(--fs, 1)); line-height: 1.8; color: var(--text); }
.usd-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.usd-list a { display: grid; grid-template-columns: minmax(0, 1fr); gap: 4px; padding: 12px 14px; border-radius: 14px; border: 1px solid var(--border); background: var(--card-bg); color: var(--text); text-decoration: none; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05), 0 6px 16px rgba(0, 0, 0, 0.06); transition: transform 0.15s ease, border-color 0.15s ease; }
.usd-list a:hover { transform: translateY(-1px); border-color: #c9a961; }
.usd-list .usd-d { font-size: calc(12px * var(--fs, 1)); font-weight: 700; color: var(--text-muted); }
.usd-list .usd-h { font-size: calc(15.5px * var(--fs, 1)); font-weight: 700; line-height: 1.55; color: var(--text-strong, var(--text)); }
.usd-index .usd-empty { margin: 0; padding: 14px 16px; border-radius: 14px; border: 1px dashed var(--border-strong, var(--border)); background: var(--card-bg); font-size: calc(14px * var(--fs, 1)); line-height: 1.8; color: var(--text); }
.usd-index .usd-note { margin: 16px 2px 0; font-size: calc(12px * var(--fs, 1)); color: var(--text-faint, var(--text-muted)); }
@media (prefers-reduced-motion: reduce) { .usd-list a { transition: none; } .usd-list a:hover { transform: none; } }
