@charset "UTF-8";

.castle-page { --castle-gold:#dfc18b; --castle-blue:#a6e0ee; }
.castle-page .castle-siblings { display:flex; align-items:center; flex-wrap:wrap; gap:12px 28px; margin:7px 0 0; font-size:12px; color:#91a8ba; }
.castle-page .castle-siblings a { display:block; min-height:38px; padding-block:7px; }
.castle-page .castle-siblings a:hover,.castle-page .castle-siblings a[aria-current] { color:#c8ebf4; }
.castle-page .castle-siblings a[aria-current] { border-bottom:1px solid #a6e0ee80; }
.castle-page .guide-hero { grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); padding-top:30px; gap:32px; }
.castle-page .guide-hero::before { content:none; }
.castle-page .castle-hero-art { margin:0; min-width:0; text-align:center; }
.castle-page .castle-art-stage { display:grid; place-items:center; height:480px; width:100%; max-width:480px; margin-inline:auto; }
.castle-page .castle-art-stage img { display:block; width:100%; height:100%; object-fit:contain; background:transparent; border:0; box-shadow:none; filter:none; }
.castle-page .castle-hero-art figcaption { color:#b1cfdd; font-size:13px; margin-top:8px; }
.castle-page .castle-hero-art figcaption span { display:block; color:#7f96a9; font-size:10px; letter-spacing:.7px; margin-top:5px; }
.castle-page .castle-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; padding-block:25px; margin:0; border-bottom:1px solid var(--line); }
.castle-page .castle-facts>div { min-width:0; padding-left:18px; border-left:1px solid #a6e0ee40; }
.castle-page .castle-facts dt { font-size:11px; color:#91a9bc; margin-bottom:6px; }
.castle-page .castle-facts dd { margin:0; color:#cee7ef; font-size:24px; line-height:1.5; font-variant-numeric:tabular-nums; }
.castle-page .castle-facts dd small { color:#96b4c7; font-size:12px; }
.castle-page .castle-reward-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.castle-page .castle-reward-card { display:flex; flex-direction:column; min-width:0; padding:26px; border:1px solid #a6e0ee40; border-top:2px solid #a6e0ee; background:#101c29; }
.castle-page .castle-royal-card { border-color:#dfc18b40; border-top-color:var(--castle-gold); background:#1b1d26; }
.castle-page .castle-role { font-size:10px; color:#95b5cb; letter-spacing:1.8px; margin:0 0 18px; }
.castle-page .castle-royal-card .castle-role { color:#bea77f; }
.castle-page .castle-reward-card h3 { font-size:25px; font-weight:500; color:#c7eaf4; line-height:1.5; margin:0 0 6px; }
.castle-page .castle-royal-card h3 { color:#e9d5b0; }
.castle-page .castle-card-subtitle { color:#99aebf; font-size:12px; margin:0 0 23px; }
.castle-page .castle-reward-card dl { border-top:1px solid var(--line); margin:0 0 21px; padding-top:20px; }
.castle-page .castle-reward-card dl>div+div { margin-top:16px; }
.castle-page .castle-reward-card dt { color:#8da2b4; font-size:11px; margin-bottom:4px; }
.castle-page .castle-reward-card dd { margin:0; color:#ccdae5; font-size:14px; }
.castle-page .castle-card-link { display:inline-flex; align-items:center; gap:12px; min-height:44px; color:#a6e0ee; font-size:13px; }
.castle-page .castle-card-link:hover { color:#e3f9ff; }
.castle-page .castle-reward-card .castle-card-link { margin-top:auto; padding-top:12px; border-top:1px solid var(--line); }
.castle-page .castle-royal-card .castle-card-link { color:#dfc18b; }
.castle-page .castle-card-link .icon { width:17px; height:17px; }
.castle-page .castle-bonus-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:0 0 28px; border:1px solid #8eb8d038; background:#101d2b; padding:27px 0; }
.castle-page .castle-bonus-grid>div { padding:0 24px; }
.castle-page .castle-bonus-grid>div+div { border-left:1px solid #8eb8d038; }
.castle-page .castle-bonus-grid dt { color:#93aebf; font-size:12px; margin-bottom:9px; }
.castle-page .castle-bonus-grid dd { color:#b9eaf5; margin:0; font-size:39px; font-weight:500; line-height:1.2; font-variant-numeric:tabular-nums; }
.castle-page .castle-table-hint { color:#849caf; font-size:11px; margin:0 0 10px; }
.castle-page .castle-table-wrap { border:1px solid var(--line); }
.castle-page .castle-table-wrap:focus-visible { outline:2px solid #a6e0ee; outline-offset:4px; }
.castle-page .castle-table { min-width:570px; margin:0; }
.castle-page .castle-table th,.castle-page .castle-table td { padding:17px; }
.castle-page .castle-table tbody th { background:#101c29; color:#d4e4ee; }
.castle-page .castle-table tbody td { color:#b9eaf5; font-variant-numeric:tabular-nums; }
.castle-page .castle-table tbody tr:last-child>* { border-bottom:0; }
.castle-page .castle-condition { display:grid; grid-template-columns:150px minmax(0,1fr); gap:24px; border-top:1px solid var(--line); padding-top:24px; margin-top:28px; }
.castle-page .castle-condition-label { color:#bdd9e7; font-size:12px; }
.castle-page .castle-condition ol { margin:0; padding-left:20px; color:#94acbe; }
.castle-page .castle-condition li+li { margin-top:17px; }
.castle-page .castle-condition li strong { display:block; color:#cbdbe7; font-size:13px; font-weight:500; }
.castle-page .castle-condition li span { display:block; color:#96adbf; font-size:12px; margin-top:4px; }
.castle-page .castle-royal-panel { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); border:1px solid #dfc18b40; background:#1b1d26; }
.castle-page .castle-royal-panel>div:first-child { padding:31px 27px; align-self:center; }
.castle-page .castle-royal-panel .castle-role { color:#b4a184; margin-bottom:16px; letter-spacing:1px; }
.castle-page .castle-formula { color:#e5ca9b; margin:0; font-size:34px; font-variant-numeric:tabular-nums; line-height:1.5; white-space:nowrap; }
.castle-page .castle-formula span { color:#b69f7f; padding-inline:2px; }
.castle-page .castle-formula-label { color:#b9a88d; font-size:12px; margin:5px 0 0; }
.castle-page .castle-royal-copy { border-left:1px solid #dfc18b26; padding:29px 26px; }
.castle-page .castle-royal-copy h3 { margin:0 0 12px; color:#e5d2b2; font-size:17px; line-height:1.7; font-weight:500; }
.castle-page .castle-royal-copy>p { color:#b7bbc6; font-size:13px; margin:0 0 12px; }
.castle-page .castle-royal-copy .castle-card-link { color:#dfc18b; font-size:12px; }
.castle-page .castle-inline-note { font-size:12px; color:#8b9fb2; margin:17px 0 0; }
.castle-page .castle-related { display:grid; gap:14px; }
.castle-page .castle-related>a { display:flex; align-items:center; justify-content:space-between; gap:22px; padding:22px 25px; border:1px solid var(--line); background:#101b28; }
.castle-page .castle-related>a:hover { border-color:#a6e0ee70; }
.castle-page .castle-related h3 { color:#cce6f1; font-size:17px; font-weight:500; margin:0 0 5px; }
.castle-page .castle-related p { font-size:13px; color:#92a9bc; margin:0; }
.castle-page .castle-related .icon { flex-shrink:0; color:#a6e0ee; }
.castle-page .castle-source { font-size:12px; margin:25px 0 0; color:#8da4b7; }
.castle-page .castle-source a { display:block; width:fit-content; min-height:44px; padding-block:10px; color:#a6e0ee; }
@media(max-width:960px) {
  .castle-page .guide-hero { gap:18px; }
  .castle-page .castle-reward-card { padding:22px; }
  .castle-page .castle-condition { grid-template-columns:125px minmax(0,1fr); gap:18px; }
  .castle-page .castle-royal-panel { grid-template-columns:1fr; }
  .castle-page .castle-royal-panel>div:first-child { padding:24px; }
  .castle-page .castle-royal-copy { border-left:0; border-top:1px solid #dfc18b26; padding:24px; }
}
@media(max-width:640px) {
  .castle-page .castle-siblings { gap:7px 18px; font-size:11px; }
  .castle-page .guide-hero { display:flex; flex-direction:column; align-items:stretch; padding-block:35px 35px; gap:22px; }
  .castle-page .castle-art-stage { height:300px; max-width:300px; }
  .castle-page .castle-facts { gap:18px; padding-block:22px; }
  .castle-page .castle-facts>div { padding-left:11px; }
  .castle-page .castle-facts dt { font-size:10px; line-height:1.7; }
  .castle-page .castle-facts dd { font-size:18px; }
  .castle-page .castle-facts dd small { font-size:10px; }
  .castle-page .castle-reward-grid { grid-template-columns:1fr; gap:16px; }
  .castle-page .castle-reward-card { padding:24px; }
  .castle-page .castle-reward-card dl { display:grid; grid-template-columns:1fr 1fr; gap:17px; }
  .castle-page .castle-reward-card dl>div:first-child { grid-column:1 / -1; }
  .castle-page .castle-reward-card dl>div+div { margin-top:0; }
  .castle-page .castle-bonus-grid { padding-block:23px; }
  .castle-page .castle-bonus-grid>div { padding-inline:15px; }
  .castle-page .castle-bonus-grid dt { font-size:11px; }
  .castle-page .castle-bonus-grid dd { font-size:34px; }
  .castle-page .castle-condition { grid-template-columns:1fr; gap:14px; }
  .castle-page .castle-royal-panel>div:first-child { padding:25px; }
  .castle-page .castle-related>a { padding:20px; }
}
@media(max-width:370px) {
  .castle-page .castle-facts { grid-template-columns:1fr; gap:15px; }
  .castle-page .castle-facts>div { display:flex; align-items:center; justify-content:space-between; gap:10px; }
  .castle-page .castle-facts dt { margin:0; }
  .castle-page .castle-reward-card dl { display:block; }
  .castle-page .castle-reward-card dl>div+div { margin-top:15px; }
}
@media print {
  .castle-page .castle-hero-art,.castle-page .castle-siblings { display:none; }
  .castle-page .guide-hero { display:block; }
  .castle-page .castle-reward-card,.castle-page .castle-royal-panel,.castle-page .castle-bonus-grid { break-inside:avoid; background:transparent; color:#111; }
  .castle-page .castle-reward-card h3,.castle-page .castle-reward-card dd,.castle-page .castle-bonus-grid dd,.castle-page .castle-formula { color:#111; }
}
