:root{--cursor-default:default;--cursor-select:pointer;--cursor-text:text;--cursor-grab-open:grab;--cursor-grab-closed:grabbing;--cursor-not-allowed:not-allowed;--cursor-move:move;--cursor-drop-valid:copy;--cursor-drop-invalid:no-drop}@media (any-hover:hover) and (any-pointer:fine){:root{--cursor-default:url(/cursors/pointer.svg) 4 1, default;--cursor-select:url(/cursors/hand-selector.svg) 13 1, pointer;--cursor-text:url(/cursors/text-selector.svg) 16 16, text;--cursor-grab-open:url(/cursors/open-grab.svg) 16 16, grab;--cursor-grab-closed:url(/cursors/closed-hand.svg) 16 16, grabbing;--cursor-not-allowed:url(/cursors/not-allowed.svg) 16 16, not-allowed;--cursor-move:url(/cursors/move.svg) 16 16, move;--cursor-drop-valid:url(/cursors/valid-drop.svg) 13 5, copy;--cursor-drop-invalid:url(/cursors/invalid-drop.svg) 13 5, no-drop}:root[data-cursor-size="50"]{--cursor-default:url(/cursors/16/pointer.svg) 2 1, default;--cursor-select:url(/cursors/16/hand-selector.svg) 7 1, pointer;--cursor-text:url(/cursors/16/text-selector.svg) 8 8, text;--cursor-grab-open:url(/cursors/16/open-grab.svg) 8 8, grab;--cursor-grab-closed:url(/cursors/16/closed-hand.svg) 8 8, grabbing;--cursor-not-allowed:url(/cursors/16/not-allowed.svg) 8 8, not-allowed;--cursor-move:url(/cursors/16/move.svg) 8 8, move;--cursor-drop-valid:url(/cursors/16/valid-drop.svg) 7 3, copy;--cursor-drop-invalid:url(/cursors/16/invalid-drop.svg) 7 3, no-drop}:root[data-cursor-size="75"]{--cursor-default:url(/cursors/24/pointer.svg) 3 1, default;--cursor-select:url(/cursors/24/hand-selector.svg) 10 1, pointer;--cursor-text:url(/cursors/24/text-selector.svg) 12 12, text;--cursor-grab-open:url(/cursors/24/open-grab.svg) 12 12, grab;--cursor-grab-closed:url(/cursors/24/closed-hand.svg) 12 12, grabbing;--cursor-not-allowed:url(/cursors/24/not-allowed.svg) 12 12, not-allowed;--cursor-move:url(/cursors/24/move.svg) 12 12, move;--cursor-drop-valid:url(/cursors/24/valid-drop.svg) 10 4, copy;--cursor-drop-invalid:url(/cursors/24/invalid-drop.svg) 10 4, no-drop}:root[data-cursor-size="125"]{--cursor-default:url(/cursors/40/pointer.svg) 5 1, default;--cursor-select:url(/cursors/40/hand-selector.svg) 16 1, pointer;--cursor-text:url(/cursors/40/text-selector.svg) 20 20, text;--cursor-grab-open:url(/cursors/40/open-grab.svg) 20 20, grab;--cursor-grab-closed:url(/cursors/40/closed-hand.svg) 20 20, grabbing;--cursor-not-allowed:url(/cursors/40/not-allowed.svg) 20 20, not-allowed;--cursor-move:url(/cursors/40/move.svg) 20 20, move;--cursor-drop-valid:url(/cursors/40/valid-drop.svg) 16 6, copy;--cursor-drop-invalid:url(/cursors/40/invalid-drop.svg) 16 6, no-drop}:root[data-cursor-size="150"]{--cursor-default:url(/cursors/48/pointer.svg) 6 2, default;--cursor-select:url(/cursors/48/hand-selector.svg) 20 2, pointer;--cursor-text:url(/cursors/48/text-selector.svg) 24 24, text;--cursor-grab-open:url(/cursors/48/open-grab.svg) 24 24, grab;--cursor-grab-closed:url(/cursors/48/closed-hand.svg) 24 24, grabbing;--cursor-not-allowed:url(/cursors/48/not-allowed.svg) 24 24, not-allowed;--cursor-move:url(/cursors/48/move.svg) 24 24, move;--cursor-drop-valid:url(/cursors/48/valid-drop.svg) 20 8, copy;--cursor-drop-invalid:url(/cursors/48/invalid-drop.svg) 20 8, no-drop}}html{cursor:var(--cursor-default)}:where(p,blockquote,pre,code,kbd,samp,h1,h2,h3,h4,h5,h6,li,dt,dd,legend,figcaption,caption,th,td,.presentation-text-binding,[data-selectable-text=true]){cursor:var(--cursor-text)}:where(a[href],a[href] *,button:not(:disabled),button:not(:disabled) *,select:not(:disabled),summary,summary *,label:not([aria-disabled=true]),label:not([aria-disabled=true]) *,[role=button]:not([aria-disabled=true]),[role=button]:not([aria-disabled=true]) *,[role=link]:not([aria-disabled=true]),[role=link]:not([aria-disabled=true]) *,[role=option]:not([aria-disabled=true]),[role=option]:not([aria-disabled=true]) *,[role=tab]:not([aria-disabled=true]),[role=tab]:not([aria-disabled=true]) *,input[type=button]:not(:disabled),input[type=submit]:not(:disabled),input[type=reset]:not(:disabled),input[type=checkbox]:not(:disabled),input[type=radio]:not(:disabled),input[type=file]:not(:disabled)){cursor:var(--cursor-select)}:where(textarea:not(:disabled),input:not([type]):not(:disabled),input[type=email]:not(:disabled),input[type=number]:not(:disabled),input[type=password]:not(:disabled),input[type=search]:not(:disabled),input[type=tel]:not(:disabled),input[type=text]:not(:disabled),input[type=url]:not(:disabled),[contenteditable]:not([contenteditable=false])){cursor:var(--cursor-text)}:is([draggable=true],[data-cursor=grab]),:is([draggable=true],[data-cursor=grab]) *{cursor:var(--cursor-grab-open)!important}:is([draggable=true]:active,[aria-grabbed=true],[data-cursor=grabbing]),:is([draggable=true]:active,[aria-grabbed=true],[data-cursor=grabbing]) *{cursor:var(--cursor-grab-closed)!important}:is([data-movable=true],[data-cursor=move]),:is([data-movable=true],[data-cursor=move]) *{cursor:var(--cursor-move)!important}:is([data-drop-state=invalid],[data-cursor=drop-invalid]),:is([data-drop-state=invalid],[data-cursor=drop-invalid]) *{cursor:var(--cursor-drop-invalid)!important}:is([data-drop-state=valid],[data-cursor=drop-valid]),:is([data-drop-state=valid],[data-cursor=drop-valid]) *{cursor:var(--cursor-drop-valid)!important}:is(:disabled,[aria-disabled=true],label:has(:disabled),label:has([aria-disabled=true])),:is(:disabled,[aria-disabled=true],label:has(:disabled),label:has([aria-disabled=true])) *{cursor:var(--cursor-not-allowed)!important}html[data-cursor-dragging=true][data-cursor-drop-state=invalid],html[data-cursor-dragging=true][data-cursor-drop-state=invalid] body,html[data-cursor-dragging=true][data-cursor-drop-state=invalid] body *{cursor:var(--cursor-drop-invalid)!important}html[data-cursor-dragging=true][data-cursor-drop-state=valid],html[data-cursor-dragging=true][data-cursor-drop-state=valid] body,html[data-cursor-dragging=true][data-cursor-drop-state=valid] body *{cursor:var(--cursor-drop-valid)!important}
.header-promo{position:relative}.header-promo__trigger{color:var(--champagne);cursor:pointer;font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;background:linear-gradient(135deg,#e0b85a1a,#10111bcc);border:1px solid #e0b85a61;justify-content:center;align-items:center;gap:.45rem;min-height:39px;padding:.55rem .72rem;font-size:.72rem;transition:background .18s,border-color .18s,box-shadow .18s;display:inline-flex}.header-promo__trigger:hover,.header-promo__trigger:focus-visible,.header-promo__trigger[aria-expanded=true]{background:linear-gradient(135deg,#e0b85a38,#141521f0);border-color:#f1d48ab8;box-shadow:0 0 24px #e0b85a1a}.header-promo__popover{border:1px solid var(--line-strong);max-height:calc(100svh - var(--header-height) - 1.65rem);right:clamp(1rem,3vw,2.5rem);top:calc(var(--header-height) + .65rem);transform-origin:100% 0;z-index:120;background:linear-gradient(145deg,#e0b85a12,#0000 65%),#0e0e16;flex-direction:column;width:min(400px,100vw - 2rem);padding:1.1rem;display:flex;position:fixed;box-shadow:0 24px 42px #00000085}.header-promo__popover>header{flex-shrink:0;align-items:center;gap:.7rem;display:flex}.header-promo__seal{border:1px solid var(--line);color:var(--champagne);background:#e0b85a14;flex:0 0 39px;justify-content:center;align-items:center;height:39px;display:flex}.header-promo__popover>header>div{gap:.2rem;min-width:0;display:grid}.header-promo__popover header small{color:var(--gold-soft);font-family:var(--mono);letter-spacing:.11em;text-transform:uppercase;font-size:.6rem}.header-promo__popover header strong{color:var(--ivory);white-space:nowrap;font-size:.95rem;font-weight:500}.header-promo__popover header>button{color:var(--text-soft);cursor:pointer;background:0 0;border:0;flex:0 0 32px;place-items:center;height:32px;margin-left:auto;display:grid}.header-promo__hint{color:var(--text-soft);flex-shrink:0;margin:1rem 0 .85rem;font-size:.75rem}.header-promo__codes{overscroll-behavior:contain;scrollbar-gutter:stable;gap:.85rem;min-height:0;display:grid;overflow-y:auto}.header-promo__group{border:1px solid var(--line);background:#ffffff05;min-width:0;padding:.8rem}.header-promo__group h3{color:var(--ivory);justify-content:space-between;align-items:center;gap:.7rem;margin:0 0 .7rem;font-size:.85rem;font-weight:500;line-height:1.5;display:flex}.header-promo__group h3>span{overflow-wrap:anywhere;min-width:0}.header-promo__group h3 small{color:#9fe3b6;flex-shrink:0;font-size:.65rem}.header-promo__copy{color:var(--champagne);cursor:pointer;text-align:left;background:#e0b85a0f;border:1px solid #e0b85a59;align-items:stretch;width:100%;min-height:49px;padding:0;transition:background .22s,border-color .22s,color .22s,box-shadow .22s;display:flex}.header-promo__copy code{font-family:var(--mono);overflow-wrap:anywhere;flex:1;align-self:center;min-width:0;padding:.7rem .8rem;font-size:.88rem;line-height:1.6}.header-promo__copy-icon{border-left:1px solid;flex:0 0 46px;place-items:center;display:grid}.header-promo__copy:hover{border-color:var(--gold-soft);background:#e0b85a21}.header-promo__group.is-copied .header-promo__copy{color:#9fe3b6;background:#4ad28b21;border-color:#70e7a4bf;box-shadow:0 0 22px #4ad28b24,inset 0 0 16px #4ad28b0f}.header-promo__copy-error{color:#ff9ca5;margin:.6rem 0;font-size:.72rem}.header-promo__age{border:1px solid var(--line-faint);background:#ffffff06;gap:.45rem;margin-top:.75rem;padding:.7rem .8rem;display:grid}.header-promo__age>span{color:var(--text-soft);font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:.4rem;font-size:.65rem;display:flex}.header-promo__age>strong{color:var(--ivory);font-family:var(--mono);font-size:.88rem;font-weight:500}.header-promo__message{color:var(--text-soft);margin:1.1rem 0;font-size:.8rem;line-height:1.6}.header-promo__message p{margin:0 0 .6rem}.header-promo__message button{border:1px solid var(--line);color:var(--champagne);cursor:pointer;background:0 0;min-height:36px;padding:.4rem .8rem}.header-promo__message.is-error{color:#ff9ca5}.header-promo__empty{border:1px solid var(--line-faint);text-align:center;background:#e0b85a09;margin-bottom:0;padding:1.1rem}.header-promo__manage{border-top:1px solid var(--line-faint);color:var(--text-soft);flex-shrink:0;justify-content:space-between;align-items:center;margin-top:1rem;padding-top:.8rem;font-size:.72rem;display:flex}.header-promo__manage:hover{color:var(--champagne)}@media (min-width:1101px){.site-header:has(.header-promo){grid-template-columns:minmax(180px,1fr) auto minmax(max-content,1fr);column-gap:.6rem}}@media (max-width:560px){.header-promo__trigger{min-width:36px;padding:.55rem}.header-promo__trigger>span{display:none}.header-access__trigger{width:39px;min-width:39px;padding:0}.header-access__trigger>span,.header-access__trigger>svg:last-child{display:none}.header-promo__popover{padding:.9rem}.header-promo__popover header strong{font-size:.82rem}.header-promo__popover>header{gap:.5rem}.header-promo__seal{flex-basis:32px;height:32px}.header-promo__group{padding:.65rem}}@media (prefers-reduced-motion:reduce){.header-promo__trigger,.header-promo__copy{transition:none}}
.promo-admin-panel{background:linear-gradient(120deg, #e0b85a09, transparent 65%), var(--panel-strong);border:1px solid var(--line);margin-bottom:30px;padding:28px}.promo-admin-panel__header{border-bottom:1px solid var(--line-faint);justify-content:space-between;align-items:flex-start;gap:24px;padding-bottom:22px;display:flex}.promo-admin-panel__header small,.promo-admin-panel__mode legend,.promo-admin-panel label>span{color:var(--gold-soft);font-family:var(--mono);letter-spacing:.09em;text-transform:uppercase;font-size:11px}.promo-admin-panel__header h2{font-family:var(--display);margin:8px 0 10px;font-size:clamp(27px,3.2vw,40px);font-weight:400}.promo-admin-panel__header p,.promo-admin-panel__hint,.promo-admin-panel__empty,.promo-admin-panel__readonly{color:var(--text-soft);margin:0;font-size:13px;line-height:1.6}.promo-admin-panel button{border:1px solid var(--line);color:var(--text);font-family:var(--mono);background:#e0b85a0a;flex-shrink:0;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:9px 14px;font-size:12px;display:inline-flex}.promo-admin-panel button:hover:not(:disabled),.promo-admin-panel button:focus-visible{border-color:var(--gold-soft);color:var(--champagne);background:#e0b85a1a}.promo-admin-panel button:disabled,.promo-admin-panel fieldset:disabled{opacity:.5}.promo-admin-panel button:disabled{cursor:not-allowed}.promo-admin-panel__codes{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px;display:grid}.promo-admin-panel__entry{border:1px solid var(--line);background:#ffffff05;min-width:0;padding:17px}.promo-admin-panel__entry.is-editing{border-color:var(--gold-soft)}.promo-admin-panel__entry>header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.promo-admin-panel__entry h3{overflow-wrap:anywhere;margin:6px 0 0;font-size:15px;line-height:1.5}.promo-admin-panel__entry-actions{gap:6px;display:flex}.promo-admin-panel__entry-actions button{width:40px;min-height:40px;padding:9px}.promo-admin-panel__entry-actions button.is-danger{color:var(--bad);border-color:#e38c8740}.promo-admin-panel__entry-actions button.is-danger:hover:not(:disabled){border-color:var(--bad);color:var(--bad);background:#e38c871a}.promo-admin-panel__entry>code{border:1px solid var(--line-faint);color:var(--champagne);font-family:var(--mono);overflow-wrap:anywhere;white-space:pre-wrap;background:#00000040;padding:12px;font-size:14px;display:block}.promo-admin-panel__expiry{color:var(--text-soft);font-family:var(--mono);flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0 0;font-size:12px;display:flex}.promo-admin-panel__expiry strong{color:var(--text);margin-left:auto}.promo-admin-panel__editor{border-top:1px solid var(--line-faint);scroll-margin-top:calc(var(--header-height) + 20px);margin-top:24px;padding-top:22px}.promo-admin-panel__editor>h3{margin:0 0 18px;font-size:16px}.promo-admin-panel fieldset{border:0;min-width:0;margin:0;padding:0}.promo-admin-panel label{gap:8px;min-width:0;display:grid}.promo-admin-panel__fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.promo-admin-panel input{background:var(--obsidian);border:1px solid var(--line);color:var(--text);font-family:var(--body);width:100%;min-width:0;min-height:44px;padding:10px 12px;font-size:14px}.promo-admin-panel input:focus{border-color:var(--gold-soft);outline:1px solid var(--gold-soft);outline-offset:2px}.promo-admin-panel fieldset.promo-admin-panel__mode{max-width:560px;margin-top:18px}.promo-admin-panel__mode legend{margin-bottom:10px}.promo-admin-panel__mode-buttons{flex-wrap:wrap;gap:10px;display:flex}.promo-admin-panel__mode-buttons label{border:1px solid var(--line);color:var(--text-soft);cursor:pointer;align-items:center;gap:9px;min-height:44px;padding:10px 12px;display:flex}.promo-admin-panel__mode-buttons label.is-selected{border-color:var(--line-strong);color:var(--champagne);background:#e0b85a12}.promo-admin-panel__mode-buttons label:focus-within{border-color:var(--gold-soft)}.promo-admin-panel__mode-buttons label>span{color:inherit;font-family:var(--body);letter-spacing:normal;text-transform:none;font-size:14px}.promo-admin-panel__mode-buttons input{accent-color:var(--gold-soft);cursor:pointer;flex-shrink:0;width:16px;height:16px;min-height:0;margin:0;padding:0}.promo-admin-panel__duration-fields{grid-template-columns:repeat(2,minmax(0,150px));gap:12px;margin-top:16px;display:grid}.promo-admin-panel__hint{margin-top:12px}.promo-admin-panel__actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.promo-admin-panel button.promo-admin-panel__primary{border-color:var(--line-strong);color:var(--champagne);background:#e0b85a1a}.promo-admin-panel__message{border:1px solid;justify-content:space-between;align-items:center;gap:16px;margin:20px 0 0;padding:12px 15px;font-size:13px;display:flex}.promo-admin-panel__message p{margin:0}.promo-admin-panel__message.is-error{color:var(--bad);background:#e38c870a;border-color:#e38c8740}.promo-admin-panel__message.is-notice{color:var(--good);background:#9bcf9d0d;border-color:#9bcf9d4d}.promo-admin-panel__empty,.promo-admin-panel__readonly{grid-column:1/-1;padding:20px 0}.promo-admin-panel__readonly{align-items:center;gap:9px;display:flex}@media (max-width:760px){.promo-admin-panel{padding:20px}.promo-admin-panel__header{flex-wrap:wrap;gap:16px}.promo-admin-panel__codes,.promo-admin-panel__fields{grid-template-columns:minmax(0,1fr)}.promo-admin-panel__mode-buttons{flex-direction:column}.promo-admin-panel__message{flex-wrap:wrap;align-items:flex-start}}
