:root {--portal-h:69px; --nv-open:248px; --nv-mini:72px; --nv-gap:248px; --portal-ink:var(--theme-text, #25282B); --portal-soft:rgba(0,0,0,.05); --portal-active:rgba(242,97,184,.12); --portal-muted:var(--theme-text-soft, #666d78); --portal-dim:var(--theme-text-muted, #999); --portal-border:var(--theme-border, #eee); --portal-border-strong:var(--theme-border-strong, #ddd); --portal-panel:var(--theme-surface, var(--rb-main-bg)); --portal-subtle:var(--theme-surface-subtle, #f6f6f9); --portal-row:var(--theme-surface-muted, #f7f7f8); --portal-shadow:var(--theme-shadow, 0 16px 40px rgba(9,36,75,.12)); --portal-success-bg:#e7f8ee; --portal-success-border:#cfeede; --portal-success-text:#4f9e70; --portal-success-hover:#438a61;}
.portal_search_suggest,.quest-panel,.header-account-panel {border:1px solid #eee; border-radius:16px; background:var(--portal-panel); box-shadow:var(--portal-shadow);}
html.nv-aside-hidden {--nv-gap:var(--nv-mini);}
#contents_wrap, footer, .debug_bar_wrap {margin-left:var(--nv-gap);}
#contents_wrap {padding-top:var(--portal-h); box-sizing:border-box;}

/* header */
.p-portal {position:fixed; top:0; left:0; z-index:110; width:100%; height:var(--portal-h); background:var(--rb-header-color); border-bottom:0; box-shadow:none; box-sizing:border-box;}
#header.p-portal {z-index:110; padding-right:20px; background:var(--rb-header-color); border-bottom:0!important; box-shadow:none;}
.p-portal * {box-sizing:border-box;}
.p-wrap {display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; gap:20px; width:100%; height:100%; box-sizing:border-box;}
.mobile {display:none!important;}

/* logo/menu button */
.p-brand {display:flex; align-items:center; flex:0 0 auto; min-width:0;}
.p-chip {display:inline-flex; align-items:center; justify-content:center; flex:0 0 52px; width:52px; height:44px; margin:0; padding:0; border:0; background:transparent; color:#09244B; line-height:1; cursor:pointer; box-sizing:border-box;}
.p-menu-toggle.pc {flex-basis:52px; width:52px; height:44px;}
.p-chip svg {display:block; flex:0 0 24px; width:24px; height:24px;}
.rb-logo {position:relative; display:inline-flex; align-items:center; flex:0 0 auto; line-height:1;}
.rb-logo::before {content:""; position:absolute; top:-22px; left:2px; width:34px; height:30px; background-color:var(--rb-main-color); -webkit-mask:url("./icons/BunnyFolded.svg") center/contain no-repeat; mask:url("./icons/BunnyFolded.svg") center/contain no-repeat; pointer-events:none;}
.rb-logo:hover::before {-webkit-mask:url("./icons/BunnyStanding.svg") center/contain no-repeat; mask:url("./icons/BunnyStanding.svg") center/contain no-repeat;}
.rb-logo img {display:block; height:40px; width:auto; filter:brightness(0);}

/* search */
.search_top_wrap {position:relative; width:400px; min-width:0; margin:0; padding:0;}
.search_top_wrap form {width:100%; max-width:400px; margin:0 auto;}
.search_top_wrap_inner {position:relative;}
.search_top_wrap input {width:100%; height:40px; padding:0 44px 0 15px; border:0!important; border-radius:40px; background:var(--portal-soft); color:#000; outline:0!important; box-shadow:none!important;}
.search_top_wrap input::placeholder {font-family:'font-R', sans-serif; color:#999;}
.search_top_wrap input:focus, .search_top_wrap input:focus-visible {border:0!important; outline:1px solid #25282B!important; outline-offset:0; box-shadow:none!important;}
.search_top_wrap_inner > button {position:absolute; top:10px; right:15px; width:20px; height:20px; margin:0; padding:0; border:0; background:transparent; line-height:1; cursor:pointer;}
.search_top_wrap_inner > button svg {display:block; width:20px; height:20px;}
.ser_display_none .search_top_wrap_inner {display:none;}
.portal_search_suggest {display:none; position:absolute; top:calc(100% + 10px); left:0; z-index:120; width:100%; max-height:519px; padding:18px; overflow-x:hidden; overflow-y:auto; overflow-anchor:none; scrollbar-gutter:stable; scrollbar-width:thin; scrollbar-color:rgba(9,36,75,.35) transparent;}
.portal_search_suggest::-webkit-scrollbar {width:6px;}
.portal_search_suggest::-webkit-scrollbar-track {background:transparent;}
.portal_search_suggest::-webkit-scrollbar-thumb {border-radius:999px; background:rgba(9,36,75,.35);}
.search_top_wrap.is-suggest-open .portal_search_suggest {display:block;}
.portal_search_suggest * {max-width:100%; box-sizing:border-box;}
.portal_search_suggest ul, .portal_search_suggest li {float:none; line-height:normal;}
.portal_search_suggest .rb_live_suggest, .portal_search_suggest .rb_btm_srecent, .portal_search_suggest .rb_btm_skey, .portal_search_suggest .btm_sbanner, .portal_search_suggest .rb_btm_sbbs {display:block; margin:0; padding:0; list-style:none;}
.portal_search_suggest .rb_live_suggest[hidden], .rb_btm_search_pn .rb_live_suggest[hidden] {display:none!important;}
.portal_search_suggest.is-live-search .rb_btm_srecent, .portal_search_suggest.is-live-search .rb_btm_skey, .portal_search_suggest.is-live-search .btm_sbanner, .portal_search_suggest.is-live-search .rb_btm_sbbs, .rb_btm_search_pn.is-live-search .rb_btm_srecent, .rb_btm_search_pn.is-live-search .rb_btm_skey, .rb_btm_search_pn.is-live-search .btm_sbanner, .rb_btm_search_pn.is-live-search .rb_btm_sbbs {display:none;}
.portal_search_suggest .rb_live_suggest_list, .rb_btm_search_pn .rb_live_suggest_list {display:flex; flex-direction:column; gap:2px; width:100%; margin:0; padding:0; list-style:none;}
.portal_search_suggest .rb_live_suggest_item, .rb_btm_search_pn .rb_live_suggest_item {display:flex; align-items:center; min-height:38px; margin:0; padding:0;}
.portal_search_suggest .rb_live_suggest_btn, .rb_btm_search_pn .rb_live_suggest_btn {display:grid; grid-template-columns:22px 1fr; align-items:center; gap:10px; width:100%; min-height:38px; padding:0; border:0; background:transparent; color:#111; text-align:left; font-size:14px; line-height:1.35; cursor:pointer;}
.portal_search_suggest .rb_live_suggest_btn::before, .rb_btm_search_pn .rb_live_suggest_btn::before {content:""; display:block; width:22px; height:22px; border-radius:50%; background:#f6f6f9 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='6' stroke='%235f6875' stroke-width='1.7'/%3E%3Cpath d='M20 20l-4.35-4.35' stroke='%235f6875' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E") 50% 50%/14px 14px no-repeat;}
.portal_search_suggest .rb_live_suggest_btn:hover, .rb_btm_search_pn .rb_live_suggest_btn:hover {color:var(--rb-main-color);}
.portal_search_suggest .rb_live_suggest_text, .rb_btm_search_pn .rb_live_suggest_text {display:block; overflow:hidden; min-width:0; white-space:nowrap; text-overflow:ellipsis;}
.portal_search_suggest .rb_live_suggest_sub, .rb_btm_search_pn .rb_live_suggest_sub {display:block; overflow:hidden; margin-top:3px; color:#999; font-size:12px; white-space:nowrap; text-overflow:ellipsis;}
.portal_search_suggest .rb_live_suggest_empty, .rb_btm_search_pn .rb_live_suggest_empty {display:flex; align-items:center; justify-content:center; min-height:60px; color:#999; font-size:13px; text-align:center;}
.rb_btm_srecent {padding:25px; padding-bottom:0;}
.rb_btm_srecent > li {padding-top:0;}
.rb_recent_search_list {display:flex; flex-direction:column; width:100%; margin:0; padding:0; list-style:none;}
.rb_recent_search_item {display:flex; align-items:center; gap:10px; width:100%; height:38px; margin:0; padding:0;}
.rb_recent_search_icon {display:block; flex:0 0 22px; width:22px; height:22px; border-radius:50%; background:#f6f6f9 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='6' stroke='%235f6875' stroke-width='1.7'/%3E%3Cpath d='M20 20l-4.35-4.35' stroke='%235f6875' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E") 50% 50%/14px 14px no-repeat;}
.rb_recent_search_btn {display:flex; align-items:center; flex:1 1 auto; min-width:0; height:38px; overflow:hidden; padding:0; border:0!important; background:transparent; color:#999; text-align:left; font-size:14px; line-height:1; white-space:nowrap; text-overflow:ellipsis; cursor:pointer;}
.rb_recent_search_btn font {display:block; overflow:hidden; max-width:100%; line-height:1; white-space:nowrap; text-overflow:ellipsis;}
.rb_recent_search_btn:hover {color:var(--rb-main-color);}
.rb_recent_search_delete {display:flex; align-items:center; justify-content:center; flex:0 0 28px; width:28px; height:28px; margin:0; padding:0; border:0!important; background:transparent; color:#999; font-size:22px; font-weight:300; line-height:1; text-align:center; cursor:pointer;}
.rb_recent_search_delete:hover {color:var(--rb-main-color);}
.rb_recent_search_empty {display:flex; align-items:center; justify-content:center; width:100%; min-height:60px; margin:0; color:#999; font-size:13px; text-align:center;}
.rb_btm_srecent .content-divider {display:flex; align-items:center;}
.rb_btm_srecent .content-divider::before, .rb_btm_srecent .content-divider::after {content:""; flex:1; height:1px; background:#eee;}
.rb_btm_srecent .content-divider[hidden] {display:none!important;}
.rb_btm_srecent .content-more-btn {display:flex; align-items:center; justify-content:center; flex:0 0 82px; gap:6px; width:82px; height:32px; margin:0 16px; padding:0 8px; border:0; border-radius:8px; background:transparent; color:#999; font-size:14px; cursor:pointer; white-space:nowrap;}
.rb_btm_srecent .content-more-btn:hover, .rb_btm_srecent .content-more-btn:focus {background-color:#f6f6f9; color:#111;}
.rb_btm_srecent .content-more-btn[aria-expanded]::after {content:""; display:block; flex:0 0 18px; width:18px; height:18px; background-color:currentColor; -webkit-mask:url("/theme/rb.basic/skin/board/rb.bbs/img/chev.svg?v=1") center/18px 18px no-repeat; mask:url("/theme/rb.basic/skin/board/rb.bbs/img/chev.svg?v=1") center/18px 18px no-repeat;}
.rb_btm_srecent .content-more-btn.is-open::after {transform:rotate(180deg);}
.portal_search_suggest .rb_btm_skey, .portal_search_suggest .btm_sbanner, .portal_search_suggest .rb_btm_sbbs {margin-top:22px;}
.portal_search_suggest .rb_btm_heading {margin:0 0 12px; color:#111; font-size:15px; line-height:1.3;}
.portal_search_suggest .rb_btm_srecent > li {padding-top:0;}
.portal_search_suggest .rb_btm_skey > li {display:flex; flex-wrap:wrap; gap:8px; margin:0; padding-top:15px;}
.rb_btm_sbbs .rb_btm_heading {margin:0 0 15px;}
.portal_search_suggest .ser_label {display:inline-flex; align-items:center; gap:6px; min-height:32px; margin:0; padding:8px 12px; border:0; border-radius:8px; background:#f6f6f9; color:#000; font-size:13px; line-height:1; text-decoration:none; cursor:pointer;}
.portal_search_suggest .ser_label:hover {color:var(--rb-main-color);}
.portal_search_suggest .ser_label .rb_lb_rank_move {margin-left:0; font-size:11px; font-weight:600; line-height:1; white-space:nowrap;}
.portal_search_suggest .ser_label .rb_lb_rank_move_same {color:#8a8f98;}
.portal_search_suggest .ser_label .rb_lb_rank_move_new, .portal_search_suggest .ser_label .rb_lb_rank_move_up {color:#ff5a5a;}
.portal_search_suggest .ser_label .rb_lb_rank_move_down {color:#6ea8ff;}
.portal_search_suggest .btm_sbanner {display:flex; flex-direction:column; gap:10px;}
.portal_search_suggest .btm_sbanner_item {position:relative; display:block; overflow:hidden; width:100%;}
.portal_search_suggest .btm_sbanner_item.is-border {border:1px solid rgba(9,36,75,.08);}
.portal_search_suggest .btm_sbanner_item a, .portal_search_suggest .btm_sbanner_item img {display:block; width:100%; max-width:100%;}
.portal_search_suggest .btm_sbanner_item img {height:auto;}
.portal_search_suggest .hub_latest, .portal_search_suggest .rb_swiper, .portal_search_suggest .rb_swiper_inner, .portal_search_suggest .rb-swiper-wrapper {display:flex; flex-direction:column; gap:12px; width:100%; margin:0; padding:0; transform:none!important;}
.portal_search_suggest .rb_swiper_list {display:grid; grid-template-columns:56px 1fr; gap:12px; align-items:center; width:100%; margin:0!important;}
.portal_search_suggest .rb_swiper_hub_1_wrap_ul2, .portal_search_suggest .rb_swiper_hub_1_wrap_ul1 {margin:0; padding:0; list-style:none;}
.portal_search_suggest .rb_swiper_hub_1_wrap_ul2 {width:56px;}
.portal_search_suggest .rb_swiper_hub_1_wrap_ul2 img {display:block; width:56px; height:56px; border-radius:10px; object-fit:cover;}
.portal_search_suggest .rb_swiper_hub_1_wrap_ul1 {min-width:0;}
.portal_search_suggest .rb_swiper_hub_1_wrap_i {overflow:hidden; color:#999; font-size:12px; line-height:1.2; white-space:nowrap; text-overflow:ellipsis;}
.portal_search_suggest .rb_swiper_hub_1_wrap_t {overflow:hidden; margin-top:4px!important; white-space:nowrap; text-overflow:ellipsis;}
.portal_search_suggest .rb_swiper_hub_1_wrap_t a {color:#111; font-size:14px; line-height:1.35; text-decoration:none;}
.portal_search_suggest .rb_swiper_hub_1_wrap_t a:hover {color:var(--rb-main-color);}
.portal_search_suggest .rb_swiper_hub_1_wrap_i.mt-5 {margin-top:4px!important; color:#999;}

/* user actions */
.snb_wrap {--header-action-gap:24px; display:flex; align-items:center; justify-content:flex-end; justify-self:end; gap:var(--header-action-gap); margin:0; padding:0; line-height:100%;}
.snb_wrap li {float:none; list-style:none;}
.snb_wrap a {text-decoration:none;}
.snb_wrap .qm_wrap,.snb_wrap .shop_wrap {position:relative; display:flex; align-items:center; gap:var(--header-action-gap);}
.snb_wrap .qm_wrap > a, .snb_wrap .qm_wrap > button.quest-menu, .snb_wrap .shop_wrap > .shop-toggle, .snb_wrap .guest-menu-toggle {position:relative; display:inline-flex; align-items:center; justify-content:center; flex:0 0 24px; width:24px; height:24px; margin:0; padding:0; border:0; background:transparent; color:var(--portal-muted); line-height:1; cursor:pointer;}
.snb_wrap .qm_wrap > a, .snb_wrap .qm_wrap > button.quest-menu, .snb_wrap .shop_wrap > .shop-toggle, .snb_wrap .guest-menu-toggle {color:var(--portal-ink);}
#header.p-portal .snb_wrap .qm_wrap > a span, #header.p-portal .snb_wrap .qm_wrap .quest-menu .quest-badge {position:absolute; top:-8px; right:-8px; display:flex; align-items:center; justify-content:center; min-width:16px; height:16px; padding:0 5px; border-radius:16px; font-size:10px; font-weight:600; line-height:16px;}
.snb_wrap .qm_wrap > a svg, .snb_wrap .qm_wrap > button.quest-menu svg, .snb_wrap .shop_wrap > .shop-toggle svg, .snb_wrap .guest-menu-toggle svg {display:block; flex:0 0 24px; width:24px; height:24px; margin:0; overflow:visible;}
.snb_wrap .qm_wrap > a svg *, .snb_wrap .qm_wrap > button.quest-menu svg *, .snb_wrap .shop_wrap > .shop-toggle svg *, .snb_wrap .guest-menu-toggle svg * {fill:none!important; stroke:currentColor!important; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; vector-effect:non-scaling-stroke;}
.snb_wrap .qm_wrap > button.daily-box-menu svg * {fill:currentColor!important; stroke:none!important;}
.snb_wrap .qm_wrap > a:hover, .snb_wrap .qm_wrap > button.quest-menu:hover, .snb_wrap .qm_wrap > button.quest-menu[aria-expanded="true"], .snb_wrap .shop_wrap > .shop-toggle:hover, .snb_wrap .guest-menu-toggle:hover, .snb_wrap .guest-menu-toggle[aria-expanded="true"] {color:var(--rb-main-color);}
.snb_wrap .qm_wrap > a:focus-visible, .snb_wrap .qm_wrap > button.quest-menu:focus-visible, .snb_wrap .shop_wrap > .shop-toggle:focus-visible, .snb_wrap .guest-menu-toggle:focus-visible {border-radius:6px; outline:2px solid var(--portal-ink); outline-offset:2px;}
.snb_wrap .search_mobile_wrap button {display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; margin:0; padding:0; border:0; background:transparent; color:#09244B; cursor:pointer;}
.snb_wrap .search_mobile_wrap svg {display:block; width:20px; height:20px;}
.snb_wrap .member_info_wrap {margin-left:0; color:#666; font-size:14px;}
.snb_wrap .member_info_wrap a {color:#666;}
.snb_wrap .member_info_wrap span {color:#25282B;}
.snb_wrap .member_info_wrap a span {color:var(--rb-main-color);}
#header.p-portal .snb_wrap .qm_wrap > a span {background-color:var(--rb-main-color); color:#fff;}
#header.p-portal .snb_wrap .qm_wrap .quest-menu .quest-badge {background-color:#35C98A; color:#fff;}
.quest-panel {display:none; position:absolute; top:42px; right:-22px; z-index:1002; flex-direction:column; width:400px; max-width:calc(100vw - 24px); max-height:calc(100vh - 84px); overflow:hidden; color:var(--portal-ink); line-height:1.4;}
.quest-panel * {box-sizing:border-box;}
.quest-panel.is-open {display:flex;}
.quest-panel-header {display:flex; align-items:center; justify-content:space-between; flex:0 0 auto; min-height:68px; padding:16px 18px 14px 20px; border-bottom:1px solid #eee; background:var(--rb-main-bg);}
.quest-panel-title {min-width:0;}
.quest-panel-title strong {display:block; color:var(--portal-ink); font-size:16px; font-weight:600; line-height:1.35;}
.quest-panel-title span {display:block; margin-top:3px; color:var(--portal-muted); font-size:12px; line-height:1.35;}
.quest-panel-title [data-quest-claim-summary] {color:var(--rb-main-color);}
.quest-progress {flex:0 0 3px; height:3px; overflow:hidden; background:#eee;}
.quest-progress > span {display:block; height:100%; background:var(--rb-main-color);}
.quest-scroll {flex:1 1 auto; min-height:0; padding:8px 0 4px; overflow-x:hidden; overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#d4d8df transparent;}
.quest-scroll::-webkit-scrollbar {width:8px;}
.quest-scroll::-webkit-scrollbar-track {background:transparent;}
.quest-scroll::-webkit-scrollbar-thumb {border:2px solid #fff; border-radius:999px; background:#d4d8df;}
.quest-section + .quest-section {padding-top:2px;}
.quest-section-head {display:flex; align-items:center; justify-content:space-between; min-height:34px; padding:4px 20px;}
.quest-section-label {margin:0; color:var(--portal-ink); font-size:13px; font-weight:600; line-height:1.4;}
.quest-section-head > span {color:#666d78; font-size:11px;}
.quest-list {margin:0; padding:0;}
.quest-row {display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:10px; margin:0 10px 8px; padding:12px; border:0; border-radius:8px; background:#f7f7f8; color:var(--portal-ink); line-height:1.4;}
.quest-row:hover,.quest-row:focus-within {background:#f1f2f4;}
.quest-copy {min-width:0;}
.quest-copy-link,.quest-copy-text {display:block; min-width:0; color:var(--portal-ink); text-decoration:none;}
.quest-copy-link:hover strong {color:var(--portal-ink); text-decoration:underline; text-decoration-color:var(--rb-main-color); text-underline-offset:3px;}
.quest-copy-link:focus-visible {border-radius:4px; outline:2px solid var(--portal-ink); outline-offset:2px;}
.quest-copy strong {display:block; overflow:hidden; color:inherit; font-size:14px; font-weight:600; line-height:1.4; white-space:nowrap; text-overflow:ellipsis;}
.quest-copy em {display:-webkit-box; overflow:hidden; margin-top:2px; color:#666d78; font-size:12px; font-style:normal; line-height:1.45; word-break:keep-all; -webkit-box-orient:vertical; -webkit-line-clamp:2;}
.quest-copy small {display:block; margin-top:5px; color:#666d78; font-size:11px; line-height:1.35;}
.quest-row.is-complete .quest-copy small {color:var(--portal-success-text);}
.quest-row.is-claimed,.quest-row.is-claimed:hover,.quest-row.is-claimed:focus-within {background:transparent;}
.quest-row.is-claimed .quest-copy strong,.quest-row.is-claimed .quest-copy em {color:#666d78;}
.quest-side {display:flex; flex-direction:column; align-items:flex-end; gap:7px; min-width:58px;}
.quest-reward {display:flex; flex-wrap:wrap; justify-content:flex-end; gap:4px; max-width:126px;}
.quest-reward > span {display:inline-flex; align-items:center; justify-content:center; min-height:22px; padding:3px 7px; border:0; border-radius:6px; background:var(--rb-main-bg); color:#666d78; font-size:10px; line-height:1; white-space:nowrap;}
.quest-reward .quest-reward-exp {background:#E7ECFF; color:#5C6FD8;}
.quest-reward .quest-reward-point {background:#FFF0D6; color:#B77A1F;}
.quest-claim-form {margin:0;}
.quest-claim-button {display:inline-flex; align-items:center; justify-content:center; min-width:48px; height:28px; margin:0; padding:0 10px; border:0; border-radius:6px; background:#35C98A; color:#fff; font-family:inherit; font-size:11px; font-weight:600; line-height:1; cursor:pointer;}
.quest-claim-button:hover {border:0; background:#2fbd81; opacity:1;}
.quest-claim-button:focus-visible {outline:2px solid var(--portal-ink); outline-offset:2px;}
.quest-claim-button:disabled {cursor:default;}
.quest-claim-button.is-claiming {border:0; background:#f7f7f8; color:#666d78;}
.quest-claim-button.is-claimed {border:0; background:var(--portal-success-bg); color:var(--portal-success-text);}
.quest-empty {display:flex; align-items:center; justify-content:center; min-height:220px; padding:40px 20px; color:#666d78; font-size:13px; text-align:center;}
.quest-guest {display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:220px; padding:40px 20px; text-align:center;}
.quest-guest p {margin:0; color:var(--portal-muted); font-size:13px; line-height:1.5;}
.quest-guest-login {display:inline-flex; align-items:center; justify-content:center; min-width:64px; height:32px; margin-top:18px; padding:0 14px; border:0; border-radius:8px; background:var(--rb-main-color); color:#fff; font-family:inherit; font-size:13px; line-height:1; cursor:pointer;}
.quest-guest-login:hover {background:var(--rb-main-color); color:#fff;}
.quest-guest-login:focus-visible {outline:2px solid var(--portal-ink); outline-offset:2px;}
.daily-box-panel {width:320px;}
.daily-box-panel .quest-panel-header {min-height:56px; padding:12px 14px 11px 20px;}
.daily-box-panel .rb-window-close {top:9px;}
.daily-box-body {padding:2px 20px 16px;}
.daily-box-reward-row,.daily-box-streak-row {display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 0;}
.daily-box-reward-row {border-bottom:1px solid var(--portal-border);}
.daily-box-streak-row {padding-bottom:0;}
.daily-box-copy strong,.daily-box-copy span {display:block;}
.daily-box-copy strong {color:var(--portal-ink); font-size:14px; font-weight:600; line-height:1.4;}
.daily-box-copy span,.daily-box-streak-row > span {margin-top:3px; color:var(--portal-muted); font-size:12px; line-height:1.4;}
.daily-box-reward-row .quest-reward {flex:0 0 auto;}
.daily-box-streak-row strong {color:var(--portal-ink); font-size:14px; font-weight:600; white-space:nowrap;}
.daily-box-bonus-details {display:flex; flex-direction:column;}
.daily-box-bonus-details > summary {display:flex; order:2; align-items:center; list-style:none; cursor:pointer;}
.daily-box-bonus-details > summary::-webkit-details-marker {display:none;}
.daily-box-bonus-details > summary::before,.daily-box-bonus-details > summary::after {height:1px; flex:1; background:var(--portal-border); content:"";}
.daily-box-bonus-toggle {display:flex; flex:0 0 76px; align-items:center; justify-content:center; gap:5px; width:76px; height:28px; margin:0 8px; border-radius:6px; color:var(--portal-dim); font-size:12px;}
.daily-box-bonus-toggle svg {width:16px; height:16px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:2;}
.daily-box-bonus-details[open] .daily-box-bonus-toggle svg {transform:rotate(180deg);}
.daily-box-bonus-closed,.daily-box-bonus-details:not([open]) .daily-box-bonus-open {display:none;}
.daily-box-bonus-details:not([open]) .daily-box-bonus-closed {display:inline;}
.daily-box-bonus-details:not([open]) .daily-box-bonus-list {display:none;}
.daily-box-bonus-details > summary:hover .daily-box-bonus-toggle,.daily-box-bonus-details > summary:focus-visible .daily-box-bonus-toggle {background:var(--portal-row); color:var(--portal-ink);}
.daily-box-bonus-details > summary:focus-visible {outline:0;}
.daily-box-bonus-list {display:block; order:1; margin:0; padding:2px 0; list-style:none;}
.daily-box-bonus-list li {display:flex; align-items:center; justify-content:space-between; gap:12px; min-width:0; padding:6px 0; color:var(--portal-dim); font-size:12px;}
.daily-box-bonus-list li + li {border-top:1px solid var(--portal-border);}
.daily-box-bonus-list li > span {min-width:0; overflow-wrap:anywhere;}
.daily-box-bonus-list strong {flex:0 0 auto; color:#B77A1F; font-size:12px; font-weight:600;}
.daily-box-bonus-list .is-reached {margin:0 -8px; padding-right:8px; padding-left:8px; border-radius:6px; background:var(--portal-success-bg); color:var(--portal-success-text); font-weight:600;}
.daily-box-bonus-list .is-reached strong {color:var(--portal-success-text);}
.daily-box-form {margin:12px 0 0;}
.daily-box-claim-button {width:100%; height:36px;}
.snb_wrap .my_btn_wrap {position:relative; margin-left:0;}
.snb_wrap .my_btn_wrap > .member-menu {display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; margin:0; padding:0; overflow:hidden; border:2px solid transparent; border-radius:50%; background:transparent; cursor:pointer;}
.snb_wrap .my_btn_wrap > .member-menu:focus-visible {outline:2px solid var(--portal-ink); outline-offset:2px;}
.snb_wrap .my_btn_wrap > .member-menu img {display:block; width:32px; height:32px; border-radius:50%; object-fit:cover;}
.super-mining-indicator {position:absolute; bottom:-3px; left:-3px; z-index:2; display:inline-flex; align-items:center; justify-content:center; width:20px; height:20px; margin:0; padding:0; border:2px solid var(--rb-main-bg); border-radius:16px; background:var(--rb-main-color); color:#fff; cursor:pointer;}
.super-mining-indicator > span {display:block; width:13px; height:13px; background:currentColor; -webkit-mask:url("../../rb.img/icon/sparkle-thin.svg?ver=2") center/contain no-repeat; mask:url("../../rb.img/icon/sparkle-thin.svg?ver=2") center/contain no-repeat;}
.super-mining-indicator:focus-visible {outline:2px solid var(--portal-ink); outline-offset:2px;}
.super-mining-popover {display:none; position:absolute; top:calc(100% + 8px); right:0; z-index:1002; width:190px; padding:11px 12px; border:1px solid var(--portal-border); border-radius:10px; background:var(--portal-panel); color:var(--portal-ink); font-size:12px; line-height:1.45;}
.super-mining-popover.is-open {display:block;}
.super-mining-popover strong,.super-mining-popover span {display:block;}
.super-mining-popover strong {margin-bottom:5px; font-size:13px; font-weight:600;}
.super-mining-popover span {color:var(--portal-muted);}
.super-mining-popover span + span {margin-top:2px;}
.guest-account-actions {display:flex; position:relative; align-items:center; gap:var(--header-action-gap);}
.snb_wrap .my_btn_wrap > .header-login {display:inline-flex; align-items:center; justify-content:center; height:36px; margin:0; padding:0; border:0; background:transparent; color:var(--portal-ink); font-family:inherit; font-size:14px; line-height:1; white-space:nowrap; cursor:pointer;}
.snb_wrap .my_btn_wrap > .header-login:hover {color:var(--rb-main-color);}
.snb_wrap .my_btn_wrap > .header-login:focus-visible {border-radius:4px; outline:2px solid var(--portal-ink); outline-offset:2px;}
.header-account-panel {display:none; position:absolute; z-index:1002; width:260px; max-width:calc(100vw - 16px); max-height:calc(100vh - 84px); overflow-x:hidden; overflow-y:auto; scrollbar-width:thin; scrollbar-color:#d4d8df transparent; color:var(--portal-ink); line-height:1.4;}
.header-account-panel * {box-sizing:border-box;}
.header-account-panel::-webkit-scrollbar {width:8px;}
.header-account-panel::-webkit-scrollbar-track {background:transparent;}
.header-account-panel::-webkit-scrollbar-thumb {border:2px solid var(--portal-panel); border-radius:999px; background:#d4d8df;}
.guest-menu-panel {top:44px; right:0;}
.guest-menu-panel.is-open {display:block;}
.guest-menu-links {position:relative; padding:8px 0;}
.guest-menu-links::after {content:""; position:absolute; right:20px; bottom:0; left:20px; height:1px; background:var(--portal-border);}
.guest-menu-links a {display:flex; align-items:center; min-height:40px; padding:0 20px; color:var(--portal-ink); font-size:13px; line-height:1.35; text-decoration:none;}
.guest-menu-links a:hover {background:var(--portal-row); color:var(--rb-main-color);}
.guest-menu-links a:focus-visible {outline:2px solid var(--portal-ink); outline-offset:-2px;}
#rb_my_panel {position:fixed;}
#rb_my_panel[aria-hidden="true"] {display:none;}
#rb_my_panel.is_open {display:block;}
.rb-member-identity {display:flex; position:relative; align-items:center; gap:12px; min-height:68px; padding:14px 20px;}
.rb-member-avatar {display:flex; align-items:center; justify-content:center; flex:0 0 40px; width:40px; height:40px; overflow:hidden; border-radius:50%;}
.rb-member-avatar img {display:block; width:40px; height:40px; border-radius:50%; object-fit:cover;}
.rb-member-name {min-width:0;}
.rb-member-name strong,.rb-member-name span {display:block; overflow:hidden; white-space:nowrap; text-overflow:ellipsis;}
.rb-member-name strong {color:var(--portal-ink); font-size:14px; font-weight:600; line-height:1.35;}
.rb-member-name span {margin-top:3px; color:var(--portal-muted); font-size:12px; line-height:1.35;}
.rb-member-mobile-actions {display:none;}
.rb-member-exp {display:block; position:relative; padding:14px 20px; color:inherit; text-decoration:none;}
.rb-member-exp:hover {background:var(--portal-row);}
.rb-member-exp:focus-visible {outline:2px solid var(--portal-ink); outline-offset:-2px;}
.rb-member-exp-head,.rb-member-exp-meta {display:flex; align-items:center; justify-content:space-between; gap:8px;}
.rb-member-exp-head {color:var(--portal-ink); font-size:12px; line-height:1.4;}
.rb-member-exp-head strong {display:inline-flex; align-items:center; gap:5px; font-weight:600;}
.rb-member-exp-head .level-icon {flex:0 0 20px; width:20px; height:20px; object-fit:contain;}
.rb-member-exp-head > span {color:var(--portal-muted);}
.rb-member-exp-value {position:relative; display:block;}
.rb-member-exp-reward {position:absolute; top:-4px; right:-8px; width:8px; height:8px; border:1px solid var(--portal-panel); border-radius:50%; background:var(--rb-main-color);}
.rb-member-exp-progress {height:4px; margin-top:9px; overflow:hidden; border-radius:4px; background:var(--portal-row);}
.rb-member-exp-progress > span {display:block; height:100%; border-radius:inherit; background:var(--rb-main-color);}
.rb-member-exp-meta {justify-content:flex-end; margin-top:7px; color:var(--portal-muted); font-size:11px; line-height:1.4;}
.rb-member-exp-meta > span {text-align:right; white-space:nowrap;}
.rb-member-status {display:block; position:relative; padding:8px 0;}
.rb-member-status-row {display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:36px; padding:0 20px; font-size:12px; line-height:1.35;}
.rb-member-status-row:focus-within {background:var(--portal-row);}
.rb-member-status-row > span {overflow:hidden; min-width:0; color:var(--portal-muted); white-space:nowrap; text-overflow:ellipsis;}
.rb-member-status-row > a {flex:0 0 auto; color:var(--portal-ink); font-weight:600; text-decoration:none;}
.rb-member-status-row > a:hover {color:var(--rb-main-color);}
.rb-member-status-row > a:focus-visible {border-radius:4px; outline:2px solid var(--portal-ink); outline-offset:2px;}
.rb-member-admin-count {display:inline-flex; align-items:center; justify-content:center; min-width:20px; height:20px; padding:0 7px; border-radius:4px; background:var(--rb-main-color); color:#fff; font-size:11px; font-weight:600; line-height:20px;}
.rb-member-status-row > a:hover .rb-member-admin-count {opacity:.85;}
.rb-member-actions {position:relative; padding:12px 10px;}
.rb-member-identity::after,.rb-member-exp::after,.rb-member-status::after,.rb-member-actions::after {content:""; position:absolute; right:20px; bottom:0; left:20px; height:1px; background:var(--portal-border);}
.rb-member-actions-row {display:flex; align-items:center; gap:8px; margin-bottom:8px;}
#rb_my_panel .rb_my_p_btn {display:inline-flex; align-items:center; justify-content:center; flex:1 1 0; min-width:0; min-height:38px; margin:0; padding:0 12px; border:0; border-radius:8px; background:var(--portal-subtle); color:var(--portal-ink); font-family:inherit; font-size:13px; line-height:1.2; text-align:center; cursor:pointer;}
#rb_my_panel .rb_my_p_btn:hover {color:var(--rb-main-color);}
#rb_my_panel .rb_my_p_btn:focus-visible {outline:2px solid var(--portal-ink); outline-offset:2px;}
#rb_my_panel .rb_my_p_btn_w {width:100%; border:1px solid var(--portal-border-strong); background:var(--portal-panel);}
.theme-row {display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:48px; padding:10px 20px;}
.theme-row__label {color:var(--portal-ink); font-size:12px; font-weight:600; line-height:1.35;}
.theme-toggle {display:inline-flex; align-items:center; justify-content:flex-end; gap:8px; min-width:0; height:28px; margin:0; padding:0; border:0; background:transparent; color:var(--portal-muted); font-family:inherit; font-size:12px; line-height:1; cursor:pointer;}
.theme-toggle__track {position:relative; display:block; flex:0 0 40px; width:40px; height:22px; border-radius:999px; background:#e5e7eb; transition:background .2s ease;}
.theme-toggle__knob {position:absolute; top:2px; left:2px; display:block; width:18px; height:18px; border-radius:50%; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.25); transition:left .2s ease;}
.theme-toggle[aria-pressed="true"] .theme-toggle__track {background:var(--rb-main-color);}
.theme-toggle[aria-pressed="true"] .theme-toggle__knob {left:20px;}
.theme-toggle:focus-visible {border-radius:8px; outline:2px solid var(--portal-ink); outline-offset:3px;}
/* rail wrapper */
.nv-overlay {position:fixed; left:0; top:var(--portal-h); z-index:100; width:var(--nv-open); height:calc(100vh - var(--portal-h)); background:transparent;}
.nv-backdrop {display:none;}
.nv-panel {display:flex; flex-direction:column; width:100%; height:100%; background:#fff; border-right:0; box-shadow:none; color:var(--portal-ink); box-sizing:border-box;}
.nv-body {display:flex; flex-direction:column; gap:4px; flex:1 1 auto; min-height:0; padding:10px; overflow-x:hidden; overflow-y:auto; scrollbar-width:none; scrollbar-color:transparent transparent; -ms-overflow-style:none;}
.nv-body:hover {scrollbar-width:thin; scrollbar-color:rgba(9,36,75,.35) transparent;}
.nv-body::-webkit-scrollbar {width:6px;}
.nv-body::-webkit-scrollbar-track {background:transparent;}
.nv-body::-webkit-scrollbar-thumb {border-radius:999px; background:transparent;}
.nv-body:hover::-webkit-scrollbar-thumb {background:rgba(9,36,75,.35);}
.nv-body::-webkit-scrollbar-button {display:none; width:0; height:0;}

/* rail nav items */
.nv-link {display:flex; align-items:center; gap:18px; width:100%; height:38px; min-height:0; padding:0 14px; border-radius:8px; color:#222; text-decoration:none; line-height:1; box-sizing:border-box; transition:background .2s;}
.nv-link:not(.is-active):hover {background:var(--portal-active); color:var(--rb-main-color);}
.nv-link.is-active {background:var(--portal-active); color:var(--rb-main-color);}
.nv-link.is-active .nv-txt {font-weight:500;}
.nv-item {display:block;}
.nv-section-title {margin:14px 14px 6px; color:#222; font-size:14px; font-weight:600; line-height:20px;}
.nv-divider {height:0; margin:12px 14px; border-top:1px solid hsla(223,8%,50%,.1);}
.nv-ico {display:flex; align-items:center; justify-content:center; flex:0 0 auto; width:24px; height:24px; margin:0; padding:0; color:currentColor; font-size:0; line-height:0; box-sizing:border-box;}
.nv-ico svg, .nv-ico img {display:block; flex:0 0 auto; width:24px; height:24px; margin:0; transform-origin:center; transition:none;}
.nv-ico img {object-fit:contain;}
.nv-txt {display:block; flex:1 1 auto; min-width:0; overflow:hidden; color:inherit; font-size:14px; line-height:1; white-space:nowrap; text-overflow:ellipsis;}
.nv-sub {display:flex; flex-direction:column; gap:4px; margin:4px 0 0;}

/* desktop / collapsed state */
@media all and (min-width:1025px) {
#header.gnb_up {top:0!important;}
.p-wrap {padding-left:10px;}
html.nv-aside-hidden .nv-overlay {width:var(--nv-mini);}
html.nv-aside-hidden .nv-link {display:grid; grid-template-columns:52px; grid-template-rows:7px 24px 8px 16px; align-items:start; justify-items:center; gap:0; width:52px; height:58px; min-height:58px; padding:0; line-height:1;}
html.nv-aside-hidden .nv-link:not(.is-active):hover {background:transparent;}
html.nv-aside-hidden .nv-link.is-active {background:transparent;}
html.nv-aside-hidden .nv-ico {grid-column:1; grid-row:2; width:24px; height:24px;}
html.nv-aside-hidden .nv-txt {grid-column:1; grid-row:4; display:block; max-width:50px; font-size:10px; line-height:1; text-align:center;}
html.nv-aside-hidden .nv-section-title {display:none;}
html.nv-aside-hidden .nv-divider {width:24px; margin:8px auto;}
html.nv-aside-hidden .nv-sub {display:none;}
}

/* tablet rail / overlay state */
@media all and (min-width:1025px) and (max-width:1280px) {
:root, html.nv-aside-hidden {--nv-gap:var(--nv-mini);}
.nv-overlay {top:var(--portal-h); width:var(--nv-mini); height:calc(100vh - var(--portal-h)); background:transparent; pointer-events:none;}
.nv-overlay .nv-panel {width:var(--nv-mini); pointer-events:auto;}
.nv-overlay .nv-link {display:grid; grid-template-columns:52px; grid-template-rows:7px 24px 8px 16px; align-items:start; justify-items:center; gap:0; width:52px; height:58px; min-height:58px; padding:0; line-height:1;}
.nv-overlay .nv-link:not(.is-active):hover {background:transparent;}
.nv-overlay .nv-link.is-active {background:transparent;}
.nv-overlay .nv-ico {grid-column:1; grid-row:2; width:24px; height:24px;}
.nv-overlay .nv-txt {grid-column:1; grid-row:4; display:block; max-width:50px; font-size:10px; line-height:1; text-align:center;}
.nv-overlay .nv-section-title {display:none;}
.nv-overlay .nv-divider {width:24px; margin:8px auto;}
.nv-overlay .nv-sub, .nv-overlay .nv-top {display:none!important;}
.nv-overlay.is-open {top:0; z-index:1000; width:100%; height:100vh; background:rgba(0,0,0,.18); pointer-events:auto;}
.nv-overlay.is-open .nv-backdrop {display:block; position:absolute; inset:0; width:100%; height:100%; border:0; background:transparent;}
.nv-overlay.is-open .nv-panel {position:absolute; top:0; left:0; width:var(--nv-open); height:100%; transform:translateX(0); box-shadow:none;}
.nv-overlay.is-open .nv-link {display:flex; align-items:center; gap:18px; width:100%; height:38px; min-height:0; padding:0 14px; line-height:1;}
.nv-overlay.is-open .nv-ico {width:24px; height:24px;}
.nv-overlay.is-open .nv-txt {display:block; max-width:none; font-size:14px; text-align:left;}
.nv-overlay.is-open .nv-section-title {display:block;}
.nv-overlay.is-open .nv-divider {width:auto; margin:12px 14px;}
.nv-overlay.is-open .nv-sub {display:flex!important;}
.nv-overlay.is-open .nv-top {display:flex!important; align-items:center; height:var(--portal-h); padding:35px 10px 20px; border-bottom:0;}
}

/* mobile state */
@media all and (max-width:1024px) {
:root, html.nv-aside-hidden {--nv-gap:0px;}
#header.p-portal {padding-left:10px!important;}
.pc {display:none!important;}
.mobile {display:inline-flex!important;}
.p-wrap {display:flex; gap:10px;}
.p-brand {gap:0;}
.search_top_wrap {display:none;}
.portal_search_suggest {display:none!important;}
.rb_btm_search_pn .rb_live_suggest {padding:0 24px;}
.rb_btm_search_pn .rb_live_suggest_list {gap:8px;}
.rb_btm_search_pn .rb_live_suggest_item {width:100%; min-height:54px;}
.rb_btm_search_pn .rb_live_suggest_btn {grid-template-columns:32px 1fr; gap:12px; min-height:54px; padding:8px 0; font-size:16px; line-height:1.35;}
.rb_btm_search_pn .rb_live_suggest_btn::before {width:32px; height:32px; background-size:18px 18px;}
.rb_btm_search_pn .rb_live_suggest_btn > span {display:block; min-width:0;}
.rb_btm_search_pn .rb_live_suggest_sub {margin-top:4px; font-size:13px;}
.rb_btm_search_pn .rb_recent_search_item {min-height:50px; height:auto;}
.rb_btm_search_pn .rb_recent_search_icon {flex-basis:30px; width:30px; height:30px; background-size:17px 17px;}
.rb_btm_search_pn .rb_recent_search_btn {height:50px; font-size:16px;}
.snb_wrap {--header-action-gap:18px; margin-left:auto;}
.snb_wrap .member_info_wrap,.snb_wrap .qm_wrap > #questToggle,.snb_wrap .shop_wrap,#header.p-portal .snb_wrap .qm_wrap > #dailyBoxToggle {display:none;}
.snb_wrap .qm_wrap > a {width:auto; padding-left:0;}
.snb_wrap .my_btn_wrap {display:block;}
.rb-member-mobile-actions {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; padding:10px 20px; border-bottom:1px solid var(--portal-border);}
.rb-member-mobile-action {position:relative; display:inline-flex; align-items:center; justify-content:center; min-width:0; height:40px; margin:0; padding:0; border:0; border-radius:8px; background:var(--portal-subtle); color:var(--portal-ink); text-decoration:none; cursor:pointer;}
.rb-member-mobile-action:hover {color:var(--rb-main-color);}
.rb-member-mobile-action:focus-visible {outline:2px solid var(--portal-ink); outline-offset:2px;}
.rb-member-mobile-action svg {display:block; width:24px; height:24px;}
.rb-member-mobile-action svg * {fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; vector-effect:non-scaling-stroke;}
.rb-member-mobile-action[data-member-panel-action="daily-box"] svg * {fill:currentColor; stroke:none;}
.rb-member-mobile-badge {position:absolute; top:-5px; right:-5px; display:flex; align-items:center; justify-content:center; min-width:16px; height:16px; padding:0 5px; border-radius:16px; background:#35C98A; color:#fff; font-size:10px; font-weight:600; line-height:16px;}
.nv-overlay {left:0; top:0; z-index:1000; width:100%; height:100vh; background:rgba(0,0,0,.18); visibility:hidden; pointer-events:none;}
.nv-overlay.is-open {visibility:visible; pointer-events:auto;}
.nv-backdrop {display:block; position:absolute; inset:0; width:100%; height:100%; border:0; background:transparent;}
.nv-panel {position:absolute; top:0; left:0; width:280px; max-width:86vw; height:100%; transform:translateX(-100%); transition:transform 180ms ease; box-shadow:none;}
.nv-overlay.is-open .nv-panel {transform:translateX(0);}
.nv-top {display:flex!important; align-items:center; height:var(--portal-h); padding:20px 10px; border-bottom:0;}
#contents_wrap, footer, .debug_bar_wrap {margin-left:0;}
#contents_wrap {padding-top:var(--portal-h);}
}

@media all and (max-width:480px) {
.quest-panel {position:fixed; top:60.5px; right:8px; left:8px; width:auto; max-width:none; max-height:calc(100vh - var(--portal-h) - 12px); max-height:calc(100dvh - var(--portal-h) - 12px); border-radius:12px;}
.quest-panel-header {min-height:62px; padding:13px 12px 12px 16px;}
.quest-section-head {padding-right:16px; padding-left:16px;}
.quest-row {gap:9px; margin-right:8px; margin-left:8px; padding:11px 10px;}
.quest-copy em {word-break:break-word;}
.quest-reward {max-width:104px;}
}

/* reduced motion */
@media (prefers-reduced-motion:reduce) {
.nv-panel {transition:none;}
}
