:root{--brand:#0369a1;--brand-dark:#0f172a;--accent:#f97316}html{scroll-behavior:smooth}body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.glass{background:rgba(255,255,255,.86);backdrop-filter:blur(14px)}.hero-pattern{background-image:radial-gradient(circle at 20% 20%,rgba(14,165,233,.18),transparent 28%),radial-gradient(circle at 80% 0%,rgba(249,115,22,.14),transparent 24%),linear-gradient(135deg,#f8fafc 0%,#eef6ff 100%)}.card-hover{transition:all .25s ease}.card-hover:hover{transform:translateY(-4px);box-shadow:0 24px 60px rgba(15,23,42,.12)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:999px;background:#0284c7;color:white;padding:.8rem 1.2rem;font-weight:700;box-shadow:0 14px 30px rgba(2,132,199,.28);transition:.2s}.btn-primary:hover{background:#0369a1;transform:translateY(-1px)}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:999px;border:1px solid #cbd5e1;background:white;color:#0f172a;padding:.8rem 1.2rem;font-weight:700;transition:.2s}.btn-secondary:hover{border-color:#0284c7;color:#0369a1}.input{width:100%;border-radius:1rem;border:1px solid #cbd5e1;background:white;padding:.85rem 1rem;color:#0f172a;outline:none}.input:focus{border-color:#0284c7;box-shadow:0 0 0 4px rgba(14,165,233,.15)}.admin-link{display:flex;align-items:center;gap:.75rem;border-radius:1rem;padding:.75rem 1rem;font-weight:600}.badge{display:inline-flex;align-items:center;border-radius:999px;background:#e0f2fe;color:#0369a1;font-size:.78rem;font-weight:800;padding:.35rem .7rem}.status{display:inline-flex;border-radius:999px;background:#f1f5f9;color:#334155;padding:.3rem .65rem;font-size:.75rem;font-weight:700}.table-th{padding:.75rem 1rem;text-align:left;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:#64748b;background:#f8fafc}.table-td{padding:.85rem 1rem;border-top:1px solid #e2e8f0;color:#334155}.mobile-sticky{position:fixed;left:0;right:0;bottom:0;z-index:40;background:white;border-top:1px solid #e2e8f0;box-shadow:0 -10px 30px rgba(15,23,42,.08)}@media (min-width:768px){.mobile-sticky{display:none}}

/* V12 UI refresh */
body{background:#f8fafc}.soft-section{background:linear-gradient(180deg,#f8fafc 0%,#eef6ff 100%)}.hero-photo{position:relative;overflow:hidden;border-radius:2.25rem;box-shadow:0 32px 80px rgba(15,23,42,.22)}.hero-photo img{width:100%;height:100%;min-height:440px;object-fit:cover;display:block}.hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,23,42,0) 40%,rgba(15,23,42,.28) 100%)}.icon-chip{display:inline-flex;align-items:center;justify-content:center;border-radius:1.25rem;background:#e0f2fe;color:#0369a1;width:3rem;height:3rem;box-shadow:inset 0 0 0 1px rgba(2,132,199,.12)}.icon-chip.dark{background:rgba(255,255,255,.12);color:white}.nav-link{display:inline-flex;align-items:center;gap:.45rem;border-radius:999px;padding:.58rem .9rem;font-size:.875rem;font-weight:800;color:#334155;transition:.18s}.nav-link:hover{background:#f1f5f9;color:#0369a1}.nav-link.bg-sky-700,.nav-link.text-white{color:#fff}.mobile-link{display:flex;align-items:center;gap:.75rem;border-radius:1rem;padding:.85rem 1rem;font-weight:800;color:#334155}.mobile-link:hover{background:#f8fafc}.photo-card{overflow:hidden;border-radius:2rem;background:#fff;box-shadow:0 12px 40px rgba(15,23,42,.07);border:1px solid #e2e8f0}.photo-card img{width:100%;height:220px;object-fit:cover}.photo-card-body{padding:1.5rem}.feature-card{border:1px solid #e2e8f0;background:rgba(255,255,255,.88);border-radius:2rem;padding:1.5rem;box-shadow:0 10px 30px rgba(15,23,42,.05)}.feature-card:hover{transform:translateY(-3px);box-shadow:0 24px 60px rgba(15,23,42,.12)}.admin-sidebar{height:100vh;position:sticky;top:0;overflow-y:auto;scrollbar-width:thin}.admin-sidebar::-webkit-scrollbar{width:8px}.admin-sidebar::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}.admin-link{color:#334155;transition:.18s}.admin-link:hover{background:#f1f5f9;color:#0369a1}.admin-link.bg-sky-700,.admin-link.text-white{color:white}.admin-card{position:relative;overflow:hidden;border-radius:1.75rem;background:white;border:1px solid #e2e8f0;padding:1.4rem;box-shadow:0 10px 34px rgba(15,23,42,.05);transition:.18s}.admin-card:hover{transform:translateY(-2px);box-shadow:0 20px 55px rgba(15,23,42,.12);border-color:#bae6fd}.admin-card::after{content:"";position:absolute;right:-34px;top:-34px;width:110px;height:110px;border-radius:999px;background:rgba(14,165,233,.09)}.admin-card-icon{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:1.1rem;background:#e0f2fe;color:#0369a1}.table-wrap{overflow-x:auto;border:1px solid #e2e8f0;border-radius:1.5rem;background:white}.table-th{white-space:nowrap}.table-td{vertical-align:top}.page-hero{background:linear-gradient(135deg,#f8fafc 0%,#e0f2fe 100%)}.page-hero-grid{display:grid;gap:2rem;align-items:center}.page-hero-img{border-radius:2rem;overflow:hidden;box-shadow:0 24px 70px rgba(15,23,42,.18)}.page-hero-img img{width:100%;height:360px;object-fit:cover;display:block}.quick-action{display:flex;align-items:center;gap:.75rem;border-radius:1.25rem;background:white;border:1px solid #e2e8f0;padding:1rem;font-weight:900;color:#0f172a}.quick-action:hover{border-color:#7dd3fc;color:#0369a1}.section-title{font-size:clamp(2rem,4vw,3.2rem);font-weight:900;letter-spacing:-.045em;color:#020617}.muted{color:#64748b}.admin-hero{position:relative;overflow:hidden;border-radius:2rem;background:#0f172a;color:white;padding:1.5rem}.admin-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 90% 0%,rgba(14,165,233,.42),transparent 35%),radial-gradient(circle at 10% 100%,rgba(249,115,22,.22),transparent 30%)}.admin-hero>*{position:relative}select.input{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#0369a1 50%),linear-gradient(135deg,#0369a1 50%,transparent 50%);background-position:calc(100% - 20px) calc(1em + 2px),calc(100% - 15px) calc(1em + 2px);background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:2.5rem}@media (min-width:768px){.page-hero-grid{grid-template-columns:1.05fr .95fr}}@media (max-width:767px){.hero-photo img{min-height:320px}.page-hero-img img{height:260px}.section-title{font-size:2.25rem}.btn-primary,.btn-secondary{width:100%}}


/* V13 identity and brand refinements */
.brand-logo-img{height:3.75rem;width:3.75rem;border-radius:1.25rem;object-fit:contain;background:#fff;padding:.22rem;box-shadow:0 14px 34px rgba(15,23,42,.12);border:1px solid rgba(226,232,240,.9)}
.brand-logo-fallback{display:flex;height:3.75rem;width:3.75rem;align-items:center;justify-content:center;border-radius:1.25rem;background:#0369a1;color:#fff;font-weight:900;box-shadow:0 14px 34px rgba(15,23,42,.12)}
.footer-logo-img{height:4.25rem;width:4.25rem;border-radius:1.35rem;object-fit:contain;background:#fff;padding:.25rem;box-shadow:0 16px 40px rgba(0,0,0,.2)}
.identity-card{display:flex;align-items:flex-start;gap:1rem;border:1px solid #e2e8f0;background:#fff;border-radius:1.5rem;padding:1rem;box-shadow:0 8px 28px rgba(15,23,42,.04)}
.identity-card svg{flex-shrink:0;color:#0369a1;margin-top:.15rem}.identity-card span{display:block;font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#64748b}.identity-card strong{display:block;margin-top:.2rem;color:#0f172a;line-height:1.55}.identity-row{display:grid;grid-template-columns:1fr;gap:.25rem;border-top:1px solid #e2e8f0;padding:.8rem 0}.identity-row:first-child{border-top:0}.identity-row span{font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#64748b}.identity-row strong{color:#0f172a}.brand-watermark{position:absolute;right:-4rem;bottom:-4rem;width:18rem;height:18rem;opacity:.05;background:url('../img/logo-drivup.png') center/contain no-repeat;pointer-events:none}@media (min-width:768px){.identity-row{grid-template-columns:9rem 1fr;align-items:center}}


/* V14 production ergonomics */
.nav-dropdown{position:relative}.nav-dropdown-menu{position:absolute;left:0;top:calc(100% + .65rem);display:none;min-width:17rem;border:1px solid #e2e8f0;background:#fff;border-radius:1.25rem;padding:.55rem;box-shadow:0 22px 60px rgba(15,23,42,.14);z-index:60}.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{display:grid;gap:.25rem}.nav-dropdown-menu a{display:flex;align-items:center;gap:.65rem;border-radius:.95rem;padding:.75rem .85rem;font-size:.875rem;font-weight:800;color:#334155}.nav-dropdown-menu a:hover{background:#f1f5f9;color:#0369a1}.legal-note{border-left:4px solid #0284c7;background:#f0f9ff;border-radius:1rem;padding:1rem;color:#075985}.security-chip{display:inline-flex;align-items:center;gap:.5rem;border-radius:999px;background:#ecfdf5;color:#047857;font-weight:900;font-size:.75rem;padding:.35rem .7rem}.admin-warning{border:1px solid #fed7aa;background:#fff7ed;color:#9a3412;border-radius:1.25rem;padding:1rem;font-weight:700}.form-grid{display:grid;gap:1rem}.fieldset-card{border:1px solid #e2e8f0;background:#fff;border-radius:1.5rem;padding:1.25rem;box-shadow:0 10px 30px rgba(15,23,42,.04)}

/* V21 client portal and public navigation refinements */
.menu-shell{min-height:5rem}.menu-logo-watermark{position:absolute;left:4.5rem;top:50%;width:19rem;height:19rem;transform:translateY(-50%);opacity:.055;background:url('../img/logo-drivup.png') center/contain no-repeat;pointer-events:none}.menu-logo-only{height:3.35rem;width:3.35rem;border-radius:1.15rem;opacity:.94}.install-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;transition:.2s}.install-button:hover{transform:translateY(-1px);border-color:#0284c7;background:#e0f2fe;color:#075985}.client-portal-shell{position:relative}.client-hero{background:linear-gradient(135deg,#020617 0%,#0f172a 48%,#075985 100%)}.client-hero-watermark{position:absolute;right:-3rem;bottom:-4rem;width:22rem;height:22rem;opacity:.08;background:url('../img/logo-drivup.png') center/contain no-repeat;pointer-events:none}.client-profile-card{box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 30px 70px rgba(2,6,23,.24)}.client-stat-card{display:flex;align-items:center;gap:1rem;border:1px solid #e2e8f0;background:rgba(255,255,255,.92);border-radius:1.5rem;padding:1.2rem;box-shadow:0 14px 38px rgba(15,23,42,.06)}.client-stat-icon{display:inline-flex;align-items:center;justify-content:center;height:3.2rem;width:3.2rem;border-radius:1.15rem;flex-shrink:0}.client-action-card{display:grid;gap:.35rem;border:1px solid #e2e8f0;background:white;border-radius:1.5rem;padding:1.2rem;box-shadow:0 12px 34px rgba(15,23,42,.05);transition:.18s}.client-action-card:hover{transform:translateY(-2px);border-color:#7dd3fc;box-shadow:0 22px 52px rgba(15,23,42,.1)}.client-action-card span{display:inline-flex;align-items:center;justify-content:center;height:2.75rem;width:2.75rem;border-radius:1rem;background:#e0f2fe;color:#0369a1}.client-action-card strong{font-size:1.05rem;color:#0f172a}.client-action-card small{font-weight:700;color:#64748b}.client-section{border:1px solid #e2e8f0;background:rgba(255,255,255,.96);border-radius:2rem;padding:1.25rem;box-shadow:0 16px 45px rgba(15,23,42,.06)}.client-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.client-section-head h2{font-size:1.55rem;font-weight:900;letter-spacing:-.03em;color:#0f172a}.client-section-head a{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#f0f9ff;color:#0369a1;padding:.65rem 1rem;font-size:.8rem;font-weight:900;white-space:nowrap}.client-kicker{font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#0284c7}.client-request-card{border:1px solid #e2e8f0;border-radius:1.35rem;background:#fff;padding:1rem;transition:.18s}.client-request-card:hover{border-color:#bae6fd;box-shadow:0 14px 38px rgba(15,23,42,.07)}.client-request-card a{display:inline-flex;align-items:center;border-radius:999px;border:1px solid #cbd5e1;background:#fff;padding:.5rem .75rem;font-size:.75rem;font-weight:900;color:#334155}.client-request-card a:hover{border-color:#0284c7;color:#0369a1}.client-empty-state{display:grid;place-items:center;text-align:center;gap:.5rem;border:1px dashed #cbd5e1;border-radius:1.35rem;background:#f8fafc;padding:2rem;color:#64748b}.client-empty-state svg{color:#0369a1}.client-empty-state strong{color:#0f172a}.client-empty-state span{font-size:.9rem}.footer-logo-img{opacity:.96}@media(max-width:767px){.menu-shell{min-height:4.5rem}.menu-logo-watermark{left:2.5rem;width:14rem;height:14rem}.menu-logo-only{height:3rem;width:3rem}.client-section-head{display:grid}.client-section-head a{width:100%}.client-profile-card .rounded-2xl{width:auto}}

/* V23 public menu and footer corrections */
header.glass, .menu-shell, .nav-dropdown { overflow: visible !important; }
.nav-dropdown { z-index: 90; }
.nav-dropdown::after { content: ""; position: absolute; left: 0; right: 0; top: 100%; height: .75rem; }
.nav-dropdown-menu { top: 100%; margin-top: .55rem; z-index: 9999; }
.nav-dropdown-menu::before { content: ""; position: absolute; left: 0; right: 0; top: -.7rem; height: .7rem; }
.nav-dropdown:hover .nav-link, .nav-dropdown:focus-within .nav-link { background: #f1f5f9; color: #0369a1; }
footer a { transition: color .18s ease, transform .18s ease; }
footer a:hover { color: #fff; }
@media (min-width:1280px){
  .nav-dropdown-menu { display: none; }
  .nav-dropdown:hover .nav-dropdown-menu, .nav-dropdown:focus-within .nav-dropdown-menu { display: grid; }
}
