.admin-page { background:#f2f5f7; }
.admin-topbar { position:sticky; top:0; z-index:100; min-height:72px; padding:10px 24px; display:flex; align-items:center; gap:24px; background:#071d28; box-shadow:0 5px 20px rgba(4,24,34,.18); }
.top-brand { display:flex; align-items:center; gap:11px; color:#fff; text-decoration:none; white-space:nowrap; }
.top-brand > span { display:grid; place-items:center; width:45px; height:45px; border-radius:12px; color:#082732; background:#39c7c7; font-weight:900; }
.top-brand strong { font-size:18px; }.top-brand em { color:#38c7c3; font-style:normal; }
.top-menu { flex:1; }.top-menu > summary { display:none; }
.top-menu > nav { display:flex; align-items:center; justify-content:flex-end; gap:7px; }
.top-menu a,.top-menu summary,.top-logout { border:0; border-radius:9px; padding:10px 12px; color:#c8d9e1; background:transparent; text-decoration:none; font:inherit; font-weight:700; cursor:pointer; list-style:none; white-space:nowrap; }
.top-menu a:hover,.top-menu summary:hover,.top-menu .active { color:#fff; background:#123a48; box-shadow:inset 0 -3px #39c7c3; }
.top-menu .top-create { color:#fff; background:#118981; }.top-menu .top-create:hover { background:#0e756f; }
.nav-group { position:relative; }.nav-group > summary::-webkit-details-marker,.top-menu > summary::-webkit-details-marker { display:none; }
.nav-group > div { position:absolute; top:calc(100% + 10px); left:0; min-width:220px; padding:8px; border-radius:12px; background:#0b2935; box-shadow:0 15px 35px rgba(0,0,0,.25); }
.nav-group > div a { display:block; box-shadow:none!important; }.nav-group > div a:hover { background:#164451; }
.top-bell { position:relative; }.top-bell b { position:absolute; top:-3px; right:-3px; min-width:20px; height:20px; display:grid; place-items:center; border-radius:20px; padding:0 5px; color:#fff!important; background:#d52c2c; font-size:11px!important; line-height:20px; font-weight:900; }
.top-bell b[hidden] { display:none!important; }
.sidebar-bell b[hidden] { display:none!important; }
.sidebar-nav { scrollbar-width:thin; scrollbar-color:#28505e transparent; }
.mobile-label { padding:12px 10px 4px; color:#71818b; font-size:10px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
@media (max-width:780px) { .admin-mobilebar details > div { max-height:calc(100vh - 90px); overflow:auto; } }
.partner-tech { display:grid; grid-template-columns:minmax(180px,1fr) minmax(390px,1.5fr) auto; gap:14px; align-items:center; padding:15px; border-bottom:1px solid #e1e8ea; }.partner-tech small { display:block; color:#72808a; }.partner-tech form { display:flex; gap:9px; align-items:end; margin:0; }.partner-tech label { margin:0; }.request-row { display:flex; justify-content:space-between; gap:15px; padding:14px 4px; border-bottom:1px solid #e1e8ea; }.request-row span { display:block; color:#72808a; }
@media(max-width:850px){.partner-tech{grid-template-columns:1fr}.partner-tech form{flex-wrap:wrap}.request-row{align-items:flex-start}}
.top-bell span { margin-left:5px; }.top-logout { color:#c8d9e1; }
.admin-content.admin-content-wide { width:100%; max-width:none; margin:0; padding:34px clamp(18px,3vw,55px) 60px; }
.workload-panel { margin-bottom:22px; }.workload-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:12px; padding:0 24px 24px; }
.workload-card { min-height:116px; display:flex; flex-direction:column; align-items:center; justify-content:center; border:1px solid #dce7e9; border-radius:14px; color:#17252d; text-decoration:none; background:#edf8f7; transition:.15s ease; }
.workload-card:hover { transform:translateY(-2px); box-shadow:0 8px 22px rgba(13,78,84,.12); }.workload-card strong { color:#087f77; font-size:31px; }.workload-card span { font-weight:800; }.workload-card small { color:#73808a; }
.workload-card.load-medium { background:#fff8df; }.workload-card.load-medium strong { color:#a86d00; }.workload-card.load-high { background:#fff0ee; }.workload-card.load-high strong { color:#bd2c25; }
.workload-table-wrap { max-height:350px; margin:0 24px 24px; overflow:auto; border:1px solid #dfe7ea; border-radius:13px; }
.workload-table { width:100%; border-collapse:collapse; background:#fff; }.workload-table thead { position:sticky; top:0; z-index:2; }.workload-table th { padding:12px 16px; color:#687984; background:#f1f6f7; text-align:left; font-size:12px; text-transform:uppercase; letter-spacing:.04em; }.workload-table td { padding:10px 16px; border-top:1px solid #e4ebed; }.workload-table th:nth-child(2),.workload-table td:nth-child(2) { text-align:center; width:190px; }.workload-table th:nth-child(3),.workload-table td:nth-child(3) { width:135px; }.workload-table th:last-child,.workload-table td:last-child { width:125px; text-align:right; }
.workload-number { display:inline-grid; place-items:center; min-width:38px; height:32px; padding:0 8px; border-radius:10px; color:#087f77; background:#e4f6f4; font-weight:900; }.workload-number.load-medium { color:#956000; background:#fff1c2; }.workload-number.load-high { color:#b42620; background:#ffe0dc; }
.workload-state { display:inline-block; min-width:72px; padding:5px 9px; border-radius:20px; color:#087f77; background:#e4f6f4; text-align:center; font-size:12px; font-weight:800; }.workload-state.load-medium { color:#956000; background:#fff1c2; }.workload-state.load-high { color:#b42620; background:#ffe0dc; }.workload-open { padding:7px 10px!important; font-size:12px; }
.queue-title { display:flex; align-items:center; gap:12px; }.queue-title h2 { margin:0; }.queue-count { position:static!important; display:inline-grid; place-items:center; min-width:38px; height:38px; border-radius:12px; padding:0 9px; color:#087f77; background:#d9f4f1; font-size:18px; font-weight:900; }
.dispatch-columns,.dispatch-row { display:grid; grid-template-columns:minmax(125px,.75fr) minmax(250px,1.75fr) minmax(175px,1.05fr) minmax(130px,.85fr) minmax(210px,1.25fr) 105px; align-items:center; column-gap:16px; }
.dispatch-columns { padding:13px 24px; color:#71808a; background:#f5f8f9; border-top:1px solid #dfe7ea; border-bottom:1px solid #dfe7ea; font-size:12px; font-weight:850; text-transform:uppercase; letter-spacing:.04em; }
.dispatch-row { padding:0 24px; border-bottom:1px solid #e1e8ea; }.dispatch-main { display:contents!important; }.dispatch-main > div { padding:19px 0; min-width:0; }.dispatch-main span { display:block; color:#72808a; font-size:13px; }.dispatch-main strong { display:block; overflow-wrap:anywhere; }
.dispatch-row form { display:contents!important; }.dispatch-row form select { grid-column:5; width:100%; }.dispatch-row form button { grid-column:6; width:100%; padding-left:10px; padding-right:10px; }
.dispatch-number { color:#087f77; font-weight:900; overflow-wrap:anywhere; }.dispatch-date,.dispatch-source { color:#1c2931; }
@media (max-width:1150px) { .top-brand strong { display:none; }.top-bell span { display:none; }.top-menu a,.top-menu summary,.top-logout { padding:9px; }.dispatch-columns { display:none; }.dispatch-row { grid-template-columns:1fr 1fr; gap:10px; padding:18px; }.dispatch-main { display:grid!important; grid-column:1/-1; grid-template-columns:1fr 2fr 1fr 1fr; gap:12px; text-decoration:none; }.dispatch-main > div { padding:0; }.dispatch-row form { display:flex!important; grid-column:1/-1; gap:10px; }.dispatch-row form select,.dispatch-row form button { width:auto; }.dispatch-row form select { flex:1; } }
@media (max-width:760px) { .admin-topbar { min-height:62px; padding:8px 14px; justify-content:space-between; }.top-brand strong { display:block; font-size:15px; }.top-menu { flex:0; }.top-menu > summary { display:block; color:#fff; background:#123a48; }.top-menu > nav { display:none; position:absolute; left:12px; right:12px; top:62px; max-height:calc(100vh - 75px); overflow:auto; padding:12px; border-radius:0 0 14px 14px; background:#071d28; box-shadow:0 18px 30px rgba(0,0,0,.25); }.top-menu[open] > nav { display:grid; }.nav-group > div { position:static; margin-top:5px; box-shadow:none; }.top-menu a,.top-menu summary,.top-logout { width:100%; display:block; text-align:left; }.top-menu form { margin:0; }.admin-content.admin-content-wide { padding:22px 12px 45px; }.workload-table-wrap { margin:0 12px 16px; max-height:320px; }.workload-table th:nth-child(3),.workload-table td:nth-child(3) { display:none; }.workload-table th,.workload-table td { padding:9px 10px; }.workload-table th:nth-child(2),.workload-table td:nth-child(2) { width:auto; }.dispatch-row { display:block; }.dispatch-main { grid-template-columns:1fr 1fr!important; }.dispatch-customer { grid-column:1/-1; }.dispatch-row form { margin-top:15px; }.dashboard-head { align-items:flex-start; }.dashboard-head .button { white-space:nowrap; } }
.postcode-panel { margin-bottom:22px; }
.trade-create form { display:grid; grid-template-columns:minmax(260px,1fr) auto; gap:16px; align-items:end; padding:0 24px 24px; }.trade-create label { margin:0; }.trade-table th,.trade-table td { vertical-align:middle; }.trade-table form { display:flex; align-items:center; gap:8px; margin:0; }.trade-table input { min-width:180px; }.trade-table .button { min-width:116px; }
.finance-summary { display:grid; grid-template-columns:repeat(4,minmax(170px,1fr)); gap:14px; margin-bottom:22px; }.finance-summary .panel { margin:0; padding:20px; }.finance-summary small { display:block; color:#72808a; }.finance-summary strong { display:block; margin-top:7px; font-size:25px; }.finance-summary .balance-positive { border-left:5px solid #118981; }.finance-summary .balance-negative { border-left:5px solid #c62a20; }
.finance-entry-form { display:grid; grid-template-columns:150px 220px 160px minmax(240px,1fr) auto; gap:12px; align-items:end; padding:0 24px 24px; }.finance-entry-form label { margin:0; }
@media(max-width:1000px){.finance-summary{grid-template-columns:1fr 1fr}.finance-entry-form{grid-template-columns:1fr 1fr}.finance-entry-form .finance-note{grid-column:1/-1}.trade-table{min-width:1000px}}
@media(max-width:620px){.finance-summary{grid-template-columns:1fr}.finance-entry-form,.trade-create form{grid-template-columns:1fr}.finance-entry-form .finance-note{grid-column:auto}}
.selected-tech-actions { display:flex; gap:10px; align-items:center; flex-wrap:wrap; }.selected-tech-actions form { margin:0; }
.customer-history{border:2px solid #d89a00;background:#fff7d6;border-radius:14px;padding:16px}
.customer-history h3{margin:0 0 12px;color:#704d00}
.customer-history .history-order{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(280px,2fr) auto;gap:12px;align-items:center;padding:11px 0;border-top:1px solid #ead9a2;color:#17343f;text-decoration:none}
.customer-history .history-order:first-of-type{border-top:0}
.customer-history .history-order b{justify-self:end}
@media(max-width:760px){.customer-history .history-order{grid-template-columns:1fr}.customer-history .history-order b{justify-self:start}}
.partner-tech-expanded{display:grid;grid-template-columns:minmax(0,1fr);gap:0;align-items:stretch;margin:0 0 18px;padding:0;border:1px solid #dce5e8;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(15,47,57,.07);overflow:hidden}
.partner-tech-expanded>header{display:flex;justify-content:space-between;align-items:center;padding:20px 22px;background:linear-gradient(110deg,#f1faf9,#f8fbfc);border-bottom:1px solid #dce7e9}
.partner-tech-expanded>header strong{font-size:19px;color:#132b34}
.partner-tech-expanded>header small{display:block;margin-top:4px;color:#70828a}
.settings-list .partner-tech-expanded form{width:100%;margin:0;padding:20px 22px;border:0;border-bottom:1px solid #e4ebed}
.settings-list .partner-tech-expanded label{display:block;margin:0;border:0;border-radius:0;background:transparent;overflow:visible;color:#344954;font-weight:750}
.settings-list .partner-tech-expanded input:not([type="checkbox"]){width:100%;margin-top:7px;padding:11px 12px;border:1px solid #cbd7dc;border-radius:9px;background:#fff;text-align:left;font-weight:400}
.partner-tech-expanded .partner-profile-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.partner-tech-expanded .partner-profile-form .wide{grid-column:1/-1}
.trade-checks{border:1px solid #d6e0e5;border-radius:12px;padding:14px;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}
.trade-checks legend{font-weight:800;padding:0 7px;color:#344954}
.settings-list .partner-tech-expanded .trade-checks label{display:flex;align-items:center;gap:9px;width:auto;min-width:0;margin:0;padding:10px 12px;border:1px solid #dbe5e8;border-radius:9px;background:#f8fbfb;font-weight:700}
.trade-checks label input[type="checkbox"]{flex:0 0 auto;width:18px;height:18px;margin:0;padding:0;border-radius:4px;accent-color:var(--brand)}
.partner-tech-expanded .form-actions{display:flex;justify-content:flex-end}
.partner-tech-expanded .partner-percent-form{display:grid;grid-template-columns:minmax(170px,1fr) minmax(170px,1fr) auto;gap:14px;align-items:end;background:#fbfcfc}
.partner-tech-expanded .partner-password-form{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:14px;align-items:end;background:#fbfcfc}
.partner-tech-expanded .partner-status-form{display:flex;justify-content:flex-end;padding-top:16px;padding-bottom:16px;border-bottom:0}
@media(max-width:760px){.partner-tech-expanded .partner-profile-form,.partner-tech-expanded .partner-percent-form,.partner-tech-expanded .partner-password-form{grid-template-columns:1fr}.partner-tech-expanded .partner-profile-form .wide{grid-column:auto}.trade-checks{grid-template-columns:repeat(2,minmax(0,1fr))}.partner-tech-expanded .button{width:100%}}
@media(max-width:480px){.trade-checks{grid-template-columns:1fr}.partner-tech-expanded>header,.settings-list .partner-tech-expanded form{padding-left:15px;padding-right:15px}}
