:root{color:#222;background:#fafaf7;font-family:Microsoft JhengHei,PingFang TC,Noto Sans TC,sans-serif;font-size:18px}*{box-sizing:border-box}body{margin:0}.page{text-align:center;max-width:640px;min-height:100vh;margin:0 auto;padding:24px 16px 120px}h1{margin:24px 0 40px;font-size:32px}.status{background:#eee;border-radius:16px;justify-content:center;align-items:center;gap:16px;padding:32px 16px;font-size:28px;font-weight:700;display:flex}.status.good{color:#1d6b1d;background:#e3f6e3}.status.bad{color:#a11;background:#fde4e4}.status .icon{font-size:48px}.bottom{background:#fafaf7;border-top:1px solid #ddd;padding:16px;position:fixed;bottom:0;left:0;right:0}.main-btn{color:#fff;cursor:pointer;background:#2e7d32;border:none;border-radius:12px;width:100%;max-width:608px;min-height:64px;margin:0 auto;font-size:22px;font-weight:700;display:block}.top-nav{z-index:15;background:#37474f;grid-template-columns:1fr 1fr 1fr;gap:8px;padding:12px 16px;display:grid;position:sticky;top:0}.top-nav button{color:#fff;cursor:pointer;background:0 0;border:2px solid #fff;border-radius:12px;min-height:56px;font-size:22px;font-weight:700}.top-nav button.on{color:#37474f;background:#fff}.user-bar{background:#eceff1;justify-content:space-between;align-items:center;gap:12px;padding:6px 16px;font-size:18px;display:flex}.user-bar button{cursor:pointer;background:#fff;border:1px solid #90a4ae;border-radius:10px;min-height:44px;padding:0 14px;font-size:18px}.year-list[data-v-27635717]{max-width:1400px;margin:0 auto;padding:16px 16px 120px}.head[data-v-27635717]{flex-wrap:wrap;align-items:baseline;gap:16px;display:flex}h1[data-v-27635717]{margin:8px 0 12px;font-size:30px}.season[data-v-27635717]{color:#555;margin:0}.error[data-v-27635717]{color:#a11;font-size:22px}.loading[data-v-27635717]{font-size:22px}.tabs[data-v-27635717]{flex-wrap:wrap;gap:12px;margin-bottom:16px;display:flex}.tabs button[data-v-27635717]{color:#2e7d32;cursor:pointer;background:#fff;border:2px solid #2e7d32;border-radius:12px;flex:1 1 0;min-width:72px;min-height:56px;font-size:22px;font-weight:700}.tabs button.on[data-v-27635717]{color:#fff;background:#2e7d32}.layout[data-v-27635717]{flex-direction:column;gap:16px;display:flex}@media (width>=1100px){.layout[data-v-27635717]{flex-direction:row-reverse;align-items:flex-start}.summary[data-v-27635717]{flex:none;width:360px;position:sticky;top:16px}.table-wrap[data-v-27635717]{flex:1;min-width:0}}.summary[data-v-27635717]{gap:12px;display:grid}.card[data-v-27635717]{background:#fff;border:1px solid #ddd;border-radius:12px;padding:12px 16px}.card.accent[data-v-27635717]{border:2px solid #2e7d32}.card h2[data-v-27635717]{margin:0 0 8px;font-size:20px}.big[data-v-27635717]{margin:0;font-size:36px;font-weight:700}.big small[data-v-27635717]{font-size:20px}.line[data-v-27635717]{margin:0 0 8px}.line b[data-v-27635717]{font-size:24px}dl[data-v-27635717]{grid-template-columns:auto 1fr;gap:4px 16px;margin:0;display:grid}dt[data-v-27635717]{font-size:20px}dd[data-v-27635717]{text-align:right;margin:0;font-size:24px;font-weight:700}.hint[data-v-27635717]{color:#666;margin:8px 0 0;font-size:18px}table[data-v-27635717]{border-collapse:collapse}.mini[data-v-27635717]{width:100%}.mini th[data-v-27635717],.mini td[data-v-27635717]{text-align:right;padding:4px 6px;font-size:18px}.mini th[data-v-27635717]:first-child,.mini td[data-v-27635717]:first-child{text-align:left}.chip[data-v-27635717]{border:1px solid #ccc;border-radius:8px;padding:2px 10px;display:inline-block}.table-wrap[data-v-27635717]{background:#fff;border:1px solid #ccc;border-radius:12px;overflow-x:auto}.list[data-v-27635717]{width:100%;min-width:820px}.list th[data-v-27635717]{color:#fff;white-space:nowrap;background:#37474f;padding:10px 8px;font-size:18px;position:sticky;top:0}.list td[data-v-27635717]{vertical-align:middle;border-top:1px solid #ddd;padding:8px;font-size:18px}.list .type[data-v-27635717]{text-align:center;writing-mode:horizontal-tb;white-space:nowrap;background:#fafafa;font-weight:700}.list .sticky[data-v-27635717]{z-index:1;position:sticky;left:0}.list th.sticky[data-v-27635717]{z-index:2}.list .name[data-v-27635717]{white-space:nowrap;font-size:20px;font-weight:700}.color-label[data-v-27635717]{color:#555;margin-left:8px;font-size:16px;font-weight:400}.list .size[data-v-27635717]{text-align:center;font-size:20px}.list .size.s25[data-v-27635717]{color:#d00;background:#fff;font-weight:900}.list .num[data-v-27635717]{text-align:right;white-space:nowrap;font-size:24px}.list .strong[data-v-27635717]{font-weight:700}.list .note[data-v-27635717]{color:#333;min-width:220px;font-size:18px}.convert[data-v-27635717]{color:#1b5e20;font-weight:700}.ok[data-v-27635717],.est[data-v-27635717]{border-radius:6px;margin:0 4px;padding:0 6px;font-size:16px}.ok[data-v-27635717]{background:#c8e6c9}.est[data-v-27635717]{background:#fff3cd;border:1px dashed #b38600}.bottom[data-v-27635717]{z-index:10;background:#fafaf7;border-top:1px solid #ddd;padding:12px 16px;position:fixed;bottom:0;left:0;right:0}.main-btn[data-v-27635717]{color:#fff;cursor:pointer;background:#2e7d32;border:none;border-radius:12px;width:100%;max-width:608px;min-height:64px;margin:0 auto;font-size:22px;font-weight:700;display:block}.main-btn[data-v-27635717]:disabled{opacity:.6}.change[data-v-717676c6]{max-width:640px;margin:0 auto;padding:16px 16px 120px}h1[data-v-717676c6]{margin:12px 0;font-size:28px}.error[data-v-717676c6]{color:#a11;font-size:22px}.big-text[data-v-717676c6]{margin:6px 0;font-size:22px}.hint[data-v-717676c6]{color:#666}.grid[data-v-717676c6]{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;display:grid}.pick[data-v-717676c6]{color:#2e7d32;cursor:pointer;background:#fff;border:2px solid #2e7d32;border-radius:12px;min-height:72px;font-size:24px;font-weight:700}.pick.on[data-v-717676c6]{color:#fff;background:#2e7d32}.who[data-v-717676c6]{align-items:center;gap:12px;font-size:20px;display:flex}.link[data-v-717676c6]{cursor:pointer;background:0 0;border:1px solid #999;border-radius:8px;padding:6px 12px;font-size:18px}.rows[data-v-717676c6]{gap:10px;margin-top:16px;display:grid}.row[data-v-717676c6]{text-align:left;cursor:pointer;color:#222;border:1px solid #bbb;border-radius:12px;grid-template-columns:1fr auto auto;align-items:center;gap:12px;min-height:64px;padding:8px 14px;font-size:22px;display:grid}.r-name[data-v-717676c6]{font-weight:700}.r-name small[data-v-717676c6]{color:#555;font-size:16px;font-weight:400;display:block}.r-size[data-v-717676c6]{border-radius:8px;padding:2px 8px;font-size:20px}.s25[data-v-717676c6]{color:#d00;background:#fff;font-weight:900}.r-qty[data-v-717676c6]{text-align:right;min-width:96px;font-size:26px;font-weight:700}.r-qty small[data-v-717676c6]{margin-left:2px;font-size:16px}.log-title[data-v-717676c6]{margin:28px 0 8px;font-size:22px}.log[data-v-717676c6]{margin:0;padding:0;list-style:none}.log li[data-v-717676c6]{border-bottom:1px solid #ddd;padding:10px 0;font-size:18px}.l-time[data-v-717676c6]{color:#666;margin-right:8px}.up[data-v-717676c6]{color:#1b5e20}.down[data-v-717676c6]{color:#b71c1c}.back[data-v-717676c6]{color:#2e7d32;cursor:pointer;background:0 0;border:none;min-height:48px;padding:8px 0;font-size:20px}.item-head[data-v-717676c6]{border:1px solid #bbb;border-radius:12px;gap:4px;padding:12px 16px;display:grid}.item-name[data-v-717676c6]{font-size:28px;font-weight:700}.color-label[data-v-717676c6]{color:#555;font-size:18px;font-weight:400}.item-size[data-v-717676c6]{border-radius:6px;justify-self:start;padding:0 8px;font-size:22px}.item-now[data-v-717676c6]{font-size:22px}.item-now b[data-v-717676c6]{font-size:28px}.unit-switch[data-v-717676c6]{grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;display:grid}.unit-switch button[data-v-717676c6]{color:#1565c0;cursor:pointer;background:#fff;border:2px solid #1565c0;border-radius:12px;min-height:56px;font-size:22px;font-weight:700}.unit-switch button.on[data-v-717676c6]{color:#fff;background:#1565c0}.per-tray[data-v-717676c6]{justify-content:center;align-items:center;gap:12px;margin-top:10px;font-size:22px;display:flex}.per-tray button[data-v-717676c6]{cursor:pointer;background:#fff;border:1px solid #999;border-radius:12px;width:56px;height:56px;font-size:26px}.per-tray b[data-v-717676c6]{text-align:center;min-width:40px;font-size:28px}.display[data-v-717676c6]{text-align:right;background:#fff;border:2px solid #333;border-radius:12px;margin-top:14px;padding:8px 16px}.digits[data-v-717676c6]{font-size:48px;font-weight:700}.unit[data-v-717676c6]{font-size:24px}.preview[data-v-717676c6]{text-align:right;min-height:32px;margin:8px 0;font-size:22px}.keypad[data-v-717676c6]{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.keypad button[data-v-717676c6]{cursor:pointer;background:#fff;border:1px solid #aaa;border-radius:12px;min-height:68px;font-size:32px;font-weight:700}.keypad button.small[data-v-717676c6]{background:#eee;font-size:22px}.done[data-v-717676c6]{text-align:center;padding-top:24px}.check[data-v-717676c6]{color:#fff;background:#2e7d32;border-radius:50%;width:140px;height:140px;margin:0 auto;font-size:96px;line-height:140px}.done h1[data-v-717676c6]{font-size:40px}.undo[data-v-717676c6]{color:#b71c1c;cursor:pointer;background:#fff;border:2px solid #b71c1c;border-radius:12px;min-height:64px;margin-top:28px;padding:0 24px;font-size:22px;font-weight:700}.overlay[data-v-717676c6]{z-index:20;background:#00000080;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.dialog[data-v-717676c6]{background:#fff;border-radius:16px;gap:8px;width:100%;max-width:480px;padding:20px;display:grid}.dialog h2[data-v-717676c6]{color:#b71c1c;margin:0 0 8px;font-size:26px}.dialog .main-btn[data-v-717676c6]{margin-top:8px}.ghost[data-v-717676c6]{cursor:pointer;background:#fff;border:2px solid #999;border-radius:12px;min-height:56px;font-size:22px}.bottom[data-v-717676c6]{z-index:10;background:#fafaf7;border-top:1px solid #ddd;padding:12px 16px;position:fixed;bottom:0;left:0;right:0}.main-btn[data-v-717676c6]{color:#fff;cursor:pointer;background:#2e7d32;border:none;border-radius:12px;width:100%;max-width:608px;min-height:64px;margin:0 auto;font-size:24px;font-weight:700;display:block}.main-btn[data-v-717676c6]:disabled{background:#9e9e9e}.order[data-v-b0707ba2]{max-width:640px;margin:0 auto;padding:16px 16px 120px}h1[data-v-b0707ba2]{margin:12px 0;font-size:28px}.error[data-v-b0707ba2]{color:#a11;font-size:22px}.big-text[data-v-b0707ba2]{margin:6px 0;font-size:22px}.hint[data-v-b0707ba2]{color:#666}.sub[data-v-b0707ba2]{margin:28px 0 8px;font-size:22px}.grid[data-v-b0707ba2]{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;display:grid}.pick[data-v-b0707ba2]{color:#2e7d32;cursor:pointer;background:#fff;border:2px solid #2e7d32;border-radius:12px;min-height:72px;font-size:22px;font-weight:700}.who[data-v-b0707ba2]{align-items:center;gap:12px;font-size:20px;display:flex}.link[data-v-b0707ba2]{cursor:pointer;background:#fff;border:1px solid #999;border-radius:8px;min-height:40px;padding:6px 12px;font-size:18px}.back[data-v-b0707ba2]{color:#2e7d32;cursor:pointer;background:0 0;border:none;min-height:48px;padding:8px 0;font-size:20px}.recent[data-v-b0707ba2]{margin:0;padding:0;list-style:none}.recent li[data-v-b0707ba2]{border-bottom:1px solid #ddd;flex-wrap:wrap;align-items:center;gap:6px;padding:10px 0;font-size:18px;display:flex}.recent .link[data-v-b0707ba2]{margin-left:auto}.tag[data-v-b0707ba2]{color:#fff;border-radius:6px;padding:2px 8px;font-size:16px}.tag.book[data-v-b0707ba2],.kind.book[data-v-b0707ba2]{background:#c62828}.tag.plan[data-v-b0707ba2],.kind.plan[data-v-b0707ba2]{background:#1565c0}.c-book[data-v-b0707ba2]{color:#c62828}.c-plan[data-v-b0707ba2]{color:#1565c0}.kinds[data-v-b0707ba2]{gap:16px;margin-top:16px;display:grid}.kind[data-v-b0707ba2]{color:#fff;cursor:pointer;border:none;border-radius:16px;min-height:110px;font-size:32px;font-weight:700}.kind small[data-v-b0707ba2]{margin-top:4px;font-size:18px;font-weight:400;display:block}.specs[data-v-b0707ba2]{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.specs button[data-v-b0707ba2]{color:#2e7d32;cursor:pointer;background:#fff;border:2px solid #2e7d32;border-radius:12px;min-height:72px;font-size:22px;font-weight:700}.specs button small[data-v-b0707ba2]{font-size:16px;font-weight:400;display:block}.specs button.on[data-v-b0707ba2]{color:#fff;background:#2e7d32}.rows[data-v-b0707ba2]{gap:10px;margin-top:16px;display:grid}.row[data-v-b0707ba2]{text-align:left;cursor:pointer;color:#222;border:1px solid #bbb;border-radius:12px;grid-template-columns:1fr auto auto;align-items:center;gap:12px;min-height:64px;padding:8px 14px;font-size:22px;display:grid}.row.out[data-v-b0707ba2]{color:#888}.row[data-v-b0707ba2]:disabled{cursor:not-allowed}.r-name[data-v-b0707ba2]{font-weight:700}.r-name small[data-v-b0707ba2]{color:#555;font-size:16px;font-weight:400;display:block}.r-size[data-v-b0707ba2]{border-radius:8px;padding:2px 8px;font-size:20px}.s25[data-v-b0707ba2]{color:#d00;background:#fff;font-weight:900}.r-qty[data-v-b0707ba2]{text-align:right;min-width:120px;font-size:24px;font-weight:700}.r-qty small[data-v-b0707ba2]{font-size:16px}.plan-left[data-v-b0707ba2]{color:#1565c0;font-size:16px;font-weight:400;display:block}.item-head[data-v-b0707ba2]{border:1px solid #bbb;border-radius:12px;gap:4px;padding:12px 16px;display:grid}.item-name[data-v-b0707ba2]{font-size:28px;font-weight:700}.color-label[data-v-b0707ba2]{color:#555;font-size:18px;font-weight:400}.item-size[data-v-b0707ba2]{border-radius:6px;justify-self:start;padding:0 8px;font-size:22px}.item-now[data-v-b0707ba2]{font-size:22px}.item-now b[data-v-b0707ba2]{font-size:28px}.who-line[data-v-b0707ba2]{font-size:20px;font-weight:700}.unit-switch[data-v-b0707ba2],.two[data-v-b0707ba2]{grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;display:grid}.unit-switch button[data-v-b0707ba2],.two button[data-v-b0707ba2]{color:#1565c0;cursor:pointer;background:#fff;border:2px solid #1565c0;border-radius:12px;min-height:56px;font-size:22px;font-weight:700}.unit-switch button.on[data-v-b0707ba2],.two button.on[data-v-b0707ba2]{color:#fff;background:#1565c0}.per-tray[data-v-b0707ba2]{justify-content:center;align-items:center;gap:12px;margin-top:10px;font-size:22px;display:flex}.per-tray button[data-v-b0707ba2]{cursor:pointer;background:#fff;border:1px solid #999;border-radius:12px;width:56px;height:56px;font-size:26px}.per-tray b[data-v-b0707ba2]{text-align:center;min-width:40px;font-size:28px}.display[data-v-b0707ba2]{text-align:right;background:#fff;border:2px solid #333;border-radius:12px;margin-top:14px;padding:8px 16px}.digits[data-v-b0707ba2]{font-size:48px;font-weight:700}.unit[data-v-b0707ba2]{font-size:24px}.preview[data-v-b0707ba2]{text-align:right;min-height:32px;margin:8px 0;font-size:22px}.down[data-v-b0707ba2]{color:#b71c1c}.keypad[data-v-b0707ba2]{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.keypad button[data-v-b0707ba2]{cursor:pointer;background:#fff;border:1px solid #aaa;border-radius:12px;min-height:68px;font-size:32px;font-weight:700}.keypad button.small[data-v-b0707ba2]{background:#eee;font-size:22px}.extra[data-v-b0707ba2]{margin-top:20px}.field[data-v-b0707ba2]{margin-top:14px;font-size:20px;display:block}.field input[data-v-b0707ba2]{border:1px solid #999;border-radius:10px;width:100%;min-height:56px;margin-top:6px;padding:0 12px;font-size:22px;display:block}.field .two[data-v-b0707ba2]{margin-top:6px}.done[data-v-b0707ba2]{text-align:center;padding-top:24px}.check[data-v-b0707ba2]{color:#fff;background:#2e7d32;border-radius:50%;width:140px;height:140px;margin:0 auto;font-size:96px;line-height:140px}.done h1[data-v-b0707ba2]{font-size:40px}.after[data-v-b0707ba2]{background:#fff;border:1px solid #ccc;border-radius:12px;gap:6px;margin-top:12px;padding:12px;font-size:22px;display:grid}.after b[data-v-b0707ba2]{font-size:26px}.undo[data-v-b0707ba2]{color:#b71c1c;cursor:pointer;background:#fff;border:2px solid #b71c1c;border-radius:12px;min-height:64px;margin-top:24px;padding:0 24px;font-size:22px;font-weight:700}.ghost[data-v-b0707ba2]{cursor:pointer;background:#fff;border:2px solid #999;border-radius:12px;min-height:56px;font-size:22px}.wide[data-v-b0707ba2]{margin:16px auto 0;padding:0 24px;display:block}.bottom[data-v-b0707ba2]{z-index:10;background:#fafaf7;border-top:1px solid #ddd;padding:12px 16px;position:fixed;bottom:0;left:0;right:0}.main-btn[data-v-b0707ba2]{color:#fff;cursor:pointer;background:#2e7d32;border:none;border-radius:12px;width:100%;max-width:608px;min-height:64px;margin:0 auto;font-size:24px;font-weight:700;display:block}.main-btn[data-v-b0707ba2]:disabled{background:#9e9e9e}.login[data-v-8890e99f]{max-width:520px;margin:0 auto;padding:16px 16px 120px}.brand[data-v-8890e99f]{text-align:center;color:#2e7d32;margin:16px 0;font-size:32px}h2[data-v-8890e99f]{text-align:center;margin:8px 0 16px;font-size:26px}.hint[data-v-8890e99f]{color:#555;text-align:center}.field[data-v-8890e99f]{margin-top:16px;font-size:20px;display:block}.field input[data-v-8890e99f]{border:1px solid #999;border-radius:10px;width:100%;min-height:56px;margin-top:6px;padding:0 12px;font-size:22px;display:block}.msg[data-v-8890e99f]{color:#b71c1c;text-align:center;min-height:32px;margin:8px 0;font-size:22px}.grid[data-v-8890e99f]{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;display:grid}.pick[data-v-8890e99f]{color:#2e7d32;cursor:pointer;background:#fff;border:2px solid #2e7d32;border-radius:12px;min-height:80px;font-size:26px;font-weight:700}.dots[data-v-8890e99f]{justify-content:center;gap:20px;margin:8px 0;display:flex}.dots span[data-v-8890e99f]{border:3px solid #333;border-radius:50%;width:28px;height:28px}.dots span.on[data-v-8890e99f]{background:#333}.keypad[data-v-8890e99f]{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.keypad button[data-v-8890e99f]{cursor:pointer;background:#fff;border:1px solid #aaa;border-radius:12px;min-height:72px;font-size:32px;font-weight:700}.keypad button.small[data-v-8890e99f]{background:#eee;font-size:22px}.ghost[data-v-8890e99f]{cursor:pointer;background:#fff;border:2px solid #999;border-radius:12px;width:100%;min-height:56px;margin-top:16px;font-size:22px;display:block}.device-out[data-v-8890e99f]{color:#777;cursor:pointer;background:0 0;border:none;min-height:48px;margin:40px auto 0;font-size:18px;text-decoration:underline;display:block}.bottom[data-v-8890e99f]{background:#fafaf7;border-top:1px solid #ddd;padding:12px 16px;position:fixed;bottom:0;left:0;right:0}.main-btn[data-v-8890e99f]{color:#fff;cursor:pointer;background:#2e7d32;border:none;border-radius:12px;width:100%;max-width:488px;min-height:64px;margin:0 auto;font-size:24px;font-weight:700;display:block}.main-btn[data-v-8890e99f]:disabled{background:#9e9e9e}
