/* Shared rhythm: compact surroundings, readable content and generous touch controls. */
:root{--space-panel:1rem;--space-section:1.25rem;--space-field:.65rem}
body>header{padding:.5rem 1rem;gap:1rem}
body>header .brand{display:flex;align-items:center;gap:.55rem;flex-shrink:0}
body>header .brand-butterfly{display:block;width:3.25rem;height:2.5rem;overflow:hidden;flex:none}
body>header .brand-butterfly img{display:block;height:100%;width:auto;max-width:none}
body>header .brand-title{font-size:1.05rem;line-height:1.15;font-weight:650;letter-spacing:.01em}
@media(min-width:1001px){body>header{flex-wrap:nowrap}#main-navigation{gap:.55rem;flex-wrap:nowrap;align-items:center;font-size:.9rem}body>header>form{margin-left:auto;flex-shrink:0}body>header>form button{font-size:.85rem;padding:.4rem .6rem}#main-navigation>a{white-space:nowrap}.nav-menu{padding:.25rem .4rem}.nav-menu>summary{white-space:nowrap;align-content:center}}
main{padding:1rem 1.5rem}
body>footer{padding:1rem 1.5rem;font-size:.85rem}
main h1{margin:.1rem 0 .5rem}
main h2{margin:.2rem 0 .65rem}
main section{margin-bottom:var(--space-section)}
.heading,.report-heading,.import-heading{gap:.5rem 1rem;margin-bottom:.65rem}
.heading h1,.report-heading h1,.import-heading h1{margin:0}
.page-intro{margin:.35rem 0 .75rem}
.environment-notice{margin:0 0 .75rem;padding:.35rem .65rem;border-radius:.35rem;font-size:.85rem}
.record-back,.centre-back,.page-layout-back{margin:0 0 .65rem}
.filters,.bulk{padding:.75rem;gap:.65rem;margin-bottom:.65rem}
.filters .filter-fields{gap:.65rem;padding-top:.65rem}
.filters>label,.filters .filter-fields>label{gap:.25rem}
.more-filters{padding:.45rem .65rem}
.more-filters>summary{font-size:.9rem;font-weight:600}
.mobile-filter-panel{padding:0;margin:0;border:0;background:transparent}
.mobile-filter-panel>summary{display:none}
.student-list-filters>.sort-filter{flex-basis:11rem}
.enrolment-supporting-sections{align-items:start}
.enrolment-workspace-heading{margin-bottom:.75rem}
[data-filter-count]:empty,.filter-chips:empty{display:none}
[data-filter-count]{font-weight:400;color:#52625d}
.filter-behaviour{gap:.5rem;padding-top:.4rem}
.filter-chips,.queue-shortcuts{margin:.4rem 0;gap:.35rem}
.result-count{margin:.45rem 0}
.pagination{margin:.75rem 0;gap:.65rem;align-items:center}
/* Ordinary record lists; editable marks and document-review grids retain their sizing. */
.table-scroll:not(.marks-scroll)>table:not(.student-results-grid):not(.plan-results-table):not(.import-grid) th,
.table-scroll:not(.marks-scroll)>table:not(.student-results-grid):not(.plan-results-table):not(.import-grid) td{padding:.45rem .65rem}
.marks-scroll>table th,.marks-scroll>table td{padding:.65rem}
.table-scroll caption{padding:.45rem .65rem}
.editor{padding:var(--space-panel)}
.editor fieldset{margin:.75rem 0}
.card-body{padding:.85rem 1rem}
.student-summary,.course-results-card{padding:var(--space-panel);margin-bottom:1rem}
.student-summary-identity{margin-bottom:.65rem;gap:1rem}
.student-summary-identity h1{margin:0}
.student-summary-identity p{margin:.3rem 0}
.current-enrolments{gap:.75rem}
.current-enrolment{padding:.75rem 1rem}
.current-enrolment h2{margin:.35rem 0;font-size:1.15rem}
.current-enrolment p{margin:.3rem 0}
.current-enrolment-more{margin:.35rem 0 0;padding:.35rem .5rem}
.student-progression-summary{display:flex;justify-content:space-between;align-items:center;gap:.5rem 1rem;flex-wrap:wrap;background:#edf6f3;border-left:3px solid #408884;border-radius:.3rem;padding:.55rem .8rem;margin-bottom:.75rem;font-size:.9rem}
.student-progression-summary a{padding:.2rem 0}
.profile-tabs{margin:.75rem 0;gap:.35rem}
.student-certificates-heading{margin-bottom:.75rem}
.centre-heading{margin-bottom:.65rem}
.centre-tabs{margin:.65rem 0 1rem;gap:1rem}
.centre-tabs a{padding:.5rem .65rem}
.centre-summary{gap:1rem}
.centre-card,.centre-total{padding:1rem}
.centre-total strong{font-size:2.6rem}
.centre-stat-list a{padding:.45rem .2rem}
.centre-table-toolbar{margin:.65rem 0 .5rem;gap:.6rem}
.centre-table-toolbar h2{margin:0}
.centre-table-toolbar p{margin:.3rem 0}
.centre-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 1rem;max-width:100%}
.centre-detail-field{margin:0;min-width:0}
.centre-detail-field label{margin-bottom:.25rem}
.centre-detail-wide,.centre-details>.errorlist{grid-column:1/-1}
.centre-details>button{grid-column:1/-1;justify-self:start}
.centre-read-details{padding:1rem}
.page-layout-heading{margin-bottom:.75rem}
.page-block-grid{gap:1rem}
#profile-reports .page-block{min-height:0}
.page-block-builtin .centre-total,.page-block-builtin .centre-card{min-height:0}
.page-details-list>div{padding:.4rem 0}
.noas-heading{margin-bottom:.75rem}
.noas-register{padding:1rem}
.noas-filters{gap:.75rem}
.noas-tabs{margin-top:.75rem}
.noas-tabs a{padding:.5rem .2rem}
.noas-register-toolbar{margin:.65rem 0;gap:.5rem 1rem}
.noas-register-toolbar .noas-pagination{margin:0;font-size:.9rem;gap:.65rem}
.noas-pagination a{padding:.35rem .2rem}
.noas-table th,.noas-table td{padding:.5rem .65rem}
.noas-row-actions>.small{margin-top:.25rem}
.noas-help{margin-top:.65rem;padding:.55rem .75rem}
.noas-import{margin:1rem 0;padding:.75rem 1rem}
.noas-import-toolbar{margin:.75rem 0}
.user-access-list{gap:.65rem}
.user-access-card{padding:.75rem 1rem}
.access-last-active{flex-basis:100%}
.user-access-card details{margin:.4rem 0 0;padding:.45rem .65rem}
.access-editor{padding-top:.65rem}
.workflow-filters{gap:.65rem}
.workflow-stages{margin:.6rem 0;gap:.4rem}
.workflow-stages li{padding:.4rem .7rem}
.report-panel,.import-summary,.progression-card{padding:1rem;margin-bottom:1rem}
.report-panel>h2,.import-summary>h2,.progression-card>h2{margin-top:0}
.report-notice,.workflow-scope,.import-issue-nav{padding:.6rem .8rem;margin:.6rem 0}
.import-toolbar,.report-toolbar{gap:.6rem;margin:.6rem 0}
@media(min-width:1000px){.access-last-active{flex-basis:auto}.user-access-heading{gap:.5rem .75rem}}
@media(max-width:700px){
  .mobile-filter-panel{margin-bottom:.65rem;border:1px solid var(--line);border-radius:.4rem;background:#fff}
  .mobile-filter-panel>summary{display:list-item;min-height:44px;padding:.65rem .8rem;font-weight:600}
  .mobile-filter-panel .filters{border:0;margin-bottom:0}
  body>header{padding:.6rem .85rem}main{padding:.75rem}.heading{align-items:center}
  .filters{padding:.65rem}.filters>label,.filters>label:first-child{flex:1 1 100%;min-width:0}
  .filters input:not([type=checkbox]),.filters select,button,.button{min-height:44px}
  .more-filters>summary,.user-access-card summary,.noas-help summary{min-height:44px;align-content:center}
  .filter-chips .filter-chip{min-height:36px}
  .centre-details{grid-template-columns:minmax(0,1fr)}
  .centre-summary,.student-summary-identity{gap:.65rem}
  .student-summary,.course-results-card,.centre-card,.noas-register{padding:.8rem}
  .student-progression-summary a{padding:.5rem 0}
  .noas-register-toolbar{align-items:center}.noas-register-toolbar>p{flex:1}
  .noas-register-toolbar .noas-pagination{order:3;width:100%;justify-content:space-between}
  .noas-pagination a{min-height:44px;align-content:center}
  .noas-table td{padding:.3rem 0}.noas-table tr{margin:.6rem 0;padding:.7rem}
  .current-enrolment{padding:.7rem .8rem}
  .profile-tabs{gap:.25rem}.profile-tabs button{padding:.5rem .65rem}
}
@media print{.student-progression-summary{break-inside:avoid}}
