:root{font-family:Georgia,serif;color:#173637;background:#f4f3ee;font-size:18px;line-height:1.6;--green:#145956;--line:#cfdbd6}*{box-sizing:border-box}body{margin:0}header{display:flex;justify-content:space-between;gap:25px;align-items:center;padding:25px 5vw;border-bottom:1px solid var(--line);background:#fff}a{color:var(--green)}.brand{text-decoration:none;font:700 17px system-ui;letter-spacing:.1em}.brand span{display:block;font:13px system-ui;letter-spacing:0;margin-top:7px;color:#647572}#identity{font:14px system-ui;display:flex;align-items:center;gap:15px}main{max-width:1180px;margin:45px auto;padding:0 30px;min-height:65vh}h1{font-weight:400;font-size:clamp(2.1rem,4vw,3.7rem);line-height:1.12;margin:10px 0 30px;letter-spacing:-.03em}h2{font-size:1.8rem;font-weight:400;line-height:1.3}h3{font:650 20px system-ui}p{max-width:78ch}.eyebrow{font:700 13px system-ui;letter-spacing:.12em;text-transform:uppercase;color:#51726b}.lead{font-size:23px}.login{max-width:510px;margin:60px auto}.login form{background:#fff;padding:32px;border-top:4px solid var(--green)}label{display:block;font:15px system-ui;margin:16px 0 7px}input,select{display:block;padding:13px;border:1px solid #9baea7;border-radius:4px;width:100%;font:17px system-ui;background:white;color:#173637}input[type=checkbox],input[type=radio]{display:inline;width:auto;accent-color:var(--green)}button,.button{display:inline-block;background:var(--green);color:#fff;border:1px solid var(--green);padding:12px 20px;font:600 15px system-ui;border-radius:4px;cursor:pointer;text-decoration:none;margin:8px 5px 8px 0}button.secondary,.button.secondary{background:transparent;color:var(--green)}button:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #b07724;outline-offset:3px}#notice:not(:empty){padding:15px 5vw;background:#fff0ce;font:16px system-ui;border-bottom:1px solid #c2914e}.course-row{border-top:1px solid var(--line);padding:23px 0;display:flex;justify-content:space-between;align-items:center;gap:20px}.course-row h2{margin:5px 0}.muted,.small{color:#526964;font:14px/1.6 system-ui}.workspace{display:grid;grid-template-columns:230px minmax(0,1fr);gap:45px}.sidebar{font:14px/1.6 system-ui}.sidebar ol{padding-left:20px}.sidebar li{margin:12px 0}.sidebar .current{font-weight:bold;color:var(--green)}.lesson{background:#fff;padding:38px 45px;min-height:430px;border-top:4px solid var(--green)}.lesson h1{font-size:38px}.lesson .points p{padding:10px 0;border-bottom:1px solid #e3e8e4;font-size:22px}.notes{font-size:18px;color:#38504b}.sources{font:13px/1.5 system-ui;overflow-wrap:anywhere}.controls{border-top:1px solid var(--line);margin-top:25px;padding-top:12px}.status{font:14px system-ui;color:#425c54;margin:10px 0}.progress{height:5px;background:#d8e1dd;margin:15px 0}.progress div{height:100%;background:var(--green)}.pause{background:#e9eeea;padding:18px;margin:15px 0;font:16px system-ui}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.admin-grid section{border-top:2px solid var(--green);padding:10px 0 25px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font:14px/1.5 system-ui}th,td{text-align:left;padding:14px 10px;border-bottom:1px solid var(--line)}th{background:#e5ece7}fieldset{border:0;border-top:1px solid var(--line);padding:20px 0;margin:15px 0}legend{font-weight:bold}fieldset label{font-size:18px;line-height:1.5}footer{border-top:1px solid var(--line);padding:25px 5vw;font:13px system-ui;color:#61726a}.certificate{background:white;padding:65px;max-width:980px;border-top:8px solid var(--green)}.certificate h2{font-size:38px}.certificate dd{margin:0 0 15px}.certificate dt{font:600 14px system-ui}.certificate .small{overflow-wrap:anywhere}.print-help{background:#eee;padding:20px;font:14px system-ui}@media(max-width:780px){header{display:block}#identity{margin-top:15px}main{padding:0 18px;margin-top:25px}.workspace,.admin-grid{grid-template-columns:1fr}.sidebar ol{display:none}.lesson{padding:25px}.lesson h1{font-size:30px}.course-row{display:block}.certificate{padding:25px}}@media print{body{background:white}.certificate{margin:0;max-width:none;padding:30px;min-height:0}.print-help{display:none}@page{size:A4;margin:15mm}}

.course-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;margin:35px 0}.course-card{background:white;border-top:5px solid var(--green);padding:30px}.course-card h2{min-height:90px}.course-status{font:700 17px system-ui}.course-card progress{width:100%;height:12px;accent-color:var(--green)}#generated-password{overflow-wrap:anywhere;font-family:monospace}@media(max-width:780px){.course-menu{grid-template-columns:1fr}.course-card h2{min-height:0}}
