:root{color:#302521;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--red:#b91f29;--red-deep:#8b1822;--gold:#f3cd76;--cream:#faf7f1;--ink:#302521;--muted:#766a63;background:#faf7f1;font-family:Trebuchet MS,Arial,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible{outline-offset:4px;outline:3px solid #b47913}button{touch-action:manipulation}::selection{color:#302521;background:#f3cd76}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}.site-shell{max-width:1600px;margin:auto}.site-header{border-bottom:1px solid #e9e1d6;justify-content:space-between;align-items:center;gap:24px;min-height:98px;padding:18px 5%;display:flex}.brand{align-items:center;gap:12px;text-decoration:none;display:flex}.brand img{object-fit:cover;border-radius:12px}.brand>span{font-family:Georgia,serif;font-size:15px;line-height:1.1}.brand strong{font-size:26px;font-weight:700;display:block}.header-label{color:var(--red-deep);align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.header-label svg{width:19px}.auth-layout{background:#fffdf9;border:1px solid #e9e0d4;border-radius:22px;grid-template-columns:1.05fr 1fr;align-self:start;margin:30px 3.5% 0;display:grid;overflow:hidden;box-shadow:0 16px 60px #50312408}.campaign{background:#48160f;align-items:center;display:grid;position:relative;overflow:hidden}.campaign img{width:100%;height:auto;display:block}.campaign-topline{justify-content:space-between;align-items:center;gap:12px;display:flex}.campaign-badge{letter-spacing:1px;color:#ffe5ad;border:1px solid #f3cd7659;border-radius:30px;align-items:center;gap:7px;padding:9px 11px;font-size:9px;display:flex}.campaign-badge>span{background:var(--gold);border-radius:50%;width:5px;height:5px}.edition{letter-spacing:2px;color:#ffdfab;font-size:9px}.campaign-copy{margin-top:39px}.campaign-eyebrow{letter-spacing:2.3px;color:#ffe2a3;margin:0 0 15px;font-size:10px;font-weight:700}.campaign h1{letter-spacing:-1.6px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(32px,3.35vw,51px);font-weight:400;line-height:1.16}.campaign h1 em{color:#ffe39a;font-weight:400}.campaign-description{color:#fbd9d1;margin:21px 0 0;font-size:13px;line-height:1.8}.prize-display{margin:3px -8px 0;position:relative}.prize-art{width:100%;max-width:580px;margin:auto;display:block}.prize-stamp{text-align:center;color:#ffe7b5;font-size:10px;line-height:1.5;display:block;position:absolute;top:35px;right:0;transform:rotate(8deg)}.prize-stamp svg{width:21px;margin:0 auto 4px;display:block}.prize-stamp strong{font-family:Georgia,serif;font-size:17px;font-style:italic}.appliance{animation:5s ease-in-out infinite appliance-float}.appliance-tv{animation-delay:-.8s}.appliance-washer{animation-delay:-1.6s}.appliance-fryer{animation-delay:-2.4s}.appliance-microwave{animation-delay:-3.2s}.appliance-blender{animation-delay:-4s}.prize-sparkles{animation:4s ease-in-out infinite prize-shimmer}@keyframes appliance-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes prize-shimmer{0%,to{opacity:.5}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.appliance,.prize-sparkles{animation:none}}.participation{border-top:1px solid #f3cd7633;margin-top:auto;padding-top:21px}.participation>p{color:#ffe1a8;letter-spacing:1.7px;margin:0 0 17px;font-size:9px}.participation ol{grid-template-columns:1fr 1.1fr .8fr;gap:12px;margin:0;padding:0;list-style:none;display:grid}.participation li{align-items:center;gap:9px;font-size:10px;display:flex}.step-icon{color:#ffdc94;border:1px solid #f3cd7659;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:37px;display:flex}.step-icon svg{width:18px}.participation small{letter-spacing:1px;color:#eeb6ac;margin-bottom:5px;font-size:8px;display:block}.campaign-footnote{color:#f0c4bd;max-width:370px;margin:23px 0 0;font-size:9px;line-height:1.6}.auth-panel{align-items:center;padding:37px clamp(24px,4.4vw,70px) 26px;display:flex}.auth-content{width:100%;margin:auto}.auth-fields{border:0;min-width:0;margin:0;padding:0}button:disabled{opacity:.65;cursor:wait}.session-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:100svh;padding:24px;display:flex}.session-state .primary-button{max-width:300px}.session-state img{border-radius:16px}.customer-main{max-width:1200px;margin:auto;padding:40px 5%}.customer-welcome{color:#fff8ea;background:linear-gradient(120deg,#a51b26,#731822);border-radius:20px;padding:32px}.customer-welcome .section-kicker{color:#ffe0a1}.customer-welcome h1{overflow-wrap:anywhere;margin:15px 0;font:400 clamp(28px,4vw,44px)/1.2 Georgia,serif}.customer-welcome p{line-height:1.6}.customer-email{color:#ffdcac;overflow-wrap:anywhere}.logout-button{color:var(--red-deep);background:0 0;border:1px solid #cba69a;border-radius:8px;padding:12px 16px;font-weight:700}.invoice-layout{grid-template-columns:1fr 1fr;gap:24px;margin-top:24px;display:grid}.invoice-card{background:#fffdf9;border:1px solid #e2d9cd;border-radius:18px;min-width:0;padding:28px}.invoice-card h2{font:400 30px Georgia,serif}.invoice-card p{color:var(--muted);line-height:1.7}.invoice-note{font-size:13px}.invoice-form{margin:22px 0 6px}.invoice-form .field input{letter-spacing:.06em;height:54px;font-family:ui-monospace,Consolas,monospace;font-size:18px}.invoice-form .field-hint{margin:2px 0 0;display:block}.invoice-form .primary-button{margin-top:6px}.invoice-form .form-message{margin:14px 0 0}.success-message{color:#1d6233;background:#edf7ef;border-color:#b8dcc1}.invoice-list-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.invoice-count{color:var(--muted);font-size:14px}.invoice-loading{padding:20px 0}.invoice-list{gap:12px;margin:8px 0 0;padding:0;list-style:none;display:grid}.invoice-list li{background:#fff;border:1px solid #e9e0d4;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:16px;display:flex}.invoice-list li>div{flex-direction:column;gap:4px;min-width:0;display:flex}.invoice-list li strong{overflow-wrap:anywhere;font-family:ui-monospace,Consolas,monospace;font-size:16px}.invoice-list li span{color:var(--muted);overflow-wrap:anywhere;font-size:13px}.invoice-amount{text-align:right;flex-shrink:0;align-items:flex-end}.invoice-amount strong{color:var(--ink);font-family:inherit}.invoice-list .invoice-badge{color:#1d6233;background:#edf7ef;border-radius:20px;padding:3px 10px;font-size:12px;font-weight:700}@media (width<=420px){.invoice-list li{flex-direction:column;align-items:flex-start}.invoice-amount{text-align:left;align-items:flex-start}}.invoice-empty{text-align:center;padding:20px 0}.invoice-empty>span{width:50px;height:50px;color:var(--red-deep);background:#f4e3dd;border-radius:50%;place-items:center;font-size:28px;display:inline-grid}@media (width<=760px){.invoice-layout{grid-template-columns:1fr}.customer-welcome,.invoice-card{padding:24px}.customer-shell .site-header{flex-wrap:wrap}}.auth-tabs{background:#f1ece4;border:1px solid #ebe3d7;border-radius:10px;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:33px;padding:5px;display:grid}.auth-tabs button{color:#6d6259;background:0 0;border:0;border-radius:7px;padding:11px 8px;font-size:12px;transition:background .15s}.auth-tabs button[aria-pressed=true]{color:var(--red-deep);background:#fffdf9;font-weight:700;box-shadow:0 2px 5px #49312012}.section-kicker{color:#9d762d;letter-spacing:1.45px;font-size:8px;font-weight:700}.form-heading h2{letter-spacing:-.9px;margin:10px 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(28px,2.6vw,37px);font-weight:400}.form-heading>p{color:var(--muted);margin:0 0 26px;font-size:12px;line-height:1.6}.field{flex-direction:column;gap:8px;min-width:0;margin-bottom:17px;display:flex}.field label{color:#51453c;font-size:11px;font-weight:700}.field input{width:100%;min-width:0;color:var(--ink);background:#fffdf9;border:1px solid #e2d9cd;border-radius:7px;height:44px;padding:13px 12px;font-size:12px;transition:border-color .15s,box-shadow .15s;display:block}.field input::placeholder{color:#91867d;opacity:1}.field input:focus{border-color:#b47913;outline:0;box-shadow:0 0 0 3px #b479131a}.password-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.password-input{position:relative}.password-input input{padding-right:42px}.password-toggle{color:#887a6e;background:0 0;border:0;border-radius:7px;place-items:center;width:40px;height:44px;padding:0;display:grid;position:absolute;top:0;right:0}.password-toggle svg{width:17px}.field-hint{color:var(--muted);margin:-6px 0 21px;font-size:10px}.primary-button{background:var(--red);color:#fff;border:1px solid var(--red);border-radius:8px;justify-content:center;align-items:center;gap:17px;width:100%;padding:15px;font-size:13px;font-weight:700;transition:background .15s,transform .15s;display:flex;box-shadow:0 5px 12px #b91f291a}.primary-button svg{width:18px}.primary-button:hover{background:var(--red-deep);transform:translateY(-1px)}.text-button{color:var(--red-deep);font-size:inherit;text-underline-offset:3px;background:0 0;border:0;padding:3px 0;font-weight:700;text-decoration:underline}.text-button:hover{color:#c32a30}.switch-copy{text-align:center;color:var(--muted);margin:20px 0;font-size:11px;line-height:1.8}.switch-copy .text-button{margin-left:5px}.login-help{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:0 0 23px;font-size:10px;display:flex}.login-help>span{color:var(--muted);align-items:center;gap:5px;display:flex}.login-help svg{width:13px}.form-message{color:#624712;overflow-wrap:anywhere;background:#fbf0d9;border:1px solid #e1c997;border-radius:7px;padding:12px;font-size:12px;line-height:1.6}.error-message{color:#9b2026;background:#ffefed;border-color:#e4b5b5}@media (width>=1500px){.campaign h1{font-size:51px}}@media (width<=1100px){.campaign{padding:28px}.edition{display:none}.campaign h1{font-size:38px}.participation ol{grid-template-columns:1fr;gap:12px}.participation small{margin-right:9px;display:inline}.auth-panel{padding:30px}.password-grid{grid-template-columns:1fr;gap:0}}@media (width>=761px){.site-shell{grid-template-rows:auto 1fr;min-height:100svh;padding-bottom:20px;display:grid}.site-header{min-height:72px;padding-top:8px;padding-bottom:8px}.brand img{width:48px;height:48px}.auth-layout{margin-top:14px}.campaign-copy{margin-top:22px}.campaign h1{font-size:clamp(30px,3vw,44px)}.campaign-eyebrow{margin-bottom:10px}.campaign-description{margin-top:12px;line-height:1.65}.prize-art{width:100%;height:clamp(200px,33svh,330px)}.prize-stamp{top:20px}.participation{padding-top:14px}.participation>p{margin-bottom:12px}.participation ol{grid-template-columns:1fr 1.1fr .8fr;gap:8px}.participation li{gap:6px}.participation small{margin:0 0 5px;display:block}.campaign-footnote{margin-top:14px}.auth-panel{padding:20px clamp(24px,3.5vw,56px)}.auth-tabs{margin-bottom:18px}.auth-tabs button{padding-top:9px;padding-bottom:9px}.form-heading h2{margin:8px 0;font-size:32px}.form-heading>p{margin-bottom:18px}.field{gap:6px;margin-bottom:12px}.password-grid{grid-template-columns:1fr 1fr;gap:12px}.field-hint{margin:-2px 0 15px}.primary-button{padding:12px}.switch-copy{margin:12px 0}}@media (width>=761px) and (width<=1000px){.campaign h1{font-size:30px}.participation li{flex-direction:column;align-items:flex-start}.auth-panel{padding-left:22px;padding-right:22px}.password-grid{grid-template-columns:1fr;gap:0}}@media (width>=761px) and (height<=850px){.site-header{min-height:64px;padding-top:6px;padding-bottom:6px}.brand img{width:44px;height:44px}.auth-layout{margin-top:10px}.prize-art{height:clamp(190px,31svh,260px)}.campaign-copy{margin-top:14px}.campaign-description,.campaign-footnote{margin-top:8px}.participation{padding-top:10px}.participation>p{margin-bottom:8px}.auth-panel{padding-top:16px;padding-bottom:16px}.auth-tabs{margin-bottom:12px}.form-heading h2{margin:6px 0;font-size:29px}.form-heading>p{margin-bottom:12px}.field{gap:4px;margin-bottom:9px}.field input{height:40px;padding-top:10px;padding-bottom:10px}.password-toggle{height:40px}.field-hint{margin-bottom:12px}.primary-button{padding-top:10px;padding-bottom:10px}}@media (width<=760px){.site-header{min-height:80px;padding:14px 6%}.brand img{width:45px;height:45px}.brand strong{font-size:23px}.header-label{gap:5px;font-size:10px}.auth-layout{border-radius:18px;grid-template-columns:1fr;margin:18px 4% 0}.campaign-copy{margin-top:27px}.campaign h1{letter-spacing:-1px;font-size:clamp(32px,7vw,46px)}.campaign-description{max-width:340px;font-size:12px}.prize-display{width:calc(100% + 32px);margin:12px -16px}.prize-stamp{top:25px;right:-4px}.participation ol{grid-template-columns:1fr 1fr 1fr;gap:8px}.participation li{flex-direction:column;align-items:flex-start;gap:8px;font-size:10px}.participation small{margin-bottom:5px;display:block}.campaign-footnote{max-width:none;margin-top:18px}.auth-panel{padding:30px 24px}.auth-tabs{margin-bottom:28px}.form-heading h2{font-size:32px}.field input{height:48px;font-size:16px}.password-toggle{height:48px}}.header-label{font-size:14px}.campaign-badge,.edition{font-size:11px}.campaign-eyebrow{font-size:12px}.campaign-description{font-size:16px}.prize-stamp,.campaign-footnote{font-size:12px}.participation>p{font-size:11px}.participation li{font-size:13px}.participation small{font-size:10px}.auth-tabs button{font-size:15px}.section-kicker{letter-spacing:1px;font-size:11px}.form-heading>p{font-size:15px}.field label{font-size:14px}.field input{font-size:16px}.field-hint{font-size:12px}.primary-button{font-size:16px}.switch-copy,.login-help,.form-message{font-size:14px}@media (width<=1000px){.participation li{flex-direction:column;align-items:flex-start}}@media (width<=400px){.header-label,.participation li{font-size:12px}.campaign-badge{letter-spacing:.6px;font-size:10px}}.auth-panel--login .form-heading h2{font-size:clamp(32px,3.2vw,46px)}.auth-panel--login .field{gap:10px;margin-bottom:24px}.auth-panel--login .field label{font-size:16px}.auth-panel--login .field input{height:58px;padding:16px 14px}.auth-panel--login .password-input input{padding-right:48px}.auth-panel--login .password-toggle{width:46px;height:58px}.auth-panel--login .primary-button{min-height:54px;font-size:18px}@media (width>=761px){.auth-panel--login{padding:28px clamp(24px,3vw,48px)}.auth-panel--login .auth-content{margin:auto}.auth-panel--login .auth-tabs{margin-bottom:32px}.auth-panel--login .form-heading>p{margin-bottom:28px}.auth-panel--login .switch-copy{margin:22px 0 0}}@media (width>=761px) and (height<=760px){.auth-panel--login{padding-top:20px;padding-bottom:20px}.auth-panel--login .auth-tabs{margin-bottom:22px}.auth-panel--login .form-heading>p{margin-bottom:20px}.auth-panel--login .field{margin-bottom:18px}}
