/* BIOfluencia: shared visual system. Load after each area's legacy styles. */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap');

:root {
    --bio-navy: #081f38;
    --bio-blue: #007bff;
    --bio-cyan: #00c4ff;
    --bio-ink: #16324e;
    --bio-muted: #526880;
    --bio-paper: #f3f7fb;
    --bio-surface: #fff;
    --bio-line: #dce7f0;
    --bio-radius: 16px;
    --bio-shadow: 0 12px 36px rgba(8,31,56,.08);
    --bio-ease: 180ms ease;
}
body.bio-theme { font-family: 'Montserrat', 'Segoe UI', sans-serif; color: var(--bio-ink); background: var(--bio-paper); line-height: 1.65; -webkit-font-smoothing: antialiased; }
.bio-theme h1, .bio-theme h2, .bio-theme h3, .bio-theme h4, .bio-theme h5, .bio-theme h6 { font-family: inherit; font-weight: 700; line-height: 1.2; letter-spacing: -.035em; }
.bio-theme a { transition: color var(--bio-ease), background-color var(--bio-ease), box-shadow var(--bio-ease); }
.bio-theme :focus-visible { outline: 3px solid #007bff !important; outline-offset: 4px; }
.bio-theme ::selection { background: #b4edff; color: #081f38; }
.bio-theme a { color: #0065c7; }
.bio-theme a:hover { color: #004a93; }
.bio-skip { position: fixed; left: 16px; top: -100px; z-index: 2147483647; padding: 12px 20px; border-radius: 10px; background: #fff; color: #081f38 !important; box-shadow: var(--bio-shadow); }
.bio-skip:focus { top: 12px; }

/* Navigation: translucent surface, always readable, with solid fallback. */
.bio-public { background: #f3f7fb; }
.bio-public #wrapper { background: transparent; overflow: visible; }
.bio-public .topbar { background: #081f38 !important; border: 0 !important; color: #d0e4f5; padding: 5px 0; }
.bio-public .topbar a, .bio-public .topbar li, .bio-public .topbar i, .bio-public .topbar span { color: #d0e4f5 !important; }
.bio-public .topbar a:hover, .bio-public .topbar li:hover { color: #00c4ff !important; }
.bio-public .header.menuTopo { position: sticky; top: 0; z-index: 1030; padding: 8px 0 !important; background: rgba(8,31,56,.94) !important; border-bottom: 1px solid rgba(0,196,255,.14); box-shadow: none; transition: background-color .2s ease, box-shadow .2s ease; }
@supports (backdrop-filter: blur(18px)) {
    .bio-public .header.menuTopo { background: rgba(8,31,56,.82) !important; backdrop-filter: blur(18px); }
    .bio-public .header.menuTopo.bio-scrolled { background: rgba(8,31,56,.96) !important; }
}
.bio-public .header.menuTopo.bio-scrolled { box-shadow: 0 8px 28px rgba(0,12,28,.18); }
.bio-public .menuTopo .navbar, .bio-public .menuTopo .navbar-header { background: transparent !important; border: 0; margin-bottom: 0; }
.bio-public .menuTopo .navbar-nav > li > a { color: #f0f7ff !important; background: transparent; font-size: 13px; font-weight: 600; border-radius: 9px; padding: 16px 13px; }
.bio-public .menuTopo .navbar-nav > li > a:hover, .bio-public .menuTopo .navbar-nav > .active > a, .bio-public .menuTopo .navbar-nav > .open > a { color: #00c4ff !important; background: rgba(0,196,255,.09) !important; }
.bio-public .menuTopo .navbar-nav > li > a i { color: inherit !important; }
.bio-public .menuTopo .navbar-toggle { min-height: 44px; border: 1px solid rgba(0,196,255,.4); border-radius: 10px; background: transparent !important; }
.bio-public .menuTopo .navbar-toggle .icon-bar { background: #00c4ff; }
.bio-public .menuTopo .navbar-header .bio-brand > :not(.bio-wordmark) { display: none !important; }
.bio-wordmark { display: inline-flex; align-items: center; gap: 9px; min-height: 52px; color: #fff !important; font-size: 24px; font-weight: 500; letter-spacing: -.06em; text-decoration: none !important; white-space: nowrap; }
.bio-wordmark strong { font-weight: 800; }
.bio-wordmark em { color: #00c4ff; font-style: normal; }
.bio-wordmark img { width: 30px; height: 39px; }
.bio-theme .dropdown-menu { background: #fff; color: var(--bio-ink); border: 1px solid var(--bio-line); border-radius: 12px; padding: 10px; box-shadow: 0 16px 40px rgba(8,31,56,.16); }
.bio-theme .dropdown-menu > li > a, .bio-public .topbar .dropdown-menu a, .bio-public .topbar .dropdown-menu span { color: var(--bio-ink) !important; border-radius: 7px; }
.bio-theme .dropdown-menu > li > a:hover, .bio-theme .dropdown-menu > li > a:focus { background: #edf8ff; color: #0058ae !important; }
.bio-public .menuTopo .dropdown-menu a { color: var(--bio-ink) !important; }
.bio-public .menuTopo .dropdown-menu .yamm-content { padding: 12px; }
.bio-public .menuIdentifiquese { min-width: 300px; padding: 24px; }

/* Home: supplied artwork, responsive crop-free image and real, accessible actions. */
.bio-hero { position: relative; background: #081f38; color: #fff; overflow: hidden; }
.bio-hero picture, .bio-hero picture img { display: block; width: 100%; height: auto; }
.bio-hero .bio-hero-actions { position: absolute; left: 7%; bottom: 10%; display: flex; align-items: center; gap: 20px; }
.bio-theme .bio-cta { display: inline-flex; justify-content: center; align-items: center; gap: 20px; min-height: 50px; padding: 13px 27px; border: 1px solid #00c4ff; border-radius: 100px; background: #00c4ff; color: #081f38 !important; font-size: 14px; font-weight: 700; text-decoration: none; box-shadow: 0 8px 30px rgba(0,196,255,.16); transition: transform var(--bio-ease), background-color var(--bio-ease), box-shadow var(--bio-ease); }
.bio-theme .bio-cta:hover { transform: translateY(-2px); background: #60ddff; box-shadow: 0 12px 30px rgba(0,196,255,.24); }
.bio-theme .bio-cta-secondary { background: rgba(8,31,56,.65); color: #fff !important; box-shadow: none; }
.bio-theme .bio-cta-secondary:hover { background: #123959; }
.bio-method { background: #081f38; color: #fff; padding: 68px 0 76px; }
.bio-eyebrow { display: block; color: #00c4ff; font-size: 11px; letter-spacing: .18em; font-weight: 700; text-transform: uppercase; margin-bottom: 14px; }
.bio-method h2 { font-size: clamp(25px, 3vw, 38px); margin: 0 0 12px; color: #fff; }
.bio-method-intro { max-width: 620px; margin-bottom: 32px; color: #bdd3e5; font-size: 15px; }
.bio-method-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 18px; }
.bio-method-card { padding: 28px 24px; background: linear-gradient(145deg,rgba(0,123,255,.09),rgba(0,196,255,.025)); border: 1px solid rgba(0,196,255,.23); border-radius: 16px; }
.bio-method-card > i { display: grid; place-items: center; width: 46px; height: 46px; border: 1px solid rgba(0,196,255,.3); border-radius: 12px; color: #00c4ff; font-size: 22px; margin-bottom: 24px; }
.bio-method-card h3 { color: #fff; font-size: 18px; margin: 0 0 12px; }
.bio-method-card p { color: #bdd3e5; margin: 0; font-size: 13px; line-height: 1.8; }
.bio-public main > section:not(.bio-method):not(.bio-hero) { scroll-margin-top: 100px; }
.bio-public .section-white, .bio-public .section-grey { background-color: #f3f7fb; }
.bio-public .section-title h2 { color: #081f38; }
.bio-public .shop-item, .bio-public .course-item, .bio-public .service-box { border-radius: var(--bio-radius); overflow: hidden; box-shadow: var(--bio-shadow); }
.bio-public footer, .bio-public .footer { background-color: #081f38 !important; color: #c3d5e6; }
.bio-public footer a, .bio-public .footer a { color: #b4edff; }

/* Shared controls: preserve semantic success/warning/danger meanings. */
.bio-theme .btn { border-radius: 9px; font-family: inherit; font-weight: 600; letter-spacing: 0; white-space: normal; transition: background-color var(--bio-ease), border-color var(--bio-ease), box-shadow var(--bio-ease), transform var(--bio-ease); }
.bio-theme .btn:not(.btn-xs):not(.btn-sm) { min-height: 44px; padding: 10px 18px; }
.bio-theme .btn-primary, .bio-theme .btn-info { background: #00c4ff !important; border-color: #00c4ff !important; color: #081f38 !important; text-shadow: none; }
.bio-theme .btn-primary:hover, .bio-theme .btn-info:hover { background: #63ddff !important; border-color: #63ddff !important; box-shadow: 0 5px 18px rgba(0,123,255,.16); }
.bio-theme .btn-default { background: #fff; color: #16324e; border-color: #bfcede; }
.bio-theme .btn-default:hover { background: #edf7ff; border-color: #007bff; }
.bio-theme .btn.disabled, .bio-theme .btn:disabled { opacity: .5; cursor: not-allowed; box-shadow: none; transform: none; }
.bio-theme .form-control { font-family: inherit; border: 1px solid #b9cbdc; border-radius: 9px; box-shadow: none; color: #16324e; background-color: #fff; transition: border-color var(--bio-ease), box-shadow var(--bio-ease); }
.bio-theme input.form-control, .bio-theme select.form-control { min-height: 44px; }
.bio-theme .form-control:focus { border-color: #007bff; box-shadow: 0 0 0 3px rgba(0,123,255,.12); }
.bio-theme .form-control::placeholder { color: #61758a; opacity: 1; }
.bio-theme .form-control[readonly], .bio-theme .form-control:disabled { background: #eaf0f6; color: #566a80; }
.bio-theme .has-error .form-control, .bio-theme .form-control[aria-invalid="true"] { border-color: #c33444; }
.bio-theme input[type="checkbox"], .bio-theme input[type="radio"] { accent-color: #007bff; }
.bio-theme .pagination > li > a, .bio-theme .pagination > li > span { color: #005db8; border-color: #dce7f0; }
.bio-theme .pagination > .active > a, .bio-theme .pagination > .active > span { background: #007bff; color: #fff; border-color: #007bff; }
.bio-theme .nav-tabs { border-color: #dce7f0; }
.bio-theme .nav-tabs > li.active > a { border-top-color: #007bff; }
.bio-theme .progress { height: 8px; border-radius: 20px; background: #dce7f0; box-shadow: none; }
.bio-theme .progress-bar-primary, .bio-theme .progress-bar-info { background: #007bff; }

/* Dialogs: neutral reading surface, visible actions, bounded long content. */
.bio-theme .modal-backdrop.in { opacity: .64; background: #001125; }
.bio-theme .modal-content { background: #fff !important; color: #16324e !important; border: 1px solid #dce7f0; border-radius: 18px; box-shadow: 0 24px 80px rgba(0,15,35,.3); overflow: hidden; }
.bio-theme .modal-header { padding: 22px 24px; background: #f4f9fd; border-bottom: 1px solid #dce7f0 !important; }
.bio-theme .modal-title { font-size: 20px; color: #081f38 !important; }
.bio-theme .modal-body { padding: 24px; max-height: 65vh; overflow-y: auto; overscroll-behavior: contain; color: #16324e; }
.bio-theme .modal-footer { padding: 16px 24px; background: #f4f9fd !important; border-top: 1px solid #dce7f0; }
.bio-theme .modal-header .close { opacity: 1; color: #425e78; width: 36px; height: 36px; border-radius: 50%; background: #e5eef5; text-shadow: none; }
.bio-theme .alert { border-radius: 12px; border-width: 1px; border-left-width: 4px; padding: 16px 20px; line-height: 1.65; }
.bio-theme .alert-info { color: #07517b; background: #e8f6ff; border-color: #78c4ed; }
.bio-theme .alert-success { color: #176344; background: #eaf8f0; border-color: #79cba3; }
.bio-theme .alert-warning { color: #785410; background: #fff7e5; border-color: #e7bf64; }
.bio-theme .alert-danger { color: #962d3a; background: #fff0f2; border-color: #e49ba5; }

/* Workspace chrome. Dense management screens keep light surfaces. */
.bio-workspace #content, .bio-workspace #page-content { background: #f3f7fb; }
.bio-workspace .panel, .bio-workspace .block { border: 1px solid #dce7f0; border-radius: 12px; box-shadow: 0 4px 18px rgba(8,31,56,.04); }
.bio-workspace .panel-heading, .bio-workspace .block-title { border-color: #dce7f0; }
.bio-workspace header.navbar, .bio-workspace #topbar { background: #081f38 !important; color: #edf7ff; border-color: rgba(0,196,255,.18); }
.bio-workspace header.navbar a, .bio-workspace header.navbar .navbar-brand { color: #edf7ff; }
.bio-workspace header.navbar .dropdown-menu a { color: #16324e; }
.bio-workspace #sidebar_left, .bio-workspace #sidebar { background: #081f38; }
.bio-workspace .sidebar-menu > li > a { color: #c7d9eb; }
.bio-workspace .sidebar-menu > li.active > a { color: #00c4ff; border-left-color: #00c4ff; }
.bio-workspace .table > thead > tr > th { background: #eef4fa; color: #35516c; border-color: #dce7f0; font-weight: 600; }
.bio-workspace .table > tbody > tr > td { border-color: #e5edf4; }

/* Student workspace: quiet navy canvas and luminous cyan accents. */
.bio-student, .bio-student #main-container, .bio-student #page-content, .bio-student #page-container { background: #081f38 !important; color: #e8f2fc; }
.bio-student #page-content { background-image: radial-gradient(ellipse at 80% 0, rgba(0,123,255,.09), transparent 60%) !important; }
.bio-student .menu-topo { background-color: rgba(8,31,56,.94) !important; background-image: url('/images/logo.png?v=20261021.1') !important; background-size: 175px auto !important; border-bottom: 1px solid rgba(0,196,255,.18); box-shadow: none; }
.bio-student #menu-topo { position: sticky; top: 0; z-index: 1030; transition: background-color .25s ease, box-shadow .25s ease, border-color .25s ease; }
/* Clip horizontal sidebar movement without creating a vertical scroll container. */
@supports (overflow: clip) {
    .bio-student #page-container { overflow-x: clip; overflow-y: visible; }
}
.bio-student-banner #menu-topo { margin-bottom: -104px; background-color: rgba(8,31,56,.8) !important; border-bottom-color: rgba(181,229,255,.14); }
@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
    .bio-student #menu-topo { -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); }
    .bio-student-banner #menu-topo { background-color: rgba(5,24,44,.56) !important; }
}
.bio-student #menu-topo.bio-scrolled { background-color: rgba(8,31,56,.96) !important; border-bottom-color: rgba(0,196,255,.2); box-shadow: 0 8px 28px rgba(0,12,28,.2); }
.bio-student #menu-topo .bt-icon-menu-topo, .bio-student #menu-topo .bt-icon-menu-topo-text { transition: background-color .2s ease; border-radius: 10px; }
.bio-student #menu-topo .bt-icon-menu-topo:hover, .bio-student #menu-topo .bt-icon-menu-topo-text:hover { background-color: rgba(0,196,255,.1); }
.bio-student #menu-topo a { text-shadow: 0 1px 8px rgba(0,12,28,.35); }
@media (prefers-reduced-motion: reduce) {
    .bio-student #menu-topo, .bio-student #menu-topo .bt-icon-menu-topo, .bio-student #menu-topo .bt-icon-menu-topo-text { transition: none; }
}
.bio-student .menu-topo .bt-icon-menu-topo-text a, .bio-student .menu-topo .bt-icon-menu-topo a { color: #e8f2fc; }
.bio-student .menu-topo a:hover { color: #00c4ff !important; }
.bio-student .menu-topo #lnkbt-account-topo .menu-topo-avatar { border-color: #00c4ff; box-shadow: 0 0 0 3px rgba(0,196,255,.12); }
.bio-student .menu-topo #lnkbt-account-topo a:hover .menu-topo-avatar { border-color: #74e4ff; box-shadow: 0 0 0 4px rgba(0,196,255,.2); }
.bio-student #sidebar, .bio-student .sidebar-content { background: #071b30; }
.bio-student .sidebar-nav a { border-radius: 8px; }
.bio-student .sidebar-nav a:hover, .bio-student .sidebar-nav a.active { color: #00c4ff; background: rgba(0,196,255,.09); }
.bio-student .content-header, .bio-student .breadcrumb { background: transparent; color: #bdd3e5; border-color: rgba(0,196,255,.16); }
.bio-student .content-header h1 { color: #fff; }
.bio-student .block { border: 1px solid rgba(0,196,255,.18); border-radius: 14px; background: #102b46; color: #e8f2fc; }
.bio-student .block-title { background: #12324f; border-color: rgba(0,196,255,.16); border-radius: 14px 14px 0 0; }
.bio-student .block-title h2 { color: #e8f2fc; }
.bio-student .box-messages { background: #102b46 !important; border-color: rgba(0,196,255,.25) !important; border-radius: 16px; }
.bio-student .modal-content .block { background: #f3f7fb; color: #16324e; border-color: #dce7f0; }
.bio-student .modal-content .block-title, .bio-student .modal-content .block-title h2 { background: #edf4fa; color: #16324e; }

@media (max-width: 991px) {
    .bio-method-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .bio-public .menuTopo .navbar-nav > li > a { padding: 14px 9px; font-size: 12px; }
    .bio-wordmark { font-size: 21px; }
}
@media (max-width: 767px) {
    .bio-public .header.menuTopo { padding: 4px 0 !important; }
    .bio-public .menuTopo .navbar-collapse { max-height: 70vh; overflow-y: auto; border: 0; }
    .bio-public .menuTopo .navbar-nav > li > a { min-height: 48px; padding: 14px 18px; font-size: 14px; }
    .bio-public .menuTopo .navbar-nav .dropdown-menu { background: #fff; margin: 4px 10px 12px; }
    .bio-public .topbar { font-size: 11px; }
    .bio-public .topbar .social-icon-topo { display: none; }
    .bio-hero .bio-hero-actions { left: 7%; right: 7%; bottom: 3%; flex-direction: column; gap: 8px; }
    .bio-hero-actions .bio-cta { width: 100%; min-height: 46px; padding: 10px 16px; }
    .bio-hero-actions .bio-cta-secondary { display: none; }
    .bio-method { padding: 44px 0; }
    .bio-method-grid { grid-template-columns: 1fr; gap: 12px; }
    .bio-method-card { padding: 24px; }
    .bio-method-card > i { margin-bottom: 18px; }
    .bio-theme .modal-dialog { margin: 12px; }
    .bio-theme .modal-body { padding: 20px; max-height: 62vh; }
    .bio-theme .modal-footer .btn { min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) {
    .bio-theme *, .bio-theme *::before, .bio-theme *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}
@media print {
    .bio-theme, .bio-student #page-content { background: #fff !important; color: #000 !important; }
    .bio-skip, .bio-theme .topbar, .bio-theme .menuTopo, .bio-theme .menu-topo { display: none !important; }
}

/* The home header overlaps the artwork; interior pages retain a stable reading surface. */
.bio-public:has(.bio-hero) .header.menuTopo { height: 70px; margin-bottom: -70px; background: rgba(8,31,56,.4) !important; }
.bio-public:has(.bio-hero) .header.menuTopo.bio-scrolled { background: rgba(8,31,56,.96) !important; }
.bio-public .menuTopo .navbar-collapse { background: transparent; }
.bio-public .menuTopo .navbar-nav > li > a[aria-current="page"] { color: #00c4ff !important; }
.bio-public .menuTopo .navbar-collapse.in { background: #081f38; border-radius: 0 0 12px 12px; }
.bio-theme .btn:active { transform: translateY(1px); }
.bio-theme .btn.disabled:active, .bio-theme .btn:disabled:active { transform: none; }
.bio-student .menu-topo { background-position: 24px center !important; }
@media (max-width: 990px) { .bio-student .menu-topo { background-size: 126px auto !important; background-position: 52px center !important; } }

.bio-public main { display: flow-root; }
.bio-public .menuTopo .navbar { display: flow-root; }
.bio-public .menuTopo .navbar-nav > li > a { text-transform: none; }

.bio-theme .btn { border-radius: 9px !important; text-transform: none; }
.bio-theme .modal { background: transparent !important; }
.bio-public .btn-logon, .bio-public .btn-identificacao-logon, .bio-public .btn-identificacao-cadastro, .bio-public .btn-envia-mensagem-contato { background: #00c4ff !important; color: #081f38 !important; border-color: #00c4ff !important; }
.bio-student :focus-visible { outline-color: #00c4ff !important; }

.bio-theme.bio-login { background: radial-gradient(ellipse at 80% 0,rgba(0,123,255,.2),transparent 60%),#081f38 !important; min-height: 100vh; }
.bio-login .admin-form .panel { border: 1px solid #dce7f0; border-radius: 18px; overflow: hidden; box-shadow: 0 24px 80px rgba(0,12,28,.25); }
.bio-login .admin-form .panel-heading { background: #edf6fc; color: #081f38; }
.bio-login .admin-form .panel-body { background: #fff; color: #16324e; }
.bio-login .admin-form .gui-input { min-height: 46px; border-radius: 8px; border-color: #b9cbdc; }

.bio-student .block { padding: 24px; }
.bio-student .block-title { margin: -24px -24px 20px; padding: 14px 24px; }
.bio-student .block-title h2 { margin: 0; line-height: 1.5; }

@media (min-width: 991px) {
    .bio-student .content-menu-topo { max-width: calc(100% - 230px); display: flex; flex-direction: row-reverse; align-items: center; overflow-x: auto; scrollbar-width: thin; scrollbar-color: #236087 transparent; }
    .bio-student .content-menu-topo > div { flex-shrink: 0; }
    .bio-student .menu-topo .bt-icon-menu-topo-text { font-size: 13px !important; padding-left: 10px; padding-right: 10px; }
}

@media (min-width: 991px) { .bio-student .content-menu-topo { overflow-y: hidden; min-height: 56px; } }

/* Compact mobile navigation: half the desktop height, with 44px touch targets. */
@media (max-width: 990px) {
    .bio-student #menu-topo { height: 52px; }
    .bio-student-banner #menu-topo { margin-bottom: -52px; }
    .bio-student #menu-topo > .bt-menu-topo { position: absolute; top: 4px; left: 8px; width: 40px; height: 44px; line-height: 44px; }
    .bio-student #menu-topo > .bt-menu-topo a { display: flex; align-items: center; justify-content: center; width: 100%; height: 44px; }
    .bio-student #menu-topo > .bt-menu-topo-click-area { position: absolute; top: 0; left: 48px; width: 142px; height: 52px; }
    .bio-student #menu-topo .content-menu-topo { top: 4px; height: 44px; }
    .bio-student #menu-topo .content-menu-topo > .bt-icon-menu-topo { height: 44px; line-height: 44px; }
    .bio-student #menu-topo .content-menu-topo > .bt-icon-menu-topo a { display: inline-flex; align-items: center; justify-content: center; width: 100%; height: 44px; }
}

.bio-student #lnkbt-menu { display: inline-flex; align-items: center; justify-content: center; width: 100%; height: 44px; padding: 0; border: 0; border-radius: 10px; background: transparent; color: #e8f2fc; }
.bio-student #lnkbt-menu:hover, .bio-student #lnkbt-menu[aria-expanded="true"] { background: rgba(0,196,255,.12); color: #43dcf4; }
.bio-student #lnkbt-menu:focus, .bio-student #lnkbt-menu:active { border: 0; outline: none !important; box-shadow: none; }
.bio-student #lnkbt-menu:focus-visible { background: rgba(0,196,255,.22); }
.bio-student #sidebar .sidebar-themes { display: none !important; }
.bio-sidebar-eyebrow { display: none; }
.bio-sidebar-backdrop { display: none; }
@media (max-width: 990px) {
    .bio-student.bio-mobile-menu-open { overflow: hidden; }
    .bio-student #page-container.sidebar-visible-xs #main-container { margin-left: 0 !important; margin-right: 0 !important; }
    .bio-student #sidebar {
        position: fixed; top: 64px; bottom: auto; left: 12px;
        width: min(340px, calc(100vw - 32px)) !important; height: auto !important; max-height: calc(100dvh - 76px);
        z-index: 1040; border: 1px solid rgba(128,212,248,.24); border-radius: 20px;
        background: #0b233b; box-shadow: 0 20px 60px rgba(0,10,25,.4); overflow: hidden;
        transform: translateX(calc(-100% - 24px)); visibility: hidden; pointer-events: none;
        transition: transform .24s ease, visibility .24s;
    }
    .bio-student #page-container.sidebar-visible-xs #sidebar { transform: translateX(0); visibility: visible; pointer-events: auto; }
    .bio-student #sidebar-scroll { height: auto !important; max-height: calc(100dvh - 78px - env(safe-area-inset-bottom, 0px)); overflow-y: auto !important; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #315875 transparent; }
    .bio-student #sidebar .slimScrollDiv { height: auto !important; }
    .bio-student #sidebar .sidebar-content { width: 100%; background: transparent; color: #e8f2fc; }
    .bio-student #sidebar .sidebar-user { position: relative; display: block; width: 100%; height: auto; margin: 0; padding: 24px 52px 22px 20px; border-bottom: 1px solid rgba(128,212,248,.14); background: radial-gradient(ellipse at top left, rgba(0,123,255,.18), transparent 85%); }
    .bio-student #sidebar .sidebar-user-avatar { display: flex; align-items: center; gap: 12px; width: 100%; height: auto; padding: 0; background: transparent; }
    .bio-student #sidebar #avatar-img { float: none; flex: 0 0 48px; width: 48px; }
    .bio-student #sidebar #avatar-img img { width: 48px; height: 48px; border: 1px solid rgba(0,196,255,.5); border-radius: 16px; object-fit: cover; background: #12324f; }
    .bio-student #sidebar #wellcome-msg { float: none; width: auto; min-width: 0; padding: 0; font-size: 15px; line-height: 1.5; font-weight: 600; color: #fff; overflow-wrap: anywhere; }
    .bio-student #sidebar .bio-sidebar-eyebrow { display: block; margin-bottom: 4px; color: #73d7f2; font-size: 9px; font-weight: 700; letter-spacing: 1.6px; }
    .bio-student #sidebar #wellcome-msg #msg:empty { display: none; }
    .bio-student #sidebar .sidebar-close-menu { position: absolute; top: 12px; right: 8px; display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; float: none; padding: 0; border: 0; border-radius: 12px; background: transparent; color: #b9d1e5; font-size: 18px; }
    .bio-student #sidebar .sidebar-close-menu:hover { background: rgba(0,196,255,.1); color: #43dcf4; }
    .bio-student #sidebar .sidebar-nav { display: block; width: 100% !important; margin: 0; padding: 12px; background: transparent; }
    .bio-student #sidebar .sidebar-nav li { width: 100%; height: auto; margin: 0 0 3px; padding: 0; background: transparent; }
    .bio-student #sidebar .sidebar-nav li:has(> a[style*="display: none"]) { display: none; }
    .bio-student #sidebar .sidebar-nav li > a { display: grid; grid-template-columns: 24px minmax(0,1fr) 14px; align-items: center; gap: 12px; min-height: 46px; width: 100%; padding: 10px 12px; border: 1px solid transparent; border-radius: 12px; background: transparent; color: #d9eaf6; font-size: 13px; line-height: 1.5; font-weight: 500; }
    .bio-student #sidebar .sidebar-nav li > a:hover { background: rgba(0,196,255,.08); color: #43dcf4; }
    .bio-student #sidebar .sidebar-nav li.selected > a, .bio-student #sidebar .sidebar-nav a[aria-current="page"] { background: rgba(0,196,255,.12); border-color: rgba(0,196,255,.24); color: #65def9 !important; }
    .bio-student #sidebar .sidebar-nav a::after { content: none; }
    .bio-student #menu-topo > .bt-menu-topo:hover { background: transparent; }
    .bio-student #sidebar .sidebar-nav-icon, .bio-student #sidebar .img-item-dashboard { display: inline-block !important; float: none; width: 22px; height: auto; margin: 0; padding: 0; color: #72d7f1 !important; opacity: 1; font-size: 18px; text-align: center; }
    .bio-student #sidebar .sidebar-nav-mini-hide { display: inline; }
    .bio-student #sidebar .sidebar-user.sidebar-nav-mini-hide { display: block; }
    .bio-student #sidebar .text-dashboard-sidebar { padding: 0; }
    .bio-student #sidebar .img-item-dashboard { filter: brightness(0) invert(1); }
    .bio-student #sidebar .fa-item-menu-mobile { display: block; float: none; font-size: 15px !important; line-height: 1; color: #7c9bb3; }
    .bio-student #sidebar .sidebar-nav-opc-open-menu { display: none; }
    .bio-student #sidebar .sidebar-nav .sidebar-header { width: 100%; height: 1px; margin: 12px 0 !important; padding: 0; border-top: 1px solid rgba(128,212,248,.14); }
    .bio-student .bio-sidebar-backdrop { display: block; position: fixed; inset: 52px 0 0; z-index: 1035; width: 100%; padding: 0; border: 0; background: rgba(2,13,26,.66); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); visibility: hidden; opacity: 0; pointer-events: none; transition: opacity .24s ease, visibility .24s; }
    .bio-student.bio-mobile-menu-open .bio-sidebar-backdrop { visibility: visible; opacity: 1; pointer-events: auto; }
}
@media (prefers-reduced-motion: reduce) {
    .bio-student #sidebar, .bio-student .bio-sidebar-backdrop { transition: none; }
}
