@font-face{font-family:DINPro;src:url("/assets/DINPro-Regular.ttf")}@font-face{font-family:DINPro;font-weight:700;src:url("/assets/DINPro-Bold.ttf")}
#rb-app{--rb-accent:#006b63;--rb-bg:#edf5f3;--rb-panel:#fff;--rb-text:#0d302d;--rb-muted:#6a7d7a;--rb-border:#d8e5e2;--rb-green:#20a464;--rb-orange:#ef9f20;--rb-red:#d84b4b;--rb-shadow:0 18px 45px rgba(0,70,62,.10)}html[data-theme=dark] #rb-app{--rb-bg:#0b1519;--rb-panel:#111d21;--rb-text:#f3fbf9;--rb-muted:#9fb4b0;--rb-border:#26373a;--rb-shadow:0 20px 50px rgba(0,0,0,.3)}#rb-app *{box-sizing:border-box}#rb-app{margin:0;background:radial-gradient(circle at 74% 3%,rgba(70,220,180,.18),transparent 26%),var(--rb-bg);color:var(--rb-text);font-family:DINPro,Arial,sans-serif;min-height:100vh}#rb-app{--rb-accent:#006b63;min-height:100vh}#rb-app .rb-topbar{height:82px;display:flex;align-items:center;gap:16px;padding:0 28px;border-bottom:1px solid var(--rb-border);background:color-mix(in srgb,var(--rb-panel) 88%,transparent);backdrop-filter:blur(16px);position:sticky;top:0;z-index:30}#rb-app .rb-back{width:46px;height:46px;border-radius:14px;border:1px solid var(--rb-border);display:grid;place-items:center;color:var(--rb-text);background:var(--rb-panel);transition:.2s}#rb-app .rb-back:hover{transform:translateX(-2px)}#rb-app svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}#rb-app .rb-title{display:flex;align-items:center;gap:13px}#rb-app .rb-title strong{display:block;font-size:20px}#rb-app .rb-title small,#rb-app .rb-user b{display:block;color:var(--rb-muted);font-size:12px;letter-spacing:.05em}#rb-app .rb-room-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;color:white;background:linear-gradient(145deg,var(--rb-accent),#18a28f);box-shadow:0 12px 28px color-mix(in srgb,var(--rb-accent) 25%,transparent)}#rb-app .rb-user{margin-left:auto;text-align:right}#rb-app .rb-user span{display:block;font-weight:700}#rb-app .rb-tabs{display:flex;gap:8px;padding:16px 28px 0;max-width:1500px;margin:auto}#rb-app .rb-tab{border:1px solid var(--rb-border);background:var(--rb-panel);color:var(--rb-muted);border-radius:14px;padding:11px 16px;display:flex;gap:8px;align-items:center;font:700 14px DINPro;cursor:pointer;transition:.2s}#rb-app .rb-tab svg{width:17px}#rb-app .rb-tab.active{color:white;background:var(--rb-accent);border-color:var(--rb-accent);box-shadow:0 8px 20px color-mix(in srgb,var(--rb-accent) 20%,transparent)}#rb-app .rb-main{max-width:1500px;margin:auto;padding:18px 28px 42px}#rb-app .rb-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(340px,.75fr);gap:20px;align-items:start}#rb-app .rb-calendar-card,#rb-app .rb-booking-card,#rb-app .rb-history-page,#rb-app .rb-supervision,#rb-app .rb-delegate-box,#rb-app .rb-supervisor-list{background:var(--rb-panel);border:1px solid var(--rb-border);border-radius:24px;box-shadow:var(--rb-shadow)}#rb-app .rb-calendar-card{padding:24px}#rb-app .rb-calendar-head,#rb-app .rb-card-head,#rb-app .rb-page-head,#rb-app .rb-list-head{display:flex;align-items:center;justify-content:space-between;gap:16px}#rb-app .rb-calendar-head button{width:42px;height:42px;border-radius:13px;border:1px solid var(--rb-border);background:var(--rb-bg);color:var(--rb-text);display:grid;place-items:center;cursor:pointer}#rb-app .rb-calendar-head h1,#rb-app .rb-card-head h2,#rb-app .rb-page-head h1{margin:3px 0 0;font-size:28px}#rb-app .rb-eyebrow{font-size:11px;letter-spacing:.18em;font-weight:700;color:var(--rb-muted)}#rb-app .rb-week,#rb-app .rb-month{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}#rb-app .rb-week{margin-top:22px;padding:0 3px}#rb-app .rb-week span{text-align:center;font-size:11px;color:var(--rb-muted);font-weight:700}#rb-app .rb-month{margin-top:8px}#rb-app .rb-day{min-height:88px;border-radius:16px;border:1px solid var(--rb-border);background:var(--rb-panel);color:var(--rb-text);padding:11px;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;transition:.18s}#rb-app .rb-day:hover:not(.ghost){transform:translateY(-2px);border-color:color-mix(in srgb,var(--rb-accent) 45%,var(--rb-border));box-shadow:0 8px 20px rgba(0,0,0,.06)}#rb-app .rb-day.ghost{border:0;background:transparent;cursor:default}#rb-app .rb-day.past{opacity:.45}#rb-app .rb-day.today .rb-day-number{background:var(--rb-accent);color:white}#rb-app .rb-day.selected{outline:2px solid var(--rb-accent);outline-offset:1px}#rb-app .rb-day-number{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;font-weight:700}#rb-app .rb-day-summary{display:flex;gap:5px}#rb-app .rb-day-summary i,#rb-app .rb-legend i,#rb-app .rb-status i{width:8px;height:8px;border-radius:99px;display:inline-block}#rb-app .free{background:var(--rb-green)}#rb-app .pending{background:var(--rb-orange)}#rb-app .approved,#rb-app .in_use{background:var(--rb-red)}#rb-app .rb-legend{display:flex;gap:18px;align-items:center;margin-top:18px;color:var(--rb-muted);font-size:12px}#rb-app .rb-legend span{display:flex;align-items:center;gap:7px}#rb-app .rb-timeline-head{display:flex;justify-content:space-between;border-top:1px solid var(--rb-border);margin-top:20px;padding-top:19px}#rb-app .rb-timeline-head strong{display:block;margin-top:4px;font-size:14px}#rb-app .rb-timeline{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:12px;max-height:280px;overflow:auto;padding-right:4px}#rb-app .rb-slot{border:1px solid var(--rb-border);border-radius:12px;padding:10px 5px;background:var(--rb-panel);color:var(--rb-text);cursor:pointer;transition:.16s}#rb-app .rb-slot strong,#rb-app .rb-slot small{display:block}#rb-app .rb-slot small{margin-top:3px;font-size:10px;color:var(--rb-muted)}#rb-app .rb-slot.free{border-color:color-mix(in srgb,var(--rb-green) 48%,var(--rb-border));background:color-mix(in srgb,var(--rb-green) 13%,var(--rb-panel))}#rb-app .rb-slot.free:hover,#rb-app .rb-slot.chosen{border-color:var(--rb-green);background:color-mix(in srgb,var(--rb-green) 23%,var(--rb-panel));box-shadow:0 0 0 2px color-mix(in srgb,var(--rb-green) 10%,transparent)}#rb-app .rb-slot.unavailable{background:color-mix(in srgb,#84908e 10%,var(--rb-panel));border-color:var(--rb-border);opacity:.52;cursor:not-allowed}#rb-app .rb-slot.pending{background:color-mix(in srgb,var(--rb-orange) 18%,var(--rb-panel));border-color:color-mix(in srgb,var(--rb-orange) 55%,var(--rb-border));cursor:not-allowed}#rb-app .rb-slot.approved,#rb-app .rb-slot.in_use{background:color-mix(in srgb,var(--rb-red) 16%,var(--rb-panel));border-color:color-mix(in srgb,var(--rb-red) 55%,var(--rb-border));cursor:not-allowed}#rb-app .rb-booking-card{padding:24px;position:sticky;top:100px}#rb-app .rb-chip{background:var(--rb-bg);border:1px solid var(--rb-border);border-radius:99px;padding:7px 10px;font-size:11px;color:var(--rb-muted)}#rb-app .rb-time-row,#rb-app .rb-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}#rb-app .rb-field,#rb-app .rb-time-row label{display:block}#rb-app .rb-field>span,#rb-app .rb-time-row label>span,#rb-app .rb-delegate-box label>span{display:block;font-size:12px;font-weight:700;margin-bottom:7px}#rb-app .rb-field input,#rb-app .rb-field textarea,#rb-app .rb-time-row select,#rb-app .rb-service-chairs input,#rb-app .rb-delegate-box input{width:100%;border:1px solid var(--rb-border);background:var(--rb-bg);color:var(--rb-text);border-radius:12px;padding:12px 13px;font:inherit;outline:none}#rb-app .rb-field textarea{min-height:94px;resize:vertical}#rb-app .rb-field input:focus,#rb-app .rb-field textarea:focus,#rb-app .rb-time-row select:focus,#rb-app .rb-delegate-box input:focus{border-color:var(--rb-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--rb-accent) 10%,transparent)}#rb-app .rb-rule{font-size:11px;color:var(--rb-muted);line-height:1.45}#rb-app .rb-service-chairs{display:grid;grid-template-columns:1fr 84px;gap:8px;align-items:end}#rb-app .rb-check{display:flex;align-items:center;gap:9px;font-weight:700;font-size:13px}#rb-app .rb-check input{accent-color:var(--rb-accent)}#rb-app .rb-check span{display:flex;align-items:center;gap:7px}#rb-app .rb-check svg{width:17px}#rb-app .rb-services{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:13px 0}#rb-app .rb-check.tile{border:1px solid var(--rb-border);border-radius:12px;padding:12px;background:var(--rb-bg)}#rb-app .rb-usage{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}#rb-app .rb-usage-card{position:relative;border:1px solid var(--rb-border);border-radius:15px;background:var(--rb-panel);min-height:92px;padding:14px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;transition:.2s}#rb-app .rb-usage-card img{height:28px;max-width:130px;object-fit:contain}#rb-app .rb-usage-card img[src*="senai"]{height:32px}#rb-app .rb-usage-card small{color:var(--rb-muted)}#rb-app .rb-usage-card.selected{border-color:var(--rb-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--rb-accent) 12%,transparent)}#rb-app .rb-radio{position:absolute;top:10px;right:10px;width:14px;height:14px;border:2px solid var(--rb-border);border-radius:50%}#rb-app .selected .rb-radio{border:4px solid var(--rb-accent)}#rb-app .rb-submit{width:100%;margin-top:16px;border:0;border-radius:14px;background:linear-gradient(135deg,var(--rb-accent),#0a8278);color:#fff;padding:14px;font:700 14px DINPro;display:flex;justify-content:center;align-items:center;gap:8px;cursor:pointer;box-shadow:0 10px 22px color-mix(in srgb,var(--rb-accent) 20%,transparent)}#rb-app .rb-submit:disabled{opacity:.65;cursor:not-allowed}#rb-app .rb-history-page,#rb-app .rb-supervision{padding:26px}#rb-app .rb-page-head p{margin:6px 0 0;color:var(--rb-muted)}#rb-app .rb-segment,#rb-app .rb-filterbar{display:flex;background:var(--rb-bg);border:1px solid var(--rb-border);border-radius:14px;padding:4px;gap:4px}#rb-app .rb-segment button,#rb-app .rb-filterbar button{border:0;background:transparent;color:var(--rb-muted);padding:9px 13px;border-radius:10px;font:700 12px DINPro;cursor:pointer}#rb-app .rb-segment button.active,#rb-app .rb-filterbar button.active{background:var(--rb-panel);color:var(--rb-text);box-shadow:0 4px 12px rgba(0,0,0,.06)}#rb-app .rb-filterbar{display:inline-flex;margin:20px 0;flex-wrap:wrap}#rb-app .rb-history-list{display:grid;gap:12px}#rb-app .rb-history-card{display:grid;grid-template-columns:210px minmax(0,1fr) 120px auto;gap:16px;align-items:center;border:1px solid var(--rb-border);border-radius:18px;padding:16px;background:var(--rb-panel);transition:.18s}#rb-app .rb-history-card:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(0,0,0,.06)}#rb-app .rb-person{display:flex;align-items:center;gap:11px}#rb-app .rb-avatar{width:48px;height:48px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:linear-gradient(145deg,var(--rb-accent),#27ad98);color:white;font-weight:700;flex:none}#rb-app .rb-avatar img{width:100%;height:100%;object-fit:cover}#rb-app .rb-person strong,#rb-app .rb-person small{display:block}#rb-app .rb-person small{color:var(--rb-muted);margin-top:2px}#rb-app .rb-code{display:flex;align-items:center;gap:12px}#rb-app .rb-status{display:inline-flex;align-items:center;gap:6px;border-radius:99px;padding:5px 8px;font-size:11px;background:var(--rb-bg)}#rb-app .rb-status.pending i{background:var(--rb-orange)}#rb-app .rb-status.approved i,#rb-app .rb-status.in_use i{background:var(--rb-red)}#rb-app .rb-status.denied i{background:#8d98a0}#rb-app .rb-info-row{display:flex;gap:14px;color:var(--rb-muted);font-size:12px;margin:8px 0}#rb-app .rb-info-row span{display:flex;align-items:center;gap:5px}#rb-app .rb-info-row svg{width:15px}#rb-app .rb-history-main p{margin:7px 0;font-size:13px}#rb-app .rb-history-main>small{color:var(--rb-muted)}#rb-app .rb-history-logo{text-align:center}#rb-app .rb-usage-logo{max-width:90px;max-height:36px;object-fit:contain}#rb-app .rb-usage-logo.senai{max-height:42px}#rb-app .rb-actions{display:flex;gap:8px}#rb-app .rb-actions button{border:0;border-radius:11px;padding:9px 11px;font:700 12px DINPro;display:flex;gap:6px;align-items:center;cursor:pointer}#rb-app .rb-actions svg{width:15px}#rb-app .rb-actions .approve{background:#e4f6ed;color:#137449}#rb-app .rb-actions .deny{background:#fdeaea;color:#a83b3b}#rb-app .rb-denial{margin-top:9px;padding:9px;border-radius:9px;background:#fff1f1;color:#8c3434;font-size:12px}#rb-app .rb-empty,#rb-app .rb-loading,#rb-app .rb-fatal{display:grid;place-items:center;text-align:center;min-height:260px;color:var(--rb-muted);gap:8px}#rb-app .rb-empty svg{width:34px;height:34px}#rb-app .rb-empty strong{color:var(--rb-text);font-size:18px}#rb-app .rb-empty.small{min-height:120px}#rb-app .rb-loading i,#rb-app .rb-spin{width:28px;height:28px;border-radius:50%;border:3px solid var(--rb-border);border-top-color:var(--rb-accent);animation:spin .8s linear infinite}#rb-app .rb-spin{display:inline-block;width:16px;height:16px}@keyframes spin{to{transform:rotate(360deg)}}#rb-app .rb-delegate-box,#rb-app .rb-supervisor-list{padding:20px;margin-top:18px;box-shadow:none}#rb-app .rb-delegate-box label>div{display:flex;gap:8px}#rb-app .rb-delegate-box button,#rb-app .rb-found button{border:0;border-radius:11px;background:var(--rb-accent);color:#fff;padding:0 17px;font-weight:700;cursor:pointer}#rb-app .rb-found{display:flex;align-items:center;justify-content:space-between;padding:13px;border:1px solid var(--rb-border);border-radius:13px;margin-top:12px}#rb-app .rb-found strong,#rb-app .rb-found small{display:block}#rb-app .rb-found small{color:var(--rb-muted)}#rb-app .rb-list-head{margin-bottom:10px}#rb-app .rb-list-head span{color:var(--rb-muted);font-size:12px}#rb-app .rb-supervisor-list article{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--rb-border)}#rb-app .rb-supervisor-list article>div{flex:1}#rb-app .rb-supervisor-list article strong,#rb-app .rb-supervisor-list article small{display:block}#rb-app .rb-supervisor-list article small{color:var(--rb-muted)}#rb-app .rb-toggle{width:46px;height:27px;border:0;border-radius:99px;background:#cad7d4;padding:3px;cursor:pointer}#rb-app .rb-toggle i{display:block;width:21px;height:21px;border-radius:50%;background:#fff;transition:.2s}#rb-app .rb-toggle.on{background:var(--rb-accent)}#rb-app .rb-toggle.on i{transform:translateX(19px)}#rb-app .rb-inline-error{margin-top:10px;color:#a73a3a;background:#fff0f0;padding:10px;border-radius:10px}#rb-app .rb-toast{position:fixed;right:20px;bottom:20px;z-index:100;display:flex;align-items:center;gap:9px;background:#103b36;color:white;border-radius:14px;padding:13px 16px;box-shadow:0 18px 40px rgba(0,0,0,.2);animation:pop .2s ease}#rb-app .rb-toast.error{background:#8e3434}#rb-app .rb-toast svg{width:18px}@keyframes pop{from{opacity:0;transform:translateY(10px) scale(.96)}}.rb-denied{display:grid;place-items:center}.rb-denied main,#rb-app .rb-fatal{max-width:650px;margin:40px;padding:35px;background:var(--rb-panel);border:1px solid var(--rb-border);border-radius:24px;box-shadow:var(--rb-shadow)}.rb-denied a,#rb-app .rb-fatal a{color:var(--rb-accent);font-weight:700}.rb-denied strong{color:var(--rb-accent)}
@media(max-width:1050px){#rb-app .rb-layout{grid-template-columns:1fr}#rb-app .rb-booking-card{position:static}#rb-app .rb-history-card{grid-template-columns:170px 1fr 90px}#rb-app .rb-actions{grid-column:1/-1;justify-content:flex-end}#rb-app .rb-timeline{grid-template-columns:repeat(4,1fr)}}
@media(max-width:720px){#rb-app .rb-topbar{height:70px;padding:0 14px}#rb-app .rb-user{display:none}#rb-app .rb-title strong{font-size:17px}#rb-app .rb-tabs,#rb-app .rb-main{padding-left:12px;padding-right:12px}#rb-app .rb-tabs{overflow:auto}#rb-app .rb-calendar-card,#rb-app .rb-booking-card,#rb-app .rb-history-page,#rb-app .rb-supervision{padding:16px;border-radius:18px}#rb-app .rb-day{min-height:66px;padding:7px}#rb-app .rb-day-number{width:26px;height:26px}#rb-app .rb-month,#rb-app .rb-week{gap:4px}#rb-app .rb-timeline{grid-template-columns:repeat(3,1fr)}#rb-app .rb-history-card{grid-template-columns:1fr}#rb-app .rb-history-logo{text-align:left}#rb-app .rb-page-head{align-items:flex-start;flex-direction:column}#rb-app .rb-filterbar{display:flex;overflow:auto;flex-wrap:nowrap}#rb-app .rb-info-row{flex-wrap:wrap}#rb-app .rb-time-row,#rb-app .rb-form-grid{grid-template-columns:1fr}#rb-app .rb-usage{grid-template-columns:1fr 1fr}}


/* v39.1 - agenda orientada por horários */
#rb-app .rb-hourly-card{padding:24px}
#rb-app .rb-hourly-head{display:grid;grid-template-columns:46px minmax(0,1fr) 46px;align-items:center;gap:16px;padding-bottom:18px;border-bottom:1px solid var(--rb-border)}
#rb-app .rb-day-arrow{width:46px;height:46px;border-radius:14px;border:1px solid var(--rb-border);background:var(--rb-bg);color:var(--rb-text);display:grid;place-items:center;cursor:pointer;transition:.18s}
#rb-app .rb-day-arrow:hover{border-color:var(--rb-accent);transform:translateY(-1px)}
#rb-app .rb-selected-date{text-align:center}#rb-app .rb-selected-date h1{margin:4px 0 10px;font-size:27px}#rb-app .rb-date-tools{display:flex;justify-content:center;align-items:end;gap:8px}#rb-app .rb-date-tools label{text-align:left}#rb-app .rb-date-tools label span{display:block;font-size:10px;color:var(--rb-muted);margin:0 0 4px 4px}#rb-app .rb-date-tools input{border:1px solid var(--rb-border);background:var(--rb-bg);color:var(--rb-text);border-radius:10px;padding:8px 10px;font:700 12px DINPro}#rb-app .rb-date-tools button{border:1px solid var(--rb-border);background:var(--rb-panel);color:var(--rb-text);border-radius:10px;padding:9px 12px;font:700 12px DINPro;cursor:pointer}
#rb-app .rb-day-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin:16px 0 18px}#rb-app .rb-date-chip{position:relative;min-height:66px;border:1px solid var(--rb-border);border-radius:14px;background:var(--rb-panel);color:var(--rb-text);padding:7px 6px;display:grid;place-items:center;gap:0;cursor:pointer;transition:.18s}#rb-app .rb-date-chip:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(0,0,0,.06)}#rb-app .rb-date-chip small{font-size:9px;color:var(--rb-muted);letter-spacing:.08em}#rb-app .rb-date-chip strong{font-size:20px;line-height:1}#rb-app .rb-date-chip span{font-size:10px;color:var(--rb-muted);text-transform:uppercase}#rb-app .rb-date-chip i{position:absolute;right:8px;top:8px;width:7px;height:7px;border-radius:50%;background:var(--rb-orange)}#rb-app .rb-date-chip.today{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--rb-accent) 40%,transparent)}#rb-app .rb-date-chip.selected{border-color:var(--rb-accent);background:color-mix(in srgb,var(--rb-accent) 10%,var(--rb-panel));box-shadow:0 0 0 2px color-mix(in srgb,var(--rb-accent) 10%,transparent)}
#rb-app .rb-hourly-summary{display:flex;justify-content:space-between;align-items:end;gap:18px;margin:2px 0 14px}#rb-app .rb-hourly-summary strong,#rb-app .rb-hourly-summary small{display:block}#rb-app .rb-hourly-summary strong{margin-top:4px;font-size:16px}#rb-app .rb-hourly-summary small{color:var(--rb-muted);font-size:11px;margin-top:4px}#rb-app .rb-hourly-summary .rb-legend{margin:0;white-space:nowrap}
#rb-app .rb-timeline.rb-timeline-hourly{grid-template-columns:repeat(6,minmax(0,1fr));max-height:none;overflow:visible;gap:10px;padding:0;margin-top:0}#rb-app .rb-hour-tile{position:relative;aspect-ratio:1.18/1;min-height:96px;padding:14px 12px;text-align:left;overflow:hidden;border-radius:16px}#rb-app .rb-hour-tile strong{font-size:22px;line-height:1.05}#rb-app .rb-hour-tile small{font-size:11px;margin-top:7px;max-width:75%;line-height:1.15}#rb-app .rb-slot-dot{position:absolute;top:12px;right:12px;width:10px;height:10px;border-radius:50%;box-shadow:0 0 0 3px color-mix(in srgb,currentColor 8%,transparent)}#rb-app .rb-slot-dot.free{background:var(--rb-green)}#rb-app .rb-slot-dot.pending{background:var(--rb-orange)}#rb-app .rb-slot-dot.approved,#rb-app .rb-slot-dot.in_use{background:var(--rb-red)}#rb-app .rb-slot-dot.unavailable{background:#8e9b99}#rb-app .rb-slot-brand{position:absolute;right:9px;bottom:8px;width:58px;height:25px;border-radius:7px;padding:4px 5px;background:color-mix(in srgb,var(--rb-panel) 88%,transparent);display:flex;align-items:center;justify-content:center;box-shadow:0 3px 9px rgba(0,0,0,.08)}#rb-app .rb-slot-brand img{max-width:100%;max-height:100%;object-fit:contain}#rb-app .rb-slot-brand.senai{height:28px}#rb-app .rb-hour-tile.chosen{outline:2px solid var(--rb-green);outline-offset:-3px;box-shadow:0 0 0 3px color-mix(in srgb,var(--rb-green) 12%,transparent)}
#rb-app .rb-hour-tile.pending,#rb-app .rb-hour-tile.approved,#rb-app .rb-hour-tile.in_use{opacity:1}#rb-app .rb-hour-tile:disabled{color:var(--rb-text)}#rb-app .rb-hour-tile.unavailable:disabled{opacity:.48}#rb-app .rb-hour-tile.pending:disabled,#rb-app .rb-hour-tile.approved:disabled,#rb-app .rb-hour-tile.in_use:disabled{opacity:1}
@media(max-width:1050px){#rb-app .rb-timeline.rb-timeline-hourly{grid-template-columns:repeat(4,minmax(0,1fr))}#rb-app .rb-hour-tile{aspect-ratio:1.28/1}#rb-app .rb-hourly-summary{align-items:flex-start;flex-direction:column}#rb-app .rb-hourly-summary .rb-legend{white-space:normal}}
@media(max-width:720px){#rb-app .rb-hourly-card{padding:16px}#rb-app .rb-hourly-head{grid-template-columns:40px minmax(0,1fr) 40px;gap:8px}#rb-app .rb-day-arrow{width:40px;height:40px}#rb-app .rb-selected-date h1{font-size:20px}#rb-app .rb-day-strip{gap:4px;overflow-x:auto;grid-template-columns:repeat(7,minmax(64px,1fr));padding-bottom:4px}#rb-app .rb-date-chip{min-height:58px}#rb-app .rb-timeline.rb-timeline-hourly{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}#rb-app .rb-hour-tile{min-height:88px;padding:12px 10px}#rb-app .rb-hour-tile strong{font-size:19px}#rb-app .rb-slot-brand{width:46px;height:22px}#rb-app .rb-date-tools label span{display:none}}

/* v39.2 — ajustes administrativos + modo Totem portrait */
#rb-app .rb-date-chip.restricted{opacity:.46;filter:saturate(.55)}
#rb-app .rb-day-blocked{grid-column:1/-1;min-height:190px;border:1px dashed var(--rb-border);border-radius:18px;display:grid;place-items:center;text-align:center;align-content:center;gap:8px;color:var(--rb-muted);background:color-mix(in srgb,var(--rb-panel) 80%,transparent)}
#rb-app .rb-day-blocked svg{width:32px;height:32px;color:var(--rb-orange)}#rb-app .rb-day-blocked strong{font-size:18px;color:var(--rb-text)}#rb-app .rb-day-blocked span{max-width:560px}
#rb-app .rb-totem-identify{margin:16px 0 4px;padding:16px;border:1px solid color-mix(in srgb,var(--rb-accent) 28%,var(--rb-border));border-radius:18px;background:color-mix(in srgb,var(--rb-accent) 6%,var(--rb-panel))}
#rb-app .rb-identify-title strong,#rb-app .rb-identify-title small{display:block}#rb-app .rb-identify-title strong{font-size:18px;margin-top:4px}#rb-app .rb-identify-title small{color:var(--rb-muted);margin-top:3px}
#rb-app .rb-cs-lookup{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin-top:14px}#rb-app .rb-cs-lookup .rb-field{margin:0}#rb-app .rb-cs-lookup button{height:45px;border:0;border-radius:12px;background:var(--rb-accent);color:#fff;padding:0 17px;font:700 13px DINPro;display:flex;align-items:center;gap:7px;cursor:pointer}#rb-app .rb-cs-lookup button svg{width:17px}
#rb-app .rb-requester-result{margin-top:12px;border-radius:14px;padding:12px;border:1px solid var(--rb-border)}#rb-app .rb-requester-result.checking{display:flex;align-items:center;gap:9px;color:var(--rb-muted)}#rb-app .rb-requester-result.found{display:flex;align-items:center;gap:10px;background:color-mix(in srgb,var(--rb-green) 9%,var(--rb-panel));border-color:color-mix(in srgb,var(--rb-green) 35%,var(--rb-border));color:var(--rb-green)}#rb-app .rb-requester-result.found>svg{width:24px;height:24px}#rb-app .rb-requester-result.found strong,#rb-app .rb-requester-result.found small{display:block}#rb-app .rb-requester-result.found strong{color:var(--rb-text)}#rb-app .rb-requester-result.found small{color:var(--rb-muted);margin-top:2px}#rb-app .rb-requester-result.missing{display:grid;grid-template-columns:1fr 1fr;gap:10px;background:color-mix(in srgb,var(--rb-orange) 7%,var(--rb-panel));border-color:color-mix(in srgb,var(--rb-orange) 32%,var(--rb-border))}#rb-app .rb-requester-warning{grid-column:1/-1}#rb-app .rb-requester-warning strong,#rb-app .rb-requester-warning small{display:block}#rb-app .rb-requester-warning small{margin-top:3px;color:var(--rb-muted)}
#rb-app .rb-manual-contact{display:flex;align-items:center;gap:8px;margin-top:10px;padding:9px 11px;border-radius:10px;background:color-mix(in srgb,var(--rb-orange) 8%,var(--rb-panel));border:1px solid color-mix(in srgb,var(--rb-orange) 28%,var(--rb-border));font-size:12px}#rb-app .rb-manual-contact svg{width:17px;color:var(--rb-orange);flex:none}#rb-app .rb-manual-contact b,#rb-app .rb-manual-contact a{display:block}#rb-app .rb-manual-contact a{color:var(--rb-accent);font-weight:700;margin-top:2px}#rb-app .external-requester{border-color:color-mix(in srgb,var(--rb-orange) 34%,var(--rb-border))}
#rb-app .rb-settings-page{max-width:980px;margin:auto}#rb-app .rb-settings-card{margin-top:18px;padding:22px;border:1px solid var(--rb-border);border-radius:20px;background:var(--rb-panel)}#rb-app .rb-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}#rb-app .rb-settings-card .rb-field select{width:100%;border:1px solid var(--rb-border);background:var(--rb-bg);color:var(--rb-text);border-radius:12px;padding:12px 13px;font:inherit;outline:none}#rb-app .rb-settings-card .rb-field small{display:block;color:var(--rb-muted);font-size:11px;margin-top:6px;line-height:1.35}#rb-app .rb-settings-section{margin-top:24px;padding-top:20px;border-top:1px solid var(--rb-border)}#rb-app .rb-weekday-options{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:10px}#rb-app .rb-weekday{position:relative}#rb-app .rb-weekday input{position:absolute;opacity:0;pointer-events:none}#rb-app .rb-weekday span{min-height:48px;display:grid;place-items:center;border:1px solid var(--rb-border);border-radius:12px;background:var(--rb-bg);color:var(--rb-muted);font-weight:700;font-size:12px;cursor:pointer;transition:.18s}#rb-app .rb-weekday.active span{background:color-mix(in srgb,var(--rb-accent) 12%,var(--rb-panel));border-color:var(--rb-accent);color:var(--rb-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--rb-accent) 8%,transparent)}
#rb-app .rb-holiday-setting{display:flex;align-items:center;justify-content:space-between;gap:20px}#rb-app .rb-holiday-setting strong,#rb-app .rb-holiday-setting small{display:block}#rb-app .rb-holiday-setting small{color:var(--rb-muted);max-width:650px;margin-top:4px}#rb-app .rb-switch{position:relative;flex:none}#rb-app .rb-switch input{position:absolute;opacity:0}#rb-app .rb-switch span{display:block;width:54px;height:30px;border-radius:99px;background:#c9d5d3;padding:4px;cursor:pointer;transition:.2s}#rb-app .rb-switch span:after{content:"";display:block;width:22px;height:22px;border-radius:50%;background:white;box-shadow:0 2px 6px rgba(0,0,0,.15);transition:.2s}#rb-app .rb-switch input:checked+span{background:var(--rb-accent)}#rb-app .rb-switch input:checked+span:after{transform:translateX(24px)}#rb-app .rb-settings-note{display:flex;gap:10px;align-items:flex-start;margin-top:20px;padding:12px;border-radius:12px;background:var(--rb-bg);color:var(--rb-muted);font-size:12px;line-height:1.45}#rb-app .rb-settings-note svg{width:19px;flex:none;color:var(--rb-accent)}
#rb-app .rb-totem-page{overflow-x:hidden}#rb-app .rb-totem-mode .rb-topbar{height:68px;padding:0 16px}#rb-app .rb-totem-mode .rb-title small,#rb-app .rb-totem-mode .rb-user{display:none}#rb-app .rb-totem-mode .rb-tabs{padding:10px 12px 0;max-width:920px}#rb-app .rb-totem-mode .rb-tabs .rb-tab{flex:1;justify-content:center}#rb-app .rb-totem-mode .rb-main{max-width:920px;padding:12px 12px 30px}#rb-app .rb-totem-mode .rb-layout{grid-template-columns:1fr;gap:14px}#rb-app .rb-totem-mode .rb-booking-card{position:static;top:auto}#rb-app .rb-totem-mode .rb-hourly-card,#rb-app .rb-totem-mode .rb-booking-card{padding:16px;border-radius:18px}#rb-app .rb-totem-mode .rb-hourly-head{grid-template-columns:40px minmax(0,1fr) 40px;gap:8px}#rb-app .rb-totem-mode .rb-day-arrow{width:40px;height:40px}#rb-app .rb-totem-mode .rb-selected-date h1{font-size:21px}#rb-app .rb-totem-mode .rb-day-strip{grid-template-columns:repeat(7,minmax(72px,1fr));overflow-x:auto;gap:5px;padding-bottom:3px}#rb-app .rb-totem-mode .rb-timeline.rb-timeline-hourly{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}#rb-app .rb-totem-mode .rb-hour-tile{min-height:92px;aspect-ratio:1.2/1}#rb-app .rb-totem-mode .rb-hourly-summary{align-items:flex-start;flex-direction:column;gap:8px}#rb-app .rb-totem-mode .rb-hourly-summary .rb-legend{white-space:normal}#rb-app .rb-totem-mode .rb-totem-identify{margin-top:12px}#rb-app .rb-totem-mode .rb-booking-card h2{font-size:23px}
@media(max-width:760px){#rb-app .rb-settings-grid{grid-template-columns:1fr}#rb-app .rb-weekday-options{grid-template-columns:repeat(4,1fr)}#rb-app .rb-requester-result.missing{grid-template-columns:1fr}#rb-app .rb-cs-lookup{grid-template-columns:1fr}#rb-app .rb-cs-lookup button{justify-content:center}#rb-app .rb-totem-mode .rb-timeline.rb-timeline-hourly{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:520px){#rb-app .rb-weekday-options{grid-template-columns:repeat(2,1fr)}#rb-app .rb-totem-mode .rb-timeline.rb-timeline-hourly{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* v39.3 — Totem simplificado, seleção por arraste e tema local */
#rb-app .rb-form-grid-single{grid-template-columns:1fr!important}
#rb-app .rb-theme-toggle{margin-left:auto;width:44px;height:44px;border-radius:13px;border:1px solid var(--rb-border);background:var(--rb-panel);color:var(--rb-text);display:grid;place-items:center;cursor:pointer;flex:none}
#rb-app .rb-theme-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#rb-app .rb-totem-mode .rb-topbar{gap:10px}#rb-app .rb-totem-mode .rb-title{min-width:0}#rb-app .rb-totem-mode .rb-title strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#rb-app .rb-totem-mode .rb-main{padding-top:10px}#rb-app .rb-totem-mode .rb-hourly-card{padding-top:12px}
#rb-app .rb-totem-mode .rb-totem-identify{margin-top:0}
#rb-app .rb-totem-mode .rb-day-strip{margin:12px 0 12px}
#rb-app .rb-totem-mode .rb-totem-summary{margin:0 0 10px;display:block}#rb-app .rb-totem-mode .rb-totem-summary .rb-legend{display:flex;flex-wrap:wrap;gap:10px}
#rb-app .rb-totem-mode .rb-hour-tile[data-free="1"]{touch-action:none;user-select:none;-webkit-user-select:none}
#rb-app .rb-dragging-slots,#rb-app .rb-dragging-slots *{user-select:none!important;-webkit-user-select:none!important}
#rb-app .rb-totem-mode .rb-hour-tile.chosen{background:color-mix(in srgb,var(--rb-green) 13%,var(--rb-panel));outline:3px solid var(--rb-green);outline-offset:-3px;transform:scale(.985)}
#rb-app .rb-totem-mode .rb-rule{margin-top:8px}
@media(max-width:760px){#rb-app .rb-totem-mode .rb-main{padding-inline:10px}#rb-app .rb-totem-mode .rb-calendar-card,#rb-app .rb-totem-mode .rb-booking-card{padding:14px}#rb-app .rb-totem-mode .rb-day-strip{grid-template-columns:repeat(7,minmax(68px,1fr))}}

/* V41 · integração nativa Oficina Portátil */
#rb-app.rb-embedded{min-height:0;background:transparent;color:var(--text);--rb-bg:var(--bg);--rb-panel:var(--panel-solid);--rb-text:var(--text);--rb-muted:var(--muted);--rb-border:var(--line);--rb-soft:var(--palette-soft,rgba(255,255,255,.45));}
#rb-app.rb-embedded .rb-main{max-width:none;padding:0;margin:0;background:transparent}
#rb-app.rb-embedded .rb-tabs{max-width:none;margin:0 0 22px;padding:0;background:transparent;border:0}
#rb-app.rb-embedded .rb-tabs button{color:var(--muted);border-color:var(--line);background:var(--panel)}
#rb-app.rb-embedded .rb-tabs button.active{color:#fff;background:var(--accent);border-color:var(--accent)}
#rb-app.rb-embedded .rb-booking-card,#rb-app.rb-embedded .rb-hourly-card,#rb-app.rb-embedded .rb-history-card,#rb-app.rb-embedded .rb-supervision-card,#rb-app.rb-embedded .rb-settings-card,#rb-app.rb-embedded .rb-totem-identify{background:var(--panel);border-color:var(--line);box-shadow:var(--shadow,0 18px 45px rgba(0,0,0,.08))}
#rb-app.rb-embedded input,#rb-app.rb-embedded select,#rb-app.rb-embedded textarea{background:var(--panel-solid);border-color:var(--line);color:var(--text)}
#rb-app.rb-embedded .rb-page-head h1,#rb-app.rb-embedded h2,#rb-app.rb-embedded strong{color:var(--text)}
#rb-app.rb-embedded .rb-page-head p,#rb-app.rb-embedded small{color:var(--muted)}
#rb-app .rb-embedded-tools{display:flex;justify-content:flex-end;margin-bottom:10px}#rb-app .rb-embedded-tools .rb-theme-toggle{position:static}
#rb-app .rb-danger-card{margin-top:22px;border:1px solid rgba(190,40,55,.28)!important;background:linear-gradient(135deg,rgba(190,40,55,.07),var(--rb-panel))!important}
#rb-app .rb-danger-card h2{margin:7px 0 6px}#rb-app .rb-danger-card p{margin:0;color:var(--rb-muted);line-height:1.55}
#rb-app .rb-maintenance-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}
#rb-app .rb-maintenance-stats span{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid var(--rb-border);border-radius:15px;background:var(--rb-soft)}
#rb-app .rb-maintenance-stats small{font-size:.76rem;text-transform:uppercase;letter-spacing:.07em}#rb-app .rb-maintenance-stats strong{font-size:1.15rem}
#rb-app .rb-danger-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:14px;padding:13px 18px;font-weight:800;cursor:pointer;background:#a62f3a;color:#fff}#rb-app .rb-danger-button svg{width:18px}#rb-app .rb-danger-button:disabled{opacity:.55;cursor:wait}
@media(max-width:720px){#rb-app .rb-maintenance-stats{grid-template-columns:1fr}}

/* V42 · módulo realmente integrado ao tema da Oficina Portátil */
#rb-app.rb-embedded{--rb-accent:var(--accent)!important;background:transparent!important}
#rb-app.rb-embedded .rb-main,#rb-app.rb-embedded .rb-layout{background:transparent!important}
#rb-app.rb-embedded .rb-calendar-card,#rb-app.rb-embedded .rb-booking-card,#rb-app.rb-embedded .rb-history-card,#rb-app.rb-embedded .rb-supervision-card,#rb-app.rb-embedded .rb-settings-card{border-radius:20px;background:var(--panel)!important;border-color:var(--line)!important;box-shadow:var(--shadow)!important}
#rb-app.rb-embedded .rb-date-chip.selected,#rb-app.rb-embedded .rb-usage-card.selected{border-color:var(--accent)!important;background:color-mix(in srgb,var(--accent) 10%,var(--panel-solid))!important}
#rb-app.rb-embedded .rb-submit,#rb-app.rb-embedded .rb-tab.active,#rb-app.rb-embedded .rb-chip.active{background:var(--accent)!important;border-color:var(--accent)!important;color:#fff!important}
#rb-app.rb-embedded .rb-day-strip{margin-top:0}


/* V45.7 — navegador de 7 dias com setas visíveis nas pontas. */
#rb-app .rb-day-strip{
  grid-template-columns:44px repeat(7,minmax(0,1fr)) 44px;
  align-items:stretch;
}
#rb-app .rb-range-arrow{
  min-width:44px;
  min-height:66px;
  border:1px solid var(--rb-border);
  border-radius:14px;
  background:var(--rb-panel);
  color:var(--rb-text);
  display:grid;
  place-items:center;
  cursor:pointer;
  box-shadow:0 6px 14px rgba(0,0,0,.04);
}
#rb-app .rb-range-arrow:hover{border-color:var(--rb-accent);color:var(--rb-accent)}
#rb-app .rb-range-arrow svg{width:22px;height:22px}

/* Toggle corporativo/SENAI volta para a área visível do Totem. */
#rb-app .rb-totem-usage-toggle{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:12px;
}
#rb-app .rb-totem-usage-toggle button{
  min-height:52px;
  border:1px solid var(--rb-border);
  border-radius:13px;
  background:var(--rb-bg);
  color:var(--rb-text);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font-weight:800;
  cursor:pointer;
}
#rb-app .rb-totem-usage-toggle button.selected{
  border-color:var(--rb-accent);
  background:color-mix(in srgb,var(--rb-accent) 12%,var(--rb-panel));
  box-shadow:0 0 0 2px color-mix(in srgb,var(--rb-accent) 10%,transparent);
}
#rb-app .rb-totem-usage-toggle img{height:23px;max-width:92px;object-fit:contain}
#rb-app .rb-totem-usage-toggle img[src*="senai"]{height:27px}
#rb-app .rb-totem-mode .rb-booking-card>.rb-usage{display:none!important}

/* Scroll do WebView: os horários não podem capturar o gesto vertical. */
#rb-app .rb-totem-mode .rb-hour-tile[data-free="1"]{
  touch-action:pan-y!important;
  user-select:none;
  -webkit-user-select:none;
}
#rb-app.rb-embedded.rb-totem-mode,
#rb-app.rb-embedded.rb-totem-mode .rb-main,
#rb-app.rb-embedded.rb-totem-mode .rb-layout{
  overflow:visible!important;
  max-height:none!important;
}

