/* FOCUSNOW app.css — direct replacement v3.1 */
:root{--paper:#f1efe8;--ink:#111311;--orange:#eb5b32;--green:#153e35;--lime:#d8ef61;--wine:#572335;--line:#cfcbc0}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif}a{color:inherit;text-decoration:none}button{cursor:pointer}.live{height:34px;background:#111;color:white;padding:0 3vw;display:flex;align-items:center;gap:12px;font-size:10px}.live b{background:var(--orange);padding:4px 7px}body>header{height:84px;padding:0 3vw;border-bottom:1px solid var(--line);display:flex;align-items:center;position:sticky;top:0;background:#f1efe8ef;backdrop-filter:blur(15px);z-index:10}.logo{font:900 28px Arial Black;letter-spacing:-2px}.logo span{color:var(--orange)}body>header nav{margin:auto;display:flex;gap:20px;font-size:9px;font-weight:bold}.admin{background:#111;color:white;padding:10px 13px;font-size:8px}body>main{max-width:1450px;padding:0 3vw;margin:auto}.stamp{height:70px;display:flex;align-items:center;gap:13px;border-bottom:1px solid var(--line);font-size:8px;letter-spacing:.13em}.stamp span{background:var(--orange);color:white;padding:5px 8px}.cover{min-height:680px;display:grid;grid-template-columns:1.25fr .8fr;gap:25px;padding:35px 0}.cover-copy{display:flex;justify-content:center;flex-direction:column}.cover-copy small,.signature small,.chapter>small,.signals>small{font-size:8px;font-weight:bold;letter-spacing:.14em;color:var(--orange)}.cover h1{font:400 clamp(50px,6vw,88px)/.9 Georgia;letter-spacing:-.055em;margin:20px 0}.cover p{font:17px/1.5 Georgia;color:#666;max-width:750px}.cover-copy>a{font-size:8px;font-weight:bold;margin-top:20px}.cover-art{position:relative;overflow:hidden;background:linear-gradient(150deg,#a4afa9 0 35%,#4e6b60 36% 62%,#1b332c 63%)}.cover-art:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,#101a17aa,transparent)}.cover-art i{position:absolute;width:120px;height:120px;border-radius:50%;background:#e3af67;top:12%;right:15%}.cover-art span{position:absolute;z-index:2;color:white;bottom:20px;left:20px;font-size:8px;letter-spacing:.15em}.signature{display:grid;grid-template-columns:.75fr 1.3fr 1fr;border-top:1px solid #111;border-bottom:1px solid #111;margin:40px 0 90px}.signature article{padding:28px;min-height:250px;border-right:1px solid #111}.signature article:last-child{border:0}.number{background:var(--lime)}.number strong{display:block;font:900 76px Arial Black;letter-spacing:-.08em;margin:30px 0 15px}.number p,.brief li{font:15px/1.4 Georgia}.brief h2{font:32px/1 Georgia}.brief li{padding:8px}.quote{background:var(--green);color:white}.quote blockquote{font:29px/1.08 Georgia;margin:30px 0}.chapter,.signals{margin:90px 0}.chapter h2,.signals h2{font:400 58px/.95 Georgia}.timeline{border-top:1px solid #111;margin-top:25px}.timeline article{display:grid;grid-template-columns:80px 40px 1fr;align-items:center;border-bottom:1px solid var(--line);padding:17px 0}.timeline time{color:var(--orange);font-size:10px;font-weight:bold}.timeline i{width:12px;height:12px;border-radius:50%;border:3px solid var(--orange)}.timeline h3{font:25px Georgia;margin:0}.signals>div{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.tile{grid-column:span 4;min-height:230px;background:#fff;padding:24px}.tile h3{font:28px/1.04 Georgia}.tile p{font:13px/1.5 Georgia;color:#666}.tile.t0{grid-column:span 7;grid-row:span 2;background:var(--green);color:white}.tile.t0 h3{font-size:45px}.tile.t0 p{color:#bdd0ca}.tile.t1{grid-column:span 5;background:var(--orange)}.tile.t2{grid-column:span 5;background:#eee4d5}.tile.t3{grid-column:span 6;background:var(--wine);color:white}.tile.t4,.tile.t5{grid-column:span 3}body>footer{background:#111;color:white;padding:50px 3vw;display:flex;justify-content:space-between}.article{max-width:850px;margin:70px auto;padding:0 25px}.article>small{color:var(--orange);font-size:9px}.article h1{font:clamp(45px,7vw,78px)/.95 Georgia;letter-spacing:-.04em}.article h2{font:25px/1.2 Georgia;color:#666}.article .lead{font:20px/1.5 Georgia}.article .body{font:18px/1.8 Georgia;margin-top:45px}.login{min-height:100vh;background:#13261f;display:grid;place-items:center}.login form{width:min(400px,92vw);background:white;padding:40px}.login h1{font:35px Georgia}.login label{display:block;font-size:9px;font-weight:bold;margin:18px 0}.login input{display:block;width:100%;padding:12px;margin-top:6px;border:1px solid #ccc}.login button{width:100%;padding:12px;background:var(--green);color:white;border:0}.error{color:#b32020}.newsroom{background:#eef1ee;display:grid;grid-template-columns:220px 1fr;min-height:100vh}.newsroom>aside{position:fixed;width:220px;height:100vh;background:#111c18;color:white;padding:25px 16px;display:flex;flex-direction:column}.newsroom aside .logo small{display:block;font:7px Arial;color:#789087}.newsroom aside nav{display:flex;flex-direction:column;margin-top:40px}.newsroom aside nav a{padding:10px;color:#99aaa4;font-size:11px}.newsroom aside nav a.on{background:#20332c;color:white}.newsroom aside>a{font-size:8px;margin-top:auto;padding:6px}.newsroom aside>a:last-child{margin-top:5px}.newsroom>main{margin-left:220px;width:calc(100vw - 220px);padding:0 30px}.newsroom main>header{height:95px;display:flex;align-items:center;justify-content:space-between}.newsroom main header h1{margin:4px 0}.newsroom main header small{font-size:7px}.newsroom main header button,.table button{background:var(--green);color:white;border:0;padding:9px 11px;font-size:8px}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.stats article{background:white;padding:16px}.stats small,.stats b{display:block}.stats small{font-size:7px}.stats b{font-size:28px;margin-top:8px}.table{background:white;margin-top:18px}.thead,.table>article{display:grid;grid-template-columns:1.5fr .4fr .4fr .4fr;gap:15px;padding:12px 18px;border-bottom:1px solid #e1e4e2;align-items:center}.thead{font-size:7px;font-weight:bold;background:#f5f6f4}.table small,.table b{display:block;font-size:7px}.table h3{font-size:12px}.table .risk{display:inline-block}.table .high,.table .critical{color:#b52d25}.table>article>div:last-child{display:flex;gap:5px}.table>article a{border:1px solid #ccc;padding:8px;font-size:7px}.notfound{text-align:center;padding:120px}.notfound h1{font-size:100px;margin:30px}
@media(max-width:850px){body>header nav{display:none}.cover{grid-template-columns:1fr}.cover-art{min-height:55vh;grid-row:1}.cover-copy{grid-row:2}.signature{grid-template-columns:1fr 1fr}.quote{grid-column:1/3}.signals>div{display:block}.tile{margin-bottom:12px}.newsroom{display:block}.newsroom>aside{position:static;width:100%;height:auto;flex-direction:row}.newsroom aside nav,.newsroom aside>a{display:none}.newsroom>main{margin:0;width:100%;padding:0 12px}.stats{grid-template-columns:repeat(2,1fr)}.thead{display:none}.table>article{grid-template-columns:1fr 1fr}.table>article>div:first-child{grid-column:1/3}}
@media(max-width:480px){.cover h1{font-size:50px}.signature{display:block}.signature article{border:0;border-bottom:1px solid #111}.quote{grid-column:auto}.chapter h2,.signals h2{font-size:42px}.timeline article{grid-template-columns:55px 25px 1fr}.article h1{font-size:48px}.newsroom main>header h1{font-size:20px}}
/* Production candidate admin/editor additions */
.filters,.inline{display:flex;gap:10px;margin:10px 0 18px}.filters input,.filters select,.inline input,.inline select,.editor input,.editor textarea,.editor select{padding:11px;border:1px solid #cbd1cd;background:#fff;width:100%}.filters button,.inline button,.editor button,.button{background:var(--green);color:#fff;border:0;padding:11px 15px;font-size:9px}.editor{background:#fff;padding:22px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.editor label{font-size:9px;font-weight:bold}.editor label input,.editor label textarea,.editor label select{display:block;margin-top:6px}.editor .wide,.editor .actions{grid-column:1/-1}.editor .actions{display:flex;gap:10px}.versions,.empty{background:#fff;padding:25px;margin:20px 0}.notice,.preview-banner{padding:12px;background:#d8ef61;font-weight:bold}.preview-banner{text-align:center;position:sticky;top:0;z-index:20}.edition-breaking .live{background:#b22020}.edition-breaking .stamp span{background:#b22020}.edition-explainer .cover{grid-template-columns:1fr}.edition-explainer .cover-art{display:none}
/* v3 editorial system */
:root{--paper:#f1efe8;--ink:#101010;--accent:#eb5b32;--green:#153e35;--opinion:#572335;--content:1450px;--radius:0;--space:clamp(18px,3vw,48px)}body>main{max-width:var(--content)}.cover-stage{min-height:76vh;display:grid;grid-template-columns:1.2fr .8fr;gap:var(--space);padding:var(--space) 0;border-bottom:1px solid var(--ink)}.cover-stage h1{font:400 clamp(54px,7vw,106px)/.86 Georgia;letter-spacing:-.065em;margin:20px 0}.cover-visual{background:var(--green);position:relative;min-height:520px;overflow:hidden}.cover-visual img{width:100%;height:100%;object-fit:cover}.cover-visual span{position:absolute;bottom:18px;left:18px;background:var(--accent);color:#fff;padding:8px;font-size:9px}.signature{margin:38px 0;padding:30px;border:1px solid var(--ink)}.signature-number{background:#d8ef61}.signature-number strong{display:block;font:900 clamp(60px,10vw,130px)/1 Arial Black;letter-spacing:-.08em}.signature-brief{margin-left:20%;background:#fff}.signature-quote{margin-left:40%;background:var(--green);color:#fff}.signature-quote blockquote{font:clamp(28px,4vw,60px)/1 Georgia}.spine{margin:100px 0}.spine h2,.constellation h2,.signal-field h2{font:400 clamp(44px,6vw,82px)/.92 Georgia}.spine-line{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));border-top:2px solid var(--ink)}.spine-line article{padding:24px 16px;border-right:1px solid var(--line);position:relative}.spine-line article i{display:block;width:15px;height:15px;border-radius:50%;background:var(--paper);border:4px solid var(--accent);margin-top:-33px}.spine-line .now{background:var(--ink);color:#fff}.constellation{margin:120px 0}.orbit{min-height:680px;position:relative;background:radial-gradient(circle at center,#fff 0 18%,transparent 18.5%),repeating-radial-gradient(circle at center,transparent 0 150px,#ccc 151px 152px)}.orbit article{position:absolute;width:220px;padding:20px;background:#fff;border:1px solid var(--ink)}.orbit .core{width:300px;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--accent)}.node.n0{left:3%;top:8%}.node.n1{right:4%;top:5%}.node.n2{right:1%;top:43%}.node.n3{right:15%;bottom:2%}.node.n4{left:12%;bottom:3%}.node.n5{left:0;top:44%}.signal-field{margin:120px 0}.signal-field>div{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:minmax(100px,auto);gap:14px}.signal{padding:24px;background:#fff;grid-column:span 4}.signal h3{font:30px/1 Georgia}.signal.s0{grid-column:span 7;grid-row:span 2;background:var(--green);color:#fff}.signal.s1{grid-column:span 5;background:var(--accent)}.signal.s2{grid-column:span 5;background:#d8ef61}.signal.s3{grid-column:span 6;background:var(--opinion);color:#fff}.signal.s4,.signal.s5{grid-column:span 3}.in30{display:grid;grid-template-columns:140px 1fr 1fr;gap:20px;background:#d8ef61;padding:35px;margin:70px 0}.changed,.document,.feature,.latest{padding:45px;margin:40px 0;border-top:1px solid var(--ink)}.feature h2,.document h2{font:clamp(40px,5vw,70px)/.95 Georgia}.local-feature{background:#dfe8dc}.opinion-feature{background:var(--opinion);color:#fff;margin-left:15%}.ad{text-align:center;padding:20px}.ad img{max-width:100%;height:auto}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:15px}.media-grid article{background:#fff;padding:12px}.media-grid img{width:100%;aspect-ratio:4/3;object-fit:cover}.composer-block{background:#fff;padding:15px;margin:12px 0;border-left:5px solid var(--green)}.composer-block.off{opacity:.55}.composer-block>header{display:flex;justify-content:space-between}.block-edit{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.block-actions{grid-column:1/-1;display:flex;gap:6px}.danger{background:#8e2525!important}.add-block{background:#dfe8dc;padding:20px}.newsroom details{background:#fff;padding:15px;margin:12px 0}.newsroom summary{cursor:pointer;font-weight:bold}
@media(max-width:1024px){.cover-stage{grid-template-columns:1fr 1fr}.orbit{background:none;display:grid;grid-template-columns:repeat(2,1fr);gap:12px;min-height:0}.orbit article,.orbit .core{position:static;width:auto;transform:none}.orbit .core{grid-column:1/-1}.signature-brief,.signature-quote,.opinion-feature{margin-left:0}.block-edit{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.cover-stage{display:flex;flex-direction:column}.cover-visual{min-height:48vh;order:-1}.cover-stage h1{font-size:54px}.signature{margin:18px 0;padding:22px}.spine{margin:70px 0}.spine-line{display:block;border-top:0;border-left:2px solid var(--ink);margin-left:14px}.spine-line article{border-right:0;padding:8px 18px 28px}.spine-line article i{position:absolute;left:-9px;top:20px;margin:0}.orbit{display:block}.orbit article,.orbit .core{margin:12px 0;border-left:6px solid var(--accent)}.signal-field>div{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:15px}.signal{min-width:82vw;scroll-snap-align:start}.signal.s0,.signal.s1,.signal.s2,.signal.s3,.signal.s4,.signal.s5{min-width:82vw}.in30{grid-template-columns:1fr}.block-edit{display:block}.block-edit>*{margin:5px 0;width:100%}.block-actions{flex-wrap:wrap}.media-grid{grid-template-columns:1fr 1fr}.newsroom .inline{flex-direction:column}.edition-local_day .local-feature{border-left:12px solid var(--accent)}.edition-sunday .opinion-feature{padding:60px 24px}.edition-election .signal-field{background:#e9e6dd;padding:20px}}
 :root{--orange:var(--accent)}


/* =========================================================
   FOCUSNOW DIRECT LIVE FIX v3.1 — 2026-08-27
   Replace /public_html/assets/app.css with this whole file.
   ========================================================= */

/* Public header: newsroom is not a public-navigation item. */
body:not(.newsroom) > header .admin{display:none!important}

/* Cover fallback when no featured image exists */
.cover-visual.no-media{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:520px!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 72% 22%,rgba(216,239,97,.90) 0 6%,transparent 6.4%),
    linear-gradient(145deg,#153e35 0 62%,#0e2b25 62% 100%)!important;
}
.cover-fallback{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:20px!important;
  padding:40px!important;
  text-align:center!important;
  color:#fff!important;
}
.cover-fallback b{
  position:static!important;
  display:block!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  color:#fff!important;
  font:900 clamp(38px,4.3vw,70px)/.95 Arial Black,Arial,sans-serif!important;
  letter-spacing:-.075em!important;
  white-space:nowrap!important;
}
.cover-fallback b span{
  position:static!important;
  inset:auto!important;
  display:inline!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  color:var(--accent)!important;
  font:inherit!important;
  letter-spacing:inherit!important;
}
.cover-fallback em{
  position:static!important;
  inset:auto!important;
  display:block!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  color:#fff!important;
  font:normal 700 10px/1.3 Arial,sans-serif!important;
  letter-spacing:.22em!important;
}
.cover-visual > .state-badge{
  position:absolute!important;
  z-index:3!important;
  left:18px!important;
  bottom:18px!important;
  top:auto!important;
  right:auto!important;
  display:inline-block!important;
  width:auto!important;
  margin:0!important;
  padding:8px 10px!important;
  background:var(--accent)!important;
  color:#fff!important;
  font:700 9px/1 Arial,sans-serif!important;
  letter-spacing:.08em!important;
}

/* Article-card technical labels must never leak to public UI */
.article-card > small:first-child,
.article-card small.tech-label{display:none!important}

/* THE SPINE: time/type metadata must be separated and readable */
.spine-line{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;
  border-top:2px solid var(--ink)!important;
}
.spine-line article{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  min-width:0!important;
  padding:34px 18px 28px!important;
  border-right:1px solid var(--line)!important;
}
.spine-line article:last-child{border-right:0!important}
.spine-line article i{
  position:absolute!important;
  display:block!important;
  top:-9px!important;
  left:18px!important;
  width:15px!important;
  height:15px!important;
  margin:0!important;
  border:4px solid var(--accent)!important;
  border-radius:50%!important;
  background:var(--paper)!important;
}
.spine-line article time{
  position:static!important;
  display:block!important;
  width:auto!important;
  min-width:0!important;
  height:auto!important;
  margin:0 0 7px!important;
  padding:0!important;
  color:var(--accent)!important;
  font:800 11px/1.2 Arial,sans-serif!important;
  letter-spacing:.08em!important;
  white-space:normal!important;
}
.spine-line article small{
  position:static!important;
  display:block!important;
  width:auto!important;
  min-width:0!important;
  height:auto!important;
  margin:0 0 16px!important;
  padding:0!important;
  color:inherit!important;
  font:700 8px/1.25 Arial,sans-serif!important;
  letter-spacing:.12em!important;
  white-space:normal!important;
}
.spine-line article h3{
  position:static!important;
  display:block!important;
  margin:0 0 12px!important;
  font-size:18px!important;
  line-height:1.15!important;
}
.spine-line article p{
  position:static!important;
  display:block!important;
  margin:0!important;
  line-height:1.45!important;
}
.spine-line .now{
  background:var(--ink)!important;
  color:#fff!important;
}
.spine-line .now i{background:var(--ink)!important}

/* Constellation: slightly tighter desktop composition */
.constellation{margin:90px 0!important}
.orbit{min-height:570px!important}

/* Signal field spacing */
.signal-field{margin:90px 0!important}

@media(max-width:1024px){
  .orbit{min-height:0!important}
}

@media(max-width:600px){
  .cover-visual.no-media{min-height:48vh!important}
  .cover-fallback{min-height:48vh!important;padding:28px!important}
  .cover-fallback b{font-size:42px!important}
  .spine-line{
    display:block!important;
    border-top:0!important;
    border-left:2px solid var(--ink)!important;
    margin-left:14px!important;
  }
  .spine-line article{
    padding:20px 18px 28px!important;
    border-right:0!important;
  }
  .spine-line article i{
    left:-9px!important;
    top:20px!important;
  }
  .spine-line article time{margin-bottom:6px!important}
  .constellation,.signal-field{margin:70px 0!important}
}
