/* Agenda CAARN. Tokens compartilhados em tokens.css; sem estilos globais. */
.caarn-hub-reception-workspace { box-sizing: border-box; width: 100%; max-width: 1480px; margin-inline: auto; padding: clamp(16px,3vw,36px); }
.caarn-hub-page-shell .caarn-hub-app:has(.caarn-hub-reception-workspace) { max-width: none; padding-inline: 0; }
.caarn-hub-reception-workspace::before { position: absolute; inset: 0 0 auto; z-index: -1; height: 360px; background: radial-gradient(circle at 88% 0,#f9e9e5 0,rgba(249,233,229,0) 46%),linear-gradient(180deg,#f7f9fb 0,rgba(247,249,251,0) 100%); content: ""; pointer-events: none; }
.caarn-hub-reception-workspace { position: relative; }
.caarn-hub-reception-nav { display: flex; flex-wrap: wrap; align-items: center; gap: .65rem 1rem; margin-bottom: 1.35rem; padding: .85rem 1rem; border: 1px solid rgba(215,222,230,.95); border-radius: 16px; background: rgba(255,255,255,.86); box-shadow: 0 8px 25px rgba(31,50,72,.05); color: #465569; font-size: .82rem; backdrop-filter: blur(8px); }
.caarn-hub-reception-nav .caarn-hub-agenda__button { margin-left: auto; min-height: 40px; }
.caarn-hub-reception-nav > a:last-child { color: #b42e34; font-weight: 650; text-decoration: none; }
.caarn-hub-agenda { box-sizing: border-box; width: 100%; max-width: 1480px; color: var(--caarn-hub-color-primary); font-family: inherit; font-size: 15px; font-weight: 400; line-height: 1.55; overflow-wrap: anywhere; }
.caarn-hub-agenda *, .caarn-hub-agenda *::before, .caarn-hub-agenda *::after { box-sizing: inherit; }
.caarn-hub-agenda [hidden] { display: none !important; }
.caarn-hub-agenda :is(h2,h3,h4,p,ul,dl,dd) { margin: 0; }
.caarn-hub-agenda :is(h2,h3,h4) { color: var(--caarn-hub-color-primary); font-family: inherit; line-height: 1.25; letter-spacing: -.025em; }
.caarn-hub-agenda :is(button,input,select) { font: inherit; box-shadow: none; }
.caarn-hub-agenda a { text-decoration: none; }
.caarn-hub-agenda button { cursor: pointer; }
.caarn-hub-agenda :focus-visible { outline: 3px solid var(--caarn-hub-color-accent); outline-offset: 3px; }
.caarn-hub-agenda__header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.25rem; padding-block: 1.25rem 1.75rem; }
.caarn-hub-agenda__eyebrow { color: #9f302d; font-size: .7rem; font-weight: 750; letter-spacing: .14em; }
.caarn-hub-agenda__header h2 { margin-block: .55rem; font-size: clamp(1.7rem,2.6vw,2.5rem); font-weight: 650; }
.caarn-hub-agenda__intro { max-width: 60ch; color: #596574; font-size: .95rem; }
.caarn-hub-agenda .caarn-hub-agenda__button { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 44px; padding: .6rem 1rem; border: 1px solid var(--caarn-hub-color-primary); border-radius: 9px; background: var(--caarn-hub-color-primary); color: #fff; font-size: .875rem; font-weight: 650; text-align: center; }
.caarn-hub-agenda .caarn-hub-agenda__button:hover { background: #34465e; color: #fff; }
.caarn-hub-agenda .caarn-hub-agenda__button--outline { border-color: #cbd3dc; background: #fff; color: var(--caarn-hub-color-primary); }
.caarn-hub-agenda .caarn-hub-agenda__button--outline:hover { border-color: var(--caarn-hub-color-primary); background: #f5f7f9; }
.caarn-hub-agenda .caarn-hub-agenda__button--danger { border-color: #d63638; background: #d63638; }
.caarn-hub-agenda .caarn-hub-agenda__button--danger:hover { border-color: #b32d2e; background: #b32d2e; }
.caarn-hub-agenda .caarn-hub-agenda__button[disabled],
.caarn-hub-agenda .caarn-hub-agenda__button[aria-busy="true"] { opacity: .65; cursor: progress; }
.caarn-hub-reception-service__delete-account { margin-top: 1.5rem; padding-top: 1.25rem; border-top: 1px dashed #d63638; }
.caarn-hub-reception-service__delete-account h3 { color: #d63638; }
.caarn-hub-click-attendance-panel { display: grid; gap: 1rem; padding: clamp(1.1rem,2vw,1.75rem); margin-block: 1.5rem; border: 1px solid #e0e5eb; border-radius: 22px; background: linear-gradient(135deg,#fff 0,#fbfcfd 100%); box-shadow: 0 12px 30px rgba(31,50,72,.06); scroll-margin-top: 2rem; }
.caarn-hub-click-attendance-panel > header { display: grid; gap: .45rem; }
.caarn-hub-click-attendance-panel h2 { font-size: 1.4rem; font-weight: 650; }
.caarn-hub-click-attendance-panel > header > p:last-child { max-width: 72ch; color: #596574; font-size: .88rem; }
.caarn-hub-click-attendance-panel__units { display: grid; grid-template-columns: repeat(auto-fit,minmax(250px,1fr)); gap: 1rem; }
.caarn-hub-click-attendance-panel__unit { display: grid; gap: .75rem; padding: 1.1rem; border: 1px solid #e0e5eb; border-radius: 18px; background: linear-gradient(180deg,#fff 0,#f8fafc 100%); box-shadow: 0 5px 16px rgba(31,50,72,.035); }
.caarn-hub-click-attendance-panel__unit h3 { font-size: 1rem; font-weight: 650; }
.caarn-hub-click-attendance-panel__event { display: grid; gap: .45rem; padding: .9rem 0 .15rem; border-top: 1px solid #e4e9ee; }
.caarn-hub-click-attendance-panel__event > span, .caarn-hub-click-attendance-panel__event > p { color: #596574; font-size: .8rem; }
.caarn-hub-click-attendance-panel__event > p { margin: 0; font-weight: 600; }
.caarn-hub-click-attendance-panel__event .caarn-hub-agenda__button { width: 100%; margin-top: .3rem; }
.caarn-hub-click-attendance-panel__empty { padding: 1rem; margin: 0; border-radius: 9px; background: #f5f7f9; color: #596574; }
.caarn-hub-click-attendance-dialog { width: min(920px,calc(100vw - 2rem)); max-height: min(720px,calc(100dvh - 2rem)); padding: 1.25rem; border: 0; border-radius: 15px; color: var(--caarn-hub-color-primary); box-shadow: 0 20px 60px rgba(21,38,59,.28); }
.caarn-hub-click-attendance-dialog::backdrop { background: rgba(21,38,59,.52); }
.caarn-hub-click-attendance-dialog__header { display: flex; align-items: start; justify-content: space-between; gap: 1rem; padding-bottom: 1rem; border-bottom: 1px solid #e0e5eb; }
.caarn-hub-click-attendance-dialog__header h2 { margin: .35rem 0 0; font-size: 1.35rem; line-height: 1.25; }
.caarn-hub-click-attendance-dialog__notice { min-height: 1.5rem; margin: 1rem 0; color: #465569; font-size: .88rem; }
.caarn-hub-click-attendance-dialog__notice[data-error] { color: #a61b1b; }
.caarn-hub-click-attendance-dialog__table-wrap { max-height: min(410px,calc(100dvh - 260px)); overflow: auto; border: 1px solid #e0e5eb; border-radius: 9px; }
.caarn-hub-click-attendance-dialog__table { width: 100%; min-width: 610px; border-collapse: collapse; font-size: .86rem; }
.caarn-hub-click-attendance-dialog__table th, .caarn-hub-click-attendance-dialog__table td { padding: .75rem; border-bottom: 1px solid #e9edf1; text-align: left; vertical-align: middle; }
.caarn-hub-click-attendance-dialog__table th { position: sticky; top: 0; z-index: 1; background: #f5f7f9; font-size: .75rem; }
.caarn-hub-click-attendance-dialog__table tr:last-child td { border-bottom: 0; }
.caarn-hub-click-attendance-dialog__table .caarn-hub-agenda__button { min-height: 38px; padding: .4rem .65rem; white-space: nowrap; }
.caarn-hub-click-attendance-dialog__actions { display: flex; flex-wrap: wrap; gap: .65rem; justify-content: flex-end; padding-top: 1rem; }
.caarn-hub-click-attendance-dialog__actions .caarn-hub-agenda__button, .caarn-hub-click-attendance-dialog__actions .caarn-hub-agenda__text-button { min-height: 42px; }
.caarn-hub-click-attendance-print { display: grid; gap: 1.25rem; padding: clamp(1.1rem,2.4vw,2rem); margin-block: .5rem 1.5rem; border: 1px solid #e0e5eb; border-radius: 22px; background: #fff; box-shadow: 0 14px 34px rgba(31,50,72,.075); }
.caarn-hub-click-attendance-print__header { display: flex; flex-wrap: wrap; align-items: start; justify-content: space-between; gap: 1rem; padding-bottom: 1.2rem; border-bottom: 1px solid #e5eaf0; }
.caarn-hub-click-attendance-print__header h1 { margin: .45rem 0; color: var(--caarn-hub-color-primary); font-size: clamp(1.55rem,2.5vw,2.15rem); line-height: 1.15; letter-spacing: -.035em; }
.caarn-hub-click-attendance-print__header p:last-child { max-width: 58ch; margin: 0; color: #596574; }
.caarn-hub-click-attendance-print__actions { display: flex; flex-wrap: wrap; gap: .6rem; }
.caarn-hub-click-attendance-print__summary { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .7rem; }
.caarn-hub-click-attendance-print__summary > div { display: grid; gap: .25rem; min-height: 82px; padding: .9rem 1rem; border: 1px solid #e2e8ee; border-radius: 14px; background: #f8fafc; }
.caarn-hub-click-attendance-print__summary span { color: #6a7684; font-size: .7rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.caarn-hub-click-attendance-print__summary strong { color: var(--caarn-hub-color-primary); font-size: .9rem; line-height: 1.35; }
.caarn-hub-click-attendance-print__table-wrap { overflow: auto; border: 1px solid #dfe6ec; border-radius: 15px; }
.caarn-hub-click-attendance-print__table { width: 100%; min-width: 720px; border-collapse: collapse; color: var(--caarn-hub-color-primary); }
.caarn-hub-click-attendance-print__table th, .caarn-hub-click-attendance-print__table td { padding: .85rem .9rem; border-bottom: 1px solid #e7edf1; text-align: left; }
.caarn-hub-click-attendance-print__table th { background: #f4f7f9; color: #536174; font-size: .72rem; letter-spacing: .05em; text-transform: uppercase; }
.caarn-hub-click-attendance-print__table tr:last-child td { border-bottom: 0; }
.caarn-hub-click-attendance-print__signature { min-width: 170px; }
.caarn-hub-agenda__metrics { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; margin-bottom: 1.5rem; }
.caarn-hub-agenda__metrics > div { position: relative; display: grid; gap: .65rem; padding: 1.25rem 1.5rem; border: 1px solid #e0e5eb; border-radius: 13px; background: #fff; }
.caarn-hub-agenda__metrics > div::before { position: absolute; inset: 1.3rem auto 1.3rem 0; width: 3px; border-radius: 0 3px 3px 0; background: var(--caarn-hub-color-primary); content: ""; }
.caarn-hub-agenda__metrics > div:nth-child(2)::before { background: var(--caarn-hub-agenda-free-border); }
.caarn-hub-agenda__metrics > div > span { color: #596574; font-size: .8rem; }
.caarn-hub-agenda__metrics strong { color: var(--caarn-hub-color-primary); font-size: 1.95rem; font-weight: 650; line-height: 1; font-variant-numeric: tabular-nums; }
.caarn-hub-agenda__metrics strong small { margin-left: .2rem; color: #596574; font-size: .8rem; font-weight: 450; }
.caarn-hub-agenda__workspace { display: grid; grid-template-columns: minmax(0,1fr) 255px; gap: 1.25rem; align-items: start; }
.caarn-hub-agenda__main { min-width: 0; border: 1px solid #e0e5eb; border-radius: 15px; background: #fff; overflow: hidden; }
.caarn-hub-agenda__toolbar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 1rem; padding: 1.25rem 1.25rem .6rem; }
.caarn-hub-agenda__daynav { display: flex; align-items: center; gap: .7rem; }
.caarn-hub-agenda__caption { color: #596574; font-size: .65rem; font-weight: 650; letter-spacing: .09em; text-transform: uppercase; }
.caarn-hub-agenda__daynav h3 { font-size: 1.2rem; font-weight: 650; }
.caarn-hub-agenda__daynav h3 small { display: block; padding-top: .25rem; font-size: .78rem; font-weight: 400; color: #596574; letter-spacing: 0; text-transform: capitalize; }
.caarn-hub-agenda .caarn-hub-agenda__icon-button { display: grid; place-items: center; width: 36px; height: 44px; border: 1px solid #e0e5eb; border-radius: 8px; color: var(--caarn-hub-color-primary); background: #fff; font-size: 1.5rem; }
.caarn-hub-agenda .caarn-hub-agenda__text-button { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: .5rem .8rem; border: 1px solid #cbd3dc; border-radius: 8px; background: #fff; color: #465569; font-size: .8rem; font-weight: 600; }
.caarn-hub-agenda .caarn-hub-agenda__text-button:hover, .caarn-hub-agenda .caarn-hub-agenda__icon-button:hover { background: #f1f4f7; border-color: var(--caarn-hub-color-primary); color: var(--caarn-hub-color-primary); }
.caarn-hub-agenda__filters { display: grid; grid-template-columns: minmax(130px,.7fr) minmax(0,1fr) minmax(0,1fr) auto; align-items: end; gap: .8rem; padding: .65rem 1.25rem 1.25rem; }
.caarn-hub-agenda__filters label, .caarn-hub-agenda__mobile-switch { display: grid; gap: .4rem; color: #465569; font-size: .75rem; font-weight: 600; }
.caarn-hub-agenda__filters :is(input,select), .caarn-hub-agenda__mobile-switch select { width: 100%; min-width: 0; min-height: 44px; padding: .6rem .7rem; border: 1px solid #cdd5de; border-radius: 8px; background: #fff; color: var(--caarn-hub-color-primary); font-size: .82rem; }
.caarn-hub-agenda__legend-row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .7rem; padding: .85rem 1.25rem; border-block: 1px solid #e9edf1; background: #fafbfc; }
.caarn-hub-agenda__legend { display: flex; flex-wrap: wrap; gap: .5rem .9rem; padding: 0; list-style: none; }
.caarn-hub-agenda__legend li { display: inline-flex; align-items: center; gap: .4rem; color: #465569; font-size: .7rem; }
.caarn-hub-agenda__legend li::before { width: 9px; height: 9px; border: 1px solid #6c7784; border-radius: 2px; background: #dce1e6; content: ""; }
.caarn-hub-agenda__legend [data-state="FREE"]::before { border-color: var(--caarn-hub-agenda-free-border); background: var(--caarn-hub-agenda-free-background); border-radius: 50%; }
.caarn-hub-agenda__legend [data-state="RESERVED"]::before { border-color: var(--caarn-hub-agenda-reserved-border); background: var(--caarn-hub-agenda-reserved-background); }
.caarn-hub-agenda__legend [data-state="HELD"]::before { background: transparent; border-style: dashed; }
.caarn-hub-agenda__updated { color: #596574; font-size: .68rem; }
.caarn-hub-agenda__updated[data-stale] { color: #8d2724; }
.caarn-hub-agenda__scroll { width: 100%; max-height: 640px; overflow: auto; overscroll-behavior: contain; scrollbar-width: thin; }
.caarn-hub-agenda__timeline { display: flex; flex-direction: column; align-items: stretch; min-width: 100%; width: max-content; }
.caarn-hub-agenda__axis { position: sticky; top: 0; z-index: 3; display: flex; flex: 0 0 auto; background: #fff; border-bottom: 1px solid #e9edf1; }
.caarn-hub-agenda__axis-head { position: sticky; left: 0; z-index: 1; display: flex; flex: 0 0 185px; align-items: center; padding-inline: .85rem; height: 40px; border-right: 1px solid #e9edf1; background: #fff; color: #596574; font-size: .65rem; font-weight: 650; letter-spacing: .05em; text-transform: uppercase; }
.caarn-hub-agenda__axis-track { position: relative; flex: 0 0 var(--agenda-width); width: var(--agenda-width); height: 40px; }
.caarn-hub-agenda__axis-track span { position: absolute; top: 0; bottom: 0; display: flex; align-items: center; padding-left: .45rem; border-left: 1px solid #e9edf1; color: #596574; font-size: .65rem; font-variant-numeric: tabular-nums; }
.caarn-hub-agenda__room { display: flex; border-bottom: 1px solid #e9edf1; }
.caarn-hub-agenda__room > header { position: sticky; left: 0; z-index: 2; display: flex; flex: 0 0 185px; flex-direction: column; justify-content: center; gap: .3rem; padding: .7rem .85rem; border-right: 1px solid #e9edf1; background: #fff; }
.caarn-hub-agenda__room h4 { font-size: .8rem; font-weight: 650; }
.caarn-hub-agenda__room header p { max-width: 22ch; color: #687483; font-size: .64rem; line-height: 1.3; }
.caarn-hub-agenda__track { position: relative; flex: 0 0 var(--agenda-width); width: var(--agenda-width); min-height: 68px; background: repeating-linear-gradient(to right,#fff 0,#fff 47px,#f1f3f6 47px,#f1f3f6 48px); }
.caarn-hub-agenda .caarn-hub-agenda__slot { position: absolute; top: 5px; bottom: 5px; display: flex; flex-direction: row; justify-content: center; align-items: center; gap: .4rem; height: calc(100% - 10px); min-width: 0; padding: .3rem .55rem; border: 1px solid var(--caarn-hub-agenda-neutral-border); border-top-width: 3px; border-radius: 7px; background: var(--caarn-hub-agenda-neutral-background); color: var(--caarn-hub-agenda-neutral-foreground); text-align: left; overflow: hidden; transition: box-shadow .15s,border-color .15s; }
.caarn-hub-agenda .caarn-hub-agenda__slot[data-state="FREE"] { border-color: var(--caarn-hub-agenda-free-border); border-right-color: transparent; border-bottom-color: transparent; border-left-color: transparent; background: var(--caarn-hub-agenda-free-background); color: var(--caarn-hub-agenda-free-foreground); }
.caarn-hub-agenda .caarn-hub-agenda__slot:is([data-state="RESERVED"],[data-state="CHECKED_IN"]) { border-color: var(--caarn-hub-agenda-reserved-border); background: var(--caarn-hub-agenda-reserved-background); color: var(--caarn-hub-agenda-reserved-foreground); }
.caarn-hub-agenda .caarn-hub-agenda__slot[data-state="HELD"] { border-style: dashed; background: #fff; }
.caarn-hub-agenda .caarn-hub-agenda__slot:is([data-state="BLOCKED"],[data-state="MAINTENANCE"],[data-state="RENOVATION"]) { background-image: repeating-linear-gradient(135deg,transparent 0,transparent 6px,#23304106 6px,#23304106 7px); }
.caarn-hub-agenda .caarn-hub-agenda__slot[data-state="CLOSED"] { border-style: dashed; border-color: #bcc5ce; background: #fafbfc; color: #687483; }
.caarn-hub-agenda .caarn-hub-agenda__slot[aria-pressed="true"] { z-index: 1; border-color: var(--caarn-hub-agenda-action-border); background: var(--caarn-hub-agenda-action-background); color: var(--caarn-hub-agenda-action-foreground); box-shadow: 0 0 0 2px var(--caarn-hub-agenda-action-border); }
.caarn-hub-agenda .caarn-hub-agenda__slot:hover { box-shadow: inset 0 0 0 1px currentColor; }
.caarn-hub-agenda__slot-time { font-size: .72rem; font-weight: 650; font-variant-numeric: tabular-nums; white-space: nowrap; }
.caarn-hub-agenda__slot-status { font-size: .66rem; line-height: 1.2; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.caarn-hub-agenda__slot-status::before { content: "· "; font-weight: 800; }
.caarn-hub-agenda [data-state="FREE"] .caarn-hub-agenda__slot-status::before { content: "✓ "; }
.caarn-hub-agenda .caarn-hub-agenda__slot--compact { flex-direction: column; align-items: center; justify-content: center; gap: .1rem; padding-inline: .25rem; }
.caarn-hub-agenda__slot--compact .caarn-hub-agenda__slot-time { font-size: .58rem; }
.caarn-hub-agenda__slot--compact .caarn-hub-agenda__slot-status { display: none; }
.caarn-hub-agenda .caarn-hub-agenda__slot--ultracompact { padding-inline: .15rem; }
.caarn-hub-agenda__slot--ultracompact .caarn-hub-agenda__slot-time { font-size: .5rem; }
.caarn-hub-agenda__now { position: absolute; top: 0; bottom: 0; z-index: 1; width: 2px; background: var(--caarn-hub-color-accent); pointer-events: none; }
.caarn-hub-agenda__now span { position: absolute; top: 2px; left: 3px; padding: 1px 5px; border-radius: 0 3px 3px 0; background: #a52c29; color: #fff; font-size: .6rem; white-space: nowrap; }
.caarn-hub-agenda__footnote { display: flex; flex-wrap: wrap; gap: .5rem; justify-content: space-between; padding: .85rem 1.25rem; border-top: 1px solid #e9edf1; color: #596574; font-size: .68rem; }
.caarn-hub-agenda__footnote nav { display: flex; gap: 1rem; }
.caarn-hub-agenda__footnote a { color: var(--caarn-hub-color-primary); text-decoration: underline; }
.caarn-hub-agenda__detail { position: sticky; top: 3rem; display: grid; gap: 1.1rem; padding: 1.4rem; border: 1px solid #e0e5eb; border-radius: 14px; background: #fff; }
.caarn-hub-agenda__detail h3 { font-size: 1.25rem; font-weight: 650; }
.caarn-hub-agenda__detail > p { font-size: .83rem; color: #596574; }
.caarn-hub-agenda__detail dl { display: grid; gap: 1rem; }
.caarn-hub-agenda__detail dt { color: #687483; font-size: .72rem; }
.caarn-hub-agenda__detail dd { margin-top: .2rem; font-size: .88rem; font-weight: 600; }
.caarn-hub-agenda__tip { margin-top: .8rem; padding-top: 1.1rem; border-top: 1px solid #e9edf1; }
.caarn-hub-agenda__tip strong { font-size: .77rem; }
.caarn-hub-agenda__tip p { margin-top: .5rem; color: #687483; font-size: .75rem; }
.caarn-hub-agenda__empty { padding: 3rem 1.5rem; text-align: center; color: #596574; }
.caarn-hub-agenda__empty h3 { margin-bottom: .7rem; font-size: 1.2rem; }
.caarn-hub-agenda__sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; clip-path: inset(50%); overflow: hidden; white-space: nowrap; }
.caarn-hub-agenda__mobile-switch { display: none; }
.caarn-hub-agenda--access { display: grid; gap: 1rem; max-width: 520px; padding: 2.5rem; margin: 3rem auto; border: 1px solid #e0e5eb; border-radius: 16px; background: #fff; }
.caarn-hub-agenda__dialog { max-width: min(30rem, calc(100vw - 2rem)); width: 100%; padding: clamp(1.25rem,4vw,2rem); border: 1px solid #e0e5eb; border-radius: 16px; color: var(--caarn-hub-color-primary); background: #fff; font: inherit; }
.caarn-hub-agenda__dialog:not([open]) { display: none; }
.caarn-hub-agenda__dialog::backdrop { background: #23304199; }
.caarn-hub-agenda__dialog h3 { font-size: 1.15rem; font-weight: 650; }
.caarn-hub-agenda__dialog p { margin-block: .6rem 1.1rem; color: #596574; font-size: .85rem; }
.caarn-hub-agenda__dialog-field { display: grid; gap: .4rem; margin-bottom: .9rem; font-size: .8rem; font-weight: 600; }
.caarn-hub-agenda__dialog-field :is(textarea,select,input) { width: 100%; min-height: 42px; padding: .6rem .7rem; border: 1px solid #cdd5de; border-radius: 8px; font: inherit; color: var(--caarn-hub-color-primary); }
.caarn-hub-agenda__dialog-times { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: .75rem; }
.caarn-hub-agenda__dialog-actions { display: flex; justify-content: flex-end; gap: .75rem; margin-top: .5rem; }
.caarn-hub-agenda__detail dl > div[hidden] { display: none; }
.caarn-hub-admin:has([data-operational-agenda]) { max-width: 1480px; }
.caarn-hub-admin > .caarn-hub-admin__header:has(+ [data-operational-agenda]) { display: none; }
.caarn-hub-admin [data-operational-agenda] .caarn-hub-agenda__service-link { display: none; }
.caarn-hub-reception-service { padding: clamp(1.1rem,2vw,1.75rem); margin-block: 1.5rem; border: 1px solid #e0e5eb; border-radius: 22px; background: linear-gradient(135deg,#fff 0,#fbfcfd 100%); box-shadow: 0 12px 30px rgba(31,50,72,.06); scroll-margin-top: 2rem; }
.caarn-hub-reception-service .caarn-hub-agenda__header { padding-top: 0; }
.caarn-hub-reception-service .caarn-hub-agenda__header h2 { font-size: 1.4rem; }
.caarn-hub-reception-service__search { display: flex; flex-wrap: wrap; align-items: end; gap: .8rem; }
.caarn-hub-reception-service__search > label { flex: 1; max-width: 360px; }
.caarn-hub-reception-service label { display: grid; gap: .4rem; font-size: .8rem; font-weight: 600; }
.caarn-hub-reception-service :is(input:not([type="hidden"]):not([type="checkbox"]),select) { width: 100%; min-width: 0; min-height: 44px; padding: .6rem .75rem; border: 1px solid #cbd3dc; border-radius: 8px; background: #fff; color: #233041; font: inherit; }
.caarn-hub-reception-service__notice { padding: .8rem 1rem; margin-bottom: 1rem !important; border-left: 3px solid #de3d3a; background: #f8f9fb; font-size: .875rem; }
.caarn-hub-reception-service__result { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 1.5rem; margin-top: 1.5rem; }
.caarn-hub-reception-service__profile { grid-column: 1/-1; display: flex; flex-wrap: wrap; align-items: center; gap: .6rem 1.5rem; padding: 1.05rem 1.15rem; border: 1px solid #e1e8ef; border-radius: 16px; background: linear-gradient(135deg,#f4f8fb 0,#fafcfd 100%); }
.caarn-hub-reception-service__profile h3 { margin-right: auto; font-size: 1rem; }
.caarn-hub-reception-service__profile p { font-size: .78rem; color: #465569; }
.caarn-hub-reception-service__financial-warning { color: #a61b1b !important; font-weight: 700; }
.caarn-hub-reception-service__history h3, .caarn-hub-reception-service__reserve h3 { font-size: 1rem; margin-bottom: .5rem; }
.caarn-hub-reception-service__history > p { font-size: .85rem; color: #596574; }
.caarn-hub-reception-service__booking { display: grid; gap: .8rem; padding: 1rem; margin-top: .75rem; border: 1px solid #e4e9ee; border-radius: 14px; background: #fff; box-shadow: 0 4px 12px rgba(31,50,72,.03); }
.caarn-hub-reception-service__booking p { margin-top: .25rem; font-size: .78rem; color: #596574; }
.caarn-hub-reception-service__reserve { display: grid; align-content: start; gap: 1rem; padding: 1.3rem; border: 1px solid #e0e5eb; border-radius: 18px; background: #fff; box-shadow: 0 5px 16px rgba(31,50,72,.035); }
.caarn-hub-reception-service__reserve > p { font-size: .8rem; color: #596574; }
.caarn-hub-reception-service__times { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: .6rem; }
.caarn-hub-reception-service .caarn-hub-reception-service__check { display: flex; align-items: start; font-weight: 400; font-size: .75rem; }
.caarn-hub-reception-service__check input { flex-shrink: 0; margin-top: .2rem; accent-color: #de3d3a; }
@media (max-width: 680px) {
	.caarn-hub-reception-service { padding: 1rem; }
	.caarn-hub-reception-service__result { grid-template-columns: minmax(0,1fr); }
	.caarn-hub-reception-service__reserve { padding: 1rem; }
	.caarn-hub-reception-service__times { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
	.caarn-hub-reception-service__times > label:first-child { grid-column: 1/-1; }
	.caarn-hub-reception-nav { align-items: stretch; padding: .8rem; border-radius: 14px; }
	.caarn-hub-reception-nav .caarn-hub-agenda__button { width: 100%; margin-left: 0; }
	.caarn-hub-click-attendance-panel, .caarn-hub-click-attendance-print { border-radius: 18px; }
	.caarn-hub-click-attendance-print__header { align-items: stretch; }
	.caarn-hub-click-attendance-print__actions { display: grid; grid-template-columns: minmax(0,1fr); }
	.caarn-hub-click-attendance-print__actions :is(a,button) { width: 100%; }
	.caarn-hub-click-attendance-print__summary { grid-template-columns: minmax(0,1fr); }
}

@media print {
	.caarn-hub-reception-workspace--print .caarn-hub-reception-nav, .caarn-hub-click-attendance-print__actions { display: none !important; }
	.caarn-hub-reception-workspace--print, .caarn-hub-click-attendance-print { max-width: none; padding: 0; margin: 0; border: 0; box-shadow: none; background: #fff; }
	.caarn-hub-click-attendance-print__summary > div { min-height: auto; padding: .45rem 0; border: 0; background: transparent; }
	.caarn-hub-click-attendance-print__table-wrap { overflow: visible; border: 0; }
	.caarn-hub-click-attendance-print__table { min-width: 0; }
	.caarn-hub-click-attendance-print__table th, .caarn-hub-click-attendance-print__table td { border: 1px solid #777; color: #000; }
	.caarn-hub-click-attendance-print__signature { min-width: 200px; height: 35px; }
}

@media (max-width: 1100px) {
	.caarn-hub-agenda__workspace { grid-template-columns: minmax(0,1fr); }
	.caarn-hub-agenda__detail { position: static; }
	.caarn-hub-agenda__detail:not([data-open]) { display: none; }
	.caarn-hub-agenda__detail[data-open] { position: fixed; inset: auto 1rem 1rem; z-index: 9999; max-height: 78dvh; overflow-y: auto; box-shadow: 0 0 0 100vmax #23304166; }
	.caarn-hub-agenda__tip { display: none; }
}
@media (max-width: 680px) {
	.caarn-hub-agenda__header { gap: 1rem; padding-block: .75rem 1.25rem; }
	.caarn-hub-agenda__header h2 { font-size: 1.65rem; }
	.caarn-hub-agenda__metrics { gap: .45rem; margin-bottom: 1rem; }
	.caarn-hub-agenda__metrics > div { gap: .6rem; padding: .85rem .6rem; border-radius: 10px; }
	.caarn-hub-agenda__metrics > div > span { font-size: .64rem; line-height: 1.4; }
	.caarn-hub-agenda__metrics strong { font-size: 1.5rem; }
	.caarn-hub-agenda__metrics small { display: inline-block; font-size: .62rem !important; }
	.caarn-hub-agenda__toolbar { gap: .5rem; padding: .9rem .8rem .3rem; }
	.caarn-hub-agenda__daynav { gap: .4rem; }
	.caarn-hub-agenda__daynav h3 { font-size: 1rem; }
	.caarn-hub-agenda__daynav > .caarn-hub-agenda__text-button { padding-inline: .35rem; }
	.caarn-hub-agenda__filters { grid-template-columns: minmax(0,1fr) minmax(0,1fr); padding: .7rem .8rem 1rem; gap: .7rem; }
	.caarn-hub-agenda__legend-row { padding: .8rem; gap: .65rem; }
	.caarn-hub-agenda__legend { gap: .45rem .7rem; }
	.caarn-hub-agenda__legend li { font-size: .63rem; }
	.caarn-hub-agenda__mobile-switch { display: grid; padding: .7rem .8rem; border-bottom: 1px solid #e9edf1; }
	.caarn-hub-agenda[data-enhanced] .caarn-hub-agenda__room:not([data-mobile-active]) { display: none; }
	.caarn-hub-agenda__axis-head, .caarn-hub-agenda__room > header { flex-basis: 120px; padding-inline: .6rem; }
	.caarn-hub-agenda__scroll { max-height: 420px; }
	.caarn-hub-agenda__detail[data-open] { inset: auto .6rem .6rem; padding: 1.25rem; }
	.caarn-hub-agenda__dialog-times { grid-template-columns: minmax(0,1fr); }
	.caarn-hub-agenda__footnote { padding: .8rem; }
}
@media (prefers-reduced-motion: reduce) {
	.caarn-hub-agenda *, .caarn-hub-agenda *::before, .caarn-hub-agenda *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}
@media (forced-colors: active) {
	.caarn-hub-agenda .caarn-hub-agenda__slot { border: 2px solid CanvasText; background: Canvas; color: CanvasText; forced-color-adjust: auto; }
	.caarn-hub-agenda .caarn-hub-agenda__slot[aria-pressed="true"] { outline: 3px solid Highlight; }
	.caarn-hub-agenda__now { background: Highlight; }
}
