.page[data-v-4af1b7a1]{min-height:100vh;display:grid;place-items:center;padding:34px 16px 42px;position:relative;overflow:hidden;isolation:isolate}.page[data-v-4af1b7a1]:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.12;pointer-events:none;background-image:radial-gradient(circle at 1px 1px,rgba(31,41,55,.18) 1px,transparent 1px),linear-gradient(120deg,rgba(31,41,55,.05) 0%,transparent 40%,rgba(31,41,55,.05) 100%);background-size:18px 18px,100% 100%}.panel[data-v-4af1b7a1]{width:min(960px,100%);display:grid;justify-items:center;gap:18px}h1[data-v-4af1b7a1]{margin:0;color:#1f2937;font-family:Inter,Noto Sans SC,Source Han Sans SC,PingFang SC,Microsoft YaHei,sans-serif;font-size:clamp(40px,7vw,64px);font-weight:600;letter-spacing:.05em;line-height:1.12;text-align:center;text-shadow:0 2px 8px rgba(17,24,39,.12)}.subtitle[data-v-4af1b7a1]{margin:2px 0 10px;color:#9ca3af;font-size:clamp(13px,2vw,16px);text-align:center}.tabs[data-v-4af1b7a1]{display:inline-flex;border:1px solid #d1d5db;border-radius:999px;padding:4px;background:#fff}.tab-btn[data-v-4af1b7a1]{border:0;border-radius:999px;background:transparent;color:#374151;font-size:14px;padding:8px 18px;cursor:pointer;transition:all .24s ease}.tab-btn.active[data-v-4af1b7a1]{background:#000;color:#fff}.tab-btn[data-v-4af1b7a1]:disabled{cursor:not-allowed;opacity:.7}.wheel-wrap[data-v-4af1b7a1]{position:relative;width:clamp(280px,72vw,460px);aspect-ratio:1 / 1;display:grid;place-items:center}.pointer[data-v-4af1b7a1]{position:absolute;top:0;left:50%;transform:translate(-50%);width:0;height:0;border-left:11px solid transparent;border-right:11px solid transparent;border-bottom:0;border-top:20px solid #1f2937;z-index:8}.wheel-frame[data-v-4af1b7a1]{width:100%;height:100%;border-radius:50%;border:1px solid #d6d9de;background:#fff;position:relative;box-shadow:0 8px 26px #11182714;overflow:hidden}.wheel-surface[data-v-4af1b7a1],.wheel-label-layer[data-v-4af1b7a1]{position:absolute;inset:0;border-radius:50%;transition-property:transform,filter;transition-timing-function:cubic-bezier(.14,.8,.15,1),ease;transition-duration:4.2s,.2s;transform-origin:center}.wheel-surface.spinning[data-v-4af1b7a1]{filter:blur(.5px)}.divider[data-v-4af1b7a1]{position:absolute;left:50%;top:50%;width:50%;height:1px;transform-origin:0 0;background:#e5e7eb}.label[data-v-4af1b7a1]{position:absolute;width:82px;min-height:36px;display:grid;place-items:center;pointer-events:none}.label span[data-v-4af1b7a1]{color:#1f2937;font-size:13.5px;line-height:1.25;text-align:center;white-space:normal;word-break:break-word;max-width:80px;transition-property:transform;transition-timing-function:cubic-bezier(.14,.8,.15,1);transition-duration:4.2s}.spin-btn[data-v-4af1b7a1]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:94px;height:94px;border-radius:50%;border:2px solid #111827;background:#000;color:#fff;font-size:17px;font-weight:600;cursor:pointer;z-index:9;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 8px 18px #0003}.spin-btn[data-v-4af1b7a1]:hover:not(:disabled){transform:translate(-50%,-50%) scale(1.05)}.spin-btn[data-v-4af1b7a1]:active:not(:disabled){transform:translate(-50%,-50%) scale(.98)}.spin-btn[data-v-4af1b7a1]:disabled{opacity:.75;cursor:not-allowed}.editor[data-v-4af1b7a1]{width:min(620px,100%);border:1px solid #e5e7eb;border-radius:14px;background:#fff;padding:14px;box-shadow:0 8px 20px #1118270f;display:grid;gap:12px}.add-form[data-v-4af1b7a1]{display:grid;grid-template-columns:1fr auto;gap:10px}.add-form input[data-v-4af1b7a1]{width:100%;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#1f2937;min-height:44px;padding:10px 12px;font-size:15px;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.add-form input[data-v-4af1b7a1]:focus{border-color:#111827;box-shadow:0 0 0 3px #11182714}.add-form button[data-v-4af1b7a1]{border:0;border-radius:8px;background:#000;color:#fff;min-height:44px;padding:0 18px;font-size:15px;cursor:pointer}.add-form button[data-v-4af1b7a1]:disabled{opacity:.65;cursor:not-allowed}.dish-cards[data-v-4af1b7a1]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dish-card[data-v-4af1b7a1]{border:1px solid #e5e7eb;border-radius:10px;background:#fff;padding:10px 12px;display:grid;grid-template-columns:52px 1fr auto;gap:10px;align-items:center}.dish-thumb[data-v-4af1b7a1]{width:52px;height:52px;border-radius:8px;border:1px solid #e5e7eb;overflow:hidden;background:#f3f4f6}.dish-thumb img[data-v-4af1b7a1]{width:100%;height:100%;object-fit:cover}.dish-card span[data-v-4af1b7a1]{color:#1f2937;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-actions[data-v-4af1b7a1]{display:flex;align-items:center;gap:8px}.upload-btn[data-v-4af1b7a1]{display:inline-flex;align-items:center;justify-content:center;min-height:36px;border:1px solid #d1d5db;background:#fff;color:#374151;border-radius:8px;padding:6px 12px;font-size:13px;cursor:pointer}.upload-input[data-v-4af1b7a1]{display:none}.dish-card button[data-v-4af1b7a1]{border:1px solid #d1d5db;background:#fff;color:#374151;border-radius:8px;min-height:36px;padding:6px 12px;font-size:13px;cursor:pointer}.dish-card button[data-v-4af1b7a1]:disabled{opacity:.6;cursor:not-allowed}.upload-btn.disabled[data-v-4af1b7a1]{opacity:.6;cursor:not-allowed;pointer-events:none}.empty-text[data-v-4af1b7a1]{margin:2px 0 0;color:#9ca3af;font-size:13px}.modal[data-v-4af1b7a1]{position:fixed;inset:0;background:#37415173;display:grid;place-items:center;padding:20px;z-index:1000}.dialog[data-v-4af1b7a1]{width:min(400px,100%);background:#fff;border-radius:16px;padding:22px 22px 20px;text-align:center;box-shadow:0 18px 40px #11182733}.dialog-title[data-v-4af1b7a1]{margin:0 0 10px;color:#1f2937;font-family:Inter,Noto Sans SC,Source Han Sans SC,PingFang SC,Microsoft YaHei,sans-serif;font-size:30px;font-weight:600;letter-spacing:.04em}.result-figure[data-v-4af1b7a1]{margin:0 0 12px;border-radius:12px;overflow:hidden;border:1px solid #e5e7eb;background:#f8fafc}.result-figure img[data-v-4af1b7a1]{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block}.dialog h3[data-v-4af1b7a1]{margin:2px 0 16px;color:#1f2937;font-size:clamp(30px,7vw,36px);font-weight:500}.dialog-actions[data-v-4af1b7a1]{display:flex;justify-content:center;gap:10px}.dialog-actions button[data-v-4af1b7a1]{min-width:106px;min-height:42px;border-radius:10px;padding:0 16px;cursor:pointer;font-size:14px}.btn-secondary[data-v-4af1b7a1]{border:1px solid #d1d5db;background:#fff;color:#1f2937}.btn-primary[data-v-4af1b7a1]{border:0;background:#000;color:#fff}.slide-fade-enter-active[data-v-4af1b7a1],.slide-fade-leave-active[data-v-4af1b7a1]{transition:all .25s ease}.slide-fade-enter-from[data-v-4af1b7a1],.slide-fade-leave-to[data-v-4af1b7a1]{opacity:0;transform:translateY(-8px)}@media(max-width:760px){.panel[data-v-4af1b7a1]{gap:16px}.wheel-wrap[data-v-4af1b7a1]{width:min(92vw,390px)}.label[data-v-4af1b7a1]{width:72px;min-height:32px}.label span[data-v-4af1b7a1]{max-width:70px;font-size:13px}.spin-btn[data-v-4af1b7a1]{width:88px;height:88px;font-size:17px}.add-form[data-v-4af1b7a1]{grid-template-columns:1fr}.add-form button[data-v-4af1b7a1]{min-height:46px}.dish-cards[data-v-4af1b7a1]{grid-template-columns:1fr}.dish-card[data-v-4af1b7a1]{grid-template-columns:48px 1fr;grid-template-rows:auto auto}.dish-thumb[data-v-4af1b7a1]{width:48px;height:48px;grid-row:span 2}.card-actions[data-v-4af1b7a1]{justify-content:flex-start}}@media(max-width:520px){.page[data-v-4af1b7a1]{padding:22px 12px 30px}h1[data-v-4af1b7a1]{font-size:clamp(34px,10vw,44px);letter-spacing:.06em}.subtitle[data-v-4af1b7a1]{font-size:13px;margin-top:-4px}.tabs[data-v-4af1b7a1]{width:100%;max-width:360px;justify-content:center}.tab-btn[data-v-4af1b7a1]{flex:1;min-height:40px;padding:8px 10px}.wheel-wrap[data-v-4af1b7a1]{width:min(94vw,360px)}.label[data-v-4af1b7a1]{width:66px;min-height:30px}.label span[data-v-4af1b7a1]{max-width:64px;font-size:13px;line-height:1.2}.editor[data-v-4af1b7a1]{padding:12px}.dialog[data-v-4af1b7a1]{width:min(340px,calc(100vw - 24px));padding:20px}.dialog-actions button[data-v-4af1b7a1]{flex:1;min-width:0}}@media(prefers-color-scheme:dark){.page[data-v-4af1b7a1]:before{opacity:.1;background-image:radial-gradient(circle at 1px 1px,rgba(0,0,0,.14) 1px,transparent 1px),linear-gradient(120deg,rgba(0,0,0,.05) 0%,transparent 40%,rgba(0,0,0,.05) 100%)}}*{box-sizing:border-box}html,body,#app{margin:0;width:100%;min-height:100%}body{font-family:PingFang SC,Microsoft YaHei,Noto Sans SC,sans-serif;background:#fafafa;color:#1f2937;overflow-x:hidden}
