/* /office-base.css */

*{
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
}

body{
  margin:0;
  background:#F4F6F8;
  color:#18202A;
  font-family:
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    "Hiragino Kaku Gothic ProN",
    "Yu Gothic",
    Meiryo,
    sans-serif;
}

[hidden]{
  display:none!important;
}

button,
input,
select,
textarea{
  font:inherit;
}

button{
  touch-action:manipulation;
}

a{
  color:#1268ac;
}

.screen{
  min-height:100vh;
  background:#F4F6F8;
}

.top-navigation{
  padding:10px 16px;
  background:#1268ac;
  text-align:right;
}

.top-return{
  min-height:40px;
  padding:8px 16px;
  border:1px solid rgba(255,255,255,.5);
  border-radius:9px;
  background:transparent;
  color:#fff;
  font-weight:700;
  cursor:pointer;
}

.brand{
  background:#0B111A;
  border-top:6px solid #1268ac;
  border-bottom:1px solid #dae5ef;
}

.brand-inner{
  max-width:1000px;
  margin:auto;
  padding:24px;
  display:flex;
  align-items:center;
  gap:24px;
}

.logo-plate{
  flex:0 0 auto;
  width:132px;
  padding:13px;
  display:grid;
  place-items:center;
  background:
    linear-gradient(
      145deg,
      #132b47 0%,
      #080f1b 55%,
      #020305 100%
    );
  border:1px solid #91abc5;
  border-radius:18px;
  box-shadow:
    0 4px 14px rgba(8,26,48,.15),
    inset 0 1px 0 rgba(209,227,243,.15);
}

.logo{
  display:block;
  width:104px;
  max-width:100%;
  height:auto;
  object-fit:contain;
}

.eyebrow{
  color:#236799;
  font-size:11px;
  font-weight:800;
  letter-spacing:.15em;
}

.title{
  margin:8px 0;
  color:#143c60;
  font-size:clamp(22px,4vw,32px);
}

.subtitle{
  margin:0;
  color:#61778c;
  font-size:13px;
}

.content{
  max-width:1000px;
  margin:auto;
  padding:28px 24px 48px;
}

.card{
  margin-bottom:18px;
  padding:24px;
  background:#fff;
  border:1px solid #d8e4ef;
  border-radius:18px;
  box-shadow:0 4px 16px rgba(22,72,110,.05);
}

.card h2{
  margin:0 0 18px;
  color:#143c60;
  font-size:20px;
}

.card h3{
  margin:22px 0 10px;
  color:#143c60;
  font-size:16px;
}

.note{
  margin:10px 0 0;
  color:#61778c;
  font-size:13px;
  line-height:1.7;
}

.home-date{
  margin:0 0 18px;
  color:#5a7086;
  font-size:14px;
}

.staff-options{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
}

.staff-option{
  position:relative;
}

.staff-option input{
  position:absolute;
  opacity:0;
}

.staff-option span{
  display:block;
  padding:15px 8px;
  border:1px solid #b9cee0;
  border-radius:10px;
  text-align:center;
  cursor:pointer;
  color:#254c6c;
  font-weight:700;
}

.staff-option input:checked + span{
  background:#1268ac;
  border-color:#1268ac;
  color:#fff;
}

.daily-count{
  display:block;
  margin-top:8px;
  color:#1268ac;
  font-size:30px;
  font-weight:900;
}

.menu-title{
  margin:28px 0 14px;
  color:#143c60;
  font-size:18px;
}

.menu-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}

.menu-button{
  width:100%;
  min-height:125px;
  padding:22px;
  display:flex;
  align-items:center;
  gap:16px;
  border:1px solid #d8e4ef;
  border-radius:16px;
  background:#fff;
  color:#234761;
  text-align:left;
  cursor:pointer;
}

.menu-button:hover{
  border-color:#1268ac;
}

.menu-icon{
  width:44px;
  height:44px;
  flex:0 0 44px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#edf4fa;
  color:#1268ac;
  font-size:23px;
  font-weight:800;
}

.menu-name{
  display:block;
  font-size:18px;
  font-weight:800;
}

.menu-description{
  display:block;
  margin-top:7px;
  color:#61778c;
  font-size:12px;
  line-height:1.5;
}

