body{font-family:"Helvetica Neue",Arial,sans-serif;margin:0;background:#f5f6fa;color:#333;}
.navbar{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background:#1e2573;color:#fff;}
a.btn,button.btn{background:#4004d3;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;text-decoration:none;margin-left:.5rem;cursor:pointer}
a.btn.green,button.btn.green{background:#01a9f4}
a.btn.red{background:#e74c3c}
.flat-table{width:100%;border-collapse:collapse;margin-top:1rem}
.flat-table th,.flat-table td{padding:.5rem;border-bottom:1px solid #ddd;text-align:center}
.flat-form{max-width:800px;margin:2rem auto;background:#fff;padding:2rem;border-radius:6px;box-shadow:0 2px 6px rgba(0,0,0,.05)}
.flat-form label{display:block;margin-bottom:1rem}
.flat-form input{width:100%;padding:.4rem;border:1px solid #ccc;border-radius:4px}
/* ——— 美化 product_form ——— */
.card{max-width:720px;margin:2rem auto;padding:2rem;border-radius:10px;background:#fff;box-shadow:0 2px 12px rgba(0,0,0,.05)}
.card__title{margin:0 0 1.5rem;font-size:1.4rem;color:#1e2573;display:flex;align-items:center;gap:.3rem}
.grid-form{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.grid-form label{display:flex;flex-direction:column;font-size:.9rem;gap:.3rem}
.grid-form input{padding:.5rem .6rem;border:1px solid #ccd;border-radius:6px}
.grid-col-2{display:flex;flex-direction:column}
.span-2{grid-column:span 2}
.req{color:#e74c3c}
.btn-row{display:flex;gap:.8rem;justify-content:flex-end;margin-top:1rem}
.upload-block input[type=file]{display:none}
.preview{height:140px;border:2px dashed #a8b4ff;border-radius:8px;display:flex;align-items:center;justify-content:center;gap:.5rem;color:#7b88ff;cursor:pointer;transition:border-color .2s}
.preview:hover{border-color:#01a9f4}
.preview img{max-height:100%;max-width:100%;object-fit:contain;border-radius:6px}
