:root{--b:#155eef;--bg:#f4f7fb;--line:#dfe6ef;--muted:#6d788b;--ink:#182033;--card:#fff}
*{box-sizing:border-box}body{margin:0;font-family:"Malgun Gothic","Apple SD Gothic Neo",Arial,sans-serif;background:var(--bg);color:var(--ink)}
.wrap{max-width:1250px;margin:auto;padding:24px}.top{display:flex;justify-content:space-between;align-items:center;gap:12px}
h1{margin:0;font-size:27px}.sub{color:var(--muted);font-size:13px;margin-top:5px}
.btn{border:0;border-radius:8px;padding:8px 11px;font-size:10px;font-weight:700;cursor:pointer}.primary{background:var(--b);color:white}.light{background:#eaf1ff;color:#174ea6}.ghost{background:white;border:1px solid var(--line)}
.card{background:var(--card);border:1px solid var(--line);border-radius:15px;padding:18px;margin-top:15px;box-shadow:0 8px 24px rgba(30,55,90,.06)}
.title{font-size:18px;font-weight:800;margin-bottom:14px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.field label{display:block;color:var(--muted);font-size:12px;margin-bottom:5px}.field input, .field select, .field textarea{width:100%;padding:10px;border:1px solid var(--line);border-radius:9px;background:white}.field textarea{min-height:180px;resize:vertical}
.staff{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.summary{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.summary div{padding:13px;background:#f7f9fc;border-radius:11px}.summary small{display:block;color:var(--muted)}.summary strong{font-size:22px;display:block;margin-top:5px}
table{width:100%;border-collapse:collapse}th, td{padding:10px 8px;border-bottom:1px solid var(--line);font-size:13px;text-align:left}th{color:var(--muted);font-weight:700}
.note{font-size:12px;color:var(--muted);line-height:1.5}.split{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.editable{outline:none}.editable:focus{background:#fffbe9}
.totalbar{display:flex;justify-content:flex-end;gap:18px;padding-top:12px;font-weight:700}.totalbar span b{font-size:20px;margin-left:6px}
.photo-box{display:grid;grid-template-columns:1fr 1fr;gap:12px}.photo-item{border:1px dashed #b9c5d5;border-radius:12px;padding:12px}.photo-name{font-size:13px;color:#164fae;cursor:pointer;text-decoration:underline;margin-top:8px;display:none}
.modal-bg{display:none;position:fixed;inset:0;background:rgba(10,20,35,.72);align-items:center;justify-content:center;z-index:50;padding:20px}.modal-bg.show{display:flex}.modal{background:#fff;border-radius:14px;max-width:900px;max-height:90vh;padding:12px;position:relative}.modal img{max-width:100%;max-height:82vh;display:block;border-radius:8px}.modal button{position:absolute;right:8px;top:8px;border:0;background:rgba(0,0,0,.7);color:#fff;border-radius:50%;width:34px;height:34px;cursor:pointer}
textarea.big{min-height:320px}
@media(max-width:850px){.grid, .staff, .summary{grid-template-columns:1fr 1fr}.split, .photo-box, .noise-grid{grid-template-columns:1fr}.lunch-summary{grid-template-columns:1fr 1fr}.summary-box{border-bottom:1px solid #8ca0b7}.wrap{padding:14px}}
@media print{
 body{background:white}.wrap{max-width:none;padding:0}.no-print{display:none!important}.card{box-shadow:none;break-inside:avoid;margin-top:9px;padding:12px}.top{margin-bottom:8px}h1{font-size:22px}th, td{padding:6px;font-size:11px}.summary div{padding:8px}
 textarea{border:0!important;padding:0!important;min-height:180px!important}
}

.lunch-summary{display:grid;grid-template-columns:2fr repeat(4,1fr) 1.5fr 1.2fr;border:1px solid #8ca0b7;border-radius:8px;overflow:hidden;margin-bottom:12px}
.summary-box{min-height:68px;border-right:1px solid #8ca0b7;background:#f8fbff;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px}
.summary-box:last-child{border-right:0}.summary-box span{font-size:12px;color:#56657a;margin-bottom:6px}.summary-box strong{font-size:17px}
.summary-box.vendor{align-items:stretch}.summary-box.vendor input, .money-input input, .inline-num input{border:0;border-bottom:1px solid #b8c4d3;background:transparent;text-align:center;padding:5px;width:100%}
.money-input, .inline-num{display:flex;align-items:center;gap:4px;width:100%}.money-input b, .inline-num b{font-size:12px}
.lunch-help{background:#f4f8ff;border-radius:8px;padding:9px 11px;font-size:12px;color:#51627a;margin-bottom:10px}
.lunch-scroll{overflow-x:auto;border:1px solid #8ca0b7}.lunch-sheet{display:flex;min-width:2600px}
.lunch-row-labels{width:135px;flex:0 0 135px;background:#dcebf8;border-right:1px solid #8ca0b7;display:grid;grid-template-rows:42px 34px 34px 34px}
.lunch-row-labels>div{display:flex;align-items:center;justify-content:center;text-align:center;border-bottom:1px solid #8ca0b7;font-size:12px;font-weight:700}
.lunch-slots{display:grid;grid-template-columns:repeat(30,82px)}
.lunch-slot{display:grid;grid-template-rows:42px 34px 34px 34px;border-right:1px dotted #aab5c3}
.lunch-slot>*{border:0;border-bottom:1px dotted #aab5c3;border-radius:0;text-align:center;width:100%;min-width:0;background:white}
.slot-no{display:flex;align-items:center;justify-content:center;font-size:11px;color:#8993a4;background:#f8fafc}
.lunch-name{padding:4px;font-size:12px}.member-auto, .slot-total{display:flex;align-items:center;justify-content:center;font-size:12px}
.companion-qty{font-size:12px}.slot-total{font-weight:700;background:#f8fbff}
.noise-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.noise-item{border:1px solid var(--line);border-radius:12px;padding:14px}.noise-head{font-weight:800;margin-bottom:12px}
.noise-item .field{margin-top:9px}.db-input{display:flex;align-items:center;gap:8px}.db-input input{flex:1}.db-input span{font-weight:700;color:#56657a}

.lunch-list-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:14px 0 8px}
.mini-title{font-size:14px;font-weight:800;color:#25344c}
.lunch-sheet{display:flex;min-width:max-content}
.lunch-row-labels{width:105px;flex:0 0 105px;background:#dcebf8;border-right:1px solid #8ca0b7;display:grid;grid-template-rows:42px 42px}
.lunch-row-labels>div{display:flex;align-items:center;justify-content:center;text-align:center;border-bottom:1px solid #8ca0b7;font-size:12px;font-weight:700}
.lunch-slots{display:grid;grid-auto-flow:column;grid-auto-columns:105px}
.lunch-slot{display:grid;grid-template-rows:42px 42px;border-right:1px dotted #aab5c3}
.lunch-slot>*{border:0;border-bottom:1px dotted #aab5c3;border-radius:0;text-align:center;width:100%;min-width:0;background:white}
.lunch-name{padding:4px;font-size:12px}
.companion-qty{font-size:12px;padding:4px}
#otherLunchDisplay{font-size:17px;line-height:1.2;min-width:44px;text-align:center;outline:none;border-bottom:1px dashed #aeb9c8;padding:2px 4px}
#otherLunchDisplay:empty:before{content:attr(data-placeholder);color:#99a4b3}

.summary-box.vendor, .summary-box.total-money{align-items:center}
.summary-box.vendor input, .money-input input{
  border:0;
  background:transparent;
  text-align:center;
  padding:2px 4px;
  font-size:17px;
  font-weight:700;
  line-height:1.2;
  width:100%;
  color:var(--ink);
  outline:none;
}
.summary-box.vendor input::placeholder, .money-input input::placeholder{color:#9aa5b3;font-weight:700}
.money-input{display:flex;align-items:center;justify-content:center;gap:4px;width:100%}
.money-input b{font-size:17px;font-weight:700;color:var(--ink)}
.companion-qty{
  text-align:center!important;
  appearance:textfield;
  -moz-appearance:textfield;
}
.companion-qty::-webkit-outer-spin-button, .companion-qty::-webkit-inner-spin-button{
  -webkit-appearance:none;
  margin:0;
}

button, input, select, textarea, [contenteditable]{font-family:inherit}

.staff-board{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  border:1px solid #8ca0b7;
  border-radius:8px;
  overflow:hidden;
}
.staff-col{
  border-right:1px solid #8ca0b7;
  background:#fff;
  min-width:0;
}
.staff-col:last-child{border-right:0}
.staff-role{
  background:#dcebf8;
  text-align:center;
  font-weight:800;
  padding:10px 6px;
  border-bottom:1px solid #8ca0b7;
}
.staff-count{
  text-align:center;
  padding:7px 6px;
  font-size:13px;
  font-weight:700;
  background:#f7fbff;
  border-bottom:1px solid #c9d4e0;
}
.staff-count-num{font-size:18px;margin-right:2px}
.staff-names{display:grid}
.staff-name{
  width:100%;
  border:0;
  border-bottom:1px dotted #aab5c3;
  border-radius:0;
  padding:9px 6px;
  text-align:center;
  background:#fff;
  min-width:0;
}
.staff-add{
  width:100%;
  border:0;
  background:#f7f9fc;
  color:#35598a;
  padding:8px 6px;
  font-weight:700;
  cursor:pointer;
}

.lunch-scroll{
  overflow-x:hidden;
  border:1px solid #8ca0b7;
  width:100%;
}
.lunch-scroll.has-overflow{overflow-x:auto}
.lunch-sheet{
  display:grid;
  grid-template-columns:105px minmax(0,1fr);
  min-width:100%;
  width:100%;
}
.lunch-row-labels{width:auto;flex:none}
.lunch-slots{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  min-width:0;
  width:100%;
}
.lunch-slot{min-width:0}

@media(max-width:850px){
  .staff-board{grid-template-columns:1fr 1fr}
  .staff-col{border-bottom:1px solid #8ca0b7}
  .lunch-scroll{overflow-x:auto}
  .lunch-sheet{min-width:980px}
  .lunch-slots{grid-template-columns:repeat(12,73px)}
}

.combined-info{display:grid;grid-template-columns:minmax(330px,.9fr) minmax(520px,1.5fr);gap:18px;align-items:start}
.event-info-block{border:1px solid #8ca0b7}
.mini-grid{display:grid;grid-template-columns:95px 1fr}
.labelcell{background:#dcebf8;border-right:1px solid #8ca0b7;border-bottom:1px solid #8ca0b7;display:flex;align-items:center;justify-content:center;font-weight:800;padding:8px}
.valuecell{border-bottom:1px solid #8ca0b7;padding:0}
.valuecell input{width:100%;height:100%;min-height:38px;border:0;border-radius:0;text-align:center;background:#fff}
.valuecell select{width:100%;height:100%;min-height:38px;border:0;border-radius:0;text-align:center;background:#fff;padding:0 8px;font:inherit}
.event-deduct-select{font-weight:800;color:#28486c}
.timecell{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
.timecell span{padding:0 6px}
.labelcell.tall{border-bottom:0}
.weather-stack{display:grid;grid-template-rows:1fr 1fr}
.weather-stack>div{display:grid;grid-template-columns:70px 1fr;border-bottom:1px solid #8ca0b7}
.weather-stack>div:last-child{border-bottom:0}
.weather-stack span{background:#edf4fb;border-right:1px solid #8ca0b7;display:flex;align-items:center;justify-content:center;font-weight:700}
.weather-stack input{border:0;border-radius:0;text-align:center;min-height:34px}

.staff-board{display:grid;grid-template-columns:48px 1fr;border:1px solid #8ca0b7;border-radius:0;overflow:hidden}
.staff-side-label{grid-row:1 / span 5;background:#c9e2f5;border-right:1px solid #8ca0b7;display:flex;align-items:center;justify-content:center;text-align:center;font-weight:800;line-height:1.45}
.staff-row{display:grid;grid-template-columns:105px 56px 1fr;border-bottom:1px solid #8ca0b7;min-width:0}
.staff-row:last-child{border-bottom:0}
.staff-role{background:#dcebf8;border-right:1px solid #8ca0b7;text-align:center;font-weight:800;display:flex;align-items:center;justify-content:center;padding:8px 4px}
.staff-count{background:#f7fbff;border-right:1px solid #8ca0b7;text-align:center;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}
.staff-count-num{font-size:15px;margin-right:2px}
.staff-names{display:grid;grid-template-columns:repeat(4,1fr);min-width:0}
.staff-name{width:100%;min-width:0;border:0;border-right:1px dotted #aab5c3;border-radius:0;padding:8px 4px;text-align:center;background:#fff}
.staff-name:last-child{border-right:0}
.staff-name::placeholder{color:transparent}

@media(max-width:980px){
 .combined-info{grid-template-columns:1fr}
}
@media(max-width:850px){
 .staff-board{grid-template-columns:42px 1fr}
 .staff-row{grid-template-columns:90px 48px 1fr}
 .staff-names{grid-template-columns:repeat(2,1fr)}
}

body{background:#f4f7fb}
.app-shell{display:flex;min-height:100vh}
.sidebar{position:fixed;left:0;top:0;bottom:0;width:230px;background:#10264a;color:white;padding:24px 16px;z-index:20}
.brand{font-size:21px;font-weight:800;margin-bottom:28px} .brand small{display:block;font-size:11px;font-weight:400;opacity:.65;margin-top:5px}
.navbtn{width:100%;border:0;background:transparent;color:#dbe7fa;padding:12px 13px;border-radius:9px;text-align:left;margin:4px 0;cursor:pointer;font-weight:700}
.navbtn.active, .navbtn:hover{background:rgba(255,255,255,.12);color:white}
.content{margin-left:230px;width:calc(100% - 230px);padding:24px}
.app-page{display:none}.app-page.active{display:block}
.app-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.app-top h1{margin:0;font-size:27px}
.proto-card{background:#fff;border:1px solid #dfe6ef;border-radius:15px;padding:20px;box-shadow:0 8px 24px rgba(30,55,90,.06)}
.dash-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.dash-stat{background:#fff;border:1px solid #dfe6ef;border-radius:14px;padding:17px}
.dash-stat span{color:#6d788b;font-size:12px}.dash-stat strong{display:block;font-size:28px;margin-top:8px}
.member-table{width:100%;border-collapse:collapse}.member-table th, .member-table td{padding:11px;border-bottom:1px solid #e4e9ef;text-align:left}
.event-container .wrap{max-width:none;padding:0}
@media(max-width:800px){.sidebar{width:76px;padding:18px 8px}.brand{font-size:0}.brand:before{content:"BLUE";font-size:14px}.brand small{display:none}.navbtn{font-size:0;text-align:center}.navbtn:before{font-size:18px}.navbtn:nth-of-type(1):before{content:"⌂"}.navbtn:nth-of-type(2):before{content:"👤"}.navbtn:nth-of-type(3):before{content:"📅"}.navbtn:nth-of-type(4):before{content:"▥"}.content{margin-left:76px;width:calc(100% - 76px);padding:14px}.dash-grid{grid-template-columns:1fr 1fr}}
@media print{.sidebar, .app-top, .no-print{display:none!important}.content{margin:0;width:100%;padding:0}.app-page{display:none!important}#events{display:block!important}}

#events .app-top{margin-bottom:10px}
#events .wrap{
  max-width:none;
  width:100%;
  padding:0;
  margin:0;
  overflow:visible;
}
#events .card{
  width:100%;
  max-width:100%;
}
#events .combined-info{
  grid-template-columns:minmax(280px,0.9fr) minmax(0,1.6fr);
  width:100%;
}
#events .event-info-block, #events .staff-board, #events table, #events .lunch-scroll, #events .noise-grid{
  max-width:100%;
}
#events .lunch-scroll{
  width:100%;
}
#events{
  overflow-x:hidden;
}
.content{
  min-width:0;
  overflow-x:hidden;
}
@media(max-width:1180px){
  #events .combined-info{grid-template-columns:1fr}
  #events .staff-board{width:100%}
}
@media(max-width:900px){
  #events .summary{grid-template-columns:repeat(2,1fr)}
  #events .grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  #events .summary, #events .grid{grid-template-columns:1fr}
  #events .staff-row{grid-template-columns:86px 44px 1fr}
  #events .staff-names{grid-template-columns:repeat(2,minmax(0,1fr))}
  #events .app-top{align-items:flex-start;gap:8px}
  #events .app-top>div:last-child{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
}

.content{
  margin-left:230px;
  width:calc(100% - 230px);
  max-width:calc(100vw - 230px);
  padding:24px;
  min-width:0;
  overflow-x:hidden;
}
#events{
  width:100%;
  min-width:0;
}
#events .app-top{
  width:100%;
  margin:0 0 14px 0;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
#events .event-actions{
  display:flex;
  gap:8px;
  flex:0 0 auto;
}
#events .event-content{
  width:100%;
  min-width:0;
  margin:0;
  padding:0;
}
#events .event-content > .card{
  width:100%;
  max-width:100%;
  margin-left:0;
  margin-right:0;
}
#events .combined-info{
  width:100%;
  min-width:0;
  grid-template-columns:minmax(290px,0.85fr) minmax(0,1.65fr);
}
#events .event-info-block, #events .staff-board, #events .lunch-summary, #events .lunch-scroll, #events .noise-grid, #events table{
  max-width:100%;
  min-width:0;
}
#events .staff-names{
  min-width:0;
}
#events .staff-name{
  min-width:0;
}
#events .lunch-scroll{
  overflow-x:hidden;
}
#events .lunch-scroll.has-overflow{
  overflow-x:auto;
}
@media(max-width:1180px){
  #events .combined-info{grid-template-columns:1fr}
}
@media(max-width:900px){
  .content{
    margin-left:76px;
    width:calc(100% - 76px);
    max-width:calc(100vw - 76px);
    padding:14px;
  }
  #events .summary{grid-template-columns:repeat(2,1fr)}
  #events .grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  #events .app-top{flex-direction:column}
  #events .event-actions{width:100%}
  #events .event-actions .btn{flex:1}
  #events .summary, #events .grid{grid-template-columns:1fr}
}

#events .lunch-slot{
  min-width:0;
  max-width:none;
}
#events .lunch-slots{
  justify-content:start;
  align-items:stretch;
}

#events .combined-info{
  grid-template-columns:minmax(0,0.35fr) minmax(0,0.65fr) !important;
}
#events .labelcell, #events .weather-stack span, #events .basic-value, #events .fixed-suffix{
  font-size:14px;
}
#events .basic-value{
  font-weight:400;
}
#events .labelcell, #events .weather-stack span{
  font-weight:800;
}
#events .suffix-cell{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  background:#fff;
}
#events .suffix-cell input{
  flex:1;
  min-width:0;
  border:0;
  text-align:center;
  background:transparent;
  height:100%;
  padding:8px 3px;
}
#events .fixed-suffix{
  flex:0 0 auto;
  padding:0 10px 0 3px;
  font-weight:400;
}
#events input[type="date"]::-webkit-calendar-picker-indicator, #events input[type="time"]::-webkit-calendar-picker-indicator{
  filter:grayscale(1);
  opacity:.48;
  width:14px;
  height:14px;
  padding:0;
  margin:0 6px 0 2px;
}
#events .time-input::-webkit-calendar-picker-indicator{
  width:14px;
  height:14px;
}
#events .staff-row{
  grid-template-columns:92px 48px 1fr;
}
#events .staff-names{
  grid-template-columns:repeat(5,minmax(0,1fr));
}
#events .staff-name{
  padding-left:2px;
  padding-right:2px;
}

.table-input{
  width:100%;
  border:0;
  outline:0;
  background:transparent;
  padding:5px 2px;
  font:inherit;
}
.placeholder-gray::placeholder{
  color:#9aa5b3;
  opacity:1;
}

.picker-bg{
  display:none;
  position:fixed;
  inset:0;
  background:rgba(11,22,39,.58);
  z-index:100;
  align-items:center;
  justify-content:center;
  padding:18px;
}
.picker-bg.show{display:flex}
.picker-modal{
  width:min(520px,96vw);
  max-height:82vh;
  overflow:auto;
  background:#fff;
  border-radius:16px;
  padding:18px;
  box-shadow:0 22px 70px rgba(0,0,0,.22);
}
.vehicle-picker-modal{width:min(650px,96vw)}
.picker-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:12px;
}
.picker-head h3{margin:0;font-size:19px}
.picker-head button{
  border:0;background:transparent;font-size:26px;cursor:pointer;color:#667085;
}
.picker-search{
  width:100%;
  border:1px solid var(--line);
  border-radius:10px;
  padding:11px 12px;
  margin-bottom:10px;
}
.picker-results{
  display:grid;
  gap:7px;
  max-height:260px;
  overflow:auto;
}
.picker-result{
  border:1px solid var(--line);
  background:#fff;
  border-radius:10px;
  padding:10px 12px;
  cursor:pointer;
  display:flex;
  justify-content:space-between;
  align-items:center;
  text-align:left;
}
.picker-result:hover{background:#f4f8ff;border-color:#b9cbee}
.picker-result span{color:var(--muted);font-size:12px}
.picker-empty{padding:18px;text-align:center;color:var(--muted);font-size:13px}
.vehicle-choice-area{
  margin-top:14px;
  border-top:1px solid var(--line);
  padding-top:14px;
}
.vehicle-choice-title{margin-bottom:8px}
.vehicle-check-list{display:grid;gap:7px}
.vehicle-check{
  border:1px solid var(--line);
  border-radius:10px;
  padding:10px;
  display:flex;
  gap:10px;
  align-items:center;
  cursor:pointer;
}
.vehicle-check:hover{background:#f8fbff}
.vehicle-check input{width:17px;height:17px}
.vehicle-check span{display:flex;flex-direction:column}
.vehicle-check small{color:var(--muted);margin-top:3px}
.picker-note{font-size:12px;color:var(--muted);margin-top:8px}
.picker-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}
.driver-merged{
  vertical-align:middle;
  text-align:center;
  font-weight:700;
  background:#f8fbff;
}

@media(max-width:1180px){
 #events .combined-info{grid-template-columns:1fr !important}
}

#events .event-info-block .mini-grid{
  grid-template-columns:95px minmax(0,1fr);
}
#events .valuecell, #events .suffix-cell, #events .weather-stack>div{
  background:#fff !important;
}
#events .suffix-cell{
  display:flex;
  align-items:stretch;
  justify-content:stretch;
  gap:0;
}
#events .suffix-cell input{
  flex:1;
  min-width:0;
  padding-right:0;
  border:0;
  background:#fff !important;
}
#events .fixed-suffix{
  display:flex;
  align-items:center;
  padding:0 8px 0 0;
  margin:0;
  background:#fff !important;
  border:0 !important;
}
#events .weather-stack .suffix-cell{
  width:100%;
}
#events .weather-stack .suffix-cell input{
  text-align:right;
  padding-right:2px;
}
#events .weather-stack .fixed-suffix{
  padding-left:0;
  padding-right:8px;
}
#events .valuecell > input.basic-value{
  width:100%;
}
#events .timecell{
  width:100%;
}
#events .driver-merged{
  vertical-align:middle;
  font-weight:400 !important;
  background:transparent !important;
}

#events .event-info-block{
  width:100%;
}
#events .mini-grid, #events .valuecell, #events .timecell, #events .weather-stack{
  width:100%;
}
#events .timecell input{
  min-width:0;
}

#events .mini-grid{
  grid-template-columns:120px minmax(0,1fr) !important;
}
#events .labelcell, #events .weather-stack > div > span{
  min-height:40px;
  box-sizing:border-box;
}
#events .labelcell{
  justify-content:center;
  text-align:center;
}
#events .weather-stack > div{
  grid-template-columns:120px minmax(0,1fr) !important;
}
#events .weather-stack > div > span{
  justify-content:center;
  text-align:center;
}
#events .valuecell, #events .suffix-cell, #events .timecell{
  min-height:40px;
}
#events .suffix-cell input{
  text-align:center !important;
}
#events .fixed-suffix{
  margin-left:-2px;
  padding-right:8px;
}

.row-delete{
  border:1px solid #d8dee8;
  background:#fff;
  color:#8b94a5;
  border-radius:7px;
  padding:5px 8px;
  cursor:pointer;
  font-size:12px;
}
.row-delete:hover{background:#fff4f4;color:#b93636;border-color:#efc4c4}
#vehicles .driver-cell{
  background:transparent !important;
  font-weight:400 !important;
  vertical-align:middle;
}
#vehicles td[rowspan]{
  background:transparent !important;
  font-weight:400 !important;
  vertical-align:middle;
}
.vehicle-picker-modal{
  max-height:none !important;
  overflow:visible !important;
}
#vehicleMemberResults{
  max-height:220px;
  overflow:auto;
}
#vehicleChoiceArea{
  max-height:none !important;
  overflow:visible !important;
}
.vehicle-check-list{
  max-height:none !important;
  overflow:visible !important;
}

.change-member-btn{
  border:0;background:transparent;color:#3566aa;cursor:pointer;font-size:12px;margin-left:8px;text-decoration:underline
}

#events .mini-grid{
  grid-template-columns:150px minmax(0,1fr) !important;
}
#events .labelcell{
  min-height:40px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  background:#dcebf8;
  border-right:1px solid #8ca0b7;
  border-bottom:1px solid #8ca0b7;
}
#events .weather-label-wrap{
  display:grid;
  grid-template-columns:95px 55px;
  min-height:80px;
  background:#dcebf8;
  border-right:1px solid #8ca0b7;
}
#events .weather-main-label{
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  font-size:14px;
  font-weight:800;
  border-right:1px solid #8ca0b7;
}
#events .weather-sub-labels{
  display:grid;
  grid-template-rows:1fr 1fr;
}
#events .weather-sub-labels > div{
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  font-size:14px;
  font-weight:800;
}
#events .weather-sub-labels > div:first-child{
  border-bottom:1px solid #8ca0b7;
}
#events .weather-values{
  display:grid;
  grid-template-rows:1fr 1fr;
  min-height:80px;
}
#events .weather-values > div:first-child{
  border-bottom:1px solid #8ca0b7;
}
#events .weather-values .suffix-cell{
  min-height:40px;
}
#events .suffix-cell{
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff !important;
}
#events .suffix-cell input{
  flex:0 1 auto;
  width:74px;
  text-align:center !important;
  padding:0;
  margin:0;
  border:0;
  background:#fff !important;
}
#events .valuecell.suffix-cell input{
  width:74px;
}
#events .fixed-suffix{
  display:inline-flex;
  align-items:center;
  padding:0 0 0 2px !important;
  margin:0 !important;
  background:transparent !important;
  border:0 !important;
}
#events .valuecell, #events .timecell{
  min-height:40px;
}
#events .event-info-block{
  overflow:hidden;
}

