/* Mobilanpassning för kund-, personal- och adminvyer. */
@media (max-width: 800px){
  body{overflow-x:hidden}.site-header{padding:0 16px}.brand{font-size:15px}.header-actions{gap:9px}.role-badge{font-size:9px;padding:5px 7px;max-width:120px;overflow:hidden;text-overflow:ellipsis}.hero,.section,.page-intro{padding-left:18px;padding-right:18px}.hero h1{font-size:clamp(42px,13vw,58px)}.hero-text{font-size:14px}.hero-actions{flex-wrap:wrap;gap:14px}.section-heading,.admin-card-heading,.admin-calendar-heading{align-items:flex-start;flex-direction:column;gap:14px}.section h2{font-size:31px}.booking-layout{padding:0 14px;margin-bottom:45px}.booking-steps{padding:12px 2px;scroll-snap-type:x mandatory}.step{min-width:132px;margin-bottom:0;scroll-snap-align:start}.step small{font-size:10px}.booking-panel{padding:18px}.date-grid{grid-template-columns:repeat(4,1fr);gap:6px}.date-option{min-height:66px;padding:7px 2px}.date-option strong{font-size:16px}.calendar-grid{grid-template-columns:repeat(2,1fr)}.form-row{flex-direction:column}.form-row>*{width:100%}.dashboard-grid{gap:10px}.dashboard-card{padding:18px}.admin-columns{grid-template-columns:1fr;gap:12px}.admin-list-item{align-items:flex-start;flex-direction:column}.admin-actions{width:100%}.admin-actions .small-button{flex:1}.assignment-row{grid-template-columns:1fr;gap:8px}.assignment-treatments{display:grid;grid-template-columns:1fr 1fr;gap:8px}.calendar-controls{width:100%;justify-content:flex-start}.calendar-controls>*{max-width:100%}.calendar-controls select{width:100%}.admin-calendar-heading h2{font-size:25px}.admin-calendar-scroll,.month-calendar-scroll{margin-top:12px}.admin-calendar-card{padding:14px}.admin-calendar-grid{min-width:820px}.month-calendar{min-width:700px}.catalog-modal-card,.auth-modal-card{max-height:calc(100vh - 28px);overflow-y:auto;padding:24px 18px}.modal{padding:14px}.modal-card h2{font-size:28px}.booking-item{padding:17px}.footer-links{gap:12px}.toast{left:14px;right:14px;bottom:14px;text-align:center}
}
@media (max-width: 420px){.brand em{display:none}.role-badge{max-width:104px}.page-intro h1{font-size:39px}.date-grid{grid-template-columns:repeat(3,1fr)}.assignment-treatments{grid-template-columns:1fr}.small-button{padding:8px 9px}.calendar-legend{gap:10px}}
@media (max-width: 800px){.employee-schedules-card,.employee-schedule,.schedule-grid{min-width:0;max-width:100%;overflow:hidden}.schedule-grid{overflow-x:auto;-webkit-overflow-scrolling:touch}.schedule-grid-head,.schedule-row{grid-template-columns:70px 70px 100px 100px;min-width:340px;gap:5px}.schedule-grid-head{font-size:9px}.schedule-row{font-size:11px}.schedule-row select{padding:7px 3px;font-size:11px}.schedule-row label{font-size:10px;gap:3px}}

@media(max-width:800px){.customer-booking-card{padding:20px}.customer-booking-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.customer-booking-top h2{font-size:22px}}@media(max-width:480px){.customer-booking-top{flex-direction:column}.customer-booking-details{grid-template-columns:1fr 1fr;gap:14px 9px}.booking-detail-icon{width:29px;height:29px;font-size:14px}.customer-booking-details>div{gap:7px}.customer-booking-details strong{font-size:11px}}
@media(max-width:480px){.reschedule-time-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.customer-booking-card [data-reschedule-booking]{margin-left:6px;padding:8px 10px}}
@media(max-width:800px){
 #book-view{min-height:calc(100vh - 68px);min-height:calc(100svh - 68px)}
 #book-view .page-intro{padding:12px 16px 8px}
 #book-view .page-intro h1{font-size:34px}
 #book-view .page-intro>p:last-child{font-size:12px;line-height:1.35;margin:6px 0 0}
 #book-view .booking-layout{padding:0 10px;margin:0 auto 12px;gap:7px}
 #book-view .booking-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:3px 0;overflow:visible}
 #book-view .booking-steps .step{min-width:0;display:flex;flex-direction:column;gap:3px;text-align:center;margin:0;scroll-snap-align:none}
 #book-view .booking-steps .step>span{width:23px;height:23px;font-size:10px}
 #book-view .booking-steps .step strong{font-size:9px;line-height:1.1}
 #book-view .booking-steps .step small{display:none}
 #book-view .booking-panel{padding:12px;min-height:0}
 #book-view #booking-form>.eyebrow{font-size:8px;margin:0 0 5px}
 #book-view #booking-form .form-title{font-size:20px;line-height:1.15;margin-bottom:3px}
 #book-view #booking-form .form-subtitle{font-size:11px;line-height:1.3;margin:0 0 9px}
 #book-view #booking-form .option-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
 #book-view #booking-form .option{padding:8px 9px;min-height:0}
 #book-view #booking-form .option strong{font-size:11px;line-height:1.2}
 #book-view #booking-form .option small{font-size:9px;margin-top:3px}
 #book-view #booking-form .booking-category-group{margin:0 0 8px}
 #book-view #booking-form .category-toggle{padding:9px 11px;font-size:23px;line-height:1.1}
 #book-view #booking-form .category-chevron{font-size:25px}
 #book-view #booking-form .category-items{margin-top:4px}
 #book-view .booking-panel .form-row{margin-top:9px}
 #book-view .booking-panel .summary{padding:9px 11px;margin:9px 0;font-size:11px;line-height:1.5}
 #book-view .calendar-header{margin-bottom:5px}
 #book-view .date-grid{gap:5px;margin:8px 0}
 #book-view .date-option{min-height:48px;padding:4px 2px}
 #book-view .date-option strong{font-size:14px}
 #book-view .selected-date-label{margin:5px 0;font-size:11px}
 #book-view .calendar-grid{gap:5px;margin:8px 0}
 #book-view .time-option{padding:8px 3px;font-size:11px}
 #book-view #booking-form label{font-size:10px;margin:7px 0}
 #book-view #booking-form input{padding:8px;margin-top:4px}
 #book-view .payment-method{padding:7px 9px;margin:7px 0}
 #book-view #submit-booking{padding:10px 12px}
}
