/* ===== 노노프라이스 포인트 미니홈피 ===== */
:root{
  --brand:#FF5C00;
  --brand-deep:#D44E00;
  --brand-soft:#FFEDE2;
  --brand-tint:#FFF6F0;
  --ink:#1d1714;
  --ink-2:#5b524c;
  --ink-3:#8a807a;
  --line:#efe7df;
  --line-2:#e5dccf;
  --paper:#ffffff;
  --bg:#f4eee7;
  --ok:#1f9d63;
  --star:#ff9f1c;
  --shadow-sm:0 1px 2px rgba(29,23,20,.05), 0 6px 16px -12px rgba(29,23,20,.3);
  --shadow-md:0 12px 30px -18px rgba(29,23,20,.45);
  --shadow-lg:0 26px 50px -28px rgba(29,23,20,.5);
  --r-lg:22px;
  --r-md:16px;
  --r-sm:12px;
}
*{margin:0;padding:0;box-sizing:border-box;}
html,body{height:100%;}
/* 가로 스크롤(우측 여백) 방지 — clip은 sticky 헤더/하단탭 동작을 깨지 않음 */
html,body{overflow-x:clip;}
body{
  font-family:"Pretendard Variable",Pretendard,-apple-system,BlinkMacSystemFont,sans-serif;
  background:var(--bg);
  color:var(--ink);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  line-height:1.5;
}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;}
img{max-width:100%;display:block;}
::selection{background:var(--brand);color:#fff;}

/* ---- app shell ---- */
.app{
  max-width:480px;margin:0 auto;
  min-height:100dvh;
  background:var(--paper);
  display:flex;flex-direction:column;
  position:relative;
  box-shadow:0 0 60px -20px rgba(29,23,20,.25);
}
@media(min-width:481px){
  body{padding:0;}
  .app{margin:0 auto;border-left:1px solid var(--line);border-right:1px solid var(--line);}
}

/* ---- top app bar ---- */
.appbar{
  position:sticky;top:0;z-index:40;
  background:rgba(255,255,255,.86);
  backdrop-filter:saturate(180%) blur(14px);
  -webkit-backdrop-filter:saturate(180%) blur(14px);
  border-bottom:1px solid var(--line);
  padding:14px 18px;
  display:flex;align-items:center;gap:12px;
  min-height:60px;
}
.appbar .brand{display:flex;align-items:center;gap:9px;}
.appbar .brand .wm{font-weight:900;font-size:19px;letter-spacing:-.04em;}
.appbar .brand .wm .a{color:var(--brand);}
.appbar .brand .wm .b{color:var(--ink);}
.appbar .spacer{flex:1;}

.b2b-entries{display:flex;align-items:center;gap:7px;}
.b2b-pill{
  font-size:12.5px;font-weight:700;letter-spacing:-.01em;
  color:var(--ink-2);
  border:1px solid var(--line-2);
  background:#fff;
  padding:7px 11px;border-radius:999px;
  display:inline-flex;align-items:center;gap:5px;
  transition:.15s;
  white-space:nowrap;
}
.b2b-pill:hover{border-color:var(--brand);color:var(--brand);}
.b2b-pill svg{width:13px;height:13px;}

.backbtn{
  width:38px;height:38px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:#fff;border:1px solid var(--line-2);
  transition:.15s;flex-shrink:0;
}
.backbtn:hover{background:var(--brand-tint);border-color:var(--brand);}
.backbtn svg{width:18px;height:18px;}
.appbar .bar-title{font-weight:800;font-size:17px;letter-spacing:-.02em;}

/* ---- main scroll region ---- */
.main{flex:1;}
.screen{display:none;}
.screen.active{display:block;animation:fade .26s ease;}
@keyframes fade{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:none;}}

/* ---- bottom nav ---- */
.bottomnav{
  position:sticky;bottom:0;z-index:40;
  background:rgba(255,255,255,.92);
  backdrop-filter:saturate(180%) blur(14px);
  -webkit-backdrop-filter:saturate(180%) blur(14px);
  border-top:1px solid var(--line);
  display:grid;grid-template-columns:repeat(4,1fr);
  padding:8px 6px calc(8px + env(safe-area-inset-bottom));
}
.navitem{
  display:flex;flex-direction:column;align-items:center;gap:3px;
  padding:6px 4px;border-radius:12px;
  color:var(--ink-3);font-size:11px;font-weight:700;letter-spacing:-.01em;
  transition:.15s;
}
.navitem svg{width:23px;height:23px;}
.navitem.active{color:var(--brand);}
.navitem:hover{color:var(--brand-deep);}