#invites th:last-child, #attendance th:last-child, #vehicles th:last-child, #invites td:last-child, #attendance td:last-child, #vehicles td:last-child{
  width:34px !important;
  min-width:34px !important;
  max-width:34px !important;
  padding-left:2px !important;
  padding-right:2px !important;
  text-align:right !important;
}
.row-delete{
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  padding:0 !important;
  border:1px solid #d8dee8 !important;
  border-radius:6px !important;
  background:#fff !important;
  color:#9aa4b2 !important;
  font-size:0 !important;
  line-height:1 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.row-delete::before{
  content:"×";
  font-size:16px;
  font-weight:400;
  line-height:1;
}
.row-delete:hover{
  background:#fff4f4 !important;
  color:#c33 !important;
  border-color:#efc4c4 !important;
}

.vehicle-check.already-added{
  opacity:.52;
  background:#f5f6f8;
  cursor:not-allowed;
}

#events .combined-info{
  display:grid !important;
  grid-template-columns:minmax(0,35fr) minmax(0,65fr) !important;
  gap:18px !important;
  width:100% !important;
  align-items:stretch !important;
}
#events .event-info-block, #events .staff-board{
  width:100% !important;
  min-width:0 !important;
  align-self:stretch !important;
}
#events .event-info-block{
  border:1px solid #8ca0b7 !important;
}
#events .mini-grid{
  display:grid !important;
  grid-template-columns:150px minmax(0,1fr) !important;
  width:100% !important;
}
#events .labelcell{
  min-height:40px !important;
}
#events .weather-label-wrap{
  display:grid !important;
  grid-template-columns:95px 55px !important;
  min-height:80px !important;
}
#events .weather-values{
  display:grid !important;
  grid-template-rows:40px 40px !important;
  min-height:80px !important;
}
#events .staff-board{
  display:grid !important;
  grid-template-columns:48px minmax(0,1fr) !important;
  border:1px solid #8ca0b7 !important;
}
#events .staff-side-label{
  grid-row:1 / span 5 !important;
}
#events .staff-row{
  display:grid !important;
  grid-template-columns:92px 48px minmax(0,1fr) !important;
}
#events .staff-names{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
}
@media(max-width:1180px){
  #events .combined-info{grid-template-columns:1fr !important;}
}

.title-actions{float:right;display:flex;gap:7px}
.noise-report-btn{padding:7px 11px;font-size:12px}

#vehicles .driver-cell, #vehicles td[rowspan]{
  text-align:center !important;
  vertical-align:middle !important;
  font-weight:400 !important;
  background:transparent !important;
}

.vehicle-picker-switch{
  display:flex;
  gap:6px;
  margin-bottom:10px;
}
.picker-mode{
  flex:1;
  border:1px solid var(--line);
  background:#fff;
  color:#667085;
  border-radius:9px;
  padding:9px 10px;
  cursor:pointer;
  font-weight:700;
}
.picker-mode.active{
  background:#eaf1ff;
  color:#174ea6;
  border-color:#bfd2f5;
}
.direct-vehicle-area{
  border-top:1px solid var(--line);
  margin-top:12px;
  padding-top:12px;
}
.direct-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.direct-note{grid-column:1/-1}
@media(max-width:620px){
  .direct-grid{grid-template-columns:1fr}
  .direct-note{grid-column:auto}
}

#attendance th:nth-child(2), #vehicles th:nth-child(2), #attendance .member-name-cell, #vehicles .driver-cell{
  width:150px !important;
  min-width:150px !important;
  max-width:150px !important;
  box-sizing:border-box !important;
}
#attendance .member-name-cell, #vehicles .driver-cell{
  text-align:center !important;
  vertical-align:middle !important;
}

#noiseExcelBtn{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  pointer-events:auto !important;
  opacity:1 !important;
  position:relative;
  z-index:5;
  cursor:pointer !important;
  background:var(--b) !important;
  color:#fff !important;
}
#noiseExcelBtn:disabled{
  opacity:1 !important;
  cursor:pointer !important;
}

#events .timecell{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr) !important;
  align-items:center;
  width:100%;
  min-width:0;
}
#events .timecell .time-select{
  width:100% !important;
  min-width:0 !important;
  height:40px;
  border:0;
  border-radius:0;
  background:#fff;
  font-size:14px;
  font-weight:400;
  text-align:center;
  text-align-last:center;
  padding:0 22px 0 6px;
  box-sizing:border-box;
}
#events .timecell span{padding:0;text-align:center}

#events .staff-board{grid-template-columns:72px minmax(0,1fr) !important}
#events .staff-side-label{
  white-space:nowrap !important;
  line-height:1 !important;
  padding:0 5px;
}
@media(max-width:850px){
  #events .staff-board{grid-template-columns:72px minmax(0,1fr) !important}
}

#paymentStatusCard .payment-block{border:1px solid #cbd6e3;border-radius:11px;overflow:hidden;margin-top:12px}
#paymentStatusCard .payment-block:first-of-type{margin-top:0}
.payment-block-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;background:#f6f9fd;border-bottom:1px solid #d8e1eb}
.payment-block-head>div{display:flex;align-items:baseline;gap:9px;min-width:0}
.payment-block-head b{font-size:14px;color:#25344c;white-space:nowrap}
.payment-block-head span{font-size:12px;color:var(--muted)}
.payment-table-wrap{overflow-x:auto}
.payment-table{table-layout:fixed;min-width:860px}
.payment-table th, .payment-table td{height:42px;box-sizing:border-box;padding:5px 6px;vertical-align:middle}
.payment-table .pay-no{width:42px}
.payment-table .pay-name{width:150px}
.payment-table .pay-membership{width:150px}
.payment-table .pay-renewal{width:105px}
.payment-table .pay-amount{width:165px}
.payment-table .pay-method{width:130px}
.payment-table .pay-delete{width:34px}
.payment-input, .payment-select{width:100%;min-width:0;border:0;background:transparent;outline:0;padding:7px 5px;font:inherit;box-sizing:border-box}
.payment-input:focus, .payment-select:focus{background:#fffbe9}
.pay-money{display:flex;align-items:center;gap:3px;width:100%}
.pay-money input{text-align:right;padding-right:2px}
.pay-money span{flex:0 0 auto;color:#4e5d70}
.payment-total{display:flex;justify-content:flex-end;align-items:center;gap:13px;padding:10px 13px;border-top:1px solid #d8e1eb;background:#fbfcfe}
.payment-total span{font-size:13px;color:#647286;font-weight:700}
.payment-total strong{font-size:18px;color:#17345f}
.license-payment-table{min-width:420px}
.license-payment-table .pay-no{width:42px}
.license-payment-table .pay-delete{width:34px}
.license-table-wrap{max-width:650px}
@media(max-width:700px){
 .payment-block-head{align-items:flex-start}
 .payment-block-head>div{flex-direction:column;gap:2px}
}

.qty-input{display:flex;align-items:center;justify-content:center;gap:4px;width:100%}
.qty-input input{
  width:48px;min-width:0;border:0;background:transparent;outline:0;text-align:right;
  padding:2px 1px;font-size:17px;font-weight:700;color:var(--ink);
}
.qty-input b{font-size:17px;font-weight:700;color:var(--ink)}
#otherLunchInput::placeholder{color:#99a4b3;opacity:1}
#lunchTotalAmountInput{text-align:right !important}
#lunchTotalAmountInput::placeholder{color:#99a4b3;opacity:1}
.lunch-name::placeholder, .companion-qty::placeholder{color:transparent}

#invites, #attendance, #vehicles{table-layout:fixed !important;width:100% !important}
#invites{min-width:930px}
#attendance{min-width:690px}
#vehicles{min-width:820px}
#invites .list-no, #attendance .list-no, #vehicles .list-no{width:42px !important}
#invites .list-person, #attendance .list-person, #vehicles .list-person{width:150px !important}
#invites .list-delete, #attendance .list-delete, #vehicles .list-delete{width:34px !important}
#invites th, #invites td, #attendance th, #attendance td, #vehicles th, #vehicles td{
  height:42px;box-sizing:border-box;vertical-align:middle;
}
#invites th:first-child, #invites td:first-child, #attendance th:first-child, #attendance td:first-child, #vehicles th:first-child, #vehicles td:first-child{
  width:42px !important;min-width:42px !important;max-width:42px !important;
  padding-left:3px !important;padding-right:3px !important;text-align:center !important;white-space:nowrap;
}
#invites th:nth-child(2), #invites td:nth-child(2), #invites th:nth-child(3), #invites td:nth-child(3), #attendance th:nth-child(2), #attendance td:nth-child(2), #attendance th:nth-child(5), #attendance td:nth-child(5), #vehicles th:nth-child(2), #vehicles td:nth-child(2){
  width:150px !important;min-width:150px !important;max-width:150px !important;
}
#invites .table-input{width:100%;min-width:0;max-width:100%;box-sizing:border-box}
#attendance .member-name-cell, #vehicles .driver-cell{text-align:center !important}

#events .event-info-block .labelcell, #events .event-info-block .weather-main-label, #events .event-info-block .weather-sub-labels > div, #events .event-info-block .basic-value, #events .event-info-block .fixed-suffix, #events .staff-board .staff-side-label, #events .staff-board .staff-role, #events .staff-board .staff-count, #events .staff-board .staff-count-num, #events .staff-board .staff-name{
  font-size:14px !important;
  font-family:inherit !important;
}
#events .staff-board .staff-count-num{
  margin-right:2px !important;
}

#paymentStatusCard{
  display:grid;
  grid-template-columns:minmax(0, 2.3fr) minmax(280px, .75fr);
  gap:14px;
  align-items:start;
}
#paymentStatusCard > .title{
  grid-column:1 / -1;
  margin-bottom:0;
}
#paymentStatusCard > .payment-block{
  margin-top:0 !important;
  min-width:0;
}
#paymentStatusCard > .license-block{
  width:100%;
}
#paymentStatusCard .license-table-wrap{
  max-width:none !important;
  width:100%;
  overflow-x:hidden;
}
#paymentStatusCard .license-payment-table{
  min-width:0 !important;
  width:100% !important;
  table-layout:fixed;
}
#paymentStatusCard .license-payment-table .pay-no{
  width:42px;
}
#paymentStatusCard .license-payment-table .pay-delete{
  width:34px;
}
#paymentStatusCard .license-block .payment-block-head{
  padding-left:10px;
  padding-right:10px;
}
#paymentStatusCard .license-block .payment-block-head > div{
  gap:5px;
}
#paymentStatusCard .license-block .payment-block-head b{
  font-size:13px;
}
#paymentStatusCard .license-block .payment-block-head span{
  font-size:11px;
}
#paymentStatusCard .license-block .btn{
  padding:7px 9px;
  font-size:12px;
  white-space:nowrap;
}
#paymentStatusCard .license-block .payment-total{
  justify-content:space-between;
  padding:10px;
}
#paymentStatusCard .license-block .payment-total strong{
  font-size:16px;
}
@media(max-width:1120px){
  #paymentStatusCard{
    grid-template-columns:1fr;
  }
  #paymentStatusCard > .title{
    grid-column:auto;
  }
}

#events .summary strong[data-live-summary]{
  transition:opacity .12s ease;
}

#paymentStatusCard{
  align-items:stretch !important;
}
#paymentStatusCard > .payment-block{
  height:100%;
  display:flex;
  flex-direction:column;
}
#paymentStatusCard .payment-block-head{
  min-height:54px;
  box-sizing:border-box;
  flex:0 0 auto;
}
#paymentStatusCard .payment-table-wrap{
  flex:1 1 auto;
  min-height:86px;
}
#paymentStatusCard .payment-total{
  min-height:48px;
  box-sizing:border-box;
  flex:0 0 auto;
}
#paymentStatusCard .license-payment-table .license-name-col{
  width:105px;
}
#paymentStatusCard .license-payment-table .license-note-col{
  width:auto;
}
#paymentStatusCard .license-payment-table th, #paymentStatusCard .license-payment-table td{
  height:42px !important;
}

@media(max-width:1120px){
  #paymentStatusCard .license-block .payment-block-head span{
    display:none !important;
  }
}

#invites th:last-child, #attendance th:last-child, #vehicles th:last-child, #invites td:last-child, #attendance td:last-child, #vehicles td:last-child, .payment-table .pay-delete, .payment-table th:last-child, .payment-table td:last-child{
  width:50px !important;
  min-width:50px !important;
  max-width:50px !important;
  white-space:nowrap !important;
  word-break:keep-all !important;
  text-align:center !important;
  padding-left:3px !important;
  padding-right:3px !important;
}

#otherLunchInput, #lunchTotalAmountInput{
  text-align:center !important;
}
#events .summary-box .qty-input, #events .summary-box .money-input{
  width:100%;
  justify-content:center;
}

#events .summary strong[data-live-summary]{
  text-align:center !important;
  width:100%;
}

#events .summary-box .qty-input, #events .summary-box .money-input{
  width:auto !important;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:2px !important;
  margin:0 auto;
}
#otherLunchInput{
  width:5ch !important;
  min-width:5ch !important;
  max-width:5ch !important;
  text-align:right !important;
  padding-left:0 !important;
  padding-right:0 !important;
}
#lunchTotalAmountInput{
  width:10ch !important;
  min-width:10ch !important;
  max-width:10ch !important;
  text-align:right !important;
  padding-left:0 !important;
  padding-right:0 !important;
}
#events .summary-box .qty-input b, #events .summary-box .money-input b{
  flex:0 0 auto;
  margin:0 !important;
}

#attendance{
  min-width:930px !important;
}
#attendance .attendance-type-col{width:125px !important}
#attendance .drive-remain-col{width:105px !important}
#attendance .attendance-invite-remain-col{width:120px !important}
#attendance .attendance-companion-col{width:85px !important}

#attendance th:nth-child(5), #attendance td:nth-child(5){
  width:120px !important;
  min-width:120px !important;
  max-width:120px !important;
}
#attendance th:nth-child(7), #attendance td:nth-child(7){
  width:150px !important;
  min-width:150px !important;
  max-width:150px !important;
}
#attendance .member-drive-remain, #attendance .member-invite-remain{
  white-space:nowrap;
}

#events .summary-box .qty-input, #events .summary-box .money-input{
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:2px !important;
  margin:0 !important;
}
#otherLunchInput{
  width:4ch !important;
  min-width:4ch !important;
  max-width:4ch !important;
  text-align:center !important;
  padding-left:0 !important;
  padding-right:0 !important;
}
#lunchTotalAmountInput{
  width:9ch !important;
  min-width:9ch !important;
  max-width:9ch !important;
  text-align:center !important;
  padding-left:0 !important;
  padding-right:0 !important;
}

#invites th, #invites td, #attendance th, #attendance td, #vehicles th, #vehicles td, #invites input, #invites select, #invites textarea, #attendance input, #attendance select, #attendance textarea, #vehicles input, #vehicles select, #vehicles textarea, #invites [contenteditable], #attendance [contenteditable], #vehicles [contenteditable], #invites .table-input, #attendance .member-name-cell, #attendance .member-drive-remain, #attendance .member-invite-remain, #vehicles .driver-cell, #vehicles td[rowspan]{
  text-align:center !important;
}

#invites thead th, #invites tbody td, #attendance thead th, #attendance tbody td, #vehicles thead th, #vehicles tbody td, #invites tbody td *, #attendance tbody td *, #vehicles tbody td *, #invites input, #attendance input, #vehicles input, #invites select, #attendance select, #vehicles select, #invites textarea, #attendance textarea, #vehicles textarea, #invites [contenteditable], #attendance [contenteditable], #vehicles [contenteditable], #invites .table-input, #attendance .member-name-cell, #attendance .member-drive-remain, #attendance .member-invite-remain, #vehicles .driver-cell, #vehicles td[rowspan]{
  text-align:center !important;
}
#invites input::placeholder, #attendance input::placeholder, #vehicles input::placeholder{
  text-align:center !important;
}

#invites, #attendance, #vehicles{
  text-align:center !important;
}
#invites thead th, #invites tbody td, #attendance thead th, #attendance tbody td, #vehicles thead th, #vehicles tbody td{
  text-align:center !important;
  vertical-align:middle !important;
}
#invites tbody td > *, #attendance tbody td > *, #vehicles tbody td > *, #invites input, #attendance input, #vehicles input, #invites select, #attendance select, #vehicles select, #invites textarea, #attendance textarea, #vehicles textarea, #invites [contenteditable], #attendance [contenteditable], #vehicles [contenteditable], #invites .table-input, #attendance .member-name-cell, #attendance .member-drive-remain, #attendance .member-invite-remain, #vehicles .driver-cell, #vehicles .driver-merged, #vehicles td[rowspan]{
  text-align:center !important;
  text-align-last:center !important;
}
#invites input, #attendance input, #vehicles input{
  box-sizing:border-box;
  padding-left:4px !important;
  padding-right:4px !important;
}
#invites input::placeholder, #attendance input::placeholder, #vehicles input::placeholder{
  text-align:center !important;
}

.invite-vehicle-selectors{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-bottom:8px;
}
.invite-vehicle-selectors select{
  width:100%;
  min-width:0;
  height:40px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#fff;
  padding:0 30px 0 10px;
  font:inherit;
}
.invite-vehicle-selectors select:disabled{
  background:#f4f6f8;
  color:#98a2b3;
}
.direct-picker-note{
  margin:-1px 0 11px;
  color:#8b96a7;
  font-size:11px;
  line-height:1.45;
}
@media(max-width:620px){
  .invite-vehicle-selectors{grid-template-columns:1fr}
}

#paymentStatusCard .payment-total, #paymentStatusCard .license-block .payment-total{
  justify-content:flex-end !important;
  gap:13px !important;
  padding:10px 13px !important;
}
#paymentStatusCard .payment-total span, #paymentStatusCard .license-block .payment-total span{
  font-size:13px !important;
  font-weight:700 !important;
  line-height:1.2 !important;
}
#paymentStatusCard .payment-total strong, #paymentStatusCard .license-block .payment-total strong{
  font-size:18px !important;
  font-weight:700 !important;
  line-height:1.2 !important;
}

.invite-picker-modal{
  width:min(760px,calc(100vw - 28px)) !important;
}
.invite-selected-area{
  margin-top:10px;
}
.selected-member-bar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:11px 12px;
  border:1px solid var(--line);
  background:#f7f9fc;
  border-radius:10px;
  margin-bottom:12px;
}
.selected-member-bar > div{
  min-width:0;
  display:flex;
  align-items:baseline;
  gap:7px;
  flex-wrap:wrap;
}
.selected-member-bar small{
  color:#8b96a7;
  font-size:11px;
}
.selected-member-bar strong{
  font-size:15px;
}
.selected-member-bar span{
  color:#667085;
  font-size:12px;
}
.invite-form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.invite-form-grid .field{
  min-width:0;
}
.invite-form-grid input, .invite-form-grid select{
  width:100%;
  height:40px;
  box-sizing:border-box;
  border:1px solid var(--line);
  border-radius:8px;
  background:#fff;
  padding:0 10px;
  font:inherit;
}
@media(max-width:620px){
  .invite-form-grid{grid-template-columns:1fr}
  .selected-member-bar{align-items:flex-start;flex-direction:column}
}

#directVehicleArea .invite-vehicle-selectors label{
  white-space:nowrap;
}

.invite-auto-link-note{
  margin-top:12px;
  padding:9px 10px;
  border-radius:8px;
  background:#f4f7fb;
  color:#6f7c8f;
  font-size:11px;
  line-height:1.45;
}

.same-name-hint{
  margin-left:4px;
  color:#98a2b3;
  font-size:10px;
  font-weight:500;
}

#vehicles tr[data-attendance-placeholder="true"] td{
  background:#fbfcfe;
}
#vehicles tr[data-attendance-placeholder="true"] td:nth-child(n+3):nth-child(-n+5){
  color:#a4adba;
}

#vehicles .driver-cell.vehicle-driver-quick-v253{
  cursor:pointer;
  color:#245d96;
  font-weight:700;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  transition:background .12s ease,color .12s ease;
}
#vehicles .driver-cell.vehicle-driver-quick-v253:hover, #vehicles .driver-cell.vehicle-driver-quick-v253:focus{
  background:#eef6ff !important;
  color:#173a63;
  outline:2px solid rgba(47,111,237,.18);
  outline-offset:-2px;
}
#vehicleChoiceArea .quick-vehicle-list-v253{display:grid;gap:8px;margin-top:8px}
#vehicleChoiceArea .quick-vehicle-option-v253{width:100%}
#vehicleChoiceArea .quick-vehicle-option-v253:disabled{opacity:.48;cursor:not-allowed;background:#f5f6f8}
#vehicleChoiceArea .quick-vehicle-actions-v253{display:flex;justify-content:flex-end;margin-top:12px}
@media print{
  #vehicles .driver-cell.vehicle-driver-quick-v253{
    cursor:default !important;
    color:inherit !important;
    text-decoration:none !important;
    outline:none !important;
    background:transparent !important;
  }
}

#events .staff-board .staff-name:focus{
  outline:2px solid rgba(47,111,237,.28);
  outline-offset:-2px;
}

#vehicles tbody tr.vehicle-group-start td{
  border-bottom-width:1px !important;
}
#vehicles tbody tr.vehicle-group-cont td{
  border-top-width:1px !important;
}
#vehicles tbody tr.vehicle-group-cont td:nth-child(3), #vehicles tbody tr.vehicle-group-cont td:nth-child(4), #vehicles tbody tr.vehicle-group-cont td:nth-child(5){
  border-top-style:dashed !important;
}

#vehicles td.driver-cell[rowspan]{
  vertical-align:middle !important;
  text-align:center !important;
  background:#fff !important;
}
#vehicles tbody tr.vehicle-group-cont td{
  border-top-color:#dfe6ef !important;
}

