/**
 * Theme Name:     Twenty Twenty-Five Child
 * Author:         PokeSplain Dev
 * Template:       twentytwentyfive
 * Text Domain:	   twenty-twenty-five-child
 * Description:    Twenty Twenty-Five emphasizes simplicity and adaptability. It offers flexible design options, supported by a variety of patterns for different page types, such as services and landing pages, making it ideal for building personal blogs, professional portfolios, online magazines, or business websites. Its templates cater to various blog styles, from text-focused to image-heavy layouts. Additionally, it supports international typography and diverse color palettes, ensuring accessibility and customization for users worldwide.
 */

body.page-template-page-psmi {
    background:#ffffff !important;
}

body.page-template-page-psmi .wp-site-blocks,
body.page-template-page-psmi main,
body.page-template-page-psmi .entry-content {
    margin:0 !important;
    padding:0 !important;
    max-width:100% !important;
}

body.page-id-224 .wp-site-blocks {
  padding: 0;
}

body.page-id-224 main {
  padding: 0;
}

/* Remove WordPress content padding for App page */
body.page-id-224 .wp-site-blocks,
body.page-id-224 main,
body.page-id-224 .entry-content,
body.page-id-224 .wp-block-post-content {
  padding: 0 !important;
  margin: 0 !important;
  max-width: 100% !important;
}

/* Remove default page title spacing */
body.page-id-224 .wp-block-post-title {
  display: none;
}

/* FORCE full width for App page */

body.page-id-224 .wp-site-blocks {
  max-width: 100% !important;
  padding: 0 !important;
}

