.toasts[data-v-e809e52a]{position:fixed;top:calc(var(--header-h, 56px) + 12px);right:16px;z-index:90;display:flex;flex-direction:column;gap:8px;max-width:min(420px,calc(100vw - 32px));pointer-events:none}.toast[data-v-e809e52a]{pointer-events:auto;background:var(--surface);border:1px solid var(--line-strong);border-left:4px solid var(--info);border-radius:var(--radius-s);box-shadow:var(--shadow-pop);padding:10px 14px;font-size:13.5px;cursor:pointer;word-break:break-word}.toast.ok[data-v-e809e52a]{border-left-color:var(--ok)}.toast.err[data-v-e809e52a]{border-left-color:var(--danger);color:var(--danger)}.toast.info[data-v-e809e52a]{border-left-color:var(--info)}.toast-enter-active[data-v-e809e52a],.toast-leave-active[data-v-e809e52a]{transition:opacity .22s var(--ease-expo),transform .22s var(--ease-expo)}.toast-enter-from[data-v-e809e52a],.toast-leave-to[data-v-e809e52a]{opacity:0;transform:translate(12px)}@media(max-width:899px){.toasts[data-v-e809e52a]{top:calc(var(--safe-t) + var(--header-h, 56px) + 8px);left:12px;right:12px;max-width:none}.toast-enter-from[data-v-e809e52a],.toast-leave-to[data-v-e809e52a]{transform:translateY(-10px)}}:root{--bg: #f4f2ec;--glow1: #e7efe3;--glow2: #f2ebda;--surface: #fffdf9;--surface2: #f6f3ea;--line: #e6e1d2;--line-strong: #d2cbb8;--ink: #1c2418;--muted: #5a6852;--faint: #657060;--primary: #1e4a34;--primary-press: #153726;--primary-soft: #e7eee5;--gold: #b08c4a;--gold-strong: #81622a;--gold-soft: #f3ead6;--ok: #2f6d43;--warn: #a8652f;--danger: #a8432f;--info: #3a6a8a;--radius: 16px;--radius-s: 10px;--shadow-card: 0 1px 2px rgba(28, 36, 24, .04), 0 8px 24px rgba(28, 36, 24, .07);--shadow-pop: 0 12px 34px rgba(15, 25, 18, .18);--glass: rgba(255, 253, 249, .84);--ease-expo: cubic-bezier(.16, 1, .3, 1);--nav-h: 56px;--safe-t: env(safe-area-inset-top, 0px);--safe-b: env(safe-area-inset-bottom, 0px);--safe-l: env(safe-area-inset-left, 0px);--safe-r: env(safe-area-inset-right, 0px)}@media(prefers-color-scheme:dark){:root{--bg: #0d1310;--glow1: #12211a;--glow2: #1b1912;--surface: #161e18;--surface2: #1b251d;--line: #2a352c;--line-strong: #3d4b3e;--ink: #e9efe8;--muted: #a0b3a3;--faint: #75866f;--primary: #8fc79c;--primary-press: #79b488;--primary-soft: #1e2c22;--gold: #d2b273;--gold-strong: #e0c795;--gold-soft: #2a2416;--ok: #7fc794;--warn: #d8a06a;--danger: #e08a71;--info: #7fb0d4;--shadow-card: 0 1px 2px rgba(0, 0, 0, .25), 0 8px 24px rgba(0, 0, 0, .3);--shadow-pop: 0 12px 34px rgba(0, 0, 0, .5);--glass: rgba(22, 30, 24, .86);--ease-expo: cubic-bezier(.16, 1, .3, 1)}}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html{height:100%}body{min-height:100%;font-family:system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;background:var(--bg);color:var(--ink);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(62% 42% at 88% -8%,var(--glow1),transparent 62%),radial-gradient(52% 36% at -4% 2%,var(--glow2),transparent 58%)}button{font-family:inherit;cursor:pointer}input,select{font-family:inherit;font-size:inherit;color:inherit}::selection{background:var(--gold-soft)}:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:6px}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:18px 20px}.card+.card{margin-top:16px}.card>h3{display:flex;align-items:center;gap:8px;font-size:16px;margin-bottom:12px}.card>h3:before{content:"";width:4px;height:15px;border-radius:2px;flex:none;background:linear-gradient(180deg,var(--gold),var(--primary))}.subhint{font-size:12px;font-weight:400;color:var(--muted)}.note{font-size:12.5px;color:var(--faint);margin-bottom:10px}.btn{border:1px solid var(--primary);background:var(--primary);color:#fffdf9;border-radius:var(--radius-s);padding:8px 16px;font-size:14px;font-weight:600;min-height:38px;transition:background .18s var(--ease-expo),border-color .18s var(--ease-expo)}.btn:hover:not(:disabled){background:var(--primary-press)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.ghost{background:transparent;color:var(--primary);border-color:var(--line-strong)}.btn.ghost:hover:not(:disabled){background:var(--primary-soft)}.btn.danger{background:transparent;color:var(--danger);border-color:var(--danger)}.btn.danger:hover:not(:disabled){background:#a8432f14}.btn.small{min-height:32px;padding:4px 10px;font-size:13px}.field{display:flex;flex-direction:column;gap:5px}.field>label{font-size:12.5px;color:var(--muted);font-weight:600}.field input,.field select{border:1px solid var(--line-strong);background:var(--surface);border-radius:var(--radius-s);padding:8px 10px;min-height:38px;font-size:16px}.field input:disabled,.field select:disabled{opacity:.6}.tag{display:inline-block;padding:1px 8px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid transparent}.tag.ok{color:var(--ok);background:#2f6d431a}.tag.warn{color:var(--warn);background:#a8652f1a}.tag.danger{color:var(--danger);background:#a8432f1a}.tag.muted{color:var(--faint);background:var(--surface2);border-color:var(--line)}.banner{border-radius:var(--radius-s);padding:10px 14px;font-size:13.5px;margin-bottom:14px;border:1px solid var(--line);background:var(--gold-soft);color:var(--gold-strong)}.banner.danger{background:#a8432f17;color:var(--danger);border-color:var(--danger)}.cell-select{border:1px solid var(--line-strong);background:var(--surface);border-radius:8px;padding:4px 6px;min-height:32px;font-size:13px;color:inherit}.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}table.grid{width:100%;border-collapse:collapse;font-size:13.5px}table.grid th,table.grid td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);white-space:nowrap}table.grid th{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.04em;background:var(--surface2)}table.grid tbody tr:hover td{background:var(--surface2)}table.grid td.wrap{white-space:normal;min-width:220px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px}.row-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.empty{color:var(--faint);font-size:13.5px;padding:18px 4px}@media(pointer:coarse),(max-width:899px){.btn{min-height:44px;padding:10px 16px}.btn.small{min-height:44px;padding:8px 14px;font-size:14px}.field select,.cell-select{min-height:44px}.field input,.cell-select{font-size:16px}.field input{min-height:44px}.chip,summary{min-height:44px}}@media(max-width:640px){.card{padding:14px 12px}}.only-wide{display:none}.only-narrow{display:block}@media(min-width:900px){.only-wide{display:revert}.only-narrow{display:none}}
