.new-class-tabs,.new-class-subtabs{display:flex;flex-wrap:wrap;gap:.6rem;margin:1rem 0}
.new-class-tabs button,.new-class-subtabs button{padding:.75rem;border:1px solid #999;border-radius:8px;background:transparent;color:inherit;cursor:pointer}
.new-class-tabs button[aria-pressed="true"],.new-class-subtabs button[aria-pressed="true"]{outline:2px solid currentColor}
.new-class-table-scroll{overflow-x:auto;max-width:100%}
.stock-new-table{border-collapse:collapse;width:100%;margin:1rem 0;font-size:.95rem}
.stock-new-table td,.stock-new-table th{padding:.6rem;border:1px solid #999;text-align:left;vertical-align:top}
.stock-new-table input{width:100%;min-width:5rem;max-width:12rem;box-sizing:border-box;padding:.5rem}
.stock-new-table td small{display:block;font-size:.78rem}
.new-house-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.75rem}
.new-house-grid label{display:flex;flex-direction:column;gap:.5rem}
.new-house-grid input{width:100%;box-sizing:border-box;padding:.65rem}
.new-class-practice h3{margin-top:1.5rem}

.comm-practice{max-width:100%;min-width:0}
.comm-practice-criterion{padding:.9rem 1rem;border-inline-start:3px solid currentColor;background:color-mix(in srgb,currentColor 5%,transparent);border-radius:.25rem}
.comm-practice-case{min-width:0;margin:1rem 0;padding:1rem;border:1px solid var(--border-color,#777);border-radius:.85rem}
.comm-practice-case legend{font-weight:650;line-height:1.5;padding:0 .25rem;max-width:100%;white-space:normal}
.comm-practice-choices{display:flex;flex-wrap:wrap;gap:.65rem;margin:.75rem 0}
.comm-practice-choice{display:inline-flex;align-items:center;gap:.45rem;padding:.6rem .85rem;border:1px solid var(--border-color,#777);border-radius:.5rem;cursor:pointer}
.comm-practice-choice input{accent-color:currentColor}
.comm-practice-reason{display:block;margin:.8rem 0 .35rem;font-weight:600}
.comm-practice-case textarea{display:block;box-sizing:border-box;width:100%;max-width:100%;padding:.65rem;border:1px solid #888;border-radius:.45rem;background:var(--surface,#fff);color:inherit;resize:vertical}
.comm-practice-feedback{margin-top:1rem;padding:.65rem 1rem;border-inline-start:3px solid currentColor}
.comm-practice-summary{margin:.85rem 0;padding:1rem;border:1px solid currentColor;border-radius:.6rem}
.comm-practice .stock-actions{display:flex;flex-wrap:wrap;gap:.7rem}
@media(max-width:520px){.comm-practice-case{padding:.75rem}.comm-practice-choices{flex-direction:column;align-items:stretch}.comm-practice-choice{min-height:44px}}
.practical-tabs{flex-wrap:wrap;overflow-x:visible}.practical-tabs button{flex:1 1 auto;min-width:0;white-space:normal;text-wrap:balance}

.comm-activities{max-width:100%;min-width:0}
.comm-activities .comm-activities-head{margin:1.25rem 0}
.comm-activities .comm-activities-head h3{margin:.5rem 0;font-size:1.25rem}
.comm-activities-context{margin:1rem 0;padding:.85rem 1rem;border-inline-start:3px solid var(--border);background:var(--surface-2);border-radius:.45rem;line-height:1.65}
.comm-activities-item{margin:1rem 0}
.comm-activities-item>label{display:block;line-height:1.6;cursor:default}
.comm-activities-item textarea{display:block;box-sizing:border-box;width:100%;max-width:100%;margin:.45rem 0;padding:.75rem;resize:vertical;min-height:88px;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:.65rem;font:inherit}
.comm-activities-item textarea:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.comm-activities-solution{margin-top:.7rem;padding:.8rem 1rem;border-inline-start:3px solid var(--correct);background:var(--correct-bg);border-radius:.45rem}
.comm-activities-solution p{margin:.35rem 0 0}
.comm-activities-note{font-size:.95rem;color:var(--muted)}
.comm-activities [data-activity-progress]{font-weight:650}
.comm-activities .new-class-subtabs{display:flex;flex-wrap:wrap;gap:.5rem}
.comm-activities .new-class-subtabs button{white-space:normal;text-align:left;min-height:44px}
@media(max-width:520px){.comm-activities-item{padding:.75rem}.comm-activities .new-class-subtabs button{flex:1 1 100%}}

.comm-emotions .comm-activities-head ol{padding-inline-start:1.4rem;line-height:1.65}
.comm-emotions .comm-activities-head li{margin:.4rem 0}
.comm-emotions .comm-activities-context p{margin:.75rem 0;overflow-wrap:anywhere}
.comm-emotions [data-emotion-members]{display:block;box-sizing:border-box;max-width:100%;width:min(100%,32rem);margin:.5rem 0 1.25rem;padding:.7rem;border:1px solid var(--border);border-radius:.65rem;background:var(--surface);color:var(--text);font:inherit}
.comm-emotions [data-emotion-members]:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.comm-emotions .comm-activities-item textarea{min-height:110px}
.comm-emotions [data-emotion-progress]{font-weight:600}
@media(max-width:520px){.comm-emotions .comm-activities-context{padding:.75rem}.comm-emotions .stock-actions button{max-width:100%;white-space:normal}}
