/* FILE VERSION: Aemazon-Ranking-v1.1.2-source-merge */
:root {
  --rk-orange:#ff5722;
  --rk-orange-soft:#fff4ef;
  --rk-purple:#6b35f4;
  --rk-purple-soft:#f7f2ff;
  --rk-ink:#161616;
  --rk-muted:#74777e;
  --rk-line:#e7e8eb;
  --rk-soft:#f7f7f8;
  --rk-card:#fff;
}

* { box-sizing:border-box; }
html { background:#fff; }
body.aemazon-ranking-page {
  margin:0;
  color:var(--rk-ink);
  background:#fff;
  font-family:"Pretendard","Noto Sans KR","Segoe UI",Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}
.aemazon-ranking-page a { color:inherit; text-decoration:none; }
.aemazon-ranking-page button,
.aemazon-ranking-page select { font:inherit; }
.sr-only {
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

.rk-shell {
  display:grid;
  grid-template-columns:270px minmax(0,1fr);
  width:100%;
  min-height:calc(100vh - 64px);
}
.rk-main { min-width:0; width:100%; }
.rk-server-tabs,
.rk-server-bottom-nav { display:none; }
.rk-server-tabs[hidden],
.rk-server-bottom-nav[hidden] { display:none!important; }
.rk-content {
  width:min(820px, calc(100% - 48px));
  margin:0 auto;
  padding:42px 0 90px;
}

.rk-desktop-tabs {
  position:sticky;
  z-index:80;
  top:64px;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  height:62px;
  padding:0 max(24px, calc((100% - 820px)/2));
  border-bottom:1px solid var(--rk-line);
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(14px);
}
.rk-desktop-tabs a {
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#676b72;
  font-size:15px;
  font-weight:800;
}
.rk-desktop-tabs a.is-active { color:var(--rk-ink); }
.rk-desktop-tabs a.is-active::after {
  content:"";
  position:absolute;
  left:25%;right:25%;bottom:-1px;
  height:4px;
  border-radius:9px 9px 0 0;
  background:var(--rk-orange);
}

.rk-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin:0 4px 24px;
}
.rk-kicker {
  margin:0 0 6px;
  color:var(--rk-orange);
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
}
.rk-kicker--ghost { color:var(--rk-purple); }
.rk-heading h1 {
  margin:0;
  font-size:34px;
  line-height:1.18;
  letter-spacing:-.045em;
}
.rk-heading p:not(.rk-kicker) {
  margin:10px 0 0;
  color:var(--rk-muted);
  font-size:15px;
}
.rk-countdown {
  flex:0 0 auto;
  padding:12px 17px;
  border-radius:999px;
  color:var(--rk-orange);
  background:var(--rk-orange-soft);
  font-weight:850;
  white-space:nowrap;
}

.rk-mode-tabs,
.rk-period-tabs {
  display:grid;
  overflow:hidden;
  margin-bottom:20px;
  border:1px solid var(--rk-line);
  border-radius:16px;
  background:#fafafa;
}
.rk-mode-tabs { grid-template-columns:repeat(2,1fr); }
.rk-period-tabs { grid-template-columns:repeat(3,1fr); }
.rk-mode-tabs a,
.rk-period-tabs a {
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  color:#555960;
  font-size:16px;
  font-weight:750;
}
.rk-mode-tabs a.is-active,
.rk-period-tabs a.is-active {
  margin:2px;
  border:1px solid #ffb79e;
  border-radius:13px;
  color:var(--rk-orange);
  background:#fff;
  box-shadow:0 3px 12px rgba(20,20,20,.05);
}
.rk-mode-tabs--ghost a.is-active {
  border-color:#a784ff;
  color:var(--rk-purple);
}

.rk-my-card {
  display:grid;
  grid-template-columns:auto auto minmax(0,1fr) auto;
  align-items:center;
  gap:20px;
  min-height:150px;
  margin:0 0 28px;
  padding:24px 30px;
  border:1.5px solid #ff9f7e;
  border-radius:24px;
  background:linear-gradient(105deg,#fff 0%,#fff8f4 100%);
}
.rk-my-card--ghost {
  border-color:#a77eff;
  background:linear-gradient(105deg,#fff 0%,#faf7ff 100%);
}
.rk-my-rank { min-width:105px; color:var(--rk-orange); }
.rk-my-card--ghost .rk-my-rank { color:var(--rk-purple); }
.rk-my-rank span { display:block; margin-bottom:8px; font-size:14px; }
.rk-my-rank strong { font-size:44px; line-height:1; letter-spacing:-.05em; }
.rk-my-rank small { font-size:18px; }
.rk-avatar {
  display:block;
  width:72px;height:72px;
  border:1px solid #dfe1e5;
  border-radius:50%;
  background:#f1f2f4;
  object-fit:cover;
}
.rk-avatar--large { width:88px;height:88px; }
.rk-avatar--row { width:44px;height:44px; }
.rk-avatar--empty { display:block; }
.rk-my-copy { min-width:0; }
.rk-my-copy strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:23px; }
.rk-my-copy b { display:block; margin-top:8px; color:var(--rk-orange); font-size:19px; }
.rk-my-card--ghost .rk-my-copy b { color:var(--rk-purple); }
.rk-my-copy small { display:block; margin-top:6px; color:var(--rk-muted); font-size:12px; }
.rk-movement {
  color:var(--rk-orange);
  font-size:13px;
  font-weight:850;
  white-space:nowrap;
}
.rk-movement.is-down { color:#3485f7; }
.rk-ghost-mark { color:#9b6cff; font-size:34px; }
.rk-login-copy { min-width:0; grid-column:1/4; }
.rk-login-copy strong { display:block; font-size:20px; }
.rk-login-copy span { display:block; margin-top:7px; color:var(--rk-muted); font-size:14px; }
.rk-login-button {
  padding:12px 18px;
  border-radius:999px;
  color:#fff!important;
  background:var(--rk-orange);
  font-weight:850;
}
.rk-login-button--ghost { background:var(--rk-purple); }

.rk-podium {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  align-items:end;
  margin:0 0 22px;
}
.rk-podium-item {
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  min-width:0;
  height:270px;
  padding:25px 10px 18px;
  border:1px solid var(--rk-line);
  background:#fff;
}
.rk-podium-item--1 {
  z-index:1;
  height:315px;
  padding-top:23px;
  border-color:#f1c46d;
  border-radius:22px 22px 0 0;
  box-shadow:0 9px 28px rgba(196,130,17,.08);
}
.rk-podium-item--2 { border-radius:22px 0 0 0; }
.rk-podium-item--3 { border-radius:0 22px 0 0; }
.rk-medal {
  display:grid;
  place-items:center;
  width:48px;height:48px;
  margin-bottom:18px;
  border-radius:50%;
  color:#9b9ea4;
  font-size:24px;
  font-weight:950;
}
.rk-medal::before,
.rk-medal::after { content:"❯"; font-size:18px; opacity:.72; }
.rk-medal { grid-template-columns:1fr auto 1fr; }
.rk-medal::before { transform:rotate(150deg); }
.rk-medal::after { transform:rotate(30deg); }
.rk-medal--1 { color:#dfa40f;background:#fff9e5; }
.rk-medal--3 { color:#b9682a;background:#fff4eb; }
.rk-podium-item .rk-avatar { width:76px;height:76px;margin-bottom:15px; }
.rk-podium-item strong {
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:19px;
}
.rk-podium-item b { margin-top:10px; color:var(--rk-orange); font-size:18px; }
.rk-podium--ghost .rk-podium-item b { color:var(--rk-purple); }
.rk-podium-item small { margin-top:8px; color:var(--rk-muted); font-size:11px; text-align:center; }

.rk-list { display:grid; gap:10px; }
.rk-row {
  display:grid;
  grid-template-columns:48px 44px minmax(0,1fr) auto 66px;
  align-items:center;
  gap:13px;
  min-height:76px;
  padding:12px 18px;
  border:1px solid var(--rk-line);
  border-radius:16px;
  background:#fff;
}
.rk-row.is-me { border-color:#ffb098; background:#fff9f6; }
.rk-list--ghost .rk-row.is-me { border-color:#aa83ff; background:#fbf9ff; }
.rk-row-rank { text-align:center; font-size:19px; }
.rk-row-user { min-width:0; }
.rk-row-user strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:17px; }
.rk-row-score { font-size:17px; }
.rk-row-score--ghost { color:var(--rk-purple); }
.rk-row-stat { color:var(--rk-muted); font-size:13px; }
.rk-empty { padding:50px 20px; color:var(--rk-muted); text-align:center; }

.rk-outline-button {
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:220px;
  min-height:48px;
  margin:26px auto 0;
  padding:0 22px;
  border:1.5px solid var(--rk-orange);
  border-radius:14px;
  color:var(--rk-orange);
  background:#fff;
  font-weight:850;
  cursor:pointer;
}
.rk-outline-link { width:max-content; }
.rk-button-help,.rk-safe-note {
  margin:9px 0 0;
  color:var(--rk-muted);
  font-size:12px;
  text-align:center;
}
.rk-score-rules {
  position:fixed;
  z-index:2147483000;
  left:50%;bottom:22px;
  width:min(560px,calc(100% - 28px));
  max-height:min(720px,calc(100dvh - 44px));
  overflow:auto;
  padding:22px;
  border:1px solid var(--rk-line);
  border-radius:24px;
  background:#fff;
  box-shadow:0 25px 80px rgba(0,0,0,.24);
  transform:translateX(-50%);
}
.rk-score-rules-head { display:flex; align-items:center; justify-content:space-between; }
.rk-score-rules-head strong { font-size:21px; }
.rk-score-rules-head button { width:38px;height:38px;border:0;border-radius:50%;background:#f1f2f4;font-size:25px; }
.rk-score-rules ul { display:grid;gap:0;margin:18px 0 0;padding:0;list-style:none; }
.rk-score-rules li {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:3px 14px;
  padding:13px 2px;
  border-bottom:1px solid var(--rk-line);
}
.rk-score-rules li b { color:var(--rk-orange); }
.rk-score-rules li small { grid-column:1/3;color:var(--rk-muted); }
.rk-score-rules>p { margin:18px 0 0;color:var(--rk-muted);font-size:12px; }

.rk-back { display:inline-flex;margin-bottom:18px;font-size:29px;font-weight:500; }
.rk-heading--course { margin-bottom:18px; }
.rk-course-select-wrap { display:block; }
.rk-course-select {
  width:100%;height:58px;
  padding:0 48px 0 18px;
  border:1px solid #dadce1;
  border-radius:14px;
  color:var(--rk-ink);
  background:#fff;
  font-size:17px;
  font-weight:850;
  appearance:auto;
}
.rk-course-chips {
  display:flex;
  gap:10px;
  overflow-x:auto;
  margin:14px 0 22px;
  padding:1px 0 5px;
  scrollbar-width:none;
}
.rk-course-chips::-webkit-scrollbar { display:none; }
.rk-course-chips a {
  display:flex;
  flex:0 0 auto;
  align-items:center;
  gap:9px;
  min-width:140px;
  padding:7px 12px 7px 7px;
  border:1px solid #dedfe3;
  border-radius:13px;
  color:#666a72;
  background:#fff;
  font-weight:800;
}
.rk-course-chips a.is-active { border:2px solid var(--rk-purple);color:var(--rk-purple);padding:6px 11px 6px 6px; }
.rk-course-chip-art {
  width:64px;height:46px;
  border-radius:9px;
  background:
      linear-gradient(140deg,transparent 35%,rgba(255,255,255,.85) 36% 40%,transparent 41%),
      linear-gradient(135deg,#1c2540,#5268a5);
}

.rk-course-leader {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(190px,.8fr) 88px;
  align-items:center;
  gap:18px;
  padding:24px 26px;
  border:1.5px solid #a57cff;
  border-radius:20px;
  background:linear-gradient(120deg,#fff,#faf7ff);
}
.rk-course-meta { min-width:0; }
.rk-course-meta>strong { display:block;color:var(--rk-purple);font-size:20px; }
.rk-course-meta>span { display:block;margin-top:6px;color:var(--rk-muted);font-size:13px; }
.rk-course-meta svg { width:100%;height:58px;margin-top:8px;overflow:visible; }
.rk-course-meta svg path { fill:none;stroke:var(--rk-purple);stroke-width:3;stroke-linecap:round;stroke-linejoin:round; }
.rk-course-meta svg circle { fill:#fff;stroke:var(--rk-purple);stroke-width:3; }
.rk-course-record { padding-left:22px;border-left:1px solid #d9ccff; }
.rk-course-record span { display:block;color:var(--rk-purple);font-size:12px; }
.rk-course-record strong { display:block;margin-top:8px;color:var(--rk-purple);font-size:35px;letter-spacing:.015em; }
.rk-course-record b { display:block;margin-top:4px;font-size:17px; }
.rk-course-my {
  display:grid;
  grid-template-columns:120px minmax(160px,.8fr) minmax(0,1fr) 44px;
  align-items:center;
  gap:18px;
  margin:16px 0 20px;
  padding:20px 24px;
  border:1.5px solid var(--rk-orange);
  border-radius:18px;
  background:#fff9f5;
}
.rk-course-my>div>span,.rk-course-my>div>small { display:block;color:var(--rk-muted);font-size:12px; }
.rk-course-my>div>strong { font-size:28px;color:var(--rk-orange); }
.rk-course-my>div>strong small { font-size:15px; }
.rk-course-my>div>b { display:block;color:var(--rk-orange);font-size:27px; }
.rk-course-my>div:nth-child(3)>strong { display:block;color:var(--rk-ink);font-size:17px; }

.rk-course-table { overflow:hidden;border:1px solid var(--rk-line);border-radius:16px; }
.rk-course-row {
  display:grid;
  grid-template-columns:44px 44px minmax(0,1fr) auto 64px;
  align-items:center;
  gap:12px;
  min-height:72px;
  padding:10px 16px;
  border-bottom:1px solid var(--rk-line);
  background:#fff;
}
.rk-course-row:last-child { border-bottom:0; }
.rk-course-row.is-me { background:#fff9f5; }
.rk-course-rank { text-align:center;font-size:20px; }
.rk-course-rank.is-medal { color:#d58c16; }
.rk-course-row>div { min-width:0; }
.rk-course-row>div strong,.rk-course-row>div span { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.rk-course-row>div strong { font-size:16px; }
.rk-course-row>div span { margin-top:3px;color:var(--rk-muted);font-size:12px; }
.rk-course-row>b { color:var(--rk-purple);font-size:18px; }
.rk-course-row>span { text-align:right;font-size:13px; }
.rk-challenge-button {
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:62px;
  margin-top:28px;
  border-radius:14px;
  color:#fff!important;
  background:linear-gradient(90deg,#ff4c12,#ff642d);
  box-shadow:0 12px 28px rgba(255,82,29,.22);
  font-size:20px;
  font-weight:900;
}
.rk-error {
  display:grid;
  gap:8px;
  margin-bottom:22px;
  padding:22px;
  border:1px solid #ffc5b2;
  border-radius:18px;
  background:#fff7f3;
}
.rk-error strong { font-size:18px; }
.rk-error span { color:var(--rk-muted); }
.rk-error a { width:max-content;margin-top:4px;color:var(--rk-orange);font-weight:850; }

@media (max-width:900px) {
  .rk-shell { grid-template-columns:1fr; }
  .rk-shell>.side,
  .rk-shell>.sidebar,
  .rk-shell>aside { display:none!important; }
}

@media (max-width:767px) {
  .rk-desktop-tabs { display:none; }
  .rk-server-tabs {
    position:relative;
    z-index:75;
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    width:100%;
    height:54px;
    padding:0 8px;
    border-bottom:1px solid var(--rk-line);
    background:#fff;
  }
  .rk-server-tab {
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:0;
    padding:0 3px;
    color:#73767c!important;
    font-size:13px;
    font-weight:750;
    white-space:nowrap;
  }
  .rk-server-tab.is-active { color:#151515!important;font-weight:900; }
  .rk-server-tab.is-active::after {
    content:"";
    position:absolute;
    left:16%;right:16%;bottom:-1px;
    height:3px;
    border-radius:999px 999px 0 0;
    background:var(--rk-orange);
  }
  .rk-server-bottom-nav {
    position:fixed;
    z-index:2147481900;
    left:0;right:0;bottom:0;
    display:grid;
    grid-template-columns:repeat(5,1fr);
    height:calc(72px + env(safe-area-inset-bottom,0px));
    padding:5px 10px env(safe-area-inset-bottom,0px);
    border-top:1px solid #e8e8ea;
    background:rgba(255,255,255,.97);
    box-shadow:0 -5px 18px rgba(18,18,20,.055);
    backdrop-filter:saturate(180%) blur(18px);
  }
  .rk-server-bottom-item {
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:4px;
    min-width:0;
    min-height:52px;
    color:#73767b!important;
    font-size:10.5px;
    font-weight:800;
    line-height:1;
  }
  .rk-server-bottom-item svg { width:24px;height:24px; }
  .rk-server-bottom-item.is-active { color:var(--rk-orange)!important; }
  .rk-server-bottom-compose {
    align-self:start;
    justify-self:center;
    width:58px;
    height:58px;
    min-height:58px;
    margin-top:-16px;
    border:4px solid #fff;
    border-radius:50%;
    color:#fff!important;
    background:var(--rk-orange);
    box-shadow:0 7px 18px rgba(255,90,31,.32);
  }
  .rk-server-bottom-compose svg { width:27px;height:27px; }
  .rk-content { width:100%;padding:24px 14px calc(92px + env(safe-area-inset-bottom,0px)); }
  .rk-heading { margin:0 4px 20px;align-items:flex-start; }
  .rk-heading h1 { font-size:27px; }
  .rk-heading p:not(.rk-kicker) { margin-top:8px;font-size:13px; }
  .rk-countdown { margin-top:6px;padding:10px 12px;font-size:12px; }
  .rk-mode-tabs,.rk-period-tabs { margin-bottom:16px;border-radius:14px; }
  .rk-mode-tabs a,.rk-period-tabs a { min-height:48px;font-size:14px; }
  .rk-my-card {
    grid-template-columns:76px 64px minmax(0,1fr);
    gap:12px;
    min-height:126px;
    padding:18px 16px;
    border-radius:19px;
  }
  .rk-my-rank { min-width:0; }
  .rk-my-rank strong { font-size:36px; }
  .rk-avatar--large { width:64px;height:64px; }
  .rk-my-copy strong { font-size:19px; }
  .rk-my-copy b { margin-top:5px;font-size:16px; }
  .rk-my-copy small { font-size:10.5px; }
  .rk-my-card>.rk-movement,.rk-ghost-mark { grid-column:3;justify-self:start;margin-top:-5px;font-size:11px; }
  .rk-login-copy { grid-column:1/3; }
  .rk-login-button { grid-column:3;justify-self:end;padding:10px 14px;font-size:13px; }
  .rk-podium { margin:0 0 16px; }
  .rk-podium-item { height:220px;padding:18px 7px 13px; }
  .rk-podium-item--1 { height:258px;padding-top:18px;border-radius:18px 18px 0 0; }
  .rk-podium-item--2 { border-radius:18px 0 0 0; }
  .rk-podium-item--3 { border-radius:0 18px 0 0; }
  .rk-medal { width:38px;height:38px;margin-bottom:11px;font-size:18px; }
  .rk-medal::before,.rk-medal::after { font-size:12px; }
  .rk-podium-item .rk-avatar { width:58px;height:58px;margin-bottom:10px; }
  .rk-podium-item strong { font-size:14px; }
  .rk-podium-item b { margin-top:7px;font-size:14px; }
  .rk-podium-item small { font-size:9.5px;line-height:1.35; }
  .rk-list { gap:8px; }
  .rk-row {
    grid-template-columns:30px 38px minmax(0,1fr) auto 50px;
    gap:8px;
    min-height:66px;
    padding:9px 10px;
    border-radius:14px;
  }
  .rk-avatar--row { width:38px;height:38px; }
  .rk-row-rank { font-size:16px; }
  .rk-row-user strong { font-size:14px; }
  .rk-row-score { font-size:14px; }
  .rk-row-stat,.rk-movement { font-size:10.5px; }
  .rk-outline-button { min-width:190px;min-height:45px;margin-top:21px;font-size:14px; }
  .rk-back { margin:0 0 12px 3px;font-size:25px; }
  .rk-heading--course { margin-bottom:16px; }
  .rk-course-select { height:52px;font-size:15px; }
  .rk-course-chips { margin:11px 0 17px;gap:8px; }
  .rk-course-chips a { min-width:118px;padding:6px 10px 6px 6px;font-size:13px; }
  .rk-course-chip-art { width:48px;height:38px; }
  .rk-course-leader {
    grid-template-columns:minmax(0,1fr) minmax(130px,.85fr) 54px;
    gap:10px;
    padding:17px 15px;
    border-radius:17px;
  }
  .rk-course-meta>strong { font-size:16px; }
  .rk-course-meta>span { font-size:11px; }
  .rk-course-meta svg { height:45px; }
  .rk-course-record { padding-left:12px; }
  .rk-course-record strong { font-size:23px; }
  .rk-course-record b { font-size:13px; }
  .rk-course-leader>.rk-avatar { width:50px;height:50px; }
  .rk-course-my {
    grid-template-columns:68px minmax(92px,.8fr) minmax(0,1fr) 38px;
    gap:8px;
    margin:12px 0 16px;
    padding:14px 12px;
  }
  .rk-course-my>div>strong { font-size:23px; }
  .rk-course-my>div>b { font-size:18px; }
  .rk-course-my>div:nth-child(3)>strong { font-size:13px; }
  .rk-course-my>div>span,.rk-course-my>div>small { font-size:9.5px; }
  .rk-course-row {
    grid-template-columns:28px 36px minmax(0,1fr) auto 46px;
    gap:7px;
    min-height:62px;
    padding:8px 9px;
  }
  .rk-course-rank { font-size:15px; }
  .rk-course-row>div strong { font-size:13px; }
  .rk-course-row>div span { font-size:10px; }
  .rk-course-row>b { font-size:13px; }
  .rk-course-row>span { font-size:10px; }
  .rk-challenge-button { min-height:54px;margin-top:20px;font-size:17px; }
}

@media (max-width:390px) {
  .rk-server-tab { font-size:12px; }
  .rk-content { padding-left:10px;padding-right:10px; }
  .rk-heading h1 { font-size:24px; }
  .rk-countdown { font-size:11px; }
  .rk-my-card { grid-template-columns:68px 56px minmax(0,1fr);padding:15px 12px; }
  .rk-my-rank strong { font-size:32px; }
  .rk-avatar--large { width:56px;height:56px; }
  .rk-row { grid-template-columns:26px 36px minmax(0,1fr) auto 42px;gap:6px;padding-left:7px;padding-right:7px; }
  .rk-course-leader { grid-template-columns:minmax(0,1fr) minmax(116px,.8fr); }
  .rk-course-leader>.rk-avatar { display:none; }
}

@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto!important;transition:none!important;animation:none!important; }
}
