/*
Theme Name: Kelvin Coogan V10
Theme URI: https://example.com/kelvin-coogan-v10
Author: OpenAI Codex
Author URI: https://openai.com
Description: WordPress theme migration of the Kelvin Coogan V10 React frontend with a built-in demo importer.
Version: 1.0.1
Requires at least: 6.4
Tested up to: 6.9
Requires PHP: 7.4
Text Domain: kelvin-coogan-v10
*/

:root {
  --kc-background: #0a0a0a;
  --kc-foreground: #ffffff;
  --kc-muted: #a1a1aa;
  --kc-border: rgba(255, 255, 255, 0.08);
  --kc-primary: #ff5717;
  --kc-card: #131313;
  --kc-max-width: 1400px;
  color-scheme: dark;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  background: var(--kc-background);
}

body {
  margin: 0;
  background: var(--kc-background);
  color: var(--kc-foreground);
  font-family: Inter, "Helvetica Neue", Arial, sans-serif;
}

a {
  color: inherit;
}

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

.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.screen-reader-text.kc-skip-link:focus {
  clip: auto;
  width: auto;
  height: auto;
  margin: 1rem;
  padding: 0.9rem 1.2rem;
  background: var(--kc-primary);
  color: var(--kc-foreground);
  border-radius: 999px;
  z-index: 9999;
}

.kc-site-shell {
  min-height: 100vh;
}

#main-content:focus {
  outline: none;
}

.kc-app-root {
  min-height: 100vh;
}

.kc-app-missing {
  max-width: 44rem;
  margin: 12rem auto;
  padding: 2rem;
  border: 1px solid var(--kc-border);
  border-radius: 2rem;
  background: rgba(255, 255, 255, 0.03);
  text-align: center;
}

.kc-fallback {
  max-width: var(--kc-max-width);
  margin: 0 auto;
  padding: 8rem 1.5rem 4rem;
}

.kc-fallback__header {
  margin-bottom: 3rem;
}

.kc-fallback__eyebrow {
  display: inline-block;
  margin-bottom: 1rem;
  color: var(--kc-primary);
  font-size: 0.75rem;
  font-weight: 900;
  letter-spacing: 0.3em;
  text-transform: uppercase;
}

.kc-fallback__title {
  margin: 0;
  font-size: clamp(2.75rem, 8vw, 6.5rem);
  line-height: 0.9;
  text-transform: uppercase;
}

.kc-fallback__content,
.kc-fallback__search {
  max-width: 52rem;
  color: rgba(255, 255, 255, 0.82);
  line-height: 1.8;
}

.kc-fallback__search-form,
.search-form {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  margin-top: 2rem;
}

.kc-fallback__search-form input[type="search"],
.search-form input[type="search"] {
  flex: 1 1 18rem;
  min-height: 3.5rem;
  padding: 0 1.25rem;
  border: 1px solid var(--kc-border);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.05);
  color: var(--kc-foreground);
}

.kc-fallback__search-form button,
.search-form button {
  min-height: 3.5rem;
  padding: 0 1.75rem;
  border: 0;
  border-radius: 999px;
  background: var(--kc-primary);
  color: var(--kc-foreground);
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  cursor: pointer;
}

.kc-post-list {
  list-style: none;
  padding: 0;
  margin: 2.5rem 0 0;
  display: grid;
  gap: 1.5rem;
}

.kc-post-card {
  padding: 1.5rem;
  border: 1px solid var(--kc-border);
  border-radius: 1.5rem;
  background: rgba(255, 255, 255, 0.03);
}

.kc-post-card__meta {
  color: var(--kc-muted);
  font-size: 0.85rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.kc-post-card__title {
  margin: 0.5rem 0 0.75rem;
  font-size: 1.5rem;
  line-height: 1.1;
}

.kc-post-card__excerpt {
  margin: 0;
  color: rgba(255, 255, 255, 0.82);
}

body.admin-bar .kc-app-nav {
  top: 32px;
}

@media (max-width: 782px) {
  body.admin-bar .kc-app-nav {
    top: 46px;
  }

  .kc-fallback {
    padding-top: 7rem;
  }
}
