/* ===== RegLearn SEBI AIF — locked design: deep green / white / gold ===== */
#rlaif-root, #rlaif-root *{box-sizing:border-box;}
#rlaif-root{
  --g900:#0B3D2E; --g700:#0F5A43; --g500:#17795A; --g100:#E8F3EE; --g50:#F4FAF7;
  --gold:#C9A227; --ink:#1D2A25; --sub:#5B6E66; --bad:#B3462D; --bad-bg:#FBEFEA;
  max-width:680px; margin:0 auto; padding:clamp(10px,3vw,24px);
  color:var(--ink); position:relative; min-height:100vh;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  font-style:normal; font-weight:400; -webkit-text-size-adjust:100%; text-align:left;
}
#rlaif-root *{overflow-wrap:break-word;}
/* Neutralise any italic inherited from the host theme, then restore the few
   places we intend to be italic (regulation quotes + explicit emphasis). */
#rlaif-root *{font-style:normal;}
#rlaif-root em,#rlaif-root i,#rlaif-root cite,#rlaif-root .rlaif-provision,#rlaif-root .rlaif-regtext p{font-style:italic;}
#rlaif-root img{max-width:100%;height:auto;}
.rlaif-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:14px;flex-wrap:wrap;}
.rlaif-brand{font-weight:800;font-size:clamp(15px,4vw,18px);color:var(--g900);letter-spacing:.2px;}
.rlaif-brand span{color:var(--g500);}
.rlaif-head-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.rlaif-chip{background:var(--g100);color:var(--g900);border-radius:999px;padding:5px 12px;font-size:clamp(11px,3vw,13px);font-weight:700;white-space:nowrap;}
.rlaif-chip-rank{background:var(--g900);color:#fff;}
.rlaif-chip-streak{background:#FFF3CE;color:#7A611A;border:1px solid #EAD48A;}
.rlaif-ring{position:relative;width:40px;height:40px;flex:none;}
.rlaif-ring svg{width:40px;height:40px;transform:rotate(-90deg);}
.rlaif-ring circle{fill:none;stroke-width:3.4;}
.rlaif-ring .bg{stroke:var(--g100);}
.rlaif-ring .fg{stroke:var(--gold);stroke-linecap:round;transition:stroke-dasharray .5s ease;}
.rlaif-ring span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;color:var(--g900);}
.rlaif-card{background:#fff;border:1px solid var(--g100);border-radius:16px;padding:clamp(16px,4vw,26px);box-shadow:0 2px 14px rgba(11,61,46,.06);margin-bottom:14px;}
.rlaif-card h2{margin:6px 0 8px;font-size:clamp(19px,5vw,25px);line-height:1.25;color:var(--g900);}
.rlaif-card h3{margin:0 0 8px;font-size:clamp(16px,4.4vw,19px);color:var(--g900);}
.rlaif-kicker{font-size:clamp(10px,2.8vw,12px);font-weight:800;letter-spacing:1.4px;color:var(--g500);}
.rlaif-sub{color:var(--sub);font-size:clamp(13px,3.6vw,15px);line-height:1.55;margin:4px 0 10px;}
.rlaif-fine{color:var(--sub);font-size:clamp(11px,3vw,12.5px);line-height:1.5;margin:8px 0 0;}
.rlaif-err{color:var(--bad);font-size:13px;min-height:18px;margin:6px 0 0;}
.rlaif-link{color:var(--g700);font-weight:700;text-decoration:underline;cursor:pointer;}
.rlaif-banner{border-radius:14px;padding:12px 16px;font-size:clamp(13px,3.6vw,15px);margin-bottom:12px;line-height:1.5;}
.rlaif-banner-gold{background:linear-gradient(100deg,#FFF9E8,#FDF3D2);border:1px solid #EAD48A;color:#6B551A;}
.rlaif-banner-nudge{background:var(--g50);border:1px solid var(--g100);color:var(--g900);}
.rlaif-form{display:flex;flex-direction:column;gap:10px;margin-top:10px;}
.rlaif-form input,.rlaif-form select{width:100%;padding:13px 14px;border:1.6px solid var(--g100);border-radius:12px;font-size:16px;color:var(--ink);background:var(--g50);outline:none;font-family:inherit;}
.rlaif-form input:focus,.rlaif-form select:focus{border-color:var(--g500);background:#fff;}
.rlaif-label{font-size:12px;font-weight:800;letter-spacing:.6px;color:var(--g700);margin:6px 0 -4px;text-transform:uppercase;}
.rlaif-btn{display:inline-block;width:100%;text-align:center;background:var(--g700);color:#fff;border:none;border-radius:12px;padding:13px 18px;font-size:clamp(14px,3.8vw,16px);font-weight:800;cursor:pointer;margin-top:10px;text-decoration:none;transition:background .15s,transform .1s;}
.rlaif-btn:active{transform:scale(.985);}
.rlaif-btn:hover{background:var(--g900);}
.rlaif-btn:disabled{opacity:.55;cursor:default;}
.rlaif-btn-ghost{background:#fff;color:var(--g700);border:1.6px solid var(--g500);}
.rlaif-btn-ghost:hover{background:var(--g50);color:var(--g900);}
.rlaif-btn-gold{background:var(--gold);color:#3A2E07;}
.rlaif-btn-gold:hover{background:#B8931F;}
.rlaif-btnrow{display:flex;gap:10px;flex-wrap:wrap;}
.rlaif-btnrow .rlaif-btn{flex:1;min-width:130px;}
.shake{animation:rlaif-shake .35s;}
@keyframes rlaif-shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}
.rlaif-progress-card .rlaif-bar{height:10px;background:var(--g100);border-radius:999px;overflow:hidden;margin:8px 0 6px;}
.rlaif-bar-fill{height:100%;background:linear-gradient(90deg,var(--g500),var(--g700));border-radius:999px;transition:width .5s ease;}
.rlaif-bar-fill.gold{background:linear-gradient(90deg,#E0C25A,var(--gold));}
.rlaif-dual{display:flex;gap:14px;flex-wrap:wrap;margin-top:4px;}
.rlaif-dual > div{flex:1;min-width:140px;}
.rlaif-dual .cap{font-size:11px;font-weight:800;letter-spacing:.5px;color:var(--sub);text-transform:uppercase;}
.rlaif-modules{display:flex;flex-direction:column;gap:10px;}
.rlaif-track-head{font-size:11px;font-weight:800;letter-spacing:1.2px;color:var(--g500);text-transform:uppercase;margin:14px 0 2px;}
.rlaif-mod{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--g100);border-radius:14px;padding:13px 15px;cursor:pointer;transition:border-color .15s,box-shadow .15s;}
.rlaif-mod:hover{border-color:var(--g500);box-shadow:0 2px 10px rgba(11,61,46,.08);}
.rlaif-mod.done{background:var(--g50);}
.rlaif-mod.track{border-color:#EAD48A;background:linear-gradient(100deg,#FFFDF6,#FFFCEF);}
.rlaif-mod-no{flex:none;width:36px;height:36px;border-radius:10px;background:var(--g900);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;}
.rlaif-mod.done .rlaif-mod-no{background:var(--g500);}
.rlaif-mod.track .rlaif-mod-no{background:var(--gold);color:#3A2E07;}
.rlaif-mod-body{flex:1;min-width:0;}
.rlaif-mod-body strong{display:block;font-size:clamp(13.5px,3.8vw,15.5px);color:var(--g900);line-height:1.35;}
.rlaif-mod-body span{font-size:clamp(11px,3vw,12.5px);color:var(--sub);}
.rlaif-pills{display:flex;gap:6px;margin-top:5px;flex-wrap:wrap;}
.rlaif-pill{font-size:10.5px;font-weight:800;letter-spacing:.4px;border-radius:6px;padding:3px 8px;background:var(--g50);color:var(--sub);border:1px solid var(--g100);white-space:nowrap;}
.rlaif-pill.donep{background:var(--g100);color:var(--g700);border-color:var(--g500);}
.rlaif-pill.mid{background:#FFF9E8;color:#7A611A;border-color:#EAD48A;}
.rlaif-pill.low{background:var(--bad-bg);color:var(--bad);border-color:#E8C4B6;}
.rlaif-mod-go{color:var(--g500);font-weight:800;}
.rlaif-mod.track .rlaif-mod-go{color:var(--gold);}
.rlaif-wall-btn{margin-top:14px;}
/* activity */
.rlaif-acthead{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;}
.rlaif-tag{background:var(--g900);color:#fff;font-size:clamp(10px,2.8vw,11.5px);font-weight:800;letter-spacing:1.1px;border-radius:6px;padding:4px 9px;}
.rlaif-tag-review{background:var(--gold);color:#3A2E07;}
.rlaif-tag-trap{background:var(--bad);color:#fff;}
.rlaif-tag-deep{background:var(--gold);color:#3A2E07;}
.rlaif-count{color:var(--sub);font-size:clamp(11px,3vw,12.5px);font-weight:700;margin:0;}
.rlaif-scenario{background:var(--g50);border-left:4px solid var(--g500);border-radius:10px;padding:13px 15px;font-size:clamp(13px,3.7vw,15px);line-height:1.65;white-space:pre-wrap;margin:10px 0;}
.rlaif-provision{background:var(--g50);border-left:4px solid var(--gold);border-radius:10px;padding:13px 15px;font-size:clamp(13px,3.7vw,15px);line-height:1.65;font-style:italic;margin:10px 0;color:#2C3A34;}
.rlaif-q{font-weight:800;font-size:clamp(14.5px,4vw,17px);color:var(--g900);margin:12px 0 8px;line-height:1.4;}
.rlaif-opts{display:flex;flex-direction:column;gap:9px;}
.rlaif-opt{text-align:left;background:#fff;border:1.6px solid var(--g100);border-radius:12px;padding:12px 14px;font-size:clamp(13px,3.7vw,15px);line-height:1.5;color:var(--ink);cursor:pointer;transition:border-color .12s,background .12s;}
.rlaif-opt:hover{border-color:var(--g500);}
.rlaif-opt.sel{border-color:var(--g700);background:var(--g100);font-weight:700;color:var(--g900);}
.rlaif-free{width:100%;min-height:74px;margin-top:12px;border:1.6px solid var(--g100);border-radius:12px;padding:11px 13px;font-size:14px;font-family:inherit;color:var(--ink);background:var(--g50);resize:vertical;outline:none;}
.rlaif-src{margin-top:14px;font-size:clamp(10.5px,2.9vw,12px);color:var(--sub);line-height:1.5;}
.rlaif-verdict{border-radius:12px;padding:13px 15px;font-weight:800;font-size:clamp(14px,3.9vw,16px);line-height:1.45;}
.rlaif-verdict.ok{background:var(--g100);color:var(--g900);}
.rlaif-verdict.bad{background:var(--bad-bg);color:var(--bad);}
.rlaif-bonus{display:inline-block;background:var(--g50);border:1px solid var(--g100);color:var(--g700);border-radius:999px;padding:4px 11px;font-size:12px;font-weight:800;margin:8px 6px 0 0;}
.rlaif-bonus.combo{background:#FFF7E0;border-color:#EAD48A;color:#7A611A;}
.rlaif-lapse{background:var(--g50);border-radius:12px;padding:12px 14px;margin-top:10px;}
.rlaif-lapse strong{color:var(--g900);font-size:clamp(13.5px,3.7vw,15px);}
.rlaif-lapse p{margin:5px 0 0;font-size:clamp(12.5px,3.5vw,14px);line-height:1.6;color:#33443D;}
.rlaif-expl{background:var(--g50);border-radius:12px;padding:12px 14px;margin-top:10px;font-size:clamp(12.5px,3.5vw,14px);line-height:1.6;color:#33443D;}
.rlaif-summary{margin-top:12px;font-size:clamp(12.5px,3.5vw,14px);font-weight:700;color:var(--g700);line-height:1.55;}
/* poll */
.rlaif-poll{margin-top:16px;border-top:1.5px dashed var(--g100);padding-top:14px;}
.rlaif-poll h4{margin:0 0 9px;font-size:clamp(13.5px,3.7vw,15px);color:var(--g900);}
.rlaif-poll-opts{display:flex;flex-direction:column;gap:8px;}
.rlaif-poll-opt{background:#fff;border:1.6px solid var(--g100);border-radius:10px;padding:10px 13px;font-size:clamp(12.5px,3.4vw,14px);text-align:left;cursor:pointer;}
.rlaif-poll-opt:hover{border-color:var(--g500);}
.rlaif-poll-row{position:relative;border:1.6px solid var(--g100);border-radius:10px;padding:10px 62px 10px 13px;font-size:clamp(12px,3.3vw,13.5px);overflow:hidden;min-height:40px;display:flex;align-items:center;margin-bottom:8px;}
.rlaif-poll-row .lbl{position:relative;z-index:2;line-height:1.4;}
.rlaif-poll-row .fill{position:absolute;left:0;top:0;bottom:0;background:var(--g100);z-index:1;transition:width .6s ease;}
.rlaif-poll-row .pct{position:absolute;right:12px;top:50%;transform:translateY(-50%);z-index:2;font-weight:800;color:var(--g700);}
.rlaif-poll-row.mine{border-color:var(--g700);}
.rlaif-poll-row.mine .lbl{font-weight:800;color:var(--g900);}
.rlaif-onemore{margin-top:18px;border-top:1.5px dashed var(--g100);padding-top:14px;}
/* tour / dots */
.rlaif-tour{text-align:center;}
.rlaif-tour-icon{font-size:46px;margin-top:6px;}
.rlaif-dots{display:flex;justify-content:center;gap:7px;margin:14px 0 4px;}
.rlaif-dots span{width:8px;height:8px;border-radius:50%;background:var(--g100);display:inline-block;}
.rlaif-dots span.on{background:var(--g700);}
/* flash */
.rlaif-flash{perspective:1100px;cursor:pointer;margin:8px 0 4px;}
.rlaif-flash-inner{position:relative;width:100%;min-height:190px;transition:transform .5s;transform-style:preserve-3d;}
.rlaif-flash.flipped .rlaif-flash-inner{transform:rotateY(180deg);}
.rlaif-flash-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:16px;display:flex;align-items:center;justify-content:center;text-align:center;padding:22px;font-size:clamp(14.5px,4vw,17px);line-height:1.5;}
.rlaif-flash-face.front{background:var(--g900);color:#fff;font-weight:800;}
.rlaif-flash-face.back{background:var(--g50);border:1.6px solid var(--g100);color:var(--g900);transform:rotateY(180deg);font-weight:600;}
/* rank up */
.rlaif-rankup{position:fixed;inset:0;background:rgba(11,61,46,.92);z-index:9999;display:flex;align-items:center;justify-content:center;animation:rlaif-fade .3s;}
.rlaif-rankup .inner{text-align:center;color:#fff;padding:20px;}
.rlaif-rankup .big{font-size:56px;}
.rlaif-rankup h2{color:#fff;margin:8px 0 2px;font-size:26px;}
.rlaif-rankup p{color:var(--g100);margin:0;}
.rlaif-rankup .rank{font-size:clamp(26px,7vw,36px);font-weight:800;color:var(--gold);margin-top:6px;}
@keyframes rlaif-fade{from{opacity:0}to{opacity:1}}
/* cert + wall */
.rlaif-cert-canvas{width:100%;height:auto;border-radius:12px;border:1px solid var(--g100);margin:10px 0 4px;}
.rlaif-wall{display:flex;flex-direction:column;gap:8px;margin-top:8px;}
.rlaif-wall-row{display:flex;align-items:center;gap:10px;border:1.6px solid var(--g100);border-radius:12px;padding:10px 13px;font-size:clamp(12.5px,3.5vw,14px);}
.rlaif-wall-row.me{border-color:var(--g700);background:var(--g50);}
.rlaif-wall-row .rank{font-weight:800;color:var(--g500);flex:none;width:36px;}
.rlaif-wall-row .name{flex:1;min-width:0;font-weight:700;color:var(--g900);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.rlaif-wall-row .tier{flex:none;font-size:10.5px;font-weight:800;letter-spacing:.6px;border-radius:6px;padding:3px 8px;text-transform:uppercase;}
.rlaif-wall-row .tier.distinction{background:#FFF3CE;color:#7A611A;border:1px solid #EAD48A;}
.rlaif-wall-row .tier.merit{background:var(--g100);color:var(--g700);}
.rlaif-wall-row .tier.completion{background:var(--g50);color:var(--sub);border:1px solid var(--g100);}
.rlaif-wall-row .acc{flex:none;font-weight:800;color:var(--g900);}
/* journey strip */
.rlaif-journey{display:flex;gap:6px;margin:0 0 12px;}
.rlaif-jstep{flex:1;text-align:center;padding:8px 4px;border-radius:10px;background:#fff;border:1.6px solid var(--g100);font-size:clamp(10px,2.9vw,12px);font-weight:800;color:var(--sub);}
.rlaif-jstep .ico{display:block;font-size:16px;margin-bottom:2px;}
.rlaif-jstep.on{border-color:var(--g700);color:var(--g900);background:var(--g100);}
.rlaif-jstep.done{border-color:var(--g500);color:var(--g500);background:var(--g50);}
.rlaif-lcount{text-align:center;color:var(--sub);font-size:12px;font-weight:700;margin:0 0 8px;}
/* concept card */
.rlaif-lcard{border-radius:18px;background:linear-gradient(160deg,var(--g900),var(--g700));color:#fff;padding:clamp(18px,5vw,28px);box-shadow:0 4px 18px rgba(11,61,46,.18);}
.rlaif-ltag{font-size:10.5px;font-weight:800;letter-spacing:1.4px;color:var(--gold);margin-bottom:10px;}
.rlaif-lcard h3{color:#fff;font-size:clamp(17px,4.8vw,21px);margin:0 0 14px;line-height:1.3;}
.rlaif-beat{margin-bottom:13px;}
.rlaif-blabel{font-size:10.5px;font-weight:800;letter-spacing:1.1px;color:var(--g500);margin-bottom:3px;}
/* Concept-card beats (WHAT THE LAW SAYS / IN PLAIN ENGLISH / WATCH OUT) always
   render inside a plain WHITE .rlaif-card, never the unused dark .rlaif-lcard —
   so body text must be dark-on-white, not the near-white tone below. */
.rlaif-beat p{margin:0;font-size:clamp(13px,3.7vw,15px);line-height:1.6;color:var(--ink);}
.rlaif-beat.bad{background:var(--bad-bg);border-radius:10px;padding:9px 12px;}
.rlaif-beat.bad .rlaif-blabel{color:var(--bad);}
.rlaif-beat.bad p{color:var(--ink);}
.rlaif-beat.trip .rlaif-blabel{color:var(--gold);}
.rlaif-beat.trip p{color:#FDF3D2;}
.rlaif-beat.hook{background:rgba(201,162,39,.14);border:1px solid rgba(201,162,39,.4);border-radius:10px;padding:9px 12px;}
.rlaif-beat.hook .rlaif-blabel{color:var(--gold);}
.rlaif-beat.linkb{background:rgba(255,255,255,.07);border:1px dashed rgba(255,255,255,.25);border-radius:10px;padding:9px 12px;}
.rlaif-beat.linkb p{color:#CDE4D8;font-size:clamp(12px,3.3vw,13.5px);}
.rlaif-lprov{margin-top:12px;padding-top:12px;font-size:11px;color:#8FBFA9;border-top:1px solid rgba(255,255,255,.14);}
.rlaif-ldots{display:flex;justify-content:center;gap:7px;margin:14px 0 2px;}
.rlaif-ldots span{width:8px;height:8px;border-radius:50%;background:#CDE4D8;display:inline-block;}
.rlaif-ldots span.on{background:var(--g700);transform:scale(1.2);}
/* deep dive */
.rlaif-deep .regtext{background:#0B3D2E;color:#EAF6EF;border-radius:14px;padding:16px 18px;font-size:clamp(13px,3.6vw,14.5px);line-height:1.7;font-style:normal;border-left:5px solid var(--gold);}
.rlaif-deep .regtext .rnum{display:block;color:var(--gold);font-weight:800;letter-spacing:.4px;margin-bottom:8px;font-size:13px;}
.rlaif-deep .beatbox{border:1.6px solid var(--g100);border-radius:12px;padding:13px 15px;margin-top:10px;}
.rlaif-deep .beatbox .bl{font-size:10.5px;font-weight:800;letter-spacing:1px;color:var(--g500);text-transform:uppercase;margin-bottom:4px;}
.rlaif-deep .beatbox p{margin:0;font-size:clamp(13px,3.6vw,14.5px);line-height:1.6;color:#2C3A34;}
.rlaif-deep .takeaway{background:var(--g900);color:#fff;border-radius:12px;padding:13px 15px;margin-top:10px;}
.rlaif-deep .takeaway .bl{color:var(--gold);}
.rlaif-deep .takeaway p{color:#F0FAF5;font-weight:700;}
.rlaif-deep .pnote{background:#FFF9E8;border:1.6px solid #EAD48A;border-radius:12px;padding:13px 15px;margin-top:12px;}
.rlaif-deep .pnote .bl{font-size:10.5px;font-weight:800;letter-spacing:1px;color:#7A611A;text-transform:uppercase;margin-bottom:5px;}
.rlaif-deep .pnote p{margin:0;font-size:clamp(12.5px,3.5vw,14px);line-height:1.65;color:#5C4A14;}
.rlaif-reviewflag{margin-top:8px;font-size:11px;color:var(--bad);font-weight:700;}
/* worked example */
.rlaif-story{background:var(--g50);border:1.6px solid var(--g100);border-radius:16px;padding:clamp(15px,4vw,22px);margin-bottom:14px;}
.rlaif-stag{display:inline-block;background:var(--gold);color:#3A2E07;font-size:10.5px;font-weight:800;letter-spacing:1px;border-radius:6px;padding:4px 10px;margin-bottom:10px;}
.rlaif-story h3{font-size:clamp(15.5px,4.3vw,18px);color:var(--g900);margin:0 0 8px;}
.rlaif-story p{font-size:clamp(13px,3.7vw,15px);line-height:1.7;color:#2C3A34;margin:0 0 10px;}
.rlaif-story .num{font-weight:800;color:var(--g700);}
.rlaif-calc{background:#fff;border:1.6px solid var(--g100);border-radius:12px;padding:12px 15px;margin:12px 0;}
.rlaif-crow{display:flex;justify-content:space-between;gap:10px;padding:6px 0;font-size:clamp(12.5px,3.5vw,14px);border-bottom:1px dashed var(--g100);}
.rlaif-crow:last-child{border-bottom:none;}
.rlaif-crow span:first-child{color:#2C3A34;}
.rlaif-crow span:last-child{font-weight:700;color:var(--g700);text-align:right;}
.rlaif-crow.hl span:last-child{color:var(--gold);}
/* matrix */
.rlaif-matrix{border:1.6px solid var(--g100);border-radius:12px;overflow:hidden;margin:12px 0;font-size:clamp(11px,3vw,13px);}
.rlaif-mrow{display:flex;}
.rlaif-mrow:nth-child(even){background:var(--g50);}
.rlaif-mhead{background:var(--g900) !important;color:#fff;font-weight:800;}
.rlaif-mcell{flex:1;padding:8px 9px;line-height:1.45;border-right:1px solid var(--g100);min-width:0;}
.rlaif-mcell:last-child{border-right:none;}
.rlaif-mcell.lead{font-weight:800;color:var(--g900);flex:0.9;}
.rlaif-mhead .rlaif-mcell{border-right-color:rgba(255,255,255,.18);color:#fff;}
/* hook / summary / tip / ladder */
.rlaif-hookcard{background:linear-gradient(160deg,#123F30,var(--g700));border-radius:18px;color:#fff;padding:clamp(18px,5vw,28px);box-shadow:0 4px 18px rgba(11,61,46,.18);}
.rlaif-hookcard .rlaif-ltag{color:var(--gold);}
.rlaif-hookcard h3{color:#fff;font-size:clamp(18px,5vw,22px);line-height:1.35;margin:0 0 6px;}
.rlaif-hookcard p{color:#E9F5EF;font-size:clamp(13px,3.7vw,15px);line-height:1.6;margin:0;}
.rlaif-remember{margin:8px 0 4px;padding-left:20px;}
.rlaif-remember li{font-size:clamp(13px,3.7vw,14.5px);line-height:1.6;color:#2C3A34;margin-bottom:7px;}
.rlaif-remember li::marker{color:var(--g500);font-weight:800;}
.rlaif-tip{background:#FFF9E8;border:1.6px solid #EAD48A;border-radius:12px;padding:13px 15px;margin-top:14px;}
.rlaif-tiplabel{font-size:10.5px;font-weight:800;letter-spacing:1px;color:#7A611A;margin-bottom:5px;}
.rlaif-tip p{margin:0;font-size:clamp(12.5px,3.5vw,14px);line-height:1.65;color:#5C4A14;}
.rlaif-ladder{display:flex;flex-direction:column;gap:7px;margin:10px 0 8px;}
.rlaif-rung{display:flex;justify-content:space-between;align-items:center;gap:10px;border-radius:10px;padding:10px 14px;color:#fff;font-size:clamp(12px,3.4vw,13.5px);}
.rlaif-rung .lbl{font-weight:800;}
.rlaif-rung .val{font-weight:800;white-space:nowrap;}
.rlaif-rung.spec{color:#2C3A34;background:var(--g50);border:1.5px dashed var(--g500);}
/* share + email preview */
.rlaif-share{margin-top:14px;border-top:1.5px dashed var(--g100);padding-top:12px;}
.rlaif-sharebtns{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;}
.rlaif-sbtn{flex:1;min-width:110px;text-align:center;border:none;border-radius:10px;padding:11px 12px;font-weight:800;font-size:13px;cursor:pointer;text-decoration:none;color:#fff;}
.rlaif-sbtn.li{background:#0A66C2;}
.rlaif-sbtn.fb{background:#1877F2;}
.rlaif-sbtn.wa{background:#25D366;color:#08331C;}
.rlaif-sbtn.native{background:var(--g900);}
.rlaif-emailcard{border:1.6px solid var(--g100);border-radius:12px;padding:13px 15px;margin-top:10px;background:#fff;}
.rlaif-emailcard.admin{background:var(--g50);}
.rlaif-emeta{font-size:11px;color:var(--sub);font-weight:700;}
.rlaif-esub{font-weight:800;color:var(--g900);margin:4px 0 8px;font-size:15px;}
.rlaif-emailcard p{margin:0;font-size:13.5px;line-height:1.6;color:#2C3A34;}
/* mobile: matrix can scroll rather than crush */
.rlaif-matrix-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:12px 0;}
.rlaif-matrix-scroll .rlaif-matrix{margin:0;min-width:360px;}
@media (min-width:560px){.rlaif-btn{width:auto;min-width:180px;}.rlaif-btnrow .rlaif-btn{width:auto;}}

/* ===== certificate verification page ===== */
.rlaif-verify{max-width:560px;margin:16px auto;background:#fff;border:1px solid #E8F3EE;border-radius:16px;padding:22px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:#1D2A25;}
.rlaif-verify.rlaif-ok h3{color:#0B3D2E;margin:0 0 10px;}
.rlaif-verify.rlaif-bad h3{color:#B3462D;margin:0 0 10px;}
.rlaif-verify table{width:100%;border-collapse:collapse;}
.rlaif-verify td{padding:8px 6px;border-bottom:1px solid #F0F6F3;font-size:14px;vertical-align:top;}
.rlaif-verify td:first-child{color:#5B6E66;width:44%;}

/* ===== engine additions (foundation) ===== */
#rlaif-root .rlaif-field{margin:10px 0;}
#rlaif-root .rlaif-flabel{display:block;font-size:12px;font-weight:700;color:var(--g500);margin-bottom:5px;letter-spacing:.3px;}
#rlaif-root .rlaif-input{width:100%;padding:12px 14px;border:1.5px solid var(--g100);border-radius:12px;font-size:15px;color:var(--ink);background:#fff;}
#rlaif-root .rlaif-input:focus{outline:none;border-color:var(--g500);}
#rlaif-root select.rlaif-input{appearance:none;-webkit-appearance:none;}

#rlaif-root .rlaif-bandlabel{font-size:12px;font-weight:800;letter-spacing:1.4px;color:var(--g500);margin:18px 4px 8px;text-transform:uppercase;}
#rlaif-root .rlaif-chapter{background:#fff;border:1px solid var(--g100);border-radius:14px;padding:14px 16px;margin-bottom:10px;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 1px 8px rgba(11,61,46,.05);}
#rlaif-root .rlaif-chapter-top{display:flex;align-items:center;gap:12px;min-width:0;}
#rlaif-root .rlaif-chapter-no{width:34px;height:34px;flex:none;border-radius:9px;background:var(--g900);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:14px;}
#rlaif-root .rlaif-chapter-meta{min-width:0;}
#rlaif-root .rlaif-chapter-name{font-weight:700;color:var(--g900);font-size:15px;line-height:1.3;}

#rlaif-root .rlaif-progline{margin:12px 0;}
#rlaif-root .rlaif-cap{font-size:12px;font-weight:700;color:var(--sub);margin-bottom:5px;}

#rlaif-root .rlaif-regtext{background:var(--g50);border-left:4px solid var(--g500);border-radius:0 12px 12px 0;padding:14px 16px;margin:12px 0;}
#rlaif-root .rlaif-regtext-label{font-size:11px;font-weight:800;letter-spacing:1.2px;color:var(--g500);margin-bottom:6px;}
#rlaif-root .rlaif-regtext p{margin:0;font-style:italic;color:var(--ink);line-height:1.6;font-size:15px;}

#rlaif-root .rlaif-pnote{background:#FFF9EC;border:1px solid #EAD48A;border-radius:12px;padding:14px 16px;margin:12px 0;}
#rlaif-root .rlaif-pnote-label{font-size:11px;font-weight:800;letter-spacing:1.2px;color:#7A611A;margin-bottom:6px;}
#rlaif-root .rlaif-pnote p{margin:0;color:#4A3D12;line-height:1.6;font-size:14.5px;}

#rlaif-root .rlaif-opt.right{border-color:var(--g500);background:var(--g50);}
#rlaif-root .rlaif-opt.wrong{border-color:var(--bad);background:var(--bad-bg);}
#rlaif-root .rlaif-reveal{border-radius:12px;padding:14px 16px;margin:12px 0;}
#rlaif-root .rlaif-reveal.good{background:var(--g50);border:1px solid var(--g100);}
#rlaif-root .rlaif-reveal.bad{background:var(--bad-bg);border:1px solid #F0C9BC;}
#rlaif-root .rlaif-reveal-head{font-weight:800;margin-bottom:6px;color:var(--g900);}
#rlaif-root .rlaif-reveal.bad .rlaif-reveal-head{color:var(--bad);}
#rlaif-root .rlaif-reveal p{margin:0;line-height:1.6;font-size:14.5px;}

#rlaif-root .rlaif-srcline{color:var(--sub);font-size:11.5px;margin:12px 0 4px;padding-top:8px;border-top:1px dashed var(--g100);}

#rlaif-root .rlaif-card-gold{border:1.5px solid var(--gold);background:linear-gradient(180deg,#FFFDF6,#fff);}
#rlaif-root .rlaif-btn-sm{padding:9px 16px;font-size:14px;width:auto;display:inline-block;}

#rlaif-root .rlaif-cert{text-align:center;border:2px solid var(--gold);}
#rlaif-root .rlaif-certstat{margin:12px 0;font-size:15px;color:var(--g900);}
#rlaif-root .rlaif-share{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:14px 0;}
#rlaif-root .rlaif-sharebtn{background:var(--g100);color:var(--g900);text-decoration:none;padding:9px 16px;border-radius:999px;font-weight:700;font-size:13px;}

/* ---------- small-screen refinements (<=480px) ---------- */
@media (max-width:480px){
  #rlaif-root{padding:12px 12px 40px;min-height:auto;}
  #rlaif-root .rlaif-card{padding:16px;}
  #rlaif-root .rlaif-btnrow{flex-direction:column;}
  #rlaif-root .rlaif-btnrow .rlaif-btn{width:100%;min-width:0;}
  #rlaif-root .rlaif-dual{flex-direction:column;gap:8px;}
  #rlaif-root .rlaif-dual > div{min-width:0;width:100%;}
  #rlaif-root .rlaif-head{gap:6px;}
  #rlaif-root .rlaif-acthead{gap:6px;}
  #rlaif-root .rlaif-verify{padding:16px;}
  #rlaif-root .rlaif-verify table{width:100%;}
  #rlaif-root .rlaif-verify td{padding:7px 8px;font-size:13px;word-break:break-word;}
  #rlaif-root .rlaif-mod{padding:12px;gap:10px;}
  #rlaif-root .rlaif-mod-no{width:32px;height:32px;font-size:14px;}
}

/* ---------- contrast hardening against host-theme button styles ----------
   Themes often style <button> (e.g. .entry-content button) with their own
   background/colour at higher specificity than a bare .rlaif-opt/.rlaif-btn,
   overriding one side and collapsing text into its background. Re-assert BOTH
   background and colour, id-scoped so the theme can't win, for every state. */
#rlaif-root .rlaif-opt{background:#fff;color:var(--ink);-webkit-appearance:none;appearance:none;text-shadow:none;}
#rlaif-root .rlaif-opt:hover{background:#fff;color:var(--ink);border-color:var(--g500);}
#rlaif-root .rlaif-opt.sel{background:var(--g100);color:var(--g900);border-color:var(--g700);}
#rlaif-root .rlaif-opt.right,#rlaif-root .rlaif-opt.sel.right{background:var(--g50);color:var(--g900);border-color:var(--g500);}
#rlaif-root .rlaif-opt.wrong,#rlaif-root .rlaif-opt.sel.wrong{background:var(--bad-bg);color:var(--ink);border-color:var(--bad);}
#rlaif-root .rlaif-btn{background:var(--g700);color:#fff;-webkit-appearance:none;appearance:none;text-shadow:none;}
#rlaif-root .rlaif-btn:hover{background:var(--g900);color:#fff;}
#rlaif-root .rlaif-btn:disabled{opacity:.6;}


/* ===== theme-proof colour layer (v1.1.4) =====================================
   The learning screens declared their colours with plain .class selectors, which
   a host theme's .entry-content p/h3/li rules can override and collapse contrast.
   1) a dark-text floor for bare elements; 2) light text forced inside every dark
   surface; 3) every original colour intent re-emitted at #rlaif-root specificity
   so it always beats the theme while preserving the exact design. ============= */
#rlaif-root p,#rlaif-root li,#rlaif-root ul,#rlaif-root ol,#rlaif-root span,#rlaif-root strong,#rlaif-root b,#rlaif-root em,#rlaif-root small,#rlaif-root td,#rlaif-root th,#rlaif-root h1,#rlaif-root h2,#rlaif-root h3,#rlaif-root h4,#rlaif-root label,#rlaif-root div{color:var(--ink);}
#rlaif-root a{color:var(--g700);}
#rlaif-root .rlaif-lcard,#rlaif-root .rlaif-lcard *,#rlaif-root .rlaif-hookcard,#rlaif-root .rlaif-hookcard *,#rlaif-root .rlaif-deep .regtext,#rlaif-root .rlaif-deep .regtext *,#rlaif-root .rlaif-deep .takeaway,#rlaif-root .rlaif-deep .takeaway *,#rlaif-root .rlaif-mhead,#rlaif-root .rlaif-mhead *,#rlaif-root .rlaif-flash-face.front,#rlaif-root .rlaif-flash-face.front *,#rlaif-root .rlaif-rankup,#rlaif-root .rlaif-rankup *,#rlaif-root .rlaif-tag,#rlaif-root .rlaif-tag-trap,#rlaif-root .rlaif-tag-review,#rlaif-root .rlaif-tag-deep,#rlaif-root .rlaif-sbtn,#rlaif-root .rlaif-sbtn *,#rlaif-root .rlaif-rung,#rlaif-root .rlaif-mod-no,#rlaif-root .rlaif-chapter-no,#rlaif-root .rlaif-chip-rank{color:#fff;}
#rlaif-root .rlaif-brand{color:var(--g900);}
#rlaif-root .rlaif-brand span{color:var(--g500);}
#rlaif-root .rlaif-chip{color:var(--g900);}
#rlaif-root .rlaif-chip-rank{color:#fff;}
#rlaif-root .rlaif-chip-streak{color:#7A611A;}
#rlaif-root .rlaif-ring span{color:var(--g900);}
#rlaif-root .rlaif-card h2{color:var(--g900);}
#rlaif-root .rlaif-card h3{color:var(--g900);}
#rlaif-root .rlaif-kicker{color:var(--g500);}
#rlaif-root .rlaif-sub{color:var(--sub);}
#rlaif-root .rlaif-fine{color:var(--sub);}
#rlaif-root .rlaif-err{color:var(--bad);}
#rlaif-root .rlaif-link{color:var(--g700);}
#rlaif-root .rlaif-banner-gold{color:#6B551A;}
#rlaif-root .rlaif-banner-nudge{color:var(--g900);}
#rlaif-root .rlaif-form input{color:var(--ink);}
#rlaif-root .rlaif-form select{color:var(--ink);}
#rlaif-root .rlaif-label{color:var(--g700);}
#rlaif-root .rlaif-dual .cap{color:var(--sub);}
#rlaif-root .rlaif-track-head{color:var(--g500);}
#rlaif-root .rlaif-mod-no{color:#fff;}
#rlaif-root .rlaif-mod.track .rlaif-mod-no{color:#3A2E07;}
#rlaif-root .rlaif-mod-body strong{color:var(--g900);}
#rlaif-root .rlaif-mod-body span{color:var(--sub);}
#rlaif-root .rlaif-pill{color:var(--sub);}
#rlaif-root .rlaif-pill.donep{color:var(--g700);}
#rlaif-root .rlaif-pill.mid{color:#7A611A;}
#rlaif-root .rlaif-pill.low{color:var(--bad);}
#rlaif-root .rlaif-mod-go{color:var(--g500);}
#rlaif-root .rlaif-mod.track .rlaif-mod-go{color:var(--gold);}
#rlaif-root .rlaif-tag{color:#fff;}
#rlaif-root .rlaif-tag-review{color:#3A2E07;}
#rlaif-root .rlaif-tag-trap{color:#fff;}
#rlaif-root .rlaif-tag-deep{color:#3A2E07;}
#rlaif-root .rlaif-count{color:var(--sub);}
#rlaif-root .rlaif-provision{color:#2C3A34;}
#rlaif-root .rlaif-q{color:var(--g900);}
#rlaif-root .rlaif-free{color:var(--ink);}
#rlaif-root .rlaif-src{color:var(--sub);}
#rlaif-root .rlaif-verdict.ok{color:var(--g900);}
#rlaif-root .rlaif-verdict.bad{color:var(--bad);}
#rlaif-root .rlaif-bonus{color:var(--g700);}
#rlaif-root .rlaif-bonus.combo{color:#7A611A;}
#rlaif-root .rlaif-lapse strong{color:var(--g900);}
#rlaif-root .rlaif-lapse p{color:#33443D;}
#rlaif-root .rlaif-expl{color:#33443D;}
#rlaif-root .rlaif-summary{color:var(--g700);}
#rlaif-root .rlaif-poll h4{color:var(--g900);}
#rlaif-root .rlaif-poll-row .pct{color:var(--g700);}
#rlaif-root .rlaif-poll-row.mine .lbl{color:var(--g900);}
#rlaif-root .rlaif-flash-face.front{color:#fff;}
#rlaif-root .rlaif-flash-face.back{color:var(--g900);}
#rlaif-root .rlaif-rankup .inner{color:#fff;}
#rlaif-root .rlaif-rankup h2{color:#fff;}
#rlaif-root .rlaif-rankup p{color:var(--g100);}
#rlaif-root .rlaif-rankup .rank{color:var(--gold);}
#rlaif-root .rlaif-wall-row .rank{color:var(--g500);}
#rlaif-root .rlaif-wall-row .name{color:var(--g900);}
#rlaif-root .rlaif-wall-row .tier.distinction{color:#7A611A;}
#rlaif-root .rlaif-wall-row .tier.merit{color:var(--g700);}
#rlaif-root .rlaif-wall-row .tier.completion{color:var(--sub);}
#rlaif-root .rlaif-wall-row .acc{color:var(--g900);}
#rlaif-root .rlaif-jstep{color:var(--sub);}
#rlaif-root .rlaif-jstep.on{color:var(--g900);}
#rlaif-root .rlaif-jstep.done{color:var(--g500);}
#rlaif-root .rlaif-lcount{color:var(--sub);}
#rlaif-root /* concept card */ .rlaif-lcard{color:#fff;}
#rlaif-root .rlaif-ltag{color:var(--gold);}
#rlaif-root .rlaif-lcard h3{color:#fff;}
#rlaif-root .rlaif-blabel{color:var(--g500);}
#rlaif-root .rlaif-beat p{color:var(--ink);}
#rlaif-root .rlaif-beat.bad .rlaif-blabel{color:var(--bad);}
#rlaif-root .rlaif-beat.bad p{color:var(--ink);}
#rlaif-root .rlaif-beat.trip .rlaif-blabel{color:var(--gold);}
#rlaif-root .rlaif-beat.trip p{color:#FDF3D2;}
#rlaif-root .rlaif-beat.hook .rlaif-blabel{color:var(--gold);}
#rlaif-root .rlaif-beat.linkb p{color:#CDE4D8;}
#rlaif-root .rlaif-lprov{color:#8FBFA9;}
#rlaif-root /* deep dive */ .rlaif-deep .regtext{color:#EAF6EF;}
#rlaif-root .rlaif-deep .regtext .rnum{color:var(--gold);}
#rlaif-root .rlaif-deep .beatbox .bl{color:var(--g500);}
#rlaif-root .rlaif-deep .beatbox p{color:#2C3A34;}
#rlaif-root .rlaif-deep .takeaway{color:#fff;}
#rlaif-root .rlaif-deep .takeaway .bl{color:var(--gold);}
#rlaif-root .rlaif-deep .takeaway p{color:#F0FAF5;}
#rlaif-root .rlaif-deep .pnote .bl{color:#7A611A;}
#rlaif-root .rlaif-deep .pnote p{color:#5C4A14;}
#rlaif-root .rlaif-reviewflag{color:var(--bad);}
#rlaif-root .rlaif-stag{color:#3A2E07;}
#rlaif-root .rlaif-story h3{color:var(--g900);}
#rlaif-root .rlaif-story p{color:#2C3A34;}
#rlaif-root .rlaif-story .num{color:var(--g700);}
#rlaif-root .rlaif-crow span:first-child{color:#2C3A34;}
#rlaif-root .rlaif-crow span:last-child{color:var(--g700);}
#rlaif-root .rlaif-crow.hl span:last-child{color:var(--gold);}
#rlaif-root .rlaif-mhead{color:#fff;}
#rlaif-root .rlaif-mcell.lead{color:var(--g900);}
#rlaif-root .rlaif-mhead .rlaif-mcell{color:#fff;}
#rlaif-root /* hook / summary / tip / ladder */ .rlaif-hookcard{color:#fff;}
#rlaif-root .rlaif-hookcard .rlaif-ltag{color:var(--gold);}
#rlaif-root .rlaif-hookcard h3{color:#fff;}
#rlaif-root .rlaif-hookcard p{color:#E9F5EF;}
#rlaif-root .rlaif-remember li{color:#2C3A34;}
#rlaif-root .rlaif-remember li::marker{color:var(--g500);}
#rlaif-root .rlaif-tiplabel{color:#7A611A;}
#rlaif-root .rlaif-tip p{color:#5C4A14;}
#rlaif-root .rlaif-rung{color:#fff;}
#rlaif-root .rlaif-rung.spec{color:#2C3A34;}
#rlaif-root .rlaif-sbtn{color:#fff;}
#rlaif-root .rlaif-sbtn.wa{color:#08331C;}
#rlaif-root .rlaif-emeta{color:var(--sub);}
#rlaif-root .rlaif-esub{color:var(--g900);}
#rlaif-root .rlaif-emailcard p{color:#2C3A34;}
#rlaif-root /* ===== certificate verification page ===== */ .rlaif-verify{color:#1D2A25;}
#rlaif-root .rlaif-verify.rlaif-ok h3{color:#0B3D2E;}
#rlaif-root .rlaif-verify.rlaif-bad h3{color:#B3462D;}
#rlaif-root .rlaif-verify td:first-child{color:#5B6E66;}
#rlaif-root .rlaif-flabel{color:var(--g500);}
#rlaif-root .rlaif-input{color:var(--ink);}
#rlaif-root .rlaif-bandlabel{color:var(--g500);}
#rlaif-root .rlaif-chapter-no{color:#fff;}
#rlaif-root .rlaif-chapter-name{color:var(--g900);}
#rlaif-root .rlaif-cap{color:var(--sub);}
#rlaif-root .rlaif-regtext-label{color:var(--g500);}
#rlaif-root .rlaif-regtext p{color:var(--ink);}
#rlaif-root .rlaif-pnote-label{color:#7A611A;}
#rlaif-root .rlaif-pnote p{color:#4A3D12;}
#rlaif-root .rlaif-reveal-head{color:var(--g900);}
#rlaif-root .rlaif-reveal.bad .rlaif-reveal-head{color:var(--bad);}
#rlaif-root .rlaif-srcline{color:var(--sub);}
#rlaif-root .rlaif-certstat{color:var(--g900);}
#rlaif-root .rlaif-sharebtn{color:var(--g900);}
#rlaif-root overriding one side and collapsing text into its background. Re-assert BOTH background and colour{color:var(--ink);}
#rlaif-root id-scoped so the theme can't win{color:var(--ink);}

#rlaif-root .rlaif-lprov{color:#B9E0CE;}

/* ---------- !important safety net (v1.1.9) -------------------------------
   Specificity-only fixes lose to a theme/page-builder rule that also uses
   !important. This is scoped ONLY to the two highest-risk, most-reported
   elements — the primary action button and drill options — because a
   blanket !important on generic tags (p/div/span) would itself override the
   more specific, correctly-coloured labels/tags/muted-text rules elsewhere
   in this file (importance beats specificity regardless of selector detail).
   Scoped to #rlaif-root so it cannot leak into the rest of the site. */
#rlaif-root .rlaif-btn{background:var(--g700) !important;color:#fff !important;border:none !important;}
#rlaif-root .rlaif-btn:hover{background:var(--g900) !important;color:#fff !important;}
#rlaif-root .rlaif-opt{background:#fff !important;color:var(--ink) !important;}
#rlaif-root .rlaif-opt.sel{background:var(--g100) !important;color:var(--g900) !important;}
#rlaif-root .rlaif-opt.right{background:var(--g50) !important;color:var(--g900) !important;}
#rlaif-root .rlaif-opt.wrong{background:var(--bad-bg) !important;color:var(--ink) !important;}
#rlaif-root .rlaif-card{background:#fff !important;}