.fields{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.fields label{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:8px;
  color:#254c6c;
  font-weight:700;
}

.fields input,
.fields select,
.fields textarea{
  width:100%;
  min-width:0;
  padding:10px 12px;
  border:1px solid #b9cee0;
  border-radius:9px;
  background:#fff;
  color:#18202A;
}

.fields input,
.fields select{
  height:48px;
}

.fields textarea{
  min-height:120px;
  resize:vertical;
}

.full{
  grid-column:1 / -1;
}

.mail-box{
  width:100%;
  min-height:250px;
  padding:14px;
  border:1px solid #b9cee0;
  border-radius:10px;
  background:#fff;
  color:#18202A;
  line-height:1.7;
  resize:vertical;
}

.raw-box{
  width:100%;
  min-height:160px;
  padding:14px;
  border:1px solid #b9cee0;
  border-radius:10px;
  background:#f7f9fb;
  color:#18202A;
  line-height:1.7;
  resize:vertical;
}

.primary{
  width:100%;
  min-height:52px;
  margin-top:16px;
  padding:12px 18px;
  border:0;
  border-radius:10px;
  background:#1268ac;
  color:#fff;
  font-weight:800;
  cursor:pointer;
}

.secondary{
  min-height:44px;
  margin-top:10px;
  padding:9px 16px;
  border:1px solid #91abc5;
  border-radius:9px;
  background:#fff;
  color:#18202A;
  font-weight:700;
  cursor:pointer;
}

.status{
  margin-top:14px;
  padding:14px;
  border-radius:10px;
  background:#edf4fa;
  color:#345c7b;
  line-height:1.7;
}

.status.success{
  background:#e9f7ed;
  color:#155c2c;
}

.status.warning{
  background:#fff3df;
  color:#7a3b00;
}

.source-badge{
  display:inline-block;
  margin-bottom:14px;
  padding:6px 12px;
  border-radius:999px;
  background:#e9f2fb;
  color:#1268ac;
  font-size:12px;
  font-weight:800;
}

.registration-link{
  display:block;
  width:100%;
  min-height:52px;
  margin-top:18px;
  padding:14px 18px;
  border-radius:10px;
  background:#1268ac;
  color:#fff;
  text-align:center;
  text-decoration:none;
  font-weight:800;
}

/* ROUTE */

.route-shell{
  min-height:100vh;
  background:#f2f3f5;
  color:#171717;
}

.route-header{
  width:100%;
  background:linear-gradient(135deg,#000,#111 50%,#050505);
  box-shadow:0 3px 15px rgba(0,0,0,.32);
}

.route-header-inner{
  max-width:900px;
  min-height:108px;
  margin:auto;
  padding:14px 22px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:24px;
}

.route-logo{
  width:165px;
  max-width:34%;
  height:auto;
  object-fit:contain;
}

.route-title{
  margin:0;
  color:#fff;
  font-size:38px;
  line-height:1.05;
}

.route-subtitle{
  margin-top:8px;
  color:#c7a85a;
  font-size:12px;
  font-weight:700;
  letter-spacing:.13em;
}

.route-container{
  width:100%;
  max-width:760px;
  margin:auto;
  padding:24px 18px 50px;
}

.route-card{
  margin-bottom:18px;
  padding:22px;
  background:#fff;
  border:1px solid #e1e1e1;
  border-radius:16px;
  box-shadow:0 5px 18px rgba(0,0,0,.06);
}

.route-label{
  display:block;
  margin-bottom:10px;
  font-size:15px;
  font-weight:800;
}

.route-card select,
.route-card input{
  width:100%;
  height:52px;
  padding:0 14px;
  border:1.5px solid #ccc;
  border-radius:9px;
  background:#fff;
  color:#171717;
  font-size:16px;
}

.station-info{
  display:none;
  margin-top:12px;
  padding:11px 13px;
  background:#f5f5f5;
  border-radius:8px;
  color:#555;
  font-size:13px;
  line-height:1.7;
}

.location-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}

.location-option{
  position:relative;
}

.location-option input{
  position:absolute;
  opacity:0;
}

.location-label{
  min-height:82px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border:1.5px solid #d4d4d4;
  border-radius:11px;
  background:#fff;
  cursor:pointer;
}

.location-option input:checked + .location-label{
  border:2px solid #111;
  background:#f4f4f4;
}

.location-title{
  font-size:15px;
  font-weight:800;
}

.location-sub{
  margin-top:6px;
  color:#888;
  font-size:11px;
}

.dispatch-area{
  display:none;
  margin-top:18px;
}

.calculate-button{
  width:100%;
  min-height:60px;
  border:1px solid #242424;
  border-radius:11px;
  background:linear-gradient(135deg,#000,#171717 50%,#050505);
  color:#fff;
  font-size:18px;
  font-weight:800;
  cursor:pointer;
}

.loading{
  display:none;
  padding:22px;
  text-align:center;
  font-weight:700;
}

.error{
  display:none;
  margin-top:15px;
  padding:14px 16px;
  border:1px solid #f1c7c7;
  border-radius:10px;
  background:#fff4f4;
  color:#b42318;
}

.result{
  display:none;
  margin-top:20px;
  overflow:hidden;
  border:1px solid #ddd;
  border-radius:16px;
  background:#fff;
}

.result-header{
  padding:15px 20px;
  background:#080808;
  color:#fff;
  font-weight:800;
}

.result-body{
  padding:20px;
}

.result-row{
  display:grid;
  grid-template-columns:125px 1fr;
  gap:12px;
  padding:11px 0;
  border-bottom:1px solid #eee;
}

.result-key{
  color:#777;
  font-size:13px;
  font-weight:700;
}

.result-value{
  font-size:14px;
  font-weight:700;
  line-height:1.6;
  word-break:break-word;
}

.fare-box{
  margin-top:20px;
  padding:22px 16px;
  border-radius:13px;
  background:linear-gradient(135deg,#000,#191919);
  color:#fff;
  text-align:center;
}

.fare-label{
  color:#d4ba72;
  font-size:13px;
  font-weight:800;
}

.fare-price{
  font-size:40px;
  font-weight:900;
}

.fare-note{
  margin-top:7px;
  color:#bdbdbd;
  font-size:11px;
}

.action-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:16px;
}

.action-button{
  min-height:55px;
  border-radius:11px;
  font-weight:800;
  cursor:pointer;
}

.copy-button{
  border:2px solid #111;
  background:#fff;
}

.share-button{
  border:2px solid #111;
  background:#111;
  color:#fff;
}

.reset-button{
  position:fixed;
  top:max(10px,env(safe-area-inset-top));
  left:10px;
  z-index:9999;
  height:38px;
  padding:0 13px;
  border:1px solid rgba(255,255,255,.45);
  border-radius:20px;
  background:rgba(0,0,0,.88);
  color:#fff;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
}

@media(max-width:650px){

  .brand-inner{
    padding:18px 15px;
    gap:14px;
  }

  .logo-plate{
    width:100px;
    padding:10px;
    border-radius:14px;
  }

  .logo{
    width:78px;
  }

  .content{
    padding:20px 14px 32px;
  }

  .card{
    padding:18px 15px;
  }

  .staff-options{
    grid-template-columns:repeat(2,1fr);
  }

  .menu-grid{
    grid-template-columns:1fr;
    gap:12px;
  }

  .menu-button{
    min-height:100px;
    padding:17px;
  }

  .fields{
    grid-template-columns:1fr;
  }

  .full{
    grid-column:auto;
  }

  .route-header-inner{
    min-height:90px;
    padding:11px 15px;
    gap:14px;
  }

  .route-logo{
    width:130px;
  }

  .route-title{
    font-size:27px;
  }

  .route-subtitle{
    font-size:8.5px;
  }

  .route-container{
    padding:16px 12px 35px;
  }

  .route-card{
    padding:17px;
  }

  .result-row{
    grid-template-columns:92px 1fr;
  }

  .fare-price{
    font-size:36px;
  }
}

.master-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}.master-check{display:flex;align-items:center;gap:9px;padding:11px 12px;border:1px solid #c9d9e7;border-radius:10px;background:#fff;color:#254c6c;font-weight:700}.master-check input{width:20px;height:20px;flex:0 0 auto}.booking-list{display:grid;gap:12px}.booking-item{padding:15px;border:1px solid #d8e4ef;border-radius:12px;background:#fff}.booking-item-head{display:flex;justify-content:space-between;gap:12px;font-weight:800}.booking-meta{margin-top:7px;color:#61778c;font-size:13px;line-height:1.65}.inline-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.small-button{padding:8px 12px;border:1px solid #91abc5;border-radius:8px;background:#fff;color:#18202A;font-weight:700;cursor:pointer}.quote-box{margin-top:14px;padding:14px;border-radius:10px;background:#f4f8fb;line-height:1.7}.danger{background:#fff4f4;color:#9b1c1c}.bridge-frame{position:absolute;width:1px;height:1px;border:0;opacity:0;pointer-events:none}@media(max-width:650px){.master-checks{grid-template-columns:1fr}}

/* ===== 完成版予約ワークスペース ===== */
.content{max-width:1500px}
.week-board{display:grid;grid-template-columns:repeat(7,minmax(150px,1fr));gap:10px;overflow-x:auto}
.week-day{min-width:150px;background:#fff;border:1px solid #d9e5ef;border-radius:12px;padding:10px}
.week-day h3{margin:0 0 8px;font-size:14px}.week-row{padding:7px 0;border-top:1px solid #edf2f6;font-size:12px}
.booking-workspace{display:grid;grid-template-columns:minmax(300px,1fr) minmax(340px,1.1fr) minmax(330px,1fr);gap:14px;align-items:start}
.booking-workspace .card{margin:0 0 14px}.booking-workspace .full-span{grid-column:1/-1}
.compact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.compact-fields .full{grid-column:1/-1}
.quote-grid{display:grid;grid-template-columns:1fr auto;gap:6px 12px;font-size:14px}.quote-grid b{font-size:16px}
.action-stack{display:grid;gap:9px}.post-save{border-top:1px solid #dbe6ef;margin-top:14px;padding-top:14px}
.email-preview textarea{min-height:220px}.email-preview input{width:100%}
.boy-copy{min-height:170px}
.today-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.today-detail{margin-top:8px;padding:10px;background:#f7fafc;border-radius:10px}
@media(max-width:1100px){.booking-workspace{grid-template-columns:1fr 1fr}.booking-workspace .right-column{grid-column:1/-1}}
@media(max-width:720px){.booking-workspace{grid-template-columns:1fr}.booking-workspace .right-column{grid-column:auto}.week-board{grid-template-columns:repeat(7,230px)}}


.week-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.week-day .booking-item{display:block;width:100%;margin-top:8px}#todaySmsOpen{display:inline-block;margin-top:16px}input,select,textarea{max-width:100%}
.compact-fields label,.post-save label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700}.compact-fields input,.compact-fields select,.post-save select,.post-save input{width:100%;min-height:42px;border:1px solid #c9d9e7;border-radius:8px;padding:8px;background:#fff;color:#18202A}
.content button:not(.primary):not(.booking-item):not(.menu-button):not(.route-button):not(.action-button){border:1px solid #91abc5;border-radius:8px;background:#fff;color:#18202A;padding:10px 12px;cursor:pointer;font-weight:700}
.booking-workspace{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(0,1fr)}.booking-workspace .fields{grid-template-columns:1fr}.booking-workspace .card{padding:18px}.booking-workspace>div{min-width:0}.booking-workspace .right-column{position:sticky;top:10px;max-height:calc(100vh - 20px);overflow:auto}.booking-workspace .master-check{padding:9px;font-size:13px}.post-save button{width:100%}.post-save label{margin-bottom:8px}
@media(max-width:1100px){.booking-workspace{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-workspace .right-column{position:static;max-height:none;grid-column:1/-1}}@media(max-width:720px){.week-board,.booking-workspace{grid-template-columns:1fr}.booking-workspace .right-column{grid-column:auto}.compact-fields{grid-template-columns:1fr}}

.week-board{grid-template-columns:repeat(7,minmax(180px,1fr));overflow-x:auto}.date-weekday{font-size:14px;font-weight:700;color:#1268ac}.nomination-field{border:0;padding:0;margin:0}.nomination-field legend{font-weight:700;margin-bottom:10px}.nomination-field label{display:inline-flex;align-items:center;gap:8px;margin-right:16px}.nomination-field input[type=checkbox]{width:20px;height:20px}.taxi-stepper{display:flex;flex-wrap:wrap;gap:5px}.taxi-stepper input{flex-basis:100%}.taxi-stepper button{flex:1;padding:8px!important;font-size:12px}#receptionMailImport .mail-box{min-height:130px;height:150px}#reviewResults{margin-top:16px}
#weekBoard{display:grid;grid-template-columns:repeat(7,minmax(max-content,1fr));gap:0;align-items:start;max-width:100%;min-width:0;overflow-x:auto;padding-bottom:6px;overscroll-behavior-x:contain}#weekBoard .week-day{min-width:220px;padding:6px 12px;border:0;border-right:1px solid #dce5ed;border-radius:0;background:transparent}#weekBoard .week-day:last-child{border-right:0}#weekBoard .week-day h3{margin:0 0 4px;font-size:15px;line-height:1.6;white-space:nowrap}#weekBoard .week-booking-row{display:flex;gap:12px;width:100%;margin:0;padding:8px 4px;min-height:40px;border:0;border-radius:5px;background:transparent;color:#18202A;font:inherit;font-size:14px;font-weight:400;text-align:left;cursor:pointer}#weekBoard .week-booking-row:hover{background:#eaf2f8}#weekBoard .week-booking-row span:first-child{flex:none;font-variant-numeric:tabular-nums}#weekBoard .week-booking-row span:last-child{white-space:nowrap}#weekBookingDialog{box-sizing:border-box;width:min(460px,calc(100% - 28px));max-height:calc(100dvh - 32px);overflow:auto;border:0;border-radius:18px;padding:24px;color:#18202A}#weekBookingDialog::backdrop{background:#122b4566}#weekBookingDialog h2{margin:0 0 18px;font-size:21px}#weekBookingDialog dl{display:grid;grid-template-columns:100px minmax(0,1fr);gap:10px;font-size:14px}#weekBookingDialog dt{color:#637d93}#weekBookingDialog dd{margin:0;overflow-wrap:anywhere}.week-detail-actions{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}.week-detail-actions button{padding:12px 16px;border:1px solid #b5c8d9;border-radius:9px;font:inherit;cursor:pointer}.week-detail-actions .primary{background:#18202A;color:white}.screen>header.brand,.route-shell>header.route-header{background:#deebf5;border-bottom:1px solid #bed2e3}.route-header .route-title{color:#18202A}.route-header .route-subtitle{color:#426782}
.reception-shortcuts{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:6px;background:#edf4fa;padding:8px 0}.reception-shortcuts button{font-size:12px;padding:8px!important}.live-summary dl{display:grid;grid-template-columns:100px 1fr;gap:8px;font-size:13px}.live-summary dt{font-weight:bold}.live-summary dd{margin:0;overflow-wrap:anywhere}.reception-sms{border-top:1px solid #c9d9e7;margin-top:18px;padding-top:12px}.reception-sms a{display:block;text-align:center;padding:12px;background:#1268ac;color:white;border-radius:8px}.reception-sms a[aria-disabled=true]{opacity:.5;cursor:default}.right-column textarea{min-height:110px}.right-column button:disabled{opacity:.5;cursor:default}@media(min-width:721px) and (max-width:1100px){.booking-workspace{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.booking-workspace>div:first-child{grid-column:1;grid-row:1}.booking-workspace>div:nth-child(2){grid-column:1;grid-row:2}.booking-workspace .right-column{grid-column:2;grid-row:1/3;position:sticky;top:10px;max-height:calc(100vh - 20px)}}
@media(min-width:1101px){#bookingScreen>.content{max-width:1800px}.booking-workspace{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(280px,1.1fr);gap:10px}.booking-workspace .card{padding:14px;margin-bottom:10px}.booking-workspace .fields{gap:10px}.booking-workspace h2{margin-bottom:12px}.booking-workspace .master-check{padding:7px}}@media(min-width:721px) and (max-width:1100px){.booking-workspace>div:nth-child(3){grid-column:1;grid-row:3}.booking-workspace .right-column{grid-column:2;grid-row:1/4}}@media(max-width:720px){.booking-workspace>div{grid-column:auto;grid-row:auto}}.booking-workspace .field-filled{background:#edf8f1!important;border-color:#65a781!important}.booking-workspace .field-missing{background:#fff5e6!important;border-color:#d29138!important}.reception-progress{margin-bottom:14px}.progress-legend{font-size:11px;color:#526879;margin:0 0 8px}.progress-next{background:#fff1d9;border-left:4px solid #c58119;padding:10px;font-size:13px;line-height:1.6;margin:0 0 8px}.progress-steps{display:flex;flex-wrap:wrap;gap:5px}.progress-steps span{font-size:11px;padding:5px 7px;border-radius:5px}.progress-done{background:#e2f3e8;color:#245b3e}.progress-pending{background:#eef1f5;color:#526879}.booking-workspace [hidden]{display:none!important}.booking-workspace .boy-add-button{justify-self:start;width:auto;font-size:12px;padding:6px 10px!important;margin:2px 0 8px}.booking-workspace .boy-tone-one{border-left:4px solid #287caf;padding:10px;background:#eef7ff;border-radius:7px}.booking-workspace .boy-tone-two{border-left:4px solid #9a62af;padding:10px;background:#faf0ff;border-radius:7px}.booking-workspace select.boy-tone-one,.booking-workspace select.boy-tone-two{width:100%}.date-entry{position:relative;display:flex;gap:6px;align-items:center}.date-entry>input:first-child{min-width:0;flex:1}.date-entry .date-picker-button{flex:none;padding:8px!important;min-height:42px;font-size:20px}.date-entry .date-picker-native{position:absolute;right:0;bottom:0;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;opacity:0;pointer-events:none}.booking-workspace [aria-invalid=true]{border-color:#bc3737!important;background:#fff0f0!important}#bookingScreen .five-column-reception{align-items:start}#bookingScreen .communication-shell{padding:0;border:0;background:transparent;box-shadow:none}#bookingScreen .operation-card{padding:14px;margin:0 0 14px;border:1px solid var(--operation-edge);border-top:4px solid var(--operation-edge);border-radius:12px;background:var(--operation-bg)}#bookingScreen .operation-card h2{font-size:17px;color:var(--operation-ink);margin:0 0 12px}#bookingScreen .operation-blue{--operation-edge:#5794c8;--operation-bg:#edf6ff;--operation-ink:#205c8c}#bookingScreen .operation-green{--operation-edge:#58a27a;--operation-bg:#edf8f1;--operation-ink:#276442}#bookingScreen .operation-purple{--operation-edge:#a278b9;--operation-bg:#f8f0fc;--operation-ink:#74448e}#bookingScreen .operation-orange{--operation-edge:#d49a51;--operation-bg:#fff5e7;--operation-ink:#89561c}#bookingScreen .post-save{border:0;padding-top:0}#bookingScreen .operation-card .reception-sms{border:0;margin-top:0;padding-top:0}#bookingScreen .five-column-reception .card>h2{min-height:26px;margin-top:0}#bookingScreen .five-column-reception .taxi-stepper button{white-space:nowrap}@media(min-width:1101px){#bookingScreen>.content{max-width:2200px}#bookingScreen .five-column-reception{grid-template-columns:repeat(4,minmax(0,1fr)) minmax(300px,1.35fr);gap:12px}#bookingScreen .five-column-reception>div{grid-column:auto;grid-row:auto}#bookingScreen .five-column-reception .compact-fields,#bookingScreen .five-column-reception .master-checks{grid-template-columns:1fr}#bookingScreen .five-column-reception .right-column{position:static;max-height:none;overflow:visible}}@media(min-width:721px) and (max-width:1100px){#bookingScreen .five-column-reception>div{grid-column:1;grid-row:auto}#bookingScreen .five-column-reception>.right-column{grid-column:2;grid-row:1/5}}@media(max-width:720px){#bookingScreen .five-column-reception>div{grid-column:auto;grid-row:auto}}#bookingScreen .operation-card textarea{box-sizing:border-box;width:100%;border:1px solid #b8cddd;border-radius:8px;padding:10px;font:inherit}.compact-page-header{border-top:3px solid #1268ac;box-shadow:none}.compact-page-header .brand-inner,.compact-page-header .route-header-inner{box-sizing:border-box;max-width:none;margin:0;padding:10px 20px;min-height:76px;display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:14px;text-align:left}.compact-page-header .logo-plate{box-sizing:border-box;width:48px;height:54px;padding:3px;border-radius:7px}.compact-page-header .logo{width:100%;height:100%;object-fit:contain}.compact-page-header .route-logo{width:48px;height:54px;max-width:none;object-fit:contain}.compact-page-header .title,.compact-page-header .route-title,.compact-page-header h1{font-size:22px;line-height:1.2;margin:0}.compact-page-header .eyebrow{font-size:9px;margin:0 0 3px}.compact-page-header .subtitle,.compact-page-header .route-subtitle{font-size:11px;margin:4px 0 0;line-height:1.4}.compact-page-header .top-return{flex:none;color:#174c75;border:1px solid #9bbbd2;background:#fff;min-height:34px;padding:6px 10px;font-size:12px}.compact-page-header .brand-inner>div:last-child{min-width:0}#homeScreen .compact-page-header .brand-inner{padding-right:58px}@media(max-width:720px){.compact-page-header .brand-inner,.compact-page-header .route-header-inner{padding:8px 10px;gap:8px;min-height:66px}.compact-page-header .logo-plate,.compact-page-header .route-logo{width:34px;height:42px}.compact-page-header .title,.compact-page-header .route-title,.compact-page-header h1{font-size:18px}.compact-page-header .eyebrow{display:none}.compact-page-header .subtitle,.compact-page-header .route-subtitle{font-size:10px;letter-spacing:0}.compact-page-header .top-return{padding:6px;font-size:11px}}#routeScreen .reset-button{left:auto;right:10px;top:18px}#routeScreen .compact-page-header{padding-right:100px}@media(min-width:1101px){#homeScreen .content{max-width:1800px}#homeScreen .menu-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}#homeScreen .menu-button{min-height:100px;padding:16px 12px;gap:10px}#homeScreen .menu-icon{flex:none;width:34px;height:34px}#homeScreen .menu-name{font-size:16px}#homeScreen .menu-description{font-size:11px}}@media(min-width:1101px){#bookingScreen .five-column-reception{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.4fr) minmax(0,1fr)}#bookingScreen .five-column-reception .master-checks{grid-template-columns:repeat(2,minmax(0,1fr))}#bookingScreen .reception-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:12px}#bookingScreen .reception-shortcuts button{overflow-wrap:anywhere}}
.compact-page-header .logo-plate,.compact-page-header .route-logo{width:48px;height:48px;aspect-ratio:1;flex-shrink:0}.compact-page-header .logo{aspect-ratio:1}
@media(max-width:720px){.compact-page-header .logo-plate,.compact-page-header .route-logo{width:34px;height:34px}}







.required-field-heading{display:flex;align-items:baseline;gap:4px;font-size:13px;line-height:1.5}.required-badge{display:inline;white-space:nowrap;margin-left:0;padding:0;border:0;background:transparent;color:#c62828;font-size:10px;font-weight:700;line-height:inherit}
#receptionRegisterBar.reception-register-bar{margin-left:auto;display:flex;align-items:center;gap:12px;flex:none;max-width:50%}#receptionRegisterAmount{font-size:15px;font-weight:700;white-space:nowrap;color:#174c75}#receptionRegisterBar button{width:auto;margin:0;padding:10px 16px;background:#1268ac;border:1px solid #1268ac;border-radius:8px;color:#fff;font-weight:700;cursor:pointer}#receptionRegisterBar button:disabled{background:#c9d8e5;border-color:#c9d8e5;color:#60788a;cursor:default}
@media(max-width:720px){#receptionRegisterBar.reception-register-bar{display:none;position:fixed;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:60;max-width:calc(100vw - 24px);margin:0;padding:10px;gap:6px;background:#fff;border:1px solid #91b6d5;border-radius:12px;box-shadow:0 4px 16px #18202A33;flex-direction:column;align-items:stretch}#receptionRegisterBar.is-ready:not(.input-active){display:flex}#receptionRegisterAmount{font-size:13px;text-align:center}#receptionRegisterBar button{font-size:13px;padding:10px 14px}}
:is(#bookingScreen,#mailBookingScreen) .booking-workspace .fare-search-primary{width:100%;padding:13px 8px!important;background:#1268ac;color:#fff;border:1px solid #1268ac;font-weight:700}:is(#bookingScreen,#mailBookingScreen) .booking-workspace .fare-search-primary:disabled{opacity:.5}.fare-column .action-stack{margin-bottom:14px}:is(#bookingScreen,#mailBookingScreen) .booking-workspace button[id$="PostalLookup"]{background:#edf6ff;color:#205c8c;border-color:#5794c8}:is(#bookingScreen,#mailBookingScreen) .booking-workspace button[id$="HotelLookup"]{background:#f8f0fc;color:#74448e;border-color:#a278b9}:is(#bookingScreen,#mailBookingScreen) .booking-workspace button[id$="AddressLookup"]{background:#edf8f1;color:#276442;border-color:#58a27a}:is(#bookingScreen,#mailBookingScreen) .booking-workspace button[id$="WalkLookup"]{background:#fff5e7;color:#89561c;border-color:#d49a51;width:100%;margin-top:8px}:is(#bookingScreen,#mailBookingScreen) .booking-workspace button[id$="WalkLookup"]:disabled{opacity:.5}#operatorGateDialog{width:min(420px,calc(100% - 32px));box-sizing:border-box;border:0;border-radius:16px;padding:24px;color:#18202A}#operatorGateDialog::backdrop{background:#122b4566}#operatorGateChoices{display:grid;grid-template-columns:1fr 1fr;gap:10px}#operatorGateDialog button{padding:12px;font:inherit;border:1px solid #9bbbd2;border-radius:8px;background:#edf6ff;color:#205c8c;cursor:pointer}#operatorGateCancel,#operatorGateAccount{margin-top:14px}#operatorGateStatus{font-size:13px;color:#426782}#homeScreen .menu-button:disabled{opacity:.45;cursor:default}#receptionOperator{flex:none;border:1px solid #9bbbd2;border-radius:7px;background:white;color:#205c8c;padding:8px;font-size:12px}#receptionOperator:disabled{opacity:1}#operatorGateDialog [hidden]{display:none!important}@media(max-width:720px){#bookingScreen .brand-inner{flex-wrap:wrap}#receptionOperator{margin-left:auto}}#bookingScreen .brand-inner{flex-wrap:wrap}#manualNew.header-new-booking{flex:none;width:auto;padding:8px 10px;border:1px solid #809fb8;border-radius:7px;background:#fff;color:#174c75;font-size:12px;cursor:pointer}#bookingScreen #receptionRegisterAmount{font-size:24px;color:#c62828;font-weight:800;line-height:1.2}
#bookingScreen #receptionOperator{background:#eee5fb;color:#60338c;border:1px solid #ad8ace;font-size:14px;font-weight:700;padding:11px 14px;min-height:42px}
#bookingScreen #manualNew.header-new-booking{background:#e1f3e8;color:#21643e;border:1px solid #77b68e;font-size:14px;font-weight:700;padding:11px 14px;min-height:42px}
.compact-page-header .top-return{background:#e3f0ff;color:#145d96;border-color:#75a6ce;font-size:14px;font-weight:700;padding:10px 13px;min-height:42px}
@media(max-width:720px){#bookingScreen #receptionRegisterAmount{font-size:21px}#bookingScreen #receptionOperator,#bookingScreen #manualNew.header-new-booking,.compact-page-header .top-return{font-size:12px;padding:8px 10px;min-height:38px}}
#receptionMasterReload{background:#fff2d9;color:#805516;border:1px solid #ccab66;border-radius:7px;font-size:13px;font-weight:700;padding:10px 12px;min-height:42px;cursor:pointer}#receptionMasterReload:disabled{opacity:.5}#receptionMasterStatus{margin:8px 18px;color:#315b76;font-size:13px}#mobileReceptionEntry[hidden]{display:none}#mobileReceptionEntry{margin-bottom:16px}#mobileReceptionEntry .card{margin-bottom:10px}#mobileReceptionEntry h2{margin-bottom:10px}.mobile-entry-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}#bookingScreen #mobileMailOpen{padding:13px 10px;background:#1268ac;color:#fff;border:1px solid #1268ac;font-size:15px}#bookingScreen #mobileManualEntry{padding:13px 10px;background:#e1f3e8;color:#21643e;border:1px solid #77b68e;font-size:15px}#mobileMailDialog{box-sizing:border-box;width:calc(100% - 24px);max-width:540px;max-height:calc(100dvh - 24px);overflow:auto;border:0;border-radius:16px;padding:16px;background:#f1f6fb;color:#18202A}#mobileMailDialog::backdrop{background:#122b4577}#mobileMailDialog .mobile-mail-close{display:block;margin-left:auto;margin-bottom:10px;padding:8px 14px;background:#fff;border:1px solid #9db5c8;border-radius:8px;color:#18202A;font:inherit}#mobileMailDialog .card{margin:0;padding:14px;box-shadow:none}#mobileMailDialog #mailSource{box-sizing:border-box;width:100%;height:36dvh;min-height:140px;font-size:16px;border:1px solid #a8bfd2;border-radius:8px;padding:10px}#mobileMailDialog #mailImportButton{width:100%;padding:14px;margin-top:10px;background:#1268ac;color:white;border:0;border-radius:8px;font-size:16px;font-weight:700}#mobileMailDialog #mailImportButton:disabled{opacity:.5}
#mobileMailDialog #mobileManualEntry{display:block;width:100%;min-height:44px;padding:12px;background:#e1f3e8;color:#21643e;border:1px solid #77b68e;border-radius:8px;font-size:16px;font-weight:700;cursor:pointer}#mobileMailDialog .mobile-manual-hint{font-size:13px;line-height:1.6;margin:16px 0 8px}
#mobileHeaderActions[hidden]{display:none!important}
@media(max-width:720px){
 #bookingScreen .compact-page-header .brand-inner{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;padding:10px;align-items:center}
 #bookingScreen .compact-page-header .logo-plate{width:34px;height:34px;min-width:34px;flex:none}
 #bookingScreen .compact-page-header .title{font-size:18px;line-height:1.35;overflow-wrap:anywhere}
 #mobileHeaderActions{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(44px,auto);gap:8px;margin-top:2px;min-width:0}
 #bookingScreen #mobileHeaderActions>button{box-sizing:border-box;width:100%;min-width:0;min-height:44px;height:100%;margin:0;padding:8px 5px;font-size:12px;line-height:1.4;white-space:normal;overflow-wrap:anywhere;border-radius:8px;display:flex;align-items:center;justify-content:center;text-align:center}
}
.booking-select-action{display:block;margin-top:12px;padding:10px 14px;border-radius:7px;background:#1268ac;color:white;font-size:14px;font-weight:700;text-align:center;width:max-content;max-width:100%;box-sizing:border-box}
#todayList .booking-item.is-selected{border:2px solid #1268ac;background:#edf6ff}
#bookingOperationDialog{box-sizing:border-box;width:min(850px,calc(100% - 24px));max-height:calc(100dvh - 24px);overflow:auto;border:0;border-radius:16px;padding:20px;color:#18202A;background:#f4f8fc}
#bookingOperationDialog::backdrop{background:#122b4577}
.operation-dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.operation-dialog-heading h2{font-size:20px;margin:0}
#bookingOperationDialog button,#bookingOperationDialog a{box-sizing:border-box;min-height:44px;padding:11px 12px;border:1px solid #86abc9;border-radius:8px;font:inherit;font-size:14px;font-weight:700;cursor:pointer;text-align:center;text-decoration:none}
#bookingOperationDialog button:disabled{opacity:.5;cursor:default}
#bookingOperationDialog #todayOperation{padding:0;margin-top:14px!important;border:0;background:transparent;box-shadow:none}
#todayOperationInfo{background:#deebf5;border-left:4px solid #1268ac;border-radius:8px;padding:14px;line-height:1.7;font-weight:700;overflow-wrap:anywhere}
.booking-operation-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.booking-operation-section{padding:16px;border-radius:12px;border:1px solid #c1d5e6;background:#fff;min-width:0}
.booking-operation-section h3{margin:0 0 12px;font-size:17px}
.booking-operation-section .inline-actions,.booking-operation-section .today-actions{display:grid;grid-template-columns:1fr;gap:8px;margin:0}
.booking-operation-section .today-actions{grid-template-columns:1fr 1fr}
.booking-operation-section label{display:grid;gap:7px;font-size:14px;font-weight:700;margin-bottom:10px}
.booking-operation-section input,.booking-operation-section textarea{box-sizing:border-box;width:100%;min-width:0;font:inherit;font-size:16px;border:1px solid #a6bdd1;border-radius:7px;padding:12px;min-height:44px}
#bookingOperationDialog .operation-confirm button{background:#e5f1ff;color:#16598e;border-color:#7aa7ce}
#bookingOperationDialog .operation-payment button{background:#e1f3e8;color:#21643e;border-color:#77b68e;width:100%}
#bookingOperationDialog .operation-state button{background:#eee5fb;color:#60338c;border-color:#ad8ace}
#bookingOperationDialog .operation-room button,#bookingOperationDialog .operation-room a{display:block;background:#fff2d9;color:#805516;border-color:#ccab66;width:100%;margin-top:8px}
#bookingOperationDialog [hidden]{display:none!important}
#bookingOperationDialog .note{font-size:12px;line-height:1.7}
@media(max-width:600px){#bookingOperationDialog{padding:14px}.booking-operation-grid{grid-template-columns:1fr}.operation-dialog-heading h2{font-size:18px}.booking-operation-section{padding:14px}.booking-select-action{width:100%}}
.booking-record-actions{display:flex;gap:10px;margin-top:14px}
.content .booking-record-actions button{min-height:44px;min-width:120px;font-size:14px;padding:11px 18px!important}
.content .booking-record-actions .record-details{background:#e5f1ff!important;color:#16598e!important;border-color:#7aa7ce!important}
.content .booking-record-actions .record-edit{background:#eee5fb!important;color:#60338c!important;border-color:#ad8ace!important}
#bookingReadonlyDialog{box-sizing:border-box;width:min(900px,calc(100% - 24px));max-height:calc(100dvh - 24px);overflow:auto;border:0;border-radius:16px;padding:20px;color:#18202A;background:#f4f8fc}
#bookingReadonlyDialog::backdrop{background:#122b4577}
#bookingReadonlyDialog button{min-height:44px;border:1px solid #7aa7ce;border-radius:8px;padding:10px 14px;background:#e5f1ff;color:#16598e;font:inherit;font-weight:700;cursor:pointer}
.readonly-section{margin:14px 0;padding:16px;border:1px solid #c1d5e6;border-radius:12px;background:white}
.readonly-section h3{margin:0 0 14px;font-size:18px}
.readonly-section dl{display:grid;grid-template-columns:160px minmax(0,1fr);gap:0;margin:0;font-size:14px}
.readonly-section dt,.readonly-section dd{margin:0;padding:10px 4px;border-bottom:1px solid #e1e9f0;overflow-wrap:anywhere;white-space:pre-wrap}
.readonly-section dt{font-weight:700}.readonly-history{list-style:none;margin:0;padding:0}.readonly-history li{border-bottom:1px solid #e1e9f0;padding:12px 0;font-size:14px}.readonly-history p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}
@media(max-width:600px){#bookingReadonlyDialog{padding:14px}.readonly-section{padding:12px}.readonly-section dl{grid-template-columns:110px minmax(0,1fr);font-size:13px}.booking-record-actions>button{flex:1;min-width:0!important}}
.booking-workspace .categorized-requests{display:block!important}.request-category{margin:0 0 16px;min-width:0}.request-category:last-child{margin-bottom:0}.request-category h4{margin:0 0 8px;padding:8px 10px;background:#e6eff8;border-left:3px solid #5794c8;border-radius:5px;color:#205c8c;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.request-category-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.request-category-items .master-check{min-width:0;margin:0;overflow-wrap:anywhere}
.course-segments{display:grid;gap:8px;min-width:0;grid-column:1/-1}.course-segments .course-no-room{display:flex;align-items:center;gap:8px;background:#fff4df;border:1px solid #d5b47b;border-radius:6px;padding:8px}.course-no-room input{width:18px!important;height:18px!important;min-height:0!important;margin:0}.course-small-button{padding:7px 10px!important;width:fit-content!important;background:#e8f2ff;color:#18547e;border:1px solid #94b9d5;border-radius:6px}.extra-course{display:grid;gap:8px;padding:10px;background:#eef5fc;border-left:3px solid #4e90c1;border-radius:6px}.course-breakdown{border-bottom:1px solid #afc4d8;margin-bottom:10px}.course-breakdown p{font-size:12px;line-height:1.6}
.reception-register-bar #receptionRegisterAmount{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center}.header-settlement{font-size:.85em;color:#205c8c;white-space:nowrap}
.course-segments .course-no-room{flex-direction:row!important;justify-content:flex-start!important}.course-segments .required-badge{display:inline!important}

#receptionRegisterBar button.registration-complete:disabled{background:#20834a;border-color:#20834a;color:white;opacity:1}#registrationCompleteDialog{box-sizing:border-box;width:min(440px,calc(100% - 32px));border:2px solid #87bb9c;border-radius:16px;padding:24px;color:#18202A}#registrationCompleteDialog::backdrop{background:#12304466}#registrationCompleteDialog h2{color:#20834a;margin-top:0}#registrationCompleteDialog li{margin:14px 0;font-weight:700}#registrationCompleteDialog button{width:100%;padding:13px;background:#20834a;color:white;border:0;border-radius:8px;font-weight:700;font-size:16px}@media(max-width:720px){#receptionRegisterBar.is-saved:not(.input-active){display:flex}}
/* Shared tactile feedback: keep the existing action and completion colors at rest. */
:is(button,input[type=button],input[type=submit],a.small-button,[role=button]){touch-action:manipulation;transition:background-color .12s,color .12s,box-shadow .12s,filter .12s}
:is(button,input[type=button],input[type=submit],a.small-button,[role=button]):focus-visible{outline:3px solid #f0a526!important;outline-offset:3px}
:is(button,input[type=button],input[type=submit],a.small-button,[role=button]):not(:disabled):not([aria-disabled=true]):active,
:is(button,input[type=button],input[type=submit],a.small-button,[role=button]).action-pressed{background:#164b77!important;color:#fff!important;border-color:#123b5d!important;box-shadow:inset 0 0 0 2px #ffffff66,0 0 0 3px #84b9e8!important;filter:brightness(.92)}
:is(button,a.small-button,[role=button])[aria-busy=true]{background:#164b77!important;color:white!important;border-color:#123b5d!important;cursor:progress!important;opacity:1!important}
:is(button,a.small-button,[role=button])[aria-busy=true]::after{content:'　処理中…';display:inline-block;font-size:.85em;font-weight:700;white-space:nowrap}
@media(hover:hover){:is(button,a.small-button,[role=button]):not(:disabled):not([aria-disabled=true]):hover{filter:brightness(.9);box-shadow:0 0 0 2px #77a9d966}}
@media(prefers-reduced-motion:reduce){:is(button,input[type=button],input[type=submit],a.small-button,[role=button]){transition:none}}
:is(button,a.small-button,[role=button]).action-pressed :is(span,strong,small),:is(button,a.small-button,[role=button])[aria-busy=true] :is(span,strong,small){color:inherit!important}
.menu-button.action-pressed .menu-icon{background:#ffffff22!important;color:white!important}

/* /button-feedback.css */
button:not(:disabled),a.button-link,input[type=submit],input[type=button],[role=button]{transition:filter .12s ease,box-shadow .12s ease,background-color .12s ease}
button:not(:disabled):active,a.button-link:active,.ui-pressed{filter:brightness(.86);box-shadow:inset 0 0 0 3px #527faaa6!important}
button:focus-visible,a.button-link:focus-visible{outline:3px solid #3b7eab;outline-offset:3px}
button[data-ui-state]{position:relative;white-space:normal}
button[data-ui-state]::after{display:inline-block;margin-left:8px;padding:2px 7px;border-radius:6px;font-size:13px;line-height:1.5;font-weight:700;vertical-align:middle}
button[data-ui-state=busy]{cursor:wait;opacity:1!important;box-shadow:inset 0 0 0 2px #8baec7!important}
button[data-ui-state=busy]::after{content:'◌ 処理中…';background:#dfebf7;color:#184a70;animation:button-pending 1s ease-in-out infinite alternate}
button[data-ui-state=success]::after{content:'✓ 完了';background:#dcf0e5;color:#216340}
button[data-ui-state=error]::after{content:'! 再確認';background:#fce7e6;color:#9b3030}
@keyframes button-pending{to{opacity:.5}}
@media(prefers-reduced-motion:reduce){button,a.button-link{transition:none}button[data-ui-state=busy]::after{animation:none}}

/* /office-dialogs.css */
#pushSettingsDialog{box-sizing:border-box;width:min(440px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto;border:0;border-radius:20px;padding:24px;background:#fff;color:#18202A;box-shadow:0 20px 80px #14334c40}#pushSettingsDialog::backdrop{background:rgba(7,13,21,.62)}.push-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.push-dialog-heading h2{margin:0;font-size:21px}.push-dialog-actions{display:grid;gap:10px;margin:20px 0}#pushSettingsDialog button{font:inherit;cursor:pointer;border:1px solid #b5c8d9;border-radius:10px;padding:12px;background:white;color:#18202A}#pushSettingsDialog #pushEnable{background:#17263A;color:white;border-color:#17263A}#pushSettingsDialog #pushClose{border:0;font-size:26px;padding:0 6px}#pushSettingsDialog #pushLater{display:block;margin:8px auto 0;border:0;color:#597389}#pushSettingsDialog button:disabled{opacity:.5}#bookingPushSettings{font-size:13px;margin-left:10px}#pushSettingsDialog .note{font-size:13px;line-height:1.6;color:#597389}
#accountSettingsOpen{position:fixed;right:16px;top:14px;z-index:40;display:grid;place-items:center;width:42px;height:42px;border:1px solid #c8d8e5;border-radius:50%;background:#fffffff2;color:#174967;box-shadow:0 2px 9px #163b5512;cursor:pointer}#accountSettingsDialog{box-sizing:border-box;width:min(460px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto;padding:24px;border:0;border-radius:20px;background:#fff;color:#18202A;box-shadow:0 20px 80px #14334c40}#accountSettingsDialog::backdrop{background:rgba(7,13,21,.62)}.settings-heading{display:flex;justify-content:space-between;align-items:center}.settings-heading h2{margin:0;font-size:22px}#accountSettingsDialog button{font:inherit;padding:10px 14px;border:1px solid #b5c8d9;border-radius:9px;background:white;color:#18202A;cursor:pointer}#accountSettingsDialog #accountSettingsClose{font-size:25px;border:0;padding:0 5px}.account-settings-section{padding:18px 0;border-top:1px solid #e3ebf1;margin-top:18px}.account-settings-section h2{font-size:16px;margin:0 0 12px}#bookingAccountStatus{overflow-wrap:anywhere;font-size:14px}#accountOperatorSection .staff-options{grid-template-columns:1fr 1fr}#homeDate{font-size:13px;margin:10px 0 0;color:#637d93}#homeScreen header{padding-right:66px}#bookingPushSettings{margin-left:8px}

/* /office-components.css */
#staffOfficeScreen{color:#18202A}#staffOfficeScreen .staff-office-body{max-width:1250px;margin:auto;padding:20px}#staffOfficeNav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}#staffOfficeNav button{background:#e5f1f9;color:#15547e}#staffOfficeContent .staff-row{display:flex;gap:12px;align-items:center;border:1px solid #d4e2ee;border-radius:12px;padding:14px;margin:10px 0;background:white}#staffOfficeContent .staff-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}#staffOfficeContent input,#staffOfficeContent select,#staffOfficeContent textarea{font:inherit;width:100%;padding:10px;border:1px solid #bed3e3;border-radius:8px}#staffOfficeContent input[type=checkbox]{width:20px}#staffOfficeContent label{display:block;margin:12px 0 5px}#staffOfficeContent button{min-height:42px;margin:5px;background:#17263A;color:white;border:0;border-radius:8px;padding:10px 14px}#staffOfficeContent button.secondary{background:#e9f3fa;color:#155174}#staffOfficeContent .card{padding:18px;background:white;border:1px solid #d6e5ee;border-radius:14px;margin-bottom:16px}#staffOfficeContent .avatar{width:48px;height:48px;border-radius:50%;object-fit:cover}#staffOfficeContent .metric{font-size:23px;font-weight:bold;color:#a93838}#staffOfficeContent .muted{color:#698094;font-size:13px}#staffOfficeContent table{width:100%;border-collapse:collapse}#staffOfficeContent td,#staffOfficeContent th{padding:9px;border-bottom:1px solid #dde8ef;text-align:left}#staffOfficeContent .scroll{overflow:auto}#staffOfficeContent .warning{padding:12px;background:#fff3dc}#staffOfficeContent .message{padding:12px;margin:8px 0;background:#eef5fa;border-radius:10px}#staffOfficeContent img.evidence{max-width:100%;max-height:320px}
#staffOfficeScreen .brand-header{background:#0B111A;border-bottom:1px solid #bdd4e6}#staffOfficeScreen .brand-inner{display:flex;align-items:center;gap:12px;flex-wrap:wrap;max-width:none;margin:0;padding:12px 20px}#staffOfficeScreen h1{font-size:22px;margin:0}#staffOfficeBack,#staffOfficeNav button{min-height:44px;padding:10px 15px;border:1px solid #a6c6dc;border-radius:9px;color:#174b6e;background:#edf5fb}#staffOfficeStore{width:auto;max-width:240px;min-height:44px;border:1px solid #afc9db;border-radius:9px;padding:8px}#staffOfficeContent .avatar{flex:none;background:#e8f0f5}#staffOfficeContent span.avatar{display:inline-flex;align-items:center;justify-content:center}#staffOfficeContent .staff-row{flex-wrap:wrap}#staffOfficeContent .staff-row>div{flex:1;min-width:180px}#staffOfficeEntry{display:flex;align-items:center;gap:14px;width:100%;margin:16px 0 8px;padding:15px 18px;min-height:58px;border:1px solid #9dbfd4;border-radius:13px;background:#e6f1f8;color:#174b6e;text-align:left}#staffOfficeEntry strong{font-size:17px}#staffOfficeEntry span{font-size:13px}#staffOfficeHomeSummary{display:flex;align-items:center;gap:8px;flex-wrap:wrap}#staffOfficeHomeSummary button{background:#fff2da;color:#7c4b05;border:1px solid #e3c184;border-radius:9px;min-height:44px;padding:9px 13px}

/* /office-layout.css */
#staffOfficeScreen .staff-office-body{max-width:none;width:100%;box-sizing:border-box}
#staffOfficeContent{min-width:0}
#staffOfficeNav button[aria-current=page]{background:#203b53;color:#fff;border-color:#203b53}
#staffOfficeStatus:empty{display:none}
@media(min-width:1000px){
 #staffOfficeScreen .staff-office-body{display:grid;grid-template-columns:184px minmax(0,1fr);grid-template-rows:auto 1fr;gap:0 24px;padding:24px;align-items:start}
 #staffOfficeNav{grid-column:1;grid-row:1/3;display:flex;flex-direction:column;gap:8px;position:sticky;top:20px;background:#f3f7fa;border:1px solid #ccdae5;border-radius:14px;padding:12px}
 #staffOfficeNav button{width:100%;text-align:left;margin:0;min-height:48px;font-size:15px}
 #staffOfficeStatus{grid-column:2;grid-row:1;margin:0 0 12px}
 #staffOfficeContent{grid-column:2;grid-row:2}
}
@media(max-width:999px){#staffOfficeScreen .staff-office-body{padding:14px}#staffOfficeNav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}#staffOfficeNav button{margin:0;padding:10px 6px;font-size:13px;min-width:0}}

#staffOfficeEntry{background:linear-gradient(110deg,#20394f,#355d79);color:#fff;border:0;padding:22px 24px;box-shadow:0 4px 14px #243f561a;gap:18px;margin:22px 0 12px}#staffOfficeEntry .office-entry-icon{font-size:30px;background:#ffffff16;padding:10px 16px;border-radius:13px}#staffOfficeEntry .office-entry-copy{flex:1}#staffOfficeEntry strong{display:block;font-size:21px}#staffOfficeEntry small{display:block;color:#d2e0ed;font-size:14px;margin-top:5px}#staffOfficeEntry>b{font-size:16px;white-space:nowrap}
#staffOfficeScreen .office-brand-logo{width:40px;height:40px;aspect-ratio:1;object-fit:contain;border-radius:7px;flex:none}#staffOfficePrevious{margin-left:auto;min-height:44px;background:#fff;border:1px solid #9bb5c9;border-radius:9px;color:#203c53;padding:10px 16px}
#staffOfficeNav button{padding:16px!important;border-radius:12px}#staffOfficeNav strong{display:block;font-size:17px;line-height:1.5}#staffOfficeNav small{display:block;font-size:12px;line-height:1.6;margin-top:4px;opacity:.85}#staffOfficeNav button[aria-current=page]{box-shadow:inset 4px 0 #84b6d5}
#staffOfficeContent .account-metric{padding:20px;border:1px solid #d5e0e8;border-top:4px solid #537b97;border-radius:13px;background:#f8fafc}#staffOfficeContent .account-metric h3{font-size:15px;margin:0 0 12px;color:#465c6d}#staffOfficeContent .account-metric .metric{font-size:29px;margin:0;color:#223e54}#staffOfficeContent .count-metric{background:#edf4f7;border-top-color:#7596a7}
@media(min-width:1000px){#staffOfficeScreen .staff-office-body{grid-template-columns:250px minmax(0,1fr)}#staffOfficeNav{padding:12px;gap:10px}}
@media(max-width:999px){#staffOfficeNav{grid-template-columns:repeat(2,minmax(0,1fr))}#staffOfficeNav button{padding:12px!important;text-align:left}#staffOfficeNav strong{font-size:15px}#staffOfficeScreen .brand-inner{gap:9px;padding:12px}#staffOfficeScreen h1{font-size:18px}#staffOfficeEntry{padding:17px 14px;gap:12px}#staffOfficeEntry strong{font-size:18px}#staffOfficeEntry .office-entry-icon{padding:8px}#staffOfficeEntry>b{font-size:13px}}
.screen-previous-button{min-height:42px;padding:9px 13px;border:1px solid #9cb9d0;border-radius:9px;background:#eef5fb;color:#214964;font:inherit;font-size:14px;white-space:nowrap}
@media(max-width:720px){
 #bookingScreen{padding-bottom:calc(var(--register-space,0px) + env(safe-area-inset-bottom))}
 #receptionRegisterBar.reception-register-bar.is-saved{position:static;max-width:100%;width:100%;box-sizing:border-box;box-shadow:none;margin:0;grid-column:1 / -1}
 #manualCustomerSmsOpen,#mailCustomerSmsOpen,#manualReceptionSmsOpen,#mailReceptionSmsOpen{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px;box-sizing:border-box;scroll-margin-bottom:160px}
 #manualCustomerSmsOpen[hidden],#mailCustomerSmsOpen[hidden]{display:none}
}
.customer-message-copy{border-color:#9674b5!important;background:#eee4f8!important;color:#593178!important}
#manualCustomerSmsOpen,#mailCustomerSmsOpen,#manualReceptionSmsOpen,#mailReceptionSmsOpen{display:inline-flex;padding:12px;border:1px solid #bc852e;border-radius:8px;background:#fff0d4;color:#704610;text-decoration:none;font-weight:700}
#manualCustomerSmsOpen[hidden],#mailCustomerSmsOpen[hidden]{display:none}

.customer-sms-link-source{display:none!important}.customer-sms-open{display:block;width:100%;min-height:48px;margin-top:10px;background:#fff0d4!important;border:1px solid #bc852e!important;color:#704610!important;font-weight:700}.customer-sms-open:disabled{opacity:.45;cursor:not-allowed}

#staffOfficeScreen .office-header-actions{margin-left:auto;display:flex;gap:8px;align-items:center;flex-wrap:wrap}#staffOfficeScreen .office-header-actions button{margin:0;min-height:44px;border:1px solid #8eaec5;border-radius:9px;padding:10px 13px;font:inherit;font-size:14px;cursor:pointer}#staffOfficeReload{background:#e6f1fb;color:#174d77}#staffOfficeClearCache{background:#fff0d9;color:#795114;border-color:#d4b06d!important}#staffOfficeScreen .office-header-actions button:active{transform:translateY(1px);filter:brightness(.9)}#staffOfficeScreen .office-header-actions button:disabled{opacity:.5;cursor:wait}@media(max-width:600px){#staffOfficeScreen .office-header-actions{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}#staffOfficeScreen .office-header-actions button{padding:10px 5px;font-size:12px;white-space:normal}}
.account-legend{margin:20px 0 12px;padding:12px;background:#f0f4f8;border-radius:9px;font-size:14px;line-height:1.8}.account-metric.tone-profit,.account-detail.tone-profit{--tone:#23744f;--tint:#eaf6ef}.account-metric.tone-staff{--tone:#7551a4;--tint:#f2edfa}.account-metric.tone-customer,.account-detail.tone-customer{--tone:#246699;--tint:#edf5fc}.account-metric.tone-discount{--tone:#b44555;--tint:#fff0f2}.account-metric.tone-expense{--tone:#9b641f;--tint:#fff4e4}#staffOfficeContent .account-metric[class*=tone-]{background:var(--tint);border-top-color:var(--tone)}#staffOfficeContent .account-metric[class*=tone-] h3,#staffOfficeContent .account-metric[class*=tone-] .metric{color:var(--tone)}.account-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px}.account-detail{border:1px solid #d3e0e9;border-top:4px solid var(--tone);border-radius:12px;padding:18px;background:#fff;min-width:0}.account-detail h3{margin:0 0 14px;color:var(--tone)}.account-detail h3:not(:first-child){margin-top:24px}.account-line{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid #e1e7ed}.account-line strong{white-space:nowrap}.discount-line{color:#b44555}.account-line:last-child{font-size:19px;font-weight:700}.account-detail td{white-space:nowrap}#staffOfficeNav [data-tab=attention]{--nav:#8c5e21;--nav-bg:#fff1dc}#staffOfficeNav [data-tab=staff]{--nav:#71529c;--nav-bg:#f1eafa}#staffOfficeNav [data-tab=chat]{--nav:#246a9c;--nav-bg:#e8f3fc}#staffOfficeNav [data-tab=announcements]{--nav:#99603b;--nav-bg:#fbede3}#staffOfficeNav [data-tab=accounting]{--nav:#26704f;--nav-bg:#e8f5ed}#staffOfficeNav [data-tab=audit]{--nav:#536675;--nav-bg:#edf1f4}#staffOfficeNav button[data-tab]{background:var(--nav-bg);color:var(--nav);border:1px solid var(--nav)}#staffOfficeNav button[data-tab][aria-current=page]{background:var(--nav);color:#fff;box-shadow:inset 4px 0 #ffffff99}@media(max-width:850px){.account-detail-grid{grid-template-columns:1fr}}

@media(min-width:1101px){#homeScreen .menu-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
/* Unified management home: one menu, full-width work area. */
#staffOfficeNav{display:none!important}
#staffOfficeScreen .staff-office-body{display:block!important;max-width:1800px!important;margin:auto!important;padding:20px!important}
#staffOfficeStatus,#staffOfficeContent{grid-column:auto;grid-row:auto}
#homeScreen .menu-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}
#homeScreen .menu-button{min-height:100px!important;box-sizing:border-box}






#staffOfficeHomeSummary{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;margin:18px 0 26px}
#staffOfficeHomeSummary button{display:grid;grid-template-columns:1fr auto;gap:6px 14px;text-align:left;margin:0!important;padding:16px 20px!important;width:100%;box-sizing:border-box}
#staffOfficeHomeSummary strong{font-size:19px}#staffOfficeHomeSummary span{font-size:23px;font-weight:700}#staffOfficeHomeSummary small{grid-column:1/-1;font-size:13px}
#staffOfficeHomeSummary [data-summary=unsettled]{background:#f2edfa;color:#6d4d8c;border-color:#bea8cf}
.page-loading{min-height:200px}.page-loading p:before{content:'';display:inline-block;width:14px;height:14px;margin-right:10px;border:2px solid #c5d5e4;border-top-color:#235d8a;border-radius:50%;animation:office-spin 1s linear infinite}
@keyframes office-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.page-loading p:before{animation:none}}
@media(max-width:600px){#homeScreen .menu-grid{gap:8px!important}#homeScreen .menu-button{padding:12px 7px!important;display:flex;flex-direction:column;align-items:flex-start;gap:8px!important}#homeScreen .menu-name{font-size:14px!important}#homeScreen .menu-description{font-size:11px!important}#staffOfficeScreen .staff-office-body{padding:12px!important}}
#officeHomeNotices{margin:20px 0;background:#fff;border:1px solid #cbd9e5;border-radius:14px;padding:18px;min-width:0;box-sizing:border-box}.notice-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.notice-heading h2{margin:0;font-size:19px}.notice-heading button{padding:8px 12px;border:1px solid #96b0c4;background:#edf4fa;color:#234e71;border-radius:8px}.notice-items{margin-top:14px}.notice-item{display:block;text-align:left;width:100%;padding:14px 4px;margin:0;border:0;border-bottom:1px solid #dce4eb;background:white;color:#24465e;cursor:pointer}.notice-item time{display:block;color:#667b8c;font-size:12px;margin-top:5px}.notice-item p{white-space:pre-line;line-height:1.6;font-size:14px;margin:9px 0}.notice-item small{color:#2e6b98}.notice-item.urgent{border-left:4px solid #b45c44;padding-left:10px}.notice-item:hover{background:#f0f6fb}.notice-item:active{background:#dfeef8}
@media(min-width:1101px){#homeScreen>.content{display:grid;grid-template-columns:minmax(0,1fr) 340px;column-gap:26px;align-items:start}#homeScreen>.content>*{grid-column:1}#homeScreen>.content>#officeHomeNotices{grid-column:2;grid-row:1/20;position:sticky;top:18px;max-height:calc(100vh - 40px);overflow-y:auto;margin:0}#homeScreen>.content>.menu-grid{grid-column:1}}
#staffOfficeScreen .compact-page-header .brand-inner{min-height:66px;padding:10px 20px;gap:12px}#staffOfficeScreen .office-brand-logo{width:40px!important;height:40px!important;flex:none;object-fit:contain;border-radius:6px}#staffOfficeScreen .compact-page-header h1{font-size:22px;line-height:1.2;margin:0}#staffOfficeScreen #staffOfficeBack,#staffOfficeScreen #staffOfficePrevious{min-height:34px;padding:6px 10px;font-size:12px}#staffOfficeScreen .office-header-actions button{min-height:34px;padding:6px 10px;font-size:12px}@media(max-width:720px){#staffOfficeScreen .compact-page-header .brand-inner{padding:8px 10px;gap:8px}#staffOfficeScreen .office-brand-logo{width:34px!important;height:34px!important}#staffOfficeScreen .compact-page-header h1{font-size:18px}}

#officeHomeNotices .notice-category{border:1px solid #d6e0e8;border-radius:10px;margin:10px 0;background:white;overflow:hidden}#officeHomeNotices summary{cursor:pointer;padding:14px 10px;color:#243d55;min-height:48px}#officeHomeNotices summary span{float:right;border-radius:20px;padding:2px 9px;background:#e6edf4;font-size:12px}#officeHomeNotices .notice-category-actions{display:flex;align-items:center;justify-content:space-between;padding:8px;gap:6px;background:#f5f7fa}#officeHomeNotices .notice-category-actions small{font-size:11px}#officeHomeNotices [data-dismiss-category]{font-size:12px;min-height:38px;background:#f5eeee;color:#914044;border:1px solid #dcbaba;border-radius:8px;padding:6px}#officeHomeNotices .notice-item{border-radius:0;border-width:0 0 1px;margin:0}@media(max-width:1100px){#officeHomeNotices{display:none!important}}

/* Match the original office header, including its dark logo plate. */
#staffOfficeScreen .office-heading-copy{min-width:0}#staffOfficeScreen .compact-page-header .logo-plate{width:48px;height:48px;padding:3px;flex:none}#staffOfficeScreen .logo-plate .office-brand-logo{width:100%!important;height:100%!important;border-radius:0}#staffOfficeScreen .compact-page-header .brand-inner{min-height:76px;padding:10px 20px;gap:14px}.compact-page-header .route-logo{background:linear-gradient(145deg,#132b47,#080f1b 55%,#020305);border:1px solid #91abc5;border-radius:7px;padding:3px;box-sizing:border-box}#staffOfficeScreen .office-heading-copy .eyebrow{font-size:9px;margin-bottom:3px;letter-spacing:.15em;font-weight:800;color:#236799}#staffOfficeScreen .office-heading-copy .subtitle{font-size:11px;line-height:1.4;margin:4px 0 0;color:#61778c}#staffOfficeScreen .office-header-actions{margin-left:auto}@media(max-width:720px){#staffOfficeScreen .compact-page-header .brand-inner{flex-wrap:wrap;min-height:66px;padding:8px 10px;gap:8px}#staffOfficeScreen .compact-page-header .logo-plate{width:34px;height:34px}#staffOfficeScreen .office-heading-copy{flex:1}#staffOfficeScreen .office-header-actions{display:flex;justify-content:flex-end;gap:6px;width:100%}#staffOfficeScreen .office-heading-copy .subtitle{font-size:10px}}

.training-entry{display:inline-block;padding:12px 16px;border:1px solid #bd934c;border-radius:9px;background:#fff3dc;color:#75501c;font-weight:700;text-decoration:none}

.boy-app-preview{width:min(1000px,96vw);height:92dvh;max-height:94dvh;padding:0;border:1px solid #9fb5c7;border-radius:12px}.boy-app-preview::backdrop{background:#14283b99}.boy-app-preview .preview-tools{display:flex;justify-content:space-between;align-items:center;padding:8px 14px;background:#dfeef7;gap:10px}.boy-app-preview .preview-tools button{min-height:44px;padding:8px 20px}.boy-app-preview iframe{width:100%;height:calc(100% - 62px);border:0}
/* Compact TOP: header spans the window; the rail belongs to the work area. */
#homeScreen .brand-inner{padding-right:80px;gap:16px;flex-wrap:wrap}
#homeScreen .home-operator-icon{margin-left:auto;min-height:36px;padding:8px 12px;border:1px solid #9db7ca;border-radius:8px;background:#edf5fb;color:#214f70;font:inherit;font-size:13px}
#staffOfficeHomeSummary{grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:start!important;gap:12px!important;margin:16px 0 22px}
#staffOfficeHomeSummary>button,#arrivalLoad{min-height:88px!important;padding:14px 16px!important;border-radius:12px!important}
#staffOfficeHomeSummary strong{font-size:16px}#staffOfficeHomeSummary span{font-size:21px}#staffOfficeHomeSummary small{font-size:12px;line-height:1.5}
#arrivalQuick{min-width:0;position:relative}#staffOfficeHomeSummary #arrivalLoad{background:#dcefeb;color:#236255;border:1px solid #85b7a9}
.arrival-choices{background:#eaf5f0;border:1px solid #9bbeb2;border-radius:10px;padding:12px;margin-top:8px;font-size:14px;line-height:1.6}.arrival-choices[hidden]{display:none!important}.arrival-choices select{display:block;width:100%;box-sizing:border-box;min-height:42px;margin-top:6px;border:1px solid #93b3a5;border-radius:7px;background:white;color:#204d40;font:inherit}.arrival-choices #sendArrival{display:block!important;background:#2a6e5c!important;color:white!important;min-height:42px;margin-top:10px!important;font:inherit!important}.arrival-choices p{margin:8px 0 0}
.office-calendar-toolbar{display:inline-flex;margin:14px 12px 4px 0;gap:10px}.office-calendar-toolbar button,.office-month-nav button{min-height:40px;padding:8px 14px;border:1px solid #a5bed2;background:#eff5fa;color:#204f72;border-radius:8px;font:inherit;cursor:pointer}.office-calendar-toolbar button[aria-pressed=true]{background:#234e70;color:white;border-color:#234e70}.office-calendar-toolbar [role=group]{display:flex;gap:6px}
#weekBoard[hidden],.office-month[hidden]{display:none!important}.office-month-nav{display:flex;align-items:center;gap:12px;margin:16px 0}.office-month-nav strong{font-size:19px}.office-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.office-month-grid .weekday{text-align:center;padding:8px;color:#647b8d;font-size:13px}.office-month-grid button{min-height:78px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:1px solid #d3e0eb;background:#f1f5f9;border-radius:9px;color:#20465e;font:inherit;cursor:pointer}.office-month-grid button[aria-pressed=true]{outline:2px solid #316d99;outline-offset:-2px;background:#deedf8}.office-month-grid .is-today{background:#213e55;color:white}.office-month-grid .is-today[aria-pressed=true]{background:#213e55;outline-color:#80b8df}.calendar-count{background:#bc3545;color:white;border-radius:20px;min-width:24px;padding:3px 6px;font-size:13px;line-height:1.2}.office-month-grid small{font-size:10px}.office-month-detail{margin-top:16px;border-top:1px solid #d2dee8;padding-top:10px}.office-month-detail h3{font-size:16px}.office-month-detail button{display:block;text-align:left;width:100%;border:1px solid #c2d3e1;border-radius:9px;padding:12px;margin:8px 0;background:#edf5fb;color:#25465e;cursor:pointer}.office-month-detail button span{display:block;margin-top:6px;font-size:13px}
@media(max-width:700px){#staffOfficeHomeSummary{gap:6px!important}#staffOfficeHomeSummary>button,#arrivalLoad{padding:10px 8px!important;min-height:92px!important;grid-template-columns:1fr;gap:5px}#staffOfficeHomeSummary strong{font-size:13px}#staffOfficeHomeSummary span{font-size:18px}#staffOfficeHomeSummary small{display:none}#arrivalQuick:has(.arrival-choices:not([hidden])){grid-column:1/-1}#arrivalQuick:has(.arrival-choices:not([hidden])) #arrivalLoad{min-height:48px!important;grid-template-columns:1fr auto}#homeScreen .home-operator-icon{margin-left:0}.office-month-grid{gap:3px}.office-month-grid button{min-height:65px;padding:6px 2px;font-size:14px}.office-month-nav{gap:7px;flex-wrap:wrap}.office-month-nav button{padding:8px 12px}}
#homeScreen .office-calendar-toolbar button[aria-pressed=true]{background:#234e70!important;color:#fff!important;border-color:#234e70!important}
#homeScreen .office-month-grid button{background:#f1f5f9!important;min-height:66px}
#homeScreen .office-month-grid button[aria-pressed=true]{background:#deedf8!important}
#homeScreen .office-month-grid .is-today,#homeScreen .office-month-grid .is-today[aria-pressed=true]{background:#213e55!important;color:white!important}
@media(min-width:1101px){#homeScreen .week-board{grid-template-columns:repeat(7,minmax(0,1fr));overflow:visible}#homeScreen .week-board>*{min-width:0}#homeScreen .week-board button{white-space:normal;overflow-wrap:anywhere;text-align:left}}
.task-page-guide{font-size:14px;line-height:1.7;color:#526779}.task-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:14px}.office-task{border:1px solid #bed1e0;border-top:4px solid #477fa6;border-radius:12px;padding:16px;background:#f5f9fc;min-width:0}.office-task h4{font-size:17px;margin:0 0 12px;color:#22557b}.office-task.needs-action{border-top-color:#b17622;background:#fff9ef}.office-task.needs-action h4{color:#875817}.office-task p{line-height:1.7;font-size:14px}.task-context{font-size:12px!important;color:#586e80}.task-next{padding:12px;background:#e5eff7;border-radius:8px}.task-next>strong{font-size:13px}.task-next p{margin:6px 0 0}.task-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.task-actions button{margin:0!important;flex:1;min-width:130px}.settlement-task{background:#f3eff9;border-top-color:#8165a5}.settlement-task h4{color:#634a8b}.task-money{padding:12px;border-radius:8px;background:#e7ddf3}.task-money span{display:block;font-size:14px}.task-money strong{font-size:25px;display:block;margin-top:5px}.arrival-status{padding:10px;margin:10px 0;border:1px solid #8fb9a9;background:#e6f3ed;border-radius:8px;font-size:13px}.arrival-status p{margin:6px 0!important}.arrival-summary{padding:9px;border-radius:8px;background:#e4f4ec;color:#255e4a;font-weight:600}
.office-notification-result{width:min(420px,90vw);box-sizing:border-box;border:1px solid #9bbbad;border-radius:16px;padding:24px;color:#234b3d}.office-notification-result::backdrop{background:#17324766}.office-notification-result p{line-height:1.8}.office-notification-result button{width:100%;min-height:44px;background:#267057;color:white;border:0;border-radius:9px;font:inherit}
/* Readable sizes on desktop and phones; preserve the existing visual hierarchy. */
body{font-size:16px}
.screen .content{font-size:16px;line-height:1.65}
.screen .content label{font-size:15px}
.screen .content :is(input,select,textarea){font-size:16px}
#staffOfficeContent{font-size:16px;line-height:1.65}
#staffOfficeContent button{font-size:15px}
#staffOfficeContent .muted,.task-page-guide,.office-task p{font-size:15px}
#staffOfficeContent .task-context{font-size:14px!important}
#staffOfficeContent table{font-size:15px}
.brand-inner .title,#staffOfficeScreen h1{font-size:24px}
#staffOfficeScreen .office-heading-copy .subtitle,.brand-inner .subtitle{font-size:13px}
#homeScreen .week-booking-row{font-size:15px;line-height:1.6;gap:6px;align-items:flex-start}
#staffOfficeHomeSummary small{font-size:13px}
#officeHomeNotices{font-size:14px}
#officeHomeNotices h2{font-size:17px}
.schedule-state,.office-month-detail button span.schedule-state{display:inline-flex!important;align-items:center;justify-content:center;flex:0 0 24px;width:24px;height:24px;min-width:24px;padding:0;margin:0 6px 0 0;border-radius:5px;color:#fff!important;font-size:15px!important;font-weight:800;line-height:1;vertical-align:middle}
.schedule-state.state-finished{background:transparent!important}
.schedule-state.state-active{background:transparent!important}
.schedule-state.state-late{background:transparent!important}
@media(max-width:720px){.brand-inner .title,#staffOfficeScreen h1{font-size:21px}#staffOfficeHomeSummary strong{font-size:14px}#staffOfficeContent table{font-size:14px}.office-month-detail button{font-size:16px}#homeScreen .week-booking-row{font-size:16px}}

.operation-waiting{position:fixed;bottom:12px;left:12px;max-width:min(420px,calc(100vw - 24px));padding:12px 16px;box-sizing:border-box;border:1px solid #b28c3e;border-radius:9px;background:#fff4d9;color:#684c15;box-shadow:0 3px 12px #17253622;font-size:14px;line-height:1.6;z-index:300;pointer-events:none}
#homeScreen #weekBoard .week-day{padding:6px 8px}
#homeScreen #weekBoard .week-day h3{white-space:normal;overflow-wrap:anywhere;font-size:14px}
#homeScreen #weekBoard .week-booking-row{flex-wrap:wrap;gap:4px;align-items:center}
#homeScreen #weekBoard .week-booking-row span:not(.schedule-state){flex:none;white-space:normal}
#homeScreen #weekBoard .week-booking-row span:last-child{flex-basis:100%;overflow-wrap:anywhere;line-height:1.6}
@media(max-width:700px){#staffOfficeHomeSummary>button,#staffOfficeHomeSummary #arrivalLoad{display:flex!important;flex-direction:column;align-items:flex-start;justify-content:flex-start;min-height:106px!important;width:100%;gap:8px}#staffOfficeHomeSummary strong{display:block;width:100%;line-height:1.6;overflow-wrap:normal;word-break:normal}#staffOfficeHomeSummary #arrivalLoad>span{display:none}}
/* Readability pass: override legacy compact labels, including mobile rules. */
#homeScreen .menu-name{font-size:18px!important;line-height:1.5}
#homeScreen .menu-description{font-size:14px!important;line-height:1.6}
#homeScreen .home-operator-icon,#homeScreen #staffOfficeHomeSummary small{font-size:15px}
#staffOfficeScreen #staffOfficeContent{font-size:17px;line-height:1.65}
#staffOfficeScreen #staffOfficeContent .muted,#staffOfficeContent small,#staffOfficeContent label,#staffOfficeContent .task-context{font-size:15px!important}
#staffOfficeContent button,#staffOfficeContent input,#staffOfficeContent select,#staffOfficeContent textarea,#bookingScreen label,#bookingScreen input,#bookingScreen select,#bookingScreen textarea,#bookingScreen button{font-size:16px}
#staffOfficeScreen .office-header-actions button,#staffOfficeScreen #staffOfficeBack,#staffOfficeScreen #staffOfficePrevious{font-size:14px}
#staffOfficeContent .office-task p,#staffOfficeContent .task-next>strong{font-size:16px}
#officeHomeNotices .notice-item p,#officeHomeNotices summary{font-size:16px}
#officeHomeNotices .notice-item time,#officeHomeNotices .notice-category-actions small{font-size:14px}
/* One booking per line; preserve text and scroll the week instead of wrapping. */
#homeScreen #weekBoard{grid-template-columns:repeat(7,minmax(max-content,1fr));overflow-x:auto;max-width:100%;min-width:0}
#homeScreen #weekBoard .week-day{min-width:220px;padding:6px 12px}
#homeScreen #weekBoard .week-day h3{font-size:16px;white-space:nowrap}
#homeScreen #weekBoard .week-booking-row{flex-wrap:nowrap;gap:7px;font-size:16px;line-height:1.6;white-space:nowrap;overflow-wrap:normal}
#homeScreen #weekBoard .week-booking-row span:not(.schedule-state){flex:0 0 auto;white-space:nowrap;overflow-wrap:normal}
#homeScreen #weekBoard .week-booking-row span:last-child{flex-basis:auto;white-space:nowrap;overflow-wrap:normal}

.office-icon-preview{display:block;width:96px;height:96px;object-fit:cover;border-radius:50%;margin:16px 0;border:2px solid #bed1df}.office-icon-preview[hidden]{display:none}.operator-avatar{width:30px;height:30px;border-radius:50%;object-fit:cover;vertical-align:middle;margin-right:8px}

/* /office-work-tabs.css */
#officeWorkTabs[hidden],#officeWorkTabs iframe[hidden]{display:none!important}#officeWorkTabs{position:fixed;inset:0;background:#eef4f9;z-index:240;display:flex;flex-direction:column;color:#163e5b}body.office-work-open{overflow:hidden}body.office-work-open>#officeSideRail,body.office-work-open>.mobile-phone-tab{display:none!important}.work-toolbar{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#dfeef7;border-bottom:1px solid #b8cedf}.work-toolbar nav{display:flex;gap:7px;overflow-x:auto}.work-toolbar button{flex:none;background:#fff;color:#174b6e;border:1px solid #abc5d8;border-radius:7px;padding:9px 12px;min-height:42px;font:600 15px system-ui;white-space:nowrap}.work-tabstrip{display:flex;gap:5px;padding:8px 12px 0;overflow-x:auto;background:#eaf1f7;flex-shrink:0}.work-tab{display:flex;flex:none;border:1px solid #aec6d7;border-radius:9px 9px 0 0;overflow:hidden;background:#fff}.work-tab button{border:0;margin:0;border-radius:0;background:transparent;color:#234f70;padding:10px 12px;font:600 15px system-ui;min-height:44px;white-space:nowrap}.work-tab button[aria-selected=true]{background:#164f79;color:#fff}.work-tab .work-tab-close{padding:8px 12px;font-size:21px}.work-tab button:focus-visible,.work-toolbar button:focus-visible{outline:3px solid #d89124;outline-offset:-3px}.work-frames{flex:1;min-height:0}.work-frames iframe{display:block;width:100%;height:100%;border:0;background:#eef4f9}.work-close-dialog{border:1px solid #a8bfd0;border-radius:12px;max-width:400px;padding:24px}.work-close-dialog button{padding:10px 18px;margin:8px;border-radius:7px;border:1px solid #9dbacf;background:#edf5fb;color:#163e5b}.work-close-dialog::backdrop{background:#142c4666}@media(max-width:720px){.work-toolbar{gap:6px;padding:6px}.work-toolbar button{font-size:14px;padding:8px}.work-tabstrip{padding:5px 6px 0}.work-tab button{font-size:14px}.work-tab .work-tab-close{font-size:20px}}
.work-toolbar .work-menu-toggle{display:none}@media(max-width:720px){.work-toolbar{flex-wrap:wrap}.work-toolbar .work-menu-toggle{display:block;margin-left:auto}.work-toolbar nav{display:none;flex-basis:100%;flex-wrap:wrap;max-height:45vh;overflow-y:auto}.work-menu-open .work-toolbar nav{display:flex}.work-toolbar nav button{flex:1 0 40%}.work-tabstrip{display:none}.work-menu-open .work-tabstrip{display:flex;max-height:22vh;overflow-y:auto;flex-direction:column;padding-bottom:6px}.work-menu-open .work-tabstrip::before{content:'開いている作業';font-size:13px;padding:4px;color:#36566d}.work-menu-open .work-tab{border-radius:7px}.work-menu-open .work-tab [role=tab]{flex:1;text-align:left}}
.work-toolbar nav button,.work-tab{background:var(--work-bg,#edf1f8);color:var(--work-ink,#354b68);border-color:var(--work-edge,#8293aa)}.work-tab button{color:var(--work-ink,#354b68)}.work-tab button[aria-selected=true]{background:var(--work-bg,#edf1f8);color:var(--work-ink,#354b68);box-shadow:inset 0 -4px 0 var(--work-ink,#354b68);font-weight:800}.work-tab:has([aria-selected=true]){border-width:2px}.work-toolbar nav button:hover{filter:brightness(.95)}

/* /shared-chat.css */
.dg-chat{--ink:#172536;--line:#d6e0e8;display:grid;grid-template-columns:1fr;min-height:360px;background:#f1f4f7;color:var(--ink);border:1px solid var(--line);border-radius:16px;overflow:hidden}.dg-chat *{box-sizing:border-box}.dg-chat button{font:inherit;cursor:pointer;border:1px solid #bfceda;background:#e5edf4;color:#1f3d55;border-radius:10px;padding:10px 14px;min-height:44px;margin:0}.dg-chat button:active{background:#b9cddd;transform:translateY(1px)}.dg-chat button:focus-visible{outline:3px solid #648aa8;outline-offset:2px}.dg-chat button:disabled{opacity:.5}.dg-chat h2{font-size:18px;margin:0}.dg-chat-list{overflow:auto;background:white;padding:14px}.dg-chat-list header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.dg-chat input,.dg-chat select{padding:12px;border:1px solid var(--line);border-radius:10px;font:inherit;margin-bottom:8px;width:100%}.dg-chat .dg-chat-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;width:100%;text-align:left;background:white;border:0;border-radius:0;border-bottom:1px solid #e6edf2;padding:15px 4px;align-items:center}.dg-chat-row.selected{background:#e7eef5}.dg-chat-row strong,.dg-chat-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dg-chat-row small{color:#667584;margin-top:6px;font-size:13px}.dg-chat-row time{font-size:11px;color:#687782}.dg-chat-unread{display:block;background:#294d6b;color:white;width:25px;height:25px;text-align:center;border-radius:50%;margin:6px 0 0 auto;font-size:12px;padding:4px}.dg-chat-avatar{border-radius:50%;width:38px;height:38px;display:flex;align-items:center;justify-content:center;flex:none;background:#dce5ed;color:#2b475e;font-weight:600;overflow:hidden}.dg-chat-avatar img{width:100%;height:100%;object-fit:cover}.dg-chat-talk{display:none;min-height:0;min-width:0;grid-template-rows:auto auto auto minmax(0,1fr) auto;overflow:hidden}.dg-chat.talk-open .dg-chat-list{display:none}.dg-chat.talk-open .dg-chat-talk{display:grid}.dg-chat-heading{display:flex;align-items:center;gap:10px;padding:12px;background:#172536;color:#fff}.dg-chat-heading h2{flex:1;font-size:16px;overflow:hidden;text-overflow:ellipsis}.dg-chat-heading button{font-size:12px;padding:6px 10px;min-height:38px}.dg-chat-booking{padding:10px 14px;background:#e1eaf2;border-bottom:1px solid #cbd8e3;display:flex;gap:8px;align-items:center;font-size:12px}.dg-chat-booking span{flex:1}.dg-chat-booking button{padding:7px;font-size:12px}.dg-chat [hidden]{display:none!important}.dg-chat-scroll{overflow:auto;overscroll-behavior:contain;padding:16px;scrollbar-gutter:stable;overflow-anchor:none;min-height:0}.dg-chat-message{display:flex;align-items:flex-start;gap:8px;margin:12px 0;background:none;border:0;padding:0}.dg-chat-message.own{flex-direction:row-reverse}.dg-chat-body{max-width:78%;min-width:0}.dg-chat-sender{display:block;font-size:12px;margin-bottom:5px;color:#53677a}.dg-chat-bubble{background:white;border-radius:3px 16px 16px 16px;padding:11px 14px;box-shadow:0 1px 2px #17253612;overflow-wrap:anywhere}.own .dg-chat-bubble{background:#d9e6f1;border-radius:16px 3px 16px 16px}.dg-chat-bubble p{margin:0;white-space:normal;font-size:15px;line-height:1.6}.dg-chat-meta{display:flex;align-items:center;gap:8px;color:#607282;font-size:11px;margin-top:5px}.own .dg-chat-meta{justify-content:flex-end}.dg-chat .dg-chat-meta button{padding:2px 4px;border:0;background:none;font-size:11px;min-height:28px}.dg-chat-image{padding:0!important;border:0!important;background:transparent!important;display:block}.dg-chat-bubble img{max-width:100%;max-height:280px;border-radius:8px;object-fit:contain}.dg-chat-compose{background:white;border-top:1px solid var(--line);padding:10px 12px max(10px,env(safe-area-inset-bottom))}.dg-chat-input{display:flex;gap:8px;align-items:flex-end}.dg-chat-input textarea{flex:1;min-width:0;font:inherit;font-size:16px;min-height:46px;max-height:120px;resize:none;border:1px solid var(--line);border-radius:12px;padding:12px;background:#f5f7f9;color:#172536}.dg-chat-input [data-send]{background:#244966;color:white}.dg-chat-error{background:#fff1df;color:#70481d;padding:8px 14px;font-size:13px}.dg-chat-emergency{display:block;color:#8c3f28;font-size:13px;margin-bottom:6px}.emergency .dg-chat-bubble{border-left:3px solid #ad6848}.dg-chat-message.highlight .dg-chat-bubble{outline:3px solid #b9934e}.dg-chat [data-attachments]{display:flex;gap:6px;flex-wrap:wrap;padding-bottom:10px}.dg-chat [data-preview]{font-size:12px;margin-bottom:8px}.dg-chat [data-latest]{position:sticky;bottom:5px;display:block;margin:auto;background:#244966;color:white}.dg-chat-modal{border:1px solid #d6e0e8;border-radius:16px;max-width:min(92vw,700px);max-height:90dvh;padding:20px;color:#172536}.dg-chat-modal::backdrop{background:#13253588}.dg-chat-modal>img{display:block;max-width:100%;max-height:75dvh}.dg-chat-modal iframe{width:75vw;max-width:640px;height:70dvh;border:0}.dg-chat-modal button{min-height:44px;padding:10px 15px;border:1px solid #bfcdda;border-radius:9px;background:#e5edf4;color:#172536}.dg-chat-empty{padding:20px;color:#607282}
@media(min-width:900px){.dg-chat.office{grid-template-columns:320px minmax(0,1fr)}.dg-chat.office .dg-chat-list,.dg-chat.office.talk-open .dg-chat-list{display:block;border-right:1px solid var(--line)}.dg-chat.office .dg-chat-talk{display:grid}.dg-chat.office [data-back]{display:none}}
@media(max-width:380px){.dg-chat-scroll{padding:10px 8px}.dg-chat-body{max-width:81%}.dg-chat-avatar{width:30px;height:30px}.dg-chat-heading{gap:6px;padding:9px}.dg-chat-input{gap:5px}.dg-chat-input button{padding:10px}.dg-chat-compose{padding-left:8px;padding-right:8px}}
/* Override legacy office controls only within the shared chat. */
#staffOfficeContent .dg-chat button{margin:0}#staffOfficeContent .dg-chat .dg-chat-row{background:white;color:#172536}#staffOfficeContent .dg-chat .dg-chat-meta button{background:none;color:#607282}#staffOfficeContent .dg-chat input,#staffOfficeContent .dg-chat textarea{width:auto}#staffOfficeContent .dg-chat [data-search]{width:100%}#staffOfficeContent .dg-chat [data-send]{background:#244966;color:white}
.dg-chat-heading{grid-row:1}.dg-chat-booking{grid-row:2}.dg-chat-error{grid-row:3}.dg-chat-scroll{grid-row:4}.dg-chat-compose{grid-row:5}
.dg-chat-image img{width:240px;aspect-ratio:4/3;object-fit:contain}.dg-chat-meta button:hover{text-decoration:underline}
.dg-chat{min-height:0}.dg-chat-keyboard #navigation{display:none}.dg-keyboard-open .dg-chat-heading{padding:6px 10px}.dg-keyboard-open .dg-chat-booking{padding:5px 10px}.dg-keyboard-open .dg-chat-compose{padding:6px 8px}.dg-keyboard-open .dg-chat-input textarea{max-height:76px}.dg-keyboard-open .dg-chat-scroll{padding:8px 12px}

.dg-contact-hint{font-size:13px;color:#607282;margin:10px 0;line-height:1.6}#staffOfficeContent .dg-chat .dg-contact-row.selected{background:#e4eef7;border-left:3px solid #315b7c}.dg-contact-row:hover{background:#f1f5f9!important}

/* Shared member directory and conversation tabs. */
.dg-chat-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:0 0 14px}.dg-chat .dg-chat-tabs button{background:#edf1f5;color:#42576a;font-weight:700;border:1px solid #d6e0e8}.dg-chat .dg-chat-tabs button[aria-selected="true"]{background:#243d55;color:white;border-color:#243d55}.dg-chat-tabs [data-total]{display:inline-block;border-radius:12px;background:#b13c4c;color:white;padding:2px 7px;font-size:11px;margin-left:4px}.dg-chat-section-title{font-size:14px;padding:12px 3px 8px;border-bottom:1px solid #d6e0e8;margin:8px 0;color:#42576a}.dg-chat-section-title small{font-weight:400;margin-left:6px}.dg-chat-new{display:inline-block;color:#a22e43;font-size:10px;font-weight:700;margin-top:5px}.dg-chat-row-state{text-align:right}.dg-chat-unread{display:inline-block;min-width:25px;width:auto;border-radius:20px;margin-left:5px;padding:4px 7px;background:#b13c4c}.dg-chat-list .dg-chat-tabs{position:sticky;top:0;z-index:1;background:white;padding:4px 0}.dg-chat-row-state time{display:block}
#staffOfficeContent .dg-chat .dg-chat-tabs button{background:#edf1f5!important;color:#42576a!important;border:1px solid #d6e0e8!important}#staffOfficeContent .dg-chat .dg-chat-tabs button[aria-selected="true"]{background:#243d55!important;color:#fff!important;border-color:#243d55!important}

.dg-chat .dg-chat-bubble{font-size:17px;line-height:1.7}
.dg-chat .dg-chat-row small,.dg-chat .dg-chat-booking,.dg-chat .dg-chat-heading button,.dg-chat .dg-chat-booking button{font-size:14px}
.dg-chat .dg-chat-heading h2{font-size:18px;color:#FFFFFF!important}
.dg-chat .dg-chat-row time{font-size:13px}
/* Custom image stamps: both office and staff share the same picker and transport. */
.dg-chat-modal.dg-stamp-picker{width:min(560px,calc(100vw - 24px));max-height:85dvh;box-sizing:border-box;overflow:hidden;padding:16px;background:#fff;color:#18202A}
.dg-stamp-picker h2{margin:0 0 8px}.dg-stamp-picker>p{font-size:14px;margin:8px 0}.dg-stamp-tabs{display:flex;gap:6px;border-bottom:1px solid #D7DDE4;padding:6px 0}
.dg-stamp-picker .dg-stamp-tabs button{display:flex;align-items:center;gap:6px;background:#F4F6F8;color:#18202A;border:1px solid #5F7F9F;padding:5px 10px;border-radius:8px;font-size:14px}.dg-stamp-picker .dg-stamp-tabs button[aria-selected=true]{background:#17263A;color:white}.dg-stamp-tabs img{width:34px;height:34px;object-fit:contain}
.dg-stamp-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;max-height:calc(85dvh - 190px);overflow-y:auto;overscroll-behavior:contain;padding:8px 0}
.dg-stamp-picker .dg-stamp-grid button{padding:4px;min-width:0;background:#fff;border:1px solid #E8ECF0;border-radius:10px;cursor:pointer}.dg-stamp-picker .dg-stamp-grid button:hover,.dg-stamp-picker .dg-stamp-grid button:focus-visible{background:#F1F5F8;border-color:#5F7F9F}.dg-stamp-grid img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}.dg-stamp-picker .dg-stamp-grid button:active{transform:translateY(1px)}
.dg-chat .dg-chat-message .dg-chat-bubble.dg-stamp-bubble{background:transparent;border:0;box-shadow:none;padding:0}.dg-chat .dg-message-stamp{display:block;width:220px;max-width:100%;height:auto;aspect-ratio:1;object-fit:contain}
@media(max-width:480px){.dg-chat-modal.dg-stamp-picker{padding:12px}.dg-stamp-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dg-chat .dg-message-stamp{width:180px}}

/* Conversation layout is isolated from page-wide card/button styling. */
:is(#staffOfficeContent,body) .dg-chat [data-messages]{display:block;min-width:0;width:100%}
:is(#staffOfficeContent,body) .dg-chat .dg-chat-message{display:grid!important;grid-template-columns:32px minmax(0,1fr);gap:8px;align-items:start;margin:12px 0!important;padding:0!important;width:100%!important;max-width:none!important;border:0!important;background:transparent!important}
:is(#staffOfficeContent,body) .dg-chat .dg-chat-message[data-side="self"]{grid-template-columns:minmax(0,1fr)}
:is(#staffOfficeContent,body) .dg-chat .dg-chat-message[data-side="self"]>.dg-chat-avatar{display:none}
:is(#staffOfficeContent,body) .dg-chat .dg-chat-message>.dg-chat-body{width:fit-content;min-width:0;max-width:82%;justify-self:start;text-align:left}
:is(#staffOfficeContent,body) .dg-chat .dg-chat-message[data-side="self"]>.dg-chat-body{justify-self:end;max-width:80%}
:is(#staffOfficeContent,body) .dg-chat .dg-chat-avatar{width:32px;height:32px}:is(#staffOfficeContent,body) .dg-chat .dg-chat-sender{font-size:12px!important;color:#66717F!important;margin:0 0 4px;font-weight:400}
:is(#staffOfficeContent,body) .dg-chat .dg-chat-bubble{color:#18202A!important;background:#FFFFFF!important;padding:10px 13px;border-radius:3px 16px 16px 16px;cursor:pointer;min-width:30px}
:is(#staffOfficeContent,body) .dg-chat .dg-chat-message[data-side="self"] .dg-chat-bubble{background:#DCE7EF!important;border-radius:16px 3px 16px 16px}
:is(#staffOfficeContent,body) .dg-chat .dg-chat-bubble p{font-size:16px!important;line-height:1.55!important;font-weight:400!important;margin:0!important;white-space:pre-wrap}
:is(#staffOfficeContent,body) .dg-chat .dg-chat-bubble:focus-visible{outline:2px solid #5F7F9F;outline-offset:2px}
:is(#staffOfficeContent,body) .dg-chat .dg-chat-meta,:is(#staffOfficeContent,body) .dg-chat .dg-chat-meta time,:is(#staffOfficeContent,body) .dg-chat .dg-chat-read{font-size:10px!important;font-weight:400!important;line-height:1.3!important;color:#66717F!important;letter-spacing:0;margin-top:4px;gap:5px}
:is(#staffOfficeContent,body) .dg-chat .dg-chat-meta time,:is(#staffOfficeContent,body) .dg-chat .dg-chat-read{margin:0}:is(#staffOfficeContent,body) .dg-chat .dg-chat-meta button{font-size:11px!important;min-height:28px!important;padding:3px 6px!important;background:transparent!important;color:#66717F!important;border:0!important}
:is(#staffOfficeContent,body) .dg-chat .dg-chat-photo{display:block;width:220px;height:auto;max-height:280px;object-fit:contain}:is(#staffOfficeContent,body) .dg-chat .dg-chat-message .dg-chat-bubble.dg-stamp-bubble{background:transparent!important;padding:0}
:is(#staffOfficeContent,body) .dg-chat .dg-reply-quote{border-left:3px solid #5F7F9F;padding:5px 9px;margin:0 0 7px;background:#F1F5F8;border-radius:4px;font-size:12px;max-width:260px}.dg-reply-quote strong,.dg-reply-quote small{display:block;font-size:12px!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#36536D!important}
.dg-reply-compose{display:flex;align-items:center;gap:10px;border-left:3px solid #5F7F9F;padding:7px 10px;background:#F1F5F8;margin-bottom:6px}.dg-reply-compose>span{flex:1;min-width:0}.dg-reply-compose strong,.dg-reply-compose small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}:is(#staffOfficeContent,body) .dg-chat .dg-reply-compose button{min-height:32px;padding:3px 10px}
.dg-message-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.dg-message-actions{width:min(420px,calc(100vw - 24px));box-sizing:border-box;background:white!important;color:#18202A!important}.dg-message-actions h2{font-size:18px}.dg-message-actions .dg-message-menu button{font-size:14px!important;background:#17263A!important;color:white!important;border:1px solid #5F7F9F!important;min-width:0}.dg-message-actions [data-result]{font-size:13px}
@media(max-width:600px){:is(#staffOfficeContent,body) .dg-chat .dg-chat-scroll{padding:10px 8px;scrollbar-gutter:auto}:is(#staffOfficeContent,body) .dg-chat .dg-chat-heading{padding:8px;gap:6px;position:static}:is(#staffOfficeContent,body) .dg-chat .dg-chat-heading h2{font-size:15px}:is(#staffOfficeContent,body) .dg-chat .dg-chat-heading button{font-size:12px;padding:6px;min-height:34px}:is(#staffOfficeContent,body) .dg-chat .dg-chat-body{max-width:90%}:is(#staffOfficeContent,body) .dg-chat .dg-chat-message[data-side="other"]>.dg-chat-body{max-width:90%}:is(#staffOfficeContent,body) .dg-chat .dg-chat-compose{padding:8px}:is(#staffOfficeContent,body) .dg-chat .dg-chat-message{gap:6px}}

:is(#staffOfficeContent,body) .dg-chat .dg-chat-compose{display:flex;flex-direction:column;min-height:0}:is(#staffOfficeContent,body) .dg-chat .dg-chat-input{order:2}:is(#staffOfficeContent,body) .dg-chat [data-preview],:is(#staffOfficeContent,body) .dg-chat [data-attachments],:is(#staffOfficeContent,body) .dg-chat .dg-reply-compose{order:1}
:is(#staffOfficeContent,body) .dg-chat .dg-stamp-dock{order:0;min-height:0;border-top:1px solid #D7DDE4;margin:0 -8px 8px;padding:0 8px;background:#fff}
:is(#staffOfficeContent,body) .dg-chat .dg-stamp-dock-heading{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#66717F;height:24px}:is(#staffOfficeContent,body) .dg-chat .dg-stamp-dock-heading button{padding:0 8px!important;min-height:24px!important;background:transparent!important;color:#66717F!important;border:0!important}
:is(#staffOfficeContent,body) .dg-chat .dg-stamp-tabs{padding:4px 0;gap:6px}:is(#staffOfficeContent,body) .dg-chat .dg-stamp-tabs button{padding:3px 7px!important;display:flex;align-items:center;gap:4px;border:0!important;background:#F4F6F8!important;color:#66717F!important;min-height:36px;font-size:11px!important}:is(#staffOfficeContent,body) .dg-chat .dg-stamp-tabs button[aria-selected=true]{background:#DCE7EF!important;color:#18202A!important}:is(#staffOfficeContent,body) .dg-chat .dg-stamp-tabs img{width:30px;height:30px}:is(#staffOfficeContent,body) .dg-chat .dg-stamp-grid{grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:4px;height:170px;max-height:25dvh;padding:5px 0}
:is(#staffOfficeContent,body) .dg-chat .dg-stamp-grid{align-content:start;grid-auto-rows:max-content}:is(#staffOfficeContent,body) .dg-chat .dg-stamp-grid button{background:transparent!important;border:0!important;box-shadow:none!important;min-width:0;min-height:0;width:100%;aspect-ratio:1;align-self:start;padding:3px!important}:is(#staffOfficeContent,body) .dg-chat .dg-stamp-grid button:hover{background:#F1F5F8!important}:is(#staffOfficeContent,body) .dg-chat .dg-stamp-dock [data-stamp-status]{font-size:11px;margin:0;min-height:0}
:is(#staffOfficeContent,body) .dg-chat .dg-chat-input .dg-stamp-toggle,:is(#staffOfficeContent,body) .dg-chat .dg-chat-input [data-plus]{display:flex;align-items:center;justify-content:center;padding:5px!important;min-width:32px;min-height:40px;border:0!important;background:transparent!important;color:#5F7F9F!important}:is(#staffOfficeContent,body) .dg-chat .dg-chat-input .dg-stamp-toggle[aria-expanded=true]{background:#DCE7EF!important;border-radius:10px}:is(#staffOfficeContent,body) .dg-chat .dg-chat-input textarea{border-radius:22px;padding:10px;min-height:42px}:is(#staffOfficeContent,body) .dg-chat .dg-chat-input [data-send]{padding:8px 11px;min-height:42px}
@media(max-width:600px){:is(#staffOfficeContent,body) .dg-chat .dg-stamp-dock{order:3;margin:8px -8px -8px;padding:0 8px 8px}:is(#staffOfficeContent,body) .dg-chat .dg-stamp-grid{grid-template-columns:repeat(4,minmax(0,1fr));height:min(240px,30dvh);max-height:30dvh}:is(#staffOfficeContent,body) .dg-chat .dg-chat-input{gap:4px}:is(#staffOfficeContent,body) .dg-chat .dg-stamp-tabs button span{font-size:10px}:is(#staffOfficeContent,body) .dg-chat .dg-chat-compose{padding-bottom:max(8px,env(safe-area-inset-bottom))}}

/* Compact stamp drawer: fixed thumbnails never inherit page image dimensions. */
:is(#staffOfficeContent,body) .dg-chat .dg-stamp-tabs{display:flex!important;justify-content:flex-start!important;gap:4px!important;height:34px!important;padding:0!important;overflow-x:auto;overflow-y:hidden}
:is(#staffOfficeContent,body) .dg-chat .dg-stamp-tabs button{flex:0 0 32px!important;width:32px!important;height:32px!important;min-height:32px!important;max-width:32px!important;padding:3px!important;border-radius:6px!important}
:is(#staffOfficeContent,body) .dg-chat .dg-stamp-tabs button span{display:none!important}
:is(#staffOfficeContent,body) .dg-chat .dg-stamp-tabs img{display:block!important;width:26px!important;height:26px!important;max-width:26px!important;object-fit:contain!important}
:is(#staffOfficeContent,body) .dg-chat .dg-stamp-grid{display:grid!important;grid-template-columns:repeat(auto-fill,64px)!important;grid-auto-rows:64px!important;justify-content:start!important;gap:4px!important;height:140px!important;max-height:24dvh!important;overflow-y:auto!important}
:is(#staffOfficeContent,body) .dg-chat .dg-stamp-grid button{width:64px!important;height:64px!important;min-height:0!important;padding:3px!important;overflow:hidden!important}
:is(#staffOfficeContent,body) .dg-chat .dg-stamp-grid img{display:block!important;width:58px!important;height:58px!important;max-width:58px!important;object-fit:contain!important}
@media(max-width:600px){:is(#staffOfficeContent,body) .dg-chat .dg-stamp-grid{grid-template-columns:repeat(auto-fill,56px)!important;grid-auto-rows:56px!important;height:180px!important}:is(#staffOfficeContent,body) .dg-chat .dg-stamp-grid button{width:56px!important;height:56px!important}:is(#staffOfficeContent,body) .dg-chat .dg-stamp-grid img{width:50px!important;height:50px!important;max-width:50px!important}}


/* /customers.css */
.customer-search{display:grid;grid-template-columns:minmax(200px,1fr) 200px auto;align-items:end;gap:12px}.customer-directory small{overflow-wrap:anywhere}.customer-status{display:inline-block;border-radius:8px;padding:7px 10px;background:#edf1f5;color:#3b5265;white-space:nowrap}.status-allowed{background:#e0f3e8;color:#146344}.status-banned{background:#343b45;color:white}.status-unpaid{background:#fff0db;color:#8c4c06}.status-review{background:#fff4cc;color:#755809}.customer-pre{white-space:pre-wrap;overflow-wrap:anywhere}.customer-reception{background:#f4f7fa;border-left:4px solid #50677a;border-radius:9px;padding:16px}.customer-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0}.customer-stats>div{background:#eaf2f9;border-radius:10px;padding:14px}.customer-stats strong{display:block;font-size:20px;margin-top:8px}.customer-note{border-left:3px solid #96abc1;padding:12px;margin:10px 0;background:#f5f8fb}.customer-note small{display:block;margin-top:6px}.customer-history{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #d8e2eb}.customer-lookup{position:fixed;right:18px;bottom:18px;z-index:80;max-width:330px;box-shadow:0 6px 24px #102b4630;border:1px solid #8baecb;background:white;border-radius:12px;color:#173e57}.customer-lookup summary{padding:14px 18px;background:#e2edf7;border-radius:12px;cursor:pointer;font-weight:bold}.customer-lookup form{padding:14px}.customer-lookup input{display:block;width:100%;box-sizing:border-box;padding:12px;margin:8px 0;border:1px solid #a7bed1;border-radius:8px;font:inherit}.customer-lookup button,.customer-lookup-dialog button{min-height:44px;border-radius:8px;padding:10px 14px;border:1px solid #a4bbd1;background:#e5eff8;color:#174b6e;font:inherit;cursor:pointer}.customer-lookup-dialog{width:min(980px,94vw);max-height:88dvh;border:1px solid #a7bfd0;border-radius:16px;padding:0;background:#f5f8fb;color:#173e57}.customer-lookup-dialog::backdrop{background:#102a4666}.customer-lookup-dialog header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;position:sticky;top:0;background:#deebf5;z-index:1}.customer-dialog-body{padding:20px}.customer-dialog-body input,.customer-dialog-body select,.customer-dialog-body textarea{display:block;width:100%;box-sizing:border-box;padding:10px;border:1px solid #b2c8db;border-radius:8px;font:inherit}.customer-dialog-body label{display:block;margin:12px 0}.customer-dialog-body table{border-collapse:collapse;width:100%}.customer-dialog-body td,.customer-dialog-body th{padding:12px;text-align:left;border-bottom:1px solid #d6e1eb}.customer-dialog-body .scroll{overflow:auto}.customer-edit{max-width:720px}.customer-edit textarea{min-height:80px}.customer-paging{display:flex;justify-content:space-between;margin:16px 0}[data-office-page=customers]{background:#edf0fc!important;border-color:#a6aee0!important}.customer-directory table{min-width:720px}
@media(max-width:700px){.customer-search{grid-template-columns:1fr}.customer-stats{grid-template-columns:1fr}.customer-history{align-items:start;flex-direction:column}.customer-lookup{right:10px;bottom:calc(12px + env(safe-area-inset-bottom));max-width:calc(100vw - 20px)}.customer-dialog-body{padding:12px}.customer-lookup-dialog{width:96vw;max-height:90dvh}.customer-lookup summary{padding:11px 14px}}

#staffOfficeScreen:has(.customer-directory),#staffOfficeScreen:has(.customer-detail){padding-bottom:80px}@media(max-width:700px){.customer-directory table,.customer-directory tbody,.customer-directory tr,.customer-directory td{display:block;min-width:0!important;width:auto!important}.customer-directory thead{display:none}.customer-directory tr{border:1px solid #cbdce9;border-radius:12px;margin:12px 0;padding:12px;background:white}.customer-directory td{border:0!important;padding:5px 0!important}.customer-directory td button{width:100%}}
#officeSideRail[hidden],.customer-inline-result[hidden]{display:none!important}.customer-inline-result>header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px;background:#e8eff6}.customer-inline-result{min-height:0;overflow:auto;border-top:1px solid #cfdae5}
@media(min-width:1201px){
 body.office-side-rail-active{padding-right:376px;box-sizing:border-box}
 body.office-side-rail-active #homeScreen>.content{display:block}
 #officeSideRail{position:fixed;right:16px;top:105px;bottom:16px;width:340px;display:flex;flex-direction:column;gap:14px;z-index:75;overflow:auto;color:#173e57}
 #officeSideRail #officeHomeNotices{position:static;margin:0;max-height:32vh;overflow:auto;padding:14px;flex-shrink:0}
 #officeSideRail .customer-lookup{position:static;max-width:none;width:100%;box-sizing:border-box;box-shadow:0 3px 12px #102b4615;display:flex;flex-direction:column;min-height:0;flex-shrink:0}
 #officeSideRail .customer-lookup:has(.customer-inline-result:not([hidden])){flex:1;min-height:300px}
 #officeSideRail .customer-inline-result{flex:1}
 #officeSideRail .customer-dialog-body{padding:12px}
 #officeSideRail .customer-dialog-body .card{padding:0;border:0;box-shadow:none;background:transparent;margin:0;min-width:0}
 #officeSideRail .customer-dialog-body h2{font-size:19px;overflow-wrap:anywhere}#officeSideRail .customer-dialog-body h3{font-size:16px}
 #officeSideRail .customer-search,#officeSideRail .customer-stats{display:grid;grid-template-columns:1fr;gap:8px}
 #officeSideRail .customer-stats>div{padding:10px}#officeSideRail .customer-stats strong{font-size:17px}
 #officeSideRail .customer-history{align-items:start;flex-direction:column}
 #officeSideRail table,#officeSideRail tbody,#officeSideRail tr,#officeSideRail td{display:block;min-width:0!important;width:auto!important}
 #officeSideRail thead{display:none}#officeSideRail tr{border-bottom:1px solid #cedae5;padding:10px 0}#officeSideRail td{border:0;padding:4px 0}
 #officeSideRail .customer-detail>p{overflow-wrap:anywhere}#officeSideRail .customer-lookup form{padding:12px}#officeSideRail .customer-dialog-body form{padding:0}
}
@media(max-width:1200px){#officeSideRail,.customer-lookup>.customer-inline-result{display:none!important}}
/* Tall notification column and compact non-modal customer lookup. */
@media(min-width:1201px){
 body.office-side-rail-active{padding-right:0}
 body.office-side-rail-active #homeScreen>.content,body.office-side-rail-active #staffOfficeScreen>.staff-office-body{width:auto!important;margin-right:328px!important;margin-left:0!important;max-width:none!important;padding:24px!important;box-sizing:border-box}
 #officeSideRail{width:296px;top:140px;bottom:16px;gap:12px;z-index:60}
 #officeSideRail #officeHomeNotices{flex:1 1 0;min-height:180px;max-height:880px;padding:14px;overflow:auto}
 #officeSideRail .notice-heading{position:sticky;top:-14px;background:white;padding:8px 0;z-index:1}
 #officeSideRail .customer-lookup,#officeSideRail .customer-lookup:has(.customer-inline-result:not([hidden])){flex:0 0 auto;min-height:0;max-height:40vh;overflow:auto}
 #officeSideRail .customer-lookup summary{padding:10px 12px;font-size:13px;border-radius:10px}
 #officeSideRail .customer-lookup form{display:flex;gap:7px;align-items:center;padding:9px}
 #officeSideRail .customer-lookup label{flex:1;min-width:0;font-size:0}#officeSideRail .customer-lookup input{margin:0;padding:8px;font-size:14px;min-height:38px}
 #officeSideRail .customer-lookup form button{min-height:38px;padding:7px 9px;font-size:12px;white-space:nowrap}
 #officeSideRail .customer-inline-result{flex:none;overflow:visible}
 #officeSideRail .customer-inline-result>header{padding:4px 10px;font-size:12px;background:#f4f7fa}#officeSideRail .customer-inline-result>header button{min-height:30px;padding:4px 7px;font-size:12px}
 #officeSideRail .customer-dialog-body{padding:8px 10px}.customer-quick-result+article{border-top:1px solid #d5e0e9;margin-top:8px;padding-top:8px}.customer-quick-result>div{display:flex;gap:8px;justify-content:space-between;align-items:center}.customer-quick-result strong{font-size:14px;overflow-wrap:anywhere}.customer-quick-result .customer-status{padding:5px 7px;font-size:12px}.customer-quick-result p{margin:7px 0 2px;font-size:13px;line-height:1.5;white-space:pre-wrap;color:#92383c}
}
/* Reserve the notification rail on every legacy screen, including reservation entry. */
@media(min-width:1201px){body.office-side-rail-active .screen>.content{width:auto!important;max-width:none!important;margin-left:0!important;margin-right:328px!important;padding:24px!important;box-sizing:border-box}body.office-side-rail-active .booking-workspace{min-width:0;grid-template-columns:repeat(3,minmax(0,1fr))!important}body.office-side-rail-active .booking-workspace>div{min-width:0}body.office-side-rail-active .booking-workspace .right-column{grid-column:auto;position:static;max-height:none}body.office-side-rail-active .booking-workspace .master-checks{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(min-width:1700px){body.office-side-rail-active #bookingScreen .five-column-reception{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.35fr) minmax(0,1fr)!important}}

.mobile-phone-tab,.mobile-phone-close{display:none}
@media(max-width:1200px){.mobile-phone-tab:not([hidden]){display:block;position:fixed;right:0;bottom:calc(110px + env(safe-area-inset-bottom));z-index:190;width:38px;min-height:106px;padding:10px 8px;writing-mode:vertical-rl;border:1px solid #7895ac;border-right:0;border-radius:10px 0 0 10px;background:#254c68;color:#fff;font-size:14px;box-shadow:0 2px 8px #173e5722}.customer-lookup{right:0!important;bottom:calc(16px + env(safe-area-inset-bottom))!important;width:min(340px,calc(100vw - 48px));max-width:none!important;max-height:75dvh;overflow:auto;transform:translateX(calc(100% + 14px));visibility:hidden;transition:transform .18s ease,visibility .18s;z-index:200}.customer-lookup.lookup-open{transform:translateX(0);visibility:visible}.customer-lookup .mobile-phone-close{display:block;margin:8px 8px 0 auto;padding:8px 12px;min-height:40px;border:1px solid #b8cedd;border-radius:8px;background:#e9f2f8;color:#244d6a}.customer-lookup form{padding:10px}.customer-inline-result{border-top:1px solid #c9dae7}.customer-inline-result header{display:flex;align-items:center;justify-content:space-between;padding:10px}.customer-quick-result{padding:10px}.customer-quick-result>div{display:flex;justify-content:space-between;gap:8px}.customer-quick-result p{font-size:14px;white-space:pre-wrap}}
@media(prefers-reduced-motion:reduce){.customer-lookup{transition:none}}

/* /office-extension.css */
.account-formula{margin:18px 0 24px}.account-formula-line{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 18px;border-left:5px solid;border-radius:8px;margin:8px 0;background:#f3f7fa}.account-formula-line strong{display:block}.account-formula-line small,.account-comparison small{display:block;font-size:12px;color:#536476;line-height:1.6;margin-top:4px}.account-formula-line>b{font-size:23px;white-space:nowrap}.account-formula-line.tone-profit{background:#e4f3ea;border-color:#26834d}.account-formula-line.tone-customer{background:#eaf3fc;border-color:#2c6f9f}.account-formula-line.tone-staff{background:#f1ecf9;border-color:#74539d}.account-formula-line.tone-discount{background:#fff1f1;border-color:#be4444}.account-formula-line.tone-expense{background:#fff6e9;border-color:#ba7820}.account-comparison table{width:100%;min-width:0;table-layout:fixed}.account-comparison th:first-child{width:46%;text-align:left}.account-comparison td{font-weight:600;text-align:right;overflow-wrap:anywhere}.account-comparison th,.account-comparison td{padding:12px 8px;border-bottom:1px solid #dce5ee}.account-comparison thead{background:#edf3f8}@media(max-width:600px){.account-formula-line{padding:12px;gap:8px;align-items:flex-start}.account-formula-line>b{font-size:20px}.account-formula-line small{font-size:12px}.account-comparison th,.account-comparison td{padding:10px 4px;font-size:13px}}
/* Comparable cards instead of a long vertical formula. */
.account-money-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}.account-money-grid .account-formula-line{margin:0;min-width:0;min-height:142px;box-sizing:border-box;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:10px;border:1px solid #c8d7e2;border-top:5px solid var(--account-tone);border-left-width:1px;padding:16px}.account-formula-line.tone-customer{--account-tone:#2c6f9f}.account-formula-line.tone-staff{--account-tone:#74539d}.account-formula-line.tone-discount{--account-tone:#be4444}.account-formula-line.tone-expense{--account-tone:#ba7820}.account-formula-line.tone-profit{--account-tone:#26834d}.account-money-grid .account-formula-line>strong{font-size:14px;line-height:1.5}.account-money-grid .account-formula-line>b{font-size:clamp(21px,2.2vw,30px);color:var(--account-tone);white-space:normal;overflow-wrap:anywhere;line-height:1.2}.account-money-grid .tone-profit{order:-1;background:#e0f2e7;box-shadow:0 2px 8px #24563c0c}.account-formula-line details{font-size:12px}.account-formula-line summary{cursor:pointer;color:#496174;min-height:24px;line-height:24px}.account-formula-line details small{font-size:12px;margin-top:6px}.account-formula>h3{font-size:15px}.account-formula>.muted{font-size:12px;line-height:1.6;margin:12px 0}
.account-sections-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.account-comparison{--section-ink:#27654f;--section-bg:#e7f3ed}.section-bookings{--section-ink:#246493;--section-bg:#e5f0fa}.section-courses{--section-ink:#6b539c;--section-bg:#eee8f7}.section-options{--section-ink:#237879;--section-bg:#e1f2f0}.section-extensions{--section-ink:#98611d;--section-bg:#fbefdb}.section-discounts{--section-ink:#ae455c;--section-bg:#fbe7ec}
#staffOfficeContent .account-comparison.card{padding:0;overflow:hidden;border:1px solid #cbdbe5;border-top:4px solid var(--section-ink);margin:0;background:#fff;min-width:0}#staffOfficeContent .account-comparison h3{margin:0;padding:13px 15px;background:var(--section-bg);color:var(--section-ink);font-size:17px;display:flex;align-items:center;gap:9px}#staffOfficeContent .account-comparison h3>span{display:inline-flex;align-items:center;justify-content:center;width:29px;height:29px;background:var(--section-ink);color:white;border-radius:8px;font-size:18px;flex:none}#staffOfficeContent .account-comparison thead{background:#f4f7fa}#staffOfficeContent .account-comparison th,#staffOfficeContent .account-comparison td{padding:10px 12px;font-size:13px;line-height:1.5}#staffOfficeContent .account-comparison td{text-align:right;font-variant-numeric:tabular-nums}#staffOfficeContent .account-comparison th:first-child{width:44%}.account-comparison tbody tr:nth-child(even){background:#f8fafc}.account-comparison tbody td:last-child{color:var(--section-ink);font-weight:750}.account-comparison small{font-size:11px;line-height:1.5}.account-fee-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.account-fee-grid .account-formula-line{display:flex;flex-direction:column;align-items:start;gap:8px}.account-card-fees summary,.account-reconcile summary{cursor:pointer;font-weight:600;line-height:1.6}.account-card-fees{margin-bottom:16px}.account-reconcile{margin-top:18px}
@media(min-width:1600px){.account-money-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:850px){.account-money-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.account-sections-grid{grid-template-columns:1fr;gap:14px}}
@media(max-width:500px){.account-legend{font-size:11px;line-height:1.8;padding:10px;margin:10px 0}.account-money-grid .account-formula-line{padding:12px 10px;min-height:142px;gap:8px}.account-money-grid .account-formula-line>strong{font-size:12px}.account-money-grid .account-formula-line>b{font-size:22px;letter-spacing:-.03em}.account-money-grid .tone-profit{grid-column:1/-1;min-height:110px}.account-money-grid .tone-profit>b{font-size:30px}#staffOfficeContent .account-comparison th,#staffOfficeContent .account-comparison td{padding:9px 7px;font-size:12px}#staffOfficeContent .account-comparison h3{font-size:16px;padding:11px 12px}.account-comparison small{font-size:10px}.account-fee-grid{grid-template-columns:1fr}.account-formula-line{flex-wrap:wrap}.account-formula-line>b{font-size:21px}}
#staffOfficeContent .card:has(>#accountingPeriod)>h2{display:none}#accountingPeriod label{font-size:13px!important;margin-top:0!important}#accountingPeriod .staff-grid{gap:12px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}#accountingPeriod .staff-grid>div{min-width:0}#accountingPeriod input{box-sizing:border-box;min-width:0;max-width:100%}#accountingPeriod+p{font-size:11px!important;line-height:1.5}#accountingResult>.account-legend{margin-top:10px}.account-formula{margin-top:12px}
@media(max-width:500px){#staffOfficeContent .card:has(>#accountingPeriod){padding:12px}#accountingPeriod input{font-size:13px;padding:9px 5px}#accountingPeriod>button{padding:8px 10px!important;margin:5px 3px!important;font-size:13px}#staffOfficeContent .account-comparison th:first-child{width:40%}}
@media(max-width:500px){#staffOfficeContent .account-comparison th,#staffOfficeContent .account-comparison td{font-size:13px}.account-comparison small{font-size:11px}.account-money-grid .account-formula-line>strong{font-size:13px}}

/* /reservation-workbench.css */
.workflow-filters{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:12px;align-items:end}.workflow-filters label{min-width:0}.workflow-filters button{justify-self:start}.workflow-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.workflow-card{min-width:0;border:1px solid #c3ccd5;border-radius:12px;padding:18px;background:#fff}.workflow-card header{display:flex;justify-content:space-between;align-items:center;gap:10px}.workflow-card h3{margin:0;font-size:18px;line-height:1.5}.workflow-current{padding:12px;background:#edf1f5;border-left:4px solid #22394f;line-height:1.8}.workflow-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.workflow-steps li{min-width:0}.workflow-steps .workflow-step{display:flex;flex-direction:column;align-items:flex-start;gap:5px;width:100%;height:100%;margin:0!important;padding:12px!important;background:#f5f7f9!important;color:#253a50!important;border:1px solid #bdc9d3!important;font-size:15px;line-height:1.5;text-align:left}.workflow-step small{font-size:13px}.workflow-steps .complete{background:#e5ebf0!important}.workflow-steps .waiting{border-width:2px!important;background:#dce6ee!important}.workflow-steps .review{border:2px solid #755133!important;background:#faf5eb!important}.workflow-count{font-variant-numeric:tabular-nums}@media(min-width:721px) and (max-width:1200px){.workflow-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.workflow-steps .workflow-step{min-height:64px}}@media(max-width:720px){.workflow-filters,.workflow-results{grid-template-columns:1fr}.workflow-card{padding:14px}.workflow-card header{align-items:flex-start}.workflow-steps .workflow-step{min-height:64px}}
.workflow-dialog{width:min(640px,calc(100vw - 48px));max-height:85dvh;overflow:auto;box-sizing:border-box;border:1px solid #9eafbd;border-radius:14px;padding:24px;background:#fff;color:#243a50}.workflow-dialog::backdrop{background:#0b172466}.workflow-dialog header{display:flex;align-items:center;justify-content:space-between;gap:12px}.workflow-dialog h2{margin:0;font-size:21px}.workflow-dialog label{display:block;margin:14px 0 5px}.workflow-dialog input:not([type=checkbox]),.workflow-dialog textarea,.workflow-dialog select{display:block;box-sizing:border-box;width:100%;padding:12px;border:1px solid #aebdcb;border-radius:7px;font:inherit}.workflow-dialog button,.workflow-dialog .button-link{display:inline-block;font:inherit;min-height:44px;padding:10px 14px;margin:6px 5px 6px 0;border:1px solid #7f95a8;border-radius:7px;background:#e8eef3;color:#1e3a50;text-decoration:none;box-sizing:border-box}.workflow-dialog button:disabled{opacity:.65}.workflow-dialog [data-status]{white-space:pre-wrap;line-height:1.7}.workflow-dialog [data-content]>button:last-child{background:#20394f;color:white}.workflow-dialog textarea{resize:vertical}.workflow-dialog [hidden]{display:none!important}@media(min-width:721px) and (max-width:1200px){.workflow-dialog{width:min(760px,calc(100vw - 48px))}.workflow-dialog button{min-height:48px}}@media(max-width:720px){.workflow-dialog{width:100%;max-width:none;margin:auto 0 0;max-height:94dvh;border-radius:16px 16px 0 0;padding:18px}.workflow-dialog .workflow-message-actions{display:flex;flex-wrap:wrap}.workflow-dialog .workflow-message-actions>*{flex:1 1 100%}}
.office-quick-actions{display:flex;flex:1 0 100%;gap:6px;overflow-x:auto;padding:8px 0 0;min-width:0}.office-quick-actions button{flex:none;white-space:nowrap;min-height:40px;padding:8px 12px;border:1px solid #a7b7c5;border-radius:7px;background:#edf2f6;color:#263f54;font:600 14px system-ui}.quick-booking-choice{display:block!important;width:100%;text-align:left;line-height:1.7}.settlement-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.settlement-filter [aria-pressed=true]{background:#1c344c!important;color:white!important}.workflow-dialog [data-finance] figure{margin:12px 0;border:1px solid #bfcbd5;padding:8px}.workflow-dialog [data-cancel-final]{border:2px solid #984d45;color:#762f28;background:#fff6f4}@media(max-width:720px){.office-quick-actions{padding:6px 0;max-width:100%}.office-quick-actions button{min-height:44px;font-size:13px}}
.office-home-work{display:grid;grid-template-columns:230px minmax(0,1fr);gap:20px;align-items:start;margin-top:20px}.office-home-menu{min-width:0}.office-home-current{min-width:0}.office-home-current>header{display:flex;align-items:center;justify-content:space-between}.home-work-item{padding:16px 0;border-bottom:1px solid #ccd5dd;line-height:1.7}.home-work-item p{margin:5px 0}#homeScreen .office-home-work .menu-grid{grid-template-columns:1fr!important}#homeScreen .office-home-work .menu-button{min-height:64px!important;padding:12px!important}.office-home-work .menu-description{display:none}.office-mobile-nav{display:none}
.compact-page-header .brand-inner{flex-wrap:wrap!important}.header-phone-lookup.customer-lookup{position:static!important;inset:auto!important;flex:0 1 320px;width:320px!important;max-width:100%;margin:0 0 0 auto!important;box-shadow:none!important;order:5}.header-phone-lookup.customer-lookup form{display:flex;align-items:end;gap:8px}.header-phone-lookup.customer-lookup form label{flex:1;min-width:0}.header-phone-lookup.customer-lookup .customer-inline-result{position:static;max-height:240px;overflow:auto}.office-quick-actions{order:6}
@media(min-width:721px) and (max-width:1200px){.office-home-work{grid-template-columns:190px minmax(0,1fr)}#homeScreen .office-home-work .menu-button{min-height:56px!important}.workflow-results{grid-template-columns:1fr}}
@media(max-width:720px){.office-home-work{display:flex;flex-direction:column}.office-home-current{order:0;width:100%;box-sizing:border-box}.office-home-menu{order:1;width:100%}#homeScreen .office-home-work .menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.office-mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:90;background:#132b41;padding:8px 4px calc(8px + env(safe-area-inset-bottom));gap:4px}.office-mobile-nav button{flex:1;min-width:0;min-height:46px;background:#203e58;color:#fff;border:1px solid #8194a5;border-radius:6px;font:600 13px system-ui}.office-work-open>.office-mobile-nav{display:none}body{padding-bottom:76px!important}.workflow-dialog{z-index:100}.office-home-current>header h2{font-size:18px}}
@media(min-width:721px) and (max-width:1200px){#bookingScreen .five-column-reception{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}#bookingScreen .five-column-reception>div,#bookingScreen .five-column-reception>.right-column{grid-column:auto;grid-row:auto;min-width:0}#bookingScreen .five-column-reception .master-checks{grid-template-columns:1fr}body.office-side-rail-active{padding-right:0!important}#officeSideRail{display:none!important}#staffOfficeContent .staff-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#staffOfficeContent input,#staffOfficeContent select{min-height:46px}}
.route-header-inner{flex-wrap:wrap;min-width:0}.route-header-inner>.office-quick-actions{width:100%;flex-basis:100%;box-sizing:border-box}
/* Dedicated tablet and phone home arrangements. */
@media(min-width:721px) and (max-width:1200px){
 #homeScreen>.content{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}
 #homeScreen>.content>.office-home-work{display:contents}
 #homeScreen .office-home-current{grid-column:1;grid-row:1;margin:0}
 #homeScreen .office-home-menu{grid-column:1;grid-row:2}
 #homeScreen>.content>.office-home-schedule{grid-column:2;grid-row:1;margin:0;min-width:0}
 #homeScreen>.content>#officeHomeNotices{display:block!important;grid-column:2;grid-row:2;position:static;margin:0;max-height:600px;overflow:auto}
 #homeScreen>.content>#staffOfficeHomeSummary{grid-column:1/-1;grid-row:3}
 #homeScreen .week-board{display:flex;overflow-x:auto;gap:8px}
 #homeScreen .week-board>.week-day{min-width:170px;flex:0 0 170px}
}
@media(max-width:720px){
 #homeScreen>.content{display:flex;flex-direction:column;gap:16px}
 #homeScreen>.content>*{width:100%;box-sizing:border-box}
 #homeScreen>.content>.office-home-work{display:contents}
 #homeScreen .office-home-current{order:0;margin:0}
 #homeScreen>.content>.office-home-schedule{order:1;margin:0}
 #homeScreen>.content>#staffOfficeHomeSummary{order:2}
 #homeScreen>.content>#officeHomeNotices{display:block!important;order:3;margin:0;max-height:420px;overflow:auto}
 #homeScreen .office-home-menu{order:4}
}
/* Unified home polish: single arrival entry, compact header, themed vector menu. */
#homeScreen #arrivalQuick{display:none!important}
#homeScreen #staffOfficeHomeSummary{grid-template-columns:repeat(2,minmax(0,1fr))!important;margin:0!important}
#homeScreen>.brand-header,#homeScreen>header{padding:0!important}
#homeScreen .brand-inner{display:flex!important;flex-wrap:wrap!important;align-items:center;justify-content:flex-start;max-width:none;gap:12px!important;padding:14px 20px!important;min-height:0!important}
#homeScreen .home-operator-icon{margin-left:auto!important;max-width:180px}
#homeScreen #accountSettingsOpen{position:static!important;flex:0 0 40px;width:40px;height:40px;box-shadow:none}
#homeDate{padding:0 20px 10px;margin:0!important}
.office-quick-group{flex:1 0 100%;width:100%;min-width:0;order:10}
.office-quick-group>summary{display:none;cursor:pointer;list-style:none}
.office-quick-actions{display:flex;flex-wrap:wrap;overflow:visible;width:100%;padding:0;box-sizing:border-box}
.office-quick-actions button{min-height:40px;font-size:13px}
.office-quick-actions [data-quick=arrival]{background:#e3f3ee;border-color:#78b2a0;color:#215f4d}
#homeScreen .office-home-work{display:contents}
#homeScreen .office-home-menu .menu-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
#homeScreen .office-home-menu .menu-button{display:flex;flex-direction:row;align-items:center;min-height:80px!important;padding:16px!important;gap:14px!important;border-width:1px;border-radius:14px;box-shadow:0 3px 9px #173b5508}
#homeScreen .menu-icon{display:grid;place-items:center;width:42px!important;height:42px!important;border-radius:12px;background:#ffffffb3;flex:none}
#homeScreen .menu-icon svg{width:26px;height:26px}
#homeScreen .menu-name{font-size:16px!important;line-height:1.4}
#homeScreen .menu-description{display:block;font-size:12px;margin-top:5px;opacity:.8}
#homeScreen [data-office-page=workflow]{--menu-bg:#fff5e4;--menu-edge:#d9b674;--menu-ink:#8b5c18}
#homeScreen [data-office-page=settlementQueue]{--menu-bg:#f4edfb;--menu-edge:#b8a0d1;--menu-ink:#765398}
#homeScreen [data-office-page=reservations]{--menu-bg:#eaf2fb;--menu-edge:#98b5d5;--menu-ink:#355e8a}
#homeScreen [data-office-page=customers]{--menu-bg:#edf0fc;--menu-edge:#a5afd7;--menu-ink:#505f98}
@media(min-width:1201px){#homeScreen>.content{display:flex;flex-direction:column;gap:20px}#homeScreen .office-home-current{width:100%;box-sizing:border-box;margin:0;order:2}#homeScreen .office-home-menu{order:3;width:100%}#homeScreen .office-home-schedule{margin:0;order:0}#homeScreen #staffOfficeHomeSummary{order:1}#homeScreen>.content>p{margin:0}}
@media(max-width:720px){
 #homeScreen .brand-inner{padding:12px!important;gap:8px!important}
 #homeScreen .brand-inner .title{font-size:19px!important;line-height:1.3}
 #homeScreen .brand-inner .subtitle{font-size:11px!important}
 #homeScreen .brand-inner .logo-plate{width:34px!important;height:34px!important;flex:none}
 #homeScreen .home-operator-icon{order:3;margin:0!important;padding:6px 9px;min-height:34px;font-size:12px;max-width:170px}
 #homeScreen #accountSettingsOpen{margin-left:auto;order:2;width:36px;height:36px;flex-basis:36px}
 #homeDate{padding:0 12px 8px;font-size:12px}
 .office-quick-group{border-top:1px solid #c6d9e7;padding-top:8px}
 .office-quick-group>summary{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:40px;font-size:14px;font-weight:700;color:#244e6a}
 .office-quick-group>summary span{font-size:11px;font-weight:400}
 .office-quick-group>summary::after{content:'＋';font-size:20px}
 .office-quick-group[open]>summary::after{content:'−'}
 .office-quick-group:not([open])>.office-quick-actions{display:none}
 .office-quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .office-quick-actions button{width:100%;white-space:normal;min-height:44px;font-size:13px;padding:8px 6px}
 #homeScreen .office-home-menu .menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
 #homeScreen .office-home-menu .menu-button{flex-direction:column;align-items:flex-start;min-height:112px!important;padding:14px!important;gap:10px!important}
 #homeScreen .menu-description{display:none}
 #homeScreen .menu-name{font-size:15px!important}
 #homeScreen #staffOfficeHomeSummary>button{min-height:72px!important;grid-template-columns:1fr auto;align-items:center}
 #homeScreen .office-home-schedule h2{font-size:17px}
 #homeScreen .office-home-schedule .week-total{font-size:22px}
 .mobile-phone-tab:not([hidden]){width:30px;min-height:86px;font-size:12px;padding:8px 5px;box-shadow:none}
}
#homeScreen .office-home-menu .home-operator-icon{display:inline-flex;align-items:center;gap:9px;margin:0 0 14px!important;padding:0!important;min-height:36px;border:0;background:transparent;color:#254b66;max-width:none;font-size:15px;cursor:pointer}
.operator-avatar{width:34px;height:34px;border-radius:50%;object-fit:cover;flex:none}.operator-initial{display:inline-grid;place-items:center;background:#e0eaf3;color:#385e7c;font-weight:700}
#homeScreen .office-home-menu .menu-title{margin-bottom:10px}
@media(min-width:1201px){#homeScreen>.content{display:flex!important;flex-direction:column;gap:20px}#homeScreen .office-home-current{order:2!important}#homeScreen .office-home-menu{order:3!important}#homeScreen #accountSettingsOpen{margin-left:auto}}
@media(min-width:1201px){#homeScreen>.content{align-items:stretch!important}#homeScreen>.content>.office-home-schedule,#homeScreen>.content>#staffOfficeHomeSummary{width:100%;box-sizing:border-box}}

/* /booking-overview.css */
.reservation-overview .overview-tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:12px}.reservation-overview details{margin:12px 0}.reservation-overview summary{cursor:pointer;padding:10px;background:#edf3f9;border-radius:8px}.reservation-overview .overview-tools label{margin:5px 0!important;min-width:0;font-size:13px}.reservation-overview .overview-tools input,.reservation-overview .overview-tools select{box-sizing:border-box;min-width:0;max-width:100%;font-size:14px!important;padding:8px!important}.reservation-overview .overview-summary{display:flex;gap:14px;flex-wrap:wrap;margin:16px 0}.overview-summary span{padding:12px 16px;background:#edf3f9;border-radius:10px}.overview-summary strong{font-size:21px}.overview-table-wrap{overflow:auto;max-height:72vh;border:1px solid #d1dce6;border-radius:10px}.overview-table{font-size:14px;min-width:1650px}.overview-table th{position:sticky;top:0;background:#203b53;color:white;z-index:1;white-space:nowrap}.overview-table td{vertical-align:top;background:#fff}.overview-table tr:nth-child(even) td{background:#f3f7fa}.overview-table .overview-badge{display:inline-block;padding:4px 8px;border-radius:6px;white-space:nowrap;font-weight:600}.overview-badge.good{background:#dff0e5;color:#205b3b}.overview-badge.wait{background:#fff0d8;color:#814f13}.overview-badge.active{background:#e0eaf8;color:#234e80}.overview-badge.off{background:#e8eaee;color:#555}.overview-table small{display:block;margin-top:5px;color:#586b7b}.overview-table .overview-money{font-size:17px;color:#a53039;font-weight:bold;white-space:nowrap}.overview-table .overview-boy{padding:4px 0;border-bottom:1px solid #e4eaf0;min-width:150px}.overview-table .overview-actions{display:flex;flex-direction:column}.overview-table .overview-actions button{font-size:13px;margin:3px!important;white-space:nowrap}.overview-table .overview-actions .overview-edit{background:#e3f0e9!important;color:#225e42!important}.overview-table .overview-actions .overview-detail{background:#e4eef8!important;color:#214f78!important}.overview-tabs{display:flex;flex-wrap:wrap;gap:5px}.overview-tabs button[aria-pressed=true]{outline:3px solid #90acc5}#staffOfficeNav button[data-tab=reservations]{background:#e1edf8;color:#234e70;border-color:#9cbbd4}#staffOfficeNav button[data-tab=reservations][aria-current=page]{background:#234e70;color:white}
@media(max-width:700px){.overview-table-wrap{max-height:none;overflow:visible;border:0}.overview-table,.overview-table tbody,.overview-table tr,.overview-table td{display:block;min-width:0!important;width:auto!important}.overview-table thead{display:none}.overview-table tr{margin:14px 0;border:1px solid #b9ccde;border-radius:12px;overflow:hidden}.overview-table td:before{content:attr(data-label);display:block;font-size:12px;color:#667c8e;margin-bottom:5px}.overview-table td{padding:10px!important}.overview-table .overview-actions{flex-direction:row;flex-wrap:wrap}.overview-summary span{flex:1 1 140px;min-width:0}.overview-summary strong{font-size:18px}.overview-tabs button{min-height:44px}}
.overview-summary .money-in{background:#e4eefb;color:#174e85}.overview-summary .money-out{background:#f0e8fa;color:#694294}.overview-summary .money-profit{background:#e1f1e8;color:#20663f}.overview-summary small{display:block;margin-top:5px}.overview-table .money-in{color:#174e85}.overview-table .money-out{color:#694294}.overview-table .money-profit{color:#20663f;font-size:18px;font-weight:700;white-space:nowrap}.overview-transfer{min-width:180px;margin:8px 0}.overview-transfer b{display:block}.overview-transfer span{display:block;white-space:nowrap}

/* /office-brand.css */
:root{--brand:#5F7F9F;--navy:#17263A;--ink:#18202A;--muted:#66717F;--line:#D7DDE4}
html,body,.screen,#officeWorkTabs,.work-frames iframe{background:#F4F6F8!important;color:#18202A!important}
.brand,.brand-header,.compact-page-header,.work-toolbar{background:#0B111A!important;border-color:#17263A!important;background-image:none!important}
.brand-inner .title,.brand-inner h1,.route-header-inner h1,.brand-inner .eyebrow{color:#FFFFFF!important}.brand-inner .subtitle,#homeDate{color:#AAB6C2!important}
.brand-inner,.route-header-inner{gap:10px!important}.office-quick-group{order:0!important;flex:1 1 auto!important;width:auto!important;min-width:0;border:0!important;padding:0!important}
.office-quick-actions{gap:5px!important;padding:0!important}.office-quick-actions button{display:inline-flex;align-items:center;justify-content:center;gap:5px;font-size:12px!important;padding:8px!important}
.office-state-icon{width:25px;height:25px;flex:none;vertical-align:middle;margin-right:3px}
:is(.screen,dialog,.work-toolbar,.work-tabstrip,.office-mobile-nav) button{background:#17263A!important;color:#FFFFFF!important;border:1px solid #5F7F9F!important;background-image:none!important;box-shadow:none!important}
:is(.screen,dialog,.work-toolbar,.work-tabstrip,.office-mobile-nav) button:hover{background:#21344B!important;border-color:#86A4BF!important}
:is(.screen,dialog,.work-toolbar,.work-tabstrip,.office-mobile-nav) button:active{background:#0F1926!important;transform:translateY(1px)}
:is(.screen,dialog,.work-toolbar,.work-tabstrip) button[aria-pressed=true],.work-tab button[aria-selected=true],.workflow-dialog [data-finish],.home-work-item button{background:#5F7F9F!important;color:#FFFFFF!important}
:is(.screen,dialog) button:disabled{opacity:.55}
.card,.workflow-card,.account-detail,.account-metric,#officeHomeNotices,dialog,.customer-lookup{background:#FFFFFF!important;color:#18202A!important;border-color:#D7DDE4!important;background-image:none!important;box-shadow:none!important}
h1,h2,h3,h4,.menu-title{color:#18202A}.note,.muted,.subtitle,.menu-description{color:#66717F!important}
input:not([type=checkbox]):not([type=radio]),select,textarea,.field-filled,.field-missing{background:#FFFFFF!important;color:#18202A!important;border:1px solid #CBD3DB!important;box-shadow:none!important}
input:focus,select:focus,textarea:focus{outline:1px solid #5F7F9F!important;border-color:#5F7F9F!important}
dialog::backdrop{background:rgba(7,13,21,.62)!important}dialog h2{color:#18202A!important}.workflow-dialog [data-cancel-final]{background:#A64B4B!important;color:#FFFFFF!important;border-color:#A64B4B!important}
#homeScreen .office-home-menu{background:#111A27!important;color:#C7D0D9!important;border-radius:12px;padding:16px;box-sizing:border-box}
#homeScreen .office-home-menu .menu-title,#homeScreen .home-operator-icon{color:#C7D0D9!important}
#homeScreen .office-home-menu .menu-button{background:transparent!important;color:#C7D0D9!important;border:1px solid transparent!important;border-radius:7px;min-height:52px!important;padding:10px!important}
#homeScreen .office-home-menu .menu-button:hover,#homeScreen .office-home-menu .menu-button:focus-visible{background:#17263A!important;border-color:#5F7F9F!important;color:#FFFFFF!important}
#homeScreen .menu-icon{background:transparent!important;color:#86A4BF!important;width:28px!important;height:28px!important}.menu-icon svg{width:25px!important;height:25px!important}
#homeScreen .menu-description{color:#8D98A5!important}#homeScreen .home-operator-icon{background:transparent!important;border:0!important}
#staffOfficeHomeSummary>button{background:#FFFFFF!important;color:#18202A!important;border:1px solid #D7DDE4!important;border-left:3px solid #5F7F9F!important}
.workflow-steps .workflow-step{background:#F5F7F9!important;color:#5E6975!important;border-color:#D7DDE4!important}.workflow-steps .workflow-step>span{display:flex;align-items:center;gap:6px}
.workflow-steps .complete{background:#EDF4F0!important;color:#416956!important;border-color:#C9DDD2!important}.workflow-steps .waiting{background:#EEF3F7!important;color:#36536D!important;border-color:#B9C9D7!important;border-left:4px solid #5F7F9F!important}.workflow-steps .review,.warning{background:#FFF8EA!important;color:#795B21!important;border-color:#E5D2A5!important}.workflow-current{background:#EEF3F7!important;border-color:#5F7F9F!important;color:#18202A!important}
#officeHomeNotices details,#officeHomeNotices summary{background:#F1F5F8!important;color:#18202A!important;border-color:#D7DDE4!important}#officeHomeNotices details{border-left:3px solid #5F7F9F!important}
#officeSideRail{position:static!important;inset:auto!important;height:auto!important;max-height:none!important;overflow:visible!important;width:auto!important;align-self:start!important}
#officeSideRail #officeHomeNotices{position:static!important;height:auto!important;min-height:0!important;max-height:none!important;flex:none!important;overflow:visible!important}
#officeSideRail .customer-lookup{position:static!important}.customer-lookup summary{background:#EEF3F7!important;color:#18202A!important}
body.office-side-rail-active{padding-right:0!important}.office-mobile-nav{background:#111A27!important}.work-tabstrip{background:#111A27!important}.work-tab{background:#17263A!important;border-color:#5F7F9F!important}
.account-metric,.account-detail{--tone:#5F7F9F!important;--tint:#FFFFFF!important}.account-metric h3,.account-metric .metric,.account-detail h3{color:#18202A!important}
@media(min-width:1201px){
 body.office-side-rail-active .screen:not([hidden]){display:grid!important;grid-template-columns:minmax(0,1fr) 290px;column-gap:20px;align-items:start}
 .screen>.brand,.screen>.brand-header{grid-column:1/-1}
 body.office-side-rail-active .screen>.content,body.office-side-rail-active .staff-office-body{grid-column:1;width:auto!important;min-width:0;margin:0!important;padding:20px!important}
 .screen>#officeSideRail{grid-column:2;grid-row:2;margin:20px 20px 20px 0!important}
 #homeScreen>.content{display:grid!important;grid-template-columns:210px minmax(0,1fr)!important;gap:18px!important}
 #homeScreen .office-home-menu{grid-column:1;grid-row:1/5;align-self:start}
 #homeScreen .office-home-menu .menu-grid{grid-template-columns:1fr!important;gap:4px!important}
 #homeScreen .menu-description{display:none}
 #homeScreen .office-home-schedule{grid-column:2;grid-row:1;min-width:0}
 #homeScreen #staffOfficeHomeSummary{grid-column:2;grid-row:2;min-width:0}
 #homeScreen .office-home-current{grid-column:2;grid-row:3;min-width:0}
 #homeScreen .brand-inner{flex-wrap:nowrap!important;padding:12px 16px!important;gap:12px!important}
 #homeScreen .brand-inner>.office-quick-group{margin-left:auto;max-width:calc(100% - 345px)}
 #homeScreen .brand-inner .title{font-size:20px!important;white-space:nowrap}
 #homeScreen .office-quick-actions{justify-content:flex-end;flex-wrap:wrap!important}
 #homeScreen #accountSettingsOpen{flex:0 0 36px;margin-left:0!important}
}
@media(min-width:721px) and (max-width:1200px){#homeScreen .brand-inner{flex-wrap:nowrap!important}#homeScreen .office-quick-actions{flex-wrap:wrap}.office-quick-actions button{min-height:44px!important}#homeScreen .brand-inner .title{font-size:18px!important}}
@media(max-width:720px){
 .office-quick-group{flex:1 0 100%!important}.office-quick-group>summary{display:none!important}.office-quick-group:not([open])>.office-quick-actions{display:grid!important}
 .office-quick-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}.office-quick-actions button{white-space:normal!important;min-height:44px!important;line-height:1.35;font-size:12px!important;text-align:left;justify-content:flex-start}
 #homeScreen .office-home-menu .menu-button{background:#17263A!important;min-height:85px!important;gap:8px!important}.office-quick-group>summary{color:#FFFFFF!important}
}
#homeScreen .week-board,#homeScreen .week-board h3,#homeScreen .week-total,#homeScreen .today-count{color:#18202A!important}
#homeScreen>.content{align-items:stretch!important}
@media(min-width:1201px){#homeScreen .office-home-work{display:contents!important}#homeScreen>.content{display:grid!important}#homeScreen .office-home-menu .menu-grid{grid-template-columns:1fr!important}}
@media(min-width:1201px){body.office-side-rail-active #homeScreen.screen>.content,body.office-side-rail-active .screen.screen>.content,body.office-side-rail-active #staffOfficeScreen .staff-office-body{margin:0!important;width:100%!important;max-width:none!important;box-sizing:border-box}#homeScreen .office-home-menu .menu-name{font-size:15px!important}}
#homeScreen .office-home-schedule :is(h2,h3,strong),#homeScreen .office-home-current h2{color:#18202A!important}
#officeHomeNotices button.notice-item{background:#F1F5F8!important;color:#18202A!important;border-color:#D7DDE4!important;border-left:3px solid #5F7F9F!important}#officeHomeNotices button.notice-item.urgent{border-left-color:#A64B4B!important}
#officeHomeNotices [data-dismiss-category],.notice-heading button,.office-home-current [data-refresh],#masterRefresh{background:#FFFFFF!important;color:#18202A!important;border-color:#D7DDE4!important}
@media(max-width:720px){#homeScreen #accountSettingsOpen{order:0!important;margin-left:auto!important}#homeScreen .office-quick-group{order:3!important}}
#homeScreen .office-home-schedule .week-count,#homeScreen .office-home-schedule [id*=Count],#homeScreen .office-home-schedule [class*=count]{color:#18202A!important}
/* PC TOP: viewport shell, schedule row, then navigation / work / events. */
.home-work-actions{display:flex;flex-wrap:wrap;gap:7px}.home-work-actions button{display:inline-flex;align-items:center;gap:4px;min-height:42px;font-size:13px}.home-work-actions .next-action{background:#5F7F9F!important}.home-work-actions button:not(.next-action){background:#FFFFFF!important;color:#18202A!important;border-color:#D7DDE4!important}.notice-item strong{display:block}.notice-filter{font-size:12px;margin-bottom:8px}.notice-filter button{display:block;width:100%;margin:4px 0}
@media(min-width:1201px){
 html:has(#homeScreen:not([hidden])),body:has(#homeScreen:not([hidden])){height:100%;overflow:hidden!important;padding:0!important}
 body #homeScreen.screen:not([hidden]){display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto minmax(0,1fr);height:100dvh;overflow:hidden!important;gap:0}
 body #homeScreen.screen>.content{display:grid!important;grid-template-columns:250px minmax(0,1fr) 290px!important;grid-template-rows:minmax(130px,20vh) minmax(0,1fr)!important;gap:14px!important;min-height:0!important;width:100%!important;margin:0!important;padding:14px!important;overflow:hidden;box-sizing:border-box}
 #homeScreen>.content>.office-home-schedule{grid-column:1/-1!important;grid-row:1!important;width:100%!important;min-height:0;overflow:auto;padding:12px 16px!important}
 #homeScreen>.content>.office-home-schedule h2{margin:0 0 8px!important;font-size:17px!important}
 #homeScreen .office-home-menu{grid-column:1!important;grid-row:2!important;align-self:stretch!important;display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:12px!important}
 #homeScreen .office-home-menu .menu-title{font-size:15px;margin:0 0 7px!important}
 #homeScreen .office-home-menu .home-operator-icon{margin-bottom:8px!important;font-size:13px;min-height:28px}
 #homeScreen .office-home-menu .menu-grid{display:grid!important;grid-template-columns:1fr!important;gap:2px!important;min-height:0;overflow:auto;flex:1;align-content:start}
 #homeScreen .office-home-menu .menu-button{min-height:34px!important;padding:6px!important;gap:7px!important;font-size:13px!important;flex-direction:row!important}
 #homeScreen .office-home-menu .menu-name{font-size:13px!important}
 #homeScreen .office-home-menu .menu-icon{width:22px!important;height:22px!important}.office-home-menu .menu-icon svg{width:20px!important;height:20px!important}
 #homeScreen .office-home-current{grid-column:2!important;grid-row:2!important;margin:0!important;padding:16px!important;min-height:0;overflow:auto;align-self:stretch;width:100%;box-sizing:border-box}
 #homeScreen .office-home-current h2{font-size:18px!important;margin:0}
 #homeScreen #staffOfficeHomeSummary{margin:10px 0!important;gap:8px!important}
 #homeScreen #staffOfficeHomeSummary>button{min-height:44px!important;padding:8px 10px!important;font-size:12px}#homeScreen #staffOfficeHomeSummary small{display:none}
 #homeScreen>.content>#officeSideRail{grid-column:3!important;grid-row:2!important;min-height:0!important;height:100%!important;max-height:100%!important;width:100%!important;margin:0!important;overflow:hidden!important;display:flex;align-self:stretch!important}
 #homeScreen #officeSideRail #officeHomeNotices{height:100%!important;max-height:100%!important;min-height:0!important;display:flex!important;flex-direction:column;box-sizing:border-box;padding:12px!important;overflow:hidden!important;width:100%}
 #homeScreen #officeHomeNotices .notice-heading{flex:none}#homeScreen #officeHomeNotices .notice-heading h2{font-size:17px}
 #homeScreen #officeHomeNotices .notice-items{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;margin-top:10px}
 #homeScreen .office-home-menu .customer-lookup{position:static!important;inset:auto!important;transform:none!important;visibility:visible!important;width:100%!important;max-width:none!important;box-sizing:border-box;margin-top:10px;flex:none;box-shadow:none;max-height:180px;overflow:auto}
 #homeScreen .office-home-menu .customer-lookup summary{font-size:12px;padding:7px}
 #homeScreen .office-home-menu .customer-lookup form{display:flex;gap:5px;align-items:end;padding:7px}#homeScreen .office-home-menu .customer-lookup label{font-size:11px;min-width:0;flex:1}
 #homeScreen .office-home-menu .customer-lookup input{min-width:0;min-height:32px;padding:6px;margin:4px 0 0;font-size:12px}
 #homeScreen .office-home-menu .customer-lookup button{padding:6px;font-size:11px;min-height:32px;white-space:nowrap}
 #homeScreen .brand-inner{padding:8px 12px!important;gap:8px!important}#homeScreen .brand-inner .title{font-size:18px!important}#homeScreen .brand-inner .logo-plate{width:34px!important;height:34px!important}
 #homeScreen .brand-inner>.office-quick-group{max-width:none!important;flex:1 1 0!important;margin-left:12px!important}#homeScreen .office-quick-actions button{font-size:12px!important;padding:6px!important;min-height:36px!important}
 #homeScreen #homeDate{padding-bottom:5px!important;font-size:11px!important}
}
@media(min-width:1201px) and (max-height:900px){#homeScreen .office-home-menu .menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}#homeScreen .office-home-menu .menu-button{flex-direction:column!important;align-items:flex-start;min-height:48px!important;gap:3px!important}#homeScreen .office-home-menu .menu-icon{display:none!important}}
.office-work-child .top-return,.office-work-child #staffOfficeBack,.office-work-child [aria-label="TOPへ戻る"]{display:none!important}
@media(min-width:1201px){#staffOfficeScreen .staff-office-body{grid-row:2!important;align-self:start!important}#staffOfficeScreen{grid-template-rows:auto 1fr!important;align-content:start!important}}
/* Readable type and clearly bordered business controls. */
#homeScreen .office-home-menu .menu-button{border:1px solid #5F7F9F!important;background:#17263A!important;margin:2px 0!important}
#homeScreen .office-home-menu .menu-name{font-size:16px!important;line-height:1.45!important}
.screen,dialog{font-size:16px!important}.screen label,.screen input,.screen select,.screen textarea,dialog input,dialog select,dialog textarea{font-size:16px!important}
.notice-item{white-space:normal!important;overflow-wrap:anywhere!important;text-align:left!important;min-width:0!important}.notice-item strong{font-size:16px!important}.notice-item small,.notice-item time{font-size:13px!important}
.mobile-action-icon,.quick-short-label{display:none}
@media(max-width:720px){
 body{padding-bottom:calc(82px + env(safe-area-inset-bottom))!important}
 .screen>.brand,.screen>.brand-header{position:sticky!important;top:0!important;z-index:91!important}
 .screen>.content,.staff-office-body{padding-top:66px!important}
 .office-mobile-nav{display:flex!important;position:fixed!important;top:var(--mobile-header-height,90px)!important;bottom:auto!important;left:0;right:0;z-index:90;padding:6px!important;gap:5px!important;background:#111A27!important}
 .office-mobile-nav button{font-size:14px!important;min-height:46px!important}
 .office-work-open>.office-mobile-nav{display:none!important}
 #officeWorkTabs>.work-toolbar,#officeWorkTabs>.work-tabstrip{display:none!important}
 .office-quick-group{height:0!important;width:0!important;flex:0!important;margin:0!important;padding:0!important;overflow:visible!important}
 .office-quick-actions{position:fixed!important;bottom:0!important;left:0!important;right:0!important;top:auto!important;z-index:95;display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:2px!important;padding:6px 3px calc(6px + env(safe-area-inset-bottom))!important;background:#111A27!important;border-top:1px solid #5F7F9F;box-sizing:border-box}
 .office-quick-actions button[data-quick=customer]{display:none!important}
 .office-quick-actions button{flex-direction:column!important;justify-content:center!important;gap:4px!important;padding:5px 0!important;min-width:0!important;min-height:62px!important;border-radius:7px!important;background:#17263A!important}
 .office-quick-actions .office-state-icon,.office-quick-actions .quick-full-label{display:none!important}
 .office-quick-actions .mobile-action-icon{display:block;width:27px;height:27px;flex:none}
 .office-quick-actions .quick-short-label{display:block;font-size:10px!important;line-height:1.3!important;white-space:nowrap!important;letter-spacing:-.4px;color:#FFFFFF}
 #homeScreen>.content{display:flex!important;flex-direction:column!important;gap:16px!important}
 #homeScreen .office-home-work{display:contents!important}
 #homeScreen .office-home-current{order:1!important;margin-top:0!important}
 #homeScreen .office-home-schedule{order:0!important}
 #homeScreen #officeHomeNotices,#homeScreen #officeSideRail{order:2!important}
 #homeScreen .office-home-menu{order:3!important}
 #officeHomeNotices,#officeSideRail #officeHomeNotices{height:420px!important;max-height:60dvh!important;min-height:220px!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;box-sizing:border-box!important}
 #officeHomeNotices .notice-heading{flex:none!important}
 #officeHomeNotices .notice-items{flex:1!important;min-height:0!important;overflow:auto!important;overscroll-behavior:contain!important}
 #homeScreen .office-home-menu .menu-name{font-size:17px!important}
 #homeScreen .office-home-menu .menu-button{min-height:76px!important}
 .screen h2{font-size:20px!important}.screen p,.home-work-item,.notice-item{font-size:16px!important;line-height:1.6!important}
 .workflow-dialog{max-height:85dvh!important;overflow:auto!important}
}
/* Notification renderer uses an inline block display; bound the list itself. */
#officeHomeNotices .notice-items{height:calc(100% - 64px)!important;max-height:calc(100% - 64px)!important;min-height:0!important;overflow-y:auto!important;overscroll-behavior:contain!important}
.work-quick-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 12px;background:#0B111A;color:#FFFFFF;flex:none}
.work-quick-header>span{font-size:13px;white-space:nowrap}.work-quick-slot{margin-left:auto}.work-quick-header .office-quick-actions{display:flex;justify-content:flex-end;flex-wrap:wrap}
.work-quick-header button{background:#17263A!important;color:#FFFFFF!important;border:1px solid #5F7F9F!important;border-radius:6px}
.work-menu-icon{width:21px;height:21px;flex:none;color:#86A4BF}.work-toolbar #workMenu button{display:inline-flex;align-items:center;gap:6px}
@media(min-width:721px){.brand-inner>.office-quick-group,.route-header-inner>.office-quick-group{margin-left:auto!important;flex:0 1 auto!important}.office-quick-actions{justify-content:flex-end!important}.office-work-child .office-quick-group{display:none!important}}
@media(max-width:720px){.work-quick-header{display:none!important}}

@media(max-width:720px){#officeHomeNotices,#officeSideRail #officeHomeNotices{display:none!important}}
.home-operator-icon,.office-operator-profile,.work-operator-profile{display:inline-flex!important;align-items:center;gap:8px;font-size:14px!important;white-space:nowrap;color:#FFFFFF!important;background:#17263A!important;border:1px solid #5F7F9F!important;border-radius:7px;padding:6px 10px!important;min-height:40px}
.home-operator-icon img,.office-operator-profile img,.work-operator-profile img{width:30px!important;height:30px!important;object-fit:cover;border-radius:50%}.brand-inner>.home-operator-icon{order:-2!important;flex:none!important;margin:0!important}
@media(min-width:721px){.office-work-child .office-operator-profile{display:none!important}}
@media(max-width:720px){.brand-inner>.home-operator-icon{font-size:12px!important;padding:4px!important}.brand-inner>.home-operator-icon img{width:25px!important;height:25px!important}}
@media(max-width:720px){body #homeScreen.screen #officeHomeNotices,body #staffOfficeScreen.screen #officeHomeNotices,body #officeSideRail #officeHomeNotices{display:none!important}}
/* 2026-10-01 PC TOP: compact action group and equal-height work panels. */
@media(min-width:1201px){
 body #homeScreen.screen>.content{grid-template-columns:280px minmax(0,1fr) 290px!important;grid-template-rows:clamp(144px,18dvh,196px) minmax(0,1fr)!important;gap:14px!important;padding:14px!important}
 #homeScreen .brand-inner>.office-quick-group{flex:0 1 auto!important;width:fit-content!important;max-width:calc(100% - 390px)!important;margin-left:auto!important}
 #homeScreen .office-quick-actions{display:flex!important;flex-wrap:wrap!important;justify-content:flex-end!important;align-items:center!important;align-content:center!important;gap:4px!important;padding:5px!important;background:#111A27;border:1px solid #34495F;border-radius:9px;box-sizing:border-box}
 #homeScreen .office-quick-actions button{flex:0 0 auto!important;width:auto!important;height:38px!important;min-height:38px!important;margin:0!important;padding:6px 8px!important;gap:5px!important;border:1px solid #5F7F9F!important;border-radius:6px!important;font-size:12px!important;line-height:1!important;white-space:nowrap!important;align-items:center!important;justify-content:center!important}
 #homeScreen .office-quick-actions .office-state-icon{width:23px!important;height:23px!important;margin:0!important}
 #homeScreen .office-home-menu,#homeScreen .office-home-current,#homeScreen>.content>#officeSideRail{align-self:stretch!important;height:100%!important;min-height:0!important;max-height:100%!important;margin:0!important;box-sizing:border-box!important}
 #homeScreen .office-home-menu{padding:14px!important;gap:0!important}
 #homeScreen .office-home-menu .menu-title{font-size:18px!important;margin:0 0 12px!important;flex:none}
 #homeScreen .office-home-menu .menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:clamp(44px,calc((100dvh - 540px)/6),76px)!important;gap:8px!important;align-content:start!important;flex:1 1 auto!important;overflow-y:auto!important;min-height:0!important}
 #homeScreen .office-home-menu .menu-button{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;height:100%!important;min-height:0!important;gap:6px!important;padding:8px!important;margin:0!important;box-sizing:border-box!important}
 #homeScreen .office-home-menu .menu-name{font-size:15px!important;line-height:1.4!important;white-space:normal!important}
 #homeScreen .office-home-menu .menu-icon{display:inline-flex!important;flex:none!important;width:21px!important;height:21px!important;margin:0!important}
 #homeScreen .office-home-menu .menu-icon svg{width:21px!important;height:21px!important}
 #homeScreen .office-home-menu .customer-lookup{margin-top:12px!important;max-height:120px!important;flex:none!important}
 #homeScreen #officeSideRail #officeHomeNotices{display:flex!important;flex-direction:column!important;height:100%!important;min-height:0!important;max-height:100%!important;padding:14px!important;margin:0!important;overflow:hidden!important;box-sizing:border-box!important}
 #homeScreen #officeSideRail #officeHomeNotices .notice-heading{flex:0 0 auto!important;min-height:42px;margin:0!important}
 #homeScreen #officeSideRail #officeHomeNotices .notice-items{flex:1 1 0!important;height:auto!important;max-height:none!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;margin-top:10px!important;overscroll-behavior:contain!important}
}
@media(min-width:1201px){
 body #homeScreen.screen>.content{height:100%!important;max-height:100%!important}
 #homeScreen .office-quick-actions{display:grid!important;grid-template-columns:repeat(4,max-content)!important}
 #homeScreen .office-quick-actions button{width:100%!important}
 #homeScreen>.content>.office-home-schedule{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto auto;grid-template-rows:42px minmax(0,1fr);gap:8px 12px;overflow:hidden!important}
 #homeScreen .office-home-schedule>div:first-child{display:contents!important}
 #homeScreen .office-home-schedule h2{grid-column:1;grid-row:1;align-self:center;margin:0!important}
 #homeScreen .office-home-schedule .daily-count{grid-column:4;grid-row:1;align-self:center;font-size:24px!important;line-height:1.2!important;padding:0!important}
 #homeScreen .office-calendar-toolbar{grid-column:2;grid-row:1;margin:0!important;align-self:center}
 #homeScreen #masterRefresh{grid-column:3;grid-row:1;align-self:center}
 #homeScreen .office-home-schedule button{min-height:36px!important;height:36px!important;padding:6px 10px!important;font-size:14px!important}
 #homeScreen #weekBoard,#homeScreen .office-month,#homeScreen #weekStatus{grid-column:1/-1;grid-row:2;min-height:0;overflow:auto;margin:0!important}
 #homeScreen .office-home-menu .customer-lookup{max-height:100px!important}
}
@media(min-width:1750px){#homeScreen .office-quick-actions{grid-template-columns:repeat(8,max-content)!important}}
@media(min-width:1201px){
 #homeScreen .office-home-menu .menu-grid{grid-template-rows:repeat(6,minmax(36px,1fr))!important;grid-auto-rows:auto!important}
 #homeScreen .office-home-menu .customer-lookup{padding:0!important}
 #homeScreen #weekBoard{grid-template-columns:repeat(7,minmax(0,1fr))!important}
 #homeScreen #weekBoard .week-day{min-width:0!important}
}
@media(min-width:1201px){
 body #homeScreen.screen>.content{grid-template-columns:300px minmax(0,1fr) 290px!important}
 #homeScreen .office-home-menu .menu-grid{grid-template-rows:repeat(6,minmax(38px,1fr))!important;gap:6px!important}
 #homeScreen .office-home-menu .customer-lookup{max-height:90px!important}
 #homeScreen .office-home-menu .customer-lookup form{margin:0!important;padding:6px!important}
 #homeScreen .office-home-menu .customer-lookup label{font-size:0!important;margin:0!important;line-height:1!important}
 #homeScreen .office-home-menu .customer-lookup input{margin:0!important;height:32px!important}
}
/* Shared semantic states; only the icon carries saturated state colour. */
.schedule-state{background:transparent!important;border:0!important;padding:0!important;display:inline-flex!important;flex:none!important;width:24px!important;height:24px!important}
.schedule-state .office-state-icon{width:24px!important;height:24px!important;margin:0!important}
.workflow-steps .waiting,.workflow-steps .pending{color:#B77932!important;border-left-color:#B77932!important;background:#F5F7F9!important}
.workflow-steps .complete{color:#3F7258!important}.workflow-steps .review{color:#A64B4B!important;background:#FAEEEE!important;border-color:#A64B4B!important}
[data-ui-state=complete]{color:#3F7258!important}[data-ui-state=waiting]{color:#B77932!important}[data-ui-state=error]{color:#A64B4B!important}[data-ui-state=normal]{color:#5F7F9F!important}
@media(min-width:1201px){
 body #homeScreen.screen>.content{grid-template-rows:clamp(130px,20dvh,220px) minmax(0,1fr)!important}
 #homeScreen .office-quick-actions button{height:44px!important;min-height:44px!important;font-size:14px!important;padding:8px 10px!important}
 #homeScreen .office-quick-actions .office-state-icon{width:27px!important;height:27px!important}
 #homeScreen .office-quick-actions{gap:4px!important}
 #homeScreen #weekBoard{overflow:hidden!important;align-items:stretch!important;padding:0!important}
 #homeScreen #weekBoard .week-day{display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:0 8px!important}
 #homeScreen #weekBoard .week-day h3{flex:none;line-height:24px!important;margin:0 0 6px!important;font-size:14px!important}
 #homeScreen #weekBoard .week-day-list{height:170px;max-height:170px;overflow:auto;overscroll-behavior:contain;min-height:0}
 #homeScreen #weekBoard .week-booking-row{height:34px!important;min-height:34px!important;max-height:34px!important;padding:3px 2px!important;gap:5px!important;flex-wrap:nowrap!important;white-space:nowrap!important;font-size:14px!important;line-height:24px!important}
 #homeScreen #weekBoard .week-booking-row span:not(.schedule-state){white-space:nowrap!important}
 #homeScreen .office-home-menu .menu-grid{grid-template-rows:repeat(6,minmax(38px,1fr))!important}
}
@media(min-width:1750px) and (max-width:1899px){#homeScreen .office-quick-actions{grid-template-columns:repeat(4,max-content)!important}}
@media(min-width:1201px){
 #homeScreen>.content>.office-home-schedule{height:100%!important;margin:0!important;box-sizing:border-box!important}
 #homeScreen #weekBoard .week-day-list{flex:0 0 170px!important}
}
@media(min-width:1201px){
 #homeScreen #weekBoard .week-day-list{overflow-x:hidden!important}
 #homeScreen #weekBoard .week-booking-row{box-sizing:border-box!important;max-width:100%!important;overflow:hidden!important}
 #homeScreen #weekBoard .week-booking-row span:last-child:not(.schedule-state){flex:1 1 auto!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important}
}
/* PC and landscape tablet header. Mobile keeps the counters in the work area. */
.counter-icon{display:none}
#homeScreen.compact-counter-header .brand-inner{display:flex!important;flex-wrap:nowrap!important;justify-content:flex-start!important;align-items:center!important;width:100%!important;max-width:none!important;box-sizing:border-box!important;margin:0!important;padding:6px 12px!important;gap:8px!important;min-height:72px!important}
#homeScreen.compact-counter-header .home-operator-icon{order:-4!important;flex:none!important;margin:0!important;padding:4px!important}
#homeScreen.compact-counter-header .logo-plate{order:-3!important;flex:none!important;width:30px!important;height:30px!important}
#homeScreen.compact-counter-header .home-header-title{order:-2!important;flex:0 0 auto!important;min-width:0!important}
#homeScreen.compact-counter-header .home-header-title .title{font-size:17px!important;margin:2px 0!important;white-space:nowrap!important}
#homeScreen.compact-counter-header .home-header-title .subtitle{display:none!important}
#homeScreen.compact-counter-header #staffOfficeHomeSummary{order:-1!important;display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;gap:4px!important;margin:0 4px!important;flex:0 0 132px!important;align-self:center!important}
#homeScreen.compact-counter-header #staffOfficeHomeSummary[hidden]{display:none!important}
#homeScreen.compact-counter-header #staffOfficeHomeSummary>button{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:5px!important;height:28px!important;min-height:28px!important;padding:3px 6px!important;margin:0!important;width:100%!important;border:1px solid #5F7F9F!important;border-radius:5px!important;background:#17263A!important;color:#FFFFFF!important;font-size:12px!important;white-space:nowrap!important}
#homeScreen.compact-counter-header #staffOfficeHomeSummary>button strong{font-size:12px!important;font-weight:600!important}
#homeScreen.compact-counter-header #staffOfficeHomeSummary>button>span{margin-left:auto!important;font-size:12px!important;font-weight:700!important}
#homeScreen.compact-counter-header #staffOfficeHomeSummary small{display:none!important}
#homeScreen.compact-counter-header .counter-icon{display:inline-flex;flex:none;font-style:normal}
#homeScreen.compact-counter-header .counter-icon .office-state-icon{width:20px!important;height:20px!important;margin:0!important}
#homeScreen.compact-counter-header #staffOfficeHomeSummary>button[data-empty=true]{opacity:.65!important;border-color:#34495F!important;background:#111A27!important}
#homeScreen.compact-counter-header .brand-inner>.office-quick-group{order:0!important;flex:1 1 auto!important;min-width:0!important;max-width:none!important;width:auto!important;margin:0 0 0 auto!important;overflow:hidden!important}
#homeScreen.compact-counter-header .office-quick-actions{display:flex!important;flex-wrap:nowrap!important;justify-content:flex-start!important;gap:4px!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:thin;scrollbar-color:#5F7F9F #111A27;overscroll-behavior:contain;padding:3px!important;width:100%!important;box-sizing:border-box!important}
#homeScreen.compact-counter-header .office-quick-actions button{flex:0 0 auto!important;width:auto!important;height:42px!important;min-height:42px!important;padding:7px 8px!important;font-size:13px!important;white-space:nowrap!important}
#homeScreen.compact-counter-header #accountSettingsOpen{order:1!important;position:static!important;flex:none!important;width:36px!important;height:36px!important;min-height:36px!important;margin:0!important}
#homeScreen.compact-counter-header #homeDate{font-size:10px!important;margin:0!important;padding:0 12px 4px!important;line-height:14px!important}
@media(min-width:768px) and (max-width:1200px) and (orientation:landscape){
 #homeScreen.compact-counter-header .brand-inner{gap:6px!important;padding:6px 8px!important}
 #homeScreen.compact-counter-header .home-header-title .title{font-size:15px!important}
 #homeScreen.compact-counter-header .home-header-title .eyebrow{font-size:8px!important}
 #homeScreen.compact-counter-header .home-operator-icon{font-size:12px!important}
 #homeScreen.compact-counter-header #staffOfficeHomeSummary{flex-basis:126px!important}
}
/* Separate left context from the right-aligned quick toolbar. */
#homeScreen.compact-counter-header .brand-inner>.office-quick-group{flex:0 1 auto!important;width:max-content!important;margin-left:auto!important}
#homeScreen.compact-counter-header .office-quick-actions{width:max-content!important;max-width:100%!important}
#homeScreen.compact-counter-header .office-quick-actions button{height:44px!important;min-height:44px!important;padding:8px 10px!important;font-size:14px!important}
#homeScreen.compact-counter-header .office-quick-actions .office-state-icon{width:27px!important;height:27px!important}
@media(min-width:1201px){
 #homeScreen.compact-counter-header #staffOfficeHomeSummary{flex-direction:row!important;flex:0 0 auto!important;gap:6px!important}
 #homeScreen.compact-counter-header #staffOfficeHomeSummary>button{width:auto!important;min-width:112px!important}
 #homeScreen .office-home-menu .menu-grid{grid-template-rows:repeat(6,minmax(44px,1fr))!important}
 #homeScreen .office-home-menu .menu-button{display:grid!important;grid-template-columns:21px minmax(0,1fr)!important;gap:5px!important;align-content:center!important;padding:7px!important}
 #homeScreen .office-home-menu .menu-button>span:not(.menu-icon){min-width:0!important}
 #homeScreen .office-home-menu .menu-description{display:block!important;white-space:normal!important;font-size:12px!important;line-height:1.4!important;color:#AAB6C2!important;margin-top:4px!important;overflow-wrap:anywhere!important}
}

#homeScreen #weekBoard [data-schedule-phase="started"]{background:#3F7258!important;color:#FFFFFF!important;border-color:#3F7258!important}
#homeScreen #weekBoard [data-schedule-phase="ended"]{background:#E5EEF5!important;color:#18202A!important;border-color:#B9C9D7!important}
#homeScreen #weekBoard [data-schedule-phase] span:not(.office-state-icon){color:inherit}

body>.office-mobile-quick-dock{display:none!important}
@media(max-width:720px){
 .office-quick-actions:not(.office-mobile-quick-dock){visibility:hidden!important;pointer-events:none!important}
 body>.office-mobile-quick-dock{display:grid!important;position:fixed!important;inset:auto 0 0!important;width:100%!important;margin:0!important;transform:none!important;transition:none!important;animation:none!important;z-index:260!important;border-radius:0!important;visibility:visible!important;pointer-events:auto!important}
 body>.office-mobile-quick-dock button{background:#17263A!important;color:#FFFFFF!important;border:1px solid #5F7F9F!important;border-radius:7px!important}
}

@media(min-width:1201px){
 #homeScreen .office-home-menu{padding:10px!important}
 #homeScreen .office-home-menu .menu-title{margin-bottom:8px!important;font-size:16px!important}
 #homeScreen .office-home-menu .menu-grid{gap:4px!important}
 #homeScreen .office-home-menu .menu-button{padding:4px 6px!important}
 #homeScreen .office-home-menu .menu-name{font-size:14px!important;line-height:18px!important}
 #homeScreen .office-home-menu .menu-description{font-size:11px!important;line-height:13px!important;margin-top:2px!important}
 #homeScreen #weekBoard .week-day-list{flex:1 1 0!important;height:auto!important;max-height:none!important}
}
@media(min-width:1201px) and (max-height:800px){
 #homeScreen .office-home-menu .menu-description{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
 #homeScreen .office-home-menu .customer-lookup{margin-top:6px!important}
}


/* /mobile-booking-fixes.css */
.booking-detail-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.booking-detail-fields>div{padding:10px 0;border-bottom:1px solid #E8ECF0;min-width:0}.booking-detail-fields dt{color:#66717F;font-size:13px}.booking-detail-fields dd{margin:3px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;color:#18202A}.booking-full-details{margin:16px 0;padding:16px;border:1px solid #D7DDE4;border-radius:10px;background:#fff}.booking-full-details details{margin-top:12px}.phone-work-toggle[hidden]{display:none!important}
@media(max-width:720px){
 body.phone-booking-active>#receptionRegisterBar.reception-register-bar{display:flex!important;position:fixed!important;left:8px!important;right:8px!important;bottom:calc(var(--quick-dock-height,78px) + 6px)!important;top:auto!important;z-index:270!important;width:auto!important;max-width:none!important;box-sizing:border-box!important;margin:0!important;padding:8px!important;gap:5px!important;flex-direction:column!important;background:#fff!important;border:1px solid #5F7F9F!important;border-radius:10px!important;visibility:visible!important;transform:none!important}
 body.phone-booking-active #bookingScreen{padding-bottom:210px!important}
 body.phone-booking-active>#receptionRegisterBar #manualRegisterButton{display:block!important;min-height:44px!important;width:100%!important;background:#17263A!important;color:#fff!important;margin:0!important}
 body.phone-booking-active>#receptionRegisterBar #manualRegisterButton:disabled{opacity:.55!important}
 body.phone-booking-active>#receptionRegisterBar #receptionRegisterAmount{font-size:12px!important;white-space:normal!important;justify-content:center}
 #homeScreen .phone-work-compact .home-work-item[hidden]{display:none!important}
 #homeScreen .phone-work-compact .home-work-item{padding:9px!important;margin:6px 0!important}
 #homeScreen .phone-work-compact .home-work-item p{font-size:13px!important;margin:4px 0!important}
 .booking-detail-fields{grid-template-columns:1fr}.booking-full-details{padding:12px}
}

@media(max-width:720px){.office-mobile-nav{box-sizing:border-box!important;gap:4px!important;padding:6px 4px!important}.office-mobile-nav button{flex:1 1 0!important;min-width:0!important;padding:6px 0!important;font-size:clamp(11px,3.3vw,14px)!important;letter-spacing:0!important;white-space:nowrap!important;text-align:center!important;min-height:46px!important}}

/* office-content-width.css */
/* Notifications live in the bell dialog; they no longer reserve a page column. */
body #officeSideRail:not([hidden]){display:contents!important}
body #officeHomeNotices{display:none!important}
@media(min-width:1201px){
 body.office-side-rail-active .screen:not([hidden]){grid-template-columns:minmax(0,1fr)!important;column-gap:0!important}
 body.office-side-rail-active .screen>.content,
 body.office-side-rail-active #staffOfficeScreen>.staff-office-body{
  width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important;
 }
 /* Phone lookup remains available from the header, without occupying a rail. */
 body #officeSideRail>.customer-lookup{
  position:fixed!important;top:112px!important;right:16px!important;bottom:auto!important;
  width:min(380px,calc(100vw - 32px))!important;max-width:none!important;
  max-height:calc(100dvh - 136px)!important;min-height:0!important;overflow:auto!important;z-index:190!important;
 }
 body #officeSideRail>.customer-lookup:not(:has(details[open])){display:none!important}
 body #officeSideRail>.customer-lookup:has(details[open]){display:flex!important;flex-direction:column!important}
 body #officeSideRail>.customer-lookup>.mobile-phone-close{display:block!important;align-self:flex-end;margin:6px!important}
}
@media(min-width:1401px){
 body #homeScreen.screen>.content{grid-template-columns:300px minmax(0,1fr)!important}
 body #homeScreen .office-home-current{grid-column:2/-1!important;min-width:0!important}
 body #homeScreen>.content>.office-home-schedule{grid-column:1/-1!important}
}

/* office-compact-work.css */
.tablet-quick-toggle{display:none!important}
@media(min-width:1401px){
 body .workflow-workbench .workflow-results{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:10px}
 body .workflow-workbench .workflow-card{padding:12px;overflow-wrap:anywhere}
 body .workflow-workbench .workflow-card header{flex-wrap:wrap;gap:6px}
 body .workflow-workbench .workflow-card h3{font-size:16px}
 body .workflow-workbench .workflow-steps{grid-template-columns:minmax(0,1fr)}
 body .workflow-workbench .workflow-step{padding:8px!important;font-size:14px}
 body .workflow-workbench .workflow-current{padding:8px;line-height:1.55}
}
@media(min-width:721px) and (max-width:1400px){
 body .work-quick-slot:not(.quick-expanded)>.office-quick-actions,body .screen:not(#homeScreen) .office-quick-group:not(.quick-expanded)>.office-quick-actions{display:none!important}
 body .work-quick-header>.work-quick-slot,body .screen:not(#homeScreen) .brand-inner>.office-quick-group{flex:0 0 auto!important;width:auto!important;margin-left:auto!important}
 body .reservation-overview>.overview-tools,body .customer-search,body #accountingPeriod{display:flex!important;flex-wrap:nowrap!important;align-items:flex-end!important;gap:6px!important;margin:0 0 8px!important;min-width:0}
 body .workflow-workbench .workflow-filters{display:grid!important;grid-template-columns:minmax(150px,1.5fr) minmax(115px,.8fr) minmax(115px,.8fr) minmax(100px,1fr) auto!important;align-items:end!important;gap:6px!important;width:100%!important;max-width:960px!important;min-width:0!important;box-sizing:border-box!important;margin:0 0 8px!important}
 body .workflow-workbench .workflow-filters>label{display:block!important;width:auto!important;max-width:100%!important;min-inline-size:0!important;overflow:hidden;box-sizing:border-box!important}
 body .workflow-workbench .workflow-filters :is(input,select){display:block!important;box-sizing:border-box!important;max-width:100%!important;min-inline-size:0!important;max-inline-size:100%!important;overflow:hidden!important;text-overflow:ellipsis}
 body .workflow-workbench .workflow-filters input[type=date]{appearance:none;-webkit-appearance:none;line-height:24px!important}
 body .workflow-workbench .workflow-filters input[type=date]::-webkit-date-and-time-value{min-width:0;text-align:left;overflow:hidden;text-overflow:ellipsis}
 body .workflow-filters>label,body .reservation-overview>.overview-tools>label,body .customer-search>label{flex:1 1 0!important;min-width:0!important;margin:0!important;font-size:12px!important;line-height:1.4}
 body .workflow-filters>label:first-child,body .customer-search>label:first-child{flex-grow:1.5!important}
 body .workflow-filters>button,body .customer-search>button,body #accountingPeriod>button{flex:none!important;width:auto!important;white-space:nowrap!important;margin:0!important;min-height:36px!important;padding:6px 8px!important;font-size:13px!important}
 body :is(.workflow-filters,.overview-tools,.customer-search,#accountingPeriod) :is(input,select){width:100%!important;min-width:0!important;min-height:36px!important;height:36px!important;padding:5px 6px!important;font-size:14px!important;margin:2px 0 0!important}
 body #accountingPeriod>.staff-grid{display:contents!important}
 body #accountingPeriod>.staff-grid>div{flex:1 1 0;min-width:0}
 body #accountingPeriod label{margin:0!important;font-size:12px!important}
 body .reservation-overview details .overview-tools{display:grid!important;grid-auto-flow:column;grid-template-columns:none!important;grid-auto-columns:minmax(96px,1fr);gap:6px;overflow-x:auto}
 body .reservation-overview details{margin:6px 0!important}
 body .reservation-overview summary{padding:6px 8px!important;font-size:13px}
 body .overview-tabs{flex-wrap:nowrap!important;overflow-x:auto;gap:4px!important}
 body .overview-tabs button{flex:none;min-height:34px!important;padding:5px 7px!important;font-size:12px!important;white-space:nowrap}
 body .reservation-overview .overview-summary{gap:6px;margin:8px 0!important}
 body .overview-summary>span{padding:6px 8px!important;font-size:12px}
 body .overview-summary strong{font-size:16px!important}
 body .tablet-quick-container{position:relative!important;flex:0 0 auto!important;width:auto!important;margin-left:auto!important;order:10!important;overflow:visible!important}
 body .screen:not(#homeScreen) .brand-inner>.tablet-quick-container,body .work-quick-header>.tablet-quick-container{flex:0 0 auto!important;width:auto!important;margin-left:auto!important}
 body .tablet-quick-toggle{display:inline-flex!important;align-items:center;gap:5px;min-height:36px!important;padding:5px 9px!important;background:#17263A!important;color:#FFFFFF!important;border:1px solid #5F7F9F!important;border-radius:7px;font-size:14px!important;white-space:nowrap}
 .tablet-quick-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}
 body .tablet-quick-container>.office-quick-actions{display:none!important}
 body .tablet-quick-container.quick-expanded>.office-quick-actions{display:grid!important;position:fixed!important;top:58px!important;right:8px!important;left:auto!important;bottom:auto!important;width:min(330px,calc(100vw - 24px))!important;max-height:calc(100dvh - 74px)!important;overflow-y:auto!important;grid-template-columns:minmax(0,1fr)!important;gap:6px!important;padding:10px!important;box-sizing:border-box!important;background:#111A27;border:1px solid #5F7F9F;border-radius:10px;box-shadow:0 8px 24px #0B111A33;z-index:980}
 body .tablet-quick-container.quick-expanded .office-quick-actions button{height:40px!important;min-height:40px!important;font-size:14px!important;padding:7px 9px!important}
 body .work-quick-header{flex-wrap:nowrap!important;min-height:40px!important;padding:4px 8px!important;gap:8px!important}
 body .screen:not(#homeScreen) .brand-inner{flex-wrap:nowrap!important;min-height:48px!important;padding-top:4px!important;padding-bottom:4px!important}
 body .screen:not(#homeScreen) .brand-inner>.tablet-quick-container{order:10!important}
 body .work-toolbar,body .work-tabstrip{padding-top:3px!important;padding-bottom:3px!important}
 body .work-toolbar button,body .work-tab button{min-height:34px!important;padding:5px 8px!important;font-size:13px!important}
}

@media(max-width:720px){body.office-work-modal-open>.office-mobile-quick-dock{visibility:hidden!important;pointer-events:none!important}}

/* Separate reservation identity, customer-link tools and workflow steps. */
.home-work-item > button[data-home-detail]{margin-inline-start:12px;vertical-align:middle}
.home-work-item > button[data-step="arrivalTools"]{display:block;margin-block:12px 16px;max-width:100%}
