/* page-shell.css - skip link and footer shared by the app's pages (see js/page-shell.js). Uses the tokens in adspot-ui.css with fallbacks. */
.ps-skip {
    position: fixed; left: 12px; top: -64px; z-index: 10000;
    padding: 10px 18px; border-radius: 10px;
    background: var(--ui-ink, #2b2f2a); color: #fff; font: 600 15px/1.2 var(--ui-font, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif); text-decoration: none;
    box-shadow: 0 8px 24px rgba(24, 34, 24, .25);
    transition: top .15s ease;
}
.ps-skip:focus, .ps-skip:focus-visible { top: 12px; outline: 3px solid var(--ui-sage-ring, rgba(106, 138, 102, .55)); outline-offset: 2px; }
#main-content:focus { outline: none; }

.ps-footer {
    box-sizing: border-box; clear: both; width: 100%;
    margin: 56px 0 0; padding: 22px 16px 28px;
    border-top: 1px solid var(--ui-line, #e8ebe6); background: var(--ui-card, #fff);
    font: 14px/1.5 var(--ui-font, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif); color: var(--ui-muted, #5f665e);
}
.ps-footer__in { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 24px; width: min(1200px, 100%); margin: 0 auto; }
.ps-footer__brand { margin: 0; }
.ps-footer__brand strong { font-family: 'adspot-mark', 'adspot', var(--ui-font, sans-serif); font-weight: 700; font-size: 20px; line-height: 1; letter-spacing: 0; color: var(--ui-ink, #2b2f2a); }
.ps-footer__nav { display: flex; flex-wrap: wrap; gap: 4px 6px; margin: 0; padding: 0; list-style: none; }
.ps-footer__nav a { display: inline-block; padding: 6px 10px; border-radius: 8px; color: var(--ui-sage-dark, #4f6b4b); font-weight: 600; text-decoration: none; }
.ps-footer__nav a:hover { background: var(--ui-sage-soft, #e6ece4); }
@media (max-width: 560px) { .ps-footer { margin-top: 40px; } .ps-footer__in { justify-content: center; text-align: center; } }
@media print { .ps-skip, .ps-footer { display: none; } }
