/* Arabicy Culture Course — lesson styles */
.acc-lesson{--acc-blue:#1848b8;--acc-navy:#122860;--acc-gold:#c9a063;--acc-gold-l:#f3eadb;--acc-cream:#faf6ee;--acc-ink:#22222a;--acc-grey:#686874;font-size:17px;line-height:1.65;color:var(--acc-ink)}
.acc-lesson h3{color:var(--acc-navy);margin:1.6em 0 .5em;font-size:1.3em}
.acc-lesson h4{color:var(--acc-navy);margin:0 0 .6em;font-size:1.05em}
.acc-lesson ul{padding-left:1.3em}
.acc-lesson li{margin:.3em 0}
.acc-video-wrap{margin:0 0 1.5em}
.acc-video{position:relative;width:100%;aspect-ratio:16/9;background:var(--acc-navy);border-radius:16px;overflow:hidden;box-shadow:0 10px 30px rgba(18,40,96,.18)}
.acc-video iframe,.acc-video video{position:absolute;inset:0;width:100%;height:100%;border:0}
.acc-video-placeholder{display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;background:linear-gradient(135deg,#122860,#1848b8)}
.acc-video-placeholder .acc-play{display:inline-block;width:72px;height:72px;line-height:72px;border-radius:50%;background:rgba(255,255,255,.15);font-size:28px;margin-bottom:10px}
.acc-video-placeholder small{opacity:.7}
.acc-watch{margin:.8em 0 0;color:var(--acc-grey);font-size:.95em}
.acc-reading{margin-top:.5em}
.acc-keywords{background:var(--acc-cream);border:1px solid #eadfca;border-radius:14px;padding:18px 20px;margin:1.8em 0}
.acc-keywords table{width:100%;border-collapse:collapse;margin:0}
.acc-keywords td{padding:6px 10px;border-top:1px solid #eadfca;vertical-align:middle;background:transparent}
.acc-keywords tr:first-child td{border-top:0}
.acc-keywords .acc-ar{font-size:1.45em;color:var(--acc-blue);font-family:"Amiri","Scheherazade New","Noto Naskh Arabic",serif;width:32%;text-align:right}
.acc-keywords .acc-tr{color:var(--acc-grey);font-style:italic;width:30%}
.acc-tip{border-left:5px solid var(--acc-gold);background:var(--acc-gold-l);border-radius:0 14px 14px 0;padding:14px 18px;margin:1.6em 0}
/* exercise */
.acc-exercise{background:#fff;border:2px solid var(--acc-gold-l);border-radius:18px;padding:22px 24px;margin:2em 0 1em}
.acc-ex-title{margin:0 0 .3em!important;font-size:1.25em!important;color:var(--acc-navy)}
.acc-ex-instr{color:var(--acc-grey);margin:0 0 1em}
.acc-ex-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px}
.acc-card,.acc-chip,.acc-bucket{border:2px solid #dfe3ee;border-radius:12px;padding:10px 14px;background:#fff;cursor:pointer;transition:.15s;font-weight:500;user-select:none}
.acc-card:hover,.acc-chip:hover{border-color:var(--acc-blue)}
.acc-card.sel,.acc-chip.sel{border-color:var(--acc-blue);background:#eaf0ff;box-shadow:0 0 0 3px rgba(24,72,184,.15)}
.acc-card.done{opacity:.55;cursor:default;border-style:dashed}
.acc-card.ok,.acc-chip.ok{border-color:#2e9e5b;background:#e9f8ee}
.acc-card.bad,.acc-chip.bad{border-color:#d84a4a;background:#fdeaea}
.acc-card.done.ok,.acc-card.done.bad{opacity:1;border-style:solid}
.acc-card.ar{font-size:1.35em;font-family:"Amiri","Scheherazade New","Noto Naskh Arabic",serif;direction:rtl;text-align:right}
.acc-pool{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px;min-height:46px}
.acc-buckets{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.acc-bucket{min-height:110px;background:var(--acc-cream);border-style:dashed;cursor:pointer}
.acc-bucket.target{border-color:var(--acc-blue);background:#eaf0ff}
.acc-bucket h5{margin:0 0 8px;color:var(--acc-navy);font-size:1em}
.acc-bucket .acc-chip{display:inline-block;margin:4px 4px 0 0;font-size:.95em;padding:6px 10px}
.acc-gap{margin:10px 0;padding:10px 12px;border-radius:12px;background:var(--acc-cream)}
.acc-gap select{margin:0 4px;padding:4px 8px;border-radius:8px;border:2px solid #dfe3ee;font:inherit}
.acc-gap.ok{outline:2px solid #2e9e5b}
.acc-gap.bad{outline:2px solid #d84a4a}
.acc-actions{margin-top:16px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.acc-btn{background:var(--acc-blue);color:#fff!important;border:0;border-radius:999px;padding:10px 22px;font-weight:600;cursor:pointer;font:inherit}
.acc-btn.secondary{background:#fff;color:var(--acc-blue)!important;border:2px solid var(--acc-blue)}
.acc-result{font-weight:600;color:var(--acc-navy)}
.acc-result.perfect{color:#2e9e5b}
@media(max-width:640px){.acc-ex-cols{grid-template-columns:1fr}.acc-lesson{font-size:16px}}
