/* Additive weekly publication and front end, scoped to avoid existing Player changes. */
#ild-weekly-normal-wrap[hidden], #ild-weekly-form-wrap[hidden], .ild-wp-course-body[hidden] { display:none!important; }
.ild-wp-mode-bar { display:flex;flex-wrap:wrap;gap:9px;margin:16px 0 20px; }
#ild-weekly-form-wrap .ild-a4-form-card { margin:0 0 18px; }
#ild-weekly-status { padding:11px 13px;background:#f1f5f9;border-left:3px solid #2563eb;border-radius:4px; }
.ild-wp-muted {color:#64748b;font-size:13px;line-height:1.5;margin:5px 0 11px;}
.ild-wp-warning {color:#9a3412;}
.ild-wp-course { background:#fff;border:1px solid #d7e0eb;border-radius:12px;margin:12px 0;overflow:hidden; }
.ild-wp-course-title {display:flex;align-items:center;gap:10px;padding:15px;cursor:pointer;font-size:16px;background:#f8fafc;}
.ild-wp-course-title input {margin:0;}
.ild-wp-course-body {padding:12px 16px 17px;border-top:1px solid #e2e8f0;}
.ild-wp-pages {display:flex;flex-direction:column;gap:6px;margin-bottom:15px;max-width:370px;font-weight:600;}
.ild-wp-pages input {min-height:40px;width:100%;}
.ild-wp-outcome {padding:12px 0;border-top:1px solid #e6ebf2;}
.ild-wp-check {display:flex;align-items:flex-start;gap:9px;line-height:1.5;cursor:pointer;}
.ild-wp-check input {flex:0 0 auto;margin-top:4px;}
.ild-wp-components {padding:7px 0 0 27px;}
.ild-wp-component {padding:3px 0;font-size:13px;}
.ild-a4-weekly-detail {max-width:1160px;margin:25px auto 20px;padding:24px;border:1px solid #fed7aa;background:linear-gradient(135deg,#fffaf4,#fff);border-radius:18px;color:#263247;box-sizing:border-box;}
.ild-a4-weekly-detail>header span {display:inline-block;font-size:12px;font-weight:800;color:#c2410c;letter-spacing:.04em;}
.ild-a4-weekly-detail>header h2 {font-size:clamp(19px,2.5vw,27px);line-height:1.3;margin:9px 0;}
.ild-a4-weekly-detail>header p {font-size:14px;color:#64748b;margin:0 0 14px;}
.ild-a4-weekly-lesson {background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin:10px 0;overflow:hidden;}
.ild-a4-weekly-lesson>summary {display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between;cursor:pointer;padding:15px;color:#152b4b;list-style-position:inside;}
.ild-a4-weekly-lesson>summary span {color:#475569;font-size:13px;}
.ild-a4-weekly-lesson-body {padding:0 15px 12px;border-top:1px solid #eef2f7;}
.ild-a4-weekly-outcome {padding:12px 0;border-bottom:1px solid #edf2f7;}
.ild-a4-weekly-outcome:last-child {border-bottom:0;}
.ild-a4-weekly-outcome h3 {font-size:15px;font-weight:750;line-height:1.45;margin:0 0 6px;}
.ild-a4-weekly-outcome ul {margin:6px 0 0;padding-left:24px;}
.ild-a4-weekly-outcome li {font-size:14px;line-height:1.6;margin:3px 0;}
.ild-a4-weekly-muted {font-size:13px;color:#64748b;margin:5px 0;}
.ild-a4-weekly-detail>p:last-child {margin:15px 0 0;}
.ild-a4-weekly-detail a {color:#b45309;font-weight:700;text-decoration:underline;}
.ild-a4-weekly-archive-card {display:flex;justify-content:space-between;align-items:center;gap:16px;max-width:1160px;margin:16px auto 25px;padding:22px;border-radius:17px;background:linear-gradient(125deg,#fff7ed,#fff);border:1px solid #fdba74;box-shadow:0 5px 18px rgba(124,45,18,.06);color:#1e293b;box-sizing:border-box;}
.ild-a4-weekly-archive-card small {color:#c2410c;font-weight:800;letter-spacing:.04em;}
.ild-a4-weekly-archive-card h2 {font-size:clamp(20px,2.5vw,27px);line-height:1.3;margin:7px 0;}
.ild-a4-weekly-archive-card p {font-size:15px;margin:0 0 7px;}
.ild-a4-weekly-archive-card span {font-size:13px;color:#64748b;}
.ild-a4-weekly-archive-card>a {display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;background:#ea580c;color:#fff!important;border-radius:10px;padding:13px 18px;text-decoration:none!important;font-weight:800;}
.ild-a4-weekly-archive-card>a:hover {background:#c2410c;}
@media(max-width:690px){.ild-a4-weekly-detail{padding:15px;margin:18px 0}.ild-a4-weekly-archive-card{flex-direction:column;align-items:stretch;padding:17px}.ild-a4-weekly-archive-card>a{width:100%;box-sizing:border-box}.ild-a4-weekly-lesson>summary{align-items:flex-start;flex-direction:column;gap:5px}}
