.login-wrap[data-v-36073a0e]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.login-card[data-v-36073a0e]{background:#fff;width:360px;border:1px solid var(--border);border-radius:16px;padding:32px;box-shadow:0 20px 50px #00000014;text-align:center}.logo[data-v-36073a0e]{width:56px;height:56px;border-radius:50%;background:var(--primary);color:#fff;font-weight:800;font-size:26px;display:flex;align-items:center;justify-content:center;margin:0 auto 12px}h1[data-v-36073a0e]{margin:0;font-size:22px}.label[data-v-36073a0e],.input[data-v-36073a0e]{text-align:left}.dropdown[data-v-b6431782]{list-style:none;margin:6px 0 0;padding:4px;position:absolute;left:18px;right:18px;background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 10px 30px #0000001a;z-index:10;max-height:320px;overflow:auto}.dropdown li[data-v-b6431782]{padding:10px 12px;border-radius:8px;cursor:pointer}.dropdown li[data-v-b6431782]:hover{background:#f1f5f9}:root{--primary: #0f766e;--primary-dark: #0b5952;--bg: #eef1f5;--card: #ffffff;--border: #e5e7eb;--text: #111827;--text-secondary: #6b7280;--success: #16a34a;--danger: #b91c1c;--radius: 10px}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);font-size:14px}a{color:var(--primary);text-decoration:none}button{font-family:inherit;cursor:pointer}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid transparent;border-radius:var(--radius);padding:9px 14px;font-size:14px;font-weight:600}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark)}.btn-ghost{background:#fff;border-color:var(--border);color:var(--text)}.btn-success{background:var(--success);color:#fff}.btn-danger{background:var(--danger);color:#fff}.btn:disabled{opacity:.6;cursor:default}.input{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);font-size:14px;background:#fff;color:var(--text)}.input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #0f766e26}.label{font-size:13px;color:#374151;margin:10px 0 4px;display:block}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:18px}.muted{color:var(--text-secondary)}.err{color:var(--danger);margin:8px 0}.ok{color:var(--success)}.topbar{background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:12px 20px}.topbar .brand{font-weight:800;font-size:16px;display:flex;align-items:center;gap:10px}.topbar .badge{width:30px;height:30px;border-radius:50%;background:#fff;color:var(--primary);display:flex;align-items:center;justify-content:center;font-weight:800}.topbar nav a{color:#e6fffb;margin-left:16px;font-weight:600}.topbar nav a.router-link-active{color:#fff;text-decoration:underline}.topbar .user{font-size:13px;opacity:.9}.container{max-width:980px;margin:24px auto;padding:0 16px}.row{display:flex;gap:12px;flex-wrap:wrap}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}table{width:100%;border-collapse:collapse}th,td{padding:10px;text-align:left;border-bottom:1px solid var(--border);font-size:14px}th{color:var(--text-secondary);font-weight:700;font-size:12px;text-transform:uppercase}.r{text-align:right}.chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:#fff;font-weight:600}.chip.active{background:var(--primary);color:#fff;border-color:var(--primary)}.stock-zero{color:var(--danger)}
