:root{--navy:#092638;--teal:#087f80;--gold:#edbd61;--ink:#153344;--paper:#f2f6f7;--line:#d9e5e7}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;padding-bottom:100px}[hidden]{display:none!important}h1,h2,h3{line-height:1.18}h1{font-size:clamp(2rem,5vw,3.8rem);letter-spacing:-.045em;margin:.35em 0}h2{font-size:1.6rem}p{margin:.7em 0}a{color:#066c74}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0;border-radius:10px;padding:.8rem 1.1rem;background:var(--teal);color:white;font-weight:700}button:hover{filter:brightness(.93)}button:disabled{opacity:.6;cursor:wait}.secondary{background:#e7f1f2;color:var(--ink);border:1px solid #c8dfe2}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid #b87915;outline-offset:3px}input,select,textarea{display:block;width:100%;padding:.75rem;border:1px solid #b8cbd0;border-radius:8px;background:white;color:var(--ink)}label{display:block;font-weight:600;margin:1rem 0}textarea{resize:vertical}.eyebrow{font-size:.77rem;font-weight:800;letter-spacing:.16em;color:var(--teal)}.muted{font-size:.9rem;color:#536773}.gate{min-height:90vh;display:grid;place-items:center;padding:20px}.login{display:grid;grid-template-columns:.85fr 1.15fr;max-width:1000px;width:100%;background:white;box-shadow:0 16px 60px #09263820;border-radius:20px;overflow:hidden}.login img{width:100%;height:100%;object-fit:cover}.login-body{padding:36px}.login h1{font-size:2.25rem}header{background:var(--navy);color:white;display:flex;align-items:center;gap:20px;padding:18px max(20px,calc((100vw - 1200px)/2))}.brand{color:white;text-decoration:none;font-size:1.45rem;letter-spacing:.2em;font-weight:800}#accountEmail{margin-left:auto;font-size:.85rem;overflow-wrap:anywhere}main{max-width:1240px;margin:auto;padding:28px 20px}.hero{display:grid;grid-template-columns:1.5fr 1fr;gap:30px;padding:25px 0 30px}.highlight{border-radius:20px;background:var(--navy);color:white;padding:30px;align-self:center}.highlight strong{font-size:1.3rem}progress{width:100%;accent-color:var(--gold);height:18px;margin:15px 0}nav{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:25px}nav button{background:white;color:var(--ink);border:1px solid var(--line)}nav button.selected{background:var(--navy);color:white}.tab{display:none}.tab.active{display:block}.card{background:white;border:1px solid var(--line);border-radius:16px;padding:25px;margin-bottom:20px}.tool-layout{display:grid;grid-template-columns:300px 1fr;gap:20px}.tool-list{display:grid;gap:6px;max-height:600px;overflow:auto}.tool-list button{text-align:left;background:#f2f7f8;color:var(--ink);font-size:.92rem;font-weight:600}.tool-list button.current{background:var(--navy);color:white}.grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.actions{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.result-number{display:flex;flex-direction:column;padding:25px;background:#e7f7f4;border-radius:14px;margin:25px 0}.result-number strong{font-size:clamp(2rem,6vw,3rem);color:#065959;overflow-wrap:anywhere}#calcError,#loginStatus{color:#a23128}#globalStatus:not(:empty){padding:12px;border-radius:8px;background:#e2f0f1}li{margin:.6rem 0}.exercise{border-top:1px solid var(--line);padding:20px 0}.exercise summary{cursor:pointer;font-weight:700;color:#066b72}.solution{padding:15px;background:#f0f6f7;border-radius:8px}.history-item{border-top:1px solid var(--line);padding:20px 0}.history-item h3{overflow-wrap:anywhere}.table-scroll{overflow-x:auto;max-height:420px}table{border-collapse:collapse;width:100%;font-size:.85rem}th,td{padding:9px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}th{background:#e7f1f2;position:sticky;top:0}footer{margin:30px 0;font-size:.85rem;color:#536773}.install-bar{position:fixed;bottom:0;left:0;right:0;background:white;padding:12px 20px;border-top:1px solid var(--line);display:flex;align-items:center;gap:15px;z-index:10;box-shadow:0 -4px 16px #09263810}.install-bar span{font-size:.85rem}dialog{max-width:550px;width:calc(100% - 30px);border:0;border-radius:16px;padding:28px;color:var(--ink)}dialog::backdrop{background:#09263899}@media(max-width:800px){.hero,.tool-layout{grid-template-columns:1fr}.tool-list{max-height:230px}.hero{gap:15px}.login-body{padding:24px}.login{grid-template-columns:1fr}.login img{max-height:260px;object-position:center 30%}.grid{grid-template-columns:1fr}header{flex-wrap:wrap;gap:10px}#accountEmail{font-size:.75rem}.card{padding:18px}.install-bar{flex-wrap:wrap;gap:5px}.install-bar button{font-size:.85rem}main{padding:16px}.brand{font-size:1.15rem}.highlight{padding:22px}}
:root{--navy:#093c39;--teal:#087d6b;--gold:#e8b760}.dialog-line{padding:18px;border:1px solid var(--line);border-radius:12px;margin:12px 0;background:#f6faf8}.dialog-line strong{color:#075b49;font-size:.85rem}.dialog-line p[lang]{font-size:1.12rem;font-weight:600}.dialog-line .translation{color:#536773}.dialog-line button{padding:.45rem .8rem;font-size:.85rem}.question-options{display:grid;gap:8px;margin:15px 0}.question-options label{margin:0;display:flex;align-items:center;gap:12px;border:1px solid var(--line);padding:12px;border-radius:8px;font-weight:500}.question-options input{width:20px;height:20px;flex-shrink:0}.feedback{border-radius:9px;padding:14px;background:#e7f6ee}.flashcard{background:var(--navy);color:white;border-radius:18px;text-align:center;min-height:220px;display:flex;flex-direction:column;justify-content:center;padding:24px}.flashcard strong{font-size:clamp(1.8rem,6vw,2.8rem);overflow-wrap:anywhere}.flashcard .eyebrow{color:var(--gold)}.flashcard p{font-size:1.2rem}.voice-controls h2{font-size:1.15rem}.voice-controls .grid{align-items:end}.voice-controls label{margin:.25rem 0 1rem}#draftText{background:#eef7f3;padding:20px;border-radius:12px;overflow-wrap:anywhere}.translation[hidden]{display:none}#exerciseList fieldset{border:0;margin:0;padding:0}#exerciseList legend{font-weight:700}#draftResult{margin-top:24px}.login img{object-position:center}.login h1{font-size:2.3rem}
