:root{--bg: #f4f6f8;--card: #fff;--text: #1f2329;--muted: #8a9199;--primary: #ff6a00;--primary-dark: #e65c00;--border: #e5e8eb;--danger: #d93026;--ok: #0d7a3f;--radius: 10px;--shadow: 0 1px 3px rgba(0,0,0,.06);--max: 1100px}*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%}body{font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif;color:var(--text);background:var(--bg)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.container{max-width:var(--max);margin:0 auto;padding:0 16px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:none;border-radius:8px;padding:10px 16px;cursor:pointer;background:var(--primary);color:#fff;font-weight:600}.btn:hover{background:var(--primary-dark)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.ghost{background:#fff;color:var(--text);border:1px solid var(--border)}.btn.ghost:hover{border-color:var(--primary);color:var(--primary)}.btn.block{width:100%}.input,.select{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:#fff;outline:none}.input:focus,.select:focus{border-color:var(--primary)}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.muted{color:var(--muted)}.toast{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:9999;background:#1f2329;color:#fff;padding:10px 16px;border-radius:8px;font-size:14px;max-width:90%}.toast.error{background:var(--danger)}.toast.ok{background:var(--ok)}.price{color:var(--primary);font-weight:700}.empty{text-align:center;padding:48px 16px;color:var(--muted)}
