#learning .learning-companion{margin:30px 0 34px;scroll-margin-top:72px}
#learning .companion-heading{margin:0 0 18px}
#learning .companion-heading h2{margin:7px 0 8px;color:#fff;font-size:26px;line-height:1.35}
#learning .companion-heading p{max-width:56em;margin:0;color:#b7c2da;font-size:13px;line-height:1.75}
#learning .companion-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:14px;align-items:start}
#learning .companion-chat,#learning .companion-assessment,#learning .companion-materials{padding:21px;border:1px solid #ffffff23;border-radius:22px;background:linear-gradient(145deg,#1d2141,#14172c)}
#learning .companion-side{display:grid;gap:14px;min-width:0}
#learning .companion-tabs{display:flex;gap:5px;padding:4px;border-radius:14px;background:#0e1225}
#learning .companion-tabs button{flex:1;min-width:0;min-height:42px;padding:7px;border:0;border-radius:11px;background:transparent;color:#aebbd7;font:inherit;font-size:12px;cursor:pointer}
#learning .companion-tabs button.selected{color:#fff;background:#654cd0;box-shadow:0 5px 18px #4235a64d}
#learning .companion-messages{display:flex;flex-direction:column;gap:12px;min-height:215px;max-height:395px;overflow:auto;margin:18px 0;padding:3px 5px 7px}
#learning .companion-bubble{max-width:92%;padding:12px 15px;border:1px solid #ffffff1f;border-radius:16px;background:#242a49;overflow-wrap:anywhere}
#learning .companion-bubble.user{align-self:flex-end;background:#4b3e90}
#learning .companion-bubble small{display:block;margin-bottom:6px;color:#bfc9e6;font-size:10px}
#learning .companion-bubble p{margin:0;white-space:pre-wrap;color:#f4f5ff;font-size:13px;line-height:1.7}
#learning #companionForm label,#learning #materialUploadForm label{display:block;color:#e8e9f8;font-size:12px;line-height:1.6}
#learning #companionInput,#learning #assessmentText{box-sizing:border-box;width:100%;min-height:96px;margin:9px 0 10px;padding:12px;border:1px solid #ffffff38;border-radius:12px;background:#0d1227;color:#fff;font:inherit;font-size:13px;line-height:1.6;resize:vertical}
#learning .companion-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
#learning .companion-actions span{color:#aebbd6;font-size:11px;line-height:1.5}
#learning .companion-actions button{min-height:40px;font-size:12px}
#learning .companion-chat>.microcopy,#learning .companion-assessment>.microcopy{margin:13px 0 0;color:#9daecb;line-height:1.6}
#learning .companion-side h3{margin:7px 0 8px;color:#fff;font-size:18px}
#learning .companion-side p{color:#b8c4dc;font-size:12px;line-height:1.7}
#learning #assessmentState{margin:0;color:#bdc8e2}
#learning #assessmentText{min-height:155px;white-space:pre-wrap}
#learning #materialUploadForm{display:grid;gap:11px;margin:15px 0 8px}
#learning #materialUploadForm input[type=file],#learning #materialUploadForm select{box-sizing:border-box;display:block;width:100%;min-height:42px;margin:6px 0 0;padding:9px;border:1px solid #ffffff30;border-radius:10px;background:#0d1227;color:#fff;font:inherit;font-size:12px}
#learning #materialUploadForm input[type=file]::file-selector-button{margin-right:8px;padding:6px 10px;border:0;border-radius:7px;background:#49417d;color:#fff}
#learning #materialUploadForm .material-consent{display:flex;align-items:flex-start;gap:8px;color:#c8d1e6}
#learning .material-consent input,#learning .companion-material input{width:17px;height:17px;margin:1px 0 0;flex:none;accent-color:#8b6dff}
#learning #materialUploadForm button{min-height:40px;font-size:12px}
#learning #materialUploadStatus{min-height:17px;margin:8px 0;color:#b9c8e8}
#learning .companion-material-list{display:grid;gap:8px;max-height:260px;overflow:auto}
#learning .companion-material{padding:11px;border:1px solid #ffffff1b;border-radius:11px;background:#ffffff08;overflow-wrap:anywhere}
#learning .companion-material strong{display:block;color:#fff;font-size:12px}
#learning .companion-material small{display:block;margin:5px 0 8px;color:#aebbd3;font-size:10px;line-height:1.5}
#learning .companion-material__controls{display:flex;justify-content:space-between;align-items:center;gap:6px;flex-wrap:wrap}
#learning .companion-material__controls label{display:flex;align-items:center;gap:5px;color:#d3daf0;font-size:11px}
#learning .companion-material__controls button{padding:5px 7px;min-height:30px;font-size:10px}
@media(max-width:800px){#learning .companion-grid{grid-template-columns:1fr}}
@media(max-width:500px){#learning .companion-heading h2{font-size:21px}#learning .companion-chat,#learning .companion-assessment,#learning .companion-materials{padding:17px 14px}#learning .companion-tabs button{font-size:11px}#learning .companion-messages{min-height:185px;max-height:340px}#learning .companion-actions button{flex:1 1 120px}#learning .companion-actions span{flex-basis:100%}}
