.admin-loading #authScreen,.admin-loading #adminApp{visibility:hidden}
.customer-library-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.2rem 0 .9rem}
      .customer-library-kicker{display:inline-block;margin-bottom:.3rem;color:var(--admin-primary);font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
      .customer-library-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin:.4rem 0 1rem}
      .customer-library-summary article{padding:.9rem;border:1px solid var(--admin-border);border-radius:14px;background:rgba(250,252,248,.96)}
      .customer-library-summary span{display:block;margin-bottom:.2rem;color:var(--text-soft);font-size:.76rem}
      .customer-library-summary strong{font-size:1.2rem;color:var(--admin-text)}
      .customer-library-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,.35fr);gap:.7rem;margin-bottom:.7rem}
      .customer-library-security{margin:.2rem 0 1rem;padding:.7rem .8rem;border-radius:12px;background:rgba(95,127,63,.08);color:#4f6545;font-size:.82rem;line-height:1.45}
      .purchase-library-grid{display:grid;gap:.85rem}
      .library-purchase-card{padding:1rem;border:1px solid var(--admin-border);border-radius:16px;background:rgba(250,252,248,.98)}
      .library-purchase-top{display:flex;justify-content:space-between;align-items:flex-start;gap:.9rem}
      .library-purchase-top h3{margin:.45rem 0 0;font-size:1.05rem}
      .library-purchase-price{white-space:nowrap;color:var(--admin-primary-strong)}
      .library-purchase-price--free{color:#4f7a3d}
      .library-purchase-help{margin:.65rem 0;color:#5f6f62;font-size:.88rem;line-height:1.48}
      .library-purchase-meta{display:flex;flex-wrap:wrap;gap:.35rem .75rem;margin-bottom:.8rem;color:var(--text-soft);font-size:.76rem}
      .purchase-files-panel{margin-top:.85rem;padding-top:.8rem;border-top:1px solid var(--admin-border)}
      .purchase-files-header{display:flex;justify-content:space-between;align-items:center;gap:.7rem;margin-bottom:.6rem}
      .purchase-files-list,#materialFilesCurrentList{display:grid;gap:.5rem}
      .purchase-file-row,.material-file-admin-row{display:flex;justify-content:space-between;align-items:center;gap:.7rem;padding:.7rem .75rem;border-radius:12px;background:#fff;border:1px solid var(--admin-border)}
      .purchase-file-row>div,.material-file-admin-row>div{min-width:0}
      .purchase-file-row strong,.purchase-file-row span,.material-file-admin-row strong,.material-file-admin-row span{display:block}
      .purchase-file-row strong,.material-file-admin-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
      .purchase-file-row span,.material-file-admin-row span{margin-top:.15rem;color:var(--text-soft);font-size:.72rem}
      .customer-library-empty{display:grid;gap:.35rem;padding:1.5rem 1rem;border:1px dashed var(--admin-border);border-radius:14px;text-align:center;color:var(--text-soft)}
      .material-files-current{padding:.85rem;border:1px solid var(--admin-border);border-radius:12px;background:rgba(250,252,248,.95)}
      .material-files-current>strong{display:block;margin-bottom:.55rem}
      @media(max-width:720px){
        .customer-library-summary{gap:.45rem}.customer-library-summary article{padding:.7rem .55rem;text-align:center}
        .customer-library-toolbar{grid-template-columns:1fr}.library-purchase-top{display:grid;grid-template-columns:1fr}
        .library-purchase-price{white-space:normal}.library-open-files,.purchase-file-row .btn,.material-file-admin-row .btn{width:100%}
        .purchase-file-row,.material-file-admin-row,.purchase-files-header{align-items:stretch;flex-direction:column}
      }

/* Login Google: acesso principal sem alterar a estrutura antiga da conta. */
.auth-google-entry{display:grid;gap:.6rem;margin:1.2rem 0 1rem}
.auth-google-entry[hidden]{display:none}
.auth-google-button{width:100%;display:flex;justify-content:center;align-items:center;gap:.8rem;min-height:52px;padding:.75rem 1rem;border:1px solid #bfc9b7;border-radius:12px;background:#fff;color:#223222;font:600 .98rem Inter,system-ui,sans-serif;cursor:pointer;transition:background .15s,border-color .15s}
.auth-google-button:hover{background:#f4f8f0;border-color:#79966b}
.auth-google-button:focus-visible,.auth-legacy summary:focus-visible{outline:3px solid #71944b;outline-offset:3px}
.auth-google-button:disabled{opacity:.65;cursor:wait}
.auth-google-button .google-mark{flex-shrink:0}
.auth-google-hint{margin:0;text-align:center;color:#5d6b5a;font-size:.82rem;line-height:1.5}
.auth-legacy{margin:1rem 0 1.25rem;border-top:1px solid #e1e7db;padding-top:.9rem}
.auth-legacy > summary{display:flex;align-items:center;justify-content:center;gap:.6rem;cursor:pointer;list-style:none;text-align:center;color:#527247;font-size:.88rem;font-weight:600;line-height:1.5;transition:color .22s ease}
.auth-legacy > summary::-webkit-details-marker{display:none}
.auth-legacy > summary:hover{color:#354f32}
.auth-legacy > summary::after{content:"";width:.42rem;height:.42rem;flex:none;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .4s cubic-bezier(.22,1,.36,1)}
.auth-legacy[open] > summary::after{transform:translateY(2px) rotate(225deg)}
.auth-legacy > .auth-switch{margin-top:1rem}

/* Entrada e saída suaves: altura acompanha o conteúdo real, sem saltar na tela.
   Browsers sem suporte mantêm a abertura nativa do <details>. */
@supports (interpolate-size:allow-keywords) {
  .auth-legacy{interpolate-size:allow-keywords}
  .auth-legacy::details-content{
    block-size:0;opacity:0;overflow:clip;
    transition:block-size .42s cubic-bezier(.22,1,.36,1),opacity .3s ease,content-visibility .42s allow-discrete
  }
  .auth-legacy[open]::details-content{block-size:auto;opacity:1}
}
@media (prefers-reduced-motion:reduce) {
  .auth-legacy::details-content,.auth-legacy > summary::after,.auth-legacy > summary{transition:none!important}
}
