/* As telas de uso cabem na área útil; a administração tem rolagem interna. */
body.in-portal{height:100dvh!important;min-height:0!important;overflow:hidden!important;padding:0!important}#portal{height:100dvh;min-height:0;overflow:hidden}#portal .portal-page{height:100%;padding:calc(12px + env(safe-area-inset-top)) clamp(16px,4vw,48px) calc(8px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:10px;position:relative;overflow:hidden}#portal .portal-header{position:relative;top:auto;min-height:0;height:auto;flex:none;margin:0;background:none;border-radius:0;display:flex;justify-content:center;align-items:center}#portal .portal-header:empty{display:none}#portal .portal-header [data-home]{position:absolute;left:0;top:0;z-index:3}#portal .portal-footer{display:flex!important;justify-content:center;flex:none;margin:0;padding:6px 0}#portal .portal-footer img{width:150px;max-width:45vw;height:43px;object-fit:contain}#portal .content-logo{height:clamp(66px,13dvh,112px);width:auto;max-width:180px;object-fit:contain}#portal .page-heading{margin:0;font-size:clamp(23px,4vw,35px)}#portal .grade-caption{margin:0;font-size:14px}#portal #portal-message{position:absolute;bottom:60px;left:5%;width:90%;max-width:none;margin:0;z-index:10;box-shadow:0 5px 20px #173e481c}#portal .view-menu .portal-header{position:absolute;top:calc(14px + env(safe-area-inset-top));right:clamp(16px,4vw,48px);z-index:4}#portal .view-menu .menu-welcome{flex:0 1 28%;min-height:95px;margin:0;gap:15px;padding-right:25px}#portal .menu-welcome .welcome-bird{width:auto;max-width:30%;height:100%;max-height:200px}#portal .menu-welcome h1{font-size:clamp(23px,4vw,40px);padding:22px}#portal .module-grid{flex:1;min-height:0;align-items:stretch}#portal .module-card{min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px;font-size:clamp(16px,2vw,21px)}#portal .module-art{height:clamp(62px,15dvh,145px);width:clamp(62px,15dvh,145px);flex:0 1 auto;margin:0 0 5px}#portal .menu-account{margin:0;flex:none;gap:7px}#portal .menu-account .plain-button{font-size:13px;padding:9px 12px;min-height:40px}#portal .login-layout{flex:1;min-height:0;margin:0 auto;width:100%;gap:22px}#portal .login-card{padding:20px;gap:12px}#portal .login-welcome .welcome-bird{height:clamp(95px,26dvh,280px);width:auto;max-width:90%}#portal .login-card h2{margin:0;font-size:22px}#portal .grade-welcome{flex:none;margin:0;gap:14px}#portal .grade-welcome .welcome-bird{height:clamp(75px,16dvh,150px);width:auto}#portal .grade-welcome h1{font-size:clamp(24px,4vw,36px)}#portal .grade-welcome p{font-size:14px;margin:8px 0 0}#portal .grade-grid{flex:1;min-height:0;max-height:420px;gap:10px}#portal .grade-card{min-height:44px;padding:10px;font-size:15px}#portal .grade-card span{font-size:23px;margin-bottom:4px}#portal .grade-continue{margin:0 auto;flex:none;padding:13px 20px}#portal .lesson-grid{flex:1;min-height:0;max-height:480px;width:100%;gap:12px}#portal .lesson-card{min-height:44px;padding:12px;font-size:20px;display:flex;align-items:center;justify-content:center;gap:10px}#portal .lesson-card span{font-size:26px;margin:0}#portal .video-shell{flex:1;min-height:0;max-height:none;aspect-ratio:auto;margin:0 auto;border-radius:18px;width:min(850px,100%)}#portal .video-actions{display:flex;flex:none;justify-content:center;gap:10px}#portal #back-lessons{margin:0}#portal .video-actions button{min-height:44px;font-size:14px;padding:10px 14px}#portal .video-shell:fullscreen{width:100vw;height:100vh;max-width:none;max-height:none;border-radius:0;background:#000;display:block}#portal .video-shell:fullscreen iframe{width:100%;height:100%}#portal .wide{overflow-y:auto;overscroll-behavior:contain}#portal .wide .portal-header{min-height:44px;position:sticky;top:0;background:#fbf8ee;z-index:9}#portal .wide .admin-panel{flex:none}
body.in-conversation.awaiting-call #quota-bar{display:none!important}#quota-caption{display:none!important}#conversation-publisher{position:fixed;bottom:calc(5px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:125px;height:35px;display:none;z-index:20}#conversation-publisher img{width:100%;height:100%;object-fit:contain}body.in-conversation #conversation-publisher{display:block}body.in-conversation main{padding-bottom:calc(70px + env(safe-area-inset-bottom))!important}body.in-conversation .conversation{padding-bottom:0!important}#quota-bar{bottom:calc(42px + env(safe-area-inset-bottom));height:25px;flex-wrap:nowrap;gap:10px}body.awaiting-call .call-screen{padding-bottom:70px}
@media(max-width:760px){#portal .login-layout{display:flex;flex-direction:column;justify-content:center;gap:14px}#portal .login-welcome{flex:none;min-height:0}#portal .login-welcome .welcome-bird{height:clamp(70px,16dvh,130px);max-width:100px}#portal .login-welcome h1{font-size:clamp(23px,5vw,28px)}#portal .login-card{flex:none;padding:18px;gap:11px}#portal .view-menu .menu-welcome{flex-basis:24%;padding-top:5px;gap:6px}#portal .menu-welcome h1{font-size:clamp(22px,5.4vw,29px);padding:18px 12px}#portal .module-grid{gap:11px}#portal .module-card{font-size:17px;border-radius:23px}#portal .module-art{height:clamp(55px,13dvh,110px);width:clamp(55px,13dvh,110px)}#portal .grade-grid{grid-template-columns:repeat(2,1fr);max-height:none}#portal .grade-card{font-size:14px}#portal .lesson-grid{grid-template-columns:repeat(2,1fr);gap:10px;max-height:none}#portal .lesson-card{font-size:19px;border-radius:20px}#portal .portal-footer img{height:35px;width:140px}#portal .content-logo{height:clamp(58px,12dvh,98px)}#portal .view-ano .portal-header:has([data-home]){height:42px}}
@media(max-height:650px){#portal .portal-page{gap:7px;padding-top:8px;padding-bottom:5px}#portal .login-card{padding:13px;gap:8px}#portal .login-card input{min-height:41px}#portal .login-card label{gap:3px;font-size:14px}#portal .login-card .primary-button{padding:11px 15px}#portal .login-welcome .welcome-bird{height:70px}#portal .login-welcome h1{font-size:23px}#portal .login-card h2{font-size:19px}#portal .content-logo{height:58px}#portal .grade-welcome .welcome-bird{height:70px}#portal .grade-card span{font-size:18px;margin:0}#portal .grade-card{padding:5px;font-size:13px}#portal .portal-footer img{height:28px}#portal .menu-welcome h1{font-size:22px;padding:12px}#portal .module-art{height:60px;width:60px}#portal .module-card{font-size:15px}#portal .menu-account .plain-button{min-height:35px;padding:7px 9px}#portal .lesson-card{font-size:17px}}
@media(orientation:landscape) and (max-height:600px){#portal .login-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px}#portal .module-grid{grid-template-columns:repeat(4,1fr)}#portal .view-menu .menu-welcome{flex-basis:25%;min-height:60px}#portal .lesson-grid{grid-template-columns:repeat(4,1fr)}#portal .grade-grid{grid-template-columns:repeat(4,1fr)}#portal .grade-welcome .welcome-bird{height:55px}#portal .content-logo{height:45px}#portal .page-heading{font-size:22px}#portal .grade-caption{font-size:12px}}

#portal .login-card{margin:0 auto}
#portal .fullscreen-exit{display:none;position:absolute;right:12px;top:12px;width:44px;height:44px;border-radius:50%;border:1px solid #ffffff70;background:#133c4dcc;color:white;font-size:24px;z-index:5}
#portal .video-shell:fullscreen .fullscreen-exit{display:block}
@media(orientation:portrait){#portal .video-shell.landscape-request:fullscreen iframe{position:absolute;width:100dvh;height:100dvw;left:50%;top:50%;transform:translate(-50%,-50%) rotate(90deg)}}

/* Personagens oficiais: cada cartão mantém uma área própria para a ilustração. */
#portal .module-characters{display:flex;align-items:flex-end;justify-content:center;height:clamp(75px,19dvh,190px);width:100%;min-height:0;margin-bottom:8px;gap:0;position:relative}
#portal .module-characters::before{content:"";position:absolute;bottom:0;width:78%;height:68%;border-radius:50%;background:#fff9;z-index:0}
#portal .character-art{display:block;object-fit:contain;object-position:center bottom;height:100%;max-width:100%;min-width:0;position:relative;z-index:1;filter:drop-shadow(0 3px 2px #17465612)}
#portal .module-characters.character-pair .character-art{max-width:48%}
#portal .module-card>span{flex:none;position:relative;z-index:2}
#portal .lesson-card{position:relative;overflow:hidden;display:flex;gap:8px;justify-content:center;padding:8px 12px;min-height:0}
#portal .lesson-card .character-art{height:100%;max-height:110px;width:42%;flex:0 1 42%;object-position:center center}
#portal .lesson-card .lesson-title{font-size:clamp(17px,2vw,22px);margin:0;display:flex;align-items:center;justify-content:center;gap:5px;line-height:1.1;flex:0 0 auto}
#portal .lesson-card .combinados-symbol{font-size:20px;margin:0;display:inline}
#portal .video-character-heading{display:flex;align-items:center;justify-content:center;gap:12px;flex:none;min-height:0}
#portal .video-character-heading .character-art{height:50px;width:52px;object-position:center}
@media(max-width:760px){#portal .module-characters{height:clamp(65px,15dvh,130px);margin-bottom:5px}#portal .lesson-grid{grid-auto-rows:minmax(0,1fr);gap:8px}#portal .lesson-card{padding:5px 8px;gap:5px;border-radius:18px}#portal .lesson-card .character-art{max-height:76px;width:40%;flex-basis:40%}#portal .lesson-card .lesson-title{font-size:17px}#portal .view-musicas .lesson-card .lesson-title{font-size:16px}#portal .view-musicas .lesson-card[data-lesson="combinados"] .character-art{width:30%;flex-basis:30%}#portal .combinados-symbol{font-size:17px!important}}
@media(max-height:650px){#portal .module-characters{height:clamp(45px,12dvh,80px)}#portal .lesson-card .character-art{max-height:52px}#portal .video-character-heading .character-art{height:35px;width:40px}}
@media(prefers-reduced-motion:no-preference){#portal .module-card:hover .character-art,#portal .lesson-card:hover .character-art{transform:translateY(-3px) rotate(-2deg);transition:transform .18s ease}}
#portal .lesson-prompt{text-align:center;font-size:17px;margin:0;flex:none;color:#50746d;font-weight:600}
#portal .lesson-card .lesson-title{width:42px;height:42px;border-radius:50%;background:#fffaf0;box-shadow:0 3px 0 #17465618;font-size:23px;font-weight:900;flex:none}
#portal .lesson-card[data-lesson="combinados"] .lesson-title{width:auto;height:auto;border-radius:15px;padding:8px;font-size:15px}
#portal .lesson-card.pose-1,#portal .lesson-card.pose-3{flex-direction:row-reverse}
#portal .lesson-card.pose-2 .character-art{transform:rotate(-4deg)}
#portal .lesson-card.pose-3 .character-art{transform:rotate(4deg)}
@media(max-height:650px){#portal .lesson-card .lesson-title{width:34px;height:34px;font-size:21px}#portal .lesson-prompt{font-size:14px}}
@media(max-width:360px){#portal .view-musicas .lesson-card[data-lesson="combinados"] .character-art{width:25px;min-width:25px;flex:0 0 25px}#portal .lesson-card[data-lesson="combinados"] .lesson-title{font-size:11px;padding:5px;gap:2px}#portal .lesson-card[data-lesson="combinados"] .combinados-symbol{font-size:14px!important}}

#portal .missing-video-dialog{width:min(350px,calc(100vw - 32px));text-align:center;background:#fffaf0;color:#174656;padding:24px;border-radius:28px;box-shadow:0 15px 60px #17465630}
#portal .missing-video-dialog .character-art{height:105px;width:120px;margin:0 auto 12px}
#portal .missing-video-dialog h2{margin:0 0 12px;font-size:24px}
#portal .missing-video-dialog p{font-size:17px;line-height:1.5;margin:0 0 20px}
#portal .missing-video-dialog::backdrop{background:#17465670;backdrop-filter:blur(3px)}

/* Capas das lições e players proporcionais, sem alongar o vídeo. */
#portal .video-page{gap:12px;justify-content:space-between}
#portal .video-page .content-logo{height:clamp(58px,11dvh,95px)}
#portal .video-page-content{display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center;flex:1;min-height:0;width:100%;margin:auto}
#portal .video-page .page-heading{font-size:clamp(23px,3.5vw,34px)}
#portal .video-page .grade-caption{text-align:center;font-size:14px;line-height:1.35}
#portal .video-lesson-badge{display:flex;align-items:center;justify-content:center;gap:12px;flex:none;min-height:55px}
#portal .video-lesson-badge .character-art{height:62px;width:55px;object-position:center}
#portal .video-lesson-badge>span{font-weight:800;font-size:23px;background:#e6f0df;padding:10px 20px;border-radius:30px}
#portal .video-page .video-shell{width:min(820px,100%);height:auto;aspect-ratio:16/9;flex:none;max-height:none;min-height:0;display:block;margin:0;background:#fbf8ee;position:relative;overflow:hidden;border-radius:24px;box-shadow:0 8px 24px #17465615}
#portal .video-page .video-shell.is-playing{background:#000}
#portal .video-page .video-shell iframe{display:block;width:100%;height:100%;border:0}
#portal .video-poster{display:grid;grid-template-columns:35% 65%;align-items:center;width:100%;height:100%;padding:20px 24px 20px 14px;border:1px solid #c9dfcc;border-radius:24px;background:radial-gradient(ellipse at 8% 80%,#c5e6d5,transparent 65%),linear-gradient(135deg,#fffbef,#e0f0de);color:#075275;position:relative;overflow:hidden;text-align:center}
#portal .video-poster-art{height:100%;min-height:0;display:flex;align-items:center;justify-content:center;position:relative}
#portal .video-poster-art .character-art{width:100%;height:85%;object-position:center;max-height:220px}
#portal .poster-star{position:absolute;top:5%;left:8%;font-size:26px;color:#eeb940}
#portal .video-poster-copy{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;min-width:0}
#portal .video-poster h2{font-size:clamp(17px,2.4vw,27px);line-height:1.2;margin:0;overflow-wrap:break-word;text-wrap:balance;font-weight:800}
#portal .poster-play{display:flex;gap:10px;align-items:center;justify-content:center;background:#087f99;color:white;border-radius:50px;padding:12px 22px;font-weight:800;font-size:18px;box-shadow:0 4px 0 #056b7c}
#portal .poster-play>span{font-size:19px}
#portal .video-hint{font-size:14px;color:#637b75;text-align:center;margin:0}
#portal .video-page .video-actions{width:min(820px,100%);gap:12px}
#portal .video-page .video-actions button{flex:1;max-width:260px;font-size:16px;padding:13px 15px;border-radius:20px}
#portal .video-page .video-shell:fullscreen{width:100vw;height:100dvh;aspect-ratio:auto;border-radius:0;box-shadow:none;background:black}
@media(min-width:761px){#portal .video-page .video-shell{width:min(820px,100%,calc((100dvh - 430px)*16/9))}#portal .video-page .video-actions{width:min(820px,100%,calc((100dvh - 430px)*16/9))}}
@media(max-width:760px){#portal .video-page .video-shell{border-radius:20px}#portal .video-poster{padding:12px 14px 12px 8px;border-radius:20px;grid-template-columns:30% 70%}#portal .video-poster-copy{gap:12px}#portal .video-poster h2{font-size:clamp(14px,3.8vw,20px);line-height:1.16}#portal .poster-play{padding:9px 17px;font-size:16px}#portal .video-page .video-actions button{font-size:14px;padding:12px 10px}#portal .video-page-content{gap:12px}}
@media(max-height:650px){#portal .video-page{gap:7px}#portal .video-page .content-logo{height:55px}#portal .video-page-content{gap:7px}#portal .video-lesson-badge{min-height:36px}#portal .video-lesson-badge .character-art{height:40px;width:40px}#portal .video-lesson-badge>span{font-size:18px;padding:7px 15px}#portal .video-page .grade-caption,#portal .video-hint{font-size:12px}#portal .video-page .page-heading{font-size:22px}#portal .video-poster-copy{gap:8px}#portal .poster-play{padding:7px 15px;font-size:14px}}
@media(orientation:landscape) and (max-height:600px){#portal .video-page .portal-header{position:absolute;top:8px;left:16px;right:16px;z-index:3}#portal .video-page .content-logo{display:none}#portal .video-page-content{gap:5px;padding-top:2px}#portal .video-page .page-heading{font-size:18px}#portal .video-page .grade-caption,#portal .video-lesson-badge,#portal .video-hint{display:none}#portal .video-page .video-shell{width:min(56vw,calc((100dvh - 115px)*16/9))}#portal .video-page .video-actions button{padding:7px 12px;min-height:36px}#portal .video-page .portal-footer img{height:25px}}
/* Telas largas: preencher os cartões independentemente do tipo de ponteiro. */
@media(min-width:1024px){
 body.in-conversation:not(.awaiting-call) main{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;margin:0;padding:0!important;display:block;gap:0}
 body.in-conversation:not(.awaiting-call) .stage{position:absolute;inset:0;width:100%;height:100%;max-width:none;margin:0}
 body.in-conversation:not(.awaiting-call) .stage canvas{position:absolute;inset:0;width:100%;height:100%;max-width:none;aspect-ratio:auto;transform:none;border-radius:0;filter:none}
 body.in-conversation:not(.awaiting-call) .conversation{position:absolute;bottom:80px;left:50%;transform:translateX(-50%);width:min(560px,60vw);max-width:none;margin:0;z-index:6}
 body.in-conversation:not(.awaiting-call) .record{height:78px;font-size:24px;border-radius:25px;box-shadow:0 7px 0 #056887,0 12px 24px #17465625}
 body.in-conversation:not(.awaiting-call) .record svg{width:28px;height:28px}
 body.in-conversation:not(.awaiting-call) #conversation-home{background:#fffaf0e8;box-shadow:0 4px 15px #17465615}
}
#portal .video-info{display:contents}
@media(min-width:1024px){
 #portal .view-menu,#portal .view-formacao:not(.video-page),#portal .view-trilha:not(.video-page),#portal .view-musicas:not(.video-page){width:100%;max-width:1760px;padding:20px clamp(24px,3vw,60px) 12px;gap:16px}
 #portal .view-menu .menu-welcome{flex:0 0 clamp(100px,17dvh,175px);min-height:0;gap:22px;padding:0}
 #portal .view-menu .menu-welcome .welcome-bird{height:100%;max-height:none;width:auto}
 #portal .view-menu .menu-welcome h1{font-size:clamp(30px,2.8vw,46px);padding:22px 30px}
 #portal .view-menu .module-grid{width:100%;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:minmax(0,1fr);gap:24px;flex:1;min-height:0}
 #portal .view-menu .module-card{padding:22px 18px 24px;justify-content:flex-start;gap:16px;border-radius:32px;font-size:clamp(24px,2vw,34px);min-height:0}
 #portal .view-menu .module-characters{flex:1;min-height:0;height:auto;max-height:none;margin:0;align-items:center}
 #portal .view-menu .module-characters::before{height:80%;width:95%;bottom:10%;border-radius:50%}
 #portal .view-menu .module-characters .character-art{height:100%;max-height:none;width:95%;object-position:center;object-fit:contain}
 #portal .view-menu .module-characters.character-pair .character-art{width:49%;max-width:49%}
 #portal .view-menu .module-card>span{max-width:none;width:100%;margin:0;min-height:2.4em;display:flex;align-items:center;justify-content:center;text-wrap:balance;line-height:1.2}
 #portal .view-menu .menu-account{margin:0;gap:12px}
 #portal .view-formacao:not(.video-page) .content-logo,#portal .view-trilha:not(.video-page) .content-logo,#portal .view-musicas:not(.video-page) .content-logo{height:clamp(55px,9dvh,90px)}
 #portal .view-formacao:not(.video-page) .lesson-grid,#portal .view-trilha:not(.video-page) .lesson-grid,#portal .view-musicas:not(.video-page) .lesson-grid{max-width:none;width:100%;max-height:none;min-height:0;flex:1;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:20px}
 #portal .lesson-card{min-height:0;padding:16px;gap:20px;border-radius:28px}
 #portal .lesson-card .character-art{height:100%;max-height:none;width:64%;flex:0 1 64%;object-position:center}
 #portal .lesson-card .lesson-title{width:clamp(52px,4.3vw,76px);height:clamp(52px,4.3vw,76px);font-size:clamp(32px,2.8vw,46px)}
 #portal .lesson-card[data-lesson="combinados"] .character-art{width:42%;flex-basis:42%}
 #portal .lesson-card[data-lesson="combinados"] .lesson-title{font-size:clamp(16px,1.2vw,21px);padding:12px;gap:5px}
 #portal .video-page{width:100%;max-width:1860px;padding:16px 32px 10px;gap:10px}
 #portal .video-page .content-logo{height:64px}
 #portal .video-page-content{display:grid;grid-template-columns:clamp(230px,20vw,330px) minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto auto;gap:12px 30px;align-items:center;justify-content:initial}
 #portal .video-info{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;grid-column:1;grid-row:1/4;text-align:center}
 #portal .video-page .page-heading{font-size:clamp(29px,2.4vw,40px);line-height:1.15}
 #portal .video-page .grade-caption{font-size:17px;line-height:1.5}
 #portal .video-lesson-badge{flex-direction:column;gap:12px}
 #portal .video-lesson-badge .character-art{height:clamp(100px,19dvh,195px);width:180px}
 #portal .video-lesson-badge>span{font-size:29px;padding:14px 24px}
 #portal .video-page .video-shell{grid-column:2;grid-row:1;width:min(100%,calc((100dvh - 220px)*16/9));justify-self:center;align-self:center;border-radius:28px}
 #portal .video-page .video-actions{grid-column:2;grid-row:3;width:100%;gap:16px}
 #portal .video-page .video-actions button{font-size:18px;max-width:300px;padding:13px 20px}
 #portal .video-page .video-hint{grid-column:2;grid-row:2;font-size:16px}
 #portal .video-page .video-poster{padding:32px 40px;grid-template-columns:38% 62%}
 #portal .video-page .video-poster-art .character-art{max-height:none;height:95%}
 #portal .video-page .video-poster h2{font-size:clamp(24px,2.3vw,38px);line-height:1.18}
 #portal .video-page .video-poster-copy{gap:28px}
 #portal .video-page .poster-play{font-size:25px;padding:17px 30px}
 #portal .video-page .portal-footer img{height:35px}
 #portal .video-page .video-shell:fullscreen{width:100vw;height:100dvh;border-radius:0}
 #portal .login-layout{width:min(1100px,100%);max-width:1100px;grid-template-columns:1.1fr 1fr;gap:70px}
 #portal .login-welcome .welcome-bird{height:clamp(200px,40dvh,360px);width:auto;max-width:100%}
 #portal .login-welcome h1{font-size:clamp(30px,3vw,44px)}
 #portal .login-card{width:100%;max-width:460px;padding:32px;gap:18px}
 #portal .login-card label{font-size:17px}
 #portal .login-card input{min-height:50px;font-size:17px}
 #portal .login-card .primary-button{min-height:52px;font-size:18px}
 #portal .login-links button{font-size:16px}
 #portal .view-ano{width:min(1450px,100%);gap:18px}
 #portal .view-ano .grade-welcome .welcome-bird{height:clamp(100px,18dvh,175px);width:auto}
 #portal .view-ano .grade-grid{max-height:none;width:100%;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
 #portal .view-ano .grade-card{font-size:18px;padding:20px;line-height:1.4}
 #portal .view-ano .grade-card span{font-size:36px;margin-bottom:8px}
 #portal .wide{width:min(1680px,100%);padding:20px 38px 24px;scrollbar-gutter:stable}
 #portal .wide .admin-panel{padding:28px;margin:12px 0}
 #portal .wide label,#portal .wide input,#portal .wide select{font-size:16px}
 #portal .wide table{font-size:16px}
 #portal .wide small{font-size:14px}
 #portal .wide th,#portal .wide td{padding:16px 14px}
 #portal .wide tbody tr:hover{background:#eff6e8}
 #portal .wide td:nth-child(n+4){white-space:nowrap}
 #portal .wide .table-scroll{border:1px solid #e3e8df;border-radius:14px}
 #portal .wide .filter-grid{gap:20px}
 #portal .wide .admin-toolbar{gap:24px;flex-wrap:wrap}
 #portal .wide #default-form{flex-wrap:wrap}
 #portal .wide dialog{width:560px;padding:30px}
}


/* Desktop only: credit meter aligned beneath the conversation button. */
@media(min-width:1024px){
 body.in-conversation:not(.awaiting-call) #quota-bar{left:50%;transform:translateX(-50%);width:min(560px,60vw)}
}
