*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f3f7f5;color:#193e43;font:18px/1.65 Arial,sans-serif}header{background:#164f59;color:white;padding:18px max(5%,calc((100vw - 960px)/2))}header a{color:white}main{max-width:960px;margin:auto;padding:28px 22px 70px}h1{font-size:clamp(32px,5vw,52px);line-height:1.12}h2{font-size:29px;line-height:1.25}h3{line-height:1.3}.tag{color:#557074;font-weight:bold;font-size:14px;text-transform:uppercase;letter-spacing:.1em}section,article.card{background:white;border:1px solid #cdded8;border-radius:18px;padding:26px;margin:24px 0}nav{display:flex;gap:10px;flex-wrap:wrap}a{color:#165968}nav a,button,.button{display:inline-block;border:0;border-radius:9px;background:#175b66;color:#fff;padding:12px 16px;text-decoration:none;font:700 16px Arial;cursor:pointer}button:hover,.button:hover{background:#287585}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #db9900;outline-offset:3px}label{display:block;margin-top:14px}input[type=text],textarea,select{font:inherit;max-width:100%;padding:9px;border:1px solid #79979c;border-radius:7px}textarea{width:100%}.story{max-width:720px;font-size:20px;line-height:1.85}.story p{margin-bottom:24px}.n{display:inline-block;color:#628079;font-size:14px;margin-right:7px}.hint,details{background:#eef6f2;padding:15px;border-radius:10px;margin:16px 0}summary{cursor:pointer;font-weight:bold}.feedback{min-height:1.5em;font-weight:bold}.timer{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.timer output{font-size:24px;font-variant-numeric:tabular-nums}.timeline{border-left:5px solid #edbc44;padding-left:18px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.quiz label{padding:9px;background:#f1f5f4;border-radius:7px}fieldset{border:0;padding:0;margin:25px 0}legend{font-weight:bold}footer{text-align:center;padding:24px}.accent{background:#fff5d5;border-color:#e3c45d}.demo{padding:18px;background:#eef6f2}.demo p{font-size:16px}table{border-collapse:collapse;width:100%}td,th{text-align:left;padding:10px;border-bottom:1px solid #ddd}@media(max-width:600px){section{padding:18px}main{padding:20px 12px}}@media print{nav,button,.timer,header,footer{display:none}body{font-size:12pt;background:white}section{break-inside:avoid;border:0}.story{font-size:12pt}textarea{height:50px}}