:root{--navy:#102f46;--teal:#087b72;--ink:#193342;--muted:#526773;--paper:#f4f7f6;--line:#d8e3e2}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 system-ui,sans-serif}header{display:flex;align-items:center;justify-content:space-between;padding:23px 5vw;background:white;border-bottom:1px solid var(--line);gap:20px}.brand{font-size:25px;font-weight:850;letter-spacing:.1em;text-decoration:none;color:var(--navy)}.brand span{display:block;font-size:10px;letter-spacing:.19em;color:var(--teal)}#identity{font-size:14px}main{max-width:1160px;margin:auto;padding:55px 26px 80px}.hero{max-width:850px}.eyebrow{font-size:12px;font-weight:750;letter-spacing:.16em;color:var(--teal)}h1{font-size:clamp(36px,5vw,64px);line-height:1.12;letter-spacing:-.04em;margin:22px 0}h2{font-size:25px;line-height:1.3}h3{font-size:20px}.hero>p{max-width:650px;font-size:20px;color:var(--muted)}.tags{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0}.tags span,.badge{padding:5px 13px;background:#e0efea;color:#15594e;border-radius:30px;font-size:13px}.entry,.card{background:white;border:1px solid var(--line);border-radius:16px;padding:30px;margin-top:28px}.entry{max-width:650px;box-shadow:0 15px 40px #19334208}label{display:block;font-size:15px;font-weight:600;margin:14px 0 6px}input,textarea,select{font:inherit;width:100%;padding:12px 14px;border:1px solid #9bafaf;border-radius:7px;background:white;color:var(--ink)}textarea{min-height:130px}button,.button{display:inline-flex;justify-content:space-between;align-items:center;gap:22px;border:0;background:var(--teal);color:white;padding:13px 22px;border-radius:7px;font:600 15px/1.4 system-ui;cursor:pointer;text-decoration:none;margin:16px 8px 0 0}button:hover,.button:hover{background:#056059}button:disabled{opacity:.5;cursor:wait}.secondary{background:#e1e9e9;color:var(--navy)}.small{font-size:13px;color:var(--muted)}.layout{display:grid;grid-template-columns:280px 1fr;gap:35px}.sidebar{font-size:14px}.sidebar button{display:block;text-align:left;width:100%;margin:0 0 5px;padding:10px 12px;background:transparent;color:var(--muted);font-weight:450}.sidebar button.active{background:var(--navy);color:white}.sidebar button:disabled{opacity:.6;cursor:default}progress{width:100%;height:10px;accent-color:var(--teal)}.lesson h1{font-size:38px}.lesson li{margin:14px 0}.explanation{border-left:4px solid var(--teal);background:#eaf3ef;padding:18px 22px;margin:24px 0}.contact{white-space:pre-line;font-size:15px}.actions{display:flex;justify-content:space-between;flex-wrap:wrap}fieldset{border:0;padding:0;margin:0}legend{font-weight:700;font-size:20px;margin-bottom:15px}.option{display:flex;align-items:flex-start;gap:14px;padding:14px;border:1px solid var(--line);border-radius:8px;font-weight:400;cursor:pointer}.option:has(input:checked){background:#eaf3ef;border-color:var(--teal)}input[type=radio],input[type=checkbox]{width:auto;accent-color:var(--teal);margin-top:6px}.feedback{border-bottom:1px solid var(--line);padding:15px 0}.feedback strong{color:var(--teal)}.certificate{background:white;padding:50px;text-align:center;border:3px solid var(--teal)}.certificate h1{font:40px Georgia,serif}.certificate h2{font:34px Georgia,serif}.certificate .serial{font-size:12px;word-break:break-all}footer{padding:24px 5vw;border-top:1px solid var(--line);font-size:12px;color:var(--muted);display:flex;justify-content:space-between;gap:20px}footer a{color:var(--muted)}#message:not(:empty){position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:#7e2424;color:white;padding:15px 24px;max-width:90vw;border-radius:10px;z-index:10}table{border-collapse:collapse;width:100%;font-size:13px}td,th{padding:12px;text-align:left;border-bottom:1px solid var(--line)}.scroll{overflow-x:auto}a{color:var(--teal)}:focus-visible{outline:3px solid #df9f28;outline-offset:3px}@media(max-width:760px){.layout{grid-template-columns:1fr}.sidebar{max-height:240px;overflow:auto}main{padding:30px 18px}.card,.entry{padding:22px}header{padding:18px;align-items:flex-start}#identity{max-width:160px;text-align:right}.certificate{padding:25px}.lesson h1{font-size:30px}}@media print{header,footer,.no-print,#message{display:none!important}body{background:white}main{max-width:none;padding:0}.certificate{page-break-inside:avoid;margin:20px}.card{border:0}}

@media print{@page{size:letter portrait;margin:0.55in}.certificate{margin:0;padding:24px;font-size:12px;line-height:1.4}.certificate h1{font-size:30px;margin:18px 0}.certificate h2{font-size:26px}.certificate h3{font-size:17px}.certificate p{margin:12px 0}.certificate .small{font-size:10px}.certificate .serial{font-size:10px}}
