*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f8f7f4;color:#1f2937;line-height:1.5}a{color:#0f766e;text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font:inherit}input,select,textarea{font:inherit;padding:9px 12px;border:1px solid #d6d3cf;border-radius:6px;width:100%;background:#fff}input:focus,select:focus,textarea:focus{outline:none;border-color:#0f766e;box-shadow:0 0 0 3px #0f766e26}.app{display:grid;grid-template-columns:230px 1fr;min-height:100vh}.sidebar{background:#1f2937;padding:24px 16px;display:flex;flex-direction:column}.sidebar .brand{font-family:Georgia,serif;font-size:20px;font-weight:700;color:#fff;letter-spacing:.5px;padding:0 8px;margin-bottom:6px}.sidebar .brand small{color:#9ca3af;font-weight:400;font-size:11px;display:block}.sidebar nav{display:flex;flex-direction:column;gap:2px;margin-top:24px}.sidebar nav a{color:#9ca3af;padding:10px 12px;border-radius:6px;font-size:14px;transition:all .15s}.sidebar nav a:hover{background:#374151;color:#fff;text-decoration:none}.sidebar nav a.active{background:#0f766e;color:#fff}.sidebar .footer{margin-top:auto;padding-top:16px;border-top:1px solid #374151}.main{padding:28px 36px;overflow-y:auto}.page-title{font-size:24px;font-weight:600;color:#1f2937}.page-sub{color:#6b7280;margin-top:2px;font-size:14px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:9px 16px;border-radius:6px;border:1px solid transparent;font-weight:500;font-size:14px;transition:all .15s}.btn-primary{background:#0f766e;color:#fff}.btn-primary:hover{background:#115e59}.btn-secondary{background:#fff;color:#374151;border-color:#d6d3cf}.btn-secondary:hover{background:#f3f4f6}.btn-danger{background:#fff;color:#dc2626;border-color:#dc2626}.btn-danger:hover{background:#fef2f2}.btn-success{background:#16a34a;color:#fff}.btn-success:hover{background:#15803d}.btn-sm{padding:5px 10px;font-size:12px}.btn:disabled{opacity:.55;cursor:not-allowed}.card{background:#fff;border:1px solid #ece9e3;border-radius:10px;padding:22px}.card-title{font-weight:600;margin-bottom:14px;color:#1f2937;font-size:15px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:24px}.stat{background:#fff;border:1px solid #ece9e3;border-radius:10px;padding:18px}.stat .label{font-size:11px;color:#6b7280;text-transform:uppercase;letter-spacing:1.2px;font-weight:600}.stat .value{font-size:28px;font-weight:700;color:#1f2937;margin-top:6px}.stat .sub{font-size:12px;color:#6b7280;margin-top:4px}.table{width:100%;border-collapse:collapse;font-size:14px}.table th,.table td{padding:12px;text-align:left;border-bottom:1px solid #ece9e3}.table th{background:#faf9f6;color:#6b7280;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:1.2px}.table tbody tr:hover{background:#faf9f6}.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600;text-transform:capitalize}.badge-pending{background:#fef3c7;color:#92400e}.badge-confirmed,.badge-paid,.badge-active{background:#d1fae5;color:#065f46}.badge-declined,.badge-cancelled,.badge-failed,.badge-no_show,.badge-inactive{background:#fee2e2;color:#991b1b}.badge-rescheduled{background:#dbeafe;color:#1e40af}.badge-completed{background:#e0e7ff;color:#3730a3}.badge-refunded,.badge-partially_refunded{background:#f3e8ff;color:#6b21a8}.muted{color:#6b7280}.flex{display:flex;gap:10px;align-items:center}.flex-between{display:flex;justify-content:space-between;align-items:center}.spacer{flex:1}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.form{display:flex;flex-direction:column;gap:12px}.form label{font-size:11px;color:#6b7280;margin-bottom:4px;display:block;text-transform:uppercase;letter-spacing:1px;font-weight:600}.error{color:#991b1b;padding:10px 14px;background:#fee2e2;border-radius:6px;font-size:14px}.success{color:#065f46;padding:10px 14px;background:#d1fae5;border-radius:6px;font-size:14px}
