_elements.scss 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769
  1. /* UI elements */
  2. .card {
  3. background: var(--widget);
  4. border-radius: 4px;
  5. overflow: hidden;
  6. height: 100%;
  7. box-shadow: var(--widget-shadow);
  8. position: relative;
  9. &.no-shadow {
  10. box-shadow: none;
  11. }
  12. &--side-shadow {
  13. &:before, &:after {
  14. content: '';
  15. position: absolute;
  16. top: 0;
  17. bottom: 0;
  18. background: var(--winget-inner-shadow);
  19. width: 30px;
  20. transition: width var(--transition);
  21. z-index: 100;
  22. }
  23. &:before {
  24. left: -1px;
  25. }
  26. &:after {
  27. right: -1px;
  28. transform: scaleX(-1);
  29. }
  30. }
  31. &.pb-0 {
  32. padding-bottom: 0 !important;
  33. }
  34. &_header {
  35. padding: var(--card-padding) var(--card-padding) 0;
  36. }
  37. &_footer {
  38. padding: 0 var(--card-padding) var(--card-padding);
  39. }
  40. &_footer--sm {
  41. padding: 0 var(--card-padding);
  42. height: 73px;
  43. display: flex;
  44. align-items: center;
  45. border-top: 1px solid var(--border);
  46. }
  47. }
  48. .field {
  49. height: 2.75rem;
  50. width: 100%;
  51. background-color: var(--nav-item-bg);
  52. border: 1px solid var(--border);
  53. padding: 0 12px;
  54. border-radius: 4px;
  55. transition: border-color var(--transition);
  56. &::placeholder {
  57. color: var(--placeholder);
  58. }
  59. &:hover, &:focus {
  60. border-color: var(--highlight);
  61. }
  62. &--error {
  63. border-color: var(--red);
  64. }
  65. &-wrapper {
  66. position: relative;
  67. }
  68. &-btn {
  69. position: absolute;
  70. top: 50%;
  71. right: 12px;
  72. transform: translateY(-50%);
  73. }
  74. }
  75. textarea.field {
  76. height: 140px;
  77. padding: 10px 12px;
  78. }
  79. .draggable-container {
  80. overflow-x: auto;
  81. cursor: default;
  82. position: relative;
  83. &.isDraggable {
  84. cursor: grab;
  85. }
  86. &.isDragging {
  87. cursor: grabbing;
  88. }
  89. }
  90. .cover {
  91. position: absolute;
  92. top: 0;
  93. left: 0;
  94. width: 100%;
  95. height: 100%;
  96. }
  97. .progress-info {
  98. display: flex;
  99. align-items: center;
  100. gap: 8px;
  101. .icon {
  102. font-size: 12px;
  103. &.positive {
  104. color: #7ED321;
  105. }
  106. &.negative {
  107. color: var(--red);
  108. }
  109. }
  110. .label {
  111. min-width: fit-content;
  112. }
  113. }
  114. .btn {
  115. background: var(--border);
  116. height: 40px;
  117. border-radius: 4px;
  118. padding: 0 18px;
  119. font-size: 0.75rem;
  120. font-weight: 600;
  121. font-family: var(--heading-font);
  122. color: var(--btn-text);
  123. transition: all var(--transition);
  124. display: inline-flex;
  125. align-items: center;
  126. justify-content: center;
  127. &--switch {
  128. height: 55px;
  129. font-size: 0.875rem;
  130. font-weight: 600;
  131. font-family: var(--heading-font);
  132. color: var(--highlight);
  133. border-top: 1px solid var(--border);
  134. border-bottom: 4px solid transparent;
  135. position: relative;
  136. transition: all var(--transition);
  137. &.alt {
  138. border-top-color: var(--score-alt);
  139. &:not(:last-child) {
  140. border-right-color: var(--score-alt);
  141. }
  142. }
  143. &:before {
  144. content: '';
  145. position: absolute;
  146. top: 0;
  147. left: 0;
  148. width: 100%;
  149. height: 100%;
  150. background: rgba(255, 205, 0, 0.1);
  151. box-shadow: 0 1px 8px rgba(110, 110, 110, 0.1);
  152. z-index: 1;
  153. opacity: 0;
  154. transition: opacity var(--transition);
  155. }
  156. &:not(:last-child) {
  157. border-right: 1px solid var(--border);
  158. }
  159. &:hover, &:focus,
  160. &.active {
  161. border-bottom: 4px solid var(--accent);
  162. &:before {
  163. opacity: .2;
  164. }
  165. }
  166. }
  167. &--outlined {
  168. background: transparent;
  169. border: 1px solid var(--border);
  170. }
  171. &--icon {
  172. display: flex;
  173. align-items: center;
  174. justify-content: center;
  175. gap: 5px;
  176. background: var(--grass);
  177. color: var(--header-dark);
  178. border-radius: 8px;
  179. will-change: transform;
  180. .icon {
  181. font-size: 1rem;
  182. }
  183. &:hover, &:focus {
  184. transform: scale(0.95);
  185. box-shadow: 0 2px 10px rgba(126, 211, 33, 0.5);
  186. background: var(--grass) !important;
  187. color: var(--header-dark) !important;
  188. }
  189. }
  190. &.active, &[aria-selected="true"],
  191. &:hover, &:focus {
  192. background: var(--accent);
  193. color: var(--header-light);
  194. border-color: var(--accent);
  195. }
  196. &[disabled] {
  197. pointer-events: none;
  198. cursor: default;
  199. opacity: .5;
  200. }
  201. &.accept {
  202. background: var(--grass);
  203. }
  204. &.decline {
  205. background: var(--red);
  206. &:hover {
  207. background: var(--red);
  208. }
  209. }
  210. &.accept, &.decline {
  211. color: var(--header-dark);
  212. }
  213. &--sm {
  214. height: 32px;
  215. }
  216. }
  217. .square {
  218. display: flex;
  219. align-items: center;
  220. justify-content: center;
  221. width: 40px;
  222. height: 40px;
  223. border: 1px solid var(--border);
  224. border-radius: 4px;
  225. color: var(--header);
  226. }
  227. .avatar {
  228. border-radius: 50%;
  229. width: 80px;
  230. height: 80px;
  231. }
  232. .icon-btn {
  233. width: 32px;
  234. height: 32px;
  235. border-radius: 8px;
  236. background: var(--green);
  237. color: #fff;
  238. display: flex;
  239. align-items: center;
  240. justify-content: center;
  241. line-height: 1;
  242. font-size: 1rem;
  243. &--blue {
  244. background: linear-gradient(360deg, #0496FF 0%, #28B5E0 100%);
  245. }
  246. &--cart {
  247. background: var(--widget);
  248. box-shadow: var(--widget-shadow);
  249. will-change: transform;
  250. transition: transform var(--transition);
  251. i {
  252. color: var(--nav-arrow) !important;
  253. }
  254. &:hover, &:focus {
  255. transform: scale(.9);
  256. }
  257. }
  258. }
  259. a {
  260. &.h1, &.h2, &.h3, &.h4, &.h5, &.h6 {
  261. transition: color var(--transition);
  262. &:hover, &:focus {
  263. color: var(--highlight);
  264. }
  265. }
  266. }
  267. .score {
  268. height: 40px;
  269. border: 1px solid var(--border);
  270. padding: 0 18px;
  271. border-radius: 4px;
  272. position: absolute;
  273. top: 50%;
  274. left: 50%;
  275. transform: translate(-50%, -50%);
  276. display: flex;
  277. align-items: center;
  278. justify-content: center;
  279. gap: 6px;
  280. font-size: 1rem;
  281. line-height: 1.25rem;
  282. font-family: var(--heading-font);
  283. font-weight: 700;
  284. color: var(--header);
  285. &--alt {
  286. border-color: var(--score-alt);
  287. }
  288. }
  289. .like {
  290. display: flex;
  291. align-items: center;
  292. gap: 9px;
  293. line-height: 1;
  294. &[disabled] {
  295. pointer-events: none;
  296. cursor: default;
  297. }
  298. &_icon {
  299. position: relative;
  300. width: 14px;
  301. height: 14px;
  302. i {
  303. position: absolute;
  304. font-size: 14px;
  305. top: 50%;
  306. left: 50%;
  307. transform: translate(-50%, -50%);
  308. transition: opacity var(--transition);
  309. }
  310. &.red i {
  311. color: #ED0404;
  312. }
  313. &.light i {
  314. color: var(--nav-arrow);
  315. }
  316. }
  317. &_text {
  318. color: var(--text) !important;
  319. }
  320. }
  321. .tab-nav {
  322. gap: 4px;
  323. display: grid;
  324. :first-child {
  325. border-radius: 4px 0 0 4px;
  326. }
  327. :last-child {
  328. border-radius: 0 4px 4px 0;
  329. }
  330. }
  331. .nav-arrow {
  332. font-size: 0.75rem;
  333. color: var(--nav-arrow-color);
  334. transition: color var(--transition);
  335. &:hover, &:focus {
  336. color: var(--nav-arrow-hover-color);
  337. }
  338. }
  339. .player-number {
  340. display: flex;
  341. align-items: center;
  342. justify-content: center;
  343. font-size: 1.5rem;
  344. font-family: var(--heading-font);
  345. font-weight: 700;
  346. color: var(--header);
  347. }
  348. .player-number,
  349. .square-avatar {
  350. width: 40px;
  351. height: 40px;
  352. border-radius: 4px;
  353. border: 1px solid var(--border);
  354. }
  355. .club-logo {
  356. height: 50px;
  357. width: auto;
  358. flex-shrink: 0;
  359. img {
  360. height: 100%;
  361. width: auto;
  362. }
  363. &--sm {
  364. height: 20px;
  365. }
  366. &--md {
  367. height: 40px;
  368. }
  369. &--lg {
  370. height: 80px;
  371. }
  372. &--xl {
  373. height: 100px;
  374. }
  375. }
  376. .label {
  377. text-transform: uppercase;
  378. color: var(--label) !important;
  379. letter-spacing: .45px;
  380. &--store {
  381. color: var(--highlight) !important;
  382. &.light {
  383. color: var(--olive) !important;;
  384. }
  385. }
  386. }
  387. .submenu-button {
  388. width: 25px;
  389. height: 25px;
  390. border-radius: 8px;
  391. background: #E0E5D5;
  392. display: flex;
  393. align-items: center;
  394. justify-content: center;
  395. color: var(--header-light) !important;
  396. }
  397. .popup {
  398. max-width: 376px;
  399. height: auto;
  400. width: 100%;
  401. position: relative;
  402. max-height: calc(100vh - 80px);
  403. pointer-events: auto;
  404. &-container {
  405. display: flex;
  406. align-items: center;
  407. justify-content: center;
  408. height: 100%;
  409. padding: 20px;
  410. pointer-events: none;
  411. }
  412. &_close {
  413. position: absolute;
  414. top: 1rem;
  415. right: 1rem;
  416. z-index: 2;
  417. i{
  418. font-size: 1.4rem;
  419. color: var(--header);
  420. }
  421. }
  422. &-big{
  423. max-width: 40vw;
  424. max-height: 90vh;
  425. min-width: 25rem;
  426. padding: 2rem 0.5rem 0.5rem 0.5rem;
  427. overflow-y: auto;
  428. }
  429. }
  430. .text-button {
  431. color: var(--highlight);
  432. font-family: var(--heading-font);
  433. font-weight: 600;
  434. font-size: .875rem;
  435. position: relative;
  436. line-height: 1;
  437. height: fit-content;
  438. &--sm {
  439. font-size: 0.75rem;
  440. }
  441. &:after {
  442. content: '';
  443. position: absolute;
  444. left: 0;
  445. bottom: -3px;
  446. width: 0;
  447. height: 1.5px;
  448. background: var(--highlight);
  449. transition: width var(--transition);
  450. }
  451. &:hover:after {
  452. width: 100%;
  453. }
  454. }
  455. .chart-tooltip {
  456. background: #fff;
  457. box-shadow: 0 1px 8px rgba(65, 77, 85, 0.4);
  458. border-radius: 8px;
  459. height: 20px;
  460. padding: 0 8px;
  461. display: flex;
  462. align-items: center;
  463. justify-content: center;
  464. line-height: 1;
  465. position: relative;
  466. text-transform: uppercase;
  467. font-family: var(--heading-font);
  468. font-weight: 500;
  469. font-size: 0.75rem;
  470. letter-spacing: 0.5px;
  471. color: var(--header-light);
  472. &:before {
  473. content: '';
  474. position: absolute;
  475. left: 50%;
  476. bottom: -3px;
  477. transform: translateX(-50%) rotate(-45deg);
  478. width: 8px;
  479. height: 8px;
  480. display: block;
  481. }
  482. }
  483. .legend {
  484. display: flex;
  485. align-items: center;
  486. gap: 8px;
  487. line-height: 1;
  488. letter-spacing: 0.45px;
  489. &_color {
  490. width: 8px;
  491. height: 8px;
  492. border-radius: 50%;
  493. }
  494. }
  495. .tag {
  496. text-transform: uppercase;
  497. height: 25px;
  498. padding: 0 10px;
  499. border-radius: 8px;
  500. color: var(--header-light) !important;
  501. display: flex;
  502. align-items: center;
  503. letter-spacing: 0.45px;
  504. box-shadow: 0 1px 8px rgba(20, 46, 110, 0.1);
  505. will-change: transform;
  506. &.light {
  507. color: var(--header-light) !important;
  508. }
  509. &.dark {
  510. color: var(--header-dark) !important;
  511. }
  512. &.animated {
  513. animation: pulse 1.5s infinite;
  514. }
  515. &--accent {
  516. background: var(--accent);
  517. }
  518. &--store {
  519. background: var(--salmon);
  520. color: var(--header-dark) !important;
  521. }
  522. &--overlay {
  523. position: absolute;
  524. left: 0;
  525. top: 0;
  526. z-index: 10;
  527. }
  528. &--social {
  529. color: var(--header-dark) !important;
  530. transition: transform var(--transition) !important;
  531. width: 25px;
  532. height: 25px;
  533. padding: 0;
  534. display: flex;
  535. align-items: center;
  536. justify-content: center;
  537. .icon {
  538. font-size: 12px;
  539. &-twitter {
  540. margin-top: 2px;
  541. margin-right: -1px;
  542. }
  543. &-youtube {
  544. margin-top: -2px;
  545. }
  546. }
  547. &:hover, &:focus {
  548. transform: scale(.9);
  549. }
  550. // iPhone XR
  551. @media screen and (min-width: 414px) {
  552. &:not(.compact) {
  553. width: fit-content;
  554. padding: 0 10px;
  555. }
  556. }
  557. }
  558. }
  559. // swiper
  560. .swiper-pagination-progressbar {
  561. top: unset !important;
  562. bottom: 0;
  563. z-index: 10;
  564. background: rgba(40, 40, 40, 0.95) !important;
  565. &-fill {
  566. background: var(--accent) !important;
  567. }
  568. }
  569. // recharts
  570. .recharts-tooltip-wrapper {
  571. z-index: 10;
  572. }
  573. //add new
  574. .input-control{
  575. position: relative;
  576. display: flex;
  577. align-items: center;
  578. padding: 0 .75rem;
  579. min-height: 2.875rem;
  580. border: 1px solid transparent;
  581. background-color: var(--nav-item-bg);
  582. border-radius: var(--border-radius);
  583. opacity: 1;
  584. //font-size: 0.875rem;
  585. &:focus-within{
  586. border: 1px solid var(--highlight);
  587. }
  588. &--error {
  589. border-color: var(--red);
  590. }
  591. input{
  592. flex: 1;
  593. width: 100%;
  594. height: 100%;
  595. min-width: 1rem;
  596. padding: 0;
  597. border: none;
  598. background-color: transparent;
  599. color: var(--header);
  600. font-weight: 600;
  601. &::placeholder {
  602. font-weight: 500;
  603. color: var(--header);
  604. opacity: 0.6;
  605. }
  606. }
  607. }
  608. .input-prompt-error{
  609. color: var(--red);
  610. }
  611. .button-green{
  612. display: flex;
  613. align-items: center;
  614. justify-content: center;
  615. position: relative;
  616. width: 100%;
  617. min-height: 2.75rem;
  618. color: #fff;
  619. background-color: #1d803ab3;
  620. background-image: conic-gradient(from 1turn, rgba(88, 175, 16, 1), rgba(29, 128, 58, 1));
  621. user-select: none;
  622. border-radius: var(--border-radius);
  623. font-weight: 700;
  624. cursor: pointer;
  625. transition: transform .2s cubic-bezier(.36,.66,.04,1);
  626. text-transform: capitalize;
  627. }
  628. .button-gray{
  629. display: flex;
  630. align-items: center;
  631. justify-content: center;
  632. position: relative;
  633. width: 100%;
  634. min-height: 2.75rem;
  635. color: #fff;
  636. background: #3C404A;
  637. user-select: none;
  638. border-radius: var(--border-radius);
  639. font-weight: 700;
  640. cursor: pointer;
  641. transition: transform .2s cubic-bezier(.36,.66,.04,1);
  642. text-transform: capitalize;
  643. }
  644. .button-yellow{
  645. display: flex;
  646. align-items: center;
  647. justify-content: center;
  648. position: relative;
  649. width: 100%;
  650. min-height: 2.75rem;
  651. color: #fff;
  652. background-color: #f19511b3;
  653. background-image: conic-gradient(from 1turn, #F6C722, #F19511);
  654. user-select: none;
  655. border-radius: var(--border-radius);
  656. font-weight: 700;
  657. cursor: pointer;
  658. transition: transform .2s cubic-bezier(.36,.66,.04,1);
  659. text-transform: capitalize;
  660. }