:root{--bg:#0d0f12;--panel:#171a1f;--panel2:#1d2127;--line:#2b3038;--text:#f4f4f5;--muted:#949aa5;--red:#e0353f;--red2:#b91f2a;--yellow:#f0b429;--blue:#4f8cff;--green:#43b581;--gray:#6b7280;--radius:14px;--shadow:0 18px 60px rgba(0,0,0,.28)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:14px}a{color:inherit;text-decoration:none}.shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:sticky;top:0;height:100vh;padding:24px 18px;background:#111318;border-right:1px solid var(--line);display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;margin:0 6px 28px}.brand-mark{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(135deg,var(--red),#6b0d14);font-weight:900;letter-spacing:-1px;box-shadow:0 8px 24px rgba(224,53,63,.25)}.brand-mark.big{width:70px;height:70px;border-radius:18px;font-size:24px;margin:0 auto 20px}.brand span:last-child{display:flex;flex-direction:column;gap:2px}.brand small,.profile small,.block{color:var(--muted);font-size:11px}.sidebar nav{display:flex;flex-direction:column;gap:6px}.nav-link{padding:11px 12px;border-radius:9px;color:#d5d8dd}.nav-link:hover{background:var(--panel2);color:white}.profile{margin-top:auto;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--panel);display:flex;align-items:center;gap:9px}.avatar,.message-avatar{display:grid;place-items:center;border-radius:50%;background:#292f38;font-weight:800}.avatar{width:34px;height:34px}.profile-text{display:flex;min-width:0;flex:1;flex-direction:column}.profile-text strong,.profile-text small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout{font-size:20px;color:var(--muted)}.content{padding:34px;min-width:0}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.page-head h1{font-size:28px;margin:4px 0 5px}.page-head p{margin:0;color:var(--muted)}.back{color:var(--muted);font-size:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 14px;border:1px solid var(--line);border-radius:9px;background:var(--panel2);color:#fff;font-weight:700;cursor:pointer}.btn:hover{border-color:#434b57}.btn.primary{background:var(--red);border-color:var(--red)}.btn.primary:hover{background:var(--red2)}.btn.ghost{background:transparent}.btn.full{width:100%}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px}.metric-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:24px}.metric{padding:19px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,#1a1e24,var(--panel));box-shadow:var(--shadow)}.metric span{display:block;color:var(--muted);font-weight:600}.metric strong{display:block;margin:8px 0 3px;font-size:30px}.metric strong.small-value{font-size:20px}.metric small{color:var(--muted)}.two-col{display:grid;grid-template-columns:1.6fr 1fr;gap:16px;margin-bottom:16px}.two-col.detail-columns{grid-template-columns:1.4fr .8fr}.panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow);margin-bottom:16px;overflow:hidden}.panel-head{min-height:54px;padding:15px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-head h2{margin:0;font-size:15px}.panel-head>a,.panel-head>span{color:var(--muted);font-size:12px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:720px}th,td{text-align:left;padding:13px 16px;border-bottom:1px solid #252a31;vertical-align:middle}th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800}tbody tr:hover{background:#1b1f25}tbody tr:last-child td{border-bottom:0}.ticket-link,td>a{color:#ff6670;font-weight:800}.badge{display:inline-flex;align-items:center;width:max-content;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800}.status-aguardando{background:rgba(240,180,41,.12);color:#f7cb66}.status-em_atendimento{background:rgba(79,140,255,.13);color:#82adff}.status-fechado{background:rgba(67,181,129,.13);color:#72d9a4}.status-cancelado,.neutral{background:rgba(107,114,128,.16);color:#b1b5bd}.empty{padding:26px;color:var(--muted);text-align:center}.bars{padding:18px}.bar-row{display:grid;grid-template-columns:150px 1fr 30px;align-items:center;gap:10px;margin:12px 0}.bar-row>span{color:#d9dce1;font-size:12px}.bar-track{height:8px;background:#2a2f36;border-radius:20px;overflow:hidden}.bar-fill{height:100%;background:linear-gradient(90deg,var(--red),#ff6a73);border-radius:20px}.filters{display:grid;grid-template-columns:2fr repeat(5,minmax(130px,1fr)) auto auto;gap:9px;margin-bottom:16px}input,select{width:100%;height:40px;padding:0 11px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--text);outline:none}input:focus,select:focus{border-color:#505967}.pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:20px;color:var(--muted)}.detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.detail-card{min-height:104px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.detail-card>span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em}.detail-card>strong{display:block;margin-top:9px}.detail-card>small{display:block;color:var(--muted);margin-top:4px}.pre{padding:2px 18px 18px;white-space:pre-wrap}.timeline{padding:14px 18px}.timeline-item{display:grid;grid-template-columns:16px 1fr;gap:10px;padding:9px 0;position:relative}.timeline-item:before{content:"";position:absolute;left:5px;top:23px;bottom:-13px;width:1px;background:var(--line)}.timeline-item:last-child:before{display:none}.dot{width:11px;height:11px;border-radius:50%;background:var(--red);margin-top:5px}.timeline-item div{display:flex;flex-direction:column;gap:2px}.timeline-item small,.timeline-item p{color:var(--muted);margin:0;font-size:11px}.timeline-item code{margin-top:5px;white-space:pre-wrap;color:#c7cbd2;font-size:11px}.participant-list{padding:12px 18px}.participant-list>div{padding:10px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:4px 8px}.participant-list>div:last-child{border-bottom:0}.participant-list small{grid-column:1/-1;color:var(--muted)}.transcript{padding:8px 18px 20px}.message{display:flex;gap:11px;padding:12px 4px;border-bottom:1px solid #242930}.message:last-child{border-bottom:0}.message-avatar{flex:0 0 auto;width:36px;height:36px}.message-body{min-width:0;flex:1}.message-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.message-meta time,.message-meta small{font-size:11px;color:var(--muted)}.deleted{font-size:10px;color:#ff737b;border:1px solid rgba(255,115,123,.3);border-radius:99px;padding:2px 6px}.message-content{margin-top:6px;white-space:pre-wrap;overflow-wrap:anywhere;color:#e8e9eb;line-height:1.5}.attachments{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.attachments a{padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:#12151a;color:#dfe2e7}.attachments small{color:var(--muted)}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 50% 10%,#351116 0,#111318 42%,#090b0e 100%)}.login-card{width:min(430px,calc(100vw - 32px));padding:38px;border:1px solid var(--line);border-radius:20px;background:rgba(23,26,31,.94);box-shadow:0 30px 100px rgba(0,0,0,.5);text-align:center}.login-card h1{margin:0 0 6px}.login-card p{color:var(--muted);margin:0 0 24px}.alert{padding:12px;border-radius:9px;text-align:left;line-height:1.5}.warning{background:rgba(240,180,41,.10);border:1px solid rgba(240,180,41,.3);color:#f5cf75}.center-state{min-height:70vh;display:grid;place-items:center;align-content:center;gap:6px;text-align:center}.center-state h1{font-size:72px;margin:0}.center-state p{color:var(--muted)}@media(max-width:1180px){.metric-grid{grid-template-columns:repeat(2,1fr)}.filters{grid-template-columns:repeat(3,1fr)}.two-col{grid-template-columns:1fr}.detail-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto;padding:14px}.sidebar nav{flex-direction:row;overflow:auto}.profile{display:none}.brand{margin:0 0 12px}.content{padding:20px 14px}.page-head{align-items:flex-start;flex-direction:column}.metric-grid,.metric-grid.compact,.detail-grid{grid-template-columns:1fr}.filters{grid-template-columns:1fr}.two-col,.two-col.detail-columns{grid-template-columns:1fr}}

/* ==========================================================
   ALLOWLIST / CENTRAL DE APROVAÇÃO
   ========================================================== */
.flash-stack{display:grid;gap:10px;margin-bottom:18px}.flash{padding:13px 16px;border-radius:10px;border:1px solid var(--line);background:var(--panel)}.flash-success{border-color:rgba(46,204,113,.35)}.flash-error{border-color:rgba(231,76,60,.45)}
.dashboard-allowlist{margin:18px 0}.allowlist-metrics{margin:14px 0 18px}.badge.large{font-size:14px;padding:9px 13px}.pending-note{margin-top:5px;color:#f0c36a}.allowlist-filters{grid-template-columns:2fr 1.2fr 1.4fr 1fr 1fr auto auto}
.wl-status-cadastro,.wl-status-em_andamento{background:rgba(52,152,219,.14);color:#8bc7f0}.wl-status-aguardando_analise{background:rgba(241,196,15,.14);color:#f1c40f}.wl-status-aprovado_automaticamente,.wl-status-aprovado_manual{background:rgba(46,204,113,.14);color:#72d99c}.wl-status-reprovado{background:rgba(231,76,60,.15);color:#ef8b80}.wl-status-expirado,.wl-status-cancelado{background:rgba(149,165,166,.15);color:#bdc3c7}
.action-panel{border-color:rgba(241,196,15,.25)}.allowlist-actions{display:grid;grid-template-columns:1fr 1fr;gap:18px}.action-form{padding:16px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.015);display:flex;flex-direction:column;gap:10px}.action-form label{font-weight:700}.action-form label small{font-weight:400;color:var(--muted)}.action-form textarea{width:100%;box-sizing:border-box;resize:vertical;min-height:82px;border:1px solid var(--line);background:var(--bg);color:var(--text);border-radius:9px;padding:11px;font:inherit}.btn.success{background:rgba(46,204,113,.18);border-color:rgba(46,204,113,.4);color:#8ce0ad}.btn.danger{background:rgba(231,76,60,.18);border-color:rgba(231,76,60,.4);color:#f3a39a}.warning-panel{border-color:rgba(241,196,15,.28)}.success-panel{border-color:rgba(46,204,113,.28)}
.data-list{display:grid;gap:0;margin:0}.data-list div{display:grid;grid-template-columns:150px 1fr;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}.data-list div:last-child{border-bottom:0}.data-list dt{color:var(--muted)}.data-list dd{margin:0;word-break:break-word}.answers-list{display:grid;gap:10px}.answer-card{display:grid;grid-template-columns:38px 1fr 34px;gap:12px;padding:14px;border-radius:11px;border:1px solid var(--line);background:rgba(255,255,255,.012)}.answer-card.answer-correct{border-color:rgba(46,204,113,.25)}.answer-card.answer-wrong{border-color:rgba(231,76,60,.25)}.answer-number{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.06);font-weight:800}.answer-body strong{display:block;margin-bottom:8px}.answer-body p{margin:4px 0;color:var(--muted)}.answer-body p span{color:var(--text);font-weight:700}.answer-body .correct-line{color:#7fdba4}.answer-result{font-size:22px;text-align:center}.command-list{display:grid;gap:10px}.command-item{border-bottom:1px solid var(--line);padding:10px 0;display:grid;grid-template-columns:1fr auto;gap:6px}.command-item:last-child{border-bottom:0}.command-item small{display:block;color:var(--muted);margin-top:4px}.command-item p{grid-column:1/-1;margin:2px 0;color:#ef8b80}.command-pendente{background:rgba(241,196,15,.14);color:#f1c40f}.command-processando{background:rgba(52,152,219,.14);color:#8bc7f0}.command-concluido{background:rgba(46,204,113,.14);color:#72d99c}.command-erro{background:rgba(231,76,60,.15);color:#ef8b80}
@media(max-width:1000px){.allowlist-filters{grid-template-columns:1fr 1fr}.allowlist-actions{grid-template-columns:1fr}}@media(max-width:760px){.allowlist-filters{grid-template-columns:1fr}.data-list div{grid-template-columns:1fr}.answer-card{grid-template-columns:34px 1fr}.answer-result{grid-column:1/-1;text-align:left}}

/* Administração, conteúdo e detalhamento v3 */
.head-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.head-actions form{margin:0}.btn.compact{min-height:31px;padding:0 10px;font-size:11px}.content-preview{max-width:290px;white-space:normal;line-height:1.35;color:#c8ccd2}.muted{color:var(--muted)}.danger-panel{border-color:rgba(231,76,60,.48);box-shadow:0 18px 60px rgba(120,20,20,.12)}.danger-action-form{padding:16px 18px;display:grid;gap:10px}.danger-action-form label{font-weight:800}.danger-action-form textarea{width:100%;box-sizing:border-box;resize:vertical;min-height:82px;border:1px solid rgba(231,76,60,.35);background:var(--bg);color:var(--text);border-radius:9px;padding:11px;font:inherit}.padded-data-list{padding:5px 18px 12px}.question-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.question-head strong{flex:1}.answer-comparison{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.answer-choice{padding:10px;border:1px solid var(--line);border-radius:9px;background:#12151a}.answer-choice>span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px}.answer-choice>strong{font-size:12px;line-height:1.45;margin:0}.selected-choice{border-color:rgba(79,140,255,.25)}.correct-choice{border-color:rgba(46,204,113,.25)}.wl-status-whitelist_removida{background:rgba(231,76,60,.18);color:#ff9c93}.tickets-table{min-width:1180px}
@media(max-width:760px){.answer-comparison{grid-template-columns:1fr}.head-actions{width:100%}.head-actions>*{flex:1}.head-actions .btn{width:100%}}
.player-filters{grid-template-columns:2fr 1fr auto auto}.players-table{min-width:1250px}.small-mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;color:#c8ccd2}.wl-on{background:rgba(46,204,113,.14);color:#72d99c}.wl-off,.danger-badge{background:rgba(231,76,60,.15);color:#ef8b80}.admin-action-details{position:relative}.admin-action-details summary{list-style:none}.admin-action-details summary::-webkit-details-marker{display:none}.admin-action-details form{position:absolute;right:0;z-index:20;width:290px;padding:12px;margin-top:6px;border:1px solid rgba(231,76,60,.4);border-radius:10px;background:#15181d;box-shadow:var(--shadow);display:grid;gap:8px}.admin-action-details textarea{width:100%;resize:vertical;min-height:70px;border:1px solid var(--line);background:var(--bg);color:var(--text);border-radius:8px;padding:9px;font:inherit}
@media(max-width:760px){.player-filters{grid-template-columns:1fr}.admin-action-details form{position:static;width:100%}}

/* ==========================================================
   CRIADOR DE EMBEDS DISCORD
   ========================================================== */
.embed-builder-grid{display:grid;grid-template-columns:minmax(460px,1.05fr) minmax(390px,.95fr);gap:18px;align-items:start}.embed-form-panel,.embed-preview-panel{overflow:visible}.embed-form{padding:18px;display:grid;gap:15px}.embed-form label{display:grid;gap:7px;font-weight:700}.embed-form label>small{font-weight:400;color:var(--muted)}.embed-form input[type=text],.embed-form input[type=url],.embed-form textarea,.embed-form select{width:100%;box-sizing:border-box;border:1px solid var(--line);background:var(--bg);color:var(--text);border-radius:9px;padding:11px;font:inherit}.embed-form textarea{resize:vertical;min-height:150px;line-height:1.5}.embed-form select:disabled,.embed-form button:disabled{opacity:.45;cursor:not-allowed}.embed-two-fields{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:12px}.color-field{display:grid;grid-template-columns:48px 1fr;gap:8px}.color-field input[type=color]{width:48px;height:42px;padding:2px;border:1px solid var(--line);border-radius:8px;background:var(--bg);cursor:pointer}.toggle-row{grid-template-columns:auto 1fr!important;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.015);cursor:pointer}.toggle-row input{width:18px;height:18px}.toggle-row span{display:grid;gap:2px}.toggle-row small{color:var(--muted);font-weight:400}.embed-advanced{border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.012)}.embed-advanced summary{padding:12px 14px;cursor:pointer;font-weight:700}.embed-advanced-fields{padding:0 14px 14px;display:grid;gap:12px}.embed-submit-row{display:flex;gap:9px;flex-wrap:wrap}.discord-preview-wrap{padding:24px 18px;background:#313338;border-top:1px solid var(--line);min-height:320px}.discord-message-preview{display:flex;gap:12px;color:#dbdee1;font-family:Arial,Helvetica,sans-serif}.discord-bot-avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#b21e2b;color:white;font-size:11px;font-weight:900;flex:0 0 auto}.discord-message-content{min-width:0;flex:1}.discord-author-line{display:flex;align-items:center;gap:6px;height:22px}.discord-author-line strong{color:#f23f42;font-size:14px}.discord-author-line small{color:#949ba4;font-size:11px}.discord-app-badge{font-size:9px;background:#5865f2;color:white;border-radius:3px;padding:1px 3px;font-weight:800}.discord-embed-card{margin-top:4px;position:relative;display:grid;grid-template-columns:4px minmax(0,1fr);max-width:540px;background:#2b2d31;border-radius:4px;overflow:hidden;box-shadow:0 0 0 1px rgba(0,0,0,.08)}.discord-embed-accent{width:4px;background:#e53935}.discord-embed-inner{padding:12px 12px 11px;min-width:0}.preview-large-title{font-size:22px;line-height:1.22;font-weight:800;color:#f2f3f5;margin-bottom:8px;white-space:pre-wrap;overflow-wrap:anywhere}.preview-native-title{font-size:16px;line-height:1.25;font-weight:700;color:#f2f3f5;margin-bottom:8px;white-space:pre-wrap;overflow-wrap:anywhere}.preview-description{font-size:13px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere;color:#dbdee1}.preview-link{margin-top:9px;color:#00a8fc;font-size:13px;overflow-wrap:anywhere}.preview-footer{margin-top:12px;color:#b5bac1;font-size:10px;font-weight:600}.preview-image{display:block;max-width:100%;max-height:260px;border-radius:4px;margin-top:12px;object-fit:cover}.preview-thumbnail{position:absolute;right:12px;top:12px;width:72px;height:72px;object-fit:cover;border-radius:4px}.preview-note{padding:0 18px 14px;margin:0}@media(max-width:1100px){.embed-builder-grid{grid-template-columns:1fr}.embed-preview-panel{order:-1}}@media(max-width:760px){.embed-two-fields{grid-template-columns:1fr}.discord-preview-wrap{padding:16px 10px}.embed-submit-row>*{flex:1}}

/* ==========================================================
   LOGIN DUPLO + USUÁRIOS LOCAIS
   ========================================================== */
.login-card-wide{width:min(470px,calc(100vw - 32px));text-align:left}.login-card-wide>.brand-mark,.login-card-wide>h1,.login-card-wide>p{text-align:center}.local-login-form{display:grid;gap:13px}.local-login-form label{display:grid;gap:7px;font-weight:700}.local-login-form input{height:44px;background:#0d1014}.login-divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.12em}.login-divider:before,.login-divider:after{content:"";height:1px;background:var(--line);flex:1}.btn.discord{background:#5865f2;border-color:#5865f2}.btn.discord:hover{background:#4752c4;border-color:#4752c4}.login-help{display:block;color:var(--muted);text-align:center;margin-top:14px;line-height:1.45}.login-flashes{display:grid;gap:8px;margin-bottom:16px}.login-flashes .flash{position:static;margin:0}.web-user-create-form{padding:18px;display:grid;grid-template-columns:1fr 1.2fr 1fr 180px 1fr auto;gap:10px;align-items:end}.web-user-create-form label{display:grid;gap:6px;font-weight:700}.web-user-create-form label span small{color:var(--muted);font-weight:400}.web-users-table{min-width:1120px}.inline-admin-form{margin:0}.inline-admin-form select{min-width:145px}.compact-link-form{display:grid;grid-template-columns:minmax(150px,1fr) auto;gap:6px}.compact-link-form input{height:34px;min-width:160px}.web-user-actions{display:flex;gap:7px;align-items:center}.web-user-actions>form{margin:0}.web-user-actions .admin-action-details form{width:300px}.web-user-actions .admin-action-details input{height:38px}@media(max-width:1180px){.web-user-create-form{grid-template-columns:1fr 1fr 1fr}.web-user-create-form .btn{width:100%}}@media(max-width:760px){.web-user-create-form{grid-template-columns:1fr}.login-card-wide{padding:28px 22px}.web-user-actions{flex-wrap:wrap}}

/* Conta local criada automaticamente pelo Discord */
.account-password-panel{max-width:780px}.account-password-form{padding:20px;display:grid;gap:15px}.account-password-form label{display:grid;gap:7px;font-weight:700}.account-password-form label small{color:var(--muted);font-weight:400}.account-password-form input{height:44px}.account-identity-box{display:grid;gap:5px;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:#101419}.account-identity-box span{font-weight:700}.account-identity-box small{color:var(--muted)}.account-password-form>.btn{justify-self:start}.badge.pending{background:rgba(255,181,71,.12);color:#ffbd59;border-color:rgba(255,181,71,.25)}
