@idds/styles 1.5.26 → 1.5.28

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/dist/index.css CHANGED
@@ -5510,37 +5510,16 @@ dialog.bottom-sheet-dropdown {
5510
5510
  z-index: 1000;
5511
5511
  opacity: 0;
5512
5512
  transform: translateY(-0.5rem);
5513
- transition: opacity var(--ina-transition-duration-200) ease-out,
5513
+ transition:
5514
+ opacity var(--ina-transition-duration-200) ease-out,
5514
5515
  transform var(--ina-transition-duration-200) ease-out;
5515
5516
  min-height: -moz-fit-content;
5516
5517
  min-height: fit-content;
5518
+ min-width: 100%; /* Default match trigger width */
5519
+ width: -moz-max-content;
5520
+ width: max-content; /* Allow content to dictate width, but at least 100% of trigger */
5517
5521
  }
5518
- .ina-dropdown__menu--visible {
5519
- opacity: 1;
5520
- transform: translateY(0);
5521
- }
5522
- /* Positioning variants */
5523
- .ina-dropdown__menu--position-bottom {
5524
- top: 100%;
5525
- margin-top: var(--ina-spacing-1);
5526
- }
5527
- .ina-dropdown__menu--position-top {
5528
- bottom: 100%;
5529
- margin-bottom: var(--ina-spacing-1);
5530
- transform: translateY(0.5rem);
5531
- }
5532
- .ina-dropdown__menu--position-bottom.ina-dropdown__menu--visible {
5533
- transform: translateY(0);
5534
- }
5535
- .ina-dropdown__menu--position-top.ina-dropdown__menu--visible {
5536
- transform: translateY(0);
5537
- }
5538
- .ina-dropdown__menu--align-right {
5539
- left: 0;
5540
- }
5541
- .ina-dropdown__menu--align-left {
5542
- right: 0;
5543
- }
5522
+ /* ... existing styles ... */
5544
5523
  /* Width variants */
