Spaces:
Sleeping
Sleeping
| /* =========== Google Fonts ============ */ | |
| @import url("https://fonts.googleapis.com/css2?family=Ubuntu:wght@300;400;500;700&display=swap"); | |
| /* =============== Globals ============== */ | |
| * { | |
| font-family: "Ubuntu", sans-serif; | |
| margin: 0; | |
| padding: 0; | |
| box-sizing: border-box; | |
| } | |
| :root { | |
| --blue: #0c7178; | |
| --white: #fff; | |
| --gray: #f5f5f5; | |
| --black1: #222; | |
| --black2: #999; | |
| } | |
| body { | |
| min-height: 100vh; | |
| overflow-x: hidden; | |
| } | |
| .container { | |
| position: relative; | |
| width: 100%; | |
| } | |
| /* =============== Navigation ================ */ | |
| .navigation { | |
| position: fixed; | |
| width: 300px; | |
| height: 100%; | |
| background: var(--blue); | |
| border-left: 10px solid var(--blue); | |
| transition: 0.5s; | |
| overflow: hidden; | |
| } | |
| .navigation.active { | |
| width: 80px; | |
| } | |
| .navigation ul { | |
| position: absolute; | |
| top: 0; | |
| left: 0; | |
| width: 100%; | |
| } | |
| .navigation ul li { | |
| position: relative; | |
| width: 100%; | |
| list-style: none; | |
| border-top-left-radius: 30px; | |
| border-bottom-left-radius: 30px; | |
| } | |
| .navigation ul li:hover, | |
| .navigation ul li.hovered { | |
| background-color: var(--white); | |
| } | |
| .navigation ul li:nth-child(1) { | |
| margin-bottom: 40px; | |
| pointer-events: none; | |
| } | |
| .navigation ul li a { | |
| position: relative; | |
| display: block; | |
| width: 100%; | |
| display: flex; | |
| text-decoration: none; | |
| color: var(--white); | |
| } | |
| .navigation ul li:hover a, | |
| .navigation ul li.hovered a { | |
| color: var(--blue); | |
| } | |
| .navigation ul li a .icon { | |
| position: relative; | |
| display: block; | |
| min-width: 60px; | |
| height: 60px; | |
| line-height: 75px; | |
| text-align: center; | |
| } | |
| .navigation ul li a .icon ion-icon { | |
| font-size: 1.75rem; | |
| } | |
| table { | |
| border-collapse: collapse; | |
| width: 100%; | |
| } | |
| th, td { | |
| padding: 8px; | |
| text-align: left; | |
| border-bottom: 1px solid #ddd; | |
| } | |
| tr:nth-child(even) { | |
| background-color: #f2f2f2; | |
| } | |
| th { | |
| background-color: var(--blue); | |
| color: white; | |
| } | |
| .details-button { | |
| background-color: var(--blue); | |
| border: none; | |
| color: white; | |
| padding: 8px 12px; | |
| text-align: center; | |
| text-decoration: none; | |
| display: inline-block; | |
| cursor: pointer; | |
| font-size: 14px; | |
| } | |
| .details-button:hover { | |
| background-color: #45a049; | |
| } | |
| .navigation ul li a .title { | |
| position: relative; | |
| display: block; | |
| padding: 0 10px; | |
| height: 60px; | |
| line-height: 60px; | |
| text-align: start; | |
| white-space: nowrap; | |
| } | |
| /* --------- curve outside ---------- */ | |
| .navigation ul li:hover a::before, | |
| .navigation ul li.hovered a::before { | |
| content: ""; | |
| position: absolute; | |
| right: 0; | |
| top: -50px; | |
| width: 50px; | |
| height: 50px; | |
| background-color: transparent; | |
| border-radius: 50%; | |
| box-shadow: 35px 35px 0 10px var(--white); | |
| pointer-events: none; | |
| } | |
| .navigation ul li:hover a::after, | |
| .navigation ul li.hovered a::after { | |
| content: ""; | |
| position: absolute; | |
| right: 0; | |
| bottom: -50px; | |
| width: 50px; | |
| height: 50px; | |
| background-color: transparent; | |
| border-radius: 50%; | |
| box-shadow: 35px -35px 0 10px var(--white); | |
| pointer-events: none; | |
| } | |
| /* ===================== Main ===================== */ | |
| .main { | |
| position: absolute; | |
| width: calc(100% - 300px); | |
| left: 300px; | |
| min-height: 100vh; | |
| background: var(--white); | |
| transition: 0.5s; | |
| } | |
| .main.active { | |
| width: calc(100% - 80px); | |
| left: 80px; | |
| } | |
| .topbar { | |
| width: 100%; | |
| height: 60px; | |
| display: flex; | |
| justify-content: space-between; | |
| align-items: center; | |
| padding: 0 10px; | |
| } | |
| .toggle { | |
| position: relative; | |
| width: 60px; | |
| height: 60px; | |
| display: flex; | |
| justify-content: center; | |
| align-items: center; | |
| font-size: 2.5rem; | |
| cursor: pointer; | |
| } | |
| .search { | |
| position: relative; | |
| width: 400px; | |
| margin: 0 10px; | |
| } | |
| .search label { | |
| position: relative; | |
| width: 100%; | |
| } | |
| .search label input { | |
| width: 100%; | |
| height: 40px; | |
| border-radius: 40px; | |
| padding: 5px 20px; | |
| padding-left: 35px; | |
| font-size: 18px; | |
| outline: none; | |
| border: 1px solid var(--black2); | |
| } | |
| .search label ion-icon { | |
| position: absolute; | |
| top: 0; | |
| left: 10px; | |
| font-size: 1.2rem; | |
| } | |
| .user { | |
| position: relative; | |
| width: 40px; | |
| height: 40px; | |
| border-radius: 50%; | |
| overflow: hidden; | |
| cursor: pointer; | |
| } | |
| .detailsPuskesmas { | |
| color: #999; | |
| font-size: 1.1rem; | |
| margin-top: 5px; | |
| } | |
| /* ======================= Cards ====================== */ | |
| .cardBox { | |
| position: relative; | |
| width: 198%; | |
| padding: 20px; | |
| display: grid; | |
| grid-template-columns: repeat(4, 1fr); | |
| grid-gap: 30px; | |
| } | |
| .cardBox .card { | |
| position: relative; | |
| background: var(--white); | |
| padding: 30px; | |
| border-radius: 20px; | |
| display: flex; | |
| justify-content: space-between; | |
| cursor: pointer; | |
| box-shadow: 0 7px 25px rgba(0, 0, 0, 0.08); | |
| } | |
| .cardBox .card .numbers { | |
| position: relative; | |
| font-weight: 500; | |
| font-size: 2.5rem; | |
| color: var(--blue); | |
| } | |
| .cardBox .card .cardName { | |
| color: var(--black2); | |
| font-size: 1.1rem; | |
| margin-top: 5px; | |
| } | |
| .cardBox .card .iconBx { | |
| font-size: 3.5rem; | |
| color: var(--black2); | |
| } | |
| .cardBox .card:hover { | |
| background: var(--blue); | |
| } | |
| .cardBox .card:hover .numbers, | |
| .cardBox .card:hover .cardName, | |
| .cardBox .card:hover .iconBx { | |
| color: var(--white); | |
| } | |
| /* ================== Order Details List ============== */ | |
| .details { | |
| position: relative; | |
| width: 150%; | |
| padding: 20px; | |
| display: grid; | |
| grid-template-columns: 2fr 1fr; | |
| grid-gap: 30px; | |
| /* margin-top: 10px; */ | |
| } | |
| /* charts */ | |
| .graphBox | |
| { | |
| margin: 0 30px 0 20px; | |
| /* position: relative; */ | |
| padding: 20px; | |
| width: calc(100% - 50px); | |
| /* height: 200px; */ | |
| padding: 20px; | |
| box-shadow: 0 7px 25px rgba(0,0,0,0.08); | |
| border-radius: 20px; | |
| /* display: grid; */ | |
| /* grid-template-columns: 1fr 2fr; */ | |
| /* grid-gap: 30px; */ | |
| } | |
| .graphBox .box | |
| { | |
| position: relative; | |
| background: #white; | |
| width: 100%; | |
| height: 2 | |
| padding: 20px; | |
| box-shadow: 0 7px 25px rgba(0,0,0,0.08); | |
| border-radius: 20px; | |
| } | |
| .details .chart { | |
| position: relative; | |
| display: grid; | |
| min-height: 500px; | |
| background: var(--white); | |
| padding: 20px; | |
| box-shadow: 0 7px 25px rgba(0, 0, 0, 0.08); | |
| border-radius: 20px; | |
| } | |
| .details .cardHeader { | |
| display: flex; | |
| justify-content: space-between; | |
| align-items: flex-start; | |
| } | |
| .cardHeader h2 { | |
| font-weight: 600; | |
| color: var(--blue); | |
| } | |
| .cardHeader .btn { | |
| position: relative; | |
| padding: 5px 10px; | |
| background: var(--blue); | |
| text-decoration: none; | |
| color: var(--white); | |
| border-radius: 6px; | |
| } | |
| .details table { | |
| width: 100%; | |
| border-collapse: collapse; | |
| margin-top: 10px; | |
| } | |
| .details table thead td { | |
| font-weight: 600; | |
| } | |
| /* ====================== Responsive Design ========================== */ | |
| @media (max-width: 991px) { | |
| .graphBox{ | |
| grid-template-columns: 1fr; | |
| height: auto; | |
| } | |
| .navigation { | |
| left: -300px; | |
| } | |
| .navigation.active { | |
| width: 300px; | |
| left: 0; | |
| } | |
| .main { | |
| width: 100%; | |
| left: 0; | |
| } | |
| .main.active { | |
| left: 300px; | |
| } | |
| .cardBox { | |
| grid-template-columns: repeat(2, 1fr); | |
| } | |
| } | |
| @media (max-width: 768px) { | |
| .details { | |
| grid-template-columns: 1fr; | |
| } | |
| .recentOrders { | |
| overflow-x: auto; | |
| } | |
| .status.inProgress { | |
| white-space: nowrap; | |
| } | |
| } | |
| @media (max-width: 480px) { | |
| .cardBox { | |
| grid-template-columns: repeat(1, 1fr); | |
| } | |
| .cardHeader h2 { | |
| font-size: 20px; | |
| } | |
| .user { | |
| min-width: 40px; | |
| } | |
| .navigation { | |
| width: 100%; | |
| left: -100%; | |
| z-index: 1000; | |
| } | |
| .navigation.active { | |
| width: 100%; | |
| left: 0; | |
| } | |
| .toggle { | |
| z-index: 10001; | |
| } | |
| .main.active .toggle { | |
| color: #fff; | |
| position: fixed; | |
| right: 0; | |
| left: initial; | |
| } | |
| } | |
| .search-container { | |
| position: relative; | |
| display: inline-block; | |
| padding-bottom: 10px; | |
| } | |
| .search-input { | |
| padding: 10px; | |
| border: 1px solid #ccc; | |
| border-radius: 4px; | |
| } | |
| .search-button { | |
| float: right; | |
| padding: 10px; | |
| background-color: #ccc; | |
| border: none; | |
| border-radius: 4px; | |
| cursor: pointer; | |
| } | |