@media print{
  @page{
    size:A4 portrait;
    margin:4mm;
  }

  html, body{
    margin:0 !important;
    padding:0 !important;
    width:auto !important;
    background:#fff !important;
    font-size:8px !important;
    -webkit-print-color-adjust:exact;
    print-color-adjust:exact;
  }

  body *{
    box-sizing:border-box;
  }

  .sidebar, .app-top, .no-print, .picker-bg, .modal-bg, .noise-report-bg{
    display:none !important;
  }

  .content, #events, #events .event-content, #events.event-container{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
  }

  .app-page{display:none !important}
  #events{display:block !important}

  
  #events .card{
    margin:0 0 3mm 0 !important;
    padding:2.2mm 2.5mm !important;
    border:1px solid #9aa8b8 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    background:#fff !important;
  }

  #events .title{
    margin:0 0 1.5mm 0 !important;
    padding:0 !important;
    font-size:9px !important;
    line-height:1.15 !important;
    font-weight:800 !important;
    white-space:nowrap !important;
  }

  #events, #events input, #events select, #events textarea, #events button, #events table, #events th, #events td, #events label, #events span, #events strong, #events small, #events b{
    font-family:inherit !important;
  }

  #events input, #events select, #events textarea{
    font-size:7.4px !important;
    line-height:1.15 !important;
  }

  #events input, #events select{
    min-height:18px !important;
    height:18px !important;
    padding:1px 3px !important;
  }

  #events .field{
    margin:0 !important;
  }

  #events .field label{
    font-size:7px !important;
    white-space:nowrap !important;
  }

  #events th, #events td{
    padding:1.4mm 1.2mm !important;
    font-size:7.2px !important;
    line-height:1.12 !important;
    white-space:nowrap !important;
    word-break:keep-all !important;
  }

  #events table{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    border-collapse:collapse !important;
    table-layout:fixed !important;
  }

  #events thead{
    display:table-header-group;
  }

  #events tr{
    break-inside:avoid;
    page-break-inside:avoid;
  }

  
  #basicStaffCard{
    break-inside:avoid;
  }
  #basicStaffCard .combined-info{
    display:grid !important;
    grid-template-columns:34fr 66fr !important;
    gap:2mm !important;
    align-items:stretch !important;
  }
  #basicStaffCard .event-info-block, #basicStaffCard .staff-board{
    min-width:0 !important;
    width:100% !important;
    border-radius:0 !important;
  }
  #basicStaffCard .mini-grid{
    grid-template-columns:24mm minmax(0,1fr) !important;
  }
  #basicStaffCard .labelcell, #basicStaffCard .weather-main-label, #basicStaffCard .weather-sub-labels > div, #basicStaffCard .basic-value, #basicStaffCard .fixed-suffix, #basicStaffCard .staff-side-label, #basicStaffCard .staff-role, #basicStaffCard .staff-count, #basicStaffCard .staff-count-num, #basicStaffCard .staff-name{
    font-size:7px !important;
  }
  #basicStaffCard .labelcell, #basicStaffCard .valuecell, #basicStaffCard .weather-label-wrap, #basicStaffCard .weather-values{
    min-height:18px !important;
  }
  #basicStaffCard .weather-label-wrap{
    grid-template-columns:15mm 9mm !important;
  }
  #basicStaffCard .weather-values{
    grid-template-rows:18px 18px !important;
  }
  #basicStaffCard .staff-board{
    grid-template-columns:14mm minmax(0,1fr) !important;
  }
  #basicStaffCard .staff-row{
    grid-template-columns:20mm 10mm minmax(0,1fr) !important;
    min-height:18px !important;
  }
  #basicStaffCard .staff-names{
    gap:0 !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  }
  #basicStaffCard .staff-name{
    border-radius:0 !important;
    padding:1px 2px !important;
    min-width:0 !important;
  }

  
  #paymentStatusCard{
    display:grid !important;
    grid-template-columns:minmax(0,2.25fr) minmax(0,.75fr) !important;
    gap:2mm !important;
    align-items:stretch !important;
    break-inside:avoid;
  }
  #paymentStatusCard > .title{
    grid-column:1 / -1 !important;
    margin-bottom:0 !important;
  }
  #paymentStatusCard > .payment-block{
    margin:0 !important;
    border-radius:0 !important;
    min-width:0 !important;
    height:auto !important;
  }
  #paymentStatusCard .payment-block-head{
    min-height:18px !important;
    padding:1mm 1.3mm !important;
  }
  #paymentStatusCard .payment-block-head b{
    font-size:7.5px !important;
    white-space:nowrap !important;
  }
  #paymentStatusCard .payment-block-head span{
    display:none !important;
  }
  #paymentStatusCard .payment-table-wrap{
    min-height:0 !important;
    overflow:visible !important;
  }
  #paymentStatusCard .payment-table th, #paymentStatusCard .payment-table td{
    height:auto !important;
    padding:1mm .8mm !important;
    font-size:6.8px !important;
  }
  #paymentStatusCard .payment-total{
    min-height:18px !important;
    padding:1mm 1.3mm !important;
    gap:2mm !important;
  }
  #paymentStatusCard .payment-total span{
    font-size:7px !important;
  }
  #paymentStatusCard .payment-total strong{
    font-size:8px !important;
  }
  #paymentStatusCard .pay-delete{
    width:0 !important;
    min-width:0 !important;
    max-width:0 !important;
  }

  
  #lunchCard{
    break-inside:avoid;
  }
  #lunchCard .lunch-list-head, #lunchCard .lunch-scroll, #lunchCard > .note{
    display:none !important;
  }
  #lunchCard .lunch-summary{
    display:grid !important;
    grid-template-columns:1.6fr .7fr .7fr .7fr .8fr 1.15fr .9fr !important;
    margin:0 !important;
    border-radius:0 !important;
    min-width:0 !important;
  }
  #lunchCard .summary-box{
    min-width:0 !important;
    min-height:24px !important;
    padding:1mm .8mm !important;
    border-bottom:0 !important;
  }
  #lunchCard .summary-box > span{
    font-size:6.7px !important;
    line-height:1.1 !important;
    white-space:nowrap !important;
    word-break:keep-all !important;
  }
  #lunchCard .summary-box strong, #lunchCard .summary-box input, #lunchCard .summary-box b{
    font-size:7.2px !important;
    white-space:nowrap !important;
  }
  #lunchCard .qty-input, #lunchCard .money-input{
    width:100% !important;
    display:flex !important;
    justify-content:center !important;
    gap:1px !important;
  }
  #lunchCard #otherLunchInput, #lunchCard #lunchTotalAmountInput{
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    text-align:center !important;
    border:0 !important;
    padding:0 !important;
    height:14px !important;
  }

  
  #noiseCard{
    break-inside:avoid;
  }
  #noiseCard .noise-grid{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:2mm !important;
  }
  #noiseCard .noise-item{
    display:grid !important;
    grid-template-columns:18mm minmax(0,1fr) 17mm minmax(0,.42fr) !important;
    gap:0 !important;
    align-items:stretch !important;
    padding:0 !important;
    border-radius:0 !important;
    overflow:hidden !important;
  }
  #noiseCard .noise-head{
    grid-column:1 !important;
    grid-row:1 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    padding:.8mm !important;
    font-size:7px !important;
    white-space:nowrap !important;
    border-right:1px solid var(--line) !important;
    background:#f6f8fb !important;
  }
  #noiseCard .noise-item > .field:nth-child(2){
    grid-column:2 !important;
    grid-row:1 !important;
  }
  #noiseCard .noise-item > .field:nth-child(3){
    grid-column:3 / 5 !important;
    grid-row:1 !important;
  }
  #noiseCard .noise-item > .field:not(.no-print){
    display:grid !important;
    grid-template-columns:auto minmax(0,1fr) !important;
    align-items:center !important;
    gap:1mm !important;
    padding:.6mm 1mm !important;
    border:0 !important;
    border-right:1px solid var(--line) !important;
  }
  #noiseCard .noise-item > .field:not(.no-print) label{
    margin:0 !important;
    font-size:6.6px !important;
  }
  #noiseCard .noise-item input{
    border:0 !important;
    padding:0 1mm !important;
    min-height:14px !important;
    height:14px !important;
    background:transparent !important;
  }
  #noiseCard .db-input{
    display:flex !important;
    align-items:center !important;
    gap:1px !important;
  }
  #noiseCard .db-input span{
    font-size:6.8px !important;
  }

  
  #operationSummaryCard{
    break-inside:avoid;
  }
  #operationSummaryCard .summary{
    display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    gap:1mm !important;
  }
  #operationSummaryCard .summary div{
    min-width:0 !important;
    padding:1mm 1.4mm !important;
    border-radius:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:2mm !important;
  }
  #operationSummaryCard .summary small{
    display:inline !important;
    margin:0 !important;
    font-size:6.8px !important;
    white-space:nowrap !important;
  }
  #operationSummaryCard .summary strong{
    display:inline !important;
    margin:0 !important;
    width:auto !important;
    font-size:8px !important;
    white-space:nowrap !important;
  }

  
  #inviteCard, #attendanceCard, #vehiclesCard{
    break-inside:auto !important;
    page-break-inside:auto !important;
  }

  #inviteCard > div[style*="overflow"], #attendanceCard > div[style*="overflow"], #vehiclesCard > div[style*="overflow"]{
    overflow:visible !important;
    width:100% !important;
    max-width:100% !important;
  }

  #inviteCard table, #attendanceCard table, #vehiclesCard table{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    table-layout:fixed !important;
  }

  
  #attendance{
    min-width:0 !important;
  }

  #inviteCard .list-no, #attendanceCard .list-no, #vehiclesCard .list-no{
    width:8mm !important;
    min-width:8mm !important;
    max-width:8mm !important;
  }

  #inviteCard .list-delete, #attendanceCard .list-delete, #vehiclesCard .list-delete{
    width:0 !important;
    min-width:0 !important;
    max-width:0 !important;
  }

  
  #attendanceCard .list-person{
    width:29mm !important;
    min-width:0 !important;
    max-width:none !important;
  }
  #attendanceCard .attendance-type-col{
    width:24mm !important;
  }
  #attendanceCard .drive-remain-col{
    width:22mm !important;
  }
  #attendanceCard .attendance-invite-remain-col{
    width:25mm !important;
  }
  #attendanceCard .attendance-companion-col{
    width:18mm !important;
  }

  
  #inviteCard th, #attendanceCard th, #vehiclesCard th{
    font-size:6.8px !important;
    white-space:nowrap !important;
  }

  
  #otherCard{
    break-inside:avoid;
  }
  #otherCard .field{
    margin:0 !important;
  }
  #otherNotes{
    display:block !important;
    width:100% !important;
    min-height:20px !important;
    max-height:none !important;
    resize:none !important;
    overflow:hidden !important;
    padding:1.2mm !important;
    border-radius:0 !important;
    font-size:7.2px !important;
    line-height:1.25 !important;
    white-space:pre-wrap !important;
  }
}

@media print{
  @page{
    size:A4 portrait;
    margin:4mm;
  }

  
  html, body{
    font-size:7.4px !important;
  }

  #events .card{
    margin-bottom:2.4mm !important;
    padding:1.8mm 2mm !important;
  }

  #events .title{
    font-size:8.4px !important;
    margin-bottom:1.2mm !important;
  }

  #events th, #events td{
    padding:1.15mm .8mm !important;
    font-size:6.6px !important;
  }

  
  #basicStaffCard .combined-info{
    grid-template-columns:36fr 64fr !important;
    gap:1.5mm !important;
  }
  #basicStaffCard .mini-grid{
    grid-template-columns:21mm minmax(0,1fr) !important;
  }
  #basicStaffCard .weather-label-wrap{
    grid-template-columns:13mm 8mm !important;
  }
  #basicStaffCard .staff-board{
    grid-template-columns:12mm minmax(0,1fr) !important;
  }
  #basicStaffCard .staff-row{
    grid-template-columns:17mm 8mm minmax(0,1fr) !important;
  }
  #basicStaffCard .labelcell, #basicStaffCard .weather-main-label, #basicStaffCard .weather-sub-labels > div, #basicStaffCard .basic-value, #basicStaffCard .fixed-suffix, #basicStaffCard .staff-side-label, #basicStaffCard .staff-role, #basicStaffCard .staff-count, #basicStaffCard .staff-count-num, #basicStaffCard .staff-name{
    font-size:6.4px !important;
  }

  
  #paymentStatusCard{
    grid-template-columns:minmax(0,2.15fr) minmax(0,.85fr) !important;
    gap:1.5mm !important;
  }
  #paymentStatusCard .payment-table th, #paymentStatusCard .payment-table td{
    font-size:6.1px !important;
    padding:.85mm .55mm !important;
  }
  #paymentStatusCard .payment-total span{
    font-size:6.4px !important;
  }
  #paymentStatusCard .payment-total strong{
    font-size:7.4px !important;
  }

  
  #lunchCard .lunch-summary{
    grid-template-columns:1.45fr .62fr .62fr .62fr .72fr 1.05fr .82fr !important;
  }
  #lunchCard .summary-box{
    padding:.75mm .45mm !important;
  }
  #lunchCard .summary-box > span{
    font-size:5.9px !important;
  }
  #lunchCard .summary-box strong, #lunchCard .summary-box input, #lunchCard .summary-box b{
    font-size:6.4px !important;
  }

  
  #noiseCard .noise-grid{
    gap:1.5mm !important;
  }
  #noiseCard .noise-item{
    grid-template-columns:15mm minmax(0,1fr) 14mm minmax(0,.42fr) !important;
  }
  #noiseCard .noise-head{
    font-size:6.2px !important;
  }
  #noiseCard .noise-item > .field:not(.no-print) label, #noiseCard .db-input span{
    font-size:5.9px !important;
  }

  
  #operationSummaryCard .summary{
    gap:.7mm !important;
  }
  #operationSummaryCard .summary div{
    padding:.8mm .7mm !important;
    gap:1mm !important;
  }
  #operationSummaryCard .summary small{
    font-size:5.9px !important;
  }
  #operationSummaryCard .summary strong{
    font-size:7px !important;
  }

  
  #inviteCard table, #attendanceCard table, #vehiclesCard table{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    table-layout:fixed !important;
  }

  #inviteCard th, #attendanceCard th, #vehiclesCard th{
    font-size:6px !important;
  }

  #inviteCard td, #attendanceCard td, #vehiclesCard td{
    font-size:6.2px !important;
  }

  #attendanceCard .list-no, #inviteCard .list-no, #vehiclesCard .list-no{
    width:7mm !important;
    min-width:7mm !important;
    max-width:7mm !important;
  }

  #attendanceCard .list-person{
    width:25mm !important;
  }
  #attendanceCard .attendance-type-col{
    width:21mm !important;
  }
  #attendanceCard .drive-remain-col{
    width:19mm !important;
  }
  #attendanceCard .attendance-invite-remain-col{
    width:22mm !important;
  }
  #attendanceCard .attendance-companion-col{
    width:15mm !important;
  }

  #otherNotes{
    font-size:6.6px !important;
  }
}

@media print{
  @page{size:A4 portrait;margin:3mm}

  html, body{
    margin:0!important;
    padding:0!important;
    font-size:6.4px!important;
    line-height:1.12!important;
  }

  #events{
    font-size:6.4px!important;
    line-height:1.12!important;
  }

  
  #events input, #events select, #events textarea, #events table, #events th, #events td, #events label, #events span, #events small, #events b, #events strong{
    font-size:6.4px!important;
    line-height:1.12!important;
  }

  #events .title{
    font-size:7.6px!important;
    line-height:1.1!important;
    margin:0 0 .7mm 0!important;
    padding:0!important;
    font-weight:800!important;
  }

  
  #events .card{
    margin:0 0 1.2mm 0!important;
    padding:1.1mm 1.4mm!important;
  }

  #events .field, #events .field label{
    margin:0!important;
  }

  #events input, #events select{
    height:14px!important;
    min-height:14px!important;
    padding:0 2px!important;
  }

  
  #events th, #events td{
    padding:.45mm .65mm!important;
    height:auto!important;
    min-height:0!important;
    vertical-align:middle!important;
    white-space:nowrap!important;
    word-break:keep-all!important;
  }
  #events th{font-weight:700!important}

  
  #basicStaffCard .combined-info{
    grid-template-columns:36fr 64fr!important;
    gap:1.2mm!important;
  }
  #basicStaffCard .mini-grid{grid-template-columns:20mm minmax(0,1fr)!important}
  #basicStaffCard .weather-label-wrap{grid-template-columns:12mm 8mm!important}
  #basicStaffCard .weather-values{grid-template-rows:14px 14px!important}
  #basicStaffCard .labelcell, #basicStaffCard .valuecell, #basicStaffCard .weather-label-wrap, #basicStaffCard .weather-values{min-height:14px!important}
  #basicStaffCard .staff-board{grid-template-columns:11mm minmax(0,1fr)!important}
  #basicStaffCard .staff-row{
    grid-template-columns:16mm 7mm minmax(0,1fr)!important;
    min-height:14px!important;
  }
  #basicStaffCard .staff-name{
    height:14px!important;
    min-height:14px!important;
    padding:0 1px!important;
  }

  
  #paymentStatusCard{
    grid-template-columns:minmax(0,2.2fr) minmax(0,.8fr)!important;
    gap:1.2mm!important;
  }
  #paymentStatusCard .payment-block-head{
    min-height:14px!important;
    padding:.55mm .8mm!important;
  }
  #paymentStatusCard .payment-block-head b{font-size:6.6px!important}
  #paymentStatusCard .payment-table th, #paymentStatusCard .payment-table td{
    padding:.42mm .5mm!important;
    font-size:6.2px!important;
  }
  #paymentStatusCard .payment-total{
    min-height:14px!important;
    padding:.55mm .8mm!important;
    gap:1.2mm!important;
  }
  #paymentStatusCard .payment-total span, #paymentStatusCard .payment-total strong{
    font-size:6.6px!important;
    line-height:1.1!important;
  }

  
  #lunchCard .lunch-list-head, #lunchCard .lunch-scroll, #lunchCard > .note{display:none!important}
  #lunchCard .lunch-summary{
    margin:0!important;
    grid-template-columns:1.45fr .62fr .62fr .62fr .72fr 1.05fr .82fr!important;
  }
  #lunchCard .summary-box{
    min-height:17px!important;
    padding:.35mm .35mm!important;
  }
  #lunchCard .summary-box > span, #lunchCard .summary-box strong, #lunchCard .summary-box input, #lunchCard .summary-box b{
    font-size:6.2px!important;
    line-height:1.08!important;
    margin:0!important;
    white-space:nowrap!important;
  }
  #lunchCard #otherLunchInput, #lunchCard #lunchTotalAmountInput{
    height:12px!important;
    min-height:12px!important;
  }

  
  #noiseCard .noise-grid{gap:1.2mm!important}
  #noiseCard .noise-item{
    grid-template-columns:14mm minmax(0,1fr) 13mm minmax(0,.42fr)!important;
  }
  #noiseCard .noise-head{
    font-size:6.2px!important;
    padding:.35mm!important;
  }
  #noiseCard .noise-item > .field:not(.no-print){
    padding:.3mm .5mm!important;
    gap:.5mm!important;
  }
  #noiseCard .noise-item > .field:not(.no-print) label, #noiseCard .db-input span{font-size:6.1px!important}
  #noiseCard .noise-item input{
    height:12px!important;
    min-height:12px!important;
    padding:0 .4mm!important;
  }

  
  #operationSummaryCard .summary{
    gap:.5mm!important;
  }
  #operationSummaryCard .summary div{
    padding:.35mm .5mm!important;
    gap:.8mm!important;
    min-height:15px!important;
  }
  #operationSummaryCard .summary small, #operationSummaryCard .summary strong{
    font-size:6.3px!important;
    line-height:1.05!important;
    margin:0!important;
    white-space:nowrap!important;
  }

  
  #inviteCard, #attendanceCard, #vehiclesCard{
    padding-top:1mm!important;
    padding-bottom:1mm!important;
  }
  #inviteCard .title, #attendanceCard .title, #vehiclesCard .title{
    margin-bottom:.45mm!important;
  }
  #inviteCard th, #inviteCard td, #attendanceCard th, #attendanceCard td, #vehiclesCard th, #vehiclesCard td{
    padding:.42mm .55mm!important;
    font-size:6.2px!important;
    line-height:1.05!important;
  }
  #inviteCard table, #attendanceCard table, #vehiclesCard table{
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
    table-layout:fixed!important;
  }
  #attendanceCard > div[style*="overflow"], #inviteCard > div[style*="overflow"], #vehiclesCard > div[style*="overflow"]{
    overflow:visible!important;
  }
  #attendance{min-width:0!important}

  
  #attendanceCard .list-no{width:6mm!important;min-width:6mm!important;max-width:6mm!important}
  #attendanceCard .list-person{width:23mm!important;min-width:0!important;max-width:none!important}
  #attendanceCard .attendance-type-col{width:19mm!important}
  #attendanceCard .drive-remain-col{width:18mm!important}
  #attendanceCard .attendance-invite-remain-col{width:21mm!important}
  #attendanceCard .attendance-companion-col{width:14mm!important}

  
  #otherCard{
    padding:1.1mm 1.4mm!important;
    margin-bottom:0!important;
  }
  #otherCard .title{margin-bottom:.7mm!important}
  #otherNotes{
    display:block!important;
    width:100%!important;
    min-height:20px!important;
    max-height:none!important;
    resize:none!important;
    overflow:hidden!important;
    padding:1.2mm!important;
    border-radius:0!important;
    font-size:7.2px!important;
    line-height:1.25!important;
    white-space:pre-wrap!important;
  }
}

@media print{

  
  #basicStaffCard .labelcell, #basicStaffCard .weather-main-label, #basicStaffCard .weather-sub-labels > div, #basicStaffCard .basic-value, #basicStaffCard .fixed-suffix, #basicStaffCard .staff-side-label, #basicStaffCard .staff-role, #basicStaffCard .staff-count, #basicStaffCard .staff-count-num, #basicStaffCard .staff-name, #basicStaffCard input, #basicStaffCard select, #basicStaffCard span, #basicStaffCard b{
    font-size:5.15px !important;
    line-height:1.02 !important;
    white-space:nowrap !important;
    word-break:keep-all !important;
  }

  #basicStaffCard .mini-grid{
    grid-template-columns:22mm minmax(0,1fr) !important;
  }

  #basicStaffCard .weather-label-wrap{
    grid-template-columns:14mm 8mm !important;
  }

  #basicStaffCard .staff-board{
    grid-template-columns:12mm minmax(0,1fr) !important;
  }

  #basicStaffCard .staff-row{
    grid-template-columns:18mm 7mm minmax(0,1fr) !important;
    min-height:13px !important;
    height:13px !important;
  }

  #basicStaffCard .staff-names{
    min-width:0 !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  }

  #basicStaffCard .staff-name{
    min-width:0 !important;
    width:100% !important;
    height:13px !important;
    min-height:13px !important;
    padding:0 1px !important;
  }

  #basicStaffCard .labelcell, #basicStaffCard .valuecell, #basicStaffCard .weather-label-wrap, #basicStaffCard .weather-values{
    min-height:13px !important;
    height:13px !important;
  }

  #basicStaffCard .weather-values{
    grid-template-rows:13px 13px !important;
  }

  
  #paymentStatusCard .payment-table-wrap, #paymentStatusCard .license-table-wrap{
    overflow:visible !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
  }

  #paymentStatusCard .payment-table, #paymentStatusCard .license-payment-table{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    table-layout:fixed !important;
  }

  
  #membershipPayments .pay-no{width:7% !important}
  #membershipPayments .pay-name{width:16% !important}
  #membershipPayments .pay-membership{width:18% !important}
  #membershipPayments .pay-renewal{width:16% !important}
  #membershipPayments .pay-amount{width:24% !important}
  #membershipPayments .pay-method{width:19% !important}
  #membershipPayments .pay-delete{width:0 !important}

  #membershipPayments th, #membershipPayments td{
    padding:.35mm .35mm !important;
    font-size:5.8px !important;
    overflow:hidden !important;
    text-overflow:clip !important;
    white-space:nowrap !important;
  }

  #membershipPayments input, #membershipPayments select{
    width:100% !important;
    min-width:0 !important;
    height:12px !important;
    min-height:12px !important;
    padding:0 1px !important;
    font-size:5.8px !important;
    line-height:1 !important;
    text-align:center !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
  }

  
  #membershipPayments select{
    -webkit-appearance:none !important;
    -moz-appearance:none !important;
    appearance:none !important;
    background-image:none !important;
    padding-right:1px !important;
  }

  #membershipPayments .pay-money{
    width:100% !important;
    min-width:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:1px !important;
  }

  #membershipPayments .pay-money input{
    text-align:right !important;
    flex:1 1 auto !important;
  }

  #membershipPayments .pay-money span{
    flex:0 0 auto !important;
    font-size:5.8px !important;
  }

  
  #licensePayments{
    width:100% !important;
    min-width:0 !important;
  }

  #licensePayments .pay-no{width:15% !important}
  #licensePayments .license-name-col{width:35% !important}
  #licensePayments .license-note-col{width:50% !important}

  #licensePayments th, #licensePayments td, #licensePayments input{
    font-size:5.8px !important;
  }

  
  #paymentStatusCard .payment-total span, #paymentStatusCard .license-block .payment-total span{
    font-size:6.2px !important;
    line-height:1.05 !important;
    font-weight:700 !important;
  }

  #paymentStatusCard .payment-total strong, #paymentStatusCard .license-block .payment-total strong{
    font-size:6.2px !important;
    line-height:1.05 !important;
    font-weight:700 !important;
  }

  #paymentStatusCard .license-block .payment-total{
    justify-content:flex-end !important;
    gap:1.2mm !important;
    padding:.55mm .8mm !important;
  }
}

@media print{

  
  #events .event-content{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 34mm !important;
    column-gap:2mm !important;
    row-gap:2.2mm !important;
    align-items:stretch !important;
  }

  #basicStaffCard{
    grid-column:1 !important;
    grid-row:1 !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    min-width:0 !important;
  }

  #operationSummaryCard{
    grid-column:2 !important;
    grid-row:1 !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    min-width:0 !important;
  }

  #paymentStatusCard, #lunchCard, #noiseCard, #inviteCard, #attendanceCard, #vehiclesCard, #otherCard{
    grid-column:1 / -1 !important;
  }

  
  #basicStaffCard > .title, #operationSummaryCard > .title{
    display:none !important;
  }

  
  #basicStaffCard .combined-info{
    display:grid !important;
    grid-template-columns:35fr 65fr !important;
    gap:2mm !important;
    height:27mm !important;
    min-height:27mm !important;
    max-height:27mm !important;
    align-items:stretch !important;
  }

  #basicStaffCard .event-info-block, #basicStaffCard .staff-board{
    height:27mm !important;
    min-height:27mm !important;
    max-height:27mm !important;
    overflow:hidden !important;
    border:1px solid #5f6c7b !important;
    border-radius:0 !important;
    background:#fff !important;
  }

  #basicStaffCard .mini-grid{
    height:100% !important;
    display:grid !important;
    grid-template-columns:23mm minmax(0,1fr) !important;
    grid-template-rows:repeat(5,1fr) !important;
  }

  #basicStaffCard .labelcell, #basicStaffCard .valuecell, #basicStaffCard .weather-label-wrap, #basicStaffCard .weather-values{
    min-height:0 !important;
    height:auto !important;
    overflow:hidden !important;
  }

  #basicStaffCard .weather-label-wrap{
    grid-template-columns:14.5mm 8.5mm !important;
    grid-row:4 / 6 !important;
  }

  #basicStaffCard .weather-values{
    grid-row:4 / 6 !important;
    grid-template-rows:1fr 1fr !important;
  }

  
  #basicStaffCard .labelcell, #basicStaffCard .weather-main-label, #basicStaffCard .weather-sub-labels > div, #basicStaffCard .basic-value, #basicStaffCard .fixed-suffix, #basicStaffCard .staff-side-label, #basicStaffCard .staff-role, #basicStaffCard .staff-count, #basicStaffCard .staff-count-num, #basicStaffCard .staff-name, #basicStaffCard input, #basicStaffCard select, #basicStaffCard span, #basicStaffCard b{
    font-size:5.1pt !important;
    line-height:1 !important;
    white-space:nowrap !important;
    word-break:keep-all !important;
    letter-spacing:-0.05pt !important;
  }

  #basicStaffCard .labelcell, #basicStaffCard .weather-main-label, #basicStaffCard .weather-sub-labels > div, #basicStaffCard .staff-side-label, #basicStaffCard .staff-role, #basicStaffCard .staff-count{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 .5mm !important;
  }

  #basicStaffCard .valuecell, #basicStaffCard .weather-values > div{
    padding:0 .6mm !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  #basicStaffCard input, #basicStaffCard select{
    border:0 !important;
    box-shadow:none !important;
    background:transparent !important;
    min-width:0 !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    padding:0 !important;
    margin:0 !important;
    text-align:center !important;
    -webkit-appearance:none !important;
    -moz-appearance:none !important;
    appearance:none !important;
    background-image:none !important;
  }

  #basicStaffCard input[type="date"]::-webkit-calendar-picker-indicator{
    display:none !important;
    opacity:0 !important;
  }

  #basicStaffCard .timecell{
    gap:.8mm !important;
  }

  #basicStaffCard .timecell select{
    width:auto !important;
    flex:1 1 0 !important;
  }

  #basicStaffCard .suffix-cell{
    gap:.5mm !important;
  }

  
  #basicStaffCard .staff-board{
    display:grid !important;
    grid-template-columns:14mm minmax(0,1fr) !important;
    grid-template-rows:repeat(5,1fr) !important;
  }

  #basicStaffCard .staff-side-label{
    grid-row:1 / 6 !important;
    height:auto !important;
  }

  #basicStaffCard .staff-row{
    min-height:0 !important;
    height:auto !important;
    display:grid !important;
    grid-template-columns:19mm 8mm minmax(0,1fr) !important;
    overflow:hidden !important;
  }

  #basicStaffCard .staff-names{
    min-width:0 !important;
    height:100% !important;
    display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    gap:0 !important;
  }

  #basicStaffCard .staff-name{
    min-width:0 !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    padding:0 .4mm !important;
    border-radius:0 !important;
    overflow:hidden !important;
  }

  
  #operationSummaryCard .summary{
    height:27mm !important;
    min-height:27mm !important;
    max-height:27mm !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-template-rows:repeat(5,1fr) !important;
    gap:0 !important;
    border:1px solid #5f6c7b !important;
    background:#fff !important;
  }

  #operationSummaryCard .summary > div{
    min-width:0 !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 9mm !important;
    align-items:center !important;
    justify-content:stretch !important;
    gap:0 !important;
    border:0 !important;
    border-bottom:1px solid #8b96a4 !important;
    border-radius:0 !important;
    background:#fff !important;
  }

  #operationSummaryCard .summary > div:last-child{
    border-bottom:0 !important;
  }

  #operationSummaryCard .summary small, #operationSummaryCard .summary strong{
    margin:0 !important;
    padding:0 .5mm !important;
    font-size:5.1pt !important;
    line-height:1 !important;
    white-space:nowrap !important;
    word-break:keep-all !important;
    text-align:center !important;
  }

  #operationSummaryCard .summary small{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    height:100% !important;
  }

  #operationSummaryCard .summary strong{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    height:100% !important;
    border-left:1px solid #8b96a4 !important;
    font-weight:700 !important;
  }
}

