/* RESPONSIVE, 768px (tablet) */ @media (max-width: 768px) { .container { padding: 0.75rem; } .padded-page { padding: 0.75rem; } .form-row { grid-template-columns: 1fr; } .data-table th, .data-table td { padding: 0.35rem 0.5rem; font-size: 0.8rem; } .directory-table th, .directory-table td { padding: 0.35rem 0.5rem; font-size: 0.8rem; } .page-header { flex-direction: column; align-items: flex-start; gap: 0.5rem; } /* Hamburger menu */ .nav-toggle-label { display: block; } .site-header nav { display: none; position: absolute; top: 100%; left: 0; right: 0; background: var(--background); border-bottom: 1px solid var(--border); padding: 0.75rem 1.25rem; z-index: 10; } .site-header { position: relative; } .nav-toggle-checkbox:checked ~ nav { display: block; } .site-header .nav-links { flex-direction: column; gap: 0.75rem; } /* Animate hamburger to X */ .nav-toggle-checkbox:checked ~ .nav-toggle-label span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); } .nav-toggle-checkbox:checked ~ .nav-toggle-label span:nth-child(2) { opacity: 0; } .nav-toggle-checkbox:checked ~ .nav-toggle-label span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); } /* Hide less important columns on mobile */ .data-table .col-author { display: none; } .directory-table .col-type, .directory-table .col-items { display: none; } .col-replies { width: auto; } } /* RESPONSIVE, 480px (phone) */ @media (max-width: 480px) { .container { padding: 0.5rem; } .padded-page { padding: 0.5rem; } h1 { font-size: 1.6rem; } .toast-container { left: 0.75rem; right: 0.75rem; } .toast { max-width: 100%; } .post-header { flex-direction: column; gap: 0.2rem; } /* The composer and the on-screen keyboard together take most of a phone, so the log gives up height rather than pushing the input off the bottom. */ .chat-log { height: 55vh; padding: 0.35rem; } /* No hover on a touch screen, so a delete control that only appears on hover is a control that does not exist. */ .chat-remove { opacity: 1; } }