.practice-summary,.profile-practice,.assignment-practice,.practice-dashboard{color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:26px;margin:26px 0}.practice-summary h2,.profile-practice h2,.assignment-practice h2{font-size:21px;letter-spacing:-.5px;font-weight:500;margin:0 0 12px}.practice-summary .fine{font-size:calc(13px + var(--text-extra,0px));line-height:1.7;color:var(--muted)}.practice-summary a,.practice-summary button{color:inherit}.practice-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:22px 0}.practice-stat{display:flex;flex-direction:column;gap:9px;padding:16px 18px;border:1px solid var(--line);border-radius:8px;color:var(--ink);text-decoration:none}.practice-stat strong{font-size:25px;font-weight:500;line-height:1.1}.practice-stat span{font-size:calc(13px + var(--text-extra,0px));color:var(--muted)}.practice-stat:hover{border-color:#6486bc77}.practice-link{font-size:calc(14px + var(--text-extra,0px));color:var(--accent-text,#a8c3ec);text-decoration:none}.practice-summary .practice-link{color:var(--accent-text,#93b2e5)}.practice-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.practice-actions button[aria-pressed=true]{background:var(--tint,#23467e55);border-color:#678abb;color:var(--ink)}.practice-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.practice-heading h2{margin:0}.practice-status{min-height:20px}.practice-entry-form{padding:24px;background:var(--surface-alt,var(--field));border:1px solid var(--line);border-radius:10px;margin:22px 0}.practice-entry-form label{display:block;font-size:calc(15px + var(--text-extra,0px));font-weight:500;margin:20px 0 12px}.practice-entry-form input,.practice-entry-form textarea{display:block;width:100%;padding:12px;margin-top:9px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);font:inherit}.practice-entry-form textarea{resize:vertical;line-height:1.7}.practice-entry-form .fine{font-size:calc(14px + var(--text-extra,0px));line-height:1.8;color:var(--muted)}.practice-entry-form>button{margin-right:12px}.practice-history{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.practice-history summary{font-size:calc(17px + var(--text-extra,0px));cursor:pointer;margin-bottom:22px}.practice-history .check-label{font-size:calc(14px + var(--text-extra,0px))}.practice-history-entry{padding:22px 0;border-top:1px solid var(--line)}.practice-history-entry h3{font-size:calc(18px + var(--text-extra,0px));font-weight:500}.practice-reflection{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;font-size:calc(16px + var(--text-extra,0px))}.practice-history-entry.removed{opacity:.72}.practice-recognition{margin-top:35px;padding-top:25px;border-top:1px solid var(--line)}.recognition-marks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px}.recognition-mark{display:flex;gap:17px;align-items:start;padding:20px;border:1px solid var(--line);border-radius:9px}.recognition-symbol{font-size:25px;color:var(--muted);line-height:1.5}.recognition-mark.earned .recognition-symbol{color:#789cd9}.recognition-mark h3{font-size:calc(16px + var(--text-extra,0px));font-weight:500;margin:0 0 8px}.recognition-mark p{font-size:calc(14px + var(--text-extra,0px));line-height:1.8;color:var(--muted);margin:0 0 10px}.recognition-mark small{font-size:calc(12px + var(--text-extra,0px));color:var(--muted)}.practice-dashboard{max-width:1000px;margin:10px auto 50px}.practice-dashboard h1{font-size:40px;letter-spacing:-1px}.practice-assignment-list{margin:28px 0}.practice-assignment{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:22px 0}.practice-assignment strong{font-size:calc(18px + var(--text-extra,0px));font-weight:500}.practice-assignment .fine{font-size:calc(14px + var(--text-extra,0px))}.practice-recent{margin:35px 0}.practice-recent-entry{padding:20px 0;border-top:1px solid var(--line)}.practice-recent-entry time{margin-right:20px;font-size:calc(14px + var(--text-extra,0px))}.practice-recent-entry .practice-link{font-size:calc(17px + var(--text-extra,0px))}.practice-summary a:focus-visible,.practice-summary button:focus-visible{outline:2px solid #739fff;outline-offset:4px}@media(max-width:650px){.practice-summary,.profile-practice,.assignment-practice,.practice-dashboard{padding:20px 16px}.practice-stats{gap:8px}.practice-stat{padding:14px 10px}.practice-stat strong{font-size:22px}.practice-stat span{font-size:calc(12px + var(--text-extra,0px));line-height:1.6}.recognition-marks{grid-template-columns:1fr}.practice-assignment{flex-direction:column;align-items:start;gap:8px}.practice-entry-form{padding:18px 14px}.practice-dashboard h1{font-size:32px}.practice-recent-entry time{display:block;margin-bottom:10px}}
.assignment-completion{padding:20px 24px}.completion-main{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.completion-check{display:flex;align-items:center;gap:13px;cursor:pointer;margin:0 auto 0 0}.completion-check input{width:24px;height:24px;margin:0;accent-color:#359554}.completion-check span{display:grid;gap:5px}.completion-check strong{font-size:calc(18px + var(--text-extra,0px));font-weight:500}.completion-check small{font-size:calc(14px + var(--text-extra,0px));color:var(--muted)}.completion-check.is-complete strong{color:#64c885}html[data-theme=light] .completion-check.is-complete strong{color:#22733b}.completion-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.completion-date-form{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.completion-date-form input{width:auto;max-width:200px}.assignment-completion .practice-status:empty{display:none}.practice-summary .completion-stats{margin:16px 0}.practice-summary .practice-stat{padding:8px 0;border:0}.practice-summary .practice-stat strong{font-size:28px}.practice-summary .practice-link{font-size:calc(14px + var(--text-extra,0px))}.practice-history-entry>time{font-size:calc(16px + var(--text-extra,0px))}.assignment-completion .practice-history{margin-top:20px;padding-top:16px}@media(max-width:550px){.assignment-completion{padding:20px 16px}.completion-main{gap:14px}.completion-check{width:100%;margin-bottom:4px}}
