*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{color:#374151;background:#f0fdf4;min-height:100vh;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}#app{min-height:100vh}a{color:#16a34a;text-decoration:none}a:hover{text-decoration:underline}button,.btn{cursor:pointer;border:none;border-radius:8px;padding:10px 20px;font-family:inherit;font-size:15px;transition:all .2s}.btn-primary{color:#fff;background:#16a34a}.btn-primary:hover{background:#15803d}.btn-secondary{color:#374151;background:#f3f4f6}.btn-secondary:hover{background:#e5e7eb}.btn-danger{color:#fff;background:#dc2626}.btn-danger:hover{background:#b91c1c}.btn-sm{padding:6px 14px;font-size:13px}input,select,textarea{background:#fff;border:1.5px solid #d1d5db;border-radius:8px;outline:none;width:100%;padding:10px 12px;font-family:inherit;font-size:15px;transition:border-color .2s}input:focus,select:focus,textarea:focus{border-color:#16a34a;box-shadow:0 0 0 3px #16a34a1a}.card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 1px 4px #00000014}.badge{border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-block}.badge-green{color:#15803d;background:#dcfce7}.badge-blue{color:#1d4ed8;background:#dbeafe}.badge-amber{color:#b45309;background:#fef3c7}.badge-red{color:#b91c1c;background:#fee2e2}.error-msg{color:#b91c1c;background:#fee2e2;border-radius:8px;margin-top:8px;padding:10px 14px;font-size:14px}.success-msg{color:#15803d;background:#dcfce7;border-radius:8px;margin-top:8px;padding:10px 14px;font-size:14px}
