:root{--amber-50:#fffbeb;--amber-100:#fef3c7;--amber-200:#fde68a;--amber-300:#fcd34d;--amber-400:#fbbf24;--amber-500:#f59e0b;--amber-600:#d97706;--amber-700:#b45309;--amber-800:#92400e;--amber-900:#78350f;--slate-950:#030712;--slate-900:#0f172a;--slate-800:#1e293b;--slate-700:#334155;--slate-600:#475569;--slate-500:#64748b;--slate-400:#94a3b8;--slate-300:#cbd5e1;--slate-200:#e2e8f0;--slate-100:#f1f5f9;--slate-50:#f8fafc}.whisky-campaign{color:#1b1b19;background:#f7f5f0;min-height:100vh}.whisky-campaign nav{background:#171816;border-color:#2e302b!important}.whisky-campaign nav a{color:#b8b7ae}.whisky-campaign nav a:hover{color:#d7aa6a}.whisky-campaign .text-slate-100,.whisky-campaign .text-slate-200{color:#272722}.whisky-campaign .text-slate-300,.whisky-campaign .text-slate-400{color:#77776f}.whisky-campaign .text-slate-500{color:#96958d}.whisky-campaign .text-amber-300{color:#a17842}.checkout-countdown{background:#f4eee3;border:1px solid #d6c29f;border-radius:7px;padding:9px 12px;font-weight:700;color:#24241f!important}.checkout-expiry-notice{color:#2b2a24;background:#f4eee3;border-left:4px solid #9a6b2f;border-radius:0 7px 7px 0;padding:13px 16px;font-size:14px;line-height:1.5}.checkout-expiry-notice strong{color:#6d481d;font-weight:800}.checkout-section-label{color:#805b2c;font-weight:800;color:#69491f!important}.whisky-campaign .number-badge{color:#5f4528;background:#f0e4d0;border-color:#b9955c;font-weight:700}.whisky-campaign .product-info input{color:#35342e;background:#fffdf9;border-color:#d2cabe}.whisky-campaign .border-slate-800{border-color:#e4e0d8}.whisky-campaign .border-slate-700{border-color:#dedbd3}.whisky-campaign .bg-slate-800{background:#ebe8e1}.whisky-campaign .bg-slate-900{background:#dedbd3}.whisky-campaign .from-amber-600{--tw-gradient-from:#a17842 var(--tw-gradient-from-position)}.whisky-campaign .to-amber-700{--tw-gradient-to:#76552d var(--tw-gradient-to-position)}.whisky-campaign .text-slate-950{color:#fffaf1}.campaign-hero{background:linear-gradient(135deg,#faf9f6 0%,#eeeae2 100%);border-bottom:1px solid #e4e0d8;position:relative;overflow:hidden}.campaign-hero:before{content:"";pointer-events:none;background:radial-gradient(circle,#f59e0b0d 0%,#0000 70%);width:40%;height:100%;position:absolute;top:0;right:-20%}.hero-content{z-index:1;position:relative}.product-image-container{background:linear-gradient(#eeeae2 0%,#faf9f6 100%);border:1px solid #dedbd3;border-radius:12px;position:relative;overflow:hidden}.product-image-container img{object-fit:cover;width:100%;height:auto;display:block}.product-info{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffdf9;border:1px solid #e1ddd5;border-radius:12px;padding:20px}.price-badge{color:#a17842;background:linear-gradient(135deg,#f59e0b33 0%,#d9770626 100%);border:1px solid #f59e0b4d;border-radius:8px;align-items:baseline;gap:4px;padding:12px 20px;font-size:28px;font-weight:600;display:inline-flex}.available-count{color:var(--amber-200);background:linear-gradient(135deg,#f59e0b26 0%,#d977061a 100%);border:1px solid #f59e0b33;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;display:inline-block;color:#3f3d35!important}.number-grid{background:#eeeae2;border:1px solid #dedbd3;border-radius:12px;grid-template-columns:repeat(auto-fit,minmax(60px,1fr));gap:8px;max-height:500px;padding:20px;display:grid;overflow-y:auto}.number-tile{cursor:pointer;border:2px solid #0000;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:72px;font-size:16px;font-weight:600;transition:all .2s;display:flex;position:relative;overflow:hidden}.number-tile:before{content:"";pointer-events:none;background:0 0;transition:background .2s;position:absolute;inset:0}.number-tile.available{color:#6f7068;background:#fffdf9;border-color:#d8d4cb}.number-tile.available:hover{color:var(--amber-300);background:#64748b66;border-color:#f59e0b80;box-shadow:0 0 12px #f59e0b33}.number-tile.selected{border-color:var(--amber-500);color:var(--amber-100);background:linear-gradient(135deg,#f59e0b66 0%,#d977064d 100%);box-shadow:0 0 16px #f59e0b4d}.number-tile.reserved{color:var(--slate-400);cursor:not-allowed;opacity:.6;background:#47556980;border-color:#94a3b833}.number-tile.paid{color:#dcfce7;background:linear-gradient(145deg,#166534f2,#14532dd1);border-color:#4ade80e6;box-shadow:0 0 12px #22c55e38}.number-tile.reserved{color:#ffedd5;opacity:1;background:linear-gradient(145deg,#9a3412f2,#7c2d12d1);border-color:#fb923cf2;box-shadow:0 0 12px #f9731633}.number-tile-value{z-index:1;font-size:18px;font-weight:800;line-height:1;position:relative}.number-tile-name{z-index:1;text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding:0 3px;font-size:10px;font-weight:700;line-height:1.1;position:relative;overflow:hidden}.number-tile.reserved .number-tile-name{color:#fed7aa}.number-tile.paid .number-tile-name{color:#bbf7d0}.number-tile.paid:after{content:"✓";color:var(--amber-300);font-size:12px;font-weight:700;position:absolute;top:2px;right:3px}.selection-summary{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffdf9;border:1px solid #e1ddd5;border-radius:12px;padding:20px}.selected-numbers-display{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.number-badge{color:var(--amber-200);background:linear-gradient(135deg,#f59e0b4d 0%,#d9770633 100%);border:1px solid #f59e0b66;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;display:flex}.number-badge button{color:var(--amber-300);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:14px;display:flex}.total-price{color:var(--amber-300);margin:16px 0;font-size:28px;font-weight:700}.action-button{background:linear-gradient(135deg, var(--amber-600) 0%, var(--amber-700) 100%);width:100%;color:var(--slate-950);cursor:pointer;border:none;border-radius:8px;padding:16px;font-size:16px;font-weight:600;transition:all .3s;box-shadow:0 4px 12px #d977064d}.action-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #d9770666}.action-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.close-campaign-notice{color:#fef3c7;background:linear-gradient(135deg,#78350f7a,#43230ab8);border:1px solid #fbbf248c;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;margin:0 0 24px;padding:16px 18px;display:flex}.close-campaign-notice strong,.close-campaign-notice span{display:block}.close-campaign-notice strong{font-size:14px;font-weight:800}.close-campaign-notice span{color:#fde68a;margin-top:4px;font-size:12px}.close-campaign-notice button{color:#1c1917;cursor:pointer;background:#f59e0b;border:1px solid #fbbf24;border-radius:8px;flex:none;padding:10px 14px;font-size:12px;font-weight:800}.legend{border-top:1px solid #64748b33;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-top:20px;padding-top:20px;display:grid}.legend-item{color:var(--slate-400);align-items:center;gap:8px;font-size:13px;display:flex}.legend-dot{border-radius:3px;width:12px;height:12px}.auth-modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#020617c7;place-items:center;padding:20px;animation:.18s ease-out auth-fade-in;display:grid;position:fixed;inset:0}.auth-modal{background:linear-gradient(145deg,#1e293bfa,#0f172afa);border:1px solid #fbbf2447;border-radius:24px;width:min(100%,460px);max-height:min(720px,100vh - 32px);padding:28px;animation:.22s ease-out auth-slide-up;overflow-y:auto;box-shadow:0 28px 90px #0000007a,inset 0 0 0 1px #ffffff0a}.auth-modal-topline{justify-content:space-between;align-items:center;display:flex}.auth-modal-icon{width:42px;height:42px;color:var(--amber-200);background:#f59e0b24;border:1px solid #fbbf2459;border-radius:13px;place-items:center;font-family:Georgia,serif;font-size:20px;font-weight:700;display:grid}.auth-modal-close{width:36px;height:36px;color:var(--slate-300);cursor:pointer;background:#33415573;border:1px solid #94a3b833;border-radius:50%;place-items:center;font-size:22px;line-height:1;transition:all .16s;display:grid}.auth-modal-close:hover,.auth-modal-close:focus-visible{color:var(--amber-200);background:#f59e0b24;border-color:#fbbf2499}.auth-modal-heading{margin-top:24px}.auth-modal-heading h2{color:var(--slate-50);letter-spacing:-.03em;margin:8px 0;font-family:Georgia,serif;font-size:clamp(28px,5vw,36px);font-weight:500}.auth-modal-heading p:last-child{max-width:350px;color:var(--slate-400);margin:0;font-size:14px;line-height:1.6}.auth-modal-trust{color:var(--slate-300);background:#f59e0b12;border:1px solid #f59e0b29;border-radius:12px;align-items:flex-start;gap:9px;margin:22px 0;padding:12px 14px;font-size:12px;line-height:1.45;display:flex}.auth-modal-trust span:first-child{color:var(--amber-400);font-size:10px;line-height:1.7}.auth-modal-fields{gap:14px;display:grid}.auth-modal-fields label{color:var(--slate-300);gap:7px;font-size:12px;font-weight:600;display:grid}.auth-modal-fields input{box-sizing:border-box;width:100%;color:var(--slate-50);font:inherit;background:#0f172ab8;border:1px solid #94a3b83d;border-radius:11px;outline:none;padding:14px 15px;font-size:15px;transition:all .16s}.auth-modal-fields input::placeholder{color:var(--slate-500)}.auth-modal-fields input:focus{border-color:var(--amber-400);box-shadow:0 0 0 3px #f59e0b24}.auth-modal-submit{color:#172235;background:#dfe7f0;margin-top:20px;box-shadow:0 10px 24px #02061738}.auth-modal-submit:hover:not(:disabled),.auth-modal-submit:focus-visible{color:#101827;background:#f4f7fa;box-shadow:0 12px 28px #0206174d}.auth-modal-submit:disabled{color:#334155;background:#94a3b8}.auth-modal .text-button{text-align:center;width:100%;margin-top:14px;display:block}.auth-error{color:#fecaca;background:#7f1d1d47;border:1px solid #f871714d;border-radius:10px;margin-top:14px;padding:11px 13px;font-size:12px;line-height:1.5}@keyframes auth-fade-in{0%{opacity:0}to{opacity:1}}@keyframes auth-slide-up{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:768px){.number-grid{grid-template-columns:repeat(auto-fit,minmax(50px,1fr));gap:6px;padding:16px}.price-badge{padding:10px 16px;font-size:24px}.total-price{font-size:24px}.product-info{padding:16px}.close-campaign-notice{flex-direction:column;align-items:stretch}.close-campaign-notice button{width:100%}.number-tile{min-height:64px}.number-tile-name{font-size:9px}}
