.cycle4-page { max-width:1150px; margin:0 auto; }
.cycle4-heading { margin:16px 0 30px; }
.cycle4-heading h1 { font-size:clamp(29px,4vw,42px); line-height:1.2; margin:16px 0; }
.cycle4-heading>p:last-child { max-width:760px; line-height:1.8; color:var(--muted); }
.cycle4-subject-grid,.cycle4-reading-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin:22px 0; }
.cycle4-subject { display:flex; align-items:center; gap:18px; min-width:0; padding:24px; background:var(--ksk-fff); border:1px solid var(--ksk-dce6da); border-bottom:4px solid var(--ksk-cfddc7); border-radius:22px; }
.cycle4-subject>span { display:grid; place-items:center; flex:0 0 48px; min-height:48px; font-weight:900; color:var(--ktk-427350); background:var(--ksk-edf3e2); border-radius:16px; }
.cycle4-subject>div { flex:1; min-width:0; }
.cycle4-subject h2 { font-size:20px; margin:0 0 8px; }
.cycle4-subject p { font-size:14px; line-height:1.6; color:var(--muted); }
.cycle4-more { border:1px solid var(--ks-dce6da); border-radius:18px; background:var(--ks-fff); padding:18px 22px; margin:22px 0; }
.cycle4-more>summary { cursor:pointer; font-weight:700; line-height:1.6; min-height:36px; }
.cycle4-more[open]>summary { margin-bottom:20px; }
.cycle4-more p { line-height:1.8; margin:16px 0; }
.cycle4-shortcuts { display:flex; gap:16px; flex-wrap:wrap; margin:28px 0; }
.cycle4-shortcuts a { display:flex; align-items:center; gap:10px; padding:14px 18px; min-height:48px; background:var(--ks-edf3e2); border-radius:14px; font-weight:700; }
.cycle4-reading-grid .fw-card { min-width:0; }
.cycle4-reading-grid a { overflow-wrap:anywhere; }
.curriculum-course .lesson figure svg { display:block; max-width:100%; height:auto; }
.curriculum-course .lesson figure { max-width:100%; margin:20px 0; }
.exercise-shared-source { margin:20px 0 24px; padding:22px 24px; border-left:4px solid var(--ks-6a9079); border-radius:0 16px 16px 0; background:var(--ks-f4f7f0); }
.exercise-shared-source p:last-child { margin:8px 0 0; white-space:pre-line; line-height:1.7; }
.exercise-written-task { margin:30px 0 22px; padding:24px; border:1px solid var(--ks-cbded0); border-radius:20px; background:var(--ks-f2f7ee); }
.exercise-written-task .revision-eyebrow { color:var(--kt-436d52); }
.exercise-written-task h2 { margin:6px 0 12px; font-size:clamp(20px,2.5vw,26px); }
.exercise-written-task h3 { margin:0 0 8px; font-size:16px; }
.exercise-written-task p { line-height:1.65; }
.exercise-written-prompt { font-weight:700; color:var(--kt-263d31); }
.exercise-written-task label { display:block; margin:16px 0 8px; font-weight:700; }
.exercise-written-task textarea { display:block; box-sizing:border-box; width:100%; min-height:150px; padding:14px 16px; border:1.5px solid var(--ks-97b7a1); border-radius:14px; background:var(--ks-fff); color:var(--kt-263d31); font:inherit; line-height:1.6; resize:vertical; }
.exercise-written-task textarea:focus-visible { outline:3px solid var(--ks-6da785); outline-offset:2px; }
.exercise-written-comparison { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:16px 0; }
.exercise-written-comparison>div { min-width:0; padding:16px; border-radius:14px; background:var(--ks-fff); overflow-wrap:anywhere; }
.exercise-written-comparison p { white-space:pre-wrap; margin:0; }
.exercise-written-task>a { display:inline-block; margin-top:4px; font-weight:700; }
@media(max-width:700px) { .cycle4-subject-grid,.cycle4-reading-grid { grid-template-columns:1fr; }.cycle4-subject { padding:20px 16px; gap:12px; }.cycle4-subject h2 { font-size:19px; }.cycle4-more { padding:16px; }.cycle4-shortcuts { flex-direction:column; }.cycle4-shortcuts a { width:100%; }.cycle4-page .breadcrumbs { line-height:1.8; } }
@media(max-width:700px) { .exercise-written-task { padding:18px; }.exercise-written-comparison { grid-template-columns:1fr; } }
@media(max-width:700px) { .exercise-shared-source { padding:18px; } }
@media print { .cycle4-more { break-inside:avoid; }.cycle4-shortcuts { display:none; } }
