.app-shell{max-width:1050px;margin:160px auto 50px;padding:24px}.dashboard nav{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.dashboard nav form{margin:0}progress{width:100%;accent-color:#fe0071}.phase-list{padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:24px 0}.phase-card,.activity-card{padding:20px;border:1px solid var(--wc-border);border-radius:18px;background:white}.phase-card button{font-size:1rem;text-align:left}.phase-card p{margin-top:8px}.activity-list{display:grid;gap:16px}.activity-card{display:flex;align-items:center;justify-content:space-between;gap:20px}.badges-row{display:flex;flex-wrap:wrap;gap:18px}.badges-row figure{width:120px;text-align:center;margin:0}.badges-row img{width:80px;margin:auto}dialog{width:min(720px,94vw);max-height:90vh;overflow:auto;border:1px solid var(--wc-border);border-radius:24px;padding:28px;color:var(--wc-text);box-shadow:var(--shadow-card)}dialog::backdrop{background:#34081da8}dialog p{white-space:pre-wrap}dialog fieldset{border:1px solid var(--wc-border);border-radius:12px;padding:16px;margin:16px 0}dialog legend{font-weight:600}dialog label{display:block;margin:10px 0}textarea,.auth-card input{width:100%;font:inherit;border:1px solid var(--wc-border);border-radius:10px;padding:12px}textarea{min-height:110px}input[type=radio],input[type=checkbox]{accent-color:#fe0071;margin-right:8px}iframe{width:100%;aspect-ratio:16/9;border:0;margin:15px 0}.errorlist,.form-error{color:#a00035}.auth-card{max-width:500px;background:#fff;margin:8vh auto;padding:36px;border-radius:24px;box-shadow:var(--shadow-card)}.brand-logo{width:170px;margin:0 0 28px}.auth-card .helptext{font-size:.8rem}.auth-card label{display:block}.auth-card input[type=hidden]{display:none}.auth-card .btn{margin:12px 0}.celebration{text-align:center;padding:30px;background:white;border-radius:24px;margin-top:24px}.celebration img{width:140px;margin:auto}#avatar-options{display:flex;gap:10px;flex-wrap:wrap}#avatar-options img{width:65px}#notice:not(:empty){padding:12px;background:#fff;border-radius:10px;margin-bottom:16px}.map-node__info{white-space:normal;width:140px}.map-node__btn{min-height:32px}.resource-link{display:inline-block;margin:12px 0}.activity-complete{color:#08764f;font-weight:bold}button:disabled{opacity:.65;cursor:wait}:focus-visible{outline:3px solid #a00054;outline-offset:4px}@media(max-width:650px){.app-shell{margin-top:220px;padding:14px}.phase-list{grid-template-columns:1fr}.dashboard{gap:8px;padding:12px}.dashboard__progress{min-width:120px}.dashboard nav{font-size:.8rem}.activity-card{align-items:stretch;flex-direction:column}.auth-card{margin:20px 12px;padding:24px}.map-node__info{display:none}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important}}
/* O cabeçalho participa do fluxo; o conteúdo fica logo abaixo dele. */
.app-shell{margin:24px auto 50px}.dashboard__player p{font-size:.8rem;margin:0}.dashboard__progress p{font-size:.8rem;margin:0}
@media(max-width:900px){.dashboard nav{grid-area:actions;max-width:220px;justify-content:flex-end}.dashboard__stats{justify-content:center}}
@media(max-width:650px){.app-shell{margin-top:16px}.dashboard{position:relative}.dashboard nav{gap:6px;max-width:170px}}
.map-player{position:absolute;width:6%;aspect-ratio:1;border:3px solid white;border-radius:50%;background:#ffdeef;box-shadow:0 0 0 2px #fe0071,0 4px 10px #34081d55;z-index:3;pointer-events:none;transition:top .5s,left .5s}.certificate{margin:24px auto;padding:32px;border:3px double #fe0071;border-radius:12px;max-width:680px;background:#fffafc}.certificate h3{font-size:1.7rem;margin:24px 0}.confetti-layer{position:fixed;inset:0;pointer-events:none;z-index:100;overflow:hidden}.confetti-layer i{position:absolute;top:-20px;width:9px;height:16px;animation:celebrate-fall 1.9s ease-in forwards}@keyframes celebrate-fall{to{transform:translateY(110vh) rotate(600deg)}}
@media print{body{background:#fff}body>*:not(main){display:none!important}main.app-shell{margin:0;padding:0;max-width:none}main>*:not(#celebration){display:none!important}#celebration{padding:0;margin:0}#celebration>*:not(#certificate){display:none!important}#certificate{display:block!important;max-width:none;padding:60px 35px;break-inside:avoid;border-color:#9b0047}dialog,.confetti-layer{display:none!important}}
