:root{scroll-padding-top:calc(var(--studio-nav-height,160px) + 16px)}
.studio-utility{position:sticky;top:0;z-index:6;background:var(--paper);border-bottom:1px solid var(--line)}
.studio-navigation{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1580px;margin:auto;padding:12px 28px 5px}
.studio-tabs,.studio-exits{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.studio-nav-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 15px;background:var(--white);border:1px solid #a7b7a7;border-radius:7px;font-size:12px;font-weight:650;text-decoration:none;color:var(--forest);line-height:1.4;text-align:center}
.studio-nav-button:hover{background:var(--mint)}
.studio-nav-button.active{background:var(--forest);border-color:var(--forest);color:white}
.studio-sync{max-width:1580px;margin:auto;padding:5px 28px 10px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;line-height:1.5;color:var(--muted)}
.studio-sync p{margin:0}
#studio-sync-actions{display:flex;gap:8px;flex-shrink:0}
#studio-sync-actions button{background:var(--white);border:1px solid #a7b7a7;border-radius:5px;color:var(--forest);padding:8px 11px;font-size:11px;min-height:36px}
.studio-main{max-width:1200px;margin:auto;padding:36px 40px 48px}
.studio-main h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(32px,4vw,47px);line-height:1.15;letter-spacing:-.03em;margin:10px 0 20px}
.studio-main .page-intro{max-width:720px;color:var(--muted);font-size:16px;line-height:1.75;margin:0 0 30px}
.practice-topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.practice-topic-card{background:var(--white);border:1px solid var(--line);border-radius:10px;padding:25px;display:flex;flex-direction:column;align-items:flex-start;gap:13px}
.practice-topic-card h2{font-size:23px;font-family:Georgia,serif;font-weight:400;margin:0;line-height:1.3}
.practice-topic-card p{font-size:13px;line-height:1.6;margin:0;color:var(--muted)}
.practice-topic-card .button{margin-top:auto}
.practice-breadcrumb{margin-bottom:22px;font-size:13px;display:flex;gap:20px;flex-wrap:wrap;text-underline-offset:4px}
.practice-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:22px;font-size:13px}
.practice-toolbar select{border:1px solid #a7b7a7;border-radius:6px;background:var(--white);color:var(--ink);padding:10px 12px;max-width:100%}
.practice-stage{min-height:0}
.practice-stage .practice-hint{font-size:14px;margin:20px 0;line-height:1.7}
.practice-stage .practice-hint summary{cursor:pointer;text-underline-offset:4px;text-decoration:underline;color:var(--forest)}
.practice-stage .practice-hint p{max-width:690px;color:var(--muted)}
.practice-actions{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}
.practice-controls{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:24px}
.practice-score-note{font-size:12px;line-height:1.7;color:var(--muted);margin:20px 0 0}
.progress-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:28px 0 36px}
.progress-total{background:var(--mint);border:1px solid var(--line);border-radius:9px;padding:20px}
.progress-total strong{display:block;font-size:29px;color:var(--forest);margin-bottom:7px}
.progress-total span{font-size:12px;line-height:1.6}
.progress-section{margin:34px 0}
.progress-section h2{font-size:24px;font-family:Georgia,serif;font-weight:400}
.progress-section .lesson-table-wrap{position:relative}
.progress-section .lesson-table{min-width:650px;background:var(--white)}
.progress-section .lesson-table a{font-size:12px;font-weight:650;text-underline-offset:4px}
.course-practice-link{display:flex;justify-content:flex-end;margin:18px 0 0;font-size:12px;text-underline-offset:4px}
@media(max-width:850px){.studio-navigation{flex-wrap:wrap;gap:8px;padding:10px 18px 4px}.studio-exits{margin-left:auto}.studio-nav-button{font-size:11px;padding:9px 11px}.studio-sync{padding:5px 18px 9px;flex-wrap:wrap;gap:5px}.studio-main{padding:26px 20px 36px}.progress-totals{grid-template-columns:1fr 1fr}}
@media(max-width:540px){.studio-navigation{padding:8px 12px 3px}.studio-tabs{display:grid;grid-template-columns:repeat(3,1fr);width:100%;gap:7px}.studio-exits{width:100%;justify-content:space-between;gap:7px}.studio-exits a{flex:1;font-size:10px;min-height:36px;padding:7px 8px}.studio-sync{font-size:10px;padding:5px 12px 8px}.practice-topic-grid{grid-template-columns:1fr}.studio-main{padding:24px 16px 32px}.progress-total{padding:16px}.progress-total strong{font-size:25px}.practice-toolbar{gap:12px}.practice-controls .button{font-size:12px;min-height:44px}.studio-sync #studio-sync-actions{flex-wrap:wrap}}
@media print{.studio-utility,.course-practice-link{display:none!important}}

.practice-stage>h1{font-size:clamp(29px,3.5vw,42px)}
