/* Deskly R100: appointments and compact submitted-request layout. Light theme only. */
.support-public-body .support-public-grid.r100-success-active{display:block!important;max-width:850px;margin:16px auto 0;min-height:0!important}
.support-public-body .r100-success-active>.support-side-stack{display:none!important}
.support-public-body .r100-success-active>.support-form-card{display:block!important;min-height:0!important;height:auto!important;padding:30px 34px 32px;border:1px solid #dce6f3;border-radius:20px;box-shadow:0 16px 55px rgba(38,70,126,.075)}
.support-public-body .r100-complete-card>.support-card-title{display:none!important}
.support-public-body .r100-confirmation-eyebrow{font-size:11px;font-weight:800;letter-spacing:.14em;color:#2762bf;margin-bottom:13px}
.support-public-body .r100-complete-card #supportRequestSuccess{width:100%;align-items:flex-start;gap:14px;padding:22px 22px 24px;border-radius:14px;background:#f1faf6;border:1px solid #d4ebde;box-shadow:none}
.support-public-body .r100-complete-card #supportRequestSuccess>span{flex:0 0 42px;width:42px;height:42px;background:#ddf7e9;color:#0b8751;border-radius:14px;font-size:21px}
.support-public-body .r100-complete-card #supportRequestSuccess>.request-success-content{display:block;flex:1;min-width:0}
.support-public-body .r100-complete-card #supportRequestSuccess strong{font-size:20px;letter-spacing:-.02em;line-height:1.25;color:#153e31}
.support-public-body .r100-complete-card #supportRequestSuccess p{font-size:13px;line-height:1.65;margin:10px 0 0;color:#526c61;overflow-wrap:anywhere}
.support-public-body .r100-complete-card #supportRequestSuccess #supportRequestId{font-weight:800;color:#1d5144;overflow-wrap:anywhere}
.support-public-body .r100-complete-card .tracking-actions{margin:20px 0 0;display:flex;flex-wrap:wrap;gap:10px}
.support-public-body .r100-complete-card .r991-success-actions{margin:19px 0 0;display:flex;flex-wrap:wrap;gap:10px}
.support-public-body .r100-complete-card .tracking-actions button,.support-public-body .r100-complete-card .r991-success-actions button{min-height:43px;border-radius:10px;flex:0 1 auto}
.support-public-body .r100-complete-card .r991-request-note{display:block;font-size:12px;color:#6d857b;margin-top:16px}
.support-public-body .r100-complete-card .tracking-subtle{font-size:12px!important}
.support-public-body .r100-next-steps{margin-top:22px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.support-public-body .r100-next-steps>div{border:1px solid #e4eaf3;border-radius:12px;padding:15px;display:grid;gap:6px;align-content:start;background:#fafcff;min-width:0}
.support-public-body .r100-next-steps span{color:#3062d3;font-size:11px;font-weight:850;letter-spacing:.08em}
.support-public-body .r100-next-steps strong{font-size:12px;color:#233a5d}
.support-public-body .r100-next-steps small{font-size:11px;color:#7486a2;line-height:1.5}
.support-public-body .r100-next-steps[hidden],.support-public-body .r100-confirmation-eyebrow[hidden]{display:none!important}
/* Staff panel within R84 ticket details */
.r100-staff-panel .r100-staff-heading{display:flex;justify-content:space-between;align-items:start;gap:12px;margin-bottom:13px}
.r100-staff-panel h3{margin:0 0 4px;color:#213554;font-size:14px}
.r100-staff-panel .r100-staff-heading p,.r100-staff-panel .r100-help{margin:0;color:#7486a2;font-size:11px;line-height:1.5}
.r100-staff-list{display:grid;gap:10px}.r100-appointment-entry{padding:12px 14px;border:1px solid #e1e8f4;border-radius:12px;background:#f9fbff;display:grid;gap:10px}
.r100-appointment-entry>div:first-child{display:grid;gap:5px}.r100-appointment-entry strong{font-size:12px;color:#223857}.r100-appointment-entry small{font-size:10px;color:#6b7f9e}
.r100-entry-actions,.r100-form-actions{display:flex;flex-wrap:wrap;gap:8px}.r100-entry-actions button,.r100-customer-actions button{padding:8px 10px;border:1px solid #cadaf3;color:#3358ad;border-radius:9px;background:#fff;font-weight:700;font-size:11px;cursor:pointer}
.r100-entry-actions button:hover,.r100-customer-actions button:hover{background:#f1f5ff}.r100-appointment-entry .r100-start{background:#edf4ff}
.r100-staff-panel .r100-help{margin:11px 0}.r100-appointment-form{display:grid;gap:12px;padding:16px;background:#f7faff;border:1px solid #dbe5f8;border-radius:13px;margin:14px 0}
.r100-appointment-form[hidden]{display:none!important}.r100-appointment-form h4{margin:0;color:#24416c;font-size:13px}
.r100-appointment-form label{display:grid;gap:5px;font-size:11px;font-weight:700;color:#385173;min-width:0}.r100-appointment-form input,.r100-appointment-form select,.r100-appointment-form textarea{width:100%;min-width:0;max-width:100%;border:1px solid #d0dced;border-radius:9px;background:white;padding:10px;font:inherit;color:#243b5f}
.r100-appointment-form .r100-staff-cols{display:grid;grid-template-columns:1fr 1fr;gap:10px}.r100-notice{font-size:11px;color:#54729d;line-height:1.5;margin:10px 0 0}.r100-notice[data-error="1"]{color:#b13842}.r100-empty{font-size:12px;color:#7385a2;margin:7px 0;line-height:1.5}
/* Customer appointments */
.support-public-body .r100-customer-appointments{border:1px solid #dce6f5;border-radius:18px;padding:21px;margin:10px 0 19px;background:#fff;box-shadow:0 6px 26px rgba(36,65,117,.05)}
.support-public-body .r100-customer-appointments[hidden]{display:none!important}
.support-public-body .r100-customer-head{display:flex;gap:16px;justify-content:space-between;align-items:start;margin-bottom:14px}
.support-public-body .r100-customer-head span{font-size:10px;letter-spacing:.12em;font-weight:800;color:#3a67c9}
.support-public-body .r100-customer-head h2{color:#1d355f;margin:6px 0;font-size:20px;line-height:1.25}
.support-public-body .r100-customer-head p{color:#7485a0;font-size:12px;line-height:1.5;margin:0}
.support-public-body .r100-customer-list{display:grid;gap:9px}.support-public-body .r100-customer-row{border:1px solid #e2e8f3;border-radius:12px;padding:15px;display:flex;align-items:center;flex-wrap:wrap;gap:16px;background:#fafcff}
.support-public-body .r100-customer-date{display:grid;gap:4px;flex:1;min-width:175px}.support-public-body .r100-customer-date span{font-size:10px;color:#3d65bc;font-weight:800}.support-public-body .r100-customer-date strong{font-size:15px;color:#19345e}.support-public-body .r100-customer-date small{color:#6c7fa2;font-size:11px}
.support-public-body .r100-customer-info{display:grid;gap:5px}.support-public-body .r100-status{background:#eef3ff;color:#3559b5;border:1px solid #dae6ff;border-radius:100px;padding:5px 10px;font-size:11px;text-transform:capitalize;font-weight:800}
.support-public-body .r100-customer-info small{font-size:11px;color:#697b98}.support-public-body .r100-customer-actions{display:flex;gap:7px;flex-wrap:wrap}
.support-public-body .r100-safety{font-size:11px;color:#607797;line-height:1.6;margin:13px 0 0;padding:12px;background:#f2f6ff;border-radius:10px}
@media(max-width:720px){.support-public-body .r100-success-active>.support-form-card{padding:19px;border-radius:15px}.support-public-body .r100-next-steps{grid-template-columns:1fr}.support-public-body .r100-complete-card #supportRequestSuccess{padding:15px;gap:9px}.support-public-body .r100-complete-card #supportRequestSuccess strong{font-size:17px}.support-public-body .r100-complete-card #supportRequestSuccess p{font-size:12px}.support-public-body .r100-complete-card .tracking-actions button,.support-public-body .r100-complete-card .r991-success-actions button{flex:1 1 190px}.r100-appointment-form .r100-staff-cols{grid-template-columns:1fr}.support-public-body .r100-customer-appointments{padding:15px}.support-public-body .r100-customer-head{flex-wrap:wrap}}
@media(max-width:380px){.support-public-body .r100-complete-card #supportRequestSuccess>span{display:none}.support-public-body .r100-complete-card .tracking-actions button,.support-public-body .r100-complete-card .r991-success-actions button{width:100%}}

/* Confirmation view is a complete destination: remove login prompt and prevent tall mobile flex buttons. */
.support-public-body .r100-confirmation-page .r97-guest-invite{display:none!important}
@media(max-width:720px){.support-public-body .r100-complete-card .tracking-actions button,.support-public-body .r100-complete-card .r991-success-actions button{flex:0 0 auto!important;width:100%!important;min-height:44px!important;height:auto!important;padding:11px 14px!important}.support-public-body .r100-complete-card .r991-success-actions{display:flex;flex-direction:column;align-items:stretch}}

/* R100.1: four original actions together; no second button row on desktop. */
.support-public-body .r100-complete-card .tracking-actions{display:flex!important;flex-direction:row!important;flex-wrap:wrap;align-items:center;gap:8px;margin:18px 0 0}
.support-public-body .r100-complete-card .tracking-actions button{flex:0 0 auto!important;width:auto!important;max-width:100%;min-height:42px!important;margin:0!important;padding:10px 13px!important;font-size:12px!important;white-space:nowrap}
.support-public-body .r100-complete-card .r991-success-actions[hidden]{display:none!important}
.support-public-body .r100-complete-card .tracking-subtle{margin-top:10px!important}
/* Compact confirmation only: leave normal Request Support and other tabs alone. */
@media(max-width:720px){.support-public-body .r100-complete-card .tracking-actions button{flex:1 1 calc(50% - 8px)!important;white-space:normal!important}}
@media(max-width:450px){.support-public-body .r100-complete-card .tracking-actions button{flex:1 1 100%!important}}
/* Visible confirmation priority on customer appointments; no other tickets restyled. */
.support-public-body .r100-customer-row:has([data-r100-public="confirm"]){border-color:#b7cbf4;background:#f5f8ff}
.support-public-body .r100-customer-actions [data-r100-public="confirm"]{background:#315ef5;color:white;border-color:#315ef5;font-size:13px;padding:10px 18px}
.support-public-body .r100-customer-actions [data-r100-public="confirm"]:hover{background:#244bd0}

/* R100.2: restore the original full-width request form footprint on success only.
   R100.1 four-button toolbar, compact content and regular request state stay intact. */
.support-public-body .support-public-grid.r100-success-active{max-width:none!important;width:100%!important;margin:16px 0 0!important;box-sizing:border-box}
.support-public-body .r100-success-active>.support-form-card{width:100%!important;max-width:none!important;box-sizing:border-box}
/* Matching appointment within the expanded ticket details, where customers look. */
.support-public-body .r100-inline-appointment{display:grid;gap:8px;border:1px solid #bfd0fb;border-radius:12px;background:#eef4ff;padding:14px;margin:14px 0 17px;min-width:0}
.support-public-body .r100-inline-label{font-size:10px;font-weight:800;letter-spacing:.08em;color:#3055a1}
.support-public-body .r100-inline-appointment>strong{font-size:14px;color:#203b69;line-height:1.35;overflow-wrap:anywhere}
.support-public-body .r100-inline-appointment>small{font-size:11px;color:#58729b;overflow-wrap:anywhere}
.support-public-body .r100-inline-status{font-size:11px;color:#3159ac;text-transform:capitalize;font-weight:750}
.support-public-body .r100-inline-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:4px}
.support-public-body .r100-inline-actions button{min-height:34px}
.support-public-body .r100-customer-error{color:#9a3946}
@media(max-width:720px){.support-public-body .support-public-grid.r100-success-active{width:100%!important;margin:12px 0 0!important}}

/* R100.3: appointment-start cutoff and prominent staff reschedule review queue. */
.support-public-body .r100-appointment-guidance{margin:3px 0 0;font-size:12px;line-height:1.5;color:#5b6c86;flex-basis:100%}
.support-public-body .r100-inline-appointment .r100-appointment-guidance{font-size:11px;line-height:1.5;margin:1px 0 0}
.support-public-body .r100-customer-row:has(.r100-appointment-guidance):not(:has([data-r100-public="confirm"])) .r100-customer-actions{margin-left:auto}
.r100-staff-booking-main{display:grid;gap:4px;min-width:0;flex:1}
.r100-staff-status{display:inline-flex;align-items:center;width:max-content;max-width:100%;font-size:11px;font-weight:750;color:#4160a1;text-transform:capitalize}
.r100-needs-review{border-color:#f2c997!important;background:#fffaf0!important}
.r100-needs-review-label{background:#fff0d7;padding:4px 9px;border-radius:100px;color:#8b4d0c}
.r100-staff-next-step{font-size:11px;line-height:1.6;color:#617493;margin:3px 0 0;max-width:45rem}
.r100-review-button{border-color:#c28a35!important;color:#83510e!important;background:#fff4dd!important;font-weight:700}
.r100-reschedule-queue{border:1px solid #efca95;border-radius:15px;padding:18px;margin:14px 0 18px;background:#fffbf3}
.r100-reschedule-queue[hidden]{display:none!important}
.r100-reschedule-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:11px}
.r100-reschedule-heading strong{font-size:15px;color:#643f11}
.r100-reschedule-heading p{margin:4px 0 0;color:#8e6940;font-size:12px;line-height:1.45}
.r100-reschedule-rows{display:grid;gap:8px}
.r100-reschedule-row{border:1px solid #f0e0c5;border-radius:10px;background:white;padding:10px 12px;display:flex;align-items:center;gap:12px;justify-content:space-between;flex-wrap:wrap}
.r100-reschedule-row>div{display:grid;gap:4px;min-width:0}
.r100-reschedule-row strong{font-size:13px;line-height:1.3;color:#344363}
.r100-reschedule-row small{font-size:11px;color:#6e7f9a;overflow-wrap:anywhere}
@media(max-width:600px){.r100-reschedule-heading{align-items:flex-start}.r100-reschedule-row{align-items:flex-start}.r100-reschedule-row button{width:100%}}

/* R100.4: department-wide appointments table; existing ticket board remains canonical. */
.r100-overview{margin:14px 0 18px;border:1px solid #dce5f3;border-radius:16px;background:#fff;padding:18px;box-shadow:0 3px 13px rgba(32,55,97,.035)}
.r100-overview[hidden],.r100-overview [hidden]{display:none!important}
.r100-overview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:13px}
.r100-overview-head .r100-eyebrow{font-size:10px;font-weight:800;letter-spacing:.13em;color:#416cc7}
.r100-overview-head h3{font-size:18px;line-height:1.3;margin:3px 0 5px;color:#172b50}
.r100-overview-head h3 span{font-size:13px;font-weight:600;color:#687fa5}
.r100-overview-head p{font-size:12px;line-height:1.5;color:#7183a2;margin:0}
.r100-overview-filters{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.r100-overview-filters button{background:#f7f9fe;border:1px solid #dce4f4;border-radius:8px;padding:7px 11px;color:#506787;font-size:12px;min-height:34px;font-weight:700;cursor:pointer}
.r100-overview-filters button[aria-pressed=true]{background:#edf3ff;border-color:#b8cdfa;color:#315dd2}
.r100-overview-filters button:focus-visible,.r100-overview button:focus-visible{outline:2px solid #3769e6;outline-offset:2px}
.r100-table-viewport{max-width:100%;overflow-x:auto}
.r100-overview-table{border-collapse:collapse;width:100%;table-layout:fixed;text-align:left}
.r100-overview-table th{padding:10px 12px;background:#f7f9fd;border-bottom:1px solid #e1e8f2;font-size:11px;font-weight:800;color:#6b7d99}
.r100-overview-table th:nth-child(1){width:28%}.r100-overview-table th:nth-child(2){width:22%}.r100-overview-table th:nth-child(3){width:20%}.r100-overview-table th:nth-child(4){width:18%}.r100-overview-table th:nth-child(5){width:12%}
.r100-overview-table td{padding:12px;border-bottom:1px solid #edf1f8;font-size:12px;color:#344867;vertical-align:middle;overflow-wrap:anywhere}
.r100-overview-table tbody tr:last-child td{border-bottom:0}
.r100-overview-table td strong{display:block;font-size:12px;line-height:1.4;color:#253d68}
.r100-overview-table td small{display:block;font-size:10px;line-height:1.5;color:#7890ac;margin-top:3px;overflow-wrap:anywhere}
.r100-overview-table td button{white-space:normal;max-width:100%;min-height:33px}
.r100-overview-status{display:inline-block;padding:6px 9px;border-radius:999px;background:#ecf2fd;color:#315fbd;font-size:11px;font-weight:750;line-height:1.3}
.r100-overview-status[data-tone=confirmed]{background:#e8f8f1;color:#17764f}
.r100-overview-status[data-tone=attention]{background:#fff0d9;color:#97550e}
.r100-overview-status[data-tone=muted]{background:#f2f4f8;color:#728098}
.r100-overview-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;color:#788ba7;font-size:11px}
.r100-overview-footer>div{display:flex;gap:8px}
.r100-overview-empty{background:#f8faff;border-radius:9px;padding:12px;color:#6c7f9c;font-size:12px}
#r100OverviewNote{margin:9px 0 0;font-size:11px;color:#935323}
@media(max-width:980px){.r100-overview-table th:nth-child(1){width:26%}.r100-overview-table th:nth-child(2){width:24%}.r100-overview-table th:nth-child(3){width:16%}.r100-overview-table th:nth-child(4){width:20%}.r100-overview-table th:nth-child(5){width:14%}}
@media(max-width:760px){.r100-overview{padding:13px}.r100-overview-head{flex-wrap:wrap}.r100-table-viewport{overflow:visible}.r100-overview-table,.r100-overview-table tbody,.r100-overview-table tr,.r100-overview-table td{display:block;width:100%}.r100-overview-table thead{display:none}.r100-overview-table tr{padding:10px 12px;margin:8px 0;border:1px solid #e1e8f4;border-radius:10px}.r100-overview-table td{display:grid;grid-template-columns:100px minmax(0,1fr);gap:6px;border-bottom:1px solid #f1f4fa;padding:8px 0}.r100-overview-table td:last-child{border-bottom:0}.r100-overview-table td:before{content:attr(data-label);font-weight:700;color:#7587a3;font-size:11px}.r100-overview-table td button{justify-self:start}.r100-overview-footer{flex-wrap:wrap}.r100-overview-footer>div{margin-left:auto}}
