/* P.E.M. V44 — refinamento visual, comunidade, perfil e permissões */

/* Remoções de UI que geravam ruído/confusão */
.available-topics,.pem-v8-question-modes{display:none!important}

:root{
  --pem44-radius:18px;
  --pem44-radius-sm:13px;
  --pem44-shadow:0 10px 32px rgba(4,18,31,.055);
  --pem44-line:color-mix(in srgb,var(--line) 82%,transparent);
  --pem44-soft:color-mix(in srgb,var(--card2) 76%,var(--card) 24%);
}

/* Chrome geral */
.app-shell,.view{scroll-behavior:auto}
.view{padding-bottom:110px!important}
.view-heading{margin-bottom:18px!important}
.view-heading h1{letter-spacing:-.045em!important}
.settings-section,.training-builder,.training-card,.question-admin-workspace,.access-admin{
  box-shadow:none!important;
  border-color:var(--pem44-line)!important;
}
.bottom-nav{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-top:1px solid var(--pem44-line)!important}
.bottom-nav button{transition:transform .14s ease,color .14s ease,background .14s ease}
.bottom-nav button:active{transform:scale(.97)}

/* Banco de questões */
.question-bank-view{max-width:1120px!important}
.question-bank-view .pem-q-bank-status{margin-bottom:12px!important;border-radius:16px!important;background:var(--pem44-soft)!important}
.training-builder{padding:20px!important;border-radius:20px!important;background:var(--card)!important}
.builder-heading{align-items:flex-end!important;margin-bottom:16px!important}
.builder-heading .overline{font-size:9px!important;letter-spacing:.13em!important}
.builder-heading h2{font-size:23px!important;letter-spacing:-.035em!important;margin-top:4px!important}
.builder-step{margin:14px 0 9px!important;padding:0!important;background:transparent!important;border:0!important;gap:11px!important}
.builder-step>b{width:27px!important;height:27px!important;border-radius:9px!important;font-size:10px!important;box-shadow:none!important}
.builder-step strong{font-size:12px!important}.builder-step span{font-size:9px!important;line-height:1.45!important}
.contest-strip{display:flex!important;gap:8px!important;overflow-x:auto!important;padding:2px 2px 8px!important;scrollbar-width:none}
.contest-strip::-webkit-scrollbar{display:none}
.contest-strip button{white-space:nowrap!important;min-height:42px!important;padding:0 15px!important;border-radius:999px!important;box-shadow:none!important}
.advanced-bank-filters{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
.advanced-bank-filters label{font-size:9px!important;letter-spacing:.02em!important}
.advanced-bank-filters select{min-height:48px!important;border-radius:13px!important;background:var(--pem44-soft)!important;border:1px solid var(--pem44-line)!important;font-size:12px!important}
.pem-more-filters{width:100%!important;margin:10px 0 3px!important;min-height:42px!important;border-radius:13px!important;background:transparent!important;border:1px dashed var(--pem44-line)!important;font-size:10px!important;font-weight:800!important;color:var(--muted)!important}
.training-launch{margin-top:14px!important;padding-top:14px!important;border-top:1px solid var(--pem44-line)!important}
.training-launch>div strong{font-size:24px!important;letter-spacing:-.04em!important}.training-launch>div span{font-size:9px!important}
.training-launch .primary-button{min-height:48px!important;border-radius:13px!important}

/* Questão única */
.pem-single-question-mode{max-width:860px!important;margin-inline:auto!important}
.continuous-training-summary{margin-bottom:10px!important;padding:10px 12px!important;border-radius:14px!important;background:var(--pem44-soft)!important;border:1px solid var(--pem44-line)!important;box-shadow:none!important}
.continuous-training-summary>div:not(:first-child){display:none!important}
.continuous-training-summary>p{margin-left:auto!important;font-size:9px!important;color:var(--muted)!important}
.training-card{padding:20px!important;border-radius:20px!important;background:var(--card)!important}
.training-progress-head{margin-bottom:11px!important;padding-bottom:10px!important;border-bottom:1px solid var(--pem44-line)!important}
.training-progress-head>div>span{font-size:10px!important;font-weight:800!important;color:var(--muted)!important}
.pem-q-more{width:38px!important;height:38px!important;border-radius:12px!important;background:var(--pem44-soft)!important;border:1px solid var(--pem44-line)!important}
.pem-q-question-idline{gap:6px!important;margin-bottom:9px!important}.pem-q-question-idline span{font-size:8px!important;border-radius:999px!important;padding:4px 7px!important;background:var(--pem44-soft)!important}
.question-context{margin-bottom:13px!important}.question-context span,.question-context strong{font-size:9px!important}
.statement,.pem-q-block-text{font-size:15px!important;line-height:1.64!important;letter-spacing:-.005em!important;color:var(--text)!important}
.alternatives{display:grid!important;gap:8px!important;margin-top:17px!important}
.alternatives button{position:relative!important;min-height:58px!important;border-radius:15px!important;padding:12px 52px 12px 13px!important;background:var(--pem44-soft)!important;border:1px solid transparent!important;box-shadow:none!important;transition:border-color .12s ease,background .12s ease,transform .12s ease!important}
.alternatives button:hover{border-color:var(--pem44-line)!important}.alternatives button:active{transform:scale(.995)}
.alternatives button>b{width:32px!important;height:32px!important;min-width:32px!important;border-radius:50%!important;background:var(--card)!important;border:1px solid var(--pem44-line)!important;font-size:11px!important}
.alternatives button span{font-size:13px!important;line-height:1.48!important}
.pem-alt-scissor{right:12px!important;width:31px!important;height:31px!important;border-radius:10px!important;background:transparent!important}
.pem-q-social-meta{margin-top:12px!important;padding:10px 12px!important;border-radius:12px!important;background:transparent!important;border:1px solid var(--pem44-line)!important;text-align:left!important}
.pem-q-social-meta b{font-size:10px!important}.pem-q-social-meta span{font-size:8.5px!important}
.pem-q-source{margin-top:13px!important;padding-top:10px!important;border-top:1px solid var(--pem44-line)!important;font-size:8px!important}
.pem-q-pagination{position:sticky!important;bottom:79px!important;z-index:20!important;margin-top:12px!important;padding:8px!important;border:1px solid var(--pem44-line)!important;border-radius:17px!important;background:color-mix(in srgb,var(--card) 93%,transparent)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 8px 24px rgba(4,18,31,.08)!important}
.pem-q-pagination button{min-height:42px!important;border-radius:12px!important}

/* Modal comunidade */
.pem-q-hub{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.pem-q-hub-card{width:min(760px,calc(100vw - 28px))!important;max-height:min(820px,88vh)!important;border-radius:24px!important;border:1px solid var(--pem44-line)!important;box-shadow:0 24px 80px rgba(0,0,0,.2)!important;overflow:hidden!important}
.pem-q-hub-card>header{padding:16px 18px!important;border-bottom:1px solid var(--pem44-line)!important}.pem-q-hub-card>header strong{font-size:11px!important}.pem-q-hub-card>header span{font-size:8px!important}
.pem-q-hub-tabs{display:flex!important;gap:4px!important;padding:6px!important;margin:10px 14px 0!important;border-radius:13px!important;background:var(--pem44-soft)!important;border:0!important}
.pem-q-hub-tabs button{flex:1!important;border-radius:10px!important;min-height:38px!important;font-size:9.5px!important}.pem-q-hub-tabs button.active{background:var(--card)!important;box-shadow:0 2px 8px rgba(0,0,0,.06)!important}
.pem-q-hub-body{padding:14px 18px 22px!important;overflow:auto!important}
.pem-comment-compose{padding:14px!important;border-radius:16px!important;background:var(--pem44-soft)!important;border:1px solid var(--pem44-line)!important}
.pem-comment-identity{background:transparent!important;border:0!important;padding:0 0 10px!important;margin-bottom:0!important}
.pem-comment-compose textarea{min-height:90px!important;border-radius:12px!important;background:var(--card)!important}
.pem-comment-compose-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:9px}.pem-comment-compose-foot small{font-size:8px;color:var(--muted);line-height:1.4}.pem-comment-compose-foot .primary-button{min-height:38px;padding:0 13px!important}
.pem-comment-list{gap:0!important;margin-top:14px!important;border-top:1px solid var(--pem44-line)!important}
.pem-comment{padding:15px 2px!important;border-bottom:1px solid var(--pem44-line)!important;grid-template-columns:38px 1fr!important}
.pem-comment-body{min-width:0}.pem-comment-top{display:flex!important;justify-content:space-between!important;align-items:flex-start!important}.pem-comment-top>div{display:flex;align-items:baseline;gap:8px}.pem-comment-top strong{font-size:10.5px!important}.pem-comment-top small{font-size:8px!important}
.pem-comment p{font-size:11.5px!important;line-height:1.55!important;margin-top:7px!important}
.pem-comment-actions{margin-top:8px}.pem-comment-like,.pem-comment-delete{border:0;background:transparent;color:var(--muted);font-size:9px;font-weight:800;cursor:pointer}.pem-comment-like.active{color:#b68732}.pem-comment-delete{letter-spacing:2px;padding:2px 6px}
.pem-comment-empty-state{display:grid;gap:4px;padding:30px 10px;text-align:center}.pem-comment-empty-state strong{font-size:13px}.pem-comment-empty-state span{font-size:9px;color:var(--muted)}

/* Perfil */
.pem-profile-settings{border-radius:20px!important;padding:18px!important;background:var(--card)!important}
.pem-profile-head{grid-template-columns:64px 1fr!important}.pem-profile-avatar{width:64px!important;height:64px!important;border-radius:20px!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.pem-profile-photo-actions{display:flex;gap:9px;align-items:center}.pem-profile-photo-actions label{cursor:pointer}.pem-profile-photo-actions .text-button{font-size:9px!important}
.pem-profile-field input{background:var(--pem44-soft)!important;border-color:var(--pem44-line)!important}
.pem-owner-sim-tools{border-radius:20px!important;display:grid!important;grid-template-columns:1fr auto!important;gap:18px!important;align-items:center!important}

/* Administração e permissões */
.pem-special-permissions{display:grid;grid-template-columns:minmax(220px,.85fr) 1.5fr;gap:18px;margin:14px 0;padding:17px;border:1px solid var(--pem44-line);border-radius:18px;background:var(--pem44-soft)}
.pem-special-permissions h2{margin:3px 0 5px!important;font-size:17px!important}.pem-special-permissions p:not(.overline){margin:0!important;font-size:9px;color:var(--muted);line-height:1.5}
.pem-special-form{display:grid;grid-template-columns:minmax(180px,1fr) auto auto auto;gap:8px;align-items:center}.pem-special-form>input{min-height:42px;border:1px solid var(--pem44-line);border-radius:11px;padding:0 11px;background:var(--card);color:var(--text)}.pem-special-form label{display:flex;align-items:center;gap:6px;font-size:9px;font-weight:750;white-space:nowrap}.pem-special-form>span{grid-column:1/-1;font-size:8px;color:var(--muted)}
.pem-access-permission-chips{display:flex;gap:5px}.pem-access-permission-chips button{border:1px solid var(--pem44-line);background:var(--card);color:var(--muted);border-radius:999px;padding:5px 8px;font-size:8px;font-weight:850;cursor:pointer}.pem-access-permission-chips button.active{background:color-mix(in srgb,#c69a43 13%,var(--card));border-color:color-mix(in srgb,#c69a43 42%,var(--pem44-line));color:#9a712a}
.pem-admin-visual-editor{margin:15px 0;padding:16px;border:1px solid var(--pem44-line);border-radius:18px;background:var(--pem44-soft)}
.pem-admin-visual-head{display:flex;justify-content:space-between;gap:16px}.pem-admin-visual-head span{font-size:8px;font-weight:900;letter-spacing:.13em;color:#9a712a}.pem-admin-visual-head h3{margin:3px 0 4px;font-size:16px}.pem-admin-visual-head p{margin:0;font-size:9px;color:var(--muted);line-height:1.5}.pem-admin-visual-badge{align-self:flex-start;border:1px solid var(--pem44-line);border-radius:999px;padding:6px 8px;white-space:nowrap}
.pem-admin-visual-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:13px}.pem-admin-visual-grid label,.pem-admin-slot-list label{display:grid;gap:5px;padding:10px;border:1px solid var(--pem44-line);border-radius:12px;background:var(--card);font-size:9px;font-weight:800}.pem-admin-visual-grid input,.pem-admin-slot-list input{font-size:8px}.pem-admin-visual-grid select{min-height:34px;border:1px solid var(--pem44-line);border-radius:9px;background:var(--pem44-soft);color:var(--text)}
.pem-admin-slot-list{display:grid;gap:7px;margin-top:12px}.pem-admin-slot-list>strong{font-size:10px}.pem-admin-slot-list label{grid-template-columns:1fr auto;align-items:center}.pem-admin-slot-list span{display:grid}.pem-admin-slot-list small{font-weight:500;color:var(--muted)}
.pem-admin-blocks{margin-top:12px}.pem-admin-blocks summary{cursor:pointer;font-size:9px;font-weight:850}.pem-admin-blocks p{font-size:8px;color:var(--muted)}.pem-admin-blocks textarea{width:100%;border:1px solid var(--pem44-line);border-radius:10px;background:var(--card);color:var(--text);padding:10px;font:11px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}
.pem-admin-visual-actions{display:flex;align-items:center;gap:9px;margin-top:12px}.pem-visual-status{font-size:8px;color:var(--muted)}

/* Menos peso visual na administração */
.question-admin-workspace,.access-admin{border-radius:22px!important;padding:18px!important}.question-admin-list article,.access-record{border-radius:14px!important;background:var(--card)!important}.admin-toolbar{gap:9px!important}

@media(max-width:700px){
  .view{padding-bottom:96px!important}.training-builder{padding:14px!important;border-radius:17px!important}.builder-heading h2{font-size:19px!important}.advanced-bank-filters{grid-template-columns:1fr!important}.contest-strip{margin-inline:-2px!important}
  .training-card{padding:15px!important;border-radius:17px!important}.statement,.pem-q-block-text{font-size:13.5px!important}.alternatives button{min-height:54px!important;padding:10px 47px 10px 10px!important}.alternatives button span{font-size:12px!important}.pem-q-pagination{bottom:72px!important}
  .pem-q-hub-card{width:100%!important;max-height:88dvh!important;border-radius:24px 24px 0 0!important;margin-top:auto!important}.pem-q-hub{align-items:flex-end!important}.pem-q-hub-body{padding:12px 14px 24px!important}.pem-comment-compose-foot{align-items:flex-end}.pem-comment-compose-foot small{max-width:55%}
  .pem-profile-head{grid-template-columns:54px 1fr!important}.pem-profile-avatar{width:54px!important;height:54px!important;border-radius:17px!important}.pem-owner-sim-tools{grid-template-columns:1fr!important}.pem-owner-sim-tools button{width:100%!important}
  .pem-special-permissions{grid-template-columns:1fr!important}.pem-special-form{grid-template-columns:1fr 1fr!important}.pem-special-form>input,.pem-special-form>button,.pem-special-form>span{grid-column:1/-1!important}.pem-admin-visual-grid{grid-template-columns:1fr!important}.pem-admin-slot-list label{grid-template-columns:1fr!important}.pem-admin-visual-actions{flex-wrap:wrap}.pem-admin-visual-actions button{flex:1 1 140px}
}

/* V46: readable controls, direct navigation and portable bank. */
.pem-shell{--pem46-accent:#cda65e}
.pem-shell button:focus-visible,.pem-shell a:focus-visible,.pem-shell select:focus-visible,.pem-shell input:focus-visible{outline:3px solid var(--pem46-accent)!important;outline-offset:3px}
.pem-shell .view-heading h1{font-size:clamp(27px,3.2vw,38px)!important;line-height:1.15}
.pem-shell .view-heading p{font-size:14px!important;line-height:1.65}
.pem-shell .app-header{min-height:90px!important}
.pem-shell .bottom-nav{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.pem-shell .bottom-nav button{min-height:58px;font-size:12px!important;font-weight:600;border-radius:12px}
.pem-shell .bottom-nav button.active{background:color-mix(in srgb,var(--pem46-accent) 13%,var(--card))!important;color:var(--text)!important}
.pem-shell .bottom-nav span{max-width:none!important}
.pem-shell .advanced-bank-filters label{font-size:12px!important;line-height:1.6}
.pem-shell .advanced-bank-filters select{font-size:15px!important;min-height:48px}
.pem-shell .builder-heading .overline,.pem-shell .builder-step span,.pem-shell .training-launch>div span{font-size:12px!important}
.pem-shell .builder-step strong{font-size:15px!important}
.pem-shell .training-card .statement,.pem-shell .pem-q-block-text{font-size:16px!important;line-height:1.8!important}
.pem-shell .alternatives button span{font-size:15px!important;line-height:1.6!important}
.pem-filter-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:14px 0;font-size:12px;line-height:1.6;color:var(--muted)}
.pem-filter-summary button{flex-shrink:0;min-height:44px;background:transparent;border:1px solid var(--line);border-radius:10px;padding:0 12px;color:var(--text);font:inherit;cursor:pointer}
.pem-filter-summary button:disabled{opacity:.4;cursor:default}
.pem-special-permissions{grid-template-columns:1fr!important;padding:22px!important}
.pem-special-permissions p:not(.overline){font-size:13px!important;max-width:720px}
.pem-access-permission-chips{flex-wrap:wrap;align-items:center;max-width:320px}
.pem-access-permission-chips button{min-height:40px;font-size:11px!important;padding:8px 12px!important;border-radius:10px!important;color:var(--muted)}
.pem-access-permission-chips button.active{color:var(--text)!important;border-color:var(--pem46-accent)!important}
.pem-access-permission-chips button:disabled{cursor:default;opacity:.65}
.pem-access-permission-chips [role=status]{flex-basis:100%;font-size:11px;line-height:1.5;color:var(--muted)}
.access-actions{flex-wrap:wrap!important;justify-content:flex-end;gap:10px!important}
.pem-portable-export{border:1px solid color-mix(in srgb,var(--pem46-accent) 40%,var(--line));border-radius:20px;background:var(--pem44-soft);padding:24px;margin:0 0 24px}
.pem-portable-export .overline{font-size:11px;letter-spacing:.12em;color:var(--pem46-accent)}
.pem-portable-export h2{font-size:24px;letter-spacing:-.03em;margin:8px 0}
.pem-portable-export p{font-size:13px;color:var(--muted);line-height:1.65;max-width:680px}
.pem-export-options{display:flex;gap:16px;flex-wrap:wrap;align-items:end;margin-top:18px}
.pem-export-options label{font-size:12px;display:grid;gap:6px}
.pem-export-options select{min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--text);font-size:14px;min-width:200px}
.pem-export-options .pem-export-check{display:flex;align-items:center;align-self:center;gap:8px;max-width:260px;line-height:1.5}
.pem-export-check input{width:18px;height:18px;accent-color:var(--pem46-accent)}
.pem-export-options button{min-height:46px!important}
.pem-portable-export [role=status]{margin-bottom:0;min-height:22px}
.pem-navigation-status{position:fixed;bottom:100px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 32px);padding:16px 20px;border-radius:14px;border:1px solid var(--line);background:var(--card);color:var(--text);box-shadow:0 12px 40px #0003;font-size:14px;z-index:150}
.pem-navigation-status[hidden]{display:none}
@media(min-width:1100px){
  .pem-shell{max-width:1320px!important;padding-left:216px!important;padding-right:20px!important}
  .pem-shell .bottom-nav{position:fixed!important;left:max(24px,calc((100vw - 1320px)/2 + 16px))!important;top:118px!important;bottom:auto!important;transform:none!important;width:184px!important;height:auto!important;min-height:0!important;padding:20px 12px!important;display:flex!important;flex-direction:column!important;gap:8px!important;border:1px solid var(--line)!important;border-radius:20px!important;background:var(--card)!important}
  .pem-shell .bottom-nav::before{content:'SEU ESTUDO';font-size:10px;letter-spacing:.15em;color:var(--muted);padding:0 12px 12px}
  .pem-shell .bottom-nav::after{content:'P.E.M.  /  V46';font-size:10px;letter-spacing:.12em;color:var(--muted);padding:20px 12px 0;margin-top:8px;border-top:1px solid var(--line)}
  .pem-shell .bottom-nav button{flex-direction:row!important;justify-content:flex-start!important;gap:12px!important;padding:0 12px!important;font-size:13px!important}
  .pem-shell .bottom-nav b{position:static!important;margin-left:auto}
  .pem-shell .view,.pem-shell .app-main{padding-bottom:40px!important}
  .pem-shell .pem-secondary-filter{display:flex!important}
  .pem-shell .pem-more-filters{display:none!important}
  .pem-shell .advanced-bank-filters{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:700px){
  .pem-filter-summary{align-items:flex-start;font-size:12px}
  .pem-portable-export{padding:18px}
  .pem-export-options{display:grid;grid-template-columns:1fr;gap:14px}
  .pem-export-options select,.pem-export-options button{width:100%}
  .pem-export-options .pem-export-check{max-width:none}
  .access-actions{justify-content:flex-start}
  .pem-shell .advanced-bank-filters select{font-size:16px!important}
  .pem-shell .pem-special-permissions p{font-size:13px!important}
  .pem-shell .training-card .statement,.pem-shell .pem-q-block-text{font-size:15px!important}
}
@media(prefers-reduced-motion:reduce){.pem-shell *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
