Project: Mall App Client: Maiora
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

global.scss 7.7 KiB

6 年之前
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360
  1. /*
  2. * App Global CSS
  3. * ----------------------------------------------------------------------------
  4. * Put style rules here that you want to apply globally. These styles are for
  5. * the entire app and not just one component. Additionally, this file can be
  6. * used as an entry point to import other CSS/Sass files to be included in the
  7. * output CSS.
  8. * For more information on global stylesheets, visit the documentation:
  9. * https://ionicframework.com/docs/layout/global-stylesheets
  10. */
  11. /* Core CSS required for Ionic components to work properly */
  12. @import "~@ionic/angular/css/core.css";
  13. /* Basic CSS for apps built with Ionic */
  14. @import "~@ionic/angular/css/normalize.css";
  15. @import "~@ionic/angular/css/structure.css";
  16. @import "~@ionic/angular/css/typography.css";
  17. @import '~@ionic/angular/css/display.css';
  18. /* Optional CSS utils that can be commented out */
  19. @import "~@ionic/angular/css/padding.css";
  20. @import "~@ionic/angular/css/float-elements.css";
  21. @import "~@ionic/angular/css/text-alignment.css";
  22. @import "~@ionic/angular/css/text-transformation.css";
  23. @import "~@ionic/angular/css/flex-utils.css";
  24. // @import url('');
  25. // @import url('');
  26. ion-button, button, a, p, div, input {
  27. font-family: 'Roboto', sans-serif;
  28. text-transform: none;
  29. outline: none;
  30. }
  31. figure {
  32. margin: 0;
  33. }
  34. header, h1, h2, h3, h4, h5 {
  35. font-family: 'M PLUS Rounded 1c', sans-serif;
  36. margin: 0;
  37. }
  38. // Hamburger menu
  39. .menu-icon-holder {
  40. background-color: #005cbe;
  41. color: white;
  42. position: fixed;
  43. bottom: -60px;
  44. box-shadow: 0px 0px 5px var(--brand-blue);
  45. width: 100px;
  46. height: 100px;
  47. text-align: center;
  48. left: calc((100% - 100px)/2);
  49. border-radius: 50%;
  50. padding-top: 7px;
  51. z-index: 1;
  52. transition: transform 0.5s;
  53. transform: translateY(0);
  54. opacity: 0.7;
  55. &.hide {
  56. display: none;
  57. }
  58. &.inactive {
  59. transform: translateY(100px);
  60. }
  61. ion-icon {
  62. font-size: 30px;
  63. }
  64. }
  65. .close-icon-holder {
  66. background-color: white;
  67. width: 70%;
  68. position: fixed;
  69. left: calc((100% - 70%) / 2);
  70. height: 100px;
  71. border-radius: 50%;
  72. color: var(--brand-blue);
  73. text-align: center;
  74. z-index: 5;
  75. bottom: -60px;
  76. padding-top: 10px;
  77. transition: transform 0.3s;
  78. transform: scale(0);
  79. &.active {
  80. transform: scale(1);
  81. }
  82. ion-icon {
  83. font-size: 25px;
  84. }
  85. }
  86. .menu-items-holder {
  87. background-image: url('assets/custom/background-5.svg');
  88. background-size: cover;
  89. background-repeat: no-repeat;
  90. background-position: left top;
  91. border-radius: 50%;
  92. position: fixed;
  93. left: calc((100% - 150%) / 2);
  94. bottom: -150px;
  95. z-index: 4;
  96. height: 300px;
  97. width: 150%;
  98. padding: 20px 30%;
  99. display: flex;
  100. justify-content: space-between;
  101. align-items: flex-start;
  102. transition: transform 0.3s;
  103. transform: scale(0);
  104. &.active {
  105. transform: scale(1);
  106. }
  107. button {
  108. background-color: white;
  109. height: 50px;
  110. width: 50px;
  111. border-radius: 50%;
  112. font-size: 20px;
  113. position: relative;
  114. &:first-child {
  115. transform: translateY(40px);
  116. }
  117. &:nth-child(2) {
  118. transform: translateY(20px);
  119. }
  120. &:nth-child(3) {
  121. transform: translateY(10px);
  122. }
  123. &:last-child {
  124. transform: translateY(40px);
  125. }
  126. &:nth-child(4) {
  127. transform: translateY(20px);
  128. }
  129. }
  130. }
  131. .overlay {
  132. position: fixed;
  133. top: 0;
  134. left: 0;
  135. height: 100vh;
  136. width: 100vw;
  137. pointer-events: none;
  138. background-color: black;
  139. opacity: 0;
  140. z-index: 3;
  141. transition: opacity 0.5s;
  142. &.active {
  143. pointer-events: all;
  144. opacity: 0.5;
  145. }
  146. }
  147. .results-utilities-holder {
  148. display: flex;
  149. width: 100%;
  150. margin: 10px auto 0;
  151. justify-content: space-between;
  152. align-items: center;
  153. font-weight: bold;
  154. &.no-padding {
  155. margin: 0 auto;
  156. }
  157. h5 {
  158. margin: 0 0 0 10px;
  159. color: var(--brand-dark-grey);
  160. font-size: 10px;
  161. }
  162. ion-button {
  163. margin: 0;
  164. font-size: 10px;
  165. padding: 0;
  166. }
  167. }
  168. .result-list ion-item {
  169. margin: 0 0 20px;
  170. ion-label {
  171. padding: 0;
  172. margin: 0;
  173. }
  174. img {
  175. align-self: flex-start;
  176. width: 70px;
  177. height: 70px;
  178. object-fit: cover;
  179. margin-right: 15px;
  180. }
  181. h3 {
  182. margin: 0;
  183. color: var(--brand-dark-grey);
  184. font-weight: 500;
  185. font-size: 14px;
  186. letter-spacing: 0.5px;
  187. text-overflow: ellipsis;
  188. display: flex;
  189. justify-content: space-between;
  190. ion-icon {
  191. color: var(--brand-grey);
  192. font-size: 16px;
  193. &.active {
  194. color: var(--brand-blue);
  195. }
  196. }
  197. }
  198. .description {
  199. font-size: 10px;
  200. color: var(--brand-grey);
  201. }
  202. .offers-holder {
  203. display: flex;
  204. justify-content: space-between;
  205. color: var(--brand-yellow);
  206. letter-spacing: 0.5px;
  207. border-bottom: 1px solid #efefef;
  208. padding: 7px 0;
  209. margin-bottom: 7px;
  210. .offer {
  211. font-size: 10px;
  212. width: 50%;
  213. }
  214. }
  215. .utilities-holder {
  216. display: flex;
  217. justify-content: space-between;
  218. align-items: center;
  219. .container {
  220. display: flex;
  221. width: 40%;
  222. justify-content: space-between;
  223. .utility {
  224. width: 50%;
  225. font-size: 10px;
  226. color: var(--brand-grey);
  227. font-weight: bold;
  228. }
  229. .utility-button {
  230. text-align: right;
  231. width: 50%;
  232. background-color: transparent;
  233. border: 0;
  234. font-size: 16px;
  235. color: var(--brand-grey);
  236. }
  237. }
  238. }
  239. }
  240. .sort-filter-holder {
  241. background-color: white;
  242. position: fixed;
  243. width: 100%;
  244. z-index: 5;
  245. bottom: 0;
  246. left: 0;
  247. box-shadow: 0px 0px 5px var(--brand-grey);
  248. transition: transform 0.5s;
  249. transform: translateY(50vh);
  250. &.active {
  251. transform: translateY(0);
  252. }
  253. header {
  254. background-color: var(--brand-blue);
  255. color: white;
  256. display: flex;
  257. justify-content: space-between;
  258. padding: 15px;
  259. font-size: 14px;
  260. align-items: center;
  261. position: relative;
  262. button {
  263. background-color: transparent;
  264. border: 1px solid white;
  265. font-size: 10px;
  266. height: 25px;
  267. padding: 0 15px;
  268. color: white;
  269. border-radius: 30px;
  270. }
  271. }
  272. .sort-buttons-holder {
  273. display: flex;
  274. padding: 15px;
  275. flex-wrap: wrap;
  276. justify-content: space-between;
  277. position: relative;
  278. button {
  279. background-color: transparent;
  280. color: var(--brand-dark-grey);
  281. font-size: 10px;
  282. margin-bottom: 30px;
  283. &.active {
  284. color: var(--brand-blue);
  285. .icon-holder {
  286. border-color: var(--brand-blue);
  287. color: var(--brand-blue);
  288. }
  289. }
  290. .icon-holder {
  291. border: 1px solid var(--brand-grey);
  292. color: var(--brand-grey);
  293. width: 50px;
  294. height: 50px;
  295. margin: 0 auto 10px;
  296. display: flex;
  297. justify-content: center;
  298. align-items: center;
  299. border-radius: 50%;
  300. letter-spacing: 0.5px;
  301. font-size: 15px;
  302. ion-icon {
  303. font-size: 24px;
  304. }
  305. }
  306. }
  307. }
  308. }