@media print{
  :root{
    --print-white:#FFFFFF;
    --print-blue:#DCEBF8;
    --print-border:#8CA0B7;
  }

  
  #events, #events *, #events input, #events select, #events textarea, #events table, #events th, #events td, #events label, #events span, #events small, #events strong, #events b{
    font-size:6.2px !important;
    line-height:1.08 !important;
    letter-spacing:0 !important;
  }

  
  #events .title{
    font-size:7.2px !important;
    line-height:1.08 !important;
    font-weight:700 !important;
  }

  
  #basicStaffCard > .title, #operationSummaryCard > .title{
    display:none !important;
  }

  
  #events, #events .card, #events table, #events tbody, #events tr, #events td, #events input, #events select, #events textarea, #basicStaffCard, #basicStaffCard .event-info-block, #basicStaffCard .staff-board, #operationSummaryCard, #operationSummaryCard .summary, #operationSummaryCard .summary > div, #paymentStatusCard .payment-block, #lunchCard .lunch-summary, #noiseCard .noise-item{
    background:var(--print-white) !important;
    background-color:var(--print-white) !important;
  }

  
  #events thead th, #basicStaffCard .labelcell, #basicStaffCard .weather-main-label, #basicStaffCard .weather-sub-labels > div, #basicStaffCard .staff-side-label, #basicStaffCard .staff-role, #basicStaffCard .staff-count, #operationSummaryCard .summary small, #paymentStatusCard .payment-block-head, #lunchCard .summary-box > span, #noiseCard .noise-head{
    background:var(--print-blue) !important;
    background-color:var(--print-blue) !important;
  }

  
  #events .card, #events table, #events th, #events td, #events input, #events select, #events textarea, #basicStaffCard .event-info-block, #basicStaffCard .staff-board, #basicStaffCard .labelcell, #basicStaffCard .valuecell, #basicStaffCard .weather-label-wrap, #basicStaffCard .weather-values, #basicStaffCard .weather-main-label, #basicStaffCard .weather-sub-labels > div, #basicStaffCard .staff-side-label, #basicStaffCard .staff-row, #basicStaffCard .staff-role, #basicStaffCard .staff-count, #basicStaffCard .staff-name, #operationSummaryCard .summary, #operationSummaryCard .summary > div, #operationSummaryCard .summary small, #operationSummaryCard .summary strong, #paymentStatusCard .payment-block, #paymentStatusCard .payment-block-head, #paymentStatusCard .payment-total, #lunchCard .lunch-summary, #lunchCard .summary-box, #noiseCard .noise-item, #noiseCard .noise-head, #noiseCard .field{
    border-color:var(--print-border) !important;
  }

  
  #events *{
    box-shadow:none !important;
  }

  
  #events *, #events input, #events select, #events textarea, #events td, #events span, #events small, #events strong, #events b{
    font-weight:400 !important;
  }

  
  #events .title{
    font-weight:700 !important;
  }

  
  #events thead th{
    font-weight:700 !important;
  }

  
  #basicStaffCard .labelcell, #basicStaffCard .weather-main-label, #basicStaffCard .weather-sub-labels > div, #basicStaffCard .staff-side-label, #basicStaffCard .staff-role, #basicStaffCard .staff-count, #operationSummaryCard .summary small, #paymentStatusCard .payment-block-head b, #lunchCard .summary-box > span, #noiseCard .noise-head, #noiseCard .field label{
    font-weight:700 !important;
  }

  
  #basicStaffCard .basic-value, #basicStaffCard .fixed-suffix, #basicStaffCard .staff-count-num, #basicStaffCard .staff-name, #operationSummaryCard .summary strong, #paymentStatusCard input, #paymentStatusCard select, #lunchCard .summary-box strong, #lunchCard .summary-box input, #noiseCard input, #noiseCard .db-input span, #invites tbody td, #attendance tbody td, #vehicles tbody td, #otherNotes{
    font-weight:400 !important;
  }

  
  #paymentStatusCard .payment-total, #paymentStatusCard .payment-total *, #paymentStatusCard .license-block .payment-total, #paymentStatusCard .license-block .payment-total *, #lunchCard .summary-box:nth-last-child(2), #lunchCard .summary-box:nth-last-child(2) *, #lunchCard .summary-box:last-child, #lunchCard .summary-box:last-child *{
    font-weight:700 !important;
  }

  
  #basicStaffCard *, #operationSummaryCard *{
    white-space:nowrap !important;
    word-break:keep-all !important;
  }

  
  #events select{
    -webkit-appearance:none !important;
    -moz-appearance:none !important;
    appearance:none !important;
    background-image:none !important;
  }
}

@media print{
  
  html body #events#events, html body #events#events *{
    font-size:6.2px !important;
  }

  
  html body #events#events .card > .title, html body #events#events .card > .title *{
    font-size:7.2px !important;
  }

  
  html body #events#events #basicStaffCard > .title, html body #events#events #operationSummaryCard > .title{
    display:none !important;
  }

  
  html body #events#events, html body #events#events *{
    border-width:0.6px !important;
  }

  
  html body #events#events{
    --print-white:#FFFFFF;
    --print-blue:#DCEBF8;
    --print-border:#8CA0B7;
  }
}

@media print{
  :root{
    --pdf-navy:#173A63;
    --pdf-blue:#DCEBF8;
    --pdf-line:#D9DEE5;
    --pdf-black:#000000;
    --pdf-white:#FFFFFF;
  }

  
  html body #events#events, html body #events#events *{
    color:var(--pdf-black) !important;
    font-size:6.2px !important;
    border:none !important;
    box-shadow:none !important;
    outline:none !important;
  }

  html body #events#events .card > .title, html body #events#events .card > .title *{
    color:var(--pdf-navy) !important;
    font-size:7.2px !important;
    font-weight:700 !important;
  }

  
  html body #events#events *, html body #events#events input, html body #events#events select, html body #events#events textarea{
    font-weight:400 !important;
  }

  html body #events#events .card > .title, html body #events#events thead th, html body #events#events label, html body #events#events .labelcell, html body #events#events .weather-main-label, html body #events#events .weather-sub-labels > div, html body #events#events .staff-side-label, html body #events#events .staff-role, html body #events#events .staff-count, html body #events#events .summary small, html body #events#events .payment-block-head b, html body #events#events .summary-box > span, html body #events#events .noise-head{
    font-weight:700 !important;
  }

  
  html body #events#events #paymentStatusCard .payment-total, html body #events#events #paymentStatusCard .payment-total *, html body #events#events #lunchCard .summary-box:nth-last-child(2), html body #events#events #lunchCard .summary-box:nth-last-child(2) *, html body #events#events #lunchCard .summary-box:last-child, html body #events#events #lunchCard .summary-box:last-child *{
    font-weight:700 !important;
  }

  
  html body #events#events .event-content{
    display:grid !important;
    grid-template-columns:3fr 4fr 3fr !important;
    column-gap:1.6mm !important;
    row-gap:1.6mm !important;
    align-items:start !important;
  }

  
  html body #events#events #basicStaffCard{
    display:contents !important;
  }

  html body #events#events #basicStaffCard > .title{
    display:block !important;
    grid-column:1 / -1 !important;
    grid-row:1 !important;
    margin:0 0 .7mm 0 !important;
    padding:0 !important;
  }

  html body #events#events #basicStaffCard .combined-info{
    display:contents !important;
  }

  html body #events#events #basicStaffCard .event-info-block{
    grid-column:1 !important;
    grid-row:2 !important;
    width:100% !important;
    height:27mm !important;
    min-height:27mm !important;
    max-height:27mm !important;
    overflow:hidden !important;
    background:var(--pdf-white) !important;
  }

  html body #events#events #basicStaffCard .staff-board{
    grid-column:2 !important;
    grid-row:2 !important;
    width:100% !important;
    height:27mm !important;
    min-height:27mm !important;
    max-height:27mm !important;
    overflow:hidden !important;
    background:var(--pdf-white) !important;
  }

  html body #events#events #operationSummaryCard{
    grid-column:3 !important;
    grid-row:2 !important;
    width:100% !important;
    height:27mm !important;
    min-height:27mm !important;
    max-height:27mm !important;
    margin:0 !important;
    padding:0 !important;
    background:var(--pdf-white) !important;
  }

  html body #events#events #operationSummaryCard > .title{
    display:none !important;
  }

  html body #events#events #paymentStatusCard, html body #events#events #lunchCard, html body #events#events #noiseCard, html body #events#events #inviteCard, html body #events#events #attendanceCard, html body #events#events #vehiclesCard, html body #events#events #otherCard{
    grid-column:1 / -1 !important;
  }

  
  html body #events#events #basicStaffCard .mini-grid{
    width:100% !important;
    height:100% !important;
    display:grid !important;
    grid-template-columns:31% 69% !important;
    grid-template-rows:repeat(5,1fr) !important;
    background:var(--pdf-white) !important;
  }

  html body #events#events #basicStaffCard .labelcell, html body #events#events #basicStaffCard .weather-main-label, html body #events#events #basicStaffCard .weather-sub-labels > div{
    background:var(--pdf-blue) !important;
  }

  html body #events#events #basicStaffCard .weather-label-wrap{
    grid-template-columns:62% 38% !important;
    grid-row:4 / 6 !important;
    min-height:0 !important;
    height:auto !important;
  }

  html body #events#events #basicStaffCard .weather-values{
    grid-row:4 / 6 !important;
    grid-template-rows:1fr 1fr !important;
    min-height:0 !important;
    height:auto !important;
  }

  html body #events#events #basicStaffCard .labelcell, html body #events#events #basicStaffCard .valuecell, html body #events#events #basicStaffCard .weather-main-label, html body #events#events #basicStaffCard .weather-sub-labels > div, html body #events#events #basicStaffCard .weather-values > div{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 .45mm !important;
    min-height:0 !important;
    white-space:nowrap !important;
    word-break:keep-all !important;
  }

  html body #events#events #basicStaffCard input, html body #events#events #basicStaffCard select{
    width:100% !important;
    min-width:0 !important;
    height:auto !important;
    min-height:0 !important;
    padding:0 !important;
    text-align:center !important;
    background:transparent !important;
    -webkit-appearance:none !important;
    -moz-appearance:none !important;
    appearance:none !important;
    background-image:none !important;
  }

  html body #events#events #basicStaffCard input[type="date"]::-webkit-calendar-picker-indicator{
    display:none !important;
  }

  
  html body #events#events #basicStaffCard .staff-board{
    display:grid !important;
    grid-template-columns:13% 87% !important;
    grid-template-rows:repeat(5,1fr) !important;
  }

  html body #events#events #basicStaffCard .staff-side-label, html body #events#events #basicStaffCard .staff-role, html body #events#events #basicStaffCard .staff-count{
    background:var(--pdf-blue) !important;
  }

  html body #events#events #basicStaffCard .staff-side-label{
    grid-row:1 / 6 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    white-space:nowrap !important;
  }

  html body #events#events #basicStaffCard .staff-row{
    display:grid !important;
    grid-template-columns:22% 10% 68% !important;
    min-height:0 !important;
    height:auto !important;
  }

  html body #events#events #basicStaffCard .staff-role, html body #events#events #basicStaffCard .staff-count, html body #events#events #basicStaffCard .staff-name{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:0 !important;
    height:100% !important;
    padding:0 .35mm !important;
    white-space:nowrap !important;
  }

  html body #events#events #basicStaffCard .staff-names{
    display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    gap:0 !important;
    min-width:0 !important;
    height:100% !important;
  }

  
  html body #events#events #operationSummaryCard .summary{
    width:100% !important;
    height:100% !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-template-rows:repeat(5,1fr) !important;
    gap:0 !important;
    background:var(--pdf-white) !important;
  }

  html body #events#events #operationSummaryCard .summary > div{
    display:grid !important;
    grid-template-columns:42% 58% !important;
    align-items:center !important;
    min-width:0 !important;
    min-height:0 !important;
    padding:0 !important;
    background:var(--pdf-white) !important;
  }

  html body #events#events #operationSummaryCard .summary small{
    height:100% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 .35mm !important;
    background:var(--pdf-blue) !important;
    white-space:nowrap !important;
  }

  html body #events#events #operationSummaryCard .summary strong{
    height:100% !important;
    width:100% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 .35mm !important;
    background:var(--pdf-white) !important;
    font-weight:400 !important;
  }

  
  html body #events#events #lunchCard > .title, html body #events#events #lunchCard > .title *{
    font-weight:700 !important;
    color:var(--pdf-navy) !important;
  }

  html body #events#events #lunchCard .lunch-summary{
    display:grid !important;
    grid-template-columns:1.45fr .62fr .62fr .62fr .72fr 1.05fr .82fr !important;
    align-items:stretch !important;
    background:var(--pdf-white) !important;
  }

  html body #events#events #lunchCard .summary-box{
    min-width:0 !important;
    display:grid !important;
    grid-template-rows:8px 1fr !important;
    align-items:center !important;
    justify-items:center !important;
    padding:.45mm .35mm !important;
    background:var(--pdf-white) !important;
  }

  html body #events#events #lunchCard .summary-box > span{
    width:100% !important;
    height:8px !important;
    min-height:8px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 !important;
    background:var(--pdf-blue) !important;
    white-space:nowrap !important;
    word-break:keep-all !important;
  }

  html body #events#events #lunchCard .summary-box strong, html body #events#events #lunchCard .summary-box input, html body #events#events #lunchCard .summary-box b{
    color:var(--pdf-black) !important;
  }

  html body #events#events #lunchCard .qty-input, html body #events#events #lunchCard .money-input{
    width:100% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:0 !important;
    white-space:nowrap !important;
  }

  html body #events#events #lunchCard #otherLunchInput{
    width:4ch !important;
    min-width:4ch !important;
    max-width:4ch !important;
    padding:0 !important;
    text-align:right !important;
  }

  html body #events#events #lunchCard #lunchTotalAmountInput{
    width:9ch !important;
    min-width:9ch !important;
    max-width:9ch !important;
    padding:0 !important;
    text-align:right !important;
  }

  html body #events#events #lunchCard .qty-input b, html body #events#events #lunchCard .money-input b{
    margin:0 !important;
    padding:0 !important;
  }

  
  html body #events#events #noiseCard #noiseDb1, html body #events#events #noiseCard #noiseDb2{
    text-align:right !important;
  }

  html body #events#events #noiseCard .db-input{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:0 !important;
  }

  html body #events#events #noiseCard .db-input span{
    margin:0 !important;
    padding:0 !important;
  }

  
  html body #events#events #invites th, html body #events#events #invites td, html body #events#events #attendance th, html body #events#events #attendance td, html body #events#events #vehicles th, html body #events#events #vehicles td{
    border:none !important;
    border-bottom:0.4px solid var(--pdf-line) !important;
  }

  html body #events#events #invites tbody tr:last-child td, html body #events#events #attendance tbody tr:last-child td, html body #events#events #vehicles tbody tr:last-child td{
    border-bottom:0.4px solid var(--pdf-line) !important;
  }

  
  html body #events#events .card > .title, html body #events#events .card > .title *{
    color:var(--pdf-navy) !important;
  }

  html body #events#events .card:not(#basicStaffCard):not(#operationSummaryCard){
    background:var(--pdf-white) !important;
  }
}

@media print{
  :root{
    --pdf-card-line:#BFC7D2;
    --pdf-inner-line:#D9DEE5;
  }

  
  html body #events#events #paymentStatusCard, html body #events#events #lunchCard, html body #events#events #noiseCard, html body #events#events #inviteCard, html body #events#events #attendanceCard, html body #events#events #vehiclesCard, html body #events#events #otherCard, html body #events#events #basicStaffCard .event-info-block, html body #events#events #basicStaffCard .staff-board, html body #events#events #operationSummaryCard{
    border:0.4px solid var(--pdf-card-line) !important;
    border-radius:0 !important;
    box-sizing:border-box !important;
  }

  
  html body #events#events #basicStaffCard > .title{
    margin-bottom:.8mm !important;
  }

  

  
  html body #events#events #basicStaffCard .mini-grid > .labelcell, html body #events#events #basicStaffCard .mini-grid > .valuecell{
    border-bottom:0.2px solid var(--pdf-inner-line) !important;
  }

  
  html body #events#events #basicStaffCard .mini-grid > .labelcell:nth-last-child(-n+2), html body #events#events #basicStaffCard .mini-grid > .valuecell:nth-last-child(-n+2){
    border-bottom:none !important;
  }

  
  html body #events#events #basicStaffCard .weather-main-label{
    border-bottom:0.2px solid var(--pdf-inner-line) !important;
  }
  html body #events#events #basicStaffCard .weather-sub-labels > div:first-child, html body #events#events #basicStaffCard .weather-values > div:first-child{
    border-bottom:0.2px solid var(--pdf-inner-line) !important;
  }
  html body #events#events #basicStaffCard .weather-sub-labels > div:last-child, html body #events#events #basicStaffCard .weather-values > div:last-child{
    border-bottom:none !important;
  }

  
  html body #events#events #basicStaffCard .staff-row{
    border-bottom:0.2px solid var(--pdf-inner-line) !important;
  }
  html body #events#events #basicStaffCard .staff-row:last-child{
    border-bottom:none !important;
  }

  
  html body #events#events #operationSummaryCard .summary > div{
    border-bottom:0.2px solid var(--pdf-inner-line) !important;
  }
  html body #events#events #operationSummaryCard .summary > div:last-child{
    border-bottom:none !important;
  }

  
}

.print-operation-summary{display:none}

@media print{
  :root{
    --pdf-card-line:#BFC7D2;
    --pdf-inner-line:#D9DEE5;
  }

  
  html body #events#events .card{
    border:0.4px solid var(--pdf-card-line) !important;
    border-radius:0 !important;
    padding:2.2mm 2.8mm !important;
    box-sizing:border-box !important;
  }

  
  html body #events#events .event-content{
    display:block !important;
  }

  html body #events#events #basicStaffCard{
    display:block !important;
    width:100% !important;
    margin:0 0 1.2mm 0 !important;
    background:var(--pdf-white) !important;
  }

  html body #events#events #basicStaffCard > .title{
    display:block !important;
    margin:0 0 .9mm 0 !important;
  }

  html body #events#events #basicStaffCard .combined-info{
    display:grid !important;
    grid-template-columns:3fr 4fr 3fr !important;
    gap:1.6mm !important;
    width:100% !important;
    align-items:stretch !important;
  }

  
  html body #events#events #operationSummaryCard{
    display:none !important;
  }

  html body #events#events #basicStaffCard .print-operation-summary{
    display:grid !important;
  }

  
  html body #events#events #basicStaffCard .event-info-block, html body #events#events #basicStaffCard .staff-board, html body #events#events #basicStaffCard .print-operation-summary{
    height:27mm !important;
    min-height:27mm !important;
    max-height:27mm !important;
    border:0.2px solid var(--pdf-inner-line) !important;
    border-radius:0 !important;
    overflow:hidden !important;
    background:var(--pdf-white) !important;
    box-sizing:border-box !important;
  }

  
  html body #events#events #basicStaffCard .mini-grid{
    height:100% !important;
    display:grid !important;
    grid-template-columns:31% 69% !important;
    grid-template-rows:repeat(5,1fr) !important;
  }

  html body #events#events #basicStaffCard .mini-grid > .labelcell{
    border-right:0.2px solid var(--pdf-inner-line) !important;
    border-bottom:0.2px solid var(--pdf-inner-line) !important;
  }

  html body #events#events #basicStaffCard .mini-grid > .valuecell{
    border-bottom:0.2px solid var(--pdf-inner-line) !important;
  }

  html body #events#events #basicStaffCard .weather-label-wrap{
    grid-row:4 / 6 !important;
    display:grid !important;
    grid-template-columns:62% 38% !important;
    border-right:0.2px solid var(--pdf-inner-line) !important;
  }

  html body #events#events #basicStaffCard .weather-main-label{
    border-right:0.2px solid var(--pdf-inner-line) !important;
  }

  html body #events#events #basicStaffCard .weather-sub-labels > div:first-child{
    border-bottom:0.2px solid var(--pdf-inner-line) !important;
  }

  html body #events#events #basicStaffCard .weather-values{
    grid-row:4 / 6 !important;
    display:grid !important;
    grid-template-rows:1fr 1fr !important;
  }

  html body #events#events #basicStaffCard .weather-values > div:first-child{
    border-bottom:0.2px solid var(--pdf-inner-line) !important;
  }

  
  html body #events#events #basicStaffCard .staff-board{
    display:grid !important;
    grid-template-columns:13% 87% !important;
    grid-template-rows:repeat(5,1fr) !important;
  }

  html body #events#events #basicStaffCard .staff-side-label{
    grid-row:1 / 6 !important;
    border-right:0.2px solid var(--pdf-inner-line) !important;
  }

  html body #events#events #basicStaffCard .staff-row{
    display:grid !important;
    grid-template-columns:22% 10% 68% !important;
    min-height:0 !important;
    border-bottom:0.2px solid var(--pdf-inner-line) !important;
  }

  html body #events#events #basicStaffCard .staff-row:last-child{
    border-bottom:none !important;
  }

  html body #events#events #basicStaffCard .staff-role, html body #events#events #basicStaffCard .staff-count{
    border-right:0.2px solid var(--pdf-inner-line) !important;
  }

  html body #events#events #basicStaffCard .staff-names{
    display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    gap:0 !important;
    min-width:0 !important;
    height:100% !important;
  }

  html body #events#events #basicStaffCard .staff-name{
    border-right:0.2px solid var(--pdf-inner-line) !important;
  }

  html body #events#events #basicStaffCard .staff-name:last-child{
    border-right:none !important;
  }

  
  html body #events#events #basicStaffCard .print-operation-summary{
    grid-template-columns:1fr !important;
    grid-template-rows:repeat(5,1fr) !important;
  }

  html body #events#events #basicStaffCard .print-operation-summary > div{
    display:grid !important;
    grid-template-columns:42% 58% !important;
    min-height:0 !important;
    border-bottom:0.2px solid var(--pdf-inner-line) !important;
  }

  html body #events#events #basicStaffCard .print-operation-summary > div:last-child{
    border-bottom:none !important;
  }

  html body #events#events #basicStaffCard .print-operation-summary small{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:var(--pdf-blue) !important;
    border-right:0.2px solid var(--pdf-inner-line) !important;
    font-weight:700 !important;
    white-space:nowrap !important;
  }

  html body #events#events #basicStaffCard .print-operation-summary strong{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    font-weight:400 !important;
  }

  
  html body #events#events #paymentStatusCard .payment-total{
    margin-top:3mm !important;
  }

  html body #events#events #paymentStatusCard .payment-block{
    overflow:visible !important;
  }

  
  html body #events#events #noiseCard .noise-item{
    border:0.2px solid var(--pdf-inner-line) !important;
    border-radius:0 !important;
    box-sizing:border-box !important;
  }

  html body #events#events #noiseCard .noise-head{
    border-right:0.2px solid var(--pdf-inner-line) !important;
  }

  html body #events#events #noiseCard .noise-item > .field:not(.no-print){
    border-left:0.2px solid var(--pdf-inner-line) !important;
  }

  html body #events#events #noiseCard .noise-item > .field:nth-child(2){
    border-left:none !important;
  }
}

@media print{
  html body #events#events #basicStaffCard .combined-info{
    display:grid !important;
    grid-template-columns:3fr 4fr 3fr !important;
    grid-template-rows:27mm !important;
    gap:1.6mm !important;
    width:100% !important;
    height:27mm !important;
    min-height:27mm !important;
    max-height:27mm !important;
    overflow:hidden !important;
    align-items:stretch !important;
  }

  html body #events#events #basicStaffCard .event-info-block{
    grid-column:1 !important;
    grid-row:1 !important;
    width:100% !important;
    height:27mm !important;
    min-height:27mm !important;
    max-height:27mm !important;
  }

  html body #events#events #basicStaffCard .staff-board{
    grid-column:2 !important;
    grid-row:1 !important;
    width:100% !important;
    height:27mm !important;
    min-height:27mm !important;
    max-height:27mm !important;
  }

  html body #events#events #basicStaffCard .print-operation-summary{
    grid-column:3 !important;
    grid-row:1 !important;
    width:100% !important;
    height:27mm !important;
    min-height:27mm !important;
    max-height:27mm !important;
  }

  
  html body #events#events #basicStaffCard{
    overflow:hidden !important;
  }

  
  html body #events#events #paymentStatusCard{
    clear:both !important;
    position:relative !important;
    z-index:0 !important;
  }
}

@media print{
  :root{
    --pdf-card-line:#BFC7D2;
    --pdf-inner-line:#D9DEE5;
    --pdf-blue:#DCEBF8;
  }

  
  html body #events#events #paymentStatusCard table{
    border-collapse:collapse !important;
    width:100% !important;
  }

  html body #events#events #paymentStatusCard th, html body #events#events #paymentStatusCard td{
    border:none !important;
    border-bottom:0.2px solid var(--pdf-inner-line) !important;
  }

  html body #events#events #paymentStatusCard tbody tr:last-child td{
    border-bottom:0.2px solid var(--pdf-inner-line) !important;
  }

  
  html body #events#events #paymentStatusCard thead th{
    padding-top:.7mm !important;
    padding-bottom:1.4mm !important;
    white-space:nowrap !important;
    background:var(--pdf-blue) !important;
  }

  
  html body #events#events #paymentStatusCard .payment-total{
    margin-top:3mm !important;
    padding-top:.9mm !important;
  }

  
  html body #events#events #lunchCard .lunch-summary{
    border:0.2px solid var(--pdf-inner-line) !important;
    border-collapse:collapse !important;
  }

  html body #events#events #lunchCard .summary-box{
    border-right:0.2px solid var(--pdf-inner-line) !important;
    padding:0 !important;
    overflow:hidden !important;
  }

  html body #events#events #lunchCard .summary-box:last-child{
    border-right:none !important;
  }

  html body #events#events #lunchCard .summary-box > span{
    width:100% !important;
    height:8.8px !important;
    min-height:8.8px !important;
    padding:0 !important;
    background:var(--pdf-blue) !important;
    border-bottom:0.2px solid var(--pdf-inner-line) !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    white-space:nowrap !important;
  }

  html body #events#events #lunchCard .summary-box > :not(span){
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:12px !important;
    padding:.45mm .35mm !important;
  }

  
  html body #events#events #lunchCard .qty-input, html body #events#events #lunchCard .money-input{
    gap:0 !important;
    justify-content:center !important;
  }

  
  html body #events#events #inviteCard .list-no, html body #events#events #attendanceCard .list-no, html body #events#events #vehiclesCard .list-no{
    width:6mm !important;
    min-width:6mm !important;
    max-width:6mm !important;
  }

  html body #events#events #invites thead th, html body #events#events #attendance thead th, html body #events#events #vehicles thead th{
    min-height:14px !important;
    height:14px !important;
    padding-top:1.1mm !important;
    padding-bottom:1.1mm !important;
    white-space:nowrap !important;
  }

  html body #events#events #invites tbody td, html body #events#events #attendance tbody td, html body #events#events #vehicles tbody td{
    min-height:13.5px !important;
    height:13.5px !important;
    padding-top:1.0mm !important;
    padding-bottom:1.0mm !important;
    vertical-align:middle !important;
  }

  
  html body #events#events #invites thead th, html body #events#events #attendance thead th, html body #events#events #vehicles thead th{
    background:var(--pdf-blue) !important;
  }
}

