
/* ORIGINAL: css/site-account-bar.css */
/* Global account controls: visible on all user-facing pages, never overlapping the brand/menu. */
#ab09-memberbar.site-member-tools{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  min-width:0!important;
  width:auto!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  white-space:nowrap!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:none!important;
  position:relative!important;
  z-index:4!important;
}
#ab09-memberbar.site-member-tools::-webkit-scrollbar{display:none!important}
#ab09-memberbar.site-member-tools a,
#ab09-memberbar.site-member-tools button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  min-height:38px!important;
  padding:0 12px!important;
  margin:0!important;
  border:1px solid #e9e3ef!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#5b49a7!important;
  font:900 12px/1 var(--albam09-font-main,Arial,sans-serif)!important;
  letter-spacing:-.03em!important;
  text-decoration:none!important;
  box-shadow:0 4px 14px rgba(72,42,105,.06)!important;
  cursor:pointer!important;
}
#ab09-memberbar.site-member-tools a:hover,
#ab09-memberbar.site-member-tools button:hover{
  background:#f8f3ff!important;
  border-color:#d9c8ef!important;
  color:#5f009f!important;
}
#ab09-memberbar .ab09-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:17px!important;
  height:17px!important;
  margin-left:4px!important;
  padding:0 4px!important;
  border-radius:999px!important;
  background:#7b2cff!important;
  color:#fff!important;
  font-size:10px!important;
  line-height:1!important;
}

/* Standard site header: brand / account tools / menu button. */
html body:not(.detail-renew)>header.site-menu-host{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto!important;
  align-items:center!important;
  column-gap:10px!important;
  row-gap:8px!important;
}
html body:not(.detail-renew)>header.site-menu-host>a{
  min-width:0!important;
  max-width:none!important;
  overflow:visible!important;
}
html body:not(.detail-renew)>header.site-menu-host [logo]{
  min-width:0!important;
  max-width:none!important;
  overflow:visible!important;
  flex-shrink:0!important;
}
html body:not(.detail-renew)>header.site-menu-host [title],
html body:not(.detail-renew)>header.site-menu-host [data-title]{
  min-width:0!important;
  max-width:none!important;
  overflow:visible!important;
  text-overflow:clip!important;
  flex-shrink:0!important;
}
html body:not(.detail-renew)>header.site-menu-host #ab09-memberbar{grid-column:2!important;grid-row:1!important}
html body:not(.detail-renew)>header.site-menu-host .site-menu-trigger{grid-column:3!important;grid-row:1!important;margin:0!important}
/* Older explore rule hid the member bar. This intentionally wins. */
body.explore-home #ab09-memberbar.site-member-tools{display:flex!important}

/* Minimal account host used on policy pages. */
.site-account-standalone{
  width:min(100% - 32px,1180px);
  margin:20px auto 0;
  padding:10px 12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  box-sizing:border-box;
  border:1px solid #ebe5f0;
  border-radius:14px;
  background:#fff;
  box-shadow:0 7px 20px rgba(36,27,45,.06);
}
.site-account-standalone__brand{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#5c2c91!important;
  font-weight:900;
  text-decoration:none;
}
.site-account-standalone #ab09-memberbar{margin-left:auto!important}

/* Compact host for the full-screen map pages. */
.map-account-host{
  flex:0 0 auto;
  min-width:0;
  margin-left:auto;
}
.map-account-host #ab09-memberbar.site-member-tools a,
.map-account-host #ab09-memberbar.site-member-tools button{
  min-height:36px!important;
  border-color:#39414d!important;
  background:#242a33!important;
  color:#fff!important;
  box-shadow:none!important;
}
.map-account-host #ab09-memberbar.site-member-tools a:hover,
.map-account-host #ab09-memberbar.site-member-tools button:hover{
  background:#2d3440!important;
  border-color:#657083!important;
  color:#fff!important;
}

