{"version":3,"file":"shared-lib.DUiDcGBy.mjs","names":["K","F","e","e.default","useState","useRef","useMemo","React.useId","useCallback","useLayoutEffect","useEffect","_Fragment","metadata","siteMetadata","__FramerMetadata__","KAISCapStore","React.forwardRef","useRef","React.useId","React.useMemo","metadataProvider","React.useContext","__FramerMetadata__"],"sources":["https:/ga.jspm.io/npm:react-dom@18.3.1/server.browser.js","https:/framerusercontent.com/modules/rezD2KZtTmInKTC74FHh/Z4e0DFa0kY0Z8VSiEuij/Cap_V4.js","https:/framerusercontent.com/modules/vKL9CkqZEo01CK7FixFC/2o8S8DvkbXimyhW4u03a/siteMetadata.js","https:/framerusercontent.com/modules/VdgQvBXR9BNCGCG0HG4J/kQAmlprudpyaYkmWQJSJ/oxFl8hLOT.js","https:/framerusercontent.com/modules/KFMV7hXqgzYo4oxjsOFk/8CCnm0gSPgLboNmnk9Vf/oxFl8hLOT.js","https:/framerusercontent.com/modules/iIOhmP5yfSYPpWokmOlc/lMLO0Mr16ASzlphiskbH/snippets.js"],"sourcesContent":["import*as e from\"react\";var n=e;try{\"default\"in e&&(n=e.default)}catch(e){}var a={};var o=n;function l$2(e){for(var n=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+e,a=1;a<arguments.length;a++)n+=\"&args[]=\"+encodeURIComponent(arguments[a]);return\"Minified React error #\"+e+\"; visit \"+n+\" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\"}var l=Object.prototype.hasOwnProperty,i=/^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$/,s={},c={};function ja$1(e){if(l.call(c,e))return!0;if(l.call(s,e))return!1;if(i.test(e))return c[e]=!0;s[e]=!0;return!1}function r(e,n,a,o,l,i,s){this.acceptsBooleans=2===n||3===n||4===n;this.attributeName=o;this.attributeNamespace=l;this.mustUseProperty=a;this.propertyName=e;this.type=n;this.sanitizeURL=i;this.removeEmptyString=s}var d={};\"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style\".split(\" \").forEach((function(e){d[e]=new r(e,0,!1,e,null,!1,!1)}));[[\"acceptCharset\",\"accept-charset\"],[\"className\",\"class\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"]].forEach((function(e){var n=e[0];d[n]=new r(n,1,!1,e[1],null,!1,!1)}));[\"contentEditable\",\"draggable\",\"spellCheck\",\"value\"].forEach((function(e){d[e]=new r(e,2,!1,e.toLowerCase(),null,!1,!1)}));[\"autoReverse\",\"externalResourcesRequired\",\"focusable\",\"preserveAlpha\"].forEach((function(e){d[e]=new r(e,2,!1,e,null,!1,!1)}));\"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope\".split(\" \").forEach((function(e){d[e]=new r(e,3,!1,e.toLowerCase(),null,!1,!1)}));[\"checked\",\"multiple\",\"muted\",\"selected\"].forEach((function(e){d[e]=new r(e,3,!0,e,null,!1,!1)}));[\"capture\",\"download\"].forEach((function(e){d[e]=new r(e,4,!1,e,null,!1,!1)}));[\"cols\",\"rows\",\"size\",\"span\"].forEach((function(e){d[e]=new r(e,6,!1,e,null,!1,!1)}));[\"rowSpan\",\"start\"].forEach((function(e){d[e]=new r(e,5,!1,e.toLowerCase(),null,!1,!1)}));var f=/[\\-:]([a-z])/g;function la$1(e){return e[1].toUpperCase()}\"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height\".split(\" \").forEach((function(e){var n=e.replace(f,la$1);d[n]=new r(n,1,!1,e,null,!1,!1)}));\"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type\".split(\" \").forEach((function(e){var n=e.replace(f,la$1);d[n]=new r(n,1,!1,e,\"http://www.w3.org/1999/xlink\",!1,!1)}));[\"xml:base\",\"xml:lang\",\"xml:space\"].forEach((function(e){var n=e.replace(f,la$1);d[n]=new r(n,1,!1,e,\"http://www.w3.org/XML/1998/namespace\",!1,!1)}));[\"tabIndex\",\"crossOrigin\"].forEach((function(e){d[e]=new r(e,1,!1,e.toLowerCase(),null,!1,!1)}));d.xlinkHref=new r(\"xlinkHref\",1,!1,\"xlink:href\",\"http://www.w3.org/1999/xlink\",!0,!1);[\"src\",\"href\",\"action\",\"formAction\"].forEach((function(e){d[e]=new r(e,1,!1,e.toLowerCase(),null,!0,!0)}));var h={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},g=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(h).forEach((function(e){g.forEach((function(n){n=n+e.charAt(0).toUpperCase()+e.substring(1);h[n]=h[e]}))}));var b=/[\"'&<>]/;function v(e){if(\"boolean\"===typeof e||\"number\"===typeof e)return\"\"+e;e=\"\"+e;var n=b.exec(e);if(n){var a,o=\"\",l=0;for(a=n.index;a<e.length;a++){switch(e.charCodeAt(a)){case 34:n=\"&quot;\";break;case 38:n=\"&amp;\";break;case 39:n=\"&#x27;\";break;case 60:n=\"&lt;\";break;case 62:n=\"&gt;\";break;default:continue}l!==a&&(o+=e.substring(l,a));l=a+1;o+=n}e=l!==a?o+e.substring(l,a):o}return e}var m=/([A-Z])/g,S=/^ms-/,x=Array.isArray;function w$1(e,n){return{insertionMode:e,selectedValue:n}}function ra$1(e,n,a){switch(n){case\"select\":return w$1(1,null!=a.value?a.value:a.defaultValue);case\"svg\":return w$1(2,null);case\"math\":return w$1(3,null);case\"foreignObject\":return w$1(1,null);case\"table\":return w$1(4,null);case\"thead\":case\"tbody\":case\"tfoot\":return w$1(5,null);case\"colgroup\":return w$1(7,null);case\"tr\":return w$1(6,null)}return 4<=e.insertionMode||0===e.insertionMode?w$1(1,null):e}var $=new Map;function ta$1(e,n,a){if(\"object\"!==typeof a)throw Error(l$2(62));n=!0;for(var o in a)if(l.call(a,o)){var i=a[o];if(null!=i&&\"boolean\"!==typeof i&&\"\"!==i){if(0===o.indexOf(\"--\")){var s=v(o);i=v((\"\"+i).trim())}else{s=o;var c=$.get(s);void 0!==c||(c=v(s.replace(m,\"-$1\").toLowerCase().replace(S,\"-ms-\")),$.set(s,c)),s=c;i=\"number\"===typeof i?0===i||l.call(h,o)?\"\"+i:i+\"px\":v((\"\"+i).trim())}n?(n=!1,e.push(' style=\"',s,\":\",i)):e.push(\";\",s,\":\",i)}}n||e.push('\"')}function x$1(e,n,a,o){switch(a){case\"style\":ta$1(e,n,o);return;case\"defaultValue\":case\"defaultChecked\":case\"innerHTML\":case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":return}if(!(2<a.length)||\"o\"!==a[0]&&\"O\"!==a[0]||\"n\"!==a[1]&&\"N\"!==a[1])if(n=d.hasOwnProperty(a)?d[a]:null,null!==n){switch(typeof o){case\"function\":case\"symbol\":return;case\"boolean\":if(!n.acceptsBooleans)return}a=n.attributeName;switch(n.type){case 3:o&&e.push(\" \",a,'=\"\"');break;case 4:!0===o?e.push(\" \",a,'=\"\"'):!1!==o&&e.push(\" \",a,'=\"',v(o),'\"');break;case 5:isNaN(o)||e.push(\" \",a,'=\"',v(o),'\"');break;case 6:!isNaN(o)&&1<=o&&e.push(\" \",a,'=\"',v(o),'\"');break;default:n.sanitizeURL&&(o=\"\"+o),e.push(\" \",a,'=\"',v(o),'\"')}}else if(ja$1(a)){switch(typeof o){case\"function\":case\"symbol\":return;case\"boolean\":if(n=a.toLowerCase().slice(0,5),\"data-\"!==n&&\"aria-\"!==n)return}e.push(\" \",a,'=\"',v(o),'\"')}}function y$1(e,n,a){if(null!=n){if(null!=a)throw Error(l$2(60));if(\"object\"!==typeof n||!(\"__html\"in n))throw Error(l$2(61));n=n.__html;null!==n&&void 0!==n&&e.push(\"\"+n)}}function ua$1(e){var n=\"\";o.Children.forEach(e,(function(e){null!=e&&(n+=e)}));return n}function va$1(e,n,a,o){e.push(A(a));var i,s=a=null;for(i in n)if(l.call(n,i)){var c=n[i];if(null!=c)switch(i){case\"children\":a=c;break;case\"dangerouslySetInnerHTML\":s=c;break;default:x$1(e,o,i,c)}}e.push(\">\");y$1(e,s,a);return\"string\"===typeof a?(e.push(v(a)),null):a}var E=/^[a-zA-Z][a-zA-Z:_\\.\\-\\d]*$/,T=new Map;function A(e){var n=T.get(e);if(void 0===n){if(!E.test(e))throw Error(l$2(65,e));n=\"<\"+e;T.set(e,n)}return n}function ya$1(e,n,a,o,i){switch(n){case\"select\":e.push(A(\"select\"));var s=null,c=null;for(g in a)if(l.call(a,g)){var d=a[g];if(null!=d)switch(g){case\"children\":s=d;break;case\"dangerouslySetInnerHTML\":c=d;break;case\"defaultValue\":case\"value\":break;default:x$1(e,o,g,d)}}e.push(\">\");y$1(e,c,s);return s;case\"option\":c=i.selectedValue;e.push(A(\"option\"));var f=d=null,h=null;var g=null;for(s in a)if(l.call(a,s)){var b=a[s];if(null!=b)switch(s){case\"children\":d=b;break;case\"selected\":h=b;break;case\"dangerouslySetInnerHTML\":g=b;break;case\"value\":f=b;default:x$1(e,o,s,b)}}if(null!=c)if(a=null!==f?\"\"+f:ua$1(d),x(c)){for(o=0;o<c.length;o++)if(\"\"+c[o]===a){e.push(' selected=\"\"');break}}else\"\"+c===a&&e.push(' selected=\"\"');else h&&e.push(' selected=\"\"');e.push(\">\");y$1(e,g,d);return d;case\"textarea\":e.push(A(\"textarea\"));g=c=s=null;for(d in a)if(l.call(a,d)&&(f=a[d],null!=f))switch(d){case\"children\":g=f;break;case\"value\":s=f;break;case\"defaultValue\":c=f;break;case\"dangerouslySetInnerHTML\":throw Error(l$2(91));default:x$1(e,o,d,f)}null===s&&null!==c&&(s=c);e.push(\">\");if(null!=g){if(null!=s)throw Error(l$2(92));if(x(g)&&1<g.length)throw Error(l$2(93));s=\"\"+g}\"string\"===typeof s&&\"\\n\"===s[0]&&e.push(\"\\n\");null!==s&&e.push(v(\"\"+s));return null;case\"input\":e.push(A(\"input\"));f=g=d=s=null;for(c in a)if(l.call(a,c)&&(h=a[c],null!=h))switch(c){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(l$2(399,\"input\"));case\"defaultChecked\":f=h;break;case\"defaultValue\":d=h;break;case\"checked\":g=h;break;case\"value\":s=h;break;default:x$1(e,o,c,h)}null!==g?x$1(e,o,\"checked\",g):null!==f&&x$1(e,o,\"checked\",f);null!==s?x$1(e,o,\"value\",s):null!==d&&x$1(e,o,\"value\",d);e.push(\"/>\");return null;case\"menuitem\":e.push(A(\"menuitem\"));for(var m in a)if(l.call(a,m)&&(s=a[m],null!=s))switch(m){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(l$2(400));default:x$1(e,o,m,s)}e.push(\">\");return null;case\"title\":e.push(A(\"title\"));s=null;for(b in a)if(l.call(a,b)&&(c=a[b],null!=c))switch(b){case\"children\":s=c;break;case\"dangerouslySetInnerHTML\":throw Error(l$2(434));default:x$1(e,o,b,c)}e.push(\">\");return s;case\"listing\":case\"pre\":e.push(A(n));c=s=null;for(f in a)if(l.call(a,f)&&(d=a[f],null!=d))switch(f){case\"children\":s=d;break;case\"dangerouslySetInnerHTML\":c=d;break;default:x$1(e,o,f,d)}e.push(\">\");if(null!=c){if(null!=s)throw Error(l$2(60));if(\"object\"!==typeof c||!(\"__html\"in c))throw Error(l$2(61));a=c.__html;null!==a&&void 0!==a&&(\"string\"===typeof a&&0<a.length&&\"\\n\"===a[0]?e.push(\"\\n\",a):e.push(\"\"+a))}\"string\"===typeof s&&\"\\n\"===s[0]&&e.push(\"\\n\");return s;case\"area\":case\"base\":case\"br\":case\"col\":case\"embed\":case\"hr\":case\"img\":case\"keygen\":case\"link\":case\"meta\":case\"param\":case\"source\":case\"track\":case\"wbr\":e.push(A(n));for(var S in a)if(l.call(a,S)&&(s=a[S],null!=s))switch(S){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(l$2(399,n));default:x$1(e,o,S,s)}e.push(\"/>\");return null;case\"annotation-xml\":case\"color-profile\":case\"font-face\":case\"font-face-src\":case\"font-face-uri\":case\"font-face-format\":case\"font-face-name\":case\"missing-glyph\":return va$1(e,a,n,o);case\"html\":return 0===i.insertionMode&&e.push(\"<!DOCTYPE html>\"),va$1(e,a,n,o);default:if(-1===n.indexOf(\"-\")&&\"string\"!==typeof a.is)return va$1(e,a,n,o);e.push(A(n));c=s=null;for(h in a)if(l.call(a,h)&&(d=a[h],null!=d))switch(h){case\"children\":s=d;break;case\"dangerouslySetInnerHTML\":c=d;break;case\"style\":ta$1(e,o,d);break;case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":break;default:ja$1(h)&&\"function\"!==typeof d&&\"symbol\"!==typeof d&&e.push(\" \",h,'=\"',v(d),'\"')}e.push(\">\");y$1(e,c,s);return s}}function za$1(e,n,a){e.push('\\x3c!--$?--\\x3e<template id=\"');if(null===a)throw Error(l$2(395));e.push(a);return e.push('\"></template>')}function Aa$1(e,n,a,o){switch(a.insertionMode){case 0:case 1:return e.push('<div hidden id=\"'),e.push(n.segmentPrefix),n=o.toString(16),e.push(n),e.push('\">');case 2:return e.push('<svg aria-hidden=\"true\" style=\"display:none\" id=\"'),e.push(n.segmentPrefix),n=o.toString(16),e.push(n),e.push('\">');case 3:return e.push('<math aria-hidden=\"true\" style=\"display:none\" id=\"'),e.push(n.segmentPrefix),n=o.toString(16),e.push(n),e.push('\">');case 4:return e.push('<table hidden id=\"'),e.push(n.segmentPrefix),n=o.toString(16),e.push(n),e.push('\">');case 5:return e.push('<table hidden><tbody id=\"'),e.push(n.segmentPrefix),n=o.toString(16),e.push(n),e.push('\">');case 6:return e.push('<table hidden><tr id=\"'),e.push(n.segmentPrefix),n=o.toString(16),e.push(n),e.push('\">');case 7:return e.push('<table hidden><colgroup id=\"'),e.push(n.segmentPrefix),n=o.toString(16),e.push(n),e.push('\">');default:throw Error(l$2(397))}}function Ba$1(e,n){switch(n.insertionMode){case 0:case 1:return e.push(\"</div>\");case 2:return e.push(\"</svg>\");case 3:return e.push(\"</math>\");case 4:return e.push(\"</table>\");case 5:return e.push(\"</tbody></table>\");case 6:return e.push(\"</tr></table>\");case 7:return e.push(\"</colgroup></table>\");default:throw Error(l$2(397))}}var R=/[<\\u2028\\u2029]/g;function Da$1(e){return JSON.stringify(e).replace(R,(function(e){switch(e){case\"<\":return\"\\\\u003c\";case\"\\u2028\":return\"\\\\u2028\";case\"\\u2029\":return\"\\\\u2029\";default:throw Error(\"escapeJSStringsForInstructionScripts encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\")}}))}function Ea$1(e,n){n=void 0===n?\"\":n;return{bootstrapChunks:[],startInlineScript:\"<script>\",placeholderPrefix:n+\"P:\",segmentPrefix:n+\"S:\",boundaryPrefix:n+\"B:\",idPrefix:n,nextSuspenseID:0,sentCompleteSegmentFunction:!1,sentCompleteBoundaryFunction:!1,sentClientRenderFunction:!1,generateStaticMarkup:e}}function Fa$1(e,n,a,o){if(a.generateStaticMarkup)return e.push(v(n)),!1;\"\"===n?e=o:(o&&e.push(\"\\x3c!-- --\\x3e\"),e.push(v(n)),e=!0);return e}var _=Object.assign,I=Symbol.for(\"react.element\"),B=Symbol.for(\"react.portal\"),N=Symbol.for(\"react.fragment\"),z=Symbol.for(\"react.strict_mode\"),V=Symbol.for(\"react.profiler\"),j=Symbol.for(\"react.provider\"),O=Symbol.for(\"react.context\"),H=Symbol.for(\"react.forward_ref\"),U=Symbol.for(\"react.suspense\"),K=Symbol.for(\"react.suspense_list\"),ee=Symbol.for(\"react.memo\"),te=Symbol.for(\"react.lazy\"),ne=Symbol.for(\"react.scope\"),re=Symbol.for(\"react.debug_trace_mode\"),ae=Symbol.for(\"react.legacy_hidden\"),oe=Symbol.for(\"react.default_value\"),le=Symbol.iterator;function Xa$1(e){if(null==e)return null;if(\"function\"===typeof e)return e.displayName||e.name||null;if(\"string\"===typeof e)return e;switch(e){case N:return\"Fragment\";case B:return\"Portal\";case V:return\"Profiler\";case z:return\"StrictMode\";case U:return\"Suspense\";case K:return\"SuspenseList\"}if(\"object\"===typeof e)switch(e.$$typeof){case O:return(e.displayName||\"Context\")+\".Consumer\";case j:return(e._context.displayName||\"Context\")+\".Provider\";case H:var n=e.render;e=e.displayName;e||(e=n.displayName||n.name||\"\",e=\"\"!==e?\"ForwardRef(\"+e+\")\":\"ForwardRef\");return e;case ee:return n=e.displayName||null,null!==n?n:Xa$1(e.type)||\"Memo\";case te:n=e._payload;e=e._init;try{return Xa$1(e(n))}catch(e){}}return null}var ue={};function Za$1(e,n){e=e.contextTypes;if(!e)return ue;var a,o={};for(a in e)o[a]=n[a];return o}var ie=null;function F(e,n){if(e!==n){e.context._currentValue2=e.parentValue;e=e.parent;var a=n.parent;if(null===e){if(null!==a)throw Error(l$2(401))}else{if(null===a)throw Error(l$2(401));F(e,a)}n.context._currentValue2=n.value}}function $a$1(e){e.context._currentValue2=e.parentValue;e=e.parent;null!==e&&$a$1(e)}function ab$1(e){var n=e.parent;null!==n&&ab$1(n);e.context._currentValue2=e.value}function bb$1(e,n){e.context._currentValue2=e.parentValue;e=e.parent;if(null===e)throw Error(l$2(402));e.depth===n.depth?F(e,n):bb$1(e,n)}function cb$1(e,n){var a=n.parent;if(null===a)throw Error(l$2(402));e.depth===a.depth?F(e,a):cb$1(e,a);n.context._currentValue2=n.value}function G(e){var n=ie;n!==e&&(null===n?ab$1(e):null===e?$a$1(n):n.depth===e.depth?F(n,e):n.depth>e.depth?bb$1(n,e):cb$1(n,e),ie=e)}var se={isMounted:function(){return!1},enqueueSetState:function(e,n){e=e._reactInternals;null!==e.queue&&e.queue.push(n)},enqueueReplaceState:function(e,n){e=e._reactInternals;e.replace=!0;e.queue=[n]},enqueueForceUpdate:function(){}};function eb$1(e,n,a,o){var l=void 0!==e.state?e.state:null;e.updater=se;e.props=a;e.state=l;var i={queue:[],replace:!1};e._reactInternals=i;var s=n.contextType;e.context=\"object\"===typeof s&&null!==s?s._currentValue2:o;s=n.getDerivedStateFromProps;\"function\"===typeof s&&(s=s(a,l),l=null===s||void 0===s?l:_({},l,s),e.state=l);if(\"function\"!==typeof n.getDerivedStateFromProps&&\"function\"!==typeof e.getSnapshotBeforeUpdate&&(\"function\"===typeof e.UNSAFE_componentWillMount||\"function\"===typeof e.componentWillMount))if(n=e.state,\"function\"===typeof e.componentWillMount&&e.componentWillMount(),\"function\"===typeof e.UNSAFE_componentWillMount&&e.UNSAFE_componentWillMount(),n!==e.state&&se.enqueueReplaceState(e,e.state,null),null!==i.queue&&0<i.queue.length)if(n=i.queue,s=i.replace,i.queue=null,i.replace=!1,s&&1===n.length)e.state=n[0];else{i=s?n[0]:e.state;l=!0;for(s=s?1:0;s<n.length;s++){var c=n[s];c=\"function\"===typeof c?c.call(e,i,a,o):c;null!=c&&(l?(l=!1,i=_({},i,c)):_(i,c))}e.state=i}else i.queue=null}var ce={id:1,overflow:\"\"};function gb$1(e,n,a){var o=e.id;e=e.overflow;var l=32-de(o)-1;o&=~(1<<l);a+=1;var i=32-de(n)+l;if(30<i){var s=l-l%5;i=(o&(1<<s)-1).toString(32);o>>=s;l-=s;return{id:1<<32-de(n)+l|a<<l|o,overflow:i+e}}return{id:1<<i|a<<l|o,overflow:e}}var de=Math.clz32?Math.clz32:hb$1,fe=Math.log,pe=Math.LN2;function hb$1(e){e>>>=0;return 0===e?32:31-(fe(e)/pe|0)|0}function kb$1(e,n){return e===n&&(0!==e||1/e===1/n)||e!==e&&n!==n}var he=\"function\"===typeof Object.is?Object.is:kb$1,ge=null,be=null,me=null,ye=null,ve=!1,ke=!1,we=0,Se=null,xe=0;function Q$1(){if(null===ge)throw Error(l$2(321));return ge}function pb$1(){if(0<xe)throw Error(l$2(312));return{memoizedState:null,queue:null,next:null}}function qb$1(){null===ye?null===me?(ve=!1,me=ye=pb$1()):(ve=!0,ye=me):null===ye.next?(ve=!1,ye=ye.next=pb$1()):(ve=!0,ye=ye.next);return ye}function rb$1(){be=ge=null;ke=!1;me=null;xe=0;ye=Se=null}function sb$1(e,n){return\"function\"===typeof n?n(e):n}function tb$1(e,n,a){ge=Q$1();ye=qb$1();if(ve){var o=ye.queue;n=o.dispatch;if(null!==Se&&(a=Se.get(o),void 0!==a)){Se.delete(o);o=ye.memoizedState;do{o=e(o,a.action),a=a.next}while(null!==a);ye.memoizedState=o;return[o,n]}return[ye.memoizedState,n]}e=e===sb$1?\"function\"===typeof n?n():n:void 0!==a?a(n):n;ye.memoizedState=e;e=ye.queue={last:null,dispatch:null};e=e.dispatch=ub$1.bind(null,ge,e);return[ye.memoizedState,e]}function vb$1(e,n){ge=Q$1();ye=qb$1();n=void 0===n?null:n;if(null!==ye){var a=ye.memoizedState;if(null!==a&&null!==n){var o=a[1];e:if(null===o)o=!1;else{for(var l=0;l<o.length&&l<n.length;l++)if(!he(n[l],o[l])){o=!1;break e}o=!0}if(o)return a[0]}}e=e();ye.memoizedState=[e,n];return e}function ub$1(e,n,a){if(25<=xe)throw Error(l$2(301));if(e===ge)if(ke=!0,e={action:a,next:null},null===Se&&(Se=new Map),a=Se.get(n),void 0===a)Se.set(n,e);else{for(n=a;null!==n.next;)n=n.next;n.next=e}}function wb$1(){throw Error(l$2(394))}function R$1(){}var $e={readContext:function(e){return e._currentValue2},useContext:function(e){Q$1();return e._currentValue2},useMemo:vb$1,useReducer:tb$1,useRef:function(e){ge=Q$1();ye=qb$1();var n=ye.memoizedState;return null===n?(e={current:e},ye.memoizedState=e):n},useState:function(e){return tb$1(sb$1,e)},useInsertionEffect:R$1,useLayoutEffect:function(){},useCallback:function(e,n){return vb$1((function(){return e}),n)},useImperativeHandle:R$1,useEffect:R$1,useDebugValue:R$1,useDeferredValue:function(e){Q$1();return e},useTransition:function(){Q$1();return[!1,wb$1]},useId:function(){var e=be.treeContext;var n=e.overflow;e=e.id;e=(e&~(1<<32-de(e)-1)).toString(32)+n;var a=Ce;if(null===a)throw Error(l$2(404));n=we++;e=\":\"+a.idPrefix+\"R\"+e;0<n&&(e+=\"H\"+n.toString(32));return e+\":\"},useMutableSource:function(e,n){Q$1();return n(e._source)},useSyncExternalStore:function(e,n,a){if(void 0===a)throw Error(l$2(407));return a()}},Ce=null,Ee=o.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentDispatcher;function zb$1(e){console.error(e);return null}function T$1(){}function Ab$1(e,n,a,o,l,i,s,c,d){var f=[],h=new Set;n={destination:null,responseState:n,progressiveChunkSize:void 0===o?12800:o,status:0,fatalError:null,nextSegmentId:0,allPendingTasks:0,pendingRootTasks:0,completedRootSegment:null,abortableTasks:h,pingedTasks:f,clientRenderedBoundaries:[],completedBoundaries:[],partialBoundaries:[],onError:void 0===l?zb$1:l,onAllReady:void 0===i?T$1:i,onShellReady:void 0===s?T$1:s,onShellError:void 0===c?T$1:c,onFatalError:void 0===d?T$1:d};a=U$1(n,0,null,a,!1,!1);a.parentFlushed=!0;e=Bb$1(n,e,null,a,h,ue,null,ce);f.push(e);return n}function Bb$1(e,n,a,o,l,i,s,c){e.allPendingTasks++;null===a?e.pendingRootTasks++:a.pendingTasks++;var d={node:n,ping:function(){var n=e.pingedTasks;n.push(d);1===n.length&&Cb$1(e)},blockedBoundary:a,blockedSegment:o,abortSet:l,legacyContext:i,context:s,treeContext:c};l.add(d);return d}function U$1(e,n,a,o,l,i){return{status:0,id:-1,index:n,parentFlushed:!1,chunks:[],children:[],formatContext:o,boundary:a,lastPushedText:l,textEmbedded:i}}function V$1(e,n){e=e.onError(n);if(null!=e&&\"string\"!==typeof e)throw Error('onError returned something with a type other than \"string\". onError should return a string and may return null or undefined but must not return anything else. It received something of type \"'+typeof e+'\" instead');return e}function W$1(e,n){var a=e.onShellError;a(n);a=e.onFatalError;a(n);null!==e.destination?(e.status=2,e.destination.destroy(n)):(e.status=1,e.fatalError=n)}function Db$1(e,n,a,o,l){ge={};be=n;we=0;for(e=a(o,l);ke;)ke=!1,we=0,xe+=1,ye=null,e=a(o,l);rb$1();return e}function Eb$1(e,n,a,o){var l=a.render(),i=o.childContextTypes;if(null!==i&&void 0!==i){var s=n.legacyContext;if(\"function\"!==typeof a.getChildContext)o=s;else{a=a.getChildContext();for(var c in a)if(!(c in i))throw Error(l$2(108,Xa$1(o)||\"Unknown\",c));o=_({},s,a)}n.legacyContext=o;X$1(e,n,l);n.legacyContext=s}else X$1(e,n,l)}function Fb(e,n){if(e&&e.defaultProps){n=_({},n);e=e.defaultProps;for(var a in e)void 0===n[a]&&(n[a]=e[a]);return n}return n}function Gb$1(e,n,a,o,l){if(\"function\"===typeof a)if(a.prototype&&a.prototype.isReactComponent){l=Za$1(a,n.legacyContext);var i=a.contextType;i=new a(o,\"object\"===typeof i&&null!==i?i._currentValue2:l);eb$1(i,a,o,l);Eb$1(e,n,i,a)}else{i=Za$1(a,n.legacyContext);l=Db$1(e,n,a,o,i);var s=0!==we;if(\"object\"===typeof l&&null!==l&&\"function\"===typeof l.render&&void 0===l.$$typeof)eb$1(l,a,o,i),Eb$1(e,n,l,a);else if(s){o=n.treeContext;n.treeContext=gb$1(o,1,0);try{X$1(e,n,l)}finally{n.treeContext=o}}else X$1(e,n,l)}else{if(\"string\"!==typeof a){switch(a){case ae:case re:case z:case V:case N:X$1(e,n,o.children);return;case K:X$1(e,n,o.children);return;case ne:throw Error(l$2(343));case U:e:{a=n.blockedBoundary;l=n.blockedSegment;i=o.fallback;o=o.children;s=new Set;var c={id:null,rootSegmentID:-1,parentFlushed:!1,pendingTasks:0,forceClientRender:!1,completedSegments:[],byteSize:0,fallbackAbortableTasks:s,errorDigest:null},d=U$1(e,l.chunks.length,c,l.formatContext,!1,!1);l.children.push(d);l.lastPushedText=!1;var f=U$1(e,0,null,l.formatContext,!1,!1);f.parentFlushed=!0;n.blockedBoundary=c;n.blockedSegment=f;try{if(Hb$1(e,n,o),e.responseState.generateStaticMarkup||f.lastPushedText&&f.textEmbedded&&f.chunks.push(\"\\x3c!-- --\\x3e\"),f.status=1,Y$1(c,f),0===c.pendingTasks)break e}catch(n){f.status=4,c.forceClientRender=!0,c.errorDigest=V$1(e,n)}finally{n.blockedBoundary=a,n.blockedSegment=l}n=Bb$1(e,i,a,d,s,n.legacyContext,n.context,n.treeContext);e.pingedTasks.push(n)}return}if(\"object\"===typeof a&&null!==a)switch(a.$$typeof){case H:o=Db$1(e,n,a.render,o,l);if(0!==we){a=n.treeContext;n.treeContext=gb$1(a,1,0);try{X$1(e,n,o)}finally{n.treeContext=a}}else X$1(e,n,o);return;case ee:a=a.type;o=Fb(a,o);Gb$1(e,n,a,o,l);return;case j:l=o.children;a=a._context;o=o.value;i=a._currentValue2;a._currentValue2=o;s=ie;ie=o={parent:s,depth:null===s?0:s.depth+1,context:a,parentValue:i,value:o};n.context=o;X$1(e,n,l);e=ie;if(null===e)throw Error(l$2(403));o=e.parentValue;e.context._currentValue2=o===oe?e.context._defaultValue:o;e=ie=e.parent;n.context=e;return;case O:o=o.children;o=o(a._currentValue2);X$1(e,n,o);return;case te:l=a._init;a=l(a._payload);o=Fb(a,o);Gb$1(e,n,a,o,void 0);return}throw Error(l$2(130,null==a?a:typeof a,\"\"))}l=n.blockedSegment;i=ya$1(l.chunks,a,o,e.responseState,l.formatContext);l.lastPushedText=!1;s=l.formatContext;l.formatContext=ra$1(s,a,o);Hb$1(e,n,i);l.formatContext=s;switch(a){case\"area\":case\"base\":case\"br\":case\"col\":case\"embed\":case\"hr\":case\"img\":case\"input\":case\"keygen\":case\"link\":case\"meta\":case\"param\":case\"source\":case\"track\":case\"wbr\":break;default:l.chunks.push(\"</\",a,\">\")}l.lastPushedText=!1}}function X$1(e,n,a){n.node=a;if(\"object\"===typeof a&&null!==a){switch(a.$$typeof){case I:Gb$1(e,n,a.type,a.props,a.ref);return;case B:throw Error(l$2(257));case te:var o=a._init;a=o(a._payload);X$1(e,n,a);return}if(x(a)){Ib$1(e,n,a);return}null===a||\"object\"!==typeof a?o=null:(o=le&&a[le]||a[\"@@iterator\"],o=\"function\"===typeof o?o:null);if(o&&(o=o.call(a))){a=o.next();if(!a.done){var l=[];do{l.push(a.value),a=o.next()}while(!a.done);Ib$1(e,n,l)}return}e=Object.prototype.toString.call(a);throw Error(l$2(31,\"[object Object]\"===e?\"object with keys {\"+Object.keys(a).join(\", \")+\"}\":e))}\"string\"===typeof a?(o=n.blockedSegment,o.lastPushedText=Fa$1(n.blockedSegment.chunks,a,e.responseState,o.lastPushedText)):\"number\"===typeof a&&(o=n.blockedSegment,o.lastPushedText=Fa$1(n.blockedSegment.chunks,\"\"+a,e.responseState,o.lastPushedText))}function Ib$1(e,n,a){for(var o=a.length,l=0;l<o;l++){var i=n.treeContext;n.treeContext=gb$1(i,o,l);try{Hb$1(e,n,a[l])}finally{n.treeContext=i}}}function Hb$1(e,n,a){var o=n.blockedSegment.formatContext,l=n.legacyContext,i=n.context;try{return X$1(e,n,a)}catch(d){if(rb$1(),\"object\"!==typeof d||null===d||\"function\"!==typeof d.then)throw n.blockedSegment.formatContext=o,n.legacyContext=l,n.context=i,G(i),d;a=d;var s=n.blockedSegment,c=U$1(e,s.chunks.length,null,s.formatContext,s.lastPushedText,!0);s.children.push(c);s.lastPushedText=!1;e=Bb$1(e,n.node,n.blockedBoundary,c,n.abortSet,n.legacyContext,n.context,n.treeContext).ping;a.then(e,e);n.blockedSegment.formatContext=o;n.legacyContext=l;n.context=i;G(i)}}function Jb$1(e){var n=e.blockedBoundary;e=e.blockedSegment;e.status=3;Kb$1(this,n,e)}function Lb$1(e,n,a){var o=e.blockedBoundary;e.blockedSegment.status=3;null===o?(n.allPendingTasks--,2!==n.status&&(n.status=2,null!==n.destination&&n.destination.push(null))):(o.pendingTasks--,o.forceClientRender||(o.forceClientRender=!0,e=void 0===a?Error(l$2(432)):a,o.errorDigest=n.onError(e),o.parentFlushed&&n.clientRenderedBoundaries.push(o)),o.fallbackAbortableTasks.forEach((function(e){return Lb$1(e,n,a)})),o.fallbackAbortableTasks.clear(),n.allPendingTasks--,0===n.allPendingTasks&&(o=n.onAllReady,o()))}function Y$1(e,n){if(0===n.chunks.length&&1===n.children.length&&null===n.children[0].boundary){var a=n.children[0];a.id=n.id;a.parentFlushed=!0;1===a.status&&Y$1(e,a)}else e.completedSegments.push(n)}function Kb$1(e,n,a){if(null===n){if(a.parentFlushed){if(null!==e.completedRootSegment)throw Error(l$2(389));e.completedRootSegment=a}e.pendingRootTasks--;0===e.pendingRootTasks&&(e.onShellError=T$1,n=e.onShellReady,n())}else n.pendingTasks--,n.forceClientRender||(0===n.pendingTasks?(a.parentFlushed&&1===a.status&&Y$1(n,a),n.parentFlushed&&e.completedBoundaries.push(n),n.fallbackAbortableTasks.forEach(Jb$1,e),n.fallbackAbortableTasks.clear()):a.parentFlushed&&1===a.status&&(Y$1(n,a),1===n.completedSegments.length&&n.parentFlushed&&e.partialBoundaries.push(n)));e.allPendingTasks--;0===e.allPendingTasks&&(e=e.onAllReady,e())}function Cb$1(e){if(2!==e.status){var n=ie,a=Ee.current;Ee.current=$e;var o=Ce;Ce=e.responseState;try{var l,i=e.pingedTasks;for(l=0;l<i.length;l++){var s=i[l];var c=e,d=s.blockedSegment;if(0===d.status){G(s.context);try{X$1(c,s,s.node),c.responseState.generateStaticMarkup||d.lastPushedText&&d.textEmbedded&&d.chunks.push(\"\\x3c!-- --\\x3e\"),s.abortSet.delete(s),d.status=1,Kb$1(c,s.blockedBoundary,d)}catch(e){if(rb$1(),\"object\"===typeof e&&null!==e&&\"function\"===typeof e.then){var f=s.ping;e.then(f,f)}else{s.abortSet.delete(s);d.status=4;var h=s.blockedBoundary,g=e,b=V$1(c,g);null===h?W$1(c,g):(h.pendingTasks--,h.forceClientRender||(h.forceClientRender=!0,h.errorDigest=b,h.parentFlushed&&c.clientRenderedBoundaries.push(h)));c.allPendingTasks--;if(0===c.allPendingTasks){var m=c.onAllReady;m()}}}}}i.splice(0,l);null!==e.destination&&Mb$1(e,e.destination)}catch(n){V$1(e,n),W$1(e,n)}finally{Ce=o,Ee.current=a,a===$e&&G(n)}}}function Z$1(e,n,a){a.parentFlushed=!0;switch(a.status){case 0:var o=a.id=e.nextSegmentId++;a.lastPushedText=!1;a.textEmbedded=!1;e=e.responseState;n.push('<template id=\"');n.push(e.placeholderPrefix);e=o.toString(16);n.push(e);return n.push('\"></template>');case 1:a.status=2;var l=!0;o=a.chunks;var i=0;a=a.children;for(var s=0;s<a.length;s++){for(l=a[s];i<l.index;i++)n.push(o[i]);l=Nb$1(e,n,l)}for(;i<o.length-1;i++)n.push(o[i]);i<o.length&&(l=n.push(o[i]));return l;default:throw Error(l$2(390))}}function Nb$1(e,n,a){var o=a.boundary;if(null===o)return Z$1(e,n,a);o.parentFlushed=!0;if(o.forceClientRender)return e.responseState.generateStaticMarkup||(o=o.errorDigest,n.push(\"\\x3c!--$!--\\x3e\"),n.push(\"<template\"),o&&(n.push(' data-dgst=\"'),o=v(o),n.push(o),n.push('\"')),n.push(\"></template>\")),Z$1(e,n,a),e=!!e.responseState.generateStaticMarkup||n.push(\"\\x3c!--/$--\\x3e\"),e;if(0<o.pendingTasks){o.rootSegmentID=e.nextSegmentId++;0<o.completedSegments.length&&e.partialBoundaries.push(o);var l=e.responseState;var i=l.nextSuspenseID++;l=l.boundaryPrefix+i.toString(16);o=o.id=l;za$1(n,e.responseState,o);Z$1(e,n,a);return n.push(\"\\x3c!--/$--\\x3e\")}if(o.byteSize>e.progressiveChunkSize)return o.rootSegmentID=e.nextSegmentId++,e.completedBoundaries.push(o),za$1(n,e.responseState,o.id),Z$1(e,n,a),n.push(\"\\x3c!--/$--\\x3e\");e.responseState.generateStaticMarkup||n.push(\"\\x3c!--$--\\x3e\");a=o.completedSegments;if(1!==a.length)throw Error(l$2(391));Nb$1(e,n,a[0]);e=!!e.responseState.generateStaticMarkup||n.push(\"\\x3c!--/$--\\x3e\");return e}function Ob$1(e,n,a){Aa$1(n,e.responseState,a.formatContext,a.id);Nb$1(e,n,a);return Ba$1(n,a.formatContext)}function Pb$1(e,n,a){for(var o=a.completedSegments,l=0;l<o.length;l++)Qb$1(e,n,a,o[l]);o.length=0;e=e.responseState;o=a.id;a=a.rootSegmentID;n.push(e.startInlineScript);e.sentCompleteBoundaryFunction?n.push('$RC(\"'):(e.sentCompleteBoundaryFunction=!0,n.push('function $RC(a,b){a=document.getElementById(a);b=document.getElementById(b);b.parentNode.removeChild(b);if(a){a=a.previousSibling;var f=a.parentNode,c=a.nextSibling,e=0;do{if(c&&8===c.nodeType){var d=c.data;if(\"/$\"===d)if(0===e)break;else e--;else\"$\"!==d&&\"$?\"!==d&&\"$!\"!==d||e++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;b.firstChild;)f.insertBefore(b.firstChild,c);a.data=\"$\";a._reactRetry&&a._reactRetry()}};$RC(\"'));if(null===o)throw Error(l$2(395));a=a.toString(16);n.push(o);n.push('\",\"');n.push(e.segmentPrefix);n.push(a);return n.push('\")<\\/script>')}function Qb$1(e,n,a,o){if(2===o.status)return!0;var l=o.id;if(-1===l){if(-1===(o.id=a.rootSegmentID))throw Error(l$2(392));return Ob$1(e,n,o)}Ob$1(e,n,o);e=e.responseState;n.push(e.startInlineScript);e.sentCompleteSegmentFunction?n.push('$RS(\"'):(e.sentCompleteSegmentFunction=!0,n.push('function $RS(a,b){a=document.getElementById(a);b=document.getElementById(b);for(a.parentNode.removeChild(a);a.firstChild;)b.parentNode.insertBefore(a.firstChild,b);b.parentNode.removeChild(b)};$RS(\"'));n.push(e.segmentPrefix);l=l.toString(16);n.push(l);n.push('\",\"');n.push(e.placeholderPrefix);n.push(l);return n.push('\")<\\/script>')}function Mb$1(e,n){try{var a=e.completedRootSegment;if(null!==a&&0===e.pendingRootTasks){Nb$1(e,n,a);e.completedRootSegment=null;var o=e.responseState.bootstrapChunks;for(a=0;a<o.length-1;a++)n.push(o[a]);a<o.length&&n.push(o[a])}var l,i=e.clientRenderedBoundaries;for(l=0;l<i.length;l++){var s=i[l];o=n;var c=e.responseState,d=s.id,f=s.errorDigest,h=s.errorMessage,g=s.errorComponentStack;o.push(c.startInlineScript);c.sentClientRenderFunction?o.push('$RX(\"'):(c.sentClientRenderFunction=!0,o.push('function $RX(b,c,d,e){var a=document.getElementById(b);a&&(b=a.previousSibling,b.data=\"$!\",a=a.dataset,c&&(a.dgst=c),d&&(a.msg=d),e&&(a.stck=e),b._reactRetry&&b._reactRetry())};$RX(\"'));if(null===d)throw Error(l$2(395));o.push(d);o.push('\"');if(f||h||g){o.push(\",\");var b=Da$1(f||\"\");o.push(b)}if(h||g){o.push(\",\");var m=Da$1(h||\"\");o.push(m)}if(g){o.push(\",\");var S=Da$1(g);o.push(S)}if(!o.push(\")<\\/script>\")){e.destination=null;l++;i.splice(0,l);return}}i.splice(0,l);var x=e.completedBoundaries;for(l=0;l<x.length;l++)if(!Pb$1(e,n,x[l])){e.destination=null;l++;x.splice(0,l);return}x.splice(0,l);var $=e.partialBoundaries;for(l=0;l<$.length;l++){var E=$[l];e:{i=e;s=n;var T=E.completedSegments;for(c=0;c<T.length;c++)if(!Qb$1(i,s,E,T[c])){c++;T.splice(0,c);var R=!1;break e}T.splice(0,c);R=!0}if(!R){e.destination=null;l++;$.splice(0,l);return}}$.splice(0,l);var _=e.completedBoundaries;for(l=0;l<_.length;l++)if(!Pb$1(e,n,_[l])){e.destination=null;l++;_.splice(0,l);return}_.splice(0,l)}finally{0===e.allPendingTasks&&0===e.pingedTasks.length&&0===e.clientRenderedBoundaries.length&&0===e.completedBoundaries.length&&n.push(null)}}function Rb$1(e,n){try{var a=e.abortableTasks;a.forEach((function(a){return Lb$1(a,e,n)}));a.clear();null!==e.destination&&Mb$1(e,e.destination)}catch(n){V$1(e,n),W$1(e,n)}}function Sb$1(){}function Tb$1(e,n,a,o){var l=!1,i=null,s=\"\",c={push:function(e){null!==e&&(s+=e);return!0},destroy:function(e){l=!0;i=e}},d=!1;e=Ab$1(e,Ea$1(a,n?n.identifierPrefix:void 0),{insertionMode:1,selectedValue:null},Infinity,Sb$1,void 0,(function(){d=!0}),void 0,void 0);Cb$1(e);Rb$1(e,o);if(1===e.status)e.status=2,c.destroy(e.fatalError);else if(2!==e.status&&null===e.destination){e.destination=c;try{Mb$1(e,c)}catch(n){V$1(e,n),W$1(e,n)}}if(l)throw i;if(!d)throw Error(l$2(426));return s}a.renderToNodeStream=function(){throw Error(l$2(207))};a.renderToStaticMarkup=function(e,n){return Tb$1(e,n,!0,'The server used \"renderToStaticMarkup\" which does not support Suspense. If you intended to have the server wait for the suspended component please switch to \"renderToReadableStream\" which supports Suspense on the server')};a.renderToStaticNodeStream=function(){throw Error(l$2(208))};a.renderToString=function(e,n){return Tb$1(e,n,!1,'The server used \"renderToString\" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to \"renderToReadableStream\" which supports Suspense on the server')};a.version=\"18.3.1\";var Fe=e;try{\"default\"in e&&(Fe=e.default)}catch(e){}var Te={};var Re=Fe;function k(e){for(var n=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+e,a=1;a<arguments.length;a++)n+=\"&args[]=\"+encodeURIComponent(arguments[a]);return\"Minified React error #\"+e+\"; visit \"+n+\" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\"}var Pe=null,_e=0;function p(e,n){if(0!==n.length)if(512<n.length)0<_e&&(e.enqueue(new Uint8Array(Pe.buffer,0,_e)),Pe=new Uint8Array(512),_e=0),e.enqueue(n);else{var a=Pe.length-_e;a<n.length&&(0===a?e.enqueue(Pe):(Pe.set(n.subarray(0,a),_e),e.enqueue(Pe),n=n.subarray(a)),Pe=new Uint8Array(512),_e=0);Pe.set(n,_e);_e+=n.length}}function t(e,n){p(e,n);return!0}function ba(e){Pe&&0<_e&&(e.enqueue(new Uint8Array(Pe.buffer,0,_e)),Pe=null,_e=0)}var Me=new TextEncoder;function u(e){return Me.encode(e)}function w(e){return Me.encode(e)}function da(e,n){\"function\"===typeof e.error?e.error(n):e.close()}var Ie=Object.prototype.hasOwnProperty,De=/^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$/,Be={},Ne={};function ia(e){if(Ie.call(Ne,e))return!0;if(Ie.call(Be,e))return!1;if(De.test(e))return Ne[e]=!0;Be[e]=!0;return!1}function y(e,n,a,o,l,i,s){this.acceptsBooleans=2===n||3===n||4===n;this.attributeName=o;this.attributeNamespace=l;this.mustUseProperty=a;this.propertyName=e;this.type=n;this.sanitizeURL=i;this.removeEmptyString=s}var ze={};\"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style\".split(\" \").forEach((function(e){ze[e]=new y(e,0,!1,e,null,!1,!1)}));[[\"acceptCharset\",\"accept-charset\"],[\"className\",\"class\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"]].forEach((function(e){var n=e[0];ze[n]=new y(n,1,!1,e[1],null,!1,!1)}));[\"contentEditable\",\"draggable\",\"spellCheck\",\"value\"].forEach((function(e){ze[e]=new y(e,2,!1,e.toLowerCase(),null,!1,!1)}));[\"autoReverse\",\"externalResourcesRequired\",\"focusable\",\"preserveAlpha\"].forEach((function(e){ze[e]=new y(e,2,!1,e,null,!1,!1)}));\"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope\".split(\" \").forEach((function(e){ze[e]=new y(e,3,!1,e.toLowerCase(),null,!1,!1)}));[\"checked\",\"multiple\",\"muted\",\"selected\"].forEach((function(e){ze[e]=new y(e,3,!0,e,null,!1,!1)}));[\"capture\",\"download\"].forEach((function(e){ze[e]=new y(e,4,!1,e,null,!1,!1)}));[\"cols\",\"rows\",\"size\",\"span\"].forEach((function(e){ze[e]=new y(e,6,!1,e,null,!1,!1)}));[\"rowSpan\",\"start\"].forEach((function(e){ze[e]=new y(e,5,!1,e.toLowerCase(),null,!1,!1)}));var Ve=/[\\-:]([a-z])/g;function ka(e){return e[1].toUpperCase()}\"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height\".split(\" \").forEach((function(e){var n=e.replace(Ve,ka);ze[n]=new y(n,1,!1,e,null,!1,!1)}));\"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type\".split(\" \").forEach((function(e){var n=e.replace(Ve,ka);ze[n]=new y(n,1,!1,e,\"http://www.w3.org/1999/xlink\",!1,!1)}));[\"xml:base\",\"xml:lang\",\"xml:space\"].forEach((function(e){var n=e.replace(Ve,ka);ze[n]=new y(n,1,!1,e,\"http://www.w3.org/XML/1998/namespace\",!1,!1)}));[\"tabIndex\",\"crossOrigin\"].forEach((function(e){ze[e]=new y(e,1,!1,e.toLowerCase(),null,!1,!1)}));ze.xlinkHref=new y(\"xlinkHref\",1,!1,\"xlink:href\",\"http://www.w3.org/1999/xlink\",!0,!1);[\"src\",\"href\",\"action\",\"formAction\"].forEach((function(e){ze[e]=new y(e,1,!1,e.toLowerCase(),null,!0,!0)}));var Ae={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Le=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(Ae).forEach((function(e){Le.forEach((function(n){n=n+e.charAt(0).toUpperCase()+e.substring(1);Ae[n]=Ae[e]}))}));var je=/[\"'&<>]/;function C(e){if(\"boolean\"===typeof e||\"number\"===typeof e)return\"\"+e;e=\"\"+e;var n=je.exec(e);if(n){var a,o=\"\",l=0;for(a=n.index;a<e.length;a++){switch(e.charCodeAt(a)){case 34:n=\"&quot;\";break;case 38:n=\"&amp;\";break;case 39:n=\"&#x27;\";break;case 60:n=\"&lt;\";break;case 62:n=\"&gt;\";break;default:continue}l!==a&&(o+=e.substring(l,a));l=a+1;o+=n}e=l!==a?o+e.substring(l,a):o}return e}var Oe=/([A-Z])/g,qe=/^ms-/,We=Array.isArray,He=w(\"<script>\"),Ue=w(\"<\\/script>\"),Ze=w('<script src=\"'),Xe=w('<script type=\"module\" src=\"'),Je=w('\" async=\"\"><\\/script>'),Ge=/(<\\/|<)(s)(cript)/gi;function ya(e,n,a,o){return n+(\"s\"===a?\"\\\\u0073\":\"\\\\u0053\")+o}function za(e,n,a,o,l){e=void 0===e?\"\":e;n=void 0===n?He:w('<script nonce=\"'+C(n)+'\">');var i=[];void 0!==a&&i.push(n,u((\"\"+a).replace(Ge,ya)),Ue);if(void 0!==o)for(a=0;a<o.length;a++)i.push(Ze,u(C(o[a])),Je);if(void 0!==l)for(o=0;o<l.length;o++)i.push(Xe,u(C(l[o])),Je);return{bootstrapChunks:i,startInlineScript:n,placeholderPrefix:w(e+\"P:\"),segmentPrefix:w(e+\"S:\"),boundaryPrefix:e+\"B:\",idPrefix:e,nextSuspenseID:0,sentCompleteSegmentFunction:!1,sentCompleteBoundaryFunction:!1,sentClientRenderFunction:!1}}function D(e,n){return{insertionMode:e,selectedValue:n}}function Aa(e){return D(\"http://www.w3.org/2000/svg\"===e?2:\"http://www.w3.org/1998/Math/MathML\"===e?3:0,null)}function Ba(e,n,a){switch(n){case\"select\":return D(1,null!=a.value?a.value:a.defaultValue);case\"svg\":return D(2,null);case\"math\":return D(3,null);case\"foreignObject\":return D(1,null);case\"table\":return D(4,null);case\"thead\":case\"tbody\":case\"tfoot\":return D(5,null);case\"colgroup\":return D(7,null);case\"tr\":return D(6,null)}return 4<=e.insertionMode||0===e.insertionMode?D(1,null):e}var Qe=w(\"\\x3c!-- --\\x3e\");function Da(e,n,a,o){if(\"\"===n)return o;o&&e.push(Qe);e.push(u(C(n)));return!0}var Ye=new Map,Ke=w(' style=\"'),et=w(\":\"),tt=w(\";\");function Ia(e,n,a){if(\"object\"!==typeof a)throw Error(k(62));n=!0;for(var o in a)if(Ie.call(a,o)){var l=a[o];if(null!=l&&\"boolean\"!==typeof l&&\"\"!==l){if(0===o.indexOf(\"--\")){var i=u(C(o));l=u(C((\"\"+l).trim()))}else{i=o;var s=Ye.get(i);void 0!==s||(s=w(C(i.replace(Oe,\"-$1\").toLowerCase().replace(qe,\"-ms-\"))),Ye.set(i,s)),i=s;l=\"number\"===typeof l?0===l||Ie.call(Ae,o)?u(\"\"+l):u(l+\"px\"):u(C((\"\"+l).trim()))}n?(n=!1,e.push(Ke,i,et,l)):e.push(tt,i,et,l)}}n||e.push(at)}var nt=w(\" \"),rt=w('=\"'),at=w('\"'),ot=w('=\"\"');function J(e,n,a,o){switch(a){case\"style\":Ia(e,n,o);return;case\"defaultValue\":case\"defaultChecked\":case\"innerHTML\":case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":return}if(!(2<a.length)||\"o\"!==a[0]&&\"O\"!==a[0]||\"n\"!==a[1]&&\"N\"!==a[1])if(n=ze.hasOwnProperty(a)?ze[a]:null,null!==n){switch(typeof o){case\"function\":case\"symbol\":return;case\"boolean\":if(!n.acceptsBooleans)return}a=u(n.attributeName);switch(n.type){case 3:o&&e.push(nt,a,ot);break;case 4:!0===o?e.push(nt,a,ot):!1!==o&&e.push(nt,a,rt,u(C(o)),at);break;case 5:isNaN(o)||e.push(nt,a,rt,u(C(o)),at);break;case 6:!isNaN(o)&&1<=o&&e.push(nt,a,rt,u(C(o)),at);break;default:n.sanitizeURL&&(o=\"\"+o),e.push(nt,a,rt,u(C(o)),at)}}else if(ia(a)){switch(typeof o){case\"function\":case\"symbol\":return;case\"boolean\":if(n=a.toLowerCase().slice(0,5),\"data-\"!==n&&\"aria-\"!==n)return}e.push(nt,u(a),rt,u(C(o)),at)}}var lt=w(\">\"),ut=w(\"/>\");function L(e,n,a){if(null!=n){if(null!=a)throw Error(k(60));if(\"object\"!==typeof n||!(\"__html\"in n))throw Error(k(61));n=n.__html;null!==n&&void 0!==n&&e.push(u(\"\"+n))}}function La(e){var n=\"\";Re.Children.forEach(e,(function(e){null!=e&&(n+=e)}));return n}var it=w(' selected=\"\"');function Na(e,n,a,o){e.push(M(a));var l,i=a=null;for(l in n)if(Ie.call(n,l)){var s=n[l];if(null!=s)switch(l){case\"children\":a=s;break;case\"dangerouslySetInnerHTML\":i=s;break;default:J(e,o,l,s)}}e.push(lt);L(e,i,a);return\"string\"===typeof a?(e.push(u(C(a))),null):a}var st=w(\"\\n\"),ct=/^[a-zA-Z][a-zA-Z:_\\.\\-\\d]*$/,dt=new Map;function M(e){var n=dt.get(e);if(void 0===n){if(!ct.test(e))throw Error(k(65,e));n=w(\"<\"+e);dt.set(e,n)}return n}var ft=w(\"<!DOCTYPE html>\");function Sa(e,n,a,o,l){switch(n){case\"select\":e.push(M(\"select\"));var i=null,s=null;for(h in a)if(Ie.call(a,h)){var c=a[h];if(null!=c)switch(h){case\"children\":i=c;break;case\"dangerouslySetInnerHTML\":s=c;break;case\"defaultValue\":case\"value\":break;default:J(e,o,h,c)}}e.push(lt);L(e,s,i);return i;case\"option\":s=l.selectedValue;e.push(M(\"option\"));var d=c=null,f=null;var h=null;for(i in a)if(Ie.call(a,i)){var g=a[i];if(null!=g)switch(i){case\"children\":c=g;break;case\"selected\":f=g;break;case\"dangerouslySetInnerHTML\":h=g;break;case\"value\":d=g;default:J(e,o,i,g)}}if(null!=s)if(a=null!==d?\"\"+d:La(c),We(s)){for(o=0;o<s.length;o++)if(\"\"+s[o]===a){e.push(it);break}}else\"\"+s===a&&e.push(it);else f&&e.push(it);e.push(lt);L(e,h,c);return c;case\"textarea\":e.push(M(\"textarea\"));h=s=i=null;for(c in a)if(Ie.call(a,c)&&(d=a[c],null!=d))switch(c){case\"children\":h=d;break;case\"value\":i=d;break;case\"defaultValue\":s=d;break;case\"dangerouslySetInnerHTML\":throw Error(k(91));default:J(e,o,c,d)}null===i&&null!==s&&(i=s);e.push(lt);if(null!=h){if(null!=i)throw Error(k(92));if(We(h)&&1<h.length)throw Error(k(93));i=\"\"+h}\"string\"===typeof i&&\"\\n\"===i[0]&&e.push(st);null!==i&&e.push(u(C(\"\"+i)));return null;case\"input\":e.push(M(\"input\"));d=h=c=i=null;for(s in a)if(Ie.call(a,s)&&(f=a[s],null!=f))switch(s){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(k(399,\"input\"));case\"defaultChecked\":d=f;break;case\"defaultValue\":c=f;break;case\"checked\":h=f;break;case\"value\":i=f;break;default:J(e,o,s,f)}null!==h?J(e,o,\"checked\",h):null!==d&&J(e,o,\"checked\",d);null!==i?J(e,o,\"value\",i):null!==c&&J(e,o,\"value\",c);e.push(ut);return null;case\"menuitem\":e.push(M(\"menuitem\"));for(var b in a)if(Ie.call(a,b)&&(i=a[b],null!=i))switch(b){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(k(400));default:J(e,o,b,i)}e.push(lt);return null;case\"title\":e.push(M(\"title\"));i=null;for(g in a)if(Ie.call(a,g)&&(s=a[g],null!=s))switch(g){case\"children\":i=s;break;case\"dangerouslySetInnerHTML\":throw Error(k(434));default:J(e,o,g,s)}e.push(lt);return i;case\"listing\":case\"pre\":e.push(M(n));s=i=null;for(d in a)if(Ie.call(a,d)&&(c=a[d],null!=c))switch(d){case\"children\":i=c;break;case\"dangerouslySetInnerHTML\":s=c;break;default:J(e,o,d,c)}e.push(lt);if(null!=s){if(null!=i)throw Error(k(60));if(\"object\"!==typeof s||!(\"__html\"in s))throw Error(k(61));a=s.__html;null!==a&&void 0!==a&&(\"string\"===typeof a&&0<a.length&&\"\\n\"===a[0]?e.push(st,u(a)):e.push(u(\"\"+a)))}\"string\"===typeof i&&\"\\n\"===i[0]&&e.push(st);return i;case\"area\":case\"base\":case\"br\":case\"col\":case\"embed\":case\"hr\":case\"img\":case\"keygen\":case\"link\":case\"meta\":case\"param\":case\"source\":case\"track\":case\"wbr\":e.push(M(n));for(var m in a)if(Ie.call(a,m)&&(i=a[m],null!=i))switch(m){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(k(399,n));default:J(e,o,m,i)}e.push(ut);return null;case\"annotation-xml\":case\"color-profile\":case\"font-face\":case\"font-face-src\":case\"font-face-uri\":case\"font-face-format\":case\"font-face-name\":case\"missing-glyph\":return Na(e,a,n,o);case\"html\":return 0===l.insertionMode&&e.push(ft),Na(e,a,n,o);default:if(-1===n.indexOf(\"-\")&&\"string\"!==typeof a.is)return Na(e,a,n,o);e.push(M(n));s=i=null;for(f in a)if(Ie.call(a,f)&&(c=a[f],null!=c))switch(f){case\"children\":i=c;break;case\"dangerouslySetInnerHTML\":s=c;break;case\"style\":Ia(e,o,c);break;case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":break;default:ia(f)&&\"function\"!==typeof c&&\"symbol\"!==typeof c&&e.push(nt,u(f),rt,u(C(c)),at)}e.push(lt);L(e,s,i);return i}}var pt=w(\"</\"),ht=w(\">\"),gt=w('<template id=\"'),bt=w('\"></template>'),mt=w(\"\\x3c!--$--\\x3e\"),yt=w('\\x3c!--$?--\\x3e<template id=\"'),vt=w('\"></template>'),kt=w(\"\\x3c!--$!--\\x3e\"),wt=w(\"\\x3c!--/$--\\x3e\"),St=w(\"<template\"),xt=w('\"'),$t=w(' data-dgst=\"');w(' data-msg=\"');w(' data-stck=\"');var Ct=w(\"></template>\");function fb(e,n,a){p(e,yt);if(null===a)throw Error(k(395));p(e,a);return t(e,vt)}var Et=w('<div hidden id=\"'),Ft=w('\">'),Tt=w(\"</div>\"),Rt=w('<svg aria-hidden=\"true\" style=\"display:none\" id=\"'),Pt=w('\">'),_t=w(\"</svg>\"),Mt=w('<math aria-hidden=\"true\" style=\"display:none\" id=\"'),It=w('\">'),Dt=w(\"</math>\"),Bt=w('<table hidden id=\"'),Nt=w('\">'),zt=w(\"</table>\"),Vt=w('<table hidden><tbody id=\"'),At=w('\">'),Lt=w(\"</tbody></table>\"),jt=w('<table hidden><tr id=\"'),Ot=w('\">'),qt=w(\"</tr></table>\"),Wt=w('<table hidden><colgroup id=\"'),Ht=w('\">'),Ut=w(\"</colgroup></table>\");function Bb(e,n,a,o){switch(a.insertionMode){case 0:case 1:return p(e,Et),p(e,n.segmentPrefix),p(e,u(o.toString(16))),t(e,Ft);case 2:return p(e,Rt),p(e,n.segmentPrefix),p(e,u(o.toString(16))),t(e,Pt);case 3:return p(e,Mt),p(e,n.segmentPrefix),p(e,u(o.toString(16))),t(e,It);case 4:return p(e,Bt),p(e,n.segmentPrefix),p(e,u(o.toString(16))),t(e,Nt);case 5:return p(e,Vt),p(e,n.segmentPrefix),p(e,u(o.toString(16))),t(e,At);case 6:return p(e,jt),p(e,n.segmentPrefix),p(e,u(o.toString(16))),t(e,Ot);case 7:return p(e,Wt),p(e,n.segmentPrefix),p(e,u(o.toString(16))),t(e,Ht);default:throw Error(k(397))}}function Cb(e,n){switch(n.insertionMode){case 0:case 1:return t(e,Tt);case 2:return t(e,_t);case 3:return t(e,Dt);case 4:return t(e,zt);case 5:return t(e,Lt);case 6:return t(e,qt);case 7:return t(e,Ut);default:throw Error(k(397))}}var Zt=w('function $RS(a,b){a=document.getElementById(a);b=document.getElementById(b);for(a.parentNode.removeChild(a);a.firstChild;)b.parentNode.insertBefore(a.firstChild,b);b.parentNode.removeChild(b)};$RS(\"'),Xt=w('$RS(\"'),Jt=w('\",\"'),Gt=w('\")<\\/script>'),Qt=w('function $RC(a,b){a=document.getElementById(a);b=document.getElementById(b);b.parentNode.removeChild(b);if(a){a=a.previousSibling;var f=a.parentNode,c=a.nextSibling,e=0;do{if(c&&8===c.nodeType){var d=c.data;if(\"/$\"===d)if(0===e)break;else e--;else\"$\"!==d&&\"$?\"!==d&&\"$!\"!==d||e++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;b.firstChild;)f.insertBefore(b.firstChild,c);a.data=\"$\";a._reactRetry&&a._reactRetry()}};$RC(\"'),Yt=w('$RC(\"'),Kt=w('\",\"'),en=w('\")<\\/script>'),tn=w('function $RX(b,c,d,e){var a=document.getElementById(b);a&&(b=a.previousSibling,b.data=\"$!\",a=a.dataset,c&&(a.dgst=c),d&&(a.msg=d),e&&(a.stck=e),b._reactRetry&&b._reactRetry())};$RX(\"'),nn=w('$RX(\"'),rn=w('\"'),an=w(\")<\\/script>\"),on=w(\",\"),ln=/[<\\u2028\\u2029]/g;function Sb(e){return JSON.stringify(e).replace(ln,(function(e){switch(e){case\"<\":return\"\\\\u003c\";case\"\\u2028\":return\"\\\\u2028\";case\"\\u2029\":return\"\\\\u2029\";default:throw Error(\"escapeJSStringsForInstructionScripts encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\")}}))}var un=Object.assign,sn=Symbol.for(\"react.element\"),cn=Symbol.for(\"react.portal\"),dn=Symbol.for(\"react.fragment\"),fn=Symbol.for(\"react.strict_mode\"),pn=Symbol.for(\"react.profiler\"),hn=Symbol.for(\"react.provider\"),gn=Symbol.for(\"react.context\"),bn=Symbol.for(\"react.forward_ref\"),mn=Symbol.for(\"react.suspense\"),yn=Symbol.for(\"react.suspense_list\"),vn=Symbol.for(\"react.memo\"),kn=Symbol.for(\"react.lazy\"),wn=Symbol.for(\"react.scope\"),Sn=Symbol.for(\"react.debug_trace_mode\"),xn=Symbol.for(\"react.legacy_hidden\"),$n=Symbol.for(\"react.default_value\"),Cn=Symbol.iterator;function jc(e){if(null==e)return null;if(\"function\"===typeof e)return e.displayName||e.name||null;if(\"string\"===typeof e)return e;switch(e){case dn:return\"Fragment\";case cn:return\"Portal\";case pn:return\"Profiler\";case fn:return\"StrictMode\";case mn:return\"Suspense\";case yn:return\"SuspenseList\"}if(\"object\"===typeof e)switch(e.$$typeof){case gn:return(e.displayName||\"Context\")+\".Consumer\";case hn:return(e._context.displayName||\"Context\")+\".Provider\";case bn:var n=e.render;e=e.displayName;e||(e=n.displayName||n.name||\"\",e=\"\"!==e?\"ForwardRef(\"+e+\")\":\"ForwardRef\");return e;case vn:return n=e.displayName||null,null!==n?n:jc(e.type)||\"Memo\";case kn:n=e._payload;e=e._init;try{return jc(e(n))}catch(e){}}return null}var En={};function lc(e,n){e=e.contextTypes;if(!e)return En;var a,o={};for(a in e)o[a]=n[a];return o}var Fn=null;function P(e,n){if(e!==n){e.context._currentValue=e.parentValue;e=e.parent;var a=n.parent;if(null===e){if(null!==a)throw Error(k(401))}else{if(null===a)throw Error(k(401));P(e,a)}n.context._currentValue=n.value}}function mc(e){e.context._currentValue=e.parentValue;e=e.parent;null!==e&&mc(e)}function nc(e){var n=e.parent;null!==n&&nc(n);e.context._currentValue=e.value}function oc(e,n){e.context._currentValue=e.parentValue;e=e.parent;if(null===e)throw Error(k(402));e.depth===n.depth?P(e,n):oc(e,n)}function pc(e,n){var a=n.parent;if(null===a)throw Error(k(402));e.depth===a.depth?P(e,a):pc(e,a);n.context._currentValue=n.value}function Q(e){var n=Fn;n!==e&&(null===n?nc(e):null===e?mc(n):n.depth===e.depth?P(n,e):n.depth>e.depth?oc(n,e):pc(n,e),Fn=e)}var Tn={isMounted:function(){return!1},enqueueSetState:function(e,n){e=e._reactInternals;null!==e.queue&&e.queue.push(n)},enqueueReplaceState:function(e,n){e=e._reactInternals;e.replace=!0;e.queue=[n]},enqueueForceUpdate:function(){}};function rc(e,n,a,o){var l=void 0!==e.state?e.state:null;e.updater=Tn;e.props=a;e.state=l;var i={queue:[],replace:!1};e._reactInternals=i;var s=n.contextType;e.context=\"object\"===typeof s&&null!==s?s._currentValue:o;s=n.getDerivedStateFromProps;\"function\"===typeof s&&(s=s(a,l),l=null===s||void 0===s?l:un({},l,s),e.state=l);if(\"function\"!==typeof n.getDerivedStateFromProps&&\"function\"!==typeof e.getSnapshotBeforeUpdate&&(\"function\"===typeof e.UNSAFE_componentWillMount||\"function\"===typeof e.componentWillMount))if(n=e.state,\"function\"===typeof e.componentWillMount&&e.componentWillMount(),\"function\"===typeof e.UNSAFE_componentWillMount&&e.UNSAFE_componentWillMount(),n!==e.state&&Tn.enqueueReplaceState(e,e.state,null),null!==i.queue&&0<i.queue.length)if(n=i.queue,s=i.replace,i.queue=null,i.replace=!1,s&&1===n.length)e.state=n[0];else{i=s?n[0]:e.state;l=!0;for(s=s?1:0;s<n.length;s++){var c=n[s];c=\"function\"===typeof c?c.call(e,i,a,o):c;null!=c&&(l?(l=!1,i=un({},i,c)):un(i,c))}e.state=i}else i.queue=null}var Rn={id:1,overflow:\"\"};function tc(e,n,a){var o=e.id;e=e.overflow;var l=32-Pn(o)-1;o&=~(1<<l);a+=1;var i=32-Pn(n)+l;if(30<i){var s=l-l%5;i=(o&(1<<s)-1).toString(32);o>>=s;l-=s;return{id:1<<32-Pn(n)+l|a<<l|o,overflow:i+e}}return{id:1<<i|a<<l|o,overflow:e}}var Pn=Math.clz32?Math.clz32:vc,_n=Math.log,Mn=Math.LN2;function vc(e){e>>>=0;return 0===e?32:31-(_n(e)/Mn|0)|0}function yc(e,n){return e===n&&(0!==e||1/e===1/n)||e!==e&&n!==n}var In=\"function\"===typeof Object.is?Object.is:yc,Dn=null,Bn=null,Nn=null,zn=null,Vn=!1,An=!1,Ln=0,jn=null,On=0;function W(){if(null===Dn)throw Error(k(321));return Dn}function Ec(){if(0<On)throw Error(k(312));return{memoizedState:null,queue:null,next:null}}function Fc(){null===zn?null===Nn?(Vn=!1,Nn=zn=Ec()):(Vn=!0,zn=Nn):null===zn.next?(Vn=!1,zn=zn.next=Ec()):(Vn=!0,zn=zn.next);return zn}function Gc(){Bn=Dn=null;An=!1;Nn=null;On=0;zn=jn=null}function Hc(e,n){return\"function\"===typeof n?n(e):n}function Ic(e,n,a){Dn=W();zn=Fc();if(Vn){var o=zn.queue;n=o.dispatch;if(null!==jn&&(a=jn.get(o),void 0!==a)){jn.delete(o);o=zn.memoizedState;do{o=e(o,a.action),a=a.next}while(null!==a);zn.memoizedState=o;return[o,n]}return[zn.memoizedState,n]}e=e===Hc?\"function\"===typeof n?n():n:void 0!==a?a(n):n;zn.memoizedState=e;e=zn.queue={last:null,dispatch:null};e=e.dispatch=Jc.bind(null,Dn,e);return[zn.memoizedState,e]}function Kc(e,n){Dn=W();zn=Fc();n=void 0===n?null:n;if(null!==zn){var a=zn.memoizedState;if(null!==a&&null!==n){var o=a[1];e:if(null===o)o=!1;else{for(var l=0;l<o.length&&l<n.length;l++)if(!In(n[l],o[l])){o=!1;break e}o=!0}if(o)return a[0]}}e=e();zn.memoizedState=[e,n];return e}function Jc(e,n,a){if(25<=On)throw Error(k(301));if(e===Dn)if(An=!0,e={action:a,next:null},null===jn&&(jn=new Map),a=jn.get(n),void 0===a)jn.set(n,e);else{for(n=a;null!==n.next;)n=n.next;n.next=e}}function Lc(){throw Error(k(394))}function Mc(){}var qn={readContext:function(e){return e._currentValue},useContext:function(e){W();return e._currentValue},useMemo:Kc,useReducer:Ic,useRef:function(e){Dn=W();zn=Fc();var n=zn.memoizedState;return null===n?(e={current:e},zn.memoizedState=e):n},useState:function(e){return Ic(Hc,e)},useInsertionEffect:Mc,useLayoutEffect:function(){},useCallback:function(e,n){return Kc((function(){return e}),n)},useImperativeHandle:Mc,useEffect:Mc,useDebugValue:Mc,useDeferredValue:function(e){W();return e},useTransition:function(){W();return[!1,Lc]},useId:function(){var e=Bn.treeContext;var n=e.overflow;e=e.id;e=(e&~(1<<32-Pn(e)-1)).toString(32)+n;var a=Wn;if(null===a)throw Error(k(404));n=Ln++;e=\":\"+a.idPrefix+\"R\"+e;0<n&&(e+=\"H\"+n.toString(32));return e+\":\"},useMutableSource:function(e,n){W();return n(e._source)},useSyncExternalStore:function(e,n,a){if(void 0===a)throw Error(k(407));return a()}},Wn=null,Hn=Re.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentDispatcher;function Qc(e){console.error(e);return null}function X(){}function Rc(e,n,a,o,l,i,s,c,d){var f=[],h=new Set;n={destination:null,responseState:n,progressiveChunkSize:void 0===o?12800:o,status:0,fatalError:null,nextSegmentId:0,allPendingTasks:0,pendingRootTasks:0,completedRootSegment:null,abortableTasks:h,pingedTasks:f,clientRenderedBoundaries:[],completedBoundaries:[],partialBoundaries:[],onError:void 0===l?Qc:l,onAllReady:void 0===i?X:i,onShellReady:void 0===s?X:s,onShellError:void 0===c?X:c,onFatalError:void 0===d?X:d};a=Sc(n,0,null,a,!1,!1);a.parentFlushed=!0;e=Tc(n,e,null,a,h,En,null,Rn);f.push(e);return n}function Tc(e,n,a,o,l,i,s,c){e.allPendingTasks++;null===a?e.pendingRootTasks++:a.pendingTasks++;var d={node:n,ping:function(){var n=e.pingedTasks;n.push(d);1===n.length&&Uc(e)},blockedBoundary:a,blockedSegment:o,abortSet:l,legacyContext:i,context:s,treeContext:c};l.add(d);return d}function Sc(e,n,a,o,l,i){return{status:0,id:-1,index:n,parentFlushed:!1,chunks:[],children:[],formatContext:o,boundary:a,lastPushedText:l,textEmbedded:i}}function Y(e,n){e=e.onError(n);if(null!=e&&\"string\"!==typeof e)throw Error('onError returned something with a type other than \"string\". onError should return a string and may return null or undefined but must not return anything else. It received something of type \"'+typeof e+'\" instead');return e}function Vc(e,n){var a=e.onShellError;a(n);a=e.onFatalError;a(n);null!==e.destination?(e.status=2,da(e.destination,n)):(e.status=1,e.fatalError=n)}function Wc(e,n,a,o,l){Dn={};Bn=n;Ln=0;for(e=a(o,l);An;)An=!1,Ln=0,On+=1,zn=null,e=a(o,l);Gc();return e}function Xc(e,n,a,o){var l=a.render(),i=o.childContextTypes;if(null!==i&&void 0!==i){var s=n.legacyContext;if(\"function\"!==typeof a.getChildContext)o=s;else{a=a.getChildContext();for(var c in a)if(!(c in i))throw Error(k(108,jc(o)||\"Unknown\",c));o=un({},s,a)}n.legacyContext=o;Z(e,n,l);n.legacyContext=s}else Z(e,n,l)}function Yc(e,n){if(e&&e.defaultProps){n=un({},n);e=e.defaultProps;for(var a in e)void 0===n[a]&&(n[a]=e[a]);return n}return n}function Zc(e,n,a,o,l){if(\"function\"===typeof a)if(a.prototype&&a.prototype.isReactComponent){l=lc(a,n.legacyContext);var i=a.contextType;i=new a(o,\"object\"===typeof i&&null!==i?i._currentValue:l);rc(i,a,o,l);Xc(e,n,i,a)}else{i=lc(a,n.legacyContext);l=Wc(e,n,a,o,i);var s=0!==Ln;if(\"object\"===typeof l&&null!==l&&\"function\"===typeof l.render&&void 0===l.$$typeof)rc(l,a,o,i),Xc(e,n,l,a);else if(s){o=n.treeContext;n.treeContext=tc(o,1,0);try{Z(e,n,l)}finally{n.treeContext=o}}else Z(e,n,l)}else{if(\"string\"!==typeof a){switch(a){case xn:case Sn:case fn:case pn:case dn:Z(e,n,o.children);return;case yn:Z(e,n,o.children);return;case wn:throw Error(k(343));case mn:e:{a=n.blockedBoundary;l=n.blockedSegment;i=o.fallback;o=o.children;s=new Set;var c={id:null,rootSegmentID:-1,parentFlushed:!1,pendingTasks:0,forceClientRender:!1,completedSegments:[],byteSize:0,fallbackAbortableTasks:s,errorDigest:null},d=Sc(e,l.chunks.length,c,l.formatContext,!1,!1);l.children.push(d);l.lastPushedText=!1;var f=Sc(e,0,null,l.formatContext,!1,!1);f.parentFlushed=!0;n.blockedBoundary=c;n.blockedSegment=f;try{if($c(e,n,o),f.lastPushedText&&f.textEmbedded&&f.chunks.push(Qe),f.status=1,ad(c,f),0===c.pendingTasks)break e}catch(n){f.status=4,c.forceClientRender=!0,c.errorDigest=Y(e,n)}finally{n.blockedBoundary=a,n.blockedSegment=l}n=Tc(e,i,a,d,s,n.legacyContext,n.context,n.treeContext);e.pingedTasks.push(n)}return}if(\"object\"===typeof a&&null!==a)switch(a.$$typeof){case bn:o=Wc(e,n,a.render,o,l);if(0!==Ln){a=n.treeContext;n.treeContext=tc(a,1,0);try{Z(e,n,o)}finally{n.treeContext=a}}else Z(e,n,o);return;case vn:a=a.type;o=Yc(a,o);Zc(e,n,a,o,l);return;case hn:l=o.children;a=a._context;o=o.value;i=a._currentValue;a._currentValue=o;s=Fn;Fn=o={parent:s,depth:null===s?0:s.depth+1,context:a,parentValue:i,value:o};n.context=o;Z(e,n,l);e=Fn;if(null===e)throw Error(k(403));o=e.parentValue;e.context._currentValue=o===$n?e.context._defaultValue:o;e=Fn=e.parent;n.context=e;return;case gn:o=o.children;o=o(a._currentValue);Z(e,n,o);return;case kn:l=a._init;a=l(a._payload);o=Yc(a,o);Zc(e,n,a,o,void 0);return}throw Error(k(130,null==a?a:typeof a,\"\"))}l=n.blockedSegment;i=Sa(l.chunks,a,o,e.responseState,l.formatContext);l.lastPushedText=!1;s=l.formatContext;l.formatContext=Ba(s,a,o);$c(e,n,i);l.formatContext=s;switch(a){case\"area\":case\"base\":case\"br\":case\"col\":case\"embed\":case\"hr\":case\"img\":case\"input\":case\"keygen\":case\"link\":case\"meta\":case\"param\":case\"source\":case\"track\":case\"wbr\":break;default:l.chunks.push(pt,u(a),ht)}l.lastPushedText=!1}}function Z(e,n,a){n.node=a;if(\"object\"===typeof a&&null!==a){switch(a.$$typeof){case sn:Zc(e,n,a.type,a.props,a.ref);return;case cn:throw Error(k(257));case kn:var o=a._init;a=o(a._payload);Z(e,n,a);return}if(We(a)){bd(e,n,a);return}null===a||\"object\"!==typeof a?o=null:(o=Cn&&a[Cn]||a[\"@@iterator\"],o=\"function\"===typeof o?o:null);if(o&&(o=o.call(a))){a=o.next();if(!a.done){var l=[];do{l.push(a.value),a=o.next()}while(!a.done);bd(e,n,l)}return}e=Object.prototype.toString.call(a);throw Error(k(31,\"[object Object]\"===e?\"object with keys {\"+Object.keys(a).join(\", \")+\"}\":e))}\"string\"===typeof a?(o=n.blockedSegment,o.lastPushedText=Da(n.blockedSegment.chunks,a,e.responseState,o.lastPushedText)):\"number\"===typeof a&&(o=n.blockedSegment,o.lastPushedText=Da(n.blockedSegment.chunks,\"\"+a,e.responseState,o.lastPushedText))}function bd(e,n,a){for(var o=a.length,l=0;l<o;l++){var i=n.treeContext;n.treeContext=tc(i,o,l);try{$c(e,n,a[l])}finally{n.treeContext=i}}}function $c(e,n,a){var o=n.blockedSegment.formatContext,l=n.legacyContext,i=n.context;try{return Z(e,n,a)}catch(d){if(Gc(),\"object\"!==typeof d||null===d||\"function\"!==typeof d.then)throw n.blockedSegment.formatContext=o,n.legacyContext=l,n.context=i,Q(i),d;a=d;var s=n.blockedSegment,c=Sc(e,s.chunks.length,null,s.formatContext,s.lastPushedText,!0);s.children.push(c);s.lastPushedText=!1;e=Tc(e,n.node,n.blockedBoundary,c,n.abortSet,n.legacyContext,n.context,n.treeContext).ping;a.then(e,e);n.blockedSegment.formatContext=o;n.legacyContext=l;n.context=i;Q(i)}}function cd(e){var n=e.blockedBoundary;e=e.blockedSegment;e.status=3;dd(this,n,e)}function ed(e,n,a){var o=e.blockedBoundary;e.blockedSegment.status=3;null===o?(n.allPendingTasks--,2!==n.status&&(n.status=2,null!==n.destination&&n.destination.close())):(o.pendingTasks--,o.forceClientRender||(o.forceClientRender=!0,e=void 0===a?Error(k(432)):a,o.errorDigest=n.onError(e),o.parentFlushed&&n.clientRenderedBoundaries.push(o)),o.fallbackAbortableTasks.forEach((function(e){return ed(e,n,a)})),o.fallbackAbortableTasks.clear(),n.allPendingTasks--,0===n.allPendingTasks&&(o=n.onAllReady,o()))}function ad(e,n){if(0===n.chunks.length&&1===n.children.length&&null===n.children[0].boundary){var a=n.children[0];a.id=n.id;a.parentFlushed=!0;1===a.status&&ad(e,a)}else e.completedSegments.push(n)}function dd(e,n,a){if(null===n){if(a.parentFlushed){if(null!==e.completedRootSegment)throw Error(k(389));e.completedRootSegment=a}e.pendingRootTasks--;0===e.pendingRootTasks&&(e.onShellError=X,n=e.onShellReady,n())}else n.pendingTasks--,n.forceClientRender||(0===n.pendingTasks?(a.parentFlushed&&1===a.status&&ad(n,a),n.parentFlushed&&e.completedBoundaries.push(n),n.fallbackAbortableTasks.forEach(cd,e),n.fallbackAbortableTasks.clear()):a.parentFlushed&&1===a.status&&(ad(n,a),1===n.completedSegments.length&&n.parentFlushed&&e.partialBoundaries.push(n)));e.allPendingTasks--;0===e.allPendingTasks&&(e=e.onAllReady,e())}function Uc(e){if(2!==e.status){var n=Fn,a=Hn.current;Hn.current=qn;var o=Wn;Wn=e.responseState;try{var l,i=e.pingedTasks;for(l=0;l<i.length;l++){var s=i[l];var c=e,d=s.blockedSegment;if(0===d.status){Q(s.context);try{Z(c,s,s.node),d.lastPushedText&&d.textEmbedded&&d.chunks.push(Qe),s.abortSet.delete(s),d.status=1,dd(c,s.blockedBoundary,d)}catch(e){if(Gc(),\"object\"===typeof e&&null!==e&&\"function\"===typeof e.then){var f=s.ping;e.then(f,f)}else{s.abortSet.delete(s);d.status=4;var h=s.blockedBoundary,g=e,b=Y(c,g);null===h?Vc(c,g):(h.pendingTasks--,h.forceClientRender||(h.forceClientRender=!0,h.errorDigest=b,h.parentFlushed&&c.clientRenderedBoundaries.push(h)));c.allPendingTasks--;if(0===c.allPendingTasks){var m=c.onAllReady;m()}}}}}i.splice(0,l);null!==e.destination&&fd(e,e.destination)}catch(n){Y(e,n),Vc(e,n)}finally{Wn=o,Hn.current=a,a===qn&&Q(n)}}}function gd(e,n,a){a.parentFlushed=!0;switch(a.status){case 0:var o=a.id=e.nextSegmentId++;a.lastPushedText=!1;a.textEmbedded=!1;e=e.responseState;p(n,gt);p(n,e.placeholderPrefix);e=u(o.toString(16));p(n,e);return t(n,bt);case 1:a.status=2;var l=!0;o=a.chunks;var i=0;a=a.children;for(var s=0;s<a.length;s++){for(l=a[s];i<l.index;i++)p(n,o[i]);l=hd(e,n,l)}for(;i<o.length-1;i++)p(n,o[i]);i<o.length&&(l=t(n,o[i]));return l;default:throw Error(k(390))}}function hd(e,n,a){var o=a.boundary;if(null===o)return gd(e,n,a);o.parentFlushed=!0;if(o.forceClientRender)o=o.errorDigest,t(n,kt),p(n,St),o&&(p(n,$t),p(n,u(C(o))),p(n,xt)),t(n,Ct),gd(e,n,a);else if(0<o.pendingTasks){o.rootSegmentID=e.nextSegmentId++;0<o.completedSegments.length&&e.partialBoundaries.push(o);var l=e.responseState;var i=l.nextSuspenseID++;l=w(l.boundaryPrefix+i.toString(16));o=o.id=l;fb(n,e.responseState,o);gd(e,n,a)}else if(o.byteSize>e.progressiveChunkSize)o.rootSegmentID=e.nextSegmentId++,e.completedBoundaries.push(o),fb(n,e.responseState,o.id),gd(e,n,a);else{t(n,mt);a=o.completedSegments;if(1!==a.length)throw Error(k(391));hd(e,n,a[0])}return t(n,wt)}function id(e,n,a){Bb(n,e.responseState,a.formatContext,a.id);hd(e,n,a);return Cb(n,a.formatContext)}function jd(e,n,a){for(var o=a.completedSegments,l=0;l<o.length;l++)kd(e,n,a,o[l]);o.length=0;e=e.responseState;o=a.id;a=a.rootSegmentID;p(n,e.startInlineScript);e.sentCompleteBoundaryFunction?p(n,Yt):(e.sentCompleteBoundaryFunction=!0,p(n,Qt));if(null===o)throw Error(k(395));a=u(a.toString(16));p(n,o);p(n,Kt);p(n,e.segmentPrefix);p(n,a);return t(n,en)}function kd(e,n,a,o){if(2===o.status)return!0;var l=o.id;if(-1===l){if(-1===(o.id=a.rootSegmentID))throw Error(k(392));return id(e,n,o)}id(e,n,o);e=e.responseState;p(n,e.startInlineScript);e.sentCompleteSegmentFunction?p(n,Xt):(e.sentCompleteSegmentFunction=!0,p(n,Zt));p(n,e.segmentPrefix);l=u(l.toString(16));p(n,l);p(n,Jt);p(n,e.placeholderPrefix);p(n,l);return t(n,Gt)}function fd(e,n){Pe=new Uint8Array(512);_e=0;try{var a=e.completedRootSegment;if(null!==a&&0===e.pendingRootTasks){hd(e,n,a);e.completedRootSegment=null;var o=e.responseState.bootstrapChunks;for(a=0;a<o.length-1;a++)p(n,o[a]);a<o.length&&t(n,o[a])}var l,i=e.clientRenderedBoundaries;for(l=0;l<i.length;l++){var s=i[l];o=n;var c=e.responseState,d=s.id,f=s.errorDigest,h=s.errorMessage,g=s.errorComponentStack;p(o,c.startInlineScript);c.sentClientRenderFunction?p(o,nn):(c.sentClientRenderFunction=!0,p(o,tn));if(null===d)throw Error(k(395));p(o,d);p(o,rn);(f||h||g)&&(p(o,on),p(o,u(Sb(f||\"\"))));(h||g)&&(p(o,on),p(o,u(Sb(h||\"\"))));g&&(p(o,on),p(o,u(Sb(g))));if(!t(o,an)){e.destination=null;l++;i.splice(0,l);return}}i.splice(0,l);var b=e.completedBoundaries;for(l=0;l<b.length;l++)if(!jd(e,n,b[l])){e.destination=null;l++;b.splice(0,l);return}b.splice(0,l);ba(n);Pe=new Uint8Array(512);_e=0;var m=e.partialBoundaries;for(l=0;l<m.length;l++){var S=m[l];e:{i=e;s=n;var x=S.completedSegments;for(c=0;c<x.length;c++)if(!kd(i,s,S,x[c])){c++;x.splice(0,c);var $=!1;break e}x.splice(0,c);$=!0}if(!$){e.destination=null;l++;m.splice(0,l);return}}m.splice(0,l);var E=e.completedBoundaries;for(l=0;l<E.length;l++)if(!jd(e,n,E[l])){e.destination=null;l++;E.splice(0,l);return}E.splice(0,l)}finally{ba(n),0===e.allPendingTasks&&0===e.pingedTasks.length&&0===e.clientRenderedBoundaries.length&&0===e.completedBoundaries.length&&n.close()}}function ld(e,n){try{var a=e.abortableTasks;a.forEach((function(a){return ed(a,e,n)}));a.clear();null!==e.destination&&fd(e,e.destination)}catch(n){Y(e,n),Vc(e,n)}}Te.renderToReadableStream=function(e,n){return new Promise((function(a,o){var l,i,s=new Promise((function(e,n){i=e;l=n})),c=Rc(e,za(n?n.identifierPrefix:void 0,n?n.nonce:void 0,n?n.bootstrapScriptContent:void 0,n?n.bootstrapScripts:void 0,n?n.bootstrapModules:void 0),Aa(n?n.namespaceURI:void 0),n?n.progressiveChunkSize:void 0,n?n.onError:void 0,i,(function(){var e=new ReadableStream({type:\"bytes\",pull:function(e){if(1===c.status)c.status=2,da(e,c.fatalError);else if(2!==c.status&&null===c.destination){c.destination=e;try{fd(c,e)}catch(e){Y(c,e),Vc(c,e)}}},cancel:function(){ld(c)}},{highWaterMark:0});e.allReady=s;a(e)}),(function(e){s.catch((function(){}));o(e)}),l);if(n&&n.signal){var d=n.signal,q=function(){ld(c,d.reason);d.removeEventListener(\"abort\",q)};d.addEventListener(\"abort\",q)}Uc(c)}))};Te.version=\"18.3.1\";var Un={};var Zn,Xn;true;Zn=a;Xn=Te;Un.version=Zn.version;Un.renderToString=Zn.renderToString;Un.renderToStaticMarkup=Zn.renderToStaticMarkup;Un.renderToNodeStream=Zn.renderToNodeStream;Un.renderToStaticNodeStream=Zn.renderToStaticNodeStream;Un.renderToReadableStream=Xn.renderToReadableStream;const Jn=Un.version,Gn=Un.renderToString,Qn=Un.renderToStaticMarkup,Yn=Un.renderToNodeStream,Kn=Un.renderToStaticNodeStream,er=Un.renderToReadableStream;export{Un as default,Yn as renderToNodeStream,er as renderToReadableStream,Qn as renderToStaticMarkup,Kn as renderToStaticNodeStream,Gn as renderToString,Jn as version};\n//# sourceMappingURL=server.browser.js.map\n","/**\n * KAIS · Cap Store\n * ----------------------------------------------------------------------------\n * One product, one page. The real KAIS cap rebuilt in 3D from its photos, turning\n * by itself (drag to spin), and a BUY button. BUY glides down to the product\n * section: the real photographs on the left (an e-commerce gallery: swipe, thumbs,\n * click to zoom) and the Stripe Embedded Checkout on the right, on white. On a\n * phone the photos come first and the checkout follows underneath.\n *\n * Framer code component · React 18 · framer-motion · three.js r170 (fetched from\n * jsDelivr only when the 3D cap is shown; line drawing fallback without WebGL)\n *\n * Usage in Framer: drop it on an empty page, Width = Fill. Its height is its content (the hero is one screen\n * tall, the product section sits under it), so Framer sizes it by itself (\"Fit\").\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight auto\n * @framerIntrinsicWidth 1440\n * @framerIntrinsicHeight 1800\n */function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import*as React from\"react\";import{useCallback,useEffect,useLayoutEffect,useMemo,useRef,useState}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{animate,AnimatePresence,motion,MotionConfig,useAnimate,useMotionValue,useReducedMotion,useSpring,useTransform}from\"framer-motion\";// ─── Brand tokens ────────────────────────────────────────────────────────────\nconst K={navy:\"#1A2744\",mustard:\"#C9A84C\",cream:\"#F2EDE6\",navyBody:\"#26365A\",night:\"#0E1526\",goldLight:\"#E8CF7A\",hair:\"#DCD3C4\",hairSoft:\"#E4DCCE\",paper:\"#F7F3ED\"};const F={display:`\"Tektur\", ui-sans-serif, system-ui, sans-serif`,label:`\"Unbounded\", ui-sans-serif, system-ui, sans-serif`,body:`\"DM Sans\", ui-sans-serif, system-ui, sans-serif`,serif:`\"Cormorant Garamond\", \"Cormorant\", ui-serif, Georgia, serif`};const EASE_OUT_EXPO=[.16,1,.3,1];const EASE_IN_OUT_SOFT=[.45,0,.15,1];const SPRING_SUBTLE={type:\"spring\",stiffness:260,damping:30};const FONTS_HREF=\"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@1,700&family=DM+Sans:wght@300;400;500;700&family=Tektur:wght@600;700&family=Unbounded:wght@200;300;500&display=swap\";const DEFAULT_STRIPE_JS=\"https://js.stripe.com/dahlia/stripe.js\";/** three.js is only fetched when the 3D cap is used, straight from the CDN as an ES module. */const DEFAULT_THREE_URL=\"https://cdn.jsdelivr.net/npm/three@0.170.0/build/three.module.min.js\";const MOBILE_BREAKPOINT=810;// ─── Small utilities ─────────────────────────────────────────────────────────\nconst isBrowser=typeof window!==\"undefined\";const useIsoLayoutEffect=isBrowser?useLayoutEffect:useEffect;const clamp=(v,a,b)=>Math.min(b,Math.max(a,v));const wrap01=v=>v-Math.floor(v);const srcOf=v=>typeof v===\"string\"?v:v&&typeof v.src===\"string\"?v.src:\"\";function useElementSize(ref){const[size,setSize]=useState({w:0,h:0});useIsoLayoutEffect(()=>{const el=ref.current;if(!el)return;// offsetWidth/Height ignore transforms (Framer canvas zoom, our own scale animations)\nconst update=()=>setSize(s=>Math.abs(s.w-el.offsetWidth)<.5&&Math.abs(s.h-el.offsetHeight)<.5?s:{w:el.offsetWidth,h:el.offsetHeight});update();const ro=new ResizeObserver(update);ro.observe(el);return()=>ro.disconnect();},[]);return size;}/** Layout width with sub-pixel precision, unaffected by transforms: the photo track must match its slides exactly\n *  (offsetWidth rounds, which drifted the track half a pixel per photo on a 660.5 px stage). */function useExactWidth(ref){const[w,setW]=useState(0);useIsoLayoutEffect(()=>{const el=ref.current;if(!el)return;const read=()=>{const v=parseFloat(getComputedStyle(el).width)||0;setW(p=>Math.abs(p-v)<.01?p:v);};read();const ro=new ResizeObserver(read);ro.observe(el);return()=>ro.disconnect();},[]);return w;}function useBrandFonts(enabled){useEffect(()=>{if(!enabled||!isBrowser)return;if(document.querySelector(\"link[data-kais-fonts]\"))return;const link=document.createElement(\"link\");link.rel=\"stylesheet\";link.href=FONTS_HREF;link.setAttribute(\"data-kais-fonts\",\"\");document.head.appendChild(link);},[enabled]);}// ─── Stripe (loaded once per page, from js.stripe.com as Stripe requires) ────\nlet stripeScriptPromise=null;const stripeInstances=new Map;const STRIPE_LOAD_TIMEOUT_MS=15e3;/** Stripe sessions live 24 h by default; refresh a mounted one before it can expire under the customer. */const SESSION_MAX_AGE_MS=23*60*60*1e3;function loadStripeJs(src){const w=window;if(w.Stripe)return Promise.resolve(w.Stripe);if(stripeScriptPromise)return stripeScriptPromise;const attempt=new Promise((resolve,reject)=>{// A tag left by an earlier failed attempt can never fire again: replace it.\nconst stale=document.querySelector(`script[src=\"${src}\"]`);if(stale)stale.remove();const script=document.createElement(\"script\");let settled=false;const fail=msg=>{if(settled)return;settled=true;clearTimeout(timer);script.remove();if(stripeScriptPromise===attempt)stripeScriptPromise=null;reject(new Error(msg));};const timer=setTimeout(()=>fail(`Stripe.js did not load within ${STRIPE_LOAD_TIMEOUT_MS/1e3}s`),STRIPE_LOAD_TIMEOUT_MS);script.addEventListener(\"load\",()=>{if(!w.Stripe)return fail(\"Stripe.js loaded but window.Stripe is missing\");settled=true;clearTimeout(timer);resolve(w.Stripe);});script.addEventListener(\"error\",()=>fail(\"Stripe.js failed to load (network, CSP or a blocker)\"));script.src=src;script.async=true;document.head.appendChild(script);});stripeScriptPromise=attempt;return attempt;}function getStripe(StripeCtor,key){if(!stripeInstances.has(key))stripeInstances.set(key,StripeCtor(key));return stripeInstances.get(key);}/**\n * Stripe allows ONE embedded checkout per page (\"You cannot have multiple Embedded Checkout objects\",\n * verified against the live dahlia build). Framer can keep one component instance per breakpoint,\n * so the page-level owner hands the checkout over instead of letting two instances collide.\n */const checkoutOwner={current:null};/** Resolves once the most recent create() has settled AND, if it went stale, been destroyed. */let checkoutSettled=Promise.resolve();/** A payment completed inside an instance that a breakpoint has hidden: the visible one shows the confirmation. */const SUCCESS_HANDOFF=\"kais:cap-success-handoff\";function keyMode(key){return/^(pk|cs|rk|sk)_test_/.test(key)?\"test\":/^(pk|cs|rk|sk)_live_/.test(key)?\"live\":\"\";}/**\n * Asks the session endpoint (Make webhook, Cloudflare Worker…) for a Checkout\n * Session client secret. Deliberately a CORS \"simple request\": POST, no body,\n * no custom headers, so the browser never sends an OPTIONS preflight. The\n * endpoint only has to answer with `Access-Control-Allow-Origin`.\n * Accepts `{\"clientSecret\": \"...\"}`, `{\"client_secret\": \"...\"}`, a JSON string or the raw secret.\n */async function fetchClientSecret(endpoint,publishableKey){const ctrl=new AbortController;const timer=setTimeout(()=>ctrl.abort(),2e4);try{const res=await fetch(endpoint,{method:\"POST\",credentials:\"omit\",cache:\"no-store\",signal:ctrl.signal});const text=(await res.text()).trim();if(!res.ok)throw new Error(`Session endpoint answered ${res.status}: ${text.slice(0,160)}`);let secret=text.replace(/^\"|\"$/g,\"\");try{const json=JSON.parse(text);secret=typeof json===\"string\"?json:json.clientSecret||json.client_secret||json.data&&json.data.client_secret||\"\";}catch(_){/* raw text body */}if(!secret||!secret.startsWith(\"cs_\"))throw new Error(\"Session endpoint did not return a Checkout Session client secret (cs_…)\");// A live key with a test session (or the reverse) never loads: Stripe just shows \"Something went wrong\"\n// inside its iframe without telling the page. Catch it here, where we can explain it.\nconst pk=keyMode(publishableKey);const cs=keyMode(secret);if(pk&&cs&&pk!==cs)throw new Error(`Key mode mismatch: publishable key is ${pk} but the session is ${cs}. Use keys from the same mode.`);return secret;}finally{clearTimeout(timer);}}/** Optional hooks for analytics: window \"kais:cap\" CustomEvent + dataLayer push when GTM is present. */function track(type,detail={}){if(!isBrowser)return;try{window.dispatchEvent(new CustomEvent(\"kais:cap\",{detail:{type,...detail}}));const dl=window.dataLayer;if(Array.isArray(dl))dl.push({event:`kais_cap_${type}`,...detail});}catch(_){}}function watchIframeLoad(container,cb){let fired=false;const fire=()=>{if(fired)return;fired=true;cb();};const fallback=setTimeout(fire,4500);const hook=frame=>frame.addEventListener(\"load\",()=>setTimeout(fire,180),{once:true});const current=container.querySelector(\"iframe\");let mo=null;if(current)hook(current);else{mo=new MutationObserver(()=>{const f=container.querySelector(\"iframe\");if(f){hook(f);mo&&mo.disconnect();}});mo.observe(container,{childList:true,subtree:true});}return()=>{clearTimeout(fallback);mo&&mo.disconnect();};}function buildCapGeometry(){const lines=[];const RX=.98;const RZ=1.08;const FRONT=Math.PI/2;const crown=(phi,t)=>{const a=t*Math.PI/2;const s=Math.pow(Math.sin(a),.7);// structured front, crown sloping gently towards the back\nconst lift=.86+.12*Math.sin(phi)*s;return[RX*s*Math.cos(phi),lift*Math.pow(Math.cos(a),1.05),RZ*s*Math.sin(phi)];};const range=(n,f)=>Array.from({length:n+1},(_,i)=>f(i/n));// Six panel seams, one at centre front\nfor(let k=0;k<6;k++){const phi=FRONT+k*Math.PI/3;lines.push({kind:0,pts:range(30,u=>crown(phi,.05+u*.95))});}// Base band with the snapback arch at the back\nconst BACK=FRONT+Math.PI;const ARCH=.34;lines.push({kind:0,pts:range(110,u=>crown(BACK+ARCH+u*(2*Math.PI-2*ARCH),1))});lines.push({kind:0,pts:range(24,u=>crown(BACK-ARCH+u*2*ARCH,1-.14*Math.sin(u*Math.PI)))});lines.push({kind:1,pts:range(12,u=>{const a=crown(BACK-ARCH,1);const b=crown(BACK+ARCH,1);return[a[0]+(b[0]-a[0])*u,.035,a[2]+(b[2]-a[2])*u];})});// Two quiet latitudes for volume\nfor(const t of[.5,.8])lines.push({kind:2,pts:range(96,u=>crown(u*Math.PI*2,t))});// Top button\nlines.push({kind:0,pts:range(18,u=>crown(u*Math.PI*2,.05))});// Eyelets, one per panel\nfor(let k=0;k<6;k++){const pc=FRONT+Math.PI/6+k*Math.PI/3;const tc=.36;const s=Math.pow(Math.sin(tc*Math.PI/2),.72);lines.push({kind:2,pts:range(12,u=>crown(pc+.04/s*Math.cos(u*Math.PI*2),tc+.028*Math.sin(u*Math.PI*2)))});}// Visor: pre-curved brim with converging stitch rows\nconst A=1.3;const LMAX=.74;const visor=(phi,r)=>{const base=crown(phi,1);// a bill grows forward, not radially: blend the rim normal towards +z\nlet nx=base[0]/(RX*RX)*.35;let nz=base[2]/(RZ*RZ)+.9;const nl=Math.hypot(nx,nz)||1;nx/=nl;nz/=nl;const u=(phi-FRONT)/A;const L=LMAX*Math.pow(Math.max(0,1-u*u),.42);const d=L*r;// slight downward pitch + pre-curve: the sides of the bill bend down\nconst y=-(.12*r*(L/LMAX))-.34*u*u*Math.pow(r,1.1)*(.3+L/LMAX);return[base[0]+nx*d,y,base[2]+nz*d];};lines.push({kind:0,pts:range(64,u=>visor(FRONT-A+u*2*A,1))});for(const r of[.56,.67,.78,.89])lines.push({kind:1,pts:range(60,u=>visor(FRONT-A+u*2*A,r))});// Rotate about the visual centre (crown + bill), not the crown alone: no wobble, tighter bounds\nconst PIVOT_Z=.3;for(const l of lines)for(const p of l.pts)p[2]-=PIVOT_Z;return lines;}const CAP_GEOMETRY=buildCapGeometry();const CAP_TILT=.27;const CAP_FOCAL=7.5;const CAP_Y_OFFSET=.3;function projectUnit(p,cT,sT,cA,sA){const x1=p[0]*cT+p[2]*sT;const z1=-p[0]*sT+p[2]*cT;const y1=p[1]-CAP_Y_OFFSET;const y2=y1*cA-z1*sA;const z2=y1*sA+z1*cA;const k=CAP_FOCAL/(CAP_FOCAL-z2);return[x1*k,y2*k,z2];}// Bounding box of the drawing over a full turn, so it always fits its box (never clipped, always centred)\nconst CAP_BOUNDS=(()=>{let minX=Infinity;let maxX=-Infinity;let minY=Infinity;let maxY=-Infinity;const cA=Math.cos(CAP_TILT);const sA=Math.sin(CAP_TILT);for(let i=0;i<72;i++){const th=i/72*Math.PI*2;const cT=Math.cos(th);const sT=Math.sin(th);for(const l of CAP_GEOMETRY)for(const p of l.pts){const[x,y]=projectUnit(p,cT,sT,cA,sA);if(x<minX)minX=x;if(x>maxX)maxX=x;if(y<minY)minY=y;if(y>maxY)maxY=y;}}return{minX,maxX,minY,maxY,w:maxX-minX,h:maxY-minY};})();function colorToRgb(color){const c=(color||\"\").trim();const hex=/^#?([\\da-f]{2})([\\da-f]{2})([\\da-f]{2})/i.exec(c);if(hex)return[parseInt(hex[1],16),parseInt(hex[2],16),parseInt(hex[3],16)];const short=/^#([\\da-f])([\\da-f])([\\da-f])$/i.exec(c);if(short)return[parseInt(short[1]+short[1],16),parseInt(short[2]+short[2],16),parseInt(short[3]+short[3],16)];const rgb=/rgba?\\(\\s*([\\d.]+)[\\s,]+([\\d.]+)[\\s,]+([\\d.]+)/i.exec(c);if(rgb)return[Math.round(+rgb[1]),Math.round(+rgb[2]),Math.round(+rgb[3])];return[26,39,68];}function drawPlaceholderCap(ctx,w,h,phase,color,dpr){ctx.setTransform(1,0,0,1,0,0);ctx.clearRect(0,0,w,h);const theta=phase*Math.PI*2;const cT=Math.cos(theta);const sT=Math.sin(theta);const cA=Math.cos(CAP_TILT);const sA=Math.sin(CAP_TILT);const scale=Math.min(w*.96/CAP_BOUNDS.w,h*.96/CAP_BOUNDS.h);const cx=w/2-(CAP_BOUNDS.minX+CAP_BOUNDS.maxX)/2*scale;const cy=h/2+(CAP_BOUNDS.minY+CAP_BOUNDS.maxY)/2*scale;const[r,g,b]=colorToRgb(color);const BUCKETS=9;const paths=[0,1,2].map(()=>Array.from({length:BUCKETS},()=>new Path2D));for(const line of CAP_GEOMETRY){let px=0;let py=0;let pz=0;let run=-1;for(let i=0;i<line.pts.length;i++){const[ux,uy,z2]=projectUnit(line.pts[i],cT,sT,cA,sA);const sx=cx+ux*scale;const sy=cy-uy*scale;if(i>0){const depth=(pz+z2)/2;const d=clamp((depth+1.15)/2.3,0,1);const bucket=Math.min(BUCKETS-1,Math.floor(d*d*(3-2*d)*BUCKETS));const path=paths[line.kind][bucket];if(bucket!==run){path.moveTo(px,py);run=bucket;}path.lineTo(sx,sy);}px=sx;py=sy;pz=z2;}}ctx.lineCap=\"round\";ctx.lineJoin=\"round\";const kindStyle=[{width:1.15,alpha:1,dash:[]},{width:.85,alpha:.8,dash:[2.2*dpr,2.6*dpr]},{width:.8,alpha:.5,dash:[]}];for(let kind=0;kind<3;kind++){const st=kindStyle[kind];ctx.lineWidth=st.width*dpr;ctx.setLineDash(st.dash);for(let bI=0;bI<BUCKETS;bI++){const t=(bI+.5)/BUCKETS;const a=(.07+.58*t)*st.alpha;ctx.strokeStyle=`rgba(${r},${g},${b},${a.toFixed(3)})`;ctx.stroke(paths[kind][bI]);}}ctx.setLineDash([]);}// ─── Frame sequence store (progressive, nearest-frame fallback) ─────────────\nfunction progressiveOrder(n){const order=[];const seen=new Uint8Array(n);let step=1;while(step*2<n)step*=2;for(;step>=1;step=Math.floor(step/2)){for(let i=0;i<n;i+=step){if(!seen[i]){seen[i]=1;order.push(i);}}if(step===1)break;}return order;}function expandPattern(pattern,count,start){// cap-{nnn}.webp → cap-001.webp …  |  cap-{n}.webp → cap-1.webp …\nreturn Array.from({length:count},(_,i)=>pattern.replace(/\\{(n+)\\}/,(_m,ns)=>String(start+i).padStart(ns.length,\"0\")));}class FrameStore{nearest(i){const n=this.imgs.length;for(let d=0;d<=n/2;d++){const a=this.imgs[(i+d)%n];if(a)return a;const b=this.imgs[(i-d+n)%n];if(b)return b;}return null;}dispose(){this.cancelled=true;this.imgs=[];}constructor(urls,onLoad){_define_property(this,\"urls\",void 0);_define_property(this,\"imgs\",void 0);_define_property(this,\"loaded\",0);_define_property(this,\"cancelled\",false);this.urls=urls;this.imgs=urls.map(()=>null);const queue=progressiveOrder(urls.length);const next=()=>{if(this.cancelled)return;const i=queue.shift();if(i===undefined)return;const img=new Image;img.decoding=\"async\";img.src=urls[i];const settle=()=>{if(this.cancelled)return;if(img.naturalWidth>0){this.imgs[i]=img;this.loaded++;onLoad(this);}next();};(img.decode?img.decode():Promise.reject()).then(settle,()=>{if(img.complete)settle();else{img.onload=settle;img.onerror=()=>next();}});};for(let c=0;c<Math.min(6,urls.length);c++)next();}}function drawContain(ctx,img,w,h,alpha){const ir=img.naturalWidth/img.naturalHeight;const cr=w/h;const dw=ir>cr?w:h*ir;const dh=ir>cr?w/ir:h;ctx.globalAlpha=alpha;ctx.drawImage(img,(w-dw)/2,(h-dh)/2,dw,dh);}// ─── 3D cap: the real KAIS cap, rebuilt procedurally (three.js loaded on demand) ───\n// @@CAP_MODEL_START (generated from src/capTextures.ts + src/capModel.ts by tmp/inline.py: edit there)\n/** Liberation Serif Regular outlines (SIL OFL 1.1), em = 1000, y down, baseline 0: the embroidery lettering\n *  (satin stitching thickens its strokes to the 2.3 mm measured on the photos). */const KAIS_GLYPHS={glyphs:{\" \":{d:\"\",adv:250},\"(\":{d:\"M138.1 -241.2Q138.1 -114.2 155.2 -38.8Q172.3 36.6 208.9 88.3Q245.6 140.1 300.7 171.8V212.8Q204.1 161.6 149.6 100.8Q95.2 40.0 69.5 -42.2Q43.9 -124.5 43.9 -241.2Q43.9 -357.4 69.3 -439.2Q94.7 -520.9 148.9 -581.5Q203.1 -642.0 300.7 -693.8V-652.8Q241.2 -618.6 206.0 -565.1Q170.8 -511.7 154.5 -440.4Q138.1 -369.1 138.1 -241.2Z\",adv:333},\")\":{d:\"M32.2 212.8V171.8Q87.4 140.1 124.0 88.1Q160.6 36.1 177.7 -39.3Q194.8 -114.7 194.8 -241.2Q194.8 -369.1 178.4 -440.4Q162.1 -511.7 126.9 -565.1Q91.7 -618.6 32.2 -652.8V-693.8Q129.8 -641.6 184.0 -581.2Q238.2 -520.9 263.6 -439.2Q289.0 -357.4 289.0 -241.2Q289.0 -125.0 263.6 -42.7Q238.2 39.5 184.0 100.0Q129.8 160.6 32.2 212.8Z\",adv:333},\"0\":{d:\"M461.9 -330.0Q461.9 9.7 247.0 9.7Q143.5 9.7 90.8 -77.1Q38.0 -164.0 38.0 -330.0Q38.0 -492.6 90.8 -578.8Q143.5 -665.0 250.9 -665.0Q354.4 -665.0 408.2 -579.8Q461.9 -494.6 461.9 -330.0ZM372.0 -330.0Q372.0 -487.3 342.2 -556.6Q312.5 -625.9 247.0 -625.9Q183.5 -625.9 155.7 -560.5Q127.9 -495.1 127.9 -330.0Q127.9 -164.0 156.2 -96.4Q184.5 -28.8 247.0 -28.8Q311.5 -28.8 341.7 -99.8Q372.0 -170.8 372.0 -330.0Z\",adv:500},\"2\":{d:\"M444.8 0.0H43.9V-71.7L134.7 -154.2Q222.1 -230.9 263.1 -278.3Q304.1 -325.6 322.0 -375.9Q339.8 -426.2 339.8 -491.2Q339.8 -554.6 311.0 -587.8Q282.2 -621.0 216.7 -621.0Q190.9 -621.0 163.5 -614.0Q136.2 -606.9 115.2 -595.2L98.1 -515.1H65.9V-641.1Q154.7 -662.1 216.7 -662.1Q324.2 -662.1 378.1 -617.4Q432.1 -572.7 432.1 -491.2Q432.1 -436.5 410.8 -387.9Q389.6 -339.3 345.7 -291.2Q301.7 -243.1 200.1 -156.7Q156.7 -119.6 107.9 -75.1H444.8Z\",adv:500},\"4\":{d:\"M395.5 -144.0V0.0H311.5V-144.0H19.5V-208.9L339.3 -658.2H395.5V-213.8H484.3V-144.0ZM311.5 -543.4H309.0L74.7 -213.8H311.5Z\",adv:500},a:{d:\"M227.0 -469.2Q302.2 -469.2 337.6 -438.4Q373.0 -407.7 373.0 -344.2V-34.1L430.1 -21.9V0.0H304.1L294.9 -45.8Q239.2 9.7 152.8 9.7Q35.1 9.7 35.1 -126.9Q35.1 -172.8 52.9 -202.8Q70.8 -232.9 109.8 -248.7Q148.9 -264.6 223.1 -266.1L291.9 -268.0V-339.8Q291.9 -387.2 274.6 -409.6Q257.3 -432.1 221.1 -432.1Q172.3 -432.1 131.8 -409.1L115.2 -352.0H87.8V-452.1Q166.9 -469.2 227.0 -469.2ZM291.9 -233.8 228.0 -231.9Q162.5 -229.4 139.4 -206.5Q116.2 -183.5 116.2 -129.8Q116.2 -43.9 186.0 -43.9Q219.2 -43.9 243.4 -51.5Q267.5 -59.0 291.9 -70.8Z\",adv:443.8},c:{d:\"M413.0 -27.8Q389.1 -10.2 347.1 -0.2Q305.1 9.7 261.2 9.7Q38.0 9.7 38.0 -232.9Q38.0 -347.6 94.9 -409.4Q151.8 -471.1 257.8 -471.1Q323.7 -471.1 401.8 -456.0V-328.1H375.0L354.0 -409.1Q313.4 -432.1 256.8 -432.1Q125.9 -432.1 125.9 -232.9Q125.9 -129.3 165.7 -85.2Q205.5 -41.0 289.0 -41.0Q360.3 -41.0 413.0 -57.1Z\",adv:443.8},d:{d:\"M353.0 -34.1Q297.8 9.7 224.1 9.7Q36.1 9.7 36.1 -225.0Q36.1 -345.7 89.3 -408.4Q142.5 -471.1 246.0 -471.1Q298.8 -471.1 353.0 -459.9Q350.0 -476.0 350.0 -541.0V-660.1L272.9 -671.8V-693.8H431.1V-34.1L487.7 -21.9V0.0H358.8ZM124.0 -225.0Q124.0 -132.3 155.2 -86.6Q186.5 -41.0 250.9 -41.0Q306.1 -41.0 350.0 -60.0V-422.8Q306.6 -431.1 250.9 -431.1Q124.0 -431.1 124.0 -225.0Z\",adv:500},e:{d:\"M126.9 -230.9V-222.1Q126.9 -154.7 141.8 -117.4Q156.7 -80.0 187.7 -60.5Q218.7 -41.0 269.0 -41.0Q295.4 -41.0 331.5 -45.4Q367.6 -49.8 391.1 -55.1V-27.8Q367.6 -12.6 327.3 -1.4Q287.1 9.7 245.1 9.7Q138.1 9.7 88.6 -47.8Q39.0 -105.4 39.0 -232.9Q39.0 -353.0 89.3 -412.1Q139.6 -471.1 232.9 -471.1Q409.1 -471.1 409.1 -270.9V-230.9ZM232.9 -432.1Q182.1 -432.1 155.0 -391.1Q127.9 -350.0 127.9 -270.0H324.2Q324.2 -357.4 301.7 -394.7Q279.2 -432.1 232.9 -432.1Z\",adv:443.8},f:{d:\"M109.8 -417.9H30.7V-441.8L109.8 -460.9V-493.1Q109.8 -594.7 150.1 -649.4Q190.4 -704.1 263.1 -704.1Q300.7 -704.1 333.0 -694.8V-594.7H309.0L287.1 -654.7Q270.5 -665.0 247.0 -665.0Q216.3 -665.0 203.6 -637.6Q190.9 -610.3 190.9 -535.1V-458.9H312.9V-417.9H190.9V-38.0L290.0 -21.9V0.0H41.9V-21.9L109.8 -38.0Z\",adv:333},g:{d:\"M424.8 -313.9Q424.8 -234.8 377.4 -194.3Q330.0 -153.8 241.2 -153.8Q201.1 -153.8 166.9 -161.1L136.2 -97.1Q137.6 -88.8 155.2 -81.5Q172.8 -74.2 199.2 -74.2H334.9Q409.1 -74.2 445.0 -41.9Q480.9 -9.7 480.9 46.8Q480.9 98.1 452.3 136.2Q423.8 174.3 368.6 195.0Q313.4 215.8 234.8 215.8Q141.1 215.8 92.0 187.0Q42.9 158.2 42.9 104.9Q42.9 79.1 60.5 53.9Q78.1 28.8 125.0 -4.8Q97.1 -14.1 78.1 -36.6Q59.0 -59.0 59.0 -84.9L136.2 -171.8Q59.0 -208.0 59.0 -313.9Q59.0 -389.1 106.6 -430.1Q154.2 -471.1 245.1 -471.1Q263.1 -471.1 291.5 -467.5Q319.8 -463.8 334.9 -458.9L442.8 -513.1L459.9 -492.1L392.0 -421.8Q424.8 -385.2 424.8 -313.9ZM404.7 62.0Q404.7 34.1 387.6 18.5Q370.6 2.9 335.9 2.9H158.2Q137.6 20.5 124.7 47.6Q111.8 74.7 111.8 98.1Q111.8 140.1 142.0 158.4Q172.3 176.7 234.8 176.7Q316.4 176.7 360.5 146.4Q404.7 116.2 404.7 62.0ZM242.1 -190.9Q295.4 -190.9 317.6 -221.4Q339.8 -251.9 339.8 -313.9Q339.8 -378.9 316.8 -406.4Q293.9 -434.0 243.1 -434.0Q191.8 -434.0 167.9 -406.2Q144.0 -378.4 144.0 -313.9Q144.0 -249.5 167.4 -220.2Q190.9 -190.9 242.1 -190.9Z\",adv:500},h:{d:\"M159.1 -495.1Q159.1 -444.3 155.7 -421.8Q190.9 -441.8 235.5 -456.5Q280.2 -471.1 311.0 -471.1Q370.6 -471.1 400.8 -436.5Q431.1 -401.8 431.1 -335.9V-34.1L486.8 -21.9V0.0H289.0V-21.9L350.0 -34.1V-330.0Q350.0 -414.0 269.0 -414.0Q223.1 -414.0 159.1 -399.9V-34.1L221.1 -21.9V0.0H20.0V-21.9L78.1 -34.1V-660.1L9.7 -671.8V-693.8H159.1Z\",adv:500},i:{d:\"M185.0 -608.8Q185.0 -587.4 169.4 -571.7Q153.8 -556.1 131.8 -556.1Q110.3 -556.1 94.7 -571.7Q79.1 -587.4 79.1 -608.8Q79.1 -630.8 94.7 -646.4Q110.3 -662.1 131.8 -662.1Q153.8 -662.1 169.4 -646.4Q185.0 -630.8 185.0 -608.8ZM180.1 -34.1 258.7 -21.9V0.0H20.9V-21.9L99.1 -34.1V-424.8L34.1 -437.0V-458.9H180.1Z\",adv:277.8},k:{d:\"M167.9 -221.1 355.9 -423.8 308.1 -437.0V-458.9H470.2V-437.0L413.0 -425.7L282.2 -291.9L450.1 -33.2L500.0 -21.9V0.0H312.0V-21.9L354.0 -34.1L228.0 -231.9L167.9 -166.0V-34.1L216.7 -21.9V0.0H28.8V-21.9L86.9 -34.1V-660.1L19.0 -671.8V-693.8H167.9Z\",adv:500},l:{d:\"M179.1 -34.1 257.8 -21.9V0.0H20.0V-21.9L98.1 -34.1V-660.1L20.0 -671.8V-693.8H179.1Z\",adv:277.8},m:{d:\"M159.1 -421.8Q195.8 -442.8 236.8 -457.0Q277.8 -471.1 309.0 -471.1Q342.7 -471.1 371.3 -458.4Q399.9 -445.8 414.0 -417.9Q451.6 -438.9 502.1 -455.0Q552.7 -471.1 585.9 -471.1Q703.1 -471.1 703.1 -335.9V-34.1L762.2 -21.9V0.0H553.7V-21.9L622.0 -34.1V-327.1Q622.0 -411.1 543.9 -411.1Q531.2 -411.1 514.4 -409.1Q497.5 -407.2 480.7 -404.7Q463.8 -402.3 448.4 -399.1Q433.1 -395.9 422.8 -394.0Q431.1 -367.6 431.1 -335.9V-34.1L500.0 -21.9V0.0H282.2V-21.9L350.0 -34.1V-327.1Q350.0 -367.6 329.3 -389.4Q308.5 -411.1 267.0 -411.1Q224.1 -411.1 160.1 -396.9V-34.1L229.0 -21.9V0.0H20.9V-21.9L79.1 -34.1V-424.8L20.9 -437.0V-458.9H155.2Z\",adv:777.8},n:{d:\"M158.2 -421.8Q195.8 -443.3 238.2 -457.2Q280.7 -471.1 309.0 -471.1Q368.6 -471.1 398.9 -436.5Q429.1 -401.8 429.1 -335.9V-34.1L484.8 -21.9V0.0H287.1V-21.9L348.1 -34.1V-327.1Q348.1 -367.6 328.3 -390.8Q308.5 -414.0 267.0 -414.0Q223.1 -414.0 159.1 -399.9V-34.1L221.1 -21.9V0.0H22.9V-21.9L78.1 -34.1V-424.8L22.9 -437.0V-458.9H153.8Z\",adv:500},o:{d:\"M461.9 -231.9Q461.9 9.7 247.0 9.7Q143.5 9.7 90.8 -52.2Q38.0 -114.2 38.0 -231.9Q38.0 -348.1 90.8 -409.6Q143.5 -471.1 250.9 -471.1Q355.4 -471.1 408.6 -410.8Q461.9 -350.5 461.9 -231.9ZM374.0 -231.9Q374.0 -337.4 343.2 -384.7Q312.5 -432.1 247.0 -432.1Q183.1 -432.1 154.5 -386.7Q125.9 -341.3 125.9 -231.9Q125.9 -121.0 155.0 -74.9Q184.0 -28.8 247.0 -28.8Q311.5 -28.8 342.7 -76.6Q374.0 -124.5 374.0 -231.9Z\",adv:500},p:{d:\"M74.2 -424.8 21.9 -437.0V-458.9H150.8L151.8 -432.1Q172.3 -449.7 206.7 -460.4Q241.2 -471.1 276.8 -471.1Q364.7 -471.1 412.8 -410.1Q460.9 -349.1 460.9 -234.8Q460.9 -118.1 408.4 -54.1Q355.9 9.7 256.8 9.7Q201.6 9.7 151.8 -0.9Q154.7 34.1 154.7 54.1V178.2L234.8 189.9V212.8H16.1V189.9L74.2 178.2ZM373.0 -234.8Q373.0 -328.6 342.5 -374.2Q312.0 -419.9 250.0 -419.9Q192.8 -419.9 154.7 -403.8V-37.1Q198.2 -28.8 250.0 -28.8Q373.0 -28.8 373.0 -234.8Z\",adv:500},r:{d:\"M324.2 -471.1V-347.1H303.2L274.9 -400.8Q250.4 -400.8 217.0 -394.2Q183.5 -387.6 159.1 -376.9V-34.1L237.7 -21.9V0.0H20.0V-21.9L78.1 -34.1V-424.8L20.0 -437.0V-458.9H153.8L158.2 -401.8Q187.5 -426.2 237.5 -448.7Q287.5 -471.1 316.8 -471.1Z\",adv:333},s:{d:\"M353.0 -128.9Q353.0 -60.5 309.8 -25.3Q266.6 9.7 182.1 9.7Q147.9 9.7 106.6 2.6Q65.4 -4.3 41.9 -13.1V-125.9H63.9L87.8 -62.0Q124.5 -28.8 183.1 -28.8Q277.8 -28.8 277.8 -109.8Q277.8 -169.4 203.1 -194.8L159.6 -208.9Q110.3 -225.0 87.8 -241.6Q65.4 -258.3 53.2 -282.4Q41.0 -306.6 41.0 -340.8Q41.0 -401.3 82.2 -436.2Q123.5 -471.1 193.8 -471.1Q244.1 -471.1 319.8 -456.0V-355.9H296.8L276.3 -409.1Q250.4 -432.1 194.8 -432.1Q155.2 -432.1 134.5 -412.5Q113.7 -393.0 113.7 -359.8Q113.7 -332.0 132.5 -312.9Q151.3 -293.9 189.4 -281.2Q261.2 -256.8 283.2 -245.6Q305.1 -234.3 320.5 -218.0Q335.9 -201.6 344.4 -180.6Q353.0 -159.6 353.0 -128.9Z\",adv:389.2},t:{d:\"M163.0 9.7Q116.2 9.7 93.0 -18.0Q69.8 -45.8 69.8 -96.1V-417.9H9.7V-439.9L70.8 -458.9L120.1 -562.9H150.8V-458.9H255.8V-417.9H150.8V-104.9Q150.8 -73.2 165.2 -57.1Q179.6 -41.0 203.1 -41.0Q231.4 -41.0 271.9 -48.8V-17.0Q254.8 -5.3 222.6 2.1Q190.4 9.7 163.0 9.7Z\",adv:277.8},u:{d:\"M152.8 -130.8Q152.8 -46.8 230.9 -46.8Q291.5 -46.8 344.2 -62.0V-424.8L274.9 -437.0V-458.9H424.8V-34.1L482.9 -21.9V0.0H349.1L345.2 -37.1Q310.5 -18.0 265.1 -4.1Q219.7 9.7 188.9 9.7Q71.7 9.7 71.7 -125.0V-424.8L13.1 -437.0V-458.9H152.8Z\",adv:500},w:{d:\"M513.1 9.7H475.0L361.8 -292.9L250.0 9.7H213.8L55.1 -424.8L0.9 -437.0V-458.9H219.2V-437.0L143.0 -423.8L251.9 -113.7L362.7 -413.0H403.8L514.1 -111.8L618.1 -424.8L542.9 -437.0V-458.9H717.7V-437.0L666.9 -426.7Z\",adv:722.2}},kern:{ff:-18.1,rg:-18.1},xHeight:459,capHeight:654.8,ascender:891.1,descender:-216.3};const Cap3D=(()=>{// ── noise ──\nfunction hash2(x,y,seed){let h=Math.imul(x|0,374761393)+Math.imul(y|0,668265263)+Math.imul(seed|0,1442695041)|0;h=Math.imul(h^h>>>13,1274126177);h^=h>>>16;return(h>>>0)/4294967296;}/** Tileable value noise on a period×period lattice, sampled at (u, v) ∈ [0,1)² (wraps). */function tileNoise(period,seed){const g=new Float32Array(period*period);for(let j=0;j<period;j++)for(let i=0;i<period;i++)g[j*period+i]=hash2(i,j,seed);return(u,v)=>{const x=u*period;const y=v*period;const x0=Math.floor(x);const y0=Math.floor(y);const fx=x-x0;const fy=y-y0;const sx=fx*fx*(3-2*fx);const sy=fy*fy*(3-2*fy);const i0=(x0%period+period)%period;const j0=(y0%period+period)%period;const i1=(i0+1)%period;const j1=(j0+1)%period;const a=g[j0*period+i0];const b=g[j0*period+i1];const c=g[j1*period+i0];const d=g[j1*period+i1];return a+(b-a)*sx+(c-a)*sy+(a-b-c+d)*sx*sy;};}/** Tileable value noise with its own lattice period per axis (e.g. streaks: many cells across, few along). */function tileNoise2(px,py,seed){const g=new Float32Array(px*py);for(let j=0;j<py;j++)for(let i=0;i<px;i++)g[j*px+i]=hash2(i,j,seed);return(u,v)=>{const x=u*px;const y=v*py;const x0=Math.floor(x);const y0=Math.floor(y);const fx=x-x0;const fy=y-y0;const sx=fx*fx*(3-2*fx);const sy=fy*fy*(3-2*fy);const i0=(x0%px+px)%px;const j0=(y0%py+py)%py;const i1=(i0+1)%px;const j1=(j0+1)%py;const a=g[j0*px+i0];const b=g[j0*px+i1];const c=g[j1*px+i0];const d=g[j1*px+i1];return a+(b-a)*sx+(c-a)*sy+(a-b-c+d)*sx*sy;};}/** Plain (non-tiling) value noise on a unit lattice. */function valueNoise(seed){return(x,y)=>{const x0=Math.floor(x);const y0=Math.floor(y);const fx=x-x0;const fy=y-y0;const sx=fx*fx*(3-2*fx);const sy=fy*fy*(3-2*fy);const a=hash2(x0,y0,seed);const b=hash2(x0+1,y0,seed);const c=hash2(x0,y0+1,seed);const d=hash2(x0+1,y0+1,seed);return a+(b-a)*sx+(c-a)*sy+(a-b-c+d)*sx*sy;};}/**\n     * Value noise from a 256×256 lattice table (periodic every 256 units). Same look as valueNoise, but a table\n     * lookup instead of four integer hashes per sample: the map loops call it tens of millions of times.\n     */function latticeNoise(seed){const g=new Float32Array(65536);for(let j=0;j<256;j++)for(let i=0;i<256;i++)g[j<<8|i]=hash2(i,j,seed);return(x,y)=>{const x0=Math.floor(x);const y0=Math.floor(y);const fx=x-x0;const fy=y-y0;const sx=fx*fx*(3-2*fx);const sy=fy*fy*(3-2*fy);const i0=x0&255;const j0=(y0&255)<<8;const i1=i0+1&255;const j1=j0+256&65280;const a=g[j0|i0];const b=g[j0|i1];const c=g[j1|i0];const d=g[j1|i1];return a+(b-a)*sx+(c-a)*sy+(a-b-c+d)*sx*sy;};}const clamp01=x=>x<0?0:x>1?1:x;const smoothstep=(a,b,x)=>{const k=clamp01((x-a)/(b-a));return k*k*(3-2*k);};function hexToLinear(hex){const m=/^#?([\\da-f]{2})([\\da-f]{2})([\\da-f]{2})/i.exec(hex);const c=m?[parseInt(m[1],16),parseInt(m[2],16),parseInt(m[3],16)]:[160,145,135];return c.map(v=>{const s=v/255;return s<=.04045?s/12.92:Math.pow((s+.055)/1.055,2.4);});}function linToSrgb8(x){const v=x<=0?0:x>=1?1:x;const s=v<=.0031308?v*12.92:1.055*Math.pow(v,1/2.4)-.055;return Math.round(s*255);}// fast sRGB encode through a table (linear 0..1 in 4096 steps)\nconst SRGB_LUT=(()=>{const t=new Uint8Array(4097);for(let i=0;i<=4096;i++)t[i]=linToSrgb8(i/4096);return t;})();const enc=x=>SRGB_LUT[x<=0?0:x>=1?4096:x*4096+.5|0];/** Separable box blur (clamped edges), in place friendly: returns a new array. */function boxBlur(src,W,H,r,passes=1,wrapX=false){let a=src;const tmp=new Float32Array(W*H);const col=new Float64Array(W)// running column sums: the vertical pass walks rows, not strided columns\n;const inv=1/(2*r+1);const wx=x=>wrapX?(x%W+W)%W:x<0?0:x>=W?W-1:x;const cy=y=>y<0?0:y>=H?H-1:y;for(let p=0;p<passes;p++){const out=new Float32Array(W*H);for(let y=0;y<H;y++){const o=y*W;let acc=0;for(let x=-r;x<=r;x++)acc+=a[o+wx(x)];for(let x=0;x<W;x++){tmp[o+x]=acc*inv;let xa=x+r+1;let xr=x-r;if(xa>=W)xa=wrapX?xa-W:W-1;if(xr<0)xr=wrapX?xr+W:0;acc+=a[o+xa]-a[o+xr];}}col.fill(0);for(let y=-r;y<=r;y++){const o=cy(y)*W;for(let x=0;x<W;x++)col[x]+=tmp[o+x];}for(let y=0;y<H;y++){const o=y*W;const oa=cy(y+r+1)*W;const orr=cy(y-r)*W;for(let x=0;x<W;x++){out[o+x]=col[x]*inv;col[x]+=tmp[oa+x]-tmp[orr+x];}}a=out;}return a;}/** Normal map (RGBA8, A=255) from a height field in cm, given the texel size in cm along u and v. */function packNormal(Hf,W,H,du,dv,wrapX,out,strength=1){for(let y=0;y<H;y++){const ym=y>0?y-1:0;const yp=y<H-1?y+1:H-1;for(let x=0;x<W;x++){const xm=wrapX?(x-1+W)%W:x>0?x-1:0;const xp=wrapX?(x+1)%W:x<W-1?x+1:W-1;const sx=du(x,y);const sy=dv(x,y);const gx=sx>1e-6?(Hf[y*W+xp]-Hf[y*W+xm])/((wrapX?2:xp-xm||1)*sx)*strength:0;const gy=sy>1e-6?(Hf[yp*W+x]-Hf[ym*W+x])/((yp-ym||1)*sy)*strength:0;const il=1/Math.sqrt(gx*gx+gy*gy+1);const o=(y*W+x)*4;out[o]=(-gx*il*.5+.5)*255+.5|0;out[o+1]=(-gy*il*.5+.5)*255+.5|0;out[o+2]=(il*.5+.5)*255+.5|0;out[o+3]=255;}}}// ─────────────────────────── twill ───────────────────────────\n/**\n     * Cotton drill woven as it really is: a 3/1 twill (each warp end floats over three picks and under one, stepping\n     * one pick per end), so the wales and their grooves come out of the weave instead of being painted as stripes.\n     * Tile axes: u along the weft (the crown rows), v along the warp (the grain, up the meridian).\n     * Warp:weft spacing 1:2 gives wales at 116.6° from the rows (measured 114–116° on photos 03/05) and\n     * 0.85 mm between wales (measured 0.79–0.93 mm): 96 ends × 48 picks per tile, 0.2376 mm per end.\n     */const TWILL_ENDS=96;const TWILL_PICKS=48;const TWILL_TILE_CM=2.281;/** wales per tile length, perpendicular spacing (for the screen-density fade) */const TWILL_WALES=TWILL_TILE_CM/.085;/** The tile carries the wale angle itself: the geometry's twill UVs only follow the grain (0° = u along the rows). */const TWILL_ANGLE=90;async function twillTile(N,step){const hgt=new Float32Array(N*N);const mul=new Float32Array(N*N)// albedo multiplier (mean 1)\n;const E=TWILL_ENDS;const P=TWILL_PICKS;const wanderE=tileNoise(8,41)// ends are not perfectly straight\n;const wanderP=tileNoise(8,42);const slubE=tileNoise(16,43)// yarn thickness / dye uptake along each end (≈ 3 mm correlation)\n;const slubP=tileNoise(16,44);const fuzz=tileNoise(192,45)// fibre fuzz, a few texels across\n;const wash=tileNoise(6,46)// soft washed-out patches across the tile\n;const streak=tileNoise2(40,3,51)// garment-dye streaks running with the warp (long, narrow)\n;const endB=new Float32Array(E);const pickB=new Float32Array(P);for(let i=0;i<E;i++)endB[i]=(hash2(i,5,47)-.5)*.18;for(let j=0;j<P;j++)pickB[j]=(hash2(j,6,48)-.5)*.12;// each yarn reads its own column (row) of the slub noise: neighbours are independent\nconst endR=new Float32Array(E);const pickR=new Float32Array(P);for(let i=0;i<E;i++)endR[i]=hash2(i,7,49);for(let j=0;j<P;j++)pickR[j]=hash2(j,8,50);let sum=0;for(let y=0;y<N;y++){const v=(y+.5)/N;for(let x=0;x<N;x++){const u=(x+.5)/N;// yarn coordinates, with a little wander\nconst X=u*E+(wanderE(u,v)-.5)*.35;const Y=v*P+(wanderP(u,v)-.5)*.3;const i=Math.floor(X);const j=Math.floor(Y);const fx=X-i;const fy=Y-j;const ii=(i%E+E)%E;const jj=(j%P+P)%P;const k=((ii+jj)%4+4)%4;let h;let b;if(k<3){// warp float over three picks: flat-topped end, dipping where it goes under the weft\n// the float is highest mid-way and dives at both ends; the ends of neighbouring floats line up\n// on the diagonal, so this is what rounds each wale into a ridge\nconst sAlong=(k+fy)/3;const env=Math.pow(Math.sin(Math.PI*sAlong),.8);const q=2*fx-1;const q4=q*q*q*q;const cross=1-.25*q4*q4// warp-faced: the ends are packed tight, only a faint parting\n;const th=1+.22*(slubE(endR[ii],v)-.5);h=th*cross*(.35+.65*env);b=1+endB[ii]+.24*(slubE(endR[ii]+.5,v+.37)-.5);}else{// the weft on top for one end: the groove between two wales\nconst q=2*fy-1;const cross=1-q*q;const env=Math.pow(Math.sin(Math.PI*fx),.6);const th=1+.2*(slubP(u,pickR[jj])-.5);h=th*(.18+.32*cross*env);b=1.03+pickB[jj]+.16*(slubP(u+.3,pickR[jj]+.5)-.5);}// the wale itself: fibres of neighbouring floats lie along the diagonal and blur the float ends into a\n// continuous rounded ridge (what a camera sees at 0.2 mm per pixel); the weave above adds the floats\nconst ph=(X+Y)*.25;const wv=Math.pow(.5-.5*Math.cos(2*Math.PI*(ph-Math.floor(ph))),.7);h=.55*wv*(1+.15*(slubE(endR[ii]+.25,v)-.5))+.45*h;const fz=fuzz(u,v)-.5;h+=.06*fz;// self-shadowing of the weave: low parts read darker even under soft light\n// fibre flecks: the odd loose fibre catches the light\nconst fleck=hash2(x>>1,y>>1,52)>.985?.18:0;const m=b*(.5+.62*Math.min(1,Math.max(0,h)))*(1+.12*fz+fleck)*(1+.07*(wash(u,v)-.5))*(1+.08*(streak(u,v)-.5));const o=y*N+x;hgt[o]=h;mul[o]=m;sum+=m;}if((y&63)===63)await step();}const mean=sum/(N*N);const out=new Uint8Array(N*N*4);const texel=TWILL_TILE_CM/N;const amp=.012// cm: float height above the groove\n;for(let k=0;k<N*N;k++)hgt[k]*=amp;packNormal(hgt,N,N,()=>texel,()=>texel,true,out,1);// wrap vertically too\nfor(let i=0;i<N;i++)for(const j of[0,N-1]){const jm=(j-1+N)%N;const jp=(j+1)%N;const gx=(hgt[j*N+(i+1)%N]-hgt[j*N+(i-1+N)%N])/(2*texel);const gy=(hgt[jp*N+i]-hgt[jm*N+i])/(2*texel);const il=1/Math.sqrt(gx*gx+gy*gy+1);const o=(j*N+i)*4;out[o]=(-gx*il*.5+.5)*255+.5|0;out[o+1]=(-gy*il*.5+.5)*255+.5|0;out[o+2]=(il*.5+.5)*255+.5|0;}// alpha: albedo multiplier around 1 (a = 0.5 ↔ ×1), ±1 range\nfor(let k=0;k<N*N;k++)out[k*4+3]=Math.max(0,Math.min(255,Math.round(127.5*(1+(mul[k]/mean-1)))));return out;}/**\n     * Twill texture coordinates for a crown panel = the panel flattened back into the flat piece of cloth it was cut\n     * from. A panel of a real cap is a flat piece of twill: its grain is straight in the cut piece and the cloth only\n     * shears a little to follow the dome, so near the button the wales are straight and parallel, not fanned out.\n     * Solved as an as-rigid-as-possible parameterisation (local/global, cotangent Laplacian factored once) on a\n     * coarse copy of the panel grid, started from the row/meridian arc-length map `init` and turned back to it at\n     * the end, so the grain keeps running up the middle of the panel.\n     * P: node positions (cols+1)×(rows+1), row-major by j. init/result: u,v per node in tile units.\n     */let ARAP_ITERS=10;function setArapIters(n){ARAP_ITERS=n;}function twillField(P,cols,rows,init,angleDeg,tileCm){void angleDeg// the tile carries the wale angle; the grain direction comes from init\n;const nx=cols+1;const ny=rows+1;const si=Math.max(1,Math.round(cols/28));const sj=Math.max(1,Math.round(rows/44));const ci=[];const cj=[];for(let i=0;i<nx;i+=si)ci.push(i);if(ci[ci.length-1]!==cols)ci.push(cols);for(let j=0;j<ny;j+=sj)cj.push(j);if(cj[cj.length-1]!==rows)cj.push(rows);const CX=ci.length;const CY=cj.length;const n=CX*CY;const X=new Float64Array(n*3);const U0=new Float64Array(n*2)// init, cm\n;for(let J=0;J<CY;J++)for(let I=0;I<CX;I++){const k=J*CX+I;const g=cj[J]*nx+ci[I];X[k*3]=P[g*3];X[k*3+1]=P[g*3+1];X[k*3+2]=P[g*3+2];U0[k*2]=init[g*2]*tileCm;U0[k*2+1]=init[g*2+1]*tileCm;}// triangles with their isometric 2D shape (first edge along x) and cotangent weights\nconst tri=[];const shp=[]// x1, x2, y2 (vertex 0 at the origin, vertex 1 at (x1, 0))\n;const cot=[]// cot of the angle opposite edges (1,2), (2,0), (0,1)\n;const addTri=(a,b,c)=>{const e1x=X[b*3]-X[a*3];const e1y=X[b*3+1]-X[a*3+1];const e1z=X[b*3+2]-X[a*3+2];const e2x=X[c*3]-X[a*3];const e2y=X[c*3+1]-X[a*3+1];const e2z=X[c*3+2]-X[a*3+2];const l1=Math.hypot(e1x,e1y,e1z);if(l1<1e-5)return;const x2=(e2x*e1x+e2y*e1y+e2z*e1z)/l1;const y2=Math.sqrt(Math.max(0,e2x*e2x+e2y*e2y+e2z*e2z-x2*x2));if(l1*y2<1e-6)return;tri.push(a,b,c);shp.push(l1,x2,y2);// corner vectors in 2D: p0 = (0,0), p1 = (l1,0), p2 = (x2,y2)\nconst ct=(ax,ay,bx,by)=>(ax*bx+ay*by)/Math.max(1e-9,Math.abs(ax*by-ay*bx));const c0=ct(l1,0,x2,y2)// at p0, opposite edge (1,2)\n;const c1=ct(-l1,0,x2-l1,y2)// at p1, opposite edge (2,0)\n;const c2=ct(-x2,-y2,l1-x2,-y2)// at p2, opposite edge (0,1)\n;cot.push(Math.max(0,Math.min(20,c0)),Math.max(0,Math.min(20,c1)),Math.max(0,Math.min(20,c2)));};for(let J=0;J<CY-1;J++)for(let I=0;I<CX-1;I++){const k=J*CX+I;addTri(k,k+1,k+CX);addTri(k+1,k+CX+1,k+CX);}const nt=tri.length/3;// Laplacian as an edge list (i, j, w), plus diagonal\nconst eI=[];const eJ=[];const eW=[];const diag=new Float64Array(n);for(let t=0;t<nt;t++){const v=[tri[t*3],tri[t*3+1],tri[t*3+2]];for(let e=0;e<3;e++){const a=v[(e+1)%3];const b=v[(e+2)%3];const w=.5*cot[t*3+e];eI.push(a);eJ.push(b);eW.push(w);diag[a]+=w;diag[b]+=w;}}const used=new Uint8Array(n);for(const v of tri)used[v]=1;// pin the node nearest the panel centre at mid height (translation); the rest is free\nconst pin=Math.floor(CY/2)*CX+Math.floor(CX/2);// The Laplacian is the same every iteration and banded (row-major grid: bandwidth CX): factor it once\n// (banded Cholesky, the pin's couplings moved to the right-hand side), then each solve is two sweeps.\nconst B=CX;const Lb=new Float64Array(n*(B+1))// Lb[i * (B+1) + d] = A(i, i − d), then the factor\n;for(let k=0;k<n;k++)Lb[k*(B+1)]=used[k]&&k!==pin?diag[k]:1;const pinW=[]// (node, weight) couplings to the pin\n;for(let e=0;e<eI.length;e++){const a=eI[e];const b=eJ[e];if(a===pin||b===pin){const o=a===pin?b:a;if(o!==pin&&used[o])pinW.push(o,eW[e]);continue;}const hi=a>b?a:b;const lo=a>b?b:a;Lb[hi*(B+1)+(hi-lo)]-=eW[e];}for(let i=0;i<n;i++){const i0=Math.max(0,i-B);for(let jj=i0;jj<=i;jj++){let sum=Lb[i*(B+1)+(i-jj)];const k0=Math.max(i0,jj-B);for(let k=k0;k<jj;k++)sum-=Lb[i*(B+1)+(i-k)]*Lb[jj*(B+1)+(jj-k)];if(jj===i)Lb[i*(B+1)]=Math.sqrt(Math.max(sum,1e-12));else Lb[i*(B+1)+(i-jj)]=sum/Lb[jj*(B+1)];}}const solve=(rhs,x,pinVal)=>{for(let q=0;q<pinW.length;q+=2)rhs[pinW[q]]+=pinW[q+1]*pinVal;rhs[pin]=pinVal;// L y = rhs\nfor(let i=0;i<n;i++){let sum=rhs[i];for(let k=Math.max(0,i-B);k<i;k++)sum-=Lb[i*(B+1)+(i-k)]*x[k];x[i]=sum/Lb[i*(B+1)];}// Lᵀ x = y\nfor(let i=n-1;i>=0;i--){let sum=x[i];for(let k=i+1;k<=Math.min(n-1,i+B);k++)sum-=Lb[k*(B+1)+(k-i)]*x[k];x[i]=sum/Lb[i*(B+1)];}};const u=new Float64Array(n);const v=new Float64Array(n);for(let k=0;k<n;k++){u[k]=U0[k*2];v[k]=U0[k*2+1];}const R=new Float64Array(nt*2)// per-triangle rotation (cos, sin)\n;const bu=new Float64Array(n);const bv=new Float64Array(n);for(let iter=0;iter<ARAP_ITERS;iter++){// local: best rotation of each triangle's current 2D shape onto its isometric shape\nfor(let t=0;t<nt;t++){const a=tri[t*3];const b=tri[t*3+1];const c=tri[t*3+2];const l1=shp[t*3];const x2=shp[t*3+1];const y2=shp[t*3+2];// Jacobian J (uv per local 2D) from edges: [du1 du2; dv1 dv2] = J [l1 x2; 0 y2]\nconst du1=u[b]-u[a];const du2=u[c]-u[a];const dv1=v[b]-v[a];const dv2=v[c]-v[a];const j00=du1/l1;const j01=(du2-j00*x2)/y2;const j10=dv1/l1;const j11=(dv2-j10*x2)/y2;const ca=j00+j11;const sa=j10-j01;const l=Math.hypot(ca,sa)||1;R[t*2]=ca/l;R[t*2+1]=sa/l;}// global: L [u v] = Σ w_ij R_t (p_i − p_j)\nbu.fill(0);bv.fill(0);for(let t=0;t<nt;t++){const vs=[tri[t*3],tri[t*3+1],tri[t*3+2]];const l1=shp[t*3];const px=[0,l1,shp[t*3+1]];const py=[0,0,shp[t*3+2]];const c=R[t*2];const sn=R[t*2+1];for(let e=0;e<3;e++){const i1=(e+1)%3;const i2=(e+2)%3;const w=.5*cot[t*3+e];const dx=px[i1]-px[i2];const dy=py[i1]-py[i2];const rx=c*dx-sn*dy;const ry=sn*dx+c*dy;bu[vs[i1]]+=w*rx;bv[vs[i1]]+=w*ry;bu[vs[i2]]-=w*rx;bv[vs[i2]]-=w*ry;}}for(let k=0;k<n;k++)if(!used[k]){bu[k]=u[k];bv[k]=v[k];}solve(bu,u,u[pin]);solve(bv,v,v[pin]);}// turn (and shift) the flattened piece back onto init: the grain keeps running up the panel\nlet mu=0;let mv=0;let m0u=0;let m0v=0;let cnt=0;for(let k=0;k<n;k++)if(used[k]){mu+=u[k];mv+=v[k];m0u+=U0[k*2];m0v+=U0[k*2+1];cnt++;}mu/=cnt;mv/=cnt;m0u/=cnt;m0v/=cnt;let sxx=0;let sxy=0;for(let k=0;k<n;k++)if(used[k]){const a=u[k]-mu;const b=v[k]-mv;const c=U0[k*2]-m0u;const d=U0[k*2+1]-m0v;sxx+=a*c+b*d;sxy+=a*d-b*c;}const th=Math.atan2(sxy,sxx);const cr=Math.cos(th);const sr=Math.sin(th);const U=new Float32Array(n);const V=new Float32Array(n);for(let k=0;k<n;k++){const a=u[k]-mu;const b=v[k]-mv;U[k]=(cr*a-sr*b+m0u)/tileCm;V[k]=(sr*a+cr*b+m0v)/tileCm;}const valid=used;// back to the full grid, bilinear by arc length (the columns are clustered towards the seams and the rim row\n// is longer: index weights would kink the wales every few columns); invalid coarse nodes keep the initial mapping\nconst rowS=new Float32Array(nx*ny);const colS=new Float32Array(nx*ny);for(let j=0;j<ny;j++)for(let i=1;i<nx;i++){const a=j*nx+i;rowS[a]=rowS[a-1]+Math.hypot(P[a*3]-P[(a-1)*3],P[a*3+1]-P[(a-1)*3+1],P[a*3+2]-P[(a-1)*3+2]);}for(let i=0;i<nx;i++)for(let j=1;j<ny;j++){const a=j*nx+i;const b=a-nx;colS[a]=colS[b]+Math.hypot(P[a*3]-P[b*3],P[a*3+1]-P[b*3+1],P[a*3+2]-P[b*3+2]);}const frac=(S,a,b,c,fallback)=>{const d=S[b]-S[a];return d>1e-6?Math.min(1,Math.max(0,(S[c]-S[a])/d)):fallback;};const out=new Float32Array(nx*ny*2);let I=0;for(let j=0;j<ny;j++){let J=0;while(J<CY-2&&cj[J+1]<=j)J++;const fyI=(j-cj[J])/(cj[J+1]-cj[J]);I=0;for(let i=0;i<nx;i++){while(I<CX-2&&ci[I+1]<=i)I++;const fx=frac(rowS,j*nx+ci[I],j*nx+ci[I+1],j*nx+i,(i-ci[I])/(ci[I+1]-ci[I]));const fy=frac(colS,cj[J]*nx+i,cj[J+1]*nx+i,j*nx+i,fyI);const k00=J*CX+I;const ks=[k00,k00+1,k00+CX,k00+CX+1];const ws=[(1-fx)*(1-fy),fx*(1-fy),(1-fx)*fy,fx*fy];let su=0;let sv=0;let sw=0;for(let q=0;q<4;q++){if(!valid[ks[q]])continue;su+=U[ks[q]]*ws[q];sv+=V[ks[q]]*ws[q];sw+=ws[q];}const o=(j*nx+i)*2;if(sw>1e-6){out[o]=su/sw;out[o+1]=sv/sw;}else{out[o]=init[o];out[o+1]=init[o+1];}}}return out;}// ─────────────────────────── stitches ───────────────────────────\n/** Width of the binding over the back opening's edge, outside face (cm): photo 04, ≈ 6 mm. */const BIND_W=.6;/** Eyelet hole radius (cm): 8–9 px across on photo 09 at 33.8 px/cm (twill ruler) → 2.5 mm. */const EYELET_R0=.125;/** Output of stitchRow (module scope: the map loops call it millions of times without allocating). */const ST={cov:0,shade:1,pit:0};/**\n     * One row of lockstitch topstitching at (along, across), in cm from the row's centre line. Returns the height\n     * (cm) and leaves in ST the thread coverage, a shading factor for the thread's twist, and the needle-hole\n     * darkness. The thread is round, tapers where it dives into the needle holes, and shows its two-ply twist\n     * (≈ 0.6 mm per turn); the fabric is pulled in along the row, most at the holes.\n     */function stitchRow(along,across,pitch,dash,thW,thH){ST.cov=0;ST.shade=1;ST.pit=0;const aa=across<0?-across:across;if(aa>.11)return 0;const ph=along-Math.floor(along/pitch)*pitch;const c=ph-pitch/2// 0 in the middle of the visible thread\n;const ac=c<0?-c:c;const holeD=pitch/2-ac// along-row distance to the nearest needle hole\n;let h=-(.009+.007*Math.exp(-((holeD/.05)**2)))*Math.exp(-((across/.065)**2));const half=dash/2;if(ac<half&&aa<thW){const q=aa/thW;const prof=Math.sqrt(1-q*q);const end=smoothstep(half,half-thW*1.6,ac);const tw=.5+.5*Math.cos(2*Math.PI*(c/.06-across/.05));h+=thH*prof*end*(.84+.16*tw);ST.cov=smoothstep(0,.25,prof*end);ST.shade=.84+.26*tw*prof;}const dg=Math.sqrt(holeD*holeD+across*across);if(dg<.035){const k=1-dg/.035;h-=.012*k*k;ST.pit=k*k;}return h;}/** Crown albedo / normal / ORM (R=AO, G=roughness, B=unused). */async function crownMaps(W,H,ch,f,step){const{nP,nT,phi0,dphi}=ch;const TWO_PI=Math.PI*2;const Hf=new Float32Array(W*H)// fine height (cm)\n;const thread=new Uint8Array(W*H)// stitch thread coverage\n;const eyeRing=new Uint8Array(W*H);const eyeHole=new Uint8Array(W*H);const embCov=new Uint8Array(W*H);const embSh=new Uint8Array(W*H);const wear=new Uint8Array(W*H)// abrasion on raised seam bands (lightens the dye)\n;const Drow=new Float32Array(W)// coarse displacement per texel (row buffer)\n;const Dtex=new Float32Array(W*H);const SPtex=new Float32Array(W*H);const STtex=new Float32Array(W*H);const panelCenters=f.seams.slice(0,-1).map((a,i)=>(a+f.seams[i+1])/2);// row caches over the coarse φ grid\nconst rSY=new Float32Array(nP);const rRA=new Float32Array(nP);const rSP=new Float32Array(nP);const rST=new Float32Array(nP);const rD=new Float32Array(nP);const fillRow=t=>{const ft=Math.min(nT-1.000001,Math.max(0,t/ch.dt));const j0=Math.floor(ft);const k=ft-j0;const a=j0*nP;const b=(j0+1)*nP;for(let i=0;i<nP;i++){rSY[i]=ch.SY[a+i]+(ch.SY[b+i]-ch.SY[a+i])*k;rRA[i]=ch.RA[a+i]+(ch.RA[b+i]-ch.RA[a+i])*k;rSP[i]=ch.SP[a+i]+(ch.SP[b+i]-ch.SP[a+i])*k;rST[i]=ch.ST[a+i]+(ch.ST[b+i]-ch.ST[a+i])*k;rD[i]=ch.D[a+i]+(ch.D[b+i]-ch.D[a+i])*k;}};const lerpRow=(arr,phi)=>{const fp=Math.min(nP-1.000001,Math.max(0,(phi-phi0)/dphi));const i0=Math.floor(fp);return arr[i0]+(arr[i0+1]-arr[i0])*(fp-i0);};// ── creases: washed cotton crinkles, per panel in local (sx, sy) cm, rasterised at 30 px/cm\nconst CPX=30;const CX0=-7;const CW=14*CPX;const CH=18*CPX;const creaseGrids=[];for(let p=0;p<panelCenters.length;p++){const g=new Float32Array(CW*CH);const rnd=k=>hash2(p*977+k,31,f.seed);const list=[];const count=24;for(let c=0;c<count;c++){const big=c<6;list.push({x:(rnd(c*7)-.5)*11,y:.8+rnd(c*7+1)*13,ang:(rnd(c*7+2)-.5)*Math.PI*(big?.7:1)+(big?Math.PI/2:0),len:big?3+rnd(c*7+3)*4:.8+rnd(c*7+3)*2.6,bend:(rnd(c*7+4)-.5)*.5,w:big?.25+rnd(c*7+5)*.3:.05+rnd(c*7+5)*.12,a:(rnd(c*7+6)<.62?-1:1)*(big?.02+rnd(c*7+6)*.02:.004+rnd(c*7+6)*.008)});}for(const c of list){const ca=Math.cos(c.ang);const sa=Math.sin(c.ang);const ext=c.len/2+c.w*2;const xa=Math.max(0,Math.floor((c.x-ext-CX0)*CPX));const xb=Math.min(CW-1,Math.ceil((c.x+ext-CX0)*CPX));const ya=Math.max(0,Math.floor((c.y-ext)*CPX));const yb=Math.min(CH-1,Math.ceil((c.y+ext)*CPX));for(let yy=ya;yy<=yb;yy++)for(let xx=xa;xx<=xb;xx++){const lx=xx/CPX+CX0-c.x;const ly=yy/CPX-c.y;const along=lx*ca+ly*sa;let across=-lx*sa+ly*ca;const tt=along/(c.len/2);if(tt<-1||tt>1)continue;across-=c.bend*(1-tt*tt)// gently curved crease\n;const d=Math.abs(across)/c.w;if(d>2.2)continue;// sharp crease line with soft shoulders; fades at both ends\nconst prof=d<1?(1-d)*(1-d)*.8+.2*Math.exp(-d*d):.2*Math.exp(-d*d);g[yy*CW+xx]+=c.a*prof*Math.pow(1-tt*tt,1.5);}}creaseGrids.push(g);}await step();const creaseAt=(p,sx,sy)=>{const gx=(sx-CX0)*CPX;const gy=sy*CPX;if(gx<0||gy<0||gx>=CW-1||gy>=CH-1)return 0;const x0=gx|0;const y0=gy|0;const fx=gx-x0;const fy=gy-y0;const g=creaseGrids[p];const o=y0*CW+x0;return g[o]*(1-fx)*(1-fy)+g[o+1]*fx*(1-fy)+g[o+CW]*(1-fx)*fy+g[o+CW+1]*fx*fy;};const pucker=latticeNoise(f.seed+5);const PITCH=.3// topstitch length ≈ 3 mm (8–9 stitches per inch; photos 03/05 give 2.4–2.9 mm)\n;const DASH=.21;const TH_W=.034// thread half-width\n;const ROW_OFF=.53// rows either side of each seam: measured 4.4–6.0 mm (photos 03/05, unrolled), mean 5.3 mm\n;const RIM_ROW=.45;const eyeR0=EYELET_R0;const eyeR1=.4// outer radius of the satin ring: 27–30 px across on photo 09 → 8–8.9 mm (soft edge)\n;// stitch rows: coverage, twist shading and needle holes of the nearest row land in these per texel\nlet thrC=0;let thS=1;let pitK=0;const stitch=(along,across)=>{const h=stitchRow(along,across,PITCH,DASH,TH_W,.03);if(ST.cov>thrC){thrC=ST.cov;thS=ST.shade;}if(ST.pit>pitK)pitK=ST.pit;return h;};const threadShade=new Uint8Array(W*H);const pitMap=new Uint8Array(W*H);const nearBtn=new Uint8Array(W*H)// contact shadow around the button\n;const holeA=new Uint8Array(W*H)// eyelet holes: 255 = open\n;// per-row constants (the loop below runs over millions of texels: nothing in it allocates or searches)\nconst nPan=panelCenters.length;const nSeam=f.seams.length;const seamRA=new Float32Array(nSeam);const centerRA=new Float32Array(nPan);const seamBack=f.seams.map(s=>Math.abs(Math.abs(s)-Math.PI)<1e-6);// seam rows stop just past the button's edge (0.95 cm radius), measured along each seam's own meridian\nconst seamTopSY=f.seams.map(sp=>{const fp=Math.min(nP-1.000001,Math.max(0,(sp-phi0)/dphi));const i0=fp|0;const a=(nT-1)*nP;return ch.SY[a+i0]+(ch.SY[a+i0+1]-ch.SY[a+i0])*(fp-i0)-(f.buttonR+.14);});const topRow=(nT-1)*nP;const NA=65// back-opening arch, sampled once\n;const archPhi=new Float32Array(NA);const archT=new Float32Array(NA);for(let s=0;s<NA;s++){const[hw,ta]=f.openEdgeAt(s/(NA-1))// spread evenly around the corners\n;archT[s]=ta;archPhi[s]=Math.PI-hw;}const eyes=f.eyelets;const nEye=eyes.length;const emb=f.embroidery;const embOut=new Float32Array(2);const bindPhi=Math.PI-f.openW-.35;const bindT=f.openT+1.49*f.openTPerCm;for(let y=0;y<H;y++){const t=(y+.5)/H;fillRow(t);const w=f.openHalfWidth(t);for(let s=0;s<nSeam;s++)seamRA[s]=lerpRow(rRA,f.seams[s]);for(let p=0;p<nPan;p++)centerRA[p]=lerpRow(rRA,panelCenters[p]);const rowBind=t<bindT;let p=0;for(let x=0;x<W;x++){const phi=phi0+(x+.5)/W*TWO_PI;const k=y*W+x;const fp=Math.min(nP-1.000001,Math.max(0,(phi-phi0)/dphi));const i0=fp|0;const fr=fp-i0;const SY=rSY[i0]+(rSY[i0+1]-rSY[i0])*fr;const RA=rRA[i0]+(rRA[i0+1]-rRA[i0])*fr;SPtex[k]=rSP[i0]+(rSP[i0+1]-rSP[i0])*fr;STtex[k]=rST[i0]+(rST[i0+1]-rST[i0])*fr;Dtex[k]=rD[i0]+(rD[i0+1]-rD[i0])*fr;// panel (φ only grows along the row)\nwhile(p<nPan-1&&phi>f.seams[p+1])p++;// inside the back opening there is no fabric\nif(Math.abs(phi)>Math.PI-w)continue;const sx=RA-centerRA[p];let h=creaseAt(p,sx,SY);thrC=0;thS=1;pitK=0;// distance to the apex along the meridian: the button sits there\nconst dApex=ch.SY[topRow+i0]+(ch.SY[topRow+i0+1]-ch.SY[topRow+i0])*fr-SY;if(dApex<1.2)nearBtn[k]=smoothstep(f.buttonR+.22,f.buttonR-.1,dApex)*255|0;// ── seam topstitching (a row 5.3 mm either side) + pucker\nconst da=RA-seamRA[p]// cm from the left seam\n;const db=seamRA[p+1]-RA// cm to the right seam\n;const nearLeft=da<db;const dSeam=nearLeft?da:db;const seamPhi=nearLeft?f.seams[p]:f.seams[p+1];const isBack=nearLeft?seamBack[p]:seamBack[p+1];const topSYs=nearLeft?seamTopSY[p]:seamTopSY[p+1];const topLimit=SY<topSYs;const bottomOk=isBack?t>f.openT+.25*f.openTPerCm:SY>RIM_ROW+.18;// the seam itself runs from the rim (or the top of the back opening) to the button; its fold and the\n// allowance under it fade in and out smoothly instead of ending in a cut line\nconst seamFade=(isBack?smoothstep(f.openT,f.openT+.37*f.openTPerCm,t):1)*smoothstep(topSYs+1,topSYs+.3,SY);if(dSeam<1.4&&seamFade>0){// the seam line itself: the two panels meet in a tight fold\nh-=.012*seamFade*Math.exp(-((dSeam/.035)**2));// the folded allowance ends just outside the row: a soft step under the fabric\nh+=.006*seamFade*smoothstep(.8,.62,dSeam);// pucker: ripples across the seam band, strongest on the allowance\nconst env=Math.exp(-((dSeam/.8)**2))*(.6+.8*pucker(SY*.8,seamPhi*3));h+=.011*seamFade*env*Math.sin(SY*2*Math.PI/1.25+pucker(SY*.3,seamPhi)*5);// garment-washed: the raised band pales where it rubs, in patches\nconst wr=seamFade*smoothstep(.78,.5,dSeam)*clamp01(.2+1.3*(pucker(SY*1.7+11,seamPhi*5+3)-.35));wear[k]=wr*255|0;// the topstitch rows: a row simply ends at its last stitch\nif(topLimit&&bottomOk)h+=stitch(SY,dSeam-ROW_OFF);}// ── rim row, 4.5 mm above the rim\nif(SY<1.1){h+=stitch(RA,SY-RIM_ROW);// gathered by the sweatband: soft ripples between rim and row\nh+=.008*Math.sin(RA*2*Math.PI/1.7+pucker(RA*.4,3)*6)*smoothstep(.9,.2,SY);}// ── binding topstitch around the back opening, 5.5 mm from the edge\nif(rowBind&&Math.abs(phi)>bindPhi){// distance to the arch (edge at |φ| = π − w(t)), evaluated in cm on a few candidates\n// distance to the arch polyline (segments, in local cm), and the arc length along it\nlet best2=81;let alongArch=0;const sg=phi<0?-1:1;const sp=SPtex[k];const st=STtex[k];let acc=0;for(let s=0;s<NA-1;s++){const ax=(sg*archPhi[s]-phi)*sp;const ay=(archT[s]-t)*st;const bx=(sg*archPhi[s+1]-phi)*sp;const by=(archT[s+1]-t)*st;const vx=bx-ax;const vy=by-ay;const l2=vx*vx+vy*vy||1e-12;const tt=clamp01(-(ax*vx+ay*vy)/l2);const cx=ax+vx*tt;const cy=ay+vy*tt;const d2=cx*cx+cy*cy;const sl=Math.sqrt(l2);if(d2<best2){best2=d2;alongArch=acc+tt*sl;}acc+=sl;}const best=Math.sqrt(best2);// the binding (its own geometry) covers the first BIND_W cm; where its edge sits on the crown the\n// cloth is pressed in a little and shaded\nif(best<BIND_W+.2){const d=best-BIND_W;h-=.012*Math.exp(-((d/.05)**2));const c=Math.exp(-((Math.max(0,d)/.07)**2))*200|0;if(c>nearBtn[k])nearBtn[k]=c;void alongArch;}}// ── embroidered eyelets\nfor(let q=0;q<nEye;q++){const e=eyes[q];if(Math.abs(t-e.t)>.06||Math.abs(phi-e.phi)>.12)continue;const exy=(phi-e.phi)*SPtex[k];const eyy=(t-e.t)*STtex[k];const r=Math.sqrt(exy*exy+eyy*eyy);if(r>eyeR1+.16)continue;// the punched hole goes right through (alpha), with a soft edge for alpha-to-coverage\nholeA[k]=Math.max(holeA[k],smoothstep(eyeR0+.006,eyeR0-.012,r)*255|0);const ang=Math.atan2(eyy,exy);// satin ring: ≈ 40 radial stitches (0.4 mm apart at mid-ring) wrapping over the edge into the hole;\n// each stitch ends at its own radius, so the outline is ragged, not a turned washer\nconst NS=40;const sa=(ang/(2*Math.PI)*NS+NS)%NS;const si=Math.floor(sa);const sf=sa-si;const endR=eyeR1-.05+.07*hash2(si,q,97+e.phi*100|0);if(r<eyeR0){h+=-.03;eyeHole[k]=255;}else if(r<endR){const qq=(r-eyeR0)/(endR-eyeR0);const lump=pucker(ang*5,qq*3+e.phi)-.5;// a round thread across each stitch, a little slack and uneven\nconst across=Math.sin(Math.PI*sf);const st=Math.pow(across,.5)*(.85+.3*hash2(si,3,55));const prof=Math.pow(Math.sin(Math.PI*Math.pow(qq,.6)),.5);h+=(.026+.01*lump)*prof+.012*st*prof;eyeRing[k]=smoothstep(0,.05,qq)*smoothstep(1,.8,qq)*(.55+.45*st)*255|0;thS=.7+.42*st*(.55+.45*prof);}else{// cloth drawn in by the stitches: a shallow dimple around the ring\nconst d=Math.min(1,(r-endR)/.16);h+=-.014*(1-d)*(1-d);}}// ── embroidery: fabric lifted under the stitches, contact shadow around them\nif(emb){emb.sample(phi,t,SY,RA,embOut);const cv=embOut[0];const bl=embOut[1];if(bl>.001){h+=.018*bl;embCov[k]=cv*255|0;embSh[k]=clamp01(bl-cv)*255|0;}}Hf[k]=h;thread[k]=thrC*255|0;threadShade[k]=Math.max(0,Math.min(255,Math.round((thS-.5)*255)));pitMap[k]=pitK*255|0;}if((y&31)===31)await step();}// ── normals from the fine height field\nconst dphiTex=TWO_PI/W;const dtTex=1/H;const normal=new Uint8Array(W*H*4);packNormal(Hf,W,H,(x,y)=>SPtex[y*W+x]*dphiTex,(x,y)=>STtex[y*W+x]*dtTex,true,normal);await step();// ── AO: fine cavities (stitches, creases) + coarse folds from the geometry\nconst Hb=boxBlur(Hf,W,H,Math.max(2,Math.round(W/700)),2,true);await step();const Db=boxBlur(Dtex,W,H,Math.max(3,Math.round(W/160)),2,true);await step();const orm=new Uint8Array(W*H*4);const albedo=new Uint8Array(W*H*4);const base=hexToLinear(f.colors.fabric);const thr=hexToLinear(f.colors.thread);const hole=hexToLinear(f.colors.hole);const eye=hexToLinear(f.colors.eyelet);const mott=latticeNoise(f.seed+9);const mott2=latticeNoise(f.seed+10);// washed dye: soft blotches + streaks along the grain. Low frequency: evaluated on a 4× coarser grid\n// (≥ 6 samples per finest blotch) and interpolated\nconst MW=W>>2;const MH=(H>>2)+1;const mot=new Float32Array(MW*MH);for(let j=0;j<MH;j++)for(let i=0;i<MW;i++){const X=(phi0+(i+.5)/MW*TWO_PI)*9;const Y=(j*4+.5)/H*14;mot[j*MW+i]=.035*(mott(X*.35,Y*.35)-.5)+.025*(mott2(X*1.3,Y*.25)-.5)+.012*(mott(X*3.1,Y*3.1)-.5);}for(let y=0;y<H;y++){const t=(y+.5)/H;const my=y/4;const j0=Math.min(MH-2,my|0);const fy=my-j0;for(let x=0;x<W;x++){const k=y*W+x;const phi=phi0+(x+.5)/W*TWO_PI;const mx=(x+.5)/4-.5;const mxf=Math.floor(mx);const fx=mx-mxf;const i0=(mxf+MW)%MW;const i1=(i0+1)%MW;const mo=(mot[j0*MW+i0]*(1-fx)+mot[j0*MW+i1]*fx)*(1-fy)+(mot[(j0+1)*MW+i0]*(1-fx)+mot[(j0+1)*MW+i1]*fx)*fy;const cav=Hb[k]-Hf[k]// > 0 in dips\n;const fold=Db[k]-Dtex[k]// > 0 in geometric valleys\n;let ao=1-clamp01(cav*22)*.55-clamp01(fold*3.5)*.35-embSh[k]/255*.55-nearBtn[k]/255*.5;if(eyeHole[k])ao=.35;ao=Math.max(.25,ao);// abrasion lightens ridges, dye pools in valleys\nconst X=phi*9;const Y=t*14;let m=1+mo;m*=1+clamp01(-fold*4)*.05+clamp01(-cav*30)*.04-clamp01(fold*4)*.035;m*=1+.09*(wear[k]/255);m*=1-.5*(pitMap[k]/255)// needle holes\n;m*=1-.18*(1-ao)// a touch of cavity into the albedo (AO maps only affect ambient light)\n;let r=base[0]*m;let g=base[1]*m;let bb=base[2]*m;const tk=thread[k]/255;const shd=threadShade[k]/255+.5;if(tk>0){const s=(.95+.1*mott(X*12,Y*12))*shd;r+=(thr[0]*s-r)*tk;g+=(thr[1]*s-g)*tk;bb+=(thr[2]*s-bb)*tk;}const er=eyeRing[k]/255;if(er>0){const s=shd*(.97+.06*mott(X*20,Y*20));r+=(eye[0]*s-r)*er;g+=(eye[1]*s-g)*er;bb+=(eye[2]*s-bb)*er;}if(eyeHole[k]){r=hole[0];g=hole[1];bb=hole[2];}const o=k*4;albedo[o]=enc(r);albedo[o+1]=enc(g);albedo[o+2]=enc(bb);albedo[o+3]=255-holeA[k];const rough=.94-.14*tk-.12*er-.04*clamp01(-fold*4);orm[o]=ao*255|0;orm[o+1]=clamp01(rough)*255|0;// B: where thread covers the twill (stitches, eyelet rings, holes): the shader drops the weave there\norm[o+2]=clamp01(Math.max(tk*1.2,er*1.3,eyeHole[k]/255))*255|0;orm[o+3]=255;}if((y&63)===63)await step();}return{albedo,normal,orm};}/**\n     * The inside face of the crown, in the same (φ, t) chart as the outside: the reverse of the twill (a flatter,\n     * weft-faced surface), the 1.25 cm seam tapes stitched down by the same rows that show outside, the back of\n     * the eyelet rings with their holes, and the darkening of an enclosed space (baked into the albedo).\n     */async function innerMaps(W,H,ch,f,step){const{nP,nT,phi0,dphi}=ch;const TWO_PI=Math.PI*2;const Hf=new Float32Array(W*H);const cover=new Uint8Array(W*H)// 1 = tape, 2 = eyelet ring (no twill on either)\n;const shade=new Uint8Array(W*H).fill(128);const pits=new Uint8Array(W*H);const holes=new Uint8Array(W*H);const threadC=new Uint8Array(W*H);const SPt=new Float32Array(W*H);const STt=new Float32Array(W*H);const rSY=new Float32Array(nP);const rRA=new Float32Array(nP);const rSP=new Float32Array(nP);const rST=new Float32Array(nP);const nSeam=f.seams.length;const seamRA=new Float32Array(nSeam);const seamBack=f.seams.map(sp=>Math.abs(Math.abs(sp)-Math.PI)<1e-6);const topRow=(nT-1)*nP;const TAPE=.625// half width: 1.25 cm tapes, stitched by the rows 5.3 mm either side of the seam\n;const noise=latticeNoise(f.seed+61);for(let y=0;y<H;y++){const t=(y+.5)/H;const ft=Math.min(nT-1.000001,Math.max(0,t/ch.dt));const j0=Math.floor(ft);const kk=ft-j0;for(let i=0;i<nP;i++){const a=j0*nP+i;const b=a+nP;rSY[i]=ch.SY[a]+(ch.SY[b]-ch.SY[a])*kk;rRA[i]=ch.RA[a]+(ch.RA[b]-ch.RA[a])*kk;rSP[i]=ch.SP[a]+(ch.SP[b]-ch.SP[a])*kk;rST[i]=ch.ST[a]+(ch.ST[b]-ch.ST[a])*kk;}for(let q=0;q<nSeam;q++){const fp=Math.min(nP-1.000001,Math.max(0,(f.seams[q]-phi0)/dphi));const i0=fp|0;seamRA[q]=rRA[i0]+(rRA[i0+1]-rRA[i0])*(fp-i0);}const w=f.openHalfWidth(t);let p=0;for(let x=0;x<W;x++){const k=y*W+x;const phi=phi0+(x+.5)/W*TWO_PI;const fp=Math.min(nP-1.000001,Math.max(0,(phi-phi0)/dphi));const i0=fp|0;const fr=fp-i0;const SY=rSY[i0]+(rSY[i0+1]-rSY[i0])*fr;const RA=rRA[i0]+(rRA[i0+1]-rRA[i0])*fr;SPt[k]=rSP[i0]+(rSP[i0+1]-rSP[i0])*fr;STt[k]=rST[i0]+(rST[i0+1]-rST[i0])*fr;while(p<nSeam-2&&phi>f.seams[p+1])p++;if(Math.abs(phi)>Math.PI-w)continue;let h=0;// ── seam tapes (the seam allowance under them makes a soft crown down the middle)\nconst da=RA-seamRA[p];const db=seamRA[p+1]-RA;const near=da<db?p:p+1;const dSeam=da<db?da:db;const dApex=ch.SY[topRow+i0]+(ch.SY[topRow+i0+1]-ch.SY[topRow+i0])*fr-SY;const tapeOk=SY>f.bandTop-.4&&(!seamBack[near]||t>f.openT+.125*f.openTPerCm);if(tapeOk&&dSeam<TAPE+.05){const inTape=smoothstep(TAPE+.02,TAPE-.03,dSeam);h+=inTape*(.018+.012*Math.exp(-((dSeam/.3)**2)));// tape weave: fine rib across the tape, faint\nh+=inTape*.002*Math.cos(2*Math.PI*SY/.06);if(inTape>.5)cover[k]=1;if(dApex>f.buttonR*.4){h+=stitchRow(SY,dSeam-.53,.3,.2,.03,.022)*inTape;if(ST.cov>0){threadC[k]=ST.cov*255|0;shade[k]=Math.max(0,Math.min(255,Math.round((ST.shade-.5)*255)));}pits[k]=ST.pit*255|0;}}// ── the reverse of the eyelets: a lower ring of thread loops around the hole\nfor(let q=0;q<f.eyelets.length;q++){const e=f.eyelets[q];if(Math.abs(t-e.t)>.06||Math.abs(phi-e.phi)>.1)continue;const ex=(phi-e.phi)*SPt[k];const ey=(t-e.t)*STt[k];const r=Math.sqrt(ex*ex+ey*ey);if(r>f.eyeR0+.2)continue;holes[k]=Math.max(holes[k],smoothstep(f.eyeR0+.006,f.eyeR0-.012,r)*255|0);if(r>=f.eyeR0&&r<f.eyeR0+.16){const qq=(r-f.eyeR0)/.16;const ang=Math.atan2(ey,ex);const st=.5+.5*Math.sin(ang*26+2*noise(ang*3,e.phi*9));h+=.02*Math.pow(Math.sin(Math.PI*Math.pow(qq,.8)),.7)*(.8+.2*st);cover[k]=2;shade[k]=Math.round((.35+.35*st)*255);}}Hf[k]=h;}if((y&63)===63)await step();}const normal=new Uint8Array(W*H*4);packNormal(Hf,W,H,(x,y)=>SPt[y*W+x]*(TWO_PI/W),(x,y)=>STt[y*W+x]/H,true,normal);await step();const Hb=boxBlur(Hf,W,H,Math.max(2,Math.round(W/500)),2,true);await step();const base=hexToLinear(f.colors.fabric);const tape=hexToLinear(f.colors.tape);const thr=hexToLinear(f.colors.thread);const eye=hexToLinear(f.colors.eyelet);const albedo=new Uint8Array(W*H*4);const orm=new Uint8Array(W*H*4);for(let y=0;y<H;y++){const t=(y+.5)/H;for(let x=0;x<W;x++){const k=y*W+x;const phi=phi0+(x+.5)/W*TWO_PI;const vis=f.ao(phi,t);const cav=Hb[k]-Hf[k];const occ=Math.max(.35,1-clamp01(cav*25)*.6);// an enclosed space: little of the room's light reaches in (baked, the renderer has no such term)\nconst dark=(.3+.7*vis)*occ;const n=1+.04*(noise(phi*30,t*40)-.5);let c=base;let m=n;if(cover[k]===1){c=tape;m=n*(1-.45*(pits[k]/255));}else if(cover[k]===2){c=eye;m=.8+.4*(shade[k]/255);}else m=n*(1-.45*(pits[k]/255));let r=c[0]*m;let g=c[1]*m;let b=c[2]*m;const tc=threadC[k]/255;if(tc>0){const sh=shade[k]/255+.5;r+=(thr[0]*sh-r)*tc;g+=(thr[1]*sh-g)*tc;b+=(thr[2]*sh-b)*tc;}const o=k*4;albedo[o]=enc(r*dark);albedo[o+1]=enc(g*dark);albedo[o+2]=enc(b*dark);albedo[o+3]=255-holes[k];orm[o]=255;orm[o+1]=clamp01(.95-.12*tc-(cover[k]===1?.08:0))*255|0;orm[o+2]=cover[k]||tc>.3?255:0;orm[o+3]=255;}if((y&63)===63)await step();}return{albedo,normal,orm};}/**\n     * A folded, edge-stitched strip (strap, sweatband): one tile along the strip (a whole number of stitches long)\n     * by its full width. u runs along the strip, v across it (row 0 = v = 0). Rows at the given distances (cm) from\n     * the v = 0 edge; folded edges roll away and pale a little where they rub.\n     */async function tapeMaps(L,Wd,ppc,rows,folds,colors,seed,step){const W=Math.max(8,Math.round(L*ppc));const H=Math.max(8,Math.round(Wd*ppc));const Hf=new Float32Array(W*H);const cov=new Uint8Array(W*H);const shd=new Uint8Array(W*H).fill(128);const pit=new Uint8Array(W*H);const edge=new Float32Array(W*H);// tileable along the strip (the map repeats every L cm)\nconst noise=tileNoise2(24,Math.max(1,Math.round(6*Wd)),seed);const fibre=tileNoise2(60,8,seed+1);const pw=Math.round(L/.3)// stitches per tile: the pitch is adjusted so the tile repeats seamlessly\n;const pitch=L/pw;for(let y=0;y<H;y++){const v=(y+.5)/H*Wd;for(let x=0;x<W;x++){const u=(x+.5)/W*L;const k=y*W+x;let h=0;// folded edges: the strip rounds over within ~1.5 mm of each fold\nconst dl=folds.lo?v:9;const dh=folds.hi?Wd-v:9;const de=Math.min(dl,dh);if(de<.16){const q=1-de/.16;h-=.05*q*q;edge[k]=q;}// folds inside the strip (a binding wrapped over an edge): the geometry turns there, the texture only\n// pales where the fold rubs, with a few loose fibres\nif(folds.at)for(const fa of folds.at){const d=Math.abs(v-fa);if(d<.2)edge[k]=Math.max(edge[k],(1-d/.2)*(.7+.6*(fibre(u/L,fa*7/8)-.5)));}// stitched by the rows; the fabric puckers faintly between stitches\nlet best=0;for(let r=0;r<rows.length;r++){const a=v-rows[r];if(a>.12||a<-.12)continue;h+=stitchRow(u,a,pitch,pitch*.7,.032,.026);if(ST.cov>best){best=ST.cov;shd[k]=Math.max(0,Math.min(255,Math.round((ST.shade-.5)*255)));}if(ST.pit>0)pit[k]=Math.max(pit[k],ST.pit*255|0);}cov[k]=best*255|0;h+=.004*(noise(u/L,v/Wd)-.5);Hf[k]=h;}}await step();const normal=new Uint8Array(W*H*4);packNormal(Hf,W,H,()=>L/W,()=>Wd/H,true,normal);const Hb=boxBlur(Hf,W,H,2,2,true);const base=hexToLinear(colors.fabric);const thr=hexToLinear(colors.thread);const albedo=new Uint8Array(W*H*4);const orm=new Uint8Array(W*H*4);for(let k=0;k<W*H;k++){const cav=Hb[k]-Hf[k];const ao=Math.max(.35,1-clamp01(cav*22)*.6);const m=(1+.07*edge[k])*(1-.45*(pit[k]/255))*(1-.15*(1-ao));const tk=cov[k]/255;const sh=shd[k]/255+.5;const o=k*4;albedo[o]=enc(base[0]*m+(thr[0]*sh-base[0]*m)*tk);albedo[o+1]=enc(base[1]*m+(thr[1]*sh-base[1]*m)*tk);albedo[o+2]=enc(base[2]*m+(thr[2]*sh-base[2]*m)*tk);albedo[o+3]=255;orm[o]=ao*255|0;orm[o+1]=clamp01(.94-.14*tk)*255|0;orm[o+2]=clamp01(tk*1.2)*255|0;orm[o+3]=255;}return{albedo,normal,orm,W,H};}async function brimMaps(W,H,b,step){const Hf=new Float32Array(W*H);const thread=new Uint8Array(W*H);const ROWS=8;const R0=.55;const RS=.52;const PITCH=.34// ≈ 3.3 mm per stitch along the rows (photo 05, unrolled bill)\n;const DASH=.23;const TH_W=.034;const nz=latticeNoise(b.seed+21);// crinkles on the bill (fewer: it has a stiff insert)\nconst cr=[];for(let c=0;c<14;c++){const ang=(hash2(c,3,b.seed)-.5)*2.4;const len=.8+hash2(c,4,b.seed)*2.2;const w=.05+hash2(c,5,b.seed)*.12;cr.push({x:(hash2(c,1,b.seed)-.5)*16,y:.4+hash2(c,2,b.seed)*6,ca:Math.cos(ang),sa:Math.sin(ang),hl:len/2,w,a:(hash2(c,6,b.seed)-.6)*.012,ext:len/2+2*w});}// per-column tables: bill length, metric along ψ at a few w\nconst Lcol=new Float32Array(W);const NWS=17;const dAl=new Float32Array(NWS*W);for(let x=0;x<W;x++){const psi=-1+(x+.5)/W*2;Lcol[x]=b.len(psi);for(let s=0;s<NWS;s++)dAl[s*W+x]=b.dAlong(psi,s/(NWS-1));}// The rows are sewn at a constant distance from the edge, measured square to it (not along the bill's\n// ψ lines, which meet the edge obliquely towards the sides and would squeeze the rows together there).\n// Edge polyline, then a coarse field of (true distance to the edge, ψ of the nearest edge point).\nconst NE=1025;const edge=new Float32Array(NE*3);for(let k=0;k<NE;k++){const q=b.point(-1+2*k/(NE-1),1);edge[k*3]=q[0];edge[k*3+1]=q[1];edge[k*3+2]=q[2];}const GW=513;const GH=97;const gD=new Float32Array(GW*GH);const gS=new Float32Array(GW*GH);const d2e=(qx,qy,qz,k)=>{const ex=qx-edge[k*3];const ey=qy-edge[k*3+1];const ez=qz-edge[k*3+2];return ex*ex+ey*ey+ez*ez;};for(let gy=0;gy<GH;gy++){const w=gy/(GH-1);for(let gx=0;gx<GW;gx++){const psi=-1+2*gx/(GW-1);const[qx,qy,qz]=b.point(psi,w);let kb=0;let best=1e9;for(let k=0;k<NE;k+=16){const d=d2e(qx,qy,qz,k);if(d<best){best=d;kb=k;}}for(let k=Math.max(0,kb-16);k<=Math.min(NE-1,kb+16);k++){const d=d2e(qx,qy,qz,k);if(d<best){best=d;kb=k;}}// refine on the neighbouring segments\nlet bestD=Math.sqrt(best);let bestS=kb;for(const k0 of[kb-1,kb]){if(k0<0||k0>=NE-1)continue;const ax=edge[k0*3];const ay=edge[k0*3+1];const az=edge[k0*3+2];const sx=edge[k0*3+3]-ax;const sy=edge[k0*3+4]-ay;const sz=edge[k0*3+5]-az;const l2=sx*sx+sy*sy+sz*sz||1e-12;const tt=clamp01(((qx-ax)*sx+(qy-ay)*sy+(qz-az)*sz)/l2);const dx=qx-ax-sx*tt;const dy=qy-ay-sy*tt;const dz=qz-az-sz*tt;const d=Math.sqrt(dx*dx+dy*dy+dz*dz);if(d<bestD){bestD=d;bestS=k0+tt;}}gD[gy*GW+gx]=bestD;gS[gy*GW+gx]=-1+2*bestS/(NE-1);}}await step();// arc length along each row as a function of the nearest edge point: the edge offset inwards by the row's\n// distance, in the bill's surface\nconst arcRow=new Float32Array(ROWS*NE);{const inward=new Float32Array(NE*3);for(let k=0;k<NE;k++){const psi=-1+2*k/(NE-1);const L=b.len(psi);const q=b.point(psi,L>.6?1-.5/L:0);const km=Math.max(0,k-1);const kp=Math.min(NE-1,k+1);let tx=edge[kp*3]-edge[km*3];let ty=edge[kp*3+1]-edge[km*3+1];let tz=edge[kp*3+2]-edge[km*3+2];const tl=Math.hypot(tx,ty,tz)||1;tx/=tl;ty/=tl;tz/=tl;let ix=q[0]-edge[k*3];let iy=q[1]-edge[k*3+1];let iz=q[2]-edge[k*3+2];const dt=ix*tx+iy*ty+iz*tz;ix-=dt*tx;iy-=dt*ty;iz-=dt*tz;const il=Math.hypot(ix,iy,iz)||1;inward[k*3]=ix/il;inward[k*3+1]=iy/il;inward[k*3+2]=iz/il;}for(let r=0;r<ROWS;r++){const dr=R0+r*RS;let px=0;let py=0;let pz=0;let acc=0;for(let k=0;k<NE;k++){const ox=edge[k*3]+inward[k*3]*dr;const oy=edge[k*3+1]+inward[k*3+1]*dr;const oz=edge[k*3+2]+inward[k*3+2]*dr;if(k>0)acc+=Math.hypot(ox-px,oy-py,oz-pz);arcRow[r*NE+k]=acc;px=ox;py=oy;pz=oz;}}}const gridAt=(g,psi,w)=>{const fx=Math.min(GW-1.000001,Math.max(0,(psi+1)/2*(GW-1)));const fy=Math.min(GH-1.000001,Math.max(0,w*(GH-1)));const x0=fx|0;const y0=fy|0;const ax=fx-x0;const ay=fy-y0;const o=y0*GW+x0;return(g[o]*(1-ax)+g[o+1]*ax)*(1-ay)+(g[o+GW]*(1-ax)+g[o+GW+1]*ax)*ay;};const arcAt=(r,psiE)=>{const f=Math.min(NE-1.000001,Math.max(0,(psiE+1)/2*(NE-1)));const i=f|0;return arcRow[r*NE+i]+(arcRow[r*NE+i+1]-arcRow[r*NE+i])*(f-i);};const dPerpTex=new Float32Array(W*H);const bShade=new Uint8Array(W*H).fill(128);const bPit=new Uint8Array(W*H);await step();for(let y=0;y<H;y++){const w=(y+.5)/H;for(let x=0;x<W;x++){const psi=-1+(x+.5)/W*2;const L=Lcol[x];const k=y*W+x;if(L<.05)continue;const dEdge=(1-w)*L;const dP=gridAt(gD,psi,w)// square to the edge\n;dPerpTex[k]=dP;let h=0;let tcov=0;// quilted rows (only the nearest can be within reach: rows are 5.2 mm apart)\nconst rN=Math.round((dP-R0)/RS);if(rN>=0&&rN<ROWS){const r=rN;const dr=R0+r*RS;const across=dP-dr;if(Math.abs(across)<=.11){const along=arcAt(r,gridAt(gS,psi,w));h+=stitchRow(along,across,PITCH,DASH,TH_W,.028);tcov=ST.cov;bShade[k]=Math.max(0,Math.min(255,Math.round((ST.shade-.5)*255)));bPit[k]=ST.pit*255|0;}}// fabric puffs a little between the rows (the stiff insert keeps it shallow)\nconst zone=(dP-R0)/RS;if(zone>0&&zone<ROWS-1){const fr=zone-Math.floor(zone);h+=.012*Math.pow(Math.sin(Math.PI*fr),.8)*(.8+.4*nz(psi*20,zone));}else if(zone<=0)h+=.012*Math.pow(Math.sin(Math.PI*clamp01(dP/R0)),.8);// crinkles\nconst px=psi*9.5;for(let q=0;q<cr.length;q++){const c=cr[q];const lx=px-c.x;const ly=dEdge-c.y;if(lx>c.ext||lx<-c.ext||ly>c.ext||ly<-c.ext)continue;const al=(lx*c.ca+ly*c.sa)/c.hl;if(al<-1||al>1)continue;const ac=Math.abs(-lx*c.sa+ly*c.ca)/c.w;if(ac>2)continue;h+=c.a*(ac<1?(1-ac)*(1-ac):0)*(1-al*al);}Hf[k]=h;thread[k]=tcov*255|0;}if((y&31)===31)await step();}const normal=new Uint8Array(W*H*4);const dAlongAt=(x,y)=>{const fs=(y+.5)/H*(NWS-1);const s0=Math.min(NWS-2,fs|0);const f=fs-s0;return(dAl[s0*W+x]*(1-f)+dAl[(s0+1)*W+x]*f)*(2/W);};const dAc=new Float32Array(W);for(let x=0;x<W;x++)dAc[x]=b.dAcross(-1+(x+.5)/W*2)/H;packNormal(Hf,W,H,dAlongAt,x=>dAc[x],false,normal);await step();const Hb=boxBlur(Hf,W,H,Math.max(2,Math.round(W/500)),2);await step();const base=hexToLinear(b.colors.fabric);const thr=hexToLinear(b.colors.thread);const albedo=new Uint8Array(W*H*4);const orm=new Uint8Array(W*H*4);const mott=latticeNoise(b.seed+30);for(let y=0;y<H;y++){const w=(y+.5)/H;for(let x=0;x<W;x++){const psi=-1+(x+.5)/W*2;const k=y*W+x;const dEdge=dPerpTex[k];const cav=Hb[k]-Hf[k];const ao=Math.max(.3,1-clamp01(cav*22)*.55);let m=1+.035*(mott(psi*4,w*2)-.5)+.015*(mott(psi*30,w*12)-.5);m*=1+.14*smoothstep(.5,0,dEdge)// worn, lighter edge\n;m*=1+clamp01(-cav*30)*.05;m*=1-.18*(1-ao);const tk=thread[k]/255;const shd=bShade[k]/255+.5;m*=1-.5*(bPit[k]/255)// needle holes\n;const o=k*4;albedo[o]=enc(base[0]*m+(thr[0]*shd-base[0]*m)*tk);albedo[o+1]=enc(base[1]*m+(thr[1]*shd-base[1]*m)*tk);albedo[o+2]=enc(base[2]*m+(thr[2]*shd-base[2]*m)*tk);albedo[o+3]=255;orm[o]=ao*255|0;orm[o+1]=clamp01(.94-.1*tk-.05*smoothstep(.3,0,dEdge))*255|0;orm[o+2]=clamp01(tk*1.2)*255|0// thread over the twill: no weave there\n;orm[o+3]=255;}if((y&63)===63)await step();}return{albedo,normal,orm};}// ─────────────────────────── embroidery ───────────────────────────\n/** Exact Euclidean distance transform (Felzenszwalb) of a binary mask: distance to the nearest outside pixel. */function edt(inside,W,H){const INF=1e20;const f=new Float32Array(Math.max(W,H));const d=new Float32Array(Math.max(W,H));const v=new Int32Array(Math.max(W,H));const z=new Float32Array(Math.max(W,H)+1);const g=new Float32Array(W*H);const dt1=n=>{let k=0;v[0]=0;z[0]=-INF;z[1]=INF;for(let q=1;q<n;q++){let s=(f[q]+q*q-(f[v[k]]+v[k]*v[k]))/(2*q-2*v[k]);while(s<=z[k]){k--;s=(f[q]+q*q-(f[v[k]]+v[k]*v[k]))/(2*q-2*v[k]);}k++;v[k]=q;z[k]=s;z[k+1]=INF;}k=0;for(let q=0;q<n;q++){while(z[k+1]<q)k++;d[q]=(q-v[k])*(q-v[k])+f[v[k]];}};for(let x=0;x<W;x++){for(let y=0;y<H;y++)f[y]=inside[y*W+x]?INF:0;dt1(H);for(let y=0;y<H;y++)g[y*W+x]=d[y];}for(let y=0;y<H;y++){for(let x=0;x<W;x++)f[x]=g[y*W+x];dt1(W);for(let x=0;x<W;x++)g[y*W+x]=Math.sqrt(d[x]);}return g;}/**\n     * Satin-stitch embroidery from a coverage mask (0..1, row 0 = bottom). Returns RGBA colour (alpha = coverage),\n     * a normal map, an anisotropy map (stitch direction in tangent space + strength) and the coverage itself.\n     */async function satinMaps(cov,W,H,ppc,color,seed,step){const inside=new Uint8Array(W*H);for(let i=0;i<W*H;i++)inside[i]=cov[i]>.5?1:0;const dt=edt(inside,W,H)// px\n;await step();// structure tensor of the distance gradient → stitch direction runs across each stroke\nconst jxx=new Float32Array(W*H);const jxy=new Float32Array(W*H);const jyy=new Float32Array(W*H);for(let y=1;y<H-1;y++)for(let x=1;x<W-1;x++){const k=y*W+x;if(!inside[k]&&cov[k]<.02)continue;const gx=(dt[k+1]-dt[k-1])*.5;const gy=(dt[k+W]-dt[k-W])*.5;jxx[k]=gx*gx;jxy[k]=gx*gy;jyy[k]=gy*gy;}const r=Math.max(2,Math.round(ppc*.03));const Jxx=boxBlur(jxx,W,H,r,2);const Jxy=boxBlur(jxy,W,H,r,2);const Jyy=boxBlur(jyy,W,H,r,2);await step();const dx=new Float32Array(W*H);const dy=new Float32Array(W*H);// satin columns are digitised with slanted stitches (the hatching on photo 05 leans ≈ 25° off square)\nconst SLANT=25*Math.PI/180;for(let k=0;k<W*H;k++){const th=.5*Math.atan2(2*Jxy[k],Jxx[k]-Jyy[k])+SLANT;dx[k]=Math.cos(th);dy[k]=Math.sin(th);}// thread strands: line integral convolution of noise along the stitch direction\nconst noise=new Float32Array(W*H);const threadPx=Math.max(1,ppc*.04)// ~0.4 mm threads\n;for(let y=0;y<H;y++)for(let x=0;x<W;x++){// noise that is coherent along the threads (elongated cells) is produced by the LIC itself\nnoise[y*W+x]=hash2(Math.floor(x/Math.max(1,threadPx*.6)),Math.floor(y/Math.max(1,threadPx*.6)),seed)*.6+hash2(x,y,seed+1)*.4;}const lic=new Float32Array(W*H);const L=Math.max(4,Math.round(ppc*.12));for(let y=0;y<H;y++){for(let x=0;x<W;x++){const k=y*W+x;if(cov[k]<.02)continue;let acc=noise[k];let n=1;for(const sgn of[1,-1]){let px=x+.5;let py=y+.5;let pdx=dx[k]*sgn;let pdy=dy[k]*sgn;for(let s=0;s<L;s++){const ix=px|0;const iy=py|0;if(ix<0||iy<0||ix>=W||iy>=H)break;const kk=iy*W+ix;if(cov[kk]<.02)break;let ddx=dx[kk];let ddy=dy[kk];// the field is sign-free (an orientation): keep following the streamline the same way\nif(ddx*pdx+ddy*pdy<0){ddx=-ddx;ddy=-ddy;}pdx=ddx;pdy=ddy;px+=ddx;py+=ddy;const jx=px|0;const jy=py|0;if(jx<0||jy<0||jx>=W||jy>=H)break;acc+=noise[jy*W+jx];n++;}}lic[k]=acc/n;}if((y&63)===63)await step();}// contrast-stretch the strands\nlet mean=0;let cnt=0;for(let k=0;k<W*H;k++)if(cov[k]>.5){mean+=lic[k];cnt++;}mean/=Math.max(1,cnt);let vr=0;for(let k=0;k<W*H;k++)if(cov[k]>.5)vr+=(lic[k]-mean)**2;const sd=Math.sqrt(vr/Math.max(1,cnt))||1;const Hf=new Float32Array(W*H);const strand=new Float32Array(W*H);const thr=new Float32Array(W*H);// individual threads laid side by side: a phase that advances along the stroke (across the stitch direction),\n// 0.4 mm per thread. Position · (unit vector along the stroke) is a local stroke coordinate; cos() makes it\n// indifferent to the sign ambiguity of the direction field.\nconst pitchPx=ppc*.06// visible stitch pitch (0.6 mm: the hatching period on photo 05)\n;for(let y=0;y<H;y++)for(let x=0;x<W;x++){const k=y*W+x;if(cov[k]<.02)continue;const s=Math.max(-2,Math.min(2,(lic[k]-mean)/sd));strand[k]=s;const along=x*-dy[k]+y*dx[k];const ph=Math.cos(2*Math.PI*along/pitchPx+s*.6);const t=Math.pow(.5+.5*ph,.6)// rounded thread, narrow gap between threads\n;thr[k]=t;const dcm=dt[k]/ppc;// satin dome over the stroke width (~0.5 mm high), threads and their gaps on top\nHf[k]=cov[k]*(.05*smoothstep(0,.07,dcm)+.018*t+.005*s);}await step();const normal=new Uint8Array(W*H*4);const texel=1/ppc;packNormal(Hf,W,H,()=>texel,()=>texel,false,normal,1);const rgba=new Uint8Array(W*H*4);const aniso=new Uint8Array(W*H*4);const c=hexToLinear(color);for(let k=0;k<W*H;k++){const o=k*4;const dcm=dt[k]/ppc;// thread colour: darker where the thread dives into the fabric (the letter outline), in the gaps between\n// threads, and a little from thread to thread\nconst edge=.5+.5*smoothstep(.005,.06,dcm);const m=edge*(.72+.36*thr[k])*(1+.1*strand[k]);rgba[o]=enc(c[0]*m);rgba[o+1]=enc(c[1]*m);rgba[o+2]=enc(c[2]*m);// the outline is where each stitch pierces the cap: a faint sawtooth, not a cut edge\nconst saw=dcm<.025?.8+.2*thr[k]:1;rgba[o+3]=Math.round(clamp01(cov[k]*saw)*255);// anisotropy: highlight stretched across the threads (direction = thread direction)\naniso[o]=Math.round((dx[k]*.5+.5)*255);aniso[o+1]=Math.round((dy[k]*.5+.5)*255);aniso[o+2]=Math.round(smoothstep(.01,.04,dcm)*255);aniso[o+3]=255;if(cov[k]<.02){normal[o]=128;normal[o+1]=128;normal[o+2]=255;}}return{rgba,normal,aniso};}// ─────────────────────────── studio environment ───────────────────────────\n/**\n     * Equirect HDR studio (half floats, RGBA): a large soft key from the upper left front, a broad fill from\n     * the right, two strip lights behind, a bright ceiling and a warm grey floor. Returns Uint16 half-float data.\n     */function studioHDR(W,H,toHalf){const data=new Uint16Array(W*H*4);const norm=v=>{const l=Math.hypot(v[0],v[1],v[2]);return[v[0]/l,v[1]/l,v[2]/l];};const boxes=[{dir:norm([-.62,.58,.53]),w:.42,h:.3,e:9,c:[1,.985,.965]},{dir:norm([.85,.2,.48]),w:.5,h:.42,e:1.9,c:[.97,.98,1]},{dir:norm([.55,.35,-.76]),w:.12,h:.55,e:6,c:[1,1,1]},{dir:norm([-.6,.3,-.74]),w:.12,h:.5,e:3.5,c:[1,1,1]},{dir:norm([0,1,.08]),w:.6,h:.6,e:2.2,c:[1,1,1]}];for(let y=0;y<H;y++){const v=(y+.5)/H;const el=(v-.5)*Math.PI// −π/2 (down) … π/2 (up)\n;const cy=Math.sin(el);const ce=Math.cos(el);for(let x=0;x<W;x++){const u=(x+.5)/W;const az=(u-.5)*2*Math.PI// matches three's equirectUv: u = atan(z, x)/2π + 0.5\n;const dir=[ce*Math.cos(az),cy,ce*Math.sin(az)];// room: warm grey floor, neutral walls, brighter ceiling\nlet r=.36;let g=.35;let b=.34;if(cy<0){const k=Math.min(1,-cy*3);r=.36*(1-k)+.3*k;g=.35*(1-k)+.28*k;b=.34*(1-k)+.25*k;}else{r+=cy*.35;g+=cy*.35;b+=cy*.36;}for(const bx of boxes){const d=dir[0]*bx.dir[0]+dir[1]*bx.dir[1]+dir[2]*bx.dir[2];if(d<=0)continue;// local tangent axes of the box\nconst up=Math.abs(bx.dir[1])>.95?[0,0,1]:[0,1,0];let tx=[up[1]*bx.dir[2]-up[2]*bx.dir[1],up[2]*bx.dir[0]-up[0]*bx.dir[2],up[0]*bx.dir[1]-up[1]*bx.dir[0]];const tl=Math.hypot(tx[0],tx[1],tx[2]);tx=[tx[0]/tl,tx[1]/tl,tx[2]/tl];const ty=[bx.dir[1]*tx[2]-bx.dir[2]*tx[1],bx.dir[2]*tx[0]-bx.dir[0]*tx[2],bx.dir[0]*tx[1]-bx.dir[1]*tx[0]];const px=(dir[0]*tx[0]+dir[1]*tx[1]+dir[2]*tx[2])/d;const py=(dir[0]*ty[0]+dir[1]*ty[1]+dir[2]*ty[2])/d;// soft-edged rectangle with a gentle falloff to its border (diffuser)\nconst fx=smoothstep(bx.w,bx.w*.7,Math.abs(px));const fy=smoothstep(bx.h,bx.h*.7,Math.abs(py));const k=fx*fy;if(k>0){const e=bx.e*k*(.85+.15*(1-Math.abs(px)/bx.w));r+=e*bx.c[0];g+=e*bx.c[1];b+=e*bx.c[2];}}const o=(y*W+x)*4;data[o]=toHalf(r);data[o+1]=toHalf(g);data[o+2]=toHalf(b);data[o+3]=toHalf(1);}}return data;}const DEG=Math.PI/180;const CAP_SPEC={// structure: joint fit of this shape + one camera per photo on 54 photos of the cap resting on a table (set 3,\n// fit3/fit.ts): silhouettes, embroidery, hand-marked button and eyelets, and in the 11 back views the two back\n// eyelets, the top of the opening and the opening's outline (fit3/back_manual.json, hole_pts.json); the text keeps\n// its measured size in cm. The back side-seams sit at ±115° (checked by eye against the projected seam in side,\n// top and back views), turned with the back eyelets by backRot (the real cap is not mirror-symmetric there)\nrx:8.6694,rz:8.8408,H:9.1355,za:.6201,// the side URL is placed from this azimuth (x0 cm towards the front); it used to be the back side-seam, which the\n// later fit moved, so it is pinned here to keep the URL where the photos put it\nsideAnchor:-130.59*DEG,xa:0,nFront:3.0837,nBack:2.3039,nSide:.042,nSkew:.3945,rimC1:.057,rimC3:-.0132,bellyF:.0148,bellyB:.1566,bellyS:-.1667,seams:[-180,-120.43,-62,0,62,109.57,180].map(d=>d*DEG),eyelets:[-148.7,-83.6,-29.6,29.6,83.6,137.8],bulge:.14,groove:.04,grooveW:.05,ridge:.055,ridgeOff:.5,ridgeW:.22,// back opening, in cm: half-width along the rim, height above the rim at the back seam, and the two top corners\n// as elliptical quadrants (horizontal / vertical radius) between straight sides and the top. Fitted to the\n// opening's outline in the 11 back views: the top is a low arch (it only looks flat in the photos because a\n// level edge round the back of the crown would bow down towards the camera)\nopenWc:3.474,openHc:5.101,openRc:3.474,openRh:1.945,openW:0,openT:0,eyeletT:.499,// covered button, measured: 51–53 px across on photo 09 where the twill (0.85 mm per wale) gives 33.8 px/cm\n// → 1.54 cm; on photo 05 its silhouette over the crown matches the fitted camera at 1.54 × 0.68 cm\nbuttonR:.77,buttonH:.68,folds:1,tWarp:1,// brim\nbrimPhi:62.54*DEG,brimL:7.3587,brimP:6.154,brimFwd:.9188,brimPitch:-7.57*DEG,brimBend:5.04,brimArch:.00151,brimT:.1893,// strap\nstrapH:1.23,buckleAt:0,// framing\npivotZ:3.2,pivotY:3.4,elev:.27,dist:80};const S=CAP_SPEC;// ── crown ──\n/** Rim outline (y = 0) at parameter φ: an ellipse with egg and three-lobe corrections. */function rimXZ(phi){const e=1+S.rimC1*Math.cos(phi)+S.rimC3*Math.cos(3*phi);return[S.rx*Math.sin(phi)*e,S.rz*Math.cos(phi)*e];}/** Blend of a front / back / side value around the crown (smooth in φ, mirror-symmetric). */function fbs(front,back,side,phi){return back+(front-back)*(.5+.5*Math.cos(phi))+side*(.5-.5*Math.cos(2*phi));}/**\n     * Meridian angle for the parameter t. With steep walls (nSkew > 0) the height rises like θ^(2/n_v) at the rim, so\n     * an even step in θ would leave the first rows centimetres apart; θ = (π/2)·t^(n_v/2) makes the height grow about\n     * linearly from the rim instead, so even steps in t stay even on the cloth (rows, texels, chart cells).\n     */function warpPow(phi){const nv=fbs(S.nFront,S.nBack,S.nSide,phi)*(1+S.nSkew);return Math.min(2.2,Math.max(.8,nv/2));}function meridianTheta(phi,t){const tc=Math.min(1,Math.max(0,t));if(!S.tWarp)return tc*Math.PI/2;return Math.pow(tc,warpPow(phi))*Math.PI/2;}/** The eyelets' height was fitted in the plain parameter (fit3): the same points in the even one, per azimuth. */function eyeletTAt(phiDeg){return S.tWarp?Math.pow(S.eyeletT,1/warpPow(phiDeg*DEG)):S.eyeletT;}/** t per cm along the back meridian at the top of the opening (t offsets around the opening are set in cm). */let openCache={key:\"\",v:0};function openTPerCm(){const key=[S.openT,S.H,S.nBack,S.nSide,S.nSkew,S.rz,S.za,S.xa,S.bellyB,S.rimC1,S.rimC3,S.tWarp].join(\"|\");if(openCache.key!==key){const a=crownBase(Math.PI,S.openT-.01);const b=crownBase(Math.PI,S.openT+.01);openCache={key,v:.02/Math.hypot(b[0]-a[0],b[1]-a[1],b[2]-a[2])};}return openCache.v;}function crownBase(phi,t){// meridian: a superellipse from the rim to the button, with its own fullness per azimuth; nSkew splits the\n// exponent between the horizontal and vertical parts (wall steepness vs roundness of the top)\nconst n=fbs(S.nFront,S.nBack,S.nSide,phi);const th=meridianTheta(phi,t);const h=Math.pow(Math.cos(th),2/(n*(1-S.nSkew)));const v=Math.pow(Math.sin(th),2/(n*(1+S.nSkew)));const belly=1+fbs(S.bellyF,S.bellyB,S.bellyS,phi)*4*v*(1-v);const[rxp,rzp]=rimXZ(phi);return[h*belly*rxp+(1-h)*S.xa,v*S.H,h*belly*rzp+(1-h)*S.za];}/** Outward normal of the undisplaced dome + |∂P/∂φ| (cm per radian). */function crownFrame(phi,t){if(t>.997)return{n:[0,1,0],sphi:0};const e=1e-4;const a=crownBase(phi-e,t);const b=crownBase(phi+e,t);const c=crownBase(phi,Math.max(0,t-e));const d=crownBase(phi,t+e);const dp=[b[0]-a[0],b[1]-a[1],b[2]-a[2]];const dt=[d[0]-c[0],d[1]-c[1],d[2]-c[2]];const n=[dp[1]*dt[2]-dp[2]*dt[1],dp[2]*dt[0]-dp[0]*dt[2],dp[0]*dt[1]-dp[1]*dt[0]];const l=Math.hypot(n[0],n[1],n[2])||1;return{n:[n[0]/l,n[1]/l,n[2]/l],sphi:Math.hypot(dp[0],dp[1],dp[2])/(2*e)};}const smooth=(a,b,x)=>{const k=Math.min(1,Math.max(0,(x-a)/(b-a)));return k*k*(3-2*k);};/** t on the meridian φ at height y above the rim (bisection on the undisplaced crown). */function tAtHeight(phi,y){let lo=0;let hi=1;for(let it=0;it<40;it++){const m=(lo+hi)/2;if(crownBase(phi,m)[1]<y)lo=m;else hi=m;}return(lo+hi)/2;}/** t on the back meridian (φ = π) at height y above the rim. */function tAtBackHeight(y){return tAtHeight(Math.PI,y);}/** A point lying on the cloth at (φ, height y), `o` cm off it along the surface normal. The wall bulges out just\n     * above the rim, so anything that rides on it (strap, tab, slide) has to follow it, not stand on the rim line. */function onWall(phi,y,o){return crownPoint(phi,tAtHeight(phi,y),o,false);}/** cm of the horizontal section per radian of φ at the back meridian, at t. */function backSphi(t){const e=1e-4;const a=crownBase(Math.PI-e,t);const b=crownBase(Math.PI+e,t);return Math.max(.5,Math.hypot(b[0]-a[0],b[1]-a[1],b[2]-a[2])/(2*e));}/** Derived opening angles from the rounded rectangle in cm (call after any shape change). */function setOpening(){S.openRc=Math.max(.05,Math.min(S.openRc,S.openWc));S.openRh=Math.max(.05,Math.min(S.openRh,S.openHc-.05));S.openT=tAtBackHeight(S.openHc);S.openW=S.openWc/backSphi(0);S.buckleAt=-Math.PI+S.openW+3.5*DEG;ohwT=NaN;}/** Half-width in cm of the opening at height y (0 above the top edge). */function openWcmAt(y){if(y>=S.openHc)return 0;const yc=S.openHc-S.openRh;if(y<=yc)return S.openWc;const v=(y-yc)/S.openRh;return S.openWc-S.openRc+S.openRc*Math.sqrt(Math.max(0,1-v*v));}/** The opening's half-angle at t: the rounded rectangle's half-width over the section's cm per radian there. */let ohwT=NaN;let ohwV=0;function openHalfWidth(t){if(t>=S.openT)return 0;if(t===ohwT)return ohwV// geometry loops ask for one row's t many times in a row\n;ohwT=t;ohwV=openWcmAt(crownBase(Math.PI,t)[1])/backSphi(t);return ohwV;}/** A point of the outline by s ∈ [0, 1] (rim → up the side → round the corner → along the top to the centre),\n     * spaced by arc length: [half-angle, t]. */function openEdgeAt(s){const side=S.openHc-S.openRh;const corner=Math.PI/2*Math.sqrt((S.openRc*S.openRc+S.openRh*S.openRh)/2);const top=S.openWc-S.openRc;let d=Math.min(1,Math.max(0,s))*(side+corner+top);let w;let y;if(d<=side){w=S.openWc;y=d;}else if(d<=side+corner){const a=(d-side)/corner*(Math.PI/2);w=S.openWc-S.openRc+S.openRc*Math.cos(a);y=side+S.openRh*Math.sin(a);}else{w=Math.max(0,top-(d-side-corner));y=S.openHc;}const t=y>=S.openHc?S.openT:tAtBackHeight(y);return[w/backSphi(t),t];}/**\n     * Folds of the unworn crown resting on a table, read off the set-3 photos (cap on its rim, no hands): a soft\n     * diagonal trough on the wearer's-left back panel (top views 43/45, back view 03), soft creases over the back\n     * opening, the panels pinching in towards the button. The earlier list came from photos of the cap held in a hand\n     * and showed the hand's dents (front-left dent, side hollows), so it was dropped. φ in degrees, depth in cm\n     * (negative = inwards), w = half width in cm, sharp = 0 soft … 1 creased.\n     */const FOLDS=[{p0:168,t0:.711,p1:142,t1:.501,depth:-.22,w:1.1,sharp:.15},{p0:152,t0:.532,p1:150,t1:.705,depth:-.08,w:.45,sharp:.5},{p0:-150,t0:.551,p1:-153,t1:.703,depth:-.07,w:.45,sharp:.5},// a soft dimple high in the middle of each panel (the panels pinch in towards the button)\n...[0,1,2,3,4,5].map(k=>(S.seams[k]+S.seams[k+1])/2/DEG).map(p=>({p0:p,t0:Math.abs(p)>120?.8:.862,p1:p,t1:Math.abs(p)>120?.8:.862,depth:-.06,w:1,sharp:0}))];const MERIDIAN_CM=15.6// ≈ arc length from rim to button (15.4 at the sides … 17.1 at the back), for fold distances\n;function foldDisp(phi,t,sphi){let d=0;const R=Math.max(.5,sphi);for(const f of FOLDS){const x0=f.p0*DEG*R;const y0=f.t0*MERIDIAN_CM;const x1=f.p1*DEG*R;const y1=f.t1*MERIDIAN_CM;const px=phi*R;const py=t*MERIDIAN_CM;const vx=x1-x0;const vy=y1-y0;const l2=vx*vx+vy*vy;const k=l2>1e-9?Math.max(0,Math.min(1,((px-x0)*vx+(py-y0)*vy)/l2)):0;const dx=px-(x0+vx*k);const dy=py-(y0+vy*k);const q=Math.sqrt(dx*dx+dy*dy)/f.w;if(q>3)continue;const soft=Math.exp(-q*q);const crease=q<1?(1-q)*(1-q):0;d+=f.depth*((1-f.sharp)*soft+f.sharp*crease);}// the sweatband gathers the fabric just above the rim: small ripples\nd+=.03*Math.sin(phi*23+1.3)*Math.sin(phi*7)*smooth(.195,.045,t)*smooth(0,.045,t);return d;}/** Radial displacement (cm) at (φ,t): panel bulge, folds, seam grooves, seam-allowance ridges. */function crownDisp(phi,t,sphi,seams=true){const sm=S.seams;let i=0;while(i<sm.length-2&&phi>sm[i+1])i++;const a=sm[i];const b=sm[i+1];const u=(phi-a)/(b-a);const th=meridianTheta(phi,t);const h=Math.pow(Math.cos(th),1/1.3);let d=S.bulge*h*Math.pow(Math.max(0,Math.sin(Math.PI*u)),.7)*smooth(0,.207,t);const da=Math.abs(phi-a)*sphi;const db=Math.abs(b-phi)*sphi;const near=da<db?a:b;const dist=Math.min(da,db);// seams are stiff: folds fade out next to them\nif(S.folds)d+=S.folds*foldDisp(phi,t,sphi)*smooth(.05,.9,dist)*(1-smooth(.919,.981,t));if(!seams)return d;let fade=smooth(0,.092,t)*(1-smooth(.894,.974,t));if(Math.abs(Math.abs(near)-Math.PI)<1e-6)fade*=smooth(S.openT,S.openT+.62*openTPerCm(),t)// back seam only above the opening\n;d-=S.groove*Math.exp(-((dist/S.grooveW)**2))*fade;d+=S.ridge*smooth(S.ridgeOff+S.ridgeW,S.ridgeOff,dist)*fade;return d;}function crownPoint(phi,t,off=0,seams=true){const p=crownBase(phi,t);const f=crownFrame(phi,t);const d=crownDisp(phi,t,f.sphi,seams)+off;return[p[0]+f.n[0]*d,p[1]+f.n[1]*d,p[2]+f.n[2]*d];}// ── brim ──\nfunction brimLen(psi){return S.brimL*Math.pow(Math.max(0,1-Math.pow(Math.abs(psi),S.brimP)),1/S.brimP);}/** Top surface of the bill. ψ ∈ [−1, 1] across (wearer's right → left), w ∈ [0, 1] from the crown out. */function brimPoint(psi,w){const phi=psi*S.brimPhi;const[ix,iz]=rimXZ(phi);// outward rim normal, pulled towards +z: a bill grows forward, not radially\nconst ea=rimXZ(phi-1e-4);const eb=rimXZ(phi+1e-4);let nx=-(eb[1]-ea[1]);let nz=eb[0]-ea[0];const nl=Math.hypot(nx,nz)||1;nx=nx/nl*(1-S.brimFwd);nz=nz/nl*(1-S.brimFwd)+S.brimFwd;const ml=Math.hypot(nx,nz)||1;nx/=ml;nz/=ml;const L=brimLen(psi);const d=w*L;const x=ix+nx*d;const y=-d*Math.tan(S.brimPitch)-(x*x-ix*ix)/(2*S.brimBend)-S.brimArch*d*d/2;return[x,y,iz+nz*d];}// ── framing: full-turn bounds in camera tangent space (same maths as the three.js camera) ──\nfunction sampleSilhouette(){const pts=[];for(let i=0;i<72;i++){const phi=-Math.PI+i/72*Math.PI*2;for(const t of[0,.15,.3,.45,.6,.72,.84,.93,1])pts.push(crownPoint(phi,t));}for(let i=0;i<=60;i++){const psi=-1+i/60*2;pts.push(brimPoint(psi,1));pts.push(brimPoint(psi,.5));}for(let i=0;i<=60;i++){const psi=-1+i/60*2;const p=brimPoint(psi,1);pts.push([p[0],p[1]-S.brimT-.05,p[2]])// underside + rounded edge\n;}// strap, folded tail and brass slide stand proud of the crown at the back\nfor(let k=0;k<=24;k++){const phi=Math.PI-S.openW-.2+(2*S.openW+.5)*k/24;for(const y of[.05,S.strapH*.5,S.strapH+.4])pts.push(onWall(phi,y,.7));}pts.push([S.xa,S.H+.45,S.za]);return pts;}function projectTangent(p,th){const x0=p[0];const y0=p[1]-S.pivotY;const z0=p[2]-S.pivotZ;const c=Math.cos(th);const s=Math.sin(th);// three.js rotation.y = th\nconst x=x0*c+z0*s;const z=-x0*s+z0*c;const ce=Math.cos(S.elev);const se=Math.sin(S.elev);const yv=y0*ce-z*se;const depth=S.dist-(y0*se+z*ce);return[x/depth,yv/depth];}setOpening();const MODEL_BOUNDS=(()=>{const pts=sampleSilhouette();let minX=Infinity;let maxX=-Infinity;let minY=Infinity;let maxY=-Infinity;for(let k=0;k<90;k++){const th=k/90*Math.PI*2;for(const p of pts){const[x,y]=projectTangent(p,th);if(x<minX)minX=x;if(x>maxX)maxX=x;if(y<minY)minY=y;if(y>maxY)maxY=y;}}const padX=(maxX-minX)*.02;const padY=(maxY-minY)*.025;minX-=padX;maxX+=padX;minY-=padY;maxY+=padY;return{minX,maxX,minY,maxY,w:maxX-minX,h:maxY-minY};})();const CAP_COLORS={// set-3 daylight photos with white references: a neutral grey, Lab ≈ (L) / 1.0 / −0.4 (raw camera), not the\n// taupe first read off warm-lit photos (was #9F8E82 / Lab 60 / 4.3 / 8.7); the derived colours keep their offsets\nfabric:\"#939092\",fabricInner:\"#7A7979\",thread:\"#989899\",brimThread:\"#AEAEAD\",embroidery:\"#DB2B33\",eyelet:\"#9F9F9F\",tape:\"#9B9499\",rivet:\"#BCBAB3\",brass:\"#C8A762\",label:\"#1B1A19\",hole:\"#252423\"};/** Front embroidery, measured on photos 03 + 05 unrolled over the fitted surface (fit/flatten.py), then\n     *  corrected until the render, unrolled the same way, matches: baselines 5.00 / 3.07 cm, x-heights 1.15 / 1.05 cm,\n     *  ink 10.55 / 10.70 cm wide, satin stroke 2.3 mm. */const FRONT_LINES=[{text:\"2042 champions\",size:2.298,condense:.6995,track:0,cx:.417,base:5.199},{text:\"league winners\",size:2.08,condense:.7798,track:.0367,cx:.307,base:3.273}];/** Regular cut + satin spread: stems ≈ 2.1 mm, hairlines ≈ 1.5 mm (photo median stroke 2.1–2.4 mm). */const EMB={stroke:.11,arc:-.138};const SIDE_TEXT={width:6.4,base:.847,x0:3.265,condense:1};const SHEEN=\"#aeadac\"// neutral, like the grey twill\n;/** Studio look: soft HDR studio + one shadow-casting key; calibrated in Lab against the photos. */const LOOK={exposure:.78,env:.3,key:5.5,keyPos:[-13,14,8],keyColor:\"#fffaf4\",twill:3,twillAlbedo:1.8,// wales per screen pixel: the weave's contrast rolls off towards the pixel limit like a camera's (to 55 %\n// between 0.28 and 0.6), then fades out entirely where mip-mapping would only leave shimmer (0.9 … 1.6)\ntwillFade:[.28,.6,.9,1.6],sheen:.55,sheenRoughness:.45,embAniso:.65};function lineWidthEm(g,text,trackEm,condense=1){let w=0;for(let i=0;i<text.length;i++){const gl=g.glyphs[text[i]];w+=(gl?gl.adv:500)/1e3*condense;if(i<text.length-1)w+=(g.kern[text[i]+text[i+1]]||0)/1e3*condense+trackEm;}return w;}/** Coverage mask of embroidered lines in a physical box (row 0 = box.y0, bottom). */function textMask(g,lines,align,box,ppc,stroke,arc){const W=Math.round((box.x1-box.x0)*ppc);const H=Math.round((box.y1-box.y0)*ppc);const c=document.createElement(\"canvas\");c.width=W;c.height=H;const m=c.getContext(\"2d\",{willReadFrequently:true});m.fillStyle=\"#fff\";m.strokeStyle=\"#fff\";m.lineJoin=\"round\";m.lineWidth=stroke*ppc;for(const ln of lines){const wEm=lineWidthEm(g,ln.text,ln.track,ln.condense);let x=align===\"center\"?ln.cx-wEm*ln.size/2:ln.cx;const scale=ln.size*ppc/1e3;for(let i=0;i<ln.text.length;i++){const ch=ln.text[i];const gl=g.glyphs[ch];const adv=(gl?gl.adv:500)/1e3*ln.condense*ln.size;if(gl&&gl.d){const xc=x+adv/2;const base=ln.base+arc*(xc/5)**2;const path=new Path2D;path.addPath(new Path2D(gl.d),new DOMMatrix([scale*ln.condense,0,0,scale,(x-box.x0)*ppc,(box.y1-base)*ppc]));m.fill(path);if(stroke>0)m.stroke(path);}x+=adv+(i<ln.text.length-1?g.kern[ch+ln.text[i+1]]||0:0)/1e3*ln.condense*ln.size+ln.track*ln.size;}}const d=m.getImageData(0,0,W,H).data;const cov=new Float32Array(W*H);for(let y=0;y<H;y++)for(let x=0;x<W;x++)cov[(H-1-y)*W+x]=d[(y*W+x)*4+3]/255;c.width=c.height=1;return{cov,W,H};}// ── crown chart: arc lengths and metrics on a coarse (φ, t) grid, shared by geometry, decals and textures\nfunction buildCrownChart(nP,nT){const phi0=-Math.PI;const dphi=2*Math.PI/(nP-1);const dt=1/(nT-1);const P=new Float32Array(nP*nT*3);const D=new Float32Array(nP*nT);for(let j=0;j<nT;j++){const t=j*dt;for(let i=0;i<nP;i++){const phi=phi0+i*dphi;const b=crownBase(phi,t);const f=crownFrame(phi,t);const d=crownDisp(phi,t,f.sphi,false);const k=j*nP+i;P[k*3]=b[0]+f.n[0]*d;P[k*3+1]=b[1]+f.n[1]*d;P[k*3+2]=b[2]+f.n[2]*d;D[k]=crownDisp(phi,t,f.sphi,true);}}const len=(a,b)=>Math.hypot(P[a*3]-P[b*3],P[a*3+1]-P[b*3+1],P[a*3+2]-P[b*3+2]);const SY=new Float32Array(nP*nT);const RA=new Float32Array(nP*nT);const SP=new Float32Array(nP*nT);const ST=new Float32Array(nP*nT);for(let i=0;i<nP;i++)for(let j=1;j<nT;j++)SY[j*nP+i]=SY[(j-1)*nP+i]+len(j*nP+i,(j-1)*nP+i);for(let j=0;j<nT;j++)for(let i=1;i<nP;i++)RA[j*nP+i]=RA[j*nP+i-1]+len(j*nP+i,j*nP+i-1);for(let j=0;j<nT;j++)for(let i=0;i<nP;i++){const k=j*nP+i;const im=Math.max(0,i-1);const ip=Math.min(nP-1,i+1);const jm=Math.max(0,j-1);const jp=Math.min(nT-1,j+1);SP[k]=len(j*nP+ip,j*nP+im)/((ip-im)*dphi);ST[k]=len(jp*nP+i,jm*nP+i)/((jp-jm)*dt);}return{nP,nT,phi0,dphi,dt,SY,RA,SP,ST,D};}function chartAt(ch,arr,phi,t){const fp=Math.min(ch.nP-1.000001,Math.max(0,(phi-ch.phi0)/ch.dphi));const ft=Math.min(ch.nT-1.000001,Math.max(0,t/ch.dt));const i=fp|0;const j=ft|0;const x=fp-i;const y=ft-j;const k=j*ch.nP+i;return arr[k]*(1-x)*(1-y)+arr[k+1]*x*(1-y)+arr[k+ch.nP]*(1-x)*y+arr[k+ch.nP+1]*x*y;}// ─── geometry builders (need three) ───\nfunction gridGeometry(T,cols,rows,fn){const pos=new Float32Array((cols+1)*(rows+1)*3);const uv=new Float32Array((cols+1)*(rows+1)*2);for(let j=0;j<=rows;j++)for(let i=0;i<=cols;i++){const k=j*(cols+1)+i;const r=fn(i,j);pos[k*3]=r.p[0];pos[k*3+1]=r.p[1];pos[k*3+2]=r.p[2];uv[k*2]=r.uv[0];uv[k*2+1]=r.uv[1];}const idx=[];for(let j=0;j<rows;j++)for(let i=0;i<cols;i++){const a=j*(cols+1)+i;const b=a+1;const c=a+cols+1;const d=c+1;idx.push(a,b,c,b,d,c);}const g=new T.BufferGeometry;g.setAttribute(\"position\",new T.BufferAttribute(pos,3));g.setAttribute(\"uv\",new T.BufferAttribute(uv,2));g.setIndex(idx);g.computeVertexNormals();return g;}/** Concatenate indexed geometries that carry the same attributes (fewer draw calls for small repeated parts). */function mergeGeometries(T,geos){const names=Object.keys(geos[0].attributes).filter(n=>geos.every(g=>g.getAttribute(n)));const out=new T.BufferGeometry;for(const n of names){const size=geos[0].getAttribute(n).itemSize;const total=geos.reduce((a,g)=>a+g.getAttribute(n).count,0);const arr=new Float32Array(total*size);let o=0;for(const g of geos){const at=g.getAttribute(n);for(let q=0;q<at.count;q++)for(let c=0;c<size;c++)arr[o++]=at.array[q*size+c];}out.setAttribute(n,new T.BufferAttribute(arr,size));}const idx=[];let base=0;for(const g of geos){const ix=g.index?g.index.array:null;const cnt=g.getAttribute(\"position\").count;if(ix)for(let q=0;q<ix.length;q++)idx.push(ix[q]+base);else for(let q=0;q<cnt;q++)idx.push(q+base);base+=cnt;g.dispose();}out.setIndex(idx);return out;}const TW_A=(TWILL_ANGLE-90)*Math.PI/180;const TW_C=Math.cos(TW_A);const TW_S=Math.sin(TW_A);/** Column φ for panel p at fraction s, clustered towards the seams so grooves are resolved. */function panelPhi(a,b,s){const k=.82;return a+(b-a)*(s-k*Math.sin(2*Math.PI*s)/(2*Math.PI));}/**\n     * The six crown panels as separate strips (a seam is a real discontinuity of the weave), with normals taken\n     * from the continuous surface (no shading break), UVs in (φ, t) for the baked maps and a second UV set in\n     * panel-local centimetres for the twill (grain runs up the middle of each panel).\n     */async function crownGeometry(T,ch,perPanel,rows,off,step,solveTwill=true){const seams=S.seams;const nv=(perPanel+1)*(rows+1);const pos=new Float32Array(nv*6*3);const nrm=new Float32Array(nv*6*3);const uv=new Float32Array(nv*6*2);const duv=new Float32Array(nv*6*2);const idx=[];const G=perPanel+3// with a ghost column each side\n;const R=rows+3;const grid=new Float32Array(G*R*3);for(let p=0;p<6;p++){const phiC=(seams[p]+seams[p+1])/2;const colPhi=(i,t)=>{const w=openHalfWidth(t);const a=p===0?-Math.PI+w:seams[p];const b=p===5?Math.PI-w:seams[p+1];return panelPhi(a,b,i/perPanel);};const rowT=j=>Math.min(1,Math.max(0,j/rows));for(let j=-1;j<=rows+1;j++)for(let i=-1;i<=perPanel+1;i++){const t=rowT(j);const q=crownPoint(colPhi(i,t),t,off);const k=((j+1)*G+(i+1))*3;grid[k]=q[0];grid[k+1]=q[1];grid[k+2]=q[2];}const base=p*nv;for(let j=0;j<=rows;j++)for(let i=0;i<=perPanel;i++){const t=rowT(j);const phi=colPhi(i,t);const v=base+j*(perPanel+1)+i;const k=((j+1)*G+(i+1))*3;pos[v*3]=grid[k];pos[v*3+1]=grid[k+1];pos[v*3+2]=grid[k+2];// normal from the neighbours (ghost column across the seam: continuous surface)\nconst kl=k-3;const kr=k+3;const kd=k-G*3;const ku=k+G*3;const ax=grid[kr]-grid[kl];const ay=grid[kr+1]-grid[kl+1];const az=grid[kr+2]-grid[kl+2];const bx=grid[ku]-grid[kd];const by=grid[ku+1]-grid[kd+1];const bz=grid[ku+2]-grid[kd+2];let nx=ay*bz-az*by;let ny=az*bx-ax*bz;let nz=ax*by-ay*bx;let l=Math.hypot(nx,ny,nz);if(!(l>1e-9)||t>.995){nx=0;ny=1;nz=0;l=1;}nrm[v*3]=nx/l;nrm[v*3+1]=ny/l;nrm[v*3+2]=nz/l;uv[v*2]=(phi+Math.PI)/(2*Math.PI);uv[v*2+1]=t;// initial twill UVs: row/meridian arc lengths turned to the wale angle (refined below)\nconst sx=chartAt(ch,ch.RA,phi,t)-chartAt(ch,ch.RA,phiC,t);const sy=chartAt(ch,ch.SY,phi,t);duv[v*2]=(sx*TW_C+sy*TW_S)/TWILL_TILE_CM;duv[v*2+1]=(-sx*TW_S+sy*TW_C)/TWILL_TILE_CM;}// least-squares twill field: the grain runs up the panel with the same spacing everywhere. It is solved on\n// the panel's full, regular grid (the back panels as if there were no opening: their real columns bunch\n// up along the arch and would kink the weave there), then read back at the real vertices.\n{const a0=seams[p];const b0=seams[p+1];const Pv=new Float32Array(nv*3);const initV=new Float32Array(nv*2);for(let j=0;j<=rows;j++)for(let i=0;i<=perPanel;i++){const t=rowT(j);const phi=panelPhi(a0,b0,i/perPanel);const q=crownPoint(phi,t,off);const v=j*(perPanel+1)+i;Pv[v*3]=q[0];Pv[v*3+1]=q[1];Pv[v*3+2]=q[2];const sx=chartAt(ch,ch.RA,phi,t)-chartAt(ch,ch.RA,phiC,t);const sy=chartAt(ch,ch.SY,phi,t);initV[v*2]=(sx*TW_C+sy*TW_S)/TWILL_TILE_CM;initV[v*2+1]=(-sx*TW_S+sy*TW_C)/TWILL_TILE_CM;}// the inside face is seen far less: its weave keeps the plain panel mapping\nconst F=solveTwill?twillField(Pv,perPanel,rows,initV,TWILL_ANGLE,TWILL_TILE_CM):initV;for(let j=0;j<=rows;j++){const t=rowT(j);for(let i=0;i<=perPanel;i++){const v=j*(perPanel+1)+i;const phi=colPhi(i,t);let fi=i;if(p===0||p===5){// invert panelPhi (monotonic) by bisection: which regular column is this φ at?\nlet lo=0;let hi=1;for(let it=0;it<40;it++){const m=(lo+hi)/2;if(panelPhi(a0,b0,m)<phi)lo=m;else hi=m;}fi=(lo+hi)/2*perPanel;}const i0=Math.min(perPanel-1,Math.max(0,Math.floor(fi)));const f=Math.min(1,Math.max(0,fi-i0));const r0=j*(perPanel+1);duv[(base+v)*2]=F[(r0+i0)*2]*(1-f)+F[(r0+i0+1)*2]*f;duv[(base+v)*2+1]=F[(r0+i0)*2+1]*(1-f)+F[(r0+i0+1)*2+1]*f;}}}for(let j=0;j<rows;j++)for(let i=0;i<perPanel;i++){const a=base+j*(perPanel+1)+i;const b=a+1;const c=a+perPanel+1;const d=c+1;idx.push(a,b,c,b,d,c);}await step();}const g=new T.BufferGeometry;g.setAttribute(\"position\",new T.BufferAttribute(pos,3));g.setAttribute(\"normal\",new T.BufferAttribute(nrm,3));g.setAttribute(\"uv\",new T.BufferAttribute(uv,2));g.setAttribute(\"detailUv\",new T.BufferAttribute(duv,2));g.setIndex(idx);return g;}/** Plain lining (inside), no detail UVs. */function liningGeometry(T,perPanel,rows){const seams=S.seams;const cols=perPanel*6;return gridGeometry(T,cols,rows,(i,j)=>{const t=j/rows;const p=Math.min(5,Math.floor(i/perPanel));const s=i/perPanel-p;let a=seams[p];let b=seams[p+1];const w=openHalfWidth(t);if(p===0)a=-Math.PI+w;if(p===5)b=Math.PI-w;const phi=i===cols?Math.PI-w:panelPhi(a,b,s);return{p:crownPoint(phi,t,-.08),uv:[(phi+Math.PI)/(2*Math.PI),t]};});}/**\n     * How much of the room's light reaches each point of the inside wall (0 … 1): cosine-weighted rays from the\n     * wall, marched through the crown (its superellipse profile), escape through the head opening or the back\n     * opening, anything else hits fabric. A coarse (φ, t) grid, sampled bilinearly.\n     *//**\n     * Horizontal sections of the undisplaced crown, for inside tests: per height level, the section's centre (z) and\n     * its radius around that centre as a function of the polar angle, plus the t of the back meridian at that height.\n     * (The meridian exponent varies with φ, so a height is not a single t: each φ is solved on its own.)\n     */function crownSections(nY,nA){const NPH=96;const zc=new Float32Array(nY);const xc=new Float32Array(nY)// sections are centred on their mean (x, z): a sideways lean moves them\n;const rad=new Float32Array(nY*nA);const tBack=new Float32Array(nY);const tAtY=(phi,y)=>{let lo=0;let hi=1;for(let it=0;it<30;it++){const m=(lo+hi)/2;if(crownBase(phi,m)[1]<y)lo=m;else hi=m;}return(lo+hi)/2;};for(let k=0;k<nY;k++){const y=S.H*.999*k/(nY-1);const xs=[];const zs=[];for(let i=0;i<NPH;i++){const p=crownBase(-Math.PI+2*Math.PI*i/NPH,tAtY(-Math.PI+2*Math.PI*i/NPH,y));xs.push(p[0]);zs.push(p[2]);}let c=0;let cx=0;for(const z of zs)c+=z/NPH;for(const x of xs)cx+=x/NPH;zc[k]=c;xc[k]=cx;tBack[k]=tAtY(Math.PI,y);// polar samples sorted by angle, resampled onto nA bins\nconst pol=xs.map((x,i)=>[Math.atan2(x-cx,zs[i]-c),Math.hypot(x-cx,zs[i]-c)]).sort((a,b)=>a[0]-b[0]);for(let a=0;a<nA;a++){const al=-Math.PI+2*Math.PI*a/nA;let j=0;while(j<pol.length&&pol[j][0]<al)j++;const p0=pol[(j-1+pol.length)%pol.length];const p1=pol[j%pol.length];let a0=p0[0];let a1=p1[0];if(j===0)a0-=2*Math.PI;if(j===pol.length)a1+=2*Math.PI;const f=a1-a0>1e-9?(al-a0)/(a1-a0):0;rad[k*nA+a]=p0[1]+(p1[1]-p0[1])*f;}}const radAt=(k,x,z)=>{const al=Math.atan2(x-xc[k],z-zc[k]);const fa=(al+Math.PI)/(2*Math.PI)*nA;const a0=Math.floor(fa)%nA;const a1=(a0+1)%nA;const f=fa-Math.floor(fa);return{r:rad[k*nA+a0]*(1-f)+rad[k*nA+a1]*f,d:Math.hypot(x-xc[k],z-zc[k])};};return{/** inside the crown shell (above the rim plane, below the top)? */inside(x,y,z){if(y<0||y>=S.H*.999)return false;const fy=y/(S.H*.999)*(nY-1);const k=Math.min(nY-2,Math.floor(fy));const f=fy-k;const A=radAt(k,x,z);const B=radAt(k+1,x,z);return A.d*(1-f)+B.d*f<A.r*(1-f)+B.r*f;},/** t of the back meridian at height y (for the back-opening test) */tBackAt(y){const fy=Math.min(nY-1.000001,Math.max(0,y/(S.H*.999)*(nY-1)));const k=Math.floor(fy);return tBack[k]+(tBack[k+1]-tBack[k])*(fy-k);}};}async function interiorVisibility(nPhi,nTt,rays,step){const grid=new Float32Array(nPhi*nTt);const sec=crownSections(40,128);// cosine-weighted hemisphere directions (Fibonacci spiral), in a local frame with z along the normal\nconst dirs=[];for(let r=0;r<rays;r++){const u=(r+.5)/rays;const a=r*2.399963;const sr=Math.sqrt(u);dirs.push([sr*Math.cos(a),sr*Math.sin(a),Math.sqrt(1-u)]);}for(let j=0;j<nTt;j++){const t=Math.min(.985,j/(nTt-1));for(let i=0;i<nPhi;i++){const phi=-Math.PI+2*Math.PI*i/nPhi;const P=crownPoint(phi,t,-.15);const fr=crownFrame(phi,t);const n=[-fr.n[0],-fr.n[1],-fr.n[2]];const up=Math.abs(n[1])>.9?[1,0,0]:[0,1,0];let ax=[up[1]*n[2]-up[2]*n[1],up[2]*n[0]-up[0]*n[2],up[0]*n[1]-up[1]*n[0]];const al=Math.hypot(ax[0],ax[1],ax[2]);ax=[ax[0]/al,ax[1]/al,ax[2]/al];const ay=[n[1]*ax[2]-n[2]*ax[1],n[2]*ax[0]-n[0]*ax[2],n[0]*ax[1]-n[1]*ax[0]];let open=0;for(const d of dirs){const dx=ax[0]*d[0]+ay[0]*d[1]+n[0]*d[2];const dy=ax[1]*d[0]+ay[1]*d[1]+n[1]*d[2];const dz=ax[2]*d[0]+ay[2]*d[1]+n[2]*d[2];for(let sd=.4;sd<30;sd+=.45){const x=P[0]+dx*sd;const y=P[1]+dy*sd;const z=P[2]+dz*sd;if(y<0){open++// out through the head opening\n;break;}if(!sec.inside(x,y,z)){// reached the shell: through the back opening, or fabric\nconst ph=Math.atan2(x,z);const tq=sec.tBackAt(y);if(Math.abs(ph)>Math.PI-openHalfWidth(tq))open++;break;}}}grid[j*nPhi+i]=open/rays;}await step();}return(phi,t)=>{const fx=((phi+Math.PI)/(2*Math.PI)*nPhi+nPhi)%nPhi;const fy=Math.min(nTt-1.000001,Math.max(0,Math.min(.985,t)/.985*(nTt-1)));const x0=Math.floor(fx)%nPhi;const x1=(x0+1)%nPhi;const y0=fy|0;const ax=fx-Math.floor(fx);const ay=fy-y0;const g=(xx,yy)=>grid[yy*nPhi+xx];return(g(x0,y0)*(1-ax)+g(x1,y0)*ax)*(1-ay)+(g(x0,y0+1)*(1-ax)+g(x1,y0+1)*ax)*ay;};}/** t at which the meridian at φ reaches the arc length sy (cm) from the rim, from the chart. */function tAtSY(ch,phi,sy){let lo=0;let hi=1;for(let it=0;it<26;it++){const m=(lo+hi)/2;if(chartAt(ch,ch.SY,phi,m)<sy)lo=m;else hi=m;}return(lo+hi)/2;}const SWEATBAND_H=3// cm up the inside wall from the rim\n;/**\n     * The sweatband: a folded cotton band sewn in at the rim, standing a little off the wall towards its free top\n     * edge, which rolls over; soft vertical gathers. UVs: u in cm along the band (for the tiled tape map), v 0 … 1\n     * across; detailUv in twill tiles; vertex colours carry the inside's darkness.\n     */function sweatbandGeometry(T,ch,cols,vis){const H=SWEATBAND_H;const a=-Math.PI+S.openW+.035;const b=Math.PI-S.openW-.035;const nz=latticeNoise(71);const prof=[];const NB=12;for(let j=0;j<=NB;j++){const v=H*j/NB;prof.push({v,off:-(.1+.13*Math.pow(v/H,1.6)),dv:0});}// the free top edge rolls over towards the wall (radius 0.6 mm)\nconst R=.06;const top=prof[prof.length-1];for(let k=1;k<=5;k++){const ang=Math.PI*k/5;prof.push({v:H+R*Math.sin(ang),off:top.off+R*(1-Math.cos(ang)),dv:R*ang});}const rows=prof.length-1;const pos=new Float32Array((cols+1)*(rows+1)*3);const uv=new Float32Array((cols+1)*(rows+1)*2);const duv=new Float32Array((cols+1)*(rows+1)*2);const col=new Float32Array((cols+1)*(rows+1)*3);const ra0=chartAt(ch,ch.RA,a,.1);for(let i=0;i<=cols;i++){const phi=a+(b-a)*i/cols;const ra=chartAt(ch,ch.RA,phi,.1)-ra0;const gather=nz(phi*11,.5)-.5;for(let j=0;j<=rows;j++){const pr=prof[j];const t=tAtSY(ch,phi,Math.min(pr.v,H+.2));const off=pr.off+.03*gather*Math.min(1,pr.v/H)+.012*Math.sin(phi*53+4*gather)*(pr.v/H);const q=crownPoint(phi,t,off,false);const k=j*(cols+1)+i;pos[k*3]=q[0];pos[k*3+1]=q[1];pos[k*3+2]=q[2];const vcm=Math.min(H,pr.v)+pr.dv;uv[k*2]=ra/3.9;uv[k*2+1]=Math.min(1,vcm/H);duv[k*2]=ra/TWILL_TILE_CM;duv[k*2+1]=vcm/TWILL_TILE_CM;// inside darkness, plus the crease where the band meets the rim seam\nconst d=(.3+.7*vis(phi,t))*(.7+.3*Math.min(1,pr.v/.35));col[k*3]=col[k*3+1]=col[k*3+2]=d;}}const idx=[];for(let j=0;j<rows;j++)for(let i=0;i<cols;i++){const p0=j*(cols+1)+i;idx.push(p0,p0+cols+1,p0+1,p0+1,p0+cols+1,p0+cols+2);}const g=new T.BufferGeometry;g.setAttribute(\"position\",new T.BufferAttribute(pos,3));g.setAttribute(\"uv\",new T.BufferAttribute(uv,2));g.setAttribute(\"detailUv\",new T.BufferAttribute(duv,2));g.setAttribute(\"color\",new T.BufferAttribute(col,3));g.setIndex(idx);g.computeVertexNormals();return g;}/**\n     * The covered button: a 1.3 cm mushroom of the same twill, the fabric gathered into small pleats underneath.\n     * Built as a lathe by hand so the twill can wrap over it like the real cut disc (UV = arc length from the top).\n     */function buttonGeometry(T,segs){const R=S.buttonR;const Hh=S.buttonH;// profile (radius, height) from the top centre down to the neck, measured shape: widest at ~half height\n// flat-topped, steep-sided (photo 05 silhouette), tucked in under the rim where the cloth is gathered\nconst ctrl=[[0,Hh],[.4*R,Hh-.012],[.7*R,Hh-.055],[.88*R,Hh-.15],[.98*R,Hh-.3],[R,.42*Hh],[.96*R,.24*Hh],[.86*R,.1*Hh],[.72*R,.02*Hh],[.6*R,-.02],[.55*R,-.07]];const curve=new T.SplineCurve(ctrl.map(([r,y])=>new T.Vector2(r,y)));const NPr=26;const pts=curve.getSpacedPoints(NPr);const arc=[0];for(let k=1;k<=NPr;k++)arc.push(arc[k-1]+pts[k].distanceTo(pts[k-1]));const nz=latticeNoise(83);const pos=new Float32Array((segs+1)*(NPr+1)*3);const uv=new Float32Array((segs+1)*(NPr+1)*2);const duv=new Float32Array((segs+1)*(NPr+1)*2);const col=new Float32Array((segs+1)*(NPr+1)*3);for(let j=0;j<=NPr;j++)for(let i=0;i<=segs;i++){const a=2*Math.PI*i/segs;const y=pts[j].y;// gathered pleats under the dome\nconst pleat=1+.045*Math.sin(13*a+3*nz(a*2,1.7))*smooth(.16*Hh,-.05,y);const r=pts[j].x*pleat;const k=j*(segs+1)+i;pos[k*3]=r*Math.sin(a);pos[k*3+1]=y;pos[k*3+2]=r*Math.cos(a);uv[k*2]=i/segs;uv[k*2+1]=j/NPr;duv[k*2]=arc[j]*Math.sin(a)/TWILL_TILE_CM;duv[k*2+1]=arc[j]*Math.cos(a)/TWILL_TILE_CM;const d=.5+.5*smooth(-.04,.45*Hh,y);col[k*3]=col[k*3+1]=col[k*3+2]=d;}const idx=[];for(let j=0;j<NPr;j++)for(let i=0;i<segs;i++){const p0=j*(segs+1)+i;idx.push(p0,p0+segs+1,p0+1,p0+1,p0+segs+1,p0+segs+2);}const g=new T.BufferGeometry;g.setAttribute(\"position\",new T.BufferAttribute(pos,3));g.setAttribute(\"uv\",new T.BufferAttribute(uv,2));g.setAttribute(\"detailUv\",new T.BufferAttribute(duv,2));g.setAttribute(\"color\",new T.BufferAttribute(col,3));g.setIndex(idx);g.computeVertexNormals();// the lathe's first and last columns are the same meridian: average their normals (no shading seam)\nconst nA=g.getAttribute(\"normal\");for(let j=0;j<=NPr;j++){const k0=j*(segs+1);const k1=k0+segs;const nx=nA.getX(k0)+nA.getX(k1);const ny=nA.getY(k0)+nA.getY(k1);const nzz=nA.getZ(k0)+nA.getZ(k1);const l=Math.hypot(nx,ny,nzz)||1;nA.setXYZ(k0,nx/l,ny/l,nzz/l);nA.setXYZ(k1,nx/l,ny/l,nzz/l);}return g;}/**\n     * The wall of an eyelet hole: the ring's satin threads wrap over the edge and line the punched hole down to the\n     * inside face (a slight waist mid-way).\n     */function eyeletWallGeometry(T,ch,phiE,tE,r0,segs){const sp=chartAt(ch,ch.SP,phiE,tE);const st=chartAt(ch,ch.ST,phiE,tE);const ring=[[1,.035],[.9,-.03],[.97,-.1]];return gridGeometry(T,segs,ring.length-1,(i,j)=>{const a=2*Math.PI*i/segs;const[rs,off]=ring[j];const r=r0*rs;return{p:crownPoint(phiE+r*Math.cos(a)/sp,tE+r*Math.sin(a)/st,off,false),uv:[i/segs,j/(ring.length-1)]};});}/**\n     * The binding: a cotton tape folded over the cut edge of the back opening, flat on both faces (BIND_W wide\n     * outside, a little wider inside), rounded where it wraps the edge. Swept along the arch in the crown's own\n     * frame. UV: u in cm along the arch (for the tiled tape map), v in cm around the profile; vertex colours\n     * carry the inside's darkness.\n     */function bindingGeometry(T,n,vis){// cross-section (b = cm into the fabric from the edge, o = cm out of the crown surface), outside → inside\nconst prof=[];const R=.075// half the folded thickness\n;const oc=-.03// centre of the fold, between the two faces (the crown cloth is 0.8 mm thick, inwards)\n;const Wo=BIND_W;const Wi=BIND_W+.1;const NF=8;for(let k=0;k<=6;k++){const b=Wo*(1-k/6);// tucked into the crown at its inner edge, standing proud towards the fold\nprof.push({b,o:oc+R*(.55+.45*smooth(Wo,Wo-.18,b)),inside:0});}for(let k=1;k<NF;k++){const a=Math.PI*k/NF;prof.push({b:-R*Math.sin(a)*1.1,o:oc+R*Math.cos(a),inside:k/NF});}for(let k=0;k<=6;k++){const b=Wi*k/6;prof.push({b,o:oc-R*(.55+.45*smooth(Wi,Wi-.18,b)),inside:1});}const pv=[0];for(let k=1;k<prof.length;k++)pv.push(pv[k-1]+Math.hypot(prof[k].b-prof[k-1].b,prof[k].o-prof[k-1].o));// the arch: edge points, their tangent, the outward normal and the in-surface direction into the cloth\nconst edge=[];for(let k=0;k<=n;k++){const sArc=k/n;// reaches openT exactly at the top, where both halves meet at φ = π\nconst sd=sArc<.5?-1:1;const[hw,t]=openEdgeAt(sArc<.5?2*sArc:2*(1-sArc));edge.push({phi:sd*(Math.PI-hw),t});}// the very top of the arch: both halves meet at φ = π (the loop above lands there at sArc = 0.5)\nconst P=edge.map(e=>crownPoint(e.phi,e.t,0,false));const cols=n;const rows=prof.length-1;const pos=new Float32Array((cols+1)*(rows+1)*3);const uv=new Float32Array((cols+1)*(rows+1)*2);const duv=new Float32Array((cols+1)*(rows+1)*2);const col=new Float32Array((cols+1)*(rows+1)*3);let along=0;for(let i=0;i<=cols;i++){if(i>0)along+=Math.hypot(P[i][0]-P[i-1][0],P[i][1]-P[i-1][1],P[i][2]-P[i-1][2]);const a=P[Math.max(0,i-1)];const c=P[Math.min(cols,i+1)];let tx=c[0]-a[0];let ty=c[1]-a[1];let tz=c[2]-a[2];const tl=Math.hypot(tx,ty,tz)||1;tx/=tl;ty/=tl;tz/=tl;const q1=crownPoint(edge[i].phi,edge[i].t,1,false);let nx=q1[0]-P[i][0];let ny=q1[1]-P[i][1];let nz=q1[2]-P[i][2];const d=nx*tx+ny*ty+nz*tz;nx-=d*tx;ny-=d*ty;nz-=d*tz;const nl=Math.hypot(nx,ny,nz)||1;nx/=nl;ny/=nl;nz/=nl;// into the cloth = away from the opening: towards the crown's centre line (|φ| smaller) or upwards\nlet bx=ny*tz-nz*ty;let by=nz*tx-nx*tz;let bz=nx*ty-ny*tx;const probe=crownPoint(edge[i].phi*.97,Math.min(1,edge[i].t+.03),0,false);if(bx*(probe[0]-P[i][0])+by*(probe[1]-P[i][1])+bz*(probe[2]-P[i][2])<0){bx=-bx;by=-by;bz=-bz;}const inDark=.3+.7*vis(edge[i].phi*.99,edge[i].t);for(let j=0;j<=rows;j++){const pr=prof[j];const k=j*(cols+1)+i;pos[k*3]=P[i][0]+bx*pr.b+nx*pr.o;pos[k*3+1]=P[i][1]+by*pr.b+ny*pr.o;pos[k*3+2]=P[i][2]+bz*pr.b+nz*pr.o;uv[k*2]=along;uv[k*2+1]=pv[j];duv[k*2]=along/TWILL_TILE_CM;duv[k*2+1]=pv[j]/TWILL_TILE_CM;const dk=1+(inDark-1)*pr.inside;col[k*3]=col[k*3+1]=col[k*3+2]=dk;}}const idx=[];for(let j=0;j<rows;j++)for(let i=0;i<cols;i++){const p0=j*(cols+1)+i;idx.push(p0,p0+1,p0+cols+1,p0+1,p0+cols+2,p0+cols+1);}const g=new T.BufferGeometry;g.setAttribute(\"position\",new T.BufferAttribute(pos,3));g.setAttribute(\"uv\",new T.BufferAttribute(uv,2));g.setAttribute(\"detailUv\",new T.BufferAttribute(duv,2));g.setAttribute(\"color\",new T.BufferAttribute(col,3));g.setIndex(idx);g.computeVertexNormals();return{g,width:pv[pv.length-1],foldAt:[pv[6]+.001,pv[6+NF]]};}/**\n     * Bill columns (ψ values) spaced evenly along the outer edge. The bill's length falls to zero at ψ = ±1 with a\n     * vertical tangent (superellipse outline), so even steps in ψ would leave the side ends as one long sliver.\n     */function brimColumns(cols){const N=4e3;const P=Math.max(1,S.brimP);const psiAt=u=>1-Math.pow(1-u,P)// dense towards the end, where the edge turns\n;const ps=[0];const len=[0];let prev=brimPoint(0,1);for(let k=1;k<=N;k++){const psi=psiAt(k/N);const q=brimPoint(psi,1);len.push(len[k-1]+Math.hypot(q[0]-prev[0],q[1]-prev[1],q[2]-prev[2]));ps.push(psi);prev=q;}const half=cols>>1;const out=new Array(cols+1).fill(0);let k=1;for(let i=0;i<=half;i++){const target=len[N]*i/half;while(k<N&&len[k]<target)k++;const f=len[k]>len[k-1]?(target-len[k-1])/(len[k]-len[k-1]):0;const psi=i===half?1:ps[k-1]+(ps[k]-ps[k-1])*Math.min(1,Math.max(0,f));out[half+i]=psi;out[half-i]=-psi;}return out;}function brimGeometry(T,cols,rows){// top, bottom and a rounded outer edge in one geometry; second UV set in cm for the twill\ncols=cols&~1;const th=S.brimT;const psiC=brimColumns(cols);const top=[];const nrm=[];for(let j=0;j<=rows;j++){top.push([]);nrm.push([]);for(let i=0;i<=cols;i++)top[j].push(brimPoint(psiC[i],j/rows));}for(let j=0;j<=rows;j++)for(let i=0;i<=cols;i++){const a=top[j][Math.max(0,i-1)];const b=top[j][Math.min(cols,i+1)];const c=top[Math.max(0,j-1)][i];const d=top[Math.min(rows,j+1)][i];const du=[b[0]-a[0],b[1]-a[1],b[2]-a[2]];const dv=[d[0]-c[0],d[1]-c[1],d[2]-c[2]];let n=[du[1]*dv[2]-du[2]*dv[1],du[2]*dv[0]-du[0]*dv[2],du[0]*dv[1]-du[1]*dv[0]];if(n[1]<0)n=[-n[0],-n[1],-n[2]];const l=Math.hypot(n[0],n[1],n[2]);const lu=Math.hypot(du[0],du[1],du[2]);const lv=Math.hypot(dv[0],dv[1],dv[2]);nrm[j][i]=l>1e-4*lu*lv&&l>1e-12?[n[0]/l,n[1]/l,n[2]/l]:[NaN,NaN,NaN];}// towards ψ = ±1 the columns fan out of one rim point along the bill's side edge (degenerate, collinear\n// slivers): they take the normal of the nearest regular column inwards\nfor(let j=0;j<=rows;j++)for(let i=0;i<=cols;i++){if(nrm[j][i][0]===nrm[j][i][0])continue;const dir=i<cols/2?1:-1;let k=i;while(k>0&&k<cols&&!(nrm[j][k][0]===nrm[j][k][0]))k+=dir;nrm[j][i]=nrm[j][k][0]===nrm[j][k][0]?nrm[j][k]:[0,1,0];}// physical coordinates for the twill: arc along ψ from the centre line, arc along w from the crown\nconst ax=[];const ay=[];const mid=cols>>1;for(let j=0;j<=rows;j++){ax.push(new Array(cols+1).fill(0));ay.push(new Array(cols+1).fill(0));for(let i=mid+1;i<=cols;i++)ax[j][i]=ax[j][i-1]+Math.hypot(top[j][i][0]-top[j][i-1][0],top[j][i][1]-top[j][i-1][1],top[j][i][2]-top[j][i-1][2]);for(let i=mid-1;i>=0;i--)ax[j][i]=ax[j][i+1]-Math.hypot(top[j][i][0]-top[j][i+1][0],top[j][i][1]-top[j][i+1][1],top[j][i][2]-top[j][i+1][2]);}for(let i=0;i<=cols;i++)for(let j=1;j<=rows;j++)ay[j][i]=ay[j-1][i]+Math.hypot(top[j][i][0]-top[j-1][i][0],top[j][i][1]-top[j-1][i][1],top[j][i][2]-top[j-1][i][2]);const pos=[];const uv=[];const duv=[];const idx=[];// the bill cover is cut with its grain side to side: the weave turned 90° from the crown's, which puts the\n// wales at ≈ 27° to the stitch rows as on photo 05. (dx, dy) is left-handed seen from above, so the top\n// swaps and negates, the underside only swaps.\nconst push=(p,u,v,dx,dy,under=false)=>{pos.push(p[0],p[1],p[2]);uv.push(u,v);if(under)duv.push(dy/TWILL_TILE_CM,-dx/TWILL_TILE_CM);else duv.push(-dy/TWILL_TILE_CM,-dx/TWILL_TILE_CM);return pos.length/3-1;};const base0=0;const uOf=i=>(psiC[i]+1)/2;for(let j=0;j<=rows;j++)for(let i=0;i<=cols;i++)push(top[j][i],uOf(i),j/rows,ax[j][i],ay[j][i]);for(let j=0;j<rows;j++)for(let i=0;i<cols;i++){const a=base0+j*(cols+1)+i;idx.push(a,a+cols+1,a+1,a+1,a+cols+1,a+cols+2);}const base1=pos.length/3;for(let j=0;j<=rows;j++)for(let i=0;i<=cols;i++){const p=top[j][i];const n=nrm[j][i];push([p[0]-n[0]*th,p[1]-n[1]*th,p[2]-n[2]*th],uOf(i),j/rows,ax[j][i]+.37,ay[j][i]+.21,true);}for(let j=0;j<rows;j++)for(let i=0;i<cols;i++){const a=base1+j*(cols+1)+i;idx.push(a,a+1,a+cols+1,a+1,a+cols+2,a+cols+1);}// rounded outer edge\nconst K=6;const base2=pos.length/3;const mid3=brimPoint(0,.5);for(let i=0;i<=cols;i++){const p=top[rows][i];const n=nrm[rows][i];// outwards = square to the edge within the bill surface (columns meet the edge obliquely near the corners,\n// and the end columns have no length at all)\nconst e0=top[rows][Math.max(0,i-1)];const e1=top[rows][Math.min(cols,i+1)];const tg=[e1[0]-e0[0],e1[1]-e0[1],e1[2]-e0[2]];let o=[tg[1]*n[2]-tg[2]*n[1],tg[2]*n[0]-tg[0]*n[2],tg[0]*n[1]-tg[1]*n[0]];if(o[0]*(p[0]-mid3[0])+o[1]*(p[1]-mid3[1])+o[2]*(p[2]-mid3[2])<0)o=[-o[0],-o[1],-o[2]];const ol=Math.hypot(o[0],o[1],o[2])||1;o=[o[0]/ol,o[1]/ol,o[2]/ol];const r=th/2;const c=[p[0]-n[0]*r,p[1]-n[1]*r,p[2]-n[2]*r];for(let k=0;k<=K;k++){const a=k/K*Math.PI;const ca=Math.cos(a);const sa=Math.sin(a)*1.15;push([c[0]+(n[0]*ca+o[0]*sa)*r,c[1]+(n[1]*ca+o[1]*sa)*r,c[2]+(n[2]*ca+o[2]*sa)*r],uOf(i),.999,ax[rows][i],ay[rows][i]+k/K*.45);}}for(let i=0;i<cols;i++)for(let k=0;k<K;k++){const a=base2+i*(K+1)+k;const b=a+K+1;idx.push(a,a+1,b,a+1,b+1,b);}const g=new T.BufferGeometry;g.setAttribute(\"position\",new T.Float32BufferAttribute(pos,3));g.setAttribute(\"uv\",new T.Float32BufferAttribute(uv,2));g.setAttribute(\"detailUv\",new T.Float32BufferAttribute(duv,2));g.setIndex(idx);g.computeVertexNormals();return g;}/** Decal patch over a (φ,t) window, UVs from the crown chart (same coordinates as the baked crown maps). */function decalGeometry(T,ch,phiA,phiB,tA,tB,cols,rows,off,box,xOriginPhi){return gridGeometry(T,cols,rows,(i,j)=>{const phi=phiA+(phiB-phiA)*(i/cols);const t=tA+(tB-tA)*(j/rows);const sx=chartAt(ch,ch.RA,phi,t)-chartAt(ch,ch.RA,xOriginPhi,t);const sy=chartAt(ch,ch.SY,phi,t);return{p:crownPoint(phi,t,off),uv:[(sx-box.x0)/(box.x1-box.x0),(sy-box.y0)/(box.y1-box.y0)]};});}/** t at which the chart's meridian arc from the rim reaches `cm` (at azimuth φ). */function tAtHeightChart(ch,phi,cm){let lo=0;let hi=1;for(let k=0;k<30;k++){const m=(lo+hi)/2;if(chartAt(ch,ch.SY,phi,m)<cm)lo=m;else hi=m;}return(lo+hi)/2;}/** Yields to the event loop between heavy steps so the page stays responsive while the cap is built. */const breathe=()=>new Promise(r=>{// a message-channel task: not throttled like timers in background tabs\n    if(typeof MessageChannel===\"function\"){const ch=new MessageChannel;ch.port1.onmessage=()=>{ch.port1.close();r();};ch.port2.postMessage(0);}else setTimeout(r,0);});/** Adds the tileable micro twill (normal + yarn albedo) on top of a material's own maps, through a 2nd UV set. */function withTwill(mat,twill,strength,albedo,fade){mat.onBeforeCompile=sh=>{sh.uniforms.kTwill={value:twill};sh.uniforms.kTwillN={value:strength};sh.uniforms.kTwillA={value:albedo};sh.vertexShader=sh.vertexShader.replace(\"#include <uv_pars_vertex>\",\"#include <uv_pars_vertex>\\nattribute vec2 detailUv;\\nvarying vec2 vDetailUv;\").replace(\"#include <uv_vertex>\",\"#include <uv_vertex>\\nvDetailUv = detailUv;\");sh.fragmentShader=sh.fragmentShader.replace(\"#include <uv_pars_fragment>\",\"#include <uv_pars_fragment>\\nvarying vec2 vDetailUv;\\nuniform sampler2D kTwill;\\nuniform float kTwillN;\\nuniform float kTwillA;\")// the twill's contrast rolls off as its wales approach the pixel limit (no moiré at small sizes)\n.replace(\"#include <map_fragment>\",\"#include <map_fragment>\\nvec4 kTw = texture2D(kTwill, vDetailUv);\\nfloat kMask = 1.0;\\n#ifdef USE_ROUGHNESSMAP\\nkMask = 1.0 - texture2D(roughnessMap, vRoughnessMapUv).b;\\n#endif\\nfloat kWpp = max(length(dFdx(vDetailUv)), length(dFdy(vDetailUv))) * \"+TWILL_WALES.toFixed(2)+\";\\nfloat kFade = kMask * (1.0 - 0.45 * smoothstep(\"+fade[0].toFixed(3)+\", \"+fade[1].toFixed(3)+\", kWpp)) * (1.0 - smoothstep(\"+fade[2].toFixed(3)+\", \"+fade[3].toFixed(3)+\", kWpp));\\ndiffuseColor.rgb *= 1.0 + kFade * kTwillA * (kTw.a * 2.0 - 1.0);\").replace(\"#include <normal_fragment_maps>\",\"#include <normal_fragment_maps>\\n{ vec3 dN = kTw.xyz * 2.0 - 1.0; dN.xy *= kTwillN * kFade; mat3 tbnD = getTangentFrame( - vViewPosition, normal, vDetailUv ); normal = normalize( tbnD * dN ); }\");};mat.customProgramCacheKey=()=>\"kais-twill\";return mat;}async function createCapModel(T,canvas,glyphs,glyphsBold,opts={}){const hi=opts.quality!==\"low\";const look={...LOOK,...opts.look||{}};const colors={...CAP_COLORS,...opts.colors||{}};// Ask for the WebGL2 context ourselves: no context → a clean rejection (three.js would log an error first)\nconst attrs={antialias:true,alpha:true,premultipliedAlpha:true,depth:true,stencil:false,powerPreference:\"high-performance\"};const gl=canvas.getContext(\"webgl2\",attrs);if(!gl)throw new Error(\"WebGL 2 not available\");const renderer=new T.WebGLRenderer({canvas,context:gl,antialias:true,alpha:true,premultipliedAlpha:true,powerPreference:\"high-performance\"});renderer.setClearColor(0,0);renderer.outputColorSpace=T.SRGBColorSpace;renderer.toneMapping=T.NeutralToneMapping!==undefined?T.NeutralToneMapping:T.ACESFilmicToneMapping;renderer.toneMappingExposure=look.exposure;renderer.shadowMap.enabled=true;renderer.shadowMap.type=T.PCFSoftShadowMap;const maxAniso=renderer.capabilities.getMaxAnisotropy();const scene=new T.Scene;const disposables=[];const track=x=>(disposables.push(x),x);let disposed=false;const disposeAll=()=>{if(disposed)return;disposed=true;for(const d of disposables)d&&d.dispose&&d.dispose();renderer.dispose();renderer.forceContextLoss&&renderer.forceContextLoss();};// a shader that fails to compile must not leave a blank cap: report it so the viewer falls back\nlet shaderError=false;if(renderer.debug){renderer.debug.onShaderError=()=>{shaderError=true;opts.onError&&opts.onError(\"shader compile error\");};}const step=async()=>{await breathe();if(opts.signal&&opts.signal.aborted)throw new Error(\"aborted\");};// everything after the context exists: any throw (abort, out-of-memory…) releases the context\ntry{return await build();}catch(err){disposeAll();throw err;}async function build(){// where the build time goes (exposed for profiling)\nconst timings=[];let tMark=performance.now();const mark=label=>{const n=performance.now();timings.push([label,Math.round(n-tMark)]);tMark=n;};const aniso=Math.min(16,maxAniso);const dataTex=(data,w,h,srgb,repeat=false)=>{const t=track(new T.DataTexture(data,w,h,T.RGBAFormat,T.UnsignedByteType));t.colorSpace=srgb?T.SRGBColorSpace:T.NoColorSpace;t.generateMipmaps=true;t.minFilter=T.LinearMipmapLinearFilter;t.magFilter=T.LinearFilter;t.anisotropy=aniso;t.wrapS=repeat?T.RepeatWrapping:T.ClampToEdgeWrapping;t.wrapT=repeat?T.RepeatWrapping:T.ClampToEdgeWrapping;t.needsUpdate=true;return t;};// upload inside the build (one texture per step), not all at once on the first visible frame\nconst upload=async t=>{renderer.initTexture(t);await step();};// ── environment: procedural HDR studio\nconst EW=512;const EH=256;const envTex=track(new T.DataTexture(studioHDR(EW,EH,T.DataUtils.toHalfFloat),EW,EH,T.RGBAFormat,T.HalfFloatType));envTex.mapping=T.EquirectangularReflectionMapping;envTex.magFilter=T.LinearFilter;envTex.minFilter=T.LinearFilter;envTex.needsUpdate=true;const pmrem=new T.PMREMGenerator(renderer);const envRT=track(pmrem.fromEquirectangular(envTex));envTex.dispose();pmrem.dispose();scene.environment=envRT.texture;if(\"environmentIntensity\"in scene)scene.environmentIntensity=look.env;mark(\"environment\");// one shadow-casting key in the direction of the environment's big softbox\nconst key=new T.DirectionalLight(new T.Color(look.keyColor),look.key);key.position.set(look.keyPos[0],look.keyPos[1],look.keyPos[2]);key.castShadow=true;key.shadow.mapSize.set(hi?2048:1024,hi?2048:1024);key.shadow.camera.left=-16;key.shadow.camera.right=16;key.shadow.camera.top=16;key.shadow.camera.bottom=-16;key.shadow.camera.near=1;key.shadow.camera.far=60;key.shadow.bias=-4e-4;key.shadow.normalBias=.04;scene.add(key);scene.add(key.target);await step();// ── surface chart, shared by geometry, decals and baked maps\nconst ch=buildCrownChart(hi?481:361,hi?161:121);mark(\"chart\");await step();// ── embroidery masks (needed by both the decals and the crown maps' contact shadows)\n// the embroidery is a regular-weight serif; satin stitching thickens its thin strokes\nconst gB=glyphs;void glyphsBold;const frontBox={x0:-7.6,x1:7.6,y0:2.1,y1:7.9};const ppcF=hi?110:70;const front=textMask(gB,FRONT_LINES,\"center\",frontBox,ppcF,EMB.stroke,EMB.arc);const sideSize=SIDE_TEXT.width/lineWidthEm(gB,\"kaisfc(dot)com\",0,SIDE_TEXT.condense);const sideLines=[{text:\"kaisfc(dot)com\",size:sideSize,condense:SIDE_TEXT.condense,track:0,cx:SIDE_TEXT.x0,base:SIDE_TEXT.base}];const sideBox={x0:0,x1:SIDE_TEXT.x0+SIDE_TEXT.width+.6,y0:.35,y1:SIDE_TEXT.base+1.1*sideSize};const ppcS=hi?130:80;const side=textMask(gB,sideLines,\"left\",sideBox,ppcS,EMB.stroke*.8,0);const frontBlur=boxBlur(front.cov,front.W,front.H,Math.round(ppcF*.06),2);const sideBlur=boxBlur(side.cov,side.W,side.H,Math.round(ppcS*.06),2);// the sampler below reaches the masks through this holder only, so they can be let go after the build\nconst emb={front,side,frontBlur,sideBlur};mark(\"text masks\");await step();const seamSide=S.sideAnchor;const sampleArr=(arr,W,H,x,y)=>{if(x<0||y<0||x>=W-1||y>=H-1)return 0;const x0=x|0;const y0=y|0;const fx=x-x0;const fy=y-y0;const k=y0*W+x0;return arr[k]*(1-fx)*(1-fy)+arr[k+1]*fx*(1-fy)+arr[k+W]*(1-fx)*fy+arr[k+W+1]*fx*fy;};// called for every crown texel: the row origins are cached per t, the result goes to a caller-owned buffer\nlet embT=-1;let raFront=0;let raSide=0;const embSample=(phi,t,sy,ra,out)=>{if(t!==embT){embT=t;raFront=chartAt(ch,ch.RA,0,t);raSide=chartAt(ch,ch.RA,seamSide,t);}if(phi>-60*DEG&&phi<60*DEG&&sy>frontBox.y0&&sy<frontBox.y1){const x=(ra-raFront-frontBox.x0)*ppcF;const y=(sy-frontBox.y0)*ppcF;out[0]=sampleArr(emb.front.cov,emb.front.W,emb.front.H,x,y);out[1]=sampleArr(emb.frontBlur,emb.front.W,emb.front.H,x,y);return;}if(phi>seamSide-.05&&phi<seamSide+82*DEG&&sy<sideBox.y1){const x=(ra-raSide-sideBox.x0)*ppcS;const y=(sy-sideBox.y0)*ppcS;out[0]=sampleArr(emb.side.cov,emb.side.W,emb.side.H,x,y);out[1]=sampleArr(emb.sideBlur,emb.side.W,emb.side.H,x,y);return;}out[0]=0;out[1]=0;};// ── textures\nconst TW=hi?1024:512;const twill=dataTex(await twillTile(TW,step),TW,TW,false,true);mark(\"twill\");await upload(twill);const CW=hi?4096:2048;const CHt=hi?1024:512;const crownTex=await crownMaps(CW,CHt,ch,{seams:S.seams,openW:S.openW,openT:S.openT,openTPerCm:openTPerCm(),openHalfWidth,openEdgeAt,eyelets:S.eyelets.map(p=>({phi:p*DEG,t:eyeletTAt(p)})),buttonR:S.buttonR,embroidery:{sample:embSample},colors:{fabric:colors.fabric,thread:colors.thread,hole:colors.hole,eyelet:colors.eyelet},seed:7},step);mark(\"crown maps\");const crownMap=dataTex(crownTex.albedo,CW,CHt,true);crownMap.wrapS=T.RepeatWrapping;const crownNormal=dataTex(crownTex.normal,CW,CHt,false);crownNormal.wrapS=T.RepeatWrapping;const crownOrm=dataTex(crownTex.orm,CW,CHt,false);crownOrm.wrapS=T.RepeatWrapping;await upload(crownMap);await upload(crownNormal);await upload(crownOrm);mark(\"crown upload\");const BW=hi?1536:1024// ≈ 85 texels per cm across the bill (the crown has 70)\n;const BH=hi?768:512;const brimTex=await brimMaps(BW,BH,{len:brimLen,point:brimPoint,dAlong:(psi,w)=>{const a=brimPoint(Math.max(-1,psi-.01),w);const b=brimPoint(Math.min(1,psi+.01),w);return Math.hypot(b[0]-a[0],b[1]-a[1],b[2]-a[2])/.02;},dAcross:psi=>brimLen(psi)*1.02,colors:{fabric:colors.fabric,thread:colors.brimThread},seed:17},step);mark(\"brim maps\");const brimMap=dataTex(brimTex.albedo,BW,BH,true);const brimNormal=dataTex(brimTex.normal,BW,BH,false);const brimOrm=dataTex(brimTex.orm,BW,BH,false);await upload(brimMap);await upload(brimNormal);await upload(brimOrm);const frontSatin=await satinMaps(front.cov,front.W,front.H,ppcF,colors.embroidery,3,step);const sideSatin=await satinMaps(side.cov,side.W,side.H,ppcS,colors.embroidery,4,step);mark(\"satin maps\");// ── the inside: how much of the room's light gets in, the inside face, the sweatband and strap tapes\nconst vis=await interiorVisibility(hi?72:48,hi?25:17,hi?64:40,step);const IW=hi?2048:1024;const IH=hi?512:256;const inner=await innerMaps(IW,IH,ch,{seams:S.seams,openT:S.openT,openTPerCm:openTPerCm(),openHalfWidth,eyelets:S.eyelets.map(p=>({phi:p*DEG,t:eyeletTAt(p)})),eyeR0:EYELET_R0,ao:vis,bandTop:SWEATBAND_H,buttonR:S.buttonR,colors:{fabric:colors.fabric,tape:colors.tape,thread:colors.thread,eyelet:colors.eyelet},seed:29},step);const innerMap=dataTex(inner.albedo,IW,IH,true);const innerNormal=dataTex(inner.normal,IW,IH,false);const innerOrm=dataTex(inner.orm,IW,IH,false);for(const x of[innerMap,innerNormal,innerOrm])x.wrapS=T.RepeatWrapping;await upload(innerMap);await upload(innerNormal);await upload(innerOrm);const TAPE_L=3.9// one tile along a tape: 13 stitches\n;const tapeTex=async(Wd,rows,folds,seed)=>{const m=await tapeMaps(TAPE_L,Wd,hi?90:60,rows,folds,{fabric:colors.fabric,thread:colors.thread},seed,step);const tx=[dataTex(m.albedo,m.W,m.H,true),dataTex(m.normal,m.W,m.H,false),dataTex(m.orm,m.W,m.H,false)];for(const x of tx){x.wrapS=T.RepeatWrapping;x.wrapT=T.ClampToEdgeWrapping;}return tx;};const bandTx=await tapeTex(SWEATBAND_H,[.45,SWEATBAND_H-.38],{lo:false,hi:true},37);const strapTx=await tapeTex(S.strapH,[.22,S.strapH-.22],{lo:true,hi:true},41);mark(\"inside + tapes\");// ── materials\nconst fabric=(map,normalMap,orm,side=T.FrontSide)=>track(withTwill(new T.MeshPhysicalMaterial({color:16777215,map,normalMap,normalScale:new T.Vector2(1,1),aoMap:orm,aoMapIntensity:1,roughnessMap:orm,roughness:1,metalness:0,sheen:look.sheen,sheenRoughness:look.sheenRoughness,sheenColor:new T.Color(SHEEN),side}),twill,look.twill,look.twillAlbedo,look.twillFade));const crownMat=fabric(crownMap,crownNormal,crownOrm);// the eyelet holes are real holes (map alpha). Alpha test only: alpha-to-coverage would leave alpha < 1 at\n// the rims in the canvas, and the page would show through as a light ring\ncrownMat.alphaTest=.5;const brimMat=fabric(brimMap,brimNormal,brimOrm);// small parts (binding, button, strap): the same woven twill, through their own UVs scaled to centimetres\n// (repU = 0: the geometry already carries its detailUv)\nconst plainTw=(geo,repU,repV,sideMode=T.FrontSide)=>{if(repU>0){const uvA=geo.getAttribute(\"uv\");const d=new Float32Array(uvA.count*2);for(let q=0;q<uvA.count;q++){d[q*2]=uvA.getX(q)*repU;d[q*2+1]=uvA.getY(q)*repV;}geo.setAttribute(\"detailUv\",new T.BufferAttribute(d,2));}return track(withTwill(new T.MeshPhysicalMaterial({color:new T.Color(colors.fabric),// a zero-strength normal map only switches on the tangent-space code the twill uses\nnormalMap:twill,normalScale:new T.Vector2(0,0),roughness:.93,metalness:0,sheen:look.sheen,sheenRoughness:look.sheenRoughness,sheenColor:new T.Color(SHEEN),side:sideMode}),twill,look.twill,look.twillAlbedo,look.twillFade));};// the inside face: reverse of the twill (flatter), tapes, eyelet backs; its darkness is in the map\nconst innerMat=track(withTwill(new T.MeshPhysicalMaterial({map:innerMap,normalMap:innerNormal,// three's tangent frame follows the (flipped) back-side normal, so the relief keeps its sign\nnormalScale:new T.Vector2(1,1),roughnessMap:innerOrm,roughness:1,metalness:0,sheen:look.sheen*.6,sheenRoughness:look.sheenRoughness,sheenColor:new T.Color(SHEEN),alphaTest:.5,side:T.BackSide}),twill,look.twill*.5,look.twillAlbedo*.45,look.twillFade));// folded, edge-stitched tapes (sweatband, strap): their own tiled map + the twill\nconst tapeMat=(tx,vertexColors)=>track(withTwill(new T.MeshPhysicalMaterial({map:tx[0],normalMap:tx[1],normalScale:new T.Vector2(1,1),aoMap:tx[2],roughnessMap:tx[2],roughness:1,metalness:0,vertexColors,sheen:look.sheen,sheenRoughness:look.sheenRoughness,sheenColor:new T.Color(SHEEN),side:T.DoubleSide}),twill,look.twill*.8,look.twillAlbedo*.8,look.twillFade));const bandMat=tapeMat(bandTx,true);const strapMat=tapeMat(strapTx,false);const cap=new T.Group;cap.position.set(0,-S.pivotY,-S.pivotZ);const turn=new T.Group;turn.add(cap);scene.add(turn);const add=(geo,mat,cast=true,receive=true)=>{track(geo);const m=new T.Mesh(geo,mat);m.castShadow=cast;m.receiveShadow=receive;cap.add(m);return m;};// crown shell (outside) + lining (inside, slightly in)\nadd(await crownGeometry(T,ch,hi?84:48,hi?150:84,0,step),crownMat);mark(\"crown geometry\");// the inside face, 0.8 mm in (the fabric's thickness), with the same panel strips and holes\n// It casts the shadows of the crown onto the inside: three.js draws only a material's far faces into the\n// shadow map, so the outer shell alone lets the key light straight through onto the inside of the dome\nadd(await crownGeometry(T,ch,hi?40:24,hi?72:44,-.08,step,false),innerMat,true,true);// sweatband along the rim\nadd(sweatbandGeometry(T,ch,hi?260:150,vis),bandMat,false,true);// the eyelet holes: satin-lined walls through the fabric\n{const wallMat=track(new T.MeshStandardMaterial({color:new T.Color(colors.eyelet).multiplyScalar(.42),roughness:.85,side:T.DoubleSide}));add(mergeGeometries(T,S.eyelets.map(p=>eyeletWallGeometry(T,ch,p*DEG,eyeletTAt(p),EYELET_R0,20))),wallMat,false,true);}// label, sewn in at the rim on the wearer's right, next to the strap (photos 04, 12): black woven, white motif\n{const LW=64;const LH=144;const d8=new Uint8Array(LW*LH*4);for(let y=0;y<LH;y++)for(let x=0;x<LW;x++){const o=(y*LW+x)*4;const weave=(x+(y>>1)&1)*7+((y&3)===0?4:0);// two columns of stacked woven bars (an abstract mark, no lettering)\nconst col=x>10&&x<30?0:x>34&&x<54?1:-1;const yy=y-22;const bar=col>=0&&yy>0&&yy<100&&yy%20<13&&!(col===1&&yy>60);const border=x<3||x>LW-4||y<3||y>LH-4;const v=bar?190:border?36:14;d8[o]=Math.min(255,v+weave);d8[o+1]=Math.min(255,v+weave);d8[o+2]=Math.min(255,v+weave+2);d8[o+3]=255;}const phiL=-140*DEG;const R=crownFrame(phiL,.05).sphi;const g=gridGeometry(T,4,12,(i,j)=>{const phi=phiL+(i/4-.5)*1.1/R;const v=.25+2.4*j/12;const t=tAtSY(ch,phi,v);const off=-(.1+.13*Math.pow(v/SWEATBAND_H,1.6))-.03;return{p:crownPoint(phi,t,off,false),uv:[1-i/4,j/12]};});const dark=.3+.7*vis(phiL,.1);add(g,track(new T.MeshStandardMaterial({map:dataTex(d8,LW,LH,true),color:new T.Color(dark,dark,dark),roughness:.62,side:T.DoubleSide})),false,true);}// the head space: a real cap is seen on a head or a stand, so its inside reads dark, never as a window onto\n// the background (through the eyelets and the back opening). A dark disc across the head opening, seen\n// from above only.\n{// a fan from the centre to the crown's own rim line (0.5 mm inside the fabric): no gap to see through\nconst N=144;const pos=[0,.02,0];const cl=[.7,.7,.7]// deepest in the middle, a little of the band's light towards the rim\n;for(let k=0;k<=N;k++){const q=crownPoint(-Math.PI+2*Math.PI*k/N,.002,-.05,false);pos.push(q[0],.02,q[2]);cl.push(1,1,1);}const idx=[];for(let k=1;k<=N;k++)idx.push(0,k,k+1)// counter-clockwise seen from above\n;const g=new T.BufferGeometry;g.setAttribute(\"position\",new T.Float32BufferAttribute(pos,3));g.setIndex(idx);g.setAttribute(\"color\",new T.Float32BufferAttribute(cl,3));const c=new T.Color(colors.fabric).multiplyScalar(.16);add(g,track(new T.MeshBasicMaterial({color:c,vertexColors:true,side:T.FrontSide})),false,false);}// the washer of the button's shank, inside the apex\n{// bottom (the face we see from inside) → top: LatheGeometry winds outwards for this order\nconst prof=[[0,-.08],[.12,-.075],[.22,-.06],[.26,-.04],[.25,-.015],[.2,0],[0,0]].map(([r,y])=>new T.Vector2(r,y));const g=new T.LatheGeometry(prof,28);const dark=.3+.7*vis(0,.985);const m=add(g,track(new T.MeshStandardMaterial({color:new T.Color(colors.rivet).multiplyScalar(dark),metalness:1,roughness:.32})),false,true);const q=crownPoint(0,.999,-.08,false);m.position.set(q[0],q[1],q[2]);}await step();add(brimGeometry(T,hi?220:120,hi?56:28),brimMat);// binding folded over the back opening's cut edge, with its row of topstitching (photo 04)\n{const bd=bindingGeometry(T,hi?200:120,vis);// one stitch row 5 mm from the fold on the outside, the same row seen on the inside\nconst rowsV=[bd.foldAt[0]-.47,bd.foldAt[1]+.47];const bm=await tapeMaps(TAPE_L,bd.width,hi?90:60,rowsV,{lo:false,hi:false,at:[(bd.foldAt[0]+bd.foldAt[1])/2]},{fabric:colors.fabric,thread:colors.thread},43,step);const tx=[dataTex(bm.albedo,bm.W,bm.H,true),dataTex(bm.normal,bm.W,bm.H,false),dataTex(bm.orm,bm.W,bm.H,false)];for(const x of tx){x.wrapS=T.RepeatWrapping;x.wrapT=T.ClampToEdgeWrapping;}const uvA=bd.g.getAttribute(\"uv\");for(let q=0;q<uvA.count;q++)uvA.setXY(q,uvA.getX(q)/TAPE_L,uvA.getY(q)/bd.width);add(bd.g,tapeMat(tx,true));}// top button: a covered mushroom 1.3 cm across, the twill wrapped over it and gathered underneath\n{const g=buttonGeometry(T,hi?56:32);const mat=track(withTwill(new T.MeshPhysicalMaterial({color:new T.Color(colors.fabric),normalMap:twill,normalScale:new T.Vector2(0,0),vertexColors:true,roughness:.93,metalness:0,sheen:look.sheen,sheenRoughness:look.sheenRoughness,sheenColor:new T.Color(SHEEN)}),twill,look.twill*.5,look.twillAlbedo*.7,look.twillFade));const m=add(g,mat);const apex=crownPoint(0,1,0);m.position.set(apex[0],apex[1]-.02,apex[2]);}// strap across the opening, brass slide on the wearer's right, folded tail\n{const band=(phiA,phiB,y0,y1,off,n,place)=>gridGeometry(T,n,4,(i,j)=>{const phi=phiA+(phiB-phiA)*(i/n);const y=y0+(y1-y0)*(j/4);const o=typeof off===\"number\"?off:off(phi);return{p:place(phi,y,o),uv:[i/n,j/4]};});// each strap piece: the edge-stitched tape map along its length, the twill at its physical size, and\n// rolled edges (thin tubes) so it has thickness where it turns edge-on\nconst strap=(phiA,phiB,y0,y1,off,n=60,place=onWall)=>{const g=band(phiA,phiB,y0,y1,off,n,place);const pm=(phiA+phiB)/2;const len=Math.abs(phiB-phiA)*crownFrame(pm,tAtHeight(pm,(y0+y1)/2)).sphi// cm along the wall at mid height\n;const uvA=g.getAttribute(\"uv\");const d=new Float32Array(uvA.count*2);for(let q=0;q<uvA.count;q++){const u=uvA.getX(q)*len;const v=uvA.getY(q)*Math.abs(y1-y0);uvA.setX(q,u/TAPE_L);d[q*2]=u/TWILL_TILE_CM;d[q*2+1]=v/TWILL_TILE_CM;}g.setAttribute(\"detailUv\",new T.BufferAttribute(d,2));add(g,strapMat);for(const y of[y0,y1]){const pts=[];for(let k=0;k<=n;k++){const phi=phiA+(phiB-phiA)*k/n;const o=typeof off===\"number\"?off:off(phi);const q=place(phi,y,o);pts.push(new T.Vector3(q[0],q[1],q[2]));}const tube=new T.TubeGeometry(new T.CatmullRomCurve3(pts),n,.045,6,false);const uvA=tube.getAttribute(\"uv\");const d=new Float32Array(uvA.count*2);for(let q=0;q<uvA.count;q++){d[q*2]=uvA.getX(q)*len/TWILL_TILE_CM;d[q*2+1]=uvA.getY(q)*2*Math.PI*.045/TWILL_TILE_CM;}tube.setAttribute(\"detailUv\",new T.BufferAttribute(d,2));strapEdges.push(tube);}};const strapEdges=[];const B=S.buckleAt+2*Math.PI// continue past +π\n;const a0=Math.PI-S.openW-.1;const a1=Math.PI+S.openW+.06;// across the opening the band hangs upright from the rim line (that is where its top edge sits in the 11\n// back views; the crown's bulge above the rim is cloth, and there is none there). From the middle of the\n// opening to the slide it eases onto the wall, so over the cloth it lies on it and enters the slide\nconst upright=(phi,y,o)=>{const b=crownBase(phi,0);const f=crownFrame(phi,0);return[b[0]+f.n[0]*o,y,b[2]+f.n[2]*o];};const mainPlace=(phi,y,o)=>{const w=smooth(Math.PI+.35*S.openW,Math.PI+S.openW,phi);if(w<=0)return upright(phi,y,o);const u=upright(phi,y,o);const v=onWall(phi,y,o);return[u[0]+(v[0]-u[0])*w,u[1]+(v[1]-u[1])*w,u[2]+(v[2]-u[2])*w];};strap(a0,B,.12,.12+S.strapH,phi=>-.2+.4*smooth(a0,a1,phi),80,mainPlace);strap(B-.3,B,.2,.04+S.strapH,.3,20);// the short tab that holds the slide, sewn on beside the opening\nstrap(-Math.PI+S.openW-.05,S.buckleAt,.14,.1+S.strapH,.12,12);// all six rolled edges in one mesh; plainTw only needs its detailUv, already set per tube\n{const g=mergeGeometries(T,strapEdges);add(g,plainTw(g,0,0));}// brass slide (photo 04): a plate bent into a C around the strap, satin-brushed along the strap\nconst BR=128;const brushed=new Uint8Array(BR*BR*4);{// fine scratches: a 1D random profile across the brushing, lightly smoothed (tileable)\nconst raw=new Float32Array(BR);for(let x=0;x<BR;x++)raw[x]=hash2(x,0,92)-.5+.5*(hash2(x>>3,1,93)-.5);const hB=new Float32Array(BR);for(let x=0;x<BR;x++)hB[x]=.5*raw[x]+.25*(raw[(x+1)%BR]+raw[(x-1+BR)%BR]);for(let y=0;y<BR;y++)for(let x=0;x<BR;x++){const xm=(x-1+BR)%BR;const xp=(x+1)%BR;const gx=(hB[xp]-hB[xm])*.9;const il=1/Math.sqrt(gx*gx+1);const o=(y*BR+x)*4;brushed[o]=(-gx*il*.5+.5)*255|0;brushed[o+1]=128;brushed[o+2]=(il*.5+.5)*255|0;brushed[o+3]=255;}}const brushTex=dataTex(brushed,BR,BR,false,true);brushTex.repeat.set(3,3);const brass=track(new T.MeshPhysicalMaterial({color:new T.Color(colors.brass),metalness:1,roughness:.28,normalMap:brushTex,normalScale:new T.Vector2(.35,.35),anisotropy:.55,envMapIntensity:1.7}));const ySl=.12+S.strapH/2;const tSl=tAtHeight(S.buckleAt,ySl);const f=crownFrame(S.buckleAt,tSl);const bp=crownPoint(S.buckleAt,tSl,.04,false)// its rounded back corners clear the cloth (measured: +0.05 mm at the worst corner)\n;const sw=1.15// along the strap\n;const sh=S.strapH+.22// across it\n;const dep=.44// from the back lips to the front face\n;const th=.045// sheet thickness\n;const rr=.07// bend radius\n;// C profile in (x = depth outwards, y = height), traced once around as a closed outline; the lips wrap\n// round the back of the strap (the cap side), the face sits over it\nconst shape=new T.Shape;const yb=-sh/2;const yt=sh/2;const lip=.22// how far the bent-over lips reach behind the strap\n;shape.moveTo(0,yb+lip);shape.lineTo(0,yb+rr);shape.quadraticCurveTo(0,yb,rr,yb);shape.lineTo(dep-rr,yb);shape.quadraticCurveTo(dep,yb,dep,yb+rr);shape.lineTo(dep,yt-rr);shape.quadraticCurveTo(dep,yt,dep-rr,yt);shape.lineTo(rr,yt);shape.quadraticCurveTo(0,yt,0,yt-rr);shape.lineTo(0,yt-lip);shape.lineTo(th,yt-lip);shape.lineTo(th,yt-rr);shape.quadraticCurveTo(th,yt-th,rr,yt-th);shape.lineTo(dep-rr,yt-th);shape.quadraticCurveTo(dep-th,yt-th,dep-th,yt-rr);shape.lineTo(dep-th,yb+rr);shape.quadraticCurveTo(dep-th,yb+th,dep-rr,yb+th);shape.lineTo(rr,yb+th);shape.quadraticCurveTo(th,yb+th,th,yb+rr);shape.lineTo(th,yb+lip);shape.lineTo(0,yb+lip);const gS=new T.ExtrudeGeometry(shape,{depth:sw,steps:12,bevelEnabled:true,bevelThickness:.015,bevelSize:.012,bevelSegments:2,curveSegments:8});gS.rotateY(-Math.PI/2)// extrusion → along the strap (x), profile depth → outwards (z)\n;gS.translate(sw/2,0,0);// bent round the cap like the strap it rides on (same radius), so the face is not a mirror-flat\n// plane and takes the studio's softboxes as a gradient; the strap keeps its clearance inside\n{const Rb=crownFrame(S.buckleAt,tSl).sphi;const pa=gS.getAttribute(\"position\");for(let q=0;q<pa.count;q++){const x=pa.getX(q);pa.setZ(q,pa.getZ(q)-x*x/(2*Rb));}gS.computeVertexNormals();}const slide=new T.Mesh(track(gS),brass);slide.castShadow=true;slide.receiveShadow=true;const frame=new T.Group;frame.add(slide);frame.position.set(bp[0],bp[1],bp[2]);frame.lookAt(bp[0]+f.n[0],bp[1]+f.n[1],bp[2]+f.n[2]);cap.add(frame);}await step();// ── embroidery decals: satin stitches with anisotropic sheen along the threads\nconst embMat=(m,W,H)=>{const map=dataTex(m.rgba,W,H,true);const nm=dataTex(m.normal,W,H,false);const an=dataTex(m.aniso,W,H,false);return track(new T.MeshPhysicalMaterial({map,normalMap:nm,normalScale:new T.Vector2(1,1),roughness:.5,anisotropy:look.embAniso,anisotropyMap:an,transparent:true,depthWrite:false,polygonOffset:true,polygonOffsetFactor:-2,polygonOffsetUnits:-2}));};{const tA=Math.max(0,tAtHeightChart(ch,0,frontBox.y0)-.03);const tB=Math.min(.97,tAtHeightChart(ch,55*DEG,frontBox.y1)+.03);const m=add(decalGeometry(T,ch,-58*DEG,58*DEG,tA,tB,hi?232:120,hi?64:36,.05,frontBox,0),embMat(frontSatin,front.W,front.H),false,true);m.renderOrder=2;}{const tB=Math.min(.6,tAtHeightChart(ch,seamSide+20*DEG,sideBox.y1)+.04);const m=add(decalGeometry(T,ch,seamSide,seamSide+80*DEG,0,tB,hi?160:90,hi?30:20,.045,sideBox,seamSide),embMat(sideSatin,side.W,side.H),false,true);m.renderOrder=2;}await step();mark(\"parts + decals\");// camera: fixed elevation; the frustum is fitted to the full-turn bounds every resize\nconst camera=new T.PerspectiveCamera(20,1,10,200);camera.position.set(0,S.dist*Math.sin(S.elev),S.dist*Math.cos(S.elev));camera.lookAt(0,0,0);camera.updateMatrixWorld();key.target.position.set(0,0,0);// compile every program now (parallel where the driver allows) instead of stalling the first frame\nif(renderer.compileAsync)await renderer.compileAsync(scene,camera);await step();for(const d of disposables)if(d&&d.isTexture&&d.image&&d.image.data)renderer.initTexture(d);await step();// warm-up frame on the small default backing store: whatever is still lazy is paid here, before the fade-in\nrenderer.render(scene,camera);await step();emb.front=emb.side=emb.frontBlur=emb.sideBlur=null;// the GPU holds every texture now: drop the CPU-side pixel arrays (≈ 80 MB in high quality). Nothing\n// re-uploads them: a lost context disposes the whole model and the viewer falls back to the drawing.\nfor(const d of disposables)if(d&&d.isTexture&&d.image&&d.image.data){renderer.initTexture(d);d.image.data=null;}mark(\"compile + upload + warm-up\");if(shaderError)throw new Error(\"shader compile error\");let W=1;let Hh=1;const fit=()=>{const aspect=W/Hh;const b=MODEL_BOUNDS;let hw=b.w/2;let hh=b.h/2;if(hw/hh>aspect)hh=hw/aspect;else hw=hh*aspect;const cx=(b.minX+b.maxX)/2;const cy=(b.minY+b.maxY)/2;const n=camera.near;camera.projectionMatrix.makePerspective((cx-hw)*n,(cx+hw)*n,(cy+hh)*n,(cy-hh)*n,n,camera.far);camera.projectionMatrixInverse.copy(camera.projectionMatrix).invert();};return{render(phase){turn.rotation.y=phase*Math.PI*2;renderer.render(scene,camera);},resize(w,h,dpr){W=Math.max(1,w);Hh=Math.max(1,h);renderer.setPixelRatio(dpr);renderer.setSize(W,Hh,false);fit();},dispose:disposeAll};}}return{createCapModel,MODEL_BOUNDS};})();// ─── three.js on demand (one module per URL, shared by every instance) ───\nconst threeModules=new Map;function loadThree(url){let p=threeModules.get(url);if(!p){// resolve against the page, not the component's own module URL\nconst abs=typeof document!==\"undefined\"?new URL(url,document.baseURI).href:url;p=import(/* webpackIgnore: true *//* @vite-ignore */abs).then(m=>{const T=m&&m.WebGLRenderer?m:m&&m.default;if(!T||!T.WebGLRenderer)throw new Error(\"not a three.js module: \"+url);return T;});p.catch(()=>threeModules.delete(url))// a failed fetch may be retried by a later mount\n;threeModules.set(url,p);}return p;}/** After this long without a 3D frame the line drawing takes over for good. */const MODEL_TIMEOUT_MS=15e3;/** Slow connection: the line drawing shows faintly until the 3D cap is ready, then hands over. */const SKETCH_AFTER_MS=1400;/** Keep the GL backing store under ~3.2 MP (a 1440 px wide cap at DPR 2 is ~2.6 MP). */const GL_PIXEL_BUDGET=32e5;function pickQuality(q){if(q===\"high\"||q===\"low\")return q;if(!isBrowser)return\"high\";const nav=navigator;const coarse=typeof matchMedia===\"function\"&&matchMedia(\"(pointer: coarse)\").matches;const small=Math.min(screen.width||0,screen.height||0)<520;const weak=(nav.hardwareConcurrency||8)<=4||(nav.deviceMemory||8)<=3;return coarse&&small||weak?\"low\":\"high\";}/** Glide time constant after a fling: 95% of the extra speed is gone after 3·τ ≈ 1.8 s. */const GLIDE_TAU=.6;const BUY_HEIGHT=54;const BUY_WIDTH_DESKTOP=300;const TITLE_DEFAULT=\"2042 KAIS cap\";const READOUT_OFFSET=10// readout sits this far under the cap box\n;const READOUT_LINE=12// 9 px Unbounded line box\n;/** Browsers accept playbackRate in [0.0625, 16]; outside it the video is driven by seeking instead. */const MIN_RATE=.0625;const MAX_RATE=16;/** Pick the smallest srcSet candidate that still covers the target width (Framer ResponsiveImage). */function pickSrc(item,targetW){const base=srcOf(item);const set=item&&typeof item.srcSet===\"string\"?item.srcSet:\"\";if(!set||!(targetW>0))return base;const cands=set.split(\",\").map(c=>c.trim().split(/\\s+/)).map(([url,w])=>({url,w:parseInt(w,10)})).filter(c=>c.url&&c.w>0).sort((a,b)=>a.w-b.w);const fit=cands.find(c=>c.w>=targetW);return fit?fit.url:base;}const CapViewer=/*#__PURE__*/React.forwardRef(function CapViewer({cap,animate,reduced,onDegrees,onFirstFrame},apiRef){const wrapRef=useRef(null);const canvasRef=useRef(null);const videoRef=useRef(null);const size=useElementSize(wrapRef);const visible=useRef(true);const firstFrameSent=useRef(false);const sign=cap.direction===\"left\"?-1:1;const autoSpeed=reduced||!animate||!(cap.period>0)?0:sign/cap.period;const motionState=useRef({phase:wrap01(cap.startAngle/360),vel:autoSpeed,dragging:false,pointerId:-1,samples:[],lastX:0,lastDeg:-1});const speedRef=useRef(autoSpeed);speedRef.current=autoSpeed;const renderRef=useRef(()=>{});const animateRef=useRef(animate);animateRef.current=animate;const videoState=useRef({duration:0,seeking:false,cruising:false,lastPlayTry:0});// Frame sources, keyed by content (a new-but-identical array from Framer must not reload 72 images)\nconst frameItems=cap.source===\"frames\"?(cap.frames||[]).filter(f=>srcOf(f)):[];const frameKey=cap.source!==\"frames\"?\"\":frameItems.length>1?\"a|\"+frameItems.map(srcOf).join(\"|\"):cap.framesPattern&&/\\{n+\\}/.test(cap.framesPattern)&&cap.frameCount>1?`p|${cap.framesPattern}|${Math.round(cap.frameCount)}|${Math.round(cap.frameStart)}`:\"\";const frameItemsRef=useRef(frameItems);frameItemsRef.current=frameItems;const storeRef=useRef(null);// 3D model: built once the viewer has a size (hidden breakpoint twins never create a GL context)\nconst glHostRef=useRef(null);const modelRef=useRef(null);const[modelState,setModelState]=useState(\"loading\");// a failure belongs to one (three.js URL, quality) pair: editing either in Framer tries again\nconst modelKey=(cap.threeUrl||DEFAULT_THREE_URL)+\"|\"+cap.quality;const[failedKey,setFailedKey]=useState(null);const model=failedKey===modelKey?\"failed\":modelState;const[sketch,setSketch]=useState(false);const sketchRef=useRef(false);sketchRef.current=sketch&&model!==\"ready\";const modelDirty=useRef(true);const lastModelPhase=useRef(NaN);const wantModel=cap.source===\"model\";// latched: a breakpoint twin that gets hidden keeps its model instead of rebuilding it later\nconst[sized,setSized]=useState(false);useEffect(()=>{if(size.w>0&&size.h>0)setSized(true);},[size.w,size.h]);// switching the source away and back retries a failed model\nuseEffect(()=>{if(!wantModel)setFailedKey(null);},[wantModel]);const mode=wantModel?model===\"failed\"?\"placeholder\":\"model\":cap.source===\"frames\"&&frameKey?\"frames\":cap.source===\"video\"&&cap.video?\"video\":cap.source===\"image\"&&srcOf(cap.image)?\"image\":\"placeholder\";const onFirstFrameRef=useRef(onFirstFrame);onFirstFrameRef.current=onFirstFrame;// stable identity: an inline onFirstFrame prop must not rebuild the 3D model on every parent render\nconst signalFirstFrame=useCallback(()=>{if(firstFrameSent.current)return;firstFrameSent.current=true;onFirstFrameRef.current&&onFirstFrameRef.current();},[]);useEffect(()=>{if(mode!==\"frames\")return;const el=wrapRef.current;const dpr=Math.min(2,isBrowser&&window.devicePixelRatio||1);const targetW=Math.round((el&&el.offsetWidth||800)*dpr);const urls=frameKey.startsWith(\"a|\")?frameItemsRef.current.map(f=>pickSrc(f,targetW)):expandPattern(cap.framesPattern,Math.round(cap.frameCount),Math.round(cap.frameStart));const store=new FrameStore(urls,s=>{if(s.loaded===1)signalFirstFrame();// no animation loop in the Framer canvas: draw as frames arrive\nif(!animateRef.current)renderRef.current();});storeRef.current=store;return()=>{store.dispose();if(storeRef.current===store)storeRef.current=null;};// eslint-disable-next-line react-hooks/exhaustive-deps\n},[mode,frameKey,signalFirstFrame]);useEffect(()=>{if(mode===\"placeholder\")signalFirstFrame();if(mode===\"image\")signalFirstFrame();},[mode,signalFirstFrame]);const sizeModel=useCallback(()=>{const m=modelRef.current;const el=wrapRef.current;if(!m||!el)return;const w=el.offsetWidth;const h=el.offsetHeight;if(!w||!h)return;let dpr=Math.min(2,isBrowser&&window.devicePixelRatio||1);if(w*h*dpr*dpr>GL_PIXEL_BUDGET)dpr=Math.sqrt(GL_PIXEL_BUDGET/(w*h));m.resize(w,h,dpr);},[]);// Build the 3D cap: fetch three.js, build geometry + textures in small steps, fade it in.\n// Any failure (no WebGL, blocked CDN, shader error, lost context, timeout) falls back to the line drawing.\nuseEffect(()=>{if(!wantModel||!sized||failedKey===modelKey)return;const host=glHostRef.current;if(!host)return;// a fresh canvas per build: a context that was released can never be revived on the same element\nconst canvas=document.createElement(\"canvas\");canvas.setAttribute(\"data-kais\",\"gl\");canvas.setAttribute(\"aria-hidden\",\"true\");canvas.style.cssText=\"position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none\";host.appendChild(canvas);const ac=new AbortController;const key=modelKey;let alive=true;let failed=false;let built=null;setModelState(\"loading\");const release=()=>{canvas.removeEventListener(\"webglcontextlost\",onLost);if(built){if(modelRef.current===built)modelRef.current=null;const b=built;built=null;b.dispose();}};const fail=why=>{if(!alive||failed)return;failed=true;console.warn(\"[KAIS Cap Store] 3D cap unavailable (\"+why+\"): showing the line drawing\");canvas.removeEventListener(\"webglcontextlost\",onLost)// the abort below releases the context\n;ac.abort();release();setFailedKey(key);};let timer=0;const arm=ms=>{timer=setTimeout(()=>{if(built)return;// a hidden tab throttles everything: only give up on time the visitor actually waited\nif(typeof document!==\"undefined\"&&document.hidden)return arm(1e3);fail(\"timed out\");},ms);};arm(MODEL_TIMEOUT_MS);const sketchTimer=setTimeout(()=>alive&&setSketch(true),SKETCH_AFTER_MS);function onLost(e){e.preventDefault();fail(\"WebGL context lost\");}canvas.addEventListener(\"webglcontextlost\",onLost);loadThree(cap.threeUrl||DEFAULT_THREE_URL).then(T=>{if(ac.signal.aborted)throw new Error(\"aborted\");return Cap3D.createCapModel(T,canvas,KAIS_GLYPHS,KAIS_GLYPHS,{quality:pickQuality(cap.quality),signal:ac.signal,onError:why=>fail(why)});}).then(m=>{if(!alive||ac.signal.aborted||failed)return m.dispose();built=m;modelRef.current=m;sizeModel();m.render(motionState.current.phase);lastModelPhase.current=motionState.current.phase;modelDirty.current=false;setModelState(\"ready\");signalFirstFrame();}).catch(err=>{if(!ac.signal.aborted)fail(err&&err.message||\"error\");});return()=>{alive=false;clearTimeout(timer);clearTimeout(sketchTimer);ac.abort();release();canvas.remove();};// eslint-disable-next-line react-hooks/exhaustive-deps\n},[wantModel,sized,modelKey,failedKey===modelKey,sizeModel,signalFirstFrame]);// GL backing store follows the viewer box\nuseEffect(()=>{if(model!==\"ready\"||!size.w||!size.h)return;sizeModel();modelDirty.current=true;if(!animateRef.current)renderRef.current();},[model,size.w,size.h,sizeModel]);// No loop on the Framer canvas: draw the faint line drawing once when it is due\nuseEffect(()=>{if(sketch&&!animateRef.current)renderRef.current();},[sketch]);React.useImperativeHandle(apiRef,()=>({kick:v=>{motionState.current.vel+=v*(sign||1);}}));// Start angle is live while nothing animates (Framer canvas, reduced motion)\nuseEffect(()=>{if(animate&&!reduced)return;motionState.current.phase=wrap01(cap.startAngle/360);motionState.current.vel=0;const v=videoRef.current;const vs=videoState.current;if(v&&vs.duration>0)v.currentTime=motionState.current.phase*vs.duration;renderRef.current();},[cap.startAngle,animate,reduced]);// Canvas backing store follows the element size (DPR capped at 2)\nconst dprRef=useRef(1);useEffect(()=>{const c=canvasRef.current;if(!c||!size.w||!size.h)return;const dpr=Math.min(2,isBrowser&&window.devicePixelRatio||1);dprRef.current=dpr;c.width=Math.round(size.w*dpr);c.height=Math.round(size.h*dpr);},[size.w,size.h,mode]);// Pause work when off-screen\nuseEffect(()=>{const el=wrapRef.current;if(!el||typeof IntersectionObserver===\"undefined\")return;const io=new IntersectionObserver(([e])=>visible.current=e.isIntersecting,{threshold:0});io.observe(el);return()=>io.disconnect();},[]);// Video: native playback while cruising (when the rate is in range), seek-driven otherwise\nuseEffect(()=>{const v=videoRef.current;if(mode!==\"video\"||!v)return;const vs=videoState.current;vs.cruising=false;v.muted=true// property, not just attribute: iOS autoplay needs it before play()\n;const onMeta=()=>{vs.duration=v.duration||0;if(vs.duration>0)v.currentTime=motionState.current.phase*vs.duration;};const onSeeked=()=>vs.seeking=false;const onFrame=()=>signalFirstFrame();v.addEventListener(\"loadedmetadata\",onMeta);v.addEventListener(\"seeked\",onSeeked);v.addEventListener(\"loadeddata\",onFrame);if(v.readyState>=1)onMeta();if(v.readyState>=2)onFrame();return()=>{v.removeEventListener(\"loadedmetadata\",onMeta);v.removeEventListener(\"seeked\",onSeeked);v.removeEventListener(\"loadeddata\",onFrame);};},[mode,cap.video,signalFirstFrame]);// The loop\nuseEffect(()=>{let raf=0;let last=performance.now();const render=()=>{const s=motionState.current;const c=canvasRef.current;if(mode===\"model\"){const m=modelRef.current;if(m){// a still cap (reduced motion, Turn = 0, Framer canvas) is not re-rendered 60 times a second\nif(modelDirty.current||s.phase!==lastModelPhase.current){m.render(s.phase);lastModelPhase.current=s.phase;modelDirty.current=false;}}else if(sketchRef.current&&c){const ctx=c.getContext(\"2d\");if(ctx)drawPlaceholderCap(ctx,c.width,c.height,s.phase,cap.lineColor,dprRef.current);}}else if(mode===\"placeholder\"&&c){const ctx=c.getContext(\"2d\");if(ctx)drawPlaceholderCap(ctx,c.width,c.height,s.phase,cap.lineColor,dprRef.current);}else if(mode===\"frames\"&&c&&storeRef.current){const ctx=c.getContext(\"2d\");const store=storeRef.current;const n=store.urls.length;if(ctx&&n){const f=s.phase*n;const i0=Math.floor(f)%n;const i1=(i0+1)%n;const t=f-Math.floor(f);const a=store.imgs[i0];const b=store.imgs[i1];ctx.setTransform(1,0,0,1,0,0);ctx.clearRect(0,0,c.width,c.height);ctx.imageSmoothingQuality=\"high\";if(a&&b&&cap.frameBlend&&t>.001){// premultiplied linear blend: correct for transparent frames too\nctx.globalCompositeOperation=\"lighter\";drawContain(ctx,a,c.width,c.height,1-t);drawContain(ctx,b,c.width,c.height,t);ctx.globalCompositeOperation=\"source-over\";}else{const img=t<.5?a||store.nearest(i0):b||store.nearest(i1);if(img)drawContain(ctx,img,c.width,c.height,1);}ctx.globalAlpha=1;}}if(onDegrees){const deg=Math.round(wrap01(s.phase)*360)%360;if(deg!==s.lastDeg){s.lastDeg=deg;onDegrees(deg);}}};renderRef.current=render;const tick=now=>{const dt=Math.min(.05,(now-last)/1e3);last=now;const s=motionState.current;const auto=speedRef.current;if(!s.dragging){s.vel+=(auto-s.vel)*(1-Math.exp(-dt/GLIDE_TAU))// calm glide back to cruise speed\n;s.phase=wrap01(s.phase+s.vel*dt);}if(mode===\"video\"){const v=videoRef.current;const vs=videoState.current;if(v&&vs.duration>0){const rate=vs.duration*auto;const nativeOk=auto>0&&rate>=MIN_RATE&&rate<=MAX_RATE;const cruising=nativeOk&&!s.dragging&&Math.abs(s.vel-auto)<Math.max(.004,auto*.03);if(cruising){if(!vs.cruising){vs.cruising=true;v.playbackRate=rate;v.play().catch(()=>{});}else if(v.paused&&now-vs.lastPlayTry>1e3){// autoplay can be refused (iOS low-power mode): keep asking, quietly\nvs.lastPlayTry=now;v.play().catch(()=>{});}s.phase=wrap01(v.currentTime/vs.duration);}else{if(vs.cruising||!v.paused){vs.cruising=false;v.pause();}if(!vs.seeking){const target=wrap01(s.phase)*vs.duration;if(Math.abs(target-v.currentTime)>1/120){vs.seeking=true;v.currentTime=target;}}}}}if(visible.current)render();raf=requestAnimationFrame(tick);};if(animate)raf=requestAnimationFrame(tick);else render();return()=>cancelAnimationFrame(raf);},[mode,animate,cap.lineColor,cap.frameBlend,onDegrees,size.w,size.h]);// Drag to spin (pointer events; vertical scroll stays native on touch). One pointer at a time.\nconst onPointerDown=e=>{if(!cap.draggable||!animate)return;if(e.pointerType===\"mouse\"&&e.button!==0)return;const s=motionState.current;if(s.dragging)return;// a second finger must not hijack the drag\ns.dragging=true;s.pointerId=e.pointerId;s.lastX=e.clientX;s.samples=[{t:performance.now(),p:s.phase}];e.currentTarget.setPointerCapture(e.pointerId);};const onPointerMove=e=>{const s=motionState.current;if(!s.dragging||e.pointerId!==s.pointerId)return;const dx=e.clientX-s.lastX;s.lastX=e.clientX;const width=wrapRef.current?wrapRef.current.offsetWidth:600;s.phase=wrap01(s.phase+(cap.invertDrag?-1:1)*dx/(width*1.25));const now=performance.now();s.samples.push({t:now,p:s.phase});while(s.samples.length>2&&now-s.samples[0].t>90)s.samples.shift();};const endDrag=e=>{const s=motionState.current;if(!s.dragging||e.pointerId!==s.pointerId)return;s.dragging=false;s.pointerId=-1;const a=s.samples[0];const b=s.samples[s.samples.length-1];if(a&&b&&b.t-a.t>8){let dp=b.p-a.p;if(dp>.5)dp-=1;if(dp<-.5)dp+=1;s.vel=clamp(dp/((b.t-a.t)/1e3),-2.5,2.5);}else s.vel=0;};const blend=cap.blend===\"multiply\"?\"multiply\":\"normal\";const fill={position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",display:\"block\"};const still=cap.image&&typeof cap.image===\"object\"?cap.image:null;return /*#__PURE__*/_jsx(\"div\",{ref:wrapRef,\"data-kais\":\"viewer\",onPointerDown:onPointerDown,onPointerMove:onPointerMove,onPointerUp:endDrag,onPointerCancel:endDrag,onLostPointerCapture:endDrag,style:{position:\"absolute\",inset:0,touchAction:\"pan-y\",cursor:cap.draggable&&animate?\"grab\":\"default\",userSelect:\"none\",WebkitUserSelect:\"none\"},children:mode===\"video\"?/*#__PURE__*/_jsx(\"video\",{ref:videoRef,src:cap.video,poster:srcOf(cap.poster)||undefined,muted:true,playsInline:true,autoPlay:animate&&!reduced,loop:true,preload:\"auto\",disablePictureInPicture:true,\"aria-hidden\":true,style:{...fill,objectFit:\"contain\",mixBlendMode:blend,pointerEvents:\"none\"}}):mode===\"image\"?/*#__PURE__*/_jsx(\"img\",{src:srcOf(cap.image),srcSet:still&&still.srcSet?still.srcSet:undefined,sizes:still&&still.srcSet&&size.w?`${Math.round(size.w)}px`:undefined,alt:\"\",draggable:false,style:{...fill,objectFit:\"contain\",mixBlendMode:blend,pointerEvents:\"none\"}}):mode===\"model\"?/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"canvas\",{ref:canvasRef,\"aria-hidden\":true,style:{...fill,pointerEvents:\"none\",opacity:sketch&&model!==\"ready\"?.3:0,transition:\"opacity 700ms ease\"}}),/*#__PURE__*/_jsx(\"div\",{ref:glHostRef,\"data-kais\":\"model\",\"data-state\":model,style:{...fill,pointerEvents:\"none\",opacity:model===\"ready\"?1:0,transition:\"opacity 900ms cubic-bezier(0.16, 1, 0.3, 1)\"}})]}):/*#__PURE__*/_jsx(\"canvas\",{ref:canvasRef,\"aria-hidden\":true,style:{...fill,mixBlendMode:blend,pointerEvents:\"none\"}})});});// ─── BUY button with a directional mustard wipe ─────────────────────────────\n/** BUY label: Tektur 700 like the title. 15 px → cap height 10.5 px, +38% over the previous\n *  Unbounded 10 px label (7.6 px), still below the 21 px title (14.7 px). Measured, not eyeballed. */const BUY_FONT_SIZE=15;const TITLE_TRACKING=\"0.12em\";function BuyButton({label,onClick,onIntent,onIntentCancel,onPress,buttonRef,controls}){const[scope,wipe]=useAnimate();const enter=()=>{onIntent();wipe(scope.current,{clipPath:[\"inset(0% 100% 0% 0%)\",\"inset(0% 0% 0% 0%)\"]},{duration:.5,ease:EASE_OUT_EXPO});};const leave=()=>{onIntentCancel();wipe(scope.current,{clipPath:\"inset(0% 0% 0% 100%)\"},{duration:.42,ease:EASE_IN_OUT_SOFT});};const content=color=>/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",inset:0,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",color},children:/*#__PURE__*/_jsx(\"span\",{\"data-kais\":\"buy-label\",style:{fontFamily:F.display,fontWeight:700,fontSize:BUY_FONT_SIZE,lineHeight:1,letterSpacing:TITLE_TRACKING,// tracking also adds space after the last letter: mirror it on the left so the word sits dead centre\n    paddingLeft:TITLE_TRACKING,textTransform:\"uppercase\",whiteSpace:\"nowrap\"},children:label})});return /*#__PURE__*/_jsxs(motion.button,{ref:buttonRef,type:\"button\",className:\"kais-buy\",\"data-kais\":\"buy\",\"aria-controls\":controls,onClick:onClick,onPointerDown:onPress,onHoverStart:e=>{if(e.pointerType===\"mouse\")enter();},onHoverEnd:e=>{if(e.pointerType===\"mouse\")leave();},whileHover:{scale:1.015},whileTap:{scale:.98,transition:{duration:.12}},transition:SPRING_SUBTLE,style:{position:\"relative\",display:\"block\",width:\"100%\",height:BUY_HEIGHT,padding:0,border:\"1px solid transparent\",borderRadius:0,background:K.navy,cursor:\"pointer\",overflow:\"hidden\",WebkitTapHighlightColor:\"transparent\"},children:[/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,style:{position:\"absolute\",inset:0},children:content(K.cream)}),/*#__PURE__*/_jsx(\"span\",{ref:scope,\"aria-hidden\":true,style:{position:\"absolute\",inset:0,background:K.mustard,clipPath:\"inset(0% 100% 0% 0%)\"},children:content(K.navy)}),/*#__PURE__*/_jsx(\"span\",{className:\"kais-sr\",children:label})]});}/** The product section sits on white: navy type, hairlines in the brand's warm hair tone lightened for white. */const COLUMN_THEME={bg:\"#FFFFFF\",text:K.navy,muted:\"rgba(26,39,68,0.64)\",hair:\"#E6E1D8\",accent:K.navy,shimmer:\"rgba(26,39,68,0.055)\"};/** Quiet stand-in that mirrors the rhythm of Stripe's embedded form (amount, express pay, fields, pay). */function Skeleton({theme,still}){let i=0;const shimmer=extra=>({background:`linear-gradient(90deg, transparent 0%, ${theme.shimmer} 50%, transparent 100%)`,backgroundSize:\"200% 100%\",animationDelay:`${i++*70}ms`,...extra});const cls=still?undefined:\"kais-shimmer\";const bar=(w,h,mt=0)=>/*#__PURE__*/_jsx(\"div\",{className:cls,style:shimmer({width:w,height:h,marginTop:mt,background:theme.shimmer})});const field=(h=44)=>/*#__PURE__*/_jsx(\"div\",{className:cls,style:shimmer({height:h,border:`1px solid ${theme.hair}`})});return /*#__PURE__*/_jsxs(\"div\",{\"aria-hidden\":true,\"data-kais\":\"skeleton\",style:{display:\"grid\",gap:10},children:[bar(\"26%\",8),bar(\"42%\",26,2),/*#__PURE__*/_jsx(\"div\",{style:{height:18}}),field(48),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:12,margin:\"10px 0\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{flex:1,height:1,background:theme.hair}}),bar(\"28px\",6),/*#__PURE__*/_jsx(\"div\",{style:{flex:1,height:1,background:theme.hair}})]}),bar(\"18%\",7),field(),/*#__PURE__*/_jsx(\"div\",{style:{height:6}}),bar(\"30%\",7),field(),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"grid\",gridTemplateColumns:\"1fr 1fr\",gap:10},children:[field(),field()]}),/*#__PURE__*/_jsx(\"div\",{style:{height:14}}),/*#__PURE__*/_jsx(\"div\",{className:cls,style:shimmer({height:50,border:`1px solid ${theme.accent}`,opacity:.45})})]});}function TextButton({children,onClick,theme,solid,dataKais}){return /*#__PURE__*/_jsx(\"button\",{type:\"button\",className:\"kais-textbtn\",\"data-kais\":dataKais,onClick:onClick,style:{height:48,padding:\"0 22px\",border:`1px solid ${solid?theme.accent:theme.hair}`,background:solid?theme.accent:\"transparent\",color:solid?theme.bg:theme.text,fontFamily:F.label,fontWeight:500,fontSize:10,letterSpacing:\"0.2em\",textTransform:\"uppercase\",cursor:\"pointer\",borderRadius:0},children:children});}/** Framer canvas only: what the checkout will do on the live site, and what is missing. */function CanvasStatus({mode,requested,pk,issues}){const env=/^pk_live_/.test(pk)?\"live\":/^pk_test_/.test(pk)?\"test\":\"\";const label=mode===\"embedded\"?`Stripe embedded \\xb7 ${env} mode`:mode===\"paymentLink\"?\"Stripe Payment Link (new tab)\":\"Demo checkout\";return /*#__PURE__*/_jsxs(\"div\",{\"data-kais\":\"canvas-status\",style:{position:\"absolute\",left:12,top:12,zIndex:6,maxWidth:360,padding:\"8px 10px\",background:\"rgba(14,21,38,0.9)\",color:K.cream,fontFamily:\"ui-monospace, SFMono-Regular, Menlo, monospace\",fontSize:11,lineHeight:1.5,pointerEvents:\"none\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{color:issues.length?K.goldLight:K.cream},children:[issues.length?\"⚠ \":\"✓ \",label,requested!==\"auto\"&&requested!==mode?` (asked: ${requested})`:\"\"]}),issues.map((t,i)=>/*#__PURE__*/_jsxs(\"div\",{style:{opacity:.85},children:[\"\\xb7 \",t]},i))]});}// ─── Page scroll: one eased glide from BUY to the product section ───────────\nconst SCROLL_EASE=t=>t<.5?8*t*t*t*t:1-Math.pow(-2*t+2,4)/2// ease-in-out quart\n;let activeGlide=null;/** Anything the visitor does with the page during the glide hands control straight back. */const GLIDE_STOPPERS=[\"wheel\",\"touchstart\",\"keydown\",\"pointerdown\"];/** 0.8 s for a short hop, +0.32 s per 1000 px, never over 1.4 s: one screen (900 px) takes 0.89 s. */const glideDuration=dist=>clamp(600+Math.abs(dist)*.32,800,1400);/**\n * Scrolls the window to `top` with one eased glide (0.8–1.4 s by distance). Any wheel, touch or key from the\n * visitor hands control straight back. Smooth-scroll libraries that expose `lenis` drive it themselves.\n */function glideTo(top,reduced){if(!isBrowser)return Promise.resolve(false);activeGlide&&activeGlide.cancel();const w=window;const start=window.scrollY;const dist=top-start;if(reduced||Math.abs(dist)<2){window.scrollTo({top,left:0,behavior:\"instant\"});return Promise.resolve(true);}const dur=glideDuration(dist);const lenis=w.lenis||w.__lenis;if(lenis&&typeof lenis.scrollTo===\"function\"){lenis.scrollTo(top,{duration:dur/1e3,easing:SCROLL_EASE});return new Promise(r=>setTimeout(()=>r(Math.abs(window.scrollY-top)<2),dur+50));}return new Promise(resolve=>{const html=document.documentElement;const prevBehavior=html.style.scrollBehavior;html.style.scrollBehavior=\"auto\"// a CSS `scroll-behavior: smooth` would smooth every frame again\n;const t0=performance.now();let raf=0;let done=false;const finish=arrived=>{if(done)return;done=true;cancelAnimationFrame(raf);html.style.scrollBehavior=prevBehavior;for(const ev of GLIDE_STOPPERS)window.removeEventListener(ev,stop);if(activeGlide===me)activeGlide=null;resolve(arrived);};const stop=()=>finish(false);const me={cancel:stop};activeGlide=me;for(const ev of GLIDE_STOPPERS)window.addEventListener(ev,stop,{passive:true});const tick=now=>{const t=Math.min(1,(now-t0)/dur);window.scrollTo(0,start+dist*SCROLL_EASE(t));if(t<1)raf=requestAnimationFrame(tick);else finish(true);};raf=requestAnimationFrame(tick);});}function normImages(list){if(!Array.isArray(list))return[];const out=[];for(const it of list){if(typeof it===\"string\"&&it)out.push({src:it});else if(it&&typeof it.src===\"string\"&&it.src)out.push({src:it.src,srcSet:typeof it.srcSet===\"string\"?it.srcSet:undefined,alt:typeof it.alt===\"string\"?it.alt:undefined});}return out;}/**\n * Motion of the gallery, measured on recordings rather than guessed:\n *  · next / previous (arrows, keys, the neighbouring thumb): a critically damped spring of ~0.85 s that keeps\n *    whatever velocity the track already has, so quick repeated presses chain instead of restarting;\n *  · a released swipe: the same spring, seeded with the finger's speed;\n *  · a jump of two or more photos (a far thumb, Home, End): no sweep through the photos in between: the photo on\n *    screen dissolves (0.28 s), the track moves under cover, the new photo settles in from 3 % larger (0.7 / 1.1 s);\n *  · while the track moves, every photo recedes (−7 % scale, −40 % opacity one slide out) and travels 14 % slower\n *    than its frame, which reads as depth.\n */const NAV_SPRING={type:\"spring\",duration:.85,bounce:0};const SWIPE_SPRING={type:\"spring\",duration:.7,bounce:0};const PARALLAX=.14;const ZOOM_SCALE=2.2;const pad2=v=>String(v).padStart(2,\"0\");/** Decode a photo as soon as it arrives instead of on its first paint: otherwise the tile shows empty for a frame\n *  or two when the section is unveiled or a photo is reached for the first time (seen on the recordings). */const whenDecoded=(img,done)=>{const d=typeof img.decode===\"function\"?img.decode():Promise.resolve();d.then(done,done);};function Slide({img,i,n,x,sw,active,zoom,fit,load,sizes,alt}){// 0 when this slide is centred, ±1 one slide away\nconst offset=useTransform([x,sw],([v,s])=>(v+i*s)/Math.max(1,s));const scale=useTransform(offset,o=>1-.07*Math.min(1,Math.abs(o)));const opacity=useTransform(offset,o=>1-.4*Math.min(1,Math.abs(o)));const shift=useTransform([offset,sw],([o,s])=>-clamp(o,-1.5,1.5)*PARALLAX*s);const ref=useRef(null);const[ready,setReady]=useState(false);const imgRef=useRef(null);useEffect(()=>{if(ref.current)ref.current.inert=!active;},[active]);useEffect(()=>{const el=imgRef.current;if(el&&el.complete&&el.naturalWidth>0)whenDecoded(el,()=>setReady(true));},[load]);return /*#__PURE__*/_jsx(\"div\",{ref:ref,className:\"kais-gal-slide\",role:\"group\",\"aria-roledescription\":\"slide\",\"aria-label\":`${i+1} of ${n}`,\"aria-hidden\":!active||undefined,\"data-kais\":\"slide\",\"data-active\":active?\"true\":\"false\",children:/*#__PURE__*/_jsx(motion.div,{className:\"kais-gal-media\",style:{scale,opacity,x:shift},children:/*#__PURE__*/_jsx(\"div\",{className:\"kais-gal-enter\",children:/*#__PURE__*/_jsx(motion.div,{className:\"kais-gal-zoom\",style:zoom?{scale:zoom.s,originX:zoom.ox,originY:zoom.oy}:undefined,children:load&&/*#__PURE__*/_jsx(\"img\",{ref:imgRef,src:img.src,srcSet:img.srcSet,sizes:sizes,alt:alt,draggable:false,decoding:\"async\",onLoad:e=>whenDecoded(e.currentTarget,()=>setReady(true)),className:\"kais-gal-img\",style:{objectFit:fit,opacity:ready?1:0}})})})})});}function Thumb({img,i,n,current,fit,revealed,reduced,uid,onPick,load}){const[ready,setReady]=useState(false);const imgRef=useRef(null);useEffect(()=>{const el=imgRef.current;if(el&&el.complete&&el.naturalWidth>0)whenDecoded(el,()=>setReady(true));},[load]);return /*#__PURE__*/_jsxs(motion.button,{type:\"button\",className:\"kais-gal-thumb\",\"data-kais\":\"thumb\",\"aria-label\":`Show photo ${i+1} of ${n}`,\"aria-current\":current?\"true\":undefined,onClick:()=>onPick(i),initial:false,animate:revealed?{opacity:1,y:0}:{opacity:0,y:10},transition:{duration:revealed?.7:.2,delay:revealed?.45+i*.05:0,ease:EASE_OUT_EXPO},children:[load&&/*#__PURE__*/_jsx(\"img\",{ref:imgRef,src:pickSrc(img,160),alt:\"\",draggable:false,decoding:\"async\",onLoad:e=>whenDecoded(e.currentTarget,()=>setReady(true)),className:\"kais-gal-thumb-img\",style:{objectFit:fit,opacity:ready?undefined:0}}),current&&/*#__PURE__*/_jsx(motion.span,{layoutId:`kais-thumb-${uid}`,className:\"kais-gal-thumb-mark\",transition:reduced?{duration:0}:{type:\"spring\",duration:.6,bounce:0}})]});}/** \"01 / 06\": the current number rolls up (forward) or down (back) on each change. */function Counter({index,n,dir,reduced}){return /*#__PURE__*/_jsxs(\"span\",{className:\"kais-gal-count\",\"data-kais\":\"gallery-count\",\"aria-hidden\":true,children:[/*#__PURE__*/_jsxs(\"span\",{className:\"kais-gal-count-now\",children:[/*#__PURE__*/_jsx(\"span\",{style:{visibility:\"hidden\"},children:pad2(index+1)}),/*#__PURE__*/_jsx(AnimatePresence,{initial:false,custom:dir,children:/*#__PURE__*/_jsx(motion.span,{custom:dir,variants:{in:d=>({y:d>=0?\"100%\":\"-100%\",opacity:0}),on:{y:\"0%\",opacity:1},out:d=>({y:d>=0?\"-100%\":\"100%\",opacity:0})},initial:\"in\",animate:\"on\",exit:\"out\",transition:reduced?{duration:0}:{duration:.5,ease:EASE_OUT_EXPO},style:{position:\"absolute\",left:0,top:0},children:pad2(index+1)},index)})]}),/*#__PURE__*/_jsxs(\"span\",{style:{opacity:.45},children:[\" / \",pad2(n)]})]});}function Gallery({images,tile,fit,zoomable,reduced,isCanvas,revealed,uid,name,primed}){const n=images.length;const[index,setIndex]=useState(0);const[dir,setDir]=useState(1);const indexRef=useRef(0);const[announce,setAnnounce]=useState(\"\");const stageRef=useRef(null);const SW=useExactWidth(stageRef);const swRef=useRef(0);swRef.current=SW;const x=useMotionValue(0);const sw=useMotionValue(SW||1);const anim=useRef(null);const[dragging,setDragging]=useState(false);const[zoomed,setZoomed]=useState(false);const zoomedRef=useRef(false);const zs=useSpring(1,{stiffness:240,damping:30});const ox=useSpring(.5,{stiffness:200,damping:28});const oy=useSpring(.5,{stiffness:200,damping:28});const[finePointer,setFinePointer]=useState(false);const canZoom=zoomable&&finePointer&&!isCanvas;// The photos never compete with the hero: they load once the page has finished loading and the browser is idle,\n// or earlier when the visitor heads for them (BUY hovered or pressed: `primed`, or scrolling into the section)\nconst[warm,setWarm]=useState(isCanvas);useEffect(()=>{if(primed&&!warm)setWarm(true);},[primed]);const rootRef=useRef(null);// a jump in flight: native Web Animations on the two slides' arrival layers (they never write inline styles,\n// so cancelling one always returns its layer to its own opacity 1 / scale 1) and where the track ends up\nconst jump=useRef(null);const settleJump=()=>{const j=jump.current;if(!j)return;jump.current=null;j.anims.forEach(a=>a.cancel());x.set(j.target);};useEffect(()=>{setFinePointer(isBrowser&&!!window.matchMedia&&window.matchMedia(\"(hover: hover) and (pointer: fine)\").matches);},[]);useEffect(()=>{if(warm||!rootRef.current)return;const w=window;let idleId=null;let delay=null;let io=null;const on=()=>setWarm(true);// 1.2 s after the load event, then the first idle moment: three.js and the cap model go first\nconst schedule=()=>delay=setTimeout(()=>idleId=w.requestIdleCallback?w.requestIdleCallback(on,{timeout:3e3}):setTimeout(on,300),1200);if(document.readyState===\"complete\")schedule();else window.addEventListener(\"load\",schedule,{once:true});if(typeof IntersectionObserver!==\"undefined\"){// the section starts right at the fold, so \"near\" means the visitor has actually begun scrolling to it\nio=new IntersectionObserver(([e])=>e.isIntersecting&&on(),{rootMargin:\"0px 0px -5% 0px\"});io.observe(rootRef.current);}return()=>{window.removeEventListener(\"load\",schedule);clearTimeout(delay);if(idleId!==null)w.cancelIdleCallback?w.cancelIdleCallback(idleId):clearTimeout(idleId);io&&io.disconnect();};},[warm]);// keep the track aligned when the stage resizes (no animation)\nuseIsoLayoutEffect(()=>{sw.set(SW||1);if(!dragging){anim.current&&anim.current.stop();x.set(-indexRef.current*SW);}},[SW]);useEffect(()=>{if(indexRef.current>n-1)go(Math.max(0,n-1));},[n]);const setZoom=(on,at,instant=false)=>{if(on&&!canZoom)return;zoomedRef.current=on;if(on&&at)aim(at);setZoomed(on);if(!on&&instant){zs.jump(1);ox.jump(.5);oy.jump(.5);return;}if(!on){ox.set(.5);oy.set(.5);}zs.set(on?ZOOM_SCALE:1);};const aim=e=>{const el=stageRef.current;if(!el)return;const r=el.getBoundingClientRect();ox.set(clamp((e.clientX-r.left)/Math.max(1,r.width),0,1));oy.set(clamp((e.clientY-r.top)/Math.max(1,r.height),0,1));};const go=(to,velocity)=>{if(!n)return;const from=indexRef.current;const k=clamp(Math.round(to),0,n-1);if(zoomedRef.current)setZoom(false,undefined,true);indexRef.current=k;setIndex(k);if(k!==from){setDir(k>from?1:-1);setAnnounce(`Photo ${k+1} of ${n}`);}anim.current&&anim.current.stop();settleJump();const target=-k*swRef.current;if(reduced||!swRef.current){x.set(target);return;}const layers=stageRef.current?stageRef.current.querySelectorAll(\".kais-gal-enter\"):null;if(Math.abs(k-from)>=2&&velocity===undefined&&layers&&layers[from]&&layers[k]&&typeof layers[from].animate===\"function\"){// a jump: no sweep through the photos in between. The photo on screen dissolves, then the track moves\n// under cover and the new photo settles in from 3 % larger. Same image elements, nothing to decode.\nconst out=layers[from];const inn=layers[k];const j={anims:[],target};jump.current=j;const fade=out.animate([{opacity:1},{opacity:0}],{duration:280,easing:\"cubic-bezier(0.4, 0, 1, 1)\",fill:\"forwards\"});j.anims.push(fade);fade.onfinish=()=>{if(jump.current!==j)return;const expo=\"cubic-bezier(0.16, 1, 0.3, 1)\";j.anims.push(inn.animate([{opacity:0},{opacity:1}],{duration:700,easing:expo}));const settle=inn.animate([{transform:\"scale(1.03)\"},{transform:\"scale(1)\"}],{duration:1100,easing:expo});j.anims.push(settle);x.set(target);// the dissolved photo stays at 0 until the track has moved it away (two frames), then lets go\nrequestAnimationFrame(()=>requestAnimationFrame(()=>jump.current===j&&fade.cancel()));settle.onfinish=()=>jump.current===j&&(jump.current=null);};return;}anim.current=animate(x,target,velocity===undefined?NAV_SPRING:{...SWIPE_SPRING,velocity});};// Pointer: horizontal drag (mouse or touch) with rubber-banded ends. A click without movement zooms (onClick).\nconst drag=useRef({id:-1,x0:0,y0:0,base:0,axis:\"\",samples:[],swallowClick:false});const onPointerDown=e=>{if(!n||isCanvas)return;if(e.pointerType===\"mouse\"&&e.button!==0)return;drag.current.swallowClick=false;if(zoomedRef.current)return;anim.current&&anim.current.stop();settleJump();drag.current={id:e.pointerId,x0:e.clientX,y0:e.clientY,base:x.get(),axis:\"\",samples:[{t:performance.now(),x:e.clientX}],swallowClick:false};};const onPointerMove=e=>{if(zoomedRef.current){aim(e);return;}const d=drag.current;if(d.id!==e.pointerId)return;const dx=e.clientX-d.x0;const dy=e.clientY-d.y0;if(!d.axis){if(Math.abs(dx)<6&&Math.abs(dy)<6)return;d.axis=Math.abs(dx)>Math.abs(dy)?\"x\":\"y\";if(d.axis===\"x\"){try{e.currentTarget.setPointerCapture(e.pointerId);}catch(_){}setDragging(true);}else if(n>0&&Math.abs(x.get()- -indexRef.current*swRef.current)>.5){go(indexRef.current)// a vertical scroll that interrupted a settle: finish the settle\n;}}if(d.axis!==\"x\")return;const s=swRef.current;let v=d.base+dx;const min=-(n-1)*s;if(v>0)v=v*.32;if(v<min)v=min+(v-min)*.32;x.set(v);const now=performance.now();d.samples.push({t:now,x:e.clientX});while(d.samples.length>2&&now-d.samples[0].t>100)d.samples.shift();};const onPointerUp=e=>{const d=drag.current;if(d.id!==e.pointerId)return;d.id=-1;if(d.axis!==\"x\"){if(d.axis===\"y\"||n>0&&Math.abs(x.get()- -indexRef.current*swRef.current)>.5)go(indexRef.current);return;}d.swallowClick=true;const a=d.samples[0];const b=d.samples[d.samples.length-1];// a finger that came to rest before letting go is not a flick\nconst vel=b&&a&&b.t>a.t&&performance.now()-b.t<80?(b.x-a.x)/(b.t-a.t)*1e3:0;const s=swRef.current||1;const moved=(x.get()-d.base)/s;let to=indexRef.current;if(Math.abs(vel)>380)to+=vel<0?1:-1;else if(Math.abs(moved)>.18)to+=moved<0?1:-1;setDragging(false);go(to,vel);};const onPointerCancel=e=>{const d=drag.current;if(d.id!==e.pointerId)return;d.id=-1;if(d.axis===\"x\")setDragging(false);go(indexRef.current,0);};const onStageClick=e=>{if(drag.current.swallowClick){drag.current.swallowClick=false;return;}if(zoomedRef.current)setZoom(false);else setZoom(true,e);};const onKeyDown=e=>{const k=e.key;if(k===\"ArrowRight\")go(indexRef.current+1);else if(k===\"ArrowLeft\")go(indexRef.current-1);else if(k===\"Home\")go(0);else if(k===\"End\")go(n-1);else if(k===\"Escape\"&&zoomedRef.current)setZoom(false);else if((k===\"Enter\"||k===\" \")&&canZoom){const r=stageRef.current.getBoundingClientRect();zoomedRef.current?setZoom(false):setZoom(true,{clientX:r.left+r.width/2,clientY:r.top+r.height/2});}else return;e.preventDefault();};// progress line (mobile) follows the track continuously, also mid-drag\nconst progX=useTransform([x,sw],([v,s])=>`${clamp(-v/Math.max(1,s),0,Math.max(0,n-1))*100}%`);const stageW=Math.round(SW)||800;// one size for every photo, zoom included, so the browser never swaps the file under the visitor's cursor\nconst sizes=`${Math.round(stageW*(canZoom?ZOOM_SCALE:1))}px`;const label=`Photos of the ${name}`;const zoomVals=useMemo(()=>({s:zs,ox,oy}),[zs,ox,oy]);const pick=i=>go(i);if(!n)return null;return /*#__PURE__*/_jsxs(\"div\",{ref:rootRef,className:\"kais-gal\",\"data-kais\":\"gallery\",style:{[\"--kais-tile\"]:tile},children:[n>1&&/*#__PURE__*/_jsx(\"div\",{className:\"kais-gal-rail\",\"data-kais\":\"thumbs\",children:images.map((img,i)=>/*#__PURE__*/_jsx(Thumb,{img:img,i:i,n:n,load:warm&&SW>0,current:i===index,fit:fit,revealed:revealed,reduced:reduced,uid:uid,onPick:pick},i))}),/*#__PURE__*/_jsxs(\"div\",{className:\"kais-gal-main\",children:[/*#__PURE__*/_jsx(motion.div,{ref:stageRef,className:\"kais-gal-stage\",\"data-kais\":\"stage-gallery\",\"data-zoomed\":zoomed?\"true\":\"false\",tabIndex:0,role:\"region\",\"aria-roledescription\":\"carousel\",\"aria-label\":label,onPointerDown:onPointerDown,onPointerMove:onPointerMove,onPointerUp:onPointerUp,onPointerCancel:onPointerCancel,onClick:onStageClick,onMouseLeave:()=>zoomedRef.current&&setZoom(false),onKeyDown:onKeyDown,initial:false,animate:revealed?{clipPath:\"inset(0% 0% 0% 0%)\",transitionEnd:{clipPath:\"none\"}}:{clipPath:\"inset(100% 0% 0% 0%)\"},transition:{duration:revealed?1.2:0,ease:EASE_OUT_EXPO},style:{cursor:zoomed?\"zoom-out\":dragging?\"grabbing\":canZoom?\"zoom-in\":\"grab\"},children:/*#__PURE__*/_jsx(motion.div,{className:\"kais-gal-reveal\",initial:false,animate:revealed?{scale:1}:{scale:1.08},transition:{duration:revealed?1.6:0,ease:EASE_OUT_EXPO},children:/*#__PURE__*/_jsx(motion.div,{className:\"kais-gal-track\",\"data-kais\":\"track\",style:{x},children:images.map((img,i)=>/*#__PURE__*/_jsx(Slide,{img:img,i:i,n:n,x:x,sw:sw,active:i===index,zoom:i===index?zoomVals:null,fit:fit,load:warm&&SW>0,sizes:sizes,alt:img.alt||`${name}, photo ${i+1} of ${n}`},i))})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"kais-gal-meta\",initial:false,animate:revealed?{opacity:1}:{opacity:0},transition:{duration:.6,delay:revealed?.6:0,ease:EASE_OUT_EXPO},children:[/*#__PURE__*/_jsx(Counter,{index:index,n:n,dir:dir,reduced:reduced}),n>1&&/*#__PURE__*/_jsx(\"span\",{className:\"kais-gal-progress\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(motion.span,{className:\"kais-gal-progress-fill\",style:{width:`${100/n}%`,x:progX}})}),n>1&&/*#__PURE__*/_jsxs(\"span\",{className:\"kais-gal-arrows\",children:[/*#__PURE__*/_jsx(\"button\",{type:\"button\",className:\"kais-gal-arrow\",\"data-kais\":\"gallery-prev\",\"aria-label\":\"Previous photo\",\"aria-disabled\":index===0,onClick:()=>indexRef.current>0&&go(indexRef.current-1),children:/*#__PURE__*/_jsx(\"svg\",{width:\"18\",height:\"18\",viewBox:\"0 0 18 18\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{d:\"M11 4 6 9l5 5\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"1.1\"})})}),/*#__PURE__*/_jsx(\"button\",{type:\"button\",className:\"kais-gal-arrow\",\"data-kais\":\"gallery-next\",\"aria-label\":\"Next photo\",\"aria-disabled\":index===n-1,onClick:()=>indexRef.current<n-1&&go(indexRef.current+1),children:/*#__PURE__*/_jsx(\"svg\",{width:\"18\",height:\"18\",viewBox:\"0 0 18 18\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{d:\"m7 4 5 5-5 5\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"1.1\"})})})]})]}),/*#__PURE__*/_jsx(\"div\",{className:\"kais-sr\",\"aria-live\":\"polite\",children:announce})]})]});}const CAP_DEFAULTS={source:\"model\",quality:\"auto\",threeUrl:DEFAULT_THREE_URL,frames:[],framesPattern:\"\",frameCount:72,frameStart:1,frameBlend:true,video:\"\",poster:\"\",image:\"\",period:16,direction:\"right\",draggable:true,invertDrag:false,startAngle:330,blend:\"normal\",aspect:1.25,size:54,shadow:true,shadowY:80,showDegrees:true,lineColor:K.navy};const GALLERY_DEFAULTS={images:[],tile:K.paper,fit:\"contain\",zoom:true};const CHECKOUT_DEFAULTS={mode:\"auto\",publishableKey:\"\",sessionEndpoint:\"\",paymentLink:\"\",stripeJsUrl:DEFAULT_STRIPE_JS,prewarm:true};const COPY_DEFAULTS={checkoutEyebrow:\"Checkout\",checkoutSubtitle:\"Built from zero on the Lisbon coast.\",successEyebrow:\"Order confirmed\",successTitle:\"Thank you.\",successSubtitle:\"Welcome to KAIS.\",successText:\"Your order is confirmed. The receipt is on its way to your inbox.\",errorText:\"The checkout could not load. Please try again in a moment.\",retryLabel:\"Try again\",demoNote:\"Preview. The Stripe checkout loads here once the keys are connected.\",demoButton:\"Preview confirmation\",demoSuccessNote:\"Preview only \\xb7 no order placed, nothing charged\",paymentLinkLabel:\"Continue to payment\",backLabel:\"Back to top\"};/** Plain-language configuration problems, shown on the Framer canvas and logged once on the live site. */function configIssues(checkout){const out=[];if(checkout.mode===\"demo\")return out;const pk=(checkout.publishableKey||\"\").trim();const ep=(checkout.sessionEndpoint||\"\").trim();if(/^(sk|rk)_/.test(pk))out.push(\"A SECRET key is in the Publishable key field. Remove it now: it would be public. Use pk_…\");else if(pk&&!/^pk_(test|live)_/.test(pk))out.push(\"Publishable key should start with pk_test_ or pk_live_\");if(ep&&!/^https:\\/\\//.test(ep)&&!/^http:\\/\\/(localhost|127\\.0\\.0\\.1)(:\\d+)?\\//.test(ep))out.push(\"Session URL must start with https://\");if(checkout.mode===\"embedded\"&&!(pk&&ep))out.push(\"Embedded needs Publishable key + Session URL: showing the demo meanwhile\");if(checkout.mode===\"paymentLink\"&&!checkout.paymentLink)out.push(\"Payment Link mode needs a link: showing the demo meanwhile\");return out;}/** Hero height on the Framer canvas (vh there would be the editor window): a 16:10 frame, phone-sized under 810. */const canvasHeroHeight=w=>w>0&&w<MOBILE_BREAKPOINT?844:Math.round(clamp((w||1440)*.625,640,960));export default function KaisCapStore(props){const cap={...CAP_DEFAULTS,...props.cap||{}};const gallery={...GALLERY_DEFAULTS,...props.gallery||{}};const checkout={...CHECKOUT_DEFAULTS,...props.checkout||{}};const copy={...COPY_DEFAULTS,...props.copy||{}};const background=props.background||K.cream;const sectionBg=props.sectionBackground||\"#FFFFFF\";const instanceId=React.useId();const cleanId=instanceId.replace(/[^a-zA-Z0-9_-]/g,\"\");const sectionId=`kais-shop-${cleanId}`;const headId=`kais-shop-title-${cleanId}`;const images=useMemo(()=>normImages(gallery.images),[gallery.images]);const imagesKey=images.map(i=>i.src).join(\"|\");const stableImages=useMemo(()=>images,[imagesKey]);const name=props.wordmark||TITLE_DEFAULT;const target=isBrowser?RenderTarget.current():RenderTarget.export;const isCanvas=target===RenderTarget.canvas||target===RenderTarget.thumbnail;const reduced=!!useReducedMotion();useBrandFonts(props.loadFonts!==false&&!isCanvas);const pkRaw=(checkout.publishableKey||\"\").trim();const pkUsable=/^pk_(test|live)_/.test(pkRaw)// never hand sk_/rk_ (or junk) to Stripe.js\n;const endpoint=(checkout.sessionEndpoint||\"\").trim();const issues=useMemo(()=>configIssues(checkout),[checkout.mode,checkout.publishableKey,checkout.sessionEndpoint,checkout.paymentLink]);const mode=useMemo(()=>{const hasEmbedded=pkUsable&&!!endpoint;if(checkout.mode===\"embedded\")return hasEmbedded?\"embedded\":\"demo\";if(checkout.mode===\"paymentLink\")return checkout.paymentLink?\"paymentLink\":\"demo\";if(checkout.mode===\"demo\")return\"demo\";return hasEmbedded?\"embedded\":checkout.paymentLink?\"paymentLink\":\"demo\";},[checkout.mode,pkUsable,endpoint,checkout.paymentLink]);// Demo is only legitimate when asked for, or when nothing at all is configured yet\nconst demoAllowed=checkout.mode===\"demo\"||checkout.mode===\"auto\"&&!pkRaw&&!endpoint&&!checkout.paymentLink;const misconfigured=!isCanvas&&mode===\"demo\"&&!demoAllowed;useEffect(()=>{if(isCanvas||!issues.length)return;console.warn(\"[KAIS Cap Store] configuration:\\n  • \"+issues.join(\"\\n  • \"));},[isCanvas,issues.join(\"|\")]);// ── Hero layout (unchanged): every number derives from the measured hero box ──\nconst frameRef=useRef(null);const{w:W,h:H}=useElementSize(frameRef);// Stacked phone layout only in portrait; landscape phones keep the desktop composition.\nconst mobile=W>0&&W<MOBILE_BREAKPOINT&&H>=W*.9;const shortH=H>0&&H<600;const pad=mobile?24:clamp(W*.034,shortH?18:28,56);const headerH=mobile?64:shortH?56:88;// One centred group: cap box → degree readout → (page padding) → BUY. The padding is the spacing unit.\nconst readoutH=cap.showDegrees?READOUT_OFFSET+READOUT_LINE:0;const gap=readoutH+pad;const btnW=mobile?Math.max(0,W-pad*2):Math.min(BUY_WIDTH_DESKTOP,Math.max(0,W-pad*2));const regionTop=headerH;const regionBottom=H-pad;const regionH=Math.max(0,regionBottom-regionTop);// Box proportion follows the media: the line drawing's full-turn bounds, or the footage's own aspect\nconst aspect=cap.source===\"model\"?Cap3D.MODEL_BOUNDS.w/Cap3D.MODEL_BOUNDS.h:cap.source===\"placeholder\"||!(cap.aspect>0)?cap.source===\"placeholder\"?CAP_BOUNDS.w/CAP_BOUNDS.h:1.25:cap.aspect;const desiredH=mobile?regionH:H*cap.size/100;const capW=Math.max(0,mobile?W-8:Math.min(W-pad*2,desiredH*aspect));const capH=Math.max(0,Math.min(desiredH,regionH-gap-BUY_HEIGHT,capW/aspect));const groupH=capH+gap+BUY_HEIGHT;// centred on the page, never under the title, never past the bottom padding\nconst groupTop=clamp((H-groupH)/2,regionTop,Math.max(regionTop,regionBottom-groupH));const capCy=groupTop+capH/2;const buyTop=groupTop+capH+gap;// State\nconst[entered,setEntered]=useState(isCanvas);const[cstate,setCstate]=useState(\"idle\");const cstateRef=useRef(cstate);cstateRef.current=cstate;const[iframeReady,setIframeReady]=useState(false);const[revealed,setRevealed]=useState(isCanvas);const[primed,setPrimed]=useState(false)// the visitor is heading for the photos: load them now\n;const revealedRef=useRef(revealed);revealedRef.current=revealed;const revealTimer=useRef(null);const rootRef=useRef(null);const sectionRef=useRef(null);const buyRef=useRef(null);const headRef=useRef(null);const columnRef=useRef(null);const mountRef=useRef(null);const degRef=useRef(null);const successRef=useRef(null);const viewerApi=useRef(null);const ctl=useRef({instance:null,preparing:null,disposed:false,generation:0,createdAt:0,stopWatch:null});const hoverTimer=useRef(null);const successShown=useRef(false);const openedOnce=useRef(false);const[heightIssue,setHeightIssue]=useState(false);// Entrance: wait for fonts (max 450 ms) so nothing swaps mid-reveal\nuseEffect(()=>{if(isCanvas)return;let done=false;const go=()=>{if(!done){done=true;setEntered(true);}};const t=setTimeout(go,450);const fonts=document.fonts;if(fonts&&fonts.ready)fonts.ready.then(()=>setTimeout(go,30));return()=>clearTimeout(t);},[isCanvas]);// Stripe.js warm-up once the page has loaded (never delays the load event), then on idle\nuseEffect(()=>{if(mode!==\"embedded\"||isCanvas)return;const w=window;let idleId=null;const run=()=>loadStripeJs(checkout.stripeJsUrl||DEFAULT_STRIPE_JS).catch(()=>{});const schedule=()=>idleId=w.requestIdleCallback?w.requestIdleCallback(run,{timeout:2500}):setTimeout(run,1200);if(document.readyState===\"complete\")schedule();else window.addEventListener(\"load\",schedule,{once:true});return()=>{window.removeEventListener(\"load\",schedule);if(idleId!==null)w.cancelIdleCallback?w.cancelIdleCallback(idleId):clearTimeout(idleId);};},[mode,isCanvas,checkout.stripeJsUrl]);/** Tear down this instance's checkout. */const resetCheckout=useCallback(()=>{const c=ctl.current;c.generation++// invalidates any prepare still in flight\n;c.stopWatch&&c.stopWatch();c.stopWatch=null;try{c.instance&&c.instance.destroy();}catch(_){}c.instance=null;c.preparing=null;c.createdAt=0;setIframeReady(false);},[]);/** Another instance (another Framer breakpoint) is taking the page's single checkout. */const releaseRef=useRef(()=>{});releaseRef.current=()=>{resetCheckout();setCstate(s=>s===\"success\"?s:\"idle\");};const isHidden=()=>!rootRef.current||rootRef.current.offsetParent===null;const sectionTop=()=>{const s=sectionRef.current;return s?s.getBoundingClientRect().top+window.scrollY:0;};/** Glide to the product section, then hand focus to its heading (screen readers land where the eye does). */const toSection=focusEl=>{if(!isBrowser||!sectionRef.current)return;const top=sectionTop();// the photos unveil while the section arrives, not before it is on screen\nconst lead=reduced?0:glideDuration(top-window.scrollY)*.4;clearTimeout(revealTimer.current);if(lead>0&&!revealedRef.current)revealTimer.current=setTimeout(()=>setRevealed(true),lead);else setRevealed(true);glideTo(top,reduced).then(arrived=>{// only if the glide arrived and focus is still where the visitor left it (BUY or nowhere)\nconst a=document.activeElement;if(!arrived||a&&a!==document.body&&a!==buyRef.current)return;const el=focusEl||headRef.current;el&&el.focus({preventScroll:true});});};const handleComplete=useRef(()=>{});handleComplete.current=()=>{const c=ctl.current;c.stopWatch&&c.stopWatch();c.stopWatch=null;try{c.instance&&c.instance.destroy();}catch(_){}c.instance=null;c.createdAt=0;track(\"purchase\");if(isHidden()&&isBrowser){// Another breakpoint's instance is the one on screen: let it show the confirmation\nwindow.dispatchEvent(new CustomEvent(SUCCESS_HANDOFF,{detail:{from:instanceId}}));setCstate(\"idle\");return;}showSuccess();};const showSuccess=()=>{setCstate(\"success\");viewerApi.current&&viewerApi.current.kick(1.1);// the form was long and the confirmation is short: bring its top into view if it slid above the fold\nrequestAnimationFrame(()=>{const col=columnRef.current;if(!col)return;const top=col.getBoundingClientRect().top;if(top<0||top>window.innerHeight*.6)glideTo(Math.max(0,top+window.scrollY-24),reduced);});};const showSuccessRef=useRef(showSuccess);showSuccessRef.current=showSuccess;useEffect(()=>{const on=e=>{const from=e.detail&&e.detail.from;if(from===instanceId||isHidden())return;showSuccessRef.current();};window.addEventListener(SUCCESS_HANDOFF,on);return()=>window.removeEventListener(SUCCESS_HANDOFF,on);},[instanceId]);/** `force`: an explicit request (BUY pressed, Try again). Hover and press prewarms never replace a confirmation\n     *  or retry an error behind the visitor's back. */const prepare=useCallback(force=>{if(mode!==\"embedded\"||isCanvas)return;const c=ctl.current;if(c.disposed||c.instance||c.preparing)return;if(force!==true&&(cstateRef.current===\"success\"||cstateRef.current===\"error\"))return;// Claim the page's single checkout slot before any await\nconst owner=checkoutOwner.current;if(owner&&owner.id!==instanceId)owner.release();checkoutOwner.current={id:instanceId,release:()=>releaseRef.current()};const gen=++c.generation;setCstate(\"loading\");setIframeReady(false);const run=(async()=>{const[StripeCtor,secret]=await Promise.all([loadStripeJs(checkout.stripeJsUrl||DEFAULT_STRIPE_JS),fetchClientSecret(endpoint,pkRaw)]);if(c.disposed||gen!==c.generation)return;// Wait for any other instance's pending create() to settle and be torn down first\nawait checkoutSettled;if(c.disposed||gen!==c.generation)return;const stripe=getStripe(StripeCtor,pkRaw);const create=stripe.createEmbeddedCheckoutPage||stripe.initEmbeddedCheckout;if(!create)throw new Error(\"This Stripe.js build exposes no embedded checkout\");let settle=()=>{};checkoutSettled=new Promise(r=>settle=r);let instance;try{instance=await create.call(stripe,{fetchClientSecret:()=>Promise.resolve(secret),onComplete:()=>handleComplete.current()});}catch(err){settle();throw err;}if(c.disposed||gen!==c.generation||!mountRef.current){try{instance.destroy();}catch(_){}settle();return;}settle();c.stopWatch&&c.stopWatch();c.stopWatch=watchIframeLoad(mountRef.current,()=>{setIframeReady(true);track(\"checkout_ready\");});try{instance.mount(mountRef.current);}catch(err){c.stopWatch&&c.stopWatch();c.stopWatch=null;try{instance.destroy();}catch(_){}throw err;}c.instance=instance;c.createdAt=Date.now();setCstate(\"ready\");})();c.preparing=run;run.catch(err=>{if(gen!==c.generation||c.disposed)return;console.error(\"[KAIS Cap Store] checkout could not start:\",err);setCstate(\"error\");track(\"error\",{message:String(err&&err.message||err)});}).finally(()=>{if(c.preparing===run)c.preparing=null;});},[mode,isCanvas,checkout.stripeJsUrl,endpoint,pkRaw,instanceId]);// Lifecycle (StrictMode-safe: the re-run clears `disposed`)\nuseEffect(()=>{const c=ctl.current;c.disposed=false;return()=>{c.disposed=true;clearTimeout(hoverTimer.current);clearTimeout(revealTimer.current);c.generation++;c.stopWatch&&c.stopWatch();try{c.instance&&c.instance.destroy();}catch(_){}c.instance=null;c.preparing=null;if(checkoutOwner.current&&checkoutOwner.current.id===instanceId)checkoutOwner.current=null;};},[instanceId]);// A live site that asked for a checkout it cannot run says so in the section (never the demo)\nuseEffect(()=>{if(!misconfigured)return;setCstate(\"error\");console.error(\"[KAIS Cap Store] checkout is misconfigured:\\n  • \"+issues.join(\"\\n  • \"));},[misconfigured]);/** Make sure a fresh, mountable checkout exists (sessions older than 23 h are replaced). */const ensureCheckout=via=>{const c=ctl.current;if(!openedOnce.current){openedOnce.current=true;track(\"open\",{mode,via});}if(misconfigured)return;// an error stays with its \"Try again\" until the visitor acts (retry or BUY); scrolling never retries it\nif(cstateRef.current===\"error\"&&via!==\"buy\")return;if(cstateRef.current===\"success\"){// the confirmation stays until the visitor has seen it AND presses BUY again (scrolling never replaces it)\nif(via!==\"buy\"||!successShown.current)return;successShown.current=false;cstateRef.current=\"idle\";setCstate(\"idle\");}if(c.instance&&c.createdAt&&Date.now()-c.createdAt>SESSION_MAX_AGE_MS)resetCheckout();prepare(true);};// BUY: one eased glide down to the product section; the session starts at the same moment\nconst onBuy=()=>{setPrimed(true);openedOnce.current=false;ensureCheckout(\"buy\");if(misconfigured)track(\"error\",{message:\"misconfigured\"});toSection();};// The section approaching the viewport starts the checkout too (a visitor who scrolls instead of tapping BUY)\nconst ensureRef=useRef(ensureCheckout);ensureRef.current=ensureCheckout;useEffect(()=>{const s=sectionRef.current;if(!s||isCanvas||typeof IntersectionObserver===\"undefined\"){if(!isCanvas&&typeof IntersectionObserver===\"undefined\")setRevealed(true);return;}const io=new IntersectionObserver(([e])=>{if(!e.isIntersecting)return;setRevealed(true);ensureRef.current(\"scroll\");},{rootMargin:\"0px 0px -18% 0px\",threshold:0});io.observe(s);return()=>io.disconnect();},[isCanvas]);// The confirmation must be SEEN before a new session replaces it\nuseEffect(()=>{if(cstate!==\"success\")return;const t=setTimeout(()=>{if(isHidden())return;successShown.current=true;successRef.current&&successRef.current.focus({preventScroll:true});},160);return()=>clearTimeout(t);},[cstate]);// Framer canvas: the component has to be \"Fit content\" tall now; say so if its frame cuts it short\nuseEffect(()=>{if(!isCanvas||!rootRef.current)return;const check=()=>{const r=rootRef.current;const p=r&&r.parentElement;setHeightIssue(!!(r&&p&&p.offsetHeight>0&&p.offsetHeight+2<r.offsetHeight));};check();const ro=new ResizeObserver(check);rootRef.current.parentElement&&ro.observe(rootRef.current.parentElement);ro.observe(rootRef.current);return()=>ro.disconnect();},[isCanvas]);const onDegrees=useCallback(deg=>{if(degRef.current)degRef.current.textContent=String(deg).padStart(3,\"0\")+\"\\xb0\";},[]);// The readout's text is owned by the loop (no React children), so seed it here\nuseEffect(()=>{onDegrees(Math.round(wrap01(cap.startAngle/360)*360)%360);},[cap.startAngle,cap.showDegrees,onDegrees]);const animateLoop=!isCanvas;const enter=(delay,y=6,duration=.5)=>({initial:{opacity:0,y},animate:entered?{opacity:1,y:0}:{opacity:0,y},transition:{duration,delay,ease:EASE_OUT_EXPO}});const theme=COLUMN_THEME;const heroH=isCanvas?canvasHeroHeight(W||(rootRef.current?rootRef.current.offsetWidth:0)):undefined;// ── Hero ──\nconst stage=/*#__PURE__*/_jsxs(\"div\",{ref:frameRef,\"data-kais\":\"stage\",style:{position:\"absolute\",left:0,right:0,top:0,bottom:0,overflow:\"hidden\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",left:pad,right:pad,top:0,height:headerH,display:\"flex\",alignItems:\"center\",zIndex:3},children:/*#__PURE__*/_jsx(motion.h1,{...enter(0,8),\"data-kais\":\"title\",style:{margin:0,fontSize:\"inherit\",fontWeight:\"inherit\",lineHeight:1},children:/*#__PURE__*/_jsx(\"a\",{href:props.logoLink||undefined,style:{display:\"inline-block\",textDecoration:\"none\",color:K.navy,fontFamily:F.display,fontWeight:700,fontSize:mobile?19:21,letterSpacing:TITLE_TRACKING,whiteSpace:\"nowrap\"},children:name})})}),/*#__PURE__*/_jsxs(\"div\",{\"data-kais\":\"cap\",style:{position:\"absolute\",left:\"50%\",top:capCy,width:capW,height:capH,marginLeft:-capW/2,marginTop:-capH/2,zIndex:1},children:[/*#__PURE__*/_jsxs(motion.div,{initial:{opacity:0,scale:.96},animate:entered?{opacity:1,scale:1}:{opacity:0,scale:.96},transition:{duration:.7,delay:.1,ease:EASE_OUT_EXPO},style:{position:\"absolute\",inset:0},children:[cap.blend===\"multiply\"&&/*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":true,style:{position:\"absolute\",inset:0,background,pointerEvents:\"none\"}}),cap.shadow&&/*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":true,className:isCanvas||reduced?undefined:\"kais-breathe\",style:{position:\"absolute\",left:\"22%\",width:\"56%\",top:`${cap.shadowY}%`,height:\"9%\",background:`radial-gradient(50% 50% at 50% 50%, rgba(26,39,68,0.55) 0%, rgba(26,39,68,0.18) 45%, rgba(26,39,68,0) 100%)`,filter:\"blur(10px)\",opacity:.18,pointerEvents:\"none\"}}),/*#__PURE__*/_jsx(CapViewer,{ref:viewerApi,cap:cap,animate:animateLoop,reduced:reduced,onDegrees:cap.showDegrees?onDegrees:undefined})]}),cap.showDegrees&&/*#__PURE__*/_jsx(motion.span,{\"aria-hidden\":true,initial:{opacity:0},animate:{opacity:entered?.5:0},transition:{duration:.6,delay:entered?.45:0,ease:EASE_OUT_EXPO},style:{position:\"absolute\",left:0,right:0,top:\"100%\",marginTop:READOUT_OFFSET,lineHeight:`${READOUT_LINE}px`,textAlign:\"center\",fontFamily:F.label,fontWeight:200,fontSize:9,letterSpacing:\"0.3em\",color:K.navy,fontVariantNumeric:\"tabular-nums\"},children:/*#__PURE__*/_jsx(\"span\",{ref:degRef})})]}),/*#__PURE__*/_jsx(motion.div,{\"data-kais\":\"buy-wrap\",...enter(.35,6,.45),style:{position:\"absolute\",left:\"50%\",top:buyTop,width:btnW,marginLeft:-btnW/2,zIndex:2},children:/*#__PURE__*/_jsx(BuyButton,{buttonRef:buyRef,label:props.buyLabel||\"BUY\",controls:sectionId,onClick:onBuy,onPress:()=>{setPrimed(true);checkout.prewarm&&prepare();},onIntent:()=>{setPrimed(true);if(!checkout.prewarm||mode!==\"embedded\")return;clearTimeout(hoverTimer.current);hoverTimer.current=setTimeout(()=>prepare(),140);},onIntentCancel:()=>clearTimeout(hoverTimer.current)})})]});// ── Checkout column ──\nconst showStripe=mode===\"embedded\"&&(cstate===\"loading\"||cstate===\"ready\");const colEnter=k=>({initial:false,animate:revealed?{opacity:1,y:0}:{opacity:0,y:8},transition:{duration:.6,delay:revealed?.25+k*.07:0,ease:EASE_OUT_EXPO}});const column=/*#__PURE__*/_jsxs(\"div\",{ref:columnRef,className:\"kais-co\",\"data-kais\":\"checkout\",style:{color:theme.text},children:[/*#__PURE__*/_jsxs(\"div\",{className:\"kais-co-head\",children:[/*#__PURE__*/_jsx(motion.span,{...colEnter(0),style:{display:\"block\",fontFamily:F.label,fontWeight:300,fontSize:11,letterSpacing:\"0.3em\",textTransform:\"uppercase\",color:theme.accent},children:cstate===\"success\"?copy.successEyebrow:copy.checkoutEyebrow}),/*#__PURE__*/_jsx(motion.h2,{ref:headRef,id:headId,tabIndex:-1,className:\"kais-focus-quiet\",\"data-kais\":\"shop-title\",...colEnter(1),style:{margin:\"18px 0 0\",fontFamily:F.display,fontWeight:700,fontSize:26,lineHeight:1.1,letterSpacing:\"0.04em\",color:theme.text},children:name}),/*#__PURE__*/_jsx(motion.p,{...colEnter(2),style:{margin:\"10px 0 0\",fontFamily:F.serif,fontStyle:\"italic\",fontWeight:700,fontSize:19,lineHeight:1.3,color:theme.muted},children:cstate===\"success\"?copy.successSubtitle:copy.checkoutSubtitle}),/*#__PURE__*/_jsx(motion.div,{\"aria-hidden\":true,initial:false,animate:{scaleX:revealed?1:0},transition:{duration:.9,delay:revealed?.4:0,ease:EASE_OUT_EXPO},style:{height:1,background:theme.hair,marginTop:24,transformOrigin:\"0% 50%\"}})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"kais-co-body\",\"data-kais\":\"scroll\",initial:false,animate:{opacity:revealed?1:0},transition:{duration:.6,delay:revealed?.5:0},children:[/*#__PURE__*/_jsx(\"div\",{ref:mountRef,\"data-kais\":\"stripe-mount\",style:{display:showStripe?\"block\":\"none\",opacity:iframeReady?1:0,transition:\"opacity .5s cubic-bezier(.16,1,.3,1)\",minHeight:cstate===\"ready\"&&!iframeReady?1:undefined}}),isCanvas&&mode===\"embedded\"||mode===\"embedded\"&&(cstate===\"idle\"||cstate===\"loading\"||cstate===\"ready\"&&!iframeReady)?/*#__PURE__*/_jsx(\"div\",{style:{position:cstate===\"ready\"&&!iframeReady?\"absolute\":\"relative\",left:0,right:0,top:cstate===\"ready\"&&!iframeReady?0:undefined},children:/*#__PURE__*/_jsx(Skeleton,{theme:theme,still:isCanvas||cstate===\"idle\"})}):null,cstate===\"error\"&&/*#__PURE__*/_jsxs(\"div\",{\"data-kais\":\"error\",role:\"alert\",style:{display:\"grid\",gap:20,justifyItems:\"start\"},children:[/*#__PURE__*/_jsx(\"p\",{style:{margin:0,fontFamily:F.body,fontWeight:300,fontSize:15,lineHeight:1.6,color:theme.text},children:copy.errorText}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",gap:12,flexWrap:\"wrap\"},children:[!misconfigured&&/*#__PURE__*/_jsx(TextButton,{theme:theme,solid:true,dataKais:\"retry\",onClick:()=>{cstateRef.current=\"idle\";setCstate(\"idle\");setTimeout(()=>prepare(true),0);},children:copy.retryLabel}),checkout.paymentLink?/*#__PURE__*/_jsx(TextButton,{theme:theme,solid:misconfigured,onClick:()=>window.open(checkout.paymentLink,\"_blank\",\"noopener\"),children:\"Stripe ↗\"}):null]})]}),cstate===\"success\"&&/*#__PURE__*/_jsxs(motion.div,{\"data-kais\":\"success\",role:\"status\",initial:{opacity:0,y:10},animate:{opacity:1,y:0},transition:{duration:.7,ease:EASE_OUT_EXPO},style:{display:\"grid\",gap:18,justifyItems:\"start\",paddingTop:4},children:[/*#__PURE__*/_jsx(\"h3\",{ref:successRef,tabIndex:-1,className:\"kais-focus-quiet\",style:{margin:0,fontFamily:F.display,fontWeight:600,fontSize:37,lineHeight:1.05,color:theme.text},children:copy.successTitle}),/*#__PURE__*/_jsx(\"p\",{style:{margin:0,fontFamily:F.body,fontWeight:300,fontSize:15,lineHeight:1.6,color:theme.muted,maxWidth:380},children:copy.successText}),mode===\"demo\"&&/*#__PURE__*/_jsx(\"p\",{\"data-kais\":\"demo-note\",style:{margin:0,fontFamily:F.label,fontWeight:300,fontSize:10,letterSpacing:\"0.2em\",textTransform:\"uppercase\",color:theme.accent},children:copy.demoSuccessNote}),/*#__PURE__*/_jsx(TextButton,{theme:theme,dataKais:\"back\",onClick:()=>glideTo(0,reduced).then(arrived=>arrived&&buyRef.current&&buyRef.current.focus({preventScroll:true})),children:copy.backLabel})]}),mode===\"paymentLink\"&&cstate!==\"success\"&&cstate!==\"error\"&&/*#__PURE__*/_jsx(\"div\",{\"data-kais\":\"payment-link\",style:{display:\"grid\",gap:18,justifyItems:\"start\"},children:/*#__PURE__*/_jsxs(TextButton,{theme:theme,solid:true,dataKais:\"payment-link-open\",onClick:()=>{track(\"open\",{mode,via:\"link\"});window.open(checkout.paymentLink,\"_blank\",\"noopener\");},children:[copy.paymentLinkLabel,\" ↗\"]})}),mode===\"demo\"&&!misconfigured&&cstate!==\"success\"&&/*#__PURE__*/_jsxs(\"div\",{\"data-kais\":\"demo\",style:{display:\"grid\",gap:22},children:[/*#__PURE__*/_jsx(Skeleton,{theme:theme,still:isCanvas}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"grid\",gap:14,justifyItems:\"start\"},children:[/*#__PURE__*/_jsx(\"p\",{style:{margin:0,fontFamily:F.body,fontWeight:300,fontSize:13,lineHeight:1.6,color:theme.muted},children:copy.demoNote}),/*#__PURE__*/_jsx(TextButton,{theme:theme,dataKais:\"demo-complete\",onClick:()=>{setCstate(\"success\");track(\"purchase\",{demo:true});},children:copy.demoButton})]})]})]})]});const canvasIssues=[...issues,...images.length?[]:[\"Gallery: add the photos in Gallery → Images (the section shows the checkout alone meanwhile)\"],...heightIssue?[\"Set this layer's Height to Fit Content: the product section sits under the hero\"]:[]];return /*#__PURE__*/_jsx(MotionConfig,{reducedMotion:\"user\",children:/*#__PURE__*/_jsxs(\"div\",{ref:rootRef,className:\"kais-root\",\"data-kais\":\"root\",style:{position:\"relative\",width:\"100%\",...props.style,height:\"auto\",background:sectionBg},children:[/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:CSS}}),/*#__PURE__*/_jsxs(\"div\",{className:\"kais-hero\",\"data-kais\":\"hero\",style:{position:\"relative\",height:heroH,background,overflow:\"hidden\"},children:[isCanvas&&/*#__PURE__*/_jsx(CanvasStatus,{mode:mode,requested:checkout.mode,pk:pkRaw,issues:canvasIssues}),props.grain&&/*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":true,className:\"kais-grain\",style:{position:\"absolute\",inset:0,zIndex:5,pointerEvents:\"none\"}}),stage]}),/*#__PURE__*/_jsx(\"section\",{ref:sectionRef,id:sectionId,className:\"kais-shop\",\"data-kais\":\"shop\",\"data-cols\":images.length?\"2\":\"1\",\"aria-labelledby\":headId,style:{background:sectionBg},children:/*#__PURE__*/_jsxs(\"div\",{className:\"kais-shop-inner\",children:[images.length>0&&/*#__PURE__*/_jsx(Gallery,{images:stableImages,tile:gallery.tile||K.paper,fit:gallery.fit===\"cover\"?\"cover\":\"contain\",zoomable:gallery.zoom!==false,reduced:reduced,isCanvas:isCanvas,revealed:revealed||reduced,uid:cleanId,name:name,primed:primed}),column]})})]})});}const GRAIN_SVG=\"data:image/svg+xml;utf8,\"+encodeURIComponent(`<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.10  0 0 0 0 0.15  0 0 0 0 0.27  0 0 0 0.55 0'/></filter><rect width='100%' height='100%' filter='url(#n)'/></svg>`);/**\n * Layout of the product section in CSS (container queries on the component's own width), so the server render\n * and the first paint already have the right columns: stacked under 960 px, gallery | checkout above it.\n * --kais-pad follows the hero's padding rule (3.4 % of the width, 28–56 px).\n */const CSS=`\n.kais-root, .kais-root * { box-sizing: border-box; }\n.kais-root { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-rendering: optimizeLegibility; overflow-x: clip; }\n/* isolate: keeps the hero painted on its own, exactly as before the product section existed (Chrome otherwise\n   merges it with the section's sticky gallery and drops its subpixel text antialiasing) */\n.kais-hero { height: 100vh; height: 100svh; isolation: isolate; }\n.kais-sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }\n.kais-buy:focus-visible { outline: 2px solid ${K.navy}; outline-offset: 3px; }\n.kais-textbtn:focus-visible, .kais-gal-thumb:focus-visible, .kais-gal-arrow:focus-visible { outline: 1px solid currentColor; outline-offset: 2px; }\n.kais-gal-stage:focus-visible { outline: 1px solid ${K.navy}; outline-offset: 4px; }\n.kais-focus-quiet:focus { outline: none; }\n.kais-textbtn { transition: background-color .25s cubic-bezier(.45,0,.15,1), color .25s cubic-bezier(.45,0,.15,1), border-color .25s cubic-bezier(.45,0,.15,1); }\n.kais-grain { background-image: url(\"${GRAIN_SVG}\"); background-size: 220px 220px; opacity: .06; mix-blend-mode: multiply; }\n@keyframes kais-breathe { 0%, 100% { opacity: .15 } 50% { opacity: .22 } }\n.kais-breathe { animation: kais-breathe 5.2s cubic-bezier(.45,0,.15,1) infinite; }\n@keyframes kais-shimmer { 0% { background-position: 150% 0 } 100% { background-position: -50% 0 } }\n.kais-shimmer { animation: kais-shimmer 1.8s cubic-bezier(.45,0,.15,1) infinite; }\n\n/* the section is its own size container (on the root it would also touch the hero's text rendering) */\n.kais-shop { position: relative; min-height: 100vh; min-height: 100svh; container-type: inline-size; container-name: kais; --kais-pad: clamp(24px, 3.4cqw, 56px); --kais-vh: 100vh; }\n@supports (height: 100svh) { .kais-shop { --kais-vh: 100svh; } }\n.kais-shop-inner { display: grid; grid-template-columns: minmax(0, 1fr); row-gap: 36px; padding: 0 0 72px; }\n.kais-co { padding: 0 24px; width: 100%; max-width: 560px; margin: 0 auto; }\n.kais-shop[data-cols=\"1\"] .kais-co { padding-top: 56px; }\n.kais-co-body { position: relative; margin-top: 28px; }\n\n.kais-gal { position: relative; min-width: 0; }\n.kais-gal-rail { display: none; }\n.kais-gal-main { display: flex; flex-direction: column; align-items: center; min-width: 0; }\n.kais-gal-stage { position: relative; width: min(100%, 72vh); width: min(100%, 72svh); aspect-ratio: 1 / 1; overflow: hidden; background: var(--kais-tile); touch-action: pan-y; user-select: none; -webkit-user-select: none; -webkit-tap-highlight-color: transparent; outline: none; }\n.kais-gal-reveal, .kais-gal-track { position: absolute; inset: 0; }\n.kais-gal-track { display: flex; will-change: transform; }\n.kais-gal-slide { position: relative; flex: 0 0 100%; height: 100%; }\n.kais-gal-media, .kais-gal-enter, .kais-gal-zoom { position: absolute; inset: 0; }\n.kais-gal-img { position: absolute; inset: 0; width: 100%; height: 100%; display: block; pointer-events: none; transition: opacity .6s cubic-bezier(.16,1,.3,1); -webkit-user-drag: none; }\n/* stacked: the counter row lines up with the checkout text below it (560 px column) and never outgrows the photo */\n.kais-gal-meta { width: min(100%, 560px, 72vh); width: min(100%, 560px, 72svh); display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 18px; padding: 16px 24px 0; color: ${K.navy}; }\n.kais-gal-count { font-family: ${F.label}; font-weight: 200; font-size: 9px; line-height: 16px; letter-spacing: .3em; font-variant-numeric: tabular-nums; white-space: nowrap; opacity: .8; }\n.kais-gal-count-now { position: relative; display: inline-block; vertical-align: top; overflow: hidden; }\n.kais-gal-progress { position: relative; height: 1px; background: ${COLUMN_THEME.hair}; overflow: hidden; }\n.kais-gal-progress-fill { position: absolute; left: 0; top: 0; bottom: 0; background: ${K.navy}; }\n.kais-gal-arrows { display: none; justify-self: end; gap: 4px; }\n.kais-gal-arrow { width: 36px; height: 36px; display: grid; place-items: center; border: 0; background: transparent; color: ${K.navy}; cursor: pointer; border-radius: 0; transition: opacity .25s cubic-bezier(.45,0,.15,1), transform .35s cubic-bezier(.16,1,.3,1); }\n.kais-gal-arrow:hover:not([aria-disabled=\"true\"]) { transform: translateX(var(--kais-nudge, 0)); }\n.kais-gal-arrow[data-kais=\"gallery-prev\"] { --kais-nudge: -2px; }\n.kais-gal-arrow[data-kais=\"gallery-next\"] { --kais-nudge: 2px; }\n.kais-gal-arrow[aria-disabled=\"true\"] { opacity: .22; cursor: default; }\n.kais-gal-thumb { position: relative; display: block; width: 64px; height: 64px; padding: 0; border: 0; background: var(--kais-tile); cursor: pointer; border-radius: 0; }\n.kais-gal-thumb-img { position: absolute; inset: 0; width: 100%; height: 100%; display: block; pointer-events: none; opacity: .5; transition: opacity .5s cubic-bezier(.16,1,.3,1); }\n.kais-gal-thumb:hover .kais-gal-thumb-img { opacity: .8; }\n.kais-gal-thumb[aria-current=\"true\"] .kais-gal-thumb-img { opacity: 1; }\n.kais-gal-thumb-mark { position: absolute; inset: 0; border: 1px solid ${K.navy}; pointer-events: none; }\n\n@container kais (min-width: 960px) {\n  /* photo square = the screen height minus the padding and the counter row; the photo column never grows past\n     rail + photo, so on wide screens the whole composition stays together and centred */\n  .kais-shop-inner { --kais-stage: calc(var(--kais-vh) - 2 * var(--kais-pad) - 52px); grid-template-columns: minmax(0, calc(84px + var(--kais-stage))) clamp(400px, 37cqw, 540px); column-gap: clamp(40px, 4.5cqw, 88px); justify-content: center; align-items: start; padding: var(--kais-pad) var(--kais-pad) calc(var(--kais-pad) * 2); }\n  .kais-shop[data-cols=\"1\"] .kais-shop-inner { grid-template-columns: minmax(0, 560px); justify-content: center; }\n  .kais-co { padding: 0; max-width: none; margin: 0; }\n  .kais-shop[data-cols=\"1\"] .kais-co { padding-top: 0; }\n  .kais-gal { position: sticky; top: var(--kais-pad); display: grid; grid-template-columns: 64px minmax(0, 1fr); column-gap: 20px; align-items: start; }\n  .kais-gal-rail { display: grid; gap: 10px; align-content: start; }\n  .kais-gal-main { align-items: flex-start; }\n  .kais-gal-stage, .kais-gal-meta { width: min(100%, var(--kais-stage)); }\n  .kais-gal-meta { grid-template-columns: auto 1fr auto; padding: 14px 0 0; }\n  .kais-gal-progress { visibility: hidden; }\n  .kais-gal-arrows { display: flex; }\n}\n@media (prefers-reduced-motion: reduce) { .kais-breathe, .kais-shimmer { animation: none; } .kais-gal-img, .kais-gal-arrow, .kais-gal-thumb-img { transition: none; } }\n`;KaisCapStore.displayName=\"KAIS Cap Store\";// ─── Property controls ───────────────────────────────────────────────────────\n// hidden() inside an Object control: read the field from the object's props or, failing that, from root props\nconst capField=(p,k)=>p&&k in p?p[k]:p&&p.cap?p.cap[k]:undefined;addPropertyControls(KaisCapStore,{buyLabel:{type:ControlType.String,title:\"Button\",defaultValue:\"BUY\"},wordmark:{type:ControlType.String,title:\"Title\",defaultValue:TITLE_DEFAULT,description:\"Top left, Tektur. Also the page's h1.\"},logoLink:{type:ControlType.Link,title:\"Title link\",defaultValue:\"https://kaisfc.com\"},cap:{type:ControlType.Object,title:\"Cap 360\\xb0\",controls:{source:{type:ControlType.Enum,title:\"Source\",options:[\"model\",\"placeholder\",\"frames\",\"video\",\"image\"],optionTitles:[\"3D model\",\"Line drawing\",\"Frames\",\"Video\",\"Still image\"],defaultValue:CAP_DEFAULTS.source,description:\"3D model: the real KAIS cap, rebuilt in 3D from the reference photos.\"},quality:{type:ControlType.Enum,title:\"Quality\",options:[\"auto\",\"high\",\"low\"],optionTitles:[\"Auto\",\"High\",\"Light\"],displaySegmentedControl:true,defaultValue:\"auto\",hidden:p=>(capField(p,\"source\")||\"model\")!==\"model\"},threeUrl:{type:ControlType.String,title:\"three.js URL\",defaultValue:DEFAULT_THREE_URL,description:\"ES module build of three.js (r160+). Leave as is unless you self-host it.\",hidden:p=>(capField(p,\"source\")||\"model\")!==\"model\"},frames:{type:ControlType.Array,title:\"Frames\",control:{type:ControlType.ResponsiveImage},hidden:p=>capField(p,\"source\")!==\"frames\"},framesPattern:{type:ControlType.String,title:\"Frames URL\",placeholder:\"https://…/cap-frame-{nnn}.webp\",description:\"Used when the Frames list is empty. {nnn} = zero-padded index.\",hidden:p=>capField(p,\"source\")!==\"frames\"},frameCount:{type:ControlType.Number,title:\"Count\",min:2,max:360,step:1,defaultValue:CAP_DEFAULTS.frameCount,hidden:p=>capField(p,\"source\")!==\"frames\"},frameStart:{type:ControlType.Number,title:\"First #\",min:0,max:10,step:1,defaultValue:CAP_DEFAULTS.frameStart,hidden:p=>capField(p,\"source\")!==\"frames\"},frameBlend:{type:ControlType.Boolean,title:\"Blend\",defaultValue:true,hidden:p=>capField(p,\"source\")!==\"frames\"},video:{type:ControlType.File,title:\"Video\",allowedFileTypes:[\"mp4\",\"webm\",\"mov\"],hidden:p=>capField(p,\"source\")!==\"video\"},poster:{type:ControlType.ResponsiveImage,title:\"Poster\",hidden:p=>capField(p,\"source\")!==\"video\"},image:{type:ControlType.ResponsiveImage,title:\"Image\",hidden:p=>capField(p,\"source\")!==\"image\"},period:{type:ControlType.Number,title:\"Turn (s)\",min:4,max:60,step:.5,defaultValue:CAP_DEFAULTS.period,unit:\"s\"},direction:{type:ControlType.Enum,title:\"Direction\",options:[\"right\",\"left\"],optionTitles:[\"→\",\"←\"],displaySegmentedControl:true,defaultValue:\"right\"},startAngle:{type:ControlType.Number,title:\"Start \\xb0\",min:0,max:359,step:1,defaultValue:CAP_DEFAULTS.startAngle},draggable:{type:ControlType.Boolean,title:\"Drag\",defaultValue:true},invertDrag:{type:ControlType.Boolean,title:\"Invert drag\",defaultValue:false,hidden:p=>capField(p,\"draggable\")===false},blend:{type:ControlType.Enum,title:\"Blend mode\",options:[\"normal\",\"multiply\"],optionTitles:[\"Normal\",\"Multiply\"],displaySegmentedControl:true,defaultValue:\"normal\",description:\"Multiply melts a white background into the cream.\",hidden:p=>[\"model\",\"placeholder\"].includes(capField(p,\"source\")||\"model\")},aspect:{type:ControlType.Number,title:\"Aspect\",min:.5,max:3,step:.01,defaultValue:CAP_DEFAULTS.aspect,description:\"Width \\xf7 height of your frames or video (1080\\xd7864 → 1.25).\",hidden:p=>[\"model\",\"placeholder\"].includes(capField(p,\"source\")||\"model\")},size:{type:ControlType.Number,title:\"Size\",min:30,max:80,step:1,unit:\"%\",defaultValue:CAP_DEFAULTS.size},shadow:{type:ControlType.Boolean,title:\"Shadow\",defaultValue:true},shadowY:{type:ControlType.Number,title:\"Shadow Y\",min:50,max:100,step:1,unit:\"%\",defaultValue:CAP_DEFAULTS.shadowY,hidden:p=>capField(p,\"shadow\")===false},showDegrees:{type:ControlType.Boolean,title:\"Degrees\",defaultValue:true},lineColor:{type:ControlType.Color,title:\"Line\",defaultValue:K.navy,description:\"Line drawing (also the fallback of the 3D model).\",hidden:p=>![\"model\",\"placeholder\"].includes(capField(p,\"source\")||\"model\")}}},gallery:{type:ControlType.Object,title:\"Gallery\",controls:{images:{type:ControlType.Array,title:\"Images\",control:{type:ControlType.ResponsiveImage},maxCount:12,description:\"Square photos work best. The delivered set: kais-cap-01 … 06.webp, in order.\"},tile:{type:ControlType.Color,title:\"Tile\",defaultValue:GALLERY_DEFAULTS.tile,description:\"Behind each photo (the cut-outs are transparent).\"},fit:{type:ControlType.Enum,title:\"Fit\",options:[\"contain\",\"cover\"],optionTitles:[\"Contain\",\"Cover\"],displaySegmentedControl:true,defaultValue:\"contain\"},zoom:{type:ControlType.Boolean,title:\"Click to zoom\",defaultValue:true}}},checkout:{type:ControlType.Object,title:\"Checkout\",controls:{mode:{type:ControlType.Enum,title:\"Mode\",options:[\"auto\",\"embedded\",\"paymentLink\",\"demo\"],optionTitles:[\"Auto\",\"Embedded\",\"Payment Link\",\"Demo\"],defaultValue:\"auto\"},publishableKey:{type:ControlType.String,title:\"Publishable key\",placeholder:\"pk_live_…\"},sessionEndpoint:{type:ControlType.String,title:\"Session URL\",placeholder:\"https://hook.eu2.make.com/…\"},paymentLink:{type:ControlType.Link,title:\"Payment Link\",description:\"Fallback only: opens in a new tab.\"},prewarm:{type:ControlType.Boolean,title:\"Prewarm\",defaultValue:true,description:\"Starts the session on hover over BUY, so the checkout is ready when the page arrives.\"},stripeJsUrl:{type:ControlType.String,title:\"Stripe.js\",defaultValue:DEFAULT_STRIPE_JS}}},copy:{type:ControlType.Object,title:\"Checkout copy\",controls:{checkoutEyebrow:{type:ControlType.String,title:\"Eyebrow\",defaultValue:COPY_DEFAULTS.checkoutEyebrow},checkoutSubtitle:{type:ControlType.String,title:\"Subtitle\",defaultValue:COPY_DEFAULTS.checkoutSubtitle},successEyebrow:{type:ControlType.String,title:\"Done eyebrow\",defaultValue:COPY_DEFAULTS.successEyebrow},successTitle:{type:ControlType.String,title:\"Done title\",defaultValue:COPY_DEFAULTS.successTitle},successSubtitle:{type:ControlType.String,title:\"Done subtitle\",defaultValue:COPY_DEFAULTS.successSubtitle},successText:{type:ControlType.String,title:\"Done text\",defaultValue:COPY_DEFAULTS.successText,displayTextArea:true},backLabel:{type:ControlType.String,title:\"Back to top\",defaultValue:COPY_DEFAULTS.backLabel},errorText:{type:ControlType.String,title:\"Error\",defaultValue:COPY_DEFAULTS.errorText,displayTextArea:true},retryLabel:{type:ControlType.String,title:\"Retry\",defaultValue:COPY_DEFAULTS.retryLabel},paymentLinkLabel:{type:ControlType.String,title:\"Link button\",defaultValue:COPY_DEFAULTS.paymentLinkLabel},demoNote:{type:ControlType.String,title:\"Demo note\",defaultValue:COPY_DEFAULTS.demoNote,displayTextArea:true},demoButton:{type:ControlType.String,title:\"Demo button\",defaultValue:COPY_DEFAULTS.demoButton},demoSuccessNote:{type:ControlType.String,title:\"Demo done note\",defaultValue:COPY_DEFAULTS.demoSuccessNote}}},background:{type:ControlType.Color,title:\"Hero background\",defaultValue:K.cream},sectionBackground:{type:ControlType.Color,title:\"Shop background\",defaultValue:\"#FFFFFF\"},grain:{type:ControlType.Boolean,title:\"Grain\",defaultValue:false},loadFonts:{type:ControlType.Boolean,title:\"Load fonts\",defaultValue:true,description:\"Tektur, Unbounded, DM Sans, Cormorant (Google Fonts).\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"KaisCapStore\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Cap_V4.map","// Generated by Framer (a050651)\nexport default function metadata(params,activeLocale){return{description:\"Kais Cap\",robots:\"max-image-preview:large\",title:\"Kais Cap\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (a050651)\nimport siteMetadata from\"#framer/local/siteMetadata/siteMetadata/siteMetadata.js\";export default function metadata(params,activeLocale){return{breakpoints:[{hash:\"10kq8xx\",mediaQuery:\"(min-width: 1200px)\"},{hash:\"1aklbhs\",mediaQuery:\"(min-width: 810px) and (max-width: 1199.98px)\"},{hash:\"119nsa8\",mediaQuery:\"(max-width: 809.98px)\"}],description:\"Un club de f\\xfatbol. Una instituci\\xf3n medi\\xe1tica. Una marca premium. Construido desde cero en la costa de Lisboa.\",elements:{},framerSearch:{index:true},robots:\"max-image-preview:large\",serializationId:\"framer-ezSwX\",title:siteMetadata(params,activeLocale).title||\"Home\",viewport:\"width=device-width\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (a050651)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,ComponentViewportProvider,Container,cx,GeneratedComponentContext,getFonts,useComponentViewport,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,useMetadata,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import KAISCapStore from\"https://framerusercontent.com/modules/rezD2KZtTmInKTC74FHh/Z4e0DFa0kY0Z8VSiEuij/Cap_V4.js\";import metadataProvider from\"#framer/local/webPageMetadata/oxFl8hLOT/oxFl8hLOT.js\";const KAISCapStoreFonts=getFonts(KAISCapStore);const breakpoints={h7N3nwnbA:\"(max-width: 809.98px)\",NTeZf297U:\"(min-width: 1200px)\",ZRlDkdnrD:\"(min-width: 810px) and (max-width: 1199.98px)\"};const isBrowser=()=>typeof document!==\"undefined\";export const queryParamNames=[];const serializationHash=\"framer-ezSwX\";const variantClassNames={h7N3nwnbA:\"framer-v-119nsa8\",NTeZf297U:\"framer-v-10kq8xx\",ZRlDkdnrD:\"framer-v-1aklbhs\"};const getRootLayoutProp=(hasLayoutTemplate,hasInheritedFlowEffect,fallback)=>{if(!hasLayoutTemplate)return fallback;return hasInheritedFlowEffect?\"position\":fallback;};const addImageAlt=(image,alt)=>{if(!image||typeof image!==\"object\"){return;}return{...image,alt};};const humanReadableVariantMap={Desktop:\"NTeZf297U\",Phone:\"h7N3nwnbA\",Tablet:\"ZRlDkdnrD\"};const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"NTeZf297U\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const metadata=React.useMemo(()=>metadataProvider({},activeLocale),[activeLocale]);useMetadata(metadata);const[baseVariant,hydratedBaseVariant]=useHydratedBreakpointVariants(variant,breakpoints,false);const gestureVariant=undefined;const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const hasLayoutTemplate=React.useContext(GeneratedComponentContext)?.isLayoutTemplate;const hasInheritedFlowEffect=Boolean(React.useContext(MotionConfigContext)?.transition?.layout);const motionLayout=getRootLayoutProp(hasLayoutTemplate,hasInheritedFlowEffect);useCustomCursors({});return /*#__PURE__*/_jsx(GeneratedComponentContext.Provider,{value:{activeVariantId:baseVariant,humanReadableVariantMap,primaryVariantId:\"NTeZf297U\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\"html body { background: rgb(255, 255, 255); }\"}),/*#__PURE__*/_jsx(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-10kq8xx\",className),ref:refBinding,style:{...style},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-1h41cgz-container\",isAuthoredByUser:true,isModuleExternal:true,layout:motionLayout,nodeId:\"o8C8jBiyN\",scopeId:\"oxFl8hLOT\",children:/*#__PURE__*/_jsx(KAISCapStore,{background:\"rgb(242, 237, 230)\",buyLabel:\"BUY\",cap:{aspect:1.25,blend:\"normal\",direction:\"right\",draggable:true,frameBlend:true,frameCount:72,frames:[],framesPattern:\"\",frameStart:1,invertDrag:false,lineColor:\"rgb(26, 39, 68)\",period:16,quality:\"auto\",shadow:true,shadowY:80,showDegrees:true,size:54,source:\"model\",startAngle:330,threeUrl:\"https://cdn.jsdelivr.net/npm/three@0.170.0/build/three.module.min.js\"},checkout:{mode:\"auto\",prewarm:true,publishableKey:\"\",sessionEndpoint:\"\",stripeJsUrl:\"https://js.stripe.com/dahlia/stripe.js\"},copy:{backLabel:\"Back to top\",checkoutEyebrow:\"Checkout\",checkoutSubtitle:\"Built from zero on the Lisbon coast.\",demoButton:\"Preview confirmation\",demoNote:\"Preview. The Stripe checkout loads here once the keys are connected.\",demoSuccessNote:\"Preview only \\xb7 no order placed, nothing charged\",errorText:\"The checkout could not load. Please try again in a moment.\",paymentLinkLabel:\"Continue to payment\",retryLabel:\"Try again\",successEyebrow:\"Order confirmed\",successSubtitle:\"Welcome to KAIS.\",successText:\"Your order is confirmed. The receipt is on its way to your inbox.\",successTitle:\"Thank you.\"},gallery:{fit:\"contain\",images:[addImageAlt({pixelHeight:1800,pixelWidth:1800,src:\"https://framerusercontent.com/images/ebvkBYzmOQQRt2qr13KTZFJmzs.webp?width=1800&height=1800\",srcSet:\"https://framerusercontent.com/images/ebvkBYzmOQQRt2qr13KTZFJmzs.webp?scale-down-to=512&width=1800&height=1800 512w,https://framerusercontent.com/images/ebvkBYzmOQQRt2qr13KTZFJmzs.webp?scale-down-to=1024&width=1800&height=1800 1024w,https://framerusercontent.com/images/ebvkBYzmOQQRt2qr13KTZFJmzs.webp?width=1800&height=1800 1800w\"},\"\"),addImageAlt({pixelHeight:1800,pixelWidth:1800,src:\"https://framerusercontent.com/images/ohLNSpfBDtLOqwE2qkET9yXzSxo.webp?width=1800&height=1800\",srcSet:\"https://framerusercontent.com/images/ohLNSpfBDtLOqwE2qkET9yXzSxo.webp?scale-down-to=512&width=1800&height=1800 512w,https://framerusercontent.com/images/ohLNSpfBDtLOqwE2qkET9yXzSxo.webp?scale-down-to=1024&width=1800&height=1800 1024w,https://framerusercontent.com/images/ohLNSpfBDtLOqwE2qkET9yXzSxo.webp?width=1800&height=1800 1800w\"},\"\"),addImageAlt({pixelHeight:1800,pixelWidth:1800,src:\"https://framerusercontent.com/images/KSfMmWMadHjb1IBX4DJzlztA.webp?width=1800&height=1800\",srcSet:\"https://framerusercontent.com/images/KSfMmWMadHjb1IBX4DJzlztA.webp?scale-down-to=512&width=1800&height=1800 512w,https://framerusercontent.com/images/KSfMmWMadHjb1IBX4DJzlztA.webp?scale-down-to=1024&width=1800&height=1800 1024w,https://framerusercontent.com/images/KSfMmWMadHjb1IBX4DJzlztA.webp?width=1800&height=1800 1800w\"},\"\"),addImageAlt({pixelHeight:1800,pixelWidth:1800,src:\"https://framerusercontent.com/images/YDi5DqQUlqJwa5HKG268ZMeENo.webp?width=1800&height=1800\",srcSet:\"https://framerusercontent.com/images/YDi5DqQUlqJwa5HKG268ZMeENo.webp?scale-down-to=512&width=1800&height=1800 512w,https://framerusercontent.com/images/YDi5DqQUlqJwa5HKG268ZMeENo.webp?scale-down-to=1024&width=1800&height=1800 1024w,https://framerusercontent.com/images/YDi5DqQUlqJwa5HKG268ZMeENo.webp?width=1800&height=1800 1800w\"},\"\"),addImageAlt({pixelHeight:1800,pixelWidth:1800,src:\"https://framerusercontent.com/images/EMB97FlDpbRPDtBrvrjTjTBsE.webp?width=1800&height=1800\",srcSet:\"https://framerusercontent.com/images/EMB97FlDpbRPDtBrvrjTjTBsE.webp?scale-down-to=512&width=1800&height=1800 512w,https://framerusercontent.com/images/EMB97FlDpbRPDtBrvrjTjTBsE.webp?scale-down-to=1024&width=1800&height=1800 1024w,https://framerusercontent.com/images/EMB97FlDpbRPDtBrvrjTjTBsE.webp?width=1800&height=1800 1800w\"},\"\"),addImageAlt({pixelHeight:1800,pixelWidth:1800,src:\"https://framerusercontent.com/images/xgVesJhegW5wujcPjiTyT1hYQQ.webp?width=1800&height=1800\",srcSet:\"https://framerusercontent.com/images/xgVesJhegW5wujcPjiTyT1hYQQ.webp?scale-down-to=512&width=1800&height=1800 512w,https://framerusercontent.com/images/xgVesJhegW5wujcPjiTyT1hYQQ.webp?scale-down-to=1024&width=1800&height=1800 1024w,https://framerusercontent.com/images/xgVesJhegW5wujcPjiTyT1hYQQ.webp?width=1800&height=1800 1800w\"},\"\")],tile:\"rgb(247, 243, 237)\",zoom:true},grain:false,height:\"100%\",id:\"o8C8jBiyN\",layoutId:\"o8C8jBiyN\",loadFonts:true,logoLink:\"https://kaisfc.com\",sectionBackground:\"rgb(255, 255, 255)\",style:{width:\"100%\"},width:\"100%\",wordmark:\"2042 KAIS cap\"})})})}),/*#__PURE__*/_jsx(\"div\",{id:\"overlay\"})]})});});const css=[\".framer-ezSwX.framer-l23c9x, .framer-ezSwX .framer-l23c9x { display: block; }\",\".framer-ezSwX.framer-10kq8xx { align-content: center; align-items: center; background-color: #ffffff; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 1200px; }\",\".framer-ezSwX .framer-1h41cgz-container { flex: none; height: auto; position: relative; width: 100%; }\",\"@media (min-width: 810px) and (max-width: 1199.98px) { .framer-ezSwX.framer-10kq8xx { width: 810px; }}\",\"@media (max-width: 809.98px) { .framer-ezSwX.framer-10kq8xx { width: 390px; }}\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 2073\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"ZRlDkdnrD\":{\"layout\":[\"fixed\",\"auto\"]},\"h7N3nwnbA\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerAcceptsLayoutTemplate true\n * @framerScrollSections false\n * @framerResponsiveScreen true\n * @framerLayoutTemplateFlowEffect true\n */const FrameroxFl8hLOT=withCSS(Component,css,\"framer-ezSwX\");export default FrameroxFl8hLOT;FrameroxFl8hLOT.displayName=\"Home\";FrameroxFl8hLOT.defaultProps={height:2073,width:1200};addFonts(FrameroxFl8hLOT,[{explicitInter:true,fonts:[]},...KAISCapStoreFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FrameroxFl8hLOT\",\"slots\":[],\"annotations\":{\"framerResponsiveScreen\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicWidth\":\"1200\",\"framerIntrinsicHeight\":\"2073\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"ZRlDkdnrD\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"h7N3nwnbA\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerAutoSizeImages\":\"true\",\"framerAcceptsLayoutTemplate\":\"true\",\"framerLayoutTemplateFlowEffect\":\"true\",\"framerColorSyntax\":\"true\",\"framerImmutableVariables\":\"true\",\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\",\"framerScrollSections\":\"false\"}},\"queryParamNames\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (d22cd96)\nconst snippets=[];const queryLoaders={};export const snippetsSorting={bodyEnd:[],bodyStart:[],headEnd:[],headStart:[]};export async function getSnippets(pageId,pathVariables,activeLocale){const queryLoader=queryLoaders[pageId];const params=queryLoader?await queryLoader(pathVariables,activeLocale):undefined;const result={bodyEnd:[],bodyStart:[],headEnd:[],headStart:[]};for(const snippet of snippets){if(snippet.pageIds&&!snippet.pageIds.has(pageId))continue;const code=snippet.code(params);if(code){result[snippet.placement].push({...snippet,code});}}return result;}\nexport const __FramerMetadata__ = {\"exports\":{\"snippetsSorting\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getSnippets\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}