.vtc-directory-main { min-height:calc(100vh - var(--header-height,82px)); padding:30px; background:radial-gradient(circle at 72% 12%,rgba(22,116,183,.11),transparent 27%),linear-gradient(145deg,#020a12,#061829); }.vtc-directory-shell,.vtc-create-shell { display:grid; gap:18px; max-width:1600px; }.vtc-directory-heading { border-bottom:1px solid rgba(55,119,163,.43); padding-bottom:16px; }.vtc-directory-heading > span { color:#38bdf8; font-size:.7rem; font-weight:900; letter-spacing:.14em; }.vtc-directory-heading h1 { color:#f7fbff; font-size:2rem; margin:5px 0; }.vtc-directory-heading p { color:#9eb8cd; margin:0; }.vtc-directory-panel,.vtc-create-card { border:1px solid rgba(40,128,191,.58); border-radius:12px; background:linear-gradient(160deg,rgba(7,28,46,.98),rgba(3,15,26,.98)); box-shadow:0 16px 40px rgba(0,0,0,.16); }.vtc-directory-controls { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:16px; border-bottom:1px solid rgba(59,113,150,.38); }.vtc-directory-search { display:flex; flex:1; max-width:460px; align-items:center; gap:10px; border:1px solid #246d9d; border-radius:6px; background:#04131f; color:#4fc3ff; padding:0 12px; }.vtc-directory-search input { width:100%; border:0; outline:0; background:transparent; color:#e6f4ff; font:inherit; padding:11px 0; }.vtc-directory-period { display:flex; gap:7px; }.vtc-directory-period button { border:1px solid rgba(51,127,181,.58); border-radius:5px; background:#061827; color:#acc7d9; cursor:pointer; font-size:.72rem; font-weight:900; padding:10px 13px; }.vtc-directory-period button.active { border-color:#f4b400; background:rgba(231,168,0,.14); color:#ffd05a; }.vtc-directory-table-wrap { overflow-x:auto; padding:6px 16px 16px; }.vtc-directory-table-wrap table { border-collapse:collapse; color:#d6e6f1; font-size:.79rem; min-width:930px; width:100%; }.vtc-directory-table-wrap th,.vtc-directory-table-wrap td { border-bottom:1px solid rgba(58,112,150,.3); padding:12px 9px; text-align:left; }.vtc-directory-table-wrap th { color:#91aec4; font-size:.64rem; letter-spacing:.04em; text-transform:uppercase; }.vtc-directory-table-wrap th button { border:0; background:transparent; color:inherit; cursor:pointer; font:inherit; padding:0; text-transform:inherit; }.vtc-directory-table-wrap th button:hover { color:#55c7ff; }.vtc-directory-table-wrap tbody tr:hover { background:rgba(31,119,179,.08); }.vtc-directory-company { display:flex; align-items:center; gap:10px; color:#f3f8fc; font-weight:900; text-decoration:none; }.vtc-directory-company span { display:grid; gap:2px; }.vtc-directory-company small { color:#54c6ff; font-size:.66rem; }.vtc-directory-logo { display:grid; width:34px; height:34px; place-items:center; overflow:hidden; border:1px solid rgba(243,180,0,.7); border-radius:50%; background:#07131d; color:#f7b900; object-fit:cover; }.vtc-directory-logo.fallback { font-size:1rem; }.vtc-directory-recruiting { border:1px solid rgba(92,190,111,.48); border-radius:12px; background:rgba(25,132,57,.16); color:#69e783; font-size:.64rem; font-weight:900; padding:4px 7px; }.vtc-directory-recruiting.closed { border-color:rgba(239,102,102,.48); background:rgba(170,36,36,.16); color:#ffaaa8; }.vtc-directory-recruiting.invite-only { border-color:rgba(65,174,233,.48); background:rgba(32,105,170,.16); color:#72cfff; }
.vtc-create-card { overflow:hidden; }.vtc-create-note { display:flex; gap:13px; align-items:flex-start; border-bottom:1px solid rgba(59,113,150,.38); background:rgba(10,43,65,.48); padding:17px 20px; }.vtc-create-note > i { color:#57c8ff; font-size:1.35rem; }.vtc-create-note div { display:grid; gap:4px; }.vtc-create-note strong { color:#f3f8fb; }.vtc-create-note span { color:#9eb8cd; font-size:.77rem; }.vtc-create-card form { padding:22px; }.vtc-create-grid { display:grid; grid-template-columns:1.2fr .55fr; gap:16px; }.vtc-create-grid label { display:grid; gap:7px; color:#b8d0e1; font-size:.7rem; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }.vtc-create-grid label.wide { grid-column:1 / -1; }.vtc-create-grid input,.vtc-create-grid textarea { box-sizing:border-box; width:100%; border:1px solid #255f87; border-radius:6px; background:#04121e; color:#eff8ff; font:inherit; font-size:.9rem; font-weight:400; letter-spacing:normal; padding:11px; text-transform:none; }.vtc-create-grid textarea { line-height:1.45; resize:vertical; }.vtc-create-actions { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:22px; }.vtc-create-actions a { color:#66cbff; font-size:.78rem; font-weight:900; text-decoration:none; }.vtc-create-actions button { border:1px solid #e5a900; border-radius:6px; background:#f4b400; color:#171107; cursor:pointer; font-size:.8rem; font-weight:900; padding:11px 16px; }.vtc-create-actions button:disabled { cursor:wait; opacity:.7; }.vtc-create-feedback { min-height:1.2em; color:#7de59a; font-size:.8rem; font-weight:800; margin:14px 0 0; }.vtc-create-feedback.is-error { color:#ffaaa8; }
.vtc-ranking-heading { display:flex; align-items:end; justify-content:space-between; gap:18px; }.vtc-ranking-heading > a { border:1px solid #277fb7; border-radius:5px; color:#72d0ff; font-size:.75rem; font-weight:900; padding:10px 12px; text-decoration:none; }.vtc-ranking-period { justify-content:flex-start; }.vtc-podium { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:end; gap:13px; }.vtc-podium-card { display:grid; min-height:172px; justify-items:center; align-content:center; gap:7px; border:1px solid rgba(50,124,179,.55); border-radius:10px; background:linear-gradient(180deg,#082036,#04111d); color:#f2f7fb; padding:16px; text-align:center; text-decoration:none; }.vtc-podium-card.place-1 { min-height:205px; border-color:rgba(244,180,0,.78); box-shadow:0 0 36px rgba(244,180,0,.1); }.vtc-podium-card.place-2 { border-color:rgba(163,201,230,.64); }.vtc-podium-card.place-3 { border-color:rgba(211,133,70,.7); }.vtc-podium-card.empty { opacity:.62; }.vtc-podium-place { color:#ffd05a; font-size:1.25rem; font-weight:900; }.vtc-podium-logo { display:grid; width:68px; height:68px; place-items:center; overflow:hidden; border:2px solid currentColor; border-radius:50%; color:#ffbd18; font-size:1.7rem; }.vtc-podium-logo img { width:100%; height:100%; object-fit:cover; }.vtc-podium-card strong { color:#fff; }.vtc-podium-card small { color:#91b6d0; font-size:.72rem; }
.vtc-company-rankings-main { background:radial-gradient(circle at 47% 38%,rgba(255,184,0,.055),transparent 25%),radial-gradient(circle at 79% 17%,rgba(49,156,255,.06),transparent 28%),linear-gradient(145deg,#020a12,#020c15); }.vtc-company-rankings-shell { gap:14px; max-width:none; }.vtc-ranking-toolbar { margin-bottom:0; }.vtc-ranking-toolbar-note { display:flex; align-items:center; gap:8px; color:#9fcaf0; font-size:.72rem; font-weight:700; }.vtc-ranking-toolbar-note i { color:#36de73; }
@media (max-width:800px) { .vtc-directory-main { padding:18px; }.vtc-directory-controls,.vtc-ranking-heading { align-items:stretch; flex-direction:column; }.vtc-directory-search { max-width:none; }.vtc-create-grid { grid-template-columns:1fr; }.vtc-create-grid label.wide { grid-column:auto; }.vtc-podium { gap:8px; }.vtc-podium-card,.vtc-podium-card.place-1 { min-height:145px; padding:10px; }.vtc-podium-logo { height:50px; width:50px; }.vtc-podium-card strong { font-size:.78rem; } }

/* Internal VTC member-ranking page compatibility. */
.vtc-directory-back { color:#7dd3fc; font-size:.78rem; font-weight:800; text-decoration:none; }
.vtc-directory-panel-heading { align-items:center; border-bottom:1px solid rgba(59,113,150,.38); display:flex; justify-content:space-between; padding:16px 18px; }
.vtc-directory-panel-heading h2 { color:#f3f8fb; font-size:1rem; margin:0; }
.vtc-directory-panel-heading span { color:#6ee7b7; font-size:.72rem; font-weight:800; }
.vtc-directory-name { color:#f1f8ff; font-weight:900; }
.vtc-directory-role { border-radius:12px; background:rgba(46,122,186,.2); color:#7ecbff; font-size:.66rem; font-weight:900; padding:4px 7px; text-transform:capitalize; }
.vtc-directory-status { color:#91aabd; font-size:.72rem; font-weight:800; }
.vtc-directory-status.is-online { color:#70e590; }
.vtc-directory-profile { border:1px solid #277fb7; border-radius:4px; color:#72d0ff; font-size:.68rem; font-weight:900; padding:5px 7px; text-decoration:none; white-space:nowrap; }
.driver-directory-vtc { color:#edf7ff; font-weight:800; }.driver-directory-vtc small { color:#57c9ff; font-size:.68rem; }

/* Internal VTC rankings page. */
.vtc-rankings-main { background:radial-gradient(circle at 72% 12%,rgba(22,116,183,.1),transparent 27%),var(--page-bg); }
.vtc-rankings-shell { gap:14px; }
.vtc-rankings-back { display:inline-flex; align-items:center; justify-self:start; gap:7px; border:1px solid rgba(65,154,211,.6); border-radius:999px; background:rgba(4,18,29,.74); box-shadow:inset 0 1px rgba(255,255,255,.035); color:#8ecfff; font-size:.7rem; padding:8px 13px 8px 10px; transition:border-color .18s ease,background .18s ease,transform .18s ease; }
.vtc-rankings-back i { display:grid; width:21px; height:21px; place-items:center; border-radius:50%; background:rgba(46,164,229,.17); color:#65c9ff; font-size:.6rem; }
.vtc-rankings-back strong { color:#f0f7fb; font-size:.72rem; }
.vtc-rankings-back:hover { border-color:#f4b71d; background:rgba(47,37,10,.54); color:#ffd56d; transform:translateX(-2px); }
.vtc-rankings-back:hover i { background:rgba(244,183,29,.18); color:#ffc32a; }
.vtc-rankings-heading { position:relative; display:grid; grid-template-columns:72px minmax(0,1fr) auto; align-items:center; gap:17px; overflow:hidden; min-height:126px; border:1px solid rgba(50,136,191,.58); border-radius:12px; background:radial-gradient(circle at 86% 12%,rgba(26,126,188,.15),transparent 26%),rgba(3,11,20,.72); padding:19px 22px; }
.vtc-rankings-heading::after { content:""; position:absolute; inset:0; opacity:.27; pointer-events:none; background:repeating-linear-gradient(125deg,transparent 0 38px,rgba(67,166,225,.09) 39px 40px); }
.vtc-rankings-heading > * { position:relative; z-index:1; }
.vtc-rankings-heading-icon { display:grid; width:64px; height:64px; place-items:center; border:2px solid #f4b71d; border-radius:15px; background:radial-gradient(circle at 32% 20%,#1c6c9d,#071827 62%); box-shadow:0 0 0 4px rgba(244,183,29,.08); color:#f7c12b; font-size:1.55rem; }
.vtc-rankings-heading > div:nth-child(2) > span { color:#ffc32a; font-size:.67rem; letter-spacing:.14em; }
.vtc-rankings-heading h1 { margin:5px 0 6px; color:#f3f7fa; font-size:clamp(1.55rem,2.5vw,2.25rem); letter-spacing:-.03em; }
.vtc-rankings-heading p { color:#aac4d6; font-size:.8rem; }
.vtc-rankings-heading-note { display:flex; align-items:center; gap:9px; border:1px solid rgba(66,199,122,.46); border-radius:9px; background:rgba(4,27,20,.56); color:#79e29a; font-size:.64rem; line-height:1.45; padding:10px 12px; }
.vtc-rankings-heading-note i { font-size:1.2rem; }.vtc-rankings-heading-note strong { color:#d6f9e1; font-size:.7rem; }
.vtc-rankings-panel { overflow:hidden; border-color:rgba(53,130,184,.54); background:rgba(3,9,18,.74); box-shadow:none; }
.vtc-rankings-panel .vtc-directory-panel-heading { border-bottom-color:rgba(65,136,181,.3); background:rgba(4,15,25,.28); }
.vtc-rankings-panel .vtc-directory-table-wrap { background:transparent; }
.vtc-rankings-panel .vtc-directory-table-wrap tbody tr:hover { background:rgba(31,119,179,.1); }
@media (max-width:800px) { .vtc-rankings-heading { grid-template-columns:58px minmax(0,1fr); padding:17px; }.vtc-rankings-heading-icon { width:54px; height:54px; border-radius:13px; font-size:1.25rem; }.vtc-rankings-heading-note { display:none; } }

/* Internal VTC member-directory page. */
.vtc-members-main { background:radial-gradient(circle at 72% 12%,rgba(22,116,183,.1),transparent 27%),var(--page-bg); }
.vtc-members-shell { gap:14px; }
.vtc-members-back { display:inline-flex; align-items:center; justify-self:start; gap:7px; border:1px solid rgba(65,154,211,.6); border-radius:999px; background:rgba(4,18,29,.74); box-shadow:inset 0 1px rgba(255,255,255,.035); color:#8ecfff; font-size:.7rem; padding:8px 13px 8px 10px; transition:border-color .18s ease,background .18s ease,transform .18s ease; }
.vtc-members-back i { display:grid; width:21px; height:21px; place-items:center; border-radius:50%; background:rgba(46,164,229,.17); color:#65c9ff; font-size:.6rem; }.vtc-members-back strong { color:#f0f7fb; font-size:.72rem; }.vtc-members-back:hover { border-color:#f4b71d; background:rgba(47,37,10,.54); color:#ffd56d; transform:translateX(-2px); }.vtc-members-back:hover i { background:rgba(244,183,29,.18); color:#ffc32a; }
.vtc-members-heading { position:relative; display:grid; grid-template-columns:72px minmax(0,1fr) auto; align-items:center; gap:17px; overflow:hidden; min-height:126px; border:1px solid rgba(50,136,191,.58); border-radius:12px; background:radial-gradient(circle at 86% 12%,rgba(26,126,188,.15),transparent 26%),rgba(3,11,20,.72); padding:19px 22px; }
.vtc-members-heading::after { content:""; position:absolute; inset:0; opacity:.27; pointer-events:none; background:repeating-linear-gradient(125deg,transparent 0 38px,rgba(67,166,225,.09) 39px 40px); }.vtc-members-heading > * { position:relative; z-index:1; }.vtc-members-heading-icon { display:grid; width:64px; height:64px; place-items:center; border:2px solid #f4b71d; border-radius:15px; background:radial-gradient(circle at 32% 20%,#1c6c9d,#071827 62%); box-shadow:0 0 0 4px rgba(244,183,29,.08); color:#f7c12b; font-size:1.55rem; }.vtc-members-heading > div:nth-child(2) > span { color:#ffc32a; font-size:.67rem; letter-spacing:.14em; }.vtc-members-heading h1 { margin:5px 0 6px; color:#f3f7fa; font-size:clamp(1.55rem,2.5vw,2.25rem); letter-spacing:-.03em; }.vtc-members-heading p { color:#aac4d6; font-size:.8rem; }.vtc-members-heading-note { display:flex; align-items:center; gap:9px; border:1px solid rgba(66,199,122,.46); border-radius:9px; background:rgba(4,27,20,.56); color:#79e29a; font-size:.64rem; line-height:1.45; padding:10px 12px; }.vtc-members-heading-note i { font-size:1.2rem; }.vtc-members-heading-note strong { color:#d6f9e1; font-size:.7rem; }.vtc-members-panel { overflow:hidden; border-color:rgba(53,130,184,.54); background:rgba(3,9,18,.74); box-shadow:none; }.vtc-members-panel .vtc-directory-panel-heading { border-bottom-color:rgba(65,136,181,.3); background:rgba(4,15,25,.28); }.vtc-members-panel .vtc-directory-table-wrap { background:transparent; }.vtc-members-panel .vtc-directory-table-wrap tbody tr:hover { background:rgba(31,119,179,.1); }
.vtc-members-controls { justify-content:flex-end; padding:12px 16px; background:rgba(4,15,25,.16); }.vtc-members-controls .vtc-directory-search { flex:none; width:min(360px,100%); }.vtc-members-controls .vtc-directory-search:focus-within { border-color:#f4b71d; box-shadow:0 0 0 3px rgba(244,183,29,.1); }.vtc-directory-pagination { display:flex; justify-content:center; gap:7px; margin:0 16px 16px; padding-top:15px; border-top:1px solid rgba(65,136,181,.3); }.vtc-directory-pagination button { min-width:34px; min-height:32px; border:1px solid rgba(53,150,211,.65); border-radius:6px; background:transparent; color:#9fd8ff; cursor:pointer; font:inherit; font-size:.7rem; font-weight:800; }.vtc-directory-pagination button:hover:not(:disabled),.vtc-directory-pagination button.is-current { border-color:#f4b71d; background:#f4b71d; color:#07111d; }.vtc-directory-pagination button:disabled { cursor:not-allowed; opacity:.36; }
@media (max-width:800px) { .vtc-members-heading { grid-template-columns:58px minmax(0,1fr); padding:17px; }.vtc-members-heading-icon { width:54px; height:54px; border-radius:13px; font-size:1.25rem; }.vtc-members-heading-note { display:none; } }

/* Public VTC leaderboard uses the Driver Rankings visual system. */
.vtc-ranking-month-picker { display:flex; align-items:center; gap:9px; min-height:42px; border:1px solid var(--rank-border); border-radius:7px; background:rgba(5,17,29,.96); color:#9fcaf0; padding:0 12px; }.vtc-ranking-month-picker > i { color:var(--rank-blue); }.vtc-ranking-month-picker > span { color:#dce8f0; font-size:.7rem; font-weight:800; }.vtc-ranking-month-picker select { min-width:158px; border:0; outline:0; background:transparent; color:#fff; cursor:pointer; font:inherit; font-size:.78rem; font-weight:800; }.vtc-ranking-month-picker option { background:#071725; color:#fff; }
.ranking-podium.vtc-podium .podium-driver { color:inherit; text-decoration:none; }.ranking-podium.vtc-podium .vtc-podium-avatar { display:grid; place-items:center; color:var(--rank-gold); font-size:34px; }.ranking-podium.vtc-podium .second-place .vtc-podium-avatar { color:var(--rank-silver); }.ranking-podium.vtc-podium .third-place .vtc-podium-avatar { color:var(--rank-bronze); }.ranking-podium.vtc-podium .podium-empty { opacity:.78; }
.vtc-company-rankings-shell .vtc-directory-panel { border-color:var(--rank-border); background:rgba(2,12,21,.92); box-shadow:none; }.vtc-company-rankings-shell .vtc-directory-panel-heading { border-bottom-color:rgba(46,75,96,.5); background:rgba(2,12,21,.74); }.vtc-company-rankings-shell .vtc-directory-table-wrap { background:transparent; }.vtc-company-rankings-shell .vtc-directory-table-wrap tbody tr:hover { background:rgba(49,156,255,.05); }
@media (max-width:800px) { .vtc-ranking-toolbar { align-items:stretch; flex-direction:column; }.vtc-ranking-month-picker { justify-content:space-between; }.vtc-ranking-month-picker select { min-width:0; }.ranking-podium.vtc-podium .podium-driver { min-width:0; } }

/* Find VTCs stays within the Marker North blue-black surface. */
.vtc-find-main { background:radial-gradient(circle at 72% 12%,rgba(22,116,183,.06),transparent 27%),var(--page-bg); }.vtc-find-main .vtc-directory-heading { border-bottom-color:rgba(244,183,29,.32); }.vtc-find-main .vtc-directory-heading > span { color:#ffc32a; }.vtc-find-panel { border-color:rgba(40,128,191,.52); background:rgba(3,9,18,.78); box-shadow:none; }.vtc-find-panel .vtc-directory-controls { background:rgba(3,9,18,.46); border-bottom-color:rgba(59,113,150,.28); }.vtc-find-panel .vtc-directory-table-wrap { background:transparent; }.vtc-find-panel .vtc-directory-table-wrap tbody tr { background:transparent; }.vtc-find-panel .vtc-directory-table-wrap tbody tr:hover { background:rgba(49,156,255,.05); }

/* Find Drivers uses the same blended directory surface. */
.drivers-directory-main { background:radial-gradient(circle at 72% 12%,rgba(22,116,183,.06),transparent 27%),var(--page-bg); }.drivers-directory-main .vtc-directory-heading { border-bottom-color:rgba(244,183,29,.32); }.drivers-directory-main .vtc-directory-heading > span { color:#ffc32a; }.drivers-directory-panel { border-color:rgba(40,128,191,.52); background:rgba(3,9,18,.78); box-shadow:none; }.drivers-directory-panel .vtc-directory-controls { background:rgba(3,9,18,.46); border-bottom-color:rgba(59,113,150,.28); }.drivers-directory-panel .vtc-directory-table-wrap { background:transparent; }.drivers-directory-panel .vtc-directory-table-wrap tbody tr { background:transparent; }.drivers-directory-panel .vtc-directory-table-wrap tbody tr:hover { background:rgba(49,156,255,.05); }.drivers-directory-panel .driver-directory-vtc small { color:#ffc32a; }