@media(max-width:1080px){
  html body:not(.detail-renew)>header.site-menu-host{
    grid-template-columns:minmax(0,1fr) 50px!important;
    grid-template-rows:auto auto!important;
    column-gap:10px!important;
  }
  html body:not(.detail-renew)>header.site-menu-host>a{
    grid-column:1!important;
    grid-row:1!important;
    width:max-content!important;
    max-width:calc(100vw - 104px)!important;
    overflow:visible!important;
  }
  html body:not(.detail-renew)>header.site-menu-host [logo]{
    width:max-content!important;
    max-width:100%!important;
    overflow:visible!important;
  }
  html body:not(.detail-renew)>header.site-menu-host [title],
  html body:not(.detail-renew)>header.site-menu-host [data-title]{
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
  }
  html body:not(.detail-renew)>header.site-menu-host .site-menu-trigger{grid-column:2!important;grid-row:1!important}
  html body:not(.detail-renew)>header.site-menu-host #ab09-memberbar{
    grid-column:1 / -1!important;
    grid-row:2!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    justify-content:flex-end!important;
  }
  #ab09-memberbar.site-member-tools a,
  #ab09-memberbar.site-member-tools button{
    min-height:34px!important;
    padding:0 9px!important;
    font-size:10.5px!important;
    border-radius:10px!important;
  }
  .site-account-standalone{
    width:calc(100% - 20px);
    margin-top:10px;
    padding:8px 9px;
    flex-wrap:wrap;
  }
  .site-account-standalone #ab09-memberbar{width:100%!important;justify-content:flex-start!important}
  .map-account-host{order:2;margin-left:auto;max-width:100%}
  .map-account-host #ab09-memberbar.site-member-tools{max-width:55vw!important}
}

@media(max-width:520px){
  html body:not(.detail-renew)>header.site-menu-host [title],
  html body:not(.detail-renew)>header.site-menu-host [data-title]{
    font-size:clamp(1.05rem,5.1vw,1.55rem)!important;
    line-height:1.08!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }
  html body:not(.detail-renew)>header.site-menu-host #ab09-memberbar{justify-content:flex-start!important}
  .map-account-host{width:100%;order:4;margin:0}
  .map-account-host #ab09-memberbar.site-member-tools{max-width:100%!important;justify-content:flex-start!important}
}

/* logo-noclip-ultranarrow: never crop the regional brand on very narrow screens. */
@media(max-width:340px){
  html body:not(.detail-renew)>header.site-menu-host [svg-box] svg{
    width:36px!important;
    height:36px!important;
  }
  html body:not(.detail-renew)>header.site-menu-host [logo]{
    gap:8px!important;
  }
  html body:not(.detail-renew)>header.site-menu-host [title],
  html body:not(.detail-renew)>header.site-menu-host [data-title]{
    font-size:15px!important;
    letter-spacing:-.055em!important;
  }
}


/* ORIGINAL: css/index-coupon-popup.css */
/* 광주버블여지도09 / 메인페이지 전용 탐험기 쿠폰 팝업 (2026-10-19)
   다른 페이지/공통 헤더에 영향을 주지 않도록 ab09-coupon 접두어로 한정. */
