.grtp-shell{width:100%;max-width:none;margin:0;padding:12px 6px 90px;box-sizing:border-box;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172033}.grtp-head{display:flex;justify-content:space-between;align-items:end;margin:2px 2px 10px}.grtp-head h2{margin:0;font-size:24px}.grtp-sub{font-size:13px;color:#687386}.grtp-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;background:#edf1f5;padding:4px;border-radius:12px;margin-bottom:12px}.grtp-tabs4{grid-template-columns:repeat(4,1fr)}.grtp-tabs5{grid-template-columns:repeat(5,1fr)}.grtp-tabs a{text-align:center;text-decoration:none;padding:9px 3px;border-radius:9px;color:#4b5563;font-size:11px;font-weight:700;min-width:0}.grtp-tabs a.active{background:#fff;color:#172033;box-shadow:0 1px 3px #0002}.grtp-card,.grtp-day{background:#fff;border:1px solid #dfe4ea;border-radius:12px;padding:12px;margin:0 0 12px;box-shadow:0 1px 2px #0000000d;box-sizing:border-box}.grtp-card h3{margin:0 0 10px}.grtp-card label{display:block;font-size:12px;font-weight:700;margin:8px 0}.grtp-card label span{font-weight:400;color:#788291}.grtp-card select,.grtp-card input{width:100%;box-sizing:border-box;padding:10px;border:1px solid #cbd2da;border-radius:8px;margin-top:4px;background:#fff}.grtp-choice{display:flex;gap:10px;flex-wrap:wrap;margin:8px 0}.grtp-choice label{font-weight:500;margin:0}.grtp-choice input{width:auto}.grtp-primary{width:100%;border:0;border-radius:9px;background:#157347;color:#fff;font-weight:800;padding:11px;margin-top:6px}.grtp-link{border:0;background:none;color:#b42318;font-weight:700}.grtp-request{display:flex;justify-content:space-between;align-items:center}.grtp-alert{background:#e9f7ef;border:1px solid #a7d8b9;border-radius:9px;padding:9px 11px;margin-bottom:10px}.grtp-alert.bad{background:#fff0f0;border-color:#efb4b4}.grtp-day{padding:0;overflow:hidden}.grtp-dayhead{display:flex;justify-content:space-between;align-items:center;padding:10px 11px;background:#f5f7f9}.grtp-dayhead strong{font-size:14px}.grtp-dayhead span{font-size:11px;color:#667085;font-weight:700}.grtp-venue{font-size:11px;color:#667085;padding:7px 10px 0}.grtp-flight-table{width:100%}.grtp-frow{display:grid;grid-template-columns:1.15fr repeat(4,1fr);border-top:1px solid #edf0f3;min-height:48px}.grtp-frow>div{min-width:0;padding:7px 3px;text-align:center;display:flex;flex-direction:column;justify-content:center;font-size:11px;font-weight:700;overflow-wrap:anywhere}.grtp-frow.hdr{min-height:26px;background:#fafbfc}.grtp-frow.hdr>div{font-size:9px;color:#77808d;padding:5px 2px}.grtp-time{font-size:12px!important}.grtp-time small{font-size:9px;color:#667085}.grtp-slot .swap{color:#d92d20;font-size:10px;font-weight:800;line-height:1.05;margin-top:2px}.grtp-unallocated{padding:8px 10px;border-top:1px solid #edf0f3;font-size:11px;line-height:1.5}.grtp-listrow{display:grid;grid-template-columns:36px minmax(70px,.8fr) 1fr auto;gap:6px;align-items:center;padding:8px;border-bottom:1px solid #edf0f3;font-size:12px}.grtp-listrow:last-child{border-bottom:0}.grtp-listrow .num{font-weight:800;color:#667085}.grtp-listrow small{color:#7b8490;font-size:9px}.grtp-section-title{font-size:15px;margin:16px 3px 8px}.grtp-admin-game{display:flex;align-items:center;justify-content:space-between;text-decoration:none;color:inherit;gap:12px}.grtp-admin-game strong{display:block;font-size:14px}.grtp-admin-game small{display:block;color:#748091;font-size:10px;margin-top:2px}.grtp-admin-count{text-align:right}.grtp-admin-count b{display:block;font-size:13px}.grtp-back{display:inline-block;margin:0 0 10px 2px;text-decoration:none;font-weight:700;color:#157347;font-size:12px}.grtp-help{margin:0 0 10px;color:#6b7280;font-size:11px}.grtp-admin-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}.grtp-flight-admin-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.grtp-flight-admin-head h3{margin:0}.grtp-flight-admin-head span{font-size:12px;color:#667085;font-weight:700}.grtp-mini{height:34px;border:1px solid #cbd2da;background:#fff;border-radius:8px;padding:0 9px;font-size:10px;font-weight:800}.grtp-mini.danger{color:#b42318;border-color:#efb4b4}.grtp-flight-card{scroll-margin-top:12px}.grtp-flight-edit{display:grid;grid-template-columns:1fr 1fr auto;gap:7px;align-items:end;margin:8px 0 10px}.grtp-flight-edit label{margin:0;font-size:10px}.grtp-flight-edit input{margin-top:3px;padding:7px 6px;font-size:12px}.grtp-autosave{display:flex;flex-direction:column;align-items:flex-end;gap:3px}.grtp-save-state{font-size:9px;min-height:12px;color:#157347;font-weight:700}.grtp-save-state.saving{color:#667085}.grtp-save-state.bad{color:#b42318}.grtp-slot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:6px 0 9px}.grtp-slot-tile{position:relative;min-width:0;min-height:52px;border:1px solid #cbd2da;background:#fff;border-radius:9px;padding:5px 3px;text-align:center;color:#172033}.grtp-slot-tile small{display:block;font-size:9px;color:#7b8490}.grtp-slot-tile strong{display:block;font-size:11px;white-space:normal;overflow-wrap:anywhere}.grtp-slot-tile.empty{border-style:dashed;color:#788291}.grtp-slot-tile.active{outline:2px solid #157347;outline-offset:1px}.grtp-remove-slot{position:absolute;right:3px;top:1px;font-size:14px;color:#b42318;line-height:1}.grtp-pick-title{font-size:10px;color:#667085;font-weight:700;margin:4px 0}.grtp-name-list,.grtp-member-list{max-height:220px;overflow-y:auto;overscroll-behavior:contain;border:1px solid #dfe4ea;border-radius:9px;background:#fff}.grtp-name-row,.grtp-member-row{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:7px;align-items:center;text-align:left;border:0;border-bottom:1px solid #edf0f3;background:#fff;padding:9px 8px;color:#172033}.grtp-name-row:last-child,.grtp-member-row:last-child{border-bottom:0}.grtp-name-row:active,.grtp-member-row:active{background:#eef8f1}.grtp-name-row strong,.grtp-member-row strong{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grtp-name-row small,.grtp-member-row small{font-size:9px;color:#7b8490;white-space:nowrap}.grtp-name-priority{font-size:10px;color:#667085;font-weight:800}.grtp-member-row{grid-template-columns:minmax(0,1fr) auto}.grtp-member-row small{display:block;grid-column:1}.grtp-member-row span{display:none;grid-column:2;grid-row:1 / span 2;color:#157347;font-weight:900}.grtp-member-row.selected{background:#eef8f1}.grtp-member-row.selected span{display:block}.grtp-member-search{margin-bottom:7px!important}.grtp-primary.busy,.grtp-mini.busy,.grtp-name-row.busy,.grtp-slot-tile.busy{opacity:.55;pointer-events:none}.grtp-standby-card{margin-top:12px}.grtp-standby{display:flex;gap:6px;flex-wrap:wrap}.grtp-standby span{background:#f2f4f7;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:700}
@media(max-width:390px){.grtp-shell{padding-left:4px;padding-right:4px}.grtp-tabs a{font-size:9px}.grtp-frow>div{font-size:10px;padding-left:1px;padding-right:1px}.grtp-listrow{grid-template-columns:32px minmax(62px,.8fr) 1fr}.grtp-listrow small{font-size:8px}.grtp-admin-fields{grid-template-columns:1fr}.grtp-flight-edit{grid-template-columns:1fr 1fr}.grtp-autosave{grid-column:1 / -1;flex-direction:row;justify-content:flex-end;align-items:center}.grtp-slot-grid{gap:4px}.grtp-slot-tile strong{font-size:10px}.grtp-name-list,.grtp-member-list{max-height:200px}}

/* v0.2.6: true full-width PWA layout and larger selection lists */
.grtp-shell,.grtp-shell>*{max-width:none!important;box-sizing:border-box;}
.grtp-shell{width:100%!important;margin:0!important;padding-left:6px!important;padding-right:6px!important;}
.grtp-card,.grtp-day,.grtp-name-list,.grtp-member-list{width:100%!important;}
.grtp-name-list,.grtp-member-list{max-height:46dvh!important;min-height:220px;}
.grtp-name-row,.grtp-member-row{min-height:48px;padding:10px 10px!important;}
.grtp-name-row strong,.grtp-member-row strong{font-size:14px!important;}
.grtp-member-row{grid-template-columns:minmax(0,1fr) auto!important;}
@media(max-width:390px){.grtp-name-list,.grtp-member-list{max-height:44dvh!important;min-height:210px}.grtp-name-row strong,.grtp-member-row strong{font-size:13px!important;}}

[hidden]{display:none!important}.grtp-member-empty{padding:12px;text-align:center;color:#7b8490;font-size:12px}.grtp-history-rtp{padding:9px 10px;border-top:1px solid #edf0f3;font-size:11px;line-height:1.55}.grtp-tabs6{display:flex;overflow-x:auto;scrollbar-width:none}.grtp-tabs6::-webkit-scrollbar{display:none}.grtp-tabs6 a{flex:0 0 74px}

.grtp-sub.withdraw-pending,.grtp-listrow.withdraw-pending small,.withdraw-mark{color:#b42318!important;font-weight:800}.grtp-slot .withdraw-mark{font-size:8px;line-height:1.05;margin-top:2px}.grtp-slot-tile.withdraw-pending{border-color:#efb4b4;background:#fff7f7}.grtp-slot-tile em{display:block;color:#b42318;font-size:8px;font-style:normal;font-weight:800;margin-top:2px}.grtp-standby span.withdraw-pending{background:#fff0f0;color:#b42318}

/* v0.2.9: date cards + carousel flight builder */
.grtp-date-title{font-size:12px;font-weight:800;margin:6px 0 5px}.grtp-date-strip{display:flex;gap:7px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 1px 7px;scrollbar-width:none}.grtp-date-strip::-webkit-scrollbar{display:none}.grtp-date-chip{flex:0 0 82px!important;margin:0!important;scroll-snap-align:start;border:0!important;background:transparent!important;padding:0!important;color:#172033!important;-webkit-appearance:none!important;appearance:none!important;box-shadow:none!important}.grtp-date-chip span{display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #cbd2da;border-radius:10px;padding:8px 6px;background:#fff;min-height:46px;box-sizing:border-box}.grtp-date-chip b{font-size:13px;color:#172033}.grtp-date-chip small{font-size:10px;color:#667085;margin-top:2px}.grtp-date-chip.selected span{border-color:#157347;background:#eef8f1;box-shadow:0 0 0 1px #157347 inset}.grtp-date-chip:focus,.grtp-date-chip:active{outline:0!important;background:transparent!important;color:#172033!important}.grtp-date-chip:focus-visible span{outline:2px solid #9ccfb2;outline-offset:2px}.grtp-flight-carousel{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;padding:1px 1px 8px;scrollbar-width:none}.grtp-flight-carousel::-webkit-scrollbar{display:none}.grtp-flight-carousel>.grtp-flight-card{flex:0 0 calc(100% - 16px);scroll-snap-align:start;scroll-snap-stop:always;margin-bottom:0}.grtp-flight-draft{border-style:dashed;background:#fbfcfd}.grtp-flight-edit{grid-template-columns:1fr 1fr!important}.grtp-flight-edit select{margin-top:3px;padding:7px 6px;font-size:12px}.grtp-flight-admin-head .grtp-help{margin:0;font-size:9px}.grtp-pick-title{margin-top:8px;font-size:11px}.grtp-name-list{max-height:34dvh!important;min-height:190px}.grtp-save-state{display:block;text-align:right;grid-column:1/-1;min-height:12px}.grtp-flight-time,.grtp-draft-time{font-variant-numeric:tabular-nums;letter-spacing:.08em}


/* v0.2.10: contain page horizontally; only intentional strips scroll */
.grtp-shell{overflow-x:clip!important;min-width:0!important;}
.grtp-shell .grtp-card,.grtp-shell .grtp-day,.grtp-shell .grtp-list,.grtp-shell .grtp-flight-table{min-width:0!important;max-width:100%!important;}
.grtp-date-strip,.grtp-flight-carousel,.grtp-tabs6{width:100%!important;max-width:100%!important;min-width:0!important;}
.grtp-listrow{grid-template-columns:34px minmax(78px,.9fr) minmax(52px,auto) minmax(0,1.15fr);gap:7px;}
.grtp-list-status{font-size:11px!important;font-weight:900!important;white-space:nowrap;text-align:left;}
.grtp-status-booked{color:#15803d!important;font-size:16px!important;line-height:1;}
.grtp-status-withdrawn{color:#d92d20!important;font-size:16px!important;line-height:1;}
.grtp-status-waitlist{color:#8a5a00!important;}
.grtp-status-standby{color:#667085!important;font-weight:700!important;}
.grtp-list-remarks{min-width:0;text-align:right;color:#667085;white-space:normal;overflow-wrap:anywhere;}
@media(max-width:390px){.grtp-listrow{grid-template-columns:28px minmax(72px,.9fr) minmax(48px,auto) minmax(0,1fr);gap:5px}.grtp-list-status{font-size:10px!important}.grtp-status-booked,.grtp-status-withdrawn{font-size:15px!important}.grtp-list-remarks{font-size:10px}}

/* v0.2.11: hard viewport containment without disabling intentional carousels */
.grtp-shell{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow-x:hidden!important;
  overscroll-behavior-x:none!important;
}
.grtp-shell *{box-sizing:border-box;max-width:100%;}
.grtp-shell .grtp-date-strip,
.grtp-shell .grtp-flight-carousel,
.grtp-shell .grtp-tabs6{
  max-width:100%!important;
  overflow-x:auto!important;
  overscroll-behavior-x:contain!important;
  -webkit-overflow-scrolling:touch;
}
.grtp-logout{margin:0}.grtp-logout .grtp-link{color:#59635d;padding:7px 4px;cursor:pointer}

.grtp-shell a,.grtp-shell a:hover,.grtp-shell a:focus,.grtp-shell a:visited{text-decoration:none!important;text-decoration-line:none!important;border-bottom:0!important;box-shadow:none!important}

/* v0.2.16: member-app full-width shell + fixed five-tab navigation */
body.goofy-rtp-page{overflow-x:hidden!important;background:#f5f7f6!important}
body.goofy-rtp-page #colophon,body.goofy-rtp-page .site-footer,body.goofy-rtp-page footer.site-footer,body.goofy-rtp-page .ast-small-footer,body.goofy-rtp-page .site-primary-footer-wrap,body.goofy-rtp-page .site-below-footer-wrap,body.goofy-rtp-page .ast-footer-copyright{display:none!important}
body.goofy-rtp-page #content,body.goofy-rtp-page .site-content,body.goofy-rtp-page .ast-container,body.goofy-rtp-page #primary,body.goofy-rtp-page .content-area,body.goofy-rtp-page article.page,body.goofy-rtp-page .entry-content{width:100%!important;max-width:none!important;margin:0!important;padding-left:0!important;padding-right:0!important}
body.goofy-rtp-page .ast-container{display:block!important}
.grtp-shell{max-width:760px!important;margin:0 auto!important;padding:10px 10px calc(92px + env(safe-area-inset-bottom))!important;background:#f5f7f6!important;min-height:100dvh}
.grtp-main{width:100%;min-width:0}
.grtp-hub-title{margin-top:14px!important}
.grtp-bottom-nav{position:fixed;z-index:99990;left:50%;bottom:0;transform:translateX(-50%);width:min(100%,760px);height:68px;padding:4px 4px calc(4px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(5,1fr);align-items:end;background:#fff;border-top:1px solid #d9e0dc;box-shadow:0 -4px 16px rgba(20,40,30,.08)}
.grtp-nav-item{position:relative;display:flex!important;min-width:0;height:56px;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#6d7772!important;font-size:9px!important;font-weight:800!important;line-height:1.05;text-align:center;padding:4px 1px!important}
.grtp-nav-item.active{color:#147943!important}
.grtp-nav-icon{display:block;font-size:21px;line-height:1;height:24px}
.grtp-nav-submit{transform:translateY(-10px)}
.grtp-nav-plus{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#16884b;color:#fff;font-size:31px;font-weight:400;line-height:1;box-shadow:0 5px 12px rgba(22,136,75,.28);border:4px solid #fff;margin-bottom:1px}
.grtp-nav-submit.active .grtp-nav-plus{background:#0f6f3b}
.grtp-nav-submit>span:last-child{color:#147943;font-weight:900;white-space:nowrap}
.grtp-more-grid{display:grid;gap:10px;margin-top:10px}
.grtp-more-card{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;align-items:center;background:#fff;border:1px solid #dde4e0;border-radius:14px;padding:15px 14px!important;color:#202a24!important}
.grtp-more-card strong{font-size:15px}.grtp-more-card span{grid-column:1;color:#6a756f;font-size:11px}.grtp-more-card em{grid-column:2;grid-row:1 / span 2;font-size:24px;font-style:normal;color:#8a948e}
@media(max-width:480px){.grtp-shell{padding-left:6px!important;padding-right:6px!important}.grtp-bottom-nav{width:100%}.grtp-nav-item{font-size:8px!important}.grtp-nav-plus{width:42px;height:42px;font-size:29px}}
.grtp-shell{max-width:none!important;width:100%!important;margin:0!important}
.grtp-bottom-nav{width:100%!important;max-width:none!important}
.grtp-more-back{display:inline-block!important;margin:4px 0 10px;padding:7px 2px!important;font-size:13px!important;font-weight:850!important;color:#147943!important}

/* v0.2.17: stronger member hierarchy + compact status placement */
.grtp-head .grtp-sub{display:inline-flex!important;align-items:center;margin-top:5px;padding:5px 10px;border-radius:999px;background:#e2f2e7;color:#115f34!important;font-size:12px!important;font-weight:900!important;letter-spacing:.01em;box-shadow:inset 0 0 0 1px #c4dfcd}
.grtp-hub-panel{margin:10px 0 16px;padding:0 6px 7px;border-radius:16px;border:1px solid #d4e1d8;box-shadow:0 6px 18px rgba(24,67,41,.08);overflow:hidden}
.grtp-hub-panel .grtp-hub-title{margin:0 -6px 8px!important;padding:11px 12px!important;color:#fff!important;font-size:16px!important;font-weight:950!important;letter-spacing:.01em}
.grtp-hub-published{background:#edf7f0;border-color:#b9d8c4}.grtp-hub-published .grtp-hub-title{background:#176f3e}
.grtp-hub-listing{background:#f3f6fb;border-color:#cbd8e7}.grtp-hub-listing .grtp-hub-title{background:#2d5f8b}
.grtp-hub-panel .grtp-day,.grtp-hub-panel .grtp-card{background:#fff!important;border-color:rgba(83,109,92,.20)!important;box-shadow:0 2px 8px rgba(35,55,43,.04)!important}
.grtp-slot>span{display:flex;align-items:center;justify-content:center;gap:3px}.grtp-slot .withdraw-mark{display:inline!important;margin:0!important;font-size:11px!important;line-height:1!important;color:inherit!important}
.grtp-listrow{grid-template-columns:30px minmax(0,1fr) minmax(0,1.1fr)!important;gap:5px!important;align-items:center}
.grtp-list-name-status{display:flex;align-items:center;gap:5px;min-width:0;flex-wrap:wrap}.grtp-list-name-status strong{min-width:0}.grtp-list-status{display:inline-flex!important;align-items:center;margin:0!important;line-height:1.05!important}
.grtp-status-booked,.grtp-status-withdrawn{font-size:15px!important}.grtp-status-withdraw-request{font-size:10px!important;color:#b42318!important;font-weight:900!important;white-space:nowrap}
.grtp-list-remarks{text-align:right!important}
@media(max-width:390px){.grtp-listrow{grid-template-columns:25px minmax(0,1.2fr) minmax(0,.9fr)!important;gap:4px!important}.grtp-list-name-status{gap:3px}.grtp-status-withdraw-request{font-size:9px!important}}


/* v0.2.18: aligned list statuses, highlighted date bars, clean member header, stable admin deep-links */
.grtp-head{align-items:center!important}
.grtp-head .grtp-sub{
  display:block!important;
  margin-top:4px!important;
  padding:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#176f3e!important;
  font-size:13px!important;
  font-weight:900!important;
  letter-spacing:.01em;
}
.grtp-logout .grtp-link{
  border:1px solid #cad9cf!important;
  background:#fff!important;
  color:#32463a!important;
  border-radius:9px!important;
  padding:8px 10px!important;
  font-size:12px!important;
  font-weight:800!important;
  box-shadow:0 2px 7px rgba(20,50,31,.05)!important;
  cursor:pointer;
}

/* Published-flight date treatment: current-site yellow with red text. */
.grtp-hub-published .grtp-dayhead{
  background:#ffe36e!important;
  border-bottom:1px solid #e6c84e!important;
}
.grtp-hub-published .grtp-dayhead strong,
.grtp-hub-published .grtp-dayhead span{
  color:#b42318!important;
  font-weight:900!important;
}

/* RTP-list date treatment: contrasting cool blue, distinct from published flights. */
.grtp-hub-listing .grtp-dayhead{
  background:#dcecff!important;
  border-bottom:1px solid #bfd7f2!important;
}
.grtp-hub-listing .grtp-dayhead strong,
.grtp-hub-listing .grtp-dayhead span{
  color:#234f7d!important;
  font-weight:900!important;
}

/* Small red X for a booked/published player with a pending withdrawal. */
.grtp-slot .withdraw-mark{
  display:inline-block!important;
  margin-left:2px!important;
  color:#b42318!important;
  font-size:11px!important;
  font-weight:950!important;
  line-height:1!important;
  transform:translateY(-.5px);
}

/* Keep all RTP-list statuses in one aligned column, close to the names. */
.grtp-listrow{
  grid-template-columns:30px minmax(92px,150px) 86px minmax(0,1fr)!important;
  gap:5px!important;
  align-items:center!important;
}
.grtp-list-name{
  min-width:0;
  overflow-wrap:anywhere;
  line-height:1.15;
}
.grtp-list-status{
  justify-self:start!important;
  align-self:center!important;
  margin:0!important;
  white-space:nowrap!important;
}
.grtp-status-booked,.grtp-status-withdrawn{font-size:15px!important;line-height:1!important}
.grtp-status-withdraw-request{font-size:10px!important}
.grtp-list-remarks{min-width:0!important;text-align:right!important}
@media(max-width:480px){
  .grtp-listrow{grid-template-columns:25px minmax(82px,126px) 78px minmax(0,1fr)!important;gap:4px!important}
  .grtp-list-status{font-size:9.5px!important}
  .grtp-status-booked,.grtp-status-withdrawn{font-size:14px!important}
  .grtp-status-withdraw-request{font-size:8.5px!important}
}
@media(max-width:360px){
  .grtp-listrow{grid-template-columns:23px minmax(74px,108px) 72px minmax(0,1fr)!important;gap:3px!important}
}

/* v0.2.19: admin flight assignment polish */
.grtp-admin-date .grtp-dayhead{
  background:#dcecff!important;
  border-bottom:1px solid #bfd7f2!important;
}
.grtp-admin-date .grtp-dayhead strong,
.grtp-admin-date .grtp-dayhead span{
  color:#234f7d!important;
  font-weight:900!important;
}
.grtp-tee-field{display:flex;flex-direction:column;gap:3px;min-width:0}
.grtp-tee-field>span{font-size:11px;font-weight:800;color:#475467}
.grtp-tee-buttons{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.grtp-tee-btn{appearance:none;border:1px solid #b8c5bc;background:#fff;color:#34473a;border-radius:8px;padding:8px 5px;font-size:12px;font-weight:850;line-height:1;cursor:pointer;min-height:34px}
.grtp-tee-btn.selected{background:#176f3e;color:#fff;border-color:#176f3e;box-shadow:0 0 0 1px #176f3e inset}
.grtp-slot-tile.filled{background:#e7f4ec!important;border-color:#9bc8aa!important;color:#173f27!important;cursor:pointer}
.grtp-slot-tile.filled:hover,.grtp-slot-tile.filled:focus-visible{background:#d9eddf!important;border-color:#6eae82!important}
.grtp-slot-tile.filled:active{transform:translateY(1px)}
.grtp-slot-tile.filled strong{color:#173f27!important}
.grtp-slot-tile.filled.withdraw-pending{background:#fff0ef!important;border-color:#e5aaa4!important}
.grtp-slot-tile.filled.withdraw-pending strong,.grtp-slot-tile.filled.withdraw-pending em{color:#9f241a!important}

/* v0.2.20: persistent withdrawal-request warnings + guest ownership */
.grtp-list-person,.grtp-name-person{min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.grtp-list-person .grtp-list-name,.grtp-name-person strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.grtp-guest-of{display:block!important;margin-top:1px;color:#667085!important;font-size:9px!important;font-weight:700!important;line-height:1.15;white-space:normal!important}
.grtp-name-row.withdraw-pending{background:#fff3f2;border-left:3px solid #d92d20}
.grtp-name-row.withdraw-pending>small{color:#b42318;font-weight:800}
.grtp-slot-guest{display:block;color:#667085;font-size:8px;font-weight:700;line-height:1.1;margin-top:1px}
.grtp-slot-tile.withdraw-pending .grtp-slot-guest{color:#8f3b34}

/* v0.2.22: full flight rearrangement board */
.grtp-assignment-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0 7px}
.grtp-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:5px;flex:1;max-width:520px}
.grtp-mode-btn{appearance:none;border:1px solid #b8c5bc;background:#fff;color:#34473a;border-radius:10px;padding:9px 8px;font-size:12px;font-weight:900;cursor:pointer}
.grtp-mode-btn.active{background:#176f3e;color:#fff;border-color:#176f3e}
.grtp-balance{font-size:11px;font-weight:900;color:#176f3e;white-space:nowrap}.grtp-balance.bad{color:#b42318}
.grtp-mode-help{margin:0 0 8px;padding:8px 10px;border:1px solid #d8e2dc;border-radius:10px;background:#f8faf9;color:#536158;font-size:10px;line-height:1.35}
.grtp-holding{position:sticky;top:0;z-index:25;margin:8px 0 10px;padding:8px;border:1px solid #e0c15e;border-radius:12px;background:#fff8d9;box-shadow:0 3px 10px rgba(55,45,10,.08)}
.grtp-holding-head{display:flex;align-items:center;gap:5px;margin-bottom:6px;color:#755b00}.grtp-holding-head strong{font-size:12px}.grtp-holding-head span{font-size:10px;font-weight:900}
.grtp-to-place{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}
.grtp-hold-player{flex:0 0 auto;min-width:105px;max-width:160px;border:1px solid #d7b73e;background:#fff;border-radius:9px;padding:7px 8px;text-align:left;color:#2d342f;cursor:pointer}
.grtp-hold-player strong{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.grtp-hold-player small,.grtp-hold-player em{display:block;font-size:8px;color:#667085;font-style:normal}.grtp-hold-player.withdraw-pending{border-color:#e09b93;background:#fff1ef}.grtp-hold-player.withdraw-pending em{color:#b42318;font-weight:900}
.grtp-holding-empty{font-size:10px;color:#7a827d;padding:4px 1px}
.grtp-flight-board-wrap{width:100%;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;padding-bottom:4px}
.grtp-flight-board{min-width:700px;display:flex;flex-direction:column;gap:8px}
.grtp-flight-row{background:#fff;border:1px solid #ccd8d0;border-radius:12px;overflow:hidden;box-shadow:0 2px 7px rgba(25,54,36,.05)}
.grtp-flight-row-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 9px;background:#dcecff;border-bottom:1px solid #bfd7f2}
.grtp-flight-label{display:flex;align-items:baseline;gap:7px;min-width:150px}.grtp-flight-label strong{font-size:12px;color:#234f7d}.grtp-flight-label span{font-size:10px;font-weight:850;color:#365e86}
.grtp-flight-compact-edit{display:flex;align-items:center;gap:5px;min-width:0}.grtp-flight-compact-edit .grtp-flight-time,.grtp-flight-compact-edit .grtp-draft-time{width:58px!important;min-width:58px!important;height:30px!important;padding:4px 6px!important;font-size:11px!important;text-align:center}.grtp-flight-compact-edit .grtp-tee-btn{min-height:30px!important;padding:5px 8px!important;font-size:10px!important}.grtp-flight-compact-edit .grtp-mini{min-height:30px;padding:5px 8px;font-size:9px}.grtp-flight-compact-edit .grtp-save-state{font-size:9px;min-width:36px}
.grtp-flight-four{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:0}
.grtp-board-slot{position:relative;min-width:0;padding:6px;border-right:1px solid #e6ece8}.grtp-board-slot:last-child{border-right:0}.grtp-pos{position:absolute;right:7px;top:7px;z-index:2;font-size:8px;color:#8a948e;font-weight:900}
.grtp-layer{width:100%;min-height:48px;border:1px solid #d8e2dc;border-radius:8px;background:#fff;padding:5px 7px;text-align:left;color:#25332b;cursor:pointer;display:flex;flex-direction:column;justify-content:center;position:relative}
.grtp-layer+.grtp-layer{margin-top:4px}.grtp-layer-label{display:none;font-size:7px;text-transform:uppercase;letter-spacing:.04em;color:#8a948e;font-weight:900}.grtp-layer strong{font-size:10px;line-height:1.15;padding-right:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.grtp-layer small{font-size:7.5px;color:#667085;line-height:1.1}.grtp-layer em{font-size:7.5px;color:#b42318;font-weight:900;font-style:normal}
.grtp-registered-layer.occupied{background:#eef7f1;border-color:#b8d8c3}.grtp-registered-layer.empty{background:#fafbfa;border-style:dashed;color:#7c8780}
.grtp-playing-layer{min-height:32px}.grtp-playing-layer.occupied:not(.override){background:#f6f8f7;color:#718078}.grtp-playing-layer.override{background:#fff1ef;border-color:#e5aaa4;color:#b42318}.grtp-playing-layer.empty{background:#fff8f7;border-style:dashed;color:#a35b54}
.grtp-layer.inactive-layer{opacity:.62;cursor:default}.grtp-layer.inactive-layer .grtp-layer-label{display:block}.grtp-layer.selected-target{outline:3px solid #f3c43d;outline-offset:1px;background:#fff9dc!important}
.grtp-flight-draft{border-style:dashed}.grtp-flight-draft .grtp-flight-row-head{background:#eef3f0}.grtp-draft-slot.active{outline:3px solid #f3c43d;outline-offset:1px}
.grtp-available{margin-top:11px}.grtp-available .grtp-pick-title{font-size:11px;font-weight:900;margin-bottom:6px;color:#475467}
.grtp-admin-add-rtp{margin-top:12px!important}.grtp-admin-add-rtp summary{display:flex;justify-content:space-between;gap:8px;cursor:pointer;list-style:none}.grtp-admin-add-rtp summary span{font-size:9px;color:#667085}.grtp-admin-add-body{margin-top:10px}.grtp-admin-member-search{width:100%;margin-bottom:7px!important}.grtp-admin-member-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;max-height:210px;overflow:auto}.grtp-admin-member-option{display:flex;align-items:center;gap:5px;padding:6px;border:1px solid #dde5e0;border-radius:7px;font-size:10px;background:#fff}.grtp-admin-member-option input{margin:0}.grtp-admin-add-selected{margin-top:8px}
@media(max-width:760px){.grtp-assignment-toolbar{align-items:stretch;flex-direction:column}.grtp-balance{align-self:flex-end}.grtp-flight-board{min-width:650px}.grtp-flight-four{grid-template-columns:repeat(4,minmax(140px,1fr))}.grtp-holding{top:0}.grtp-admin-member-list{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v0.2.23: simpler admin workflow + readable playing assignment */
.grtp-admin-section{margin:12px 0 18px}
.grtp-admin-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin:0 2px 9px}
.grtp-admin-section-head h3{margin:0;color:#172033;font-size:18px;font-weight:900;line-height:1.15}
.grtp-admin-section-head p{margin:3px 0 0;color:#475467;font-size:13px;font-weight:650;line-height:1.3}
.grtp-playing-balance{flex:0 0 auto;font-size:13px;font-weight:900;color:#176f3e;white-space:nowrap}.grtp-playing-balance:not(:empty){padding-bottom:1px}
.grtp-flight-card .grtp-flight-admin-head h3{font-size:17px;font-weight:900;color:#172033}
.grtp-flight-card .grtp-flight-edit label,.grtp-flight-card .grtp-tee-field>span{font-size:12px!important;color:#344054!important;font-weight:850!important}
.grtp-flight-card .grtp-flight-time,.grtp-flight-card .grtp-draft-time{font-size:14px!important;font-weight:800!important;color:#172033!important}
.grtp-flight-card .grtp-tee-btn{font-size:13px!important;font-weight:900!important}
.grtp-slot-grid{gap:5px!important}
.grtp-slot-tile{min-height:44px!important;padding:4px 3px!important}
.grtp-slot-tile small{font-size:9.5px!important;font-weight:800!important}
.grtp-slot-tile strong{font-size:13.5px!important;line-height:1.12!important;font-weight:900!important;color:#172033!important}
.grtp-slot-tile em{display:block;font-size:9px;font-style:normal;font-weight:900;color:#b42318;line-height:1.1;margin-top:1px}
.grtp-slot-guest{font-size:9px!important;color:#475467!important}
.grtp-pick-title{font-size:13px!important;color:#344054!important;font-weight:850!important;margin:9px 1px 6px!important}
.grtp-name-row strong{font-size:14.5px!important;font-weight:900!important;color:#172033!important}
.grtp-name-row small{font-size:10.5px!important;font-weight:750!important;color:#667085!important}
.grtp-name-priority{font-size:11px!important}
.grtp-guest-of{font-size:10px!important;color:#667085!important}

.grtp-playing-section{border-top:2px solid #dbe5df;padding-top:14px}
.grtp-playing-holding{margin:0 0 9px;padding:8px 9px;border:1px solid #e3c55c;border-radius:10px;background:#fff8d9}
.grtp-playing-holding>strong{display:block;margin-bottom:5px;color:#6f5700;font-size:13px;font-weight:900}
.grtp-playing-to-place{display:flex;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:1px}
.grtp-playing-hold{flex:0 0 auto;appearance:none;border:1px solid #d7b73e;background:#fff;border-radius:8px;padding:6px 9px;min-width:92px;max-width:150px;text-align:left;color:#172033;cursor:pointer}
.grtp-playing-hold strong{display:block;font-size:13px;font-weight:900;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.grtp-playing-hold small{display:block;margin-top:1px;font-size:9px;font-weight:700;color:#667085}
.grtp-playing-hold.withdraw-pending{background:#fff0ef;border-color:#dc948b}
.grtp-playing-board-wrap{width:100%;max-width:100%;overflow-x:auto;overflow-y:visible;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;padding-bottom:5px}
.grtp-playing-board{min-width:560px;display:flex;flex-direction:column;gap:6px}
.grtp-playing-flight{overflow:hidden;border:1px solid #ccd8d0;border-radius:10px;background:#fff;box-shadow:0 1px 3px rgba(20,50,30,.05)}
.grtp-playing-flight-head{display:flex;align-items:center;gap:8px;padding:5px 8px;background:#dcecff;border-bottom:1px solid #bfd7f2;color:#234f7d}
.grtp-playing-flight-head strong{font-size:14px;font-weight:950;font-variant-numeric:tabular-nums}
.grtp-playing-flight-head span{font-size:11px;font-weight:850}
.grtp-playing-four{display:grid;grid-template-columns:repeat(4,minmax(125px,1fr));gap:0}
.grtp-playing-cell{min-width:0;padding:5px;border-right:1px solid #e5ebe7}.grtp-playing-cell:last-child{border-right:0}
.grtp-playing-registered{appearance:none;width:100%;min-height:30px;border:0;background:transparent;padding:2px 3px;text-align:center;color:#172033;cursor:default}
.grtp-playing-registered.can-pick{cursor:pointer}
.grtp-playing-registered.can-pick:active{background:#eef8f1;border-radius:6px}
.grtp-playing-registered strong{display:block;font-size:13.5px;font-weight:950;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#172033}
.grtp-playing-registered small{display:block;margin-top:1px;font-size:8.5px;font-weight:700;color:#667085;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.grtp-playing-registered.vacant strong{font-size:11px;color:#98a2b3;font-weight:800}
.grtp-playing-box{appearance:none;width:100%;height:27px;min-height:27px;margin-top:2px;border:1px solid transparent;border-radius:6px;padding:2px 4px;text-align:center;cursor:default;background:#fff}
.grtp-playing-box.normal{background:#fff;border-color:#edf1ef}
.grtp-playing-box.empty{background:#fff0ef;border-color:#e7a59e;color:#a3271d;cursor:pointer}
.grtp-playing-box.empty strong{font-size:11.5px;font-weight:950;color:#a3271d}
.grtp-playing-box.override{background:#fff0ef;border-color:#e7a59e;cursor:pointer}
.grtp-playing-box.override strong{display:block;font-size:12.5px;font-weight:950;color:#c12a1e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.grtp-playing-box.selected-target{outline:3px solid #f3c43d;outline-offset:1px;background:#fff7cf!important}
.grtp-playing-box.disabled{background:#f7f8f7;border-color:#eef1ef}
.grtp-holding-empty{font-size:11px!important;color:#667085!important}
.grtp-admin-add-rtp summary strong{font-size:14px}.grtp-admin-add-rtp summary span{font-size:10px!important}.grtp-admin-member-option{font-size:12px!important;font-weight:700!important}

@media(max-width:760px){
  .grtp-admin-section-head{align-items:flex-start;flex-direction:column;gap:3px}
  .grtp-admin-section-head h3{font-size:17px}
  .grtp-admin-section-head p{font-size:12px}
  .grtp-playing-board{min-width:540px}
  .grtp-playing-four{grid-template-columns:repeat(4,minmax(120px,1fr))}
}

/* v0.2.24 admin utilities */
.grtp-admin-tools{margin-top:18px}
.grtp-admin-tools details{margin:10px 0}
.grtp-admin-tools summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:17px;line-height:1.35}
.grtp-admin-tools summary strong{font-size:18px;color:#1f2937}
.grtp-admin-tools summary span{font-size:14px;color:#4b5563;font-weight:600}
.grtp-maintenance-body{display:grid;gap:10px;margin-top:12px}
.grtp-maint-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;border:1px solid #d7dee7;border-radius:10px;background:#fff}
.grtp-maint-row>div{min-width:0}
.grtp-maint-row strong{display:block;font-size:16px;color:#1f2937;margin-bottom:3px}
.grtp-maint-row span{display:block;font-size:14px;line-height:1.35;color:#4b5563}
.grtp-maint-row.critical{border-color:#efb5b5;background:#fff8f8}
.grtp-maint-row .grtp-mini{flex:0 0 auto;min-height:38px;padding:7px 12px;font-size:14px;font-weight:700}
@media(max-width:640px){.grtp-maint-row{align-items:stretch;flex-direction:column}.grtp-maint-row .grtp-mini{width:100%}.grtp-admin-tools summary{align-items:flex-start;flex-direction:column;gap:2px}}

/* v0.2.25: RTP list readability + playing-replacement emphasis */
.grtp-listrow{
  padding-top:9px!important;
  padding-bottom:9px!important;
}
.grtp-listrow .num{
  font-size:12px!important;
  color:#475467!important;
}
.grtp-list-name{
  font-size:14.5px!important;
  font-weight:900!important;
  color:#172033!important;
  line-height:1.12!important;
}
.grtp-list-status{
  font-size:11px!important;
  font-weight:800!important;
}
.grtp-status-booked,.grtp-status-withdrawn{
  font-size:17px!important;
}
.grtp-status-withdraw-request{
  font-size:10.5px!important;
}
.grtp-list-remarks{
  font-size:11.5px!important;
  line-height:1.2!important;
  color:#475467!important;
  font-weight:650!important;
}
.grtp-list-person .grtp-guest-of{
  font-size:10px!important;
}
/* When an actual playing name is shown below, keep the club-registered name
   readable but deliberately secondary. */
.grtp-slot .grtp-registered-replaced{
  color:#8b949e!important;
  font-weight:700!important;
}
.grtp-slot .swap{
  color:#c6281c!important;
  font-size:11px!important;
  font-weight:900!important;
}
.grtp-playing-registered.replaced strong{
  color:#8b949e!important;
  font-weight:800!important;
}
.grtp-playing-registered.replaced small{
  color:#9aa2ab!important;
}
@media(max-width:480px){
  .grtp-list-name{font-size:13.5px!important}
  .grtp-list-remarks{font-size:10.5px!important}
  .grtp-list-status{font-size:10px!important}
  .grtp-status-booked,.grtp-status-withdrawn{font-size:16px!important}
  .grtp-status-withdraw-request{font-size:9px!important}
}
@media(max-width:360px){
  .grtp-list-name{font-size:12.5px!important}
  .grtp-list-remarks{font-size:10px!important}
}

/* v0.2.26: member readability + simpler admin RTP picker */
/* Public date bars: stronger date without changing the established card layout. */
.grtp-hub-published .grtp-dayhead strong,
.grtp-hub-listing .grtp-dayhead strong,
.grtp-day .grtp-dayhead strong{
  font-size:17px!important;
  line-height:1.1!important;
  font-weight:900!important;
}
.grtp-hub-published .grtp-dayhead span,
.grtp-hub-listing .grtp-dayhead span{
  font-size:12px!important;
}
/* Published-flight course/venue should be clearly readable, not pale theme text. */
.grtp-hub-published .grtp-venue{
  color:#344054!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1.25!important;
  padding-top:9px!important;
}
/* Flight grid readability. Keep the five-column geometry unchanged. */
.grtp-hub-published .grtp-frow>div{
  font-size:13px!important;
  line-height:1.15!important;
}
.grtp-hub-published .grtp-time{
  font-size:15px!important;
  font-weight:900!important;
  color:#172033!important;
}
.grtp-hub-published .grtp-time small{
  font-size:10.5px!important;
  font-weight:800!important;
  color:#475467!important;
  margin-top:2px!important;
}
.grtp-hub-published .grtp-slot>span{
  font-size:13.5px!important;
  line-height:1.1!important;
}
.grtp-hub-published .grtp-slot .swap{
  font-size:11.5px!important;
}
/* RTP List names are deliberately regular weight; status stays visually distinct. */
.grtp-hub-listing .grtp-list-name,
.grtp-hub-listing .grtp-list-person .grtp-list-name{
  font-weight:500!important;
  font-size:15px!important;
  color:#172033!important;
}
/* Normal Scorecard-like admin member list: one readable row per member. */
.grtp-admin-member-list{
  max-height:360px!important;
  border:1px solid #d7dee7!important;
  border-radius:10px!important;
  overflow-y:auto!important;
  background:#fff!important;
}
.grtp-admin-member-option{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 24px!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  margin:0!important;
  padding:11px 12px!important;
  border:0!important;
  border-bottom:1px solid #edf0f3!important;
  border-radius:0!important;
  background:#fff!important;
  box-sizing:border-box!important;
  cursor:pointer!important;
}
.grtp-admin-member-option:last-child{border-bottom:0!important}
.grtp-admin-member-option:hover{background:#f7faf8!important}
.grtp-admin-member-option:has(input:checked){background:#eef8f1!important}
.grtp-admin-member-name{
  min-width:0!important;
  font-size:15px!important;
  line-height:1.2!important;
  font-weight:700!important;
  color:#172033!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.grtp-admin-member-option input[type="checkbox"]{
  position:absolute!important;
  opacity:0!important;
  pointer-events:none!important;
  width:1px!important;
  height:1px!important;
}
.grtp-admin-member-check{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:22px!important;
  height:22px!important;
  border:1px solid #bdc7d2!important;
  border-radius:6px!important;
  color:transparent!important;
  background:#fff!important;
  font-size:14px!important;
  font-weight:900!important;
  box-sizing:border-box!important;
}
.grtp-admin-member-option:has(input:checked) .grtp-admin-member-check{
  background:#157347!important;
  border-color:#157347!important;
  color:#fff!important;
}
.grtp-admin-member-search{
  font-size:15px!important;
  min-height:42px!important;
}
@media(max-width:480px){
  .grtp-hub-published .grtp-dayhead strong,
  .grtp-hub-listing .grtp-dayhead strong,
  .grtp-day .grtp-dayhead strong{font-size:16px!important}
  .grtp-hub-published .grtp-time{font-size:14px!important}
  .grtp-hub-published .grtp-slot>span{font-size:12.5px!important}
  .grtp-hub-listing .grtp-list-name,
  .grtp-hub-listing .grtp-list-person .grtp-list-name{font-size:14px!important;font-weight:500!important}
}
/* v0.2.28 Admin Add RTP: ordered fast-entry selector */
.grtp-admin-add-body .grtp-admin-member-list{
  display:block!important;
  grid-template-columns:none!important;
  width:100%!important;
  max-height:360px!important;
  overflow-y:auto!important;
  border:1px solid #d7dee7!important;
  border-radius:10px!important;
  background:#fff!important;
}
.grtp-admin-add-body .grtp-admin-member-option{
  appearance:none!important;
  display:block!important;
  width:100%!important;
  min-height:46px!important;
  margin:0!important;
  padding:11px 13px!important;
  border:0!important;
  border-bottom:1px solid #edf0f3!important;
  border-radius:0!important;
  background:#fff!important;
  text-align:left!important;
  cursor:pointer!important;
  opacity:1!important;
}
.grtp-admin-add-body .grtp-admin-member-option[hidden]{display:none!important}
.grtp-admin-add-body .grtp-admin-member-option:last-of-type{border-bottom:0!important}
.grtp-admin-add-body .grtp-admin-member-option:not(.selected-disabled):hover{background:#f7faf8!important}
.grtp-admin-add-body .grtp-admin-member-option.selected-disabled,
.grtp-admin-add-body .grtp-admin-member-option:disabled{
  display:block!important;
  background:#f1f3f5!important;
  color:#98a2b3!important;
  cursor:default!important;
  opacity:1!important;
}
.grtp-admin-add-body .grtp-admin-member-option.selected-disabled .grtp-admin-member-name,
.grtp-admin-add-body .grtp-admin-member-option:disabled .grtp-admin-member-name{
  color:#98a2b3!important;
  font-weight:500!important;
}
.grtp-admin-add-body .grtp-admin-member-name{
  display:block!important;
  font-size:16px!important;
  line-height:1.25!important;
  font-weight:600!important;
  color:#172033!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.grtp-admin-selected-wrap{
  margin:0 0 10px;
  padding:10px;
  border:1px solid #d7dee7;
  border-radius:10px;
  background:#f8fafb;
}
.grtp-admin-selected-title{
  margin:0 0 7px;
  font-size:13px;
  font-weight:800;
  color:#344054;
}
.grtp-admin-selected-list{display:flex;flex-direction:column;gap:5px}
.grtp-admin-selected-empty{
  padding:5px 2px;
  font-size:12px;
  color:#7b8490;
}
.grtp-admin-selected-empty[hidden]{display:none!important}
.grtp-admin-selected-item{
  display:grid;
  grid-template-columns:44px minmax(0,1fr);
  align-items:center;
  width:100%;
  min-height:40px;
  padding:8px 10px;
  border:1px solid #d9e5dc;
  border-radius:8px;
  background:#fff;
  text-align:left;
  cursor:pointer;
}
.grtp-admin-selected-item:hover{background:#fff7f7;border-color:#efc5c5}
.grtp-admin-selected-num{font-size:13px;font-weight:800;color:#667085}
.grtp-admin-selected-name{font-size:15px;font-weight:700;color:#172033;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.grtp-admin-member-empty{padding:12px;text-align:center;color:#7b8490;font-size:13px}
.grtp-admin-add-body .grtp-admin-member-search{
  display:block!important;
  width:100%!important;
  min-height:44px!important;
  margin:0 0 7px!important;
  font-size:16px!important;
}
@media(max-width:480px){
  .grtp-admin-add-body .grtp-admin-member-name{font-size:15.5px!important}
  .grtp-admin-selected-name{font-size:14.5px}
}


/* v0.2.29 Admin Add RTP: hard single-column selector + mobile keyboard visibility */
.grtp-admin-add-body{display:block!important;width:100%!important;}
.grtp-admin-add-body .grtp-admin-member-list{
  display:flex!important;
  flex-direction:column!important;
  flex-wrap:nowrap!important;
  grid-template-columns:none!important;
  grid-auto-flow:row!important;
  columns:1!important;
  column-count:1!important;
  gap:0!important;
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
}
.grtp-admin-add-body .grtp-admin-member-option{
  display:block!important;
  flex:0 0 auto!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  break-inside:avoid!important;
}
.grtp-admin-add-body .grtp-admin-member-option[hidden]{display:none!important;}

@media(max-width:760px){
  .grtp-admin-add-body .grtp-admin-member-list{display:flex!important;flex-direction:column!important;columns:1!important;column-count:1!important;}
  .grtp-admin-add-body .grtp-admin-member-option{display:block!important;width:100%!important;}
}

/* v0.2.32: keep Add RTP structurally above flight assignment; no keyboard scroll hacks */
.grtp-admin-add-section{margin-bottom:14px!important}
.grtp-admin-add-section .grtp-admin-add-rtp{margin-top:0!important}

/* v0.2.35: fast flight assignment + stable mobile tee-time entry */
.grtp-flight-card .grtp-flight-time,.grtp-flight-card .grtp-draft-time{font-size:16px!important;line-height:1.2!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;}
.grtp-flight-edit{min-width:0!important;}
.grtp-flight-edit label,.grtp-tee-field{min-width:0!important;}
.grtp-slot-tile.empty strong{display:none!important;}
.grtp-slot-tile.empty{cursor:default;}
@media(max-width:760px){
  .grtp-flight-card .grtp-flight-time,.grtp-flight-card .grtp-draft-time{font-size:16px!important;}
  .grtp-flight-carousel{overscroll-behavior-x:contain!important;}
}

/* v0.2.36: admin publish placement + softer available-RTP focus */
.grtp-publish-section{margin-top:-2px;margin-bottom:12px}
.grtp-publish-section .grtp-primary{margin-top:0}
.grtp-name-row:focus,.grtp-name-row:focus-visible{outline:none!important;background:#f3f7fb!important;box-shadow:inset 0 0 0 1px #b8c7d9!important;color:#172033!important}
.grtp-name-row:active{background:#eef4f8!important}


/* v0.2.37: consistent app-wide touch/focus treatment. Avoid the native dark-blue
   tap/focus flash while retaining a visible, accessible focus indicator. */
body.goofy-rtp-page .grtp-shell,
body.goofy-rtp-page .grtp-shell *{
  -webkit-tap-highlight-color:transparent!important;
}
body.goofy-rtp-page .grtp-shell :where(a,button,input,select,textarea,[tabindex]):focus,
body.goofy-rtp-page .grtp-shell :where(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline:2px solid #b8c7d9!important;
  outline-offset:1px!important;
  box-shadow:0 0 0 2px rgba(184,199,217,.22)!important;
}
body.goofy-rtp-page .grtp-shell :where(a,button,[role="button"]):active{
  filter:brightness(.98);
}
/* Available RTP/name rows use the same soft state and never the browser's
   native blue selection/tap treatment. */
body.goofy-rtp-page .grtp-name-row:focus,
body.goofy-rtp-page .grtp-name-row:focus-visible,
body.goofy-rtp-page .grtp-name-row:active{
  background:#f3f6f9!important;
  border-color:#c9d4df!important;
  color:#172033!important;
  outline:2px solid #c4d0dc!important;
  box-shadow:none!important;
}
/* Published flights: clearer separation between successive flight rows without
   turning each row into a heavy card. */
.grtp-hub-published .grtp-frow:not(.hdr){
  border-top:2px solid #ccd5df!important;
}
.grtp-hub-published .grtp-frow:not(.hdr):nth-child(odd){
  background:#fbfcfd;
}


/* v0.2.38: final interaction-state normalisation.
   Pointer taps must not inherit Astra/browser dark-blue focus styles. Keyboard
   focus remains visible through a soft neutral ring, while each control keeps
   its intended foreground/background colours. */
body.goofy-rtp-page .grtp-shell :where(a,button,[role="button"]):focus:not(:focus-visible){
  outline:none!important;
  box-shadow:none!important;
}
body.goofy-rtp-page .grtp-shell :where(a,button,[role="button"]):focus-visible{
  outline:2px solid #aebdca!important;
  outline-offset:2px!important;
  box-shadow:none!important;
}
/* Available RTP / member rows: always dark text on white or soft neutral. */
body.goofy-rtp-page .grtp-shell .grtp-name-row,
body.goofy-rtp-page .grtp-shell .grtp-name-row:hover,
body.goofy-rtp-page .grtp-shell .grtp-name-row:focus,
body.goofy-rtp-page .grtp-shell .grtp-name-row:focus-visible,
body.goofy-rtp-page .grtp-shell .grtp-name-row:active{
  color:#172033!important;
  background:#fff!important;
  filter:none!important;
}
body.goofy-rtp-page .grtp-shell .grtp-name-row:focus-visible{
  background:#f2f5f7!important;
  border-color:#c8d2da!important;
}
body.goofy-rtp-page .grtp-shell .grtp-name-row strong,
body.goofy-rtp-page .grtp-shell .grtp-name-row:focus strong,
body.goofy-rtp-page .grtp-shell .grtp-name-row:active strong{color:#172033!important}
body.goofy-rtp-page .grtp-shell .grtp-member-row,
body.goofy-rtp-page .grtp-shell .grtp-member-row:focus,
body.goofy-rtp-page .grtp-shell .grtp-member-row:active,
body.goofy-rtp-page .grtp-shell .grtp-admin-member-option,
body.goofy-rtp-page .grtp-shell .grtp-admin-member-option:focus,
body.goofy-rtp-page .grtp-shell .grtp-admin-member-option:active,
body.goofy-rtp-page .grtp-shell .grtp-admin-selected-item,
body.goofy-rtp-page .grtp-shell .grtp-admin-selected-item:focus,
body.goofy-rtp-page .grtp-shell .grtp-admin-selected-item:active{
  color:#172033!important;
  filter:none!important;
}
/* Registered flight player boxes: keep dark text on their light-green state. */
body.goofy-rtp-page .grtp-shell .grtp-slot-tile.filled,
body.goofy-rtp-page .grtp-shell .grtp-slot-tile.filled:hover,
body.goofy-rtp-page .grtp-shell .grtp-slot-tile.filled:focus,
body.goofy-rtp-page .grtp-shell .grtp-slot-tile.filled:focus-visible,
body.goofy-rtp-page .grtp-shell .grtp-slot-tile.filled:active{
  background:#e7f4ec!important;
  border-color:#9bc8aa!important;
  color:#173f27!important;
  filter:none!important;
}
body.goofy-rtp-page .grtp-shell .grtp-slot-tile.filled strong,
body.goofy-rtp-page .grtp-shell .grtp-slot-tile.filled:focus strong,
body.goofy-rtp-page .grtp-shell .grtp-slot-tile.filled:active strong{color:#173f27!important}
body.goofy-rtp-page .grtp-shell .grtp-slot-tile.filled.withdraw-pending,
body.goofy-rtp-page .grtp-shell .grtp-slot-tile.filled.withdraw-pending:focus,
body.goofy-rtp-page .grtp-shell .grtp-slot-tile.filled.withdraw-pending:active{background:#fff0ef!important;color:#9f241a!important}
/* White controls keep dark text; selected green controls intentionally keep white. */
body.goofy-rtp-page .grtp-shell .grtp-tee-btn:not(.selected),
body.goofy-rtp-page .grtp-shell .grtp-tee-btn:not(.selected):focus,
body.goofy-rtp-page .grtp-shell .grtp-tee-btn:not(.selected):active,
body.goofy-rtp-page .grtp-shell .grtp-mini,
body.goofy-rtp-page .grtp-shell .grtp-mini:focus,
body.goofy-rtp-page .grtp-shell .grtp-mini:active{
  background:#fff!important;
  color:#34473a!important;
  filter:none!important;
}
body.goofy-rtp-page .grtp-shell .grtp-tee-btn.selected,
body.goofy-rtp-page .grtp-shell .grtp-tee-btn.selected:focus,
body.goofy-rtp-page .grtp-shell .grtp-tee-btn.selected:active,
body.goofy-rtp-page .grtp-shell .grtp-primary,
body.goofy-rtp-page .grtp-shell .grtp-primary:focus,
body.goofy-rtp-page .grtp-shell .grtp-primary:active{
  background:#157347!important;
  color:#fff!important;
  filter:none!important;
}
body.goofy-rtp-page .grtp-shell .grtp-nav-item,
body.goofy-rtp-page .grtp-shell .grtp-nav-item:focus,
body.goofy-rtp-page .grtp-shell .grtp-nav-item:active{background:transparent!important;color:#6d7772!important;filter:none!important}
body.goofy-rtp-page .grtp-shell .grtp-nav-item.active,
body.goofy-rtp-page .grtp-shell .grtp-nav-item.active:focus,
body.goofy-rtp-page .grtp-shell .grtp-nav-item.active:active{color:#147943!important}
body.goofy-rtp-page .grtp-shell .grtp-more-card,
body.goofy-rtp-page .grtp-shell .grtp-more-card:focus,
body.goofy-rtp-page .grtp-shell .grtp-more-card:active{background:#fff!important;color:#202a24!important;filter:none!important}

/* v0.2.40 compact history + equal submit choices */
.grtp-choice{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:4px!important;width:100%!important;align-items:center!important}.grtp-choice label{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:5px!important;margin:0!important;min-width:0!important;font-size:12px!important;font-weight:500!important;white-space:nowrap!important}.grtp-choice input[type=radio]{flex:0 0 auto!important;width:20px!important;height:20px!important;margin:0!important;padding:0!important}.grtp-history-day{background:#fff;border:1px solid #dfe4ea;border-radius:12px;margin:0 0 8px;overflow:hidden;box-shadow:0 1px 2px #0000000d}.grtp-history-day>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 13px;background:#f7f9fa;color:#172033}.grtp-history-day>summary::-webkit-details-marker{display:none}.grtp-history-day>summary strong{font-size:14px}.grtp-history-chevron{font-size:18px;line-height:1;color:#667085;transition:transform .15s ease}.grtp-history-day[open] .grtp-history-chevron{transform:rotate(180deg)}.grtp-history-body{border-top:1px solid #edf0f3}.grtp-history-day .grtp-flight-table{border:0}.grtp-history-day .grtp-history-rtp{border-top:1px solid #edf0f3}@media(max-width:390px){.grtp-choice{gap:2px!important}.grtp-choice label{font-size:11px!important;gap:4px!important}.grtp-choice input[type=radio]{width:18px!important;height:18px!important}}


/* v0.2.41 published-flight polish */
.grtp-hub-published .grtp-dayhead{
  background:#ffff00!important;
  border-bottom:1px solid #e0c900!important;
}
.grtp-hub-published .grtp-dayhead strong,
.grtp-hub-published .grtp-dayhead span{
  color:#b42318!important;
}
.grtp-hub-published .grtp-unallocated{
  border-top:2px solid #cbd2da!important;
}

/* Admin RTP record maintenance */
.grtp-admin-rtp-edit-list{display:grid;gap:8px}
.grtp-admin-rtp-edit{background:#fff;border:1px solid #d7dfda;border-radius:14px;overflow:hidden}
.grtp-admin-rtp-edit>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;cursor:pointer}
.grtp-admin-rtp-edit>summary::-webkit-details-marker{display:none}
.grtp-admin-rtp-edit>summary span{min-width:0;display:grid;gap:2px}
.grtp-admin-rtp-edit>summary strong{font-size:16px;color:#202c26;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.grtp-admin-rtp-edit>summary small{font-size:12px;color:#6d776f}
.grtp-admin-rtp-edit>summary em{font-style:normal;font-size:12px;font-weight:700;color:#557063;white-space:nowrap}
.grtp-admin-rtp-edit>summary em.warn{color:#b52828}
.grtp-admin-rtp-edit-body{border-top:1px solid #e5ebe7;padding:12px 14px;display:grid;gap:10px}
.grtp-admin-rtp-edit-body label{display:grid;gap:6px;font-weight:700;color:#334139}
.grtp-admin-rtp-remarks{width:100%;box-sizing:border-box;min-height:68px;resize:vertical;font:inherit;font-size:16px;color:#202c26;background:#fff;border:1px solid #cfd8d2;border-radius:10px;padding:10px}
.grtp-admin-rtp-actions{display:flex;gap:8px;flex-wrap:wrap}
.grtp-admin-withdraw-note{font-size:13px;color:#7c3c35;background:#fff5f3;border-radius:8px;padding:8px 10px}


/* v1.0.5: clearer registered-flight carousel + four-up playing assignment */
/* Scorecard-style green stripe makes each horizontal flight card easier to distinguish/swipe. */
.grtp-flight-carousel>.grtp-flight-card{
  border-left:7px solid #16884b!important;
  position:relative;
}
.grtp-flight-carousel>.grtp-flight-card.grtp-flight-draft{
  border-left-color:#66a97d!important;
}

/* Playing Assignment should show all four registered positions at once on mobile. */
.grtp-playing-board-wrap{
  overflow-x:hidden!important;
}
.grtp-playing-board{
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
}
.grtp-playing-four{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  width:100%!important;
}
.grtp-playing-cell{
  min-width:0!important;
  padding:3px 2px!important;
}
.grtp-playing-registered{
  min-width:0!important;
  min-height:28px!important;
  padding:2px 1px!important;
}
.grtp-playing-registered strong{
  font-size:12px!important;
  line-height:1.08!important;
  padding:0 1px!important;
}
.grtp-playing-registered small{
  font-size:7.5px!important;
}
.grtp-playing-box{
  min-width:0!important;
  height:25px!important;
  min-height:25px!important;
  padding:2px 2px!important;
}
.grtp-playing-box.empty strong{
  font-size:10.5px!important;
}
.grtp-playing-box.override strong{
  font-size:11px!important;
}
@media(max-width:390px){
  .grtp-playing-cell{padding:2px 1px!important}
  .grtp-playing-registered strong{font-size:11.5px!important}
  .grtp-playing-box.override strong{font-size:10.5px!important}
}
@media(max-width:350px){
  .grtp-playing-registered strong{font-size:10.5px!important}
  .grtp-playing-box.override strong{font-size:10px!important}
}


/* v1.0.6: distinguish unresolved Empty from resolved playing override */
.grtp-playing-box.empty{
  background:#fff0ef!important;
  border-color:#e7a59e!important;
  color:#a3271d!important;
}
.grtp-playing-box.empty strong{color:#a3271d!important}
.grtp-playing-box.override{
  background:#eef7f1!important;
  border-color:#b8d8c3!important;
  color:#c12a1e!important;
}
.grtp-playing-box.override strong{color:#c12a1e!important}


/* v1.0.7: admin remark autosave + responsive PWA bottom navigation */
.grtp-admin-rtp-actions{align-items:center!important}
.grtp-admin-remark-status{min-height:18px;flex:1 1 auto;font-size:12px;font-weight:700;color:#68756d}
.grtp-admin-remark-status.saving{color:#68756d}
.grtp-admin-remark-status.saved{color:#157347}
.grtp-admin-remark-status.bad{color:#b42318}
.grtp-bottom-nav{pointer-events:auto!important;isolation:isolate!important;touch-action:manipulation!important}
.grtp-nav-item{touch-action:manipulation!important;-webkit-user-select:none!important;user-select:none!important;-webkit-touch-callout:none!important;pointer-events:auto!important;cursor:pointer!important;transition:background-color .08s ease,transform .08s ease,color .08s ease!important}
.grtp-nav-item.grtp-nav-pressed{background:#eef8f1!important;transform:translateY(-1px)!important;color:#147943!important}
.grtp-nav-item.grtp-nav-submit.grtp-nav-pressed .grtp-nav-plus{transform:scale(.96)!important}

/* v1.0.9: confirmation before creating a durable RTP request */
.grtp-submit-confirm[hidden]{display:none!important}
.grtp-submit-confirm{
  position:fixed!important;inset:0!important;z-index:2147483000!important;
  display:flex;align-items:center;justify-content:center;
  padding:calc(18px + env(safe-area-inset-top)) 18px calc(18px + env(safe-area-inset-bottom));
  box-sizing:border-box;background:rgba(17,30,23,.46);backdrop-filter:blur(2px);
}
.grtp-submit-confirm-card{
  width:min(92vw,440px);background:#fff;border:1px solid #d7e1da;border-radius:18px;
  box-shadow:0 18px 50px rgba(0,0,0,.22);padding:18px;box-sizing:border-box;color:#1d2922;
}
.grtp-submit-confirm-card h3{margin:0 0 14px;font-size:20px;line-height:1.2;color:#183d29}
.grtp-submit-confirm-summary{display:grid;gap:8px;margin-bottom:16px}
.grtp-submit-confirm-line{display:grid;grid-template-columns:82px minmax(0,1fr);gap:10px;align-items:start;padding:7px 0;border-bottom:1px solid #edf1ee}
.grtp-submit-confirm-line:last-child{border-bottom:0}
.grtp-submit-confirm-line span{font-size:13px;color:#707b74}
.grtp-submit-confirm-line strong{font-size:15px;color:#202a24;overflow-wrap:anywhere}
.grtp-submit-confirm-actions{display:grid;grid-template-columns:1fr 1.25fr;gap:10px}
.grtp-submit-confirm-actions button{min-height:48px;border-radius:12px;font-size:16px;font-weight:800}
.grtp-submit-confirm-cancel{background:#fff;border:1px solid #cbd5ce;color:#34433a}
html.grtp-submit-confirm-open,html.grtp-submit-confirm-open body{overflow:hidden!important}

/* v1.0.10: compact RTP List & Waitlist to match Published Flight density */
.grtp-hub-listing .grtp-listrow{
  padding-top:5px!important;
  padding-bottom:5px!important;
  min-height:0!important;
}
.grtp-hub-listing .grtp-list-name,
.grtp-hub-listing .grtp-list-person .grtp-list-name{
  font-size:13.5px!important;
  font-weight:500!important;
  line-height:1.08!important;
}
.grtp-hub-listing .grtp-list-person .grtp-guest-of{
  margin-top:0!important;
  font-size:9px!important;
  line-height:1.05!important;
}
.grtp-hub-listing .grtp-list-status{
  line-height:1!important;
}
.grtp-hub-listing .grtp-list-remarks{
  font-size:10.5px!important;
  line-height:1.08!important;
}
.grtp-hub-listing .grtp-listrow .num{
  font-size:11px!important;
}
@media(max-width:480px){
  .grtp-hub-listing .grtp-listrow{padding-top:4px!important;padding-bottom:4px!important}
  .grtp-hub-listing .grtp-list-name,
  .grtp-hub-listing .grtp-list-person .grtp-list-name{font-size:12.5px!important}
  .grtp-hub-listing .grtp-list-remarks{font-size:10px!important}
}


/* v1.0.12 larger bottom navigation to match Scorecard touch targets */
.grtp-shell{padding-bottom:104px!important}
.grtp-bottom-nav{height:78px!important;padding:6px 5px calc(6px + env(safe-area-inset-bottom))!important;align-items:end!important}
.grtp-nav-item{height:64px!important;min-height:64px!important;font-size:12px!important;gap:2px!important;padding:3px 1px!important;justify-content:center!important}
.grtp-nav-icon{font-size:24px!important;height:27px!important}
.grtp-nav-plus{width:54px!important;height:54px!important;font-size:32px!important;margin-bottom:0!important}
@media(max-width:480px){.grtp-nav-item{font-size:11px!important}.grtp-nav-plus{width:52px!important;height:52px!important;font-size:31px!important}}
.grtp-automation-settings label{display:block;margin:12px 0;font-weight:700}.grtp-automation-settings label small{display:block;margin-top:4px;font-weight:400;color:#58656d}.grtp-automation-settings select,.grtp-automation-settings input[type=time],.grtp-automation-settings input[type=text],.grtp-automation-settings input[type=password],.grtp-automation-settings input:not([type]){width:100%;min-height:44px;margin-top:6px;font-size:16px}.grtp-automation-times{display:grid;grid-template-columns:1fr 1fr;gap:12px}.grtp-automation-settings details{margin:14px 0;padding:10px 0;border-top:1px solid #dfe5e2}.grtp-automation-settings summary{font-weight:800;cursor:pointer}.grtp-automation-status{margin-top:18px;border-top:1px solid #dfe5e2;padding-top:10px}.grtp-auto-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;padding:9px 0;border-bottom:1px solid #edf0ef;font-size:13px}.grtp-auto-row strong{font-size:14px}.grtp-check{display:flex!important;align-items:center;gap:8px}.grtp-check input{width:auto!important}@media(max-width:520px){.grtp-automation-times{grid-template-columns:1fr}.grtp-auto-row{grid-template-columns:1fr 1fr}.grtp-auto-row strong{grid-column:1/-1}}

/* v1.0.19 automation status hierarchy */
.grtp-auto-state.is-pending{color:#9aa3a0;font-weight:500;opacity:.68}
.grtp-auto-state.is-created,.grtp-auto-state.is-sent{color:#176f3e;font-weight:800}
.grtp-auto-state.is-failed,.grtp-auto-state.is-partial{color:#a11b1b;font-weight:800}

/* v1.0.22 member-assisted booked flights */
.grtp-member-bookings .grtp-section-title{margin-top:14px}
.grtp-booking-create summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer}
.grtp-booking-create summary span,.grtp-booking-head small{display:block;color:#667085;font-size:12px;font-weight:500}
.grtp-booking-form{display:grid;gap:10px;margin-top:12px}
.grtp-booking-form label{display:grid;gap:5px;font-size:13px;font-weight:700;color:#344054}
.grtp-booking-form input,.grtp-booking-form select{width:100%;min-height:42px;border:1px solid #d0d5dd;border-radius:10px;background:#fff;padding:8px 10px;font-size:15px;color:#20262d;box-sizing:border-box}
.grtp-booking-time-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.grtp-booking-player-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.grtp-member-booking{margin-top:10px}
.grtp-booking-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}
.grtp-booking-head>div{display:grid;gap:2px}
.grtp-booking-status{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;background:#eef2f6;color:#475467;border-radius:999px;padding:5px 8px;white-space:nowrap}
.grtp-member-booking.published .grtp-booking-status{background:#e9f7ef;color:#16794c}
.grtp-member-booking.verified .grtp-booking-status{background:#eaf1ff;color:#2457a6}
.grtp-booking-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.grtp-booking-actions form{margin:0}
.grtp-booking-player-view{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:8px 0 10px}
.grtp-booking-player-view>span{border:1px solid #e4e7ec;border-radius:9px;padding:8px 9px;font-size:13px;background:#fff}
.grtp-booking-player-view b{color:#667085;margin-right:4px}
.grtp-no-rtp,.grtp-no-rtp strong{color:#c62828!important}
.grtp-no-rtp em{font-style:normal;font-size:10px;font-weight:800;color:#c62828;margin-left:3px}
.grtp-member-published{background:#fffdf8}
.grtp-member-published .grtp-time em{display:block;margin-top:3px;font-size:9px;line-height:1.1;color:#9a6700;font-style:normal;font-weight:700}
.grtp-member-published-note{padding:5px 8px 9px;font-size:11px;color:#7a5b00;background:#fffdf8;border-bottom:1px solid #eee}
.grtp-member-booking-review{margin-bottom:14px}
.grtp-booking-review-card{margin-top:8px}
.grtp-booking-review-card form{margin-top:10px}
@media(max-width:520px){
 .grtp-booking-player-grid,.grtp-booking-player-view{grid-template-columns:1fr}
 .grtp-booking-time-row{grid-template-columns:1fr 1fr}
}

/* v1.0.23 booked-flight builder */
.grtp-booking-builder{display:grid;gap:12px}
.grtp-booking-date-strip{margin-bottom:2px}
.grtp-booking-time-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.grtp-booking-time-row .grtp-tee-field{display:grid;gap:5px}
.grtp-booking-time-row .grtp-tee-field>span{font-size:13px;font-weight:700;color:#344054}
.grtp-booking-time-row .grtp-tee-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.grtp-booking-tee-btn{min-height:44px;border:1px solid #cfd8d3;border-radius:10px;background:#fff;color:#315243;font-weight:800;font-size:15px}
.grtp-booking-tee-btn.selected{background:#176f3e;color:#fff;border-color:#176f3e}
.grtp-booking-flight-card{border:3px solid #178e4b;border-radius:18px;background:#fff;overflow:hidden}
.grtp-booking-flight-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 13px;border-bottom:1px solid #e6ebe8}
.grtp-booking-flight-head strong{font-size:18px}.grtp-booking-flight-head small{font-size:11px;color:#6b7570}
.grtp-booking-slot-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px}
.grtp-booking-slot{position:relative;min-height:82px;border:1px solid #d9dfdc;border-radius:13px;background:#fafbfa;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px;overflow:hidden}
.grtp-booking-slot small{position:absolute;left:10px;top:8px;font-weight:800;color:#176f3e}
.grtp-booking-slot strong{font-size:16px;line-height:1.15;text-align:center}.grtp-booking-slot.empty strong{display:none}
.grtp-booking-slot.empty:after{content:'+';font-size:36px;line-height:1;color:#178e4b;font-weight:700}
.grtp-booking-slot em{font-style:normal;font-size:10px;font-weight:800;color:#c62828;margin-top:4px}
.grtp-booking-member-picker{border-top:1px solid #e7ebe9;padding-top:4px}
.grtp-booking-search{width:100%;min-height:44px;border:1px solid #d0d5dd;border-radius:10px;padding:9px 11px;font-size:16px;box-sizing:border-box;margin-bottom:8px}
.grtp-booking-member-list{max-height:340px;overflow:auto;border:1px solid #e1e6e3;border-radius:12px;background:#fff}
.grtp-booking-member-row{width:100%;min-height:48px;border:0;border-bottom:1px solid #edf0ee;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;text-align:left;color:#20262d}
.grtp-booking-member-row:last-of-type{border-bottom:0}.grtp-booking-member-row strong{font-size:15px;font-weight:700}
.grtp-booking-member-row .grtp-booking-rtp-state{font-size:11px;font-weight:800;color:#176f3e;white-space:nowrap}
.grtp-booking-member-row.grtp-no-rtp .grtp-booking-rtp-state{color:#c62828}.grtp-booking-member-row.selected{opacity:.42;background:#f3f5f4}
.grtp-booking-member-empty{padding:14px;text-align:center;color:#77807c;font-size:13px}
.grtp-booking-submit-row{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
@media(max-width:520px){.grtp-booking-slot-grid{grid-template-columns:1fr 1fr}.grtp-booking-time-row{grid-template-columns:1fr 1fr}.grtp-booking-slot{min-height:76px}.grtp-booking-flight-head strong{font-size:17px}}
\n\n/* v1.0.24 compact member booked-flight builder */
.grtp-booking-compact-card{padding:10px!important;margin:0!important;border-left:5px solid #18894a!important}
.grtp-booking-compact-card .grtp-flight-admin-head{margin-bottom:5px}
.grtp-booking-compact-card .grtp-flight-admin-head h3{font-size:16px!important}
.grtp-booking-compact-card .grtp-flight-edit{margin:5px 0 7px!important;grid-template-columns:minmax(88px,.8fr) minmax(150px,1.2fr)!important;gap:7px!important}
.grtp-booking-compact-card .grtp-flight-edit input{min-height:38px!important;padding:6px 8px!important;font-size:15px!important;margin-top:3px!important}
.grtp-booking-compact-card .grtp-booking-time{font-variant-numeric:tabular-nums;letter-spacing:.08em}
.grtp-booking-compact-card .grtp-tee-buttons{display:grid;grid-template-columns:1fr 1fr;gap:5px}
.grtp-booking-compact-card .grtp-booking-tee-btn{min-height:38px!important;border-radius:8px!important;font-size:12px!important}
.grtp-booking-compact-card .grtp-booking-slot-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:5px!important;margin:4px 0 0!important;padding:0!important}
.grtp-booking-compact-card .grtp-booking-slot{min-height:54px!important;padding:5px 2px!important;border-radius:8px!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-direction:column!important}
.grtp-booking-compact-card .grtp-booking-slot small{position:static!important;font-size:9px!important;color:#7b8490!important;line-height:1!important;margin-bottom:3px}
.grtp-booking-compact-card .grtp-booking-slot strong{font-size:11px!important;line-height:1.08!important;overflow-wrap:anywhere!important;text-align:center!important}
.grtp-booking-compact-card .grtp-booking-slot.empty:after{content:''!important;display:none!important}
.grtp-booking-compact-card .grtp-booking-slot em{font-size:8px!important;margin:2px 0 0!important}
.grtp-booking-member-picker{position:relative;padding-top:2px;scroll-margin-top:8px;scroll-margin-bottom:calc(env(safe-area-inset-bottom) + 12px)}
.grtp-booking-member-list{max-height:30dvh!important;min-height:150px;overscroll-behavior:contain}
.grtp-booking-member-row{min-height:44px!important;padding:7px 10px!important}
.grtp-booking-search:focus{scroll-margin-top:8px}
@media(max-width:520px){
 .grtp-booking-compact-card .grtp-flight-edit{grid-template-columns:minmax(82px,.72fr) minmax(148px,1.28fr)!important}
 .grtp-booking-compact-card .grtp-booking-slot{min-height:52px!important}
 .grtp-booking-member-list{max-height:28dvh!important}
}


/* v1.0.25 booked-flight mobile keyboard containment */
.grtp-booking-builder{position:relative}
.grtp-booking-compact-card{position:sticky;top:0;z-index:80;background:#fff;box-shadow:0 2px 8px rgba(20,40,30,.06)}
.grtp-booking-member-picker{position:relative;z-index:20;background:#fff;padding-top:8px}
.grtp-booking-member-list{overflow-y:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scroll-behavior:auto}
html.grtp-keyboard-open .grtp-bottom-nav,body.grtp-keyboard-open .grtp-bottom-nav{display:none!important}
html.grtp-keyboard-open .grtp-shell,body.grtp-keyboard-open .grtp-shell{padding-bottom:12px!important}
@media(max-width:700px){
  .grtp-booking-compact-card{top:0}
  .grtp-booking-member-list{max-height:34dvh!important;min-height:120px}
}


/* v1.0.26 iOS booked-flight search viewport lock */
html.grtp-keyboard-open .grtp-booking-date-title,
body.grtp-keyboard-open .grtp-booking-date-title,
html.grtp-keyboard-open .grtp-booking-date-strip,
body.grtp-keyboard-open .grtp-booking-date-strip{display:none!important}
html.grtp-keyboard-open .grtp-booking-compact-card,
body.grtp-keyboard-open .grtp-booking-compact-card{top:0!important}
html.grtp-keyboard-open .grtp-booking-member-list,
body.grtp-keyboard-open .grtp-booking-member-list{max-height:calc(100dvh - 300px)!important;min-height:110px}
/* v1.0.27 booked-flight autosave / iOS input polish */
.grtp-booking-time{font-size:16px!important;max-width:100%;box-sizing:border-box}
.grtp-booking-save-state{font-size:11px;font-weight:700;color:#16794c;min-width:62px;text-align:right;align-self:center}
.grtp-booking-save-state.saving{color:#667085}.grtp-booking-save-state.bad{color:#b42318}

/* v1.0.28 member booked-flight carousel / iOS time input */
.grtp-member-bookings{overflow-x:hidden}
.grtp-booking-day-strip{margin-bottom:10px}
.grtp-booking-day-link{text-decoration:none;flex:0 0 auto}
.grtp-member-flight-carousel{display:flex;gap:9px;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;padding:2px 14px 10px;margin:0 -14px 10px;overscroll-behavior-x:contain;scrollbar-width:none}
.grtp-member-flight-carousel::-webkit-scrollbar{display:none}
.grtp-member-flight-card{position:relative;flex:0 0 min(72vw,260px);min-height:105px;scroll-snap-align:center;border:1px solid #d8dfdb;border-radius:13px;background:#fff;padding:10px 11px;box-sizing:border-box;text-decoration:none;color:#20262d;display:grid;grid-template-rows:auto auto 1fr auto;gap:4px;box-shadow:0 1px 3px rgba(20,40,30,.04)}
.grtp-member-flight-card.active{border:2px solid #18894a;background:#f8fcf9;padding:9px 10px}
.grtp-member-flight-no{font-size:11px;font-weight:800;color:#667085;text-transform:uppercase;letter-spacing:.03em}
.grtp-member-flight-card>strong{font-size:15px;line-height:1.15}
.grtp-member-flight-card>small{font-size:11px;line-height:1.25;color:#667085;white-space:normal;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.grtp-member-flight-card>em{justify-self:start;font-style:normal;font-size:10px;font-weight:800;border-radius:999px;padding:3px 7px;background:#eef2f6;color:#667085}
.grtp-member-flight-card>em.published{background:#e9f7ef;color:#16794c}.grtp-member-flight-card>em.verified{background:#eaf1ff;color:#2457a6}
.grtp-member-flight-add{place-items:center;text-align:center;grid-template-rows:1fr auto auto;background:#fbfcfb;border-style:dashed}
.grtp-member-flight-add b{align-self:end;font-size:28px;line-height:1;color:#18894a}.grtp-member-flight-add strong{font-size:15px}.grtp-member-flight-add small{align-self:start}
.grtp-booking-lock-note{margin:4px 0 10px}
.grtp-booking-readonly{margin-top:8px}
.grtp-booking-compact-card .grtp-flight-edit input.grtp-booking-time{font-size:17px!important;line-height:1.25!important;min-width:0!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;-webkit-text-size-adjust:100%;touch-action:manipulation}
.grtp-booking-flight-edit,.grtp-booking-compact-card,.grtp-booking-builder{min-width:0;max-width:100%;box-sizing:border-box}
@media(max-width:520px){
 .grtp-member-flight-card{flex-basis:76vw;max-width:250px;min-height:100px}
 .grtp-member-flight-carousel{padding-left:12px;padding-right:12px;margin-left:-12px;margin-right:-12px}
}

/* v1.0.29 member Booked Flights mirrors Admin Flight Assignment */
.grtp-member-editor-carousel{margin-bottom:10px}
.grtp-member-editor-carousel>.grtp-member-editor-card{flex:0 0 calc(100% - 16px);scroll-snap-align:start;scroll-snap-stop:always;margin:0;box-sizing:border-box}
.grtp-member-editor-card.active{border-color:#18894a;box-shadow:0 0 0 2px #18894a inset}
.grtp-member-editor-card.grtp-flight-draft{border-style:dashed;background:#fbfcfd}
.grtp-member-editor-card .grtp-flight-admin-head{margin-bottom:7px}
.grtp-member-card-status{font-size:9px!important;color:#667085!important;font-weight:800!important}
.grtp-member-editor-card .grtp-booking-time{font-size:17px!important;line-height:1.2!important;min-width:0!important;max-width:100%!important;width:100%!important;box-sizing:border-box!important}
.grtp-member-editor-card .grtp-slot-grid{margin-bottom:2px}
.grtp-member-booking-actions{display:flex;gap:8px;align-items:center;margin:8px 0 4px}
.grtp-member-booking-actions .grtp-primary{margin:0;flex:1}
.grtp-member-booking-actions .grtp-mini{flex:0 0 auto}
.grtp-member-published .grtp-member-slot{gap:1px}
.grtp-member-slot-name{display:block;max-width:100%;font-size:11px;font-weight:700;line-height:1.12;overflow-wrap:anywhere}
.grtp-member-slot-name.grtp-no-rtp{color:#d92d20}
.grtp-no-rtp-label{display:block!important;color:#d92d20!important;font-size:8px!important;font-weight:800!important;line-height:1!important;margin-top:2px}
.grtp-member-published-note{font-size:9px!important;line-height:1.25;padding:5px 8px!important;color:#786a24!important}
@media(max-width:700px){
 .grtp-member-editor-carousel>.grtp-member-editor-card{flex-basis:calc(100% - 18px)}
 .grtp-member-editor-card .grtp-flight-edit{grid-template-columns:1fr 1.2fr!important}
}

/* v1.0.30 exact admin-style member booked flights + inline admin takeover */
/* Member editor cards must inherit the same geometry as Admin Flight Assignment. */
.grtp-member-editor-carousel>.grtp-member-editor-card{
  flex:0 0 calc(100% - 16px)!important;
  scroll-snap-align:start!important;
  scroll-snap-stop:always!important;
  margin-bottom:0!important;
}
.grtp-member-editor-card .grtp-flight-edit{grid-template-columns:1fr 1fr!important;gap:7px!important;align-items:end!important;margin:8px 0 10px!important}
.grtp-member-editor-card .grtp-slot-grid{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:5px!important;margin:6px 0 9px!important;padding:0!important}
.grtp-member-editor-card .grtp-booking-slot{
  position:relative!important;min-width:0!important;min-height:52px!important;
  border:1px solid #cbd2da!important;background:#fff!important;border-radius:9px!important;
  padding:5px 3px!important;text-align:center!important;color:#172033!important;
  display:block!important;overflow:visible!important;
}
.grtp-member-editor-card .grtp-booking-slot small{position:static!important;display:block!important;font-size:9px!important;color:#7b8490!important;line-height:1.15!important;margin:0!important}
.grtp-member-editor-card .grtp-booking-slot strong{display:block!important;font-size:11px!important;line-height:1.15!important;white-space:normal!important;overflow-wrap:anywhere!important;margin:0!important}
.grtp-member-editor-card .grtp-booking-slot.empty{border-style:dashed!important;color:#788291!important;background:#fff!important}
.grtp-member-editor-card .grtp-booking-slot.empty:after{content:none!important;display:none!important}
.grtp-member-editor-card .grtp-booking-slot em{display:block!important;font-size:8px!important;line-height:1!important;margin-top:2px!important;color:#c62828!important;font-style:normal!important;font-weight:800!important}
.grtp-member-editor-card .grtp-member-card-status{font-size:9px!important;color:#667085!important;font-weight:800!important}

/* Keep the active member flight and search/result area usable above iOS keyboard. */
html.grtp-keyboard-open .grtp-member-editor-carousel,
body.grtp-keyboard-open .grtp-member-editor-carousel{margin-top:0!important}
html.grtp-keyboard-open .grtp-member-editor-card.active,
body.grtp-keyboard-open .grtp-member-editor-card.active{position:sticky!important;top:0!important;z-index:82!important;background:#fff!important}
html.grtp-keyboard-open .grtp-booking-member-picker,
body.grtp-keyboard-open .grtp-booking-member-picker{position:sticky!important;top:174px!important;z-index:81!important;background:#fff!important;padding-top:6px!important}
html.grtp-keyboard-open .grtp-booking-member-list,
body.grtp-keyboard-open .grtp-booking-member-list{max-height:calc(100dvh - 410px)!important;min-height:88px!important}

/* Published member booking appears as an ordinary Admin Flight Assignment card until takeover. */
.grtp-member-takeover-card{border-color:#d8dfdb;background:#fff}
.grtp-member-takeover-card .grtp-flight-admin-head>div{min-width:0}
.grtp-member-submitted-label{display:block!important;margin-top:2px;font-size:9px!important;color:#667085!important;font-weight:700!important;white-space:normal}
.grtp-takeover-form{margin:0;flex:0 0 auto}
.grtp-takeover-btn{color:#157347!important;border-color:#9ccfb2!important;background:#eef8f1!important;white-space:nowrap}
.grtp-awaiting-takeover{color:#9a6700!important}
.grtp-member-takeover-card input:disabled,.grtp-member-takeover-card button:disabled{opacity:1!important;-webkit-text-fill-color:currentColor}

@media(max-width:390px){
  .grtp-member-editor-card .grtp-slot-grid{gap:4px!important}
  .grtp-member-editor-card .grtp-booking-slot strong{font-size:10px!important}
  html.grtp-keyboard-open .grtp-booking-member-picker,
  body.grtp-keyboard-open .grtp-booking-member-picker{top:166px!important}
  html.grtp-keyboard-open .grtp-booking-member-list,
  body.grtp-keyboard-open .grtp-booking-member-list{max-height:calc(100dvh - 392px)!important}
}


/* v1.0.31 Published No-RTP alignment + booked-flight search focus */
.grtp-member-published .grtp-member-slot{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:1px!important;
  min-width:0!important;
  padding-left:2px!important;
  padding-right:2px!important;
}
.grtp-member-published .grtp-member-slot .grtp-member-slot-name{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  text-align:center!important;
  font-size:10.5px!important;
  line-height:1.05!important;
  font-weight:800!important;
  overflow-wrap:anywhere!important;
}
.grtp-member-published .grtp-member-slot .grtp-no-rtp-label{
  display:block!important;
  width:100%!important;
  text-align:center!important;
  margin:2px 0 0!important;
  font-size:7px!important;
  line-height:1!important;
  white-space:nowrap!important;
  color:#d92d20!important;
}
.grtp-booking-member-picker{isolation:isolate}
.grtp-booking-search{position:relative!important;z-index:4!important;font-size:16px!important}
.grtp-booking-member-list{position:relative!important;z-index:2!important}

/* v1.0.32 Published Flight No-RTP legend */
.grtp-published-legend{
  padding:5px 9px 3px!important;
  text-align:right!important;
  color:#c62828!important;
  font-size:9px!important;
  line-height:1.2!important;
  font-weight:800!important;
  background:#fff!important;
}
.grtp-hub-published .grtp-slot>.grtp-no-rtp,
.grtp-hub-published .grtp-member-slot-name.grtp-no-rtp{color:#c62828!important}
.grtp-hub-published .grtp-no-rtp-label{display:none!important}

/* v1.0.33 RTP-first Booked Flight member picker.
   Search only filters the list; it never becomes a full-screen overlay. */
.grtp-booking-member-picker{
  position:relative!important;
  z-index:1!important;
  background:#fff!important;
  padding:8px 0 0!important;
  border-top:1px solid #e7ebe9!important;
}
.grtp-booking-picker-note{
  padding:0 2px 7px!important;
  color:#667085!important;
  font-size:10px!important;
  line-height:1.25!important;
}
.grtp-booking-search-head{display:block!important;position:relative!important;z-index:2!important}
.grtp-booking-search-head .grtp-booking-search{
  width:100%!important;
  min-height:44px!important;
  margin:0 0 8px!important;
  font-size:16px!important;
  position:relative!important;
  z-index:2!important;
}
.grtp-booking-search-close{display:none!important}
.grtp-booking-member-list{
  position:relative!important;
  z-index:1!important;
  max-height:min(42dvh,380px)!important;
  min-height:190px!important;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
  scroll-behavior:auto!important;
  border:1px solid #e1e6e3!important;
  border-radius:12px!important;
  background:#fff!important;
}
.grtp-booking-member-group{
  position:sticky!important;
  top:0!important;
  z-index:2!important;
  padding:7px 10px 6px!important;
  background:#f3f6f4!important;
  border-bottom:1px solid #dfe6e2!important;
  color:#315243!important;
  font-size:10px!important;
  line-height:1.1!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
}
.grtp-booking-member-row{min-height:46px!important;padding:8px 11px!important}
.grtp-booking-member-row strong{font-size:14px!important}
.grtp-booking-member-row.selected{opacity:.42!important;background:#f3f5f4!important}
.grtp-booking-member-row .grtp-booking-rtp-state{font-size:10px!important}
.grtp-booking-member-row.grtp-booking-member-rtp .grtp-booking-rtp-state{color:#176f3e!important}
.grtp-booking-member-row.grtp-booking-member-other .grtp-booking-rtp-state{color:#c62828!important}
.grtp-booking-member-row.grtp-booking-member-other strong{color:#20262d!important}
@media(max-width:520px){
  .grtp-booking-member-list{max-height:44dvh!important;min-height:210px!important}
}

/* v1.0.34 safer Booked Flight player picker: scrolling rows never selects a player. */
.grtp-booking-member-row{
  cursor:default!important;
  touch-action:pan-y!important;
  user-select:none!important;
  -webkit-user-select:none!important;
}
.grtp-booking-member-name{
  min-width:0!important;
  display:flex!important;
  align-items:baseline!important;
  gap:6px!important;
  flex:1 1 auto!important;
}
.grtp-booking-no-rtp-inline{
  display:inline!important;
  color:#c62828!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:800!important;
  white-space:nowrap!important;
}
.grtp-booking-member-add{
  flex:0 0 34px!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  border:0!important;
  border-radius:50%!important;
  padding:0!important;
  margin:0!important;
  background:#18894a!important;
  color:#fff!important;
  font-size:25px!important;
  line-height:32px!important;
  font-weight:700!important;
  text-align:center!important;
  box-shadow:none!important;
  touch-action:manipulation!important;
  -webkit-tap-highlight-color:transparent!important;
}
.grtp-booking-member-add:disabled{
  background:#c8cfcb!important;
  color:#fff!important;
  opacity:1!important;
}
.grtp-booking-member-row.selected{opacity:1!important;background:#f3f5f4!important}
.grtp-booking-member-row.selected .grtp-booking-member-name{opacity:.48!important}

/* v1.0.36 Published Flight compact No-RTP treatment.
   No-RTP uses blue name text only; red remains reserved for Playing Assignment. */
.grtp-hub-published .grtp-slot{
  padding-top:7px!important;
  padding-bottom:7px!important;
}
.grtp-hub-published .grtp-slot>.grtp-no-rtp,
.grtp-hub-published .grtp-member-slot-name.grtp-no-rtp{
  color:#2563eb!important;
}
.grtp-hub-published .grtp-no-rtp-badge,
.grtp-hub-published .grtp-no-rtp-label{
  display:none!important;
}
.grtp-published-legend{
  padding:5px 9px 3px!important;
  text-align:right!important;
  color:#2563eb!important;
  font-size:9px!important;
  line-height:1.2!important;
  font-weight:800!important;
  background:#fff!important;
}
/* Playing Assignment remains red and may use the second line only when needed. */
.grtp-hub-published .grtp-slot .swap{
  color:#d92d20!important;
}

/* v1.0.37 member Waitlist publisher */
.grtp-member-waitlist .grtp-waitlist-date-strip{margin-bottom:10px!important}
.grtp-waitlist-selected-card{padding:11px!important;margin:8px 0 10px!important}
.grtp-waitlist-selected-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-end;margin-bottom:8px}
.grtp-waitlist-selected-head strong{font-size:14px!important;color:#20262d!important}
.grtp-waitlist-selected-head small{font-size:9px!important;line-height:1.2!important;color:#667085!important;text-align:right}
.grtp-waitlist-selected-list{display:grid;gap:6px}
.grtp-waitlist-selected-row{display:grid;grid-template-columns:minmax(0,1fr) auto 32px;gap:7px;align-items:center;min-height:40px;padding:6px 7px;border:1px solid #e1e6e3;border-radius:10px;background:#fff}
.grtp-waitlist-selected-name{min-width:0;font-size:13px;font-weight:800;color:#20262d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.grtp-waitlist-selected-row label{display:flex;align-items:center;gap:3px;margin:0!important;font-size:11px!important;color:#55615b!important}
.grtp-waitlist-selected-row select{width:54px!important;min-width:54px!important;height:32px!important;padding:2px 20px 2px 7px!important;margin:0!important;font-size:13px!important}
.grtp-waitlist-remove{width:30px!important;height:30px!important;min-width:30px!important;padding:0!important;border:0!important;border-radius:50%!important;background:#f2f4f3!important;color:#8a3128!important;font-size:21px!important;line-height:28px!important;font-weight:700!important}
.grtp-waitlist-selected-empty{padding:8px 2px;color:#7a8580;font-size:11px}
.grtp-waitlist-picker{position:relative;background:#fff;padding:8px 0 0;border-top:1px solid #e7ebe9}
.grtp-waitlist-search-head input{width:100%!important;min-height:44px!important;margin:0 0 8px!important;font-size:16px!important}
.grtp-waitlist-member-list{max-height:min(44dvh,390px);min-height:210px;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;border:1px solid #e1e6e3;border-radius:12px;background:#fff}
.grtp-waitlist-member-group{position:sticky;top:0;z-index:2;padding:7px 10px 6px;background:#f3f6f4;border-bottom:1px solid #dfe6e2;color:#315243;font-size:10px;line-height:1.1;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.grtp-waitlist-member-row{display:flex;align-items:center;gap:8px;min-height:46px;padding:8px 11px;border-bottom:1px solid #eef1ef;cursor:default;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.grtp-waitlist-member-row:last-of-type{border-bottom:0}
.grtp-waitlist-member-name{display:flex;align-items:baseline;gap:7px;min-width:0;flex:1 1 auto}
.grtp-waitlist-member-name strong{min-width:0;font-size:14px;color:#20262d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.grtp-waitlist-member-name small{flex:0 0 auto;font-size:9px;font-weight:800;color:#7a8580;white-space:nowrap}
.grtp-waitlist-member-row.selected .grtp-waitlist-member-name{opacity:.48}
.grtp-waitlist-member-row.unavailable .grtp-waitlist-member-name{opacity:.52}
.grtp-waitlist-member-add{flex:0 0 34px;width:34px;height:34px;min-width:34px;min-height:34px;border:0;border-radius:50%;padding:0;margin:0;background:#18894a;color:#fff;font-size:25px;line-height:32px;font-weight:700;text-align:center;box-shadow:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.grtp-waitlist-member-add:disabled{background:#c8cfcb;color:#fff;opacity:1}
.grtp-waitlist-member-empty{padding:14px;color:#7a8580;font-size:11px;text-align:center}
.grtp-waitlist-actions{display:flex;justify-content:flex-end;padding-top:10px}
.grtp-waitlist-actions .grtp-primary{min-width:150px}

/* Published waitlists reuse the flight grid. P1 is the actual waitlisted member;
   P2-P4 are available RTP names and intentionally lighter. */
.grtp-hub-published .grtp-published-waitlist{background:#fbfcfb!important}
.grtp-hub-published .grtp-waitlist-time strong{display:block;font-size:11px!important;line-height:1.15!important;color:#20262d!important;white-space:nowrap}
.grtp-hub-published .grtp-waitlist-time small{display:block;margin-top:3px;font-size:8.5px!important;line-height:1.1!important;color:#7a8580!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.grtp-hub-published .grtp-waitlist-available span{color:#8d9892!important;font-weight:650!important}
@media(max-width:520px){
  .grtp-waitlist-selected-head{align-items:flex-start;flex-direction:column;gap:2px}
  .grtp-waitlist-selected-head small{text-align:left}
  .grtp-waitlist-member-list{max-height:46dvh}
}

/* v1.0.39: preserve RTP history on published Waitlist cards after withdrawal. */
.grtp-hub-published .grtp-published-waitlist .grtp-waitlist-withdrawn{
  display:block!important;
  margin-top:2px!important;
  font-size:8px!important;
  line-height:1.05!important;
  font-weight:800!important;
  color:#667085!important;
  white-space:nowrap!important;
}

/* v1.0.40: waitlist withdrawal, secure conversion and audit trail. */
.grtp-hub-published .grtp-published-waitlist .grtp-waitlist-withdrawn{
  color:#d92d20!important;
}
.grtp-waitlist-secure-toggle{
  display:inline-block!important;
  width:auto!important;
  min-width:0!important;
  margin:3px 0 0!important;
  padding:1px 5px!important;
  border:1px solid #9dcbb1!important;
  border-radius:999px!important;
  background:#edf8f1!important;
  color:#157347!important;
  font-size:8px!important;
  line-height:1.35!important;
  font-weight:900!important;
  box-shadow:none!important;
}
.grtp-waitlist-secure-panel[hidden]{display:none!important}
.grtp-waitlist-secure-panel{
  border-top:1px solid #e3e9e6;
  background:#f7faf8;
  padding:7px 8px 9px;
}
.grtp-waitlist-secure-form{
  display:grid;
  grid-template-columns:minmax(78px,.7fr) minmax(94px,.9fr) minmax(150px,1.4fr);
  gap:7px;
  align-items:end;
}
.grtp-waitlist-secure-form label{
  margin:0!important;
  font-size:9px!important;
  font-weight:800!important;
  color:#55615b!important;
}
.grtp-waitlist-secure-form input,.grtp-waitlist-secure-form select{
  width:100%!important;
  height:34px!important;
  margin:3px 0 0!important;
  padding:5px 7px!important;
  border:1px solid #cbd5cf!important;
  border-radius:8px!important;
  background:#fff!important;
  font-size:13px!important;
  box-sizing:border-box!important;
}
.grtp-waitlist-secure-form .grtp-primary{
  width:100%!important;
  min-height:34px!important;
  margin:0!important;
  padding:7px 9px!important;
  font-size:10px!important;
}
.grtp-waitlist-secured-label{
  display:block!important;
  margin-top:2px!important;
  font-size:8.5px!important;
  line-height:1.2!important;
  color:#157347!important;
  font-weight:800!important;
}
@media(max-width:520px){
  .grtp-waitlist-secure-form{grid-template-columns:1fr 1fr}
  .grtp-waitlist-secure-form .grtp-primary{grid-column:1 / -1}
}

/* v1.0.41 Scorecard-style player search.
   Search is launched into a fixed flex viewport so the phone keyboard never
   has to reposition the Booked Flight / Waitlist page underneath it. */
.grtp-player-search-launch{
  width:100%!important;min-height:44px!important;box-sizing:border-box!important;
  display:flex!important;align-items:center!important;gap:9px!important;
  border:1px solid #d0d5dd!important;border-radius:10px!important;background:#fff!important;
  color:#344054!important;padding:9px 12px!important;margin:0 0 8px!important;
  text-align:left!important;box-shadow:none!important;font-size:15px!important;
}
.grtp-player-search-launch>span{font-size:23px!important;line-height:1!important;color:#18894a!important}
.grtp-player-search-launch>strong{font-size:15px!important;font-weight:700!important;color:#667085!important}
.grtp-player-search-launch:disabled{opacity:.5!important}
.grtp-player-picker-overlay[hidden]{display:none!important}
.grtp-player-picker-overlay{
  display:flex!important;position:fixed!important;inset:0!important;z-index:2147483600!important;
  width:100%!important;max-width:680px!important;height:100%!important;min-height:0!important;
  margin:0 auto!important;padding:0!important;background:#f4f5f7!important;overflow:hidden!important;
  box-sizing:border-box!important;overscroll-behavior:none!important;
}
.grtp-player-picker-panel{display:flex!important;flex-direction:column!important;width:100%!important;height:100%!important;min-height:0!important;overflow:hidden!important}
.grtp-player-picker-head{
  flex:0 0 auto!important;min-height:70px!important;box-sizing:border-box!important;
  padding:calc(env(safe-area-inset-top) + 10px) 14px 9px!important;
  display:grid!important;grid-template-columns:58px minmax(0,1fr) 64px!important;align-items:center!important;
  background:#fff!important;border-bottom:1px solid #e3e6e9!important;text-align:center!important;
}
.grtp-player-picker-head>div{min-width:0!important}
.grtp-player-picker-head h3{margin:0!important;font-size:20px!important;line-height:1.15!important;color:#20262d!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.grtp-player-picker-head small{display:block!important;margin-top:2px!important;font-size:10px!important;line-height:1.15!important;color:#667085!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.grtp-player-picker-back,.grtp-player-picker-done{border:0!important;box-shadow:none!important;background:transparent!important;padding:7px 5px!important;margin:0!important}
.grtp-player-picker-back{justify-self:start!important;font-size:32px!important;line-height:1!important;color:#28313a!important}
.grtp-player-picker-done{justify-self:end!important;font-size:14px!important;font-weight:850!important;color:#fff!important;background:#18894a!important;border-radius:8px!important;padding:9px 10px!important}
.grtp-booking-search-preview{
  flex:0 0 auto!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:5px!important;padding:9px 12px!important;background:#fff!important;border-bottom:1px solid #e3e6e9!important;
}
.grtp-player-picker-slot{min-width:0!important;min-height:54px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;border:1px solid #cbd2da!important;border-radius:9px!important;background:#fff!important;padding:5px 3px!important;box-sizing:border-box!important}
.grtp-player-picker-slot small{display:block!important;font-size:9px!important;line-height:1.1!important;color:#7b8490!important;font-weight:800!important}
.grtp-player-picker-slot strong{display:block!important;width:100%!important;margin-top:2px!important;font-size:11px!important;line-height:1.1!important;color:#20262d!important;white-space:normal!important;overflow-wrap:anywhere!important}
.grtp-player-picker-slot.empty{border-style:dashed!important;background:#fafbfa!important}
.grtp-player-picker-slot.empty strong{color:#8a9490!important;font-size:9px!important;font-weight:700!important}
.grtp-player-picker-slot em{display:block!important;margin-top:2px!important;font-size:8px!important;line-height:1!important;color:#2563eb!important;font-style:normal!important;font-weight:800!important}
.grtp-waitlist-search-preview{
  flex:0 0 auto!important;min-height:42px!important;max-height:74px!important;overflow-x:auto!important;overflow-y:hidden!important;
  display:flex!important;align-items:center!important;gap:6px!important;padding:7px 12px!important;background:#fff!important;border-bottom:1px solid #e3e6e9!important;
  -webkit-overflow-scrolling:touch!important;overscroll-behavior-x:contain!important;
}
.grtp-waitlist-search-chip{flex:0 0 auto!important;max-width:180px!important;padding:6px 9px!important;border:1px solid #dce5df!important;border-radius:999px!important;background:#f4faf6!important;color:#315243!important;font-size:11px!important;font-weight:800!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.grtp-waitlist-search-preview-empty{font-size:11px!important;color:#7a8580!important}
.grtp-player-picker-search{
  flex:0 0 auto!important;margin:10px 12px 8px!important;display:flex!important;align-items:center!important;
  border:1px solid #d8dfe4!important;border-radius:10px!important;background:#fff!important;padding:0 11px!important;
}
.grtp-player-picker-search>span{font-size:23px!important;line-height:1!important;color:#18894a!important}
.grtp-player-picker-search input{
  width:100%!important;min-width:0!important;min-height:44px!important;margin:0!important;padding:10px 7px!important;
  border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;color:#20262d!important;font-size:16px!important;
}
.grtp-player-search-results{
  flex:1 1 0!important;min-height:0!important;max-height:46vh!important;overflow-y:auto!important;overflow-x:hidden!important;
  margin:0 12px calc(env(safe-area-inset-bottom) + 10px)!important;border:1px solid #e0e4e2!important;border-radius:12px!important;background:#fff!important;
  -webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;touch-action:pan-y!important;
}
.grtp-player-search-group{position:sticky!important;top:0!important;z-index:3!important;padding:7px 10px 6px!important;background:#f3f6f4!important;border-bottom:1px solid #dfe6e2!important;color:#315243!important;font-size:10px!important;line-height:1.1!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.04em!important}
.grtp-player-search-results .grtp-booking-member-row,.grtp-player-search-results .grtp-waitlist-member-row{min-height:50px!important;border-radius:0!important;border-left:0!important;border-right:0!important;background:#fff!important}
.grtp-player-search-results .grtp-booking-member-row:last-child,.grtp-player-search-results .grtp-waitlist-member-row:last-child{border-bottom:0!important}
.grtp-player-search-empty{padding:20px 14px!important;text-align:center!important;color:#707a73!important;font-size:13px!important}
html.grtp-player-search-open,body.grtp-player-search-open{overscroll-behavior:none!important}
@media(max-width:390px){
  .grtp-player-picker-head{grid-template-columns:48px minmax(0,1fr) 58px!important;padding-left:9px!important;padding-right:9px!important}
  .grtp-player-picker-head h3{font-size:18px!important}
  .grtp-booking-search-preview{padding-left:8px!important;padding-right:8px!important;gap:4px!important}
  .grtp-player-picker-slot strong{font-size:10px!important}
  .grtp-player-search-results{margin-left:8px!important;margin-right:8px!important}
  .grtp-player-picker-search{margin-left:8px!important;margin-right:8px!important}
}

/* v1.0.45 task-first navigation for More sub-screens.
   Date selectors are separate from work screens; X always goes back one level. */
.grtp-work-head{
  display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important;
  margin:2px 0 12px!important;padding:11px 12px!important;border:1px solid #d9e2dd!important;border-radius:14px!important;
  background:#fff!important;box-shadow:0 2px 8px rgba(25,55,38,.05)!important;
}
.grtp-work-head-copy{min-width:0!important;display:flex!important;flex-direction:column!important;gap:2px!important}
.grtp-work-head h3{margin:0!important;color:#172033!important;font-size:19px!important;line-height:1.15!important;font-weight:950!important}
.grtp-work-head strong{font-size:13px!important;line-height:1.2!important;color:#176f3e!important;font-weight:900!important}
.grtp-work-head small{font-size:10px!important;line-height:1.2!important;color:#667085!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:min(72vw,560px)!important}
.grtp-work-close{
  flex:0 0 38px!important;width:38px!important;height:38px!important;display:flex!important;align-items:center!important;justify-content:center!important;
  margin:0!important;padding:0!important;border:1px solid #cfd8d3!important;border-radius:50%!important;background:#fff!important;color:#344054!important;
  text-decoration:none!important;font-size:27px!important;line-height:1!important;font-weight:500!important;box-shadow:none!important;-webkit-tap-highlight-color:transparent!important;
}
.grtp-work-close:focus,.grtp-work-close:active{background:#f3f6f4!important;color:#172033!important;outline:0!important}
.grtp-work-date-select>.grtp-sub{margin:0 3px 10px!important}
.grtp-work-date-card{min-height:72px!important;margin-bottom:9px!important;padding:13px!important}
.grtp-work-date-card .grtp-admin-count b{color:#176f3e!important}
.grtp-work-date-card .grtp-admin-count small{white-space:nowrap!important}
.grtp-work-screen>.grtp-sub{margin:0 3px 9px!important}
.grtp-work-section-head{display:flex!important;justify-content:space-between!important;align-items:flex-end!important;gap:10px!important;margin:8px 2px 7px!important}
.grtp-work-section-head strong{font-size:14px!important;color:#20262d!important;font-weight:900!important}
.grtp-work-section-head small{font-size:9px!important;line-height:1.2!important;color:#667085!important;text-align:right!important}
.grtp-my-waitlist-head{margin-top:15px!important;padding-top:12px!important;border-top:1px solid #dfe6e2!important}
.grtp-waitlist-work-block{margin-bottom:12px!important}
.grtp-waitlist-work-table{border:1px solid #dfe6e2!important;border-radius:12px!important;overflow:hidden!important;background:#fff!important}
.grtp-waitlist-work-table .grtp-published-waitlist{background:#fbfcfb!important}
.grtp-waitlist-work-table .grtp-waitlist-time strong{display:block!important;font-size:11px!important;line-height:1.15!important;color:#20262d!important;white-space:nowrap!important}
.grtp-waitlist-work-table .grtp-waitlist-time small{display:block!important;margin-top:3px!important;font-size:8.5px!important;line-height:1.1!important;color:#7a8580!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.grtp-waitlist-work-table .grtp-waitlist-available span{color:#8d9892!important;font-weight:650!important}
.grtp-waitlist-work-table .grtp-slot>.grtp-no-rtp{color:#2563eb!important}
.grtp-waitlist-work-table .grtp-waitlist-withdrawn{display:block!important;margin-top:2px!important;font-size:8px!important;line-height:1.05!important;font-weight:900!important;color:#d92d20!important;white-space:nowrap!important}
.grtp-waitlist-work-table .grtp-waitlist-secure-panel{grid-column:1/-1!important}
.grtp-waitlist-none{margin:0!important;color:#667085!important;font-size:11px!important}
@media(max-width:520px){
  .grtp-work-head{padding:10px!important}
  .grtp-work-head h3{font-size:18px!important}
  .grtp-work-close{width:36px!important;height:36px!important;flex-basis:36px!important;font-size:25px!important}
  .grtp-work-section-head{align-items:flex-start!important;flex-direction:column!important;gap:2px!important}
  .grtp-work-section-head small{text-align:left!important}
}

/* v1.0.46 cleaner member picking and waitlist editing. */
.grtp-booking-member-row,
.grtp-waitlist-member-row{
  cursor:pointer!important;
  touch-action:pan-y!important;
  -webkit-tap-highlight-color:rgba(24,137,74,.08)!important;
}
.grtp-booking-member-row[aria-disabled="true"],
.grtp-waitlist-member-row[aria-disabled="true"]{cursor:default!important;}
.grtp-booking-member-row:active:not([aria-disabled="true"]),
.grtp-waitlist-member-row:active:not([aria-disabled="true"]){background:#f2f8f4!important;}
.grtp-booking-member-add,.grtp-waitlist-member-add{display:none!important;}

.grtp-member-booking-actions-top{margin:10px 0 12px!important;}
.grtp-member-booking-actions-top .grtp-primary{min-height:42px!important;}

.grtp-waitlist-selected-card{padding:10px 11px!important;}
.grtp-waitlist-selected-list{gap:0!important;}
.grtp-waitlist-selected-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto 30px!important;
  gap:8px!important;
  align-items:center!important;
  min-height:43px!important;
  padding:6px 0!important;
  border:0!important;
  border-bottom:1px solid #e9eeeb!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.grtp-waitlist-selected-row:last-of-type{border-bottom:0!important;}
.grtp-waitlist-selected-name{
  font-size:14px!important;
  font-weight:750!important;
  color:#20262d!important;
}
.grtp-waitlist-selected-row label{
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  margin:0!important;
  color:#667085!important;
  font-size:9px!important;
  font-weight:750!important;
  white-space:nowrap!important;
}
.grtp-waitlist-selected-row select{
  width:76px!important;
  min-width:76px!important;
  height:32px!important;
  margin:0!important;
  padding:2px 20px 2px 7px!important;
  font-size:12px!important;
  background-color:#fff!important;
}
.grtp-waitlist-remove{
  width:28px!important;
  height:28px!important;
  min-width:28px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#8a3128!important;
  font-size:22px!important;
  line-height:26px!important;
  box-shadow:none!important;
}
.grtp-waitlist-actions-top{padding:0 0 12px!important;justify-content:stretch!important;}
.grtp-waitlist-actions-top .grtp-primary{width:100%!important;min-height:42px!important;margin:0!important;}
.grtp-waitlist-actions-top .grtp-primary:disabled{opacity:.45!important;}
.grtp-waitlist-picker{padding-top:10px!important;}

/* Search preview is informational, not a row of button-like pills. */
.grtp-waitlist-search-preview{
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  padding:4px 12px!important;
  overflow:auto!important;
}
.grtp-waitlist-search-chip{
  display:block!important;
  max-width:none!important;
  padding:5px 0!important;
  border:0!important;
  border-bottom:1px solid #edf1ef!important;
  border-radius:0!important;
  background:transparent!important;
  color:#315243!important;
  font-size:11px!important;
  font-weight:800!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.grtp-waitlist-search-chip:last-child{border-bottom:0!important;}

@media(max-width:520px){
  .grtp-waitlist-selected-row{grid-template-columns:minmax(0,1fr) auto 28px!important;gap:6px!important;}
  .grtp-waitlist-selected-row label>span{display:none!important;}
  .grtp-waitlist-selected-row select{width:74px!important;min-width:74px!important;}
}


/* v1.0.47 clearer names + reveal latest selection. */
.grtp-booking-member-name,
.grtp-waitlist-member-name,
.grtp-waitlist-selected-name{
  text-align:left!important;
  justify-content:flex-start!important;
}
.grtp-booking-member-name{flex:1 1 auto!important;min-width:0!important;}
.grtp-booking-member-row strong,
.grtp-waitlist-member-name strong{
  font-size:15px!important;
  text-align:left!important;
}
.grtp-waitlist-selected-name{
  width:100%!important;
  justify-self:start!important;
  font-size:15px!important;
  text-align:left!important;
}
.grtp-player-search-results .grtp-booking-member-name,
.grtp-player-search-results .grtp-waitlist-member-name{
  width:100%!important;
  text-align:left!important;
}
.grtp-waitlist-search-chip{
  font-size:13px!important;
  text-align:left!important;
}


/* v1.0.48 task-first RTP Admin publish action + larger native bottom nav. */
.grtp-admin-publish-top{
  padding:10px 0 12px!important;
}
.grtp-admin-publish-top .grtp-primary{
  width:100%!important;
  min-height:46px!important;
  margin:0!important;
  font-size:15px!important;
}

/* Native anchors are more reliable than intercepted pointer navigation in PWA. */
.grtp-shell{padding-bottom:116px!important;}
.grtp-bottom-nav{
  height:88px!important;
  padding:6px 5px calc(7px + env(safe-area-inset-bottom))!important;
  align-items:end!important;
  pointer-events:auto!important;
}
.grtp-bottom-nav .grtp-nav-item{
  width:100%!important;
  height:74px!important;
  min-height:74px!important;
  padding:5px 2px!important;
  gap:3px!important;
  font-size:12.5px!important;
  line-height:1.05!important;
  box-sizing:border-box!important;
  touch-action:manipulation!important;
  -webkit-tap-highlight-color:rgba(20,121,67,.10)!important;
}
.grtp-bottom-nav .grtp-nav-icon{
  font-size:27px!important;
  height:30px!important;
  line-height:30px!important;
}
.grtp-bottom-nav .grtp-nav-plus{
  width:58px!important;
  height:58px!important;
  font-size:34px!important;
  margin-bottom:0!important;
}
.grtp-bottom-nav .grtp-nav-item.grtp-nav-pressed,
.grtp-bottom-nav .grtp-nav-item:active{
  background:#eef8f1!important;
  color:#147943!important;
}
@media(max-width:480px){
  .grtp-bottom-nav .grtp-nav-item{font-size:12px!important;}
  .grtp-bottom-nav .grtp-nav-plus{width:56px!important;height:56px!important;font-size:33px!important;}
}


/* v1.1.2 clearer date-first workflow + full/short name hierarchy. */
.grtp-work-head h3{
  font-weight:600!important;
  letter-spacing:-.01em!important;
}
.grtp-work-head strong{font-weight:750!important;}
.grtp-work-date-card>div:first-child>small{
  margin-top:4px!important;
  color:#4b5563!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:600!important;
}
.grtp-work-date-card .grtp-admin-count b{
  font-size:14px!important;
  font-weight:800!important;
}
.grtp-work-date-card .grtp-admin-count small{
  margin-top:4px!important;
  color:#4f5c69!important;
  font-size:11.5px!important;
  line-height:1.2!important;
  font-weight:650!important;
}
.grtp-selection-name-lines{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:1px!important;
  text-align:left!important;
}
.grtp-selection-short-name{
  display:block!important;
  margin:1px 0 0!important;
  color:#7b8490!important;
  font-size:11px!important;
  line-height:1.15!important;
  font-weight:600!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  max-width:100%!important;
}
.grtp-booking-member-name,
.grtp-waitlist-member-name{
  align-items:center!important;
}
.grtp-selection-status{
  flex:0 0 auto!important;
  margin-left:auto!important;
  color:#687386!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:750!important;
  white-space:nowrap!important;
}
.grtp-name-person .grtp-selection-short-name{font-size:10.5px!important;}
.grtp-admin-member-name .grtp-selection-short-name{font-size:11px!important;}
.grtp-member-row .grtp-selection-name-lines strong{font-size:14px!important;}
.grtp-member-row .grtp-selection-short-name{font-size:11px!important;}
.grtp-rtp-submit-work{margin-top:0!important;}
@media(max-width:390px){
  .grtp-work-date-card>div:first-child>small{font-size:11.5px!important;}
  .grtp-work-date-card .grtp-admin-count small{font-size:11px!important;}
}

/* v1.1.3 PWA identity/install refinements */
button.grtp-more-card.grtp-pwa-install-card{width:100%;appearance:none;-webkit-appearance:none;text-align:left;font:inherit;cursor:pointer}
.grtp-pwa-install-card strong{color:#147943}
.grtp-pwa-install-card[hidden]{display:none!important}


/* v1.1.4: installed-PWA top safe area.
   viewport-fit=cover lets the splash fill the Dynamic Island region; once the
   splash exits, keep the RTP app content below that same iOS safe area. */
html.grtp-standalone .grtp-shell{
  padding-top:calc(10px + env(safe-area-inset-top))!important;
}

/* v1.1.5: current RTP / waitlist first on date landing screens. */
.grtp-current-section{margin:0 0 18px}
.grtp-current-section-head{display:flex;flex-direction:column;gap:2px;margin:2px 0 9px;padding:0 2px;text-align:left}
.grtp-current-section-head strong{font-size:16px;line-height:1.2;font-weight:750;color:#25313b}
.grtp-current-section-head small{font-size:11.5px;line-height:1.35;font-weight:550;color:#6b7580}
.grtp-current-list{display:grid;gap:8px}
.grtp-current-card{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 12px 11px;background:#fff;border:1px solid #dbe3df;border-radius:13px;box-shadow:0 3px 10px rgba(30,55,42,.04)}
.grtp-current-main{min-width:0;flex:1;text-align:left}
.grtp-current-date{font-size:14px;line-height:1.15;font-weight:800;color:#24313b}
.grtp-current-course{margin-top:2px;font-size:12px;line-height:1.2;font-weight:650;color:#596672;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.grtp-current-person{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:7px}
.grtp-current-person strong{font-size:14px;line-height:1.15;font-weight:800;color:#26323b}
.grtp-current-status{display:inline-flex;align-items:center;min-height:20px;padding:2px 7px;border-radius:999px;background:#edf6f0;color:#217349;font-size:10.5px;line-height:1;font-weight:800}
.grtp-current-status.warn{background:#fff0ed;color:#b33a31}
.grtp-current-actions{display:flex;flex:0 0 auto;align-items:center;gap:6px}
.grtp-current-actions form{margin:0!important}
.grtp-current-action{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:34px!important;margin:0!important;padding:0 10px!important;border:1px solid #b9cec1!important;border-radius:9px!important;background:#f1f7f3!important;color:#176b40!important;font:750 11px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important;text-decoration:none!important;white-space:nowrap!important;appearance:none!important;-webkit-appearance:none!important}
.grtp-current-action.danger{border-color:#ecc9c5!important;background:#fff3f1!important;color:#a6352e!important}
.grtp-work-date-select-below{margin-top:18px!important;padding-top:15px!important;border-top:1px solid #e5ebe7}
.grtp-date-select-head{margin-bottom:10px}
@media(max-width:430px){
  .grtp-current-card{align-items:flex-start;flex-direction:column;padding:11px}
  .grtp-current-actions{width:100%;justify-content:flex-end}
  .grtp-current-action{min-height:32px!important}
}

/* v1.1.7: compact one-line selected Waitlist row.
   Keep Name | Waitlist Position | Select | Remove/Delete on one row. */
.grtp-waitlist-selected-row{
  display:grid!important;
  grid-template-columns:minmax(72px,1fr) auto auto!important;
  gap:5px!important;
  align-items:center!important;
  min-width:0!important;
}
.grtp-waitlist-selected-name{
  min-width:0!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.grtp-waitlist-selected-row label{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:4px!important;
  min-width:0!important;
  white-space:nowrap!important;
  margin:0!important;
  font-size:9.5px!important;
  font-weight:700!important;
  color:#667085!important;
}
.grtp-waitlist-selected-row label>span{
  display:inline!important;
  white-space:nowrap!important;
}
.grtp-waitlist-selected-row select{
  width:66px!important;
  min-width:66px!important;
  height:32px!important;
  margin:0!important;
  padding:2px 18px 2px 6px!important;
  font-size:11.5px!important;
}
.grtp-waitlist-remove,
.grtp-waitlist-delete{
  min-height:30px!important;
  width:auto!important;
  min-width:0!important;
  padding:5px 7px!important;
  border-radius:7px!important;
  font-size:10.5px!important;
  line-height:1.15!important;
  font-weight:750!important;
  box-shadow:none!important;
  white-space:nowrap!important;
}
.grtp-waitlist-remove{
  border:1px solid #cfd5dc!important;
  background:#fff!important;
  color:#4b5563!important;
}
.grtp-waitlist-delete{
  border:1px solid #d92d20!important;
  background:#fff5f4!important;
  color:#b42318!important;
}
.grtp-waitlist-delete:active{background:#fee4e2!important;}
@media(max-width:380px){
  .grtp-waitlist-selected-row{grid-template-columns:minmax(64px,1fr) auto auto!important;gap:4px!important;}
  .grtp-waitlist-selected-row label{font-size:9px!important;gap:3px!important;}
  .grtp-waitlist-selected-row select{width:62px!important;min-width:62px!important;padding-left:5px!important;}
  .grtp-waitlist-remove,.grtp-waitlist-delete{padding-left:6px!important;padding-right:6px!important;font-size:10px!important;}
}



/* v1.1.8: app-style centered headers for More sub-pages.
   Booked Flight, Waitlist, RTP Admin and Automation Settings use a larger
   centered title with a left-side back control instead of the right-side X. */
.grtp-work-head.grtp-work-head-centered{
  position:relative!important;
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) 42px!important;
  align-items:center!important;
  justify-content:stretch!important;
  min-height:66px!important;
  padding:10px 12px!important;
  gap:6px!important;
}
.grtp-work-head-centered .grtp-work-head-copy{
  min-width:0!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  gap:3px!important;
}
.grtp-work-head-centered h3{
  width:100%!important;
  margin:0!important;
  color:#172033!important;
  font-size:23px!important;
  line-height:1.12!important;
  font-weight:650!important;
  letter-spacing:-.015em!important;
  text-align:center!important;
}
.grtp-work-head-centered strong{
  width:100%!important;
  font-size:13.5px!important;
  line-height:1.18!important;
  font-weight:750!important;
  text-align:center!important;
}
.grtp-work-head-centered small{
  width:100%!important;
  max-width:100%!important;
  font-size:10.5px!important;
  line-height:1.2!important;
  text-align:center!important;
}
.grtp-work-back{
  grid-column:1!important;
  align-self:center!important;
  justify-self:start!important;
  width:38px!important;
  height:38px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  background:#f3f5f6!important;
  color:#344054!important;
  text-decoration:none!important;
  font-size:36px!important;
  line-height:1!important;
  font-weight:400!important;
  box-shadow:none!important;
  -webkit-tap-highlight-color:transparent!important;
  touch-action:manipulation!important;
}
.grtp-work-back:focus,.grtp-work-back:active{
  background:#e8edef!important;
  color:#172033!important;
  outline:0!important;
}
.grtp-work-head-spacer{
  grid-column:3!important;
  width:38px!important;
  height:38px!important;
  display:block!important;
}
@media(max-width:520px){
  .grtp-work-head.grtp-work-head-centered{
    grid-template-columns:40px minmax(0,1fr) 40px!important;
    min-height:64px!important;
    padding:9px 10px!important;
  }
  .grtp-work-head-centered h3{font-size:22px!important;}
  .grtp-work-back{width:36px!important;height:36px!important;font-size:34px!important;}
  .grtp-work-head-spacer{width:36px!important;height:36px!important;}
}


/* v1.1.12: compact Submit RTP landing UI.
   Match the Waitlist app header and keep current RTP actions beside the full name. */
.grtp-work-head.grtp-work-head-centered.grtp-work-head-submit{
  background:#f2f8f4!important;
  border-color:#d4e5da!important;
}
.grtp-current-rtp .grtp-current-list{gap:6px!important;}
.grtp-current-rtp .grtp-current-card{
  display:block!important;
  padding:9px 10px!important;
  border-radius:11px!important;
}
.grtp-current-topline{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:8px!important;
}
.grtp-current-full-name{
  min-width:0!important;
  color:#25313b!important;
  font-size:14px!important;
  line-height:1.18!important;
  font-weight:750!important;
  text-align:left!important;
  overflow-wrap:anywhere!important;
}
.grtp-current-rtp .grtp-current-actions{
  width:auto!important;
  justify-content:flex-end!important;
  gap:5px!important;
}
.grtp-current-rtp .grtp-current-action{
  min-height:30px!important;
  padding:0 8px!important;
  border-radius:8px!important;
  font-size:10.5px!important;
}
.grtp-current-meta{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:4px!important;
  margin-top:6px!important;
  min-width:0!important;
  color:#66717a!important;
}
.grtp-current-meta .grtp-current-date{
  font-size:11.5px!important;
  line-height:1.15!important;
  font-weight:700!important;
  color:#4b5963!important;
}
.grtp-current-meta .grtp-current-course{
  min-width:0!important;
  max-width:46%!important;
  margin:0!important;
  font-size:11.5px!important;
  line-height:1.15!important;
  font-weight:600!important;
  color:#596672!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.grtp-current-meta .grtp-current-status{
  min-height:18px!important;
  margin-left:auto!important;
  padding:2px 6px!important;
  font-size:9.5px!important;
}
.grtp-current-dot{color:#98a29d!important;font-size:12px!important;line-height:1!important;}
@media(max-width:380px){
  .grtp-current-full-name{font-size:13.5px!important;}
  .grtp-current-rtp .grtp-current-action{padding-left:7px!important;padding-right:7px!important;font-size:10px!important;}
  .grtp-current-meta .grtp-current-course{max-width:42%!important;}
}


/* v1.1.13: App Admin / RTP Admin separation and larger Submit RTP typography. */
.grtp-more-card-admin{border-color:#cfe2d6!important;background:linear-gradient(135deg,#f1f8f3,#fff)!important}
.grtp-current-rtp .grtp-current-section-head strong,
.grtp-date-select-head strong{font-size:18px!important;line-height:1.18!important;font-weight:760!important}
.grtp-current-rtp .grtp-current-section-head small,
.grtp-date-select-head small{font-size:13px!important;line-height:1.35!important}
.grtp-current-full-name{font-size:16px!important;line-height:1.18!important;font-weight:780!important}
.grtp-current-meta .grtp-current-date,
.grtp-current-meta .grtp-current-course{font-size:13px!important;line-height:1.18!important}
.grtp-current-meta .grtp-current-status{font-size:10.5px!important;min-height:20px!important}
.grtp-work-date-card>div:first-child>strong{font-size:16px!important;line-height:1.2!important}
.grtp-work-date-card>div:first-child>small{font-size:13px!important;line-height:1.25!important}
.grtp-work-date-card .grtp-admin-count b{font-size:14px!important}
.grtp-work-date-card .grtp-admin-count small{font-size:12px!important}
@media(max-width:380px){
  .grtp-current-full-name{font-size:15px!important}
  .grtp-current-meta .grtp-current-date,.grtp-current-meta .grtp-current-course{font-size:12px!important}
}

/* v1.1.15: Android PWA install offer after successful member login. */
html.grtp-install-modal-open,html.grtp-install-modal-open body{overflow:hidden!important}
.grtp-install-modal{
  position:fixed!important;
  inset:0!important;
  z-index:2147483000!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:22px!important;
  padding-top:max(22px,env(safe-area-inset-top))!important;
  padding-bottom:max(22px,env(safe-area-inset-bottom))!important;
  box-sizing:border-box!important;
  background:rgba(18,28,23,.48)!important;
  -webkit-backdrop-filter:blur(2px);
  backdrop-filter:blur(2px);
}
.grtp-install-modal[hidden]{display:none!important}
.grtp-install-dialog{
  width:min(100%,390px)!important;
  box-sizing:border-box!important;
  padding:24px 20px 18px!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:0 20px 60px rgba(0,0,0,.24)!important;
  text-align:center!important;
  color:#25313b!important;
}
.grtp-install-dialog-icon{
  width:58px!important;
  height:58px!important;
  margin:0 auto 13px!important;
  border-radius:16px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#eaf6ee!important;
  color:#16884b!important;
  font-size:30px!important;
  font-weight:800!important;
  line-height:1!important;
}
.grtp-install-dialog h3{
  margin:0 0 8px!important;
  font-size:22px!important;
  line-height:1.2!important;
  font-weight:800!important;
  color:#202b34!important;
}
.grtp-install-dialog p{
  margin:0 auto 18px!important;
  max-width:310px!important;
  font-size:15px!important;
  line-height:1.45!important;
  color:#63707a!important;
}
.grtp-install-dialog-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:9px!important;
}
.grtp-install-dialog-actions button{
  min-height:46px!important;
  border-radius:12px!important;
  padding:0 13px!important;
  font:inherit!important;
  font-size:15px!important;
  font-weight:750!important;
  cursor:pointer!important;
}
.grtp-install-now{
  border:1px solid #16884b!important;
  background:#16884b!important;
  color:#fff!important;
}
.grtp-install-later{
  border:1px solid #d7ddda!important;
  background:#f5f7f6!important;
  color:#46525b!important;
}
.grtp-install-dialog-actions button:disabled{opacity:.58!important;cursor:default!important}
@media(max-width:360px){
  .grtp-install-modal{padding-left:14px!important;padding-right:14px!important}
  .grtp-install-dialog{padding-left:16px!important;padding-right:16px!important}
  .grtp-install-dialog h3{font-size:20px!important}
}

/* v1.1.16: standard back controls for RTP More/History + stronger flight-card headers. */
.grtp-page-head{
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr) 48px!important;
  align-items:center!important;
  min-height:58px!important;
  margin:0 0 12px!important;
  border-bottom:1px solid #dde5df!important;
}
.grtp-page-head h2{
  margin:0!important;
  text-align:center!important;
  font-size:23px!important;
  font-weight:650!important;
  letter-spacing:-.3px!important;
  color:#18231c!important;
}
.grtp-page-back{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:42px!important;
  height:42px!important;
  margin-left:2px!important;
  border-radius:50%!important;
  background:#f3f4f6!important;
  color:#30343a!important;
  font-size:31px!important;
  line-height:1!important;
  font-weight:500!important;
  text-decoration:none!important;
  box-shadow:none!important;
  touch-action:manipulation!important;
  -webkit-tap-highlight-color:transparent!important;
}
.grtp-page-back:active{background:#e7e9ec!important;transform:scale(.97)}
.grtp-more-grid{margin-top:0!important}

/* Give registered/booked flight cards a clear coloured header while keeping the card body white. */
.grtp-flight-card>.grtp-flight-admin-head{
  margin:-12px -12px 10px!important;
  padding:10px 12px!important;
  min-height:44px!important;
  border-radius:11px 11px 0 0!important;
  background:#176f3e!important;
  color:#fff!important;
}
.grtp-flight-card>.grtp-flight-admin-head h3{color:#fff!important;margin:0!important}
.grtp-flight-card>.grtp-flight-admin-head span,
.grtp-flight-card>.grtp-flight-admin-head .grtp-help,
.grtp-flight-card>.grtp-flight-admin-head .grtp-member-card-status,
.grtp-flight-card>.grtp-flight-admin-head .grtp-member-submitted-label,
.grtp-flight-card>.grtp-flight-admin-head .grtp-waitlist-secured-label{color:#e8f4ec!important}
.grtp-flight-card>.grtp-flight-admin-head .grtp-mini{background:#fff!important}
/* Keep RTP More/History back controls at the same visual screen inset as Scorecard More. */
.grtp-page-back{margin-left:4px!important}
@media(max-width:480px){.grtp-page-back{margin-left:8px!important}}
/* v1.1.17: colour the actual RTP History flight-table header, not only admin flight cards. */
.grtp-history-day .grtp-flight-table .grtp-frow.hdr{
  background:#176f3e!important;
  border-top-color:#176f3e!important;
}
.grtp-history-day .grtp-flight-table .grtp-frow.hdr>div{
  color:#fff!important;
  font-weight:850!important;
}



/* v1.1.18: RTP Home list now shows full member names; allow them to wrap instead of truncating. */
.grtp-hub-listing .grtp-list-person .grtp-list-name{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
}

/* v1.1.19: guest scoring details + bottom-navigation responsiveness pass. */
.grtp-guest-fields{margin-top:7px!important;padding:10px 11px!important;border:1px solid #dbe6df!important;border-radius:11px!important;background:#f7fbf8!important}
.grtp-guest-fields>label{margin-top:0!important}.grtp-guest-fields>small{display:block;margin-top:6px;color:#65736a;font-size:10.5px;line-height:1.35}
.grtp-guest-field-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.grtp-guest-field-grid label{min-width:0;margin:4px 0!important}.grtp-guest-field-grid select,.grtp-guest-field-grid input{min-height:44px!important;font-size:16px!important}
.grtp-request{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px 10px!important;align-items:center!important}.grtp-request-main{min-width:0}.grtp-request-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap}.grtp-request-actions form{margin:0}.grtp-request-actions .grtp-link{padding:7px 5px!important;white-space:nowrap}.grtp-guest-edit-toggle{color:#176f3e!important}
.grtp-guest-summary{margin-top:4px;color:#52665a;font-size:11px;font-weight:750;line-height:1.3}.grtp-guest-edit{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px 9px;margin-top:2px;padding:10px;border-top:1px solid #e2e9e4;background:#f8faf9;border-radius:0 0 10px 10px}.grtp-guest-edit[hidden]{display:none!important}.grtp-guest-edit label{margin:0!important}.grtp-guest-edit select,.grtp-guest-edit input{min-height:42px!important;font-size:16px!important}.grtp-guest-edit .grtp-primary{grid-column:1/-1;margin-top:2px!important}.grtp-guest-edit>small{grid-column:1/-1;color:#68766e;font-size:10px;line-height:1.35}
.grtp-bottom-nav .grtp-nav-item{pointer-events:auto!important;-webkit-user-select:none!important;user-select:none!important;-webkit-touch-callout:none!important;will-change:transform!important;transition:transform .06s ease,background-color .06s ease!important}.grtp-bottom-nav .grtp-nav-item.grtp-nav-pressed,.grtp-bottom-nav .grtp-nav-item:active{transform:scale(.97)!important;background:#f0f5f2!important}
@media(max-width:380px){.grtp-guest-field-grid,.grtp-guest-edit{grid-template-columns:1fr!important}.grtp-guest-edit .grtp-primary,.grtp-guest-edit>small{grid-column:1!important}.grtp-request{grid-template-columns:minmax(0,1fr) auto!important}.grtp-request-actions{gap:2px}.grtp-request-actions .grtp-link{font-size:11px!important;padding:6px 3px!important}}


/* v1.1.19: keep bottom-tab painting isolated and immediate without intercepting native links. */
.grtp-bottom-nav{contain:layout style!important}
.grtp-bottom-nav .grtp-nav-item{-webkit-tap-highlight-color:transparent!important}

/* v1.1.23 - secured waitlist flights use the exact club-submitted lineup. */
.grtp-waitlist-secure-members{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px;
  padding:7px;
  border:1px solid #dce6e0;
  border-radius:9px;
  background:#fff;
}
.grtp-waitlist-secure-members>small{
  grid-column:1 / -1;
  font-size:9px!important;
  line-height:1.35!important;
  color:#64706a!important;
}
@media(max-width:520px){
  .grtp-waitlist-secure-members{grid-template-columns:1fr;}
  .grtp-waitlist-secure-members>small{grid-column:1;}
}


/* Membership ID booking helper */
.grtp-booking-id-note{margin:0 0 7px;padding:8px 10px;border-radius:9px;background:#eef7f1;color:#2d5b40;font-size:12px;font-weight:700}
.grtp-booking-id-active .grtp-booking-id-selectable .grtp-list-name{color:#1672bd;cursor:pointer;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px}
.grtp-booking-id-active .grtp-listrow.grtp-booking-id-mine{background:#eaf7ef!important;cursor:pointer}
.grtp-booking-id-active .grtp-listrow.grtp-booking-id-locked{opacity:.48;background:#f0f1f1!important;cursor:not-allowed}
.grtp-booking-id-lock-label{display:block;margin-top:2px;color:#16884b;font-size:11px;font-weight:800}
.grtp-booking-id-locked .grtp-booking-id-lock-label{color:#6e7671}
.grtp-booking-id-pending{opacity:.65;pointer-events:none}
.grtp-booking-id-modal[hidden]{display:none!important}.grtp-booking-id-modal{position:fixed;inset:0;z-index:100050;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(17,29,22,.48);box-sizing:border-box}.grtp-booking-id-dialog{width:min(440px,100%);padding:20px;border-radius:17px;background:#fff;box-shadow:0 18px 55px rgba(0,0,0,.22)}.grtp-booking-id-dialog h3{margin:0 0 14px;font-size:21px}.grtp-booking-id-details{border-top:1px solid #e5e9e7}.grtp-booking-id-detail-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid #e5e9e7}.grtp-booking-id-detail-row strong{font-size:16px}.grtp-booking-id-detail-row span{font-size:17px;font-weight:850;letter-spacing:.03em;color:#18231c}.grtp-booking-id-detail-row span.missing{font-size:12px;color:#a33d31;letter-spacing:0}.grtp-booking-id-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:17px}.grtp-booking-id-actions button{min-height:44px;border:0;border-radius:10px;font-weight:850}.grtp-booking-id-actions button:first-child{background:#eef1ef;color:#344038}.grtp-booking-id-actions .grtp-primary{margin:0!important}.grtp-booking-id-modal-open{overflow:hidden!important}

/* v1.1.27 secured waitlist lineup: match Booked Flight / RTP Admin assignment UI */
.grtp-waitlist-secure-panel{padding:12px!important;background:#f7faf8!important}
.grtp-waitlist-secure-form{display:block!important}
.grtp-waitlist-secure-card{margin:0 0 12px!important;padding:0 0 14px!important;overflow:hidden}
.grtp-waitlist-secure-card>.grtp-flight-admin-head{margin:0 0 14px!important;padding:14px 16px!important}
.grtp-waitlist-secure-card>.grtp-flight-admin-head span{font-weight:700;font-size:13px}
.grtp-waitlist-secure-card .grtp-flight-edit{padding:0 14px}
.grtp-waitlist-slot-grid{padding:0 14px 2px}
.grtp-waitlist-secure-slot.fixed{cursor:default;opacity:1!important}
.grtp-waitlist-secure-picker{margin-top:0}
.grtp-waitlist-secure-search-launch{width:100%;min-height:64px;border:1px solid #d2d8d5;border-radius:14px;background:#fff;display:flex;align-items:center;gap:12px;padding:0 18px;font:inherit;color:#5e6670;text-align:left}
.grtp-waitlist-secure-search-launch span{font-size:26px;color:#15934e;font-weight:800}
.grtp-waitlist-secure-search-launch strong{font-size:20px}
.grtp-waitlist-secure-member-row{display:flex;align-items:center;min-height:68px;padding:11px 16px;border-bottom:1px solid #e4e8e6;background:#fff;cursor:pointer}
.grtp-waitlist-secure-member-row.selected{opacity:.45;pointer-events:none}
.grtp-waitlist-secure-member-row.grtp-no-rtp strong{color:#1672cf}
.grtp-waitlist-secure-submit{width:100%;margin-top:14px;min-height:56px}
@media(max-width:640px){
  .grtp-waitlist-secure-panel{padding:10px!important}
  .grtp-waitlist-secure-card .grtp-flight-edit{padding:0 12px}
  .grtp-waitlist-slot-grid{padding:0 12px 2px}
}


/* v1.1.27 unified navigation UAT */
.grtp-bottom-nav-four{grid-template-columns:repeat(4,1fr)!important}
.grtp-bottom-nav-four .grtp-nav-item{min-width:0!important}
.grtp-submit-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin:4px 0 12px;padding:10px 15px;min-height:52px;border-radius:14px;background:linear-gradient(135deg,#17854d,#15945a);color:#fff!important;box-shadow:0 5px 16px rgba(22,121,69,.18);text-decoration:none!important;box-sizing:border-box}
.grtp-submit-hero-plus{font-size:29px;line-height:1;font-weight:700}.grtp-submit-hero strong{display:block;font-size:20px;line-height:1.05}.grtp-submit-hero small{display:none!important}.grtp-submit-hero em{font-style:normal;font-size:26px;line-height:1}
.grtp-hub-listing-primary{border-color:#c8dfd0!important;box-shadow:0 5px 16px rgba(23,111,62,.08)!important}

/* v1.1.29 UAT: compact unified More list. */
.grtp-more-grid{gap:0!important;margin-top:0!important;border:1px solid #dde4e0;border-radius:14px;overflow:hidden;background:#fff}
.grtp-more-card{min-height:54px!important;border:0!important;border-bottom:1px solid #e8ece9!important;border-radius:0!important;padding:13px 14px!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;background:#fff!important}
.grtp-more-card:last-child{border-bottom:0!important}
.grtp-more-card strong{font-size:16px!important;line-height:1.2}
.grtp-more-card span{display:none!important}
.grtp-more-card em{grid-column:2!important;grid-row:1!important;align-self:center!important;font-size:22px!important}
.grtp-more-card-admin{background:#f7fbf8!important}


/* v1.1.30 UAT: remove all More-row gaps and vertically centre single-line labels. */
.grtp-more-grid{
  display:grid!important;
  grid-auto-flow:row!important;
  gap:0!important;
  row-gap:0!important;
  column-gap:0!important;
  margin:0!important;
  padding:0!important;
}
.grtp-more-grid > .grtp-more-card{
  box-sizing:border-box!important;
  width:100%!important;
  height:52px!important;
  min-height:52px!important;
  margin:0!important;
  padding:0 14px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 28px!important;
  grid-template-rows:52px!important;
  align-items:center!important;
  gap:0!important;
  border:0!important;
  border-bottom:1px solid #e8ece9!important;
  border-radius:0!important;
  text-decoration:none!important;
  line-height:1!important;
}
.grtp-more-grid > .grtp-more-card strong{
  grid-column:1!important;
  grid-row:1!important;
  align-self:stretch!important;
  display:flex!important;
  align-items:center!important;
  margin:0!important;
  padding:0!important;
  line-height:1.15!important;
}
.grtp-more-grid > .grtp-more-card em{
  grid-column:2!important;
  grid-row:1!important;
  align-self:stretch!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  margin:0!important;
  padding:0!important;
  line-height:1!important;
}
.grtp-more-grid > .grtp-more-card span{display:none!important}
.grtp-more-grid > .grtp-more-card:last-child{border-bottom:0!important}
button.grtp-more-card.grtp-pwa-install-card{margin:0!important;height:52px!important;min-height:52px!important;padding:0 14px!important}


/* v1.1.31 UAT: settings-style dividers between every More row. */
.grtp-more-grid{
  border:0!important;
  border-radius:0!important;
  overflow:visible!important;
  background:#fff!important;
}
.grtp-more-grid > .grtp-more-card{
  position:relative!important;
  border:0!important;
  background:#fff!important;
}
.grtp-more-grid > .grtp-more-card::after{
  content:"";
  position:absolute;
  left:14px;
  right:14px;
  bottom:0;
  height:1px;
  background:#e2e5e7;
  pointer-events:none;
}
.grtp-more-grid > .grtp-more-card:last-child::after{display:none!important}
.grtp-more-grid > .grtp-more-card strong,
.grtp-more-grid > .grtp-more-card em{
  min-height:52px!important;
}

/* v1.1.32 UAT: split More into compact General and Admin groups. */
.grtp-more-section{margin:0!important;padding:0!important}
.grtp-more-section + .grtp-more-section{margin-top:12px!important}
.grtp-more-section-title{
  margin:0!important;
  padding:7px 14px 6px!important;
  font-size:12px!important;
  line-height:1.2!important;
  font-weight:800!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  color:#6b7280!important;
  background:#f3f5f4!important;
  border-top:1px solid #e5e7e6!important;
  border-bottom:1px solid #e5e7e6!important;
}
.grtp-more-section:first-of-type .grtp-more-section-title{border-top:0!important}
.grtp-more-section .grtp-more-grid{margin:0!important}
.grtp-more-section-admin .grtp-more-card-admin{background:#fff!important}


/* v1.1.33 UAT: larger More rows and typography. */
.grtp-more-grid > .grtp-more-card{
  min-height:78px!important;
  height:78px!important;
  padding:0 18px!important;
  grid-template-columns:minmax(0,1fr) 28px!important;
}
.grtp-more-grid > .grtp-more-card strong,
.grtp-more-grid > .grtp-more-card em{
  min-height:78px!important;
}
.grtp-more-grid > .grtp-more-card strong{
  font-size:20px!important;
  line-height:1.2!important;
  font-weight:750!important;
}
.grtp-more-grid > .grtp-more-card em{
  font-size:30px!important;
}
button.grtp-more-card.grtp-pwa-install-card{
  min-height:78px!important;
  height:78px!important;
  padding:0 18px!important;
}


/* v1.1.35 UAT: primary-action alignment + regular-weight More labels. */
.grtp-submit-hero{
  grid-template-columns:36px minmax(0,1fr) 36px!important;
  background:#176f3e!important;
}
.grtp-submit-hero > span:nth-child(2){
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  width:100%!important;
}
.grtp-submit-hero strong{
  font-size:20px!important;
  font-weight:700!important;
  line-height:1.05!important;
  text-align:center!important;
}
.grtp-submit-hero-plus,
.grtp-submit-hero em{
  width:36px!important;
  text-align:center!important;
}
.grtp-more-grid > .grtp-more-card strong{
  font-weight:500!important;
}


/* v1.1.36 UAT: More/history + secured-waitlist + compact search refinements. */
/* More rows: 20% shorter than v1.1.35 and leaderboard-name-scale typography. */
.grtp-more-grid > .grtp-more-card{
  min-height:62px!important;
  height:62px!important;
  padding:0 16px!important;
}
.grtp-more-grid > .grtp-more-card strong,
.grtp-more-grid > .grtp-more-card em{
  min-height:62px!important;
}
.grtp-more-grid > .grtp-more-card strong{
  font-size:16px!important;
  font-weight:500!important;
  line-height:1.2!important;
}
.grtp-more-grid > .grtp-more-card em{font-size:26px!important}
button.grtp-more-card.grtp-pwa-install-card{
  min-height:62px!important;
  height:62px!important;
  padding:0 16px!important;
}

/* Secure waitlist: primary action directly below the flight card, then compact member search. */
.grtp-waitlist-secure-submit{
  width:100%!important;
  min-height:52px!important;
  height:52px!important;
  margin:8px 0 10px!important;
  padding:0 15px!important;
  border-radius:12px!important;
  font-size:20px!important;
  font-weight:700!important;
  line-height:1.05!important;
}
.grtp-waitlist-secure-picker{margin-top:0!important}
.grtp-waitlist-secure-picker .grtp-booking-picker-note{display:none!important}
.grtp-waitlist-secure-search-launch{
  min-height:46px!important;
  height:46px!important;
  padding:0 14px!important;
  border-radius:12px!important;
  gap:10px!important;
}
.grtp-waitlist-secure-search-launch span{font-size:22px!important}
.grtp-waitlist-secure-search-launch strong{font-size:17px!important;font-weight:650!important}
.grtp-waitlist-secure-picker .grtp-booking-search-head{margin:0 0 8px!important}

/* v1.1.38 UAT: wording + secure waitlist primary-action typography. */
button.grtp-waitlist-secure-submit{
  font-size:22px!important;
  font-weight:700!important;
  line-height:1.1!important;
}


/* v1.1.39 UAT: Secure & Publish Flight must match the standard primary-action typography.
   This selector intentionally outranks the older compact waitlist-form rule. */
.grtp-waitlist-secure-form button.grtp-waitlist-secure-submit{
  font-size:20px!important;
  font-weight:700!important;
  line-height:1.05!important;
  min-height:52px!important;
  height:52px!important;
  padding:0 15px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
\n/* v1.1.44 Flight Assignment History */
.grtp-history-me{background:#edf8f1!important;box-shadow:inset 0 0 0 1px #b9dcc6}
.grtp-history-you{display:inline-block;margin-left:5px;padding:1px 5px;border-radius:999px;background:#176f3e;color:#fff;font-size:9px;line-height:1.35;vertical-align:1px}
\n\n/* v1.1.45 unified More back controls, light active tab, focused current-waitlist flow */
.grtp-page-back,.grtp-work-close{
  box-sizing:border-box!important;
  flex:0 0 52px!important;
  width:52px!important;height:52px!important;min-width:52px!important;min-height:52px!important;
  max-width:52px!important;max-height:52px!important;aspect-ratio:1/1!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  margin:0!important;padding:0!important;border:1px solid #d5dad7!important;border-radius:999px!important;
  background:#ecefed!important;color:#28322c!important;box-shadow:none!important;
  font-size:36px!important;line-height:1!important;font-weight:500!important;text-decoration:none!important;
  -webkit-tap-highlight-color:transparent!important;touch-action:manipulation!important;
  transition:transform .07s ease,background-color .07s ease,box-shadow .07s ease!important;
}
.grtp-page-back:active,.grtp-page-back.is-pressed,.grtp-work-close:active,.grtp-work-close.is-pressed{
  background:#d8ddda!important;transform:scale(.90)!important;box-shadow:inset 0 1px 5px rgba(20,35,27,.18)!important;
}
.grtp-page-head{grid-template-columns:62px minmax(0,1fr) 62px!important;min-height:66px!important}
.grtp-work-head{grid-template-columns:minmax(0,1fr) 62px!important;min-height:66px!important}

/* v1.1.46: selected bottom tab uses bright green text/icon only; no green fill. */
body.goofy-rtp-page .grtp-shell .grtp-bottom-nav .grtp-nav-item.active,
body.goofy-rtp-page .grtp-shell .grtp-bottom-nav .grtp-nav-item.active:focus,
body.goofy-rtp-page .grtp-shell .grtp-bottom-nav .grtp-nav-item.active:active{
  background:transparent!important;color:#27c76f!important;border-radius:14px!important;
  box-shadow:none!important;font-weight:950!important;
}
body.goofy-rtp-page .grtp-shell .grtp-bottom-nav .grtp-nav-item.active .grtp-nav-icon{color:#27c76f!important;transform:scale(1.08)!important}
.grtp-bottom-nav .grtp-nav-item.grtp-nav-pressed,.grtp-bottom-nav .grtp-nav-item:active{
  transform:scale(.93)!important;background:#f2f6f3!important;box-shadow:none!important;
}
/* Scorecard/submit tab used to be permanently dark green even when inactive. */
.grtp-nav-submit>span:last-child{color:#6d7772!important;font-weight:900!important;white-space:nowrap}
.grtp-nav-submit.active>span:last-child{color:#27c76f!important}
.grtp-nav-submit.active .grtp-nav-plus{background:#16884b!important;box-shadow:0 0 0 3px #bdf0cf,0 5px 12px rgba(22,136,75,.22)!important}
.grtp-waitlist-secure-panel-focused{display:block!important;grid-column:1/-1!important}
.grtp-waitlist-focus-delete-form{margin:0 0 10px!important}
.grtp-waitlist-focus-delete{width:100%!important;min-height:48px!important;border:1px solid #e2aaa4!important;border-radius:12px!important;background:#fff3f1!important;color:#a1261c!important;font-size:16px!important;font-weight:800!important}
.grtp-waitlist-focus-delete:active{background:#f8dedb!important;transform:scale(.98)!important}

/* v1.1.50 Road To Goofy refresh-required Admin indicator */
.grtp-more-card-alert strong{display:flex!important;align-items:center;gap:8px}.grtp-more-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#fff0d9;color:#9a5a00;font-size:12px;font-weight:900;line-height:1;border:1px solid #f1c97f}.grtp-more-card-alert{background:#fffaf1!important}

/* v2.0.1 Submit RTP for Another Member: keep member names in the left grid column.
   The legacy generic span rule also assigned the name wrapper to column 2. */
.grtp-rtp-submit-work .grtp-member-row{
  text-align:left!important;
}
.grtp-rtp-submit-work .grtp-member-row .grtp-selection-name-lines{
  grid-column:1!important;
  grid-row:1!important;
  width:100%!important;
  text-align:left!important;
  align-items:flex-start!important;
  justify-self:stretch!important;
}
.grtp-rtp-submit-work .grtp-member-row > span:last-child{
  grid-column:2!important;
  grid-row:1!important;
  text-align:right!important;
  justify-self:end!important;
}


/* v2.0.2 Submit/Edit RTP member picker: remove transient touch/scroll card fill.
   Keep only the intentional light-green selected state. */
.grtp-rtp-submit-work .grtp-member-row{
  -webkit-tap-highlight-color:transparent!important;
  touch-action:pan-y!important;
}
.grtp-rtp-submit-work .grtp-member-row:active,
.grtp-rtp-submit-work .grtp-member-row:focus{
  background:#fff!important;
  outline:none!important;
  box-shadow:none!important;
}
.grtp-rtp-submit-work .grtp-member-row.selected,
.grtp-rtp-submit-work .grtp-member-row.selected:active,
.grtp-rtp-submit-work .grtp-member-row.selected:focus{
  background:#eef8f1!important;
}
