@idds/styles 1.5.32 → 1.5.33

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
@@ -1256,220 +1256,421 @@ dfn {
1256
1256
  color: var(--ina-secondary);
1257
1257
  }
1258
1258
  /**
1259
- * ActionDropdown Component Styles
1259
+ * Dropdown Component Styles
1260
1260
  * Menggunakan BEM naming convention dengan prefix "ina-"
1261
1261
  */
1262
1262
  .ina-action-dropdown {
1263
- /* Root container dengan relative positioning */
1263
+ /* Base dropdown container */
1264
1264
  position: relative;
1265
1265
  display: inline-block;
1266
1266
  text-align: left;
1267
1267
  }
1268
+ /* Trigger variants */
1269
+ /* Trigger variants */
1268
1270
  .ina-action-dropdown__trigger {
1269
- /* Default trigger button */
1270
- padding: var(--ina-spacing-1);
1271
- border-radius: var(--ina-radius-base);
1272
- outline: none;
1273
1271
  cursor: pointer;
1274
- background: none;
1275
- border: none;
1276
- transition: var(--ina-transition-fast);
1272
+ transition: opacity var(--ina-transition-base);
1273
+ width: 100%; /* Ensure full width availability */
1274
+ }
1275
+ /* Standardized Trigger Button (Select-like look) */
1276
+ .ina-action-dropdown__trigger {
1277
+ width: 100%;
1278
+ display: flex;
1279
+ align-items: center;
1280
+ justify-content: space-between;
1281
+ border: 1px solid var(--ina-stroke-primary);
1282
+ border-radius: var(--ina-radius-lg);
1283
+ padding: var(--ina-spacing-2) var(--ina-spacing-4);
1284
+ background-color: var(--ina-background-primary);
1285
+ color: var(--ina-content-primary);
1286
+ cursor: pointer;
1287
+ font-size: var(--ina-font-sm);
1288
+ outline: none;
1289
+ transition: all var(--ina-transition-base);
1290
+ gap: var(--ina-spacing-2);
1291
+ min-height: 40px; /* Match standard input height */
1277
1292
  }
1278
1293
  .ina-action-dropdown__trigger:hover {
1279
- background-color: var(--ina-neutral-100);
1294
+ background-color: var(--ina-background-secondary);
1280
1295
  }
