@zaisma/game-server 1.22.0 → 1.23.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bench/glass.js +135 -40
- package/package.json +1 -1
- package/src/doors.d.ts +68 -0
- package/src/doors.js +24 -0
- package/src/internal.d.ts +1 -0
- package/src/internal.js +1 -0
- package/src/room.d.ts +64 -0
- package/src/room.js +35 -6
package/bench/glass.js
CHANGED
|
@@ -6576,6 +6576,43 @@ function usualDurationMin(durationsMs, speed) {
|
|
|
6576
6576
|
return Math.max(stepMin, Math.ceil(atShareMs / 6e4 / stepMin) * stepMin);
|
|
6577
6577
|
}
|
|
6578
6578
|
|
|
6579
|
+
// ../core/src/sealed-secrets.ts
|
|
6580
|
+
var SEALED_VALUE_PATTERN = /^(first|second)\.([A-Za-z0-9_-]+)\.([A-Za-z0-9_-]+)$/;
|
|
6581
|
+
var encoder = new TextEncoder();
|
|
6582
|
+
var fromBase64Url = (text4) => Uint8Array.from(atob(text4.replace(/-/g, "+").replace(/_/g, "/")), (character) => character.charCodeAt(0));
|
|
6583
|
+
var slotInUse = (keys) => keys.IS_SECOND_STORED_SECRETS_KEY_IN_USE === "true" ? "second" : "first";
|
|
6584
|
+
function slotSecret(keys, slot) {
|
|
6585
|
+
const secret = slot === "first" ? keys.STORED_SECRETS_KEY : keys.SECOND_STORED_SECRETS_KEY;
|
|
6586
|
+
if (!secret) throw new Error(`${slot === "first" ? "STORED_SECRETS_KEY" : "SECOND_STORED_SECRETS_KEY"} isn't set: node scripts/replace-key.mjs setup`);
|
|
6587
|
+
return secret;
|
|
6588
|
+
}
|
|
6589
|
+
function secretBytes(secret) {
|
|
6590
|
+
const bytes = Uint8Array.from(atob(secret), (character) => character.charCodeAt(0));
|
|
6591
|
+
if (bytes.length < 32) throw new Error("A stored secrets key must be 32 random bytes, base64 (openssl rand -base64 32)");
|
|
6592
|
+
return bytes;
|
|
6593
|
+
}
|
|
6594
|
+
function storedSecretsKeyBytes(keys) {
|
|
6595
|
+
const inUse = slotInUse(keys);
|
|
6596
|
+
const other = inUse === "first" ? "second" : "first";
|
|
6597
|
+
const otherSecret = other === "first" ? keys.STORED_SECRETS_KEY : keys.SECOND_STORED_SECRETS_KEY;
|
|
6598
|
+
return [secretBytes(slotSecret(keys, inUse)), ...otherSecret ? [secretBytes(otherSecret)] : []];
|
|
6599
|
+
}
|
|
6600
|
+
var sealingKeys = /* @__PURE__ */ new Map();
|
|
6601
|
+
function sealingKey(secret) {
|
|
6602
|
+
let key = sealingKeys.get(secret);
|
|
6603
|
+
if (!key) {
|
|
6604
|
+
key = crypto.subtle.importKey("raw", secretBytes(secret), "HKDF", false, ["deriveKey"]).then((material) => crypto.subtle.deriveKey({ name: "HKDF", hash: "SHA-256", salt: new Uint8Array(0), info: encoder.encode("sealed_secret") }, material, { name: "AES-GCM", length: 256 }, false, ["encrypt", "decrypt"]));
|
|
6605
|
+
sealingKeys.set(secret, key);
|
|
6606
|
+
}
|
|
6607
|
+
return key;
|
|
6608
|
+
}
|
|
6609
|
+
async function openSecret(keys, sealedValue, place) {
|
|
6610
|
+
const match = SEALED_VALUE_PATTERN.exec(sealedValue);
|
|
6611
|
+
if (!match) throw new Error(`The sealed value at ${place} isn't one`);
|
|
6612
|
+
const opened = await crypto.subtle.decrypt({ name: "AES-GCM", iv: fromBase64Url(match[2]), additionalData: encoder.encode(place) }, await sealingKey(slotSecret(keys, match[1])), fromBase64Url(match[3]));
|
|
6613
|
+
return new TextDecoder().decode(opened);
|
|
6614
|
+
}
|
|
6615
|
+
|
|
6579
6616
|
// ../core/src/game-access.ts
|
|
6580
6617
|
function gameAddress(slug2, addressKind) {
|
|
6581
6618
|
return `${slug2}--${addressKind}`;
|
|
@@ -7263,11 +7300,16 @@ var eventKindsOf = (webhook) => JSON.parse(webhook.event_kinds);
|
|
|
7263
7300
|
var gameSlugsOf = (webhook) => webhook.game_slugs ? JSON.parse(webhook.game_slugs) : null;
|
|
7264
7301
|
var base64 = (bytes) => btoa(String.fromCharCode(...bytes));
|
|
7265
7302
|
async function signatureFor(signingSecret, webhookEventId, timestampSec, body) {
|
|
7266
|
-
const
|
|
7267
|
-
const key = await crypto.subtle.importKey("raw",
|
|
7303
|
+
const secretBytes2 = Uint8Array.from(atob(signingSecret.replace(/^whsec_/, "")), (character) => character.charCodeAt(0));
|
|
7304
|
+
const key = await crypto.subtle.importKey("raw", secretBytes2, { name: "HMAC", hash: "SHA-256" }, false, ["sign"]);
|
|
7268
7305
|
const signature = await crypto.subtle.sign("HMAC", key, new TextEncoder().encode(`${webhookEventId}.${timestampSec}.${body}`));
|
|
7269
7306
|
return `v1,${base64(new Uint8Array(signature))}`;
|
|
7270
7307
|
}
|
|
7308
|
+
async function webhookSigningSecret(keys, webhook) {
|
|
7309
|
+
if (webhook.signing_secret) return webhook.signing_secret;
|
|
7310
|
+
if (!webhook.sealed_signing_secret) throw new Error(`Webhook ${webhook.id} has no signing secret`);
|
|
7311
|
+
return openSecret(keys, webhook.sealed_signing_secret, `webhooks.signing_secret:${webhook.id}`);
|
|
7312
|
+
}
|
|
7271
7313
|
async function webhooksFor(database, ownerId) {
|
|
7272
7314
|
const { results } = await database.prepare("SELECT * FROM webhooks WHERE owner_id = ? ORDER BY created_at_ms").bind(ownerId).all();
|
|
7273
7315
|
return results;
|
|
@@ -7296,11 +7338,11 @@ async function queueDelivery(database, webhook, webhookEventId, eventJson) {
|
|
|
7296
7338
|
await database.prepare("INSERT INTO webhook_deliveries (webhook_id, webhook_event_id, owner_id, event_json, delivery_status, attempt_count, next_attempt_at_ms, created_at_ms) VALUES (?, ?, ?, ?, 'pending', 0, ?, ?)").bind(delivery.webhook_id, delivery.webhook_event_id, delivery.owner_id, delivery.event_json, delivery.next_attempt_at_ms, delivery.created_at_ms).run();
|
|
7297
7339
|
return delivery;
|
|
7298
7340
|
}
|
|
7299
|
-
async function attemptDelivery(database, webhook, due, options = {}) {
|
|
7341
|
+
async function attemptDelivery(database, keys, webhook, due, options = {}) {
|
|
7300
7342
|
const attemptAtMs = now2();
|
|
7301
7343
|
const delivery = await database.prepare("UPDATE webhook_deliveries SET next_attempt_at_ms = ? WHERE webhook_id = ? AND webhook_event_id = ? AND delivery_status = 'pending' AND next_attempt_at_ms <= ? RETURNING *").bind(attemptAtMs + CLAIM_DURATION_MS, due.webhook_id, due.webhook_event_id, attemptAtMs).first();
|
|
7302
7344
|
if (!delivery) return null;
|
|
7303
|
-
const { httpStatusCode, failureMessage } = webhook.destination_kind === "game_server" || webhook.endpoint_url === null ? { httpStatusCode: null, failureMessage: await tryGameServer(webhook, delivery, options.sendToGameServer) } : await
|
|
7345
|
+
const { httpStatusCode, failureMessage } = webhook.destination_kind === "game_server" || webhook.endpoint_url === null ? { httpStatusCode: null, failureMessage: await tryGameServer(webhook, delivery, options.sendToGameServer) } : await signAndTryEndpoint(keys, webhook, webhook.endpoint_url, delivery, attemptAtMs, options.send ?? fetch);
|
|
7304
7346
|
const attemptCount = delivery.attempt_count + 1;
|
|
7305
7347
|
const deliveryStatus = failureMessage === null ? "delivered" : options.isOnlyAttempt || attemptCount >= MAXIMUM_WEBHOOK_ATTEMPT_COUNT ? "failed" : "pending";
|
|
7306
7348
|
const nextAttemptAtMs = deliveryStatus === "pending" ? attemptAtMs + WEBHOOK_RETRY_DELAYS_MIN[attemptCount - 1] * 6e4 : null;
|
|
@@ -7316,6 +7358,16 @@ async function attemptDelivery(database, webhook, due, options = {}) {
|
|
|
7316
7358
|
await database.prepare("UPDATE webhook_deliveries SET delivery_status = ?, attempt_count = ?, next_attempt_at_ms = ?, last_attempt_at_ms = ?, last_http_status_code = ?, failure_message = ? WHERE webhook_id = ? AND webhook_event_id = ?").bind(updated.delivery_status, updated.attempt_count, updated.next_attempt_at_ms, updated.last_attempt_at_ms, updated.last_http_status_code, updated.failure_message, delivery.webhook_id, delivery.webhook_event_id).run();
|
|
7317
7359
|
return updated;
|
|
7318
7360
|
}
|
|
7361
|
+
async function signAndTryEndpoint(keys, webhook, endpointUrl, delivery, attemptAtMs, send) {
|
|
7362
|
+
let signingSecret;
|
|
7363
|
+
try {
|
|
7364
|
+
signingSecret = await webhookSigningSecret(keys, webhook);
|
|
7365
|
+
} catch (error) {
|
|
7366
|
+
console.error(`webhook ${webhook.id}: ${error instanceof Error ? error.message : String(error)}`);
|
|
7367
|
+
return { httpStatusCode: null, failureMessage: "Zaisma couldn't read this webhook's signing secret: replace it with replace_signing_secret." };
|
|
7368
|
+
}
|
|
7369
|
+
return tryEndpoint(endpointUrl, signingSecret, delivery, attemptAtMs, send);
|
|
7370
|
+
}
|
|
7319
7371
|
async function tryEndpoint(endpointUrl, signingSecret, delivery, attemptAtMs, send) {
|
|
7320
7372
|
const timestampSec = Math.floor(attemptAtMs / 1e3);
|
|
7321
7373
|
let httpStatusCode = null;
|
|
@@ -9437,12 +9489,12 @@ var REQUEST_ERROR_TEXT = {
|
|
|
9437
9489
|
};
|
|
9438
9490
|
|
|
9439
9491
|
// src/pass.ts
|
|
9440
|
-
var
|
|
9492
|
+
var encoder2 = new TextEncoder();
|
|
9441
9493
|
var decoder = new TextDecoder();
|
|
9442
9494
|
|
|
9443
9495
|
// src/outside-players.ts
|
|
9444
9496
|
var decoder2 = new TextDecoder();
|
|
9445
|
-
var
|
|
9497
|
+
var encoder3 = new TextEncoder();
|
|
9446
9498
|
|
|
9447
9499
|
// src/webhooks.ts
|
|
9448
9500
|
var WEBHOOK_LIMITS = {
|
|
@@ -9470,7 +9522,7 @@ var relay = defineGameServer({
|
|
|
9470
9522
|
});
|
|
9471
9523
|
|
|
9472
9524
|
// ../core/src/receipts.ts
|
|
9473
|
-
var
|
|
9525
|
+
var encoder4 = new TextEncoder();
|
|
9474
9526
|
|
|
9475
9527
|
// ../core/src/purchase-pin.ts
|
|
9476
9528
|
var PURCHASE_PIN_LIMITS = {
|
|
@@ -11033,7 +11085,7 @@ var MINIFIED_FIRST_PAINT_PIECES = {
|
|
|
11033
11085
|
"sidebar": { sourceSha256: "ee37bead12d714ab0e68ae580809473425759fb7a5cfc09d5f666364076c1571", minifiedText: `(function(){var l=window.zaismaPieces=window.zaismaPieces||{};l.sidebar||(l.sidebar=!0,(function(){function a(e){return getComputedStyle(e).getPropertyValue("--sidebar-is-sheet").trim()==="1"}var y=function(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches};function u(e){return"zaisma-sidebar:"+e.getAttribute("data-sidebar-remember")}function f(e){return document.querySelectorAll('[data-sidebar-button][aria-controls="'+e.id+'"], [data-sidebar-button][aria-controls="'+e.id+'-sheet"]')}function o(e){var t=e.closest(".sidebar-layout"),i=document.getElementById(e.id+"-sheet");f(e).forEach(function(r){r.setAttribute("aria-controls",a(e)?e.id+"-sheet":e.id),r.setAttribute("aria-expanded",String(a(e)?!!(i&&i.open):!!(t&&!t.classList.contains("is-collapsed"))))})}function m(e,t,i){var r=e.closest(".sidebar-layout");if(r){if(i)try{localStorage.setItem(u(e),t?"hidden":"shown")}catch{}var s=r.querySelector(".sidebar-main"),c=i&&!y()&&s,p=c?s.getBoundingClientRect():null,n=c&&t?e.getBoundingClientRect():null;if(n&&(e.style.setProperty("--sidebar-left",n.left+"px"),e.style.setProperty("--sidebar-top",n.top+"px"),e.style.setProperty("--sidebar-width",n.width+"px"),e.style.setProperty("--sidebar-height",n.height+"px"),r.classList.add("is-folding")),r.classList.toggle("is-collapsed",t),o(e),n&&(requestAnimationFrame(function(){e.classList.add("is-leaving")}),setTimeout(function(){r.classList.remove("is-folding"),e.classList.remove("is-leaving"),["--sidebar-left","--sidebar-top","--sidebar-width","--sidebar-height"].forEach(function(b){e.style.removeProperty(b)})},350)),!!c){var h=p.left-s.getBoundingClientRect().left;Math.abs(h)<1||(s.style.transition="none",s.style.transform="translateX("+h+"px)",s.offsetWidth,s.style.transition="transform 0.45s cubic-bezier(.2,.8,.2,1)",s.style.transform="",setTimeout(function(){s.style.removeProperty("transition"),s.style.removeProperty("transform")},500))}}}window.zaismaWatch.each("nav.sidebar[data-sidebar-remember]",function(e){try{var t=localStorage.getItem(u(e));(t==="shown"||t==="hidden")&&m(e,t==="hidden",!1)}catch{}window.zaismaWatch.whenRead(function(){g(e)}),o(e)});function g(e){var t=document.getElementById(e.id+"-sheet");t&&(t.addEventListener("close",function(){o(e);var i=f(e)[0];i&&(!document.activeElement||document.activeElement===document.body||t.contains(document.activeElement))&&i.focus({preventScroll:!0})}),t.addEventListener("click",function(i){i.target.closest&&i.target.closest("a[href]")&&t.close()})),o(e)}document.addEventListener("click",function(e){var t=e.target.closest&&e.target.closest("[data-sidebar-button]");if(t){var i=t.getAttribute("aria-controls").replace(/-sheet$/,""),r=document.getElementById(i),s=document.getElementById(i+"-sheet");if(r){if(a(r)){s&&!s.open&&(s.showModal(),o(r));return}m(r,!r.closest(".sidebar-layout").classList.contains("is-collapsed"),!0)}}});var d=!1;window.addEventListener("resize",function(){d||(d=!0,requestAnimationFrame(function(){d=!1,document.querySelectorAll("nav.sidebar[data-sidebar-remember]").forEach(function(e){var t=document.getElementById(e.id+"-sheet");!a(e)&&t&&t.open&&t.close(),o(e)})}))})})())})();
|
|
11034
11086
|
` },
|
|
11035
11087
|
"started-low": { sourceSha256: "d57b6b4b79c50b53b8f4e6ab4ac3807197c3a0c9b98ea411c1ee0919bf6a0405", minifiedText: '(function(){var e=window.zaismaPieces=window.zaismaPieces||{};e["started-low"]||(e["started-low"]=!0,(function(){function r(t){var i=t.querySelector(".run-wrap"),n=t.querySelector(":scope > .pane-in > .layout-stack")||t.querySelector(":scope > .pane-in"),o=i&&n&&Array.prototype.find.call(n.children,function(s){return s.contains(i)});if(o){var a=parseFloat(getComputedStyle(t).marginTop)||0;t.style.setProperty("--started-low-used",Math.round(o.getBoundingClientRect().bottom+window.scrollY-a)+"px")}}window.zaismaWatch.each(".glass-pane.is-started-low",function(t){r(t),window.zaismaWatch.size(t,function(){r(t)})})})())})();\n' },
|
|
11036
|
-
"placing": { sourceSha256: "
|
|
11088
|
+
"placing": { sourceSha256: "346e98b115b43f35dc26ec7e17f621f871d954e9e999045b7b6ee3a9e44f8b45", minifiedText: '(function(){var B=window.zaismaPieces=window.zaismaPieces||{};B.placing||(B.placing=!0,(function(){window.zaismaIsOnPage=function(t,e){var a=function(l){for(var o=l;o&&o!==document.documentElement;o=o.parentElement){var s=getComputedStyle(o).position;if(s==="fixed"||s==="sticky")return!0}return!1};return!a(t)&&!(e.parentElement&&a(e.parentElement))},window.zaismaPageRoom=function(t){var e={left:0,top:0,right:document.documentElement.clientWidth,bottom:window.innerHeight};return document.querySelectorAll("header, nav.sidebar").forEach(function(a){if(!(t&&a.contains(t))){var l=getComputedStyle(a).position,o=a.getBoundingClientRect();l!=="fixed"&&l!=="sticky"||o.width<1||o.height<1||o.bottom<=0||o.top>=e.bottom||l==="fixed"&&a.offsetParent||(o.width>=e.right/2?e.top=Math.max(e.top,o.bottom):(o.left+o.right)/2<e.right/2?e.left=Math.max(e.left,o.right):e.right=Math.min(e.right,o.left))}}),e},window.zaismaPlace=function(t,e,a){var l=a.roomRect||{left:0,top:0,right:document.documentElement.clientWidth,bottom:window.innerHeight},o=a.gapPx,s=a.edgePx,P=(t.left+t.right)/2>(l.left+l.right)/2,u=Math.max(l.left+s,Math.min(P?t.right-e.width:t.left,l.right-s-e.width)),f=l.bottom-s-t.bottom-o,m=t.top-o-s-l.top,c=e.height<=f,y=e.height<=m,h=(t.top+t.bottom)/2>(l.top+l.bottom)/2,i=!a.isAlwaysBelow&&(c&&y?h:!c&&m>f),r=i?t.top-o-e.height:t.bottom+o;return{leftPx:u,topPx:Math.max(l.top+s,Math.min(r,l.bottom-s-e.height)),isAtEnd:P,isAbove:i}};var W=64;window.zaismaCast=function(t){var e=t.floatCast;if(e||(e=t.floatCast=document.createElement("div"),e.className="floating-cast",e.setAttribute("aria-hidden","true"),e.appendChild(document.createElement("div")).appendChild(document.createElement("span")),(t.parentElement||document.body).appendChild(e)),["smoke","is-above","placed-over","opens-at-once"].forEach(function(i){e.classList.toggle(i,t.classList.contains(i))}),!t.isConnected||!t.matches(":popover-open")){e.hidden=!0;return}var a=t.getBoundingClientRect(),l=new DOMMatrix(getComputedStyle(t).transform==="none"?void 0:getComputedStyle(t).transform),o={width:t.offsetWidth,height:t.offsetHeight};o.left=a.left+a.width/2-o.width/2-l.e,o.top=a.top+a.height/2-o.height/2-l.f;var s=t.classList.contains("is-on-page"),P=getComputedStyle(t),u=P.getPropertyValue("--glass-clip").trim()||P.clipPath,f=/^polygon\\((.*)\\)$/.exec(u),m="calc(100% + "+W+"px)",c=-W+"px";if(!f){e.hidden=!0,t.castTries=(t.castTries||0)+1,t.castTries<60&&requestAnimationFrame(function(){window.zaismaCast(t)});return}t.castTries=0;var y=f?f[1].replace(/^(nonzero|evenodd),\\s*/,""):"0px 0px, 100% 0px, 100% 100%, 0px 100%";e.firstChild.firstChild.style.clipPath=f?u:"",e.style.clipPath="polygon(evenodd, "+c+" "+c+", "+m+" "+c+", "+m+" "+m+", "+c+" "+m+", "+c+" "+c+", "+y+", "+y.split(",")[0]+", "+c+" "+c+")",e.hidden&&e.classList.contains("is-arriving")&&requestAnimationFrame(function(){e.offsetWidth,e.classList.remove("is-arriving")}),e.hidden=!1,e.classList.toggle("is-on-page",s);var h=t.getAttribute("data-theme-choice");h?e.setAttribute("data-theme-choice",h):e.removeAttribute("data-theme-choice"),e.style.left=o.left+(s?window.scrollX:0)+"px",e.style.top=o.top+(s?window.scrollY:0)+"px",e.style.width=o.width+"px",e.style.height=o.height+"px"},["toggle","transitionend"].forEach(function(t){document.addEventListener(t,function(e){e.target.classList&&e.target.classList.contains("floating-pane")&&!e.target.classList.contains("in-place")&&window.zaismaCast(e.target)},!0)});var S=6,T=8,H=4;window.zaismaFloat=function(t,e){var a=t.classList.contains("in-place"),l=t.classList.contains("placed-over"),o=null;function s(){return typeof e.anchor=="function"?e.anchor():e.anchor}a||(document.querySelectorAll("body > .floating-pane, dialog > .floating-pane").forEach(function(i){i.floatingHome&&!i.floatingHome.isConnected&&(i.floatCast&&i.floatCast.remove(),i.remove())}),t.floatingHome=e.home||s(),t.floatingHome&&t.floatingHome.closest(".smoke")&&t.classList.add("smoke"),(s()&&s().closest("dialog")||document.body).appendChild(t));function P(){return a||t.matches(":popover-open")}function u(){var i=s(),r=t.offsetParent;if(!(!i||!r)){var g=e.anchorRect?e.anchorRect(i):i.getBoundingClientRect(),d=r.getBoundingClientRect(),n=window.zaismaPlace(g,{width:t.offsetWidth,height:t.offsetHeight},{roomRect:{left:d.left,top:d.top,right:d.right,bottom:d.bottom},gapPx:e.gapPx||S,edgePx:e.edgePx||T,isAlwaysBelow:!0});t.style.left=Math.round(n.leftPx-d.left-r.clientLeft)+"px",t.style.top=Math.round(n.topPx-d.top-r.clientTop)+"px",t.classList.toggle("from-start",!n.isAtEnd),e.onPlaced&&e.onPlaced()}}a&&!l&&!e.isAnchorWidth&&(t.classList.add("is-hanging"),u(),window.zaismaWatch.resize(u),window.zaismaWatch.fontsIn(u));function f(){var i=s();if(!(a||!t.matches(":popover-open")||!i)){var r=e.anchorRect?e.anchorRect(i):i.getBoundingClientRect(),g=document.documentElement.clientWidth,d=window.innerHeight,n=window.zaismaPageRoom(i),A=r.bottom<0||r.top>d,v=A?r.top+r.height/2-d/2+n.top:n.top,x=A?v+n.bottom-n.top:n.bottom,E=window.zaismaIsOnPage(i,t);if(!i.isConnected||!E&&(r.bottom<0||r.top>d||r.right<0||r.left>g)){h(!1);return}e.isAnchorWidth&&(t.style.width=r.width+"px",t.scrollWidth>t.clientWidth&&(t.style.width=t.scrollWidth+"px"));var b=e.gapPx||S,w=e.edgePx||T,L,p;if(t.style.setProperty("--floating-room",Math.max(0,x-v-2*w)+"px"),l)p=r.top+r.height/2-e.lineOf(),L=r.left;else{var O=function(){return window.zaismaPlace(r,{width:t.offsetWidth,height:t.offsetHeight},{roomRect:{left:n.left,top:v,right:n.right,bottom:x},gapPx:b,edgePx:w,isAlwaysBelow:typeof e.isAlwaysBelow=="function"?e.isAlwaysBelow(i):e.isAlwaysBelow})},C=O();if(t.querySelector(".scrolls")){var k=Math.max(0,C.isAbove?r.top-v-b-w:x-r.bottom-b-w);t.style.setProperty("--floating-room",k+"px");var M=e.scrollBox&&e.scrollBox(),z=M?M.scrollHeight-M.clientHeight:0;z>0&&z<12&&t.style.setProperty("--floating-room",Math.ceil(k+z)+"px"),C=O()}p=C.topPx,L=C.leftPx,t.classList.toggle("is-above",C.isAbove),t.classList.toggle("from-start",!C.isAtEnd)}var R=t.offsetWidth,F=t.offsetHeight;p=Math.max(v+w,Math.min(x-F-w,p)),L=Math.max(n.left+w,Math.min(n.right-R-w,L)),t.classList.toggle("is-on-page",E),t.style.top=Math.round(p+(E?window.scrollY:0))+"px",t.style.left=Math.round(L+(E?window.scrollX:0))+"px",window.zaismaFit&&t.querySelectorAll(".scrolls").forEach(window.zaismaFit),e.onPlaced&&e.onPlaced(),window.zaismaCast(t)}}function m(){if(!a){if(!t.matches(":popover-open")){var i=e.home||s()||document.body,r=i.closest("[data-theme-choice]");r&&r!==document.documentElement?t.setAttribute("data-theme-choice",r.getAttribute("data-theme-choice")):t.removeAttribute("data-theme-choice"),t.classList.toggle("smoke",!!i.closest(".smoke")),t.style.setProperty("--glass-hue",getComputedStyle(i).getPropertyValue("--glass-hue")),c&&(window.zaismaCast(t),clearTimeout(t.leaveTimer),[t,t.floatCast].forEach(function(d){d.classList.remove("is-leaving"),d.classList.add("is-arriving")})),t.showPopover(),c&&(function d(n,A){requestAnimationFrame(function(v){var x=getComputedStyle(t).getPropertyValue("--glass-clip").trim()&&A&&v-A<25;if(!x&&n<30)return d(n+1,v);t.classList.remove("is-arriving")})})(0,0)}var g=s();o=g?g.getBoundingClientRect():null,e.onShown&&e.onShown(),f(),e.onToggle&&e.onToggle(!0)}}var c=!(window.CSS&&CSS.supports("overlay","auto"))&&!matchMedia("(prefers-reduced-motion: reduce)").matches,y=(parseFloat(getComputedStyle(document.documentElement).getPropertyValue("--motion-arrive"))||.3)*1e3;function h(i){if(!(a||!t.matches(":popover-open")||t.classList.contains("is-leaving"))){c?(t.classList.add("is-leaving"),t.floatCast&&t.floatCast.classList.add("is-leaving"),t.leaveTimer=setTimeout(function(){t.classList.remove("is-leaving"),t.hidePopover(),window.zaismaCast(t),t.floatCast.classList.remove("is-leaving")},y)):(t.hidePopover(),window.zaismaCast(t)),e.onToggle&&e.onToggle(!1);var r=e.focusOnClose||s();i&&r&&r.focus()}}return a||(document.addEventListener("pointerdown",function(i){var r=s();t.matches(":popover-open")&&!t.contains(i.target)&&!(r&&r.contains(i.target))&&!(e.isInside&&e.isInside(i.target))&&h(!1)}),t.addEventListener("keydown",function(i){i.key==="Escape"&&t.matches(":popover-open")&&(i.preventDefault(),h(!0))}),window.zaismaWatch.resize(f),document.addEventListener("scroll",function(i){var r=s();if(!(!t.matches(":popover-open")||!o||!r||i.target.nodeType===1&&t.contains(i.target))){var g=r.getBoundingClientRect();(Math.abs(g.top-o.top)>H||Math.abs(g.left-o.left)>H)&&h(!1)}},{capture:!0,passive:!0}),window.zaismaWatch.scroll(f),window.zaismaWatch.fontsIn(f)),t.floating={open:m,close:h,isOpen:P,place:f}}})())})();\n' },
|
|
11037
11089
|
"wheels": { sourceSha256: "c60909028b29b70b2bd30db8c0f1c37524a35bf36be935f748e3a54b683eee21", minifiedText: `(function(){var z=window.zaismaPieces=window.zaismaPieces||{};z.wheels||(z.wheels=!0,(function(){var R=window.matchMedia("(prefers-reduced-motion: reduce)").matches,J=36,I=864e5,Z=3e5,K=["January","February","March","April","May","June","July","August","September","October","November","December"],$=window.matchMedia("(pointer: coarse)").matches?"Swipe each wheel to pick.":"Scroll or type to pick each one.";function b(i){return String(i).padStart(2,"0")}function P(i){return new Date(i.getFullYear(),i.getMonth(),i.getDate())}function G(i,y){for(var w=new Date().getFullYear(),u=[],l=w;l>w-100;l--)u.push(String(l));function d(f,s){return f?new Date(s||2e3,f,0).getDate():31}var a={month:0,day:0,year:0},D=/^(\\d{4})-(\\d{2})-(\\d{2})$/.exec(y.value);D&&(a.month=Number(D[2]),a.day=Number(D[3]),a.year=Math.max(0,u.indexOf(D[1])+1));function c(){return!!(a.month&&a.day&&a.year)}return{parts:["month","day","year"],at:a,hasBlank:!0,rows:function(f){if(f==="month")return["Month"].concat(K);if(f==="year")return["Year"].concat(u);for(var s=["Day"],n=1;n<=d(a.month,a.year?Number(u[a.year-1]):0);n++)s.push(String(n));return s},set:function(f,s){return a[f]=s,f==="day"?[]:["day"]},isComplete:c,typed:function(f,s,n){if(f!=="year"||!/^\\d{2}$/.test(s))return-1;for(var M=1;M<n.length;M++)if(n[M].slice(2)===s)return M;return-1},firstPart:function(){return c()||!a.month?"month":a.day?"year":"day"},words:function(){if(!c())return{shown:null,read:$,sent:""};var f=K[a.month-1],s=u[a.year-1];return{shown:f.slice(0,3)+" "+a.day+", "+s,read:f+" "+a.day+", "+s,sent:s+"-"+b(a.month)+"-"+b(a.day)}}}}function Q(i,y,w){for(var u=[],l=[],d=["AM","PM"],a=1;a<=12;a++)u.push(String(a));for(var D=0;D<60;D+=5)l.push(b(D));var c=i.hasAttribute("data-minimum-at")?new Date(i.getAttribute("data-minimum-at")):new Date;isNaN(c)&&(c=new Date),c=new Date(Math.ceil(c.getTime()/Z)*Z);for(var f=P(c),s=[],n=0;n<366;n++)s.push(new Date(f.getFullYear(),f.getMonth(),f.getDate()+n));var M=P(new Date).getTime(),v=new Date().getFullYear(),W=new Intl.DateTimeFormat("en-US",{weekday:"short",month:"short",day:"numeric"}),x=new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",year:"numeric"});function U(t){var e=Math.round((t.getTime()-M)/I);return e===0?"Today":e===1?"Tomorrow":(t.getFullYear()===v?W:x).format(t)}var C=s.map(U);function q(t,e){try{var r=new Intl.DateTimeFormat("en-US",{timeZoneName:e}).formatToParts(t).find(function(o){return o.type==="timeZoneName"});return r?r.value:""}catch{return""}}function F(t){var e=-t.getTimezoneOffset(),r=e<0?"-":"+",o=Math.abs(e);return t.getFullYear()+"-"+b(t.getMonth()+1)+"-"+b(t.getDate())+"T"+b(t.getHours())+":"+b(t.getMinutes())+r+b(Math.floor(o/60))+":"+b(o%60)}var T={day:0,hour:0,minute:0,half:0},g=!1;function L(t){var e=s[t.day];return new Date(e.getFullYear(),e.getMonth(),e.getDate(),(t.hour+1)%12+t.half*12,t.minute*5)}function N(t){var e=Math.max(0,Math.min(s.length-1,Math.round((P(t).getTime()-f.getTime())/I)));return{day:e,hour:(t.getHours()%12||12)-1,minute:Math.floor(t.getMinutes()/5),half:t.getHours()<12?0:1}}function k(t){Object.keys(t).forEach(function(e){T[e]=t[e]})}var S=y.value?new Date(y.value):null,Y=S&&!isNaN(S)&&w.classList.contains("is-marked")?S:null;return S&&!isNaN(S)&&(k(N(S<c?c:S)),g=!0),{parts:["day","hour","minute","half"],at:T,hasBlank:!1,rows:function(t){return t==="day"?C:t==="hour"?u:t==="minute"?l:d},set:function(t,e){return T[t]=e,g=!0,Y=null,L(T)<c?(k(N(c)),"all"):[]},isComplete:function(){return g},opening:function(){if(g)return!1;var t=new Date;return t.setMinutes(60,0,0),k(N(t<c?c:t)),g=!0,!0},firstPart:function(){return"day"},words:function(){var t=Y||L(T);if(!g)return{shown:null,read:"",sent:""};var e=t.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit"}),r=P(t),o=Math.round((r.getTime()-M)/I),m=o===0?"Today":o===1?"Tomorrow":r.toLocaleDateString("en-US",r.getFullYear()===v?{month:"short",day:"numeric"}:{month:"short",day:"numeric",year:"numeric"}),p=q(t,"short"),h=q(t,"long");return{shown:m+", "+e+(p?" "+p:""),read:t.toLocaleDateString("en-US",{weekday:"long",month:"long",day:"numeric",year:"numeric"})+" at "+e+(h?", "+h:""),sent:F(t)}}}}function X(i){var y=[],w={},u={};return Array.prototype.forEach.call(i.querySelectorAll(".wheel[data-part]"),function(l){var d=l.getAttribute("data-part");y.push(d);try{w[d]=JSON.parse(l.getAttribute("data-rows"))||[]}catch{w[d]=[]}u[d]=Math.max(0,Number(l.getAttribute("data-picked"))||0)}),{parts:y,at:u,hasBlank:!1,rows:function(l){return w[l].map(function(d){return d[0]})},set:function(l,d){return u[l]=d,[]},isComplete:function(){return!0},firstPart:function(){return y[0]},words:function(){var l=y.map(function(a){return(w[a][u[a]]||[""])[0]}).join(" "),d={};return y.forEach(function(a){d[a]=(w[a][u[a]]||["",""])[1]}),{shown:l,read:l,sent:d}}}}window.zaismaWatch.each("[data-wheels]",function(i){var y=i.getAttribute("data-wheels"),w=i.id,u=i.querySelector(".wheel-button"),l=i.querySelector(".wheel-pick"),d=i.querySelector(".wheel-value"),a=l.classList.contains("in-place"),D=i.querySelector(".field-error"),c=i.querySelector(".field-hint"),f=i.querySelector(".wheel-read"),s=i.querySelector('input[type="hidden"]:not([data-part])'),n=y==="birthday"?G(i,s):y==="date-time"?Q(i,s,u):X(i),M=d.textContent,v={};n.parts.forEach(function(e){v[e]={el:i.querySelector('.wheel[data-part="'+e+'"]'),count:0}});var W=l.querySelector(".wheels"),x=window.zaismaFloat(l,{anchor:u,home:i,lineOf:function(){return W.offsetTop+1.5*J},onToggle:function(e){u.setAttribute("aria-expanded",String(e))}});function U(){return x.isOpen()}function C(e){var r=v[e],o=n.at[e];Array.prototype.forEach.call(r.el.children,function(m,p){m.setAttribute("aria-selected",String(p===o))}),r.el.setAttribute("aria-activedescendant",w+"-"+e+"-"+o)}function q(e){var r=v[e],o=n.rows(e),m=document.createDocumentFragment();r.count=o.length,r.el.textContent="",o.forEach(function(p,h){var A=document.createElement("div");A.className="flush-row compact quiet",A.setAttribute("role","option"),A.id=w+"-"+e+"-"+h,A.textContent=p,A.setAttribute("data-label",p),n.hasBlank&&h===0&&A.classList.add("blank"),m.appendChild(A)}),r.el.appendChild(m),r.isWired||(r.isWired=!0,r.el.addEventListener("click",function(p){var h=p.target.closest('[role="option"]');h&&h.parentElement===r.el&&g(e,Array.prototype.indexOf.call(r.el.children,h),!0)})),n.at[e]>r.count-1&&(n.at[e]=r.count-1),C(e)}function F(e){var r=v[e].el.firstElementChild;return r&&r.offsetHeight||J}function T(e){n.parts.forEach(function(r){v[r].el.scrollTo({top:n.at[r]*F(r),behavior:e&&!R?"smooth":"auto"})})}function g(e,r,o){r=Math.max(0,Math.min(v[e].count-1,r)),v[e].el.scrollTo({top:r*F(e),behavior:o&&!R?"smooth":"auto"}),N(e,r)}var L=n.isComplete();function N(e,r){if(!(n.at[e]===r&&L)){var o=n.set(e,r);L=!0,u.classList.contains("is-marked")&&n.isComplete()&&(u.classList.remove("is-marked"),D.hidden=!0,c&&(c.hidden=!1)),o==="all"?(n.parts.forEach(C),T(!0)):(C(e),o.forEach(function(m){q(m),v[m].el.scrollTop=n.at[m]*F(m)})),k()}}function k(){var e=n.words();f.textContent=e.read,d.textContent=e.shown===null?M:e.shown,u.classList.toggle("set",e.shown!==null),s&&(s.value=typeof e.sent=="string"?e.sent:""),typeof e.sent=="object"&&Object.keys(e.sent).forEach(function(r){var o=i.querySelector('input[type="hidden"][data-part="'+r+'"]');o&&(o.value=e.sent[r])})}n.parts.forEach(function(e){var r=v[e],o=null,m="",p=0;q(e),r.el.addEventListener("scroll",function(){clearTimeout(o),o=setTimeout(function(){U()&&N(e,Math.round(r.el.scrollTop/F(e)))},110)},{passive:!0}),r.el.addEventListener("keydown",function(h){var A=n.at[e],E=h.key,V={ArrowDown:1,ArrowUp:-1,PageDown:5,PageUp:-5}[E];if(V){g(e,A+V,!0),h.preventDefault();return}if(E==="Home"){g(e,n.hasBlank?1:0,!0),h.preventDefault();return}if(E==="End"){g(e,r.count-1,!0),h.preventDefault();return}if(E==="Enter"&&n.isComplete()){Y(!0),h.preventDefault();return}if(!(E.length!==1||h.metaKey||h.ctrlKey)){var _=Date.now();m=_-p>900?E.toLowerCase():m+E.toLowerCase(),p=_;for(var B=n.rows(e),O=-1,H=n.hasBlank?1:0;H<B.length&&O<0;H++)B[H].toLowerCase().indexOf(m)===0&&(O=H);O<0&&n.typed&&(O=n.typed(e,m,B)),O>=0&&(g(e,O,!0),h.preventDefault())}})});function S(e){n.opening&&n.opening()&&(L=!0,n.parts.forEach(C),k()),x.open(),T(!1),!e&&v[n.firstPart()].el.focus({preventScroll:!0})}function Y(e){x.close(e)}u.addEventListener("click",function(){U()?Y(!1):S()}),a&&(n.opening&&!n.isComplete()?S(!0):requestAnimationFrame(function(){T(!1)})),k();var t=i.closest("form");t&&i.hasAttribute("data-required")&&t.addEventListener("submit",function(e){n.isComplete()||(e.preventDefault(),u.classList.add("is-marked"),D.hidden=!1,c&&(c.hidden=!0),S())})})})())})();
|
|
11038
11090
|
` },
|
|
11039
11091
|
"charts": { sourceSha256: "b5ff7e5f50a6f8d42f427a712d87c6f64f1abcfacfa05c75cd4c66acb5032e9d", minifiedText: '(function(){var c=window.zaismaPieces=window.zaismaPieces||{};c.charts||(c.charts=!0,(function(){window.zaismaWatch.each("[data-chart-scroll]",function(t){t.scrollLeft=t.scrollWidth});function l(t,e,r){e.forEach(function(f,h){f.classList.toggle("is-focused",h===r)});var s=t.querySelector("[data-chart-scroll]"),i=e[r];if(!(!s||!i)){var a=s.getBoundingClientRect(),n=i.getBoundingClientRect();n.left<a.left?s.scrollLeft-=a.left-n.left:n.right>a.right&&(s.scrollLeft+=n.right-a.right),t.matches(":focus-visible")&&requestAnimationFrame(function(){o(t,i)})}}function u(t){return Array.prototype.slice.call(t.querySelectorAll(".chart-hit"))}function o(t,e){var r=t.querySelector(":scope > .chart-tip");if(r){if(t.classList.toggle("shows-tip",!!e),!e){r.classList.remove("is-shown");return}r.querySelector("b").textContent=e.getAttribute("data-tip-amount"),r.querySelector("span").textContent=e.getAttribute("data-tip-label");var s=t.getBoundingClientRect(),i=e.getBoundingClientRect(),a=getComputedStyle(e),n=!!e.closest(".is-bars");r.style.setProperty("--tip-left",i.left-s.left+i.width*parseFloat(a.getPropertyValue("--point-left"))/100+"px"),r.style.setProperty("--tip-top",i.top-s.top+i.height*parseFloat(a.getPropertyValue("--point-top"))/100+"px"),r.classList.toggle("is-end",e.classList.contains("is-end")),r.classList.toggle("is-middle",n&&!e.classList.contains("is-end")&&!e.classList.contains("is-start")),r.classList.toggle("is-high",e.classList.contains("is-high")),r.classList.add("is-shown")}}document.addEventListener("pointerover",function(t){var e=t.target instanceof Element?t.target.closest(".chart-hit"):null;e&&o(e.closest(".chart"),e)}),document.addEventListener("pointerout",function(t){var e=t.target instanceof Element?t.target.closest(".chart-hit"):null;if(e&&!(t.relatedTarget instanceof Element&&t.relatedTarget.closest(".chart-hit"))){var r=e.closest(".chart"),s=r.querySelector(".chart-hit.is-pointed")||(r.matches(":focus-visible")?r.querySelector(".chart-hit.is-focused"):null);o(r,s)}}),document.querySelectorAll("[data-chart-scroll]").forEach(function(t){t.addEventListener("scroll",function(){var e=t.closest(".chart");o(e,e.querySelector(".chart-hit.is-pointed"))},{passive:!0})}),document.addEventListener("focusout",function(t){var e=t.target instanceof Element&&t.target.matches("[data-chart-points]")?t.target:null;e&&o(e,e.querySelector(".chart-hit.is-pointed"))}),document.querySelectorAll(".chart-hit.is-pointed").forEach(function(t){o(t.closest(".chart"),t)}),document.addEventListener("focusin",function(t){var e=t.target instanceof Element&&t.target.matches("[data-chart-points]")?t.target:null;if(e){var r=u(e);r.length&&!e.querySelector(".chart-hit.is-focused")&&l(e,r,r.length-1)}}),document.addEventListener("keydown",function(t){var e=t.target instanceof Element&&t.target.matches("[data-chart-points]")?t.target:null;if(e){var r=u(e),s=r.indexOf(e.querySelector(".chart-hit.is-focused")),i=s;if(t.key==="ArrowRight"||t.key==="ArrowUp")i=Math.min(r.length-1,s+1);else if(t.key==="ArrowLeft"||t.key==="ArrowDown")i=Math.max(0,s-1);else if(t.key==="Home")i=0;else if(t.key==="End")i=r.length-1;else return;t.preventDefault(),l(e,r,i)}})})())})();\n' },
|
|
@@ -11045,7 +11097,7 @@ var MINIFIED_FIRST_PAINT_PIECES = {
|
|
|
11045
11097
|
"account-link": { sourceSha256: "093f439139a670b1c6b9c27152368cc7dcc80314fece10ceff3649debc1a7216", minifiedText: '(function(){var n=window.zaismaPieces=window.zaismaPieces||{};n["account-link"]||(n["account-link"]=!0,(function(){/(^|; )(__Host-)?zaisma_in=1/.test(document.cookie)&&window.zaismaWatch.each("header.top[data-account-from-cookie] .end > a:is(.run-wrap,.cut-btn)",function(t){t.href="/account";var c=t.querySelector(".face > span:not([class])");c&&(c.textContent="Account")})})())})();\n' },
|
|
11046
11098
|
"hidden-amounts": { sourceSha256: "7fd5909834526d3dd7609ea64030fc4aecc874068d1428cac45bd5218372d4ac", minifiedText: '(function(){var n=window.zaismaPieces=window.zaismaPieces||{};n["hidden-amounts"]||(n["hidden-amounts"]=!0,(function(){var o="zaisma.payments_amounts_hidden",a=!1;try{a=localStorage.getItem(o)==="yes"}catch{}var r="#payments .number-amount, [data-amount]",i="[data-amounts-toggle]";function s(t){t.hasAttribute("data-amount")||t.setAttribute("data-amount",t.textContent),t.textContent=a?"\\u2022\\u2022\\u2022":t.getAttribute("data-amount")}function u(t){t.setAttribute("aria-pressed",String(a));var e=t.querySelector("span:not([class])");e&&(e.textContent=a?"Show amounts":"Hide amounts")}function c(){document.querySelectorAll(r).forEach(s),document.querySelectorAll(i).forEach(u)}window.zaismaWatch.each(r,s),window.zaismaWatch.each(i,u),document.addEventListener("click",function(t){var e=t.target.closest&&t.target.closest("[data-amounts-toggle]");if(e){a=!a;try{localStorage.setItem(o,a?"yes":"no")}catch{}c()}})})())})();\n' }
|
|
11047
11099
|
};
|
|
11048
|
-
var MINIFIED_FIRST_PAINT_SCRIPT = { sourceSha256: "9c5c5d295034f5a9da4417c4e62ae07c48c92df1edd0c510c5a211aae1ca9587", minifiedText: `(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.theme||(G.theme=!0,(function(){var v=document.documentElement,c=window.matchMedia("(prefers-color-scheme: dark)"),g=[];function h(){var m=v.getAttribute("data-theme-choice");return m==="light"||m==="dark"?m:"system"}function a(){return h()==="system"?c.matches?"dark":"light":h()}function i(){var m=a();v.getAttribute("data-theme")!==m&&(v.setAttribute("data-theme",m),g.forEach(function(u){u(m)}))}c.addEventListener&&c.addEventListener("change",i),new MutationObserver(i).observe(v,{attributes:!0,attributeFilter:["data-theme-choice"]}),window.zaismaTheme={now:a,choice:h,onChange:function(m){g.push(m)}},i()})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["cutout-side"]||(G["cutout-side"]=!0,(function(){if(!/iPhone/.test(navigator.userAgent))return;var v=document.documentElement;function c(){var g=window.orientation;g===90?v.setAttribute("data-cutout-side","left"):g===-90?v.setAttribute("data-cutout-side","right"):v.removeAttribute("data-cutout-side")}window.addEventListener("orientationchange",c),c()})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["following-files"]||(G["following-files"]=!0,(function(){var v=!1,c=document.readyState!=="loading",g=!1;function h(){if(g||!v||!c)return;g=!0;var m=[],u=null;function s(p){var n=document.createElement("script");return n.src=p.href,n.async=!1,document.body.appendChild(n),n}document.querySelectorAll("link[rel=preload][data-page-script]").forEach(function(p){document.prerendering&&p.hasAttribute("data-when-opened")?m.push(p):u=s(p)}),m.length&&document.addEventListener("prerenderingchange",function(){m.forEach(s)},{once:!0});function l(){window.zaismaWatch&&window.zaismaWatch.settled()}u?(u.addEventListener("load",l),u.addEventListener("error",l)):l()}function a(){v=!0,h()}function i(){var m=Array.prototype.slice.call(document.querySelectorAll("link[rel=preload][data-site-style]"));if(!m.length){a();return}var u=m.length,s=function(){--u===0&&a()};m.forEach(function(l){var p=document.createElement("link");p.rel="stylesheet",p.href=l.href,p.media="print",p.addEventListener("load",function(){function n(){p.media="all",s()}window.zaismaWatch?window.zaismaWatch.afterArrival(n):n()}),p.addEventListener("error",s),l.after(p)}),setTimeout(a,1e4)}c?i():document.addEventListener("readystatechange",function m(){document.readyState!=="loading"&&(document.removeEventListener("readystatechange",m),c=!0,i(),h())})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.watch||(G.watch=!0,(function(){var v=[],c="working",g=[],h=new Map,a=[],i=[],m=null,u=!1,s=!1,l=null;function p(C){C()}function n(C){var S=new Map;C.forEach(function(L){var W=L.batch||p,F=S.get(W);F||(F=new Set,S.set(W,F)),F.add(L.callback)}),S.forEach(function(L,W){W(function(){L.forEach(function(F){F()})})})}function M(C,S,L,W){S.push({callback:L,batch:W}),!(C==="resize"?u:s)&&(C==="resize"?(u=!0,window.addEventListener("resize",function(){n(a.slice())})):(s=!0,window.addEventListener("scroll",function(){n(i.slice())},{passive:!0,capture:!0})))}var k=null;function N(){if(k)return k;var C=["textarea","select","[popover]","dialog",".scrolls","[style*='overflow']"];function S(L){for(var W=0;W<L.length;W++){var F=L[W],lt=F.style;lt&&F.selectorText&&/auto|scroll|var\\(/.test(lt.overflowY+" "+lt.getPropertyValue("overflow"))&&C.push(F.selectorText),F.cssRules&&S(F.cssRules)}}return Array.prototype.forEach.call(document.styleSheets,function(L){try{S(L.cssRules)}catch{}}),k=C,C}function b(C,S){var L;try{L=C.querySelectorAll(S)}catch{try{L=C.querySelectorAll(S.replace(/::[a-z-]+(\\([^)]*\\))?/g,""))}catch{return[]}}return Array.from(L)}function V(C){return C!==document.body&&document.body.contains(C)&&(C.classList.contains("scrolls")&&!C.classList.contains("across")||/^(auto|scroll)$/.test(getComputedStyle(C).overflowY))}window.zaismaWatch={page:function(C){g.push(C)},arriving:function(C){Y.push(C)},afterArrival:function(C){var S=document.getAnimations?document.getAnimations().filter(function(F){return(F.playState==="running"||F.playState==="paused")&&/^(page-arrives|opening-game-settles)$/.test(F.animationName||"")}):[];if(!S.length){C();return}var L=!1;function W(){L||(L=!0,C())}Promise.all(S.map(function(F){return F.finished.catch(function(){})})).then(W),setTimeout(W,1e3)},afterSettling:function(C){window.zaismaWatch.afterArrival(function(){if(c==="settled"){C();return}v.push(C),setTimeout(window.zaismaWatch.settled,1500)})},settled:function(){c==="working"&&(c="painting",requestAnimationFrame(function(){requestAnimationFrame(function(){c="settled",v.splice(0).forEach(function(C){C()})})}))},whenRead:function(C){document.readyState!=="loading"?C():tt.push(C)},fontArrived:function(C){window.zaismaWatch.fontsIn(C),document.fonts&&document.fonts.addEventListener&&document.fonts.addEventListener("loadingdone",function(){C()})},fontsIn:function(C){window.zaismaWatch.whenRead(function(){document.body.offsetHeight,document.fonts&&document.fonts.ready?document.fonts.ready.then(C):C()})},size:function(C,S,L){if(!window.ResizeObserver){M("resize",a,S,L);return}m||(m=new ResizeObserver(function(F){var lt=[];F.forEach(function(K){(h.get(K.target)||[]).forEach(function(ot){lt.push(ot)})}),n(lt)}));var W=h.get(C);W||(W=[],h.set(C,W),m.observe(C,{box:"border-box"})),W.push({callback:S,batch:L})},resize:function(C,S){M("resize",a,C,S)},drawAll:function(){var C=a.slice();h.forEach(function(S,L){L.isConnected&&S.forEach(function(W){C.push(W)})}),n(C)},scroll:function(C){M("scroll",i,C)},scrollBoxes:function(){if(l)return l;var C=new Set;N().forEach(function(L){b(document,L).forEach(function(W){V(W)&&C.add(W)})});var S=Array.from(C).sort(function(L,W){return L.compareDocumentPosition(W)&4?-1:1});return document.readyState!=="loading"&&(l=S),S},scrollBoxesIn:function(C){var S=new Set;return N().forEach(function(L){var W=b(C,L);try{C.matches(L)&&W.unshift(C)}catch{}W.forEach(function(F){V(F)&&S.add(F)})}),Array.from(S)},eachArriving:function(C,S){var L=new WeakSet;function W(F){L.has(F)||(L.add(F),S(F))}document.querySelectorAll(C).forEach(W),Y.push(function(F){F.forEach(function(lt){lt.addedNodes.forEach(function(K){K.nodeType!==1||!K.isConnected||(K.matches(C)&&W(K),K.querySelectorAll(C).forEach(W))})})})},each:function(C,S){var L=new WeakSet,W=[];function F(K){if(!L.has(K)){if(!D(K)){W.push(K);return}L.add(K),S(K)}}function lt(){var K=W;W=[],K.forEach(F)}document.querySelectorAll(C).forEach(F),W.length&&document.addEventListener("readystatechange",lt),g.push(function(K){lt(),K.forEach(function(ot){ot.addedNodes.forEach(function(vt){vt.nodeType!==1||!vt.isConnected||(vt.matches(C)&&F(vt),vt.querySelectorAll(C).forEach(F))})})})}};function w(C){var S=new Map;return C.filter(function(L){if(L.target instanceof SVGElement)return!1;if(L.type!=="attributes")return!0;var W=S.get(L.target);return W||(W={},S.set(L.target,W)),W[L.attributeName]?!1:(W[L.attributeName]=!0,L.oldValue!==L.target.getAttribute(L.attributeName))})}var T=[],Y=[],tt=[],X=/^(IMG|INPUT|IFRAME|CANVAS|VIDEO|AUDIO|SOURCE|BR|HR|LINK|META)$/;function D(C){if(document.readyState!=="loading"||X.test(C.nodeName))return!0;for(var S=C;S&&S!==document.body;S=S.parentNode)if(S.nextSibling)return!0;return!1}function ut(C){return C.type!=="childList"||Array.prototype.every.call(C.addedNodes,function(S){return S.nodeType!==1||D(S)})}function ct(C){var S=T.concat(C);T=[];var L=S.filter(function(W){return ut(W)?!0:(T.push(W),!1)});L.length&&g.slice().forEach(function(W){W(L)})}new MutationObserver(function(C){var S=w(C);S.length&&Y.slice().forEach(function(L){L(S)}),(S.length||T.length)&&ct(S)}).observe(document.body,{subtree:!0,childList:!0,attributes:!0,attributeOldValue:!0,attributeFilter:["class","open","hidden"]}),document.readyState==="loading"&&document.addEventListener("readystatechange",function C(){document.readyState!=="loading"&&(document.removeEventListener("readystatechange",C),ct([]),tt.splice(0).forEach(function(S){S()}),window.zaismaWatch.afterArrival(window.zaismaWatch.drawAll))})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["page-switch"]||(G["page-switch"]=!0,(function(){var v="zaisma:opening-game",c=document.documentElement;function g(p){try{var n=new URL(p,location.href),M=n.origin===location.origin&&n.pathname.match(/^\\/g\\/([^/]+)$/);return M?M[1]:null}catch{return null}}document.addEventListener("click",function(p){var n=p.target.closest&&p.target.closest("a[href]"),M=n&&g(n.href);try{sessionStorage.removeItem(v)}catch{}if(!(!M||!n.querySelector(".picture, img")||p.button!==0||p.metaKey||p.ctrlKey||p.shiftKey||p.altKey||n.target&&n.target!=="_self"||M===g(location.href)))try{sessionStorage.setItem(v,JSON.stringify({slug:M,pressed_at_ms:Date.now()}))}catch{}});var h=performance.getEntriesByType&&performance.getEntriesByType("navigation")[0],a=!1;if(!h||h.type==="back_forward"||matchMedia("(prefers-reduced-motion: reduce)").matches)return;try{a=new URL(document.referrer).origin===location.origin}catch{}function i(){var p=null;try{p=JSON.parse(sessionStorage.getItem(v)||"null"),sessionStorage.removeItem(v)}catch{}p&&p.slug===g(location.href)&&Date.now()-p.pressed_at_ms<1e4&&c.classList.add("is-opening-game")}var m=!1,u=!1;function s(){u||!m||document.prerendering||(u=!0,requestAnimationFrame(function(){c.classList.remove("is-page-held"),setTimeout(function(){c.classList.remove("is-page-arriving","is-page-arriving-fresh","is-opening-game")},1500)}))}function l(){m=!0,s()}c.classList.add("is-page-arriving","is-page-held"),(!a||h.type!=="navigate")&&c.classList.add("is-page-arriving-fresh"),document.prerendering?document.addEventListener("prerenderingchange",function(){i(),l()},{once:!0}):i();try{new PerformanceObserver(function(p){p.getEntriesByName("first-contentful-paint").length&&l()}).observe({type:"paint",buffered:!0})}catch{l()}setTimeout(l,1e3)})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["measured-glass"]||(G["measured-glass"]=!0,(function(){if(!window.zaismaWatch)return;function v(a){return a.closest(":has(> .backdrop)")}function c(a){var i=a&&a.querySelector(":scope > .backdrop[data-adapts-glass][data-glass-kind], :scope > .backdrop .backdrop[data-adapts-glass][data-glass-kind]");return i?{isSmoked:i.getAttribute("data-glass-kind")==="smoked",tint:i.getAttribute("data-glass-tint")||""}:null}function g(a,i){a.classList.toggle("smoke",i.isSmoked),i.isSmoked?a.removeAttribute("data-theme-choice"):a.hasAttribute("data-theme-choice")||a.setAttribute("data-theme-choice","light"),i.tint&&a.style.setProperty("--glass-tint",i.tint)}function h(a,i){a.ownThemeChoice===void 0&&(a.ownThemeChoice=a.getAttribute("data-theme-choice")),a.classList.toggle("smoke",i.isSmoked),i.isSmoked?a.removeAttribute("data-theme-choice"):a.setAttribute("data-theme-choice",a.ownThemeChoice||"light")}window.zaismaWatch.eachArriving("[data-adapts-glass][data-glass-kind]",function(a){var i=a.parentElement,m=c(i);i&&m&&h(i,m),document.querySelectorAll("[data-glass]:not([data-cut-line])").forEach(function(u){var s=v(u),l=c(s);l&&g(u,l)})}),window.zaismaWatch.eachArriving("[data-glass]:not([data-cut-line])",function(a){var i=v(a),m=c(i);m&&g(a,m)})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.pictures||(G.pictures=!0,(function(){function v(c,g){if(g){c.classList.add("at-once"),c.classList.add("is-shown");return}c.addEventListener("animationend",function(){c.classList.add("at-once")},{once:!0}),c.classList.contains("backdrop")&&window.zaismaWatch&&window.zaismaWatch.afterSettling?window.zaismaWatch.afterSettling(function(){c.classList.add("is-shown")}):c.classList.add("is-shown")}window.zaismaWatch.each("img.reveals",function(c){var g=!!(window.performance&&performance.getEntriesByType&&performance.getEntriesByType("paint").length);if(c.complete&&c.naturalWidth&&!g){v(c,!0);return}if(c.complete&&c.naturalWidth){(c.decode?c.decode():Promise.resolve()).then(function(){v(c,!1)},function(){v(c,!1)});return}c.addEventListener("load",function(){(c.decode?c.decode():Promise.resolve()).then(function(){v(c,!1)},function(){v(c,!1)})})})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.glass||(G.glass=!0,(function(){var v="http://www.w3.org/2000/svg",c={};function g(e){return e in c||(c[e]=parseFloat(getComputedStyle(document.documentElement).getPropertyValue("--"+e.replace(/-(large|small)$/,"-cut-$1")))||0),c[e]}["pane","header","menu","strip"].forEach(function(e){g(e+"-large"),g(e+"-small")});function h(e,r){var x=(e.getAttribute("data-glass-corners")||r).trim().split(/\\s+/);return x.length===1&&/^[a-z]+$/.test(x[0])&&(x=[x[0]+"-large",x[0]+"-small",x[0]+"-large",x[0]+"-small"]),x.map(function(R){return/^[a-z]+-(large|small)$/.test(R)?g(R):Number(R)||0})}window.zaismaCorners=h;function a(e,r,x,R){var P=R,Q=R*.414,I=x.map(function(H){return H>0?H+Q:P});return[[P,I[0]],[I[0],P],[e-I[1],P],[e-P,I[1]],[e-P,r-I[2]],[e-I[2],r-P],[I[3],r-P],[P,r-I[3]]]}function i(e){return e.map(function(r){return r[0].toFixed(1)+","+r[1].toFixed(1)}).join(" ")}function m(e){var r=e.parentElement;return e.getAttribute("aria-busy")==="true"||!!e.querySelector(':scope > input[aria-busy="true"]')||!!(r&&r.getAttribute("aria-busy")==="true")||e.hasAttribute("data-waits-here")&&!!e.closest('[aria-busy="true"]')}function u(e){var r=e.querySelector(":scope > .waiting-glint");if(!m(e)){if(r&&!r.classList.contains("is-leaving")){if(window.matchMedia("(prefers-reduced-motion: reduce)").matches){r.remove();return}r.classList.add("is-leaving"),r.addEventListener("animationend",function(R){R.animationName==="waiting-glint-leaves"&&r.classList.contains("is-leaving")&&r.remove()})}return}r&&r.classList.contains("is-leaving")&&r.classList.remove("is-leaving"),r||(r=document.createElement("span"),r.className="waiting-glint",r.setAttribute("aria-hidden","true"),e.insertBefore(r,e.firstChild))}window.zaismaWaiting={redraw:function(e){[e,e.parentElement].concat(Array.prototype.slice.call(e.querySelectorAll("[data-cut-line]"))).forEach(function(r){r&&r.hasAttribute("data-cut-line")&&u(r)})}};var s=[80,100,70,28,12,0,40,62],l={"top-left":80,top:100,"top-right":70,right:28,"bottom-right":12,bottom:0,"bottom-left":40,left:62};function p(e,r,x,R,P){for(;r.length<x.length;){var Q=document.createElementNS(v,"polygon");e.appendChild(Q),r.push(Q)}for(;r.length>x.length;)e.removeChild(r.pop());r.forEach(function(I,H){var it=(H+1)%x.length;I.style.setProperty("--side-light",P[H]+"%"),I.setAttribute("points",i([x[H],x[it],R[it],R[H]]))})}var n=null;function M(e,r){if(n){e();return}n={rects:new Map,sizes:new Map,groups:new Map,scrollers:new Map,isBatch:!!r,isMeasured:!1};try{e()}finally{n=null}}function k(e){M(e,!0)}function N(){n.isMeasured=!0,document.querySelectorAll("[data-cut-line], [data-glass]").forEach(function(e){n.rects.set(e,e.getBoundingClientRect()),n.sizes.set(e,[e.offsetWidth,e.offsetHeight])}),document.querySelectorAll("[data-cut-line]").forEach(function(e){w(J(e)).push(e)}),document.querySelectorAll("body .own-scroll, body .layout-track").forEach(function(e){n.scrollers.set(e,b(e))})}function b(e){return{scrollTop:e.scrollTop,scrollHeight:e.scrollHeight,clientHeight:e.clientHeight,scrollLeft:e.scrollLeft,scrollWidth:e.scrollWidth,clientWidth:e.clientWidth}}function V(e){var r=n.scrollers.get(e);return r||(r=b(e),n.scrollers.set(e,r)),r}function w(e){var r=n.groups.get(e);return r||(r=[],n.groups.set(e,r)),r}function T(e){n.isBatch&&!n.isMeasured&&N();var r=n.rects.get(e);return r||(r=e.getBoundingClientRect(),n.rects.set(e,r)),r}function Y(e){n.isBatch&&!n.isMeasured&&N();var r=n.sizes.get(e);return r||(r=[e.offsetWidth,e.offsetHeight],n.sizes.set(e,r)),r}function tt(e){if(n.isBatch&&!n.isMeasured&&N(),n.isMeasured)return n.groups.get(e)||[];var r=n.groups.get(e);return r||(r=Array.prototype.filter.call((e||document).querySelectorAll("[data-cut-line]"),function(x){return J(x)===e}),n.groups.set(e,r)),r}var X=new Map,D=!1;function ut(){k(function(){X.forEach(function(e,r){r.isConnected?e():X.delete(r)})})}window.zaismaRedrawEdges=ut;var ct=!!(document.fonts&&document.fonts.addEventListener);ct&&document.fonts.addEventListener("loadingdone",function(){ut(),qt()});function C(){ct||D||!document.fonts||!document.fonts.ready||document.fonts.status!=="loading"||(D=!0,document.fonts.ready.then(function(){D=!1,ut()}))}var S=-1;window.zaismaWatch.size(document.documentElement,function(){var e=document.documentElement.clientWidth,r=S<0;e!==S&&(S=e,r||(ut(),qt()))},k);var L=0;function W(e,r){var x=e.querySelector(":scope > .edge"),R="zg"+L++,P=null,Q="",I="",H=e.hasAttribute("data-cut-line");x||(x=document.createElementNS(v,"svg"),x.setAttribute("class","edge"),x.setAttribute("aria-hidden","true"),e.appendChild(x));function it(E,A){var $=document.createElementNS(v,E);for(var Et in A)$.setAttribute(Et,A[Et]);return x.appendChild($),$}function t(){x.innerHTML='<defs><linearGradient id="'+R+'fr" x1="0" y1="0" x2="1" y2="0"><stop offset="0" stop-color="#7fd8ff" stop-opacity="0.5"/><stop offset="0.5" stop-color="#fff" stop-opacity="0"/><stop offset="1" stop-color="#ffc58a" stop-opacity="0.5"/></linearGradient><linearGradient id="'+R+'in" x1="1" y1="1" x2="0" y2="0"><stop class="gleam" offset="0"/><stop class="gleam" offset="0.4" stop-opacity="0"/><stop class="gleam" offset="0.75" stop-opacity="0"/><stop class="gleam" offset="1" stop-opacity="0.35"/></linearGradient><linearGradient id="'+R+'sp" x1="0" y1="0" x2="1" y2="1"><stop class="spec" offset="0"/><stop class="spec" offset="0.08"/><stop class="spec" offset="0.3" stop-opacity="0"/></linearGradient></defs>',P={dense:it("path",{class:"dense","fill-rule":"evenodd"}),bevel:it("g",{class:"bevel"}),bevelQuads:[],hair:it("polygon",{class:"hair",fill:"none","stroke-width":"1.2"}),rimBand:it("g",{class:"rim-band"}),rimQuads:[],rim:it("polygon",{class:"rim",fill:"none","stroke-width":"1.6"}),spec:it("polygon",{class:"spec-line",fill:"none",stroke:"url(#"+R+"sp)","stroke-width":"1.4"}),fringe:it("polygon",{class:"fringe",fill:"none",stroke:"url(#"+R+"fr)","stroke-width":"0.8"}),inner:it("polygon",{class:"inner",fill:"none",stroke:"url(#"+R+"in)","stroke-width":"1"}),caustics:H?[]:[1,2,3,4].map(function(E){return{group:it("g",{class:"caustic step-"+E}),quads:[]}}),facets:[]}}function o(){M(d)}function d(){var E=Y(e),A=E[0],$=E[1];if(!(!A||!$)){var Et=Math.min(A,$),O=Number(e.getAttribute("data-glass-band"))||Math.max(2,Math.min(4,Et*.04)),Z,dt;if(P||t(),H){var rt=_(y(e,A,$)),Bt=A+"x"+$+":"+i(rt);if(Bt===Q)return;Q=Bt,e.style.setProperty("--cut-shape",U(rt)),e.style.clipPath=U(rt),Z=function(pt){return st(rt,pt)},dt=rt.map(function(pt,Ht){return l[ht(pt,rt[(Ht+1)%rt.length])]})}else{var xt=r().map(function(pt){return Math.min(pt,Math.round(Et*.3))}),_t=xt.join(",")+":"+O;_t!==Q&&(Q=_t,e.style.setProperty("--glass-clip","polygon(0 "+xt[0]+"px, "+xt[0]+"px 0, calc(100% - "+xt[1]+"px) 0, 100% "+xt[1]+"px, 100% calc(100% - "+xt[2]+"px), calc(100% - "+xt[2]+"px) 100%, "+xt[3]+"px 100%, 0 calc(100% - "+xt[3]+"px))"),["top-left","top-right","bottom-right","bottom-left"].forEach(function(pt,Ht){e.style.setProperty("--glass-cut-"+pt,xt[Ht]+O*Math.SQRT2+"px")}),window.zaismaCast&&e.classList.contains("floating-pane")&&e.matches(":popover-open")&&window.zaismaCast(e));var Tt=e.zaismaEdgeShape?e.zaismaEdgeShape(A,$,xt):null,Ut=Number(e.getAttribute("data-glass-lean"));!Tt&&Ut&&(Tt=[[$*Ut,0],[A,0],[A,$],[0,$]],e.style.setProperty("--glass-clip",U(Tt))),Tt&&(Tt=_(Tt));var Vt=A+"x"+$+":"+O+":"+_t+(Tt?":"+i(Tt):"");if(Vt===I)return;I&&Gt(e),I=Vt,Tt?(Z=function(pt){return st(Tt,pt)},dt=Tt.map(function(pt,Ht){return l[ht(pt,Tt[(Ht+1)%Tt.length])]})):(Z=function(pt){return a(A,$,xt,pt)},dt=s)}x.removeAttribute("viewBox"),P.dense.setAttribute("d","M"+i(Z(0))+"Z M"+i(Z(O*1.6))+"Z"),p(P.bevel,P.bevelQuads,Z(0),Z(O),dt),p(P.rimBand,P.rimQuads,Z(0),Z(1.6),dt),P.hair.setAttribute("points",i(Z(.6))),P.rim.setAttribute("points",i(Z(1.6))),P.spec.setAttribute("points",i(Z(1.6))),P.fringe.setAttribute("points",i(Z(Math.max(2.4,O-.8)))),P.inner.setAttribute("points",i(Z(O)));var Kt=[O,O+2,O+5,O+9,O+14];P.caustics.forEach(function(pt,Ht){p(pt.group,pt.quads,Z(Kt[Ht]),Z(Kt[Ht+1]),dt)});var Yt=Z(0),Nt=[];for(Yt.forEach(function(pt,Ht){var Ot=Yt[(Ht+1)%Yt.length],Xt=ht(pt,Ot);Xt.indexOf("-")>0&&Math.hypot(Ot[0]-pt[0],Ot[1]-pt[1])>.5&&Nt.push([pt,Ot,Xt])});P.facets.length<Nt.length;)P.facets.push(it("line",{}));P.facets.forEach(function(pt,Ht){var Ot=Nt[Ht];if(pt.style.display=Ot?"":"none",!!Ot){var Xt=Ot[2]==="top-left";pt.setAttribute("class",Xt?"facet lit":"facet"),pt.setAttribute("stroke-width",Xt?"4.5":"3"),pt.setAttribute("x1",Ot[0][0]),pt.setAttribute("y1",Ot[0][1]),pt.setAttribute("x2",Ot[1][0]),pt.setAttribute("y2",Ot[1][1])}})}}return o(),e.redrawGlass=function(){o()},window.zaismaWatch.size(e,o,k),H&&(X.set(e,o),C()),o}var F=getComputedStyle(document.documentElement),lt=function(e,r){return parseFloat(F.getPropertyValue(e))||r},K=lt("--control-slant",10),ot=lt("--gap-control-row",4),vt=lt("--gap-control-stack",8),Ct=4,Lt=ot-K-.5,mt=ot-K+.5,Rt=[16,8,16,8],et=2;function q(e){var r=h(e,"header"),x=Y(e),R=Math.min(x[0],x[1]);return r.map(function(P){return Math.min(P,Math.round(R*.3))})}function J(e){var r=e.parentElement&&e.parentElement.closest("[data-glass], [data-cut-line], [data-on-no-pane]");return r&&!r.hasAttribute("data-on-no-pane")?r:null}function wt(e,r){var x=T(r),R=e.parentElement&&e.parentElement.closest(".own-scroll"),P=e.parentElement&&e.parentElement.closest(".layout-track");if(P&&P!==r&&r.contains(P)){var Q=V(P);Q.scrollWidth>Q.clientWidth+1&&(x={top:x.top,bottom:x.bottom,left:x.left-Q.scrollLeft,right:x.right+Q.scrollWidth-Q.clientWidth-Q.scrollLeft})}if(!R||R===r||!r.contains(R)||e.parentElement&&getComputedStyle(e.parentElement).position==="sticky")return x;var I=V(R);return I.scrollHeight<=I.clientHeight+1?x:{top:x.top-I.scrollTop,bottom:x.bottom+I.scrollHeight-I.clientHeight-I.scrollTop,left:x.left,right:x.right}}function nt(e,r,x,R){if(e===document.fullscreenElement)return[0,0,0,0];var P=J(e);if(!P&&e.hasAttribute("data-cut-square"))return[0,0,0,0];if(!P){var Q=St(e);return Rt.map(function(dt,rt){return(rt<2?Q.above:Q.below)?0:Math.min(dt,Math.round(Math.min(r,x)*.25))})}var I=P===document.fullscreenElement?[0,0,0,0]:P.hasAttribute("data-cut-line")||P.cutCorners?P.cutCorners||[0,0,0,0]:q(P),H=T(e),it=wt(e,P),t=R?R.ends:e.getAttribute("data-cut-ends")||"",o=H.top-it.top,d=it.bottom-H.bottom,E=R?R.stack:e.getAttribute("data-cut-stack");if(E!=null){var A=H.left-it.left;o=/first/.test(E)?A:1e6,d=/last/.test(E)?A:1e6}var $=/start/.test(t)?(o+d)/2:H.left-it.left,Et=/end/.test(t)?(o+d)/2:it.right-H.right,O=parseFloat(getComputedStyle(P).getPropertyValue("--rail-inset"))||0,Z=Math.max(r,x)<3*Math.min(r,x)?Math.min(r,x)*.5:1/0;return[[$,o],[Et,o],[Et,d],[$,d]].map(function(dt,rt){var Bt=Math.max(0,dt[0])+Math.max(0,dt[1]),xt=Math.max(0,(I[rt]||0)-Bt+Math.SQRT2*Math.min(Bt/2,O));return Math.min(Z,xt>0?Math.max(Ct,xt):0)})}function Wt(e,r){var x=r?r.beside:e.getAttribute("data-cut-beside");if(x!==null)return{start:/start/.test(x),end:/end/.test(x)};var R=J(e),P=T(e),Q={start:!1,end:!1};return tt(R).forEach(function(I){if(I!==e){var H=T(I);if(!(!H.width||!H.height)&&!(Math.min(P.bottom,H.bottom)-Math.max(P.top,H.top)<Math.min(P.height,H.height)/2)){var it=H.left-P.right,t=P.left-H.right,o=it>=Lt&&it<=mt,d=t>=Lt&&t<=mt;(o||d)&&!I.contains(e)&&!e.contains(I)&&(o&&(Q.end=!0),d&&(Q.start=!0))}}}),Q}function St(e){var r=T(e),x={above:!1,below:!1};return tt(null).forEach(function(R){if(R!==e){var P=T(R);if(!(!P.width||!P.height)&&!(Math.min(r.right,P.right)-Math.max(r.left,P.left)<Math.min(r.width,P.width)/2)){var Q=P.top-r.bottom,I=r.top-P.bottom,H=Q>=-1&&Q<=vt+.5,it=I>=-1&&I<=vt+.5;(H||it)&&!R.contains(e)&&!e.contains(R)&&(H&&(x.below=!0),it&&(x.above=!0))}}}),x}function f(e,r,x,R,P,Q){var I=Math.min(x,e/3),H=R.map(function(O){return Math.min(O,r)});[[0,3],[1,2]].forEach(function(O){var Z=H[O[0]]+H[O[1]];Z>r&&(H[O[0]]*=r/Z,H[O[1]]*=r/Z)});var it=function(O,Z,dt,rt){return O>=et?[Z,dt]:[rt,rt]},t=[].concat(P.start?[[I,0],[I,0]]:it(H[0],[0,H[0]],[H[0],0],[0,0]),P.end?[[e,0],[e,0]]:it(H[1],[e-H[1],0],[e,H[1]],[e,0]),P.end?[[e-I,r],[e-I,r]]:it(H[2],[e,r-H[2]],[e-H[2],r],[e,r]),P.start?[[0,r],[0,r]]:it(H[3],[H[3],r],[0,r-H[3]],[0,r]));if(e>=3*r||Q){var o=R.map(function(O){return O>r+.5?O:0}),d=function(O){return Math.max(0,Math.min(e,O))};if(!P.end&&o[2]&&R[1]<et){var E=e+r-o[2];t.splice(2,4,[d(E),0],[d(E),0],[d(E),0],[d(e-o[2]),r])}if(!P.end&&o[1]&&R[2]<et){var A=e-o[1];t.splice(2,4,[d(A),0],[d(A+r),r],[d(A+r),r],[d(A+r),r])}if(!P.start&&o[0]&&R[3]<et){var $=o[0];t.splice(6,2,[d($-r),r],[d($-r),r]),t.splice(0,2,[d($-r),r],[d($),0])}if(!P.start&&o[3]&&R[0]<et){var Et=o[3];t.splice(0,2,[d(Et-r),0],[d(Et-r),0]),t.splice(6,2,[d(Et),r],[d(Et-r),0])}}return t}function y(e,r,x,R){if(e.hasAttribute("data-cut-diamond"))return e.cutCorners=[r/2,r/2,r/2,r/2],[[r/2,0],[r,x/2],[r/2,x],[0,x/2]];var P=Wt(e,R),Q=nt(e,r,x,R);if(e.hasAttribute("data-cut-beside")){var I=J(e),H=I&&I.getAttribute("data-slanted")||"",it=R?R.ends:e.getAttribute("data-cut-ends")||"";/start/.test(it)&&/start/.test(H)&&(P.start=!0),/end/.test(it)&&/end/.test(H)&&(P.end=!0)}var t=[P.start?0:Q[0],P.end?0:Q[1],P.end?0:Q[2],P.start?0:Q[3]].map(function(d){return Math.min(d,x)});if([[0,3],[1,2]].forEach(function(d){var E=t[d[0]]+t[d[1]];E>x&&(t[d[0]]*=x/E,t[d[1]]*=x/E)}),e.cutCorners=t,!R){var o=((P.start?"start ":"")+(P.end?"end":"")).trim();(e.getAttribute("data-slanted")||"")!==o&&(o?e.setAttribute("data-slanted",o):e.removeAttribute("data-slanted"))}return f(r,x,e.hasAttribute("data-cut-beside")&&Number(e.getAttribute("data-cut-line"))||K,Q,P)}function _(e,r){var x=r||.01;return e.filter(function(R,P){var Q=e[(P+e.length-1)%e.length];return Math.abs(R[0]-Q[0])>x||Math.abs(R[1]-Q[1])>x})}function U(e){return"polygon("+e.map(function(r){return r[0].toFixed(2)+"px "+r[1].toFixed(2)+"px"}).join(", ")+")"}function st(e,r){if(!r)return e;var x=e.length,R=e.map(function(P,Q){var I=e[(Q+1)%x],H=I[0]-P[0],it=I[1]-P[1],t=Math.hypot(H,it)||1,o=-it/t,d=H/t;return{x:P[0]+o*r,y:P[1]+d*r,dx:H,dy:it,nx:o,ny:d}});return R.map(function(P,Q){var I=R[(Q+x-1)%x],H=I.dx*P.dy-I.dy*P.dx;if(Math.abs(H)<1e-6)return[P.x,P.y];var it=((P.x-I.x)*P.dy-(P.y-I.y)*P.dx)/H;return[I.x+I.dx*it,I.y+I.dy*it]})}var j=["right","top-right","top","top-left","left","bottom-left","bottom","bottom-right"];function ht(e,r){var x=r[0]-e[0],R=r[1]-e[1],P=Math.atan2(x,R)*180/Math.PI;return j[(Math.round(P/45)%8+8)%8]}function yt(e){var r=e.querySelector(":scope > .cut-line");r||(r=document.createElementNS(v,"svg"),r.setAttribute("class","cut-line"),r.setAttribute("aria-hidden","true"),e.insertBefore(r,e.firstChild));var x=r.querySelector("polygon")||r.appendChild(document.createElementNS(v,"polygon")),R=[],P="";function Q(o){return o.map(function(d){return d[0].toFixed(2)+","+d[1].toFixed(2)}).join(" ")}var I=null;function H(){M(it)}function it(){var o=Y(e),d=o[0],E=o[1];if(!(!d||!E)){var A=d+"x"+E;I&&I.sizeKey!==A&&(I.sizeKey=A,I.toShape=y(e,d,E),I.fromShape=y(e,d,E,I.from));var $=I?I.toShape:y(e,d,E);if(I){var Et=Math.min(1,(performance.now()-I.startMs)/I.ms),O=I.ease?I.ease(Et):1-Math.pow(1-Et,3),xt=I.fromShape;$=$.map(function(Nt,pt){return[xt[pt][0]+(Nt[0]-xt[pt][0])*O,xt[pt][1]+(Nt[1]-xt[pt][1])*O]}),Et>=1?I=null:I.isDriven||requestAnimationFrame(H)}$=_($);var Z=d+"x"+E+":"+Q($);if(Z!==P){P=Z,e.style.setProperty("--cut-shape",U($)),e.hasAttribute("data-cut-sizes")&&["top-left","top-right","bottom-right","bottom-left"].forEach(function(Yt,Nt){e.style.setProperty("--cut-size-"+Yt,(e.cutCorners&&e.cutCorners[Nt]||0).toFixed(1)+"px")}),r.setAttribute("viewBox","0 0 "+d+" "+E),r.setAttribute("preserveAspectRatio","none"),I&&(r.classList.add("is-gliding"),clearTimeout(r.glideEnd),r.glideEnd=setTimeout(function(){r.classList.remove("is-gliding")},I.ms+200)),$=_($,1);var dt=st($,1);x.setAttribute("points",Q(dt)),u(e);var rt=Number(e.getAttribute("data-cut-ring"))||0;if(rt){var Bt=r.querySelector(".cut-ring");Bt||(Bt=document.createElementNS(v,"polygon"),Bt.setAttribute("class","cut-ring"),r.appendChild(Bt)),Bt.setAttribute("points",Q(st($,-rt)))}for(var xt=Number(e.getAttribute("data-cut-inset"))||0,_t=st($,xt),Tt=st($,xt+1.5),Ut=R.length;R.length<$.length;){var Vt=document.createElementNS(v,"path");r.insertBefore(Vt,x),R.push(Vt)}for(;R.length>$.length;)r.removeChild(R.pop());var Kt=Ut>0&&Ut!==R.length;R.forEach(function(Yt,Nt){var pt=(Nt+1)%$.length,Ht="cut-band on-"+ht($[Nt],$[pt]),Ot=Yt.getAttribute("class");Ot&&Ot!==Ht&&(Kt=!0),Yt.setAttribute("class",Ht),Yt.setAttribute("d","M"+Q([_t[Nt],_t[pt],Tt[pt],Tt[Nt]])+"Z")}),Kt&&!r.classList.contains("is-reshaped")&&(r.classList.add("is-reshaped"),requestAnimationFrame(function(){requestAnimationFrame(function(){r.classList.remove("is-reshaped")})}))}}}H(),e.redrawCut=function(o){if(o&&o.isFrame){H();return}I=o&&o.ms>0&&!window.matchMedia("(prefers-reduced-motion: reduce)").matches?{from:o.from,ms:o.ms,ease:o.ease,isDriven:!!o.isDriven,startMs:performance.now()}:null,H()},window.zaismaWatch.size(e,H,k);var t=e.parentElement&&e.parentElement.closest("[data-glass], [data-on-no-pane]");t&&t.hasAttribute("data-glass")&&window.zaismaWatch.size(t,H,k),X.set(e,H),C()}var bt=6,Pt=new Map;function kt(e){return e!=="none"&&(e.match(/rgba?\\([^)]*\\)/g)||[""]).some(function(r){var x=r.match(/[\\d.]+/g);return!x||x.length<4||Number(x[3])>.04})}function z(e,r){if(/^(IMG|VIDEO|CANVAS|IFRAME)$/.test(e.tagName)||r.backgroundImage!=="none"||kt(r.boxShadow))return!0;var x=r.backgroundColor.match(/[\\d.]+/g);return x&&(x.length<4||Number(x[3])>.04)?!0:["Top","Right","Bottom","Left"].some(function(R){return parseFloat(r["border"+R+"Width"])>0&&!/rgba\\(.*, 0\\)|transparent/.test(r["border"+R+"Color"])})}function B(e){var r=[],x=T(e),R=Math.max.apply(null,q(e))/(1-Math.SQRT2/2);function P(I){return[[I.left-x.left,I.top-x.top],[x.right-I.right,I.top-x.top],[x.right-I.right,x.bottom-I.bottom],[I.left-x.left,x.bottom-I.bottom]].some(function(H){return Math.max(0,H[0])+Math.max(0,H[1])<R})}function Q(I){Array.prototype.forEach.call(I.children,function(H){if(!(H instanceof SVGElement||H.matches("[data-glass], [data-cut-line], .edge, .cut-line, dialog"))){var it=H.getBoundingClientRect();if(!(!it.width||!it.height||!P(it))){if(Pt.has(H)){r.push(H);return}var t=getComputedStyle(H);if(t.display==="contents"||t.display==="inline"||t.position==="fixed")return Q(H);t.clipPath==="none"&&Math.min(it.width,it.height)>=bt&&z(H,t)?r.push(H):Q(H)}}})}return Q(e),r}function at(e){if(Pt.has(e))return;var r=null;function x(){M(R)}function R(){var P=Y(e),Q=P[0],I=P[1];if(!(!Q||!I||!e.isConnected)){var H=_(f(Q,I,0,nt(e,Q,I),{start:!1,end:!1},e.hasAttribute("data-cut-bar"))),it=H.length===4&&H.every(function(o){return(o[0]===0||o[0]===Q)&&(o[1]===0||o[1]===I)}),t=it?"":U(H.length?H:[[0,0]]);t!==r&&(r=t,t?(e.style.setProperty("--cut-shape",t),e.style.clipPath=t):(e.style.removeProperty("--cut-shape"),e.style.removeProperty("clip-path")))}}Pt.set(e,x),X.set(e,x),window.zaismaWatch.size(e,x,k),x()}var ft="[data-glass]:not([data-cut-line])";function gt(){var e=Dt?Array.prototype.slice.call(document.querySelectorAll(ft)):Array.from(It);Dt=!1,It.clear(),k(function(){e.forEach(function(r){r.isConnected&&B(r).forEach(at)})})}window.zaismaSettings={set:function(e,r){var x=r||document.documentElement;x.classList.add("eases-settings"),e.theme!==void 0&&(e.theme==="light"||e.theme==="dark"?x.setAttribute("data-theme-choice",e.theme):x.removeAttribute("data-theme-choice"));var R=e.glass;R&&R.hueColor!==void 0&&(typeof R.hueColor=="string"&&/^#[0-9a-fA-F]{6}$/.test(R.hueColor)?x.style.setProperty("--glass-hue",R.hueColor):x.style.removeProperty("--glass-hue"))},read:function(e){var r=e||document.documentElement,x=r.style.getPropertyValue("--glass-hue").trim();return{theme:r.getAttribute("data-theme-choice")||null,glass:{hueColor:x||null}}}},window.zaismaGlass=W,document.addEventListener("fullscreenchange",function(){var e=window.zaismaWatch;e&&requestAnimationFrame(function(){e.drawAll(),requestAnimationFrame(e.drawAll)})}),window.zaismaCutLine=yt,window.zaismaInput=(function(){var e=!1;return document.addEventListener("keydown",function(r){/^(Shift|Control|Alt|Meta|AltGraph|CapsLock)$/.test(r.key)||(e=!0)},!0),["pointerdown","mousedown","touchstart"].forEach(function(r){document.addEventListener(r,function(){e=!1},!0)}),{isKeyboard:function(){return e}}})();var At=typeof WeakSet=="function"?new WeakSet:{has:function(){return!1},add:function(){}};function Mt(e){if(e.querySelectorAll){var r=Array.prototype.slice.call(e.querySelectorAll("[data-glass]")),x=Array.prototype.slice.call(e.querySelectorAll("[data-cut-line]"));e.matches&&e.matches("[data-glass]")&&r.push(e),e.matches&&e.matches("[data-cut-line]")&&x.push(e),x.forEach(function(R){At.has(R)||R.hasAttribute("data-glass")||(At.add(R),yt(R))}),r.forEach(function(R){if(!At.has(R)){At.add(R);var P=W(R,function(){var Q=h(R,"pane");if(Q.some(function(H){return H>0})||!J(R))return Q;var I=Y(R);return R.cutCorners=nt(R,I[0],I[1])});/^[0\\s]+$/.test(R.getAttribute("data-glass-corners")||"")&&(X.set(R,P),C())}})}}k(function(){Mt(document)}),window.zaismaWatch.arriving(function(e){k(function(){e.forEach(function(r){r.addedNodes.forEach(Mt)})})});var zt=0,It=new Set,Dt=!1;function Ft(){clearTimeout(zt),zt=setTimeout(gt,50)}function qt(e){Array.isArray(e)?e.forEach(function(r){$t(r.target).forEach(function(x){It.add(x)})}):Dt=!0,Ft()}function Gt(e){It.add(e),Ft()}function $t(e){if(e.nodeType!==1)return[];for(var r=Array.prototype.slice.call(e.querySelectorAll(ft)),x=e.closest(ft);x;)r.push(x),x=x.parentElement&&x.parentElement.closest(ft);return r}qt(),window.zaismaWatch.page(qt)})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.materials||(G.materials=!0,(function(){function v(c){var g=c.scrollHeight<=c.clientHeight+1&&c.scrollWidth<=c.clientWidth+1;if(c.classList.toggle("fits",g),!g){for(var h=c.parentElement&&c.parentElement.closest("[data-glass]"),a=0,i=0,m=c;m&&m!==h;)a+=m.offsetLeft,i+=m.offsetTop,m=m.offsetParent;if(m){var u=c.parentElement.closest(".scrolls:not(.fits)");if(u&&h.contains(u)){["top-left","top-right","bottom-right","bottom-left"].forEach(function(p){c.style.setProperty("--inset-"+p,"9999px")});return}var s=Math.max(0,h.offsetWidth-a-c.offsetWidth),l=Math.max(0,h.offsetHeight-i-c.offsetHeight);c.style.setProperty("--inset-top-left",a+i+"px"),c.style.setProperty("--inset-top-right",s+i+"px"),c.style.setProperty("--inset-bottom-right",s+l+"px"),c.style.setProperty("--inset-bottom-left",a+l+"px")}}}window.zaismaFit=v,window.MutationObserver&&new MutationObserver(function(c){c.forEach(function(g){g.target.open&&g.target.querySelectorAll(".scrolls").forEach(v)})}).observe(document.documentElement,{subtree:!0,attributes:!0,attributeFilter:["open"]}),window.zaismaWait=function(c,g){if(!c)return Promise.resolve(g);clearTimeout(c.zaismaWaitEnding),c.zaismaIsAnswered=!1,c.getAttribute("aria-busy")!=="true"&&(c.zaismaWaitStart=performance.now()),c.setAttribute("aria-busy","true"),window.zaismaWaiting.redraw(c);function h(){c.removeAttribute("aria-busy"),window.zaismaWaiting.redraw(c)}function a(){c.zaismaIsAnswered=!0;var i=window.matchMedia("(prefers-reduced-motion: reduce)").matches?0:parseFloat(getComputedStyle(c).getPropertyValue("--waiting-glint-sweep"))*1e3,m=i-(performance.now()-c.zaismaWaitStart);m>0?c.zaismaWaitEnding=setTimeout(h,m):h()}return Promise.resolve(g).then(function(i){return a(),i},function(i){throw a(),i})},document.addEventListener("click",function(c){var g=c.target.closest&&c.target.closest('[aria-busy="true"]');g&&g!==document.body&&!g.zaismaIsAnswered&&(c.preventDefault(),c.stopImmediatePropagation())},!0),window.zaismaWatch.each(".scrolls",function(c){v(c),window.zaismaWatch.size(c,function(){v(c)}),Array.prototype.forEach.call(c.children,function(g){window.zaismaWatch.size(g,function(){v(c)})})})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.rows||(G.rows=!0,(function(){if(!window.zaismaWatch)return;function v(h){var a=Array.prototype.slice.call(h.children);h.classList.add("is-measuring");var i=0,m=h.offsetWidth?h.getBoundingClientRect().width/h.offsetWidth:1;h.classList.contains("widths-equal")&&a.forEach(function(M){M.classList.contains("fills")&&(i=Math.max(i,M.getBoundingClientRect().width/(m||1)))}),h.classList.remove("is-measuring");var u=i?Math.ceil(i)+"px":"";h.style.getPropertyValue("--equal-cell-width")!==u&&h.style.setProperty("--equal-cell-width",u);var s=h.classList.contains("is-wrapped");s&&h.classList.remove("is-wrapped");var l=getComputedStyle(h).direction==="rtl",p=null,n=!1;a.forEach(function(M){var k=M.getBoundingClientRect();if(!(k.width<1)){var N=l?-k.right:k.left;p!==null&&N<=p+.5&&(n=!0),p=N}}),n&&h.classList.add("is-wrapped")}window.zaismaWatch.each(".layout-row",function(h){v(h),window.zaismaWatch.size(h,function(){v(h)})}),window.zaismaWatch.fontArrived(function(){document.querySelectorAll(".layout-row").forEach(v)});var c=".stack-cell, .row-cell";function g(h){var a=h.children.length===1&&h.firstElementChild.hidden;h.classList.contains("holds-only-hidden")!==a&&h.classList.toggle("holds-only-hidden",a)}window.zaismaWatch.each(c,g),window.zaismaWatch.page(function(h){h.forEach(function(a){var i=a.type==="attributes"?a.target.parentElement:a.target;i&&i.matches&&i.matches(c)&&(a.type!=="attributes"||a.attributeName==="hidden")&&g(i)})})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.compacting||(G.compacting=!0,(function(){var v=24;window.zaismaWatch.each("[data-compacts]",function(c){if(c.hasAttribute("data-stays-compact")){c.classList.add("is-compact");return}var g=c.parentElement&&c.parentElement.querySelector(":scope > [data-scroll-box]"),h=g||window;function a(){return g?g.scrollTop:window.scrollY}function i(){var m=a();m>v?c.classList.add("is-compact"):m<=0&&c.classList.remove("is-compact")}h.addEventListener("scroll",i,{passive:!0}),i()})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["header-fit"]||(G["header-fit"]=!0,(function(){var v=window.matchMedia("(orientation: landscape) and (max-height: 500px) and (max-width: 64em)"),c=4;function g(u,s){u.classList.toggle("has-search-button",s>0),u.classList.toggle("has-tight-tabs",s>1),u.classList.toggle("has-icon-tabs",s>2),u.classList.toggle("has-icon-sign-in",s>3)}function h(u){var s=0;return Array.prototype.forEach.call(u.querySelectorAll(":scope > a, :scope > button"),function(l){s=Math.max(s,l.offsetLeft+l.offsetWidth)}),s+parseFloat(getComputedStyle(u).paddingRight)}function a(u,s){g(u,s);var l=getComputedStyle(u),p=parseFloat(l.paddingLeft)+parseFloat(l.paddingRight);return Array.prototype.forEach.call(u.children,function(n){var M=getComputedStyle(n);if(!(n.classList.contains("edge")||M.display==="none")){var k=n.querySelector(":scope > .switch-well .tab-switch");p+=parseFloat(M.marginLeft)+parseFloat(M.marginRight)+(n.matches(".find")?parseFloat(M.minWidth):Math.max(n.offsetWidth,k?h(k):0))}}),p}function i(u){if(!(!u.clientWidth||u.checkVisibility&&!u.checkVisibility({contentVisibilityAuto:!0}))){if(v.matches&&u.matches("body > .top")){g(u,1);return}for(var s=u.clientWidth,l=u.neededWidths||(u.neededWidths=[]),p=u.querySelector(".find"),n=!!p&&p.contains(document.activeElement),M=u.classList.contains("searching"),k=!1,N=0;N<c;N++){if(l[N]===void 0){if(n)return;k||(k=!0,u.classList.remove("searching"),u.classList.add("is-measuring"),u.style.width="max-content"),l[N]=a(u,N)}if(l[N]<=s)break}k&&(u.style.width="",u.classList.remove("is-measuring"),M&&u.classList.add("searching")),n&&N>0&&!u.classList.contains("typing-search")&&u.classList.add("searching"),g(u,N)}}function m(u){if(u.fitToRoom)return;function s(){u.neededWidths=null,i(u)}u.fitToRoom=function(){i(u)},i(u),window.zaismaWatch.size(u,u.fitToRoom);var l=u.querySelector(".tab-switch");l&&window.zaismaWatch.size(l,s),window.zaismaWatch.fontsIn(s),v.addEventListener("change",s)}window.zaismaWatch.each("header.top",m),window.zaismaWatch.arriving(function(){var u=document.querySelector("body > header.top");u&&u.nextSibling&&m(u)})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.tables||(G.tables=!0,(function(){function v(g){var h=g.querySelector(":scope > table > thead"),a=g.querySelector(":scope > table > tbody > tr > th, :scope > table > thead > tr > th:first-child");g.style.setProperty("--shown-width",g.clientWidth+"px"),g.style.setProperty("--shown-height",g.clientHeight+"px"),h&&g.style.setProperty("--head-height",h.offsetHeight+"px"),a&&g.style.setProperty("--row-head-width",a.offsetWidth+"px")}var c=typeof ResizeObserver=="function"?new ResizeObserver(function(g){g.forEach(function(h){var a=h.target.closest(".table-scroll");a&&v(a)})}):null;window.zaismaWatch.each(".table-scroll",function(g){if(v(g),c){c.observe(g);var h=g.querySelector(":scope > table");h&&c.observe(h)}})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.rails||(G.rails=!0,(function(){var v=new Set,c=!1;function g(s){v.add(s),!c&&(c=!0,requestAnimationFrame(function(){c=!1;var l=Array.from(v);v.clear();var p=l.map(function(N){return N.place()});l.forEach(function(N,b){N.putPlace(p[b])});var n=l.filter(function(N,b){return N.isUnplaced(p[b])}),M=n.map(function(N){return N.place()});n.forEach(function(N,b){p[l.indexOf(N)]=M[b],N.putPlace(M[b])});var k=l.map(function(N,b){return N.measure(p[b])});l.forEach(function(N,b){N.put(p[b],k[b])})}))}function h(s,l){for(var p=s.nextElementSibling;p&&p.hasAttribute("data-rail");p=p.nextElementSibling)if(p.getAttribute("data-rail")===l)return!0;return!1}function a(s,l){var p=s.map(function(n){var M=n.tagName==="TEXTAREA"||n.tagName==="SELECT"&&(n.multiple||n.size>1);if(/^(SELECT|INPUT)$/.test(n.tagName)&&!M||h(n,"box")||getComputedStyle(n).scrollbarWidth==="none"&&!n.hasAttribute("data-side-rail")&&!n.classList.contains("own-scroll")||n.classList.contains("rail-thumb"))return null;var k=n.parentElement;return!k||k===document.body?null:{box:n,isControl:M,isParentStatic:getComputedStyle(k).position==="static"}});p.forEach(function(n){n&&(n.isParentStatic&&(n.box.parentElement.style.position="relative"),n.box.insertAdjacentHTML("afterend",'<div class="rail" data-rail="box" aria-hidden="true"><div class="rail-line carving deep" data-cut-line="3" data-cut-sizes><svg class="cut-line" aria-hidden="true"><polygon/></svg><div class="rail-groove"><div class="rail-thumb"></div></div></div></div>'))}),l.querySelectorAll("[data-side-rail]").forEach(function(n){h(n,"side")||n.insertAdjacentHTML("afterend",'<div class="rail sideways" data-rail="side" aria-hidden="true"><div class="rail-line carving deep" data-cut-line="3" data-cut-sizes><svg class="cut-line" aria-hidden="true"><polygon/></svg><div class="rail-groove"><div class="rail-thumb"></div></div></div></div>')})}var i=new WeakSet,m=!1;function u(){document.querySelectorAll("[data-rail]").forEach(function(s){if(i.has(s))return;if(s.getAttribute("data-rail")==="page"&&document.readyState==="loading"){document.documentElement.classList.add("own-scroll"),m||(m=!0,window.zaismaWatch.whenRead(u));return}i.add(s);for(var l=s.getAttribute("data-rail")==="page",p=s.getAttribute("data-rail")==="side",n=l?null:s.previousElementSibling;n&&n.hasAttribute("data-rail");)n=n.previousElementSibling;if(n&&!n.matches("[data-rail-scroller]")&&(n=n.querySelector(":scope > [data-rail-scroller]")||n),!l&&!n)return;var M=s.querySelector(".rail-groove"),k=s.querySelector(".rail-thumb"),N=getComputedStyle(s),b=parseFloat(N.getPropertyValue("--rail-reach"))||16,V=parseFloat(N.getPropertyValue("--rail-width"))||10,w=2*Math.SQRT2,T=l&&window.CSS&&CSS.supports("animation-timeline: scroll()");T&&s.classList.add("follows-scroll"),l?document.documentElement.classList.add("own-scroll"):n.classList.add("own-scroll");var Y=!1,tt=function(){return parseFloat(getComputedStyle(document.documentElement).scrollPaddingTop)||90},X=l?Array.prototype.filter.call(document.querySelectorAll("[data-rail-mark]"),function(z){return!z.closest("[data-rail-marks-own]")}):Array.prototype.filter.call(n.querySelectorAll("[data-rail-mark]"),function(z){var B=z.parentElement.closest("[data-side-rail], [data-rail-marks-own]");return!B||B===n||!n.contains(B)});!l&&X.length&&n.setAttribute("data-rail-marks-own","");var D=null;X.length&&(D=document.createElement("span"),D.className="tag rail-name rail-riding",D.setAttribute("data-cut-line","0"),D.appendChild(document.createElement("span")),s.appendChild(D));function ut(z,B){if(l)return z.getBoundingClientRect().top+window.scrollY-(B===void 0?tt():B);var at=n.getBoundingClientRect(),ft=z.getBoundingClientRect();return p?ft.left-at.left+n.scrollLeft:ft.top-at.top+n.scrollTop}var ct=X.map(function(z){var B=document.createElement("button"),at=document.createElement("span");B.type="button",B.className="rail-mark",B.tabIndex=-1,at.className="tag rail-name",at.setAttribute("data-cut-line","0"),at.appendChild(document.createElement("span")).textContent=z.getAttribute("data-rail-mark"),B.appendChild(at),s.appendChild(B),B.addEventListener("click",function(){if(_){_=!1;return}ft()});function ft(){var gt=window.matchMedia("(prefers-reduced-motion: reduce)").matches?"auto":"smooth";l?window.scrollTo({top:ut(z),behavior:gt}):n.scrollTo(p?{left:ut(z),behavior:gt}:{top:ut(z),behavior:gt})}return B.goToPart=ft,{part:z,mark:B,name:at}});function C(z){ct.forEach(function(B){if(!B.mark.hidden){var at=parseFloat(B.mark.style[p?"left":"top"])||0,ft=(B.size||0)/2,gt=Math.max(ft,Math.min(z-ft,at));B.restShift=(gt-at).toFixed(1)+"px",B.name.style.setProperty("--label-shift",B.restShift)}})}function S(){return l?window.scrollY:p?n.scrollLeft:n.scrollTop}function L(z){l?window.scrollTo(0,z):p?n.scrollLeft=z:n.scrollTop=z}function W(z){return p?z.clientX:z.clientY}var F={track:0,thumb:0,max:1,start:0,startIn:w},lt=s.querySelector(".rail-line");function K(z){if(l)return w;var B=lt.cutCorners||[0,0,0,0],at=p?z?B[3]:B[2]:z?B[1]:B[2];return Math.max(0,at-(4-2*Math.SQRT2)-(p?M.clientHeight:M.clientWidth))}var ot=l?document.querySelector("[data-rail-starts-below]"):null,vt=10,Ct={place:function(){var z={whole:l?document.documentElement.scrollHeight:p?n.scrollWidth:n.scrollHeight,view:l?window.innerHeight:p?n.clientWidth:n.clientHeight};if(z.max=z.whole-z.view,ot){var B=ot.getBoundingClientRect();z.top=Math.round((B.height>B.width?0:B.bottom)+vt)+"px"}if(!l){var at=n.closest("[data-glass], .carving"),ft=s.offsetParent;if(at&&ft){var gt=at.getBoundingClientRect(),At=parseFloat(getComputedStyle(at).getPropertyValue("--rail-inset"))||0,Mt=Math.min(gt.width,gt.height),zt=(at.cutCorners||(window.zaismaCorners?window.zaismaCorners(at,"pane"):[0,0,0,0])).map(function(O){return Math.min(O,Math.round(Mt*.3))}),It=At*(Math.SQRT2-1),Dt=function(O){return Math.max(At,O-V+It)};if(p){var Ft=s.getBoundingClientRect(),qt=Ft.left-(parseFloat(s.style.marginLeft)||0),Gt=Ft.right+(parseFloat(s.style.marginRight)||0),$t=gt.bottom-Ft.bottom<=At+2,e=n.querySelector(":scope > table.has-row-heads > tbody > tr > th"),r=e?e.offsetWidth:0,x=n.getBoundingClientRect();z.side=$t?{left:Math.max(0,gt.left+Dt(zt[3])-qt,r?x.left+r+At-qt:0),right:Math.max(0,Gt-(gt.right-Dt(zt[2])))}:{left:0,right:0}}else{var R=ft.getBoundingClientRect(),P=n.getBoundingClientRect(),Q=at.offsetWidth?gt.width/at.offsetWidth:1,I=n.querySelector(":scope > table > thead"),H=Dt(zt[1]),it=Dt(zt[2]),t=I?I.offsetHeight:0,o=n.classList.contains("shows-side-rail")&&n.nextElementSibling&&n.nextElementSibling.matches(".rail.sideways")?(V+2*At)*Q:0,d=P.top+(t?(t+At)*Q:0),E=P.bottom-o,A=Math.max(d,gt.top+H*Q),$=Math.min(E,gt.bottom-it*Q),Et=Math.min(P.right,gt.right-At*Q);z.box={top:(A-R.top)/Q-ft.clientTop,height:Math.max(0,$-A)/Q,left:(Et-R.left)/Q-ft.clientLeft-(b+V)/2}}}}return z},putPlace:function(z){z.top&&(s.style.top=z.top),z.side&&(s.style.marginLeft=z.side.left.toFixed(1)+"px",s.style.marginRight=z.side.right.toFixed(1)+"px"),z.box&&(s.style.top=z.box.top.toFixed(1)+"px",s.style.height=z.box.height.toFixed(1)+"px",s.style.left=z.box.left.toFixed(1)+"px"),Y!==z.max>4&&(Y=z.max>4,s.classList.toggle("is-on",Y)),l||n.classList.toggle(p?"shows-side-rail":"shows-rail",Y)},isUnplaced:function(z){return!l&&Y&&!z.box&&!z.side},measure:function(){if(!Y)return null;var z=l&&ct.length?tt():0;return{track:(p?M.clientWidth:M.clientHeight)-K(!0)-K(!1),start:(p?M.offsetLeft+M.parentElement.offsetLeft:M.offsetTop+M.parentElement.offsetTop)+K(!0),startIn:K(!0),at:S(),marks:ct.map(function(B){var at=!!B.part.offsetParent;return at?{shown:!0,spot:ut(B.part,z),size:p?B.name.offsetWidth:B.name.offsetHeight}:{shown:!1}})}},put:function(z,B){if(B){var at=B.track,ft=z.max,gt=Math.max(36,Math.round(at*z.view/z.whole));F={track:at,thumb:gt,max:ft,start:B.start,startIn:B.startIn},T?k.style.setProperty("--thumb-share",(z.view/z.whole).toFixed(4)):k.style[p?"width":"height"]=gt+"px",Rt(B.at),ct.forEach(function(At,Mt){var zt=B.marks[Mt];if(At.mark.hidden=!zt.shown,!!zt.shown){var It=Math.max(0,Math.min(ft,zt.spot));At.mark.style[p?"left":"top"]=(B.start+(at-gt)*It/ft+gt/2).toFixed(1)+"px",At.size=zt.size||(p?At.name.offsetWidth:At.name.offsetHeight)}}),C(at)}}},Lt=!1;function mt(){if(nt){Lt=!0;return}g(Ct)}function Rt(z){nt&&bt(),Y&&!T&&(k.style.transform=(p?"translateX(":"translateY(")+(F.startIn+(F.track-F.thumb)*Math.min(1,(z===void 0?S():z)/F.max)).toFixed(1)+"px)")}var et=0,q=!1;function J(){s.classList.contains("awake")||s.classList.add("awake"),clearTimeout(et),et=setTimeout(function(){s.classList.remove("awake")},1100)}(l?window:n).addEventListener("scroll",function(){J(),!q&&(q=!0,requestAnimationFrame(function(){q=!1,Rt()}))},{passive:!0}),window.zaismaWatch.resize(mt);var wt=l?document.body:Array.prototype.filter.call(n.children,function(z){return!z.matches("svg, .edge, .cut-line, .rail")});l?window.zaismaWatch.size(wt,mt):Array.prototype.concat.apply([n],Array.prototype.slice.call(wt)).forEach(function(z){window.zaismaWatch.size(z,mt)}),ot&&window.zaismaWatch.size(ot,mt),l||window.zaismaWatch.page(function(z){z.some(function(B){return n.contains(B.target)})&&mt()});var nt=null,Wt=6,St=8;function f(z){var B=W(z);if(!nt.isTouch||!l)return B;var at=B+window.scrollY,ft=B,gt=1/0;return nt.scrolls.forEach(function(At){var Mt=at-At,zt=Math.abs(Mt-nt.last);zt<gt&&(gt=zt,ft=Mt)}),ft}function y(z,B){z.preventDefault();var at=S();if(B){var ft=W(z)-(p?M.getBoundingClientRect().left:M.getBoundingClientRect().top)-F.thumb/2;L(Math.max(0,Math.min(1,ft/(F.track-F.thumb)))*F.max)}nt={y:W(z),last:W(z),from:S(),scrolls:[at,S()],isMoving:z.pointerType==="mouse",isTouch:z.pointerType!=="mouse"},s.classList.add("dragging"),!l&&getComputedStyle(n).scrollSnapType!=="none"&&n.classList.add("is-dragged");try{s.setPointerCapture(z.pointerId)}catch{}}k.addEventListener("pointerdown",function(z){y(z,!1)});var _=!1,U=null,st=0;s.addEventListener("pointerdown",function(z){if(!k.contains(z.target)){if(z.target.closest(".rail-mark")){var B=k.getBoundingClientRect();_=W(z)>=(p?B.left:B.top)&&W(z)<=(p?B.right:B.bottom),_&&(U=z.target.closest(".rail-mark"),st=W(z),y(z,!1));return}y(z,!0)}});function j(z){if(nt){var B=f(z);if(nt.last=B,!nt.isMoving){if(Math.abs(B-nt.y)<Wt)return;nt.isMoving=!0,nt.y=B,nt.from=S()}var at=Math.max(0,Math.min(F.max,nt.from+(B-nt.y)*F.max/Math.max(1,F.track-F.thumb)));Math.abs(at-S())<1||(L(at),nt.scrolls.push(S()),nt.scrolls.length>St&&nt.scrolls.shift())}}s.addEventListener("pointermove",j),window.addEventListener("pointermove",function(z){nt&&!s.hasPointerCapture(z.pointerId)&&j(z)}),window.addEventListener("pointerup",function(z){nt&&!s.hasPointerCapture(z.pointerId)&&kt(z)}),window.addEventListener("pointercancel",function(){nt&&ht()});function ht(){nt=null,s.classList.remove("dragging"),yt(),Lt&&(Lt=!1,mt())}function yt(){if(!(l||!n.classList.contains("is-dragged"))){var z=n.getBoundingClientRect(),B=getComputedStyle(n),at=S(),ft=parseFloat(p?B.scrollPaddingLeft:B.scrollPaddingTop)||0,gt=p?z.left+n.clientLeft:z.top+n.clientTop,At=Array.prototype.filter.call(n.children,function(Ft){return getComputedStyle(Ft).scrollSnapAlign.indexOf("start")>=0}).map(function(Ft){var qt=Ft.getBoundingClientRect();return Math.max(0,Math.min(F.max,at+(p?qt.left:qt.top)-gt-ft))});At.push(0,F.max);var Mt=At.length?At.reduce(function(Ft,qt){return Math.abs(qt-at)<Math.abs(Ft-at)?qt:Ft}):at,zt=function(){nt||n.classList.remove("is-dragged")},It=parseFloat(getComputedStyle(document.documentElement).getPropertyValue("--motion-arrive"))*1e3||300;if(Math.abs(Mt-at)<1||matchMedia("(prefers-reduced-motion: reduce)").matches)return L(Mt),zt();var Dt=performance.now();(function Ft(qt){if(!nt){var Gt=Math.min(1,(qt-Dt)/It);L(at+(Mt-at)*(1-Math.pow(1-Gt,3))),Gt<1?requestAnimationFrame(Ft):zt()}})(Dt)}}function bt(){if(!(!ct.length||!nt)){var z=F.start+(F.track-F.thumb)*Math.min(1,S()/F.max)+F.thumb/2,B=null,at=l?{start:0,size:window.innerHeight}:(function(ft){return{start:p?ft.left:ft.top,size:p?ft.width:ft.height}})(n.getBoundingClientRect());ct.forEach(function(ft){if(!ft.mark.hidden){var gt=ft.part.getBoundingClientRect();(!B||(p?gt.left:gt.top)-at.start<=at.size/3)&&(B=ft)}}),B&&D.lastChild.textContent!==B.name.textContent&&(D.lastChild.textContent=B.name.textContent),D.style.setProperty("--riding-at",z.toFixed(1)+"px")}}s.addEventListener("pointermove",bt),s.addEventListener("pointerdown",bt);var Pt=18;function kt(z){var B=!!(nt&&nt.isMoving),at=U&&Math.abs(W(z)-st)<4?U:null;if(U=null,ht(),at){at.goToPart();return}if(!(!B||z.pointerType==="mouse"||!ct.length)){var ft=F.start+(F.track-F.thumb)*Math.min(1,S()/F.max)+F.thumb/2,gt=null,At=Pt;ct.forEach(function(Mt){if(!Mt.mark.hidden){var zt=Math.abs(parseFloat(Mt.mark.style[p?"left":"top"])-ft);zt<=At&&(At=zt,gt=Mt)}}),gt&>.mark.click()}}s.addEventListener("pointerup",kt),s.addEventListener("pointercancel",ht),mt(),J()})}a(window.zaismaWatch.scrollBoxes(),document),u(),window.zaismaWatch.page(function(s){var l=[],p=!1,n=!1;s.forEach(function(M){Array.prototype.forEach.call(M.addedNodes||[],function(k){k.nodeType!==1||!k.isConnected||(k.matches("[data-rail]")&&!i.has(k)&&(n=!0),!k.closest(".rail, svg, .edge, .cut-line")&&(window.zaismaWatch.scrollBoxesIn(k).forEach(function(N){l.indexOf(N)<0&&l.push(N)}),(k.matches("[data-side-rail]")||k.querySelector("[data-side-rail]"))&&(p=!0)))})}),!(!l.length&&!p&&!n)&&(a(l,document),u())})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["scroll-fades"]||(G["scroll-fades"]=!0,(function(){var v=window.matchMedia("(max-width: 760px), (max-height: 500px)"),c=[],g=null;function h(){return v.matches?20:34}window.zaismaScrollFadePx=h;function a(b){var V=b.querySelector(":scope > table > thead");return{scrollTop:b.scrollTop,scrollHeight:b.scrollHeight,clientHeight:b.clientHeight,headPx:V?V.offsetHeight:null}}function i(b,V){var w=V.scrollHeight>V.clientHeight+1,T=V.scrollTop>.5?h():0,Y=V.scrollHeight-V.clientHeight-V.scrollTop>.5?h():0;b.style.setProperty("--fade-top",Math.max(0,T)+"px"),b.style.setProperty("--fade-bottom",Math.max(0,Y)+"px"),V.headPx!==null&&b.style.setProperty("--fade-from",V.headPx+"px"),b.classList.toggle("is-fading",w),b.classList.toggle("is-scrollable",w)}function m(b){var V=b.map(a);b.forEach(function(w,T){i(w,V[T])})}function u(b){g=new Set,b();var V=Array.from(g);g=null,m(V)}function s(b){g?g.add(b):m([b])}function l(b){b.classList.toggle("is-scrollable",b.scrollHeight>b.clientHeight+1)}var p=new WeakSet;function n(b){p.has(b)||(p.add(b),l(b),window.zaismaWatch.size(b.firstElementChild||b,function(){l(b)}),b.addEventListener("input",function(){l(b)}))}function M(){window.zaismaWatch.each("[data-scroll-box]",n),k(window.zaismaWatch.scrollBoxes())}function k(b){var V=b.filter(function(w){return w.classList.contains("scroll-fades")?!1:/^(TEXTAREA|SELECT|INPUT)$/.test(w.tagName)||w.hasAttribute("data-scroll-box")||w.hasAttribute("data-own-fade")?(n(w),!1):!0});c=c.filter(function(w){return w.isConnected}),V.forEach(function(w){w.classList.add("scroll-fades"),c.push(w);var T=!1;w.addEventListener("scroll",function(){T||(T=!0,requestAnimationFrame(function(){T=!1,s(w)}))},{passive:!0}),window.zaismaWatch.size(w,function(){s(w)},u)}),m(V)}M(),window.zaismaWatch.page(function(b){var V=[];b.forEach(function(w){Array.prototype.forEach.call(w.addedNodes||[],function(T){T.nodeType!==1||!T.isConnected||T.closest(".rail, svg, .edge, .cut-line")||window.zaismaWatch.scrollBoxesIn(T).forEach(function(Y){V.indexOf(Y)<0&&V.push(Y)})})}),V.length&&k(V)}),window.zaismaWatch.resize(function(){m(c)});var N=window.matchMedia("(prefers-reduced-motion: reduce)").matches;window.zaismaWatch.each("[data-fades-sideways]",function(b){function V(){return Array.prototype.filter.call(b.querySelectorAll(":scope > *, :scope > * > *"),function(L){return L.classList.contains("folded")||L.hasAttribute("aria-hidden")||L.children.length&&L.parentElement===b&&L.querySelector(":scope > a, :scope > button, :scope > .cover")?!1:L.getBoundingClientRect().width>=1&&!/^(absolute|fixed)$/.test(getComputedStyle(L).position)})}var w=null;function T(){var L=b.getBoundingClientRect(),W=1/0,F=-1/0,lt=b.scrollLeft;V().forEach(function(K){var ot=K.getBoundingClientRect();W=Math.min(W,ot.left),F=Math.max(F,ot.right)}),w={start:W===1/0?null:W-L.left+lt,end:F-L.left+lt,width:b.clientWidth,whole:b.scrollWidth}}function Y(){w||T();var L=b.scrollLeft,W=L,F=w.whole-w.width-L;return w.start===null?{before:W,after:F}:{before:Math.max(L-w.start,W),after:Math.max(w.end-L-w.width,F)}}function tt(){var L=Y();return b.classList.toggle("more-left",L.before>2),b.classList.toggle("more-right",L.after>2),L}var X=b.querySelector('[aria-current="page"], [aria-pressed="true"]'),D=!1;function ut(){X&&!D&&b.scrollWidth-b.clientWidth>1&&(D=!0,b.showWhole(X,!1))}function ct(){w=null,ut(),tt()}function C(L){var W=L.getBoundingClientRect(),F=W.left-b.getBoundingClientRect().left+b.scrollLeft;return{start:F,end:F+W.width}}b.showWhole=function(L,W){var F=getComputedStyle(b),lt=b.scrollWidth-b.clientWidth,K=b.scrollLeft,ot=C(L),vt=parseFloat(F.scrollPaddingLeft)||0,Ct=parseFloat(F.getPropertyValue("--fade-sideways-px"))||vt;if(!(lt<=1)){var Lt=function(q){return q<lt-1?Ct:0},mt=K;ot.start<K+(K>1?vt:0)?mt=ot.start-vt:ot.end>K+b.clientWidth-Lt(K)&&(mt=ot.start-vt,V().some(function(q){var J=Math.max(0,Math.min(lt,C(q).start-vt));return J>K&&ot.end<=J+b.clientWidth-Lt(J)?(mt=J,!0):!1}));var Rt=V(),et=L===Rt[Rt.length-1];if(L===Rt[0]?mt=0:et&&(mt=lt),mt=Math.max(0,Math.min(lt,mt)),!(Math.abs(mt-K)<1)){if(!W||N){b.scrollLeft=mt;return}b.scrollTo({left:mt,behavior:"smooth"}),clearTimeout(b.settleTimer),b.settleTimer=setTimeout(function(){et&&(mt=b.scrollWidth-b.clientWidth),Math.abs(b.scrollLeft-mt)>1&&b.scrollTo({left:mt,behavior:"smooth"})},450)}}},X&&window.zaismaWatch.fontsIn(function(){D&&b.showWhole(X,!1)});var S=!1;b.addEventListener("scroll",function(){S||(S=!0,requestAnimationFrame(function(){S=!1,tt()}))},{passive:!0}),window.zaismaWatch.size(b,ct),b.firstElementChild&&window.zaismaWatch.size(b.firstElementChild,ct),window.zaismaWatch.fontArrived(ct),ct(),requestAnimationFrame(function(){requestAnimationFrame(function(){b.classList.add("fades-ease")})})})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.backdrop||(G.backdrop=!0,(function(){var v=\`
|
|
11100
|
+
var MINIFIED_FIRST_PAINT_SCRIPT = { sourceSha256: "63fee5104901dfc24bd185d4d0aab6fae4918963862fef415112100ca601f68d", minifiedText: `(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.theme||(G.theme=!0,(function(){var w=document.documentElement,c=window.matchMedia("(prefers-color-scheme: dark)"),p=[];function h(){var m=w.getAttribute("data-theme-choice");return m==="light"||m==="dark"?m:"system"}function a(){return h()==="system"?c.matches?"dark":"light":h()}function i(){var m=a();w.getAttribute("data-theme")!==m&&(w.setAttribute("data-theme",m),p.forEach(function(u){u(m)}))}c.addEventListener&&c.addEventListener("change",i),new MutationObserver(i).observe(w,{attributes:!0,attributeFilter:["data-theme-choice"]}),window.zaismaTheme={now:a,choice:h,onChange:function(m){p.push(m)}},i()})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["cutout-side"]||(G["cutout-side"]=!0,(function(){if(!/iPhone/.test(navigator.userAgent))return;var w=document.documentElement;function c(){var p=window.orientation;p===90?w.setAttribute("data-cutout-side","left"):p===-90?w.setAttribute("data-cutout-side","right"):w.removeAttribute("data-cutout-side")}window.addEventListener("orientationchange",c),c()})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["following-files"]||(G["following-files"]=!0,(function(){var w=!1,c=document.readyState!=="loading",p=!1;function h(){if(p||!w||!c)return;p=!0;var m=[],u=null;function s(v){var n=document.createElement("script");return n.src=v.href,n.async=!1,document.body.appendChild(n),n}document.querySelectorAll("link[rel=preload][data-page-script]").forEach(function(v){document.prerendering&&v.hasAttribute("data-when-opened")?m.push(v):u=s(v)}),m.length&&document.addEventListener("prerenderingchange",function(){m.forEach(s)},{once:!0});function l(){window.zaismaWatch&&window.zaismaWatch.settled()}u?(u.addEventListener("load",l),u.addEventListener("error",l)):l()}function a(){w=!0,h()}function i(){var m=Array.prototype.slice.call(document.querySelectorAll("link[rel=preload][data-site-style]"));if(!m.length){a();return}var u=m.length,s=function(){--u===0&&a()};m.forEach(function(l){var v=document.createElement("link");v.rel="stylesheet",v.href=l.href,v.media="print",v.addEventListener("load",function(){function n(){v.media="all",s()}window.zaismaWatch?window.zaismaWatch.afterArrival(n):n()}),v.addEventListener("error",s),l.after(v)}),setTimeout(a,1e4)}c?i():document.addEventListener("readystatechange",function m(){document.readyState!=="loading"&&(document.removeEventListener("readystatechange",m),c=!0,i(),h())})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.watch||(G.watch=!0,(function(){var w=[],c="working",p=[],h=new Map,a=[],i=[],m=null,u=!1,s=!1,l=null;function v(C){C()}function n(C){var S=new Map;C.forEach(function(L){var W=L.batch||v,F=S.get(W);F||(F=new Set,S.set(W,F)),F.add(L.callback)}),S.forEach(function(L,W){W(function(){L.forEach(function(F){F()})})})}function M(C,S,L,W){S.push({callback:L,batch:W}),!(C==="resize"?u:s)&&(C==="resize"?(u=!0,window.addEventListener("resize",function(){n(a.slice())})):(s=!0,window.addEventListener("scroll",function(){n(i.slice())},{passive:!0,capture:!0})))}var k=null;function N(){if(k)return k;var C=["textarea","select","[popover]","dialog",".scrolls","[style*='overflow']"];function S(L){for(var W=0;W<L.length;W++){var F=L[W],lt=F.style;lt&&F.selectorText&&/auto|scroll|var\\(/.test(lt.overflowY+" "+lt.getPropertyValue("overflow"))&&C.push(F.selectorText),F.cssRules&&S(F.cssRules)}}return Array.prototype.forEach.call(document.styleSheets,function(L){try{S(L.cssRules)}catch{}}),k=C,C}function b(C,S){var L;try{L=C.querySelectorAll(S)}catch{try{L=C.querySelectorAll(S.replace(/::[a-z-]+(\\([^)]*\\))?/g,""))}catch{return[]}}return Array.from(L)}function V(C){return C!==document.body&&document.body.contains(C)&&(C.classList.contains("scrolls")&&!C.classList.contains("across")||/^(auto|scroll)$/.test(getComputedStyle(C).overflowY))}window.zaismaWatch={page:function(C){p.push(C)},arriving:function(C){Y.push(C)},afterArrival:function(C){var S=document.getAnimations?document.getAnimations().filter(function(F){return(F.playState==="running"||F.playState==="paused")&&/^(page-arrives|opening-game-settles)$/.test(F.animationName||"")}):[];if(!S.length){C();return}var L=!1;function W(){L||(L=!0,C())}Promise.all(S.map(function(F){return F.finished.catch(function(){})})).then(W),setTimeout(W,1e3)},afterSettling:function(C){window.zaismaWatch.afterArrival(function(){if(c==="settled"){C();return}w.push(C),setTimeout(window.zaismaWatch.settled,1500)})},settled:function(){c==="working"&&(c="painting",requestAnimationFrame(function(){requestAnimationFrame(function(){c="settled",w.splice(0).forEach(function(C){C()})})}))},whenRead:function(C){document.readyState!=="loading"?C():tt.push(C)},fontArrived:function(C){window.zaismaWatch.fontsIn(C),document.fonts&&document.fonts.addEventListener&&document.fonts.addEventListener("loadingdone",function(){C()})},fontsIn:function(C){window.zaismaWatch.whenRead(function(){document.body.offsetHeight,document.fonts&&document.fonts.ready?document.fonts.ready.then(C):C()})},size:function(C,S,L){if(!window.ResizeObserver){M("resize",a,S,L);return}m||(m=new ResizeObserver(function(F){var lt=[];F.forEach(function(K){(h.get(K.target)||[]).forEach(function(ot){lt.push(ot)})}),n(lt)}));var W=h.get(C);W||(W=[],h.set(C,W),m.observe(C,{box:"border-box"})),W.push({callback:S,batch:L})},resize:function(C,S){M("resize",a,C,S)},drawAll:function(){var C=a.slice();h.forEach(function(S,L){L.isConnected&&S.forEach(function(W){C.push(W)})}),n(C)},scroll:function(C){M("scroll",i,C)},scrollBoxes:function(){if(l)return l;var C=new Set;N().forEach(function(L){b(document,L).forEach(function(W){V(W)&&C.add(W)})});var S=Array.from(C).sort(function(L,W){return L.compareDocumentPosition(W)&4?-1:1});return document.readyState!=="loading"&&(l=S),S},scrollBoxesIn:function(C){var S=new Set;return N().forEach(function(L){var W=b(C,L);try{C.matches(L)&&W.unshift(C)}catch{}W.forEach(function(F){V(F)&&S.add(F)})}),Array.from(S)},eachArriving:function(C,S){var L=new WeakSet;function W(F){L.has(F)||(L.add(F),S(F))}document.querySelectorAll(C).forEach(W),Y.push(function(F){F.forEach(function(lt){lt.addedNodes.forEach(function(K){K.nodeType!==1||!K.isConnected||(K.matches(C)&&W(K),K.querySelectorAll(C).forEach(W))})})})},each:function(C,S){var L=new WeakSet,W=[];function F(K){if(!L.has(K)){if(!D(K)){W.push(K);return}L.add(K),S(K)}}function lt(){var K=W;W=[],K.forEach(F)}document.querySelectorAll(C).forEach(F),W.length&&document.addEventListener("readystatechange",lt),p.push(function(K){lt(),K.forEach(function(ot){ot.addedNodes.forEach(function(vt){vt.nodeType!==1||!vt.isConnected||(vt.matches(C)&&F(vt),vt.querySelectorAll(C).forEach(F))})})})}};function g(C){var S=new Map;return C.filter(function(L){if(L.target instanceof SVGElement)return!1;if(L.type!=="attributes")return!0;var W=S.get(L.target);return W||(W={},S.set(L.target,W)),W[L.attributeName]?!1:(W[L.attributeName]=!0,L.oldValue!==L.target.getAttribute(L.attributeName))})}var T=[],Y=[],tt=[],X=/^(IMG|INPUT|IFRAME|CANVAS|VIDEO|AUDIO|SOURCE|BR|HR|LINK|META)$/;function D(C){if(document.readyState!=="loading"||X.test(C.nodeName))return!0;for(var S=C;S&&S!==document.body;S=S.parentNode)if(S.nextSibling)return!0;return!1}function ut(C){return C.type!=="childList"||Array.prototype.every.call(C.addedNodes,function(S){return S.nodeType!==1||D(S)})}function ct(C){var S=T.concat(C);T=[];var L=S.filter(function(W){return ut(W)?!0:(T.push(W),!1)});L.length&&p.slice().forEach(function(W){W(L)})}new MutationObserver(function(C){var S=g(C);S.length&&Y.slice().forEach(function(L){L(S)}),(S.length||T.length)&&ct(S)}).observe(document.body,{subtree:!0,childList:!0,attributes:!0,attributeOldValue:!0,attributeFilter:["class","open","hidden"]}),document.readyState==="loading"&&document.addEventListener("readystatechange",function C(){document.readyState!=="loading"&&(document.removeEventListener("readystatechange",C),ct([]),tt.splice(0).forEach(function(S){S()}),window.zaismaWatch.afterArrival(window.zaismaWatch.drawAll))})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["page-switch"]||(G["page-switch"]=!0,(function(){var w="zaisma:opening-game",c=document.documentElement;function p(v){try{var n=new URL(v,location.href),M=n.origin===location.origin&&n.pathname.match(/^\\/g\\/([^/]+)$/);return M?M[1]:null}catch{return null}}document.addEventListener("click",function(v){var n=v.target.closest&&v.target.closest("a[href]"),M=n&&p(n.href);try{sessionStorage.removeItem(w)}catch{}if(!(!M||!n.querySelector(".picture, img")||v.button!==0||v.metaKey||v.ctrlKey||v.shiftKey||v.altKey||n.target&&n.target!=="_self"||M===p(location.href)))try{sessionStorage.setItem(w,JSON.stringify({slug:M,pressed_at_ms:Date.now()}))}catch{}});var h=performance.getEntriesByType&&performance.getEntriesByType("navigation")[0],a=!1;if(!h||h.type==="back_forward"||matchMedia("(prefers-reduced-motion: reduce)").matches)return;try{a=new URL(document.referrer).origin===location.origin}catch{}function i(){var v=null;try{v=JSON.parse(sessionStorage.getItem(w)||"null"),sessionStorage.removeItem(w)}catch{}v&&v.slug===p(location.href)&&Date.now()-v.pressed_at_ms<1e4&&c.classList.add("is-opening-game")}var m=!1,u=!1;function s(){u||!m||document.prerendering||(u=!0,requestAnimationFrame(function(){c.classList.remove("is-page-held"),setTimeout(function(){c.classList.remove("is-page-arriving","is-page-arriving-fresh","is-opening-game")},1500)}))}function l(){m=!0,s()}c.classList.add("is-page-arriving","is-page-held"),(!a||h.type!=="navigate")&&c.classList.add("is-page-arriving-fresh"),document.prerendering?document.addEventListener("prerenderingchange",function(){i(),l()},{once:!0}):i();try{new PerformanceObserver(function(v){v.getEntriesByName("first-contentful-paint").length&&l()}).observe({type:"paint",buffered:!0})}catch{l()}setTimeout(l,1e3)})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["measured-glass"]||(G["measured-glass"]=!0,(function(){if(!window.zaismaWatch)return;function w(a){return a.closest(":has(> .backdrop)")}function c(a){var i=a&&a.querySelector(":scope > .backdrop[data-adapts-glass][data-glass-kind], :scope > .backdrop .backdrop[data-adapts-glass][data-glass-kind]");return i?{isSmoked:i.getAttribute("data-glass-kind")==="smoked",tint:i.getAttribute("data-glass-tint")||""}:null}function p(a,i){a.classList.toggle("smoke",i.isSmoked),i.isSmoked?a.removeAttribute("data-theme-choice"):a.hasAttribute("data-theme-choice")||a.setAttribute("data-theme-choice","light"),i.tint&&a.style.setProperty("--glass-tint",i.tint)}function h(a,i){a.ownThemeChoice===void 0&&(a.ownThemeChoice=a.getAttribute("data-theme-choice")),a.classList.toggle("smoke",i.isSmoked),i.isSmoked?a.removeAttribute("data-theme-choice"):a.setAttribute("data-theme-choice",a.ownThemeChoice||"light")}window.zaismaWatch.eachArriving("[data-adapts-glass][data-glass-kind]",function(a){var i=a.parentElement,m=c(i);i&&m&&h(i,m),document.querySelectorAll("[data-glass]:not([data-cut-line])").forEach(function(u){var s=w(u),l=c(s);l&&p(u,l)})}),window.zaismaWatch.eachArriving("[data-glass]:not([data-cut-line])",function(a){var i=w(a),m=c(i);m&&p(a,m)})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.pictures||(G.pictures=!0,(function(){function w(c,p){if(p){c.classList.add("at-once"),c.classList.add("is-shown");return}c.addEventListener("animationend",function(){c.classList.add("at-once")},{once:!0}),c.classList.contains("backdrop")&&window.zaismaWatch&&window.zaismaWatch.afterSettling?window.zaismaWatch.afterSettling(function(){c.classList.add("is-shown")}):c.classList.add("is-shown")}window.zaismaWatch.each("img.reveals",function(c){var p=!!(window.performance&&performance.getEntriesByType&&performance.getEntriesByType("paint").length);if(c.complete&&c.naturalWidth&&!p){w(c,!0);return}if(c.complete&&c.naturalWidth){(c.decode?c.decode():Promise.resolve()).then(function(){w(c,!1)},function(){w(c,!1)});return}c.addEventListener("load",function(){(c.decode?c.decode():Promise.resolve()).then(function(){w(c,!1)},function(){w(c,!1)})})})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.glass||(G.glass=!0,(function(){var w="http://www.w3.org/2000/svg",c={};function p(e){return e in c||(c[e]=parseFloat(getComputedStyle(document.documentElement).getPropertyValue("--"+e.replace(/-(large|small)$/,"-cut-$1")))||0),c[e]}["pane","header","menu","strip"].forEach(function(e){p(e+"-large"),p(e+"-small")});function h(e,r){var x=(e.getAttribute("data-glass-corners")||r).trim().split(/\\s+/);return x.length===1&&/^[a-z]+$/.test(x[0])&&(x=[x[0]+"-large",x[0]+"-small",x[0]+"-large",x[0]+"-small"]),x.map(function(R){return/^[a-z]+-(large|small)$/.test(R)?p(R):Number(R)||0})}window.zaismaCorners=h;function a(e,r,x,R){var P=R,Q=R*.414,I=x.map(function(H){return H>0?H+Q:P});return[[P,I[0]],[I[0],P],[e-I[1],P],[e-P,I[1]],[e-P,r-I[2]],[e-I[2],r-P],[I[3],r-P],[P,r-I[3]]]}function i(e){return e.map(function(r){return r[0].toFixed(1)+","+r[1].toFixed(1)}).join(" ")}function m(e){var r=e.parentElement;return e.getAttribute("aria-busy")==="true"||!!e.querySelector(':scope > input[aria-busy="true"]')||!!(r&&r.getAttribute("aria-busy")==="true")||e.hasAttribute("data-waits-here")&&!!e.closest('[aria-busy="true"]')}function u(e){var r=e.querySelector(":scope > .waiting-glint");if(!m(e)){if(r&&!r.classList.contains("is-leaving")){if(window.matchMedia("(prefers-reduced-motion: reduce)").matches){r.remove();return}r.classList.add("is-leaving"),r.addEventListener("animationend",function(R){R.animationName==="waiting-glint-leaves"&&r.classList.contains("is-leaving")&&r.remove()})}return}r&&r.classList.contains("is-leaving")&&r.classList.remove("is-leaving"),r||(r=document.createElement("span"),r.className="waiting-glint",r.setAttribute("aria-hidden","true"),e.insertBefore(r,e.firstChild))}window.zaismaWaiting={redraw:function(e){[e,e.parentElement].concat(Array.prototype.slice.call(e.querySelectorAll("[data-cut-line]"))).forEach(function(r){r&&r.hasAttribute("data-cut-line")&&u(r)})}};var s=[80,100,70,28,12,0,40,62],l={"top-left":80,top:100,"top-right":70,right:28,"bottom-right":12,bottom:0,"bottom-left":40,left:62};function v(e,r,x,R,P){for(;r.length<x.length;){var Q=document.createElementNS(w,"polygon");e.appendChild(Q),r.push(Q)}for(;r.length>x.length;)e.removeChild(r.pop());r.forEach(function(I,H){var it=(H+1)%x.length;I.style.setProperty("--side-light",P[H]+"%"),I.setAttribute("points",i([x[H],x[it],R[it],R[H]]))})}var n=null;function M(e,r){if(n){e();return}n={rects:new Map,sizes:new Map,groups:new Map,scrollers:new Map,isBatch:!!r,isMeasured:!1};try{e()}finally{n=null}}function k(e){M(e,!0)}function N(){n.isMeasured=!0,document.querySelectorAll("[data-cut-line], [data-glass]").forEach(function(e){n.rects.set(e,e.getBoundingClientRect()),n.sizes.set(e,[e.offsetWidth,e.offsetHeight])}),document.querySelectorAll("[data-cut-line]").forEach(function(e){g(J(e)).push(e)}),document.querySelectorAll("body .own-scroll, body .layout-track").forEach(function(e){n.scrollers.set(e,b(e))})}function b(e){return{scrollTop:e.scrollTop,scrollHeight:e.scrollHeight,clientHeight:e.clientHeight,scrollLeft:e.scrollLeft,scrollWidth:e.scrollWidth,clientWidth:e.clientWidth}}function V(e){var r=n.scrollers.get(e);return r||(r=b(e),n.scrollers.set(e,r)),r}function g(e){var r=n.groups.get(e);return r||(r=[],n.groups.set(e,r)),r}function T(e){n.isBatch&&!n.isMeasured&&N();var r=n.rects.get(e);return r||(r=e.getBoundingClientRect(),n.rects.set(e,r)),r}function Y(e){n.isBatch&&!n.isMeasured&&N();var r=n.sizes.get(e);return r||(r=[e.offsetWidth,e.offsetHeight],n.sizes.set(e,r)),r}function tt(e){if(n.isBatch&&!n.isMeasured&&N(),n.isMeasured)return n.groups.get(e)||[];var r=n.groups.get(e);return r||(r=Array.prototype.filter.call((e||document).querySelectorAll("[data-cut-line]"),function(x){return J(x)===e}),n.groups.set(e,r)),r}var X=new Map,D=!1;function ut(){k(function(){X.forEach(function(e,r){r.isConnected?e():X.delete(r)})})}window.zaismaRedrawEdges=ut;var ct=!!(document.fonts&&document.fonts.addEventListener);ct&&document.fonts.addEventListener("loadingdone",function(){ut(),qt()});function C(){ct||D||!document.fonts||!document.fonts.ready||document.fonts.status!=="loading"||(D=!0,document.fonts.ready.then(function(){D=!1,ut()}))}var S=-1;window.zaismaWatch.size(document.documentElement,function(){var e=document.documentElement.clientWidth,r=S<0;e!==S&&(S=e,r||(ut(),qt()))},k);var L=0;function W(e,r){var x=e.querySelector(":scope > .edge"),R="zg"+L++,P=null,Q="",I="",H=e.hasAttribute("data-cut-line");x||(x=document.createElementNS(w,"svg"),x.setAttribute("class","edge"),x.setAttribute("aria-hidden","true"),e.appendChild(x));function it(E,A){var $=document.createElementNS(w,E);for(var Et in A)$.setAttribute(Et,A[Et]);return x.appendChild($),$}function t(){x.innerHTML='<defs><linearGradient id="'+R+'fr" x1="0" y1="0" x2="1" y2="0"><stop offset="0" stop-color="#7fd8ff" stop-opacity="0.5"/><stop offset="0.5" stop-color="#fff" stop-opacity="0"/><stop offset="1" stop-color="#ffc58a" stop-opacity="0.5"/></linearGradient><linearGradient id="'+R+'in" x1="1" y1="1" x2="0" y2="0"><stop class="gleam" offset="0"/><stop class="gleam" offset="0.4" stop-opacity="0"/><stop class="gleam" offset="0.75" stop-opacity="0"/><stop class="gleam" offset="1" stop-opacity="0.35"/></linearGradient><linearGradient id="'+R+'sp" x1="0" y1="0" x2="1" y2="1"><stop class="spec" offset="0"/><stop class="spec" offset="0.08"/><stop class="spec" offset="0.3" stop-opacity="0"/></linearGradient></defs>',P={dense:it("path",{class:"dense","fill-rule":"evenodd"}),bevel:it("g",{class:"bevel"}),bevelQuads:[],hair:it("polygon",{class:"hair",fill:"none","stroke-width":"1.2"}),rimBand:it("g",{class:"rim-band"}),rimQuads:[],rim:it("polygon",{class:"rim",fill:"none","stroke-width":"1.6"}),spec:it("polygon",{class:"spec-line",fill:"none",stroke:"url(#"+R+"sp)","stroke-width":"1.4"}),fringe:it("polygon",{class:"fringe",fill:"none",stroke:"url(#"+R+"fr)","stroke-width":"0.8"}),inner:it("polygon",{class:"inner",fill:"none",stroke:"url(#"+R+"in)","stroke-width":"1"}),caustics:H?[]:[1,2,3,4].map(function(E){return{group:it("g",{class:"caustic step-"+E}),quads:[]}}),facets:[]}}function o(){M(d)}function d(){var E=Y(e),A=E[0],$=E[1];if(!(!A||!$)){var Et=Math.min(A,$),O=Number(e.getAttribute("data-glass-band"))||Math.max(2,Math.min(4,Et*.04)),Z,dt;if(P||t(),H){var rt=_(y(e,A,$)),Bt=A+"x"+$+":"+i(rt);if(Bt===Q)return;Q=Bt,e.style.setProperty("--cut-shape",U(rt)),e.style.clipPath=U(rt),Z=function(pt){return st(rt,pt)},dt=rt.map(function(pt,Ht){return l[ht(pt,rt[(Ht+1)%rt.length])]})}else{var xt=r().map(function(pt){return Math.min(pt,Math.round(Et*.3))}),_t=xt.join(",")+":"+O;_t!==Q&&(Q=_t,e.style.setProperty("--glass-clip","polygon(0 "+xt[0]+"px, "+xt[0]+"px 0, calc(100% - "+xt[1]+"px) 0, 100% "+xt[1]+"px, 100% calc(100% - "+xt[2]+"px), calc(100% - "+xt[2]+"px) 100%, "+xt[3]+"px 100%, 0 calc(100% - "+xt[3]+"px))"),["top-left","top-right","bottom-right","bottom-left"].forEach(function(pt,Ht){e.style.setProperty("--glass-cut-"+pt,xt[Ht]+O*Math.SQRT2+"px")}),window.zaismaCast&&e.classList.contains("floating-pane")&&e.matches(":popover-open")&&window.zaismaCast(e));var Tt=e.zaismaEdgeShape?e.zaismaEdgeShape(A,$,xt):null,Ut=Number(e.getAttribute("data-glass-lean"));!Tt&&Ut&&(Tt=[[$*Ut,0],[A,0],[A,$],[0,$]],e.style.setProperty("--glass-clip",U(Tt))),Tt&&(Tt=_(Tt));var Vt=A+"x"+$+":"+O+":"+_t+(Tt?":"+i(Tt):"");if(Vt===I)return;I&&Gt(e),I=Vt,Tt?(Z=function(pt){return st(Tt,pt)},dt=Tt.map(function(pt,Ht){return l[ht(pt,Tt[(Ht+1)%Tt.length])]})):(Z=function(pt){return a(A,$,xt,pt)},dt=s)}x.removeAttribute("viewBox"),P.dense.setAttribute("d","M"+i(Z(0))+"Z M"+i(Z(O*1.6))+"Z"),v(P.bevel,P.bevelQuads,Z(0),Z(O),dt),v(P.rimBand,P.rimQuads,Z(0),Z(1.6),dt),P.hair.setAttribute("points",i(Z(.6))),P.rim.setAttribute("points",i(Z(1.6))),P.spec.setAttribute("points",i(Z(1.6))),P.fringe.setAttribute("points",i(Z(Math.max(2.4,O-.8)))),P.inner.setAttribute("points",i(Z(O)));var Kt=[O,O+2,O+5,O+9,O+14];P.caustics.forEach(function(pt,Ht){v(pt.group,pt.quads,Z(Kt[Ht]),Z(Kt[Ht+1]),dt)});var Yt=Z(0),Nt=[];for(Yt.forEach(function(pt,Ht){var Ot=Yt[(Ht+1)%Yt.length],Xt=ht(pt,Ot);Xt.indexOf("-")>0&&Math.hypot(Ot[0]-pt[0],Ot[1]-pt[1])>.5&&Nt.push([pt,Ot,Xt])});P.facets.length<Nt.length;)P.facets.push(it("line",{}));P.facets.forEach(function(pt,Ht){var Ot=Nt[Ht];if(pt.style.display=Ot?"":"none",!!Ot){var Xt=Ot[2]==="top-left";pt.setAttribute("class",Xt?"facet lit":"facet"),pt.setAttribute("stroke-width",Xt?"4.5":"3"),pt.setAttribute("x1",Ot[0][0]),pt.setAttribute("y1",Ot[0][1]),pt.setAttribute("x2",Ot[1][0]),pt.setAttribute("y2",Ot[1][1])}})}}return o(),e.redrawGlass=function(){o()},window.zaismaWatch.size(e,o,k),H&&(X.set(e,o),C()),o}var F=getComputedStyle(document.documentElement),lt=function(e,r){return parseFloat(F.getPropertyValue(e))||r},K=lt("--control-slant",10),ot=lt("--gap-control-row",4),vt=lt("--gap-control-stack",8),Ct=4,Lt=ot-K-.5,mt=ot-K+.5,Rt=[16,8,16,8],et=2;function q(e){var r=h(e,"header"),x=Y(e),R=Math.min(x[0],x[1]);return r.map(function(P){return Math.min(P,Math.round(R*.3))})}function J(e){var r=e.parentElement&&e.parentElement.closest("[data-glass], [data-cut-line], [data-on-no-pane]");return r&&!r.hasAttribute("data-on-no-pane")?r:null}function wt(e,r){var x=T(r),R=e.parentElement&&e.parentElement.closest(".own-scroll"),P=e.parentElement&&e.parentElement.closest(".layout-track");if(P&&P!==r&&r.contains(P)){var Q=V(P);Q.scrollWidth>Q.clientWidth+1&&(x={top:x.top,bottom:x.bottom,left:x.left-Q.scrollLeft,right:x.right+Q.scrollWidth-Q.clientWidth-Q.scrollLeft})}if(!R||R===r||!r.contains(R)||e.parentElement&&getComputedStyle(e.parentElement).position==="sticky")return x;var I=V(R);return I.scrollHeight<=I.clientHeight+1?x:{top:x.top-I.scrollTop,bottom:x.bottom+I.scrollHeight-I.clientHeight-I.scrollTop,left:x.left,right:x.right}}function nt(e,r,x,R){if(e===document.fullscreenElement)return[0,0,0,0];var P=J(e);if(!P&&e.hasAttribute("data-cut-square"))return[0,0,0,0];if(!P){var Q=St(e);return Rt.map(function(dt,rt){return(rt<2?Q.above:Q.below)?0:Math.min(dt,Math.round(Math.min(r,x)*.25))})}var I=P===document.fullscreenElement?[0,0,0,0]:P.hasAttribute("data-cut-line")||P.cutCorners?P.cutCorners||[0,0,0,0]:q(P),H=T(e),it=wt(e,P),t=R?R.ends:e.getAttribute("data-cut-ends")||"",o=H.top-it.top,d=it.bottom-H.bottom,E=R?R.stack:e.getAttribute("data-cut-stack");if(E!=null){var A=H.left-it.left;o=/first/.test(E)?A:1e6,d=/last/.test(E)?A:1e6}var $=/start/.test(t)?(o+d)/2:H.left-it.left,Et=/end/.test(t)?(o+d)/2:it.right-H.right,O=parseFloat(getComputedStyle(P).getPropertyValue("--rail-inset"))||0,Z=Math.max(r,x)<3*Math.min(r,x)?Math.min(r,x)*.5:1/0;return[[$,o],[Et,o],[Et,d],[$,d]].map(function(dt,rt){var Bt=Math.max(0,dt[0])+Math.max(0,dt[1]),xt=Math.max(0,(I[rt]||0)-Bt+Math.SQRT2*Math.min(Bt/2,O));return Math.min(Z,xt>0?Math.max(Ct,xt):0)})}function Wt(e,r){var x=r?r.beside:e.getAttribute("data-cut-beside");if(x!==null)return{start:/start/.test(x),end:/end/.test(x)};var R=J(e),P=T(e),Q={start:!1,end:!1};return tt(R).forEach(function(I){if(I!==e){var H=T(I);if(!(!H.width||!H.height)&&!(Math.min(P.bottom,H.bottom)-Math.max(P.top,H.top)<Math.min(P.height,H.height)/2)){var it=H.left-P.right,t=P.left-H.right,o=it>=Lt&&it<=mt,d=t>=Lt&&t<=mt;(o||d)&&!I.contains(e)&&!e.contains(I)&&(o&&(Q.end=!0),d&&(Q.start=!0))}}}),Q}function St(e){var r=T(e),x={above:!1,below:!1};return tt(null).forEach(function(R){if(R!==e){var P=T(R);if(!(!P.width||!P.height)&&!(Math.min(r.right,P.right)-Math.max(r.left,P.left)<Math.min(r.width,P.width)/2)){var Q=P.top-r.bottom,I=r.top-P.bottom,H=Q>=-1&&Q<=vt+.5,it=I>=-1&&I<=vt+.5;(H||it)&&!R.contains(e)&&!e.contains(R)&&(H&&(x.below=!0),it&&(x.above=!0))}}}),x}function f(e,r,x,R,P,Q){var I=Math.min(x,e/3),H=R.map(function(O){return Math.min(O,r)});[[0,3],[1,2]].forEach(function(O){var Z=H[O[0]]+H[O[1]];Z>r&&(H[O[0]]*=r/Z,H[O[1]]*=r/Z)});var it=function(O,Z,dt,rt){return O>=et?[Z,dt]:[rt,rt]},t=[].concat(P.start?[[I,0],[I,0]]:it(H[0],[0,H[0]],[H[0],0],[0,0]),P.end?[[e,0],[e,0]]:it(H[1],[e-H[1],0],[e,H[1]],[e,0]),P.end?[[e-I,r],[e-I,r]]:it(H[2],[e,r-H[2]],[e-H[2],r],[e,r]),P.start?[[0,r],[0,r]]:it(H[3],[H[3],r],[0,r-H[3]],[0,r]));if(e>=3*r||Q){var o=R.map(function(O){return O>r+.5?O:0}),d=function(O){return Math.max(0,Math.min(e,O))};if(!P.end&&o[2]&&R[1]<et){var E=e+r-o[2];t.splice(2,4,[d(E),0],[d(E),0],[d(E),0],[d(e-o[2]),r])}if(!P.end&&o[1]&&R[2]<et){var A=e-o[1];t.splice(2,4,[d(A),0],[d(A+r),r],[d(A+r),r],[d(A+r),r])}if(!P.start&&o[0]&&R[3]<et){var $=o[0];t.splice(6,2,[d($-r),r],[d($-r),r]),t.splice(0,2,[d($-r),r],[d($),0])}if(!P.start&&o[3]&&R[0]<et){var Et=o[3];t.splice(0,2,[d(Et-r),0],[d(Et-r),0]),t.splice(6,2,[d(Et),r],[d(Et-r),0])}}return t}function y(e,r,x,R){if(e.hasAttribute("data-cut-diamond"))return e.cutCorners=[r/2,r/2,r/2,r/2],[[r/2,0],[r,x/2],[r/2,x],[0,x/2]];var P=Wt(e,R),Q=nt(e,r,x,R);if(e.hasAttribute("data-cut-beside")){var I=J(e),H=I&&I.getAttribute("data-slanted")||"",it=R?R.ends:e.getAttribute("data-cut-ends")||"";/start/.test(it)&&/start/.test(H)&&(P.start=!0),/end/.test(it)&&/end/.test(H)&&(P.end=!0)}var t=[P.start?0:Q[0],P.end?0:Q[1],P.end?0:Q[2],P.start?0:Q[3]].map(function(d){return Math.min(d,x)});if([[0,3],[1,2]].forEach(function(d){var E=t[d[0]]+t[d[1]];E>x&&(t[d[0]]*=x/E,t[d[1]]*=x/E)}),e.cutCorners=t,!R){var o=((P.start?"start ":"")+(P.end?"end":"")).trim();(e.getAttribute("data-slanted")||"")!==o&&(o?e.setAttribute("data-slanted",o):e.removeAttribute("data-slanted"))}return f(r,x,e.hasAttribute("data-cut-beside")&&Number(e.getAttribute("data-cut-line"))||K,Q,P)}function _(e,r){var x=r||.01;return e.filter(function(R,P){var Q=e[(P+e.length-1)%e.length];return Math.abs(R[0]-Q[0])>x||Math.abs(R[1]-Q[1])>x})}function U(e){return"polygon("+e.map(function(r){return r[0].toFixed(2)+"px "+r[1].toFixed(2)+"px"}).join(", ")+")"}function st(e,r){if(!r)return e;var x=e.length,R=e.map(function(P,Q){var I=e[(Q+1)%x],H=I[0]-P[0],it=I[1]-P[1],t=Math.hypot(H,it)||1,o=-it/t,d=H/t;return{x:P[0]+o*r,y:P[1]+d*r,dx:H,dy:it,nx:o,ny:d}});return R.map(function(P,Q){var I=R[(Q+x-1)%x],H=I.dx*P.dy-I.dy*P.dx;if(Math.abs(H)<1e-6)return[P.x,P.y];var it=((P.x-I.x)*P.dy-(P.y-I.y)*P.dx)/H;return[I.x+I.dx*it,I.y+I.dy*it]})}var j=["right","top-right","top","top-left","left","bottom-left","bottom","bottom-right"];function ht(e,r){var x=r[0]-e[0],R=r[1]-e[1],P=Math.atan2(x,R)*180/Math.PI;return j[(Math.round(P/45)%8+8)%8]}function yt(e){var r=e.querySelector(":scope > .cut-line");r||(r=document.createElementNS(w,"svg"),r.setAttribute("class","cut-line"),r.setAttribute("aria-hidden","true"),e.insertBefore(r,e.firstChild));var x=r.querySelector("polygon")||r.appendChild(document.createElementNS(w,"polygon")),R=[],P="";function Q(o){return o.map(function(d){return d[0].toFixed(2)+","+d[1].toFixed(2)}).join(" ")}var I=null;function H(){M(it)}function it(){var o=Y(e),d=o[0],E=o[1];if(!(!d||!E)){var A=d+"x"+E;I&&I.sizeKey!==A&&(I.sizeKey=A,I.toShape=y(e,d,E),I.fromShape=y(e,d,E,I.from));var $=I?I.toShape:y(e,d,E);if(I){var Et=Math.min(1,(performance.now()-I.startMs)/I.ms),O=I.ease?I.ease(Et):1-Math.pow(1-Et,3),xt=I.fromShape;$=$.map(function(Nt,pt){return[xt[pt][0]+(Nt[0]-xt[pt][0])*O,xt[pt][1]+(Nt[1]-xt[pt][1])*O]}),Et>=1?I=null:I.isDriven||requestAnimationFrame(H)}$=_($);var Z=d+"x"+E+":"+Q($);if(Z!==P){P=Z,e.style.setProperty("--cut-shape",U($)),e.hasAttribute("data-cut-sizes")&&["top-left","top-right","bottom-right","bottom-left"].forEach(function(Yt,Nt){e.style.setProperty("--cut-size-"+Yt,(e.cutCorners&&e.cutCorners[Nt]||0).toFixed(1)+"px")}),r.setAttribute("viewBox","0 0 "+d+" "+E),r.setAttribute("preserveAspectRatio","none"),I&&(r.classList.add("is-gliding"),clearTimeout(r.glideEnd),r.glideEnd=setTimeout(function(){r.classList.remove("is-gliding")},I.ms+200)),$=_($,1);var dt=st($,1);x.setAttribute("points",Q(dt)),u(e);var rt=Number(e.getAttribute("data-cut-ring"))||0;if(rt){var Bt=r.querySelector(".cut-ring");Bt||(Bt=document.createElementNS(w,"polygon"),Bt.setAttribute("class","cut-ring"),r.appendChild(Bt)),Bt.setAttribute("points",Q(st($,-rt)))}for(var xt=Number(e.getAttribute("data-cut-inset"))||0,_t=st($,xt),Tt=st($,xt+1.5),Ut=R.length;R.length<$.length;){var Vt=document.createElementNS(w,"path");r.insertBefore(Vt,x),R.push(Vt)}for(;R.length>$.length;)r.removeChild(R.pop());var Kt=Ut>0&&Ut!==R.length;R.forEach(function(Yt,Nt){var pt=(Nt+1)%$.length,Ht="cut-band on-"+ht($[Nt],$[pt]),Ot=Yt.getAttribute("class");Ot&&Ot!==Ht&&(Kt=!0),Yt.setAttribute("class",Ht),Yt.setAttribute("d","M"+Q([_t[Nt],_t[pt],Tt[pt],Tt[Nt]])+"Z")}),Kt&&!r.classList.contains("is-reshaped")&&(r.classList.add("is-reshaped"),requestAnimationFrame(function(){requestAnimationFrame(function(){r.classList.remove("is-reshaped")})}))}}}H(),e.redrawCut=function(o){if(o&&o.isFrame){H();return}I=o&&o.ms>0&&!window.matchMedia("(prefers-reduced-motion: reduce)").matches?{from:o.from,ms:o.ms,ease:o.ease,isDriven:!!o.isDriven,startMs:performance.now()}:null,H()},window.zaismaWatch.size(e,H,k);var t=e.parentElement&&e.parentElement.closest("[data-glass], [data-on-no-pane]");t&&t.hasAttribute("data-glass")&&window.zaismaWatch.size(t,H,k),X.set(e,H),C()}var bt=6,Pt=new Map;function kt(e){return e!=="none"&&(e.match(/rgba?\\([^)]*\\)/g)||[""]).some(function(r){var x=r.match(/[\\d.]+/g);return!x||x.length<4||Number(x[3])>.04})}function z(e,r){if(/^(IMG|VIDEO|CANVAS|IFRAME)$/.test(e.tagName)||r.backgroundImage!=="none"||kt(r.boxShadow))return!0;var x=r.backgroundColor.match(/[\\d.]+/g);return x&&(x.length<4||Number(x[3])>.04)?!0:["Top","Right","Bottom","Left"].some(function(R){return parseFloat(r["border"+R+"Width"])>0&&!/rgba\\(.*, 0\\)|transparent/.test(r["border"+R+"Color"])})}function B(e){var r=[],x=T(e),R=Math.max.apply(null,q(e))/(1-Math.SQRT2/2);function P(I){return[[I.left-x.left,I.top-x.top],[x.right-I.right,I.top-x.top],[x.right-I.right,x.bottom-I.bottom],[I.left-x.left,x.bottom-I.bottom]].some(function(H){return Math.max(0,H[0])+Math.max(0,H[1])<R})}function Q(I){Array.prototype.forEach.call(I.children,function(H){if(!(H instanceof SVGElement||H.matches("[data-glass], [data-cut-line], .edge, .cut-line, dialog"))){var it=H.getBoundingClientRect();if(!(!it.width||!it.height||!P(it))){if(Pt.has(H)){r.push(H);return}var t=getComputedStyle(H);if(t.display==="contents"||t.display==="inline"||t.position==="fixed")return Q(H);t.clipPath==="none"&&Math.min(it.width,it.height)>=bt&&z(H,t)?r.push(H):Q(H)}}})}return Q(e),r}function at(e){if(Pt.has(e))return;var r=null;function x(){M(R)}function R(){var P=Y(e),Q=P[0],I=P[1];if(!(!Q||!I||!e.isConnected)){var H=_(f(Q,I,0,nt(e,Q,I),{start:!1,end:!1},e.hasAttribute("data-cut-bar"))),it=H.length===4&&H.every(function(o){return(o[0]===0||o[0]===Q)&&(o[1]===0||o[1]===I)}),t=it?"":U(H.length?H:[[0,0]]);t!==r&&(r=t,t?(e.style.setProperty("--cut-shape",t),e.style.clipPath=t):(e.style.removeProperty("--cut-shape"),e.style.removeProperty("clip-path")))}}Pt.set(e,x),X.set(e,x),window.zaismaWatch.size(e,x,k),x()}var ft="[data-glass]:not([data-cut-line])";function gt(){var e=Dt?Array.prototype.slice.call(document.querySelectorAll(ft)):Array.from(It);Dt=!1,It.clear(),k(function(){e.forEach(function(r){r.isConnected&&B(r).forEach(at)})})}window.zaismaSettings={set:function(e,r){var x=r||document.documentElement;x.classList.add("eases-settings"),e.theme!==void 0&&(e.theme==="light"||e.theme==="dark"?x.setAttribute("data-theme-choice",e.theme):x.removeAttribute("data-theme-choice"));var R=e.glass;R&&R.hueColor!==void 0&&(typeof R.hueColor=="string"&&/^#[0-9a-fA-F]{6}$/.test(R.hueColor)?x.style.setProperty("--glass-hue",R.hueColor):x.style.removeProperty("--glass-hue"))},read:function(e){var r=e||document.documentElement,x=r.style.getPropertyValue("--glass-hue").trim();return{theme:r.getAttribute("data-theme-choice")||null,glass:{hueColor:x||null}}}},window.zaismaGlass=W,document.addEventListener("fullscreenchange",function(){var e=window.zaismaWatch;e&&requestAnimationFrame(function(){e.drawAll(),requestAnimationFrame(e.drawAll)})}),window.zaismaCutLine=yt,window.zaismaInput=(function(){var e=!1;return document.addEventListener("keydown",function(r){/^(Shift|Control|Alt|Meta|AltGraph|CapsLock)$/.test(r.key)||(e=!0)},!0),["pointerdown","mousedown","touchstart"].forEach(function(r){document.addEventListener(r,function(){e=!1},!0)}),{isKeyboard:function(){return e}}})();var At=typeof WeakSet=="function"?new WeakSet:{has:function(){return!1},add:function(){}};function Mt(e){if(e.querySelectorAll){var r=Array.prototype.slice.call(e.querySelectorAll("[data-glass]")),x=Array.prototype.slice.call(e.querySelectorAll("[data-cut-line]"));e.matches&&e.matches("[data-glass]")&&r.push(e),e.matches&&e.matches("[data-cut-line]")&&x.push(e),x.forEach(function(R){At.has(R)||R.hasAttribute("data-glass")||(At.add(R),yt(R))}),r.forEach(function(R){if(!At.has(R)){At.add(R);var P=W(R,function(){var Q=h(R,"pane");if(Q.some(function(H){return H>0})||!J(R))return Q;var I=Y(R);return R.cutCorners=nt(R,I[0],I[1])});/^[0\\s]+$/.test(R.getAttribute("data-glass-corners")||"")&&(X.set(R,P),C())}})}}k(function(){Mt(document)}),window.zaismaWatch.arriving(function(e){k(function(){e.forEach(function(r){r.addedNodes.forEach(Mt)})})});var zt=0,It=new Set,Dt=!1;function Ft(){clearTimeout(zt),zt=setTimeout(gt,50)}function qt(e){Array.isArray(e)?e.forEach(function(r){$t(r.target).forEach(function(x){It.add(x)})}):Dt=!0,Ft()}function Gt(e){It.add(e),Ft()}function $t(e){if(e.nodeType!==1)return[];for(var r=Array.prototype.slice.call(e.querySelectorAll(ft)),x=e.closest(ft);x;)r.push(x),x=x.parentElement&&x.parentElement.closest(ft);return r}qt(),window.zaismaWatch.page(qt)})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.materials||(G.materials=!0,(function(){function w(c){var p=c.scrollHeight<=c.clientHeight+1&&c.scrollWidth<=c.clientWidth+1;if(c.classList.toggle("fits",p),!p){for(var h=c.parentElement&&c.parentElement.closest("[data-glass]"),a=0,i=0,m=c;m&&m!==h;)a+=m.offsetLeft,i+=m.offsetTop,m=m.offsetParent;if(m){var u=c.parentElement.closest(".scrolls:not(.fits)");if(u&&h.contains(u)){["top-left","top-right","bottom-right","bottom-left"].forEach(function(v){c.style.setProperty("--inset-"+v,"9999px")});return}var s=Math.max(0,h.offsetWidth-a-c.offsetWidth),l=Math.max(0,h.offsetHeight-i-c.offsetHeight);c.style.setProperty("--inset-top-left",a+i+"px"),c.style.setProperty("--inset-top-right",s+i+"px"),c.style.setProperty("--inset-bottom-right",s+l+"px"),c.style.setProperty("--inset-bottom-left",a+l+"px")}}}window.zaismaFit=w,window.MutationObserver&&new MutationObserver(function(c){c.forEach(function(p){p.target.open&&p.target.querySelectorAll(".scrolls").forEach(w)})}).observe(document.documentElement,{subtree:!0,attributes:!0,attributeFilter:["open"]}),window.zaismaWait=function(c,p){if(!c)return Promise.resolve(p);clearTimeout(c.zaismaWaitEnding),c.zaismaIsAnswered=!1,c.getAttribute("aria-busy")!=="true"&&(c.zaismaWaitStart=performance.now()),c.setAttribute("aria-busy","true"),window.zaismaWaiting.redraw(c);function h(){c.removeAttribute("aria-busy"),window.zaismaWaiting.redraw(c)}function a(){c.zaismaIsAnswered=!0;var i=window.matchMedia("(prefers-reduced-motion: reduce)").matches?0:parseFloat(getComputedStyle(c).getPropertyValue("--waiting-glint-sweep"))*1e3,m=i-(performance.now()-c.zaismaWaitStart);m>0?c.zaismaWaitEnding=setTimeout(h,m):h()}return Promise.resolve(p).then(function(i){return a(),i},function(i){throw a(),i})},document.addEventListener("click",function(c){var p=c.target.closest&&c.target.closest('[aria-busy="true"]');p&&p!==document.body&&!p.zaismaIsAnswered&&(c.preventDefault(),c.stopImmediatePropagation())},!0),window.zaismaWatch.each(".scrolls",function(c){w(c),window.zaismaWatch.size(c,function(){w(c)}),Array.prototype.forEach.call(c.children,function(p){window.zaismaWatch.size(p,function(){w(c)})})})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.rows||(G.rows=!0,(function(){if(!window.zaismaWatch)return;function w(h){var a=Array.prototype.slice.call(h.children);h.classList.add("is-measuring");var i=0,m=h.offsetWidth?h.getBoundingClientRect().width/h.offsetWidth:1;h.classList.contains("widths-equal")&&a.forEach(function(M){M.classList.contains("fills")&&(i=Math.max(i,M.getBoundingClientRect().width/(m||1)))}),h.classList.remove("is-measuring");var u=i?Math.ceil(i)+"px":"";h.style.getPropertyValue("--equal-cell-width")!==u&&h.style.setProperty("--equal-cell-width",u);var s=h.classList.contains("is-wrapped");s&&h.classList.remove("is-wrapped");var l=getComputedStyle(h).direction==="rtl",v=null,n=!1;a.forEach(function(M){var k=M.getBoundingClientRect();if(!(k.width<1)){var N=l?-k.right:k.left;v!==null&&N<=v+.5&&(n=!0),v=N}}),n&&h.classList.add("is-wrapped")}window.zaismaWatch.each(".layout-row",function(h){w(h),window.zaismaWatch.size(h,function(){w(h)})}),window.zaismaWatch.fontArrived(function(){document.querySelectorAll(".layout-row").forEach(w)});var c=".stack-cell, .row-cell";function p(h){var a=h.children.length===1&&h.firstElementChild.hidden;h.classList.contains("holds-only-hidden")!==a&&h.classList.toggle("holds-only-hidden",a)}window.zaismaWatch.each(c,p),window.zaismaWatch.page(function(h){h.forEach(function(a){var i=a.type==="attributes"?a.target.parentElement:a.target;i&&i.matches&&i.matches(c)&&(a.type!=="attributes"||a.attributeName==="hidden")&&p(i)})})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.compacting||(G.compacting=!0,(function(){var w=24;window.zaismaWatch.each("[data-compacts]",function(c){if(c.hasAttribute("data-stays-compact")){c.classList.add("is-compact");return}var p=c.parentElement&&c.parentElement.querySelector(":scope > [data-scroll-box]"),h=p||window;function a(){return p?p.scrollTop:window.scrollY}function i(){var m=a();m>w?c.classList.add("is-compact"):m<=0&&c.classList.remove("is-compact")}h.addEventListener("scroll",i,{passive:!0}),i()})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["header-fit"]||(G["header-fit"]=!0,(function(){var w=window.matchMedia("(orientation: landscape) and (max-height: 500px) and (max-width: 64em)"),c=4;function p(u,s){u.classList.toggle("has-search-button",s>0),u.classList.toggle("has-tight-tabs",s>1),u.classList.toggle("has-icon-tabs",s>2),u.classList.toggle("has-icon-sign-in",s>3)}function h(u){var s=0;return Array.prototype.forEach.call(u.querySelectorAll(":scope > a, :scope > button"),function(l){s=Math.max(s,l.offsetLeft+l.offsetWidth)}),s+parseFloat(getComputedStyle(u).paddingRight)}function a(u,s){p(u,s);var l=getComputedStyle(u),v=parseFloat(l.paddingLeft)+parseFloat(l.paddingRight);return Array.prototype.forEach.call(u.children,function(n){var M=getComputedStyle(n);if(!(n.classList.contains("edge")||M.display==="none")){var k=n.querySelector(":scope > .switch-well .tab-switch");v+=parseFloat(M.marginLeft)+parseFloat(M.marginRight)+(n.matches(".find")?parseFloat(M.minWidth):Math.max(n.offsetWidth,k?h(k):0))}}),v}function i(u){if(!(!u.clientWidth||u.checkVisibility&&!u.checkVisibility({contentVisibilityAuto:!0}))){if(w.matches&&u.matches("body > .top")){p(u,1);return}for(var s=u.clientWidth,l=u.neededWidths||(u.neededWidths=[]),v=u.querySelector(".find"),n=!!v&&v.contains(document.activeElement),M=u.classList.contains("searching"),k=!1,N=0;N<c;N++){if(l[N]===void 0){if(n)return;k||(k=!0,u.classList.remove("searching"),u.classList.add("is-measuring"),u.style.width="max-content"),l[N]=a(u,N)}if(l[N]<=s)break}k&&(u.style.width="",u.classList.remove("is-measuring"),M&&u.classList.add("searching")),n&&N>0&&!u.classList.contains("typing-search")&&u.classList.add("searching"),p(u,N)}}function m(u){if(u.fitToRoom)return;function s(){u.neededWidths=null,i(u)}u.fitToRoom=function(){i(u)},i(u),window.zaismaWatch.size(u,u.fitToRoom);var l=u.querySelector(".tab-switch");l&&window.zaismaWatch.size(l,s),window.zaismaWatch.fontsIn(s),w.addEventListener("change",s)}window.zaismaWatch.each("header.top",m),window.zaismaWatch.arriving(function(){var u=document.querySelector("body > header.top");u&&u.nextSibling&&m(u)})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.tables||(G.tables=!0,(function(){function w(p){var h=p.querySelector(":scope > table > thead"),a=p.querySelector(":scope > table > tbody > tr > th, :scope > table > thead > tr > th:first-child");p.style.setProperty("--shown-width",p.clientWidth+"px"),p.style.setProperty("--shown-height",p.clientHeight+"px"),h&&p.style.setProperty("--head-height",h.offsetHeight+"px"),a&&p.style.setProperty("--row-head-width",a.offsetWidth+"px")}var c=typeof ResizeObserver=="function"?new ResizeObserver(function(p){p.forEach(function(h){var a=h.target.closest(".table-scroll");a&&w(a)})}):null;window.zaismaWatch.each(".table-scroll",function(p){if(w(p),c){c.observe(p);var h=p.querySelector(":scope > table");h&&c.observe(h)}})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.rails||(G.rails=!0,(function(){var w=new Set,c=!1;function p(s){w.add(s),!c&&(c=!0,requestAnimationFrame(function(){c=!1;var l=Array.from(w);w.clear();var v=l.map(function(N){return N.place()});l.forEach(function(N,b){N.putPlace(v[b])});var n=l.filter(function(N,b){return N.isUnplaced(v[b])}),M=n.map(function(N){return N.place()});n.forEach(function(N,b){v[l.indexOf(N)]=M[b],N.putPlace(M[b])});var k=l.map(function(N,b){return N.measure(v[b])});l.forEach(function(N,b){N.put(v[b],k[b])})}))}function h(s,l){for(var v=s.nextElementSibling;v&&v.hasAttribute("data-rail");v=v.nextElementSibling)if(v.getAttribute("data-rail")===l)return!0;return!1}function a(s,l){var v=s.map(function(n){var M=n.tagName==="TEXTAREA"||n.tagName==="SELECT"&&(n.multiple||n.size>1);if(/^(SELECT|INPUT)$/.test(n.tagName)&&!M||h(n,"box")||getComputedStyle(n).scrollbarWidth==="none"&&!n.hasAttribute("data-side-rail")&&!n.classList.contains("own-scroll")||n.classList.contains("rail-thumb"))return null;var k=n.parentElement;return!k||k===document.body?null:{box:n,isControl:M,isParentStatic:getComputedStyle(k).position==="static"}});v.forEach(function(n){n&&(n.isParentStatic&&(n.box.parentElement.style.position="relative"),n.box.insertAdjacentHTML("afterend",'<div class="rail" data-rail="box" aria-hidden="true"><div class="rail-line carving deep" data-cut-line="3" data-cut-sizes><svg class="cut-line" aria-hidden="true"><polygon/></svg><div class="rail-groove"><div class="rail-thumb"></div></div></div></div>'))}),l.querySelectorAll("[data-side-rail]").forEach(function(n){h(n,"side")||n.insertAdjacentHTML("afterend",'<div class="rail sideways" data-rail="side" aria-hidden="true"><div class="rail-line carving deep" data-cut-line="3" data-cut-sizes><svg class="cut-line" aria-hidden="true"><polygon/></svg><div class="rail-groove"><div class="rail-thumb"></div></div></div></div>')})}var i=new WeakSet,m=!1;function u(){document.querySelectorAll("[data-rail]").forEach(function(s){if(i.has(s))return;if(s.getAttribute("data-rail")==="page"&&document.readyState==="loading"){document.documentElement.classList.add("own-scroll"),m||(m=!0,window.zaismaWatch.whenRead(u));return}i.add(s);for(var l=s.getAttribute("data-rail")==="page",v=s.getAttribute("data-rail")==="side",n=l?null:s.previousElementSibling;n&&n.hasAttribute("data-rail");)n=n.previousElementSibling;if(n&&!n.matches("[data-rail-scroller]")&&(n=n.querySelector(":scope > [data-rail-scroller]")||n),!l&&!n)return;var M=s.querySelector(".rail-groove"),k=s.querySelector(".rail-thumb"),N=getComputedStyle(s),b=parseFloat(N.getPropertyValue("--rail-reach"))||16,V=parseFloat(N.getPropertyValue("--rail-width"))||10,g=2*Math.SQRT2,T=l&&window.CSS&&CSS.supports("animation-timeline: scroll()");T&&s.classList.add("follows-scroll"),l?document.documentElement.classList.add("own-scroll"):n.classList.add("own-scroll");var Y=!1,tt=function(){return parseFloat(getComputedStyle(document.documentElement).scrollPaddingTop)||90},X=l?Array.prototype.filter.call(document.querySelectorAll("[data-rail-mark]"),function(z){return!z.closest("[data-rail-marks-own]")}):Array.prototype.filter.call(n.querySelectorAll("[data-rail-mark]"),function(z){var B=z.parentElement.closest("[data-side-rail], [data-rail-marks-own]");return!B||B===n||!n.contains(B)});!l&&X.length&&n.setAttribute("data-rail-marks-own","");var D=null;X.length&&(D=document.createElement("span"),D.className="tag rail-name rail-riding",D.setAttribute("data-cut-line","0"),D.appendChild(document.createElement("span")),s.appendChild(D));function ut(z,B){if(l)return z.getBoundingClientRect().top+window.scrollY-(B===void 0?tt():B);var at=n.getBoundingClientRect(),ft=z.getBoundingClientRect();return v?ft.left-at.left+n.scrollLeft:ft.top-at.top+n.scrollTop}var ct=X.map(function(z){var B=document.createElement("button"),at=document.createElement("span");B.type="button",B.className="rail-mark",B.tabIndex=-1,at.className="tag rail-name",at.setAttribute("data-cut-line","0"),at.appendChild(document.createElement("span")).textContent=z.getAttribute("data-rail-mark"),B.appendChild(at),s.appendChild(B),B.addEventListener("click",function(){if(_){_=!1;return}ft()});function ft(){var gt=window.matchMedia("(prefers-reduced-motion: reduce)").matches?"auto":"smooth";l?window.scrollTo({top:ut(z),behavior:gt}):n.scrollTo(v?{left:ut(z),behavior:gt}:{top:ut(z),behavior:gt})}return B.goToPart=ft,{part:z,mark:B,name:at}});function C(z){ct.forEach(function(B){if(!B.mark.hidden){var at=parseFloat(B.mark.style[v?"left":"top"])||0,ft=(B.size||0)/2,gt=Math.max(ft,Math.min(z-ft,at));B.restShift=(gt-at).toFixed(1)+"px",B.name.style.setProperty("--label-shift",B.restShift)}})}function S(){return l?window.scrollY:v?n.scrollLeft:n.scrollTop}function L(z){l?window.scrollTo(0,z):v?n.scrollLeft=z:n.scrollTop=z}function W(z){return v?z.clientX:z.clientY}var F={track:0,thumb:0,max:1,start:0,startIn:g},lt=s.querySelector(".rail-line");function K(z){if(l)return g;var B=lt.cutCorners||[0,0,0,0],at=v?z?B[3]:B[2]:z?B[1]:B[2];return Math.max(0,at-(4-2*Math.SQRT2)-(v?M.clientHeight:M.clientWidth))}var ot=l?document.querySelector("[data-rail-starts-below]"):null,vt=10,Ct={place:function(){var z={whole:l?document.documentElement.scrollHeight:v?n.scrollWidth:n.scrollHeight,view:l?window.innerHeight:v?n.clientWidth:n.clientHeight};if(z.max=z.whole-z.view,ot){var B=ot.getBoundingClientRect();z.top=Math.round((B.height>B.width?0:B.bottom)+vt)+"px"}if(!l){var at=n.closest("[data-glass], .carving"),ft=s.offsetParent;if(at&&ft){var gt=at.getBoundingClientRect(),At=parseFloat(getComputedStyle(at).getPropertyValue("--rail-inset"))||0,Mt=Math.min(gt.width,gt.height),zt=(at.cutCorners||(window.zaismaCorners?window.zaismaCorners(at,"pane"):[0,0,0,0])).map(function(O){return Math.min(O,Math.round(Mt*.3))}),It=At*(Math.SQRT2-1),Dt=function(O){return Math.max(At,O-V+It)};if(v){var Ft=s.getBoundingClientRect(),qt=Ft.left-(parseFloat(s.style.marginLeft)||0),Gt=Ft.right+(parseFloat(s.style.marginRight)||0),$t=gt.bottom-Ft.bottom<=At+2,e=n.querySelector(":scope > table.has-row-heads > tbody > tr > th"),r=e?e.offsetWidth:0,x=n.getBoundingClientRect();z.side=$t?{left:Math.max(0,gt.left+Dt(zt[3])-qt,r?x.left+r+At-qt:0),right:Math.max(0,Gt-(gt.right-Dt(zt[2])))}:{left:0,right:0}}else{var R=ft.getBoundingClientRect(),P=n.getBoundingClientRect(),Q=at.offsetWidth?gt.width/at.offsetWidth:1,I=n.querySelector(":scope > table > thead"),H=Dt(zt[1]),it=Dt(zt[2]),t=I?I.offsetHeight:0,o=n.classList.contains("shows-side-rail")&&n.nextElementSibling&&n.nextElementSibling.matches(".rail.sideways")?(V+2*At)*Q:0,d=P.top+(t?(t+At)*Q:0),E=P.bottom-o,A=Math.max(d,gt.top+H*Q),$=Math.min(E,gt.bottom-it*Q),Et=Math.min(P.right,gt.right-At*Q);z.box={top:(A-R.top)/Q-ft.clientTop,height:Math.max(0,$-A)/Q,left:(Et-R.left)/Q-ft.clientLeft-(b+V)/2}}}}return z},putPlace:function(z){z.top&&(s.style.top=z.top),z.side&&(s.style.marginLeft=z.side.left.toFixed(1)+"px",s.style.marginRight=z.side.right.toFixed(1)+"px"),z.box&&(s.style.top=z.box.top.toFixed(1)+"px",s.style.height=z.box.height.toFixed(1)+"px",s.style.left=z.box.left.toFixed(1)+"px"),Y!==z.max>4&&(Y=z.max>4,s.classList.toggle("is-on",Y)),l||n.classList.toggle(v?"shows-side-rail":"shows-rail",Y)},isUnplaced:function(z){return!l&&Y&&!z.box&&!z.side},measure:function(){if(!Y)return null;var z=l&&ct.length?tt():0;return{track:(v?M.clientWidth:M.clientHeight)-K(!0)-K(!1),start:(v?M.offsetLeft+M.parentElement.offsetLeft:M.offsetTop+M.parentElement.offsetTop)+K(!0),startIn:K(!0),at:S(),marks:ct.map(function(B){var at=!!B.part.offsetParent;return at?{shown:!0,spot:ut(B.part,z),size:v?B.name.offsetWidth:B.name.offsetHeight}:{shown:!1}})}},put:function(z,B){if(B){var at=B.track,ft=z.max,gt=Math.max(36,Math.round(at*z.view/z.whole));F={track:at,thumb:gt,max:ft,start:B.start,startIn:B.startIn},T?k.style.setProperty("--thumb-share",(z.view/z.whole).toFixed(4)):k.style[v?"width":"height"]=gt+"px",Rt(B.at),ct.forEach(function(At,Mt){var zt=B.marks[Mt];if(At.mark.hidden=!zt.shown,!!zt.shown){var It=Math.max(0,Math.min(ft,zt.spot));At.mark.style[v?"left":"top"]=(B.start+(at-gt)*It/ft+gt/2).toFixed(1)+"px",At.size=zt.size||(v?At.name.offsetWidth:At.name.offsetHeight)}}),C(at)}}},Lt=!1;function mt(){if(nt){Lt=!0;return}p(Ct)}function Rt(z){nt&&bt(),Y&&!T&&(k.style.transform=(v?"translateX(":"translateY(")+(F.startIn+(F.track-F.thumb)*Math.min(1,(z===void 0?S():z)/F.max)).toFixed(1)+"px)")}var et=0,q=!1;function J(){s.classList.contains("awake")||s.classList.add("awake"),clearTimeout(et),et=setTimeout(function(){s.classList.remove("awake")},1100)}(l?window:n).addEventListener("scroll",function(){J(),!q&&(q=!0,requestAnimationFrame(function(){q=!1,Rt()}))},{passive:!0}),window.zaismaWatch.resize(mt);var wt=l?document.body:Array.prototype.filter.call(n.children,function(z){return!z.matches("svg, .edge, .cut-line, .rail")});l?window.zaismaWatch.size(wt,mt):Array.prototype.concat.apply([n],Array.prototype.slice.call(wt)).forEach(function(z){window.zaismaWatch.size(z,mt)}),ot&&window.zaismaWatch.size(ot,mt),l||window.zaismaWatch.page(function(z){z.some(function(B){return n.contains(B.target)})&&mt()});var nt=null,Wt=6,St=8;function f(z){var B=W(z);if(!nt.isTouch||!l)return B;var at=B+window.scrollY,ft=B,gt=1/0;return nt.scrolls.forEach(function(At){var Mt=at-At,zt=Math.abs(Mt-nt.last);zt<gt&&(gt=zt,ft=Mt)}),ft}function y(z,B){z.preventDefault();var at=S();if(B){var ft=W(z)-(v?M.getBoundingClientRect().left:M.getBoundingClientRect().top)-F.thumb/2;L(Math.max(0,Math.min(1,ft/(F.track-F.thumb)))*F.max)}nt={y:W(z),last:W(z),from:S(),scrolls:[at,S()],isMoving:z.pointerType==="mouse",isTouch:z.pointerType!=="mouse"},s.classList.add("dragging"),!l&&getComputedStyle(n).scrollSnapType!=="none"&&n.classList.add("is-dragged");try{s.setPointerCapture(z.pointerId)}catch{}}k.addEventListener("pointerdown",function(z){y(z,!1)});var _=!1,U=null,st=0;s.addEventListener("pointerdown",function(z){if(!k.contains(z.target)){if(z.target.closest(".rail-mark")){var B=k.getBoundingClientRect();_=W(z)>=(v?B.left:B.top)&&W(z)<=(v?B.right:B.bottom),_&&(U=z.target.closest(".rail-mark"),st=W(z),y(z,!1));return}y(z,!0)}});function j(z){if(nt){var B=f(z);if(nt.last=B,!nt.isMoving){if(Math.abs(B-nt.y)<Wt)return;nt.isMoving=!0,nt.y=B,nt.from=S()}var at=Math.max(0,Math.min(F.max,nt.from+(B-nt.y)*F.max/Math.max(1,F.track-F.thumb)));Math.abs(at-S())<1||(L(at),nt.scrolls.push(S()),nt.scrolls.length>St&&nt.scrolls.shift())}}s.addEventListener("pointermove",j),window.addEventListener("pointermove",function(z){nt&&!s.hasPointerCapture(z.pointerId)&&j(z)}),window.addEventListener("pointerup",function(z){nt&&!s.hasPointerCapture(z.pointerId)&&kt(z)}),window.addEventListener("pointercancel",function(){nt&&ht()});function ht(){nt=null,s.classList.remove("dragging"),yt(),Lt&&(Lt=!1,mt())}function yt(){if(!(l||!n.classList.contains("is-dragged"))){var z=n.getBoundingClientRect(),B=getComputedStyle(n),at=S(),ft=parseFloat(v?B.scrollPaddingLeft:B.scrollPaddingTop)||0,gt=v?z.left+n.clientLeft:z.top+n.clientTop,At=Array.prototype.filter.call(n.children,function(Ft){return getComputedStyle(Ft).scrollSnapAlign.indexOf("start")>=0}).map(function(Ft){var qt=Ft.getBoundingClientRect();return Math.max(0,Math.min(F.max,at+(v?qt.left:qt.top)-gt-ft))});At.push(0,F.max);var Mt=At.length?At.reduce(function(Ft,qt){return Math.abs(qt-at)<Math.abs(Ft-at)?qt:Ft}):at,zt=function(){nt||n.classList.remove("is-dragged")},It=parseFloat(getComputedStyle(document.documentElement).getPropertyValue("--motion-arrive"))*1e3||300;if(Math.abs(Mt-at)<1||matchMedia("(prefers-reduced-motion: reduce)").matches)return L(Mt),zt();var Dt=performance.now();(function Ft(qt){if(!nt){var Gt=Math.min(1,(qt-Dt)/It);L(at+(Mt-at)*(1-Math.pow(1-Gt,3))),Gt<1?requestAnimationFrame(Ft):zt()}})(Dt)}}function bt(){if(!(!ct.length||!nt)){var z=F.start+(F.track-F.thumb)*Math.min(1,S()/F.max)+F.thumb/2,B=null,at=l?{start:0,size:window.innerHeight}:(function(ft){return{start:v?ft.left:ft.top,size:v?ft.width:ft.height}})(n.getBoundingClientRect());ct.forEach(function(ft){if(!ft.mark.hidden){var gt=ft.part.getBoundingClientRect();(!B||(v?gt.left:gt.top)-at.start<=at.size/3)&&(B=ft)}}),B&&D.lastChild.textContent!==B.name.textContent&&(D.lastChild.textContent=B.name.textContent),D.style.setProperty("--riding-at",z.toFixed(1)+"px")}}s.addEventListener("pointermove",bt),s.addEventListener("pointerdown",bt);var Pt=18;function kt(z){var B=!!(nt&&nt.isMoving),at=U&&Math.abs(W(z)-st)<4?U:null;if(U=null,ht(),at){at.goToPart();return}if(!(!B||z.pointerType==="mouse"||!ct.length)){var ft=F.start+(F.track-F.thumb)*Math.min(1,S()/F.max)+F.thumb/2,gt=null,At=Pt;ct.forEach(function(Mt){if(!Mt.mark.hidden){var zt=Math.abs(parseFloat(Mt.mark.style[v?"left":"top"])-ft);zt<=At&&(At=zt,gt=Mt)}}),gt&>.mark.click()}}s.addEventListener("pointerup",kt),s.addEventListener("pointercancel",ht),mt(),J()})}a(window.zaismaWatch.scrollBoxes(),document),u(),window.zaismaWatch.page(function(s){var l=[],v=!1,n=!1;s.forEach(function(M){Array.prototype.forEach.call(M.addedNodes||[],function(k){k.nodeType!==1||!k.isConnected||(k.matches("[data-rail]")&&!i.has(k)&&(n=!0),!k.closest(".rail, svg, .edge, .cut-line")&&(window.zaismaWatch.scrollBoxesIn(k).forEach(function(N){l.indexOf(N)<0&&l.push(N)}),(k.matches("[data-side-rail]")||k.querySelector("[data-side-rail]"))&&(v=!0)))})}),!(!l.length&&!v&&!n)&&(a(l,document),u())})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["scroll-fades"]||(G["scroll-fades"]=!0,(function(){var w=window.matchMedia("(max-width: 760px), (max-height: 500px)"),c=[],p=null;function h(){return w.matches?20:34}window.zaismaScrollFadePx=h;function a(b){var V=b.querySelector(":scope > table > thead");return{scrollTop:b.scrollTop,scrollHeight:b.scrollHeight,clientHeight:b.clientHeight,headPx:V?V.offsetHeight:null}}function i(b,V){var g=V.scrollHeight>V.clientHeight+1,T=V.scrollTop>.5?h():0,Y=V.scrollHeight-V.clientHeight-V.scrollTop>.5?h():0;b.style.setProperty("--fade-top",Math.max(0,T)+"px"),b.style.setProperty("--fade-bottom",Math.max(0,Y)+"px"),V.headPx!==null&&b.style.setProperty("--fade-from",V.headPx+"px"),b.classList.toggle("is-fading",g),b.classList.toggle("is-scrollable",g)}function m(b){var V=b.map(a);b.forEach(function(g,T){i(g,V[T])})}function u(b){p=new Set,b();var V=Array.from(p);p=null,m(V)}function s(b){p?p.add(b):m([b])}function l(b){b.classList.toggle("is-scrollable",b.scrollHeight>b.clientHeight+1)}var v=new WeakSet;function n(b){v.has(b)||(v.add(b),l(b),window.zaismaWatch.size(b.firstElementChild||b,function(){l(b)}),b.addEventListener("input",function(){l(b)}))}function M(){window.zaismaWatch.each("[data-scroll-box]",n),k(window.zaismaWatch.scrollBoxes())}function k(b){var V=b.filter(function(g){return g.classList.contains("scroll-fades")?!1:/^(TEXTAREA|SELECT|INPUT)$/.test(g.tagName)||g.hasAttribute("data-scroll-box")||g.hasAttribute("data-own-fade")?(n(g),!1):!0});c=c.filter(function(g){return g.isConnected}),V.forEach(function(g){g.classList.add("scroll-fades"),c.push(g);var T=!1;g.addEventListener("scroll",function(){T||(T=!0,requestAnimationFrame(function(){T=!1,s(g)}))},{passive:!0}),window.zaismaWatch.size(g,function(){s(g)},u)}),m(V)}M(),window.zaismaWatch.page(function(b){var V=[];b.forEach(function(g){Array.prototype.forEach.call(g.addedNodes||[],function(T){T.nodeType!==1||!T.isConnected||T.closest(".rail, svg, .edge, .cut-line")||window.zaismaWatch.scrollBoxesIn(T).forEach(function(Y){V.indexOf(Y)<0&&V.push(Y)})})}),V.length&&k(V)}),window.zaismaWatch.resize(function(){m(c)});var N=window.matchMedia("(prefers-reduced-motion: reduce)").matches;window.zaismaWatch.each("[data-fades-sideways]",function(b){function V(){return Array.prototype.filter.call(b.querySelectorAll(":scope > *, :scope > * > *"),function(L){return L.classList.contains("folded")||L.hasAttribute("aria-hidden")||L.children.length&&L.parentElement===b&&L.querySelector(":scope > a, :scope > button, :scope > .cover")?!1:L.getBoundingClientRect().width>=1&&!/^(absolute|fixed)$/.test(getComputedStyle(L).position)})}var g=null;function T(){var L=b.getBoundingClientRect(),W=1/0,F=-1/0,lt=b.scrollLeft;V().forEach(function(K){var ot=K.getBoundingClientRect();W=Math.min(W,ot.left),F=Math.max(F,ot.right)}),g={start:W===1/0?null:W-L.left+lt,end:F-L.left+lt,width:b.clientWidth,whole:b.scrollWidth}}function Y(){g||T();var L=b.scrollLeft,W=L,F=g.whole-g.width-L;return g.start===null?{before:W,after:F}:{before:Math.max(L-g.start,W),after:Math.max(g.end-L-g.width,F)}}function tt(){var L=Y();return b.classList.toggle("more-left",L.before>2),b.classList.toggle("more-right",L.after>2),L}var X=b.querySelector('[aria-current="page"], [aria-pressed="true"]'),D=!1;function ut(){X&&!D&&b.scrollWidth-b.clientWidth>1&&(D=!0,b.showWhole(X,!1))}function ct(){g=null,ut(),tt()}function C(L){var W=L.getBoundingClientRect(),F=W.left-b.getBoundingClientRect().left+b.scrollLeft;return{start:F,end:F+W.width}}b.showWhole=function(L,W){var F=getComputedStyle(b),lt=b.scrollWidth-b.clientWidth,K=b.scrollLeft,ot=C(L),vt=parseFloat(F.scrollPaddingLeft)||0,Ct=parseFloat(F.getPropertyValue("--fade-sideways-px"))||vt;if(!(lt<=1)){var Lt=function(q){return q<lt-1?Ct:0},mt=K;ot.start<K+(K>1?vt:0)?mt=ot.start-vt:ot.end>K+b.clientWidth-Lt(K)&&(mt=ot.start-vt,V().some(function(q){var J=Math.max(0,Math.min(lt,C(q).start-vt));return J>K&&ot.end<=J+b.clientWidth-Lt(J)?(mt=J,!0):!1}));var Rt=V(),et=L===Rt[Rt.length-1];if(L===Rt[0]?mt=0:et&&(mt=lt),mt=Math.max(0,Math.min(lt,mt)),!(Math.abs(mt-K)<1)){if(!W||N){b.scrollLeft=mt;return}b.scrollTo({left:mt,behavior:"smooth"}),clearTimeout(b.settleTimer),b.settleTimer=setTimeout(function(){et&&(mt=b.scrollWidth-b.clientWidth),Math.abs(b.scrollLeft-mt)>1&&b.scrollTo({left:mt,behavior:"smooth"})},450)}}},X&&window.zaismaWatch.fontsIn(function(){D&&b.showWhole(X,!1)});var S=!1;b.addEventListener("scroll",function(){S||(S=!0,requestAnimationFrame(function(){S=!1,tt()}))},{passive:!0}),window.zaismaWatch.size(b,ct),b.firstElementChild&&window.zaismaWatch.size(b.firstElementChild,ct),window.zaismaWatch.fontArrived(ct),ct(),requestAnimationFrame(function(){requestAnimationFrame(function(){b.classList.add("fades-ease")})})})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.backdrop||(G.backdrop=!0,(function(){var w=\`
|
|
11049
11101
|
float h1(float n) { return fract(sin(n * 127.1) * 43758.5453); }
|
|
11050
11102
|
float h2(vec2 p) { return fract(sin(dot(p, vec2(127.1, 311.7))) * 43758.5453); }
|
|
11051
11103
|
vec2 h22(vec2 p) { p = vec2(dot(p, vec2(127.1, 311.7)), dot(p, vec2(269.5, 183.3))); return fract(sin(p) * 43758.5453); }
|
|
@@ -11086,7 +11138,7 @@ void mainImage(out vec4 o, in vec2 f) {
|
|
|
11086
11138
|
col += (h2(f) + h2(f + 17.31) - 1.0) / 255.0;
|
|
11087
11139
|
o = vec4(col, 1.0);
|
|
11088
11140
|
}
|
|
11089
|
-
\`,
|
|
11141
|
+
\`,p=\`
|
|
11090
11142
|
uniform vec4 zaismaPaneCuts[16]; // each pane's cut corners: top left, top right, bottom right, bottom left; 4096 added to the last on smoked glass
|
|
11091
11143
|
uniform float zaismaPixel; // canvas pixels per CSS pixel
|
|
11092
11144
|
uniform vec2 zaismaViewOffset; // where the canvas sits in the scene it shows a part of (the gallery's framed examples), in its pixels
|
|
@@ -11160,13 +11212,13 @@ void main() {
|
|
|
11160
11212
|
vec3 low = min(min(min(north, south), min(east, west)), color), high = max(max(max(north, south), max(east, west)), color);
|
|
11161
11213
|
vec3 weight = -sqrt(clamp(min(low, 2.0 - high) / max(high, vec3(0.0001)), 0.0, 1.0)) / 7.0;
|
|
11162
11214
|
zaismaFragColor = vec4(clamp((color + (north + south + east + west) * weight) / (1.0 + 4.0 * weight), 0.0, 1.0), 1.0);
|
|
11163
|
-
}\`,u=.7,s=1.4,l=6e4,
|
|
11164
|
-
\`+
|
|
11215
|
+
}\`,u=.7,s=1.4,l=6e4,v=33,n=67,M=window.matchMedia("(prefers-reduced-motion: reduce)"),k=[],N=0,b=!1,V=!1,g=!0,T=!1;function Y(){b||(b=!0,V=!0,requestAnimationFrame(e))}function tt(t){var o=t.trim().replace("#","");o.length===3&&(o=o.split("").map(function(E){return E+E}).join(""));var d=parseInt(o,16)||0;return[(d>>16&255)/255,(d>>8&255)/255,(d&255)/255]}function X(t){var o=getComputedStyle(t);return{base:tt(o.getPropertyValue("--backdrop-base")),a:tt(o.getPropertyValue("--backdrop-a")),b:tt(o.getPropertyValue("--backdrop-b")),c:tt(o.getPropertyValue("--backdrop-c")),isDark:/dark/.test(o.colorScheme||"")}}var D=!0,ut=!0,ct=[],C=typeof WeakSet=="function"?new WeakSet:null;function S(){ut=!0,Y()}function L(){k.some(function(t){return!t.isOuter&&t.isInView})&&S()}function W(t){return t.closest(":has(> .backdrop)")}function F(){D=!1,ut=!0,ct=Array.prototype.filter.call(document.querySelectorAll("[data-glass]:not([data-cut-line])"),function(t){t.glassHost=W(t),t.glassHost&&t.glassHost.shownGlass&&Rt(t,t.glassHost.shownGlass);var o=getComputedStyle(t);return t.glassIsSmoked=/dark/.test(o.colorScheme||""),o.visibility!=="hidden"&&o.display!=="none"&&Number(o.opacity)>.05}),ct.forEach(function(t){C&&!C.has(t)&&(C.add(t),window.zaismaWatch.size(t,S))})}function lt(t,o,d){var E=Math.min(o,d);return window.zaismaCorners(t,"pane").map(function(A){return Math.min(A,Math.round(E*.3))})}function K(t){var o=t.canvas.getBoundingClientRect(),d=t.canvas.parentElement,E=t.isOuter?1:(t.drawnWidth||t.canvas.width)/Math.max(1,o.width),A=[];ct.forEach(function(O){if(O.glassHost===d){var Z=O.getBoundingClientRect();Z.width<24||Z.height<24||Z.right<o.left||Z.left>o.right||Z.bottom<o.top||Z.top>o.bottom||A.push({el:O,r:Z,area:Z.width*Z.height})}}),A.sort(function(O,Z){return Z.area-O.area}),A=A.slice(0,h).sort(function(O,Z){return O.area-Z.area});var $=new Float32Array(h*4),Et=new Float32Array(h*4);A.forEach(function(O,Z){var dt=O.r,rt=lt(O.el,dt.width,dt.height);$.set([(dt.left-o.left)*E,(o.bottom-dt.bottom)*E,(dt.right-o.left)*E,(o.bottom-dt.top)*E],Z*4),Et.set([rt[0]*E,rt[1]*E,rt[2]*E,rt[3]*E+(O.el.glassIsSmoked?4096:0)],Z*4)}),t.glass={rects:$,cuts:Et,count:A.length,scale:E,box:o,els:A.map(function(O){return O.el})},t.isDrawn=!1}function ot(t){var o=function(d){return d/=255,d<=.03928?d/12.92:Math.pow((d+.055)/1.055,2.4)};return .2126*o(t[0])+.7152*o(t[1])+.0722*o(t[2])}function vt(t,o){var d=ot(t),E=ot(o);return(Math.max(d,E)+.05)/(Math.min(d,E)+.05)}function Ct(t,o,d){return[t[0]+(o[0]-t[0])*d,t[1]+(o[1]-t[1])*d,t[2]+(o[2]-t[2])*d]}function Lt(t,o){for(var d=o.slice().sort(function(Z,dt){return ot(Z)-ot(dt)}),E=t.isSmoked?d[Math.floor(d.length*.75)]:d[Math.floor(d.length*.25)],A=.3;A<=.95;A+=.02){var $=Ct(E,t.base,A),Et=t.isSmoked?[247,249,252]:[20,23,28],O=t.isSmoked?Ct($,Et,.7):[89,96,106];if(vt($,O)>=4.5&&vt($,Et)>=6)return A}return .95}function mt(t){var o=t.reduce(function(Z,dt){return[Z[0]+dt[0],Z[1]+dt[1],Z[2]+dt[2]]},[0,0,0]),d=o.map(function(Z){return Z/t.length}),E={isSmoked:!1,base:Ct([255,255,255],d,.1)},A={isSmoked:!0,base:Ct([12,15,20],d,.3)},$=Lt(E,t),Et=Lt(A,t),O=$<=Et?E:A;return{isSmoked:O.isSmoked,tint:"rgba("+O.base.map(Math.round).join(", ")+", "+Math.min($,Et).toFixed(2)+")"}}function Rt(t,o){t.glassPick!==o&&(t.glassPick=o,t.classList.toggle("smoke",o.isSmoked),o.isSmoked?t.removeAttribute("data-theme-choice"):t.setAttribute("data-theme-choice","light"),t.style.setProperty("--glass-tint",o.tint))}function et(t,o){o.length&&q(t,mt(o))}function q(t,o){var d=t.canvas.parentElement;d&&(d.shownGlass=o,D=!0,d.ownThemeChoice===void 0&&(d.ownThemeChoice=d.getAttribute("data-theme-choice")),d.classList.toggle("smoke",o.isSmoked),o.isSmoked?d.removeAttribute("data-theme-choice"):d.setAttribute("data-theme-choice",d.ownThemeChoice||"light"),d.querySelectorAll("[data-glass]:not([data-cut-line])").forEach(function(E){W(E)===d&&Rt(E,d.shownGlass)}))}function J(t){for(var o=[],d=4*Math.max(1,Math.floor(t.length/4/2400)),E=0;E<t.length;E+=d)o.push([t[E],t[E+1],t[E+2]]);return o}function wt(t,o,d,E){var A=new Uint8Array(d*E*4);t.readPixels(0,0,d,E,t.RGBA,t.UNSIGNED_BYTE,A),et(o,J(A))}function nt(t){var o=t.still;if(!(!o||!o.naturalWidth)){var d=document.createElement("canvas"),E=Math.min(1,160/Math.max(o.naturalWidth,o.naturalHeight));d.width=Math.max(2,Math.round(o.naturalWidth*E)),d.height=Math.max(2,Math.round(o.naturalHeight*E));var A=d.getContext("2d",{willReadFrequently:!0});A.drawImage(o,0,0,d.width,d.height),t.isGlassAdapted=!0;try{et(t,J(A.getImageData(0,0,d.width,d.height).data))}catch{}}}function Wt(t){var o=t.canvas.contentWindow;if(o)try{o.postMessage({panes:[],isIdle:St},new URL(t.canvas.src).origin)}catch{}}var St=!1,f=0;function y(){St=!0,_()}function _(){k.forEach(function(t){t.kind==="frame"&&Wt(t)})}var U=null,st=!1;function j(){if(U)return U.isLost?null:U;if(st)return null;var t=document.createElement("canvas");t.width=2,t.height=2;var o=t.getContext("webgl2",{antialias:!1,depth:!1,stencil:!1,alpha:!1,powerPreference:"low-power"});if(!o)return st=!0,null;U={board:t,gl:o,programs:{},isLost:!1,parallel:o.getExtension("KHR_parallel_shader_compile")};function d(){o.bindVertexArray(o.createVertexArray()),o.bindBuffer(o.ARRAY_BUFFER,o.createBuffer()),o.bufferData(o.ARRAY_BUFFER,new Float32Array([-1,-1,3,-1,-1,3]),o.STATIC_DRAW),o.enableVertexAttribArray(0),o.vertexAttribPointer(0,2,o.FLOAT,!1,0,0),U.vertex=o.createShader(o.VERTEX_SHADER),o.shaderSource(U.vertex,i),o.compileShader(U.vertex),U.upscale={status:"compiling",names:["zaismaDrawn","zaismaDrawnSize","zaismaCanvasSize"]},ht(U.upscale,m),U.drawn={texture:o.createTexture(),framebuffer:o.createFramebuffer(),widthPx:0,heightPx:0}}return d(),t.addEventListener("webglcontextlost",function(E){E.preventDefault(),U.isLost=!0}),t.addEventListener("webglcontextrestored",function(){U.programs={},U.isLost=!1,d(),k.forEach(function(E){E.isDrawn=!1}),Y()}),U}function ht(t,o){var d=U.gl,E=d.createShader(d.FRAGMENT_SHADER),A=d.createProgram();d.shaderSource(E,o),d.compileShader(E),d.attachShader(A,U.vertex),d.attachShader(A,E),d.bindAttribLocation(A,0,"corner"),d.linkProgram(A),t.pending={program:A,fragment:E}}function yt(t){if(t.status!=="compiling")return t.status==="ready";var o=U.gl,d=t.pending;if(U.parallel&&!T&&!o.getProgramParameter(d.program,U.parallel.COMPLETION_STATUS_KHR))return!1;if(o.getProgramParameter(d.program,o.LINK_STATUS))t.program=d.program,t.status="ready",t.at={},t.names.forEach(function(A){t.at[A]=o.getUniformLocation(d.program,A)});else if(console.warn("Backdrop shader:",o.getShaderInfoLog(d.fragment)||o.getProgramInfoLog(d.program)),o.deleteProgram(d.program),t.status="failed",t.plainSource){var E=t.plainSource;t.plainSource=null,t.status="compiling",t.hasPass=!1,ht(t,E)}return o.deleteShader(d.fragment),t.status!=="compiling"&&(t.pending=null),t.status==="ready"}function bt(t,o){if(t.programs[o])return t.programs[o];var d=a+\`uniform float iDark;
|
|
11216
|
+
\`+w+o+\`
|
|
11165
11217
|
\`,E={status:"compiling",hasPass:!0,names:["iResolution","iTime","iDark","iGlassPanes","iGlassPaneCount","zaismaPaneCuts","zaismaPixel","zaismaViewOffset"],plainSource:d+\`uniform vec2 zaismaViewOffset;
|
|
11166
11218
|
out vec4 zaismaFragColor;
|
|
11167
|
-
void main() { vec4 color = vec4(0.0); mainImage(color, gl_FragCoord.xy + zaismaViewOffset); zaismaFragColor = vec4(color.rgb, 1.0); }\`};return ht(E,d+g),t.programs[o]=E,E}function Pt(t,o,d){var E=t.gl,A=t.drawn;return(A.widthPx<o||A.heightPx<d)&&(A.widthPx=Math.max(A.widthPx,o),A.heightPx=Math.max(A.heightPx,d),E.bindTexture(E.TEXTURE_2D,A.texture),E.texImage2D(E.TEXTURE_2D,0,E.RGBA8,A.widthPx,A.heightPx,0,E.RGBA,E.UNSIGNED_BYTE,null),E.texParameteri(E.TEXTURE_2D,E.TEXTURE_MIN_FILTER,E.LINEAR),E.texParameteri(E.TEXTURE_2D,E.TEXTURE_MAG_FILTER,E.LINEAR),E.texParameteri(E.TEXTURE_2D,E.TEXTURE_WRAP_S,E.CLAMP_TO_EDGE),E.texParameteri(E.TEXTURE_2D,E.TEXTURE_WRAP_T,E.CLAMP_TO_EDGE),E.bindFramebuffer(E.FRAMEBUFFER,A.framebuffer),E.framebufferTexture2D(E.FRAMEBUFFER,E.COLOR_ATTACHMENT0,E.TEXTURE_2D,A.texture,0)),A}function kt(t){var o=t.getAttribute("data-backdrop-shader")||c,d=j(),E=null;if(!d)return null;function A($,Et,O){var Z=j(),dt=Z&&bt(Z,o);if(!dt||!yt(dt)||!yt(Z.upscale))return dt&&(dt.status==="failed"||Z.upscale.status==="failed")&&(O.isLost=!0),!1;if(E=E||t.getContext("2d",{alpha:!1}),!E)return!1;var rt=Z.gl,Bt=Z.board,xt=t.width,_t=t.height,Tt=O.drawnWidth,Ut=O.drawnHeight,Vt=dt.at;(Bt.width<xt||Bt.height<_t)&&(Bt.width=Math.max(Bt.width,xt),Bt.height=Math.max(Bt.height,_t));var Kt=Pt(Z,Tt,Ut);rt.bindFramebuffer(rt.FRAMEBUFFER,Kt.framebuffer),rt.useProgram(dt.program),rt.viewport(0,0,Tt,Ut);var Yt=t.classList.contains("is-framed"),Nt=Yt?1.8:1,pt=Tt*Nt,Ht=Ut*Nt;rt.uniform3f(Vt.iResolution,pt,Ht,1),rt.uniform1f(Vt.iTime,$),rt.uniform1f(Vt.iDark,Et.darkShare),rt.uniform2f(Vt.zaismaViewOffset,(pt-Tt)/2,(Ht-Ut)/2);var Ot=!1;if(dt.hasPass){var Xt=O.glass||{rects:new Float32Array(h*4),cuts:new Float32Array(h*4),count:0,scale:1,box:t.getBoundingClientRect()};rt.uniform4fv(Vt.iGlassPanes,Xt.rects),rt.uniform4fv(Vt.zaismaPaneCuts,Xt.cuts),rt.uniform1i(Vt.iGlassPaneCount,Xt.count),rt.uniform1f(Vt.zaismaPixel,Xt.scale),Ot=t.hasAttribute("data-adapts-glass")&&!O.isGlassAdapted&&Xt.count>0}rt.drawArrays(rt.TRIANGLES,0,3);var Qt=Z.upscale;return rt.bindFramebuffer(rt.FRAMEBUFFER,null),rt.useProgram(Qt.program),rt.viewport(0,0,xt,_t),rt.activeTexture(rt.TEXTURE0),rt.bindTexture(rt.TEXTURE_2D,Kt.texture),rt.uniform1i(Qt.at.zaismaDrawn,0),rt.uniform2f(Qt.at.zaismaDrawnSize,Tt,Ut),rt.uniform2f(Qt.at.zaismaCanvasSize,xt,_t),rt.drawArrays(rt.TRIANGLES,0,3),Ot&&(O.isGlassAdapted=!0,wt(rt,O,xt,_t)),E.drawImage(Bt,0,Bt.height-_t,xt,_t,0,0,xt,_t),t.classList.contains("is-drawn")||t.classList.add("is-drawn"),!0}return A.prepare=function(){var $=j();$&&bt($,o)},A}var z=500;function B(t,o,d){return t.map(function(E,A){return E+(o[A]-E)*d})}function at(t,o){var d=M.matches||!t.from?1:Math.min(1,(o-t.fadeStartMs)/z);if(d>=1)return t.from=null,Object.assign({},t.target,{darkShare:t.target.isDark?1:0});var E=d*d*(3-2*d),A=t.from,$=t.target;return{base:B(A.base,$.base,E),a:B(A.a,$.a,E),b:B(A.b,$.b,E),c:B(A.c,$.c,E),isDark:E<.5?A.isDark:$.isDark,darkShare:(A.darkShare!==void 0?A.darkShare:A.isDark?1:0)+(($.isDark?1:0)-(A.darkShare!==void 0?A.darkShare:A.isDark?1:0))*E}}var ft=1e3,gt="zaisma:backdrop-lag-s",At=performance.now(),Mt=1,zt=performance.now(),It=!1,Dt=Date.now()/1e3;try{Dt-=Number(sessionStorage.getItem(gt))||0}catch{}function Ft(t){var o=Math.max(0,t-zt);zt=t,Mt=t-At>l?Math.max(0,Mt-o/ft):Math.min(1,Mt+o/ft),Dt+=Mt*o/1e3,It=Mt===0}function qt(){At=performance.now(),clearTimeout(f),f=setTimeout(y,l),St&&(St=!1,_()),It&&(It=!1,zt=At,k.forEach(function(t){t.isDrawn=!1}),Y())}["pointerdown","pointermove","keydown","wheel","touchstart","scroll"].forEach(function(t){window.addEventListener(t,qt,{passive:!0,capture:!0})}),f=setTimeout(y,l),window.addEventListener("pagehide",function(){try{sessionStorage.setItem(gt,String(Date.now()/1e3-Dt))}catch{}});function Gt(t,o){if(!t.isOuter){var d=M.matches?20:Dt%3600;t.colors=at(t,o);var E=!0;if(t.drawShader){if(E=t.drawShader(d,t.colors,t),t.isLost){t.canvas.classList.remove("is-drawn");return}}else t.canvas.dispatchEvent(new CustomEvent("backdrop-frame",{detail:{timeS:d,colors:t.colors,widthPx:t.canvas.width,heightPx:t.canvas.height}}));t.isDrawn=E&&!t.from}}function $t(t){return t.isOuter||!t.isInView||t.isLost||t.canvas.hasAttribute("data-backdrop-paused")?!1:!((t.isHeld||M.matches||It)&&t.isDrawn)}function e(t){if(b=!1,!document.hidden){var o=St?n:p;if(t-N<o&&!ut){b=!0,requestAnimationFrame(e);return}var d=V?p:t-N;N=t,V=!1,T=w,w=!1,Ft(t),D&&F();var E=ut;ut=!1,k.forEach(function(A){if(!(!A.isInView||A.canvas.hasAttribute("data-backdrop-paused"))){if(A.isOuter){A.kind==="frame"&&!A.isTold&&(A.isTold=!0,Wt(A)),A.canvas.hasAttribute("data-adapts-glass")&&!A.isGlassAdapted&&nt(A);return}A.drawShader&&(E||!A.glass)&&K(A),!((A.isHeld||M.matches||It)&&A.isDrawn)&&(A.drawShader&&d<1e3&&(A.slowS=d>o*1.5?A.slowS+d/1e3:Math.max(0,A.slowS-d/2e3),A.slowS>1.5&&(A.slowS=0,A.scale>.26?(A.scale*=.75,A.size()):A.isHeld=!0)),Gt(A,t))}}),T=!1,(ut||D||k.some($t))&&(b=!0,requestAnimationFrame(e))}}function r(){var t=performance.now();D=!0,k.forEach(function(o){var d=X(o.canvas);JSON.stringify(d)!==JSON.stringify(o.target)&&(o.from=o.colors,o.target=d,o.fadeStartMs=t,o.isDrawn=!1,o.isGlassAdapted=!1,o.isInView&&Gt(o,t))}),Y()}function x(){var t="";k.forEach(function(o){var d=o.isOuter&&o.canvas.getAttribute("data-backdrop-color");d&&/^#[0-9a-fA-F]{6}$/.test(d)&&(t=d)}),t?document.documentElement.style.setProperty("--backdrop-edge",t):document.documentElement.style.removeProperty("--backdrop-edge")}function R(t,o){var d={canvas:t,kind:o,isOuter:!0,isInView:!0,isTold:!1,isGlassAdapted:!1,target:X(t),from:null};t.backdropLayer=d,k.push(d),o==="frame"&&(d.onMessage=function(A){A.source===t.contentWindow&&A.data&&A.data.zaismaBackground&&(d.isTold=!1,S())},window.addEventListener("message",d.onMessage));function E(){var A=t.getAttribute("data-glass-kind");if(t.hasAttribute("data-adapts-glass")&&A){d.isGlassAdapted=!0,q(d,{isSmoked:A==="smoked",tint:t.getAttribute("data-glass-tint")||""});return}var $=t.getAttribute("data-backdrop-still")||(o==="picture"?t.currentSrc||t.src:"");if(!(!t.hasAttribute("data-adapts-glass")||!$)){var Et=new Image;Et.onload=function(){t.getAttribute("data-backdrop-still")!==$&&o!=="picture"||(d.still=Et,d.isGlassAdapted=!1,S())},Et.src=$}}E(),new MutationObserver(E).observe(t,{attributes:!0,attributeFilter:["data-backdrop-still","src","data-glass-kind"]}),window.IntersectionObserver&&new IntersectionObserver(function(A){d.isInView=A[A.length-1].isIntersecting,d.isInView&&S()}).observe(t),S(),x()}function P(t){if(!t.backdropLayer&&!(t.hasAttribute("data-backdrop-stand-in")&&!t.hasAttribute("data-backdrop-shader"))){var o=t.getAttribute("data-backdrop");if(o==="frame"||o==="picture")return R(t,o);var d=t.getAttribute("data-backdrop")==="scene",E=window.matchMedia("(max-width: 760px)").matches,A=Math.min(window.devicePixelRatio||1,d?2:1.5),$=t.classList.contains("is-framed"),Et=H&&H.has(t)?H.get(t):Q(t),O={canvas:t,isInView:Et,isDrawn:!1,isHeld:!1,slowS:0,target:X(t),from:null,scale:d||$?A:(E?.4:.55)*A};if(!(!d&&(O.drawShader=kt(t),!O.drawShader))){if(t.backdropLayer=O,O.size=function(){var dt=Math.max(2,Math.round(t.clientWidth*O.scale)),rt=Math.max(2,Math.round(t.clientHeight*O.scale));d||(O.drawnWidth=Math.max(2,Math.round(t.clientWidth*O.scale*u)),O.drawnHeight=Math.max(2,Math.round(t.clientHeight*O.scale*u)),dt=Math.round(O.drawnWidth*s),rt=Math.round(O.drawnHeight*s)),!(dt===t.width&&rt===t.height)&&(t.width=dt,t.height=rt,O.isDrawn=!1,O.glass=null,t.backdropLayer&&!w&&O.isInView&&Gt(O,performance.now()))},O.size(),window.zaismaWatch.size(t,O.size),window.IntersectionObserver&&new IntersectionObserver(function(dt){O.isInView=dt[dt.length-1].isIntersecting,O.onView&&O.onView(),O.isInView&&Y()}).observe(t),O.drawShader&&!Et&&window.IntersectionObserver){var Z=new IntersectionObserver(function(dt){dt[dt.length-1].isIntersecting&&(Z.disconnect(),O.drawShader.prepare())},{rootMargin:"100% 0px"});Z.observe(t)}else O.drawShader&&O.drawShader.prepare();new MutationObserver(Y).observe(t,{attributes:!0,attributeFilter:["data-backdrop-paused"]}),k.push(O),!w&&O.isInView&&Gt(O,performance.now()),Y()}}}function Q(t){var o=t.getBoundingClientRect();return o.bottom>0&&o.right>0&&o.top<window.innerHeight&&o.left<window.innerWidth}var I=document.querySelectorAll("canvas[data-backdrop], iframe[data-backdrop='frame'], img[data-backdrop='picture']"),H=new Map;I.forEach(function(t){t.tagName==="CANVAS"&&H.set(t,Q(t))}),I.forEach(P),H.clear(),window.zaismaWatch.each("canvas[data-backdrop], iframe[data-backdrop='frame'], img[data-backdrop='picture']",P),window.zaismaBackdrop={add:function(t){D=!0,P(t),Y()},remove:function(t){var o=t.backdropLayer;o&&(k=k.filter(function(d){return d!==o}),o.onMessage&&window.removeEventListener("message",o.onMessage),t.backdropLayer=null,S(),x())},forgetGlass:function(){document.querySelectorAll(":has(> .backdrop)").forEach(function(t){t.shownGlass=null}),document.querySelectorAll("[data-glass]").forEach(function(t){t.glassPick=null,t.classList.remove("smoke"),t.removeAttribute("data-theme-choice"),t.style.removeProperty("--glass-tint")})}},window.zaismaWatch.scroll(L),window.zaismaWatch.resize(S);function it(t){return t.nodeType===1&&(t.hasAttribute("data-glass")||!!t.querySelector("[data-glass]"))}window.zaismaWatch.page(function(t){D||(D=t.some(function(o){return o.type==="attributes"?o.target.hasAttribute("data-glass"):Array.prototype.some.call(o.addedNodes,it)||Array.prototype.some.call(o.removedNodes,it)}),D&&Y())}),document.addEventListener("toggle",function(){D=!0,Y()},!0),document.addEventListener("visibilitychange",function(){document.hidden||Y()}),new MutationObserver(r).observe(document.documentElement,{subtree:!0,attributes:!0,attributeFilter:["data-theme-choice"]}),window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",r),M.addEventListener("change",r)})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["shown-once-drawn"]||(G["shown-once-drawn"]=!0,(function(){var v="iframe[data-shows-once-drawn]";function c(g){window.zaismaWatch.afterSettling(function(){g.classList.add("is-shown")})}window.addEventListener("message",function(g){!g.data||!g.data.zaismaBackground||document.querySelectorAll(v).forEach(function(h){g.source===h.contentWindow&&(h.hasSaid=!0,c(h))})}),window.zaismaWatch.eachArriving(v,function(g){g.addEventListener("load",function(){setTimeout(function(){g.hasSaid||c(g)},4e3)})})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.switches||(G.switches=!0,(function(){window.zaismaWatch.each(".tab-switch",function(v){var c=v.querySelector(".switch-slab"),g=v.querySelectorAll(":scope > a, :scope > button:not(.switch-folder)"),h=function(){return v.classList.contains("vertical")};function a(){return v.querySelector('[aria-current="page"], [aria-pressed="true"]')}var i=parseFloat(getComputedStyle(document.documentElement).getPropertyValue("--gap-control-row"))||4;function m(f){return Math.max(0,((Number(f.getAttribute("data-cut-line"))||0)-i)/2)}var u=window.matchMedia("(prefers-reduced-motion: reduce)").matches;function s(f){var y=window.devicePixelRatio||1;return Math.round(f*y)/y}function l(f,y,_,U){return function(st){for(var j=st,ht=0;ht<8;ht++){var yt=3*(1-j)*(1-j)*j*f+3*(1-j)*j*j*_+j*j*j-st,bt=3*(1-j)*(1-j)*f+6*(1-j)*j*(_-f)+3*j*j*(1-_);if(Math.abs(bt)<1e-6)break;j=Math.min(1,Math.max(0,j-yt/bt))}return 3*(1-j)*(1-j)*j*y+3*(1-j)*j*j*U+j*j*j}}var p=l(.4,0,.2,1);function n(f,y){f.slideAt=y;var _=Math.round(y.size)+"px";h()?(f.style.width=y.width?Math.round(y.width)+"px":"",f.style.height=_,f.style.transform="translate("+(y.across||0)+"px, "+y.pos+"px)"):(f.style.height="",f.style.width=_,f.style.transform="translateX("+y.pos+"px)")}function M(f,y,_){var U=f===c?T:null,st=U?U.ease:p,j=f.slideAt||y,ht=U?null:performance.now(),yt=(f.slideId||0)+1;f.slideId=yt,f.slideTarget=y,(function bt(){if(f.slideId===yt){var Pt=ht===null?0:Math.min(1,(performance.now()-ht)/_),kt=st(Pt);if(y=f.slideTarget,U&&U.isOn&&window.scrollTo(window.scrollX,U.fromY+(U.toY-U.fromY)*kt),f.redrawCut&&f.redrawCut({isFrame:!0}),n(f,{pos:Pt<1?j.pos+(y.pos-j.pos)*kt:y.pos,size:y.size,across:y.across===void 0?void 0:Pt<1?(j.across||0)+(y.across-(j.across||0))*kt:y.across,width:y.width}),Pt<1){requestAnimationFrame(function(){ht===null&&(ht=performance.now()),bt()});return}f.slideTarget=null,f.redrawCut&&f.redrawCut(),U&&U.isOn&&U.land()}})()}function k(f,y,_,U){var st=m(f),j=_?0:st,ht=U?0:st,yt=v.closest("[data-cut-line]"),bt=yt&&yt.getAttribute("data-slanted")||"";if(!f.classList.contains("focus-ring")&&(_&&/start/.test(bt)||U&&/end/.test(bt))){var Pt=y.offsetTop,kt=v.offsetHeight,z=parseFloat(getComputedStyle(document.documentElement).getPropertyValue("--control-slant"))||10,B=Math.min(Number(f.getAttribute("data-cut-line"))||0,(y.offsetWidth+j+ht)/3),at=z/2-B/2+Pt*Math.sqrt(1+z/kt*(z/kt))-Pt;_&&/start/.test(bt)&&(j=-at),U&&/end/.test(bt)&&(ht=-at)}return{start:j,end:ht}}function N(){var f=v.closest("[data-cut-line]"),y=f&&f.getAttribute("data-slanted")||"",_=Array.prototype.filter.call(g,function(U){return!U.classList.contains("folded")&&!U.hidden});_.forEach(function(U,st){if(h()){U.style.removeProperty("--tab-shift");return}var j=st===0,ht=st===_.length-1,yt=k(c,U,j,ht),bt=Math.min(Number(c.getAttribute("data-cut-line"))||0,(U.offsetWidth+yt.start+yt.end)/3),Pt=(!j||/start/.test(y)?1:0)-(!ht||/end/.test(y)?1:0);U.style.setProperty("--tab-shift",Math.round(((yt.end-yt.start)/2+Pt*bt/4)*10)/10+"px")})}function b(f,y,_){var U=!_&&f.slideTarget&&f.pickedTab===y;if(f.pickedTab=y,!y){f.style.width="0px";return}var st={beside:f.getAttribute("data-cut-beside"),ends:f.getAttribute("data-cut-ends")||"",stack:f.getAttribute("data-cut-stack")},j=Array.prototype.filter.call(v.querySelectorAll(":scope > a, :scope > button"),function(Gt){return!Gt.classList.contains("folded")&&!Gt.hidden}),ht=y===j[0],yt=y===j[j.length-1];if(h()){var bt={pos:y.offsetTop,size:y.offsetHeight},Pt=_&&!u?w(f):0,kt=getComputedStyle(v).display==="grid";if(kt&&(bt.across=y.offsetLeft,bt.width=y.offsetWidth),f.classList.contains("focus-ring")){var z=ht?0:y.offsetTop,B=yt?v.getBoundingClientRect().height:y.offsetTop+y.offsetHeight,at=Math.round(B-z);bt={pos:yt?B-at:z,size:at,across:bt.across,width:bt.width}}f.setAttribute("data-cut-beside",""),f.setAttribute("data-cut-stack",((ht?"first ":"")+(yt?"last":"")).trim()),V(f,bt,Pt,st.stack!==null?st:null,U);return}var ft=k(f,y,ht,yt),gt=ft.start,At=ft.end,Mt={pos:s(y.offsetLeft-gt),size:y.offsetWidth+gt+At},zt=_&&!u?w(f):0;if(f.classList.contains("focus-ring")){var It=ht?0:y.offsetLeft-gt,Dt=yt?v.getBoundingClientRect().width:y.offsetLeft+y.offsetWidth+At,Ft=Math.round(Dt-It);Mt={pos:yt?Dt-Ft:It,size:Ft}}f.setAttribute("data-cut-beside",((ht?"":"start ")+(yt?"":"end")).trim());var qt=((ht?"start ":"")+(yt?"end":"")).trim();qt?f.setAttribute("data-cut-ends",qt):f.removeAttribute("data-cut-ends"),V(f,Mt,zt,st.beside!==null?st:null,U)}function V(f,y,_,U,st){if(st){f.slideTarget=y;return}if(_&&f.redrawCut){var j=f.slideAt;n(f,y),f.redrawCut(U?{from:U,ms:_,ease:f===c&&T?T.ease:p,isDriven:!0}:void 0),j&&n(f,j),M(f,y,_);return}f.slideId=(f.slideId||0)+1,f.slideTarget=null,n(f,y),f.redrawCut&&f.redrawCut()}function w(f){return f===c&&T?T.ms:parseFloat(getComputedStyle(f).getPropertyValue("--slide-ms"))||550}var T=null;function Y(f,y,_){T&&T.stop();var U=document.documentElement,st=window.scrollY,j=parseFloat(getComputedStyle(U).scrollPaddingTop)||0,ht=Math.max(0,Math.min(U.scrollHeight-window.innerHeight,st+y.getBoundingClientRect().top-j)),yt=Math.abs(ht-st)/window.innerHeight,bt=T={isOn:!0,fromY:st,toY:ht,ms:Math.min(800,400+130*Math.max(0,yt-1)),ease:function(B){return B*B*B*(B*(6*B-15)+10)}},Pt=["wheel","touchstart","pointerdown","keydown"];function kt(B){bt.isOn=!1,Pt.forEach(function(at){window.removeEventListener(at,z)}),T===bt&&(T=null),requestAnimationFrame(function(){requestAnimationFrame(function(){T||U.removeAttribute("data-page-gliding"),dispatchEvent(new CustomEvent("zaisma:page-glide-end",{detail:{hash:_,hasLanded:B}}))})})}function z(){kt(!1)}bt.stop=function(){bt.isOn&&(bt.isOn=!1,Pt.forEach(function(B){window.removeEventListener(B,z)}))},bt.land=function(){location.hash=_,kt(!0)},U.setAttribute("data-page-gliding",""),Pt.forEach(function(B){window.addEventListener(B,z,{passive:!0})}),v.pickTab(f)}var tt=!1;function X(){var f=v.querySelector(":scope > .is-focused"),y=v.querySelector(".focus-ring");f&&y&&(b(y,f),v.classList.add("is-focus-shown"))}function D(){if(!(tt||!v.getClientRects().length)){N();var f=a(),y=v.querySelector(":scope > :focus-visible"),_=v.querySelector(".focus-ring");c.style.transition="none",b(c,f),_&&y&&b(_,y),X(),c.offsetWidth,c.style.transition="",v.classList.add("is-ready")}}var ut=v.closest("body > .top")&&window.matchMedia("(orientation: landscape) and (max-height: 500px) and (max-width: 64em)");function ct(){var f=ut.matches,y=v.closest(".switch-well"),_=v.parentElement;v.classList.toggle("vertical",f),y&&(y.classList.toggle("vertical",f),y.classList.toggle("is-full",!f),y.setAttribute("data-edge-light",f?"left":"bottom")),_&&_.classList.toggle("across",!f)}ut&&(ct(),ut.addEventListener("change",function(){ct(),D()})),D();function C(f){var y=a(),_=v.parentElement;if(_){if(h()){var U=_.scrollHeight-_.clientHeight;if(!y||U<=1||!y.getClientRects().length)return;var st=window.zaismaScrollFadePx?window.zaismaScrollFadePx():34,j=_.getBoundingClientRect(),ht=y.getBoundingClientRect(),yt=_.scrollTop,bt=ht.top-j.top+yt,Pt=ht.bottom-j.top+yt,kt=yt;bt-st<yt?kt=bt-st:Pt+st>yt+_.clientHeight&&(kt=Pt+st-_.clientHeight),_.scrollTo({top:Math.max(0,Math.min(U,kt)),behavior:f?"smooth":"auto"});return}v.classList.remove("is-past-room"),!(_.scrollWidth<=_.clientWidth+1)&&(v.classList.add("is-past-room"),y&&_.scrollTo({left:y.offsetLeft+y.offsetWidth/2-_.clientWidth/2,behavior:f?"smooth":"auto"}))}}C(!1);var S=window.navigation&&navigation.activation&&navigation.activation.from;if(S&&S.url&&c.animate&&!h()&&!window.matchMedia("(prefers-reduced-motion: reduce)").matches){var L=new URL(S.url),W=L.pathname,F=W===location.pathname&&L.search===location.search,lt=Array.prototype.filter.call(g,function(f){return f.href&&new URL(f.href).pathname===W}),K=lt.find(function(f){return new URL(f.href).search===L.search})||(lt.length===1?lt[0]:void 0),ot=a();if(K&&ot&&K!==ot&&!F){var vt=function(){var f=h()?"translateY("+K.offsetTop+"px)":"translateX("+K.offsetLeft+"px) scaleX("+(K.offsetWidth/Math.max(1,ot.offsetWidth)).toFixed(4)+")",y=h()?"translateY("+ot.offsetTop+"px)":"translateX("+ot.offsetLeft+"px) scaleX(1)";return c.animate([{transform:f,transformOrigin:"0 0"},{transform:y,transformOrigin:"0 0"}],{duration:w(c),easing:"cubic-bezier(.3, 1.2, .4, 1)"})};c.style.transition="none",b(c,K),c.offsetWidth,c.style.transition="",tt=!0;var Ct=function(){requestAnimationFrame(function(){tt=!1,D(),tt=!0;var f=function(){tt=!1,D()};vt().finished.then(f,f)})};window.zaismaWatch.fontsIn(Ct)}}window.zaismaWatch.fontsIn(D),window.zaismaWatch.size(v,D),window.zaismaWatch.size(v,function(){h()||C(!1)}),v.parentElement&&(window.zaismaWatch.size(v.parentElement,D),window.zaismaWatch.size(v.parentElement,function(){C(!1)})),Array.prototype.forEach.call(v.querySelectorAll(":scope > .foldable"),function(f){window.zaismaWatch.size(f,D)}),v.pickTab=function(f){f.tagName==="BUTTON"?g.forEach(function(_){_.setAttribute("aria-pressed",String(_===f))}):g.forEach(function(_){_===f?_.setAttribute("aria-current","page"):_.removeAttribute("aria-current")}),c.pickedTab!==f&&b(c,f,!0);var y=v.closest("[data-fades-sideways]");y&&y.showWhole&&!h()?y.showWhole(f,!0):C(!0),et()};function Lt(f){return f.disabled||f.getAttribute("aria-disabled")==="true"}g.forEach(function(f){f.addEventListener("click",function(y){if(!Lt(f)){if(f.href&&f.getAttribute("aria-current")==="page"&&y.button===0&&!y.metaKey&&!y.ctrlKey&&!y.shiftKey&&!y.altKey){y.preventDefault();return}if(f.href&&!y.defaultPrevented){var _=new URL(f.href,location.href),U=y.button===0&&!y.metaKey&&!y.ctrlKey&&!y.shiftKey&&!y.altKey&&(!f.target||f.target==="_self");if(_.pathname!==location.pathname||_.search!==location.search){if(!h()||u||!U)return;y.preventDefault(),wt=wt||a(),v.pickTab(f),J(),clearTimeout(nt),nt=setTimeout(function(){location.assign(f.href)},w(c));return}var st=h()&&!u&&U&&_.hash&&document.getElementById(decodeURIComponent(_.hash.slice(1)));if(st&&st.getClientRects().length){y.preventDefault(),Y(f,st,_.hash);return}}v.pickTab(f)}})});var mt=Array.prototype.slice.call(v.querySelectorAll(":scope > .switch-folder"));function Rt(f){for(var y=[],_=f.nextElementSibling;_&&_.classList.contains("is-in-folder");_=_.nextElementSibling)y.push(_);return y}function et(){var f=a();mt.forEach(function(y){var _=Rt(y).indexOf(f)>=0;y.classList.toggle("is-held",_),_?y.removeAttribute("data-lights"):y.setAttribute("data-lights",""),_&&y.getAttribute("aria-expanded")!=="true"&&q(y,!0)})}function q(f,y){f.setAttribute("aria-expanded",String(y)),Rt(f).forEach(function(_){Wt(_,y)})}mt.forEach(function(f){f.addEventListener("click",function(){if(!f.classList.contains("is-held")){var y=f.getAttribute("aria-expanded")!=="true";q(f,y),y&&J(f)}})});function J(f){mt.forEach(function(y){y!==f&&!y.classList.contains("is-held")&&y.getAttribute("aria-expanded")==="true"&&q(y,!1)})}et();var wt=null,nt=null;window.addEventListener("pageshow",function(f){!f.persisted||!wt||(clearTimeout(nt),v.pickTab(wt),J(),wt=null)});function Wt(f,y){var _=f.hidden?0:f.offsetHeight;f.getAnimations().forEach(function(j){j.cancel()}),f.hidden=!1;var U=f.offsetHeight;if(u||!f.animate){f.hidden=!y;return}f.classList.add("is-folding");var st=f.animate([{height:_+"px",minHeight:"0px",opacity:U?_/U:0},{height:(y?U:0)+"px",minHeight:"0px",opacity:y?1:0}],{duration:240,easing:"cubic-bezier(.2,.8,.2,1)"});st.onfinish=function(){f.classList.remove("is-folding"),f.hidden=!y},st.oncancel=function(){f.classList.remove("is-folding")}}var St=v.querySelector(".focus-ring");v.addEventListener("focusin",function(f){var y=f.target;!St||y.parentElement!==v||!y.matches(":focus-visible")||(b(St,y),v.classList.add("is-focus-shown"))}),v.addEventListener("focusout",function(){v.classList.remove("is-focus-shown")})})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.sidebar||(G.sidebar=!0,(function(){function v(s){return getComputedStyle(s).getPropertyValue("--sidebar-is-sheet").trim()==="1"}var c=function(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches};function g(s){return"zaisma-sidebar:"+s.getAttribute("data-sidebar-remember")}function h(s){return document.querySelectorAll('[data-sidebar-button][aria-controls="'+s.id+'"], [data-sidebar-button][aria-controls="'+s.id+'-sheet"]')}function a(s){var l=s.closest(".sidebar-layout"),p=document.getElementById(s.id+"-sheet");h(s).forEach(function(n){n.setAttribute("aria-controls",v(s)?s.id+"-sheet":s.id),n.setAttribute("aria-expanded",String(v(s)?!!(p&&p.open):!!(l&&!l.classList.contains("is-collapsed"))))})}function i(s,l,p){var n=s.closest(".sidebar-layout");if(n){if(p)try{localStorage.setItem(g(s),l?"hidden":"shown")}catch{}var M=n.querySelector(".sidebar-main"),k=p&&!c()&&M,N=k?M.getBoundingClientRect():null,b=k&&l?s.getBoundingClientRect():null;if(b&&(s.style.setProperty("--sidebar-left",b.left+"px"),s.style.setProperty("--sidebar-top",b.top+"px"),s.style.setProperty("--sidebar-width",b.width+"px"),s.style.setProperty("--sidebar-height",b.height+"px"),n.classList.add("is-folding")),n.classList.toggle("is-collapsed",l),a(s),b&&(requestAnimationFrame(function(){s.classList.add("is-leaving")}),setTimeout(function(){n.classList.remove("is-folding"),s.classList.remove("is-leaving"),["--sidebar-left","--sidebar-top","--sidebar-width","--sidebar-height"].forEach(function(w){s.style.removeProperty(w)})},350)),!!k){var V=N.left-M.getBoundingClientRect().left;Math.abs(V)<1||(M.style.transition="none",M.style.transform="translateX("+V+"px)",M.offsetWidth,M.style.transition="transform 0.45s cubic-bezier(.2,.8,.2,1)",M.style.transform="",setTimeout(function(){M.style.removeProperty("transition"),M.style.removeProperty("transform")},500))}}}window.zaismaWatch.each("nav.sidebar[data-sidebar-remember]",function(s){try{var l=localStorage.getItem(g(s));(l==="shown"||l==="hidden")&&i(s,l==="hidden",!1)}catch{}window.zaismaWatch.whenRead(function(){m(s)}),a(s)});function m(s){var l=document.getElementById(s.id+"-sheet");l&&(l.addEventListener("close",function(){a(s);var p=h(s)[0];p&&(!document.activeElement||document.activeElement===document.body||l.contains(document.activeElement))&&p.focus({preventScroll:!0})}),l.addEventListener("click",function(p){p.target.closest&&p.target.closest("a[href]")&&l.close()})),a(s)}document.addEventListener("click",function(s){var l=s.target.closest&&s.target.closest("[data-sidebar-button]");if(l){var p=l.getAttribute("aria-controls").replace(/-sheet$/,""),n=document.getElementById(p),M=document.getElementById(p+"-sheet");if(n){if(v(n)){M&&!M.open&&(M.showModal(),a(n));return}i(n,!n.closest(".sidebar-layout").classList.contains("is-collapsed"),!0)}}});var u=!1;window.addEventListener("resize",function(){u||(u=!0,requestAnimationFrame(function(){u=!1,document.querySelectorAll("nav.sidebar[data-sidebar-remember]").forEach(function(s){var l=document.getElementById(s.id+"-sheet");!v(s)&&l&&l.open&&l.close(),a(s)})}))})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["started-low"]||(G["started-low"]=!0,(function(){function v(c){var g=c.querySelector(".run-wrap"),h=c.querySelector(":scope > .pane-in > .layout-stack")||c.querySelector(":scope > .pane-in"),a=g&&h&&Array.prototype.find.call(h.children,function(m){return m.contains(g)});if(a){var i=parseFloat(getComputedStyle(c).marginTop)||0;c.style.setProperty("--started-low-used",Math.round(a.getBoundingClientRect().bottom+window.scrollY-i)+"px")}}window.zaismaWatch.each(".glass-pane.is-started-low",function(c){v(c),window.zaismaWatch.size(c,function(){v(c)})})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.placing||(G.placing=!0,(function(){window.zaismaIsOnPage=function(a,i){var m=function(u){for(var s=u;s&&s!==document.documentElement;s=s.parentElement){var l=getComputedStyle(s).position;if(l==="fixed"||l==="sticky")return!0}return!1};return!m(a)&&!(i.parentElement&&m(i.parentElement))},window.zaismaPageRoom=function(a){var i={left:0,top:0,right:document.documentElement.clientWidth,bottom:window.innerHeight};return document.querySelectorAll("header, nav.sidebar").forEach(function(m){if(!(a&&m.contains(a))){var u=getComputedStyle(m).position,s=m.getBoundingClientRect();u!=="fixed"&&u!=="sticky"||s.width<1||s.height<1||s.bottom<=0||s.top>=i.bottom||u==="fixed"&&m.offsetParent||(s.width>=i.right/2?i.top=Math.max(i.top,s.bottom):(s.left+s.right)/2<i.right/2?i.left=Math.max(i.left,s.right):i.right=Math.min(i.right,s.left))}}),i},window.zaismaPlace=function(a,i,m){var u=m.roomRect||{left:0,top:0,right:document.documentElement.clientWidth,bottom:window.innerHeight},s=m.gapPx,l=m.edgePx,p=(a.left+a.right)/2>(u.left+u.right)/2,n=Math.max(u.left+l,Math.min(p?a.right-i.width:a.left,u.right-l-i.width)),M=u.bottom-l-a.bottom-s,k=a.top-s-l-u.top,N=i.height<=M,b=i.height<=k,V=(a.top+a.bottom)/2>(u.top+u.bottom)/2,w=!m.isAlwaysBelow&&(N&&b?V:!N&&k>M),T=w?a.top-s-i.height:a.bottom+s;return{leftPx:n,topPx:Math.max(u.top+l,Math.min(T,u.bottom-l-i.height)),isAtEnd:p,isAbove:w}};var v=64;window.zaismaCast=function(a){var i=a.floatCast;if(i||(i=a.floatCast=document.createElement("div"),i.className="floating-cast",i.setAttribute("aria-hidden","true"),i.appendChild(document.createElement("div")).appendChild(document.createElement("span")),(a.parentElement||document.body).appendChild(i)),!a.isConnected||!a.matches(":popover-open")){i.hidden=!0;return}var m=a.getBoundingClientRect(),u=new DOMMatrix(getComputedStyle(a).transform==="none"?void 0:getComputedStyle(a).transform),s={width:a.offsetWidth,height:a.offsetHeight};s.left=m.left+m.width/2-s.width/2-u.e,s.top=m.top+m.height/2-s.height/2-u.f;var l=a.classList.contains("is-on-page"),p=getComputedStyle(a),n=p.getPropertyValue("--glass-clip").trim()||p.clipPath,M=/^polygon\\((.*)\\)$/.exec(n),k="calc(100% + "+v+"px)",N=-v+"px";if(!M){i.hidden=!0,a.castTries=(a.castTries||0)+1,a.castTries<60&&requestAnimationFrame(function(){window.zaismaCast(a)});return}a.castTries=0;var b=M?M[1].replace(/^(nonzero|evenodd),\\s*/,""):"0px 0px, 100% 0px, 100% 100%, 0px 100%";i.firstChild.firstChild.style.clipPath=M?n:"",i.style.clipPath="polygon(evenodd, "+N+" "+N+", "+k+" "+N+", "+k+" "+k+", "+N+" "+k+", "+N+" "+N+", "+b+", "+b.split(",")[0]+", "+N+" "+N+")",i.hidden&&i.classList.contains("is-arriving")&&requestAnimationFrame(function(){i.offsetWidth,i.classList.remove("is-arriving")}),i.hidden=!1,i.classList.toggle("is-on-page",l);var V=a.getAttribute("data-theme-choice");V?i.setAttribute("data-theme-choice",V):i.removeAttribute("data-theme-choice"),i.classList.toggle("smoke",a.classList.contains("smoke")),i.style.left=s.left+(l?window.scrollX:0)+"px",i.style.top=s.top+(l?window.scrollY:0)+"px",i.style.width=s.width+"px",i.style.height=s.height+"px"},["toggle","transitionend"].forEach(function(a){document.addEventListener(a,function(i){i.target.classList&&i.target.classList.contains("floating-pane")&&!i.target.classList.contains("in-place")&&window.zaismaCast(i.target)},!0)});var c=6,g=8,h=4;window.zaismaFloat=function(a,i){var m=a.classList.contains("in-place"),u=a.classList.contains("placed-over"),s=null;function l(){return typeof i.anchor=="function"?i.anchor():i.anchor}m||(document.querySelectorAll("body > .floating-pane, dialog > .floating-pane").forEach(function(w){w.floatingHome&&!w.floatingHome.isConnected&&(w.floatCast&&w.floatCast.remove(),w.remove())}),a.floatingHome=i.home||l(),a.floatingHome&&a.floatingHome.closest(".smoke")&&a.classList.add("smoke"),(l()&&l().closest("dialog")||document.body).appendChild(a));function p(){return m||a.matches(":popover-open")}function n(){var w=l(),T=a.offsetParent;if(!(!w||!T)){var Y=i.anchorRect?i.anchorRect(w):w.getBoundingClientRect(),tt=T.getBoundingClientRect(),X=window.zaismaPlace(Y,{width:a.offsetWidth,height:a.offsetHeight},{roomRect:{left:tt.left,top:tt.top,right:tt.right,bottom:tt.bottom},gapPx:i.gapPx||c,edgePx:i.edgePx||g,isAlwaysBelow:!0});a.style.left=Math.round(X.leftPx-tt.left-T.clientLeft)+"px",a.style.top=Math.round(X.topPx-tt.top-T.clientTop)+"px",a.classList.toggle("from-start",!X.isAtEnd),i.onPlaced&&i.onPlaced()}}m&&!u&&!i.isAnchorWidth&&(a.classList.add("is-hanging"),n(),window.zaismaWatch.resize(n),window.zaismaWatch.fontsIn(n));function M(){var w=l();if(!(m||!a.matches(":popover-open")||!w)){var T=i.anchorRect?i.anchorRect(w):w.getBoundingClientRect(),Y=document.documentElement.clientWidth,tt=window.innerHeight,X=window.zaismaPageRoom(w),D=T.bottom<0||T.top>tt,ut=D?T.top+T.height/2-tt/2+X.top:X.top,ct=D?ut+X.bottom-X.top:X.bottom,C=window.zaismaIsOnPage(w,a);if(!w.isConnected||!C&&(T.bottom<0||T.top>tt||T.right<0||T.left>Y)){V(!1);return}i.isAnchorWidth&&(a.style.width=T.width+"px",a.scrollWidth>a.clientWidth&&(a.style.width=a.scrollWidth+"px"));var S=i.gapPx||c,L=i.edgePx||g,W,F;if(a.style.setProperty("--floating-room",Math.max(0,ct-ut-2*L)+"px"),u)F=T.top+T.height/2-i.lineOf(),W=T.left;else{var lt=function(){return window.zaismaPlace(T,{width:a.offsetWidth,height:a.offsetHeight},{roomRect:{left:X.left,top:ut,right:X.right,bottom:ct},gapPx:S,edgePx:L,isAlwaysBelow:typeof i.isAlwaysBelow=="function"?i.isAlwaysBelow(w):i.isAlwaysBelow})},K=lt();if(a.querySelector(".scrolls")){var ot=Math.max(0,K.isAbove?T.top-ut-S-L:ct-T.bottom-S-L);a.style.setProperty("--floating-room",ot+"px");var vt=i.scrollBox&&i.scrollBox(),Ct=vt?vt.scrollHeight-vt.clientHeight:0;Ct>0&&Ct<12&&a.style.setProperty("--floating-room",Math.ceil(ot+Ct)+"px"),K=lt()}F=K.topPx,W=K.leftPx,a.classList.toggle("is-above",K.isAbove),a.classList.toggle("from-start",!K.isAtEnd)}var Lt=a.offsetWidth,mt=a.offsetHeight;F=Math.max(ut+L,Math.min(ct-mt-L,F)),W=Math.max(X.left+L,Math.min(X.right-Lt-L,W)),a.classList.toggle("is-on-page",C),a.style.top=Math.round(F+(C?window.scrollY:0))+"px",a.style.left=Math.round(W+(C?window.scrollX:0))+"px",window.zaismaFit&&a.querySelectorAll(".scrolls").forEach(window.zaismaFit),i.onPlaced&&i.onPlaced(),window.zaismaCast(a)}}function k(){if(!m){if(!a.matches(":popover-open")){var w=i.home||l()||document.body,T=w.closest("[data-theme-choice]");T&&T!==document.documentElement?a.setAttribute("data-theme-choice",T.getAttribute("data-theme-choice")):a.removeAttribute("data-theme-choice"),a.classList.toggle("smoke",!!w.closest(".smoke")),a.style.setProperty("--glass-hue",getComputedStyle(w).getPropertyValue("--glass-hue")),N&&(window.zaismaCast(a),clearTimeout(a.leaveTimer),[a,a.floatCast].forEach(function(tt){tt.classList.remove("is-leaving"),tt.classList.add("is-arriving")})),a.showPopover(),N&&(function tt(X,D){requestAnimationFrame(function(ut){var ct=getComputedStyle(a).getPropertyValue("--glass-clip").trim()&&D&&ut-D<25;if(!ct&&X<30)return tt(X+1,ut);a.classList.remove("is-arriving")})})(0,0)}var Y=l();s=Y?Y.getBoundingClientRect():null,i.onShown&&i.onShown(),M(),i.onToggle&&i.onToggle(!0)}}var N=!(window.CSS&&CSS.supports("overlay","auto"))&&!matchMedia("(prefers-reduced-motion: reduce)").matches,b=(parseFloat(getComputedStyle(document.documentElement).getPropertyValue("--motion-arrive"))||.3)*1e3;function V(w){if(!(m||!a.matches(":popover-open")||a.classList.contains("is-leaving"))){N?(a.classList.add("is-leaving"),a.floatCast&&a.floatCast.classList.add("is-leaving"),a.leaveTimer=setTimeout(function(){a.classList.remove("is-leaving"),a.hidePopover(),a.floatCast&&a.floatCast.classList.remove("is-leaving")},b)):a.hidePopover(),i.onToggle&&i.onToggle(!1);var T=i.focusOnClose||l();w&&T&&T.focus()}}return m||(document.addEventListener("pointerdown",function(w){var T=l();a.matches(":popover-open")&&!a.contains(w.target)&&!(T&&T.contains(w.target))&&!(i.isInside&&i.isInside(w.target))&&V(!1)}),a.addEventListener("keydown",function(w){w.key==="Escape"&&a.matches(":popover-open")&&(w.preventDefault(),V(!0))}),window.zaismaWatch.resize(M),document.addEventListener("scroll",function(w){var T=l();if(!(!a.matches(":popover-open")||!s||!T||w.target.nodeType===1&&a.contains(w.target))){var Y=T.getBoundingClientRect();(Math.abs(Y.top-s.top)>h||Math.abs(Y.left-s.left)>h)&&V(!1)}},{capture:!0,passive:!0}),window.zaismaWatch.scroll(M),window.zaismaWatch.fontsIn(M)),a.floating={open:k,close:V,isOpen:p,place:M}}})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.wheels||(G.wheels=!0,(function(){var v=window.matchMedia("(prefers-reduced-motion: reduce)").matches,c=36,g=864e5,h=3e5,a=["January","February","March","April","May","June","July","August","September","October","November","December"],i=window.matchMedia("(pointer: coarse)").matches?"Swipe each wheel to pick.":"Scroll or type to pick each one.";function m(n){return String(n).padStart(2,"0")}function u(n){return new Date(n.getFullYear(),n.getMonth(),n.getDate())}function s(n,M){for(var k=new Date().getFullYear(),N=[],b=k;b>k-100;b--)N.push(String(b));function V(tt,X){return tt?new Date(X||2e3,tt,0).getDate():31}var w={month:0,day:0,year:0},T=/^(\\d{4})-(\\d{2})-(\\d{2})$/.exec(M.value);T&&(w.month=Number(T[2]),w.day=Number(T[3]),w.year=Math.max(0,N.indexOf(T[1])+1));function Y(){return!!(w.month&&w.day&&w.year)}return{parts:["month","day","year"],at:w,hasBlank:!0,rows:function(tt){if(tt==="month")return["Month"].concat(a);if(tt==="year")return["Year"].concat(N);for(var X=["Day"],D=1;D<=V(w.month,w.year?Number(N[w.year-1]):0);D++)X.push(String(D));return X},set:function(tt,X){return w[tt]=X,tt==="day"?[]:["day"]},isComplete:Y,typed:function(tt,X,D){if(tt!=="year"||!/^\\d{2}$/.test(X))return-1;for(var ut=1;ut<D.length;ut++)if(D[ut].slice(2)===X)return ut;return-1},firstPart:function(){return Y()||!w.month?"month":w.day?"year":"day"},words:function(){if(!Y())return{shown:null,read:i,sent:""};var tt=a[w.month-1],X=N[w.year-1];return{shown:tt.slice(0,3)+" "+w.day+", "+X,read:tt+" "+w.day+", "+X,sent:X+"-"+m(w.month)+"-"+m(w.day)}}}}function l(n,M,k){for(var N=[],b=[],V=["AM","PM"],w=1;w<=12;w++)N.push(String(w));for(var T=0;T<60;T+=5)b.push(m(T));var Y=n.hasAttribute("data-minimum-at")?new Date(n.getAttribute("data-minimum-at")):new Date;isNaN(Y)&&(Y=new Date),Y=new Date(Math.ceil(Y.getTime()/h)*h);for(var tt=u(Y),X=[],D=0;D<366;D++)X.push(new Date(tt.getFullYear(),tt.getMonth(),tt.getDate()+D));var ut=u(new Date).getTime(),ct=new Date().getFullYear(),C=new Intl.DateTimeFormat("en-US",{weekday:"short",month:"short",day:"numeric"}),S=new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",year:"numeric"});function L(et){var q=Math.round((et.getTime()-ut)/g);return q===0?"Today":q===1?"Tomorrow":(et.getFullYear()===ct?C:S).format(et)}var W=X.map(L);function F(et,q){try{var J=new Intl.DateTimeFormat("en-US",{timeZoneName:q}).formatToParts(et).find(function(wt){return wt.type==="timeZoneName"});return J?J.value:""}catch{return""}}function lt(et){var q=-et.getTimezoneOffset(),J=q<0?"-":"+",wt=Math.abs(q);return et.getFullYear()+"-"+m(et.getMonth()+1)+"-"+m(et.getDate())+"T"+m(et.getHours())+":"+m(et.getMinutes())+J+m(Math.floor(wt/60))+":"+m(wt%60)}var K={day:0,hour:0,minute:0,half:0},ot=!1;function vt(et){var q=X[et.day];return new Date(q.getFullYear(),q.getMonth(),q.getDate(),(et.hour+1)%12+et.half*12,et.minute*5)}function Ct(et){var q=Math.max(0,Math.min(X.length-1,Math.round((u(et).getTime()-tt.getTime())/g)));return{day:q,hour:(et.getHours()%12||12)-1,minute:Math.floor(et.getMinutes()/5),half:et.getHours()<12?0:1}}function Lt(et){Object.keys(et).forEach(function(q){K[q]=et[q]})}var mt=M.value?new Date(M.value):null,Rt=mt&&!isNaN(mt)&&k.classList.contains("is-marked")?mt:null;return mt&&!isNaN(mt)&&(Lt(Ct(mt<Y?Y:mt)),ot=!0),{parts:["day","hour","minute","half"],at:K,hasBlank:!1,rows:function(et){return et==="day"?W:et==="hour"?N:et==="minute"?b:V},set:function(et,q){return K[et]=q,ot=!0,Rt=null,vt(K)<Y?(Lt(Ct(Y)),"all"):[]},isComplete:function(){return ot},opening:function(){if(ot)return!1;var et=new Date;return et.setMinutes(60,0,0),Lt(Ct(et<Y?Y:et)),ot=!0,!0},firstPart:function(){return"day"},words:function(){var et=Rt||vt(K);if(!ot)return{shown:null,read:"",sent:""};var q=et.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit"}),J=u(et),wt=Math.round((J.getTime()-ut)/g),nt=wt===0?"Today":wt===1?"Tomorrow":J.toLocaleDateString("en-US",J.getFullYear()===ct?{month:"short",day:"numeric"}:{month:"short",day:"numeric",year:"numeric"}),Wt=F(et,"short"),St=F(et,"long");return{shown:nt+", "+q+(Wt?" "+Wt:""),read:et.toLocaleDateString("en-US",{weekday:"long",month:"long",day:"numeric",year:"numeric"})+" at "+q+(St?", "+St:""),sent:lt(et)}}}}function p(n){var M=[],k={},N={};return Array.prototype.forEach.call(n.querySelectorAll(".wheel[data-part]"),function(b){var V=b.getAttribute("data-part");M.push(V);try{k[V]=JSON.parse(b.getAttribute("data-rows"))||[]}catch{k[V]=[]}N[V]=Math.max(0,Number(b.getAttribute("data-picked"))||0)}),{parts:M,at:N,hasBlank:!1,rows:function(b){return k[b].map(function(V){return V[0]})},set:function(b,V){return N[b]=V,[]},isComplete:function(){return!0},firstPart:function(){return M[0]},words:function(){var b=M.map(function(w){return(k[w][N[w]]||[""])[0]}).join(" "),V={};return M.forEach(function(w){V[w]=(k[w][N[w]]||["",""])[1]}),{shown:b,read:b,sent:V}}}}window.zaismaWatch.each("[data-wheels]",function(n){var M=n.getAttribute("data-wheels"),k=n.id,N=n.querySelector(".wheel-button"),b=n.querySelector(".wheel-pick"),V=n.querySelector(".wheel-value"),w=b.classList.contains("in-place"),T=n.querySelector(".field-error"),Y=n.querySelector(".field-hint"),tt=n.querySelector(".wheel-read"),X=n.querySelector('input[type="hidden"]:not([data-part])'),D=M==="birthday"?s(n,X):M==="date-time"?l(n,X,N):p(n),ut=V.textContent,ct={};D.parts.forEach(function(q){ct[q]={el:n.querySelector('.wheel[data-part="'+q+'"]'),count:0}});var C=b.querySelector(".wheels"),S=window.zaismaFloat(b,{anchor:N,home:n,lineOf:function(){return C.offsetTop+1.5*c},onToggle:function(q){N.setAttribute("aria-expanded",String(q))}});function L(){return S.isOpen()}function W(q){var J=ct[q],wt=D.at[q];Array.prototype.forEach.call(J.el.children,function(nt,Wt){nt.setAttribute("aria-selected",String(Wt===wt))}),J.el.setAttribute("aria-activedescendant",k+"-"+q+"-"+wt)}function F(q){var J=ct[q],wt=D.rows(q),nt=document.createDocumentFragment();J.count=wt.length,J.el.textContent="",wt.forEach(function(Wt,St){var f=document.createElement("div");f.className="flush-row compact quiet",f.setAttribute("role","option"),f.id=k+"-"+q+"-"+St,f.textContent=Wt,f.setAttribute("data-label",Wt),D.hasBlank&&St===0&&f.classList.add("blank"),nt.appendChild(f)}),J.el.appendChild(nt),J.isWired||(J.isWired=!0,J.el.addEventListener("click",function(Wt){var St=Wt.target.closest('[role="option"]');St&&St.parentElement===J.el&&ot(q,Array.prototype.indexOf.call(J.el.children,St),!0)})),D.at[q]>J.count-1&&(D.at[q]=J.count-1),W(q)}function lt(q){var J=ct[q].el.firstElementChild;return J&&J.offsetHeight||c}function K(q){D.parts.forEach(function(J){ct[J].el.scrollTo({top:D.at[J]*lt(J),behavior:q&&!v?"smooth":"auto"})})}function ot(q,J,wt){J=Math.max(0,Math.min(ct[q].count-1,J)),ct[q].el.scrollTo({top:J*lt(q),behavior:wt&&!v?"smooth":"auto"}),Ct(q,J)}var vt=D.isComplete();function Ct(q,J){if(!(D.at[q]===J&&vt)){var wt=D.set(q,J);vt=!0,N.classList.contains("is-marked")&&D.isComplete()&&(N.classList.remove("is-marked"),T.hidden=!0,Y&&(Y.hidden=!1)),wt==="all"?(D.parts.forEach(W),K(!0)):(W(q),wt.forEach(function(nt){F(nt),ct[nt].el.scrollTop=D.at[nt]*lt(nt)})),Lt()}}function Lt(){var q=D.words();tt.textContent=q.read,V.textContent=q.shown===null?ut:q.shown,N.classList.toggle("set",q.shown!==null),X&&(X.value=typeof q.sent=="string"?q.sent:""),typeof q.sent=="object"&&Object.keys(q.sent).forEach(function(J){var wt=n.querySelector('input[type="hidden"][data-part="'+J+'"]');wt&&(wt.value=q.sent[J])})}D.parts.forEach(function(q){var J=ct[q],wt=null,nt="",Wt=0;F(q),J.el.addEventListener("scroll",function(){clearTimeout(wt),wt=setTimeout(function(){L()&&Ct(q,Math.round(J.el.scrollTop/lt(q)))},110)},{passive:!0}),J.el.addEventListener("keydown",function(St){var f=D.at[q],y=St.key,_={ArrowDown:1,ArrowUp:-1,PageDown:5,PageUp:-5}[y];if(_){ot(q,f+_,!0),St.preventDefault();return}if(y==="Home"){ot(q,D.hasBlank?1:0,!0),St.preventDefault();return}if(y==="End"){ot(q,J.count-1,!0),St.preventDefault();return}if(y==="Enter"&&D.isComplete()){Rt(!0),St.preventDefault();return}if(!(y.length!==1||St.metaKey||St.ctrlKey)){var U=Date.now();nt=U-Wt>900?y.toLowerCase():nt+y.toLowerCase(),Wt=U;for(var st=D.rows(q),j=-1,ht=D.hasBlank?1:0;ht<st.length&&j<0;ht++)st[ht].toLowerCase().indexOf(nt)===0&&(j=ht);j<0&&D.typed&&(j=D.typed(q,nt,st)),j>=0&&(ot(q,j,!0),St.preventDefault())}})});function mt(q){D.opening&&D.opening()&&(vt=!0,D.parts.forEach(W),Lt()),S.open(),K(!1),!q&&ct[D.firstPart()].el.focus({preventScroll:!0})}function Rt(q){S.close(q)}N.addEventListener("click",function(){L()?Rt(!1):mt()}),w&&(D.opening&&!D.isComplete()?mt(!0):requestAnimationFrame(function(){K(!1)})),Lt();var et=n.closest("form");et&&n.hasAttribute("data-required")&&et.addEventListener("submit",function(q){D.isComplete()||(q.preventDefault(),N.classList.add("is-marked"),T.hidden=!1,Y&&(Y.hidden=!0),mt())})})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.charts||(G.charts=!0,(function(){window.zaismaWatch.each("[data-chart-scroll]",function(h){h.scrollLeft=h.scrollWidth});function v(h,a,i){a.forEach(function(p,n){p.classList.toggle("is-focused",n===i)});var m=h.querySelector("[data-chart-scroll]"),u=a[i];if(!(!m||!u)){var s=m.getBoundingClientRect(),l=u.getBoundingClientRect();l.left<s.left?m.scrollLeft-=s.left-l.left:l.right>s.right&&(m.scrollLeft+=l.right-s.right),h.matches(":focus-visible")&&requestAnimationFrame(function(){g(h,u)})}}function c(h){return Array.prototype.slice.call(h.querySelectorAll(".chart-hit"))}function g(h,a){var i=h.querySelector(":scope > .chart-tip");if(i){if(h.classList.toggle("shows-tip",!!a),!a){i.classList.remove("is-shown");return}i.querySelector("b").textContent=a.getAttribute("data-tip-amount"),i.querySelector("span").textContent=a.getAttribute("data-tip-label");var m=h.getBoundingClientRect(),u=a.getBoundingClientRect(),s=getComputedStyle(a),l=!!a.closest(".is-bars");i.style.setProperty("--tip-left",u.left-m.left+u.width*parseFloat(s.getPropertyValue("--point-left"))/100+"px"),i.style.setProperty("--tip-top",u.top-m.top+u.height*parseFloat(s.getPropertyValue("--point-top"))/100+"px"),i.classList.toggle("is-end",a.classList.contains("is-end")),i.classList.toggle("is-middle",l&&!a.classList.contains("is-end")&&!a.classList.contains("is-start")),i.classList.toggle("is-high",a.classList.contains("is-high")),i.classList.add("is-shown")}}document.addEventListener("pointerover",function(h){var a=h.target instanceof Element?h.target.closest(".chart-hit"):null;a&&g(a.closest(".chart"),a)}),document.addEventListener("pointerout",function(h){var a=h.target instanceof Element?h.target.closest(".chart-hit"):null;if(a&&!(h.relatedTarget instanceof Element&&h.relatedTarget.closest(".chart-hit"))){var i=a.closest(".chart"),m=i.querySelector(".chart-hit.is-pointed")||(i.matches(":focus-visible")?i.querySelector(".chart-hit.is-focused"):null);g(i,m)}}),document.querySelectorAll("[data-chart-scroll]").forEach(function(h){h.addEventListener("scroll",function(){var a=h.closest(".chart");g(a,a.querySelector(".chart-hit.is-pointed"))},{passive:!0})}),document.addEventListener("focusout",function(h){var a=h.target instanceof Element&&h.target.matches("[data-chart-points]")?h.target:null;a&&g(a,a.querySelector(".chart-hit.is-pointed"))}),document.querySelectorAll(".chart-hit.is-pointed").forEach(function(h){g(h.closest(".chart"),h)}),document.addEventListener("focusin",function(h){var a=h.target instanceof Element&&h.target.matches("[data-chart-points]")?h.target:null;if(a){var i=c(a);i.length&&!a.querySelector(".chart-hit.is-focused")&&v(a,i,i.length-1)}}),document.addEventListener("keydown",function(h){var a=h.target instanceof Element&&h.target.matches("[data-chart-points]")?h.target:null;if(a){var i=c(a),m=i.indexOf(a.querySelector(".chart-hit.is-focused")),u=m;if(h.key==="ArrowRight"||h.key==="ArrowUp")u=Math.min(i.length-1,m+1);else if(h.key==="ArrowLeft"||h.key==="ArrowDown")u=Math.max(0,m-1);else if(h.key==="Home")u=0;else if(h.key==="End")u=i.length-1;else return;h.preventDefault(),v(a,i,u)}})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["long-fields"]||(G["long-fields"]=!0,(function(){var v=12;function c(g){var h=getComputedStyle(g),a=parseFloat(h.lineHeight)||24,i=parseFloat(h.paddingTop)+parseFloat(h.paddingBottom);g.style.height="auto",g.classList.remove("is-scrolling");var m=a*(Number(g.getAttribute("rows"))||2)+i,u=a*v+i;g.classList.toggle("is-scrolling",g.scrollHeight>u+1),g.style.height=Math.max(m,Math.min(g.scrollHeight,u))+"px";var s=Number(g.getAttribute("maxlength")),l=document.getElementById(g.id+"-count");!s||!l||(l.hidden=g.value.length<s*.8,l.textContent=g.value.length.toLocaleString("en-US")+" of "+s.toLocaleString("en-US"))}window.zaismaWatch.each("textarea[data-long-field]",c),window.zaismaWatch.whenRead(function(){document.querySelectorAll("textarea[data-long-field]").forEach(c)}),document.addEventListener("input",function(g){g.target.matches&&g.target.matches("textarea[data-long-field]")&&c(g.target)}),window.zaismaWatch.fontsIn(function(){document.querySelectorAll("textarea[data-long-field]").forEach(c)})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.sliders||(G.sliders=!0,(function(){function v(c){var g=c.closest(".slider"),h=Number(c.min),a=Number(c.max),i=g.querySelector("output"),m=i.getAttribute("data-unit");g.style.setProperty("--fill",((Number(c.value)-h)/Math.max(1e-9,a-h)).toFixed(4));var u=g.querySelector(".slider-slab");u&&u.redrawCut&&u.redrawCut(),i.textContent=Number(c.value).toLocaleString("en-US")+(m==="%"?"%":" "+m)}document.addEventListener("input",function(c){c.target.matches&&c.target.matches("input[data-slider]")&&v(c.target)}),window.addEventListener("pageshow",function(){document.querySelectorAll("input[data-slider]").forEach(v)})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["color-fields"]||(G["color-fields"]=!0,(function(){function v(m){return"#"+m.map(function(u){return u.toString(16).padStart(2,"0")}).join("").toUpperCase()}function c(m,u,s){function l(p){var n=(p+m/60)%6;return Math.round((s-s*u*Math.max(0,Math.min(n,4-n,1)))*255)}return[l(5),l(3),l(1)]}function g(m){var u=parseInt(m.slice(1),16),s=(u>>16)/255,l=(u>>8&255)/255,p=(u&255)/255,n=Math.max(s,l,p),M=n-Math.min(s,l,p),k=0;return M&&(k=n===s?(l-p)/M%6:n===l?(p-s)/M+2:(s-l)/M+4,k*=60,k<0&&(k+=360)),[k,n?M/n:0,n]}function h(m){var u=String(m||"").replace(/[^0-9a-f]/gi,"");return u.length===3&&(u=u.replace(/./g,"$&$&")),u.length===6?"#"+u.toUpperCase():null}function a(m){var u=/^\\s*(#[0-9a-f]{6})\\s*$/i.exec(m||"");return u?u[1].toUpperCase():null}var i=10;window.zaismaWatch.each("[data-color-field]",function(m){var u=m.querySelector(".color-button"),s=m.querySelector(".color-pick"),l=m.querySelector(".color-square"),p=m.querySelector(".color-knob"),n=m.querySelector(".color-side .cut-field input"),M=m.querySelector(".color-side .slider-input"),k=m.querySelector(':scope > input[type="hidden"]'),N=u.querySelector(".color-value"),b=u.querySelector(".color-chip"),V=m.querySelector(".color-none button"),w=g(a(k.value)||m.getAttribute("data-color-hex")),T=!!V&&!a(k.value),Y=!1,tt=window.zaismaFloat(s,{anchor:u,home:m,isAnchorWidth:s.classList.contains("in-place"),onToggle:function(S){u.setAttribute("aria-expanded",String(S)),S&&X()}});function X(S){var L=v(c(w[0],w[1],w[2])),W=T?"var(--clear-swatch)":L;[m,s].forEach(function(vt){vt.style.setProperty("--color-picked",W),vt.style.setProperty("--color-full",v(c(w[0],w[1],1))),vt.style.setProperty("--color-brightness",String(w[2]))});var F=l.clientWidth-2*i,lt=l.clientHeight-2*i,K=ct(i+w[0]/360*F,i+(1-w[1])*lt);p.style.left=K[0]+"px",p.style.top=K[1]+"px",l.setAttribute("aria-valuetext",L),b.style.setProperty("--swatch",W),N.textContent=T?"None":L,k.value=T?"":L,S||(n.value=L);var ot=Math.round(w[2]*100);Number(M.value)!==ot&&(M.value=String(ot),Y=!0,M.dispatchEvent(new Event("input",{bubbles:!0})),Y=!1)}function D(){m.dispatchEvent(new CustomEvent("zaisma:color",{bubbles:!0,detail:{colorValue:k.value}}))}function ut(S){return Math.max(0,Math.min(1,S))}function ct(S,L){var W=l.cutCorners||[0,0,0,0],F=(p.firstElementChild.cutCorners||[5])[0],lt=[l.clientWidth,l.clientHeight];return[[1,1],[-1,1],[-1,-1],[1,-1]].forEach(function(K,ot){var vt=K[0]>0?S-i:lt[0]-S-i,Ct=K[1]>0?L-i:lt[1]-L-i,Lt=W[ot]-F-(vt+Ct);W[ot]>F&&Lt>0&&(S+=K[0]*Lt/2,L+=K[1]*Lt/2)}),[S,L]}function C(S){var L=l.getBoundingClientRect();w[0]=ut((S.clientX-L.left-i)/(L.width-2*i))*359.99,w[1]=1-ut((S.clientY-L.top-i)/(L.height-2*i)),T=!1,X(),D()}l.addEventListener("pointerdown",function(S){l.setPointerCapture(S.pointerId),l.classList.add("is-held"),C(S),l.focus({preventScroll:!0}),S.preventDefault()}),l.addEventListener("pointermove",function(S){l.hasPointerCapture(S.pointerId)&&C(S)}),l.addEventListener("pointerup",function(){l.classList.remove("is-held")}),l.addEventListener("pointercancel",function(){l.classList.remove("is-held")}),l.addEventListener("keydown",function(S){var L=S.shiftKey?30:5,W=S.shiftKey?.2:.05;if(S.key==="ArrowLeft")w[0]=Math.max(0,w[0]-L);else if(S.key==="ArrowRight")w[0]=Math.min(359.99,w[0]+L);else if(S.key==="ArrowUp")w[1]=Math.min(1,w[1]+W);else if(S.key==="ArrowDown")w[1]=Math.max(0,w[1]-W);else return;S.preventDefault(),T=!1,X(),D()}),M.addEventListener("input",function(){Y||(w[2]=Number(M.value)/100,T=!1,X(),D())}),n.addEventListener("input",function(){var S=h(n.value);S&&(w=g(S),T=!1,X(!0),D())}),n.addEventListener("blur",function(){X()}),V&&V.addEventListener("click",function(){T=!0,X(),D()}),u.addEventListener("click",function(){tt.isOpen()?tt.close(!1):tt.open()}),s.classList.contains("in-place")&&tt.open(),X()})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["city-pane"]||(G["city-pane"]=!0,(function(){var v=0;function c(g){var h=document.querySelector("[data-city-pane]"),a=document.querySelector(".city-stage");if(!(!h||!a||a.classList.contains("is-framed")||window.innerWidth===v&&!g)){if(v=window.innerWidth,window.innerWidth>760||window.matchMedia("(orientation: landscape) and (max-height: 500px) and (max-width: 64em)").matches){h.style.marginTop="";return}var i=Array.prototype.find.call(h.querySelectorAll("h1, h2"),function(l){return l.getClientRects().length>0}),m=h.parentElement.querySelector("header.top");h.style.marginTop="0px";var u=(i?i.getBoundingClientRect().bottom:h.getBoundingClientRect().top+120)-h.getBoundingClientRect().top+24,s=m?m.offsetTop+m.offsetHeight+12:12;h.style.marginTop=Math.round(Math.max(s,window.innerHeight-u))+"px"}}window.zaismaPlaceCityPane=c,window.zaismaWatch.each("[data-city-pane]",function(g){c(!0),window.zaismaWatch.size(g,function(){c(!0)})}),window.zaismaWatch.whenRead(function(){c(!0)}),window.addEventListener("resize",function(){c()}),window.zaismaWatch.fontsIn(function(){c(!0)})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["account-link"]||(G["account-link"]=!0,(function(){/(^|; )(__Host-)?zaisma_in=1/.test(document.cookie)&&window.zaismaWatch.each("header.top[data-account-from-cookie] .end > a:is(.run-wrap,.cut-btn)",function(v){v.href="/account";var c=v.querySelector(".face > span:not([class])");c&&(c.textContent="Account")})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["hidden-amounts"]||(G["hidden-amounts"]=!0,(function(){var v="zaisma.payments_amounts_hidden",c=!1;try{c=localStorage.getItem(v)==="yes"}catch{}var g="#payments .number-amount, [data-amount]",h="[data-amounts-toggle]";function a(u){u.hasAttribute("data-amount")||u.setAttribute("data-amount",u.textContent),u.textContent=c?"\\u2022\\u2022\\u2022":u.getAttribute("data-amount")}function i(u){u.setAttribute("aria-pressed",String(c));var s=u.querySelector("span:not([class])");s&&(s.textContent=c?"Show amounts":"Hide amounts")}function m(){document.querySelectorAll(g).forEach(a),document.querySelectorAll(h).forEach(i)}window.zaismaWatch.each(g,a),window.zaismaWatch.each(h,i),document.addEventListener("click",function(u){var s=u.target.closest&&u.target.closest("[data-amounts-toggle]");if(s){c=!c;try{localStorage.setItem(v,c?"yes":"no")}catch{}m()}})})())})();
|
|
11219
|
+
void main() { vec4 color = vec4(0.0); mainImage(color, gl_FragCoord.xy + zaismaViewOffset); zaismaFragColor = vec4(color.rgb, 1.0); }\`};return ht(E,d+p),t.programs[o]=E,E}function Pt(t,o,d){var E=t.gl,A=t.drawn;return(A.widthPx<o||A.heightPx<d)&&(A.widthPx=Math.max(A.widthPx,o),A.heightPx=Math.max(A.heightPx,d),E.bindTexture(E.TEXTURE_2D,A.texture),E.texImage2D(E.TEXTURE_2D,0,E.RGBA8,A.widthPx,A.heightPx,0,E.RGBA,E.UNSIGNED_BYTE,null),E.texParameteri(E.TEXTURE_2D,E.TEXTURE_MIN_FILTER,E.LINEAR),E.texParameteri(E.TEXTURE_2D,E.TEXTURE_MAG_FILTER,E.LINEAR),E.texParameteri(E.TEXTURE_2D,E.TEXTURE_WRAP_S,E.CLAMP_TO_EDGE),E.texParameteri(E.TEXTURE_2D,E.TEXTURE_WRAP_T,E.CLAMP_TO_EDGE),E.bindFramebuffer(E.FRAMEBUFFER,A.framebuffer),E.framebufferTexture2D(E.FRAMEBUFFER,E.COLOR_ATTACHMENT0,E.TEXTURE_2D,A.texture,0)),A}function kt(t){var o=t.getAttribute("data-backdrop-shader")||c,d=j(),E=null;if(!d)return null;function A($,Et,O){var Z=j(),dt=Z&&bt(Z,o);if(!dt||!yt(dt)||!yt(Z.upscale))return dt&&(dt.status==="failed"||Z.upscale.status==="failed")&&(O.isLost=!0),!1;if(E=E||t.getContext("2d",{alpha:!1}),!E)return!1;var rt=Z.gl,Bt=Z.board,xt=t.width,_t=t.height,Tt=O.drawnWidth,Ut=O.drawnHeight,Vt=dt.at;(Bt.width<xt||Bt.height<_t)&&(Bt.width=Math.max(Bt.width,xt),Bt.height=Math.max(Bt.height,_t));var Kt=Pt(Z,Tt,Ut);rt.bindFramebuffer(rt.FRAMEBUFFER,Kt.framebuffer),rt.useProgram(dt.program),rt.viewport(0,0,Tt,Ut);var Yt=t.classList.contains("is-framed"),Nt=Yt?1.8:1,pt=Tt*Nt,Ht=Ut*Nt;rt.uniform3f(Vt.iResolution,pt,Ht,1),rt.uniform1f(Vt.iTime,$),rt.uniform1f(Vt.iDark,Et.darkShare),rt.uniform2f(Vt.zaismaViewOffset,(pt-Tt)/2,(Ht-Ut)/2);var Ot=!1;if(dt.hasPass){var Xt=O.glass||{rects:new Float32Array(h*4),cuts:new Float32Array(h*4),count:0,scale:1,box:t.getBoundingClientRect()};rt.uniform4fv(Vt.iGlassPanes,Xt.rects),rt.uniform4fv(Vt.zaismaPaneCuts,Xt.cuts),rt.uniform1i(Vt.iGlassPaneCount,Xt.count),rt.uniform1f(Vt.zaismaPixel,Xt.scale),Ot=t.hasAttribute("data-adapts-glass")&&!O.isGlassAdapted&&Xt.count>0}rt.drawArrays(rt.TRIANGLES,0,3);var Qt=Z.upscale;return rt.bindFramebuffer(rt.FRAMEBUFFER,null),rt.useProgram(Qt.program),rt.viewport(0,0,xt,_t),rt.activeTexture(rt.TEXTURE0),rt.bindTexture(rt.TEXTURE_2D,Kt.texture),rt.uniform1i(Qt.at.zaismaDrawn,0),rt.uniform2f(Qt.at.zaismaDrawnSize,Tt,Ut),rt.uniform2f(Qt.at.zaismaCanvasSize,xt,_t),rt.drawArrays(rt.TRIANGLES,0,3),Ot&&(O.isGlassAdapted=!0,wt(rt,O,xt,_t)),E.drawImage(Bt,0,Bt.height-_t,xt,_t,0,0,xt,_t),t.classList.contains("is-drawn")||t.classList.add("is-drawn"),!0}return A.prepare=function(){var $=j();$&&bt($,o)},A}var z=500;function B(t,o,d){return t.map(function(E,A){return E+(o[A]-E)*d})}function at(t,o){var d=M.matches||!t.from?1:Math.min(1,(o-t.fadeStartMs)/z);if(d>=1)return t.from=null,Object.assign({},t.target,{darkShare:t.target.isDark?1:0});var E=d*d*(3-2*d),A=t.from,$=t.target;return{base:B(A.base,$.base,E),a:B(A.a,$.a,E),b:B(A.b,$.b,E),c:B(A.c,$.c,E),isDark:E<.5?A.isDark:$.isDark,darkShare:(A.darkShare!==void 0?A.darkShare:A.isDark?1:0)+(($.isDark?1:0)-(A.darkShare!==void 0?A.darkShare:A.isDark?1:0))*E}}var ft=1e3,gt="zaisma:backdrop-lag-s",At=performance.now(),Mt=1,zt=performance.now(),It=!1,Dt=Date.now()/1e3;try{Dt-=Number(sessionStorage.getItem(gt))||0}catch{}function Ft(t){var o=Math.max(0,t-zt);zt=t,Mt=t-At>l?Math.max(0,Mt-o/ft):Math.min(1,Mt+o/ft),Dt+=Mt*o/1e3,It=Mt===0}function qt(){At=performance.now(),clearTimeout(f),f=setTimeout(y,l),St&&(St=!1,_()),It&&(It=!1,zt=At,k.forEach(function(t){t.isDrawn=!1}),Y())}["pointerdown","pointermove","keydown","wheel","touchstart","scroll"].forEach(function(t){window.addEventListener(t,qt,{passive:!0,capture:!0})}),f=setTimeout(y,l),window.addEventListener("pagehide",function(){try{sessionStorage.setItem(gt,String(Date.now()/1e3-Dt))}catch{}});function Gt(t,o){if(!t.isOuter){var d=M.matches?20:Dt%3600;t.colors=at(t,o);var E=!0;if(t.drawShader){if(E=t.drawShader(d,t.colors,t),t.isLost){t.canvas.classList.remove("is-drawn");return}}else t.canvas.dispatchEvent(new CustomEvent("backdrop-frame",{detail:{timeS:d,colors:t.colors,widthPx:t.canvas.width,heightPx:t.canvas.height}}));t.isDrawn=E&&!t.from}}function $t(t){return t.isOuter||!t.isInView||t.isLost||t.canvas.hasAttribute("data-backdrop-paused")?!1:!((t.isHeld||M.matches||It)&&t.isDrawn)}function e(t){if(b=!1,!document.hidden){var o=St?n:v;if(t-N<o&&!ut){b=!0,requestAnimationFrame(e);return}var d=V?v:t-N;N=t,V=!1,T=g,g=!1,Ft(t),D&&F();var E=ut;ut=!1,k.forEach(function(A){if(!(!A.isInView||A.canvas.hasAttribute("data-backdrop-paused"))){if(A.isOuter){A.kind==="frame"&&!A.isTold&&(A.isTold=!0,Wt(A)),A.canvas.hasAttribute("data-adapts-glass")&&!A.isGlassAdapted&&nt(A);return}A.drawShader&&(E||!A.glass)&&K(A),!((A.isHeld||M.matches||It)&&A.isDrawn)&&(A.drawShader&&d<1e3&&(A.slowS=d>o*1.5?A.slowS+d/1e3:Math.max(0,A.slowS-d/2e3),A.slowS>1.5&&(A.slowS=0,A.scale>.26?(A.scale*=.75,A.size()):A.isHeld=!0)),Gt(A,t))}}),T=!1,(ut||D||k.some($t))&&(b=!0,requestAnimationFrame(e))}}function r(){var t=performance.now();D=!0,k.forEach(function(o){var d=X(o.canvas);JSON.stringify(d)!==JSON.stringify(o.target)&&(o.from=o.colors,o.target=d,o.fadeStartMs=t,o.isDrawn=!1,o.isGlassAdapted=!1,o.isInView&&Gt(o,t))}),Y()}function x(){var t="";k.forEach(function(o){var d=o.isOuter&&o.canvas.getAttribute("data-backdrop-color");d&&/^#[0-9a-fA-F]{6}$/.test(d)&&(t=d)}),t?document.documentElement.style.setProperty("--backdrop-edge",t):document.documentElement.style.removeProperty("--backdrop-edge")}function R(t,o){var d={canvas:t,kind:o,isOuter:!0,isInView:!0,isTold:!1,isGlassAdapted:!1,target:X(t),from:null};t.backdropLayer=d,k.push(d),o==="frame"&&(d.onMessage=function(A){A.source===t.contentWindow&&A.data&&A.data.zaismaBackground&&(d.isTold=!1,S())},window.addEventListener("message",d.onMessage));function E(){var A=t.getAttribute("data-glass-kind");if(t.hasAttribute("data-adapts-glass")&&A){d.isGlassAdapted=!0,q(d,{isSmoked:A==="smoked",tint:t.getAttribute("data-glass-tint")||""});return}var $=t.getAttribute("data-backdrop-still")||(o==="picture"?t.currentSrc||t.src:"");if(!(!t.hasAttribute("data-adapts-glass")||!$)){var Et=new Image;Et.onload=function(){t.getAttribute("data-backdrop-still")!==$&&o!=="picture"||(d.still=Et,d.isGlassAdapted=!1,S())},Et.src=$}}E(),new MutationObserver(E).observe(t,{attributes:!0,attributeFilter:["data-backdrop-still","src","data-glass-kind"]}),window.IntersectionObserver&&new IntersectionObserver(function(A){d.isInView=A[A.length-1].isIntersecting,d.isInView&&S()}).observe(t),S(),x()}function P(t){if(!t.backdropLayer&&!(t.hasAttribute("data-backdrop-stand-in")&&!t.hasAttribute("data-backdrop-shader"))){var o=t.getAttribute("data-backdrop");if(o==="frame"||o==="picture")return R(t,o);var d=t.getAttribute("data-backdrop")==="scene",E=window.matchMedia("(max-width: 760px)").matches,A=Math.min(window.devicePixelRatio||1,d?2:1.5),$=t.classList.contains("is-framed"),Et=H&&H.has(t)?H.get(t):Q(t),O={canvas:t,isInView:Et,isDrawn:!1,isHeld:!1,slowS:0,target:X(t),from:null,scale:d||$?A:(E?.4:.55)*A};if(!(!d&&(O.drawShader=kt(t),!O.drawShader))){if(t.backdropLayer=O,O.size=function(){var dt=Math.max(2,Math.round(t.clientWidth*O.scale)),rt=Math.max(2,Math.round(t.clientHeight*O.scale));d||(O.drawnWidth=Math.max(2,Math.round(t.clientWidth*O.scale*u)),O.drawnHeight=Math.max(2,Math.round(t.clientHeight*O.scale*u)),dt=Math.round(O.drawnWidth*s),rt=Math.round(O.drawnHeight*s)),!(dt===t.width&&rt===t.height)&&(t.width=dt,t.height=rt,O.isDrawn=!1,O.glass=null,t.backdropLayer&&!g&&O.isInView&&Gt(O,performance.now()))},O.size(),window.zaismaWatch.size(t,O.size),window.IntersectionObserver&&new IntersectionObserver(function(dt){O.isInView=dt[dt.length-1].isIntersecting,O.onView&&O.onView(),O.isInView&&Y()}).observe(t),O.drawShader&&!Et&&window.IntersectionObserver){var Z=new IntersectionObserver(function(dt){dt[dt.length-1].isIntersecting&&(Z.disconnect(),O.drawShader.prepare())},{rootMargin:"100% 0px"});Z.observe(t)}else O.drawShader&&O.drawShader.prepare();new MutationObserver(Y).observe(t,{attributes:!0,attributeFilter:["data-backdrop-paused"]}),k.push(O),!g&&O.isInView&&Gt(O,performance.now()),Y()}}}function Q(t){var o=t.getBoundingClientRect();return o.bottom>0&&o.right>0&&o.top<window.innerHeight&&o.left<window.innerWidth}var I=document.querySelectorAll("canvas[data-backdrop], iframe[data-backdrop='frame'], img[data-backdrop='picture']"),H=new Map;I.forEach(function(t){t.tagName==="CANVAS"&&H.set(t,Q(t))}),I.forEach(P),H.clear(),window.zaismaWatch.each("canvas[data-backdrop], iframe[data-backdrop='frame'], img[data-backdrop='picture']",P),window.zaismaBackdrop={add:function(t){D=!0,P(t),Y()},remove:function(t){var o=t.backdropLayer;o&&(k=k.filter(function(d){return d!==o}),o.onMessage&&window.removeEventListener("message",o.onMessage),t.backdropLayer=null,S(),x())},forgetGlass:function(){document.querySelectorAll(":has(> .backdrop)").forEach(function(t){t.shownGlass=null}),document.querySelectorAll("[data-glass]").forEach(function(t){t.glassPick=null,t.classList.remove("smoke"),t.removeAttribute("data-theme-choice"),t.style.removeProperty("--glass-tint")})}},window.zaismaWatch.scroll(L),window.zaismaWatch.resize(S);function it(t){return t.nodeType===1&&(t.hasAttribute("data-glass")||!!t.querySelector("[data-glass]"))}window.zaismaWatch.page(function(t){D||(D=t.some(function(o){return o.type==="attributes"?o.target.hasAttribute("data-glass"):Array.prototype.some.call(o.addedNodes,it)||Array.prototype.some.call(o.removedNodes,it)}),D&&Y())}),document.addEventListener("toggle",function(){D=!0,Y()},!0),document.addEventListener("visibilitychange",function(){document.hidden||Y()}),new MutationObserver(r).observe(document.documentElement,{subtree:!0,attributes:!0,attributeFilter:["data-theme-choice"]}),window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",r),M.addEventListener("change",r)})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["shown-once-drawn"]||(G["shown-once-drawn"]=!0,(function(){var w="iframe[data-shows-once-drawn]";function c(p){window.zaismaWatch.afterSettling(function(){p.classList.add("is-shown")})}window.addEventListener("message",function(p){!p.data||!p.data.zaismaBackground||document.querySelectorAll(w).forEach(function(h){p.source===h.contentWindow&&(h.hasSaid=!0,c(h))})}),window.zaismaWatch.eachArriving(w,function(p){p.addEventListener("load",function(){setTimeout(function(){p.hasSaid||c(p)},4e3)})})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.switches||(G.switches=!0,(function(){window.zaismaWatch.each(".tab-switch",function(w){var c=w.querySelector(".switch-slab"),p=w.querySelectorAll(":scope > a, :scope > button:not(.switch-folder)"),h=function(){return w.classList.contains("vertical")};function a(){return w.querySelector('[aria-current="page"], [aria-pressed="true"]')}var i=parseFloat(getComputedStyle(document.documentElement).getPropertyValue("--gap-control-row"))||4;function m(f){return Math.max(0,((Number(f.getAttribute("data-cut-line"))||0)-i)/2)}var u=window.matchMedia("(prefers-reduced-motion: reduce)").matches;function s(f){var y=window.devicePixelRatio||1;return Math.round(f*y)/y}function l(f,y,_,U){return function(st){for(var j=st,ht=0;ht<8;ht++){var yt=3*(1-j)*(1-j)*j*f+3*(1-j)*j*j*_+j*j*j-st,bt=3*(1-j)*(1-j)*f+6*(1-j)*j*(_-f)+3*j*j*(1-_);if(Math.abs(bt)<1e-6)break;j=Math.min(1,Math.max(0,j-yt/bt))}return 3*(1-j)*(1-j)*j*y+3*(1-j)*j*j*U+j*j*j}}var v=l(.4,0,.2,1);function n(f,y){f.slideAt=y;var _=Math.round(y.size)+"px";h()?(f.style.width=y.width?Math.round(y.width)+"px":"",f.style.height=_,f.style.transform="translate("+(y.across||0)+"px, "+y.pos+"px)"):(f.style.height="",f.style.width=_,f.style.transform="translateX("+y.pos+"px)")}function M(f,y,_){var U=f===c?T:null,st=U?U.ease:v,j=f.slideAt||y,ht=U?null:performance.now(),yt=(f.slideId||0)+1;f.slideId=yt,f.slideTarget=y,(function bt(){if(f.slideId===yt){var Pt=ht===null?0:Math.min(1,(performance.now()-ht)/_),kt=st(Pt);if(y=f.slideTarget,U&&U.isOn&&window.scrollTo(window.scrollX,U.fromY+(U.toY-U.fromY)*kt),f.redrawCut&&f.redrawCut({isFrame:!0}),n(f,{pos:Pt<1?j.pos+(y.pos-j.pos)*kt:y.pos,size:y.size,across:y.across===void 0?void 0:Pt<1?(j.across||0)+(y.across-(j.across||0))*kt:y.across,width:y.width}),Pt<1){requestAnimationFrame(function(){ht===null&&(ht=performance.now()),bt()});return}f.slideTarget=null,f.redrawCut&&f.redrawCut(),U&&U.isOn&&U.land()}})()}function k(f,y,_,U){var st=m(f),j=_?0:st,ht=U?0:st,yt=w.closest("[data-cut-line]"),bt=yt&&yt.getAttribute("data-slanted")||"";if(!f.classList.contains("focus-ring")&&(_&&/start/.test(bt)||U&&/end/.test(bt))){var Pt=y.offsetTop,kt=w.offsetHeight,z=parseFloat(getComputedStyle(document.documentElement).getPropertyValue("--control-slant"))||10,B=Math.min(Number(f.getAttribute("data-cut-line"))||0,(y.offsetWidth+j+ht)/3),at=z/2-B/2+Pt*Math.sqrt(1+z/kt*(z/kt))-Pt;_&&/start/.test(bt)&&(j=-at),U&&/end/.test(bt)&&(ht=-at)}return{start:j,end:ht}}function N(){var f=w.closest("[data-cut-line]"),y=f&&f.getAttribute("data-slanted")||"",_=Array.prototype.filter.call(p,function(U){return!U.classList.contains("folded")&&!U.hidden});_.forEach(function(U,st){if(h()){U.style.removeProperty("--tab-shift");return}var j=st===0,ht=st===_.length-1,yt=k(c,U,j,ht),bt=Math.min(Number(c.getAttribute("data-cut-line"))||0,(U.offsetWidth+yt.start+yt.end)/3),Pt=(!j||/start/.test(y)?1:0)-(!ht||/end/.test(y)?1:0);U.style.setProperty("--tab-shift",Math.round(((yt.end-yt.start)/2+Pt*bt/4)*10)/10+"px")})}function b(f,y,_){var U=!_&&f.slideTarget&&f.pickedTab===y;if(f.pickedTab=y,!y){f.style.width="0px";return}var st={beside:f.getAttribute("data-cut-beside"),ends:f.getAttribute("data-cut-ends")||"",stack:f.getAttribute("data-cut-stack")},j=Array.prototype.filter.call(w.querySelectorAll(":scope > a, :scope > button"),function(Gt){return!Gt.classList.contains("folded")&&!Gt.hidden}),ht=y===j[0],yt=y===j[j.length-1];if(h()){var bt={pos:y.offsetTop,size:y.offsetHeight},Pt=_&&!u?g(f):0,kt=getComputedStyle(w).display==="grid";if(kt&&(bt.across=y.offsetLeft,bt.width=y.offsetWidth),f.classList.contains("focus-ring")){var z=ht?0:y.offsetTop,B=yt?w.getBoundingClientRect().height:y.offsetTop+y.offsetHeight,at=Math.round(B-z);bt={pos:yt?B-at:z,size:at,across:bt.across,width:bt.width}}f.setAttribute("data-cut-beside",""),f.setAttribute("data-cut-stack",((ht?"first ":"")+(yt?"last":"")).trim()),V(f,bt,Pt,st.stack!==null?st:null,U);return}var ft=k(f,y,ht,yt),gt=ft.start,At=ft.end,Mt={pos:s(y.offsetLeft-gt),size:y.offsetWidth+gt+At},zt=_&&!u?g(f):0;if(f.classList.contains("focus-ring")){var It=ht?0:y.offsetLeft-gt,Dt=yt?w.getBoundingClientRect().width:y.offsetLeft+y.offsetWidth+At,Ft=Math.round(Dt-It);Mt={pos:yt?Dt-Ft:It,size:Ft}}f.setAttribute("data-cut-beside",((ht?"":"start ")+(yt?"":"end")).trim());var qt=((ht?"start ":"")+(yt?"end":"")).trim();qt?f.setAttribute("data-cut-ends",qt):f.removeAttribute("data-cut-ends"),V(f,Mt,zt,st.beside!==null?st:null,U)}function V(f,y,_,U,st){if(st){f.slideTarget=y;return}if(_&&f.redrawCut){var j=f.slideAt;n(f,y),f.redrawCut(U?{from:U,ms:_,ease:f===c&&T?T.ease:v,isDriven:!0}:void 0),j&&n(f,j),M(f,y,_);return}f.slideId=(f.slideId||0)+1,f.slideTarget=null,n(f,y),f.redrawCut&&f.redrawCut()}function g(f){return f===c&&T?T.ms:parseFloat(getComputedStyle(f).getPropertyValue("--slide-ms"))||550}var T=null;function Y(f,y,_){T&&T.stop();var U=document.documentElement,st=window.scrollY,j=parseFloat(getComputedStyle(U).scrollPaddingTop)||0,ht=Math.max(0,Math.min(U.scrollHeight-window.innerHeight,st+y.getBoundingClientRect().top-j)),yt=Math.abs(ht-st)/window.innerHeight,bt=T={isOn:!0,fromY:st,toY:ht,ms:Math.min(800,400+130*Math.max(0,yt-1)),ease:function(B){return B*B*B*(B*(6*B-15)+10)}},Pt=["wheel","touchstart","pointerdown","keydown"];function kt(B){bt.isOn=!1,Pt.forEach(function(at){window.removeEventListener(at,z)}),T===bt&&(T=null),requestAnimationFrame(function(){requestAnimationFrame(function(){T||U.removeAttribute("data-page-gliding"),dispatchEvent(new CustomEvent("zaisma:page-glide-end",{detail:{hash:_,hasLanded:B}}))})})}function z(){kt(!1)}bt.stop=function(){bt.isOn&&(bt.isOn=!1,Pt.forEach(function(B){window.removeEventListener(B,z)}))},bt.land=function(){location.hash=_,kt(!0)},U.setAttribute("data-page-gliding",""),Pt.forEach(function(B){window.addEventListener(B,z,{passive:!0})}),w.pickTab(f)}var tt=!1;function X(){var f=w.querySelector(":scope > .is-focused"),y=w.querySelector(".focus-ring");f&&y&&(b(y,f),w.classList.add("is-focus-shown"))}function D(){if(!(tt||!w.getClientRects().length)){N();var f=a(),y=w.querySelector(":scope > :focus-visible"),_=w.querySelector(".focus-ring");c.style.transition="none",b(c,f),_&&y&&b(_,y),X(),c.offsetWidth,c.style.transition="",w.classList.add("is-ready")}}var ut=w.closest("body > .top")&&window.matchMedia("(orientation: landscape) and (max-height: 500px) and (max-width: 64em)");function ct(){var f=ut.matches,y=w.closest(".switch-well"),_=w.parentElement;w.classList.toggle("vertical",f),y&&(y.classList.toggle("vertical",f),y.classList.toggle("is-full",!f),y.setAttribute("data-edge-light",f?"left":"bottom")),_&&_.classList.toggle("across",!f)}ut&&(ct(),ut.addEventListener("change",function(){ct(),D()})),D();function C(f){var y=a(),_=w.parentElement;if(_){if(h()){var U=_.scrollHeight-_.clientHeight;if(!y||U<=1||!y.getClientRects().length)return;var st=window.zaismaScrollFadePx?window.zaismaScrollFadePx():34,j=_.getBoundingClientRect(),ht=y.getBoundingClientRect(),yt=_.scrollTop,bt=ht.top-j.top+yt,Pt=ht.bottom-j.top+yt,kt=yt;bt-st<yt?kt=bt-st:Pt+st>yt+_.clientHeight&&(kt=Pt+st-_.clientHeight),_.scrollTo({top:Math.max(0,Math.min(U,kt)),behavior:f?"smooth":"auto"});return}w.classList.remove("is-past-room"),!(_.scrollWidth<=_.clientWidth+1)&&(w.classList.add("is-past-room"),y&&_.scrollTo({left:y.offsetLeft+y.offsetWidth/2-_.clientWidth/2,behavior:f?"smooth":"auto"}))}}C(!1);var S=window.navigation&&navigation.activation&&navigation.activation.from;if(S&&S.url&&c.animate&&!h()&&!window.matchMedia("(prefers-reduced-motion: reduce)").matches){var L=new URL(S.url),W=L.pathname,F=W===location.pathname&&L.search===location.search,lt=Array.prototype.filter.call(p,function(f){return f.href&&new URL(f.href).pathname===W}),K=lt.find(function(f){return new URL(f.href).search===L.search})||(lt.length===1?lt[0]:void 0),ot=a();if(K&&ot&&K!==ot&&!F){var vt=function(){var f=h()?"translateY("+K.offsetTop+"px)":"translateX("+K.offsetLeft+"px) scaleX("+(K.offsetWidth/Math.max(1,ot.offsetWidth)).toFixed(4)+")",y=h()?"translateY("+ot.offsetTop+"px)":"translateX("+ot.offsetLeft+"px) scaleX(1)";return c.animate([{transform:f,transformOrigin:"0 0"},{transform:y,transformOrigin:"0 0"}],{duration:g(c),easing:"cubic-bezier(.3, 1.2, .4, 1)"})};c.style.transition="none",b(c,K),c.offsetWidth,c.style.transition="",tt=!0;var Ct=function(){requestAnimationFrame(function(){tt=!1,D(),tt=!0;var f=function(){tt=!1,D()};vt().finished.then(f,f)})};window.zaismaWatch.fontsIn(Ct)}}window.zaismaWatch.fontsIn(D),window.zaismaWatch.size(w,D),window.zaismaWatch.size(w,function(){h()||C(!1)}),w.parentElement&&(window.zaismaWatch.size(w.parentElement,D),window.zaismaWatch.size(w.parentElement,function(){C(!1)})),Array.prototype.forEach.call(w.querySelectorAll(":scope > .foldable"),function(f){window.zaismaWatch.size(f,D)}),w.pickTab=function(f){f.tagName==="BUTTON"?p.forEach(function(_){_.setAttribute("aria-pressed",String(_===f))}):p.forEach(function(_){_===f?_.setAttribute("aria-current","page"):_.removeAttribute("aria-current")}),c.pickedTab!==f&&b(c,f,!0);var y=w.closest("[data-fades-sideways]");y&&y.showWhole&&!h()?y.showWhole(f,!0):C(!0),et()};function Lt(f){return f.disabled||f.getAttribute("aria-disabled")==="true"}p.forEach(function(f){f.addEventListener("click",function(y){if(!Lt(f)){if(f.href&&f.getAttribute("aria-current")==="page"&&y.button===0&&!y.metaKey&&!y.ctrlKey&&!y.shiftKey&&!y.altKey){y.preventDefault();return}if(f.href&&!y.defaultPrevented){var _=new URL(f.href,location.href),U=y.button===0&&!y.metaKey&&!y.ctrlKey&&!y.shiftKey&&!y.altKey&&(!f.target||f.target==="_self");if(_.pathname!==location.pathname||_.search!==location.search){if(!h()||u||!U)return;y.preventDefault(),wt=wt||a(),w.pickTab(f),J(),clearTimeout(nt),nt=setTimeout(function(){location.assign(f.href)},g(c));return}var st=h()&&!u&&U&&_.hash&&document.getElementById(decodeURIComponent(_.hash.slice(1)));if(st&&st.getClientRects().length){y.preventDefault(),Y(f,st,_.hash);return}}w.pickTab(f)}})});var mt=Array.prototype.slice.call(w.querySelectorAll(":scope > .switch-folder"));function Rt(f){for(var y=[],_=f.nextElementSibling;_&&_.classList.contains("is-in-folder");_=_.nextElementSibling)y.push(_);return y}function et(){var f=a();mt.forEach(function(y){var _=Rt(y).indexOf(f)>=0;y.classList.toggle("is-held",_),_?y.removeAttribute("data-lights"):y.setAttribute("data-lights",""),_&&y.getAttribute("aria-expanded")!=="true"&&q(y,!0)})}function q(f,y){f.setAttribute("aria-expanded",String(y)),Rt(f).forEach(function(_){Wt(_,y)})}mt.forEach(function(f){f.addEventListener("click",function(){if(!f.classList.contains("is-held")){var y=f.getAttribute("aria-expanded")!=="true";q(f,y),y&&J(f)}})});function J(f){mt.forEach(function(y){y!==f&&!y.classList.contains("is-held")&&y.getAttribute("aria-expanded")==="true"&&q(y,!1)})}et();var wt=null,nt=null;window.addEventListener("pageshow",function(f){!f.persisted||!wt||(clearTimeout(nt),w.pickTab(wt),J(),wt=null)});function Wt(f,y){var _=f.hidden?0:f.offsetHeight;f.getAnimations().forEach(function(j){j.cancel()}),f.hidden=!1;var U=f.offsetHeight;if(u||!f.animate){f.hidden=!y;return}f.classList.add("is-folding");var st=f.animate([{height:_+"px",minHeight:"0px",opacity:U?_/U:0},{height:(y?U:0)+"px",minHeight:"0px",opacity:y?1:0}],{duration:240,easing:"cubic-bezier(.2,.8,.2,1)"});st.onfinish=function(){f.classList.remove("is-folding"),f.hidden=!y},st.oncancel=function(){f.classList.remove("is-folding")}}var St=w.querySelector(".focus-ring");w.addEventListener("focusin",function(f){var y=f.target;!St||y.parentElement!==w||!y.matches(":focus-visible")||(b(St,y),w.classList.add("is-focus-shown"))}),w.addEventListener("focusout",function(){w.classList.remove("is-focus-shown")})})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.sidebar||(G.sidebar=!0,(function(){function w(s){return getComputedStyle(s).getPropertyValue("--sidebar-is-sheet").trim()==="1"}var c=function(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches};function p(s){return"zaisma-sidebar:"+s.getAttribute("data-sidebar-remember")}function h(s){return document.querySelectorAll('[data-sidebar-button][aria-controls="'+s.id+'"], [data-sidebar-button][aria-controls="'+s.id+'-sheet"]')}function a(s){var l=s.closest(".sidebar-layout"),v=document.getElementById(s.id+"-sheet");h(s).forEach(function(n){n.setAttribute("aria-controls",w(s)?s.id+"-sheet":s.id),n.setAttribute("aria-expanded",String(w(s)?!!(v&&v.open):!!(l&&!l.classList.contains("is-collapsed"))))})}function i(s,l,v){var n=s.closest(".sidebar-layout");if(n){if(v)try{localStorage.setItem(p(s),l?"hidden":"shown")}catch{}var M=n.querySelector(".sidebar-main"),k=v&&!c()&&M,N=k?M.getBoundingClientRect():null,b=k&&l?s.getBoundingClientRect():null;if(b&&(s.style.setProperty("--sidebar-left",b.left+"px"),s.style.setProperty("--sidebar-top",b.top+"px"),s.style.setProperty("--sidebar-width",b.width+"px"),s.style.setProperty("--sidebar-height",b.height+"px"),n.classList.add("is-folding")),n.classList.toggle("is-collapsed",l),a(s),b&&(requestAnimationFrame(function(){s.classList.add("is-leaving")}),setTimeout(function(){n.classList.remove("is-folding"),s.classList.remove("is-leaving"),["--sidebar-left","--sidebar-top","--sidebar-width","--sidebar-height"].forEach(function(g){s.style.removeProperty(g)})},350)),!!k){var V=N.left-M.getBoundingClientRect().left;Math.abs(V)<1||(M.style.transition="none",M.style.transform="translateX("+V+"px)",M.offsetWidth,M.style.transition="transform 0.45s cubic-bezier(.2,.8,.2,1)",M.style.transform="",setTimeout(function(){M.style.removeProperty("transition"),M.style.removeProperty("transform")},500))}}}window.zaismaWatch.each("nav.sidebar[data-sidebar-remember]",function(s){try{var l=localStorage.getItem(p(s));(l==="shown"||l==="hidden")&&i(s,l==="hidden",!1)}catch{}window.zaismaWatch.whenRead(function(){m(s)}),a(s)});function m(s){var l=document.getElementById(s.id+"-sheet");l&&(l.addEventListener("close",function(){a(s);var v=h(s)[0];v&&(!document.activeElement||document.activeElement===document.body||l.contains(document.activeElement))&&v.focus({preventScroll:!0})}),l.addEventListener("click",function(v){v.target.closest&&v.target.closest("a[href]")&&l.close()})),a(s)}document.addEventListener("click",function(s){var l=s.target.closest&&s.target.closest("[data-sidebar-button]");if(l){var v=l.getAttribute("aria-controls").replace(/-sheet$/,""),n=document.getElementById(v),M=document.getElementById(v+"-sheet");if(n){if(w(n)){M&&!M.open&&(M.showModal(),a(n));return}i(n,!n.closest(".sidebar-layout").classList.contains("is-collapsed"),!0)}}});var u=!1;window.addEventListener("resize",function(){u||(u=!0,requestAnimationFrame(function(){u=!1,document.querySelectorAll("nav.sidebar[data-sidebar-remember]").forEach(function(s){var l=document.getElementById(s.id+"-sheet");!w(s)&&l&&l.open&&l.close(),a(s)})}))})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["started-low"]||(G["started-low"]=!0,(function(){function w(c){var p=c.querySelector(".run-wrap"),h=c.querySelector(":scope > .pane-in > .layout-stack")||c.querySelector(":scope > .pane-in"),a=p&&h&&Array.prototype.find.call(h.children,function(m){return m.contains(p)});if(a){var i=parseFloat(getComputedStyle(c).marginTop)||0;c.style.setProperty("--started-low-used",Math.round(a.getBoundingClientRect().bottom+window.scrollY-i)+"px")}}window.zaismaWatch.each(".glass-pane.is-started-low",function(c){w(c),window.zaismaWatch.size(c,function(){w(c)})})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.placing||(G.placing=!0,(function(){window.zaismaIsOnPage=function(a,i){var m=function(u){for(var s=u;s&&s!==document.documentElement;s=s.parentElement){var l=getComputedStyle(s).position;if(l==="fixed"||l==="sticky")return!0}return!1};return!m(a)&&!(i.parentElement&&m(i.parentElement))},window.zaismaPageRoom=function(a){var i={left:0,top:0,right:document.documentElement.clientWidth,bottom:window.innerHeight};return document.querySelectorAll("header, nav.sidebar").forEach(function(m){if(!(a&&m.contains(a))){var u=getComputedStyle(m).position,s=m.getBoundingClientRect();u!=="fixed"&&u!=="sticky"||s.width<1||s.height<1||s.bottom<=0||s.top>=i.bottom||u==="fixed"&&m.offsetParent||(s.width>=i.right/2?i.top=Math.max(i.top,s.bottom):(s.left+s.right)/2<i.right/2?i.left=Math.max(i.left,s.right):i.right=Math.min(i.right,s.left))}}),i},window.zaismaPlace=function(a,i,m){var u=m.roomRect||{left:0,top:0,right:document.documentElement.clientWidth,bottom:window.innerHeight},s=m.gapPx,l=m.edgePx,v=(a.left+a.right)/2>(u.left+u.right)/2,n=Math.max(u.left+l,Math.min(v?a.right-i.width:a.left,u.right-l-i.width)),M=u.bottom-l-a.bottom-s,k=a.top-s-l-u.top,N=i.height<=M,b=i.height<=k,V=(a.top+a.bottom)/2>(u.top+u.bottom)/2,g=!m.isAlwaysBelow&&(N&&b?V:!N&&k>M),T=g?a.top-s-i.height:a.bottom+s;return{leftPx:n,topPx:Math.max(u.top+l,Math.min(T,u.bottom-l-i.height)),isAtEnd:v,isAbove:g}};var w=64;window.zaismaCast=function(a){var i=a.floatCast;if(i||(i=a.floatCast=document.createElement("div"),i.className="floating-cast",i.setAttribute("aria-hidden","true"),i.appendChild(document.createElement("div")).appendChild(document.createElement("span")),(a.parentElement||document.body).appendChild(i)),["smoke","is-above","placed-over","opens-at-once"].forEach(function(g){i.classList.toggle(g,a.classList.contains(g))}),!a.isConnected||!a.matches(":popover-open")){i.hidden=!0;return}var m=a.getBoundingClientRect(),u=new DOMMatrix(getComputedStyle(a).transform==="none"?void 0:getComputedStyle(a).transform),s={width:a.offsetWidth,height:a.offsetHeight};s.left=m.left+m.width/2-s.width/2-u.e,s.top=m.top+m.height/2-s.height/2-u.f;var l=a.classList.contains("is-on-page"),v=getComputedStyle(a),n=v.getPropertyValue("--glass-clip").trim()||v.clipPath,M=/^polygon\\((.*)\\)$/.exec(n),k="calc(100% + "+w+"px)",N=-w+"px";if(!M){i.hidden=!0,a.castTries=(a.castTries||0)+1,a.castTries<60&&requestAnimationFrame(function(){window.zaismaCast(a)});return}a.castTries=0;var b=M?M[1].replace(/^(nonzero|evenodd),\\s*/,""):"0px 0px, 100% 0px, 100% 100%, 0px 100%";i.firstChild.firstChild.style.clipPath=M?n:"",i.style.clipPath="polygon(evenodd, "+N+" "+N+", "+k+" "+N+", "+k+" "+k+", "+N+" "+k+", "+N+" "+N+", "+b+", "+b.split(",")[0]+", "+N+" "+N+")",i.hidden&&i.classList.contains("is-arriving")&&requestAnimationFrame(function(){i.offsetWidth,i.classList.remove("is-arriving")}),i.hidden=!1,i.classList.toggle("is-on-page",l);var V=a.getAttribute("data-theme-choice");V?i.setAttribute("data-theme-choice",V):i.removeAttribute("data-theme-choice"),i.style.left=s.left+(l?window.scrollX:0)+"px",i.style.top=s.top+(l?window.scrollY:0)+"px",i.style.width=s.width+"px",i.style.height=s.height+"px"},["toggle","transitionend"].forEach(function(a){document.addEventListener(a,function(i){i.target.classList&&i.target.classList.contains("floating-pane")&&!i.target.classList.contains("in-place")&&window.zaismaCast(i.target)},!0)});var c=6,p=8,h=4;window.zaismaFloat=function(a,i){var m=a.classList.contains("in-place"),u=a.classList.contains("placed-over"),s=null;function l(){return typeof i.anchor=="function"?i.anchor():i.anchor}m||(document.querySelectorAll("body > .floating-pane, dialog > .floating-pane").forEach(function(g){g.floatingHome&&!g.floatingHome.isConnected&&(g.floatCast&&g.floatCast.remove(),g.remove())}),a.floatingHome=i.home||l(),a.floatingHome&&a.floatingHome.closest(".smoke")&&a.classList.add("smoke"),(l()&&l().closest("dialog")||document.body).appendChild(a));function v(){return m||a.matches(":popover-open")}function n(){var g=l(),T=a.offsetParent;if(!(!g||!T)){var Y=i.anchorRect?i.anchorRect(g):g.getBoundingClientRect(),tt=T.getBoundingClientRect(),X=window.zaismaPlace(Y,{width:a.offsetWidth,height:a.offsetHeight},{roomRect:{left:tt.left,top:tt.top,right:tt.right,bottom:tt.bottom},gapPx:i.gapPx||c,edgePx:i.edgePx||p,isAlwaysBelow:!0});a.style.left=Math.round(X.leftPx-tt.left-T.clientLeft)+"px",a.style.top=Math.round(X.topPx-tt.top-T.clientTop)+"px",a.classList.toggle("from-start",!X.isAtEnd),i.onPlaced&&i.onPlaced()}}m&&!u&&!i.isAnchorWidth&&(a.classList.add("is-hanging"),n(),window.zaismaWatch.resize(n),window.zaismaWatch.fontsIn(n));function M(){var g=l();if(!(m||!a.matches(":popover-open")||!g)){var T=i.anchorRect?i.anchorRect(g):g.getBoundingClientRect(),Y=document.documentElement.clientWidth,tt=window.innerHeight,X=window.zaismaPageRoom(g),D=T.bottom<0||T.top>tt,ut=D?T.top+T.height/2-tt/2+X.top:X.top,ct=D?ut+X.bottom-X.top:X.bottom,C=window.zaismaIsOnPage(g,a);if(!g.isConnected||!C&&(T.bottom<0||T.top>tt||T.right<0||T.left>Y)){V(!1);return}i.isAnchorWidth&&(a.style.width=T.width+"px",a.scrollWidth>a.clientWidth&&(a.style.width=a.scrollWidth+"px"));var S=i.gapPx||c,L=i.edgePx||p,W,F;if(a.style.setProperty("--floating-room",Math.max(0,ct-ut-2*L)+"px"),u)F=T.top+T.height/2-i.lineOf(),W=T.left;else{var lt=function(){return window.zaismaPlace(T,{width:a.offsetWidth,height:a.offsetHeight},{roomRect:{left:X.left,top:ut,right:X.right,bottom:ct},gapPx:S,edgePx:L,isAlwaysBelow:typeof i.isAlwaysBelow=="function"?i.isAlwaysBelow(g):i.isAlwaysBelow})},K=lt();if(a.querySelector(".scrolls")){var ot=Math.max(0,K.isAbove?T.top-ut-S-L:ct-T.bottom-S-L);a.style.setProperty("--floating-room",ot+"px");var vt=i.scrollBox&&i.scrollBox(),Ct=vt?vt.scrollHeight-vt.clientHeight:0;Ct>0&&Ct<12&&a.style.setProperty("--floating-room",Math.ceil(ot+Ct)+"px"),K=lt()}F=K.topPx,W=K.leftPx,a.classList.toggle("is-above",K.isAbove),a.classList.toggle("from-start",!K.isAtEnd)}var Lt=a.offsetWidth,mt=a.offsetHeight;F=Math.max(ut+L,Math.min(ct-mt-L,F)),W=Math.max(X.left+L,Math.min(X.right-Lt-L,W)),a.classList.toggle("is-on-page",C),a.style.top=Math.round(F+(C?window.scrollY:0))+"px",a.style.left=Math.round(W+(C?window.scrollX:0))+"px",window.zaismaFit&&a.querySelectorAll(".scrolls").forEach(window.zaismaFit),i.onPlaced&&i.onPlaced(),window.zaismaCast(a)}}function k(){if(!m){if(!a.matches(":popover-open")){var g=i.home||l()||document.body,T=g.closest("[data-theme-choice]");T&&T!==document.documentElement?a.setAttribute("data-theme-choice",T.getAttribute("data-theme-choice")):a.removeAttribute("data-theme-choice"),a.classList.toggle("smoke",!!g.closest(".smoke")),a.style.setProperty("--glass-hue",getComputedStyle(g).getPropertyValue("--glass-hue")),N&&(window.zaismaCast(a),clearTimeout(a.leaveTimer),[a,a.floatCast].forEach(function(tt){tt.classList.remove("is-leaving"),tt.classList.add("is-arriving")})),a.showPopover(),N&&(function tt(X,D){requestAnimationFrame(function(ut){var ct=getComputedStyle(a).getPropertyValue("--glass-clip").trim()&&D&&ut-D<25;if(!ct&&X<30)return tt(X+1,ut);a.classList.remove("is-arriving")})})(0,0)}var Y=l();s=Y?Y.getBoundingClientRect():null,i.onShown&&i.onShown(),M(),i.onToggle&&i.onToggle(!0)}}var N=!(window.CSS&&CSS.supports("overlay","auto"))&&!matchMedia("(prefers-reduced-motion: reduce)").matches,b=(parseFloat(getComputedStyle(document.documentElement).getPropertyValue("--motion-arrive"))||.3)*1e3;function V(g){if(!(m||!a.matches(":popover-open")||a.classList.contains("is-leaving"))){N?(a.classList.add("is-leaving"),a.floatCast&&a.floatCast.classList.add("is-leaving"),a.leaveTimer=setTimeout(function(){a.classList.remove("is-leaving"),a.hidePopover(),window.zaismaCast(a),a.floatCast.classList.remove("is-leaving")},b)):(a.hidePopover(),window.zaismaCast(a)),i.onToggle&&i.onToggle(!1);var T=i.focusOnClose||l();g&&T&&T.focus()}}return m||(document.addEventListener("pointerdown",function(g){var T=l();a.matches(":popover-open")&&!a.contains(g.target)&&!(T&&T.contains(g.target))&&!(i.isInside&&i.isInside(g.target))&&V(!1)}),a.addEventListener("keydown",function(g){g.key==="Escape"&&a.matches(":popover-open")&&(g.preventDefault(),V(!0))}),window.zaismaWatch.resize(M),document.addEventListener("scroll",function(g){var T=l();if(!(!a.matches(":popover-open")||!s||!T||g.target.nodeType===1&&a.contains(g.target))){var Y=T.getBoundingClientRect();(Math.abs(Y.top-s.top)>h||Math.abs(Y.left-s.left)>h)&&V(!1)}},{capture:!0,passive:!0}),window.zaismaWatch.scroll(M),window.zaismaWatch.fontsIn(M)),a.floating={open:k,close:V,isOpen:v,place:M}}})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.wheels||(G.wheels=!0,(function(){var w=window.matchMedia("(prefers-reduced-motion: reduce)").matches,c=36,p=864e5,h=3e5,a=["January","February","March","April","May","June","July","August","September","October","November","December"],i=window.matchMedia("(pointer: coarse)").matches?"Swipe each wheel to pick.":"Scroll or type to pick each one.";function m(n){return String(n).padStart(2,"0")}function u(n){return new Date(n.getFullYear(),n.getMonth(),n.getDate())}function s(n,M){for(var k=new Date().getFullYear(),N=[],b=k;b>k-100;b--)N.push(String(b));function V(tt,X){return tt?new Date(X||2e3,tt,0).getDate():31}var g={month:0,day:0,year:0},T=/^(\\d{4})-(\\d{2})-(\\d{2})$/.exec(M.value);T&&(g.month=Number(T[2]),g.day=Number(T[3]),g.year=Math.max(0,N.indexOf(T[1])+1));function Y(){return!!(g.month&&g.day&&g.year)}return{parts:["month","day","year"],at:g,hasBlank:!0,rows:function(tt){if(tt==="month")return["Month"].concat(a);if(tt==="year")return["Year"].concat(N);for(var X=["Day"],D=1;D<=V(g.month,g.year?Number(N[g.year-1]):0);D++)X.push(String(D));return X},set:function(tt,X){return g[tt]=X,tt==="day"?[]:["day"]},isComplete:Y,typed:function(tt,X,D){if(tt!=="year"||!/^\\d{2}$/.test(X))return-1;for(var ut=1;ut<D.length;ut++)if(D[ut].slice(2)===X)return ut;return-1},firstPart:function(){return Y()||!g.month?"month":g.day?"year":"day"},words:function(){if(!Y())return{shown:null,read:i,sent:""};var tt=a[g.month-1],X=N[g.year-1];return{shown:tt.slice(0,3)+" "+g.day+", "+X,read:tt+" "+g.day+", "+X,sent:X+"-"+m(g.month)+"-"+m(g.day)}}}}function l(n,M,k){for(var N=[],b=[],V=["AM","PM"],g=1;g<=12;g++)N.push(String(g));for(var T=0;T<60;T+=5)b.push(m(T));var Y=n.hasAttribute("data-minimum-at")?new Date(n.getAttribute("data-minimum-at")):new Date;isNaN(Y)&&(Y=new Date),Y=new Date(Math.ceil(Y.getTime()/h)*h);for(var tt=u(Y),X=[],D=0;D<366;D++)X.push(new Date(tt.getFullYear(),tt.getMonth(),tt.getDate()+D));var ut=u(new Date).getTime(),ct=new Date().getFullYear(),C=new Intl.DateTimeFormat("en-US",{weekday:"short",month:"short",day:"numeric"}),S=new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",year:"numeric"});function L(et){var q=Math.round((et.getTime()-ut)/p);return q===0?"Today":q===1?"Tomorrow":(et.getFullYear()===ct?C:S).format(et)}var W=X.map(L);function F(et,q){try{var J=new Intl.DateTimeFormat("en-US",{timeZoneName:q}).formatToParts(et).find(function(wt){return wt.type==="timeZoneName"});return J?J.value:""}catch{return""}}function lt(et){var q=-et.getTimezoneOffset(),J=q<0?"-":"+",wt=Math.abs(q);return et.getFullYear()+"-"+m(et.getMonth()+1)+"-"+m(et.getDate())+"T"+m(et.getHours())+":"+m(et.getMinutes())+J+m(Math.floor(wt/60))+":"+m(wt%60)}var K={day:0,hour:0,minute:0,half:0},ot=!1;function vt(et){var q=X[et.day];return new Date(q.getFullYear(),q.getMonth(),q.getDate(),(et.hour+1)%12+et.half*12,et.minute*5)}function Ct(et){var q=Math.max(0,Math.min(X.length-1,Math.round((u(et).getTime()-tt.getTime())/p)));return{day:q,hour:(et.getHours()%12||12)-1,minute:Math.floor(et.getMinutes()/5),half:et.getHours()<12?0:1}}function Lt(et){Object.keys(et).forEach(function(q){K[q]=et[q]})}var mt=M.value?new Date(M.value):null,Rt=mt&&!isNaN(mt)&&k.classList.contains("is-marked")?mt:null;return mt&&!isNaN(mt)&&(Lt(Ct(mt<Y?Y:mt)),ot=!0),{parts:["day","hour","minute","half"],at:K,hasBlank:!1,rows:function(et){return et==="day"?W:et==="hour"?N:et==="minute"?b:V},set:function(et,q){return K[et]=q,ot=!0,Rt=null,vt(K)<Y?(Lt(Ct(Y)),"all"):[]},isComplete:function(){return ot},opening:function(){if(ot)return!1;var et=new Date;return et.setMinutes(60,0,0),Lt(Ct(et<Y?Y:et)),ot=!0,!0},firstPart:function(){return"day"},words:function(){var et=Rt||vt(K);if(!ot)return{shown:null,read:"",sent:""};var q=et.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit"}),J=u(et),wt=Math.round((J.getTime()-ut)/p),nt=wt===0?"Today":wt===1?"Tomorrow":J.toLocaleDateString("en-US",J.getFullYear()===ct?{month:"short",day:"numeric"}:{month:"short",day:"numeric",year:"numeric"}),Wt=F(et,"short"),St=F(et,"long");return{shown:nt+", "+q+(Wt?" "+Wt:""),read:et.toLocaleDateString("en-US",{weekday:"long",month:"long",day:"numeric",year:"numeric"})+" at "+q+(St?", "+St:""),sent:lt(et)}}}}function v(n){var M=[],k={},N={};return Array.prototype.forEach.call(n.querySelectorAll(".wheel[data-part]"),function(b){var V=b.getAttribute("data-part");M.push(V);try{k[V]=JSON.parse(b.getAttribute("data-rows"))||[]}catch{k[V]=[]}N[V]=Math.max(0,Number(b.getAttribute("data-picked"))||0)}),{parts:M,at:N,hasBlank:!1,rows:function(b){return k[b].map(function(V){return V[0]})},set:function(b,V){return N[b]=V,[]},isComplete:function(){return!0},firstPart:function(){return M[0]},words:function(){var b=M.map(function(g){return(k[g][N[g]]||[""])[0]}).join(" "),V={};return M.forEach(function(g){V[g]=(k[g][N[g]]||["",""])[1]}),{shown:b,read:b,sent:V}}}}window.zaismaWatch.each("[data-wheels]",function(n){var M=n.getAttribute("data-wheels"),k=n.id,N=n.querySelector(".wheel-button"),b=n.querySelector(".wheel-pick"),V=n.querySelector(".wheel-value"),g=b.classList.contains("in-place"),T=n.querySelector(".field-error"),Y=n.querySelector(".field-hint"),tt=n.querySelector(".wheel-read"),X=n.querySelector('input[type="hidden"]:not([data-part])'),D=M==="birthday"?s(n,X):M==="date-time"?l(n,X,N):v(n),ut=V.textContent,ct={};D.parts.forEach(function(q){ct[q]={el:n.querySelector('.wheel[data-part="'+q+'"]'),count:0}});var C=b.querySelector(".wheels"),S=window.zaismaFloat(b,{anchor:N,home:n,lineOf:function(){return C.offsetTop+1.5*c},onToggle:function(q){N.setAttribute("aria-expanded",String(q))}});function L(){return S.isOpen()}function W(q){var J=ct[q],wt=D.at[q];Array.prototype.forEach.call(J.el.children,function(nt,Wt){nt.setAttribute("aria-selected",String(Wt===wt))}),J.el.setAttribute("aria-activedescendant",k+"-"+q+"-"+wt)}function F(q){var J=ct[q],wt=D.rows(q),nt=document.createDocumentFragment();J.count=wt.length,J.el.textContent="",wt.forEach(function(Wt,St){var f=document.createElement("div");f.className="flush-row compact quiet",f.setAttribute("role","option"),f.id=k+"-"+q+"-"+St,f.textContent=Wt,f.setAttribute("data-label",Wt),D.hasBlank&&St===0&&f.classList.add("blank"),nt.appendChild(f)}),J.el.appendChild(nt),J.isWired||(J.isWired=!0,J.el.addEventListener("click",function(Wt){var St=Wt.target.closest('[role="option"]');St&&St.parentElement===J.el&&ot(q,Array.prototype.indexOf.call(J.el.children,St),!0)})),D.at[q]>J.count-1&&(D.at[q]=J.count-1),W(q)}function lt(q){var J=ct[q].el.firstElementChild;return J&&J.offsetHeight||c}function K(q){D.parts.forEach(function(J){ct[J].el.scrollTo({top:D.at[J]*lt(J),behavior:q&&!w?"smooth":"auto"})})}function ot(q,J,wt){J=Math.max(0,Math.min(ct[q].count-1,J)),ct[q].el.scrollTo({top:J*lt(q),behavior:wt&&!w?"smooth":"auto"}),Ct(q,J)}var vt=D.isComplete();function Ct(q,J){if(!(D.at[q]===J&&vt)){var wt=D.set(q,J);vt=!0,N.classList.contains("is-marked")&&D.isComplete()&&(N.classList.remove("is-marked"),T.hidden=!0,Y&&(Y.hidden=!1)),wt==="all"?(D.parts.forEach(W),K(!0)):(W(q),wt.forEach(function(nt){F(nt),ct[nt].el.scrollTop=D.at[nt]*lt(nt)})),Lt()}}function Lt(){var q=D.words();tt.textContent=q.read,V.textContent=q.shown===null?ut:q.shown,N.classList.toggle("set",q.shown!==null),X&&(X.value=typeof q.sent=="string"?q.sent:""),typeof q.sent=="object"&&Object.keys(q.sent).forEach(function(J){var wt=n.querySelector('input[type="hidden"][data-part="'+J+'"]');wt&&(wt.value=q.sent[J])})}D.parts.forEach(function(q){var J=ct[q],wt=null,nt="",Wt=0;F(q),J.el.addEventListener("scroll",function(){clearTimeout(wt),wt=setTimeout(function(){L()&&Ct(q,Math.round(J.el.scrollTop/lt(q)))},110)},{passive:!0}),J.el.addEventListener("keydown",function(St){var f=D.at[q],y=St.key,_={ArrowDown:1,ArrowUp:-1,PageDown:5,PageUp:-5}[y];if(_){ot(q,f+_,!0),St.preventDefault();return}if(y==="Home"){ot(q,D.hasBlank?1:0,!0),St.preventDefault();return}if(y==="End"){ot(q,J.count-1,!0),St.preventDefault();return}if(y==="Enter"&&D.isComplete()){Rt(!0),St.preventDefault();return}if(!(y.length!==1||St.metaKey||St.ctrlKey)){var U=Date.now();nt=U-Wt>900?y.toLowerCase():nt+y.toLowerCase(),Wt=U;for(var st=D.rows(q),j=-1,ht=D.hasBlank?1:0;ht<st.length&&j<0;ht++)st[ht].toLowerCase().indexOf(nt)===0&&(j=ht);j<0&&D.typed&&(j=D.typed(q,nt,st)),j>=0&&(ot(q,j,!0),St.preventDefault())}})});function mt(q){D.opening&&D.opening()&&(vt=!0,D.parts.forEach(W),Lt()),S.open(),K(!1),!q&&ct[D.firstPart()].el.focus({preventScroll:!0})}function Rt(q){S.close(q)}N.addEventListener("click",function(){L()?Rt(!1):mt()}),g&&(D.opening&&!D.isComplete()?mt(!0):requestAnimationFrame(function(){K(!1)})),Lt();var et=n.closest("form");et&&n.hasAttribute("data-required")&&et.addEventListener("submit",function(q){D.isComplete()||(q.preventDefault(),N.classList.add("is-marked"),T.hidden=!1,Y&&(Y.hidden=!0),mt())})})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.charts||(G.charts=!0,(function(){window.zaismaWatch.each("[data-chart-scroll]",function(h){h.scrollLeft=h.scrollWidth});function w(h,a,i){a.forEach(function(v,n){v.classList.toggle("is-focused",n===i)});var m=h.querySelector("[data-chart-scroll]"),u=a[i];if(!(!m||!u)){var s=m.getBoundingClientRect(),l=u.getBoundingClientRect();l.left<s.left?m.scrollLeft-=s.left-l.left:l.right>s.right&&(m.scrollLeft+=l.right-s.right),h.matches(":focus-visible")&&requestAnimationFrame(function(){p(h,u)})}}function c(h){return Array.prototype.slice.call(h.querySelectorAll(".chart-hit"))}function p(h,a){var i=h.querySelector(":scope > .chart-tip");if(i){if(h.classList.toggle("shows-tip",!!a),!a){i.classList.remove("is-shown");return}i.querySelector("b").textContent=a.getAttribute("data-tip-amount"),i.querySelector("span").textContent=a.getAttribute("data-tip-label");var m=h.getBoundingClientRect(),u=a.getBoundingClientRect(),s=getComputedStyle(a),l=!!a.closest(".is-bars");i.style.setProperty("--tip-left",u.left-m.left+u.width*parseFloat(s.getPropertyValue("--point-left"))/100+"px"),i.style.setProperty("--tip-top",u.top-m.top+u.height*parseFloat(s.getPropertyValue("--point-top"))/100+"px"),i.classList.toggle("is-end",a.classList.contains("is-end")),i.classList.toggle("is-middle",l&&!a.classList.contains("is-end")&&!a.classList.contains("is-start")),i.classList.toggle("is-high",a.classList.contains("is-high")),i.classList.add("is-shown")}}document.addEventListener("pointerover",function(h){var a=h.target instanceof Element?h.target.closest(".chart-hit"):null;a&&p(a.closest(".chart"),a)}),document.addEventListener("pointerout",function(h){var a=h.target instanceof Element?h.target.closest(".chart-hit"):null;if(a&&!(h.relatedTarget instanceof Element&&h.relatedTarget.closest(".chart-hit"))){var i=a.closest(".chart"),m=i.querySelector(".chart-hit.is-pointed")||(i.matches(":focus-visible")?i.querySelector(".chart-hit.is-focused"):null);p(i,m)}}),document.querySelectorAll("[data-chart-scroll]").forEach(function(h){h.addEventListener("scroll",function(){var a=h.closest(".chart");p(a,a.querySelector(".chart-hit.is-pointed"))},{passive:!0})}),document.addEventListener("focusout",function(h){var a=h.target instanceof Element&&h.target.matches("[data-chart-points]")?h.target:null;a&&p(a,a.querySelector(".chart-hit.is-pointed"))}),document.querySelectorAll(".chart-hit.is-pointed").forEach(function(h){p(h.closest(".chart"),h)}),document.addEventListener("focusin",function(h){var a=h.target instanceof Element&&h.target.matches("[data-chart-points]")?h.target:null;if(a){var i=c(a);i.length&&!a.querySelector(".chart-hit.is-focused")&&w(a,i,i.length-1)}}),document.addEventListener("keydown",function(h){var a=h.target instanceof Element&&h.target.matches("[data-chart-points]")?h.target:null;if(a){var i=c(a),m=i.indexOf(a.querySelector(".chart-hit.is-focused")),u=m;if(h.key==="ArrowRight"||h.key==="ArrowUp")u=Math.min(i.length-1,m+1);else if(h.key==="ArrowLeft"||h.key==="ArrowDown")u=Math.max(0,m-1);else if(h.key==="Home")u=0;else if(h.key==="End")u=i.length-1;else return;h.preventDefault(),w(a,i,u)}})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["long-fields"]||(G["long-fields"]=!0,(function(){var w=12;function c(p){var h=getComputedStyle(p),a=parseFloat(h.lineHeight)||24,i=parseFloat(h.paddingTop)+parseFloat(h.paddingBottom);p.style.height="auto",p.classList.remove("is-scrolling");var m=a*(Number(p.getAttribute("rows"))||2)+i,u=a*w+i;p.classList.toggle("is-scrolling",p.scrollHeight>u+1),p.style.height=Math.max(m,Math.min(p.scrollHeight,u))+"px";var s=Number(p.getAttribute("maxlength")),l=document.getElementById(p.id+"-count");!s||!l||(l.hidden=p.value.length<s*.8,l.textContent=p.value.length.toLocaleString("en-US")+" of "+s.toLocaleString("en-US"))}window.zaismaWatch.each("textarea[data-long-field]",c),window.zaismaWatch.whenRead(function(){document.querySelectorAll("textarea[data-long-field]").forEach(c)}),document.addEventListener("input",function(p){p.target.matches&&p.target.matches("textarea[data-long-field]")&&c(p.target)}),window.zaismaWatch.fontsIn(function(){document.querySelectorAll("textarea[data-long-field]").forEach(c)})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G.sliders||(G.sliders=!0,(function(){function w(c){var p=c.closest(".slider"),h=Number(c.min),a=Number(c.max),i=p.querySelector("output"),m=i.getAttribute("data-unit");p.style.setProperty("--fill",((Number(c.value)-h)/Math.max(1e-9,a-h)).toFixed(4));var u=p.querySelector(".slider-slab");u&&u.redrawCut&&u.redrawCut(),i.textContent=Number(c.value).toLocaleString("en-US")+(m==="%"?"%":" "+m)}document.addEventListener("input",function(c){c.target.matches&&c.target.matches("input[data-slider]")&&w(c.target)}),window.addEventListener("pageshow",function(){document.querySelectorAll("input[data-slider]").forEach(w)})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["color-fields"]||(G["color-fields"]=!0,(function(){function w(m){return"#"+m.map(function(u){return u.toString(16).padStart(2,"0")}).join("").toUpperCase()}function c(m,u,s){function l(v){var n=(v+m/60)%6;return Math.round((s-s*u*Math.max(0,Math.min(n,4-n,1)))*255)}return[l(5),l(3),l(1)]}function p(m){var u=parseInt(m.slice(1),16),s=(u>>16)/255,l=(u>>8&255)/255,v=(u&255)/255,n=Math.max(s,l,v),M=n-Math.min(s,l,v),k=0;return M&&(k=n===s?(l-v)/M%6:n===l?(v-s)/M+2:(s-l)/M+4,k*=60,k<0&&(k+=360)),[k,n?M/n:0,n]}function h(m){var u=String(m||"").replace(/[^0-9a-f]/gi,"");return u.length===3&&(u=u.replace(/./g,"$&$&")),u.length===6?"#"+u.toUpperCase():null}function a(m){var u=/^\\s*(#[0-9a-f]{6})\\s*$/i.exec(m||"");return u?u[1].toUpperCase():null}var i=10;window.zaismaWatch.each("[data-color-field]",function(m){var u=m.querySelector(".color-button"),s=m.querySelector(".color-pick"),l=m.querySelector(".color-square"),v=m.querySelector(".color-knob"),n=m.querySelector(".color-side .cut-field input"),M=m.querySelector(".color-side .slider-input"),k=m.querySelector(':scope > input[type="hidden"]'),N=u.querySelector(".color-value"),b=u.querySelector(".color-chip"),V=m.querySelector(".color-none button"),g=p(a(k.value)||m.getAttribute("data-color-hex")),T=!!V&&!a(k.value),Y=!1,tt=window.zaismaFloat(s,{anchor:u,home:m,isAnchorWidth:s.classList.contains("in-place"),onToggle:function(S){u.setAttribute("aria-expanded",String(S)),S&&X()}});function X(S){var L=w(c(g[0],g[1],g[2])),W=T?"var(--clear-swatch)":L;[m,s].forEach(function(vt){vt.style.setProperty("--color-picked",W),vt.style.setProperty("--color-full",w(c(g[0],g[1],1))),vt.style.setProperty("--color-brightness",String(g[2]))});var F=l.clientWidth-2*i,lt=l.clientHeight-2*i,K=ct(i+g[0]/360*F,i+(1-g[1])*lt);v.style.left=K[0]+"px",v.style.top=K[1]+"px",l.setAttribute("aria-valuetext",L),b.style.setProperty("--swatch",W),N.textContent=T?"None":L,k.value=T?"":L,S||(n.value=L);var ot=Math.round(g[2]*100);Number(M.value)!==ot&&(M.value=String(ot),Y=!0,M.dispatchEvent(new Event("input",{bubbles:!0})),Y=!1)}function D(){m.dispatchEvent(new CustomEvent("zaisma:color",{bubbles:!0,detail:{colorValue:k.value}}))}function ut(S){return Math.max(0,Math.min(1,S))}function ct(S,L){var W=l.cutCorners||[0,0,0,0],F=(v.firstElementChild.cutCorners||[5])[0],lt=[l.clientWidth,l.clientHeight];return[[1,1],[-1,1],[-1,-1],[1,-1]].forEach(function(K,ot){var vt=K[0]>0?S-i:lt[0]-S-i,Ct=K[1]>0?L-i:lt[1]-L-i,Lt=W[ot]-F-(vt+Ct);W[ot]>F&&Lt>0&&(S+=K[0]*Lt/2,L+=K[1]*Lt/2)}),[S,L]}function C(S){var L=l.getBoundingClientRect();g[0]=ut((S.clientX-L.left-i)/(L.width-2*i))*359.99,g[1]=1-ut((S.clientY-L.top-i)/(L.height-2*i)),T=!1,X(),D()}l.addEventListener("pointerdown",function(S){l.setPointerCapture(S.pointerId),l.classList.add("is-held"),C(S),l.focus({preventScroll:!0}),S.preventDefault()}),l.addEventListener("pointermove",function(S){l.hasPointerCapture(S.pointerId)&&C(S)}),l.addEventListener("pointerup",function(){l.classList.remove("is-held")}),l.addEventListener("pointercancel",function(){l.classList.remove("is-held")}),l.addEventListener("keydown",function(S){var L=S.shiftKey?30:5,W=S.shiftKey?.2:.05;if(S.key==="ArrowLeft")g[0]=Math.max(0,g[0]-L);else if(S.key==="ArrowRight")g[0]=Math.min(359.99,g[0]+L);else if(S.key==="ArrowUp")g[1]=Math.min(1,g[1]+W);else if(S.key==="ArrowDown")g[1]=Math.max(0,g[1]-W);else return;S.preventDefault(),T=!1,X(),D()}),M.addEventListener("input",function(){Y||(g[2]=Number(M.value)/100,T=!1,X(),D())}),n.addEventListener("input",function(){var S=h(n.value);S&&(g=p(S),T=!1,X(!0),D())}),n.addEventListener("blur",function(){X()}),V&&V.addEventListener("click",function(){T=!0,X(),D()}),u.addEventListener("click",function(){tt.isOpen()?tt.close(!1):tt.open()}),s.classList.contains("in-place")&&tt.open(),X()})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["city-pane"]||(G["city-pane"]=!0,(function(){var w=0;function c(p){var h=document.querySelector("[data-city-pane]"),a=document.querySelector(".city-stage");if(!(!h||!a||a.classList.contains("is-framed")||window.innerWidth===w&&!p)){if(w=window.innerWidth,window.innerWidth>760||window.matchMedia("(orientation: landscape) and (max-height: 500px) and (max-width: 64em)").matches){h.style.marginTop="";return}var i=Array.prototype.find.call(h.querySelectorAll("h1, h2"),function(l){return l.getClientRects().length>0}),m=h.parentElement.querySelector("header.top");h.style.marginTop="0px";var u=(i?i.getBoundingClientRect().bottom:h.getBoundingClientRect().top+120)-h.getBoundingClientRect().top+24,s=m?m.offsetTop+m.offsetHeight+12:12;h.style.marginTop=Math.round(Math.max(s,window.innerHeight-u))+"px"}}window.zaismaPlaceCityPane=c,window.zaismaWatch.each("[data-city-pane]",function(p){c(!0),window.zaismaWatch.size(p,function(){c(!0)})}),window.zaismaWatch.whenRead(function(){c(!0)}),window.addEventListener("resize",function(){c()}),window.zaismaWatch.fontsIn(function(){c(!0)})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["account-link"]||(G["account-link"]=!0,(function(){/(^|; )(__Host-)?zaisma_in=1/.test(document.cookie)&&window.zaismaWatch.each("header.top[data-account-from-cookie] .end > a:is(.run-wrap,.cut-btn)",function(w){w.href="/account";var c=w.querySelector(".face > span:not([class])");c&&(c.textContent="Account")})})())})(),(function(){var G=window.zaismaPieces=window.zaismaPieces||{};G["hidden-amounts"]||(G["hidden-amounts"]=!0,(function(){var w="zaisma.payments_amounts_hidden",c=!1;try{c=localStorage.getItem(w)==="yes"}catch{}var p="#payments .number-amount, [data-amount]",h="[data-amounts-toggle]";function a(u){u.hasAttribute("data-amount")||u.setAttribute("data-amount",u.textContent),u.textContent=c?"\\u2022\\u2022\\u2022":u.getAttribute("data-amount")}function i(u){u.setAttribute("aria-pressed",String(c));var s=u.querySelector("span:not([class])");s&&(s.textContent=c?"Show amounts":"Hide amounts")}function m(){document.querySelectorAll(p).forEach(a),document.querySelectorAll(h).forEach(i)}window.zaismaWatch.each(p,a),window.zaismaWatch.each(h,i),document.addEventListener("click",function(u){var s=u.target.closest&&u.target.closest("[data-amounts-toggle]");if(s){c=!c;try{localStorage.setItem(w,c?"yes":"no")}catch{}m()}})})())})();
|
|
11168
11220
|
` };
|
|
11169
|
-
var MINIFIED_LOOK_SCRIPT = { sourceSha256: "
|
|
11221
|
+
var MINIFIED_LOOK_SCRIPT = { sourceSha256: "251738d7bc0568b3f7d729dc3631aa9f81772048456d89b6ee30938b36d89a7b", minifiedText: `(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W["measured-glass"]||(W["measured-glass"]=!0,(function(){if(!window.zaismaWatch)return;function l(t){return t.closest(":has(> .backdrop)")}function m(t){var i=t&&t.querySelector(":scope > .backdrop[data-adapts-glass][data-glass-kind], :scope > .backdrop .backdrop[data-adapts-glass][data-glass-kind]");return i?{isSmoked:i.getAttribute("data-glass-kind")==="smoked",tint:i.getAttribute("data-glass-tint")||""}:null}function g(t,i){t.classList.toggle("smoke",i.isSmoked),i.isSmoked?t.removeAttribute("data-theme-choice"):t.hasAttribute("data-theme-choice")||t.setAttribute("data-theme-choice","light"),i.tint&&t.style.setProperty("--glass-tint",i.tint)}function d(t,i){t.ownThemeChoice===void 0&&(t.ownThemeChoice=t.getAttribute("data-theme-choice")),t.classList.toggle("smoke",i.isSmoked),i.isSmoked?t.removeAttribute("data-theme-choice"):t.setAttribute("data-theme-choice",t.ownThemeChoice||"light")}window.zaismaWatch.eachArriving("[data-adapts-glass][data-glass-kind]",function(t){var i=t.parentElement,s=m(i);i&&s&&d(i,s),document.querySelectorAll("[data-glass]:not([data-cut-line])").forEach(function(a){var o=l(a),u=m(o);u&&g(a,u)})}),window.zaismaWatch.eachArriving("[data-glass]:not([data-cut-line])",function(t){var i=l(t),s=m(i);s&&g(t,s)})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W["header-fit"]||(W["header-fit"]=!0,(function(){var l=window.matchMedia("(orientation: landscape) and (max-height: 500px) and (max-width: 64em)"),m=4;function g(a,o){a.classList.toggle("has-search-button",o>0),a.classList.toggle("has-tight-tabs",o>1),a.classList.toggle("has-icon-tabs",o>2),a.classList.toggle("has-icon-sign-in",o>3)}function d(a){var o=0;return Array.prototype.forEach.call(a.querySelectorAll(":scope > a, :scope > button"),function(u){o=Math.max(o,u.offsetLeft+u.offsetWidth)}),o+parseFloat(getComputedStyle(a).paddingRight)}function t(a,o){g(a,o);var u=getComputedStyle(a),P=parseFloat(u.paddingLeft)+parseFloat(u.paddingRight);return Array.prototype.forEach.call(a.children,function(v){var L=getComputedStyle(v);if(!(v.classList.contains("edge")||L.display==="none")){var C=v.querySelector(":scope > .switch-well .tab-switch");P+=parseFloat(L.marginLeft)+parseFloat(L.marginRight)+(v.matches(".find")?parseFloat(L.minWidth):Math.max(v.offsetWidth,C?d(C):0))}}),P}function i(a){if(!(!a.clientWidth||a.checkVisibility&&!a.checkVisibility({contentVisibilityAuto:!0}))){if(l.matches&&a.matches("body > .top")){g(a,1);return}for(var o=a.clientWidth,u=a.neededWidths||(a.neededWidths=[]),P=a.querySelector(".find"),v=!!P&&P.contains(document.activeElement),L=a.classList.contains("searching"),C=!1,x=0;x<m;x++){if(u[x]===void 0){if(v)return;C||(C=!0,a.classList.remove("searching"),a.classList.add("is-measuring"),a.style.width="max-content"),u[x]=t(a,x)}if(u[x]<=o)break}C&&(a.style.width="",a.classList.remove("is-measuring"),L&&a.classList.add("searching")),v&&x>0&&!a.classList.contains("typing-search")&&a.classList.add("searching"),g(a,x)}}function s(a){if(a.fitToRoom)return;function o(){a.neededWidths=null,i(a)}a.fitToRoom=function(){i(a)},i(a),window.zaismaWatch.size(a,a.fitToRoom);var u=a.querySelector(".tab-switch");u&&window.zaismaWatch.size(u,o),window.zaismaWatch.fontsIn(o),l.addEventListener("change",o)}window.zaismaWatch.each("header.top",s),window.zaismaWatch.arriving(function(){var a=document.querySelector("body > header.top");a&&a.nextSibling&&s(a)})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W.tables||(W.tables=!0,(function(){function l(g){var d=g.querySelector(":scope > table > thead"),t=g.querySelector(":scope > table > tbody > tr > th, :scope > table > thead > tr > th:first-child");g.style.setProperty("--shown-width",g.clientWidth+"px"),g.style.setProperty("--shown-height",g.clientHeight+"px"),d&&g.style.setProperty("--head-height",d.offsetHeight+"px"),t&&g.style.setProperty("--row-head-width",t.offsetWidth+"px")}var m=typeof ResizeObserver=="function"?new ResizeObserver(function(g){g.forEach(function(d){var t=d.target.closest(".table-scroll");t&&l(t)})}):null;window.zaismaWatch.each(".table-scroll",function(g){if(l(g),m){m.observe(g);var d=g.querySelector(":scope > table");d&&m.observe(d)}})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W.backdrop||(W.backdrop=!0,(function(){var l=\`
|
|
11170
11222
|
float h1(float n) { return fract(sin(n * 127.1) * 43758.5453); }
|
|
11171
11223
|
float h2(vec2 p) { return fract(sin(dot(p, vec2(127.1, 311.7))) * 43758.5453); }
|
|
11172
11224
|
vec2 h22(vec2 p) { p = vec2(dot(p, vec2(127.1, 311.7)), dot(p, vec2(269.5, 183.3))); return fract(sin(p) * 43758.5453); }
|
|
@@ -11281,11 +11333,11 @@ void main() {
|
|
|
11281
11333
|
vec3 low = min(min(min(north, south), min(east, west)), color), high = max(max(max(north, south), max(east, west)), color);
|
|
11282
11334
|
vec3 weight = -sqrt(clamp(min(low, 2.0 - high) / max(high, vec3(0.0001)), 0.0, 1.0)) / 7.0;
|
|
11283
11335
|
zaismaFragColor = vec4(clamp((color + (north + south + east + west) * weight) / (1.0 + 4.0 * weight), 0.0, 1.0), 1.0);
|
|
11284
|
-
}\`,a=.7,o=1.4,u=6e4,P=33,v=67,L=window.matchMedia("(prefers-reduced-motion: reduce)"),C=[],x=0,
|
|
11336
|
+
}\`,a=.7,o=1.4,u=6e4,P=33,v=67,L=window.matchMedia("(prefers-reduced-motion: reduce)"),C=[],x=0,z=!1,F=!1,h=!0,k=!1;function y(){z||(z=!0,F=!0,requestAnimationFrame(Ft))}function E(e){var n=e.trim().replace("#","");n.length===3&&(n=n.split("").map(function(p){return p+p}).join(""));var f=parseInt(n,16)||0;return[(f>>16&255)/255,(f>>8&255)/255,(f&255)/255]}function M(e){var n=getComputedStyle(e);return{base:E(n.getPropertyValue("--backdrop-base")),a:E(n.getPropertyValue("--backdrop-a")),b:E(n.getPropertyValue("--backdrop-b")),c:E(n.getPropertyValue("--backdrop-c")),isDark:/dark/.test(n.colorScheme||"")}}var A=!0,_=!0,$=[],rt=typeof WeakSet=="function"?new WeakSet:null;function D(){_=!0,y()}function B(){C.some(function(e){return!e.isOuter&&e.isInView})&&D()}function Q(e){return e.closest(":has(> .backdrop)")}function nt(){A=!1,_=!0,$=Array.prototype.filter.call(document.querySelectorAll("[data-glass]:not([data-cut-line])"),function(e){e.glassHost=Q(e),e.glassHost&&e.glassHost.shownGlass&>(e,e.glassHost.shownGlass);var n=getComputedStyle(e);return e.glassIsSmoked=/dark/.test(n.colorScheme||""),n.visibility!=="hidden"&&n.display!=="none"&&Number(n.opacity)>.05}),$.forEach(function(e){rt&&!rt.has(e)&&(rt.add(e),window.zaismaWatch.size(e,D))})}function ot(e,n,f){var p=Math.min(n,f);return window.zaismaCorners(e,"pane").map(function(w){return Math.min(w,Math.round(p*.3))})}function V(e){var n=e.canvas.getBoundingClientRect(),f=e.canvas.parentElement,p=e.isOuter?1:(e.drawnWidth||e.canvas.width)/Math.max(1,n.width),w=[];$.forEach(function(q){if(q.glassHost===f){var G=q.getBoundingClientRect();G.width<24||G.height<24||G.right<n.left||G.left>n.right||G.bottom<n.top||G.top>n.bottom||w.push({el:q,r:G,area:G.width*G.height})}}),w.sort(function(q,G){return G.area-q.area}),w=w.slice(0,d).sort(function(q,G){return q.area-G.area});var j=new Float32Array(d*4),ht=new Float32Array(d*4);w.forEach(function(q,G){var Z=q.r,N=ot(q.el,Z.width,Z.height);j.set([(Z.left-n.left)*p,(n.bottom-Z.bottom)*p,(Z.right-n.left)*p,(n.bottom-Z.top)*p],G*4),ht.set([N[0]*p,N[1]*p,N[2]*p,N[3]*p+(q.el.glassIsSmoked?4096:0)],G*4)}),e.glass={rects:j,cuts:ht,count:w.length,scale:p,box:n,els:w.map(function(q){return q.el})},e.isDrawn=!1}function Y(e){var n=function(f){return f/=255,f<=.03928?f/12.92:Math.pow((f+.055)/1.055,2.4)};return .2126*n(e[0])+.7152*n(e[1])+.0722*n(e[2])}function it(e,n){var f=Y(e),p=Y(n);return(Math.max(f,p)+.05)/(Math.min(f,p)+.05)}function ct(e,n,f){return[e[0]+(n[0]-e[0])*f,e[1]+(n[1]-e[1])*f,e[2]+(n[2]-e[2])*f]}function ut(e,n){for(var f=n.slice().sort(function(G,Z){return Y(G)-Y(Z)}),p=e.isSmoked?f[Math.floor(f.length*.75)]:f[Math.floor(f.length*.25)],w=.3;w<=.95;w+=.02){var j=ct(p,e.base,w),ht=e.isSmoked?[247,249,252]:[20,23,28],q=e.isSmoked?ct(j,ht,.7):[89,96,106];if(it(j,q)>=4.5&&it(j,ht)>=6)return w}return .95}function lt(e){var n=e.reduce(function(G,Z){return[G[0]+Z[0],G[1]+Z[1],G[2]+Z[2]]},[0,0,0]),f=n.map(function(G){return G/e.length}),p={isSmoked:!1,base:ct([255,255,255],f,.1)},w={isSmoked:!0,base:ct([12,15,20],f,.3)},j=ut(p,e),ht=ut(w,e),q=j<=ht?p:w;return{isSmoked:q.isSmoked,tint:"rgba("+q.base.map(Math.round).join(", ")+", "+Math.min(j,ht).toFixed(2)+")"}}function gt(e,n){e.glassPick!==n&&(e.glassPick=n,e.classList.toggle("smoke",n.isSmoked),n.isSmoked?e.removeAttribute("data-theme-choice"):e.setAttribute("data-theme-choice","light"),e.style.setProperty("--glass-tint",n.tint))}function I(e,n){n.length&&b(e,lt(n))}function b(e,n){var f=e.canvas.parentElement;f&&(f.shownGlass=n,A=!0,f.ownThemeChoice===void 0&&(f.ownThemeChoice=f.getAttribute("data-theme-choice")),f.classList.toggle("smoke",n.isSmoked),n.isSmoked?f.removeAttribute("data-theme-choice"):f.setAttribute("data-theme-choice",f.ownThemeChoice||"light"),f.querySelectorAll("[data-glass]:not([data-cut-line])").forEach(function(p){Q(p)===f&>(p,f.shownGlass)}))}function H(e){for(var n=[],f=4*Math.max(1,Math.floor(e.length/4/2400)),p=0;p<e.length;p+=f)n.push([e[p],e[p+1],e[p+2]]);return n}function X(e,n,f,p){var w=new Uint8Array(f*p*4);e.readPixels(0,0,f,p,e.RGBA,e.UNSIGNED_BYTE,w),I(n,H(w))}function et(e){var n=e.still;if(!(!n||!n.naturalWidth)){var f=document.createElement("canvas"),p=Math.min(1,160/Math.max(n.naturalWidth,n.naturalHeight));f.width=Math.max(2,Math.round(n.naturalWidth*p)),f.height=Math.max(2,Math.round(n.naturalHeight*p));var w=f.getContext("2d",{willReadFrequently:!0});w.drawImage(n,0,0,f.width,f.height),e.isGlassAdapted=!0;try{I(e,H(w.getImageData(0,0,f.width,f.height).data))}catch{}}}function dt(e){var n=e.canvas.contentWindow;if(n)try{n.postMessage({panes:[],isIdle:tt},new URL(e.canvas.src).origin)}catch{}}var tt=!1,r=0;function c(){tt=!0,S()}function S(){C.forEach(function(e){e.kind==="frame"&&dt(e)})}var T=null,O=!1;function R(){if(T)return T.isLost?null:T;if(O)return null;var e=document.createElement("canvas");e.width=2,e.height=2;var n=e.getContext("webgl2",{antialias:!1,depth:!1,stencil:!1,alpha:!1,powerPreference:"low-power"});if(!n)return O=!0,null;T={board:e,gl:n,programs:{},isLost:!1,parallel:n.getExtension("KHR_parallel_shader_compile")};function f(){n.bindVertexArray(n.createVertexArray()),n.bindBuffer(n.ARRAY_BUFFER,n.createBuffer()),n.bufferData(n.ARRAY_BUFFER,new Float32Array([-1,-1,3,-1,-1,3]),n.STATIC_DRAW),n.enableVertexAttribArray(0),n.vertexAttribPointer(0,2,n.FLOAT,!1,0,0),T.vertex=n.createShader(n.VERTEX_SHADER),n.shaderSource(T.vertex,i),n.compileShader(T.vertex),T.upscale={status:"compiling",names:["zaismaDrawn","zaismaDrawnSize","zaismaCanvasSize"]},U(T.upscale,s),T.drawn={texture:n.createTexture(),framebuffer:n.createFramebuffer(),widthPx:0,heightPx:0}}return f(),e.addEventListener("webglcontextlost",function(p){p.preventDefault(),T.isLost=!0}),e.addEventListener("webglcontextrestored",function(){T.programs={},T.isLost=!1,f(),C.forEach(function(p){p.isDrawn=!1}),y()}),T}function U(e,n){var f=T.gl,p=f.createShader(f.FRAGMENT_SHADER),w=f.createProgram();f.shaderSource(p,n),f.compileShader(p),f.attachShader(w,T.vertex),f.attachShader(w,p),f.bindAttribLocation(w,0,"corner"),f.linkProgram(w),e.pending={program:w,fragment:p}}function K(e){if(e.status!=="compiling")return e.status==="ready";var n=T.gl,f=e.pending;if(T.parallel&&!k&&!n.getProgramParameter(f.program,T.parallel.COMPLETION_STATUS_KHR))return!1;if(n.getProgramParameter(f.program,n.LINK_STATUS))e.program=f.program,e.status="ready",e.at={},e.names.forEach(function(w){e.at[w]=n.getUniformLocation(f.program,w)});else if(console.warn("Backdrop shader:",n.getShaderInfoLog(f.fragment)||n.getProgramInfoLog(f.program)),n.deleteProgram(f.program),e.status="failed",e.plainSource){var p=e.plainSource;e.plainSource=null,e.status="compiling",e.hasPass=!1,U(e,p)}return n.deleteShader(f.fragment),e.status!=="compiling"&&(e.pending=null),e.status==="ready"}function J(e,n){if(e.programs[n])return e.programs[n];var f=t+\`uniform float iDark;
|
|
11285
11337
|
\`+l+n+\`
|
|
11286
11338
|
\`,p={status:"compiling",hasPass:!0,names:["iResolution","iTime","iDark","iGlassPanes","iGlassPaneCount","zaismaPaneCuts","zaismaPixel","zaismaViewOffset"],plainSource:f+\`uniform vec2 zaismaViewOffset;
|
|
11287
11339
|
out vec4 zaismaFragColor;
|
|
11288
|
-
void main() { vec4 color = vec4(0.0); mainImage(color, gl_FragCoord.xy + zaismaViewOffset); zaismaFragColor = vec4(color.rgb, 1.0); }\`};return U(p,f+g),e.programs[n]=p,p}function st(e,n,f){var p=e.gl,w=e.drawn;return(w.widthPx<n||w.heightPx<f)&&(w.widthPx=Math.max(w.widthPx,n),w.heightPx=Math.max(w.heightPx,f),p.bindTexture(p.TEXTURE_2D,w.texture),p.texImage2D(p.TEXTURE_2D,0,p.RGBA8,w.widthPx,w.heightPx,0,p.RGBA,p.UNSIGNED_BYTE,null),p.texParameteri(p.TEXTURE_2D,p.TEXTURE_MIN_FILTER,p.LINEAR),p.texParameteri(p.TEXTURE_2D,p.TEXTURE_MAG_FILTER,p.LINEAR),p.texParameteri(p.TEXTURE_2D,p.TEXTURE_WRAP_S,p.CLAMP_TO_EDGE),p.texParameteri(p.TEXTURE_2D,p.TEXTURE_WRAP_T,p.CLAMP_TO_EDGE),p.bindFramebuffer(p.FRAMEBUFFER,w.framebuffer),p.framebufferTexture2D(p.FRAMEBUFFER,p.COLOR_ATTACHMENT0,p.TEXTURE_2D,w.texture,0)),w}function ft(e){var n=e.getAttribute("data-backdrop-shader")||m,f=R(),p=null;if(!f)return null;function w(j,ht,q){var G=R(),Z=G&&J(G,n);if(!Z||!K(Z)||!K(G.upscale))return Z&&(Z.status==="failed"||G.upscale.status==="failed")&&(q.isLost=!0),!1;if(p=p||e.getContext("2d",{alpha:!1}),!p)return!1;var N=G.gl,yt=G.board,Et=e.width,bt=e.height,Ct=q.drawnWidth,Mt=q.drawnHeight,St=Z.at;(yt.width<Et||yt.height<bt)&&(yt.width=Math.max(yt.width,Et),yt.height=Math.max(yt.height,bt));var Ut=st(G,Ct,Mt);N.bindFramebuffer(N.FRAMEBUFFER,Ut.framebuffer),N.useProgram(Z.program),N.viewport(0,0,Ct,Mt);var Jt=e.classList.contains("is-framed"),Gt=Jt?1.8:1,Vt=Ct*Gt,Xt=Mt*Gt;N.uniform3f(St.iResolution,Vt,Xt,1),N.uniform1f(St.iTime,j),N.uniform1f(St.iDark,ht.darkShare),N.uniform2f(St.zaismaViewOffset,(Vt-Ct)/2,(Xt-Mt)/2);var Yt=!1;if(Z.hasPass){var Rt=q.glass||{rects:new Float32Array(d*4),cuts:new Float32Array(d*4),count:0,scale:1,box:e.getBoundingClientRect()};N.uniform4fv(St.iGlassPanes,Rt.rects),N.uniform4fv(St.zaismaPaneCuts,Rt.cuts),N.uniform1i(St.iGlassPaneCount,Rt.count),N.uniform1f(St.zaismaPixel,Rt.scale),Yt=e.hasAttribute("data-adapts-glass")&&!q.isGlassAdapted&&Rt.count>0}N.drawArrays(N.TRIANGLES,0,3);var Dt=G.upscale;return N.bindFramebuffer(N.FRAMEBUFFER,null),N.useProgram(Dt.program),N.viewport(0,0,Et,bt),N.activeTexture(N.TEXTURE0),N.bindTexture(N.TEXTURE_2D,Ut.texture),N.uniform1i(Dt.at.zaismaDrawn,0),N.uniform2f(Dt.at.zaismaDrawnSize,Ct,Mt),N.uniform2f(Dt.at.zaismaCanvasSize,Et,bt),N.drawArrays(N.TRIANGLES,0,3),Yt&&(q.isGlassAdapted=!0,X(N,q,Et,bt)),p.drawImage(yt,0,yt.height-bt,Et,bt,0,0,Et,bt),e.classList.contains("is-drawn")||e.classList.add("is-drawn"),!0}return w.prepare=function(){var j=R();j&&J(j,n)},w}var mt=500;function at(e,n,f){return e.map(function(p,w){return p+(n[w]-p)*f})}function pt(e,n){var f=L.matches||!e.from?1:Math.min(1,(n-e.fadeStartMs)/mt);if(f>=1)return e.from=null,Object.assign({},e.target,{darkShare:e.target.isDark?1:0});var p=f*f*(3-2*f),w=e.from,j=e.target;return{base:at(w.base,j.base,p),a:at(w.a,j.a,p),b:at(w.b,j.b,p),c:at(w.c,j.c,p),isDark:p<.5?w.isDark:j.isDark,darkShare:(w.darkShare!==void 0?w.darkShare:w.isDark?1:0)+((j.isDark?1:0)-(w.darkShare!==void 0?w.darkShare:w.isDark?1:0))*p}}var Pt=1e3,Lt="zaisma:backdrop-lag-s",kt=performance.now(),wt=1,Tt=performance.now(),vt=!1,xt=Date.now()/1e3;try{xt-=Number(sessionStorage.getItem(Lt))||0}catch{}function Wt(e){var n=Math.max(0,e-Tt);Tt=e,wt=e-kt>u?Math.max(0,wt-n/Pt):Math.min(1,wt+n/Pt),xt+=wt*n/1e3,vt=wt===0}function qt(){kt=performance.now(),clearTimeout(r),r=setTimeout(c,u),tt&&(tt=!1,S()),vt&&(vt=!1,Tt=kt,C.forEach(function(e){e.isDrawn=!1}),y())}["pointerdown","pointermove","keydown","wheel","touchstart","scroll"].forEach(function(e){window.addEventListener(e,qt,{passive:!0,capture:!0})}),r=setTimeout(c,u),window.addEventListener("pagehide",function(){try{sessionStorage.setItem(Lt,String(Date.now()/1e3-xt))}catch{}});function At(e,n){if(!e.isOuter){var f=L.matches?20:xt%3600;e.colors=pt(e,n);var p=!0;if(e.drawShader){if(p=e.drawShader(f,e.colors,e),e.isLost){e.canvas.classList.remove("is-drawn");return}}else e.canvas.dispatchEvent(new CustomEvent("backdrop-frame",{detail:{timeS:f,colors:e.colors,widthPx:e.canvas.width,heightPx:e.canvas.height}}));e.isDrawn=p&&!e.from}}function Kt(e){return e.isOuter||!e.isInView||e.isLost||e.canvas.hasAttribute("data-backdrop-paused")?!1:!((e.isHeld||L.matches||vt)&&e.isDrawn)}function Ft(e){if(T=!1,!document.hidden){var n=tt?v:P;if(e-x<n&&!_){T=!0,requestAnimationFrame(Ft);return}var f=F?P:e-x;x=e,F=!1,k=h,h=!1,Wt(e),A&&nt();var p=_;_=!1,C.forEach(function(w){if(!(!w.isInView||w.canvas.hasAttribute("data-backdrop-paused"))){if(w.isOuter){w.kind==="frame"&&!w.isTold&&(w.isTold=!0,dt(w)),w.canvas.hasAttribute("data-adapts-glass")&&!w.isGlassAdapted&&et(w);return}w.drawShader&&(p||!w.glass)&&V(w),!((w.isHeld||L.matches||vt)&&w.isDrawn)&&(w.drawShader&&f<1e3&&(w.slowS=f>n*1.5?w.slowS+f/1e3:Math.max(0,w.slowS-f/2e3),w.slowS>1.5&&(w.slowS=0,w.scale>.26?(w.scale*=.75,w.size()):w.isHeld=!0)),At(w,e))}}),k=!1,(_||A||C.some(Kt))&&(T=!0,requestAnimationFrame(Ft))}}function Ht(){var e=performance.now();A=!0,C.forEach(function(n){var f=M(n.canvas);JSON.stringify(f)!==JSON.stringify(n.target)&&(n.from=n.colors,n.target=f,n.fadeStartMs=e,n.isDrawn=!1,n.isGlassAdapted=!1,n.isInView&&At(n,e))}),y()}function Ot(){var e="";C.forEach(function(n){var f=n.isOuter&&n.canvas.getAttribute("data-backdrop-color");f&&/^#[0-9a-fA-F]{6}$/.test(f)&&(e=f)}),e?document.documentElement.style.setProperty("--backdrop-edge",e):document.documentElement.style.removeProperty("--backdrop-edge")}function $t(e,n){var f={canvas:e,kind:n,isOuter:!0,isInView:!0,isTold:!1,isGlassAdapted:!1,target:M(e),from:null};e.backdropLayer=f,C.push(f),n==="frame"&&(f.onMessage=function(w){w.source===e.contentWindow&&w.data&&w.data.zaismaBackground&&(f.isTold=!1,D())},window.addEventListener("message",f.onMessage));function p(){var w=e.getAttribute("data-glass-kind");if(e.hasAttribute("data-adapts-glass")&&w){f.isGlassAdapted=!0,b(f,{isSmoked:w==="smoked",tint:e.getAttribute("data-glass-tint")||""});return}var j=e.getAttribute("data-backdrop-still")||(n==="picture"?e.currentSrc||e.src:"");if(!(!e.hasAttribute("data-adapts-glass")||!j)){var ht=new Image;ht.onload=function(){e.getAttribute("data-backdrop-still")!==j&&n!=="picture"||(f.still=ht,f.isGlassAdapted=!1,D())},ht.src=j}}p(),new MutationObserver(p).observe(e,{attributes:!0,attributeFilter:["data-backdrop-still","src","data-glass-kind"]}),window.IntersectionObserver&&new IntersectionObserver(function(w){f.isInView=w[w.length-1].isIntersecting,f.isInView&&D()}).observe(e),D(),Ot()}function It(e){if(!e.backdropLayer&&!(e.hasAttribute("data-backdrop-stand-in")&&!e.hasAttribute("data-backdrop-shader"))){var n=e.getAttribute("data-backdrop");if(n==="frame"||n==="picture")return $t(e,n);var f=e.getAttribute("data-backdrop")==="scene",p=window.matchMedia("(max-width: 760px)").matches,w=Math.min(window.devicePixelRatio||1,f?2:1.5),j=e.classList.contains("is-framed"),ht=zt&&zt.has(e)?zt.get(e):Bt(e),q={canvas:e,isInView:ht,isDrawn:!1,isHeld:!1,slowS:0,target:M(e),from:null,scale:f||j?w:(p?.4:.55)*w};if(!(!f&&(q.drawShader=ft(e),!q.drawShader))){if(e.backdropLayer=q,q.size=function(){var Z=Math.max(2,Math.round(e.clientWidth*q.scale)),N=Math.max(2,Math.round(e.clientHeight*q.scale));f||(q.drawnWidth=Math.max(2,Math.round(e.clientWidth*q.scale*a)),q.drawnHeight=Math.max(2,Math.round(e.clientHeight*q.scale*a)),Z=Math.round(q.drawnWidth*o),N=Math.round(q.drawnHeight*o)),!(Z===e.width&&N===e.height)&&(e.width=Z,e.height=N,q.isDrawn=!1,q.glass=null,e.backdropLayer&&!h&&q.isInView&&At(q,performance.now()))},q.size(),window.zaismaWatch.size(e,q.size),window.IntersectionObserver&&new IntersectionObserver(function(Z){q.isInView=Z[Z.length-1].isIntersecting,q.onView&&q.onView(),q.isInView&&y()}).observe(e),q.drawShader&&!ht&&window.IntersectionObserver){var G=new IntersectionObserver(function(Z){Z[Z.length-1].isIntersecting&&(G.disconnect(),q.drawShader.prepare())},{rootMargin:"100% 0px"});G.observe(e)}else q.drawShader&&q.drawShader.prepare();new MutationObserver(y).observe(e,{attributes:!0,attributeFilter:["data-backdrop-paused"]}),C.push(q),!h&&q.isInView&&At(q,performance.now()),y()}}}function Bt(e){var n=e.getBoundingClientRect();return n.bottom>0&&n.right>0&&n.top<window.innerHeight&&n.left<window.innerWidth}var _t=document.querySelectorAll("canvas[data-backdrop], iframe[data-backdrop='frame'], img[data-backdrop='picture']"),zt=new Map;_t.forEach(function(e){e.tagName==="CANVAS"&&zt.set(e,Bt(e))}),_t.forEach(It),zt.clear(),window.zaismaWatch.each("canvas[data-backdrop], iframe[data-backdrop='frame'], img[data-backdrop='picture']",It),window.zaismaBackdrop={add:function(e){A=!0,It(e),y()},remove:function(e){var n=e.backdropLayer;n&&(C=C.filter(function(f){return f!==n}),n.onMessage&&window.removeEventListener("message",n.onMessage),e.backdropLayer=null,D(),Ot())},forgetGlass:function(){document.querySelectorAll(":has(> .backdrop)").forEach(function(e){e.shownGlass=null}),document.querySelectorAll("[data-glass]").forEach(function(e){e.glassPick=null,e.classList.remove("smoke"),e.removeAttribute("data-theme-choice"),e.style.removeProperty("--glass-tint")})}},window.zaismaWatch.scroll(B),window.zaismaWatch.resize(D);function Nt(e){return e.nodeType===1&&(e.hasAttribute("data-glass")||!!e.querySelector("[data-glass]"))}window.zaismaWatch.page(function(e){A||(A=e.some(function(n){return n.type==="attributes"?n.target.hasAttribute("data-glass"):Array.prototype.some.call(n.addedNodes,Nt)||Array.prototype.some.call(n.removedNodes,Nt)}),A&&y())}),document.addEventListener("toggle",function(){A=!0,y()},!0),document.addEventListener("visibilitychange",function(){document.hidden||y()}),new MutationObserver(Ht).observe(document.documentElement,{subtree:!0,attributes:!0,attributeFilter:["data-theme-choice"]}),window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",Ht),L.addEventListener("change",Ht)})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W["shown-once-drawn"]||(W["shown-once-drawn"]=!0,(function(){var l="iframe[data-shows-once-drawn]";function m(g){window.zaismaWatch.afterSettling(function(){g.classList.add("is-shown")})}window.addEventListener("message",function(g){!g.data||!g.data.zaismaBackground||document.querySelectorAll(l).forEach(function(d){g.source===d.contentWindow&&(d.hasSaid=!0,m(d))})}),window.zaismaWatch.eachArriving(l,function(g){g.addEventListener("load",function(){setTimeout(function(){g.hasSaid||m(g)},4e3)})})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W.switches||(W.switches=!0,(function(){window.zaismaWatch.each(".tab-switch",function(l){var m=l.querySelector(".switch-slab"),g=l.querySelectorAll(":scope > a, :scope > button:not(.switch-folder)"),d=function(){return l.classList.contains("vertical")};function t(){return l.querySelector('[aria-current="page"], [aria-pressed="true"]')}var i=parseFloat(getComputedStyle(document.documentElement).getPropertyValue("--gap-control-row"))||4;function s(r){return Math.max(0,((Number(r.getAttribute("data-cut-line"))||0)-i)/2)}var a=window.matchMedia("(prefers-reduced-motion: reduce)").matches;function o(r){var c=window.devicePixelRatio||1;return Math.round(r*c)/c}function u(r,c,S,z){return function(O){for(var R=O,U=0;U<8;U++){var K=3*(1-R)*(1-R)*R*r+3*(1-R)*R*R*S+R*R*R-O,J=3*(1-R)*(1-R)*r+6*(1-R)*R*(S-r)+3*R*R*(1-S);if(Math.abs(J)<1e-6)break;R=Math.min(1,Math.max(0,R-K/J))}return 3*(1-R)*(1-R)*R*c+3*(1-R)*R*R*z+R*R*R}}var P=u(.4,0,.2,1);function v(r,c){r.slideAt=c;var S=Math.round(c.size)+"px";d()?(r.style.width=c.width?Math.round(c.width)+"px":"",r.style.height=S,r.style.transform="translate("+(c.across||0)+"px, "+c.pos+"px)"):(r.style.height="",r.style.width=S,r.style.transform="translateX("+c.pos+"px)")}function L(r,c,S){var z=r===m?k:null,O=z?z.ease:P,R=r.slideAt||c,U=z?null:performance.now(),K=(r.slideId||0)+1;r.slideId=K,r.slideTarget=c,(function J(){if(r.slideId===K){var st=U===null?0:Math.min(1,(performance.now()-U)/S),ft=O(st);if(c=r.slideTarget,z&&z.isOn&&window.scrollTo(window.scrollX,z.fromY+(z.toY-z.fromY)*ft),r.redrawCut&&r.redrawCut({isFrame:!0}),v(r,{pos:st<1?R.pos+(c.pos-R.pos)*ft:c.pos,size:c.size,across:c.across===void 0?void 0:st<1?(R.across||0)+(c.across-(R.across||0))*ft:c.across,width:c.width}),st<1){requestAnimationFrame(function(){U===null&&(U=performance.now()),J()});return}r.slideTarget=null,r.redrawCut&&r.redrawCut(),z&&z.isOn&&z.land()}})()}function C(r,c,S,z){var O=s(r),R=S?0:O,U=z?0:O,K=l.closest("[data-cut-line]"),J=K&&K.getAttribute("data-slanted")||"";if(!r.classList.contains("focus-ring")&&(S&&/start/.test(J)||z&&/end/.test(J))){var st=c.offsetTop,ft=l.offsetHeight,mt=parseFloat(getComputedStyle(document.documentElement).getPropertyValue("--control-slant"))||10,at=Math.min(Number(r.getAttribute("data-cut-line"))||0,(c.offsetWidth+R+U)/3),pt=mt/2-at/2+st*Math.sqrt(1+mt/ft*(mt/ft))-st;S&&/start/.test(J)&&(R=-pt),z&&/end/.test(J)&&(U=-pt)}return{start:R,end:U}}function x(){var r=l.closest("[data-cut-line]"),c=r&&r.getAttribute("data-slanted")||"",S=Array.prototype.filter.call(g,function(z){return!z.classList.contains("folded")&&!z.hidden});S.forEach(function(z,O){if(d()){z.style.removeProperty("--tab-shift");return}var R=O===0,U=O===S.length-1,K=C(m,z,R,U),J=Math.min(Number(m.getAttribute("data-cut-line"))||0,(z.offsetWidth+K.start+K.end)/3),st=(!R||/start/.test(c)?1:0)-(!U||/end/.test(c)?1:0);z.style.setProperty("--tab-shift",Math.round(((K.end-K.start)/2+st*J/4)*10)/10+"px")})}function T(r,c,S){var z=!S&&r.slideTarget&&r.pickedTab===c;if(r.pickedTab=c,!c){r.style.width="0px";return}var O={beside:r.getAttribute("data-cut-beside"),ends:r.getAttribute("data-cut-ends")||"",stack:r.getAttribute("data-cut-stack")},R=Array.prototype.filter.call(l.querySelectorAll(":scope > a, :scope > button"),function(At){return!At.classList.contains("folded")&&!At.hidden}),U=c===R[0],K=c===R[R.length-1];if(d()){var J={pos:c.offsetTop,size:c.offsetHeight},st=S&&!a?h(r):0,ft=getComputedStyle(l).display==="grid";if(ft&&(J.across=c.offsetLeft,J.width=c.offsetWidth),r.classList.contains("focus-ring")){var mt=U?0:c.offsetTop,at=K?l.getBoundingClientRect().height:c.offsetTop+c.offsetHeight,pt=Math.round(at-mt);J={pos:K?at-pt:mt,size:pt,across:J.across,width:J.width}}r.setAttribute("data-cut-beside",""),r.setAttribute("data-cut-stack",((U?"first ":"")+(K?"last":"")).trim()),F(r,J,st,O.stack!==null?O:null,z);return}var Pt=C(r,c,U,K),Lt=Pt.start,kt=Pt.end,wt={pos:o(c.offsetLeft-Lt),size:c.offsetWidth+Lt+kt},Tt=S&&!a?h(r):0;if(r.classList.contains("focus-ring")){var vt=U?0:c.offsetLeft-Lt,xt=K?l.getBoundingClientRect().width:c.offsetLeft+c.offsetWidth+kt,Wt=Math.round(xt-vt);wt={pos:K?xt-Wt:vt,size:Wt}}r.setAttribute("data-cut-beside",((U?"":"start ")+(K?"":"end")).trim());var qt=((U?"start ":"")+(K?"end":"")).trim();qt?r.setAttribute("data-cut-ends",qt):r.removeAttribute("data-cut-ends"),F(r,wt,Tt,O.beside!==null?O:null,z)}function F(r,c,S,z,O){if(O){r.slideTarget=c;return}if(S&&r.redrawCut){var R=r.slideAt;v(r,c),r.redrawCut(z?{from:z,ms:S,ease:r===m&&k?k.ease:P,isDriven:!0}:void 0),R&&v(r,R),L(r,c,S);return}r.slideId=(r.slideId||0)+1,r.slideTarget=null,v(r,c),r.redrawCut&&r.redrawCut()}function h(r){return r===m&&k?k.ms:parseFloat(getComputedStyle(r).getPropertyValue("--slide-ms"))||550}var k=null;function y(r,c,S){k&&k.stop();var z=document.documentElement,O=window.scrollY,R=parseFloat(getComputedStyle(z).scrollPaddingTop)||0,U=Math.max(0,Math.min(z.scrollHeight-window.innerHeight,O+c.getBoundingClientRect().top-R)),K=Math.abs(U-O)/window.innerHeight,J=k={isOn:!0,fromY:O,toY:U,ms:Math.min(800,400+130*Math.max(0,K-1)),ease:function(at){return at*at*at*(at*(6*at-15)+10)}},st=["wheel","touchstart","pointerdown","keydown"];function ft(at){J.isOn=!1,st.forEach(function(pt){window.removeEventListener(pt,mt)}),k===J&&(k=null),requestAnimationFrame(function(){requestAnimationFrame(function(){k||z.removeAttribute("data-page-gliding"),dispatchEvent(new CustomEvent("zaisma:page-glide-end",{detail:{hash:S,hasLanded:at}}))})})}function mt(){ft(!1)}J.stop=function(){J.isOn&&(J.isOn=!1,st.forEach(function(at){window.removeEventListener(at,mt)}))},J.land=function(){location.hash=S,ft(!0)},z.setAttribute("data-page-gliding",""),st.forEach(function(at){window.addEventListener(at,mt,{passive:!0})}),l.pickTab(r)}var E=!1;function M(){var r=l.querySelector(":scope > .is-focused"),c=l.querySelector(".focus-ring");r&&c&&(T(c,r),l.classList.add("is-focus-shown"))}function A(){if(!(E||!l.getClientRects().length)){x();var r=t(),c=l.querySelector(":scope > :focus-visible"),S=l.querySelector(".focus-ring");m.style.transition="none",T(m,r),S&&c&&T(S,c),M(),m.offsetWidth,m.style.transition="",l.classList.add("is-ready")}}var _=l.closest("body > .top")&&window.matchMedia("(orientation: landscape) and (max-height: 500px) and (max-width: 64em)");function $(){var r=_.matches,c=l.closest(".switch-well"),S=l.parentElement;l.classList.toggle("vertical",r),c&&(c.classList.toggle("vertical",r),c.classList.toggle("is-full",!r),c.setAttribute("data-edge-light",r?"left":"bottom")),S&&S.classList.toggle("across",!r)}_&&($(),_.addEventListener("change",function(){$(),A()})),A();function rt(r){var c=t(),S=l.parentElement;if(S){if(d()){var z=S.scrollHeight-S.clientHeight;if(!c||z<=1||!c.getClientRects().length)return;var O=window.zaismaScrollFadePx?window.zaismaScrollFadePx():34,R=S.getBoundingClientRect(),U=c.getBoundingClientRect(),K=S.scrollTop,J=U.top-R.top+K,st=U.bottom-R.top+K,ft=K;J-O<K?ft=J-O:st+O>K+S.clientHeight&&(ft=st+O-S.clientHeight),S.scrollTo({top:Math.max(0,Math.min(z,ft)),behavior:r?"smooth":"auto"});return}l.classList.remove("is-past-room"),!(S.scrollWidth<=S.clientWidth+1)&&(l.classList.add("is-past-room"),c&&S.scrollTo({left:c.offsetLeft+c.offsetWidth/2-S.clientWidth/2,behavior:r?"smooth":"auto"}))}}rt(!1);var D=window.navigation&&navigation.activation&&navigation.activation.from;if(D&&D.url&&m.animate&&!d()&&!window.matchMedia("(prefers-reduced-motion: reduce)").matches){var B=new URL(D.url),Q=B.pathname,nt=Q===location.pathname&&B.search===location.search,ot=Array.prototype.filter.call(g,function(r){return r.href&&new URL(r.href).pathname===Q}),V=ot.find(function(r){return new URL(r.href).search===B.search})||(ot.length===1?ot[0]:void 0),Y=t();if(V&&Y&&V!==Y&&!nt){var it=function(){var r=d()?"translateY("+V.offsetTop+"px)":"translateX("+V.offsetLeft+"px) scaleX("+(V.offsetWidth/Math.max(1,Y.offsetWidth)).toFixed(4)+")",c=d()?"translateY("+Y.offsetTop+"px)":"translateX("+Y.offsetLeft+"px) scaleX(1)";return m.animate([{transform:r,transformOrigin:"0 0"},{transform:c,transformOrigin:"0 0"}],{duration:h(m),easing:"cubic-bezier(.3, 1.2, .4, 1)"})};m.style.transition="none",T(m,V),m.offsetWidth,m.style.transition="",E=!0;var ct=function(){requestAnimationFrame(function(){E=!1,A(),E=!0;var r=function(){E=!1,A()};it().finished.then(r,r)})};window.zaismaWatch.fontsIn(ct)}}window.zaismaWatch.fontsIn(A),window.zaismaWatch.size(l,A),window.zaismaWatch.size(l,function(){d()||rt(!1)}),l.parentElement&&(window.zaismaWatch.size(l.parentElement,A),window.zaismaWatch.size(l.parentElement,function(){rt(!1)})),Array.prototype.forEach.call(l.querySelectorAll(":scope > .foldable"),function(r){window.zaismaWatch.size(r,A)}),l.pickTab=function(r){r.tagName==="BUTTON"?g.forEach(function(S){S.setAttribute("aria-pressed",String(S===r))}):g.forEach(function(S){S===r?S.setAttribute("aria-current","page"):S.removeAttribute("aria-current")}),m.pickedTab!==r&&T(m,r,!0);var c=l.closest("[data-fades-sideways]");c&&c.showWhole&&!d()?c.showWhole(r,!0):rt(!0),I()};function ut(r){return r.disabled||r.getAttribute("aria-disabled")==="true"}g.forEach(function(r){r.addEventListener("click",function(c){if(!ut(r)){if(r.href&&r.getAttribute("aria-current")==="page"&&c.button===0&&!c.metaKey&&!c.ctrlKey&&!c.shiftKey&&!c.altKey){c.preventDefault();return}if(r.href&&!c.defaultPrevented){var S=new URL(r.href,location.href),z=c.button===0&&!c.metaKey&&!c.ctrlKey&&!c.shiftKey&&!c.altKey&&(!r.target||r.target==="_self");if(S.pathname!==location.pathname||S.search!==location.search){if(!d()||a||!z)return;c.preventDefault(),X=X||t(),l.pickTab(r),H(),clearTimeout(et),et=setTimeout(function(){location.assign(r.href)},h(m));return}var O=d()&&!a&&z&&S.hash&&document.getElementById(decodeURIComponent(S.hash.slice(1)));if(O&&O.getClientRects().length){c.preventDefault(),y(r,O,S.hash);return}}l.pickTab(r)}})});var lt=Array.prototype.slice.call(l.querySelectorAll(":scope > .switch-folder"));function gt(r){for(var c=[],S=r.nextElementSibling;S&&S.classList.contains("is-in-folder");S=S.nextElementSibling)c.push(S);return c}function I(){var r=t();lt.forEach(function(c){var S=gt(c).indexOf(r)>=0;c.classList.toggle("is-held",S),S?c.removeAttribute("data-lights"):c.setAttribute("data-lights",""),S&&c.getAttribute("aria-expanded")!=="true"&&b(c,!0)})}function b(r,c){r.setAttribute("aria-expanded",String(c)),gt(r).forEach(function(S){dt(S,c)})}lt.forEach(function(r){r.addEventListener("click",function(){if(!r.classList.contains("is-held")){var c=r.getAttribute("aria-expanded")!=="true";b(r,c),c&&H(r)}})});function H(r){lt.forEach(function(c){c!==r&&!c.classList.contains("is-held")&&c.getAttribute("aria-expanded")==="true"&&b(c,!1)})}I();var X=null,et=null;window.addEventListener("pageshow",function(r){!r.persisted||!X||(clearTimeout(et),l.pickTab(X),H(),X=null)});function dt(r,c){var S=r.hidden?0:r.offsetHeight;r.getAnimations().forEach(function(R){R.cancel()}),r.hidden=!1;var z=r.offsetHeight;if(a||!r.animate){r.hidden=!c;return}r.classList.add("is-folding");var O=r.animate([{height:S+"px",minHeight:"0px",opacity:z?S/z:0},{height:(c?z:0)+"px",minHeight:"0px",opacity:c?1:0}],{duration:240,easing:"cubic-bezier(.2,.8,.2,1)"});O.onfinish=function(){r.classList.remove("is-folding"),r.hidden=!c},O.oncancel=function(){r.classList.remove("is-folding")}}var tt=l.querySelector(".focus-ring");l.addEventListener("focusin",function(r){var c=r.target;!tt||c.parentElement!==l||!c.matches(":focus-visible")||(T(tt,c),l.classList.add("is-focus-shown"))}),l.addEventListener("focusout",function(){l.classList.remove("is-focus-shown")})})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W.sidebar||(W.sidebar=!0,(function(){function l(o){return getComputedStyle(o).getPropertyValue("--sidebar-is-sheet").trim()==="1"}var m=function(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches};function g(o){return"zaisma-sidebar:"+o.getAttribute("data-sidebar-remember")}function d(o){return document.querySelectorAll('[data-sidebar-button][aria-controls="'+o.id+'"], [data-sidebar-button][aria-controls="'+o.id+'-sheet"]')}function t(o){var u=o.closest(".sidebar-layout"),P=document.getElementById(o.id+"-sheet");d(o).forEach(function(v){v.setAttribute("aria-controls",l(o)?o.id+"-sheet":o.id),v.setAttribute("aria-expanded",String(l(o)?!!(P&&P.open):!!(u&&!u.classList.contains("is-collapsed"))))})}function i(o,u,P){var v=o.closest(".sidebar-layout");if(v){if(P)try{localStorage.setItem(g(o),u?"hidden":"shown")}catch{}var L=v.querySelector(".sidebar-main"),C=P&&!m()&&L,x=C?L.getBoundingClientRect():null,T=C&&u?o.getBoundingClientRect():null;if(T&&(o.style.setProperty("--sidebar-left",T.left+"px"),o.style.setProperty("--sidebar-top",T.top+"px"),o.style.setProperty("--sidebar-width",T.width+"px"),o.style.setProperty("--sidebar-height",T.height+"px"),v.classList.add("is-folding")),v.classList.toggle("is-collapsed",u),t(o),T&&(requestAnimationFrame(function(){o.classList.add("is-leaving")}),setTimeout(function(){v.classList.remove("is-folding"),o.classList.remove("is-leaving"),["--sidebar-left","--sidebar-top","--sidebar-width","--sidebar-height"].forEach(function(h){o.style.removeProperty(h)})},350)),!!C){var F=x.left-L.getBoundingClientRect().left;Math.abs(F)<1||(L.style.transition="none",L.style.transform="translateX("+F+"px)",L.offsetWidth,L.style.transition="transform 0.45s cubic-bezier(.2,.8,.2,1)",L.style.transform="",setTimeout(function(){L.style.removeProperty("transition"),L.style.removeProperty("transform")},500))}}}window.zaismaWatch.each("nav.sidebar[data-sidebar-remember]",function(o){try{var u=localStorage.getItem(g(o));(u==="shown"||u==="hidden")&&i(o,u==="hidden",!1)}catch{}window.zaismaWatch.whenRead(function(){s(o)}),t(o)});function s(o){var u=document.getElementById(o.id+"-sheet");u&&(u.addEventListener("close",function(){t(o);var P=d(o)[0];P&&(!document.activeElement||document.activeElement===document.body||u.contains(document.activeElement))&&P.focus({preventScroll:!0})}),u.addEventListener("click",function(P){P.target.closest&&P.target.closest("a[href]")&&u.close()})),t(o)}document.addEventListener("click",function(o){var u=o.target.closest&&o.target.closest("[data-sidebar-button]");if(u){var P=u.getAttribute("aria-controls").replace(/-sheet$/,""),v=document.getElementById(P),L=document.getElementById(P+"-sheet");if(v){if(l(v)){L&&!L.open&&(L.showModal(),t(v));return}i(v,!v.closest(".sidebar-layout").classList.contains("is-collapsed"),!0)}}});var a=!1;window.addEventListener("resize",function(){a||(a=!0,requestAnimationFrame(function(){a=!1,document.querySelectorAll("nav.sidebar[data-sidebar-remember]").forEach(function(o){var u=document.getElementById(o.id+"-sheet");!l(o)&&u&&u.open&&u.close(),t(o)})}))})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W["started-low"]||(W["started-low"]=!0,(function(){function l(m){var g=m.querySelector(".run-wrap"),d=m.querySelector(":scope > .pane-in > .layout-stack")||m.querySelector(":scope > .pane-in"),t=g&&d&&Array.prototype.find.call(d.children,function(s){return s.contains(g)});if(t){var i=parseFloat(getComputedStyle(m).marginTop)||0;m.style.setProperty("--started-low-used",Math.round(t.getBoundingClientRect().bottom+window.scrollY-i)+"px")}}window.zaismaWatch.each(".glass-pane.is-started-low",function(m){l(m),window.zaismaWatch.size(m,function(){l(m)})})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W.placing||(W.placing=!0,(function(){window.zaismaIsOnPage=function(t,i){var s=function(a){for(var o=a;o&&o!==document.documentElement;o=o.parentElement){var u=getComputedStyle(o).position;if(u==="fixed"||u==="sticky")return!0}return!1};return!s(t)&&!(i.parentElement&&s(i.parentElement))},window.zaismaPageRoom=function(t){var i={left:0,top:0,right:document.documentElement.clientWidth,bottom:window.innerHeight};return document.querySelectorAll("header, nav.sidebar").forEach(function(s){if(!(t&&s.contains(t))){var a=getComputedStyle(s).position,o=s.getBoundingClientRect();a!=="fixed"&&a!=="sticky"||o.width<1||o.height<1||o.bottom<=0||o.top>=i.bottom||a==="fixed"&&s.offsetParent||(o.width>=i.right/2?i.top=Math.max(i.top,o.bottom):(o.left+o.right)/2<i.right/2?i.left=Math.max(i.left,o.right):i.right=Math.min(i.right,o.left))}}),i},window.zaismaPlace=function(t,i,s){var a=s.roomRect||{left:0,top:0,right:document.documentElement.clientWidth,bottom:window.innerHeight},o=s.gapPx,u=s.edgePx,P=(t.left+t.right)/2>(a.left+a.right)/2,v=Math.max(a.left+u,Math.min(P?t.right-i.width:t.left,a.right-u-i.width)),L=a.bottom-u-t.bottom-o,C=t.top-o-u-a.top,x=i.height<=L,T=i.height<=C,F=(t.top+t.bottom)/2>(a.top+a.bottom)/2,h=!s.isAlwaysBelow&&(x&&T?F:!x&&C>L),k=h?t.top-o-i.height:t.bottom+o;return{leftPx:v,topPx:Math.max(a.top+u,Math.min(k,a.bottom-u-i.height)),isAtEnd:P,isAbove:h}};var l=64;window.zaismaCast=function(t){var i=t.floatCast;if(i||(i=t.floatCast=document.createElement("div"),i.className="floating-cast",i.setAttribute("aria-hidden","true"),i.appendChild(document.createElement("div")).appendChild(document.createElement("span")),(t.parentElement||document.body).appendChild(i)),!t.isConnected||!t.matches(":popover-open")){i.hidden=!0;return}var s=t.getBoundingClientRect(),a=new DOMMatrix(getComputedStyle(t).transform==="none"?void 0:getComputedStyle(t).transform),o={width:t.offsetWidth,height:t.offsetHeight};o.left=s.left+s.width/2-o.width/2-a.e,o.top=s.top+s.height/2-o.height/2-a.f;var u=t.classList.contains("is-on-page"),P=getComputedStyle(t),v=P.getPropertyValue("--glass-clip").trim()||P.clipPath,L=/^polygon\\((.*)\\)$/.exec(v),C="calc(100% + "+l+"px)",x=-l+"px";if(!L){i.hidden=!0,t.castTries=(t.castTries||0)+1,t.castTries<60&&requestAnimationFrame(function(){window.zaismaCast(t)});return}t.castTries=0;var T=L?L[1].replace(/^(nonzero|evenodd),\\s*/,""):"0px 0px, 100% 0px, 100% 100%, 0px 100%";i.firstChild.firstChild.style.clipPath=L?v:"",i.style.clipPath="polygon(evenodd, "+x+" "+x+", "+C+" "+x+", "+C+" "+C+", "+x+" "+C+", "+x+" "+x+", "+T+", "+T.split(",")[0]+", "+x+" "+x+")",i.hidden&&i.classList.contains("is-arriving")&&requestAnimationFrame(function(){i.offsetWidth,i.classList.remove("is-arriving")}),i.hidden=!1,i.classList.toggle("is-on-page",u);var F=t.getAttribute("data-theme-choice");F?i.setAttribute("data-theme-choice",F):i.removeAttribute("data-theme-choice"),i.classList.toggle("smoke",t.classList.contains("smoke")),i.style.left=o.left+(u?window.scrollX:0)+"px",i.style.top=o.top+(u?window.scrollY:0)+"px",i.style.width=o.width+"px",i.style.height=o.height+"px"},["toggle","transitionend"].forEach(function(t){document.addEventListener(t,function(i){i.target.classList&&i.target.classList.contains("floating-pane")&&!i.target.classList.contains("in-place")&&window.zaismaCast(i.target)},!0)});var m=6,g=8,d=4;window.zaismaFloat=function(t,i){var s=t.classList.contains("in-place"),a=t.classList.contains("placed-over"),o=null;function u(){return typeof i.anchor=="function"?i.anchor():i.anchor}s||(document.querySelectorAll("body > .floating-pane, dialog > .floating-pane").forEach(function(h){h.floatingHome&&!h.floatingHome.isConnected&&(h.floatCast&&h.floatCast.remove(),h.remove())}),t.floatingHome=i.home||u(),t.floatingHome&&t.floatingHome.closest(".smoke")&&t.classList.add("smoke"),(u()&&u().closest("dialog")||document.body).appendChild(t));function P(){return s||t.matches(":popover-open")}function v(){var h=u(),k=t.offsetParent;if(!(!h||!k)){var y=i.anchorRect?i.anchorRect(h):h.getBoundingClientRect(),E=k.getBoundingClientRect(),M=window.zaismaPlace(y,{width:t.offsetWidth,height:t.offsetHeight},{roomRect:{left:E.left,top:E.top,right:E.right,bottom:E.bottom},gapPx:i.gapPx||m,edgePx:i.edgePx||g,isAlwaysBelow:!0});t.style.left=Math.round(M.leftPx-E.left-k.clientLeft)+"px",t.style.top=Math.round(M.topPx-E.top-k.clientTop)+"px",t.classList.toggle("from-start",!M.isAtEnd),i.onPlaced&&i.onPlaced()}}s&&!a&&!i.isAnchorWidth&&(t.classList.add("is-hanging"),v(),window.zaismaWatch.resize(v),window.zaismaWatch.fontsIn(v));function L(){var h=u();if(!(s||!t.matches(":popover-open")||!h)){var k=i.anchorRect?i.anchorRect(h):h.getBoundingClientRect(),y=document.documentElement.clientWidth,E=window.innerHeight,M=window.zaismaPageRoom(h),A=k.bottom<0||k.top>E,_=A?k.top+k.height/2-E/2+M.top:M.top,$=A?_+M.bottom-M.top:M.bottom,rt=window.zaismaIsOnPage(h,t);if(!h.isConnected||!rt&&(k.bottom<0||k.top>E||k.right<0||k.left>y)){F(!1);return}i.isAnchorWidth&&(t.style.width=k.width+"px",t.scrollWidth>t.clientWidth&&(t.style.width=t.scrollWidth+"px"));var D=i.gapPx||m,B=i.edgePx||g,Q,nt;if(t.style.setProperty("--floating-room",Math.max(0,$-_-2*B)+"px"),a)nt=k.top+k.height/2-i.lineOf(),Q=k.left;else{var ot=function(){return window.zaismaPlace(k,{width:t.offsetWidth,height:t.offsetHeight},{roomRect:{left:M.left,top:_,right:M.right,bottom:$},gapPx:D,edgePx:B,isAlwaysBelow:typeof i.isAlwaysBelow=="function"?i.isAlwaysBelow(h):i.isAlwaysBelow})},V=ot();if(t.querySelector(".scrolls")){var Y=Math.max(0,V.isAbove?k.top-_-D-B:$-k.bottom-D-B);t.style.setProperty("--floating-room",Y+"px");var it=i.scrollBox&&i.scrollBox(),ct=it?it.scrollHeight-it.clientHeight:0;ct>0&&ct<12&&t.style.setProperty("--floating-room",Math.ceil(Y+ct)+"px"),V=ot()}nt=V.topPx,Q=V.leftPx,t.classList.toggle("is-above",V.isAbove),t.classList.toggle("from-start",!V.isAtEnd)}var ut=t.offsetWidth,lt=t.offsetHeight;nt=Math.max(_+B,Math.min($-lt-B,nt)),Q=Math.max(M.left+B,Math.min(M.right-ut-B,Q)),t.classList.toggle("is-on-page",rt),t.style.top=Math.round(nt+(rt?window.scrollY:0))+"px",t.style.left=Math.round(Q+(rt?window.scrollX:0))+"px",window.zaismaFit&&t.querySelectorAll(".scrolls").forEach(window.zaismaFit),i.onPlaced&&i.onPlaced(),window.zaismaCast(t)}}function C(){if(!s){if(!t.matches(":popover-open")){var h=i.home||u()||document.body,k=h.closest("[data-theme-choice]");k&&k!==document.documentElement?t.setAttribute("data-theme-choice",k.getAttribute("data-theme-choice")):t.removeAttribute("data-theme-choice"),t.classList.toggle("smoke",!!h.closest(".smoke")),t.style.setProperty("--glass-hue",getComputedStyle(h).getPropertyValue("--glass-hue")),x&&(window.zaismaCast(t),clearTimeout(t.leaveTimer),[t,t.floatCast].forEach(function(E){E.classList.remove("is-leaving"),E.classList.add("is-arriving")})),t.showPopover(),x&&(function E(M,A){requestAnimationFrame(function(_){var $=getComputedStyle(t).getPropertyValue("--glass-clip").trim()&&A&&_-A<25;if(!$&&M<30)return E(M+1,_);t.classList.remove("is-arriving")})})(0,0)}var y=u();o=y?y.getBoundingClientRect():null,i.onShown&&i.onShown(),L(),i.onToggle&&i.onToggle(!0)}}var x=!(window.CSS&&CSS.supports("overlay","auto"))&&!matchMedia("(prefers-reduced-motion: reduce)").matches,T=(parseFloat(getComputedStyle(document.documentElement).getPropertyValue("--motion-arrive"))||.3)*1e3;function F(h){if(!(s||!t.matches(":popover-open")||t.classList.contains("is-leaving"))){x?(t.classList.add("is-leaving"),t.floatCast&&t.floatCast.classList.add("is-leaving"),t.leaveTimer=setTimeout(function(){t.classList.remove("is-leaving"),t.hidePopover(),t.floatCast&&t.floatCast.classList.remove("is-leaving")},T)):t.hidePopover(),i.onToggle&&i.onToggle(!1);var k=i.focusOnClose||u();h&&k&&k.focus()}}return s||(document.addEventListener("pointerdown",function(h){var k=u();t.matches(":popover-open")&&!t.contains(h.target)&&!(k&&k.contains(h.target))&&!(i.isInside&&i.isInside(h.target))&&F(!1)}),t.addEventListener("keydown",function(h){h.key==="Escape"&&t.matches(":popover-open")&&(h.preventDefault(),F(!0))}),window.zaismaWatch.resize(L),document.addEventListener("scroll",function(h){var k=u();if(!(!t.matches(":popover-open")||!o||!k||h.target.nodeType===1&&t.contains(h.target))){var y=k.getBoundingClientRect();(Math.abs(y.top-o.top)>d||Math.abs(y.left-o.left)>d)&&F(!1)}},{capture:!0,passive:!0}),window.zaismaWatch.scroll(L),window.zaismaWatch.fontsIn(L)),t.floating={open:C,close:F,isOpen:P,place:L}}})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W.wheels||(W.wheels=!0,(function(){var l=window.matchMedia("(prefers-reduced-motion: reduce)").matches,m=36,g=864e5,d=3e5,t=["January","February","March","April","May","June","July","August","September","October","November","December"],i=window.matchMedia("(pointer: coarse)").matches?"Swipe each wheel to pick.":"Scroll or type to pick each one.";function s(v){return String(v).padStart(2,"0")}function a(v){return new Date(v.getFullYear(),v.getMonth(),v.getDate())}function o(v,L){for(var C=new Date().getFullYear(),x=[],T=C;T>C-100;T--)x.push(String(T));function F(E,M){return E?new Date(M||2e3,E,0).getDate():31}var h={month:0,day:0,year:0},k=/^(\\d{4})-(\\d{2})-(\\d{2})$/.exec(L.value);k&&(h.month=Number(k[2]),h.day=Number(k[3]),h.year=Math.max(0,x.indexOf(k[1])+1));function y(){return!!(h.month&&h.day&&h.year)}return{parts:["month","day","year"],at:h,hasBlank:!0,rows:function(E){if(E==="month")return["Month"].concat(t);if(E==="year")return["Year"].concat(x);for(var M=["Day"],A=1;A<=F(h.month,h.year?Number(x[h.year-1]):0);A++)M.push(String(A));return M},set:function(E,M){return h[E]=M,E==="day"?[]:["day"]},isComplete:y,typed:function(E,M,A){if(E!=="year"||!/^\\d{2}$/.test(M))return-1;for(var _=1;_<A.length;_++)if(A[_].slice(2)===M)return _;return-1},firstPart:function(){return y()||!h.month?"month":h.day?"year":"day"},words:function(){if(!y())return{shown:null,read:i,sent:""};var E=t[h.month-1],M=x[h.year-1];return{shown:E.slice(0,3)+" "+h.day+", "+M,read:E+" "+h.day+", "+M,sent:M+"-"+s(h.month)+"-"+s(h.day)}}}}function u(v,L,C){for(var x=[],T=[],F=["AM","PM"],h=1;h<=12;h++)x.push(String(h));for(var k=0;k<60;k+=5)T.push(s(k));var y=v.hasAttribute("data-minimum-at")?new Date(v.getAttribute("data-minimum-at")):new Date;isNaN(y)&&(y=new Date),y=new Date(Math.ceil(y.getTime()/d)*d);for(var E=a(y),M=[],A=0;A<366;A++)M.push(new Date(E.getFullYear(),E.getMonth(),E.getDate()+A));var _=a(new Date).getTime(),$=new Date().getFullYear(),rt=new Intl.DateTimeFormat("en-US",{weekday:"short",month:"short",day:"numeric"}),D=new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",year:"numeric"});function B(I){var b=Math.round((I.getTime()-_)/g);return b===0?"Today":b===1?"Tomorrow":(I.getFullYear()===$?rt:D).format(I)}var Q=M.map(B);function nt(I,b){try{var H=new Intl.DateTimeFormat("en-US",{timeZoneName:b}).formatToParts(I).find(function(X){return X.type==="timeZoneName"});return H?H.value:""}catch{return""}}function ot(I){var b=-I.getTimezoneOffset(),H=b<0?"-":"+",X=Math.abs(b);return I.getFullYear()+"-"+s(I.getMonth()+1)+"-"+s(I.getDate())+"T"+s(I.getHours())+":"+s(I.getMinutes())+H+s(Math.floor(X/60))+":"+s(X%60)}var V={day:0,hour:0,minute:0,half:0},Y=!1;function it(I){var b=M[I.day];return new Date(b.getFullYear(),b.getMonth(),b.getDate(),(I.hour+1)%12+I.half*12,I.minute*5)}function ct(I){var b=Math.max(0,Math.min(M.length-1,Math.round((a(I).getTime()-E.getTime())/g)));return{day:b,hour:(I.getHours()%12||12)-1,minute:Math.floor(I.getMinutes()/5),half:I.getHours()<12?0:1}}function ut(I){Object.keys(I).forEach(function(b){V[b]=I[b]})}var lt=L.value?new Date(L.value):null,gt=lt&&!isNaN(lt)&&C.classList.contains("is-marked")?lt:null;return lt&&!isNaN(lt)&&(ut(ct(lt<y?y:lt)),Y=!0),{parts:["day","hour","minute","half"],at:V,hasBlank:!1,rows:function(I){return I==="day"?Q:I==="hour"?x:I==="minute"?T:F},set:function(I,b){return V[I]=b,Y=!0,gt=null,it(V)<y?(ut(ct(y)),"all"):[]},isComplete:function(){return Y},opening:function(){if(Y)return!1;var I=new Date;return I.setMinutes(60,0,0),ut(ct(I<y?y:I)),Y=!0,!0},firstPart:function(){return"day"},words:function(){var I=gt||it(V);if(!Y)return{shown:null,read:"",sent:""};var b=I.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit"}),H=a(I),X=Math.round((H.getTime()-_)/g),et=X===0?"Today":X===1?"Tomorrow":H.toLocaleDateString("en-US",H.getFullYear()===$?{month:"short",day:"numeric"}:{month:"short",day:"numeric",year:"numeric"}),dt=nt(I,"short"),tt=nt(I,"long");return{shown:et+", "+b+(dt?" "+dt:""),read:I.toLocaleDateString("en-US",{weekday:"long",month:"long",day:"numeric",year:"numeric"})+" at "+b+(tt?", "+tt:""),sent:ot(I)}}}}function P(v){var L=[],C={},x={};return Array.prototype.forEach.call(v.querySelectorAll(".wheel[data-part]"),function(T){var F=T.getAttribute("data-part");L.push(F);try{C[F]=JSON.parse(T.getAttribute("data-rows"))||[]}catch{C[F]=[]}x[F]=Math.max(0,Number(T.getAttribute("data-picked"))||0)}),{parts:L,at:x,hasBlank:!1,rows:function(T){return C[T].map(function(F){return F[0]})},set:function(T,F){return x[T]=F,[]},isComplete:function(){return!0},firstPart:function(){return L[0]},words:function(){var T=L.map(function(h){return(C[h][x[h]]||[""])[0]}).join(" "),F={};return L.forEach(function(h){F[h]=(C[h][x[h]]||["",""])[1]}),{shown:T,read:T,sent:F}}}}window.zaismaWatch.each("[data-wheels]",function(v){var L=v.getAttribute("data-wheels"),C=v.id,x=v.querySelector(".wheel-button"),T=v.querySelector(".wheel-pick"),F=v.querySelector(".wheel-value"),h=T.classList.contains("in-place"),k=v.querySelector(".field-error"),y=v.querySelector(".field-hint"),E=v.querySelector(".wheel-read"),M=v.querySelector('input[type="hidden"]:not([data-part])'),A=L==="birthday"?o(v,M):L==="date-time"?u(v,M,x):P(v),_=F.textContent,$={};A.parts.forEach(function(b){$[b]={el:v.querySelector('.wheel[data-part="'+b+'"]'),count:0}});var rt=T.querySelector(".wheels"),D=window.zaismaFloat(T,{anchor:x,home:v,lineOf:function(){return rt.offsetTop+1.5*m},onToggle:function(b){x.setAttribute("aria-expanded",String(b))}});function B(){return D.isOpen()}function Q(b){var H=$[b],X=A.at[b];Array.prototype.forEach.call(H.el.children,function(et,dt){et.setAttribute("aria-selected",String(dt===X))}),H.el.setAttribute("aria-activedescendant",C+"-"+b+"-"+X)}function nt(b){var H=$[b],X=A.rows(b),et=document.createDocumentFragment();H.count=X.length,H.el.textContent="",X.forEach(function(dt,tt){var r=document.createElement("div");r.className="flush-row compact quiet",r.setAttribute("role","option"),r.id=C+"-"+b+"-"+tt,r.textContent=dt,r.setAttribute("data-label",dt),A.hasBlank&&tt===0&&r.classList.add("blank"),et.appendChild(r)}),H.el.appendChild(et),H.isWired||(H.isWired=!0,H.el.addEventListener("click",function(dt){var tt=dt.target.closest('[role="option"]');tt&&tt.parentElement===H.el&&Y(b,Array.prototype.indexOf.call(H.el.children,tt),!0)})),A.at[b]>H.count-1&&(A.at[b]=H.count-1),Q(b)}function ot(b){var H=$[b].el.firstElementChild;return H&&H.offsetHeight||m}function V(b){A.parts.forEach(function(H){$[H].el.scrollTo({top:A.at[H]*ot(H),behavior:b&&!l?"smooth":"auto"})})}function Y(b,H,X){H=Math.max(0,Math.min($[b].count-1,H)),$[b].el.scrollTo({top:H*ot(b),behavior:X&&!l?"smooth":"auto"}),ct(b,H)}var it=A.isComplete();function ct(b,H){if(!(A.at[b]===H&&it)){var X=A.set(b,H);it=!0,x.classList.contains("is-marked")&&A.isComplete()&&(x.classList.remove("is-marked"),k.hidden=!0,y&&(y.hidden=!1)),X==="all"?(A.parts.forEach(Q),V(!0)):(Q(b),X.forEach(function(et){nt(et),$[et].el.scrollTop=A.at[et]*ot(et)})),ut()}}function ut(){var b=A.words();E.textContent=b.read,F.textContent=b.shown===null?_:b.shown,x.classList.toggle("set",b.shown!==null),M&&(M.value=typeof b.sent=="string"?b.sent:""),typeof b.sent=="object"&&Object.keys(b.sent).forEach(function(H){var X=v.querySelector('input[type="hidden"][data-part="'+H+'"]');X&&(X.value=b.sent[H])})}A.parts.forEach(function(b){var H=$[b],X=null,et="",dt=0;nt(b),H.el.addEventListener("scroll",function(){clearTimeout(X),X=setTimeout(function(){B()&&ct(b,Math.round(H.el.scrollTop/ot(b)))},110)},{passive:!0}),H.el.addEventListener("keydown",function(tt){var r=A.at[b],c=tt.key,S={ArrowDown:1,ArrowUp:-1,PageDown:5,PageUp:-5}[c];if(S){Y(b,r+S,!0),tt.preventDefault();return}if(c==="Home"){Y(b,A.hasBlank?1:0,!0),tt.preventDefault();return}if(c==="End"){Y(b,H.count-1,!0),tt.preventDefault();return}if(c==="Enter"&&A.isComplete()){gt(!0),tt.preventDefault();return}if(!(c.length!==1||tt.metaKey||tt.ctrlKey)){var z=Date.now();et=z-dt>900?c.toLowerCase():et+c.toLowerCase(),dt=z;for(var O=A.rows(b),R=-1,U=A.hasBlank?1:0;U<O.length&&R<0;U++)O[U].toLowerCase().indexOf(et)===0&&(R=U);R<0&&A.typed&&(R=A.typed(b,et,O)),R>=0&&(Y(b,R,!0),tt.preventDefault())}})});function lt(b){A.opening&&A.opening()&&(it=!0,A.parts.forEach(Q),ut()),D.open(),V(!1),!b&&$[A.firstPart()].el.focus({preventScroll:!0})}function gt(b){D.close(b)}x.addEventListener("click",function(){B()?gt(!1):lt()}),h&&(A.opening&&!A.isComplete()?lt(!0):requestAnimationFrame(function(){V(!1)})),ut();var I=v.closest("form");I&&v.hasAttribute("data-required")&&I.addEventListener("submit",function(b){A.isComplete()||(b.preventDefault(),x.classList.add("is-marked"),k.hidden=!1,y&&(y.hidden=!0),lt())})})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W.charts||(W.charts=!0,(function(){window.zaismaWatch.each("[data-chart-scroll]",function(d){d.scrollLeft=d.scrollWidth});function l(d,t,i){t.forEach(function(P,v){P.classList.toggle("is-focused",v===i)});var s=d.querySelector("[data-chart-scroll]"),a=t[i];if(!(!s||!a)){var o=s.getBoundingClientRect(),u=a.getBoundingClientRect();u.left<o.left?s.scrollLeft-=o.left-u.left:u.right>o.right&&(s.scrollLeft+=u.right-o.right),d.matches(":focus-visible")&&requestAnimationFrame(function(){g(d,a)})}}function m(d){return Array.prototype.slice.call(d.querySelectorAll(".chart-hit"))}function g(d,t){var i=d.querySelector(":scope > .chart-tip");if(i){if(d.classList.toggle("shows-tip",!!t),!t){i.classList.remove("is-shown");return}i.querySelector("b").textContent=t.getAttribute("data-tip-amount"),i.querySelector("span").textContent=t.getAttribute("data-tip-label");var s=d.getBoundingClientRect(),a=t.getBoundingClientRect(),o=getComputedStyle(t),u=!!t.closest(".is-bars");i.style.setProperty("--tip-left",a.left-s.left+a.width*parseFloat(o.getPropertyValue("--point-left"))/100+"px"),i.style.setProperty("--tip-top",a.top-s.top+a.height*parseFloat(o.getPropertyValue("--point-top"))/100+"px"),i.classList.toggle("is-end",t.classList.contains("is-end")),i.classList.toggle("is-middle",u&&!t.classList.contains("is-end")&&!t.classList.contains("is-start")),i.classList.toggle("is-high",t.classList.contains("is-high")),i.classList.add("is-shown")}}document.addEventListener("pointerover",function(d){var t=d.target instanceof Element?d.target.closest(".chart-hit"):null;t&&g(t.closest(".chart"),t)}),document.addEventListener("pointerout",function(d){var t=d.target instanceof Element?d.target.closest(".chart-hit"):null;if(t&&!(d.relatedTarget instanceof Element&&d.relatedTarget.closest(".chart-hit"))){var i=t.closest(".chart"),s=i.querySelector(".chart-hit.is-pointed")||(i.matches(":focus-visible")?i.querySelector(".chart-hit.is-focused"):null);g(i,s)}}),document.querySelectorAll("[data-chart-scroll]").forEach(function(d){d.addEventListener("scroll",function(){var t=d.closest(".chart");g(t,t.querySelector(".chart-hit.is-pointed"))},{passive:!0})}),document.addEventListener("focusout",function(d){var t=d.target instanceof Element&&d.target.matches("[data-chart-points]")?d.target:null;t&&g(t,t.querySelector(".chart-hit.is-pointed"))}),document.querySelectorAll(".chart-hit.is-pointed").forEach(function(d){g(d.closest(".chart"),d)}),document.addEventListener("focusin",function(d){var t=d.target instanceof Element&&d.target.matches("[data-chart-points]")?d.target:null;if(t){var i=m(t);i.length&&!t.querySelector(".chart-hit.is-focused")&&l(t,i,i.length-1)}}),document.addEventListener("keydown",function(d){var t=d.target instanceof Element&&d.target.matches("[data-chart-points]")?d.target:null;if(t){var i=m(t),s=i.indexOf(t.querySelector(".chart-hit.is-focused")),a=s;if(d.key==="ArrowRight"||d.key==="ArrowUp")a=Math.min(i.length-1,s+1);else if(d.key==="ArrowLeft"||d.key==="ArrowDown")a=Math.max(0,s-1);else if(d.key==="Home")a=0;else if(d.key==="End")a=i.length-1;else return;d.preventDefault(),l(t,i,a)}})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W["long-fields"]||(W["long-fields"]=!0,(function(){var l=12;function m(g){var d=getComputedStyle(g),t=parseFloat(d.lineHeight)||24,i=parseFloat(d.paddingTop)+parseFloat(d.paddingBottom);g.style.height="auto",g.classList.remove("is-scrolling");var s=t*(Number(g.getAttribute("rows"))||2)+i,a=t*l+i;g.classList.toggle("is-scrolling",g.scrollHeight>a+1),g.style.height=Math.max(s,Math.min(g.scrollHeight,a))+"px";var o=Number(g.getAttribute("maxlength")),u=document.getElementById(g.id+"-count");!o||!u||(u.hidden=g.value.length<o*.8,u.textContent=g.value.length.toLocaleString("en-US")+" of "+o.toLocaleString("en-US"))}window.zaismaWatch.each("textarea[data-long-field]",m),window.zaismaWatch.whenRead(function(){document.querySelectorAll("textarea[data-long-field]").forEach(m)}),document.addEventListener("input",function(g){g.target.matches&&g.target.matches("textarea[data-long-field]")&&m(g.target)}),window.zaismaWatch.fontsIn(function(){document.querySelectorAll("textarea[data-long-field]").forEach(m)})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W.sliders||(W.sliders=!0,(function(){function l(m){var g=m.closest(".slider"),d=Number(m.min),t=Number(m.max),i=g.querySelector("output"),s=i.getAttribute("data-unit");g.style.setProperty("--fill",((Number(m.value)-d)/Math.max(1e-9,t-d)).toFixed(4));var a=g.querySelector(".slider-slab");a&&a.redrawCut&&a.redrawCut(),i.textContent=Number(m.value).toLocaleString("en-US")+(s==="%"?"%":" "+s)}document.addEventListener("input",function(m){m.target.matches&&m.target.matches("input[data-slider]")&&l(m.target)}),window.addEventListener("pageshow",function(){document.querySelectorAll("input[data-slider]").forEach(l)})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W["color-fields"]||(W["color-fields"]=!0,(function(){function l(s){return"#"+s.map(function(a){return a.toString(16).padStart(2,"0")}).join("").toUpperCase()}function m(s,a,o){function u(P){var v=(P+s/60)%6;return Math.round((o-o*a*Math.max(0,Math.min(v,4-v,1)))*255)}return[u(5),u(3),u(1)]}function g(s){var a=parseInt(s.slice(1),16),o=(a>>16)/255,u=(a>>8&255)/255,P=(a&255)/255,v=Math.max(o,u,P),L=v-Math.min(o,u,P),C=0;return L&&(C=v===o?(u-P)/L%6:v===u?(P-o)/L+2:(o-u)/L+4,C*=60,C<0&&(C+=360)),[C,v?L/v:0,v]}function d(s){var a=String(s||"").replace(/[^0-9a-f]/gi,"");return a.length===3&&(a=a.replace(/./g,"$&$&")),a.length===6?"#"+a.toUpperCase():null}function t(s){var a=/^\\s*(#[0-9a-f]{6})\\s*$/i.exec(s||"");return a?a[1].toUpperCase():null}var i=10;window.zaismaWatch.each("[data-color-field]",function(s){var a=s.querySelector(".color-button"),o=s.querySelector(".color-pick"),u=s.querySelector(".color-square"),P=s.querySelector(".color-knob"),v=s.querySelector(".color-side .cut-field input"),L=s.querySelector(".color-side .slider-input"),C=s.querySelector(':scope > input[type="hidden"]'),x=a.querySelector(".color-value"),T=a.querySelector(".color-chip"),F=s.querySelector(".color-none button"),h=g(t(C.value)||s.getAttribute("data-color-hex")),k=!!F&&!t(C.value),y=!1,E=window.zaismaFloat(o,{anchor:a,home:s,isAnchorWidth:o.classList.contains("in-place"),onToggle:function(D){a.setAttribute("aria-expanded",String(D)),D&&M()}});function M(D){var B=l(m(h[0],h[1],h[2])),Q=k?"var(--clear-swatch)":B;[s,o].forEach(function(it){it.style.setProperty("--color-picked",Q),it.style.setProperty("--color-full",l(m(h[0],h[1],1))),it.style.setProperty("--color-brightness",String(h[2]))});var nt=u.clientWidth-2*i,ot=u.clientHeight-2*i,V=$(i+h[0]/360*nt,i+(1-h[1])*ot);P.style.left=V[0]+"px",P.style.top=V[1]+"px",u.setAttribute("aria-valuetext",B),T.style.setProperty("--swatch",Q),x.textContent=k?"None":B,C.value=k?"":B,D||(v.value=B);var Y=Math.round(h[2]*100);Number(L.value)!==Y&&(L.value=String(Y),y=!0,L.dispatchEvent(new Event("input",{bubbles:!0})),y=!1)}function A(){s.dispatchEvent(new CustomEvent("zaisma:color",{bubbles:!0,detail:{colorValue:C.value}}))}function _(D){return Math.max(0,Math.min(1,D))}function $(D,B){var Q=u.cutCorners||[0,0,0,0],nt=(P.firstElementChild.cutCorners||[5])[0],ot=[u.clientWidth,u.clientHeight];return[[1,1],[-1,1],[-1,-1],[1,-1]].forEach(function(V,Y){var it=V[0]>0?D-i:ot[0]-D-i,ct=V[1]>0?B-i:ot[1]-B-i,ut=Q[Y]-nt-(it+ct);Q[Y]>nt&&ut>0&&(D+=V[0]*ut/2,B+=V[1]*ut/2)}),[D,B]}function rt(D){var B=u.getBoundingClientRect();h[0]=_((D.clientX-B.left-i)/(B.width-2*i))*359.99,h[1]=1-_((D.clientY-B.top-i)/(B.height-2*i)),k=!1,M(),A()}u.addEventListener("pointerdown",function(D){u.setPointerCapture(D.pointerId),u.classList.add("is-held"),rt(D),u.focus({preventScroll:!0}),D.preventDefault()}),u.addEventListener("pointermove",function(D){u.hasPointerCapture(D.pointerId)&&rt(D)}),u.addEventListener("pointerup",function(){u.classList.remove("is-held")}),u.addEventListener("pointercancel",function(){u.classList.remove("is-held")}),u.addEventListener("keydown",function(D){var B=D.shiftKey?30:5,Q=D.shiftKey?.2:.05;if(D.key==="ArrowLeft")h[0]=Math.max(0,h[0]-B);else if(D.key==="ArrowRight")h[0]=Math.min(359.99,h[0]+B);else if(D.key==="ArrowUp")h[1]=Math.min(1,h[1]+Q);else if(D.key==="ArrowDown")h[1]=Math.max(0,h[1]-Q);else return;D.preventDefault(),k=!1,M(),A()}),L.addEventListener("input",function(){y||(h[2]=Number(L.value)/100,k=!1,M(),A())}),v.addEventListener("input",function(){var D=d(v.value);D&&(h=g(D),k=!1,M(!0),A())}),v.addEventListener("blur",function(){M()}),F&&F.addEventListener("click",function(){k=!0,M(),A()}),a.addEventListener("click",function(){E.isOpen()?E.close(!1):E.open()}),o.classList.contains("in-place")&&E.open(),M()})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W["city-pane"]||(W["city-pane"]=!0,(function(){var l=0;function m(g){var d=document.querySelector("[data-city-pane]"),t=document.querySelector(".city-stage");if(!(!d||!t||t.classList.contains("is-framed")||window.innerWidth===l&&!g)){if(l=window.innerWidth,window.innerWidth>760||window.matchMedia("(orientation: landscape) and (max-height: 500px) and (max-width: 64em)").matches){d.style.marginTop="";return}var i=Array.prototype.find.call(d.querySelectorAll("h1, h2"),function(u){return u.getClientRects().length>0}),s=d.parentElement.querySelector("header.top");d.style.marginTop="0px";var a=(i?i.getBoundingClientRect().bottom:d.getBoundingClientRect().top+120)-d.getBoundingClientRect().top+24,o=s?s.offsetTop+s.offsetHeight+12:12;d.style.marginTop=Math.round(Math.max(o,window.innerHeight-a))+"px"}}window.zaismaPlaceCityPane=m,window.zaismaWatch.each("[data-city-pane]",function(g){m(!0),window.zaismaWatch.size(g,function(){m(!0)})}),window.zaismaWatch.whenRead(function(){m(!0)}),window.addEventListener("resize",function(){m()}),window.zaismaWatch.fontsIn(function(){m(!0)})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W["account-link"]||(W["account-link"]=!0,(function(){/(^|; )(__Host-)?zaisma_in=1/.test(document.cookie)&&window.zaismaWatch.each("header.top[data-account-from-cookie] .end > a:is(.run-wrap,.cut-btn)",function(l){l.href="/account";var m=l.querySelector(".face > span:not([class])");m&&(m.textContent="Account")})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W["hidden-amounts"]||(W["hidden-amounts"]=!0,(function(){var l="zaisma.payments_amounts_hidden",m=!1;try{m=localStorage.getItem(l)==="yes"}catch{}var g="#payments .number-amount, [data-amount]",d="[data-amounts-toggle]";function t(a){a.hasAttribute("data-amount")||a.setAttribute("data-amount",a.textContent),a.textContent=m?"\\u2022\\u2022\\u2022":a.getAttribute("data-amount")}function i(a){a.setAttribute("aria-pressed",String(m));var o=a.querySelector("span:not([class])");o&&(o.textContent=m?"Show amounts":"Hide amounts")}function s(){document.querySelectorAll(g).forEach(t),document.querySelectorAll(d).forEach(i)}window.zaismaWatch.each(g,t),window.zaismaWatch.each(d,i),document.addEventListener("click",function(a){var o=a.target.closest&&a.target.closest("[data-amounts-toggle]");if(o){m=!m;try{localStorage.setItem(l,m?"yes":"no")}catch{}s()}})})())})(),(function(){function W(l){return!!l&&!l.matches('[aria-current="page"], [aria-pressed="true"], :disabled, [aria-disabled="true"], :has(> input:checked), :has(> input:disabled)')}window.zaismaWatch.each("[data-edge-light]",function(l){var m=l.querySelector(":scope > .edge-light");if(!m)return;var g=l.getAttribute("data-edge-light"),d=g==="bottom"||g==="top",t=null,i=null,s=250;function a(x,T){var F=l.getBoundingClientRect(),h=x.getBoundingClientRect();T||(m.style.transition="none"),m.style.setProperty("--light-at",(d?h.left+h.width/2-F.left:h.top+h.height/2-F.top)+"px"),m.style.setProperty("--light-span",(d?h.width:h.height)+"px"),T||(m.offsetWidth,m.style.transition="")}var o=null;function u(){o||!window.ResizeObserver||(o=new ResizeObserver(function(){t&&(t.getClientRects().length?a(t,!1):v())}),o.observe(l),l.querySelectorAll("[data-lights]").forEach(function(x){o.observe(x)}))}function P(x){clearTimeout(i),i=null,a(x,l.classList.contains("is-lit")),t=x,l.classList.add("is-awake","is-lit"),u()}function v(){clearTimeout(i),i=null,t=null,l.classList.remove("is-lit")}function L(){!i&&t&&(i=setTimeout(v,s))}l.addEventListener("pointerover",function(x){if(!(x.pointerType&&x.pointerType!=="mouse")){l.classList.add("is-awake");var T=x.target.closest("[data-lights]");T&&l.contains(T)&&W(T)?P(T):L()}}),l.addEventListener("pointerleave",function(){v(),l.classList.remove("is-awake")}),l.addEventListener("focusin",function(x){var T=x.target.closest("[data-lights]");T&&l.contains(T)&&W(T)&&T.matches(":focus-visible")&&(l.classList.add("is-awake"),P(T))}),l.addEventListener("focusout",function(x){l.contains(x.relatedTarget)||(v(),l.classList.remove("is-awake"))}),l.addEventListener("click",function(){setTimeout(function(){t&&!W(t)&&v()},0)}),l.addEventListener("scroll",function(){t&&a(t,!1)},!0);var C=l.matches("[data-lights].is-pointed")?l:l.querySelector("[data-lights].is-pointed");C&&P(C)})})(),(function(){var W=getComputedStyle(document.documentElement);function l(t,i){return parseFloat(W.getPropertyValue(t))||i}function m(t){return document.querySelector('[aria-controls="'+t.id+'"][aria-expanded]')}function g(t){return Array.prototype.slice.call(t.querySelectorAll('[role="menuitem"]')).filter(function(i){return!i.closest("[hidden]")})}var d=new WeakMap;window.zaismaWatch.each('.dropdown[role="menu"]',function(t){var i=window.zaismaFloat(t,{anchor:function(){return d.get(t)||m(t)},anchorRect:function(s){var a=s.getBoundingClientRect(),o=s.closest(".top");if(!o)return a;var u=o.getBoundingClientRect();if(u.height>u.width)return{left:u.right+l("--gap-control-stack",8),right:u.right+l("--gap-control-stack",8),top:a.bottom,bottom:a.bottom,width:0,height:0};var P=u.bottom;return{left:a.left,right:a.right,top:P-1,bottom:P,width:a.width,height:1}},isAlwaysBelow:function(s){var a=s.closest(".top");return!!a&&a.offsetHeight<=a.offsetWidth&&!(getComputedStyle(a).position==="fixed"&&a.offsetParent)},gapPx:l("--gap-control-stack",8),edgePx:l("--pad-frame",10),scrollBox:function(){return t.querySelector(".floating-body")},onToggle:function(s){var a=d.get(t)||m(t);a&&a.setAttribute("aria-expanded",String(s))},onPlaced:function(){var s=["menu-large","menu-small","menu-large","menu-small"],a=t.classList.contains("from-start");s[t.classList.contains("is-above")?a?3:2:a?0:1]="0",t.getAttribute("data-glass-corners")!==s.join(" ")&&(t.setAttribute("data-glass-corners",s.join(" ")),t.redrawGlass&&t.redrawGlass())}});t.zaismaPlace=i.place,t.addEventListener("keydown",function(s){var a=g(t),o=a.indexOf(document.activeElement);(s.key==="ArrowDown"||s.key==="ArrowUp")&&(s.preventDefault(),a[(o+(s.key==="ArrowDown"?1:a.length-1))%a.length].focus()),(s.key==="Home"||s.key==="End")&&(s.preventDefault(),a[s.key==="Home"?0:a.length-1].focus()),s.key==="Tab"&&i.close(!1)}),t.addEventListener("click",function(s){s.target.closest('[role="menuitem"]:not([aria-haspopup], [data-keeps-open])')&&i.close(!1)})}),document.addEventListener("click",function(t){var i=t.target.closest&&t.target.closest("[aria-controls][aria-expanded]"),s=i&&document.getElementById(i.getAttribute("aria-controls"));if(!(!s||!s.matches('.dropdown[role="menu"]')||!s.floating)){if(s.floating.isOpen()&&d.get(s)===i){s.floating.close(!1);return}d.set(s,i),s.floating.open();var a=g(s)[0];t.detail===0&&a?a.focus({preventScroll:!0}):(s.tabIndex=-1,s.focus({preventScroll:!0}))}})})(),(function(){var W=12;window.zaismaWatch.each("[data-select]",function(l){var m=l.querySelector(".select-button"),g=l.querySelector(".select-list"),d=g.querySelector('[role="listbox"]'),t=g.querySelector(".floating-body"),i=l.querySelector('input[type="hidden"]'),s=m.closest(".field"),a=l.querySelector(".select-value");function o(){g.style.maxHeight="";var y=t.scrollHeight-t.clientHeight;y>0&&y<W&&(g.style.maxHeight=Math.floor(g.getBoundingClientRect().height-(W-y))+"px")}if(document.fonts?document.fonts.ready.then(o):o(),window.zaismaWatch.resize(o),g.classList.contains("in-place")){var u=g.querySelector('[aria-selected="true"]')||g.querySelector('[role="option"]');u&&t.scrollHeight>t.clientHeight&&(t.scrollTop=u.offsetTop-(t.clientHeight-u.offsetHeight)/2,g.style.setProperty("--line-from-top",t.offsetTop+u.offsetTop-t.scrollTop+u.offsetHeight/2+"px"));return}var P=Array.prototype.slice.call(d.querySelectorAll('[role="option"]')),v=-1,L="",C=0;function x(){return P.findIndex(function(y){return y.getAttribute("aria-selected")==="true"})}function T(y){v=Math.max(0,Math.min(P.length-1,y)),P.forEach(function(A,_){A.classList.toggle("is-active",_===v)}),d.setAttribute("aria-activedescendant",P[v].id);var E=P[v],M=E.offsetTop;M<t.scrollTop?t.scrollTop=M:M+E.offsetHeight>t.scrollTop+t.clientHeight&&(t.scrollTop=M+E.offsetHeight-t.clientHeight)}var F=window.zaismaFloat(g,{anchor:s,home:l,focusOnClose:m,lineOf:function(){var y=P[Math.max(0,x())];return t.offsetTop+y.offsetTop-t.scrollTop+y.offsetHeight/2},onShown:function(){o();var y=P[Math.max(0,x())];t.scrollHeight>t.clientHeight&&(t.scrollTop=y.offsetTop-(t.clientHeight-y.offsetHeight)/2)},onToggle:function(y){m.setAttribute("aria-expanded",String(y)),s.classList.toggle("is-open",y),y&&(T(Math.max(0,x())),d.focus({preventScroll:!0}))}});function h(y){P.forEach(function(E,M){E.setAttribute("aria-selected",String(M===y))}),a.textContent=P[y].textContent,a.classList.remove("is-placeholder"),(i.value!==P[y].getAttribute("data-choice-value")||!k)&&(i.value=P[y].getAttribute("data-choice-value"),i.dispatchEvent(new Event("change",{bubbles:!0}))),k=!0,F.close(!0)}var k=x()>=0;m.addEventListener("click",function(){m.disabled||(F.isOpen()?F.close(!1):F.open())}),m.addEventListener("keydown",function(y){(y.key==="ArrowDown"||y.key==="ArrowUp")&&(y.preventDefault(),m.disabled||F.open())}),d.addEventListener("click",function(y){var E=y.target.closest('[role="option"]');E&&h(P.indexOf(E))}),d.addEventListener("pointermove",function(y){var E=y.target.closest('[role="option"]');E&&P.indexOf(E)!==v&&T(P.indexOf(E))}),d.addEventListener("keydown",function(y){var E=y.key,M={ArrowDown:1,ArrowUp:-1,PageDown:5,PageUp:-5}[E];if(M){T(v+M),y.preventDefault();return}if(E==="Home"||E==="End"){T(E==="Home"?0:P.length-1),y.preventDefault();return}if(E==="Enter"||E===" "){h(v),y.preventDefault();return}if(E==="Tab"){F.close(!1);return}if(!(E.length!==1||y.metaKey||y.ctrlKey)){var A=Date.now();L=A-C>900?E.toLowerCase():L+E.toLowerCase(),C=A;var _=P.findIndex(function($){return $.textContent.toLowerCase().indexOf(L)===0});_>=0&&T(_)}})})})();
|
|
11340
|
+
void main() { vec4 color = vec4(0.0); mainImage(color, gl_FragCoord.xy + zaismaViewOffset); zaismaFragColor = vec4(color.rgb, 1.0); }\`};return U(p,f+g),e.programs[n]=p,p}function st(e,n,f){var p=e.gl,w=e.drawn;return(w.widthPx<n||w.heightPx<f)&&(w.widthPx=Math.max(w.widthPx,n),w.heightPx=Math.max(w.heightPx,f),p.bindTexture(p.TEXTURE_2D,w.texture),p.texImage2D(p.TEXTURE_2D,0,p.RGBA8,w.widthPx,w.heightPx,0,p.RGBA,p.UNSIGNED_BYTE,null),p.texParameteri(p.TEXTURE_2D,p.TEXTURE_MIN_FILTER,p.LINEAR),p.texParameteri(p.TEXTURE_2D,p.TEXTURE_MAG_FILTER,p.LINEAR),p.texParameteri(p.TEXTURE_2D,p.TEXTURE_WRAP_S,p.CLAMP_TO_EDGE),p.texParameteri(p.TEXTURE_2D,p.TEXTURE_WRAP_T,p.CLAMP_TO_EDGE),p.bindFramebuffer(p.FRAMEBUFFER,w.framebuffer),p.framebufferTexture2D(p.FRAMEBUFFER,p.COLOR_ATTACHMENT0,p.TEXTURE_2D,w.texture,0)),w}function ft(e){var n=e.getAttribute("data-backdrop-shader")||m,f=R(),p=null;if(!f)return null;function w(j,ht,q){var G=R(),Z=G&&J(G,n);if(!Z||!K(Z)||!K(G.upscale))return Z&&(Z.status==="failed"||G.upscale.status==="failed")&&(q.isLost=!0),!1;if(p=p||e.getContext("2d",{alpha:!1}),!p)return!1;var N=G.gl,yt=G.board,Et=e.width,bt=e.height,Ct=q.drawnWidth,Mt=q.drawnHeight,St=Z.at;(yt.width<Et||yt.height<bt)&&(yt.width=Math.max(yt.width,Et),yt.height=Math.max(yt.height,bt));var Ut=st(G,Ct,Mt);N.bindFramebuffer(N.FRAMEBUFFER,Ut.framebuffer),N.useProgram(Z.program),N.viewport(0,0,Ct,Mt);var Jt=e.classList.contains("is-framed"),Gt=Jt?1.8:1,Vt=Ct*Gt,Xt=Mt*Gt;N.uniform3f(St.iResolution,Vt,Xt,1),N.uniform1f(St.iTime,j),N.uniform1f(St.iDark,ht.darkShare),N.uniform2f(St.zaismaViewOffset,(Vt-Ct)/2,(Xt-Mt)/2);var Yt=!1;if(Z.hasPass){var Rt=q.glass||{rects:new Float32Array(d*4),cuts:new Float32Array(d*4),count:0,scale:1,box:e.getBoundingClientRect()};N.uniform4fv(St.iGlassPanes,Rt.rects),N.uniform4fv(St.zaismaPaneCuts,Rt.cuts),N.uniform1i(St.iGlassPaneCount,Rt.count),N.uniform1f(St.zaismaPixel,Rt.scale),Yt=e.hasAttribute("data-adapts-glass")&&!q.isGlassAdapted&&Rt.count>0}N.drawArrays(N.TRIANGLES,0,3);var Dt=G.upscale;return N.bindFramebuffer(N.FRAMEBUFFER,null),N.useProgram(Dt.program),N.viewport(0,0,Et,bt),N.activeTexture(N.TEXTURE0),N.bindTexture(N.TEXTURE_2D,Ut.texture),N.uniform1i(Dt.at.zaismaDrawn,0),N.uniform2f(Dt.at.zaismaDrawnSize,Ct,Mt),N.uniform2f(Dt.at.zaismaCanvasSize,Et,bt),N.drawArrays(N.TRIANGLES,0,3),Yt&&(q.isGlassAdapted=!0,X(N,q,Et,bt)),p.drawImage(yt,0,yt.height-bt,Et,bt,0,0,Et,bt),e.classList.contains("is-drawn")||e.classList.add("is-drawn"),!0}return w.prepare=function(){var j=R();j&&J(j,n)},w}var mt=500;function at(e,n,f){return e.map(function(p,w){return p+(n[w]-p)*f})}function pt(e,n){var f=L.matches||!e.from?1:Math.min(1,(n-e.fadeStartMs)/mt);if(f>=1)return e.from=null,Object.assign({},e.target,{darkShare:e.target.isDark?1:0});var p=f*f*(3-2*f),w=e.from,j=e.target;return{base:at(w.base,j.base,p),a:at(w.a,j.a,p),b:at(w.b,j.b,p),c:at(w.c,j.c,p),isDark:p<.5?w.isDark:j.isDark,darkShare:(w.darkShare!==void 0?w.darkShare:w.isDark?1:0)+((j.isDark?1:0)-(w.darkShare!==void 0?w.darkShare:w.isDark?1:0))*p}}var Pt=1e3,Lt="zaisma:backdrop-lag-s",kt=performance.now(),wt=1,zt=performance.now(),vt=!1,xt=Date.now()/1e3;try{xt-=Number(sessionStorage.getItem(Lt))||0}catch{}function Wt(e){var n=Math.max(0,e-zt);zt=e,wt=e-kt>u?Math.max(0,wt-n/Pt):Math.min(1,wt+n/Pt),xt+=wt*n/1e3,vt=wt===0}function qt(){kt=performance.now(),clearTimeout(r),r=setTimeout(c,u),tt&&(tt=!1,S()),vt&&(vt=!1,zt=kt,C.forEach(function(e){e.isDrawn=!1}),y())}["pointerdown","pointermove","keydown","wheel","touchstart","scroll"].forEach(function(e){window.addEventListener(e,qt,{passive:!0,capture:!0})}),r=setTimeout(c,u),window.addEventListener("pagehide",function(){try{sessionStorage.setItem(Lt,String(Date.now()/1e3-xt))}catch{}});function At(e,n){if(!e.isOuter){var f=L.matches?20:xt%3600;e.colors=pt(e,n);var p=!0;if(e.drawShader){if(p=e.drawShader(f,e.colors,e),e.isLost){e.canvas.classList.remove("is-drawn");return}}else e.canvas.dispatchEvent(new CustomEvent("backdrop-frame",{detail:{timeS:f,colors:e.colors,widthPx:e.canvas.width,heightPx:e.canvas.height}}));e.isDrawn=p&&!e.from}}function Kt(e){return e.isOuter||!e.isInView||e.isLost||e.canvas.hasAttribute("data-backdrop-paused")?!1:!((e.isHeld||L.matches||vt)&&e.isDrawn)}function Ft(e){if(z=!1,!document.hidden){var n=tt?v:P;if(e-x<n&&!_){z=!0,requestAnimationFrame(Ft);return}var f=F?P:e-x;x=e,F=!1,k=h,h=!1,Wt(e),A&&nt();var p=_;_=!1,C.forEach(function(w){if(!(!w.isInView||w.canvas.hasAttribute("data-backdrop-paused"))){if(w.isOuter){w.kind==="frame"&&!w.isTold&&(w.isTold=!0,dt(w)),w.canvas.hasAttribute("data-adapts-glass")&&!w.isGlassAdapted&&et(w);return}w.drawShader&&(p||!w.glass)&&V(w),!((w.isHeld||L.matches||vt)&&w.isDrawn)&&(w.drawShader&&f<1e3&&(w.slowS=f>n*1.5?w.slowS+f/1e3:Math.max(0,w.slowS-f/2e3),w.slowS>1.5&&(w.slowS=0,w.scale>.26?(w.scale*=.75,w.size()):w.isHeld=!0)),At(w,e))}}),k=!1,(_||A||C.some(Kt))&&(z=!0,requestAnimationFrame(Ft))}}function Ht(){var e=performance.now();A=!0,C.forEach(function(n){var f=M(n.canvas);JSON.stringify(f)!==JSON.stringify(n.target)&&(n.from=n.colors,n.target=f,n.fadeStartMs=e,n.isDrawn=!1,n.isGlassAdapted=!1,n.isInView&&At(n,e))}),y()}function Ot(){var e="";C.forEach(function(n){var f=n.isOuter&&n.canvas.getAttribute("data-backdrop-color");f&&/^#[0-9a-fA-F]{6}$/.test(f)&&(e=f)}),e?document.documentElement.style.setProperty("--backdrop-edge",e):document.documentElement.style.removeProperty("--backdrop-edge")}function $t(e,n){var f={canvas:e,kind:n,isOuter:!0,isInView:!0,isTold:!1,isGlassAdapted:!1,target:M(e),from:null};e.backdropLayer=f,C.push(f),n==="frame"&&(f.onMessage=function(w){w.source===e.contentWindow&&w.data&&w.data.zaismaBackground&&(f.isTold=!1,D())},window.addEventListener("message",f.onMessage));function p(){var w=e.getAttribute("data-glass-kind");if(e.hasAttribute("data-adapts-glass")&&w){f.isGlassAdapted=!0,b(f,{isSmoked:w==="smoked",tint:e.getAttribute("data-glass-tint")||""});return}var j=e.getAttribute("data-backdrop-still")||(n==="picture"?e.currentSrc||e.src:"");if(!(!e.hasAttribute("data-adapts-glass")||!j)){var ht=new Image;ht.onload=function(){e.getAttribute("data-backdrop-still")!==j&&n!=="picture"||(f.still=ht,f.isGlassAdapted=!1,D())},ht.src=j}}p(),new MutationObserver(p).observe(e,{attributes:!0,attributeFilter:["data-backdrop-still","src","data-glass-kind"]}),window.IntersectionObserver&&new IntersectionObserver(function(w){f.isInView=w[w.length-1].isIntersecting,f.isInView&&D()}).observe(e),D(),Ot()}function It(e){if(!e.backdropLayer&&!(e.hasAttribute("data-backdrop-stand-in")&&!e.hasAttribute("data-backdrop-shader"))){var n=e.getAttribute("data-backdrop");if(n==="frame"||n==="picture")return $t(e,n);var f=e.getAttribute("data-backdrop")==="scene",p=window.matchMedia("(max-width: 760px)").matches,w=Math.min(window.devicePixelRatio||1,f?2:1.5),j=e.classList.contains("is-framed"),ht=Tt&&Tt.has(e)?Tt.get(e):Bt(e),q={canvas:e,isInView:ht,isDrawn:!1,isHeld:!1,slowS:0,target:M(e),from:null,scale:f||j?w:(p?.4:.55)*w};if(!(!f&&(q.drawShader=ft(e),!q.drawShader))){if(e.backdropLayer=q,q.size=function(){var Z=Math.max(2,Math.round(e.clientWidth*q.scale)),N=Math.max(2,Math.round(e.clientHeight*q.scale));f||(q.drawnWidth=Math.max(2,Math.round(e.clientWidth*q.scale*a)),q.drawnHeight=Math.max(2,Math.round(e.clientHeight*q.scale*a)),Z=Math.round(q.drawnWidth*o),N=Math.round(q.drawnHeight*o)),!(Z===e.width&&N===e.height)&&(e.width=Z,e.height=N,q.isDrawn=!1,q.glass=null,e.backdropLayer&&!h&&q.isInView&&At(q,performance.now()))},q.size(),window.zaismaWatch.size(e,q.size),window.IntersectionObserver&&new IntersectionObserver(function(Z){q.isInView=Z[Z.length-1].isIntersecting,q.onView&&q.onView(),q.isInView&&y()}).observe(e),q.drawShader&&!ht&&window.IntersectionObserver){var G=new IntersectionObserver(function(Z){Z[Z.length-1].isIntersecting&&(G.disconnect(),q.drawShader.prepare())},{rootMargin:"100% 0px"});G.observe(e)}else q.drawShader&&q.drawShader.prepare();new MutationObserver(y).observe(e,{attributes:!0,attributeFilter:["data-backdrop-paused"]}),C.push(q),!h&&q.isInView&&At(q,performance.now()),y()}}}function Bt(e){var n=e.getBoundingClientRect();return n.bottom>0&&n.right>0&&n.top<window.innerHeight&&n.left<window.innerWidth}var _t=document.querySelectorAll("canvas[data-backdrop], iframe[data-backdrop='frame'], img[data-backdrop='picture']"),Tt=new Map;_t.forEach(function(e){e.tagName==="CANVAS"&&Tt.set(e,Bt(e))}),_t.forEach(It),Tt.clear(),window.zaismaWatch.each("canvas[data-backdrop], iframe[data-backdrop='frame'], img[data-backdrop='picture']",It),window.zaismaBackdrop={add:function(e){A=!0,It(e),y()},remove:function(e){var n=e.backdropLayer;n&&(C=C.filter(function(f){return f!==n}),n.onMessage&&window.removeEventListener("message",n.onMessage),e.backdropLayer=null,D(),Ot())},forgetGlass:function(){document.querySelectorAll(":has(> .backdrop)").forEach(function(e){e.shownGlass=null}),document.querySelectorAll("[data-glass]").forEach(function(e){e.glassPick=null,e.classList.remove("smoke"),e.removeAttribute("data-theme-choice"),e.style.removeProperty("--glass-tint")})}},window.zaismaWatch.scroll(B),window.zaismaWatch.resize(D);function Nt(e){return e.nodeType===1&&(e.hasAttribute("data-glass")||!!e.querySelector("[data-glass]"))}window.zaismaWatch.page(function(e){A||(A=e.some(function(n){return n.type==="attributes"?n.target.hasAttribute("data-glass"):Array.prototype.some.call(n.addedNodes,Nt)||Array.prototype.some.call(n.removedNodes,Nt)}),A&&y())}),document.addEventListener("toggle",function(){A=!0,y()},!0),document.addEventListener("visibilitychange",function(){document.hidden||y()}),new MutationObserver(Ht).observe(document.documentElement,{subtree:!0,attributes:!0,attributeFilter:["data-theme-choice"]}),window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",Ht),L.addEventListener("change",Ht)})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W["shown-once-drawn"]||(W["shown-once-drawn"]=!0,(function(){var l="iframe[data-shows-once-drawn]";function m(g){window.zaismaWatch.afterSettling(function(){g.classList.add("is-shown")})}window.addEventListener("message",function(g){!g.data||!g.data.zaismaBackground||document.querySelectorAll(l).forEach(function(d){g.source===d.contentWindow&&(d.hasSaid=!0,m(d))})}),window.zaismaWatch.eachArriving(l,function(g){g.addEventListener("load",function(){setTimeout(function(){g.hasSaid||m(g)},4e3)})})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W.switches||(W.switches=!0,(function(){window.zaismaWatch.each(".tab-switch",function(l){var m=l.querySelector(".switch-slab"),g=l.querySelectorAll(":scope > a, :scope > button:not(.switch-folder)"),d=function(){return l.classList.contains("vertical")};function t(){return l.querySelector('[aria-current="page"], [aria-pressed="true"]')}var i=parseFloat(getComputedStyle(document.documentElement).getPropertyValue("--gap-control-row"))||4;function s(r){return Math.max(0,((Number(r.getAttribute("data-cut-line"))||0)-i)/2)}var a=window.matchMedia("(prefers-reduced-motion: reduce)").matches;function o(r){var c=window.devicePixelRatio||1;return Math.round(r*c)/c}function u(r,c,S,T){return function(O){for(var R=O,U=0;U<8;U++){var K=3*(1-R)*(1-R)*R*r+3*(1-R)*R*R*S+R*R*R-O,J=3*(1-R)*(1-R)*r+6*(1-R)*R*(S-r)+3*R*R*(1-S);if(Math.abs(J)<1e-6)break;R=Math.min(1,Math.max(0,R-K/J))}return 3*(1-R)*(1-R)*R*c+3*(1-R)*R*R*T+R*R*R}}var P=u(.4,0,.2,1);function v(r,c){r.slideAt=c;var S=Math.round(c.size)+"px";d()?(r.style.width=c.width?Math.round(c.width)+"px":"",r.style.height=S,r.style.transform="translate("+(c.across||0)+"px, "+c.pos+"px)"):(r.style.height="",r.style.width=S,r.style.transform="translateX("+c.pos+"px)")}function L(r,c,S){var T=r===m?k:null,O=T?T.ease:P,R=r.slideAt||c,U=T?null:performance.now(),K=(r.slideId||0)+1;r.slideId=K,r.slideTarget=c,(function J(){if(r.slideId===K){var st=U===null?0:Math.min(1,(performance.now()-U)/S),ft=O(st);if(c=r.slideTarget,T&&T.isOn&&window.scrollTo(window.scrollX,T.fromY+(T.toY-T.fromY)*ft),r.redrawCut&&r.redrawCut({isFrame:!0}),v(r,{pos:st<1?R.pos+(c.pos-R.pos)*ft:c.pos,size:c.size,across:c.across===void 0?void 0:st<1?(R.across||0)+(c.across-(R.across||0))*ft:c.across,width:c.width}),st<1){requestAnimationFrame(function(){U===null&&(U=performance.now()),J()});return}r.slideTarget=null,r.redrawCut&&r.redrawCut(),T&&T.isOn&&T.land()}})()}function C(r,c,S,T){var O=s(r),R=S?0:O,U=T?0:O,K=l.closest("[data-cut-line]"),J=K&&K.getAttribute("data-slanted")||"";if(!r.classList.contains("focus-ring")&&(S&&/start/.test(J)||T&&/end/.test(J))){var st=c.offsetTop,ft=l.offsetHeight,mt=parseFloat(getComputedStyle(document.documentElement).getPropertyValue("--control-slant"))||10,at=Math.min(Number(r.getAttribute("data-cut-line"))||0,(c.offsetWidth+R+U)/3),pt=mt/2-at/2+st*Math.sqrt(1+mt/ft*(mt/ft))-st;S&&/start/.test(J)&&(R=-pt),T&&/end/.test(J)&&(U=-pt)}return{start:R,end:U}}function x(){var r=l.closest("[data-cut-line]"),c=r&&r.getAttribute("data-slanted")||"",S=Array.prototype.filter.call(g,function(T){return!T.classList.contains("folded")&&!T.hidden});S.forEach(function(T,O){if(d()){T.style.removeProperty("--tab-shift");return}var R=O===0,U=O===S.length-1,K=C(m,T,R,U),J=Math.min(Number(m.getAttribute("data-cut-line"))||0,(T.offsetWidth+K.start+K.end)/3),st=(!R||/start/.test(c)?1:0)-(!U||/end/.test(c)?1:0);T.style.setProperty("--tab-shift",Math.round(((K.end-K.start)/2+st*J/4)*10)/10+"px")})}function z(r,c,S){var T=!S&&r.slideTarget&&r.pickedTab===c;if(r.pickedTab=c,!c){r.style.width="0px";return}var O={beside:r.getAttribute("data-cut-beside"),ends:r.getAttribute("data-cut-ends")||"",stack:r.getAttribute("data-cut-stack")},R=Array.prototype.filter.call(l.querySelectorAll(":scope > a, :scope > button"),function(At){return!At.classList.contains("folded")&&!At.hidden}),U=c===R[0],K=c===R[R.length-1];if(d()){var J={pos:c.offsetTop,size:c.offsetHeight},st=S&&!a?h(r):0,ft=getComputedStyle(l).display==="grid";if(ft&&(J.across=c.offsetLeft,J.width=c.offsetWidth),r.classList.contains("focus-ring")){var mt=U?0:c.offsetTop,at=K?l.getBoundingClientRect().height:c.offsetTop+c.offsetHeight,pt=Math.round(at-mt);J={pos:K?at-pt:mt,size:pt,across:J.across,width:J.width}}r.setAttribute("data-cut-beside",""),r.setAttribute("data-cut-stack",((U?"first ":"")+(K?"last":"")).trim()),F(r,J,st,O.stack!==null?O:null,T);return}var Pt=C(r,c,U,K),Lt=Pt.start,kt=Pt.end,wt={pos:o(c.offsetLeft-Lt),size:c.offsetWidth+Lt+kt},zt=S&&!a?h(r):0;if(r.classList.contains("focus-ring")){var vt=U?0:c.offsetLeft-Lt,xt=K?l.getBoundingClientRect().width:c.offsetLeft+c.offsetWidth+kt,Wt=Math.round(xt-vt);wt={pos:K?xt-Wt:vt,size:Wt}}r.setAttribute("data-cut-beside",((U?"":"start ")+(K?"":"end")).trim());var qt=((U?"start ":"")+(K?"end":"")).trim();qt?r.setAttribute("data-cut-ends",qt):r.removeAttribute("data-cut-ends"),F(r,wt,zt,O.beside!==null?O:null,T)}function F(r,c,S,T,O){if(O){r.slideTarget=c;return}if(S&&r.redrawCut){var R=r.slideAt;v(r,c),r.redrawCut(T?{from:T,ms:S,ease:r===m&&k?k.ease:P,isDriven:!0}:void 0),R&&v(r,R),L(r,c,S);return}r.slideId=(r.slideId||0)+1,r.slideTarget=null,v(r,c),r.redrawCut&&r.redrawCut()}function h(r){return r===m&&k?k.ms:parseFloat(getComputedStyle(r).getPropertyValue("--slide-ms"))||550}var k=null;function y(r,c,S){k&&k.stop();var T=document.documentElement,O=window.scrollY,R=parseFloat(getComputedStyle(T).scrollPaddingTop)||0,U=Math.max(0,Math.min(T.scrollHeight-window.innerHeight,O+c.getBoundingClientRect().top-R)),K=Math.abs(U-O)/window.innerHeight,J=k={isOn:!0,fromY:O,toY:U,ms:Math.min(800,400+130*Math.max(0,K-1)),ease:function(at){return at*at*at*(at*(6*at-15)+10)}},st=["wheel","touchstart","pointerdown","keydown"];function ft(at){J.isOn=!1,st.forEach(function(pt){window.removeEventListener(pt,mt)}),k===J&&(k=null),requestAnimationFrame(function(){requestAnimationFrame(function(){k||T.removeAttribute("data-page-gliding"),dispatchEvent(new CustomEvent("zaisma:page-glide-end",{detail:{hash:S,hasLanded:at}}))})})}function mt(){ft(!1)}J.stop=function(){J.isOn&&(J.isOn=!1,st.forEach(function(at){window.removeEventListener(at,mt)}))},J.land=function(){location.hash=S,ft(!0)},T.setAttribute("data-page-gliding",""),st.forEach(function(at){window.addEventListener(at,mt,{passive:!0})}),l.pickTab(r)}var E=!1;function M(){var r=l.querySelector(":scope > .is-focused"),c=l.querySelector(".focus-ring");r&&c&&(z(c,r),l.classList.add("is-focus-shown"))}function A(){if(!(E||!l.getClientRects().length)){x();var r=t(),c=l.querySelector(":scope > :focus-visible"),S=l.querySelector(".focus-ring");m.style.transition="none",z(m,r),S&&c&&z(S,c),M(),m.offsetWidth,m.style.transition="",l.classList.add("is-ready")}}var _=l.closest("body > .top")&&window.matchMedia("(orientation: landscape) and (max-height: 500px) and (max-width: 64em)");function $(){var r=_.matches,c=l.closest(".switch-well"),S=l.parentElement;l.classList.toggle("vertical",r),c&&(c.classList.toggle("vertical",r),c.classList.toggle("is-full",!r),c.setAttribute("data-edge-light",r?"left":"bottom")),S&&S.classList.toggle("across",!r)}_&&($(),_.addEventListener("change",function(){$(),A()})),A();function rt(r){var c=t(),S=l.parentElement;if(S){if(d()){var T=S.scrollHeight-S.clientHeight;if(!c||T<=1||!c.getClientRects().length)return;var O=window.zaismaScrollFadePx?window.zaismaScrollFadePx():34,R=S.getBoundingClientRect(),U=c.getBoundingClientRect(),K=S.scrollTop,J=U.top-R.top+K,st=U.bottom-R.top+K,ft=K;J-O<K?ft=J-O:st+O>K+S.clientHeight&&(ft=st+O-S.clientHeight),S.scrollTo({top:Math.max(0,Math.min(T,ft)),behavior:r?"smooth":"auto"});return}l.classList.remove("is-past-room"),!(S.scrollWidth<=S.clientWidth+1)&&(l.classList.add("is-past-room"),c&&S.scrollTo({left:c.offsetLeft+c.offsetWidth/2-S.clientWidth/2,behavior:r?"smooth":"auto"}))}}rt(!1);var D=window.navigation&&navigation.activation&&navigation.activation.from;if(D&&D.url&&m.animate&&!d()&&!window.matchMedia("(prefers-reduced-motion: reduce)").matches){var B=new URL(D.url),Q=B.pathname,nt=Q===location.pathname&&B.search===location.search,ot=Array.prototype.filter.call(g,function(r){return r.href&&new URL(r.href).pathname===Q}),V=ot.find(function(r){return new URL(r.href).search===B.search})||(ot.length===1?ot[0]:void 0),Y=t();if(V&&Y&&V!==Y&&!nt){var it=function(){var r=d()?"translateY("+V.offsetTop+"px)":"translateX("+V.offsetLeft+"px) scaleX("+(V.offsetWidth/Math.max(1,Y.offsetWidth)).toFixed(4)+")",c=d()?"translateY("+Y.offsetTop+"px)":"translateX("+Y.offsetLeft+"px) scaleX(1)";return m.animate([{transform:r,transformOrigin:"0 0"},{transform:c,transformOrigin:"0 0"}],{duration:h(m),easing:"cubic-bezier(.3, 1.2, .4, 1)"})};m.style.transition="none",z(m,V),m.offsetWidth,m.style.transition="",E=!0;var ct=function(){requestAnimationFrame(function(){E=!1,A(),E=!0;var r=function(){E=!1,A()};it().finished.then(r,r)})};window.zaismaWatch.fontsIn(ct)}}window.zaismaWatch.fontsIn(A),window.zaismaWatch.size(l,A),window.zaismaWatch.size(l,function(){d()||rt(!1)}),l.parentElement&&(window.zaismaWatch.size(l.parentElement,A),window.zaismaWatch.size(l.parentElement,function(){rt(!1)})),Array.prototype.forEach.call(l.querySelectorAll(":scope > .foldable"),function(r){window.zaismaWatch.size(r,A)}),l.pickTab=function(r){r.tagName==="BUTTON"?g.forEach(function(S){S.setAttribute("aria-pressed",String(S===r))}):g.forEach(function(S){S===r?S.setAttribute("aria-current","page"):S.removeAttribute("aria-current")}),m.pickedTab!==r&&z(m,r,!0);var c=l.closest("[data-fades-sideways]");c&&c.showWhole&&!d()?c.showWhole(r,!0):rt(!0),I()};function ut(r){return r.disabled||r.getAttribute("aria-disabled")==="true"}g.forEach(function(r){r.addEventListener("click",function(c){if(!ut(r)){if(r.href&&r.getAttribute("aria-current")==="page"&&c.button===0&&!c.metaKey&&!c.ctrlKey&&!c.shiftKey&&!c.altKey){c.preventDefault();return}if(r.href&&!c.defaultPrevented){var S=new URL(r.href,location.href),T=c.button===0&&!c.metaKey&&!c.ctrlKey&&!c.shiftKey&&!c.altKey&&(!r.target||r.target==="_self");if(S.pathname!==location.pathname||S.search!==location.search){if(!d()||a||!T)return;c.preventDefault(),X=X||t(),l.pickTab(r),H(),clearTimeout(et),et=setTimeout(function(){location.assign(r.href)},h(m));return}var O=d()&&!a&&T&&S.hash&&document.getElementById(decodeURIComponent(S.hash.slice(1)));if(O&&O.getClientRects().length){c.preventDefault(),y(r,O,S.hash);return}}l.pickTab(r)}})});var lt=Array.prototype.slice.call(l.querySelectorAll(":scope > .switch-folder"));function gt(r){for(var c=[],S=r.nextElementSibling;S&&S.classList.contains("is-in-folder");S=S.nextElementSibling)c.push(S);return c}function I(){var r=t();lt.forEach(function(c){var S=gt(c).indexOf(r)>=0;c.classList.toggle("is-held",S),S?c.removeAttribute("data-lights"):c.setAttribute("data-lights",""),S&&c.getAttribute("aria-expanded")!=="true"&&b(c,!0)})}function b(r,c){r.setAttribute("aria-expanded",String(c)),gt(r).forEach(function(S){dt(S,c)})}lt.forEach(function(r){r.addEventListener("click",function(){if(!r.classList.contains("is-held")){var c=r.getAttribute("aria-expanded")!=="true";b(r,c),c&&H(r)}})});function H(r){lt.forEach(function(c){c!==r&&!c.classList.contains("is-held")&&c.getAttribute("aria-expanded")==="true"&&b(c,!1)})}I();var X=null,et=null;window.addEventListener("pageshow",function(r){!r.persisted||!X||(clearTimeout(et),l.pickTab(X),H(),X=null)});function dt(r,c){var S=r.hidden?0:r.offsetHeight;r.getAnimations().forEach(function(R){R.cancel()}),r.hidden=!1;var T=r.offsetHeight;if(a||!r.animate){r.hidden=!c;return}r.classList.add("is-folding");var O=r.animate([{height:S+"px",minHeight:"0px",opacity:T?S/T:0},{height:(c?T:0)+"px",minHeight:"0px",opacity:c?1:0}],{duration:240,easing:"cubic-bezier(.2,.8,.2,1)"});O.onfinish=function(){r.classList.remove("is-folding"),r.hidden=!c},O.oncancel=function(){r.classList.remove("is-folding")}}var tt=l.querySelector(".focus-ring");l.addEventListener("focusin",function(r){var c=r.target;!tt||c.parentElement!==l||!c.matches(":focus-visible")||(z(tt,c),l.classList.add("is-focus-shown"))}),l.addEventListener("focusout",function(){l.classList.remove("is-focus-shown")})})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W.sidebar||(W.sidebar=!0,(function(){function l(o){return getComputedStyle(o).getPropertyValue("--sidebar-is-sheet").trim()==="1"}var m=function(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches};function g(o){return"zaisma-sidebar:"+o.getAttribute("data-sidebar-remember")}function d(o){return document.querySelectorAll('[data-sidebar-button][aria-controls="'+o.id+'"], [data-sidebar-button][aria-controls="'+o.id+'-sheet"]')}function t(o){var u=o.closest(".sidebar-layout"),P=document.getElementById(o.id+"-sheet");d(o).forEach(function(v){v.setAttribute("aria-controls",l(o)?o.id+"-sheet":o.id),v.setAttribute("aria-expanded",String(l(o)?!!(P&&P.open):!!(u&&!u.classList.contains("is-collapsed"))))})}function i(o,u,P){var v=o.closest(".sidebar-layout");if(v){if(P)try{localStorage.setItem(g(o),u?"hidden":"shown")}catch{}var L=v.querySelector(".sidebar-main"),C=P&&!m()&&L,x=C?L.getBoundingClientRect():null,z=C&&u?o.getBoundingClientRect():null;if(z&&(o.style.setProperty("--sidebar-left",z.left+"px"),o.style.setProperty("--sidebar-top",z.top+"px"),o.style.setProperty("--sidebar-width",z.width+"px"),o.style.setProperty("--sidebar-height",z.height+"px"),v.classList.add("is-folding")),v.classList.toggle("is-collapsed",u),t(o),z&&(requestAnimationFrame(function(){o.classList.add("is-leaving")}),setTimeout(function(){v.classList.remove("is-folding"),o.classList.remove("is-leaving"),["--sidebar-left","--sidebar-top","--sidebar-width","--sidebar-height"].forEach(function(h){o.style.removeProperty(h)})},350)),!!C){var F=x.left-L.getBoundingClientRect().left;Math.abs(F)<1||(L.style.transition="none",L.style.transform="translateX("+F+"px)",L.offsetWidth,L.style.transition="transform 0.45s cubic-bezier(.2,.8,.2,1)",L.style.transform="",setTimeout(function(){L.style.removeProperty("transition"),L.style.removeProperty("transform")},500))}}}window.zaismaWatch.each("nav.sidebar[data-sidebar-remember]",function(o){try{var u=localStorage.getItem(g(o));(u==="shown"||u==="hidden")&&i(o,u==="hidden",!1)}catch{}window.zaismaWatch.whenRead(function(){s(o)}),t(o)});function s(o){var u=document.getElementById(o.id+"-sheet");u&&(u.addEventListener("close",function(){t(o);var P=d(o)[0];P&&(!document.activeElement||document.activeElement===document.body||u.contains(document.activeElement))&&P.focus({preventScroll:!0})}),u.addEventListener("click",function(P){P.target.closest&&P.target.closest("a[href]")&&u.close()})),t(o)}document.addEventListener("click",function(o){var u=o.target.closest&&o.target.closest("[data-sidebar-button]");if(u){var P=u.getAttribute("aria-controls").replace(/-sheet$/,""),v=document.getElementById(P),L=document.getElementById(P+"-sheet");if(v){if(l(v)){L&&!L.open&&(L.showModal(),t(v));return}i(v,!v.closest(".sidebar-layout").classList.contains("is-collapsed"),!0)}}});var a=!1;window.addEventListener("resize",function(){a||(a=!0,requestAnimationFrame(function(){a=!1,document.querySelectorAll("nav.sidebar[data-sidebar-remember]").forEach(function(o){var u=document.getElementById(o.id+"-sheet");!l(o)&&u&&u.open&&u.close(),t(o)})}))})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W["started-low"]||(W["started-low"]=!0,(function(){function l(m){var g=m.querySelector(".run-wrap"),d=m.querySelector(":scope > .pane-in > .layout-stack")||m.querySelector(":scope > .pane-in"),t=g&&d&&Array.prototype.find.call(d.children,function(s){return s.contains(g)});if(t){var i=parseFloat(getComputedStyle(m).marginTop)||0;m.style.setProperty("--started-low-used",Math.round(t.getBoundingClientRect().bottom+window.scrollY-i)+"px")}}window.zaismaWatch.each(".glass-pane.is-started-low",function(m){l(m),window.zaismaWatch.size(m,function(){l(m)})})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W.placing||(W.placing=!0,(function(){window.zaismaIsOnPage=function(t,i){var s=function(a){for(var o=a;o&&o!==document.documentElement;o=o.parentElement){var u=getComputedStyle(o).position;if(u==="fixed"||u==="sticky")return!0}return!1};return!s(t)&&!(i.parentElement&&s(i.parentElement))},window.zaismaPageRoom=function(t){var i={left:0,top:0,right:document.documentElement.clientWidth,bottom:window.innerHeight};return document.querySelectorAll("header, nav.sidebar").forEach(function(s){if(!(t&&s.contains(t))){var a=getComputedStyle(s).position,o=s.getBoundingClientRect();a!=="fixed"&&a!=="sticky"||o.width<1||o.height<1||o.bottom<=0||o.top>=i.bottom||a==="fixed"&&s.offsetParent||(o.width>=i.right/2?i.top=Math.max(i.top,o.bottom):(o.left+o.right)/2<i.right/2?i.left=Math.max(i.left,o.right):i.right=Math.min(i.right,o.left))}}),i},window.zaismaPlace=function(t,i,s){var a=s.roomRect||{left:0,top:0,right:document.documentElement.clientWidth,bottom:window.innerHeight},o=s.gapPx,u=s.edgePx,P=(t.left+t.right)/2>(a.left+a.right)/2,v=Math.max(a.left+u,Math.min(P?t.right-i.width:t.left,a.right-u-i.width)),L=a.bottom-u-t.bottom-o,C=t.top-o-u-a.top,x=i.height<=L,z=i.height<=C,F=(t.top+t.bottom)/2>(a.top+a.bottom)/2,h=!s.isAlwaysBelow&&(x&&z?F:!x&&C>L),k=h?t.top-o-i.height:t.bottom+o;return{leftPx:v,topPx:Math.max(a.top+u,Math.min(k,a.bottom-u-i.height)),isAtEnd:P,isAbove:h}};var l=64;window.zaismaCast=function(t){var i=t.floatCast;if(i||(i=t.floatCast=document.createElement("div"),i.className="floating-cast",i.setAttribute("aria-hidden","true"),i.appendChild(document.createElement("div")).appendChild(document.createElement("span")),(t.parentElement||document.body).appendChild(i)),["smoke","is-above","placed-over","opens-at-once"].forEach(function(h){i.classList.toggle(h,t.classList.contains(h))}),!t.isConnected||!t.matches(":popover-open")){i.hidden=!0;return}var s=t.getBoundingClientRect(),a=new DOMMatrix(getComputedStyle(t).transform==="none"?void 0:getComputedStyle(t).transform),o={width:t.offsetWidth,height:t.offsetHeight};o.left=s.left+s.width/2-o.width/2-a.e,o.top=s.top+s.height/2-o.height/2-a.f;var u=t.classList.contains("is-on-page"),P=getComputedStyle(t),v=P.getPropertyValue("--glass-clip").trim()||P.clipPath,L=/^polygon\\((.*)\\)$/.exec(v),C="calc(100% + "+l+"px)",x=-l+"px";if(!L){i.hidden=!0,t.castTries=(t.castTries||0)+1,t.castTries<60&&requestAnimationFrame(function(){window.zaismaCast(t)});return}t.castTries=0;var z=L?L[1].replace(/^(nonzero|evenodd),\\s*/,""):"0px 0px, 100% 0px, 100% 100%, 0px 100%";i.firstChild.firstChild.style.clipPath=L?v:"",i.style.clipPath="polygon(evenodd, "+x+" "+x+", "+C+" "+x+", "+C+" "+C+", "+x+" "+C+", "+x+" "+x+", "+z+", "+z.split(",")[0]+", "+x+" "+x+")",i.hidden&&i.classList.contains("is-arriving")&&requestAnimationFrame(function(){i.offsetWidth,i.classList.remove("is-arriving")}),i.hidden=!1,i.classList.toggle("is-on-page",u);var F=t.getAttribute("data-theme-choice");F?i.setAttribute("data-theme-choice",F):i.removeAttribute("data-theme-choice"),i.style.left=o.left+(u?window.scrollX:0)+"px",i.style.top=o.top+(u?window.scrollY:0)+"px",i.style.width=o.width+"px",i.style.height=o.height+"px"},["toggle","transitionend"].forEach(function(t){document.addEventListener(t,function(i){i.target.classList&&i.target.classList.contains("floating-pane")&&!i.target.classList.contains("in-place")&&window.zaismaCast(i.target)},!0)});var m=6,g=8,d=4;window.zaismaFloat=function(t,i){var s=t.classList.contains("in-place"),a=t.classList.contains("placed-over"),o=null;function u(){return typeof i.anchor=="function"?i.anchor():i.anchor}s||(document.querySelectorAll("body > .floating-pane, dialog > .floating-pane").forEach(function(h){h.floatingHome&&!h.floatingHome.isConnected&&(h.floatCast&&h.floatCast.remove(),h.remove())}),t.floatingHome=i.home||u(),t.floatingHome&&t.floatingHome.closest(".smoke")&&t.classList.add("smoke"),(u()&&u().closest("dialog")||document.body).appendChild(t));function P(){return s||t.matches(":popover-open")}function v(){var h=u(),k=t.offsetParent;if(!(!h||!k)){var y=i.anchorRect?i.anchorRect(h):h.getBoundingClientRect(),E=k.getBoundingClientRect(),M=window.zaismaPlace(y,{width:t.offsetWidth,height:t.offsetHeight},{roomRect:{left:E.left,top:E.top,right:E.right,bottom:E.bottom},gapPx:i.gapPx||m,edgePx:i.edgePx||g,isAlwaysBelow:!0});t.style.left=Math.round(M.leftPx-E.left-k.clientLeft)+"px",t.style.top=Math.round(M.topPx-E.top-k.clientTop)+"px",t.classList.toggle("from-start",!M.isAtEnd),i.onPlaced&&i.onPlaced()}}s&&!a&&!i.isAnchorWidth&&(t.classList.add("is-hanging"),v(),window.zaismaWatch.resize(v),window.zaismaWatch.fontsIn(v));function L(){var h=u();if(!(s||!t.matches(":popover-open")||!h)){var k=i.anchorRect?i.anchorRect(h):h.getBoundingClientRect(),y=document.documentElement.clientWidth,E=window.innerHeight,M=window.zaismaPageRoom(h),A=k.bottom<0||k.top>E,_=A?k.top+k.height/2-E/2+M.top:M.top,$=A?_+M.bottom-M.top:M.bottom,rt=window.zaismaIsOnPage(h,t);if(!h.isConnected||!rt&&(k.bottom<0||k.top>E||k.right<0||k.left>y)){F(!1);return}i.isAnchorWidth&&(t.style.width=k.width+"px",t.scrollWidth>t.clientWidth&&(t.style.width=t.scrollWidth+"px"));var D=i.gapPx||m,B=i.edgePx||g,Q,nt;if(t.style.setProperty("--floating-room",Math.max(0,$-_-2*B)+"px"),a)nt=k.top+k.height/2-i.lineOf(),Q=k.left;else{var ot=function(){return window.zaismaPlace(k,{width:t.offsetWidth,height:t.offsetHeight},{roomRect:{left:M.left,top:_,right:M.right,bottom:$},gapPx:D,edgePx:B,isAlwaysBelow:typeof i.isAlwaysBelow=="function"?i.isAlwaysBelow(h):i.isAlwaysBelow})},V=ot();if(t.querySelector(".scrolls")){var Y=Math.max(0,V.isAbove?k.top-_-D-B:$-k.bottom-D-B);t.style.setProperty("--floating-room",Y+"px");var it=i.scrollBox&&i.scrollBox(),ct=it?it.scrollHeight-it.clientHeight:0;ct>0&&ct<12&&t.style.setProperty("--floating-room",Math.ceil(Y+ct)+"px"),V=ot()}nt=V.topPx,Q=V.leftPx,t.classList.toggle("is-above",V.isAbove),t.classList.toggle("from-start",!V.isAtEnd)}var ut=t.offsetWidth,lt=t.offsetHeight;nt=Math.max(_+B,Math.min($-lt-B,nt)),Q=Math.max(M.left+B,Math.min(M.right-ut-B,Q)),t.classList.toggle("is-on-page",rt),t.style.top=Math.round(nt+(rt?window.scrollY:0))+"px",t.style.left=Math.round(Q+(rt?window.scrollX:0))+"px",window.zaismaFit&&t.querySelectorAll(".scrolls").forEach(window.zaismaFit),i.onPlaced&&i.onPlaced(),window.zaismaCast(t)}}function C(){if(!s){if(!t.matches(":popover-open")){var h=i.home||u()||document.body,k=h.closest("[data-theme-choice]");k&&k!==document.documentElement?t.setAttribute("data-theme-choice",k.getAttribute("data-theme-choice")):t.removeAttribute("data-theme-choice"),t.classList.toggle("smoke",!!h.closest(".smoke")),t.style.setProperty("--glass-hue",getComputedStyle(h).getPropertyValue("--glass-hue")),x&&(window.zaismaCast(t),clearTimeout(t.leaveTimer),[t,t.floatCast].forEach(function(E){E.classList.remove("is-leaving"),E.classList.add("is-arriving")})),t.showPopover(),x&&(function E(M,A){requestAnimationFrame(function(_){var $=getComputedStyle(t).getPropertyValue("--glass-clip").trim()&&A&&_-A<25;if(!$&&M<30)return E(M+1,_);t.classList.remove("is-arriving")})})(0,0)}var y=u();o=y?y.getBoundingClientRect():null,i.onShown&&i.onShown(),L(),i.onToggle&&i.onToggle(!0)}}var x=!(window.CSS&&CSS.supports("overlay","auto"))&&!matchMedia("(prefers-reduced-motion: reduce)").matches,z=(parseFloat(getComputedStyle(document.documentElement).getPropertyValue("--motion-arrive"))||.3)*1e3;function F(h){if(!(s||!t.matches(":popover-open")||t.classList.contains("is-leaving"))){x?(t.classList.add("is-leaving"),t.floatCast&&t.floatCast.classList.add("is-leaving"),t.leaveTimer=setTimeout(function(){t.classList.remove("is-leaving"),t.hidePopover(),window.zaismaCast(t),t.floatCast.classList.remove("is-leaving")},z)):(t.hidePopover(),window.zaismaCast(t)),i.onToggle&&i.onToggle(!1);var k=i.focusOnClose||u();h&&k&&k.focus()}}return s||(document.addEventListener("pointerdown",function(h){var k=u();t.matches(":popover-open")&&!t.contains(h.target)&&!(k&&k.contains(h.target))&&!(i.isInside&&i.isInside(h.target))&&F(!1)}),t.addEventListener("keydown",function(h){h.key==="Escape"&&t.matches(":popover-open")&&(h.preventDefault(),F(!0))}),window.zaismaWatch.resize(L),document.addEventListener("scroll",function(h){var k=u();if(!(!t.matches(":popover-open")||!o||!k||h.target.nodeType===1&&t.contains(h.target))){var y=k.getBoundingClientRect();(Math.abs(y.top-o.top)>d||Math.abs(y.left-o.left)>d)&&F(!1)}},{capture:!0,passive:!0}),window.zaismaWatch.scroll(L),window.zaismaWatch.fontsIn(L)),t.floating={open:C,close:F,isOpen:P,place:L}}})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W.wheels||(W.wheels=!0,(function(){var l=window.matchMedia("(prefers-reduced-motion: reduce)").matches,m=36,g=864e5,d=3e5,t=["January","February","March","April","May","June","July","August","September","October","November","December"],i=window.matchMedia("(pointer: coarse)").matches?"Swipe each wheel to pick.":"Scroll or type to pick each one.";function s(v){return String(v).padStart(2,"0")}function a(v){return new Date(v.getFullYear(),v.getMonth(),v.getDate())}function o(v,L){for(var C=new Date().getFullYear(),x=[],z=C;z>C-100;z--)x.push(String(z));function F(E,M){return E?new Date(M||2e3,E,0).getDate():31}var h={month:0,day:0,year:0},k=/^(\\d{4})-(\\d{2})-(\\d{2})$/.exec(L.value);k&&(h.month=Number(k[2]),h.day=Number(k[3]),h.year=Math.max(0,x.indexOf(k[1])+1));function y(){return!!(h.month&&h.day&&h.year)}return{parts:["month","day","year"],at:h,hasBlank:!0,rows:function(E){if(E==="month")return["Month"].concat(t);if(E==="year")return["Year"].concat(x);for(var M=["Day"],A=1;A<=F(h.month,h.year?Number(x[h.year-1]):0);A++)M.push(String(A));return M},set:function(E,M){return h[E]=M,E==="day"?[]:["day"]},isComplete:y,typed:function(E,M,A){if(E!=="year"||!/^\\d{2}$/.test(M))return-1;for(var _=1;_<A.length;_++)if(A[_].slice(2)===M)return _;return-1},firstPart:function(){return y()||!h.month?"month":h.day?"year":"day"},words:function(){if(!y())return{shown:null,read:i,sent:""};var E=t[h.month-1],M=x[h.year-1];return{shown:E.slice(0,3)+" "+h.day+", "+M,read:E+" "+h.day+", "+M,sent:M+"-"+s(h.month)+"-"+s(h.day)}}}}function u(v,L,C){for(var x=[],z=[],F=["AM","PM"],h=1;h<=12;h++)x.push(String(h));for(var k=0;k<60;k+=5)z.push(s(k));var y=v.hasAttribute("data-minimum-at")?new Date(v.getAttribute("data-minimum-at")):new Date;isNaN(y)&&(y=new Date),y=new Date(Math.ceil(y.getTime()/d)*d);for(var E=a(y),M=[],A=0;A<366;A++)M.push(new Date(E.getFullYear(),E.getMonth(),E.getDate()+A));var _=a(new Date).getTime(),$=new Date().getFullYear(),rt=new Intl.DateTimeFormat("en-US",{weekday:"short",month:"short",day:"numeric"}),D=new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",year:"numeric"});function B(I){var b=Math.round((I.getTime()-_)/g);return b===0?"Today":b===1?"Tomorrow":(I.getFullYear()===$?rt:D).format(I)}var Q=M.map(B);function nt(I,b){try{var H=new Intl.DateTimeFormat("en-US",{timeZoneName:b}).formatToParts(I).find(function(X){return X.type==="timeZoneName"});return H?H.value:""}catch{return""}}function ot(I){var b=-I.getTimezoneOffset(),H=b<0?"-":"+",X=Math.abs(b);return I.getFullYear()+"-"+s(I.getMonth()+1)+"-"+s(I.getDate())+"T"+s(I.getHours())+":"+s(I.getMinutes())+H+s(Math.floor(X/60))+":"+s(X%60)}var V={day:0,hour:0,minute:0,half:0},Y=!1;function it(I){var b=M[I.day];return new Date(b.getFullYear(),b.getMonth(),b.getDate(),(I.hour+1)%12+I.half*12,I.minute*5)}function ct(I){var b=Math.max(0,Math.min(M.length-1,Math.round((a(I).getTime()-E.getTime())/g)));return{day:b,hour:(I.getHours()%12||12)-1,minute:Math.floor(I.getMinutes()/5),half:I.getHours()<12?0:1}}function ut(I){Object.keys(I).forEach(function(b){V[b]=I[b]})}var lt=L.value?new Date(L.value):null,gt=lt&&!isNaN(lt)&&C.classList.contains("is-marked")?lt:null;return lt&&!isNaN(lt)&&(ut(ct(lt<y?y:lt)),Y=!0),{parts:["day","hour","minute","half"],at:V,hasBlank:!1,rows:function(I){return I==="day"?Q:I==="hour"?x:I==="minute"?z:F},set:function(I,b){return V[I]=b,Y=!0,gt=null,it(V)<y?(ut(ct(y)),"all"):[]},isComplete:function(){return Y},opening:function(){if(Y)return!1;var I=new Date;return I.setMinutes(60,0,0),ut(ct(I<y?y:I)),Y=!0,!0},firstPart:function(){return"day"},words:function(){var I=gt||it(V);if(!Y)return{shown:null,read:"",sent:""};var b=I.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit"}),H=a(I),X=Math.round((H.getTime()-_)/g),et=X===0?"Today":X===1?"Tomorrow":H.toLocaleDateString("en-US",H.getFullYear()===$?{month:"short",day:"numeric"}:{month:"short",day:"numeric",year:"numeric"}),dt=nt(I,"short"),tt=nt(I,"long");return{shown:et+", "+b+(dt?" "+dt:""),read:I.toLocaleDateString("en-US",{weekday:"long",month:"long",day:"numeric",year:"numeric"})+" at "+b+(tt?", "+tt:""),sent:ot(I)}}}}function P(v){var L=[],C={},x={};return Array.prototype.forEach.call(v.querySelectorAll(".wheel[data-part]"),function(z){var F=z.getAttribute("data-part");L.push(F);try{C[F]=JSON.parse(z.getAttribute("data-rows"))||[]}catch{C[F]=[]}x[F]=Math.max(0,Number(z.getAttribute("data-picked"))||0)}),{parts:L,at:x,hasBlank:!1,rows:function(z){return C[z].map(function(F){return F[0]})},set:function(z,F){return x[z]=F,[]},isComplete:function(){return!0},firstPart:function(){return L[0]},words:function(){var z=L.map(function(h){return(C[h][x[h]]||[""])[0]}).join(" "),F={};return L.forEach(function(h){F[h]=(C[h][x[h]]||["",""])[1]}),{shown:z,read:z,sent:F}}}}window.zaismaWatch.each("[data-wheels]",function(v){var L=v.getAttribute("data-wheels"),C=v.id,x=v.querySelector(".wheel-button"),z=v.querySelector(".wheel-pick"),F=v.querySelector(".wheel-value"),h=z.classList.contains("in-place"),k=v.querySelector(".field-error"),y=v.querySelector(".field-hint"),E=v.querySelector(".wheel-read"),M=v.querySelector('input[type="hidden"]:not([data-part])'),A=L==="birthday"?o(v,M):L==="date-time"?u(v,M,x):P(v),_=F.textContent,$={};A.parts.forEach(function(b){$[b]={el:v.querySelector('.wheel[data-part="'+b+'"]'),count:0}});var rt=z.querySelector(".wheels"),D=window.zaismaFloat(z,{anchor:x,home:v,lineOf:function(){return rt.offsetTop+1.5*m},onToggle:function(b){x.setAttribute("aria-expanded",String(b))}});function B(){return D.isOpen()}function Q(b){var H=$[b],X=A.at[b];Array.prototype.forEach.call(H.el.children,function(et,dt){et.setAttribute("aria-selected",String(dt===X))}),H.el.setAttribute("aria-activedescendant",C+"-"+b+"-"+X)}function nt(b){var H=$[b],X=A.rows(b),et=document.createDocumentFragment();H.count=X.length,H.el.textContent="",X.forEach(function(dt,tt){var r=document.createElement("div");r.className="flush-row compact quiet",r.setAttribute("role","option"),r.id=C+"-"+b+"-"+tt,r.textContent=dt,r.setAttribute("data-label",dt),A.hasBlank&&tt===0&&r.classList.add("blank"),et.appendChild(r)}),H.el.appendChild(et),H.isWired||(H.isWired=!0,H.el.addEventListener("click",function(dt){var tt=dt.target.closest('[role="option"]');tt&&tt.parentElement===H.el&&Y(b,Array.prototype.indexOf.call(H.el.children,tt),!0)})),A.at[b]>H.count-1&&(A.at[b]=H.count-1),Q(b)}function ot(b){var H=$[b].el.firstElementChild;return H&&H.offsetHeight||m}function V(b){A.parts.forEach(function(H){$[H].el.scrollTo({top:A.at[H]*ot(H),behavior:b&&!l?"smooth":"auto"})})}function Y(b,H,X){H=Math.max(0,Math.min($[b].count-1,H)),$[b].el.scrollTo({top:H*ot(b),behavior:X&&!l?"smooth":"auto"}),ct(b,H)}var it=A.isComplete();function ct(b,H){if(!(A.at[b]===H&&it)){var X=A.set(b,H);it=!0,x.classList.contains("is-marked")&&A.isComplete()&&(x.classList.remove("is-marked"),k.hidden=!0,y&&(y.hidden=!1)),X==="all"?(A.parts.forEach(Q),V(!0)):(Q(b),X.forEach(function(et){nt(et),$[et].el.scrollTop=A.at[et]*ot(et)})),ut()}}function ut(){var b=A.words();E.textContent=b.read,F.textContent=b.shown===null?_:b.shown,x.classList.toggle("set",b.shown!==null),M&&(M.value=typeof b.sent=="string"?b.sent:""),typeof b.sent=="object"&&Object.keys(b.sent).forEach(function(H){var X=v.querySelector('input[type="hidden"][data-part="'+H+'"]');X&&(X.value=b.sent[H])})}A.parts.forEach(function(b){var H=$[b],X=null,et="",dt=0;nt(b),H.el.addEventListener("scroll",function(){clearTimeout(X),X=setTimeout(function(){B()&&ct(b,Math.round(H.el.scrollTop/ot(b)))},110)},{passive:!0}),H.el.addEventListener("keydown",function(tt){var r=A.at[b],c=tt.key,S={ArrowDown:1,ArrowUp:-1,PageDown:5,PageUp:-5}[c];if(S){Y(b,r+S,!0),tt.preventDefault();return}if(c==="Home"){Y(b,A.hasBlank?1:0,!0),tt.preventDefault();return}if(c==="End"){Y(b,H.count-1,!0),tt.preventDefault();return}if(c==="Enter"&&A.isComplete()){gt(!0),tt.preventDefault();return}if(!(c.length!==1||tt.metaKey||tt.ctrlKey)){var T=Date.now();et=T-dt>900?c.toLowerCase():et+c.toLowerCase(),dt=T;for(var O=A.rows(b),R=-1,U=A.hasBlank?1:0;U<O.length&&R<0;U++)O[U].toLowerCase().indexOf(et)===0&&(R=U);R<0&&A.typed&&(R=A.typed(b,et,O)),R>=0&&(Y(b,R,!0),tt.preventDefault())}})});function lt(b){A.opening&&A.opening()&&(it=!0,A.parts.forEach(Q),ut()),D.open(),V(!1),!b&&$[A.firstPart()].el.focus({preventScroll:!0})}function gt(b){D.close(b)}x.addEventListener("click",function(){B()?gt(!1):lt()}),h&&(A.opening&&!A.isComplete()?lt(!0):requestAnimationFrame(function(){V(!1)})),ut();var I=v.closest("form");I&&v.hasAttribute("data-required")&&I.addEventListener("submit",function(b){A.isComplete()||(b.preventDefault(),x.classList.add("is-marked"),k.hidden=!1,y&&(y.hidden=!0),lt())})})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W.charts||(W.charts=!0,(function(){window.zaismaWatch.each("[data-chart-scroll]",function(d){d.scrollLeft=d.scrollWidth});function l(d,t,i){t.forEach(function(P,v){P.classList.toggle("is-focused",v===i)});var s=d.querySelector("[data-chart-scroll]"),a=t[i];if(!(!s||!a)){var o=s.getBoundingClientRect(),u=a.getBoundingClientRect();u.left<o.left?s.scrollLeft-=o.left-u.left:u.right>o.right&&(s.scrollLeft+=u.right-o.right),d.matches(":focus-visible")&&requestAnimationFrame(function(){g(d,a)})}}function m(d){return Array.prototype.slice.call(d.querySelectorAll(".chart-hit"))}function g(d,t){var i=d.querySelector(":scope > .chart-tip");if(i){if(d.classList.toggle("shows-tip",!!t),!t){i.classList.remove("is-shown");return}i.querySelector("b").textContent=t.getAttribute("data-tip-amount"),i.querySelector("span").textContent=t.getAttribute("data-tip-label");var s=d.getBoundingClientRect(),a=t.getBoundingClientRect(),o=getComputedStyle(t),u=!!t.closest(".is-bars");i.style.setProperty("--tip-left",a.left-s.left+a.width*parseFloat(o.getPropertyValue("--point-left"))/100+"px"),i.style.setProperty("--tip-top",a.top-s.top+a.height*parseFloat(o.getPropertyValue("--point-top"))/100+"px"),i.classList.toggle("is-end",t.classList.contains("is-end")),i.classList.toggle("is-middle",u&&!t.classList.contains("is-end")&&!t.classList.contains("is-start")),i.classList.toggle("is-high",t.classList.contains("is-high")),i.classList.add("is-shown")}}document.addEventListener("pointerover",function(d){var t=d.target instanceof Element?d.target.closest(".chart-hit"):null;t&&g(t.closest(".chart"),t)}),document.addEventListener("pointerout",function(d){var t=d.target instanceof Element?d.target.closest(".chart-hit"):null;if(t&&!(d.relatedTarget instanceof Element&&d.relatedTarget.closest(".chart-hit"))){var i=t.closest(".chart"),s=i.querySelector(".chart-hit.is-pointed")||(i.matches(":focus-visible")?i.querySelector(".chart-hit.is-focused"):null);g(i,s)}}),document.querySelectorAll("[data-chart-scroll]").forEach(function(d){d.addEventListener("scroll",function(){var t=d.closest(".chart");g(t,t.querySelector(".chart-hit.is-pointed"))},{passive:!0})}),document.addEventListener("focusout",function(d){var t=d.target instanceof Element&&d.target.matches("[data-chart-points]")?d.target:null;t&&g(t,t.querySelector(".chart-hit.is-pointed"))}),document.querySelectorAll(".chart-hit.is-pointed").forEach(function(d){g(d.closest(".chart"),d)}),document.addEventListener("focusin",function(d){var t=d.target instanceof Element&&d.target.matches("[data-chart-points]")?d.target:null;if(t){var i=m(t);i.length&&!t.querySelector(".chart-hit.is-focused")&&l(t,i,i.length-1)}}),document.addEventListener("keydown",function(d){var t=d.target instanceof Element&&d.target.matches("[data-chart-points]")?d.target:null;if(t){var i=m(t),s=i.indexOf(t.querySelector(".chart-hit.is-focused")),a=s;if(d.key==="ArrowRight"||d.key==="ArrowUp")a=Math.min(i.length-1,s+1);else if(d.key==="ArrowLeft"||d.key==="ArrowDown")a=Math.max(0,s-1);else if(d.key==="Home")a=0;else if(d.key==="End")a=i.length-1;else return;d.preventDefault(),l(t,i,a)}})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W["long-fields"]||(W["long-fields"]=!0,(function(){var l=12;function m(g){var d=getComputedStyle(g),t=parseFloat(d.lineHeight)||24,i=parseFloat(d.paddingTop)+parseFloat(d.paddingBottom);g.style.height="auto",g.classList.remove("is-scrolling");var s=t*(Number(g.getAttribute("rows"))||2)+i,a=t*l+i;g.classList.toggle("is-scrolling",g.scrollHeight>a+1),g.style.height=Math.max(s,Math.min(g.scrollHeight,a))+"px";var o=Number(g.getAttribute("maxlength")),u=document.getElementById(g.id+"-count");!o||!u||(u.hidden=g.value.length<o*.8,u.textContent=g.value.length.toLocaleString("en-US")+" of "+o.toLocaleString("en-US"))}window.zaismaWatch.each("textarea[data-long-field]",m),window.zaismaWatch.whenRead(function(){document.querySelectorAll("textarea[data-long-field]").forEach(m)}),document.addEventListener("input",function(g){g.target.matches&&g.target.matches("textarea[data-long-field]")&&m(g.target)}),window.zaismaWatch.fontsIn(function(){document.querySelectorAll("textarea[data-long-field]").forEach(m)})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W.sliders||(W.sliders=!0,(function(){function l(m){var g=m.closest(".slider"),d=Number(m.min),t=Number(m.max),i=g.querySelector("output"),s=i.getAttribute("data-unit");g.style.setProperty("--fill",((Number(m.value)-d)/Math.max(1e-9,t-d)).toFixed(4));var a=g.querySelector(".slider-slab");a&&a.redrawCut&&a.redrawCut(),i.textContent=Number(m.value).toLocaleString("en-US")+(s==="%"?"%":" "+s)}document.addEventListener("input",function(m){m.target.matches&&m.target.matches("input[data-slider]")&&l(m.target)}),window.addEventListener("pageshow",function(){document.querySelectorAll("input[data-slider]").forEach(l)})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W["color-fields"]||(W["color-fields"]=!0,(function(){function l(s){return"#"+s.map(function(a){return a.toString(16).padStart(2,"0")}).join("").toUpperCase()}function m(s,a,o){function u(P){var v=(P+s/60)%6;return Math.round((o-o*a*Math.max(0,Math.min(v,4-v,1)))*255)}return[u(5),u(3),u(1)]}function g(s){var a=parseInt(s.slice(1),16),o=(a>>16)/255,u=(a>>8&255)/255,P=(a&255)/255,v=Math.max(o,u,P),L=v-Math.min(o,u,P),C=0;return L&&(C=v===o?(u-P)/L%6:v===u?(P-o)/L+2:(o-u)/L+4,C*=60,C<0&&(C+=360)),[C,v?L/v:0,v]}function d(s){var a=String(s||"").replace(/[^0-9a-f]/gi,"");return a.length===3&&(a=a.replace(/./g,"$&$&")),a.length===6?"#"+a.toUpperCase():null}function t(s){var a=/^\\s*(#[0-9a-f]{6})\\s*$/i.exec(s||"");return a?a[1].toUpperCase():null}var i=10;window.zaismaWatch.each("[data-color-field]",function(s){var a=s.querySelector(".color-button"),o=s.querySelector(".color-pick"),u=s.querySelector(".color-square"),P=s.querySelector(".color-knob"),v=s.querySelector(".color-side .cut-field input"),L=s.querySelector(".color-side .slider-input"),C=s.querySelector(':scope > input[type="hidden"]'),x=a.querySelector(".color-value"),z=a.querySelector(".color-chip"),F=s.querySelector(".color-none button"),h=g(t(C.value)||s.getAttribute("data-color-hex")),k=!!F&&!t(C.value),y=!1,E=window.zaismaFloat(o,{anchor:a,home:s,isAnchorWidth:o.classList.contains("in-place"),onToggle:function(D){a.setAttribute("aria-expanded",String(D)),D&&M()}});function M(D){var B=l(m(h[0],h[1],h[2])),Q=k?"var(--clear-swatch)":B;[s,o].forEach(function(it){it.style.setProperty("--color-picked",Q),it.style.setProperty("--color-full",l(m(h[0],h[1],1))),it.style.setProperty("--color-brightness",String(h[2]))});var nt=u.clientWidth-2*i,ot=u.clientHeight-2*i,V=$(i+h[0]/360*nt,i+(1-h[1])*ot);P.style.left=V[0]+"px",P.style.top=V[1]+"px",u.setAttribute("aria-valuetext",B),z.style.setProperty("--swatch",Q),x.textContent=k?"None":B,C.value=k?"":B,D||(v.value=B);var Y=Math.round(h[2]*100);Number(L.value)!==Y&&(L.value=String(Y),y=!0,L.dispatchEvent(new Event("input",{bubbles:!0})),y=!1)}function A(){s.dispatchEvent(new CustomEvent("zaisma:color",{bubbles:!0,detail:{colorValue:C.value}}))}function _(D){return Math.max(0,Math.min(1,D))}function $(D,B){var Q=u.cutCorners||[0,0,0,0],nt=(P.firstElementChild.cutCorners||[5])[0],ot=[u.clientWidth,u.clientHeight];return[[1,1],[-1,1],[-1,-1],[1,-1]].forEach(function(V,Y){var it=V[0]>0?D-i:ot[0]-D-i,ct=V[1]>0?B-i:ot[1]-B-i,ut=Q[Y]-nt-(it+ct);Q[Y]>nt&&ut>0&&(D+=V[0]*ut/2,B+=V[1]*ut/2)}),[D,B]}function rt(D){var B=u.getBoundingClientRect();h[0]=_((D.clientX-B.left-i)/(B.width-2*i))*359.99,h[1]=1-_((D.clientY-B.top-i)/(B.height-2*i)),k=!1,M(),A()}u.addEventListener("pointerdown",function(D){u.setPointerCapture(D.pointerId),u.classList.add("is-held"),rt(D),u.focus({preventScroll:!0}),D.preventDefault()}),u.addEventListener("pointermove",function(D){u.hasPointerCapture(D.pointerId)&&rt(D)}),u.addEventListener("pointerup",function(){u.classList.remove("is-held")}),u.addEventListener("pointercancel",function(){u.classList.remove("is-held")}),u.addEventListener("keydown",function(D){var B=D.shiftKey?30:5,Q=D.shiftKey?.2:.05;if(D.key==="ArrowLeft")h[0]=Math.max(0,h[0]-B);else if(D.key==="ArrowRight")h[0]=Math.min(359.99,h[0]+B);else if(D.key==="ArrowUp")h[1]=Math.min(1,h[1]+Q);else if(D.key==="ArrowDown")h[1]=Math.max(0,h[1]-Q);else return;D.preventDefault(),k=!1,M(),A()}),L.addEventListener("input",function(){y||(h[2]=Number(L.value)/100,k=!1,M(),A())}),v.addEventListener("input",function(){var D=d(v.value);D&&(h=g(D),k=!1,M(!0),A())}),v.addEventListener("blur",function(){M()}),F&&F.addEventListener("click",function(){k=!0,M(),A()}),a.addEventListener("click",function(){E.isOpen()?E.close(!1):E.open()}),o.classList.contains("in-place")&&E.open(),M()})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W["city-pane"]||(W["city-pane"]=!0,(function(){var l=0;function m(g){var d=document.querySelector("[data-city-pane]"),t=document.querySelector(".city-stage");if(!(!d||!t||t.classList.contains("is-framed")||window.innerWidth===l&&!g)){if(l=window.innerWidth,window.innerWidth>760||window.matchMedia("(orientation: landscape) and (max-height: 500px) and (max-width: 64em)").matches){d.style.marginTop="";return}var i=Array.prototype.find.call(d.querySelectorAll("h1, h2"),function(u){return u.getClientRects().length>0}),s=d.parentElement.querySelector("header.top");d.style.marginTop="0px";var a=(i?i.getBoundingClientRect().bottom:d.getBoundingClientRect().top+120)-d.getBoundingClientRect().top+24,o=s?s.offsetTop+s.offsetHeight+12:12;d.style.marginTop=Math.round(Math.max(o,window.innerHeight-a))+"px"}}window.zaismaPlaceCityPane=m,window.zaismaWatch.each("[data-city-pane]",function(g){m(!0),window.zaismaWatch.size(g,function(){m(!0)})}),window.zaismaWatch.whenRead(function(){m(!0)}),window.addEventListener("resize",function(){m()}),window.zaismaWatch.fontsIn(function(){m(!0)})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W["account-link"]||(W["account-link"]=!0,(function(){/(^|; )(__Host-)?zaisma_in=1/.test(document.cookie)&&window.zaismaWatch.each("header.top[data-account-from-cookie] .end > a:is(.run-wrap,.cut-btn)",function(l){l.href="/account";var m=l.querySelector(".face > span:not([class])");m&&(m.textContent="Account")})})())})(),(function(){var W=window.zaismaPieces=window.zaismaPieces||{};W["hidden-amounts"]||(W["hidden-amounts"]=!0,(function(){var l="zaisma.payments_amounts_hidden",m=!1;try{m=localStorage.getItem(l)==="yes"}catch{}var g="#payments .number-amount, [data-amount]",d="[data-amounts-toggle]";function t(a){a.hasAttribute("data-amount")||a.setAttribute("data-amount",a.textContent),a.textContent=m?"\\u2022\\u2022\\u2022":a.getAttribute("data-amount")}function i(a){a.setAttribute("aria-pressed",String(m));var o=a.querySelector("span:not([class])");o&&(o.textContent=m?"Show amounts":"Hide amounts")}function s(){document.querySelectorAll(g).forEach(t),document.querySelectorAll(d).forEach(i)}window.zaismaWatch.each(g,t),window.zaismaWatch.each(d,i),document.addEventListener("click",function(a){var o=a.target.closest&&a.target.closest("[data-amounts-toggle]");if(o){m=!m;try{localStorage.setItem(l,m?"yes":"no")}catch{}s()}})})())})(),(function(){function W(l){return!!l&&!l.matches('[aria-current="page"], [aria-pressed="true"], :disabled, [aria-disabled="true"], :has(> input:checked), :has(> input:disabled)')}window.zaismaWatch.each("[data-edge-light]",function(l){var m=l.querySelector(":scope > .edge-light");if(!m)return;var g=l.getAttribute("data-edge-light"),d=g==="bottom"||g==="top",t=null,i=null,s=250;function a(x,z){var F=l.getBoundingClientRect(),h=x.getBoundingClientRect();z||(m.style.transition="opacity var(--motion-state)"),m.style.setProperty("--light-at",(d?h.left+h.width/2-F.left:h.top+h.height/2-F.top)+"px"),m.style.setProperty("--light-span",(d?h.width:h.height)+"px"),z||(m.offsetWidth,m.style.transition="")}var o=null;function u(){o||!window.ResizeObserver||(o=new ResizeObserver(function(){t&&(t.getClientRects().length?a(t,!1):v())}),o.observe(l),l.querySelectorAll("[data-lights]").forEach(function(x){o.observe(x)}))}function P(x){clearTimeout(i),i=null,a(x,l.classList.contains("is-lit")),t=x,l.classList.add("is-awake","is-lit"),u()}function v(){clearTimeout(i),i=null,t=null,l.classList.remove("is-lit")}function L(){!i&&t&&(i=setTimeout(v,s))}l.addEventListener("pointerover",function(x){if(!(x.pointerType&&x.pointerType!=="mouse")){l.classList.add("is-awake");var z=x.target.closest("[data-lights]");z&&l.contains(z)&&W(z)?P(z):L()}}),l.addEventListener("pointerleave",function(){v(),l.classList.remove("is-awake")}),l.addEventListener("focusin",function(x){var z=x.target.closest("[data-lights]");z&&l.contains(z)&&W(z)&&z.matches(":focus-visible")&&(l.classList.add("is-awake"),P(z))}),l.addEventListener("focusout",function(x){l.contains(x.relatedTarget)||(v(),l.classList.remove("is-awake"))}),l.addEventListener("click",function(){setTimeout(function(){t&&!W(t)&&v()},0)}),l.addEventListener("scroll",function(){t&&a(t,!1)},!0);var C=l.matches("[data-lights].is-pointed")?l:l.querySelector("[data-lights].is-pointed");C&&P(C)})})(),(function(){var W=getComputedStyle(document.documentElement);function l(t,i){return parseFloat(W.getPropertyValue(t))||i}function m(t){return document.querySelector('[aria-controls="'+t.id+'"][aria-expanded]')}function g(t){return Array.prototype.slice.call(t.querySelectorAll('[role="menuitem"]')).filter(function(i){return!i.closest("[hidden]")})}var d=new WeakMap;window.zaismaWatch.each('.dropdown[role="menu"]',function(t){var i=window.zaismaFloat(t,{anchor:function(){return d.get(t)||m(t)},anchorRect:function(s){var a=s.getBoundingClientRect(),o=s.closest(".top");if(!o)return a;var u=o.getBoundingClientRect();if(u.height>u.width)return{left:u.right+l("--gap-control-stack",8),right:u.right+l("--gap-control-stack",8),top:a.bottom,bottom:a.bottom,width:0,height:0};var P=u.bottom;return{left:a.left,right:a.right,top:P-1,bottom:P,width:a.width,height:1}},isAlwaysBelow:function(s){var a=s.closest(".top");return!!a&&a.offsetHeight<=a.offsetWidth&&!(getComputedStyle(a).position==="fixed"&&a.offsetParent)},gapPx:l("--gap-control-stack",8),edgePx:l("--pad-frame",10),scrollBox:function(){return t.querySelector(".floating-body")},onToggle:function(s){var a=d.get(t)||m(t);a&&a.setAttribute("aria-expanded",String(s))},onPlaced:function(){var s=["menu-large","menu-small","menu-large","menu-small"],a=t.classList.contains("from-start");s[t.classList.contains("is-above")?a?3:2:a?0:1]="0",t.getAttribute("data-glass-corners")!==s.join(" ")&&(t.setAttribute("data-glass-corners",s.join(" ")),t.redrawGlass&&t.redrawGlass())}});t.zaismaPlace=i.place,t.addEventListener("keydown",function(s){var a=g(t),o=a.indexOf(document.activeElement);(s.key==="ArrowDown"||s.key==="ArrowUp")&&(s.preventDefault(),a[(o+(s.key==="ArrowDown"?1:a.length-1))%a.length].focus()),(s.key==="Home"||s.key==="End")&&(s.preventDefault(),a[s.key==="Home"?0:a.length-1].focus()),s.key==="Tab"&&i.close(!1)}),t.addEventListener("click",function(s){s.target.closest('[role="menuitem"]:not([aria-haspopup], [data-keeps-open])')&&i.close(!1)})}),document.addEventListener("click",function(t){var i=t.target.closest&&t.target.closest("[aria-controls][aria-expanded]"),s=i&&document.getElementById(i.getAttribute("aria-controls"));if(!(!s||!s.matches('.dropdown[role="menu"]')||!s.floating)){if(s.floating.isOpen()&&d.get(s)===i){s.floating.close(!1);return}d.set(s,i),s.floating.open();var a=g(s)[0];t.detail===0&&a?a.focus({preventScroll:!0}):(s.tabIndex=-1,s.focus({preventScroll:!0}))}})})(),(function(){var W=12;window.zaismaWatch.each("[data-select]",function(l){var m=l.querySelector(".select-button"),g=l.querySelector(".select-list"),d=g.querySelector('[role="listbox"]'),t=g.querySelector(".floating-body"),i=l.querySelector('input[type="hidden"]'),s=m.closest(".field"),a=l.querySelector(".select-value");function o(){g.style.maxHeight="";var y=t.scrollHeight-t.clientHeight;y>0&&y<W&&(g.style.maxHeight=Math.floor(g.getBoundingClientRect().height-(W-y))+"px")}if(document.fonts?document.fonts.ready.then(o):o(),window.zaismaWatch.resize(o),g.classList.contains("in-place")){var u=g.querySelector('[aria-selected="true"]')||g.querySelector('[role="option"]');u&&t.scrollHeight>t.clientHeight&&(t.scrollTop=u.offsetTop-(t.clientHeight-u.offsetHeight)/2,g.style.setProperty("--line-from-top",t.offsetTop+u.offsetTop-t.scrollTop+u.offsetHeight/2+"px"));return}var P=Array.prototype.slice.call(d.querySelectorAll('[role="option"]')),v=-1,L="",C=0;function x(){return P.findIndex(function(y){return y.getAttribute("aria-selected")==="true"})}function z(y){v=Math.max(0,Math.min(P.length-1,y)),P.forEach(function(A,_){A.classList.toggle("is-active",_===v)}),d.setAttribute("aria-activedescendant",P[v].id);var E=P[v],M=E.offsetTop;M<t.scrollTop?t.scrollTop=M:M+E.offsetHeight>t.scrollTop+t.clientHeight&&(t.scrollTop=M+E.offsetHeight-t.clientHeight)}var F=window.zaismaFloat(g,{anchor:s,home:l,focusOnClose:m,lineOf:function(){var y=P[Math.max(0,x())];return t.offsetTop+y.offsetTop-t.scrollTop+y.offsetHeight/2},onShown:function(){o();var y=P[Math.max(0,x())];t.scrollHeight>t.clientHeight&&(t.scrollTop=y.offsetTop-(t.clientHeight-y.offsetHeight)/2)},onToggle:function(y){m.setAttribute("aria-expanded",String(y)),s.classList.toggle("is-open",y),y&&(z(Math.max(0,x())),d.focus({preventScroll:!0}))}});function h(y){P.forEach(function(E,M){E.setAttribute("aria-selected",String(M===y))}),a.textContent=P[y].textContent,a.classList.remove("is-placeholder"),(i.value!==P[y].getAttribute("data-choice-value")||!k)&&(i.value=P[y].getAttribute("data-choice-value"),i.dispatchEvent(new Event("change",{bubbles:!0}))),k=!0,F.close(!0)}var k=x()>=0;m.addEventListener("click",function(){m.disabled||(F.isOpen()?F.close(!1):F.open())}),m.addEventListener("keydown",function(y){(y.key==="ArrowDown"||y.key==="ArrowUp")&&(y.preventDefault(),m.disabled||F.open())}),d.addEventListener("click",function(y){var E=y.target.closest('[role="option"]');E&&h(P.indexOf(E))}),d.addEventListener("pointermove",function(y){var E=y.target.closest('[role="option"]');E&&P.indexOf(E)!==v&&z(P.indexOf(E))}),d.addEventListener("keydown",function(y){var E=y.key,M={ArrowDown:1,ArrowUp:-1,PageDown:5,PageUp:-5}[E];if(M){z(v+M),y.preventDefault();return}if(E==="Home"||E==="End"){z(E==="Home"?0:P.length-1),y.preventDefault();return}if(E==="Enter"||E===" "){h(v),y.preventDefault();return}if(E==="Tab"){F.close(!1);return}if(!(E.length!==1||y.metaKey||y.ctrlKey)){var A=Date.now();L=A-C>900?E.toLowerCase():L+E.toLowerCase(),C=A;var _=P.findIndex(function($){return $.textContent.toLowerCase().indexOf(L)===0});_>=0&&z(_)}})})})();
|
|
11289
11341
|
` };
|
|
11290
11342
|
var MINIFIED_COMPONENT_SCRIPT = { sourceSha256: "1bbc8b5a6e73296dfe87511ec2c06b07f7c55d5b8d4e0c65884d5f875e871c99", minifiedText: `(function(){var E=window.matchMedia("(orientation: landscape) and (max-height: 500px) and (pointer: coarse)"),p=document.documentElement,u=window.visualViewport,i=null,n=null,l=null,f=null,s=0,d=0,b=0,S=!1,a=/^(text|search|email|url|tel|password|number)$/;function r(T){return T&&(T.tagName==="TEXTAREA"||T.tagName==="INPUT"&&a.test(T.type))&&!T.readOnly&&!T.disabled}function t(T,z){p.style.setProperty(T,z+"px")}function o(){var T=u?u.offsetTop:0,z=u?u.offsetLeft:0,g=j(),q=u?u.width:window.innerWidth;t("--typing-height",g),t("--typing-shown-width",q),i&&(t("--typing-top",T+Math.max(0,(g-i.offsetHeight)/2)),t("--typing-left",z+(q-i.offsetWidth)/2))}function m(){o(),b=requestAnimationFrame(m)}function w(T){var z=T.closest(".cut-field, .pin-field, .find"),g=z&&z.parentElement;return g&&g.classList.contains("row-cell")?g.closest(".layout-row"):z||T.closest(".stack-cell")||T.parentElement}function h(T){var z=document.createElement("div");return z.className="typing-veil"+(T?" is-shown":""),z.setAttribute("popover","manual"),document.body.appendChild(z),z.showPopover&&z.showPopover(),z}function v(){f&&(f.remove(),f=null)}function A(){return f&&parseFloat(getComputedStyle(f).transitionDuration)*1e3||0}function L(){document.dispatchEvent(new Event("typing-bar-lowered"))}function P(){if(L(),!!f){var T=f,z=A();f=null,T.offsetWidth,T.classList.remove("is-shown"),setTimeout(function(){T.remove()},z)}}function N(){window.zaismaRedrawEdges&&window.zaismaRedrawEdges()}function B(){for(var T=[],z=i;z;z=z.parentElement)T.push([z,z.style.transition]),z.style.transition="none";cancelAnimationFrame(b),i.classList.remove("is-typing-bar","is-typing-shown","is-typing-leaving"),l.remove(),p.classList.remove("is-typing"),i=l=null,p.offsetWidth,T.forEach(function(g){g[0].style.transition=g[1]}),N()}function U(T){n=T,i=w(T),l=document.createElement("div"),l.className="typing-cover",i.after(l),i.classList.add("is-typing-bar"),p.classList.add("is-typing"),m(),N()}function W(){v(),requestAnimationFrame(function(){i&&i.classList.add("is-typing-shown")})}function J(T){p.style.setProperty("--typing-ground",getComputedStyle(T).getPropertyValue("--glass-ground"))}function j(){return u?u.height:window.innerHeight}function ne(T,z,g,q){var k=j(),C=u?u.offsetTop:0,I=performance.now(),H=k!==T;function Y(D){var V=j(),_=u?u.offsetTop:0;if((V!==k||_!==C)&&(k=V,C=_,I=D,H=!0),D-z>=g||H&&D-z>=500&&D-I>=250){d=0,q();return}d=requestAnimationFrame(Y)}d=requestAnimationFrame(Y)}function te(){clearTimeout(s),cancelAnimationFrame(d),d=0}function Z(T){if(te(),S=!1,i){B(),J(T),U(T),W();return}var z=j(),g=performance.now();n=T,J(T);function q(){if(document.activeElement!==T){n=null,P();return}U(T),ne(z,g,900,W)}if(f){q();return}f=h(!1),f.offsetWidth,f.classList.add("is-shown"),s=setTimeout(q,A())}function K(){if(!S){if(te(),!i){n=null,P();return}if(f){B(),n=null,P();return}S=!0,i.classList.add("is-typing-leaving"),s=setTimeout(function(){S=!1,f=h(!0),B(),n=null,P()},parseFloat(getComputedStyle(i).animationDuration)*1e3||0)}}document.addEventListener("focusin",function(T){E.matches&&r(T.target)&&Z(T.target)}),document.addEventListener("focusout",function(){setTimeout(function(){var T=document.activeElement;n&&T!==n&&!(i&&i.contains(T))&&K()},0)});function re(T){T.preventDefault(),T.stopPropagation()}document.addEventListener("pointerdown",function(T){!l||T.target!==l||(T.preventDefault(),n.blur(),K(),document.addEventListener("click",re,{capture:!0,once:!0}),setTimeout(function(){document.removeEventListener("click",re,!0)},700))},!0),E.addEventListener("change",function(){E.matches||K()}),window.zaismaTypingBar={lift:Z}})(),(function(){document.addEventListener("click",function(s){var d=s.target.closest&&s.target.closest(".find > .tertiary-btn");if(d){var b=d.parentElement.querySelector('input[type="search"]');b&&(b.value="",b.dispatchEvent(new Event("input",{bubbles:!0})),b.focus());return}var S=s.target.closest&&s.target.closest(".field:not(.code) > .cut-btn[aria-controls]");if(S){var a=document.getElementById(S.getAttribute("aria-controls"));if(a){var r=a.type==="password";a.type=r?"text":"password",S.setAttribute("aria-label",r?"Hide":"Show"),S.setAttribute("aria-pressed",String(r))}}});var E="input[data-characters]";function p(s,d){var b=new RegExp("^"+s.getAttribute("data-characters")+"$");return s.hasAttribute("data-uppercase")&&(d=d.toUpperCase()),Array.from(d).filter(function(S){return b.test(S)}).join("")}function u(s,d,b){var S=p(s,d);if(!(S===d&&b.type!=="paste")){b.preventDefault();var a=s.selectionStart,r=s.selectionEnd,t=s.maxLength>=0?s.maxLength-s.value.length+r-a:S.length;S=S.slice(0,Math.max(0,t)),S&&(s.setRangeText(S,a,r,"end"),s.dispatchEvent(new Event("input",{bubbles:!0})))}}document.addEventListener("paste",function(s){var d=s.target;d.matches&&d.matches(E)&&s.clipboardData&&u(d,s.clipboardData.getData("text/plain"),s)}),document.addEventListener("beforeinput",function(s){var d=s.target;!d.matches||!d.matches(E)||s.inputType!=="insertText"||s.isComposing||typeof s.data!="string"||u(d,s.data,s)});function i(s){var d=p(s,s.value);if(s.maxLength>=0&&(d=d.slice(0,s.maxLength)),d!==s.value){var b=p(s,s.value.slice(0,s.selectionStart||0)).length;s.value=d,s.setSelectionRange(Math.min(b,d.length),Math.min(b,d.length))}}document.addEventListener("input",function(s){s.target.matches&&s.target.matches(E)&&!s.isComposing&&i(s.target)},!0),document.addEventListener("compositionend",function(s){s.target.matches&&s.target.matches(E)&&i(s.target)},!0);var n=".field > input:not([type='hidden']), .find > input[type='search']";function l(s){var d=s.parentElement,b=s.scrollWidth-s.clientWidth;d.classList.toggle("more-left",b>1&&s.scrollLeft>1),d.classList.toggle("more-right",b>1&&s.scrollLeft<b-1)}function f(s){requestAnimationFrame(function(){l(s)})}["input","focusin","focusout","keyup","click","scroll"].forEach(function(s){document.addEventListener(s,function(d){d.target.matches&&d.target.matches(n)&&f(d.target)},!0)}),document.addEventListener("selectionchange",function(){var s=document.activeElement;s&&s.matches&&s.matches(n)&&f(s)}),window.zaismaWatch.each(n,function(s){l(s),window.zaismaWatch.size(s,function(){l(s)})})})(),(function(){var E=6;function p(l){return typeof l=="string"?document.getElementById(l):l}function u(l){return l.querySelector(".pin-input")}function i(l){var f=u(l).value.length;Array.prototype.forEach.call(l.querySelectorAll(".pin-mark"),function(s,d){s.classList.toggle("is-filled",d<f),s.classList.toggle("is-next",d===Math.min(f,E-1))})}function n(l,f){var s=l.querySelector(".field-error");s.textContent=f||"",s.hidden=!f,Array.prototype.forEach.call(l.querySelectorAll(".pin-mark"),function(b){b.classList.toggle("is-marked",!!f)});var d=l.querySelector(".pin-marks");f&&!window.matchMedia("(prefers-reduced-motion: reduce)").matches&&(d.classList.remove("is-shaking"),d.offsetWidth,d.classList.add("is-shaking")),f?u(l).setAttribute("aria-invalid","true"):u(l).removeAttribute("aria-invalid")}window.zaismaPinField={digits:function(l){return u(p(l)).value},clear:function(l){var f=p(l);u(f).value="",i(f)},focus:function(l){u(p(l)).focus({preventScroll:!0})},setError:function(l,f){n(p(l),f)},setDisabled:function(l,f){var s=p(l);u(s).disabled=!!f,f?s.setAttribute("aria-busy","true"):s.removeAttribute("aria-busy")}},window.zaismaWatch.each("[data-pin]",function(l){var f=u(l);l.querySelector(".pin-marks").addEventListener("animationend",function(d){d.animationName==="pin-shake"&&d.currentTarget.classList.remove("is-shaking")}),f.addEventListener("input",function(){var d=f.value.replace(/\\D/g,"").slice(0,E);d!==f.value&&(f.value=d),l.querySelector(".pin-mark.is-marked")&&n(l,""),i(l),d.length===E&&l.dispatchEvent(new CustomEvent("zaisma:pin-complete",{bubbles:!0,detail:{digits:d}}))});function s(){var d=f.value.length;try{f.setSelectionRange(d,d)}catch{}}f.addEventListener("focus",s),f.addEventListener("keydown",function(d){/^(ArrowLeft|ArrowRight|Home|End|ArrowUp|ArrowDown)$/.test(d.key)&&(d.preventDefault(),s())}),i(l)})})(),(function(){if(window.matchMedia("(prefers-reduced-motion: reduce)").matches)return;var E=window.matchMedia("(hover: hover)").matches;function p(n){n.classList.remove("is-flaring"),n.offsetWidth,n.classList.add("is-flaring")}function u(n){return n.getAttribute("aria-busy")==="true"}document.addEventListener("click",function(n){var l=n.target.closest&&n.target.closest(".run-wrap");!l||l.disabled||u(l)||setTimeout(function(){u(l)?l.flaresWhenDone=!0:p(l)},0)}),document.addEventListener("animationend",function(n){n.animationName==="run-flare"&&n.target.classList&&n.target.classList.remove("is-flaring")});function i(n){if(n.dataset.rise)return;n.dataset.rise="1";var l=n.querySelector(".run");if(!l)return;function f(){n.classList.add("over"),n.style.setProperty("--lift","-1.5px"),l.classList.contains("glint")||l.classList.add("glint")}function s(){n.classList.remove("over"),n.style.removeProperty("--lift"),l.style.removeProperty("--refl"),l.classList.remove("glint")}new MutationObserver(function(){if(u(n)){s();return}n.flaresWhenDone&&(n.flaresWhenDone=!1,p(n)),E&&n.matches(":hover")&&f()}).observe(n,{attributes:!0,attributeFilter:["aria-busy"]}),E&&(n.addEventListener("pointerenter",function(){u(n)||f()}),l.addEventListener("animationend",function(d){d.animationName==="slab-glint"&&l.classList.remove("glint")}),n.addEventListener("pointerleave",s),n.addEventListener("pointermove",function(d){if(!u(n)){var b=n.getBoundingClientRect(),S=(d.clientX-b.left)/b.width-.5;l.style.setProperty("--refl",(50-S*70).toFixed(1)+"%")}}))}document.querySelectorAll(".run-wrap").forEach(i),window.zaismaWatch.page(function(n){n.forEach(function(l){l.addedNodes.forEach(function(f){f.querySelectorAll&&f.querySelectorAll(".run-wrap").forEach(i)})})})})(),(function(){var E=[];function p(i){!i||i.getAttribute("aria-busy")==="true"||(window.zaismaWait(i,new Promise(function(n){E.push(n)})),i.tagName==="BUTTON"&&setTimeout(function(){i.disabled=!0},0))}function u(i,n){setTimeout(function(){i.defaultPrevented||n()},0)}document.addEventListener("submit",function(i){if(!(i.target.getAttribute("method")==="dialog"||i.submitter&&i.submitter.getAttribute("formmethod")==="dialog")){var n=i.submitter&&i.submitter.closest(".shell")||i.target.querySelector('.shell[type="submit"]');u(i,function(){p(n)})}}),window.addEventListener("pageshow",function(i){i.persisted&&(E.splice(0).forEach(function(n){n()}),document.querySelectorAll('.shell[aria-busy="true"]').forEach(function(n){n.disabled=!1}))})})(),(function(){function E(u){var i=/polygon\\(([^)]*)\\)/.exec(u||"");return i?i[1].split(",").map(function(n){var l=n.trim().split(/\\s+/);return[parseFloat(l[0]),parseFloat(l[1])]}):null}function p(u,i){var n=u.length,l=u.map(function(L){return L[0]}),f=Math.min.apply(null,l),s=Math.max.apply(null,l);function d(L,P){var N=-1;return u.forEach(function(B,U){Math.abs(B[0]-L)<.01&&(N<0||(P?B[1]<u[N][1]:B[1]>u[N][1]))&&(N=U)}),N}for(var b=d(f,!0),S=d(f,!1),a=d(s,!0),r=d(s,!1),t=1,o=b,m=0;m<n&&o!==a;m++,o=(o+1)%n)if(o===r&&r!==a){t=-1;break}function w(L,P){for(var N=[],B=L,U=0;U<=n&&(N.push(u[B]),B!==P);U++)B=(B+t+n)%n;return N}var h=w(a,b),v=h.map(function(L){return L[0].toFixed(2)+"px calc("+(L[1]+i).toFixed(2)+"px - max(var(--toggle-rise), 0px))"}),A=h.slice().reverse().map(function(L){return L[0].toFixed(2)+"px "+(L[1]+i).toFixed(2)+"px"});return"polygon("+v.concat(A).join(", ")+")"}window.zaismaWatch.each(".toggle-btn",function(u){var i=u.querySelector(":scope > .face"),n=u.querySelector(":scope > .toggle-front");if(!i||!n)return;function l(){var f=E(i.style.getPropertyValue("--cut-shape")),s=parseFloat(getComputedStyle(u).getPropertyValue("--toggle-lift"))||0;f&&f.length>=3&&n.style.setProperty("--front-shape",p(f,s))}l(),new MutationObserver(l).observe(i,{attributes:!0,attributeFilter:["style"]})})})(),(function(){document.addEventListener("change",function(E){var p=E.target;if(!(!p.classList||!p.classList.contains("check-input"))){var u=p.closest(".check");!u||!p.checked||(u.classList.add("is-just-ticked"),u.addEventListener("pointerleave",function(){u.classList.remove("is-just-ticked")},{once:!0}))}})})(),(function(){window.zaismaWatch.each(".choice-cards",function(E){function p(){var u=E.children,i=u.length>1&&u[1].offsetTop>u[0].offsetTop+1;E.classList.toggle("is-stacked",i),Array.prototype.forEach.call(u,function(n){n.setAttribute("data-edge-light",i?"left":"bottom")})}p(),window.zaismaWatch.size(E,p)})})(),(function(){function E(p){return p<1e3?p+"\\xA0bytes":p<1e6?Math.round(p/1e3)+"\\xA0KB":p<1e9?Number((p/1e6).toFixed(1))+"\\xA0MB":Number((p/1e9).toFixed(2))+"\\xA0GB"}document.querySelectorAll("[data-file-drop]").forEach(function(p){var u=p.querySelector(".file-drop"),i=p.querySelector(".file-drop-input"),n=p.querySelector(".file-drop-list"),l=p.querySelector(".field-error"),f=Number(p.getAttribute("data-most-bytes"))||0,s=(i.getAttribute("accept")||"").split(",").map(function(h){return h.trim().toLowerCase()}).filter(Boolean),d=0;function b(){var h=s.map(function(v){var A=v.split("/");return v.charAt(0)==="."?v:A[1]==="*"?A[0]+" file":"."+A[1]});return h.length>1?h.slice(0,-1).join(", ")+" or "+h[h.length-1]:h[0]}function S(h){if(!s.length)return!0;var v=h.name.toLowerCase(),A=(h.type||"").toLowerCase();return s.some(function(L){return L.charAt(0)==="."?v.slice(-L.length)===L:/\\/\\*$/.test(L)?A.indexOf(L.slice(0,-1))===0:A===L})}function a(h){l.textContent=h,l.hidden=!h,u.classList.toggle("is-marked",!!h);var v=(i.getAttribute("aria-describedby")||"").split(" ").filter(function(A){return A&&A!==l.id});h?(v.push(l.id),i.setAttribute("aria-invalid","true")):i.removeAttribute("aria-invalid"),i.setAttribute("aria-describedby",v.join(" "))}i.addEventListener("dragenter",function(){d++,u.classList.add("is-over")}),i.addEventListener("dragleave",function(){d=Math.max(0,d-1),d||u.classList.remove("is-over")}),i.addEventListener("drop",function(){d=0,u.classList.remove("is-over")}),i.addEventListener("change",function(){var h=Array.prototype.slice.call(i.files),v=h.find(function(P){return!S(P)}),A=f?h.find(function(P){return P.size>f}):null,L=v?v.name+" isn't a "+b()+".":A?A.name+" is "+E(A.size)+"; the most is "+E(f)+".":"";L&&(i.value="",h=[]),a(L),m(h)});var r=p.querySelector(".file-drop-row-template"),t=[],o=p.querySelector(".file-drop-zoom-template").innerHTML;function m(h){t.forEach(function(v){v.url&&URL.revokeObjectURL(v.url)}),n.textContent="",t=[],h.forEach(function(v){var A=r.content.firstElementChild.cloneNode(!0),L=A.querySelector(".file-drop-preview"),P=(v.type||"").indexOf("image/")===0?URL.createObjectURL(v):"";P&&(L.style.setProperty("--picture","url("+JSON.stringify(P)+")"),L.setAttribute("data-picture",P),L.disabled=!1,L.querySelector(".ico").outerHTML=o),L.setAttribute("aria-label","View "+v.name),A.querySelector(".file-drop-name").textContent=v.name,A.querySelector(".file-drop-size").textContent=E(v.size);var N=A.querySelector(".file-drop-remove button");N.setAttribute("aria-label","Remove "+v.name),n.appendChild(A),t.push({file:v,url:P})}),n.hidden=!h.length}var w=p.querySelector(".file-drop-view");n.addEventListener("click",function(h){var v=h.target.closest&&h.target.closest(".file-drop-preview[data-picture]");v&&(w.src=v.getAttribute("data-picture"),w.alt=v.getAttribute("aria-label").replace(/^View /,""))}),n.addEventListener("click",function(h){var v=h.target.closest&&h.target.closest(".file-drop-remove button");if(v){var A=v.closest(".file-drop-row"),L=Array.prototype.indexOf.call(n.children,A),P=A.querySelector(".file-drop-name, .progress-words > span").textContent;if(t[L]){var N=new DataTransfer;t.forEach(function(B,U){U!==L&&N.items.add(B.file)}),t[L].url&&URL.revokeObjectURL(t[L].url),i.files=N.files,t.splice(L,1)}A.remove(),n.hidden=!n.children.length,p.dispatchEvent(new CustomEvent("zaisma:file-remove",{bubbles:!0,detail:{fileName:P}})),n.children.length?n.children[Math.min(L,n.children.length-1)].querySelector(".file-drop-remove button").focus():i.focus()}})})})(),(function(){function E(p){var u=document.createRange();u.selectNodeContents(p);var i=window.getSelection();i.removeAllRanges(),i.addRange(u)}document.addEventListener("click",function(p){var u=p.target.closest&&p.target.closest(".copy-field");if(!u||!p.target.closest(".well"))return;var i=u.querySelector(".copy-field-text"),n=u.querySelector(".copy-said");if(!p.target.closest(".well-end > .tertiary-btn")&&u.classList.contains("is-code")){E(i);return}function l(s){n.textContent=s,u.classList.add("is-copied"),clearTimeout(n.timer),n.timer=setTimeout(function(){n.textContent="",u.classList.remove("is-copied")},1600)}function f(){E(i);var s=!1;try{s=document.execCommand("copy")}catch{}s&&l("Copied")}navigator.clipboard&&navigator.clipboard.writeText?(l("Copied"),navigator.clipboard.writeText(i.getAttribute("data-copy")||i.textContent).catch(f)):f()})})(),(function(){function E(u){var i=u.querySelector("[data-code-wrap]"),n=u.querySelector(".code-scroll"),l=u.querySelector(".code-lines");!i||!n||!l||(i.hidden=!u.classList.contains("is-wrapped")&&l.scrollWidth<=n.clientWidth+1)}var p=typeof ResizeObserver=="function"?new ResizeObserver(function(u){u.forEach(function(i){var n=i.target.closest(".code-block");n&&E(n)})}):null;window.zaismaWatch.each(".code-block",function(u){E(u),p&&p.observe(u.querySelector(".code-scroll"))}),document.addEventListener("click",function(u){var i=u.target.closest&&u.target.closest("[data-code-wrap], [data-code-copy]"),n=i&&i.closest(".code-block");if(!n)return;if(i.hasAttribute("data-code-wrap")){var l=!n.classList.contains("is-wrapped");n.classList.toggle("is-wrapped",l),i.setAttribute("aria-pressed",String(l)),E(n);return}var f=n.querySelector(".code-lines"),s=n.querySelector(".code-said");function d(){s.textContent="Copied",n.classList.add("is-copied"),clearTimeout(s.timer),s.timer=setTimeout(function(){s.textContent="",n.classList.remove("is-copied")},1600)}function b(){var S=document.createRange();S.selectNodeContents(f);var a=window.getSelection();a.removeAllRanges(),a.addRange(S);var r=!1;try{r=document.execCommand("copy")}catch{}r&&d()}navigator.clipboard&&navigator.clipboard.writeText?(d(),navigator.clipboard.writeText(f.textContent).catch(b)):b()})})(),(function(){document.addEventListener("click",function(E){var p=E.target.closest&&E.target.closest("[data-qr-png]");if(p){var u=new Image;u.onload=function(){var i=Object.assign(document.createElement("canvas"),{width:1024,height:1024}),n=i.getContext("2d");n.imageSmoothingEnabled=!1,n.drawImage(u,0,0,1024,1024),i.toBlob(function(l){var f=Object.assign(document.createElement("a"),{href:URL.createObjectURL(l),download:p.getAttribute("data-qr-png")});f.click(),setTimeout(function(){URL.revokeObjectURL(f.href)},1e3)},"image/png")},u.src=p.getAttribute("data-qr-svg")}})})(),(function(){function E(a){return Array.prototype.slice.call(a.querySelectorAll("[data-media-slide]"))}function p(a){var r=a.querySelector("[data-media-slide]:not([hidden])");return r?Number(r.getAttribute("data-media-slide")):0}function u(a){var r=a.querySelector("video:not(.video-stand-in)");r&&r.pause();var t=a.querySelector("iframe");t&&t.remove()}var i=32;function n(a,r,t){var o=E(a);if(o.length){r=(r+o.length)%o.length;var m=p(a),w=r===m||!a.open?0:r>m?1:-1;o.forEach(function(L,P){P!==r?(u(L),L.hidden=!0):L.hidden=!1});var h=o[r],v=h.querySelector("video:not(.video-stand-in)");h.shownMs=0,h.youtubeShare=0,w&&h.animate&&!s&&h.animate([{opacity:0,transform:"translateX("+w*i+"px)"},{opacity:1,transform:"none"}],{duration:300,easing:"cubic-bezier(0.2, 0, 0, 1)"}),h.hasAttribute("data-youtube-video-id")?l(h,t):v&&t&&v.play().catch(function(){});var A=a.querySelector("[data-media-at]");A&&(A.textContent=String(r+1)),a.querySelectorAll(".media-thumb").forEach(function(L){var P=Number(L.getAttribute("data-media-to"))===r;L.querySelector(".media-thumb-time").style.setProperty("--groove-filled","0"),P?(L.setAttribute("aria-current","true"),L.scrollIntoView({block:"nearest",inline:"nearest"})):L.removeAttribute("aria-current")})}}function l(a,r){if(!a.querySelector("iframe")){var t=document.createElement("iframe");t.className="media-youtube",t.src="https://www.youtube-nocookie.com/embed/"+encodeURIComponent(a.getAttribute("data-youtube-video-id"))+"?rel=0&modestbranding=1&enablejsapi=1"+(r?"&autoplay=1":""),t.title=a.getAttribute("data-youtube-title")||"YouTube video",t.allow="autoplay; encrypted-media; fullscreen; picture-in-picture",t.setAttribute("allowfullscreen",""),t.referrerPolicy="strict-origin-when-cross-origin",t.addEventListener("load",function(){t.contentWindow.postMessage(JSON.stringify({event:"listening",id:1,channel:"widget"}),"https://www.youtube-nocookie.com")}),a.querySelector(".media-frame").appendChild(t)}}window.addEventListener("message",function(a){if(!(a.origin!=="https://www.youtube-nocookie.com"||typeof a.data!="string")){var r;try{r=JSON.parse(a.data)}catch{return}var t=Array.prototype.slice.call(document.querySelectorAll("iframe.media-youtube")).filter(function(w){return w.contentWindow===a.source})[0];if(!(!t||!r||!r.info)){var o=t.closest("[data-media-slide]"),m=o.closest("[data-media-viewer]");r.info.duration&&(o.youtubeLengthSec=r.info.duration),typeof r.info.currentTime=="number"&&(o.youtubeShare=r.info.currentTime/(o.youtubeLengthSec||Number(o.getAttribute("data-media-length"))||1)),r.info.playerState===0&&m.isAuto&&d(m)}}});var f=6e3,s=window.matchMedia&&window.matchMedia("(prefers-reduced-motion: reduce)").matches;function d(a){var r=p(a)+1;if(r>=E(a).length){a.isAuto=!1;return}n(a,r,!0)}function b(a){if(!a.isRunning){a.isRunning=!0;var r=performance.now();requestAnimationFrame(function t(o){if(!a.open||a.classList.contains("is-leaving")){a.isRunning=!1;return}var m=o-r;r=o;var w=a.querySelector("[data-media-slide]:not([hidden])"),h=w&&w.querySelector("video:not(.video-stand-in)"),v=0;h?v=h.currentTime/(isFinite(h.duration)&&h.duration>0?h.duration:1):w&&w.hasAttribute("data-youtube-video-id")?v=w.youtubeShare||0:w&&a.isAuto&&(document.hidden||(w.shownMs=(w.shownMs||0)+m),v=w.shownMs/f,v>=1&&(d(a),v=1));var A=a.querySelector('.media-thumb[aria-current="true"] .media-thumb-time');A&&A.style.setProperty("--groove-filled",Math.max(0,Math.min(1,v)).toFixed(4)),requestAnimationFrame(t)})}}document.addEventListener("ended",function(a){var r=a.target instanceof HTMLVideoElement?a.target.closest("[data-media-viewer]"):null;r&&r.isAuto&&d(r)},!0),document.addEventListener("click",function(a){var r=a.target instanceof Element?a.target:null;if(r){var t=r.closest("[data-media-to]");if(t){var o=t.closest("[data-media-viewer]"),m=o||document.getElementById(t.getAttribute("aria-controls")||"");if(!m)return;m.isAuto=!o&&!s,n(m,Number(t.getAttribute("data-media-to")),!0),b(m)}}}),document.addEventListener("keydown",function(a){if(!(a.key!=="ArrowLeft"&&a.key!=="ArrowRight")){var r=document.querySelector("dialog[data-media-viewer][open]");!r||a.target instanceof Element&&a.target.closest("input")||(a.preventDefault(),r.isAuto=!1,n(r,p(r)+(a.key==="ArrowRight"?1:-1)))}});var S=null;document.addEventListener("pointerdown",function(a){var r=a.target instanceof Element?a.target.closest(".media-shown"):null;S=r&&a.pointerType!=="mouse"?{x:a.clientX,y:a.clientY,viewer:r.closest("[data-media-viewer]")}:null}),document.addEventListener("pointerup",function(a){if(S){var r=a.clientX-S.x,t=a.clientY-S.y,o=S.viewer;S=null,Math.abs(r)>48&&Math.abs(r)>2*Math.abs(t)&&(o.isAuto=!1,n(o,p(o)+(r<0?1:-1)))}}),document.querySelectorAll("[data-media-viewer]").forEach(function(a){new MutationObserver(function(){(a.classList.contains("is-leaving")||!a.open)&&E(a).forEach(u)}).observe(a,{attributes:!0,attributeFilter:["class","open"]})})})(),(function(){function E(r){return r instanceof Element?r.closest("[data-video-player]"):null}document.addEventListener("click",function(r){var t=E(r.target);if(t){var o=r.target,m=t.querySelector("video:not(.video-stand-in)"),w=o===m||!!o.closest("[data-video-press]");if(w&&t.isWakeTouch){t.isWakeTouch=!1;return}o.closest("[data-video-play]")||w?m.paused?m.play().catch(function(){}):m.pause():o.closest("[data-video-sound]")?m.muted||m.volume===0?(m.muted=!1,m.volume===0&&(m.volume=.5)):m.muted=!0:o.closest("[data-video-full-screen]")&&(document.fullscreenElement?document.exitFullscreen():t.requestFullscreen?t.requestFullscreen():m.webkitEnterFullscreen&&m.webkitEnterFullscreen())}}),document.addEventListener("fullscreenchange",function(){document.querySelectorAll("[data-video-player] [data-video-full-screen]").forEach(function(r){var t=document.fullscreenElement===r.closest("[data-video-player]");r.setAttribute("data-is-on",String(t)),r.setAttribute("aria-label",t?"Exit full screen":"Full screen")})});function p(r,t){return isFinite(t.duration)&&t.duration>0?t.duration:Number(r.getAttribute("data-video-length"))||1}function u(r){var t=r.target;if(t instanceof HTMLVideoElement){var o=t.closest("[data-video-player]");if(o){var m=Math.min(1,t.currentTime/p(o,t)),w=Math.floor(t.currentTime/60),h=Math.floor(t.currentTime%60);o.querySelector(".video-seek-input[data-is-dragged]")||i(o,t,t.currentTime);var v=o.querySelector(".video-seek-input");v.hasAttribute("data-is-dragged")||(v.value=String(t.currentTime)),o.querySelector("[data-video-time]").textContent=w+":"+String(h).padStart(2,"0");var A=o.querySelector("[data-video-play]");A.setAttribute("aria-label",t.paused?"Play":"Pause"),A.setAttribute("data-is-on",String(!t.paused));var L=t.muted?0:t.volume,P=o.querySelector("[data-video-sound]");P.setAttribute("data-sound-at",L===0?"off":L<=.5?"low":"high"),P.setAttribute("aria-label",L===0?"Sound on":"Mute"),o.querySelector(".video-level-groove").style.setProperty("--groove-filled",L.toFixed(4));var N=o.querySelector(".video-level-input");N.hasAttribute("data-is-dragged")||(N.value=String(L)),(r.type==="play"||r.type==="pause"||r.type==="ended")&&a(o),r.type==="play"&&n(o,t)}}}function i(r,t,o){for(var m=p(r,t),w=Math.min(1,o/m),h=o,v=0;v<t.buffered.length;v++)t.buffered.start(v)<=o+.5&&t.buffered.end(v)>=o&&(h=t.buffered.end(v));r.querySelector(".video-progress").style.setProperty("--groove-filled",w.toFixed(4));var A=r.querySelector(".video-seek");A.style.setProperty("--played",w.toFixed(4)),A.style.setProperty("--loaded",Math.min(1,h/m).toFixed(4))}function n(r,t){r.isGliding||(r.isGliding=!0,(function o(){if(t.paused||t.ended||!r.isConnected){r.isGliding=!1;return}r.querySelector(".video-seek-input[data-is-dragged]")||i(r,t,t.currentTime),requestAnimationFrame(o)})())}["timeupdate","play","pause","volumechange","ended","progress"].forEach(function(r){document.addEventListener(r,u,!0)}),document.addEventListener("durationchange",function(r){var t=r.target;if(!(!(t instanceof HTMLVideoElement)||!isFinite(t.duration)||!(t.duration>0))){var o=t.closest("[data-video-player]");o&&(o.querySelector(".video-seek-input").max=String(t.duration))}},!0);var l=500;function f(r,t){if(clearTimeout(r.bufferingTimer),!t){r.classList.remove("is-buffering"),r.setAttribute("aria-busy","false"),r.querySelector(".video-status").textContent="";return}r.bufferingTimer=setTimeout(function(){var o=r.querySelector("video:not(.video-stand-in)");o.paused||o.readyState>=3||(r.classList.add("is-buffering"),r.setAttribute("aria-busy","true"),r.querySelector(".video-status").textContent="Loading",a(r))},l)}["waiting","stalled"].forEach(function(r){document.addEventListener(r,function(t){var o=t.target instanceof HTMLVideoElement&&!t.target.classList.contains("video-stand-in")?t.target.closest("[data-video-player]"):null;o&&f(o,!0)},!0)}),["playing","canplay","pause","ended","emptied"].forEach(function(r){document.addEventListener(r,function(t){var o=t.target instanceof HTMLVideoElement&&!t.target.classList.contains("video-stand-in")?t.target.closest("[data-video-player]"):null;o&&f(o,!1)},!0)});function s(r){var t=r.target instanceof Element?r.target.closest(".video-seek-input"):null;if(t){var o=t.closest("[data-video-player]"),m=o.querySelector("video:not(.video-stand-in)");i(o,m,Number(t.value)),m.currentTime=Number(t.value)}}document.addEventListener("input",s),document.addEventListener("change",s),document.addEventListener("input",function(r){var t=r.target instanceof Element?r.target.closest(".video-level-input"):null;if(t){var o=t.closest("[data-video-player]"),m=o.querySelector("video:not(.video-stand-in)");o.querySelector(".video-level-groove").style.setProperty("--groove-filled",Number(t.value).toFixed(4)),m.volume=Number(t.value),m.muted=m.volume===0}}),document.addEventListener("pointerdown",function(r){var t=r.target instanceof Element?r.target.closest(".video-seek-input, .video-level-input"):null;t&&t.setAttribute("data-is-dragged","")});function d(r){var t=r.target instanceof Element?r.target.closest(".video-seek-input"):null;if(t){var o=t.closest("[data-video-player]").querySelector("video:not(.video-stand-in)");o.preload==="none"&&(o.preload="auto",o.load(),o.currentTime=Number(t.value))}}document.addEventListener("pointerdown",d),document.addEventListener("keydown",d),["pointerup","pointercancel"].forEach(function(r){document.addEventListener(r,function(){document.querySelectorAll(".video-controls [data-is-dragged]").forEach(function(t){t.removeAttribute("data-is-dragged")})})});var b=2500;function S(r){var t=r.querySelector("video:not(.video-stand-in)");t.paused||r.classList.contains("is-buffering")||r.querySelector(".video-controls [data-is-dragged], .video-controls :focus-visible")||r.classList.add("is-quiet")}function a(r){r.classList.remove("is-quiet"),clearTimeout(r.quietTimer),r.quietTimer=setTimeout(function(){S(r)},b)}document.addEventListener("pointermove",function(r){var t=E(r.target);t&&a(t)}),document.addEventListener("pointerdown",function(r){var t=E(r.target);t&&(t.isWakeTouch=r.pointerType!=="mouse"&&t.classList.contains("is-quiet"),a(t))}),document.addEventListener("pointerout",function(r){var t=E(r.target);t&&r.pointerType==="mouse"&&!(r.relatedTarget instanceof Element&&t.contains(r.relatedTarget))&&(clearTimeout(t.quietTimer),S(t))}),document.addEventListener("focusin",function(r){var t=E(r.target);t&&a(t)})})(),(function(){var E=200;window.zaismaWatch.each("form.find[data-suggest]",function(p){var u=p.querySelector('input[type="search"]'),i=p.querySelector(".find-list"),n=i.querySelector('[role="listbox"]'),l=i.querySelector(".floating-body"),f=p.querySelector(".find-finish"),s=f.firstElementChild,d=f.lastElementChild,b=p.querySelector("template.find-icon"),S=p.querySelector("template.find-cover"),a=i.id.replace(/-list$/,""),r=p.getAttribute("data-suggest"),t=[],o=-1,m=0,w=null,h=new Map,v=window.zaismaFloat(i,{anchor:p,focusOnClose:u,isAnchorWidth:!0,anchorRect:function(){var g=p.getBoundingClientRect(),q=p.closest("body > .top");return q&&g.width<parseFloat(getComputedStyle(i).getPropertyValue("--list-least-width"))?q.getBoundingClientRect():g},onToggle:function(g){u.setAttribute("aria-expanded",String(g)),p.classList.toggle("is-open",g),L()}});function A(){return v.isOpen()}function L(){var g=A()&&(t[o]||t[0]),q=u.value,k=g&&g.getAttribute("data-finish"),C=k&&q&&k.length>q.length&&k.toLowerCase().indexOf(q.toLowerCase())===0&&u.scrollLeft<1;s.textContent=C?q:"",d.textContent=C?k.slice(q.length):""}function P(g){if(o=g,t.forEach(function(k,C){k.classList.toggle("is-active",C===g)}),g>=0){u.setAttribute("aria-activedescendant",t[g].id);var q=t[g];q.offsetTop<l.scrollTop?l.scrollTop=q.offsetTop:q.offsetTop+q.offsetHeight>l.scrollTop+l.clientHeight&&(l.scrollTop=q.offsetTop+q.offsetHeight-l.clientHeight)}else u.removeAttribute("aria-activedescendant");L()}var N=p.closest("body > .top")&&window.matchMedia("(orientation: landscape) and (max-height: 500px) and (max-width: 64em)");function B(){return!!N&&N.matches}function U(){B()||(A()?v.place():v.open(),L())}function W(){v.close(!1),L()}N&&N.addEventListener("change",function(){B()&&W()});function J(g,q){var k=document.createElement("span"),C=q?g.toLowerCase().indexOf(q.toLowerCase()):-1;if(C<0)return k.textContent=g,k;var I=document.createElement("b");return I.textContent=g.slice(C,C+q.length),k.append(g.slice(0,C),I,g.slice(C+q.length)),k}function j(g,q){var k=document.createElement(g);return k.className="select-option flush-row compact find-"+q,k.setAttribute("role","option"),k.id=a+"-row-"+t.length,k.setAttribute("data-cut-line","8"),k}function ne(g,q,k){var C=k.get("finish "+g);return C?(C.replaceChild(J(g,q),C.lastChild),C):(C=j("div","finish-row"),C.setAttribute("data-finish",g),C.findKey="finish "+g,C.append(b.content.cloneNode(!0),J(g,q)),C)}function te(g,q,k){var C=k.get("game "+g.page_url);if(C){var I=C.querySelector(".find-game-words");return I.replaceChild(J(g.title,q),I.firstChild),I.lastChild.textContent=g.fact,C}C=j("a","game"),C.href=g.page_url,C.tabIndex=-1,C.findKey="game "+g.page_url;var H=S.content.firstElementChild.cloneNode(!0),Y=H.querySelector(".cover-picture");if(g.cover_url){var D=Y.querySelector("img");/^\\/img\\/[A-Za-z0-9_-]+$/.test(g.cover_url)?D.srcset=[320,480].map(function($){return g.cover_url+"/w"+$+".webp "+$+"w"}).join(", "):D.removeAttribute("srcset"),D.src=g.cover_url,g.cover_placeholder_data_url&&/^data:image\\/(webp|png|jpeg);base64,[A-Za-z0-9+\\/=]+$/.test(g.cover_placeholder_data_url)&&D.parentElement.style.setProperty("--placeholder","url("+g.cover_placeholder_data_url+")")}else Y.remove(),H.classList.add("is-placeholder");var V=document.createElement("span"),_=document.createElement("span");return V.className="find-game-words",_.className="find-game-fact",_.textContent=g.fact,V.append(J(g.title,q),_),C.append(H,V),C}function Z(g,q){var k=new Map;t.forEach(function(_){_.findKey&&k.set(_.findKey,_)});var C=(g.games||[]).slice(0,3),I=(g.finishes||[]).slice(0,3).map(function(_){return ne(_,q,k)}),H=C.map(function(_){return te(_,q,k)}),Y=I.length+H.length===t.length&&I.concat(H).every(function(_,$){return t[$]===_});if(!Y){var D=n.querySelector(".find-head");D||(D=document.createElement("div"),D.className="find-head words-margin",D.setAttribute("role","presentation"),D.textContent="Games"),n.replaceChildren.apply(n,I.concat(H.length?[D]:[],H)),I.concat(H).forEach(function(_,$){_.id=a+"-row-"+$})}t=I.concat(H);var V=C.findIndex(function(_){return _.title.toLowerCase()===q.toLowerCase()});t.length&&document.activeElement===u?(U(),P(V<0?-1:I.length+V)):(P(-1),W())}function K(){if(!B()){var g=u.value.trim();if(w&&(w.abort(),w=null),!g){t=[],n.textContent="",P(-1),W();return}if(h.has(g)){Z(h.get(g),g);return}w=new AbortController,fetch(r+(r.indexOf("?")<0?"?":"&")+"search_text="+encodeURIComponent(g),{signal:w.signal,headers:{Accept:"application/json"}}).then(function(q){return q.ok?q.json():{finishes:[],games:[]}}).then(function(q){h.set(g,q),u.value.trim()===g&&Z(q,g)}).catch(function(){})}}function re(){var g=t[o]||t[0];!g||!g.hasAttribute("data-finish")||(u.value=g.getAttribute("data-finish"),u.dispatchEvent(new Event("input",{bubbles:!0})))}function T(){var g=A()&&t[o];if(g&&g.tagName==="A"){location.href=g.href;return}g&&(u.value=g.getAttribute("data-finish"),u.dispatchEvent(new Event("input",{bubbles:!0}))),p.requestSubmit()}p.addEventListener("submit",function(){clearTimeout(m),w&&w.abort(),W(),matchMedia("(pointer: coarse)").matches&&u.blur()}),u.addEventListener("input",function(){clearTimeout(m),L(),m=setTimeout(K,E)}),u.addEventListener("scroll",L);function z(){!A()&&u.value.trim()&&(clearTimeout(m),K())}u.addEventListener("focus",z),u.addEventListener("click",z),u.addEventListener("keydown",function(g){var q=g.key;if(q==="ArrowDown"||q==="ArrowUp"){if(g.preventDefault(),!A()){t.length?(U(),P(0)):K();return}P(o<0?q==="ArrowDown"?0:t.length-1:(o+(q==="ArrowDown"?1:-1)+t.length)%t.length)}else q==="Tab"&&!g.shiftKey&&A()&&d.textContent?(g.preventDefault(),re()):q==="Enter"?(g.preventDefault(),T()):q==="Escape"&&A()&&(g.preventDefault(),W())}),u.addEventListener("focusout",function(){setTimeout(function(){document.activeElement!==u&&W()},0)}),i.addEventListener("pointerdown",function(g){g.preventDefault()}),i.addEventListener("pointermove",function(g){var q=g.target.closest(".select-option"),k=t.indexOf(q);k>=0&&k!==o&&P(k)}),i.addEventListener("click",function(g){var q=g.target.closest(".select-option"),k=t.indexOf(q);k<0||(g.preventDefault(),P(k),T())})})})(),(function(){var E=matchMedia("(prefers-reduced-motion: reduce)").matches;function p(i){var n=0;i.querySelectorAll('[data-filter-panel]:not([data-filter-panel=""])').forEach(function(S){var a=S.querySelector('a[role="menuitem"]');a&&a.getAttribute("aria-current")!=="page"&&n++});var l=document.querySelector('[aria-controls="'+i.id+'"]'),f=l&&l.querySelector(".slab"),s=l&&l.querySelector(".cut-count");n&&!s&&f&&(s=document.createElement("span"),s.className="cut-count",f.appendChild(s)),s&&(n?s.textContent=String(n):s.remove());var d=i.querySelector('[data-filter-panel=""] a[role="menuitem"][data-keeps-open]'),b=d&&d.previousElementSibling;d&&(d.hidden=!n),b&&b.matches("hr")&&(b.hidden=!n),i.zaismaPlace&&i.zaismaPlace()}function u(i,n,l){var f=null,s=i.querySelector("[data-filter-panel]:not([hidden])");if(i.querySelectorAll("[data-filter-panel]").forEach(function(S){S.hidden=S.getAttribute("data-filter-panel")!==n,S.hidden||(f=S)}),i.zaismaPlace&&i.zaismaPlace(),f&&s&&f!==s&&!E&&f.animate&&f.animate([{transform:"translateX("+(n?12:-12)+"px)",opacity:0},{transform:"none",opacity:1}],{duration:180,easing:"cubic-bezier(0.2, 0.8, 0.2, 1)"}),l&&f){var d=n===""&&i.lastGroupName?i.querySelector('[data-filter-opens="'+i.lastGroupName+'"]'):null,b=d||f.querySelector('[aria-current="page"]')||f.querySelector('[role="menuitem"]');b&&b.focus({preventScroll:!0})}}window.zaismaWatch.each(".filter-menu",function(i){i.addEventListener("click",function(n){var l=n.target.closest('[data-filter-panel=""] a[role="menuitem"][data-keeps-open]');if(l){i.querySelectorAll('[data-filter-panel]:not([data-filter-panel=""])').forEach(function(o){var m=o.querySelector('a[role="menuitem"]'),w=i.querySelector(".dropdown-tick");if(!(!m||m.getAttribute("aria-current")==="page")){w=w&&w.cloneNode(!0),o.querySelectorAll('[aria-current="page"]').forEach(function(A){A.removeAttribute("aria-current");var L=A.querySelector(".dropdown-tick");L&&L.remove()}),m.setAttribute("aria-current","page"),w&&m.appendChild(w);var h=i.querySelector('[data-filter-opens="'+o.getAttribute("data-filter-panel")+'"] .filter-picked'),v=m.querySelector("span");h&&v&&(h.textContent=v.textContent)}}),p(i);var f=i.querySelector(".filter-group");f&&f.focus({preventScroll:!0}),i.zaismaPlace&&i.zaismaPlace();return}var s=n.target.closest('[data-filter-panel]:not([data-filter-panel=""]) [role="menuitem"][data-keeps-open]');if(s){var d=s.closest("[data-filter-panel]"),t=d.getAttribute("data-filter-panel"),b=i.querySelector(".dropdown-tick");b=b&&b.cloneNode(!0),d.querySelectorAll('[aria-current="page"]').forEach(function(m){m.removeAttribute("aria-current");var w=m.querySelector(".dropdown-tick");w&&w.remove()}),s.setAttribute("aria-current","page"),b&&s.appendChild(b);var S=i.querySelector('[data-filter-opens="'+t+'"]'),a=s.querySelector("span");S&&a&&S.querySelector(".filter-picked")&&(S.querySelector(".filter-picked").textContent=a.textContent),i.lastGroupName=t,p(i),u(i,"",!0);return}var r=n.target.closest("[data-filter-opens]");if(r){var t=r.getAttribute("data-filter-opens");t&&(i.lastGroupName=t),u(i,t,n.detail===0)}}),i.addEventListener("keydown",function(n){var l=document.activeElement;n.key==="ArrowRight"&&l&&l.matches(".filter-group")&&(n.preventDefault(),i.lastGroupName=l.getAttribute("data-filter-opens"),u(i,i.lastGroupName,!0)),n.key==="ArrowLeft"&&l&&l.closest('[data-filter-panel]:not([data-filter-panel=""])')&&(n.preventDefault(),u(i,"",!0))}),i.addEventListener("beforetoggle",function(n){n.newState==="open"&&u(i,"",!1)})})})(),(function(){var E=4e3,p=8e3,u=1e4,i=3,n=300,l=2,f=300,s={done:'<div class="notice glass glass-bar done" role="status" data-notice="done" data-notice-urgency="information" data-glass data-glass-corners="strip"><svg class="edge" aria-hidden="true"></svg><svg class="ico" viewBox="0 0 20 20" aria-hidden="true" stroke-width="2.2"><path d="M4.2 10.4l3.9 3.9 7.7-8.6"/></svg><span class="notice-text words-margin beside-controls compact"></span></div>',undo:'<div class="notice glass glass-bar done" role="status" data-notice="done" data-notice-urgency="information" data-notice-undo data-glass data-glass-corners="strip"><svg class="edge" aria-hidden="true"></svg><svg class="ico" viewBox="0 0 20 20" aria-hidden="true" stroke-width="2.2"><path d="M4.2 10.4l3.9 3.9 7.7-8.6"/></svg><span class="notice-text words-margin beside-controls"></span><form class="notice-undo" method="post" action="#"><button class="shell tertiary-btn" type="submit"><span class="face flush-row" data-cut-line="10"><svg class="cut-line" aria-hidden="true"><polygon/></svg><span class="tertiary-words"><span class="tertiary-label one-line">Undo</span></span><span class="tertiary-line light-fill across light-line light-glint" aria-hidden="true"></span></span></button></form></div>',problem:'<div class="notice glass glass-bar problem" role="alert" data-notice="problem" data-notice-urgency="information" data-glass data-glass-corners="strip"><svg class="edge" aria-hidden="true"></svg><svg class="ico" viewBox="0 0 20 20" aria-hidden="true"><path d="M10 2.8 18.2 17H1.8z"/><path d="M10 8v4.2M10 14.6v.1"/></svg><span class="notice-text words-margin beside-controls compact"></span><button class="shell tertiary-btn icon-only small" data-layer-close="" type="button" aria-label="Close"><span class="face flush-row" data-cut-line="9"><svg class="cut-line" aria-hidden="true"><polygon/></svg><span class="tertiary-words"><svg class="ico" viewBox="0 0 20 20" aria-hidden="true" stroke-width="1.8"><path d="M5 5l10 10M15 5 5 15"/></svg></span></span></button></div>',card:'<aside class="playing-card glass" id="layer-card" role="status" data-glass data-glass-corners="pane" hidden><svg class="edge" aria-hidden="true"></svg><div class="playing-card-in"><div class="layout-stack"><div class="stack-cell is-words"><p></p></div></div></div></aside>',urgent:'<aside class="playing-card glass urgent-card" id="layer-urgent" role="alert" data-notice-urgency="urgent" popover="manual" data-glass data-glass-corners="pane"><svg class="edge" aria-hidden="true"></svg><div class="playing-card-in"><div class="pane-parts"><div class="pane-head" data-control-height="small"><div class="pane-head-words"><h2 class="playing-card-title"></h2></div><div class="pane-head-end"><button class="shell tertiary-btn icon-only small" data-layer-close="" type="button" aria-label="Close"><span class="face flush-row" data-cut-line="9"><svg class="cut-line" aria-hidden="true"><polygon/></svg><span class="tertiary-words"><svg class="ico" viewBox="0 0 20 20" aria-hidden="true" stroke-width="1.8"><path d="M5 5l10 10M15 5 5 15"/></svg></span></span></button></div></div><div class="pane-body"><p class="urgent-card-text words-margin"></p></div></div></div></aside>'},d={urgent:0,ask:1,information:2},b=document.documentElement,S=function(){return b.classList.contains("is-playing")},a=function(){return window.matchMedia&&matchMedia("(prefers-reduced-motion: reduce)").matches},r=parseFloat(getComputedStyle(b).getPropertyValue("--gap-control-stack"))||8,t=[],o=0,m=-1/0,w=null,h=null,v=[];function A(e){var c=e.getAttribute("data-notice-urgency");return c==="information"||c==="ask"||c==="urgent"?c:e.querySelector("a, button, input, select, textarea")?"ask":"information"}function L(e){for(var c=0;c<t.length;c++)if(t[c].el===e)return t[c];return null}function P(e){return{element:e.el,leave:function(){k(e)}}}function N(e){return e.order=o++,e.queuedAtMs=Date.now(),e.isShown=!1,t.push(e),W(),P(e)}var B=function(e,c){return d[e.noticeUrgency]-d[c.noticeUrgency]||e.order-c.order},U=function(e){return e.noticeUrgency==="information"&&e.tone!=="problem"};function W(){clearTimeout(w),w=null;var e=Date.now(),c=S(),y=v.length>0||!!(document.fullscreenElement&&document.fullscreenElement!==document.documentElement),x=t.filter(function(X){return!X.isShown}).sort(B);x.forEach(function(X){X.noticeUrgency==="urgent"&&te(X)}),x=x.filter(function(X){return X.noticeUrgency!=="urgent"});var M=t.filter(function(X){return X.isShown&&X.noticeUrgency!=="urgent"&&X.isOverGame===c}).length,F=c?y?0:1:i,O=e-m;if(c&&F&&!M&&x.length&&O<n)return w=setTimeout(W,n-O),I();for(var R=0;R<x.length&&M<F;R++){var G=x[R];if(c&&U(G)&&e-G.queuedAtMs>u){J(G);continue}ne(G),M++}I()}function J(e){q(e);var c=t.indexOf(e);c!==-1&&t.splice(c,1),e.el&&!e.isMade&&e.el.matches(".notice")&&e.el.remove()}function j(e){var c=document.createElement("template"),y=e.noticeUrgency==="urgent"?"urgent":S()?"card":e.undoAction?"undo":e.tone==="problem"?"problem":"done";c.innerHTML=s[y];var x=c.content.firstElementChild;if(x.id="layer-"+e.order,x.setAttribute("data-notice-urgency",e.noticeUrgency),y==="urgent"){var M=x.querySelector(".playing-card-title");M&&M.remove(),x.querySelector(".urgent-card-text").textContent=e.text}else y==="card"?x.querySelector("p").textContent=e.text:(x.querySelector(".notice-text").textContent=e.text,y==="undo"&&x.querySelector("form").setAttribute("action",e.undoAction));return x.zaismaLayer=e,(document.querySelector("main")||document.body).appendChild(x),x}function ne(e){e.el||(e.el=j(e)),e.isShown=!0,e.isOverGame=S();var c=e.el;c.classList.remove("is-leaving"),c.hidden=!1,g(e),(U(e)||T(e))&&z(e),c.matches(".notice")&&C()}function te(e){(e.sheetsToClose||[]).forEach(function(c){var y=document.getElementById(c);y&&y.open&&y.close()}),e.el||(e.el=j(e)),e.isShown=!0,e.isOverGame=S(),e.el.hidden=!1,Z(e.el)}function Z(e){e.showPopover&&(e.matches(":popover-open")&&e.hidePopover(),e.showPopover())}function K(){t.forEach(function(e){e.isShown&&e.noticeUrgency==="urgent"&&Z(e.el)})}var re=window.matchMedia?window.matchMedia("(max-width: 760px), (orientation: landscape) and (max-height: 500px)"):{matches:!1};function T(e){return re.matches&&e.el.hasAttribute("data-notice-folds")}function z(e){if(clearTimeout(e.timer),T(e)){e.timer=setTimeout(function(){var c=e.el.querySelector("[data-notice-close]");c&&c.click()},p);return}e.timer=setTimeout(function(){k(e)},e.undoAction||e.el.hasAttribute("data-notice-undo")?p:E)}function g(e){var c=e.el;if(!c.zaismaHeld){c.zaismaHeld=!0;var y=function(){var x=L(c);x&&clearTimeout(x.timer)};c.addEventListener("pointerenter",y),c.addEventListener("pointerdown",y),c.addEventListener("pointerleave",function(){var x=L(c);x&&x.isShown&&(U(x)||T(x))&&z(x)})}}function q(e){e.isOverGame&&e.el&&e.el.matches(".playing-card:not(.urgent-card), .urgent-card[data-notice-marks]")&&window.dispatchEvent(new CustomEvent("zaisma:card-left",{detail:{card:e.el}}))}function k(e){var c=t.indexOf(e);if(c!==-1){if(q(e),t.splice(c,1),clearTimeout(e.timer),e.isShown){var y=e.el;e.isShown=!1,y.hidePopover&&y.matches(":popover-open")&&y.hidePopover(),y.matches(".notice")?(y.classList.add("is-leaving"),setTimeout(function(){y.remove(),C()},f)):(y.hidden=!0,e.isMade&&setTimeout(function(){y.remove()},f)),e.isOverGame&&e.noticeUrgency!=="urgent"&&(m=Date.now())}W()}}function C(){var e=0;t.filter(function(c){return c.isShown&&c.el.matches(".notice")}).sort(function(c,y){return c.order-y.order}).forEach(function(c){c.el.style.setProperty("--notice-shift",e+"px"),e+=c.el.offsetHeight+r})}function I(){var e=v.length?"sheet":t.some(function(c){return c.isShown&&c.el.matches(".playing-card")})?"card":null;e!==h&&(h=e,pe.coveredBy=e,window.dispatchEvent(new CustomEvent("zaisma:covered",{detail:{coveredBy:e}})))}function H(e){if(!(e.zaismaLayer||e.classList.contains("in-place"))){var c={el:e,noticeUrgency:A(e),tone:e.getAttribute("data-notice")==="problem"?"problem":"done"};e.zaismaLayer=c,e.hidden=!0,N(c)}}function Y(e){e.querySelectorAll&&(e.matches("[data-notice]")&&H(e),e.querySelectorAll("[data-notice]").forEach(H))}Y(document.body),window.zaismaWatch&&window.zaismaWatch.page(function(e){e.forEach(function(c){c.addedNodes.forEach(Y)})});var D=window.MutationObserver?new MutationObserver(function(e){e.forEach(function(c){var y=L(c.target);y&&y.isShown&&c.target.hidden&&k(y)})}):null;document.addEventListener("click",function(e){var c=e.target;if(c.closest){var y=c.closest("[data-layer-close]"),x=y&&y.closest("[data-notice], .urgent-card");if(!x){var M=c.closest("a, button");x=M&&M.closest(".urgent-card")}var F=x&&L(x);F&&k(F)}}),document.addEventListener("fullscreenchange",function(){K(),W()});var V=HTMLDialogElement.prototype.close,_=HTMLDialogElement.prototype.showModal;function $(e){return e.open&&e.matches(".sheet")&&!e.classList.contains("in-place")}function ue(e){var c=v.indexOf(e);c!==-1&&(v.splice(c,1),W())}function de(e,c){if(e.classList.contains("is-leaving"))return;e.classList.add("is-leaving"),ue(e);var y=setTimeout(M,400);function x(F){F.target===e&&F.propertyName==="opacity"&&M()}function M(){clearTimeout(y),e.removeEventListener("transitionend",x),e.classList.contains("is-leaving")&&(e.classList.remove("is-leaving"),V.apply(e,c))}e.addEventListener("transitionend",x)}var me=window.matchMedia?window.matchMedia("(min-width: 761px), (orientation: landscape) and (max-height: 500px)"):{matches:!1},ee=new Map,ve=8,fe=16,ae=null,be=!(window.CSS&&CSS.supports("overlay","auto"));document.addEventListener("click",function(e){var c=e.target.closest&&e.target.closest("button, a, [role='button']");ae=c?{button:c,at:performance.now()}:null},!0),HTMLDialogElement.prototype.showModal=function(){var e=this.open,c=this.matches(".sheet")&&!this.classList.contains("in-place");if(!e&&c){if(v.length>=l){var y=v[v.length-1];console.warn("Sheets go two deep at most: #"+this.id+" replaces #"+y.id+"."),ue(y),y.classList.remove("is-leaving"),V.apply(y)}this.zaismaOpener=document.activeElement}!e&&c&&this.classList.toggle("is-over-sheet",v.length>0);var x=!e&&c&&be&&!a();if(x&&this.classList.add("is-arriving"),_.apply(this,arguments),x){var M=this;(function F(O,R){requestAnimationFrame(function(G){if(!(R&&G-R<25)&&O<30)return F(O+1,G);M.classList.remove("is-arriving")})})(0,0)}e||!c||(v.push(this),Le(this),oe(this),Ee(this),K(),W())};function Ee(e){window.zaismaInput&&window.zaismaInput.isKeyboard()&&!e.hasAttribute("data-takes-own-focus")||(e.setAttribute("tabindex","-1"),e.focus({preventScroll:!0}))}function Le(e){if(!e.matches(".placement-docked")){var c=ae&&performance.now()-ae.at<2e3&&ae.button.isConnected?ae.button:null;!c||!e.classList.contains("is-compact")||e.matches(".in-place, .store-panel, .placement-middle, .is-picture")||c.closest("[popover]")||e.contains(c)||c.closest("dialog[open]")||(ee.set(e,{opener:c,rect:c.getBoundingClientRect(),isOnPage:!!(window.zaismaIsOnPage&&window.zaismaIsOnPage(c,e))}),e.classList.add("is-anchored"),e.classList.toggle("is-on-page",ee.get(e).isOnPage),se&&se.observe(e))}}function oe(e){var c=ee.get(e);if(!(!c||!e.open)){if(!e.classList.contains("is-compact")){e.classList.remove("is-anchored","is-above","is-at-end","is-on-page"),e.style.removeProperty("--sheet-left"),e.style.removeProperty("--sheet-top");return}e.classList.toggle("is-on-page",c.isOnPage);var y=c.opener.isConnected?c.opener.getBoundingClientRect():c.rect;y.width||y.height?c.rect=y:y=c.rect;var x=document.documentElement.clientWidth,M=window.innerHeight;if(y.bottom<0||y.top>M||y.right<0||y.left>x){e.close();return}e.style.setProperty("--sheet-max-height",M-2*fe+"px");var F=Math.max(y.top,M-y.bottom)-ve-fe;if(e.classList.toggle("is-anchored",me.matches||e.offsetHeight<=F),!!e.classList.contains("is-anchored")){var O=window.zaismaPlace(y,{width:e.offsetWidth,height:e.offsetHeight},{roomRect:{left:0,top:0,right:x,bottom:M},gapPx:ve,edgePx:fe}),R=e.classList.contains("is-on-page");e.style.setProperty("--sheet-left",Math.round(O.leftPx+(R?window.scrollX:0))+"px"),e.style.setProperty("--sheet-top",Math.round(O.topPx+(R?window.scrollY:0))+"px"),e.classList.toggle("is-above",O.isAbove),e.classList.toggle("is-at-end",O.isAtEnd)}}}function ge(){ee.forEach(function(e,c){oe(c)})}var se=window.ResizeObserver?new ResizeObserver(function(e){e.forEach(function(c){ee.has(c.target)&&oe(c.target)})}):null;window.addEventListener("resize",ge),window.addEventListener("scroll",ge,{passive:!0,capture:!0}),document.addEventListener("close",function(e){var c=e.target;if(!(!c.matches||!c.matches(".sheet"))){if(c.isBeingRaised){c.isBeingRaised=!1,e.stopImmediatePropagation();return}ue(c),Ae(c);var y=c.zaismaOpener,x=v[v.length-1];c.zaismaOpener=null,x&&(y&&y.isConnected&&x.contains(y)?y:x).focus({preventScroll:!0}),ee.has(c)&&(ee.delete(c),se&&se.unobserve(c),c.classList.remove("is-anchored","is-above","is-at-end","is-on-page"),c.style.removeProperty("--sheet-left"),c.style.removeProperty("--sheet-top"),c.style.removeProperty("--sheet-max-height"))}},!0),HTMLDialogElement.prototype.close=function(){$(this)?de(this,arguments):V.apply(this,arguments)},document.addEventListener("cancel",function(e){e.target.matches&&$(e.target)&&(e.preventDefault(),de(e.target,[]))},!0),document.addEventListener("submit",function(e){if(!e.defaultPrevented){var c=e.submitter&&e.submitter.getAttribute("formmethod")||e.target.getAttribute("method"),y=e.target.closest("dialog");!c||c.toLowerCase()!=="dialog"||!y||!$(y)||(e.preventDefault(),de(y,e.submitter&&e.submitter.hasAttribute("value")?[e.submitter.value]:[]))}}),document.addEventListener("click",function(e){if(e.target.closest){var c=e.target.closest("[aria-controls]:not([aria-expanded])"),y=c&&document.getElementById(c.getAttribute("aria-controls"));if(y&&y.matches("dialog.sheet")){e.preventDefault(),y.classList.contains("is-leaving")&&(y.classList.remove("is-leaving"),v.indexOf(y)===-1&&v.push(y),W()),y.open||y.showModal();return}var x=e.target.closest("[data-sheet-step-to]"),M=x&&x.closest("dialog");if(M){e.preventDefault(),ce(M,x.getAttribute("data-sheet-step-to"));return}var F=e.target.closest("[data-layer-show]");if(F){e.preventDefault(),pe.say({cardId:F.getAttribute("data-layer-show")});return}var O=e.target.closest("[data-sheet-back]");if(O){var R=O.closest("dialog");R&&R.zaismaSteps&&R.zaismaSteps.length>1&&ce(R,R.zaismaSteps[R.zaismaSteps.length-2]);return}var G=e.target.closest("[data-sheet-tab-to]"),X=G&&G.closest("dialog");if(X){we(X,G.getAttribute("data-sheet-tab-to"));return}var ie=e.target.closest("dialog.light-box[open]");if(ie&&v[v.length-1]===ie&&!e.target.closest("a, button, input, video, .floating-pane, .light-box.on-pane .glass-pane")){ie.close();return}var Q=e.target.matches("dialog.sheet[open]")?e.target:null;if(!(!Q||!e.detail||v[v.length-1]!==Q)){var le=Q.getBoundingClientRect();(e.clientX<le.left||e.clientX>le.right||e.clientY<le.top||e.clientY>le.bottom)&&Q.close()}}});function Se(e){if(!(!me.matches||!e.open||e.classList.contains("in-place"))){var c=e.offsetHeight;c>(parseFloat(e.style.minHeight)||0)&&(e.style.minHeight=c+"px")}}function he(e,c,y,x){c==="data-sheet-tab"&&Se(e);var M=null;if(e.querySelectorAll("["+c+"]").forEach(function(O){var R=O.getAttribute(c)===y;O.hidden=!R,R&&(M=O)}),M){M.classList.remove("is-from-end","is-from-start"),x&&!a()&&(M.offsetWidth,M.classList.add(x>0?"is-from-end":"is-from-start"));var F=function(){M.querySelectorAll("[data-cut-line]").forEach(function(O){O.redrawCut&&O.redrawCut()})};M.classList.contains("is-from-end")||M.classList.contains("is-from-start")?M.addEventListener("animationend",F,{once:!0}):window.requestAnimationFrame&&requestAnimationFrame(F)}return M}function ye(e,c){var y=e.querySelector("["+c+"]");return y?y.getAttribute(c):null}function ce(e,c,y){var x=y&&y.isBackShown===!1?[]:e.zaismaSteps||[ye(e,"data-sheet-step")],M=x.indexOf(c);M===-1?x.push(c):x.length=M+1,e.zaismaSteps=x;var F=e.open?e.getBoundingClientRect():null,O=he(e,"data-sheet-step",c,e.open?M===-1?1:-1:0);if(O){if(e.querySelector("[data-sheet-step-compact]")){var R=O.hasAttribute("data-sheet-step-compact");if(R!==e.classList.contains("is-compact")&&(e.classList.toggle("is-compact",R),e.classList.toggle("is-task-step",!R),oe(e),F&&!a()&&e.animate)){var G=e.getBoundingClientRect(),X=Math.round(F.left+F.width/2-G.left-G.width/2)+"px "+Math.round(F.top+F.height/2-G.top-G.height/2)+"px";e.animate([{translate:X},{translate:"0 0"}],{duration:300,easing:"cubic-bezier(.2, .8, .2, 1)"})}}var ie=O.querySelector("[data-sheet-back]");ie&&(ie.hidden=x.length<2);var Q=O.querySelector(".sheet-title");Q&&Q.id&&e.setAttribute("aria-labelledby",Q.id)}}function Ae(e){if(e.style.minHeight="",e.zaismaSteps){e.zaismaSteps=null;var c=ye(e,"data-sheet-step");ce(e,c),e.zaismaSteps=null}var y=e.querySelector("[data-sheet-tab-opening]")||e.querySelector("[data-sheet-tab-to]");y&&we(e,y.getAttribute("data-sheet-tab-to"))}function we(e,c){he(e,"data-sheet-tab",c,0);var y=e.querySelector('[data-sheet-tab-to="'+c+'"]'),x=y&&y.closest(".tab-switch");x&&x.pickTab&&x.pickTab(y)}var pe=window.zaismaLayers={coveredBy:null,openSheets:v,raiseOpenSheets:function(){var e=document.activeElement;v.forEach(function(c){c.isBeingRaised=!0,c.style.transition="none",V.apply(c),_.apply(c),requestAnimationFrame(function(){c.style.transition=""})}),e&&v.length&&e.focus({preventScroll:!0})},say:function(e){var c=e.cardId?document.getElementById(e.cardId):null;if(e.cardId&&!c)return null;var y=c?L(c):t.filter(function(O){return O.isMade&&O.text===e.text})[0];if(y)return P(y);var x=e.noticeUrgency||(c?A(c):"information"),M=e.sheetsToClose||(c&&c.getAttribute("data-sheets-to-close")?c.getAttribute("data-sheets-to-close").split(" "):[]),F={el:c,text:e.text||"",noticeUrgency:x,tone:e.tone==="problem"?"problem":"done",undoAction:e.undoAction||null,sheetsToClose:M,isMade:!c};return c&&(c.zaismaLayer=F,D&&D.observe(c,{attributes:!0,attributeFilter:["hidden"]})),N(F)},show:function(e){return e?pe.say({cardId:e.id}):null},leave:function(e){var c=e&&L(e.element||e);c&&k(c)},step:ce};W()})(),(function(){var E=450;window.zaismaWatch.each("form[data-steps]",function(p){var u=Array.prototype.slice.call(p.querySelectorAll(":scope > .step-bodies > .step-body")),i=Array.prototype.slice.call(p.closest(".pane-in").querySelectorAll(".step-line > li")),n=p.querySelector(":scope > .layout-row"),l=n.querySelector(".cut-btn"),f=n.querySelector(".run-wrap"),s=f.querySelector(".run-words:not(.label-busy)"),d=Number(p.getAttribute("data-steps"))||0,b=u.length-1,S="Next",a=p.getAttribute("data-finish-label"),r=0;function t(m){i.forEach(function(w,h){w.classList.remove("is-leaving","is-waiting"),w.classList.toggle("is-done",h<m),w.classList.toggle("is-current",h===m),h===m?w.setAttribute("aria-current","step"):w.removeAttribute("aria-current")})}function o(m){var w=d;d=Math.max(0,Math.min(b,m)),u.forEach(function(v,A){v.classList.toggle("is-away",A!==d)}),clearTimeout(r),d<w&&!window.matchMedia("(prefers-reduced-motion: reduce)").matches?(i.forEach(function(v,A){A>d&&(v.classList.contains("is-current")||v.classList.contains("is-done"))&&(v.classList.remove("is-current","is-done"),v.classList.add("is-leaving")),v.removeAttribute("aria-current")}),i[d].classList.remove("is-done"),i[d].classList.add("is-current","is-waiting"),i[d].setAttribute("aria-current","step"),r=setTimeout(function(){t(d)},E)):t(d),l.hidden=d===0,s&&(s.textContent=d===b?a:S);var h=u[d].querySelector("input, select, textarea, button");h&&document.activeElement&&p.contains(document.activeElement)&&h.focus({preventScroll:!0})}p.goToStep=o,l.addEventListener("click",function(){o(d-1)}),p.addEventListener("submit",function(m){if(d!==b){m.preventDefault();for(var w=u[d].querySelectorAll("input, select, textarea"),h=0;h<w.length;h++)if(!w[h].checkValidity()){w[h].reportValidity();return}o(d+1)}})})})(),(function(){var E=["purchase_pin","password","passkey"],p=6,u={purchase_pin:"Enter all "+p+" digits of your purchase PIN.",password:"Enter your password."},i=new WeakMap;function n(a,r){return document.getElementById(a+"-"+r)}function l(a,r){var t=document.getElementById(a).dataset.method==="purchase_pin",o=n(a,"problem");o.hidden=t||!r,o.querySelector("p").textContent=t?"":r||"",window.zaismaPinField.setError(n(a,"pin-field"),t?r:"")}function f(a,r,t){var o=t.method;n(r,"reason").querySelector("p").textContent=t.options.reason||"",n(r,"pin").hidden=o!=="purchase_pin",n(r,"password").hidden=o!=="password",E.forEach(function(w){var h=n(r,"way-"+w);h.hidden=w===o||t.methods.indexOf(w)===-1,h.disabled=t.isBusy}),n(r,"go-cell").hidden=o==="purchase_pin";var m=n(r,"go");m.querySelector(".label-idle").textContent=o==="passkey"?"Use your passkey":"Confirm",t.isBusy?m.setAttribute("aria-busy","true"):m.removeAttribute("aria-busy"),m.disabled=t.isBusy,window.zaismaPinField.setDisabled(n(r,"pin-field"),t.isBusy&&o==="purchase_pin"),a.dataset.method=o,n(r,"face").dataset.method=o}function s(a){window.zaismaPinField.clear(n(a,"pin-field")),n(a,"password-field").value=""}function d(a,r){r.method==="purchase_pin"?window.zaismaPinField.focus(n(a,"pin-field")):r.method==="password"&&n(a,"password-field").focus({preventScroll:!0})}async function b(a,r,t){if(!(t.isBusy||i.get(a)!==t)){var o=t.method,m;if(l(r,""),o==="passkey"){t.isBusy=!0,f(a,r,t);var w=await window.zaismaPasskeyTap(t.options.passkeyPurpose);if(w.error)return t.isBusy=!1,f(a,r,t),l(r,w.error);m={method:"passkey",passkey_tap:w.tap}}else{var h=o==="purchase_pin"?window.zaismaPinField.digits(n(r,"pin-field")):n(r,"password-field").value;if(!h||o==="purchase_pin"&&h.length<p)return l(r,u[o]);m=o==="purchase_pin"?{method:o,purchase_pin:h}:{method:o,password:h},t.isBusy=!0,f(a,r,t)}var v;try{v=await t.options.send(m)}catch{v={ok:!1,message:"Zaisma didn't answer. Check your connection and try again."}}if(t.isBusy=!1,v&&v.ok){t.isDone=!0,s(r),f(a,r,t),a.close(),t.options.onConfirmed();return}var A=v&&v.removed_methods||[];t.methods=t.methods.filter(function(L){return A.indexOf(L)===-1}),t.methods.indexOf(t.method)===-1&&(t.method=t.methods[0]||t.method),s(r),f(a,r,t),l(r,v&&v.message||"That didn't work. Try again."),d(r,t)}}function S(a,r){var t=function(){return i.get(a)};n(r,"go").addEventListener("click",function(){var o=t();o&&b(a,r,o)}),E.forEach(function(o){n(r,"way-"+o).addEventListener("click",function(){var m=t();!m||m.isBusy||m.methods.indexOf(o)===-1||(m.method=o,s(r),l(r,""),f(a,r,m),d(r,m))})}),a.addEventListener("zaisma:pin-complete",function(){var o=t();o&&o.method==="purchase_pin"&&b(a,r,o)}),a.addEventListener("keydown",function(o){if(!(o.key!=="Enter"||!(o.target instanceof HTMLInputElement))){o.preventDefault();var m=t();m&&b(a,r,m)}}),a.addEventListener("cancel",function(o){var m=t();m&&m.isBusy&&o.preventDefault()}),a.addEventListener("close",function(){var o=t();i.delete(a),s(r),o&&!o.isDone&&o.options.onCancelled&&o.options.onCancelled()})}window.zaismaConfirmItsYou=function(a,r){var t=document.getElementById(a);if(!t)return!1;if(t.open)return!0;var o=r.methods.filter(function(h){return h!=="passkey"||window.PublicKeyCredential&&window.zaismaPasskeyTap});if(!o.length)return!1;var m={options:r,methods:o,method:o[0],isBusy:!1,isDone:!1};t.dataset.confirmWired||(t.dataset.confirmWired="1",S(t,a)),i.set(t,m),s(a),l(a,""),f(t,a,m),t.classList.remove("is-leaving");var w=!navigator.userActivation||navigator.userActivation.isActive;return t.showModal(),m.method==="passkey"&&w?b(t,a,m):d(a,m),!0}})(),(function(){document.addEventListener("click",function(l){var f=l.target.closest&&l.target.closest("[data-load-more] > a.shell[href]");if(!(!f||l.button!==0||l.metaKey||l.ctrlKey||l.shiftKey||l.altKey)){var s=f.parentElement,d=s.getAttribute("data-load-more").split(" "),b=document.getElementById(d[0]),S=s.querySelector(".load-more-words");b&&(l.preventDefault(),f.getAttribute("aria-busy")!=="true"&&window.zaismaWait(f,fetch(f.href,{headers:{accept:"text/html"},credentials:"same-origin"}).then(function(a){if(!a.ok)throw new Error(String(a.status));return a.text()}).then(function(a){var r=new DOMParser().parseFromString(a,"text/html");if(!r.getElementById(b.id)){location.href=f.href;return}d.forEach(function(m){var w=document.getElementById(m),h=r.getElementById(m);if(!(!w||!h||!h.children.length)){Array.prototype.slice.call(h.children).forEach(function(A){w.appendChild(document.importNode(A,!0))}),w.dispatchEvent(new Event("scroll"));var v=w.closest("[hidden]");v&&(v.hidden=!1)}});var t=r.querySelector("[data-load-more]");if(t){var o=document.importNode(t,!0);s.replaceWith(o),n(o)}else s.remove()}).catch(function(){s.classList.add("is-failed"),S&&(S.textContent="That didn't load. Check your connection, then try again.",S.hidden=!1)})))}});var E="IntersectionObserver"in window?new IntersectionObserver(function(l){l.forEach(function(f){var s=f.target.querySelector("a.shell[href]");f.isIntersecting&&s&&!f.target.classList.contains("is-failed")&&s.click()})},{rootMargin:"100% 0px"}):null,p=[],u=["scroll","wheel","touchmove"];function i(){p&&(p.forEach(function(l){E.observe(l)}),p=null,u.forEach(function(l){removeEventListener(l,i,!0)}))}function n(l){!E||!l.hasAttribute("data-loads-on-scroll")||(p?p.push(l):E.observe(l))}document.querySelectorAll("[data-loads-on-scroll]").forEach(n),E&&(u.forEach(function(l){addEventListener(l,i,{capture:!0,passive:!0})}),window.scrollY>0&&i()),window.zaismaLoadMore={watch:n}})(),(function(){var E=location.pathname+location.search;function p(n,l){var f=n.getAttribute("data-list-pages"),s=document.getElementById(f),d=l.getElementById(f),b=l.querySelector('[data-list-pages="'+CSS.escape(f)+'"]');if(!s||!d||!b)return!1;var S=n.querySelector(".list-foot-words"),a=b.querySelector(".list-foot-words");if(S.textContent===a.textContent)return!0;s.replaceChildren.apply(s,Array.prototype.map.call(d.childNodes,function(o){return document.importNode(o,!0)}));var r=s.closest(".scrolls, .table-scroll");r&&(r.scrollTop=0,r.dispatchEvent(new Event("scroll"))),S.textContent=a.textContent,n.classList.remove("is-failed");var t=b.querySelectorAll("a, button");return n.querySelectorAll("a, button").forEach(function(o,m){var w=t[m];if(o.zaismaSettling&&(o.zaismaSettling.disconnect(),o.zaismaSettling=null),o.tagName===w.tagName){w.hasAttribute("href")&&o.setAttribute("href",w.getAttribute("href"));return}o.removeAttribute("href");function h(){var A=o===document.activeElement,L=document.importNode(w,!0);L.classList.add("is-arriving"),o.replaceWith(L),A&&n.querySelector("a")&&n.querySelector("a").focus()}function v(){return o.getAttribute("aria-busy")!=="true"&&!o.querySelector(".waiting-glint")}if(v()){h();return}o.zaismaSettling=new MutationObserver(function(){v()&&(o.zaismaSettling.disconnect(),o.zaismaSettling=null,h())}),o.zaismaSettling.observe(o,{attributes:!0,attributeFilter:["aria-busy"],childList:!0,subtree:!0})}),!0}var u={headers:{accept:"text/html"},credentials:"same-origin"};function i(n){if(!n.ok)throw new Error(String(n.status));return n.text().then(function(l){var f=new DOMParser().parseFromString(l,"text/html"),s=!1;return document.querySelectorAll("[data-list-pages]").forEach(function(d){p(d,f)&&(s=!0)}),s})}document.addEventListener("click",function(n){var l=n.target.closest&&n.target.closest("[data-list-pages] a[href]");if(!(!l||n.button!==0||n.metaKey||n.ctrlKey||n.shiftKey||n.altKey)){n.preventDefault();var f=l.closest("[data-list-pages]"),s=l.href,d=new URL(s);d.searchParams.set("only_list_id",f.getAttribute("data-list-pages")),window.zaismaWait(l,fetch(d,u).then(i)).then(function(b){if(!b){location.href=s;return}history.pushState(null,"",s),E=location.pathname+location.search}).catch(function(){f.classList.add("is-failed"),f.querySelector(".list-foot-words").textContent="That didn't load."})}}),window.addEventListener("popstate",function(){var n=location.pathname+location.search;n===E||!document.querySelector("[data-list-pages]")||(E=n,window.zaismaWait(null,fetch(location.href,u).then(i)).then(function(l){l||location.reload()},function(){location.reload()}))})})(),(function(){var E=56,p=32,u=8,i=null,n=function(){return matchMedia("(prefers-reduced-motion: reduce)").matches},l=function(a){return!a.classList.contains("in-place")&&!a.classList.contains("urgent-card")&&!a.querySelector("a, button, input, select, textarea")};function f(a){a.classList.remove("is-swiping"),["--swipe-x","--swipe-y","--swipe-opacity"].forEach(function(r){a.style.removeProperty(r)})}function s(a,r,t){a.classList.remove("is-swiping"),!n()&&r==="x"&&a.style.setProperty("--swipe-x",t*a.offsetWidth+"px"),!n()&&r==="y"&&a.style.setProperty("--swipe-y",-a.offsetHeight+"px"),window.zaismaLayers&&window.zaismaLayers.leave(a),a.hidden=!0}var d=new WeakSet;function b(a){d.has(a)||(d.add(a),new MutationObserver(function(){a.hidden||f(a)}).observe(a,{attributes:!0,attributeFilter:["hidden"]}))}document.querySelectorAll(".playing-card").forEach(b);function S(a,r){let t=7;for(const w of r)t=(t*31+w.codePointAt(0))%360;const o=r.trim().split(/\\s+/).filter(Boolean),m=o.length>1?[Array.from(o[0])[0],Array.from(o[1])[0]]:Array.from(o[0]||"?").slice(0,2);a.style.setProperty("--h",String(t)),a.textContent=m.join("").toUpperCase()}document.querySelectorAll("[data-notice-copies]").forEach(function(a){var r=document.getElementById(a.getAttribute("data-notice-copies"));if(r){var t=a.closest(".notice-strip"),o=t&&t.querySelector(".av"),m=function(){a.textContent=r.textContent,o&&S(o,r.textContent.trim()||"?")};m(),new MutationObserver(m).observe(r,{childList:!0,characterData:!0,subtree:!0})}}),document.addEventListener("click",function(a){var r=a.target.closest&&a.target.closest("[data-notice-presses], [data-notice-close]");if(r){var t=document.getElementById(r.getAttribute("data-notice-presses")||r.getAttribute("data-notice-close")||"");r.hasAttribute("data-notice-close")&&r.closest("[data-notice-marks]")&&window.dispatchEvent(new Event("zaisma:notice-folded")),t&&t.click()}}),document.addEventListener("pointerdown",function(a){var r=a.target.closest&&a.target.closest(".playing-card");!r||r.hidden||!l(r)||a.pointerType==="mouse"&&a.button!==0||(b(r),i={card:r,id:a.pointerId,x:a.clientX,y:a.clientY,axis:"",dx:0,dy:0})}),document.addEventListener("pointermove",function(a){if(!(!i||a.pointerId!==i.id)){var r=a.clientX-i.x,t=a.clientY-i.y;if(!i.axis){if(Math.max(Math.abs(r),Math.abs(t))<u)return;if(i.axis=Math.abs(r)>=Math.abs(t)?"x":t<0?"y":"none",i.axis==="none"){i=null;return}try{i.card.setPointerCapture(a.pointerId)}catch{}n()||i.card.classList.add("is-swiping")}if(i.dx=r,i.dy=Math.min(0,t),!n()){var o=i.axis==="x"?Math.abs(i.dx)/i.card.offsetWidth:-i.dy/i.card.offsetHeight;i.card.style.setProperty(i.axis==="x"?"--swipe-x":"--swipe-y",(i.axis==="x"?i.dx:i.dy)+"px"),i.card.style.setProperty("--swipe-opacity",String(Math.max(0,1-o)))}}}),document.addEventListener("pointerup",function(a){if(!(!i||a.pointerId!==i.id)){var r=i.card,t=i.axis,o=i.dx,m=i.dy;i=null,!t||t==="x"&&Math.abs(o)>=E||t==="y"&&-m>=p?s(r,t,o<0?-1:1):f(r)}}),document.addEventListener("pointercancel",function(a){!i||a.pointerId!==i.id||(f(i.card),i=null)}),document.addEventListener("keydown",function(a){a.key==="Escape"&&document.querySelectorAll(".playing-card:not([hidden])").forEach(function(r){l(r)&&s(r,"",1)})})})(),(()=>{const E=()=>{const p=decodeURIComponent(location.hash.slice(1)),u=p?document.getElementById(p):null;u&&u.matches("details.list-row-fold")&&(u.open=!0)};E(),addEventListener("hashchange",E),document.addEventListener("click",p=>{const u=p.target instanceof Element?p.target.closest("details.list-row-fold > summary"):null,i=u?u.parentElement:null;if(!i||!i.open)return;if(p.preventDefault(),i.classList.contains("is-closing")){i.classList.remove("is-closing"),clearTimeout(i.closeLater);return}if(matchMedia("(prefers-reduced-motion: reduce)").matches){i.open=!1;return}i.classList.add("is-closing");const n=()=>{i.classList.contains("is-closing")&&(i.classList.remove("is-closing"),i.open=!1)},l=parseFloat(getComputedStyle(i,"::details-content").transitionDuration)||.4;i.closeLater=setTimeout(n,l*1e3+20)})})();
|
|
11291
11343
|
` };
|
|
@@ -14403,7 +14455,8 @@ var EDGE_LIGHT_SCRIPT = `/* edge light */(function () {
|
|
|
14403
14455
|
function place(part, isGliding) {
|
|
14404
14456
|
var h = holder.getBoundingClientRect(), r = part.getBoundingClientRect();
|
|
14405
14457
|
// The first light comes up where it is; after that it glides along the edge to the next part.
|
|
14406
|
-
|
|
14458
|
+
// Only its glide stops: a holder arriving by a fade (a Floating pane) goes on fading it.
|
|
14459
|
+
if (!isGliding) light.style.transition = "opacity var(--motion-state)";
|
|
14407
14460
|
light.style.setProperty("--light-at", (isAcross ? r.left + r.width / 2 - h.left : r.top + r.height / 2 - h.top) + "px");
|
|
14408
14461
|
light.style.setProperty("--light-span", (isAcross ? r.width : r.height) + "px");
|
|
14409
14462
|
if (!isGliding) { void light.offsetWidth; light.style.transition = ""; }
|
|
@@ -20775,6 +20828,8 @@ var PLACE_SCRIPT = `/* place */(function () {
|
|
|
20775
20828
|
window.zaismaCast = function (pane) {
|
|
20776
20829
|
var cast = pane.floatCast;
|
|
20777
20830
|
if (!cast) { cast = pane.floatCast = document.createElement("div"); cast.className = "floating-cast"; cast.setAttribute("aria-hidden", "true"); cast.appendChild(document.createElement("div")).appendChild(document.createElement("span")); (pane.parentElement || document.body).appendChild(cast); }
|
|
20831
|
+
// Smoked and moving as its pane does, closing too.
|
|
20832
|
+
["smoke", "is-above", "placed-over", "opens-at-once"].forEach(function (name) { cast.classList.toggle(name, pane.classList.contains(name)); });
|
|
20778
20833
|
if (!pane.isConnected || !pane.matches(":popover-open")) { cast.hidden = true; return; }
|
|
20779
20834
|
// Where it stands once its arriving move is done: its box less the move, so the shadow doesn't jump when the move ends.
|
|
20780
20835
|
var box = pane.getBoundingClientRect(), move = new DOMMatrix(getComputedStyle(pane).transform === "none" ? undefined : getComputedStyle(pane).transform);
|
|
@@ -20795,7 +20850,6 @@ var PLACE_SCRIPT = `/* place */(function () {
|
|
|
20795
20850
|
// Its shadow is its pane's, light or dark as the pane is (the gallery's choice, or smoked over a game), not the page's own.
|
|
20796
20851
|
var themeChoice = pane.getAttribute("data-theme-choice");
|
|
20797
20852
|
if (themeChoice) cast.setAttribute("data-theme-choice", themeChoice); else cast.removeAttribute("data-theme-choice");
|
|
20798
|
-
cast.classList.toggle("smoke", pane.classList.contains("smoke"));
|
|
20799
20853
|
cast.style.left = r.left + (isOnPage ? window.scrollX : 0) + "px"; cast.style.top = r.top + (isOnPage ? window.scrollY : 0) + "px"; cast.style.width = r.width + "px"; cast.style.height = r.height + "px";
|
|
20800
20854
|
};
|
|
20801
20855
|
// Opening, closing and settling after its opening move: the toggle and transition events don't bubble, so they're caught on the way down.
|
|
@@ -20928,8 +20982,8 @@ var PLACE_SCRIPT = `/* place */(function () {
|
|
|
20928
20982
|
// There, it stays in the top layer while it fades toward its anchor (is-leaving), then goes.
|
|
20929
20983
|
if (isMovedByScript) {
|
|
20930
20984
|
pane.classList.add("is-leaving"); if (pane.floatCast) pane.floatCast.classList.add("is-leaving");
|
|
20931
|
-
pane.leaveTimer = setTimeout(function () { pane.classList.remove("is-leaving"); pane.hidePopover();
|
|
20932
|
-
} else pane.hidePopover();
|
|
20985
|
+
pane.leaveTimer = setTimeout(function () { pane.classList.remove("is-leaving"); pane.hidePopover(); window.zaismaCast(pane); pane.floatCast.classList.remove("is-leaving"); }, LEAVE_MS);
|
|
20986
|
+
} else { pane.hidePopover(); window.zaismaCast(pane); }
|
|
20933
20987
|
if (options.onToggle) options.onToggle(false);
|
|
20934
20988
|
var back = options.focusOnClose || anchorNow();
|
|
20935
20989
|
if (returnFocus && back) back.focus();
|
|
@@ -21297,7 +21351,7 @@ component({
|
|
|
21297
21351
|
@property --light-span { syntax: "<length>"; inherits: true; initial-value: 0px; }
|
|
21298
21352
|
/* It follows the pointer closely as it glides (0.2s, easing out), and comes and goes more slowly (0.45s). Its flood reaches past the
|
|
21299
21353
|
part it lights, so it's cut off at its holder's edge: a clip only hides it, and the pane round it would still get more to scroll. */
|
|
21300
|
-
.edge-light { position: absolute; inset: 0; overflow: hidden; pointer-events: none; clip-path: var(--cut-shape);
|
|
21354
|
+
.edge-light { position: absolute; inset: 0; overflow: hidden; pointer-events: none; clip-path: var(--cut-shape); --edge-light-glide: --light-at var(--motion-state) var(--ease-glide), --light-span var(--motion-state) var(--ease-glide); transition: var(--edge-light-glide); }
|
|
21301
21355
|
.edge-light::before, .edge-light::after { content: ""; position: absolute; opacity: 0; transition: opacity var(--motion-glide) var(--ease-standard); }
|
|
21302
21356
|
.edge-light::before { inset: 0; }
|
|
21303
21357
|
[data-edge-light="bottom"] > .edge-light::before { box-shadow: inset 0 -1.5px 0 var(--edge-wake); }
|
|
@@ -21367,6 +21421,9 @@ component({
|
|
|
21367
21421
|
/* It fades its glass and what's on it, never itself: a pane faded as a whole blurs nothing behind it until it's whole. Each fades by its own
|
|
21368
21422
|
opacity, which the browser draws on the GPU, never a custom property, which would restyle all of it every frame. */
|
|
21369
21423
|
.floating-pane::before, .floating-pane > * { transition: opacity var(--motion-state); }
|
|
21424
|
+
/* Its edge light fades with the rest, and keeps gliding along its edge. */
|
|
21425
|
+
.floating-pane > .edge-light { transition: opacity var(--motion-state), var(--edge-light-glide); }
|
|
21426
|
+
@media (prefers-reduced-motion: reduce) { .floating-pane > .edge-light { transition: opacity var(--motion-state); } }
|
|
21370
21427
|
.floating-pane:not(:popover-open):not(.in-place)::before, .floating-pane:not(:popover-open):not(.in-place) > * { opacity: 0; }
|
|
21371
21428
|
@starting-style { .floating-pane:popover-open::before, .floating-pane:popover-open > * { opacity: 0; } }
|
|
21372
21429
|
.floating-pane.is-on-page { position: absolute; }
|
|
@@ -21382,21 +21439,25 @@ component({
|
|
|
21382
21439
|
.floating-pane:is(.is-arriving, .is-leaving)::before, .floating-pane:is(.is-arriving, .is-leaving) > * { opacity: 0; }
|
|
21383
21440
|
/* Opened again at once where it just was (a Filter menu drawn again with the list it filters), it shows without arriving. */
|
|
21384
21441
|
.floating-pane.opens-at-once, .floating-pane.opens-at-once::before, .floating-pane.opens-at-once > * { transition: none; }
|
|
21385
|
-
|
|
21386
|
-
|
|
21387
|
-
|
|
21388
|
-
.floating-pane
|
|
21389
|
-
.floating-pane.is-
|
|
21390
|
-
.floating-pane
|
|
21391
|
-
@starting-style { .floating-pane:popover-open { transform:
|
|
21442
|
+
/* Closed, it stands a little off where it opens, and its shadow with it. */
|
|
21443
|
+
:is(.floating-pane, .floating-cast) { --away-move: translateY(-6px); }
|
|
21444
|
+
:is(.floating-pane, .floating-cast).is-above { --away-move: translateY(6px); }
|
|
21445
|
+
:is(.floating-pane, .floating-cast).placed-over { --away-move: scale(0.97); }
|
|
21446
|
+
.floating-pane:is(.is-arriving, .is-leaving) { transform: var(--away-move); pointer-events: none; }
|
|
21447
|
+
.floating-pane:not(:popover-open):not(.in-place) { display: none; transform: var(--away-move); pointer-events: none; }
|
|
21448
|
+
@starting-style { .floating-pane:popover-open { transform: var(--away-move); } }
|
|
21392
21449
|
/* The shadow it casts onto the page (zaismaCast): a box laid under it in its cut shape, with that shape cut out after it casts. */
|
|
21393
21450
|
.floating-cast { position: fixed; z-index: 2147483646; pointer-events: none; }
|
|
21394
21451
|
.floating-cast > div { position: absolute; inset: 0; filter: var(--float-cast); }
|
|
21395
21452
|
.floating-cast > div > span { position: absolute; inset: 0; background: #000; }
|
|
21396
21453
|
.floating-cast.is-on-page { position: absolute; }
|
|
21397
|
-
/*
|
|
21398
|
-
|
|
21399
|
-
.floating-cast:
|
|
21454
|
+
/* It comes and goes with its pane, at its glass's fade and its move: hidden, it stays until they're done. Where the script moves the pane
|
|
21455
|
+
(Safari), its classes say so instead, as they do the pane's. */
|
|
21456
|
+
.floating-cast { transition: opacity var(--motion-state), transform var(--motion-arrive) var(--ease-glide), display var(--motion-arrive) allow-discrete; }
|
|
21457
|
+
.floating-cast:is([hidden], .is-arriving, .is-leaving) { opacity: 0; transform: var(--away-move); }
|
|
21458
|
+
@starting-style { .floating-cast { opacity: 0; transform: var(--away-move); } }
|
|
21459
|
+
.floating-cast.opens-at-once { transition: none; }
|
|
21460
|
+
@supports not (overlay: auto) { .floating-cast { transition: opacity var(--motion-state), transform var(--motion-arrive) var(--ease-glide); } }
|
|
21400
21461
|
/* Shown open in place (the gallery's open states), it's in the page's flow, no taller than a menu, scrolling past it as it does open. Over, as wide as what's in it, it lies on
|
|
21401
21462
|
the field just before it, its line (--line-from-top) on the field's own line; glass inside a pane's glass isn't blurred, so what it
|
|
21402
21463
|
covers is hidden rather than showing through, and it casts its shadow as a filter on what holds it, where only it is drawn. */
|
|
@@ -33880,8 +33941,8 @@ async function getReadableFromProtocolStream(client, handle) {
|
|
|
33880
33941
|
return m.codePointAt(0);
|
|
33881
33942
|
});
|
|
33882
33943
|
}
|
|
33883
|
-
const
|
|
33884
|
-
return
|
|
33944
|
+
const encoder7 = new TextEncoder();
|
|
33945
|
+
return encoder7.encode(data2);
|
|
33885
33946
|
}
|
|
33886
33947
|
const { data, base64Encoded, eof } = await client.send("IO.read", {
|
|
33887
33948
|
handle
|
|
@@ -50754,11 +50815,11 @@ async function clearTitleListingReason(env2, game) {
|
|
|
50754
50815
|
import { createHmac, timingSafeEqual } from "node:crypto";
|
|
50755
50816
|
var HOUR_MS5 = 36e5;
|
|
50756
50817
|
var PREVIEW_LINK_HOUR_COUNT = 25;
|
|
50757
|
-
var macOf = (key, versionId2, hourNumber) => createHmac("sha256", key).update(`preview:${versionId2}:${hourNumber}`).digest("hex").slice(0, 32);
|
|
50758
|
-
function previewLinkToken(version, nowMs = Date.now()) {
|
|
50818
|
+
var macOf = (keyBytes, key, versionId2, hourNumber) => createHmac("sha256", createHmac("sha256", keyBytes).update(`preview_link_key:${key}`).digest()).update(`preview:${versionId2}:${hourNumber}`).digest("hex").slice(0, 32);
|
|
50819
|
+
function previewLinkToken(keys, version, nowMs = Date.now()) {
|
|
50759
50820
|
if (version.scan_status !== "approved" || !version.preview_link_key) return null;
|
|
50760
50821
|
const hourNumber = Math.floor(nowMs / HOUR_MS5);
|
|
50761
|
-
return { token: `${version.id}.${hourNumber.toString(36)}.${macOf(version.preview_link_key, version.id, hourNumber)}`, expiresAtMs: (hourNumber + PREVIEW_LINK_HOUR_COUNT) * HOUR_MS5 };
|
|
50822
|
+
return { token: `${version.id}.${hourNumber.toString(36)}.${macOf(storedSecretsKeyBytes(keys)[0], version.preview_link_key, version.id, hourNumber)}`, expiresAtMs: (hourNumber + PREVIEW_LINK_HOUR_COUNT) * HOUR_MS5 };
|
|
50762
50823
|
}
|
|
50763
50824
|
|
|
50764
50825
|
// ../../apps/site/src/forum-search.ts
|
|
@@ -51028,7 +51089,7 @@ var CONNECT_STATE_DURATION_MS = 10 * 6e4;
|
|
|
51028
51089
|
|
|
51029
51090
|
// ../../apps/site/src/zip-writer.ts
|
|
51030
51091
|
var UNIX_MADE_BY_CODE = 3 << 8;
|
|
51031
|
-
var
|
|
51092
|
+
var encoder5 = new TextEncoder();
|
|
51032
51093
|
|
|
51033
51094
|
// ../../apps/site/src/developer.ts
|
|
51034
51095
|
function accountBanned(caller) {
|
|
@@ -51294,7 +51355,7 @@ function performanceCheckJson(row3) {
|
|
|
51294
51355
|
}
|
|
51295
51356
|
function versionJson(env2, game, version, performanceCheck, aiReview) {
|
|
51296
51357
|
const isReviewOpen = aiReview !== null && !isAiReviewDone(version) && version.ai_review_status !== "stopped";
|
|
51297
|
-
const preview = previewLinkToken(version);
|
|
51358
|
+
const preview = previewLinkToken(env2, version);
|
|
51298
51359
|
const report = scanReportOf(version);
|
|
51299
51360
|
return {
|
|
51300
51361
|
id: version.id,
|
|
@@ -51448,7 +51509,7 @@ async function tellWebhooks(env2, kind, gameId, parts2, waitUntil) {
|
|
|
51448
51509
|
var DAY_MS9 = 24 * 3600 * 1e3;
|
|
51449
51510
|
async function sendAll(env2, webhooks, deliveries) {
|
|
51450
51511
|
const sendToGameServer = gameServerSender(env2);
|
|
51451
|
-
const tries = await Promise.allSettled(deliveries.map((delivery, i) => attemptDelivery(env2.DB, webhooks[i], delivery, { sendToGameServer })));
|
|
51512
|
+
const tries = await Promise.allSettled(deliveries.map((delivery, i) => attemptDelivery(env2.DB, env2, webhooks[i], delivery, { sendToGameServer })));
|
|
51452
51513
|
for (const attempt of tries) if (attempt.status === "rejected") console.error("A webhook delivery broke", attempt.reason);
|
|
51453
51514
|
}
|
|
51454
51515
|
function gameServerSender(env2) {
|
|
@@ -59634,6 +59695,7 @@ var publishingAccountRows = (accounts) => accounts.map((account) => ({ username:
|
|
|
59634
59695
|
var ADMIN_TOOLS = [
|
|
59635
59696
|
{
|
|
59636
59697
|
name: "list_report_groups",
|
|
59698
|
+
reaches: "any_game",
|
|
59637
59699
|
title: "Open reports",
|
|
59638
59700
|
description: "Open reports grouped by problem, most serious first, then the longest waiting: what triage found, its recommendation, the precedent it fits and what it did by itself. Child-safety groups come first and are never sorted by AI. Also the month's AI use, which triage shares with scans and the forum.",
|
|
59639
59701
|
inputSchema: object3({ maximum_group_count: { type: "integer", minimum: 1, maximum: 100, description: "How many groups; 20 by default." } }),
|
|
@@ -59653,6 +59715,7 @@ var ADMIN_TOOLS = [
|
|
|
59653
59715
|
},
|
|
59654
59716
|
{
|
|
59655
59717
|
name: "list_handled_reports",
|
|
59718
|
+
reaches: "any_game",
|
|
59656
59719
|
title: "Reports triage handled alone",
|
|
59657
59720
|
description: "Reports triage closed without a person in the last 7 days (bugs passed to developers, dismissals under a precedent), newest first, to look over. Child-safety reports are never among them.",
|
|
59658
59721
|
inputSchema: object3({}),
|
|
@@ -59673,6 +59736,7 @@ var ADMIN_TOOLS = [
|
|
|
59673
59736
|
},
|
|
59674
59737
|
{
|
|
59675
59738
|
name: "get_report_group",
|
|
59739
|
+
reaches: "any_game",
|
|
59676
59740
|
title: "One report group in full",
|
|
59677
59741
|
description: "Everything about one group of reports, open or closed: what each player sent (and up to 3 pictures of the game, as images), the game, the reported versions and their scans, any re-check of its files, triage's view, the precedent it fits or challenges (or the one it drafts), the game's recent history, and possible_decisions for decide_report_group.",
|
|
59678
59742
|
inputSchema: object3({ report_group_id: reportGroupId }, ["report_group_id"]),
|
|
@@ -59744,6 +59808,7 @@ var ADMIN_TOOLS = [
|
|
|
59744
59808
|
},
|
|
59745
59809
|
{
|
|
59746
59810
|
name: "decide_report_group",
|
|
59811
|
+
reaches: "any_game",
|
|
59747
59812
|
title: "Decide a report group",
|
|
59748
59813
|
description: `Decide a group's open reports, exactly like its button in the queue. get_report_group's possible_decisions says what's possible now. With precedent, also set a precedent so future cases like it are decided the same way: dismiss, restore and put_update_back set a dismissal, bug a bug, take_down and keep_update_off a takedown, pass_to_developer and stop_social their own, and hide_name and clear_profile none. A group about a player is decided with pass_to_developer (bullying, trash talk, cheating: the game's call), stop_social (a real-life threat, personal details, following after a block or something sexual, upheld: it needs social_stopped_reason, and at child safety it sends the NCMEC alert) or clear_profile; never take_down. take_down needs the content_rule it broke (keep_update_off can name one), and for both the developer reads why (never for child safety). Ask the admin first.
|
|
59749
59814
|
|
|
@@ -59864,6 +59929,7 @@ Not: { "decision": "stop_social", "why": "\u2026" } (say which of the four with
|
|
|
59864
59929
|
},
|
|
59865
59930
|
{
|
|
59866
59931
|
name: "list_precedents",
|
|
59932
|
+
reaches: "zaisma_settings",
|
|
59867
59933
|
title: "Precedents",
|
|
59868
59934
|
description: "The rulings report triage follows, with how often each was followed. Proposed ones wait for the admin's approval (approve_precedent).",
|
|
59869
59935
|
inputSchema: object3({ precedent_status: { enum: ["active", "proposed", "retired", "all"], description: "Which ones; active and proposed by default." } }),
|
|
@@ -59879,6 +59945,7 @@ Not: { "decision": "stop_social", "why": "\u2026" } (say which of the four with
|
|
|
59879
59945
|
},
|
|
59880
59946
|
{
|
|
59881
59947
|
name: "set_precedent",
|
|
59948
|
+
reaches: "zaisma_settings",
|
|
59882
59949
|
title: "Set or change a precedent",
|
|
59883
59950
|
description: 'A new precedent in force, or (with replaces_precedent_id) a change to one: future cases like it are decided the same way. Past cases keep the wording they followed. Ask the admin first.\n\nNot: { "decision": "take_down", "can_ai_apply_alone": true } (only dismissals can be applied by the AI alone)\nNot: { "replaces": "precedent_\u2026" } (replaces_precedent_id)',
|
|
59884
59951
|
inputSchema: {
|
|
@@ -59903,6 +59970,7 @@ Not: { "decision": "stop_social", "why": "\u2026" } (say which of the four with
|
|
|
59903
59970
|
},
|
|
59904
59971
|
{
|
|
59905
59972
|
name: "approve_precedent",
|
|
59973
|
+
reaches: "zaisma_settings",
|
|
59906
59974
|
title: "Approve a precedent",
|
|
59907
59975
|
description: "Put a proposed precedent in force as written. To change one first, approve it and set the change with set_precedent, or retire it and set a new one. Ask the admin first.",
|
|
59908
59976
|
inputSchema: object3(
|
|
@@ -59933,6 +60001,7 @@ Not: { "decision": "stop_social", "why": "\u2026" } (say which of the four with
|
|
|
59933
60001
|
},
|
|
59934
60002
|
{
|
|
59935
60003
|
name: "retire_precedent",
|
|
60004
|
+
reaches: "zaisma_settings",
|
|
59936
60005
|
title: "Retire a precedent",
|
|
59937
60006
|
description: "Stop following a precedent, or drop a proposed one. Past cases keep pointing at it. Ask the admin first.",
|
|
59938
60007
|
inputSchema: object3({ precedent_id: precedentId("A precedent's ID from list_precedents.") }, ["precedent_id"]),
|
|
@@ -59946,6 +60015,7 @@ Not: { "decision": "stop_social", "why": "\u2026" } (say which of the four with
|
|
|
59946
60015
|
},
|
|
59947
60016
|
{
|
|
59948
60017
|
name: "list_topics",
|
|
60018
|
+
reaches: "forum_topic",
|
|
59949
60019
|
title: "The forum queue",
|
|
59950
60020
|
description: "Forum topics from developers and their AI about Zaisma itself, most serious first: topics on their own and known issues, with how many developers each affects, whether it's public, the latest post and what AI sorting found. topic_status new (the default) is what's waiting. Always with topics_in_known_issues (messages added to or reopened inside a known issue), waiting_posts (public posts the check held, couldn't check yet, or developers reported) and zaisma_mentions (public posts asking for @Zaisma with no reply since).",
|
|
59951
60021
|
inputSchema: object3({
|
|
@@ -59958,6 +60028,7 @@ Not: { "decision": "stop_social", "why": "\u2026" } (say which of the four with
|
|
|
59958
60028
|
},
|
|
59959
60029
|
{
|
|
59960
60030
|
name: "get_topic",
|
|
60031
|
+
reaches: "forum_topic",
|
|
59961
60032
|
title: "One forum topic in full",
|
|
59962
60033
|
description: "Every post in a topic (by the developer, their AI or Zaisma, with what the AI attached in debug_context, and the latest 3 images as images), the developer's name, the game, the known issue it's in and the topics merged into it.",
|
|
59963
60034
|
inputSchema: object3({ topic_id: topicId2 }, ["topic_id"]),
|
|
@@ -59971,6 +60042,7 @@ Not: { "decision": "stop_social", "why": "\u2026" } (say which of the four with
|
|
|
59971
60042
|
},
|
|
59972
60043
|
{
|
|
59973
60044
|
name: "decide_topic",
|
|
60045
|
+
reaches: "forum_topic",
|
|
59974
60046
|
title: "Answer or sort a forum topic",
|
|
59975
60047
|
description: `Any of: reply_text_markdown (from Zaisma; public on a public topic, else to the developer); topic_status (new, or a known issue's phase: investigating, known (confirmed), planned, fixing, released (a fix is out, watching that it holds), fixed (resolved), wont (won't fix); answered for a question; on a known issue it changes every topic merged into it, and each developer hears, with the reply as the note); merge_into_topic_id (a duplicate goes under a known issue); known_issue (make this topic one: a title, a workaround and the roadmap item, seen by every developer; null stops it being one); severity; category; answer_post_id (a post in this topic as the question's answer; null clears it). Leave out what stays the same. Ask the admin first.
|
|
59976
60048
|
|
|
@@ -60035,6 +60107,7 @@ Not: { "merge_into_topic_id": "topic_\u2026", "known_issue": { \u2026 } } (merge
|
|
|
60035
60107
|
},
|
|
60036
60108
|
{
|
|
60037
60109
|
name: "decide_post",
|
|
60110
|
+
reaches: "forum_topic",
|
|
60038
60111
|
title: "Show or remove a forum post",
|
|
60039
60112
|
description: "For a post in list_topics' waiting_posts (the check held it or couldn't check it, or developers reported it): show it to everyone (which clears its reports), or remove it. Removing a topic's first post makes the topic private to its developer again. Ask the admin first.",
|
|
60040
60113
|
inputSchema: object3({ post_id: idInput2("post", "A post's ID from waiting_posts in list_topics."), decision: { enum: ["show", "remove"] } }, ["post_id", "decision"]),
|
|
@@ -60051,6 +60124,7 @@ Not: { "merge_into_topic_id": "topic_\u2026", "known_issue": { \u2026 } } (merge
|
|
|
60051
60124
|
},
|
|
60052
60125
|
{
|
|
60053
60126
|
name: "list_review_precedents",
|
|
60127
|
+
reaches: "zaisma_settings",
|
|
60054
60128
|
title: "Review precedents",
|
|
60055
60129
|
description: `The rulings the AI game review follows when it was wrong, with each one's stand-in test game and test result. Save the answer as { "review_precedents": [...] } to run the review test set with them in force: npm run review-set -- --precedents <file>. Approving a version the review held or rejected drafts a pass ruling; upholding a hold, or rejecting or taking down a game the review passed, drafts a reject ruling; the admin saves it in the same click, on the admin page.`,
|
|
60056
60130
|
inputSchema: object3({ review_precedent_status: { enum: ["proposed", "testing", "active", "failed", "retired", "all"], description: "Which ones; every one but retired by default." } }),
|
|
@@ -60066,6 +60140,7 @@ Not: { "merge_into_topic_id": "topic_\u2026", "known_issue": { \u2026 } } (merge
|
|
|
60066
60140
|
},
|
|
60067
60141
|
{
|
|
60068
60142
|
name: "approve_review_precedent",
|
|
60143
|
+
reaches: "zaisma_settings",
|
|
60069
60144
|
title: "Test a review precedent",
|
|
60070
60145
|
description: "Send a drafted or failed review precedent to the test set as written: it goes live once every bad game is still stopped and every honest one still passes, with it in force. To change the wording first, use the admin page. Ask the admin first.",
|
|
60071
60146
|
inputSchema: object3({ review_precedent_id: idInput2("review_precedent", "A drafted or failed review precedent's ID from list_review_precedents.") }, ["review_precedent_id"]),
|
|
@@ -60095,6 +60170,7 @@ Not: { "merge_into_topic_id": "topic_\u2026", "known_issue": { \u2026 } } (merge
|
|
|
60095
60170
|
},
|
|
60096
60171
|
{
|
|
60097
60172
|
name: "retire_review_precedent",
|
|
60173
|
+
reaches: "zaisma_settings",
|
|
60098
60174
|
title: "Retire a review precedent",
|
|
60099
60175
|
description: "Stop the judge following a review precedent, or drop a drafted one. Games already judged keep their verdicts. Ask the admin first.",
|
|
60100
60176
|
inputSchema: object3({ review_precedent_id: idInput2("review_precedent", "A review precedent's ID from list_review_precedents.") }, ["review_precedent_id"]),
|
|
@@ -60108,6 +60184,7 @@ Not: { "merge_into_topic_id": "topic_\u2026", "known_issue": { \u2026 } } (merge
|
|
|
60108
60184
|
},
|
|
60109
60185
|
{
|
|
60110
60186
|
name: "get_review_counts",
|
|
60187
|
+
reaches: "zaisma_settings",
|
|
60111
60188
|
title: "How reviews came out",
|
|
60112
60189
|
description: "How the game review's scans came out over the last days: versions passed by themselves, rejected by themselves (with the rule and the fix, no person), held for a person, and held only to wait for a daily review. The goal is honest games passing first time and clear breaks rejected, so held_for_person_count falls toward zero; each hold a person decides teaches the review (a pass or a reject ruling).",
|
|
60113
60190
|
inputSchema: object3({ period_duration_days: { type: "integer", minimum: 1, maximum: 90, description: "How many days back from now; 30 by default." } }),
|
|
@@ -60117,6 +60194,7 @@ Not: { "merge_into_topic_id": "topic_\u2026", "known_issue": { \u2026 } } (merge
|
|
|
60117
60194
|
},
|
|
60118
60195
|
{
|
|
60119
60196
|
name: "list_chat_reviews",
|
|
60197
|
+
reaches: "any_account",
|
|
60120
60198
|
title: "Chat the filter kept for review",
|
|
60121
60199
|
description: "Sexual messages from adults to teens the chat filter stopped and kept. An AI reviews each within minutes: a false alarm is deleted, a confirmed one from Zaisma's rooms removes the sender's chat. chat_review_status waiting (the default) is what needs the admin: ones the AI was unsure of, ones from a developer's own server (which could be made up, so only a person decides), ones the AI couldn't review, and confirmed ones not yet marked reported to NCMEC.",
|
|
60122
60200
|
inputSchema: object3({
|
|
@@ -60128,6 +60206,7 @@ Not: { "merge_into_topic_id": "topic_\u2026", "known_issue": { \u2026 } } (merge
|
|
|
60128
60206
|
},
|
|
60129
60207
|
{
|
|
60130
60208
|
name: "decide_chat_review",
|
|
60209
|
+
reaches: "any_account",
|
|
60131
60210
|
title: "Decide a kept chat message",
|
|
60132
60211
|
description: "false_alarm deletes the message and lifts the sender's pause. remove_chat confirms it: the sender's chat is removed for good and the message kept a year for the report. reported does the same and records that the admin reported it to NCMEC's CyberTipline. Ask the admin first.",
|
|
60133
60212
|
inputSchema: object3({ chat_review_id: idInput2("chat_review", "A kept message's ID from list_chat_reviews."), decision: { enum: [...CHAT_REVIEW_DECISIONS] } }, ["chat_review_id", "decision"]),
|
|
@@ -60145,6 +60224,7 @@ Not: { "merge_into_topic_id": "topic_\u2026", "known_issue": { \u2026 } } (merge
|
|
|
60145
60224
|
},
|
|
60146
60225
|
{
|
|
60147
60226
|
name: "decide_notice",
|
|
60227
|
+
reaches: "any_game",
|
|
60148
60228
|
title: "Act on a copyright or defamation notice",
|
|
60149
60229
|
description: `A copyright (DMCA) or defamation notice that reached dmca@ or safety@zaisma.com: hold hides the game from players without judging the notice, and the developer reads why (what the notice names) with how to fix it; show_again puts a held game back. Show it again once the live version no longer has what the notice names (publishing one emails the admin), or 10 working days after a counter-notice reached the sender, unless they say they've gone to court. The same as the Notice form on zaisma.com/admin/games/<id>. Ask the admin first.
|
|
60150
60230
|
Not: { "decision": "hold", "why": "\u2026" } (a hold needs notice_kind too)
|
|
@@ -60195,6 +60275,7 @@ Not: { "decision": "show_again", "notice_kind": "copyright", "why": "\u2026" } (
|
|
|
60195
60275
|
},
|
|
60196
60276
|
{
|
|
60197
60277
|
name: "decide_country_block",
|
|
60278
|
+
reaches: "any_game",
|
|
60198
60279
|
title: "Block a game in one country, or lift it",
|
|
60199
60280
|
description: `A notice from a court, regulator or police in one country, under a law US law doesn't share (the UK's hatred offences, say), that reached safety@zaisma.com: block stops players in that country opening the game, on their word without judging it, and everyone else still can; its page, files, rooms and Zaisma's lists leave it out there. The developer reads why (which law and what it names) in get_game's country_blocks, an alert and a country_blocks_changed webhook. lift ends it, once the live version no longer has what the notice names (publishing one emails the admin). Blocking a country again replaces its why. Only a notice from that country's authorities blocks a game: a player's complaint goes through the Report button and the content rules. The same as the Country blocks form on zaisma.com/admin/games/<id>. Ask the admin first.
|
|
60200
60281
|
Not: { "decision": "block", "country_code": "UK", "why": "\u2026" } (the United Kingdom is GB, its ISO 3166-1 alpha-2 code)
|
|
@@ -60240,6 +60321,7 @@ Not: { "decision": "block", "why": "\u2026" } for every country (a game breaking
|
|
|
60240
60321
|
},
|
|
60241
60322
|
{
|
|
60242
60323
|
name: "list_publishing_accounts",
|
|
60324
|
+
reaches: "any_account",
|
|
60243
60325
|
title: "Who can publish",
|
|
60244
60326
|
description: "The accounts that can make, upload and publish games before the beta, each with its username, player ID and how many games it has. Everyone else gets publishing_not_open until the beta opens.",
|
|
60245
60327
|
inputSchema: object3({}),
|
|
@@ -60249,6 +60331,7 @@ Not: { "decision": "block", "why": "\u2026" } for every country (a game breaking
|
|
|
60249
60331
|
},
|
|
60250
60332
|
{
|
|
60251
60333
|
name: "set_can_publish",
|
|
60334
|
+
reaches: "any_account",
|
|
60252
60335
|
title: "Let an account publish",
|
|
60253
60336
|
description: "Let an account make, upload and publish games before the beta (can_publish true), or stop it (false), by its username. Stopping it stops new games, uploads and publishes; its live games stay up. The same as the buttons on zaisma.com/admin/publishing. Ask the admin first.",
|
|
60254
60337
|
inputSchema: object3(
|
|
@@ -60271,6 +60354,7 @@ Not: { "decision": "block", "why": "\u2026" } for every country (a game breaking
|
|
|
60271
60354
|
},
|
|
60272
60355
|
{
|
|
60273
60356
|
name: "set_zaisma_account",
|
|
60357
|
+
reaches: "any_account",
|
|
60274
60358
|
title: "Mark one of Zaisma's own accounts",
|
|
60275
60359
|
description: "Mark an account as one of Zaisma's own (is_zaisma_account true), like the seed games' developers, by its username, or unmark it (false). Zaisma's own accounts are established from the start, so their games' links to other sites and search engines open before any players come back; a ruling or a ban still closes them. Unmarking it leaves it to the daily count. Ask the admin first.",
|
|
60276
60360
|
inputSchema: object3(
|
|
@@ -60294,6 +60378,7 @@ Not: { "decision": "block", "why": "\u2026" } for every country (a game breaking
|
|
|
60294
60378
|
},
|
|
60295
60379
|
{
|
|
60296
60380
|
name: "ban_account",
|
|
60381
|
+
reaches: "any_account",
|
|
60297
60382
|
title: "Ban an account",
|
|
60298
60383
|
description: `Ban an account by its username. ban_scope developer takes down every game of theirs still up (each with why and content_rule, as a takedown) and stops it making, uploading and publishing: only get_access, list_games and export_game still work for it, and it can still play. whole_account (child safety, illegal content) also ends its sign-in, its sessions and its API keys, and turns its social side off. Either way the cards that paid Zaisma, its connected Stripe account and its email carry over: another account can't connect that Stripe account or add that email, and a banned card on another account waits in list_ban_matches, since families share cards. Never a device, network or address. A developer ban widens to whole_account; anything else answers already_banned. Ask the admin first.
|
|
60299
60384
|
|
|
@@ -60325,6 +60410,7 @@ Not: { "username": "@sam", "ban_scope": "whole_account" } (why is needed: the de
|
|
|
60325
60410
|
},
|
|
60326
60411
|
{
|
|
60327
60412
|
name: "unban_account",
|
|
60413
|
+
reaches: "any_account",
|
|
60328
60414
|
title: "Lift a ban",
|
|
60329
60415
|
description: "Lift an account's ban by its username, and the marks it carried to new accounts. Its games stay down: each comes back with its own restore and reason, from get_game. Ask the admin first.",
|
|
60330
60416
|
inputSchema: object3({ username: usernameInput, why: { type: "string", minLength: 1, maxLength: 500, description: "Why, in a sentence. Goes in the audit log." } }, ["username", "why"]),
|
|
@@ -60342,6 +60428,7 @@ Not: { "username": "@sam", "ban_scope": "whole_account" } (why is needed: the de
|
|
|
60342
60428
|
},
|
|
60343
60429
|
{
|
|
60344
60430
|
name: "list_ban_matches",
|
|
60431
|
+
reaches: "any_account",
|
|
60345
60432
|
title: "Banned cards on other accounts",
|
|
60346
60433
|
description: "Accounts that paid with a card banned with another account, for a person to decide: the same person (decide_ban_match banned) or someone else with the card, like family (not_the_same_person). The ones waiting first, then the decided ones.",
|
|
60347
60434
|
inputSchema: object3({}),
|
|
@@ -60357,6 +60444,7 @@ Not: { "username": "@sam", "ban_scope": "whole_account" } (why is needed: the de
|
|
|
60357
60444
|
},
|
|
60358
60445
|
{
|
|
60359
60446
|
name: "decide_ban_match",
|
|
60447
|
+
reaches: "any_account",
|
|
60360
60448
|
title: "Decide a ban match",
|
|
60361
60449
|
description: "Decide a match from list_ban_matches: banned (the same person) bans the account's developer side, as ban_account does, with the first account's content rule; not_the_same_person only closes it. Ask the admin first.",
|
|
60362
60450
|
inputSchema: object3(
|
|
@@ -60380,6 +60468,7 @@ Not: { "username": "@sam", "ban_scope": "whole_account" } (why is needed: the de
|
|
|
60380
60468
|
},
|
|
60381
60469
|
{
|
|
60382
60470
|
name: "list_security_spikes",
|
|
60471
|
+
reaches: "zaisma_settings",
|
|
60383
60472
|
title: "Security spikes",
|
|
60384
60473
|
description: "Hours in the last 30 days when something across Zaisma reached its threshold, newest first: wrong passwords (100) or sign-ins on new devices (50) from one network, API keys made (100), databases exported (500) or scripts blocked on zaisma.com (500), each emailed to the admin as it happened. Each with the network (its autonomous_system, like AS64500, and name) or null across Zaisma, the hour and its count so far.",
|
|
60385
60474
|
inputSchema: object3({}),
|
|
@@ -60389,6 +60478,7 @@ Not: { "username": "@sam", "ban_scope": "whole_account" } (why is needed: the de
|
|
|
60389
60478
|
},
|
|
60390
60479
|
{
|
|
60391
60480
|
name: "list_blocked_scripts",
|
|
60481
|
+
reaches: "zaisma_settings",
|
|
60392
60482
|
title: "Blocked scripts",
|
|
60393
60483
|
description: "What zaisma.com's script policy blocked in the last 7 days, from the reports browsers send, most reported first: the directive, what was blocked (inline, eval, or a script's origin) and the page. Browser extensions' reports are dropped. A script from an origin Zaisma doesn't use, on many pages, may be an injection to look into; a few inline ones are usually a browser add-on that wasn't recognized.",
|
|
60394
60484
|
inputSchema: object3({}),
|
|
@@ -60398,6 +60488,7 @@ Not: { "username": "@sam", "ban_scope": "whole_account" } (why is needed: the de
|
|
|
60398
60488
|
},
|
|
60399
60489
|
{
|
|
60400
60490
|
name: "get_page_speed",
|
|
60491
|
+
reaches: "zaisma_settings",
|
|
60401
60492
|
title: "Page speed on real visits",
|
|
60402
60493
|
description: "How fast Zaisma's pages showed on real visits: for each page and whether it was opened or switched to, how many visits reported and the time to the page's first paint at the median, 75th and 95th percentile, over the last days. Visits report nothing that names a player or device (speed-reports.ts).",
|
|
60403
60494
|
inputSchema: object3({
|
|
@@ -60410,6 +60501,7 @@ Not: { "username": "@sam", "ban_scope": "whole_account" } (why is needed: the de
|
|
|
60410
60501
|
},
|
|
60411
60502
|
{
|
|
60412
60503
|
name: "get_game",
|
|
60504
|
+
reaches: "any_game",
|
|
60413
60505
|
title: "A game, as admin sees it",
|
|
60414
60506
|
description: "A game's review status, visibility and multiplayer, every version with its scan, its open report groups and its recent history.",
|
|
60415
60507
|
inputSchema: object3({ slug: { type: "string", maxLength: 60, description: "The game's link name, as in zaisma.com/g/<slug>, from a report group's game." } }, ["slug"]),
|
|
@@ -60430,6 +60522,7 @@ Not: { "username": "@sam", "ban_scope": "whole_account" } (why is needed: the de
|
|
|
60430
60522
|
},
|
|
60431
60523
|
{
|
|
60432
60524
|
name: "list_announcements",
|
|
60525
|
+
reaches: "zaisma_settings",
|
|
60433
60526
|
title: "Announcements",
|
|
60434
60527
|
description: "Short news Zaisma posts for players, shown at the top of zaisma.com's home: the current and upcoming ones, and those that ended in the last 30 days, the newest start first. One shows at a time, the newest current one (is_shown).",
|
|
60435
60528
|
inputSchema: object3({}),
|
|
@@ -60442,6 +60535,7 @@ Not: { "username": "@sam", "ban_scope": "whole_account" } (why is needed: the de
|
|
|
60442
60535
|
},
|
|
60443
60536
|
{
|
|
60444
60537
|
name: "post_announcement",
|
|
60538
|
+
reaches: "zaisma_settings",
|
|
60445
60539
|
title: "Post an announcement",
|
|
60446
60540
|
description: `Post short news for players. It shows at the top of zaisma.com's home for every player, signed in or not, from starts_at until ends_at or until the player closes it. One shows at a time: the newest current one (the latest starts_at), so a new one replaces what's showing. Ask the admin first, with the exact words.
|
|
60447
60541
|
|
|
@@ -60475,6 +60569,7 @@ Not: { "ends_at": 1792012345678 } (an ISO time like "2026-11-01T17:00:00Z", at m
|
|
|
60475
60569
|
},
|
|
60476
60570
|
{
|
|
60477
60571
|
name: "end_announcement",
|
|
60572
|
+
reaches: "zaisma_settings",
|
|
60478
60573
|
title: "End an announcement",
|
|
60479
60574
|
description: "End an announcement now: it leaves zaisma.com's home at once, and one that hadn't started never shows. Ask the admin first.",
|
|
60480
60575
|
inputSchema: object3({ announcement_id: idInput2("announcement", "An announcement's ID from list_announcements.") }, ["announcement_id"]),
|
|
@@ -61142,7 +61237,7 @@ var MINIMUM_PASSWORD_CHARACTER_COUNT = 8;
|
|
|
61142
61237
|
var PASSWORD_HINT = `At least ${MINIMUM_PASSWORD_CHARACTER_COUNT} characters. A few words you'll remember work well.`;
|
|
61143
61238
|
|
|
61144
61239
|
// ../../apps/site/src/account-data.ts
|
|
61145
|
-
var
|
|
61240
|
+
var encoder6 = new TextEncoder();
|
|
61146
61241
|
|
|
61147
61242
|
// ../../apps/site/src/buy.ts
|
|
61148
61243
|
var CONFIRMATION_DURATION_MS = PURCHASE_PIN_LIMITS.confirmationDurationMin * 6e4;
|