@krpkg/ui 0.3.1 → 0.4.1

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
@@ -113,6 +113,16 @@
113
113
  --kz-sticky-3: #fae8ff;
114
114
  --kz-sticky-4: #f3e8ff;
115
115
  }
116
+ [class^=kz-],
117
+ [class*=" kz-"],
118
+ [class^=kz-] *,
119
+ [class*=" kz-"] *,
120
+ [class^=kz-] *::before,
121
+ [class*=" kz-"] *::after,
122
+ [class^=kz-]::before,
123
+ [class*=" kz-"]::after {
124
+ box-sizing: border-box;
125
+ }
116
126
  .kz-dot-grid {
117
127
  background-image:
118
128
  radial-gradient(
@@ -1079,6 +1089,13 @@
1079
1089
  padding: 2px;
1080
1090
  gap: 2px;
1081
1091
  position: relative;
1092
+ max-width: 100%;
1093
+ overflow-x: auto;
1094
+ -webkit-overflow-scrolling: touch;
1095
+ scrollbar-width: none;
1096
+ }
1097
+ .kz-segmented-control::-webkit-scrollbar {
1098
+ display: none;
1082
1099
  }
1083
1100
  .kz-segmented-full {
1084
1101
  display: flex;
@@ -1439,7 +1456,7 @@
1439
1456
  }
1440
1457
  .kz-drawer-panel-right {
1441
1458
  width: 100%;
1442
- max-width: 380px;
1459
+ max-width: min(380px, 100vw);
1443
1460
  height: 100%;
1444
1461
  border-right: none;
1445
1462
  animation: kz-drawer-slide-left 0.25s cubic-bezier(0.16, 1, 0.3, 1);
@@ -1531,7 +1548,7 @@
1531
1548
  bottom: 24px;
1532
1549
  left: 24px;
1533
1550
  z-index: 1100;
1534
- max-width: calc(100vw - 48px);
1551
+ max-width: calc(100vw - 32px);
1535
1552
  width: 340px;
1536
1553
  background: var(--kz-bg-1);
1537
1554
  border: 1px solid var(--kz-border);
@@ -1540,6 +1557,15 @@
1540
1557
  animation: kz-toast-pop 0.2s cubic-bezier(0.16, 1, 0.3, 1);
1541
1558
  overflow: hidden;
1542
1559
  }
1560
+ @media (max-width: 480px) {
1561
+ .kz-hud-toast {
1562
+ left: 16px;
1563
+ right: 16px;
1564
+ bottom: 16px;
1565
+ width: auto;
1566
+ max-width: calc(100vw - 32px);
1567
+ }
1568
+ }
1543
1569
  @keyframes kz-toast-pop {
1544
1570
  from {
1545
1571
  opacity: 0;
@@ -1786,6 +1812,7 @@
1786
1812
  border-top: 1px solid var(--kz-border);
1787
1813
  }
1788
1814
  .kz-bottom-bar-track {
1815
+ width: 100%;
1789
1816
  max-width: 600px;
1790
1817
  margin: 0 auto;
1791
1818
  display: flex;
@@ -1801,13 +1828,14 @@
1801
1828
  gap: 4px;
1802
1829
  background: transparent;
1803
1830
  border: none;
1804
- padding: 6px 10px;
1831
+ padding: 6px 6px;
1805
1832
  color: var(--kz-text-2);
1806
1833
  cursor: pointer;
1807
1834
  border-radius: var(--kz-radius-xs);
1808
1835
  transition: all 0.15s ease;
1809
1836
  position: relative;
1810
1837
  flex: 1;
1838
+ min-width: 0;
1811
1839
  }
1812
1840
  .kz-bottom-bar-item:hover:not(.kz-disabled) {
1813
1841
  color: var(--kz-text-0);
@@ -1855,6 +1883,10 @@
1855
1883
  font-weight: 500;
1856
1884
  letter-spacing: 0.5px;
1857
1885
  text-transform: uppercase;
1886
+ white-space: nowrap;
1887
+ overflow: hidden;
1888
+ text-overflow: ellipsis;
1889
+ max-width: 100%;
1858
1890
  }
1859
1891
  .kz-bottom-bar-item.kz-disabled {
1860
1892
  opacity: 0.35;
@@ -1946,7 +1978,7 @@
1946
1978
  border-radius: var(--kz-radius-md);
1947
1979
  padding: 16px;
1948
1980
  width: 100%;
1949
- max-width: 380px;
1981
+ max-width: min(380px, 100%);
1950
1982
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4);
1951
1983
  }
1952
1984
  .kz-vinyl-deck-header {
@@ -2050,4 +2082,475 @@
2050
2082
  justify-content: center;
2051
2083
  gap: 12px;
2052
2084
  }
2085
+ .kz-slider-wrapper {
2086
+ display: inline-flex;
2087
+ flex-direction: column;
2088
+ gap: 6px;
2089
+ user-select: none;
2090
+ }
2091
+ .kz-slider-full {
2092
+ width: 100%;
2093
+ }
2094
+ .kz-slider-header {
2095
+ display: flex;
2096
+ justify-content: space-between;
2097
+ align-items: baseline;
2098
+ font-family: var(--kz-mono);
2099
+ font-size: 11px;
2100
+ }
2101
+ .kz-slider-label-group {
2102
+ display: flex;
2103
+ align-items: center;
2104
+ gap: 6px;
2105
+ }
2106
+ .kz-slider-label {
2107
+ font-weight: 600;
2108
+ color: var(--kz-text-1);
2109
+ letter-spacing: 0.04em;
2110
+ text-transform: uppercase;
2111
+ }
2112
+ .kz-slider-sublabel {
2113
+ font-family: var(--kz-jp);
2114
+ font-size: 10px;
2115
+ color: var(--kz-text-3);
2116
+ }
2117
+ .kz-slider-coord {
2118
+ font-size: 10px;
2119
+ color: var(--kz-text-3);
2120
+ }
2121
+ .kz-slider-value {
2122
+ font-weight: 600;
2123
+ color: var(--kz-accent);
2124
+ }
2125
+ .kz-slider-track-container {
2126
+ position: relative;
2127
+ width: 100%;
2128
+ display: flex;
2129
+ align-items: center;
2130
+ }
2131
+ .kz-slider-input {
2132
+ -webkit-appearance: none;
2133
+ appearance: none;
2134
+ width: 100%;
2135
+ height: 6px;
2136
+ border-radius: var(--kz-radius-sm);
2137
+ background:
2138
+ linear-gradient(
2139
+ to right,
2140
+ var(--kz-accent) 0%,
2141
+ var(--kz-accent) var(--kz-slider-pct, 0%),
2142
+ var(--kz-bg-3) var(--kz-slider-pct, 0%),
2143
+ var(--kz-bg-3) 100%);
2144
+ outline: none;
2145
+ cursor: pointer;
2146
+ border: 1px solid var(--kz-border);
2147
+ transition: border-color 0.15s ease;
2148
+ }
2149
+ .kz-slider-teal .kz-slider-input {
2150
+ background:
2151
+ linear-gradient(
2152
+ to right,
2153
+ var(--kz-teal) 0%,
2154
+ var(--kz-teal) var(--kz-slider-pct, 0%),
2155
+ var(--kz-bg-3) var(--kz-slider-pct, 0%),
2156
+ var(--kz-bg-3) 100%);
2157
+ }
2158
+ .kz-slider-teal .kz-slider-value {
2159
+ color: var(--kz-teal);
2160
+ }
2161
+ .kz-slider-purple .kz-slider-input {
2162
+ background:
2163
+ linear-gradient(
2164
+ to right,
2165
+ var(--kz-purple) 0%,
2166
+ var(--kz-purple) var(--kz-slider-pct, 0%),
2167
+ var(--kz-bg-3) var(--kz-slider-pct, 0%),
2168
+ var(--kz-bg-3) 100%);
2169
+ }
2170
+ .kz-slider-purple .kz-slider-value {
2171
+ color: var(--kz-purple);
2172
+ }
2173
+ .kz-slider-input::-webkit-slider-thumb {
2174
+ -webkit-appearance: none;
2175
+ appearance: none;
2176
+ width: 14px;
2177
+ height: 14px;
2178
+ border-radius: 2px;
2179
+ background: var(--kz-text-0);
2180
+ border: 2px solid var(--kz-accent);
2181
+ box-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
2182
+ cursor: pointer;
2183
+ transition: transform 0.1s ease, border-color 0.15s ease;
2184
+ }
2185
+ .kz-slider-input::-webkit-slider-thumb:hover {
2186
+ transform: scale(1.15);
2187
+ }
2188
+ .kz-slider-input::-moz-range-thumb {
2189
+ width: 14px;
2190
+ height: 14px;
2191
+ border-radius: 2px;
2192
+ background: var(--kz-text-0);
2193
+ border: 2px solid var(--kz-accent);
2194
+ box-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
2195
+ cursor: pointer;
2196
+ }
2197
+ .kz-slider-disabled {
2198
+ opacity: 0.5;
2199
+ pointer-events: none;
2200
+ }
2201
+ .kz-color-picker {
2202
+ display: inline-flex;
2203
+ flex-direction: column;
2204
+ gap: 5px;
2205
+ position: relative;
2206
+ font-family: var(--kz-mono);
2207
+ }
2208
+ .kz-color-picker-header {
2209
+ display: flex;
2210
+ justify-content: space-between;
2211
+ align-items: baseline;
2212
+ font-size: 11px;
2213
+ }
2214
+ .kz-color-picker-label-group {
2215
+ display: flex;
2216
+ align-items: center;
2217
+ gap: 6px;
2218
+ }
2219
+ .kz-color-picker-label {
2220
+ font-weight: 600;
2221
+ color: var(--kz-text-1);
2222
+ letter-spacing: 0.04em;
2223
+ text-transform: uppercase;
2224
+ }
2225
+ .kz-color-picker-sublabel {
2226
+ font-family: var(--kz-jp);
2227
+ font-size: 10px;
2228
+ color: var(--kz-text-3);
2229
+ }
2230
+ .kz-color-picker-coord {
2231
+ font-size: 10px;
2232
+ color: var(--kz-text-3);
2233
+ }
2234
+ .kz-color-picker-hex {
2235
+ font-size: 11px;
2236
+ color: var(--kz-accent);
2237
+ font-weight: 600;
2238
+ }
2239
+ .kz-color-picker-swatch-trigger {
2240
+ display: inline-flex;
2241
+ align-items: center;
2242
+ gap: 8px;
2243
+ padding: 6px 10px;
2244
+ background: var(--kz-bg-1);
2245
+ border: 1px solid var(--kz-border);
2246
+ border-radius: var(--kz-radius-sm);
2247
+ color: var(--kz-text-0);
2248
+ font-family: var(--kz-mono);
2249
+ font-size: 12px;
2250
+ cursor: pointer;
2251
+ transition: all 0.15s ease;
2252
+ }
2253
+ .kz-color-picker-swatch-trigger:hover {
2254
+ border-color: var(--kz-accent);
2255
+ background: var(--kz-bg-2);
2256
+ }
2257
+ .kz-color-picker-swatch-preview {
2258
+ width: 16px;
2259
+ height: 16px;
2260
+ border-radius: 2px;
2261
+ border: 1px solid rgba(255, 255, 255, 0.2);
2262
+ box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.4);
2263
+ }
2264
+ .kz-color-picker-caret {
2265
+ font-size: 8px;
2266
+ color: var(--kz-text-2);
2267
+ }
2268
+ .kz-color-picker-popover {
2269
+ position: absolute;
2270
+ top: calc(100% + 4px);
2271
+ left: 0;
2272
+ z-index: 50;
2273
+ background: var(--kz-bg-1);
2274
+ border: 1px solid var(--kz-border);
2275
+ border-radius: var(--kz-radius-sm);
2276
+ box-shadow: 0 8px 24px rgba(0, 0, 0, 0.6);
2277
+ padding: 10px;
2278
+ display: flex;
2279
+ flex-direction: column;
2280
+ gap: 8px;
2281
+ min-width: 180px;
2282
+ }
2283
+ .kz-color-picker-palette {
2284
+ display: grid;
2285
+ grid-template-columns: repeat(6, 1fr);
2286
+ gap: 6px;
2287
+ }
2288
+ .kz-color-picker-palette-btn {
2289
+ width: 22px;
2290
+ height: 22px;
2291
+ border-radius: 2px;
2292
+ border: 1px solid rgba(255, 255, 255, 0.15);
2293
+ cursor: pointer;
2294
+ transition: transform 0.1s ease, border-color 0.15s ease;
2295
+ padding: 0;
2296
+ }
2297
+ .kz-color-picker-palette-btn:hover {
2298
+ transform: scale(1.15);
2299
+ border-color: #fff;
2300
+ z-index: 1;
2301
+ }
2302
+ .kz-color-picker-palette-btn.active {
2303
+ border-color: #fff;
2304
+ box-shadow: 0 0 0 1px var(--kz-bg-0), 0 0 0 2px var(--kz-accent);
2305
+ }
2306
+ .kz-color-picker-custom-input {
2307
+ display: flex;
2308
+ align-items: center;
2309
+ gap: 6px;
2310
+ padding-top: 6px;
2311
+ border-top: 1px solid var(--kz-border-subtle);
2312
+ }
2313
+ .kz-color-picker-native-input {
2314
+ width: 24px;
2315
+ height: 24px;
2316
+ padding: 0;
2317
+ border: none;
2318
+ background: transparent;
2319
+ cursor: pointer;
2320
+ }
2321
+ .kz-color-picker-text-input {
2322
+ flex: 1;
2323
+ background: var(--kz-bg-2);
2324
+ border: 1px solid var(--kz-border);
2325
+ border-radius: 2px;
2326
+ padding: 3px 6px;
2327
+ font-family: var(--kz-mono);
2328
+ font-size: 11px;
2329
+ color: var(--kz-text-0);
2330
+ outline: none;
2331
+ }
2332
+ .kz-color-picker-text-input:focus {
2333
+ border-color: var(--kz-accent);
2334
+ }
2335
+ .kz-dropdown-container {
2336
+ position: relative;
2337
+ display: inline-block;
2338
+ }
2339
+ .kz-dropdown-trigger-wrapper {
2340
+ display: inline-flex;
2341
+ cursor: pointer;
2342
+ }
2343
+ .kz-dropdown-menu {
2344
+ position: absolute;
2345
+ top: calc(100% + 4px);
2346
+ z-index: 60;
2347
+ min-width: 170px;
2348
+ background: var(--kz-bg-1);
2349
+ border: 1px solid var(--kz-border);
2350
+ border-radius: var(--kz-radius-sm);
2351
+ box-shadow: 0 8px 24px rgba(0, 0, 0, 0.7);
2352
+ padding: 4px;
2353
+ display: flex;
2354
+ flex-direction: column;
2355
+ }
2356
+ .kz-dropdown-menu.align-left {
2357
+ left: 0;
2358
+ }
2359
+ .kz-dropdown-menu.align-right {
2360
+ right: 0;
2361
+ }
2362
+ .kz-dropdown-header {
2363
+ display: flex;
2364
+ justify-content: space-between;
2365
+ align-items: center;
2366
+ padding: 4px 8px 6px;
2367
+ border-bottom: 1px solid var(--kz-border-subtle);
2368
+ margin-bottom: 4px;
2369
+ }
2370
+ .kz-dropdown-title {
2371
+ font-family: var(--kz-mono);
2372
+ font-size: 10px;
2373
+ font-weight: 600;
2374
+ color: var(--kz-text-2);
2375
+ text-transform: uppercase;
2376
+ letter-spacing: 0.05em;
2377
+ }
2378
+ .kz-dropdown-coord {
2379
+ font-family: var(--kz-mono);
2380
+ font-size: 9px;
2381
+ color: var(--kz-text-3);
2382
+ }
2383
+ .kz-dropdown-list {
2384
+ display: flex;
2385
+ flex-direction: column;
2386
+ gap: 1px;
2387
+ }
2388
+ .kz-dropdown-item {
2389
+ display: flex;
2390
+ align-items: center;
2391
+ justify-content: space-between;
2392
+ gap: 12px;
2393
+ padding: 6px 10px;
2394
+ border: none;
2395
+ background: transparent;
2396
+ color: var(--kz-text-0);
2397
+ font-family: var(--kz-mono);
2398
+ font-size: 12px;
2399
+ cursor: pointer;
2400
+ border-radius: 2px;
2401
+ text-align: left;
2402
+ transition: all 0.12s ease;
2403
+ }
2404
+ .kz-dropdown-item:hover {
2405
+ background: var(--kz-bg-2);
2406
+ color: var(--kz-accent);
2407
+ }
2408
+ .kz-dropdown-item.danger:hover {
2409
+ background: rgba(176, 80, 80, 0.15);
2410
+ color: var(--kz-red-soft);
2411
+ }
2412
+ .kz-dropdown-item.disabled {
2413
+ opacity: 0.4;
2414
+ cursor: not-allowed;
2415
+ pointer-events: none;
2416
+ }
2417
+ .kz-dropdown-item-left {
2418
+ display: flex;
2419
+ align-items: center;
2420
+ gap: 8px;
2421
+ }
2422
+ .kz-dropdown-item-icon {
2423
+ display: inline-flex;
2424
+ color: var(--kz-text-2);
2425
+ font-size: 14px;
2426
+ }
2427
+ .kz-dropdown-item:hover .kz-dropdown-item-icon {
2428
+ color: var(--kz-accent);
2429
+ }
2430
+ .kz-dropdown-item-text {
2431
+ display: flex;
2432
+ flex-direction: column;
2433
+ }
2434
+ .kz-dropdown-item-sublabel {
2435
+ font-family: var(--kz-jp);
2436
+ font-size: 9px;
2437
+ color: var(--kz-text-3);
2438
+ }
2439
+ .kz-dropdown-item-right {
2440
+ display: flex;
2441
+ align-items: center;
2442
+ gap: 6px;
2443
+ }
2444
+ .kz-dropdown-item-shortcut {
2445
+ font-size: 10px;
2446
+ color: var(--kz-text-3);
2447
+ background: var(--kz-bg-2);
2448
+ padding: 1px 4px;
2449
+ border-radius: 2px;
2450
+ }
2451
+ .kz-dropdown-item-badge {
2452
+ font-size: 10px;
2453
+ padding: 1px 5px;
2454
+ border-radius: 2px;
2455
+ background: var(--kz-accent-dim);
2456
+ color: var(--kz-accent);
2457
+ }
2458
+ .kz-popover-container {
2459
+ position: relative;
2460
+ display: inline-block;
2461
+ }
2462
+ .kz-popover-trigger-wrapper {
2463
+ display: inline-flex;
2464
+ cursor: pointer;
2465
+ }
2466
+ .kz-popover-content {
2467
+ position: absolute;
2468
+ z-index: 55;
2469
+ background: var(--kz-bg-1);
2470
+ border: 1px solid var(--kz-border);
2471
+ border-radius: var(--kz-radius-sm);
2472
+ box-shadow: 0 8px 24px rgba(0, 0, 0, 0.7);
2473
+ padding: 10px;
2474
+ min-width: 160px;
2475
+ }
2476
+ .kz-popover-content.pos-bottom {
2477
+ top: calc(100% + 6px);
2478
+ }
2479
+ .kz-popover-content.pos-top {
2480
+ bottom: calc(100% + 6px);
2481
+ }
2482
+ .kz-popover-content.align-center {
2483
+ left: 50%;
2484
+ transform: translateX(-50%);
2485
+ }
2486
+ .kz-popover-content.align-left {
2487
+ left: 0;
2488
+ }
2489
+ .kz-popover-content.align-right {
2490
+ right: 0;
2491
+ }
2492
+ .kz-popover-header {
2493
+ display: flex;
2494
+ justify-content: space-between;
2495
+ align-items: center;
2496
+ padding-bottom: 6px;
2497
+ margin-bottom: 6px;
2498
+ border-bottom: 1px solid var(--kz-border-subtle);
2499
+ }
2500
+ .kz-popover-title {
2501
+ font-family: var(--kz-mono);
2502
+ font-size: 10px;
2503
+ font-weight: 600;
2504
+ color: var(--kz-text-2);
2505
+ text-transform: uppercase;
2506
+ }
2507
+ .kz-popover-coord {
2508
+ font-family: var(--kz-mono);
2509
+ font-size: 9px;
2510
+ color: var(--kz-text-3);
2511
+ }
2512
+ .kz-tooltip-shortcut {
2513
+ font-family: var(--kz-mono);
2514
+ font-size: 9px;
2515
+ background: rgba(255, 255, 255, 0.1);
2516
+ padding: 1px 4px;
2517
+ border-radius: 2px;
2518
+ border: 1px solid rgba(255, 255, 255, 0.15);
2519
+ color: var(--kz-text-1);
2520
+ }
2521
+ @media (max-width: 480px) {
2522
+ .kz-btn {
2523
+ max-width: 100%;
2524
+ }
2525
+ .kz-terminal-window,
2526
+ .kz-bracket-card,
2527
+ .kz-corner-frame,
2528
+ .kz-spoiler-gate,
2529
+ .kz-telemetry-container,
2530
+ .kz-input-wrapper {
2531
+ max-width: 100%;
2532
+ }
2533
+ .kz-keyval-row {
2534
+ flex-wrap: wrap;
2535
+ gap: 4px;
2536
+ }
2537
+ .kz-keyval-leader {
2538
+ display: none;
2539
+ }
2540
+ .kz-color-picker-popover {
2541
+ max-width: calc(100vw - 32px);
2542
+ }
2543
+ .kz-dropdown-menu {
2544
+ max-width: calc(100vw - 32px);
2545
+ }
2546
+ .kz-popover-content {
2547
+ max-width: calc(100vw - 32px);
2548
+ }
2549
+ .kz-modal-portal {
2550
+ padding: 8px;
2551
+ }
2552
+ .kz-modal-dialog {
2553
+ max-height: calc(100vh - 16px);
2554
+ }
2555
+ }
2053
2556
  /*# sourceMappingURL=index.css.map */