/* Единая оболочка КОС «Сибирь»: логотип используется без обрезки и искажения. */
.station-header{display:flex;align-items:center;flex-wrap:wrap;gap:14px;padding:10px 22px;background:#0b1a2f;border-bottom:1px solid #2e5570;position:sticky;top:0;z-index:60;box-sizing:border-box;}
.station-header .station-brand{flex:0 0 180px;min-width:0;max-width:100%;display:block;line-height:0;border-radius:8px;}
.station-header .station-logo,.station-logo{display:block;width:100%;height:auto;max-width:180px;object-fit:contain;border-radius:8px;}
.station-header .top-right{display:flex;align-items:center;gap:10px;margin-left:auto;min-width:0;}
.station-header .nav-links{display:flex;flex-wrap:wrap;gap:6px;min-width:0;margin-left:0;}
.station-header .nav-links a{min-height:44px;display:inline-flex;align-items:center;gap:7px;}
.station-header .user-chip{max-width:240px;min-width:0;}
.station-header .user-chip>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.station-header .avatar{width:36px;height:36px;}
.station-brand:focus-visible,.station-header a:focus-visible,.station-header button:focus-visible{outline:3px solid #ffd966;outline-offset:4px;}
.login-brand{display:block;max-width:240px;margin:0 auto 20px;line-height:0;}
.login-brand .station-logo{max-width:none;}
.station-footer{position:relative;z-index:1;background:#0a1a2b;border-top:1px solid #2e5570;color:#90b8da;text-align:center;padding:22px;font-family:'Exo 2',sans-serif;font-size:14px;line-height:1.8;overflow-wrap:anywhere;}
.station-footer strong{color:#e3eef8;font-weight:600;}
.station-welcome{padding:28px!important;margin:22px 0 30px;border-top:3px solid #f5b342!important;}
.station-welcome:hover{transform:none!important;}
.station-welcome h2{max-width:850px;font-size:clamp(23px,3vw,32px);color:#ffd966;line-height:1.3;}
.station-welcome p{font-size:16px!important;line-height:1.7!important;color:#e3eef8!important;max-width:90ch;margin:12px 0!important;}
.welcome-kicker{font-size:11px;letter-spacing:.12em;color:#f5b342;}
.station-action{position:relative;overflow:hidden;min-height:46px;display:inline-flex!important;align-items:center;justify-content:center;gap:12px;margin-top:10px;transition:transform .18s,box-shadow .18s,background .18s!important;}
.station-action:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f5b34233;}
.station-action:hover i{transform:translateX(4px);}
.station-action i{transition:transform .18s;}
.station-action:active{transform:translateY(1px);}
.station-lesson-viewer>#lessonContainer{max-width:none;width:100%;padding:0;}
.station-lesson-viewer .sidebar{top:160px;}
.station-lesson-viewer>#lessonContainer header.station-header,.station-lesson-viewer>#lessonContainer footer.station-footer{display:none;}
@media(max-width:700px){
 .station-header{position:relative;padding:10px 14px;gap:8px;}
 .station-header .station-brand{flex-basis:150px;min-width:0;}
 .station-header .top-right{flex:1 1 100%;justify-content:flex-end;}
 .station-header .nav-links{flex:1 1 100%;order:2;}
 .station-header .nav-links a{padding:7px 10px;}
 .station-header .user-chip{max-width:calc(100% - 95px);}
 .station-welcome{padding:20px!important;}
 .station-footer{padding:18px 14px;font-size:12px;}
}
@media(prefers-reduced-motion:reduce){.station-action,.station-action i{transition:none!important;transform:none!important;}}

/* Compact portraits on all laboratory pages. */
.course-mentor-row { gap:20px; align-items:center; }
.course-mentor-row > div:last-child { min-width:0; }
.course-mentor-avatar { width:88px; height:88px; flex:0 0 88px; overflow:hidden; border-radius:50%; border:2px solid var(--accent); background:var(--panel,#1f3e58); display:flex; align-items:center; justify-content:center; }
.course-mentor-avatar img { display:block; width:100%; height:100%; object-fit:cover; }
.team-rating-help { color:var(--muted); font-size:13px; }
.team-ranking { list-style:none; margin:0; padding:0; }
.team-rank { border-bottom:1px solid var(--border,#2e5570); }
.team-rank summary { display:flex; align-items:center; gap:12px; cursor:pointer; padding:14px 4px; min-height:44px; }
.team-name { flex:1; min-width:0; overflow-wrap:anywhere; }
.team-place { color:var(--accent); }
.team-rank summary strong { white-space:nowrap; }
.team-members { padding:0 12px 14px; overflow-wrap:anywhere; }
.team-members ul { margin:6px 0 0; padding-left:20px; }
.team-rank summary:focus-visible, #avatarWrap:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
@media (max-width:600px) { .course-mentor-avatar { width:64px; height:64px; flex-basis:64px; } .course-mentor-row { gap:12px; } }
