*{box-sizing:border-box}body{margin:0;background:#f6f5ef;color:#183b34;font-family:Arial,sans-serif}main{max-width:1100px;margin:auto;padding:0 36px}header{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d9ded5}.brand{font-size:25px;text-decoration:none;color:inherit}.brand small{font-size:10px;letter-spacing:1px;display:block;margin:4px 0 0 28px}button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #c88b31;outline-offset:4px}aside{padding:12px 16px;background:#eee8d7;font-size:12px;line-height:1.6;margin-top:20px;color:#665736}.hero{padding:60px 0 45px}label{font-size:11px;letter-spacing:1.5px;font-weight:bold;color:#517369}h1{font-family:Georgia,serif;font-weight:400;font-size:58px;letter-spacing:-2px;line-height:1.08;margin:22px 0}p{line-height:1.7}.hero>p{font-size:19px;color:#66756d}.source{display:flex;flex-wrap:wrap;gap:16px;padding:20px 0;margin-top:32px;border-top:1px solid #d9ded5;border-bottom:1px solid #d9ded5;font-size:12px}.source a{margin-left:auto}a{color:#26594d}h2{font-family:Georgia,serif;font-size:30px;font-weight:400;line-height:1.4}.levels{display:grid;grid-template-columns:1fr 1fr;gap:18px}.level{text-align:left;padding:26px;background:#fffef8;border:1px solid #d9ded5;border-radius:8px}.selected{background:#eaf0e6!important;border:2px solid #315a46!important;padding:25px}.level em{font-family:Georgia,serif;font-size:24px;color:#789079}.level h3{font-size:24px;margin:18px 0 10px}.level p{color:#66756d;font-size:15px}.level span{display:block;font-size:12px;margin-top:24px}.start{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:28px 0 40px}.start span{font-size:12px;color:#66756d}.primary{border-radius:6px;background:#204e40;color:white;padding:16px 25px;font-size:14px}.primary:disabled{opacity:.45;cursor:default}footer{border-top:1px solid #d9ded5;padding:22px 0;font-size:12px;color:#66756d}.practice{max-width:770px;margin:35px auto 70px}.progress{display:flex;gap:8px;margin:25px 0}.progress i{height:4px;flex:1;background:#d9ded5}.progress .active{background:#315a46}.answers{display:grid;gap:12px;margin:28px 0}.option{padding:26px;text-align:left;border:1px solid #d9ded5;background:#fffef8;display:flex;gap:18px;line-height:1.6;border-radius:6px}.option:disabled{opacity:1;cursor:default}.feedback{background:#eaf0e6;padding:25px;border-radius:8px}.feedback .primary{margin-top:20px}summary{cursor:pointer;font-size:13px}article{background:#fffef8;padding:25px;margin:20px 0;border:1px solid #d9ded5}@media(max-width:650px){main{padding:0 20px}header{height:80px}.brand{font-size:21px}.hero{padding:35px 0 20px}h1{font-size:40px}.levels{grid-template-columns:1fr}.start{align-items:stretch;flex-direction:column}.source a{margin-left:0}.practice h2{font-size:25px}}

textarea{display:block;width:100%;margin:14px 0;padding:18px;border:1px solid #789079;border-radius:6px;background:#fffef8;font:inherit;line-height:1.7;color:inherit;resize:vertical}textarea:focus-visible{outline:3px solid #c88b31;outline-offset:2px}.small{font-size:12px;color:#66756d}fieldset{border:1px solid #b5c5b0;padding:18px;margin:20px 0}legend{font-size:13px}.criterion{display:flex;gap:12px;align-items:flex-start;margin:14px 0;font-size:14px;line-height:1.5;letter-spacing:0;text-transform:none;font-weight:normal}.criterion input{margin-top:4px}

.upload-panel{background:#fffef8;border:1px solid #d9ded5;border-radius:8px;padding:28px;margin:0 0 45px}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.panel-heading h2{margin:10px 0 24px}.upload-panel input[type=text],.upload-panel select{display:block;width:100%;padding:14px;border:1px solid #b5c5b0;border-radius:5px;background:#fffef8;font:inherit;color:inherit;margin-top:12px}.file-zone{display:flex;flex-direction:column;gap:12px;padding:24px;border:1px dashed #789079;border-radius:6px;margin:24px 0;cursor:pointer;letter-spacing:0}.file-zone span{font-weight:normal;font-size:12px}.file-zone input{max-width:100%;font:inherit}.document-list{list-style:none;padding:0;margin:20px 0}.document-list li{display:flex;gap:14px;align-items:center;padding:16px 0;border-bottom:1px solid #d9ded5;font-size:13px}.document-list li div{flex:1;min-width:0}.document-list b{overflow-wrap:anywhere}.document-list span{display:block;color:#66756d;font-size:12px;margin-top:6px}.document-list a,.document-list button{white-space:nowrap}.upload-error{color:#8c3325}.text-link{text-decoration:underline;padding:0;font-size:12px}h1{overflow-wrap:anywhere}@media(max-width:650px){.upload-panel{padding:20px}.panel-heading{display:block}.document-list li{flex-wrap:wrap}.document-list li div{flex-basis:100%}}
.connection-note{background:#eee8d7;padding:16px;border-radius:6px;line-height:1.6;font-size:14px}textarea:disabled{opacity:.85}blockquote{margin:20px 0;padding-left:16px;border-left:3px solid #789079;line-height:1.7}.feedback h3{font-size:18px;line-height:1.6}
.activity-figure{margin:25px 0;padding:15px;background:white;border:1px solid #d9ded5;border-radius:6px}.activity-figure img{display:block;width:100%;height:auto;max-height:580px;object-fit:contain}.activity-figure figcaption{font-size:12px;color:#66756d;line-height:1.6;margin-top:14px}

.replace-pdf{display:inline-flex;align-items:center;position:relative;padding:10px 14px;border:1px solid currentColor;border-radius:8px;cursor:pointer;flex-shrink:0;font-size:14px}.replace-pdf input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.replace-pdf:focus-within{outline:2px solid #224f40;outline-offset:3px}
