/* EnglishSpeak — normalize text size in Android in-app browsers (Zalo, etc.) */
html {
  -webkit-text-size-adjust: 100% !important;
  text-size-adjust: 100% !important;
}

/*
EnglishSpeak Student Layout
Font stack supports Vietnamese without requiring internet.
*/
:root{
    --es-font:"Segoe UI",Tahoma,Arial,"Noto Sans",sans-serif;
    --es-nav-height:76px;
    --es-nav-width:520px;
    --es-blue:#1677c8;
    --es-text:#17324d;
    --es-muted:#71869a;
    --es-border:#dce9f2;
    --es-nav-bg:rgba(255,255,255,.98);
}

html,body,button,input,select,textarea{
    font-family:var(--es-font)!important;
}

html{
    -webkit-text-size-adjust:100%;
    text-rendering:optimizeLegibility;
}

body{
    padding-bottom:calc(var(--es-nav-height) + env(safe-area-inset-bottom) + 14px)!important;
}

.student-bottom-nav{
    position:fixed;
    z-index:9999;
    left:50%;
    bottom:0;
    width:min(100%,var(--es-nav-width));
    min-height:var(--es-nav-height);
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    align-items:stretch;
    padding:7px 7px calc(7px + env(safe-area-inset-bottom));
    border-top:1px solid var(--es-border);
    background:var(--es-nav-bg);
    box-shadow:0 -8px 24px rgba(28,72,105,.12);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    transform:translateX(-50%);
}

.student-bottom-nav__item{
    position:relative;
    min-width:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:3px;
    padding:4px 2px 6px;
    border-radius:14px;
    color:var(--es-muted);
    text-decoration:none;
    -webkit-tap-highlight-color:transparent;
}

.student-bottom-nav__icon{
    width:39px;
    height:34px;
    display:grid;
    place-items:center;
    border-radius:12px;
    font-family:"Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif!important;
    font-size:23px;
    line-height:1;
}

.student-bottom-nav__label{
    width:100%;
    overflow:hidden;
    font-size:11.5px;
    line-height:1.2;
    font-weight:700;
    text-align:center;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.student-bottom-nav__item.is-active{
    color:var(--es-blue);
}

.student-bottom-nav__item.is-active .student-bottom-nav__icon{
    background:#e6f3ff;
}

.student-bottom-nav__item.is-active::after{
    content:"";
    position:absolute;
    bottom:1px;
    width:22px;
    height:3px;
    border-radius:999px;
    background:var(--es-blue);
}

.student-bottom-nav__item:active .student-bottom-nav__icon{
    transform:scale(.92);
}

@media (min-width:521px){
    .student-bottom-nav{
        border-left:1px solid var(--es-border);
        border-right:1px solid var(--es-border);
        border-radius:18px 18px 0 0;
    }
}