1281
- .ina-action-dropdown__trigger:focus {
1282
- outline: 2px solid var(--ina-guide-500);
1283
- outline-offset: 2px;
1296
+ /* Active/Open State for Trigger Button */
1297
+ .ina-action-dropdown__trigger--open,
1298
+ .ina-action-dropdown__trigger:focus-within {
1299
+ border-color: var(--ina-stroke-tertiary, #141414);
1300
+ background: var(--ina-background-primary, #fff);
1301
+ box-shadow:
1302
+ 0 0 0 2px #fff,
1303
+ 0 0 0 3px var(--ina-primary-primary, #141414);
1284
1304
  }
1285
- .ina-action-dropdown__trigger:focus-visible {
1286
- outline: 2px solid var(--ina-guide-500);
1287
- outline-offset: 2px;
1305
+ .ina-action-dropdown__label {
1306
+ flex: 1;
1307
+ text-align: left;
1308
+ overflow: hidden;
1309
+ text-overflow: ellipsis;
1310
+ white-space: nowrap;
1311
+ }
1312
+ .ina-action-dropdown__icon {
1313
+ flex-shrink: 0;
1314
+ color: var(--ina-content-tertiary);
1315
+ transition: transform var(--ina-transition-base);
1316
+ }
1317
+ .ina-action-dropdown__trigger--open .ina-action-dropdown__icon {
1318
+ transform: rotate(180deg);
1319
+ }
1320
+ .ina-action-dropdown__trigger--disabled {
1321
+ opacity: 0.6;
1322
+ cursor: not-allowed;
1323
+ pointer-events: none;
1288
1324
  }
1325
+ /* Menu container */
1289
1326
  .ina-action-dropdown__menu {
1290
- /* Positioned dropdown menu */
1291
1327
  position: absolute;
1292
- width: 10rem; /* 160px */
1293
- background-color: var(--ina-neutral-25); /* white */
1328
+ background-color: var(--ina-background-primary);
1294
1329
  border: 1px solid var(--ina-stroke-primary);
1295
1330
  border-radius: var(--ina-radius-lg);
1296
1331
  box-shadow: var(--ina-shadow-lg);
1297
1332
  z-index: 1000;
1333
+ opacity: 0;
1334
+ transform: translateY(-0.5rem);
1335
+ transition:
1336
+ opacity var(--ina-transition-duration-200) ease-out,
1337
+ transform var(--ina-transition-duration-200) ease-out;
1338
+ min-height: -moz-fit-content;
1339
+ min-height: fit-content;
1340
+ min-width: 100%; /* Default match trigger width */
1341
+ width: -moz-max-content;
1342
+ width: max-content; /* Allow content to dictate width, but at least 100% of trigger */
1343
+ pointer-events: none;
1344
+ visibility: hidden;
1345
+ padding: var(--ina-spacing-0-5);
1346
+ margin-top: var(--ina-spacing-1);
1347
+ }
1348
+ .ina-action-dropdown__menu--visible {
1349
+ opacity: 1;
1350
+ pointer-events: auto;
1351
+ visibility: visible;
1352
+ transform: translateY(0);
1353
+ }
1354
+ /* ... existing styles ... */
1355
+ /* Width variants */
1356
+ .ina-action-dropdown__menu--width-auto {
1357
+ width: auto;
1358
+ min-width: 160px;
1359
+ }
1360
+ .ina-action-dropdown__menu--width-sm {
1361
+ min-width: 120px;
1362
+ width: auto;
1298
1363
  }
1299
- /* Vertical positioning */
1300
- .ina-action-dropdown__menu--bottom {
1301
- top: calc(100% + 0.5rem); /* top-full mt-2 equivalent */
1364
+ .ina-action-dropdown__menu--width-md {
1365
+ min-width: 160px;
1366
+ width: auto;
1302
1367
  }
1303
- .ina-action-dropdown__menu--top {
1304
- bottom: calc(100% + 0.5rem); /* bottom-full mb-2 equivalent */
1368
+ .ina-action-dropdown__menu--width-lg {
1369
+ min-width: 200px;
1370
+ width: auto;
1305
1371
  }
1306
- /* Horizontal positioning */
1307
- .ina-action-dropdown__menu--left {
1308
- right: 0; /* right-0 equivalent */
1372
+ .ina-action-dropdown__menu--width-xl {
1373
+ min-width: 240px;
1374
+ width: auto;
1309
1375
  }
1310
- .ina-action-dropdown__menu--right {
1311
- left: 0; /* left-0 equivalent */
1376
+ .ina-action-dropdown__menu--width-full {
1377
+ width: 100%;
1312
1378
  }
1379
+ /* Menu list */
1313
1380
  .ina-action-dropdown__list {
1314
- /* List container untuk menu items */
1315
- padding: var(--ina-spacing-1) 0; /* py-1 equivalent */
1381
+ padding: var(--ina-spacing-1) 0;
1316
1382
  margin: 0;
1317
1383
  list-style: none;
1384
+ background-color: inherit;
1318
1385
  }
1386
+ /* Menu items */
1319
1387
  .ina-action-dropdown__item {
1320
- /* Individual list item */
1321
1388
  width: 100%;
1322
1389
  text-align: left;
1323
- padding: var(--ina-spacing-2) var(--ina-spacing-4); /* px-4 py-2 equivalent */
1390
+ padding: var(--ina-spacing-2) var(--ina-spacing-4);
1324
1391
  font-size: var(--ina-font-sm);
1392
+ color: var(--ina-content-primary);
1393
+ background: none;
1394
+ border: none;
1395
+ cursor: pointer;
1325
1396
  -webkit-user-select: none;
1326
1397
  -moz-user-select: none;
1327
- user-select: none; /* select-none equivalent */
1328
- cursor: pointer;
1329
- transition: var(--ina-transition-fast);
1398
+ user-select: none;
1399
+ transition: background-color var(--ina-transition-base);
1400
+ display: flex;
1401
+ align-items: center;
1402
+ gap: var(--ina-spacing-2);
1403
+ margin-bottom: 0 !important;
1330
1404
  }
1331
1405
  .ina-action-dropdown__item:hover {
1332
- background-color: var(--ina-neutral-100);
1406
+ background-color: var(--ina-background-secondary);
1333
1407
  }
1334
1408
  .ina-action-dropdown__item:focus {
1335
1409
  outline: none;
1336
- background-color: var(--ina-neutral-200);
1337
- }
1338
- /* Animation untuk dropdown appearance */
1339
- .ina-action-dropdown__menu {
1340
- animation: fadeIn 150ms ease-in-out;
1410
+ background-color: var(--ina-primary-100);
1411
+ color: var(--ina-primary-600);
1341
1412
  }
1342
- @keyframes fadeIn {
1343
- 0% {
1344
- opacity: 0;
1345
- transform: scale(0.95);
1346
- }
1347
- 100% {
1348
- opacity: 1;
1349
- transform: scale(1);
1350
- }
1413
+ .ina-action-dropdown__item:active {
1414
+ background-color: var(--ina-background-tertiary);
1351
1415
  }
1352
- /* Focus styles untuk accessibility */
1353
- .ina-action-dropdown__trigger[aria-expanded='true'] {
1354
- background-color: var(--ina-neutral-100);
1416
+ /* Item variants */
1417
+ .ina-action-dropdown__item--danger {
1418
+ color: var(--ina-negative-600);
1355
1419
  }
1356
- /* Responsive adjustments */
1357
- @media (max-width: 640px) {
1358
- .ina-action-dropdown__item {
1359
- font-size: var(--ina-font-xs); /* Turun dari sm ke xs */
1360
- }
1361
-
1362
- .ina-action-dropdown__menu {
1363
- width: 9rem; /* Sedikit lebih kecil di mobile */
1364
- }
1420
+ .ina-action-dropdown__item--danger:hover {
1421
+ background-color: var(--ina-negative-100);
1365
1422
  }
1366
- /* Dark mode support (future consideration) */
1367
- /* @media (prefers-color-scheme: dark) {
1368
- .ina-action-dropdown__menu {
1369
- background-color: var(--ina-neutral-900);
1370
- border-color: var(--ina-neutral-700);
1371
- }
1372
-
1373
- .ina-action-dropdown__item:hover {
1374
- background-color: var(--ina-neutral-800);
1375
- }
1376
-
1377
- .ina-action-dropdown__trigger:hover {
1378
- background-color: var(--ina-neutral-800);
1379
- }
1380
- } */
1381
- /**
1382
- * Alert Component Styles
1383
- * Menggunakan BEM naming convention dengan prefix "ina-" dan variant modifiers
1384
- */
1385
- .ina-alert {
1386
- /* Base alert styling */
1387
- width: 100%;
1388
- display: flex;
1389
- align-items: flex-start;
1390
- gap: var(--ina-spacing-2);
1391
- border-radius: var(--ina-radius-lg);
1392
- padding: var(--ina-spacing-4);
1393
- border: 1px solid;
1394
- box-sizing: border-box;
1423
+ .ina-action-dropdown__item--warning {
1424
+ color: var(--ina-warning-600);
1395
1425
  }
1396
- .ina-alert__icon {
1397
- /* Container untuk icon/variant */
1398
- flex-shrink: 0;
1399
- display: flex;
1400
- align-items: center;
1401
- justify-content: center;
1426
+ .ina-action-dropdown__item--warning:hover {
1427
+ background-color: var(--ina-warning-100);
1402
1428
  }
1403
- .ina-alert__content {
1404
- /* Main content area */
1405
- display: flex;
1406
- flex-direction: column;
1407
- flex: 1;
1408
- gap: 0;
1429
+ .ina-action-dropdown__item--success {
1430
+ color: var(--ina-positive-600);
1409
1431
  }
1410
- .ina-alert__text-section {
1411
- /* Container untuk title dan description */
1412
- display: flex;
1413
- flex-direction: column;
1414
- gap: 0;
1432
+ .ina-action-dropdown__item--success:hover {
1433
+ background-color: var(--ina-positive-100);
1415
1434
  }
1416
- .ina-alert__title {
1417
- /* Alert title */
1418
- font-weight: var(--ina-font-semibold);
1419
- font-size: var(--ina-font-sm);
1420
- line-height: var(--ina-line-height-sm);
1421
- margin: 0;
1435
+ .ina-action-dropdown__item--disabled {
1436
+ opacity: 0.5;
1437
+ cursor: not-allowed;
1438
+ color: var(--ina-content-tertiary);
1422
1439
  }
1423
- .ina-alert__description {
1424
- /* Alert description/subtitle */
1425
- font-size: var(--ina-font-xs);
1426
- line-height: var(--ina-line-height-xs);
1427
- margin: 0;
1428
- margin-top: var(--ina-spacing-1);
1429
- color: var(--ina-content-primary, var(--ina-neutral-800));
1440
+ .ina-action-dropdown__item--disabled:hover {
1441
+ background-color: transparent;
1430
1442
  }
1431
- .ina-alert__action {
1432
- /* Optional action node area */
1433
- margin-left: var(--ina-spacing-4);
1443
+ /* Item with icons */
1444
+ .ina-action-dropdown__item-icon {
1434
1445
  flex-shrink: 0;
1446
+ width: 16px;
1447
+ height: 16px;
1435
1448
  }
1436
- .ina-alert__close-button {
1437
- /* Close button */
1438
- flex-shrink: 0;
1439
- background: none;
1440
- border: none;
1441
- cursor: pointer;
1442
- padding: 0;
1443
- display: flex;
1444
- align-items: center;
1445
- justify-content: center;
1446
- color: var(--ina-content-primary, var(--ina-neutral-800));
1447
-
1448
- /* Focus styles */
1449
- outline: none;
1449
+ .ina-action-dropdown__item-content {
1450
+ flex: 1;
1451
+ min-width: 0;
1450
1452
  }
1451
- .ina-alert__close-button:focus {
1452
- outline: 2px solid var(--ina-guide-500);
1453
- outline-offset: 2px;
1454
- border-radius: var(--ina-radius-sm);
1453
+ .ina-action-dropdown__item-description {
1454
+ font-size: var(--ina-font-xs);
1455
+ color: var(--ina-content-secondary);
1456
+ margin-top: var(--ina-spacing-0-5);
1455
1457
  }
1456
- .ina-alert__close-icon {
1457
- /* Icon di dalam close button */
1458
- transition: stroke-width 150ms ease;
1458
+ /* Separators */
1459
+ .ina-action-dropdown__separator {
1460
+ height: 1px;
1461
+ background-color: var(--ina-stroke-primary);
1462
+ margin: var(--ina-spacing-1) var(--ina-spacing-4);
1459
1463
  }
1460
- .ina-alert__close-button:hover .ina-alert__close-icon {
1461
- stroke-width: 2;
1464
+ /* Dividers */
1465
+ .ina-action-dropdown__divider {
1466
+ height: var(--ina-spacing-4);
1462
1467
  }
1463
- /* Variant modifiers */
1464
- .ina-alert--neutral {
1465
- background-color: var(--ina-background-primary, var(--ina-neutral-25));
1466
- border-color: var(--ina-stroke-tertiary);
1468
+ /* Animation variants */
1469
+ .ina-action-dropdown__menu--animation-fade {
1470
+ transform: translateY(0);
1471
+ transition: opacity var(--ina-transition-duration-200) ease-out;
1467
1472
  }
1468
- .ina-alert--neutral .ina-alert__icon,
1469
- .ina-alert--neutral .ina-alert__title {
1470
- color: var(--ina-content-primary, var(--ina-neutral-800));
1473
+ .ina-action-dropdown__menu--animation-slide-up {
1474
+ transform: translateY(1rem);
1475
+ transition:
1476
+ opacity var(--ina-transition-duration-200) ease-out,
1477
+ transform var(--ina-transition-duration-200) ease-out;
1471
1478
  }
1472
- .ina-alert--info {
1479
+ .ina-action-dropdown__menu--animation-slide-down {
1480
+ transform: translateY(-1rem);
1481
+ transition:
1482
+ opacity var(--ina-transition-duration-200) ease-out,
1483
+ transform var(--ina-transition-duration-200) ease-out;
1484
+ }
1485
+ .ina-action-dropdown__menu--animation-scale {
1486
+ transform: scale(0.95);
1487
+ transition:
1488
+ opacity var(--ina-transition-duration-200) ease-out,
1489
+ transform var(--ina-transition-duration-200) ease-out;
1490
+ }
1491
+ /* All visible states */
1492
+ .ina-action-dropdown__menu--animation-fade.ina-action-dropdown__menu--visible,
1493
+ .ina-action-dropdown__menu--animation-slide-up.ina-action-dropdown__menu--visible,
1494
+ .ina-action-dropdown__menu--animation-slide-down.ina-action-dropdown__menu--visible,
1495
+ .ina-action-dropdown__menu--animation-scale.ina-action-dropdown__menu--visible {
1496
+ transform: translateY(0) scale(1);
1497
+ }
1498
+ /* Backdrop click area */
1499
+ .ina-action-dropdown__backdrop {
1500
+ position: fixed;
1501
+ inset: 0;
1502
+ z-index: 999;
1503
+ }
1504
+ /* Grouped items */
1505
+ .ina-action-dropdown__group {
1506
+ margin: var(--ina-spacing-2) 0;
1507
+ }
1508
+ .ina-action-dropdown__group:first-child {
1509
+ margin-top: 0;
1510
+ }
1511
+ .ina-action-dropdown__group:last-child {
1512
+ margin-bottom: 0;
1513
+ }
1514
+ .ina-action-dropdown__group-header {
1515
+ padding: var(--ina-spacing-1) var(--ina-spacing-4) var(--ina-spacing-0-5);
1516
+ font-size: var(--ina-font-xs);
1517
+ font-weight: var(--ina-font-medium);
1518
+ color: var(--ina-content-secondary);
1519
+ text-transform: uppercase;
1520
+ letter-spacing: 0.05em;
1521
+ }
1522
+ /* Loading states */
1523
+ .ina-action-dropdown__loading {
1524
+ padding: var(--ina-spacing-2) var(--ina-spacing-4);
1525
+ text-align: center;
1526
+ color: var(--ina-content-secondary);
1527
+ font-size: var(--ina-font-sm);
1528
+ }
1529
+ .ina-action-dropdown__spinner {
1530
+ display: inline-block;
1531
+ width: 16px;
1532
+ height: 16px;
1533
+ border: 2px solid var(--ina-primary-100);
1534
+ border-radius: 50%;
1535
+ border-top-color: var(--ina-primary-500);
1536
+ animation: spin 1s linear infinite;
1537
+ }
1538
+ @keyframes spin {
1539
+ to {
1540
+ transform: rotate(360deg);
1541
+ }
1542
+ }
1543
+ /* Responsive adjustments */
1544
+ @media (max-width: 640px) {
1545
+ .ina-action-dropdown__menu--width-lg,
1546
+ .ina-action-dropdown__menu--width-xl {
1547
+ width: calc(100vw - var(--ina-spacing-8));
1548
+ max-width: 300px;
1549
+ }
1550
+ }
1551
+ @media (max-width: 768px) {
1552
+ .ina-action-dropdown__item {
1553
+ padding: var(--ina-spacing-3) var(--ina-spacing-4);
1554
+ font-size: var(--ina-font-base);
1555
+ }
1556
+ }
1557
+ /* Scrollable content */
1558
+ .ina-action-dropdown__menu--scrollable {
1559
+ max-height: 300px;
1560
+ overflow-y: auto;
1561
+ scrollbar-width: thin;
1562
+ scrollbar-color: var(--ina-content-tertiary) var(--ina-background-tertiary);
1563
+ }
1564
+ .ina-action-dropdown__menu--scrollable::-webkit-scrollbar {
1565
+ width: 6px;
1566
+ }
1567
+ .ina-action-dropdown__menu--scrollable::-webkit-scrollbar-track {
1568
+ background: var(--ina-background-tertiary);
1569
+ border-radius: 3px;
1570
+ }
1571
+ .ina-action-dropdown__menu--scrollable::-webkit-scrollbar-thumb {
1572
+ background-color: var(--ina-content-tertiary);
1573
+ border-radius: 3px;
1574
+ }
1575
+ .ina-action-dropdown__menu--scrollable::-webkit-scrollbar-thumb:hover {
1576
+ background-color: var(--ina-content-secondary);
1577
+ }
1578
+ /* Focus management */
1579
+ .ina-action-dropdown__menu:focus-within .ina-action-dropdown__item:focus {
1580
+ background-color: var(--ina-primary-100);
1581
+ }
1582
+ /**
1583
+ * Alert Component Styles
1584
+ * Menggunakan BEM naming convention dengan prefix "ina-" dan variant modifiers
1585
+ */
1586
+ .ina-alert {
1587
+ /* Base alert styling */
1588
+ width: 100%;
1589
+ display: flex;
1590
+ align-items: flex-start;
1591
+ gap: var(--ina-spacing-2);
1592
+ border-radius: var(--ina-radius-lg);
1593
+ padding: var(--ina-spacing-4);
1594
+ border: 1px solid;
1595
+ box-sizing: border-box;
1596
+ }
1597
+ .ina-alert__icon {
1598
+ /* Container untuk icon/variant */
1599
+ flex-shrink: 0;
1600
+ display: flex;
1601
+ align-items: center;
1602
+ justify-content: center;
1603
+ }
1604
+ .ina-alert__content {
1605
+ /* Main content area */
1606
+ display: flex;
1607
+ flex-direction: column;
1608
+ flex: 1;
1609
+ gap: 0;
1610
+ }
1611
+ .ina-alert__text-section {
1612
+ /* Container untuk title dan description */
1613
+ display: flex;
1614
+ flex-direction: column;
1615
+ gap: 0;
1616
+ }
1617
+ .ina-alert__title {
1618
+ /* Alert title */
1619
+ font-weight: var(--ina-font-semibold);
1620
+ font-size: var(--ina-font-sm);
1621
+ line-height: var(--ina-line-height-sm);
1622
+ margin: 0;
1623
+ }
1624
+ .ina-alert__description {
1625
+ /* Alert description/subtitle */
1626
+ font-size: var(--ina-font-xs);
1627
+ line-height: var(--ina-line-height-xs);
1628
+ margin: 0;
1629
+ margin-top: var(--ina-spacing-1);
1630
+ color: var(--ina-content-primary, var(--ina-neutral-800));
1631
+ }
1632
+ .ina-alert__action {
1633
+ /* Optional action node area */
1634
+ margin-left: var(--ina-spacing-4);
1635
+ flex-shrink: 0;
1636
+ }
1637
+ .ina-alert__close-button {
1638
+ /* Close button */
1639
+ flex-shrink: 0;
1640
+ background: none;
1641
+ border: none;
1642
+ cursor: pointer;
1643
+ padding: 0;
1644
+ display: flex;
1645
+ align-items: center;
1646
+ justify-content: center;
1647
+ color: var(--ina-content-primary, var(--ina-neutral-800));
1648
+
1649
+ /* Focus styles */
1650
+ outline: none;
1651
+ }
1652
+ .ina-alert__close-button:focus {
1653
+ outline: 2px solid var(--ina-guide-500);
1654
+ outline-offset: 2px;
1655
+ border-radius: var(--ina-radius-sm);
1656
+ }
1657
+ .ina-alert__close-icon {
1658
+ /* Icon di dalam close button */
1659
+ transition: stroke-width 150ms ease;
1660
+ }
1661
+ .ina-alert__close-button:hover .ina-alert__close-icon {
1662
+ stroke-width: 2;
1663
+ }
1664
+ /* Variant modifiers */
1665
+ .ina-alert--neutral {
1666
+ background-color: var(--ina-background-primary, var(--ina-neutral-25));
1667
+ border-color: var(--ina-stroke-tertiary);
1668
+ }
1669
+ .ina-alert--neutral .ina-alert__icon,
1670
+ .ina-alert--neutral .ina-alert__title {
1671
+ color: var(--ina-content-primary, var(--ina-neutral-800));
1672
+ }
1673
+ .ina-alert--info {
1473
1674
  background-color: var(--ina-guide-100, var(--ina-blue-100));
1474
1675
  border-color: var(--ina-guide-500, var(--ina-blue-500));
1475
1676
  }
@@ -1943,8 +2144,8 @@ dfn {
1943
2144
  border-color: var(--ina-stroke-tertiary, #141414);
1944
2145
  background: var(--ina-background-primary, #ffffff);
1945
2146
  box-shadow:
1946
- 0 0 0 1px #fff,
1947
- 0 0 0 2px var(--ina-primary-primary, #141414);
2147
+ 0 0 0 2px #fff,
2148
+ 0 0 0 3px var(--ina-primary-primary, #141414);
1948
2149
  }
1949
2150
  .ina-basic-dropdown__trigger-content {
1950
2151
  flex: 1;
@@ -3312,22 +3513,22 @@ dialog.bottom-sheet-dropdown {
3312
3513
  .ina-checkbox__input:focus + .ina-checkbox__box {
3313
3514
  outline: none;
3314
3515
  box-shadow:
3315
- 0 0 0 1px #fff,
3316
- 0 0 0 2px var(--ina-primary-primary);
3516
+ 0 0 0 2px #fff,
3517
+ 0 0 0 3px var(--ina-primary-primary, #141414);
3317
3518
  }
3318
3519
  /* Focus state untuk indeterminate checkbox */
3319
3520
  .ina-checkbox__input:focus + .ina-checkbox__box--indeterminate {
3320
3521
  outline: none;
3321
3522
  box-shadow:
3322
- 0 0 0 1px #fff,
3323
- 0 0 0 2px var(--ina-primary-primary);
3523
+ 0 0 0 2px #fff,
3524
+ 0 0 0 3px var(--ina-primary-primary, #141414);
3324
3525
  }
3325
3526
  /* Focus state untuk checked checkbox */
3326
3527
  .ina-checkbox__input:focus + .ina-checkbox__box--checked {
3327
3528
  outline: none;
3328
3529
  box-shadow:
3329
- 0 0 0 1px #fff,
3330
- 0 0 0 2px var(--ina-primary-primary);
3530
+ 0 0 0 2px #fff,
3531
+ 0 0 0 3px var(--ina-primary-primary, #141414);
3331
3532
  }
3332
3533
  /* Invalid state yang tidak disabled */
3333
3534
  .ina-checkbox:not(.ina-checkbox--disabled) .ina-checkbox__box--invalid:hover {
@@ -5420,581 +5621,221 @@ dialog.bottom-sheet-dropdown {
5420
5621
  gap: var(--ina-spacing-2);
5421
5622
  }
5422
5623
  .ina-drawer__footer--position-center {
5423
- display: flex;
5424
- justify-content: center;
5425
- gap: var(--ina-spacing-2);
5426
- }
5427
- .ina-drawer__footer--position-between {
5428
- display: flex;
5429
- justify-content: space-between;
5430
- align-items: center;
5431
- }
5432
- /* Animation states */
5433
- .ina-drawer--closing {
5434
- animation: overlayFadeOut 0.2s cubic-bezier(0.4, 0, 0.2, 1) forwards;
5435
- }
5436
- @keyframes overlayFadeOut {
5437
- from {
5438
- opacity: 1;
5439
- }
5440
- to {
5441
- opacity: 0;
5442
- }
5443
- }
5444
- /* Position-specific closing animations with smooth easing */
5445
- .ina-drawer--closing.ina-drawer--position-right .ina-drawer__panel {
5446
- animation: panelSlideOutRight 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
5447
- }
5448
- .ina-drawer--closing.ina-drawer--position-left .ina-drawer__panel {
5449
- animation: panelSlideOutLeft 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
5450
- }
5451
- .ina-drawer--closing.ina-drawer--position-top .ina-drawer__panel {
5452
- animation: panelSlideOutTop 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
5453
- }
5454
- .ina-drawer--closing.ina-drawer--position-bottom .ina-drawer__panel {
5455
- animation: panelSlideOutBottom 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
5456
- }
5457
- /* Mobile: left/right use bottom closing animation */
5458
- @media (max-width: 640px) {
5459
- .ina-drawer--closing.ina-drawer--position-left .ina-drawer__panel,
5460
- .ina-drawer--closing.ina-drawer--position-right .ina-drawer__panel {
5461
- animation: panelSlideOutBottom 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
5462
- }
5463
- }
5464
- @keyframes panelSlideOut {
5465
- from {
5466
- opacity: 1;
5467
- transform: scale(1);
5468
- }
5469
- to {
5470
- opacity: 0;
5471
- transform: scale(0.95);
5472
- }
5473
- }
5474
- /* Position-specific slide-out animations with smooth easing */
5475
- @keyframes panelSlideOutRight {
5476
- 0% {
5477
- opacity: 1;
5478
- transform: translateX(0);
5479
- }
5480
- 100% {
5481
- opacity: 0;
5482
- transform: translateX(100%);
5483
- }
5484
- }
5485
- @keyframes panelSlideOutLeft {
5486
- 0% {
5487
- opacity: 1;
5488
- transform: translateX(0);
5489
- }
5490
- 100% {
5491
- opacity: 0;
5492
- transform: translateX(-100%);
5493
- }
5494
- }
5495
- @keyframes panelSlideOutTop {
5496
- 0% {
5497
- opacity: 1;
5498
- transform: translateY(0);
5499
- }
5500
- 100% {
5501
- opacity: 0;
5502
- transform: translateY(-100%);
5503
- }
5504
- }
5505
- @keyframes panelSlideOutBottom {
5506
- 0% {
5507
- opacity: 1;
5508
- transform: translateY(0);
5509
- }
5510
- 100% {
5511
- opacity: 0;
5512
- transform: translateY(100%);
5513
- }
5514
- }
5515
- /* Position-specific animations - Fixed positioning */
5516
- .ina-drawer--position-right .ina-drawer__panel {
5517
- /* Panel should be visible by default, not hidden */
5518
- transform: translateX(0);
5519
- }
5520
- .ina-drawer--position-left .ina-drawer__panel {
5521
- /* Panel should be visible by default, not hidden */
5522
- transform: translateX(0);
5523
- }
5524
- .ina-drawer--position-top .ina-drawer__panel {
5525
- /* Panel should be visible by default, not hidden */
5526
- transform: translateY(0);
5527
- }
5528
- .ina-drawer--position-bottom .ina-drawer__panel {
5529
- /* Panel should be visible by default, not hidden */
5530
- transform: translateY(0);
5531
- }
5532
- /* Mobile: left/right use bottom transform */
5533
- @media (max-width: 640px) {
5534
- .ina-drawer--position-left .ina-drawer__panel,
5535
- .ina-drawer--position-right .ina-drawer__panel {
5536
- transform: translateY(0);
5537
- }
5538
- }
5539
- /* Variant styles */
5540
- .ina-drawer--variant-glass .ina-drawer__panel {
5541
- background-color: rgba(255, 255, 255, 0.95);
5542
- backdrop-filter: blur(20px);
5543
- }
5544
- .ina-drawer--variant-floating .ina-drawer__panel {
5545
- margin: var(--ina-spacing-8);
5546
- border-radius: var(--ina-radius-xl);
5547
- box-shadow: var(--ina-shadow-2xl);
5548
- }
5549
- .ina-drawer--variant-minimal .ina-drawer__panel {
5550
- box-shadow: none;
5551
- border: 1px solid var(--ina-stroke-primary);
5552
- }
5553
- /* Size variants with max-width */
5554
- .ina-drawer__panel--fullscreen {
5555
- width: 100vw !important;
5556
- height: 100vh !important;
5557
- max-width: 100vw !important;
5558
- max-height: 100vh !important;
5559
- margin: 0 !important;
5560
- border-radius: 0 !important;
5561
- }
5562
- /* Dark mode support */
5563
- /* @media (prefers-color-scheme: dark) {
5564
- .ina-drawer__backdrop {
5565
- background-color: rgba(0, 0, 0, 0.7);
5566
- }
5567
-
5568
- .ina-drawer__panel {
5569
- background-color: var(--ina-background-dark-primary);
5570
- border-color: var(--ina-stroke-primary-dark);
5571
- }
5572
-
5573
- .ina-drawer__header {
5574
- border-color: var(--ina-stroke-primary-dark);
5575
- }
5576
-
5577
- .ina-drawer__title {
5578
- color: var(--ina-content-dark-primary);
5579
- }
5580
-
5581
- .ina-drawer__close-button {
5582
- color: var(--ina-content-dark-secondary);
5583
- }
5584
-
5585
- .ina-drawer__close-button:hover {
5586
- background-color: var(--ina-neutral-800);
5587
- color: var(--ina-content-dark-primary);
5588
- }
5589
-
5590
- .ina-drawer__footer {
5591
- border-color: var(--ina-stroke-primary-dark);
5592
- }
5593
-
5594
- .ina-drawer--variant-glass .ina-drawer__panel {
5595
- background-color: rgba(0, 0, 0, 0.95);
5596
- border-color: rgba(255, 255, 255, 0.1);
5597
- }
5598
-
5599
- .ina-drawer--variant-minimal .ina-drawer__panel {
5600
- border-color: var(--ina-stroke-primary-dark);
5601
- }
5602
- } */
5603
- /* Accessibility improvements */
5604
- .ina-drawer__close-button:focus-visible {
5605
- outline: 2px solid var(--ina-primary-500);
5606
- outline-offset: 2px;
5607
- }
5608
- /* High contrast mode */
5609
- @media (prefers-contrast: high) {
5610
- .ina-drawer__panel {
5611
- border: 2px solid var(--ina-content-primary);
5612
- }
5613
-
5614
- .ina-drawer__header,
5615
- .ina-drawer__footer {
5616
- border-width: 2px;
5617
- }
5618
- }
5619
- /* Reduced motion */
5620
- @media (prefers-reduced-motion: reduce) {
5621
- .ina-drawer,
5622
- .ina-drawer__backdrop,
5623
- .ina-drawer__panel,
5624
- .ina-drawer__close-button {
5625
- animation: none;
5626
- transition: none;
5627
- }
5628
-
5629
- .ina-drawer__panel {
5630
- transform: none !important;
5631
- }
5632
- }
5633
- /* Print styles */
5634
- @media print {
5635
- .ina-drawer {
5636
- display: none;
5637
- }
5638
- }
5639
- /**
5640
- * Dropdown Component Styles
5641
- * Menggunakan BEM naming convention dengan prefix "ina-"
5642
- */
5643
- .ina-dropdown {
5644
- /* Base dropdown container */
5645
- position: relative;
5646
- display: inline-block;
5647
- text-align: left;
5648
- }
5649
- /* Trigger variants */
5650
- /* Trigger variants */
5651
- .ina-dropdown__trigger {
5652
- cursor: pointer;
5653
- transition: opacity var(--ina-transition-base);
5654
- width: 100%; /* Ensure full width availability */
5655
- }
5656
- /* Standardized Trigger Button (Select-like look) */
5657
- .ina-dropdown__trigger-button {
5658
- width: 100%;
5659
- display: flex;
5660
- align-items: center;
5661
- justify-content: space-between;
5662
- border: 1px solid var(--ina-stroke-primary);
5663
- border-radius: var(--ina-radius-lg);
5664
- padding: var(--ina-spacing-2) var(--ina-spacing-4);
5665
- background-color: var(--ina-background-primary);
5666
- color: var(--ina-content-primary);
5667
- cursor: pointer;
5668
- font-size: var(--ina-font-sm);
5669
- outline: none;
5670
- transition: all var(--ina-transition-base);
5671
- gap: var(--ina-spacing-2);
5672
- min-height: 40px; /* Match standard input height */
5673
- }
5674
- .ina-dropdown__trigger-button:hover {
5675
- background-color: var(--ina-background-secondary);
5676
- }
5677
- /* Active/Open State for Trigger Button */
5678
- .ina-dropdown__trigger-button--open,
5679
- .ina-dropdown__trigger-button:focus-within {
5680
- border-color: var(--ina-stroke-tertiary, #141414);
5681
- background: var(--ina-background-primary, #fff);
5682
- box-shadow:
5683
- 0 0 0 1px #fff,
5684
- 0 0 0 2px var(--ina-primary-primary, #141414);
5685
- }
5686
- .ina-dropdown__trigger-content {
5687
- flex: 1;
5688
- text-align: left;
5689
- overflow: hidden;
5690
- text-overflow: ellipsis;
5691
- white-space: nowrap;
5692
- }
5693
- .ina-dropdown__trigger-icon {
5694
- flex-shrink: 0;
5695
- color: var(--ina-content-tertiary);
5696
- transition: transform var(--ina-transition-base);
5697
- }
5698
- .ina-dropdown__trigger-button--open .ina-dropdown__trigger-icon {
5699
- transform: rotate(180deg);
5700
- }
5701
- .ina-dropdown__trigger--disabled {
5702
- opacity: 0.6;
5703
- cursor: not-allowed;
5704
- pointer-events: none;
5705
- }
5706
- /* Menu container */
5707
- .ina-dropdown__menu {
5708
- position: absolute;
5709
- background-color: var(--ina-background-primary);
5710
- border: 1px solid var(--ina-stroke-primary);
5711
- border-radius: var(--ina-radius-lg);
5712
- box-shadow: var(--ina-shadow-lg);
5713
- z-index: 1000;
5714
- opacity: 0;
5715
- transform: translateY(-0.5rem);
5716
- transition:
5717
- opacity var(--ina-transition-duration-200) ease-out,
5718
- transform var(--ina-transition-duration-200) ease-out;
5719
- min-height: -moz-fit-content;
5720
- min-height: fit-content;
5721
- min-width: 100%; /* Default match trigger width */
5722
- width: -moz-max-content;
5723
- width: max-content; /* Allow content to dictate width, but at least 100% of trigger */
5724
- pointer-events: none;
5725
- visibility: hidden;
5726
- padding: var(--ina-spacing-0-5);
5727
- margin-top: var(--ina-spacing-1);
5728
- }
5729
- .ina-dropdown__menu--visible {
5730
- opacity: 1;
5731
- pointer-events: auto;
5732
- visibility: visible;
5733
- transform: translateY(0);
5734
- }
5735
- /* ... existing styles ... */
5736
- /* Width variants */
5737
- .ina-dropdown__menu--width-auto {
5738
- width: auto;
5739
- min-width: 160px;
5740
- }
5741
- .ina-dropdown__menu--width-sm {
5742
- min-width: 120px;
5743
- width: auto;
5744
- }
5745
- .ina-dropdown__menu--width-md {
5746
- min-width: 160px;
5747
- width: auto;
5748
- }
5749
- .ina-dropdown__menu--width-lg {
5750
- min-width: 200px;
5751
- width: auto;
5752
- }
5753
- .ina-dropdown__menu--width-xl {
5754
- min-width: 240px;
5755
- width: auto;
5756
- }
5757
- .ina-dropdown__menu--width-full {
5758
- width: 100%;
5759
- }
5760
- /* Menu list */
5761
- .ina-dropdown__list {
5762
- padding: var(--ina-spacing-1) 0;
5763
- margin: 0;
5764
- list-style: none;
5765
- background-color: inherit;
5766
- }
5767
- /* Menu items */
5768
- .ina-dropdown__item {
5769
- width: 100%;
5770
- text-align: left;
5771
- padding: var(--ina-spacing-2) var(--ina-spacing-4);
5772
- font-size: var(--ina-font-sm);
5773
- color: var(--ina-content-primary);
5774
- background: none;
5775
- border: none;
5776
- cursor: pointer;
5777
- -webkit-user-select: none;
5778
- -moz-user-select: none;
5779
- user-select: none;
5780
- transition: background-color var(--ina-transition-base);
5781
- display: flex;
5782
- align-items: center;
5783
- gap: var(--ina-spacing-2);
5784
- margin-bottom: 0 !important;
5785
- }
5786
- .ina-dropdown__item:hover {
5787
- background-color: var(--ina-background-secondary);
5788
- }
5789
- .ina-dropdown__item:focus {
5790
- outline: none;
5791
- background-color: var(--ina-primary-100);
5792
- color: var(--ina-primary-600);
5793
- }
5794
- .ina-dropdown__item:active {
5795
- background-color: var(--ina-background-tertiary);
5796
- }
5797
- /* Item variants */
5798
- .ina-dropdown__item--danger {
5799
- color: var(--ina-negative-600);
5800
- }
5801
- .ina-dropdown__item--danger:hover {
5802
- background-color: var(--ina-negative-100);
5803
- }
5804
- .ina-dropdown__item--warning {
5805
- color: var(--ina-warning-600);
5806
- }
5807
- .ina-dropdown__item--warning:hover {
5808
- background-color: var(--ina-warning-100);
5809
- }
5810
- .ina-dropdown__item--success {
5811
- color: var(--ina-positive-600);
5812
- }
5813
- .ina-dropdown__item--success:hover {
5814
- background-color: var(--ina-positive-100);
5815
- }
5816
- .ina-dropdown__item--disabled {
5817
- opacity: 0.5;
5818
- cursor: not-allowed;
5819
- color: var(--ina-content-tertiary);
5820
- }
5821
- .ina-dropdown__item--disabled:hover {
5822
- background-color: transparent;
5823
- }
5824
- /* Item with icons */
5825
- .ina-dropdown__item-icon {
5826
- flex-shrink: 0;
5827
- width: 16px;
5828
- height: 16px;
5624
+ display: flex;
5625
+ justify-content: center;
5626
+ gap: var(--ina-spacing-2);
5829
5627
  }
5830
- .ina-dropdown__item-content {
5831
- flex: 1;
5832
- min-width: 0;
5628
+ .ina-drawer__footer--position-between {
5629
+ display: flex;
5630
+ justify-content: space-between;
5631
+ align-items: center;
5833
5632
  }
5834
- .ina-dropdown__item-description {
5835
- font-size: var(--ina-font-xs);
5836
- color: var(--ina-content-secondary);
5837
- margin-top: var(--ina-spacing-0-5);
5633
+ /* Animation states */
5634
+ .ina-drawer--closing {
5635
+ animation: overlayFadeOut 0.2s cubic-bezier(0.4, 0, 0.2, 1) forwards;
5838
5636
  }
5839
- /* Separators */
5840
- .ina-dropdown__separator {
5841
- height: 1px;
5842
- background-color: var(--ina-stroke-primary);
5843
- margin: var(--ina-spacing-1) var(--ina-spacing-4);
5637
+ @keyframes overlayFadeOut {
5638
+ from {
5639
+ opacity: 1;
5640
+ }
5641
+ to {
5642
+ opacity: 0;
5643
+ }
5844
5644
  }
5845
- /* Dividers */
5846
- .ina-dropdown__divider {
5847
- height: var(--ina-spacing-4);
5645
+ /* Position-specific closing animations with smooth easing */
5646
+ .ina-drawer--closing.ina-drawer--position-right .ina-drawer__panel {
5647
+ animation: panelSlideOutRight 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
5848
5648
  }
5849
- /* Animation variants */
5850
- .ina-dropdown__menu--animation-fade {
5851
- transform: translateY(0);
5852
- transition: opacity var(--ina-transition-duration-200) ease-out;
5649
+ .ina-drawer--closing.ina-drawer--position-left .ina-drawer__panel {
5650
+ animation: panelSlideOutLeft 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
5853
5651
  }
5854
- .ina-dropdown__menu--animation-slide-up {
5855
- transform: translateY(1rem);
5856
- transition:
5857
- opacity var(--ina-transition-duration-200) ease-out,
5858
- transform var(--ina-transition-duration-200) ease-out;
5652
+ .ina-drawer--closing.ina-drawer--position-top .ina-drawer__panel {
5653
+ animation: panelSlideOutTop 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
5859
5654
  }
5860
- .ina-dropdown__menu--animation-slide-down {
5861
- transform: translateY(-1rem);
5862
- transition:
5863
- opacity var(--ina-transition-duration-200) ease-out,
5864
- transform var(--ina-transition-duration-200) ease-out;
5655
+ .ina-drawer--closing.ina-drawer--position-bottom .ina-drawer__panel {
5656
+ animation: panelSlideOutBottom 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
5865
5657
  }
5866
- .ina-dropdown__menu--animation-scale {
5867
- transform: scale(0.95);
5868
- transition:
5869
- opacity var(--ina-transition-duration-200) ease-out,
5870
- transform var(--ina-transition-duration-200) ease-out;
5658
+ /* Mobile: left/right use bottom closing animation */
5659
+ @media (max-width: 640px) {
5660
+ .ina-drawer--closing.ina-drawer--position-left .ina-drawer__panel,
5661
+ .ina-drawer--closing.ina-drawer--position-right .ina-drawer__panel {
5662
+ animation: panelSlideOutBottom 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
5663
+ }
5871
5664
  }
5872
- /* All visible states */
5873
- .ina-dropdown__menu--animation-fade.ina-dropdown__menu--visible,
5874
- .ina-dropdown__menu--animation-slide-up.ina-dropdown__menu--visible,
5875
- .ina-dropdown__menu--animation-slide-down.ina-dropdown__menu--visible,
5876
- .ina-dropdown__menu--animation-scale.ina-dropdown__menu--visible {
5877
- transform: translateY(0) scale(1);
5665
+ @keyframes panelSlideOut {
5666
+ from {
5667
+ opacity: 1;
5668
+ transform: scale(1);
5669
+ }
5670
+ to {
5671
+ opacity: 0;
5672
+ transform: scale(0.95);
5673
+ }
5878
5674
  }
5879
- /* Backdrop click area */
5880
- .ina-dropdown__backdrop {
5881
- position: fixed;
5882
- inset: 0;
5883
- z-index: 999;
5675
+ /* Position-specific slide-out animations with smooth easing */
5676
+ @keyframes panelSlideOutRight {
5677
+ 0% {
5678
+ opacity: 1;
5679
+ transform: translateX(0);
5680
+ }
5681
+ 100% {
5682
+ opacity: 0;
5683
+ transform: translateX(100%);
5684
+ }
5884
5685
  }
5885
- /* Grouped items */
5886
- .ina-dropdown__group {
5887
- margin: var(--ina-spacing-2) 0;
5686
+ @keyframes panelSlideOutLeft {
5687
+ 0% {
5688
+ opacity: 1;
5689
+ transform: translateX(0);
5690
+ }
5691
+ 100% {
5692
+ opacity: 0;
5693
+ transform: translateX(-100%);
5694
+ }
5888
5695
  }
5889
- .ina-dropdown__group:first-child {
5890
- margin-top: 0;
5696
+ @keyframes panelSlideOutTop {
5697
+ 0% {
5698
+ opacity: 1;
5699
+ transform: translateY(0);
5700
+ }
5701
+ 100% {
5702
+ opacity: 0;
5703
+ transform: translateY(-100%);
5704
+ }
5891
5705
  }
5892
- .ina-dropdown__group:last-child {
5893
- margin-bottom: 0;
5706
+ @keyframes panelSlideOutBottom {
5707
+ 0% {
5708
+ opacity: 1;
5709
+ transform: translateY(0);
5710
+ }
5711
+ 100% {
5712
+ opacity: 0;
5713
+ transform: translateY(100%);
5714
+ }
5894
5715
  }
5895
- .ina-dropdown__group-header {
5896
- padding: var(--ina-spacing-1) var(--ina-spacing-4) var(--ina-spacing-0-5);
5897
- font-size: var(--ina-font-xs);
5898
- font-weight: var(--ina-font-medium);
5899
- color: var(--ina-content-secondary);
5900
- text-transform: uppercase;
5901
- letter-spacing: 0.05em;
5716
+ /* Position-specific animations - Fixed positioning */
5717
+ .ina-drawer--position-right .ina-drawer__panel {
5718
+ /* Panel should be visible by default, not hidden */
5719
+ transform: translateX(0);
5902
5720
  }
5903
- /* Loading states */
5904
- .ina-dropdown__loading {
5905
- padding: var(--ina-spacing-2) var(--ina-spacing-4);
5906
- text-align: center;
5907
- color: var(--ina-content-secondary);
5908
- font-size: var(--ina-font-sm);
5721
+ .ina-drawer--position-left .ina-drawer__panel {
5722
+ /* Panel should be visible by default, not hidden */
5723
+ transform: translateX(0);
5909
5724
  }
5910
- .ina-dropdown__spinner {
5911
- display: inline-block;
5912
- width: 16px;
5913
- height: 16px;
5914
- border: 2px solid var(--ina-primary-100);
5915
- border-radius: 50%;
5916
- border-top-color: var(--ina-primary-500);
5917
- animation: spin 1s linear infinite;
5725
+ .ina-drawer--position-top .ina-drawer__panel {
5726
+ /* Panel should be visible by default, not hidden */
5727
+ transform: translateY(0);
5918
5728
  }
5919
- @keyframes spin {
5920
- to {
5921
- transform: rotate(360deg);
5922
- }
5729
+ .ina-drawer--position-bottom .ina-drawer__panel {
5730
+ /* Panel should be visible by default, not hidden */
5731
+ transform: translateY(0);
5923
5732
  }
5924
- /* Responsive adjustments */
5733
+ /* Mobile: left/right use bottom transform */
5925
5734
  @media (max-width: 640px) {
5926
- .ina-dropdown__menu--width-lg,
5927
- .ina-dropdown__menu--width-xl {
5928
- width: calc(100vw - var(--ina-spacing-8));
5929
- max-width: 300px;
5930
- }
5931
- }
5932
- @media (max-width: 768px) {
5933
- .ina-dropdown__item {
5934
- padding: var(--ina-spacing-3) var(--ina-spacing-4);
5935
- font-size: var(--ina-font-base);
5735
+ .ina-drawer--position-left .ina-drawer__panel,
5736
+ .ina-drawer--position-right .ina-drawer__panel {
5737
+ transform: translateY(0);
5936
5738
  }
5937
5739
  }
5938
- /* Scrollable content */
5939
- .ina-dropdown__menu--scrollable {
5940
- max-height: 300px;
5941
- overflow-y: auto;
5942
- scrollbar-width: thin;
5943
- scrollbar-color: var(--ina-content-tertiary) var(--ina-background-tertiary);
5944
- }
5945
- .ina-dropdown__menu--scrollable::-webkit-scrollbar {
5946
- width: 6px;
5740
+ /* Variant styles */
5741
+ .ina-drawer--variant-glass .ina-drawer__panel {
5742
+ background-color: rgba(255, 255, 255, 0.95);
5743
+ backdrop-filter: blur(20px);
5947
5744
  }
5948
- .ina-dropdown__menu--scrollable::-webkit-scrollbar-track {
5949
- background: var(--ina-background-tertiary);
5950
- border-radius: 3px;
5745
+ .ina-drawer--variant-floating .ina-drawer__panel {
5746
+ margin: var(--ina-spacing-8);
5747
+ border-radius: var(--ina-radius-xl);
5748
+ box-shadow: var(--ina-shadow-2xl);
5951
5749
  }
5952
- .ina-dropdown__menu--scrollable::-webkit-scrollbar-thumb {
5953
- background-color: var(--ina-content-tertiary);
5954
- border-radius: 3px;
5750
+ .ina-drawer--variant-minimal .ina-drawer__panel {
5751
+ box-shadow: none;
5752
+ border: 1px solid var(--ina-stroke-primary);
5955
5753
  }
5956
- .ina-dropdown__menu--scrollable::-webkit-scrollbar-thumb:hover {
5957
- background-color: var(--ina-content-secondary);
5754
+ /* Size variants with max-width */
5755
+ .ina-drawer__panel--fullscreen {
5756
+ width: 100vw !important;
5757
+ height: 100vh !important;
5758
+ max-width: 100vw !important;
5759
+ max-height: 100vh !important;
5760
+ margin: 0 !important;
5761
+ border-radius: 0 !important;
5958
5762
  }
5959
5763
  /* Dark mode support */
5960
5764
  /* @media (prefers-color-scheme: dark) {
5961
- .ina-dropdown__menu {
5765
+ .ina-drawer__backdrop {
5766
+ background-color: rgba(0, 0, 0, 0.7);
5767
+ }
5768
+
5769
+ .ina-drawer__panel {
5962
5770
  background-color: var(--ina-background-dark-primary);
5963
5771
  border-color: var(--ina-stroke-primary-dark);
5964
5772
  }
5965
5773
 
5966
- .ina-dropdown__item {
5774
+ .ina-drawer__header {
5775
+ border-color: var(--ina-stroke-primary-dark);
5776
+ }
5777
+
5778
+ .ina-drawer__title {
5967
5779
  color: var(--ina-content-dark-primary);
5968
5780
  }
5969
5781
 
5970
- .ina-dropdown__item:hover {
5782
+ .ina-drawer__close-button {
5783
+ color: var(--ina-content-dark-secondary);
5784
+ }
5785
+
5786
+ .ina-drawer__close-button:hover {
5971
5787
  background-color: var(--ina-neutral-800);
5788
+ color: var(--ina-content-dark-primary);
5972
5789
  }
5973
5790
 
5974
- .ina-dropdown__item:focus {
5975
- background-color: var(--ina-primary-900);
5976
- color: var(--ina-primary-400);
5791
+ .ina-drawer__footer {
5792
+ border-color: var(--ina-stroke-primary-dark);
5977
5793
  }
5978
5794
 
5979
- .ina-dropdown__item--disabled {
5980
- color: var(--ina-content-dark-disabled);
5795
+ .ina-drawer--variant-glass .ina-drawer__panel {
5796
+ background-color: rgba(0, 0, 0, 0.95);
5797
+ border-color: rgba(255, 255, 255, 0.1);
5981
5798
  }
5982
5799
 
5983
- .ina-dropdown__separator {
5984
- background-color: var(--ina-stroke-primary-dark);
5800
+ .ina-drawer--variant-minimal .ina-drawer__panel {
5801
+ border-color: var(--ina-stroke-primary-dark);
5802
+ }
5803
+ } */
5804
+ /* Accessibility improvements */
5805
+ .ina-drawer__close-button:focus-visible {
5806
+ outline: 2px solid var(--ina-primary-500);
5807
+ outline-offset: 2px;
5808
+ }
5809
+ /* High contrast mode */
5810
+ @media (prefers-contrast: high) {
5811
+ .ina-drawer__panel {
5812
+ border: 2px solid var(--ina-content-primary);
5985
5813
  }
5986
5814
 
5987
- .ina-dropdown__group-header {
5988
- color: var(--ina-content-dark-secondary);
5815
+ .ina-drawer__header,
5816
+ .ina-drawer__footer {
5817
+ border-width: 2px;
5818
+ }
5819
+ }
5820
+ /* Reduced motion */
5821
+ @media (prefers-reduced-motion: reduce) {
5822
+ .ina-drawer,
5823
+ .ina-drawer__backdrop,
5824
+ .ina-drawer__panel,
5825
+ .ina-drawer__close-button {
5826
+ animation: none;
5827
+ transition: none;
5989
5828
  }
5990
5829
 
5991
- .ina-dropdown__loading {
5992
- color: var(--ina-content-dark-secondary);
5830
+ .ina-drawer__panel {
5831
+ transform: none !important;
5832
+ }
5833
+ }
5834
+ /* Print styles */
5835
+ @media print {
5836
+ .ina-drawer {
5837
+ display: none;
5993
5838
  }
5994
- } */
5995
- /* Focus management */
5996
- .ina-dropdown__menu:focus-within .ina-dropdown__item:focus {
5997
- background-color: var(--ina-primary-100);
5998
5839
  }
5999
5840
  /**
6000
5841
  * FieldInputTable Component Styles
@@ -9623,8 +9464,8 @@ dialog.bottom-sheet-dropdown {
9623
9464
  /* Checked + Focus - Keep focus ring */
9624
9465
  .ina-radio-input__field:checked:focus-visible:not(:disabled) {
9625
9466
  box-shadow:
9626
- 0 0 0 1px #fff,
9627
- 0 0 0 2px var(--ina-primary-primary, #141414);
9467
+ 0 0 0 2px #fff,
9468
+ 0 0 0 3px var(--ina-primary-primary, #141414);
9628
9469
  }
9629
9470
  /* Disabled states */
9630
9471
  .ina-radio-input__field:disabled {