.airport-duty-legacy-hidden-v65{display:none!important}
.airport-duty-v65{margin:14px 0 2px;padding:16px;border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(248,249,252,.9));box-shadow:0 10px 30px rgba(23,34,61,.07);border:1px solid rgba(23,34,61,.06)}
.airport-duty-head-v65,.airport-duty-head-v65>div{display:flex;align-items:center;justify-content:space-between;gap:11px}.airport-duty-head-v65>div{justify-content:flex-start}.airport-duty-head-v65 strong{display:block;font-size:15px}.airport-duty-head-v65 small{display:block;margin-top:2px;color:#7b8292;font-size:11px;line-height:1.35}.airport-duty-icon-v65{display:grid;place-items:center;width:36px;height:36px;border-radius:13px;background:var(--theme-soft,#fff1e7);font-size:17px}.airport-duty-total-v65{padding:7px 10px;border-radius:999px;background:#17223d;color:#fff;font-weight:800;font-size:12px;white-space:nowrap}
.airport-duty-form-v65{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr) auto;gap:9px;align-items:end;margin-top:14px}.airport-duty-form-v65 label{display:grid;gap:5px;min-width:0}.airport-duty-form-v65 label span{font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#7b8292}.airport-duty-form-v65 input{width:100%;min-width:0;height:44px;padding:0 11px;border:1px solid rgba(23,34,61,.12);border-radius:13px;background:#fff;color:#17223d;font:700 14px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.airport-duty-form-v65 button{height:44px;padding:0 15px;border:0;border-radius:13px;background:#17223d;color:#fff;font-weight:800;cursor:pointer}
.airport-duty-feedback-v65{margin:10px 0 0;padding:9px 11px;border-radius:12px;background:#eef2f8;color:#35415b;font-size:11px;line-height:1.4}.airport-duty-feedback-v65[data-kind="error"]{background:#fff0f0;color:#9d2f2f}.airport-duty-feedback-v65[data-kind="warning"]{background:#fff7e5;color:#85610c}.airport-duty-feedback-v65[data-kind="success"]{background:#eef9f1;color:#2f6b43}
.airport-duty-list-v65{display:grid;gap:8px;margin-top:12px}.airport-duty-row-v65{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:9px;align-items:center;padding:10px 11px;border-radius:14px;background:rgba(240,243,248,.78)}.airport-duty-row-v65.planning{background:rgba(234,240,252,.86)}.airport-duty-row-v65.ignored{opacity:.68}.airport-duty-row-v65.legacy{grid-template-columns:minmax(0,1fr) minmax(120px,.65fr) auto auto;background:#fff7e5}.airport-duty-row-v65 strong{display:block;font-size:12px}.airport-duty-row-v65 small{display:block;margin-top:2px;color:#7b8292;font-size:10px;line-height:1.35}.airport-duty-row-v65>span{font-weight:800;font-size:11px;white-space:nowrap}.airport-duty-row-v65 input{min-width:0;height:36px;border-radius:10px;border:1px solid rgba(23,34,61,.12);background:#fff;padding:0 8px}.airport-duty-row-v65 button{height:34px;border:0;border-radius:10px;padding:0 10px;background:#17223d;color:#fff;font-weight:800}.airport-duty-remove-v65{width:34px;padding:0!important;border-radius:50%!important;background:rgba(23,34,61,.08)!important;color:#17223d!important;font-size:18px!important}.airport-duty-lock-v65{padding:6px 8px;border-radius:9px;background:rgba(23,34,61,.08);color:#566079!important;font-size:9px!important}.airport-duty-empty-v65{margin:3px 0;color:#7b8292;font-size:11px}.airport-duty-rule-v65{margin:11px 0 0;color:#7b8292;font-size:10px;line-height:1.45}
.planning-period-v65{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin:12px 0;padding:9px 11px;border-radius:13px;background:rgba(23,34,61,.05);font-size:11px;color:#596279}.planning-period-v65 b{color:#17223d}
@media(max-width:520px){.airport-duty-v65{padding:14px;border-radius:20px}.airport-duty-form-v65{grid-template-columns:1fr 1fr}.airport-duty-form-v65 button{grid-column:1/-1;width:100%}.airport-duty-row-v65.legacy{grid-template-columns:1fr auto}.airport-duty-row-v65.legacy>div{grid-column:1/-1}.airport-duty-row-v65.legacy input{min-width:0}.airport-duty-row-v65{grid-template-columns:minmax(0,1fr) auto auto}}
@media(max-width:360px){.airport-duty-form-v65{grid-template-columns:1fr}.airport-duty-form-v65 button{grid-column:auto}.airport-duty-row-v65{gap:6px;padding:9px}.airport-duty-lock-v65{display:none}}
@media(min-width:768px){.airport-duty-v65{padding:18px}.airport-duty-form-v65{grid-template-columns:minmax(190px,.8fr) minmax(160px,.7fr) auto;max-width:720px}.airport-duty-list-v65{grid-template-columns:repeat(2,minmax(0,1fr))}.airport-duty-row-v65.legacy{grid-column:1/-1}}

/* V65 responsive hardening: date/time inputs must shrink inside narrow iOS grids. */
.airport-duty-v65,.airport-duty-v65 *{box-sizing:border-box}
.airport-duty-form-v65 input{max-width:100%}
@media(max-width:360px){
  .airport-duty-form-v65 label,.airport-duty-form-v65 input{width:100%;min-width:0;max-width:100%}
}

/* V68: the compiled React component exposes only a non-visible refresh hook; the old undated control is no longer rendered. */
.airport-duty-refresh-hook-v66{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;clip-path:inset(50%)!important;overflow:hidden!important}
.airport-duty-anchor-v66{display:none!important}


/* V69 — native iOS duration picker + balanced mobile layout.
   `input[type=time]` opens the system hour/minute wheels on iPhone/iPad,
   matching the native month/date picker interaction and avoiding numeric keyboard entry. */
#airport-duty-duration-v65[type="time"]{
  -webkit-appearance:auto;
  appearance:auto;
  color-scheme:light;
  font-variant-numeric:tabular-nums;
  letter-spacing:.01em;
  cursor:pointer;
}
#airport-duty-duration-v65[type="time"]::-webkit-date-and-time-value{
  text-align:left;
  min-height:1.2em;
}
#airport-duty-duration-v65[type="time"]::-webkit-calendar-picker-indicator{
  cursor:pointer;
}


/* V69 — Airport Duty mobile alignment.
   Keep Date and Duration perfectly balanced and center both labels and values. */
@media (max-width: 767px){
  .airport-duty-form-v65{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    column-gap:12px;
    row-gap:10px;
    width:100%;
  }
  .airport-duty-form-v65 label{
    min-width:0;
    width:100%;
    overflow:hidden;
  }
  .airport-duty-form-v65 label span{
    width:100%;
    text-align:center;
  }
  .airport-duty-form-v65 input{
    display:block;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    padding-left:8px;
    padding-right:8px;
    text-align:center;
    font-size:16px;
    font-variant-numeric:tabular-nums;
  }
  #airport-duty-date-v65::-webkit-date-and-time-value,
  #airport-duty-duration-v65::-webkit-date-and-time-value{
    width:100%;
    text-align:center;
  }
  #airport-duty-date-v65,
  #airport-duty-duration-v65{
    text-align:center;
  }
  .airport-duty-form-v65 button{
    grid-column:1/-1;
    width:100%;
  }
}
@media (max-width: 360px){
  .airport-duty-form-v65{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    column-gap:8px;
  }
  .airport-duty-form-v65 input{font-size:15px;}
  .airport-duty-form-v65 button{grid-column:1/-1;}
}


/* V71 — finition visuelle et stabilité tactile */
.airport-duty-form-v65 input{
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
}
#airport-duty-date-v65,
#airport-duty-duration-v65{
  line-height:normal!important;
  vertical-align:middle;
}
#airport-duty-date-v65::-webkit-date-and-time-value,
#airport-duty-duration-v65::-webkit-date-and-time-value{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  min-height:100%;
  margin:0;
  padding:0;
  text-align:center;
}
#airport-duty-date-v65::-webkit-datetime-edit,
#airport-duty-duration-v65::-webkit-datetime-edit{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  padding:0;
}
@media(max-width:767px){
  .airport-duty-v65{padding:15px!important}
  .airport-duty-form-v65{margin-top:16px!important;row-gap:11px!important}
  .airport-duty-form-v65 label span{font-size:9px!important;letter-spacing:.07em!important}
  .airport-duty-form-v65 input{height:48px!important;border-radius:14px!important}
  .airport-duty-form-v65 button{height:48px!important;border-radius:14px!important}
}
@media(min-width:768px){
  .airport-duty-form-v65{max-width:760px!important}
}
