/* NOLIQO V4 polish: high contrast lesson content, distinctive worlds and five interaction types. */
:root{--paper:#0c1923;--ink:#f0f9f5;--text:#eff9f3;--muted:#b4ccc7;--line:#35565b}
/* Interactive lessons — remove remnants of the light Project L theme. */
.lesson-hero-v4{background:radial-gradient(circle at 96% 12%,#3b8b707e,transparent 52%),linear-gradient(135deg,#143c45,#1d3850);color:#f5fff7;border:1px solid #44806b;min-height:186px;box-shadow:0 12px 26px #0003;padding:22px;display:flex;align-items:center;isolation:isolate}
.lesson-hero-v4::after{display:none}.lesson-hero-v4 .lesson-copy{position:relative;z-index:2;width:72%;max-width:260px}.lesson-hero-v4 h2{font-size:23px;line-height:1.16;color:#f7fff7;margin:12px 0 10px;overflow-wrap:anywhere}.lesson-hero-v4 p{color:#c0ded7;line-height:1.55;font-size:12px}.lesson-hero-v4 .eyebrow{color:#bdffa5}
.lesson-mascot{position:absolute;right:-10px;bottom:-1px;width:127px;height:165px;object-fit:contain;object-position:bottom;opacity:.94;filter:drop-shadow(0 10px 15px #010f15a8);z-index:1}
.quote,.book-quote{background:#163541!important;color:#e5f7f1!important;border:1px solid #345d64!important;box-shadow:none;overflow-wrap:anywhere}
.quote{font-size:13px;line-height:1.65}.formula-quote{font-weight:850;color:#d8ff99!important;background:#214338!important;border-color:#5f9f70!important}
.wordrow{background:#183340!important;border:1px solid #34535f!important;color:#effaf3;min-height:57px}
.wordrow strong{color:#f4fff7!important;font-weight:770;font-size:14px}.wordrow small{color:#bbd7d1!important;font-size:11px}
.wordrow .small-btn{flex-shrink:0;max-width:115px;white-space:nowrap}
.small-btn{background:#254d43!important;color:#defbb9!important;border:1px solid #467b65!important}
.text-body,.story-text{font-size:14px;line-height:1.78;color:#d7ede7!important}
.text-body strong{color:#f3fff6!important}
.content-section h3{font-size:16px;color:#f5fff8;margin-bottom:11px}
.lesson-hero-v4+.content-section{margin-top:25px}
.panel .hint{color:#bad5cf}.notice{color:#bdd7d0}
.vocab-translation{color:#c0ddd5!important;font-size:12px;line-height:1.55}
.topic-card .round-icon{color:#daffb0;background:#21413a}
/* Different worlds visually signal different chapters, not recolored duplicate islands. */
.world-map{gap:22px}
.world{border-color:#32636a;background:linear-gradient(155deg,#184845,#0e2d3a 81%);transition:transform .18s,border-color .2s}
.world:nth-child(2){background:linear-gradient(160deg,#234961,#182c48)}
.world:nth-child(3){background:linear-gradient(155deg,#6b4a56,#302d48)}
.world:nth-child(4){background:linear-gradient(145deg,#235b73,#102f4c)}
.world:nth-child(5){background:linear-gradient(155deg,#3d567f,#1d2f51)}
.world:nth-child(6){background:linear-gradient(160deg,#504777,#25315a)}
.world:nth-child(7){background:linear-gradient(160deg,#443b78,#201f4b)}
.world:nth-child(8){background:linear-gradient(155deg,#23406b,#151d4b)}
.world:nth-child(3) .world-index{color:#ffca9a}.world:nth-child(5) .world-index{color:#c6e9ff}.world:nth-child(7) .world-index{color:#f0c9ff}.world:nth-child(8) .world-index{color:#b1d5ff}
.world-art{height:179px;overflow:hidden;background:radial-gradient(ellipse at 50% 58%,#72eac224,transparent 74%);margin:3px -8px}
.world:nth-child(3) .world-art{background:radial-gradient(ellipse at 50% 57%,#eeaa9625,transparent 70%)}
.world:nth-child(4) .world-art{background:radial-gradient(ellipse at 50% 57%,#67d9f329,transparent 70%)}
.world:nth-child(5) .world-art{background:radial-gradient(ellipse at 50% 57%,#b5ebff2a,transparent 70%)}
.world:nth-child(6) .world-art{background:radial-gradient(ellipse at 50% 57%,#cfbcff24,transparent 70%)}
.world:nth-child(7) .world-art{background:radial-gradient(ellipse at 50% 57%,#ba96f22b,transparent 70%)}
.world:nth-child(8) .world-art{background:radial-gradient(ellipse at 50% 57%,#9ebdfa24,transparent 70%)}
.world-art img{width:100%;height:185px;max-width:380px;object-fit:contain}
.world-active{border-color:#a5fd8b}
.world-primary,.btn:not(.secondary){transition:filter .16s,transform .16s,box-shadow .16s}
.world-primary:not(:disabled):active,.btn:not(.secondary):not(:disabled):active{transform:scale(.984)}
.world-primary:focus-visible,.btn:focus-visible,.word-chip:focus-visible,.audio-play:focus-visible,.match-choice:focus-visible{outline:2px solid #eaffba;outline-offset:3px}
/* Avoid showing inaccessible-looking lessons to beginners; all content in pilot is accessible. */
.world-level{backdrop-filter:blur(7px)}
/* Distinctive clean exercise surfaces */
.practice-variety{display:grid;gap:10px;margin-bottom:10px}
.practice-variety .mode{min-height:83px;padding:13px 15px;background:linear-gradient(145deg,#173743,#162c39);border-color:#335b62}
.practice-variety .mode:nth-child(2){background:linear-gradient(150deg,#26354b,#1a3143)}
.practice-variety .mode:nth-child(3){background:linear-gradient(150deg,#284738,#1a3536)}
.practice-variety .mode:nth-child(4){background:linear-gradient(150deg,#284259,#1a3144)}
.practice-variety .mode:nth-child(5){background:linear-gradient(150deg,#403348,#273043)}
.practice-variety .round-icon{font-size:24px}
.audio-panel{margin:16px 0;background:linear-gradient(145deg,#173d45,#223954);border:1px solid #477178;border-radius:20px;padding:20px 14px;display:grid;gap:12px;justify-items:center}
.audio-badge{font-size:11px;color:#befba3;letter-spacing:1.3px;font-weight:850}.audio-play{border:1px solid #80c6aa;background:#265a4c;color:#effff1;min-height:57px;border-radius:16px;padding:12px 22px;display:flex;align-items:center;gap:11px;font-size:15px;font-weight:850;box-shadow:0 0 25px #77e68a2e}
.audio-play svg{width:24px;height:24px}.audio-transcript-toggle{padding:7px;color:#bedbd8;background:transparent;text-decoration:underline;font-size:12px}
.audio-transcript{color:#f4fff5;line-height:1.7;border:1px solid #487269;border-radius:12px;background:#193940;padding:12px 15px;font-size:13px;width:100%}
.task-workarea{display:grid;gap:11px;margin:15px 0}.task-label{font-size:11px;font-weight:850;letter-spacing:1.4px;color:#b9e9d2}
.typed-answer{width:100%;min-height:56px;border-radius:17px;border:1.5px solid #4c7f75;background:#1b3b47;padding:15px;font-size:18px;letter-spacing:.1px;font-family:inherit;color:#fafff7;outline:none}
.typed-answer:focus{border-color:#ccff89;box-shadow:0 0 0 4px #befc8724}.typed-answer::placeholder{color:#93b7b2}.typed-answer:disabled{opacity:.82}
.sentence-builder{border:1.5px dashed #659f92;border-radius:19px;padding:13px;min-height:82px;background:#1a3640;display:flex;align-items:center;align-content:center;gap:6px;flex-wrap:wrap;color:#b7d2cb;font-size:13px}
.sentence-word{display:inline-flex;padding:9px 11px;background:#befa88;color:#17372b;font-weight:800;border-radius:10px;font-size:13px}
.word-pool{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 3px}.word-chip{min-height:45px;padding:10px 13px;background:#254653;border:1px solid #51777c;color:#f4fff8;border-radius:12px;font-size:14px;font-weight:710;transition:background .15s}
.word-chip:disabled{opacity:.29;cursor:default}
.task-actions{display:flex;gap:8px;align-items:stretch;margin-top:12px}.task-actions .btn{min-height:46px;flex:1;white-space:normal}.task-actions .btn.secondary{flex:0 0 92px}.task-actions .btn:disabled{opacity:.5}
.pair-guide{color:#dfeddf;font-size:13px;line-height:1.65}.pair-guide strong{color:#c5ff85}
.match-list{display:grid;gap:8px}.match-row{padding:10px 12px;background:#173541;border:1px solid #32545e;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:11px;font-size:13px;min-height:44px}.match-row.current{border-color:#b1ff77;background:#254637}.match-row span{color:#eefff4;font-weight:730;overflow-wrap:anywhere}.match-row b{color:#cbf6dd;font-weight:680;text-align:right;max-width:55%;font-size:12px}
.match-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.match-choice{background:#294653;border:1px solid #4b6c78;color:#ecfff4;border-radius:13px;padding:12px 9px;min-height:61px;font-size:12px;line-height:1.4;overflow-wrap:anywhere}.match-choice:disabled{opacity:.42}
/* Noli reactions: consistent cropping and multiple expressions */
.noli{object-fit:contain;object-position:center bottom;max-width:none}
.noli-hero{object-fit:contain;object-position:center bottom}
.noli-onboard{height:315px;max-height:100%;object-fit:contain}
.onboard-visual{overflow:hidden}
.noli-reaction{height:95px;width:92px;object-fit:contain;object-position:center bottom}
.noli-result{width:168px;height:195px;object-fit:contain}
.noli-profile{width:76px;height:95px;object-position:center bottom}
.feedback-noli .reaction-layout{align-items:center}.feedback-noli .feedback-explanation{line-height:1.7;color:#e4eee7}
.feedback-noli.wrong p{color:#ffe3d4}.feedback-noli.wrong .feedback-explanation{color:#ffe9db}
/* avoid misleading light colored typography on dark cards */
.mode small,.topic-card small,.lesson-card small{color:#b3d2cb}
.search-wrapper{background:#1d3b46;color:#edfff1}
.info-banner{background:#1b3c3f;color:#eaffef;border:1px solid #355d59}.info-banner p{color:#b2d2c2}
.stat-box{background:#183340;color:#f4fff7;border-color:#365d61}.stat-box strong{color:#f5fff6}.stat-box small{color:#b6d2c9}
@media(max-width:370px){.world-art{height:160px}.world-art img{height:168px}.lesson-hero-v4 .lesson-copy{width:75%}.lesson-mascot{right:-21px;width:113px;height:145px}.noli-reaction{height:76px;width:74px}.match-choice{font-size:11px}}
@media(prefers-reduced-motion:reduce){.world,.btn,.word-chip{transition:none!important}}
