/* E2: cadastro publico (links no login e formularios), aviso de validacao do personal e fila de validacao do admin.
   Mobile-first, tema escuro como 08-auth e 15-home. Cor sempre acompanhada de texto. */

/* ---- entrada ---- */
#loginView>p{margin:0 0 20px;color:#91aaa2;font-size:13px}
.auth-signup-links{display:flex;flex-wrap:wrap;justify-content:center;gap:2px 16px;margin-top:6px}
.auth-signup-link{display:inline-flex;align-items:center;min-height:44px;padding:0 4px;color:#b9e4d1;font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.auth-signup-link:hover{color:#eafff3}
.auth-signup-link:focus-visible,.su-back:focus-visible,.su-pw-toggle:focus-visible{outline:2px solid #fff;outline-offset:2px;border-radius:6px}
#signupView[hidden],#loginView[hidden]{display:none}
#signupView h1{margin:10px 0 8px;font-size:30px;line-height:1.05;font-weight:900;letter-spacing:-.04em;background:linear-gradient(100deg,#fff,#9affe0);color:transparent;background-clip:text;-webkit-background-clip:text;outline:none}
.su-sub{margin:0 0 14px;color:#91aaa2;font-size:13px}
.su-form{display:grid;gap:2px}
.su-field{display:grid;gap:6px;margin:10px 0;min-width:0}
.su-field>label,.su-label{color:#a7bdb3;font-size:12px;font-weight:750}
.su-field input[type=email],.su-field input[type=password],.su-field input[type=text],.su-field input[type=date]{width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid #2b433b;border-radius:10px;background:#0a1110;color:#edfff5;font:inherit;font-size:16px;outline:none;color-scheme:dark}
.su-field input:focus{border-color:#9affd0;box-shadow:0 0 0 3px #72ffc21b}
.su-field input[aria-invalid=true]{border-color:#ff9e94}
.su-pw-row{display:flex;gap:8px;align-items:stretch}
.su-pw-row input{flex:1}
.su-pw-toggle{flex:none;min-height:44px;padding:0 12px;border:1px solid #294239;border-radius:10px;background:#101b19;color:#b9e4d1;font-size:12px;font-weight:700;cursor:pointer}
.su-req{margin:0;padding:0;list-style:none;font-size:12px;color:#91aaa2}
.su-req-item[data-ok="1"]{color:#c7ff62}
.su-hint{margin:0;color:#91aaa2;font-size:12px}
.su-err{margin:0;color:#ffb1a6;font-size:12px;font-weight:650}
.su-err[hidden]{display:none}
.su-general{padding:10px 12px;border:1px solid #ff9b8a66;border-radius:10px;background:#ff9b8a14;margin:6px 0}
.su-check{display:flex;align-items:flex-start;gap:12px;min-height:44px;color:#e3f7ec;font-size:14px;font-weight:650;cursor:pointer}
.su-check input{flex:none;width:24px;height:24px;margin:0;accent-color:#c7ff62}
.su-terms-note{margin:0;padding:9px 11px;border:1px dashed #f2c55c88;border-radius:10px;background:#f2c55c12;color:#f6d98f;font-size:12px}
.su-back{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:44px;margin-top:8px;color:#b9e4d1;font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.su-exp-body{display:grid;gap:10px;justify-items:start}
.su-exp .stepper{justify-self:start}

/* ---- aviso de validacao do personal (todas as paginas do personal) ---- */
.approval-banner{margin:10px 0 0;padding:12px 14px;border-radius:12px;border:1px solid #f2c55c88;background:#f2c55c18;color:var(--ink);font-size:14px;line-height:1.45}
.approval-banner[hidden]{display:none}
.approval-banner strong{display:block;color:#f6d98f;font-size:14px;margin-bottom:2px}
.approval-banner strong::before{content:"⏳ ";}
.approval-banner[data-status=rejected]{border-color:#ff9b8a88;background:#ff9b8a16}
.approval-banner[data-status=rejected] strong{color:#ffb3a5}
.approval-banner[data-status=rejected] strong::before{content:"✕ "}
.approval-banner[data-status=inactive]{border-color:#9db5ad88;background:#9db5ad14}
.approval-banner[data-status=inactive] strong{color:#cfe0d8}
.approval-banner[data-status=inactive] strong::before{content:"⏸ "}
.approval-banner p{margin:0}
.approval-note{margin:0 0 10px;padding:9px 11px;border-radius:10px;border:1px dashed #f2c55c88;background:#f2c55c10;color:#f6d98f;font-size:13px}
[data-decision]:disabled,.plan-btn.primary:disabled{opacity:.5;cursor:not-allowed}

/* ---- visao geral do admin: selo de pendentes ---- */
.rh-badge-btn{background:#f2c55c;color:#1d1605;border:1px solid #f2c55c;font-weight:800}
.rh-badge-btn:hover{background:#f6d98f}

/* ---- fila de validacao ---- */
.cq{display:grid;gap:12px;margin:12px 0 16px;padding:18px}
.cq-head h2{margin:0;color:#f0fff6;font-size:18px}
.cq-sub{margin:4px 0 0;color:var(--muted);font-size:13px}
.cq-msg{min-height:20px;margin:0;color:#b9e4d1;font-size:13px;font-weight:650;outline:none}
.cq-msg.error{color:#ffb1a6}
.cq-msg:empty{min-height:0}
.cq-tabs .chip{min-height:44px}
.cq-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.cq-row{display:grid;gap:10px;padding:13px;border:1px solid #ffffff1c;border-radius:12px;background:#0d1514;min-width:0}
.cq-main{display:grid;gap:6px;min-width:0}
.cq-top{display:flex;flex-wrap:wrap;align-items:center;gap:8px;justify-content:space-between}
.cq-email{color:#eafff3;font-size:14px;overflow-wrap:anywhere;min-width:0}
.cq-tag{white-space:nowrap}
.cq-meta{display:flex;flex-wrap:wrap;gap:4px 14px;margin:0;color:#a1b5ab;font-size:12px}
.cq-reason{display:block;margin:0;color:#f6d98f;font-size:12px}
.cq-history summary{min-height:44px;display:flex;align-items:center;color:#b9e4d1;font-size:12px;font-weight:700;cursor:pointer}
.cq-history ol{margin:0 0 4px;padding-left:18px;color:#a1b5ab;font-size:12px;display:grid;gap:4px}
.cq-history small{color:#91aaa1}
.cq-actions{display:flex;flex-wrap:wrap;gap:8px}
.cq-form{display:grid;gap:8px;padding:12px;border:1px solid #ffffff22;border-radius:12px;background:#ffffff08}
.cq-form strong{color:#eafff3;font-size:13px}
.cq-label{color:#a7bdb3;font-size:12px;font-weight:750}
.cq-form input{width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid #2b433b;border-radius:10px;background:#0a1110;color:#edfff5;font:inherit;font-size:16px;outline:none}
.cq-form input:focus{border-color:#9affd0;box-shadow:0 0 0 3px #72ffc21b}
.cq-form input[aria-invalid=true]{border-color:#ff9e94}
.cq .btn:focus-visible,.cq .chip:focus-visible,.cq summary:focus-visible,.approval-banner:focus-visible{outline:2px solid #fff;outline-offset:2px;box-shadow:0 0 0 4px #5fffd055}
@media(min-width:720px){
  .cq-row{grid-template-columns:minmax(0,1fr) auto;align-items:start}
  .cq-form{grid-column:1/-1}
  .su-field input[type=email],.su-field input[type=password],.su-field input[type=text],.su-field input[type=date],.cq-form input{font-size:14px}
}
.admin-review{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:12px 0 16px;align-items:start}.admin-review>.cq{margin:0}@media(max-width:900px){.admin-review{grid-template-columns:1fr}}
