/* Shared finishing rules for student destination screens, based on Browse Lessons.
   Keep image composition, grids, reader/exam layouts and functional states local. */
.library-app .student-shell {
  --student-title-font: Georgia, 'Times New Roman', serif;
  --student-title-color: #0b2346;
  --student-card-line: #d8dfe4;
  --student-card-radius: 15px;
  --student-control-radius: 10px;
}
.library-app .student-shell:has(#content :is(.student-library,.books,.university-directory,.portfolio,.posts,.work,.daily,.homework,.subjects-catalog,.ielts-catalog,.sat-catalog)) #workspace {
  padding: 24px 28px 40px;
  max-width: 1400px;
}
.library-app .student-shell #content :is(.student-screen-head,.portfolio-heading,.posts-heading,.work-heading,.daily-heading,.homework-heading) h1 {
  font-family: var(--student-title-font);
  font-size: clamp(2rem,3.2vw,3.4rem);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -.035em;
  color: var(--student-title-color);
  margin: 0 0 8px;
}
.library-app .student-shell #content :is(.student-screen-head,.portfolio-heading,.posts-heading,.work-heading,.daily-heading,.homework-heading) p {
  font-family: 'IBM Plex Sans',system-ui,sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.65;
  color: #43556b;
}
.library-app .student-shell #content :is(.student-library>.student-screen-head,.books>.student-screen-head,.university-directory>.student-screen-head,.portfolio-heading,.posts-heading,.work-heading,.daily-heading,.homework-heading,.subjects-catalog .student-screen-head,.ielts-catalog .student-screen-head,.sat-catalog .student-screen-head) {
  border-radius: 18px;
  border: 1px solid #dce3e8;
  margin-bottom: 24px;
}
.library-app .student-shell #content :is(.library-secondary h2,.books-section-title,.posts-feed-heading,.daily-date-line h2,.subjects-intro h2,.ielts-intro h2,.sat-intro h2,.portfolio h2,.homework h2) {
  font-family: var(--student-title-font);
  font-weight: 500;
  font-size: 1.65rem;
  line-height: 1.25;
  letter-spacing: -.025em;
  color: var(--student-title-color);
}
.library-app .student-shell #content :is(.student-lesson-tile,.learning-feature,.learning-row,.book-card,.uni-card,.posts-composer,.posts-card,.work-card,.daily-card,.portfolio-layout>[data-portfolio-panel],.homework-question-pane,.homework-help-pane,.subject-card,.ielts-skill-card,.sat-section-card) {
  border-radius: var(--student-card-radius);
  border-color: var(--student-card-line);
  box-shadow: 0 4px 16px #183b7708;
}
.library-app .student-shell #content :is(.subject-card,.ielts-skill-card,.sat-section-card,.uni-card,.work-card,.daily-card) :is(h2,h3) {
  font-family: var(--student-title-font);
  font-weight: 500;
  font-size: 1.35rem;
  line-height: 1.3;
  letter-spacing: -.025em;
  color: var(--student-title-color);
}
.library-app .student-shell #content .button {
  border-radius: var(--student-control-radius);
  min-height: 44px;
}
.library-app .student-shell #content :is(.field,.books-search input,.daily-calendar input) {
  border-radius: var(--student-control-radius);
  border-color: var(--student-card-line);
}
@media(min-width:721px) {
  .library-app .student-shell #content :is(.books>.student-screen-head,.university-directory>.student-screen-head,.portfolio-heading,.posts-heading,.work-heading,.daily-heading,.homework-heading,.subjects-catalog .student-screen-head,.ielts-catalog .student-screen-head,.sat-catalog .student-screen-head) {
    box-sizing: border-box;
    min-height: 238px;
    padding: 32px 36px;
  }
}
@media(max-width:720px) {
  .library-app .student-shell:has(#content :is(.student-library,.books,.university-directory,.portfolio,.posts,.work,.daily,.homework,.subjects-catalog,.ielts-catalog,.sat-catalog)) #workspace { padding: 18px 16px 32px; }
  .library-app .student-shell #content :is(.student-screen-head,.portfolio-heading,.posts-heading,.work-heading,.daily-heading,.homework-heading) h1 { font-size: 2rem; }
  .library-app .student-shell #content :is(.student-screen-head,.portfolio-heading,.posts-heading,.work-heading,.daily-heading,.homework-heading) p { line-height: 1.5; }
}