@media(max-width:920px){
  #rb-app .rb-day-strip,
  #rb-app .rb-totem-mode .rb-day-strip{
    grid-template-columns:42px repeat(7,minmax(68px,1fr)) 42px;
    overflow-x:auto;
    gap:5px;
    padding-bottom:4px;
  }
  #rb-app .rb-range-arrow{min-width:42px;min-height:58px;position:sticky;z-index:2}
  #rb-app .rb-range-arrow:first-child{left:0}
  #rb-app .rb-range-arrow:last-child{right:0}
}

/* V45.7.1 — mantém as 7 datas entre as duas setas também em tablets largos. */
#rb-app .rb-totem-mode .rb-day-strip{
  grid-template-columns:44px repeat(7,minmax(0,1fr)) 44px!important;
}
#rb-app .rb-range-arrow{font-size:24px!important;font-weight:900!important;line-height:1!important}

/* ==========================================================
   Oficina Portátil V47 — mobile/totem com scroll e gestos reais
   ========================================================== */
#rb-app,
#rb-app .rb-main,
#rb-app .rb-layout,
#rb-app .rb-calendar-card,
#rb-app .rb-booking-card{
  width:100%;
  max-width:100%;
  min-width:0;
}
#rb-app.rb-embedded{min-height:0!important;height:auto!important;overflow:visible!important}
#rb-app.rb-embedded .rb-main{min-height:0!important;height:auto!important;overflow:visible!important}
#rb-app.rb-embedded .rb-layout{min-height:0!important;height:auto!important;overflow:visible!important}

