/* Scoped reading and exercise layout; existing application design remains intact. */
.practice-page{max-width:960px;box-sizing:border-box;margin-inline:auto;padding:42px 24px 64px;overflow-wrap:anywhere}.practice-page h1{font-size:clamp(1.8rem,4vw,2.65rem);line-height:1.35;word-break:keep-all;overflow-wrap:anywhere}.practice-page h2{margin-top:2.1em;line-height:1.5;word-break:keep-all;scroll-margin-top:100px}.practice-page p,.practice-page li{line-height:1.9}.practice-page pre{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;font:inherit;line-height:1.8;max-width:100%;margin:0;padding:20px;background:#f0f5fc;border-radius:12px}.practice-copy{margin:20px 0}.practice-page button{min-height:44px;padding:10px 18px;margin:8px 8px 8px 0;border:1px solid #c3cfe3;border-radius:9px;background:#fff;color:#163c7b;cursor:pointer;font:inherit}.practice-page button:focus-visible,.practice-page a:focus-visible,.practice-page input:focus-visible,.practice-table:focus-visible{outline:3px solid #245fcd;outline-offset:3px}.practice-table{overflow-x:auto;max-width:100%;margin:20px 0;border:1px solid #dbe3ef;border-radius:12px}.practice-table table{width:100%;border-collapse:collapse;font-size:.95rem}.practice-table th,.practice-table td{padding:14px;text-align:left;vertical-align:top;border-bottom:1px solid #dbe3ef;line-height:1.7;min-width:90px;overflow-wrap:anywhere}.practice-table th{background:#edf3fc}.practice-toc{display:flex;flex-wrap:wrap;gap:12px;padding:16px;background:#edf3fc;border-radius:12px}.practice-checks{padding:24px;background:#f3f7fd;border:1px solid #dbe3ef;border-radius:16px;margin-top:32px}.practice-checks h2{margin-top:0}.practice-checks label{display:flex;gap:10px;align-items:flex-start;padding:12px 0;cursor:pointer}.practice-checks input{width:20px;height:20px;flex-shrink:0;margin-top:5px}.practice-checks progress{width:100%;height:16px;accent-color:#245fcd}.practice-page details{border:1px solid #dbe3ef;border-radius:12px;padding:18px;margin:20px 0}.practice-page summary{cursor:pointer;font-weight:700;min-height:32px}.practice-page .article-meta{display:flex;flex-wrap:wrap;gap:12px}.copy-status{font-size:.9rem}.practice-page .article-callout{padding:22px;margin-top:28px}.practice-page a{text-underline-offset:3px}.practice-page .article-body{min-width:0}
@media(max-width:600px){.practice-page{padding:28px 18px 40px;width:100%}.practice-page h1{font-size:1.8rem}.practice-checks{padding:18px}.practice-table th,.practice-table td{padding:10px;min-width:75px}.practice-page pre{padding:14px}}
@media print{.topbar,.footer,.practice-page button,.practice-toc{display:none}.practice-page{max-width:none;padding:0}.practice-table{overflow:visible}.practice-page details{display:block}}

.practice-worked-example{margin:28px 0;padding:20px;border:1px solid #dbe3ef;border-radius:14px;background:#fbfdff}.practice-worked-example>h2{margin-top:0}.practice-visual-grid,.practice-storyboard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.practice-storyboard{grid-template-columns:repeat(4,minmax(0,1fr))}.practice-page figure{margin:0;min-width:0}.practice-page figure svg{width:100%;height:auto;display:block}.practice-page figcaption{padding:10px 0;line-height:1.65;font-size:.9rem}.practice-phone{position:relative;aspect-ratio:9/16;border:5px solid #26374c;border-radius:20px;overflow:hidden;background:#e8e3da;display:flex;align-items:center}.practice-caption{position:absolute;left:8%;right:8%;bottom:23%;background:#fffef3;text-align:center;padding:8px 4px;border-radius:6px;font-size:.8rem;color:#25354b}@media(max-width:600px){.practice-visual-grid{grid-template-columns:1fr}.practice-storyboard{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-worked-example{padding:14px}}
