:root{--blue:#173b8f;--purple:#6d28d9;--gold:#f59e0b;--ink:#172033;--muted:#64748b;--bg:#f6f8fc}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.65 Inter,system-ui,-apple-system,Segoe UI,Arial}.wrap{width:min(1180px,92%);margin:auto}a{color:inherit;text-decoration:none}.top{background:#fff;position:sticky;top:0;z-index:20;box-shadow:0 2px 20px #11182710}.brand{height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand>a{display:flex;align-items:center;gap:12px}.brand b{font-size:19px;display:block}.brand small{color:var(--muted)}.logo{width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,var(--blue),var(--purple));color:#fff;display:grid;place-items:center;font-weight:800;font-size:22px}.brand form{display:flex;max-width:360px;width:100%}.brand input{border:1px solid #e5e7eb;border-radius:10px 0 0 10px;padding:10px;width:100%}.brand button{border:0;background:#eef2ff;padding:0 14px;border-radius:0 10px 10px 0}nav{border-top:1px solid #f0f2f5}.navinner{display:flex;justify-content:space-between;align-items:center}.links{display:flex;overflow:auto}.links a{padding:14px 13px;white-space:nowrap;font-weight:650}.links a:hover{color:var(--blue)}.login{font-weight:700;color:var(--blue)}.hero{margin:28px 0;min-height:330px;border-radius:26px;padding:52px;display:flex;align-items:center;justify-content:space-between;color:#fff;background:linear-gradient(125deg,#122b69,#5b21b6 70%,#8b5cf6);overflow:hidden}.hero h1{font-size:clamp(35px,5vw,60px);line-height:1.05;margin:12px 0}.eyebrow{font-size:12px;letter-spacing:.12em;opacity:.8}.hero p{font-size:18px;max-width:600px}.hero-art{font-size:180px;opacity:.25}.btn{display:inline-block;background:var(--gold);color:#111827;border:0;border-radius:10px;padding:10px 16px;font-weight:800;cursor:pointer}.lead{background:#fff;border-radius:20px;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;box-shadow:0 5px 25px #0f172a0b}.cover{min-height:340px;background-size:cover;background-position:center}.lead>div+div{padding:38px}.lead h2{font-size:32px;line-height:1.15}.sectionhead{display:flex;justify-content:space-between;align-items:center;margin:38px 0 15px}.sectionhead a{color:var(--blue);font-weight:700}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.card{background:#fff;border-radius:16px;overflow:hidden;border:1px solid #edf0f4}.thumb{aspect-ratio:16/10;background-size:cover;background-position:center}.pad{padding:15px}.pad h3{line-height:1.25;margin:8px 0}.pad small,.meta{color:var(--muted)}.pill{display:inline-block;background:#eef2ff;color:var(--blue);padding:3px 8px;border-radius:999px;font-size:12px;font-weight:750}.chips{display:flex;gap:10px;flex-wrap:wrap}.chips a{background:#fff;border:1px solid #e5e7eb;padding:11px 15px;border-radius:12px}.chips b{color:var(--blue)}.pagehead{padding:40px 0 20px}.pagehead h1{font-size:38px;margin:0}.article{max-width:900px;margin:45px auto}.article-head h1{font-size:46px;line-height:1.12}.article-cover{width:100%;max-height:560px;object-fit:cover;border-radius:18px}.content{font-size:18px;margin-top:30px}.content img{max-width:100%;height:auto}.video iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:14px}.comments{margin-top:50px}.comment{background:#fff;padding:15px;border-radius:12px;margin:10px 0}.comments form{display:grid;gap:10px;margin-top:20px}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.gallery figure{margin:0;background:#fff;border-radius:14px;overflow:hidden}.gallery img{width:100%;aspect-ratio:1.3;object-fit:cover}.gallery figcaption{padding:10px;font-weight:700}.timeline>div{background:#fff;padding:20px;border-left:4px solid var(--gold);margin:12px 0;border-radius:12px}.formcard{background:#fff;padding:25px;border-radius:18px;display:grid;gap:12px;max-width:850px}.formcard input,.formcard select,.formcard textarea,.auth input{width:100%;padding:12px;border:1px solid #dbe1ea;border-radius:10px;font:inherit}.formcard textarea{min-height:280px}.success,.alert{padding:12px;background:#dcfce7;border-radius:10px}.auth{max-width:450px;margin:60px auto;background:#fff;padding:30px;border-radius:18px}.auth form{display:grid;gap:12px}footer{margin-top:70px;background:#111a35;color:#cbd5e1;padding:40px 0 0}.foot{display:flex;justify-content:space-between;gap:30px}.social{display:flex;gap:14px}.copy{text-align:center;padding:15px;margin-top:25px;border-top:1px solid #ffffff15}@media(max-width:950px){.grid{grid-template-columns:repeat(2,1fr)}.gallery{grid-template-columns:repeat(2,1fr)}.lead{grid-template-columns:1fr}.hero-art{display:none}}@media(max-width:650px){.brand{height:auto;padding:12px 0;flex-wrap:wrap}.brand form{order:3;max-width:none}.links a{padding:11px 9px;font-size:13px}.hero{padding:30px;min-height:300px}.grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr}.article-head h1{font-size:34px}.foot{display:block}}

.pagination{display:flex;gap:7px;justify-content:center;margin:28px 0}.pagination a{padding:8px 12px;border:1px solid #dbe3ef;border-radius:9px;text-decoration:none}.pagination a.active{background:#1e40af;color:#fff}.related{margin-top:40px}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.card{background:#fff;border-radius:16px;padding:10px}.formcard{display:grid;gap:12px}
.hero-sunday{min-height:380px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn.ghost{background:transparent;border:1px solid currentColor;color:inherit}.topic-section{margin:54px 0}.topic-row{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.mini-card{background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:18px;min-height:160px}.mini-card h3{font-size:18px;line-height:1.25}.collab{margin:60px 0;padding:34px;border-radius:26px;background:linear-gradient(135deg,#111827,#334155);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px}.epaper-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.epaper-card{background:#fff;border:1px solid #e5e7eb;border-radius:20px;padding:24px}.pdf-icon{font-weight:900;font-size:34px;letter-spacing:2px}@media(max-width:900px){.topic-row{grid-template-columns:repeat(2,1fr)}.epaper-grid{grid-template-columns:repeat(2,1fr)}.collab{flex-direction:column;align-items:flex-start}}@media(max-width:560px){.topic-row,.epaper-grid{grid-template-columns:1fr}}

/* Theme system */
.theme-school{--blue:#0f766e;--purple:#14532d;--gold:#f59e0b;--bg:#f7faf9;--ink:#17302a}.theme-school .hero{background:linear-gradient(125deg,#064e3b,#0f766e 65%,#14b8a6)}.theme-school .logo{background:linear-gradient(135deg,#0f766e,#14532d)}
.theme-glass{--blue:#4f46e5;--purple:#9333ea;--gold:#f59e0b;--bg:#eef2ff;--ink:#1e1b4b}body.theme-glass{background:var(--bg)}.theme-glass .top,.theme-glass .card,.theme-glass .lead,.theme-glass .mini-card,.theme-glass .formcard,.theme-glass .auth,.theme-glass .comments .comment{background:#ffffff80;backdrop-filter:blur(16px);border-color:#ffffff80}.theme-glass .hero{background:linear-gradient(125deg,#4f46e5aa,#9333eaaa);box-shadow:0 20px 50px #312e8130}
.theme-midnight{--blue:#38bdf8;--purple:#a78bfa;--gold:#fbbf24;--bg:#020617;--ink:#e2e8f0;--muted:#94a3b8}.theme-midnight .top,.theme-midnight .card,.theme-midnight .lead,.theme-midnight .mini-card,.theme-midnight .formcard,.theme-midnight .auth{background:#0f172a;border-color:#1e293b;color:#e2e8f0}.theme-midnight nav{border-color:#1e293b}.theme-midnight .brand input,.theme-midnight .formcard input,.theme-midnight .formcard textarea,.theme-midnight .formcard select{background:#020617;color:#e2e8f0;border-color:#334155}.theme-midnight footer{background:#000}.theme-midnight .hero{background:linear-gradient(125deg,#020617,#172554,#312e81)}
.theme-minimal{--blue:#111827;--purple:#374151;--gold:#111827;--bg:#fff;--ink:#111827}.theme-minimal .top{box-shadow:none;border-bottom:1px solid #e5e7eb}.theme-minimal .hero{background:#111827;border-radius:8px}.theme-minimal .card,.theme-minimal .lead,.theme-minimal .mini-card,.theme-minimal .formcard,.theme-minimal .auth{border-radius:8px;box-shadow:none}.theme-minimal .btn{border-radius:6px;background:#111827;color:#fff}.theme-minimal .logo{border-radius:6px;background:#111827}.brand-logo{width:48px;height:48px;object-fit:contain;border-radius:10px}.theme-minimal .brand-logo{border-radius:4px}

/* V5.13 Footer - school editorial layout inspired by modern youth magazine footers */
.site-footer{margin-top:80px;background:#fff;color:#111827;border-top:3px solid var(--blue);padding:42px 0 0}
.footer-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr 1.25fr;gap:46px;align-items:start}
.footer-brandmark{display:inline-flex;align-items:center;justify-content:center;margin-bottom:10px}
.footer-brandmark img{width:138px;max-height:72px;object-fit:contain}
.footer-logo{width:76px;height:54px;border-radius:28px;background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:900;font-size:30px;transform:skew(-8deg)}
.site-footer h2{margin:0 0 18px;font-size:23px;line-height:1.15;color:#080808}
.footer-brand h2{margin-top:4px}
.footer-brand p{max-width:360px;line-height:1.65;margin:0;color:#374151}
.footer-column ul{list-style:none;padding:0;margin:0;display:grid;gap:13px}
.footer-column li{margin:0}
.footer-column a{color:#111827;text-decoration:none;font-size:17px;line-height:1.35}
.footer-column a:hover{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.footer-contact p{margin:0 0 12px;font-size:17px;line-height:1.55;color:#374151}
.footer-contact a{font-size:17px}
.footer-social{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.social-bubble{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#111827;color:#fff!important;font-size:11px!important;font-weight:800;text-decoration:none!important;transition:transform .2s ease}
.social-bubble:hover{transform:translateY(-2px);color:#fff!important}
.social-instagram{background:#111827}.social-youtube{background:#dc2626}.social-tiktok{background:#111827}.social-facebook{background:#2563eb}.social-x{background:#000}
.footer-bottom{margin-top:38px;padding:18px 0 22px;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;gap:20px;color:#6b7280;font-size:13px}
.floating-wa{position:fixed;right:28px;bottom:24px;width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:#20c76a;color:#fff!important;font-weight:900;text-decoration:none!important;box-shadow:0 10px 28px #11182725;z-index:50;border:4px solid #fff}
.floating-wa:hover{transform:scale(1.04)}
@media(max-width:900px){.footer-grid{grid-template-columns:repeat(2,1fr);gap:34px}.footer-brand{grid-column:1/-1}.footer-brand p{max-width:700px}}
@media(max-width:560px){.site-footer{padding-top:34px}.footer-grid{grid-template-columns:1fr;gap:28px}.footer-brand{grid-column:auto}.footer-bottom{display:block}.footer-bottom div+div{margin-top:8px}.floating-wa{right:18px;bottom:18px;width:54px;height:54px}}

/* V5.13.1 - Compact horizontal footer layout
   Keeps all existing footer data/content; only changes presentation. */
.site-footer{margin-top:58px!important;background:#fff!important;color:#111827!important;border-top:2px solid var(--blue)!important;padding:28px 0 0!important}
.site-footer .footer-grid{width:min(1180px,92%)!important;margin:0 auto!important;display:grid!important;grid-template-columns:minmax(240px,1.35fr) minmax(150px,1fr) minmax(170px,1fr) minmax(235px,1.3fr)!important;gap:30px!important;align-items:start!important}
.site-footer .footer-brandmark{margin:0 0 8px!important}
.site-footer .footer-brandmark img{width:126px!important;max-height:58px!important}
.site-footer .footer-logo{width:68px!important;height:46px!important;font-size:26px!important}
.site-footer h2{font-size:21px!important;margin:0 0 12px!important;line-height:1.2!important}
.site-footer .footer-brand p{max-width:330px!important;margin:0!important;font-size:14px!important;line-height:1.5!important}
.site-footer .footer-column ul{gap:8px!important;margin:0!important}
.site-footer .footer-column a{font-size:15px!important;line-height:1.3!important}
.site-footer .footer-contact p{font-size:15px!important;line-height:1.45!important;margin:0 0 8px!important}
.site-footer .footer-contact a{font-size:15px!important}
.site-footer .footer-social{gap:8px!important;margin-top:16px!important}
.site-footer .social-bubble{width:32px!important;height:32px!important;font-size:10px!important}
.site-footer .footer-bottom{width:min(1180px,92%)!important;margin:24px auto 0!important;padding:13px 0 17px!important;display:flex!important;justify-content:space-between!important;align-items:center!important;gap:18px!important;border-top:1px solid #e5e7eb!important;font-size:12px!important;color:#6b7280!important}
.site-footer .footer-bottom div{line-height:1.4!important}
.site-footer .floating-wa{right:24px!important;bottom:20px!important;width:56px!important;height:56px!important}

/* Preserve the compact four-column pattern down to tablet widths. */
@media(max-width:980px){
  .site-footer .footer-grid{grid-template-columns:minmax(210px,1.25fr) minmax(140px,1fr) minmax(150px,1fr) minmax(210px,1.2fr)!important;gap:22px!important}
  .site-footer h2{font-size:19px!important}
}
@media(max-width:820px){
  .site-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:26px!important}
  .site-footer .footer-brand{grid-column:1/-1!important}
  .site-footer .footer-brand p{max-width:650px!important}
}
@media(max-width:560px){
  .site-footer{padding-top:24px!important}
  .site-footer .footer-grid{grid-template-columns:1fr!important;gap:22px!important}
  .site-footer .footer-brand{grid-column:auto!important}
  .site-footer .footer-bottom{display:block!important;margin-top:22px!important}
  .site-footer .footer-bottom div+div{margin-top:6px!important}
}

/* V5.15.4 article desktop reading layout */
/* V5.15.4 — Desktop article reading layout */
.article-page-wrap{width:min(1180px,92%);margin:0 auto;padding:34px 0 20px}
.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:34px;align-items:start}
.article-main{width:100%;max-width:none;margin:0;background:#fff;border:1px solid #e7ebf2;border-radius:22px;padding:34px 40px;box-shadow:0 12px 35px rgba(15,23,42,.06)}
.article-head{max-width:860px;margin:0 auto 28px}
.article-category{margin-bottom:10px}
.article-head h1{font-size:clamp(38px,4vw,58px);line-height:1.08;letter-spacing:-.025em;margin:12px 0 14px;color:#101a33}
.article-meta{font-size:14px}
.article-cover-wrap{margin:0 0 28px;border-radius:18px;overflow:hidden;background:#eef2f7}
.article-cover{display:block;width:100%;max-height:620px;object-fit:cover}
.article-content{max-width:860px;margin:0 auto;font-size:18px;line-height:1.85;color:#253047}
.article-content h2{font-size:30px;line-height:1.25;margin:38px 0 14px;color:#111827}
.article-content h3{font-size:24px;line-height:1.3;margin:30px 0 12px;color:#111827}
.article-content p{margin:0 0 18px}
.article-content blockquote{margin:28px 0;padding:18px 22px;border-left:4px solid var(--blue);background:#f5f7fb;border-radius:0 12px 12px 0}
.article-content table{width:100%;border-collapse:collapse;margin:24px 0;background:#fff}
.article-content th,.article-content td{border:1px solid #e2e8f0;padding:10px;text-align:left}
.article-content pre{overflow:auto;padding:16px;background:#0f172a;color:#e2e8f0;border-radius:12px}
.article-content a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.article-favorite-form{display:flex;align-items:center;gap:12px;margin-top:18px;flex-wrap:wrap}
.article-favorite-btn{border:1px solid #d8def0;background:#f8faff;color:var(--blue);border-radius:999px;padding:9px 15px;font:inherit;font-weight:750;cursor:pointer}
.article-favorite-btn:hover{background:#eef2ff}
.article-favorite-btn span{font-size:18px;margin-right:4px}
.article-sidebar{position:sticky;top:105px;display:grid;gap:18px}
.article-side-card{background:#fff;border:1px solid #e7ebf2;border-radius:18px;padding:22px;box-shadow:0 8px 25px rgba(15,23,42,.05)}
.article-side-label{font-size:11px;letter-spacing:.12em;font-weight:800;color:var(--blue);margin-bottom:5px}
.article-side-card h2{font-size:20px;margin:0 0 15px;color:#111827}
.article-facts{margin:0;display:grid;gap:12px}
.article-facts>div{padding-bottom:12px;border-bottom:1px solid #edf0f5}
.article-facts>div:last-child{border-bottom:0;padding-bottom:0}
.article-facts dt{font-size:12px;color:#64748b}
.article-facts dd{margin:2px 0 0;font-weight:700;color:#172033}
.related-list{display:grid;gap:13px}
.related-item{display:grid;grid-template-columns:68px minmax(0,1fr);gap:11px;align-items:center;padding:7px;border-radius:12px}
.related-item:hover{background:#f6f8fc}
.related-item img,.related-placeholder{width:68px;height:54px;border-radius:10px;object-fit:cover;background:#eef2ff;display:grid;place-items:center;font-weight:800;color:var(--blue)}
.related-item b{display:block;font-size:13px;line-height:1.35;color:#172033}
.related-item small{display:block;margin-top:4px;color:#64748b;font-size:11px}
.article-section-title{display:flex;justify-content:space-between;align-items:center}
.article-section-title h2{font-size:26px;margin:0}
.article-comments{max-width:860px;margin:48px auto 0}
.comment{border:1px solid #e7ebf2;box-shadow:none}
.comment-author{display:flex;justify-content:space-between;gap:15px;align-items:center}
.comment-author small{color:#64748b}
.empty-comments{padding:16px;border:1px dashed #d7deea;border-radius:12px;color:#64748b;margin-top:14px}
.article-comment-form textarea{min-height:140px}
.article-login-comment{max-width:none;margin-top:16px}
.article-source{max-width:860px;margin:28px auto 0}
.article-pdf{max-width:860px;margin:24px auto}
.article-video{max-width:860px;margin:28px auto}
.article-video iframe{display:block}

@media(max-width:1050px){
  .article-layout{grid-template-columns:1fr}
  .article-sidebar{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}
  .article-main{padding:30px}
}
@media(max-width:650px){
  .article-page-wrap{width:min(94%,680px);padding-top:18px}
  .article-main{padding:22px 18px;border-radius:16px}
  .article-head h1{font-size:34px}
  .article-content{font-size:17px;line-height:1.75}
  .article-sidebar{grid-template-columns:1fr}
}


/* V5.15.5 CSS recovery: preserve the complete site theme/header/footer while keeping article desktop layout */
@media(min-width:1051px){.article-page-wrap{padding-top:36px}.article-layout{grid-template-columns:minmax(0,1fr) 300px;gap:32px}.article-main{min-width:0}.article-sidebar{min-width:0}}

/* Member/contributor account actions */
.auth-nav-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.logout-nav-form{margin:0}.logout-nav-btn{border:1px solid #d8deea;background:#fff;color:#b42318;border-radius:8px;padding:9px 13px;font:inherit;font-weight:700;cursor:pointer}.logout-nav-btn:hover{background:#fff5f4}@media(max-width:720px){.auth-nav-actions{gap:6px}.logout-nav-btn{padding:8px 10px;font-size:13px}}
