:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#14213b;background:#f3f5f9;font-synthesis:none;--navy:#111d36;--pink:#d42e75;--line:#e3e7ef;--muted:#66738a;--white:#fff}*{box-sizing:border-box}body{margin:0;font-size:1rem;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}a{color:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ed8fb7;outline-offset:3px}.sidebar{position:fixed;inset:0 auto 0 0;width:244px;background:var(--navy);color:#c2cbdc;padding:30px 18px;display:flex;flex-direction:column;z-index:2;overflow:auto}.brand{display:flex;align-items:center;gap:12px;color:white;text-decoration:none;font-weight:800;font-size:.9rem;letter-spacing:.06em;padding:0 10px 32px}.brand small{display:block;font-weight:500;color:#9aa9c4;font-size:.7rem;letter-spacing:.18em;margin-top:3px}.brand-mark{display:inline-flex;align-items:center;justify-content:center;background:var(--pink);color:white;border-radius:12px;width:42px;height:42px;font-size:1rem;font-weight:800;letter-spacing:-.06em;flex-shrink:0}.nav-label{margin:24px 12px 8px;font-size:.75rem;letter-spacing:.13em;color:#8190aa;font-weight:700}.nav-link{display:flex;gap:13px;align-items:center;text-decoration:none;padding:10px 13px;border-radius:8px;margin:3px 0;font-size:.9rem}.nav-link.active{color:#fff;background:#2b3750;box-shadow:inset 3px 0 var(--pink)}.nav-link:hover{background:#23304a;color:#fff}.nav-icon{width:20px;text-align:center;color:#98a7bf;font-size:1.1rem}.sidebar-bottom{border-top:1px solid #2a3650;margin-top:auto;padding:22px 12px 0;font-size:.875rem}.sidebar-bottom small{display:block;color:#9aa9c4;margin-top:3px}.text-button{border:0;background:transparent;color:inherit;padding:8px 0;text-decoration:underline;font-size:.875rem}main{margin-left:244px}.topbar{display:flex;justify-content:space-between;align-items:center;padding:22px 38px;background:#fff;border-bottom:1px solid var(--line);font-size:.8rem;color:var(--muted)}.separator{padding:0 12px;color:#b6becc}.workspace-label{font-weight:600}.topbar #breadcrumb{color:#24334b}#page{max-width:1600px;margin:auto;padding:34px 38px 60px}.page-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:27px}h1{font-size:2rem;line-height:1.2;letter-spacing:-.04em;margin:0 0 8px}h2{font-size:1.15rem;letter-spacing:-.02em;margin:0}h3{font-size:1rem;margin:0 0 12px}p{margin:0 0 16px}.muted,.page-heading p{color:var(--muted);font-size:.9rem}.page-heading p{margin:0}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.12em;color:var(--pink);margin-bottom:9px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 17px;min-height:43px;border:1px solid var(--pink);border-radius:7px;background:var(--pink);color:white;text-decoration:none;font-size:.875rem;font-weight:650;white-space:nowrap}.button:hover{filter:brightness(.94)}.button.secondary{background:white;color:#283950;border-color:#d9dfeb}.button.small{padding:6px 11px;min-height:32px;font-size:.8rem}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:26px}.metric{border:1px solid var(--line);border-radius:10px;background:white;padding:21px 23px;position:relative}.metric:first-child{border-top:3px solid var(--pink);padding-top:19px}.metric-label{font-size:.85rem;color:var(--muted)}.metric-value{display:block;font-size:2rem;letter-spacing:-.04em;font-weight:700;margin:7px 0 3px;font-variant-numeric:tabular-nums}.metric-note{color:var(--muted);font-size:.8rem}.panel{border:1px solid var(--line);border-radius:10px;background:#fff;margin-bottom:24px;overflow:hidden}.panel-heading{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:20px 24px;border-bottom:1px solid var(--line)}.panel-heading p{font-size:.85rem;color:var(--muted);margin:4px 0 0}.panel-body{padding:24px}.panel-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px}.pipeline{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stage{background:#f5f7fa;border-radius:8px;padding:16px}.stage span{font-size:.85rem;color:var(--muted)}.stage strong{display:block;font-size:1.5rem;margin-top:6px}.object-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.object-card{display:block;border:1px solid var(--line);border-radius:8px;padding:15px;text-decoration:none}.object-card:hover{border-color:var(--pink)}.object-card small{display:block;color:var(--muted);font-size:.8rem;margin-top:5px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.875rem;text-align:left;white-space:nowrap}th{padding:12px 20px;background:#f8f9fc;color:var(--muted);font-size:.75rem;letter-spacing:.04em;text-transform:uppercase;font-weight:650;border-bottom:1px solid var(--line)}td{padding:15px 20px;border-bottom:1px solid #edf0f5;max-width:310px;overflow:hidden;text-overflow:ellipsis}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fafbfe}.record-link{border:0;background:none;color:#213852;text-decoration:underline;text-underline-offset:3px;font-weight:650;padding:0;text-align:left}.mono{font-variant-numeric:tabular-nums}.pill{display:inline-block;padding:3px 9px;border-radius:5px;font-size:.75rem;background:#edf1f8;color:#52637e;white-space:nowrap}.pill.new,.pill.pending,.pill.planning{background:#fff0d4;color:#895c0b}.pill.completed,.pill.done,.pill.paid,.pill.approved,.pill.resolved{background:#e4f3ed;color:#216b50}.pill.review,.pill.open{background:#fce9ef;color:#a02852}.toolbar{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:17px 22px;border-bottom:1px solid var(--line)}.search{display:flex;gap:8px;align-items:center;max-width:600px;width:100%}.search input{min-width:120px;flex:1}.count{color:var(--muted);font-size:.85rem;white-space:nowrap}input,select,textarea{border:1px solid #cfd7e4;border-radius:6px;background:#fff;padding:10px 11px;color:#203149;min-width:0;width:100%;font-size:.9rem}textarea{resize:vertical;min-height:100px}label{display:block;color:#45546d;font-size:.85rem;font-weight:550}label input,label textarea,label select{display:block;margin-top:6px}.pagination{display:flex;justify-content:space-between;align-items:center;padding:15px 22px;border-top:1px solid var(--line);color:var(--muted);font-size:.85rem}.pagination div{display:flex;gap:8px}.empty{padding:45px 24px;text-align:center;color:var(--muted)}.empty h3{color:#263852}.notice{padding:15px 18px;border:1px solid #ead8b5;background:#fff9ed;color:#795a29;border-radius:8px;margin-bottom:24px;font-size:.9rem}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.detail-grid dt{color:var(--muted);font-size:.8rem;margin-bottom:5px}.detail-grid dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap;font-size:.95rem}.detail-grid .wide{grid-column:1/-1}.reference-band{padding:18px 24px;display:flex;gap:32px;background:#faf4f8;border-bottom:1px solid #eddfeb;flex-wrap:wrap;font-size:.85rem}.reference-band span{color:var(--muted)}.reference-band strong{display:block;color:#823356;font-weight:650}.related-heading{display:flex;justify-content:space-between;align-items:center;margin:28px 0 14px}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.tabs .active{background:var(--navy);color:white;border-color:var(--navy)}dialog{border:1px solid var(--line);border-radius:14px;padding:0;width:min(840px,calc(100% - 32px));max-height:90vh;color:#14213b;box-shadow:0 30px 90px #0c173940}dialog::backdrop{background:#0c173980;backdrop-filter:blur(3px)}.dialog-header{padding:23px 27px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.dialog-header .eyebrow{margin:0 0 3px}.icon-button{background:none;border:0;font-size:1.7rem;color:#6b7690;width:40px;height:40px}.form-grid{padding:25px 27px;display:grid;grid-template-columns:1fr 1fr;gap:19px}.form-grid .wide{grid-column:1/-1}.field-help{display:block;font-size:.8rem;color:var(--muted);font-weight:400;margin-top:5px}.dialog-footer{border-top:1px solid var(--line);padding:18px 27px;display:flex;justify-content:flex-end;gap:10px}.error{color:#ad2454}.error:not(:empty){background:#fff0f4;border-radius:6px;padding:13px 16px}#form-error{margin:0 27px 20px}#form-error:empty{display:none}.roadmap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.roadmap article{padding:24px;border:1px solid var(--line);background:#fff;border-radius:10px}.roadmap h2{margin:16px 0 12px}.roadmap ul{padding-left:18px;font-size:.9rem;color:var(--muted)}.roadmap li{margin-bottom:10px}#toast{position:fixed;bottom:25px;right:28px;padding:13px 20px;background:#14213b;color:#fff;border-radius:8px;box-shadow:0 8px 20px #14213b30;display:none;z-index:5}.login{background:#111d36;min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{background:#fff;border-radius:16px;padding:45px;max-width:470px;box-shadow:0 30px 80px #0004}.login-card .brand-mark{margin-bottom:25px;width:52px;height:52px}.login-card h1{font-size:1.9rem}.login-card .button{width:100%;margin:12px 0 20px}.login-card .muted{margin:0;text-align:center}.skip{position:fixed;left:260px;top:-60px;background:#fff;z-index:10;padding:12px}.skip:focus{top:10px}.source-data{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.875rem;max-height:500px;overflow:auto}.report-filter{display:flex;gap:15px;align-items:end;flex-wrap:wrap;margin-bottom:24px}.report-filter label{max-width:200px}.amount{text-align:right}.bar-row{display:grid;grid-template-columns:105px 1fr 100px;gap:14px;align-items:center;margin-bottom:16px;font-size:.85rem}.bar-track{background:#edf0f6;height:9px;border-radius:3px;overflow:hidden}.bar{height:100%;background:#50617f}.bar-row:first-child .bar{background:var(--pink)}.help-link{color:var(--pink);font-size:.85rem}.local-note{font-size:.8rem;color:var(--muted)}@media(min-width:1600px){#page{padding-top:42px}}@media(max-width:1150px){.sidebar{width:210px}main{margin-left:210px}#page{padding:27px 24px}.metrics{grid-template-columns:repeat(2,1fr)}.panel-grid{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr 1fr}.roadmap{grid-template-columns:1fr}.topbar{padding:18px 24px}.workspace-label{display:none}}@media(max-width:700px){.sidebar{position:relative;width:auto;inset:auto;padding:15px}.brand{padding:0 0 15px}.sidebar nav{display:flex;overflow-x:auto;gap:4px;padding-bottom:8px}.nav-label{display:none}.nav-link{white-space:nowrap;margin:0}.sidebar-bottom{display:none}main{margin:0}.topbar{padding:15px 20px}#page{padding:24px 16px}.page-heading{align-items:flex-start}h1{font-size:1.65rem}.page-heading .button{padding:9px 12px}.metrics{gap:10px}.metric{padding:17px}.metric-value{font-size:1.65rem}.detail-grid,.form-grid{grid-template-columns:1fr}.pipeline{grid-template-columns:1fr 1fr}.panel-heading,.panel-body{padding:18px}.toolbar{flex-wrap:wrap;padding:16px}.reference-band{gap:16px}.form-grid,.dialog-header{padding:20px}.count{white-space:normal}.skip{left:10px}.report-filter label{max-width:none;flex:1}.bar-row{grid-template-columns:85px 1fr 85px;gap:8px}.login-card{padding:30px}}

