/* Dabour Hub dh5 — lesson inside: framed figures with their explanation, and SmartArt blocks */
.dh5-content p{margin:0 0 10px}
.dh5-content .sa2-rep{font-weight:800}
.dh5-content .sa2-rb{color:var(--k,#0f766e)}
.dh5-content ul{margin:6px 0 0;padding:0;list-style:none}
.dh5-content li{position:relative;padding:5px 0 5px 24px;line-height:1.6}
.dh5-content li:before{content:"";position:absolute;left:5px;top:13px;width:9px;height:9px;border-radius:50%;background:var(--k,#0f766e)}

/* ---- figure + explanation (never a bare picture) ---- */
.dh5-fx{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:0;margin:20px 0;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 10px 28px rgba(13,36,54,.07)}
.dh5-fx.rev .dh5-fxf{order:2}
.dh5-fxf{margin:0;display:flex;flex-direction:column;background:#f6f9fb;border-right:1px solid var(--line)}
.dh5-fx.rev .dh5-fxf{border-right:0;border-left:1px solid var(--line)}
.dh5-fxf figcaption{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--k);color:#fff;font-weight:700;font-size:14.5px;line-height:1.3}
.dh5-fxf figcaption b{background:rgba(255,255,255,.22);border-radius:8px;padding:3px 9px;font-size:12.5px;white-space:nowrap}
.dh5-fxf .fr{display:grid;place-items:center;flex:1;padding:16px;min-height:240px}
.dh5-fxf img{display:block;width:100%;height:auto;max-height:380px;object-fit:contain;border-radius:12px;background:#fff;box-shadow:0 0 0 6px #fff,0 0 0 7px var(--line)}
.dh5-fxt{padding:22px 24px;display:flex;flex-direction:column;justify-content:center}
.dh5-fxt .tag{display:inline-flex;align-items:center;gap:6px;width:max-content;font-size:12px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;color:var(--k);background:color-mix(in srgb,var(--k) 12%,#fff);border-radius:999px;padding:5px 11px}
.dh5-fxt h4{font-size:20px;margin:10px 0 8px;color:var(--ink)}
.dh5-fxt .bd{color:var(--ink2);font-size:15px;line-height:1.65}
.dh5-fxt .bd li{background:#f8fbfc;border:1px solid var(--line);border-radius:12px;padding:9px 12px 9px 32px;margin-bottom:8px}
.dh5-fxt .bd li:before{left:13px;top:17px}
.dh5-fxt .bd b{color:var(--ink)}

.dh-sart{margin:18px 0 22px}
/* hexagon list */
.sa2-hx{display:flex;flex-direction:column;gap:14px}
.sa2-hx>.sa2-r{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:center;background:#fff;border:1px solid var(--line);border-left:6px solid var(--k);border-radius:16px;padding:14px 18px 14px 14px;box-shadow:0 6px 18px rgba(13,36,54,.05)}
.sa2-hx .sa2-g{display:grid;place-items:center;aspect-ratio:1.15;background:var(--k);color:#fff;clip-path:polygon(25% 3%,75% 3%,100% 50%,75% 97%,25% 97%,0 50%);font-weight:800;text-align:center;font-size:14.5px;line-height:1.25;padding:10px 18px}
.sa2-hx .sa2-t{color:var(--ink2);font-size:15px;line-height:1.65}
/* mind map */
.sa2-mm .sa2-hub{margin:0 auto 26px;width:max-content;max-width:90%;background:linear-gradient(135deg,#0e7c86,#36c2b4);color:#fff;font-weight:800;font-size:18px;padding:16px 28px;border-radius:999px;box-shadow:0 12px 28px rgba(14,124,134,.28);position:relative;text-align:center}
.sa2-mm .sa2-hub:after{content:"";position:absolute;left:50%;bottom:-26px;width:3px;height:26px;background:#bfe3e1}
.sa2-mm .sa2-brs{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;border-top:3px solid #bfe3e1;padding-top:20px}
.sa2-mm .sa2-b{position:relative;background:#fff;border:1px solid var(--line);border-top:6px solid var(--k);border-radius:16px;padding:14px 16px;height:100%;box-shadow:0 6px 18px rgba(13,36,54,.05)}
.sa2-mm .sa2-b:before{content:"";position:absolute;left:50%;top:-29px;width:3px;height:23px;background:#bfe3e1}
.sa2-mm .sa2-h{font-weight:800;color:var(--k);font-size:16px;margin-bottom:6px}
.sa2-mm .sa2-t{color:var(--ink2);font-size:14.5px}
/* timeline */
.sa2-tl{position:relative;display:flex;flex-direction:column;gap:12px;padding-left:8px}
.sa2-tl:before{content:"";position:absolute;left:29px;top:14px;bottom:14px;width:3px;background:linear-gradient(#0f766e,#2563eb,#7c3aed,#ea580c,#db2777,#16a34a);border-radius:3px}
.sa2-tl>.sa2-r{display:flex;align-items:center;gap:18px;position:relative}
.sa2-tl>.sa2-r>i{width:44px;height:44px;border-radius:50%;background:var(--k);color:#fff;display:grid;place-items:center;font-style:normal;font-weight:800;flex:none;box-shadow:0 0 0 5px #fff,0 6px 14px rgba(0,0,0,.15);z-index:1}
.sa2-tl>.sa2-r>p:empty{display:none}
.sa2-tl .sa2-t{flex:1;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 16px;color:var(--ink2);box-shadow:0 4px 12px rgba(13,36,54,.04)}
/* chevron process */
.sa2-chev{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.sa2-chev>.sa2-r{display:flex;flex-direction:column}
.sa2-chev .sa2-h{display:flex;align-items:center;gap:10px;background:var(--k);color:#fff;font-weight:800;padding:14px 30px 14px 22px;clip-path:polygon(0 0,calc(100% - 18px) 0,100% 50%,calc(100% - 18px) 100%,0 100%,12px 50%);min-height:64px;font-size:14.5px;line-height:1.25}
.sa2-chev>.sa2-r:first-child .sa2-h{clip-path:polygon(0 0,calc(100% - 18px) 0,100% 50%,calc(100% - 18px) 100%,0 100%);border-radius:12px 0 0 12px;padding-left:16px}
.sa2-chev .sa2-h i{width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.25);display:grid;place-items:center;font-style:normal;flex:none}
.sa2-chev .sa2-t{flex:1;margin-top:10px;background:#fff;border:1px solid var(--line);border-top:4px solid var(--k);border-radius:14px;padding:12px 14px;color:var(--ink2);font-size:14.5px}
/* points, cards, terms */
.dh5-pts{display:grid;gap:10px;margin:14px 0}
.dh5-pt{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-left:5px solid var(--k);border-radius:14px;padding:12px 16px;color:var(--ink2);line-height:1.6}
.dh5-pt>b{width:28px;height:28px;border-radius:9px;background:var(--k);color:#fff;display:grid;place-items:center;flex:none;font-size:13px;margin-top:1px}
.dh5-pt1{display:flex;gap:12px;align-items:center;background:linear-gradient(90deg,#eef8f7,#fff);border:1px solid #cdeae7;border-radius:14px;padding:12px 16px;margin:12px 0;font-weight:600;color:var(--ink)}
.dh5-pt1>span{width:34px;height:34px;border-radius:50%;background:var(--k);color:#fff;display:grid;place-items:center;flex:none}
.dh5-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin:14px 0}
.dh5-cd{display:flex;gap:12px;background:#fff;border:1px solid var(--line);border-top:5px solid var(--k);border-radius:14px;padding:12px 14px;color:var(--ink2);line-height:1.55}
.dh5-cd>i{width:26px;height:26px;border-radius:50%;background:var(--k);color:#fff;display:grid;place-items:center;flex:none;font-style:normal;font-weight:800;font-size:12px}
.dh5-cards:not(.ol) .dh5-cd>i:before{content:"";width:8px;height:8px;border-radius:50%;background:#fff}
.dh5-cd .cdh{display:block;color:var(--k);margin-bottom:4px}
.dh5-cd li{padding-left:18px}.dh5-cd li:before{left:2px}
.dh5-terms{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin:14px 0}
.dh5-term{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 4px 12px rgba(13,36,54,.04)}
.dh5-term b{display:block;background:var(--k);color:#fff;padding:10px 14px;font-size:15px}
.dh5-term span{display:block;padding:12px 14px;color:var(--ink2);font-size:14.5px;line-height:1.55}
.dh5-tbl{overflow-x:auto;background:#fff;border:1px solid var(--line);border-radius:14px;margin:14px 0}
.dh5-tbl table{margin:0}
.dh5-sh{display:flex;align-items:center;gap:10px;font-size:19px;color:var(--ink);margin:24px 0 10px}
.dh5-sh:before{content:"";width:6px;height:22px;border-radius:4px;background:linear-gradient(#0e7c86,#36c2b4)}
@media (max-width:900px){
 .dh5-fx,.dh5-fx.rev{grid-template-columns:1fr}.dh5-fx.rev .dh5-fxf{order:0;border-left:0}.dh5-fxf{border-right:0;border-bottom:1px solid var(--line)}
 .sa2-hx>.sa2-r{grid-template-columns:1fr}.sa2-hx .sa2-g{width:150px;margin:0 auto}
 .sa2-chev .sa2-h,.sa2-chev>.sa2-r:first-child .sa2-h{clip-path:none;border-radius:12px}
}
/* ==== layouts ==== (lesson boards: picture count decides the layout) */
.dh5-im{display:block;background:#fff;border-radius:14px;overflow:hidden}
.dh5-im img{display:block;width:100%;height:100%;object-fit:contain;background:#fff}
.dh5-chk{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}
.dh5-content .dh5-chk li{display:flex;gap:10px;align-items:flex-start;padding:9px 12px;background:color-mix(in srgb,var(--k,#0e7c86) 7%,#fff);border:1px solid color-mix(in srgb,var(--k,#0e7c86) 22%,#fff);border-radius:12px;font-size:14px;line-height:1.5;color:var(--ink2)}
.dh5-content .dh5-chk li:before{display:none}
.dh5-chk svg{flex:none;width:20px;height:20px;padding:3px;border-radius:50%;background:var(--k,#0e7c86);color:#fff;margin-top:1px}
/* 1 picture */
.dh5-L1{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:18px;margin:18px 0}
.dh5-L1 .big{margin:0;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 10px 28px rgba(13,36,54,.07)}
.dh5-L1 .big figcaption{display:flex;gap:10px;align-items:center;background:var(--k);color:#fff;font-weight:700;padding:12px 16px}
.dh5-L1 .big figcaption b{background:rgba(255,255,255,.22);border-radius:8px;padding:3px 9px;font-size:12.5px}
.dh5-L1 .big .dh5-im{padding:14px;border-radius:0}.dh5-L1 .big img{max-height:440px}
.dh5-L1 .ex{background:linear-gradient(160deg,color-mix(in srgb,var(--k) 9%,#fff),#fff);border:1px solid var(--line);border-radius:20px;padding:22px}
.dh5-L1 .ex h4{font-size:20px;margin:10px 0 4px}
.dh5 .tag{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;color:var(--k);background:#fff;border:1px solid color-mix(in srgb,var(--k) 25%,#fff);border-radius:999px;padding:5px 11px}
/* 2 pictures, and grid cards */
.dh5-L2,.dh5-L5{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:18px 0}
.dh5-L5{grid-template-columns:repeat(3,1fr)}
.dh5-fc2{background:#fff;border:1px solid var(--line);border-top:6px solid var(--k);border-radius:18px;overflow:hidden;box-shadow:0 8px 22px rgba(13,36,54,.06);display:flex;flex-direction:column}
.dh5-fc2 .dh5-im{height:230px;padding:12px;background:color-mix(in srgb,var(--k) 6%,#fff);border-radius:0}
.dh5-fc2 .tx{padding:14px 16px 16px}
.dh5-fc2 h4{display:flex;gap:10px;align-items:center;font-size:17px;margin:0}
.dh5-fc2 h4 b{width:28px;height:28px;border-radius:50%;background:var(--k);color:#fff;display:grid;place-items:center;font-size:13px;flex:none}
/* 3 pictures: observe -> explain -> apply */
.dh5-L3{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:10px;align-items:stretch;margin:18px 0}
.dh5-L3 .ar{align-self:center;color:var(--mute)}
.dh5-L3 .col{background:color-mix(in srgb,var(--k) 6%,#fff);border:1px solid color-mix(in srgb,var(--k) 22%,#fff);border-radius:18px;padding:14px;display:flex;flex-direction:column}
.dh5-L3 header{display:flex;gap:12px;align-items:center;margin-bottom:12px}
.dh5-L3 header i{width:42px;height:42px;border-radius:50%;background:var(--k);color:#fff;display:grid;place-items:center;flex:none}
.dh5-L3 header b{display:block;font-size:19px;color:var(--ink)}.dh5-L3 header small{color:var(--ink2);font-size:13px}
.dh5-L3 .dh5-im{height:210px;padding:8px;border:1px solid var(--line)}
/* 4+ pictures: centre with callouts */
.dh5-L4{display:grid;grid-template-columns:1fr minmax(0,1.3fr) 1fr;gap:16px;align-items:center;margin:18px 0;padding:18px;background:linear-gradient(180deg,#f3f8fb,#fff);border:1px solid var(--line);border-radius:22px}
.dh5-L4 .sd{display:flex;flex-direction:column;gap:14px}
.dh5-L4 .co{position:relative;display:flex;flex-direction:column;gap:8px;background:color-mix(in srgb,var(--k) 7%,#fff);border:1px solid color-mix(in srgb,var(--k) 25%,#fff);border-radius:16px;padding:12px}
.dh5-L4 .co .num{position:absolute;top:10px;left:10px;background:var(--k);color:#fff;width:30px;height:30px}
.dh5-L4 .co .ct2 h4{padding-left:38px;min-height:30px;display:flex;align-items:center}
.dh5-L4 .co h4{font-size:15.5px;margin:3px 0 0}
.dh5-L4 .co .th{height:130px;padding:6px;border:1px solid var(--line)}
.dh5-L4 .co .dh5-chk li{padding:6px 9px;font-size:13px}
.dh5-L4 .sd:first-child .co:after,.dh5-L4 .sd:last-child .co:after{content:"";position:absolute;top:50%;width:16px;height:3px;background:var(--k)}
.dh5-L4 .sd:first-child .co:after{right:-17px}.dh5-L4 .sd:last-child .co:after{left:-17px}
.dh5-L4 .hub{margin:0;background:#fff;border-radius:50%;aspect-ratio:1;display:grid;place-items:center;overflow:hidden;box-shadow:0 0 0 10px color-mix(in srgb,var(--k) 15%,#fff),0 20px 40px rgba(13,36,54,.12);position:relative}
.dh5-L4 .hub .dh5-im{width:86%;height:66%;border-radius:12px;margin-top:-6%}
.dh5-L4 .hub figcaption{position:absolute;left:12%;right:12%;bottom:9%;text-align:center}
.dh5-L4 .hub figcaption b{display:block;color:var(--k);font-size:15px}
.dh5-L4 .hub .dh5-chk{display:none}
/* quick check */
.dh5-qc{margin:20px 0;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 6px 18px rgba(13,36,54,.05)}
.dh5-qc header{display:flex;gap:10px;align-items:center;font-size:18px}
.dh5-qc header i{width:34px;height:34px;border-radius:50%;background:#7c3aed;color:#fff;display:grid;place-items:center;font-style:normal;font-weight:800}
.dh5-qc p{color:var(--ink2);margin:10px 0}
.dh5-qc .op{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dh5-qc button{display:flex;gap:10px;align-items:center;text-align:left;background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:11px 14px;font-weight:600;color:var(--ink)}
.dh5-qc button b{width:28px;height:28px;border-radius:50%;background:#f1ecff;color:#7c3aed;display:grid;place-items:center;flex:none}
.dh5-qc button.ok{border-color:var(--grn);background:var(--grnbg)}.dh5-qc button.bad{border-color:var(--red);background:var(--redbg)}
.dh5-qc .fb{display:block;margin-top:10px;font-weight:700;color:var(--ink2)}
/* section band + step bar on the part page */
.dh5-band{display:flex;align-items:center;gap:14px;background:linear-gradient(90deg,#e8f6f4,#f6fbfb);border:1px solid #cdeae7;border-radius:16px;padding:14px 18px;margin-bottom:16px}
.dh5-band b{width:40px;height:40px;border-radius:50%;background:var(--tl);color:#fff;display:grid;place-items:center;font-size:18px;flex:none}
.dh5-band h1{font-size:26px;margin:0}
.dh5-steps{display:flex;gap:0;overflow-x:auto;padding:4px 2px 14px;margin-bottom:6px}
.dh5-steps a{flex:1;min-width:100px;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;font-size:12px;color:var(--ink2);position:relative}
.dh5-steps a:before{content:"";position:absolute;top:15px;left:-50%;right:50%;height:2px;background:var(--line);z-index:0}
.dh5-steps a:first-child:before{display:none}
.dh5-steps a i{width:32px;height:32px;border-radius:50%;border:2px solid #cfdbe3;background:#fff;display:grid;place-items:center;font-style:normal;font-weight:800;position:relative;z-index:1}
.dh5-steps a.dn i{background:var(--tlbg);border-color:var(--tl);color:var(--tl)}.dh5-steps a.dn:before{background:var(--tl)}
.dh5-steps a.on i{background:var(--tl);border-color:var(--tl);color:#fff}.dh5-steps a.on{color:var(--tl);font-weight:700}
@media (max-width:900px){
 .dh5-L1,.dh5-L2,.dh5-L5{grid-template-columns:1fr}
 .dh5-L3{grid-template-columns:1fr}.dh5-L3 .ar{transform:rotate(90deg);justify-self:center}
 .dh5-L4{grid-template-columns:1fr}.dh5-L4 .hub{order:-1;max-width:320px;justify-self:center}.dh5-L4 .co:after{display:none}
 .dh5-qc .op{grid-template-columns:1fr}
}