/* ===== shared bits ===== */
.section-pad{padding:20px 18px;}
.eyebrow{font-size:12.5px;font-weight:800;letter-spacing:.02em;color:var(--brand);text-transform:uppercase;}
.sec-title{font-size:20px;font-weight:900;letter-spacing:-.03em;margin-top:3px;}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:14px;}
.sec-more{font-size:13px;font-weight:700;color:var(--ink-3);display:inline-flex;align-items:center;gap:3px;}
.sec-more:hover{color:var(--brand);}

.badge{
  display:inline-flex;align-items:center;gap:5px;
  font-size:12px;font-weight:800;letter-spacing:-.01em;
  padding:5px 10px;border-radius:999px;
}
.badge-point{background:var(--brand);color:#fff;}
.badge-soft{background:var(--brand-soft);color:var(--brand-deep);}
.badge-ok{background:#e7f6ee;color:var(--ok);}
.badge-line{background:#fff;border:1px solid var(--line-2);color:var(--ink-2);}

.star{color:var(--star);font-weight:800;}

/* thumbnails (food category tiles) */
.thumb{
  border-radius:var(--r-md);
  display:flex;align-items:center;justify-content:center;
  font-size:34px;line-height:1;
  background:var(--brand-soft);
  position:relative;overflow:hidden;flex-shrink:0;
}
.thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(255,255,255,.35),rgba(255,255,255,0) 60%);}
.thumb.korean{background:#ffe9d6;}
.thumb.bunsik{background:#ffe1de;}
.thumb.soup{background:#fdeed0;}
.thumb.cafe{background:#e9e3da;}

/* ===== HOME ===== */
.home-hero{
  background:
    radial-gradient(120% 90% at 100% 0%, #ffd9c2 0%, rgba(255,217,194,0) 55%),
    linear-gradient(180deg,var(--brand-tint),var(--paper));
  padding:18px 18px 24px;
}
.greet{font-size:14px;font-weight:700;color:var(--ink-2);}
.greet b{color:var(--ink);}

.point-card{
  margin-top:14px;
  background:linear-gradient(140deg,#2a2320,#1d1714);
  color:#fff;border-radius:var(--r-lg);
  padding:22px 22px 20px;
  position:relative;overflow:hidden;
  box-shadow:var(--shadow-lg);
}
.point-card::before{
  content:"";position:absolute;right:-50px;top:-50px;width:200px;height:200px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,92,0,.55),rgba(255,92,0,0) 70%);
}
.point-card .pc-label{font-size:13px;font-weight:700;color:rgba(255,255,255,.7);display:flex;align-items:center;gap:7px;position:relative;z-index:2;}
.point-card .pc-val{font-size:40px;font-weight:900;letter-spacing:-.04em;margin-top:6px;position:relative;z-index:2;display:flex;align-items:baseline;gap:5px;}
.point-card .pc-val .unit{font-size:21px;color:var(--brand);}
.point-card .pc-sub{margin-top:12px;display:flex;gap:18px;position:relative;z-index:2;}
.point-card .pc-sub div{font-size:12.5px;color:rgba(255,255,255,.62);font-weight:600;}
.point-card .pc-sub b{display:block;color:#fff;font-size:15px;font-weight:800;margin-top:1px;letter-spacing:-.02em;}

/* B2C two-up */
.b2c-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;}
.b2c-card{
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:var(--r-lg);
  padding:18px 16px 16px;
  text-align:left;
  box-shadow:var(--shadow-sm);
  transition:.18s;
  position:relative;
  display:flex;flex-direction:column;gap:10px;
  min-height:138px;
}
.b2c-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--brand);}
.b2c-card .ico{
  width:46px;height:46px;border-radius:14px;
  background:var(--brand-soft);color:var(--brand);
  display:flex;align-items:center;justify-content:center;
}
.b2c-card.fill{background:var(--brand);border-color:var(--brand);color:#fff;}
.b2c-card.fill .ico{background:rgba(255,255,255,.18);color:#fff;}
.b2c-card .ico svg{width:25px;height:25px;}
.b2c-card .t{font-size:17px;font-weight:900;letter-spacing:-.03em;margin-top:auto;}
.b2c-card .d{font-size:12.5px;font-weight:600;color:var(--ink-3);letter-spacing:-.01em;}
.b2c-card.fill .d{color:rgba(255,255,255,.82);}
.b2c-card .near-badge{
  position:absolute;top:14px;right:14px;
  background:#fff;color:var(--brand-deep);
  font-size:11px;font-weight:800;padding:4px 8px;border-radius:999px;
  box-shadow:var(--shadow-sm);
}

/* recommend strip */
.rec-scroll{display:flex;gap:12px;overflow-x:auto;padding:4px 18px 8px;scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none;}
.rec-scroll::-webkit-scrollbar{display:none;}
.rec-card{
  scroll-snap-align:start;flex:0 0 200px;
  background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);
  overflow:hidden;box-shadow:var(--shadow-sm);text-align:left;transition:.18s;
}
.rec-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);}
.rec-card .thumb{height:108px;border-radius:0;font-size:40px;}
.rec-card .rc-body{padding:11px 13px 13px;}
.rec-card .rc-name{font-size:14.5px;font-weight:800;letter-spacing:-.02em;}
.rec-card .rc-meta{font-size:12px;color:var(--ink-3);font-weight:600;margin-top:3px;display:flex;align-items:center;gap:6px;}

/* ===== POINTS (조회) ===== */
.balance-big{
  background:linear-gradient(140deg,var(--brand),#ff7a3d);
  color:#fff;border-radius:var(--r-lg);padding:24px;
  box-shadow:var(--shadow-lg);position:relative;overflow:hidden;
}
.balance-big::after{content:"";position:absolute;right:-40px;bottom:-60px;width:180px;height:180px;border-radius:50%;background:rgba(255,255,255,.14);}
.balance-big .bl{font-size:13.5px;font-weight:700;opacity:.85;}
.balance-big .bv{font-size:44px;font-weight:900;letter-spacing:-.04em;margin-top:4px;}
.balance-big .bv .u{font-size:22px;}
.balance-big .brow{display:flex;gap:10px;margin-top:18px;}
.balance-big .bbtn{
  flex:1;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.25);
  color:#fff;font-weight:800;font-size:14px;padding:11px;border-radius:12px;
  display:flex;align-items:center;justify-content:center;gap:6px;transition:.15s;
}
.balance-big .bbtn:hover{background:rgba(255,255,255,.28);}
.balance-big .bbtn.solid{background:#fff;color:var(--brand-deep);border-color:#fff;}

.stat-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;}
.stat{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);padding:15px;box-shadow:var(--shadow-sm);}
.stat .sl{font-size:12.5px;color:var(--ink-3);font-weight:700;}
.stat .sv{font-size:21px;font-weight:900;letter-spacing:-.03em;margin-top:4px;}
.stat .sv.up{color:var(--ok);}
.stat .sv.dn{color:var(--brand-deep);}

.history{margin-top:8px;}
.hrow{display:flex;align-items:center;gap:13px;padding:14px 2px;border-bottom:1px solid var(--line);}
.hrow:last-child{border-bottom:none;}
.hrow .hico{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:19px;background:var(--brand-tint);flex-shrink:0;}
.hrow .hbody{flex:1;min-width:0;}
.hrow .hname{font-size:14.5px;font-weight:800;letter-spacing:-.02em;}
.hrow .hdate{font-size:12px;color:var(--ink-3);font-weight:600;margin-top:1px;}
.hrow .hamt{font-size:15px;font-weight:900;letter-spacing:-.02em;}
.hrow .hamt.plus{color:var(--ok);}
.hrow .hamt.minus{color:var(--ink);}

/* ===== STORE LIST (쓰기) ===== */
.search-wrap{padding:14px 18px 6px;position:sticky;top:60px;background:var(--paper);z-index:20;}
.searchbar{
  display:flex;align-items:center;gap:10px;
  background:#fff;border:1.5px solid var(--line-2);border-radius:14px;
  padding:12px 14px;transition:.15s;
}
.searchbar:focus-within{border-color:var(--brand);box-shadow:0 0 0 4px var(--brand-soft);}
.searchbar svg{width:18px;height:18px;color:var(--ink-3);flex-shrink:0;}
.searchbar input{flex:1;border:none;outline:none;font-size:14.5px;font-weight:600;color:var(--ink);background:none;}
.searchbar input::placeholder{color:var(--ink-3);font-weight:600;}

.chips{display:flex;gap:8px;overflow-x:auto;padding:10px 18px;-ms-overflow-style:none;scrollbar-width:none;}
.chips::-webkit-scrollbar{display:none;}
.chip{
  flex-shrink:0;font-size:13px;font-weight:700;letter-spacing:-.01em;
  padding:8px 14px;border-radius:999px;border:1px solid var(--line-2);background:#fff;color:var(--ink-2);
  transition:.15s;
}
.chip.active{background:var(--ink);color:#fff;border-color:var(--ink);}
.chip:hover:not(.active){border-color:var(--brand);color:var(--brand);}

.map-banner{
  margin:6px 18px 4px;border-radius:var(--r-md);overflow:hidden;
  background:
    linear-gradient(180deg,rgba(255,92,0,.04),rgba(255,92,0,.10)),
    repeating-linear-gradient(45deg,#eef0e9,#eef0e9 14px,#e7eae1 14px,#e7eae1 28px);
  border:1px solid var(--line-2);
  height:118px;position:relative;
}
.map-banner .mpin{position:absolute;font-size:22px;filter:drop-shadow(0 4px 6px rgba(0,0,0,.2));}
.map-banner .mlabel{
  position:absolute;left:12px;bottom:12px;
  background:#fff;border-radius:10px;padding:7px 11px;font-size:12.5px;font-weight:800;
  box-shadow:var(--shadow-sm);display:flex;align-items:center;gap:6px;
}
.map-banner .mexpand{
  position:absolute;right:12px;top:12px;background:#fff;border-radius:9px;padding:6px 10px;
  font-size:12px;font-weight:800;color:var(--brand-deep);box-shadow:var(--shadow-sm);
}

.list-meta{display:flex;align-items:center;justify-content:space-between;padding:8px 18px 6px;}
.list-meta .lm-count{font-size:13px;font-weight:800;color:var(--ink-2);}
.list-meta .lm-count b{color:var(--brand);}
.list-meta .lm-sort{font-size:13px;font-weight:700;color:var(--ink-3);display:inline-flex;align-items:center;gap:4px;}

.store-list{padding:4px 18px 18px;display:flex;flex-direction:column;gap:12px;}
.store-card{
  display:flex;gap:14px;padding:13px;
  background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);
  box-shadow:var(--shadow-sm);text-align:left;transition:.18s;width:100%;
}
.store-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--brand);}
.store-card .thumb{width:84px;height:84px;font-size:36px;}
.store-card .sc-body{flex:1;min-width:0;display:flex;flex-direction:column;}
.store-card .sc-top{display:flex;align-items:center;gap:7px;}
.store-card .sc-name{font-size:16px;font-weight:900;letter-spacing:-.03em;}
.store-card .sc-cat{font-size:12px;font-weight:700;color:var(--ink-3);}
.store-card .sc-rate{font-size:13px;font-weight:800;margin-top:4px;display:flex;align-items:center;gap:5px;color:var(--ink-2);}
.store-card .sc-rate .dist{color:var(--ink-3);font-weight:600;}
.store-card .sc-foot{margin-top:auto;display:flex;align-items:center;gap:6px;padding-top:8px;flex-wrap:wrap;}