5545
5524
  .ina-dropdown__menu--width-auto {
5546
5525
  width: auto;
@@ -5548,15 +5527,19 @@ dialog.bottom-sheet-dropdown {
5548
5527
  }
5549
5528
  .ina-dropdown__menu--width-sm {
5550
5529
  min-width: 120px;
5530
+ width: auto;
5551
5531
  }
5552
5532
  .ina-dropdown__menu--width-md {
5553
5533
  min-width: 160px;
5534
+ width: auto;
5554
5535
  }
5555
5536
  .ina-dropdown__menu--width-lg {
5556
5537
  min-width: 200px;
5538
+ width: auto;
5557
5539
  }
5558
5540
  .ina-dropdown__menu--width-xl {
5559
5541
  min-width: 240px;
5542
+ width: auto;
5560
5543
  }
5561
5544
  .ina-dropdown__menu--width-full {
5562
5545
  width: 100%;
@@ -5657,17 +5640,20 @@ dialog.bottom-sheet-dropdown {
5657
5640
  }
5658
5641
  .ina-dropdown__menu--animation-slide-up {
5659
5642
  transform: translateY(1rem);
5660
- transition: opacity var(--ina-transition-duration-200) ease-out,
5643
+ transition:
5644
+ opacity var(--ina-transition-duration-200) ease-out,
5661
5645
  transform var(--ina-transition-duration-200) ease-out;
5662
5646
  }
5663
5647
  .ina-dropdown__menu--animation-slide-down {
5664
5648
  transform: translateY(-1rem);
5665
- transition: opacity var(--ina-transition-duration-200) ease-out,
5649
+ transition:
5650
+ opacity var(--ina-transition-duration-200) ease-out,
5666
5651
  transform var(--ina-transition-duration-200) ease-out;
5667
5652
  }
5668
5653
  .ina-dropdown__menu--animation-scale {
5669
5654
  transform: scale(0.95);
5670
- transition: opacity var(--ina-transition-duration-200) ease-out,
5655
+ transition:
5656
+ opacity var(--ina-transition-duration-200) ease-out,
5671
5657
  transform var(--ina-transition-duration-200) ease-out;
5672
5658
  }
5673
5659
  /* All visible states */
@@ -8705,10 +8691,13 @@ dialog.bottom-sheet-dropdown {
8705
8691
  }
8706
8692
  .ina-phone-input__country-flag-img {
8707
8693
  width: 20px;
8708
- height: auto;
8694
+ height: 15px;
8709
8695
  display: block;
8710
8696
  -o-object-fit: contain;
8711
8697
  object-fit: contain;
8698
+ box-shadow:
8699
+ 0 1px 2px 0 rgba(31, 31, 31, 0.1),
8700
+ 0 0 0 2px var(--ina-neutral-25) !important;
8712
8701
  }
8713
8702
  .ina-phone-input__country-code {
8714
8703
  font-weight: var(--ina-font-medium);
@@ -8771,27 +8760,33 @@ dialog.bottom-sheet-dropdown {
8771
8760
  }
8772
8761
  .ina-phone-input__wrapper.ina-phone-input__wrapper--status-error:focus-within {
8773
8762
  border-color: var(--ina-negative-500);
8774
- box-shadow: 0 1px 2px 0 rgba(31, 31, 31, 0.1),
8775
- 0 0 0 3px var(--ina-negative-50) !important;
8763
+ box-shadow:
8764
+ inset 0 0 0 1px #fff,
8765
+ inset 0 0 0 2px var(--ina-negative-50) !important;
8776
8766
  }
8777
8767
  .ina-phone-input__wrapper--status-warning {
8778
8768
  border-color: var(--ina-warning-500);
8779
8769
  }
8780
8770
  .ina-phone-input__wrapper.ina-phone-input__wrapper--status-warning:focus-within {
8781
8771
  border-color: var(--ina-warning-500);
8782
- box-shadow: 0 1px 2px 0 rgba(31, 31, 31, 0.1), 0 0 0 3px var(--ina-warning-50) !important;
8772
+ box-shadow:
8773
+ inset 0 0 0 1px #fff,
8774
+ inset 0 0 0 2px var(--ina-warning-50) !important;
8783
8775
  }
8784
8776
  .ina-phone-input__wrapper--status-success {
8785
8777
  border-color: var(--ina-positive-600);
8786
8778
  }
8787
8779
  .ina-phone-input__wrapper.ina-phone-input__wrapper--status-success:focus-within {
8788
8780
  border-color: var(--ina-positive-600);
8789
- box-shadow: 0 1px 2px 0 rgba(31, 31, 31, 0.1),
8790
- 0 0 0 3px var(--ina-positive-50) !important;
8781
+ box-shadow:
8782
+ inset 0 0 0 1px #fff,
8783
+ inset 0 0 0 2px var(--ina-positive-50) !important;
8791
8784
  }
8792
8785
  /* Focus styles */
8793
8786
  .ina-phone-input__wrapper:focus-within {
8794
- box-shadow: 0 1px 2px 0 rgba(31, 31, 31, 0.1), 0 0 0 3px #f3f3f3;
8787
+ box-shadow:
8788
+ inset 0 0 0 1px #fff,
8789
+ inset 0 0 0 2px var(--ina-primary-primary);
8795
8790
  outline: none;
8796
8791
  background-color: var(--ina-background-primary);
8797
8792
  border-color: var(--ina-content-primary);
@@ -9348,7 +9343,9 @@ dialog.bottom-sheet-dropdown {
9348
9343
  }
9349
9344
  /* Focus state - Add drop shadow */
9350
9345
  .ina-radio-input__field:focus-visible:not(:disabled) {
9351
- filter: drop-shadow(0 0 3px #737373);
9346
+ outline: none;
9347
+ filter: drop-shadow(0 0 0 var(--ina-primary-primary, #141414))
9348
+ drop-shadow(0 0 0 #fff);
9352
9349
  }
9353
9350
  /* Active state - Add drop shadow */
9354
9351
  .ina-radio-input__field:active:not(:disabled) {
@@ -9374,7 +9371,8 @@ dialog.bottom-sheet-dropdown {
9374
9371
  .ina-radio-input__field:checked:hover:not(:disabled),
9375
9372
  .ina-radio-input__field:checked:focus-visible:not(:disabled),
9376
9373
  .ina-radio-input__field:checked:active:not(:disabled) {
9377
- filter: drop-shadow(0 0 3px #737373);
9374
+ filter: drop-shadow(0 0 0 var(--ina-primary-primary, #141414))
9375
+ drop-shadow(0 0 0 #fff);
9378
9376
  }
9379
9377
  /* Disabled states */
9380
9378
  .ina-radio-input__field:disabled {
@@ -9457,9 +9455,10 @@ dialog.bottom-sheet-dropdown {
9457
9455
  margin-left: var(--ina-spacing-1);
9458
9456
  }
9459
9457
  /* Focus indicators */
9458
+ /* Focus indicators */
9460
9459
  .ina-radio-input__field:focus-visible {
9461
- outline: 2px solid var(--ina-stroke-tertiary, #141414);
9462
- outline-offset: 2px;
9460
+ outline: none;
9461
+ outline-offset: 0;
9463
9462
  }
9464
9463
  /* Error state */
9465
9464
  .ina-radio-input--error .ina-radio-input__main-label {
@@ -9569,12 +9568,35 @@ dialog.bottom-sheet-dropdown {
9569
9568
  border: 1px solid var(--ina-stroke-primary);
9570
9569
  border-radius: var(--ina-radius-lg);
9571
9570
  padding: var(--ina-spacing-2) var(--ina-spacing-4);
9572
- background-color: transparent;
9571
+ background-color: var(--ina-background-primary);
9573
9572
  color: var(--ina-content-primary);
9574
9573
  cursor: pointer;
9575
9574
  font-size: inherit;
9576
9575
  outline: none;
9577
9576
  transition: all var(--ina-transition-base);
9577
+ position: relative;
9578
+ }
9579
+ /* NEW: Trigger Input for Search */
9580
+ .ina-select-dropdown__trigger-input {
9581
+ flex: 1;
9582
+ border: none;
9583
+ background: transparent;
9584
+ padding: 0;
9585
+ margin: 0;
9586
+ font-size: inherit;
9587
+ color: inherit;
9588
+ outline: none;
9589
+ min-width: 0; /* Allow shrinking */
9590
+ cursor: text;
9591
+ }
9592
+ .ina-select-dropdown__trigger-input::-moz-placeholder {
9593
+ color: var(--ina-content-tertiary);
9594
+ }
9595
+ .ina-select-dropdown__trigger-input::placeholder {
9596
+ color: var(--ina-content-tertiary);
9597
+ }
9598
+ .ina-select-dropdown__trigger-input:disabled {
9599
+ cursor: not-allowed;
9578
9600
  }
9579
9601
  /* Size variants */
9580
9602
  .ina-select-dropdown__trigger--size-sm {
@@ -9606,37 +9628,50 @@ dialog.bottom-sheet-dropdown {
9606
9628
  .ina-select-dropdown__trigger:hover {
9607
9629
  background-color: var(--ina-background-secondary);
9608
9630
  }
9631
+ /* Focus state for trigger when it acts as container */
9632
+ .ina-select-dropdown__trigger:focus-within {
9633
+ border-color: var(--ina-stroke-tertiary, #141414);
9634
+ background: var(--ina-background-primary, #fff);
9635
+ box-shadow:
9636
+ inset 0 0 0 1px #fff,
9637
+ inset 0 0 0 2px var(--ina-primary-primary, #141414);
9638
+ }
9609
9639
  /* Status variants */
9610
9640
  .ina-select-dropdown__trigger--status-neutral {
9611
9641
  border-color: var(--ina-stroke-primary);
9612
9642
  }
9613
- .ina-select-dropdown__trigger--status-neutral:focus-visible {
9614
- border-color: var(--ina-content-primary);
9615
- box-shadow: 0 1px 2px 0 rgba(31, 31, 31, 0.1),
9616
- 0 0 0 3px var(--ina-background-secondary);
9643
+ .ina-select-dropdown__trigger--status-neutral:focus-within {
9644
+ border-color: var(--ina-stroke-tertiary);
9645
+ box-shadow:
9646
+ inset 0 0 0 1px #fff,
9647
+ inset 0 0 0 2px var(--ina-primary-primary, #141414);
9617
9648
  }
9618
9649
  .ina-select-dropdown__trigger--status-error {
9619
9650
  border-color: var(--ina-negative-500);
9620
9651
  }
9621
- .ina-select-dropdown__trigger--status-error:focus-visible {
9652
+ .ina-select-dropdown__trigger--status-error:focus-within {
9622
9653
  border-color: var(--ina-negative-600);
9623
- box-shadow: 0 1px 2px 0 rgba(31, 31, 31, 0.1),
9624
- 0 0 0 3px var(--ina-negative-50);
9654
+ box-shadow:
9655
+ inset 0 0 0 1px #fff,
9656
+ inset 0 0 0 2px var(--ina-negative-50, #141414);
9625
9657
  }
9626
9658
  .ina-select-dropdown__trigger--status-warning {
9627
9659
  border-color: var(--ina-warning-500);
9628
9660
  }
9629
- .ina-select-dropdown__trigger--status-warning:focus-visible {
9661
+ .ina-select-dropdown__trigger--status-warning:focus-within {
9630
9662
  border-color: var(--ina-warning-600);
9631
- box-shadow: 0 1px 2px 0 rgba(31, 31, 31, 0.1), 0 0 0 3px var(--ina-warning-50);
9663
+ box-shadow:
9664
+ inset 0 0 0 1px #fff,
9665
+ inset 0 0 0 2px var(--ina-warning-50, #141414);
9632
9666
  }
9633
9667
  .ina-select-dropdown__trigger--status-success {
9634
9668
  border-color: var(--ina-positive-500);
9635
9669
  }
9636
- .ina-select-dropdown__trigger--status-success:focus-visible {
9670
+ .ina-select-dropdown__trigger--status-success:focus-within {
9637
9671
  border-color: var(--ina-positive-600);
9638
- box-shadow: 0 1px 2px 0 rgba(31, 31, 31, 0.1),
9639
- 0 0 0 3px var(--ina-positive-50);
9672
+ box-shadow:
9673
+ inset 0 0 0 1px #fff,
9674
+ inset 0 0 0 2px var(--ina-positive-50, #141414);
9640
9675
  }
9641
9676
  .ina-select-dropdown__trigger--disabled {
9642
9677
  background-color: transparent;
@@ -9651,6 +9686,8 @@ dialog.bottom-sheet-dropdown {
9651
9686
  .ina-select-dropdown__trigger-prefix {
9652
9687
  flex-shrink: 0;
9653
9688
  margin-right: var(--ina-spacing-2);
9689
+ display: flex;
9690
+ align-items: center;
9654
9691
  }
9655
9692
  .ina-select-dropdown__trigger-text {
9656
9693
  flex: 1;
@@ -9684,13 +9721,16 @@ dialog.bottom-sheet-dropdown {
9684
9721
  z-index: 10004; /* Higher than YearPicker panel */
9685
9722
  top: 100%;
9686
9723
  left: 0;
9724
+ width: 100%; /* Match trigger width by default */
9725
+ min-width: 100%;
9687
9726
  margin-top: var(--ina-spacing-1);
9688
9727
  background-color: var(
9689
9728
  --ina-background-primary
9690
9729
  ) !important; /* Ensure solid background */
9691
9730
  border: 1px solid var(--ina-stroke-primary);
9692
9731
  border-radius: var(--ina-radius-lg);
9693
- box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1),
9732
+ box-shadow:
9733
+ 0 10px 25px -5px rgba(0, 0, 0, 0.1),
9694
9734
  0 10px 10px -5px rgba(0, 0, 0, 0.04);
9695
9735
  display: flex;
9696
9736
  flex-direction: column;
@@ -9979,7 +10019,8 @@ dialog.bottom-sheet-dropdown {
9979
10019
  border: 1px solid var(--ina-stroke-primary);
9980
10020
  border-radius: var(--ina-radius-md);
9981
10021
  cursor: pointer;
9982
- transition: background-color var(--ina-transition-base),
10022
+ transition:
10023
+ background-color var(--ina-transition-base),
9983
10024
  border-color var(--ina-transition-base),
9984
10025
  box-shadow var(--ina-transition-base);
9985
10026
  }
@@ -10125,6 +10166,15 @@ dialog.bottom-sheet-dropdown {
10125
10166
  transition: none;
10126
10167
  }
10127
10168
  }
10169
+ /* Selection Title */
10170
+ .ina-select-dropdown__selection-title {
10171
+ padding: 8px 12px;
10172
+ font-size: 12px;
10173
+ font-weight: 600;
10174
+ color: var(--ina-content-tertiary);
10175
+ line-height: 1.33; /* 16px / 12px */
10176
+ pointer-events: none;
10177
+ }
10128
10178
  /* =========================== */
10129
10179
  /* SELECT OPTION COMPONENT */
10130
10180
  /* =========================== */
@@ -12638,23 +12688,27 @@ dialog.bottom-sheet-dropdown {
12638
12688
  }
12639
12689
  .ina-text-area__wrapper.ina-text-area__wrapper--status-error:focus-within {
12640
12690
  border-color: var(--ina-negative-500);
12641
- box-shadow: 0 1px 2px 0 rgba(31, 31, 31, 0.1),
12642
- 0 0 0 3px var(--ina-negative-50);
12691
+ box-shadow:
12692
+ inset 0 1px 2px 0 rgba(31, 31, 31, 0.1),
12693
+ inset 0 0 0 3px var(--ina-negative-50);
12643
12694
  }
12644
12695
  .ina-text-area__wrapper--status-warning {
12645
12696
  border-color: var(--ina-warning-500);
12646
12697
  }
12647
12698
  .ina-text-area__wrapper.ina-text-area__wrapper--status-warning:focus-within {
12648
12699
  border-color: var(--ina-warning-500);
12649
- box-shadow: 0 1px 2px 0 rgba(31, 31, 31, 0.1), 0 0 0 3px var(--ina-warning-50);
12700
+ box-shadow:
12701
+ inset 0 1px 2px 0 rgba(31, 31, 31, 0.1),
12702
+ inset 0 0 0 3px var(--ina-warning-50);
12650
12703
  }
12651
12704
  .ina-text-area__wrapper--status-success {
12652
12705
  border-color: var(--ina-positive-600);
12653
12706
  }
12654
12707
  .ina-text-area__wrapper.ina-text-area__wrapper--status-success:focus-within {
12655
12708
  border-color: var(--ina-positive-600);
12656
- box-shadow: 0 1px 2px 0 rgba(31, 31, 31, 0.1),
12657
- 0 0 0 3px var(--ina-positive-50);
12709
+ box-shadow:
12710
+ inset 0 1px 2px 0 rgba(31, 31, 31, 0.1),
12711
+ inset 0 0 0 3px var(--ina-positive-50);
12658
12712
  }
12659
12713
  /* Disabled state */
12660
12714
  .ina-text-area__wrapper--disabled {
@@ -12674,7 +12728,9 @@ dialog.bottom-sheet-dropdown {
12674
12728
  }
12675
12729
  /* Focus styles - Sesuai design Figma */
12676
12730
  .ina-text-area__wrapper:focus-within {
12677
- box-shadow: 0 1px 2px 0 rgba(31, 31, 31, 0.1), 0 0 0 3px #f3f3f3;
12731
+ box-shadow:
12732
+ inset 0 1px 2px 0 rgba(31, 31, 31, 0.1),
12733
+ inset 0 0 0 3px #f3f3f3;
12678
12734
  outline: none;
12679
12735
  background-color: var(--ina-background-primary);
12680
12736
  }
@@ -12878,23 +12934,27 @@ dialog.bottom-sheet-dropdown {
12878
12934
  }
12879
12935
  .ina-text-field__wrapper.ina-text-field__wrapper--status-error:focus-within {
12880
12936
  border-color: var(--ina-negative-500);
12881
- box-shadow: 0 1px 2px 0 rgba(31, 31, 31, 0.1),
12882
- 0 0 0 3px var(--ina-negative-50) !important;
12937
+ box-shadow:
12938
+ inset 0 1px 2px 0 rgba(31, 31, 31, 0.1),
12939
+ inset 0 0 0 3px var(--ina-negative-50) !important;
12883
12940
  }
12884
12941
  .ina-text-field__wrapper--status-warning {
12885
12942
  border-color: var(--ina-warning-500);
12886
12943
  }
12887
12944
  .ina-text-field__wrapper.ina-text-field__wrapper--status-warning:focus-within {
12888
12945
  border-color: var(--ina-warning-500);
12889
- box-shadow: 0 1px 2px 0 rgba(31, 31, 31, 0.1), 0 0 0 3px var(--ina-warning-50) !important;
12946
+ box-shadow:
12947
+ inset 0 1px 2px 0 rgba(31, 31, 31, 0.1),
12948
+ inset 0 0 0 3px var(--ina-warning-50) !important;
12890
12949
  }
12891
12950
  .ina-text-field__wrapper--status-success {
12892
12951
  border-color: var(--ina-positive-600);
12893
12952
  }
12894
12953
  .ina-text-field__wrapper.ina-text-field__wrapper--status-success:focus-within {
12895
12954
  border-color: var(--ina-positive-600);
12896
- box-shadow: 0 1px 2px 0 rgba(31, 31, 31, 0.1),
12897
- 0 0 0 3px var(--ina-positive-50) !important;
12955
+ box-shadow:
12956
+ inset 0 1px 2px 0 rgba(31, 31, 31, 0.1),
12957
+ inset 0 0 0 3px var(--ina-positive-50) !important;
12898
12958
  }
12899
12959
  /* Disabled state */
12900
12960
  .ina-text-field__wrapper--disabled {
@@ -12914,7 +12974,9 @@ dialog.bottom-sheet-dropdown {
12914
12974
  }
12915
12975
  /* Focus styles - Sesuai design Figma */
12916
12976
  .ina-text-field__wrapper:focus-within {
12917
- box-shadow: 0 1px 2px 0 rgba(31, 31, 31, 0.1), 0 0 0 3px #f3f3f3;
12977
+ box-shadow:
12978
+ inset 0 1px 2px 0 rgba(31, 31, 31, 0.1),
12979
+ inset 0 0 0 3px #f3f3f3;
12918
12980
  outline: none;
12919
12981
  background-color: var(--ina-background-primary);
12920
12982
  border-color: var(--ina-content-primary);
@@ -13262,293 +13324,64 @@ dialog.bottom-sheet-dropdown {
13262
13324
  border-color: var(--ina-stroke-secondary);
13263
13325
  }
13264
13326
  .ina-time-picker--open .ina-time-picker__wrapper {
13265
- box-shadow: 0 1px 2px #1f1f1f1a, 0 0 0 3px var(--ina-stroke-primary);
13327
+ box-shadow:
13328
+ inset 0 0 0 1px #fff,
13329
+ inset 0 0 0 2px var(--ina-stroke-primary);
13266
13330
  outline: none;
13267
13331
  background-color: var(--ina-background-primary);
13268
13332
  border-color: var(--ina-content-primary);
13269
13333
  }
13270
- /* Input */
13271
- .ina-time-picker__input {
13272
- width: 100%;
13273
- border: none;
13274
- outline: none;
13275
- background-color: transparent;
13276
- color: var(--ina-content-primary);
13277
- font-size: var(--ina-font-sm);
13278
- font-weight: var(--ina-font-normal);
13279
- line-height: var(--ina-line-height-sm);
13280
- transition: all var(--ina-transition-base);
13281
- }
13282
- .ina-time-picker__input::-moz-placeholder {
13283
- color: var(--ina-content-tertiary);
13284
- }
13285
- .ina-time-picker__input::placeholder {
13286
- color: var(--ina-content-tertiary);
13287
- }
13288
- .ina-time-picker__input:focus {
13289
- outline: none;
13290
- }
13291
- /* Prefix and Suffix Icons */
13292
- .ina-time-picker__prefix-icon,
13293
- .ina-time-picker__suffix-icon {
13294
- display: flex;
13295
- align-items: center;
13296
- justify-content: center;
13297
- color: var(--ina-text-secondary);
13298
- pointer-events: none;
13299
- }
13300
- .ina-time-picker__suffix-icon {
13301
- cursor: pointer;
13302
- pointer-events: all;
13303
- }
13304
- /* Clear Button */
13305
- /* Clear Button */
13306
- .ina-time-picker__clear-button {
13307
- flex-shrink: 0;
13308
- background: none;
13309
- border: none;
13310
- cursor: pointer;
13311
- padding: 0;
13312
- display: inline-flex;
13313
- align-items: center;
13314
- justify-content: center;
13315
- color: var(--ina-content-dark-secondary);
13316
- transition: color var(--ina-transition-base);
13317
- }
13318
- .ina-time-picker__clear-button:hover:not(:disabled) {
13319
- color: var(--ina-content-secondary);
13320
- }
13321
- .ina-time-picker__clear-button:disabled {
13322
- cursor: not-allowed;
13323
- opacity: 0.5;
13324
- }
13325
- /* Size Variants */
13326
- .ina-time-picker--size-sm .ina-time-picker__wrapper {
13327
- /* Desktop >= 768px */
13328
- height: 40px;
13329
- }
13330
- .ina-time-picker--size-sm .ina-time-picker__input {
13331
- font-size: var(--ina-font-xs);
13332
- padding: 0 var(--ina-spacing-1);
13333
- }
13334
- .ina-time-picker--size-sm .ina-time-picker__prefix-icon,
13335
- .ina-time-picker--size-sm .ina-time-picker__suffix-icon {
13336
- margin: 0 var(--ina-spacing-1);
13337
- }
13338
- .ina-time-picker__label {
13339
- font-size: var(--ina-font-sm);
13340
- font-weight: var(--ina-font-medium);
13341
- color: var(--ina-content-primary);
13342
- margin-bottom: var(--ina-spacing-2);
13343
- display: block;
13344
- }
13345
- .ina-time-picker__required {
13346
- color: var(--ina-negative-500);
13347
- margin-left: var(--ina-spacing-1);
13348
- }
13349
- .ina-time-picker--size-md .ina-time-picker__wrapper {
13350
- /* Desktop >= 768px */
13351
- height: 44px;
13352
- }
13353
- .ina-time-picker--size-md .ina-time-picker__input {
13354
- font-size: var(--ina-font-sm);
13355
- padding: 0 var(--ina-spacing-1);
13356
- }
13357
- .ina-time-picker--size-md .ina-time-picker__prefix-icon,
13358
- .ina-time-picker--size-md .ina-time-picker__suffix-icon {
13359
- margin: 0 var(--ina-spacing-1);
13360
- }
13361
- .ina-time-picker--size-lg .ina-time-picker__wrapper {
13362
- /* Desktop >= 768px */
13363
- height: 48px;
13364
- }
13365
- .ina-time-picker--size-lg .ina-time-picker__input {
13366
- font-size: var(--ina-font-base);
13367
- padding: 0 var(--ina-spacing-2);
13368
- }
13369
- .ina-time-picker--size-lg .ina-time-picker__prefix-icon,
13370
- .ina-time-picker--size-lg .ina-time-picker__suffix-icon {
13371
- margin: 0 var(--ina-spacing-2);
13372
- }
13334
+ /* ... existing code ... */
13373
13335
  /* Status Variants */
13374
13336
  .ina-time-picker--status-error .ina-time-picker__wrapper {
13375
13337
  border-color: var(--ina-error-500);
13376
13338
  }
13377
13339
  .ina-time-picker--status-error.ina-time-picker--open .ina-time-picker__wrapper {
13378
- box-shadow: 0 0 0 2px var(--ina-error-50);
13340
+ box-shadow:
13341
+ inset 0 0 0 1px #fff,
13342
+ inset 0 0 0 2px var(--ina-error-500);
13379
13343
  }
13380
13344
  .ina-time-picker--status-warning .ina-time-picker__wrapper {
13381
13345
  border-color: var(--ina-warning-500);
13382
13346
  }
13383
13347
  .ina-time-picker--status-warning.ina-time-picker--open
13384
13348
  .ina-time-picker__wrapper {
13385
- box-shadow: 0 0 0 2px var(--ina-warning-50);
13349
+ box-shadow:
13350
+ inset 0 0 0 1px #fff,
13351
+ inset 0 0 0 2px var(--ina-warning-500);
13386
13352
  }
13387
13353
  .ina-time-picker--status-success .ina-time-picker__wrapper {
13388
13354
  border-color: var(--ina-success-500);
13389
13355
  }
13390
13356
  .ina-time-picker--status-success.ina-time-picker--open
13391
13357
  .ina-time-picker__wrapper {
13392
- box-shadow: 0 0 0 2px var(--ina-success-50);
13393
- }
13394
- /* Disabled State */
13395
- .ina-time-picker--disabled .ina-time-picker__wrapper {
13396
- background-color: var(--ina-background-secondary);
13397
- border-color: var(--ina-stroke-primary);
13398
- cursor: not-allowed;
13399
- }
13400
- .ina-time-picker--disabled .ina-time-picker__input {
13401
- cursor: not-allowed;
13402
- opacity: 0.6;
13403
- }
13404
- .ina-time-picker--disabled .ina-time-picker__suffix-icon {
13405
- cursor: not-allowed;
13358
+ box-shadow:
13359
+ inset 0 0 0 1px #fff,
13360
+ inset 0 0 0 2px var(--ina-success-500);
13406
13361
  }
13362
+ /* ... existing code ... */
13407
13363
  /* Panel */
13408
13364
  .ina-time-picker__panel {
13409
13365
  position: absolute;
13410
13366
  top: 100%;
13411
13367
  left: 0;
13412
- right: 0;
13368
+ width: 100%;
13369
+ min-width: 100%; /* Match trigger width by default */
13413
13370
  z-index: 1000;
13414
13371
  background-color: var(--ina-background-primary);
13415
13372
  border: 1px solid var(--ina-stroke-primary);
13416
13373
  border-radius: var(--ina-radius-lg);
13417
13374
  box-shadow: var(--ina-shadow-lg);
13418
13375
  margin-top: var(--ina-spacing-2);
13419
- min-width: 200px;
13420
13376
  overflow: hidden;
13421
13377
  animation: time-picker-fade-in 0.15s ease-out;
13422
13378
  }
13423
- @keyframes time-picker-fade-in {
13424
- from {
13425
- opacity: 0;
13426
- transform: translateY(-4px);
13427
- }
13428
- to {
13429
- opacity: 1;
13430
- transform: translateY(0);
13431
- }
13432
- }
13433
- /* Panel Content */
13434
- .ina-time-picker__content {
13435
- display: flex;
13436
- max-height: 200px;
13437
- overflow: hidden;
13438
- }
13439
- /* Columns */
13440
- .ina-time-picker__column {
13441
- flex: 1;
13442
- border-right: 1px solid var(--ina-stroke-primary);
13443
- overflow-y: auto;
13444
- scrollbar-width: none;
13445
- -ms-overflow-style: none;
13446
- }
13447
- .ina-time-picker__column::-webkit-scrollbar {
13448
- display: none;
13449
- }
13450
- .ina-time-picker__column:last-child {
13451
- border-right: none;
13452
- }
13453
- .ina-time-picker__column--hovered {
13454
- background-color: var(--ina-background-secondary);
13455
- }
13456
- /* Column Content */
13457
- .ina-time-picker__column-content {
13458
- padding: var(--ina-spacing-2);
13459
- }
13460
- /* Options */
13461
- .ina-time-picker__option {
13462
- display: flex;
13463
- align-items: center;
13464
- justify-content: center;
13465
- min-height: 32px;
13466
- padding: var(--ina-spacing-1) var(--ina-spacing-2);
13467
- color: var(--ina-text-secondary);
13468
- font-size: var(--ina-font-sm);
13469
- font-weight: var(--ina-font-medium);
13470
- cursor: pointer;
13471
- border-radius: var(--ina-radius-lg);
13472
- transition: all var(--ina-transition-fast);
13473
- -webkit-user-select: none;
13474
- -moz-user-select: none;
13475
- user-select: none;
13476
- }
13477
- .ina-time-picker__option:hover {
13478
- background-color: var(--ina-background-tertiary);
13479
- color: var(--ina-content-primary);
13480
- }
13481
- .ina-time-picker__option--hovered {
13482
- background-color: var(--ina-background-tertiary);
13483
- color: var(--ina-content-primary);
13484
- }
13485
- .ina-time-picker__option--selected {
13486
- background-color: var(--ina-primary-primary);
13487
- color: var(--ina-white);
13488
- }
13489
- .ina-time-picker__option--selected:hover {
13490
- background-color: var(--ina-primary-600);
13491
- color: var(--ina-white);
13492
- }
13493
- .ina-time-picker__option--disabled.ina-time-picker__option--selected,
13494
- .ina-time-picker__option--disabled.ina-time-picker__option--selected:hover {
13495
- background-color: var(--ina-background-secondary);
13496
- color: var(--ina-content-tertiary);
13497
- }
13498
- .ina-time-picker__option--disabled {
13499
- opacity: 0.5;
13500
- cursor: not-allowed;
13501
- color: var(--ina-content-tertiary);
13502
- }
13503
- .ina-time-picker__option--disabled:hover {
13504
- background-color: transparent;
13505
- color: var(--ina-content-tertiary);
13506
- }
13507
- /* Actions */
13508
- .ina-time-picker__actions {
13509
- display: grid;
13510
- grid-template-columns: 1fr auto; /* keep confirm on the far right */
13511
- align-items: center;
13512
- gap: var(--ina-spacing-2);
13513
- padding: var(--ina-spacing-2) var(--ina-spacing-3);
13514
- border-top: 1px solid var(--ina-stroke-primary);
13515
- background-color: var(--ina-background-secondary);
13516
- }
13517
- /* When both buttons exist, place them in two columns */
13518
- .ina-time-picker__action-button {
13519
- justify-self: start;
13520
- }
13521
- .ina-time-picker__confirm-button {
13522
- justify-self: end; /* always right aligned */
13523
- }
13524
- .ina-time-picker__action-button,
13525
- .ina-time-picker__confirm-button {
13526
- padding: var(--ina-spacing-1) var(--ina-spacing-3);
13527
- border: none;
13528
- border-radius: var(--ina-radius-lg);
13529
- font-size: var(--ina-font-sm);
13530
- font-weight: var(--ina-font-medium);
13531
- cursor: pointer;
13532
- transition: all var(--ina-transition-fast);
13533
- }
13534
- .ina-time-picker__action-button {
13535
- background-color: transparent;
13536
- color: var(--ina-primary-600);
13537
- }
13538
- .ina-time-picker__action-button:hover {
13539
- background-color: var(--ina-primary-50);
13540
- color: var(--ina-primary-700);
13541
- }
13542
- .ina-time-picker__confirm-button {
13543
- background-color: var(--ina-primary-primary);
13544
- color: var(--ina-white);
13545
- }
13546
- .ina-time-picker__confirm-button:hover {
13547
- background-color: var(--ina-primary-600);
13548
- }
13379
+ /* ... existing code ... */
13549
13380
  /* Focus styles - Sesuai design Figma */
13550
13381
  .ina-time-picker__wrapper:focus-within {
13551
- box-shadow: 0 1px 2px 0 rgba(31, 31, 31, 0.1), 0 0 0 3px #f3f3f3;
13382
+ box-shadow:
13383
+ inset 0 0 0 1px #fff,
13384
+ inset 0 0 0 2px var(--ina-primary-primary);
13552
13385
  outline: none;
13553
13386
  background-color: var(--ina-background-primary);
13554
13387
  }
@@ -13587,7 +13420,7 @@ dialog.bottom-sheet-dropdown {
13587
13420
  max-width: none;
13588
13421
  position: absolute;
13589
13422
  left: 0;
13590
- right: 0;
13423
+ right: auto; /* Allow unset right since width is 100% */
13591
13424
  }
13592
13425
 
13593
13426
  .ina-time-picker__content {
@@ -13974,20 +13807,24 @@ dialog.bottom-sheet-dropdown {
13974
13807
  }
13975
13808
  /* Hover states */
13976
13809
  .ina-toggle:not(.ina-toggle--disabled):hover .ina-toggle__track {
13977
- box-shadow: 0 0 6px 0 rgba(31, 31, 31, 0.1),
13810
+ box-shadow:
13811
+ 0 0 6px 0 rgba(31, 31, 31, 0.1),
13978
13812
  0 0 4px 6px rgba(31, 31, 31, 0.04);
13979
13813
  }
13980
13814
  .ina-toggle:not(.ina-toggle--disabled):hover .ina-toggle__thumb {
13981
- box-shadow: 0 0 6px 0 rgba(31, 31, 31, 0.1),
13815
+ box-shadow:
13816
+ 0 0 6px 0 rgba(31, 31, 31, 0.1),
13982
13817
  0 0 4px 6px rgba(31, 31, 31, 0.04);
13983
13818
  }
13984
13819
  /* Focus states */
13820
+ /* Focus states */
13985
13821
  .ina-toggle:focus-within .ina-toggle__track,
13986
13822
  .ina-toggle__input:focus + .ina-toggle__track {
13987
- outline: 2px solid var(--ina-guide-600);
13988
- outline-offset: 2px;
13989
- box-shadow: 0 0 6px 0 rgba(31, 31, 31, 0.1),
13990
- 0 0 4px 6px rgba(31, 31, 31, 0.04);
13823
+ outline: none;
13824
+ outline-offset: 0;
13825
+ box-shadow:
13826
+ 0 0 0 2px #fff,
13827
+ 0 0 0 3px var(--ina-primary-primary, #141414);
13991
13828
  }
13992
13829
  /* Active states */
13993
13830
  .ina-toggle:not(.ina-toggle--disabled):active .ina-toggle__thumb {
@@ -14026,12 +13863,15 @@ dialog.bottom-sheet-dropdown {
14026
13863
  [data-theme='dark']
14027
13864
  .ina-toggle:not(.ina-toggle--disabled):hover
14028
13865
  .ina-toggle__thumb {
14029
- box-shadow: 0 0 6px 0 rgba(31, 31, 31, 0.1),
13866
+ box-shadow:
13867
+ 0 0 6px 0 rgba(31, 31, 31, 0.1),
14030
13868
  0 0 4px 6px rgba(31, 31, 31, 0.04);
14031
13869
  }
13870
+ [data-theme='dark'] .ina-toggle:focus-within .ina-toggle__track,
14032
13871
  [data-theme='dark'] .ina-toggle__input:focus + .ina-toggle__track {
14033
- box-shadow: 0 0 6px 0 rgba(31, 31, 31, 0.1),
14034
- 0 0 4px 6px rgba(31, 31, 31, 0.04);
13872
+ box-shadow:
13873
+ 0 0 0 2px #fff,
13874
+ 0 0 0 3px var(--ina-primary-primary, #141414);
14035
13875
  }
14036
13876
  /* Reduced motion */
14037
13877
  @media (prefers-reduced-motion: reduce) {