.language-writing-hero { display:flex; align-items:center; gap:15px; border:1px solid var(--language-line); background:var(--language-soft); border-radius:12px; padding:13px 16px; margin:20px 0 10px; max-width:550px; text-decoration:none; line-height:1.45; }
.language-writing-hero>span:first-child { font-size:28px; min-width:45px; text-align:center; }
.language-writing-hero>span:last-child { flex:1; }
.language-writing-hero strong { display:block; font-size:14px; }
.language-writing-hero small { display:block; color:var(--language-muted); font-size:12px; margin-top:3px; }
.language-writing { margin:8px 0 34px; border:1px solid var(--language-line); border-radius:16px; background:white; scroll-margin-top:20px; }
.language-writing summary { cursor:pointer; list-style:none; }
.language-writing summary::-webkit-details-marker { display:none; }
.language-writing-entry { display:flex; align-items:center; gap:20px; padding:22px; }
.language-writing-preview { color:var(--language-green); font-size:27px; line-height:1.6; white-space:nowrap; }
.language-writing-entry strong { display:block; font-size:18px; }
.language-writing-entry small,.language-writing-group summary small { display:block; color:var(--language-muted); font-size:12px; margin-top:4px; }
.language-writing-expand { margin-left:auto; font-size:28px; color:var(--language-green); }
.language-writing[open]>.language-writing-entry { border-bottom:1px solid var(--language-line); }
.language-writing[open] .language-writing-expand { transform:rotate(45deg); }
.language-writing-body { padding:24px; }
.language-writing-body>p { max-width:800px; font-size:14px; }
.language-writing-guidance { color:var(--language-muted); border-left:3px solid var(--language-line); padding-left:16px; }
.language-writing-groups { display:grid; gap:12px; margin:24px 0; }
.language-writing-group { border:1px solid var(--language-line); border-radius:12px; overflow:hidden; }
.language-writing-group>summary { display:flex; align-items:center; gap:14px; padding:16px; background:var(--language-soft); }
.language-writing-group>summary>span:last-child { margin-left:auto; }
.language-writing-number { display:grid; place-items:center; flex:0 0 32px; height:32px; border-radius:50%; border:1px solid var(--language-line); color:var(--language-green); font-size:13px; }
.language-writing-group summary strong { font-size:15px; }
.language-writing-lesson { padding:18px; }
.language-writing-lesson>p { font-size:14px; margin-top:0; }
.language-writing-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; padding:0; margin:20px 0; list-style:none; }
.language-writing-card { border:1px solid var(--language-line); border-radius:12px; padding:16px; background:white; min-width:0; }
.language-writing-glyphs { display:flex; justify-content:center; align-items:baseline; gap:15px; margin-bottom:12px; color:var(--language-green); font-size:46px; font-weight:500; line-height:1.5; letter-spacing:0; }
.language-writing-glyphs bdi:last-child:not(:first-child) { font-size:35px; }
.language-writing-card>strong { display:block; font-size:14px; line-height:1.6; overflow-wrap:anywhere; }
.language-writing-card>p { font-size:12px; color:var(--language-muted); line-height:1.7; margin:8px 0 0; }
.language-writing [lang="ar"],.language-writing-dialog [lang="ar"] { font-family:"Geeza Pro",Tahoma,serif; letter-spacing:0; }
.language-writing-example { border-left:3px solid var(--language-green); background:var(--language-soft); border-radius:0 10px 10px 0; padding:12px 18px; margin:20px 0; }
.language-writing-example>p[lang] { font-size:28px; line-height:1.8; margin:4px 0; }
.language-writing-example>p:last-child { font-size:13px; }
.language-writing-dialog .language-session__body { padding-top:28px; }
.language-writing-dialog .language-writing-card { max-width:520px; margin:20px auto; text-align:center; }
.language-writing-dialog .language-writing-glyphs { font-size:76px; }
.language-writing-dialog .language-writing-card>p { font-size:15px; }
.language-writing-question { text-align:center; padding:15px 0; }
.language-writing-prompt { margin:14px 0; font-size:24px; line-height:1.5; color:var(--language-green); }
.language-writing-prompt[lang] { font-size:68px; }
.language-writing-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.language-writing-options .language-choice { text-align:center; overflow-wrap:anywhere; }
.language-writing-options .language-choice[lang] { font-size:35px; }
.language-writing-result { font-size:16px; line-height:1.8; }
.language-writing-result li { margin:8px 0; }
.language-writing-dialog .language-session__footer { flex-wrap:wrap; }
@media(max-width:1100px) { .language-writing-cards { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) {
  .language-writing { scroll-margin-top:90px; }
  .language-writing-entry { gap:12px; padding:16px; flex-wrap:wrap; }
  .language-writing-preview { flex-basis:calc(100% - 40px); font-size:25px; }
  .language-writing-entry>span:nth-child(2) { order:3; flex-basis:100%; }
  .language-writing-body { padding:16px; }
  .language-writing-lesson { padding:12px; }
  .language-writing-cards { grid-template-columns:1fr; }
  .language-writing-card { padding:15px; }
  .language-writing-hero { padding:12px; }
  .language-writing-dialog .language-session__body { padding:24px 2px; }
  .language-writing-options { grid-template-columns:1fr; }
  .language-writing-dialog .language-session__footer { padding:15px 0; gap:10px; }
}
