
html{font-family:var(--font-body)}body{font-family:var(--font-body)}h1,h2{font-family:var(--font-display)}
button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed}
:focus-visible{outline:3px solid #2672a8;outline-offset:3px}
.admin-button,.button,.text-danger,.admin-menu-btn,.cal__nav{min-height:44px}.text-danger{padding:10px}
.admin-sidebar{overflow-y:auto}.admin-backdrop{position:fixed;inset:0;background:#0009;z-index:25}.drawer-open{overflow:hidden}
.admin-form label,.admin-filter label,.schedule-row label{min-width:0}.admin-form input,.admin-form select,.schedule-row input{max-width:100%;min-width:0}
.manage-row>div,.agenda-info,.client-table__row>div{min-width:0;overflow-wrap:anywhere}.settings-media{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}
.pagination{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:22px 0}.diagnostic-slots{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.diagnostic-slot{padding:14px;border:1px solid var(--line);border-radius:8px}.diagnostic-slot strong{display:block;margin-bottom:8px}
.schedule-form{gap:16px}.schedule-row{padding:18px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.cal__day:disabled{color:#666;background:#eee;border-color:#ddd;opacity:1;cursor:not-allowed}.cal__day[aria-pressed=true]{outline:2px solid var(--gold)}
.cal__day{min-height:44px}.cal__nav{width:44px;height:44px}.cal__head{grid-template-columns:44px 1fr 44px}.cal__title{overflow-wrap:anywhere}
[data-core-calendar-status]{font-size:12px;line-height:1.4;min-height:32px;color:var(--muted)}
.admin-main,.booking-panel,.cal,.booking-schedule-grid,.booking-step{min-width:0}.admin-content{overflow-wrap:anywhere}
@media(max-width:900px){.booking-shell{grid-template-columns:1fr}.booking-progress{display:none}.booking-steps-mobile{display:block}.admin-sidebar{height:100dvh}.schedule-row{grid-template-columns:1fr 1fr}.schedule-row .day-toggle{grid-column:1/-1}.admin-filter{flex-wrap:wrap}.client-table__row{gap:12px}}
@media(max-width:760px){.booking-panel{padding:16px 8px}.booking-page .container{width:calc(100% - 16px)}.booking-schedule-grid{gap:16px}.cal{padding:12px 4px}.cal__grid,.cal__weekdays{gap:2px;grid-template-columns:repeat(7,minmax(0,1fr))}.cal__day{min-height:44px;aspect-ratio:auto;padding:0}.booking-controls{padding-inline:4px}.booking-controls .button{min-width:0;padding-inline:12px}.appointment-row .status-pill{display:inline-flex;grid-column:2;width:max-content}.client-table__row>span:nth-child(4){display:block}}
@media(max-width:640px){.admin-content{padding:22px 12px 60px}.admin-card{padding:16px}.admin-head-actions{width:100%;flex-wrap:wrap}.schedule-row{gap:12px;padding:12px}.admin-topbar{gap:12px}.admin-kpis article{min-width:0}.admin-filter{display:grid;grid-template-columns:1fr}.admin-filter>*{min-width:0}.status-card{padding-inline:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

.sidebar-exit{background:none;border:0;color:#ded7ce;font:inherit;padding:8px 0;min-height:44px;cursor:pointer}

.booking-shell{scroll-margin-top:140px}.skip-link:not(:focus){transform:translateY(-150%)}
@media(max-width:760px){.booking-shell{scroll-margin-top:120px}}
