galali-shoptet 1.0.11 → 1.0.12

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.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/style.css +207 -28
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "galali-shoptet",
3
- "version": "1.0.11",
3
+ "version": "1.0.12",
4
4
  "description": "Custom CSS for Galali Shoptet theme (designshop.galali.cz)",
5
5
  "main": "style.css",
6
6
  "style": "style.css",
package/style.css CHANGED
@@ -3279,7 +3279,7 @@ table.cart-table td.p-total {
3279
3279
  width: 160px;
3280
3280
  text-align: right;
3281
3281
  position: relative;
3282
- padding-right: 40px !important;
3282
+ padding-right: 0;
3283
3283
  }
3284
3284
  table.cart-table td.p-total strong.price-final {
3285
3285
  color: var(--gl-fg-1);
@@ -3289,24 +3289,27 @@ table.cart-table td.p-total strong.price-final {
3289
3289
  }
3290
3290
  table.cart-table td.p-total form.inline { display: inline-block; }
3291
3291
  table.cart-table td.p-total button.remove-item {
3292
- position: absolute;
3293
- right: 0;
3294
- top: 50%;
3295
- transform: translateY(-50%);
3296
- width: 32px;
3297
- height: 32px;
3298
- background: transparent;
3299
- border: none;
3292
+ /*! position: absolute; */
3293
+ /*! right: 0; */
3294
+ /*! top: 50%; */
3295
+ /*! transform: translateY(-50%); */
3296
+ /*! width: 32px; */
3297
+ /*! height: 32px; */
3298
+ /*! background: transparent; */
3299
+ /*! border: none; */
3300
3300
  cursor: pointer;
3301
- padding: 0;
3302
- transition: opacity .15s;
3303
- background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%23828282' stroke-width='1.5' stroke-linecap='round'><path d='M4 4l8 8M12 4l-8 8'/></svg>");
3304
- background-position: center;
3305
- background-repeat: no-repeat;
3306
- background-size: 16px 16px;
3301
+ /*! padding: 0; */
3302
+ /*! transition: opacity .15s; */
3303
+ /*! background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%23828282' stroke-width='1.5' stroke-linecap='round'><path d='M4 4l8 8M12 4l-8 8'/></svg>"); */
3304
+ /*! background-position: center; */
3305
+ /*! background-repeat: no-repeat; */
3306
+ /*! background-size: 16px 16px; */
3307
+ min-width: 0;
3308
+ border: 1px solid black;
3309
+ margin-left: 5px;
3307
3310
  }
3308
3311
  table.cart-table td.p-total button.remove-item:hover {
3309
- opacity: .6;
3312
+ opacity: 1;
3310
3313
  }
3311
3314
  table.cart-table td.p-total button.remove-item:focus-visible {
3312
3315
  outline: 2px solid var(--gl-fg-1);
@@ -3339,8 +3342,7 @@ table.cart-table td.p-total button.remove-item .sr-only {
3339
3342
  background: transparent;
3340
3343
  }
3341
3344
  .cart-summary .extras-wrapper {
3342
- display: grid;
3343
- grid-template-columns: 1fr 1fr;
3345
+ display: flex;
3344
3346
  gap: 24px;
3345
3347
  align-items: start;
3346
3348
  }
@@ -3357,7 +3359,7 @@ table.cart-table td.p-total button.remove-item .sr-only {
3357
3359
  display: flex;
3358
3360
  align-items: center;
3359
3361
  gap: 10px;
3360
- padding: 14px 18px;
3362
+ padding: 14px 18px 14px 56px;
3361
3363
  background: var(--gl-paper-2);
3362
3364
  border: 1px solid var(--gl-divider);
3363
3365
  color: var(--gl-fg-1);
@@ -3371,6 +3373,8 @@ table.cart-table td.p-total button.remove-item .sr-only {
3371
3373
  height: 22px;
3372
3374
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 22 22' fill='none' stroke='black' stroke-width='1.4'><path d='M2 6h11v8H2z'/><path d='M13 9h4l3 3v2h-7'/><circle cx='6' cy='16' r='1.8'/><circle cx='16' cy='16' r='1.8'/></svg>") center/contain no-repeat;
3373
3375
  flex-shrink: 0;
3376
+ margin-top: -13px;
3377
+ margin-left: 20px;
3374
3378
  }
3375
3379
  .cart-summary .extra.delivery span { display: inline; }
3376
3380
  .cart-summary .extra.delivery strong {
@@ -3395,7 +3399,7 @@ table.cart-table td.p-total button.remove-item .sr-only {
3395
3399
  .sidebar-in-cart .box-bg-default {
3396
3400
  padding: 24px;
3397
3401
  margin: 0;
3398
- background: var(--gl-paper-2);
3402
+ background: white;
3399
3403
  border: 1px solid var(--gl-divider);
3400
3404
  border-radius: 0;
3401
3405
  box-shadow: none;
@@ -3596,11 +3600,7 @@ body.in-kosik main#content > h1 {
3596
3600
  }
3597
3601
 
3598
3602
  /* HLEDAT button v search formách — kompletní override (purple → black) */
3599
- button.btn-default[type="submit"],
3600
- button[type="submit"].btn-default,
3601
- button[type="submit"].btn-primary,
3602
- button[type="submit"][value="Hledat"],
3603
- form button[type="submit"]:not(#orderFormButton):not(.btn-conversion):not(.add-to-cart) {
3603
+ button.btn-default[type="submit"], button[type="submit"].btn-default, button[type="submit"].btn-primary, button[type="submit"][value="Hledat"] {
3604
3604
  background: var(--gl-black) !important;
3605
3605
  background-image: none !important;
3606
3606
  color: var(--gl-white) !important;
@@ -3975,6 +3975,9 @@ body.ordering-process .form-control:focus-visible {
3975
3975
  background: radial-gradient(var(--gl-fg-1) 0 6px, var(--gl-white) 7px 100%);
3976
3976
  border-color: var(--gl-fg-1);
3977
3977
  }
3978
+ .shipping-billing-table .radio-wrapper.active label::after, .shipping-billing-table .radio-wrapper:has(input:checked) label::after {
3979
+ display:none;
3980
+ }
3978
3981
  .shipping-billing-table .radio-wrapper:focus-within label::before {
3979
3982
  outline: 2px solid var(--gl-fg-1);
3980
3983
  outline-offset: 4px;
@@ -4115,7 +4118,7 @@ body.ordering-process .form-control:focus-visible {
4115
4118
  box-sizing: border-box;
4116
4119
  padding: 24px;
4117
4120
  margin: 0;
4118
- background: var(--gl-paper-2);
4121
+ background: white;
4119
4122
  border: 1px solid var(--gl-divider);
4120
4123
  border-radius: 0;
4121
4124
  box-shadow: none;
@@ -4143,11 +4146,13 @@ body.ordering-process .form-control:focus-visible {
4143
4146
  .cart-item {
4144
4147
  display: grid;
4145
4148
  grid-template-columns: 1fr auto auto;
4146
- gap: 12px;
4147
- padding: 8px 0;
4149
+ gap: 0;
4150
+ padding: 0px 0;
4148
4151
  align-items: baseline;
4149
4152
  font-family: var(--gl-font-ui);
4150
4153
  font-size: 14px;
4154
+ align-items: stretch;
4155
+ margin-bottom: -1px;
4151
4156
  }
4152
4157
  .cart-item + .cart-item {
4153
4158
  border-top: 1px solid var(--gl-divider);
@@ -4418,6 +4423,179 @@ button.btn-conversion:focus-visible {
4418
4423
  outline-offset: 3px;
4419
4424
  }
4420
4425
 
4426
+ /* === Krok-2 (informace o vás) — opravy zarovnání desktop === */
4427
+
4428
+ /* 1) Sekční heading (Osobní údaje / Fakturační adresa / …) — vendor dává
4429
+ `margin-left:-120px; padding-left:120px` + absolutní ::before ikonu v levém
4430
+ gutteru (mimo kartu). Tyhle h4 NEmají class `.order-icon`, takže je moje
4431
+ `.box h4.order-icon` pravidla míjela. Normalizuj na inline heading s ikonou. */
4432
+ body.ordering-process .cart-content fieldset > h4 {
4433
+ display: flex;
4434
+ align-items: center;
4435
+ gap: 12px;
4436
+ margin: 0 0 24px !important;
4437
+ margin-left: 0 !important;
4438
+ padding: 0 0 16px !important;
4439
+ padding-left: 0 !important;
4440
+ position: static !important;
4441
+ border-bottom: 1px solid var(--gl-divider);
4442
+ background: transparent !important;
4443
+ background-image: none !important;
4444
+ color: var(--gl-fg-1);
4445
+ font-family: var(--gl-font-ui);
4446
+ font-size: 14px;
4447
+ font-weight: var(--gl-w-medium);
4448
+ text-transform: uppercase;
4449
+ letter-spacing: 0.08em;
4450
+ }
4451
+ body.ordering-process .cart-content fieldset > h4::before {
4452
+ content: "" !important;
4453
+ display: inline-flex !important;
4454
+ position: static !important;
4455
+ left: auto !important;
4456
+ top: auto !important;
4457
+ flex-shrink: 0;
4458
+ width: 28px !important;
4459
+ height: 28px !important;
4460
+ margin: 0 !important;
4461
+ border-radius: 50% !important;
4462
+ background-color: var(--gl-paper-3) !important;
4463
+ background-repeat: no-repeat !important;
4464
+ background-position: center !important;
4465
+ background-size: 16px 16px !important;
4466
+ /* default: osoba */
4467
+ background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.3'><circle cx='8' cy='5' r='2.4'/><path d='M3.4 13c0-2.5 2-4.2 4.6-4.2s4.6 1.7 4.6 4.2'/></svg>") !important;
4468
+ }
4469
+ body.ordering-process .cart-content fieldset > h4::after { content: none !important; display: none !important; }
4470
+ /* Fakturační / doručovací adresa → pin ikona (vyšší specificita než base rule) */
4471
+ body.ordering-process .cart-content fieldset > h4.header-billing::before,
4472
+ body.ordering-process .cart-content fieldset > h4.header-delivery::before,
4473
+ body.ordering-process .cart-content fieldset > h4.header-shipping::before {
4474
+ background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.3'><path d='M8 1.6c2.2 0 4 1.8 4 4 0 3-4 8.4-4 8.4S4 8.6 4 5.6c0-2.2 1.8-4 4-4z'/><circle cx='8' cy='5.6' r='1.5'/></svg>") !important;
4475
+ }
4476
+
4477
+ /* 2) Karty sekcí — sjednotit šířku + zarovnání. Billing/delivery fieldset nemá
4478
+ `.co-box`, takže moje `.box.co-box` karta ho míjela → bez rámečku, odsazený
4479
+ (x220 vs x100). `:has(> h4)` cílí jen sekce s headingem (ne prázdné boxy). */
4480
+ body.ordering-process .cart-content fieldset:has(> h4) {
4481
+ box-sizing: border-box;
4482
+ width: 100% !important;
4483
+ max-width: none !important;
4484
+ margin: 0 0 24px !important;
4485
+ padding: 28px 32px !important;
4486
+ background: var(--gl-white);
4487
+ border: 1px solid var(--gl-divider);
4488
+ border-radius: 0;
4489
+ box-shadow: none;
4490
+ }
4491
+
4492
+ /* 2b) Wrapper `div.co-box` (co-billing-address / co-delivery-address) má vendor
4493
+ `padding-left:120px` (rezerva pro starou gutter ikonu) → odsazuje fieldset kartu
4494
+ na x220/w1085 místo x100/w1285. Ikony jsou teď inline → gutter zrušit. */
4495
+ body.ordering-process .cart-content div.co-box,
4496
+ body.ordering-process .cart-content div.co-billing-address,
4497
+ body.ordering-process .cart-content div.co-delivery-address {
4498
+ padding-left: 0 !important;
4499
+ padding-right: 0 !important;
4500
+ margin-left: 0 !important;
4501
+ }
4502
+
4503
+ /* 3) Telefon input — vendor `.phone-combined-input` je shrink-fit (max-width:217px),
4504
+ tel input jen 129px. Roztáhnout na plnou šířku form-group. */
4505
+ body.ordering-process .phone-combined-input {
4506
+ width: 100% !important;
4507
+ max-width: none !important;
4508
+ gap: 8px;
4509
+ }
4510
+ body.ordering-process .phone-combined-input .country-flags { flex: 0 0 auto !important; }
4511
+ body.ordering-process .phone-combined-input input.form-control,
4512
+ body.ordering-process .phone-combined-input input[type="tel"],
4513
+ body.ordering-process .phone-combined-input input.js-phone-form-control {
4514
+ flex: 1 1 auto !important;
4515
+ width: auto !important;
4516
+ min-width: 0 !important;
4517
+ }
4518
+
4519
+ /* 4) Checkbox přes text — `company-shopping` label má padding-left:0, absolutní
4520
+ checkbox (20px) tak leze do textu "Nakupuji na firmu". Odsadit label. */
4521
+ body.ordering-process .form-group.company-shopping label,
4522
+ body.ordering-process label[for="company-shopping"],
4523
+ body.ordering-process label[for="add-note"],
4524
+ body.ordering-process label[for="set-registration"] {
4525
+ padding-left: 30px !important;
4526
+ position: relative;
4527
+ cursor: pointer;
4528
+ }
4529
+
4530
+ /* 5) Objednat button — skutečné id je `#submit-order.next-step-finish`
4531
+ (ne #orderFormButton). Má 2 řádky ("Objednat" + "s povinností platby") ve
4532
+ fixní výšce 52px → text přetéká. Column layout + auto výška + bez šipky. */
4533
+ body.ordering-process button#submit-order,
4534
+ body.ordering-process button.btn-conversion.next-step-finish,
4535
+ button.btn-conversion.next-step-finish {
4536
+ display: flex !important;
4537
+ flex-direction: column !important;
4538
+ align-items: center !important;
4539
+ justify-content: center !important;
4540
+ gap: 2px !important;
4541
+ height: auto !important;
4542
+ min-height: 60px !important;
4543
+ padding: 12px 24px !important;
4544
+ line-height: 1.15 !important;
4545
+ }
4546
+ body.ordering-process button#submit-order::after,
4547
+ button.btn-conversion.next-step-finish::after {
4548
+ content: none !important;
4549
+ display: none !important;
4550
+ }
4551
+ body.ordering-process button#submit-order .order-button-text,
4552
+ button.next-step-finish .order-button-text {
4553
+ font-size: 15px !important;
4554
+ font-weight: var(--gl-w-medium) !important;
4555
+ text-transform: uppercase !important;
4556
+ letter-spacing: 0.08em !important;
4557
+ line-height: 1.1 !important;
4558
+ }
4559
+ body.ordering-process button#submit-order .order-button-suffix,
4560
+ button.next-step-finish .order-button-suffix {
4561
+ font-size: 11px !important;
4562
+ font-weight: var(--gl-w-regular, 400) !important;
4563
+ text-transform: none !important;
4564
+ letter-spacing: 0.02em !important;
4565
+ line-height: 1.1 !important;
4566
+ opacity: 0.82;
4567
+ }
4568
+
4569
+ /* 6) Validační hlášky — vendor `.js-validator-msg.msg-error` má `margin: 5px 0 5px 175px`
4570
+ (175px levý odsazení z inline layoutu) → hláška odsazená ~175px vpravo od levé hrany
4571
+ pole. Ve stacked layoutu zarovnat pod pole (label/input left). */
4572
+ body.ordering-process .js-validator-msg,
4573
+ body.ordering-process .js-validator-msg.msg-error,
4574
+ body.ordering-process div.msg-error {
4575
+ margin: 6px 0 2px !important;
4576
+ padding: 0 !important;
4577
+ font-family: var(--gl-font-ui) !important;
4578
+ font-size: 13px !important;
4579
+ line-height: 1.4 !important;
4580
+ color: #d33a36 !important;
4581
+ }
4582
+ /* Invalid inputy — vendor dává `.error-field`/`.js-error-field`, ale moje generické
4583
+ input pravidlo drží černý border → uživatel nepozná chybné pole. Červený rámeček. */
4584
+ body.ordering-process input.error-field,
4585
+ body.ordering-process input.js-error-field,
4586
+ body.ordering-process .error-field.form-control,
4587
+ body.ordering-process select.error-field,
4588
+ body.ordering-process textarea.error-field,
4589
+ body.ordering-process .js-error-field.form-control {
4590
+ border-color: #d33a36 !important;
4591
+ box-shadow: 0 0 0 1px rgba(211, 58, 54, .18) !important;
4592
+ }
4593
+ body.ordering-process input.error-field:focus,
4594
+ body.ordering-process input.js-error-field:focus {
4595
+ border-color: #d33a36 !important;
4596
+ box-shadow: 0 0 0 2px rgba(211, 58, 54, .22) !important;
4597
+ }
4598
+
4421
4599
  /* Back step link */
4422
4600
  .next-step .next-step-back,
4423
4601
  .next-step a.next-step-back,
@@ -7180,3 +7358,4 @@ body.type-search .products.products-block .product .add-to-cart {
7180
7358
  body.type-search .products.products-block .product a.name { font-size: 14px; line-height: 18px; min-height: 36px; }
7181
7359
  body.type-search .products.products-block .product .price.price-final { font-size: 14px; }
7182
7360
  }
7361
+