/* A faixa de datas é um carrossel horizontal de verdade. */
#rb-app .rb-day-strip{
  display:flex!important;
  align-items:stretch!important;
  gap:7px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior-x:contain!important;
  scroll-snap-type:x proximity!important;
  scrollbar-width:none!important;
  touch-action:pan-x pan-y!important;
  padding:2px 0 6px!important;
}
#rb-app .rb-day-strip::-webkit-scrollbar{display:none!important}
#rb-app .rb-date-chip{
  flex:0 0 clamp(66px,11vw,106px)!important;
  min-width:66px!important;
  scroll-snap-align:center!important;
}
#rb-app .rb-range-arrow{
  flex:0 0 42px!important;
  width:42px!important;
  min-width:42px!important;
  align-self:stretch!important;
  position:sticky!important;
  z-index:4!important;
  background:var(--rb-panel)!important;
}
#rb-app .rb-range-arrow:first-child{left:0!important}
#rb-app .rb-range-arrow:last-child{right:0!important}

/* Slots: vertical continua rolando; depois que um arraste horizontal inicia,
   o JS seleciona uma faixa contínua sem matar o scroll da página. */
#rb-app .rb-hour-tile,
#rb-app .rb-hour-tile[data-free="1"]{
  touch-action:pan-y!important;
  -webkit-user-select:none!important;
  user-select:none!important;
}
body.rb-dragging-slots #rb-app .rb-hour-tile[data-free="1"]{cursor:grabbing!important}