@media print{
  :root{
    --pdf-inner-line:#D4DBE4;
    --pdf-blue:#DCEBF8;
  }

  
  html body #events#events .card{
    margin:0 !important;
  }
  html body #events#events .card + .card{
    margin-top:4mm !important;
  }

  
  html body #events#events #basicStaffCard .suffix-cell{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:0 !important;
  }

  html body #events#events #basicStaffCard #eventRound{
    width:4ch !important;
    min-width:4ch !important;
    max-width:4ch !important;
    flex:0 0 auto !important;
    text-align:right !important;
  }

  html body #events#events #basicStaffCard .temp-only{
    width:4ch !important;
    min-width:4ch !important;
    max-width:4ch !important;
    flex:0 0 auto !important;
    text-align:right !important;
  }

  html body #events#events #basicStaffCard .fixed-suffix{
    display:inline-block !important;
    margin:0 !important;
    padding:0 !important;
    white-space:nowrap !important;
  }

  
  html body #events#events #basicStaffCard .print-operation-summary strong{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:0 !important;
  }
  html body #events#events #basicStaffCard .print-operation-summary > div:nth-child(-n+4) strong::after{
    content:"명";
    margin-left:0 !important;
  }
  html body #events#events #basicStaffCard .print-operation-summary > div:nth-child(5) strong::after{
    content:"대";
    margin-left:0 !important;
  }

  
  html body #events#events #paymentStatusCard .payment-table-wrap, html body #events#events #paymentStatusCard .license-table-wrap{
    height:20mm !important;
    min-height:20mm !important;
    max-height:20mm !important;
    overflow:hidden !important;
  }

  html body #events#events #paymentStatusCard .payment-table{
    height:100% !important;
    width:100% !important;
    border-collapse:collapse !important;
  }

  html body #events#events #paymentStatusCard th, html body #events#events #paymentStatusCard td{
    border:none !important;
    border-bottom:0.2px solid var(--pdf-inner-line) !important;
  }

  html body #events#events #paymentStatusCard thead th{
    padding-top:.7mm !important;
    padding-bottom:1.4mm !important;
    background:var(--pdf-blue) !important;
    white-space:nowrap !important;
  }

  html body #events#events #paymentStatusCard .payment-total{
    margin-top:3mm !important;
  }

  
  html body #events#events #lunchCard .lunch-summary{
    border:0.2px solid var(--pdf-inner-line) !important;
    border-collapse:collapse !important;
    background:#fff !important;
  }

  html body #events#events #lunchCard .summary-box{
    display:grid !important;
    grid-template-rows:8.8px 1fr !important;
    border-right:0.2px solid var(--pdf-inner-line) !important;
    background:#fff !important;
    overflow:hidden !important;
  }

  html body #events#events #lunchCard .summary-box:last-child{
    border-right:none !important;
  }

  html body #events#events #lunchCard .summary-box > span{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    height:100% !important;
    min-height:8.8px !important;
    margin:0 !important;
    padding:0 !important;
    background:var(--pdf-blue) !important;
    border-bottom:0.2px solid var(--pdf-inner-line) !important;
    box-sizing:border-box !important;
  }

  html body #events#events #lunchCard .summary-box > :not(span){
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:12px !important;
    padding:.45mm .35mm !important;
  }

  html body #events#events #lunchCard .qty-input, html body #events#events #lunchCard .money-input{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:0 !important;
  }

  
  html body #events#events #basicStaffCard .event-info-block, html body #events#events #basicStaffCard .staff-board, html body #events#events #basicStaffCard .print-operation-summary, html body #events#events #noiseCard .noise-item, html body #events#events #lunchCard .lunch-summary{
    border-color:var(--pdf-inner-line) !important;
  }

  html body #events#events #basicStaffCard .mini-grid > .labelcell, html body #events#events #basicStaffCard .mini-grid > .valuecell, html body #events#events #basicStaffCard .weather-label-wrap, html body #events#events #basicStaffCard .weather-main-label, html body #events#events #basicStaffCard .weather-sub-labels > div, html body #events#events #basicStaffCard .weather-values > div, html body #events#events #basicStaffCard .staff-side-label, html body #events#events #basicStaffCard .staff-row, html body #events#events #basicStaffCard .staff-role, html body #events#events #basicStaffCard .staff-count, html body #events#events #basicStaffCard .staff-name, html body #events#events #basicStaffCard .print-operation-summary > div, html body #events#events #basicStaffCard .print-operation-summary small, html body #events#events #noiseCard .noise-head, html body #events#events #noiseCard .noise-item > .field:not(.no-print), html body #events#events #paymentStatusCard th, html body #events#events #paymentStatusCard td, html body #events#events #lunchCard .summary-box, html body #events#events #lunchCard .summary-box > span, html body #events#events #invites th, html body #events#events #invites td, html body #events#events #attendance th, html body #events#events #attendance td, html body #events#events #vehicles th, html body #events#events #vehicles td{
    border-color:var(--pdf-inner-line) !important;
  }

  html body #events#events #invites th, html body #events#events #invites td, html body #events#events #attendance th, html body #events#events #attendance td, html body #events#events #vehicles th, html body #events#events #vehicles td{
    border-bottom-width:0.2px !important;
  }
}

#lunchCard .lunch-summary-table-wrap{
  margin-bottom:12px;
  overflow:hidden;
  border:1px solid #8ca0b7;
  border-radius:8px;
  background:#fff;
}
#lunchCard .lunch-summary-table{
  width:100%;
  border-collapse:collapse;
  table-layout:fixed;
}
#lunchCard .lunch-summary-table colgroup{width:auto}
#lunchCard .lunch-summary-table th, #lunchCard .lunch-summary-table td{
  border-right:1px solid #8ca0b7;
  border-bottom:1px solid #8ca0b7;
  text-align:center;
  vertical-align:middle;
  padding:8px 8px;
}
#lunchCard .lunch-summary-table th:last-child, #lunchCard .lunch-summary-table td:last-child{
  border-right:none;
}
#lunchCard .lunch-summary-table tbody tr:last-child td{
  border-bottom:none;
}
#lunchCard .lunch-summary-table thead th{
  background:#dcebf8;
  font-weight:700;
}
#lunchCard .lunch-summary-table tbody td{
  background:#fff;
}
#lunchCard .lunch-summary-table .vendor-cell{
  text-align:center;
}
#lunchCard .lunch-summary-table input{
  width:100%;
  min-width:0;
  border:none;
  outline:none;
  background:transparent;
  text-align:center;
  box-shadow:none;
}
#lunchCard .lunch-summary-table .qty-input, #lunchCard .lunch-summary-table .money-input{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:0;
  white-space:nowrap;
}
#lunchCard .lunch-summary-table .qty-input input{
  width:4ch;
  min-width:4ch;
  max-width:4ch;
  text-align:right;
}
#lunchCard .lunch-summary-table .money-input input{
  width:10ch;
  min-width:10ch;
  max-width:10ch;
  text-align:right;
}
#lunchCard .lunch-summary-table strong, #lunchCard .lunch-summary-table b{
  font-weight:700;
}

@media print{
  html body #events#events #lunchCard .lunch-summary-table-wrap{
    margin-bottom:0 !important;
    overflow:hidden !important;
    border:0.2px solid #D4DBE4 !important;
    border-radius:0 !important;
    background:#fff !important;
  }

  html body #events#events #lunchCard .lunch-summary-table{
    width:100% !important;
    border-collapse:collapse !important;
    table-layout:fixed !important;
    background:#fff !important;
  }

  html body #events#events #lunchCard .lunch-summary-table th, html body #events#events #lunchCard .lunch-summary-table td{
    border-right:0.2px solid #D4DBE4 !important;
    border-bottom:0.2px solid #D4DBE4 !important;
    text-align:center !important;
    vertical-align:middle !important;
    padding:.55mm .45mm !important;
    background:#fff !important;
  }

  html body #events#events #lunchCard .lunch-summary-table th:last-child, html body #events#events #lunchCard .lunch-summary-table td:last-child{
    border-right:none !important;
  }

  html body #events#events #lunchCard .lunch-summary-table tbody tr:last-child td{
    border-bottom:none !important;
  }

  html body #events#events #lunchCard .lunch-summary-table thead th{
    background:#DCEBF8 !important;
    font-weight:700 !important;
    white-space:nowrap !important;
  }

  html body #events#events #lunchCard .lunch-summary-table tbody td{
    background:#fff !important;
    white-space:nowrap !important;
  }

  html body #events#events #lunchCard .lunch-summary-table input{
    width:100% !important;
    min-width:0 !important;
    border:none !important;
    outline:none !important;
    box-shadow:none !important;
    background:transparent !important;
    text-align:center !important;
    padding:0 !important;
  }

  html body #events#events #lunchCard .lunch-summary-table .qty-input, html body #events#events #lunchCard .lunch-summary-table .money-input{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:0 !important;
    white-space:nowrap !important;
  }

  html body #events#events #lunchCard .lunch-summary-table .qty-input input{
    width:4ch !important;
    min-width:4ch !important;
    max-width:4ch !important;
    text-align:right !important;
  }

  html body #events#events #lunchCard .lunch-summary-table .money-input input{
    width:10ch !important;
    min-width:10ch !important;
    max-width:10ch !important;
    text-align:right !important;
  }
}

@media print{
  
  html body #events#events .card, html body #events#events #paymentStatusCard, html body #events#events #lunchCard, html body #events#events #noiseCard, html body #events#events #inviteCard, html body #events#events #attendanceCard, html body #events#events #vehiclesCard, html body #events#events #otherCard, html body #events#events .payment-block, html body #events#events .payment-table-wrap, html body #events#events .lunch-summary-table-wrap, html body #events#events table, html body #events#events tbody, html body #events#events thead, html body #events#events tr, html body #events#events td, html body #events#events th{
    break-inside:auto !important;
    page-break-inside:auto !important;
  }

  
  html body #events#events .title, html body #events#events thead tr, html body #events#events #basicStaffCard, html body #events#events #basicStaffCard .combined-info, html body #events#events #basicStaffCard .event-info-block, html body #events#events #basicStaffCard .staff-board, html body #events#events #basicStaffCard .print-operation-summary, html body #events#events #lunchCard .lunch-summary-table thead, html body #events#events #lunchCard .lunch-summary-table tbody tr{
    break-inside:avoid !important;
    page-break-inside:avoid !important;
  }

  
  html body #events#events .card{
    break-before:auto !important;
    page-break-before:auto !important;
    break-after:auto !important;
    page-break-after:auto !important;
  }

  
  html body #events#events #otherCard, html body #events#events #otherNotes{
    break-before:auto !important;
    page-break-before:auto !important;
    break-inside:auto !important;
    page-break-inside:auto !important;
  }
}

@media print{
  html, body, .app-shell, .main, .content, #events, #events.event-container{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
  }

  .app-shell, .main, .content{
    display:block !important;
  }

  
  body::before, body::after, .app-shell::before, .app-shell::after, .content::before, .content::after, #events::before, #events::after{
    content:none !important;
    display:none !important;
  }

  
  #events{
    break-after:auto !important;
    page-break-after:auto !important;
    margin-bottom:0 !important;
    padding-bottom:0 !important;
  }
}

@media print{
  
  html body #events#events #noiseCard .noise-item{
    grid-template-columns:19mm minmax(0,.82fr) 12mm minmax(0,.48fr) !important;
  }

  html body #events#events #noiseCard .noise-head{
    min-width:19mm !important;
    padding:.35mm .25mm !important;
    white-space:nowrap !important;
    overflow:visible !important;
    text-overflow:clip !important;
    line-height:1.08 !important;
  }

  html body #events#events #noiseCard .noise-item > .field:nth-child(2){
    min-width:0 !important;
    padding-left:.35mm !important;
    padding-right:.35mm !important;
    gap:.35mm !important;
  }

  html body #events#events #noiseCard .noise-item > .field:nth-child(2) label{
    flex:0 0 auto !important;
    white-space:nowrap !important;
  }

  html body #events#events #noiseCard .noise-item > .field:nth-child(2) input{
    min-width:0 !important;
    width:100% !important;
    padding-left:.25mm !important;
    padding-right:.25mm !important;
  }

  
  html body #events#events #inviteCard > div[style*="overflow"], html body #events#events #attendanceCard > div[style*="overflow"], html body #events#events #vehiclesCard > div[style*="overflow"]{
    display:block !important;
    width:100% !important;
    min-width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
    box-sizing:border-box !important;
  }

  html body #events#events #invites, html body #events#events #attendance, html body #events#events #vehicles{
    display:table !important;
    width:100% !important;
    min-width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    border-spacing:0 !important;
    border-collapse:collapse !important;
    table-layout:fixed !important;
    box-sizing:border-box !important;
  }

  
  html body #events#events #invites col.list-delete, html body #events#events #attendance col.list-delete, html body #events#events #vehicles col.list-delete{
    width:0 !important;
    min-width:0 !important;
    max-width:0 !important;
  }

  
  html body #events#events #invites th, html body #events#events #invites td, html body #events#events #attendance th, html body #events#events #attendance td, html body #events#events #vehicles th, html body #events#events #vehicles td{
    box-sizing:border-box !important;
  }

  html body #events#events #invites tr, html body #events#events #attendance tr, html body #events#events #vehicles tr{
    width:100% !important;
  }
}

@media print{
  
  html body #events#events #inviteCard > div[style*="overflow"], html body #events#events #attendanceCard > div[style*="overflow"], html body #events#events #vehiclesCard > div[style*="overflow"]{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    box-sizing:border-box !important;
    overflow:visible !important;
  }

  html body #events#events #invites, html body #events#events #attendance, html body #events#events #vehicles{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    table-layout:fixed !important;
    border-collapse:collapse !important;
    margin:0 !important;
  }

  
  html body #events#events #invites col, html body #events#events #attendance col, html body #events#events #vehicles col{
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
  }

  
  html body #events#events #invites col:nth-child(1){width:5% !important;}
  html body #events#events #invites col:nth-child(2){width:17% !important;}
  html body #events#events #invites col:nth-child(3){width:16% !important;}
  html body #events#events #invites col:nth-child(4){width:18% !important;}
  html body #events#events #invites col:nth-child(5){width:13% !important;}
  html body #events#events #invites col:nth-child(6){width:13% !important;}
  html body #events#events #invites col:nth-child(7){width:18% !important;}
  html body #events#events #invites col:nth-child(8){width:0 !important;}
  html body #events#events #invites col:nth-child(9){width:0 !important;}

  
  html body #events#events #attendance col:nth-child(1){width:5% !important;}
  html body #events#events #attendance col:nth-child(2){width:16% !important;}
  html body #events#events #attendance col:nth-child(3){width:15% !important;}
  html body #events#events #attendance col:nth-child(4){width:15% !important;}
  html body #events#events #attendance col:nth-child(5){width:17% !important;}
  html body #events#events #attendance col:nth-child(6){width:12% !important;}
  html body #events#events #attendance col:nth-child(7){width:20% !important;}
  html body #events#events #attendance col:nth-child(8){width:0 !important;}

  
  html body #events#events #vehicles col:nth-child(1){width:5% !important;}
  html body #events#events #vehicles col:nth-child(2){width:24% !important;}
  html body #events#events #vehicles col:nth-child(3){width:22% !important;}
  html body #events#events #vehicles col:nth-child(4){width:15% !important;}
  html body #events#events #vehicles col:nth-child(5){width:14% !important;}
  html body #events#events #vehicles col:nth-child(6){width:20% !important;}
  html body #events#events #vehicles col:nth-child(7){width:0 !important;}

  
  html body #events#events #invites th.no-print, html body #events#events #invites td.no-print, html body #events#events #attendance th.no-print, html body #events#events #attendance td.no-print, html body #events#events #vehicles th.no-print, html body #events#events #vehicles td.no-print{
    display:none !important;
    width:0 !important;
    min-width:0 !important;
    max-width:0 !important;
    padding:0 !important;
    border:none !important;
  }

  
  html body #events#events #invites th, html body #events#events #invites td, html body #events#events #attendance th, html body #events#events #attendance td, html body #events#events #vehicles th, html body #events#events #vehicles td{
    border-left:none !important;
    border-right:none !important;
    border-top:none !important;
    border-bottom:0.2px solid #D4DBE4 !important;
  }
}

#events .report-page-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:0 0 16px 0;
  padding:0;
}
#events .report-page-title{
  color:#173A63;
  font-size:26px;
  font-weight:800;
  line-height:1.1;
  text-align:left;
  letter-spacing:-0.02em;
}
#events .report-page-logo-wrap{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:flex-end;
}
#events .report-page-logo{
  display:block;
  height:54px;
  width:auto;
  object-fit:contain;
}

@media print{
  html body #events#events .report-page-header{
    display:flex !important;
    align-items:flex-start !important;
    justify-content:space-between !important;
    gap:4mm !important;
    margin:0 0 2.2mm 0 !important;
    padding:0 !important;
  }

  html body #events#events .report-page-title{
    color:#173A63 !important;
    font-size:9.2px !important;
    font-weight:800 !important;
    line-height:1.1 !important;
    text-align:left !important;
    letter-spacing:0 !important;
    white-space:nowrap !important;
  }

  html body #events#events .report-page-logo-wrap{
    flex:0 0 auto !important;
    display:flex !important;
    align-items:flex-start !important;
    justify-content:flex-end !important;
  }

  html body #events#events .report-page-logo{
    display:block !important;
    height:8.2mm !important;
    width:auto !important;
    max-width:46mm !important;
    object-fit:contain !important;
  }
}

#events .report-page-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin:8px 0 26px 0;
  padding:8px 0 12px 0;
}
#events .report-page-title{
  color:#173A63;
  font-size:34px;
  font-weight:800;
  line-height:1.05;
  text-align:left;
  letter-spacing:-0.02em;
}
#events .report-page-logo{
  display:block;
  height:68px;
  width:auto;
  max-width:320px;
  object-fit:contain;
}

@media print{
  html body #events#events .report-page-header{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:5mm !important;
    margin:1.2mm 0 3.8mm 0 !important;
    padding:1.6mm 0 1.8mm 0 !important;
  }

  html body #events#events .report-page-title{
    color:#173A63 !important;
    font-size:15.8px !important;
    font-weight:800 !important;
    line-height:1.05 !important;
    text-align:left !important;
    letter-spacing:0 !important;
    white-space:nowrap !important;
  }

  html body #events#events .report-page-logo-wrap{
    flex:0 0 auto !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
  }

  html body #events#events .report-page-logo{
    display:block !important;
    height:10.5mm !important;
    width:auto !important;
    max-width:54mm !important;
    object-fit:contain !important;
  }

  
  html body #events#events .event-content{
    margin-top:0 !important;
  }
}

#events .report-page-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  min-height:88px;
  margin:10px 0 28px 0;
  padding:14px 0 14px 0;
}
#events .report-page-title{
  color:#173A63;
  font-size:42px;
  font-weight:800;
  line-height:1.02;
  text-align:left;
  letter-spacing:-0.02em;
}
#events .report-page-logo{
  display:block;
  height:78px;
  width:auto;
  max-width:360px;
  object-fit:contain;
}

@media print{
  html body #events#events .report-page-header{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:6mm !important;
    min-height:14mm !important;
    margin:1.5mm 0 4.4mm 0 !important;
    padding:2.2mm 0 2.2mm 0 !important;
  }

  html body #events#events .report-page-title{
    color:#173A63 !important;
    font-size:19px !important;
    font-weight:800 !important;
    line-height:1.0 !important;
    text-align:left !important;
    letter-spacing:0 !important;
    white-space:nowrap !important;
  }

  html body #events#events .report-page-logo-wrap{
    flex:0 0 auto !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
  }

  html body #events#events .report-page-logo{
    display:block !important;
    height:12mm !important;
    width:auto !important;
    max-width:58mm !important;
    object-fit:contain !important;
  }
}

#events .report-page-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-height:72px;
  margin:4px 0 14px 0;   
  padding:6px 0 4px 0;
}
#events .report-page-title{
  color:#173A63;
  font-size:42px;
  font-weight:800;
  line-height:1.02;
  text-align:left;
  letter-spacing:-0.02em;
}
#events .report-page-logo{
  display:block;
  height:50px;           
  width:auto;
  max-width:250px;
  object-fit:contain;
}

@media print{
  html body #events#events .report-page-header{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:4.2mm !important;
    min-height:9.5mm !important;
    margin:.5mm 0 1.4mm 0 !important;   
    padding:.4mm 0 .2mm 0 !important;
  }

  html body #events#events .report-page-title{
    color:#173A63 !important;
    font-size:19px !important;
    font-weight:800 !important;
    line-height:1.0 !important;
    text-align:left !important;
    letter-spacing:0 !important;
    white-space:nowrap !important;
  }

  html body #events#events .report-page-logo-wrap{
    flex:0 0 auto !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
  }

  html body #events#events .report-page-logo{
    display:block !important;
    height:7.4mm !important;   
    width:auto !important;
    max-width:42mm !important;
    object-fit:contain !important;
  }
}

@media print{
  
  html body #events#events .card > .title{
    font-size:7.2px !important;
    font-weight:700 !important;
    line-height:1.15 !important;
  }

  
  html body #events#events .card td, html body #events#events .card th, html body #events#events .card label, html body #events#events .card input, html body #events#events .card select, html body #events#events .card textarea, html body #events#events .card small, html body #events#events .card strong, html body #events#events .card span, html body #events#events .card b, html body #events#events .card .labelcell, html body #events#events .card .valuecell, html body #events#events .card .staff-role, html body #events#events .card .staff-count, html body #events#events .card .staff-name, html body #events#events .card .summary-box, html body #events#events .card .field{
    font-size:5.6px !important;
    line-height:1.15 !important;
  }

  
  html body #events#events .report-page-title{
    font-size:19px !important;
  }

  
  html body #events#events .report-page-logo{
    height:7.4mm !important;
    width:auto !important;
    max-width:42mm !important;
    object-fit:contain !important;
  }
}

@media print{
  
  html body #events#events .card > .title, html body #events#events .card > .title *{
    font-size:7.2px !important;
    font-weight:700 !important;
    line-height:1.15 !important;
  }

  
  html body #events#events .card table, html body #events#events .card thead, html body #events#events .card tbody, html body #events#events .card tr, html body #events#events .card th, html body #events#events .card td, html body #events#events .card label, html body #events#events .card input, html body #events#events .card select, html body #events#events .card textarea, html body #events#events .card small, html body #events#events .card strong, html body #events#events .card span, html body #events#events .card b, html body #events#events .card p, html body #events#events .card div:not(.title):not(.report-page-header):not(.report-page-title):not(.report-page-logo-wrap){
    font-size:5.6px !important;
    line-height:1.12 !important;
  }

  
  html body #events#events .report-page-title{
    font-size:19px !important;
    line-height:1 !important;
  }

  
  html body #events#events #basicStaffCard .combined-info{
    grid-template-columns:3fr 5fr 2fr !important;
    grid-template-rows:27mm !important;
    gap:1.6mm !important;
  }

  html body #events#events #basicStaffCard .event-info-block{
    grid-column:1 !important;
    grid-row:1 !important;
  }

  html body #events#events #basicStaffCard .staff-board{
    grid-column:2 !important;
    grid-row:1 !important;
  }

  html body #events#events #basicStaffCard .print-operation-summary{
    grid-column:3 !important;
    grid-row:1 !important;
  }

  
  html body #events#events #basicStaffCard .staff-board{
    grid-template-columns:11mm minmax(0,1fr) !important;
  }

  html body #events#events #basicStaffCard .staff-row{
    grid-template-columns:20% 9% 71% !important;
  }

  html body #events#events #basicStaffCard .staff-names{
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  }

  
  html body #events#events #basicStaffCard .print-operation-summary > div{
    grid-template-columns:46% 54% !important;
  }

  html body #events#events #basicStaffCard .print-operation-summary small, html body #events#events #basicStaffCard .print-operation-summary strong{
    white-space:nowrap !important;
  }
}

@media print{
  :root{
    --final-line:#D4DBE4;
  }

  
  html body #events#events .card th, html body #events#events .card td, html body #events#events .card input, html body #events#events .card select, html body #events#events .card textarea, html body #events#events .card label, html body #events#events .card span, html body #events#events .card strong, html body #events#events .card b, html body #events#events .card small, html body #events#events .card p, html body #events#events .card .labelcell, html body #events#events .card .valuecell, html body #events#events .card .staff-side-label, html body #events#events .card .staff-role, html body #events#events .card .staff-count, html body #events#events .card .staff-name, html body #events#events .card .staff-count-num, html body #events#events .card .noise-head, html body #events#events .card .field, html body #events#events .card .payment-total, html body #events#events .card .payment-total *, html body #events#events .card .qty-input, html body #events#events .card .money-input{
    font-size:5px !important;
    line-height:1.05 !important;
  }

  
  html body #events#events .card > .title, html body #events#events .card > .title *{
    font-size:7.2px !important;
    line-height:1.12 !important;
    font-weight:700 !important;
  }

  
  html body #events#events .report-page-title{
    font-size:19px !important;
    line-height:1 !important;
  }

  
  html body #events#events .card, html body #events#events #basicStaffCard .event-info-block, html body #events#events #basicStaffCard .staff-board, html body #events#events #basicStaffCard .print-operation-summary, html body #events#events #paymentStatusCard .payment-block, html body #events#events #paymentStatusCard table, html body #events#events #paymentStatusCard th, html body #events#events #paymentStatusCard td, html body #events#events #lunchCard .lunch-summary-table-wrap, html body #events#events #lunchCard .lunch-summary-table, html body #events#events #lunchCard .lunch-summary-table th, html body #events#events #lunchCard .lunch-summary-table td, html body #events#events #noiseCard .noise-item, html body #events#events #noiseCard .noise-head, html body #events#events #noiseCard .noise-item > .field, html body #events#events #invites, html body #events#events #invites th, html body #events#events #invites td, html body #events#events #attendance, html body #events#events #attendance th, html body #events#events #attendance td, html body #events#events #vehicles, html body #events#events #vehicles th, html body #events#events #vehicles td, html body #events#events #otherCard, html body #events#events #otherNotes{
    border-color:var(--final-line) !important;
    border-width:0.2px !important;
  }

  
  html body #events#events #basicStaffCard .mini-grid > .labelcell, html body #events#events #basicStaffCard .mini-grid > .valuecell, html body #events#events #basicStaffCard .weather-main-label, html body #events#events #basicStaffCard .weather-sub-labels > div, html body #events#events #basicStaffCard .weather-values > div, html body #events#events #basicStaffCard .staff-row, html body #events#events #basicStaffCard .print-operation-summary > div{
    border-color:var(--final-line) !important;
    border-width:0.2px !important;
  }

  
  html body #events#events #invites th, html body #events#events #invites td, html body #events#events #attendance th, html body #events#events #attendance td, html body #events#events #vehicles th, html body #events#events #vehicles td{
    border-bottom-width:0.2px !important;
    border-bottom-color:var(--final-line) !important;
  }

  
  html body #events#events #paymentStatusCard .payment-table-wrap, html body #events#events #paymentStatusCard .license-table-wrap{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
  }

  html body #events#events #paymentStatusCard .payment-table, html body #events#events #paymentStatusCard .license-payment-table{
    min-width:0 !important;
    width:100% !important;
    table-layout:fixed !important;
    border-collapse:collapse !important;
  }

  html body #events#events #paymentStatusCard .payment-table th, html body #events#events #paymentStatusCard .payment-table td, html body #events#events #paymentStatusCard .license-payment-table th, html body #events#events #paymentStatusCard .license-payment-table td{
    height:auto !important;
    min-height:0 !important;
    padding:.45mm .45mm !important;
    vertical-align:middle !important;
  }

  
  html body #events#events #membershipPayments tbody:empty, html body #events#events #licensePayments tbody:empty{
    display:none !important;
  }

  
  html body #events#events #paymentStatusCard .payment-total{
    margin-top:1.2mm !important;
    padding-top:.3mm !important;
  }
}

