/* Navigasi geser hanya untuk teknis.php. Halaman lain tidak diubah. */
.tech-page #techSidebar {
  width: 264px;
  padding: 23px 17px 18px;
  z-index: 1100;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  transition: transform .27s cubic-bezier(.2,.75,.3,1), box-shadow .27s ease;
  box-shadow: 5px 0 24px rgba(17, 41, 33, .08);
}
.tech-page main {
  margin-left: 264px;
  min-width: 0;
  transition: margin-left .27s cubic-bezier(.2,.75,.3,1);
}
.tech-page.sidebar-collapsed #techSidebar { transform: translateX(-105%); box-shadow: none; }
.tech-page.sidebar-collapsed main { margin-left: 0; }
.tech-sidebar-head { display:flex; justify-content:space-between; align-items:center; gap:5px; }
.tech-page #techSidebar .brand { min-width:0; font-size:24px; letter-spacing:2px; gap:8px; }
.tech-page #techSidebar .brand small { letter-spacing:1.5px; }
.tech-page #techSidebar .navlabel { margin:37px 11px 7px; color:#afcfba; }
.tech-sidebar-guide { padding:0 11px; margin:0 0 12px; color:#bed3c7; font-size:11px; line-height:1.55; }
.tech-page #techSidebar #nav { display:block; flex:initial; overflow:visible; margin:0; }
.tech-page #techSidebar #nav button { display:block; width:100%; margin:4px 0; white-space:normal; line-height:1.5; padding:11px 13px; color:#d5e5da; font-size:13px; text-align:left; border-radius:9px; background:transparent; transition: background .13s, color .13s; }
.tech-page #techSidebar #nav button:hover { background:rgba(255,255,255,.09); color:#fff; }
.tech-page #techSidebar #nav button.active { color:#153e34; background:#ddecad; }
.tech-page #techSidebar #nav button:focus-visible { outline:2px solid #ebf7b9; outline-offset:2px; }
.tech-page #techSidebar .sidebarfoot { padding:18px 11px 4px; margin-top:24px; }
.tech-sidebar-close { flex:0 0 auto; width:35px; height:35px; padding:0; border:1px solid rgba(255,255,255,.16); border-radius:8px; background:rgba(255,255,255,.08); color:white; font-size:18px; line-height:1; display:grid; place-items:center; }
.tech-sidebar-close:hover { background:rgba(255,255,255,.18); }
.tech-page .tech-header { gap:15px; justify-content:space-between; }
.tech-head-left, .tech-header-actions { display:flex; align-items:center; gap:12px; min-width:0; }
.tech-header-kicker { font-size:10px; letter-spacing:1.35px; color:var(--muted); }
.tech-page .tech-header-actions { gap:10px; flex-wrap:wrap; justify-content:flex-end; }
.tech-menu-toggle { display:inline-flex; align-items:center; gap:9px; padding:10px 13px; font-size:12px; font-weight:650; border:1px solid #bed0c1; border-radius:9px; background:#fff; color:#174937; white-space:nowrap; }
.tech-menu-toggle:hover { background:#e8f2e6; }
.tech-menu-toggle svg { flex:none; }
.tech-page .tech-sidebar-overlay { display:none; }
@media (max-width: 1100px) {
 .tech-page #techSidebar { width:248px; }
 .tech-page main { margin-left:248px; }
 .tech-page.sidebar-collapsed main { margin-left:0; }
}
@media (max-width: 700px) {
 .tech-page #techSidebar {
   position:fixed;
   top:0; bottom:0; left:0;
   width:min(310px, 86vw);
   height:100vh;
   height:100dvh;
   max-height:100dvh;
   transform:translateX(-105%);
   padding:20px 16px;
   box-shadow:none;
 }
 .tech-page.sidebar-open #techSidebar { transform:translateX(0); box-shadow:8px 0 32px rgba(0,0,0,.28); }
 .tech-page main, .tech-page.sidebar-collapsed main { margin-left:0; }
 .tech-page.sidebar-open { overflow:hidden; }
 .tech-page .tech-sidebar-overlay { display:block; position:fixed; inset:0; z-index:1090; background:rgba(12,29,23,.55); opacity:0; pointer-events:none; transition:opacity .27s ease; }
 .tech-page.sidebar-open .tech-sidebar-overlay { opacity:1; pointer-events:auto; }
 .tech-page .tech-header { min-height:68px; height:auto; flex-wrap:wrap; padding:12px 0; gap:9px; }
 .tech-page .tech-head-left { width:100%; justify-content:space-between; }
 .tech-page .tech-header-kicker { font-size:9px; text-align:right; letter-spacing:.75px; }
 .tech-page .tech-header-actions { width:100%; justify-content:flex-start; }
 .tech-page .tech-header-actions .linkbtn, .tech-page .tech-header-actions button { padding:7px 10px; font-size:11px; }
 .tech-page #techSidebar .navlabel { display:block; }
 .tech-page #techSidebar .sidebarfoot { display:block; }
}
@media (prefers-reduced-motion:reduce) {
 .tech-page #techSidebar, .tech-page main, .tech-page .tech-sidebar-overlay { transition:none; }
}
@media print {
 .tech-page #techSidebar, .tech-page .tech-sidebar-overlay { display:none !important; }
 .tech-page main, .tech-page.sidebar-collapsed main { margin:0 !important; }
}