body.page-id-224 .wp-block-group,
body.page-id-224 .wp-block-post-content,
body.page-id-224 .wp-block-post {
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.page-id-224 .is-layout-constrained {
  max-width: 100% !important;
}

body.page-id-224 main {
  padding: 0 !important;
  margin: 0 !important;
}

html, body {
  margin: 0;
  padding: 0;
}

.app-hero {
  height: 100vh;
  width: 100vw;
  display: flex;
  align-items: center;
  justify-content: center;
  background: radial-gradient(circle at 30% 20%, #1e293b, #0f172a 60%);
  font-family: -apple-system, BlinkMacSystemFont, sans-serif;
}

.hero-card {
  background: rgba(255,255,255,0.05);
  backdrop-filter: blur(20px);
  padding: 60px 80px;
  border-radius: 20px;
  text-align: center;
  box-shadow: 0 20px 60px rgba(0,0,0,0.4);
  color: white;
  max-width: 500px;
}

.hero-card h1 {
  font-size: 42px;
  margin-bottom: 15px;
  font-weight: 600;
}

.subtitle {
  opacity: 0.7;
  margin-bottom: 30px;
  font-size: 18px;
}

.primary-btn {
  background: linear-gradient(135deg, #3b82f6, #2563eb);
  border: none;
  padding: 14px 30px;
  border-radius: 10px;
  color: white;
  font-size: 16px;
  cursor: pointer;
  transition: all 0.3s ease;
}

.primary-btn:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 30px rgba(37, 99, 235, 0.5);
}

html, body {
  margin: 0;
  padding: 0;
  background: #0b1220;
  font-family: -apple-system, BlinkMacSystemFont, sans-serif;
}

/* ===== TICKER ===== */
.ticker {
  width: 100%;
  overflow: hidden;
  background: #070d18;
  border-bottom: 1px solid rgba(255,255,255,0.05);
}

.ticker-track {
  display: inline-flex;
  animation: scrollTicker 30s linear infinite;
}

.ticker-item {
  padding: 12px 40px;
  font-size: 14px;
  color: #cbd5e1;
  display: flex;
  gap: 8px;
}

.ticker-item.up span { color: #22c55e; }
.ticker-item.down span { color: #ef4444; }

@keyframes scrollTicker {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* ===== TERMINAL SHELL ===== */
.terminal-shell {
  min-height: calc(100vh - 45px);
  background: radial-gradient(circle at 20% 10%, #1e293b, #0b1220 60%);
  color: white;
}

/* ===== TOPBAR ===== */
.topbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 25px 60px;
}

.logo {
  font-size: 26px;
  font-weight: 600;
  letter-spacing: -0.5px;
}

.tagline {
  opacity: 0.6;
  font-size: 14px;
}

/* ===== DASHBOARD ===== */
.dashboard {
  padding: 40px 60px;
  display: grid;
  gap: 40px;
}

.panel {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.05);
  border-radius: 16px;
  padding: 30px;
  backdrop-filter: blur(12px);
}

.panel h3 {
  margin-top: 0;
  font-size: 18px;
  margin-bottom: 25px;
  opacity: 0.8;
}

/* ===== STATS ===== */
.stat-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 25px;
}

.stat-label {
  font-size: 12px;
  opacity: 0.6;
  margin-bottom: 8px;
}

.stat-value {
  font-size: 22px;
  font-weight: 600;
}

/* ===== MOVERS ===== */
.movers-grid {
  display: grid;
  gap: 15px;
}

.mover-card {
  display: flex;
  justify-content: space-between;
  padding: 14px 20px;
  border-radius: 10px;
  background: rgba(255,255,255,0.05);
  transition: 0.3s ease;
}

.mover-card.up { border-left: 3px solid #22c55e; }
.mover-card.down { border-left: 3px solid #ef4444; }

.mover-card:hover {
  transform: translateY(-2px);
  background: rgba(255,255,255,0.08);
}

.mover-change {
  font-weight: 600;
}

.mover-card.up .mover-change { color: #22c55e; }
.mover-card.down .mover-change { color: #ef4444; }

.set-grid,
.card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 15px;
  margin-top: 15px;
}

.set-card,
.card-item {
  background: #0e1117;
  padding: 10px;
  border-radius: 6px;
  text-align: center;
  cursor: pointer;
  transition: 0.2s ease;
}

.set-card:hover,
.card-item:hover {
  transform: scale(1.05);
}

.set-card img,
.card-item img {
  width: 100%;
  border-radius: 4px;
}

.chase {
  border: 2px solid gold;
  box-shadow: 0 0 12px gold;
}

.ps-auth-container {
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #0e1117;
}

.ps-auth-box {
    background: #161b22;
    padding: 40px;
    width: 400px;
    border-radius: 12px;
}

.ps-auth-box h1 {
    margin-bottom: 24px;
}

.ps-auth-box input {
    width: 100%;
    padding: 12px;
    margin-bottom: 16px;
    background: #0e1117;
    border: 1px solid #30363d;
    color: white;
}

.ps-auth-box button {
    width: 100%;
    padding: 12px;
    background: #238636;
    border: none;
    color: white;
    cursor: pointer;
}

.ps-error {
    color: #ff6b6b;
}

/* =========================
   PSMI PAGE CLEAN STYLING
========================= */

body.page .entry-content {
    max-width: 900px;
    margin: 80px auto;
    padding: 60px;
    background: #ffffff;
    box-shadow: 0 10px 40px rgba(0,0,0,0.08);
}

body.page {
    background: #f5f7fa;
}

body.page h1 {
    font-size: 40px;
    margin-bottom: 20px;
    color: #111;
}

body.page h2 {
    margin-top: 40px;
    font-size: 20px;
    color: #222;
}

body.page p,
body.page li {
    font-size: 16px;
    line-height: 1.7;
    color: #333;
}

.psmi-divider {
    margin: 30px 0;
    border: none;
    border-top: 1px solid #e2e6ea;
}

/* Reduce top spacing */
body.page .entry-header {
    margin-bottom: 20px;
}

body.page .entry-title {
    font-size: 42px;
    font-weight: 600;
    letter-spacing: -0.5px;
}

/* Section spacing */
body.page h2 {
    margin-top: 50px;
    padding-bottom: 8px;
    border-bottom: 1px solid #e5e7eb;
    font-weight: 600;
}

/* Improve list spacing */
body.page ul {
    margin-top: 10px;
    margin-bottom: 20px;
    padding-left: 20px;
}

body.page li {
    margin-bottom: 6px;
}

/* Methodology intro emphasis */
body.page p:first-of-type {
    font-size: 18px;
    color: #111;
}

/* =========================
   PSMI DESIGN SYSTEM v2
========================= */

.psmi-wrapper {
    background: #f5f6f8;
    padding: 90px 20px;
}

.psmi-wrapper > * {
    max-width: 920px;
    margin: 0 auto;
}

.psmi-wrapper {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    color: #111;
}

.psmi-wrapper h1 {
    font-size: 52px;
    font-weight: 700;
    letter-spacing: -1px;
    margin-bottom: 15px;
}

.psmi-wrapper .psmi-version {
    color: #555;
    font-size: 15px;
    margin-bottom: 40px;
}

.psmi-wrapper h2 {
    margin-top: 65px;
    font-size: 19px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    font-weight: 700;
    color: #1e40af;
    padding-bottom: 12px;
    border-bottom: 1px solid #dcdfe4;
}

.psmi-wrapper p {
    font-size: 18px;
    line-height: 1.8;
    color: #222;
}

.psmi-wrapper ul {
    margin-top: 15px;
    margin-bottom: 30px;
    padding-left: 20px;
}

.psmi-wrapper li {
    margin-bottom: 10px;
    font-size: 17px;
}

.psmi-stat-block {
    text-align:center;
    margin-top:60px;
}

.psmi-stat-label {
    font-size:14px;
    letter-spacing:2px;
    text-transform:uppercase;
    color:#999;
    margin-bottom:10px;
}

.psmi-stat-value {
    font-size:72px;
    font-weight:700;
    letter-spacing:-2px;
    margin-bottom:10px;
}

.psmi-stat-change {
    font-size:20px;
    font-weight:600;
}

.psmi-stat-change.up {
    color:#16a34a;
}

.psmi-stat-change.down {
    color:#dc2626;
}

.psmi-sections {
    margin-top: 120px;
}

.psmi-columns {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 60px;
    margin-top: 40px;
}

.psmi-col h3 {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 10px;
}

.psmi-col p {
    font-size: 16px;
    color: #555;
    line-height: 1.6;
}

body{
font-family: "Inter", sans-serif;
}

.metric-value,
.snapshot-value,
.price,
.chart-label{
font-family: "JetBrains Mono", monospace;
}

h1,h2,h3{
font-weight:600;
}

.metric-value{
font-weight:600;
}

.muted{
opacity:.65;
font-size:13px;
}