/* Learn: same look as the Health Pyramid and Financial Dashboard (hp.css) */
#lr{--ink:#151515;--text:#2d3a4a;--muted:#6b7686;--line:#e3e6ea;--soft:#f7f9fb;
  font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text);max-width:640px;margin:0 auto;padding:0 4px 110px;font-size:18px;line-height:1.5}
#lr *{box-sizing:border-box}
#lr h1,#lr h2,#lr h3{font-family:inherit;color:var(--ink);margin:.2em 0 .4em;line-height:1.3}
#lr h2{font-size:1.4em;font-weight:700}#lr h3{font-size:1.15em;font-weight:600}#lr h3.small{font-size:1em}
#lr p{margin:.4em 0 .8em}#lr ul{padding-left:1.1em;margin:.3em 0}#lr li{margin:.3em 0;font-size:.9em}
#lr a{color:#2a55b0;text-decoration:none}
#lr .lr-title{font:600 clamp(2rem,9vw,3.2rem)/1.1 system-ui,-apple-system,"Segoe UI",sans-serif;text-transform:uppercase;letter-spacing:.04em;color:var(--ink);text-align:center;margin:1.2rem 0 .3rem}
#lr .lr-accent{height:4px;border-radius:4px;background:linear-gradient(90deg,#8a8f98,#d9dce1);margin:.3rem auto .7rem;opacity:.8}
#lr .lr-sub{text-align:center;color:var(--muted);font-size:.95em;margin:0 auto 1rem}
#lr .k{font:600 .72em system-ui,sans-serif;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
#lr .meta,#lr .sub{color:var(--muted);font-size:.85em}
#lr .hint{color:var(--muted);font-style:italic;font-size:.9em;margin-top:1em}
#lr blockquote{margin:.6em 0;padding:.1em 0 .1em .8em;border-left:3px solid #f2c46d;font-size:.92em;color:#4a5566}
#lr .formula{font-family:ui-monospace,Menlo,monospace;background:var(--soft);border:1px solid var(--line);border-radius:6px;padding:.5em .7em;margin:.6em 0;font-size:.85em;overflow-x:auto}
#lr .bar{height:4px;background:#eceef1;border-radius:4px;overflow:hidden;margin:.5em 0}
#lr .bar i{display:block;height:100%;background:linear-gradient(90deg,#8a8f98,#b9bdc4);border-radius:4px;transition:width .4s}
#lr .btn{appearance:none;border:1px solid #ccd;border-radius:6px;padding:14px 16px;font:600 .95em system-ui,sans-serif;background:#fff;color:var(--text);min-height:52px;flex:1;cursor:pointer}
#lr .btn:hover{background:#f4f6f8}
#lr .btn.primary{background:var(--text);border-color:var(--text);color:#fff}
#lr .link{appearance:none;border:0;background:none;color:#2a55b0;font:inherit;font-size:.9em;padding:8px 0;cursor:pointer}
#lr .chip{font-size:.8em;color:var(--muted);white-space:nowrap}
/* gate */
#lr .lr-gate{padding:10vh 8px 0}
#lr .lr-gate form{display:flex;flex-direction:column;gap:10px;margin:1.4em auto;max-width:340px}
#lr .lr-gate input{font-size:1.1em;padding:14px;border:1px solid #ccd;border-radius:6px;text-align:center;color:var(--text)}
#lr .err{text-align:center;color:#b03030;min-height:1.5em;font-size:.9em}
/* home */
#lr .lr-top{display:flex;justify-content:space-between;align-items:flex-end;margin-top:1.2em}
#lr .lvl{font-size:1.25em;font-weight:700;color:var(--ink)}#lr .chips{display:flex;gap:14px}
#lr .lr-h{font:600 .78em system-ui,sans-serif;text-transform:uppercase;letter-spacing:.06em;color:var(--text);margin:1.6em 0 .5em}
#lr .tile{display:block;width:100%;text-align:left;border:1px solid var(--line);border-left:5px solid var(--c);background:#fff;border-radius:8px;padding:14px 14px 12px;margin:0 0 12px;font:inherit;color:inherit;cursor:pointer}
#lr .tile:hover{background:var(--soft)}
#lr .tile-h{display:flex;align-items:baseline;gap:10px}#lr .tile .nm{font-size:1.2em;font-weight:700;color:var(--ink);flex:1}
#lr .tile .pct{font-weight:600;color:var(--muted)}
#lr .tile-s{color:var(--muted);font-size:.85em;margin:.1em 0 .4em}
#lr .tile-g{display:grid;grid-template-columns:1fr 1fr;gap:2px 10px;font-size:.82em;color:var(--muted)}#lr .tile-g b{color:var(--text);font-weight:600}
#lr .goal{display:flex;align-items:center;gap:10px;font-size:.78em;color:var(--muted);margin-top:.4em}#lr .goal .bar{flex:1}
#lr .badges{display:flex;flex-wrap:wrap;gap:6px;margin:1.4em 0 1em}
#lr .badge{font-size:.75em;padding:3px 9px;border:1px solid var(--line);border-radius:4px;color:#a3aab5;background:#fff}
#lr .badge.on{color:var(--text);border-color:#b9bdc4;background:var(--soft);font-weight:600}
#lr .foot{text-align:center;color:var(--muted);font-size:.8em}
/* session */
#lr .lr-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:.8em}
#lr .lr-bar .ttl{font:600 .85em system-ui,sans-serif;text-transform:uppercase;letter-spacing:.06em;color:var(--ink)}
#lr .lr-meta{display:flex;justify-content:space-between;font-size:.75em;color:var(--muted);margin:.1em 0 .8em}
#lr .card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:18px 16px;min-height:40vh}
#lr .card .tag{font:600 .7em system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:.7em}
#lr .back{border-top:1px dashed var(--line);margin-top:1em;padding-top:1em;scroll-margin-top:70px}
#lr .facts{width:100%;border-collapse:collapse;margin:.6em 0;font-size:.9em}#lr .facts td{padding:6px 2px;border-bottom:1px solid #eee;vertical-align:top}#lr .facts td:first-child{color:var(--muted);width:42%}
#lr .pill{display:inline-block;border-radius:4px;padding:1px 8px;font:600 .8em system-ui,sans-serif;text-transform:uppercase;letter-spacing:.03em;color:#fff;background:#8a8f98}
#lr .v-excellent{background:#1f4e9c}#lr .v-good{background:#8db8ef;color:#1d2b40}#lr .v-mid{background:#d9d3b8;color:#3a3523}#lr .v-bad{background:#e07a7a}#lr .v-worst{background:#a61c1c}
#lr .choices{display:flex;flex-direction:column;gap:8px;margin-top:1em}
#lr .choice{appearance:none;text-align:left;border:1px solid #ccd;background:#fff;border-radius:6px;padding:12px 14px;font:inherit;font-size:.93em;color:var(--text);min-height:52px;cursor:pointer}
#lr .choices.long .choice{font-size:.85em}
#lr .choice.right{border-color:#4f9d69;background:#eff8f2}#lr .choice.wrong{border-color:#e07a7a;background:#fdf2f2}
#lr .fb{margin-top:1em;font-size:.92em}#lr .okt{color:#2f7a4a}#lr b.bad{color:#b03030}
#lr .actions{position:fixed;left:0;right:0;bottom:0;display:flex;gap:8px;padding:10px max(12px,env(safe-area-inset-left)) calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-top:1px solid var(--line);z-index:50;max-width:640px;margin:0 auto}
#lr .actions:empty{display:none}
#lr .card.done{text-align:center;min-height:0;margin-top:2em}
.lr-toast{position:fixed;top:64px;left:50%;transform:translateX(-50%);background:#2d3a4a;color:#fff;padding:10px 16px;border-radius:6px;font:600 15px system-ui,sans-serif;z-index:9999}
