/*
 * Clients screen (wp-admin).
 *
 * Was printed inline in admin/views/clients.php on every page load. Moved to a
 * real stylesheet so it is cached between visits, minified by the build, and
 * covered by the asset-integrity gate -- none of which applies to CSS living
 * inside a PHP template.
 */
#yatoon-clients-wrap .yc-search-bar{display:flex;gap:10px;align-items:center;margin-bottom:16px;}
#yatoon-clients-wrap .yc-search-bar input{padding:7px 12px;border:1px solid #ccc;border-radius:5px;font-size:14px;width:280px;}
#yatoon-clients-wrap .yc-table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;}
#yatoon-clients-wrap .yc-table-wrap table{min-width:880px;}
#yatoon-clients-wrap table{border-collapse:collapse;width:100%;background:#fff;border:1px solid #ddd;border-radius:8px;overflow:hidden;}
#yatoon-clients-wrap th{background:#f8f8f8;padding:10px 14px;text-align:right;font-size:13px;color:#555;border-bottom:1px solid #eee;}
#yatoon-clients-wrap td{padding:10px 14px;font-size:14px;border-bottom:1px solid #f5f5f5;vertical-align:middle;}
#yatoon-clients-wrap tr:last-child td{border-bottom:none;}
#yatoon-clients-wrap tr:hover td{background:#fafafa;}
#yatoon-clients-wrap .yc-tag{display:inline-block;background:#f0f0f0;border-radius:20px;padding:2px 10px;font-size:12px;margin:1px 2px;color:#555;}
#yatoon-clients-wrap .yc-tag.allergy{background:#fff0f0;color:#c62828;}
#yatoon-clients-wrap .btn-edit{background:#fff;border:1px solid #ddd;border-radius:5px;padding:5px 12px;cursor:pointer;font-size:13px;}
#yatoon-clients-wrap .btn-edit:hover{background:#f0f0f0;}
#yatoon-clients-wrap .yc-visits-btn{background:none;border:0;color:#0073aa;font-weight:700;cursor:pointer;padding:0;text-decoration:underline;}
#yatoon-clients-wrap .yc-visits-btn:hover{color:#005177;}
#yatoon-clients-wrap .yc-note-preview{color:#888;font-size:12px;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
#yatoon-clients-wrap .yc-risk{display:inline-block;background:#fee2e2;color:#991b1b;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;margin-right:4px;}
#yatoon-clients-wrap .yc-signal{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;margin:2px 0 2px 3px;}
#yatoon-clients-wrap .yc-signal.vip{background:#ecfdf5;color:#047857;}
#yatoon-clients-wrap .yc-signal.warn{background:#fef2f2;color:#991b1b;}
#yatoon-clients-wrap .yc-signal.money{background:#fffbeb;color:#92400e;}
#yatoon-clients-wrap .yc-signal.next{background:#eff6ff;color:#1d4ed8;}
#yatoon-clients-wrap .yc-client-name-cell small{display:block;color:#6b7280;font-weight:500;margin-top:2px;}
#yatoon-clients-wrap .yc-col-check{width:36px;text-align:center;}
#yatoon-clients-wrap tr.is-selected td{background:#f0fdf4;}
#yatoon-clients-wrap tr.is-selected:hover td{background:#f0fdf4;}
#yatoon-clients-wrap .yc-sort-link{display:inline-flex;align-items:center;gap:5px;color:inherit;text-decoration:none;font-weight:700;white-space:nowrap;}
#yatoon-clients-wrap .yc-sort-link:hover{color:#2271b1;}
#yatoon-clients-wrap .yc-sort-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:#6b7280;font-size:12px;line-height:1;} /* 4.6.2: contrast - was #9ca3af (2.54:1 on white), under the 4.5:1 WCAG AA floor. #6b7280 = 4.83:1. */
#yatoon-clients-wrap .yc-sort-link.is-active .yc-sort-icon{color:#2271b1;}
#yatoon-clients-wrap .yc-sort-link:focus-visible{outline:2px solid #2271b1;outline-offset:3px;border-radius:2px;}

