/* Release 25 responsive navigation, conversation, transcript, and quiz polish */
.portal-nav nav{display:grid!important;grid-auto-rows:58px!important;padding:18px 0!important}
.portal-nav nav button{display:grid!important;grid-template-columns:24px minmax(0,1fr)!important;align-items:center!important;justify-items:start!important;gap:12px!important;min-height:58px!important;height:58px!important;padding:0 20px!important;margin:0!important;line-height:1.15!important}
.portal-nav nav button .nav-icon{display:grid!important;place-items:center!important;width:24px!important;height:24px!important;margin:0!important;line-height:1!important}
.portal-nav nav button .nav-icon svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.portal-nav nav button .nav-icon svg path:first-child:not(:only-child),.portal-nav nav button .nav-icon svg circle+path{fill:none}
.portal-nav nav button span{align-self:center!important;line-height:1.15!important;margin:0!important;padding:0!important;white-space:nowrap!important}
.portal-nav nav .logout-button{margin:0!important}
.activity .section-head h2{display:none!important}
.activity-course-thumb{flex:0 0 68px;width:68px;height:54px;padding:5px;border:1px solid #f0caca;border-radius:7px;background:#fff7f7;color:#D91515;display:grid;grid-template-rows:auto 1fr auto;place-items:center;box-sizing:border-box;overflow:hidden}
.activity-course-thumb img{width:56px;height:auto;display:block}
.activity-course-thumb b{font-size:16px;line-height:1}
.activity-course-thumb small{font-size:5px;line-height:1.05;text-align:center;font-weight:800}
.conversation-history{min-height:160px;max-height:calc(100dvh - 365px);overflow-y:auto;overscroll-behavior:contain;padding:15px 2px!important;scrollbar-width:thin;display:flex;flex-direction:column;gap:9px}
.message-row{display:flex;width:100%}.message-row.learner{justify-content:flex-end}.message-row.sensei{justify-content:flex-start}
.message-bubble{max-width:88%;padding:10px 12px;border-radius:14px;font-size:13px;line-height:1.4;overflow-wrap:anywhere}
.message-row.learner .message-bubble{background:#071d37;color:#fff;border-bottom-right-radius:4px}
.message-row.sensei .message-bubble{background:#f1f3f6;color:#071d37;border-bottom-left-radius:4px}
.conversation-disclaimer{margin:auto 0 10px;padding-top:8px;border-top:1px solid #e0e5ec;color:#7b8594;font-size:9px;line-height:1.35;text-align:center}
.transcript-drawer{display:flex;flex-direction:column;overflow:hidden}
.transcript-drawer>small{display:block;padding-right:34px;line-height:1.45}
.transcript-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:2px 12px 24px 0;scrollbar-width:thin;-webkit-user-select:none;user-select:none}
.transcript-scroll p{font-size:16px;line-height:1.65}
.first-answer-note{margin:10px 0;color:#667386;font-size:12px}
.login-card .portal-primary.is-loading{display:flex;align-items:center;justify-content:center;gap:8px;opacity:.82;cursor:wait}
.login-card .portal-primary.is-loading:after{content:'';display:block;width:15px;height:15px;border:2px solid #ffffff80;border-top-color:#fff;border-radius:50%;animation:signin-spin .65s linear infinite}

@media(max-width:800px){
  .portal-nav .portal-brand{display:none!important}
  .portal-nav nav{display:flex!important;align-items:stretch!important;padding:0!important;grid-auto-rows:auto!important}
  .portal-nav nav button{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:24px minmax(20px,auto)!important;place-items:center!important;align-content:center!important;gap:3px!important;min-height:68px!important;height:68px!important;padding:6px 4px!important;text-align:center!important}
  .portal-nav nav button .nav-icon{width:24px!important;height:24px!important;justify-self:center!important;align-self:center!important}
  .portal-nav nav button span{width:100%!important;white-space:normal!important;text-align:center!important;justify-self:center!important;align-self:start!important;line-height:1.05!important}
  .activity-row{display:grid;grid-template-columns:68px minmax(0,1fr) auto;align-items:center!important}
  .activity-course-thumb{grid-column:1}.activity-row>div{grid-column:2}.activity-row time{grid-column:3}
  .conversation-history{min-height:180px;max-height:none;flex:1 1 auto}
  .conversation-disclaimer{flex:0 0 auto}
  .transcript-drawer{padding:58px 20px 20px!important}
  .transcript-scroll{padding-right:8px;padding-bottom:calc(28px + env(safe-area-inset-bottom,0px))}
  .login-card .portal-primary.is-loading:after{width:17px;height:17px}
}
