/* Tata letak untuk perangkat mobile */
@media (max-width: 480px) {
    p {
        font-family: 'Arial', serif;
    }
    h1 {
        font-family: 'Helvetica', serif;
    }
    h2 {
        font-family: 'Roboto', Helvetica;
    }
    body {
        font-size: 14px;
		position: relative;
    	min-height: 100vh;
    	margin: 0;
    	padding: 0;
    	background-color: #d3d4cf;
    }
	/*body.menu {
		background-image: url('BGmobile.png');
        background-size: cover;
        background-attachment: fixed;
	}*/
    header {
        padding: 2px;
        text-align: center;
		position: fixed;
    	top: 0;
    	left: 0;
    	width: 100%;
    	color: navy;
    }
    nav ul {
        display: none;
		position: fixed;
    	top: 70px;
    	left: 0;
    	width: 200px;
    	background-color: #1ed448;
    	padding: 20px;
    }
    nav li {
        display: inline;
        padding-left: 10px;
        padding-right: 10px;
    }
    nav a {
        color: navy;
        text-decoration: none;
    }
	.no-underline {
	    text-decoration: none;
	}
    main section {
        margin: 20px;
    }
    footer {
        text-align: center;
        font-size: 12px;
		position: fixed;
    	bottom: 0;
    	left: 0;
    	width: 100%;
    	padding: 20px;
    }
	table.input {
    	border-collapse: collapse;
    	border: 2px solid grey;
	}
	table.input td, table.input th {
    	padding: 8px;
    	color: #110094;
	}
	td {
	    font-family: 'Roboto', Helvetica;
	}
	table.menu {
	    border-collapse: collapse;
	}
	table.menu, th.menu, td.menu {
    	border: 1px solid #cffff4;
    	padding: 5px;
	}
	tr.bg-color1 {
	    background-color: #d3ffa1;
	}
	tr.bg-color2 {
	    background-color: #d6e3c7;
	}
	tr.input, td.input, th.input {
    	border: 1px solid black;
    	padding: 5px;
	}
	
	.pagination {
        margin-top: 10px;
        text-align: left;
	}
	.pagination a {
        display: inline-block;
        margin: 1px;
        padding: 5px 5px;
        border: 1px solid #ccc;
        text-decoration: none;
	}
	.pagination input {
        display: inline-block;
        width: 20px;
        margin: 1px;
        padding: 5px;
        text-align: center;
        border: 1px solid #ccc;
        background-color: #f5f5f5;
	}

	section::after {
    	content: "";
    	display: table;
    	clear: both;
    }
}

/* Tata letak untuk perangkat desktop */
@media (min-width: 481px) {
    p {
        font-family: 'Arial', serif;
    }
    h1 {
        font-family: 'Helvetica', serif;
    }
    h2 {
        font-family: 'Roboto', Helvetica;
    }
    body {
        font-size: 16px;
    	background-color: #d3d4cf;
    }
	/*body.menu {
		background-image: url('BG2.png');
        background-size: cover;
        background-attachment: fixed;
	}*/
    header {
        padding: 0px;
        text-align: center;
    	top: 0;
    	left: 0;
		color:navy;
    	width: 1280px;
    }
    nav ul {
        list-style-type: none;
        margin: 0;
        padding: 7px;
    	left: 0;
    	/*background-color: #;*/
		font-weight: bold;
    	width: 1266px;
    }
    nav li {
        display: inline;
        padding-left: 10px;
        padding-right: 10px;
    }
    nav a {
        color: navy;
        text-decoration: none;
    }
	.no-underline {
	text-decoration: none;
	}
    main section {
        margin: 1px;
    }
    footer {
        text-align: center;
        font-size: 14px;
    	bottom: 0;
    	left: 0;
    	width: 1280px;
    }
	table {
	    border-collapse: collapse;
	}
	table.input {
    	border-collapse: collapse;
    	border: 2px solid grey;
	}
	table.input td, table.input th {
    	padding: 8px;
    	color: #110094;
	}
	td {
	    font-family: 'Roboto', Helvetica;
	}
	table.menu {
	    border-collapse: collapse;
	}
	table.menu, th.menu, td.menu {
    	border: 1px solid #cffff4;
    	padding: 5px;
	}
	tr.bg-color1 {
	    background-color: #d3ffa1;
	}
	tr.bg-color2 {
	    background-color: #d6e3c7;
	}
	tr.input, td.input, th.input {
    	border: 1px solid black;
    	padding: 5px;
	}
	
	.pagination {
        margin-top: 10px;
        text-align: left;
	}
	.pagination a {
        display: inline-block;
        margin: 1px;
        padding: 5px 5px;
        border: 1px solid #ccc;
        text-decoration: none;
	}
	.pagination input {
        display: inline-block;
        width: 20px;
        margin: 1px;
        padding: 5px;
        text-align: center;
        border: 1px solid #ccc;
        background-color: #f5f5f5;
	}
	
	.popup-content {
		background-color: #fff;
		width: 300px;
		padding: 20px;
		margin: 100px auto;
		border-radius: 8px;
		box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
	}
	
	#canvasWrapper {
        position: relative;
        overflow: hidden;
        width: 600px;
        height: 400px;
	}
	#canvas {
		cursor: crosshair;
	}
	#zoomControls {
		margin-top: 10px;
	}
	#submitBtn {
		margin-top: 10px;
	}
	
	.overlay {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.7);
        z-index: 9999;
	}
	.popup {
        position: fixed;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 400px;
        height: 400px;
        background-color: white;
        border-radius: 5px;
        box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.3);
        z-index: 10000;
        padding: 20px;
        text-align: center;
	}
	.close-button {
        position: absolute;
        top: 10px;
        right: 10px;
        cursor: pointer;
	}
	
	#scrollable-table-container {
    	max-height: 350px;
    	overflow-x: auto;
    	overflow-y: auto;
	}
	#tbdata {
	    border-collapse: collapse;
	}
	#tbdata thead th {
        background-color: #f2f2f2;
        position: sticky;
        top: 0;
        z-index: 2;
	}
}