/* Modal */
#yc-modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:99999;align-items:center;justify-content:center;}
#yc-modal-overlay.open{display:flex;}
#yc-modal{background:#fff;border-radius:10px;width:92%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 12px 40px rgba(0,0,0,.25);}
#yc-modal-header{padding:20px 24px 0;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:#fff;border-bottom:1px solid #eee;padding-bottom:16px;z-index:2;}
#yc-modal-header h2{margin:0;font-size:18px;}
#yc-modal-close{background:none;border:none;font-size:20px;cursor:pointer;color:#888;padding:4px 8px;}
#yc-modal-body{padding:20px 24px;}
.yc-form-row{margin-bottom:16px;}
.yc-form-row label{display:block;font-weight:600;font-size:13px;margin-bottom:5px;color:#444;}
.yc-form-row input,.yc-form-row textarea,.yc-form-row select{width:100%;padding:8px 10px;border:1px solid #ccc;border-radius:5px;font-size:14px;box-sizing:border-box;}
.yc-form-row textarea{resize:vertical;min-height:80px;font-family:inherit;}
.yc-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px;}
.yc-stat{border:1px solid #e5e7eb;border-radius:8px;padding:10px 12px;background:#fafafa;}
.yc-stat strong{display:block;font-size:18px;color:#111;line-height:1.2;}
.yc-stat span{display:block;font-size:11px;color:#6b7280;text-transform:uppercase;letter-spacing:.04em;margin-top:3px;}
.yc-history-table{width:100%;border-collapse:collapse;font-size:13px;margin-top:8px;}
.yc-history-table th{background:#f5f5f5;padding:7px 10px;text-align:right;color:#555;}
.yc-history-table td{padding:7px 10px;border-bottom:1px solid #f0f0f0;}
.yc-history-table tr:last-child td{border-bottom:none;}
.status-confirmed,.status-ACCEPTED{color:#2e7d32;font-weight:600;}
.status-cancelled,.status-CANCELLED_BY_CUSTOMER,.status-CANCELLED_BY_SELLER{color:#c62828;}
.status-pending{color:#e65100;}
.payment-unpaid{color:#b45309;font-weight:600;}
.payment-paid_square_pos,.payment-deposit_paid{color:#15803d;font-weight:600;}
.payment-refunded,.payment-waived{color:#6b7280;font-weight:600;}
@media (max-width: 782px){.yc-stats-grid{grid-template-columns:repeat(2,1fr);}}

/* 4.6.2: Look History section inside the client profile modal. */
.yc-looks-section{border-top:1px solid #eee;padding-top:16px;margin-bottom:20px;}
.yc-looks-head{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.yc-looks-head h3{margin:0;font-size:15px;}
.yc-looks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:12px;}
.yc-look-card{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#fafafa;position:relative;}
.yc-look-thumb{width:100%;aspect-ratio:1;object-fit:cover;background:#eee;display:block;cursor:pointer;}
.yc-look-thumb-empty{width:100%;aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:#f0eef1;color:#b8adb3;font-size:28px;}
.yc-look-body{padding:8px 10px;}
.yc-look-date{font-size:11px;color:#6b7280;text-transform:uppercase;letter-spacing:.03em;}
.yc-look-service{font-size:12px;font-weight:600;color:#333;margin:2px 0;}
.yc-look-notes{font-size:12px;color:#555;line-height:1.4;max-height:3.6em;overflow:hidden;}
.yc-look-card-actions{position:absolute;top:6px;left:6px;display:flex;gap:4px;opacity:0;transition:opacity .12s;}
.yc-look-card:hover .yc-look-card-actions{opacity:1;}
.yc-look-card-actions button{background:rgba(255,255,255,.92);border:1px solid #ddd;border-radius:5px;width:24px;height:24px;font-size:12px;cursor:pointer;line-height:1;}
.yc-look-empty{font-size:13px;color:#888;padding:6px 0;}
.yc-look-form{border:1px solid #e5e7eb;border-radius:8px;padding:14px;background:#fff;margin-bottom:12px;}
.yc-look-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px;}
.yc-look-photo-picker{display:flex;align-items:center;gap:10px;}
.yc-look-photo-picker img{width:52px;height:52px;object-fit:cover;border-radius:6px;border:1px solid #ddd;}
.yc-look-form-actions{display:flex;align-items:center;gap:8px;}
