.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.book-test button,.chapter-done,.cert-actions button{font:inherit;cursor:pointer;border:2px solid var(--brand);background:var(--brand);color:var(--brand-ink);border-radius:999px;padding:.6rem 1.1rem;font-weight:600;text-decoration:none;display:inline-block}.chapter-done,.cert-actions button{color:var(--text);background:0 0}.book-test button:disabled{opacity:.5;cursor:not-allowed}.shelf{grid-template-columns:repeat(auto-fill,minmax(min(100%,22rem),1fr));gap:1.25rem;display:grid}.shelf-book{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:inherit;flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.shelf-book:hover{border-color:var(--brand)}.shelf-book img{aspect-ratio:16/9;object-fit:cover;width:100%;height:auto;display:block}.shelf-body{flex-direction:column;align-items:flex-start;gap:.3rem;padding:1rem 1.2rem 1.2rem;display:flex}.shelf-body strong{font-size:1.25rem;line-height:1.25}.shelf-body em,.shelf-body small{color:var(--muted)}.book-head{grid-template-columns:minmax(0,1fr);align-items:start;gap:1.5rem;display:grid}@media (width>=860px){.book-head{grid-template-columns:minmax(0,5fr) minmax(0,6fr)}}.book-head img{border-radius:var(--radius);width:100%;height:auto;display:block}.book-head h1{margin:.4rem 0 0;font-size:clamp(1.8rem,5vw,2.6rem)}.book-subtitle{color:var(--muted);margin:.2rem 0 1rem;font-size:1.2rem;font-style:italic}.book-ctas{flex-wrap:wrap;gap:.75rem;margin-top:1.25rem;display:flex}.book-note{margin-top:1.5rem;font-size:.9rem}.chapter-progress{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.75rem;margin:0 0 1rem;display:flex}.progress-bar{appearance:none;background:var(--border);border:none;border-radius:999px;flex:10rem;max-width:18rem;height:.6rem;overflow:hidden}.progress-bar::-webkit-progress-bar{background:var(--border);border-radius:999px}.progress-bar::-webkit-progress-value{background:var(--good);border-radius:999px}.progress-bar::-moz-progress-bar{background:var(--good);border-radius:999px}.chapter-list{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.chapter-list a{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:inherit;align-items:flex-start;gap:.9rem;padding:.85rem 1rem;text-decoration:none;display:flex}.chapter-list a:hover{border-color:var(--brand)}.chapter-list strong{line-height:1.3;display:block}.chapter-list small{color:var(--muted);margin-top:.15rem;line-height:1.45;display:block}.chapter-num{border:2px solid var(--brand);width:2rem;height:2rem;color:var(--brand);border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid}.chapter-list .read .chapter-num{background:var(--good);border-color:var(--good);color:#fff}article.book{border-radius:24px;margin-inline:-16px}@media (width>=820px){article.book{margin-inline:0}}.chapter-nav{flex-direction:column;align-items:center;gap:1.25rem;max-width:760px;margin:2rem auto 0;display:flex}.chapter-done.is-done{background:var(--good-bg);border-color:var(--good);color:var(--good)}.chapter-nav-links{flex-wrap:wrap;justify-content:space-between;gap:.75rem 1.5rem;width:100%;display:flex}.chapter-nav-links a{font-weight:600}.locked img{border-radius:var(--radius);width:100%;height:auto}.book-test{max-width:44rem}.test-facts{flex-wrap:wrap;gap:.75rem;padding:0;list-style:none;display:flex}.test-facts li{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:.6rem .9rem}.test-start{margin:.5rem 0 1.5rem;padding:.75rem 1.6rem!important;font-size:1.1rem!important}.book-test ol{padding-left:1.4rem}.book-test fieldset{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-width:0;margin:0 0 1rem;padding:.9rem 1rem 1rem}.book-test legend{float:left;width:100%;margin-bottom:.6rem;padding:0 .3rem;font-weight:600}.book-test label{clear:both;border:1px solid var(--border);cursor:pointer;border-radius:10px;align-items:flex-start;gap:.6rem;margin-top:.45rem;padding:.55rem .7rem;line-height:1.45;display:flex}.book-test label.picked{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent)}.book-test input[type=radio]{accent-color:var(--accent);margin-top:.3rem}.test-submit{background:var(--bg);border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.9rem 1rem;display:flex;position:sticky;bottom:0}.test-result{border-radius:var(--radius);border:2px solid var(--border);background:var(--surface);margin-bottom:1.5rem;padding:1.25rem}.test-result.pass{border-color:var(--good);background:var(--good-bg)}.test-result.fail{border-color:var(--bad);background:var(--bad-bg)}.test-score{margin:0;font-size:2.2rem;font-weight:800}.test-score small{color:var(--muted);font-size:1.1rem;font-weight:600}.test-review{padding-left:1.4rem}.test-review li{margin-bottom:1rem}.test-review p{margin:.15rem 0}.review-q{font-weight:600}.cert-name{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin-bottom:1.5rem;padding:1.1rem 1.2rem}.cert-name label{margin-bottom:.5rem;font-weight:600;display:block}.cert-name div{flex-wrap:wrap;gap:.6rem;display:flex}.cert-name input{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:10px;flex:14rem;padding:.55rem .8rem}.cert-wrap{margin:0 0 2rem}.certificate{color:#1d1b16;aspect-ratio:297/210;background:#fffdf8;border:3px solid #e2552d;border-radius:18px;max-width:100%;padding:10px;font-family:"Baloo 2",system-ui,sans-serif;container-type:inline-size}.cert-inner{text-align:center;border:1.5px dashed #c98a0b;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:.6cqw;height:100%;padding:4cqw 5cqw;display:flex}.cert-logo{width:7cqw;height:7cqw}.cert-kicker{letter-spacing:.18em;text-transform:uppercase;color:#e2552d;margin:.5cqw 0 0;font-size:2.2cqw;font-weight:700}.cert-small{color:#625d52;margin:0;font-family:Andika,system-ui,sans-serif;font-size:2cqw}.cert-name-text{border-bottom:2px solid #e7e1d4;margin:.5cqw 0;padding:0 3cqw .5cqw;font-size:6.2cqw;font-weight:800;line-height:1.1}.cert-book{margin:0;font-size:2.8cqw;font-weight:700;line-height:1.3}.cert-meta{color:#625d52;margin:.6cqw 0 0;font-family:Andika,system-ui,sans-serif;font-size:1.8cqw}.cert-foot{color:#625d52;text-align:left;justify-content:space-between;width:100%;margin-top:auto;font-size:1.6cqw;line-height:1.35;display:flex}.cert-foot span:last-child{text-align:right}.cert-foot strong{color:#1d1b16;font-size:1.9cqw}.cert-actions{flex-wrap:wrap;gap:.6rem;margin-top:.9rem;display:flex}@media print{@page{size:A4 landscape;margin:10mm}body *{visibility:hidden}.certificate,.certificate *{visibility:visible}.certificate{aspect-ratio:auto;-webkit-print-color-adjust:exact;print-color-adjust:exact;border-radius:0;width:277mm;height:190mm;margin:auto;position:fixed;inset:0}}
