@kyro-cms/admin 0.9.5 → 0.9.6

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.
@@ -417,7 +417,7 @@
417
417
 
418
418
  .kyro-btn-danger:hover:not(:disabled) {
419
419
  background: var(--kyro-gray-900);
420
- color: white;
420
+ color: var(--kyro-sidebar-text-active);
421
421
  }
422
422
 
423
423
  .kyro-btn-ghost {
@@ -431,14 +431,13 @@
431
431
  }
432
432
 
433
433
  .kyro-btn-success {
434
- background: #10b981;
434
+ background: var(--kyro-success);
435
435
  color: white;
436
- border-color: #10b981;
436
+ border-color: var(--kyro-success);
437
437
  }
438
438
 
439
439
  .kyro-btn-success:hover:not(:disabled) {
440
- background: #059669;
441
- border-color: #059669;
440
+ filter: brightness(0.85);
442
441
  }
443
442
 
444
443
  .kyro-btn-success:disabled {
@@ -448,14 +447,13 @@
448
447
  }
449
448
 
450
449
  .kyro-btn-warning {
451
- background: #f59e0b;
450
+ background: var(--kyro-warning);
452
451
  color: white;
453
- border-color: #f59e0b;
452
+ border-color: var(--kyro-warning);
454
453
  }
455
454
 
456
455
  .kyro-btn-warning:hover:not(:disabled) {
457
- background: #d97706;
458
- border-color: #d97706;
456
+ filter: brightness(0.85);
459
457
  }
460
458
 
461
459
  /* Cards & Tiles */
@@ -1393,14 +1391,14 @@
1393
1391
  color: var(--kyro-text-secondary);
1394
1392
  }
1395
1393
 
1396
- /* Toast — Subtle Modern */
1394
+ /* Toast — Colored Flat */
1397
1395
  .kyro-toasts-container {
1398
1396
  position: fixed;
1399
1397
  bottom: 16px;
1400
1398
  right: 16px;
1401
1399
  display: flex;
1402
1400
  flex-direction: column;
1403
- gap: 8px;
1401
+ gap: 6px;
1404
1402
  z-index: 9999;
1405
1403
  pointer-events: none;
1406
1404
  }
@@ -1408,34 +1406,25 @@
1408
1406
  .kyro-toast {
1409
1407
  display: flex;
1410
1408
  align-items: center;
1411
- gap: 10px;
1409
+ gap: 8px;
1412
1410
  min-width: 240px;
1413
1411
  max-width: 340px;
1414
- padding: 12px 14px;
1415
- border-radius: 12px;
1412
+ padding: 8px 10px;
1413
+ color: white;
1414
+ border-radius: 8px;
1416
1415
  box-shadow:
1417
- 0 4px 12px rgba(0, 0, 0, 0.06),
1418
- 0 8px 24px rgba(0, 0, 0, 0.04);
1416
+ 0 2px 4px -1px rgba(0, 0, 0, 0.08),
1417
+ 0 8px 16px -4px rgba(0, 0, 0, 0.15),
1418
+ 0 16px 24px -8px rgba(0, 0, 0, 0.2);
1419
1419
  pointer-events: auto;
1420
1420
  position: relative;
1421
- overflow: hidden;
1422
- border: 1px solid var(--kyro-border);
1423
- background: var(--kyro-surface);
1421
+ transition: box-shadow 0.2s ease;
1424
1422
  }
1425
1423
 
1426
- .kyro-toast::before {
1427
- content: '';
1428
- position: absolute;
1429
- left: 0;
1430
- top: 0;
1431
- bottom: 0;
1432
- width: 3px;
1433
- }
1434
-
1435
- .kyro-toast-success::before { background: var(--kyro-success); }
1436
- .kyro-toast-error::before { background: var(--kyro-danger); }
1437
- .kyro-toast-warning::before { background: var(--kyro-warning); }
1438
- .kyro-toast-info::before { background: #6366f1; }
1424
+ .kyro-toast-success { background: #16a34a; }
1425
+ .kyro-toast-error { background: #dc2626; }
1426
+ .kyro-toast-warning { background: #d97706; }
1427
+ .kyro-toast-info { background: #4f46e5; }
1439
1428
 
1440
1429
  .kyro-toast-icon-container {
1441
1430
  flex-shrink: 0;
@@ -1444,13 +1433,9 @@
1444
1433
  display: flex;
1445
1434
  align-items: center;
1446
1435
  justify-content: center;
1436
+ color: rgba(255, 255, 255, 0.85);
1447
1437
  }
1448
1438
 
1449
- .kyro-toast-success .kyro-toast-icon-container { color: var(--kyro-success); }
1450
- .kyro-toast-error .kyro-toast-icon-container { color: var(--kyro-danger); }
1451
- .kyro-toast-warning .kyro-toast-icon-container { color: var(--kyro-warning); }
1452
- .kyro-toast-info .kyro-toast-icon-container { color: #6366f1; }
1453
-
1454
1439
  .kyro-toast-content {
1455
1440
  flex: 1;
1456
1441
  min-width: 0;
@@ -1460,25 +1445,25 @@
1460
1445
  font-size: 12px;
1461
1446
  font-weight: 500;
1462
1447
  letter-spacing: -0.01em;
1463
- color: var(--kyro-text-primary);
1448
+ color: rgba(255, 255, 255, 0.92);
1464
1449
  line-height: 1.3;
1465
1450
  }
1466
1451
 
1467
1452
  .kyro-toast-close {
1468
1453
  padding: 3px;
1469
1454
  border-radius: 4px;
1470
- color: var(--kyro-text-muted);
1455
+ color: rgba(255, 255, 255, 0.35);
1471
1456
  transition: all 0.15s ease;
1472
1457
  flex-shrink: 0;
1473
- opacity: 0.4;
1474
1458
  }
1475
1459
 
1476
1460
  .kyro-toast-close:hover {
1477
- background: var(--kyro-surface-accent);
1478
- opacity: 1;
1479
- color: var(--kyro-text-primary);
1461
+ background: rgba(255, 255, 255, 0.15);
1462
+ color: white;
1480
1463
  }
1481
1464
 
1465
+ .kyro-toast-accent { display: none; }
1466
+
1482
1467
  /* Spinner — Monochrome */
1483
1468
  .kyro-spinner {
1484
1469
  animation: spin 0.8s linear infinite;
@@ -2068,4 +2053,27 @@
2068
2053
  /* Ensure NodeViews render correctly within ProseMirror */
2069
2054
  .tiptap-editor-wrapper .ProseMirror .node--component {
2070
2055
  display: block;
2056
+ }
2057
+
2058
+ /* Floating action button */
2059
+ #kyro-fab {
2060
+ animation: fab-enter 0.3s ease-out;
2061
+ }
2062
+
2063
+ #kyro-fab.fab-hidden {
2064
+ opacity: 0;
2065
+ transform: scale(0.8);
2066
+ pointer-events: none;
2067
+ transition: opacity 200ms ease, transform 200ms ease;
2068
+ }
2069
+
2070
+ @keyframes fab-enter {
2071
+ from {
2072
+ opacity: 0;
2073
+ transform: scale(0.5) translateY(16px);
2074
+ }
2075
+ to {
2076
+ opacity: 1;
2077
+ transform: scale(1) translateY(0);
2078
+ }
2071
2079
  }