@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');

:root{--ink:#252722;--muted:#6d7069;--paper:#f6f5f0;--white:#fff;--green:#264b3c;--green-soft:#dce7dc;--orange:#ca5939;--line:#dcded7;--display:'Playfair Display',Georgia,serif;--body:'DM Sans',sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--body);font-size:15px;line-height:1.55}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
button{cursor:pointer}
.topbar{height:82px;padding:0 6.3%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(37,39,34,.12);background:var(--paper)}
.brand{display:flex;gap:11px;align-items:center;font-size:13px;font-weight:700;letter-spacing:1.5px;line-height:1.1}
.brand small{display:block;margin-top:5px;font-size:8px;letter-spacing:2.1px;font-weight:600;color:var(--muted)}
.brand-mark{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--green);border-radius:50%;font-family:var(--display);font-size:22px;font-weight:500;color:var(--green)}
.main-nav{display:flex;gap:38px;font-size:12px;color:#53574f}
.main-nav a:hover,.footer a:hover{color:var(--orange)}
.account-button{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--ink);background:transparent;padding:11px 16px;font-size:12px;color:var(--ink)}
.account-button .account-icon{width:17px;height:17px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.account-button .account-label{margin:0;color:inherit}
.account-button .account-arrow{margin:0 0 0 3px;color:var(--orange)}
.hero{min-height:570px;display:grid;grid-template-columns:48% 52%;position:relative;overflow:hidden}
.hero-copy{padding:90px 10% 55px 13%;display:flex;flex-direction:column;align-items:flex-start;z-index:1}
.eyebrow{margin:0 0 17px;color:var(--green);font-size:10px;font-weight:700;letter-spacing:1.7px;text-transform:uppercase}
.eyebrow span{display:inline-block;width:19px;height:1px;margin:0 9px 3px 0;background:var(--orange)}
h1,h2,p{margin-top:0}
h1{margin-bottom:20px;font-family:var(--display);font-size:clamp(54px,6.1vw,82px);font-weight:500;line-height:.98;letter-spacing:0}
h1 em{color:var(--orange);font-weight:500}
.hero-text{max-width:365px;margin-bottom:27px;color:var(--muted);font-size:14px}
.text-link{padding-bottom:7px;border-bottom:1px solid var(--orange);font-size:12px;font-weight:700}
.text-link span{margin-left:15px;color:var(--orange)}
.hero-footnote{margin-top:auto;padding-top:38px;color:#80837c;font-size:10px;letter-spacing:.5px}
.hero-footnote span{margin-right:12px;color:var(--orange);font-family:var(--display);font-size:20px}
.hero-image{min-height:570px;position:relative;background:#b8a99a url('https://images.unsplash.com/photo-1600210492486-724fe5c67fb0?auto=format&fit=crop&w=1600&q=85') center 53%/cover no-repeat}
.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(23,28,21,.45),transparent 28%)}
.image-caption{position:absolute;z-index:1;right:7%;bottom:25px;left:7%;display:flex;justify-content:space-between;color:#fff;font-size:10px;letter-spacing:.6px}
.hero-side-note{position:absolute;right:2.8%;top:38px;writing-mode:vertical-rl;font-size:8px;letter-spacing:2px;color:#75776e}
.hero-side-note span{color:var(--orange);padding:8px 0}
.campaign-section{padding:96px 9% 105px;background:#fff}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:42px}
.section-heading h2,.faq-heading h2,.store-copy h2{margin-bottom:0;font-family:var(--display);font-size:40px;font-weight:500;line-height:1.12;letter-spacing:0}
.section-intro{max-width:360px;margin:0 0 3px;color:var(--muted);font-size:12px}
.campaign-grid{min-height:150px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.campaign-card{border:1px solid var(--line);background:#fff}
.campaign-visual{height:210px;position:relative;background:#ecebe5 center/cover no-repeat}
.campaign-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.campaign-visual.image-unavailable{display:grid;place-items:center;background:linear-gradient(145deg,#eeede8,#d9d8d1)}
.campaign-image-placeholder{color:#777b73;font-size:12px}
.campaign-visual:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.32))}
.campaign-state{position:absolute;z-index:1;top:14px;left:14px;padding:6px 9px;background:var(--green);color:white;font-size:9px;font-weight:700;letter-spacing:.6px;text-transform:uppercase}
.campaign-state.pending{background:#fff;color:var(--orange)}
.campaign-gallery-open{position:absolute;z-index:2;right:13px;bottom:13px;padding:8px 11px;border:1px solid #ffffffb0;background:#ffffffed;color:var(--ink);font-size:10px;font-weight:700}
.campaign-content{padding:19px 19px 17px}
.campaign-content h3{margin:0 0 7px;font-family:var(--display);font-size:23px;font-weight:500;line-height:1.18}
.campaign-description{min-height:42px;margin-bottom:15px;color:var(--muted);font-size:11px}
.campaign-meta{display:flex;justify-content:space-between;gap:12px;padding-top:12px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}
.campaign-legal{margin:13px 0 0;color:#8b5a44;font-size:10px}
.campaign-action{width:100%;margin-top:15px;padding:10px;border:0;background:#e6e7e1;color:#74766e;font-size:11px;font-weight:700;cursor:not-allowed}
.empty-state,.loading-line{grid-column:1/-1;min-height:130px;display:flex;align-items:center;justify-content:center;gap:12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);font-size:13px;text-align:center}
.spinner{width:15px;height:15px;border:2px solid var(--line);border-top-color:var(--orange);border-radius:50%;animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.store-section{display:grid;grid-template-columns:1fr 1fr;min-height:440px;background:var(--green-soft)}
.store-image{min-height:440px;background:#a49a8d url('https://images.unsplash.com/photo-1567538096630-e0c55bd6374c?auto=format&fit=crop&w=1200&q=85') center/cover no-repeat}
.store-copy{padding:85px 12% 65px;align-self:center}
.store-copy h2{margin:0 0 20px;font-size:39px}
.store-copy>p:not(.eyebrow){max-width:430px;margin-bottom:26px;color:#555c53;font-size:13px}
.faq-section{padding:95px 11%;display:grid;grid-template-columns:34% 1fr;gap:8%}
.faq-heading h2{font-size:36px}
.faq-list details{padding:18px 0;border-bottom:1px solid var(--line)}
.faq-list details:first-child{border-top:1px solid var(--line)}
.faq-list summary{display:flex;justify-content:space-between;gap:20px;list-style:none;font-size:13px;font-weight:600;cursor:pointer}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:after{content:'+';color:var(--orange);font-size:18px;font-weight:400}
.faq-list details[open] summary:after{content:'−'}
.faq-list details p{max-width:650px;margin:12px 25px 0 0;color:var(--muted);font-size:12px}
.results-section{padding:70px 11%;display:grid;grid-template-columns:34% 1fr;gap:8%;background:#ebece6}
.results-section h2{margin:0;font-family:var(--display);font-size:35px;font-weight:500;line-height:1.12}
.results-list>p{color:var(--muted);font-size:12px}
.result-item{padding:15px 0;border-bottom:1px solid #d5d8d0}
.result-item:first-child{border-top:1px solid #d5d8d0}
.result-item strong{display:block;font-family:var(--display);font-size:19px;font-weight:500}
.result-item span{display:block;margin-top:3px;color:var(--muted);font-size:10px}
.footer{padding:48px 7% 22px;background:#252d27;color:#f5f4ed}
.footer-main{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:38px}
.brand-light .brand-mark{border-color:#e4e6dc;color:#e4e6dc}
.brand-light small{color:#c3c8bd}
.footer-main>p{margin:0;color:#c3c8bd;font-family:var(--display);font-size:20px;font-style:italic}
.footer-contact{display:flex;flex-direction:column;gap:5px;font-size:11px}
.footer-bottom{padding-top:18px;border-top:1px solid rgba(255,255,255,.18);display:flex;align-items:center;justify-content:space-between;gap:20px;color:#c3c8bd;font-size:9px}
.footer-bottom div{display:flex;gap:20px}
.auth-dialog{width:min(440px,calc(100% - 32px));max-height:90vh;padding:36px;border:0;background:var(--paper);color:var(--ink);box-shadow:0 20px 70px #171b1770}
.auth-dialog::backdrop{background:#18201bc0}
.dialog-close{position:absolute;top:14px;right:17px;border:0;background:none;font-size:27px;color:var(--muted)}
.auth-dialog h2{margin-bottom:22px;font-family:var(--display);font-size:31px;font-weight:500}
.auth-tabs{display:flex;gap:22px;margin-bottom:20px;border-bottom:1px solid var(--line)}
.auth-tab{padding:0 0 10px;border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);font-size:12px}
.auth-tab.active{border-color:var(--orange);color:var(--ink)}
.auth-dialog form>label,.register-fields>label{display:block;margin-bottom:13px;font-size:11px;font-weight:600}
.auth-dialog input:not([type=checkbox]){width:100%;height:42px;margin-top:5px;padding:0 11px;border:1px solid var(--line);background:#fff;outline-color:var(--green);font-size:13px}
.register-fields[hidden],.consent-fields[hidden]{display:none}
.check-label{display:flex;align-items:flex-start;gap:9px;margin:12px 0;font-size:10px;color:var(--muted)}
.check-label input{margin-top:2px;accent-color:var(--green)}
.check-label a{text-decoration:underline}
.form-message{min-height:17px;margin:5px 0;color:#a2402b;font-size:11px}
.submit-button{width:100%;padding:13px;border:0;background:var(--green);color:#fff;font-size:12px;font-weight:700;text-align:left}
.submit-button span{float:right;color:#c9d8c8}
.participation-dialog{width:min(690px,calc(100% - 28px));max-height:90vh;overflow:auto;padding:35px;border:0;background:var(--paper);color:var(--ink);box-shadow:0 20px 70px #171b1770}
.participation-dialog::backdrop{background:#18201bc0}
.participation-dialog h2{margin:0 0 6px;font-family:var(--display);font-size:31px;font-weight:500}
.selector-hint,.selector-message{color:var(--muted);font-size:11px}
.number-grid{max-height:270px;overflow:auto;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:6px;margin:18px 0}
.number-option{aspect-ratio:1;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:10px}
.number-option:disabled{background:#e8e9e3;color:#969990;cursor:not-allowed}
.number-option.selected{border-color:var(--green);background:var(--green);color:#fff}
.pix-panel{margin-top:22px;padding-top:18px;border-top:1px solid var(--line);text-align:center}
.pix-panel h3{margin:0 0 10px;font-family:var(--display);font-size:24px;font-weight:500}
.pix-panel img{width:180px;height:180px;object-fit:contain;background:#fff}
.pix-qr{width:224px;height:224px;margin:14px auto;padding:12px;display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;background:#fff}
.pix-qr[hidden]{display:none}
.pix-qr img,.pix-qr canvas{display:block;width:200px!important;height:200px!important;image-rendering:pixelated}
.pix-panel p{margin:8px 0;color:var(--muted);font-size:11px}
.pix-panel textarea{width:100%;margin:8px 0;padding:10px;border:1px solid var(--line);resize:vertical;font-size:10px}
.copy-button{padding:9px 13px;border:1px solid var(--green);background:transparent;color:var(--green);font-size:11px;font-weight:700}
.pix-test-warning{padding:12px;border:1px solid #e8bd6b;border-radius:8px;background:#fff4d9;color:#7a4b00;font-size:12px;font-weight:700;text-align:left}
.account-summary[hidden]{display:none}
.account-summary>p{color:var(--muted);font-size:11px}
.account-summary h3{margin:22px 0 8px;font-family:var(--display);font-size:21px;font-weight:500}
.account-summary label{display:block;margin:10px 0;font-size:10px;font-weight:600}
.account-summary input{width:100%;height:39px;margin-top:4px;padding:0 10px;border:1px solid var(--line);font-size:12px}
.participation-row{padding:10px 0;border-bottom:1px solid var(--line);font-size:10px}
.participation-row strong{display:block;font-size:11px}
.participation-row span{color:var(--muted)}
.account-logout{margin-top:16px;padding:8px 11px;border:1px solid var(--line);background:transparent;color:var(--muted);font-size:10px}
.forgot-password{display:block;margin:-3px 0 12px auto;padding:0;border:0;background:none;color:var(--green);font-size:10px;text-decoration:underline}
.legal-page{width:min(760px,84%);min-height:70vh;margin:70px auto 100px}
.legal-page h1,.reset-page h1{margin-bottom:20px;font-size:52px}
.legal-page h2{margin:33px 0 8px;font-family:var(--display);font-size:23px;font-weight:500}
.legal-page>p:not(.eyebrow){color:#5d625a;font-size:13px}
.legal-warning{padding:14px 16px;border-left:3px solid var(--orange);background:#f4e7df;color:#804b35!important;font-size:12px!important}
.reset-page{width:min(450px,88%);min-height:70vh;margin:90px auto}
.reset-page>p:not(.eyebrow){color:var(--muted);font-size:12px}
.reset-page label{display:block;margin:20px 0;font-size:11px;font-weight:600}
.reset-page input{width:100%;height:44px;margin-top:6px;padding:0 12px;border:1px solid var(--line);font-size:13px}
.reset-page form[hidden]{display:none}
.media-viewer{width:min(1120px,96vw);max-width:none;max-height:94vh;padding:18px;border:0;background:#171b18;color:#f8f7f2}
.media-viewer::backdrop{background:#101410e8}
.media-viewer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px}
.media-viewer-toolbar h2{margin:0;font-family:var(--display);font-size:22px;font-weight:500}
.media-viewer-toolbar button,.media-viewer-controls button{width:40px;height:40px;border:1px solid #ffffff55;background:transparent;color:#fff;font-size:22px}
.media-viewer-stage{display:grid;place-items:center;min-height:220px;height:min(72vh,780px);margin-top:10px}
.media-viewer-stage img,.media-viewer-stage video{display:block;max-width:100%;max-height:100%;object-fit:contain}
.media-viewer-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:10px}
.media-viewer-controls p{margin:0;color:#d8dad4;font-size:11px;text-align:center}
@media(max-width:600px){.media-viewer{width:100vw;max-height:100dvh;padding:12px}.media-viewer-stage{height:70dvh}.media-viewer-toolbar h2{font-size:18px}}
@media(max-width:850px){.topbar{padding:0 5%;height:72px}.main-nav{gap:20px}.hero{grid-template-columns:50% 50%;min-height:510px}.hero-copy{padding:76px 8% 40px 10%}.hero-image{min-height:510px}.hero-side-note{display:none}.section-heading{align-items:flex-start;flex-direction:column;gap:17px}.campaign-section{padding:72px 6%}.campaign-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.store-copy{padding:60px 9%}.faq-section{padding:75px 7%;grid-template-columns:1fr;gap:30px}.footer{padding-right:5%;padding-left:5%}}
@media(max-width:600px){body{font-size:14px}.topbar{height:66px}.brand{font-size:11px}.brand-mark{width:30px;height:30px}.main-nav{display:none}.account-button{padding:9px 11px;font-size:11px}.hero{display:flex;flex-direction:column-reverse;min-height:0}.hero-image{min-height:310px;background-position:center 55%}.hero-copy{padding:42px 8% 35px;min-height:350px}.hero-footnote{padding-top:28px}h1{font-size:61px}.hero-text{font-size:13px}.campaign-section{padding:59px 6% 65px}.section-heading h2,.store-copy h2{font-size:34px}.campaign-grid{grid-template-columns:1fr;gap:14px}.campaign-visual{height:220px}.campaign-content{padding:17px}.store-section{grid-template-columns:1fr}.store-image{min-height:285px}.store-copy{padding:49px 8% 56px}.faq-section{padding:61px 8%}.results-section{padding:56px 8%;grid-template-columns:1fr;gap:23px}.faq-heading h2{font-size:33px}.footer-main{align-items:flex-start;flex-wrap:wrap}.footer-main>p{order:3;width:100%;font-size:17px}.footer-contact{margin-left:auto}.footer-bottom{align-items:flex-start;flex-direction:column;gap:12px}.footer-bottom div{flex-wrap:wrap;gap:14px}.auth-dialog,.participation-dialog{padding:30px 24px}.number-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.legal-page{width:86%;margin:48px auto 70px}.legal-page h1,.reset-page h1{font-size:41px}.reset-page{margin:56px auto}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}

/* Interface refresh: lighter surfaces, clearer hierarchy and simpler campaign cards. */
:root{--ink:#202923;--muted:#69756d;--paper:#f7f8f6;--green:#17634a;--green-soft:#eaf1ec;--orange:#d8794d;--line:#e4e9e5}
body{background:var(--paper);color:var(--ink);line-height:1.6}
.topbar{height:76px;padding:0 max(5%,calc((100% - 1200px)/2));background:#fff;border-bottom:1px solid #edf0ed}
.brand{letter-spacing:1.1px}.brand-mark{border-radius:10px;background:var(--green);color:#fff;border:0}
.main-nav{gap:30px;color:#526158}.main-nav a{transition:color .18s}.account-button{border:0;border-radius:8px;background:var(--green);color:#fff;font-weight:700}.account-button span{color:#dcebe1}
.hero{min-height:500px;grid-template-columns:48% 52%;background:#f0f4f0}
.hero-copy{padding:76px 8% 44px max(10%,calc((100vw - 1200px)/2))}
.eyebrow{letter-spacing:1.1px;color:var(--green)}
h1{font-size:clamp(48px,5.2vw,68px);line-height:1.04;letter-spacing:-1.5px}h1 em{color:var(--green)}
.hero-text{font-size:15px;line-height:1.75}.text-link{border:0;color:var(--green)}.text-link span{color:var(--green)}
.hero-image{min-height:500px;border-radius:0 0 0 28px}.hero-image:after{background:linear-gradient(0deg,rgba(14,31,22,.42),transparent 35%)}
.hero-side-note,.hero-footnote{display:none}
.campaign-section{padding:78px max(5%,calc((100% - 1200px)/2)) 88px;background:#fff}
.section-heading{align-items:end;margin-bottom:30px}.section-heading h2,.faq-heading h2,.store-copy h2{font-family:var(--body);font-size:clamp(27px,3vw,36px);font-weight:700;letter-spacing:-1px;line-height:1.2}
.section-intro{font-size:13px;line-height:1.7}
.campaign-grid{gap:20px}.campaign-card{overflow:hidden;border:1px solid #e8ece9;border-radius:14px;box-shadow:0 5px 20px #15271b0a;transition:transform .2s,box-shadow .2s}.campaign-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #15271b14}
.campaign-visual{height:230px;background-color:#f0f2ef}.campaign-state{top:12px;left:12px;padding:7px 10px;border-radius:6px;background:#17634a;font-size:10px}.campaign-state.pending{background:#fff}
.campaign-content{padding:20px}.campaign-content h3{font-family:var(--body);font-size:20px;font-weight:700;letter-spacing:-.4px}.campaign-description{min-height:0;margin-bottom:18px;font-size:13px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.campaign-meta{font-size:12px}.campaign-legal{font-size:11px}.campaign-action{padding:12px;border-radius:7px;background:var(--green);color:#fff;cursor:pointer}.campaign-action:disabled{background:#edf0ed;color:#7b857e}
.store-section{background:var(--green-soft)}.store-image{min-height:390px}.store-copy{padding:70px 12%}.store-copy h2{margin-bottom:16px}.store-copy>p:not(.eyebrow){font-size:14px;line-height:1.8}
.faq-section{padding:76px max(7%,calc((100% - 1080px)/2))}.faq-list summary{font-size:14px}.faq-list details p{font-size:13px;line-height:1.7}
.results-section{padding:58px max(7%,calc((100% - 1080px)/2));background:#f0f4f0}.results-section h2{font-family:var(--body);font-size:30px;font-weight:700;letter-spacing:-.7px}.result-item strong{font-family:var(--body);font-size:16px;font-weight:600}
.footer{background:#173b2e}.footer-bottom{font-size:10px}
.auth-dialog,.participation-dialog{border-radius:16px}.submit-button{border-radius:8px;background:var(--green)}
@media(max-width:850px){.topbar{padding:0 5%}.hero-copy{padding:65px 8%}.campaign-section{padding:64px 5%}.campaign-visual{height:205px}}
@media(max-width:600px){.topbar{height:64px}.brand{font-size:10px}.brand-mark{border-radius:8px}.hero-image{min-height:250px;border-radius:0}.hero-copy{min-height:0;padding:34px 7% 38px}.hero h1{font-size:48px;margin-bottom:14px}.hero-text{font-size:14px;margin-bottom:18px}.campaign-section{padding:48px 5% 58px}.section-heading h2,.store-copy h2{font-size:28px}.campaign-grid{gap:16px}.campaign-visual{height:220px}.campaign-content{padding:17px}.campaign-content h3{font-size:19px}.campaign-description{-webkit-line-clamp:3}.store-image{min-height:240px}.store-copy{padding:42px 7%}.faq-section{padding:50px 7%}.results-section{padding:46px 7%}.results-section h2{font-size:26px}.account-button{padding:9px 11px}}

/* Credistory brand identity */
:root{--ink:#202020;--muted:#656565;--paper:#f4f4f2;--green:#202020;--green-soft:#eeeeeb;--orange:#d1a900;--line:#deded8;--brand-yellow:#ffd51f}
body{color:var(--ink);background:var(--paper)}
.brand{gap:10px;letter-spacing:.2px;font-size:16px;font-weight:700;color:#202020}
.brand small{font-size:8px;letter-spacing:1.35px;color:#555}
.brand-mark{width:42px;height:42px;display:block;border:0;border-radius:10px;object-fit:cover;background:var(--brand-yellow)}
.brand-mark:not(img){font-size:0;background-image:url('/assets/credistory-mark.svg');background-position:center;background-size:cover;border:0;border-radius:10px}
.topbar{background:#fff;border-bottom-color:#e7e7e2}
.main-nav a:hover,.footer a:hover,.text-link,.text-link span,.account-button span{color:#9a7c00}
.eyebrow{color:#716000}
h1 em{color:#806800}
.account-button,.submit-button{background:var(--brand-yellow);color:#202020;border:1px solid #edc500;font-weight:700}
.account-button:hover,.submit-button:hover{background:#f2c900}
.hero{background:#f0f0ed}
.hero-copy{background:#f0f0ed}
.campaign-section{background:#fff}
.campaign-state{background:var(--brand-yellow);color:#202020}
.campaign-state.pending{background:#eee;color:#444}
.campaign-action{background:var(--brand-yellow);color:#202020;font-weight:700}
.campaign-action:hover:not(:disabled){background:#f2c900}
.campaign-action:disabled{background:#e9e9e5;color:#777}
.store-section{background:#ecece8}
.results-section{background:#f0f0ed}
.footer{background:#202020;color:#f7f7f3}
.brand-light,.brand-light small{color:#fff}
.auth-dialog,.participation-dialog{background:#f8f8f5}
.auth-dialog input:focus,.participation-dialog input:focus{outline-color:#b39400}
@media(max-width:600px){.brand{font-size:13px}.brand-mark{width:36px;height:36px}.brand small{font-size:7px;letter-spacing:1px}}

/* PWA installation prompt */
.pwa-install-banner[hidden]{display:none}
.pwa-install-banner{position:fixed;z-index:1000;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%);width:min(620px,calc(100vw - 28px));display:flex;align-items:center;gap:13px;padding:14px 15px;border:1px solid #e4d37d;border-radius:14px;background:#fffef8;box-shadow:0 12px 40px #2020202b;color:#202020}
.pwa-install-banner>img{width:42px;height:42px;flex:none;border-radius:10px}
.pwa-install-copy{display:grid;gap:2px;flex:1;line-height:1.35}
.pwa-install-copy strong{font-size:13px}
.pwa-install-copy span{color:#666;font-size:11px}
.pwa-install-action{flex:none;padding:10px 15px;border:0;border-radius:8px;background:#ffd51f;color:#202020;font-size:12px;font-weight:700;cursor:pointer}
.pwa-install-dismiss{align-self:flex-start;padding:0 3px;border:0;background:transparent;color:#656565;font-size:20px;line-height:1;cursor:pointer}
.pwa-install-help{position:fixed;width:min(420px,calc(100vw - 32px));padding:32px;border:0;border-radius:16px;background:#fffef8;color:#202020;box-shadow:0 18px 60px #0004}
.pwa-install-help::backdrop{background:#20202099}
.pwa-install-help h2{margin:10px 0;font-family:var(--display);font-size:30px;font-weight:500}
.pwa-install-help>p:last-child{color:#565656;font-size:14px;line-height:1.7}
.site-notice[hidden]{display:none}
.site-notice{position:fixed;z-index:1200;top:calc(92px + env(safe-area-inset-top));right:max(18px,calc((100vw - 640px)/2));max-width:calc(100vw - 36px);padding:14px 19px;border:1px solid #e4c700;border-radius:10px;background:#202020;color:#fff;font-size:13px;font-weight:600;box-shadow:0 8px 28px #0003;animation:notice-in .2s ease-out}
@keyframes notice-in{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:520px){.pwa-install-banner{gap:9px;padding:12px}.pwa-install-banner>img{width:36px;height:36px}.pwa-install-copy strong{font-size:11px}.pwa-install-copy span{font-size:10px}.pwa-install-action{padding:9px 11px;font-size:11px}}
.number-option.own-reservation{position:relative;border:2px solid #d7b900;background:#fff6bd;color:#202020;cursor:pointer;font-weight:700}
.number-option.own-reservation::after{content:'↻';position:absolute;top:1px;right:4px;color:#806800;font-size:9px}
.pix-countdown{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border:1px solid #e7d86b;border-radius:7px;background:#fff9d8;color:#514500;font-size:12px!important;font-weight:600}
.pix-countdown[hidden]{display:none}
.pix-countdown strong{font-variant-numeric:tabular-nums;font-size:15px}
.pix-countdown.expired{border-color:#d8b7ac;background:#fff0eb;color:#823f2c}
#payment-status.payment-confirmed{padding:12px;border-radius:8px;background:#e7f4e9;color:#17634a;font-size:13px;font-weight:700}