.ab09-coupon-overlay[hidden]{display:none!important}
.ab09-coupon-overlay,
.ab09-coupon-overlay *{box-sizing:border-box}
.ab09-coupon-overlay{
  position:fixed;inset:0;z-index:2147483000;
  display:grid;place-items:center;padding:18px;
  isolation:isolate;font-family:var(--albam09-font-main, "Noto Sans KR", "Malgun Gothic", sans-serif)
}
.ab09-coupon-backdrop{
  position:absolute;inset:0;background:rgba(8,7,12,.72);
  -webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)
}
.ab09-coupon-dialog{
  position:relative;width:min(100%,444px);max-height:calc(100vh - 36px);
  max-height:calc(100dvh - 36px);overflow-y:auto;overscroll-behavior:contain;
  padding:30px 30px 22px;text-align:center;isolation:isolate;
  color:#f8f1df;border-radius:23px;
  border:1px solid rgba(237,200,122,.55);
  background:
    radial-gradient(ellipse at 50% -15%,rgba(207,159,75,.22),transparent 58%),
    radial-gradient(ellipse at 105% 100%,rgba(138,95,30,.15),transparent 48%),
    linear-gradient(157deg,#1c1b1d 0%,#111216 52%,#08090e 100%);
  box-shadow:0 32px 90px rgba(0,0,0,.43),0 4px 28px rgba(0,0,0,.26),inset 0 1px rgba(255,250,226,.08);
  animation:ab09-coupon-enter .28s ease-out both
}
.ab09-coupon-dialog:before{
  content:"";position:absolute;inset:8px;z-index:-1;pointer-events:none;
  border:1px solid rgba(220,182,111,.16);border-radius:17px
}
.ab09-coupon-cross{
  position:absolute;right:14px;top:13px;width:34px;height:34px;
  display:grid;place-items:center;padding:0;border-radius:50%;
  color:#d7c4a6;background:transparent;border:1px solid rgba(222,191,137,.18);
  cursor:pointer;transition:background .15s ease,border-color .15s ease
}
.ab09-coupon-cross:hover{background:rgba(236,199,137,.13);border-color:rgba(222,191,137,.42)}
.ab09-coupon-cross svg{width:15px;height:15px}
.ab09-coupon-emblem{
  display:grid;place-items:center;width:63px;height:63px;margin:0 auto 16px;
  border:1px solid rgba(237,200,124,.51);border-radius:50%;
  background:radial-gradient(circle,rgba(237,200,124,.19),rgba(237,200,124,.025) 74%);
  box-shadow:0 0 0 6px rgba(226,184,107,.045),0 0 29px rgba(212,171,104,.1)
}
.ab09-coupon-emblem svg{width:31px;height:31px;fill:none;stroke:#eace91;stroke-width:1.45;stroke-linejoin:round;stroke-linecap:round}
.ab09-coupon-eyebrow{
  margin:0 0 14px;color:#d7b77f;font-family:Georgia,"Times New Roman",serif;
  font-size:10px;font-weight:700;letter-spacing:.26em
}
.ab09-coupon-title{
  margin:0 0 14px;color:#fcf5e9;font-size:clamp(22px,5.6vw,28px);
  font-weight:850;letter-spacing:-.055em;line-height:1.42;word-break:keep-all
}
.ab09-coupon-title strong{
  font-weight:900;background:linear-gradient(100deg,#d4a95d 6%,#fff0bd 41%,#d7a95b 87%);
  -webkit-background-clip:text;background-clip:text;color:transparent
}
.ab09-coupon-intro{
  margin:0 auto 19px;max-width:360px;
  font-size:13px;line-height:1.85;letter-spacing:-.02em;color:#d4cbbd;word-break:keep-all
}
.ab09-coupon-rule{height:1px;width:72%;margin:0 auto 18px;background:linear-gradient(90deg,transparent,#c9a160,transparent)}
.ab09-coupon-reward{
  position:relative;overflow:hidden;border:1px solid rgba(219,178,105,.35);
  border-radius:14px;padding:16px 12px 13px;
  background:linear-gradient(105deg,rgba(192,145,66,.075),rgba(216,183,118,.13) 50%,rgba(192,145,66,.075));
  box-shadow:inset 0 1px rgba(255,239,195,.06)
}
.ab09-coupon-reward:after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(110deg,transparent 22%,rgba(255,249,218,.11) 47%,transparent 70%);
  transform:translateX(-140%);animation:ab09-coupon-glint 7s ease-in-out infinite
}
.ab09-coupon-reward-label{
  display:block;margin-bottom:5px;color:#d7bf90;font-size:10px;font-weight:800;letter-spacing:.17em
}
.ab09-coupon-value{
  display:block;font-family:Georgia,"Times New Roman",serif;font-size:clamp(37px,9vw,48px);
  line-height:1.17;font-weight:700;letter-spacing:-.02em;
  background:linear-gradient(100deg,#cfa55f 15%,#ffe9aa 51%,#bf904c 87%);
  -webkit-background-clip:text;background-clip:text;color:transparent
}
.ab09-coupon-value small{
  margin-left:4px;font-family:var(--albam09-font-main,"Malgun Gothic",sans-serif);
  font-size:14px;font-weight:850;letter-spacing:-.04em
}
.ab09-coupon-condition{margin:13px auto 15px;max-width:356px;color:#acaaab;font-size:11px;line-height:1.65;word-break:keep-all}
.ab09-coupon-cta{
  display:flex;align-items:center;justify-content:center;gap:12px;
  min-height:48px;padding:11px 18px;border-radius:12px;
  font-size:14px;font-weight:850;letter-spacing:-.025em;
  text-decoration:none!important;color:#241b11!important;
  background:linear-gradient(105deg,#c79d57,#f7e2aa 48%,#cb9f58);
  border:1px solid #e2ba75;box-shadow:0 4px 18px rgba(177,129,48,.2);
  transition:filter .15s ease,transform .15s ease
}
.ab09-coupon-cta:hover{filter:brightness(1.06);transform:translateY(-1px)}
.ab09-coupon-cta svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2}
.ab09-coupon-options{
  display:grid;grid-template-columns:1fr 1px 1fr;align-items:center;gap:7px;
  margin-top:16px;color:#c7bba8
}
.ab09-coupon-options button{
  min-width:0;padding:9px 5px;border:0;background:none;
  font:inherit;font-size:12px;font-weight:700;color:#c6b8a2;
  cursor:pointer;white-space:nowrap
}
.ab09-coupon-options button:last-child{color:#ead09d;font-weight:850}
.ab09-coupon-options button:hover{text-decoration:underline;text-underline-offset:4px;color:#fff0c5}
.ab09-coupon-divider{height:17px;background:rgba(217,187,134,.28)}
.ab09-coupon-overlay :is(a,button):focus-visible{outline:2px solid #fff0c5;outline-offset:3px}
body.ab09-coupon-is-open{overflow:hidden!important}
@keyframes ab09-coupon-enter{from{opacity:0;transform:translateY(13px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes ab09-coupon-glint{0%,66%,100%{transform:translateX(-140%)}75%,86%{transform:translateX(140%)}}
@media(max-width:480px){
  .ab09-coupon-overlay{padding:14px}
  .ab09-coupon-dialog{width:min(100%,390px);max-height:calc(100dvh - 28px);padding:25px 21px 16px;border-radius:20px}
  .ab09-coupon-dialog:before{inset:6px;border-radius:15px}
  .ab09-coupon-emblem{width:55px;height:55px;margin-bottom:13px}
  .ab09-coupon-emblem svg{width:28px;height:28px}
  .ab09-coupon-eyebrow{margin-bottom:11px;font-size:9px;letter-spacing:.22em}
  .ab09-coupon-title{font-size:clamp(22px,6vw,26px);line-height:1.38}
  .ab09-coupon-intro{font-size:12px;margin-bottom:15px}
  .ab09-coupon-rule{margin-bottom:15px}
  .ab09-coupon-reward{padding:12px 12px 10px}
  .ab09-coupon-condition{margin:12px auto 13px;font-size:10.5px}
  .ab09-coupon-cta{min-height:46px}
  .ab09-coupon-options{margin-top:8px}
}
@media(max-height:650px){
  .ab09-coupon-dialog{padding-top:17px;padding-bottom:13px}
  .ab09-coupon-emblem{width:44px;height:44px;margin-bottom:9px}
  .ab09-coupon-title{margin-bottom:9px}
  .ab09-coupon-intro{margin-bottom:10px}
  .ab09-coupon-rule{margin-bottom:10px}
  .ab09-coupon-condition{margin:8px auto}
  .ab09-coupon-options{margin-top:5px}
}
@media(prefers-reduced-motion:reduce){.ab09-coupon-dialog,.ab09-coupon-reward:after{animation:none!important}.ab09-coupon-cta{transition:none}}

/* 2026-10-27 compact mobile popup: show every control without scrolling.
   Text and coupon value remain unchanged; only responsive sizes are adjusted. */
.ab09-coupon-overlay{padding:12px;}
.ab09-coupon-dialog{width:min(100%,444px);max-height:calc(100dvh - 24px);overflow:visible;}
@media(max-width:600px), (max-height:740px){
  .ab09-coupon-overlay{padding:8px;}
  .ab09-coupon-dialog{
    width:min(100%,390px);max-height:calc(100dvh - 16px);
    overflow:hidden;display:flex;flex-direction:column;
    padding:16px 17px 10px;border-radius:18px;
  }
  .ab09-coupon-content{min-height:0;flex:0 1 auto;overflow:visible;padding:0;}
  .ab09-coupon-cross{top:7px;right:7px;width:30px;height:30px;z-index:5;background:#17171a;}
  .ab09-coupon-emblem{width:37px;height:37px;margin-bottom:5px;box-shadow:none;}
  .ab09-coupon-emblem svg{width:20px;height:20px;}
  .ab09-coupon-eyebrow{font-size:8px;letter-spacing:.14em;margin-bottom:5px;}
  .ab09-coupon-title{font-size:clamp(18px,4.9vw,22px);line-height:1.21;margin-bottom:7px;}
  .ab09-coupon-intro{font-size:11px;line-height:1.38;margin-bottom:9px;}
  .ab09-coupon-rule{margin-bottom:9px;}
  .ab09-coupon-reward{padding:9px 9px 8px;border-radius:11px;}
  .ab09-coupon-reward-label{font-size:8px;margin-bottom:1px;}
  .ab09-coupon-value{font-size:clamp(30px,8vw,38px);line-height:1.06;}
  .ab09-coupon-value small{font-size:11px;}
  .ab09-coupon-condition{font-size:10px;line-height:1.3;margin:8px auto;}
  .ab09-coupon-cta{min-height:38px;padding:8px 10px;font-size:12px;gap:7px;}
  .ab09-coupon-options{flex:0 0 auto;margin-top:6px;gap:5px;}
  .ab09-coupon-options button{min-height:36px;padding:6px 4px;font-size:11px;}
}
@media(max-width:600px) and (max-height:620px){
  .ab09-coupon-dialog{padding:9px 14px 6px;}
  .ab09-coupon-emblem{display:none;}
  .ab09-coupon-eyebrow{margin-bottom:3px;}
  .ab09-coupon-title{font-size:18px;margin-bottom:4px;line-height:1.16;}
  .ab09-coupon-intro{font-size:10px;line-height:1.27;margin-bottom:5px;}
  .ab09-coupon-rule{margin-bottom:5px;}
  .ab09-coupon-reward{padding:5px 8px;}
  .ab09-coupon-value{font-size:29px;}
  .ab09-coupon-condition{font-size:9px;line-height:1.2;margin:5px auto;}
  .ab09-coupon-cta{min-height:34px;padding:6px 8px;}
  .ab09-coupon-options{margin-top:3px;}
  .ab09-coupon-options button{min-height:32px;}
}
@media(max-width:600px) and (max-height:440px){
  .ab09-coupon-dialog{padding:7px 12px 4px;}
  .ab09-coupon-eyebrow,.ab09-coupon-rule{display:none;}
  .ab09-coupon-title{font-size:16px;}
  .ab09-coupon-intro{font-size:9px;line-height:1.18;margin-bottom:4px;}
  .ab09-coupon-reward-label{font-size:7px;}
  .ab09-coupon-value{font-size:26px;}
  .ab09-coupon-condition{font-size:8px;margin:3px auto;}
  .ab09-coupon-cta{min-height:30px;}
  .ab09-coupon-options button{min-height:28px;}
}

/* Homepage popup: no scroll traps, CTA/footer always fit inside mobile viewport. */
@media (max-width:600px) {
  .ab09-coupon-overlay {overflow:hidden; align-items:center; justify-items:center;}
  .ab09-coupon-dialog {height:auto; max-height:none; overflow:visible; flex-shrink:0; transform-origin:center center;}
  .ab09-coupon-content {flex:0 0 auto; overflow:visible;}
  .ab09-coupon-options {flex:0 0 auto;}
}

/* 2026-10-28: reserve scrollbar gutter when the coupon opens so the main column does not shift. */
@supports (scrollbar-gutter: stable){html:has(body[data-current-page="index"]){scrollbar-gutter:stable;}}

