
/* Shared Novel Thunder Promotions styles */
.ntpromo-wrap .ntpromo-lead{font-size:15px;color:#5f5b54;max-width:900px}
.ntpromo-panel{padding:22px 0}
.ntpromo-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:8px 0 28px}
.ntpromo-status-grid>div{padding:18px;border:1px solid #d8d3ca;border-radius:12px;background:#fff}
.ntpromo-status-grid span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#7b746b}
.ntpromo-status-grid strong{display:block;margin-top:6px;font-size:18px}
.ntpromo-campaign-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:30px}
.ntpromo-campaign-cards article{padding:16px;border-radius:12px;background:#fff;border:1px solid #ddd7ce}
.ntpromo-campaign-cards span{font-size:11px;color:#a87312;font-weight:800;text-transform:uppercase}
.ntpromo-campaign-cards h3{font-size:15px;margin:7px 0}
.ntpromo-campaign-cards p{margin:0;color:#676159;font-size:12px}
.ntpromo-explain{display:grid;gap:10px;max-width:980px}
.ntpromo-table-wrap{overflow:auto}
.ntpromo-pill{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800}
.ntpromo-pill.good{background:#e8f6ea;color:#176b29}.ntpromo-pill.warn{background:#fff4d9;color:#8b6410}
.ntpromo-exclusive-form{padding:20px;border:1px solid #d8d3ca;border-radius:14px;background:#fff;margin:15px 0 30px}
.ntpromo-form-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.ntpromo-form-grid label{display:grid;gap:6px;font-weight:700}
.ntpromo-form-grid input,.ntpromo-form-grid select{width:100%;box-sizing:border-box}
.ntpromo-form-grid small{font-weight:400;color:#777}

/* Front-end campaign badge */
.ntpromo-product-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;margin:12px 0;border-radius:10px;background:#17140f;color:#fff3d5;border:1px solid #73561d}
.ntpromo-product-banner strong{color:#f2c862}.ntpromo-product-banner span{font-size:12px;font-weight:800}

/* Front-end author promotion center */
.ntpromo-author-center{width:min(calc(100% - 48px),1320px);margin:0 auto;padding:34px 0 70px}
.ntpromo-author-hero{padding:44px;border-radius:24px;background:linear-gradient(125deg,#17140f,#5b3c10);color:#fff}
.ntpromo-eyebrow{font-size:11px;font-weight:900;letter-spacing:.14em;color:#efbd4a}
.ntpromo-author-hero h1{font-family:Georgia,serif;font-size:clamp(42px,6vw,70px);margin:8px 0 12px;color:#fff}
.ntpromo-author-hero p{max-width:760px;color:#e9dfcf;font-size:17px;line-height:1.6}
.ntpromo-author-section{padding-top:50px}
.ntpromo-author-section h2{font-family:Georgia,serif;font-size:38px;margin:0 0 12px;color:var(--nt-text,#201c17)}
.ntpromo-author-section>p{max-width:900px;color:var(--nt-muted,#6d665d);line-height:1.6}
.ntpromo-author-books{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px}
.ntpromo-author-books article{padding:20px;border-radius:16px;background:var(--nt-surface,#fff);border:1px solid var(--nt-line,#e4ddd1)}
.ntpromo-author-books h3{margin:0 0 12px;color:var(--nt-text,#201c17)}
.ntpromo-author-flags{display:flex;flex-wrap:wrap;gap:7px}
.ntpromo-author-flags span{padding:6px 8px;border-radius:999px;background:#efe8dc;color:#5f5546;font-size:11px;font-weight:800}
.ntpromo-author-flags span.exclusive{background:#17140f;color:#efc866}
.ntpromo-author-gate{max-width:850px;margin:50px auto;padding:30px;border-radius:18px;border:1px solid #ddd4c3}
html.nt-theme-dark .ntpromo-author-section h2,html.nt-theme-dark .ntpromo-author-books h3{color:#f7f1e7}
html.nt-theme-dark .ntpromo-author-section>p{color:#c9c0b3}
html.nt-theme-dark .ntpromo-author-books article{background:#1d1f26;border-color:#343741}
html.nt-theme-dark .ntpromo-author-flags span{background:#30333a;color:#ddd5c8}
@media(max-width:1050px){.ntpromo-status-grid{grid-template-columns:repeat(2,1fr)}.ntpromo-campaign-cards{grid-template-columns:repeat(2,1fr)}.ntpromo-form-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.ntpromo-author-center{width:min(calc(100% - 24px),1320px)}.ntpromo-author-hero{padding:28px 20px}.ntpromo-author-books,.ntpromo-status-grid,.ntpromo-campaign-cards,.ntpromo-form-grid{grid-template-columns:1fr}.ntpromo-product-banner{align-items:flex-start;flex-direction:column}}
