:root{--wx-green: #07C160;--wx-green-dark: #06AD56;--wx-bg: #f2f2f7;--wx-bar-bg: #f9f9f9;--wx-header-bg: #FFFFFF;--wx-text: #191919;--wx-text-secondary: #888888;--wx-border: #ECECEC;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--post-ios-font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Segoe UI", sans-serif;--post-ios-bg-grouped: #f2f2f7;--post-ios-card: #ffffff;--post-ios-fill: rgba(118, 118, 128, .12);--post-ios-fill-pressed: rgba(118, 118, 128, .18);--post-ios-label: rgba(0, 0, 0, .88);--post-ios-secondary-label: rgba(60, 60, 67, .6);--post-ios-tertiary-label: rgba(60, 60, 67, .36);--post-ios-separator: rgba(60, 60, 67, .12);--post-ios-accent: #007aff;--post-ios-accent-subtle: rgba(0, 122, 255, .12);--post-ios-red: #ff3b30;--post-ios-radius-sm: 10px;--post-ios-radius-md: 12px;--post-ios-radius-lg: 14px;--post-ios-shadow-card: 0 1px 2px rgba(0, 0, 0, .04), 0 2px 10px rgba(0, 0, 0, .06);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--wx-bg);color:var(--wx-text)}@media(min-width:431px){body{background-color:#333}#root{max-width:430px;margin:0 auto;min-height:100vh;box-shadow:0 0 0 1px #0000001a}}#root{min-height:100vh;display:flex;flex-direction:column;max-width:100vw}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}.toast-wrap{position:fixed;left:50%;top:24%;transform:translate(-50%);z-index:10000;pointer-events:none}.toast-toast{padding:12px 24px;min-width:160px;max-width:80vw;font-size:15px;line-height:1.4;text-align:center;border-radius:10px;box-shadow:0 4px 16px #00000026;animation:toast-in .25s ease-out}.toast-toast-success{color:#fff;background:var(--wx-green, #07c160)}.toast-toast-error{color:#fff;background:var(--wx-red, #ee0a24)}@keyframes toast-in{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.image-preview-overlay{position:fixed;inset:0;z-index:9999;background:#000000eb;display:flex;align-items:center;justify-content:center;padding:48px 56px;box-sizing:border-box}.image-preview-close{position:absolute;top:12px;right:12px;width:40px;height:40px;border:none;background:#ffffff26;color:#fff;font-size:28px;line-height:1;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;z-index:2}.image-preview-close:hover{background:#ffffff40}.image-preview-prev,.image-preview-next{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border:none;background:#ffffff26;color:#fff;font-size:36px;line-height:1;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;z-index:2}.image-preview-prev:hover,.image-preview-next:hover{background:#ffffff4d}.image-preview-prev{left:12px}.image-preview-next{right:12px}.image-preview-content{max-width:100%;max-height:100%;display:flex;align-items:center;justify-content:center}.image-preview-img{max-width:100%;max-height:calc(100vh - 96px);object-fit:contain;-webkit-user-select:none;user-select:none}.image-preview-counter{position:absolute;bottom:16px;left:50%;transform:translate(-50%);font-size:14px;color:#fffc}.post-card{display:flex;flex-direction:column;background:var(--post-ios-card, #fff);border-radius:var(--post-ios-radius-md, 12px);margin-bottom:0;box-shadow:var(--post-ios-shadow-card, 0 1px 2px rgba(0, 0, 0, .04));min-height:120px;border:.5px solid var(--post-ios-separator, rgba(60, 60, 67, .12));overflow:hidden;padding:14px 14px 0;font-family:var(--post-ios-font, inherit);-webkit-font-smoothing:antialiased}.post-card-body{display:block;flex:1 1 auto;min-height:0;padding:0 0 6px;text-decoration:none;color:inherit}.post-card-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.post-card-tag{display:inline-flex;align-items:center;padding:4px 10px;border-radius:980px;font-size:12px;font-weight:500;letter-spacing:-.01em;color:var(--post-ios-accent, #007aff);background:var(--post-ios-accent-subtle, rgba(0, 122, 255, .12));border:none}.post-card-tag--link{text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:opacity .12s ease}.post-card-tag--link:active{opacity:.55}.post-card-content{margin:0 0 10px;font-family:var(--post-ios-font, inherit);font-size:15px;font-weight:400;line-height:1.35;letter-spacing:-.02em;color:var(--post-ios-label, rgba(0, 0, 0, .88));display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.post-card-images{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}.post-card-image-wrap{display:block;cursor:pointer;flex-shrink:0}.post-card-image{width:72px;height:72px;object-fit:cover;border-radius:var(--post-ios-radius-sm, 10px);background:var(--post-ios-fill, rgba(118, 118, 128, .12));display:block}.post-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-family:var(--post-ios-font, inherit);font-size:12px;font-weight:400;letter-spacing:-.01em;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6))}.post-card-time{margin-right:4px}.post-card-stat{display:inline-flex;align-items:center;gap:2px}.post-card-footer{flex:0 0 auto;max-height:40px;min-height:32px;padding:4px 0 8px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:.5px solid var(--post-ios-separator, rgba(60, 60, 67, .12));background:transparent;box-sizing:border-box}.post-card-footer-author{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.post-card-avatar-wrap{flex-shrink:0;width:28px;height:28px;border-radius:50%;overflow:hidden;border:.5px solid var(--post-ios-separator, rgba(60, 60, 67, .12))}.post-card-avatar{width:100%;height:100%;object-fit:cover}.post-card-avatar-default{object-fit:contain;padding:3px;background:var(--post-ios-fill, rgba(118, 118, 128, .12))}.post-card-username{font-size:14px;font-weight:500;letter-spacing:-.02em;color:var(--post-ios-label, rgba(0, 0, 0, .88));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.post-card-like-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:52px;min-height:32px;padding:0 10px;border:none;border-radius:var(--post-ios-radius-sm, 10px);background:var(--post-ios-fill, rgba(118, 118, 128, .12));color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6));font-family:var(--post-ios-font, inherit);font-size:14px;font-weight:500;letter-spacing:-.02em;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .15s ease,transform .1s ease}.post-card-like-btn:active{transform:scale(.96);background:var(--post-ios-fill-pressed, rgba(118, 118, 128, .18))}.post-card-like-btn--active{color:var(--post-ios-red, #ff3b30);background:#ff3b301f}.post-card-like-icon{font-size:14px;line-height:1}.post-card-like-count{font-size:12px;font-variant-numeric:tabular-nums}.treehole-toolbar{position:relative;margin-bottom:10px;padding:8px 10px 0;font-family:var(--post-ios-font, inherit)}.treehole-toolbar-search.glass-search{display:flex;align-items:center;gap:4px;margin-bottom:10px;box-sizing:border-box;height:44px;padding:0 8px 0 14px;border-radius:18px;background:#fff9;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.3);box-shadow:0 4px 12px #0000000d,inset 0 1px #fff9;transition:background .22s ease,box-shadow .22s ease}.treehole-toolbar-search.glass-search:focus-within{background:#fffc;box-shadow:0 0 0 2px #16c47f33,0 4px 12px #0000000d,inset 0 1px #fff9}.treehole-toolbar-search-field{flex:1;min-width:0;box-sizing:border-box;display:flex;align-items:center;height:100%;padding:0;border-radius:0;background:transparent}.treehole-toolbar-search-input{width:100%;height:100%;padding:0;border:none;border-radius:0;font-family:var(--post-ios-font, inherit);font-size:15px;font-weight:400;letter-spacing:-.02em;line-height:1.2;color:var(--post-ios-label, rgba(0, 0, 0, .88));background:transparent;-webkit-appearance:none;appearance:none}.treehole-toolbar-search-input::placeholder{color:#0006}.treehole-toolbar-search-input:focus{outline:none}.treehole-toolbar-search-input::-webkit-search-decoration,.treehole-toolbar-search-input::-webkit-search-cancel-button,.treehole-toolbar-search-input::-webkit-search-results-button,.treehole-toolbar-search-input::-webkit-search-results-decoration{-webkit-appearance:none;appearance:none}.treehole-toolbar-search-submit{flex-shrink:0;width:40px;height:40px;padding:0;border:none;border-radius:12px;background:transparent;color:#3c3c436b;display:flex;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color .18s ease,transform .12s ease,background .18s ease}.treehole-toolbar-search-submit:hover{color:#3c3c4385}.treehole-toolbar-search.glass-search:focus-within .treehole-toolbar-search-submit{color:#3c3c4385}.treehole-toolbar-search-submit:active{transform:scale(.96);color:#3c3c439e}.treehole-toolbar-search-submit-icon{display:block;color:inherit}.treehole-toolbar-tags-embed{display:flex;align-items:stretch;min-height:40px;margin-bottom:4px;border-radius:12px;background:var(--post-ios-fill, rgba(118, 118, 128, .1));border:.5px solid rgba(60,60,67,.08)}.treehole-toolbar-tags-scroll{flex:1;min-width:0;display:flex;flex-wrap:nowrap;align-items:center;gap:0;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:4px 0 4px 6px;scrollbar-width:none}.treehole-toolbar-tags-scroll::-webkit-scrollbar{display:none}button.treehole-toolbar-tag-link{font:inherit;font-family:var(--post-ios-font, inherit)}.treehole-toolbar-tag-link{flex-shrink:0;padding:8px 12px;margin:0;border-radius:0;font-size:14px;font-weight:500;letter-spacing:-.02em;text-decoration:none;color:var(--post-ios-accent, #007aff);background:transparent;border:none;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:opacity .12s ease,color .15s ease,background .15s ease}.treehole-toolbar-tag-link+.treehole-toolbar-tag-link{border-left:1px solid rgba(60,60,67,.12)}.treehole-toolbar-tag-link.is-selected{color:#fff;background:var(--post-ios-accent, #007aff);border-radius:10px;box-shadow:0 1px 3px #007aff59}.treehole-toolbar-tag-link.is-selected+.treehole-toolbar-tag-link{border-left:none}.treehole-toolbar-tag-link+.treehole-toolbar-tag-link.is-selected{border-left:none}.treehole-toolbar-tag-link:active:not(.is-selected){opacity:.55}.treehole-toolbar-tags-loading{font-size:14px;font-weight:400;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6))}.treehole-toolbar-more{flex-shrink:0;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent}.treehole-toolbar-more-embed{width:44px;min-height:40px;align-self:stretch;border-left:1px solid rgba(60,60,67,.1);border-radius:0;background:#ffffff59;transition:background .15s ease}.treehole-toolbar-more-embed:active{background:#7676801f}.treehole-toolbar-more-embed.is-open{background:#76768024}.treehole-toolbar-chevron{display:block;width:7px;height:7px;border-right:2px solid var(--post-ios-secondary-label, rgba(60, 60, 67, .6));border-bottom:2px solid var(--post-ios-secondary-label, rgba(60, 60, 67, .6));transform:rotate(45deg) translateY(-1px);transition:transform .2s ease}.treehole-toolbar-more.is-open .treehole-toolbar-chevron{transform:rotate(225deg) translateY(-1px)}.treehole-toolbar-dropdown{position:absolute;left:10px;right:10px;top:100%;margin-top:8px;z-index:100;max-height:min(60vh,380px);overflow-y:auto;-webkit-overflow-scrolling:touch;background:var(--post-ios-card, #fff);border-radius:var(--post-ios-radius-lg, 14px);box-shadow:0 8px 32px #0000001f,0 2px 8px #0000000f;border:.5px solid var(--post-ios-separator, rgba(60, 60, 67, .12))}.treehole-toolbar-dropdown-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px 10px;font-size:12px;font-weight:400;letter-spacing:-.01em;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6));border-bottom:.5px solid var(--post-ios-separator, rgba(60, 60, 67, .12))}.treehole-toolbar-create-link{border:none;background:none;color:var(--post-ios-accent, #007aff);font-size:15px;font-weight:400;letter-spacing:-.02em;cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent}.treehole-toolbar-create-form{display:flex;flex-direction:column;gap:8px;padding:10px 14px 12px;border-bottom:.5px solid var(--post-ios-separator, rgba(60, 60, 67, .12));background:var(--post-ios-bg-grouped, #f2f2f7)}.treehole-toolbar-create-input{height:36px;padding:0 12px;border:none;border-radius:var(--post-ios-radius-sm, 10px);font-family:var(--post-ios-font, inherit);font-size:15px;font-weight:400;letter-spacing:-.02em;color:var(--post-ios-label, rgba(0, 0, 0, .88));background:var(--post-ios-card, #fff)}.treehole-toolbar-create-input::placeholder{color:var(--post-ios-tertiary-label, rgba(60, 60, 67, .36))}.treehole-toolbar-create-submit{height:36px;border:none;border-radius:var(--post-ios-radius-sm, 10px);background:var(--post-ios-accent, #007aff);color:#fff;font-family:var(--post-ios-font, inherit);font-size:15px;font-weight:500;letter-spacing:-.02em;cursor:pointer}.treehole-toolbar-dropdown-list{list-style:none;margin:0;padding:4px 0 8px}.treehole-toolbar-dropdown-item{display:flex;align-items:center;gap:6px;padding:0 8px 0 14px;min-height:44px}.treehole-toolbar-dropdown-link{flex:1;min-width:0;text-decoration:none;color:var(--post-ios-label, rgba(0, 0, 0, .88));font-size:15px;font-weight:400;letter-spacing:-.02em}button.treehole-toolbar-dropdown-tag-btn{display:flex;align-items:center;min-height:44px;width:100%;text-align:left;border:none;background:transparent;cursor:pointer;font:inherit;font-family:var(--post-ios-font, inherit);font-size:15px;-webkit-tap-highlight-color:transparent}.treehole-toolbar-dropdown-item-all .treehole-toolbar-dropdown-tag-btn{color:var(--post-ios-secondary-label, rgba(60, 60, 67, .75));font-weight:500}.treehole-toolbar-dropdown-tag-btn.is-selected{color:var(--post-ios-accent, #007aff);font-weight:600;background:#007aff14;border-radius:8px;margin-right:4px}.treehole-toolbar-tag-delete{flex-shrink:0;width:32px;height:32px;border:none;border-radius:var(--post-ios-radius-sm, 10px);background:var(--post-ios-fill, rgba(118, 118, 128, .12));color:var(--post-ios-red, #ff3b30);font-size:16px;line-height:1;cursor:pointer}.treehole-toolbar-dropdown-empty{margin:14px 16px 18px;font-size:14px;font-weight:400;line-height:1.4;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6))}.skeleton{background:var(--wx-bar-bg, #ebedf0);border-radius:6px}.skeleton-shimmer{position:relative;overflow:hidden}.skeleton-shimmer:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 50%,transparent 100%);animation:skeleton-shimmer 1.2s ease-in-out infinite}@keyframes skeleton-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.skeleton-post{display:flex;flex-direction:column;background:var(--post-ios-card, #fff);border-radius:var(--post-ios-radius-md, 12px);margin-bottom:0;box-shadow:var(--post-ios-shadow-card, 0 1px 2px rgba(0, 0, 0, .04));min-height:120px;border:.5px solid var(--post-ios-separator, rgba(60, 60, 67, .12));overflow:hidden}.skeleton-post-main{flex:1 1 auto;padding:14px 14px 10px}.skeleton-post-tag{width:56px;height:22px;border-radius:980px;margin-bottom:10px;background:linear-gradient(90deg,var(--post-ios-fill, rgba(118, 118, 128, .12)) 25%,rgba(118,118,128,.06) 50%,var(--post-ios-fill, rgba(118, 118, 128, .12)) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.2s ease-in-out infinite}.skeleton-post-line{height:12px;margin-bottom:8px;max-width:100%;border-radius:4px;background:linear-gradient(90deg,var(--post-ios-fill, rgba(118, 118, 128, .12)) 25%,rgba(118,118,128,.06) 50%,var(--post-ios-fill, rgba(118, 118, 128, .12)) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.2s ease-in-out infinite}.skeleton-post-line-short{width:60%}.skeleton-post-images{display:flex;gap:6px;margin-bottom:10px}.skeleton-post-img{width:72px;height:72px;border-radius:var(--post-ios-radius-sm, 10px);background:var(--post-ios-fill, rgba(118, 118, 128, .12))}.skeleton-post-meta{display:flex;align-items:center;gap:12px}.skeleton-post-meta-item{width:48px;height:12px;border-radius:4px;background:var(--post-ios-fill, rgba(118, 118, 128, .12))}.skeleton-post-footer{flex-shrink:0;min-height:32px;max-height:40px;padding:4px 0 8px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:.5px solid var(--post-ios-separator, rgba(60, 60, 67, .12));background:transparent;box-sizing:border-box}.skeleton-post-footer-left{display:flex;align-items:center;gap:8px;min-width:0}.skeleton-post-avatar{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:var(--post-ios-fill, rgba(118, 118, 128, .12))}.skeleton-post-username{width:56px;height:12px;border-radius:4px;background:var(--post-ios-fill, rgba(118, 118, 128, .12))}.skeleton-post-like{width:52px;height:32px;border-radius:var(--post-ios-radius-sm, 10px);flex-shrink:0;background:var(--post-ios-fill, rgba(118, 118, 128, .12))}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.treehole-page{position:relative;min-height:100%;background:var(--post-ios-bg-grouped, #f2f2f7);font-family:var(--post-ios-font, inherit);-webkit-font-smoothing:antialiased}.treehole-error{margin:10px 16px 0;padding:10px 12px;font-size:12px;font-family:var(--post-ios-font, inherit);line-height:1.35;color:var(--post-ios-red, #ff3b30);background:#ff3b3014;border-radius:var(--post-ios-radius-sm, 10px)}.treehole-loading{padding:24px 16px;text-align:center;font-size:14px;font-family:var(--post-ios-font, inherit);color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6))}.treehole-load-more{display:block;width:100%;margin-top:14px;padding:12px 16px;font-size:15px;font-family:var(--post-ios-font, inherit);font-weight:400;letter-spacing:-.02em;color:var(--post-ios-accent, #007aff);background:var(--post-ios-card, #fff);border:none;border-radius:var(--post-ios-radius-md, 12px);box-shadow:var(--post-ios-shadow-card, 0 1px 3px rgba(0, 0, 0, .06));cursor:pointer;-webkit-tap-highlight-color:transparent;transition:opacity .15s ease,transform .12s ease}.treehole-load-more:active:not(:disabled){opacity:.65;transform:scale(.99)}.treehole-load-more:disabled{opacity:.45;cursor:not-allowed}.treehole-content{position:relative;z-index:1;padding:10px 12px 28px}.treehole-grid{display:flex;gap:12px;align-items:flex-start}.treehole-column{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px}.treehole-column-right{padding-top:32px}.treehole-fab{position:fixed;right:18px;bottom:calc(50px + 14px + var(--safe-bottom, 0px));width:56px;height:56px;border-radius:50%;background:var(--post-ios-accent, #007aff);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px #007aff61,0 1px 3px #0000001f;--pressable-shadow-active: 0 2px 10px rgba(0, 122, 255, .32);z-index:90}.treehole-fab-tag{position:absolute;top:-4px;left:-6px;padding:0 6px;border-radius:999px;background:var(--post-ios-red, #ff3b30);color:#fff;font-size:10px;font-weight:600;line-height:1.5;font-family:var(--post-ios-font, inherit)}.treehole-fab:hover{filter:brightness(1.05);color:#fff}:root{--eat-primary: #1677FF;--eat-primary-light: #69b1ff;--eat-bg: #F5F5F5;--eat-card: #FFFFFF;--eat-text: #333333;--eat-text-secondary: #888888}.canteen-area-page{min-height:100%;position:relative;padding:24px 16px 32px;box-sizing:border-box;overflow-x:hidden}.canteen-area-bg{position:absolute;inset:0;z-index:0;background-color:var(--eat-bg);background-size:cover;background-position:center;background-repeat:no-repeat;filter:blur(20px);opacity:.6;pointer-events:none}.canteen-area-bg{background-image:linear-gradient(160deg,#e0e8f0,#c5d4e8,#b0c4e0)}.canteen-area-content{position:relative;z-index:1}.canteen-area-loading,.canteen-area-error{position:relative;z-index:1;padding:24px 16px;font-size:14px;text-align:center;color:var(--eat-text-secondary)}.canteen-area-error{color:var(--wx-red, #ee0a24)}.canteen-area-title{margin:0 0 20px;font-size:26px;font-weight:700;color:var(--eat-text);text-align:center}.canteen-area-rankings-link{display:block;margin:0 0 24px;text-decoration:none;color:inherit}.canteen-area-rankings-card{height:120px;padding:0 24px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;background:linear-gradient(135deg,var(--eat-primary) 0%,var(--eat-primary-light) 100%);border-radius:20px;box-shadow:0 4px 16px #1677ff59;--pressable-scale: .93;--pressable-shadow-active: 0 3px 12px rgba(22, 119, 255, .25)}.canteen-area-rankings-title{margin:0 0 6px;font-size:24px;font-weight:700;color:#fff}.canteen-area-rankings-sub{margin:0;font-size:14px;color:#fffc}.canteen-area-sections{display:flex;flex-direction:column;gap:12px}.canteen-area-section-wrap{width:100%;box-sizing:border-box}.canteen-area-section-offset{margin-left:20%;width:80%}.canteen-area-section-card{display:flex;align-items:center;gap:16px;padding:20px;background:var(--eat-card);border-radius:16px;box-shadow:0 2px 12px #0000000f;--pressable-scale: .93;--pressable-shadow-active: 0 1px 8px rgba(0, 0, 0, .05);text-decoration:none;color:inherit;transition:box-shadow .2s,transform .2s}.canteen-area-section-card:hover{box-shadow:0 4px 16px #0000001a}.canteen-area-section-icon{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;font-size:24px;background:var(--eat-primary);color:#fff;border-radius:50%}.canteen-area-section-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.canteen-area-section-name{font-size:20px;font-weight:700;color:var(--eat-text)}.canteen-area-section-hint{font-size:14px;color:var(--eat-text-secondary)}.canteen-area-section-arrow{flex-shrink:0;font-size:18px;color:var(--eat-text-secondary)}.about-page{min-height:100%;padding:0;background:transparent}.about-lang-toggle{display:flex;justify-content:flex-end;align-items:center;padding:8px 16px 4px;gap:4px;font-size:12px;color:var(--wx-text-secondary, #888)}.about-lang-btn{border:none;background:none;padding:2px 4px;font-size:12px;color:inherit}.about-lang-btn.active{font-weight:600;color:var(--wx-text, #111)}.about-lang-sep{opacity:.6}.about-list{list-style:none;margin:0;padding:0;border-radius:0;overflow:hidden;box-shadow:none}.about-list-item{margin:0}.about-list-item+.about-list-item .about-list-row{border-top:1px solid rgba(0,0,0,.06)}.about-list-row{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#ffffffb3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);text-decoration:none;color:inherit;transition:background .2s}.about-list-row-link:hover{background:#ffffffd9}.about-list-row-static{cursor:default}.about-list-icon{flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--wx-green, #07c160)}.about-list-icon svg{width:22px;height:22px}.about-list-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.about-list-label{font-size:15px;font-weight:600;color:var(--wx-text, #111)}.about-list-hint{font-size:12px;color:var(--wx-text-secondary, #888)}.about-list-arrow{flex-shrink:0;font-size:16px;color:var(--wx-text-secondary, #888);font-weight:300}.myzone-page{min-height:100%;background:var(--post-ios-bg-grouped, #f2f2f7);font-family:var(--post-ios-font, inherit);-webkit-font-smoothing:antialiased;padding-bottom:28px}.myzone-error{margin:0 16px 12px;padding:10px 12px;font-size:14px;color:var(--post-ios-red, #ff3b30);background:#ff3b3014;border-radius:10px}.myzone-profile{display:flex;align-items:center;gap:12px;padding:16px 16px 14px;background:var(--post-ios-card, #fff)}.myzone-profile-avatar-wrap{flex-shrink:0;width:56px;height:56px;border-radius:50%;overflow:hidden;border:2px solid rgba(0,0,0,.06);padding:0;cursor:pointer;background:none;-webkit-tap-highlight-color:transparent}.myzone-profile-avatar{width:100%;height:100%;object-fit:cover;display:block}.myzone-profile-avatar-loading{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--post-ios-fill, rgba(118, 118, 128, .12));color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6));font-size:12px}.myzone-profile-avatar-default{object-fit:contain;padding:8px;background:var(--post-ios-fill, rgba(118, 118, 128, .12))}.myzone-profile-text{flex:1;min-width:0;text-align:left}.myzone-profile-name{margin:0 0 4px;font-size:17px;font-weight:600;letter-spacing:-.02em;color:var(--post-ios-label, rgba(0, 0, 0, .88));display:flex;align-items:center;flex-wrap:wrap;gap:6px}.myzone-admin-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;color:#8a5b00;background:linear-gradient(135deg,#ffe58f,#ffc53d,#faad14);box-shadow:0 0 0 1px #faad1466}.myzone-profile-email{margin:0;font-size:13px;font-weight:400;letter-spacing:-.01em;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.myzone-profile-space{flex-shrink:0;display:inline-flex;align-items:center;gap:2px;padding:8px 4px 8px 10px;border:none;background:none;font-family:inherit;font-size:15px;font-weight:500;letter-spacing:-.02em;color:var(--post-ios-accent, #007aff);cursor:pointer;-webkit-tap-highlight-color:transparent}.myzone-profile-space:active{opacity:.6}.myzone-profile-space-chevron{font-size:18px;font-weight:300;line-height:1}.myzone-profile-divider{height:4px;background:#3c3c431f;border:none;margin:0}.myzone-block{padding:16px 16px 4px}.myzone-block-title{margin:0 0 10px 2px;font-size:13px;font-weight:500;letter-spacing:-.01em;color:var(--post-ios-tertiary-label, rgba(60, 60, 67, .36))}.myzone-tile-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.myzone-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:100px;padding:14px 10px;text-decoration:none;color:var(--post-ios-label, rgba(0, 0, 0, .88));background:var(--post-ios-card, #fff);border-radius:12px;border:.5px solid var(--post-ios-separator, rgba(60, 60, 67, .12));box-shadow:var(--post-ios-shadow-card, 0 1px 2px rgba(0, 0, 0, .04));transition:transform .12s ease,opacity .12s ease;-webkit-tap-highlight-color:transparent;font:inherit;cursor:pointer;box-sizing:border-box}.myzone-tile:active:not(.myzone-tile--disabled){transform:scale(.98)}.myzone-tile--disabled{opacity:.55;cursor:default}.myzone-tile-icon{display:flex;align-items:center;justify-content:center;color:var(--post-ios-accent, #007aff)}.myzone-tile--disabled .myzone-tile-icon{color:var(--post-ios-secondary-label, rgba(60, 60, 67, .45))}.myzone-tile-label{font-size:14px;font-weight:500;letter-spacing:-.02em;text-align:center;line-height:1.25}.myzone-merchant-link-wrap{padding:0 16px 8px}.myzone-merchant-link{display:inline-block;font-size:14px;font-weight:500;color:var(--post-ios-accent, #007aff);text-decoration:none}.myzone-merchant-link:active{opacity:.65}.myzone-tabs{display:flex;align-items:center;justify-content:center;gap:28px;margin-top:8px;padding:12px 16px 10px;border-bottom:.5px solid var(--post-ios-separator, rgba(60, 60, 67, .12));background:var(--post-ios-card, #fff)}.myzone-tab{padding:8px 4px;font-size:15px;font-weight:500;letter-spacing:-.02em;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6));background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;margin-bottom:-1px;font-family:inherit;transition:color .15s ease,border-color .15s ease}.myzone-tab:hover{color:var(--post-ios-label, rgba(0, 0, 0, .88))}.myzone-tab.active{color:var(--post-ios-accent, #007aff);border-bottom-color:var(--post-ios-accent, #007aff)}.myzone-content{padding:12px 16px 0;background:var(--post-ios-bg-grouped, #f2f2f7)}.myzone-grid-wrap{min-height:120px}.myzone-loading,.myzone-error-inline{text-align:center;padding:24px 16px;font-size:15px;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6))}.myzone-error-inline{color:var(--post-ios-red, #ff3b30)}.myzone-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.myzone-grid-item{display:block;text-decoration:none;color:inherit;background:var(--post-ios-card, #fff);border-radius:10px;overflow:hidden;aspect-ratio:1;border:.5px solid var(--post-ios-separator, rgba(60, 60, 67, .08))}.myzone-grid-item-media{position:relative;width:100%;height:100%;background:var(--post-ios-fill, rgba(118, 118, 128, .12))}.myzone-grid-item-media img{width:100%;height:100%;object-fit:cover}.myzone-grid-item-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:32px}.myzone-grid-item-meta{position:absolute;bottom:0;left:0;right:0;padding:4px 6px;font-size:11px;color:#fff;background:linear-gradient(to top,rgba(0,0,0,.55),transparent)}.myzone-grid-item-title{position:absolute;bottom:0;left:0;right:0;padding:6px 8px;font-size:12px;font-weight:500;color:#fff;background:linear-gradient(to top,rgba(0,0,0,.65),transparent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.myzone-grid-item-rating{position:absolute;top:6px;right:6px;font-size:11px;padding:2px 6px;background:#00000073;color:#fff;border-radius:4px}.myzone-grid-reviews .myzone-grid-item-title{font-size:12px}.myzone-grid-item-shop{position:absolute;top:6px;left:6px;font-size:10px;padding:2px 6px;background:#00000073;color:#fff;border-radius:4px;max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.myzone-footer-actions{display:flex;flex-direction:column;gap:10px;padding:20px 16px 0;max-width:360px;margin:0 auto}.myzone-profile-edit{width:100%;padding:12px 20px;border-radius:10px;border:none;background:var(--post-ios-accent, #007aff);color:#fff;font-family:inherit;font-size:16px;font-weight:600;letter-spacing:-.02em;cursor:pointer}.myzone-profile-edit:active{opacity:.88}.myzone-logout{width:100%;padding:12px 20px;border-radius:10px;border:.5px solid var(--post-ios-separator, rgba(60, 60, 67, .25));background:var(--post-ios-card, #fff);color:var(--post-ios-secondary-label, rgba(60, 60, 67, .75));font-family:inherit;font-size:15px;font-weight:500;cursor:pointer}.myzone-logout:active{opacity:.75}.myzone-header{height:240px;background-color:#1a1a1a;background-size:cover;background-position:center;background-repeat:no-repeat;position:relative}.myzone-header-inner{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:0 20px 20px;box-sizing:border-box}.myzone-header-top{position:absolute;top:0;left:0;right:0;height:env(safe-area-inset-top,44px);min-height:44px}.myzone-header-body{display:flex;flex-direction:column;align-items:center;text-align:center}.myzone-header-avatar-wrap{width:72px;height:72px;border-radius:50%;overflow:hidden;border:3px solid rgba(255,255,255,.9);margin-bottom:10px;cursor:default;flex-shrink:0}.myzone-header-avatar{width:100%;height:100%;object-fit:cover}.myzone-header-avatar-default{object-fit:contain;padding:10px;background:#ffffff40}.myzone-header-card{background:#87ceebd9;border-radius:14px;padding:10px 18px 12px;margin-bottom:0;width:100%;max-width:300px;box-sizing:border-box}.myzone-header-name{margin:0 0 8px;font-size:17px;font-weight:600;color:#1a1a1a}.myzone-header-stats{display:flex;align-items:center;justify-content:center;gap:20px;margin:0;color:#333;font-size:14px}.myzone-header-stat strong{margin-right:4px;font-weight:600}.top-bar{position:sticky;top:0;z-index:100;background:#ffffffeb;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:.5px solid var(--post-ios-separator, rgba(60, 60, 67, .12));padding-top:var(--safe-top);font-family:var(--post-ios-font, inherit);-webkit-font-smoothing:antialiased}.top-bar-inner{height:44px;display:flex;align-items:center;justify-content:center;position:relative;padding:0 16px}.top-bar-left{position:absolute;left:0;top:0;height:44px;display:flex;align-items:center;gap:2px;padding-left:4px}.top-bar-placeholder{width:24px;height:24px;flex-shrink:0}.top-bar-back{width:44px;height:44px;flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:0;border:none;background:transparent;color:var(--post-ios-accent, #007aff)}.top-bar-back:hover{color:var(--post-ios-accent, #007aff)}.top-bar-back:active{opacity:.7}.top-bar-title{position:absolute;left:50%;transform:translate(-50%);margin:0;display:inline-flex;align-items:center;justify-content:center;font-size:17px;font-weight:600;letter-spacing:-.02em;white-space:nowrap}.top-bar-title:before,.top-bar-title:after{content:none;display:none}.top-bar-title-text{display:inline-block;margin:0;max-width:60vw;overflow:hidden;text-overflow:ellipsis;padding:5px 12px;background:var(--post-ios-accent, #007aff);color:#fff;border:2px solid #ffffff;border-radius:8px;box-sizing:border-box;line-height:1.25;font-weight:600;letter-spacing:-.02em}.top-bar-mailbox{position:absolute;right:8px;top:0;width:44px;height:44px;display:flex;align-items:center;justify-content:center;padding:0;border:none;background:transparent;color:var(--post-ios-accent, #007aff)}.top-bar-lang{display:flex;align-items:center;gap:2px;font-size:12px;color:var(--wx-text-secondary, #888)}.top-bar-lang-btn{border:none;background:none;padding:4px 6px;font-size:12px;color:inherit;border-radius:4px}.top-bar-lang-btn:hover{color:var(--wx-text, #111)}.top-bar-lang-btn.active{font-weight:600;color:var(--wx-text, #111)}.top-bar-lang-sep{opacity:.6}.top-bar-mailbox:hover{color:var(--post-ios-accent, #007aff)}.top-bar-mailbox:active{opacity:.7}.tab-bar{position:fixed;bottom:0;left:0;right:0;height:calc(50px + var(--safe-bottom));padding-bottom:var(--safe-bottom);background:#f9f9f9f0;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-top:.5px solid var(--post-ios-separator, rgba(60, 60, 67, .12));display:flex;align-items:flex-start;justify-content:space-around;z-index:100;font-family:var(--post-ios-font, inherit);-webkit-font-smoothing:antialiased}.tab-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-top:6px;padding-bottom:4px;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6));transition:color .2s}.tab-item.active{color:var(--post-ios-accent, #007aff)}.tab-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;margin-bottom:2px}.tab-icon svg{width:24px;height:24px}.tab-label{font-size:10px;line-height:1.2;text-align:center;white-space:normal;max-width:100%;padding:0 2px}.app-layout{min-height:100vh;display:flex;flex-direction:column;padding-bottom:calc(50px + var(--safe-bottom))}.app-layout--no-topbar .app-main{padding-top:var(--safe-top, 0px)}.app-layout--no-topbar .app-main-bg{top:var(--safe-top, 0px)}.app-main{position:relative;flex:1;min-height:0;overflow:auto;background:var(--wx-bg)}.app-main-bg{position:fixed;top:calc(44px + var(--safe-top, 0px));bottom:calc(50px + var(--safe-bottom, 0px));left:50%;transform:translate(-50%);width:100%;max-width:430px;background-size:cover;background-position:center;background-repeat:no-repeat;z-index:0}.app-main-inner{position:relative;z-index:1;min-height:100%}.app-ann-modal-backdrop{position:fixed;inset:0;background:#00000073;z-index:200;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}.app-ann-modal{width:100%;max-width:360px;max-height:80vh;background:#fffffffa;border-radius:16px;box-shadow:0 10px 30px #0000002e;padding:16px 16px 12px;box-sizing:border-box;display:flex;flex-direction:column}.app-ann-title{margin:0 0 8px;font-size:16px;font-weight:600;color:var(--wx-text, #111)}.app-ann-list{flex:1;overflow-y:auto;padding-right:4px}.app-ann-item{padding:10px 8px 8px;border-radius:10px;background:#00000005;margin-bottom:8px}.app-ann-item-title{margin:0 0 4px;font-size:14px;line-height:1.4;color:var(--wx-text, #111);white-space:pre-wrap;word-break:break-word}.app-ann-item-meta{margin:0 0 6px;font-size:11px;color:var(--wx-text-secondary, #999)}.app-ann-know-btn,.app-ann-know-all-btn{display:inline-flex;align-items:center;justify-content:center;padding:6px 14px;border-radius:999px;border:none;cursor:pointer;font-size:13px;font-weight:500;font-family:inherit}.app-ann-know-btn{background:var(--post-ios-accent, #007aff);color:#fff}.app-ann-know-all-btn{margin-top:6px;align-self:flex-end;background:var(--post-ios-fill, rgba(118, 118, 128, .12));color:var(--post-ios-accent, #007aff);font-weight:500}.app-ann-know-btn:hover{filter:brightness(1.06)}.app-ann-know-all-btn:hover{background:#00000014}.app-slide-wrap{position:absolute;inset:0;overflow:hidden}.app-slide-track{display:flex;width:200%;height:100%}.app-slide-pane{width:50%;flex-shrink:0;height:100%;overflow:auto}.app-slide-wrap.app-slide-forward .app-slide-track{transform:translate(0)}.app-slide-wrap.app-slide-forward.app-slide-end .app-slide-track{transform:translate(-50%);transition:transform .28s cubic-bezier(.25,.1,.25,1)}.app-slide-wrap.app-slide-back .app-slide-track{transform:translate(-50%)}.app-slide-wrap.app-slide-back.app-slide-end .app-slide-track{transform:translate(0);transition:transform .28s cubic-bezier(.25,.1,.25,1)}.login-page{min-height:100vh;background:var(--wx-bg);display:flex;align-items:center;justify-content:center;padding:24px}.login-box{width:100%;max-width:360px;background:#fff;border-radius:12px;padding:32px 24px;box-shadow:0 2px 12px #0000000f}.login-title{margin:0 0 4px;font-size:22px;font-weight:600;color:var(--wx-text);text-align:center}.login-subtitle{margin:0 0 24px;font-size:14px;color:var(--wx-text-secondary);text-align:center}.login-form{display:flex;flex-direction:column;gap:16px}.login-field{display:flex;flex-direction:column;gap:6px}.login-field label{font-size:14px;font-weight:500;color:var(--wx-text)}.login-field input{padding:12px 14px;border:1px solid var(--wx-border);border-radius:8px;font-size:15px;background:#fff;color:var(--wx-text)}.login-field input::placeholder{color:var(--wx-text-secondary)}.login-field input:focus{outline:none;border-color:var(--wx-green)}.login-message{margin:0;padding:10px 12px;border-radius:8px;font-size:13px;text-align:center}.login-message-success{background:#07c1601f;color:var(--wx-green-dark)}.login-message-error{background:#ff00000f;color:#c00}.login-btn{width:100%;padding:12px;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;border:none;transition:opacity .2s}.login-btn:disabled{opacity:.7;cursor:not-allowed}.login-btn-primary{background:var(--wx-green);color:#fff}.login-btn-primary:hover:not(:disabled){background:var(--wx-green-dark)}.login-btn-skip{background:transparent;color:var(--wx-text-secondary);margin-top:-4px}.login-btn-skip:hover:not(:disabled){color:var(--wx-text);background:var(--wx-bg)}.login-footer{margin:20px 0 0;font-size:14px;color:var(--wx-text-secondary);text-align:center}.login-footer a{color:var(--wx-green);text-decoration:none}.login-footer a:hover{text-decoration:underline}.register-page{min-height:100vh;background:var(--wx-bg);display:flex;align-items:center;justify-content:center;padding:24px}.register-box{width:100%;max-width:360px;background:#fff;border-radius:12px;padding:32px 24px;box-shadow:0 2px 12px #0000000f}.register-title{margin:0 0 4px;font-size:22px;font-weight:600;color:var(--wx-text);text-align:center}.register-subtitle{margin:0 0 20px;font-size:14px;color:var(--wx-text-secondary);text-align:center}.register-role-tabs{display:flex;gap:0;margin-bottom:24px;background:var(--wx-bar-bg);border-radius:10px;padding:4px;border:1px solid var(--wx-border)}.register-role-tab{flex:1;padding:10px 16px;border:none;border-radius:8px;font-size:14px;font-weight:500;color:var(--wx-text-secondary);background:transparent;cursor:pointer;transition:background .2s,color .2s}.register-role-tab:hover{color:var(--wx-text)}.register-role-tab.is-active{background:#fff;color:var(--wx-green);box-shadow:0 1px 3px #00000014}.register-role-hint{margin:0 0 16px;padding:10px 12px;font-size:13px;color:var(--wx-text-secondary);background:#07c1600f;border-radius:8px;border-left:3px solid var(--wx-green)}.register-form{display:flex;flex-direction:column;gap:16px}.register-field{display:flex;flex-direction:column;gap:6px}.register-field label{font-size:14px;font-weight:500;color:var(--wx-text)}.register-field input{padding:12px 14px;border:1px solid var(--wx-border);border-radius:8px;font-size:15px;background:#fff;color:var(--wx-text)}.register-field input::placeholder{color:var(--wx-text-secondary)}.register-field input:focus{outline:none;border-color:var(--wx-green)}.register-message{margin:0;padding:10px 12px;border-radius:8px;font-size:13px;text-align:center}.register-message-success{background:#07c1601f;color:var(--wx-green-dark)}.register-message-error{background:#ff00000f;color:#c00}.register-btn{width:100%;padding:12px;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;border:none}.register-btn:disabled{opacity:.7;cursor:not-allowed}.register-btn-primary{background:var(--wx-green);color:#fff}.register-btn-primary:hover:not(:disabled){background:var(--wx-green-dark)}.register-footer{margin:20px 0 0;font-size:14px;color:var(--wx-text-secondary);text-align:center}.register-footer a{color:var(--wx-green);text-decoration:none}.register-footer a:hover{text-decoration:underline}.register-code-row{display:flex;gap:8px;align-items:center}.register-code-row input{flex:1}.register-btn-code{flex-shrink:0;padding:8px 10px;font-size:12px;border-radius:999px;border:none;background:#2563eb;color:#fff;cursor:pointer}.register-btn-code:disabled{background:#9ca3af;cursor:not-allowed}.reset-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f0f9ff,#e0f2fe)}.reset-box{width:100%;max-width:420px;padding:24px 20px 28px;background:#ffffffeb;border-radius:16px;box-shadow:0 10px 30px #0f172a1f}.reset-title{margin:0;font-size:20px;font-weight:700;text-align:center;color:#0f172a}.reset-subtitle{margin:6px 0 18px;font-size:14px;text-align:center;color:#64748b}.reset-form{display:flex;flex-direction:column;gap:12px}.reset-field{display:flex;flex-direction:column;gap:4px}.reset-field label{font-size:13px;color:#0f172a}.reset-field input{padding:8px 10px;border-radius:10px;border:1px solid #d4d4d8;font-size:14px;outline:none}.reset-field input:focus{border-color:#2563eb;box-shadow:0 0 0 1px #2563eb33}.reset-code-row{display:flex;gap:8px;align-items:center}.reset-code-row input{flex:1}.reset-btn-code{flex-shrink:0;padding:8px 10px;font-size:12px;border-radius:999px;border:none;background:#2563eb;color:#fff;cursor:pointer}.reset-btn-code:disabled{background:#9ca3af;cursor:not-allowed}.reset-message{margin:4px 0 0;font-size:13px;text-align:center}.reset-message-error{color:#b91c1c}.reset-message-success{color:#15803d}.reset-btn{margin-top:6px;width:100%;padding:10px 12px;border-radius:999px;border:none;font-size:14px;font-weight:600;cursor:pointer}.reset-btn-primary{background:#16a34a;color:#fff}.reset-btn-primary:disabled{background:#a3a3a3;cursor:not-allowed}.reset-footer{margin:18px 0 0;font-size:13px;color:#64748b;text-align:center}.reset-footer a{color:#16a34a;text-decoration:none}.reset-footer a:hover{text-decoration:underline}.postnew-page{padding:12px 12px 24px;min-height:100%;background:var(--post-ios-bg-grouped, #f2f2f7);font-family:var(--post-ios-font, inherit);-webkit-font-smoothing:antialiased}.postnew-error{margin:0 0 12px;padding:10px 12px;font-size:15px;line-height:1.35;color:var(--post-ios-red, #ff3b30);background:#ff3b3014;border-radius:var(--post-ios-radius-sm, 10px)}.postnew-anonymous-hint{margin:0 0 14px;padding:12px 14px;font-size:15px;line-height:1.4;letter-spacing:-.02em;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6));border-radius:var(--post-ios-radius-md, 12px);border-left:4px solid var(--post-ios-accent, #007aff);background:var(--post-ios-card, #fff);box-shadow:var(--post-ios-shadow-card, 0 1px 2px rgba(0, 0, 0, .04));border:.5px solid var(--post-ios-separator, rgba(60, 60, 67, .12));border-left-width:4px}.postnew-form{display:flex;flex-direction:column;gap:22px;background:var(--post-ios-card, #fff);border-radius:var(--post-ios-radius-md, 12px);padding:18px 16px 20px;box-shadow:var(--post-ios-shadow-card, 0 1px 2px rgba(0, 0, 0, .04));border:.5px solid var(--post-ios-separator, rgba(60, 60, 67, .12))}.postnew-section{display:flex;flex-direction:column;gap:8px}.postnew-label{font-size:13px;font-weight:500;letter-spacing:-.01em;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6));text-transform:none}.postnew-textarea{width:100%;min-height:140px;padding:12px 14px;border:none;border-radius:var(--post-ios-radius-sm, 10px);font-size:17px;font-family:var(--post-ios-font, inherit);font-weight:400;letter-spacing:-.02em;line-height:1.35;resize:vertical;background:var(--post-ios-fill, rgba(118, 118, 128, .12));color:var(--post-ios-label, rgba(0, 0, 0, .88))}.postnew-textarea::placeholder{color:var(--post-ios-tertiary-label, rgba(60, 60, 67, .36))}.postnew-textarea:focus{outline:none;background:var(--post-ios-fill-pressed, rgba(118, 118, 128, .18))}.postnew-images{display:flex;flex-wrap:wrap;gap:12px}.postnew-image-wrap{position:relative;width:96px;height:96px;border-radius:var(--post-ios-radius-sm, 10px);overflow:hidden;background:var(--post-ios-fill, rgba(118, 118, 128, .12))}.postnew-image{width:100%;height:100%;object-fit:cover}.postnew-image-remove{position:absolute;top:6px;right:6px;width:28px;height:28px;border-radius:50%;border:none;background:#00000073;color:#fff;font-size:18px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.postnew-image-add{width:96px;height:96px;border:none;border-radius:var(--post-ios-radius-sm, 10px);display:flex;align-items:center;justify-content:center;cursor:pointer;background:var(--post-ios-fill, rgba(118, 118, 128, .12));transition:background .15s ease}.postnew-image-add:hover{background:var(--post-ios-fill-pressed, rgba(118, 118, 128, .18))}.postnew-file-input{position:absolute;width:0;height:0;opacity:0}.postnew-image-add-inner{font-size:32px;font-weight:300;color:var(--post-ios-tertiary-label, rgba(60, 60, 67, .36))}.postnew-image-add:hover .postnew-image-add-inner{color:var(--post-ios-accent, #007aff)}.postnew-submit{width:100%;padding:14px 16px;border:none;border-radius:var(--post-ios-radius-sm, 10px);background:var(--post-ios-accent, #007aff);color:#fff;font-family:var(--post-ios-font, inherit);font-size:17px;font-weight:600;letter-spacing:-.02em;cursor:pointer;-webkit-tap-highlight-color:transparent}.postnew-submit:hover:not(:disabled){filter:brightness(1.05)}.postnew-submit:disabled{opacity:.45;cursor:not-allowed}.postnew-tag-hint{margin:0 0 8px;font-size:13px;line-height:1.4;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6))}.postnew-tag-pool{display:flex;flex-wrap:wrap;gap:8px}.postnew-tag-chip{padding:8px 14px;border-radius:980px;font-size:15px;font-weight:500;letter-spacing:-.02em;border:none;background:var(--post-ios-fill, rgba(118, 118, 128, .12));color:var(--post-ios-accent, #007aff);cursor:pointer;-webkit-tap-highlight-color:transparent}.postnew-tag-chip--on{background:var(--post-ios-accent-subtle, rgba(0, 122, 255, .22));color:var(--post-ios-accent, #007aff);box-shadow:inset 0 0 0 2px var(--post-ios-accent, #007aff)}.empty-state{padding:32px 24px;text-align:center}.empty-state-title{margin:0 0 8px;font-size:16px;font-weight:600;color:var(--wx-text)}.empty-state-desc{margin:0 0 16px;font-size:14px;color:var(--wx-text-secondary);line-height:1.5}.empty-state-action{margin-top:8px}.empty-state-btn{display:inline-block;padding:10px 20px;font-size:15px;font-weight:500;color:var(--wx-green);background:transparent;border:1px solid var(--wx-green);border-radius:8px;text-decoration:none;cursor:pointer;font-family:inherit;transition:background .2s,color .2s}.empty-state-btn:hover{background:#07c16014;color:var(--wx-green)}.empty-state-btn:focus-visible{outline:2px solid var(--wx-green);outline-offset:2px}.like-burst-wrap{position:fixed;left:0;top:0;width:0;height:0;pointer-events:none;z-index:9998;transform:translate(-50%,-50%)}.like-burst-heart{position:absolute;left:0;top:0;font-size:18px;color:#ff4d6a;opacity:0;animation:like-burst-fly .65s ease-out forwards;animation-delay:calc(var(--i) * .02s)}@keyframes like-burst-fly{0%{transform:translate(0) scale(.5);opacity:1}to{transform:translate(var(--tx),var(--ty)) scale(1.2);opacity:0}}.post-detail-page{padding:10px 12px calc(88px + var(--safe-bottom, 0px));min-height:100%;background:var(--post-ios-bg-grouped, #f2f2f7);font-family:var(--post-ios-font, inherit);-webkit-font-smoothing:antialiased}.post-detail-empty{text-align:center;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6));margin:24px 0;font-size:15px}.post-detail-loading,.post-detail-error{text-align:center;padding:28px 16px;font-size:15px;font-weight:400;letter-spacing:-.02em;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6))}.post-detail-error{color:var(--post-ios-red, #ff3b30)}.post-detail-page>.post-detail-error+button,.post-detail-page .post-detail-text-btn{display:block;margin:12px auto 0;padding:10px 20px;border:none;border-radius:var(--post-ios-radius-sm, 10px);font-family:var(--post-ios-font, inherit);font-size:15px;font-weight:400;color:var(--post-ios-accent, #007aff);background:var(--post-ios-card, #fff);box-shadow:var(--post-ios-shadow-card, 0 1px 2px rgba(0, 0, 0, .04));cursor:pointer}.post-detail-card{background:var(--post-ios-card, #fff);border-radius:var(--post-ios-radius-md, 12px);padding:16px;margin-bottom:12px;box-shadow:var(--post-ios-shadow-card, 0 1px 2px rgba(0, 0, 0, .04));border:.5px solid var(--post-ios-separator, rgba(60, 60, 67, .12))}.post-detail-author{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}.post-detail-delete-btn{margin-left:auto;padding:8px;border:none;background:var(--post-ios-fill, rgba(118, 118, 128, .12));cursor:pointer;border-radius:var(--post-ios-radius-sm, 10px);color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6));-webkit-tap-highlight-color:transparent}.post-detail-delete-btn:hover:not(:disabled){background:#ff3b301f;color:var(--post-ios-red, #ff3b30)}.post-detail-delete-btn:disabled{opacity:.45;cursor:not-allowed}.post-detail-delete-icon{font-size:16px;line-height:1}.post-detail-author-info{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.post-detail-name-tags{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}.post-detail-tags{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.post-detail-tag{display:inline-flex;align-items:center;padding:4px 10px;border-radius:980px;font-size:12px;font-weight:500;letter-spacing:-.01em;text-decoration:none;color:var(--post-ios-accent, #007aff);background:var(--post-ios-accent-subtle, rgba(0, 122, 255, .12));border:none}.post-detail-tag--static{cursor:default}.post-detail-time{font-size:12px;font-weight:400;letter-spacing:-.01em;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6))}.post-detail-avatar-wrap{flex-shrink:0;width:44px;height:44px;border-radius:50%;overflow:hidden;border:.5px solid var(--post-ios-separator, rgba(60, 60, 67, .12));padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent}.post-detail-avatar{width:100%;height:100%;object-fit:cover}.post-detail-avatar-default{object-fit:contain;padding:6px;background:var(--post-ios-fill, rgba(118, 118, 128, .12))}.post-detail-username{font-size:15px;font-weight:600;letter-spacing:-.02em;color:var(--post-ios-label, rgba(0, 0, 0, .88))}.post-detail-content{margin:0 0 14px;font-size:15px;font-weight:400;line-height:1.4;letter-spacing:-.02em;color:var(--post-ios-label, rgba(0, 0, 0, .88));white-space:pre-wrap;word-break:break-word}.post-detail-images{display:flex;flex-wrap:wrap;gap:8px}.post-detail-image-wrap{padding:0;border:none;background:none;cursor:pointer;display:block;border-radius:var(--post-ios-radius-sm, 10px);overflow:hidden;margin:0 0 12px;-webkit-tap-highlight-color:transparent}.post-detail-image{max-width:100%;width:auto;max-height:280px;object-fit:contain;border-radius:var(--post-ios-radius-sm, 10px);background:var(--post-ios-fill, rgba(118, 118, 128, .12))}.post-detail-actions{display:flex;gap:10px;align-items:center;padding-top:4px}.post-detail-like{padding:8px 14px;border:none;border-radius:var(--post-ios-radius-sm, 10px);background:var(--post-ios-fill, rgba(118, 118, 128, .12));font-family:var(--post-ios-font, inherit);font-size:14px;font-weight:500;letter-spacing:-.02em;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6));cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .15s ease,transform .1s ease}.post-detail-like:active{transform:scale(.97);background:var(--post-ios-fill-pressed, rgba(118, 118, 128, .18))}.post-detail-like.is-liked{background:#ff3b301f;color:var(--post-ios-red, #ff3b30)}.post-detail-comments{margin-top:4px}.post-detail-comments-title{margin:0 0 10px;padding:0 4px;font-size:15px;font-weight:600;letter-spacing:-.02em;color:var(--post-ios-label, rgba(0, 0, 0, .88))}.post-detail-comment-list{list-style:none;margin:0;padding:0}.post-detail-comment-wrap{margin-bottom:10px}.post-detail-comment-wrap:last-child{margin-bottom:0}.post-detail-comment{background:var(--post-ios-card, #fff);border-radius:var(--post-ios-radius-md, 12px);padding:12px 14px;margin-bottom:6px;box-shadow:var(--post-ios-shadow-card, 0 1px 2px rgba(0, 0, 0, .04));border:.5px solid var(--post-ios-separator, rgba(60, 60, 67, .12))}.post-detail-reply-list{list-style:none;margin:8px 0 0;padding:0 0 0 14px;border-left:3px solid var(--post-ios-accent-subtle, rgba(0, 122, 255, .25))}.post-detail-comment-reply{margin-bottom:8px;max-width:100%}.post-detail-comment-reply:last-child{margin-bottom:0}.post-detail-comment-content{margin:0 0 8px;font-size:15px;line-height:1.35;letter-spacing:-.02em;color:var(--post-ios-label, rgba(0, 0, 0, .88))}.post-detail-reply-label{color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6));margin-right:4px;font-size:14px}.post-detail-comment-meta{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:12px;font-weight:400;letter-spacing:-.01em;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6))}.post-detail-comment-stat{font-weight:500;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6))}.post-detail-comment-delete{margin-left:auto;padding:6px;border:none;background:transparent;cursor:pointer;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6));font-size:16px;border-radius:var(--post-ios-radius-sm, 10px)}.post-detail-comment-delete:hover{color:var(--post-ios-red, #ff3b30);background:#ff3b3014}.post-detail-reply-delete{padding:4px 8px;border:none;background:none;cursor:pointer;font-size:14px;font-weight:400;color:var(--post-ios-accent, #007aff);border-radius:var(--post-ios-radius-sm, 10px)}.post-detail-reply-delete:hover{opacity:.65}.post-detail-reply-btn{padding:4px 8px;border:none;background:none;color:var(--post-ios-accent, #007aff);cursor:pointer;font-size:14px;font-weight:400;letter-spacing:-.02em;border-radius:var(--post-ios-radius-sm, 10px)}.post-detail-reply-btn:hover{opacity:.65}.post-detail-form{position:fixed;left:0;right:0;bottom:calc(50px + var(--safe-bottom, 0px));padding:8px 12px;padding-bottom:calc(8px + var(--safe-bottom, 0px));background:#f9f9f9f0;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-top:.5px solid var(--post-ios-separator, rgba(60, 60, 67, .12));z-index:50;max-width:430px;margin:0 auto;box-sizing:border-box}.post-detail-replying{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:12px;font-weight:400;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6))}.post-detail-replying button{padding:4px 8px;border:none;background:none;color:var(--post-ios-accent, #007aff);cursor:pointer;font-family:var(--post-ios-font, inherit);font-size:15px;font-weight:400}.post-detail-form-row{display:flex;gap:8px;align-items:center}.post-detail-input{flex:1;min-width:0;padding:10px 12px;border:none;border-radius:var(--post-ios-radius-sm, 10px);font-family:var(--post-ios-font, inherit);font-size:15px;font-weight:400;letter-spacing:-.02em;background:var(--post-ios-fill, rgba(118, 118, 128, .12));color:var(--post-ios-label, rgba(0, 0, 0, .88))}.post-detail-input::placeholder{color:var(--post-ios-tertiary-label, rgba(60, 60, 67, .36))}.post-detail-input:focus{outline:none;background:var(--post-ios-fill-pressed, rgba(118, 118, 128, .18))}.post-detail-send{flex-shrink:0;padding:10px 16px;border:none;border-radius:var(--post-ios-radius-sm, 10px);background:var(--post-ios-accent, #007aff);color:#fff;font-family:var(--post-ios-font, inherit);font-size:15px;font-weight:500;letter-spacing:-.02em;cursor:pointer;-webkit-tap-highlight-color:transparent}.post-detail-send:disabled{background:var(--post-ios-fill, rgba(118, 118, 128, .12));color:var(--post-ios-tertiary-label, rgba(60, 60, 67, .36));cursor:not-allowed;opacity:1}.post-search-page .post-search-hint{margin:0 0 10px;padding:4px 12px 0;font-family:var(--post-ios-font, inherit);font-size:15px;font-weight:400;line-height:1.35;letter-spacing:-.02em;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6))}.post-search-page .post-search-hint strong{color:var(--post-ios-label, rgba(0, 0, 0, .88));font-weight:600}.post-search-empty-msg,.post-search-no-result{margin:12px 12px 8px;font-family:var(--post-ios-font, inherit);font-size:15px;line-height:1.4;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6))}.post-search-back-home{display:block;margin:18px auto 28px;padding:8px 16px;text-align:center;font-family:var(--post-ios-font, inherit);font-size:17px;font-weight:400;letter-spacing:-.02em;color:var(--post-ios-accent, #007aff);-webkit-tap-highlight-color:transparent}.post-search-back-home:active{opacity:.55}.post-tag-feed-page .post-tag-feed-hint{margin:0 0 10px;padding:4px 12px 0;font-family:var(--post-ios-font, inherit);font-size:15px;font-weight:400;line-height:1.35;letter-spacing:-.02em;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6))}.post-tag-feed-page .post-tag-feed-hint strong{color:var(--post-ios-label, rgba(0, 0, 0, .88));font-weight:600}.post-tag-feed-empty{margin:12px 12px 8px;font-family:var(--post-ios-font, inherit);font-size:15px;line-height:1.4;color:var(--post-ios-secondary-label, rgba(60, 60, 67, .6))}.post-tag-feed-back{display:block;margin:18px auto 28px;padding:8px 16px;text-align:center;font-family:var(--post-ios-font, inherit);font-size:17px;font-weight:400;letter-spacing:-.02em;color:var(--post-ios-accent, #007aff);-webkit-tap-highlight-color:transparent}.post-tag-feed-back:active{opacity:.55}.about-team-page{min-height:100%;padding:12px 16px 24px;background:transparent}.about-team-card{padding:18px 16px}.about-team-section+.about-team-section{margin-top:16px;padding-top:12px;border-top:1px solid rgba(0,0,0,.06)}.about-team-title{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--wx-text)}.about-team-list{margin:0}.about-team-intro{margin-top:8px;line-height:1.5}.about-team-member-list{list-style:none;margin:0;padding:0}.about-team-member-list>li+li{margin-top:14px}.about-team-role{margin:0 0 4px;font-size:12px;color:var(--wx-text-secondary);font-weight:500}.about-team-section-role{margin:0 0 12px;font-size:17px;font-weight:700;letter-spacing:-.02em;line-height:1.25;color:var(--wx-text, #111)}.about-team-person-spaced{margin-top:12px;padding-top:12px;border-top:1px solid rgba(0,0,0,.06)}.about-team-school{margin:0 0 6px;font-size:13px;font-weight:400;line-height:1.45;color:var(--wx-text-secondary, #888)}.about-team-name{margin:0 0 6px;font-size:15px;font-weight:600;color:var(--wx-text)}.about-team-subtitle{margin:0 0 6px;font-size:14px;font-weight:700;color:var(--wx-text)}.about-team-tags{margin:0;font-size:13px;color:var(--wx-text-secondary)}.about-thanks-intro-card{margin-bottom:16px}.about-thanks-intro{margin:0;font-size:14px;line-height:1.5;color:var(--wx-text)}.about-thanks-page-title{margin:0 0 12px;font-size:16px;font-weight:600;color:var(--wx-text);padding:0 4px}.about-thanks-no-order{display:block;margin-top:4px;font-size:12px;font-weight:500;color:var(--wx-text-secondary)}.about-thanks-cards{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.about-thanks-cards li{margin:0}.about-thanks-en{margin:0;font-size:13px;font-weight:500;color:var(--wx-text-secondary)}.about-editor-page{min-height:100%;padding:12px 16px 24px;background:transparent}.about-editor-card{padding:18px 16px}.about-editor-header{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:8px}.about-editor-title{margin:0;font-size:16px;font-weight:700;color:var(--wx-text, #111)}.about-editor-date{font-size:12px;color:var(--wx-text-secondary, #888)}.about-editor-section{margin:0 0 8px}.about-editor-p{margin:0 0 8px;font-size:14px;line-height:1.6;color:var(--wx-text, #111)}.about-editor-quote{margin-top:1em;margin-bottom:1em}.about-editor-sign{margin:4px 0 0;font-size:13px;line-height:1.5;text-align:right;color:var(--wx-text-secondary, #666)}.about-editor-divider{margin:8px 0 10px;border:0;border-top:1px solid rgba(0,0,0,.06)}.about-alg-page{min-height:100%;padding:12px 16px 24px;background:transparent}.about-alg-card{padding:18px 16px}.about-alg-title{margin:0 0 14px;font-size:16px;font-weight:700;color:var(--wx-text, #111)}.about-alg-section{margin:0}.about-alg-h3{margin:0 0 10px;font-size:14px;font-weight:700;color:var(--wx-text, #111)}.about-alg-h4{margin:14px 0 8px;font-size:13px;font-weight:700;color:var(--wx-text, #111)}.about-alg-p{margin:0 0 10px;font-size:14px;line-height:1.6;color:var(--wx-text, #111)}.about-alg-ul{margin:0 0 10px;padding-left:18px;font-size:14px;line-height:1.6;color:var(--wx-text, #111)}.about-alg-ul-nested{margin-top:6px}.about-alg-formula{margin:8px 0;padding:10px 12px;border-radius:10px;background:#0000000a;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;color:var(--wx-text, #111);overflow-x:auto}.about-alg-table-wrap{width:100%;overflow-x:auto;margin:8px 0 10px}.about-alg-table{width:100%;border-collapse:collapse;min-width:520px}.about-alg-table th,.about-alg-table td{border:1px solid rgba(0,0,0,.08);padding:10px;vertical-align:top;font-size:13px;line-height:1.5;color:var(--wx-text, #111)}.about-alg-table th{background:#00000008;font-weight:700}.about-alg-hr{margin:16px 0;border:0;border-top:1px solid rgba(0,0,0,.08)}.about-alg-note{margin:10px 0 0;font-size:12px;line-height:1.5;color:var(--wx-text-secondary, #888)}.schedule-page{min-height:100%;padding:10px 12px 16px}.schedule-tabs{display:flex;gap:8px;padding:6px;background:#ffffffa6;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(0,0,0,.06);border-radius:12px;margin-bottom:10px}.schedule-tab{flex:1;border:none;background:transparent;padding:10px 12px;border-radius:10px;font-size:14px;font-weight:600;color:var(--wx-text, #111);opacity:.7}.schedule-tab.active{background:#07c1601f;color:var(--wx-green, #07c160);opacity:1}.schedule-btn{border:none;border-radius:10px;padding:10px 12px;font-size:14px;font-weight:600}.schedule-btn-primary{background:var(--wx-green, #07c160);color:#fff}.schedule-btn-primary:disabled{opacity:.6}.schedule-btn-secondary{background:#0000000f;color:var(--wx-text, #111)}.schedule-push-card{border-radius:12px;padding:12px;margin-bottom:10px;background:#ffffffd1;border:1px solid rgba(7,193,96,.35);box-shadow:0 2px 10px #07c16014}.schedule-push-title{font-size:14px;font-weight:800;color:var(--wx-green, #07c160);margin-bottom:6px}.schedule-push-desc{margin:0 0 10px;font-size:12px;line-height:1.45;color:var(--wx-text-secondary, #555)}.schedule-push-warn{margin:0 0 10px;padding:8px 10px;font-size:12px;line-height:1.4;color:#8b4513;background:#ffc10733;border:1px solid rgba(255,152,0,.45);border-radius:8px}.schedule-push-actions{display:flex;flex-wrap:wrap;gap:8px}.schedule-week-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border-radius:12px;background:#ffffffb3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(0,0,0,.06);margin-bottom:10px}.schedule-week-fixed{font-size:13px;font-weight:600;color:var(--wx-text-secondary, #666)}.schedule-days{display:flex;flex-direction:column;gap:10px}.schedule-day{border-radius:12px;background:#ffffffb3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(0,0,0,.06);overflow:hidden}.schedule-day.schedule-today{border:2px solid var(--wx-green, #07c160);box-shadow:0 0 0 1px #07c16033,0 6px 18px #07c1601f;background:#ffffffd1}.schedule-today-heading{display:flex;flex-direction:column;align-items:flex-start;gap:4px;border-bottom:1px solid rgba(7,193,96,.22);background:linear-gradient(180deg,#07c16014,#fff0)}.schedule-today-meta{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:12px;font-weight:700;color:var(--wx-green, #07c160)}.schedule-today-date{font-weight:600;opacity:.88;color:var(--wx-text-secondary, #555)}.schedule-day-title{margin:0;padding:10px 12px;font-size:14px;font-weight:700;color:var(--wx-text, #111);border-bottom:1px solid rgba(0,0,0,.06)}.schedule-empty{padding:12px;font-size:13px;color:var(--wx-text-secondary, #888)}.schedule-class-list{list-style:none;margin:0;padding:0}.schedule-class{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px}.schedule-class+.schedule-class{border-top:1px solid rgba(0,0,0,.06)}.schedule-class-name{font-size:14px;font-weight:700;color:var(--wx-text, #111)}.schedule-class-meta{margin-top:4px;display:flex;flex-wrap:wrap;gap:8px;font-size:12px;color:var(--wx-text-secondary, #666)}.schedule-class-time,.schedule-class-venue{font-size:14px;font-weight:800;color:var(--wx-text, #111)}.schedule-class-venue{padding:2px 8px;border-radius:999px;background:#0000000d}.schedule-class-code{flex-shrink:0;font-size:11px;font-weight:600;color:var(--wx-text-secondary, #888);opacity:.7}.schedule-import-card,.schedule-preview-card{border-radius:12px;background:#ffffffb3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(0,0,0,.06);padding:12px}.schedule-import{display:flex;flex-direction:column;gap:10px}.schedule-import-title,.schedule-preview-title{font-size:14px;font-weight:700;color:var(--wx-text, #111);margin-bottom:8px}.schedule-import-guide{margin-bottom:10px;padding:10px;border-radius:12px;background:#07c16014;border:1px solid rgba(7,193,96,.18)}.schedule-import-guide-title{font-size:13px;font-weight:800;color:var(--wx-green, #07c160);margin-bottom:6px}.schedule-import-guide-list{margin:0;padding-left:18px;font-size:12px;color:var(--wx-text, #111);opacity:.92;line-height:1.5}.schedule-preview-stats{margin-left:6px;font-size:12px;font-weight:600;color:var(--wx-text-secondary, #666)}.schedule-import-textarea{width:100%;min-height:180px;border-radius:12px;border:1px solid rgba(0,0,0,.08);padding:10px 12px;resize:vertical;background:#ffffffd9;font-size:13px;line-height:1.4}.schedule-import-actions{margin-top:10px;display:flex;gap:10px}.schedule-preview-errors{margin-top:6px;padding:10px;border-radius:12px;background:#ff6b6b14;border:1px solid rgba(255,107,107,.2)}.schedule-preview-errors-title{font-size:13px;font-weight:700;margin-bottom:6px;color:#b42318}.schedule-preview-errors-list{margin:0;padding-left:18px;color:#b42318;font-size:12px}.schedule-preview-more{margin-top:6px;font-size:12px;color:#b42318;opacity:.85}.diary-page{min-height:100%;padding:10px 12px 16px}.diary-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.diary-header-date{font-size:18px;font-weight:800;color:var(--wx-text, #111)}.diary-layout{display:flex;gap:10px;min-height:0}.diary-sidebar{width:120px;flex-shrink:0;display:flex;flex-direction:column;gap:8px}.diary-sidebar-card{border-radius:12px;background:#ffffffb3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(0,0,0,.06);padding:8px 6px}.diary-sidebar-card-scroll{flex:1;min-height:0;overflow-y:auto}.diary-sidebar-section-title{font-size:12px;font-weight:700;color:var(--wx-text-secondary, #666);margin:0 4px 4px}.diary-sidebar-loading,.diary-sidebar-empty{margin:4px;font-size:12px;color:var(--wx-text-secondary, #888)}.diary-sidebar-list{list-style:none;margin:0;padding:0}.diary-sidebar-item{width:100%;border:none;background:transparent;padding:6px;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:12px;color:var(--wx-text, #111)}.diary-sidebar-item.active{background:#07c1601f;color:var(--wx-green, #07c160)}.diary-sidebar-item-main{text-align:left}.diary-sidebar-dot{width:6px;height:6px;border-radius:50%;background:var(--wx-green, #07c160)}.diary-main{flex:1;min-width:0}.diary-editor-card{border-radius:12px;background:#ffffffd9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(0,0,0,.06);padding:10px;min-height:520px}.diary-textarea{width:100%;min-height:440px;border:none;outline:none;resize:vertical;background:transparent;font-size:14px;line-height:1.6;color:var(--wx-text, #111)}.diary-textarea::placeholder{color:var(--wx-text-secondary, #999)}.disclaimer-page{min-height:100%;padding:12px 12px 16px}.disclaimer-card{border-radius:12px;background:#ffffffbf;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(0,0,0,.06);padding:14px}.disclaimer-title{margin:0 0 10px;font-size:18px;font-weight:800;color:var(--wx-text, #111)}.disclaimer-body{font-size:14px;line-height:1.7;color:var(--wx-text, #111)}.disclaimer-body p{margin:0 0 10px;color:var(--wx-text, #111)}.disclaimer-body p:last-child{margin-bottom:0}.myposts-page{padding:12px 16px 24px;min-height:100%;background:transparent}.myposts-loading,.myposts-error{padding:24px 16px;font-size:14px;text-align:center;color:var(--wx-text-secondary)}.myposts-error{color:var(--wx-red, #ee0a24)}.myposts-empty{text-align:center;color:var(--wx-text-secondary);font-size:14px;margin:32px 16px}.myposts-list{list-style:none;margin:0;padding:0}.myposts-list li{margin-bottom:12px}.myposts-list .post-card{margin-bottom:0}.review-card-wrap{display:block;text-decoration:none;color:inherit;margin-bottom:12px}.review-card{padding:12px 14px}.review-card-main{display:flex;gap:12px;align-items:flex-start}.review-card-image-wrap{flex-shrink:0;width:64px;height:64px;border-radius:8px;overflow:hidden;background:var(--wx-bg-secondary)}.review-card-image{width:100%;height:100%;object-fit:cover}.review-card-body{flex:1;min-width:0}.review-card-shop{margin:0 0 2px;font-size:12px;color:var(--wx-text-secondary)}.review-card-product{margin:0 0 4px;font-size:15px;font-weight:600;color:var(--wx-text)}.review-card-rating{margin:0 0 6px;font-size:13px;color:var(--wx-green)}.review-card-content{margin:0 0 4px;font-size:13px;color:var(--wx-text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.review-card-date{margin:0;font-size:11px;color:var(--wx-text-tertiary)}.myreviews-page{padding:12px 16px 24px;min-height:100%;background:transparent}.myreviews-intro{margin:0 0 12px;font-size:14px;color:var(--wx-text-secondary)}.myreviews-list{list-style:none;margin:0;padding:0}.myreviews-list li{margin:0}.myreviews-loading,.myreviews-error,.myreviews-empty{text-align:center;padding:24px 16px;margin:0;font-size:14px;color:var(--wx-text-secondary)}.myreviews-error{color:var(--wx-red, #ee0a24)}.profile-edit-page{padding:16px;min-height:100%;background:transparent}.profile-edit-form{background:#ffffffeb;border-radius:12px;padding:20px;box-shadow:0 1px 3px #0000000f}.profile-edit-field{margin-bottom:20px}.profile-edit-field label{display:block;font-size:14px;font-weight:500;color:var(--wx-text);margin-bottom:8px}.profile-edit-avatar-row{display:flex;align-items:center;gap:16px}.profile-edit-avatar-wrap{flex-shrink:0;width:72px;height:72px;border-radius:50%;overflow:hidden;border:2px solid var(--wx-border);cursor:pointer;display:block}.profile-edit-avatar-wrap:hover{border-color:var(--wx-green)}.profile-edit-avatar-input{position:absolute;width:0;height:0;opacity:0}.profile-edit-avatar{width:100%;height:100%;object-fit:cover}.profile-edit-avatar-default{object-fit:contain;padding:10px;background:var(--wx-bar-bg)}.profile-edit-avatar-loading{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--wx-text-secondary);background:var(--wx-bar-bg)}.profile-edit-avatar-hint{font-size:13px;color:var(--wx-text-secondary)}.profile-edit-field input[type=text]{width:100%;padding:12px 14px;border:1px solid var(--wx-border);border-radius:8px;font-size:15px}.profile-edit-field input:focus{outline:none;border-color:var(--wx-green)}.profile-edit-message{margin:0 0 12px;padding:10px 12px;border-radius:8px;font-size:13px}.profile-edit-message-success{background:#07c1601f;color:var(--wx-green-dark)}.profile-edit-message-error{background:#ff00000f;color:#c00}.profile-edit-btn{width:100%;padding:12px;border:none;border-radius:8px;background:var(--wx-green);color:#fff;font-size:16px;font-weight:500;cursor:pointer}.profile-edit-btn:hover{background:var(--wx-green-dark)}.mailbox-page{padding:16px;min-height:100%;background:transparent}.mailbox-loading,.mailbox-error,.mailbox-empty{margin:24px 0 0;font-size:14px;color:var(--wx-text-secondary);text-align:center}.mailbox-error{color:var(--wx-red, #ee0a24)}.mailbox-intro{margin:0 0 16px;font-size:13px;color:var(--wx-text-secondary);line-height:1.45}.mailbox-item-read{opacity:.85}.mailbox-list{list-style:none;margin:0;padding:0}.mailbox-item{margin-bottom:8px;border-radius:12px;overflow:hidden;background:#ffffffeb;box-shadow:0 1px 3px #0000000f}.mailbox-item-link{display:flex;align-items:flex-start;gap:12px;padding:14px;color:inherit;text-decoration:none}.mailbox-item-link:hover{background:#00000005}.mailbox-item-icon{font-size:20px;flex-shrink:0}.mailbox-item-body{flex:1;min-width:0}.mailbox-item-title{margin:0 0 4px;font-size:15px;font-weight:500;color:var(--wx-text)}.mailbox-item-preview{margin:0 0 4px;font-size:13px;color:var(--wx-text-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.mailbox-item-comment{margin:0 0 4px;font-size:13px;color:var(--wx-green);font-style:italic;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.mailbox-item-time{font-size:12px;color:var(--wx-text-secondary)}.card{display:block;background:#ffffffeb;border-radius:12px;padding:14px;margin-bottom:12px;box-shadow:0 1px 3px #00000014;border:1px solid rgba(255,255,255,.5);text-decoration:none;color:inherit;transition:background .2s}.card:hover{background:var(--wx-bar-bg)}.card:focus-visible{outline:2px solid var(--wx-green);outline-offset:2px}.merchant-card-wrap{display:block;text-decoration:none;color:inherit}.merchant-card{display:flex;align-items:center;gap:14px;min-height:72px}.merchant-card-logo-wrap{flex-shrink:0;width:48px;height:48px;border-radius:10px;overflow:hidden;border:1px solid var(--wx-border);background:var(--wx-bar-bg)}.merchant-card-logo{width:100%;height:100%;object-fit:cover}.merchant-card-logo-default{display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:500;color:var(--wx-text-secondary);object-fit:none}.merchant-card-body{flex:1;min-width:0}.merchant-card-row{display:flex;align-items:center;gap:8px;margin-bottom:2px}.merchant-card-name{font-size:16px;font-weight:600;color:var(--wx-text);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.merchant-card-status{flex-shrink:0;font-size:11px;padding:2px 6px;border-radius:4px;font-weight:500}.merchant-card-status-open{background:#07c1601f;color:var(--wx-green)}.merchant-card-status-closed{background:var(--wx-bar-bg);color:var(--wx-text-secondary)}.merchant-card-rating{display:inline-block;font-size:12px;color:#fa8c16;margin-bottom:2px}.merchant-card-desc{margin:0;font-size:12px;color:var(--wx-text-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.merchant-card-meta{margin:4px 0 0;font-size:11px;color:var(--wx-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.skeleton-card{display:flex;align-items:center;gap:14px;min-height:72px}.skeleton-card-logo{flex-shrink:0;width:48px;height:48px;border-radius:10px}.skeleton-card-body{flex:1;min-width:0}.skeleton-card-title{width:55%;height:16px;margin-bottom:8px;border-radius:4px}.skeleton-card-desc{width:85%;height:12px;border-radius:4px}.area-card-wrap{display:block;text-decoration:none;color:inherit}.area-card-wrap .area-card{min-height:64px;display:flex;flex-direction:column;justify-content:center;gap:4px}.area-card-name{font-size:17px;font-weight:600;color:var(--wx-text);letter-spacing:.02em}.area-card-hint{font-size:12px;color:var(--wx-text-secondary)}.merchant-list-page{min-height:100%;padding:8px 16px 24px;background:transparent}.merchant-list-title--merchants-section{margin-top:18px;margin-bottom:12px;font-size:16px;font-weight:600;padding-top:0;border-top:none}.merchant-list-title{margin:0 0 16px;font-size:18px;font-weight:600;color:var(--wx-text)}.merchant-list-list{list-style:none;margin:0;padding:0}.merchant-list-list li{margin:0}.merchant-list-loading,.merchant-list-error{padding:24px 16px;font-size:14px;text-align:center;color:var(--wx-text-secondary)}.merchant-list-error{color:var(--wx-red, #ee0a24)}.merchant-list-empty{margin:24px 0 0;font-size:14px;color:var(--wx-text-secondary);text-align:center}.merchant-list-ranking-card{margin-top:0;margin-bottom:0;padding:14px 14px 12px;background:linear-gradient(165deg,#fff8ebf2,#fff 38%);border:1px solid rgba(255,180,100,.25);box-shadow:0 2px 12px #0000000f}.merchant-list-ranking-card-head{display:flex;gap:12px;align-items:flex-start;margin-bottom:12px}.merchant-list-ranking-icon{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:22px;background:#ffffffd9;border-radius:12px;box-shadow:0 1px 4px #0000000f}.merchant-list-ranking-card-titles{min-width:0;flex:1}.merchant-list-ranking-card-title{margin:0;font-size:17px;font-weight:700;color:var(--wx-text);letter-spacing:.02em}.merchant-list-ranking-card-title-alt{display:block;margin-top:2px;font-size:12px;font-weight:400;color:var(--wx-text-secondary);letter-spacing:0}.merchant-list-ranking-card-zone{margin:4px 0 0;font-size:14px;font-weight:600;color:var(--wx-orange, #ff976a)}.merchant-list-ranking-card-rule{margin:6px 0 0;font-size:11px;line-height:1.4;color:var(--wx-text-secondary)}.merchant-list-hot-scroll--in-card{margin-bottom:10px}.merchant-list-ranking-full-link{display:block;text-align:center;padding:10px 12px;font-size:14px;font-weight:600;color:var(--wx-link, #576b95);text-decoration:none;border-radius:10px;background:#576b9514}.merchant-list-ranking-full-link:hover{background:#576b951f}.merchant-list-ranking-full-link--ghost{margin-top:8px;background:#0000000a}.merchant-list-ranking-empty{padding:8px 0 4px}.merchant-list-ranking-empty-text{margin:0 0 8px;font-size:13px;line-height:1.5;color:var(--wx-text-secondary)}.merchant-list-hot{margin-bottom:20px}.merchant-list-hot-skeleton{margin-bottom:16px}.merchant-list-hot-skeleton-title{width:70%;max-width:240px;height:18px;border-radius:6px;margin-bottom:12px}.merchant-list-hot-skeleton-row{display:flex;gap:10px;overflow:hidden}.merchant-list-hot-skeleton-card{flex:0 0 100px;height:168px;border-radius:12px}.merchant-list-hot-head{margin-bottom:10px}.merchant-list-hot-title{margin:0;font-size:16px;font-weight:600;color:var(--wx-text)}.merchant-list-hot-sub{margin:4px 0 0;font-size:12px;color:var(--wx-text-secondary)}.merchant-list-hot-scroll{display:flex;gap:10px;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.merchant-list-hot-scroll::-webkit-scrollbar{height:4px}.merchant-list-hot-card{flex:0 0 132px;scroll-snap-align:start;display:flex;flex-direction:column;text-decoration:none;color:inherit;background:var(--wx-bg-elevated, #fff);border-radius:12px;overflow:hidden;box-shadow:0 1px 4px #0000000f;border:1px solid var(--wx-border, rgba(0, 0, 0, .06));position:relative}.merchant-list-hot-rank{position:absolute;top:6px;left:6px;z-index:1;min-width:20px;height:20px;padding:0 6px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;background:linear-gradient(135deg,#ff6b6b,#ee5a24);border-radius:10px}.merchant-list-hot-img-wrap{width:100%;aspect-ratio:1;background:var(--wx-bg, #f5f5f5)}.merchant-list-hot-img{width:100%;height:100%;object-fit:cover;display:block}.merchant-list-hot-body{padding:8px 8px 10px;display:flex;flex-direction:column;gap:2px;min-height:72px}.merchant-list-hot-name{font-size:13px;font-weight:600;color:var(--wx-text);line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.merchant-list-hot-shop{font-size:11px;color:var(--wx-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.merchant-list-hot-tail{margin-top:auto;display:flex;flex-direction:column;gap:2px}.merchant-list-hot-score{font-size:11px;font-weight:600;color:var(--wx-orange, #ff976a);line-height:1.25}.merchant-list-hot-price{font-size:11px;color:var(--wx-text-secondary);line-height:1.25}.rankings-page{min-height:100%;padding:12px 16px 24px;background:transparent}.rankings-loading,.rankings-error{padding:24px 16px;font-size:14px;text-align:center;color:var(--wx-text-secondary)}.rankings-error{color:var(--wx-red, #ee0a24)}.rankings-intro{margin:0 0 16px;font-size:12px;color:var(--wx-text-secondary)}.rankings-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}.rankings-list li{margin:0}.rankings-section-card{padding:14px 16px}.rankings-section-header{margin-bottom:12px}.rankings-section-title{margin:0 0 4px;font-size:18px;font-weight:600;color:var(--wx-text)}.rankings-section-title-en{margin-left:6px;font-size:12px;font-weight:400;color:var(--wx-text-secondary)}.rankings-section-empty{margin:12px 0 0;font-size:13px;color:var(--wx-text-secondary);text-align:center}.rankings-section-desc{margin:0;font-size:12px;color:var(--wx-text-secondary)}.rankings-section-content{display:flex;flex-direction:column;gap:6px}.rankings-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;text-decoration:none;color:inherit;transition:background .2s}.rankings-row:hover{background:var(--wx-bg-secondary)}.rankings-row-static{cursor:default}.rankings-row-static:hover{background:transparent}.rankings-rank{flex-shrink:0;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:#fff;background:var(--wx-green);border-radius:50%}.rankings-name{flex:1;font-size:14px;font-weight:500;color:var(--wx-text);white-space:normal}.rankings-row--product{align-items:flex-start}.rankings-row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.rankings-row--product .rankings-name{flex:none}.rankings-shop,.rankings-score{font-size:12px;line-height:1.35;color:var(--wx-text-secondary)}.rankings-score-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;line-height:1.35;color:var(--wx-text-secondary)}.rankings-meta{flex-shrink:0;font-size:12px;color:var(--wx-text-secondary)}.area-ranking-page{min-height:100%;padding:8px 16px 24px;background:transparent}.area-ranking-back{margin:0 0 12px}.area-ranking-back-link{font-size:14px;color:var(--wx-link, #576b95);text-decoration:none}.area-ranking-back-link:hover{text-decoration:underline}.area-ranking-main-card{padding:16px}.area-ranking-h1{font-size:17px}.area-ranking-footnote{margin:14px 0 0;font-size:11px;line-height:1.45;color:var(--wx-text-secondary)}.merchant-header{display:flex;align-items:center;gap:16px;padding:16px;margin-bottom:16px;background:#ffffffeb;border-radius:12px;border:1px solid rgba(255,255,255,.5);box-shadow:0 1px 3px #00000014}.merchant-header-logo-wrap{flex-shrink:0;width:64px;height:64px;border-radius:12px;overflow:hidden;border:1px solid var(--wx-border);background:var(--wx-bar-bg)}.merchant-header-logo{width:100%;height:100%;object-fit:cover}.merchant-header-logo-default{display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:500;color:var(--wx-text-secondary);object-fit:none}.merchant-header-body{flex:1;min-width:0}.merchant-header-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}.merchant-header-help-wrap{position:relative;flex-shrink:0}.merchant-header-help-btn{width:26px;height:26px;border-radius:999px;border:1px solid rgba(0,0,0,.08);background:#fffffff2;color:var(--wx-text-secondary, #666);font-weight:800;font-size:14px;line-height:1;display:inline-flex;align-items:center;justify-content:center}.merchant-header-help-card{position:absolute;right:0;top:calc(100% + 8px);width:min(320px,76vw);padding:10px;border-radius:12px;background:#ffffffeb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(0,0,0,.08);box-shadow:0 8px 22px #00000029;z-index:50}.merchant-header-help-card p{margin:0 0 8px;font-size:12px;line-height:1.55;color:var(--wx-text, #111)}.merchant-header-help-card p:last-child{margin-bottom:0}.merchant-header-name{margin:0;font-size:18px;font-weight:600;color:var(--wx-text);line-height:1.3;flex:1;min-width:0}.merchant-header-status{flex-shrink:0;font-size:12px;padding:2px 8px;border-radius:4px;font-weight:500}.merchant-header-status-open{background:#07c1601f;color:var(--wx-green)}.merchant-header-status-closed{background:var(--wx-bar-bg);color:var(--wx-text-secondary)}.merchant-header-rating{margin:0 0 4px;font-size:13px;color:#fa8c16}.merchant-header-desc{margin:0 0 4px;font-size:13px;color:var(--wx-text-secondary);line-height:1.4}.merchant-header-address,.merchant-header-hours{margin:0 0 2px;font-size:12px;color:var(--wx-text-secondary);line-height:1.4}.category-sidebar{flex-shrink:0;width:88px;align-self:flex-start;position:sticky;top:0;max-height:100vh;overflow-y:auto;background:#fff9;border-right:1px solid rgba(0,0,0,.06)}.category-sidebar-list{list-style:none;margin:0;padding:8px 0}.category-sidebar-list li{margin:0}.category-sidebar-item{display:block;width:100%;padding:10px 8px;border:none;border-left:3px solid transparent;background:transparent;text-align:center;font-size:13px;color:var(--wx-text-secondary);cursor:pointer;transition:background .2s,color .2s}.category-sidebar-item:hover{background:#0000000a;color:var(--wx-text)}.category-sidebar-item.active{background:#07c16014;color:var(--wx-green);border-left-color:var(--wx-green);font-weight:500}.food-card-wrap{display:block;text-decoration:none;color:inherit}.food-card{display:flex;align-items:center;gap:14px;min-height:88px}.food-card-image-wrap{flex-shrink:0;width:80px;height:80px;border-radius:10px;overflow:hidden;border:1px solid var(--wx-border);background:var(--wx-bar-bg)}.food-card-image-wrap-clickable{padding:0;border:1px solid var(--wx-border);background:var(--wx-bar-bg);cursor:pointer;display:block}.food-card-image{width:100%;height:100%;object-fit:cover}.food-card-image-default{display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:500;color:var(--wx-text-secondary);object-fit:none}.food-card-body{flex:1;min-width:0}.food-card-name{font-size:16px;font-weight:600;color:var(--wx-text);display:block;margin-bottom:4px;white-space:normal}.food-card-price-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:2px}.food-card-price{font-size:15px;font-weight:600;color:var(--wx-green)}.food-card-rating{font-size:14px;font-weight:500;color:#fa8c16}.food-card-desc{margin:0;font-size:12px;color:var(--wx-text-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.food-card-actions{display:flex;gap:12px;margin-top:10px;flex-wrap:wrap}.food-card-action{font-size:13px;padding:4px 10px;border-radius:6px;border:none;cursor:pointer;text-decoration:none;background:transparent;color:inherit;font-family:inherit}.food-card-action-edit{color:var(--wx-green);border:1px solid var(--wx-green)}.food-card-action-edit:hover{background:#07c16014}.food-card-action-delete{color:#e64340;border:1px solid #e64340}.food-card-action-delete:hover{background:#e6434014}.food-card-wrap-merchant{cursor:default}.category-section{margin-bottom:20px}.category-section-title{margin:0 0 10px;padding:0 4px;font-size:15px;font-weight:600;color:var(--wx-text)}.category-section-empty{margin:0 0 8px;padding:8px 4px;font-size:13px;color:var(--wx-text-tertiary)}.category-section-list{list-style:none;margin:0;padding:0}.category-section-list li{margin:0 0 12px}.skeleton-food{display:flex;align-items:center;gap:14px;min-height:88px}.skeleton-food-image{flex-shrink:0;width:80px;height:80px;border-radius:10px}.skeleton-food-body{flex:1;min-width:0}.skeleton-food-name{width:70%;height:16px;margin-bottom:8px;border-radius:4px}.skeleton-food-price{width:90px;height:15px;border-radius:4px}.food-list-page{display:flex;flex-direction:column;height:calc(100vh - 94px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));min-height:0;padding:0 0 24px;background:transparent}.food-list-layout{display:flex;flex:1;min-height:0;overflow:hidden}.food-list-sidebar-skeleton{flex-shrink:0;width:88px;background:#fff9;border-right:1px solid rgba(0,0,0,.06)}.food-list-main{flex:1;min-width:0;padding:12px 16px 0;overflow-y:auto;background:#ffffffe6}.food-list-loading,.food-list-error{padding:24px 16px;font-size:14px;text-align:center;color:var(--wx-text-secondary)}.food-list-error{color:var(--wx-red, #ee0a24)}.food-list-empty{margin:24px 16px 0;font-size:14px;color:var(--wx-text-secondary);text-align:center}.food-shop-hot-entry{padding:8px 16px 0}.food-shop-hot-controls{display:flex;align-items:center;gap:8px}.food-shop-hot-entry-btn{display:inline-flex;align-items:center;justify-content:center;padding:6px 12px;border-radius:999px;border:none;background:linear-gradient(90deg,#ffb347,#fc3);color:#3a2a00;font-size:13px;font-weight:600;box-shadow:0 2px 6px #0000001f}.food-shop-hot-entry-btn:active{transform:translateY(1px);box-shadow:0 1px 3px #0000002e}.food-shop-search-wrap{flex:1;min-width:0}.food-shop-search-input{width:100%;padding:6px 10px;border-radius:999px;border:1px solid rgba(0,0,0,.08);font-size:13px;background:#ffffffe6}.food-shop-search-input::placeholder{color:var(--wx-text-secondary)}.food-shop-hot-header{display:flex;align-items:center;justify-content:space-between;padding:4px 0 8px}.food-shop-hot-title{margin:0;font-size:16px;font-weight:700}.food-shop-hot-back{border:none;background:transparent;color:var(--wx-primary, #07c160);font-size:13px}.food-shop-hot-list{list-style:none;padding:0;margin:4px 0 0}.food-shop-hot-item{display:flex;align-items:flex-start;padding:10px 0;border-bottom:1px solid rgba(0,0,0,.05)}.food-shop-hot-rank{width:28px;font-size:14px;font-weight:600;color:#ff8a00}.food-shop-hot-thumb-wrap{width:64px;height:64px;border-radius:8px;overflow:hidden;background:#f5f5f5;flex-shrink:0;margin-right:10px}.food-shop-hot-thumb{width:100%;height:100%;object-fit:cover}.food-shop-hot-thumb.placeholder{display:flex;align-items:center;justify-content:center;font-size:11px;color:#999}.food-shop-hot-body{flex:1;min-width:0}.food-shop-hot-name-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.food-shop-hot-name{font-size:14px;font-weight:600}.food-shop-hot-price{font-size:13px;font-weight:600;color:#ff5b00}.food-shop-hot-desc{margin:0 0 4px;font-size:12px;color:var(--wx-text-secondary)}.food-shop-hot-meta{display:flex;flex-wrap:wrap;gap:6px;font-size:11px;color:var(--wx-text-secondary)}.food-shop-hot-score{color:#ffb400}.food-shop-hot-reviews{opacity:.9}.food-detail-view{background:#ffffffeb;border-radius:12px;overflow:hidden;margin-bottom:16px;border:1px solid rgba(255,255,255,.5);box-shadow:0 1px 3px #00000014}.food-detail-view-image-wrap{width:100%;aspect-ratio:16 / 10;background:var(--wx-bar-bg);overflow:hidden}.food-detail-view-image-wrap-clickable{cursor:pointer}.food-detail-view-image{width:100%;height:100%;object-fit:cover}.food-detail-view-image-default{display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:500;color:var(--wx-text-secondary);object-fit:none}.food-detail-view-body{padding:16px}.food-detail-view-name-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.food-detail-view-name{margin:0 0 8px;font-size:20px;font-weight:600;color:var(--wx-text);line-height:1.3}.food-detail-view-delete{padding:0;border:none;background:none;cursor:pointer;font-size:18px;color:var(--wx-text-secondary)}.food-detail-view-delete:hover{color:var(--wx-red, #ee0a24)}.food-detail-view-price-row{margin:0 0 12px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.food-detail-view-price{font-size:18px;font-weight:600;color:var(--wx-green)}.food-detail-view-rating{font-size:16px;font-weight:500;color:#fa8c16}.food-detail-view-desc{margin:0;font-size:14px;color:var(--wx-text-secondary);line-height:1.5}.food-detail-page{min-height:100%;padding:12px 16px 24px;background:transparent}.food-detail-loading,.food-detail-error{margin:24px 0 16px;font-size:14px;text-align:center;color:var(--wx-text-secondary)}.food-detail-error{color:var(--wx-red, #ee0a24)}.food-detail-empty{margin:24px 0 16px;font-size:14px;color:var(--wx-text-secondary);text-align:center}.food-detail-back-btn{display:block;margin:0 auto;padding:10px 24px;font-size:15px;color:var(--wx-green);background:transparent;border:1px solid var(--wx-green);border-radius:8px}.food-detail-back-btn:hover{background:#07c16014}.food-detail-actions{display:flex;flex-direction:column;gap:12px;margin-top:16px}.food-detail-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px 20px;font-size:16px;font-weight:500;border-radius:10px;border:none;cursor:pointer;font-family:inherit}.food-detail-btn-review{background:var(--wx-green);color:#fff}.food-detail-btn-review:hover{background:var(--wx-green-dark)}.food-detail-btn-fav{background:#ffffffeb;color:var(--wx-text);border:1px solid var(--wx-border);box-shadow:0 1px 3px #0000000f}.food-detail-btn-fav:hover{background:var(--wx-bar-bg)}.food-detail-btn-fav.is-favorited{border-color:#e64340;color:#e64340}.food-detail-btn-fav.is-favorited:hover{background:#e643400f}.food-detail-btn-fav-icon{font-size:18px;line-height:1}.food-detail-reviews{margin-top:24px;padding-bottom:80px}.food-detail-reviews-title{margin:0 0 12px;font-size:15px;font-weight:600;color:var(--wx-text)}.food-detail-reviews-error{margin:12px 0 0;font-size:14px;color:var(--wx-red, #ee0a24)}.food-detail-reviews-loading,.food-detail-reviews-empty{margin:12px 0 0;font-size:14px;color:var(--wx-text-secondary)}.food-detail-review-list{list-style:none;margin:0;padding:0}.food-detail-review{background:#ffffffeb;border-radius:10px;padding:12px;margin-bottom:10px;box-shadow:0 1px 2px #0000000f}.food-detail-review-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.food-detail-review-user{font-size:14px;font-weight:600;color:var(--wx-text)}.food-detail-review-rating{font-size:12px;padding:2px 8px;border-radius:6px;background:#07c1601f;color:var(--wx-green);font-weight:500}.food-detail-review-content{margin:0 0 10px;font-size:14px;line-height:1.45;color:var(--wx-text);white-space:pre-wrap;word-break:break-word}.food-detail-review-images{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.food-detail-review-image-wrap{display:block;width:72px;height:72px;border-radius:8px;overflow:hidden;background:var(--wx-bar-bg)}.food-detail-review-image{width:100%;height:100%;object-fit:cover}.food-detail-review-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--wx-text-secondary)}.food-detail-review-meta{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--wx-text-secondary)}.food-detail-review-delete{margin-left:auto;padding:0;border:none;background:none;cursor:pointer;font-size:14px;color:var(--wx-text-secondary)}.food-detail-review-delete:hover{color:var(--wx-red, #ee0a24)}.food-detail-reply-delete{padding:0;border:none;background:none;cursor:pointer;font-size:12px;color:var(--wx-text-secondary);margin-left:8px}.food-detail-reply-delete:hover{text-decoration:underline;color:var(--wx-red, #ee0a24)}.food-detail-review-like{padding:4px 10px;border:none;border-radius:6px;background:#0000000f;font-size:12px;color:var(--wx-text-secondary);cursor:pointer}.food-detail-review-like:hover{background:#0000001a}.food-detail-review-like.is-liked{background:#07c16026;color:var(--wx-green)}.food-detail-review-reply-btn{padding:0;border:none;background:none;color:var(--wx-green);cursor:pointer;font-size:12px}.food-detail-review-reply-btn:hover{text-decoration:underline}.food-detail-reply-list{list-style:none;margin:10px 0 0 16px;padding:0 0 0 12px;border-left:2px solid var(--wx-border);max-width:calc(100% - 28px)}.food-detail-reply{margin-bottom:8px}.food-detail-reply-content{margin:0 0 4px;font-size:13px;line-height:1.4;color:var(--wx-text)}.food-detail-reply-user{color:var(--wx-text-secondary);font-weight:500}.food-detail-form{position:fixed;left:0;right:0;bottom:calc(50px + var(--safe-bottom, 0px));padding:8px 12px;padding-bottom:calc(8px + var(--safe-bottom, 0px));background:var(--wx-bar-bg);border-top:1px solid var(--wx-border);z-index:50}.food-detail-replying{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;font-size:12px;color:var(--wx-text-secondary)}.food-detail-replying button{padding:2px 8px;border:none;background:none;color:var(--wx-green);cursor:pointer}.food-detail-form-row{display:flex;gap:8px;align-items:center}.food-detail-input{flex:1;padding:10px 12px;border:1px solid var(--wx-border);border-radius:8px;font-size:14px;background:#fff;color:var(--wx-text)}.food-detail-input:disabled{background:var(--wx-bar-bg);color:var(--wx-text-secondary)}.food-detail-input::placeholder{color:var(--wx-text-secondary)}.food-detail-send{padding:10px 16px;border:none;border-radius:8px;background:var(--wx-green);color:#fff;font-size:14px;font-weight:500;cursor:pointer}.food-detail-send:disabled{background:var(--wx-text-secondary);cursor:not-allowed;opacity:.7}.food-review-publish-page{padding:16px;min-height:100%;background:transparent}.food-review-publish-loading,.food-review-publish-error{padding:24px 16px;font-size:14px;text-align:center;color:var(--wx-text-secondary)}.food-review-publish-error{color:var(--wx-red, #ee0a24)}.food-review-publish-hint{margin:0 0 16px;padding:10px 12px;font-size:13px;line-height:1.45;color:var(--wx-text-secondary);background:#ffffffeb;border-radius:8px;border-left:3px solid var(--wx-green)}.food-review-publish-form{display:flex;flex-direction:column;gap:24px;background:#ffffffeb;border-radius:12px;padding:20px;box-shadow:0 1px 3px #0000000f}.food-review-publish-section{display:flex;flex-direction:column;gap:10px}.food-review-publish-label{font-size:14px;font-weight:500;color:var(--wx-text)}.food-review-publish-rating-row{display:flex;flex-wrap:wrap;gap:8px}.food-review-publish-rating-btn{padding:10px 14px;font-size:14px;font-weight:500;border:1px solid var(--wx-border);border-radius:8px;background:#fff;color:var(--wx-text);cursor:pointer;font-family:inherit;transition:border-color .2s,background .2s,color .2s}.food-review-publish-rating-btn:hover{border-color:var(--wx-green);color:var(--wx-green)}.food-review-publish-rating-btn.active{border-color:var(--wx-green);background:#07c1601f;color:var(--wx-green)}.food-review-publish-textarea{width:100%;min-height:120px;padding:12px;border:1px solid var(--wx-border);border-radius:8px;font-size:15px;font-family:inherit;resize:vertical;background:#fff}.food-review-publish-textarea::placeholder{color:var(--wx-text-secondary)}.food-review-publish-images{display:flex;flex-wrap:wrap;gap:12px}.food-review-publish-image-wrap{position:relative;width:96px;height:96px;border-radius:8px;overflow:hidden;background:var(--wx-bar-bg)}.food-review-publish-image{width:100%;height:100%;object-fit:cover}.food-review-publish-image-remove{position:absolute;top:4px;right:4px;width:24px;height:24px;border-radius:50%;border:none;background:#00000080;color:#fff;font-size:18px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.food-review-publish-image-add{width:96px;height:96px;border:1px dashed var(--wx-border);border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;background:var(--wx-bar-bg)}.food-review-publish-image-add:hover{border-color:var(--wx-green);color:var(--wx-green)}.food-review-publish-file-input{position:absolute;width:0;height:0;opacity:0}.food-review-publish-image-add-inner{font-size:32px;color:var(--wx-text-secondary)}.food-review-publish-image-add:hover .food-review-publish-image-add-inner{color:var(--wx-green)}.food-review-publish-message{margin:0;font-size:14px;padding:8px 0}.food-review-publish-message-success{color:var(--wx-green)}.food-review-publish-message-error{color:#e64340}.food-review-publish-submit{width:100%;padding:14px;border:none;border-radius:8px;background:var(--wx-green);color:#fff;font-size:16px;font-weight:500;cursor:pointer}.food-review-publish-submit:hover{background:var(--wx-green-dark)}.food-review-publish-empty{margin:24px 0 16px;font-size:14px;color:var(--wx-text-secondary);text-align:center}.food-review-publish-back{display:block;margin:0 auto;padding:10px 24px;font-size:15px;color:var(--wx-green);background:transparent;border:1px solid var(--wx-green);border-radius:8px;cursor:pointer}.food-review-publish-back:hover{background:#07c16014}.store-form{background:#ffffffeb;border-radius:12px;padding:20px;box-shadow:0 1px 3px #0000000f;display:flex;flex-direction:column;gap:20px}.store-form-field label{display:block;font-size:14px;font-weight:500;color:var(--wx-text);margin-bottom:8px}.store-form-input,.store-form-select,.store-form-textarea{width:100%;padding:12px;border:1px solid var(--wx-border);border-radius:8px;font-size:15px;font-family:inherit;background:#fff}.store-form-input::placeholder,.store-form-textarea::placeholder{color:var(--wx-text-secondary)}.store-form-textarea{min-height:80px;resize:vertical}.store-form-logo-row{display:flex;align-items:center;gap:12px}.store-form-logo-wrap{flex-shrink:0;width:72px;height:72px;border-radius:12px;overflow:hidden;border:1px solid var(--wx-border);cursor:pointer;display:block;background:var(--wx-bar-bg)}.store-form-logo-wrap:hover{border-color:var(--wx-green)}.store-form-file-input{position:absolute;width:0;height:0;opacity:0}.store-form-logo{width:100%;height:100%;object-fit:cover}.store-form-logo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--wx-text-secondary)}.store-form-logo-hint{font-size:13px;color:var(--wx-text-secondary)}.store-form-message{margin:0;font-size:14px;padding:8px 0}.store-form-message-success{color:var(--wx-green)}.store-form-message-error{color:#e64340}.store-form-actions{display:flex;flex-direction:column;gap:12px;margin-top:8px}.store-form-btn{padding:12px 20px;font-size:16px;font-weight:500;border-radius:8px;border:none;cursor:pointer}.store-form-btn-primary{background:var(--wx-green);color:#fff}.store-form-btn-primary:hover{background:var(--wx-green-dark)}.store-form-btn-secondary{background:transparent;color:var(--wx-text-secondary);border:1px solid var(--wx-border)}.store-form-btn-secondary:hover{background:var(--wx-bar-bg)}.store-create-page{min-height:100%;padding:12px 16px 24px;background:transparent}.store-create-error{margin:0 0 12px;padding:10px 12px;font-size:14px;color:var(--wx-red, #ee0a24);background:#ee0a2414;border-radius:8px}.store-create-loading{margin-top:12px;font-size:14px;color:var(--wx-text-secondary)}.food-manage-page{min-height:100%;padding:12px 16px 24px;background:transparent}.food-manage-merchant{margin:0 0 12px;font-size:16px;font-weight:600;color:var(--wx-text)}.food-manage-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.food-manage-add{display:inline-block;padding:10px 20px;font-size:15px;font-weight:500;color:#fff;background:var(--wx-green);border-radius:8px;text-decoration:none}.food-manage-add:hover{background:var(--wx-green-dark)}.food-manage-edit-shop{display:inline-block;padding:10px 20px;font-size:15px;font-weight:500;color:var(--wx-green);background:#fff;border:1px solid var(--wx-green);border-radius:8px;text-decoration:none}.food-manage-edit-shop:hover{background:#07c16014}.food-manage-add-category{padding:10px 20px;font-size:15px;font-weight:500;color:var(--wx-green);background:#fff;border:1px solid var(--wx-green);border-radius:8px;cursor:pointer}.food-manage-add-category:hover{background:#07c16014}.food-manage-category-form{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:20px;padding:12px;background:#07c1600f;border-radius:8px;border:1px solid var(--wx-border)}.food-manage-category-input{flex:1;min-width:140px;padding:8px 12px;font-size:14px;border:1px solid var(--wx-border);border-radius:6px}.food-manage-category-btn{padding:8px 16px;font-size:14px;font-weight:500;color:#fff;background:var(--wx-green);border:none;border-radius:6px;cursor:pointer}.food-manage-category-btn:hover:not(:disabled){background:var(--wx-green-dark)}.food-manage-category-btn:disabled{opacity:.6;cursor:not-allowed}.food-manage-category-cancel{padding:8px 12px;font-size:14px;color:var(--wx-text-secondary);background:transparent;border:none;cursor:pointer}.food-manage-category-cancel:hover{text-decoration:underline}.food-manage-list{list-style:none;margin:0;padding:0}.food-manage-list li{margin:0}.food-manage-loading,.food-manage-error{margin:24px 0 0;font-size:14px;text-align:center;color:var(--wx-text-secondary)}.food-manage-error{color:var(--wx-red, #ee0a24)}.food-manage-back{display:block;margin:16px auto 0;padding:10px 24px;font-size:15px;color:var(--wx-green);background:transparent;border:1px solid var(--wx-green);border-radius:8px;cursor:pointer}.food-manage-empty{margin:24px 0 0;font-size:14px;color:var(--wx-text-secondary);text-align:center}.food-form{background:#ffffffeb;border-radius:12px;padding:20px;box-shadow:0 1px 3px #0000000f;display:flex;flex-direction:column;gap:20px}.food-form-field label{display:block;font-size:14px;font-weight:500;color:var(--wx-text);margin-bottom:8px}.food-form-input,.food-form-textarea{width:100%;padding:12px;border:1px solid var(--wx-border);border-radius:8px;font-size:15px;font-family:inherit;background:#fff}.food-form-input::placeholder,.food-form-textarea::placeholder{color:var(--wx-text-secondary)}.food-form-select{cursor:pointer;appearance:auto}.food-form-category-hint{margin:0;padding:10px 12px;font-size:13px;color:var(--wx-text-secondary);background:#07c1600f;border-radius:8px;border-left:3px solid var(--wx-green)}.food-form-textarea{min-height:80px;resize:vertical}.food-form-image-row{display:flex;align-items:center;gap:12px}.food-form-image-wrap{flex-shrink:0;width:80px;height:80px;border-radius:10px;overflow:hidden;border:1px solid var(--wx-border);cursor:pointer;display:block;background:var(--wx-bar-bg)}.food-form-image-wrap:hover{border-color:var(--wx-green)}.food-form-file-input{position:absolute;width:0;height:0;opacity:0}.food-form-image{width:100%;height:100%;object-fit:cover}.food-form-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:28px;color:var(--wx-text-secondary)}.food-form-image-hint{font-size:13px;color:var(--wx-text-secondary)}.food-form-message{margin:0;font-size:14px;padding:8px 0}.food-form-message-success{color:var(--wx-green)}.food-form-message-error{color:#e64340}.food-form-actions{display:flex;flex-direction:column;gap:12px;margin-top:8px}.food-form-btn{padding:12px 20px;font-size:16px;font-weight:500;border-radius:8px;border:none;cursor:pointer}.food-form-btn-primary{background:var(--wx-green);color:#fff}.food-form-btn-primary:hover{background:var(--wx-green-dark)}.food-form-btn-secondary{background:transparent;color:var(--wx-text-secondary);border:1px solid var(--wx-border)}.food-form-btn-secondary:hover{background:var(--wx-bar-bg)}.food-create-page{min-height:100%;padding:12px 16px 24px;background:transparent}.food-create-loading,.food-create-error{margin:0 0 12px;font-size:14px;color:var(--wx-text-secondary)}.food-create-error{color:var(--wx-red, #ee0a24)}.food-create-back{display:block;margin-top:12px;padding:10px 24px;font-size:15px;color:var(--wx-green);background:transparent;border:1px solid var(--wx-green);border-radius:8px;cursor:pointer}.merchant-food-detail-page{min-height:100%;padding:12px 16px 24px;background:transparent}.merchant-food-detail-loading,.merchant-food-detail-error{margin:24px 0 16px;font-size:14px;text-align:center;color:var(--wx-text-secondary)}.merchant-food-detail-error{color:var(--wx-red, #ee0a24)}.merchant-food-detail-empty{margin:24px 0 16px;font-size:14px;color:var(--wx-text-secondary);text-align:center}.merchant-food-detail-btn-delete{background:transparent;color:var(--wx-red, #ee0a24);border:1px solid var(--wx-red, #ee0a24)}.merchant-food-detail-btn-delete:hover{background:#ee0a2414}.merchant-food-detail-back{display:block;margin:0 auto;padding:10px 24px;font-size:15px;color:var(--wx-green);background:transparent;border:1px solid var(--wx-green);border-radius:8px;cursor:pointer}.merchant-food-detail-back:hover{background:#07c16014}.merchant-food-detail-actions{display:flex;flex-direction:column;gap:12px;margin-top:16px}.merchant-food-detail-btn{padding:12px 20px;font-size:15px;font-weight:500;border-radius:8px;border:none;cursor:pointer;font-family:inherit}.merchant-food-detail-btn-edit{background:var(--wx-green);color:#fff}.merchant-food-detail-btn-edit:hover{background:var(--wx-green-dark)}.merchant-food-detail-btn-back{background:transparent;color:var(--wx-text-secondary);border:1px solid var(--wx-border)}.merchant-food-detail-btn-back:hover{background:var(--wx-bar-bg)}.merchant-shop-edit-page{min-height:100%;padding:16px;background:transparent}.merchant-shop-edit-title{margin:0 0 20px;font-size:18px;font-weight:600;color:var(--wx-text)}.merchant-shop-edit-loading,.merchant-shop-edit-error{margin:24px 0;font-size:14px;color:var(--wx-text-secondary)}.merchant-shop-edit-error{color:var(--wx-red, #ee0a24)}.merchant-shop-edit-back{display:block;margin-top:12px;padding:10px 20px;font-size:15px;color:var(--wx-green);background:transparent;border:1px solid var(--wx-green);border-radius:8px;cursor:pointer}.merchant-shop-edit-form{background:#ffffffeb;border-radius:12px;padding:20px;box-shadow:0 1px 3px #0000000f;display:flex;flex-direction:column;gap:20px}.merchant-shop-edit-field label{display:block;font-size:14px;font-weight:500;color:var(--wx-text);margin-bottom:8px}.merchant-shop-edit-logo-row{display:flex;align-items:center;gap:12px}.merchant-shop-edit-logo-wrap{flex-shrink:0;width:80px;height:80px;border-radius:10px;overflow:hidden;border:1px solid var(--wx-border);cursor:pointer;display:block;background:var(--wx-bar-bg)}.merchant-shop-edit-file{position:absolute;width:0;height:0;opacity:0}.merchant-shop-edit-logo{width:100%;height:100%;object-fit:cover}.merchant-shop-edit-logo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--wx-text-secondary)}.merchant-shop-edit-hint{font-size:12px;color:var(--wx-text-secondary)}.merchant-shop-edit-input{width:100%;padding:12px;border:1px solid var(--wx-border);border-radius:8px;font-size:15px;background:#fff}.merchant-shop-edit-input:focus{outline:none;border-color:var(--wx-green)}.merchant-shop-edit-actions{display:flex;gap:12px;margin-top:8px}.merchant-shop-edit-btn{padding:12px 24px;border-radius:8px;font-size:15px;font-weight:500;cursor:pointer;border:none}.merchant-shop-edit-btn:disabled{opacity:.7;cursor:not-allowed}.merchant-shop-edit-btn-primary{background:var(--wx-green);color:#fff}.merchant-shop-edit-btn-primary:hover:not(:disabled){background:var(--wx-green-dark)}.merchant-shop-edit-btn-secondary{background:transparent;color:var(--wx-text-secondary);border:1px solid var(--wx-border)}.merchant-shop-edit-btn-secondary:hover{background:var(--wx-bar-bg)}.page-placeholder{padding:24px 16px;margin:16px;text-align:center;color:var(--wx-text);font-size:15px;background:#ffffffeb;border-radius:12px;box-shadow:0 1px 3px #0000000f}.page-placeholder p{margin:0 0 8px}.page-hint{font-size:13px;color:var(--wx-text-secondary);opacity:.9}.splash-screen{position:fixed;inset:0;background:#fff;display:flex;align-items:center;justify-content:center;z-index:999;opacity:1;transition:opacity .3s ease-out}.splash-screen--fade-out{opacity:0;pointer-events:none}.splash-screen-video{max-width:70vw;max-height:70vh;border-radius:12px}.install-hint-backdrop{position:fixed;inset:0;z-index:998;background:#00000040;display:flex;align-items:flex-end;justify-content:center;padding:0 16px 24px}.install-hint-card{width:100%;max-width:420px;background:#fffffffa;border-radius:16px;padding:16px 16px 12px;box-shadow:0 8px 30px #00000026}.install-hint-title{margin:0 0 8px;font-size:16px;font-weight:600;color:var(--wx-text, #111)}.install-hint-text{margin:0 0 12px;font-size:13px;line-height:1.5;color:var(--wx-text-secondary, #666)}.install-hint-actions{display:flex;justify-content:flex-end;gap:8px}.install-hint-btn{padding:8px 14px;font-size:13px;border-radius:999px;border:none;cursor:pointer}.install-hint-btn-secondary{background:#0000000a;color:var(--wx-text-secondary, #666)}.install-hint-btn-primary{background:var(--wx-green, #07c160);color:#fff}.state-loading,.state-error,.state-empty{padding:24px 16px;font-size:14px;text-align:center;line-height:1.5;color:var(--wx-text-secondary)}.state-error{color:var(--wx-red, #ee0a24)}.state-empty{color:var(--wx-text-secondary)}.state-inline-error{margin:0 0 12px;padding:10px 12px;font-size:13px;color:var(--wx-red, #ee0a24);background:#ee0a2414;border-radius:8px}.pressable{-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none;transition:transform 80ms ease-out,box-shadow 80ms ease-out!important}.pressable:active{transform:scale(var(--pressable-scale, .96));box-shadow:var(--pressable-shadow-active)}@media(prefers-reduced-motion:reduce){.pressable{transition:none!important}}
