.tw-app{--tw-green:var(--primary);max-width:720px;padding:0 20px calc(28px + env(safe-area-inset-bottom));color:var(--text);background:var(--surface);min-height:100dvh;margin:0 auto;font-family:system-ui,Noto Sans TC,sans-serif}.tw-app *{box-sizing:border-box}.tw-app button,.tw-app a{touch-action:manipulation}.tw-app button{font:inherit;border:1px solid var(--border);color:var(--tw-green);cursor:pointer;background:#fff;border-radius:14px;min-height:44px;padding:10px 15px}.tw-app button[aria-pressed=true]{background:var(--surface-soft);border-color:var(--primary);color:var(--text);font-weight:700}.tw-app a{color:var(--tw-green)}.tw-header{justify-content:space-between;align-items:center;gap:10px;padding:22px 0;display:flex}.tw-brand{white-space:nowrap;font-size:20px;font-weight:800;text-decoration:none}.tw-header nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;font-size:12px;display:flex}.tw-hero{background:var(--surface-soft);border-radius:30px;margin:10px 0 24px;padding:28px;position:relative;overflow:hidden}.tw-hero h1{z-index:1;margin:16px 0 12px;font-size:clamp(26px,5vw,38px);line-height:1.4;position:relative}.tw-hero p{max-width:75%;font-size:14px;line-height:1.7}.tw-mascot{opacity:.8;font-size:86px;position:absolute;bottom:18px;right:15px;transform:rotate(12deg)}.tw-tag{white-space:nowrap;background:#fff9e8;border-radius:20px;padding:5px 10px;font-size:12px;display:inline-block}.tw-panel,.tw-meal{border:1px solid var(--border);background:#fff;border-radius:24px;margin-bottom:16px;padding:22px;box-shadow:0 4px #edf0e33d}.tw-app h2{margin:0 0 18px;font-size:20px}.tw-app h3{margin:20px 0 12px;font-size:16px}.tw-days{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.tw-days button{padding:10px 0;font-size:18px}.tw-days small{margin-left:3px;font-size:11px}.tw-row{gap:10px;display:flex}.tw-row button{flex:1}.tw-budget{margin-top:24px;font-weight:700;display:block}.tw-budget span{border:1px solid var(--border);border-radius:16px;align-items:center;gap:10px;margin-top:10px;padding:8px 14px;display:flex}.tw-budget input{width:100%;min-width:0;color:var(--tw-green);background:0 0;border:0;padding:8px;font:700 24px system-ui}.tw-app .tw-primary{background:var(--tw-green);color:#fff;width:100%;min-height:52px;margin:10px 0;font-weight:700}.tw-hint{color:var(--text-subtle);font-size:14px;line-height:1.7}.tw-small,.tw-footer{color:var(--text-subtle);font-size:12px;line-height:1.8}.tw-notice{background:#fff0dc;border-radius:14px;padding:16px}.tw-tabs{background:color-mix(in srgb, var(--surface) 96%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:3;gap:8px;padding:12px 0;display:flex;position:sticky;top:0}.tw-tabs button{flex:1;padding:10px 4px;font-size:14px}.tw-section{padding-top:16px}.tw-section-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.tw-section-title h2{margin:0;scroll-margin-top:90px}.tw-section-title button{font-size:12px}.tw-meal-top{color:var(--text-subtle);justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px;font-size:12px;display:flex}.tw-product{align-items:center;gap:16px;display:flex}.tw-product img{object-fit:contain;background:var(--surface-soft);border-radius:18px;flex-shrink:0;width:84px;height:84px}.tw-product h3{margin:0 0 10px;line-height:1.5}.tw-product strong{color:var(--tw-green);font-size:18px}.tw-product p{margin:8px 0;font-size:12px}.tw-product small{color:var(--text-subtle);font-size:11px}.tw-actions{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.tw-actions button,.tw-actions a{min-height:44px;padding:10px 12px;font-size:12px}.tw-actions a{background:var(--surface-soft);border-radius:14px;align-items:center;text-decoration:none;display:inline-flex}.tw-app details{color:var(--text-subtle);border-top:1px dashed var(--border);margin-top:18px;padding-top:12px;font-size:12px;line-height:1.7}.tw-app summary{cursor:pointer;min-height:30px}.tw-stats{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:20px;display:grid}.tw-stats div{background:var(--surface-soft);text-align:center;border-radius:20px;padding:20px 8px}.tw-stats strong,.tw-stats span{display:block}.tw-stats strong{font-size:22px}.tw-stats span{margin-top:5px;font-size:12px}.tw-record{border-bottom:1px solid var(--border);gap:8px;padding:16px 0;display:grid}.tw-record span{font-size:12px}.tw-footer{padding:24px 4px}.tw-footer a{padding:12px 0;display:inline-block}.tw-app :focus-visible{outline:3px solid var(--brand-coral);outline-offset:3px}@media (max-width:400px){.tw-app{padding-left:12px;padding-right:12px}.tw-header{gap:6px}.tw-brand{font-size:17px}.tw-panel,.tw-meal{padding:16px}.tw-product{gap:10px}.tw-product img{width:64px;height:64px}.tw-mascot{font-size:62px;right:6px}.tw-hero{padding:22px}.tw-meal-top{font-size:11px}}.site-shell[lang=zh-TW] .bottom-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.site-shell[lang=zh-TW] .bottom-nav a{color:var(--text-subtle);flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:48px;font-size:11px;text-decoration:none;display:flex}.site-shell[lang=zh-TW] .bottom-nav a.active{color:var(--primary);font-weight:800}.site-shell[lang=zh-TW]{font-family:Arial,Noto Sans TC,sans-serif}.site-shell[lang=zh-TW] .today-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
