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.

378 lines
8.0 KiB

  1. /* assets/style/navbarStyles.css */
  2. /* ===== FIX typo ===== */
  3. #nav{
  4. display: flex;
  5. align-items: center;
  6. justify-content: space-between;
  7. background-color: white;
  8. box-shadow: 0 5px 15px rgba(0,0,0,0.06); /* <-- fixed */
  9. position: fixed;
  10. top: 0px;
  11. width: 100%;
  12. z-index: 9999;
  13. border-bottom: 3px solid #1976d2;
  14. min-height: 77px;
  15. }
  16. #navbar > div > li {
  17. height: 77px; /* one single source of truth */
  18. display: flex;
  19. align-items: stretch;
  20. padding: 0; /* IMPORTANT: stop li padding making different widths */
  21. margin: 0;
  22. }
  23. #navbar div li{
  24. padding: 0; /* override your earlier padding: 0 1vw */
  25. }
  26. /* Make dropdown button identical to anchor */
  27. #navbar > div > li > button.navTrigger {
  28. background: transparent;
  29. border: 0;
  30. padding: 0; /* remove default button padding */
  31. margin: 0;
  32. font: inherit; /* inherit font from li */
  33. line-height: 1; /* normalize */
  34. height: auto;
  35. display: inline-flex;
  36. align-items: center;
  37. cursor: pointer;
  38. }
  39. /* Make both anchor and button same vertical box */
  40. #navbar > div > li > a,
  41. #navbar > div > li > button.navTrigger {
  42. height: 100% !important; /* override the old 72px */
  43. padding: 0 24px !important; /* bigger hit area */
  44. display: flex;
  45. align-items: center;
  46. box-sizing: border-box;
  47. }
  48. /* Submenu triggers: same font as app (Noto Sans), bold */
  49. #navbar > div > li > button.navTrigger,
  50. #navbar > div > li > button.navTrigger .MuiTypography-root {
  51. font-weight: 600 !important;
  52. font-family: "Noto Sans HK", "Noto Sans SC", sans-serif !important;
  53. font-size: 1.1rem !important;
  54. }
  55. /* Keep links bold */
  56. #navbar > div > li > a,
  57. #navbar > div > li > a .MuiTypography-root {
  58. font-weight: 600;
  59. }
  60. #navbar div{
  61. display: flex;
  62. align-items: center;
  63. justify-content: center;
  64. }
  65. #navbar div li{
  66. list-style: none;
  67. padding: 0 1vw;
  68. position: relative;
  69. }
  70. /* keep your <a> styling */
  71. #navbar div li a{
  72. text-decoration: none;
  73. font-size: 1.2rem;
  74. font-weight: 600;
  75. color: black;
  76. transition: 0.3s ease-in-out;
  77. }
  78. /* Dropdown trigger buttons: Noto Sans, bold */
  79. #navbar div li button.navTrigger{
  80. background: transparent;
  81. border: 0;
  82. padding: 0;
  83. cursor: pointer;
  84. text-decoration: none;
  85. font-size: 1.1rem;
  86. font-weight: 600;
  87. font-family: "Noto Sans HK", "Noto Sans SC", sans-serif;
  88. color: black;
  89. transition: 0.3s ease-in-out;
  90. display: inline-flex;
  91. align-items: center;
  92. gap: 0.25rem;
  93. }
  94. #navbar div li a span,
  95. #navbar div li a svg{
  96. font-size: 1vw !important;
  97. }
  98. #navbar div li a:hover,
  99. #navbar div li button.navTrigger:hover{
  100. color: #1976d2;
  101. }
  102. #navbar div li a:hover::after,
  103. #navbar div li a:focus-visible::after,
  104. #navbar div li button.navTrigger:hover::after,
  105. #navbar div li button.navTrigger:focus-visible::after{
  106. content: "";
  107. width: 80%;
  108. height: 3px;
  109. background:#1976d2;
  110. position: absolute;
  111. bottom: -5px;
  112. left: 20px;
  113. }
  114. /* submenu base */
  115. #navbar div li ul{
  116. background: white;
  117. visibility: hidden;
  118. opacity: 0;
  119. min-width: 18rem;
  120. position: absolute;
  121. left: 0;
  122. display: none;
  123. padding-left: 0px;
  124. padding-bottom: 7px;
  125. background-clip: padding-box;
  126. border: 1px solid rgba(0,0,0,.15);
  127. border-radius: 0.25rem;
  128. }
  129. /* hover open */
  130. #navbar div li:hover > ul{
  131. visibility: visible;
  132. opacity: 1;
  133. display: block;
  134. }
  135. /* keyboard open */
  136. #navbar div li:focus-within > ul{
  137. visibility: visible;
  138. opacity: 1;
  139. display: block;
  140. }
  141. /* Navbar focus ring */
  142. #navbar a:focus,
  143. #navbar button.navTrigger:focus{
  144. outline: none;
  145. }
  146. #navbar a:focus-visible,
  147. #navbar button.navTrigger:focus-visible{
  148. outline: 3px solid #1976d2;
  149. outline-offset: 2px;
  150. border-radius: 10px;
  151. }
  152. /* Top-level links (Dashboard, Application, Proof, Logout, etc.) */
  153. #navbar a.dashboard,
  154. #navbar a.application,
  155. #navbar a.proof,
  156. #navbar a.myDocumet,
  157. #navbar a.documentRecord,
  158. #navbar a.manageOrgUser,
  159. #navbar a.manageUser,
  160. #navbar a.systemSetting,
  161. #navbar a.report,
  162. #navbar a.payment,
  163. #navbar a.user,
  164. #navbar a.logout {
  165. font-size: 1.1rem !important;
  166. font-weight: 600 !important;
  167. }
  168. #navbar a.dashboard .MuiTypography-root,
  169. #navbar a.application .MuiTypography-root,
  170. #navbar a.proof .MuiTypography-root,
  171. #navbar a.myDocumet .MuiTypography-root,
  172. #navbar a.documentRecord .MuiTypography-root,
  173. #navbar a.manageOrgUser .MuiTypography-root,
  174. #navbar a.manageUser .MuiTypography-root,
  175. #navbar a.systemSetting .MuiTypography-root,
  176. #navbar a.report .MuiTypography-root,
  177. #navbar a.payment .MuiTypography-root,
  178. #navbar a.user .MuiTypography-root,
  179. #navbar a.logout .MuiTypography-root {
  180. font-size: 1.1rem !important;
  181. font-weight: 600 !important;
  182. }
  183. /* Submenu triggers: Noto Sans, 1.1rem, bold */
  184. #navbar button.navTrigger.paymentTop,
  185. #navbar button.navTrigger.client,
  186. #navbar button.navTrigger.setting,
  187. #navbar button.navTrigger.paymentRecord,
  188. #navbar button.navTrigger.userSetting,
  189. #navbar button.navTrigger.paymentTop .MuiTypography-root,
  190. #navbar button.navTrigger.client .MuiTypography-root,
  191. #navbar button.navTrigger.setting .MuiTypography-root,
  192. #navbar button.navTrigger.paymentRecord .MuiTypography-root,
  193. #navbar button.navTrigger.userSetting .MuiTypography-root {
  194. font-size: 1.1rem !important;
  195. font-weight: 600 !important;
  196. font-family: "Noto Sans HK", "Noto Sans SC", sans-serif !important;
  197. }
  198. /* Make them bigger + bold */
  199. #navbar a.login,
  200. #navbar a.register,
  201. #navbar a.login .MuiTypography-root,
  202. #navbar a.register .MuiTypography-root {
  203. font-size: 1.1rem !important;
  204. font-weight: 600 !important;
  205. }
  206. /* ===== your existing sidebar (unchanged) ===== */
  207. #systemTitle{
  208. text-decoration: none;
  209. font-size: 1.1rem;
  210. font-weight: 600;
  211. color: #1976d2;
  212. transition: 0.3s ease-in-out;
  213. text-align: center;
  214. }
  215. #mobileTitle{
  216. text-decoration: none;
  217. font-size: 1.1rem;
  218. font-weight: 600;
  219. color: #1976d2;
  220. transition: 0.3s ease-in-out;
  221. text-align: center;
  222. }
  223. #sidebar{
  224. font-size: 1.1rem;
  225. font-weight: 600;
  226. }
  227. #sidebartop{
  228. align-items: center;
  229. justify-content: start;
  230. padding: 0;
  231. display: flex;
  232. width: 100%;
  233. }
  234. #logoutContent{
  235. align-items: center;
  236. justify-content: center;
  237. padding: 0;
  238. display: flex;
  239. width: 100%;
  240. }
  241. #sidebarbottom{
  242. align-items: center;
  243. justify-content: center;
  244. padding: 0;
  245. display: flex;
  246. }
  247. #sidebar li{
  248. list-style: none;
  249. padding: 0 20px;
  250. position: relative;
  251. text-align: left;
  252. }
  253. #sidebar li a{
  254. text-decoration: none;
  255. font-size: 1.1rem;
  256. font-weight: 600;
  257. color: black;
  258. transition: 0.3s ease-in-out;
  259. }
  260. #sidebar li a:hover{
  261. color: #1976d2;
  262. }
  263. #sidebar div li ul{
  264. background: white;
  265. visibility: hidden;
  266. opacity: 0;
  267. min-width: 16rem;
  268. position: relative;
  269. left: 0;
  270. display: none;
  271. padding-left: 0px;
  272. }
  273. #sidebar div li:hover > ul,
  274. #sidebar div li:focus-within > ul,
  275. #sidebar div li ul:hover,
  276. #sidebar div li ul:focus{
  277. visibility: visible;
  278. opacity: 1;
  279. display: block;
  280. }
  281. /* ===== Mobile Drawer / Sidebar menu styling ===== */
  282. #sidebar ul {
  283. width: 100%;
  284. padding: 0;
  285. margin: 0;
  286. }
  287. #sidebar li{
  288. width: 100%;
  289. padding: 0; /* remove the old 0 20px */
  290. margin: 0;
  291. }
  292. /* Make BOTH links and dropdown buttons look the same */
  293. #sidebar li > a,
  294. #sidebar li > button.navTrigger{
  295. width: 100%;
  296. display: flex;
  297. align-items: center;
  298. justify-content: space-between; /* text left, arrow right */
  299. gap: 12px;
  300. background: transparent;
  301. border: 0; /* kill grey border */
  302. box-shadow: none;
  303. outline: none;
  304. padding: 14px 20px;
  305. text-align: left;
  306. font-size: 1.3rem;
  307. font-weight: 600;
  308. color: black;
  309. cursor: pointer;
  310. }
  311. /* Hover / focus */
  312. #sidebar li > a:hover,
  313. #sidebar li > button.navTrigger:hover{
  314. color: #1976d2;
  315. }
  316. #sidebar li > a:focus-visible,
  317. #sidebar li > button.navTrigger:focus-visible{
  318. outline: 3px solid #1976d2;
  319. outline-offset: 2px;
  320. border-radius: 10px;
  321. }
  322. /* Submenu (indent + full width) */
  323. #sidebar li ul{
  324. width: 100%;
  325. padding: 6px 0 6px 0;
  326. margin: 0;
  327. display: none;
  328. visibility: hidden;
  329. opacity: 0;
  330. }
  331. /* Open on focus-within (tap/click focuses button) */
  332. #sidebar li:focus-within > ul{
  333. display: block;
  334. visibility: visible;
  335. opacity: 1;
  336. }
  337. #sidebar li ul li > a{
  338. padding: 12px 20px 12px 40px; /* indent submenu */
  339. font-size: 1.15rem;
  340. font-weight: 600;
  341. }