/*
Theme Name: Sentinel NE
Theme URI: https://sentinelne.in
Author: Sentinel NE
Author URI: https://sentinelne.in
Description: Custom editorial theme for Sentinel NE - The Voice of the Northeast. Bold maroon-and-gold masthead with a rich multi-color category system, image-led cards, hero photography, breaking ticker, fact-check callouts, and share/comment styling.
Version: 2.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: sentinelne
*/

:root{
  --maroon:#7a1230;
  --maroon-dark:#54061e;
  --gold:#c9a227;
  --gold-light:#e7cf7a;
  --teal:#0e7c86;
  --indigo:#3949ab;
  --slate:#455a64;
  --green:#2e7d32;
  --amber:#b8860b;
  --plum:#6a3aa0;
  --terracotta:#c1440e;
  --ink:#1c1a19;
  --paper:#faf6ee;
  --paper-dim:#f0e9d8;
  --grey:#6b6660;
  --line:#e5dcc6;
  --serif:'Playfair Display','Georgia',serif;
  --sans:'Inter','Helvetica Neue',Arial,sans-serif;
  --radius:10px;
  --shadow-sm:0 1px 3px rgba(28,20,10,.08);
  --shadow-md:0 8px 24px rgba(28,20,10,.12);
  --shadow-lg:0 18px 44px rgba(28,20,10,.20);
}
*{box-sizing:border-box;}
body{margin:0;font-family:var(--sans);background:var(--paper);color:var(--ink);line-height:1.6;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;height:auto;display:block;}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px;}

