/* Final shared navigation contract. Loaded after page-specific CSS. */
.site-header{box-sizing:border-box;display:flex!important;align-items:center!important;min-height:76px!important;height:76px!important;gap:clamp(16px,2.5vw,34px)!important;padding:0 clamp(18px,5vw,72px)!important;background:#fff!important;border-bottom:1px solid #e3e7f1!important;overflow:visible!important}
.site-header .brand{flex:0 0 auto!important;display:flex!important;align-items:center!important;max-width:210px!important}
.site-header .brand{font-size:0!important;gap:0!important;width:190px!important;height:52px!important;max-width:190px!important;background-image:url('../images/plodscam-logo-th-cropped.webp?v=20260816-1')!important;background-position:left center!important;background-size:contain!important;background-repeat:no-repeat!important}
.site-header .brand .brand-mark,.site-header .brand>span{display:none!important}
.site-header .brand img{display:block!important;max-width:100%!important;height:auto!important}
.site-header .universal-site-nav{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:clamp(14px,2vw,30px)!important;flex:1 1 auto!important;min-width:0!important;margin:0!important;white-space:nowrap!important}
/* Keep account sign-in in the markup for a later relaunch, but hide it while public access is enabled. */
.site-header .universal-site-nav a[href*="account.php"],.mobile-menu nav a[href*="account.php"]{display:none!important}
body.responsive-nav-collapsed .mobile-menu nav a[href*="account.php"]{display:none!important}
.site-header .universal-site-nav a{display:inline-flex!important;align-items:center!important;min-height:40px!important;color:#27345d!important;font-size:15px!important;font-weight:500!important;line-height:1.2!important;white-space:nowrap!important;text-decoration:none!important}
.site-header .universal-site-nav .universal-admin-view-toggle{display:inline-flex!important;align-items:center!important;gap:0!important;margin:0!important;padding:0!important;border:0!important}
.site-header .universal-site-nav .universal-admin-view-toggle button{min-height:36px!important;padding:7px 10px!important;text-align:center!important;white-space:nowrap!important}
.site-header .universal-site-nav .universal-admin-view-status{display:none!important}
.site-header .language-trigger{touch-action:manipulation!important;cursor:pointer!important}
.site-header .header-actions{display:flex!important;align-items:center!important;gap:12px!important;flex:0 0 auto!important;white-space:nowrap!important}
.site-header .mobile-menu-toggle{display:none!important}
.site-header.is-collapsed-nav .universal-site-nav{display:none!important}
.site-header.is-collapsed-nav .header-actions{margin-left:auto!important}
.site-header.is-collapsed-nav .mobile-menu-toggle{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:40px!important;height:40px!important;padding:0!important;border:1px solid #cfd7ec!important;border-radius:10px!important;background:#fff!important;color:#182653!important;font-size:22px!important;line-height:1!important;cursor:pointer!important}
body.responsive-nav-collapsed .mobile-menu{display:block!important;position:fixed!important;top:86px!important;right:12px!important;z-index:70!important;width:min(300px,calc(100vw - 24px))!important;max-height:calc(100vh - 100px)!important;overflow:auto!important;padding:10px!important;background:#fff!important;border:1px solid #d5dbea!important;border-radius:14px!important;box-shadow:0 18px 50px rgba(20,30,90,.22)!important}
body.responsive-nav-collapsed .mobile-menu[hidden]{display:none!important}
body.responsive-nav-collapsed .mobile-menu nav{display:grid!important;gap:3px!important}
body.responsive-nav-collapsed .mobile-menu nav a,body.responsive-nav-collapsed .mobile-menu .mobile-menu-parent{display:flex!important;align-items:center!important;gap:12px!important;padding:12px 13px!important;border-radius:10px!important;color:#27345d!important;font-size:14px!important;font-weight:700!important;text-decoration:none!important}
body.responsive-nav-collapsed .mobile-menu nav a:hover,body.responsive-nav-collapsed .mobile-menu nav a:focus-visible,body.responsive-nav-collapsed .mobile-menu .mobile-menu-parent:hover,body.responsive-nav-collapsed .mobile-menu .mobile-menu-parent:focus-visible{background:#edf1fb!important;color:#3548e6!important;outline:0!important}
.universal-role-nav{box-sizing:border-box!important;position:fixed!important;top:76px!important;left:0!important;bottom:0!important;width:190px!important;z-index:40!important;margin:0!important;padding:0!important;overflow-x:hidden!important;overflow-y:auto!important;background:#fff!important;border-right:1px solid #e3e7f1!important;box-shadow:8px 0 24px rgba(20,30,90,.06)!important}
.universal-role-nav~main,.universal-role-nav+main{margin-left:190px!important}
.universal-role-nav-mobile{display:none!important}
.universal-role-nav-desktop{display:block!important;padding:18px 10px 24px!important}
.universal-role-nav-desktop .universal-role-section{display:block!important}
.universal-role-nav-desktop .universal-role-tab{display:block!important;margin:0 0 3px!important}
.universal-role-nav-desktop .universal-role-panel{padding:0 0 10px!important}
.universal-role-nav-desktop .universal-role-panel[hidden]{display:none!important}
.universal-role-nav .universal-subscriber-nav,.universal-role-nav .universal-admin-nav{position:static!important;top:auto!important;margin:0!important;background:#fff!important;color:#27345d!important;box-shadow:none!important}
.universal-role-nav .universal-role-tabs{display:grid!important;gap:3px!important;max-width:none!important;margin:0!important;padding:18px 12px 10px!important}
.universal-role-nav .universal-role-tab{width:100%!important;padding:11px 12px!important;border:0!important;border-radius:9px!important;background:transparent!important;color:#5b6683!important;text-align:left!important;font-size:12px!important;font-weight:800!important;letter-spacing:.06em!important;text-transform:uppercase!important}
.universal-role-nav .universal-role-tab.is-active,.universal-role-nav .universal-role-tab:hover{background:#e9f8f4!important;color:#0a9e94!important}
.universal-role-nav .universal-role-panel[hidden]{display:none!important}
.universal-role-nav .universal-role-panel{margin:0!important;padding:0 12px 16px!important}
.universal-role-nav .universal-subscriber-nav-inner,.universal-role-nav .universal-admin-nav-inner{display:grid!important;gap:3px!important;padding:0!important;overflow:visible!important}
.universal-role-nav .universal-subscriber-nav-label,.universal-role-nav .universal-admin-nav-label{display:block!important;padding:12px 10px 8px!important;color:#0a9e94!important;font-size:11px!important;font-weight:900!important;letter-spacing:.1em!important;text-transform:uppercase!important;border-bottom:1px solid #e3e7f1!important}
.universal-role-nav .universal-admin-nav-label{color:#3548e6!important}
.universal-role-nav .universal-subscriber-nav a,.universal-role-nav .universal-admin-nav a{display:block!important;padding:10px!important;border-radius:8px!important;color:#27345d!important;font-size:12px!important;white-space:normal!important}
.universal-role-nav .universal-subscriber-nav a:hover,.universal-role-nav .universal-subscriber-nav a.is-current,.universal-role-nav .universal-admin-nav a:hover,.universal-role-nav .universal-admin-nav a.is-current{background:#edf1fb!important;color:#3548e6!important}
.universal-admin-view-toggle{display:grid!important;gap:5px!important;margin:8px 10px 0!important;padding-top:9px!important;border-top:1px solid #e3e7f1!important}
.universal-admin-view-toggle button{border:1px solid #3548e6!important;border-radius:8px!important;padding:8px 9px!important;background:#f1f3ff!important;color:#3548e6!important;font:inherit!important;font-size:11px!important;font-weight:800!important;cursor:pointer!important;text-align:left!important}
.universal-admin-view-toggle button:hover,.universal-admin-view-toggle button:focus{background:#3548e6!important;color:#fff!important}
.universal-admin-view-status{color:#687391!important;font-size:10px!important;line-height:1.35!important}
@media(min-width:801px){
  .universal-role-nav .universal-role-tabs{display:grid!important}
  .universal-role-nav .universal-role-panel[hidden]{display:none!important}
  .universal-role-nav .universal-role-panel.is-open:not([hidden]){display:block!important}
  .universal-role-nav .universal-role-panel+.universal-role-panel{padding-top:14px!important;border-top:1px solid #e3e7f1!important}
}
@media(max-width:800px){
  .site-header{height:64px!important;min-height:64px!important;padding:0 16px!important;gap:10px!important}
  .site-header .brand{width:168px!important;max-width:168px!important;height:46px!important}
  .site-header .universal-site-nav{display:none!important}
  .site-header .header-actions{margin-left:auto!important;gap:8px!important}
  .site-header .mobile-menu-toggle{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:40px!important;height:40px!important;padding:0!important;border:1px solid #cfd7ec!important;border-radius:10px!important;background:#fff!important;color:#182653!important;font-size:22px!important;line-height:1!important}
  .mobile-menu{display:block!important;position:fixed!important;top:72px!important;right:12px!important;z-index:70!important;width:min(300px,calc(100vw - 24px))!important;max-height:calc(100vh - 88px)!important;overflow:auto!important;padding:10px!important;background:#fff!important;border:1px solid #d5dbea!important;border-radius:14px!important;box-shadow:0 18px 50px rgba(20,30,90,.22)!important}
  .mobile-menu[hidden]{display:none!important}
  .mobile-menu nav a,.mobile-menu .mobile-menu-parent{font-weight:500!important}
  .universal-role-nav,.universal-role-nav~main,.universal-role-nav+main{position:relative!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;width:auto!important;max-width:none!important;height:auto!important;min-height:0!important;margin-left:0!important;overflow:visible!important;border:0!important;border-bottom:1px solid #d5dbea!important;border-radius:0!important;box-shadow:none!important}
  .universal-role-nav{display:block!important;padding:0!important}
  .universal-role-nav-desktop{display:none!important}
  .universal-role-nav-mobile{display:block!important}
  .universal-role-nav .universal-role-tabs{display:flex!important;align-items:stretch!important;gap:2px!important;padding:0 12px!important;overflow-x:auto!important;white-space:nowrap!important}
  .universal-role-nav .universal-role-tab{width:auto!important;flex:0 0 auto!important;padding:12px 16px!important;border-radius:0!important;text-align:center!important;font-size:11px!important}
  .universal-role-nav .universal-role-panel{padding:0!important}
  .universal-role-nav .universal-subscriber-nav-inner,.universal-role-nav .universal-admin-nav-inner{display:flex!important;align-items:center!important;gap:4px!important;padding:0 12px!important;overflow-x:auto!important;white-space:nowrap!important}
  .universal-role-nav .universal-subscriber-nav-label,.universal-role-nav .universal-admin-nav-label{flex:0 0 auto!important;padding:10px 8px!important;border:0!important}
  .universal-role-nav .universal-subscriber-nav a,.universal-role-nav .universal-admin-nav a{flex:0 0 auto!important;padding:10px!important;white-space:nowrap!important}
}

/* All content card collections stack on phones. Horizontal scrolling remains
   reserved for navigation controls, not page cards. */
@media(max-width:800px){
  .service-grid,
  .help-grid,
  .paid-grid,
  .partner-grid,
  .partner-grid-compact,
  .resource-grid,
  .trust-strip,
  .report-channel-grid,
  .support-card-grid,
  .mobile-feature-grid,
  .library-hub-grid,
  .process-grid,
  .library-topic-grid,
  .library-guide-grid,
  .endpoint-grid,
  .pricing-grid,
  .database-results {
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-auto-flow:row!important;
    width:100%!important;
    max-width:none!important;
    overflow:visible!important;
  }

  .service-grid,
  .help-grid,
  .paid-grid,
  .partner-grid,
  .partner-grid-compact,
  .resource-grid,
  .trust-strip,
  .report-channel-grid,
  .support-card-grid,
  .mobile-feature-grid,
  .library-hub-grid,
  .process-grid,
  .library-topic-grid,
  .library-guide-grid,
  .endpoint-grid,
  .pricing-grid {
    padding-left:0!important;
    padding-right:0!important;
  }

  .service-card,
  .help-card,
  .paid-card,
  .partner-card,
  .resource-card,
  .trust-strip article,
  .report-channel,
  .support-card,
  .mobile-feature-grid article,
  .library-hub-card,
  .process-card,
  .library-topic-card,
  .library-guide-grid a,
  .endpoint-card,
  .price-card,
  .database-result,
  .breach-report {
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
}

.portrait-only-overlay{display:none}
@media (orientation:landscape) and (max-height:600px) and (max-width:1000px){
  .portrait-only-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:24px;background:#fff;color:#101b4d;text-align:center}
  .portrait-only-overlay-inner{width:min(360px,100%);padding:28px 22px;border:1px solid #dfe5f3;border-radius:18px;background:#fff;box-shadow:0 18px 50px rgba(20,30,90,.16)}
  .portrait-only-overlay-inner strong{display:block;font-size:clamp(19px,5vw,26px);line-height:1.15}
  .portrait-only-overlay-inner span{display:block;margin-top:10px;color:#5b6683;font-size:14px;line-height:1.5}
}
