/*
Theme Name: NusaPress Tactical SEO AI
Author: NusaPress
Description: Portal berita editorial tactical hijau zaitun, SEO semantik, NewsArticle Schema, ringkasan faktual, white-label, kompatibel dengan NusaPress Paid Publisher dan tanpa WooCommerce.
Version: 2.0.0
Requires at least: 6.2
Requires PHP: 7.4
License: GPL v2 or later
Text Domain: nusapress-portal
*/
:root{--blue:#0b4d91;--blue-dark:#092c59;--red:#d72630;--ink:#18283d;--muted:#627187;--stroke:#e2e8f0;--background:#f5f7fa;--surface:#fff;--max:1220px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--background);font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:15px;line-height:1.65}img{height:auto;max-width:100%}a{color:inherit;text-decoration:none}a:hover{color:var(--blue)}button,input{font:inherit}button{cursor:pointer}.site-container{width:min(var(--max),calc(100% - 38px));margin:0 auto}.skip-link{position:absolute;left:12px;top:-50px;background:#fff;padding:12px;z-index:10000}.skip-link:focus{top:12px}.site-topline{background:#061e3c;color:#d5e4f5;font-size:.76rem}.topline-inner{display:flex;justify-content:space-between;align-items:center;min-height:34px;gap:18px}.topline-inner span{opacity:.86}.topline-inner a{color:#fff;font-weight:700}.masthead{background:#fff;border-bottom:1px solid #e4ebf3}.masthead-inner{min-height:113px;display:flex;justify-content:space-between;align-items:center;gap:28px}.branding{min-width:0;display:flex;gap:13px;align-items:center}.branding .custom-logo{width:auto;max-width:280px;max-height:82px}.brandmark{height:55px;width:55px;background:var(--blue);border-radius:12px;display:grid;place-items:center;color:#fff;font-weight:950;font-size:1.6rem;letter-spacing:-.1em;box-shadow:inset -6px -6px 0 #ffffff18}.brand-text{display:grid;line-height:1.12}.site-title{font-weight:950;letter-spacing:-.055em;font-size:clamp(1.45rem,3vw,2.2rem);text-transform:uppercase;color:var(--blue-dark)}.site-title span{color:var(--red)}.site-tagline{font-size:.75rem;letter-spacing:.075em;color:#8491a0;margin-top:7px;font-weight:750;text-transform:uppercase}.masthead-right{display:flex;align-items:center;gap:16px}.header-banner{background:linear-gradient(120deg,#f3f7fc,#e8f0fa);border:1px solid #e1e8f3;color:#49617a;min-width:315px;text-align:center;padding:17px 25px;border-radius:6px;font-size:.8rem}.header-banner strong{display:block;color:var(--blue-dark);font-size:.88rem}.write-button{background:var(--red);color:#fff;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;border-radius:7px;padding:11px 17px;font-size:.86rem;font-weight:800}.write-button:hover{background:#b91b26;color:white}.nav-shell{background:var(--blue);border-bottom:4px solid var(--red);color:#fff}.nav-inner{display:flex;justify-content:space-between;align-items:stretch;gap:16px}.main-nav{display:flex;align-items:center;gap:0;min-width:0}.main-nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:stretch;flex-wrap:wrap}.main-nav li{position:relative}.main-nav li a{display:inline-flex;align-items:center;min-height:49px;padding:0 14px;color:#fff;font-weight:750;font-size:.83rem;letter-spacing:.01em}.main-nav li a:hover,.main-nav li.current-menu-item a,.main-nav li.current-cat a{background:#ffffff24;color:#fff}.search-toggle,.mobile-toggle{border:0;background:transparent;color:#fff;padding:0 15px;font-size:1.25rem}.mobile-toggle{display:none}.site-search{display:none;padding:16px 0;background:#eef4fc;border-bottom:1px solid var(--stroke)}.site-search.is-open{display:block}.searchform{display:flex;gap:8px}.searchform input{flex:1;min-width:0;border:1px solid #cfdae9;padding:12px;border-radius:6px}.searchform button{border:0;border-radius:6px;padding:0 20px;background:var(--blue);color:#fff;font-weight:800}.ticker-shell{background:#fff;border-bottom:1px solid var(--stroke)}.ticker{display:flex;align-items:center;gap:17px;padding:13px 0;min-width:0}.ticker-label{background:var(--red);color:#fff;font-size:.68rem;font-weight:900;white-space:nowrap;padding:5px 10px;border-radius:3px;letter-spacing:.08em}.ticker-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;font-weight:750}.ticker-content a{color:var(--ink)}.ticker-content b{color:var(--red);margin:0 13px}.page-main{padding:32px 0 64px}.block-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:2px solid var(--stroke);margin:0 0 21px}.block-heading h2,.block-heading h1{margin:0;color:var(--blue-dark);font-weight:900;line-height:1.3;font-size:1.35rem;letter-spacing:-.03em;border-bottom:3px solid var(--red);padding:0 0 12px;transform:translateY(2px)}.block-heading a{font-size:.8rem;color:var(--blue);font-weight:800}.featured-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(280px,1fr);gap:17px;margin-bottom:39px}.featured-side{display:grid;grid-template-columns:1fr 1fr;gap:17px;align-items:stretch}.story-card{display:block;background:#fff;overflow:hidden;border:1px solid var(--stroke);border-radius:10px;min-width:0;transition:box-shadow .2s,transform .2s}.story-card:hover{box-shadow:0 12px 33px #103f7b16;transform:translateY(-2px)}.story-picture{position:relative;display:block;overflow:hidden;aspect-ratio:16/10;background:#d9e5f1}.story-picture img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s}.story-card:hover .story-picture img{transform:scale(1.035)}.story-fallback{height:100%;min-height:100px;background:linear-gradient(135deg,#094587,#0d6bb5);display:grid;place-items:center;color:#fff;font-size:1rem;letter-spacing:.1em;font-weight:950;opacity:.87;text-align:center;padding:20px}.story-fallback i{display:block;font-style:normal;font-size:2.5rem;letter-spacing:-.07em}.story-body{padding:17px 19px 20px}.story-meta{color:#8893a5;display:flex;align-items:center;flex-wrap:wrap;gap:9px;font-size:.72rem;margin-bottom:7px}.story-category{color:var(--red);text-transform:uppercase;letter-spacing:.08em;font-weight:900}.story-title{margin:0;font-size:1rem;line-height:1.35;font-weight:850;letter-spacing:-.025em}.story-excerpt{font-size:.83rem;color:var(--muted);margin:9px 0 0;line-height:1.6}.story-card--hero{height:100%}.story-card--hero .story-picture{aspect-ratio:16/9}.story-card--hero .story-title{font-size:1.67rem;line-height:1.25}.story-card--hero .story-body{padding:24px}.story-card--small .story-body{padding:12px 12px 16px}.story-card--small .story-picture{aspect-ratio:16/11}.story-card--small .story-title{font-size:.86rem;line-height:1.42}.story-card--small .story-meta{font-size:.65rem}.story-card--small .story-excerpt{display:none}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:30px;align-items:start}.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.sidebar-box{background:#fff;border:1px solid var(--stroke);border-radius:10px;padding:20px;margin-bottom:20px}.sidebar-box h3{font-size:1.1rem;color:var(--blue-dark);font-weight:900;margin:0 0 17px;border-bottom:2px solid var(--red);padding-bottom:10px}.rank-item{display:flex;gap:14px;border-bottom:1px solid #edf0f4;padding:13px 0}.rank-item:last-child{border-bottom:0}.rank-number{font-size:1.7rem;line-height:1;font-weight:950;color:#d8e2f0;min-width:27px}.rank-item:nth-child(-n+3) .rank-number{color:var(--red)}.rank-item a{font-size:.84rem;font-weight:800;line-height:1.45}.rank-item small{display:block;color:#8893a5;font-size:.72rem;margin-top:5px}.sidebar-cta{background:var(--blue-dark);padding:24px;border-radius:10px;color:#fff}.sidebar-cta h3{font-size:1.28rem;line-height:1.3;margin:0 0 10px}.sidebar-cta p{color:#c6d5e5;margin:0 0 17px;font-size:.85rem}.sidebar-cta .write-button{width:100%;justify-content:center}.section-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.section-row h2{font-size:1.25rem;margin:0;font-weight:900}.category-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:35px}.category-panel{background:#fff;padding:19px;border:1px solid var(--stroke);border-radius:10px}.category-panel h3{color:var(--blue-dark);font-size:1.05rem;font-weight:900;border-bottom:2px solid var(--red);margin:0 0 16px;padding-bottom:9px}.mini-story{border-bottom:1px solid var(--stroke);padding:10px 0}.mini-story:last-child{border:0}.mini-story a{font-size:.88rem;line-height:1.45;font-weight:800;display:block}.mini-story small{font-size:.72rem;color:var(--muted)}.archive-hero{background:#fff;border:1px solid var(--stroke);padding:25px;margin-bottom:26px;border-radius:10px}.archive-hero h1{margin:0;font-size:1.8rem;letter-spacing:-.05em;color:var(--blue-dark)}.archive-hero p{margin:7px 0 0;color:var(--muted)}.pagination{margin:28px 0}.pagination .page-numbers{display:inline-block;background:#fff;border:1px solid var(--stroke);padding:8px 13px;margin-right:5px;border-radius:6px}.pagination .page-numbers.current{background:var(--blue);color:#fff}.article-shell{background:#fff;border:1px solid var(--stroke);border-radius:11px;overflow:hidden}.article-main{padding:clamp(20px,4vw,40px)}.breadcrumb{font-size:.78rem;color:var(--muted);margin-bottom:15px}.breadcrumb a{color:var(--blue);font-weight:700}.article-h1{font-size:clamp(1.8rem,4vw,2.9rem);line-height:1.18;letter-spacing:-.047em;margin:0 0 17px;font-weight:950;color:#10213a}.article-byline{display:flex;gap:12px;flex-wrap:wrap;color:#69758b;font-size:.82rem;border-bottom:1px solid var(--stroke);padding-bottom:18px}.article-byline strong{color:var(--blue-dark)}.article-cover{width:100%;max-height:530px;object-fit:cover;display:block}.article-content{font-size:1.07rem;line-height:1.88;color:#24344a;overflow-wrap:anywhere}.article-content p{margin:0 0 1.3em}.article-content h2,.article-content h3{color:#102744;line-height:1.35;margin:1.2em 0 .55em}.article-content a{color:var(--blue);text-decoration:underline}.article-share{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.article-share a{border:1px solid var(--stroke);border-radius:5px;padding:7px 12px;font-size:.8rem;font-weight:800}.article-label{background:#fff7ec;border-left:3px solid #e39b35;padding:11px 14px;margin-bottom:20px;color:#80621f;font-size:.83rem}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.page-article{background:#fff;padding:clamp(20px,4vw,42px);border:1px solid var(--stroke);border-radius:11px}.page-article h1{margin-top:0;font-size:2rem;color:var(--blue-dark)}.site-footer{background:#092744;color:#c9d9ea;margin-top:30px}.footer-main{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px;padding:53px 0}.footer-main h3{font-size:1rem;color:#fff;margin-top:0}.footer-main p{font-size:.84rem;line-height:1.8}.footer-main a{color:#c9d9ea}.footer-main ul{list-style:none;padding:0;margin:0}.footer-main li{margin-bottom:7px;font-size:.84rem}.footer-brand{font-size:1.8rem;letter-spacing:-.055em;font-weight:950;color:#fff}.footer-bottom{border-top:1px solid #ffffff20;font-size:.75rem;padding:16px 0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}.not-found{text-align:center;padding:60px 10px}.not-found h1{font-size:3rem;margin:0}.wp-block-image{max-width:100%}.screen-reader-text{clip:rect(1px,1px,1px,1px);position:absolute!important;height:1px;width:1px;overflow:hidden}.screen-reader-text:focus{clip:auto;position:static!important;height:auto;width:auto}.aligncenter{display:block;margin-left:auto;margin-right:auto}.alignright{float:right;margin-left:1em}.alignleft{float:left;margin-right:1em}
@media(max-width:1100px){.featured-grid{grid-template-columns:1.3fr 1fr}.featured-side{grid-template-columns:1fr 1fr}.story-card--small .story-title{font-size:.76rem}.story-card--hero .story-title{font-size:1.38rem}.content-layout{grid-template-columns:minmax(0,1fr) 265px}.news-grid{grid-template-columns:repeat(2,1fr)}.masthead-inner{min-height:95px}.header-banner{display:none}}
@media(max-width:800px){.site-container{width:min(var(--max),calc(100% - 26px))}.masthead-inner{min-height:84px}.brandmark{width:45px;height:45px}.site-title{font-size:1.45rem}.write-button{padding:10px 12px}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;z-index:80;background:var(--blue-dark);box-shadow:0 12px 23px #092b5040}.nav-shell{position:relative}.main-nav.is-open{display:block}.main-nav ul{display:block}.main-nav li a{width:100%;padding:0 18px}.mobile-toggle{display:block}.nav-inner{min-height:48px}.search-toggle{margin-left:auto}.featured-grid{grid-template-columns:1fr}.featured-side{grid-template-columns:repeat(2,1fr)}.content-layout{grid-template-columns:1fr}.site-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:15px}.sidebar-box{margin:0}.category-columns{grid-template-columns:1fr 1fr}.footer-main{grid-template-columns:1fr 1fr;gap:28px}.footer-main>div:first-child{grid-column:1/-1}}
@media(max-width:530px){.topline-inner{font-size:.7rem}.topline-inner span:nth-child(2){display:none}.masthead-right .write-button{font-size:.74rem}.brandmark{display:none}.brand-text .site-tagline{font-size:.62rem}.featured-side{gap:10px}.featured-grid{gap:11px}.story-card--hero .story-picture{aspect-ratio:16/10}.story-card--hero .story-title{font-size:1.32rem}.story-card--hero .story-body{padding:17px}.story-card--small .story-picture{aspect-ratio:4/3}.story-card--small .story-meta{display:none}.story-card--small .story-body{padding:10px}.story-card--small .story-title{font-size:.77rem}.news-grid{grid-template-columns:1fr 1fr;gap:10px}.news-grid .story-title{font-size:.84rem}.news-grid .story-body{padding:12px}.news-grid .story-excerpt{display:none}.news-grid .story-picture{aspect-ratio:4/3}.site-sidebar{grid-template-columns:1fr}.category-columns{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr}.footer-main>div:first-child{grid-column:auto}.related-grid{grid-template-columns:1fr 1fr}.article-main{padding:20px}.article-content{font-size:1rem}.page-main{padding-top:21px}}


/* ==============================================================
   NUSAPRESS TACTICAL 2.0 — olive / forest / khaki / parchment
   Palette inspired by army green; no governmental endorsement.
   ============================================================== */
:root{
  --blue:#3C532E;--blue-dark:#20382C;--red:#A88647;
  --ink:#23332A;--muted:#677369;--stroke:#DBE0D4;
  --background:#F5F3EB;--surface:#FFFFFF;--max:1220px;
  --olive:#3C532E;--deep:#142A20;--khaki:#BA9D64;
}
body{color:var(--ink);background:var(--background)}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #C7A24E;outline-offset:3px}
a:hover{color:#526B39}
.site-topline{background:var(--deep);color:#E3E7D8;border-bottom:1px solid #556A4A}
.topline-inner a{color:#F5DB9E}
.masthead{background:#FDFCF7;border-bottom:1px solid #D9DDCF}
.brandmark{background:linear-gradient(145deg,#20382C,#49653B);border-radius:9px;box-shadow:inset -6px -6px 0 #ffffff15}
.site-title{color:#1C3629;letter-spacing:-.04em}.site-tagline{color:#687766}
.header-banner{background:linear-gradient(120deg,#F1F2E7,#E5EAD9);border-color:#DEE4D5;color:#65765A}
.header-banner strong{color:#25432E}
.write-button{background:#C4A260;color:#1D2E20;border-radius:5px;font-weight:900;box-shadow:0 2px 0 #948047}
.write-button:hover{background:#E0C182;color:#14241A}
.nav-shell{background:linear-gradient(95deg,#354E30,#293F2B 65%,#253A29);border-bottom:3px solid #BFA469}
.main-nav li a{letter-spacing:.025em}.main-nav li a:hover,.main-nav li.current-menu-item a,.main-nav li.current-cat a{background:#ffffff17;border-bottom:2px solid #DCC487}
.site-search{background:#ECF0E6}.searchform input{border-color:#CBD5C7}.searchform button{background:#35512E}
.ticker-shell{background:#F0F0E8;border-color:#DBE0D2}.ticker-label{background:#475E35;color:#fff}.ticker-content b{color:#AA864A}
.page-main{padding-top:27px}
.portal-intro{margin-bottom:29px;display:flex;align-items:center;justify-content:space-between;gap:26px;
  background:radial-gradient(circle at 88% 20%,#64745070 0%,transparent 36%),
    linear-gradient(111deg,#1B3528,#294830 64%,#405337);
  position:relative;overflow:hidden;padding:28px clamp(22px,3.6vw,46px);border-radius:9px;
  border:1px solid #72836533;box-shadow:0 16px 30px #24392113;color:#F6F6E9}
.portal-intro::after{content:"";pointer-events:none;position:absolute;width:290px;height:290px;right:-95px;top:-145px;border:1px solid #c7c9ac33;border-radius:50%;box-shadow:0 0 0 40px #ffffff06,0 0 0 90px #ffffff04}
.intro-eyebrow{font-size:.68rem;letter-spacing:.17em;font-weight:900;color:#E8D7A6;margin:0 0 8px}
.signal-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#E6C77C;margin-right:5px;box-shadow:0 0 0 3px #e6c77c24}
.portal-intro h1{font-size:clamp(1.5rem,3.4vw,2.65rem);line-height:1.16;margin:0 0 9px;font-weight:950;letter-spacing:-.043em;color:#FFF}
.portal-intro h1 span{color:#E0CA96}.portal-intro p:not(.intro-eyebrow){margin:0;color:#D0DDCC;font-size:.9rem;line-height:1.6;max-width:670px}
.intro-cta{flex-shrink:0;background:#E1C88A;color:#203326!important;padding:13px 18px;border-radius:5px;font-size:.86rem;font-weight:900;z-index:1}
.intro-cta:hover{background:#F4DC9E}
.block-heading{border-color:#DDE3D8}.block-heading h2,.block-heading h1{color:#243C2C;border-color:#B4985B}
.block-heading a{color:#385935}
.story-card{border-radius:7px;box-shadow:0 2px 12px #203E2810;border-color:#E1E4D9}
.story-card:hover{box-shadow:0 15px 30px #263B271B}
.story-picture{background:#D6DCCA}.story-fallback{background:linear-gradient(145deg,#243E29,#67804D);letter-spacing:.06em}
.story-category{color:#6A592D}.story-meta{color:#777E72}
.story-title a:hover{color:#385C38}.story-excerpt{color:#637067}
.sidebar-box,.category-panel,.archive-hero,.article-shell,.page-article{border-color:#E0E5DA;border-radius:7px}
.sidebar-box h3,.category-panel h3{border-bottom-color:#B49A61;color:#263D2B}
.rank-number{color:#CFD7CB!important}.rank-item:nth-child(-n+3) .rank-number{color:#7E8C52!important}
.sidebar-cta{background:linear-gradient(145deg,#203C2B,#34543A);border-radius:7px}
.sidebar-cta p{color:#D8E4D5}
.archive-hero h1,.article-h1,.page-article h1{color:#21382B}
.breadcrumb a{color:#3B5835}.article-h1{letter-spacing:-.039em}
.article-byline strong{color:#253B29}.article-content{color:#24352B}
.article-content h2,.article-content h3{color:#223E2D}.article-content a{color:#356138}
.article-content blockquote{border-left:4px solid #B49A61;background:#F6F7EF;padding:12px 20px;margin:21px 0}
.article-content table{display:block;overflow-x:auto;border-collapse:collapse;max-width:100%;font-size:.9rem}
.article-content th,.article-content td{border:1px solid #DCE1D6;padding:9px 12px}
.article-content th{background:#F0F2E9}.article-content img{border-radius:5px}
.article-label{border-left:4px solid #B18D4A;background:#FBF6E6;color:#695329;font-weight:700}
.article-takeaways{background:linear-gradient(115deg,#F1F5E8,#FAF9F1);border:1px solid #D5DEC7;
  border-left:5px solid #648050;border-radius:5px;padding:22px 26px;margin:0 0 25px}
.takeaways-kicker{font-weight:900;letter-spacing:.14em;font-size:.67rem;color:#687F4C}
.article-takeaways h2{margin:6px 0 9px;font-size:1.2rem;color:#243D2B}
.article-takeaways p{margin:0 0 9px;line-height:1.65}.article-takeaways ul{margin:10px 0 0;padding-left:20px}
.article-takeaways li{margin:5px 0}
.article-updated{border-top:1px solid #E4E8DE;margin-top:18px;padding-top:14px;color:#657464;font-size:.8rem}
.site-footer{background:linear-gradient(145deg,#132B20,#1D3526);color:#DAE3D7}
.footer-main a{color:#E1E8DB}.footer-main a:hover{color:#E0C785}
.footer-editorial{color:#E2D2A5!important;font-weight:700}
.pagination .page-numbers.current{background:#3B5937;color:#fff}
/* Match the existing standalone publisher plugin without modifying its payment flow. */
body .np-publisher{color:#21362A;border-color:#DCE3D4;box-shadow:0 12px 40px #263A2612}
body .np-publisher .np-eyebrow{color:#6B793F}
body .np-publisher .np-package:has(input:checked){border-color:#5A764B;background:#F2F7EA}
body .np-publisher .np-package input,body .np-publisher .np-consent input{accent-color:#385B37}
body .np-publisher .np-package b{color:#36522C}
body .np-publisher .np-submit input:focus,body .np-publisher .np-submit textarea:focus,body .np-publisher .np-submit select:focus{border-color:#63814C;box-shadow:0 0 0 3px #B6CBA166}
body .np-publisher .np-pay-button{background:#375B34;color:#fff!important}
body .np-publisher .np-pay-button:hover{background:#244925}
body .np-editorial-note{background:#F7F3E6;border-left-color:#A18A52;color:#4B503C}
@media(max-width:800px){.main-nav{background:#203B2B}.portal-intro{align-items:flex-start;flex-direction:column;gap:17px}.intro-cta{align-self:flex-start}}
@media(max-width:530px){.portal-intro{padding:23px 20px}.portal-intro h1{font-size:1.72rem}.intro-cta{width:100%;text-align:center}.article-takeaways{padding:16px 18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
