:root{
  --cream:#F4FBF4;--deep-bg:#E6F3E8;--surface:#FFFFFF;--secondary:#D8EEDC;
  --title:#0F3D24;--text:#1A3D28;--muted:#3E6B4E;--soft:#6A8A72;
  --green:#1F8A4C;--bright:#2EA860;--deep:#0F3D24;--leaf:#7AC994;--gold:#E8C458;
  --border:rgba(31,138,76,.18);--border-strong:rgba(31,138,76,.45);--shadow:0 14px 36px rgba(15,61,36,.12);
  --max:1220px;--radius:16px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--text);font:16px/1.78 system-ui,-apple-system,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;overflow-x:hidden}body.ui-locked{overflow:hidden}
a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(28px,4vw,32px);line-height:1.25;color:var(--title);letter-spacing:.01em}h2{font-size:clamp(22px,3vw,28px);line-height:1.35;color:var(--title)}h3{font-size:18px;line-height:1.45;color:var(--title)}p{margin-bottom:1em}.shell{width:min(calc(100% - 32px),var(--max));margin:0 auto}.shell-narrow{width:min(calc(100% - 32px),760px);margin:0 auto}.site-header{position:fixed;top:0;left:0;right:0;z-index:50}.top-fence{height:24px;background:var(--deep);color:var(--cream)}.top-fence-inner{height:24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.mini-brand{font-size:12px;font-weight:700;letter-spacing:.08em;white-space:nowrap}.text-button{border:0;background:transparent;color:var(--cream);font-size:12px;min-width:44px;height:24px;padding:0 6px}.text-button:focus-visible,.mini-brand:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.field-gate{height:72px;background:rgba(244,251,244,.97);border-bottom:1px solid var(--border);backdrop-filter:saturate(120%) blur(8px)}.gate-inner{height:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px}.brand-link{justify-self:start;display:flex;align-items:center;min-height:44px;max-width:220px}.brand-logo{height:34px;width:auto;max-width:200px;object-fit:contain;object-position:left center}.brand-text{font-size:24px;font-weight:900;color:var(--deep)}.basket-button,.app-link{min-height:44px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;font-weight:800}.basket-button{justify-self:center;border:1px solid var(--border-strong);background:var(--surface);color:var(--deep);padding:0 24px}.app-link{justify-self:end;padding:0 18px;background:linear-gradient(135deg,#2EA860 0%,#1F8A4C 55%,#0F3D24 100%);color:#fff}.ridge-nav{height:48px;background:var(--secondary);border-bottom:1px solid var(--border)}.ridge-inner{height:100%;display:flex;align-items:center;justify-content:center;gap:18px}.ridge-link{padding:7px 14px;border-radius:10px;font-weight:800;color:var(--deep)}.ridge-link.is-current{background:var(--green);color:#fff}.site-main{padding-top:176px;min-height:65vh}.page-hero,.section-block{padding:28px 0}.page-hero .intro{max-width:840px}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--green);font-size:13px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.eyebrow::before{content:"";width:22px;height:3px;border-radius:999px;background:var(--gold)}.lead{font-size:18px;line-height:1.85;color:var(--muted);max-width:900px}.hero-actions,.button-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.btn{min-height:44px;padding:10px 18px;border-radius:12px;font-weight:900;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent}.btn-primary{background:linear-gradient(135deg,#2EA860 0%,#1F8A4C 55%,#0F3D24 100%);color:#fff}.btn-secondary{background:var(--cream);border-color:var(--border-strong);color:var(--deep)}.btn:hover{transform:translateY(-1px)}.btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid rgba(232,196,88,.85);outline-offset:3px}.media-slot{width:100%;min-height:180px;border-radius:18px;background:var(--deep);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;overflow:hidden}.media-slot img{width:100%;height:100%;max-height:240px;object-fit:contain;object-position:center}.media-slot.hero-media{max-height:320px;min-height:220px}.media-slot.hero-media img{max-height:320px}.media-slot.app-media{max-height:420px;min-height:320px}.media-slot.app-media img{max-height:420px;width:100%;object-fit:contain}.media-fallback{width:100%;height:100%;min-height:inherit;display:flex;align-items:center;justify-content:center;padding:24px;color:var(--cream);font-weight:900;letter-spacing:.16em;background:linear-gradient(145deg,var(--deep),#185c35)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 22px rgba(15,61,36,.06);padding:22px}.card h2,.card h3{margin-bottom:8px}.card p:last-child{margin-bottom:0}.grid-2,.grid-3,.grid-4,.grid-6{display:grid;gap:18px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-6{grid-template-columns:repeat(3,minmax(0,1fr))}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}.section-head p{max-width:660px;margin-bottom:0;color:var(--muted)}.section-kicker{color:var(--green);font-weight:900;font-size:13px}.number-list{display:grid;gap:12px;counter-reset:item}.number-item{display:grid;grid-template-columns:64px 1fr;gap:14px;padding:18px;border-radius:16px;background:var(--surface);border:1px solid var(--border)}.number{font-size:34px;font-weight:950;color:var(--green);line-height:1}.number-item p{margin-bottom:0;color:var(--muted)}.shelf{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.shelf article{border-left:5px solid var(--green);padding:16px 18px;background:var(--surface);border-radius:12px;box-shadow:0 6px 18px rgba(15,61,36,.05)}.timeline{position:relative;display:grid;gap:18px;padding-left:28px}.timeline::before{content:"";position:absolute;left:8px;top:8px;bottom:8px;width:2px;background:var(--border-strong)}.timeline article{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:18px}.timeline article::before{content:"";position:absolute;left:-26px;top:24px;width:12px;height:12px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px var(--cream)}.status{display:inline-flex;padding:4px 9px;border-radius:999px;background:var(--secondary);color:var(--deep);font-size:12px;font-weight:900}.long-strip{display:grid;grid-template-columns:160px 1fr;gap:20px;align-items:start;padding:20px 0;border-bottom:1px solid var(--border)}.long-strip:last-child{border-bottom:0}.long-strip h3{margin:0}.note-article{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:24px}.editor-label{display:inline-block;font-size:12px;font-weight:900;background:var(--green);color:#fff;padding:4px 8px;border-radius:999px;margin-bottom:10px}.prose{max-width:900px}.prose h2{margin-top:32px}.prose h3{margin-top:24px}.prose ul{padding-left:1.25em}.prose li{margin-bottom:.55em}.notice{background:var(--secondary);border:1px solid var(--border-strong);border-radius:14px;padding:16px 18px;color:var(--deep)}.split{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:28px;align-items:center}.tag-row{display:flex;flex-wrap:wrap;gap:8px}.tag{display:inline-flex;padding:6px 10px;border-radius:999px;background:var(--secondary);color:var(--deep);font-size:13px;font-weight:800}.faq-list{display:grid;gap:14px}.faq-item{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:20px}.faq-item h2{font-size:18px;margin-bottom:10px}.faq-item p{margin:0;color:var(--muted)}.footer-inner{padding:42px 0 90px}.site-footer{background:var(--deep);color:#D8EEDC;margin-top:48px}.footer-brand-row{display:flex;align-items:center;gap:14px;margin-bottom:28px}.footer-logo-wrap{display:flex;align-items:center;min-height:44px}.footer-logo{height:34px;width:auto;max-width:180px;object-fit:contain;object-position:left center}.footer-brand-name{font-size:22px;font-weight:900;color:#fff}.footer-brand-row strong{display:block;color:#fff;font-size:20px}.footer-brand-row span{display:block;color:#D8EEDC;font-size:12px;letter-spacing:.12em}.footer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.footer-grid h2{font-size:14px;color:#fff}.footer-grid a{display:block;padding:5px 0;color:#D8EEDC}.footer-grid a:hover{color:#fff}.footer-note{margin:28px 0 8px;max-width:960px;color:#D8EEDC}.copyright{margin:0;color:#9fc7aa;font-size:14px}.overlay{position:fixed;inset:0;background:rgba(5,25,15,.58);z-index:70;opacity:0;visibility:hidden;pointer-events:none;transition:.2s ease}.overlay.is-visible{opacity:1;visibility:visible;pointer-events:auto}.basket-panel{position:fixed;left:50%;bottom:0;transform:translate(-50%,105%);width:min(720px,100%);max-height:70vh;background:var(--cream);z-index:80;border-radius:20px 20px 0 0;box-shadow:0 -16px 50px rgba(5,25,15,.28);visibility:hidden;pointer-events:none;transition:transform .25s ease,visibility .25s}.basket-open .basket-panel{transform:translate(-50%,0);visibility:visible;pointer-events:auto}.basket-head{height:68px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);background:var(--surface);border-radius:20px 20px 0 0}.basket-brand{display:flex;align-items:center;gap:10px;color:var(--deep)}.basket-brand img{height:30px;width:auto;max-width:160px;object-fit:contain}.panel-close{min-height:44px;border:1px solid var(--border-strong);border-radius:11px;background:var(--cream);color:var(--deep);padding:0 14px;font-weight:900}.basket-scroll{overflow:auto;max-height:calc(70vh - 68px);padding:18px}.basket-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.basket-groups h2{font-size:15px;margin-bottom:10px}.basket-groups a{display:block;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:11px 12px;margin-bottom:9px}.basket-groups b{display:block;color:var(--deep);margin-bottom:2px}.basket-groups span{display:block;color:var(--muted);font-size:13px;line-height:1.55}.search-layer{position:fixed;left:0;right:0;top:96px;z-index:79;visibility:hidden;pointer-events:none;transform:translateY(-12px);opacity:0;transition:.2s ease}.search-open .search-layer{visibility:visible;pointer-events:auto;transform:translateY(0);opacity:1}.search-card{background:var(--cream);border:1px solid var(--border);border-radius:0 0 18px 18px;box-shadow:var(--shadow);padding:22px}.search-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.search-card label{display:block;font-weight:900;color:var(--deep);margin-bottom:8px}.search-card input{width:100%;height:48px;border:1px solid var(--border-strong);border-radius:12px;background:#fff;color:var(--text);padding:0 14px}.search-card p{font-size:13px;color:var(--muted);margin:10px 0}.search-presets{display:flex;flex-wrap:wrap;gap:8px}.search-presets a{padding:9px 12px;border-radius:10px;background:var(--secondary);color:var(--deep);font-weight:800}.mobile-bottom-nav{display:none}.home-cover{padding-top:20px}.cover-copy{padding:22px 0 0}.cover-copy h1{margin-bottom:10px}.cover-copy .home-slogan{font-size:clamp(24px,4vw,38px);line-height:1.35;color:var(--deep);font-weight:950;max-width:900px}.highlight-band{background:var(--deep);color:#fff;border-radius:18px;padding:24px}.highlight-band h2,.highlight-band h3{color:#fff}.highlight-band p{color:#e7f4ea}.app-service{background:var(--deep-bg);border-radius:20px;padding:26px}.icon-wrap{width:72px;height:72px;border-radius:16px;background:#fff;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;overflow:hidden}.icon-wrap img{width:64px;height:64px;object-fit:contain}.data-free{font-size:13px;color:var(--muted)}
@media (max-width:900px){.grid-3,.grid-4,.grid-6,.shelf{grid-template-columns:repeat(2,minmax(0,1fr))}.split{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:700px){body{padding-bottom:calc(58px + env(safe-area-inset-bottom))}.site-main{padding-top:116px}.ridge-nav{display:none}.field-gate{height:72px}.gate-inner{grid-template-columns:minmax(0,1fr) auto auto;gap:8px}.brand-link{min-width:0}.brand-logo{height:30px;max-width:138px}.brand-text{font-size:20px}.basket-button{padding:0 12px;min-width:60px}.app-link{padding:0 12px;white-space:nowrap}.grid-2,.grid-3,.grid-4,.grid-6,.shelf{grid-template-columns:1fr}.section-head{display:block}.section-head p{margin-top:8px}.number-item{grid-template-columns:52px 1fr}.number{font-size:30px}.long-strip{grid-template-columns:1fr;gap:8px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.footer-inner{padding-bottom:36px}.basket-panel{max-height:78vh;border-radius:18px 18px 0 0}.basket-scroll{max-height:calc(78vh - 68px)}.basket-groups{grid-template-columns:1fr}.search-layer{inset:24px 0 0;top:24px;background:var(--deep);color:var(--cream);height:calc(100vh - 24px);overflow:auto}.search-card{width:100%;min-height:100%;border:0;border-radius:0;box-shadow:none;background:var(--deep);color:var(--cream);padding:24px 16px 90px}.search-head strong,.search-card label{color:#fff}.search-card p{color:#D8EEDC}.search-card .panel-close{background:transparent;border-color:rgba(255,255,255,.35);color:#fff}.search-presets a{background:#fff;color:var(--deep)}.mobile-bottom-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:60;height:calc(50px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#fff;border-top:1px solid var(--border)}.mobile-bottom-nav a{display:flex;align-items:center;justify-content:center;min-width:0;min-height:50px;font-size:13px;font-weight:900;color:var(--deep)}.mobile-bottom-nav a.is-current{background:var(--green);color:#fff}.page-hero,.section-block{padding:22px 0}.card{padding:18px}.media-slot{min-height:160px}.media-slot.hero-media{min-height:180px}.hero-actions .btn,.button-row .btn{flex:1 1 150px}.overlay{z-index:70}}
@media (max-width:420px){.shell{width:min(calc(100% - 32px),var(--max))}.mini-brand{font-size:11px}.brand-logo{max-width:118px}.basket-button{min-width:56px}.app-link{font-size:14px;padding:0 10px}.footer-grid{grid-template-columns:1fr 1fr}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
