.practice-page .page{padding-top:clamp(28px,6vw,64px);padding-bottom:112px}.practice-page #practice-app{min-height:900px}.practice-hero{max-width:760px;margin-bottom:var(--space-8)}.practice-hero h1{margin:6px 0 10px;max-width:100%;text-wrap:balance}.practice-hero .lead{max-width:58ch}
.practice-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4);margin:var(--space-6) 0}.practice-grid .card{min-height:170px}.practice-grid .card h2{margin:0 0 5px;font-size:1.35rem}.practice-grid .card p{margin:0;color:var(--muted)}.practice-grid .card-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:var(--space-5);border-radius:14px;background:var(--primary-soft);color:var(--primary)}.practice-grid .card-icon svg{width:25px;height:25px}.practice-grid button:nth-child(2) .card-icon{background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--accent)}.practice-grid button:nth-child(3) .card-icon{background:color-mix(in srgb,var(--ok) 14%,var(--surface));color:var(--ok)}
.practice-toolbar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);margin:0 0 var(--space-4);font-weight:750}.practice-toolbar .timer{display:inline-flex;align-items:center;min-height:40px;padding:0 13px;border:1px solid color-mix(in srgb,var(--primary) 24%,var(--line));border-radius:999px;background:var(--primary-soft);color:var(--primary);font-variant-numeric:tabular-nums}.practice-page .progress{height:8px;margin-bottom:var(--space-3);background:var(--surface-2)}.practice-page .progress i{display:block;height:100%;border-radius:inherit;background:var(--primary)}
.question-dots{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 var(--space-5)}.question-dot{width:12px;height:12px;border-radius:50%;background:var(--line)}.question-dot.done{background:var(--ok)}.question-dot.current{outline:2px solid var(--primary);outline-offset:3px}.reading-passage{padding:var(--space-4);border-inline-start:4px solid var(--primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--primary-soft);font-size:1.08rem;line-height:1.7;white-space:pre-wrap}.practice-page article.card{display:grid;gap:var(--space-4);padding:clamp(18px,4vw,32px)}.practice-page article.card h2{font-size:clamp(1.35rem,3vw,2rem);letter-spacing:-.035em}.answer-list{display:grid;gap:var(--space-3);margin:0}.answer-choice{display:flex;align-items:center;text-align:left;min-height:56px;width:100%;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);color:var(--ink);cursor:pointer;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.answer-choice:hover,.answer-choice:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 14%,transparent)}.answer-choice.selected{border-color:var(--primary);background:var(--primary-soft);color:var(--primary);font-weight:750}.answer-choice input{width:20px;height:20px;margin-inline-end:10px;accent-color:var(--primary)}
.action-row{display:flex;gap:var(--space-3);justify-content:space-between;margin-top:var(--space-5)}.action-row>*{flex:1}.list{display:grid;gap:0}.list-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--line)}.list-row:last-child{border-bottom:0}.prompt-card{margin-bottom:var(--space-4)}.prompt-card .fr{font-size:1.2rem;font-weight:750}.prompt-card .en{color:var(--muted);margin-top:8px}.segline{display:flex;justify-content:flex-end;margin-bottom:var(--space-3)}.word-count{display:flex;justify-content:space-between;color:var(--muted);font-size:.88rem;margin-top:6px}.word-count.good{color:var(--ok)}.word-count.warn{color:var(--warn)}.accent-bar{height:5px;border-radius:999px;background:linear-gradient(90deg,var(--primary) 0 40%,var(--accent) 40% 70%,var(--ok) 70%);margin:var(--space-3) 0 var(--space-5)}
.skeleton{height:18px;border-radius:8px;background:linear-gradient(90deg,var(--surface) 25%,var(--surface-2) 50%,var(--surface) 75%);background-size:200% 100%;animation:shimmer 1.2s infinite;margin:12px 0}@keyframes shimmer{to{background-position:-200% 0}}.score-range{font:800 clamp(3rem,10vw,5rem)/1 var(--font-heading);color:var(--primary);letter-spacing:-.08em}.result-card .criteria-row{margin:17px 0}.criteria-head{display:flex;justify-content:space-between;gap:10px;font-weight:700}.criteria-bar{height:9px;background:var(--surface-2);border-radius:20px;overflow:hidden;margin:7px 0}.criteria-bar i{display:block;height:100%;background:var(--primary);border-radius:inherit}.evidence{color:var(--muted);font-size:.9rem;margin:4px 0}.evidence q{color:var(--ink)}.correction{border-top:1px solid var(--line);padding:12px 0}.correction s{color:var(--bad)}.correction strong{color:var(--ok)}.upsell{background:var(--primary-soft);border-color:color-mix(in srgb,var(--primary) 24%,var(--line))}.estimate-note{font-weight:750;color:var(--primary)}.consent{display:flex;gap:10px;align-items:flex-start;padding:12px 0}.consent input{min-width:20px;min-height:20px}.recording{text-align:center;padding:20px 0}.recording .pulse{width:74px;height:74px;margin:0 auto 12px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 12px color-mix(in srgb,var(--accent) 15%,transparent)}.muted{color:var(--muted)}.error-box{border-inline-start:4px solid var(--bad)}.hidden{display:none!important}
@media(min-width:620px){.practice-grid{grid-template-columns:repeat(3,1fr)}.practice-grid .card{min-height:210px}}
@media(min-width:360px) and (max-width:619px){.practice-page #practice-app>.practice-hero:first-child h1{white-space:nowrap;font-size:clamp(2.1rem,9vw,3rem)}}

/* Responsive practice refinements from design review. */
.practice-page #practice-app{min-height:0}
.practice-grid .card{min-width:0}
@media(min-width:620px) and (max-width:899px){.practice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:900px){.practice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:699px){.practice-page .tabbar{display:none}.practice-page .page{padding-bottom:64px}}
