#transportPage{background:#f8f2f5;color:#25334b;padding:24px 20px 50px}
#transportPage[hidden]{display:none!important}
#transportPage *{box-sizing:border-box}
#transportPage button,#transportPage input,#transportPage textarea,#transportPage select{font:inherit}
#transportPage button{cursor:pointer}
#transportPage button:disabled{cursor:not-allowed;opacity:.45}
#transportPage .transport-shell{max-width:1280px;margin:0 auto}
#transportPage .transport-header{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:0 0 18px}
#transportPage .transport-header h2{margin:9px 0 4px;font-size:25px;color:#25334b}
#transportPage .transport-header p{margin:0;color:#758096;font-size:13px}
#transportPage .transport-back{border:0;background:transparent;color:#a34c70;padding:0;min-height:30px;font-size:13px}
#transportPage .transport-export{display:flex;gap:7px;flex-wrap:wrap}
#transportPage .transport-export button,#transportPage .transport-toolbar>button,#transportPage .transport-dialog-actions button,#transportPage .transport-row-action{border:1px solid #eadde3;background:white;color:#34425b;border-radius:10px;padding:10px 12px;min-height:38px;font-size:12px;font-weight:700}
#transportPage .transport-primary{background:#d9608a!important;border-color:#d9608a!important;color:white!important}
#transportPage .transport-panel{background:#fff;border:1px solid #eadde3;border-radius:18px;padding:20px;box-shadow:0 8px 25px #69405212}
#transportPage .transport-toolbar{display:flex;align-items:end;gap:8px;flex-wrap:wrap;margin-bottom:10px}
#transportPage .transport-toolbar label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#6d778e;font-weight:700}
#transportPage .transport-toolbar input{border:1px solid #eadde3;border-radius:9px;padding:9px 10px;color:#25334b;min-height:38px}
#transportPage .transport-tabs{display:flex;border:1px solid #eadde3;border-radius:10px;padding:3px;background:#f8f2f5}
#transportPage .transport-tabs button{border:0;background:transparent;border-radius:7px;padding:8px 14px;min-height:31px;color:#68738b;font-size:12px;font-weight:700}
#transportPage .transport-tabs button[aria-selected=true]{background:#d9608a;color:#fff;box-shadow:0 2px 8px #d9608a35}
#transportPage .transport-status{min-height:22px;margin:4px 0 10px;font-size:12px;color:#62718c}
#transportPage .transport-status.error{color:#bd325b}
#transportPage .transport-date-control{position:relative;display:flex;flex-direction:column;gap:4px;min-width:160px;z-index:100}
#transportPage .transport-date-control>label{font-size:12px;color:#6d778e;font-weight:700}
#transportPage .transport-date-input{display:flex;border:1px solid #eadde3;border-radius:9px;background:#fff;min-height:38px;overflow:hidden}
#transportPage .transport-date-input input{border:0;min-height:36px;width:116px;min-width:0;padding:7px 9px;font-size:12px}
#transportPage .transport-date-input button{border:0;border-left:1px solid #eadde3;background:#fff8fb;color:#a34c70;padding:0 9px;min-width:38px}
#transportPage .transport-calendar{position:absolute;top:calc(100% + 5px);left:0;width:294px;max-width:calc(100vw - 32px);border:1px solid #eadde3;background:#fff;border-radius:14px;padding:12px;box-shadow:0 14px 35px #69405226;z-index:50}
#transportPage .transport-calendar[hidden]{display:none!important}
#transportPage .transport-calendar-header{display:flex;align-items:center;justify-content:space-between;gap:8px}
#transportPage .transport-calendar-header button{border:1px solid #eadde3;background:white;color:#34425b;border-radius:8px;min-height:30px;padding:4px 9px;font-size:12px}
#transportPage .transport-calendar-header #transportCalendarHeading{border:0;font-size:13px;font-weight:800}
#transportPage .transport-calendar-year-picker{margin:8px 0 0;text-align:center}
#transportPage .transport-calendar-year-picker[hidden]{display:none!important}
#transportPage .transport-calendar-year-picker label{display:inline-flex;align-items:center;gap:6px}
#transportPage .transport-calendar-year-picker input{width:82px;border:1px solid #eadde3;border-radius:7px;padding:5px;text-align:center}
#transportPage .transport-calendar-help{display:flex;align-items:center;gap:4px;font-size:10px;color:#7c879b;margin:8px 0}
#transportPage .transport-calendar-help i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#d9608a;margin-left:5px}
#transportPage .transport-calendar-help i.pm{background:#5f85c6}
#transportPage .transport-calendar-grid{display:grid;gap:3px}
#transportPage .transport-calendar-grid.year{grid-template-columns:repeat(4,minmax(0,1fr))}
#transportPage .transport-calendar-grid.month{grid-template-columns:repeat(7,minmax(0,1fr))}
#transportPage .transport-month-card,#transportPage .transport-day{border:1px solid transparent;background:white;color:#25334b;border-radius:8px;min-height:36px;padding:5px;text-align:center}
#transportPage .transport-month-card{display:flex;align-items:center;justify-content:space-between;gap:4px;font-size:12px;font-weight:700;border-color:#eadde3;min-height:48px}
#transportPage .transport-month-card small{color:#8590a2;font-size:11px;font-weight:400}
#transportPage .transport-day{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:37px;font-size:12px}
#transportPage .transport-day.selected{border-color:#d9608a;background:#d9608a;color:#fff;font-weight:800}
#transportPage .transport-day.other{opacity:.42}
#transportPage .transport-day.has-record{box-shadow:0 1px 5px #6d43511a}
#transportPage .transport-dots{display:flex;gap:4px;align-items:center;font-size:10px;white-space:nowrap}
#transportPage .transport-dots i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#d9608a}
#transportPage .transport-dots i.pm{background:#5f85c6}
#transportPage .transport-weekday{text-align:center;color:#718096;font-size:11px;font-weight:700;padding:4px 0}
#transportPage .transport-copy-explain,#transportPage .transport-copy-target{font-size:12px;line-height:1.55;color:#6e7890}
#transportPage .transport-copy-target{background:#fff4f8;border-radius:8px;padding:9px}
#transportPage .transport-scroll{overflow-x:auto;border:1px solid #eadde3;border-radius:11px}
#transportPage .transport-table{width:100%;min-width:775px;border-collapse:collapse;font-size:12px}
#transportPage .transport-table th{background:#f8eff3;color:#68738b;text-align:left;padding:11px 9px;white-space:nowrap}
#transportPage .transport-table td{border-top:1px solid #f0e6eb;padding:9px;vertical-align:middle}
#transportPage .transport-table .transport-number{color:#8995a6;text-align:center;width:40px}
#transportPage .transport-table .transport-name{font-weight:800}
#transportPage .transport-table .transport-muted{color:#8792a5}
#transportPage .transport-table .transport-group td{background:#fff3f7;border-top:2px solid #ecd0dc;padding:10px 12px}
#transportPage .transport-group-content{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
#transportPage .transport-group-content strong{font-size:14px}
#transportPage .transport-group-content .transport-actions{display:flex;gap:5px;flex-wrap:wrap}
#transportPage .transport-group-content .transport-row-action,#transportPage .transport-table .transport-row-action{min-height:28px;padding:4px 8px;background:#fff;font-size:11px;color:#a34c70}
#transportPage .transport-round td{background:#fcf9fa;color:#755266;font-weight:700}
#transportPage .transport-round .transport-pill{border:1px solid #e6c7d5;background:#fff;padding:4px 7px;border-radius:7px;white-space:nowrap}
#transportPage .transport-round .transport-pill.blue{border-color:#c9d8f1;color:#46679f}
#transportPage .transport-round .transport-actions{display:inline-flex;gap:5px;margin-left:10px}
#transportPage .transport-empty{text-align:center;padding:36px!important;color:#8792a5}
#transportPage .transport-bottom{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-top:15px}
#transportPage .transport-bottom label{display:flex;flex-direction:column;gap:5px;flex:1;max-width:760px;font-size:12px;font-weight:700}
#transportPage .transport-bottom textarea{border:1px solid #eadde3;border-radius:9px;padding:10px;resize:vertical;min-height:70px;color:#25334b}
#transportPage .transport-bottom strong{font-size:14px;white-space:nowrap}
#transportPage .transport-dialog{position:fixed!important;top:50%!important;left:50%!important;right:auto!important;bottom:auto!important;transform:translate(-50%,-50%)!important;margin:0!important;border:1px solid #eadde3;border-radius:16px;background:#fff;padding:22px;width:min(480px,calc(100vw - 28px));max-height:85vh;overflow:auto;color:#25334b;box-shadow:0 18px 70px #34203038}
#transportPage .transport-dialog::backdrop{background:#1c182c88}
#transportPage .transport-dialog h3{font-size:18px;margin:0 0 16px}
#transportPage .transport-dialog label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700;margin:0 0 12px}
#transportPage .transport-dialog input,#transportPage .transport-dialog select,#transportPage .transport-dialog textarea{width:100%;border:1px solid #eadde3;border-radius:9px;padding:10px;color:#25334b;min-height:38px;background:#fff}
#transportPage .transport-dialog textarea{min-height:75px}
#transportPage .transport-dialog-actions{display:flex;gap:7px;justify-content:flex-end;margin-top:18px}
#transportPage .transport-dialog-actions .transport-danger{color:#bd325b;border-color:#efc5d2;margin-right:auto}
@media(max-width:720px){#transportPage{padding:14px 10px 90px}#transportPage .transport-header{align-items:stretch;flex-direction:column}#transportPage .transport-header h2{font-size:21px}#transportPage .transport-export{display:grid;grid-template-columns:repeat(3,1fr)}#transportPage .transport-export button{padding:8px 3px}#transportPage .transport-panel{padding:12px}#transportPage .transport-toolbar>button{flex:1}#transportPage .transport-date-control{flex:0 0 160px;min-width:160px}#transportPage .transport-date-input input{width:116px}#transportPage .transport-tabs{flex:1}#transportPage .transport-tabs button{flex:1}#transportPage .transport-bottom{align-items:stretch;flex-direction:column}#transportPage .transport-calendar-grid.year{grid-template-columns:repeat(3,minmax(0,1fr))}#transportPage .transport-month-card{flex-direction:column;align-items:center;min-height:48px}#transportPage .transport-dots{font-size:8px}}
@media print{body.transport-roster-print>*:not(#transportPage){display:none!important}body.transport-roster-print #transportPage{position:static!important;inset:auto!important;display:block!important;overflow:visible!important;padding:0!important;background:white!important;color:black!important}#transportPage .transport-shell{max-width:none}#transportPage .transport-header{margin:0 0 8px}#transportPage .transport-header h2{font-size:19px;margin:0}#transportPage .transport-header p{display:block;color:#333;font-size:11px;margin:3px 0 0}#transportPage .transport-panel{padding:0;border:0;box-shadow:none}#transportPage .transport-back,#transportPage .transport-export,#transportPage .transport-toolbar,#transportPage .transport-status,#transportPage .transport-editor-col,#transportPage .transport-row-action,#transportPage .transport-actions{display:none!important}#transportPage .transport-scroll{border:0;overflow:visible}#transportPage .transport-table{min-width:0;font-size:10px}#transportPage .transport-table th,#transportPage .transport-table td{border:1px solid #777;padding:5px}#transportPage .transport-group td{background:#f4edef!important}#transportPage .transport-round td{background:#fafafa!important}#transportPage .transport-bottom{align-items:flex-start;margin-top:10px}#transportPage .transport-bottom label{font-size:0}#transportPage .transport-bottom textarea{border:0;padding:0;resize:none;font-size:11px;overflow:visible}#transportPage .transport-dialog{display:none!important}#transportPage tr{break-inside:avoid}#transportPage .transport-number{width:28px}}
@media print{#transportPage .transport-calendar,#transportPage #transportCopyDialog{display:none!important}}
#transportPage .transport-calendar{position:fixed!important;top:auto;left:auto;z-index:12000;max-height:calc(100vh - 16px);overflow-y:auto}
@media(max-width:720px){#transportPage .transport-export{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media print{
  body.transport-roster-print>*:not(#transportPage){display:none!important}
  body.transport-roster-print>#printModal{display:none!important}
  body.transport-roster-print>#transportPage{display:block!important;position:static!important;inset:auto!important;width:100%!important;height:auto!important;overflow:visible!important;z-index:auto!important}
  body.transport-roster-print #transportPage .transport-calendar{display:none!important}
}
#transportPage .transport-workflow{display:flex;gap:8px;margin:0 0 14px}
#transportPage .transport-workflow button{border:1px solid #eadde3;border-radius:10px;background:#fff;color:#66728a;padding:10px 16px;font-size:13px;font-weight:800}
#transportPage .transport-workflow button[aria-current=page]{background:#d9608a;border-color:#d9608a;color:#fff}
#transportPage .transport-directory[hidden],#transportPage #transportDispatch[hidden]{display:none!important}
#transportPage .transport-directory-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:14px}
#transportPage .transport-directory-head h3{margin:0;font-size:17px}
#transportPage .transport-directory-head h3 span{color:#d9608a;font-size:13px}
#transportPage .transport-directory-head p{margin:4px 0 0;color:#758096;font-size:12px}
#transportPage .transport-directory-actions{display:flex;gap:7px;flex-wrap:wrap}
#transportPage .transport-directory-actions button,#transportPage #transportSaveBase{border:1px solid #eadde3;background:#fff;color:#34425b;border-radius:10px;padding:9px 11px;min-height:38px;font-size:12px;font-weight:700}
#transportPage .transport-directory-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:8px}
#transportPage .transport-senior-card{border:1px solid #eadde3;border-radius:11px;background:#fffafc;padding:11px;min-width:0}
#transportPage .transport-senior-card strong{font-size:14px}
#transportPage .transport-senior-card p{margin:5px 0;color:#64718a;font-size:12px;overflow-wrap:anywhere}
#transportPage .transport-senior-card button{border:1px solid #eadde3;border-radius:8px;background:#fff;color:#a34c70;padding:5px 9px;font-size:11px}
#transportPage .transport-directory-empty{grid-column:1/-1;padding:32px;text-align:center;color:#758096;font-size:13px}
@media(max-width:720px){#transportPage .transport-workflow button{flex:1;padding:10px 6px}#transportPage .transport-directory-actions{width:100%}#transportPage .transport-directory-actions button{flex:1}}
@media print{body.transport-roster-print #transportPage .transport-workflow,body.transport-roster-print #transportPage .transport-directory{display:none!important}body.transport-roster-print #transportPage #transportDispatch{display:block!important}}
#transportPage .transport-workflow{flex-wrap:wrap}
#transportPage .transport-carepo-note{margin:0 0 14px;padding:12px 16px;background:#f3f6fa;border-radius:10px;color:#52627b;font-size:13px;line-height:1.6}
#transportPage .transport-preset-tools{display:flex;gap:8px;align-items:end;flex-wrap:wrap;padding:10px 0}
#transportPage .transport-preset-tools label{display:grid;gap:5px;font-size:13px}
#transportPage .transport-preset-tools select{width:auto;min-width:90px;padding:9px}
#transportPage .transport-preset-tools button,#transportPage #transportResourceAdd{font-size:12px;min-height:40px;padding:8px 12px}
#transportPage #transportWarnings:not(:empty){padding:12px 16px;border:1px solid #e6ba74;background:#fff7e9;color:#684516;border-radius:10px;margin:8px 0;font-size:13px}
#transportPage #transportWarnings ul{padding-left:20px;margin:6px 0}
#transportPage #transportUnassigned{padding:12px;border:1px solid #eadde3;border-radius:10px;margin:8px 0;font-size:13px;color:#52627b}
#transportPage #transportUnassignedList{line-height:1.8;max-height:260px;overflow:auto;overflow-wrap:anywhere}
#transportPage .transport-staff-pick{min-width:0;border:1px solid #eadde3;border-radius:8px;padding:10px;margin:12px 0}
#transportPage .transport-staff-pick label{display:grid;grid-template-columns:21px minmax(0,1fr) 75px;gap:10px;align-items:center;justify-content:start}
#transportPage .transport-staff-pick input[type=checkbox]{width:21px;height:21px;min-height:21px;min-width:21px;padding:0;margin:0;accent-color:#d9608a}
#transportPage .transport-staff-pick select{min-width:0;padding:6px}
#transportPage .transport-dialog{max-height:calc(100dvh - 24px);overflow:auto}
#transportPage .transport-dialog input,#transportPage .transport-dialog select,#transportPage .transport-dialog textarea{box-sizing:border-box;max-width:100%}
#transportPage #transportResources[hidden]{display:none!important}
#transportPage .transport-export-dialog{box-sizing:border-box;width:min(960px,calc(100vw - 16px));max-width:none;max-height:calc(100dvh - 20px);padding:18px;border:1px solid #e3dbe0;border-radius:14px;background:#f5f3f5;color:#24324a;overflow:auto}
#transportPage .transport-export-dialog::backdrop{background:#17223799}
#transportPage .transport-export-dialog header{display:flex;justify-content:space-between;align-items:center;gap:10px}
#transportPage .transport-export-dialog h3{font-size:17px;margin:0}
#transportPage .transport-export-actions{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 16px}
#transportPage .transport-export-dialog button{font-size:13px;min-height:42px;padding:8px 14px}
#transportPage #transportExportStatus{font-size:13px;line-height:1.6}
#transportPage #transportExportPages img{display:block;width:100%;height:auto;margin:12px auto;box-shadow:0 2px 10px #0002;background:white}
@media(max-width:720px){#transportPage .transport-workflow button{flex:1 0 40%}#transportPage .transport-preset-tools>*{flex:1 0 40%}#transportPage .transport-dialog input,#transportPage .transport-dialog select,#transportPage .transport-dialog textarea{font-size:16px}}

@media screen {#transportPage .transport-export-dialog {position:fixed;inset:0;margin:auto;height:fit-content;}#transportPage .transport-date-control {display:flex;flex-wrap:wrap;gap:6px;align-items:end;}#transportPage .transport-date-control>label {flex-basis:100%;}#transportPage #transportDateApply {min-height:38px;font-size:12px;padding:8px 12px;} }
