:root{--bg:#f4eee4;--paper:#fffdf9;--ink:#221b17;--muted:#695b50;--gold:#c29a55;--gold-light:#f1d9a0;--deep:#211a16;--green:#425b49;--line:#ded0bb;--radius:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 0% 0%,#ead6b7,transparent 28%),linear-gradient(180deg,#f6efe4,#fdf9f2);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo','Noto Sans KR',sans-serif;word-break:keep-all}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit}.skip{position:absolute;top:-100px;left:12px;z-index:100;background:#fff;padding:12px}.skip:focus{top:8px}.shell{width:min(1130px,100% - 36px);margin:0 auto}.site-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:24px 0}.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;font-weight:900;letter-spacing:-.04em;line-height:1.35}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(145deg,#735124,#d0ac70);color:#fff;font:700 19px Georgia,serif;box-shadow:0 8px 18px #6b48252b}.brand small{display:block;letter-spacing:0;font-size:10px;font-weight:600;color:var(--muted)}.site-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid var(--line);border-radius:12px;text-decoration:none;font-size:13px;font-weight:800;background:#fffaf2}.site-link:hover,.site-link:focus-visible{border-color:#a17c45}.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 82% 26%,#8d693c45,transparent 34%),linear-gradient(128deg,#2c241e,#191714);color:#fff9ed;border:1px solid #4c4033;border-radius:29px;padding:50px clamp(23px,5vw,68px);box-shadow:0 22px 50px #533b2028}.hero::after{content:'木  火  土  金  水';position:absolute;bottom:17px;right:36px;color:#a98d6145;font-family:serif;font-size:32px;letter-spacing:12px;pointer-events:none}.eyebrow{display:inline-block;color:#e9c489;font-weight:900;font-size:12px;letter-spacing:.18em}.hero h1{font-size:clamp(32px,4.5vw,54px);line-height:1.2;letter-spacing:-.06em;margin:15px 0 16px}.hero p{color:#eee1cb;font-size:clamp(14px,1.5vw,17px);line-height:1.8;max-width:690px;margin:0}.hero-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:23px}.pill{display:inline-flex;align-items:center;border:1px solid #d3b27d6c;border-radius:100px;padding:8px 11px;color:#f3dbb2;font-size:12px;font-weight:700}.panel-title{margin:38px 0 18px}.panel-title .kicker{font-size:12px;letter-spacing:.16em;color:#856133;font-weight:900}.panel-title h2{font-size:clamp(23px,3vw,31px);letter-spacing:-.04em;margin:7px 0}.panel-title p{font-size:14px;color:var(--muted);line-height:1.7;margin:0}.category{margin:31px 0 24px}.category-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:12px;padding-bottom:12px;margin-bottom:14px}.category-head h3{margin:0;font-size:20px;letter-spacing:-.04em}.category-head span{font-size:12px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.cards.two{grid-template-columns:repeat(3,minmax(0,1fr))}.cards.five{grid-template-columns:repeat(3,minmax(0,1fr))}.feature{display:flex;flex-direction:column;align-items:flex-start;min-height:184px;padding:21px 19px;background:#fffdf8;border:1px solid #e5d8c7;border-radius:20px;text-decoration:none;box-shadow:0 9px 23px #4f3c1710;transition:transform .18s,border-color .18s,box-shadow .18s}.feature:not(.soon):hover,.feature:not(.soon):focus-visible{transform:translateY(-3px);border-color:#b98f4c;box-shadow:0 14px 28px #4f3c1720}.feature .symbol{display:grid;place-items:center;font-size:26px;width:44px;height:44px;background:#f7e9cb;border-radius:13px}.feature h4{font-size:18px;letter-spacing:-.04em;margin:14px 0 7px}.feature p{font-size:13px;line-height:1.6;color:var(--muted);margin:0}.feature .state{margin-top:auto;padding-top:13px;font-size:12px;font-weight:900;color:#77542a}.feature.soon{background:#f5f0e8;box-shadow:none;border-style:dashed;color:#6e665c}.feature.soon .symbol{background:#e9e1d5;filter:grayscale(.5)}.feature.soon .state{color:#75695c}.foot-note{padding:22px 0 46px;font-size:12px;color:#665e53;line-height:1.8;border-top:1px solid var(--line);margin-top:40px}.foot-note a{font-weight:800}.crumb{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);margin-bottom:15px}.crumb a{color:var(--ink);font-weight:800}.mini-hero{padding:37px clamp(20px,5vw,55px)}.mini-hero h1{font-size:clamp(30px,4vw,45px)}.workarea{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:20px;margin:26px 0 42px}.cardbox{background:#fffcf7;border:1px solid #e6d8c3;border-radius:21px;padding:28px;box-shadow:0 12px 30px #56380b10}.cardbox h2{font-size:21px;margin:0 0 15px;letter-spacing:-.04em}.cardbox p{line-height:1.7;color:var(--muted);font-size:14px}.form-grid{display:grid;gap:12px}.field{display:grid;gap:7px;font-size:13px;font-weight:800}.field input,.field select{width:100%;height:46px;border:1px solid #c9bca9;border-radius:12px;background:#fff;padding:0 12px;color:var(--ink);font-size:15px}.field select:focus,.field input:focus,.primary:focus-visible,.secondary:focus-visible{outline:3px solid #cf9e41;outline-offset:2px}.primary,.secondary{border:0;min-height:47px;padding:11px 16px;border-radius:12px;font-size:14px;font-weight:900}.primary{color:#21170d;background:#e7c477}.primary:hover{background:#f0d28e}.secondary{background:#efe5d5;color:#3d2d1e}.buttonrow{display:flex;flex-wrap:wrap;gap:10px;margin-top:17px}.note{font-size:12px!important;line-height:1.75;color:#71675e}.result{background:linear-gradient(145deg,#2e2925,#1e201b);color:#fdf5e6;border:1px solid #554737;border-radius:20px;padding:30px;min-height:268px;display:flex;flex-direction:column;justify-content:center}.result .result-date{font-size:12px;color:#ebc58b;font-weight:800}.result .result-main{font-size:clamp(20px,2.2vw,27px);line-height:1.52;font-weight:900;letter-spacing:-.04em;margin:16px 0}.result .result-sub{font-size:14px;line-height:1.8;color:#e0d6c6;margin:0}.result .next-action{margin-top:19px;padding:14px 15px;background:#ffffff12;border:1px solid #ffffff24;border-radius:12px;color:#f9deaf;font-size:13px;line-height:1.7}.result .next-action strong{display:block;color:#fff2d9;margin-bottom:4px}.muted-placeholder{font-size:14px;line-height:1.8;color:#d7ccbd}.tarot-deck{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:19px}.tarot-card{height:183px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;color:#f0d59f;background:radial-gradient(circle at 50% 40%,#81623a,#332920 56%,#241b16);border:3px double #cda76b;border-radius:14px;box-shadow:0 8px 16px #33220d25;transition:transform .2s}.tarot-card:hover,.tarot-card:focus-visible{transform:translateY(-5px);outline:3px solid #a97e40;outline-offset:2px}.tarot-card[disabled]{opacity:.54;cursor:default;transform:none}.tarot-card .sign{font:34px Georgia,serif}.tarot-card .label{font-size:12px;font-weight:900;letter-spacing:.07em}.hidden{display:none!important}.result:focus{outline:3px solid #c8ad74;outline-offset:2px}.under-grid{margin-top:20px;text-align:center;font-size:13px;line-height:1.7;color:var(--muted)}
@media(max-width:850px){.cards,.cards.two,.cards.five{grid-template-columns:repeat(2,minmax(0,1fr))}.workarea{grid-template-columns:1fr}.hero{padding:35px 28px}.hero::after{font-size:24px;letter-spacing:5px}.result{min-height:230px}}
@media(max-width:480px){.shell{width:calc(100% - 24px)}.site-header{padding:15px 0}.brand{font-size:13px}.brand-mark{width:36px;height:36px;font-size:17px}.site-link{font-size:12px;min-height:44px;padding:9px 11px}.hero{border-radius:21px;padding:30px 20px 53px}.hero::after{font-size:20px;right:15px;bottom:10px}.hero h1{font-size:32px}.cards,.cards.two,.cards.five{gap:10px}.feature{min-height:192px;padding:16px 12px;border-radius:16px}.feature h4{font-size:16px}.feature p{font-size:12px}.feature .symbol{font-size:21px;width:40px;height:40px}.feature .state{font-size:11px}.cardbox{padding:19px}.workarea{gap:13px;margin-top:15px}.tarot-deck{gap:8px}.tarot-card{height:142px}.tarot-card .sign{font-size:25px}.tarot-card .label{font-size:11px}.result{padding:23px}.panel-title{margin-top:26px}.category{margin:26px 0 22px}.category-head h3{font-size:18px}}
@media(max-width:350px){.site-header{gap:7px}.brand{gap:6px;font-size:12px}.site-link{font-size:11px;padding:8px}.feature{padding:14px 10px}.feature h4{font-size:15px}.feature p{font-size:11px}.cards{gap:8px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}


/* JJ Bright Champagne Gold: presentation-only color upgrade, 2026-10-12.
   Existing dimensions, font sizes, grids, controls, selectors, and JS preserved. */
:root{
  --bg:#fff9ef;--paper:#fffdf9;--ink:#322318;--muted:#705b46;
  --gold:#bb8649;--gold-light:#fae8c7;--deep:#fff5e8;
  --green:#566448;--line:#ecd8bd;
}
body{
  background:radial-gradient(circle at 88% 8%,#ffe9cb66,transparent 33%),
    radial-gradient(circle at 2% 3%,#fff7de,transparent 34%),
    linear-gradient(180deg,#fffaf2,#fffdf9);
  color:var(--ink);
}
.brand-mark{background:linear-gradient(145deg,#b47a3d,#edc98a);color:#fff;box-shadow:0 8px 18px #a36b3124}
.site-link{background:#fffaf4;border-color:#ebd4b5;color:#704a2b}
.site-link:hover,.site-link:focus-visible{background:#fff2df;border-color:#b88a54}
.hero{
  background:
    radial-gradient(circle at 85% 38%,#f5c99155,transparent 31%),
    radial-gradient(circle at 11% 7%,#fffef8 0%,transparent 53%),
    linear-gradient(108deg,#fffbf1 4%,#fff2d8 61%,#f9ddbd 100%);
  border-color:#ebcaa5;color:#342318;
  box-shadow:0 19px 43px #9b62221a;isolation:isolate;
}
.hero::before{
  content:'';position:absolute;right:0;top:0;width:42%;height:100%;
  background-image:linear-gradient(90deg,#fff4e0 0%,#fff4e000 36%),url('celestial-gold.webp');
  background-size:cover;background-position:center right;
  opacity:.82;pointer-events:none;z-index:-1;
  -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 28%);
  mask-image:linear-gradient(to right,transparent 0%,#000 28%);
}
.hero::after{color:#a8724280;z-index:0}
.hero .eyebrow{color:#9d6637}
.hero h1{color:#392419;text-shadow:0 1px 0 #fff9ef}
.hero p{color:#4e3829;text-shadow:0 1px 0 #fffaf39c}
.pill{border-color:#e7bd81;background:#fff9e8c7;color:#6d4523;box-shadow:0 2px 7px #ac743010}
.panel-title .kicker{color:#af7c46}
.feature{background:#fffefa;border-color:#f0dec5;box-shadow:0 9px 23px #8b572710}
.feature .symbol{background:#fff0d4;color:#865a31}
.feature:not(.soon):hover,.feature:not(.soon):focus-visible{border-color:#c89d60;box-shadow:0 14px 28px #9f69291c}
.feature .state{color:#955d2c}
.feature.soon{background:#faf5ed;color:#76685d;border-color:#eadbc7}
.feature.soon .symbol{background:#eee6dc}
.cardbox{background:#fffefa;border-color:#eedac0;box-shadow:0 12px 30px #9f672510}
.field input,.field select{background:#fffdfa;border-color:#d4bfa2}
.primary{color:#3c2917;background:#f0ce92}.primary:hover{background:#f6dba9}
.secondary{background:#f7eada;color:#54391f}
.result{
  background:radial-gradient(circle at 95% 10%,#f8d9a77d,transparent 45%),
    linear-gradient(136deg,#fffdf6,#fff1db 80%,#f8e2c9);
  color:#3f2a1b;border-color:#e8c59b;box-shadow:0 8px 22px #a36d2612;
}
.result .result-date{color:#94602f}
.result .result-main{color:#3e2a1a}
.result .result-sub{color:#66513b}
.result .next-action{background:#fffdf4af;border-color:#eacda9;color:#72502c}
.result .next-action strong{color:#5d3b1d}
.muted-placeholder{color:#79624b}
.tarot-card{
  background:radial-gradient(circle at 46% 35%,#fff7df,#f5d6a4 59%,#e8bb83 100%);
  color:#69411d;border-color:#bf864a;box-shadow:0 8px 16px #9e68252b;
}
.tarot-card:hover,.tarot-card:focus-visible{outline-color:#a97e40}
.tarot-card[disabled]{opacity:.56}
@media(max-width:850px){.hero::before{width:43%;opacity:.59}}
@media(max-width:480px){
 .hero::before{width:77%;height:56%;top:auto;bottom:0;opacity:.30;
   -webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 40%);
   mask-image:linear-gradient(to bottom,transparent 0%,#000 40%)}
 .hero::after{color:#a7774380}
 .pill{background:#fffaf0d9}
}

/* JJ 운세관: free / paid / mixed labels, not an active checkout. */
.collection-hero .hero-meta{max-width:850px}
.collection-hero .hero p{max-width:760px}
.collection-jump{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:21px 0 27px}
.collection-jump a{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:19px 20px;min-height:94px;border:1px solid #ecd5b2;background:linear-gradient(160deg,#fffefa,#fff3e0);border-radius:17px;text-decoration:none;box-shadow:0 8px 20px #a7732b0c}
.collection-jump a strong{font-size:17px;color:#4e3220;letter-spacing:-.04em}
.collection-jump a span{font-size:12px;color:#70533c}
.collection-jump a:focus-visible{outline:3px solid #ba874b;outline-offset:3px}
.category{scroll-margin-top:20px}
.category-head span{max-width:55%;text-align:right;line-height:1.45}
.section-helper{font-size:13px;line-height:1.75;color:#665441;margin:0 0 14px}
.category-subhead{display:flex;justify-content:space-between;align-items:center;margin:30px 0 13px;border-bottom:1px solid var(--line);padding-bottom:10px}
.category-subhead h4{font-size:16px;margin:0;color:#523e2d}
.category-subhead span{font-size:12px;color:var(--muted)}
.feature{position:relative}
.feature-badge{display:inline-flex;align-items:center;min-height:26px;padding:5px 10px;border-radius:999px;font-size:11px;line-height:1.25;font-weight:800;margin-bottom:12px}
.feature-badge.free{background:#ecf4e7;color:#3c653d;border:1px solid #cadfbb}
.feature-badge.paid{background:#fce8cc;color:#88521c;border:1px solid #e4c69b}
.feature-badge.hybrid{background:#eaf1ff;color:#345b94;border:1px solid #cadcf9}
.feature.soon{background:#fffaf1;color:#5e554e;border:1px solid #e8d5b9;border-style:dashed}
.feature.soon .feature-badge{filter:none}
.feature .feature-note{font-size:11px;color:#877664;line-height:1.45;display:block;margin-top:9px}
.feature .state{padding-top:14px}
.pricing-note{border:1px solid #edd4ae;background:linear-gradient(145deg,#fffefb,#fff1dd);padding:24px 27px;border-radius:21px;margin:34px 0 24px;color:#513a27}
.pricing-note h3{margin:0 0 11px;font-size:19px}
.pricing-note p{font-size:13px;line-height:1.85;margin:9px 0 0}
.pricing-note a{font-weight:800;color:#86552a;text-underline-offset:3px}
@media(max-width:760px){.collection-jump{grid-template-columns:1fr;gap:9px}.collection-jump a{min-height:68px;padding:13px 16px;gap:4px}.collection-jump a strong{font-size:15px}}
@media(max-width:480px){.collection-jump{margin:15px 0 20px}.feature-badge{font-size:10px;padding:5px 7px;margin-bottom:8px}.category-head span{font-size:11px}.section-helper{font-size:12px}.feature .feature-note{font-size:10px}.pricing-note{padding:20px 18px}}
@media(max-width:350px){.feature .feature-badge{font-size:9.5px;letter-spacing:-.03em}}


/* JJ design unification — 2026-11-03 / play collection and subpages only.
   Visual changes. Keep products, controls, pricing, links and JS untouched. */
.site-header{
  padding-top:15px;
  padding-bottom:15px;
}
.site-header .brand-mark{
  width:38px;
  height:38px;
  border-radius:10px;
  box-shadow:0 4px 12px rgba(86,54,21,.12);
}
.site-header .site-link{
  padding:7px 3px;
  min-height:44px;
  border:none;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  color:#6e4d2a;
  text-decoration:underline;
  text-underline-offset:4px;
  font-weight:750;
}
.site-header .site-link:hover,
.site-header .site-link:focus-visible{
  color:#3f2b1b;
  background:transparent;
  border:none;
}
.hero{
  border-radius:22px;
  padding:34px clamp(22px,4vw,44px) 38px;
  box-shadow:0 12px 30px rgba(77,52,26,.13);
}
.hero h1{margin-top:9px;margin-bottom:12px;line-height:1.2;letter-spacing:-.035em}
.hero>p{max-width:790px;margin-top:0;line-height:1.6}
.hero .eyebrow{letter-spacing:.1em}
.collection-hero{padding-top:39px;padding-bottom:39px}
.hero-meta{gap:8px 18px;align-items:center;flex-wrap:wrap}
.hero-meta .pill{
  padding:2px 0;
  margin:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  color:#f7dfb5;
  font-size:12px;
  line-height:1.35;
}
.panel-title{margin-top:26px;margin-bottom:14px}
.panel-title h2{line-height:1.3;letter-spacing:-.03em}
.panel-title p{line-height:1.55}
.feature{
  border-radius:18px;
  box-shadow:0 5px 16px rgba(79,50,20,.07);
}
.cardbox{
  border-radius:18px;
  box-shadow:0 7px 18px rgba(79,50,20,.07);
}
.workarea{margin-top:16px}
@media(max-width:700px){
  .site-header{padding-top:11px;padding-bottom:11px;gap:8px}
  .site-header .brand-mark{width:35px;height:35px}
  .site-header .site-link{padding:5px 2px;min-height:44px}
  .hero{padding:25px 20px 30px;border-radius:18px}
  .collection-hero{padding:29px 20px 31px}
  .hero-meta{gap:4px 11px}
  .hero-meta .pill{font-size:11px}
  .panel-title{margin-top:20px;margin-bottom:11px}
  .feature{border-radius:16px}
  .cardbox{border-radius:16px}
}


html body .shell,html body .shell.jj-year-preview{
  box-sizing:border-box!important;
  width:calc(100% - 36px)!important;
  max-width:1560px!important;
  margin-left:auto!important;margin-right:auto!important;
}
