/* Tokens da Órbita. A logo enviada permanece intacta em assets/logo-orbita.png. */
:root{color-scheme:light;--ink:#171c13;--muted:#60675b;--lime:#bcf637;--lime-hover:#a7e525;--line:#e3e7dc;--surface:#fff;--background:#f3f5ef;--pending:#925407;--pending-bg:#fff4d8;--radius:1.15rem}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--background);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1rem;line-height:1.5}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button{border:0}button:focus-visible,a:focus-visible{outline:3px solid #557c12;outline-offset:3px}input:focus-visible{outline:3px solid #b4e442;outline-offset:2px}h1,h2,h3,p{margin:0}h1{font-size:clamp(1.7rem,4vw,2.35rem);font-weight:800;letter-spacing:-.05em;line-height:1.15}h2{font-size:1.25rem;font-weight:750;letter-spacing:-.03em;line-height:1.3}h3{font-size:1.05rem;font-weight:750}svg{width:1.15rem;height:1.15rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}[hidden]{display:none!important}.shell{width:min(1160px,100%);margin:auto;padding-left:1.5rem;padding-right:1.5rem}.skip-link{position:fixed;left:1rem;top:-100px;z-index:100;padding:.75rem;background:var(--lime);color:var(--ink);border-radius:.4rem}.skip-link:focus{top:1rem}.eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:.75rem;letter-spacing:.1em;font-weight:750;color:#5d6652}.tiny-ticket{font-weight:900;font-size:1rem;color:#5c7f16}.site-header{background:#11150e;color:#fff;border-bottom:3px solid var(--lime)}.header-content{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.brand{display:flex;align-items:center;gap:1.15rem;background:transparent;color:#edf1e5;padding:0}.brand img{width:140px;height:76px;object-fit:contain}.brand-divider{width:1px;height:25px;background:#3d4238}.brand-category{font-size:.8rem;letter-spacing:.18em;font-weight:650}.main-nav{display:flex;gap:1.5rem;align-self:stretch;align-items:center}.nav-link{height:100%;background:transparent;color:#bbc1b3;font-size:.9rem;font-weight:650;border-bottom:3px solid transparent;margin-bottom:-3px;padding:.5rem .1rem}.nav-link.active{color:var(--lime);border-color:var(--lime)}.customer-control{display:flex;align-items:center;gap:.75rem;color:#eaf0e2}.customer-name{font-size:.875rem;max-width:160px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.header-button{background:#283021;color:#f4f8ec;border:1px solid #3f4934;padding:.6rem 1rem;border-radius:.6rem;display:flex;gap:.5rem;align-items:center;font-size:.875rem;font-weight:650}.header-button:hover{background:#36432a}main.shell{padding-top:1.75rem;padding-bottom:2rem;min-height:calc(100vh - 175px)}.campaign-card{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:1.5rem;padding:1.5rem 1.75rem;background:#e9eee0;border:1px solid #dce4d2;border-radius:var(--radius);position:relative;overflow:hidden}.campaign-card:before{content:"";position:absolute;top:0;left:0;bottom:0;width:5px;background:var(--lime)}.campaign-card h1{margin-top:.55rem;margin-bottom:.65rem}.campaign-card p{color:#56604c;max-width:590px}.federal-badge{display:inline-flex;gap:.45rem;align-items:center;margin-top:1rem;font-size:.875rem;font-weight:600;color:#435135}.federal-badge svg{color:#5c7926}.unit-price{flex-shrink:0;min-width:185px;border-left:1px solid #cdd6c0;padding-left:2rem;display:flex;flex-direction:column;gap:.15rem}.unit-price span{font-size:.75rem;font-weight:750;letter-spacing:.05em}.unit-price strong{font-size:2.55rem;font-weight:800;letter-spacing:-.06em;line-height:1.3}.unit-price small{color:var(--muted);font-size:.875rem}.raffle-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:1.5rem;align-items:start}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.number-panel{padding:1.5rem}.panel-heading{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-bottom:1.3rem}.panel-heading p{color:var(--muted);font-size:.875rem;margin-top:.3rem}.range-tag{padding:.4rem .7rem;background:#f1f4ea;border:1px solid #e3e8d9;border-radius:.5rem;font-size:.8rem;font-weight:650;white-space:nowrap}.quick-pick{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;padding:1rem;background:#f5f7f1;border-radius:.7rem;margin-bottom:1.1rem}.quick-pick>span{font-size:.875rem;font-weight:650;margin-right:auto}.quick-pick button{border:1px solid #d5ddc8;background:#fff;padding:.5rem .65rem;border-radius:.5rem;font-size:.875rem;font-weight:650;min-height:38px}.quick-pick button:hover{background:#eaf5d5;border-color:#98bd53}.legend{display:flex;gap:.95rem;flex-wrap:wrap;margin-bottom:1.2rem}.legend>span{display:flex;gap:.35rem;align-items:center;font-size:.8rem;color:#4e5944}.key{width:12px;height:12px;border-radius:3px;border:1px solid #cbd3c0;display:block}.key.available{background:#fff}.key.selected{background:var(--lime);border-color:#89b82d}.key.pending{background:#ffe9af;border-color:#dfbd6c}.key.paid{background:#2d3624;border-color:#2d3624}.number-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:.45rem}.number-button{position:relative;min-height:45px;border:1px solid #dfe5d7;border-radius:.45rem;background:#fff;color:#33422b;font-size:.95rem;font-weight:700;font-variant-numeric:tabular-nums;transition:background .15s,border-color .15s,transform .15s}.number-button:hover:not(:disabled){background:#f1f8e8;border-color:#86aa4d;transform:translateY(-1px)}.number-button.is-selected{background:var(--lime);border-color:#8dbd2e;color:#24310f;box-shadow:inset 0 -2px 0 #9ad02d}.number-button.is-selected:hover{background:#abe82d}.number-button.is-pending{background:var(--pending-bg);border-color:#edcf87;color:#895308;opacity:1}.number-button.is-paid{background:#2d3624;border-color:#2d3624;color:#dce8cd;opacity:1}.grid-bottom{display:flex;justify-content:space-between;gap:.75rem;align-items:center;margin-top:1.2rem;color:var(--muted);font-size:.875rem}.text-button{background:transparent;padding:.3rem 0;color:#4c6235;text-decoration:underline;text-underline-offset:3px;font-size:.875rem;font-weight:600}.text-button:hover{color:#1d3607}.summary-card{position:sticky;top:1.5rem;padding:1.5rem;overflow:hidden}.summary-card:before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:var(--lime)}.summary-header h2{margin-top:.45rem;font-size:1.5rem}.summary-header p{font-size:.875rem;color:var(--muted);margin-top:.45rem}.selected-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:1.4rem 0;min-height:52px;max-height:200px;overflow:auto;align-content:flex-start}.selected-chip{background:#f0f7e4;border:1px solid #d8e8bf;padding:.3rem .45rem;border-radius:.35rem;font-size:.875rem;color:#3c5a1b;display:inline-flex;align-items:center;gap:.35rem;font-weight:650}.selected-chip button{background:transparent;padding:0;color:#506936;font-size:1.1rem;line-height:1}.empty-selection{font-size:.875rem;color:#78816c;border:1px dashed #d5ddc8;padding:.9rem;width:100%;border-radius:.5rem;text-align:center}.quantity-row,.total-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.875rem}.quantity-row{padding-top:1rem;border-top:1px solid var(--line);color:var(--muted)}.quantity-row strong{font-weight:650;color:var(--ink)}.total-row{margin-top:.85rem;margin-bottom:1.3rem}.total-row>span{font-size:1rem;font-weight:600}.total-row strong{font-size:1.85rem;letter-spacing:-.04em;font-weight:800}.button{display:inline-flex;justify-content:center;align-items:center;gap:.55rem;min-height:46px;padding:.7rem 1.15rem;border-radius:.6rem;font-weight:700;font-size:.9rem;text-decoration:none;text-align:center;line-height:1.4;border:1px solid transparent;transition:background .15s,box-shadow .15s}.button-lime{background:var(--lime);color:#22300f;border-color:#abd82e}.button-lime:hover:not(:disabled){background:var(--lime-hover);box-shadow:0 4px 16px #9bd22b25}.button-dark{background:#25321a;color:#fff}.button-dark:hover:not(:disabled){background:#3b4c2c}.button-outline{background:#fff;color:#36452b;border:1px solid #d4ddc8}.button-outline:hover{background:#f1f7e9}.button-whatsapp{background:#146b3b;color:#fff;width:100%}.button-whatsapp:hover:not(:disabled){background:#0e5730}.summary-card>.button{width:100%}.summary-footnote{text-align:center;font-size:.75rem;color:#738066;margin-top:.85rem}.site-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;border-top:1px solid var(--line);padding-top:1.2rem;padding-bottom:1.2rem;color:#727d65;font-size:.75rem}.site-footer>span:first-child{color:#4f5e41;font-weight:650}.site-footer .text-button{font-size:.8rem}.view-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:0 0 1.7rem}.view-heading h1{margin:.45rem 0 .7rem}.view-heading p{color:var(--muted)}.notice{padding:.85rem 1rem;background:#edf2e5;border:1px solid #d6e1c7;border-radius:.65rem;color:#435732;font-size:.875rem;margin-bottom:1.3rem}.notice-error{background:#fff1ef;border-color:#f1c4bd;color:#9b3022}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1.4rem}.stat-card{padding:1.2rem 1.35rem}.stat-card>span{font-size:.875rem;color:var(--muted)}.stat-card strong{display:block;font-size:1.9rem;font-weight:800;letter-spacing:-.04em;margin-top:.4rem}.payment-settings{padding:1.4rem;margin-bottom:1.5rem}.payment-settings p{color:var(--muted);font-size:.875rem;margin-top:.35rem}.settings-form{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) auto;gap:1rem;align-items:end;margin-top:1.2rem}.field{display:flex;flex-direction:column;gap:.4rem}.field label{font-size:.875rem;font-weight:650;color:#35452b}.field input{width:100%;min-height:46px;padding:.7rem .8rem;border:1px solid #cdd6c2;border-radius:.5rem;background:#fff;color:var(--ink);font-size:1rem}.field input::placeholder{color:#87907f}.field input[readonly]{background:#f6f8f2}.form-error{font-size:.875rem!important;color:#a13828!important;margin:0!important}.settings-form>.form-error{grid-column:1/-1}.reservations-panel{padding:1.5rem}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.875rem;text-align:left}thead{background:#f3f6ee;color:#667458}th{font-size:.75rem;font-weight:700;letter-spacing:.025em;padding:.8rem;white-space:nowrap}td{padding:1rem .8rem;border-bottom:1px solid #e7ebdf;vertical-align:top}td small{display:block;color:#7d8872;font-size:.75rem;margin-top:.25rem}td:first-child{min-width:170px}.table-numbers{max-width:200px;min-width:110px;line-height:1.8;font-variant-numeric:tabular-nums}.status-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .55rem;border-radius:.35rem;font-size:.8rem;font-weight:650;white-space:nowrap}.status-pending{background:#fff0c9;color:#85500a}.status-paid{background:#e5f4d8;color:#2d5a1a}.status-cancelled{background:#edf0e9;color:#6c7561}.table-actions{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}.table-actions .button{min-height:38px;font-size:.8rem;padding:.45rem .65rem;white-space:nowrap}.table-actions .text-button{font-size:.75rem;color:#9b4939}.empty-state{padding:3rem 1.5rem;text-align:center;background:#fff;border:1px dashed #d1dcc3;border-radius:var(--radius)}.empty-state>svg{width:2.8rem;height:2.8rem;color:#92a77a;margin-bottom:1rem}.empty-state h2{font-size:1.25rem;margin-bottom:.5rem}.empty-state p{color:var(--muted);max-width:440px;margin:0 auto 1.25rem;font-size:.95rem}.orders-grid{display:grid;gap:1rem}.order-card{padding:1.5rem}.order-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.order-top small{display:block;color:var(--muted);font-size:.8rem;margin-top:.25rem}.order-number-list{display:flex;gap:.4rem;flex-wrap:wrap;margin:.8rem 0 1.2rem}.order-number{padding:.35rem .65rem;border-radius:.35rem;font-weight:650;background:#edf3e4;color:#3e572b;border:1px solid #d9e3ce;font-size:.9rem}.order-bottom{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding-top:1rem;border-top:1px solid var(--line)}.order-bottom strong{font-size:1.2rem}.order-bottom .button{font-size:.85rem;min-height:42px}.order-id{font-size:.75rem;color:var(--muted);word-break:break-all}dialog{border:0;padding:2rem;border-radius:1.2rem;background:#fff;color:var(--ink);width:min(480px,calc(100% - 2rem));max-height:calc(100dvh - 2rem);overflow:auto;box-shadow:0 30px 100px #16210940}dialog::backdrop{background:#12190eb5;backdrop-filter:blur(3px)}dialog h2{font-size:1.6rem;margin:.6rem 0 .8rem;line-height:1.2;padding-right:1rem}dialog>p,#checkout-content>p{color:var(--muted);font-size:.95rem}.dialog-close{position:absolute;right:1rem;top:.8rem;background:#f0f3ea;border-radius:50%;width:32px;height:32px;font-size:1.5rem;line-height:1;color:#5c6a50}.stack-form{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem}.stack-form small{text-align:center;color:#7b876e;font-size:.8rem}.checkout-total{padding:1.2rem;background:#edf4e2;border:1px solid #d3e3bd;border-radius:.75rem;margin:1.2rem 0}.checkout-total>span{font-size:.875rem;color:#5e7050}.checkout-total>strong{display:block;font-size:2.35rem;font-weight:800;letter-spacing:-.04em}.checkout-details{font-size:.875rem;color:#57664a;margin-top:.55rem;line-height:1.7}.checkout-numbers{font-weight:650;word-break:normal;overflow-wrap:anywhere;max-height:100px;overflow:auto}.pix-label{font-size:.875rem;font-weight:700;margin-bottom:.5rem;display:block}.pix-copy{display:flex;gap:.4rem;margin-bottom:.4rem}.pix-copy input{min-width:0;width:100%;border:1px solid #cfdac1;background:#f6f9f0;border-radius:.5rem;padding:.7rem .8rem;font-family:inherit;color:#34492a;font-size:.95rem}.pix-copy button{background:#e9f2db;color:#3e5a26;border-radius:.5rem;padding:.7rem;min-width:44px;display:flex;align-items:center;justify-content:center}.pix-recipient{font-size:.8rem;color:#708261;margin-bottom:1.4rem}.checkout-help{font-size:.875rem!important;margin-top:.9rem;color:#67765a!important}.checkout-status{margin:1rem 0;padding:.65rem .8rem;background:#fff2cd;border:1px solid #ead088;border-radius:.5rem;font-size:.875rem;color:#835514}.checkout-success{padding:.6rem 0 .2rem}.checkout-success .success-mark{display:flex;width:52px;height:52px;align-items:center;justify-content:center;background:#e6f5d7;border:1px solid #bed5a1;border-radius:50%;color:#477122;font-size:1.5rem;margin-bottom:1rem}.checkout-success .button{width:100%;margin-top:1rem}.toast{position:fixed;left:50%;bottom:2rem;transform:translateX(-50%);max-width:min(540px,calc(100% - 2rem));background:#243719;color:#f3ffe9;border:1px solid #4a6835;box-shadow:0 8px 35px #20301435;padding:.85rem 1.2rem;border-radius:.6rem;z-index:100;font-size:.875rem;text-align:center}.toast.error{background:#7b3225;border-color:#a95140}
/* Mobile: os números continuam grandes e a reserva fica acessível durante a rolagem. */
@media(max-width:960px){.raffle-layout{grid-template-columns:minmax(0,1fr) 275px;gap:1rem}.shell{padding-left:1.1rem;padding-right:1.1rem}.number-panel,.summary-card{padding:1.15rem}.number-grid{grid-template-columns:repeat(8,minmax(0,1fr))}.quick-pick>span{width:100%}.settings-form{grid-template-columns:1fr 1fr}.settings-form>.button{grid-column:1/-1}.brand-category,.brand-divider{display:none}.main-nav{gap:1rem}.header-content{gap:1rem}}
@media(max-width:760px){.header-content{flex-wrap:wrap;gap:.25rem .75rem;min-height:108px;padding-top:.25rem;padding-bottom:.25rem}.brand img{width:115px;height:62px}.main-nav{order:3;justify-content:center;width:100%;height:39px;gap:2rem}.nav-link{font-size:.875rem}.customer-name{max-width:105px}.header-button{padding:.45rem .65rem}.customer-control{gap:.5rem}main.shell{padding-top:1.1rem;padding-bottom:1.5rem}.campaign-card{padding:1.2rem;gap:1rem;align-items:flex-start;flex-direction:column;margin-bottom:1rem}.campaign-card h1{font-size:1.8rem}.campaign-card p{font-size:.95rem}.unit-price{width:100%;border-left:0;border-top:1px solid #d0dbc2;padding:1rem 0 0;display:grid;grid-template-columns:1fr auto;align-items:center;gap:0}.unit-price strong{font-size:1.9rem;grid-column:2;grid-row:1/3}.unit-price small{font-size:.8rem}.federal-badge{font-size:.8rem}.raffle-layout{display:block}.number-panel{padding:1rem}.number-grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:.4rem}.number-button{min-height:49px}.quick-pick{gap:.45rem;padding:.8rem}.quick-pick>span{width:auto;margin-right:auto}.quick-pick button{font-size:.8rem;padding:.5rem}.legend{gap:.65rem;font-size:.75rem}.summary-card{position:fixed;top:auto;bottom:0;left:0;right:0;z-index:20;border-radius:1rem 1rem 0 0;box-shadow:0 -5px 25px #273b1e15;padding:.9rem 1.1rem;display:grid;grid-template-columns:1fr auto;gap:.4rem .85rem;border-bottom:0;padding-bottom:max(.9rem,env(safe-area-inset-bottom))}.summary-header,.selected-chips,.summary-footnote{display:none}.summary-card:before{height:3px}.summary-values{display:flex;flex-direction:column-reverse;gap:.1rem}.quantity-row{border:0;padding:0;font-size:.8rem;justify-content:flex-start;gap:.4rem}.quantity-row>span{display:none}.quantity-row strong{font-weight:500;color:#637654}.total-row{margin:0;justify-content:flex-start;gap:.7rem}.total-row>span{font-size:.8rem;color:#657651}.total-row strong{font-size:1.5rem}.summary-card>.button{min-height:48px;padding:.7rem 1rem;align-self:center}.site-footer{flex-wrap:wrap;padding-bottom:145px;gap:.5rem}.site-footer>span:nth-child(2){order:3;width:100%}.site-footer>button{margin-left:auto}.view-heading{align-items:flex-start;flex-direction:column}.view-heading .button{font-size:.85rem}.stats-grid{gap:.65rem}.stat-card{padding:.85rem}.stat-card>span{font-size:.75rem}.stat-card strong{font-size:1.3rem}.settings-form{grid-template-columns:1fr}.settings-form>.button{grid-column:auto}.reservations-panel,.payment-settings{padding:1rem}.order-card{padding:1.1rem}.order-top{align-items:flex-start}.order-bottom{flex-wrap:wrap}.toast{bottom:7rem}body:not(.raffle-active) .site-footer{padding-bottom:1.2rem}body:not(.raffle-active) .toast{bottom:1.5rem}}
@media(max-width:599px){.number-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.quick-pick>span{width:100%}.quick-pick button{flex:1}.eyebrow{font-size:.7rem;letter-spacing:.07em}.legend>span{font-size:.75rem}.unit-price span{font-size:.7rem}.range-tag{font-size:.75rem}.panel-heading h2{font-size:1.1rem}dialog{padding:1.5rem;max-height:calc(100dvh - 1rem)}.stats-grid{grid-template-columns:1fr}.stat-card{display:flex;align-items:center;justify-content:space-between;gap:1rem}.stat-card strong{margin:0;font-size:1.65rem}.stat-card>span{font-size:.875rem}.view-heading h1{font-size:1.8rem}}
@media(max-width:359px){.number-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.customer-name{display:none}.campaign-card{padding:1rem}.summary-card{padding:.75rem;gap:.5rem}.summary-card>.button{font-size:.8rem;padding:.65rem .75rem}.total-row{gap:.45rem}.total-row strong{font-size:1.25rem}.legend{gap:.5rem}.legend>span{font-size:.7rem}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
/* Portal com várias rifas. As cores personalizadas são limitadas a hexadecimal no servidor. */
a{color:inherit}.brand,.nav-link{text-decoration:none}.nav-link{display:flex;align-items:center}.heading-actions{display:flex;gap:.6rem;flex-wrap:wrap}.catalog-label{font-size:.875rem;font-weight:650;border:1px solid #d0dfba;border-radius:999px;padding:.55rem .9rem;background:#eaf3dc;color:#3b5c20}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.3rem}.catalog-card{overflow:hidden;border-top:4px solid var(--card-accent)}.catalog-visual{background:var(--card-background);padding:1.2rem;height:180px;display:flex;align-items:center;justify-content:center}.catalog-visual img{max-height:145px;max-width:90%;width:auto;object-fit:contain;border-radius:.45rem}.catalog-card-body{padding:1.3rem}.catalog-card h2{font-size:1.35rem}.catalog-description{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:.95rem;color:var(--muted);margin:.6rem 0;min-height:4.2rem}.catalog-card-meta{display:flex;align-items:center;justify-content:space-between;gap:.7rem;margin:1.25rem 0}.catalog-card-meta>span{font-size:.875rem;color:var(--muted)}.catalog-card-meta strong{font-size:1.4rem;letter-spacing:-.035em;text-align:right}.catalog-card-meta small{display:block;font-size:.75rem;font-weight:500;letter-spacing:0;color:var(--muted)}.catalog-card .button{width:100%}.loading-message{padding:2rem;text-align:center;color:var(--muted)}.back-link{display:inline-block;color:#5c704a;font-size:.875rem;font-weight:650;margin-bottom:1rem;text-underline-offset:3px}.raffle-logo{width:86px;height:86px;object-fit:contain;border-radius:.65rem;flex-shrink:0}.campaign-copy{flex:1;min-width:0}.campaign-card{background:var(--campaign-background,#e9eee0);color:var(--campaign-foreground,var(--ink));border-color:color-mix(in srgb,var(--campaign-background,#e9eee0) 80%,#71805b)}.campaign-card p,.campaign-card .eyebrow,.campaign-card .federal-badge,.campaign-card .unit-price small{color:color-mix(in srgb,var(--campaign-foreground,var(--ink)) 80%,transparent)}.campaign-card .unit-price{min-width:165px;padding-left:1.2rem}.campaign-card .unit-price strong{font-size:2.2rem}.number-button.is-selected{color:var(--theme-foreground,#22300f);background:var(--lime);border-color:color-mix(in srgb,var(--lime) 65%,#222);box-shadow:none}.number-button.is-selected:hover{background:color-mix(in srgb,var(--lime) 85%,#222)}#raffle-view .button-lime{color:var(--theme-foreground,#22300f);border-color:color-mix(in srgb,var(--lime) 80%,#222)}#raffle-view .button-lime:hover:not(:disabled){background:color-mix(in srgb,var(--lime) 85%,#222)}#raffle-view .selected-chip{background:color-mix(in srgb,var(--lime) 20%,white);border-color:color-mix(in srgb,var(--lime) 35%,#ccc);color:#293f17}#raffle-view .key.selected{background:var(--lime);border-color:color-mix(in srgb,var(--lime) 70%,#222)}.legend>span{font-size:.875rem}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1.5rem 0 1rem}.admin-raffle-list{display:grid;gap:.8rem;margin-bottom:1.8rem}.admin-raffle-card{padding:1rem 1.2rem;display:flex;gap:1rem;align-items:center}.admin-raffle-card>img{width:76px;height:76px;object-fit:contain;border-radius:.5rem;background:#f0f2ea}.admin-raffle-copy{flex:1;min-width:0}.admin-raffle-copy p{font-size:.875rem;color:var(--muted);margin:.3rem 0 .5rem}.admin-raffle-actions{display:flex;flex-wrap:wrap;gap:.5rem}.admin-raffle-actions .button{font-size:.8rem;min-height:39px;padding:.5rem .7rem}.admin-signout{display:inline-block;margin:1.3rem 0}.editor-dialog{width:min(720px,calc(100% - 2rem))}.editor-form{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.2rem}.full-field{grid-column:1/-1}.field textarea,.field select{font:inherit;color:var(--ink);width:100%;border:1px solid #cdd6c2;background:#fff;border-radius:.5rem;padding:.7rem .8rem;min-height:46px}.field textarea{resize:vertical}.field small{font-size:.8rem;color:#6b7a5c}.field input[type=color]{padding:.35rem;height:47px;cursor:pointer}.field input[type=file]{font-size:.875rem;max-width:100%;padding:.4rem}.logo-field{display:flex;align-items:center;gap:1.1rem;padding:1rem;border:1px dashed #cbd9bd;border-radius:.65rem;background:#f6f9f1}.logo-field img{width:100px;height:85px;object-fit:contain;flex-shrink:0;border-radius:.4rem}.logo-field .field{min-width:0;flex:1}.logo-field .text-button{text-align:left}.editor-divider{padding-top:1rem;border-top:1px solid var(--line);margin-top:.25rem}.editor-divider p{font-size:.875rem;color:var(--muted);margin-top:.3rem}.editor-actions{display:flex;justify-content:flex-end;gap:.6rem;padding-top:.75rem}.payment-dialog{width:min(540px,calc(100% - 2rem))}.pix-qr{width:230px;height:230px;background:white;border:1px solid #dce5d1;border-radius:.65rem;display:flex;align-items:center;justify-content:center;margin:1rem auto .5rem;padding:.25rem}.pix-qr svg{width:100%;height:100%;stroke:none;fill:initial}.qr-caption{text-align:center;color:#657557;font-size:.875rem;margin-bottom:1.25rem}.copy-payload{width:100%;margin-bottom:.25rem}.button-whatsapp{margin-top:1.1rem}.payment-finish{width:100%;margin-top:1rem}.pix-copy>button{font-size:.875rem;font-weight:650}.status-badge{font-size:.875rem}.customer-name{max-width:160px}.editor-form input:disabled{background:#f1f4eb;color:#748365}.toast{bottom:1.5rem}
@media(max-width:1050px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-raffle-card{flex-wrap:wrap}.admin-raffle-actions{width:100%;justify-content:flex-end}}
@media(max-width:760px){.campaign-card{display:grid;grid-template-columns:65px 1fr;align-items:start}.raffle-logo{width:65px;height:65px}.campaign-copy h1{font-size:1.6rem}.campaign-card .unit-price{grid-column:1/-1;grid-template-columns:1fr auto;min-width:0;padding:1rem 0 0}.campaign-card .unit-price strong{font-size:1.9rem}.campaign-card:before{background:var(--lime)}.heading-actions{width:100%}.heading-actions>.button{flex:1}.legend{gap:.55rem}.legend>span{font-size:.75rem}.catalog-grid{gap:1rem}.admin-raffle-card{padding:1rem}.admin-raffle-actions .button{flex:1}.editor-dialog{padding:1.25rem}.logo-field{padding:.8rem;gap:.8rem}.logo-field img{width:75px;height:70px}body.raffle-active .toast{bottom:7rem}}
@media(max-width:599px){.catalog-grid{grid-template-columns:1fr}.catalog-visual{height:160px}.catalog-description{min-height:0}.editor-form{grid-template-columns:1fr}.full-field{grid-column:auto}.editor-actions>.button{flex:1}.admin-raffle-copy h3{font-size:1rem}.campaign-copy h1{font-size:1.45rem}.campaign-copy p{font-size:.875rem}.federal-badge{font-size:.8rem}.payment-dialog{padding:1.3rem}.pix-qr{width:220px;height:220px}}
@media(max-width:760px){.legend>span{font-size:.875rem}.legend{row-gap:.5rem}}

/* A foto do prêmio ocupa a área principal, sem recortar a arte enviada. */
.campaign-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-template-areas:"photo copy" "photo price";align-items:start;column-gap:2rem;row-gap:1.25rem;padding:1.75rem}
.campaign-card .raffle-logo{grid-area:photo;width:100%;height:clamp(360px,45vw,620px);max-width:100%;object-fit:contain;border-radius:1rem;padding:.5rem;background:color-mix(in srgb,var(--campaign-foreground,#11150e) 5%,transparent);box-shadow:0 10px 28px #00000018}
.campaign-card .campaign-copy{grid-area:copy}
.campaign-card .unit-price{grid-area:price;grid-column:auto;min-width:0;width:100%;display:flex;align-items:flex-start;border-left:0;border-top:1px solid color-mix(in srgb,var(--campaign-foreground,#11150e) 25%,transparent);padding:1rem 0 0}
.catalog-visual{height:320px;padding:1rem}
.catalog-visual img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;border-radius:.75rem}
@media(max-width:760px){
  .campaign-card{grid-template-columns:minmax(0,1fr);grid-template-areas:"photo" "copy" "price";padding:1.1rem;gap:1.2rem}
  .campaign-card .raffle-logo{height:auto;min-height:260px;max-height:560px}
  .catalog-visual{height:clamp(300px,95vw,420px)}
}

/* Registro de compras presenciais no mesmo estoque de números. */
.manual-fields{border:0;padding:0;min-width:0}
.manual-number-grid{max-height:290px;overflow-y:auto;padding:.6rem .25rem;margin-top:.5rem}
.manual-number-grid .loading-message{grid-column:1/-1}
.manual-total{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;background:#eef6df;border:1px solid #d8e7c2;border-radius:.7rem}
.manual-total span{font-size:.875rem;color:#425431}
.manual-total strong{font-size:1.6rem;color:#243516;white-space:nowrap}
#manual-sale-dialog .field small{font-size:.875rem}
#manual-sale-dialog .legend>span{font-size:.875rem}

/* Evita zoom por toque duplo e seleção de texto no atalho da logo. */
.brand{touch-action:manipulation;user-select:none}

/* Avisos ao comprador: o envio é concluído pelo administrador no WhatsApp. */
.button-customer-whatsapp{background:#146b3b;color:#fff;border-color:#146b3b;text-decoration:none}
.button-customer-whatsapp:hover{background:#0e5730;border-color:#0e5730}
.notification-help{margin:0 0 1rem;color:var(--muted);font-size:.875rem;line-height:1.6;max-width:72ch}
.notification-preview{margin:1rem 0}
.notification-preview textarea{font-size:.875rem;line-height:1.65;resize:vertical;background:#f6f9f1}
.notification-send,.notification-copy{width:100%;margin-top:.6rem}
.table-actions .copy-notification{color:#425431}
