<?php
require_once __DIR__.'/../config/config.php';
require_once __DIR__.'/../config/database.php';
require_once __DIR__.'/../includes/functions.php';
requireLogin();
$uid=(int)$_SESSION['usuario_id'];
$resumo=afResumoIdade($pdo,$uid);
$erros=[];
if($_SERVER['REQUEST_METHOD']==='POST'){
    if(!validarCsrfToken($_POST[CSRF_TOKEN_NAME]??''))$erros[]='Sessão expirada. Recarregue a página.';
    if(empty($_POST['confirmar_idade']))$erros[]='Confirme que a data de nascimento informada é verdadeira.';
    if(!$erros){
        try{
            afRegistrarDeclaracaoIdade($pdo,$uid,(string)($_POST['data_nascimento']??''),sanitize($_POST['pais']??'Brasil')?:'Brasil',(string)($_POST['uso_conta']??'player'),'atualizacao_obrigatoria');
            recarregarSessaoUsuario($pdo,$uid);
            $novo=afResumoIdade($pdo,$uid);
            if(($novo['status']??'')==='adult_declared'){
                setFlash('success','Data de nascimento registrada. Confirme o e-mail para concluir a maioridade.');
                header('Location: '.SITE_URL.'/pages/verificar-maioridade.php');exit;
            }
            if(($novo['status']??'')==='guardian_declared'){
                setFlash('success','Maioridade declarada. Agora conclua a verificação interna do responsável.');
                header('Location: '.SITE_URL.'/pages/responsavel.php');exit;
            }
            setFlash('error','Conta protegida. Recursos sensíveis ficarão bloqueados até a autorização parental.');
            $dest=(string)($_SESSION['af_after_age']??'/pages/home.php');unset($_SESSION['af_after_age']);
            if(!str_starts_with($dest,'/')||str_starts_with($dest,'//')||str_contains($dest,'\\'))$dest='/pages/home.php';
            header('Location: '.SITE_URL.$dest);exit;
        }catch(Throwable $e){$erros[]=$e->getMessage();}
    }
}
$resumo=afResumoIdade($pdo,$uid);
$pageTitle='Confirmação de idade';$showNav=false;require_once __DIR__.'/../includes/header.php';
?>
<main class="age-gate-shell">
 <section class="age-gate-card fade-in">
  <div class="age-gate-logo">🛡️</div><p class="eyebrow">ETAPA 15 • PROTEÇÃO FAMILIAR</p><h1>CONFIRME SUA IDADE</h1>
  <?php if($resumo['completo']):?>
   <div class="age-status-panel age-status--<?=esc($resumo['status'])?>"><span><?=$resumo['pode_recursos_sensiveis']?'✓':'🔒'?></span><div><strong><?=esc($resumo['rotulo'])?></strong><p><?=esc($resumo['mensagem'])?></p></div></div>
   <div class="age-info-grid"><div><small>DATA INFORMADA</small><b><?=date('d/m/Y',strtotime((string)$resumo['data_nascimento']))?></b></div><div><small>CLASSIFICAÇÃO</small><b><?=esc($resumo['tipo_conta']==='guardian'?'Responsável':($resumo['tipo_conta']==='adult'?'Adulto':'Menor'))?></b></div><div><small>PAÍS</small><b><?=esc($resumo['pais_residencia'])?></b></div></div>
   <p class="age-lock-note">Para evitar alteração indevida de idade, esta informação não pode ser modificada diretamente. Uma correção deverá ser solicitada à equipe de segurança.</p>
   <?php if($resumo['tipo_conta']==='minor'):?><a class="btn btn-primary" href="<?=SITE_URL?>/pages/responsavel.php">👨‍👩‍👧 MEU RESPONSÁVEL</a><?php elseif($resumo['status']==='adult_declared'):?><a class="btn btn-primary" href="<?=SITE_URL?>/pages/verificar-maioridade.php">CONFIRMAR MAIORIDADE</a><?php elseif($resumo['tipo_conta']==='guardian'):?><a class="btn btn-primary" href="<?=SITE_URL?>/pages/painel-responsavel.php">🛡️ PAINEL DO RESPONSÁVEL</a><?php else:?><a class="btn btn-primary" href="<?=SITE_URL?>/pages/home.php">IR PARA O INÍCIO</a><?php endif?><a class="btn btn-secondary mt-12" href="<?=SITE_URL?>/auth/logout.php">SAIR DA CONTA</a>
  <?php else:?>
   <p class="age-gate-lead">Precisamos classificar a conta antes de liberar câmera, partidas, Battle, transmissões e compartilhamentos.</p>
   <?php if($erros):?><div class="flash flash--error"><span>✕</span><ul class="error-list"><?php foreach($erros as $e):?><li><?=esc($e)?></li><?php endforeach?></ul></div><?php endif?>
   <form method="post" class="age-gate-form"><?=camposCsrf()?>
    <label>Data de nascimento<div class="form-field"><span class="field-icon">📅</span><input class="form-input" type="date" name="data_nascimento" value="<?=esc($_POST['data_nascimento']??'')?>" max="<?=date('Y-m-d')?>" autocomplete="bday" required></div></label>
    <label>País de residência<div class="form-field"><span class="field-icon">🌎</span><input class="form-input" name="pais" value="<?=esc($_POST['pais']??'Brasil')?>" maxlength="80" autocomplete="country-name" required></div></label>
    <label>Como você usará o aplicativo?<div class="form-field"><span class="field-icon">👤</span><select class="form-input age-select" name="uso_conta"><option value="player">Como jogador</option><option value="guardian">Como responsável legal</option></select></div></label>
    <label class="age-declaration-check"><input type="checkbox" name="confirmar_idade" value="1" required><span>Confirmo que a data de nascimento é verdadeira. Entendo que contas de menores ficarão protegidas e não poderão utilizar câmera ou recursos sociais sensíveis sem autorização parental.</span></label>
    <button class="btn btn-primary" type="submit">CONFIRMAR IDADE</button>
   </form>
   <div class="age-protection-list"><div>🔒 <span><b>Menores ficam protegidos</b><small>Farm, câmera, Battle, transmissão e compartilhamento são bloqueados.</small></span></div><div>🧾 <span><b>Registro de segurança</b><small>A declaração, IP, dispositivo e horário são registrados para auditoria.</small></span></div><div>👨‍👩‍👧 <span><b>Autorização parental</b><small>Agora é possível enviar o convite e criar o vínculo inicial. A verificação e os consentimentos virão nas próximas etapas.</small></span></div></div>
  <?php endif;?>
 </section>
</main>
<?php require_once __DIR__.'/../includes/footer.php';?>