#members{max-width:1500px}
.member-app-top{margin-bottom:14px}
.member-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}
.member-stat{background:white;border:1px solid #d7e0ec;border-radius:12px;padding:14px 16px;box-shadow:0 4px 14px rgba(32,53,84,.05)}
.member-stat span{display:block;color:#718096;font-size:12px;font-weight:700;margin-bottom:5px}
.member-stat strong{font-size:25px;color:#1f2f46}
.member-workspace{display:grid;grid-template-columns:minmax(300px,34%) minmax(0,66%);gap:14px;align-items:start}
.member-list-panel, .member-detail-panel{background:#fff;border:1px solid #d7e0ec;border-radius:13px;box-shadow:0 5px 18px rgba(32,53,84,.05)}
.member-list-panel{overflow:hidden;position:sticky;top:14px}
.member-list-toolbar{padding:13px;border-bottom:1px solid #e1e8f1}
.member-search-wrap{height:40px;border:1px solid #c9d5e4;border-radius:9px;display:flex;align-items:center;padding:0 10px;background:#f9fbfd}
.member-search-icon{font-size:19px;color:#73839a;margin-right:7px;line-height:1}
.member-search-wrap input{border:0;outline:0;background:transparent;width:100%;font-size:13px}
.member-filter-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}
.member-filter-row select{height:35px;border:1px solid #cbd7e5;border-radius:8px;background:white;padding:0 9px;color:#42526a}
.member-list-head{display:grid;grid-template-columns:1.55fr 1.15fr .6fr .8fr;align-items:center;gap:5px;padding:8px 12px;background:#edf4fb;color:#65748a;font-size:11px;font-weight:800;text-align:center}
.member-list-head span:first-child{text-align:left}
.member-list{max-height:640px;overflow:auto}
.member-row{width:100%;border:0;border-bottom:1px solid #e6ecf3;background:white;display:grid;grid-template-columns:1.55fr 1.15fr .6fr .8fr;gap:5px;align-items:center;padding:12px;text-align:center;cursor:pointer;transition:.15s}
.member-row:hover{background:#f7fafe}
.member-row.active{background:#edf5ff;box-shadow:inset 3px 0 #244d7a}
.member-name-cell{text-align:left;min-width:0}
.member-name-cell b{display:block;color:#1e2d43;font-size:14px}
.member-name-cell small{display:block;color:#8a97a9;font-size:10px;margin-top:3px}
.membership-chip, .status-chip{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;font-size:10px;font-weight:800;border-radius:999px;padding:5px 7px}
.membership-chip.gp{background:#e7f1ff;color:#285f9b}
.membership-chip.race{background:#eeeafe;color:#6352a0}
.membership-chip.sports{background:#eaf7f1;color:#397b60}
.status-chip.normal{background:#e9f7ef;color:#35815a}
.status-chip.warning{background:#fff5df;color:#9a6b15}
.status-chip.renew-reserved{background:#e8f1ff;color:#1f63c6;border:1px solid #bfd5f7}
.status-chip.hold{background:#eef0f5;color:#5c6574}
.status-chip.expired{background:#fbe9e9;color:#a75252}
.member-remain b{font-size:16px;color:#24344b}
.member-remain small{font-size:9px;color:#8a96a7}

.member-detail-panel{padding:16px}
.member-profile-head{display:flex;justify-content:space-between;gap:16px;align-items:center;padding-bottom:14px;border-bottom:1px solid #e4eaf2}
.member-profile-identity{display:flex;align-items:center;gap:12px}
.member-avatar{width:46px;height:46px;border-radius:50%;background:#173a63;color:white;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800}
.member-profile-name-line{display:flex;align-items:center;gap:8px}
.member-profile-name-line h2{font-size:23px;margin:0;color:#1e2d42}
.member-profile-meta{display:flex;align-items:center;gap:7px;color:#8793a4;font-size:11px;margin-top:4px}
.member-profile-actions{display:flex;gap:7px}
.member-summary-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:9px;margin:14px 0}
.member-summary-card{border:1px solid #dce4ed;border-radius:10px;padding:11px 12px;background:#fbfdff}
.member-summary-card>span{display:block;color:#748196;font-size:10px;font-weight:800;margin-bottom:7px}
.member-summary-card>strong{display:flex;align-items:baseline;gap:3px;color:#173a63;font-size:18px}
.member-summary-card>strong em{font-style:normal;font-size:23px}
.member-summary-card>strong small{font-size:10px;color:#65758a}
.member-summary-card>small{display:block;margin-top:5px;color:#929cab;font-size:9px}
.member-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.member-detail-card{border:1px solid #dce4ed;border-radius:11px;padding:13px;background:white}
.member-card-wide{grid-column:1/-1}
.member-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.member-card-head h3{font-size:14px;color:#26364d;margin:0}
.mini-link{border:0;background:transparent;color:#376c9f;font-size:10px;font-weight:800;cursor:pointer}
.small-btn{padding:6px 9px;font-size:10px}
.member-info-table{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #e2e8ef;border-left:1px solid #e2e8ef}
.member-info-table>div{display:grid;grid-template-columns:38% 62%;min-height:37px;border-right:1px solid #e2e8ef;border-bottom:1px solid #e2e8ef;align-items:center}
.member-info-table>div.wide{grid-column:1/-1;grid-template-columns:19% 81%}
.member-info-table span{height:100%;background:#f2f6fa;color:#6d7b8e;display:flex;align-items:center;padding:0 9px;font-size:10px;font-weight:800}
.member-info-table b{font-size:11px;color:#2a394e;padding:0 10px;font-weight:600}
.vehicle-card-list{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.vehicle-mini-card{border:1px solid #d9e2ec;border-radius:9px;padding:10px 11px;background:#fafcff}
.vehicle-mini-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.vehicle-mini-top b{font-size:12px;color:#27374c}
.primary-car{background:#e8f2ff;color:#31699c;border-radius:999px;font-size:9px;font-weight:800;padding:4px 7px}
.vehicle-mini-meta{display:flex;gap:10px;margin-top:7px;color:#778498;font-size:10px;flex-wrap:wrap}
.vehicle-mini-meta span+span:before{content:"·";margin-right:10px;color:#b0bac6}
.vehicle-mini-actions{display:flex;align-items:center;gap:5px;margin-left:auto}
.vehicle-mini-action{border:1px solid #cbd6e3;background:#fff;color:#4d627a;border-radius:6px;padding:4px 7px;font-size:9px;font-weight:800;cursor:pointer;line-height:1.2}
.vehicle-mini-action:hover{background:#f2f7fc;border-color:#aebdcd}
.vehicle-mini-action.delete{color:#b23a48;border-color:#e4c3c8}
.vehicle-mini-action.delete:hover{background:#fff5f6;border-color:#d79aa3}
.vehicle-mini-memo{margin-top:7px;color:#8a96a6;font-size:9px;line-height:1.4;word-break:break-word}
.member-usage-list{border-top:1px solid #e5eaf0}
.usage-row{display:grid;grid-template-columns:80px 48px 60px minmax(0,1fr) 70px;gap:8px;align-items:center;min-height:38px;border-bottom:1px solid #e7ecf2;font-size:10px}
.usage-date{color:#78869a}
.usage-tag{display:inline-flex;justify-content:center;font-size:9px;font-weight:800;border-radius:999px;padding:4px 6px}
.usage-tag.drive{background:#e5f2ff;color:#376fa7}
.usage-tag.invite{background:#eeeafd;color:#6a56a2}
.usage-tag.attendance{background:#edf2f5;color:#687381}
.usage-row b{font-size:10px;color:#33445b}
.usage-row span:nth-child(4){color:#617086}
.usage-row strong{text-align:right;color:#395b80;font-size:10px}

.member-modal{display:none;position:fixed;z-index:1000;inset:0;background:rgba(17,29,45,.45);align-items:center;justify-content:center;padding:18px}
.member-modal.open{display:flex}
.member-modal-box{width:min(620px,95vw);background:white;border-radius:14px;box-shadow:0 18px 50px rgba(0,0,0,.25);overflow:hidden}
.member-modal-head{display:flex;align-items:center;justify-content:space-between;padding:15px 17px;border-bottom:1px solid #e2e8ef}
.member-modal-head h3{margin:0;color:#223248}
.member-modal-head button{border:0;background:transparent;font-size:24px;color:#6f7d90;cursor:pointer}
.member-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:17px}
.member-modal-grid label{font-size:11px;color:#59687c;font-weight:800}
.member-modal-grid input, .member-modal-grid select{width:100%;height:39px;margin-top:6px;border:1px solid #cbd6e3;border-radius:8px;padding:0 9px;background:white}
.member-modal-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 17px 16px}

@media(max-width:1050px){
 .member-workspace{grid-template-columns:1fr}
 .member-list-panel{position:static}
 .member-list{max-height:330px}
}
@media(max-width:720px){
 .member-stats{grid-template-columns:1fr 1fr}
 .member-detail-grid{grid-template-columns:1fr}
 .member-card-wide{grid-column:auto}
 .member-summary-grid{grid-template-columns:1fr 1fr}
 .member-profile-head{align-items:flex-start;flex-direction:column}
 .member-info-table{grid-template-columns:1fr}
 .member-info-table>div.wide{grid-column:auto;grid-template-columns:38% 62%}
 .vehicle-card-list{grid-template-columns:1fr}
 .usage-row{grid-template-columns:74px 46px 54px 1fr}
 .usage-row strong{display:none}
}

.member-renew-summary{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:8px;
 padding:14px 17px 0;
}
.member-renew-summary>div{
 border:1px solid #dce4ed;
 border-radius:9px;
 padding:9px 10px;
 background:#f9fbfd;
}
.member-renew-summary span{
 display:block;
 color:#7a8798;
 font-size:9px;
 font-weight:800;
 margin-bottom:4px;
}
.member-renew-summary b{
 color:#26384f;
 font-size:12px;
}
#memberVehicleModal .member-renew-summary{
 grid-template-columns:1fr 1fr;
}
@media(max-width:720px){
 .member-renew-summary, #memberVehicleModal .member-renew-summary{grid-template-columns:1fr}
}

.holding-btn{
 border:1px solid #c9d5e4;
 background:#f7fafc;
 color:#365a7b;
 border-radius:7px;
 padding:6px 9px;
 font-size:10px;
 font-weight:800;
 cursor:pointer;
}
.holding-btn.active{
 background:#fff4dd;
 border-color:#e3c27c;
 color:#8a6217;
}
.holding-notice{
 margin-bottom:9px;
 border:1px solid #ead8ad;
 background:#fff9ec;
 color:#76591d;
 border-radius:8px;
 padding:8px 10px;
 font-size:10px;
 line-height:1.35;
}

.usage-tag.membership{background:#e8eef8;color:#455f87}
.renew-conversion-note{
 grid-column:1/-1;
 border:1px solid #d8e5f4;
 background:#f4f8fd;
 color:#4d6684;
 border-radius:8px;
 padding:8px 10px;
 font-size:10px;
 line-height:1.35;
}
.member-row.saved-member{background:#fbfdff}

.membership-action-buttons{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.refund-btn{
 border:1px solid #e3bcbc;
 background:#fff7f7;
 color:#a24f4f;
 border-radius:7px;
 padding:6px 9px;
 font-size:10px;
 font-weight:800;
 cursor:pointer;
}
.btn.danger{
 background:#b95f5f;
 color:#fff;
 border-color:#b95f5f;
}
.refund-warning{
 margin:14px 17px 0;
 border:1px solid #ebcaca;
 background:#fff7f7;
 color:#8f4f4f;
 border-radius:9px;
 padding:9px 11px;
 font-size:10px;
 line-height:1.4;
}
.status-chip.refund{
 background:#fbeaea;
 color:#a45454;
}

#dashboard{max-width:1500px}
.dashboard-app-top{margin-bottom:14px}
.dashboard-top-actions{display:flex;gap:8px}
.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}
.dashboard-kpi{background:#fff;border:1px solid #d7e0ec;border-radius:12px;padding:15px 16px;box-shadow:0 4px 14px rgba(32,53,84,.05)}
.dashboard-kpi span{display:block;color:#718096;font-size:11px;font-weight:800;margin-bottom:6px}
.dashboard-kpi strong{display:block;font-size:27px;line-height:1;color:#173a63}
.dashboard-kpi small{display:block;margin-top:7px;color:#95a0af;font-size:9px}
.dashboard-kpi.warning strong{color:#a67521}
.dashboard-kpi.expired strong{color:#9a5656}
.dashboard-main-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);gap:14px;align-items:start}
.dashboard-column{display:flex;flex-direction:column;gap:14px}
.dashboard-card{background:#fff;border:1px solid #d7e0ec;border-radius:13px;padding:15px;box-shadow:0 5px 18px rgba(32,53,84,.05)}
.dashboard-card-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}
.dashboard-card-head h3{margin:0;color:#26364d;font-size:14px}
.dashboard-card-head small{display:block;margin-top:3px;color:#8b97a7;font-size:9px}
.today-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.today-metrics>div{border:1px solid #dfe6ee;background:#fafcff;border-radius:10px;padding:11px;text-align:center}
.today-metrics span{display:block;color:#78859a;font-size:9px;font-weight:800}
.today-metrics strong{font-size:23px;color:#173a63;margin-top:5px;display:inline-block}
.today-metrics small{font-size:9px;color:#79879a;margin-left:2px}
.today-event-strip{display:grid;grid-template-columns:1.1fr .75fr 1.15fr;margin-top:10px;border:1px solid #e0e7ef;border-radius:9px;overflow:hidden}
.today-event-strip>div{display:flex;align-items:center;justify-content:center;gap:7px;min-height:38px;border-right:1px solid #e0e7ef}
.today-event-strip>div:last-child{border-right:0}
.today-event-strip span{font-size:9px;color:#8995a5}
.today-event-strip b{font-size:10px;color:#33465d}
.dashboard-list{border-top:1px solid #e4eaf1}
.dashboard-list button{width:100%;border:0;border-bottom:1px solid #e6ebf1;background:#fff;display:grid;grid-template-columns:minmax(0,1fr) 92px 72px;align-items:center;gap:10px;padding:10px 4px;cursor:pointer}
.dashboard-list button:hover{background:#f8fbfe}
.dashboard-list-main{text-align:left}
.dashboard-list-main b{display:block;font-size:11px;color:#2b3a4f}
.dashboard-list-main small{display:block;margin-top:2px;font-size:9px;color:#8994a3}
.dashboard-list-date{text-align:right;font-size:9px;color:#6f7d90}
.dashboard-empty{padding:13px 4px;color:#8b97a6;font-size:10px}
.membership-overview{display:flex;flex-direction:column;gap:13px;padding:4px 0}
.membership-overview-row{display:grid;grid-template-columns:86px minmax(0,1fr) 28px;align-items:center;gap:10px}
.membership-overview-row b{text-align:right;color:#33475e;font-size:12px}
.membership-bar{height:8px;border-radius:999px;background:#edf2f7;overflow:hidden}
.membership-bar i{display:block;height:100%;border-radius:999px;background:#7c9fc1;width:0}
.dashboard-timeline{border-top:1px solid #e6ebf1}
.dashboard-timeline>div{display:grid;grid-template-columns:12px minmax(0,1fr) 40px;gap:8px;align-items:center;min-height:45px;border-bottom:1px solid #e8edf2}
.timeline-dot{width:7px;height:7px;border-radius:50%;background:#7a9bbc}
.dashboard-timeline b{display:block;font-size:10px;color:#304156}
.dashboard-timeline small{display:block;margin-top:2px;font-size:9px;color:#8591a0}
.dashboard-timeline time{text-align:right;font-size:9px;color:#8b97a6}
.quick-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.quick-actions-grid button{border:1px solid #d9e3ed;border-radius:10px;background:#fafcff;padding:12px;text-align:left;cursor:pointer}
.quick-actions-grid button:hover{background:#f2f7fc}
.quick-actions-grid b{display:block;color:#31516f;font-size:11px}
.quick-actions-grid small{display:block;margin-top:4px;color:#8a96a5;font-size:9px}
@media(max-width:1050px){.dashboard-main-grid{grid-template-columns:1fr}}
@media(max-width:720px){
 .dashboard-kpi-grid{grid-template-columns:1fr 1fr}
 .today-metrics{grid-template-columns:1fr 1fr}
 .today-event-strip{grid-template-columns:1fr}
 .today-event-strip>div{border-right:0;border-bottom:1px solid #e0e7ef}
 .today-event-strip>div:last-child{border-bottom:0}
 .dashboard-top-actions{display:none}
}

#stats{max-width:1500px}
.stats-app-top{margin-bottom:14px}
.stats-period{display:flex;gap:8px}
.stats-period select{height:36px;border:1px solid #cad6e4;border-radius:8px;background:#fff;padding:0 10px;color:#44556b}
.stats-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:12px}
.stats-kpi, .money-kpi{background:#fff;border:1px solid #d7e0ec;border-radius:12px;padding:14px 16px;box-shadow:0 4px 14px rgba(32,53,84,.05)}
.stats-kpi span, .money-kpi span{display:block;color:#748196;font-size:10px;font-weight:800;margin-bottom:6px}
.stats-kpi strong{font-size:25px;color:#173a63}
.stats-kpi small{font-size:9px;color:#8793a4;margin-left:3px}
.stats-money-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-bottom:14px}
.money-kpi strong{display:block;font-size:22px;color:#173a63}
.money-kpi small{display:block;margin-top:5px;font-size:9px;color:#8b97a6}
.money-kpi.refund strong{color:#a45b5b}
.money-kpi.net{background:#f7fbff}
.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.stats-card{background:#fff;border:1px solid #d7e0ec;border-radius:13px;padding:15px;box-shadow:0 5px 18px rgba(32,53,84,.05)}
.stats-wide{grid-column:1/-1}
.stats-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.stats-card-head h3{margin:0;font-size:14px;color:#26364d}
.stats-card-head small{font-size:9px;color:#8d98a7}
.mini-bar-chart{display:flex;flex-direction:column;gap:9px}
.mini-chart-row{display:grid;grid-template-columns:34px 1fr 34px;gap:9px;align-items:center}
.mini-chart-row span, .mini-chart-row b{font-size:9px;color:#65758a}
.mini-chart-row b{text-align:right}
.mini-chart-row>div{height:8px;background:#edf2f7;border-radius:999px;overflow:hidden}
.mini-chart-row i{display:block;height:100%;background:#7d9fc0;border-radius:999px}
.stats-mini-table{margin-top:13px;border-top:1px solid #e4eaf1}
.stats-mini-table>div{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;min-height:34px;align-items:center;border-bottom:1px solid #e6ecf2}
.stats-mini-table span, .stats-mini-table b{font-size:9px;text-align:center;color:#43536a}
.stats-mini-head{background:#f4f7fa;font-weight:800}
.stats-membership-overview{margin-bottom:13px}
.stats-status-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}
.stats-status-grid>div{border:1px solid #e0e6ed;border-radius:8px;padding:9px;text-align:center;background:#fbfdff}
.stats-status-grid span{display:block;font-size:9px;color:#7b8798}
.stats-status-grid b{display:block;margin-top:3px;font-size:14px;color:#33475f}
.payment-breakdown{border-top:1px solid #e5eaf0}
.payment-breakdown>div{display:flex;justify-content:space-between;align-items:center;min-height:38px;border-bottom:1px solid #e7edf2}
.payment-breakdown span{font-size:10px;color:#66758a}
.payment-breakdown b{font-size:11px;color:#2f425b}
.payment-breakdown .refund-line b{color:#a45b5b}
.stats-recent-list{border-top:1px solid #e5eaf0}
.stats-recent-list>div{display:grid;grid-template-columns:78px minmax(0,1fr) 90px;gap:8px;align-items:center;min-height:39px;border-bottom:1px solid #e8edf2}
.stats-recent-list time{font-size:9px;color:#8894a3}
.stats-recent-list b{font-size:10px;color:#31435b}
.stats-recent-list strong{text-align:right;font-size:10px;color:#315f8d}
.stats-member-table{border-top:1px solid #e4eaf1}
.stats-member-head, .stats-member-row{display:grid;grid-template-columns:1.4fr 1.2fr .7fr .7fr .8fr;align-items:center;min-height:36px;border-bottom:1px solid #e7ecf2}
.stats-member-head{background:#f4f7fa;font-weight:800}
.stats-member-head span, .stats-member-row span, .stats-member-row b{font-size:9px;text-align:center;color:#46566c}
.stats-member-row span:first-child{text-align:left;padding-left:8px}
.stats-vehicle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.stats-vehicle-card{border:1px solid #dce4ed;border-radius:9px;padding:10px;background:#fbfdff}
.stats-vehicle-card b{display:block;font-size:11px;color:#2e4057}
.stats-vehicle-card span{display:block;margin-top:4px;font-size:9px;color:#7b8797}
@media(max-width:1050px){.stats-grid{grid-template-columns:1fr}.stats-wide{grid-column:auto}}
@media(max-width:760px){
 .stats-kpi-grid{grid-template-columns:1fr 1fr}
 .stats-money-grid{grid-template-columns:1fr}
 .stats-status-grid{grid-template-columns:1fr 1fr}
 .stats-vehicle-grid{grid-template-columns:1fr}
}

#memberUsage{max-width:1500px}
.member-usage-page-top{margin-bottom:14px}
.member-usage-page-filters{display:flex;gap:8px}
.member-usage-page-filters input, .member-usage-page-filters select{
 height:36px;
 border:1px solid #cad6e4;
 border-radius:8px;
 background:#fff;
 padding:0 10px;
 color:#44556b;
 font-size:10px;
}
.member-usage-page-filters input{width:170px}
.member-usage-page-card{
 background:#fff;
 border:1px solid #d7e0ec;
 border-radius:13px;
 padding:0;
 overflow:hidden;
 box-shadow:0 5px 18px rgba(32,53,84,.05);
}
.member-usage-page-head, .member-usage-page-row{
 display:grid;
 grid-template-columns:1.1fr 1.05fr .72fr 1.15fr .72fr 1.05fr 1.1fr .8fr;
 align-items:center;
 min-height:41px;
 border-bottom:1px solid #e6ecf2;
}
.member-usage-page-head{
 background:#eef4f9;
 font-weight:800;
 color:#536277;
}
.member-usage-page-head span, .member-usage-page-row span, .member-usage-page-row b, .member-usage-page-row button{
 font-size:9px;
 text-align:center;
}
.member-usage-page-row button{
 border:0;
 background:transparent;
 color:#2f4057;
 font-weight:800;
 cursor:pointer;
 text-align:left;
 padding-left:14px;
}
.member-usage-page-row b{color:#33465d}
.member-usage-page-row .usage-money{
 color:#173a63;
 font-size:10px;
}
.member-usage-page-empty{
 padding:24px;
 text-align:center;
 color:#8b97a6;
 font-size:10px;
}
.stats-money-grid{grid-template-columns:repeat(5,1fr)!important}
.money-kpi.gp-money strong{color:#285f9b}
.money-kpi.race-money strong{color:#6352a0}
.money-kpi.sports-money strong{color:#397b60}
@media(max-width:1100px){
 .stats-money-grid{grid-template-columns:1fr 1fr!important}
}
@media(max-width:820px){
 .member-usage-page-top{align-items:flex-start;flex-direction:column}
 .member-usage-page-filters{width:100%;flex-wrap:wrap}
 .member-usage-page-filters input, .member-usage-page-filters select{flex:1;min-width:140px}
 .member-usage-page-card{overflow:auto}
 .member-usage-page-head, .member-usage-page-row{min-width:850px}
}

@media screen{
  #events .report-page-title{
    font-size:32px !important;
    line-height:1.05 !important;
  }
}

.integrated-event-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.saved-event-select{
 height:36px;
 min-width:190px;
 border:1px solid #cad6e4;
 border-radius:8px;
 background:#fff;
 padding:0 9px;
 color:#44556b;
 font-size:10px;
}
.integration-save-toast{
 position:fixed;
 right:22px;
 bottom:22px;
 z-index:5000;
 background:#173a63;
 color:#fff;
 border-radius:9px;
 padding:10px 14px;
 font-size:11px;
 font-weight:700;
 box-shadow:0 8px 24px rgba(20,42,70,.22);
 opacity:0;
 transform:translateY(8px);
 pointer-events:none;
 transition:.2s;
}
.integration-save-toast.show{opacity:1;transform:translateY(0)}
@media(max-width:900px){
 .integrated-event-actions{justify-content:flex-start}
 .saved-event-select{min-width:160px}
}

.payment-member-pick-row{
 display:grid;
 grid-template-columns:1.2fr 1fr .9fr auto;
 align-items:center;
 gap:8px;
 padding:10px 0;
 border-bottom:1px solid #e7edf2;
}
.payment-member-pick-row b{font-size:10px;color:#2f4057}
.payment-member-pick-row span{font-size:9px;color:#758297}
.payment-member-pick-row button{
 border:1px solid #b9c8d8;
 background:#fff;
 color:#173a63;
 border-radius:7px;
 padding:6px 9px;
 font-size:9px;
 font-weight:800;
 cursor:pointer;
}
.payment-member-pick-empty{padding:20px;text-align:center;color:#8a96a6;font-size:10px}

.btn.danger-outline{
 border:1px solid #d6a5a5;
 background:#fff;
 color:#a14f4f;
}
.btn.danger-outline:hover{background:#fff7f7}

.member-row{position:relative;padding-right:30px!important}

.usage-row{
 grid-template-columns:74px 46px 54px minmax(0,1fr) 72px 24px!important;
}
.usage-delete{
 width:19px;
 height:19px;
 padding:0;
 border:1px solid #d7dee8;
 border-radius:5px;
 background:#fff;
 color:#9aa5b4;
 font-size:10px;
 cursor:pointer;
}
.usage-delete:hover{
 border-color:#d4aaaa;
 background:#fff5f5;
 color:#a55454;
}
.usage-tag.service{
 background:#e9f4ff;
 color:#346a9c;
}
@media(max-width:720px){
 .usage-row{grid-template-columns:70px 44px 50px minmax(0,1fr) 22px!important}
 .usage-row strong{display:none}
}

#roundStats{max-width:1500px}
.round-stats-top{margin-bottom:14px}
.round-stats-filter{display:flex;gap:8px}
.round-stats-filter select{
 height:36px;border:1px solid #cad6e4;border-radius:8px;background:#fff;
 padding:0 10px;color:#44556b;font-size:10px
}
.round-stats-kpis{
 display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px
}
.round-stats-kpis>div{
 background:#fff;border:1px solid #d7e0ec;border-radius:12px;padding:14px 16px;
 box-shadow:0 4px 14px rgba(32,53,84,.05)
}
.round-stats-kpis span{display:block;font-size:10px;color:#748196;font-weight:800;margin-bottom:6px}
.round-stats-kpis b{font-size:24px;color:#173a63}
.round-stats-kpis small{font-size:9px;color:#8c97a5;margin-left:3px}
.round-stats-card{
 background:#fff;border:1px solid #d7e0ec;border-radius:13px;padding:15px;
 box-shadow:0 5px 18px rgba(32,53,84,.05)
}
.round-stats-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.round-stats-card-head h3{margin:0;font-size:14px;color:#26364d}
.round-stats-card-head small{font-size:9px;color:#8c97a5}
.round-stats-table-wrap{overflow:auto;border-top:1px solid #e3e9f0}
.round-stats-table-head, .round-stats-table-row{
 display:grid;
 grid-template-columns:1.15fr .7fr 1.25fr .75fr .75fr .75fr .9fr .9fr 1fr .8fr .8fr .8fr;
 align-items:center;
 width:100%;
 min-width:980px;
 min-height:38px;
 border-bottom:1px solid #e7edf2;
}
.round-stats-table-head{background:#f3f7fa;font-weight:800}
.round-stats-table-head span, .round-stats-table-row span, .round-stats-table-row b{
 text-align:center;font-size:9px;color:#46566c
}
.round-stats-table-row button{
 border:0;background:transparent;color:#173a63;font-size:9px;font-weight:800;cursor:pointer
}
.round-stats-table-row:hover{background:#fbfdff}
.round-stats-empty{padding:22px;text-align:center;color:#8b97a6;font-size:10px}
@media(max-width:850px){
 .round-stats-kpis{grid-template-columns:1fr 1fr}
}

.sidebar-logo-box{
 margin-top:auto;
 padding:18px 14px 14px;
 display:flex;
 align-items:center;
 justify-content:center;
}
.sidebar-logo-box img{
 width:100%;
 max-width:150px;
 height:auto;
 object-fit:contain;
 display:block;
 filter:drop-shadow(0 2px 4px rgba(0,0,0,.08));
}
@media(max-width:900px){
 .sidebar-logo-box{
  padding:12px 10px 10px;
 }
 .sidebar-logo-box img{
  max-width:120px;
 }
}

.sidebar{padding-bottom:105px!important}
.sidebar-logo-box{
 position:absolute!important;
 left:16px!important;
 right:16px!important;
 bottom:22px!important;
 margin:0!important;
 padding:0!important;
 display:flex!important;
 justify-content:center!important;
 align-items:center!important;
}
.sidebar-logo-box img{
 width:100%!important;
 max-width:150px!important;
 height:auto!important;
 object-fit:contain!important;
 display:block!important;
 filter:none!important;
}
@media(max-width:800px){
 .sidebar{padding-bottom:72px!important}
 .sidebar-logo-box{left:8px!important;right:8px!important;bottom:14px!important}
 .sidebar-logo-box img{max-width:56px!important}
}

.member-excel-actions{
 display:flex;
 gap:7px;
 align-items:center;
 justify-content:flex-end;
 flex-wrap:wrap;
}
.member-excel-actions .btn{white-space:nowrap}
@media(max-width:900px){
 .member-app-top{align-items:flex-start;flex-direction:column}
 .member-excel-actions{justify-content:flex-start;width:100%}
}

html.blue-online-booting body{visibility:hidden}
.production-empty-members{
 padding:24px 14px;text-align:center;color:#8a97a7;font-size:10px;line-height:1.7
}
.online-user-panel{
 margin:9px 0 12px;padding:10px;border:1px solid rgba(255,255,255,.13);
 border-radius:10px;background:rgba(255,255,255,.055);color:#fff
}
.online-user-main{display:flex;align-items:center;justify-content:space-between;gap:7px}
.online-user-main strong{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#onlineRoleBadgeV210{
 border-radius:999px;padding:3px 6px;background:rgba(255,255,255,.15);
 font-size:7px;font-weight:800;white-space:nowrap
}
#onlineRoleBadgeV210.admin{background:#e9f2ff;color:#173a63}
#onlineRoleBadgeV210.viewer{background:#edf0f4;color:#677585}
.online-sync-row{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:7px;font-size:7px;color:rgba(255,255,255,.68)}
.online-sync-row button, .online-logout-btn{
 border:0;background:transparent;color:rgba(255,255,255,.82);font-size:7px;padding:0;cursor:pointer
}
.online-logout-btn{margin-top:7px;padding-top:7px;border-top:1px solid rgba(255,255,255,.1);width:100%;text-align:left}
.cloud-banner-v210{
 display:none;position:fixed;z-index:99999;top:12px;left:50%;transform:translateX(-50%);
 background:#fff7dc;border:1px solid #dfc47f;color:#6f581c;border-radius:9px;
 padding:8px 10px;box-shadow:0 7px 24px rgba(28,42,63,.16);font-size:10px;font-weight:800
}
.cloud-banner-v210.show{display:block}
.cloud-banner-v210 button{margin-left:8px;border:0;border-radius:6px;background:#173a63;color:#fff;padding:5px 8px;font-size:8px;font-weight:800;cursor:pointer}
.role-hidden-v210{display:none!important}
body[data-online-role="viewer"] #events input, body[data-online-role="viewer"] #events textarea, body[data-online-role="viewer"] #events select:not(#savedEventSelect){
 background:#f4f6f9!important;color:#6d7988!important
}
.online-photo-state{
 display:inline-block;margin-left:7px;padding:2px 5px;border-radius:999px;background:#eef3f8;color:#718095;font-size:7px;font-weight:700
}

.member-empty-detail{
 width:100%;padding:18px 10px;text-align:center;color:#93a0af;font-size:9px;
 border:1px dashed #d8e0e9;border-radius:8px;background:#fbfcfe
}

.stats-monthly-empty-v213{
 padding:18px 8px!important;
 text-align:center!important;
 color:#96a2b1!important;
 font-size:9px!important;
 line-height:1.5!important;
 display:block!important;
}
#statsMonthlyTableV213.stats-monthly-empty-v213{
 border-bottom:1px solid #e6ecf2;
}

.green-event-layout-v236{display:grid;gap:14px;margin-bottom:14px}.green-select-card-v236{margin:0}.green-select-grid-v236{display:grid;grid-template-columns:minmax(280px,390px) 1fr auto;gap:14px;align-items:end}.green-select-grid-v236 .field{margin:0}.green-select-grid-v236 label, .green-instructor-field-v236 label{display:block;font-size:11px;font-weight:700;color:#63748a;margin-bottom:5px}.green-event-select-v236, .green-instructor-field-v236 input{width:100%;height:38px;border:1px solid #cbd7e5;border-radius:8px;background:#fff;color:#111;padding:0 10px}.green-event-preview-v236{min-height:38px;border:1px solid #d9e4ef;border-radius:9px;background:#f6f9fc;padding:9px 12px;color:#52657a;font-size:12px;display:flex;align-items:center}.green-event-preview-v236 b{color:#173a63}.green-save-actions-v236{display:flex;gap:8px;justify-content:flex-end}.green-session-grid-v236{display:grid;grid-template-columns:1fr 1fr;gap:14px}.green-session-card-v236{margin:0}.green-session-card-v236 .title{display:flex;align-items:center;justify-content:space-between}.green-session-tag-v236{font-size:10px;font-weight:800;color:#32659a;background:#eef5fc;border:1px solid #d6e5f3;border-radius:999px;padding:4px 8px}.green-instructor-field-v236{margin:0 0 12px}.green-entry-list-v236{border:1px solid #d8e2ec;border-radius:10px;overflow:hidden;background:#fff}.green-entry-head-v236, .green-entry-row-v236{display:grid;grid-template-columns:48px minmax(120px,.8fr) minmax(180px,1.4fr);align-items:center}.green-entry-head-v236{height:34px;background:#eaf3fb;border-bottom:1px solid #d8e2ec;font-size:11px;font-weight:800;color:#365574;text-align:center}.green-entry-row-v236{min-height:42px;border-bottom:1px solid #e6edf4;background:#fff}.green-entry-row-v236:last-child{border-bottom:0}.green-entry-row-v236>span{text-align:center;font-size:11px;color:#718096}.green-entry-row-v236 input{width:100%;height:41px;border:0;border-left:1px solid #e6edf4;border-radius:0;padding:0 10px;background:#fff!important;color:#111!important;-webkit-text-fill-color:#111!important;outline:none;opacity:1}.green-entry-row-v236 input::placeholder{color:transparent}.green-entry-row-v236 input:focus{background:#f7fbff!important;box-shadow:inset 0 0 0 1px #8ab4df}.green-history-card-v236{margin-top:0}.green-history-title-v236{display:flex;align-items:center;justify-content:space-between}.green-history-count-v236{font-size:12px;color:#68788c;font-weight:600}.green-history-count-v236 b{color:#173a63;font-size:15px}.green-history-note-v236{font-size:11px;color:#7a8797;margin:-3px 0 10px}.green-history-wrap-v236{overflow:auto;border:1px solid #d8e2ec;border-radius:10px}.green-history-table-v236{width:100%;border-collapse:collapse;table-layout:fixed;background:#fff}.green-history-table-v236 th{background:#dceaf7;color:#385674;font-size:11px;font-weight:800;padding:9px 7px;border-right:1px solid #c4d5e5;border-bottom:1px solid #bfcfdf;text-align:center}.green-history-table-v236 td{font-size:11px;color:#17263a;padding:8px 7px;border-right:1px solid #e0e7ef;border-bottom:1px solid #e0e7ef;text-align:center;vertical-align:middle;background:#fff}.green-history-table-v236 th:last-child, .green-history-table-v236 td:last-child{border-right:0}.green-history-table-v236 td:last-child{text-align:left}.green-history-table-v236 th:nth-child(1){width:16%}.green-history-table-v236 th:nth-child(2){width:16%}.green-history-table-v236 th:nth-child(3){width:18%}.green-history-table-v236 th:nth-child(4){width:18%}.green-session-mini-v236{display:block;margin-top:3px;font-size:9px;color:#5f7894;font-weight:700}.green-empty-v236{text-align:center;padding:28px;color:#8a97a6;font-size:12px}.vehicle-inline-edit-v236{background:#fff!important;min-width:90px;cursor:text}.vehicle-inline-edit-v236:focus{outline:1px solid #8ab4df;background:#f7fbff!important}.vehicle-inline-edit-v236:empty:before{content:''}.direct-picker-note{line-height:1.55}
body[data-online-role="viewer"] #greenAttendanceV234 input:disabled, body[data-online-role="viewer"] #greenAttendanceV234 select:disabled{background:#fff!important;color:#111!important;-webkit-text-fill-color:#111!important;opacity:1!important}
@media(max-width:950px){.green-select-grid-v236{grid-template-columns:1fr}.green-save-actions-v236{justify-content:flex-start}.green-session-grid-v236{grid-template-columns:1fr}}

#vehicles tbody td.vehicle-inline-edit-v236, #vehicles tbody td[contenteditable="true"]{
 background:#fff!important;color:#111!important;-webkit-text-fill-color:#111!important;opacity:1!important;caret-color:#111!important;
}
#vehicles tbody td.vehicle-inline-edit-v236:focus, #vehicles tbody td[contenteditable="true"]:focus{
 color:#111!important;-webkit-text-fill-color:#111!important;caret-color:#111!important;background:#f8fbff!important;outline:1px solid #8ab4df!important;
}

.green-entry-list-v237{background:#fff}
.green-instructor-row-v237{display:grid;grid-template-columns:112px 1fr;min-height:42px;border-bottom:1px solid #d8e2ec;background:#fff;align-items:stretch}
.green-instructor-row-v237>span{display:flex;align-items:center;justify-content:center;background:#dceaf7;color:#385674;font-size:11px;font-weight:800;border-right:1px solid #c4d5e5}
.green-instructor-row-v237>input{width:100%;height:42px;border:0!important;border-radius:0!important;background:#fff!important;color:#111!important;-webkit-text-fill-color:#111!important;opacity:1!important;padding:0 12px;font-size:12px;outline:none}
.green-instructor-row-v237>input:focus{background:#f8fbff!important;box-shadow:inset 0 0 0 1px #8ab4df}
.green-entry-row-v236 input{background:#fff!important;color:#111!important;-webkit-text-fill-color:#111!important;opacity:1!important}
@media(max-width:850px){.green-instructor-row-v237{grid-template-columns:96px 1fr}}

#vehicles tbody tr.vehicle-invite-v238 td{
  background:#eef7fd!important;
}
#vehicles tbody tr.vehicle-invite-v238 td[contenteditable="true"]{
  background:#eef7fd!important;
  color:#111!important;
  -webkit-text-fill-color:#111!important;
  caret-color:#111!important;
}
#vehicles tbody td.vehicle-merged-v238{
  vertical-align:middle!important;
  background:#fff!important;
  color:#111!important;
}
#vehicles tbody tr.vehicle-invite-v238 td.vehicle-merged-v238{
  background:#eef7fd!important;
}

.round-stats-kpis .round-driving-kpi-v238{position:relative}
.round-stats-kpis .round-driving-kpi-v238 em{
  display:block;
  margin-top:3px;
  font-size:9px;
  font-style:normal;
  font-weight:700;
  color:#74859a;
}

.green-history-table-v236 th:nth-child(1){width:14%}
.green-history-table-v236 th:nth-child(2){width:14%}
.green-history-table-v236 th:nth-child(3){width:16%}
.green-history-table-v236 th:nth-child(4){width:10%}
.green-history-table-v236 th:nth-child(5){width:18%}
.green-history-table-v236 th:nth-child(6){width:auto}
.green-session-cell-v238{
  background:#f4f8fc!important;
  color:#315c84!important;
  font-weight:800!important;
}

.stats-mini-table>.stats-mini-head{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  min-height:36px!important;
  align-items:center!important;
  background:#f4f7fa!important;
  border-bottom:1px solid #dfe6ee!important;
}
.stats-mini-table>#statsMonthlyTableV213{
  display:block!important;
  min-height:0!important;
  border:0!important;
  background:#fff!important;
}
#statsMonthlyTableV213>div{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  min-height:36px!important;
  align-items:center!important;
  border-bottom:1px solid #e6ecf2!important;
}
.stats-mini-table>.stats-mini-head span, #statsMonthlyTableV213>div span, #statsMonthlyTableV213>div b{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0 8px!important;
  box-sizing:border-box!important;
  text-align:center!important;
  white-space:nowrap!important;
  line-height:1.35!important;
  font-size:10px!important;
}
#statsMonthlyTableV213.stats-monthly-empty-v213{
  display:block!important;
  padding:18px 10px!important;
  text-align:center!important;
  color:#8b97a6!important;
}

.member-stats-v240{grid-template-columns:repeat(6,minmax(0,1fr))!important}
.member-stats-v240 .member-stat small{display:block;margin-top:5px;color:#94a0af;font-size:9px;font-weight:600}
.member-stats-v240 .hold-stat-v240{border-top:3px solid #b9c3d0}
.member-stats-v240 .expired-stat-v240{border-top:3px solid #d8a5a5}

.member-usage-page-head, .member-usage-page-row{
 grid-template-columns:1.05fr .95fr .72fr .72fr 1.1fr .72fr 1.02fr 1.05fr .75fr!important;
}
.member-renew-count-v240{color:#315c84!important}

#greenAttendanceV234 .green-session-card-v236, #greenAttendanceV234 .green-session-card-v236 .title, #greenAttendanceV234 .green-session-tag-v236, #greenAttendanceV234 .green-session-cell-v238{
 background:#fff!important;
}
#greenAttendanceV234 .green-session-tag-v236{border-color:#d8e2ec!important;color:#52657a!important}
#greenAttendanceV234 .green-session-cell-v238{color:#315c84!important}

@media(max-width:1150px){.member-stats-v240{grid-template-columns:repeat(3,1fr)!important}}
@media(max-width:720px){.member-stats-v240{grid-template-columns:1fr 1fr!important}.member-usage-page-head, .member-usage-page-row{min-width:980px!important}}

.member-stats-v240 .hold-stat-v240, .member-stats-v240 .expired-stat-v240{border-top:1px solid #d7e0ec!important}
.member-usage-page-head, .member-usage-page-row{
 grid-template-columns:1.05fr .95fr .75fr 1.12fr .72fr 1.02fr 1.08fr .78fr .72fr!important;
}
.member-usage-page-head span, .member-usage-page-row span, .member-usage-page-row b, .member-usage-page-row button{text-align:center!important}
.member-usage-page-row button{padding-left:0!important;padding-right:0!important}
.member-renew-count-v241{color:#315c84!important;font-weight:800!important}
#greenAttendanceV234 .green-session-card-v236, #greenAttendanceV234 .green-session-card-v236 .title, #greenAttendanceV234 .green-session-tag-v236{background:#fff!important}

.online-user-main strong{font-size:11px!important}
#onlineRoleBadgeV210{font-size:9px!important;padding:4px 7px!important}
.online-sync-row{font-size:9px!important;line-height:1.35!important}
.online-sync-row button, .online-logout-btn{font-size:9px!important;line-height:1.35!important}
.online-logout-btn{padding-top:8px!important}

#members{width:100%!important;max-width:none!important}
#members .member-workspace{width:100%!important;grid-template-columns:minmax(320px,clamp(340px,34vw,520px)) minmax(0,1fr)!important}
#members .member-list-panel, #members .member-detail-panel{min-width:0!important}
#members .member-usage-list{overflow-x:auto!important}
#members .usage-row{grid-template-columns:82px 92px 122px minmax(180px,1fr) 84px 24px!important;min-width:650px!important;column-gap:8px!important}
#members .usage-row>*{min-width:0!important}
#members .usage-tag{min-width:76px!important;white-space:nowrap!important;padding-left:8px!important;padding-right:8px!important}
#members .usage-row b, #members .usage-row span:nth-child(4), #members .usage-row strong{white-space:nowrap!important;word-break:keep-all!important}
#members .usage-row b{overflow:visible!important}
.member-usage-print-v242{height:36px!important;white-space:nowrap!important}
.member-usage-page-filters{align-items:center!important}
.green-top-actions-v242{display:flex!important;align-items:center!important;gap:8px!important}
.green-year-select-v242{min-width:112px!important}

.stats-status-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important}

body[data-online-role="viewer"] input:disabled, body[data-online-role="viewer"] input[readonly], body[data-online-role="viewer"] textarea:disabled, body[data-online-role="viewer"] textarea[readonly], body[data-online-role="viewer"] select:disabled, body[data-online-role="viewer"] [contenteditable="false"]{
  background:#fff!important;
  background-color:#fff!important;
  color:#111!important;
  -webkit-text-fill-color:#111!important;
  opacity:1!important;
  filter:none!important;
  border-color:#d8dde5!important;
}
body[data-online-role="viewer"] input:disabled::placeholder, body[data-online-role="viewer"] textarea:disabled::placeholder{color:#9aa5b3!important;-webkit-text-fill-color:#9aa5b3!important}
body[data-online-role="viewer"] #events .card, body[data-online-role="viewer"] #members .member-detail-panel, body[data-online-role="viewer"] #greenAttendanceV234 .green-session-card-v236, body[data-online-role="viewer"] #greenAttendanceV234 .green-entry-card-v234, body[data-online-role="viewer"] #greenAttendanceV234 .green-history-card-v234{background:#fff!important}

.print-frame-v242, .print-frame-v243{position:fixed!important;width:0!important;height:0!important;border:0!important;opacity:0!important;pointer-events:none!important;left:-99999px!important;top:-99999px!important}

@media(max-width:1050px){#members .member-workspace{grid-template-columns:1fr!important}}
@media(max-width:900px){.stats-status-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:720px){
  #members .usage-row{grid-template-columns:82px 92px 122px minmax(180px,1fr) 24px!important;min-width:600px!important}
  #members .usage-row strong{display:none!important}
  .stats-status-grid{grid-template-columns:1fr 1fr!important}
}

#memberUsage .member-usage-page-head, #memberUsage .member-usage-page-row{
  min-height:48px !important;
}
#memberUsage .member-usage-page-head span, #memberUsage .member-usage-page-row span, #memberUsage .member-usage-page-row b, #memberUsage .member-usage-page-row button{
  font-size:11.5px !important;
  line-height:1.35 !important;
}
#memberUsage .member-usage-page-row .usage-money{
  font-size:12px !important;
}

#roundStats .round-stats-table-head, #roundStats .round-stats-table-row{
  min-height:46px !important;
}
#roundStats .round-stats-table-head span, #roundStats .round-stats-table-row span, #roundStats .round-stats-table-row b, #roundStats .round-stats-table-row button{
  font-size:11.5px !important;
  line-height:1.35 !important;
}

@media print{
  
  @page{
    size:A4 portrait;
    margin:11mm 6mm 7mm 6mm;
  }
  @page :first{
    margin-top:4mm;
  }

  
  html body #events#events, html body #events#events input, html body #events#events select, html body #events#events textarea, html body #events#events table, html body #events#events th, html body #events#events td, html body #events#events label, html body #events#events span, html body #events#events strong, html body #events#events small, html body #events#events b, html body #events#events p, html body #events#events div:not(.report-page-title){
    font-size:7.2px !important;
    line-height:1.26 !important;
  }

  html body #events#events .card > .title, html body #events#events .card > .title *{
    font-size:9.2px !important;
    line-height:1.18 !important;
    font-weight:700 !important;
  }

  html body #events#events .report-page-title{
    font-size:19px !important;
    line-height:1 !important;
  }

  
  html body #events#events .card{
    padding:1.35mm 1.55mm !important;
  }
  html body #events#events .card + .card{
    margin-top:2.6mm !important;
  }

  
  html body #events#events #basicStaffCard, html body #events#events #paymentStatusCard, html body #events#events #lunchCard, html body #events#events #noiseCard, html body #events#events #operationSummaryCard, html body #events#events #inviteCard, html body #events#events #attendanceCard, html body #events#events #vehiclesCard, html body #events#events #otherCard, html body #events#events .payment-block, html body #events#events .noise-item{
    break-inside:avoid !important;
    page-break-inside:avoid !important;
  }

  
  html body #events#events thead, html body #events#events tr{
    break-inside:avoid !important;
    page-break-inside:avoid !important;
  }

  
  html body #events#events #basicStaffCard .combined-info{
    grid-template-columns:3.25fr 4.75fr 2fr !important;
    grid-template-rows:30mm !important;
    height:30mm !important;
    min-height:30mm !important;
    max-height:30mm !important;
  }
  html body #events#events #basicStaffCard .event-info-block, html body #events#events #basicStaffCard .staff-board, html body #events#events #basicStaffCard .print-operation-summary{
    height:30mm !important;
    min-height:30mm !important;
    max-height:30mm !important;
  }
  html body #events#events #basicStaffCard .mini-grid{
    grid-template-columns:38% 62% !important;
    grid-template-rows:repeat(6,1fr) !important;
    height:100% !important;
  }
  
  html body #events#events #basicStaffCard .weather-label-wrap, html body #events#events #basicStaffCard .weather-values{
    grid-row:5 / 7 !important;
    min-height:0 !important;
    height:auto !important;
  }
  html body #events#events #basicStaffCard .labelcell, html body #events#events #basicStaffCard .valuecell, html body #events#events #basicStaffCard .weather-sub-labels > div, html body #events#events #basicStaffCard .weather-values > div{
    min-height:0 !important;
    height:auto !important;
    align-items:center !important;
    vertical-align:middle !important;
  }
  
  html body #events#events #basicStaffCard #eventRound{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    flex:1 1 auto !important;
    text-align:center !important;
    white-space:nowrap !important;
    overflow:visible !important;
  }
  html body #events#events #basicStaffCard #eventDriveDeductionMode{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    text-align:center !important;
    white-space:nowrap !important;
  }

  
  html body #events#events #paymentStatusCard .payment-block-head, html body #events#events #paymentStatusCard .license-block .payment-block-head{
    height:6.4mm !important;
    min-height:6.4mm !important;
    max-height:6.4mm !important;
    padding:.7mm 1mm !important;
    display:flex !important;
    align-items:center !important;
    box-sizing:border-box !important;
  }
  html body #events#events #paymentStatusCard .payment-block-head > div, html body #events#events #paymentStatusCard .license-block .payment-block-head > div{
    height:100% !important;
    display:flex !important;
    align-items:center !important;
  }
  html body #events#events #paymentStatusCard{
    align-items:start !important;
  }
  html body #events#events #paymentStatusCard > .payment-block{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    align-self:start !important;
  }
  html body #events#events #paymentStatusCard .payment-table-wrap, html body #events#events #paymentStatusCard .license-table-wrap{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    background:#fff !important;
    overflow:visible !important;
  }
  html body #events#events #paymentStatusCard .payment-table, html body #events#events #paymentStatusCard .license-payment-table{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    background:#fff !important;
  }
  html body #events#events #membershipPayments thead tr, html body #events#events #licensePayments thead tr, html body #events#events #membershipPayments thead th, html body #events#events #licensePayments thead th{
    height:5.6mm !important;
    min-height:5.6mm !important;
    max-height:5.6mm !important;
    padding:.55mm .4mm !important;
    vertical-align:middle !important;
    background:#DCEBF8 !important;
  }
  html body #events#events #membershipPayments tbody:empty, html body #events#events #licensePayments tbody:empty{
    display:none !important;
  }

  
  html body #events#events #noiseCard .noise-grid{
    align-items:stretch !important;
  }
  html body #events#events #noiseCard .noise-item{
    min-height:9mm !important;
    align-items:stretch !important;
  }
  html body #events#events #noiseCard .noise-head, html body #events#events #noiseCard .noise-item > .field:not(.no-print), html body #events#events #noiseCard .noise-item > .field:not(.no-print) label, html body #events#events #noiseCard .db-input, html body #events#events #noiseCard .db-input span, html body #events#events #noiseCard input{
    align-items:center !important;
    align-self:stretch !important;
    vertical-align:middle !important;
    line-height:1.2 !important;
  }
  html body #events#events #noiseCard .noise-head, html body #events#events #noiseCard .noise-item > .field:not(.no-print){
    display:flex !important;
    justify-content:center !important;
  }
  html body #events#events #noiseCard .noise-item > .field:not(.no-print){
    gap:.7mm !important;
  }
  html body #events#events #noiseCard .noise-item > .field:not(.no-print) label{
    display:flex !important;
    justify-content:center !important;
    margin:0 !important;
  }
  html body #events#events #noiseCard .db-input{
    display:flex !important;
    justify-content:center !important;
    height:100% !important;
  }

  
  html body #events#events #otherNotes{
    font-size:8px !important;
    line-height:1.58 !important;
    padding:1.1mm 1.2mm !important;
    white-space:pre-wrap !important;
  }

  
  html body #events#events #invites th, html body #events#events #invites td, html body #events#events #attendance th, html body #events#events #attendance td, html body #events#events #vehicles th, html body #events#events #vehicles td{
    font-size:7px !important;
    line-height:1.24 !important;
  }
}

@media print{
  
  html body #events#events #paymentStatusCard .payment-block-head, html body #events#events #paymentStatusCard .license-block .payment-block-head{
    height:4.0mm !important;
    min-height:4.0mm !important;
    max-height:4.0mm !important;
    padding:.25mm .8mm !important;
  }
  html body #events#events #membershipPayments thead tr, html body #events#events #licensePayments thead tr, html body #events#events #membershipPayments thead th, html body #events#events #licensePayments thead th{
    height:2.9mm !important;
    min-height:2.9mm !important;
    max-height:2.9mm !important;
    padding:.1mm .35mm !important;
    line-height:1 !important;
    vertical-align:middle !important;
  }

  
  html body #events#events #noiseCard .noise-grid{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:1.8mm !important;
    align-items:stretch !important;
  }
  html body #events#events #noiseCard .noise-item{
    display:grid !important;
    grid-template-columns:19mm minmax(0,1fr) 31mm !important;
    grid-template-rows:7.4mm !important;
    height:7.4mm !important;
    min-height:7.4mm !important;
    max-height:7.4mm !important;
    gap:0 !important;
    padding:0 !important;
    align-items:stretch !important;
    overflow:hidden !important;
  }
  html body #events#events #noiseCard .noise-head{
    grid-column:1 !important;
    grid-row:1 !important;
    height:100% !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 .45mm !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    line-height:1 !important;
    white-space:nowrap !important;
    box-sizing:border-box !important;
    border-right:.2px solid var(--final-line) !important;
  }
  html body #events#events #noiseCard .noise-item > .field:nth-child(2), html body #events#events #noiseCard .noise-item > .field:nth-child(3){
    grid-row:1 !important;
    height:100% !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    gap:0 !important;
    display:grid !important;
    grid-template-columns:12mm minmax(0,1fr) !important;
    align-items:stretch !important;
    box-sizing:border-box !important;
    border:0 !important;
  }
  html body #events#events #noiseCard .noise-item > .field:nth-child(2){
    grid-column:2 !important;
    border-right:.2px solid var(--final-line) !important;
  }
  html body #events#events #noiseCard .noise-item > .field:nth-child(3){
    grid-column:3 !important;
  }
  html body #events#events #noiseCard .noise-item > .field:nth-child(2) label, html body #events#events #noiseCard .noise-item > .field:nth-child(3) label{
    height:100% !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 .35mm !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    align-self:stretch !important;
    line-height:1 !important;
    white-space:nowrap !important;
    box-sizing:border-box !important;
    border-right:.2px solid var(--final-line) !important;
  }
  html body #events#events #noiseCard .noise-item > .field:nth-child(2) input{
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 .55mm !important;
    align-self:stretch !important;
    border:0 !important;
    border-radius:0 !important;
    background:#fff !important;
    box-sizing:border-box !important;
    text-align:center !important;
    line-height:normal !important;
  }
  html body #events#events #noiseCard .db-input{
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 .45mm !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    align-self:stretch !important;
    gap:.35mm !important;
    box-sizing:border-box !important;
  }
  html body #events#events #noiseCard .db-input input{
    flex:1 1 auto !important;
    width:0 !important;
    min-width:0 !important;
    height:100% !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:#fff !important;
    box-sizing:border-box !important;
    text-align:right !important;
    line-height:normal !important;
  }
  html body #events#events #noiseCard .db-input span{
    flex:0 0 auto !important;
    height:100% !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    align-self:stretch !important;
    line-height:1 !important;
  }
}

@media print{
  
  html body #events#events, html body #events#events input, html body #events#events select, html body #events#events textarea, html body #events#events table, html body #events#events th, html body #events#events td, html body #events#events label, html body #events#events span, html body #events#events strong, html body #events#events small, html body #events#events b, html body #events#events p, html body #events#events div:not(.report-page-title){
    font-size:9px !important;
    line-height:1.28 !important;
  }

  
  html body #events#events .card > .title, html body #events#events .card > .title *{
    font-size:11px !important;
    line-height:1.16 !important;
    font-weight:750 !important;
  }

  html body #events#events .report-page-title{
    font-size:19px !important;
    line-height:1 !important;
  }

  
  html body #events#events #basicStaffCard th, html body #events#events #basicStaffCard td, html body #events#events #basicStaffCard label, html body #events#events #basicStaffCard input, html body #events#events #basicStaffCard select, html body #events#events #basicStaffCard span, html body #events#events #basicStaffCard strong, html body #events#events #basicStaffCard small, html body #events#events #basicStaffCard b, html body #events#events #basicStaffCard div:not(.title){
    font-size:8.6px !important;
    line-height:1.18 !important;
  }

  
  html body #events#events #paymentStatusCard{
    grid-template-columns:minmax(0,2.42fr) minmax(0,.68fr) !important;
    gap:1.35mm !important;
  }
  html body #events#events #paymentStatusCard .payment-block-head, html body #events#events #paymentStatusCard .license-block .payment-block-head{
    height:4.8mm !important;
    min-height:4.8mm !important;
    max-height:4.8mm !important;
    padding:.35mm .8mm !important;
  }
  html body #events#events #paymentStatusCard .payment-block-head b, html body #events#events #paymentStatusCard .payment-block-head span{
    font-size:9.2px !important;
    line-height:1 !important;
    white-space:nowrap !important;
  }
  html body #events#events #membershipPayments thead tr, html body #events#events #licensePayments thead tr, html body #events#events #membershipPayments thead th, html body #events#events #licensePayments thead th{
    height:4.0mm !important;
    min-height:4.0mm !important;
    max-height:4.0mm !important;
    padding:.2mm .3mm !important;
    vertical-align:middle !important;
  }
  html body #events#events #membershipPayments th, html body #events#events #membershipPayments td, html body #events#events #membershipPayments input, html body #events#events #membershipPayments select, html body #events#events #licensePayments th, html body #events#events #licensePayments td, html body #events#events #licensePayments input{
    font-size:8.5px !important;
    line-height:1.15 !important;
    white-space:nowrap !important;
    overflow:visible !important;
    text-overflow:clip !important;
  }
  html body #events#events #membershipPayments th, html body #events#events #membershipPayments td, html body #events#events #licensePayments th, html body #events#events #licensePayments td{
    padding:.38mm .28mm !important;
  }
  
  html body #events#events #membershipPayments .pay-no{width:6% !important}
  html body #events#events #membershipPayments .pay-name{width:14% !important}
  html body #events#events #membershipPayments .pay-membership{width:22% !important}
  html body #events#events #membershipPayments .pay-renewal{width:16% !important}
  html body #events#events #membershipPayments .pay-amount{width:24% !important}
  html body #events#events #membershipPayments .pay-method{width:18% !important}
  html body #events#events #paymentStatusCard .payment-total, html body #events#events #paymentStatusCard .payment-total *, html body #events#events #paymentStatusCard .license-block .payment-total, html body #events#events #paymentStatusCard .license-block .payment-total *{
    font-size:8.8px !important;
    line-height:1.15 !important;
  }

  
  html body #events#events #noiseCard .noise-item{
    grid-template-columns:20mm minmax(0,1fr) 35mm !important;
    grid-template-rows:9mm !important;
    height:9mm !important;
    min-height:9mm !important;
    max-height:9mm !important;
  }
  html body #events#events #noiseCard .db-input{
    white-space:nowrap !important;
    flex-wrap:nowrap !important;
  }
  html body #events#events #noiseCard .noise-head, html body #events#events #noiseCard .noise-item > .field:nth-child(2) label, html body #events#events #noiseCard .noise-item > .field:nth-child(3) label, html body #events#events #noiseCard .noise-item > .field:nth-child(2) input, html body #events#events #noiseCard .db-input, html body #events#events #noiseCard .db-input input, html body #events#events #noiseCard .db-input span{
    font-size:9px !important;
    line-height:1.15 !important;
  }

  
  html body #events#events #otherNotes{
    font-size:10px !important;
    line-height:1.6 !important;
  }

  
  html body #events#events #invites th, html body #events#events #invites td, html body #events#events #attendance th, html body #events#events #attendance td, html body #events#events #vehicles th, html body #events#events #vehicles td{
    font-size:8.5px !important;
    line-height:1.25 !important;
  }
}

@media print{
  
  html body #events#events #paymentStatusCard{
    align-items:stretch !important;
  }
  html body #events#events #paymentStatusCard > .payment-block{
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;
    align-self:stretch !important;
    display:flex !important;
    flex-direction:column !important;
  }
  html body #events#events #paymentStatusCard .payment-table-wrap, html body #events#events #paymentStatusCard .license-table-wrap{
    flex:1 1 auto !important;
    min-height:0 !important;
    height:auto !important;
    max-height:none !important;
    overflow:visible !important;
  }
  html body #events#events #paymentStatusCard .payment-total, html body #events#events #paymentStatusCard .license-block .payment-total{
    flex:0 0 auto !important;
    margin-top:auto !important;
    min-height:5.2mm !important;
    height:5.2mm !important;
    padding:.45mm .8mm !important;
    box-sizing:border-box !important;
    display:flex !important;
    align-items:center !important;
  }

  html body #events#events #membershipPayments{
    width:100% !important;
    table-layout:fixed !important;
    border-collapse:collapse !important;
  }
  html body #events#events #membershipPayments col.pay-no{width:6% !important}
  html body #events#events #membershipPayments col.pay-name{width:14% !important}
  html body #events#events #membershipPayments col.pay-membership{width:22% !important}
  html body #events#events #membershipPayments col.pay-renewal{width:16% !important}
  html body #events#events #membershipPayments col.pay-amount{width:24% !important}
  html body #events#events #membershipPayments col.pay-method{width:18% !important}
  html body #events#events #membershipPayments col.pay-delete{width:0 !important}

  html body #events#events #membershipPayments th, html body #events#events #membershipPayments td{
    box-sizing:border-box !important;
    text-align:center !important;
    vertical-align:middle !important;
    overflow:hidden !important;
    white-space:nowrap !important;
  }
  html body #events#events #membershipPayments thead th, html body #events#events #membershipPayments tbody td{
    height:5.0mm !important;
    min-height:5.0mm !important;
    max-height:5.0mm !important;
    padding:.25mm .28mm !important;
  }
  html body #events#events #membershipPayments input, html body #events#events #membershipPayments select{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:100% !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    box-sizing:border-box !important;
    text-align:center !important;
    text-align-last:center !important;
    line-height:normal !important;
  }
  html body #events#events #membershipPayments .pay-money{
    width:100% !important;
    height:100% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:.25mm !important;
    white-space:nowrap !important;
  }
  html body #events#events #membershipPayments .pay-money input{
    flex:0 1 12ch !important;
    width:12ch !important;
    max-width:12ch !important;
    text-align:right !important;
  }
  html body #events#events #membershipPayments .pay-money span{
    flex:0 0 auto !important;
    margin:0 !important;
    padding:0 !important;
  }

  
  html body #events#events #licensePayments{
    width:100% !important;
    table-layout:fixed !important;
  }
  html body #events#events #licensePayments th, html body #events#events #licensePayments td{
    box-sizing:border-box !important;
    text-align:center !important;
    vertical-align:middle !important;
  }
  html body #events#events #licensePayments thead th, html body #events#events #licensePayments tbody td{
    height:5.0mm !important;
    min-height:5.0mm !important;
    max-height:5.0mm !important;
    padding:.25mm .28mm !important;
  }

  
  html body #events#events #lunchCard .lunch-summary-table{
    width:100% !important;
    table-layout:fixed !important;
    border-collapse:collapse !important;
  }
  html body #events#events #lunchCard .lunch-summary-table thead tr, html body #events#events #lunchCard .lunch-summary-table tbody tr, html body #events#events #lunchCard .lunch-summary-table th, html body #events#events #lunchCard .lunch-summary-table td{
    height:5.4mm !important;
    min-height:5.4mm !important;
    max-height:5.4mm !important;
    box-sizing:border-box !important;
  }
  html body #events#events #lunchCard .lunch-summary-table th, html body #events#events #lunchCard .lunch-summary-table td, html body #events#events #lunchCard .lunch-summary-table input, html body #events#events #lunchCard .lunch-summary-table strong, html body #events#events #lunchCard .lunch-summary-table b, html body #events#events #lunchCard .lunch-summary-table .qty-input, html body #events#events #lunchCard .lunch-summary-table .money-input{
    font-size:9px !important;
    line-height:1.15 !important;
  }
  html body #events#events #lunchCard .lunch-summary-table th, html body #events#events #lunchCard .lunch-summary-table td{
    padding:.25mm .35mm !important;
    text-align:center !important;
    vertical-align:middle !important;
  }
  html body #events#events #lunchCard .lunch-summary-table td > strong, html body #events#events #lunchCard .lunch-summary-table .qty-input, html body #events#events #lunchCard .lunch-summary-table .money-input{
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    box-sizing:border-box !important;
  }
  html body #events#events #lunchCard .lunch-summary-table input{
    height:100% !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    box-sizing:border-box !important;
    vertical-align:middle !important;
    line-height:normal !important;
    text-align:center !important;
  }
  html body #events#events #lunchCard .lunch-summary-table .qty-input input, html body #events#events #lunchCard .lunch-summary-table .money-input input{
    align-self:stretch !important;
    text-align:center !important;
  }
  html body #events#events #lunchCard .lunch-summary-table .qty-input b, html body #events#events #lunchCard .lunch-summary-table .money-input b{
    height:100% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    padding:0 !important;
  }
}

#events .event-date-display-v268{
  display:flex;align-items:center;justify-content:center;width:100%;min-height:40px;background:#fff;
}
#events .event-date-display-v268 #eventDate{
  width:auto!important;flex:0 1 128px!important;min-width:0!important;padding-left:6px!important;padding-right:2px!important;text-align:right!important;
}
#events .event-date-weekday-v268{
  flex:0 0 34px;display:inline-flex;align-items:center;justify-content:flex-start;
  font-size:14px;font-weight:700;color:#26364d;white-space:nowrap;
}

@media screen{
  #events #otherCard{height:auto!important;min-height:0!important;flex:0 0 auto!important;}
  #events #otherCard .field{height:auto!important;min-height:0!important;}
  #events #otherNotes{min-height:320px!important;max-height:none!important;flex:0 0 auto!important;}
}

#roundStats .round-stats-total-row-v268{
  background:#eaf3fb!important;border-top:1px solid #bfd2e5!important;font-weight:800!important;
}
#roundStats .round-stats-total-row-v268 .round-total-label-v268{grid-column:1;}
#roundStats .round-stats-total-row-v268 .round-total-events-v268{grid-column:2 / span 2;}
#roundStats .round-stats-total-row-v268 b{font-weight:800!important;color:#173a63!important;}
@media print{
  html body #events#events .event-date-display-v268{min-height:0!important;height:100%!important;}
  html body #events#events .event-date-display-v268 #eventDate{flex:0 1 32mm!important;padding:0!important;text-align:right!important;}
  html body #events#events .event-date-weekday-v268{flex:0 0 8mm!important;font-size:9px!important;line-height:1!important;}
}

#events .event-round-valuecell-v266{
  justify-content:center !important;
  gap:0 !important;
}
#events .event-round-valuecell-v266 #eventRound{
  field-sizing:content !important;
  flex:0 0 auto !important;
  width:auto !important;
  min-width:1ch !important;
  max-width:100% !important;
  padding-left:0 !important;
  padding-right:0 !important;
  text-align:right !important;
  font-size:14px !important;
  font-weight:400 !important;
}
#events .event-round-suffix-v266{
  margin:0 !important;
  padding:0 !important;
  font-size:14px !important;
  font-weight:400 !important;
  line-height:inherit !important;
}
#events .event-date-weekday-v268{
  font-weight:400 !important;
}
@media print{
  html body #events#events .event-round-valuecell-v266{justify-content:center !important;gap:0 !important;}
  html body #events#events .event-round-valuecell-v266 #eventRound{
    field-sizing:content !important;flex:0 0 auto !important;width:auto !important;min-width:1ch !important;
    max-width:100% !important;padding-left:0 !important;padding-right:0 !important;text-align:right !important;
    font-size:9px !important;font-weight:400 !important;
  }
  html body #events#events .event-round-suffix-v266{
    margin:0 !important;padding:0 !important;font-size:9px !important;font-weight:400 !important;line-height:1 !important;
  }
  html body #events#events .event-date-weekday-v268{font-weight:400 !important;}
}

#events .event-round-valuecell-v266 #eventRound{
  text-align:center !important;
}
@media print{
  html body #events#events .event-round-valuecell-v266 #eventRound{
    text-align:center !important;
  }
}

#invites .invite-deduct-col{width:90px!important}
#invites .invite-deduct-cell{width:90px!important}
#invites .invite-deduct-select{
 width:82px;min-width:82px;height:28px;border:1px solid #cad6e4;border-radius:7px;
 background:#fff;color:#405168;font-size:9px;padding:0 5px
}
.invite-adjust-history-v216{
 max-height:150px;overflow:auto;border:1px solid #e2e8ef;border-radius:8px;background:#fbfcfe
}
.invite-adjust-history-v216>div{
 display:grid;grid-template-columns:82px 46px 1fr;gap:8px;align-items:center;
 padding:8px 9px;border-bottom:1px solid #edf1f5;font-size:9px;color:#5c6b7f
}
.invite-adjust-history-v216>div:last-child{border-bottom:0}
.invite-adjust-history-v216 b{text-align:center;color:#173a63}
.invite-adjust-history-v216 .empty{display:block;padding:14px;text-align:center;color:#919cab}
.member-usage-page-row .usage-rate-v216{color:#173a63;font-weight:800}
@media(max-width:850px){
 #inviteAdjustmentModalV216 .member-renew-summary{grid-template-columns:1fr 1fr!important}
}
@media print{
 html body #events#events #invites col:nth-child(8), html body #events#events #invites col:nth-child(9){width:0!important}
}

.pending-renewal-v244{
 border-color:#b9d5ee!important;
 background:#f3f8fd!important;
 color:#355d80!important;
}
.renew-schedule-note-v244{
 border-color:#b9d5ee!important;
 background:#f3f8fd!important;
 color:#355d80!important;
}
#renewStartDate[readonly]{
 background:#f4f6f8!important;
 color:#33475e!important;
 cursor:default;
}

.baseline-member-notice-v246{padding:9px 11px;border:1px solid #b8d5ff;background:#f3f8ff;border-radius:9px;color:#315a8a;font-size:9px;line-height:1.55}.baseline-finish-btn-v246{float:right;border:1px solid #9bbce4;background:white;border-radius:7px;padding:4px 8px;font-size:8px;color:#315a8a;cursor:pointer}

.baseline-setup-banner-v247{margin:0 0 12px;padding:10px 13px;border:1px solid #b8d5ff;background:#f3f8ff;border-radius:10px;color:#315a8a;font-size:11px;line-height:1.55}
.baseline-setup-banner-v247.done{border-color:#cbd8ce;background:#f5faf6;color:#4f6b55}
#newMemberJoinType option:disabled{color:#999}

.member-invite-summary-v255{font-size:10px;font-weight:800;color:#315c84;background:#eef5fb;border:1px solid #d7e6f4;border-radius:999px;padding:5px 9px;white-space:nowrap}
.member-invite-usage-head-v255, .member-invite-usage-row-v255{display:grid;grid-template-columns:92px 115px minmax(0,1fr) 82px;align-items:center;min-height:38px;border-bottom:1px solid #e6ebf1}
.member-invite-usage-head-v255{background:#f4f7fa;border-top:1px solid #e1e7ee;color:#536275;font-weight:800}
.member-invite-usage-head-v255 span, .member-invite-usage-row-v255 span{padding:8px 9px;font-size:10px;text-align:center;min-width:0}
.member-invite-usage-row-v255 .invite-detail-v255{text-align:left;overflow-wrap:anywhere;color:#34465c}
.member-invite-usage-row-v255 .invite-deduct-v255{font-weight:800;color:#315c84}
.member-invite-usage-list-v255 .member-empty-detail{padding:18px 12px;text-align:center}
@media(max-width:760px){
 .member-invite-usage-head-v255, .member-invite-usage-row-v255{grid-template-columns:82px 100px minmax(180px,1fr) 70px;min-width:560px}
 .invite-usage-card-v255{overflow-x:auto}
}

#events #eventDate{font-variant-numeric:tabular-nums;letter-spacing:.02em}
#members .member-profile-actions button[onclick="openRenewModal()"]{background:#eaf1ff!important;color:#174ea6!important}

#events .lunch-scroll{
  overflow-x:auto !important;
  overflow-y:hidden !important;
  width:100% !important;
}
#events .lunch-sheet{
  display:grid !important;
  grid-template-columns:105px max-content !important;
  width:max-content !important;
  min-width:100% !important;
}
#events .lunch-row-labels{
  width:105px !important;
  min-width:105px !important;
  max-width:105px !important;
}
#events .lunch-slots{
  display:grid !important;
  grid-template-columns:repeat(12,105px) !important;
  grid-auto-columns:105px !important;
  width:max-content !important;
  min-width:max-content !important;
}
#events .lunch-slot{
  width:105px !important;
  min-width:105px !important;
  max-width:105px !important;
}
#events .lunch-name, #events .companion-qty{
  min-width:0 !important;
  width:100% !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

#events .event-round-valuecell-v266{
  display:flex !important;
  align-items:center !important;
  gap:4px !important;
}
#events .event-round-valuecell-v266 #eventRound{
  flex:1 1 auto !important;
  min-width:0 !important;
}
#events .event-round-suffix-v266{
  flex:0 0 auto;
  white-space:nowrap;
  font:inherit;
  font-weight:700;
  color:inherit;
}
@media print{
  #events .event-round-valuecell-v266{display:flex !important;align-items:center !important;}
  #events .event-round-suffix-v266:not([hidden]){display:inline-flex !important;align-items:center !important;}
}

#events .event-round-valuecell-v266{display:flex !important;align-items:center !important;justify-content:center !important;gap:0 !important;}
#events .event-round-valuecell-v266 #eventRound{field-sizing:content !important;flex:0 0 auto !important;width:auto !important;min-width:1ch !important;max-width:calc(100% - 2.2em) !important;padding-left:0 !important;padding-right:0 !important;text-align:left !important;}
#events .event-round-suffix-v266{flex:0 0 auto !important;margin:0 !important;padding:0 !important;font-size:inherit !important;font-weight:400 !important;line-height:inherit !important;color:inherit !important;}
@media print{
 html body #events#events .event-round-valuecell-v266{justify-content:center !important;gap:0 !important;}
 html body #events#events .event-round-valuecell-v266 #eventRound{field-sizing:content !important;flex:0 0 auto !important;width:auto !important;min-width:1ch !important;max-width:calc(100% - 2.2em) !important;padding-left:0 !important;padding-right:0 !important;text-align:left !important;}
 html body #events#events .event-round-suffix-v266{font-size:inherit !important;font-weight:400 !important;color:inherit !important;}
}

@media screen{
  #events #otherCard{height:auto !important;min-height:0 !important;flex:0 0 auto !important;}
  #events #otherCard .field{height:auto !important;min-height:0 !important;}
  #events #otherNotes{
    min-height:44px !important;
    max-height:none !important;
    overflow-y:hidden !important;
    resize:vertical !important;
  }
}
@media print{
  html body #events#events #otherCard{height:auto !important;min-height:0 !important;max-height:none !important;}
  html body #events#events #otherCard .field{height:auto !important;min-height:0 !important;max-height:none !important;}
  html body #events#events #otherNotes{
    min-height:20px !important;
    max-height:none !important;
    overflow:hidden !important;
  }
}

.stats-detail-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;align-items:center!important;padding:5px 10px!important;min-height:26px!important}.stats-detail-row-change{grid-template-columns:minmax(0,1fr)!important}.stats-detail-inline{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.25}.stats-detail-inline b{font-size:9.5px}.stats-detail-inline small{display:inline!important;margin:0 0 0 10px!important;color:#7d8998;font-size:8.5px;line-height:1.25;white-space:nowrap}.stats-detail-row strong{text-align:right;white-space:nowrap;font-size:9px}

/* 2026-09 BLUE clean review refinements */
.stats-history-list-card .stats-detail-section{margin-top:2px}
.stats-history-list-card .stats-detail-section+.stats-detail-section{margin-top:10px;padding-top:10px;border-top:1px solid #e5ebf1}
.stats-detail-list-head{display:flex;align-items:center;justify-content:space-between;padding:5px 2px 6px}
.stats-detail-list-head b{font-size:11px;color:#31435b}.stats-detail-list-head small{font-size:9px;color:#8b97a6}
.stats-history-list-card .stats-recent-list{min-height:0!important;height:auto!important}
.compact-renew-count-modal{max-width:560px!important}
.member-profile-actions{align-items:center;flex-wrap:wrap;justify-content:flex-end}
.member-profile-actions .btn{padding:7px 10px;font-size:9px}

/* CLEAN REBUILD V2.2.3 — Dashboard top-card height alignment */
@media (min-width:1051px){
  .dashboard-main-grid > .dashboard-column:first-child > .dashboard-card:first-child,
  .dashboard-main-grid > .dashboard-column:last-child > .dashboard-card:first-child{
    height:190px;
    box-sizing:border-box;
  }
}
