.wr-wrap { width: min(820px, 100% - 32px); margin: 0 auto; padding-bottom: 60px; }
.wr-head { padding: 24px 0 14px; border-bottom: 1px solid var(--ws-line); display: flex; flex-wrap: wrap; gap: 12px; align-items: end; justify-content: space-between; }
.wr-head h1 { font-size: 30px; } .wr-head .sub { color: var(--ws-muted); }
.wr-toc { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0; position: sticky; top: 0; background: var(--ws-bg); padding: 10px 0; z-index: 5; border-bottom: 1px solid var(--ws-line); }
.wr-room { padding: 28px 0; border-bottom: 1px solid var(--ws-line); } .wr-room h2 { font-size: 26px; margin-bottom: 4px; }
.wr-plaque { font-style: italic; color: var(--ws-muted); border-left: 3px solid var(--ws-gold); padding: 6px 12px; margin: 12px 0; }
.wr-challenge { margin-top: 16px; } .wr-challenge .box { margin-top: 10px; }
.wr-subjects { display: grid; gap: 8px; margin-top: 12px; }
.wr-section { padding: 24px 0; border-bottom: 1px solid var(--ws-line); } .wr-section h2 { font-size: 22px; margin-bottom: 10px; }
