html #modal:has(.freePracticeSheet){width:min(440px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:min(800px,calc(100dvh - max(12px,env(safe-area-inset-top)) - max(12px,env(safe-area-inset-bottom))));padding:0;overflow:hidden;border:1px solid var(--border);border-radius:26px;background:var(--surface);box-sizing:border-box}
html #modal:has(.freePracticeSheet)>#modalBody{padding:0;display:flex;flex-direction:column;min-height:0;max-height:inherit;overflow:hidden}
html #modal .freePracticeSheet{display:flex;flex-direction:column;padding:0;margin:0;width:100%;max-height:inherit;min-height:0;background:var(--surface);text-align:left}
.freePracticeSheet>.sheetHeader{padding:20px;flex:0 0 auto;align-items:center;gap:12px;margin:0}.freePracticeSheet .sheetHeader h2{font-size:24px;line-height:1.25;margin:0;color:var(--text)}.freePracticeSheet .sheetHeader .close{width:40px;height:40px;min-width:40px;display:grid;place-items:center;padding:11px;background:var(--surface2);border:1px solid var(--border);border-radius:14px;color:var(--sub)}.freePracticeSheet .close>.uiIcon{width:18px;height:18px}
.practiceChoiceBody{flex:1 1 auto;min-height:0;overflow-y:auto;padding:0 20px 20px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none}.practiceChoiceBody::-webkit-scrollbar{display:none;width:0;height:0}
.practiceChoiceIntro{font-size:13px;line-height:1.7;color:var(--sub);margin:0 0 22px}
.practiceChoiceGroup+.practiceChoiceGroup{margin-top:24px}.practiceChoiceGroup>h3{font:600 15px/1.4 Outfit,sans-serif;color:var(--sub);margin:0 0 12px}.practiceChoiceList{display:grid;gap:10px}
html #modal .practiceChoice{width:100%;min-width:0;min-height:78px;display:grid;grid-template-columns:40px minmax(0,1fr) 16px;align-items:center;gap:12px;padding:14px 12px;border:1px solid var(--border);border-radius:18px;background:var(--surface2);color:var(--text);text-align:left;touch-action:manipulation;box-shadow:0 2px 0 color-mix(in srgb,var(--bg) 40%,var(--border))}
.practiceChoiceIcon{width:40px;height:42px;display:grid;place-items:center;border-radius:13px;color:var(--green);background:color-mix(in srgb,var(--green) 9%,var(--surface));border:1px solid color-mix(in srgb,var(--green) 15%,var(--border));flex:none}.practiceChoiceIcon>.uiIcon{display:block;width:23px;height:23px}
.practiceChoiceCopy{display:block;min-width:0}.practiceChoiceCopy>strong{display:block;font:600 16px/1.35 Outfit,sans-serif;color:var(--text);overflow-wrap:break-word}.practiceChoiceCopy>small{display:block;font-size:11px;line-height:1.6;color:var(--sub);margin-top:5px;white-space:normal;overflow-wrap:break-word}.practiceChoice>.uiIcon{width:16px;height:16px;color:var(--sub);display:block}
.practiceChoice:focus-visible{outline:2px solid var(--green);outline-offset:3px}.practiceChoice:active{transform:translateY(2px)}
.practiceChoiceFooter{flex:0 0 auto;padding:13px 20px 18px;border-top:1px solid var(--border);background:var(--surface)}.practiceChoiceFooter>span{display:flex;align-items:center;justify-content:center;gap:7px;color:var(--sub);font-size:11px;line-height:1.6;margin-bottom:11px}.practiceChoiceFooter>span>.uiIcon{width:15px;height:15px;color:var(--green)}.practiceChoiceFooter>.secondary{display:block;min-height:44px;width:100%;padding:10px;font-size:13px;color:var(--text);background:var(--surface2);border:1px solid var(--border);border-radius:14px;white-space:normal}
@media(max-width:350px){.freePracticeSheet>.sheetHeader{padding:16px}.freePracticeSheet .sheetHeader h2{font-size:22px}.practiceChoiceBody{padding:0 14px 16px}html #modal .practiceChoice{grid-template-columns:34px minmax(0,1fr) 14px;gap:9px;padding:12px 10px}.practiceChoiceIcon{width:34px;height:38px}.practiceChoiceCopy>strong{font-size:15px}.practiceChoiceFooter{padding:12px 16px 16px}}
@media(max-height:550px){.freePracticeSheet>.sheetHeader{padding-top:12px;padding-bottom:12px}.practiceChoiceFooter{padding-top:10px;padding-bottom:12px}.practiceChoiceFooter>span{display:none}}
