/*! neat-annotations | https://github.com/syabro/neat-annotations | MIT (c) 2026 Maxim Syabro
   Vendored from upstream commit 12fabf0f5b2e13b9ce884f5b0d9442c1c75a594e on 09-19-2026.
   Body is byte-identical to upstream; only this banner was rewritten (ASCII). build.js
   re-attaches this banner to the compiled stylesheet, since --minify drops every comment.
   Do not edit - re-vendor. License: neat-annotations.LICENSE
   Labels look best with the Shantell Sans font (falls back to system cursive). */.ann{--ann-color:light-dark(#898584,#b8b8bd);--ann-mark:light-dark(color-mix(in oklch,var(--ann-color) 10%,transparent),oklch(from var(--ann-color) l calc(c * 1.35) h/24%));--ann-font:"Shantell Sans",cursive;--ann-target-gap:5px;--ann-label-gap:6px;--ann-lower-label-gap:-4px;--ann-label-max-width:150px;--ann-arrow-x:0px;--ann-text-x:0px;--ann-arrow-y:0px;--ann-text-y:5px;--ann-rotate:-4deg;background:var(--ann-mark);border-radius:3px;box-shadow:-.3em 0 0 0 var(--ann-mark),.3em 0 0 0 var(--ann-mark);display:inline-block;line-height:1.15;overflow:visible;position:relative}.ann:after{color:var(--ann-color);content:attr(data-note);font-family:var(--ann-font);font-size:.95rem;font-weight:400;line-height:1.05;max-width:var(--ann-label-max-width);overflow-wrap:anywhere;transform:rotate(var(--ann-rotate));white-space:normal;width:max-content;z-index:4}.ann:after,.ann:before{opacity:.9;pointer-events:none;position:absolute}.ann:before{background:var(--ann-color);content:"";height:38px;-webkit-mask:var(--_ann-arrow-mask) center /contain no-repeat;mask:var(--_ann-arrow-mask) center /contain no-repeat;transform-origin:50% 50%;width:46px;z-index:3}.ann:not([data-note]):after,.ann:not([data-note]):before,.ann[data-note=""]:after,.ann[data-note=""]:before{display:none}.ann-amber{--ann-color:light-dark(#b8751a,#f0b45a);--ann-mark:light-dark(color-mix(in oklch,#ffb000 14%,transparent),color-mix(in oklch,#ffb000 22%,transparent))}.ann-blue{--ann-color:light-dark(#3b72c4,#78a9ef)}.ann-green{--ann-color:light-dark(#2f8f5b,#67c792)}.ann-red{--ann-color:light-dark(#c45a38,#ee8a6e)}.ann-purple{--ann-color:light-dark(#8657c8,#b998ef)}.ann-rainbow{--ann-color:oklch(0.65 0.28 var(--ann-rainbow-hue,350deg))}.ann-no-mark{--ann-mark:transparent}@property --ann-rainbow-hue{syntax:"<angle>";inherits:false;initial-value:350deg}@keyframes ann-rainbow-cycle{to{--ann-rainbow-hue:710deg}}@media (prefers-reduced-motion:no-preference){.ann-rainbow{animation:ann-rainbow-cycle 3s linear infinite}}@media (forced-colors:active){.ann:before{background:CanvasText;forced-color-adjust:none}}.ann-n:before{left:calc(50% - 23px + var(--ann-arrow-x));top:calc(100% + var(--ann-target-gap) - 4px + var(--ann-arrow-y));--_ann-arrow-mask:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='38' viewBox='0 0 46 38'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-width='1.5' d='M23 35c-1-9-1-20 0-31'/%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m17 10 6-7 6 7'/%3E%3C/svg%3E")}.ann-n:after{left:calc(50% + var(--ann-text-x));top:calc(100% + var(--ann-target-gap) + 31px + var(--ann-lower-label-gap) + var(--ann-text-y));transform:translateX(-50%) rotate(var(--ann-rotate))}.ann-ne:before{left:calc(50% - 40px + var(--ann-arrow-x));top:calc(100% + var(--ann-target-gap) - 6px + var(--ann-arrow-y));transform:translateX(-10%);--_ann-arrow-mask:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='38' viewBox='0 0 46 38'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-width='1.5' d='M6 32c10-2 22-14 34-26'/%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m30 10 10-4-4 10'/%3E%3C/svg%3E")}.ann-ne:after{left:calc(50% - 34px + var(--ann-text-x));top:calc(100% + var(--ann-target-gap) + 26px + var(--ann-lower-label-gap) + var(--ann-text-y));transform:translateX(-60%) rotate(var(--ann-rotate))}.ann-e:before{left:calc(var(--ann-target-gap)*-1 - 43px + var(--ann-arrow-x));top:calc(50% - 19px + var(--ann-arrow-y));--_ann-arrow-mask:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='38' viewBox='0 0 46 38'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-width='1.5' d='M4 19c11-1 27-1 39 0'/%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m36 13 7 6-7 6'/%3E%3C/svg%3E")}.ann-e:after{right:calc(100% + var(--ann-target-gap) + 39px + var(--ann-label-gap) - var(--ann-text-x));top:calc(50% - 5px + var(--ann-text-y));transform:translateY(-50%) rotate(var(--ann-rotate))}.ann-se:before{left:calc(50% - 40px + var(--ann-arrow-x));top:calc(var(--ann-target-gap)*-1 - 32px + var(--ann-arrow-y));transform:translateX(-10%);--_ann-arrow-mask:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='38' viewBox='0 0 46 38'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-width='1.5' d='M6 6c10 2 22 14 34 26'/%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m36 22 4 10-10-4'/%3E%3C/svg%3E")}.ann-se:after{bottom:calc(100% + var(--ann-target-gap) + 26px + var(--ann-label-gap) - var(--ann-text-y));left:calc(50% - 34px + var(--ann-text-x));transform:translateX(-60%) rotate(var(--ann-rotate))}.ann-s:before{left:calc(50% - 23px + var(--ann-arrow-x));top:calc(var(--ann-target-gap)*-1 - 35px + var(--ann-arrow-y));--_ann-arrow-mask:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='38' viewBox='0 0 46 38'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-width='1.5' d='M23 4c-1 9-1 20 0 31'/%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m17 29 6 7 6-7'/%3E%3C/svg%3E")}.ann-s:after{bottom:calc(100% + var(--ann-target-gap) + 31px + var(--ann-label-gap) - var(--ann-text-y));left:calc(50% + var(--ann-text-x));transform:translateX(-50%) rotate(var(--ann-rotate))}.ann-sw:before{left:calc(50% - 6px + var(--ann-arrow-x));top:calc(var(--ann-target-gap)*-1 - 32px + var(--ann-arrow-y));transform:translateX(10%);--_ann-arrow-mask:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='38' viewBox='0 0 46 38'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-width='1.5' d='M40 6C30 8 18 20 6 32'/%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M10 22 6 32l10-4'/%3E%3C/svg%3E")}.ann-sw:after{bottom:calc(100% + var(--ann-target-gap) + 26px + var(--ann-label-gap) - var(--ann-text-y));left:calc(50% + 34px + var(--ann-text-x));transform:translateX(-40%) rotate(var(--ann-rotate))}.ann-w:before{left:calc(100% + var(--ann-target-gap) - 3px + var(--ann-arrow-x));top:calc(50% - 19px + var(--ann-arrow-y));--_ann-arrow-mask:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='38' viewBox='0 0 46 38'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-width='1.5' d='M43 19c-11-1-28-1-40 0'/%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m10 13-7 6 7 6'/%3E%3C/svg%3E")}.ann-w:after{left:calc(100% + var(--ann-target-gap) + 40px + var(--ann-label-gap) + var(--ann-text-x));top:calc(50% - 5px + var(--ann-text-y));transform:translateY(-50%) rotate(var(--ann-rotate))}.ann-nw:before{left:calc(50% - 6px + var(--ann-arrow-x));top:calc(100% + var(--ann-target-gap) - 6px + var(--ann-arrow-y));transform:translateX(10%);--_ann-arrow-mask:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='38' viewBox='0 0 46 38'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-width='1.5' d='M40 32C30 30 18 18 6 6'/%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M16 10 6 6l4 10'/%3E%3C/svg%3E")}.ann-nw:after{left:calc(50% + 34px + var(--ann-text-x));top:calc(100% + var(--ann-target-gap) + 26px + var(--ann-lower-label-gap) + var(--ann-text-y));transform:translateX(-40%) rotate(var(--ann-rotate))}