.payment-card{margin-top:16px}.payment-receipts{white-space:normal;flex-direction:column;gap:8px;min-width:130px;display:flex}.payment-summary{grid-template-columns:repeat(3,minmax(0,1fr));margin:16px 0}.payment-form{margin:16px 0}.payment-form fieldset{border:1px solid #e2e8f0;border-radius:12px;min-width:0;padding:16px}.payment-form label{flex-direction:column;gap:6px;min-width:0;display:flex}.payment-form input,.payment-form select,.payment-form textarea{box-sizing:border-box;color:#17263b;width:100%;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:10px}.payment-form button{margin-top:12px}.payment-card button:disabled{opacity:.55;cursor:not-allowed}.payment-table-wrap{margin-top:16px;overflow-x:auto}.payment-table{border-collapse:collapse;width:100%;min-width:680px}.payment-table th,.payment-table td{text-align:left;border-bottom:1px solid #e2e8f0;padding:12px 10px}.payment-table .payment-memo{white-space:pre-wrap;overflow-wrap:anywhere;max-width:240px}.payment-voided{color:#64748b;background:#f8fafc}@media (max-width:640px){.payment-summary,.payment-form .form-grid{grid-template-columns:1fr}.payment-card .detail-section-head{flex-wrap:wrap;gap:12px}}.customer-schedule fieldset{border:0;min-width:0;margin:16px 0 0;padding:0}.customer-schedule legend{margin-bottom:12px}.schedule-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.schedule-fields label{flex-direction:column;gap:6px;min-width:0;display:flex}.schedule-fields input{box-sizing:border-box;width:100%;min-width:0;font:inherit;color:#17263b;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:10px}.schedule-fields label span{color:#64748b;font-size:.85rem}.schedule-actions{gap:8px;margin-top:12px;display:flex}.customer-schedule dd{overflow-wrap:anywhere}.customer-schedule button:disabled{opacity:.55}@media (max-width:640px){.schedule-fields{grid-template-columns:1fr}}.appointment-management .detail-section-head{align-items:center}.appointment-form,.appointment-result-form{margin:16px 0}.appointment-form fieldset,.appointment-result-form fieldset{border:1px solid #e2e8f0;border-radius:12px;min-width:0;padding:16px}.appointment-form legend,.appointment-result-form legend{color:#475569;padding:0 4px;font-size:13px}.appointment-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.appointment-fields label,.appointment-result-form label{color:#475569;flex-direction:column;gap:6px;min-width:0;font-size:13px;display:flex}.appointment-fields input,.appointment-fields select,.appointment-fields textarea,.appointment-result-form textarea{box-sizing:border-box;color:#17263b;width:100%;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:10px}.appointment-fields label span,.appointment-fields small,.appointment-result-form small{color:#64748b;font-size:.85rem;font-weight:400}.appointment-memo{grid-column:1/-1}.appointment-memo textarea,.appointment-result-form textarea{resize:vertical;min-height:74px}.appointment-form button,.appointment-result-form button{margin-top:14px}.appointment-message{color:#49515e;font-size:13px}.consultation-completed,.consultation-outcome{color:#277044;background:#edf8f0;border-radius:9px;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:14px 0 0;padding:11px 12px;font-size:13px;display:flex}.consultation-outcome{color:#475569;background:#f8fafc}.consultation-outcome strong{color:#1f2937}.consultation-outcome button{margin-left:auto}.consultation-outcome-form{margin-top:14px}.consultation-outcome-form fieldset{border:1px solid #dbe4ef;border-radius:10px;min-width:0;padding:14px}.consultation-outcome-form legend{color:#475569;padding:0 4px;font-size:13px}.consultation-outcome-form select,.consultation-outcome-form textarea{box-sizing:border-box;color:#17263b;width:100%;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:10px}.consultation-note{color:#475569;flex-direction:column;gap:6px;margin-top:14px;font-size:13px;display:flex}.consultation-note textarea{resize:vertical;min-height:74px}.consultation-hint{color:#64748b;margin:12px 0 0;font-size:13px}.appointment-list{gap:12px;display:grid}.appointment-card{border:1px solid #e2e8f0;border-radius:11px;padding:15px}.appointment-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.appointment-card-head>div{gap:5px;display:grid}.appointment-card-head strong{font-size:15px}.appointment-card-head span{color:#64748b;font-size:13px}.appointment-status{color:#2d66c3;background:#e9f1ff;border-radius:999px;flex:none;padding:5px 9px;font-size:12px}.appointment-status.visited{color:#277044;background:#eaf7ef}.appointment-status.no_show,.appointment-status.cancelled{color:#a63f4e;background:#fff0f1}.appointment-status.rescheduled{color:#966009;background:#fff4df}.appointment-grid{border-top:1px solid #edf0f3;grid-template-columns:repeat(3,minmax(0,1fr));margin:14px 0 0;display:grid}.appointment-grid>div{min-width:0;padding:12px 10px 0 0}.appointment-grid dt{color:#64748b;font-size:12px}.appointment-grid dd{overflow-wrap:anywhere;margin:5px 0 0;font-size:13px}.appointment-actions{flex-wrap:wrap;gap:8px;margin-top:15px;display:flex}.appointment-actions button{margin-top:0}.appointment-management button:disabled{opacity:.55;cursor:not-allowed}@media (max-width:640px){.appointment-management .detail-section-head{flex-direction:column;align-items:flex-start}.appointment-management .detail-section-head .primary{width:100%}.appointment-fields,.appointment-grid{grid-template-columns:1fr}.appointment-card-head{flex-direction:column}.appointment-status{align-self:flex-start}.appointment-actions>button{flex:calc(50% - 8px)}.appointment-actions>button:first-child{flex-basis:100%}.consultation-outcome{flex-direction:column;align-items:flex-start}.consultation-outcome button{margin-left:0}}.contract-registration{flex-direction:column;align-items:flex-end;gap:10px;display:flex}.contract-registration-form,.contract-registration-confirm{border:1px solid var(--line);background:#f8f9fa;border-radius:10px;width:100%;padding:16px}.contract-registration-form fieldset{border:0;margin:0;padding:0}.contract-registration-head,.contract-registration-confirm>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.contract-registration-head{margin-bottom:8px}.contract-registration-head h3{margin:0;font-size:15px}.contract-registration-form label{color:#5f6570;flex-direction:column;gap:7px;margin-top:12px;font-size:13px;display:flex}.contract-registration-form input,.contract-registration-form select,.contract-registration-form textarea{border:1px solid var(--line);background:#fff;border-radius:8px;outline:0;padding:11px}.contract-registration-form textarea{resize:vertical;min-height:72px}.contract-registration-form small{color:var(--muted);font-size:12px}.contract-registration-form .primary{margin-top:14px}.contract-registration-note,.contract-registration-confirm p{color:var(--muted);margin:14px 0 0;font-size:12px}.contract-registration-confirm>div{justify-content:flex-end;margin-top:12px}.contract-registration-error{color:#b34f62;width:100%;margin:0;font-size:13px}@media (max-width:760px){.detail-section-head:has(.contract-registration){flex-direction:column;align-items:stretch}.contract-registration{align-items:stretch}.contract-registration>.primary{width:100%}}
