/*
Theme Name: True Perspect
Theme URI: https://example.com/
Author: Ehyperlink
Description: True Perspect Prism Bureau — a premium dark newsroom editorial theme with cyan accents, built-in contextual internal links and related posts.
Version: 2.2.1
Text Domain: true-perspect
Requires at least: 6.0
Requires PHP: 7.4
*/
:root{
 --tp-bg:#06111e;
 --tp-panel:#0a1b2d;
 --tp-panel2:#0e2338;
 --tp-ink:#f3f8fc;
 --tp-muted:#91a5b8;
 --tp-cyan:#11d7ef;
 --tp-lime:#b9f23a;
 --tp-blue:#0da9d8;
 --tp-line:#1d3550;
 --tp-soft:#dff7fb;
 --tp-ext:#ff79c6;
 --tp-shadow:0 18px 40px rgba(0,0,0,.30);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--tp-bg);color:var(--tp-ink);font-family:Arial,Helvetica,sans-serif}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
.tp-wrap{width:min(1540px,calc(100% - 44px));margin:auto}

/* HEADER */
.tp-header{position:sticky;top:0;z-index:50;background:rgba(6,17,30,.97);backdrop-filter:blur(12px);border-bottom:1px solid var(--tp-line)}
.admin-bar .tp-header{top:32px}
.tp-top{min-height:72px;display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center}
.tp-brand{display:flex;align-items:center;gap:12px}
.tp-logo-mark{width:48px;height:48px;border-radius:13px;background:linear-gradient(145deg,#00b5e2,#0a2c4b);display:grid;place-items:center;box-shadow:0 8px 20px rgba(0,191,255,.20)}
.tp-logo-mark:before{content:"C";font:900 27px Arial;color:#bdf843;transform:rotate(-18deg)}
.tp-brand strong{font:800 25px/1 Arial;color:#fff}
.tp-tools{display:flex;justify-content:flex-end;align-items:center;gap:15px}
.tp-search{width:min(340px,100%);display:grid;grid-template-columns:1fr 46px;background:#081724;border:1px solid var(--tp-line);border-radius:999px;overflow:hidden}
.tp-search input{border:0;background:transparent;color:#fff;padding:0 14px;outline:0}
.tp-search button{border:0;background:var(--tp-cyan);font-weight:900;color:#04202a}
.tp-subscribe{padding:12px 18px;border-radius:8px;background:var(--tp-cyan);color:#03151f;font-weight:900;font-size:13px}
.tp-nav{border-top:1px solid rgba(255,255,255,.04)}
.tp-nav ul{list-style:none;margin:0;padding:0;min-height:54px;display:flex;align-items:center;justify-content:center;gap:38px;flex-wrap:wrap}
.tp-nav a{font-size:12px;font-weight:800;color:#d8e5ed}
.tp-nav a:hover{color:var(--tp-cyan)}

/* HERO */
.tp-hero{padding:24px 0 20px}
.tp-hero-main{display:grid;grid-template-columns:1fr;gap:18px}
.tp-lead{position:relative;min-height:560px;border:1px solid var(--tp-line);overflow:hidden;background:#06111d}
.tp-lead img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tp-lead:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,16,30,.96) 0 38%,rgba(4,16,30,.48) 65%,rgba(4,16,30,.12))}
.tp-lead-copy{position:relative;z-index:2;width:48%;padding:52px 46px}
.tp-kicker{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--tp-cyan);font-weight:900}
.tp-lead h1{font:900 clamp(3.4rem,5vw,5.8rem)/.88 Arial,Helvetica,sans-serif;letter-spacing:-.055em;margin:15px 0 18px}
.tp-lead p{color:#c6d5df;line-height:1.55;font-size:16px}
.tp-read{display:inline-flex;margin-top:14px;color:var(--tp-cyan);font-weight:900;font-size:12px}
.tp-side{background:var(--tp-panel);border:1px solid var(--tp-line);padding:20px;display:flex;flex-direction:column}
.tp-side h3{margin:0 0 12px;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#fff}
.tp-side-item{display:grid;grid-template-columns:32px 1fr;gap:10px;padding:16px 0;border-top:1px solid var(--tp-line)}
.tp-side-item:first-of-type{border-top:0}
.tp-side-num{color:var(--tp-cyan);font-weight:900}
.tp-side-item strong{font-size:14px;line-height:1.25}
.tp-icon-cats{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:14px 0 20px}
.tp-icon-cat{background:#0a1a2b;border:1px solid var(--tp-line);border-radius:12px;padding:13px;text-align:center}
.tp-icon-dot{width:42px;height:42px;border-radius:50%;margin:0 auto 9px;background:linear-gradient(145deg,#052c49,#0a5a74);display:grid;place-items:center;color:var(--tp-lime);font-weight:900}
.tp-icon-cat strong{display:block;font-size:11px}
.tp-featured{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.tp-story{background:var(--tp-panel);border:1px solid var(--tp-line)}
.tp-story img{width:100%;height:220px;object-fit:cover}
.tp-story-copy{padding:14px}
.tp-story-copy small{color:var(--tp-cyan);font-weight:900}
.tp-story h3{margin:8px 0 6px;font-size:20px;line-height:1.05}
.tp-story p{margin:0;color:var(--tp-muted);font-size:12px;line-height:1.45}

/* FOCUS */
.tp-focus{margin:18px 0;background:#04111f;border:1px solid var(--tp-line);display:grid;grid-template-columns:.85fr 1.15fr;min-height:430px}
.tp-focus-copy{padding:44px}
.tp-focus h2{font:900 50px/.95 Arial;margin:10px 0}
.tp-focus p{color:#adc0cd;line-height:1.55}
.tp-focus-img img{width:100%;height:100%;object-fit:cover}
.tp-latest{padding:10px 0 46px}
.tp-section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:14px}
.tp-section-head h2{margin:0;font-size:28px}
.tp-latest-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.tp-latest-card{background:var(--tp-panel);border:1px solid var(--tp-line)}
.tp-latest-card img{width:100%;height:180px;object-fit:cover}
.tp-latest-card div{padding:12px}
.tp-latest-card h3{font-size:16px;margin:6px 0}
.tp-latest-card p{font-size:11px;color:var(--tp-muted);line-height:1.4}

/* POST */
.tp-post-head{padding:48px 0 28px}
.tp-post-head h1{font:900 clamp(3rem,5vw,5.5rem)/.9 Arial;margin:12px 0;letter-spacing:-.05em}
.tp-meta{color:var(--tp-muted);font-size:12px}
.tp-post-shell{width:min(1120px,calc(100% - 34px));margin:auto;padding-bottom:60px}
.tp-article{background:#f7fafc;color:#172330;border-radius:18px;padding:38px;overflow:hidden}
.tp-featured-img img{width:100%;max-height:620px;object-fit:cover;border-radius:12px;margin-bottom:28px}
.tp-entry{font-size:17px;line-height:1.82;overflow-wrap:anywhere}
.tp-entry h2,.tp-entry h3{font-family:Arial,Helvetica,sans-serif;color:#081727}
.tp-entry a{color:#0a6f95;text-decoration:underline;text-underline-offset:3px}
.tp-entry a.tp-external{color:var(--tp-ext)!important}
.tp-entry img{margin:24px auto;border-radius:10px}
.tp-context{margin:28px 0;padding:17px 18px;background:#eaf8fb;border-left:4px solid #0ac8e0;border-radius:10px}
.tp-context small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#0a7488;font-weight:900;margin-bottom:6px}
.tp-context a{display:flex;justify-content:space-between;gap:14px;color:#071b29!important;text-decoration:none!important;font-weight:800}
.tp-related{margin-top:34px}
.tp-related h2{font-size:30px}
.tp-related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.tp-related-card{background:var(--tp-panel);border:1px solid var(--tp-line)}
.tp-related-card img{width:100%;height:150px;object-fit:cover}
.tp-related-card div{padding:12px}
.tp-related-card h3{margin:0;font-size:15px;line-height:1.25}

/* ARCHIVE */
.tp-archive-head{padding:46px 0 26px}
.tp-archive-head h1{font:900 52px/1 Arial;margin:0}
.tp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding-bottom:50px}
.tp-card{background:var(--tp-panel);border:1px solid var(--tp-line)}
.tp-card img{width:100%;height:220px;object-fit:cover}
.tp-card-copy{padding:14px}
.tp-card h3{margin:7px 0;font-size:20px}
.tp-card p{color:var(--tp-muted);font-size:12px;line-height:1.45}

/* FOOTER */
.tp-footer{background:#03101b;border-top:1px solid var(--tp-line);padding:40px 0 22px}
.tp-footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:30px}
.tp-footer h4{margin:0 0 12px}
.tp-footer a{display:block;margin:7px 0;color:#a9bbc8;font-size:12px}
.tp-footer a:hover{color:var(--tp-cyan)}
.tp-footer p{color:#879aa8;font-size:12px;line-height:1.5}
.tp-footer-bottom{margin-top:28px;padding-top:17px;border-top:1px solid var(--tp-line);display:flex;justify-content:space-between;color:#607887;font-size:10px}

@media(max-width:1100px){
 .tp-hero-main,.tp-focus{grid-template-columns:1fr}
 .tp-lead-copy{width:68%}
 .tp-icon-cats{grid-template-columns:repeat(3,1fr)}
 .tp-featured{grid-template-columns:1fr 1fr}
 .tp-latest-grid{grid-template-columns:repeat(2,1fr)}
 .tp-grid{grid-template-columns:repeat(2,1fr)}
 .tp-footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
 .admin-bar .tp-header{top:46px}
 .tp-top{grid-template-columns:1fr;gap:12px;padding:14px 0}
 .tp-tools{justify-content:flex-start}
 .tp-nav ul{gap:16px;overflow-x:auto;flex-wrap:nowrap}
 .tp-lead{min-height:auto}
 .tp-lead img{position:relative;height:330px}
 .tp-lead:after{display:none}
 .tp-lead-copy{width:100%;padding:24px}
 .tp-featured,.tp-latest-grid,.tp-grid,.tp-related-grid{grid-template-columns:1fr}
 .tp-icon-cats{grid-template-columns:repeat(2,1fr)}
 .tp-footer-grid{grid-template-columns:1fr}
 .tp-post-head h1{font-size:3rem}
 .tp-article{padding:22px 16px}
}


/* v2.2 — larger homepage + centered menu + richer visuals */
.home .tp-wrap{
  width:min(1640px,calc(100% - 34px));
}

.home .tp-hero{
  padding-top:26px;
}

.home .tp-lead{
  min-height:650px;
}

.home .tp-lead-copy{
  padding-top:64px;
  padding-bottom:64px;
}

.tp-visual-strip{
  margin:22px 0 26px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}

.tp-visual-card{
  position:relative;
  min-height:250px;
  overflow:hidden;
  border:1px solid var(--tp-line);
  background:var(--tp-panel);
}

.tp-visual-card img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}

.tp-visual-card:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(1,12,23,.08) 25%,rgba(1,12,23,.94) 100%);
}

.tp-visual-copy{
  position:absolute;
  left:16px;
  right:16px;
  bottom:16px;
  z-index:2;
}

.tp-visual-copy small{
  display:block;
  color:var(--tp-cyan);
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:900;
  font-size:9px;
  margin-bottom:6px;
}

.tp-visual-copy h3{
  margin:0;
  font-size:22px;
  line-height:1.05;
}

.tp-featured{
  grid-template-columns:repeat(3,1fr);
}

.tp-story img{
  height:280px;
}

.tp-editorial-band{
  margin:22px 0;
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:14px;
}

.tp-band-main,
.tp-band-side{
  position:relative;
  min-height:360px;
  overflow:hidden;
  border:1px solid var(--tp-line);
}

.tp-band-main img,
.tp-band-side img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.tp-band-main:after,
.tp-band-side:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 30%,rgba(2,14,26,.94));
}

.tp-band-copy{
  position:absolute;
  left:22px;
  right:22px;
  bottom:20px;
  z-index:2;
}

.tp-band-copy span{
  color:var(--tp-cyan);
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:900;
}

.tp-band-copy h2,
.tp-band-copy h3{
  margin:8px 0 0;
  line-height:1;
}

.tp-band-copy h2{
  font-size:38px;
}

.tp-band-copy h3{
  font-size:26px;
}

@media(max-width:1100px){
  .tp-visual-strip{grid-template-columns:repeat(2,1fr)}
  .tp-editorial-band{grid-template-columns:1fr}
}

@media(max-width:760px){
  .tp-nav ul{
    justify-content:flex-start;
    gap:18px;
  }
  .home .tp-wrap{
    width:min(100% - 22px,1640px);
  }
  .home .tp-lead{
    min-height:auto;
  }
  .tp-visual-strip{
    grid-template-columns:1fr;
  }
  .tp-visual-card{
    min-height:220px;
  }
}
