:root{--ivory:#f7f4ee;--paper:#fffdf9;--ink:#15201d;--ink2:#46524e;--muted:#6f7a76;--line:#e4ddd0;--green:#0f3b35;--green2:#1c5a50;--gold:#c59a4b;--gold2:#a77c30;--red:#a6452e;--ok:#2f6b4f;--r:16px;--sh:0 1px 2px rgba(21,32,29,.05),0 8px 24px -12px rgba(21,32,29,.18);--serif:"Fraunces",Georgia,"Noto Serif","Songti SC",serif;--sans:Inter,system-ui,-apple-system,"Segoe UI","Noto Sans","PingFang SC","Microsoft YaHei","Noto Sans Arabic",Tahoma,sans-serif}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--ivory);color:var(--ink);font:16px/1.6 var(--sans);overflow-x:hidden}
[lang=zh-Hans] body,[lang=zh-Hans]{--serif:"Noto Serif SC","Songti SC",serif}[dir=rtl]{--serif:"Noto Naskh Arabic",Georgia,serif}
a{color:var(--green2)}a:hover{color:var(--gold2)}img,svg{max-width:100%}
h1,h2,h3{font-family:var(--serif);font-weight:650;line-height:1.15;letter-spacing:-.01em;margin:0 0 .5em}
h1{font-size:clamp(2rem,4.6vw,3.4rem)}h2{font-size:clamp(1.35rem,2.6vw,1.9rem)}h3{font-size:1.15rem}
p{margin:0 0 1em}.lead{font-size:1.15rem;color:var(--ink2);max-width:62ch}.muted{color:var(--muted)}.small{font-size:.88rem}.note{font-size:.9rem;color:var(--muted)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.wrap{max-width:1180px;margin:0 auto;padding:0 16px}.narrow{max-width:820px}.sec{padding:48px 16px}.pt{padding-top:24px}.mt{margin-top:2em}.center{text-align:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45em;border:1px solid var(--green);background:var(--green);color:#fff;border-radius:999px;padding:.72em 1.25em;font:600 .95rem var(--sans);cursor:pointer;text-decoration:none;transition:transform .15s,background .15s;white-space:nowrap}
.btn:hover{background:var(--green2);color:#fff;transform:translateY(-1px)}.btn.sm{padding:.5em .9em;font-size:.85rem}
.btn.gold{background:var(--gold);border-color:var(--gold);color:#1c1408}.btn.gold:hover{background:var(--gold2);color:#fff}
.btn.ghost{background:transparent;color:var(--green)}.btn.ghost:hover{background:#0f3b350d;color:var(--green)}.btn.ghost-l{background:transparent;border-color:#ffffff66;color:#fff}
.btn svg{width:1.05em;height:1.05em;fill:none;stroke:currentColor;stroke-width:2}.btn[aria-pressed=true]{background:var(--green);color:#fff}.btn[aria-pressed=true] svg{fill:currentColor}
.link{background:none;border:0;color:var(--green2);text-decoration:underline;cursor:pointer;font:inherit}
/* header */
.top{position:sticky;top:0;z-index:20;background:#f7f4eee8;backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}
.top-in{display:flex;align-items:center;gap:20px;height:66px}.brand{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--ink);font:650 1.35rem var(--serif)}.logo-mark{width:30px;height:30px}
.nav{display:flex;gap:22px;margin-inline-start:12px}.nav a{color:var(--ink2);text-decoration:none;font-weight:500;font-size:.95rem}.nav a[aria-current],.nav a:hover{color:var(--green)}
.top-act{margin-inline-start:auto;display:flex;align-items:center;gap:8px}
.icon-btn{position:relative;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;color:var(--green)}.icon-btn:hover{background:#0f3b3510}.icon-btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2}
.cnt{position:absolute;top:2px;inset-inline-end:0;min-width:17px;height:17px;border-radius:9px;background:var(--gold);color:#1c1408;font:700 10px/17px var(--sans);text-align:center;padding:0 4px}.cnt:empty{display:none}
.lang{position:relative}.lang summary{list-style:none;cursor:pointer;font-weight:600;font-size:.85rem;padding:8px 10px;border:1px solid var(--line);border-radius:999px}.lang summary::-webkit-details-marker{display:none}
.lang div{position:absolute;inset-inline-end:0;top:44px;background:var(--paper);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh);padding:6px;min-width:170px;display:grid}
.lang a{padding:7px 10px;border-radius:8px;text-decoration:none;color:var(--ink)}.lang a:hover,.lang a[aria-current]{background:#0f3b3510}
.burger{display:none;width:40px;height:40px;border:0;background:none;cursor:pointer;flex-direction:column;justify-content:center;gap:6px;padding:9px}.burger span{display:block;height:2px;background:var(--ink);border-radius:2px}
@media(max-width:980px){.nav{display:none;position:absolute;top:66px;inset-inline:0;background:var(--paper);flex-direction:column;gap:0;padding:8px 16px 16px;border-bottom:1px solid var(--line);margin:0}.nav a{padding:12px 0;border-bottom:1px solid var(--line)}.nav.open{display:flex}.burger{display:flex}.hide-m{display:none}}
/* hero */
.hero{background:radial-gradient(1200px 500px at 85% -10%,#c59a4b2e,transparent 60%),linear-gradient(180deg,var(--ivory),#efe9dd);border-bottom:1px solid var(--line)}
.hero-in{display:grid;grid-template-columns:1.25fr 1fr;gap:40px;align-items:center;padding:64px 16px 40px}
.kicker{font:600 .78rem var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--gold2);margin-bottom:.8em}
.hero-search{display:flex;gap:8px;background:var(--paper);padding:6px;border-radius:999px;box-shadow:var(--sh);max-width:560px;margin-top:20px}
.hero-search input{flex:1;min-width:0;border:0;background:none;font:16px var(--sans);padding:0 14px;outline:0}
.hero-links a{font-weight:600}
.hero-art{position:relative;min-height:320px}.iso{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.iso-t{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:20px 16px;display:grid;justify-items:center;gap:8px;color:var(--green);box-shadow:var(--sh);animation:float 7s ease-in-out infinite}
.iso-t span{font-size:.82rem;color:var(--ink2);text-align:center}.iso-t.i1{transform:translateY(22px);animation-delay:-2s}.iso-t.i3{transform:translateY(22px);animation-delay:-4s}.iso-t.i2{animation-delay:-1s}
.iso-t .ti{width:88px;height:76px}
@keyframes float{50%{translate:0 -8px}}@media (prefers-reduced-motion:reduce){.iso-t{animation:none}}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding-bottom:34px}.stats div{border-top:2px solid var(--green);padding-top:10px}.stats b{display:block;font:650 2rem var(--serif);color:var(--green)}.stats span{color:var(--ink2);font-size:.9rem}
@media(max-width:860px){.hero-in{grid-template-columns:1fr;padding-top:36px}.hero-art{min-height:0}.iso{grid-template-columns:repeat(4,1fr);gap:8px}.iso-t{padding:12px 6px;transform:none!important}.iso-t .ti{width:48px;height:42px}.iso-t span{font-size:.7rem}.stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.hero-search{flex-direction:column;border-radius:18px}.hero-search input{padding:10px 12px}}
/* sections */
.sec-h{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.grid{display:grid;gap:18px}.cards{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.three{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
@media(max-width:360px){.cards{grid-template-columns:1fr}}
.uses{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.use{display:grid;gap:6px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:20px;text-decoration:none;color:var(--ink);transition:.2s}.use:hover{border-color:var(--gold);transform:translateY(-2px);color:var(--ink)}
.use .ti{width:56px;height:48px;color:var(--green)}.use span{font:650 1.1rem var(--serif)}.use small{color:var(--gold2);font-weight:600}
@media(max-width:860px){.uses{grid-template-columns:1fr 1fr}}
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:18px;box-shadow:var(--sh);display:flex;flex-direction:column;gap:12px}
.fc-top{display:flex;align-items:center;gap:12px}.fc-h{flex:1;min-width:0}.fc-h h3{margin:0;font-size:1.12rem}.fc-h h3 a{color:var(--ink);text-decoration:none}.fc-h h3 a:hover{color:var(--green2)}.fc-h p{margin:0;font-size:.85rem}
.rank{font:650 .85rem var(--serif);color:var(--gold2);min-width:26px}
.avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--green);color:#f3e6c8;font:650 1rem var(--serif);flex:none}.avatar.lg{width:80px;height:80px;font-size:1.8rem;border-radius:20px}
.ring{position:relative;width:var(--s);height:var(--s);flex:none;display:grid;place-items:center}.ring svg{position:absolute;inset:0;transform:rotate(-90deg)}.ring circle{fill:none;stroke-width:5}.rb{stroke:#0f3b3514}.rf{stroke:var(--gold);stroke-linecap:round}.ring b{font:650 calc(var(--s)*.32) var(--serif);color:var(--green)}
[dir=rtl] .ring svg{transform:rotate(-90deg) scaleY(-1)}
.chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.chips li,.chips a{display:inline-flex;align-items:center;gap:5px;font-size:.78rem;background:#0f3b350c;color:var(--green);border-radius:999px;padding:4px 10px;text-decoration:none}
.chips.big li,.chips.big a{font-size:.9rem;padding:6px 12px}.ti.xs{width:18px;height:16px}
.mini{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}.mini dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.mini dd{margin:0;font-size:.88rem}
.fc-act{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto}.fc-act .btn:last-child{margin-inline-start:auto}
.badge-unv{font-size:.74rem;color:var(--muted);margin:0}.badge-unv::before{content:"○ "}
.band{background:var(--green);color:#f4efe4}.band a{color:var(--gold)}.band .note{color:#cfd9d4}
.cubes-sec{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center;padding:56px 16px}@media(max-width:860px){.cubes-sec{grid-template-columns:1fr}}
.cube-list{list-style:none;margin:0;padding:0;display:grid;gap:14px}.cube-list li{display:flex;align-items:center;gap:14px;background:#ffffff0d;border:1px solid #ffffff22;border-radius:14px;padding:14px 16px}
.cubes-panel .cube-list li{background:var(--ivory);border-color:var(--line)}
.cubes{display:inline-flex;gap:3px;color:var(--gold);min-width:84px}.cube{width:26px;height:26px}
.why{border-top:2px solid var(--gold);padding-top:14px}
.types-g{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.tcard{display:grid;justify-items:start;gap:6px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:16px;text-decoration:none;color:var(--ink)}.tcard:hover{border-color:var(--gold)}.tcard .ti{width:52px;height:46px;color:var(--green)}.tcard small{color:var(--muted)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media(max-width:860px){.split{grid-template-columns:1fr}}
.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:24px;margin-bottom:18px}.panel.dark{background:var(--green);color:#f4efe4;border:0}.panel.dark h2{color:#fff}
.price{font:650 1.4rem var(--serif);color:var(--gold2)}.panel.dark .price{color:var(--gold)}
.news-big{text-align:center}.news-big .news{justify-content:center;margin:auto}
.news{display:flex;flex-wrap:wrap;gap:8px;max-width:480px}.news input{flex:1;min-width:180px;padding:.7em 1em;border:1px solid var(--line);border-radius:999px;font:15px var(--sans);background:var(--paper)}.news .msg{flex-basis:100%;margin:0;font-size:.88rem}
/* listing */
.filters{display:flex;flex-wrap:wrap;gap:12px;align-items:end;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:14px;margin:20px 0 10px;position:sticky;top:74px;z-index:5}
.filters label{display:grid;gap:4px;font-size:.78rem;color:var(--muted)}.filters .grow{flex:1;min-width:200px}
.filters input,.filters select{font:15px var(--sans);padding:.6em .8em;border:1px solid var(--line);border-radius:10px;background:var(--ivory);color:var(--ink);min-width:0;width:100%}
@media(max-width:700px){.filters{position:static}.filters label{flex:1 1 45%}}
.empty{padding:30px;text-align:center;background:var(--paper);border-radius:var(--r)}
/* factory */
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0 0 16px;font-size:.85rem;color:var(--muted)}.crumbs li+li::before{content:"/";margin-inline-end:6px;color:#c9c0ae}.crumbs a{color:var(--muted)}
.fp-head{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.fp-t{flex:1;min-width:240px}.fp-t h1{margin-bottom:.15em}
.fp-act{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 26px}
.fp-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:18px}.fp-grid>*,.split>*,.cubes-sec>*{min-width:0}@media(max-width:900px){.fp-grid{grid-template-columns:1fr}}
.facts{margin:0;display:grid;gap:12px}.facts div{display:grid;grid-template-columns:42% 1fr;gap:10px;border-bottom:1px solid var(--line);padding-bottom:10px}.facts dt{color:var(--muted);font-size:.85rem}.facts dd{margin:0;font-size:.92rem;overflow-wrap:anywhere}
.ticks,.warns{list-style:none;padding:0;margin:0 0 1.2em;display:grid;gap:8px}.ticks li,.warns li{padding-inline-start:28px;position:relative}
.ticks li::before{content:"";position:absolute;inset-inline-start:0;top:.35em;width:16px;height:16px;border-radius:50%;background:var(--ok) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8l3 3 5-6' fill='none' stroke='%23fff' stroke-width='2'/%3E%3C/svg%3E")}
.warns li::before{content:"!";position:absolute;inset-inline-start:0;top:.25em;width:16px;height:16px;border-radius:50%;background:var(--gold);color:#1c1408;font:700 11px/16px var(--sans);text-align:center}
.plain{padding-inline-start:18px}.src{padding-inline-start:20px;font-size:.88rem}.src li{margin-bottom:6px}
.tbl{overflow-x:auto;border:1px solid var(--line);border-radius:12px;margin-bottom:1em}table{border-collapse:collapse;width:100%;font-size:.88rem}th,td{padding:9px 12px;text-align:start;border-bottom:1px solid var(--line);vertical-align:top}th{background:#0f3b350a;font-weight:600;white-space:nowrap}
.bars{display:grid;gap:12px}.bar{display:grid;grid-template-columns:minmax(120px,38%) 1fr 54px;gap:10px;align-items:center;font-size:.9rem}.bar i{height:10px;border-radius:6px;background:#0f3b3512;position:relative;overflow:hidden}.bar i::after{content:"";position:absolute;inset:0;width:var(--w);background:linear-gradient(90deg,var(--green2),var(--gold));border-radius:6px}.bar b{text-align:end;font-weight:600}
.type-head{display:flex;gap:20px;align-items:center;margin-bottom:24px}.ti.big{width:110px;height:96px;color:var(--green);flex:none}@media(max-width:600px){.type-head{flex-direction:column;align-items:start}}
.types-list{display:grid;gap:14px}.trow{display:flex;gap:20px;align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:20px;text-decoration:none;color:var(--ink)}.trow:hover{border-color:var(--gold)}.trow .ti{width:84px;height:72px;color:var(--green);flex:none}.trow h2{font-size:1.25rem;margin-bottom:.25em}.trow p{color:var(--ink2);margin-bottom:.4em}.trow small{color:var(--gold2);font-weight:600}
@media(max-width:560px){.trow{flex-direction:column;align-items:start}}
/* forms */
.lead{}.form-panel h2{margin-bottom:.3em}form.lead{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}form.lead .full{grid-column:1/-1}
form.lead label{display:grid;gap:5px;font-size:.85rem;color:var(--ink2)}form.lead input,form.lead textarea{font:15px var(--sans);padding:.7em .85em;border:1px solid var(--line);border-radius:10px;background:var(--ivory);color:var(--ink);width:100%}
form.lead input:focus,form.lead textarea:focus,.filters input:focus,.filters select:focus,.news input:focus{outline:2px solid var(--gold);outline-offset:1px}
.form-end{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.msg{font-weight:600;color:var(--ok);margin:0}.msg.err{color:var(--red)}.hp{display:none}
@media(max-width:600px){form.lead{grid-template-columns:1fr}}
/* guide */
.steps{counter-reset:s;list-style:none;padding:0;display:grid;gap:14px;margin:24px 0}.steps li{counter-increment:s;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:20px 20px 14px;padding-inline-start:74px;position:relative}
.steps li::before{content:counter(s);position:absolute;inset-inline-start:20px;top:18px;width:38px;height:38px;border-radius:50%;background:var(--green);color:#f3e6c8;display:grid;place-items:center;font:650 1.05rem var(--serif)}.steps h2{font-size:1.2rem;margin-bottom:.3em}
.cta-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.cta-row p{margin:0;flex:1;min-width:220px;font-weight:600}
.faq details{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:14px 18px;margin-bottom:10px}.faq summary{cursor:pointer;font-weight:600}.faq p{margin:.7em 0 0;color:var(--ink2)}
.parts{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:20px 0}.parts .panel{margin:0}@media(max-width:700px){.parts{grid-template-columns:1fr}}
.calc{display:grid;grid-template-columns:1fr 1fr;gap:14px}.calc label{display:grid;gap:5px;font-size:.85rem;color:var(--ink2)}.calc input{font:16px var(--sans);padding:.7em .85em;border:1px solid var(--line);border-radius:10px;background:var(--ivory);width:100%}
.calc .full{grid-column:1/-1}.calc-out{background:var(--green);color:#fff;border-radius:14px;padding:18px;display:grid;gap:4px}.calc-out b{font:650 2.1rem var(--serif);color:var(--gold)}@media(max-width:560px){.calc{grid-template-columns:1fr}}
.cmp table td:first-child,.cmp table th:first-child{position:sticky;inset-inline-start:0;background:var(--paper);font-weight:600;color:var(--muted)}.cmp th{min-width:180px}
.big404{font:650 6rem var(--serif);color:var(--gold);margin:0}
/* footer */
.foot{background:#11201d;color:#c9d2ce;margin-top:56px;padding:48px 0 24px}.foot a{color:#e8e1d2;text-decoration:none}.foot a:hover{color:var(--gold)}.foot .brand{color:#fff}.foot h3{color:#fff;font-size:1rem}
.foot-in{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:28px}.foot ul{list-style:none;padding:0;margin:0;display:grid;gap:8px;font-size:.92rem}
.foot .news input{background:#ffffff10;border-color:#ffffff30;color:#fff}.foot-b{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid #ffffff1c;margin-top:30px;padding-top:18px;font-size:.82rem}
@media(max-width:860px){.foot-in{grid-template-columns:1fr 1fr}.foot-brand{grid-column:1/-1}}
.toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;padding:10px 16px;border-radius:999px;font-size:.9rem;z-index:50}
.suggest{background:var(--gold);color:#1c1408;text-align:center;padding:8px 40px;font-size:.9rem;position:relative}.suggest a{color:#1c1408;font-weight:700}.suggest button{position:absolute;inset-inline-end:8px;top:4px;border:0;background:none;font-size:1.2rem;cursor:pointer}
.use,.tcard,.card{min-width:0}.use span,.use small,.tcard b,.fc-h h3,.trow h2{overflow-wrap:anywhere;hyphens:auto}
