/* Visual do agendamento da equipe; o fluxo e a disponibilidade continuam na API. */
body[data-booking-step="team"] .booking{padding:clamp(24px,3vw,48px) 0 64px;background:#080808}
body[data-booking-step="team"] .booking-atmosphere{background:linear-gradient(90deg,#070503a8,#08080880 47%,#070503a8),url('./assets/concept-ambiente.jpg') center/cover no-repeat;filter:saturate(1.1) contrast(1.04)}
body[data-booking-step="team"] .booking-layout{width:min(100% - 36px,1120px);grid-template-rows:auto auto;gap:0}
body[data-booking-step="team"] .booking-intro{display:none}
body[data-booking-step="team"] .booking-panel.team-booking{max-width:none;width:100%;padding:clamp(22px,3vw,38px);gap:0;border:1px solid #d4af37;border-radius:4px;background:linear-gradient(145deg,#111111f7,#080808f9 55%);box-shadow:0 0 0 1px #ffd16625 inset,0 26px 70px #000c,0 0 30px #c6952540;color:#fff}
.team-booking-header{text-align:center;padding:0 0 clamp(22px,2.5vw,32px)}
.team-booking-titleline{display:flex;align-items:center;justify-content:center;gap:clamp(10px,1.8vw,20px)}
.team-booking-titleline svg{width:clamp(38px,5vw,68px);height:clamp(38px,5vw,68px);fill:none;stroke:#ffd166;stroke-width:2.4;filter:drop-shadow(0 0 7px #ffbf42a8)}
.team-booking-titleline h1{margin:0;color:#fff;font:800 clamp(2.65rem,6.3vw,5.5rem)/.94 'Barlow Condensed',Impact,sans-serif;letter-spacing:.015em;text-transform:uppercase;text-shadow:0 3px 12px #000}
.team-booking-titleline h1 em{font-style:normal;color:#ffd166;text-shadow:0 0 14px #d49335aa,0 3px 7px #000}
.team-booking-header>p{margin:10px 0 0;color:#f2eee8;font:500 clamp(.65rem,1.15vw,.92rem)/1.5 'Inter',sans-serif;letter-spacing:.19em}
.team-booking-header-rule{display:block;width:min(260px,60%);height:1px;margin:19px auto 0;background:linear-gradient(90deg,transparent,#ffd166,transparent);position:relative}
.team-booking-header-rule::after{content:'';position:absolute;left:50%;top:-3px;width:7px;height:7px;border-radius:50%;background:#ffd166;box-shadow:0 0 10px #ffd166}
.team-booking-fields{display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,3vw,32px);align-items:start;margin:0 0 clamp(22px,3vw,34px)}
.team-booking-field{min-width:0}
.team-booking .team-booking-field label{display:flex;align-items:center;gap:10px;margin:0 0 10px;color:#fff;font:800 clamp(.85rem,1.45vw,1.1rem)/1.2 'Inter',sans-serif;letter-spacing:.03em}
.team-booking-field label svg,.team-booking fieldset legend svg{width:25px;height:25px;flex:none;fill:none;stroke:#ffd166;stroke-width:2.2;filter:drop-shadow(0 0 4px #d4933577)}
.team-booking .team-booking-field :is(input,select){width:100%;min-height:58px;padding:12px 16px;border:1px solid #e4b631;border-radius:10px;background:#101010;color:#fff;box-shadow:inset 0 0 14px #0008,0 0 0 1px #5f4114;font:500 1rem 'Inter',sans-serif}
.team-booking .team-booking-field :is(input,select):focus-visible{outline:2px solid #ffd166;outline-offset:3px}
.team-booking .team-booking-field .team-booking-note{margin-top:8px;color:#b8b8b8;font-size:.78rem}
.team-booking fieldset.team-booking-professionals,.team-booking fieldset.team-booking-times{position:relative;width:100%;min-width:0;margin:0 0 clamp(22px,3vw,34px);padding:0;border:0}
.team-booking fieldset legend{display:flex;align-items:center;gap:12px;margin:0 0 9px;color:#fff;font:800 clamp(1rem,1.7vw,1.35rem)/1.2 'Inter',sans-serif;letter-spacing:.02em;text-transform:uppercase}
.team-booking-section-note{margin:0 0 18px!important;color:#d3cbc0;font-size:.82rem;line-height:1.4}
.team-booking-barbers{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,2vw,22px)}
.team-booking .team-booking-barber{position:relative;display:block;aspect-ratio:.84;min-height:0;padding:0;overflow:hidden;border:2px solid #d4af37;border-radius:14px;background:#111;box-shadow:0 10px 22px #000a;isolation:isolate}
.team-booking .team-booking-barber:hover:not(:disabled){transform:translateY(-3px);border-color:#ffd166;box-shadow:0 0 18px #d4af3766,0 12px 30px #000b}
.team-booking .team-booking-barber[aria-pressed=true]{border:3px solid #ffd166;box-shadow:0 0 0 2px #8a5a09,0 0 21px #ffcb54b8,0 12px 30px #000b}
.team-booking .team-booking-barber[aria-pressed=true]::before{content:'✓';position:absolute;z-index:4;top:11px;right:11px;display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#ffd166;color:#171109;font:800 1.2rem 'Inter',sans-serif;box-shadow:0 0 13px #ffcb54a8}
.team-booking .team-booking-barber::after{content:'';position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,transparent 43%,#0008 67%,#000e 100%);pointer-events:none}
.team-booking .team-booking-barber:disabled{opacity:1;border-color:#735b2b;cursor:not-allowed}
.team-booking .team-booking-avatar{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;aspect-ratio:auto;border:0;border-radius:0;background:radial-gradient(circle at center 38%,#3b2b12,#0b0a09 67%);box-shadow:none;color:#d4af37}
.team-booking .team-booking-avatar img{transform:scale(1.04);transform-origin:center 30%;object-fit:cover;object-position:center 28%}
.team-booking .team-booking-avatar img.team-booking-original-photo{transform:none;object-position:center}
.team-booking-avatar-icon{font:400 clamp(3.4rem,7vw,6rem)/1 'Cormorant Garamond',Georgia,serif;text-shadow:0 0 18px #d4af3777}
.team-booking-photo-soon{margin-top:6px;color:#f4dfa6;font:700 .64rem 'Inter',sans-serif;letter-spacing:.16em}
.team-booking .team-booking-barber-copy{position:absolute;z-index:2;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:clamp(12px,1.5vw,20px);text-shadow:0 2px 5px #000}
.team-booking .team-booking-barber-copy strong{color:#fff;font:800 clamp(1.55rem,2.35vw,2.3rem)/.95 'Barlow Condensed',Impact,sans-serif;letter-spacing:.02em}
.team-booking-barber-role{color:#fff;font:600 .68rem 'Inter',sans-serif;letter-spacing:.27em}
.team-booking .team-booking-barber-copy small{margin-top:5px;color:#e9d29d;font-size:.75rem}
.team-booking-times{padding-top:0}
.team-booking-legend{position:absolute;top:-28px;right:0;display:flex;gap:18px;align-items:center;color:#e9e6e1;font-size:.8rem}
.team-booking-legend span{display:inline-flex;gap:7px;align-items:center}
.team-booking-legend i{display:block;width:16px;height:16px;border-radius:50%;box-shadow:0 0 10px currentColor}
.team-booking-legend-free{background:#00e676;color:#00e676}.team-booking-legend-busy{background:#ff3333;color:#ff3333}.team-booking-legend-unavailable{background:#f5f5f5;color:#f5f5f5}
.team-booking-slots{grid-template-columns:repeat(8,minmax(0,1fr));gap:9px;margin-top:18px}
.team-booking .team-booking-slot{justify-self:stretch;width:100%;min-width:0;min-height:58px;margin:0;padding:8px 3px;border-radius:10px;color:#fff;font:800 clamp(.82rem,1.3vw,1.05rem)/1 'Inter',sans-serif;transition:transform .18s,box-shadow .18s,border-color .18s}
.team-booking .team-booking-slot.available{border:2px solid #00e676;background:linear-gradient(#07552f,#013a20);box-shadow:inset 0 1px #a6ffd263,0 0 11px #00e67655}
.team-booking .team-booking-slot.available:hover{transform:translateY(-2px);box-shadow:0 0 16px #00e676aa}
.team-booking .team-booking-slot.available[aria-pressed=true]{outline:3px solid #ffd166;outline-offset:2px;box-shadow:0 0 17px #00e676b8}
.team-booking .team-booking-slot.occupied{border:2px solid #ff3333;background:linear-gradient(#650b0b,#380707);box-shadow:inset 0 1px #ffb0b064,0 0 10px #ff333366;color:#fff}
.team-booking .team-booking-slot.unavailable{border:2px solid #fff;background:linear-gradient(#fff,#e7e7e7);box-shadow:0 0 8px #ffffff44;color:#141414}
.team-booking .team-booking-slot:disabled{opacity:1;cursor:not-allowed}
.team-booking-count{margin:17px 0 0!important;color:#f4e7c8;font-size:.88rem}
.team-booking-count::before{content:'▦';display:inline-block;margin-right:9px;color:#ffd166;font-size:1.25rem;vertical-align:middle}
.team-booking #team-booking-status{min-height:0;margin:0;color:#f4d788}
.team-booking #team-booking-status:not(.error){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.team-booking #team-booking-details{padding:20px;border:1px solid #9e772e;border-radius:10px;background:#100f0c}
.team-booking #team-booking-details .team-booking-summary{margin-bottom:5px}
body[data-booking-step="team"] .booking-catalog-link{margin-top:16px}
@media(max-width:900px){.team-booking-slots{grid-template-columns:repeat(6,minmax(0,1fr))}.team-booking-legend{gap:10px;font-size:.7rem}}
@media(max-width:700px){body[data-booking-step="team"] .booking{padding:8px 0 56px}body[data-booking-step="team"] .booking-layout{width:calc(100% - 14px)}body[data-booking-step="team"] .booking-panel.team-booking{padding:20px 14px;border-radius:12px}.team-booking-header{padding:36px 0 25px}.team-booking-titleline{gap:8px}.team-booking-titleline h1{font-size:clamp(2.25rem,10vw,3.4rem)}.team-booking-titleline svg{width:37px;height:37px}.team-booking-header>p{font-size:.62rem;letter-spacing:.11em}.team-booking-fields{grid-template-columns:1fr;gap:17px;margin-bottom:25px}.team-booking .team-booking-field :is(input,select){min-height:52px}.team-booking-section-note{font-size:.72rem}.team-booking-barbers{grid-template-columns:1fr;gap:11px}.team-booking .team-booking-barber{display:grid;grid-template-columns:clamp(112px,31vw,148px) minmax(0,1fr);align-items:stretch;aspect-ratio:auto;min-height:clamp(126px,34vw,160px);border-radius:12px}.team-booking .team-booking-barber::after{background:linear-gradient(90deg,transparent 28%,#0008 52%,#000d)}.team-booking .team-booking-avatar{position:relative;inset:auto;width:100%;height:100%;min-height:122px;aspect-ratio:1;border-right:1px solid #d4af37}.team-booking .team-booking-avatar img{transform:scale(1.17);transform-origin:center 29%}.team-booking-avatar-icon{font-size:3.4rem}.team-booking-photo-soon{font-size:.5rem}.team-booking .team-booking-barber-copy{position:relative;inset:auto;justify-content:center;padding:12px 9px;min-width:0}.team-booking .team-booking-barber-copy strong{font-size:clamp(1.45rem,6vw,2rem)}.team-booking .team-booking-barber-copy small{font-size:.7rem}.team-booking .team-booking-barber[aria-pressed=true]::before{width:27px;height:27px;top:7px;right:7px;font-size:.95rem}.team-booking-legend{position:static;justify-content:flex-start;flex-wrap:wrap;gap:10px 15px;margin:10px 0 0}.team-booking-slots{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:14px}.team-booking .team-booking-slot{min-height:48px;font-size:.84rem;border-radius:8px}.team-booking-count{font-size:.78rem}}
@media(max-width:360px){.team-booking-slots{grid-template-columns:repeat(3,minmax(0,1fr))}.team-booking .team-booking-barber{grid-template-columns:108px minmax(0,1fr)}.team-booking .team-booking-barber-copy strong{font-size:1.4rem}.team-booking-barber-role{font-size:.59rem}}
@media(min-width:361px) and (max-width:700px){.team-booking .team-booking-barber{grid-template-columns:clamp(145px,42vw,174px) minmax(0,1fr);min-height:clamp(152px,44vw,180px)}}
@media(prefers-reduced-motion:reduce){.team-booking .team-booking-barber,.team-booking .team-booking-slot{transition:none}.team-booking .team-booking-barber:hover:not(:disabled),.team-booking .team-booking-slot.available:hover{transform:none}}
