[hidden] { display: none !important; }
.php-skip-link { position: fixed; top: -10rem; left: 1rem; padding: 1rem; background: white; color: #17233b; z-index: 100; border: 2px solid #1764a1; border-radius: .6rem; }
.php-skip-link:focus { top: 1rem; }
.php-mobile-navigation > summary { list-style: none; cursor: pointer; padding: .625rem; border: 1px solid #e5e7eb; border-radius: .8rem; background: white; }
.php-mobile-navigation > summary::-webkit-details-marker { display: none; }
.php-mobile-panel { position: absolute; left: .75rem; right: .75rem; top: calc(100% + .75rem); padding: .75rem; background: #fff; color: #17233b; border: 1px solid #e5e7eb; border-radius: 1rem; box-shadow: 0 18px 40px #1d275028; max-height: calc(100dvh - 6rem); overflow: auto; }
.php-mobile-panel nav { display: grid; gap: .25rem; }
.php-mobile-panel a { display: flex; justify-content: space-between; padding: .9rem; font-weight: 700; border-radius: .75rem; }
.php-mobile-panel a:hover, .php-mobile-panel a[aria-current] { background: #f5f7fa; color: #1764a1; }
.php-mobile-panel p { padding: 1rem .9rem .5rem; font-size: .75rem; border-top: 1px solid #e5e7eb; }
.php-faq summary { cursor: pointer; }
.php-faq summary:focus-visible, .php-mobile-navigation summary:focus-visible { outline: 3px solid #1764a1; outline-offset: 3px; }
.php-video-control { position: absolute; bottom: 1rem; right: 1rem; z-index: 2; border: 1px solid #ffffff90; color: white; background: #17233bee; border-radius: 99px; padding: .6rem 1rem; font-size: .75rem; }
.php-back-top { position: fixed; bottom: 1.5rem; right: 1.5rem; width: 3rem; height: 3rem; background: white; color: #17233b; border: 1px solid #dce3ea; border-radius: 50%; box-shadow: 0 3px 12px #17233b20; z-index: 30; font-size: 1.5rem; }
.php-filter-status { margin: 1.25rem 0; color: #536171; }
.php-filter-empty { padding: 2rem; text-align: center; border: 1px dashed #dce3ea; border-radius: 1rem; }
.php-filter-empty button { margin-top: 1rem; text-decoration: underline; font-weight: 600; }
.php-device-icon { display: block; font-size: 2rem; color: #1764a1; margin-bottom: .5rem; }
.issue-options { display: grid; gap: .75rem; }
.issue-option { display: flex; justify-content: space-between; width: 100%; text-align: left; border: 1px solid #dce3ea; padding: 1.25rem; border-radius: .75rem; background: white; }
.issue-option:hover { border-color: #1764a1; background: #f5f9fc; }
.finder-result h3 { font-size: 1.5rem; font-weight: 700; margin: 1rem 0; }
.finder-result p { color: #536171; margin-bottom: 1rem; }
.php-primary-link { display: inline-block; padding: .8rem 1.25rem; border-radius: .65rem; color: white; background: #1764a1; font-weight: 700; margin-bottom: 1rem; }
@media (min-width: 1024px) { .php-mobile-navigation { display: none; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto !important; } *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; } }
