/* Agreement records and authenticated PDF reader. Uses the company's theme colours. */
.hf-agreement-dialog #modalBody{display:flex;flex-direction:column;gap:14px;padding:16px!important;background:var(--bg)}
.hf-agreement-dialog #modalBody>*{margin:0!important;flex:none;min-width:0}
.hfg-summary{padding:20px;background:var(--panel);border:1px solid var(--line);border-top:4px solid var(--accent);border-radius:15px}
.hfg-summary-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.hfg-summary-top .hf-status{max-width:75%;white-space:normal;text-align:right}
.hfg-document-symbol{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:color-mix(in srgb,var(--accent) 16%,var(--panel));font-size:24px}
.hfg-eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.8px;color:var(--muted);margin:16px 0 5px}.hfg-summary h2{font-size:28px;letter-spacing:-.5px;line-height:1.2;margin:0;overflow-wrap:anywhere}.hfg-customer{font-size:15px;font-weight:650;margin:7px 0}.hfg-summary-note{font-size:12px;line-height:1.6;color:var(--muted);margin:10px 0 0}
.hfg-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden}.hfg-card>header{padding:15px 16px 12px}.hfg-card h3{font-size:15px;margin:0}.hfg-card header p{font-size:12px;color:var(--muted);line-height:1.5;margin:6px 0 0}
.hfg-document-actions{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:9px;padding:0 16px 16px}.hfg-document-actions .btn{display:grid;place-items:center;min-height:46px;font-size:12px;text-decoration:none;text-align:center;white-space:normal;padding:10px}
.hfg-document-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:14px 16px;margin:0;border-top:1px solid var(--line)}.hfg-document-facts>div{min-width:0}.hfg-document-facts dt{font-size:10px;color:var(--muted);margin-bottom:5px}.hfg-document-facts dd{font-size:12px;line-height:1.5;font-weight:600;margin:0;overflow-wrap:anywhere}
.hfg-recipient{padding:0 16px 14px;display:grid;gap:10px}.hfg-recipient label{display:grid;gap:6px;font-size:11px}.hfg-recipient input{width:100%;min-width:0;font-size:16px!important;min-height:46px;padding:11px!important}.hfg-recipient .btn{font-size:12px;justify-self:start}.hfg-recipient-email{font-size:14px;line-height:1.5;font-weight:600;overflow-wrap:anywhere;margin:0}.hfg-help{font-size:11px;line-height:1.6;color:var(--muted);margin:0}.hfg-no-history{padding:0 16px 16px}.hfg-copy-link{display:block;margin:0 16px 15px;font-size:12px!important;min-height:44px}.hfg-card>.pair-notice{margin:0 16px 16px;font-size:12px}
.hfg-timeline{list-style:none;padding:0 16px 15px;margin:0;display:grid;gap:0}.hfg-timeline li{display:flex;gap:12px;position:relative;padding:0 0 16px}.hfg-timeline li:last-child{padding-bottom:0}.hfg-timeline li:not(:last-child):before{content:"";position:absolute;width:1px;left:10px;top:23px;bottom:2px;background:var(--line)}.hfg-timeline li>span{display:grid;place-items:center;flex:0 0 22px;height:22px;border-radius:50%;background:color-mix(in srgb,var(--accent) 15%,var(--panel));font-size:12px}.hfg-timeline strong{display:block;font-size:12px;line-height:1.6}.hfg-timeline time{display:block;font-size:11px;color:var(--muted);line-height:1.6}.hfg-actions{position:static!important;padding:0;display:grid}.hfg-actions .btn{min-height:48px;font-size:13px}
#hfAgreementDocument{width:min(1050px,calc(100vw - 36px));height:94dvh;max-height:94dvh;padding:0;border:1px solid var(--line);border-radius:16px;background:var(--bg);color:var(--ink);overflow:hidden;box-shadow:0 20px 70px #0004}#hfAgreementDocument[open]{display:flex;flex-direction:column}#hfAgreementDocument::backdrop{background:#27242380}
.hfg-viewer-head{display:flex;align-items:center;gap:12px;padding:13px 16px;background:var(--panel);border-bottom:1px solid var(--line);flex:none}.hfg-viewer-head>div{min-width:0;flex:1}.hfg-viewer-head p{font-size:10px;color:var(--muted);margin:0 0 4px}.hfg-viewer-head h2{font-size:16px;margin:0;overflow-wrap:anywhere}.hfg-viewer-head .btn{flex:none;font-size:12px;min-height:44px}.hfg-viewer-back{flex:0 0 44px;width:44px;height:44px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--ink);font-size:22px;cursor:pointer}
.hfg-viewer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 16px;flex:none}.hfg-viewer-toolbar p{font-size:11px;color:var(--muted);margin:0;line-height:1.4}.hfg-viewer-toolbar select{min-height:44px;width:108px;font-size:12px;padding:8px;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:9px}
.hfg-pdf-scroll{overflow:auto;min-height:0;flex:1;overscroll-behavior:contain}.hfg-pdf-pages{min-width:100%;width:max-content;padding:0 16px 20px;box-sizing:border-box}.hfg-pdf-page{display:block;background:white;color:#272423;margin:0 auto 15px;box-shadow:0 2px 8px #27242318;overflow:hidden}.hfg-pdf-page canvas{display:block}.hfg-pdf-page[data-state="error"]{padding:15px;font-size:13px;line-height:1.6}.hfg-document-error{margin:16px;padding:20px;background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:12px;font-size:14px;line-height:1.7}.hfg-document-error[hidden],.hfg-pdf-scroll[hidden]{display:none}
@media(max-width:720px){dialog.hf-agreement-dialog,#hfAgreementDocument{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0}.hf-agreement-dialog .modal-head{padding:calc(12px + env(safe-area-inset-top)) 14px 12px}.hf-agreement-dialog #modalTitle{font-size:16px}.hf-agreement-dialog #modalDesc{font-size:11px}.hf-agreement-dialog #modalBody{padding:14px 12px calc(20px + env(safe-area-inset-bottom))!important}.hfg-summary{padding:18px}.hfg-viewer-head{padding:calc(10px + env(safe-area-inset-top)) 12px 10px;gap:9px}.hfg-viewer-head h2{font-size:14px}.hfg-viewer-head .btn{padding:9px;font-size:11px}.hfg-pdf-pages{padding-bottom:calc(20px + env(safe-area-inset-bottom))}}
@media(max-width:360px){.hfg-document-actions{grid-template-columns:1fr}.hfg-document-facts{grid-template-columns:1fr}.hf-agreement-dialog .modal-head{gap:8px}.hf-agreement-dialog .hfa-record-help{flex-basis:38px;width:38px;min-width:38px}}
.hfg-view-licence{display:block;margin:0 16px 16px;min-height:46px;font-size:12px}.hfg-viewer-toolbar{flex-wrap:wrap}.hfg-viewer-toolbar>p{flex:1}.hfg-viewer-licence{font-size:11px!important;min-height:44px}.hfg-viewer-licence[hidden]{display:none}
#hfDriverLicence{padding:0;width:min(850px,calc(100vw - 36px));height:88dvh;max-height:94dvh;border:1px solid var(--line);border-radius:16px;background:var(--bg);color:var(--ink);overflow:hidden}#hfDriverLicence[open]{display:flex;flex-direction:column}#hfDriverLicence::backdrop{background:#27242399}.hfl-head{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--panel);border-bottom:1px solid var(--line);flex:none}.hfl-head h2{font-size:17px;margin:0}.hfl-head p{font-size:12px;color:var(--muted);margin:5px 0 0}.hfl-back{width:44px;height:44px;flex:none;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--ink);font-size:22px;cursor:pointer}.hfl-tabs{display:flex;gap:8px;padding:12px 16px 0;flex:none}.hfl-tabs button{flex:1;min-height:46px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:var(--panel);font:inherit;font-size:13px;font-weight:650;cursor:pointer}.hfl-tabs button[aria-selected=true]{background:var(--accent);border-color:var(--accent)}.hfl-tabs button:disabled{opacity:.5;cursor:default}.hfl-status{font-size:12px;line-height:1.6;color:var(--muted);padding:0 16px;margin:12px 0;flex:none}.hfl-panel{flex:1;overflow:auto;min-height:0;padding:0 16px 20px}.hfl-panel img{display:block;max-width:100%;height:auto;margin:auto;border:1px solid var(--line);border-radius:10px}.hfl-panel img[hidden]{display:none}
@media(max-width:720px){#hfDriverLicence{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0}.hfl-head{padding-top:calc(12px + env(safe-area-inset-top))}.hfl-panel{padding-bottom:calc(20px + env(safe-area-inset-bottom))}}
