:root{color-scheme:dark;--bg:#08152b;--pane:#0e213b;--pane2:#112d4a;--line:#2e5070;--ink:#f3f7fd;--muted:#bed0e5;--cyan:#5ce4ee;--accent:#847aff;--good:#89efc5;--warn:#ffd69d}
*{box-sizing:border-box}html{scroll-behavior:auto}body{background:linear-gradient(140deg,#102e50 0%,#08152b 33%,#0b1f35 100%);color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI","Noto Sans Georgian",sans-serif;line-height:1.55;margin:0;font-size:15px;min-height:100vh}
button,input,textarea,select{font:inherit}button{cursor:pointer;color:var(--ink);border:1px solid #4b7799;background:#164564;padding:10px 13px;border-radius:10px;min-height:43px}button:hover{background:#1c5877}button:disabled{opacity:.6;cursor:default}.primary{background:#0a6875;border-color:#5ad1d4;font-weight:780}.primary:hover{background:#087f89}a{color:#74edfa}.header{border-bottom:1px solid var(--line);background:#091628}.header-inner{max-width:1240px;margin:auto;padding:14px 18px;display:flex;justify-content:space-between;align-items:center;gap:14px}.brand{font-weight:850;font-size:17px;text-decoration:none;color:#fff;display:flex;align-items:center;gap:9px}.brand-icon{color:var(--cyan);font-size:27px}.brand small{font-size:9px;color:var(--cyan);letter-spacing:2px}.back{text-decoration:none;color:#c4e6f2;font-size:13px}.shell{max-width:1240px;margin:auto;padding:22px 18px}.welcome{padding:25px 0 7px}.eyebrow{color:var(--cyan);font-size:12px;font-weight:850;letter-spacing:1.5px}.welcome h1{font-size:clamp(29px,4.5vw,54px);letter-spacing:-1px;line-height:1.1;margin:14px 0}.welcome h1 span{color:var(--cyan)}.welcome>p{color:var(--muted);max-width:900px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:20px;max-width:890px}.stats>div{padding:13px 16px;border:1px solid var(--line);background:#142d4a;border-radius:13px}.stats b{display:block;font-size:clamp(19px,3vw,29px);line-height:1.2;color:var(--cyan)}.stats small{color:#c3d9eb}.caution{font-size:12px;background:#193249;border-left:3px solid #ddb66a;border-radius:8px;padding:10px 13px;line-height:1.7}
.toolbar{margin:19px 0 17px;display:flex;flex-wrap:wrap;gap:12px;align-items:end}.toolbar label,.input-label{display:block;font-size:12px;color:#c3d9ed;font-weight:800;margin-bottom:5px}.toolbar select,.toolbar input,.answer-row input,textarea{border:1px solid #527b9b;border-radius:10px;background:#091d34;color:var(--ink);padding:10px 12px;width:100%;min-height:43px}.select-wrap{min-width:155px}.search-wrap{flex:1;min-width:205px;max-width:470px}.results{font-size:13px;color:#c7dfed;padding-bottom:9px}.layout{display:grid;grid-template-columns:minmax(230px,290px) minmax(0,1fr);gap:17px;align-items:start}.sidebar,.lesson{border-radius:16px;background:var(--pane);border:1px solid var(--line);min-width:0}.sidebar{padding:14px}.side-title{display:flex;align-items:center;justify-content:space-between}.side-title h2{font-size:17px;margin:4px 0 13px}.side-title span{font-size:12px;color:var(--muted)}.topic-list{display:grid;gap:6px;max-height:72vh;overflow:auto;overscroll-behavior:contain}.topic-item{display:block;text-align:left;width:100%;border-color:#2d506d;background:#112a45;font-size:13px;padding:10px 11px;min-height:50px}.topic-item[aria-current=true]{border-color:var(--cyan);background:#12506a}.topic-item .topic-en{display:block;color:#aacee0;font-size:11px;margin:3px 0 0}.topic-item .tick{color:var(--good)}.lesson{padding:21px 22px}.lesson-top{display:flex;gap:12px;justify-content:space-between}.lesson h2{font-size:clamp(21px,3vw,29px);margin:5px 0 0;line-height:1.25}.engtitle{color:#b4dce7;margin:4px 0 14px}.status-pill{flex-shrink:0;color:#eff9fc;font-size:11px;border:1px solid #416d83;border-radius:99px;padding:6px 10px;height:max-content}.notice{font-size:13px;color:#bfd9e6;background:#103047;border-radius:10px;padding:10px 13px;line-height:1.65}.section{border-top:1px solid #294962;margin-top:22px;padding-top:17px}.section h3{font-size:18px;margin:0 0 12px}.section-title{display:flex;align-items:center;justify-content:space-between}.section-title span{color:var(--muted);font-size:12px}.word-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(152px,1fr));gap:9px}.word-card{border-radius:10px;padding:11px;border:1px solid #315c78;background:#102b48;min-width:0;overflow-wrap:anywhere}.word-card b{display:block;color:#7be8f6;font-size:16px}.word-card .translation{display:block;color:#dfecf7;margin:5px 0 9px;font-size:13px}.word-card button{font-size:12px;min-height:34px;padding:5px 8px}.grammar-rule{color:#e1effa}.examples{background:#0b3448;border-left:3px solid #65d5ea;border-radius:10px;padding:12px 15px}.examples p{margin:3px 0 7px}.examples p+p{color:#c5e7e3;font-size:13px}.practice{border:1px solid #335b76;background:#0c2942;border-radius:12px;padding:14px;margin-top:14px}.practice h4{margin:0 0 7px}.options{display:flex;flex-wrap:wrap;gap:8px}.options button{min-height:40px;max-width:100%;overflow-wrap:anywhere;flex:1 1 130px}.options button.correct{border-color:#7be7b7;background:#175846}.options button.wrong{border-color:#ffd1a0;background:#65412f}.helper{font-size:13px;color:var(--muted)}.actions{display:flex;flex-wrap:wrap;gap:8px;margin:11px 0}.answer-row{display:flex;gap:9px}.answer-row input{flex:1;min-width:0}.answer-row button{flex-shrink:0}.feedback{min-height:23px;font-size:13px;font-weight:750;color:var(--good)}.feedback.warn{color:var(--warn)}textarea{resize:vertical;display:block;margin-bottom:10px}.footer-actions{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:26px}.loading{padding:16px}.error{background:#53282c;border:1px solid #e69799;padding:15px;border-radius:10px}.footer{margin:30px 0 12px;font-size:12px;color:#adc8dd}.skip-link{position:absolute;top:-70px;left:12px;background:#fff;color:#222;z-index:999;padding:9px}.skip-link:focus{top:12px}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #f8e49d;outline-offset:2px}
@media(max-width:810px){.layout{grid-template-columns:1fr}.topic-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:260px;overflow:auto}.sidebar,.lesson{padding:13px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.header-inner{flex-wrap:wrap}}
@media(max-width:440px){.topic-list{grid-template-columns:1fr}.stats>div{padding:10px}.answer-row{flex-wrap:wrap}.answer-row button{width:100%}.lesson-top{display:block}.status-pill{display:inline-block;margin-bottom:10px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Ultra 720 additions: bounded, readable exercise panels without animation loops. */
.sentence-selected{min-height:55px;margin:10px 0 15px;padding:12px 15px;border:1px dashed #4b8cab;border-radius:12px;background:#091d33;color:#e5f7ff;line-height:1.9;word-break:break-word}
.sentence-selected:empty:before{content:'აირჩიე სიტყვები ქვემოთ მოცემული ღილაკებით…';color:#86a3be}
#sentence-parts button{min-width:44px;min-height:42px}
#sentence-parts button:disabled{opacity:.36;cursor:not-allowed}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Lighter listening practice and first-appearance cards */
.word-novelty{color:#a3e7ee;font-size:11px;font-weight:700;padding:2px 7px;border:1px solid #29556c;border-radius:999px;width:max-content}
.vocab-tools{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:12px 0 8px;color:#b9cbe1;font-size:13px}
.vocab-tools label{display:inline-flex;align-items:center;gap:7px;cursor:pointer}
.vocab-tools input{accent-color:#32d4e6;width:17px;height:17px}
.advanced-listening{border:1px solid #31536c;border-radius:16px;padding:16px;background:#0b1d32}
.advanced-listening .answers{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.advanced-listening input{flex:1;min-width:170px;background:#09182a;color:#f8faff;border:1px solid #496077;padding:12px;border-radius:9px}
#advanced-transcript{white-space:pre-wrap;border-left:3px solid #39cfe0;padding:10px;background:#092036;margin:14px 0}
@media(prefers-reduced-motion: reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.grammar-rule{white-space:pre-line}
