/* 控制台（客户/代理）补充样式 */
.hidden { display: none !important; }
.guide-line { margin-top: 14px; padding: 12px 16px; background: #f6f4ec; border: 1px solid #e7e1d2; border-radius: 10px; color: #6a6353; font-size: 12.5px; line-height: 1.9; }

.product-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 14px; }
.prod-card { border: 1px solid var(--line); border-radius: 14px; padding: 16px 18px; background: #fbfaf6; display: flex; flex-direction: column; gap: 6px; }
.prod-name { font-size: 15.5px; font-weight: 700; color: var(--ink); }
.prod-price { font-size: 24px; font-weight: 800; color: var(--gold-600); font-family: var(--serif); }
.prod-price span { font-size: 12px; color: var(--muted); font-weight: 400; }
.prod-desc { font-size: 12.5px; color: var(--muted); }
.prod-note { font-size: 11.5px; color: #9a917e; background: #f1eee4; border-radius: 8px; padding: 6px 10px; }
.prod-card .btn { margin-top: 6px; align-self: flex-start; }

.calc-line { font-size: 13.5px; color: var(--gold-600); font-weight: 700; background: #fdf8ea; border: 1px dashed #dccfae; border-radius: 10px; padding: 10px 14px; margin-bottom: 14px; }

.acc-info { display: flex; flex-direction: column; gap: 8px; }
.acc-line { display: flex; justify-content: space-between; align-items: baseline; padding: 9px 2px; border-bottom: 1px dashed #ece7da; font-size: 13.5px; }
.acc-line span { color: var(--muted); }
.acc-line b { color: var(--ink); font-weight: 600; }

.settle-line { background: #fdf8ea; border: 1px solid #e8d9b4; border-radius: 10px; padding: 10px 14px; font-size: 13px; color: #7a5a12; line-height: 1.8; margin-bottom: 12px; }
.settle-line b { color: #8a6a1d; }
.settle-rows { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 10px; }
.settle-rows > div { background: #f7f5ee; border: 1px solid var(--line); border-radius: 10px; padding: 10px 14px; }
.settle-rows span { display: block; font-size: 11.5px; color: var(--muted); }
.settle-rows b { font-size: 16px; color: var(--navy-800); }

.modal-mask { position: fixed; inset: 0; background: rgba(10, 16, 34, .55); display: flex; align-items: center; justify-content: center; z-index: 300; padding: 20px; }
.modal { background: #fff; border-radius: 16px; max-width: 560px; width: 100%; max-height: 86vh; overflow: auto; padding: 24px 28px; position: relative; box-shadow: 0 30px 90px rgba(0,0,0,.35); }
.modal-close { position: absolute; right: 12px; top: 10px; border: none; background: transparent; font-size: 16px; color: var(--muted); padding: 6px; }
.modal .field { margin-bottom: 14px; }
.modal-footer { display: flex; justify-content: flex-end; gap: 10px; margin-top: 8px; }
