/* FAAPlus: shared responsive theme. Keep document and certificate styles separate. */
:root { --faa-blue:rgb(79,145,205); --faa-grey:rgb(148,155,161); --faa-ink:#19324b; --faa-muted:#52667a; --faa-line:#dce5ee; --faa-surface:#fff; }
* { box-sizing:border-box; }
body { margin:0; min-height:100vh; border-top:4px solid var(--faa-blue); background:#f2f6fa url('../images/site-bg.jpg') center top / cover fixed no-repeat; color:var(--faa-ink); font:16px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif; }
#repeater { width:100%; max-width:100%; top:auto; margin:0; background:none; }
#masterContainer { position:relative; top:auto; width:calc(100% - 48px); max-width:1320px; height:auto!important; min-height:65vh; margin:32px auto 24px; padding:32px; background:white; border:1px solid var(--faa-line); border-radius:16px; box-shadow:0 8px 32px #19324b0a; }
#mastText { position:static; font:600 15px/1.6 system-ui,sans-serif; color:var(--faa-muted); padding-bottom:16px; }
.faa-brand { display:block; width:240px; max-width:70%; margin-bottom:20px; }
.faa-brand img { display:block; width:100%; height:auto; }
#mastText:has(+ .faa-login-welcome) { border-bottom:1px solid var(--faa-grey); }
.faa-login-welcome { text-align:center; margin:28px 0; }
.faa-login-welcome #pageTitle { margin:0 0 10px; }
.faa-login-welcome p { margin:0; color:var(--faa-muted); }
#mastBox { position:static; width:auto; height:auto; min-height:44px; background:none; display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; padding:12px 0; border-top:1px solid var(--faa-line); }
.mbText,.mbTextR { position:static; font:14px/1.5 system-ui,sans-serif; }
#mastBox { border-top-color:var(--faa-grey); }
#menupos { position:relative; top:auto; left:auto; width:100%; margin:12px 0 28px; z-index:1000; isolation:isolate; }
#cssmenu { width:100%; height:auto; min-height:49px; background:var(--faa-ink); border-radius:10px; }
#cssmenu>ul { display:flex; flex-wrap:wrap; }
#cssmenu>ul>li { float:none; }
#cssmenu a:focus-visible { outline:3px solid #80c9ff; outline-offset:-3px; }
#pageTitle { position:static; margin:20px 0; font:700 clamp(22px,3vw,32px)/1.25 system-ui,sans-serif; color:var(--faa-ink); }
#detailsForm,#dashboardPanel,#loginForm,#inputFormCertVal { position:relative; top:auto; left:auto; width:100%; height:auto; min-height:0; color:var(--faa-ink); font:15px/1.6 system-ui,sans-serif; }
#dashboardPanel { display:flex; gap:28px; flex-wrap:wrap; align-items:flex-start; z-index:0; }
#cssmenu:not(.faa-menu-ready) .has-sub:focus-within > ul { display:block; }
#cssmenu.faa-menu-ready > ul { float:none; width:100%; }
#menupos #cssmenu.faa-menu-ready { height:auto; }
#cssmenu .faa-menu-toggle { display:none; }
#cssmenu .faa-submenu-toggle { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:49px; padding:0 20px; border:0; border-radius:0; background:var(--faa-ink); color:white; font:12px/1.4 system-ui,sans-serif; }
#cssmenu .faa-submenu-toggle::after { content:'▾'; }
#menupos #cssmenu.faa-menu-ready > ul > li > a,
#menupos #cssmenu.faa-menu-ready > ul > li > .faa-submenu-toggle { display:flex; align-items:center; min-height:49px; padding:0 10px; border:0; border-radius:0; background:var(--faa-ink); color:white; font:12px/1.4 system-ui,sans-serif; white-space:nowrap; text-decoration:none; text-shadow:none; box-shadow:none; }
#menupos #cssmenu.faa-menu-ready > ul > li > .faa-submenu-toggle { gap:6px; }
#menupos #cssmenu.faa-menu-ready > ul > li:hover > a,
#menupos #cssmenu.faa-menu-ready > ul > li:hover > .faa-submenu-toggle,
#menupos #cssmenu.faa-menu-ready > ul > li.active > a,
#menupos #cssmenu.faa-menu-ready > ul > li.active > .faa-submenu-toggle,
#menupos #cssmenu.faa-menu-ready > ul > li.faa-submenu-open > .faa-submenu-toggle { background:#294b6a; color:white; }
#cssmenu .faa-submenu-open > ul { display:block; }
#menupos #cssmenu.faa-menu-ready .has-sub > ul { display:none; }
#menupos #cssmenu.faa-menu-ready .has-sub.faa-submenu-open > ul { display:block; }
#cssmenu button:focus-visible { outline:3px solid #80c9ff; outline-offset:-3px; }
#filterwrapperorders,.faa-filter-panel { position:static; width:100%; max-width:100%; height:auto!important; min-width:0; padding:18px; margin:0 0 24px; border:1px solid var(--faa-line); border-radius:10px; background:#f8fafc; }
#filterwrapperorders fieldset,.faa-filter-panel fieldset { min-width:0; margin:0; padding:0; border:0; }
#filterwrapperorders legend,.faa-filter-panel legend { display:block; float:none; position:static; width:100%; padding:0 0 14px; border:0; color:var(--faa-ink); text-align:left; font-size:1rem; font-weight:700; }
.faa-date-control { display:flex; align-items:center; gap:6px; min-width:0; }
.faa-date-control input { min-width:0; flex:1; }
.faa-date-control .ui-datepicker-trigger { flex:0 0 auto; width:18px; height:18px; cursor:pointer; }
.faa-filter-checks { grid-column:1/-1; display:flex; gap:16px; flex-wrap:wrap; }
.faa-orders-filter-grid .faa-filter-checks label { flex-direction:row; align-items:center; font-weight:400; }
.faa-orders-filter-grid .faa-filter-checks input { width:auto; }
.faa-filter-actions { display:flex; justify-content:flex-end; margin-top:18px; }
#filtercontrol .faa-filter-actions input[type=submit] { width:auto; min-height:44px; border:0; background:var(--faa-blue); color:#10263b; font-weight:600; }
.faa-filter-summary { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; margin-bottom:18px; }
.faa-filter-summary label { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.faa-filter-summary p { margin:0; }
#menupos #cssmenu.faa-menu-ready > ul > li { position:relative; }
#menupos #cssmenu.faa-menu-ready .has-sub > ul { top:calc(100% - 1px); left:0; margin:0; padding:0; z-index:1100; }
#menupos #cssmenu.faa-menu-ready .has-sub > ul::before { content:''; position:absolute; top:-8px; left:0; width:100%; height:8px; }
.faa-orders-filter-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.faa-orders-filter-grid label { display:flex; flex-direction:column; gap:6px; min-width:0; font-weight:600; }
.faa-orders-filter-grid input,.faa-orders-filter-grid select { width:100%; min-width:0; font-weight:400; }
.faa-orders-filter-wide { grid-column:span 2; }
.faa-orders-table-scroll { width:100%; max-width:100%; clear:both; overflow-x:auto; border:1px solid var(--faa-line); border-radius:8px; }
.faa-orders-table-scroll #orderstable { width:100%; min-width:880px; }
.faa-orders-table-scroll #orderstable td { padding:12px; overflow-wrap:normal; vertical-align:middle; }
.faa-orders-table-scroll #orderstable td:not(:nth-child(2)) { white-space:nowrap; }
.faa-orders-table-scroll #orderstable tr:nth-child(2) { background:#edf3f9; }
.faa-orders-table-scroll #orderstable tr.rowRes:hover { background:#f2f7fc; }
@media(max-width:1024px) {
  #menupos #cssmenu.faa-menu-ready .faa-menu-toggle { display:flex; width:100%; justify-content:space-between; min-height:49px; border:0; border-radius:8px; padding:12px 18px; color:white; background:var(--faa-ink); }
  #menupos #cssmenu.faa-menu-ready .faa-menu-toggle::after { content:'☰'; }
  #menupos #cssmenu.faa-menu-ready > ul { display:none; float:none; width:100%; }
  #menupos #cssmenu.faa-menu-ready.faa-menu-open > ul { display:block; }
  #menupos #cssmenu.faa-menu-ready > ul > li { display:block; float:none; width:100%; }
  #menupos #cssmenu.faa-menu-ready a,#menupos #cssmenu.faa-menu-ready .faa-submenu-toggle { display:flex; width:100%; min-height:44px; padding:12px 18px; line-height:1.5; }
  #menupos #cssmenu.faa-menu-ready > ul > li > a,#menupos #cssmenu.faa-menu-ready > ul > li > .faa-submenu-toggle { min-height:44px; padding:12px 18px; line-height:1.5; }
  #menupos #cssmenu.faa-menu-ready .has-sub > ul { display:none; position:static; width:100%; max-width:none; }
  #menupos #cssmenu.faa-menu-ready .has-sub > ul::before { display:none; }
  #menupos #cssmenu.faa-menu-ready .has-sub.faa-submenu-open > ul { display:block; }
  #menupos #cssmenu.faa-menu-ready > ul > li:hover::after { display:none; }
  #menupos #cssmenu.faa-menu-ready .has-sub ul a { padding-left:30px; }
  .faa-orders-filter-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:540px) {
  .faa-orders-filter-grid { grid-template-columns:minmax(0,1fr); }
  .faa-orders-filter-wide { grid-column:auto; }
  #filterwrapperorders { padding:14px; }
}
#dashboardPanel > #manageQualificationsInlayText { position:static; inset:auto; flex:1 1 100%; width:100%; min-width:0; max-width:100%; overflow-x:auto; }
#manageQualificationsInlayText td { overflow-wrap:anywhere; }
#manageQualificationsInlayText > table { min-width:32rem; }
#manageQualificationsInlayText > table td:first-child,#manageQualificationsInlayText > table td:last-child { overflow-wrap:normal; }
#manageQualificationsInlayText .jHtmlArea,#manageQualificationsInlayText iframe { max-width:100%; }
#dashInlayText { position:static; width:auto!important; min-width:0; max-width:100%; flex:1 1 440px; height:auto; overflow-wrap:anywhere; font:15px/1.7 system-ui,sans-serif; }
#centredetails_right_notes { float:none; flex:1 1 320px; width:auto!important; max-width:100%; border:1px solid var(--faa-line)!important; border-radius:12px; overflow:auto; }
#loginForm { max-width:620px; margin:32px auto; padding:28px; border:1px solid var(--faa-line); border-radius:12px; background:#f8fafc; }
#loginForm { animation:faa-login-fade-in 700ms ease-out both; }
.faa-password-field { display:flex; align-items:center; gap:8px; width:100%; }
#loginForm #username,#loginForm #nlname { width:100%; }
.faa-password-field input { flex:1; min-width:0; }
#loginForm .faa-password-toggle { flex:0 0 auto; min-width:64px; min-height:44px; padding:8px; background:transparent; border:1px solid #b8c8d8; color:#245d91; }
.faa-password-toggle:focus-visible { outline:3px solid var(--faa-blue); outline-offset:2px; }
@keyframes faa-login-fade-in { from { opacity:0; } to { opacity:1; } }
@media (prefers-reduced-motion:reduce) { #loginForm { animation:none; } }
#cookiebox { position:static; width:auto; margin:20px 0; color:var(--faa-muted); font:14px/1.6 system-ui,sans-serif; }
#footer { position:static; width:calc(100% - 48px); max-width:1320px; height:auto; margin:20px auto; padding:16px; background:none; }
#copyText { position:static; color:var(--faa-muted); font:12px/1.6 system-ui,sans-serif; text-align:center; }
.faa-login-links { display:grid; gap:12px; margin:8px 0 24px; }
.faa-login-links a { display:flex; align-items:center; gap:12px; width:fit-content; }
.faa-login-links img { display:block; flex:0 0 13px; width:13px; height:13px; }
.faa-login-actions { display:flex; justify-content:flex-end; }
.faa-forgot-password #pageTitle { text-align:center; }
.faa-forgot-password #form_password p { margin:0 0 24px; }
.faa-forgot-password #form_password > label { display:block; margin-bottom:8px; font-weight:600; }
.faa-forgot-password #email { width:100%; }
.faa-reminder-actions { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:12px; margin-top:24px; }
.faa-reminder-actions > * { box-sizing:border-box; }
.faa-forgot-password #send { margin:0; }
.faa-reminder-actions .faa-reminder-back { display:inline-flex; justify-content:center; align-items:center; min-height:44px; padding:10px 18px; border:1px solid #b8c8d8; border-radius:6px; background:#fff; color:#245d91; font:600 14px system-ui,sans-serif; text-decoration:none; }
.faa-reminder-actions .faa-reminder-back:hover { background:#eef4fa; }
.faa-reminder-actions .faa-reminder-back:focus-visible { outline:3px solid var(--faa-blue); outline-offset:3px; }
@media(max-width:480px) { .faa-reminder-actions > * { width:100%; text-align:center; } }
#loginForm .faa-login-actions #login { margin:0; }
a { color:#245d91; text-underline-offset:3px; }
input:not([type=checkbox]):not([type=radio]):not([type=image]):not([type=hidden]),select,textarea { max-width:100%; border:1px solid #b8c8d8; border-radius:6px; padding:10px 12px; font:inherit; background:white; color:var(--faa-ink); }
input:focus-visible,select:focus-visible,textarea:focus-visible { outline:3px solid #1763a62b; border-color:var(--faa-blue); }
button,input[type=submit],input[type=button] { min-height:44px; padding:10px 18px; border:0; border-radius:6px; background:var(--faa-blue); color:#10263b; font:600 14px system-ui,sans-serif; cursor:pointer; }
img { max-width:100%; height:auto; }
table { max-width:100%; border-collapse:collapse; }
th { text-align:left; background:#edf3f9; }
td,th { padding:8px; }
.titleHighlight { color:var(--faa-blue); font:700 20px system-ui,sans-serif; }
.ui-dialog { max-width:calc(100vw - 24px); }
@media(max-width:760px) {
  #masterContainer { width:calc(100% - 24px); margin:12px auto; padding:18px; border-radius:10px; }
  #mastBox { display:block; } .mbText,.mbTextR { display:block; } .mbTextR { margin-top:8px; }
  #cssmenu>ul { display:block; } #cssmenu>ul>li { display:block; width:100%; }
  #cssmenu ul ul { left:0; max-width:calc(100vw - 70px); }
  #detailsForm { overflow-x:auto; }
  #dashboardPanel { display:block; } #centredetails_right_notes { margin-top:24px!important; }
  #loginForm { padding:16px; } #loginForm td { display:block; width:100%; height:auto; padding:6px 0; text-align:left; }
  #loginForm .inputBox { width:100%; } #loginForm input[type=image] { margin:12px 0; }
  #footer { width:100%; } #dashMenu { position:static; width:100%; }
  #centredetails_left,#centredetails_right,#centredetails_right_dates,#centredetails_right_account { float:none; width:100%; max-width:100%; }
}
@media print { body { background:white; border:0; } #masterContainer { width:100%; margin:0; padding:0; border:0; box-shadow:none; } #menupos,#mastBox { display:none; } }

/* Responsive listing tables: scroll data, not the surrounding page or controls. */
.faa-table-scroll { position:relative; width:100%; max-width:100%; min-width:0; clear:both; overflow-x:auto; margin:16px 0 24px; border:1px solid var(--faa-line); border-radius:8px; }
.faa-table-scroll:focus-visible { outline:3px solid var(--faa-blue); outline-offset:2px; }
#manageQualificationsInlayText:has(> .faa-table-scroll) > table { min-width:0; }
.faa-table-scroll > table.faa-data-table { width:100%; max-width:none; min-width:42rem; margin:0!important; border-collapse:collapse; }
.faa-table-scroll > table.faa-data-table.faa-table-wide { min-width:58rem; }
.faa-data-table > tbody > tr > td,.faa-data-table > thead > tr > th { padding:12px; vertical-align:middle; overflow-wrap:normal; word-break:normal; }
.faa-data-table > tbody > tr:first-child > td,.faa-data-table > thead > tr > th { background:#edf3f9; color:var(--faa-ink); font-weight:700; }
.faa-data-table > tbody > tr:nth-child(2n+3) { background:#f8fafc; }
.faa-data-table > tbody > tr.rowRes:hover,.faa-data-table > tbody > tr.rowResPlain:hover { background:#f2f7fc; }
.faa-data-table > tbody > tr > td:first-child,.faa-data-table > tbody > tr > td:last-child { white-space:nowrap; }
.faa-data-table .listingTopPic { max-width:220px; max-height:110px; object-fit:contain; }
#searchdelegate { min-height:44px; padding:10px 18px 10px 34px; background:var(--faa-blue); color:#10263b; border:0; }
#menupos .dropit { margin:7px; line-height:21px; }

/* A single aligned progress line replaces the fixed-size batch bitmaps. */
.faa-upload-progress { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; width:100%; max-width:52rem; list-style:none; margin:12px 0 28px; padding:0; }
.faa-upload-progress li { position:relative; min-width:0; margin:0; padding:0 6px; text-align:center; color:var(--faa-muted); font:600 12px/1.4 system-ui,sans-serif; }
.faa-upload-progress li::after { content:''; position:absolute; top:13px; left:50%; width:100%; height:2px; background:var(--faa-line); }
.faa-upload-progress li:last-child::after { display:none; }
.faa-upload-progress .faa-step-number { position:relative; z-index:1; display:flex; justify-content:center; align-items:center; width:28px; height:28px; margin:0 auto 8px; border-radius:50%; background:#e7edf3; color:var(--faa-muted); border:2px solid #e7edf3; }
.faa-upload-progress .is-complete .faa-step-number,.faa-upload-progress [aria-current=step] .faa-step-number { background:var(--faa-blue); border-color:var(--faa-blue); color:#10263b; }
.faa-upload-progress .is-complete::after { background:var(--faa-blue); }
.faa-upload-progress [aria-current=step] { color:var(--faa-ink); }
#main_outer table:has(input[name=csv_file]) { width:100%; min-width:0; table-layout:fixed; }
#main_outer input[name=csv_file] { width:100%; min-width:0; max-width:100%; }

/* Order detail cards retain all existing forms and action controls. */
.faa-order-page #changeStatus { position:static; width:100%; height:auto; margin:0 0 24px; padding:14px; border:1px solid var(--faa-line); border-radius:10px; background:#f8fafc; }
.faa-order-page #backto { position:static; width:auto; height:auto; margin:20px 0; transform:none; -webkit-transform:none; -moz-transform:none; -o-transform:none; filter:none; z-index:auto; }
.faa-order-page #backto a { display:inline-flex; align-items:center; justify-content:center; gap:8px; box-sizing:border-box; width:auto; max-width:100%; min-height:44px; height:auto; padding:10px 18px; border:1px solid #b8c8d8; border-radius:6px; background:#fff; color:#245d91; font:600 14px/1.4 system-ui,sans-serif; text-decoration:none; }
.faa-order-page #backto a:hover { background:#eef4fa; }
.faa-order-page #backto a:focus-visible { outline:3px solid var(--faa-blue); outline-offset:3px; }
.faa-cancel-pagination { display:flex; align-items:center; flex-wrap:wrap; gap:12px; }
.faa-cancel-pagination a { display:inline-flex; align-items:center; justify-content:center; box-sizing:border-box; min-height:44px; padding:10px 16px; border:1px solid #b8c8d8; border-radius:6px; background:#fff; color:#245d91; font-weight:600; text-decoration:none; }
.faa-cancel-pagination a:hover { background:#eef4fa; }
.faa-cancel-pagination a:focus-visible { outline:3px solid var(--faa-blue); outline-offset:2px; }
.faa-table-scroll > table.faa-cancel-table { min-width:850px; }
.faa-cancel-table > tbody > tr:first-child > td { white-space:nowrap; }
.faa-cancel-table td { white-space:normal; overflow-wrap:normal; }
.faa-cancel-table td:nth-child(2) { min-width:260px; }
.faa-cancel-table td:nth-child(4) { min-width:150px; }
.faa-course-page-jump { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.faa-course-page-jump input[type=number] { width:88px; min-height:44px; box-sizing:border-box; }
.faa-course-ref-controls { display:grid; grid-template-columns:minmax(0,420px) auto; gap:16px; align-items:end; justify-content:start; }
.faa-course-ref-controls label { display:flex; flex-direction:column; gap:6px; min-width:0; font-weight:600; }
.faa-course-ref-controls input[type=text] { width:100%; min-width:0; min-height:44px; box-sizing:border-box; }
.faa-course-ref-controls #qfsub { min-height:44px; background:var(--faa-blue); color:#10263b; border:0; font:600 14px system-ui,sans-serif; }
#vcres:has(.faa-course-action-table) { font:inherit; }
.faa-course-action-table > tbody > tr:first-child > td { white-space:nowrap; }
.faa-course-action-table td { white-space:normal; overflow-wrap:normal; }
.faa-course-action-table td:nth-child(2) { min-width:240px; }
@media(max-width:760px) { .faa-course-ref-controls { grid-template-columns:minmax(0,1fr); } .faa-course-ref-controls input[type=submit] { width:100%; } }
@media(max-width:760px) {
  .faa-edit-delegate-page #form_updatedelegate { width:100%; min-width:0; max-width:100%; }
  .faa-edit-delegate-page #form_updatedelegate table,
  .faa-edit-delegate-page #form_updatedelegate tbody,
  .faa-edit-delegate-page #form_updatedelegate tr,
  .faa-edit-delegate-page #form_updatedelegate td { display:block; width:100%!important; min-width:0; max-width:100%; height:auto!important; box-sizing:border-box; }
  .faa-edit-delegate-page #form_updatedelegate tr { margin-bottom:14px; }
  .faa-edit-delegate-page #form_updatedelegate td { padding:8px 0; text-align:left; overflow-wrap:normal; word-break:normal; }
  .faa-edit-delegate-page #form_updatedelegate td:first-child:not(:only-child) { font-weight:600; border-bottom:0; padding-bottom:4px; }
  .faa-edit-delegate-page #form_updatedelegate input:not([type=hidden]):not([type=checkbox]):not([type=radio]),
  .faa-edit-delegate-page #form_updatedelegate select,
  .faa-edit-delegate-page #form_updatedelegate textarea { width:100%; min-width:0; max-width:100%; min-height:44px; height:auto; margin:0; box-sizing:border-box; }
  .faa-edit-delegate-page #form_updatedelegate .ui-datepicker-trigger { width:20px; height:20px; margin:8px 0; cursor:pointer; }
  .faa-edit-delegate-page #form_updatedelegate .jbutton { display:flex; align-items:center; justify-content:center; box-sizing:border-box; width:100%; min-height:44px; padding:10px 24px; margin:8px 0; white-space:normal; }
}
.faa-course-page #viewCoursesInner,.faa-course-page #viewCoursesOuter { width:100%; min-width:0; max-width:100%; font:inherit; }
.faa-course-page #vciprinter { position:static; width:auto; height:auto; display:flex; justify-content:flex-end; margin-bottom:12px; }
.faa-course-page .faa-course-details { width:100%; min-width:0; max-width:100%; border:1px solid var(--faa-line); border-radius:10px; border-collapse:separate; border-spacing:0; background:#fff; }
.faa-course-page .faa-course-details > tbody > tr > td { height:auto; padding:14px 18px; vertical-align:top; border-bottom:1px solid var(--faa-line); overflow-wrap:anywhere; }
.faa-course-page .faa-course-details > tbody > tr > td:first-child:not([colspan]) { width:30%; background:#f5f8fb; color:#294b6a; }
.faa-course-page .faa-course-details > tbody > tr:last-child > td { border-bottom:0; }
.faa-course-page .faa-course-details > tbody > tr:first-child > td:first-child { border-top-left-radius:10px; }
.faa-course-page .faa-course-details > tbody > tr:first-child > td:last-child { border-top-right-radius:10px; }
.faa-course-page .faa-course-details .atext { width:auto; min-width:0; max-width:100%; margin:0; font:inherit; }
.faa-course-page .jbutton { display:inline-flex; align-items:center; justify-content:center; gap:8px; box-sizing:border-box; min-height:44px; max-width:100%; margin:4px 6px 4px 0; padding:10px 16px; border:1px solid #b8c8d8; border-radius:6px; background:#fff; color:#245d91; font:600 14px/1.4 system-ui,sans-serif; white-space:normal; text-align:center; text-decoration:none; cursor:pointer; }
.faa-course-page .jbutton .ui-icon { position:static; flex:0 0 16px; margin:0; }
.faa-course-page .jbutton:hover { background:#eef4fa; border-color:var(--faa-blue); }
.faa-course-page .jbutton:focus-visible { outline:3px solid var(--faa-blue); outline-offset:2px; }
.faa-course-page #updatesub { background:var(--faa-blue); color:#10263b; border-color:var(--faa-blue); }
.faa-course-page #updatesub:hover { background:#75a8d6; }
.faa-course-page #sesresult { max-width:100%; overflow-x:auto; }
.faa-course-page #sesresult table { min-width:380px; }
.faa-course-page #sesresult td { padding:10px 8px; text-align:left; white-space:nowrap; }
.faa-course-page #sesresult tr:first-child td { background:#edf3f9; color:#294b6a; }
.faa-course-page #viewCoursesOuter { margin-top:28px; }
.faa-course-page .faa-course-delegates { min-width:900px; }
.faa-course-page .faa-course-delegates td { white-space:normal; overflow-wrap:normal; }
.faa-course-edit #updatecinfo input:not([type=hidden]):not([type=checkbox]):not([type=radio]),.faa-course-edit #updatecinfo select,.faa-course-edit #updatecinfo textarea { width:100%; min-width:0; max-width:100%; margin:0; box-sizing:border-box; font-weight:400; }
.faa-course-edit #updatecinfo textarea { min-height:130px; resize:vertical; }
.faa-course-edit #updatecinfo input:not([type=hidden]):not([type=checkbox]):not([type=radio]),.faa-course-edit #updatecinfo select { min-height:44px; height:auto; padding:10px 12px; }
.faa-course-edit #updatecinfo #start_date,.faa-course-edit #updatecinfo #end_date { width:calc(100% - 36px); max-width:240px; }
.faa-course-edit #updatecinfo .ui-datepicker-trigger { width:20px; height:20px; margin-left:8px; vertical-align:middle; cursor:pointer; }
@media(max-width:760px) {
  .faa-course-page .faa-course-details,.faa-course-page .faa-course-details > tbody,.faa-course-page .faa-course-details > tbody > tr,.faa-course-page .faa-course-details > tbody > tr > td { display:block; width:100%!important; min-width:0; max-width:100%; box-sizing:border-box; }
  .faa-course-page .faa-course-details > tbody > tr > td { padding:12px 14px; }
  .faa-course-page .faa-course-details > tbody > tr > td:first-child:not([colspan]) { border-bottom:0; padding-bottom:8px; }
  .faa-course-page .faa-course-details > tbody > tr > td:first-child:not([colspan]) + td { padding-top:10px; }
  .faa-course-page .faa-course-details > tbody > tr:last-child > td { border-bottom:0; }
  .faa-course-page .jbutton { width:100%; margin:5px 0; }
}
.faa-edit-centre-page #quallist { position:relative; max-width:100%; }
.faa-edit-centre-page #quallist > table { min-width:760px; }
.faa-edit-centre-page #quallist td { padding:8px; }
@media(max-width:900px) {
  .faa-edit-centre-page #centredetails_left { min-width:0; width:100%; float:none; }
  .faa-edit-centre-page #form_addcentre > table { width:100%; max-width:100%; }
  .faa-edit-centre-page #form_addcentre > table > tbody,
  .faa-edit-centre-page #form_addcentre > table > tbody > tr,
  .faa-edit-centre-page #form_addcentre > table > tbody > tr > td { display:block; width:100%!important; min-width:0; max-width:100%; height:auto; box-sizing:border-box; }
  .faa-edit-centre-page #form_addcentre > table > tbody > tr { margin:0 0 12px; }
  .faa-edit-centre-page #form_addcentre > table > tbody > tr > td { padding:6px 0; text-align:left; }
  .faa-edit-centre-page #form_addcentre > table > tbody > tr > td:first-child { border-bottom:0; font-weight:600; }
  .faa-edit-centre-page #form_addcentre input:not([type=checkbox]):not([type=radio]):not([type=hidden]),
  .faa-edit-centre-page #form_addcentre select { width:100%!important; min-width:0; max-width:100%; box-sizing:border-box; }
  .faa-edit-centre-page #viewbuttons { float:none; display:flex; flex-direction:column; align-items:stretch; gap:10px; margin:20px 0; }
  .faa-edit-centre-page #viewbuttons a { box-sizing:border-box; margin:0; min-height:44px; white-space:normal; text-align:center; }
  .faa-edit-centre-page #centredetails_right_account,
  .faa-edit-centre-page #centredetails_right_notes,
  .faa-edit-centre-page #centredetails_right_dates { box-sizing:border-box; width:100%; float:none; height:auto; min-width:0; margin:20px 0; padding:16px; }
  .faa-edit-centre-page #note { width:100%; min-width:0; max-width:100%; box-sizing:border-box; }
  .faa-edit-centre-page #manageQualificationsInlayText > table { width:100%; min-width:0; max-width:100%; table-layout:fixed; }
  .faa-edit-centre-page #manageQualificationsInlayText > table:has(#perm_allow_centre_document_upload) td:first-child { width:36px; }
  .faa-edit-centre-page .faa-centre-price-total,
  .faa-edit-centre-page .faa-centre-price-total tbody,
  .faa-edit-centre-page .faa-centre-price-total tr,
  .faa-edit-centre-page .faa-centre-price-total td { display:block; width:100%!important; height:auto; box-sizing:border-box; }
  .faa-edit-centre-page .faa-centre-price-total td { padding:8px; }
  .faa-edit-centre-page .faa-centre-price-total td:first-child { display:none; }
}
.faa-instqual-add-grid { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:16px; }
.faa-instqual-add-grid label { display:flex; flex-direction:column; gap:6px; font-weight:600; min-width:0; }
.faa-instqual-add-grid input { width:100%; min-width:0; font-weight:400; }
.faa-instructor-quals-page #resultstable { min-width:680px; }
.faa-instructor-quals-page #resultstable > tr:nth-child(2) > td,.faa-instructor-quals-page #resultstable > tbody > tr:nth-child(2) > td { background:#edf3f9; padding:12px 10px; white-space:nowrap; }
.faa-instructor-quals-page #resultstable td { padding:10px; overflow-wrap:normal; }
.faa-instructor-quals-page #resultstable > tr:first-child > td,.faa-instructor-quals-page #resultstable > tbody > tr:first-child > td { height:auto; padding:0 0 18px; }
.faa-instructor-quals-page #activeselect { position:relative; float:none!important; display:flex; align-items:center; flex-wrap:wrap; justify-content:flex-start; gap:8px; width:fit-content; max-width:calc(100vw - 110px); padding:14px; border:1px solid var(--faa-line); border-radius:10px; background:#f8fafc; text-align:left!important; }
.faa-instructor-quals-page #activeselect label { border:1px solid #b8c8d8; border-radius:6px; background:#fff; color:#245d91; font:600 14px/1.4 system-ui,sans-serif; }
.faa-instructor-quals-page #activeselect .ui-button-text { padding:11px 14px; }
.faa-instructor-quals-page #activeselect .ui-state-active { background:var(--faa-blue); color:#10263b; border-color:var(--faa-blue); }
.faa-instructor-quals-page #activeselect label:hover { border-color:var(--faa-blue); }
.faa-instructor-quals-page #activeselect input:focus-visible + label { outline:3px solid var(--faa-blue); outline-offset:2px; }
@media(max-width:760px) {
  .faa-instqual-add-grid { grid-template-columns:minmax(0,1fr); }
  .faa-instructor-quals-page #activeselect strong { flex-basis:100%; }
}
.faa-order-page #manageQualificationsInlayText > .clearfix:has(.addressInvoice),.faa-order-page #manageQualificationsInlayText > .clearfix:has(.oNotes),.faa-order-page #manageQualificationsInlayText > .clearfix:has(.oInvoicing),.faa-order-page #manageQualificationsInlayText > .clearfix:has(.oPayment) { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr)); gap:20px; margin:20px 0; }
.faa-order-page .addressInvoice,.faa-order-page .addressShip,.faa-order-page .oNotes,.faa-order-page .oInvoicing,.faa-order-page .oPayment { position:static; float:none; width:auto; min-width:0; max-width:100%; min-height:0; margin:0; padding:18px; border:1px solid var(--faa-line); border-radius:10px; background:#f8fafc; overflow-wrap:anywhere; }
.faa-order-page .oaddressh { display:block; margin-bottom:10px; color:var(--faa-ink); font-size:16px; font-weight:700; }
.faa-order-page .oaddressh + br { display:none; }
.faa-order-page .cnotes { width:auto; max-width:100%; white-space:normal; }
.faa-order-page .notes { width:100%; min-width:0; }
.faa-order-page .clearfix:has(#addressInvoice_html) { grid-template-columns:repeat(2,minmax(0,1fr))!important; align-items:stretch; }
.faa-order-page #addressInvoice_html { display:block; grid-column:1; grid-row:1; min-height:0!important; }
.faa-order-page #addressShipping_html { display:block; grid-column:2; grid-row:1; min-height:0!important; }
.faa-order-page .clearfix:has(#addressInvoice_html) > .create_label_from_address { grid-column:1; grid-row:2; justify-self:start; }
.faa-order-page .clearfix:has(#addressInvoice_html) > #label_button { grid-column:2; grid-row:2; justify-self:start; }
.faa-order-page #addressInvoice_html > .addressInvoice,.faa-order-page #addressShipping_html > .addressShip { width:100%; height:100%; }
.faa-order-page .faa-data-table > tbody > tr > td { white-space:normal; }
.faa-order-page .faa-data-table > tbody > tr > td:first-child { min-width:240px; }
.faa-order-page .faa-data-table > tbody > tr > td:not(:first-child) { min-width:90px; }

@media(max-width:760px) {
  .faa-order-page .clearfix:has(#addressInvoice_html) { grid-template-columns:minmax(0,1fr)!important; }
  .faa-order-page .clearfix:has(#addressInvoice_html) > * { grid-column:1!important; grid-row:auto!important; }
  .faa-order-page #addressInvoice_html { order:0; }
  .faa-order-page #addressShipping_html { order:1; }
  .faa-order-page .create_label_from_address { order:2; }
  .faa-order-page #label_button { order:3; }
  #manageQualificationsInlayText:has(> .faa-table-scroll) > table > tbody > tr,#manageQualificationsInlayText:has(> .faa-table-scroll) > table > tbody > tr > td { display:block; width:100%; height:auto; text-align:left; }
  #form_addcourse { width:100%; min-width:0; max-width:100%; }
  #form_addcourse table { width:100%; min-width:0; max-width:100%; }
  #form_addcourse tbody,#form_addcourse tr,#form_addcourse td { display:block; width:100%!important; max-width:100%; height:auto!important; }
  #form_addcourse td { overflow-wrap:normal; word-break:normal; padding:8px 0; }
  #form_addcourse td:first-child:not(:only-child) { border-bottom:0; padding-bottom:4px; font-weight:600; }
  #form_addcourse input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]),#form_addcourse select,#form_addcourse textarea { width:100%; min-width:0; max-width:100%; }
  .faa-order-page #changeStatus table,.faa-order-page #changeStatus tbody,.faa-order-page #changeStatus tr,.faa-order-page #changeStatus td { display:block; width:100%; height:auto; text-align:left; }
  .faa-upload-progress li { padding:0 3px; font-size:11px; }
}
@media print { .faa-table-scroll { overflow:visible; border:0; } .faa-table-scroll > table.faa-data-table { min-width:0; } }
@media(max-width:760px) {
  #form_details table,#form_details tbody,#form_details tr,#form_details td { display:block; width:100%!important; max-width:100%; min-width:0; height:auto!important; }
  #form_details td { padding:6px 0; text-align:left; overflow-wrap:normal; }
  #form_details td.smallText { font-weight:600; border-bottom:0; }
  #form_details input:not([type=checkbox]):not([type=radio]):not([type=hidden]),#form_details select { width:100%; min-width:0; max-width:100%; }
}
/* One course entry form, with explicit timing and accessible radio choices. */
.faa-course-mode { margin: 20px 0; padding: 16px; border: 1px solid #d7e1eb; border-radius: 8px; min-width: 0; }
.faa-course-mode legend { float: none; color: #245782; font: 600 16px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif; text-align: left; padding: 0 6px; width: auto; }
.faa-course-mode-options { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.faa-course-mode-options label { display: flex; align-items: flex-start; gap: 10px; padding: 14px; border: 1px solid #cbd5df; border-radius: 6px; cursor: pointer; background: #fff; line-height: 1.5; }
.faa-course-mode-options label:has(input:checked) { border-color: #4f91cd; background: #edf5fc; box-shadow: inset 0 0 0 1px #4f91cd; }
.faa-course-mode-options input { flex: 0 0 auto; width: 18px; height: 18px; margin: 3px 0 0; accent-color: #4f91cd; }
.faa-course-mode-options strong, .faa-course-mode-options small { display: block; }
.faa-course-mode-options small { color: #536273; font-size: 13px; }
#faa-course-mode-help { margin: 12px 0 0; font-size: 13px; line-height: 1.5; }
.faa-course-entry-error { padding: 12px; margin-bottom: 16px; background: #fff0ef; border: 1px solid #b5534c; color: #862d27; }
@media (max-width: 600px) { .faa-course-mode-options { grid-template-columns: 1fr; } .faa-course-mode { padding: 12px; } }
