/* ICIVIL v43: narrow, readable student cards, embedded login dialog and independent guide poster. */
#studentAccount.dashboard-content{box-sizing:border-box!important;width:calc(100% - 48px)!important;max-width:1450px!important;margin:24px auto!important;padding:clamp(18px,2.2vw,34px)!important;border-radius:18px!important;background:var(--ui-bg,#f8faff)!important}
#studentAccount #profileEditor{max-width:100%!important;margin:0 auto!important;box-sizing:border-box!important}
#studentAccount .module-heading{padding-inline:8px!important}
#studentAccount .module-card,#studentAccount .profile-card{box-sizing:border-box!important;max-width:100%!important}
@media(max-width:700px){#studentAccount.dashboard-content{width:calc(100% - 24px)!important;margin:12px auto!important;padding:14px!important}#studentAccount .module-card{padding:16px!important}}
/* Explicit intrinsic height. Neither iframe nor child document should borrow the full viewport height. */
.site-login-dialog[open]{height:auto!important;min-height:0!important;max-height:calc(100dvh - 28px)!important;padding:0!important;overflow:hidden!important;box-sizing:border-box!important;position:fixed!important;inset:0!important;margin:auto!important;width:min(475px,calc(100vw - 24px))!important}
.site-login-dialog iframe{height:390px;min-height:0!important;max-height:calc(100dvh - 32px)!important;box-sizing:border-box!important}
.embedded-auth.account-page{min-height:0!important;height:auto!important;overflow-y:auto!important;overflow-x:hidden!important}
.embedded-auth .auth-layout,.embedded-auth .auth-side,.embedded-auth #authPanel{min-height:0!important;height:auto!important;align-items:flex-start!important;justify-content:start!important}
.embedded-auth #studentAuthDialog.auth-dialog[open]{height:auto!important;min-height:0!important;max-height:none!important;padding:49px 20px 16px!important;overflow:visible!important}
.embedded-auth .auth-card{height:auto!important;min-height:0!important;width:100%!important;max-width:440px!important;margin:0 auto!important}
.embedded-auth #studentAuthDialog .auth-heading{padding:0!important;margin:0 0 13px!important}
.embedded-auth #studentAuthDialog .account-form{margin:0!important;padding:0!important;gap:11px!important}
/* A real clickable cover independent of theme's generic button CSS. */
.ic38-video-box{position:relative!important;width:100%;max-width:100%!important}
.ic38-video-box>.ic38-video-poster{position:relative!important;display:block!important;width:100%!important;height:auto!important;aspect-ratio:16 / 9!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important;cursor:pointer!important;overflow:hidden!important;border-radius:13px!important;background:#101827!important}
.ic38-video-box>.ic38-video-poster>img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important}
.ic38-video-box>.ic38-video-poster>.ic38-video-play{position:absolute!important;top:50%!important;left:50%!important;right:auto!important;bottom:auto!important;inset:auto!important;transform:translate(-50%,-50%)!important;width:70px!important;height:70px!important;border:3px solid #fff9!important;border-radius:50%!important;background:#17253cce!important;color:white!important;display:grid!important;place-items:center!important;font-size:34px!important;line-height:1!important;pointer-events:none!important;box-shadow:0 7px 22px #0005!important}
.ic38-video-box>.ic38-video-poster:focus-visible{outline:3px solid #6488f5!important;outline-offset:3px}
/* Tabs of system settings only; preserve module-specific controls. */
#ic43SettingsTabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 12px}
#ic43SettingsTabs button{appearance:none!important;background:#f3f6fc!important;color:#263953!important;border:1px solid #cbd7ec!important;border-radius:11px!important;padding:10px 16px!important;font:inherit!important;font-size:13px!important;font-weight:700!important;cursor:pointer!important;box-shadow:none!important}
#ic43SettingsTabs button[aria-selected="true"]{color:#fff!important;background:#214e9b!important;border-color:#214e9b!important}
#ic43SettingsTabs button:focus-visible{outline:3px solid #7ca0e9!important;outline-offset:2px}
.ic43-settings-panel[hidden]{display:none!important}.ic43-settings-panel{min-width:0}
.ic43-settings-panel>h2{margin:16px 4px 10px;font-size:19px}
.ic43-settings-entry{padding:20px;margin:14px 0;border:1px solid #d8e3f1;border-radius:14px;background:var(--ui-surface,#fff)}
.ic43-settings-entry p{line-height:1.9;color:var(--ui-muted,#667)}
.ic43-settings-entry button,.ic43-settings-entry a{display:inline-block;border:1px solid #b8c9e6!important;border-radius:10px!important;background:#f0f4fd!important;color:#234a8f!important;padding:10px 16px!important;font:inherit!important;font-weight:700!important;text-decoration:none!important;cursor:pointer!important}
#ic38HelpAdmin>.v37-guide-settings{max-width:1000px;margin:16px auto!important;padding:20px!important;background:var(--ui-surface,#fff)!important}
@media(max-width:650px){#ic43SettingsTabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}#ic43SettingsTabs button{padding:10px 6px!important;font-size:12px!important}.ic38-video-box>.ic38-video-poster>.ic38-video-play{width:55px!important;height:55px!important;font-size:25px!important}}