/* Utility bar */
.utility-bar{background:var(--ink);color:#cfcac2;font-size:12px;padding:7px 24px;display:flex;justify-content:space-between;letter-spacing:.04em;}
.utility-bar a{color:#cfcac2;transition:color .15s;}
.utility-bar a:hover{color:var(--gold-light);}
.utility-bar .ub-right a{margin-left:14px;}

/* Masthead */
.masthead{background:linear-gradient(155deg,#fffdf8 0%,var(--paper) 55%,var(--paper-dim) 100%);border-bottom:4px solid var(--maroon);padding:26px 24px 18px;text-align:center;position:relative;overflow:hidden;}
.masthead::before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,var(--maroon),var(--gold),var(--teal),var(--indigo),var(--terracotta),var(--maroon));}
.masthead h1{font-family:var(--serif);font-weight:800;font-size:44px;letter-spacing:.02em;color:var(--maroon-dark);margin:0;}
.masthead h1 span{color:var(--gold);}
.masthead .tagline{font-size:13px;color:var(--grey);letter-spacing:.06em;text-transform:uppercase;margin-top:6px;font-weight:600;}

/* Nav */
.site-nav{background:linear-gradient(90deg,var(--maroon-dark),var(--maroon));box-shadow:var(--shadow-sm);}
.site-nav ul{list-style:none;display:flex;flex-wrap:wrap;margin:0;padding:0 24px;max-width:1200px;margin-left:auto;margin-right:auto;}
.site-nav li{margin:0;}
.site-nav a{display:block;position:relative;padding:14px 16px;color:#fff;font-size:13.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;transition:background .15s;}
.site-nav a::after{content:"";position:absolute;left:16px;right:16px;bottom:8px;height:2px;background:var(--gold-light);transform:scaleX(0);transform-origin:left;transition:transform .2s ease;}
.site-nav a:hover{background:rgba(0,0,0,.18);text-decoration:none;}
.site-nav a:hover::after{transform:scaleX(1);}

/* Breaking ticker */
.breaking-ticker{background:linear-gradient(90deg,var(--gold-light),#f3e2a8);border-bottom:1px solid var(--line);padding:9px 24px;font-size:13.5px;color:var(--maroon-dark);overflow:hidden;}
.breaking-ticker .wrap{display:flex;align-items:center;gap:14px;overflow:hidden;white-space:nowrap;}
.breaking-ticker .bt-label{background:var(--maroon);color:#fff;font-weight:800;font-size:11px;text-transform:uppercase;padding:4px 10px;letter-spacing:.06em;flex:none;border-radius:3px;box-shadow:var(--shadow-sm);}
.breaking-ticker .bt-items{display:flex;gap:26px;animation:ticker-scroll 28s linear infinite;}
.breaking-ticker .bt-item{flex:none;}
.breaking-ticker .wrap:hover .bt-items{animation-play-state:paused;}
.breaking-ticker a{color:var(--maroon-dark);font-weight:700;}
.breaking-ticker a:hover{text-decoration:underline;}
@keyframes ticker-scroll{
  0%{transform:translateX(0);}
  100%{transform:translateX(-50%);}
}

/* Layout columns */
.content-columns{display:grid;grid-template-columns:2fr 1fr;gap:36px;padding:32px 24px;max-width:1200px;margin:0 auto;align-items:start;}
@media (max-width:860px){.content-columns{grid-template-columns:1fr;}}

/* Kicker badge (category color set inline via style attribute) */
.kicker{display:inline-block;background:var(--maroon);color:#fff;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;padding:5px 11px;margin-bottom:10px;border-radius:3px;box-shadow:var(--shadow-sm);}

/* Top story hero */
.top-story{position:relative;border-radius:var(--radius);overflow:hidden;background-size:cover;background-position:center;box-shadow:var(--shadow-lg);min-height:200px;}
.top-story.has-media{min-height:420px;display:flex;align-items:flex-end;}
.top-story.has-media::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,12,8,.05) 30%,rgba(15,8,5,.92) 100%);}
.top-story:not(.has-media){padding:38px 32px;color:#fff;}
.top-story-inner{position:relative;z-index:2;padding:34px 32px;width:100%;}
.top-story.has-media h2,.top-story.has-media .dek,.top-story.has-media .post-meta,.top-story.has-media .post-meta a{color:#fff;}
.top-story:not(.has-media) h2 a,.top-story:not(.has-media) .dek,.top-story:not(.has-media) .post-meta,.top-story:not(.has-media) .post-meta a{color:#fff;}
.top-story h2, .single-title{font-family:var(--serif);font-weight:800;font-size:34px;line-height:1.18;color:var(--maroon-dark);margin:0 0 12px;}
.single-title{font-size:38px;}
.dek{font-size:17.5px;font-style:italic;color:#3a3532;margin:0 0 14px;}
.post-meta{font-size:13px;color:var(--grey);border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:18px;}
.post-meta a{color:var(--maroon);font-weight:700;}
.post-meta-light{border-bottom-color:rgba(255,255,255,.25);}
.post-meta-light a{color:var(--gold-light);}
.read-more{color:var(--maroon);font-weight:800;font-size:14px;display:inline-block;transition:transform .15s;}
.top-story.has-media .read-more,.top-story:not(.has-media) .read-more{color:var(--gold-light);}
.read-more:hover{transform:translateX(3px);text-decoration:underline;}

.photo-credit{font-size:11.5px;color:var(--grey);font-style:italic;padding:6px 2px 4px;text-align:right;}

.share-row{display:flex;gap:10px;align-items:center;margin:18px 0;}
.share-row span{font-size:12px;color:var(--grey);text-transform:uppercase;letter-spacing:.04em;}
.top-story.has-media .share-row span,.top-story:not(.has-media) .share-row span{color:rgba(255,255,255,.75);}
.share-row a{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--maroon);color:#fff;font-size:13px;font-weight:700;transition:transform .15s,background .15s;}
.share-row a:hover{background:var(--maroon-dark);text-decoration:none;transform:translateY(-2px);}

/* Cards */
.card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:12px;}
@media (max-width:600px){.card-grid{grid-template-columns:1fr;}}
.card{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow .2s ease,transform .2s ease;display:flex;flex-direction:column;}
.card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px);}
.card-media{position:relative;display:block;aspect-ratio:16/10;background-size:cover;background-position:center;overflow:hidden;}
.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease;}
.card:hover .card-media img{transform:scale(1.05);}
.card-media .kicker{position:absolute;left:12px;bottom:12px;margin-bottom:0;}
.card-body{padding:16px 18px 18px;flex:1;display:flex;flex-direction:column;}
.card .kicker{margin-bottom:8px;}
.card h3{font-family:var(--serif);font-weight:700;font-size:19px;margin:0 0 8px;color:var(--maroon-dark);line-height:1.3;}
.card h3 a{color:inherit;}
.card p{font-size:14px;color:#3a3532;margin:0 0 12px;flex:1;}
.section-heading{font-family:var(--serif);font-weight:800;font-size:25px;color:var(--maroon-dark);border-bottom:3px solid var(--gold);padding-bottom:9px;margin:42px 0 18px;position:relative;}

.byline-tag{display:inline-block;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:3px 9px;margin-bottom:8px;background:var(--paper-dim);color:var(--maroon-dark);border:1px solid var(--gold);border-radius:3px;}

/* Fact-check callout */
.fc-note{background:#fbf2e0;border-top:3px solid var(--amber);border-bottom:3px solid var(--amber);border-left:1px solid var(--gold);border-right:1px solid var(--gold);padding:14px 16px;font-size:14px;color:#4a3d10;margin:20px 0;border-radius:6px;}
.fc-note strong{text-transform:uppercase;font-size:12.5px;letter-spacing:.03em;}

/* Single post hero */
.single-hero{position:relative;background-size:cover;background-position:center;border-radius:var(--radius);overflow:hidden;min-height:380px;display:flex;align-items:flex-end;box-shadow:var(--shadow-lg);margin-bottom:6px;}
.single-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,8,5,.05) 25%,rgba(12,7,4,.92) 100%);}
.single-hero-overlay{position:relative;z-index:2;padding:30px 32px;width:100%;color:#fff;}
.single-hero-overlay .single-title{color:#fff;}
.single-hero-overlay .kicker{margin-bottom:12px;}

/* Article body */
.entry-content p{font-size:16.5px;margin:0 0 18px;}
.entry-content{margin-bottom:10px;}
.article-sources{font-size:12.5px;color:var(--grey);font-style:italic;border-top:1px solid var(--line);padding-top:12px;margin-top:20px;}

/* Sidebar */
.sidebar .widget{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:20px;margin-bottom:24px;}
.sidebar .widget h3{font-family:var(--serif);font-weight:700;font-size:18px;color:var(--maroon-dark);border-bottom:2px solid var(--gold);padding-bottom:9px;margin:0 0 12px;}
.sidebar .trending-list{list-style:none;margin:0;padding:0;}
.sidebar .trending-list li{display:flex;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);font-size:13.5px;}
.sidebar .trending-list li:last-child{border-bottom:0;}
.sidebar .trending-list .num{color:var(--gold);font-weight:800;font-family:var(--serif);}
.sidebar .newsletter{background:linear-gradient(160deg,var(--maroon),var(--maroon-dark));color:#f3e6da;}
.sidebar .newsletter h3{color:var(--gold-light);border-bottom-color:var(--gold-light);}
.sidebar .newsletter p{font-size:13px;color:#e6d6c8;}
.sidebar .newsletter form{display:flex;gap:6px;}
.sidebar .newsletter input[type=email]{flex:1;padding:9px;border:0;border-radius:4px;}
.sidebar .newsletter button{background:var(--gold);color:var(--maroon-dark);border:0;border-radius:4px;padding:9px 12px;font-weight:800;font-size:12.5px;text-transform:uppercase;cursor:pointer;transition:background .15s;}
.sidebar .newsletter button:hover{background:var(--gold-light);}
.sidebar .newsletter .empty-note{color:#e6d6c8;}
.sidebar .culture-list{list-style:none;margin:0;padding:0;font-size:13.5px;}
.sidebar .culture-list li{padding:7px 0;border-bottom:1px solid var(--line);}

/* Community discussions */
.discussions-list{list-style:none;margin:0;padding:0;}
.discussions-list li{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:15px 17px;margin-bottom:11px;font-size:14px;border-left:4px solid var(--teal);transition:box-shadow .15s;}
.discussions-list li:hover{box-shadow:var(--shadow-md);}
.discussions-list .d-title{font-weight:700;color:var(--maroon-dark);}
.discussions-list .d-meta{font-size:12px;color:var(--grey);}
.discuss-cta{text-align:center;padding:16px;background:linear-gradient(160deg,var(--paper-dim),#e9dfc4);border-radius:var(--radius);border:1px dashed var(--gold);font-size:14px;}
.discuss-cta a{color:var(--maroon);font-weight:800;}

/* Comments */
.comments-area{margin-top:34px;border-top:2px solid var(--line);padding-top:22px;}
.comments-area h2{font-family:var(--serif);color:var(--maroon-dark);}
.comment-signin{background:var(--paper-dim);border:1px dashed var(--gold);border-radius:var(--radius);padding:13px 16px;font-size:13.5px;margin-bottom:18px;}
.comment-signin a{color:var(--maroon);font-weight:700;}
.comment-list{list-style:none;margin:0;padding:0;}
.comment-body{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:15px 17px;margin-bottom:13px;}
.comment-author{font-weight:800;color:var(--maroon-dark);font-size:13.5px;}
.comment-meta{font-size:11.5px;color:var(--grey);margin-bottom:6px;}
.comment-content p{font-size:14px;margin:6px 0 0;}
.comment-reply-link{font-size:12px;color:var(--maroon);font-weight:700;}
.comment-respond{margin-top:20px;}
.comment-form input[type=text], .comment-form input[type=email], .comment-form textarea{width:100%;padding:11px;border:1px solid var(--line);border-radius:6px;background:var(--paper-dim);font-family:var(--sans);margin-bottom:10px;}
.comment-form textarea{min-height:100px;}
.comment-form .form-submit input{background:var(--maroon);color:#fff;border:0;border-radius:5px;padding:12px 22px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;font-size:13px;cursor:pointer;transition:background .15s;}
.comment-form .form-submit input:hover{background:var(--maroon-dark);}

/* Footer */
.site-footer{background:linear-gradient(160deg,var(--maroon-dark),#3a0415);color:#e8d9c8;padding:44px 24px 22px;margin-top:44px;position:relative;}
.site-footer::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--gold),var(--teal),var(--indigo),var(--terracotta),var(--gold));}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:28px;max-width:1200px;margin:0 auto;}
@media (max-width:700px){.footer-grid{grid-template-columns:1fr;}}
.site-footer h4{font-family:var(--serif);color:var(--gold-light);margin:0 0 12px;font-size:16px;}
.site-footer ul{list-style:none;margin:0;padding:0;}
.site-footer li{margin-bottom:7px;font-size:13.5px;}
.site-footer a{color:#e8d9c8;transition:color .15s;}
.site-footer a:hover{color:var(--gold-light);}
.footer-bottom{text-align:center;font-size:12px;color:#c9b8a8;margin-top:30px;border-top:1px solid #6b1f38;padding-top:16px;}

.empty-note{font-size:13.5px;color:var(--grey);font-style:italic;}


/* ===== Sentinel NE Desk: compiled/multi-source attribution box ===== */
.compiled-from {
  background: linear-gradient(135deg, #f4f1ea, #eef2f2);
  border-left: 4px solid #0e7c86;
  border-radius: 4px;
  padding: 16px 20px;
  margin: 0 0 28px 0;
  font-family: 'Inter', sans-serif;
}
.compiled-from .cf-label {
  display: block;
  font-weight: 700;
  font-size: 12px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #0e7c86;
  margin-bottom: 6px;
}
.compiled-from .cf-outlets {
  font-size: 15px;
  line-height: 1.5;
  color: #333;
}
.compiled-from .cf-outlets a {
  color: #7a1230;
  font-weight: 600;
  text-decoration: none;
  border-bottom: 1px solid rgba(122,18,48,0.35);
}
.compiled-from .cf-outlets a:hover {
  border-bottom-color: #7a1230;
}
.compiled-from .cf-note {
  display: block;
  margin-top: 8px;
  font-size: 13px;
  color: #666;
  font-style: italic;
}
