@bytebrand/fe-ui-core-autobahn 1.0.60 → 1.0.62

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/theme/md3.css CHANGED
@@ -3869,11 +3869,10 @@ line-height: 31px;
3869
3869
  min-height: 230px;
3870
3870
  }
3871
3871
 
3872
- /* grid card media — fixed 4:3, hairline seam so the white photo area reads as a zone */
3872
+ /* grid card media — fixed 4:3 */
3873
3873
  .md3 .cc-media {
3874
3874
  aspect-ratio: 4 / 3;
3875
3875
  width: 100%;
3876
- border-bottom: 1px solid var(--md-outline-variant);
3877
3876
  }
3878
3877
  .md3 .cc-media .cardcar {
3879
3878
  height: 100%;
@@ -3933,6 +3932,69 @@ line-height: 31px;
3933
3932
  font-weight: 600;
3934
3933
  white-space: nowrap;
3935
3934
  }
3935
+ /* desktop-only "mcard" (CarRow/SRP) photo-count / eye+heart chip (Figma "Vehicle Gallery / Photos
3936
+ Button" and "Push Chips / Likes") — lighter/more translucent than .gallery-pill (which stays
3937
+ mobile-only, used by .gallery-badges above), and can hold two icon+count pairs in one pill. */
3938
+ .md3 .mcard-photo-chip {
3939
+ display: inline-flex;
3940
+ align-items: center;
3941
+ gap: 6px;
3942
+ height: 30px;
3943
+ padding: 0 10px;
3944
+ border-radius: 16px;
3945
+ border: 1px solid #e5eaf0;
3946
+ background: rgba(245, 247, 250, 0.5);
3947
+ color: #111820;
3948
+ font-size: 12px;
3949
+ font-weight: 700;
3950
+ white-space: nowrap;
3951
+ }
3952
+ /* Car Card (grid) gallery overlay pills (Figma "Vehicle Gallery / Photos Button" node 281:1016
3953
+ and "Push Chips / Likes" node 297:1037) — light glass pill, distinct from the dark `.imglabel`
3954
+ used elsewhere (VDP main gallery) and from the older `.gallery-pill` iteration above. */
3955
+ .md3 .cc-photo-pill {
3956
+ display: inline-flex;
3957
+ align-items: center;
3958
+ gap: 3px;
3959
+ height: 30px;
3960
+ padding: 0 12px;
3961
+ border-radius: 16px;
3962
+ background: rgba(245, 247, 250, 0.5);
3963
+ border: 1px solid #E5EAF0;
3964
+ backdrop-filter: blur(2px);
3965
+ color: #111820;
3966
+ font-family: Arial, Helvetica, sans-serif;
3967
+ font-weight: 700;
3968
+ font-size: 12px;
3969
+ white-space: nowrap;
3970
+ cursor: pointer;
3971
+ transition: background var(--dur-1) var(--ease-standard), border-color var(--dur-1) var(--ease-standard);
3972
+ }
3973
+ .md3 .cc-photo-pill:hover {
3974
+ background: rgba(245, 247, 250, 0.85);
3975
+ border-color: #d4dde7;
3976
+ }
3977
+ .md3 .cc-activity-pill {
3978
+ display: inline-flex;
3979
+ align-items: center;
3980
+ gap: 13px;
3981
+ height: 30px;
3982
+ padding: 0 12px;
3983
+ border-radius: 16px;
3984
+ background: rgba(245, 247, 250, 0.5);
3985
+ border: 1px solid #E5EAF0;
3986
+ backdrop-filter: blur(2px);
3987
+ white-space: nowrap;
3988
+ }
3989
+ .md3 .cc-activity-pill-item {
3990
+ display: inline-flex;
3991
+ align-items: center;
3992
+ gap: 2px;
3993
+ color: #1D2A38;
3994
+ font-family: Arial, Helvetica, sans-serif;
3995
+ font-weight: 700;
3996
+ font-size: 12px;
3997
+ }
3936
3998
  .md3 .listcard-info {
3937
3999
  padding: 16px 18px;
3938
4000
  display: flex;
@@ -4214,11 +4276,25 @@ line-height: 31px;
4214
4276
  /* struck-through reference rate/price shown next to the tabbed hero price (Figma card) —
4215
4277
  same red strike as .pp-old, sized for the hero context rather than the compact list row. */
4216
4278
  .md3 .pp-hero-old { font-size: 15px; color: var(--md-error); text-decoration: line-through; white-space: nowrap; }
4217
- .md3 .pp-hero-val sup, .md3 .pp-hero-old sup, .md3 .pp-hero-unit sup { font-size: .6em; }
4218
4279
  .md3 .pp-hero-terms { margin-top: 9px; font-size: 11.5px; color: var(--md-on-surface-variant); }
4219
4280
  /* "Details" link at the end of the financing/leasing terms lines (Figma "mcard") — quiet, same
4220
4281
  color as the rest of the terms line but underlined so it still reads as tappable. */
4221
4282
  .md3 .pp-details-link { color: var(--md-primary); text-decoration: underline; font-weight: 600; white-space: nowrap; }
4283
+ /* z.B./old-rate/unit column beside the CarCard hero figure — mirrors .fin-rate-unit
4284
+ (FinanceCalculator.tsx/md3.css) exactly; only used inside .cc-price's PriceHero. */
4285
+ .md3 .pp-hero-unit-group {
4286
+ display: flex;
4287
+ flex-direction: column;
4288
+ line-height: 1.25;
4289
+ font-size: 14px;
4290
+ font-weight: 600;
4291
+ color: var(--md-on-surface-variant);
4292
+ flex: none;
4293
+ }
4294
+ .md3 .cc-price .pp-hero-rate {
4295
+ align-items: center;
4296
+ flex-wrap: nowrap;
4297
+ }
4222
4298
  /* separator line between the financing block and the leasing row (legacy-design parity) */
4223
4299
  .md3 .pp-lease-row {
4224
4300
  margin-top: 16px;
@@ -4360,14 +4436,362 @@ line-height: 31px;
4360
4436
  /* grid Car Card price block (Figma "Component | Car Card | Desktop") — the hero price/tabs are
4361
4437
  much larger here than the shared .pp-hero-* sizing used to give them (those classes are only
4362
4438
  consumed inside .cc-price now, so bumping them here is safe). */
4439
+ .md3 .cc-card .md-title {
4440
+ font-family: Arial, Helvetica, sans-serif;
4441
+ font-style: normal;
4442
+ font-weight: 700;
4443
+ font-size: 24px;
4444
+ line-height: 27px;
4445
+ color: #0e2238;
4446
+ margin-bottom: 6px;
4447
+ }
4448
+ .md3 .cc-card .md-body-sm {
4449
+ font-family: Arial, Helvetica, sans-serif;
4450
+ font-style: normal;
4451
+ font-weight: 400;
4452
+ font-size: 13px;
4453
+ line-height: 17px;
4454
+ color: #0e2238;
4455
+ margin-bottom: 6px;
4456
+ }
4457
+ /* SpecLine is only ever used by CarCard (not CarRow) — safe to reach into its inline
4458
+ font-size/color with !important rather than plumbing a style-override prop through it. */
4459
+ .md3 .cc-card .cc-spec {
4460
+ font-family: Arial, Helvetica, sans-serif;
4461
+ font-weight: 400;
4462
+ font-size: 11px !important;
4463
+ line-height: 15px;
4464
+ color: #1d2a38 !important;
4465
+ margin-bottom: 10px;
4466
+ }
4467
+ /* deal chips (Ersparnis / -X% / 0€ Anzahlung) — Figma: 30px tall pill (15px radius = half the
4468
+ height), 14px bold, a tint of the icon/text color (~20% bg, ~5% border). Was previously gated
4469
+ to min-width:1025px (mobile fell back to the plain-JSX solid-fill/white-pill treatment);
4470
+ applied at every width now so mobile CarCard matches too. */
4471
+ .md3 .cc-card .cc-badges {
4472
+ gap: 8px !important;
4473
+ }
4474
+ .md3 .cc-card .deal-chip {
4475
+ height: 30px !important;
4476
+ padding: 0 10px !important;
4477
+ border-radius: 15px !important;
4478
+ font-size: 14px !important;
4479
+ font-weight: 700 !important;
4480
+ box-shadow: none !important;
4481
+ border: 1px solid transparent;
4482
+ }
4483
+ .md3 .cc-card .deal-chip--drop {
4484
+ background: rgba(17, 110, 57, 0.2) !important;
4485
+ border-color: rgba(17, 110, 57, 0.05);
4486
+ color: #116e39 !important;
4487
+ }
4488
+ .md3 .cc-card .deal-chip--percent {
4489
+ background: rgba(217, 45, 32, 0.2) !important;
4490
+ border-color: rgba(217, 45, 32, 0.05);
4491
+ color: #d92d20 !important;
4492
+ }
4493
+ .md3 .cc-card .deal-chip--zerodown {
4494
+ background: rgba(0, 92, 255, 0.2) !important;
4495
+ border-color: rgba(0, 92, 255, 0.05);
4496
+ color: #005cff !important;
4497
+ }
4498
+ /* NEU badge — Figma: amber tint pill, not the mobile solid-primary-blue pill */
4499
+ .md3 .cc-card .neu-badge {
4500
+ height: 30px;
4501
+ padding: 0 10px;
4502
+ background: rgba(255, 184, 0, 0.2);
4503
+ border: 1px solid rgba(255, 184, 0, 0.05);
4504
+ color: #ffb800;
4505
+ font-size: 13px;
4506
+ }
4507
+ /* "⚡ Angebot" badge — Figma: black-tinted ROUNDED RECT (10px radius, not a full pill), black
4508
+ text — bigger than and visually distinct from the mobile dark-solid pill. */
4509
+ .md3 .cc-card .offer-badge {
4510
+ height: 30px;
4511
+ padding: 0 10px;
4512
+ border-radius: 10px;
4513
+ background: rgba(0, 0, 0, 0.2);
4514
+ border: 1px solid rgba(0, 0, 0, 0.05);
4515
+ color: #000;
4516
+ font-size: 14px;
4517
+ }
4518
+ .md3 .cc-card .offer-badge .lucide {
4519
+ width: 15px;
4520
+ height: 15px;
4521
+ color: #000;
4522
+ }
4363
4523
  .md3 .cc-price .fin-tabs { margin-bottom: 12px; }
4364
- .md3 .cc-price .fin-tab { font-size: 17px; font-weight: 700; padding: 8px 4px; }
4365
- .md3 .cc-price .pp-eyebrow { font-size: 13px; margin-bottom: 2px; }
4366
- .md3 .cc-price .pp-hero-val { font-size: 44px; letter-spacing: -1.5px; }
4367
- .md3 .cc-price .pp-hero-old { font-size: 20px; }
4368
- .md3 .cc-price .pp-hero-unit { font-size: 16px; }
4369
- .md3 .cc-price .pp-bar { height: 7px; }
4370
- .md3 .cc-price .pp-bar-dot { width: 16px; height: 16px; }
4524
+ .md3 .cc-price .fin-tab { font-size: 17px; font-weight: 700; padding: 10px 5px; }
4525
+ /* Finanzierung tab price row (Figma "similar cars" card) — matches the VDP finance-calculator's
4526
+ MOBILE .fin-price-grid treatment one-to-one (same rate/old-price/pill typography and colors),
4527
+ by explicit spec. Previously gated to min-width:601px (left the pre-existing mobile .cc-card
4528
+ price row alone); now applied at every width on request, so mobile CarCard matches too. */
4529
+ .md3 .cc-price .pp-eyebrow,
4530
+ .md3 .fin-calc-card .pp-eyebrow {
4531
+ position: relative;
4532
+ font-family: Arial, Helvetica, sans-serif;
4533
+ font-style: normal;
4534
+ font-weight: 400;
4535
+ font-size: 8px;
4536
+ line-height: 9px;
4537
+ letter-spacing: normal;
4538
+ text-transform: none;
4539
+ color: #0e2238;
4540
+ margin-bottom: 2px;
4541
+ }
4542
+ /* footnote badge (small bordered circle, not a plain <sup>) pinned to the eyebrow's top-right
4543
+ corner — absolute against .pp-eyebrow's own position:relative above. Shared by the CarCard
4544
+ hero (.cc-price) and the VDP FinanceCalculator's own rate example (.fin-calc-card). */
4545
+ .md3 .cc-price .pp-eyebrow-badge,
4546
+ .md3 .fin-calc-card .pp-eyebrow-badge {
4547
+ display: inline-flex;
4548
+ align-items: center;
4549
+ justify-content: center;
4550
+ position: absolute;
4551
+ top: -5px;
4552
+ right: -8px;
4553
+ border-radius: 50%;
4554
+ width: 12px;
4555
+ height: 11px;
4556
+ background: rgba(255, 255, 255, 0.96);
4557
+ border: 0.5px solid #005cff;
4558
+ font-family: Arial, Helvetica, sans-serif;
4559
+ font-style: normal;
4560
+ font-weight: 400;
4561
+ font-size: 8px;
4562
+ line-height: 9px;
4563
+ text-align: center;
4564
+ color: #0e2238;
4565
+ cursor: pointer;
4566
+ }
4567
+ /* mobile-only nudge: same badge, tucked slightly closer to the eyebrow text on narrow cards. */
4568
+ @media (max-width: 1024px) {
4569
+ .md3 .cc-price .pp-eyebrow-badge {
4570
+ top: -5px;
4571
+ right: -5px;
4572
+ }
4573
+ }
4574
+ /* "2" badge (Kaufen, nested in .pp-hero-old instead of .pp-eyebrow) sits closer to the price
4575
+ figure than the "3" badge's own offsets above. */
4576
+ .md3 .cc-price .pp-hero-old .pp-eyebrow-badge,
4577
+ .md3 .fin-calc-card .pp-hero-old .pp-eyebrow-badge {
4578
+ top: -7px;
4579
+ right: -12px;
4580
+ }
4581
+ /* "3" footnote popover — click the badge above to open, the × or an outside click to close. */
4582
+ .md3 .cc-price .pp-uvp-tooltip,
4583
+ .md3 .fin-calc-card .pp-uvp-tooltip {
4584
+ position: absolute;
4585
+ top: 6px;
4586
+ right: -84px;
4587
+ z-index: 20;
4588
+ width: 281px;
4589
+ padding: 10px 12px;
4590
+ border-radius: 15px;
4591
+ background: #c5c6d2;
4592
+ box-shadow: var(--md-e2, 0 4px 12px rgba(0, 0, 0, 0.15));
4593
+ white-space: normal;
4594
+ cursor: default;
4595
+ }
4596
+ /* floating circular close button — overlaps the tooltip's top-right corner from outside,
4597
+ same "glass circle" convention as VdpViewer's close/back/next overlay buttons. */
4598
+ .md3 .cc-price .pp-uvp-tooltip-close,
4599
+ .md3 .fin-calc-card .pp-uvp-tooltip-close {
4600
+ position: absolute;
4601
+ top: -38px;
4602
+ right: -35px;
4603
+ display: flex;
4604
+ align-items: center;
4605
+ justify-content: center;
4606
+ width: 48px;
4607
+ height: 48px;
4608
+ border-radius: 50%;
4609
+ background: rgba(11, 19, 32, 0.35);
4610
+ border: 1.5px solid rgba(255, 255, 255, 0.25);
4611
+ padding: 0;
4612
+ cursor: pointer;
4613
+ }
4614
+ .md3 .cc-price .pp-uvp-tooltip-body,
4615
+ .md3 .fin-calc-card .pp-uvp-tooltip-body {
4616
+ font-family: Arial, Helvetica, sans-serif;
4617
+ font-weight: 400;
4618
+ font-size: 11px;
4619
+ line-height: 13px;
4620
+ color: #0e2238;
4621
+ }
4622
+ .md3 .cc-price .pp-hero-val {
4623
+ font-family: Arial, Helvetica, sans-serif;
4624
+ font-style: normal;
4625
+ font-weight: 700;
4626
+ font-size: 65px;
4627
+ line-height: 58px;
4628
+ letter-spacing: -2px;
4629
+ color: #005cff;
4630
+ }
4631
+ /* long rates shrink so the hero figure doesn't overflow the card. */
4632
+ .md3 .cc-price .pp-hero-val--len4 {
4633
+ font-size: 50px;
4634
+ line-height: 53px;
4635
+ }
4636
+ .md3 .cc-price .pp-hero-val--len5 {
4637
+ font-size: 43px;
4638
+ line-height: 45px;
4639
+ }
4640
+ .md3 .cc-price .pp-hero-val--len6 {
4641
+ font-size: 37px;
4642
+ line-height: 40px;
4643
+ }
4644
+ /* diagonal red strike (Figma), replacing the native horizontal line-through — shared by the
4645
+ CarCard hero (.cc-price) and the VDP FinanceCalculator's mobile Kaufen old price
4646
+ (.fin-calc-card, .fin-rate-old-list). */
4647
+ .md3 .cc-price .pp-hero-old,
4648
+ .md3 .fin-calc-card .pp-hero-old {
4649
+ position: relative;
4650
+ display: inline-block;
4651
+ font-family: Arial, Helvetica, sans-serif;
4652
+ font-style: normal;
4653
+ font-weight: 400;
4654
+ font-size: 17px;
4655
+ line-height: 20px;
4656
+ letter-spacing: 0;
4657
+ color: #0e2238;
4658
+ text-decoration: none;
4659
+ }
4660
+ .md3 .cc-price .pp-hero-old::after,
4661
+ .md3 .fin-calc-card .pp-hero-old::after {
4662
+ content: "";
4663
+ position: absolute;
4664
+ left: -2px;
4665
+ right: -2px;
4666
+ top: 50%;
4667
+ border-top: 2px solid #e60000;
4668
+ transform: rotate(12.53deg);
4669
+ transform-origin: center;
4670
+ }
4671
+ .md3 .cc-price .pp-hero-old--len4,
4672
+ .md3 .fin-calc-card .pp-hero-old--len4 {
4673
+ font-size: 13px;
4674
+ line-height: 17px;
4675
+ }
4676
+ .md3 .cc-price .pp-hero-old--len5,
4677
+ .md3 .fin-calc-card .pp-hero-old--len5 {
4678
+ font-family: Arial, Helvetica, sans-serif;
4679
+ font-weight: 400;
4680
+ font-size: 14px;
4681
+ line-height: 16px;
4682
+ color: #0e2238;
4683
+ }
4684
+ .md3 .cc-price .pp-hero-unit {
4685
+ font-family: Arial, Helvetica, sans-serif;
4686
+ font-style: normal;
4687
+ font-weight: 700;
4688
+ font-size: 18px;
4689
+ line-height: 21px;
4690
+ color: #5b6b7f;
4691
+ }
4692
+ /* Kaufen: the UVP/old-price group sits ABOVE the hero figure (Figma), not beside it like the
4693
+ Finanzierung/Leasing z.B. column — stack the row and pull the group first via order. */
4694
+ .md3 .cc-price .pp-hero--buy .pp-hero-rate {
4695
+ flex-direction: column;
4696
+ align-items: flex-start;
4697
+ gap: 2px;
4698
+ }
4699
+ .md3 .cc-price .pp-hero--buy .pp-hero-unit-group {
4700
+ order: -1;
4701
+ align-self: flex-end;
4702
+ }
4703
+ /* Preisbewertung pill + segmented tier bar, grouped in one column exactly like the VDP
4704
+ finance-calculator's MOBILE .fin-eval-col (FinanceCalculator.tsx) — replaces the old
4705
+ StatChip pill + full-width gradient .pp-bar (see PriceEvalCol in cardParts.tsx). No
4706
+ grid here (unlike .fin-price-grid), so the 112px column width is set directly instead
4707
+ of via grid-area/grid-template-columns. */
4708
+ .md3 .cc-price .fin-eval-col {
4709
+ display: flex;
4710
+ flex-direction: column;
4711
+ gap: 16px;
4712
+ width: 112px;
4713
+ flex: none;
4714
+ }
4715
+ .md3 .cc-price .fin-eval-pill {
4716
+ font-family: Arial, Helvetica, sans-serif;
4717
+ font-style: normal;
4718
+ font-weight: 700;
4719
+ font-size: 12px;
4720
+ line-height: 14px;
4721
+ text-align: center;
4722
+ }
4723
+ .md3 .cc-price .fin-eval-pill--good {
4724
+ background: #dff3e5 !important;
4725
+ border-radius: 11px !important;
4726
+ width: 100%;
4727
+ height: 27px;
4728
+ box-sizing: border-box;
4729
+ justify-content: center;
4730
+ }
4731
+ /* footnote 4 ("Top-Preis" claim) — .fin-eval-pill is a flex container, so vertical-align has
4732
+ no effect on the sup (it's a flex item, not inline content); position:relative/top raises
4733
+ it instead, same technique as the hero price's own 1/2/3 footnote markers. Shared by the
4734
+ CarCard hero (.cc-price) and the VDP FinanceCalculator's own pill (.fin-calc-card). */
4735
+ .md3 .cc-price .fin-eval-pill sup,
4736
+ .md3 .fin-calc-card .fin-eval-pill sup {
4737
+ position: relative;
4738
+ top: 0px;
4739
+ left: -4px;
4740
+ font-size: 9px;
4741
+ line-height: 9px;
4742
+ }
4743
+ .md3 .cc-price .fin-eval-bar {
4744
+ height: 7px;
4745
+ }
4746
+ .md3 .cc-price .fin-eval-seg:first-child {
4747
+ border-radius: 4px 0 0 4px;
4748
+ }
4749
+ .md3 .cc-price .fin-eval-seg:last-of-type {
4750
+ border-radius: 0 4px 4px 0;
4751
+ }
4752
+ .md3 .cc-price .fin-eval-thumb {
4753
+ width: 18px;
4754
+ height: 18px;
4755
+ border-width: 2px;
4756
+ border-radius: 9px;
4757
+ }
4758
+ .md3 .cc-price .fin-eval-thumb--good {
4759
+ border-color: #168a45 !important;
4760
+ }
4761
+ /* financing/leasing terms line + "Finanzierungsdetails"/"Leasingdetails" link (PriceTerms in
4762
+ cardParts.tsx), full-width under the price/rating row. Same quiet typography as .pp-hero-terms
4763
+ (PricePaths); the link resets button chrome and reuses the primary color so it reads as tappable. */
4764
+ .md3 .cc-terms {
4765
+ margin-top: 9px;
4766
+ font-family: Arial, Helvetica, sans-serif;
4767
+ font-style: normal;
4768
+ font-weight: 400;
4769
+ font-size: 13px;
4770
+ line-height: 15px;
4771
+ color: #0e2238;
4772
+ }
4773
+ .md3 .cc-terms-dot {
4774
+ display: inline-block;
4775
+ margin: 0 2px;
4776
+ color: #5b6b7f;
4777
+ font-size: 20px;
4778
+ line-height: 0;
4779
+ vertical-align: -2px;
4780
+ }
4781
+ .md3 .cc-terms-link {
4782
+ border: 0;
4783
+ background: none;
4784
+ padding: 0;
4785
+ margin: 0;
4786
+ font-family: Arial, Helvetica, sans-serif;
4787
+ font-style: normal;
4788
+ font-weight: 400;
4789
+ font-size: 13px;
4790
+ line-height: 15px;
4791
+ letter-spacing: -0.03em;
4792
+ color: #0e2238;
4793
+ cursor: pointer;
4794
+ }
4371
4795
  /* card CTA row (Angebot anfragen / phone / Rate anpassen) — the shared .mbtn padding (0 24px)
4372
4796
  and 14px font were sized for full-width VDP buttons; at a ~330-360px card/column width three
4373
4797
  buttons with real text at that size overflow their flex share. Scoped-down here only. */
@@ -4652,6 +5076,14 @@ line-height: 31px;
4652
5076
  gap: 12px;
4653
5077
  flex-wrap: wrap;
4654
5078
  }
5079
+ /* "Persönliche Beratung. Wir sind für Sie da!" — mobile .fin-info, icon + one line. */
5080
+ .md3 .fin-info-line {
5081
+ font-family: Arial, Helvetica, sans-serif;
5082
+ font-weight: 400;
5083
+ font-size: 14px;
5084
+ line-height: 16px;
5085
+ color: #0e2238;
5086
+ }
4655
5087
  .md3 .fin-id {
4656
5088
  font-size: 12px;
4657
5089
  color: var(--md-on-surface-variant);
@@ -6093,7 +6525,7 @@ line-height: 31px;
6093
6525
  (14px) than the 14/24px desktop default set inline. */
6094
6526
  @media (max-width: 600px) {
6095
6527
  .md3 .vdp-main {
6096
- padding: 10px 14px 48px !important;
6528
+ padding: 0 14px 48px !important;
6097
6529
  }
6098
6530
  .md3 .vdp-push-badges {
6099
6531
  gap: 6px;
@@ -6144,7 +6576,7 @@ background: ;
6144
6576
  */
6145
6577
 
6146
6578
  .md3 .push-badge--save {
6147
- background: rgba(17, 110, 57, 0.2);
6579
+ background: color-mix(in srgb, #116e39 20%, white);
6148
6580
  color: #116e39;
6149
6581
  border: 1px solid rgba(17, 110, 57, 0.05);
6150
6582
  font-family: Arial, Helvetica, sans-serif;
@@ -6158,7 +6590,7 @@ background: ;
6158
6590
  color: #116e39;
6159
6591
  }
6160
6592
  .md3 .push-badge--discount {
6161
- background: rgba(217, 45, 32, 0.2);
6593
+ background: color-mix(in srgb, #d92d20 20%, white);
6162
6594
  border: 1px solid rgba(217, 45, 32, 0.05);
6163
6595
  color: #D92D20;
6164
6596
  font-weight: 700;
@@ -6169,7 +6601,7 @@ background: ;
6169
6601
  font-weight: 700;
6170
6602
  font-size: 13px;
6171
6603
  line-height: 15px;
6172
- background: rgba(0, 92, 255, 0.2);
6604
+ background: color-mix(in srgb, #005cff 20%, white);
6173
6605
  border: 1px solid rgba(0, 92, 255, 0.05);
6174
6606
  border-radius: 15px;
6175
6607
  color: #005CFF;
@@ -6177,7 +6609,7 @@ color: #005CFF;
6177
6609
  /* NEU badge, as the trailing pill inside the vdp-push-badges row (VDP mobile mockup) —
6178
6610
  scoped override, the base .neu-badge above still serves the car-card usage. */
6179
6611
  .md3 .vdp-push-badges .neu-badge {
6180
- background: rgba(255, 184, 0, 0.2);
6612
+ background: color-mix(in srgb, #ffb800 20%, white);
6181
6613
  border: 1px solid rgba(255, 184, 0, 0.05);
6182
6614
  border-radius: 15px;
6183
6615
  font-weight: 700;
@@ -6306,34 +6738,6 @@ color: #005CFF;
6306
6738
  gap: 0;
6307
6739
  justify-content: flex-start;
6308
6740
  }
6309
- .md3 .fin-info-main {
6310
- flex: 0 0 53% !important;
6311
- width: 53%;
6312
- padding-left: 21px;
6313
- box-sizing: border-box;
6314
- }
6315
- .md3 .fin-info-details-btn {
6316
- flex: 0 0 37%;
6317
- width: 30%;
6318
- box-sizing: border-box;
6319
- }
6320
- .md3 .fin-info-sub {
6321
- font-family: Arial, Helvetica, sans-serif;
6322
- font-style: normal;
6323
- font-weight: 400;
6324
- font-size: 12px;
6325
- line-height: 14px;
6326
- color: #111820;
6327
- }
6328
- .md3 .fin-info-details-label {
6329
- font-family: Arial, Helvetica, sans-serif;
6330
- font-style: normal;
6331
- font-weight: 400;
6332
- font-size: 10px;
6333
- line-height: 16px;
6334
- color: #111820;
6335
- width: 69px;
6336
- }
6337
6741
  .md3 .fin-adjust-btn-label {
6338
6742
  font-family: Arial, Helvetica, sans-serif;
6339
6743
  font-style: normal;
@@ -7336,6 +7740,24 @@ color: #005CFF;
7336
7740
  line-height: 58px !important;
7337
7741
  color: #005cff !important;
7338
7742
  }
7743
+ /* mobile Kaufen UVP-strike text (.pp-hero-old, shared with CarCard) also carries .num for its
7744
+ tabular-nums digits, so the 65px blue hero rule above would otherwise win via !important —
7745
+ repeat with !important here, same technique as .fin-rate-cash-mobile below. */
7746
+ .md3 .fin-rate-main .num.pp-hero-old {
7747
+ font-family: Arial, Helvetica, sans-serif !important;
7748
+ font-weight: 400 !important;
7749
+ font-size: 17px !important;
7750
+ line-height: 20px !important;
7751
+ color: #0e2238 !important;
7752
+ }
7753
+ .md3 .fin-rate-main .num.pp-hero-old.pp-hero-old--len4 {
7754
+ font-size: 13px !important;
7755
+ line-height: 17px !important;
7756
+ }
7757
+ .md3 .fin-rate-main .num.pp-hero-old.pp-hero-old--len5 {
7758
+ font-size: 14px !important;
7759
+ line-height: 16px !important;
7760
+ }
7339
7761
  /* Kaufen/Barzahlung tab hero price (mobile) — same family/weight/line-height/color as
7340
7762
  the shared .num rule above, just a smaller size for this specific instance. */
7341
7763
  .md3 .fin-rate-main .num.fin-rate-cash-mobile {
@@ -7382,14 +7804,6 @@ color: #005CFF;
7382
7804
  .md3 .fin-rate-main .fin-rate-hero.fin-rate-hero--len6 {
7383
7805
  font-size: 36px !important;
7384
7806
  }
7385
- /* "Finanzierung & Leasing möglich" note (mobile) */
7386
- .md3 .fin-financing-leasing-note {
7387
- font-family: Arial, Helvetica, sans-serif !important;
7388
- font-weight: 400 !important;
7389
- font-size: 10px !important;
7390
- line-height: 16px !important;
7391
- color: #111820 !important;
7392
- }
7393
7807
  /* the struck old figure must NOT inherit the new hero rate styling (font, weight,
7394
7808
  color, line-height) — only the hero .num itself gets the 65px treatment */
7395
7809
  .md3 .fin-rate-main .fin-rate-old {
@@ -7556,6 +7970,16 @@ color: #005CFF;
7556
7970
  color: #111820;
7557
7971
  margin-bottom: 12px;
7558
7972
  }
7973
+ /* "Finanzierungsdetails"/"Leasing-Details" reads as a link here (unlike CarCard's quiet
7974
+ .cc-terms-link, which stays text-colored on purpose) — underlined. */
7975
+ .md3 .fin-cond .cc-terms-link {
7976
+ font-family: Arial, Helvetica, sans-serif;
7977
+ font-weight: 400;
7978
+ font-size: 13px;
7979
+ line-height: 15px;
7980
+ color: #0e2238;
7981
+ text-decoration: underline;
7982
+ }
7559
7983
  .md3 .fin-rate-main > div {
7560
7984
  flex-wrap: wrap;
7561
7985
  }
@@ -9278,3 +9702,82 @@ color: #005CFF;
9278
9702
  grid-template-columns: repeat(4, 1fr);
9279
9703
  }
9280
9704
  }
9705
+
9706
+ /* ==========================================================================
9707
+ CarCard (libs/packages/fe-ui-core-autobahn/cards/CarCard.tsx) — the grid
9708
+ card reused on VDP's "Ähnliche Fahrzeuge" section (VehicleDetailedNextPage
9709
+ .vdp-similar / .cards-3) — desktop-only pixel-match to Figma "Component |
9710
+ Car Card | Desktop", file 2U6FNIz6STpwSBoqvLIKRV:
9711
+ - Finanzierung tab active → node 245:752
9712
+ - Leasing tab active → node 318:1366
9713
+ - Kaufen tab active → node 331:1891
9714
+ Confirmed with the user: only the price/rating block actually changes with
9715
+ the active tab — the image treatment/gallery-nav differences between the
9716
+ 3 frames are just 3 different demo cars' own data, not a tab-driven
9717
+ restyle, so those are intentionally left alone here.
9718
+ Mobile AND tablet are untouched: `.cards-3` itself drops to 2 columns at
9719
+ <=1024px (existing rule above), so "desktop" here starts at 1025px — every
9720
+ rule below is inside that query, and every selector requires
9721
+ `.cc-card`/`.cc-price` so nothing here can leak into any other
9722
+ `.mcard`/`.statchip`/`.neu-badge`/etc. usage elsewhere on the site.
9723
+ ========================================================================== */
9724
+ @media (min-width: 1025px) {
9725
+ /* card shell: 18px corners, #d4dde7 border, resting elevation (Figma shows this shadow at
9726
+ rest, not just on hover — the existing .mcard--interactive:hover elevation is untouched). */
9727
+ .md3 .cc-card {
9728
+ border-radius: 18px;
9729
+ border-color: #d4dde7;
9730
+ box-shadow: 0px 3px 14px 0px rgba(14, 34, 56, 0.09);
9731
+ }
9732
+
9733
+ /* favorite heart + top-left badge stack position (Figma: heart top15/right11 of a 362-wide
9734
+ card; badge stack starts top15, row gap 8 between the chip row and the Angebot badge). */
9735
+ .md3 .cc-card .cc-fav {
9736
+ top: 15px !important;
9737
+ right: 11px !important;
9738
+ }
9739
+ .md3 .cc-card .cc-badges {
9740
+ top: 15px !important;
9741
+ }
9742
+
9743
+ /* hero price — Figma's rate figure (Finanzierung/Leasing) is much larger than the shared
9744
+ .cc-price sizing; the flat purchase price (Kaufen, .pp-hero--buy) stays smaller since real
9745
+ purchase prices run 5-6 digits and would overflow the card at the rate-sized figure. */
9746
+ .md3 .cc-price .pp-hero--buy .pp-hero-val {
9747
+ font-family: Arial, Helvetica, sans-serif;
9748
+ font-weight: 700;
9749
+ font-size: 52px;
9750
+ line-height: 58px;
9751
+ color: #005cff;
9752
+ }
9753
+ /* 6-digit purchase price (e.g. 113.249 €) shrinks further so it still fits. */
9754
+ .md3 .cc-price .pp-hero--buy .pp-hero-val.pp-hero-val--buy-len6 {
9755
+ font-size: 48px;
9756
+ line-height: 54px;
9757
+ }
9758
+ /* 7-digit purchase price (e.g. 1.553.249 €) shrinks even further. */
9759
+ .md3 .cc-price .pp-hero--buy .pp-hero-val.pp-hero-val--buy-len7 {
9760
+ font-size: 43px;
9761
+ line-height: 47px;
9762
+ }
9763
+
9764
+ /* Finanzierung/Leasing/Kaufen tabs — Figma: only the ACTIVE tab is bold + Deep Navy #0e2238
9765
+ inactive text (the shared .fin-tab rule bolds both and uses #111820, since the VDP
9766
+ finance-calculator tabs it's shared with want both bold there); base divider and active
9767
+ underline are literal Figma tokens (#d4dde7 divider, #005cff underline with 2px-rounded
9768
+ ends), not the site-wide --md-outline-variant/--md-primary shades. */
9769
+ .md3 .cc-price .fin-tabs {
9770
+ border-bottom-color: #d4dde7;
9771
+ }
9772
+ .md3 .cc-price .fin-tab {
9773
+ font-weight: 400;
9774
+ color: #0e2238;
9775
+ }
9776
+ .md3 .cc-price .fin-tab.on {
9777
+ font-weight: 700;
9778
+ color: #005cff;
9779
+ border-bottom-width: 3px;
9780
+ border-bottom-left-radius: 2px;
9781
+ border-bottom-right-radius: 2px;
9782
+ }
9783
+ }