/* Driver access and garage: responsive, keyboard-friendly and independent of JS. */
.gc-account { --gc-account-line:rgba(255,255,255,.12); padding-bottom:90px; }
.gc-account-layout { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(360px,.85fr); align-items:start; gap:clamp(28px,6vw,96px); max-width:1160px; margin:24px auto; }
.gc-account-pitch { padding:30px 0; }
.gc-account-pitch .gc-page__title { font-size:clamp(42px,5.1vw,74px); line-height:1.02; max-width:11ch; letter-spacing:-.055em; margin:20px 0; }
.gc-account-pitch .gc-page__lede { max-width:40ch; }
.gc-account-track { display:flex; justify-content:space-between; position:relative; max-width:410px; margin:42px 0 25px; }
.gc-account-track::before { content:""; position:absolute; height:2px; left:0; right:0; top:50%; background:linear-gradient(90deg,var(--gc-lime,#c8ff29),rgba(200,255,41,.08)); }
.gc-account-track span { z-index:1; background:var(--gc-bg,#101010); color:var(--gc-lime,#c8ff29); border:1px solid var(--gc-account-line); padding:10px 14px; font-family:monospace; font-weight:700; font-size:17px; transform:skew(-8deg); }
.gc-account-benefits { list-style:none; padding:0; margin:0; display:grid; gap:23px; }
.gc-account-benefits li { display:grid; gap:4px; }
.gc-account-benefits strong { color:var(--gc-text,#fff); font-size:17px; }
.gc-account-benefits span,.gc-account-help { color:var(--gc-muted,#b2b2b2); font-size:14px; line-height:1.65; overflow-wrap:anywhere; }
.gc-account-panel { border-top:3px solid var(--gc-lime,#c8ff29); padding:clamp(22px,3vw,38px); background:linear-gradient(155deg,#202121,#151616); box-shadow:0 24px 80px #0004; }
.gc-account-tabs { display:flex; gap:24px; border-bottom:1px solid var(--gc-account-line); margin-bottom:28px; }
.gc-account-tabs a { padding:0 0 15px; font-size:14px; color:var(--gc-muted,#b2b2b2); font-weight:700; border-bottom:3px solid transparent; margin-bottom:-1px; }
.gc-account-tabs a.is-active { color:var(--gc-lime,#c8ff29); border-color:var(--gc-lime,#c8ff29); }
.gc-account-panel h2 { font-size:27px; line-height:1.1; letter-spacing:-.035em; margin:0 0 8px; }
.gc-account-form { display:grid; gap:20px; margin-top:25px; }
.gc-account-form .gc-field { min-width:0; display:grid; gap:8px; }
.gc-account-form .gc-input,.gc-account-form .gc-textarea { width:100%; min-width:0; }
.gc-account-form>.gc-btn { width:100%; justify-content:center; min-height:50px; }
.gc-account-form .gc-account-help { margin:0; }
.gc-account-between,.gc-account-actions { display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
.gc-account-between { justify-content:space-between; font-size:13px; }
.gc-account-check { display:inline-flex; gap:7px; align-items:center; }
.gc-account-check input,.gc-account-photo input { accent-color:var(--gc-lime,#c8ff29); min-width:16px; min-height:16px; }
.gc-account a:not(.gc-btn):hover { color:var(--gc-lime,#c8ff29); }
.gc-account :is(a,button,input,textarea):focus-visible { outline:2px solid var(--gc-lime,#c8ff29); outline-offset:4px; }
.gc-account-notice { border:1px solid var(--gc-lime,#c8ff29); border-left:4px solid var(--gc-lime,#c8ff29); color:#f0f1eb; background:#1b2319; margin-bottom:28px; padding:16px 20px; line-height:1.6; }
.gc-account-header { gap:24px; align-items:center; }
.gc-account-header .gc-page__lede { margin-top:12px; }
.gc-account-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; border:1px solid var(--gc-account-line); background:var(--gc-account-line); margin:30px 0 44px; }
.gc-account-stats>div { padding:24px 28px; background:#171818; display:grid; gap:12px; }
.gc-account-stats strong { font-family:var(--gc-font-display,inherit); font-size:clamp(30px,4vw,46px); line-height:1; font-weight:900; letter-spacing:-.04em; }
.gc-account-stats>div:last-child strong { color:var(--gc-lime,#c8ff29); }
.gc-account-dashboard { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr); gap:34px; align-items:start; }
.gc-account-sectionhead { display:flex; justify-content:space-between; gap:12px; align-items:center; margin-bottom:22px; }
.gc-account-sectionhead h2 { font-size:25px; letter-spacing:-.03em; margin:0; }
.gc-account-sectionhead a { font-size:13px; color:var(--gc-muted,#b2b2b2); }
.gc-account-empty { display:grid; gap:17px; padding:26px; }
.gc-account-empty .gc-chequer-strip { height:8px; width:96px; margin-bottom:10px; }
.gc-account-empty h3,.gc-account-empty p { margin:0; }
.gc-account-empty h3 { font-size:24px; letter-spacing:-.025em; }
.gc-account-empty p { color:var(--gc-muted,#b2b2b2); line-height:1.6; }
.gc-account-empty .gc-btn { justify-self:start; margin-top:8px; }
.gc-account-listings { display:grid; gap:18px; }
.gc-account-car { display:grid; grid-template-columns:180px minmax(0,1fr); overflow:hidden; padding:0; }
.gc-account-car-image { background:#212322; min-height:190px; }
.gc-account-car-image img { width:100%; height:100%; object-fit:cover; display:block; }
.gc-account-placeholder { min-height:190px; height:100%; display:grid; place-items:center; font-size:40px; font-weight:900; font-style:italic; letter-spacing:-.06em; color:#454844; background:repeating-linear-gradient(-45deg,#1b1d1b 0px,#1b1d1b 16px,#202220 16px,#202220 18px); }
.gc-account-car-body { padding:22px; min-width:0; }
.gc-account-car h3 { margin:14px 0 9px; font-size:20px; line-height:1.25; letter-spacing:-.025em; overflow-wrap:anywhere; }
.gc-account-car-price { display:block; font-size:25px; letter-spacing:-.035em; }
.gc-account-car .gc-account-help { margin:7px 0 17px; }
.gc-account-car .gc-btn { min-height:37px; font-size:12px; padding:9px 13px; }
.gc-account-status { display:inline-block; color:#ced1cd; font-size:10px; line-height:1.3; font-family:monospace; padding:6px 8px; border:1px solid var(--gc-account-line); text-transform:uppercase; letter-spacing:.035em; }
.gc-account-status--publish { color:var(--gc-lime,#c8ff29); background:#c8ff290b; border-color:#c8ff2940; }
.gc-account-status--pending { color:#ffd37b; background:#ffd37b0b; border-color:#ffd37b40; }
.gc-account-status-actions { display:flex; flex-wrap:wrap; gap:14px; margin-top:18px; }
.gc-account-status-actions button { border:0; border-bottom:1px solid #ffffff30; background:transparent; padding:3px 0; font:inherit; font-size:12px; color:var(--gc-muted,#b2b2b2); cursor:pointer; min-height:28px; }
.gc-account-status-actions button:hover { color:#fff; border-color:#fff; }
.gc-account-inbox>.gc-account-help { margin:-9px 0 22px; }
.gc-account-message { padding:22px; margin-bottom:16px; }
.gc-account-message h3 { margin:11px 0 4px; font-size:18px; }
.gc-account-message .gc-account-help { margin:0; }
.gc-account-message-content { margin:18px 0 20px; font-size:14px; line-height:1.7; overflow-wrap:anywhere; }
.gc-account-message .gc-btn { font-size:12px; }
.gc-account-settings { border-top:1px solid var(--gc-account-line); margin-top:28px; padding-top:24px; }
.gc-account-settings a { font-size:13px; }
.gc-account-pagination { display:flex; gap:8px; flex-wrap:wrap; margin:22px 0; }
.gc-account-pagination .page-numbers { padding:9px 13px; border:1px solid var(--gc-account-line); }
.gc-account-pagination .current { color:#111; background:var(--gc-lime,#c8ff29); border-color:var(--gc-lime,#c8ff29); }
.gc-account-editor { max-width:1000px; margin:28px auto; padding:clamp(22px,4vw,42px); }
.gc-account-back { display:block; color:var(--gc-muted,#b2b2b2); font-size:13px; margin-bottom:30px; }
.gc-account-editor h2 { font-size:32px; letter-spacing:-.035em; margin:12px 0; }
.gc-account-fieldgrid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px 18px; }
.gc-account-photos { padding:0; border:0; margin:6px 0; min-width:0; }
.gc-account-photos legend { padding:0; margin-bottom:15px; }
.gc-account-photo-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px; margin-bottom:22px; }
.gc-account-photo { display:grid; gap:10px; font-size:12px; }
.gc-account-photo img { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; }
.gc-account-photo span { display:flex; align-items:center; gap:6px; }
.gc-account .gc-input[type=file] { padding:12px; font-size:13px; }
.gc-account .gc-input[type=file]::file-selector-button { background:#30332e; color:#f4f5f0; border:1px solid #565950; padding:8px 12px; margin-right:12px; cursor:pointer; }
/* Native WordPress recovery keeps its original secure key handling and form actions. */
body.login { background:#101211; color:#f2f4ee; font-family:Arial,sans-serif; }
body.login::before { content:""; display:block; height:7px; background:repeating-linear-gradient(90deg,#c8ff29 0 15px,#131813 15px 30px); }
.login #login { width:min(380px,calc(100% - 40px)); padding-top:7vh; }
.login h1 a { color:#f2f4ee; font-family:Arial,sans-serif; font-size:42px; font-weight:900; font-style:italic; letter-spacing:-2.5px; text-indent:0; width:auto; height:auto; background:none; margin:0 0 35px; line-height:1.4; }
.login h1 a::after { content:"."; color:#c8ff29; }
.login form { background:#1a1d1a; border:1px solid #343a32; border-top:3px solid #c8ff29; box-shadow:0 15px 65px #0005; padding:28px; }
.login label { color:#daddd6; font-size:13px; }
.login input[type=text],.login input[type=password] { background:#101410; color:#f6f8f1; border-color:#4b5347; border-radius:3px; font-size:18px; min-height:45px; }
.login .button-primary { background:#c8ff29; color:#101410; border-color:#c8ff29; border-radius:3px; font-weight:700; padding:4px 18px; }
.login .button-primary:hover,.login .button-primary:focus { background:#dafc89; color:#101410; border-color:#dafc89; }
.login .button.wp-hide-pw { color:#c8ff29; }
.login #nav a,.login #backtoblog a,.login .privacy-policy-link { color:#c8cebf; }
.login #nav a:hover,.login #backtoblog a:hover { color:#c8ff29; }
.login .message,.login .notice,.login #login_error { color:#e1e7d9; background:#222a1e; border-left-color:#c8ff29; }
.login #login_error { border-left-color:#ff755f; }
.login .message a,.login .notice a,.login #login_error a { color:#d0ff76; }
.login #pass-strength-result { color:#1b2017; }
.login :is(a,button,input):focus-visible { outline:2px solid #c8ff29; outline-offset:3px; }
@media(max-width:1000px) { .gc-account-dashboard { grid-template-columns:minmax(0,1fr) 300px; gap:22px; } .gc-account-car { grid-template-columns:1fr; } .gc-account-car-image { min-height:0; aspect-ratio:16/9; } }
@media(max-width:800px) { .gc-account-layout { grid-template-columns:1fr; gap:24px; max-width:560px; } .gc-account-pitch { padding-top:0; } .gc-account-pitch .gc-page__title { max-width:14ch; font-size:clamp(40px,8vw,62px); } .gc-account-benefits { grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; } .gc-account-benefits strong { font-size:14px; } .gc-account-benefits span { font-size:12px; } .gc-account-track { max-width:100%; margin-top:26px; } .gc-account-dashboard { grid-template-columns:1fr; } .gc-account-inbox { margin-top:20px; } .gc-account-car { grid-template-columns:200px minmax(0,1fr); } .gc-account-car-image { aspect-ratio:auto; } .gc-account-fieldgrid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:520px) { .gc-account-stats>div { padding:17px 12px; } .gc-account-stats .gc-label { font-size:9px; line-height:1.6; } .gc-account-stats { margin:24px 0 30px; } .gc-account-header { display:block; } .gc-account-header>.gc-account-actions { margin-top:20px; } .gc-account-car { grid-template-columns:1fr; } .gc-account-car-image { aspect-ratio:16/9; } .gc-account-fieldgrid { grid-template-columns:1fr; } .gc-account-photo-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .gc-account-between { gap:12px; } .gc-account-sectionhead { align-items:start; } .gc-account-sectionhead h2 { font-size:23px; } .gc-account-benefits { grid-template-columns:1fr; gap:15px; } .gc-account-benefits strong { font-size:16px; } .gc-account-benefits span { font-size:13px; } }
