index.styl 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. // Стили для компонента AppLink
  2. .app-link
  3. // Базовые стили ссылки
  4. color: #3B82F6
  5. text-decoration: none
  6. cursor: pointer
  7. transition: all 0.2s ease-in-out
  8. // Состояния hover
  9. &:hover
  10. color: #2563EB
  11. text-decoration: underline
  12. // Состояния focus для доступности
  13. &:focus
  14. outline: 2px solid #3B82F6
  15. outline-offset: 2px
  16. border-radius: 4px
  17. // Активное состояние для router-link
  18. &.app-link--active
  19. color: #1D4ED8
  20. font-weight: 600
  21. &:hover
  22. color: #1E40AF
  23. // Варианты для разных типов ссылок
  24. &--external
  25. &::after
  26. content: " ↗"
  27. font-size: 0.8em
  28. opacity: 0.7
  29. &--internal
  30. // Специфичные стили для внутренних ссылок
  31. // Размеры
  32. &--sm
  33. font-size: 0.875rem
  34. padding: 0.25rem 0.5rem
  35. &--md
  36. font-size: 1rem
  37. padding: 0.5rem 1rem
  38. &--lg
  39. font-size: 1.125rem
  40. padding: 0.75rem 1.5rem
  41. // Варианты
  42. &--primary
  43. background-color: #3B82F6
  44. color: white
  45. border-radius: 6px
  46. &:hover
  47. background-color: #2563EB
  48. text-decoration: none
  49. color: white
  50. &.app-link--active
  51. background-color: #1D4ED8
  52. &--secondary
  53. background-color: transparent
  54. color: #3B82F6
  55. border: 1px solid #3B82F6
  56. border-radius: 6px
  57. &:hover
  58. background-color: #3B82F6
  59. color: white
  60. text-decoration: none
  61. &--text
  62. background-color: transparent
  63. color: #3B82F6
  64. &:hover
  65. background-color: transparent
  66. text-decoration: underline
  67. // Темная тема
  68. @media (prefers-color-scheme: dark)
  69. .dark &
  70. color: #60A5FA
  71. &:hover
  72. color: #93C5FD
  73. &.app-link--active
  74. color: #93C5FD
  75. &--primary
  76. background-color: #1E40AF
  77. color: white
  78. &:hover
  79. background-color: #1E3A8A
  80. &--secondary
  81. color: #60A5FA
  82. border-color: #60A5FA
  83. &:hover
  84. background-color: #60A5FA
  85. color: #1F2937
  86. // Утилитарные классы для использования с AppLink
  87. .no-underline
  88. text-decoration: none !important
  89. &:hover
  90. text-decoration: none !important
  91. .underline-on-hover
  92. text-decoration: none !important
  93. &:hover
  94. text-decoration: underline !important