body.admin-page{color:#11233f;background:#f1f5f9}.admin-page [hidden]{display:none!important}.admin-header{display:flex;align-items:flex-start;justify-content:space-between;max-width:1180px;margin:0 auto;padding:24px;gap:24px}.admin-brand{display:flex;align-items:center;gap:16px;text-decoration:none;color:#111;font-size:26px;font-weight:850}.admin-brand b{color:#cf2930}.admin-brand img{object-fit:contain;border-radius:9px;background:white}.admin-languages{display:grid;grid-template-columns:1fr 1fr;gap:8px}.admin-languages #admin-logout{grid-column:1/-1}.admin-languages [aria-pressed=true]{outline:2px solid #e4b321;outline-offset:2px}.admin-main{max-width:1180px;margin:0 auto;padding:0 24px 48px}.admin-main h1{margin:16px 0;font-size:30px}.admin-main p{line-height:1.6}.admin-main input,.admin-main select{width:100%;box-sizing:border-box;min-height:44px;background:white;color:#11233f}.admin-main label{display:block;margin-bottom:8px}.admin-main button{cursor:pointer;background:#11233f;color:white;min-height:44px;border:1px solid #345fa0;font-weight:650}.admin-main button:disabled{opacity:.5;cursor:not-allowed}#admin-login{background:white;max-width:440px;border:1px solid #cad7e8;border-radius:14px;padding:28px;margin:32px auto}#admin-login-form{display:grid;gap:10px}#admin-login-form button{margin-top:12px}.admin-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 140px 260px auto;gap:16px;align-items:end;margin:24px 0}.admin-actions{display:flex;gap:12px;flex-wrap:wrap}#admin-report{margin-top:24px}#admin-report-title{font-size:22px}.admin-record{border:1px solid #cad7e8;border-radius:12px;background:white;padding:20px;margin-bottom:16px}.admin-record h3{margin:0 0 8px;font-size:18px}.admin-record p{margin:5px 0;white-space:pre-wrap;overflow-wrap:anywhere}.admin-record details{margin-top:12px}.admin-record summary{cursor:pointer;font-weight:650}.admin-record dl{display:grid;grid-template-columns:170px 1fr;gap:6px;margin:16px 0}.admin-record dt{font-weight:650}.admin-record dd{margin:0;overflow-wrap:anywhere}.admin-record ul{padding-left:20px;line-height:1.7}.admin-record img{max-width:200px;width:100%;height:auto}.admin-error{color:#ad2026}#admin-status{white-space:pre-wrap}@media(max-width:760px){.admin-filters{grid-template-columns:1fr}.admin-header,.admin-main{padding-left:16px;padding-right:16px}.admin-brand{font-size:21px;gap:8px}.admin-brand img{width:60px}.admin-record dl{grid-template-columns:1fr}.admin-record dd{margin-bottom:8px}.admin-actions button{flex:1 1 100%}}@media print{body.admin-page{background:white!important}.admin-header,.admin-filters,.admin-actions,#admin-status,#admin-dashboard>h1,#admin-dashboard>p,#admin-login{display:none!important}.admin-main{max-width:none;padding:0!important;margin:0!important}#admin-dashboard,#admin-report{display:block!important}.admin-record{break-inside:avoid;border-radius:0;padding:12px}.admin-record details>*{display:block}.admin-record summary{display:none}.admin-record dl{display:grid}body.admin-page>*:not(.admin-main){display:none!important}}
@media print{body.admin-page>.admin-main{display:block!important}}
.admin-main input{font:inherit;border:1px solid #bfd0e8;border-radius:9px;padding:12px 16px}.admin-main input:focus-visible{outline:2px solid #345fa0;outline-offset:2px}.admin-main select{border:1px solid #bfd0e8}.admin-page .admin-main button:disabled{opacity:.5!important;cursor:not-allowed!important}

.admin-record dl{grid-template-columns:max-content minmax(0,1fr);column-gap:28px;row-gap:8px}
.admin-record .discount-code-placeholder{max-width:100px;min-height:36px;padding:6px 12px;background:#f5f7fb}
.admin-service-list>li{margin-bottom:24px}
.admin-record .admin-service-prices{margin:12px 0;font-size:14px}
.admin-record .admin-report-totals{border-top:1px solid #bfd0e8;padding-top:16px;margin-top:24px;font-size:15px}
.admin-report-totals dd{font-weight:650}
@media(max-width:760px){.admin-record dl{grid-template-columns:1fr;row-gap:4px}.admin-record dd{margin-bottom:10px}}
@media print{.admin-record dl{grid-template-columns:max-content minmax(0,1fr);column-gap:20px}.admin-record{break-inside:auto}.admin-service-list>li,.admin-contact-details,.admin-report-totals{break-inside:avoid}.admin-record input.discount-code-placeholder{border:0;background:none;padding:0;min-height:0}}

.admin-nav{max-width:1180px;margin:0 auto;padding:20px 24px 0;display:flex;gap:12px;flex-wrap:wrap}.admin-nav button{background:#11233f;color:white;border:1px solid #345fa0;font:inherit;font-weight:650;min-height:44px;cursor:pointer}.admin-nav button[aria-pressed=true]{outline:2px solid #e4b321;outline-offset:2px}
.admin-suggest-field{position:relative}.admin-suggestions{position:absolute;z-index:5;top:100%;left:0;right:0;margin-top:6px;border:1px solid #bfd0e8;border-radius:9px;background:white;box-shadow:0 8px 20px #11233f20;max-height:280px;overflow:auto}.admin-page .admin-suggestions button{display:block;width:100%;text-align:left;background:white!important;color:#11233f!important;border:0;border-bottom:1px solid #e6ebf2;border-radius:0;font-weight:400;padding:12px}.admin-page .admin-suggestions button:hover,.admin-page .admin-suggestions button:focus-visible{background:#e8eff8!important}.admin-suggestions p{padding:10px;margin:0}.admin-client-match{display:block;margin:12px 0;width:100%;text-align:left}
@media(max-width:760px){.admin-nav{padding:16px}.admin-nav button{flex:1 1 auto}}
@media print{.admin-nav,#admin-client-result{display:none!important}}

.admin-client-editor form{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;margin-top:24px}.admin-edit-field{display:grid;grid-template-columns:190px minmax(0,1fr);gap:16px;align-items:center;grid-column:1/-1}.admin-edit-field label{margin:0;font-weight:650}.field-street,.field-postcode{grid-column:1}.field-number,.field-city{grid-column:2;grid-template-columns:90px minmax(0,1fr)}.field-discount_percentage{grid-template-columns:190px minmax(0,120px) auto}.admin-client-save{grid-column:1/-1;justify-self:end;min-width:150px}.admin-client-save.saved{background:#246dba!important}.admin-save-toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:#11233f;color:white;padding:18px 28px;border-radius:12px;box-shadow:0 8px 30px #11233f30;z-index:20;font-weight:650}
@media(max-width:760px){.admin-client-editor form{grid-template-columns:1fr}.admin-edit-field,.field-street,.field-postcode,.field-number,.field-city{grid-column:1;grid-template-columns:1fr;gap:8px}.field-discount_percentage{grid-template-columns:1fr}.admin-client-save{width:100%}}

.admin-header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:24px}.admin-header .admin-brand{justify-self:start;white-space:nowrap}.admin-header .admin-nav{padding:0;margin:0;justify-content:center;align-items:flex-start;flex-wrap:nowrap;gap:10px}.admin-header .admin-nav button{white-space:nowrap}.admin-header .admin-languages{justify-self:end}.admin-brand span{line-height:44px}
@media(max-width:1000px){.admin-header{grid-template-columns:auto 1fr auto;gap:16px}.admin-header .admin-nav{flex-wrap:wrap}.admin-header .admin-nav button{padding-left:12px;padding-right:12px}.admin-header .admin-brand{font-size:21px;gap:8px}}
@media(max-width:760px){.admin-header{grid-template-columns:1fr auto}.admin-header .admin-nav{grid-row:2;grid-column:1/-1;justify-self:center}.admin-header .admin-languages{grid-row:1;grid-column:2}.admin-header .admin-nav button{flex:1 1 auto}.admin-brand span{line-height:44px}}

.admin-date-range{grid-column:1/3;display:grid;grid-template-columns:1fr 1fr;gap:16px}.admin-filters>button[type=submit]{grid-column:5;grid-row:1/3;align-self:end}.admin-date-range input{cursor:pointer;font:inherit;color-scheme:light}.admin-client-identity{padding:12px 0;border-bottom:1px solid #cad7e8}@media(max-width:760px){.admin-date-range{grid-column:1;grid-template-columns:1fr}.admin-filters>button[type=submit]{grid-column:1;grid-row:auto}}

.admin-filters.lookup>button[type=submit]{grid-row:1}

.admin-record .admin-service-prices,.admin-record .admin-report-totals{grid-template-columns:minmax(0,1fr) max-content;column-gap:28px;width:100%;max-width:480px;box-sizing:border-box}.admin-service-prices dd,.admin-report-totals dd{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.admin-record .admin-item-line{margin:3px 0;line-height:1.6}.admin-service-list>li{padding-bottom:18px;border-bottom:1px solid #e4eaf3}.admin-service-list>li:last-child{border-bottom:0}.admin-record .admin-item-line:first-child{font-weight:650;margin-bottom:6px}@media(max-width:480px){.admin-record .admin-service-prices,.admin-record .admin-report-totals{column-gap:14px;font-size:13px}}

.admin-record .admin-report-totals{margin-left:20px;width:calc(100% - 20px);font-size:14px}
@media(min-width:761px) and (max-width:1000px){.admin-filters{grid-template-columns:1fr 1fr}.admin-date-range{grid-column:1/-1}.admin-filters>button[type=submit],.admin-filters.lookup>button[type=submit]{grid-column:1/-1;grid-row:auto;justify-self:end}}
@media(max-width:760px){.admin-filters.lookup>button[type=submit]{grid-row:auto}}
@media(max-width:480px){.admin-record .admin-report-totals{font-size:13px}}

.admin-record-actions{display:flex;justify-content:flex-end;margin-top:16px}.admin-page .admin-delete-button{background:#b42530;color:white;border:1px solid #b42530}.admin-delete-dialog{width:min(440px,calc(100vw - 40px));box-sizing:border-box;border:1px solid #bfd0e8;border-radius:16px;padding:28px;color:#11233f;background:white}.admin-delete-dialog::backdrop{background:#11233f80}.admin-delete-dialog h2{margin-top:0}.admin-delete-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.admin-delete-actions button{font:inherit;padding:12px 28px;border-radius:9px;cursor:pointer;border:1px solid #11233f;background:#11233f;color:white}.admin-delete-actions #admin-delete-yes{background:#b42530;border-color:#b42530}.admin-delete-dialog button:focus-visible{outline:3px solid #e4b321;outline-offset:3px}.admin-delete-dialog button:disabled{opacity:.5;cursor:wait}@media print{.admin-record-actions,#admin-delete-dialog{display:none!important}}

#admin-report-mail-form{display:grid;gap:12px}#admin-report-recipient{width:100%;box-sizing:border-box;padding:12px;border:1px solid #bfcee5;border-radius:8px;font:inherit;color:#10213d;background:white}#admin-report-mail-form p{margin:0}#admin-report-mail-form label{font-weight:700}

#admin-kind{font:inherit;padding:12px 38px 12px 16px;width:100%;min-width:0;box-sizing:border-box}

.admin-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 140px 260px}.admin-filter-actions{grid-column:3/5;grid-row:2;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.admin-filters.lookup .admin-filter-actions{grid-row:1}#admin-report-title{white-space:pre-line}
@media(min-width:761px) and (max-width:1000px){.admin-filters{grid-template-columns:1fr 1fr}.admin-filter-actions,.admin-filters.lookup .admin-filter-actions{grid-column:1/-1;grid-row:auto}}
@media(max-width:760px){.admin-filters{grid-template-columns:1fr}.admin-filter-actions,.admin-filters.lookup .admin-filter-actions{grid-column:1;grid-row:auto}.admin-filter-actions button{flex:1 1 auto}}

.admin-document-editor{width:min(950px,calc(100% - 32px));max-height:90vh;overflow:auto;border:1px solid #dce3ed;border-radius:14px;padding:24px;color:#15233a}.admin-document-editor::backdrop{background:#11233f99}.admin-document-editor>button{float:right}.admin-document-editor h2{margin:0 0 20px}.admin-document-editor p{line-height:1.6;font-size:14px}.admin-document-editor table{width:100%;border-collapse:collapse;margin:20px 0}.admin-document-editor th,.admin-document-editor td{padding:12px;border-bottom:1px solid #dce3ed;text-align:left}.admin-document-editor th{background:#11233f;color:#fff}.admin-document-editor input,.admin-document-editor textarea{font:inherit;color:#15233a;background:#fff;border:1px solid #c6d2e3;border-radius:8px;padding:10px;width:100%}.admin-document-editor input{min-width:140px}.admin-document-editor label{display:block;font-weight:600}.admin-document-editor textarea{display:block;margin-top:10px}.admin-editor-totals{white-space:pre-line;text-align:right;font-weight:700}

.admin-document-editor{width:min(1150px,calc(100% - 32px))}.admin-editor-scroll{overflow-x:auto}.admin-document-editor table{min-width:800px}.admin-document-editor td:first-child{min-width:270px}.admin-document-editor input{min-width:120px}.admin-document-editor td:nth-child(4) input{min-width:85px}.admin-editor-net{white-space:nowrap;font-weight:700}.admin-editor-standard{background:#eef1f5;padding:14px 18px;border:1px solid #dce3ed;border-radius:10px;font-weight:700}

.admin-editor-print{display:none}@media print{body.admin-page:has(.admin-document-editor[open])>*{display:none!important}body.admin-page:has(.admin-document-editor[open])>.admin-document-editor{display:block!important;position:static!important;width:100%!important;max-height:none!important;overflow:visible!important;border:0!important;margin:0!important;padding:0!important}.admin-document-editor[open]>*{display:none!important}.admin-document-editor[open]>.admin-editor-print{display:block!important}.admin-editor-print table{min-width:0!important;font-size:10px}.admin-editor-print th,.admin-editor-print td{padding:7px!important}.admin-editor-print td:first-child{min-width:0!important}.admin-editor-print p{white-space:pre-line}.admin-editor-print tr{break-inside:avoid}}

@media print{.admin-document-editor::backdrop{display:none}.admin-editor-print{print-color-adjust:exact;-webkit-print-color-adjust:exact}}

.admin-brand-access{margin-top:24px;padding-top:18px;border-top:1px solid #cad7e8}.admin-brand-access label{display:flex;align-items:center;gap:10px}.admin-brand-access input[type=checkbox]{width:18px;min-height:18px;margin:0}.admin-brand-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:10px;margin:18px 0}.admin-brand-grid[hidden]{display:none}.admin-brand-access button{margin-top:14px;padding:10px 18px}

/* Reserve the full logo width before laying out the five navigation actions. */
.admin-header{grid-template-columns:max-content minmax(0,1fr) auto}
.admin-header .admin-brand{min-width:max-content;flex-shrink:0}
.admin-header .admin-nav{min-width:0;max-width:100%;justify-content:flex-end;flex-wrap:wrap}
@media(max-width:760px){.admin-header{grid-template-columns:minmax(0,1fr) auto}.admin-header .admin-nav{grid-row:2;grid-column:1/-1;width:100%;justify-content:flex-start}.admin-header .admin-brand{min-width:0}}
