:root{--bg:#05070b;--panel:#0b1019;--line:#263245;--text:#f4f7fb;--muted:#9ba8ba;--gold:#d9ad43;--gold2:#f3d77d;--blue:#3b82f6;--green:#22c55e;--red:#ef4444}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 50% -20%,#16233a,#05070b 55%);color:var(--text);font-family:Inter,system-ui,Arial,sans-serif;min-height:100vh}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.portal-nav{position:sticky;top:0;z-index:50;background:rgba(4,6,10,.9);backdrop-filter:blur(16px);border-bottom:1px solid #ffffff12}.portal-nav-in{max-width:1240px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 20px}.portal-brand img{width:125px;max-height:52px;object-fit:contain}.portal-links{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.portal-links a,.portal-links button{padding:9px 12px;border:1px solid #ffffff16;border-radius:9px;background:#ffffff07;color:#dfe7f3;font-weight:800;font-size:12px;cursor:pointer}.portal-links a.gold,.portal-links button.gold{border-color:#d9ad434d;background:#d9ad4314;color:#f3d77d}.page{max-width:1240px;margin:auto;padding:38px 20px 70px}.hero-small{padding:35px;border:1px solid var(--line);background:linear-gradient(145deg,#0d1520,#070b11);border-radius:24px;box-shadow:0 20px 60px #0006}.hero-small h1{font-size:clamp(32px,5vw,56px);margin:8px 0}.eyebrow{color:var(--gold2);font-size:11px;font-weight:900;letter-spacing:3px;text-transform:uppercase}.muted{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.card{background:linear-gradient(145deg,#0d141f,#080c13);border:1px solid var(--line);border-radius:18px;padding:20px}.stat b{display:block;color:var(--gold2);font-size:32px;margin-bottom:4px}.stat span{color:var(--muted);font-size:12px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:12px;color:#cfd8e6;font-weight:800}.field input,.field select,.field textarea{width:100%;padding:12px 13px;border:1px solid #334155;border-radius:10px;background:#07101a;color:#fff;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:#d9ad43aa;box-shadow:0 0 0 3px #d9ad4315}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:12px 16px;border-radius:10px;border:1px solid #ffffff1c;background:#ffffff09;color:#fff;font-weight:900;cursor:pointer}.btn.gold{background:var(--gold);border-color:var(--gold);color:#080a0e}.btn.danger{background:#3b1114;border-color:#72252b;color:#ffc7cb}.btn.blue{background:#11315d;border-color:#255eaa}.note{padding:12px 14px;border-left:3px solid var(--gold);background:#d9ad4310;color:#cad4e1;border-radius:8px;font-size:13px}.split{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}.badge-card{max-width:360px;margin:auto;border-radius:22px;overflow:hidden;border:1px solid #ffffff18;background:linear-gradient(145deg,#08111d,#05070b);box-shadow:0 24px 60px #0008}.badge-top{padding:18px;text-align:center;border-bottom:1px solid #ffffff14}.badge-top img{width:170px;max-height:80px;object-fit:contain}.badge-main{padding:18px}.pilot-photo{width:116px;height:116px;object-fit:cover;border-radius:16px;border:2px solid #d9ad4366;background:#111;margin-bottom:12px}.badge-name{font-size:22px;font-weight:900}.badge-call{color:var(--gold2);font-weight:900;letter-spacing:1px}.badge-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.meta-box{padding:10px;border:1px solid #ffffff12;border-radius:10px;background:#ffffff05}.meta-box small{display:block;color:var(--muted);font-size:10px}.meta-box b{font-size:12px}.badge-rank{display:flex;align-items:center;gap:10px;margin-top:14px;padding:10px;border-radius:10px;background:#0a1220;border:1px solid #ffffff12}.badge-rank img{width:42px;height:42px;object-fit:contain;background:#111;border-radius:8px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}.table{width:100%;border-collapse:collapse;min-width:780px}.table th,.table td{padding:11px 12px;border-bottom:1px solid #ffffff10;text-align:left}.table th{font-size:11px;color:#a9bdd5;background:#09121e}.table td{font-size:12px}.status{display:inline-flex;padding:5px 8px;border-radius:999px;font-weight:900;font-size:10px}.status.pending{background:#3c2a08;color:#f3d77d}.status.approved{background:#0e321d;color:#8bf0a7}.status.rejected{background:#3a1114;color:#ff9ea5}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.rank-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.rank-option{border:1px solid #ffffff14;background:#ffffff04;border-radius:12px;padding:12px;cursor:pointer}.rank-option.active{border-color:#d9ad4377;background:#d9ad4310}.rank-option img{width:52px;height:52px;object-fit:contain;background:#111;border-radius:8px;display:block;margin-bottom:7px}.small{font-size:11px;color:var(--muted)}#nova-toast{position:fixed;right:18px;bottom:18px;z-index:1000;padding:12px 15px;border-radius:11px;background:#0d1520;border:1px solid #ffffff18;box-shadow:0 12px 35px #0008;opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s}.show{opacity:1!important;transform:translateY(0)!important}#nova-toast[data-type=success]{border-color:#2c8c50;color:#baf2c8}#nova-toast[data-type=error]{border-color:#91313a;color:#ffb4ba}
@media(max-width:900px){.grid{grid-template-columns:1fr 1fr}.split,.admin-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.portal-links a.hide-small{display:none}}
@media(max-width:560px){.page{padding:25px 14px 50px}.grid{grid-template-columns:1fr}.hero-small{padding:23px}.portal-nav-in{padding:11px 13px}.portal-brand img{width:104px}.portal-links{gap:5px}.portal-links a,.portal-links button{padding:8px 9px}.rank-grid{grid-template-columns:1fr 1fr}}
.d-none{display:none!important}
/* Recarregável: o crachá sempre pode ser atualizado sem sair da página. */
.badge-rank{flex-wrap:wrap}.badge-rank .btn{margin-left:auto;padding:8px 10px;font-size:11px}


/* Novo crachá vertical Nova — V16 */
.pilot-dashboard{align-items:start;grid-template-columns:minmax(320px, .86fr) minmax(0, 1.14fr);gap:24px}
.pilot-dashboard .badge-card{width:min(100%,450px);max-width:450px;margin:0 auto;padding:10px;border:1px solid #d9ad4333;border-radius:22px;background:linear-gradient(145deg,#0d1520,#05070b);box-shadow:0 24px 70px #0009;overflow:visible}
.pilot-id-badge{position:relative;width:100%;aspect-ratio:2/3;overflow:hidden;border-radius:15px;background:#050a12;isolation:isolate;container-type:inline-size}
.badge-template{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;user-select:none;pointer-events:none}
.badge-logo-wrap{z-index:1;position:absolute;top:2.8%;left:24%;width:52%;height:16%;display:flex;align-items:center;justify-content:center;overflow:hidden}
.badge-logo{display:block;max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 2px 5px #0009)}
.badge-photo-frame{z-index:1;position:absolute;left:8.25%;top:21.15%;width:42.1%;height:33.35%;padding:1%;border:1px solid #edb94c;border-radius:5.8%;background:linear-gradient(140deg,#101a28,#030609);box-shadow:0 0 8px #d9ad4355;overflow:hidden}
.pilot-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 30%;border:0;border-radius:4.5%;background:#07101a;margin:0}
.pilot-photo[hidden]{display:none!important}
.pilot-photo-empty{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#c9a14b;text-align:center;background:linear-gradient(145deg,#101925,#04070c);border-radius:4%;padding:10px}
.pilot-photo-empty span{font-size:clamp(24px,6cqw,38px);line-height:1}
.pilot-photo-empty b{font-size:clamp(8px,2.6cqw,12px);letter-spacing:.12em}
.pilot-photo-empty small{font-size:clamp(7px,2cqw,9px);line-height:1.35;color:#b4bdcc;max-width:90%}
.badge-info{z-index:1;position:absolute;left:7.4%;width:56.8%;display:flex;align-items:center;overflow:hidden;color:#f6f8fb;padding:1.5% 2.4%;font-size:clamp(9px,2.5cqw,13px);line-height:1.1}
.badge-info-primary{top:56.35%;height:7.45%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px}
.badge-name{font-size:clamp(10px,3.35cqw,17px);font-weight:950;text-transform:uppercase;letter-spacing:.015em;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis;color:#fff;text-shadow:0 1px 4px #000}
.badge-call{font-size:clamp(9px,2.5cqw,12px);font-weight:950;letter-spacing:.08em;color:#ffbd3e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.badge-info-secondary{top:65.55%;height:7.15%;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:5%;}
.badge-info-tertiary{top:74.05%;height:7.15%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5%;}
.badge-data{min-width:0;overflow:hidden;display:flex;flex-direction:column;justify-content:center;gap:3px}
.badge-data small{display:block;font-size:clamp(6px,1.5cqw,8px);font-weight:850;color:#c6d0de;text-transform:uppercase;letter-spacing:.07em;white-space:nowrap}
.badge-data b{display:block;max-width:100%;font-size:clamp(7px,1.9cqw,10px);font-weight:900;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#pilot-status{text-transform:uppercase;color:#ffd567}
.badge-qr-frame{z-index:1;position:absolute;left:66.7%;top:61.1%;width:26.2%;aspect-ratio:1;background:#fff;border:2px solid #f1cf77;border-radius:3px;padding:2.6%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 9px #0009;overflow:hidden}
#pilot-qr-canvas{display:block;width:100%!important;height:100%!important;max-width:100%;max-height:100%;image-rendering:pixelated}
.badge-rank-icon{z-index:1;position:absolute;left:8.1%;top:86.2%;width:10.5%;height:7.2%;display:flex;align-items:center;justify-content:center;overflow:hidden}
.badge-rank-icon img{width:100%;height:100%;object-fit:contain;display:block;background:transparent;border:0;border-radius:0;filter:drop-shadow(0 1px 2px #0005)}
.badge-footer-copy{z-index:1;position:absolute;left:20%;right:6%;top:86.2%;height:7.1%;display:flex;flex-direction:column;justify-content:center;gap:3px;color:#080a0c;overflow:hidden}
.badge-footer-copy strong{font-size:clamp(12px,3.6cqw,18px);font-weight:1000;line-height:1;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;text-transform:uppercase}
.badge-footer-copy span{font-size:clamp(7px,2.1cqw,10px);font-weight:950;letter-spacing:.08em;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase}
.photo-controls{margin-top:14px;padding:14px;border:1px solid #d9ad4330;border-radius:14px;background:#07101a}
.photo-controls>label{display:block;font-size:12px;font-weight:900;color:#f3d77d;margin-bottom:8px}
.photo-controls input[type=file]{display:block;width:100%;font-size:12px;color:#cbd5e1;margin-bottom:10px;padding:9px;border:1px solid #334155;border-radius:9px;background:#0a1320}
.photo-control-row{display:flex;gap:8px;flex-wrap:wrap}
.photo-control-row .btn{padding:10px 12px;font-size:11px}
.photo-controls .small{display:block;line-height:1.5;margin-top:9px;color:#aab7c8}
.pilot-side-content{min-width:0}
.pilot-side-content .grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.pilot-side-content .stat{padding:16px 13px}
.pilot-side-content .stat b{font-size:clamp(20px,2.5vw,30px)}
.pilot-side-content .card h3{margin-top:0}
@media(max-width:1050px){.pilot-dashboard{grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);gap:16px}.pilot-side-content .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.pilot-dashboard{grid-template-columns:1fr}.pilot-dashboard .badge-card{width:min(100%,450px)}.pilot-side-content .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.pilot-dashboard .badge-card{padding:7px;border-radius:17px}.photo-control-row{display:grid;grid-template-columns:1fr}.photo-control-row .btn{width:100%}.pilot-side-content .grid{grid-template-columns:repeat(2,minmax(0,1fr))}.badge-info{font-size:clamp(8px,2.7cqw,11px)}}


/* V16.1 — usa exatamente a arte enviada pelo usuário; apenas foto, identificação e QR são dinâmicos. */
.pilot-dashboard .badge-card{width:min(100%,520px);max-width:520px}
.pilot-id-badge.nova-poster-badge{position:relative;width:100%;aspect-ratio:1077 / 1024;overflow:hidden;border-radius:0;background:#05070b;isolation:isolate;container-type:inline-size}
.nova-poster-badge .badge-template{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;z-index:0;display:block}
.nova-poster-badge .badge-photo-frame{z-index:2;position:absolute;left:40.48%;top:43.65%;width:17.92%;height:21.1%;padding:0;border:1px solid #d9a844;border-radius:2%;background:#03070b;box-shadow:0 0 3px #f7c65a66;overflow:hidden}
.nova-poster-badge .pilot-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 30%;border:0;border-radius:0;margin:0;background:#03070b}
.nova-poster-badge .pilot-photo[hidden],.nova-poster-badge .pilot-photo-empty[hidden]{display:none!important}
.nova-poster-badge .pilot-photo-empty{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:3px;color:#f0bd4e;text-align:center;background:linear-gradient(145deg,#101925,#04070c);border-radius:0}
.nova-poster-badge .pilot-photo-empty span{font-size:clamp(12px,4.2cqw,22px);line-height:1}
.nova-poster-badge .pilot-photo-empty b{font-size:clamp(5px,1.55cqw,8px);letter-spacing:.08em}
.nova-poster-badge .pilot-photo-empty small{font-size:clamp(4px,1.1cqw,6px);line-height:1.2;color:#b4bdcc;max-width:96%}
.nova-poster-badge .badge-dynamic-name-mask{z-index:2;position:absolute;left:40.45%;top:65.72%;width:26.45%;height:7.65%;background:rgba(0,5,10,.99);pointer-events:none}
.nova-poster-badge .badge-poster-name{z-index:3;position:absolute;left:41.55%;top:66.05%;width:23.3%;height:3.2%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#f8f8f8;font-size:clamp(7px,2.55cqw,14px);font-weight:950;line-height:1.05;text-transform:uppercase;letter-spacing:.01em;text-shadow:0 1px 3px #000}
.nova-poster-badge .badge-poster-role{z-index:3;position:absolute;left:41.55%;top:69.55%;width:23.1%;height:3.4%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#ffb629;font-size:clamp(7px,2.45cqw,13px);font-weight:950;line-height:1.05;text-transform:uppercase;letter-spacing:.01em;text-shadow:0 1px 3px #000}
.nova-poster-badge .badge-code-mask{z-index:2;position:absolute;left:46.35%;top:73.65%;width:13.7%;height:2.6%;background:rgba(2,7,12,.995);pointer-events:none}
.nova-poster-badge .badge-poster-code{z-index:3;position:absolute;left:46.75%;top:73.85%;width:13.1%;height:2.7%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#fff;font-size:clamp(6px,1.95cqw,10px);font-weight:950;line-height:1.0}
.nova-poster-badge .badge-qr-frame{z-index:3;position:absolute;left:65.65%;top:72.55%;width:9.85%;aspect-ratio:1;background:#fff;border:0;border-radius:0;padding:0;display:flex;align-items:center;justify-content:center;box-shadow:none;overflow:hidden}
.nova-poster-badge #pilot-qr-canvas{display:block;width:100%!important;height:100%!important;max-width:100%;max-height:100%;image-rendering:pixelated}
.nova-poster-badge .badge-footer-mask{z-index:2;position:absolute;left:55.15%;top:85.95%;width:18.8%;height:4.25%;background:linear-gradient(90deg,#f7b52d 0%,#ffca4d 48%,#f8b631 100%);pointer-events:none}
.nova-poster-badge .badge-footer-dynamic{z-index:3;position:absolute;left:56%;top:86.3%;width:17.3%;height:3.25%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#050608;font-size:clamp(8px,3.05cqw,16px);font-weight:1000;line-height:1;text-transform:uppercase;letter-spacing:.01em}
.nova-poster-badge .badge-hidden-data{display:none!important}
@media(max-width:560px){.pilot-id-badge.nova-poster-badge{width:100%}.nova-poster-badge .badge-poster-name{font-size:clamp(6px,2.6cqw,11px)}.nova-poster-badge .badge-poster-role{font-size:clamp(6px,2.5cqw,11px)}.nova-poster-badge .badge-poster-code{font-size:clamp(5px,2.1cqw,9px)}.nova-poster-badge .badge-footer-dynamic{font-size:clamp(7px,3.1cqw,13px)}}

/* Administração/RH — feedback de candidaturas, compatível com a identidade Nova. */
.section-admin-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:12px}.section-admin-heading h2{margin-bottom:5px}.section-admin-heading p{margin:0}.admin-alert{margin:10px 0 14px;padding:11px 13px;border:1px solid #334155;background:#07101a;color:#cbd5e1;border-radius:10px;font-size:13px;font-weight:700;line-height:1.5}.admin-alert[data-type="warning"]{border-color:#e9cf82;background:#fff8e4;color:#72530d}.admin-alert[data-type="error"]{border-color:#9d333e;background:#fff0f1;color:#9c2d35}.admin-alert[data-type="success"]{border-color:#347a4b;background:#eef9f2;color:#21694c}.candidate-detail{display:block;margin-top:5px;color:#9ba8ba;font-size:10px;line-height:1.55;overflow-wrap:anywhere}.table-actions{display:flex;gap:6px;flex-wrap:wrap;min-width:180px}.table-actions .btn{padding:8px 10px;font-size:11px;white-space:nowrap}.feedback-backdrop[hidden]{display:none!important}.feedback-backdrop{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#02050bd9;backdrop-filter:blur(7px);padding:18px}.feedback-modal{width:min(800px,100%);max-height:min(92vh,920px);overflow:auto;border:1px solid #344155;border-radius:20px;background:linear-gradient(145deg,#101925,#070b12);box-shadow:0 25px 90px #000b;color:#f4f7fb}.feedback-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px 24px;border-bottom:1px solid #ffffff12}.feedback-modal-head h2{font-size:24px;margin:6px 0}.feedback-modal-head p{margin:0;color:#9ba8ba;font-size:13px}.feedback-close{flex:0 0 38px;width:38px;height:38px;border:1px solid #ffffff19;border-radius:10px;background:#ffffff08;color:#fff;font-size:24px;cursor:pointer}.feedback-modal-body{padding:22px 24px}.feedback-recipient-summary{display:flex;flex-direction:column;gap:5px;margin-bottom:20px;padding:13px 15px;border:1px solid #d9ad4340;background:#d9ad430b;border-radius:12px}.feedback-recipient-summary strong{font-size:15px}.feedback-recipient-summary span{color:#9ba8ba;font-size:12px;overflow-wrap:anywhere}.feedback-recipient-summary b{color:#e7c66c}.feedback-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.feedback-form-grid .field.full{grid-column:1/-1}.feedback-form-grid textarea{min-height:180px;resize:vertical;line-height:1.6}.feedback-form-grid input[readonly]{opacity:.85}.feedback-modal-foot{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap;padding:17px 24px;border-top:1px solid #ffffff12}.feedback-modal-foot .btn{font-size:12px}.feedback-modal .note{margin-top:16px;line-height:1.55}.feedback-modal .note[data-type="error"]{border-left-color:#e35b65;background:#8c1f2a22;color:#ffc7cb}.feedback-modal .note[data-type="success"]{border-left-color:#38b66b;background:#16784722;color:#b9f4ce}.approval-only[hidden]{display:none!important}
@media(max-width:700px){.feedback-modal-head,.feedback-modal-body{padding:18px}.feedback-modal-foot{padding:14px 18px}.feedback-form-grid{grid-template-columns:1fr}.feedback-form-grid .field.full{grid-column:auto}.feedback-modal-foot .btn{flex:1}.section-admin-heading .btn{width:100%}.table-actions{min-width:160px}}


/* V43 — conserva a imagem premium original e sobrepõe apenas os dados que pertencem ao piloto conectado. */
.pilot-dashboard .badge-card{width:min(100%,520px);max-width:520px;margin:0 auto;padding:10px;border:1px solid #d9ad4340;border-radius:18px;background:linear-gradient(145deg,#0d1520,#05070b);box-shadow:0 24px 70px #0009;overflow:visible}
.pilot-id-badge.nova-poster-badge{position:relative;width:100%;aspect-ratio:1/1;overflow:hidden;border-radius:10px;background:#05070b;isolation:isolate;container-type:inline-size}
.nova-poster-badge .badge-template{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;z-index:0;display:block;user-select:none;pointer-events:none}
.nova-poster-badge .badge-photo-frame{z-index:2;position:absolute;left:40.95%;top:42.15%;width:18.45%;height:20.55%;padding:0;border:1px solid #d9a844;border-radius:2%;background:#03070b;box-shadow:0 0 3px #f7c65a66;overflow:hidden}
.nova-poster-badge .pilot-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 30%;border:0;border-radius:0;margin:0;background:#03070b}
.nova-poster-badge .pilot-photo[hidden],.nova-poster-badge .pilot-photo-empty[hidden]{display:none!important}
.nova-poster-badge .pilot-photo-empty{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:3px;color:#f0bd4e;text-align:center;background:linear-gradient(145deg,#101925,#04070c);border-radius:0}
.nova-poster-badge .pilot-photo-empty span{font-size:clamp(12px,4.2cqw,22px);line-height:1}
.nova-poster-badge .pilot-photo-empty b{font-size:clamp(5px,1.55cqw,8px);letter-spacing:.08em}
.nova-poster-badge .pilot-photo-empty small{font-size:clamp(4px,1.1cqw,6px);line-height:1.2;color:#b4bdcc;max-width:96%}
.nova-poster-badge .badge-dynamic-name-mask{z-index:2;position:absolute;left:40.4%;top:63.45%;width:25.8%;height:8.05%;background:linear-gradient(90deg,rgba(2,6,12,.99) 0%,rgba(2,6,12,.97) 75%,rgba(2,6,12,.2) 100%);pointer-events:none}
.nova-poster-badge .badge-poster-name{z-index:3;position:absolute;left:41.9%;top:64.25%;width:23.1%;height:3.1%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#f8f8f8;font-size:clamp(7px,2.35cqw,13px);font-weight:950;line-height:1.05;text-transform:uppercase;letter-spacing:.01em;text-shadow:0 1px 3px #000}
.nova-poster-badge .badge-poster-role{z-index:3;position:absolute;left:41.9%;top:67.55%;width:23.2%;height:3.1%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#ffb629;font-size:clamp(6px,2.15cqw,12px);font-weight:950;line-height:1.05;text-transform:uppercase;letter-spacing:.01em;text-shadow:0 1px 3px #000}
.nova-poster-badge .badge-code-mask{z-index:2;position:absolute;left:46.3%;top:71.55%;width:13.3%;height:2.6%;background:rgba(2,7,12,.995);pointer-events:none}
.nova-poster-badge .badge-poster-code{z-index:3;position:absolute;left:47%;top:71.7%;width:12.5%;height:2.4%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#fff;font-size:clamp(6px,1.9cqw,10px);font-weight:950;line-height:1.0}
.nova-poster-badge .badge-qr-frame{z-index:3;position:absolute;left:66.5%;top:70.15%;width:10.3%;aspect-ratio:1;background:#fff;border:0;border-radius:0;padding:0;display:flex;align-items:center;justify-content:center;box-shadow:none;overflow:hidden}
.nova-poster-badge #pilot-qr-canvas{display:block;width:100%!important;height:100%!important;max-width:100%;max-height:100%;image-rendering:pixelated}
.nova-poster-badge .badge-rank-mask{z-index:2;position:absolute;left:39.9%;top:82.25%;width:21%;height:8.2%;background:#02050a;border-radius:3px;pointer-events:none}
.nova-poster-badge .badge-rank-overlay{z-index:3;position:absolute;left:40.15%;top:83.0%;width:20.5%;height:6.7%;object-fit:contain;display:block;border:0;border-radius:0;background:#02050a;filter:drop-shadow(0 1px 2px #0005)}
.nova-poster-badge .badge-footer-mask{z-index:2;position:absolute;left:62.25%;top:83.05%;width:16.4%;height:4.15%;background:linear-gradient(90deg,#f7b52d 0%,#ffca4d 48%,#f8b631 100%);pointer-events:none}
.nova-poster-badge .badge-footer-dynamic{z-index:3;position:absolute;left:63%;top:83.7%;width:15.3%;height:3.0%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#050608;font-size:clamp(6px,2.4cqw,12px);font-weight:1000;line-height:1;text-transform:uppercase;letter-spacing:.01em}
.nova-poster-badge .badge-hidden-data{display:none!important}
.pilot-identity-panel{margin-top:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px;border:1px solid #d9ad4330;border-radius:12px;background:#07101a}
.pilot-identity-panel>div{min-width:0;display:flex;flex-direction:column;gap:4px;padding:8px;border:1px solid #ffffff10;border-radius:8px;background:#ffffff04}
.pilot-identity-panel small{font-size:9px;color:#9fb0c5;font-weight:900;letter-spacing:.08em}
.pilot-identity-panel strong{font-size:11px;color:#fff;overflow-wrap:anywhere;line-height:1.3}
@media(max-width:560px){.pilot-dashboard .badge-card{padding:7px}.nova-poster-badge .badge-poster-name{font-size:clamp(6px,2.45cqw,11px)}.nova-poster-badge .badge-poster-role{font-size:clamp(5px,2.25cqw,10px)}.nova-poster-badge .badge-poster-code{font-size:clamp(5px,2cqw,9px)}.nova-poster-badge .badge-footer-dynamic{font-size:clamp(6px,2.9cqw,12px)}.pilot-identity-panel{gap:6px;padding:8px}}


/* V46 — substitui a caixa do QR pela insígnia dourada Nova, mantendo o espaço de identificação. */
.nova-poster-badge .badge-distinctive-frame{z-index:3;position:absolute;left:62.6%;top:69.55%;width:18.2%;height:11.15%;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#03070c;border:1px solid #b98b29;border-radius:4px;box-shadow:0 1px 5px #000b}
.nova-poster-badge .badge-distinctive-frame img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:transparent;filter:drop-shadow(0 1px 2px #0008)}
@media(max-width:560px){.nova-poster-badge .badge-distinctive-frame{border-radius:3px;border-width:1px}}