/* ===== STORE DETAIL ===== */
.store-hero{height:200px;position:relative;display:flex;align-items:flex-end;overflow:hidden;}
.store-hero .sh-bg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:84px;}
.store-hero .sh-grad{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 30%,rgba(0,0,0,.55));}
.store-hero .sh-info{position:relative;z-index:2;padding:18px;color:#fff;width:100%;}
.store-hero .sh-cat{font-size:12.5px;font-weight:800;background:rgba(255,255,255,.22);backdrop-filter:blur(4px);padding:4px 10px;border-radius:999px;display:inline-flex;align-items:center;gap:5px;}
.store-hero .sh-name{font-size:27px;font-weight:900;letter-spacing:-.04em;margin-top:8px;text-shadow:0 2px 12px rgba(0,0,0,.3);}
.store-hero .sh-sub{font-size:13.5px;font-weight:700;margin-top:4px;display:flex;align-items:center;gap:9px;text-shadow:0 1px 6px rgba(0,0,0,.4);}
.store-hero .sh-sub .open{color:#7dffb0;}

.point-strip{
  margin:12px 18px 0;position:relative;z-index:5;
  background:var(--brand);color:#fff;border-radius:var(--r-md);
  padding:14px 16px;display:flex;align-items:center;gap:12px;
  box-shadow:var(--shadow-md);
}
.point-strip .ps-ico{width:40px;height:40px;border-radius:11px;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.point-strip .ps-ico svg{width:22px;height:22px;}
.point-strip .ps-t{font-size:14.5px;font-weight:900;letter-spacing:-.02em;}
.point-strip .ps-d{font-size:12px;font-weight:600;opacity:.9;margin-top:1px;}

.action-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:18px;}
.action-btn{
  display:flex;flex-direction:column;align-items:center;gap:6px;
  padding:13px 6px;border-radius:14px;border:1px solid var(--line-2);background:#fff;
  font-size:12.5px;font-weight:800;color:var(--ink-2);transition:.15s;
}
.action-btn svg{width:21px;height:21px;color:var(--brand);}
.action-btn:hover{border-color:var(--brand);background:var(--brand-tint);}

/* tabs */
.tabs{display:flex;gap:4px;padding:0 18px;border-bottom:1px solid var(--line);position:sticky;top:60px;background:var(--paper);z-index:20;}
.tab{
  flex:1;padding:13px 4px;font-size:14.5px;font-weight:800;letter-spacing:-.02em;color:var(--ink-3);
  border-bottom:2.5px solid transparent;margin-bottom:-1px;transition:.15s;
}
.tab.active{color:var(--brand);border-color:var(--brand);}

/* 탭은 스크롤 연동: 세 섹션 모두 노출, 스크롤스파이로 상단 탭이 따라감 */
.tabpane{display:block;padding:18px;scroll-margin-top:112px;}
#pane-review,#pane-info{border-top:8px solid var(--line);}

/* menu */
.menu-group-title{font-size:13px;font-weight:800;color:var(--ink-3);letter-spacing:-.01em;margin:6px 0 10px;}
.menu-item{display:flex;gap:13px;padding:14px 0;border-bottom:1px solid var(--line);}
.menu-item:last-child{border-bottom:none;}
.menu-item .mi-body{flex:1;min-width:0;}
.menu-item .mi-name{font-size:15.5px;font-weight:800;letter-spacing:-.02em;display:flex;align-items:center;gap:7px;}
.menu-item .mi-desc{font-size:12.5px;color:var(--ink-3);font-weight:600;margin-top:3px;line-height:1.45;}
.menu-item .mi-price{font-size:15px;font-weight:900;letter-spacing:-.02em;margin-top:7px;}
.menu-item .mi-thumb{width:76px;height:76px;border-radius:14px;font-size:30px;}
.sig-tag{font-size:10.5px;font-weight:900;color:#fff;background:var(--brand);padding:2px 7px;border-radius:6px;letter-spacing:-.01em;}

/* reviews */
.rev-summary{display:flex;align-items:center;gap:18px;padding:16px;background:var(--brand-tint);border-radius:var(--r-md);margin-bottom:16px;}
.rev-summary .rs-score{font-size:38px;font-weight:900;letter-spacing:-.04em;line-height:1;}
.rev-summary .rs-stars{color:var(--star);font-size:15px;font-weight:800;}
.rev-summary .rs-count{font-size:12.5px;color:var(--ink-3);font-weight:700;margin-top:3px;}
.rev-bars{flex:1;display:flex;flex-direction:column;gap:4px;}
.rev-bar{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:700;color:var(--ink-3);}
.rev-bar .track{flex:1;height:6px;border-radius:3px;background:#fff;overflow:hidden;}
.rev-bar .fill{height:100%;background:var(--brand);border-radius:3px;}

.review{padding:15px 0;border-bottom:1px solid var(--line);}
.review:last-child{border-bottom:none;}
.review .rv-head{display:flex;align-items:center;gap:10px;}
.review .rv-av{width:38px;height:38px;border-radius:50%;background:var(--brand-soft);color:var(--brand-deep);display:flex;align-items:center;justify-content:center;font-weight:900;font-size:15px;}
.review .rv-name{font-size:14px;font-weight:800;}
.review .rv-meta{font-size:11.5px;color:var(--ink-3);font-weight:600;display:flex;align-items:center;gap:6px;}
.review .rv-text{font-size:14px;color:var(--ink-2);font-weight:500;margin-top:9px;line-height:1.6;letter-spacing:-.01em;}
.review .rv-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px;}
.review .rv-tag{font-size:11.5px;font-weight:700;color:var(--ink-2);background:#f5efe8;padding:4px 9px;border-radius:999px;}

/* info pane */
.info-row{display:flex;gap:13px;padding:14px 0;border-bottom:1px solid var(--line);}
.info-row:last-child{border-bottom:none;}
.info-row .ir-ico{width:34px;flex-shrink:0;display:flex;justify-content:center;color:var(--brand);}
.info-row .ir-ico svg{width:19px;height:19px;}
.info-row .ir-label{font-size:12px;font-weight:700;color:var(--ink-3);}
.info-row .ir-val{font-size:14.5px;font-weight:700;color:var(--ink);margin-top:2px;letter-spacing:-.01em;}
.info-row .ir-val .sub{font-size:12.5px;color:var(--ink-3);font-weight:600;margin-top:2px;}

/* AI SEO note */
.ai-note{
  margin:4px 18px 22px;border:1px dashed var(--brand);border-radius:var(--r-md);
  background:var(--brand-tint);padding:14px 16px;
}
.ai-note .an-head{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:900;color:var(--brand-deep);letter-spacing:-.02em;}
.ai-note .an-head svg{width:17px;height:17px;}
.ai-note .an-text{font-size:12px;color:var(--ink-2);font-weight:600;line-height:1.55;margin-top:6px;}
.ai-note code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;background:#fff;border:1px solid var(--line-2);padding:1px 5px;border-radius:5px;color:var(--brand-deep);}

/* generic CTA */
.cta-bar{padding:14px 18px calc(16px + env(safe-area-inset-bottom));}
.cta{
  width:100%;background:var(--brand);color:#fff;font-size:16px;font-weight:900;letter-spacing:-.02em;
  padding:16px;border-radius:15px;box-shadow:0 12px 24px -10px rgba(255,92,0,.55);transition:.15s;
  display:flex;align-items:center;justify-content:center;gap:8px;
}
.cta:hover{background:var(--brand-deep);}
.cta svg{width:20px;height:20px;flex-shrink:0;}

/* 모바일 한글 최적화: 단어 단위 줄바꿈(글자 단위 세로쪼개짐 방지) + 버튼 아이콘 보호 */
body{word-break:keep-all;}
button svg{flex-shrink:0;}
.appbar .brand{flex-shrink:0;}
.appbar .brand .wm{white-space:nowrap;}

/* simple section label for placeholder screens */
.soon{padding:60px 30px;text-align:center;color:var(--ink-3);}
.soon .s-emoji{font-size:46px;}
.soon .s-t{font-size:17px;font-weight:900;color:var(--ink);margin-top:14px;letter-spacing:-.02em;}
.soon .s-d{font-size:13.5px;font-weight:600;margin-top:6px;line-height:1.6;}

.divider{height:8px;background:var(--bg);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}

/* ===== 좁은 화면(대부분의 폰): 상단 B2B 진입 pill이 가로폭을 넘겨
   우측 여백/가로 스크롤이 생기던 문제 방지 — pill을 압축하고 아이콘은 숨김 ===== */
@media (max-width:430px){
  .appbar{gap:8px;padding-left:14px;padding-right:14px;}
  .b2b-entries{gap:6px;}
  .b2b-pill{padding:7px 11px;font-size:12px;gap:0;}
  .b2b-pill svg{display:none;}
}
