:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:#0f172a;background:#eef4ff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at top left,rgba(37,99,235,.12),transparent 25%),linear-gradient(180deg,#eff6ff,#f8fafc)}#root{max-width:1280px;margin:0 auto;padding:2rem}*{box-sizing:border-box}button,input,select,textarea{font:inherit}.page-shell{display:flex;flex-direction:column;gap:1.5rem}.hero-card,.panel,.chair-card,.appointment-card,.info-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 18px 40px #0f172a14}.hero-card{display:flex;justify-content:space-between;gap:1rem;padding:2rem}.eyebrow{margin:0 0 .5rem;color:#2563eb;font-size:.85rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.hero-card h1,.panel h2,.chair-card h3,.appointment-card h3,.info-card strong{margin:0;color:#0f172a}.hero-copy,.panel-copy,.chair-card p,.appointment-card p,.panel-header p,.placeholder,.selection-summary,.notes,.info-card p{margin:0;color:#475569}.hero-meta{display:flex;flex-direction:column;gap:.75rem;min-width:240px}.hero-meta span,.badge,.status-pill,.alert{border-radius:999px;font-size:.9rem;font-weight:600}.hero-meta span{padding:.7rem 1rem;background:#eff6ff;color:#1d4ed8}.loading-panel{text-align:center;padding:3rem 1.5rem}.auth-grid,.layout-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.95fr);gap:1.5rem}.customer-stack,.info-list{display:flex;flex-direction:column;gap:1.5rem}.panel{padding:1.5rem}.panel-header,.chair-card-top,.appointment-main,.appointment-actions,.admin-header{display:flex;justify-content:space-between;gap:1rem}.chair-grid,.appointments-list,.booking-form,.filter-row{display:flex;flex-direction:column;gap:1rem}.auth-switch{display:inline-flex;gap:.75rem;width:fit-content;padding:.35rem;background:#dbeafe;border-radius:999px}.chair-card,.appointment-card,.info-card{padding:1.25rem}.slot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:.65rem;margin-top:1rem}.slot-button,.primary-button,.secondary-button,.danger-button,.appointment-actions select,.field input,.field textarea,.field select{border-radius:12px;font:inherit}.tab{padding:.8rem 1.2rem;border:0;border-radius:999px;background:transparent;color:#1e3a8a;font-weight:700}.tab.active{background:#1d4ed8;color:#fff}.slot-button{border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;padding:.85rem .5rem}.slot-button:disabled{background:#e2e8f0;border-color:#e2e8f0;color:#94a3b8;cursor:not-allowed}.slot-button.selected{background:#2563eb;border-color:#2563eb;color:#fff}.badge{display:inline-flex;align-items:center;padding:.45rem .9rem;background:#f8fafc;color:#334155}.field{display:flex;flex-direction:column;gap:.45rem;color:#334155;font-weight:600}.field.compact{min-width:180px}.field input,.field textarea,.field select,.appointment-actions select{width:100%;padding:.85rem 1rem;border:1px solid #cbd5e1;background:#fff;color:#0f172a}.summary-grid,.appointment-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}.summary-grid div,.appointment-meta span,.selection-summary{padding:.9rem 1rem;border-radius:14px;background:#f8fafc}.summary-grid span{display:block;margin-bottom:.35rem;color:#64748b}.selection-summary.muted{color:#64748b}.info-card{display:flex;flex-direction:column;gap:.35rem}.primary-button,.secondary-button,.danger-button{border:0;padding:.95rem 1.1rem;font-weight:700;transition:transform .15s ease,opacity .15s ease}.primary-button{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff}.secondary-button{background:#e2e8f0;color:#0f172a}.danger-button{background:#fee2e2;color:#b91c1c}.primary-button:hover,.secondary-button:hover,.danger-button:hover,.tab:hover,.slot-button:hover:not(:disabled){transform:translateY(-1px)}.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled{opacity:.65;cursor:wait}.alert{padding:.85rem 1rem}.alert.success{background:#dcfce7;color:#166534}.alert.error{background:#fee2e2;color:#b91c1c}.status-pill{display:inline-flex;align-items:center;padding:.45rem .9rem}.status-pill.pending{background:#fef3c7;color:#92400e}.status-pill.confirmed{background:#dbeafe;color:#1d4ed8}.status-pill.completed{background:#dcfce7;color:#166534}.status-pill.cancelled{background:#fee2e2;color:#b91c1c}.notes{padding:1rem;background:#f8fafc;border-radius:14px}@media(max-width:960px){.hero-card,.panel-header,.chair-card-top,.appointment-main,.appointment-actions,.admin-header{flex-direction:column}.auth-grid,.layout-grid{grid-template-columns:1fr}.auth-switch{width:100%;justify-content:center}}
