/* OranCraft v1.0 production design system — loaded after legacy component styles. */
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --space-20: 80px;
  --radius-sm: 7px;
  --radius-md: 11px;
  --radius-lg: 18px;
  --motion-fast: 150ms;
  --motion-normal: 240ms;
  --motion-slow: 420ms;
  --ease-out: cubic-bezier(0.2, 0.8, 0.2, 1);
  --container-width: 1180px;
  --focus: #ffb83f;
}
html {
  overflow-x: hidden;
  scroll-padding-top: 100px;
}
body {
  min-width: 320px;
  overflow-wrap: anywhere;
}
main {
  min-width: 0;
}
img {
  max-width: 100%;
  height: auto;
}
button,
a,
input,
select,
textarea {
  -webkit-tap-highlight-color: transparent;
}
button:active,
.btn:active {
  transform: translateY(1px);
}
[hidden],
.hidden {
  display: none !important;
}
.wrap {
  width: min(
    calc(100% - clamp(24px, 4vw, 44px)),
    var(--container-width)
  ) !important;
}
.section {
  padding-block: clamp(52px, 7vw, 88px);
}
.section-head h2,
.story-text h2 {
  max-width: 22ch;
  text-wrap: balance;
}
.section-head p,
.story-text p {
  max-width: 68ch;
}
.feature-card,
.announcement-mini-card,
.supporter-card,
.portal-card,
.announcement-index-card {
  transition:
    transform var(--motion-normal) var(--ease-out),
    box-shadow var(--motion-normal) var(--ease-out),
    border-color var(--motion-normal) var(--ease-out);
}
.feature-cover,
.announcement-mini-cover,
.story-image {
  contain: layout paint;
}
.feature-cover img,
.announcement-mini-cover img,
.story-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.oran-brand-hero.oran-depth-hero {
  min-height: clamp(680px, calc(100svh - 88px), 820px) !important;
  border: 0 !important;
  outline: 0 !important;
}
.oran-brand-hero.oran-depth-hero::before {
  inset: -2px !important;
  transform: translate(var(--hero-x, 0), var(--hero-y, 0)) scale(1.022) !important;
  mask-image: linear-gradient(#000 0 86%, transparent 100%);
  -webkit-mask-image: linear-gradient(#000 0 86%, transparent 100%);
}
.oran-depth-layout {
  grid-template-columns: minmax(0, 1.1fr) minmax(350px, 420px) !important;
  gap: clamp(30px, 4vw, 58px) !important;
  padding-top: clamp(96px, 14vh, 132px) !important;
  padding-bottom: 150px !important;
}
.hero-brand-stage {
  min-width: 0;
}
.hero-brand-logo {
  width: min(540px, 44vw) !important;
}
.depth-paper-card {
  width: 100%;
  max-width: 420px;
  max-height: none;
}
.depth-paper-card h1 {
  text-wrap: balance;
  overflow-wrap: anywhere;
}
.depth-hud {
  left: 50% !important;
  right: auto !important;
  width: min(860px, calc(100% - 40px)) !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(
      130px,
      0.72fr
    ) auto !important;
}
.depth-hud > div {
  overflow: hidden;
}
.depth-hud .copy-mini {
  min-width: 116px !important;
}
.oran-site-header {
  isolation: isolate;
}
.oran-site-header .oran-nav {
  position: relative;
  z-index: 2;
}
.oran-menu-toggle {
  transition:
    background-color var(--motion-fast),
    border-color var(--motion-fast);
}
.oran-site-header::after {
  content: "";
  position: fixed;
  inset: 0;
  background: rgba(4, 15, 20, 0.66);
  backdrop-filter: blur(5px);
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--motion-normal);
  z-index: 0;
}
.oran-site-header.menu-open::after {
  opacity: 1;
  pointer-events: auto;
}
.oran-site-header.menu-open .oran-navlinks {
  z-index: 3;
}
.oran-navlinks a,
.oran-navlinks button {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.global-toast {
  min-height: 48px;
}
.modal-card {
  max-height: min(86svh, 900px);
}
.empty-state,
.ornament-empty {
  min-height: 180px;
}
.skeleton {
  contain: layout paint;
}
.footer-links,
.oran-footer-links {
  flex-wrap: wrap;
}
.oran-footer-main {
  align-items: start;
}
.error-code {
  font-family: ui-monospace, monospace;
  font-size: 12px;
}
.table-scroll {
  max-width: 100%;
  overflow: auto;
  overscroll-behavior-inline: contain;
}
table {
  width: 100%;
  border-collapse: collapse;
}
th,
td {
  padding: 11px 12px;
  text-align: left;
  vertical-align: top;
}
th {
  position: sticky;
  top: 0;
  background: var(--surface);
  z-index: 1;
}
.payment-dialog {
  width: min(860px, calc(100% - 28px));
  max-width: none;
  max-height: min(90svh, 860px);
  padding: 0;
  border: 0;
  border-radius: 18px;
  color: #26343a;
  background: transparent;
  overflow: visible;
}
.payment-dialog::backdrop {
  background: rgba(4, 18, 25, 0.76);
  backdrop-filter: blur(6px);
}
.payment-dialog-card {
  position: relative;
  max-height: min(90svh, 860px);
  overflow: auto;
  padding: clamp(22px, 4vw, 36px);
  border: 3px solid #a8713c;
  border-radius: 16px;
  background: linear-gradient(180deg, #fffaf0, #f4e6c5);
  box-shadow: inset 0 0 0 3px #ffe6a8, 0 26px 80px rgba(0, 0, 0, 0.38);
}
.payment-dialog-close {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 2;
  width: 40px;
  height: 40px;
  border: 1px solid #c9a578;
  border-radius: 9px;
  background: #fff7df;
  color: #6f4b31;
  font-size: 25px;
  line-height: 1;
  cursor: pointer;
}
.payment-dialog-head {
  display: flex;
  align-items: center;
  gap: 14px;
  padding-right: 44px;
  margin-bottom: 24px;
}
.payment-dialog-head img {
  flex: 0 0 auto;
  image-rendering: pixelated;
}
.payment-dialog-head h2 {
  margin: 3px 0;
  color: #3d3027;
  font-size: clamp(24px, 4vw, 34px);
}
.payment-dialog-head p {
  margin: 0;
  color: #746554;
  font-size: 13px;
}
.payment-dialog-body {
  display: grid;
  grid-template-columns: minmax(250px, 0.8fr) minmax(290px, 1.2fr);
  gap: 24px;
  align-items: center;
}
.payment-qr-panel {
  display: grid;
  justify-items: center;
  gap: 10px;
  padding: 18px;
  border: 1px solid #d8c5a8;
  border-radius: 13px;
  background: #fffdf7;
}
.payment-qr-panel img {
  width: min(280px, 100%);
  aspect-ratio: 1;
  border-radius: 8px;
  background: #fffaf0;
}
.payment-qr-panel small {
  color: #7f6e5a;
  text-align: center;
  line-height: 1.55;
}
.payment-info-list {
  display: grid;
  gap: 0;
  margin: 0;
  border: 1px solid #dfccb0;
  border-radius: 12px;
  overflow: hidden;
}
.payment-info-list > div {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  gap: 12px;
  padding: 11px 13px;
  border-bottom: 1px solid #eadbc3;
  background: rgba(255, 255, 255, 0.56);
}
.payment-info-list > div:last-child {
  border-bottom: 0;
}
.payment-info-list dt {
  color: #81705d;
  font-size: 12px;
}
.payment-info-list dd {
  margin: 0;
  color: #34464c;
  font-weight: 850;
  overflow-wrap: anywhere;
}
.payment-code-value {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.payment-code-value span {
  min-width: 0;
  color: #9b5b18;
  font-family: ui-monospace, "Cascadia Mono", Consolas, monospace;
  letter-spacing: .04em;
}
.payment-code-value span.pending {
  color: #857765;
  font-family: inherit;
  font-size: 12px;
  font-weight: 650;
  letter-spacing: 0;
}
.payment-code-copy {
  flex: 0 0 auto;
  min-height: 28px;
  padding: 3px 9px;
  border: 1px solid #d0ad75;
  border-radius: 7px;
  background: #fff6de;
  color: #79552d;
  font-weight: 800;
  cursor: pointer;
}
.payment-code-copy:disabled {
  opacity: .45;
  cursor: not-allowed;
}
.payment-live-status {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-top: 14px;
  padding: 11px 13px;
  border: 1px solid #dfc78e;
  border-radius: 10px;
  background: #fff7dd;
  color: #8b681d;
}
.payment-live-status span {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #e4a832;
  box-shadow: 0 0 0 4px rgba(228, 168, 50, 0.17);
}
.payment-live-status.paid {
  border-color: #b9dbb4;
  background: #effbea;
  color: #327337;
}
.payment-live-status.paid span {
  background: #55b95b;
  box-shadow: 0 0 0 4px rgba(85, 185, 91, 0.16);
}
.payment-live-status.failed {
  border-color: #e4b8b1;
  background: #fff0ed;
  color: #a64a3e;
}
.payment-live-status.failed span {
  background: #d76558;
}
.payment-dialog-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
  margin-top: 14px;
}
.payment-dialog-actions .btn {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.payment-dialog-actions .btn:first-child {
  grid-column: 1 / -1;
}
.payment-ip-control {
  grid-column: 1 / -1;
  border: 0;
  background: transparent;
  color: #a74f43;
  font-weight: 750;
  font-size: 12px;
  line-height: 1.5;
  padding: 7px 10px;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.payment-ip-control:hover:not(:disabled) { color: #7f3028; }
.payment-ip-control:disabled { opacity: .55; cursor: wait; }
.payment-live-status.cancelled { border-color: #e7b9b2; background: #fff1ef; color: #91483e; }
.payment-live-status.cancelled span { background: #d76558; }
@media (max-width: 1100px) {
  .oran-depth-layout {
    grid-template-columns: minmax(0, 1fr) minmax(330px, 390px) !important;
  }
  .hero-brand-logo {
    width: min(500px, 46vw) !important;
  }
  .depth-hud {
    width: min(820px, calc(100% - 32px)) !important;
  }
}
@media (max-width: 960px) {
  .oran-brand-hero.oran-depth-hero {
    min-height: 920px !important;
  }
  .oran-depth-layout {
    grid-template-columns: 1fr !important;
    padding-top: 110px !important;
    padding-bottom: 190px !important;
  }
  .hero-brand-logo {
    width: min(560px, 78vw) !important;
  }
  .depth-paper-card {
    max-width: 540px;
  }
  .depth-hud {
    grid-template-columns: 1fr 1fr auto !important;
  }
  .depth-hud > div:nth-child(3) {
    display: none !important;
  }
}
@media (max-width: 900px) {
  body.menu-open {
    overflow: hidden;
  }
  .oran-navlinks {
    max-height: calc(100svh - 92px);
    overflow: auto;
  }
  .oran-site-header.menu-open .oran-navlinks {
    display: flex;
  }
  .oran-site-header.menu-open .oran-navlinks > a,
  .oran-site-header.menu-open .oran-navlinks > button {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
  .oran-site-header.menu-open::after {
    top: 0;
  }
  .oran-menu-toggle {
    z-index: 4;
  }
}
@media (max-width: 720px) {
  .payment-dialog {
    width: calc(100% - 18px);
    max-height: 94svh;
  }
  .payment-dialog-card {
    max-height: 94svh;
    padding: 20px 15px;
  }
  .payment-dialog-head {
    align-items: flex-start;
  }
  .payment-dialog-head img {
    width: 44px;
    height: 44px;
  }
  .payment-dialog-body {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .payment-qr-panel img {
    width: min(230px, 70vw);
  }
  .payment-info-list > div {
    grid-template-columns: 92px minmax(0, 1fr);
  }
}
@media (max-width: 420px) {
  .payment-dialog-actions {
    grid-template-columns: 1fr;
  }
  .payment-dialog-actions .btn:first-child {
    grid-column: auto;
  }
}
@media (max-width: 700px) {
  .oran-brand-hero.oran-depth-hero {
    min-height: 880px !important;
  }
  .oran-depth-layout {
    padding-top: 104px !important;
    padding-bottom: 188px !important;
  }
  .hero-brand-logo {
    width: min(500px, 90vw) !important;
  }
  .depth-paper-card {
    max-width: 100%;
    transform: none !important;
  }
  .depth-hud {
    width: calc(100% - 24px) !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .depth-hud > div:nth-child(2),
  .depth-hud > div:nth-child(3) {
    display: none !important;
  }
  .hero-tagline-plaque {
    flex-wrap: wrap;
    justify-content: center;
  }
  .page-hero h1 {
    font-size: clamp(36px, 12vw, 52px) !important;
  }
}
@media (max-width: 420px) {
  .oran-brand-hero.oran-depth-hero {
    min-height: 850px !important;
  }
  .oran-depth-layout {
    padding-top: 94px !important;
    padding-bottom: 180px !important;
  }
  .depth-paper-card {
    padding: 22px 17px 25px !important;
  }
  .depth-paper-card h1 {
    font-size: clamp(23px, 8vw, 30px) !important;
  }
  .hero-brand-copy {
    display: none;
  }
  .hero-tagline-plaque {
    font-size: 9px;
  }
  .oran-copy-ip {
    white-space: normal;
  }
  .global-toast {
    left: 12px;
    right: 12px;
    max-width: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto !important;
  }
  .oran-brand-hero.oran-depth-hero::before {
    transform: scale(1.01) !important;
  }
  .reveal-ready {
    opacity: 1 !important;
    transform: none !important;
  }
  .skeleton::after {
    animation: none !important;
  }
  .pixel-btn::after {
    display: none !important;
  }
}

/* Sponsor checkout layout correction — the form uses the document scroll. */
.sponsor-page-section {
  overflow-x: clip;
}
.sponsor-layout {
  grid-template-columns: minmax(0, 1fr) minmax(350px, 410px) !important;
  gap: clamp(22px, 3vw, 34px);
  align-items: start;
}
.sponsor-layout > *,
.sponsor-plan-grid,
.sponsor-checkout-card,
#sponsorForm {
  min-width: 0;
}
.sponsor-plan-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.sponsor-plan-card {
  width: 100%;
  min-width: 0;
}
.sponsor-plan-card strong,
.sponsor-plan-card p {
  overflow-wrap: anywhere;
}
.sponsor-checkout-card {
  position: relative !important;
  top: auto !important;
  width: 100%;
  max-height: none !important;
  height: auto;
  overflow: visible;
}
.field-public input,
.field-public textarea,
.field-public select,
.money-input,
.discount-box {
  min-width: 0;
  max-width: 100%;
}
.discount-row {
  grid-template-columns: minmax(0, 1fr) auto;
}
.privacy-box,
.public-check,
.public-check span,
.checkout-summary > div {
  min-width: 0;
}
.public-check span {
  overflow-wrap: anywhere;
}
.checkout-summary > div {
  align-items: flex-start;
}
.checkout-summary strong {
  min-width: 0;
  text-align: right;
  overflow-wrap: anywhere;
}
.checkout-summary .fee-line strong {
  color: #b06a12;
}
.player-verify-status {
  display: block;
  min-height: 1.35em;
  font-weight: 750;
}
.player-verify-status.checking {
  color: #6b7d85;
}
.player-verify-status.success {
  color: #298a43;
}
.player-verify-status.error {
  color: #c84e56;
}

@media (max-width: 1000px) {
  .sponsor-layout {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .sponsor-checkout-card {
    width: min(100%, 760px);
    margin-inline: auto;
  }
}
@media (max-width: 680px) {
  .sponsor-plan-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .sponsor-checkout-card {
    padding: clamp(16px, 5vw, 20px) !important;
    border-radius: 16px;
  }
  .discount-row {
    grid-template-columns: minmax(0, 1fr);
  }
  .discount-row .btn {
    width: 100%;
  }
  .checkout-summary > div {
    gap: 12px;
  }
}
@media (max-width: 420px) {
  .sponsor-page-section {
    padding-top: 38px !important;
  }
  .sponsor-checkout-card {
    padding: 15px !important;
  }
  .public-check {
    padding: 11px 10px;
  }
  .checkout-summary {
    padding-inline: 8px;
  }
}

/* v1.5 CMS Builder: header server status + CMS social icons */
.oran-header-socials,.oran-footer-socials{display:flex;align-items:center;gap:7px}.oran-header-socials{margin-left:6px}.oran-header-socials .oran-social-icon{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14)}.oran-header-socials .oran-social-icon:hover{background:rgba(255,255,255,.16)}.oran-footer-socials .oran-social-icon{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}
.oran-server-pill{display:flex;align-items:center;gap:9px;min-height:42px;padding:6px 11px;border:1px solid rgba(116,210,117,.28);background:rgba(14,43,49,.72);border-radius:12px;color:#fff;margin-left:14px}.server-state-dot{width:9px;height:9px;border-radius:50%;background:#d05d5d;box-shadow:0 0 0 4px rgba(208,93,93,.12)}.server-state-dot.online{background:#65cc69;box-shadow:0 0 0 4px rgba(101,204,105,.14)}.server-pill-copy{display:grid;line-height:1.1}.server-pill-copy b{font-size:12px;letter-spacing:.02em}.server-pill-copy small{margin-top:3px;font-size:9px;color:#b9cbd0}.oran-footer-brand .footer-ip{display:inline-flex;margin-top:8px;padding:6px 9px;border-radius:8px;background:rgba(255,255,255,.06);font-size:11px;color:inherit;cursor:default}
@media(max-width:900px){.oran-header-socials{justify-content:flex-start}.oran-server-pill{width:100%;justify-content:flex-start}.oran-site-header.menu-open .oran-navlinks>.oran-header-socials,.oran-site-header.menu-open .oran-navlinks>.oran-server-pill{display:flex!important;visibility:visible!important;opacity:1!important}}

/* v3.2.0 · responsive polish and rendering stability */
.section,.story-section,.event-spotlight,.adventure-hub,.community-board-section,.supporter-wall-section{content-visibility:auto;contain-intrinsic-size:420px}
.feature-card,.announcement-card,.supporter-card,.hall-card,.sponsor-hall-card{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.feature-card:hover,.announcement-card:hover,.supporter-card:hover,.hall-card:hover,.sponsor-hall-card:hover{transform:translateY(-4px);box-shadow:0 18px 34px rgba(48,91,104,.14)}
.btn:focus-visible,.oran-navlinks a:focus-visible,.card a:focus-visible{outline:3px solid rgba(241,168,48,.55);outline-offset:3px}
.page-hero,.hero{isolation:isolate}
@media(max-width:700px){.hero{min-height:min(88svh,760px)}.hero-inner{padding-top:72px;padding-bottom:44px}.page-hero{padding:82px 0 48px}.page-hero h1{font-size:clamp(28px,9vw,46px);line-height:1.08}.section{padding-block:52px}.wrap{width:min(100% - 28px,1200px)}.hall-build-grid,.hall-honor-grid,.announcement-index-grid{grid-template-columns:1fr!important}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(prefers-reduced-motion:reduce){.feature-card,.announcement-card,.supporter-card,.hall-card,.sponsor-hall-card{transition:none}.feature-card:hover,.announcement-card:hover,.supporter-card:hover,.hall-card:hover,.sponsor-hall-card:hover{transform:none}}

/* v3.3 · public visual hierarchy and stable content */
body{font-size:16px;line-height:1.75;color:var(--oran-ink,#26343a)}
.section-head{gap:22px;margin-bottom:30px}.section-head h2,.story-text h2{line-height:1.35;font-size:clamp(27px,3.2vw,40px);letter-spacing:.01em}.section-head p{font-size:16px;line-height:1.85}.section-kicker{font-size:12px;letter-spacing:.12em;line-height:1.6}
.oran-navlinks>a{font-size:14px}.oran-navlinks>a.active-nav{box-shadow:inset 0 -2px var(--oran-gold,#f7c85a)}.server-pill-copy small{font-size:12px}.server-pill-copy b{font-size:14px}.oran-server-pill{border-radius:9px}
.oran-depth-layout{grid-template-columns:minmax(0,1.2fr) minmax(330px,420px)!important;align-items:center!important}.hero-brand-logo{filter:drop-shadow(0 12px 22px rgba(5,29,43,.22));max-width:100%}.depth-paper-card{border-radius:18px!important;transform:none!important;background:rgba(255,255,255,.95)!important;border:1px solid rgba(255,255,255,.8)!important;border-top:4px solid #f3bf66!important;box-shadow:0 20px 55px rgba(10,36,48,.22)!important}.depth-paper-card h1{font-size:clamp(25px,2.6vw,35px)!important;line-height:1.4!important;color:#1f4657!important}.depth-paper-card p{font-size:16px!important;line-height:1.85!important;color:#4b6673!important}.hero-actions{gap:12px}.hero-actions .btn{min-height:46px;display:inline-flex;align-items:center;justify-content:center}
.page-hero h1{font-size:clamp(34px,5vw,60px);line-height:1.25;overflow-wrap:anywhere}.page-hero p{font-size:17px;line-height:1.8;max-width:750px}.page-hero .section-kicker{color:#ffe0a4}
.feature-card,.announcement-index-card,.announcement-mini-card,.supporter-card{border-radius:14px!important;border-width:1px!important;box-shadow:0 9px 26px rgba(29,67,84,.09)!important}.feature-content{padding:24px!important}.feature-content h3{font-size:23px;line-height:1.4}.feature-content p,.announcement-mini-body p,.announcement-index-body p{font-size:15px;line-height:1.8}.announcement-index-body h2{font-size:24px;line-height:1.4}.announcement-index-cover{aspect-ratio:16/9;height:auto}.announcement-index-cover img{width:100%;height:100%;object-fit:cover}.announcement-mini-body h3{font-size:20px;line-height:1.45}.announcement-source-line,.announcement-index-footer,.mini-meta{font-size:13px}
.sponsor-hall-grid{gap:24px}.sponsor-hall-card{padding:27px;border:1px solid #dbc391;border-top:4px solid #dcba71;border-radius:16px;background:#fffdf7;min-height:0;box-shadow:0 9px 27px #1838490d}.sponsor-hall-card::after{display:none}.sponsor-hall-member{grid-template-columns:68px minmax(0,1fr);gap:16px}.sponsor-hall-member img{width:68px;height:68px;border:2px solid #e1bd7a;border-radius:9px;box-shadow:0 5px 12px #18384912}.sponsor-hall-member h3{font-size:23px;line-height:1.35;color:#244b5b;margin:5px 0}.sponsor-hall-member span{font-size:12px;letter-spacing:.04em;overflow-wrap:anywhere}.sponsor-hall-member b{font-size:14px;line-height:1.7}.sponsor-hall-card blockquote{font-size:16px;line-height:1.85;color:#586e79;margin:24px 0;white-space:pre-wrap;overflow-wrap:anywhere}.sponsor-hall-foot{font-size:13px;flex-wrap:wrap;border-top:1px solid #e9dfc9;align-items:center}.sponsor-hall-foot>span{font-size:16px}.sponsor-hall-policy{font-size:14px}.supporter-card blockquote{font-size:15px;line-height:1.85;overflow-wrap:anywhere}.sponsor-plan-card{transition:box-shadow .18s,border-color .18s}.sponsor-plan-card.selected{box-shadow:0 0 0 2px var(--oran-gold,#f7c85a),0 12px 26px #173d5010}
.guide-article,.guide-content{font-size:17px;line-height:1.9}.guide-article h1,.guide-content h1{line-height:1.35;font-size:clamp(28px,3.5vw,40px)}.guide-article h2,.guide-content h2{line-height:1.5;margin-top:1.7em}.guide-nav-link{font-size:14px;line-height:1.7}.guide-cat-label{font-size:14px}.guide-toc a{font-size:14px}.guide-image-zoom-trigger{margin-block:20px}.announcement-detail-body{font-size:17px;line-height:1.9}.announcement-article-title{line-height:1.35!important;font-size:clamp(28px,4vw,42px)!important}.announcement-detail-meta{font-size:14px;line-height:1.7}
.content-retry{display:grid;justify-items:center;gap:13px;text-align:center;padding:32px 24px;border:1px solid #d8e5eb;border-radius:13px;background:#f5fafd;color:#476474;width:100%;grid-column:1/-1}.content-retry p{margin:0;font-size:16px;line-height:1.8}.content-retry .btn{min-height:42px}.content-loading{display:grid;gap:15px;width:100%;min-height:190px;grid-column:1/-1}.content-loading>.skeleton{min-height:85px;width:100%;border-radius:12px}.recent-player-stack .content-loading{min-height:150px}.content-loading[hidden]{display:none}
#blocks>.content-retry,#hallRoot>.content-retry,#hallDetailRoot>.content-retry{width:min(800px,calc(100% - 28px));margin:150px auto 80px;min-height:260px}.hall-gallery img[data-responsive-src],.feature-cover img[data-responsive-src],.announcement-index-cover img[data-responsive-src]{background:#e6f0f5}
:is(a,button,input,select,textarea):focus-visible{outline:3px solid #efb956;outline-offset:3px}.oran-footer-links{font-size:14px}.copyright{font-size:13px}
@media(max-width:960px){.oran-depth-layout{grid-template-columns:1fr!important;gap:26px!important}.hero-brand-logo{width:min(540px,82vw)!important}.depth-paper-card{max-width:560px}.sponsor-hall-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.oran-brand-hero.oran-depth-hero{min-height:0!important}.oran-depth-layout{padding-top:118px!important;padding-bottom:175px!important}.depth-paper-card{padding:25px 22px!important;border-radius:14px!important}.depth-paper-card h1{font-size:26px!important}.hero-brand-logo{width:min(440px,86vw)!important}.hero-brand-copy{font-size:15px}.public-join-hud{font-size:14px}.section{padding-block:54px}.section-head{margin-bottom:24px}.page-hero{padding-top:124px!important;padding-bottom:42px!important;min-height:260px!important}.page-hero h1{font-size:34px!important}.page-hero p{font-size:16px}.sponsor-hall-grid{grid-template-columns:1fr}.sponsor-hall-card{padding:23px}.gallery-grid{grid-template-columns:1fr!important;grid-auto-rows:240px}.oran-navlinks>a{justify-content:flex-start;min-height:46px;font-size:16px}.oran-server-pill{min-height:50px}.announcement-detail-body{padding:24px 20px}.sponsor-plan-card{min-height:44px}.sponsor-hall-member h3{font-size:22px}}
@media(prefers-reduced-motion:reduce){.sponsor-plan-card{transition:none}.depth-paper-card:hover{transform:none!important}}
