/* Estuda+ 2.1 — navegação mobile tipo aplicativo, expansores e avaliação de dificuldade */
.settings-author{display:flex;align-items:center;gap:11px;padding:10px 12px;color:#1e3655}
.settings-author>span:first-child{width:20px;height:20px;color:#2870c4;flex-shrink:0}
.settings-author strong,.settings-author small{display:block}
.settings-author strong{font-size:12px;font-weight:800}
.settings-author small{font-size:11px;color:#667d9e;line-height:1.4;margin-top:2px}
.mobile-bottom-nav,.subjects-sheet,.subjects-sheet-backdrop{display:none}
.difficulty-feedback{margin:17px 0 10px;border:1px solid #dce8f9;background:#f6f9ff;padding:12px 14px;border-radius:12px;display:flex;align-items:center;flex-wrap:wrap;column-gap:14px;row-gap:7px;min-width:0}
.difficulty-label{display:inline-flex;align-items:center;gap:7px;color:#3b577b;font-size:12px;font-weight:800}
.difficulty-label>svg{color:#e4a72a;width:17px;height:17px}
.difficulty-stars{display:inline-flex;align-items:center;gap:3px}
.difficulty-star{width:35px;height:35px;border:0;background:transparent;color:#afbdd0;border-radius:8px;display:grid;place-items:center;padding:5px;transition:transform .15s,color .15s,background .15s}
.difficulty-star svg{width:24px;height:24px;stroke-width:1.8;fill:transparent}
.difficulty-star.rated{color:#eeab28}
.difficulty-star.rated svg{fill:#ffdd85}
.difficulty-star:hover{transform:scale(1.08);background:#fff4d7;color:#c58c23}
.difficulty-star:focus-visible{outline:2px solid #2162c5;outline-offset:1px}
.difficulty-description{font-size:11px;color:#7385a0;flex:1 1 130px}
.difficulty-compact{padding:8px 11px;gap:6px 9px;margin:10px 0;background:#fafcff}
.difficulty-compact .difficulty-star{width:29px;height:29px;padding:4px}
.difficulty-compact .difficulty-star svg{width:20px;height:20px}
.difficulty-compact .difficulty-description{flex-basis:115px}
.review-answer-item>.difficulty-feedback{margin-top:14px}
@media(max-width:730px){
  :root{--mobile-tabs-height:72px}
  body{padding-bottom:calc(var(--mobile-tabs-height) + env(safe-area-inset-bottom,0px));}
  .app-root{min-height:100dvh}
  .content-frame{padding-bottom:calc(var(--mobile-tabs-height) + 26px)}
  .fixed-author{display:none!important}
  .mobile-nav,body.sidebar-collapsed .mobile-nav{display:none!important}
  .sidebar-mobile-open .sidebar{bottom:calc(var(--mobile-tabs-height) + env(safe-area-inset-bottom,0px))!important;max-height:calc(100dvh - 66px - var(--mobile-tabs-height));width:min(300px,85vw)!important;padding:17px 12px 26px!important;z-index:86!important;gap:0}
  .sidebar-mobile-open #sidebar-overlay{inset:66px 0 calc(var(--mobile-tabs-height) + env(safe-area-inset-bottom,0px));z-index:85!important}
  .sidebar-mobile-open .sidebar .side-helper{display:block!important;flex:0 0 auto!important;width:auto;min-width:0;max-width:100%;margin:26px 5px 12px!important;padding:17px!important;overflow:hidden}
  .sidebar-mobile-open .sidebar .side-helper strong{display:block!important;color:#fff;font-weight:800;font-size:14px;line-height:1.4;overflow-wrap:break-word}
  .sidebar-mobile-open .sidebar .side-helper p{display:block!important;color:#d6e6ff;font-size:12px;line-height:1.5;white-space:normal;overflow-wrap:anywhere;margin:8px 0 14px}
  .sidebar-mobile-open .sidebar .side-helper .helper-illustration{display:inline-grid!important;margin-bottom:9px}
  .sidebar-mobile-open .sidebar .side-helper .button{display:inline-flex!important;max-width:100%;font-size:11px;white-space:normal}
  .sidebar-mobile-open .sidebar .sidebar-footer{display:flex!important;margin-top:auto!important}
  .mobile-bottom-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;position:fixed;bottom:0;left:0;right:0;width:100%;height:calc(var(--mobile-tabs-height) + env(safe-area-inset-bottom,0px));padding:4px 6px calc(5px + env(safe-area-inset-bottom,0px));z-index:80;background:rgba(255,255,255,.98);border-top:1px solid #d9e5f5;box-shadow:0 -8px 30px rgba(22,51,90,.09);backdrop-filter:blur(12px)}
  .mobile-bottom-nav>button{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:none;border-radius:13px;background:transparent;color:#71839e;font-size:10px;font-weight:800;letter-spacing:-.015em;padding:5px 0;white-space:nowrap}
  .mobile-bottom-nav>button>span:first-child{display:grid;place-items:center;width:28px;height:27px;border-radius:9px}
  .mobile-bottom-nav svg{width:21px;height:21px}
  .mobile-bottom-nav>button.active{color:#1b62ba}
  .mobile-bottom-nav>button.active>span:first-child{background:#eaf2ff;color:#1d65bf}
  .mobile-bottom-nav>button:active{background:#f1f6ff}
  .subjects-sheet-backdrop:not([hidden]){display:block;position:fixed;inset:0;background:rgba(14,33,65,.42);z-index:95;backdrop-filter:blur(3px)}
  .subjects-sheet:not([hidden]){display:block;position:fixed;left:0;right:0;bottom:calc(var(--mobile-tabs-height) + env(safe-area-inset-bottom,0px));max-height:calc(100dvh - 110px);overflow-y:auto;background:#fff;border-radius:21px 21px 0 0;z-index:96;padding:12px 16px 20px;box-shadow:0 -15px 50px rgba(9,37,77,.18)}
  .sheet-handle{width:42px;height:5px;border-radius:10px;background:#d7e1f0;margin:0 auto 13px}
  .sheet-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:2px 3px 14px}
  .sheet-head strong{display:block;font-size:17px;color:#183a64}
  .sheet-head p{color:#8091aa;font-size:12px;margin:4px 0 0}
  .sheet-subjects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .sheet-subject{border:1px solid #dae5f4;border-radius:11px;background:#f8fbff;min-height:53px;padding:11px;text-align:left;display:flex;gap:9px;align-items:center;font-size:12px;font-weight:780;color:#294769;min-width:0}
  .sheet-subject>span:nth-child(2){flex:1;min-width:0}
  .sheet-subject>svg{width:15px;height:15px;color:#9aacc2}
  .sheet-subject:active{background:#e8f1ff}
  .mobile-accordion{display:block;border:1px solid #dfe8f5;border-radius:14px;background:#fff;margin:12px 0;box-shadow:0 2px 10px #19447a0a;overflow:hidden;min-width:0}
  .mobile-accordion>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:59px;padding:14px 16px;font-size:14px;font-weight:850;color:#264972;background:#fff}
  .mobile-accordion>summary::-webkit-details-marker{display:none}
  .mobile-accordion[open]>summary{background:#f1f6ff;color:#195eb4;border-bottom:1px solid #dbe8fa}
  .accordion-label{flex:1;min-width:0}
  .accordion-indicator{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:#edf3fc;color:#3972bd;transition:transform .18s}
  .accordion-indicator svg{width:17px;height:17px}
  .mobile-accordion[open] .accordion-indicator{transform:rotate(180deg)}
  .accordion-content{padding:15px 12px 17px;min-width:0}
  .accordion-content>.section-heading{display:none}
  .accordion-content>.exam-grid,.accordion-content>.subject-grid,.accordion-content>.exam-areas{margin-top:0}
  .accordion-content>.two-grid,.accordion-content>.review-grid{display:block}
  .accordion-content>.card{box-shadow:none;border:0;padding:6px}
  .accordion-content>.bank-panel{padding:0}
  .accordion-content>.kpi-grid{margin:0}
  .accordion-content .review-row{flex-wrap:wrap}
  .accordion-content .review-row .actions{margin-left:auto}
  .accordion-content>.exercise-layout{display:block}
  .subject-mobile-sections{margin-top:12px}
  .subject-mobile-sections .accordion-content{padding:13px 10px}
  .subject-mobile-sections .exercise-layout{display:block}
  .subject-mobile-sections .exercise-side{margin-top:12px}
  .subject-mobile-sections .question-card{padding:15px}
  .subject-mobile-sections .exercise-footer .cluster{flex-wrap:wrap}
  .subject-mobile-sections .toolbar{gap:8px}
  .difficulty-feedback{margin:13px 0;padding:10px 9px;gap:6px 8px}
  .difficulty-label{font-size:11px;flex-basis:100%}
  .difficulty-stars{gap:1px}
  .difficulty-star{width:37px;height:37px;padding:5px}
  .difficulty-description{flex-basis:100%;font-size:10.5px}
  .difficulty-compact .difficulty-star{width:32px;height:32px}
  .bank-row .difficulty-feedback{margin:9px 0}
  .toast{bottom:calc(var(--mobile-tabs-height) + env(safe-area-inset-bottom,0px) + 12px);left:12px;right:12px;max-width:none}
  .settings-menu{max-height:calc(100dvh - 150px);overflow:auto}
}
@media(min-width:731px){.mobile-bottom-nav,.subjects-sheet,.subjects-sheet-backdrop{display:none!important}}
@media print{.mobile-bottom-nav,.subjects-sheet,.subjects-sheet-backdrop,.difficulty-feedback{display:none!important}}
