.practice-app{color:#132e4d;min-width:0}.practice-summary{background:#edf5f2;border:1px solid #a1bdb0;padding:1.2rem;border-radius:14px;margin-bottom:1.2rem}.practice-level{display:flex;flex-wrap:wrap;gap:.7rem 1rem;align-items:center}.practice-level>strong{font-size:1.35rem}.practice-level>span:last-child{margin-left:auto}.practice-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:1rem 0}.practice-metrics>div{display:grid;gap:.2rem}.practice-metrics strong{font-size:1.7rem}.practice-metrics span{font-size:1rem}.practice-goal{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem}.practice-goal progress{accent-color:#146950;min-width:100px;flex:1 1 140px;height:16px}.practice-goal select{max-width:100%}.practice-tabs{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}.practice-tabs button{flex:1 1 160px}.practice-tabs [aria-pressed=true]{background:#163f68!important;color:white!important;border-color:#163f68!important}.practice-options{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin:1rem 0}.practice-options select{max-width:100%;min-width:0}.practice-task{background:#fff;border:1px solid #acbed0;border-radius:14px;padding:clamp(1rem,3vw,2rem);max-width:100%;min-width:0}.practice-task h2{margin:1rem 0 .7rem;font-size:1.65rem}.practice-task-top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.7rem}.practice-prompt{font-size:1.6rem;font-weight:680;line-height:1.5;background:#f2f6fb;padding:1.25rem;border-radius:9px;margin:1.1rem 0;overflow-wrap:anywhere}.practice-answer{background:#eef8f2;border-left:4px solid #23704b;padding:1rem 1.2rem;font-size:1.3rem;line-height:1.6;margin:1rem 0}.practice-task label{display:block;margin:.8rem 0 .3rem;font-weight:650}.practice-task textarea{width:100%;min-height:110px;border:1px solid #819bb5;padding:.8rem;border-radius:8px;resize:vertical}.practice-feedback{margin-top:1rem;line-height:1.6;min-height:1em}.practice-feedback:empty{display:none}.practice-neighbors{display:flex;gap:.7rem;flex-wrap:wrap;justify-content:flex-start;padding-top:1rem;margin-top:1rem;border-top:1px solid #ced9e3}.practice-rate{display:flex;gap:.7rem;flex-wrap:wrap}.practice-history,.practice-session,.practice-storage{font-size:1rem!important;color:#3c5268;line-height:1.6!important}.practice-built{display:flex;flex-wrap:wrap;gap:.4rem;min-height:80px;padding:1rem;border:2px dashed #819bb5;border-radius:8px;margin:1rem 0}.practice-progress{margin:1.2rem 0;border:1px solid #b5c6d7;padding:1rem;border-radius:12px;background:#fff}.practice-progress summary{font-size:1.15rem;font-weight:650;cursor:pointer;line-height:1.6}.practice-badges{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;margin:1rem 0}.practice-badges>div{padding:1rem;border:1px solid #b9c5d1;background:#f6f8fa;border-radius:10px}.practice-badges .earned{border-color:#7da990;background:#edf8f0}.practice-badges p{font-size:1rem!important;line-height:1.55!important;margin:.4rem 0}.practice-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.5rem}.practice-week>div{display:grid;text-align:center;padding:.6rem .3rem;background:#edf3f9;border-radius:6px;gap:.2rem}.practice-week strong{font-size:1.4rem}.practice-week span{font-size:.95rem}.practice-table-wrap{overflow:auto;max-height:520px;margin:1rem 0}.practice-table-wrap table{border-collapse:collapse;width:100%;min-width:620px}.practice-table-wrap th,.practice-table-wrap td{padding:.8rem;border-bottom:1px solid #c5d2df;text-align:left;vertical-align:top}.practice-table-wrap th:first-child{max-width:400px}.practice-table-wrap th button{text-align:left;min-width:0;white-space:normal}.practice-table-wrap caption{text-align:left;font-weight:700;padding:.7rem}.practice-app button:disabled{opacity:.55}.practice-app input,.practice-app select{background:#fff;border:1px solid #819bb5;border-radius:7px;padding:.55rem}.practice-app :focus-visible{outline:3px solid #076bcc;outline-offset:3px}
body.training-upgraded #training .training-panel,body.training-upgraded #training>.training-tabs,body.training-upgraded #restartTrainer,body.training-upgraded #trainingScreen #trainingTabs,body.training-upgraded #trainingScreen .trainer-side,body.training-upgraded #trainingScreen .training-paging{display:none!important}body.training-upgraded #trainingScreen .trainer-layout{display:block}body.training-upgraded #trainerMain{background:transparent;border:0;padding:0;box-shadow:none}
@media(max-width:800px){.practice-badges{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-week{grid-template-columns:repeat(4,minmax(0,1fr))}.practice-task{padding:1rem}.practice-prompt{padding:1rem;font-size:1.35rem}.practice-options{align-items:stretch;flex-direction:column}.practice-options>label{margin-top:.4rem}.practice-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-level>span:last-child{margin-left:0}.practice-rate button,.practice-neighbors button{flex:1 1 180px}.practice-summary{padding:1rem}.practice-goal{display:grid;grid-template-columns:1fr}.practice-tabs button{flex:1 1 140px}}
@media(max-width:420px){.practice-badges{grid-template-columns:1fr}.practice-week{grid-template-columns:repeat(2,minmax(0,1fr))}}
.practice-goal>*{min-width:0}.practice-goal select{width:100%;max-width:100%}.practice-goal label{overflow-wrap:anywhere}@media(min-width:801px){.practice-goal select{width:auto}}
.practice-goal progress{width:100%;max-width:100%;min-width:0}
