/* Lauridsen Collection — archive identity, October 2026. */
:root {
  --paper: #f4f4f1;
  --surface: #fff;
  --ink: #242b2e;
  --muted: #626b70;
  --line: #dce0df;
  --green: #294b49;
  --sage: #e9efed;
  --gold: #867351;
  --shadow: none;
  --sans: 'Segoe UI', Arial, sans-serif;
}
body { font-size: 14px; line-height: 1.55; }
h1,h2,h3 { color: var(--ink); }
.main h1 { font: 500 32px/1.2 var(--sans); letter-spacing: -1px; }
.main h2 { font: 600 18px/1.35 var(--sans); letter-spacing: -.25px; }
.main h3 { font-weight: 500; }
.eyebrow { font-size: 10px; letter-spacing: 1.5px; }
.shell { grid-template-columns: 226px minmax(0,1fr); }
.sidebar { width: 226px; background: #202b2f; border: 0; padding: 30px 15px 20px; }
.brand { gap: 16px; padding: 0 13px 34px; }
.sidebar .monogram { color: #f4f3ed; }
.sidebar .monogram span { color: #b4a684; }
.sidebar .brand-name { color: #f4f3ed; font-size: 19px; }
.sidebar .brand-name span { color: #b5bfbe; font-size: 9px; }
.nav-label { color: #a3b1b2; font-size: 9px; letter-spacing: 1.3px; padding-left: 14px; }
.nav-item { color: #c4cecf; border-radius: 3px; font-size: 12px; padding: 11px 14px; margin: 2px 0; }
.nav-item svg { color: #a8b7b7; width: 17px; }
.nav-item:hover { color: white; background: #2c393d; }
.nav-item.active { color: white; background: #35464a; box-shadow: inset 2px 0 #b4a684; }
.nav-item.active svg { color: #eee9da; }
.nav-item.active:after { display: none; }
.nav-count { border: 0; background: #ffffff12; font-size: 10px; }
.privacy-box { border-color: #455053; color: #a6b3b4; font-size: 10px; line-height: 1.8; }
.privacy-box strong { color: #d5dddb; margin-bottom: 6px; }
.topbar { height: 65px; padding: 0 36px; background: #fff; }
.breadcrumb { font-size: 12px; }
.breadcrumb svg { width: 13px; }
.avatar { background: #edf0ef; color: #3c5054; border-color: #d8dedd; font-family: var(--sans); }
.user-pill { font-size: 12px; }
.main { max-width: 1530px; padding: 34px 36px 45px; }
.page-heading { align-items: flex-end; margin-bottom: 28px; }
.page-heading .eyebrow { color: var(--muted); margin-bottom: 10px; }
.page-heading p { font-size: 13px; }
.btn { border-color: #cdd4d2; border-radius: 3px; font-size: 12px; min-height: 40px; padding: 9px 14px; }
.btn.primary { background: #294b49; border-color: #294b49; }
.btn.primary:hover { background: #203e3d; }
.btn.text { color: #294b49; }
.btn.small { font-size: 11px; }
.metrics { gap: 0; border: 1px solid var(--line); background: #fff; margin: 18px 0 25px; border-radius: 4px; }
.metric { border: 0; border-right: 1px solid var(--line); background: transparent; border-radius: 0; padding: 22px 20px; min-height: 130px; }
.metric:last-child { border-right: 0; }
.metric:hover { background: #f8faf9; }
.metric-head { font-size: 12px; margin-bottom: 16px; color: #59656a; }
.metric-head svg { color: #798a8d; }
.metric-value { font: 500 36px/1.1 var(--sans); letter-spacing: -1.2px; }
.metric-value.compact { font-size: 21px; letter-spacing: -.5px; }
.metric-foot { font-size: 11px; line-height: 1.45; margin-top: 12px; }
.note.gold { background: #f1eee5; border-color: #e1dbcb; color: #62563c; font-size: 12px; padding: 12px 16px; border-radius: 3px; }
.dashboard-columns { grid-template-columns: minmax(0,1fr) minmax(0,1.25fr); gap: 22px; align-items: stretch; }
.panel { box-shadow: none; border-radius: 4px; }
.panel-header { padding: 22px 22px 17px; }
.panel-header h2 { font-size: 18px; }
.panel-header p { font-size: 12px; margin-top: 6px; }
.panel-header a,.panel-header button { font-size: 11px; }
.panel-body { padding: 0 22px 22px; }
.task-row,.maintenance-row { padding: 17px 22px; border-color: #e7ebea; }
.record-title { font-size: 12px; line-height: 1.5; text-align: left; }
.record-sub { font-size: 11px; }
.task-row .date { font-size: 10px; }
.task-check { border-radius: 3px; min-width: 22px; min-height: 22px; }
.empty { border: 0; border-radius: 0; background: #f7f8f6; padding: 31px 22px; }
.empty h2 { font-size: 18px; }
.empty p { font-size: 12px; }
.empty svg { width: 28px; height: 28px; margin-bottom: 12px; }
.empty .btn svg { width: 15px; height: 15px; margin: 0; }
.readiness-panel { border-radius: 4px; padding: 24px; margin: 26px 0; }
.readiness-heading { margin-bottom: 24px; }
.readiness-heading h2 { font-size: 20px; margin: 8px 0; }
.readiness-heading .eyebrow { font-size: 9px; color: var(--muted); }
.readiness-heading p { font-size: 12px; }
.readiness-item p { color: #626b70; font-size: 11px; }
.readiness-item progress { height: 3px; border-radius: 0; }
.readiness-item progress::-webkit-progress-bar { background: #e7eaea; }
.readiness-item progress::-webkit-progress-value { background: #526f6b; }
.section-title { margin: 30px 0 17px; border-top: 1px solid var(--line); padding-top: 24px; }
.section-title h2 { font-size: 20px; }
.vehicle-grid { gap: 22px; }
.vehicle-card { border-radius: 3px; box-shadow: none; transition: border-color .15s; }
.vehicle-card:hover { transform: none; box-shadow: none; border-color: #81938f; }
.vehicle-photo { height: auto; aspect-ratio: 1.55; background: #e8ebe8; }
.vehicle-photo .photo-id { top: 12px; left: 12px; background: #202b2fe8; border-radius: 2px; font-size: 10px; letter-spacing: .6px; }
.vehicle-info { padding: 18px 19px; }
.vehicle-info h3 { font: 400 24px/1.25 var(--serif); letter-spacing: -.3px; margin: 5px 0 9px; }
.vehicle-year { font-size: 11px; color: #5b676c; }
.vehicle-info p { font-size: 12px; margin-bottom: 16px; }
.vehicle-footer { font-size: 10px; padding: 12px 19px; background: #fafbf9; }
.badge { border-radius: 2px; font-size: 10px; background: #e9efec; color: #3c5a50; }
.badge.grey { background: #eff1f0; color: #5b6568; }
.badge.gold { background: #f1ede2; color: #6b5b36; }
.badge.red { background: #f8ece8; color: #8b4236; }
.toolbar { padding: 16px; background: #fff; border: 1px solid var(--line); border-radius: 3px; gap: 14px; }
.search { border-color: #cdd5d2; border-radius: 3px; }
.search input { font-size: 12px; }
.result-count { font-size: 12px; }
.table-wrap,.filter-panel { border-radius: 3px; }
th { font-size: 10px; background: #f5f7f5; color: #5b6568; }
td { font-size: 12px; padding: 18px 17px; }
.table-title { font-size: 19px; }
.tabs { gap: 24px; }
.tabs button { font-size: 12px; }
.profile-photo { border-radius: 3px; }
.profile-summary h1 { font: 400 36px/1.2 var(--serif); }
.detail-item dt { font-size: 11px; color: var(--muted); }
.detail-item dd { font-size: 13px; }
.dashboard-footer { font-size: 10px; color: #626b70; }
.auth-page { background: #fafaf7; }
.auth-aside { background: #202b2f; padding: 55px; }
.auth-aside img { opacity: .62; filter: grayscale(.65); }
.auth-aside:after { background: linear-gradient(0deg,#172226d9,#17222633); }
.auth-aside h1 { font: 400 clamp(44px,4vw,64px)/1.08 var(--serif); color: white; letter-spacing: -1.5px; }
.auth-aside p { color: #e0e5e1; font-size: 14px; }
.auth-aside .eyebrow { color: #d8d7cb; font-size: 10px; }
.auth-aside .small { color: #d8dfdc; font-size: 11px; }
.auth-form { width: 360px; }
.auth-form h2 { font: 500 28px/1.25 var(--sans); letter-spacing: -.6px; }
.auth-form>p { font-size: 13px; }
.auth-form input { border-radius: 3px; border-color: #cbd2ce; }
.auth-footer { color: #626b70; font-size: 11px!important; }
.auth-account-option { border-top: 1px solid var(--line); margin-top: 23px; padding-top: 18px; text-align: center; font-size: 12px; }
.auth-account-option .btn { margin-top: 2px; }
.auth-pending h2 { margin-top: 18px; }
.approval-notice { background: #e9efed; border: 1px solid #c6d5ce; padding: 16px 19px; margin: 0 0 23px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border-radius: 3px; }
.approval-notice strong { display: block; font-size: 13px; }
.approval-notice span { display: block; color: #52635c; font-size: 12px; margin-top: 4px; }
.account-request-section { margin: 23px 0 27px; padding: 19px; background: #f3f6f3; border: 1px solid #d5dfd8; border-radius: 3px; }
.account-request-section h3 { margin: 0 0 7px; font-weight: 600; }
.account-request .member-info { min-width: 0; }
.account-request .member-info span { overflow-wrap: anywhere; }
.access-options { border: 1px solid var(--line); border-radius: 3px; margin-top: 18px; }
.access-options>h3,.access-options>p,.access-options>.permission-grid,.access-options>.check-label { margin-left: 17px; margin-right: 17px; }
.access-options>h3 { margin-top: 15px; }
.access-options>.check-label:last-child { margin-bottom: 18px; }
.presentation-page { background: #fafaf7; color: #283331; }
.presentation-header,.presentation-footer { background: #f1f2ed; }
.presentation-feature-card h3,.presentation-catalog-card h3 { color: #283331; }
.presentation-facts,.presentation-research,.presentation-history { background: #edf0eb; }
.presentation-care { background: #253b3b; }
.presentation-next { background: #e8ede8; }
.presentation-feature-image,.presentation-gallery>button { border-radius: 2px; }
@media(min-width:1600px) { .main { padding: 40px 45px; } }
@media(min-width:721px) and (max-width:1200px) {
  .shell { grid-template-columns: 205px minmax(0,1fr); }
  .sidebar { width: 205px; padding-left: 10px; padding-right: 10px; }
  .main { padding: 28px 26px; }
  .page-heading { align-items: flex-start; flex-direction: column; gap: 20px; }
  .metric { padding: 20px 15px; }
  .metric-value.compact { font-size: 19px; }
}
@media(max-width:960px) {
  .dashboard-columns { grid-template-columns: 1fr; }
  .metrics { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .metric:nth-child(2) { border-right: 0; }
  .metric:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
}
@media(max-width:720px) {
  .shell { display: block; }
  .sidebar { width: 250px; padding: 28px 15px; }
  .topbar { padding: 0 17px; height: 62px; }
  .topbar .actions { flex-wrap: nowrap; gap: 10px; }
  .breadcrumb span:first-child,.breadcrumb svg { display: none; }
  .main { padding: 27px 18px 35px; }
  .main h1 { font-size: 29px; }
  .page-heading { flex-direction: column; gap: 18px; margin-bottom: 23px; align-items: flex-start; }
  .page-heading .actions { width: 100%; gap: 8px; }
  .page-heading .actions .btn { font-size: 11px; flex: 1; padding: 9px 10px; }
  .page-heading .actions .btn svg { width: 14px; }
  .main[data-page="dashboard"] .page-heading .actions { display: grid; grid-template-columns: 1fr 1fr; }
  .main[data-page="dashboard"] .page-heading .actions .btn:first-child { grid-column: 1 / -1; }
  .main[data-page="dashboard"] .page-heading .actions .btn:nth-child(4) { grid-column: 1 / -1; }
  .metrics { margin-top: 17px; }
  .metric { min-height: 145px; padding: 19px 15px; }
  .metric-head { font-size: 11px; }
  .metric-foot { font-size: 10px; }
  .metric-value { font-size: 32px; }
  .metric-value.compact { font-size: 20px; }
  .note.gold { line-height: 1.7; }
  .readiness-panel { padding: 21px; }
  .readiness-heading { display: block; }
  .readiness-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 23px 18px; }
  .readiness-item>div { font-size: 11px; }
  .readiness-item p { font-size: 10px; }
  .vehicle-grid { grid-template-columns: 1fr; }
  .vehicle-photo { aspect-ratio: 1.55; }
  .toolbar { padding: 13px; }
  .toolbar>.actions { gap: 8px; }
  .search { max-width: none; }
  .search input { font-size: 16px; }
  .auth-aside { min-height: 340px; padding: 28px; }
  .auth-aside h1 { font-size: 43px; margin: 27px 0 12px; }
  .auth-aside p { font-size: 12px; }
  .auth-main { padding: 35px 25px; }
  .auth-form { width: 100%; }
  .task-check { min-width: 30px; min-height: 30px; }
  .dashboard-footer { flex-wrap: wrap; gap: 12px; }
  .approval-notice { align-items: flex-start; flex-direction: column; gap: 12px; }
  .account-request-section { padding: 15px; }
}
@media print {
  .main { padding: 0; }
  .metrics,.metric,.panel,.readiness-panel { break-inside: avoid; }
}