.address-field{position:relative}.address-suggestions{margin-top:5px;border:1px solid #cfd7e4;border-radius:8px;background:white;box-shadow:0 8px 22px #14213b15;max-height:280px;overflow:auto}.address-suggestions[hidden]{display:none}.address-suggestions button{display:block;text-align:left;width:100%;border:0;border-bottom:1px solid #edf0f5;background:white;padding:12px 14px;font-size:.875rem;color:#213852}.address-suggestions button:hover,.address-suggestions button[aria-selected=true]{background:#f9edf3}.address-suggestions small{display:block;color:#66738a;margin-top:3px}.address-credit{padding:10px 14px;font-size:.75rem;color:#66738a}.address-credit a{color:inherit}

.route-preview{border:1px solid #dfe5ee;border-radius:10px;overflow:hidden;background:#fff;margin-bottom:24px;max-width:850px}.route-map-header{padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:10px}.route-map-header h3{margin:0}.route-map-header .muted{font-size:.8rem}.map-canvas{position:relative;overflow:hidden;background:#e8edf0}.map-canvas svg{display:block;width:100%;height:auto}.map-attribution{position:absolute;bottom:0;right:0;background:#ffffffe8;padding:3px 6px;font-size:.75rem;color:#344969}.map-legend{padding:16px 20px;display:grid;grid-template-columns:1fr 1fr;gap:16px;font-size:.875rem}.map-legend>div{display:grid;grid-template-columns:12px 1fr;gap:4px 8px}.map-legend>div>span:last-child{grid-column:2;font-size:.85rem;color:#66738a;overflow-wrap:anywhere}.map-dot{width:10px;height:10px;border-radius:50%;align-self:center}.map-dot.pickup{background:#172943}.map-dot.delivery{background:#cf3377}.map-note{padding:0 20px 14px;margin:0;font-size:.8rem;color:#66738a}.map-empty{padding:32px 20px;background:#f6f8fb;color:#66738a;font-size:.9rem}.wide .route-preview{margin:0}@media(max-width:700px){.map-legend{grid-template-columns:1fr}.route-map-header{padding:14px}.map-canvas svg{min-height:190px}}

.google-route-map{display:block;width:100%;height:auto}.google-attribution{font-style:normal;font-weight:400;font-size:.875rem;letter-spacing:normal;white-space:nowrap;color:#5e5e5e}

.hr-actions{display:flex;flex-wrap:wrap;gap:9px}.hr-mail-status{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 20px;margin-bottom:24px;border:1px solid #eadfc9;border-radius:10px;background:#fdf9ef;color:#685a3c;font-size:.85rem}.hr-mail-status>div{display:grid;gap:3px}.hr-mail-status.ready{background:#eff8f3;border-color:#cde7d6;color:#315641}.hr-filter{align-items:end;gap:12px}.hr-filter label:first-child{flex:1;min-width:220px}.hr-filter label{font-size:.8rem}.hr-reference{display:block;color:var(--muted);margin-top:4px}.hr-form-bottom{padding:0 28px 24px}.hr-checklist{padding:0 22px}.hr-task{border-bottom:1px solid var(--line)}.hr-task:last-child{border:0}.hr-task summary{display:flex;align-items:center;gap:14px;cursor:pointer;padding:20px 0;list-style:none}.hr-task summary::after{content:'+';margin-left:6px;color:var(--muted)}.hr-task[open] summary::after{content:'−'}.hr-task-number{display:grid;place-items:center;width:32px;height:32px;flex-shrink:0;border-radius:50%;background:#f0f2f7;color:#4c5b73;font-size:.8rem}.hr-task-heading{flex:1;display:grid;gap:5px;font-size:.9rem}.hr-task-heading small{font-size:.78rem;color:var(--muted);font-weight:400}.hr-task-form{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:16px;padding:4px 0 24px 46px}.hr-task-form button{justify-self:start}.hr-notification{padding:16px 0;border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:20px;align-items:start}.hr-notification:last-child{border:0}.hr-notification>div{flex:1;min-width:200px}.hr-notification form{max-width:280px}.hr-notification p{font-size:.82rem;margin:7px 0}.hr-confirm{display:flex;align-items:start;gap:8px;margin-bottom:12px;font-size:.82rem}.hr-confirm input{width:auto;margin-top:4px}.hr-history>div{display:grid;gap:5px;border-left:2px solid #e4d7e0;padding:0 0 24px 18px;font-size:.85rem}.hr-history small{color:var(--muted)}.hr-history>div:last-child{padding-bottom:0}.hr-cancel{padding:10px 2px 24px;color:var(--muted);font-size:.85rem}.hr-cancel summary{cursor:pointer}.hr-cancel form{margin-top:16px;max-width:600px}.pill.active{background:#eaf0fc;color:#345994}.pill.queued{background:#fff3d9;color:#806321}.pill.accepted,.pill.confirmed{background:#e7f5ec;color:#356b45}.pill.failed,.pill.unknown{background:#fae6e9;color:#9d3548}.pill.draft{background:#edf0f5;color:#5d6879}@media(max-width:700px){.hr-mail-status{display:grid;gap:10px}.hr-actions{justify-content:flex-end}.hr-checklist{padding:0 15px}.hr-task-form{grid-template-columns:1fr;padding-left:0}.hr-task summary{gap:9px}.hr-task-number{width:25px;height:25px}.hr-task-heading strong{font-size:.83rem}.hr-task .pill{font-size:.68rem}.hr-form-bottom{padding:0 20px 20px}.hr-filter label{min-width:120px;flex:1}}

.ms-selection,.ms-review,.ms-run{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}.ms-identity{display:grid;gap:4px;margin-bottom:22px}.ms-identity small{color:var(--muted)}.ms-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.ms-selection fieldset{min-width:0;border:1px solid var(--line);border-radius:8px;margin:0 0 24px;padding:18px}.ms-selection legend{font-size:.9rem;font-weight:650;padding:0 7px}.ms-selection fieldset>label{margin-bottom:14px}.ms-choice{display:flex;align-items:flex-start;gap:10px;font-size:.85rem}.ms-choice input{width:auto;flex-shrink:0;margin-top:4px}.ms-choice span{display:grid;gap:3px}.ms-choice small{font-weight:400;color:var(--muted)}.ms-review{background:#fcf7fa;padding:22px;border:1px solid #eadce5;border-radius:8px}.ms-review ol{padding-left:22px;font-size:.9rem}.ms-review li{padding:4px 0}.ms-run-heading,.ms-steps li>div{display:flex;align-items:center;justify-content:space-between;gap:15px}.ms-steps{padding-left:22px;font-size:.85rem}.ms-steps li{padding:9px 0}.ms-steps small{display:block}.ms-secret{background:#fff8e7;border:1px solid #e4d8b7;border-radius:8px;padding:20px;display:flex;gap:12px;align-items:end;flex-wrap:wrap}.ms-secret label{flex:1;min-width:220px}.pill.succeeded,.pill.ready{background:#e4f3ed;color:#216b50}.pill.attention{background:#fae6e9;color:#9d3548}.pill.running{background:#eaf0fc;color:#345994}@media(max-width:850px){.ms-columns{grid-template-columns:1fr;gap:0}}

/* Staff handbook: persistent topic navigation, readable articles, and a clean print view. */
.guide-tools{display:flex;gap:24px;align-items:end;margin-bottom:25px}.guide-tools label{flex:1;max-width:520px}.guide-tools p{color:var(--muted);font-size:.85rem}.guide-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;align-items:start}.guide-toc{position:sticky;top:20px;display:grid;gap:4px;max-height:calc(100vh - 40px);overflow:auto}.guide-toc a{padding:9px 12px;border-left:2px solid #e0e5ed;color:#43516a;font-size:.85rem;text-decoration:none}.guide-toc a:hover,.guide-toc a:focus{border-color:var(--pink);background:#faf0f5;color:#823356}.guide-topic{scroll-margin-top:20px}.guide-topic:focus{outline:2px solid #dfb4c8;outline-offset:3px}.guide-topic .panel-body{font-size:.95rem;line-height:1.75}.guide-topic .panel-body>p:first-child{margin-top:0}.guide-topic ol{padding-left:24px;margin-top:0}.guide-topic li{padding-left:7px;margin-bottom:16px}.guide-note{padding:15px 18px;border-left:3px solid #ce8caa;background:#fcf6f9;color:#65465a;border-radius:0 7px 7px 0;font-size:.88rem}.guide-links{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:20px}.guide-counts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}.guide-counts>div{padding:14px;background:#f5f7fa;border-radius:8px;display:grid;gap:3px}.guide-counts strong{font-size:1.45rem;color:#243650}.guide-counts span{color:var(--muted);font-size:.78rem;text-transform:capitalize}.guide-workbook{border-top:1px solid var(--line);padding:14px 0;font-size:.85rem}.guide-workbook summary{cursor:pointer;overflow-wrap:anywhere}.guide-workbook summary span{display:block;margin-left:16px;font-size:.78rem}.guide-workbook td{white-space:normal;max-width:none;font-size:.8rem}.guide-topic[hidden],.guide-toc a[hidden],#guide-empty[hidden]{display:none}
@media(max-width:1050px){.guide-layout{grid-template-columns:1fr}.guide-toc{position:static;display:flex;flex-wrap:wrap;max-height:none;gap:5px}.guide-toc a{border:1px solid var(--line);border-radius:6px;padding:7px 10px;background:#fff}.guide-tools{display:block}.guide-counts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media print{body.printing-guide{background:#fff;color:#111;font-size:11pt}body.printing-guide .sidebar,body.printing-guide .topbar,body.printing-guide .skip,body.printing-guide .guide-tools,body.printing-guide .guide-toc,body.printing-guide #print-guide,body.printing-guide #toast,body.printing-guide .guide-links,body.printing-guide .guide-workbook>div{display:none!important}body.printing-guide main{margin:0}body.printing-guide #page{padding:0}body.printing-guide .guide-layout{display:block}body.printing-guide .guide-topic{box-shadow:none;border:0;border-radius:0;margin-bottom:24px}body.printing-guide .panel-heading,body.printing-guide .panel-body{padding:0}body.printing-guide .panel-heading{break-after:avoid}body.printing-guide .guide-topic .panel-body{font-size:10pt;line-height:1.5}body.printing-guide h2{font-size:15pt}body.printing-guide .guide-topic li{margin-bottom:8px;break-inside:avoid}body.printing-guide .guide-note{break-inside:avoid}body.printing-guide .guide-workbook{break-inside:avoid}body.printing-guide .guide-counts{grid-template-columns:repeat(4,1fr)}}

/* Record workspace */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.record-breadcrumb{display:flex;gap:11px;align-items:center;color:#728096;font-size:.8rem;margin-bottom:21px;min-width:0}
.record-breadcrumb a{color:#647086;text-decoration:none;white-space:nowrap}.record-breadcrumb a:hover{color:var(--pink)}.record-breadcrumb>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.record-hero{display:flex;justify-content:space-between;align-items:center;gap:26px;margin-bottom:28px}.record-hero-content{min-width:0}.record-kicker{display:flex;gap:13px;align-items:center;margin-bottom:12px}.record-kicker>span:first-child{font-size:.73rem;text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:#7d6a77}.record-hero h1{font-size:clamp(1.7rem,2.5vw,2.35rem);letter-spacing:-.045em;overflow-wrap:anywhere}.record-hero p{margin:10px 0 0;color:#6b788c;font-size:.94rem;max-width:680px}.record-hero-actions{display:flex;gap:10px;flex-shrink:0}
.record-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;background:#fff;border:1px solid #e3e7ef;border-radius:12px;box-shadow:0 2px 5px #25345103;margin-bottom:28px}.record-facts>div{padding:21px 23px;min-width:0}.record-facts>div+div{border-left:1px solid #edf0f5}.record-facts span{display:block;color:#7c8698;font-size:.74rem;margin-bottom:6px}.record-facts strong{display:block;color:#24344e;font-size:.9rem;font-weight:620;overflow-wrap:anywhere}
.record-tabs{display:flex;gap:27px;border-bottom:1px solid #dfe4ed;margin-bottom:27px;overflow-x:auto}.record-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;padding:4px 0 15px;white-space:nowrap;color:#748096;font-size:.88rem;font-weight:550}.record-tabs button[aria-selected=true]{color:#b42664;border-bottom-color:#cc3678}.record-tabs button:hover{color:#293c59}.record-tab-count{display:inline-block;font-size:.68rem;border-radius:5px;background:#e8edf4;color:#56647c;margin-left:7px;padding:1px 6px;min-width:20px}.record-tabs button[aria-selected=true] .record-tab-count{background:#fae5ef;color:#b42664}.record-tab-panel[hidden]{display:none}
.record-columns{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(250px,1fr);gap:24px;align-items:start}.record-panel{border-radius:12px;box-shadow:0 2px 7px #23324d03;overflow:hidden;margin-bottom:22px}.record-panel .panel-heading{padding:19px 23px;border-bottom-color:#edf0f5}.record-panel .panel-heading h2{font-size:.95rem;font-weight:650}.record-panel .panel-body{padding:23px}.record-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 26px;margin:0}.record-fields .wide{grid-column:1/-1}.record-fields dt{font-size:.74rem;color:#8590a2;margin-bottom:7px}.record-fields dd{font-size:.89rem;margin:0;color:#29394f;overflow-wrap:anywhere;white-space:pre-wrap}.record-unset{color:#9ba4b2;font-size:.85rem}.record-side-stack .record-fields{grid-template-columns:1fr}.record-notes{font-size:.9rem;white-space:pre-wrap;line-height:1.75;overflow-wrap:anywhere;color:#556378;margin:0}.record-route{border:1px solid #e9edf3;border-radius:9px;background:#fafbfd;padding:17px 19px;margin-bottom:24px;display:grid;gap:21px}.record-route>div{display:flex;gap:14px;align-items:center;position:relative}.record-route>div:first-child:after{content:'';position:absolute;height:26px;width:1px;background:#d9dde7;top:27px;left:4px}.record-route small{display:block;font-size:.62rem;font-weight:650;letter-spacing:.1em;color:#8d97a5;margin-bottom:4px}.record-route strong{font-size:.9rem;font-weight:580;overflow-wrap:anywhere}.route-stop{display:block;width:9px;height:9px;border:2px solid #3a4c68;border-radius:50%;flex-shrink:0}.route-stop.delivery{border-color:#d33578;background:#d33578}.record-main-stack .route-preview{max-width:none;border-radius:12px}.record-money-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:25px}.record-money-summary>div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:23px;display:grid;gap:9px}.record-money-summary span,.record-money-summary small{color:var(--muted);font-size:.8rem}.record-money-summary strong{font-size:1.9rem;font-weight:650;letter-spacing:-.035em}.record-panel #resolve-form{margin-top:24px;display:grid;gap:17px;max-width:650px}
/* Paperwork */
.document-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}.document-header .eyebrow{font-size:.66rem;margin-bottom:6px}.document-header h2{font-size:1.25rem}.document-header p:not(.eyebrow){color:#768296;font-size:.88rem;margin:8px 0 0}.document-header>a{white-space:nowrap;margin-top:25px}
.document-upload-fields{border:1px solid #e0e6ef;border-radius:12px;background:white;padding:22px;margin:0}.document-drop{position:relative;display:flex;align-items:center;flex-direction:column;gap:6px;border:1.5px dashed #d3b6c6;border-radius:9px;background:#fdf9fb;padding:28px 22px;cursor:pointer;text-align:center}.document-drop:hover,.document-drop.dragging{background:#fbeff5;border-color:#cf3677}.document-drop:focus-within{outline:3px solid #ed8fb7;outline-offset:3px}.document-drop strong{font-size:.94rem;font-weight:620}.document-drop>span:last-of-type{font-size:.78rem;color:#8690a0;font-weight:400}.document-upload-icon{display:grid;place-items:center;width:35px;height:35px;border-radius:9px;background:#f5e7ef;color:#b94074;font-size:1.4rem;margin-bottom:5px}.document-drop input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.document-upload-fields:disabled .document-drop{opacity:.65;cursor:wait}.document-metadata{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:16px;margin-top:19px}.document-metadata label,.document-toolbar label{font-size:.77rem;color:#6d788c}.document-metadata input,.document-metadata select,.document-toolbar input,.document-toolbar select{font-size:.85rem}.document-metadata label>span{font-weight:400}.document-upload-bottom{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:20px}.document-upload-bottom p{max-width:530px;margin:0;font-size:.76rem;line-height:1.65}.document-upload-bottom button{white-space:nowrap;font-size:.86rem}.selected-document{display:flex;align-items:center;justify-content:space-between;font-size:.81rem;color:#455570;border-bottom:1px solid #f0f2f6;gap:15px;padding:7px 0}.selected-document>span{overflow-wrap:anywhere;min-width:0}.selected-document small{color:#9aa3b2;margin-left:8px}.selected-document button{width:30px;height:30px;font-size:1.3rem}.document-upload-fields #selected-documents .field-help{font-size:.75rem;margin:9px 0 0}#document-upload-status:not(:empty){padding:12px 0;margin:0;font-size:.84rem;color:#5b6b80}#document-upload-status:empty{display:none}.document-browser{margin-top:30px}.document-toolbar{display:flex;gap:16px;align-items:end;margin-bottom:18px}.document-search{flex:1}.document-toolbar>label:last-child{width:190px}.document-card{display:flex;align-items:flex-start;gap:18px;padding:22px;background:white;border:1px solid #e4e8ef;border-radius:11px;margin-bottom:12px;box-shadow:0 2px 6px #27365102}.document-file-mark{display:grid;place-items:center;width:47px;height:56px;flex-shrink:0;background:#f5edf2;border:1px solid #efdfe8;border-radius:8px;color:#a85076;font-size:.66rem;font-weight:800;letter-spacing:.035em}.document-card-info{flex:1;min-width:0}.document-title-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.document-title-row h3{font-size:.94rem;font-weight:650;margin:0;overflow-wrap:anywhere}.document-title-row .pill{font-size:.64rem}.document-filename{font-size:.76rem;color:#939bad;margin:6px 0 10px;overflow-wrap:anywhere}.document-tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:11px}.document-tags span{background:#f3f5f8;color:#657389;border-radius:5px;padding:3px 7px;font-size:.65rem}.document-attribution{font-size:.71rem;color:#8a95a5;margin:5px 0 0;overflow-wrap:anywhere}.document-card-actions{display:grid;justify-items:end;gap:4px}.document-card-actions .text-button{font-size:.73rem;text-decoration:none;padding:4px 1px;color:#8b677c}.document-card-actions .button{font-size:.76rem;padding:7px 12px;margin-bottom:4px}.document-card-actions .muted{color:#9b9fac}.document-empty{border:1px solid #e4e8ef;border-radius:12px;background:#fff;padding:44px 24px;text-align:center}.document-empty>span{display:block;font-size:2rem;color:#b9c1cf;margin-bottom:9px}.document-empty h3{font-size:.99rem;margin-bottom:8px}.document-empty p{color:#8b95a6;max-width:450px;margin:0 auto;font-size:.85rem}.document-readonly{font-size:.85rem;color:#788598;background:#fff;border:1px solid #e4e8ef;padding:18px;border-radius:10px}
@media(max-width:1100px){.record-columns{grid-template-columns:1fr}.record-side-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}.record-hero{align-items:flex-start}.record-hero-actions{flex-direction:column}.record-facts>div{padding:18px}.document-metadata{grid-template-columns:1fr 1fr}.document-metadata>label:first-child{grid-column:1/-1}}
@media(max-width:700px){.record-hero{display:block}.record-hero-actions{flex-direction:row;margin-top:20px}.record-facts{grid-template-columns:repeat(2,1fr)}.record-facts>div{padding:16px}.record-facts>div:nth-child(3){border-left:0;border-top:1px solid #edf0f5}.record-facts>div:nth-child(4){border-top:1px solid #edf0f5}.record-tabs{gap:22px}.record-side-stack{display:block}.record-fields{gap:19px}.record-panel .panel-heading,.record-panel .panel-body{padding:18px}.record-money-summary{gap:10px}.record-money-summary>div{padding:17px}.record-money-summary strong{font-size:1.55rem}.document-header{display:block}.document-header>a{display:inline-block;margin-top:12px}.document-upload-fields{padding:16px}.document-drop{padding:24px 14px}.document-metadata{grid-template-columns:1fr}.document-upload-bottom{display:block}.document-upload-bottom button{margin-top:14px;width:100%}.document-card{gap:12px;flex-wrap:wrap;padding:17px}.document-file-mark{width:37px;height:45px;font-size:.55rem}.document-card-actions{display:flex;align-items:center;width:100%;padding-left:49px;gap:16px;flex-wrap:wrap}.document-card-actions .button{margin:0}.document-toolbar{display:grid;grid-template-columns:1fr}.document-toolbar>label:last-child{width:auto}.record-hero h1{font-size:1.65rem}}
.document-metadata select,.document-toolbar select{appearance:none;-webkit-appearance:none;display:block;width:100%;min-height:42px;padding:10px 32px 10px 12px;border:1px solid #d8dfe9;border-radius:7px;background-color:#fff;background-image:linear-gradient(45deg,transparent 50%,#8190a2 50%),linear-gradient(135deg,#8190a2 50%,transparent 50%);background-position:calc(100% - 16px) 18px,calc(100% - 11px) 18px;background-size:5px 5px;background-repeat:no-repeat;color:#31425d;margin-top:6px}.document-metadata select:disabled{background-color:#f6f7fa;color:#7c8595}
:root .account-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:flex-end}
.batch-steps{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.batch-steps .panel{margin-bottom:0}.batch-upload{display:flex;gap:20px;align-items:flex-end;flex-wrap:wrap}.batch-upload label{flex:1;min-width:220px}.batch-upload input[type=file]{display:block;width:100%;margin-top:8px;padding:10px;border:1px solid var(--line,#dce0e8);border-radius:8px}.batch-table td{white-space:normal;max-width:none;overflow-wrap:anywhere}.batch-section-title{padding:0 24px}.batch-existing{padding:20px 24px}.batch-existing summary{cursor:pointer;font-weight:600}.batch-existing .table-scroll{margin-top:12px}.batch-upload+.field-help{margin-top:16px}@media(max-width:760px){.batch-steps{grid-template-columns:1fr}.account-actions{justify-content:flex-start!important}.batch-upload{align-items:stretch}.batch-upload .button{width:100%}}
/* Administrator role access */
.access-role-picker { display:flex; align-items:end; gap:24px; flex-wrap:wrap; margin-bottom:20px; }
.access-role-picker > label { min-width:210px; }
.access-role-picker form { display:flex; align-items:end; gap:12px; flex:1; }
.access-role-picker form label { flex:1; }
.access-table th small { display:block; font-weight:400; color:var(--muted, #69758a); margin-top:5px; }
.access-table select { min-width:160px; }
.access-table th[scope="row"] { text-transform:none; letter-spacing:normal; }
.access-save { display:flex; justify-content:space-between; gap:20px; align-items:center; padding:20px 0; border-bottom:1px solid #e5e9ef; }
.access-save p { margin:0; max-width:440px; }
.access-notes { margin-top:20px; line-height:1.7; }
.access-notes summary { cursor:pointer; font-weight:600; }
/* Weekly finance dashboard and payment recording */
.dashboard-period { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin:26px 0 12px; }
.dashboard-period h2 { margin:0; font-size:1.3rem; }
.dashboard-period>span { font-size:.8rem; color:#657389; }
.dashboard-display-controls { display:flex; align-items:center; flex-wrap:wrap; gap:12px 24px; margin:12px 0 24px; }
.dashboard-display-controls label { display:flex; align-items:center; gap:9px; margin:0; font-size:.9rem; font-weight:600; cursor:pointer; }
.dashboard-display-controls input { width:18px; height:18px; margin:0; accent-color:var(--pink); }
.dashboard-review-status { color:#89570b; font-size:.85rem; }
[data-dashboard-extra][hidden],.metric-note[hidden] { display:none!important; }
.metrics.dashboard-metrics { grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.dashboard-metrics .metric { padding:22px; }
.dashboard-metrics .metric-value { font-size:clamp(1.3rem,2.3vw,2rem); overflow-wrap:anywhere; }
.dashboard-owed { background:#edf8f1; border-color:#bddfc9; }
.dashboard-net { background:#f7f2f8; border-color:#deccdf; }
.dashboard-section .panel-heading p { color:#69758a; font-size:.8rem; margin:7px 0 0; }
.dashboard-section td { max-width:none; white-space:normal; }
.dashboard-section td.amount { white-space:nowrap; }
.dashboard-section td small { display:block; font-size:.7rem; margin-top:6px; color:#657389; }
.dashboard-section td.owed-cell { background:#edf8f1; color:#185b37; font-weight:650; }
.cross-month { display:inline-block; background:#fff1a8; color:#665015!important; border:1px solid #e3ca65; border-radius:5px; padding:3px 7px; font-size:.7rem; white-space:nowrap; }
.dashboard-section td .cross-month { display:table; }
.dashboard-equation { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; padding-bottom:22px; margin-bottom:22px; border-bottom:1px solid var(--line); }
.dashboard-equation span { color:#68758a; font-size:.82rem; }
.dashboard-equation strong { display:block; color:#263950; margin-top:8px; font-size:1.3rem; font-variant-numeric:tabular-nums; }
.dashboard-warning { display:block; color:#89570b!important; font-weight:500; }
.dashboard-details { margin:26px 0; }
.dashboard-details>summary { padding:18px 0; margin-bottom:12px; border-bottom:1px solid var(--line); cursor:pointer; font-size:1.05rem; font-weight:650; }
.settlement-body { padding:24px; }
.settlement-body>h3 { margin-top:0; }
.settlement-body>p { overflow-wrap:anywhere; }
.settlement-body .record-money-summary { grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.settlement-body .record-money-summary>div { padding:14px; }
.settlement-body .record-money-summary strong { font-size:1.25rem; }
#settlement-dialog { width:min(720px,calc(100% - 30px)); }
#settlement-dialog .form-grid { padding:0; }
#settlement-dialog .hr-confirm { display:flex; align-items:center; gap:10px; margin-top:20px; }
#settlement-dialog .hr-confirm input { width:auto; }
.pill.paid { color:#185b37; background:#e3f4e8; }
.pill.partial { color:#7d560e; background:#fff1ce; }
.pill.credit { color:#4a477c; background:#efedfa; }
@media(max-width:760px) {
  .metrics.dashboard-metrics,.dashboard-equation { grid-template-columns:1fr; }
  .dashboard-metrics .metric-value { font-size:1.8rem; }
  .settlement-body { padding:18px; }
  .settlement-body .record-money-summary { grid-template-columns:1fr; }
}
@media(max-width:700px) {
  .access-role-picker, .access-role-picker form, .access-save { align-items:stretch; flex-direction:column; }
  .access-role-picker form { width:100%; }
}
.access-role-select{max-width:420px}.access-role-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:24px 0}.access-role-fields textarea{min-height:120px}.access-role-fields #access-add-member{margin-top:12px}.access-tab-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:26px 0 14px}.access-table th{min-width:260px}.access-table th small{max-width:560px;white-space:normal}.access-notes label{margin-top:14px}@media(max-width:700px){.access-role-fields{grid-template-columns:1fr}.access-tab-heading{align-items:flex-start;flex-direction:column}}

/* Roles are organized by object; field controls stay collapsed until needed. */
.access-mode{display:flex;gap:10px;margin-bottom:18px}.access-feedback{font-weight:600;min-height:1.4em}.access-template-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:18px}.access-template{text-align:left;border:1px solid var(--border,#d9e0e8);border-radius:10px;background:#fff;padding:16px;cursor:pointer;color:inherit}.access-template:hover,.access-template:focus-visible{border-color:#ba2868;background:#fff5f9}.access-template strong{display:block;font-size:17px;margin-bottom:7px}.access-template span{font-size:13px;color:#526175;line-height:1.5;display:block}.access-starters{margin-bottom:20px}.access-admin{display:flex!important;align-items:flex-start;gap:12px;padding:16px;border-radius:10px;background:#f4f6fa;margin:18px 0}.access-admin input,.access-person-role input{width:18px!important;min-width:18px;margin:3px 0}.access-admin small,.access-person-role small{display:block;line-height:1.5;font-weight:400;color:#526175;margin-top:5px}.access-object-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:26px 0 12px}.access-object-heading h2{margin-bottom:5px}.access-object-heading p{color:#526175;font-size:14px;margin:0}.access-object-heading label{min-width:260px}.access-bulk{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}.access-objects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.access-object{border:1px solid #dce2ea;border-radius:12px;padding:16px}.access-object-top{display:flex;align-items:center;justify-content:space-between;gap:14px}.access-object-top small{display:block;font-size:12px;color:#69778b;margin-top:3px}.access-object-top select{min-width:115px}.access-object>.field-help{margin:10px 0 0}.access-field-details{border-top:1px solid #e7ebf0;margin-top:14px;padding-top:12px}.access-field-details summary{cursor:pointer;font-size:14px;font-weight:600;display:flex;justify-content:space-between;gap:10px}.access-field-count{font-size:12px;color:#64748b;font-weight:400}.access-field-list{display:grid;gap:3px}.access-field-list label{display:grid!important;grid-template-columns:1fr 135px;align-items:center;gap:10px;padding:7px 0;font-size:13px}.access-field-list select{padding:7px!important;font-size:13px!important}.access-person-lookup{display:flex;gap:12px;align-items:end;max-width:650px}.access-person-lookup label{flex:1}.access-person-roles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px}.access-person-role{display:flex!important;align-items:flex-start;gap:12px;border:1px solid #dce2ea;border-radius:10px;padding:16px;cursor:pointer}.access-person-role:has(input:checked){background:#fff5f9;border-color:#d56998}.access-person-summary{margin:22px 0 14px}.access-save{position:sticky;bottom:0;background:white;border-top:1px solid #dce2ea;padding:16px 0;z-index:2}.access-object[hidden],.access-field-list label[hidden]{display:none!important}.access-object-heading input{width:100%}.access-mode .button{white-space:normal}.access-starters .panel-heading{gap:16px}.access-starters .panel-heading p{margin:4px 0 0;color:#526175;font-size:14px}
@media(max-width:1050px){.access-template-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.access-object-heading{align-items:stretch;flex-direction:column}.access-object-heading label{min-width:0}}@media(max-width:650px){.access-template-grid,.access-objects,.access-person-roles{grid-template-columns:1fr}.access-person-lookup{align-items:stretch;flex-direction:column}.access-starters .panel-heading{flex-direction:column;align-items:start}.access-field-list label{grid-template-columns:1fr 120px}.access-save{gap:12px;flex-wrap:wrap}}

/* Staff handbook field references and worked examples. */
.guide-table{margin:18px 0;max-width:100%}.guide-table table{width:100%;min-width:0;table-layout:auto}.guide-table caption{text-align:left;font-weight:700;color:var(--navy);padding:0 0 12px}.guide-table th,.guide-table td{white-space:normal;overflow-wrap:anywhere;max-width:none;vertical-align:top;line-height:1.65;font-size:.88rem;text-transform:none;letter-spacing:normal}.guide-table tbody th{width:26%;color:var(--navy);font-weight:600;background:#fafbfe}.guide-field-reference{margin:16px 0;border:1px solid var(--line);border-radius:10px;padding:15px}.guide-field-reference summary{cursor:pointer;font-weight:600;color:var(--navy)}.guide-field-reference[open] summary{margin-bottom:15px}
@media(max-width:600px){.guide-table th,.guide-table td{padding:10px 8px;font-size:.8rem}.guide-field-reference{padding:10px}.guide-table tbody th{width:32%}}
@media print{body.printing-guide .guide-table{overflow:visible}body.printing-guide .guide-table table{width:100%;min-width:0}body.printing-guide .guide-table th,body.printing-guide .guide-table td{font-size:9pt;padding:6px;border-bottom:1px solid #ccc;color:#111}body.printing-guide .guide-table tr{break-inside:avoid}body.printing-guide .guide-table thead{display:table-header-group}body.printing-guide .guide-field-reference{border:0;padding:0}body.printing-guide .guide-field-reference summary{break-after:avoid}}

.history-value{white-space:pre-wrap;overflow-wrap:anywhere;max-width:32rem}
[hidden]{display:none!important}
.record-delete-dialog{max-width:36rem;width:calc(100% - 2rem);border:1px solid #d6dee8;border-radius:16px;padding:1.5rem}.record-delete-dialog::backdrop{background:rgba(16,24,40,.45)}
#editor .dialog-footer{position:sticky;bottom:0;background:#fff;z-index:1}
.annual-recipients td{white-space:normal;vertical-align:top}.annual-recipients td small{display:block;color:var(--muted)}.annual-recipients details{min-width:12rem}.annual-recipients summary{cursor:pointer;font-weight:650}.annual-recipients ul{padding-left:1.2rem;overflow-wrap:anywhere}.annual-recipients li{margin:.5rem 0}

.trip-more-fields summary{cursor:pointer;font-weight:600;padding:12px 0}.trip-more-fields>.form-grid{padding:14px 0 0}

/* Invoice preparation uses large controls and preserves a readable printed column order. */
.invoice-lines {min-width:780px}
.invoice-lines th:first-child {width:45%}
.invoice-lines th:nth-child(2) {width:12%}
.invoice-lines th:nth-child(3) {width:16%}
.invoice-lines textarea,.invoice-lines input {width:100%;min-width:0}
.invoice-lines td {vertical-align:top;white-space:normal;max-width:none}
.invoice-approval {margin-top:24px;padding:20px;background:#f2f5f8;border-radius:12px}
.invoice-approval label {display:flex;gap:10px;align-items:center;margin-bottom:16px}
.invoice-approval input[type=checkbox] {width:auto}
.record-tab-panel fieldset {border:0;margin:0;padding:0;min-width:0}
.sr-only {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.guide-quick {margin:0 0 28px}
.guide-quick h2 {font-size:1.2rem;margin:0 0 16px}
.guide-quick>div,.recovery-types {display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-bottom:24px}
.recovery-card {display:flex;flex-direction:column;gap:9px;padding:22px;text-decoration:none;color:var(--navy);margin:0}
.recovery-card:hover,.recovery-card:focus {border-color:var(--pink);background:#fcf6f9}
.recovery-card strong {font-size:1.05rem}
.recovery-card span {color:var(--muted);font-size:.9rem;line-height:1.6}
.guide-flow,.guide-topic ol.guide-flow {display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;list-style:none;padding:0;margin:0 0 26px}
.guide-flow li,.guide-topic .guide-flow li {padding:18px;margin:0;border:1px solid var(--line);border-top:4px solid var(--pink);border-radius:8px;background:#f7f9fc}
.guide-flow p {font-size:.9rem;line-height:1.6;margin:10px 0 0;color:var(--muted)}
@media print {body.printing-guide .guide-quick,body.printing-guide [data-print-topic]{display:none!important}body.printing-workflow .guide-topic:not(.print-selected){display:none!important}body.printing-guide .guide-flow{grid-template-columns:repeat(2,1fr);break-inside:avoid}body.printing-guide .guide-flow li{padding:10px;border:1px solid #999;background:#fff}body.printing-guide .guide-flow p{color:#222;font-size:9pt}}
.guide-topic ol.guide-flow {grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:600px){.guide-topic ol.guide-flow{grid-template-columns:1fr}.guide-topic .panel-heading{flex-wrap:wrap;gap:12px}}

.map-actions{padding:0 20px 14px}.map-load{margin:24px 20px}.map-error{padding:24px 20px;margin:0;color:#9b254c}.google-route-map[hidden]{display:none}

.map-route-status,.map-inferred{padding:16px 20px;margin:0;font-size:.875rem;line-height:1.5}.map-inferred{background:#fff5df}.map-inferred p{margin:8px 0}.map-actions{display:flex;gap:8px;flex-wrap:wrap}.map-legend a{color:#385d90}.record-fields dd{white-space:pre-wrap}

.record-review{border:1px solid #edcf98;background:#fff9ed;border-radius:12px;margin:0 0 22px;padding:18px 22px}.record-review .panel-heading{padding:0;border:0;gap:16px}.record-review h2{font-size:1rem;margin:0}.record-review p{font-size:.875rem;color:#6b5b41}.record-review ul{line-height:1.8}.record-review.complete{border-color:#d9e5db;background:#f4faf5;font-size:.875rem}.record-review.complete p{margin-bottom:0}.review-item{display:flex;justify-content:space-between;gap:24px;padding:22px;border-top:1px solid var(--line)}.review-item h2{font-size:1rem;overflow-wrap:anywhere}.review-item ul{line-height:1.7;padding-left:20px;font-size:.9rem}.review-item-actions{display:flex;flex-direction:column;gap:10px;align-items:flex-start;flex-shrink:0}.review-filters{align-items:end;gap:16px;flex-wrap:wrap}.review-filters label{display:grid;gap:6px;font-size:.85rem}.review-filters .review-mine{display:flex;align-items:center;padding-bottom:10px}.needs-information{background:#fff7e6;border-radius:8px;outline:2px solid #dca94f;outline-offset:5px}.review-item .eyebrow{margin:0}.table-scroll td>.pill.review{display:block;width:max-content;margin-top:6px}@media(max-width:700px){.review-item{flex-direction:column}.review-item-actions{flex-direction:row;flex-wrap:wrap}.record-review .panel-heading{align-items:start;flex-direction:column}}

.bulk-downloads{display:flex;gap:10px;flex-wrap:wrap}.bulk-change{padding:16px 22px;border-top:1px solid var(--line)}.bulk-change summary{cursor:pointer;font-weight:600;overflow-wrap:anywhere}.bulk-change .table-scroll{margin:16px 0}.bulk-change td{white-space:pre-wrap;overflow-wrap:anywhere;max-width:400px}.bulk-change th{white-space:normal}#bulk-content>.panel,#bulk-result>.panel{margin-bottom:22px}#bulk-content .panel-body{line-height:1.65}#bulk-form{display:flex;gap:16px;align-items:end;flex-wrap:wrap}#bulk-form label{display:grid;gap:8px}#bulk-paste{display:block;width:100%;font-family:monospace;margin:8px 0}

.service-assignments>.panel,.service-assignment,.service-history{margin-top:20px}.service-assignment h3{margin:0}.service-price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0}.service-price{border:1px solid var(--line);border-radius:10px;padding:16px;display:grid;gap:12px}.service-price legend{font-weight:700}.service-price label{display:grid;gap:6px}.service-history>summary,.invoice-template>summary{padding:18px;font-weight:600;cursor:pointer}.invoice-template{border:1px solid var(--line);border-radius:10px;margin:16px 0;padding:0 14px 14px}.invoice-template .form-grid{margin:16px 0}.mileage-lines input{min-width:90px}.mileage-lines input[data-mileage="stop"]{min-width:200px}[data-work-editor]:not(:empty){margin:20px 0}[data-post-editor] form{margin:20px 0}[data-post-preview] li{margin:14px 0;line-height:1.6}@media(max-width:760px){.service-price-grid{grid-template-columns:1fr}}

/* Keep route inspection inside the record, above the detailed fields. */
.route-preview{max-width:none;border-radius:14px}.route-map-header{flex-wrap:wrap;border-bottom:1px solid var(--line)}.route-map-header h3{font-size:1rem;margin-bottom:5px}.map-tools{display:flex;gap:8px;margin-left:auto}.map-workspace{display:grid;grid-template-columns:minmax(0,1fr) 280px;align-items:stretch}.map-stops{border-left:1px solid var(--line);background:#fafbfd;padding:22px 18px;max-height:630px;overflow:auto}.map-stops h4{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;margin:0 0 22px;color:var(--muted)}.map-itinerary{list-style:none;margin:0;padding:0}.map-itinerary li{display:grid;grid-template-columns:29px minmax(0,1fr);gap:12px;padding:0 0 26px;position:relative}.map-itinerary li:not(:last-child):before{content:'';position:absolute;left:13px;top:30px;bottom:3px;border-left:2px solid #d5dfeb}.map-letter{display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--navy);color:white;font-size:.75rem;font-weight:700;width:28px;height:28px}.map-letter.destination{background:var(--pink)}.map-itinerary strong{font-size:.78rem;display:block;margin:3px 0 8px}.map-itinerary li div>span,.map-location{display:block;font-size:.875rem;line-height:1.6;overflow-wrap:anywhere}.map-location{padding:6px 8px;margin-left:-8px;width:calc(100% + 8px);text-align:left;background:transparent;border:1px solid transparent;border-radius:7px;color:#304e72;cursor:pointer;font:inherit;font-size:.875rem}.map-location:hover,.map-location:focus-visible,.map-location[aria-pressed=true]{background:#fcecf3;border-color:#edabc7;color:#8d2554}.map-tools [aria-pressed=true]{background:#fcecf3;color:#8d2554;border-color:#edabc7}.google-route-frame{border:0;display:block;width:100%;height:520px;background:#edf1f5}.google-route-frame[hidden]{display:none}.map-canvas{min-width:0;background:#f0f4f8;min-height:260px}.map-route-status{font-size:.82rem;background:#f5f8fb;border-bottom:1px solid #e6ebf2}.map-expanded .google-route-frame{height:75vh;min-height:540px}.map-expanded .map-workspace{grid-template-columns:minmax(0,1fr) 220px}.map-note{padding:16px 20px;border-top:1px solid var(--line);line-height:1.6}.map-setup{min-height:320px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;gap:10px;background:linear-gradient(125deg,#edf2f7,#fafcfe)}.map-setup-symbol{font-size:3rem;color:#9dacc0}.map-setup strong{font-size:1.1rem;color:var(--navy)}.map-setup p{max-width:390px;line-height:1.6;margin:0 0 4px}.map-editor .map-workspace{grid-template-columns:minmax(0,1fr) 220px}.map-editor .google-route-frame{height:360px}.map-load{margin:10px 16px}.service-assignment .route-preview{margin-top:16px}.service-assignment .google-route-frame{height:400px}
@media(max-width:850px){.map-workspace,.map-editor .map-workspace,.map-expanded .map-workspace{grid-template-columns:1fr}.map-stops{border-left:0;border-top:1px solid var(--line);max-height:none}.google-route-frame{height:420px}.map-itinerary{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.map-itinerary li:before{display:none}.map-itinerary li{padding-bottom:10px}.map-tools{margin-left:0}.map-expanded .google-route-frame{height:75vh;min-height:420px}}

/* In-place record corrections and an ordered stop worksheet. */
.field-pencil{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;margin-left:6px;border:1px solid #d5dfeb;border-radius:8px;background:#fff;color:#325579;vertical-align:middle;cursor:pointer;flex-shrink:0}
.field-pencil:hover{background:#edf4fc;border-color:#6586b1}.field-pencil:focus-visible{outline:3px solid #9ec9f7;outline-offset:2px}
.record-fields dt{display:flex;align-items:center;justify-content:space-between;gap:8px}.record-fields [data-inline-display]{white-space:pre-wrap;overflow-wrap:anywhere}
.inline-editor{padding:16px;border:1px solid #b5cbe3;border-radius:12px;background:#f7faff;white-space:normal;min-width:0}.inline-editor label{display:block;position:relative;font-size:13px;font-weight:600;color:#344860}.inline-editor input,.inline-editor select,.inline-editor textarea{display:block;width:100%;box-sizing:border-box;margin-top:7px}.inline-editor-title{font-size:16px;font-weight:700;margin-bottom:14px}.inline-editor-actions{display:flex;gap:10px;margin-top:14px}.inline-editor .error:empty{display:none}.inline-editor [hidden]{display:none!important}
.inline-stop-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(130px,1fr);gap:12px;border:1px solid #d9e3ef;background:#fff;border-radius:10px;padding:14px;margin-bottom:12px}.stop-notes,.stop-no-go,.stop-row-actions{grid-column:1/-1}.stop-row-actions{display:flex;gap:8px;justify-content:flex-end}.stop-address{min-width:0}.map-stop-editor:not(:empty){padding:16px}.map-stop-note{white-space:pre-wrap;font-size:12px;line-height:1.5;margin:6px 0;color:#58677b;overflow-wrap:anywhere}.map-itinerary strong{display:flex;align-items:center;justify-content:space-between;gap:8px}.inline-address-suggestions{position:relative;inset:auto;max-height:260px;overflow:auto;z-index:5}.inline-address-suggestions button{text-align:left;width:100%;white-space:normal}.inline-editor .field-help{display:block;margin-top:8px;font-weight:400}
@media(max-width:650px){.inline-stop-row{grid-template-columns:minmax(0,1fr)}.inline-editor{padding:12px}.route-map-header{flex-wrap:wrap}.record-fields>div:has(.inline-editor){grid-column:1/-1}}

.address-find[hidden]{display:none}
.record-input-group{min-width:0;margin:0;padding:12px;border:1px solid #d9e3ef;border-radius:10px;background:#fff}.record-input-group legend{padding:0 5px;font-size:13px;font-weight:700;color:#344860}.record-input-group label{display:block;min-width:0;font-size:13px;font-weight:600;color:#344860}.record-input-group input:not([type="hidden"]),.record-input-group select{width:100%;box-sizing:border-box;margin-top:6px}.record-input-group>.button{margin-top:10px}.measurement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.measure-row{display:grid;grid-template-columns:minmax(70px,1fr) minmax(110px,1fr);gap:8px}.timing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.calendar-control{display:flex;align-items:center;gap:6px;min-width:0}.calendar-control>input{min-width:0;flex:1;width:100%}.calendar-control>.calendar-open{flex:none;margin-top:6px;white-space:nowrap;padding:8px 10px;min-height:38px}.record-input-group [hidden]{display:none!important}
@media(max-width:700px){.measurement-grid{grid-template-columns:minmax(0,1fr)}.calendar-control{flex-wrap:wrap}.calendar-control>.calendar-open{margin-top:0}.record-input-group{padding:10px}}
.calendar-control{position:relative;flex-wrap:wrap}
.calendar-popup{position:relative;flex-basis:100%;width:min(320px,80vw);z-index:100;background:#fff;color:#172b40;padding:14px;border:1px solid #b9c9d6;border-radius:12px;box-shadow:0 12px 35px #17304740}
.calendar-heading,.calendar-footer{display:flex;align-items:center;justify-content:space-between;gap:8px}
.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;margin:12px 0;text-align:center}
.calendar-popup button{border:1px solid #c7d5df;background:#f4f8fb;color:#173047;border-radius:5px;cursor:pointer;padding:8px}
.calendar-popup button[aria-pressed=true]{background:#175f75;color:white}
.calendar-popup button:disabled{opacity:.35;cursor:default}
.record-fields>div:has(.inline-editor){grid-column:1/-1}

.upload-requirement{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0}.upload-requirement>div{display:grid;gap:4px}.upload-requirement span{font-size:.85rem}.upload-requirement button{flex-shrink:0}.escort-requirement{border-bottom:1px solid var(--border,#e2e5eb)}#escort-requirement-change{padding:4px 0 16px}.requirement-history{margin-top:20px}.requirement-history summary{cursor:pointer;font-weight:600}.requirement-history article{padding:12px 0;border-bottom:1px solid var(--border,#e2e5eb)}.requirement-reason{white-space:pre-wrap;overflow-wrap:anywhere}.saved-text{color:#236548}#escort-created-link:empty,#escort-upload-message:empty{display:none}
/* The connection tree follows record permissions and opens the original records. */
.connection-toolbar,.connection-toolbar>div{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.connection-toolbar{margin:10px 0 22px}.connection-toolbar h2{margin:0;font-size:1.2rem}.connection-card{background:#fff;border:1px solid #dce2ea;border-radius:12px;padding:20px;min-width:0}.connection-focus{border:2px solid #bc3b78;background:#fff8fb}.connection-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.connection-card h3{margin:5px 0 0;font-size:1.08rem;overflow-wrap:anywhere}.connection-type{font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;color:#6b7587}.connection-links{display:flex;align-items:flex-end;flex-direction:column;gap:9px;flex-shrink:0}.connection-links .help-link{font-size:.78rem}.connection-facts{display:flex;flex-wrap:wrap;gap:14px 26px;margin:16px 0 0}.connection-facts>div{min-width:100px;max-width:100%;flex:1 1 140px}.connection-facts dt{font-size:.75rem;color:#64748b;margin-bottom:4px}.connection-facts dd{margin:0;font-size:.88rem;overflow-wrap:anywhere}.connection-parents{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.connection-edge{font-size:.8rem;color:#64748b;margin:0 0 8px}.connection-down{padding:8px 20px;font-size:1.5rem;color:#b64377}.connection-branches{border-left:2px solid #d3dce7;margin:0 0 0 20px;padding:22px 0 0 20px}.connection-group{margin-bottom:20px;min-width:0}.connection-group>summary{cursor:pointer;font-size:.96rem;font-weight:650;margin-bottom:16px}.connection-group>p{font-size:.83rem}.connection-tree{list-style:none;padding:0;margin:0;display:grid;gap:14px}.connection-tree>li{position:relative;min-width:0}.connection-tree>li:before{content:'';position:absolute;left:-20px;top:24px;width:20px;border-top:2px solid #d3dce7}.connection-card .connection-branches{padding-top:18px;margin-left:8px}.connection-card .connection-group:last-child{margin-bottom:0}.connection-example{margin:22px 0}.connection-example>figcaption{font-weight:650;margin-bottom:15px}.connection-example .connection-card{padding:16px}.connection-example .connection-type{font-size:.7rem}
@media(max-width:700px){.connection-card{padding:14px}.connection-card-head{display:block}.connection-links{margin-top:12px;flex-direction:row;align-items:center;flex-wrap:wrap}.connection-branches{margin-left:5px;padding-left:12px}.connection-tree>li:before{left:-12px;width:12px}.connection-card .connection-branches{margin-left:0}.connection-parents{grid-template-columns:1fr}.connection-facts{gap:12px}.connection-facts>div{flex-basis:120px}}
@media print{.connection-links,.connection-toolbar button{display:none!important}.connection-card{break-inside:avoid}.connection-group:not([open])>ul{display:block}}

.connection-record-details{margin-top:12px}.connection-record-details>summary{font-size:.8rem;color:#64748b;cursor:pointer}.connection-record-details .connection-facts{margin-top:10px}.connection-group:not([open]){margin-bottom:14px}

/* The compact diagram keeps written types alongside color and icons. */
.connection-view{display:flex;border:1px solid #cbd5e1;border-radius:9px;overflow:hidden}.connection-view button{border:0;background:#fff;color:#334155;font:inherit;cursor:pointer}.connection-view button[aria-pressed=true]{background:#752650;color:white}.connection-diagram{border:1px solid #e1e7ef;border-radius:14px;max-width:100%;overflow-wrap:anywhere}.diagram-kind{display:block;color:var(--diagram-color);font-weight:650}.diagram-icon{color:var(--diagram-color)}.access-session-control{border-top:1px solid #dbe3ec;margin-top:24px;padding-top:24px}.escort-code-panel{margin:16px 0;padding:16px;border:1px solid #dce2ea;border-radius:8px}.escort-code-panel textarea{font:inherit}.escort-code-panel>strong{display:block;margin-bottom:12px}#escort-text-code:empty{display:none}
@media(max-width:700px){.connection-toolbar>div{gap:10px}}
@media print{.connection-view,.escort-code-panel{display:none!important}}

/* Record map: compact field boxes with actual IDs and connecting paths. */
.record-map{padding:0;background:#f6f8fc}.diagram-scroll{overflow:auto;max-height:76vh;min-height:440px;border-radius:14px}.diagram-canvas{position:relative;width:max-content;min-width:100%;padding:26px}.diagram-columns{position:relative;display:flex;align-items:flex-start;gap:64px}.diagram-column{width:300px;display:flex;flex-direction:column;gap:26px;flex:0 0 300px}.diagram-record{--diagram-color:#52637d;--diagram-tint:#f1f5f9;background:#fff;border:1px solid #cdd8e6;border-top:3px solid var(--diagram-color);border-radius:9px;box-shadow:0 3px 10px #1c335409;overflow:hidden;scroll-margin:20px}.diagram-record.diagram-customers,.diagram-record.diagram-escortcompanies{--diagram-color:#7040a0;--diagram-tint:#f6f0ff}.diagram-record.diagram-invoices{--diagram-color:#a72c6a;--diagram-tint:#fff1f7}.diagram-record.diagram-trips{--diagram-color:#176c9b;--diagram-tint:#eef8ff}.diagram-record.diagram-escorts{--diagram-color:#167568;--diagram-tint:#effcf7}.diagram-record.diagram-payments,.diagram-record.diagram-payables{--diagram-color:#89601a;--diagram-tint:#fff9e9}.diagram-record>header{display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--diagram-tint)}.diagram-record h3{font-size:1rem;line-height:1.35;margin:2px 0 0;color:#172a42;overflow-wrap:anywhere}.diagram-record .diagram-icon{width:24px;height:24px;flex-basis:24px}.diagram-record .diagram-kind{font-size:.7rem;margin:0}.diagram-id{padding:9px 14px;border-bottom:1px solid #e2e8f0}.diagram-id>span{display:block;color:#65738a;font-size:.7rem;margin-bottom:4px}.diagram-id code{font-family:ui-monospace,SFMono-Regular,monospace;font-size:.65rem;color:#334761;white-space:normal;overflow-wrap:anywhere}.diagram-record-fields{max-height:236px;overflow:auto;overscroll-behavior:contain}.diagram-record-fields table{table-layout:fixed;width:100%;border-collapse:collapse;margin:0}.diagram-record-fields th,.diagram-record-fields td{padding:8px 12px;font-size:.77rem;border-bottom:1px solid #edf1f6;white-space:normal;vertical-align:top;overflow-wrap:anywhere;background:white;color:#233a55;text-align:left}.diagram-record-fields th{letter-spacing:normal;text-transform:none;width:43%;font-weight:500;color:#596c83}.diagram-record-fields td{font-weight:500}.diagram-field-link{font-family:ui-monospace,SFMono-Regular,monospace;font-size:.66rem;color:#21668b;text-decoration:underline;text-underline-offset:3px}.diagram-record-links{padding:8px 13px;background:#fafbfd;border-top:1px solid #e7edf5;display:flex;flex-direction:column;gap:3px}.diagram-record-links span{font-size:.68rem;color:#5d7087}.diagram-record-links a{font-size:.73rem;overflow-wrap:anywhere;color:#49627e;text-decoration:underline}.diagram-record>footer{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:9px 12px;border-top:1px solid #e3e9f1}.diagram-open{padding:6px 9px;border:1px solid #cbd5e1;border-radius:6px;color:#334155;background:#fff;text-decoration:none;font-size:.76rem;font-weight:600;line-height:1.3}.diagram-follow{font-size:.72rem;color:#8e3566;text-decoration:none;padding:5px 0}.diagram-record.diagram-current{border:2px solid #a72c6a}.diagram-record.diagram-match{outline:3px solid #176c9b;outline-offset:3px}.diagram-wires{position:absolute;inset:0;pointer-events:none;overflow:visible;color:#9aadc6}.diagram-wires>path{fill:none;stroke:currentColor;stroke-width:1.6}.diagram-map-pages{padding:0 16px}.diagram-map-pages:empty{display:none}.connection-toolbar .button.small,.connection-view button{min-height:34px;padding:7px 11px;font-size:.82rem}.connection-toolbar .help-link{padding:0;font-size:.8rem}.diagram-record-fields:focus-visible,.diagram-scroll:focus-visible{outline:2px solid #176c9b;outline-offset:-2px}
@media(max-width:700px){.diagram-column{width:285px;flex-basis:285px}.diagram-columns{gap:44px}.diagram-canvas{padding:18px}.diagram-scroll{max-height:72vh}}
@media print{.diagram-scroll{max-height:none;overflow:visible}.diagram-canvas{width:auto;padding:0}.diagram-columns{display:block}.diagram-column{width:100%;display:block}.diagram-record{margin-bottom:15px;break-inside:avoid}.diagram-wires,.diagram-record>footer{display:none}.diagram-record-fields{max-height:none}}

.diagram-record-fields th,.diagram-record-fields td{font-size:.85rem}.diagram-id code,.diagram-field-link{font-size:.71rem}

/* Keep run filtering in the list toolbar. */
.search:has(.trip-status-filter){max-width:760px;flex-wrap:wrap;align-items:flex-end}
.trip-status-filter{flex:0 0 160px;margin:0;font-size:.75rem}
.trip-status-filter select{display:block;margin-top:3px;padding:10px 11px}
/* Configurable records use the same controls and spacing as the core portal. */
.crm-manager{display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px;align-items:start}
.crm-panel{padding:20px}.crm-panel h2{margin:0 0 16px}.crm-panel .panel-heading{padding:0 0 16px}.crm-panel>.record-fields,.crm-panel .crm-form{padding:0}.crm-panel .toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:16px}.crm-panel .toolbar label{display:grid;gap:6px}
.crm-object-menu{padding:16px;position:sticky;top:16px}.crm-object-menu h2{font-size:18px;margin:0 0 12px}
.crm-object-choice{display:flex;width:100%;align-items:center;justify-content:space-between;gap:8px;background:transparent;border:1px solid transparent;border-radius:8px;padding:10px 12px;text-align:left;color:var(--ink,#192942);cursor:pointer;font:inherit}
.crm-object-choice small{font-size:11px;color:#64748b}.crm-object-choice.selected{border-color:#e4b6cc;background:#fff4f8}.crm-object-menu>a{display:block;margin-top:16px}
.crm-manager .panel,.crm-form{padding:20px}.crm-manager .panel{margin-bottom:20px}.crm-manager .panel-heading{padding:0 0 16px}
.crm-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.crm-form label{display:flex;flex-direction:column;gap:8px;font-weight:600}.crm-form .span2,.crm-form-actions{grid-column:1/-1}.crm-form-actions,.crm-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.crm-form .crm-check{flex-direction:row;align-items:center}.crm-check input[type=checkbox]{width:18px;height:18px;margin:0}.crm-form textarea{min-height:90px}.crm-form .record-input-group{margin:0}.crm-form .field-help{font-weight:400}
.crm-required{color:#ca236e}.crm-message{border-left:3px solid #258564;background:#effaf5;padding:10px 14px;color:#17513f}.crm-manager-note{font-size:13px;color:#536579;line-height:1.6}
.crm-connection-fields{margin:0;max-height:260px;overflow:auto;border-top:1px solid #e1e6ef}.crm-connection-fields>div{display:grid;grid-template-columns:42% minmax(0,1fr);gap:10px;padding:8px 0;border-bottom:1px solid #e8edf3;font-size:12px}.crm-connection-fields dt{color:#536579;font-weight:500}.crm-connection-fields dd{margin:0;overflow-wrap:anywhere}.crm-connection-card>a{align-self:flex-start;font-size:12px;padding:6px 10px}
.crm-history{border-bottom:1px solid #e5e9ef;padding:16px 0}.crm-history>small{display:block;margin-top:5px}.crm-history .record-fields{margin-top:12px}.crm-form .error{margin:0}
.crm-connection-tree{display:grid;grid-template-columns:minmax(180px,240px) minmax(0,1fr);gap:40px;align-items:start;padding:24px 0}.crm-connection-center,.crm-connection-card{display:flex;flex-direction:column;gap:8px;border:1px solid #d6dfea;border-radius:12px;padding:16px;background:#fff;overflow-wrap:anywhere}.crm-connection-center{border-color:#db83ab;background:#fff4f8}.crm-connection-branches{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;border-left:2px solid #d6dfea;padding-left:24px}.crm-connection-card{text-decoration:none;color:#192942;position:relative}.crm-connection-card:before{content:'';position:absolute;left:-26px;top:30px;width:24px;height:2px;background:#d6dfea}.crm-connection-card:hover{border-color:#ca236e;box-shadow:0 3px 12px #13213b12}.crm-connection-card small{color:#536579}.crm-connection-card code{font-size:11px}.crm-object-choice:focus-visible,.crm-connection-card:focus-visible{outline:3px solid #ca236e;outline-offset:2px}
@media(max-width:850px){.crm-manager{grid-template-columns:1fr}.crm-object-menu{position:static}.crm-form{grid-template-columns:1fr}.crm-connection-tree{grid-template-columns:1fr;gap:20px}.crm-connection-branches{grid-template-columns:1fr}.crm-actions .button{white-space:normal}}
/* Per-trip guide follows the existing record panels and checklist permissions. */
.trip-workflow{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:20px;align-items:start}
.workflow-steps{display:grid;gap:8px}
.workflow-step{display:flex;gap:12px;align-items:flex-start;width:100%;text-align:left;background:var(--panel,#fff);color:inherit;border:1px solid #d9dce3;border-radius:10px;padding:14px;cursor:pointer;font:inherit}
.workflow-step[aria-current="step"]{border-color:#b13c74;background:#fff1f7;box-shadow:inset 4px 0 #b13c74}
.workflow-step small{display:block;margin-top:5px;color:#606574}
.workflow-number{display:grid;place-items:center;flex-shrink:0;width:28px;height:28px;border-radius:50%;background:#f0e5ec;font-weight:700}
.workflow-instructions{padding-left:24px;margin-top:0}
.workflow-instructions li{padding-left:5px;margin-bottom:16px;line-height:1.65}
.workflow-source{margin:22px 0;color:#606574}
.workflow-task{border-top:1px solid #d9dce3;padding:14px 0}
.workflow-task summary{cursor:pointer;line-height:1.7}
.workflow-task form{display:grid;gap:12px;margin-top:15px;max-width:620px}
.workflow-task .pill{margin-left:8px}
.workflow-next{display:flex;justify-content:space-between;gap:12px;margin-top:25px}
.workflow-step:focus-visible{outline:3px solid #b13c74;outline-offset:3px}
.workflow-calculations{margin-top:20px}.workflow-calculations>summary{padding:20px;cursor:pointer;font-weight:700}
.workflow-calculations td,.workflow-calculations th{white-space:normal;min-width:150px;vertical-align:top}
.workflow-choose{display:none}
@media(max-width:800px){.trip-workflow{grid-template-columns:1fr}.workflow-steps{display:none}.workflow-choose{display:grid;gap:8px;margin:18px 0}.workflow-choose select{max-width:100%}}
@media(max-width:460px){.workflow-steps{grid-template-columns:1fr}}

/* A single working step keeps the guided view calm on every screen size. */
.trip-workflow{display:block;max-width:860px;margin:0 auto}
.workflow-welcome{max-width:860px;margin:0 auto 18px}
.workflow-welcome .panel-body{padding-top:0;padding-bottom:12px}
.workflow-simple-instruction{font-size:1.08rem;line-height:1.7;max-width:65ch}
.workflow-more{margin:22px 0;padding:16px;border:1px solid var(--line);border-radius:10px}
.workflow-more>summary{cursor:pointer;font-weight:600}
.workflow-more[open]>summary{margin-bottom:18px}
.workflow-jump,.workflow-calculations{max-width:860px;margin:20px auto}
.workflow-choose{display:grid;gap:8px;margin:12px 0}
.trip-guided-view .record-facts,.trip-guided-view .record-review{display:none}
.trip-tools>summary{cursor:pointer;padding:14px;font-weight:600}
.trip-tools{margin-bottom:18px;border:1px solid var(--line);border-radius:10px}
.trip-guided-view .record-hero-actions>[data-record-tab],.trip-guided-view .record-hero-actions>[data-delete-record]{display:none}

.nav-more{margin-top:18px;border-top:1px solid var(--line);padding-top:12px}
.nav-more>summary{cursor:pointer;padding:12px;font-size:.9rem;font-weight:600}
.trip-guided-view .record-hero-actions>[data-edit]{display:none}
.free-pin-dialog{width:min(760px,94vw);max-height:95vh;border:0;border-radius:16px;padding:24px}.free-pin-map,.free-trip-map{height:360px;min-width:0}.free-pin-dialog::backdrop{background:#0b152b99}.free-trip-map{width:100%;}.maplibregl-map{font-family:inherit}

.panel label.check-line{display:flex;align-items:center;gap:10px;margin:16px 0}.panel label.check-line input[type="checkbox"]{width:auto;min-width:18px;margin:0;flex:0 0 auto}

/* Staff operations board */
.operations-metrics .operation-metric{display:flex;flex-direction:column;text-align:left;color:inherit;font:inherit;gap:4px;background:white;border:1px solid var(--line);cursor:pointer}
.operation-metric:hover,.operation-metric.selected{border-color:var(--pink);box-shadow:0 0 0 1px var(--pink)}
.operation-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.operation-filters [aria-pressed="true"]{background:var(--navy);color:white;border-color:var(--navy)}
.operation-filters .count{margin-left:4px;color:inherit}
.operations-metrics .metric-note{white-space:normal}
.tool-vendor-list{max-height:320px;overflow:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:6px;padding:10px;border:1px solid var(--line);border-radius:8px;margin:12px 0}.tool-vendor-list .check-line{padding:7px;margin:0}.tool-mode{display:grid;gap:8px;margin:20px 0 8px}.tool-rate-row{margin:16px 0}.trip-start-guide{margin:6px 0 20px}.trip-start-guide p:last-child{margin-bottom:0}.needs-information{padding:8px}.trip-start-guide h2{font-size:1rem}
.tool-vendor-choice{display:flex;align-items:center;justify-content:space-between;gap:8px}.tool-vendor-choice .help-link{font-size:.75rem;white-space:nowrap}
