/* almondb polish layer: loads after topnav.css */

/* Login */
#page-login-index img.login-logo{display:none}
#page-login-index :is(.login-title,.login-subtitle,.login-label,label,p,a,input,button,.form-control){font-family:'Inter',system-ui,sans-serif}
#page-login-index .login-subtitle{color:#4b4560;font-size:.9375rem;line-height:1.5;text-wrap:balance}
#page-login-index .login-title{letter-spacing:-.01em;text-wrap:balance}
#page-login-index .forgot-password a{display:inline-flex;align-items:center;min-height:44px;font-size:.9375rem;color:#3c1296}
#page-login-index .login-form .form-control{min-height:48px}
#page-login-index .login-form :is(.form-control,button):focus-visible{outline:2px solid #3c1296;outline-offset:2px}
@media (max-width:767.98px){#page-login-index .login-form .form-control{font-size:16px}}

/* Focus */
@media (min-width:992px){
.almondb-sidenav .sidenav-link:focus-visible,.almondb-sidenav a:focus-visible,.almondb-sidenav button:focus-visible{outline:2px solid #fff;outline-offset:-2px;box-shadow:0 0 0 4px rgba(167,139,250,.55)}
.almondb-sidenav .sidenav-link:focus:not(:focus-visible){background:transparent}
}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid #3c1296;outline-offset:2px}
.btn-primary:focus-visible{outline-color:#fff;box-shadow:0 0 0 4px #3c1296}
html{scroll-padding-top:72px}
a.sr-only.sr-only-focusable:focus,.skip-link:focus{position:fixed!important;inset-block-start:8px;inset-inline-start:8px;z-index:2000;width:auto;height:auto;clip:auto;padding:10px 16px;background:#fff;color:#2e1065;border-radius:8px;outline:2px solid #3c1296}

/* Course cards */
.course-card :is(.coursename,.multiline,a.aalink){white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;overflow-wrap:anywhere;text-wrap:balance;line-height:1.3}

/* Mobile layout */
@media (max-width:991.98px){
html,body,#page,#page-content,#region-main,#region-main-box{max-width:100%;min-width:0}
body{overflow-x:clip}
.course-header-overlay :is(h1,h2,.h2){overflow-wrap:anywhere;max-width:100%}
.course-header-overlay{padding-inline:16px!important}
.breadcrumb{flex-wrap:wrap;row-gap:4px}
.drawer.drawer-left:not(.show){box-shadow:none!important}
.navbar :is(.nav-link,.btn-link),#user-menu-toggle,.drawer-toggler .btn,.coursemenubtn,.course-card .dropdown-toggle{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;touch-action:manipulation}
.usermenu .dropdown-item{min-height:44px;display:flex;align-items:center}
.usermenu .dropdown-menu{inset-inline-end:8px!important;inset-inline-start:auto!important;min-width:220px}
.drawer-toggles .drawer-toggler{inset-block-start:auto!important;inset-block-end:calc(16px + env(safe-area-inset-bottom,0px));width:44px;height:44px;opacity:.9}
}

/* Right drawer */
@media (min-width:992px){
body.has-sidenav .drawer.drawer-right{overflow-y:auto;overscroll-behavior:contain}
.drawer.drawer-right .drawercontent{padding-bottom:4rem}
#page.drawers.show-drawer-right #region-main,#page.drawers.show-drawer-right #region-main-box{min-width:0}
}

/* User menu (desktop) */
@media (min-width:992px){
.usermenu .dropdown-menu{inset-inline-end:0!important;inset-inline-start:auto!important;min-width:220px;padding:6px;border:0;border-radius:12px;box-shadow:0 0 0 1px rgba(0,0,0,.06),0 8px 24px -4px rgba(30,10,80,.18);z-index:1100}
.usermenu .dropdown-item{min-height:40px;display:flex;align-items:center;padding:8px 12px;border-radius:8px;transition:background-color .12s ease-out}
}
.usermenu .dropdown-item:is(:hover,:focus-visible){background:#f0ebfb}
#user-menu-toggle:focus-visible{outline:2px solid #3c1296;outline-offset:2px;border-radius:50%;box-shadow:none}

/* Contrast */
.breadcrumb a{color:#3c1296}
.breadcrumb-item+.breadcrumb-item::before{color:#6b6480}
.drawer input::placeholder{color:#6b6480;opacity:1}
.course-card :is(.progress-text,.text-muted){color:#4b4560}
#page-local-edzperformance-index :is(.text-muted,small){color:#4b4560;opacity:1}

/* Headings */
#page-header h1,.page-header-headings h1{font-size:1.75rem;font-weight:600;letter-spacing:-.015em;line-height:1.2;color:#1d152b}
#region-main h2,.card-title{font-weight:600;letter-spacing:-.01em;line-height:1.3}
#page-mod-page-view .no-overflow>p{max-width:68ch;line-height:1.6;text-wrap:pretty}

/* Numerals */
.calendarmonth :is(td,th,a),.calendar_event_date,.progress-label,.course-card .progress-text,#page-local-edzperformance-index :is(h1,h2,h3,td,.points){font-variant-numeric:tabular-nums}

/* Activity rows */
.course-content li.activity,.course-content .activity-item{border:1px solid #e6e2f3!important;box-shadow:none!important;border-radius:12px;transition:border-color .15s ease-out,background-color .15s ease-out}
.course-content li.activity:hover{border-color:#b9a4ec;background:#faf8ff}

/* Section pills */
.course-content .nav-pills .nav-link{border-radius:999px;padding:.4rem 1rem;font-weight:600;color:#3c1296;box-shadow:none;transition:background-color .15s ease-out,color .15s ease-out}
.course-content .nav-pills .nav-link:not(.active):hover{background:#f0ebfb}
.course-content .nav-pills .nav-link.active{background:#3c1296;color:#fff}

/* Alerts */
.alert-info{background:#f3effb;border:1px solid #d9cdf2;color:#2d1b69;border-radius:12px}

/* Hero and card progress */
.course-header-overlay .progress-bar-outer{background:rgba(255,255,255,.2)}
.course-header-overlay .progress-bar-inner{background:#c4a8ff}
.course-header-overlay a{font-weight:600;text-underline-offset:.2em}
.course-card .progress{height:8px;background:#e7e0f5}
.course-card .progress-bar[aria-valuenow='0']{min-width:6px}

/* Top bar states */
@media (min-width:992px){
.almondb-sidenav .sidenav-link{gap:.6rem;transition:background-color .15s ease-out,color .15s ease-out,scale .12s ease-out}
.almondb-sidenav .sidenav-link:active{scale:.96}
.almondb-sidenav .is-active>.sidenav-link{font-weight:600;box-shadow:inset 0 -2px 0 rgba(255,255,255,.85)}
.almondb-sidenav .sidenav-bottom .sidenav-link{color:#e2d5ff}
}

/* Buttons */
.btn{transition:background-color .15s ease-out,box-shadow .15s ease-out,filter .15s ease-out,scale .12s ease-out}
.btn:active:not(:disabled){scale:.96}
.btn-outline-secondary{border-color:#d8d2ee;color:#2a1a5e}
.btn-outline-secondary:hover{background:#f4f0ff;border-color:#b9a4ec;color:#3c1296}

/* Drawer empty states */
.drawer .block_news_items .content,.drawer [data-region='no-events-empty-message']{color:#6b6485;font-size:.875rem;text-align:center;padding:1.25rem 1rem}

/* Mobile admin and performance */
@media (max-width:767.98px){
#adminsettings :is(input[type=text],select,textarea){font-size:16px;min-height:44px;max-width:100%}
#adminsettings .nav-tabs .nav-link{min-height:44px;display:flex;align-items:center}
#page-local-edzperformance-index select{min-height:44px;font-size:16px}
}

/* Bold pass: canvas, cards, hero, top bar, login */
body,#page,#page.drawers{background:#f6f3fc}
#page-content,#region-main{background:transparent}
#region-main>.card{box-shadow:none;background:transparent}
.block_edzuserwelcome{background-color:#4c1d95;background-image:linear-gradient(135deg,#3c1296,#a78bfa);color:#fff}
#region-main>.card,.card,.block,.dashboard-card,.course-card,#page-content .card{border:0;border-radius:16px;box-shadow:0 1px 2px rgba(30,10,80,.06),0 8px 24px -12px rgba(30,10,80,.18)}
#page-header h1,.page-header-headings h1{color:#2e1065}

/* My courses cards */
.course-card{overflow:hidden;transition:transform .18s ease-out,box-shadow .18s ease-out}
@media (hover:hover){.course-card:hover{transform:translateY(-3px);box-shadow:0 2px 4px rgba(30,10,80,.08),0 18px 36px -14px rgba(60,18,150,.35)}}
.course-card .card-img-top{height:auto;aspect-ratio:16/9;background-size:cover;background-position:center;background-color:#1b0f3a;border-radius:0}
.course-card .card-body{padding:1rem 1.1rem .25rem}
.course-card .coursename{font-size:1.05rem;font-weight:600;color:#2e1065}
.course-card .card-footer{background:#fff!important;padding-bottom:1rem}
.course-card .progress{border-radius:999px;overflow:hidden}
.course-card .progress-bar{background:linear-gradient(90deg,#5b21b6,#a855f7)}
.course-card .progress-text{font-weight:600;font-size:.85rem}

/* Course page hero */
.course-header-bg{border-radius:20px;overflow:hidden;box-shadow:0 20px 40px -20px rgba(60,18,150,.55)}
.course-header-overlay :is(h1,h2,.h2){font-size:clamp(1.6rem,2.4vw,2.2rem);letter-spacing:-.02em}
.course-header-overlay .progress-bar-outer{height:10px;border-radius:999px;overflow:hidden}
.course-header-overlay .progress-bar-inner{background:linear-gradient(90deg,#c4a8ff,#f0abfc);border-radius:999px}
.course-header-overlay a.continue-link{color:#3c1296!important}
.course-header-overlay a{display:inline-flex;align-items:center;margin-top:.5rem;padding:.5rem 1.1rem;border-radius:999px;background:#fff;color:#3c1296;text-decoration:none;transition:scale .12s ease-out,box-shadow .15s ease-out}
.course-header-overlay a:hover{box-shadow:0 8px 20px -8px rgba(0,0,0,.5)}
.course-header-overlay a:active{scale:.97}

/* Page tabs */
.nav-tabs{border-bottom:1px solid #e6e2f3}
.nav-tabs .nav-link{border:0;border-bottom:3px solid transparent;color:#4b4560;font-weight:600;padding:.75rem 1rem;transition:color .15s ease-out,border-color .15s ease-out}
.nav-tabs .nav-link:hover{color:#3c1296}
.nav-tabs .nav-link.active{color:#3c1296;border-bottom-color:#3c1296;background:transparent}

/* Top bar */
@media (min-width:992px){
.almondb-sidenav{background:linear-gradient(90deg,#1b0f3a,#2e1065 60%,#3c1296)!important;box-shadow:0 6px 20px -8px rgba(27,15,58,.6)}
.almondb-sidenav .sidenav-link{border-radius:999px}
.almondb-sidenav .sidenav-link:hover{background:rgba(255,255,255,.12)}
.almondb-sidenav .is-active>.sidenav-link{background:rgba(255,255,255,.18);box-shadow:none}
}

/* Dashboard */
#page-my-index .card-title,#page-my-index h2,#page-my-index h3{color:#2e1065}
.btn-primary{background:linear-gradient(180deg,#5b21b6,#3c1296);border:0;border-radius:10px;box-shadow:0 6px 14px -6px rgba(60,18,150,.6)}
.btn-primary:hover{filter:brightness(1.08)}

/* Login */
#page-login-index{background:#fff}
#page-login-index .login-form .form-control{border-radius:12px;border:1px solid #d8d2ee;background:#faf8ff}
#page-login-index .login-form .form-control:focus{border-color:#3c1296;background:#fff;box-shadow:0 0 0 4px rgba(60,18,150,.12)}
#page-login-index .login-title{font-size:2rem;color:#2e1065}
#page-login-index .login-form .btn-primary,#page-login-index #loginbtn{min-height:48px;border-radius:12px;font-weight:600;font-size:1rem}
.block_edzuserwelcome :is(h1,h2,h3,h4,.card-title){color:#fff!important}
