/* Editing controls use NOX's existing theme tokens. */
html[data-theme] body #transport .transport-master-launch {
  margin:24px 20px 20px;padding:16px;gap:16px;
  background:var(--admin-raised);color:var(--admin-text);border-color:var(--admin-line);
}
html[data-theme] body #transport .transport-master-launch strong {font-size:14px;line-height:1.5;}
html[data-theme] body #transport .transport-master-launch small {color:var(--admin-muted);font-size:12px;line-height:1.5;}
html[data-theme] body #transport #open-transport-master {
  min-height:44px;padding:10px 16px;font-size:14px;line-height:1.5;
  background:var(--admin-accent)!important;color:var(--admin-on-accent)!important;
  -webkit-text-fill-color:var(--admin-on-accent)!important;
  border:1px solid var(--admin-accent)!important;box-shadow:none;opacity:1;
}
html[data-theme] body #transport #open-transport-master svg {color:inherit!important;-webkit-text-fill-color:currentColor!important;stroke:currentColor;}
html[data-theme] body #transport #open-transport-master:focus-visible {outline:3px solid var(--admin-focus)!important;outline-offset:3px;}
@media (hover:hover) and (pointer:fine) {
  html[data-theme] body #transport #open-transport-master:not(:disabled):hover {
    background:var(--interaction-hover-bg)!important;color:var(--interaction-hover-text)!important;
    -webkit-text-fill-color:var(--interaction-hover-text)!important;border-color:var(--interaction-hover-border)!important;
  }
}
html[data-theme] body :is(.cast-profile-employment,#transport-master-dialog) {color:var(--admin-text);}
html[data-theme] body .cast-profile-employment {margin:16px 24px;padding:18px;border:1px solid var(--admin-line);border-radius:12px;background:var(--admin-surface);}
.cast-profile-employment h3 {margin:0 0 16px;}
#cast-profile-employment-form {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
html[data-theme] body :is(#cast-profile-employment-form,#transport-master-dialog) label {min-width:0;display:grid;gap:8px;color:var(--admin-text);font-size:14px;font-weight:700;}
/* Grid gap owns field spacing; the global label span margin shifts radio text. */
html[data-theme] body #cast-profile-employment-form label > span {margin:0;}
html[data-theme] body #cast-profile-employment-form > label {align-self:start;}
html[data-theme] body #cast-profile-manual-type-help {color:var(--admin-muted);font-weight:400;line-height:1.5;}
html[data-theme] body :is(#cast-profile-employment-form,#transport-master-dialog) :is(input:not([type="radio"]),select) {width:100%;min-width:0;min-height:48px;padding:10px 12px;margin:0;border:1px solid var(--admin-line)!important;border-radius:8px;background:var(--admin-control)!important;color:var(--admin-text)!important;-webkit-text-fill-color:var(--admin-text)!important;font:inherit;font-size:16px;box-shadow:none;}
html[data-theme] body #cast-profile-pay-amount {text-align:right;font-size:20px;}
html[data-theme] body .cast-profile-pay-modes {grid-column:1/-1;display:flex;gap:12px;border:0;padding:0;margin:0;min-width:0;}
html[data-theme] body .cast-profile-pay-modes legend {padding:0;margin-bottom:8px;font-size:14px;font-weight:700;}
html[data-theme] body .cast-profile-pay-modes label {flex:1;position:relative;display:flex!important;flex-direction:row!important;align-items:center;justify-content:center;gap:10px;min-height:48px;border:2px solid var(--admin-line);border-radius:8px;cursor:pointer;background:var(--admin-control);color:var(--admin-text);}
html[data-theme] body .cast-profile-pay-modes input {position:static!important;appearance:auto!important;width:20px!important;height:20px!important;min-width:20px;opacity:1!important;margin:0!important;accent-color:var(--admin-accent);transform:none!important;}
html[data-theme] body .cast-profile-pay-modes label > span {display:block;padding:0;line-height:20px;font-size:14px;}
html[data-theme] body .cast-profile-pay-modes label:has(input:checked) {background:var(--admin-accent)!important;color:var(--admin-on-accent)!important;border-color:var(--admin-focus)!important;}
html[data-theme] body .cast-profile-pay-modes label:has(input:checked) span {color:inherit!important;-webkit-text-fill-color:currentColor!important;}
.cast-profile-pay-note,.cast-profile-employment-actions {grid-column:1/-1;margin:0;}
html[data-theme] body .cast-profile-pay-note {color:var(--admin-muted);line-height:1.6;}
.cast-profile-employment-actions {display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
html[data-theme] body :is(.cast-profile-employment,#transport-master-dialog) button {min-height:44px;min-width:44px;padding:10px 14px;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:normal;line-height:1.4;cursor:pointer;border-radius:8px;}
html[data-theme] body :is(.cast-profile-employment,#transport-master-dialog) button[type="submit"] {background:var(--admin-accent)!important;color:var(--admin-on-accent)!important;-webkit-text-fill-color:var(--admin-on-accent)!important;}
html[data-theme] body :is(.cast-profile-employment,#transport-master-dialog) button[type="submit"]:hover {background:var(--admin-accent-hover,var(--admin-accent))!important;color:var(--admin-on-accent)!important;}
html[data-theme] body :is(.cast-profile-employment,#transport-master-dialog) :focus-visible {outline:3px solid var(--admin-focus)!important;outline-offset:2px;}
html[data-theme] body #transport-master-dialog .transport-master-dialog-body {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.transport-prefecture-master,#transport-master-status {grid-column:1/-1;}
#transport-master-status {margin:0;line-height:1.6;}
html[data-theme] body #transport-master-dialog form {display:flex;align-items:end;flex-wrap:wrap;gap:10px;}
html[data-theme] body #transport-master-dialog form label {flex:1 1 150px;}
html[data-theme] body #transport-master-dialog .transport-master-item {display:flex;align-items:center;gap:8px;max-width:100%;padding:6px 8px 6px 12px;border-radius:8px;background:var(--admin-control);color:var(--admin-text);}
html[data-theme] body #transport-master-dialog .transport-master-item b {min-width:0;flex:1;overflow-wrap:anywhere;}
html[data-theme] body #transport-master-dialog .transport-master-item button {flex-shrink:0;background:var(--admin-raised)!important;color:var(--admin-text)!important;-webkit-text-fill-color:var(--admin-text)!important;border:1px solid var(--admin-line)!important;}
html[data-theme] body #transport-master-dialog .transport-master-item button[aria-label$="を修正"] {min-width:64px;white-space:nowrap;}
html[data-theme] body :is(#cast-profile-employment-form,#transport-master-dialog) :is(input,select,button,label) {transition:none!important;}
html[data-theme] body #transport-master-dialog .transport-prefecture-group-items {display:grid;grid-template-columns:minmax(0,1fr);}
html[data-theme] body :is(.cast-profile-employment,#transport-master-dialog) [hidden] {display:none!important;}
html[data-theme] body :is(.cast-profile-employment,#transport-master-dialog) :disabled {opacity:.65;cursor:not-allowed;}
@media(max-width:700px) {
  html[data-theme] body #transport .transport-master-launch {margin:16px 12px;padding:12px;gap:12px;}
  html[data-theme] body #transport-master-dialog .transport-master-dialog-body {grid-template-columns:minmax(0,1fr);padding:12px;}
  html[data-theme] body .cast-profile-employment {margin:12px;padding:12px;}
  #cast-profile-employment-form {grid-template-columns:minmax(0,1fr);}
  html[data-theme] body #transport-master-dialog .transport-master-item {width:100%;}
}
