/* Garage Booking UK navigation v3.3: deliberately scoped to plugin components. */
.gbu-nav-admin{margin:16px 20px 18px 2px;max-width:1480px;background:var(--gbu-surface,#fff);border:1px solid #e2e8f0;border-radius:16px;padding:12px 14px;box-shadow:0 2px 12px rgba(15,23,42,.04)}
.gbu-nav-primary,.gbu-nav-secondary{display:flex;gap:5px;align-items:center;overflow-x:auto;scrollbar-width:thin;-webkit-overflow-scrolling:touch;padding:3px 0}
.gbu-nav-primary{border-bottom:1px solid #e5e7eb;padding-bottom:11px;margin-bottom:9px}
.gbu-nav-item,.gbu-nav-subitem{text-decoration:none;display:inline-flex;white-space:nowrap;align-items:center;font-weight:550;padding:9px 13px;border-radius:10px;color:var(--gbu-text,#334155);transition:background .1s,color .1s}
.gbu-nav-item:hover,.gbu-nav-subitem:hover{background:#f1f5f9;color:#0f172a}
.gbu-nav-item.is-active{background:#1e293b;color:#fff}.gbu-nav-subitem.is-active{background:#e7efff;color:#1748a0}
.gbu-nav-admin a:focus-visible,.gbu-portal-tab:focus-visible,.gbu-diary-date:focus-visible{outline:3px solid #2563eb;outline-offset:2px}
.gbu-portal-shell{--gbu-accent:var(--wp--preset--color--primary,#1d4ed8);--gbu-tx:#1e293b;--gbu-line:#e2e8f0;color:var(--gbu-tx);max-width:1250px;margin:1.25rem auto}
.gbu-portal-tabs{display:flex;gap:5px;overflow-x:auto;padding:6px 4px 12px;scrollbar-width:thin;-webkit-overflow-scrolling:touch;border-bottom:1px solid var(--gbu-line)}
.gbu-portal-tab{white-space:nowrap;text-decoration:none!important;display:inline-block;padding:12px 18px;border-radius:12px;color:#475569!important;font-weight:650;font-size:14px;background:transparent;border:1px solid transparent;transition:background .12s}
.gbu-portal-tab:hover{background:#f1f5f9;color:var(--gbu-text,#1e293b)!important}
.gbu-portal-tab.is-active{background:var(--gbu-accent);color:#fff!important;box-shadow:0 2px 6px rgba(30,64,175,.16)}
.gbu-portal-content{padding-top:14px;min-height:180px}
.gbu-portal-shell .gbu-panel{max-width:none;margin:4px 0 18px;box-sizing:border-box}
.gbu-tab-hint{font-size:14px;color:#475569}
.gbu-staff-diary{border:1px solid var(--gbu-line);border-radius:16px;background:var(--gbu-surface,#fff);padding:18px}
.gbu-staff-diary-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.gbu-staff-diary-head h2{margin:0}.gbu-staff-diary-head nav{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.gbu-diary-date{color:#1d4ed8;text-decoration:none;font-weight:600}
.gbu-staff-diary-list{display:grid;gap:10px;margin-top:16px}
.gbu-staff-diary-job{border:1px solid #e2e8f0;border-radius:12px;padding:13px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.gbu-staff-diary-job small{display:block;color:#64748b;margin-top:5px}.gbu-diary-reg{font-size:18px;letter-spacing:.04em}.gbu-staff-diary-job a{font-weight:600;white-space:nowrap}
@media(max-width:782px){.gbu-nav-admin{margin:12px 8px 14px 0}.gbu-nav-item,.gbu-nav-subitem{padding:11px 12px}.gbu-portal-tab{padding:12px 14px}.gbu-staff-diary-head{display:block}.gbu-staff-diary-head nav{margin:12px 0}.gbu-staff-diary-job{align-items:flex-start}.gbu-diary-reg{font-size:16px}}

.gbu-portal-shell{background:var(--gbu-surface-alt,#f8fafc);padding:18px;border-radius:22px;border:1px solid #e2e8f0;box-shadow:0 14px 34px rgba(15,23,42,.04)}
.gbu-portal-content>.gbu-panel{border-radius:20px;border-color:#dce4ef;box-shadow:0 12px 30px rgba(15,23,42,.05);background:var(--gbu-surface,#fff)}
.gbu-portal-content h2,.gbu-portal-content h3{color:var(--gbu-text,#1e293b)}
.gbu-portal-content p,.gbu-portal-content small,.gbu-portal-content .gbu-muted{color:var(--gbu-muted,#64748b)}
.gbu-portal-tab.is-active{background:var(--gbu-accent,#1d4ed8)}
.gbu-staff-diary{background:var(--gbu-surface,#fff)}
.gbu-staff-diary-job{background:var(--gbu-surface-alt,#f8fafc)}
.gbu-staff-diary-job a{display:inline-flex;align-items:center;padding:10px 14px;border-radius:10px;background:var(--gbu-staff-accent,#0f766e);color:#fff;text-decoration:none}
.gbu-staff-diary-job a:hover{opacity:.92}
.gbu-diary-reg{font-size:18px;letter-spacing:.04em}
