/*
Theme Name: Atlas Funding
Description: Native WordPress publishing for Atlas Funding, with editable finance guides and interactive planning tools.
Version: 1.0.2
Requires at least: 6.5
Requires PHP: 8.0
Text Domain: atlas-funding
*/

/* The plugin supplies the approved Atlas stylesheet. These rules adapt native WordPress controls. */
.atlas-native-menu { display: flex; align-items: center; gap: 2px; }
.atlas-nav-group { position: relative; }
.atlas-nav-group > summary { list-style: none; cursor: pointer; padding: 12px; font-size: 14px; font-weight: 500; display: flex; align-items: center; gap: 8px; border-radius: 6px; }
.atlas-nav-group > summary::-webkit-details-marker, .atlas-mobile-menu > summary::-webkit-details-marker { display: none; }
.atlas-nav-group > summary::after { content: ''; width: 6px; height: 6px; border-bottom: 1.5px solid currentColor; border-right: 1.5px solid currentColor; transform: rotate(45deg); margin-top: -3px; }
.atlas-nav-group[open] > summary { background: var(--wash); color: var(--brand); }
.atlas-nav-group[open] > summary::after { transform: rotate(225deg); margin-top: 3px; }
.atlas-native-menu .mega-menu { position: absolute; z-index: 40; top: calc(100% + 8px); right: 0; background: white; border: 1px solid var(--border); border-radius: 9px; box-shadow: 0 16px 32px #142d3b1a; }
.atlas-native-menu .atlas-nav-group:first-child .mega-menu { right: auto; left: 0; }
.atlas-arrow { display: inline-block; color: inherit; font-size: 1.2em; line-height: 1; flex-shrink: 0; }
.atlas-mobile-menu { position: relative; }
.atlas-mobile-menu > summary { cursor: pointer; list-style: none; display: flex; align-items: center; padding: 8px; }
.atlas-mobile-menu > .atlas-mobile-panel { position: absolute; z-index: 45; right: 0; top: calc(100% + 20px); width: min(420px,calc(100vw - 40px)); max-height: 75vh; overflow-y: auto; background: var(--canvas); padding: 22px; border: 1px solid var(--border); border-radius: 10px; box-shadow: 0 16px 32px #142d3b1a; }
.atlas-mobile-panel h2 { font-size: 25px; line-height: 1.2; margin-bottom: 10px; }
.atlas-mobile-panel > p { font-size: 13px; line-height: 1.7; color: #536973; margin-bottom: 20px; }
.atlas-mobile-panel .atlas-nav-group { border-top: 1px solid var(--border); }
.atlas-mobile-panel .atlas-nav-group > summary { padding: 16px 0; justify-content: space-between; font-size: 17px; }
.atlas-mobile-panel .mega-link { padding-left: 0 !important; }
.atlas-mobile-panel .mega-menu { width: auto; max-height: none; padding: 0 0 18px; }
summary:focus-visible { outline: 2px solid var(--brand); outline-offset: 5px; }
.atlas-faq details { border-bottom: 1px solid var(--border); }
.atlas-faq summary { position: relative; list-style: none; cursor: pointer; padding: 23px 32px 23px 0; font-size: 17px; font-weight: 550; line-height: 1.5; }
.atlas-faq summary::-webkit-details-marker { display: none; }
.atlas-faq summary::after { content: '+'; position: absolute; right: 4px; top: 23px; color: var(--brand); font-size: 23px; line-height: 1; }
.atlas-faq details[open] summary::after { content: '−'; }
.atlas-faq details > p { margin: 0; padding: 0 26px 23px 0; font-size: 15px; line-height: 1.85; color: #536973; }
.atlas-reading-icon { color: var(--brand); font-size: 32px; line-height: 1; margin-bottom: 24px; }
.atlas-check { color: var(--brand); font-size: 17px; flex-shrink: 0; }
.article-table { overflow-x: auto; }
.article-table table { width: 100%; border-collapse: collapse; text-align: left; }
.article-table tbody tr + tr { border-top: 1px solid var(--border); }
.atlas-default-page { padding-top: 55px; padding-bottom: 70px; min-height: 50vh; }
.atlas-default-page > h1 { margin-bottom: 30px; }
.atlas-default-page p { line-height: 1.8; margin-bottom: 20px; }
.atlas-account-link { padding-top: 16px; font-size: 13px; }
.atlas-native-home-fallback { min-height: 60vh; }
[data-atlas-component]:empty { min-height: 12px; }
@media (max-width: 1100px) { .atlas-nav-group > summary { font-size: 12px; padding: 10px 7px; } }
/* Match the Atlas header breakpoint after the native menu's base flex rule. */
@media (max-width: 900px) { .desktop-nav.atlas-native-menu { display: none; } }
@media (max-width: 620px) { .atlas-faq summary { font-size: 16px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; } }
