/*
Theme Name: Aperture Wallpapers
Theme URI: https://example.com/aperture-wallpapers
Author: Your Studio
Author URI: https://example.com
Description: A fast, SEO-friendly wallpaper gallery theme with custom Wallpaper post type, category taxonomy, and a built-in dark/light mode toggle. Built for high-resolution image discovery.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: aperture-wallpapers
Tags: gallery, dark mode, custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/

/* =========================================================
   APERTURE WALLPAPERS — DESIGN TOKENS
   Concept: a darkroom / photo-lens studio, not a neon gamer site.
   Base:    near-black charcoal, like an unlit darkroom
   Accent:  warm brass/amber — the glow of a lens ring catching light
   Type:    a tall condensed display face (technical, optical) +
            a quiet grotesk for body/UI
   Signature: the "aperture ring" — a circular iris motif used as the
            loading state, the category marker and the hover reveal
   ========================================================= */

:root {
  /* Color */
  --ap-bg: #0e0e10;            /* darkroom black */
  --ap-surface: #17171a;       /* card surface */
  --ap-surface-raised: #1f2023; /* hovered/raised surface */
  --ap-border: #2a2a2e;
  --ap-text: #ECE9E2;          /* warm paper white */
  --ap-text-muted: #9a978f;
  --ap-accent: #d98e3f;         /* brass / lens amber */
  --ap-accent-soft: #d98e3f26;
  --ap-accent-strong: #f0a857;
  --ap-focus: #6fb7c9;          /* cool ring for accessibility focus, distinct from accent */

  /* Light mode override values (applied via [data-theme="light"]) */
  --ap-bg-light: #F4F1EA;
  --ap-surface-light: #ffffff;
  --ap-surface-raised-light: #ECE7DA;
  --ap-border-light: #e1dccc;
  --ap-text-light: #191814;
  --ap-text-muted-light: #6b6657;

  /* Type */
  --ap-font-display: 'Fjalla One', 'Arial Narrow', sans-serif;
  --ap-font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --ap-font-mono: 'JetBrains Mono', 'Courier New', monospace;

  /* Layout */
  --ap-radius: 3px;
  --ap-radius-lg: 6px;
  --ap-gap: 1.25rem;
  --ap-container: 1400px;
  --ap-header-h: 72px;
  --ap-transition: 220ms cubic-bezier(.4,0,.2,1);
}

[data-theme="light"] {
  --ap-bg: var(--ap-bg-light);
  --ap-surface: var(--ap-surface-light);
  --ap-surface-raised: var(--ap-surface-raised-light);
  --ap-border: var(--ap-border-light);
  --ap-text: var(--ap-text-light);
  --ap-text-muted: var(--ap-text-muted-light);
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}

body {
  margin: 0;
  background: var(--ap-bg);
  color: var(--ap-text);
  font-family: var(--ap-font-body);
  font-size: 16px;
  line-height: 1.55;
  transition: background var(--ap-transition), color var(--ap-transition);
  -webkit-font-smoothing: antialiased;
}

img { max-width: 100%; display: block; height: auto; }

a { color: inherit; text-decoration: none; }

h1, h2, h3, h4 {
  font-family: var(--ap-font-display);
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: 1.1;
  margin: 0 0 0.5em;
  text-transform: uppercase;
}

p { margin: 0 0 1em; color: var(--ap-text-muted); }

.ap-container {
  max-width: var(--ap-container);
  margin: 0 auto;
  padding: 0 1.5rem;
}

:focus-visible {
  outline: 2px solid var(--ap-focus);
  outline-offset: 3px;
}

.screen-reader-text {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.skip-link {
  position: absolute;
  top: -100px;
  left: 1rem;
  background: var(--ap-accent);
  color: #111;
  padding: 0.6em 1em;
  z-index: 9999;
  border-radius: var(--ap-radius);
  font-family: var(--ap-font-body);
  font-weight: 600;
  transition: top 150ms ease;
}
.skip-link:focus { top: 1rem; }

button { font-family: inherit; cursor: pointer; }