@media (max-width:1050px){
  #rb-app .rb-layout{grid-template-columns:minmax(0,1fr)!important}
  #rb-app .rb-booking-card{position:static!important;top:auto!important}
}

/* Sintaxe clássica para Safari/WebView antigos. */
@media (max-width:820px){
  #rb-app{width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important}
  #rb-app .rb-main{
    width:100%!important;max-width:100%!important;min-width:0!important;
    padding:10px 10px 34px!important;margin:0!important;
  }
  #rb-app .rb-layout{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important}
  #rb-app .rb-calendar-card,#rb-app .rb-booking-card{
    width:100%!important;max-width:100%!important;min-width:0!important;
    padding:14px!important;border-radius:17px!important;
  }
  #rb-app .rb-booking-card{margin-top:12px!important}
  #rb-app .rb-hourly-head{grid-template-columns:38px minmax(0,1fr) 38px!important;gap:7px!important}
  #rb-app .rb-selected-date h1{font-size:19px!important;line-height:1.15!important}
  #rb-app .rb-date-tools{min-width:0!important;max-width:100%!important}
  #rb-app .rb-date-chip{flex-basis:68px!important;min-width:68px!important;min-height:58px!important}
  #rb-app .rb-range-arrow{flex-basis:38px!important;width:38px!important;min-width:38px!important;min-height:58px!important}
  #rb-app .rb-hourly-summary{display:block!important;margin:8px 0 12px!important}
  #rb-app .rb-hourly-summary .rb-legend{display:flex!important;gap:10px!important;flex-wrap:wrap!important;margin-top:9px!important}
  #rb-app .rb-timeline.rb-timeline-hourly{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
    max-height:none!important;
    overflow:visible!important;
    padding-right:0!important;
  }
  #rb-app .rb-hour-tile{min-width:0!important;min-height:86px!important;aspect-ratio:auto!important;padding:12px 9px!important}
  #rb-app .rb-hour-tile strong{font-size:18px!important}
  #rb-app .rb-tabs{width:100%!important;max-width:100%!important;overflow-x:auto!important;padding:8px 10px 0!important;scrollbar-width:none!important}
  #rb-app .rb-tabs::-webkit-scrollbar{display:none!important}
  #rb-app .rb-tab{flex:0 0 auto!important;white-space:nowrap!important}
  #rb-app .rb-totem-identify{padding:13px!important;margin:0 0 10px!important}
  #rb-app .rb-totem-usage-toggle{grid-template-columns:1fr 1fr!important}
  #rb-app .rb-requester-result.missing{grid-template-columns:1fr!important}
}

