@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Raleway:wght@600&display=swap');
:root{font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.6;color:#202a43;background:#f5f6fc;color-scheme:light;--blue:#3e55d9;--muted:#505c74;--line:#dce1ef}
*{box-sizing:border-box}body{margin:0} [hidden],.ui-inactive{display:none!important}a{color:var(--blue);text-underline-offset:4px}a,button,summary{font-weight:600}button,input,textarea,select{font:inherit}button,.button{font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 18px;border:1px solid transparent;border-radius:10px;background:var(--blue);color:white;text-align:center;text-decoration:none;cursor:pointer;touch-action:manipulation;white-space:normal}button.secondary,.button.secondary{background:#fff;color:var(--blue);border-color:#a8b3df}button:disabled{opacity:.6;cursor:wait}button:hover:not(:disabled),.button:hover{filter:brightness(.95)}button.text-button{background:transparent;color:var(--blue);padding:8px;font-size:14px}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex="0"]:focus-visible{outline:3px solid #172987;outline-offset:4px}
h1,h2,h3,h4,.brand{font-family:Raleway,Arial,sans-serif;font-weight:600;line-height:1.25;letter-spacing:-.02em}h1{font-size:clamp(28px,4vw,38px);margin:12px 0}h2{font-size:25px;margin:0 0 16px}h3{font-size:20px;margin:24px 0 12px}p{margin:0 0 16px;overflow-wrap:anywhere}p:last-child{margin-bottom:0}.muted,dt{color:var(--muted)}.small{font-size:14px}.brand{font-size:26px;text-decoration:none;color:#202a43}.brand span{color:var(--blue)}.shell,body>main{max-width:1200px;margin:auto;padding:0 24px 40px}main{min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:20px 0;border-bottom:1px solid var(--line);margin-bottom:24px}.topbar nav{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.topbar nav a{display:inline-flex;align-items:center;min-height:44px}.tag{display:inline-block;background:#fff6cd;color:#594710;padding:5px 11px;border-radius:6px;font-size:13px}.intro{padding:8px 0 24px}.intro>p:not(.notice){max-width:72ch;color:var(--muted)}section{background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px;margin:0 0 20px;min-width:0}.intro{background:transparent;border:0;border-radius:0;margin-bottom:0}.notice,.status{padding:14px 16px;border-left:4px solid var(--blue);background:#edf0ff;border-radius:0 10px 10px 0;overflow-wrap:anywhere;margin:16px 0}.notice:empty{display:none}.notice.error,.status.error{background:#fff0ed;border-color:#a22b25;color:#92221c}.error{color:#92221c}.skip-link{position:absolute;top:-100px;left:16px;z-index:30;background:#fff;padding:16px}.skip-link:focus{top:8px}
label{display:block;margin:16px 0 8px}input,select,textarea{display:block;width:100%;max-width:100%;min-height:50px;padding:12px;margin-top:6px;border:1px solid #8c99b4;background:white;color:#202a43;border-radius:9px}input[type=file]{padding:9px;font-size:14px}input::file-selector-button{font:inherit;font-weight:600;padding:8px;border:0;border-radius:4px;margin-right:8px;color:var(--blue);background:#edf0ff}textarea{min-height:100px;resize:vertical}label.checkbox{display:flex;align-items:flex-start;gap:12px}label.checkbox input{flex-shrink:0;width:24px;min-height:24px;height:24px;accent-color:var(--blue)}form:not(.search){max-width:720px}.password-field{display:flex;gap:8px;align-items:center}.password-field input{min-width:0;flex:1}.password-field button{flex:0 0 95px}.actions,.search{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:20px 0}.search{align-items:end}.search label{flex:1 1 180px;margin:0}.search button{margin:0}.access-card,#guest{max-width:560px;margin:0 auto 24px}.access-page{max-width:560px;margin:32px auto;padding:28px;background:white;border:1px solid var(--line);border-radius:18px}.access-page .brand{display:block;margin-bottom:28px}.access-page button[type=submit],#guest button[type=submit]{width:100%;margin:18px 0 8px}.access-page h1{font-size:30px}.access-page .notice{margin:24px 0}
.workspace{display:grid;grid-template-columns:230px minmax(0,1fr);gap:24px;align-items:start}.workspace-menu{position:sticky;top:16px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px}.workspace-menu nav{display:grid;gap:4px}.workspace-menu a{display:block;padding:11px 12px;border-radius:8px;color:var(--muted);text-decoration:none;font-size:15px}.workspace-menu a[aria-current=page]{background:#edf0ff;color:#273fae;box-shadow:inset 3px 0 var(--blue)}.menu-group{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:16px 12px 4px}.menu-group:first-child{margin-top:4px}.mobile-menu{display:none}.workspace-content{min-width:0}.workspace-content>section{scroll-margin-top:100px}.back-link{display:inline-block;min-height:44px;margin-bottom:12px}.task-grid,.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr));gap:14px;margin:20px 0}.task-card{display:block;padding:20px;border:1px solid var(--line);border-radius:12px;text-decoration:none;background:#fff;color:#202a43}.task-card.primary{background:var(--blue);border-color:var(--blue);color:#fff}.task-card strong{display:block;font:600 21px Raleway,Arial,sans-serif;line-height:1.3;margin-bottom:8px}.task-card span{font-size:15px}.stat{border:1px solid var(--line);border-top:3px solid #27af4b;border-radius:12px;padding:18px;background:#f9faff;min-width:0}.stat strong{display:block;font:600 30px Raleway,Arial,sans-serif;color:var(--blue);overflow-wrap:anywhere;margin-bottom:8px}.stat span{color:var(--muted);font-size:14px}.state{display:inline-block;font-size:14px;font-weight:600;border-radius:6px;padding:4px 8px;background:#fff6cd;color:#594710;margin:8px 0}.state.success{background:#eaf7ed;color:#166b36}.record-list{list-style:none;padding:0;margin:18px 0}.record-list>li{padding:20px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.record-list>li:first-child{padding-top:0}.record-list p{margin-bottom:8px}.record-heading{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}.record-heading h3{margin:0;font-size:19px}.audit-entry{border-top:1px solid var(--line);padding:14px 0}dl{display:grid;grid-template-columns:minmax(140px,35%) minmax(0,1fr);gap:10px 16px;margin:18px 0}dd{margin:0;overflow-wrap:anywhere}dt{overflow-wrap:anywhere}.key{font-family:ui-monospace,Consolas,monospace;overflow-wrap:anywhere}summary{color:var(--blue);cursor:pointer;min-height:48px;padding:12px 0}details{margin:14px 0}.camera-box,.viewer{aspect-ratio:4/3;max-width:480px;background:#202a43;color:white;border-radius:14px;overflow:hidden;display:grid;place-items:center;text-align:center;padding:0;margin:20px 0}.camera-box span,.placeholder{padding:20px}.camera-box video,.viewer video{width:100%;height:100%;object-fit:cover}#qr-preview,.result{border:1px solid #a8b3df;padding:20px;border-radius:12px;background:#f9faff;margin-top:24px}.table-wrap{overflow-x:auto;max-width:100%;border:1px solid var(--line);border-radius:10px;margin:20px 0}table{width:100%;border-collapse:collapse;min-width:660px;font-size:14px}th,td{padding:14px 12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}th{background:#f5f6fc;color:var(--muted);font-weight:600}td{overflow-wrap:anywhere}table button{font-size:14px;padding:10px 12px}table tr:last-child td{border-bottom:0}.table-hint{font-size:14px;color:var(--muted);margin-bottom:0}.portal{max-width:1000px!important}.portal .hero{max-width:760px;padding:28px 0}.portal h1{font-size:clamp(32px,5vw,48px)}.portal-footer{padding:24px 0;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}.privacy{font-size:14px;color:var(--muted)}
@media(max-width:800px){.shell,body>main{padding:0 16px 28px}.workspace{display:block}.workspace-menu{position:sticky;top:0;z-index:5;padding:10px 12px;margin:0 0 16px;border-radius:10px;box-shadow:0 4px 12px #202a430a}.workspace-menu nav{display:none}.mobile-menu{display:block;margin:0;font-size:14px}.mobile-menu select{min-height:46px;margin-top:4px;font-weight:600;color:var(--blue);padding:9px}.topbar{gap:8px;padding:14px 0;margin-bottom:16px}.topbar nav{gap:12px;font-size:14px}.brand{font-size:24px}section{padding:20px}.intro{padding:8px 0 20px}h1{font-size:29px}h2{font-size:23px}.access-page{margin:16px auto}.actions>button,.actions>.button{flex:1 1 160px}.camera-box,.viewer{max-width:100%}#qr-preview{padding:16px}.table-wrap{border:0;overflow:visible}table{display:block;min-width:0;font-size:16px}thead{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%)}tbody{display:block}tr{display:block;padding:16px;border:1px solid var(--line);border-radius:12px;margin-bottom:16px;background:#fff}td{display:block;border:0;padding:8px 0}td::before{content:attr(data-label);display:block;color:var(--muted);font-size:13px;font-weight:600;margin-bottom:2px}td[data-label="Ações"]::before{content:none}td button{width:100%;margin:4px 0}th{border:0}.table-hint{display:none}dl{grid-template-columns:1fr;gap:3px}dd{margin-bottom:12px}}
@media(max-width:380px){section{padding:16px}.shell,body>main{padding-left:12px;padding-right:12px}.stats{grid-template-columns:1fr}.topbar nav{gap:10px}.task-card{padding:16px}input[type=file]{width:100%;font-size:12px}}

.prize-stock-list{display:grid;gap:16px;margin:20px 0}
.prize-stock-card{border:1px solid var(--line);border-radius:12px;padding:18px;background:#f9faff}
.prize-stock-card h4{margin:0 0 4px;font-size:18px}
.prize-stock-counts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(135px,100%),1fr));gap:12px;margin:16px 0}
.prize-stock-counts div{border:1px solid var(--line);border-radius:8px;background:white;padding:10px 12px}
.prize-stock-counts strong{display:block;font-size:23px;color:var(--blue)}
.prize-stock-counts span{font-size:13px;color:var(--muted)}
.prize-stock-bar{display:flex;height:18px;border-radius:9px;overflow:hidden;background:#dfe9ed}
.prize-stock-bar .active{background:#3157bd}.prize-stock-bar .redeemed{background:#14764c}.prize-stock-bar .available{background:#dfe9ed}
.prize-stock-legend{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:10px;font-size:13px}
.prize-stock-legend span{display:inline-flex;align-items:center;gap:6px}
.prize-stock-legend i{display:inline-block;width:11px;height:11px;border-radius:3px;background:#dfe9ed}
.prize-stock-legend .active i{background:#3157bd}.prize-stock-legend .redeemed i{background:#14764c}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.site-credit{margin:28px auto 0;padding:20px 12px;border-top:1px solid #dce1ef;color:#505c74;font-family:Inter,Arial,sans-serif;font-size:14px;font-weight:400;line-height:1.6;text-align:center;overflow-wrap:anywhere;max-width:100%}.site-credit p{margin:0}

/* Shared logo: natural proportions, including narrow mobile headers. */
.brand{display:inline-flex;align-items:center;max-width:100%;min-width:0;flex-shrink:1}.brand-logo{display:block;width:220px;max-width:100%;height:auto}.topbar>.brand{flex:0 1 220px}.topbar>#account-link{flex-shrink:0}@media(max-width:360px){.topbar>.brand{flex-basis:168px}.brand-logo{width:200px}}

#redemption-receipt{width:min(850px,calc(100vw - 24px));max-width:none;max-height:90vh;border:1px solid var(--line);border-radius:12px;padding:24px;color:#111;background:#fff;box-shadow:0 20px 70px #202a4355}
#redemption-receipt::backdrop{background:#17243b99}
.receipt-actions{justify-content:flex-end;margin:0 0 20px}
.receipt-paper{font:12pt/1.5 'Times New Roman',serif;color:#111}
.receipt-paper h2{font:700 16pt/1.25 'Times New Roman',serif;text-align:center;margin:0 0 28px;letter-spacing:0}
.receipt-paper p{margin:0 0 18px;overflow-wrap:normal}
.receipt-details{margin:28px 0}.receipt-details p{margin-bottom:8px}
.receipt-date{margin:40px 0 70px!important;text-align:right}
.receipt-signature{text-align:center;margin:0 auto 28px;max-width:460px}
.receipt-copy{text-align:right;margin:32px 0 0!important;font-size:10pt}
@media print{
  @page{size:A4;margin:0}
  html,body{margin:0!important;padding:0!important;background:#fff!important}
  body>.shell{display:none!important}
  #redemption-receipt{display:block!important;position:static!important;inset:auto!important;width:210mm!important;max-width:none!important;max-height:none!important;margin:0!important;padding:16mm!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;overflow:visible!important}
  #redemption-receipt::backdrop{display:none!important;background:transparent!important}
  .receipt-actions{display:none!important}
  .receipt-paper{font-size:11pt;line-height:1.4}
  .receipt-paper h2{font-size:15pt;margin-bottom:20px}
  .receipt-paper p{margin-bottom:14px}
  .receipt-details{margin:20px 0}
  .receipt-date{margin:28px 0 48px!important}
  .receipt-signature{margin-bottom:20px}
}

.portal-footer{border-top:0}.portal-footer .site-credit{border-top:0;margin-top:0}
