:root{
  --ink:#06251A; --paper:#FFFFFF;
  --a-ground:#FAF6EC; --a-accent:#146B45; --a-accent-ink:#FFFFFF; --a-mint:#DCEBD9; --a-sky:#E4EFE0; --a-butter:#F7C948; --a-peach:#F3E6C2; --a-mute:#6B7568;
  --b-ground:#FAF6EC; --b-ink:#06251A; --b-accent:#146B45; --b-lime:#F7C948; --b-mute:#5F6E64; --b-line:#E6DFCB; --b-soft:#E4EFE0;
  --spring:cubic-bezier(.32,.72,0,1);
}
*{box-sizing:border-box}
/* 스크롤바 전부 숨김 */
html,body,*{scrollbar-width:none;-ms-overflow-style:none}
::-webkit-scrollbar{display:none;width:0;height:0}
[hidden]{display:none!important}
html,body{margin:0}
body{background:#FAF6EC;color:#06251A;font-family:"Pretendard",system-ui,sans-serif;font-size:16px;line-height:1.55;overflow-x:clip;word-break:keep-all}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
.wrap{max-width:1180px;margin:0 auto;padding-inline:20px}
h1,h2,h3{margin:0;text-wrap:balance}
p{margin:0}

/* switcher */
.sw{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:50;display:flex;gap:4px;background:#1F1B18;padding:5px;border-radius:999px;box-shadow:0 10px 30px rgba(43,38,34,.28)}
.sw button{border:0;border-radius:999px;padding:9px 16px;background:transparent;color:#CFC7BF;font-family:"Pretendard",sans-serif;font-size:13px;font-weight:600;transition:background .25s var(--spring),color .25s}
.sw button{white-space:nowrap}
@media (max-width:600px){.sw button{padding:8px 9px;font-size:11.5px}}
.sw button[aria-pressed="true"]{background:#fff;color:#1F1B18}
.sw button:focus-visible{outline:2px solid #fff;outline-offset:2px}
.note{background:#1F1B18;color:#fff;font:600 12px/1.3 "Pretendard",sans-serif;padding:8px 20px;text-align:center}
.note b{color:#FFD25F}

/* ===== 공통: 초록무대 ===== */

body{background:#FAF6EC;color:#06251A}
.G{display:block}

.G{--g9:#08301F;--g8:#0B4A32;--g7:#146B45;--y:#F7C948;--cream:#FAF6EC;--sand:#F1EBDB;--ink:#06251A;--mute:#5F6E64;font-family:"Pretendard",sans-serif;color:var(--ink)}
.G .disp{font-family:"GmarketSans",sans-serif;font-weight:700;letter-spacing:-.02em}
.G .nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:var(--g9);color:#F3EBD6}
.G .nav .wrap{display:flex;align-items:center;gap:24px;height:68px}
.G .logo{font-family:"GmarketSans",sans-serif;font-weight:700;font-size:23px;display:flex;align-items:center;gap:9px;color:#fff}
.G .logo i{width:26px;height:26px;border-radius:50%;background:var(--y);display:inline-block;position:relative}
.G .logo i::after{content:"";position:absolute;inset:8px;border-radius:50%;background:var(--g9)}
.G .menu{display:flex;gap:22px;font-size:15px}
.G .menu a{opacity:.85}.G .menu a:hover{opacity:1;text-decoration:underline;text-underline-offset:6px;text-decoration-color:var(--y)}
.G .nav .sp{flex:1}
.G .hp{display:flex;align-items:center;gap:7px;border:1.5px solid rgba(255,255,255,.25);border-radius:999px;padding:7px 12px;font-size:14px}
.G .hp s{width:14px;height:14px;background:var(--y);display:inline-block;clip-path:path("M7 13 L1.6 7.4 A3.2 3.2 0 0 1 7 3.2 A3.2 3.2 0 0 1 12.4 7.4 Z")}
.G .yb{border:0;border-radius:999px;padding:12px 22px;font-family:"GmarketSans",sans-serif;font-weight:700;font-size:17px;background:var(--y);color:var(--ink);transition:transform .2s var(--spring),box-shadow .2s;box-shadow:0 4px 0 #C99A26}
.G .yb:hover{transform:translateY(-2px);box-shadow:0 6px 0 #C99A26}
.G .yb:active{transform:translateY(2px);box-shadow:0 2px 0 #C99A26}
.G .yb.sm{padding:9px 16px;font-size:15px}
.G .gb{border:2px solid var(--ink);background:transparent;color:var(--ink);border-radius:999px;padding:11px 20px;font-family:"GmarketSans",sans-serif;font-weight:700;font-size:16px}
.G .gb:hover{background:var(--ink);color:var(--y)}
.G .gb.light{border-color:#fff;color:#fff}.G .gb.light:hover{background:#fff;color:var(--g9)}

.G .hero{background:var(--g8);color:#F3EBD6;position:relative;overflow:hidden}
.G .hero::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(247,201,72,.22) 1.5px,transparent 1.5px);background-size:26px 26px;opacity:.7;pointer-events:none}
.G .hero > .wrap{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:end;padding-top:56px;min-height:540px}
.G .hero h1{font-size:clamp(40px,5.3vw,64px);line-height:1.1;color:#fff}
.G .hero h1 em{font-style:normal;color:var(--y)}
.G .hero p{margin-top:16px;font-size:18px;color:#D6E3D8;max-width:34ch}
.G .hero .cta{display:flex;gap:10px;margin:26px 0 54px;flex-wrap:wrap}
.G .stage{position:relative;height:520px;align-self:end}
.G .stage .paper{position:absolute;background:#fff;padding:7px;border-radius:8px;width:230px;box-shadow:0 18px 40px rgba(0,0,0,.28)}
.G .stage .p1{left:0;bottom:120px;transform:rotate(-7deg)}
.G .stage .p2{left:36%;bottom:150px;transform:rotate(4deg)}
.G .stage .p3{right:0;bottom:110px;transform:rotate(10deg)}
.G .stage .paper img{border-radius:4px}
.G .stage .k1{position:absolute;left:8%;bottom:0;width:215px;z-index:3}
.G .stage .k2{position:absolute;right:6%;bottom:0;width:205px;z-index:3}
.G .stage .floor{position:absolute;left:0;right:0;bottom:0;height:90px;background:var(--g9);border-radius:50% 50% 0 0/100% 100% 0 0;z-index:2}
.G .stage .tag{position:absolute;left:44%;bottom:40px;z-index:4;background:var(--y);color:var(--ink);font-family:"GmarketSans",sans-serif;font-weight:700;padding:8px 14px;border-radius:12px;font-size:16px;transform:rotate(-4deg)}
.G .lineup{background:var(--g9);padding:22px 0 0}
.G .lineup .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:0;align-items:end}
.G .lineup img{width:100%;height:auto;transition:transform .35s var(--spring)}
.G .lineup img:hover{transform:translateY(-10px)}
.G .lineup .names{display:grid;grid-template-columns:repeat(12,1fr);text-align:center;font-family:"GmarketSans",sans-serif;font-weight:700;font-size:13px;color:#C9D9CD;padding:8px 0 14px;border-top:2px solid rgba(255,255,255,.12)}

.G section{padding-block:64px}
.G .sh{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}
.G .sh h2{font-size:34px}
.G .sh p{color:var(--mute);font-size:15px}
.G .sh a{font-size:15px;border-bottom:2px solid var(--ink);padding-bottom:2px}
.G .bento{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-template-rows:auto auto;gap:14px}
.G .bc{border-radius:22px;overflow:hidden;position:relative;background:#fff;border:2px solid var(--sand);display:grid;grid-template-columns:1fr 1fr;align-items:end;transition:transform .35s var(--spring),border-color .2s}
.G .bc:hover{transform:translateY(-5px);border-color:var(--g7)}
.G .bc.big{grid-row:span 2;grid-template-columns:1fr;background:var(--g7);color:#fff;border-color:var(--g7)}
.G .bc .txt{padding:20px}
.G .bc b{font-family:"GmarketSans",sans-serif;font-weight:700;font-size:20px;display:block;line-height:1.2}
.G .bc.big b{font-size:32px;color:#fff}
.G .bc p{font-size:14px;color:var(--mute);margin-top:6px}
.G .bc.big p{color:#D6E3D8;font-size:15px}
.G .bc .im{padding:14px 14px 0 0;justify-self:end}
.G .bc .im img{width:140px;border-radius:6px 6px 0 0;box-shadow:0 -4px 16px rgba(6,37,26,.14)}
.G .bc.big .im{padding:0 20px;justify-self:center;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end}
.G .bc.big .im img{width:100%;box-shadow:0 -6px 22px rgba(0,0,0,.25)}
.G .pill{display:inline-block;font-size:12px;border-radius:999px;padding:3px 10px;background:var(--sand);color:var(--g8);font-weight:700;margin-top:10px}
.G .pill.y{background:var(--y);color:var(--ink)}
.G .bc.big .pill{background:var(--y)}

.G .chips{background:var(--sand)}
.G .chips .row{display:flex;flex-wrap:wrap;gap:10px}
.G .chip{display:flex;align-items:center;gap:10px;background:#fff;border-radius:999px;padding:6px 18px 6px 6px;font-family:"GmarketSans",sans-serif;font-weight:700;font-size:17px;border:2px solid transparent;transition:border-color .2s,transform .3s var(--spring)}
.G .chip:hover{border-color:var(--g7);transform:translateY(-3px)}
.G .chip img{width:40px;height:40px;border-radius:50%;object-fit:cover}
.G .chip small{font-family:"Pretendard";color:var(--mute);font-size:13px;margin-left:2px}
.G .chip.all{background:var(--g8);color:#fff}

.G .steps{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:14px;align-items:stretch}
.G .st{background:#fff;border-radius:22px;padding:22px;border:2px solid var(--sand);position:relative;overflow:hidden;min-height:250px;display:grid;grid-template-rows:auto 1fr;gap:6px}
.G .st .n{font-family:"GmarketSans",sans-serif;font-weight:700;font-size:15px;color:var(--g7);background:var(--sand);width:max-content;padding:3px 12px;border-radius:999px}
.G .st b{font-family:"GmarketSans",sans-serif;font-weight:700;font-size:24px;display:block;margin-top:8px}
.G .st p{font-size:14.5px;color:var(--mute);margin-top:6px;max-width:26ch}
.G .st img{position:absolute;right:10px;bottom:0;height:150px}
.G .st.one{background:var(--y);border-color:var(--y)}
.G .st.one .n{background:#fff}
.G .st.one p{color:#5A4A12}
.G .st.one img{height:190px;right:16px}

.G .ticket .wrap{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}
.G .tk{background:var(--y);border-radius:20px;padding:28px;position:relative;color:var(--ink);--r:16px}
.G .tk::before,.G .tk::after{content:"";position:absolute;top:50%;width:32px;height:32px;border-radius:50%;background:var(--cream);transform:translateY(-50%)}
.G .tk::before{left:-16px}.G .tk::after{right:-16px}
.G .tk .hd{display:flex;justify-content:space-between;align-items:baseline;border-bottom:2px dashed rgba(6,37,26,.3);padding-bottom:14px}
.G .tk .hd b{font-family:"GmarketSans",sans-serif;font-weight:700;font-size:24px}
.G .tk .hd span{font-size:13px;font-weight:700}
.G .tk .bal{display:flex;align-items:flex-end;gap:12px;padding-top:16px}
.G .tk .bal strong{font-family:"GmarketSans",sans-serif;font-weight:700;font-size:64px;line-height:1}
.G .tk .bal small{font-size:14px;padding-bottom:10px;color:#5A4A12}
.G .tk p{font-size:14px;margin-top:10px;color:#5A4A12}
.G .ways{display:grid;gap:12px}
.G .way{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;background:#fff;border:2px solid var(--sand);border-radius:18px;padding:14px 18px 14px 14px}
.G .way .pic{width:84px;height:84px;border-radius:16px;background:var(--sand);overflow:hidden;display:grid;place-items:end center}
.G .way .pic img{height:92px;object-fit:contain;object-position:bottom}
.G .way b{font-family:"GmarketSans",sans-serif;font-weight:700;font-size:19px;display:block}
.G .way p{font-size:13.5px;color:var(--mute);margin-top:2px}
.G .way .amt{font-family:"GmarketSans",sans-serif;font-weight:700;font-size:24px;color:var(--g7);white-space:nowrap}

.G .books{background:var(--sand)}
.G .shelf{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}
.G .bk{background:#fff;border-radius:20px;overflow:hidden;display:grid;grid-template-columns:1fr 130px;gap:10px;align-items:end;padding:18px 0 0 18px;min-height:220px}
.G .bk img{width:130px;border-radius:8px 0 0 0;box-shadow:-4px -6px 18px rgba(6,37,26,.12)}
.G .bk b{font-family:"GmarketSans",sans-serif;font-weight:700;font-size:22px;display:block}
.G .bk p{font-size:14px;color:var(--mute);margin:6px 0 10px}
.G .bk .ft{padding-bottom:18px}
.G .bk.q{background:var(--g8);color:#fff;grid-template-columns:1fr;padding:26px;align-content:center}
.G .bk.q p{color:#D6E3D8}

.G .insta .wrap{display:grid;grid-template-columns:1fr 1.2fr;gap:36px;align-items:center}
.G .insta h2{font-size:32px}
.G .insta p{margin-top:10px;color:var(--mute)}
.G .reels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.G .reel{aspect-ratio:9/14;border-radius:18px;overflow:hidden;position:relative;display:grid;place-items:end center;background:var(--sand)}
.G .reel img{width:76%;object-fit:contain}
.G .reel .cap{position:absolute;left:12px;top:12px;font-family:"GmarketSans",sans-serif;font-weight:700;font-size:14px;background:var(--y);border-radius:999px;padding:4px 10px}
.G footer{background:var(--g9);color:#B7C9BC;font-size:13px;padding-block:40px}
.G footer .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px}
.G footer b{color:#fff;font-family:"GmarketSans",sans-serif;font-weight:700;font-size:18px;display:block;margin-bottom:8px}
.G footer a{display:block;margin-top:6px}
.G footer .lic{margin-top:14px;line-height:1.7;color:#8FA697}

@media (max-width:980px){
.G .bento{grid-template-columns:1fr 1fr}.G .bc.big{grid-column:span 2;grid-row:auto}
  .G .steps,.G .shelf,.G footer .wrap,#C footer .wrap{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
.G .menu,#C .menu{display:none}
  .G .hero > .wrap{grid-template-columns:1fr;min-height:0;padding-top:34px}
  .G .hero .cta{margin-bottom:20px}
  .G .stage{height:360px}
  .G .stage .paper{width:40%}
  .G .stage .p1{left:0;bottom:110px}.G .stage .p2{left:30%;bottom:130px}.G .stage .p3{right:0;bottom:100px}
  .G .stage .k1{width:40%;left:4%}.G .stage .k2{width:38%;right:4%}
  .G .stage .tag{left:34%;bottom:30px;font-size:14px}
  .G .lineup .wrap,.G .lineup .names{grid-template-columns:repeat(6,1fr)}
  .G .lineup .names{display:none}
  .G .bento{grid-template-columns:1fr}.G .bc.big{grid-column:auto}
  .G .steps,.G .shelf,.G .ticket .wrap,.G .insta .wrap,.G footer .wrap{grid-template-columns:1fr}
  .G .sh h2,.G .insta h2{font-size:28px}
  .G .st img{height:120px}.G .st.one img{height:150px}
}
/* ===== v2: 실제 도안 갤러리 ===== */
.G .hero5{background:var(--g8);color:#F3EBD6;position:relative;overflow:hidden}
.G .hero5::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 70% 60%,rgba(20,107,69,.55),transparent 60%);pointer-events:none}
.G .hero5 > .wrap{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;min-height:560px;padding-block:40px 0}
.G .hero5 h1{font-size:clamp(40px,5.2vw,62px);line-height:1.1;color:#fff}
.G .hero5 h1 em{font-style:normal;color:var(--y)}
.G .hero5 .lead{margin-top:16px;font-size:18px;color:#D6E3D8;max-width:32ch}
.G .hero5 .cta{display:flex;gap:10px;margin-top:26px;flex-wrap:wrap}
.G .hero5 .facts{display:flex;gap:22px;margin-top:34px;flex-wrap:wrap}
.G .hero5 .facts div{font-size:13px;color:#B7C9BC}
.G .hero5 .facts b{display:block;font-family:"GmarketSans",sans-serif;font-weight:700;font-size:26px;color:#fff;line-height:1.1}
.G .wallv{position:relative;height:600px;overflow:hidden;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;mask-image:linear-gradient(transparent,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(transparent,#000 8%,#000 92%,transparent)}
.G .wallv .col{display:flex;flex-direction:column;gap:14px;animation:up 46s linear infinite}
.G .wallv .col:nth-child(2){animation-direction:reverse;animation-duration:54s;margin-top:-120px}
.G .wallv .col:nth-child(3){animation-duration:50s}
.G .wallv img{width:100%;border-radius:10px;background:#fff;padding:4px;box-shadow:0 14px 34px rgba(0,0,0,.3)}
@keyframes up{to{transform:translateY(-50%)}}
.G .hero5 .peek{position:absolute;left:41%;bottom:-8px;width:150px;z-index:3}

.G .feat{display:grid;grid-template-columns:1.5fr 1fr 1fr;grid-template-rows:auto auto;gap:14px}
.G .fc{position:relative;border-radius:22px;overflow:hidden;background:#fff;border:2px solid var(--sand);transition:transform .35s var(--spring),border-color .2s;display:block}
.G .fc:hover{transform:translateY(-5px);border-color:var(--g7)}
.G .fc img{width:100%;aspect-ratio:210/297;object-fit:cover;object-position:top}
.G .fc.big{grid-row:span 2}
.G .fc.big img{aspect-ratio:auto;height:100%}
.G .fc .cap{position:absolute;left:0;right:0;bottom:0;padding:40px 16px 14px;background:linear-gradient(transparent,rgba(6,37,26,.86));color:#fff}
.G .fc .cap b{font-family:"GmarketSans",sans-serif;font-weight:700;font-size:18px;display:block;line-height:1.2}
.G .fc.big .cap b{font-size:26px}
.G .fc .cap small{font-size:12.5px;color:#C9D9CD}
.G .fc .tag{position:absolute;left:12px;top:12px;font-family:"GmarketSans",sans-serif;font-weight:700;font-size:12.5px;background:#fff;color:var(--g8);border-radius:999px;padding:4px 10px}
.G .fc .tag.y{background:var(--y);color:var(--ink)}

.G .cats{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.G .cat{position:relative;border-radius:18px;overflow:hidden;aspect-ratio:3/3.6;background:#fff;border:2px solid var(--sand);display:block;transition:transform .35s var(--spring),border-color .2s}
.G .cat:hover{transform:translateY(-4px);border-color:var(--g7)}
.G .cat img{width:100%;height:100%;object-fit:cover;object-position:top}
.G .cat .cap{position:absolute;left:0;right:0;bottom:0;padding:34px 12px 12px;background:linear-gradient(transparent,rgba(6,37,26,.9));color:#fff}
.G .cat .cap b{font-family:"GmarketSans",sans-serif;font-weight:700;font-size:17px;display:block}
.G .cat .cap small{font-size:12px;color:#C9D9CD}
.G .cat .n{position:absolute;right:10px;top:10px;font-family:"GmarketSans",sans-serif;font-weight:700;font-size:12px;background:var(--y);border-radius:999px;padding:3px 9px;color:var(--ink)}

.G .friends .wrap > .sh{margin-bottom:18px}
.G .frow{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.G .fr{background:#fff;border:2px solid var(--sand);border-radius:18px;padding:8px;text-align:center;transition:transform .3s var(--spring),border-color .2s;display:block}
.G .fr:hover{transform:translateY(-4px);border-color:var(--g7)}
.G .fr img{width:100%;aspect-ratio:210/297;object-fit:cover;object-position:top;border-radius:10px}
.G .fr b{display:block;font-family:"GmarketSans",sans-serif;font-weight:700;font-size:15px;margin-top:8px}
.G .fr small{color:var(--mute);font-size:12px}

.G .books5{background:var(--g9);color:#F3EBD6}
.G .books5 .sh h2{color:#fff}.G .books5 .sh p{color:#B7C9BC}.G .books5 .sh a{color:var(--y);border-color:var(--y)}
.G .shelf5{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.G .bk5{background:var(--g8);border-radius:20px;padding:14px;transition:transform .35s var(--spring);display:block}
.G .bk5:hover{transform:translateY(-6px)}
.G .bk5 img{width:100%;aspect-ratio:210/297;object-fit:cover;object-position:top;border-radius:10px;box-shadow:0 12px 28px rgba(0,0,0,.3)}
.G .bk5 b{display:block;font-family:"GmarketSans",sans-serif;font-weight:700;font-size:19px;margin-top:12px;color:#fff}
.G .bk5 p{font-size:13px;color:#B7C9BC;margin-top:2px}
.G .bk5 .pill{background:var(--y);color:var(--ink)}

.G .craft{display:grid;grid-template-columns:1.1fr repeat(4,1fr);gap:14px;align-items:stretch}
.G .craft .lead{background:var(--y);border-radius:22px;padding:24px;display:grid;align-content:space-between;gap:14px;color:var(--ink)}
.G .craft .lead h2{font-size:30px;line-height:1.15}
.G .craft .lead p{font-size:14.5px;color:#5A4A12}
.G .cr{background:#fff;border:2px solid var(--sand);border-radius:18px;padding:8px;display:block;transition:transform .3s var(--spring),border-color .2s}
.G .cr:hover{transform:translateY(-4px);border-color:var(--g7)}
.G .cr img{width:100%;aspect-ratio:210/297;object-fit:cover;object-position:top;border-radius:10px;background:#fff}
.G .cr b{display:block;font-family:"GmarketSans",sans-serif;font-weight:700;font-size:15px;margin-top:8px}
.G .cr small{color:var(--mute);font-size:12px}

@media (max-width:980px){
  .G .feat{grid-template-columns:1fr 1fr}.G .fc.big{grid-column:span 2;grid-row:auto}.G .fc.big img{aspect-ratio:16/10;height:auto}
  .G .cats,.G .frow{grid-template-columns:repeat(4,minmax(0,1fr))}
  .G .shelf5{grid-template-columns:repeat(2,minmax(0,1fr))}
  .G .craft{grid-template-columns:1fr 1fr 1fr}.G .craft .lead{grid-column:span 3}
}
@media (max-width:760px){
  .G .hero5 > .wrap{grid-template-columns:1fr;min-height:0;padding-top:34px;gap:24px}
  .G .wallv{height:380px}.G .hero5 .peek{display:none}
  .G .feat{grid-template-columns:1fr 1fr}
  .G .cats,.G .frow{grid-template-columns:repeat(3,minmax(0,1fr))}
  .G .craft{grid-template-columns:1fr 1fr}.G .craft .lead{grid-column:span 2}
  .G .shelf5{grid-template-columns:1fr 1fr;gap:10px}
}
@media (prefers-reduced-motion:reduce){.G .wallv .col{animation:none}}
/* ===== polish: 효과·디테일 ===== */
html{scroll-behavior:smooth}
.G{--ease:cubic-bezier(.32,.72,0,1);--shell:rgba(6,37,26,.06);--hl:inset 0 1px 0 rgba(255,255,255,.7)}
.prog{position:fixed;left:0;top:0;height:3px;width:100%;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,var(--y),#FFE28A);z-index:60;pointer-events:none}
.grain{position:fixed;inset:0;z-index:55;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");mix-blend-mode:multiply}
/* nav */
.G .nav{transition:box-shadow .5s var(--ease),background .5s var(--ease)}
.G .nav .wrap{transition:height .5s var(--ease)}
.G .nav.on{background:rgba(8,48,31,.86);backdrop-filter:blur(14px) saturate(150%);-webkit-backdrop-filter:blur(14px) saturate(150%);box-shadow:0 1px 0 rgba(255,255,255,.08),0 12px 40px rgba(0,0,0,.25)}
.G .nav.on .wrap{height:58px}
.G .menu a{position:relative;text-decoration:none}
.G .menu a::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--y);transform:scaleX(0);transform-origin:0 50%;transition:transform .45s var(--ease)}
.G .menu a:hover::after{transform:scaleX(1)}
.G .hp s{animation:beat 2.4s var(--ease) infinite}
@keyframes beat{0%,70%,100%{transform:scale(1)}78%{transform:scale(1.25)}86%{transform:scale(1)}}
/* buttons: button-in-button */
.G .yb,.G .gb{display:inline-flex;align-items:center;gap:10px;transition:transform .45s var(--ease),box-shadow .45s var(--ease),background .45s var(--ease),color .45s var(--ease)}
.G .yb .ar,.G .gb .ar{width:26px;height:26px;border-radius:50%;background:rgba(6,37,26,.12);display:grid;place-items:center;margin-right:-8px;transition:transform .45s var(--ease),background .45s var(--ease)}
.G .gb.light .ar{background:rgba(255,255,255,.18)}
.G .yb .ar::before,.G .gb .ar::before{content:"";width:7px;height:7px;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg) translate(-1px,1px)}
.G .yb:hover .ar,.G .gb:hover .ar{transform:translate(2px,-1px) scale(1.08);background:rgba(6,37,26,.2)}
.G .gb.light:hover .ar{background:rgba(8,48,31,.15)}
.G .yb:active,.G .gb:active{transform:scale(.97)}
.G .yb{box-shadow:0 4px 0 #C99A26,var(--hl)}
/* hero entrance */
.G .hero5 .e{animation:rise 1s var(--ease) both}
.G .hero5 .e:nth-child(1){animation-delay:.05s}.G .hero5 .e:nth-child(2){animation-delay:.15s}.G .hero5 .e:nth-child(3){animation-delay:.25s}.G .hero5 .e:nth-child(4){animation-delay:.35s}.G .hero5 .e:nth-child(5){animation-delay:.45s}
@keyframes rise{from{opacity:0;transform:translateY(28px);filter:blur(6px)}to{opacity:1;transform:none;filter:blur(0)}}
.G .eyebrow{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(247,201,72,.45);color:var(--y);border-radius:999px;padding:5px 12px 5px 6px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;margin-bottom:18px;background:rgba(247,201,72,.08)}
.G .eyebrow i{width:18px;height:18px;border-radius:50%;background:var(--y);display:inline-block;position:relative}
.G .eyebrow i::after{content:"";position:absolute;inset:6px;border-radius:50%;background:var(--g8)}
.G .wallv{transform:perspective(1200px) rotateY(-6deg);transform-origin:100% 50%;transition:transform .8s var(--ease)}
.G .wallv:hover .col{animation-play-state:paused}
.G .wallv img{transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.G .wallv img:hover{transform:scale(1.04) translateX(-4px);box-shadow:0 22px 50px rgba(0,0,0,.4)}

@keyframes bob{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(-2deg)}}
.G .hero5 .facts b{font-variant-numeric:tabular-nums}
/* curve divider */
.G .curve{display:block;width:100%;height:56px;margin-top:-1px;background:var(--g8)}
.G .curve svg{display:block;width:100%;height:100%}
/* double-bezel cards */
.G .fc,.G .cat,.G .cr,.G .fr,.G .bk5{border:0;box-shadow:0 0 0 1px var(--shell),0 1px 2px rgba(6,37,26,.04);padding:6px;background:linear-gradient(180deg,#fff,#F7F3E8);border-radius:24px;transition:transform .6s var(--ease),box-shadow .6s var(--ease)}
.G .fc img,.G .cat img,.G .cr img,.G .fr img,.G .bk5 img{border-radius:18px;box-shadow:inset 0 0 0 1px rgba(6,37,26,.05)}
.G .fc .cap,.G .cat .cap{left:6px;right:6px;bottom:6px;border-radius:0 0 18px 18px}
.G .fc .tag,.G .cat .n{left:16px;top:16px;box-shadow:0 2px 8px rgba(6,37,26,.15),var(--hl)}
.G .cat .n{left:auto;right:16px}
.G .fc:hover,.G .cat:hover,.G .cr:hover,.G .fr:hover{transform:translateY(-8px);box-shadow:0 0 0 1px rgba(20,107,69,.35),0 30px 60px -20px rgba(6,37,26,.35),0 12px 24px -12px rgba(6,37,26,.2)}
.G .fc img,.G .cat img{transition:transform 1.2s var(--ease)}
.G .fc:hover img,.G .cat:hover img{transform:scale(1.05)}
.G .cat .cap{padding-bottom:16px}
.G .bk5{background:linear-gradient(180deg,#0F5A3D,#0B4A32);box-shadow:0 0 0 1px rgba(255,255,255,.08),inset 0 1px 0 rgba(255,255,255,.08);padding:12px}
.G .bk5:hover{transform:translateY(-8px) rotate(-1deg);box-shadow:0 0 0 1px rgba(247,201,72,.5),0 30px 60px -20px rgba(0,0,0,.6)}
.G .bk5 b,.G .bk5 p,.G .bk5 .pill{margin-left:4px}
.G .tilt{transform-style:preserve-3d;will-change:transform}
/* ticket */
.G .tk{overflow:hidden;box-shadow:0 20px 50px -20px rgba(201,154,38,.6),var(--hl)}
.G .tk::before,.G .tk::after{z-index:2}
.G .tk .shine{position:absolute;inset:-40% -60%;background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.55) 50%,transparent 60%);transform:translateX(-60%);pointer-events:none}
.G .tk:hover .shine{animation:shine 1.1s var(--ease) forwards}
@keyframes shine{to{transform:translateX(60%)}}
.G .way{transition:transform .5s var(--ease),border-color .5s var(--ease),box-shadow .5s var(--ease);box-shadow:var(--hl)}
.G .way:hover{transform:translateX(6px);border-color:var(--g7);box-shadow:0 18px 40px -20px rgba(6,37,26,.3)}
.G .way .pic img{transition:transform .5s var(--ease)}
.G .way:hover .pic img{transform:translateY(-6px)}
/* craft lead */
.G .craft .lead{box-shadow:0 24px 60px -24px rgba(201,154,38,.7),var(--hl);position:relative;overflow:hidden}
.G .craft .lead::after{content:"";position:absolute;right:-40px;bottom:-40px;width:180px;height:180px;border-radius:50%;background:rgba(255,255,255,.35)}
/* reels */
.G .reel{transition:transform .6s var(--ease);box-shadow:0 0 0 1px var(--shell)}
.G .reel:hover{transform:translateY(-8px) rotate(1.5deg)}
.G .reel img{transition:transform .6s var(--ease)}
.G .reel:hover img{transform:scale(1.06)}
/* scroll reveal */
html.js .rv{opacity:0;transform:translateY(26px);filter:blur(4px);transition:opacity .9s var(--ease),transform .9s var(--ease),filter .9s var(--ease)}
html.js .rv.on{opacity:1;transform:none;filter:blur(0)}
html.js .rvs>*{opacity:0;transform:translateY(18px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
html.js .rvs.on>*{opacity:1;transform:none}
html.js .rvs.on>*:nth-child(1){transition-delay:.0s}html.js .rvs.on>*:nth-child(2){transition-delay:.06s}html.js .rvs.on>*:nth-child(3){transition-delay:.12s}html.js .rvs.on>*:nth-child(4){transition-delay:.18s}html.js .rvs.on>*:nth-child(5){transition-delay:.24s}html.js .rvs.on>*:nth-child(6){transition-delay:.3s}html.js .rvs.on>*:nth-child(7){transition-delay:.36s}html.js .rvs.on>*:nth-child(8){transition-delay:.42s}html.js .rvs.on>*:nth-child(9){transition-delay:.48s}html.js .rvs.on>*:nth-child(10){transition-delay:.54s}html.js .rvs.on>*:nth-child(11){transition-delay:.6s}html.js .rvs.on>*:nth-child(12){transition-delay:.66s}
.G section{padding-block:88px}
.G .sh{margin-bottom:32px}
.G .sh h2{font-size:38px}
@media (max-width:760px){.G section{padding-block:56px}.G .sh h2{font-size:28px}.G .wallv{transform:none}}
@media (prefers-reduced-motion:reduce){.G .hero5 .e,.G .hp s,.G .hero5 .peek,.G .wallv .col{animation:none!important}html.js .rv,html.js .rvs>*{opacity:1;transform:none;filter:none;transition:none}}
/* ===== mobile ===== */
.G .ham{display:none;width:44px;height:44px;border:0;background:transparent;position:relative;margin-right:-8px}
.G .ham i{position:absolute;left:11px;width:22px;height:2px;background:#fff;border-radius:2px;transition:transform .5s var(--ease),opacity .3s}
.G .ham i:nth-child(1){top:16px}.G .ham i:nth-child(2){top:22px}.G .ham i:nth-child(3){top:28px}
.G .ham[aria-expanded="true"] i:nth-child(1){transform:translateY(6px) rotate(45deg)}
.G .ham[aria-expanded="true"] i:nth-child(2){opacity:0}
.G .ham[aria-expanded="true"] i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.G .mnav{position:fixed;inset:0;z-index:19;background:rgba(8,48,31,.94);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:96px 24px 32px;display:none;flex-direction:column;justify-content:space-between}
.G .mnav.open{display:flex}
.G .mnav a{display:block;font-family:"GmarketSans",sans-serif;font-weight:700;font-size:32px;color:#fff;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.1);opacity:0;transform:translateY(16px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.G .mnav.open a{opacity:1;transform:none}
.G .mnav.open a:nth-child(1){transition-delay:.05s}.G .mnav.open a:nth-child(2){transition-delay:.1s}.G .mnav.open a:nth-child(3){transition-delay:.15s}.G .mnav.open a:nth-child(4){transition-delay:.2s}.G .mnav.open a:nth-child(5){transition-delay:.25s}
.G .mnav .mfoot{display:grid;gap:10px}
.G .mnav .mfoot .yb{justify-content:center}
.G .mnav .mfoot .hp{justify-content:center;color:#fff;padding:12px}
.G .mbar{display:none;position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:18;background:rgba(8,48,31,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-radius:999px;padding:8px 8px 8px 18px;align-items:center;gap:10px;color:#fff;box-shadow:0 14px 40px rgba(0,0,0,.35);transform:translateY(120%);transition:transform .6s var(--ease)}
.G .mbar.show{transform:none}
.G .mbar span{flex:1;font-size:13px;line-height:1.3}
.G .mbar b{display:block;font-family:"GmarketSans",sans-serif;font-size:14px;color:var(--y)}
.G .mbar .yb{padding:11px 16px;font-size:14px;box-shadow:none;white-space:nowrap}
body.menu-open{overflow:hidden}
@media (max-width:760px){
  .note{font-size:11px;padding:6px 14px}
  .G .nav .wrap{height:60px;gap:12px}
  .G .nav.on .wrap{height:54px}
  .G .logo{font-size:19px}
  .G .menu,.G .nav .hp,.G .nav .yb.sm{display:none}
  .G .ham{display:block}
  .G .mbar{display:flex}
  .G .hero5 > .wrap{grid-template-columns:1fr;min-height:0;padding:28px 20px 0;gap:22px}
  .G .hero5 h1{font-size:clamp(34px,10vw,44px);line-height:1.12}
  .G .hero5 .lead{font-size:15.5px;margin-top:12px;max-width:none}
  .G .hero5 .cta{margin-top:20px;gap:8px}
  .G .hero5 .cta .yb,.G .hero5 .cta .gb{flex:1;justify-content:center;padding:14px 16px;font-size:15px}
  .G .hero5 .cta .ar{display:none}
  .G .hero5 .facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12)}
  .G .hero5 .facts b{font-size:22px}
  .G .wallv{height:340px;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;transform:none;margin:0 -20px;width:calc(100% + 40px)}
  .G .wallv .col{animation-duration:30s}
  .G .hero5 .peek{display:none}
  .G .curve{height:36px}
  .G section{padding-block:52px}
  .G .sh{flex-direction:column;align-items:flex-start;gap:6px;margin-bottom:20px}
  .G .sh h2{font-size:27px}
  .G .sh a{font-size:14px}
  .G .feat{grid-template-columns:1fr 1fr;gap:10px}
  .G .fc.big{grid-column:span 2}.G .fc.big img{aspect-ratio:16/11;height:auto}
  .G .fc .cap{padding:30px 12px 12px}.G .fc .cap b{font-size:15px}.G .fc.big .cap b{font-size:21px}
  .G .cats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .G .cat{aspect-ratio:3/3.3}
  .G .cat .cap b{font-size:16px}.G .cat .cap small{font-size:11.5px}
  .G .frow{display:flex;overflow-x:auto;gap:10px;padding:2px 20px 14px;margin:0 -20px;scroll-snap-type:x mandatory;scrollbar-width:none}
  .G .frow::-webkit-scrollbar{display:none}
  .G .fr{flex:0 0 42%;scroll-snap-align:start}
  .G .shelf5{display:flex;overflow-x:auto;gap:12px;padding:2px 20px 14px;margin:0 -20px;scroll-snap-type:x mandatory;scrollbar-width:none}
  .G .shelf5::-webkit-scrollbar{display:none}
  .G .bk5{flex:0 0 58%;scroll-snap-align:start}
  .G .craft{grid-template-columns:1fr 1fr;gap:10px}
  .G .craft .lead{grid-column:span 2;padding:20px}
  .G .craft .lead h2{font-size:24px}
  .G .ticket .wrap{gap:16px}
  .G .tk{padding:22px}.G .tk .bal strong{font-size:52px}
  .G .way{grid-template-columns:auto 1fr;padding:12px}
  .G .way .pic{width:64px;height:64px}.G .way .pic img{height:70px}
  .G .way b{font-size:16px}.G .way p{font-size:12.5px}
  .G .way .amt{grid-column:2;justify-self:end;font-size:18px;margin-top:-4px}
  .G .insta .wrap{gap:22px}
  .G .reels{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .G .reel{border-radius:14px}.G .reel .cap{font-size:11px;left:8px;top:8px;padding:3px 8px}
  .G footer{padding-bottom:110px}
  .G .gb,.G .yb{min-height:44px}
  .G .fc:hover,.G .cat:hover,.G .cr:hover,.G .fr:hover,.G .bk5:hover{transform:none}
  html.js .rvs>*{transition-delay:0s!important}
}
@media (max-width:400px){
  .G .hero5 h1{font-size:32px}
  .G .cats{gap:8px}
  .G .fr{flex-basis:46%}
}
/* ===== 우아띵 마켓 ===== */
.G .market{background:#fff;border-block:1px solid var(--sand)}
.G .mk{display:grid;grid-template-columns:1.1fr repeat(4,1fr);gap:14px;align-items:stretch}
.G .mk .lead{background:var(--g8);color:#fff;border-radius:22px;padding:24px;display:grid;align-content:space-between;gap:14px;position:relative;overflow:hidden;box-shadow:var(--hl)}
.G .mk .lead::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(247,201,72,.22) 1.5px,transparent 1.5px);background-size:22px 22px;opacity:.6}
.G .mk .lead > *{position:relative}
.G .mk .lead h2{font-size:28px;line-height:1.15}
.G .mk .lead h2 em{font-style:normal;color:var(--y)}
.G .mk .lead p{color:#D6E3D8;font-size:14.5px;margin-top:8px}
.G .mk .lead .yb{width:max-content}
.G .pd{background:linear-gradient(180deg,#fff,#F7F3E8);border-radius:24px;padding:6px;box-shadow:0 0 0 1px var(--shell);display:block;transition:transform .6s var(--ease),box-shadow .6s var(--ease)}
.G .pd:hover{transform:translateY(-8px);box-shadow:0 0 0 1px rgba(20,107,69,.35),0 30px 60px -20px rgba(6,37,26,.35)}
.G .pd .shot{aspect-ratio:1;border-radius:18px;background:var(--sand);display:grid;place-items:center;overflow:hidden;position:relative}
.G .pd .frame{width:64%;aspect-ratio:3/4;background:#fff;padding:6%;box-shadow:0 14px 30px rgba(6,37,26,.18),inset 0 0 0 1px rgba(6,37,26,.08);display:grid;place-items:end center;overflow:hidden;position:relative}
.G .pd .frame::before{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 8px #FAF6EC;pointer-events:none}
.G .pd .frame img{height:88%;object-fit:contain;object-position:bottom}
.G .pd .frame.canvas{background:#E4EFE0;padding:0}
.G .pd .frame.canvas::before{box-shadow:inset 0 0 0 0}
.G .pd .frame.poster{width:70%;background:var(--g8);padding:4%}
.G .pd .frame.poster::before{box-shadow:none}
.G .pd .mobile{position:absolute;inset:0;display:grid;place-items:center}
.G .pd .mobile i{position:absolute;left:50%;top:0;width:2px;height:22%;background:#B7C9BC}
.G .pd .mobile span{position:absolute;top:22%;left:50%;transform:translateX(-50%);width:60%;height:2px;background:#B7C9BC}
.G .pd .mobile img{position:absolute;top:26%;height:38%;object-fit:contain}
.G .pd .mobile img:nth-of-type(1){left:14%;animation:sway 5s var(--ease) infinite}
.G .pd .mobile img:nth-of-type(2){left:40%;top:36%;animation:sway 6s var(--ease) infinite reverse}
.G .pd .mobile img:nth-of-type(3){left:64%;animation:sway 5.5s var(--ease) infinite}
@keyframes sway{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}
.G .pd .book{width:66%;aspect-ratio:1;background:#fff;border-radius:6px 14px 14px 6px;box-shadow:-6px 0 0 #E6DFCB,-12px 0 0 #D9D0B5,0 14px 30px rgba(6,37,26,.18);display:grid;place-items:end center;overflow:hidden;padding:8%}
.G .pd .book img{height:82%;object-fit:contain}
.G .pd b{display:block;font-family:"GmarketSans",sans-serif;font-weight:700;font-size:16px;margin:10px 8px 0}
.G .pd small{display:block;color:var(--mute);font-size:12.5px;margin:2px 8px 8px}
.G .pd .go{margin:0 8px 8px;display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--g7)}
.G .pd .go::after{content:"";width:6px;height:6px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;transform:rotate(45deg)}
@media (max-width:980px){.G .mk{grid-template-columns:1fr 1fr 1fr}.G .mk .lead{grid-column:span 3}}
@media (max-width:760px){.G .mk{grid-template-columns:1fr 1fr;gap:10px}.G .mk .lead{grid-column:span 2;padding:20px}.G .mk .lead h2{font-size:24px}.G .pd b{font-size:14.5px}}
.G .pd .shot img{width:100%;height:100%;object-fit:cover;border-radius:18px;transition:transform 1.2s var(--ease)}
.G .pd:hover .shot img{transform:scale(1.05)}
.G .prail{margin-top:28px}
.G .prail-h{display:flex;align-items:baseline;gap:12px;margin-bottom:14px}
.G .prail-h b{font-size:20px}
.G .prail-h span{font-size:13.5px;color:var(--mute)}
.G .pr{display:flex;gap:12px;overflow-x:auto;padding:4px 2px 14px;scroll-snap-type:x mandatory;scrollbar-width:thin}
.G .pr a{flex:0 0 150px;scroll-snap-align:start;background:linear-gradient(180deg,#fff,#F7F3E8);border-radius:18px;padding:5px;box-shadow:0 0 0 1px var(--shell);transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.G .pr a:hover{transform:translateY(-6px);box-shadow:0 0 0 1px rgba(20,107,69,.35),0 22px 40px -18px rgba(6,37,26,.35)}
.G .pr img{width:100%;aspect-ratio:210/297;object-fit:cover;object-position:top;border-radius:13px}
.G .pr span{display:block;text-align:center;font-size:12.5px;font-weight:600;padding:8px 4px 6px}
@media (max-width:760px){.G .pr a{flex-basis:118px}.G .prail-h{flex-direction:column;gap:2px}}
/* ===== 가로 레일: 스크롤바 숨김 + 더보기 신호 ===== */
.G .pr,.G .frow,.G .shelf5,.G .tabs,.G .tabs2,.G .seg3,.G .sub{scrollbar-width:none;-ms-overflow-style:none;cursor:grab}
.G .pr::-webkit-scrollbar,.G .frow::-webkit-scrollbar,.G .shelf5::-webkit-scrollbar,.G .tabs::-webkit-scrollbar,.G .sub::-webkit-scrollbar{display:none}
.G .rail-w{position:relative}
.G .rail-w .dragging{cursor:grabbing;scroll-snap-type:none}
.G .rail-w .dragging *{pointer-events:none}
.G .rfade{position:absolute;top:0;bottom:0;width:110px;pointer-events:none;z-index:2;transition:opacity .4s var(--ease);opacity:0}
.G .rfade.r{right:-20px;background:linear-gradient(90deg,transparent,var(--rbg) 75%)}
.G .rfade.l{left:-20px;background:linear-gradient(270deg,transparent,var(--rbg) 75%)}
.G .rfade.on{opacity:1}
.G .rcue{position:absolute;right:6px;top:50%;transform:translateY(-50%);z-index:3;width:52px;height:52px;border-radius:50%;border:0;background:var(--y);color:var(--ink);display:grid;place-items:center;box-shadow:0 12px 28px -8px rgba(6,37,26,.45),var(--hl);cursor:pointer;transition:opacity .4s var(--ease),transform .4s var(--ease)}
.G .rcue::before,.G .rcue::after{content:"";position:absolute;width:10px;height:10px;border-top:2.5px solid var(--ink);border-right:2.5px solid var(--ink);transform:rotate(45deg)}
.G .rcue::before{left:15px;animation:chev 1.4s var(--ease) infinite}
.G .rcue::after{left:25px;animation:chev 1.4s var(--ease) infinite .18s}
@keyframes chev{0%{opacity:.25;transform:translateX(-4px) rotate(45deg)}45%{opacity:1;transform:translateX(0) rotate(45deg)}100%{opacity:.25;transform:translateX(4px) rotate(45deg)}}
.G .rcue .ring{position:absolute;inset:-6px;border-radius:50%;border:2px solid var(--y);animation:ring 2s var(--ease) infinite}
@keyframes ring{0%{transform:scale(.8);opacity:.9}100%{transform:scale(1.35);opacity:0}}
.G .rcue.off{opacity:0;pointer-events:none;transform:translateY(-50%) scale(.6)}
.G .rcue.prev{right:auto;left:6px}
.G .rcue.prev::before,.G .rcue.prev::after{border:0;border-bottom:2.5px solid var(--ink);border-left:2.5px solid var(--ink)}
.G .rcue.prev::before{left:25px;animation-name:chevl}.G .rcue.prev::after{left:15px;animation-name:chevl}
@keyframes chevl{0%{opacity:.25;transform:translateX(4px) rotate(45deg)}45%{opacity:1;transform:translateX(0) rotate(45deg)}100%{opacity:.25;transform:translateX(-4px) rotate(45deg)}}
.G .rcue.prev .ring{display:none}
.G .rhint{position:absolute;right:66px;top:50%;transform:translateY(-50%);z-index:3;font-family:"GmarketSans",sans-serif;font-weight:700;font-size:12.5px;background:var(--ink);color:#fff;padding:7px 11px;border-radius:999px;white-space:nowrap;pointer-events:none;transition:opacity .4s var(--ease);box-shadow:0 8px 20px -8px rgba(0,0,0,.4)}
.G .rhint::after{content:"";position:absolute;right:-5px;top:50%;width:10px;height:10px;background:var(--ink);transform:translateY(-50%) rotate(45deg)}
.G .rhint.off{opacity:0}
.G .rdots{display:flex;justify-content:center;gap:6px;margin-top:6px}
.G .rdots i{width:6px;height:6px;border-radius:999px;background:rgba(6,37,26,.18);transition:width .4s var(--ease),background .3s}
.G .rail-w[data-dark] .rdots i{background:rgba(255,255,255,.25)}
.G .rdots i.on{width:22px;background:var(--g7)}
.G .rail-w[data-dark] .rdots i.on{background:var(--y)}
@media (max-width:760px){
  .G .rcue{width:44px;height:44px;right:2px}.G .rcue::before{left:12px}.G .rcue::after{left:21px}
  .G .rcue.prev{display:none}.G .rfade.l{display:none}
  .G .rfade{width:80px}.G .rfade.r{right:-20px}
  .G .rhint{right:54px;font-size:11.5px}
}
@media (prefers-reduced-motion:reduce){.G .rcue::before,.G .rcue::after,.G .rcue .ring{animation:none}}
/* ===== 소셜 로그인 4종 ===== */
.G .sbtn{display:inline-flex;align-items:center;gap:10px;padding-left:8px}
.G .sbtn .prov{display:flex}
.G .sbtn .prov i{width:22px;height:22px;border-radius:50%;border:2px solid var(--y);margin-right:-7px;display:grid;place-items:center;font:700 10px/1 "GmarketSans",sans-serif;box-shadow:0 1px 2px rgba(0,0,0,.15)}
.G .sbtn:hover .prov i{margin-right:-4px}
.G .sbtn .prov i{transition:margin .4s var(--ease)}
.G .p-kakao{background:#FEE500;color:#191919}.G .p-naver{background:#03C75A;color:#fff}.G .p-google{background:#fff;color:#4285F4}.G .p-apple{background:#111;color:#fff}
.G .mnav .sbtn .prov i{border-color:var(--y)}
.G .lm{position:fixed;inset:0;z-index:40;display:none;align-items:center;justify-content:center;padding:20px}
.G .lm.open{display:flex}
.G .lm .bg{position:absolute;inset:0;background:rgba(6,37,26,.55);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.G .lm .box{position:relative;width:min(420px,100%);background:linear-gradient(180deg,#fff,#F7F3E8);border-radius:32px;padding:8px;box-shadow:0 0 0 1px rgba(6,37,26,.08),0 40px 80px -30px rgba(0,0,0,.5);animation:pop .6s var(--ease) both}
@keyframes pop{from{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:none}}
.G .lm .in{background:#fff;border-radius:26px;padding:28px 24px 22px;box-shadow:var(--hl)}
.G .lm .x{position:absolute;right:18px;top:18px;width:36px;height:36px;border-radius:50%;border:0;background:var(--sand);font-size:18px;line-height:1}
.G .lm .who{display:flex;justify-content:center;margin:-70px 0 6px}
.G .lm .who img{height:120px}
.G .lm h3{font-size:24px;text-align:center;line-height:1.2}
.G .lm h3 em{font-style:normal;color:var(--g7)}
.G .lm p{text-align:center;color:var(--mute);font-size:13.5px;margin-top:8px}
.G .lm .list{display:grid;gap:10px;margin-top:20px}
.G .lm .so{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;height:52px;border-radius:14px;border:0;font-family:"Pretendard",sans-serif;font-weight:600;font-size:15px;padding:0 10px;transition:transform .35s var(--ease),box-shadow .35s var(--ease);opacity:0;transform:translateY(12px)}
.G .lm.open .so{opacity:1;transform:none;transition:opacity .5s var(--ease),transform .5s var(--ease)}
.G .lm.open .so:nth-child(1){transition-delay:.08s}.G .lm.open .so:nth-child(2){transition-delay:.14s}.G .lm.open .so:nth-child(3){transition-delay:.2s}.G .lm.open .so:nth-child(4){transition-delay:.26s}
.G .lm .so:hover{transform:translateY(-2px)!important;box-shadow:0 12px 24px -12px rgba(6,37,26,.4)}
.G .lm .so:active{transform:scale(.98)!important}
.G .lm .so i{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font:700 13px/1 "GmarketSans",sans-serif;justify-self:start}
.G .lm .so.kakao{background:#FEE500;color:#191919}.G .lm .so.kakao i{background:#191919;color:#FEE500}
.G .lm .so.naver{background:#03C75A;color:#fff}.G .lm .so.naver i{background:#fff;color:#03C75A}
.G .lm .so.google{background:#fff;color:#1F1F1F;box-shadow:0 0 0 1.5px #DADCE0 inset}.G .lm .so.google i{background:#fff;color:#4285F4;box-shadow:0 0 0 1.5px #DADCE0 inset}
.G .lm .so.apple{background:#111;color:#fff}.G .lm .so.apple i{background:#fff;color:#111}
.G .lm .fine{margin-top:16px;font-size:11.5px;color:var(--mute);text-align:center;line-height:1.6}
.G .lm .fine b{color:var(--g7);font-weight:600}
@media (max-width:760px){.G .sbtn{padding:9px 14px 9px 8px;font-size:14px}.G .sbtn .prov i{width:19px;height:19px;font-size:9px}.G .lm .who img{height:100px}}
/* 로고 심볼: 다띵이 "우아!" 표정, 글자와 세로 중앙 정렬 */
.G .logo{gap:8px;align-items:center}
.G .logo .sym{width:44px;height:44px;object-fit:contain;transform-origin:50% 60%;animation:peek 6s var(--ease) infinite}
@keyframes peek{0%,80%,100%{transform:rotate(0)}86%{transform:rotate(-10deg) translateY(-2px)}93%{transform:rotate(6deg)}}
.G .logo:hover .sym{animation:none;transform:rotate(-10deg) translateY(-2px) scale(1.08)}
.G .nav.on .logo .sym{width:38px;height:38px}
@media (max-width:760px){.G .logo{gap:6px}.G .logo .sym{width:38px;height:38px}}
@media (prefers-reduced-motion:reduce){.G .logo .sym{animation:none}}
.G .stage5{position:relative;height:500px}
.G .stage5 .p{position:absolute;width:240px;background:#fff;padding:6px;border-radius:12px;box-shadow:0 30px 60px -20px rgba(0,0,0,.55);transition:transform .8s var(--ease)}
.G .stage5 .p1{left:0;top:70px;transform:rotate(-9deg)}
.G .stage5 .p2{left:50%;top:20px;transform:translateX(-50%) rotate(2deg);z-index:2}
.G .stage5 .p3{right:0;top:80px;transform:rotate(9deg)}
.G .stage5:hover .p1{transform:rotate(-12deg) translateX(-10px)}
.G .stage5:hover .p3{transform:rotate(12deg) translateX(10px)}
.G .stage5 .k{position:absolute;left:50%;bottom:0;transform:translateX(-40%);width:200px;z-index:3;animation:bob 4s var(--ease) infinite}
.G .stage5 .floor{position:absolute;left:14%;right:14%;bottom:-2px;height:26px;border-radius:50%;background:rgba(0,0,0,.35);filter:blur(6px);z-index:1}
@media (max-width:760px){.G .stage5{height:300px;margin-top:6px}.G .stage5 .p{width:40%}.G .stage5 .p1{top:20px;left:2%}.G .stage5 .p2{top:0}.G .stage5 .p3{top:26px;right:2%}.G .stage5 .k{width:26%;left:auto;right:4%;transform:none}.G .stage5 .floor{left:auto;right:6%;width:22%}.G .hero5 .cta .gb.light{color:#fff;border-color:#fff}}
/* ===== 도안 목록 ===== */
.G .ph{background:var(--g8);color:#fff;position:relative;overflow:hidden}
.G .ph::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 90% 100%,rgba(20,107,69,.7),transparent 50%)}
.G .ph > .wrap{position:relative;display:flex;align-items:center;gap:22px;padding-top:22px;padding-bottom:14px}
.G .ph .mascot{height:84px;order:0;margin:-6px 0 -10px}
.G .ph .txt{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;flex:1;min-width:0}
.G .crumb{display:none}
.G .ph h1{font-size:clamp(26px,3vw,34px);line-height:1.1;display:flex;align-items:baseline;gap:10px}
.G .ph h1 small{font-family:"GmarketSans";font-weight:700;font-size:13px;color:var(--ink);background:var(--y);border-radius:999px;padding:4px 10px 3px;line-height:1}
.G .ph p{margin:0;color:#B7C9BC;font-size:14px;max-width:none}
.G .ph > .wrap.tabsw{display:block;padding-top:0;padding-bottom:0}
.G .tabsw{position:relative}
.G .rail-w{min-width:0;max-width:100%}
.G .rail-w[data-compact] .rcue{width:38px;height:38px;right:0;top:50%}
.G .rail-w[data-compact] .rcue::before{left:10px;width:8px;height:8px}.G .rail-w[data-compact] .rcue::after{left:18px;width:8px;height:8px}
.G .rail-w[data-compact] .rhint,.G .rail-w[data-compact] .rdots{display:none}
.G .rail-w[data-compact] .rfade{width:80px}
.G .sub-w{flex:1 1 auto;min-width:0}
.G .tabs{position:relative;display:flex;gap:6px;overflow-x:auto;padding:4px 0 18px;scrollbar-width:none;}
.G .tabs::-webkit-scrollbar{display:none}
.G .tabs a{flex:0 0 auto;display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;background:rgba(255,255,255,.08);color:#E8EFEA;font-size:14px;font-weight:600;white-space:nowrap;transition:background .3s,transform .4s var(--ease)}
.G .tabs a img{width:26px;height:26px;border-radius:50%;object-fit:cover}
.G .tabs a:hover{background:rgba(255,255,255,.16);transform:translateY(-2px)}
.G .tabs a.on{background:var(--y);color:var(--ink)}
.G .tabs a small{font-weight:500;opacity:.7;font-size:12px}
.G .tabs a.on small{opacity:.8}
.G .ph > .wrap.tabsw{display:block;padding-top:0;padding-bottom:0}
.G .tabsw{position:relative}
.G .rail-w{min-width:0;max-width:100%}


.G .bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:24px 0 18px}
.G .sub{display:flex;gap:6px;flex-wrap:wrap}
.G .sub a{font-size:13.5px;padding:7px 12px;border-radius:999px;background:transparent;font-weight:500;color:#4B5A52;transition:transform .3s var(--ease),background .2s}
.G .sub a:hover{transform:translateY(-2px)}
.G .sub a.on{background:#fff;color:var(--ink);box-shadow:0 0 0 1px rgba(6,37,26,.08),0 6px 16px -10px rgba(6,37,26,.3);font-weight:600}
.G .bar .sp{flex:1}
.G .seg{display:flex;background:#fff;border-radius:999px;padding:4px;box-shadow:0 0 0 1px var(--shell)}
.G .seg button{border:0;background:transparent;padding:7px 14px;border-radius:999px;font:600 13px "Pretendard";color:var(--mute)}
.G .seg button.on{background:var(--ink);color:#fff}
.G .sort{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--mute);background:#fff;border-radius:999px;padding:8px 14px;box-shadow:0 0 0 1px var(--shell)}
.G .sort b{color:var(--ink);font-weight:600}
.G .cnt-l{font-size:13.5px;color:var(--mute)}
.G .cnt-l b{color:var(--ink);font-family:"GmarketSans";font-size:15px}

.G .grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.G .wc{position:relative;background:linear-gradient(180deg,#fff,#F7F3E8);border-radius:22px;padding:6px;box-shadow:0 0 0 1px var(--shell);display:block;transition:transform .6s var(--ease),box-shadow .6s var(--ease)}
.G .wc:hover{transform:translateY(-8px);box-shadow:0 0 0 1px rgba(20,107,69,.35),0 30px 60px -20px rgba(6,37,26,.35)}
.G .wc .th{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:210/297;background:#fff}
.G .wc .th img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform 1.2s var(--ease)}
.G .wc:hover .th img{transform:scale(1.05)}
.G .wc .th .wm{position:absolute;inset:0;display:grid;place-items:center;font-family:"GmarketSans";font-weight:700;font-size:26px;color:rgba(6,37,26,.12);transform:rotate(-18deg);letter-spacing:.2em;pointer-events:none}
.G .wc .badge{position:absolute;left:12px;top:12px;font-family:"GmarketSans";font-weight:700;font-size:12px;background:#fff;color:var(--g8);border-radius:999px;padding:5px 10px;box-shadow:0 2px 8px rgba(6,37,26,.15)}
.G .wc .badge.h{background:var(--y);color:var(--ink)}
.G .wc .badge.h::before{content:"";display:inline-block;width:10px;height:10px;margin-right:4px;background:#E8B400;clip-path:path("M5 9 L1.2 5.2 A2.2 2.2 0 0 1 5 2.2 A2.2 2.2 0 0 1 8.8 5.2 Z");vertical-align:-1px}
.G .wc .like{position:absolute;right:12px;top:12px;width:34px;height:34px;border-radius:50%;background:#fff;border:0;display:grid;place-items:center;box-shadow:0 2px 8px rgba(6,37,26,.15);opacity:0;transition:opacity .3s,transform .3s var(--ease)}
.G .wc:hover .like{opacity:1}
.G .like i{width:14px;height:14px;background:#D9D0B5;clip-path:path("M7 13 L1.6 7.4 A3.2 3.2 0 0 1 7 3.2 A3.2 3.2 0 0 1 12.4 7.4 Z");transition:background .2s,transform .3s var(--ease)}
.G .like:hover i{background:#E0455B;transform:scale(1.15)}
.G .wc .t{padding:12px 8px 6px}
.G .wc .t b{display:block;font-family:"GmarketSans";font-weight:700;font-size:15px;line-height:1.3}
.G .wc .t small{display:block;color:var(--mute);font-size:12.5px;margin-top:3px}
.G .wc .dl{margin:8px 8px 8px;width:calc(100% - 16px);border:0;background:var(--g8);color:#fff;border-radius:12px;padding:10px;font-family:"GmarketSans";font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center;gap:8px;transition:background .3s,transform .3s var(--ease)}
.G .wc .dl:hover{background:var(--g7)}
.G .wc .dl:active{transform:scale(.98)}
.G .wc .dl.lock{background:var(--y);color:var(--ink)}
.G .more{display:flex;flex-direction:column;align-items:center;gap:10px;padding:40px 0 10px}
.G .more .prog{position:static;width:220px;height:4px;background:#E6DFCB;border-radius:999px;transform:none;overflow:hidden}
.G .more .prog i{display:block;height:100%;width:8%;background:var(--g7);border-radius:999px}
.G .more small{color:var(--mute);font-size:13px}
@media (max-width:980px){.G .grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){
  .G .ph > .wrap{gap:12px;padding-top:16px;padding-bottom:10px;align-items:center}.G .ph .mascot{height:64px;margin:-4px 0 -8px}.G .ph .txt{gap:4px 10px}
  .G .ph h1{font-size:24px;gap:8px}.G .ph h1 small{font-size:12px;padding:3px 8px 2px}.G .ph p{font-size:13px;width:100%}
  .G .tabs{padding:2px 0 14px}.G .tabs a{padding:7px 12px 7px 7px;font-size:13px}
  .G .bar{padding:16px 0 12px;gap:8px}.G .sub{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none;width:100%;padding-bottom:2px}.G .sub::-webkit-scrollbar{display:none}.G .sub a{flex:0 0 auto}
  .G .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .G .wc .like{opacity:1}.G .wc .t b{font-size:14px}.G .wc .dl{font-size:13px;padding:9px}
  .G .cnt-l{width:100%}
}
/* ===== 목록 헤드 v3: 크림 + 표지 타일 탭 ===== */
.G .ph2{background:var(--cream);border-bottom:1px solid var(--sand)}
.G .ph2 .hd{display:grid;grid-template-columns:1fr auto;align-items:center;gap:30px;padding:30px 0 6px}
.G .ph2 .crumb{font-size:13px;color:var(--mute);display:flex;gap:8px;margin-bottom:8px}
.G .ph2 .crumb b{color:var(--g7);font-weight:600}
.G .ph2 h1{font-size:clamp(30px,3.6vw,42px);line-height:1.1}
.G .ph2 h1 em{font-style:normal;font-family:"Pretendard";font-weight:600;font-size:15px;color:var(--g7);background:#E4EFE0;border-radius:999px;padding:5px 12px;vertical-align:middle;margin-left:6px}
.G .ph2 p{margin-top:10px;color:#3F4D45;font-size:15px;max-width:52ch}
.G .ph2 .fan{position:relative;width:200px;height:120px}
.G .ph2 .fan img{position:absolute;bottom:0;width:86px;aspect-ratio:210/297;object-fit:cover;object-position:top;border-radius:8px;background:#fff;padding:3px;box-shadow:0 12px 26px -10px rgba(6,37,26,.35),0 0 0 1px var(--shell)}
.G .ph2 .fan img:nth-child(1){left:0;transform:rotate(-10deg)}
.G .ph2 .fan img:nth-child(2){left:57px;transform:translateY(-8px);z-index:1}
.G .ph2 .fan img:nth-child(3){left:114px;transform:rotate(10deg)}
.G .tabs2{display:flex;gap:10px;overflow-x:auto;padding:16px 2px 22px;scrollbar-width:none;cursor:grab}
.G .tabs2::-webkit-scrollbar{display:none}
.G .tabs2 a{flex:0 0 118px;background:#fff;border-radius:16px;padding:6px 6px 10px;text-align:center;box-shadow:0 0 0 1px var(--shell);transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
.G .tabs2 a .im{display:block;border-radius:11px;overflow:hidden;aspect-ratio:4/3;background:var(--sand)}
.G .tabs2 a .im img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .8s var(--ease)}
.G .tabs2 a b{display:block;font-family:"GmarketSans";font-weight:700;font-size:13.5px;margin-top:8px;line-height:1.2}
.G .tabs2 a small{display:block;font-size:11.5px;color:var(--mute);margin-top:2px}
.G .tabs2 a:hover{transform:translateY(-4px);box-shadow:0 0 0 1px rgba(20,107,69,.35),0 18px 30px -16px rgba(6,37,26,.35)}
.G .tabs2 a:hover .im img{transform:scale(1.06)}
.G .tabs2 a.on{background:var(--g8);color:#fff;box-shadow:0 0 0 2px var(--y),0 14px 30px -14px rgba(6,37,26,.6)}
.G .tabs2 a.on small{color:#B7C9BC}
.G .tabs2 a.on .im{box-shadow:inset 0 0 0 2px var(--y)}
.G .rail-w[data-compact] .rcue{top:calc(50% - 4px)}
@media (max-width:760px){
  .G .ph2 .hd{grid-template-columns:1fr;gap:14px;padding:20px 0 4px}
  .G .ph2 .fan{display:none}
  .G .ph2 h1{font-size:28px}.G .ph2 p{font-size:14px}
  .G .tabs2{gap:8px;padding:12px 2px 16px}.G .tabs2 a{flex-basis:96px;padding:5px 5px 8px}.G .tabs2 a b{font-size:12.5px}
}
/* ===== 목록 헤드 v5: 초록무대 + Soft Structuralism ===== */
.G .ph3{background:var(--g8);color:#fff;position:relative;overflow:hidden}
.G .ph3::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 85% 30%,rgba(20,107,69,.7),transparent 55%);pointer-events:none}
.G .ph3 > .wrap{position:relative}
.G .ph3 .hd{padding:48px 0 34px;max-width:600px;min-height:250px}
.G .eyebrow3{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--y);font-weight:600}
.G .ph3 h1{font-size:clamp(38px,5.2vw,58px);line-height:1;letter-spacing:-.03em;margin-top:12px;color:#fff}
.G .lead3{margin-top:16px;font-size:16.5px;line-height:1.6;color:#D6E3D8;max-width:46ch}
.G .lead3 span{display:block;margin-top:8px;font-size:13.5px;color:#9DB8A8}
.G .seg3-w{padding-bottom:26px;position:relative;z-index:3}
.G .seg3{display:flex;gap:4px;overflow-x:auto;padding:5px;background:rgba(255,255,255,.08);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:999px;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 0 0 1px rgba(255,255,255,.08);scrollbar-width:none;cursor:grab;width:max-content;max-width:100%}
.G .seg3::-webkit-scrollbar{display:none}
.G .seg3 a{flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;padding:11px 18px;border-radius:999px;font-size:14.5px;font-weight:600;color:#E8EFEA;white-space:nowrap;transition:background .5s var(--ease),color .5s var(--ease),transform .5s var(--ease)}
.G .seg3 a small{font-size:12px;font-weight:500;color:#9DB8A8;font-variant-numeric:tabular-nums}
.G .seg3 a:hover{background:rgba(255,255,255,.1)}
.G .seg3 a.on{background:var(--y);color:var(--ink);box-shadow:0 10px 24px -12px rgba(0,0,0,.6),inset 0 1px 0 #FFE9A6}
.G .seg3 a.on small{color:#6B5A12}
.G .seg3 a:active{transform:scale(.97)}
.G .rail-w[data-compact] .rcue{top:50%}
.G .rail-w[data-compact] .rfade.r{right:-20px;border-radius:0 999px 999px 0}
@media (max-width:760px){.G .ph3 .hd{padding:28px 0 20px}.G .ph3 h1{font-size:36px}.G .lead3{font-size:15px}.G .seg3{width:100%}.G .seg3 a{padding:9px 14px;font-size:13.5px}.G .seg3-w{padding-bottom:18px}}
.G .stack3{position:absolute;right:0;top:26px;width:400px;height:200px;pointer-events:none}
.G .stack3 img{position:absolute;bottom:0;width:128px;aspect-ratio:210/297;object-fit:cover;object-position:top;background:#fff;padding:5px;border-radius:12px;box-shadow:0 30px 60px -20px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.15);transition:transform .8s var(--ease)}
.G .stack3 img:nth-child(1){left:0;transform:rotate(-12deg) translateY(18px);opacity:.75}
.G .stack3 img:nth-child(2){left:86px;transform:rotate(-4deg) translateY(4px);opacity:.9}
.G .stack3 img:nth-child(3){left:172px;transform:rotate(3deg) translateY(-6px);z-index:2}
.G .stack3 img:nth-child(4){left:258px;transform:rotate(11deg) translateY(14px);opacity:.85}
.G .ph3:hover .stack3 img:nth-child(1){transform:rotate(-14deg) translate(-8px,18px)}
.G .ph3:hover .stack3 img:nth-child(4){transform:rotate(13deg) translate(8px,14px)}
.G .ph3 .hd{position:relative;z-index:1}
@media (max-width:980px){.G .stack3{width:320px}.G .stack3 img{width:120px}.G .stack3 img:nth-child(2){left:70px}.G .stack3 img:nth-child(3){left:140px}.G .stack3 img:nth-child(4){left:210px}}
@media (max-width:760px){.G .ph3 > .wrap{display:flex;flex-direction:column}.G .ph3 .hd{min-height:0;padding:26px 0 0;order:1}.G .stack3{position:relative;order:2;top:auto;right:auto;width:auto;height:130px;margin:14px -20px 0;overflow:hidden}.G .seg3-w{order:3}.G .stack3 img{width:88px;bottom:-22px;opacity:1}.G .stack3 img:nth-child(1){left:4%}.G .stack3 img:nth-child(2){left:27%}.G .stack3 img:nth-child(3){left:50%}.G .stack3 img:nth-child(4){left:73%}.G .seg3-w{padding-top:14px;padding-bottom:16px}}
/* ===== polish pass 2 ===== */
.G .wc .t small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.G .wc .badge{box-shadow:0 2px 8px rgba(6,37,26,.15),var(--hl)}
.G .seg button{transition:background .3s,color .3s}
.G .sort{cursor:pointer}
.G .more .gb{background:#fff}
.G footer{padding-block:48px 40px}
.G footer .lic{max-width:46ch}
/* ===== 도안 상세 ===== */
.G .dt{background:var(--cream)}
.G .dt .crumb{font-size:13px;color:var(--mute);display:flex;gap:8px;padding:22px 0 18px}
.G .dt .crumb b{color:var(--g7);font-weight:600}
.G .dt .wrap2{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start;padding-bottom:70px}
.G .pv{position:sticky;top:90px}
.G .pv .frame{background:linear-gradient(180deg,#fff,#F7F3E8);border-radius:28px;padding:8px;box-shadow:0 0 0 1px var(--shell),0 40px 80px -40px rgba(6,37,26,.4)}
.G .pv .paper{position:relative;border-radius:22px;overflow:hidden;background:#fff;aspect-ratio:210/297}
.G .pv .paper img{width:100%;height:100%;object-fit:cover;object-position:top}
.G .pv .wm{position:absolute;inset:0;display:grid;place-items:center;font-family:"GmarketSans";font-weight:700;font-size:44px;color:rgba(6,37,26,.1);transform:rotate(-18deg);letter-spacing:.25em;pointer-events:none}
.G .pv .zoom{position:absolute;right:14px;bottom:14px;background:#fff;border:0;border-radius:999px;padding:8px 14px;font:600 12.5px "Pretendard";color:var(--ink);box-shadow:0 4px 14px rgba(6,37,26,.2)}
.G .pv .thumbs{display:flex;gap:10px;margin-top:14px}
.G .pv .thumbs img{width:64px;aspect-ratio:210/297;object-fit:cover;object-position:top;border-radius:10px;background:#fff;box-shadow:0 0 0 1px var(--shell);opacity:.6;cursor:pointer;transition:opacity .3s,transform .3s var(--ease)}
.G .pv .thumbs img.on,.G .pv .thumbs img:hover{opacity:1;transform:translateY(-3px)}
.G .info h1{font-size:clamp(28px,3.4vw,40px);line-height:1.15;letter-spacing:-.02em}
.G .info .tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.G .info .tags span{font-size:12.5px;padding:6px 12px;border-radius:999px;background:#fff;box-shadow:0 0 0 1px var(--shell);color:#3F4D45;font-weight:500}
.G .info .tags .free{background:var(--y);color:var(--ink);font-weight:700;box-shadow:none}
.G .info .tags .hh{background:var(--y);color:var(--ink);font-weight:700;box-shadow:none}
.G .dlbox{margin-top:22px;background:#fff;border-radius:24px;padding:20px;box-shadow:0 0 0 1px var(--shell),var(--hl)}
.G .dlbox .row{display:flex;gap:10px;flex-wrap:wrap}
.G .dlbox .yb{flex:1;justify-content:center;padding:15px 22px}
.G .dlbox .gb{flex:1;justify-content:center;padding:13px 20px}
.G .dlbox small{display:block;margin-top:12px;font-size:12.5px;color:var(--mute);line-height:1.6}
.G .dlbox .meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid var(--sand)}
.G .dlbox .meta div{font-size:12px;color:var(--mute)}
.G .dlbox .meta b{display:block;font-family:"GmarketSans";font-size:15px;color:var(--ink);margin-bottom:2px}
.G .desc{margin-top:28px;display:grid;gap:22px}
.G .desc h3{font-family:"GmarketSans";font-weight:700;font-size:17px;margin-bottom:8px;display:flex;align-items:center;gap:8px}
.G .desc h3::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--y)}
.G .desc p{font-size:15.5px;line-height:1.7;color:#2A3A33}
.G .desc ol{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.G .desc ol li{display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:start;font-size:15px;line-height:1.55;color:#2A3A33}
.G .desc ol li i{width:28px;height:28px;border-radius:50%;background:var(--g8);color:#fff;display:grid;place-items:center;font:700 13px "GmarketSans";font-style:normal}
.G .desc .prep{display:flex;gap:8px;flex-wrap:wrap}
.G .desc .prep span{font-size:13.5px;padding:8px 14px;border-radius:12px;background:#fff;box-shadow:0 0 0 1px var(--shell)}
.G .share{display:flex;gap:8px;margin-top:22px;align-items:center;font-size:13px;color:var(--mute)}
.G .rel{background:#fff;border-top:1px solid var(--sand)}
.G .rel .grid{grid-template-columns:repeat(5,1fr)}
@media (max-width:980px){.G .dt .wrap2{gap:28px}.G .rel .grid{grid-template-columns:repeat(3,minmax(0,1fr))}.G .dlbox .row{flex-direction:column}.G .dlbox .meta{grid-template-columns:repeat(3,auto);justify-content:space-between}}
@media (max-width:760px){.G .dt .wrap2{grid-template-columns:minmax(0,1fr);gap:26px}.G .pv{position:static}.G .dlbox .row{flex-direction:row}}
@media (max-width:760px){.G .dt .crumb{padding:14px 0 12px}.G .dt .wrap2{padding-bottom:40px}.G .pv .frame{padding:6px;border-radius:22px}.G .pv .paper{border-radius:16px}.G .pv .wm{font-size:30px}.G .info h1{font-size:26px}.G .dlbox{padding:16px;border-radius:20px}.G .dlbox .row{flex-direction:column}.G .dlbox .meta b{font-size:14px}.G .rel .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.G .dl .hi{display:inline-block;width:13px;height:13px;margin-right:6px;background:#C9342A;clip-path:path("M6.5 12 L1.5 7 A2.9 2.9 0 0 1 6.5 3 A2.9 2.9 0 0 1 11.5 7 Z");vertical-align:-1px}
.G .dl.again{background:#fff;color:var(--g8);box-shadow:inset 0 0 0 2px var(--g8)}
/* ===== 상세 v2: 카카오·평점·미리보기 상태·공유 아이콘 ===== */
.note .nb{border:0;background:rgba(255,255,255,.12);color:#fff;border-radius:999px;padding:2px 10px;margin:0 2px;font:600 11.5px "Pretendard";cursor:pointer}
.note .nb.on{background:#FFD25F;color:#1F1B18}
.G .kb{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;background:#FEE500;color:#191919;font:700 16px "GmarketSans";padding:13px 20px;transition:transform .35s var(--ease),filter .3s}
.G .kb:hover{filter:brightness(.96);transform:translateY(-1px)}
.G .kb:active{transform:scale(.98)}
.G .kb .ico-k{display:block;width:22px;height:22px;fill:#191919}
.G .dlbox .row{flex-wrap:nowrap}
.G .dlbox .yb{white-space:nowrap}
.G .stars{position:relative;display:inline-flex;gap:1px;margin-right:6px;vertical-align:-2px}
.G .stars svg{width:14px;height:14px;fill:#E6DFCB}
.G .rt .stars svg{fill:#F2B705}
.G .rt b{display:flex;align-items:center;gap:6px;white-space:nowrap}
.G .rt .stars{margin:0}
.G .single{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.G .single span{font-size:12.5px;color:#3F4D45;background:#fff;border-radius:999px;padding:7px 12px;box-shadow:0 0 0 1px var(--shell)}
.G .single .pg{background:var(--g8);color:#fff;box-shadow:none;font-weight:600}
.G .thumbs{align-items:center}
.G .thumbs .pgc{margin-left:auto;font-size:12.5px;font-weight:600;color:var(--mute);font-variant-numeric:tabular-nums}
.G .share{gap:10px}
.G .share > span{font-size:13px;color:var(--mute);margin-right:2px}
.G .si{position:relative;width:42px;height:42px;padding:0;line-height:0;border:0;border-radius:50%;background:#fff;box-shadow:0 0 0 1px var(--shell);display:grid;place-items:center;color:var(--ink);transition:transform .35s var(--ease),box-shadow .35s}
.G .si svg{display:block;width:19px;height:19px;margin:auto}
.G .si.k{background:#FEE500;box-shadow:none}.G .si.k svg{fill:#191919;width:21px;height:21px;transform:translate(0,1px)}
.G .si.ig{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285AEB 90%);color:#fff;box-shadow:none}
.G .si:hover{transform:translateY(-3px);box-shadow:0 10px 20px -10px rgba(6,37,26,.45)}
.G .si::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%,4px);background:var(--ink);color:#fff;font:600 11.5px "Pretendard";padding:5px 9px;border-radius:8px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s var(--ease)}
.G .si:hover::after{opacity:1;transform:translate(-50%,0)}
.G .rm{position:fixed;inset:0;z-index:40;display:none;align-items:center;justify-content:center;padding:20px}
.G .rm.open{display:flex}
.G .rm .bg{position:absolute;inset:0;background:rgba(6,37,26,.55);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.G .rm .box{position:relative;width:min(440px,100%);background:linear-gradient(180deg,#fff,#F7F3E8);border-radius:32px;padding:8px;box-shadow:0 40px 80px -30px rgba(0,0,0,.5);animation:pop .6s var(--ease) both}
.G .rm .in{background:#fff;border-radius:26px;padding:28px 24px 22px;text-align:center}
.G .rm .x{position:absolute;right:18px;top:18px;width:34px;height:34px;border-radius:50%;border:0;background:var(--sand);font-size:17px;line-height:1;color:var(--ink);padding:0}
.G .rm h3{font-size:24px;line-height:1.25}
.G .rm .k{font-size:13px;color:var(--mute);margin-top:6px}
.G .rm .prev{display:grid;grid-template-columns:104px 1fr;gap:16px;align-items:center;text-align:left;margin-top:20px;padding:12px;border-radius:20px;background:var(--cream)}
.G .rm .pimg{background:#fff;border-radius:12px;padding:4px;box-shadow:0 0 0 1px var(--shell),0 10px 22px -14px rgba(6,37,26,.4)}
.G .rm .pimg img{display:block;width:100%;aspect-ratio:210/297;object-fit:cover;object-position:top;border-radius:9px}
.G .rm .pk{display:inline-block;font-size:11.5px;font-weight:600;color:var(--g7);background:#E4EFE0;border-radius:999px;padding:3px 9px}
.G .rm .pt b{display:block;font-family:"GmarketSans";font-weight:700;font-size:18px;margin-top:8px;line-height:1.25}
.G .rm .pt small{display:block;font-size:12.5px;color:var(--mute);margin-top:4px}
.G .rate{display:flex;justify-content:center;gap:4px;margin-top:22px}
.G .rate button{border:0;background:transparent;padding:4px;cursor:pointer;line-height:0;transition:transform .3s var(--ease)}
.G .rate svg{width:40px;height:40px;fill:#EFEADB;stroke:#DCD3BA;stroke-width:1;transition:fill .2s,stroke .2s}
.G .rate button.on svg{fill:#F2B705;stroke:#E0A800}
.G .rate button:hover{transform:scale(1.1)}
.G .rate button.pop{animation:starpop .45s var(--ease)}
@keyframes starpop{40%{transform:scale(1.3) rotate(-8deg)}}
.G .rl{font-size:14px;color:var(--mute);margin-top:6px;min-height:21px;font-weight:600}
.G .rl.on{color:var(--ink)}
.G .rm .chips2{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:14px}
.G .rm .chips2 button{border:0;background:#fff;border-radius:999px;padding:8px 13px;font:500 13px "Pretendard";color:#3F4D45;box-shadow:inset 0 0 0 1.5px #E6DFCB;transition:background .25s,color .25s,box-shadow .25s}
.G .rm .chips2 button:hover{box-shadow:inset 0 0 0 1.5px var(--g7)}
.G .rm .chips2 button.on{background:#E4EFE0;color:var(--g8);box-shadow:inset 0 0 0 1.5px var(--g7);font-weight:600}
.G .rm .go{width:100%;justify-content:center;margin-top:20px;padding:15px}
.G .rm .go[disabled]{background:#EFEADB;color:#A9A08A;box-shadow:none;pointer-events:none}
.G .rm .go[disabled] .ar{background:rgba(0,0,0,.05)}
.G .rm .fine{display:block;margin-top:12px;font-size:11.5px;color:var(--mute);line-height:1.55}
@media (max-width:760px){.G .rm{padding:12px;align-items:flex-end}.G .rm .box{border-radius:28px}.G .rm .in{padding:24px 18px 18px}.G .rm h3{font-size:21px}.G .rm .prev{grid-template-columns:88px 1fr;gap:12px}.G .rm .pt b{font-size:16px}.G .rate svg{width:36px;height:36px}.G .rm .chips2 button{font-size:12.5px;padding:7px 11px}}
.G .toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:45;transform:translate(-50%,150%);background:var(--ink);color:#fff;font:600 14px "Pretendard";padding:12px 18px;border-radius:999px;box-shadow:0 20px 40px -16px rgba(0,0,0,.5);transition:transform .5s var(--ease);white-space:nowrap}
.G .toast.show{transform:translate(-50%,0)}
@media (max-width:760px){.G .dlbox .row{flex-direction:row;gap:8px}.G .dlbox .yb,.G .kb{padding:13px 12px;font-size:15px}.G .dlbox .yb .ar{display:none}.G .rate svg{width:34px;height:34px}.G .rm h3{font-size:21px}}
.G .share .si{padding:0;display:flex;align-items:center;justify-content:center}
.G .tags-w{margin-top:14px}
.G .info .tags{flex-wrap:nowrap;overflow-x:auto;margin-top:0;padding:2px 2px 4px;scrollbar-width:none;cursor:grab}
.G .info .tags::-webkit-scrollbar{display:none}
.G .info .tags span{flex:0 0 auto;white-space:nowrap}
.G .pv .paper{cursor:zoom-in}
.G .lbx{position:fixed;inset:0;z-index:50;display:none;align-items:center;justify-content:center;padding:24px 24px 60px}
.G .lbx.open{display:flex}
.G .lbx .bg{position:absolute;inset:0;background:rgba(6,20,14,.86);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.G .lbx .stage{position:relative;margin:0;height:min(88vh,1100px);aspect-ratio:210/297;max-width:100%;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 40px 80px -20px rgba(0,0,0,.6);animation:pop .5s var(--ease) both}
.G .lbx .stage img{width:100%;height:100%;object-fit:contain;display:block}
.G .lbx .stage .wm{position:absolute;inset:0;display:grid;place-items:center;font:700 60px "GmarketSans";color:rgba(6,37,26,.08);transform:rotate(-20deg);letter-spacing:.25em;pointer-events:none}
.G .lx{position:absolute;right:20px;top:20px;width:44px;height:44px;border:0;border-radius:50%;background:#fff;font-size:22px;line-height:1;padding:0;display:flex;align-items:center;justify-content:center;color:var(--ink)}
.G .lnav{position:absolute;top:50%;width:52px;height:52px;margin-top:-26px;border:0;border-radius:50%;background:var(--y);padding:0;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px -8px rgba(0,0,0,.5)}
.G .lnav::before{content:"";width:11px;height:11px;border-top:3px solid var(--ink);border-right:3px solid var(--ink);transform:rotate(45deg) translate(-2px,2px)}
.G .lnav.p{left:24px}.G .lnav.p::before{transform:rotate(-135deg) translate(-2px,2px)}
.G .lnav.n{right:24px}
.G .lcap{position:absolute;left:0;right:0;bottom:18px;text-align:center;color:#D6E3D8;font-size:13px}
@media (max-width:760px){.G .lbx{padding:12px 12px 56px}.G .lbx .stage{height:auto;width:100%}.G .lnav{width:44px;height:44px;margin-top:-22px}.G .lnav.p{left:8px}.G .lnav.n{right:8px}.G .lx{right:12px;top:12px}}
.G .dt .wrap2 > *{min-width:0}
.G .dt .wrap2{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
@media (max-width:760px){.G .dt .wrap2{grid-template-columns:minmax(0,1fr)}}
/* ===== header tablet ===== */
.G .nav .wrap{flex-wrap:nowrap}
.G .logo,.G .menu a,.G .hp,.G .nav .yb{white-space:nowrap;flex-shrink:0}
.G .menu{flex-shrink:1;min-width:0}
@media (max-width:1080px){
  .G .menu,.G .nav .hp,.G .nav .yb.sm{display:none}
  .G .ham{display:block}
  .G .nav .wrap{height:62px}
}
/* ===== 로그인 전·후 헤더 ===== */
.note .authsw{display:inline-flex;align-items:center;gap:3px;margin-right:2px}
.note .authsw button{border:0;background:rgba(255,255,255,.12);color:#fff;border-radius:999px;padding:2px 10px;font:600 11.5px "Pretendard";cursor:pointer}
body[data-auth="out"] .note .authsw [data-auth="out"],body[data-auth="in"] .note .authsw [data-auth="in"]{background:#FFD25F;color:#1F1B18}
.G .mebtn{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);border-radius:999px;padding:4px 14px 4px 4px;color:#fff;font:700 14px "GmarketSans";white-space:nowrap;flex-shrink:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);transition:background .3s}
.G .mebtn:hover{background:rgba(255,255,255,.18)}
.G .mebtn img{width:32px;height:32px;border-radius:50%;background:#FAF6EC;object-fit:contain;padding:2px}
.G .mebtn.mob{display:none;padding:3px;margin-left:auto}
.G .mebtn.mob img{width:34px;height:34px}
.G .mme{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.08);border-radius:18px;padding:12px;color:#fff}
.G .mme img{width:48px;height:48px;border-radius:50%;background:#FAF6EC;object-fit:contain;padding:3px}
.G .mme b{display:block;font:700 16px "GmarketSans"}
.G .mme small{font-size:13px;color:#B7C9BC}
body[data-auth="out"] .G .hp,body[data-auth="out"] .G .mebtn,body[data-auth="out"] .G .mme{display:none!important}
body[data-auth="in"] .G .sbtn{display:none!important}
@media (max-width:1080px){body[data-auth="in"] .G .mebtn.mob{display:inline-flex}.G .nav .mebtn:not(.mob){display:none}}
/* ===== 프로필 원 빛 돌기 ===== */
.G .avr{position:relative;display:inline-flex;border-radius:50%;flex-shrink:0}
.G .avr::after{content:"";position:absolute;inset:-3px;border-radius:50%;pointer-events:none;opacity:0;
  background:conic-gradient(from 0deg,transparent 0deg,transparent 250deg,rgba(247,201,72,.35) 290deg,#F7C948 335deg,#FFF6CC 352deg,transparent 360deg);
  -webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 calc(100% - 2.5px));mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 calc(100% - 2.5px))}
.G .avr.glow::after{animation:ringspin 1.5s cubic-bezier(.45,.05,.25,1) 1 both}
@keyframes ringspin{0%{opacity:0;transform:rotate(-90deg)}4%{opacity:1}94%{opacity:1}100%{opacity:0;transform:rotate(270deg)}}
.G .avr.glow{animation:avpop .7s var(--ease) 9.4s 1 both}
@keyframes avpop{40%{transform:scale(1.08)}}
.G .mebtn .avr img,.G .mme .avr img{display:block}
@media (prefers-reduced-motion:reduce){.G .avr.glow::after,.G .avr.glow{animation:none}}
/* btn optical center */
.G .yb,.G .gb{line-height:1.2}
.G .yb:has(.ar),.G .gb:has(.ar){padding-left:22px;padding-right:8px}
.G .yb .ar,.G .gb .ar{margin-right:0}
.G .yb.sm:has(.ar){padding-right:6px}
/* ring stronger */
.G .avr::after{inset:-4px;background:conic-gradient(from 0deg,transparent 0deg,transparent 200deg,rgba(247,201,72,.25) 250deg,#F7C948 320deg,#FFF6CC 350deg,transparent 360deg);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 3.5px),#000 calc(100% - 3px));mask:radial-gradient(farthest-side,transparent calc(100% - 3.5px),#000 calc(100% - 3px));filter:drop-shadow(0 0 3px rgba(247,201,72,.9))}
.G .avr.glow::after{animation:ringspin 10s cubic-bezier(.4,0,.3,1) 1 both}
.G .mebtn:hover .avr::after{animation:ringspin 10s cubic-bezier(.4,0,.3,1) 1 both}
/* gmarket optical vcenter: 글꼴이 줄 상자 안에서 약간 위로 뜨고, 노란 버튼은 아래 4px 단차 때문에 눈에 보이는 중심이 아래에 있음. 패딩 대신 투명 윗테두리로 보정해 개별 버튼 패딩 설정과 충돌하지 않게 함 */
.G .yb{border-top:4px solid transparent!important;border-bottom:0!important;background-clip:border-box}
.G .dl,.G .kb,.G .kb2,.G .wallet .acts button,.G .selall{border-top:2px solid transparent!important;border-bottom:0!important}

@media (max-width:760px){.G .wc .dl.again{padding-inline:8px;font-size:12.5px;gap:4px;letter-spacing:-.02em}.G .wc .dl.again .lb{gap:3px}.G .wc .dl.again .re{display:none}.G .wc .dl.again .cd{font-size:11px;padding:2px 5px;gap:2px;letter-spacing:0}.G .wc .dl.again .cd svg{display:none}}
/* 버튼 안 가운데 정렬: 화살표가 숨겨진 폭에서는 좌우 여백을 같게, 노란 버튼의 하트 아이콘 */
.G .yb .hi{display:inline-block;width:14px;height:14px;flex:0 0 14px;background:#C9342A;clip-path:path("M7 13 L1.6 7.4 A3.2 3.2 0 0 1 7 3.2 A3.2 3.2 0 0 1 12.4 7.4 Z");margin-right:-2px}
@media (max-width:760px){.G .dlbox .yb:has(.ar),.G .dlbox .yb{padding-left:12px!important;padding-right:12px!important;gap:6px}}
/* 버튼 테두리 이중 겹침 방지: 투명 윗테두리 보정 위에서 안쪽 그림자(inset)가 한 겹 더 보이던 문제 */
.G .yb{box-shadow:0 4px 0 #C99A26}
.G .yb:hover{box-shadow:0 6px 0 #C99A26}
.G .yb:active{box-shadow:0 2px 0 #C99A26}
.G .dl.again{box-shadow:none!important;border:2px solid var(--g8)!important;padding-top:10px;padding-bottom:8px}
.G .dl.again.soon{border-color:#E8B400!important}
@media (max-width:760px){.G .wc .dl.again{padding-top:9px;padding-bottom:7px}}
/* 하트 버튼 한 줄 고정: 문구는 "하트 N개"만 (세 자리까지) */
.G .dl,.G .yb,.G .wc .dl .lb{white-space:nowrap}
/* 프로필 캐릭터 원 통일: 원을 꽉 채우고 아래 그라데이션은 원 선 밖으로 */
.G .mebtn img,.G .mme img,.G .avr.mini img,.G .avr.big img,.G .avo .ci img{padding:0!important;object-fit:cover;border-radius:50%;background:#fff;display:block}
.G .avr.big img{width:84px;height:84px}
.G .avo .ci{overflow:hidden}
.G .avo .ci img{width:100%;height:100%}

.G .mnav a.mme{display:flex;align-items:center;gap:12px;font-size:inherit;border-bottom:0;padding:12px}
.G .mnav a.mme .avr img{width:48px;height:48px}
@media (max-width:760px){.G .avr.big img{width:64px;height:64px}.G .avo .ci img{width:100%;height:100%}}
.G .lm .fine a{text-decoration:underline;text-underline-offset:2px;color:inherit}
/* ===== 약관 · 개인정보처리방침 (lg-) ===== */
.G .lg-wrap{max-width:1040px;margin:0 auto;padding:12px 0 70px}
.G .lg{display:grid;grid-template-columns:230px minmax(0,1fr);gap:44px;align-items:start;margin-top:26px}
.G .lg-toc{position:sticky;top:92px}
.G .lg-toc summary{display:none}
.G .lg-toc b{display:block;font:700 13px "GmarketSans";color:var(--mute);letter-spacing:.04em;margin:0 0 10px 12px}
.G .lg-toc ol{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.G .lg-toc a{display:block;padding:8px 12px;border-radius:12px;font-size:13.5px;line-height:1.4;color:#2A3A33;border-left:2px solid transparent;transition:background .25s,color .25s}
.G .lg-toc a:hover{background:#fff}
.G .lg-toc a.on{background:#fff;color:var(--g7);font-weight:700;box-shadow:0 0 0 1px var(--shell)}
.G .lg-main{min-width:0}
.G .lg-hd{padding:6px 0 22px;border-bottom:1px solid var(--sand);max-width:820px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.G .lg-hd .lg-ch{flex:0 0 auto;width:132px;height:132px;object-fit:contain;object-position:bottom;margin-bottom:-22px;filter:drop-shadow(0 10px 14px rgba(6,37,26,.14))}
.G .lg-hd .eyebrow3{margin-bottom:6px}
.G .lg-hd h1{font-size:clamp(26px,3.2vw,36px);line-height:1.25;letter-spacing:-.02em}
.G .lg-hd .meta2{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13px;color:var(--mute);margin-top:12px}
.G .lg-sum{background:#F1F7F2;border-radius:18px;padding:18px 20px;margin:22px 0 0;max-width:820px;box-shadow:inset 0 0 0 1.5px rgba(20,107,69,.2)}
.G .lg-sum b{display:block;font:700 14px "GmarketSans";color:var(--g7);margin-bottom:8px}
.G .lg-sum ul{margin:0;padding-left:18px;font-size:15px;line-height:1.75;color:#2A3A33}
.G .lg-sum li+li{margin-top:3px}
.G .lg-body{font-size:15.5px;line-height:1.85;color:#2A3A33;word-break:keep-all}
.G .lg-body h2{font:700 19px "GmarketSans";color:var(--ink);margin:38px 0 10px;padding-top:30px;border-top:1px solid var(--sand);scroll-margin-top:96px;letter-spacing:-.01em}
.G .lg-body h2:first-of-type{border-top:0;padding-top:8px}
.G .lg-body h3{font:700 15.5px "GmarketSans";color:var(--ink);margin:18px 0 6px}
.G .lg-body p+p{margin-top:10px}
.G .lg-body ol,.G .lg-body ul{margin:8px 0 0;padding-left:22px}
.G .lg-body li+li{margin-top:5px}
.G .lg-body ol>li::marker{font-weight:700;color:var(--g7)}
.G .lg-body table{width:100%;border-collapse:collapse;margin:14px 0 6px;font-size:14px;line-height:1.6;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 0 0 1px var(--shell)}
.G .lg-body th,.G .lg-body td{padding:11px 13px;text-align:left;vertical-align:top;border-bottom:1px solid #F1EBDB;overflow-wrap:anywhere}
.G .lg-body table.kv th{white-space:normal;width:34%;background:#F5F1E4}
.G .lg-body th{background:#F5F1E4;font:700 13px "GmarketSans";color:var(--ink);white-space:nowrap}
.G .lg-body tr:last-child td{border-bottom:0}
.G .lg-body .lg-note{font-size:13.5px;color:var(--mute);margin-top:8px}
.G .lg-tag{display:inline-block;font:700 11.5px "GmarketSans";color:#B08000;background:#FFF6D6;border-radius:999px;padding:4px 9px 3px;vertical-align:2px;margin-left:4px;white-space:nowrap}
.G .lg-co{margin-top:34px;background:#fff;border-radius:18px;padding:18px 20px;box-shadow:0 0 0 1px var(--shell);font-size:14px;line-height:1.8;color:#2A3A33}
.G .lg-co b{display:block;font:700 14px "GmarketSans";color:var(--g7);margin-bottom:6px}
.G .lg-x{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.G .lg-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 20px;border-radius:999px;border:2px solid var(--ink);background:transparent;color:var(--ink);font:700 15px/1 "GmarketSans";white-space:nowrap;transition:background .3s,color .3s,transform .3s var(--ease)}
.G .lg-btn span{display:inline-block;transform:translateY(2px)}
.G .lg-btn:hover{background:var(--ink);color:var(--y);transform:translateY(-2px)}
.G .lg-btn.y{border-color:var(--y);background:var(--y);color:var(--ink);box-shadow:0 4px 0 #C99A26}
.G .lg-btn.y:hover{background:var(--y);color:var(--ink)}
@media (max-width:900px){
 .G .lg-wrap{padding:8px 0 50px}
 .G .lg{grid-template-columns:1fr;gap:16px;margin-top:18px}
 .G .lg-toc{position:static;background:#fff;border-radius:16px;box-shadow:0 0 0 1px var(--shell);padding:0 14px}
 .G .lg-toc summary{display:block;list-style:none;cursor:pointer;padding:14px 26px 14px 0;font:700 15px "GmarketSans";color:var(--ink);position:relative}
 .G .lg-toc summary::-webkit-details-marker{display:none}
 .G .lg-toc summary::after{content:"";position:absolute;right:4px;top:50%;width:8px;height:8px;border-right:2px solid var(--g7);border-bottom:2px solid var(--g7);transform:translateY(-70%) rotate(45deg);transition:transform .3s var(--ease)}
 .G .lg-toc[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
 .G .lg-toc b{display:none}
 .G .lg-toc ol{padding:0 0 12px}
 .G .lg-toc a.on{background:#F1F7F2;box-shadow:none}
 .G .lg-body{font-size:15px}
 .G .lg-hd{align-items:flex-end;gap:10px}
 .G .lg-hd .lg-ch{width:84px;height:84px;margin-bottom:-14px}
 .G .lg-hd h1{font-size:24px}
 .G .lg-body h2{font-size:17.5px;margin-top:30px;padding-top:24px;scroll-margin-top:84px}
 .G .lg-body table{font-size:13px}
 .G .lg-body th,.G .lg-body td{padding:9px 10px}
 .G .lg-body td:first-child{min-width:88px}
 .G .lg-x{flex-direction:column}
 .G .lg-btn{width:100%}
}


/* ===== 공통 푸터 (컴팩트) ===== */
.G footer.ft{background:var(--g9);color:#B7C9BC;font-size:13px;padding:0;margin-top:32px;border-radius:28px 28px 0 0}
.G footer.ft .wrap{display:block}
.G .ft-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:26px 0 18px}
.G .ft-logo{display:inline-flex;align-items:center;gap:8px;font:700 20px "GmarketSans";color:#fff}
.G .ft-logo img{width:34px;height:34px;object-fit:contain}
.G .ft-cta{display:flex;align-items:center;gap:8px}
.G .ft-kakao{display:inline-flex;align-items:center;gap:7px;background:#FEE500;color:#191919;border-radius:999px;padding:9px 16px 9px 12px;font:700 13.5px "GmarketSans";border-top:2px solid transparent;white-space:nowrap;transition:transform .3s var(--ease),box-shadow .3s}
.G .ft-kakao svg{width:18px;height:18px;fill:#191919;display:block}
.G .ft-kakao:hover{transform:translateY(-2px);box-shadow:0 10px 24px -12px rgba(254,229,0,.6)}
.G .ft-ic{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;display:inline-flex;align-items:center;justify-content:center;transition:background .3s,transform .3s var(--ease)}
.G .ft-ic svg{width:18px;height:18px;display:block}
.G .ft-ic:hover{background:rgba(255,255,255,.18);transform:translateY(-2px)}
.G .ft-bot{border-top:1px solid rgba(255,255,255,.1);padding:14px 0 22px;display:flex;justify-content:space-between;align-items:center;gap:16px}
.G .ft-co{color:#8FA697;font-size:12.5px;line-height:1.6}
.G .ft-links{display:flex;gap:16px;white-space:nowrap}
.G .ft-links a{color:#C9D9CD;font-size:12.5px;font-weight:600}
.G .ft-links a:hover{color:var(--y)}
@media (max-width:760px){
 .G footer.ft{border-radius:22px 22px 0 0;margin-top:20px}
 .G .ft-row{flex-direction:column;align-items:flex-start;gap:14px;padding:22px 0 16px}
 .G .ft-cta{width:100%}
 .G .ft-kakao{flex:1;justify-content:center}
 .G .ft-bot{flex-direction:column;align-items:flex-start;gap:10px;padding:14px 0 110px}
}


/* ===== 워드마크 ===== */
.G .logo .wm{display:block;height:24px;width:auto;color:#FAF6EC;flex:none}
.G .ft-logo .wm{display:block;height:22px;width:auto;color:#FAF6EC}
@media (max-width:640px){.G .logo .wm{height:20px}}

/* FAQ (GEO: 보이는 본문) */
.G .faq-s{padding:56px 0 30px}
.G .faqs{display:grid;gap:8px;max-width:860px}
.G .fq{background:#fff;border-radius:16px;box-shadow:0 0 0 1px var(--shell);padding:0 18px}
.G .fq summary{cursor:pointer;list-style:none;padding:15px 30px 15px 0;font:700 15.5px "GmarketSans";color:var(--ink);position:relative}
.G .fq summary::-webkit-details-marker{display:none}
.G .fq summary::after{content:"";position:absolute;right:4px;top:50%;width:8px;height:8px;border-right:2px solid var(--g7);border-bottom:2px solid var(--g7);transform:translateY(-70%) rotate(45deg);transition:transform .3s var(--ease)}
.G .fq[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.G .fq p{padding:0 0 16px;font-size:14.5px;line-height:1.75;color:#2A3A33}
@media (max-width:760px){.G .faq-s{padding:36px 0 10px}.G .fq summary{font-size:14.5px;padding:13px 26px 13px 0}}

/* ===== 우아띵프렌즈 모바일 놀이 공통 틀 (2026-10-15 · v2.1): 약관 화면 틀(terms.css) 위에 더한다. 모든 선택자는 .kd 아래.
   세로 375×812 기준 · 엄지 조작 · 터치 64px · 5~8세. 투명 캐릭터 그림이 든 요소에는 filter·backdrop-filter 를 쓰지 않는다 ===== */
.G .nav{position:relative}
.G .kd-sec .wrap{max-width:560px;padding-left:0;padding-right:0}
.G .kd-sec .crumb{padding:10px 16px 6px}
.kd{--kd-y:#F7C948;--kd-yd:#C99A26;--kd-ys:#FBEFC2;--kd-g8:#0B4A32;--kd-g7:#146B45;--kd-g9:#08301F;--kd-gs:#DCEBD9;--kd-sky:#E4EFE0;--kd-cream:#FAF6EC;--kd-sand:#F1EBDB;--kd-line:#E6DFCB;--kd-mute:#5F6E64;--kd-ink:#06251A;--kd-red:#D9643A;--kd-blue:#2F6FB5;--kd-shell:rgba(6,37,26,.08);--kd-spring:cubic-bezier(.32,.72,0,1);
  position:relative;display:flex;flex-direction:column;height:calc(100dvh - 130px);min-height:560px;max-height:900px;margin:0 auto 10px;background:var(--kd-cream);border-radius:22px;box-shadow:0 0 0 1px var(--kd-shell);overflow:hidden;font-size:19px;line-height:1.45;color:var(--kd-ink);word-break:keep-all;font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}
.kd *{box-sizing:border-box}
.kd h2,.kd h3{font-family:"GmarketSans",Pretendard,sans-serif;letter-spacing:-.01em;margin:0}
.kd h2{font-size:26px;line-height:1.25;margin:6px 0 8px}
.kd h3{font-size:16px;color:var(--kd-g7);margin:16px 0 6px}
.kd h3 small{display:block;font:400 13px/1.4 Pretendard,sans-serif;color:var(--kd-mute);margin-top:2px}
.kd p{margin:0 0 8px}
.kd img{display:block}
.kd button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation}
/* 상단 막대 */
.kd-top{flex:0 0 56px;display:flex;align-items:center;gap:8px;padding:0 8px;background:var(--kd-g8);color:var(--kd-cream)}
.kd-top .kd-title{flex:1;text-align:center;font-family:"GmarketSans",Pretendard,sans-serif;font-size:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kd-top .kd-today{font-size:13px;color:var(--kd-ys);white-space:nowrap}
.kd-top .kd-back,.kd-top .kd-mute{min-width:64px;height:44px;border:0;border-radius:999px;background:rgba(255,255,255,.14);color:var(--kd-cream);font-size:15px;font-weight:600;padding:0 14px}
.kd-top .kd-mute.off{background:rgba(0,0,0,.28);color:#C9D6CD;text-decoration:line-through}
/* 무대 */
.kd-stage{flex:1 1 auto;position:relative;min-height:0;display:flex;flex-direction:column}
/* 덮개 카드 */
.kd-overlay{position:absolute;inset:56px 0 0;display:none;align-items:flex-start;justify-content:center;background:rgba(6,37,26,.32);overflow:auto;padding:12px;z-index:5;-webkit-overflow-scrolling:touch}
.kd-card{width:100%;max-width:420px;margin:auto;background:#fff;border-radius:22px;padding:20px 18px 18px;box-shadow:0 18px 40px -20px rgba(6,37,26,.5);text-align:center}
.kd-card .kd-pose{width:120px;height:120px;object-fit:contain;margin:0 auto 4px}
.kd-card .kd-av{width:72px;height:72px;object-fit:contain;margin:0 auto 4px}
.kd-card .kd-sub{color:var(--kd-mute);font-size:16px}
.kd-card .kd-bed{background:var(--kd-ys);border-radius:12px;padding:8px 12px;font-weight:600}
.kd-card .kd-last{background:var(--kd-sky);border-radius:12px;padding:8px 12px;font-size:15px;margin:8px 0}
.kd-card .kd-hint{font-size:12px;color:var(--kd-mute);margin:12px 0 0}
.kd-card .kd-small{font-size:14px;color:var(--kd-mute);text-align:left;line-height:1.6}
/* 단추 */
.kd-btn{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-height:56px;min-width:64px;padding:8px 18px;border:0;border-radius:16px;background:var(--kd-g7);color:#fff;font-weight:700;font-size:18px;line-height:1.2;text-decoration:none;box-shadow:0 4px 0 var(--kd-g9);transition:transform .12s var(--kd-spring)}
.kd .kd-btn{color:#fff}   /* 2026-10-17: 위 .kd button 의 color:inherit 가 이 단추 글자를 짙은 초록으로 덮던 것(초록 바탕에 대비 2.4:1)을 흰색으로. .soft 는 아래에서 다시 짙은 글자 */
.kd-btn:active{transform:translateY(3px);box-shadow:0 1px 0 var(--kd-g9)}
.kd-btn.soft{background:var(--kd-sand);color:var(--kd-ink);box-shadow:0 4px 0 var(--kd-line)}
.kd-btn.soft:active{box-shadow:0 1px 0 var(--kd-line)}
.kd-btn.big{min-height:72px;flex:1;font-size:20px}
.kd-btn.sm{min-height:48px;font-size:15px;padding:6px 14px;border-radius:12px}
.kd-btn small{font-weight:500;font-size:12px;opacity:.85;margin-top:2px}
.kd-btn[disabled]{opacity:.45;cursor:default;transform:none}
.kd-btn img{width:28px;height:28px;object-fit:contain;margin-bottom:2px}
.kd-modes{display:flex;gap:8px;margin:10px 0 12px}
.kd-acts{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:14px}
.kd-acts .kd-btn{flex:1 1 40%}
.kd-opts{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}
.kd-opts .kd-btn[aria-pressed="true"]{outline:3px solid var(--kd-y);outline-offset:1px}
.kd-keep{display:block;text-align:left;background:var(--kd-sand);border-radius:14px;padding:10px 12px;font-size:15px;line-height:1.4;margin:10px 0 0;cursor:pointer}
.kd-keep input{width:22px;height:22px;vertical-align:-5px;margin:0 6px 0 0;accent-color:var(--kd-g7)}
.kd-keep small{display:block;font-size:12px;color:var(--kd-mute);margin:4px 0 0 28px}
/* 주간 스티커판 */
.kd-week{display:flex;gap:4px;justify-content:center;margin:10px 0 2px}
.kd-day{width:42px;height:42px;border-radius:12px;background:var(--kd-sand);display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--kd-mute);font-style:normal}
.kd-day i{font-style:normal}
.kd-day.today{outline:2px solid var(--kd-y)}
.kd-day.on{background:var(--kd-ys)}
.kd-day img{width:34px;height:34px;object-fit:contain}
/* 완료 도장 */
.kd-stamp{display:inline-flex;align-items:center;gap:8px;margin:6px auto 0;padding:8px 16px;border:3px solid var(--kd-red);color:var(--kd-red);border-radius:999px;font-weight:800;font-size:17px;transform:rotate(-4deg);animation:kd-stamp .5s var(--kd-spring) both}
.kd-stamp i{width:14px;height:14px;border-radius:50%;background:var(--kd-red)}
@keyframes kd-stamp{from{transform:rotate(-4deg) scale(1.8);opacity:0}to{transform:rotate(-4deg) scale(1);opacity:1}}
/* 눈 체조 */
.kd-steps{text-align:left;padding-left:22px;margin:6px 0;font-size:16px}
.kd-count{font:800 48px/1 "GmarketSans",Pretendard,sans-serif;color:var(--kd-g7);margin:10px 0}
/* 보호자 확인 */
.kd-gate label{display:block;font-size:24px;font-weight:700;margin:10px 0}
.kd-gate input{width:92px;height:52px;border:2px solid var(--kd-line);border-radius:12px;font:inherit;font-size:24px;text-align:center;margin-left:6px}
.kd-err{min-height:22px;color:var(--kd-red);font-size:14px;margin:4px 0 0}
/* 알림 */
.kd-toast{position:absolute;left:50%;bottom:16px;transform:translate(-50%,20px);background:var(--kd-g9);color:var(--kd-cream);padding:10px 18px;border-radius:999px;font-size:16px;font-weight:600;opacity:0;pointer-events:none;transition:.25s var(--kd-spring);z-index:6;white-space:nowrap}
.kd-toast.on{opacity:1;transform:translate(-50%,0)}
/* 작은 화면: 사이트 머리글·푸터 자리 줄이기 */
@media (max-width:700px){
  .G .kd-sec .crumb{display:none}
  .kd{height:calc(100dvh - 62px - 54px);max-height:none;border-radius:0;margin:0}   /* 머리글 62 + 놀이 고르기 띠 54 */
}
@media (max-width:700px) and (max-height:620px){.kd{min-height:0}}
@media (min-width:701px){.kd{margin-top:14px}}
@media (prefers-reduced-motion:reduce){.kd *{animation-duration:.01s!important;transition-duration:.01s!important}}
/* 페이지 아래 설명 글(검색용 h1 1개) */
.G .kd-about{padding:18px 16px 8px;color:var(--mute,#5F6E64);font-size:14px;line-height:1.7;word-break:keep-all}
.G .kd-about h1{font:700 17px/1.4 "GmarketSans",Pretendard,sans-serif;color:var(--g8,#0B4A32);margin:0 0 8px}
.G .kd-about p{margin:0}

/* ===== 단순 교육 놀이 공통 틀 play-quiz-common (2026-10-17 · 18 문서 0장) — 공통 틀(kids-common.css) 위에 더한다. 모든 선택자는 .kd.pq 아래.
   어디 숨었띵?(game-hide.css)의 안내 줄 · 아래 줄 · 단추 · 끝 화면 · 보호자 칸 모양을 그대로 옮겼다. 투명 캐릭터 그림에는 filter 를 쓰지 않는다 ===== */
.kd.pq{--pq-sky:#D4EEE8;--pq-grass:#A9D687;--pq-cream:#FAF6EC;--pq-paper:#FFFDF5;--pq-y:#F7C948;--pq-yd:#C99A26;--pq-ys:#FFF6D6;--pq-g8:#0B4A32;--pq-g7:#146B45;--pq-mint:#E4EFE0;--pq-mintd:#B7C9BC;--pq-line:#E6DFCB;--pq-mute:#5F6E64;--pq-ink:#06251A}
.pq .kd-stage{background:var(--pq-cream)}
.kd.pq .kd-toast{bottom:auto;top:150px}
.pq .pq-scr{position:absolute;inset:0;display:flex;flex-direction:column}
/* 위 안내 줄 */
.pq-prompt{flex:0 0 auto;display:flex;align-items:center;gap:12px;min-height:84px;padding:8px 12px 8px 14px;border-bottom:1px solid var(--pq-line);background:var(--pq-cream)}
.pq-face{position:relative;width:64px;height:64px;flex:none;border-radius:50%;background:var(--pq-ys);box-shadow:inset 0 0 0 3px var(--pq-y);display:flex;align-items:center;justify-content:center}
.pq-face img{width:58px;height:58px;object-fit:contain}
.pq-face.q{background:#fff;box-shadow:inset 0 0 0 3px var(--pq-y)}
.pq-face.q b{font:700 34px/1 "GmarketSans",Pretendard,sans-serif;color:var(--pq-g8)}
.pq-face.none{display:none}
.pq-ptx{flex:1;min-width:0}
.pq-ask{display:block;font:700 22px/1.25 "GmarketSans",Pretendard,sans-serif;letter-spacing:-.02em;color:var(--pq-g8);word-break:keep-all}
.pq-q{display:inline-flex;align-items:center;justify-content:center;min-width:52px;height:32px;margin-left:8px;padding:0 10px;border:3px dashed var(--pq-y);border-radius:999px;background:var(--pq-ys);vertical-align:middle;animation:pq-pulse 1s ease-in-out infinite}
.pq-sub{display:block;margin-top:3px;font-size:14px;font-weight:700;color:var(--pq-mute);min-height:1.2em}
.pq-dots{display:flex;gap:5px;margin-top:6px;align-items:center;min-height:16px}
.pq-dots i{width:16px;height:6px;border-radius:3px;background:var(--pq-line);flex:none}
.pq-dots i.on{width:22px;background:var(--pq-y)}
.pq-dots i.r{width:16px;height:16px;border-radius:0;background:none}
.pq-dots i.r svg,.pq-dots i.r img{width:16px;height:16px;display:block}
.pq-dots i.n{width:16px;height:6px;border-radius:3px;background:var(--pq-g7)}
.pq-dots .pq-sn{flex:none;margin-right:3px;font-size:12px;font-weight:800;color:var(--pq-g7);font-variant-numeric:tabular-nums}
.pq .fr-clk{margin-left:auto}
.pq-re{flex:none;width:48px;height:48px;border:0;border-radius:50%;background:var(--pq-mint);display:flex;align-items:center;justify-content:center;padding:0}
.pq-re svg{width:24px;height:24px}
/* 장면 자리(놀이마다 안을 채운다) */
.pq-view{flex:1 1 auto;position:relative;min-height:0;overflow:hidden;background:linear-gradient(var(--pq-sky) 58%,var(--pq-grass) 58%);touch-action:manipulation}
/* 아래 줄 */
.pq-tray{flex:0 0 auto;padding:10px 14px 12px;border-top:1px solid var(--pq-line);background:var(--pq-cream);min-height:112px}
.pq-tl{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px;font-weight:700;color:var(--pq-mute);margin-bottom:6px;min-height:18px}
.pq-tl svg{width:16px;height:16px;vertical-align:-3px;margin-right:4px}
/* 말풍선(장면 안). 장면이 커지면 --s 로 나눠 글자 크기를 그대로 */
.pq-bub{position:absolute;left:50%;bottom:100%;transform:translate(-50%,-4px);background:#fff;border-radius:14px;padding:.38em .75em;font:800 calc(13px / var(--s,1))/1.25 Pretendard,sans-serif;color:var(--pq-ink);white-space:nowrap;box-shadow:0 3px 0 rgba(6,37,26,.14);animation:pq-in .25s var(--kd-spring) both;z-index:3;pointer-events:none}
.pq-bub::after{content:"";position:absolute;left:50%;bottom:-6px;margin-left:-6px;border:6px solid transparent;border-bottom:0;border-top-color:#fff}
/* 단추 */
.pq-btn{flex:1;min-height:58px;border:0;border-radius:20px;background:var(--pq-y);box-shadow:0 5px 0 var(--pq-yd);color:var(--pq-g8);font:700 19px/1.15 "GmarketSans",Pretendard,sans-serif;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:6px 14px;text-decoration:none;transition:transform .1s}
.kd .pq-btn{color:var(--pq-g8)}
.pq-btn:active{transform:translateY(3px);box-shadow:0 2px 0 var(--pq-yd)}
.kd .pq-btn.g{background:var(--pq-g7);box-shadow:0 5px 0 var(--pq-g8);color:var(--pq-cream)}
.pq-btn.g:active{box-shadow:0 2px 0 var(--pq-g8)}
.pq-btn.m{background:var(--pq-mint);box-shadow:0 5px 0 var(--pq-mintd)}
.pq-btn.m:active{box-shadow:0 2px 0 var(--pq-mintd)}
.pq-btn.w{background:#fff;box-shadow:0 0 0 2px var(--pq-line);font-family:Pretendard,sans-serif;font-weight:800;font-size:16px}
.pq-btn.sm{min-height:48px;font-size:16px;border-radius:16px}
.pq-btn[disabled]{opacity:.45;transform:none}
.pq-btn img{width:34px;height:34px;object-fit:contain}
.pq-btn svg{width:22px;height:22px;flex:none}
.pq-btn small{display:block;font:700 12px/1.2 Pretendard,sans-serif;opacity:.8;margin-top:2px}
.pq-pill{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-radius:999px;background:var(--pq-mint);font-size:13px;font-weight:800;color:var(--pq-g8);white-space:nowrap}
.pq-pill.y{background:var(--pq-ys);color:#5A4A12}
.pq-pill.g{background:var(--pq-g7);color:var(--pq-cream)}
.pq-pill img{width:22px;height:22px}
/* 첫 문제 시범 손 */
.pq-hand{position:absolute;z-index:7;left:0;top:0;width:46px;height:46px;margin:-6px 0 0 -12px;color:var(--pq-g8);pointer-events:none}
.pq-hand svg{width:46px;height:46px;overflow:visible}
.pq-hand svg path{fill:#fff;stroke:var(--pq-g8);stroke-width:1.8}
.pq-hand.tap svg{animation:pq-tap .3s ease-in-out}
/* 위에 뜨는 판(스티커 고르기) */
.pq-sheet{position:absolute;left:10px;right:10px;bottom:10px;z-index:4;background:#fff;border-radius:24px;padding:16px 14px 14px;box-shadow:0 14px 34px -12px rgba(6,37,26,.45);text-align:center;animation:pq-up .35s var(--kd-spring) both}
.pq-sheet h3{font:700 21px/1.3 "GmarketSans",Pretendard,sans-serif;color:var(--pq-g8);margin:0 0 10px}
.pq-cards{display:flex;gap:10px;justify-content:center}
.pq-card{flex:1;max-width:120px;border:0;border-radius:18px;background:var(--pq-cream);box-shadow:inset 0 0 0 2px var(--pq-line);padding:10px 6px 8px;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:14px;font-weight:800;color:var(--pq-g8)}
.pq-card.sel{background:var(--pq-ys);box-shadow:0 0 0 3px var(--pq-y)}
.pq-stk{position:relative;width:76px;height:76px;border-radius:20px;overflow:hidden;background:var(--c,#DCEBD9);display:block}
.pq-stk img{position:absolute;left:8px;top:4px;width:60px;height:60px}
.pq-stk svg{position:absolute;left:0;bottom:0;width:76px;height:40px}
/* 처음 화면 */
.pq-home{position:absolute;inset:0;display:flex;flex-direction:column}
.pq-hero{flex:0 0 auto;padding:14px 16px 8px;text-align:center}
.pq-hero h2{font:700 30px/1.15 "GmarketSans",Pretendard,sans-serif;color:var(--pq-g8);margin:0}
.pq-hero p{margin:6px 0 0;font-size:15px;color:var(--pq-mute);font-weight:700}
.pq-home .pq-view{flex:1 1 auto}
.pq-panel{flex:0 0 auto;padding:12px 14px 12px;background:var(--pq-cream);border-top:1px solid var(--pq-line)}
/* 단계 타일 · 시계 · 랭킹은 국기 놀이 틀(flag-rank.css, .pq 아래) */
.pq-row{display:flex;gap:8px;margin-top:10px}
.pq-row .pq-btn{min-height:48px}
.pq-foot{margin:10px 0 0;font-size:12px;color:var(--pq-mute);text-align:center;display:flex;align-items:center;justify-content:center;gap:6px}
.pq-foot svg{width:12px;height:14px}
/* 끝 화면 */
.pq-end{position:absolute;inset:0;display:flex;flex-direction:column;overflow:auto}
.pq-endtop{position:relative;flex:0 0 auto;background:var(--pq-sky);padding:18px 14px 22px;text-align:center;overflow:hidden}
.pq-endtop::after{content:"";position:absolute;left:-12%;right:-12%;bottom:-70px;height:120px;border-radius:50%;background:var(--pq-grass)}
.pq-endtop>*{position:relative;z-index:1}
.pq-endtop small{display:block;font-size:14px;font-weight:800;color:var(--pq-g7)}
.pq-endtop b.big{display:block;font:700 54px/1 "GmarketSans",Pretendard,sans-serif;color:var(--pq-g8);margin:6px 0 2px}
.pq-endtop b.big span{font-size:22px}
.pq .fr-time b{font-size:34px}.pq .fr-time span{font-size:16px}.pq .fr-time{margin:4px 0 0}.pq .fr-best{margin:2px 0 4px}
.pq-starrow{display:flex;justify-content:center;gap:4px;flex-wrap:wrap;margin:6px auto 0;max-width:300px}
.pq-starrow svg{width:26px;height:26px}
.pq-band{display:flex;gap:6px;justify-content:center;align-items:flex-end;margin:12px 0 2px;min-height:56px;flex-wrap:wrap}
.pq-band img{width:48px;height:48px}
.pq-endinfo{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;padding:12px 16px 0}
.pq-endbtns{flex:0 0 auto;padding:14px 16px 10px;display:flex;flex-direction:column;gap:10px}
.pq-endbtns .pq-btn{flex:none;min-height:60px;font-size:20px}
.pq-endbtns .pq-btn.m{min-height:54px;font-size:18px}
.pq-endbtns .pq-row{margin-top:0}
.pq-endbtns .pq-row .pq-btn{flex:1;min-height:50px;font-size:16px}
/* 덮개 카드 안(보호자 · 모음) — KIDS.card 를 쓴다 */
.pq-pp{text-align:left}
.pq-pp section{background:#fff;border-radius:18px;box-shadow:0 0 0 1px var(--pq-line);padding:14px 14px 12px;margin:10px 0 0}
.pq-pp h3{margin:0 0 8px;font:800 16px/1.3 Pretendard,sans-serif;color:var(--pq-ink)}
.pq-pp .r{display:flex;align-items:center;gap:10px;min-height:42px;font-size:15px;font-weight:700}
.pq-pp .r+.r{border-top:1px solid #F0EBDD}
.pq-pp .r img{width:30px;height:30px}
.pq-pp .r .v{margin-left:auto;font-weight:800;color:var(--pq-g8);white-space:nowrap}
.pq-pp .cap{font-size:13px;color:var(--pq-mute);line-height:1.55;margin:8px 0 0}
.pq-pp .why{padding:10px 0}
.pq-pp .why+.why{border-top:1px solid #F0EBDD}
.pq-pp .why b{display:block;font-size:15px}
.pq-pp .why span{display:block;font-size:13px;color:var(--pq-mute);line-height:1.5;margin-top:2px}
.pq-pp .why i{display:block;font-style:normal;font-size:12px;font-weight:700;color:#7A877F;margin-top:3px}
.pq-pp .src{font-size:12px;color:var(--pq-mute);line-height:1.6;margin:8px 0 0;padding-left:18px}
.pq-pp .opts{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.pq-pp .opt{min-height:44px;min-width:52px;padding:0 12px;border:0;border-radius:22px;background:#fff;box-shadow:inset 0 0 0 2px var(--pq-line);font-size:14px;font-weight:700;color:#3F4D45}
.pq-pp .opt[aria-pressed="true"]{background:var(--pq-g8);box-shadow:none;color:var(--pq-cream)}
.pq-pp .opt img{width:28px;height:28px;vertical-align:middle}
.pq-pp .tg{margin-left:auto;width:52px;height:32px;border:0;border-radius:16px;background:#D9D3C2;position:relative;flex:none;padding:0}
.pq-pp .tg::after{content:"";position:absolute;top:4px;left:4px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(6,37,26,.25);transition:left .15s}
.pq-pp .tg[aria-checked="true"]{background:var(--pq-g7)}
.pq-pp .tg[aria-checked="true"]::after{left:24px}
.pq-pp .link{border:0;background:none;padding:10px 0 2px;font:inherit;font-size:14px;font-weight:800;color:var(--pq-g7);text-decoration:underline;text-underline-offset:3px}
.pq-pp .wide{width:100%;min-height:48px;border:0;border-radius:14px;background:var(--pq-cream);box-shadow:inset 0 0 0 2px var(--pq-line);font-size:15px;font-weight:800;color:#3F4D45;margin-top:10px}
.pq-book{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:8px}
.pq-book .pq-stk{width:100%;height:auto;aspect-ratio:1}
.pq-book .pq-stk img{left:12%;top:6%;width:76%;height:76%}
.pq-book .pq-stk svg{width:100%;height:52%}
.pq-book .pq-stk.no{background:#F1EBDB}
.pq-book .pq-stk.no img{opacity:.18}
.pq-book .pq-stk.no svg{opacity:.3}
/* 작은 화면 */
@media (max-height:700px){
  .pq-prompt{min-height:66px;padding-top:6px;padding-bottom:6px}
  .pq-face{width:52px;height:52px}.pq-face img{width:46px;height:46px}
  .pq-ask{font-size:19px}
  .pq-tray{min-height:96px;padding-top:8px;padding-bottom:8px}
  .pq-btn{min-height:52px;font-size:17px}
  .pq-hero{padding-top:8px}.pq-hero h2{font-size:25px}
}
@keyframes pq-pulse{50%{transform:scale(1.08)}}
@keyframes pq-in{from{opacity:0;transform:translate(-50%,6px) scale(.9)}to{opacity:1}}
@keyframes pq-up{from{transform:translateY(30px);opacity:0}to{transform:none;opacity:1}}
@keyframes pq-tap{50%{transform:scale(.82) translateY(3px)}}
@media (prefers-reduced-motion:reduce){.pq-q{animation:none}}

/* ===== 누가 다르띵? (2026-10-17 · 18 문서 4장 · 겨울 숲) — 공통 틀(kids-common.css) · 놀이 공통(play-quiz-common.css) 위에 더한다. 모든 선택자는 .kd.df 아래(장면 안 요소는 df- 이름).
   장면은 겨울 숲 그림(400×500) 하나를 .df-cam 이 화면 너비에 맞춘다. 서 있는 친구는 그 위에 얹고 장면에서 바로 누른다. 투명 캐릭터 그림에는 filter 를 쓰지 않는다 ===== */
@media (max-width:700px){.kd.df{height:calc(100dvh - 62px - 60px)}}   /* 폰: 머리글 62px + 위 띠 60px(한 줄)을 빼서 놀이 상자가 한 화면에 */
@media (min-width:701px){.kd.df{height:calc(100dvh - 240px);min-height:560px}}   /* 패드 · PC: 머리글 + 위 띠를 빼서 처음 화면이 한 화면에(낮은 노트북은 최소 560px) */
@media (max-width:760px){body.page-template-page-diff .wff{display:none}}   /* 휴대폰: 사이트 오른쪽 아래 떠 있는 버튼(출석 · 카카오)이 친구를 가려서 이 놀이 화면에서만 감춘다 */
/* 겨울 숲: 위아래 · 양옆 남는 곳은 하늘 · 눈 색(놀이 파일이 그림 위치에 맞춰 칠함) */
.df .df-v{background:#DDE4F2}
.df-cam{position:absolute;left:0;top:0;width:400px;height:500px;transform-origin:0 0;overflow:hidden}
.df-bg{position:absolute;left:0;top:0;width:400px;height:500px;pointer-events:none;-webkit-user-drag:none}
.df-top{position:absolute;left:0;top:0;width:400px;height:500px;pointer-events:none}
/* 서 있는 친구: 그림 세 장 중 하나만 보인다(pa · pb · pc). 몸 움직임은 .df-bd 하나에 transform. 친구를 바로 누른다 */
.df-dn{position:absolute;pointer-events:auto;cursor:pointer;-webkit-tap-highlight-color:transparent;outline:none}
.df-dn:focus-visible{outline:3px solid var(--pq-y);outline-offset:2px;border-radius:14px}
.df-bd{position:absolute;left:0;top:0;width:100%;height:100%;transform-origin:50% 97.85%;will-change:transform}
.df-bd img{position:absolute;left:0;top:0;width:100%;height:100%;display:none;object-fit:contain;object-position:50% 100%;pointer-events:none;-webkit-user-drag:none}
.df-dn.pa .df-bd img.a,.df-dn.pb .df-bd img.b,.df-dn.pc .df-bd img.c{display:block}
.df-sh{position:absolute;left:22%;right:22%;bottom:-1.4%;height:6%;border-radius:50%;background:rgba(70,90,130,.22)}
.df-dn.chk .df-bd{opacity:.55;transition:opacity .4s}   /* 견줘 본(똑같은) 친구는 살짝 옅게 */
.df-dn .pq-bub{z-index:6;font-size:calc(15px / var(--s,1))}
.df-dn.df-l .pq-bub{left:2%;transform:translate(0,-4px)}.df-dn.df-l .pq-bub::after{left:24px}   /* 양끝 친구 말풍선은 안쪽으로(장면 끝에서 잘리지 않게) */
.df-dn.df-r .pq-bub{left:auto;right:2%;transform:translate(0,-4px)}.df-dn.df-r .pq-bub::after{left:auto;right:18px;margin-left:0}
.df-dn .pq-bub.low{bottom:auto;top:0;transform:translate(-50%,0)}.df-dn.df-l .pq-bub.low,.df-dn.df-r .pq-bub.low{transform:none}   /* 낮은 화면 뒷줄: 보이는 장면 위 끝에 걸리면 그림 안쪽 위에 */
.df-dn.df-l .pq-bub,.df-dn.df-r .pq-bub,.df-dn .pq-bub.low{animation-name:df-bin}   /* 안쪽으로 붙인 말풍선은 가운데 맞춤 움직임 없이 나타나기만 */
/* 반짝(같이 찾기): 다른 친구 발밑 */
.df-glow{position:absolute;border-radius:50%;background:radial-gradient(rgba(255,236,140,.95),rgba(255,214,64,.55) 45%,rgba(255,214,64,0) 70%);animation:df-glow .8s ease-in-out 7 alternate both;pointer-events:none}
/* 내리는 눈(친구 앞으로도 지나간다) */
.df-snow{position:absolute;left:0;top:0;width:400px;height:500px;pointer-events:none;z-index:700}
.df-snow i{position:absolute;top:-12px;border-radius:50%;background:#fff;opacity:.9;box-shadow:0 0 3px rgba(255,255,255,.85);animation:df-fall 7s linear infinite}
/* 아래 줄: 안내 한 줄 · 형님 "뭐가 달라?" 두 갈래 단추. 높이를 고정해 바뀔 때 장면이 움직이지 않게 */
.df .pq-tray{height:104px;min-height:0;display:flex;align-items:center;justify-content:center;padding:8px 14px}
.df-tip{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--pq-g7);font:700 22px/1.25 "GmarketSans",Pretendard,sans-serif;text-align:center;word-break:keep-all}
.df-tip svg{flex:none}
.df-why{display:flex;gap:12px;justify-content:center;width:100%}
.df-rs{flex:0 1 172px;min-width:0;min-height:64px;padding:0 12px;border:0;border-radius:32px;background:#fff;box-shadow:inset 0 0 0 3px var(--pq-line),0 5px 0 var(--pq-line);color:var(--pq-g8);font:800 19px/1.2 Pretendard,sans-serif;word-break:keep-all;transition:transform .1s}
.df-rs:active,.df-rs.press{transform:translateY(3px) scale(.97);box-shadow:inset 0 0 0 3px var(--pq-y),0 1px 0 var(--pq-line)}
.df-rs.ok{background:var(--pq-ys);box-shadow:inset 0 0 0 4px var(--pq-y),0 5px 0 var(--pq-yd)}
.df-rs.no{background:#F1EBDB;color:var(--pq-mute);box-shadow:inset 0 0 0 3px var(--pq-line),0 2px 0 var(--pq-line)}
.df-rs.glow{box-shadow:inset 0 0 0 4px var(--pq-y),0 0 0 6px rgba(247,201,72,.45);animation:df-glowb 1s ease-in-out infinite}
@media (max-height:700px){.df .pq-tray{height:88px}.df-tip{font-size:19px}.df-rs{min-height:56px;font-size:17px}}
@media (max-width:360px){.df-why{gap:8px}.df-rs{font-size:17px}.df-tip{font-size:19px}}
@keyframes df-bin{from{opacity:0}to{opacity:1}}
@keyframes df-glow{from{opacity:.35;transform:scale(.85)}to{opacity:1;transform:scale(1.1)}}
@keyframes df-glowb{50%{transform:scale(1.05)}}
@keyframes df-fall{0%{transform:translate(0,0)}25%{transform:translate(8px,130px)}50%{transform:translate(-4px,260px)}75%{transform:translate(7px,390px)}100%{transform:translate(0,524px)}}
@media (prefers-reduced-motion:reduce){.df-rs.glow,.df-snow i{animation:none}.df-glow{animation:none;opacity:1}}

/* ===== 기억놀이 위 띠(2026-10-16 18:07 대표 "타자놀이 안에 서브메뉴가 있는 것처럼"): 타자놀이 띠(play.css .tg-ph)와 같은 모양을 .pg-ph 로 옮겼다.
   메뉴(.seg3) = 기억놀이 놀이들(지금은 어디 숨었띵? 하나, 놀이가 늘면 알약을 더한다). 캐릭터 그림(.pg-ph-pals)에는 filter·backdrop-filter 를 쓰지 않는다. 유리 효과는 알약 줄에만 ===== */
.G .pg-ph{background:var(--g8);color:#fff;position:relative;overflow:hidden}
.G .pg-ph::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 85% 30%,rgba(20,107,69,.7),transparent 55%);pointer-events:none}
.G .pg-ph>.wrap{position:relative;max-width:1280px}
.G .pg-ph .hd{position:relative;z-index:1;padding:26px 0 20px;max-width:640px}
.G .pg-ph-crumb{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:12.5px;font-weight:600;color:#9DB8A8;letter-spacing:.02em}
.G .pg-ph-crumb a{color:#9DB8A8;text-decoration:none}.G .pg-ph-crumb a:hover{color:#fff}
.G .pg-ph-crumb b{color:var(--y);font-weight:600}
.G .pg-ph-t{font-family:"GmarketSans",Pretendard,sans-serif;font-weight:700;font-size:clamp(32px,3.6vw,46px);line-height:1;letter-spacing:-.03em;margin:12px 0 0;color:#fff}
.G .pg-ph .seg3-w{padding-bottom:22px;position:relative;z-index:3}
.G .pg-ph .seg3{display:flex;gap:4px;overflow-x:auto;padding:5px;background:rgba(255,255,255,.08);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:999px;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 0 0 1px rgba(255,255,255,.08);scrollbar-width:none;width:max-content;max-width:100%}
.G .pg-ph .seg3::-webkit-scrollbar{display:none}
.G .pg-ph .seg3 a{flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;padding:11px 18px;border-radius:999px;font-size:14.5px;font-weight:600;color:#E8EFEA;white-space:nowrap;text-decoration:none;transition:background .5s var(--ease),color .5s var(--ease),transform .5s var(--ease)}
.G .pg-ph .seg3 a:hover{background:rgba(255,255,255,.1)}
.G .pg-ph .seg3 a.on{background:var(--y);color:var(--ink);box-shadow:0 10px 24px -12px rgba(0,0,0,.6),inset 0 1px 0 #FFE9A6}
.G .pg-ph .seg3 a:active{transform:scale(.97)}
.G .pg-ph .seg3 a:focus-visible{outline:3px solid var(--y);outline-offset:2px}
.G .pg-ph-pals{position:absolute;right:18px;bottom:0;display:flex;align-items:flex-end;pointer-events:none;z-index:0}
.G .pg-ph-pals img{display:block;height:184px;width:auto}   /* 돋보기 든 지띵이(ch_place_ji, 사이트에 있는 그림) */
@media (max-width:1100px){.G .pg-ph-pals img{height:150px}}
@media (max-width:900px){.G .pg-ph-pals{display:none}}
@media (max-width:760px){.G .pg-ph .hd{padding:20px 0 14px}.G .pg-ph-t{font-size:32px;margin-top:10px}.G .pg-ph .seg3{width:100%}.G .pg-ph .seg3 a{padding:9px 14px;font-size:13.5px}.G .pg-ph .seg3-w{padding-bottom:16px}}
@media (max-width:700px){   /* 폰: 띠를 한 줄 60px(제목 + 메뉴)로 줄여 놀이 상자가 한 화면에 들어가게. 빵부스러기는 숨김(놀이 공통 틀과 같음) */
  .G .pg-ph>.wrap{display:flex;align-items:center;gap:12px;height:60px}
  .G .pg-ph .hd{padding:0;flex:none;max-width:none}
  .G .pg-ph-crumb{display:none}
  .G .pg-ph-t{font-size:22px;margin:0;white-space:nowrap}
  .G .pg-ph .seg3-w{padding:0;flex:1 1 auto;min-width:0;display:flex;justify-content:flex-end}
  .G .pg-ph .seg3{width:max-content}
  .G .pg-ph .seg3 a{padding:8px 14px;font-size:14px}
}
@media (prefers-reduced-motion:reduce){.G .pg-ph .seg3 a{transition:none}}
/* 2026-10-16 19:32 기억놀이 놀이가 2개(어디 숨었띵? · 국기 어디 꽂았띵?)라 좁은 폰(420px 이하)에서도 제목과 알약 둘이 한 줄에 들어가게 조금 줄인다.
   이 띠는 hide.css 와 world.css 에 똑같이 들어간다(소스는 이 파일 하나: 00_기획/게임/소스/kids/gieok-band.css) */
@media (max-width:420px){
  .G .pg-ph>.wrap{gap:8px}
  .G .pg-ph-t{font-size:19px}
  .G .pg-ph .seg3{padding:4px;gap:2px}
  .G .pg-ph .seg3 a{padding:8px 10px;font-size:13px}
}

/* ===== 놀이 단계 · 시간 · 주간 랭킹 공통 (2026-10-17) · 국기 어디 꽂았띵?(.kd.wm) · 국기 짝꿍 찾았띵?(.kd.pm) · 어디 숨었띵?(.kd.hd) · 단순 교육 놀이 4종(.kd.pq)이 같이 쓴다. 모든 선택자는 그 아래(오래된 아이패드도 읽게 :is() 없이).
   단계 타일(fr-st) · 놀이 중 시계(fr-clk) · 끝 화면 시간(fr-time) · 랭킹 덮개(fr-rk). 숫자는 tabular-nums ===== */
.kd.wm,.kd.pm,.kd.hd,.kd.pq{--fr-g8:#0B4A32;--fr-g7:#146B45;--fr-y:#F7C948;--fr-yd:#C99A26;--fr-ys:#FFF6D6;--fr-line:#E6DFCB;--fr-mute:#5F6E64;--fr-mint:#E4EFE0}

/* ---------- 단계 타일 ---------- */
.wm .fr-stages,.pm .fr-stages,.hd .fr-stages,.pq .fr-stages{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.wm .fr-stages.n10,.pm .fr-stages.n10,.hd .fr-stages.n10,.pq .fr-stages.n10{grid-template-columns:repeat(5,1fr)}
.wm .fr-st,.pm .fr-st,.hd .fr-st,.pq .fr-st{position:relative;min-height:70px;border:0;border-radius:16px;padding:6px 4px 7px;background:#fff;box-shadow:inset 0 0 0 2px var(--fr-line),0 4px 0 #E2D9C2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;color:var(--fr-g8);font-variant-numeric:tabular-nums;transition:transform .1s;-webkit-tap-highlight-color:transparent}
.wm .fr-st:active,.pm .fr-st:active,.hd .fr-st:active,.pq .fr-st:active{transform:translateY(3px);box-shadow:inset 0 0 0 2px var(--fr-line),0 1px 0 #E2D9C2}
.wm .fr-st b,.pm .fr-st b,.hd .fr-st b,.pq .fr-st b{font:700 23px/1 "GmarketSans",Pretendard,sans-serif}
.wm .fr-st small,.pm .fr-st small,.hd .fr-st small,.pq .fr-st small{font-size:11.5px;font-weight:800;color:var(--fr-mute);line-height:1.2;white-space:nowrap;letter-spacing:-.02em}
.wm .fr-st em,.pm .fr-st em,.hd .fr-st em,.pq .fr-st em{margin-top:2px;padding:1px 6px;border-radius:999px;background:var(--fr-mint);font-style:normal;font-size:11.5px;font-weight:800;color:var(--fr-g7);white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.wm .fr-st,.pm .fr-st,.hd .fr-st,.pq .fr-st{min-width:0}
.hd .fr-st em,.pq .fr-st em{padding-left:4px;padding-right:4px;letter-spacing:-.02em}
.wm .fr-st.next,.pm .fr-st.next,.hd .fr-st.next,.pq .fr-st.next{background:var(--fr-ys);box-shadow:inset 0 0 0 2.5px var(--fr-y),0 4px 0 var(--fr-yd)}
.wm .fr-st.next em,.pm .fr-st.next em,.hd .fr-st.next em,.pq .fr-st.next em{background:var(--fr-y);color:var(--fr-g8)}
.wm .fr-st.lock,.pm .fr-st.lock,.hd .fr-st.lock,.pq .fr-st.lock{background:#EFE8D6;box-shadow:none;color:#A39A84}
.wm .fr-st.lock small,.pm .fr-st.lock small,.hd .fr-st.lock small,.pq .fr-st.lock small{color:#A39A84}
.wm .fr-st.lock:active,.pm .fr-st.lock:active,.hd .fr-st.lock:active,.pq .fr-st.lock:active{transform:none}
.wm .fr-lk,.pm .fr-lk,.hd .fr-lk,.pq .fr-lk{display:block;width:12px;height:14px;margin-top:3px;color:#B5AC95}
.wm .fr-lk svg,.pm .fr-lk svg,.hd .fr-lk svg,.pq .fr-lk svg{width:100%;height:100%;display:block}
@media (min-width:640px){.wm .fr-stages,.pm .fr-stages,.hd .fr-stages,.pq .fr-stages{grid-template-columns:repeat(6,1fr)}.wm .fr-stages.n10,.pm .fr-stages.n10,.hd .fr-stages.n10,.pq .fr-stages.n10{grid-template-columns:repeat(5,1fr)}}
@media (max-height:700px){.wm .fr-st,.pm .fr-st,.hd .fr-st,.pq .fr-st{min-height:60px;padding-top:4px;padding-bottom:5px}.wm .fr-st b,.pm .fr-st b,.hd .fr-st b,.pq .fr-st b{font-size:20px}}

/* ---------- 놀이 중 시계(안내 줄 오른쪽) ---------- */
.wm .fr-clk,.pm .fr-clk,.hd .fr-clk,.pq .fr-clk{flex:none;display:inline-flex;align-items:center;gap:3px;height:34px;min-width:62px;padding:0 10px 0 8px;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 2px var(--fr-line);color:var(--fr-mute);font-variant-numeric:tabular-nums;transition:box-shadow .2s,color .2s}
.wm .fr-clk svg,.pm .fr-clk svg,.hd .fr-clk svg,.pq .fr-clk svg{width:17px;height:17px;flex:none}
.wm .fr-clk b,.pm .fr-clk b,.hd .fr-clk b,.pq .fr-clk b{font:700 17px/1 "GmarketSans",Pretendard,sans-serif;color:var(--fr-g8);min-width:1.2em;text-align:right}
.wm .fr-clk small,.pm .fr-clk small,.hd .fr-clk small,.pq .fr-clk small{font-size:12px;font-weight:800}
.wm .fr-clk.on,.pm .fr-clk.on,.hd .fr-clk.on,.pq .fr-clk.on{box-shadow:inset 0 0 0 2.5px var(--fr-y);color:var(--fr-g7)}
@media (max-width:360px){.wm .fr-clk,.pm .fr-clk,.hd .fr-clk,.pq .fr-clk{min-width:54px;padding:0 8px 0 6px}.wm .fr-clk svg,.pm .fr-clk svg,.hd .fr-clk svg,.pq .fr-clk svg{display:none}}

/* ---------- 끝 화면: 걸린 시간 · 새 기록 · 랭킹 한 줄 ---------- */
.wm .fr-time,.pm .fr-time,.hd .fr-time,.pq .fr-time{display:flex;align-items:baseline;justify-content:center;gap:4px;margin:6px 0 2px;color:var(--fr-g8);font-variant-numeric:tabular-nums}
.wm .fr-time b,.pm .fr-time b,.hd .fr-time b,.pq .fr-time b{font:700 50px/1 "GmarketSans",Pretendard,sans-serif}
.wm .fr-time span,.pm .fr-time span,.hd .fr-time span,.pq .fr-time span{font:700 20px/1 "GmarketSans",Pretendard,sans-serif}
.wm .fr-rec,.pm .fr-rec,.hd .fr-rec,.pq .fr-rec{display:inline-block;margin-left:6px;padding:4px 10px;border-radius:999px;background:#E2725B;color:#fff;font:800 13px/1.1 Pretendard,sans-serif;vertical-align:8px;animation:fr-pop .5s var(--kd-spring) both}
.wm .fr-best,.pm .fr-best,.hd .fr-best,.pq .fr-best{margin:4px 0 10px;font-size:14px;font-weight:800;color:var(--fr-g7);font-variant-numeric:tabular-nums}
.wm .fr-rank,.pm .fr-rank,.hd .fr-rank,.pq .fr-rank{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;margin:12px 16px 0;min-height:22px;font-size:14.5px;font-weight:800;color:var(--fr-g8);text-align:center;font-variant-numeric:tabular-nums}
.wm .fr-rank svg,.pm .fr-rank svg,.hd .fr-rank svg,.pq .fr-rank svg{width:22px;height:22px;flex:none}
.wm .fr-rank b,.pm .fr-rank b,.hd .fr-rank b,.pq .fr-rank b{font:700 18px/1 "GmarketSans",Pretendard,sans-serif;color:#9A3E1E}

/* ---------- 랭킹 덮개(KIDS.card 안) ---------- */
.wm .fr-rk,.pm .fr-rk,.hd .fr-rk,.pq .fr-rk{text-align:left}
.wm .fr-rk h2,.pm .fr-rk h2,.hd .fr-rk h2,.pq .fr-rk h2{display:flex;align-items:center;justify-content:center;gap:8px}
.wm .fr-rk h2 svg,.pm .fr-rk h2 svg,.hd .fr-rk h2 svg,.pq .fr-rk h2 svg{width:28px;height:28px;flex:none}
.wm .fr-tabs,.pm .fr-tabs,.hd .fr-tabs,.pq .fr-tabs{display:flex;gap:6px;overflow-x:auto;padding:4px 2px 8px;margin:6px -4px 0;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.wm .fr-tabs::-webkit-scrollbar,.pm .fr-tabs::-webkit-scrollbar,.hd .fr-tabs::-webkit-scrollbar,.pq .fr-tabs::-webkit-scrollbar{display:none}
.wm .fr-tab,.pm .fr-tab,.hd .fr-tab,.pq .fr-tab{flex:none;width:44px;height:44px;border:0;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 2px var(--fr-line);font:700 17px/1 "GmarketSans",Pretendard,sans-serif;color:var(--fr-g8);padding:0}
.wm .fr-tab[aria-selected="true"],.pm .fr-tab[aria-selected="true"],.hd .fr-tab[aria-selected="true"],.pq .fr-tab[aria-selected="true"]{background:var(--fr-g8);box-shadow:none;color:#FAF6EC}
.wm .fr-cap,.pm .fr-cap,.hd .fr-cap,.pq .fr-cap{margin:2px 0 8px;font-size:13px;font-weight:700;color:var(--fr-mute)}
.wm .fr-list,.pm .fr-list,.hd .fr-list,.pq .fr-list{list-style:none;margin:0;padding:0;border-radius:16px;background:#fff;box-shadow:0 0 0 1px var(--fr-line);overflow:hidden}
.wm .fr-list li,.pm .fr-list li,.hd .fr-list li,.pq .fr-list li{display:flex;align-items:center;gap:10px;min-height:46px;padding:4px 12px;font-variant-numeric:tabular-nums}
.wm .fr-list li+li,.pm .fr-list li+li,.hd .fr-list li+li,.pq .fr-list li+li{border-top:1px solid #F0EBDD}
.wm .fr-list li.me,.pm .fr-list li.me,.hd .fr-list li.me,.pq .fr-list li.me{background:var(--fr-ys)}
.wm .fr-n,.pm .fr-n,.hd .fr-n,.pq .fr-n{flex:none;width:28px;height:28px;border-radius:50%;background:#F3EEDF;font:700 14px/28px "GmarketSans",Pretendard,sans-serif;text-align:center;color:var(--fr-mute)}
.wm .fr-list li.top .fr-n,.pm .fr-list li.top .fr-n,.hd .fr-list li.top .fr-n,.pq .fr-list li.top .fr-n{background:var(--fr-y);color:var(--fr-g8)}
.wm .fr-list img,.pm .fr-list img,.hd .fr-list img,.pq .fr-list img{width:32px;height:32px;object-fit:contain;flex:none}
.wm .fr-nm,.pm .fr-nm,.hd .fr-nm,.pq .fr-nm{flex:1;min-width:0;font-size:15px;font-weight:800;color:#26332B;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wm .fr-nm i,.pm .fr-nm i,.hd .fr-nm i,.pq .fr-nm i{margin-left:6px;padding:1px 7px;border-radius:999px;background:var(--fr-g8);color:#fff;font-style:normal;font-size:11.5px;vertical-align:1px}
.wm .fr-list em,.pm .fr-list em,.hd .fr-list em,.pq .fr-list em{font-style:normal;font-size:15px;font-weight:800;color:var(--fr-g7)}
.wm .fr-more,.pm .fr-more,.hd .fr-more,.pq .fr-more{margin:6px 2px 0;font-size:12.5px;font-weight:700;color:var(--fr-mute);text-align:right}
.wm .fr-empty,.pm .fr-empty,.hd .fr-empty,.pq .fr-empty{margin:0;padding:22px 12px;border-radius:16px;background:#fff;box-shadow:0 0 0 1px var(--fr-line);text-align:center;font-size:14px;font-weight:700;color:var(--fr-mute)}
.wm .fr-me,.pm .fr-me,.hd .fr-me,.pq .fr-me{display:flex;align-items:center;gap:10px;margin-top:10px;padding:10px 14px;border-radius:16px;background:var(--fr-mint);font-variant-numeric:tabular-nums}
.wm .fr-me span,.pm .fr-me span,.hd .fr-me span,.pq .fr-me span{font-size:14px;font-weight:800;color:var(--fr-g7)}
.wm .fr-me b,.pm .fr-me b,.hd .fr-me b,.pq .fr-me b{font:700 20px/1 "GmarketSans",Pretendard,sans-serif;color:var(--fr-g8)}
.wm .fr-me em,.pm .fr-me em,.hd .fr-me em,.pq .fr-me em{margin-left:auto;font-style:normal;font-size:14px;font-weight:800;color:var(--fr-g7)}
.wm .fr-note,.pm .fr-note,.hd .fr-note,.pq .fr-note{margin:8px 2px 0;font-size:13px;font-weight:700;line-height:1.5;color:var(--fr-mute)}

@media (prefers-reduced-motion:reduce){.wm .fr-rec,.pm .fr-rec,.hd .fr-rec,.pq .fr-rec{animation:none}.wm .fr-st,.pm .fr-st,.hd .fr-st,.pq .fr-st{transition:none}}
/* 별 놀이: 한 번에 맞힌 수(타일 · 랭킹 줄 · 끝 화면) */
.wm .fr-star,.pm .fr-star,.hd .fr-star,.pq .fr-star{display:inline-block;width:1em;height:1em;vertical-align:-.12em;margin-right:1px}
.wm .fr-star svg,.pm .fr-star svg,.hd .fr-star svg,.pq .fr-star svg{width:100%;height:100%;display:block}
.hd .fr-stages.n10,.pq .fr-stages{grid-template-columns:repeat(5,1fr)}
.pq .fr-stages{gap:8px}
@media (max-width:360px){.hd .fr-stages,.pq .fr-stages{gap:6px}.hd .fr-st small,.pq .fr-st small{font-size:10.5px}}
@keyframes fr-pop{0%{opacity:0;transform:scale(.5) rotate(-8deg)}70%{opacity:1;transform:scale(1.08) rotate(2deg)}100%{transform:none}}
/* ===== 놀이 입장(kids-pass.js, 2026-10-19): 위 막대 하트 수 · 처음 화면 안내 줄 · 폰 전체 화면 레이어 · 닫기 X. 모든 놀이 css 끝에 붙는다 ===== */
.kd-top .kd-heart{display:inline-flex;align-items:center;gap:4px;height:30px;padding:0 10px;border-radius:999px;background:rgba(255,255,255,.14);color:var(--kd-cream,#FAF6EC);font-size:13.5px;font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}
.kd-top .kd-heart svg{width:15px;height:15px;color:#FF7A8A}
.kd-top .kd-heart.free{background:rgba(247,201,72,.22);color:var(--kd-ys,#FBEFC2);font-size:12.5px}
.kd .kp-note{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 10px;padding:8px 10px 8px 12px;border-radius:14px;background:#fff;box-shadow:inset 0 0 0 1.5px var(--kd-line,#E6DFCB);font-size:13.5px;line-height:1.35;color:var(--kd-g8,#0B4A32);word-break:keep-all}
.kd .kp-note span{display:block;min-width:0}
.kd .kp-note svg{display:inline-block;vertical-align:-2px;width:15px;height:15px;margin-right:4px;color:#E5566B}
.kd .kp-note b{font-weight:800;color:var(--kd-g7,#146B45)}
.kd .kp-note.kp-login{background:var(--kd-ys,#FBEFC2);box-shadow:inset 0 0 0 1.5px #F0D98A}
.kd .kp-btn{flex:0 0 auto;display:inline-flex;align-items:center;height:32px;padding:0 12px;border:0;border-radius:999px;background:var(--kd-g8,#0B4A32);color:var(--kd-cream,#FAF6EC);font:700 13px/1 Pretendard,sans-serif;text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent}
.kd .kp-btn:active{transform:scale(.97)}
/* 닫기 X: 폰 레이어일 때만 */
.kd-top .kd-close{display:none;flex:0 0 auto;width:44px;height:44px;align-items:center;justify-content:center;border:0;border-radius:999px;background:rgba(255,255,255,.14);color:var(--kd-cream,#FAF6EC);padding:0}
.kd-top .kd-close svg{width:20px;height:20px}
.kd-fullbox .kd-top .kd-close{display:inline-flex}
/* 놀이 상자를 창 꽉 찬 레이어로(폰 · PC, 2026-10-19 12:09 대표 "PC 도 모바일처럼 전체 창"). 창 팝업이 아니라 같은 페이지 위라 팝업 차단과 무관. 브라우저 전체 화면 API 는 안 씀(안드로이드 주소 안내) */
body.kd-full{overflow:hidden;overscroll-behavior:none}
body.kd-full .kd.kd-fullbox{position:fixed;top:0;bottom:0;left:0;right:0;width:min(560px,100vw);height:100dvh;min-height:0;max-height:none;margin:0 auto;border-radius:0;z-index:2147483000;box-shadow:0 0 0 100vmax rgba(6,37,26,.82)}   /* PC: 놀이 판은 560px 기준이라 가운데 560 폭, 양옆은 그림자로 어두운 막(겹침 순서 문제 없게 ::after 대신 그림자) */
@media (max-width:760px){
  body.kd-full .kd.kd-fullbox{width:auto}
  body.kd-full .kd.kd-fullbox .kd-top{padding-top:env(safe-area-inset-top,0);height:calc(56px + env(safe-area-inset-top,0));flex-basis:calc(56px + env(safe-area-inset-top,0))}
  body.kd-full .kd.kd-fullbox .kd-overlay{top:calc(56px + env(safe-area-inset-top,0))}
}
/* 갈래 놀이 카드(2026-10-19 10:56): 놀이 상자는 hidden, 카드 '놀이 시작'으로 연다. 카드 규칙은 .pcs 안으로 한정(2026-10-19 14:24: 놀이 안 캐릭터 포즈 class "pc"(더하기 빼기 · 수세기 · 패턴 · 없어진 친구 · 짝)와 이름이 겹쳐 콩 뛸 때 흰 상자가 생겼다) */
.G .pg-cards{background:var(--cream,#FAF6EC)}
.G .pcs{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;padding:18px 0 24px}
.G .pcs .pc{display:flex;flex-direction:column;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 0 0 1px rgba(6,37,26,.08),0 10px 22px -16px rgba(6,37,26,.4);color:var(--ink,#06251A);text-decoration:none;transition:transform .25s,box-shadow .25s}
.G .pcs .pc:hover{transform:translateY(-2px)}
.G .pc-art{display:block;aspect-ratio:472/760;overflow:hidden;background:#E4EFE0}
.G .pc-art img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}
.G .pc-tx{display:flex;flex-direction:column;gap:3px;padding:10px 12px 12px}
.G .pc-tx b{font:700 15.5px/1.3 "GmarketSans",Pretendard,sans-serif;word-break:keep-all}
.G .pc-tx small{font-size:12.5px;color:#5F6E64;line-height:1.4;word-break:keep-all}
.G .pc-tx em{align-self:flex-start;margin-top:6px;padding:6px 12px;border-radius:999px;background:var(--y,#F7C948);color:#06251A;font:700 12.5px/1 Pretendard,sans-serif;font-style:normal}
.G .pcs .pc.on{box-shadow:0 0 0 2.5px var(--y,#F7C948),0 10px 22px -16px rgba(6,37,26,.4)}
.G .kd-sec[hidden]{display:none}
@media (max-width:760px){.G .pcs{grid-template-columns:repeat(2,1fr);gap:10px;padding:14px 0 18px}.G .pc-tx b{font-size:14.5px}}
/* 위 막대 정리(2026-10-19 11:11 대표 "제목은 아래에도 나오니 빼고, 소리는 아이콘으로, 깔끔하게"): [처음(집 아이콘)][오늘 n분] … [하트][소리 아이콘][X] */
.kd-top{gap:6px;padding:0 10px}
.kd-top .kd-back,.kd-top .kd-mute{min-width:44px;width:44px;height:44px;padding:0;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.kd-top .kd-back svg,.kd-top .kd-mute svg{width:22px;height:22px;display:block}
.kd-top .kd-mute .i-off{display:none}
.kd-top .kd-mute.off{text-decoration:none;background:rgba(0,0,0,.28)}
.kd-top .kd-mute.off .i-on{display:none}
.kd-top .kd-mute.off .i-off{display:block}
.kd-top .kd-sp{flex:1 1 auto}
.kd-top .kd-today{font-size:13px}
.kd-top .kd-heart{height:32px}
/* 배너 그림(.stack3)을 놀이 화면 비율 그대로(2026-10-19 11:10 대표 "게임 썸네일은 좀 더 길게, 게임이 보이게") */
.G .stack3{height:232px;top:12px}
.G .stack3 img{aspect-ratio:472/760;object-position:top}
@media (max-width:980px){.G .stack3{height:220px}}
@media (max-width:760px){.G .stack3{height:168px;margin-top:12px}.G .stack3 img{width:88px;bottom:-14px}}
