:root{--paper:#f3f0e7;--paper-light:#fbf9f2;--ink:#303b35;--green:#617a67;--muted:#85877e;--gold:#b59a6e;--red:#a65c49;--line:rgba(48,59,53,.15);--serif:"Noto Serif SC","Songti SC","STSong",serif;--sans:"PingFang SC","Microsoft YaHei",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.shop-shell{max-width:1240px;margin:auto;padding:0 54px}.topbar{height:68px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;font-size:12px;color:var(--muted);letter-spacing:.06em}.back-link{justify-self:start}.shop-mark{justify-self:center;color:var(--ink);font:15px var(--serif);letter-spacing:.1em}.topbar-note{justify-self:end}.shop-hero{min-height:550px;position:relative;display:flex;align-items:center;padding:68px 9% 80px;overflow:hidden;border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 72% 48%,rgba(220,213,193,.36),transparent 38%)}.hero-copy{position:relative;z-index:2;max-width:590px}.eyebrow{font-size:10px;letter-spacing:.16em;color:var(--green);text-transform:uppercase}.eyebrow span{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--red);vertical-align:2px;margin-right:5px}.shop-hero h1{font:500 clamp(38px,5vw,60px)/1.55 var(--serif);letter-spacing:.05em;margin:19px 0 0}.hero-subtitle{font:500 19px var(--serif);letter-spacing:.2em;color:var(--red);margin:4px 0 0}.hero-rule{width:38px;height:1px;background:var(--gold);margin:25px 0 16px}.hero-text{max-width:475px;color:#656c63;font-size:13px;line-height:2.15;letter-spacing:.035em;margin:0}.hero-cta{display:inline-flex;gap:28px;align-items:center;margin-top:28px;padding:11px 0;border-bottom:1px solid var(--gold);font:13px var(--serif);letter-spacing:.08em;color:var(--green)}.hero-cta span{font-family:var(--sans);font-size:15px;color:var(--gold)}.hero-art{position:absolute;width:390px;height:390px;right:9%;top:50%;transform:translateY(-50%);display:grid;place-items:center}.orbit{position:absolute;border:1px solid rgba(97,122,103,.19);border-radius:50%}.orbit-one{inset:16px}.orbit-two{inset:49px;border-color:rgba(181,154,110,.35)}.five-seal{position:relative;width:248px;height:248px;border:1px solid rgba(181,154,110,.52);border-radius:50%;display:grid;grid-template-columns:1fr 1fr;place-items:center;color:var(--green);font:19px var(--serif);background:radial-gradient(circle,#f8f5ec 0,#f3f0e7 72%);box-shadow:0 20px 60px rgba(50,55,42,.07)}.five-seal:before,.five-seal:after{content:"";position:absolute;inset:15px;border:1px solid rgba(97,122,103,.15);border-radius:50%}.five-seal:after{inset:42px;border-color:rgba(181,154,110,.25)}.five-seal span{z-index:1}.five-seal span:nth-child(1){transform:translate(28px,5px);color:#aa8950}.five-seal span:nth-child(2){transform:translate(0,15px);color:#71866a}.five-seal span:nth-child(3){transform:translate(-17px,4px);color:#9c805d}.five-seal span:nth-child(4){transform:translate(-12px,-15px);color:#aa6653}.five-seal span:nth-child(5){transform:translate(14px,-17px);color:#657d89}.five-seal b{position:absolute;z-index:2;font:13px/1.7 var(--serif);text-align:center;color:var(--ink);letter-spacing:.13em}.seal-dot{position:absolute;right:26px;bottom:72px;width:9px;height:9px;background:var(--red);border-radius:50%;box-shadow:0 0 0 6px rgba(166,92,73,.1)}.hero-footnote{position:absolute;bottom:25px;left:9%;font-size:10px;letter-spacing:.2em;color:var(--gold)}.collection{padding:72px 6% 84px}.section-heading{display:flex;justify-content:space-between;align-items:end}.section-heading .eyebrow{margin:0 0 11px;font-size:9px;color:var(--gold)}.section-heading h2{font:500 29px var(--serif);letter-spacing:.09em;margin:0}.section-intro{font-size:12px;color:var(--muted);margin:11px 0 0;letter-spacing:.04em}.section-index{font:11px var(--serif);color:#a4a294;letter-spacing:.12em;padding-bottom:5px}.element-tabs{display:flex;gap:10px;margin-top:32px;flex-wrap:wrap}.element-tab{height:65px;min-width:100px;border:1px solid var(--line);background:rgba(251,249,242,.55);color:var(--ink);display:flex;align-items:center;justify-content:center;gap:9px;cursor:pointer;font:13px var(--serif);letter-spacing:.08em;transition:.2s}.element-tab:hover,.element-tab.active{border-color:var(--green);background:var(--green);color:#f7f4eb}.element-mark{display:inline-grid;place-items:center;width:27px;height:27px;border:1px solid currentColor;border-radius:50%;font:13px var(--serif);font-style:normal}.metal{color:#b99d66}.wood{color:#7c9272}.water{color:#8398a0}.fire{color:#bb7964}.earth{color:#b39a76}.combo{color:#b99d66}.element-tab.active .element-mark{color:#f3e9d4;border-color:rgba(243,233,212,.55)}.combo-filter{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:16px 0 0}.combo-filter>span{font-size:11px;color:var(--muted);margin-right:5px}.combo-filter button{padding:7px 12px;border:1px solid transparent;background:transparent;color:#75796f;border-radius:20px;font-size:11px;cursor:pointer}.combo-filter button:hover,.combo-filter button.active{border-color:rgba(181,154,110,.65);background:rgba(181,154,110,.12);color:#816b48}.results-bar{display:flex;justify-content:space-between;align-items:center;margin:32px 0 14px;padding:11px 0;border-top:1px solid var(--line);font-size:11px;color:var(--muted);letter-spacing:.04em}.results-bar span:first-child{color:var(--ink)}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.product-card{background:var(--paper-light);border:1px solid rgba(48,59,53,.12);transition:transform .22s,box-shadow .22s}.product-card:hover{transform:translateY(-3px);box-shadow:0 13px 34px rgba(48,59,53,.09)}.product-open{display:block;padding:0;width:100%;border:0;background:none;color:inherit;text-align:left;cursor:pointer}.product-image{height:275px;position:relative;overflow:hidden;background:#e7e1d4}.product-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .5s}.product-card:hover .product-image img{transform:scale(1.035)}.image-element{position:absolute;top:14px;left:14px;min-width:39px;height:39px;padding:0 8px;border:1px solid rgba(255,255,255,.75);border-radius:50px;display:grid;place-items:center;background:rgba(247,244,235,.86);color:var(--element);font:13px var(--serif)}.image-placeholder{height:100%;display:grid;place-content:center;text-align:center;color:#7e897a;background:radial-gradient(circle,#f5f1e5,#d9d3c4)}.image-placeholder span{font:17px var(--serif);letter-spacing:.2em}.image-placeholder i{font:italic 11px var(--serif);margin-top:8px;color:#a18a60}.product-body{padding:17px 18px 16px}.product-kicker{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.12em;color:var(--element)}.product-kicker span{width:3px;height:3px;border-radius:50%;background:#b8aa90}.product-body h3{font:500 19px/1.5 var(--serif);letter-spacing:.045em;margin:8px 0 13px}.product-info{border-top:1px solid rgba(48,59,53,.12);margin:0}.product-info>div{display:grid;grid-template-columns:42px 1fr;gap:8px;padding:8px 0;border-bottom:1px solid rgba(48,59,53,.08)}.product-info dt,.dialog-info dt{font-size:10px;letter-spacing:.08em;color:#9c8a68}.product-info dd{margin:0;color:#747970;font-size:11px;line-height:1.75}.view-detail{display:flex;justify-content:space-between;align-items:center;margin-top:13px;color:var(--green);font-size:10px;letter-spacing:.06em}.view-detail b{font-weight:400;color:var(--gold);font-size:15px}.empty{grid-column:1/-1;padding:45px;text-align:center;color:var(--muted);font:16px var(--serif)}.shop-footer{text-align:center;padding:48px 0 55px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}.footer-seal{margin:auto auto 12px;width:38px;height:38px;border:1px solid var(--gold);display:grid;place-items:center;color:var(--red);font:11px var(--serif);writing-mode:vertical-rl}.footer-title{font:17px var(--serif);letter-spacing:.12em;color:var(--ink);margin:0 0 7px}.shop-footer>p:not(.footer-title){margin:0}.shop-footer>a{display:inline-block;margin-top:20px;color:var(--green);font-size:11px}.shop-footer>a span{color:var(--gold);margin-left:8px}dialog{width:min(92vw,520px);max-height:85vh;overflow:auto;border:1px solid var(--line);background:var(--paper-light);color:var(--ink);padding:35px;box-shadow:0 22px 90px #18231e44}dialog::backdrop{background:#24312880;backdrop-filter:blur(3px)}.dialog-close{position:sticky;float:right;top:0;border:0;background:none;color:var(--muted);font-size:25px;cursor:pointer}.dialog-kicker{font-size:10px;letter-spacing:.14em;color:var(--gold);margin:8px 0}.dialog-info{margin-top:22px;border-top:1px solid var(--line)}.dialog-info>div{display:grid;grid-template-columns:58px 1fr;gap:12px;padding:14px 0;border-bottom:1px solid rgba(48,59,53,.1)}.dialog-info dd{margin:0;color:#6d756d;font-size:13px;line-height:1.8}.variant-list{list-style:none;padding:0;margin:0}.variant-list li{padding:4px 0}.dialog h2{font:25px var(--serif);margin:8px 0 20px}.dialog-info dt{padding-top:4px}
@media(max-width:900px){.shop-shell{padding:0 28px}.shop-hero{padding-left:5%;min-height:500px}.hero-art{right:2%;transform:translateY(-50%) scale(.83)}.hero-copy{max-width:52%}.shop-hero h1{font-size:43px}.collection{padding-left:2%;padding-right:2%}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-image{height:260px}}
@media(max-width:620px){.shop-shell{padding:0 17px}.topbar{height:58px;font-size:10px}.shop-mark{font-size:13px}.shop-hero{min-height:0;padding:65px 5% 55px;display:block;background:radial-gradient(ellipse at 83% 30%,rgba(220,213,193,.4),transparent 42%)}.hero-copy{max-width:none}.shop-hero h1{font-size:38px;line-height:1.48;margin-top:17px}.hero-subtitle{font-size:16px}.hero-text{font-size:12px;max-width:100%}.hero-art{position:relative;right:auto;top:auto;transform:none;width:220px;height:220px;margin:35px auto 0}.five-seal{width:155px;height:155px;font-size:14px}.five-seal:before{inset:10px}.five-seal:after{inset:27px}.five-seal b{font-size:10px}.five-seal span:nth-child(1){transform:translate(18px,3px)}.five-seal span:nth-child(2){transform:translate(0,10px)}.five-seal span:nth-child(3){transform:translate(-10px,3px)}.five-seal span:nth-child(4){transform:translate(-8px,-10px)}.five-seal span:nth-child(5){transform:translate(8px,-10px)}.seal-dot{right:18px;bottom:35px;width:7px;height:7px}.hero-footnote{left:5%;bottom:17px;font-size:8px}.collection{padding:51px 0 58px}.section-heading h2{font-size:23px}.section-index{font-size:9px}.section-intro{font-size:11px}.element-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:22px}.element-tab{min-width:0;height:53px;font-size:11px;gap:6px}.element-mark{width:24px;height:24px;font-size:11px}.combo-filter{gap:2px}.combo-filter button{padding:7px 9px;font-size:10px}.results-bar{margin-top:23px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.product-image{height:185px}.product-body{padding:12px 11px}.product-body h3{font-size:15px;margin:6px 0 10px}.product-kicker{font-size:8px;letter-spacing:.08em}.product-info>div{grid-template-columns:33px 1fr;gap:5px;padding:6px 0}.product-info dt{font-size:9px}.product-info dd{font-size:10px;line-height:1.6}.view-detail{font-size:9px;margin-top:10px}.image-element{top:9px;left:9px;min-width:32px;height:32px;font-size:11px}.shop-footer{padding:38px 0 42px}}
@media(max-width:380px){.shop-shell{padding:0 12px}.shop-hero h1{font-size:33px}.product-image{height:160px}.product-body{padding:10px 9px}.product-body h3{font-size:14px}.product-info>div{grid-template-columns:29px 1fr}.product-info dd{font-size:9px}}

/* Personal five-element recommendation */
.personal-pick{margin:0 6%;padding:48px 5%;border:1px solid rgba(48,59,53,.13);background:linear-gradient(135deg,rgba(251,249,242,.9),rgba(236,231,218,.66));}
.pick-heading{max-width:740px;margin:0 auto 28px;text-align:center}
.pick-heading .eyebrow{margin:0 0 10px;color:var(--gold);font-size:9px}
.pick-heading h2{margin:0;font:500 25px/1.5 var(--serif);letter-spacing:.08em}
.pick-heading>p:last-child{margin:9px auto 0;color:var(--muted);font-size:12px;line-height:1.8}
.pick-panel{max-width:880px;margin:auto}
.pick-row{display:grid;grid-template-columns:176px 1fr;gap:12px 22px;align-items:center;padding:21px 0;border-top:1px solid var(--line)}
.pick-label{display:flex;align-items:center;gap:12px}
.pick-label>span{color:var(--gold);font:16px var(--serif)}
.pick-label strong,.pick-label small{display:block}
.pick-label strong{font:14px var(--serif);letter-spacing:.04em}
.pick-label small{margin-top:5px;color:var(--muted);font-size:10px}
.pick-options{display:flex;gap:8px;flex-wrap:wrap}
.pick-options button{min-height:42px;padding:8px 15px;border:1px solid rgba(48,59,53,.16);background:rgba(255,255,255,.38);color:var(--ink);font:12px var(--serif);cursor:pointer;transition:background .18s,border-color .18s,color .18s}
.element-choice button{min-width:54px;border-radius:24px}
.pick-options button:hover,.pick-options button.active{border-color:var(--green);background:var(--green);color:#f7f4eb}
.template-switch{grid-column:2;display:flex;gap:6px;margin-bottom:-3px}
.template-switch button{padding:6px 11px;border:1px solid transparent;border-radius:20px;background:transparent;color:var(--muted);font-size:10px;cursor:pointer}
.template-switch button.active,.template-switch button:hover{border-color:rgba(181,154,110,.55);background:rgba(181,154,110,.12);color:#816b48}
.wish-choice{grid-column:2}
.wish-choice button{min-height:38px;padding:8px 12px}
.pick-result{display:flex;align-items:center;gap:14px;margin-top:20px;padding:17px 18px;border:1px solid rgba(181,154,110,.32);background:rgba(181,154,110,.08)}
.result-seal{display:grid;place-items:center;flex:0 0 40px;height:40px;border:1px solid rgba(181,154,110,.65);border-radius:50%;color:var(--gold);font:11px var(--serif)}
.pick-result p{flex:1;margin:0;color:var(--muted);font-size:12px;line-height:1.8}
.pick-result p strong,.pick-result p small{display:block}
.pick-result p strong{color:var(--ink);font:15px var(--serif);letter-spacing:.04em}
.pick-result p small{margin-top:3px;color:var(--muted);font-size:10px}
.pick-result>button{min-height:38px;padding:0 16px;border:0;background:var(--green);color:#f7f4eb;font-size:11px;letter-spacing:.04em;cursor:pointer}
.pick-result>button:disabled{background:#b7b8ad;cursor:not-allowed}
.rule-details{margin-top:19px;color:var(--muted);font-size:11px}
.rule-details summary{width:max-content;color:var(--green);cursor:pointer}
.rule-table-wrap{margin-top:12px;overflow-x:auto}
.rule-table{width:100%;min-width:690px;border-collapse:collapse;text-align:center;background:rgba(255,255,255,.35)}
.rule-table th,.rule-table td{padding:9px 8px;border:1px solid rgba(48,59,53,.1);font-size:10px;font-weight:400}
.rule-table thead th{color:#816b48;background:rgba(181,154,110,.08)}
.rule-table tbody th{color:var(--green)}
.rule-details>p{margin:9px 0 0;line-height:1.8}
@media(max-width:700px){.personal-pick{margin:0 3%;padding:32px 5%}.pick-heading h2{font-size:21px}.pick-heading>p:last-child{font-size:11px}.pick-row{grid-template-columns:1fr;gap:13px;padding:17px 0}.template-switch,.wish-choice{grid-column:1}.pick-options button{min-height:38px;padding:7px 10px;font-size:11px}.element-choice button{min-width:43px}.pick-result{align-items:flex-start;flex-wrap:wrap;padding:14px}.pick-result p{min-width:calc(100% - 58px);padding-top:2px}.pick-result>button{width:100%;margin-top:2px}.rule-table{min-width:690px}}
.product-price,.dialog-price{margin:0 0 13px;color:var(--red);font:500 17px var(--serif);letter-spacing:.03em}.dialog-price{font-size:21px;margin:0 0 20px}.variant-list li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid rgba(48,59,53,.07)}.variant-list li:last-child{border-bottom:0}.variant-list li em{flex:0 0 auto;color:var(--red);font-style:normal;font-weight:500}
@media(max-width:620px){.product-price{font-size:15px;margin-bottom:10px}}

/* Only the five element labels orbit; the rings and center text remain still. */
.hero-spin{position:absolute;inset:0}
.five-seal .element-orbit{position:absolute;inset:0;border-radius:50%;animation:elementOrderSpin 48s linear infinite}
.five-seal .element-orbit span{position:absolute;left:50%;top:50%;z-index:1;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-82px) rotate(calc(var(--angle) * -1));font-style:normal}
.five-seal .element-orbit span i{display:inline-block;font-style:normal;animation:elementTextCounterSpin 48s linear infinite}
.five-seal .element-orbit .metal i{color:#aa6653}.five-seal .element-orbit .water i{color:#657d89}.five-seal .element-orbit .wood i{color:#71866a}.five-seal .element-orbit .fire i{color:#aa8950}.five-seal .element-orbit .earth i{color:#9c805d}
@media(max-width:620px){.five-seal .element-orbit span{transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-52px) rotate(calc(var(--angle) * -1))}}
@keyframes elementOrderSpin{to{transform:rotate(360deg)}}
@keyframes elementTextCounterSpin{to{transform:rotate(-360deg)}}
@media(prefers-reduced-motion:reduce){.five-seal .element-orbit,.five-seal .element-orbit span i{animation:none}}
