:root{--deep:#002f46;--deep2:#073b53;--blue:#0a628d;--cyan:#08a6bc;--muted:#657a83;--ink:#163d4b;--line:#dfe9ed;--paper:#fff;--soft:#f3f7f9;--shadow:0 18px 45px rgba(0,42,62,.07)}
[hidden]{display:none!important}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:#fff;color:var(--ink);font:15px/1.55 system-ui,-apple-system,"Segoe UI",Arial,sans-serif}main{flex:1}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #16b9d3;outline-offset:3px}button:disabled{opacity:.5;cursor:not-allowed}img{max-width:100%;display:block}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}.icon{width:23px;height:23px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;fill:none;flex:none}.wrap{width:min(1130px,calc(100% - 54px));margin-inline:auto}.sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden;white-space:nowrap}.skip{position:absolute;top:-80px;left:10px;padding:8px 14px;background:white;color:#012e46;z-index:100}.skip:focus{top:10px}
/* Barra superior preservada e detalhe ciano */
.light-strip{height:27px;background:#f3f4f4;border-bottom:1px solid #e5eaed;font-size:10px;color:#45565b}.light-inner{height:100%;display:flex;align-items:center;justify-content:center;gap:5px}.flag-square{width:10px;height:10px;background:#0d9259;border:2px solid #e9ce29;border-radius:1px}.light-caption{display:none}.top-gradient{background:linear-gradient(180deg,#373737,#18191a);height:37px;color:#e1e4e6}.gradient-inner{height:100%;display:flex;align-items:center;gap:10px;font-size:11px}.square-cyan{width:11px;height:11px;background:linear-gradient(145deg,#5cd6e3,#0085af);border-radius:2px;box-shadow:0 0 0 2px rgba(255,255,255,.12)}.top-divider{height:14px;width:1px;background:#718087}.gradient-inner nav{margin-left:auto;display:flex;align-items:center;gap:24px}.gradient-inner nav a{text-decoration:none;color:#e6ebee;white-space:nowrap}.gradient-inner nav a:hover{color:#7debf1}
/* Cabeçalho inspirado nas faixas azuis e losangos do modelo original */
.masthead{min-height:174px;display:flex;align-items:center;position:relative;padding-top:21px;padding-bottom:20px;gap:13px}.brand-diamonds{position:relative;width:108px;height:116px;flex:none}.brand-diamonds i{position:absolute;width:43px;height:43px;background:var(--deep);transform:rotate(45deg);border:2px solid #fff}.brand-diamonds i:nth-child(1){left:16px;top:4px;width:23px;height:23px;background:#073d5c}.brand-diamonds i:nth-child(2){left:40px;top:20px;background:#004768}.brand-diamonds i:nth-child(3){left:6px;top:50px;background:#b5bbc0}.brand-diamonds i:nth-child(4){left:43px;top:64px;background:#6a8294}.brand-diamonds i:nth-child(5){left:19px;top:97px;width:20px;height:20px;background:#0da4d6}.brand-mark{width:75px;height:75px;flex:none;position:relative;z-index:2;border-radius:50%;background:white;border:1px solid #e2e8eb;padding:4px;box-shadow:0 6px 21px rgba(0,49,72,.12)}.brand-mark img{width:100%;height:100%;object-fit:contain;border-radius:50%}.brand-copy{flex:1;min-width:0;margin-left:3px}.institution-line{font-size:12px;font-weight:700;letter-spacing:.01em;color:var(--deep);margin:0 0 5px 10px}.ribbon{background:var(--deep);color:white;min-height:74px;display:flex;flex-direction:column;justify-content:center}.ribbon strong{font-size:clamp(19px,2.4vw,31px);letter-spacing:.035em;line-height:1.2;padding:8px 18px}.ribbon span{font-size:12px;letter-spacing:.04em;padding:5px 18px;border-top:1px solid rgba(255,255,255,.35)}
/* Busca */
.search-area{margin-top:2px}.search-bar{display:flex;border:1px solid #bed4de;border-radius:2px;min-height:43px;overflow:hidden}.search-bar input{min-width:0;flex:1;border:0;padding:10px 15px;color:var(--ink);outline:none;font-size:13px}.search-bar button{width:49px;border:0;color:white;background:#0875ab;display:grid;place-items:center}.search-bar button:hover{background:var(--deep)}.help-result{margin:7px 0 0;color:#7b5b14;font-size:13px}.help-result:empty{display:none}
/* Composição fiel do modelo: construção | vídeo | materiais */
.principal-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr) minmax(0,1fr);gap:16px;margin-top:39px;align-items:stretch;min-height:317px;margin-bottom:45px}.side-panel{background:#003148;color:#fff;position:relative;overflow:hidden;min-height:317px;padding:17px 22px 18px;isolation:isolate}.side-panel>*{position:relative;z-index:1}.side-left::after,.side-right::after{content:"";position:absolute;z-index:0;top:-15%;height:130%;width:110px;border-radius:50%;background:white}.side-left::after{right:-85px}.side-right::after{left:-85px}.side-right{padding-left:31px}.side-left{padding-right:31px}.panel-title{background:#096d9d;color:white;font-size:13px;font-weight:700;line-height:1.4;margin:0 0 11px;padding:9px 13px;border:1px solid rgba(255,255,255,.15)}.construction{text-align:center;display:flex;min-height:200px;align-items:center;justify-content:center;flex-direction:column;gap:7px}.construction-symbol{display:grid;place-items:center;width:58px;height:58px;font-size:34px;color:#a7e7ed;border:1px dashed #6fb3c3;border-radius:50%}.construction strong{font-size:17px}.construction p{font-size:12px;max-width:210px;line-height:1.65;margin:0;color:#c6d8e3}.resource-nav{display:flex;flex-direction:column}.resource-item{display:flex;min-height:55px;align-items:center;gap:11px;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.24);font-size:13px;line-height:1.3;font-weight:600;padding:7px 1px;transition:background-color .15s,color .15s}.resource-item:hover{background:rgba(255,255,255,.08);color:#a4f1f4}.resource-icon{width:30px;height:30px;display:grid;place-items:center;color:white;flex:none}.resource-icon .icon{width:26px;height:26px}.resource-chevron{margin-left:auto;font-size:25px;color:#9ad9e8}.center-welcome{min-width:0;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:8px 0}.welcome-video-shell{width:100%;min-height:260px;display:flex;align-items:center;justify-content:center}.video-place{width:min(100%,320px);min-height:245px;border:1px dashed #9dc8d5;background:radial-gradient(circle at center,#fff 26%,#f0f9fb 90%);border-radius:45% 45% 15px 15px / 24% 24% 15px 15px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;padding:18px;text-align:center}.video-place p{font-size:14px;font-weight:700;margin:4px 0 0}.video-place small{font-size:11px;color:var(--muted)}.upload-plus{width:78px;height:78px;display:grid;place-items:center;border:2px dashed #0b95b0;border-radius:50%;color:#087e9b;background:white;text-decoration:none;transition:transform .2s,background .2s}.upload-plus:hover{transform:scale(1.07);background:#ddf9fc}.upload-plus .icon{width:35px;height:35px;stroke-width:2.2}.welcome-description{color:var(--muted);text-align:center;font-size:12px;max-width:310px;white-space:pre-line}.video-player{width:100%;max-height:340px;background:#001e2e;border-radius:14px;display:block;box-shadow:0 6px 22px rgba(0,47,70,.14)}.welcome-video-shell:has(.video-player){min-height:auto}.welcome-video-shell .video-player{max-height:320px}.footer-bar{height:30px;background:linear-gradient(180deg,#373737,#191919);margin-top:auto}
/* Páginas internas */
.page-heading{padding-top:33px;padding-bottom:27px}.back{color:#0c6993;font-size:12px;text-decoration:none;font-weight:650}.back:hover{text-decoration:underline}.section-label{font-size:11px;letter-spacing:.13em;color:#168ca2;font-weight:800}.page-heading .section-label{margin-top:27px;display:block}.page-heading h1{font-size:clamp(26px,3.5vw,42px);line-height:1.16;color:var(--deep);margin:7px 0 10px}.page-heading p{font-size:14px;color:#58707d;max-width:670px;margin:0}.video-page,.content-shell{padding-bottom:55px}.featured-video{display:grid;grid-template-columns:1fr 1.35fr;align-items:center;gap:26px;padding:24px;background:#f1f7f9;border:1px solid #e1edf1;border-radius:13px}.featured-body h2{font-size:27px;line-height:1.2;color:var(--deep);margin:9px 0}.featured-body p{color:var(--muted);font-size:14px;white-space:pre-wrap}.featured-media{min-height:246px;display:flex;align-items:center;justify-content:center}.placeholder-card{border:1px dashed #93c6d1;min-height:206px;width:100%;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;background:#fff;padding:18px;text-align:center}.placeholder-card .upload-plus{width:60px;height:60px}.placeholder-card .upload-plus .icon{width:30px;height:30px}.placeholder-card strong{font-size:14px}.placeholder-card small{color:var(--muted);font-size:12px}.section-split{margin-top:43px;margin-bottom:20px;display:flex;align-items:end;justify-content:space-between;gap:20px}.section-split h2{font-size:25px;margin:7px 0 3px;color:var(--deep)}.section-split p{color:var(--muted);font-size:13px;margin:0}.count-tag{font-size:12px;background:#eff6f8;padding:7px 12px;border-radius:99px;color:#356273}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.module-card{border:1px solid var(--line);border-radius:11px;overflow:hidden;box-shadow:var(--shadow);background:#fff;min-width:0}.module-media{min-height:193px;background:#f0f8fa;display:flex;align-items:center;justify-content:center;padding:14px}.module-media .placeholder-card{min-height:167px}.module-body{padding:17px}.module-body h3{font-size:18px;margin:3px 0 6px;color:var(--deep)}.module-body p{font-size:13px;white-space:pre-wrap;color:var(--muted);margin:0}.module-tag{font-size:10px;letter-spacing:.1em;color:#0b95a8;font-weight:800}.module-media .video-player{max-height:240px}.content-intro{display:flex;align-items:center;gap:14px;background:#f1f7f9;border:1px solid var(--line);border-radius:9px;padding:16px 22px;margin-bottom:23px}.paper-icon{width:52px;height:52px;border-radius:10px;display:grid;place-items:center;background:#dceff4;color:#087c99}.content-intro h2{margin:0 0 2px;font-size:20px;color:var(--deep)}.content-intro p{margin:0;font-size:13px;color:var(--muted)}.content-list{display:grid;gap:15px}.content-card{border:1px solid var(--line);border-radius:9px;background:white;padding:21px 24px}.content-card h3{font-size:19px;line-height:1.3;color:var(--deep);margin:0 0 8px}.content-card p{white-space:pre-wrap;line-height:1.8;margin:0;font-size:14px}.content-card .pdf-link{display:inline-flex;align-items:center;gap:9px;padding:10px 15px;border-radius:5px;color:#fff;background:#08779a;text-decoration:none;font-weight:700;margin-top:13px}.content-card .pdf-link:hover{background:#005576}.empty-message{text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;padding:45px 22px;background:#f7fafb;border:1px dashed #b0ccd6;border-radius:9px}.empty-message .icon{color:#1685a1;width:38px;height:38px}.empty-message strong{font-size:18px;color:var(--deep)}.empty-message p{color:var(--muted);margin:0;font-size:13px;max-width:440px}.filter-input{width:100%;padding:13px 16px;border:1px solid #bad4db;border-radius:6px;margin-bottom:20px;max-width:510px}.term-name{font-size:19px;font-weight:800;color:var(--deep);margin-bottom:5px}.glossary-list .content-card{padding:16px 21px}
/* Administração */
.admin-route{padding-top:33px;padding-bottom:65px}.login-card{width:min(445px,100%);margin:18px auto 40px;border:1px solid var(--line);border-radius:16px;padding:30px 33px 34px;box-shadow:var(--shadow);text-align:center}.admin-mark{display:flex;align-items:end;justify-content:center;position:relative;margin:auto auto 14px;width:100px}.admin-mark img{width:98px;height:98px;border-radius:50%;border:1px solid #dae8ec;object-fit:contain}.admin-gear{position:absolute;right:-9px;bottom:0;display:grid;place-items:center;border-radius:50%;width:34px;height:34px;color:white;background:#087da3;border:3px solid white}.admin-gear .icon{width:17px;height:17px}.login-card h1{font-size:27px;color:var(--deep);margin:8px 0}.login-card>p{color:var(--muted);font-size:13px}.admin-form{display:flex;flex-direction:column;gap:10px;text-align:left}.admin-form label,.login-card label{display:block;font-size:12px;font-weight:750;color:#244a57;margin-top:8px}.admin-form input,.admin-form textarea,.login-card input{display:block;width:100%;border:1px solid #c7dce3;border-radius:6px;padding:10px 13px;background:#fff;min-width:0;color:#183f50}.admin-form textarea{resize:vertical}.login-card form{text-align:left;margin-top:22px;display:flex;flex-direction:column;gap:10px}.login-card input{margin-top:5px}.action{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:6px;border:1px solid transparent;font-size:13px;font-weight:750;padding:10px 15px;min-height:39px}.action.solid{background:var(--deep);color:white}.action.solid:hover{background:#08709a}.action.outline{background:white;color:#0b4d65;border-color:#accbd4}.action.outline:hover{background:#ecf7fa}.action.danger{background:#fff3f3;color:#b1273c;border-color:#efc9cf}.login-help{font-size:11px;color:var(--muted);display:block;margin-top:15px}.form-status,.dashboard-status{font-size:13px;color:#a12e39;margin:10px 0;min-height:18px}.dashboard-status.success{color:#087550}.dashboard-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.dashboard-head h1{color:var(--deep);margin:3px 0;font-size:32px}.dashboard-head p{margin:0;font-size:13px;color:var(--muted)}.admin-tabs{margin:26px 0 23px;display:flex;gap:8px;flex-wrap:wrap}.admin-tabs a{color:#0e5b76;font-size:12px;font-weight:750;padding:9px 13px;border-radius:6px;border:1px solid #c9dce5;background:#f6fafb;text-decoration:none}.admin-tabs a:hover{background:#e5f3f7}.admin-stack{display:flex;flex-direction:column;gap:24px}.admin-box{border:1px solid var(--line);padding:22px 24px 25px;border-radius:12px;background:white;box-shadow:0 7px 21px rgba(0,35,55,.04);scroll-margin-top:18px}.admin-box-head{margin-bottom:17px}.admin-box-head h2{font-size:23px;color:var(--deep);margin:0 0 2px}.admin-box-head span,.admin-note{font-size:12px;color:var(--muted)}.admin-form>.action{align-self:start;margin-top:5px}.form-actions{display:flex;flex-wrap:wrap;gap:9px}.video-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.video-editor{padding:16px;border:1px solid var(--line);background:#fafcfd;border-radius:9px}.video-editor h3{margin:0 0 12px;font-size:16px}.video-editor .file-current{font-size:11px;color:#487483;margin-bottom:7px}.video-editor .admin-form{gap:7px}.video-editor .action{width:100%;margin-top:8px}.file-current a{color:#027d9e}.editor-list{display:grid;gap:8px;margin-top:21px}.editor-item{border:1px solid var(--line);border-radius:7px;padding:11px 13px;display:flex;align-items:center;justify-content:space-between;gap:15px}.editor-item strong{display:block;font-size:14px;overflow-wrap:anywhere}.editor-item small{font-size:12px;color:var(--muted)}.editor-actions{display:flex;gap:7px;flex-shrink:0}.editor-actions button{padding:6px 11px;font-size:12px}.dual-forms{display:grid;grid-template-columns:1fr 1fr;gap:20px}.dual-forms form{border:1px solid #e1ebef;border-radius:8px;padding:16px}.dual-forms h3{margin:0 0 7px;color:var(--deep)}.dashboard-status{position:sticky;bottom:10px;align-self:start;background:#eff9fc;border:1px solid #b9dce6;border-radius:5px;padding:9px 13px;display:none}.dashboard-status:not(:empty){display:block}
/* Ajustes de telas */
@media(max-width:850px){.wrap{width:min(100% - 32px,1130px)}.principal-grid{grid-template-columns:1fr 1fr;gap:18px}.center-welcome{grid-column:1 / -1;grid-row:1}.side-left{grid-column:1;grid-row:2}.side-right{grid-column:2;grid-row:2}.side-left::after,.side-right::after{display:none}.side-panel{border-radius:7px;min-height:305px;padding:17px}.center-welcome .welcome-video-shell{min-height:200px}.video-place{min-height:200px}.masthead{min-height:154px}.brand-diamonds{width:75px;transform:scale(.8);transform-origin:left center;margin-right:-22px}.brand-mark{width:65px;height:65px}.module-grid{gap:12px}.video-editor-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.top-gradient{height:41px}.gradient-inner{gap:7px;font-size:10px}.gradient-inner nav{gap:11px}.gradient-inner nav a{font-size:10px}.masthead{min-height:148px;gap:8px;padding-top:13px;padding-bottom:14px}.brand-diamonds{display:none}.brand-mark{width:62px;height:62px;flex-shrink:0}.brand-copy{margin-left:0}.institution-line{font-size:9px;line-height:1.3;margin-left:6px}.ribbon{min-height:65px}.ribbon strong{font-size:17px;padding:7px 10px}.ribbon span{font-size:10px;padding:6px 10px}.search-area{margin-top:0}.search-bar{min-height:42px}.search-bar input{font-size:12px}.principal-grid{display:flex;flex-direction:column;gap:17px;margin-top:23px;margin-bottom:35px}.center-welcome{order:1}.side-right{order:2;min-height:auto}.side-left{order:3;min-height:215px}.construction{min-height:145px}.side-panel{padding:15px}.center-welcome .welcome-video-shell{width:min(100%,360px)}.side-right .resource-item{min-height:56px}.page-heading{padding-top:25px}.page-heading .section-label{margin-top:19px}.featured-video,.dual-forms{grid-template-columns:1fr}.module-grid,.video-editor-grid{grid-template-columns:1fr}.featured-video{padding:18px}.featured-media{min-height:190px}.content-card{padding:16px 17px}.content-intro{padding:14px}.section-split{margin-top:26px}.admin-route{padding-top:18px}.login-card{padding:24px 19px}.admin-box{padding:18px 15px}.dashboard-head{align-items:flex-start}.dashboard-head h1{font-size:26px}.editor-item{align-items:flex-start;flex-direction:column}.editor-actions{width:100%}}
@media(max-width:370px){.gradient-inner>span:nth-of-type(3){display:none}.brand-mark{width:52px;height:52px}.ribbon strong{font-size:15px}.institution-line{font-size:8px}.ribbon span{font-size:9px}.wrap{width:calc(100% - 22px)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.welcome-title{font-size:15px;line-height:1.3;margin:8px 0 5px;color:var(--deep);text-align:center}


/* ===== Codex Studio V4: ajustes finais do modelo ===== */
.light-strip {height: 14px;}
.light-inner {display: none;}
.masthead {gap: 20px; min-height: 156px;}
/* Círculo cinza-ciano com a área externa da logo removida */
.brand-mark {
  flex: none;
  width: 106px;
  height: 106px;
  display: grid;
  place-items: center;
  background: #d8e8ec;
  border: 2px solid #b6d0d8;
  padding: 9px;
  border-radius: 50%;
  box-shadow: 0 3px 15px rgba(0, 53, 76, .08);
  overflow: hidden;
}
.brand-mark img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 50%;
  background: white;
}
.brand-copy { margin-left: 0; }
/* Painel esquerdo em construção, painel direito com links de aprendizagem. */
.resource-icon-empty {
  width: 31px;
  height: 31px;
  border: 1px dashed rgba(182, 224, 233, .75);
  border-radius: 5px;
  background: rgba(255,255,255,.035);
}
.resource-item {padding: 9px 6px;gap: 11px; min-height: 62px;}
.resource-item:hover {padding-left: 10px;}
/* Botão de retorno das páginas internas sem seta e nas cores do painel */
.back {
  display: inline-flex;
  background: #003148;
  color: white;
  padding: 11px 20px;
  font-weight: 700;
  font-size: 13px;
  line-height: 1.25;
  text-decoration: none;
  border-radius: 6px;
  transition: background-color .15s ease, transform .15s ease;
}
.back:hover {background: #095b79;text-decoration:none; transform:translateY(-1px);}
/* Logos consistentes no acesso administrativo */
.admin-mark {width: 112px;height: 112px;align-items: center;}
.admin-mark img {width: 108px;height: 108px;object-fit:contain;background:#fff;
  border: 6px solid #d6e9ed;border-radius:50%;}
.admin-gear {right: -3px;bottom: -2px;}
/* Frase institucional acima da faixa preta do modelo. */
.project-credit {
  padding: 12px 18px 9px;
  text-align:center;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.45;
  color: #54717f;
  border-top: 1px solid #e2e9ec;
  background: #fafcfc;
}
.footer-bar {height: 25px;}
/* Mensagens de status de upload e botões de vídeo */
.video-editor .file-current {margin-bottom:8px;}
@media(max-width:850px) {
  .brand-mark {width:84px;height:84px;padding:7px;}
}
@media(max-width:650px) {
  .brand-mark {width:65px;height:65px;padding:5px;}
  .masthead {gap:9px;min-height:125px;}
  .resource-item {padding:8px 6px;}
  .project-credit {font-size:10px;padding-inline:14px;}
}
@media(max-width:370px) {
  .brand-mark {width:57px;height:57px;padding:4px;}
}

/* Celular: após o vídeo, mostrar primeiro os materiais e depois construção. */
@media (max-width: 650px) {
  .center-welcome { order: 1; }
  .side-right { order: 2; }
  .side-left { order: 3; }
}

/* Navegação e controles funcionais, preservando a identidade do projeto. */
.learning-nav{display:flex;flex-wrap:wrap;gap:4px;padding-bottom:15px;margin-bottom:18px;border-bottom:1px solid var(--line)}
.learning-nav a{padding:10px 15px;min-height:44px;text-decoration:none;font-size:13px;font-weight:650;border-radius:5px;color:var(--deep)}
.learning-nav a:hover{background:#edf6f8}
.learning-nav a[aria-current="page"]{background:var(--deep);color:white}
.video-component{width:100%;min-width:0;display:flex;flex-direction:column;align-items:center;gap:9px}
.video-component .video-player{aspect-ratio:16/9;object-fit:contain}
.playback-toggle{min-width:130px;min-height:44px}
.player-notice{margin:0;font-size:12px;color:#9e2637;text-align:center;white-space:pre-wrap}
.player-notice:empty{display:none}
#welcome-slot{width:100%}
.video-place>.placeholder-card{border:0;background:none;min-height:200px}
.placeholder-card>.icon{width:38px;height:38px;color:#087e9b;margin-bottom:8px}
.search-results{display:grid;gap:5px;padding:10px;border:1px solid var(--line);border-radius:5px;margin-top:8px;background:#f7fbfc;max-height:360px;overflow-y:auto}
.search-results a{padding:9px 12px;color:var(--deep);overflow-wrap:anywhere;border-radius:4px}
.search-results a:hover{background:#e2f2f6}
.content-card,.module-card,.featured-video{scroll-margin-top:20px;overflow-wrap:anywhere}
.content-card:target,.module-card:target,.featured-video:target{outline:3px solid #16b9d3;outline-offset:4px}
.welcome-description,.module-body p,.featured-body p{overflow-wrap:anywhere}
.admin-summary{border:1px solid var(--line);background:var(--soft);padding:12px 16px;font-size:12px;border-radius:6px;color:#315b6e}
.admin-video-preview{margin-bottom:12px}
.admin-video-preview:empty{display:none}
.video-editor>a{display:inline-block;margin-top:14px;color:#0b637e;font-size:12px}
.admin-filter-label{display:block;margin-top:22px;margin-bottom:6px;font-size:13px;font-weight:650}
.result-count{color:#476474;font-size:12px;margin:0 0 14px}
.status-dock{position:sticky;bottom:10px;z-index:5}
.status-dock:has(.dashboard-status:not(:empty)){margin-top:16px}
.status-dock .dashboard-status{position:static;margin:0;box-shadow:0 4px 20px #002f4614;overflow-wrap:anywhere}
.status-dock progress{width:100%;height:12px;accent-color:#087c99;display:block}
.editor-actions{flex-wrap:wrap}
.editor-actions a{text-decoration:none;font-size:12px;padding:6px 11px}
.admin-form input[type="file"]{overflow:hidden}
.video-editor,.admin-box,.editor-item>div:first-child{min-width:0}
@media(max-width:650px){.learning-nav{gap:3px;padding-bottom:10px;margin-bottom:10px}.learning-nav a{padding:10px 11px;font-size:12px}.editor-actions .action{min-height:44px}.video-player{border-radius:8px}.admin-summary{line-height:1.8}}

/* v6.1.1: melhorias responsivas apenas; o layout original de tres colunas e preservado. */
.route-view[hidden]{display:none!important}
.route-view{min-width:0}
.route-view .content-card,.route-view .module-card,.route-view .editor-item {max-width:100%}
#primary-nav{scroll-margin-top:10px}
#primary-nav a[aria-current="page"]{background:var(--deep);color:#fff}
body{overflow-x:clip}
.route-view :is(h1,h2,h3,p,strong,a,small){overflow-wrap:break-word}
.route-view .video-player{height:auto;max-width:100%}
input,textarea,select{max-width:100%;min-width:0}
.admin-tabs{display:flex;flex-wrap:wrap;gap:7px;max-width:100%}
@media (max-width:850px){
  .featured-video,.module-card,.side-panel{min-width:0}
  .module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-tabs{overflow-x:auto;overscroll-behavior-x:contain}
}
@media (max-width:650px){
  .wrap{width:calc(100% - 28px)}
  .learning-nav{flex-wrap:wrap;overflow-x:visible;gap:4px;margin-bottom:12px;padding-bottom:8px}
  .learning-nav a{white-space:nowrap;flex-shrink:0;min-height:44px;display:inline-flex;align-items:center}
  .gradient-inner nav{gap:10px}
  .gradient-inner nav a{font-size:10px}
  .masthead{height:auto;padding-top:14px;padding-bottom:16px}
  .institution-line{font-size:clamp(9px,2.6vw,11px);line-height:1.45;margin-left:0}
  .ribbon strong{font-size:clamp(15px,4.3vw,22px);line-height:1.25}
  .ribbon span{font-size:clamp(9px,2.8vw,11px)}
  .principal-grid{display:flex;flex-direction:column;gap:16px;margin-top:18px}
  .center-welcome{order:1}.side-right{order:2}.side-left{order:3}
  .side-panel{min-height:auto;border-radius:5px}
  .side-left::after,.side-right::after{display:none}
  .center-welcome .welcome-video-shell{min-height:180px}
  .module-grid{grid-template-columns:1fr}
  .featured-video{grid-template-columns:1fr;gap:14px;padding:15px}
  .content-intro{align-items:flex-start}
  .dual-forms,.video-editor-grid{grid-template-columns:1fr}
  .admin-tabs{flex-wrap:nowrap;gap:7px;padding-bottom:7px;scrollbar-width:thin}
  .admin-tabs a{white-space:nowrap;flex-shrink:0;min-height:42px}
  .admin-route{min-width:0}
  .admin-box,.login-card,.video-editor,.dual-forms form{min-width:0;max-width:100%}
  .admin-form input,.admin-form textarea,.search-bar input,#gloss-filter{font-size:16px}
  .admin-form input,.admin-form textarea{width:100%}
  .editor-item{gap:9px}
  .editor-actions{width:100%;flex-wrap:wrap}
  .editor-actions button,.editor-actions a{min-height:42px;flex:1 1 auto}
  .form-actions .action{min-height:44px}
  .video-player{border-radius:8px}
}
@media(max-width:370px){
  .wrap{width:calc(100% - 20px)}
  .masthead{gap:8px}
  .brand-mark{width:52px;height:52px;flex-shrink:0}
  .institution-line{font-size:9px}
  .ribbon strong{font-size:15px;padding:7px 9px}
  .ribbon span{padding:5px 9px}
  .side-panel{padding:13px}
  .page-heading h1{font-size:25px}
  .admin-box{padding:15px 12px}
  .gradient-inner nav{gap:8px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* 6.2.0: YouTube leve, preservando o desenho original do cliente. */
.youtube-component{width:100%;max-width:100%;}
.youtube-launch,.youtube-iframe{position:relative;width:100%;aspect-ratio:16/9;display:block;border:0;border-radius:12px;overflow:hidden;background:#001e2e;box-shadow:0 6px 22px rgba(0,47,70,.14)}
.youtube-launch{padding:0;color:#fff;cursor:pointer;isolation:isolate}
.youtube-launch:focus-visible{outline:3px solid #0d91c1;outline-offset:3px}
.youtube-thumbnail{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.91}
.youtube-launch::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,23,38,.58),transparent 46%);z-index:1;pointer-events:none}
.youtube-play{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:68px;height:48px;display:grid;place-items:center;border-radius:14px;background:#ce1730;color:white;font-size:24px;padding-left:4px;box-shadow:0 4px 18px #0007;transition:background-color .15s}
.youtube-launch:hover .youtube-play,.youtube-launch:focus-visible .youtube-play{background:#f02b3e}
.youtube-caption{position:absolute;z-index:2;bottom:11px;left:12px;right:12px;text-align:center;font-size:12px;font-weight:700;text-shadow:0 1px 4px #000}
.admin-video-preview .youtube-play{width:55px;height:39px;font-size:20px}
@media(max-width:650px){.youtube-launch,.youtube-iframe{border-radius:8px}.youtube-play{width:60px;height:44px}}

.youtube-external{font-size:11px;font-weight:650;color:#086c91;text-underline-offset:3px}