@media (max-width:560px){
  #rb-app .rb-main{padding-inline:8px!important}
  #rb-app .rb-calendar-card,#rb-app .rb-booking-card{padding:12px!important;border-radius:15px!important}
  #rb-app .rb-timeline.rb-timeline-hourly{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #rb-app .rb-date-chip{flex-basis:64px!important;min-width:64px!important}
  #rb-app .rb-time-row,#rb-app .rb-form-grid{grid-template-columns:1fr!important}
}

/* Totem: nunca prende o conteúdo dentro do próprio rb-app. */
#rb-app.rb-totem-mode,
#rb-app.rb-totem-mode .rb-main,
#rb-app.rb-totem-mode .rb-layout,
#rb-app.rb-totem-mode .rb-calendar-card,
#rb-app.rb-totem-mode .rb-booking-card{
  width:100%!important;max-width:100%!important;min-width:0!important;
  height:auto!important;max-height:none!important;overflow:visible!important;
}
#rb-app.rb-totem-mode .rb-day-strip{display:flex!important;overflow-x:auto!important}
#rb-app.rb-totem-mode .rb-date-chip{flex:0 0 76px!important;min-width:76px!important}
#rb-app.rb-totem-mode .rb-range-arrow{flex:0 0 42px!important;min-width:42px!important}
