[hidden]{display:none!important}.lottery-page{max-width:860px;padding:2rem var(--layout-gutter);flex-direction:column;gap:2rem;margin:0 auto;display:flex}.page-hero{padding:2rem 2.5rem}.page-hero h1{color:var(--brand-heading);margin:.4rem 0 0;font-size:2.2rem;font-weight:700}.page-hero p{color:var(--brand-text);margin:.5rem 0 0;font-size:1rem;line-height:1.6}.hero-eyebrow{text-transform:uppercase;letter-spacing:.15em;color:var(--brand-subtle-text);margin:0;font-size:.75rem;font-weight:800}.lottery-card{flex-direction:column;align-items:center;gap:2rem;padding:2rem 2.5rem;display:flex}.lottery-rules{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;display:flex}.rules-badge{background:var(--brand-accent-muted);color:var(--brand-accent-strong);border:1px solid var(--brand-accent);letter-spacing:.02em;border-radius:999px;padding:.35rem .9rem;font-size:.85rem;font-weight:700}.ticket-area{flex-direction:column;align-items:center;gap:1.5rem;display:flex}.ticket-display{border:3px dashed var(--brand-border);text-align:center;background:linear-gradient(135deg,#fff8f0,#fff);border-radius:16px;min-width:280px;padding:2rem 3rem;position:relative}.ticket-display:before{content:"🎄";background:var(--brand-surface);padding:0 .5rem;font-size:1.5rem;position:absolute;top:-14px;left:50%;transform:translate(-50%)}.ticket-label{text-transform:uppercase;letter-spacing:.2em;color:var(--brand-subtle-text);margin-bottom:.75rem;font-size:.7rem;font-weight:700;display:block}.ticket-number{color:var(--brand-heading);letter-spacing:.15em;font-variant-numeric:tabular-nums;font-family:Courier New,Courier,monospace;font-size:3.5rem;font-weight:800;line-height:1;display:block}.ticket-number--empty{color:var(--brand-subtle-text);letter-spacing:.15em}.ticket-reveal{animation:.4s ticketPop}@keyframes ticketPop{0%{opacity:0;transform:scale(.85)}70%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.lottery-controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;display:flex}.btn{font:inherit;border-radius:var(--radius-md);cursor:pointer;border:1px solid #0000;padding:10px 20px;font-size:.95rem;font-weight:600;transition:transform .2s,box-shadow .2s,background-color .2s}.btn:focus-visible{box-shadow:var(--brand-focus-ring);outline:none}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn--accent{background-color:var(--brand-accent);color:var(--brand-accent-contrast-text);border-color:var(--brand-accent)}.btn--accent:hover:not(:disabled){background-color:var(--brand-accent-strong);transform:translateY(-2px)}.btn--secondary{background-color:var(--brand-surface);color:var(--brand-heading);border-color:var(--brand-border)}.btn--secondary:hover:not(:disabled){background-color:var(--brand-background);transform:translateY(-2px)}.btn--sm{padding:7px 14px;font-size:.85rem}.btn--xs{padding:4px 10px;font-size:.8rem}.copy-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;display:flex}.copy-confirm{color:var(--brand-accent-strong);min-height:1.2em;font-size:.9rem;font-weight:600}.history-card{flex-direction:column;gap:1rem;padding:1.5rem 2rem;display:flex}.history-title{color:var(--brand-heading);margin:0;font-size:1rem;font-weight:700}.history-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.history-entry{background:var(--brand-background);border:1px solid var(--brand-border);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:baseline;gap:1rem;padding:.6rem .9rem;display:flex}.history-ts{color:var(--brand-subtle-text);min-width:140px;font-size:.75rem}.history-line{color:var(--brand-heading);letter-spacing:.1em;font-variant-numeric:tabular-nums;font-family:Courier New,Courier,monospace;font-size:1.1rem;font-weight:700}@media (width<=600px){.lottery-page{padding:1rem var(--layout-gutter)}.lottery-card,.page-hero,.history-card,.seo-content-area{padding:1.25rem}.ticket-display{min-width:200px;padding:1.5rem}.ticket-number{font-size:2.5rem}.lottery-controls{flex-direction:column;align-items:stretch}.lottery-controls .btn{justify-content:center;width:100%}.history-entry{flex-direction:column;gap:.2rem}}