/* CDM Booking - Frontend Styles - Full Dashboard */

.cdm-login-wrap,.cdm-booking-wrap,.cdm-dashboard-wrap{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;line-height:1.5;color:#011111;box-sizing:border-box}
.cdm-login-wrap *,.cdm-booking-wrap *,.cdm-dashboard-wrap *{box-sizing:border-box}

/* Login */
.cdm-login-wrap{max-width:400px;margin:2rem auto;padding:0 1rem}
.cdm-login-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.08),0 4px 12px rgba(0,0,0,.04);padding:2rem}
.cdm-login-header{text-align:center;margin-bottom:1.5rem}
.cdm-login-header h2{font-size:1.5rem;font-weight:600;margin:0 0 .25rem;color:#011111}
.cdm-login-header p{font-size:.875rem;color:#9a8562;margin:0}
.cdm-login-footer{text-align:center;margin-top:1rem;padding-top:1rem;border-top:1px solid #f3f4f6}
.cdm-login-footer a{font-size:.8125rem;color:#9a8562;text-decoration:none}
.cdm-login-footer a:hover{color:#C4A66A}
.cdm-logged-in{font-size:1.125rem;margin-bottom:1rem;text-align:center}

/* Fields */
.cdm-field{margin-bottom:1rem}
.cdm-field label{display:block;font-size:.8125rem;font-weight:500;color:#6B511E;margin-bottom:.375rem}
.cdm-field input[type="text"],.cdm-field input[type="email"],.cdm-field input[type="tel"],.cdm-field input[type="password"],.cdm-field input[type="number"],.cdm-field input[type="url"],.cdm-field input[type="date"],.cdm-field input[type="time"],.cdm-field textarea,.cdm-field select{width:100%;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;color:#011111;background:#fff;transition:border-color .15s,box-shadow .15s;outline:none}
.cdm-field input:focus,.cdm-field textarea:focus,.cdm-field select:focus{border-color:#C4A66A;box-shadow:0 0 0 3px rgba(79,70,229,.1)}
.cdm-field input[type="color"]{width:60px;height:36px;padding:2px;border:1px solid #d1d5db;border-radius:8px;cursor:pointer}
.cdm-field-hint{display:block;font-size:.75rem;color:#9ca3af;margin-top:.25rem}
.cdm-field-check label{display:flex;align-items:center;gap:.5rem;font-weight:400;cursor:pointer}
.cdm-field-check input[type="checkbox"]{width:16px;height:16px;accent-color:#C4A66A}
.cdm-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.cdm-form-row-3{grid-template-columns:1fr 1fr 1fr}
@media(max-width:640px){.cdm-form-row,.cdm-form-row-3{grid-template-columns:1fr}}

/* Buttons */
.cdm-btn{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;padding:.5rem 1rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;border:none;transition:background .15s,transform .1s;text-decoration:none;white-space:nowrap}
.cdm-btn:active{transform:scale(.98)}
.cdm-btn-primary{background:#C4A66A;color:#fff}.cdm-btn-primary:hover{background:#A8894E}
.cdm-btn-secondary{background:#f3f4f6;color:#6B511E;border:1px solid #d1d5db}.cdm-btn-secondary:hover{background:#e5e7eb}
.cdm-btn-danger-outline{background:transparent;color:#DC2626;border:1px solid #FCA5A5}.cdm-btn-danger-outline:hover{background:#FEF2F2}
.cdm-btn-success-outline{background:transparent;color:#16A34A;border:1px solid #86EFAC}.cdm-btn-success-outline:hover{background:#F0FDF4}
.cdm-btn-sm{padding:.3rem .625rem;font-size:.8125rem}
.cdm-btn-full{width:100%}

/* Alerts */
.cdm-alert{padding:.75rem 1rem;border-radius:8px;font-size:.875rem;margin-bottom:1rem}
.cdm-alert-error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}
.cdm-alert-success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}
.cdm-alert-info{background:#eff6ff;color:#1e40af;border:1px solid #bfdbfe}
.cdm-loading{text-align:center;padding:3rem;color:#9ca3af;font-size:.875rem}

/* Dashboard Layout */
.cdm-dashboard{display:flex;min-height:80vh;gap:0}
.cdm-dash-nav{width:220px;background:#011111;color:#e5e7eb;display:flex;flex-direction:column;border-radius:12px 0 0 12px;padding:1.25rem 0;flex-shrink:0}
.cdm-dash-nav-brand{padding:0 1rem 1rem;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:.5rem}
.cdm-dash-nav-brand strong{display:block;font-size:.875rem;color:#fff}
.cdm-dash-nav-user{font-size:.75rem;color:#9ca3af}
.cdm-dash-nav-items{flex:1;padding:.5rem 0}
.cdm-dash-nav-btn{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem 1rem;background:none;border:none;color:#d1d5db;font-size:.8125rem;cursor:pointer;text-align:left;transition:background .15s,color .15s;text-decoration:none}
.cdm-dash-nav-btn:hover{background:rgba(255,255,255,.06);color:#fff}
.cdm-dash-nav-btn.active{background:rgba(79,70,229,.2);color:#a5b4fc;font-weight:500}
.cdm-nav-icon{font-size:1rem;width:1.25rem;text-align:center}
.cdm-dash-nav-footer{padding:.5rem 0;border-top:1px solid rgba(255,255,255,.08)}
.cdm-nav-logout{color:#f87171!important}.cdm-nav-logout:hover{background:rgba(248,113,113,.1)!important}
.cdm-dash-content{flex:1;background:#f9fafb;padding:1.5rem 2rem;border-radius:0 12px 12px 0;min-width:0}

/* Page Header */
.cdm-page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}
.cdm-page-header h2{font-size:1.375rem;font-weight:600;color:#011111;margin:0}

/* Cards */
.cdm-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;margin-bottom:1rem}
.cdm-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:1rem 1.25rem;transition:box-shadow .15s}
.cdm-card:hover{box-shadow:0 2px 8px rgba(0,0,0,.06)}
.cdm-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem;gap:.5rem}
.cdm-card-header h4{font-size:.9375rem;font-weight:600;margin:0;color:#011111}
.cdm-card-body{margin-bottom:.75rem}
.cdm-card-meta{font-size:.8125rem;color:#9a8562;display:flex;gap:.75rem;flex-wrap:wrap;margin:0}
.cdm-card-desc{font-size:.8125rem;color:#9a8562;margin:.375rem 0 0}
.cdm-card-actions{display:flex;gap:.5rem;flex-wrap:wrap}
.cdm-status-badge{font-size:.6875rem;font-weight:500;padding:.125rem .5rem;border-radius:99px;text-transform:uppercase;letter-spacing:.02em}
.cdm-status-active{background:#DCFCE7;color:#166534}
.cdm-status-inactive{background:#F3F4F6;color:#6B7280}
.cdm-service-category{margin-bottom:1.5rem}
.cdm-category-title{font-size:1rem;font-weight:600;color:#6B511E;margin:0 0 .75rem;padding-bottom:.5rem;border-bottom:2px solid #e5e7eb}
.cdm-staff-avatar{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.875rem;font-weight:600;flex-shrink:0;overflow:hidden}
.cdm-staff-avatar img{width:100%;height:100%;object-fit:cover}
.cdm-staff-card .cdm-card-header{justify-content:flex-start}

/* Modals */
.cdm-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;z-index:99999;padding:1rem}
.cdm-modal{background:#fff;border-radius:12px;width:100%;max-width:560px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,.15)}
.cdm-modal-lg{max-width:700px}
.cdm-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}
.cdm-modal-header h3{font-size:1.125rem;font-weight:600;margin:0}
.cdm-modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#9ca3af;padding:0;line-height:1}
.cdm-modal-close:hover{color:#6B511E}
.cdm-form{padding:1.25rem 1.5rem}
.cdm-modal-footer{display:flex;justify-content:flex-end;gap:.5rem;padding-top:1rem;margin-top:.5rem;border-top:1px solid #f3f4f6}

/* Settings Tabs */
.cdm-settings-tabs{display:flex;gap:0;border-bottom:2px solid #e5e7eb;margin-bottom:1.5rem}
.cdm-tab{padding:.625rem 1.25rem;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;font-size:.875rem;font-weight:500;color:#9a8562;cursor:pointer;transition:color .15s,border-color .15s}
.cdm-tab:hover{color:#6B511E}
.cdm-tab.active{color:#C4A66A;border-bottom-color:#C4A66A}
.cdm-tab-content{display:none}.cdm-tab-content.active{display:block}
.cdm-settings-section h3{font-size:1rem;font-weight:600;color:#6B511E;margin:0 0 1rem}
.cdm-settings-save{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e5e7eb}
.cdm-toggle-label{display:flex!important;align-items:center;gap:.5rem;cursor:pointer}
.cdm-toggle-text{font-weight:400}
.cdm-checkbox-list{display:flex;flex-direction:column;gap:.5rem}
.cdm-checkbox-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;cursor:pointer}
.cdm-checkbox-item input[type="checkbox"]{width:16px;height:16px;accent-color:#C4A66A}
.cdm-checkbox-item small{color:#9ca3af}

/* Schedule */
.cdm-schedule-grid{display:flex;flex-direction:column;gap:.625rem}
.cdm-schedule-row{display:grid;grid-template-columns:120px 1fr 1fr;gap:.75rem;align-items:center;padding:.5rem;background:#f9fafb;border-radius:8px}
.cdm-schedule-day{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:500;cursor:pointer}
.cdm-schedule-day input{accent-color:#C4A66A}
.cdm-schedule-times,.cdm-schedule-break{display:flex;align-items:center;gap:.25rem;font-size:.8125rem}
.cdm-schedule-times input,.cdm-schedule-break input{width:90px;padding:.25rem .375rem;border:1px solid #d1d5db;border-radius:6px;font-size:.8125rem}
.cdm-schedule-break small{color:#9ca3af;margin-right:.25rem;white-space:nowrap}
.cdm-section-divider{margin:1.25rem 0 .75rem;padding-top:1rem;border-top:1px solid #e5e7eb}
.cdm-section-divider h4{font-size:.9375rem;font-weight:600;margin:0;color:#6B511E}
@media(max-width:640px){.cdm-schedule-row{grid-template-columns:1fr}}

/* Placeholders */
.cdm-page-placeholder{text-align:center;padding:4rem 2rem;color:#9ca3af}
.cdm-page-placeholder h2{font-size:1.25rem;color:#9a8562;margin:0 0 .5rem}
.cdm-empty{text-align:center;color:#9ca3af;padding:2rem;font-size:.875rem}

/* Toast */
.cdm-toast{position:fixed;bottom:2rem;right:2rem;padding:.75rem 1.25rem;border-radius:10px;font-size:.875rem;font-weight:500;z-index:100000;transform:translateY(20px);opacity:0;transition:all .3s ease;box-shadow:0 4px 12px rgba(0,0,0,.15)}
.cdm-toast-show{transform:translateY(0);opacity:1}
.cdm-toast-success{background:#166534;color:#fff}
.cdm-toast-error{background:#991B1B;color:#fff}

/* Responsive */
@media(max-width:768px){
.cdm-dashboard{flex-direction:column}
.cdm-dash-nav{width:100%;border-radius:12px 12px 0 0;padding:.75rem 0}
.cdm-dash-nav-items{display:flex;overflow-x:auto;padding:.25rem .5rem;gap:0}
.cdm-dash-nav-btn{padding:.375rem .75rem;font-size:.75rem;white-space:nowrap}
.cdm-nav-icon{display:none}
.cdm-dash-nav-brand{display:none}
.cdm-dash-nav-footer{border-top:none;padding:0 .5rem}
.cdm-dash-content{border-radius:0 0 12px 12px;padding:1rem}
.cdm-card-grid{grid-template-columns:1fr}
}
