:root{--rpx:min(.5px,calc(100vw / 750));color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;background:#edf3ee;color:#274d3d}*{box-sizing:border-box}body{margin:0}view,scroll-view,block{display:block}text{display:inline}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}image{display:block;overflow:hidden}image img{display:block;width:100%;height:100%;object-fit:contain}canvas{max-width:100%}scroll-view{overscroll-behavior:contain}picker{display:inline-block;position:relative}picker select{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}slider{display:block}slider input{width:100%;accent-color:#397d59}checkbox{display:inline-block}checkbox input{accent-color:#397d59;width:20px;height:20px}.web-header{height:62px;padding:0 max(20px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d3dfd6;background:#f8fbf8;position:relative;z-index:60}.web-header a{font-weight:750;text-decoration:none;color:#244d39;display:flex;align-items:center;gap:16px}.web-header a span{font-size:14px;font-weight:500;color:#637d6b}.web-header nav{display:flex;gap:8px}.web-header button{border:1px solid #d0ded3;border-radius:9px;background:#fff;padding:7px 12px;color:#42674e;font-size:14px}.mini-root{position:relative;max-width:760px;margin:0 auto;min-height:calc(100dvh - 62px);background:#f7faf5;--rpx:calc(min(100vw,760px) / 750);font-size:16px;overflow-x:clip}.mini-root>scroll-view{height:auto!important;min-height:calc(100dvh - 62px)}.mini-root navigation-bar,.mini-root page-meta{display:none}.mini-root button{touch-action:manipulation}.mini-root input{min-height:30px}.mini-root .scrollarea{max-height:none}.web-loading{padding:70px;text-align:center;color:#69816f}.web-error{position:fixed;bottom:max(16px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);max-width:min(92vw,550px);padding:13px 20px;color:#fff;background:#365843;border-radius:12px;z-index:900;font-size:14px;box-shadow:0 12px 36px #15382033}.web-dialog-backdrop{position:fixed;inset:0;z-index:1000;background:#142b2266;display:grid;place-items:center;padding:20px}.web-dialog{width:min(460px,100%);border-radius:20px;background:#fff;padding:26px;box-shadow:0 20px 70px #16322033}.web-dialog h2{margin:0 0 14px;font-size:20px}.web-dialog p{white-space:pre-wrap;line-height:1.8;color:#506456;font-size:15px;margin:0 0 22px}.web-dialog footer{display:flex;justify-content:flex-end;gap:10px}.web-dialog button{font-size:15px;min-height:44px;padding:9px 18px;border:1px solid #ccdacd;border-radius:9px;background:#f4f8f3;color:#28563e}.web-dialog button[data-confirm]{background:#356f4e;color:#fff;border-color:#356f4e}.web-actions{display:grid;gap:9px}.web-actions button{text-align:left;min-height:46px}.web-dialog input{width:100%;margin:0 0 20px;padding:12px;border:1px solid #b7ccb8;border-radius:8px;font-size:16px}.web-scope-note{font-size:14px;color:#607d68}.web-dialog [hidden]{display:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #c2a353;outline-offset:3px}@media(min-width:1000px){body{background:linear-gradient(110deg,#e7efe8,#f3f6ef)}.mini-root{border:1px solid #d9e4da;border-top:0;box-shadow:0 10px 60px #1c4d2f08}.web-header{height:70px}.mini-root{min-height:calc(100dvh - 70px)}}@media(max-width:500px){.web-header{height:55px;padding:0 14px}.web-header a{gap:9px}.web-header a span{font-size:12px}.web-header button{font-size:12px;padding:7px 8px}.mini-root{font-size:15px;min-height:calc(100dvh - 55px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Browser UA borders are real borders; native miniapp borders use ::after.
   Keep these defaults in a low-priority layer so every original rule wins. */
@layer browser-reset {
  .mini-root button { appearance:none; -webkit-appearance:none; border:0; margin:0; padding:0; border-radius:0; background:transparent; color:inherit; font:inherit; line-height:1.4; text-align:center; }
  .mini-root input,.mini-root textarea { appearance:none; -webkit-appearance:none; border:0; border-radius:0; background:transparent; color:inherit; font:inherit; }
}
/* Match the native app viewport while keeping the website header separate. */
:root{--web-header-height:62px}.web-header{height:var(--web-header-height)}.mini-root{height:calc(100vh - var(--web-header-height));height:calc(100dvh - var(--web-header-height));min-height:0;transform:translateZ(0);overflow:hidden}.mini-root>scroll-view{height:100%!important;min-height:0!important}swiper-item{display:block;flex:0 0 100%;height:100%;width:100%;scroll-snap-align:start;min-height:0;overflow:hidden}switch{display:inline-flex;align-items:center;min-width:44px;min-height:30px}switch input{appearance:none;-webkit-appearance:none;position:relative;width:44px;height:26px;border-radius:20px;background:#c9d6cc;cursor:pointer;transition:background .16s}switch input:after{content:"";position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #17362022;transition:transform .16s}switch input:checked{background:#397b59}switch input:checked:after{transform:translateX(18px)}switch input:disabled{opacity:.5}progress{max-width:100%;accent-color:#397b59}@media(min-width:1000px){:root{--web-header-height:70px}}@media(max-width:500px){:root{--web-header-height:55px}}
