:root{font-family:Arial,Helvetica,sans-serif;color:#172e3b;background:#f0f5f6;line-height:1.6;font-size:18px;--teal:#13586b;--gold:#ffdd85}*{box-sizing:border-box}body{margin:0}header{display:flex;align-items:center;justify-content:space-between;padding:12px max(16px,calc((100% - 1050px)/2));gap:12px;background:var(--teal);color:white}.brand{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none;font-weight:bold;line-height:1.2}.brand img{width:55px;height:55px;object-fit:contain;background:white;border-radius:8px}.brand small{display:block;font-size:.75em;margin-top:5px;font-weight:normal}main{max-width:1050px;margin:auto;padding:22px 16px 40px}h1,h2,h3{line-height:1.25}h1{font-size:1.9rem}h2{font-size:1.45rem;margin-top:0}h3{font-size:1.1rem}button,.button{display:inline-flex;justify-content:center;align-items:center;gap:6px;min-height:48px;padding:10px 16px;border:2px solid transparent;border-radius:10px;background:var(--teal);color:white;font:inherit;font-weight:bold;cursor:pointer;text-decoration:none;line-height:1.3}button:hover,.button:hover{filter:brightness(1.1)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #d26700;outline-offset:3px}button:disabled{opacity:.45;cursor:default}.light{background:#e6f1f3;color:#123d4d}.secondary{background:#dcecef;color:#134657}.record{background:#a53548}.record.active{background:#9e122d;outline:3px solid #ffc8c8}.tools{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.section,.hero{background:white;border-radius:16px;padding:24px;margin:20px 0;box-shadow:0 3px 12px #163e5010}.hero{display:grid;grid-template-columns:220px 1fr;gap:26px;align-items:center}.cover{width:100%;max-height:290px;object-fit:cover;border-radius:10px}.eyebrow{color:#496b76;font-size:.85rem;font-weight:bold;letter-spacing:.04em}.menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.menu a{padding:16px;border-radius:12px;text-decoration:none;background:white;border:1px solid #c6dce1;color:#164959}.menu .test{background:#fff5da;border-color:#ebdba5}.menu strong{display:block}.vocab{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.card{border:1px solid #d5e4e7;border-radius:12px;padding:12px;text-align:center;display:flex;align-items:center;flex-direction:column}.card img{width:100%;height:135px;object-fit:contain}.card strong{font-size:1.05rem}.card p{font-size:.85rem;margin:6px 0;flex:1}.card button{width:100%;font-size:.9rem}.passage{font-size:1.05rem;line-height:1.9;white-space:pre-line}.reading-image{float:right;width:40%;max-height:260px;object-fit:contain;margin:0 0 20px 22px}.clear{clear:both}.explanation{background:#edf5f7;padding:16px;border-radius:10px}.examples{display:flex;flex-wrap:wrap;gap:14px;margin:16px 0}.example{display:flex;align-items:center;gap:10px;flex:1;min-width:220px}.example img{width:90px;height:85px;object-fit:contain}.exercise{padding:18px 0;border-top:1px solid #d7e3e7;margin-top:20px}.row{padding:14px 0;border-bottom:1px solid #edf1f2}.rowlabel{display:flex;align-items:center;gap:12px;margin-bottom:8px}.rowlabel img{width:95px;height:88px;object-fit:contain}.rowlabel label{flex:1}input,textarea,select{font:inherit;font-size:18px;border:2px solid #aac1c8;border-radius:8px;padding:12px;width:100%;max-width:650px;min-height:49px;background:white;color:#172e3b}textarea{min-height:100px;resize:vertical}input.correct,select.correct,textarea.correct{border-color:#23835b;background:#effbf4}input.retry,select.retry,textarea.retry{border-color:#b46c13;background:#fff9ee}.feedback{font-size:.9rem;display:block;min-height:1.1em;margin-top:5px}.model-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.model-list button{background:#e9f2f4;color:#184b5a;font-weight:normal}.note{color:#4e6771;font-size:.88rem}.privacy{padding:12px;border-left:4px solid #bc7b31;background:#fff8eb;font-size:.85rem}.result{font-weight:bold}.pagination{display:flex;gap:10px;justify-content:space-between;margin-top:25px}.pagination a{max-width:48%}.tabs{display:flex;flex-wrap:wrap;gap:8px}.tabs a{font-size:.88rem;color:#17495b;padding:8px 12px;border-radius:20px;background:#dcebed;text-decoration:none}footer{max-width:1050px;padding:20px 16px 40px;margin:auto;font-size:.85rem}footer p{font-size:.8rem;color:#50636d}footer a{color:#13586b}#notice:not(:empty){position:fixed;bottom:18px;left:5%;right:5%;max-width:650px;margin:auto;background:#183c4b;color:white;border-radius:12px;padding:14px;z-index:5}.sr{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:650px){:root{font-size:17px}.brand img{width:42px;height:42px}.brand{font-size:.95rem}header{padding:12px}header .button{padding:9px 12px}.hero{grid-template-columns:1fr}.cover{max-height:240px;max-width:300px;margin:auto}.section,.hero{padding:18px 14px}h1{font-size:1.6rem}.menu{grid-template-columns:1fr}.vocab{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.card{padding:9px}.card img{height:110px}.reading-image{float:none;width:100%;margin:0;max-height:250px}.rowlabel{align-items:flex-start}.rowlabel img{width:80px;height:78px}.tools button{font-size:.95rem;padding:10px 12px}.pagination{flex-wrap:wrap}}@media print{header,footer,.tools,.tabs,.pagination,.menu,button{display:none}.section{box-shadow:none;break-inside:avoid}body{background:white}.hero{display:none}input,textarea,select{border:1px solid #888}main{max-width:none}}
