sdcc-rent-calculator 0.7.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- (()=>{var q,v,be,qe,T,he,xe,we,Z,$,U,ke,oe,ee,te,Ge,Q={},Y=[],Je=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,G=Array.isArray;function S(e,t){for(var n in t)e[n]=t[n];return e}function re(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function ae(e,t,n){var o,i,r,c={};for(r in t)r=="key"?o=t[r]:r=="ref"?i=t[r]:c[r]=t[r];if(arguments.length>2&&(c.children=arguments.length>3?q.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(r in e.defaultProps)c[r]===void 0&&(c[r]=e.defaultProps[r]);return j(e,c,o,i,null)}function j(e,t,n,o,i){var r={type:e,props:t,key:n,ref:o,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:i??++be,__i:-1,__u:0};return i==null&&v.vnode!=null&&v.vnode(r),r}function I(e){return e.children}function B(e,t){this.props=e,this.context=t}function D(e,t){if(t==null)return e.__?D(e.__,e.__i+1):null;for(var n;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null)return n.__e;return typeof e.type=="function"?D(e):null}function Xe(e){if(e.__P&&e.__d){var t=e.__v,n=t.__e,o=[],i=[],r=S({},t);r.__v=t.__v+1,v.vnode&&v.vnode(r),ie(e.__P,r,t,e.__n,e.__P.namespaceURI,32&t.__u?[n]:null,o,n??D(t),!!(32&t.__u),i),r.__v=t.__v,r.__.__k[r.__i]=r,Se(o,r,i),t.__e=t.__=null,r.__e!=n&&Ne(r)}}function Ne(e){if((e=e.__)!=null&&e.__c!=null)return e.__e=e.__c.base=null,e.__k.some(function(t){if(t!=null&&t.__e!=null)return e.__e=e.__c.base=t.__e}),Ne(e)}function ge(e){(!e.__d&&(e.__d=!0)&&T.push(e)&&!V.__r++||he!=v.debounceRendering)&&((he=v.debounceRendering)||xe)(V)}function V(){try{for(var e,t=1;T.length;)T.length>t&&T.sort(we),e=T.shift(),t=T.length,Xe(e)}finally{T.length=V.__r=0}}function Ce(e,t,n,o,i,r,c,p,u,s,d){var a,_,f,h,k,y,g,m=o&&o.__k||Y,N=t.length;for(u=Ke(n,t,m,u,N),a=0;a<N;a++)(f=n.__k[a])!=null&&(_=f.__i!=-1&&m[f.__i]||Q,f.__i=a,y=ie(e,f,_,i,r,c,p,u,s,d),h=f.__e,f.ref&&_.ref!=f.ref&&(_.ref&&se(_.ref,null,f),d.push(f.ref,f.__c||h,f)),k==null&&h!=null&&(k=h),(g=!!(4&f.__u))||_.__k===f.__k?(u=Ee(f,u,e,g),g&&_.__e&&(_.__e=null)):typeof f.type=="function"&&y!==void 0?u=y:h&&(u=h.nextSibling),f.__u&=-7);return n.__e=k,u}function Ke(e,t,n,o,i){var r,c,p,u,s,d=n.length,a=d,_=0;for(e.__k=new Array(i),r=0;r<i;r++)(c=t[r])!=null&&typeof c!="boolean"&&typeof c!="function"?(typeof c=="string"||typeof c=="number"||typeof c=="bigint"||c.constructor==String?c=e.__k[r]=j(null,c,null,null,null):G(c)?c=e.__k[r]=j(I,{children:c},null,null,null):c.constructor===void 0&&c.__b>0?c=e.__k[r]=j(c.type,c.props,c.key,c.ref?c.ref:null,c.__v):e.__k[r]=c,u=r+_,c.__=e,c.__b=e.__b+1,p=null,(s=c.__i=Ze(c,n,u,a))!=-1&&(a--,(p=n[s])&&(p.__u|=2)),p==null||p.__v==null?(s==-1&&(i>d?_--:i<d&&_++),typeof c.type!="function"&&(c.__u|=4)):s!=u&&(s==u-1?_--:s==u+1?_++:(s>u?_--:_++,c.__u|=4))):e.__k[r]=null;if(a)for(r=0;r<d;r++)(p=n[r])!=null&&(2&p.__u)==0&&(p.__e==o&&(o=D(p)),Te(p,p));return o}function Ee(e,t,n,o){var i,r;if(typeof e.type=="function"){for(i=e.__k,r=0;i&&r<i.length;r++)i[r]&&(i[r].__=e,t=Ee(i[r],t,n,o));return t}e.__e!=t&&(o&&(t&&e.type&&!t.parentNode&&(t=D(e)),n.insertBefore(e.__e,t||null)),t=e.__e);do t=t&&t.nextSibling;while(t!=null&&t.nodeType==8);return t}function Ze(e,t,n,o){var i,r,c,p=e.key,u=e.type,s=t[n],d=s!=null&&(2&s.__u)==0;if(s===null&&p==null||d&&p==s.key&&u==s.type)return n;if(o>(d?1:0)){for(i=n-1,r=n+1;i>=0||r<t.length;)if((s=t[c=i>=0?i--:r++])!=null&&(2&s.__u)==0&&p==s.key&&u==s.type)return c}return-1}function ve(e,t,n){t[0]=="-"?e.setProperty(t,n??""):e[t]=n==null?"":typeof n!="number"||Je.test(t)?n:n+"px"}function O(e,t,n,o,i){var r,c;e:if(t=="style")if(typeof n=="string")e.style.cssText=n;else{if(typeof o=="string"&&(e.style.cssText=o=""),o)for(t in o)n&&t in n||ve(e.style,t,"");if(n)for(t in n)o&&n[t]==o[t]||ve(e.style,t,n[t])}else if(t[0]=="o"&&t[1]=="n")r=t!=(t=t.replace(ke,"$1")),c=t.toLowerCase(),t=c in e||t=="onFocusOut"||t=="onFocusIn"?c.slice(2):t.slice(2),e.l||(e.l={}),e.l[t+r]=n,n?o?n[U]=o[U]:(n[U]=oe,e.addEventListener(t,r?te:ee,r)):e.removeEventListener(t,r?te:ee,r);else{if(i=="http://www.w3.org/2000/svg")t=t.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if(t!="width"&&t!="height"&&t!="href"&&t!="list"&&t!="form"&&t!="tabIndex"&&t!="download"&&t!="rowSpan"&&t!="colSpan"&&t!="role"&&t!="popover"&&t in e)try{e[t]=n??"";break e}catch{}typeof n=="function"||(n==null||n===!1&&t[4]!="-"?e.removeAttribute(t):e.setAttribute(t,t=="popover"&&n==1?"":n))}}function ye(e){return function(t){if(this.l){var n=this.l[t.type+e];if(t[$]==null)t[$]=oe++;else if(t[$]<n[U])return;return n(v.event?v.event(t):t)}}}function ie(e,t,n,o,i,r,c,p,u,s){var d,a,_,f,h,k,y,g,m,N,x,P,H,M,R,C=t.type;if(t.constructor!==void 0)return null;128&n.__u&&(u=!!(32&n.__u),r=[p=t.__e=n.__e]),(d=v.__b)&&d(t);e:if(typeof C=="function")try{if(g=t.props,m=C.prototype&&C.prototype.render,N=(d=C.contextType)&&o[d.__c],x=d?N?N.props.value:d.__:o,n.__c?y=(a=t.__c=n.__c).__=a.__E:(m?t.__c=a=new C(g,x):(t.__c=a=new B(g,x),a.constructor=C,a.render=tt),N&&N.sub(a),a.state||(a.state={}),a.__n=o,_=a.__d=!0,a.__h=[],a._sb=[]),m&&a.__s==null&&(a.__s=a.state),m&&C.getDerivedStateFromProps!=null&&(a.__s==a.state&&(a.__s=S({},a.__s)),S(a.__s,C.getDerivedStateFromProps(g,a.__s))),f=a.props,h=a.state,a.__v=t,_)m&&C.getDerivedStateFromProps==null&&a.componentWillMount!=null&&a.componentWillMount(),m&&a.componentDidMount!=null&&a.__h.push(a.componentDidMount);else{if(m&&C.getDerivedStateFromProps==null&&g!==f&&a.componentWillReceiveProps!=null&&a.componentWillReceiveProps(g,x),t.__v==n.__v||!a.__e&&a.shouldComponentUpdate!=null&&a.shouldComponentUpdate(g,a.__s,x)===!1){t.__v!=n.__v&&(a.props=g,a.state=a.__s,a.__d=!1),t.__e=n.__e,t.__k=n.__k,t.__k.some(function(F){F&&(F.__=t)}),Y.push.apply(a.__h,a._sb),a._sb=[],a.__h.length&&c.push(a);break e}a.componentWillUpdate!=null&&a.componentWillUpdate(g,a.__s,x),m&&a.componentDidUpdate!=null&&a.__h.push(function(){a.componentDidUpdate(f,h,k)})}if(a.context=x,a.props=g,a.__P=e,a.__e=!1,P=v.__r,H=0,m)a.state=a.__s,a.__d=!1,P&&P(t),d=a.render(a.props,a.state,a.context),Y.push.apply(a.__h,a._sb),a._sb=[];else do a.__d=!1,P&&P(t),d=a.render(a.props,a.state,a.context),a.state=a.__s;while(a.__d&&++H<25);a.state=a.__s,a.getChildContext!=null&&(o=S(S({},o),a.getChildContext())),m&&!_&&a.getSnapshotBeforeUpdate!=null&&(k=a.getSnapshotBeforeUpdate(f,h)),M=d!=null&&d.type===I&&d.key==null?Fe(d.props.children):d,p=Ce(e,G(M)?M:[M],t,n,o,i,r,c,p,u,s),a.base=t.__e,t.__u&=-161,a.__h.length&&c.push(a),y&&(a.__E=a.__=null)}catch(F){if(t.__v=null,u||r!=null)if(F.then){for(t.__u|=u?160:128;p&&p.nodeType==8&&p.nextSibling;)p=p.nextSibling;r[r.indexOf(p)]=null,t.__e=p}else{for(R=r.length;R--;)re(r[R]);ne(t)}else t.__e=n.__e,t.__k=n.__k,F.then||ne(t);v.__e(F,t,n)}else r==null&&t.__v==n.__v?(t.__k=n.__k,t.__e=n.__e):p=t.__e=et(n.__e,t,n,o,i,r,c,u,s);return(d=v.diffed)&&d(t),128&t.__u?void 0:p}function ne(e){e&&(e.__c&&(e.__c.__e=!0),e.__k&&e.__k.some(ne))}function Se(e,t,n){for(var o=0;o<n.length;o++)se(n[o],n[++o],n[++o]);v.__c&&v.__c(t,e),e.some(function(i){try{e=i.__h,i.__h=[],e.some(function(r){r.call(i)})}catch(r){v.__e(r,i.__v)}})}function Fe(e){return typeof e!="object"||e==null||e.__b>0?e:G(e)?e.map(Fe):e.constructor!==void 0?null:S({},e)}function et(e,t,n,o,i,r,c,p,u){var s,d,a,_,f,h,k,y=n.props||Q,g=t.props,m=t.type;if(m=="svg"?i="http://www.w3.org/2000/svg":m=="math"?i="http://www.w3.org/1998/Math/MathML":i||(i="http://www.w3.org/1999/xhtml"),r!=null){for(s=0;s<r.length;s++)if((f=r[s])&&"setAttribute"in f==!!m&&(m?f.localName==m:f.nodeType==3)){e=f,r[s]=null;break}}if(e==null){if(m==null)return document.createTextNode(g);e=document.createElementNS(i,m,g.is&&g),p&&(v.__m&&v.__m(t,r),p=!1),r=null}if(m==null)y===g||p&&e.data==g||(e.data=g);else{if(r=m=="textarea"&&g.defaultValue!=null?null:r&&q.call(e.childNodes),!p&&r!=null)for(y={},s=0;s<e.attributes.length;s++)y[(f=e.attributes[s]).name]=f.value;for(s in y)f=y[s],s=="dangerouslySetInnerHTML"?a=f:s=="children"||s in g||s=="value"&&"defaultValue"in g||s=="checked"&&"defaultChecked"in g||O(e,s,null,f,i);for(s in g)f=g[s],s=="children"?_=f:s=="dangerouslySetInnerHTML"?d=f:s=="value"?h=f:s=="checked"?k=f:p&&typeof f!="function"||y[s]===f||O(e,s,f,y[s],i);if(d)p||a&&(d.__html==a.__html||d.__html==e.innerHTML)||(e.innerHTML=d.__html),t.__k=[];else if(a&&(e.innerHTML=""),Ce(t.type=="template"?e.content:e,G(_)?_:[_],t,n,o,m=="foreignObject"?"http://www.w3.org/1999/xhtml":i,r,c,r?r[0]:n.__k&&D(n,0),p,u),r!=null)for(s=r.length;s--;)re(r[s]);p&&m!="textarea"||(s="value",m=="progress"&&h==null?e.removeAttribute("value"):h!=null&&(h!==e[s]||m=="progress"&&!h||m=="option"&&h!=y[s])&&O(e,s,h,y[s],i),s="checked",k!=null&&k!=e[s]&&O(e,s,k,y[s],i))}return e}function se(e,t,n){try{if(typeof e=="function"){var o=typeof e.__u=="function";o&&e.__u(),o&&t==null||(e.__u=e(t))}else e.current=t}catch(i){v.__e(i,n)}}function Te(e,t,n){var o,i;if(v.unmount&&v.unmount(e),(o=e.ref)&&(o.current&&o.current!=e.__e||se(o,null,t)),(o=e.__c)!=null){if(o.componentWillUnmount)try{o.componentWillUnmount()}catch(r){v.__e(r,t)}o.base=o.__P=null}if(o=e.__k)for(i=0;i<o.length;i++)o[i]&&Te(o[i],t,n||typeof e.type!="function");n||re(e.__e),e.__c=e.__=e.__e=void 0}function tt(e,t,n){return this.constructor(e,n)}function le(e,t,n){var o,i,r,c;t==document&&(t=document.documentElement),v.__&&v.__(e,t),i=(o=typeof n=="function")?null:n&&n.__k||t.__k,r=[],c=[],ie(t,e=(!o&&n||t).__k=ae(I,null,[e]),i||Q,Q,t.namespaceURI,!o&&n?[n]:i?null:t.firstChild?q.call(t.childNodes):null,r,!o&&n?n:i?i.__e:t.firstChild,o,c),Se(r,e,c)}q=Y.slice,v={__e:function(e,t,n,o){for(var i,r,c;t=t.__;)if((i=t.__c)&&!i.__)try{if((r=i.constructor)&&r.getDerivedStateFromError!=null&&(i.setState(r.getDerivedStateFromError(e)),c=i.__d),i.componentDidCatch!=null&&(i.componentDidCatch(e,o||{}),c=i.__d),c)return i.__E=i}catch(p){e=p}throw e}},be=0,qe=function(e){return e!=null&&e.constructor===void 0},B.prototype.setState=function(e,t){var n;n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=S({},this.state),typeof e=="function"&&(e=e(S({},n),this.props)),e&&S(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),ge(this))},B.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),ge(this))},B.prototype.render=I,T=[],xe=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,we=function(e,t){return e.__v.__b-t.__v.__b},V.__r=0,Z=Math.random().toString(8),$="__d"+Z,U="__a"+Z,ke=/(PointerCapture)$|Capture$/i,oe=0,ee=ye(!1),te=ye(!0),Ge=0;var L,b,ce,Ae,X=0,Ue=[],w=v,Pe=w.__b,Me=w.__r,Re=w.diffed,De=w.__c,Ie=w.unmount,We=w.__;function ue(e,t){w.__h&&w.__h(b,e,X||t),X=0;var n=b.__H||(b.__H={__:[],__h:[]});return e>=n.__.length&&n.__.push({}),n.__[e]}function A(e){return X=1,nt(ze,e)}function nt(e,t,n){var o=ue(L++,2);if(o.t=e,!o.__c&&(o.__=[n?n(t):ze(void 0,t),function(p){var u=o.__N?o.__N[0]:o.__[0],s=o.t(u,p);u!==s&&(o.__N=[s,o.__[1]],o.__c.setState({}))}],o.__c=b,!b.__f)){var i=function(p,u,s){if(!o.__c.__H)return!0;var d=o.__c.__H.__.filter(function(_){return _.__c});if(d.every(function(_){return!_.__N}))return!r||r.call(this,p,u,s);var a=o.__c.props!==p;return d.some(function(_){if(_.__N){var f=_.__[0];_.__=_.__N,_.__N=void 0,f!==_.__[0]&&(a=!0)}}),r&&r.call(this,p,u,s)||a};b.__f=!0;var r=b.shouldComponentUpdate,c=b.componentWillUpdate;b.componentWillUpdate=function(p,u,s){if(this.__e){var d=r;r=void 0,i(p,u,s),r=d}c&&c.call(this,p,u,s)},b.shouldComponentUpdate=i}return o.__N||o.__}function _e(e,t){var n=ue(L++,3);!w.__s&&Le(n.__H,t)&&(n.__=e,n.u=t,b.__H.__h.push(n))}function de(e){return X=5,fe(function(){return{current:e}},[])}function fe(e,t){var n=ue(L++,7);return Le(n.__H,t)&&(n.__=e(),n.__H=t,n.__h=e),n.__}function ot(){for(var e;e=Ue.shift();){var t=e.__H;if(e.__P&&t)try{t.__h.some(J),t.__h.some(pe),t.__h=[]}catch(n){t.__h=[],w.__e(n,e.__v)}}}w.__b=function(e){b=null,Pe&&Pe(e)},w.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),We&&We(e,t)},w.__r=function(e){Me&&Me(e),L=0;var t=(b=e.__c).__H;t&&(ce===b?(t.__h=[],b.__h=[],t.__.some(function(n){n.__N&&(n.__=n.__N),n.u=n.__N=void 0})):(t.__h.some(J),t.__h.some(pe),t.__h=[],L=0)),ce=b},w.diffed=function(e){Re&&Re(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(Ue.push(t)!==1&&Ae===w.requestAnimationFrame||((Ae=w.requestAnimationFrame)||rt)(ot)),t.__H.__.some(function(n){n.u&&(n.__H=n.u),n.u=void 0})),ce=b=null},w.__c=function(e,t){t.some(function(n){try{n.__h.some(J),n.__h=n.__h.filter(function(o){return!o.__||pe(o)})}catch(o){t.some(function(i){i.__h&&(i.__h=[])}),t=[],w.__e(o,n.__v)}}),De&&De(e,t)},w.unmount=function(e){Ie&&Ie(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.some(function(o){try{J(o)}catch(i){t=i}}),n.__H=void 0,t&&w.__e(t,n.__v))};var He=typeof requestAnimationFrame=="function";function rt(e){var t,n=function(){clearTimeout(o),He&&cancelAnimationFrame(t),setTimeout(e)},o=setTimeout(n,35);He&&(t=requestAnimationFrame(n))}function J(e){var t=b,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),b=t}function pe(e){var t=b;e.__c=e.__(),b=t}function Le(e,t){return!e||e.length!==t.length||t.some(function(n,o){return n!==e[o]})}function ze(e,t){return typeof t=="function"?t(e):t}var at={RATE_2025:.1,FIXED_CHARGE_2025:3,MIN_RENT_2025:27.4,OAP_THRESHOLD_2025:289.3,RATE_2026:.125,MIN_RENT_2026:35,OAP_THRESHOLD_2026:299.3,OAP_DISCOUNT:10,CHILD_DISCOUNT:2,SUBSIDIARY_INCOME_FLAG:320,WFP_FORMULA_RATE:.6,WFP_THRESHOLDS:{1:705,2:806,3:907,4:998,5:1124}};function Oe({currentRent:e,earners:t,children:n,wfp:o,wfpAmount:i,oap:r}){let c=at,p=Number(e)||0,u=Math.max(1,Number(t)||1),s=Math.max(0,Number(n)||0),a=r&&u===1&&s===0?c.OAP_DISCOUNT:0,_=p>0&&p<=c.MIN_RENT_2025,f=_?c.MIN_RENT_2025:p,h=p>0?Math.max(0,(f+a-c.FIXED_CHARGE_2025)/c.RATE_2025):0,k=s>=1?c.WFP_THRESHOLDS[Math.min(s,5)]??c.WFP_THRESHOLDS[5]:0,y=o&&s>0?Math.max(0,(k-h)*c.WFP_FORMULA_RATE):0,g=i!==""&&!isNaN(parseFloat(i))?parseFloat(i):null,m=0,N=!1,x=!1;o&&s>0&&(g!==null?m=g:(m=y,N=!0,x=y===0));let P=h*c.RATE_2026-s*c.CHILD_DISCOUNT,H=h>0?Math.max(c.MIN_RENT_2026,P)-a:0,M=m*c.RATE_2026,R=H+M,C=p>0&&h>0?R-p:0,F=C*52,Ve=u>1&&h>c.SUBSIDIARY_INCOME_FLAG,K=p>0&&h>0;return{hasResult:K,currentRent:p,proposed2026:K?R:null,proposed2026ExclWfp:K?H:null,wfpExtraRent:M,weeklyIncrease:C,annualIncrease:F,impliedIncome:h,atMin:_,oapDiscount:a,wfpUsed:m,wfpEstimated:N,wfpOverThreshold:x,subsidiaryCapFlag:Ve,childCount:s,wfpThreshold:k,wfp:o&&s>0}}function E(e,{showSign:t=!1,decimals:n=2}={}){return e==null||isNaN(e)?"\u2014":`${t&&e>0?"+":e<0?"\u2212":""}\u20AC${Math.abs(e).toFixed(n)}`}var it=0;function l(e,t,n,o,i,r){t||(t={});var c,p,u=t;if("ref"in u)for(p in u={},t)p=="ref"?c=t[p]:u[p]=t[p];var s={type:e,props:u,key:n,ref:c,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--it,__i:-1,__u:0,__source:i,__self:r};if(typeof e=="function"&&(c=e.defaultProps))for(p in c)u[p]===void 0&&(u[p]=c[p]);return v.vnode&&v.vnode(s),s}var st="https://www.peoplebeforeprofit.ie/take-action/",lt="https://www.norenthikes.ie/petition-form/embed";function W({label:e,hint:t,children:n}){return l("div",{className:"field",children:[l("label",{className:"field-label",children:e}),t&&l("p",{className:"field-hint",children:t}),l("div",{className:"field-control",children:n})]})}function $e({value:e,onChange:t,placeholder:n="0.00"}){return l("div",{className:"money-input",children:[l("span",{className:"money-prefix",children:"\u20AC"}),l("input",{type:"number",inputMode:"decimal",min:"0",step:"0.01",placeholder:n,value:e,onInput:o=>t(o.target.value)})]})}function je({value:e,setValue:t,min:n=0,max:o=99}){return l("div",{className:"stepper",children:[l("button",{type:"button",className:"stepper-btn",onClick:()=>t(Math.max(n,e-1)),disabled:e<=n,"aria-label":"Decrease",children:"\u2212"}),l("div",{className:"stepper-value",children:e}),l("button",{type:"button",className:"stepper-btn",onClick:()=>t(Math.min(o,e+1)),disabled:e>=o,"aria-label":"Increase",children:"+"})]})}function Be({value:e,options:t,onChange:n}){return l("div",{className:"segmented",role:"radiogroup",children:t.map(o=>l("button",{type:"button",role:"radio","aria-checked":e===o.value,className:"segmented-opt"+(e===o.value?" is-active":""),onClick:()=>n(o.value),children:o.label},o.value))})}function ct({currentRent:e,setCurrentRent:t,earners:n,setEarners:o,children:i,setChildren:r,wfp:c,setWfp:p,wfpAmount:u,setWfpAmount:s,oap:d,setOap:a}){let _=i>0;return l("div",{className:"calc-form",children:[l(W,{label:"Question 1 \u2014 What is your current weekly rent?",hint:"Enter the weekly amount from your rent notice.",children:l($e,{value:e,onChange:t})}),l(W,{label:"Question 2 \u2014 How many wage earners are on the rent book?",hint:"Everyone whose income is assessed in your rent.",children:l(je,{value:n,setValue:o,min:1,max:8})}),l(W,{label:"Question 3 \u2014 How many non-earning children under 18 are in the household?",hint:"Children with no income of their own \u2014 enter 0 if none.",children:l(je,{value:i,setValue:r,min:0,max:10})}),_&&l(W,{label:"Question 4 \u2014 Do you receive Working Family Payment (WFP)?",hint:"WFP is a weekly social welfare payment for working families with children. Under the proposed 2026 scheme, WFP would be counted as income for the first time.",children:l(Be,{value:c?"yes":"no",options:[{value:"no",label:"No"},{value:"yes",label:"Yes"}],onChange:h=>p(h==="yes")})}),_&&c&&l(W,{label:"Question 4b \u2014 If you know your weekly WFP amount, enter it here (optional)",hint:"Check your payment letter or MyWelfare.ie. Leave blank and we will estimate it for you using the standard DSP formula.",children:l($e,{value:u,onChange:s,placeholder:"e.g. 153.00"})}),n===1&&i===0&&l(W,{label:"Question 5 \u2014 Are you the sole occupant, aged 65 or over, on the state pension or less?",hint:"This applies only to single occupants aged 65+ on the state pension rate.",children:l(Be,{value:d?"yes":"no",options:[{value:"no",label:"No"},{value:"yes",label:"Yes"}],onChange:h=>a(h==="yes")})})]})}function pt({result:e}){let t=e.annualIncrease,n=t>.5,o=t<-.5,i=[];return i.push({text:"This is an estimate. SDCC will calculate your actual new rent using full income information they hold on file. Your actual increase may differ."}),e.wfp?e.wfpOverThreshold?i.push({highlight:!0,text:"WFP NOTE: You said you receive WFP but your implied income may be above the eligibility threshold. If you do receive it, enter the exact amount in Q4b for accuracy."}):e.wfpEstimated?i.push({highlight:!0,text:`WFP ESTIMATED using standard formula (60% of threshold minus estimated income). Amount used: ${E(e.wfpUsed)}/wk. Enter your actual amount in Q4b if known.`}):i.push({text:`WFP INCLUDED: ${E(e.wfpUsed)}/wk adds ${E(e.wfpExtraRent)}/wk to your new rent (\xB1${E(e.wfpExtraRent*12)} from WFP alone).`}):i.push({text:"Working Family Payment: not applicable based on your answers."}),e.subsidiaryCapFlag?i.push({highlight:!0,text:"ADDITIONAL EARNERS: If any additional earner on your rent book earns more than approximately \u20AC420\u2013\u20AC470/week net, the new rent could be lower than shown. The cap of \u20AC40/week per additional earner can outweigh the rate increase on the principal income. This estimate assumes no cap benefit applies."}):i.push({text:"Additional earners: the subsidiary earner cap does not appear to produce a saving at your income level based on your answers."}),e.atMin?i.push({text:"MINIMUM RENT: Your current rent is at or near the minimum rent under the current scheme. The minimum rent is due to increast by \u20AC395/year, as reflected in your estimate above. "}):i.push({text:"MINIMUM RENT: Your current rent is at or near the minimum rent under the current scheme. The minimum rent is due to increast by \u20AC395/year, as reflected in your estimate above. "}),l("div",{className:"result-filled",children:[l("p",{className:"result-eyebrow",children:"Estimated annual rent change"}),l("div",{className:"result-headline"+(n?" up":o?" down":""),children:[n&&l("span",{className:"result-sign",children:"+"}),o&&l("span",{className:"result-sign",children:"\u2212"}),l("span",{className:"result-amount",children:["\u20AC",Math.abs(Math.round(t)).toLocaleString("en-IE")]}),l("span",{className:"result-per",children:"/ year"})]}),l("p",{className:"result-weekly",children:[E(e.weeklyIncrease,{showSign:!0})," per week"]}),l("div",{className:"result-rows",children:[l("div",{className:"result-row",children:[l("span",{children:"Weekly rent now (2025)"}),l("span",{className:"result-row-val",children:E(e.currentRent)})]}),l("div",{className:"result-row",children:[l("span",{children:"2026 rent (excluding WFP impact)"}),l("span",{className:"result-row-val",children:E(e.proposed2026ExclWfp)})]}),e.wfp&&l("div",{className:"result-row",children:[l("span",{children:["Additional rent from WFP (",E(e.wfpUsed)," \xD7 12.5%)"]}),l("span",{className:"result-row-val",children:E(e.wfpExtraRent)})]}),l("div",{className:"result-row",children:[l("span",{children:"Total weekly rent proposed (2026)"}),l("span",{className:"result-row-val",children:E(e.proposed2026)})]}),l("div",{className:"result-row strong",children:[l("span",{children:"Weekly change"}),l("span",{className:"result-row-val",children:E(e.weeklyIncrease,{showSign:!0})})]})]}),l("p",{className:"result-notes-label",children:"Important \u2014 please read"}),l("div",{className:"result-notes",children:i.map((r,c)=>l("div",{className:"result-note"+(r.highlight?" note-highlight":""),children:[l("strong",{children:[c+1,"."]})," ",r.text]},c))})]})}function ut({result:e,campaignUrl:t,ctaUrl:n,onClose:o}){let i=de(null),r=de(null);_e(()=>{let s;try{s=new URL(n).origin}catch{s=null}let d=a=>{if(s&&a.origin!==s)return;let _=a.data;!_||_.type!=="solidarity-tech-resize"||typeof _.height!="number"||!r.current||(r.current.style.height=`${_.height}px`)};return window.addEventListener("message",d),()=>window.removeEventListener("message",d)},[n]),_e(()=>{let s=i.current;if(!s)return;s.open||s.showModal();let d=()=>o();return s.addEventListener("close",d),()=>{s.removeEventListener("close",d),s.open&&s.close()}},[]);let c=s=>{s.target===i.current&&i.current.close()},u=e.annualIncrease>=400;return l("dialog",{ref:i,className:"modal",onClick:c,children:l("div",{className:"modal-inner",children:[l("button",{type:"button",className:"modal-close",onClick:()=>i.current.close(),"aria-label":"Close",children:"\xD7"}),l("div",{className:"modal-result",children:l(pt,{result:e})}),l("div",{className:"modal-cta",children:[l("p",{className:"modal-cta-eyebrow",children:"What to do now"}),l("h2",{className:"modal-cta-title",children:l("em",{children:"Sign the petition against it."})}),l("iframe",{ref:r,src:n})]})]})})}var _t=[{what:"How rent is calculated",now:"10% of total household income + \u20AC3/week fixed charge",proposed:"12.5% of income \u2014 higher rate, fixed charge removed"},{what:"Additional earners",now:"All income counted in full \u2014 no cap",proposed:"Capped at \u20AC40/week per additional earner (= \u20AC320 net weekly income). Higher secondary earners may see rent fall."},{what:"Minimum weekly rent",now:"\u20AC27.40",proposed:"\u20AC35.00 (+\u20AC7.60/wk = +\u20AC395/yr minimum increase)"},{what:"Discount for non-earning children",now:"No discount",proposed:"\u20AC2/week per non-earning child under 18"},{what:"OAP discount (65+, sole occupant, on state pension)",now:"\u20AC10/week (income threshold: \u20AC289.30/wk)",proposed:"\u20AC10/week (income threshold: \u20AC299.30/wk)"},{what:"Working Family Payment (WFP)",now:"Excluded \u2014 did not affect rent",proposed:"Included \u2014 WFP \xD7 12.5% added to weekly rent"},{what:"Child income under 18",now:"Counted as income",proposed:"No longer counted"},{what:"Child maintenance received",now:"Counted as income",proposed:"No longer counted"},{what:"Disablement Benefit",now:"Counted as income",proposed:"No longer counted"}];function dt(){return l("section",{className:"section changes",children:[l("p",{className:"section-label",children:"For reference"}),l("h2",{className:"section-h",children:"What's actually changing in the proposed 2026 scheme."}),l("div",{className:"changes-table",role:"table",children:[l("div",{className:"changes-head",role:"row",children:[l("div",{role:"columnheader",children:"Item"}),l("div",{role:"columnheader",children:"2025 \u2014 now"}),l("div",{role:"columnheader",children:"2026 \u2014 proposed"})]}),_t.map((e,t)=>l("div",{className:"changes-row",role:"row",children:[l("div",{className:"changes-what",role:"cell",children:e.what}),l("div",{className:"changes-now",role:"cell",children:e.now}),l("div",{className:"changes-proposed",role:"cell",children:e.proposed})]},t))]})]})}function ft(){return l("footer",{className:"disclaimer",children:l("div",{className:"disclaimer-inner",children:[l("p",{className:"disclaimer-title",children:"Notes & sources"}),l("ol",{className:"disclaimer-list",children:[l("li",{children:"This is an estimate. SDCC will calculate your actual 2026 rent using the full income information they hold on file. Your real increase may differ."}),l("li",{children:"WFP is estimated using the standard DSP formula: 60% of (income threshold minus household income). Thresholds used are the 2025 DSP rates. Budget 2026 increased thresholds by \u20AC60/week from January 2026 \u2014 if your WFP changed, enter the actual amount in Q4b for accuracy."}),l("li",{children:"Source: SDCC Differential Rent Scheme 2025 (eff. 1 Jan 2025) and proposed 2026 scheme presented to Housing SPC, 14 May 2026. Note: SDCC's own presentation contained an arithmetic error in the 2-child WFP example \u2014 this calculator uses the correct DSP formula throughout. This calculator is for information only and is not an official SDCC document."}),l("li",{children:"Do not change what you pay until SDCC notifies you. The 2026 scheme is a proposal \u2014 it has not been adopted."})]})]})})}function Qe({campaignUrl:e=st,ctaUrl:t=lt}){let[n,o]=A(""),[i,r]=A(1),[c,p]=A(0),[u,s]=A(!1),[d,a]=A(""),[_,f]=A(!1),[h,k]=A(!1),y=x=>{p(x),x===0&&(s(!1),a(""))},g=x=>{r(x),x>1&&f(!1)},m=fe(()=>{let x=parseFloat(n);return!x||x<=0?null:Oe({currentRent:x,earners:i,children:c,wfp:u,wfpAmount:d,oap:_})},[n,i,c,u,d,_]),N=!!m&&m.hasResult;return l("div",{className:"root",children:[l("main",{className:"main",children:[l("section",{className:"section",children:[l("p",{className:"section-label",children:"The calculator"}),l("h2",{className:"section-h",children:"Your details, your estimate."}),l("div",{className:"calc-column",children:[l(ct,{currentRent:n,setCurrentRent:o,earners:i,setEarners:g,children:c,setChildren:y,wfp:u,setWfp:s,wfpAmount:d,setWfpAmount:a,oap:_,setOap:f}),l("div",{className:"calc-submit",children:[l("button",{type:"button",className:"btn btn-primary",disabled:!N,onClick:()=>k(!0),children:["See my estimate ",l("span",{className:"btn-arrow",children:"\u2192"})]}),!N&&l("span",{className:"calc-submit-hint",children:"Enter your weekly rent to continue."})]})]})]}),l(dt,{}),l(ft,{})]}),h&&N&&l(ut,{result:m,campaignUrl:e,ctaUrl:t,onClose:()=>k(!1)})]})}var Ye=`
1
+ (()=>{var V,v,be,Ve,F,he,we,xe,Z,$,U,ke,oe,ee,te,qe,Q={},Y=[],Je=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,q=Array.isArray;function A(e,t){for(var n in t)e[n]=t[n];return e}function re(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function ae(e,t,n){var o,l,r,s={};for(r in t)r=="key"?o=t[r]:r=="ref"?l=t[r]:s[r]=t[r];if(arguments.length>2&&(s.children=arguments.length>3?V.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(r in e.defaultProps)s[r]===void 0&&(s[r]=e.defaultProps[r]);return j(e,s,o,l,null)}function j(e,t,n,o,l){var r={type:e,props:t,key:n,ref:o,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:l??++be,__i:-1,__u:0};return l==null&&v.vnode!=null&&v.vnode(r),r}function I(e){return e.children}function B(e,t){this.props=e,this.context=t}function R(e,t){if(t==null)return e.__?R(e.__,e.__i+1):null;for(var n;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null)return n.__e;return typeof e.type=="function"?R(e):null}function Xe(e){if(e.__P&&e.__d){var t=e.__v,n=t.__e,o=[],l=[],r=A({},t);r.__v=t.__v+1,v.vnode&&v.vnode(r),ie(e.__P,r,t,e.__n,e.__P.namespaceURI,32&t.__u?[n]:null,o,n??R(t),!!(32&t.__u),l),r.__v=t.__v,r.__.__k[r.__i]=r,Se(o,r,l),t.__e=t.__=null,r.__e!=n&&Ne(r)}}function Ne(e){if((e=e.__)!=null&&e.__c!=null)return e.__e=e.__c.base=null,e.__k.some(function(t){if(t!=null&&t.__e!=null)return e.__e=e.__c.base=t.__e}),Ne(e)}function ge(e){(!e.__d&&(e.__d=!0)&&F.push(e)&&!G.__r++||he!=v.debounceRendering)&&((he=v.debounceRendering)||we)(G)}function G(){try{for(var e,t=1;F.length;)F.length>t&&F.sort(xe),e=F.shift(),t=F.length,Xe(e)}finally{F.length=G.__r=0}}function Ce(e,t,n,o,l,r,s,p,_,c,d){var a,f,u,h,k,y,g,m=o&&o.__k||Y,N=t.length;for(_=Ke(n,t,m,_,N),a=0;a<N;a++)(u=n.__k[a])!=null&&(f=u.__i!=-1&&m[u.__i]||Q,u.__i=a,y=ie(e,u,f,l,r,s,p,_,c,d),h=u.__e,u.ref&&f.ref!=u.ref&&(f.ref&&le(f.ref,null,u),d.push(u.ref,u.__c||h,u)),k==null&&h!=null&&(k=h),(g=!!(4&u.__u))||f.__k===u.__k?(_=Ee(u,_,e,g),g&&f.__e&&(f.__e=null)):typeof u.type=="function"&&y!==void 0?_=y:h&&(_=h.nextSibling),u.__u&=-7);return n.__e=k,_}function Ke(e,t,n,o,l){var r,s,p,_,c,d=n.length,a=d,f=0;for(e.__k=new Array(l),r=0;r<l;r++)(s=t[r])!=null&&typeof s!="boolean"&&typeof s!="function"?(typeof s=="string"||typeof s=="number"||typeof s=="bigint"||s.constructor==String?s=e.__k[r]=j(null,s,null,null,null):q(s)?s=e.__k[r]=j(I,{children:s},null,null,null):s.constructor===void 0&&s.__b>0?s=e.__k[r]=j(s.type,s.props,s.key,s.ref?s.ref:null,s.__v):e.__k[r]=s,_=r+f,s.__=e,s.__b=e.__b+1,p=null,(c=s.__i=Ze(s,n,_,a))!=-1&&(a--,(p=n[c])&&(p.__u|=2)),p==null||p.__v==null?(c==-1&&(l>d?f--:l<d&&f++),typeof s.type!="function"&&(s.__u|=4)):c!=_&&(c==_-1?f--:c==_+1?f++:(c>_?f--:f++,s.__u|=4))):e.__k[r]=null;if(a)for(r=0;r<d;r++)(p=n[r])!=null&&(2&p.__u)==0&&(p.__e==o&&(o=R(p)),Te(p,p));return o}function Ee(e,t,n,o){var l,r;if(typeof e.type=="function"){for(l=e.__k,r=0;l&&r<l.length;r++)l[r]&&(l[r].__=e,t=Ee(l[r],t,n,o));return t}e.__e!=t&&(o&&(t&&e.type&&!t.parentNode&&(t=R(e)),n.insertBefore(e.__e,t||null)),t=e.__e);do t=t&&t.nextSibling;while(t!=null&&t.nodeType==8);return t}function Ze(e,t,n,o){var l,r,s,p=e.key,_=e.type,c=t[n],d=c!=null&&(2&c.__u)==0;if(c===null&&p==null||d&&p==c.key&&_==c.type)return n;if(o>(d?1:0)){for(l=n-1,r=n+1;l>=0||r<t.length;)if((c=t[s=l>=0?l--:r++])!=null&&(2&c.__u)==0&&p==c.key&&_==c.type)return s}return-1}function ve(e,t,n){t[0]=="-"?e.setProperty(t,n??""):e[t]=n==null?"":typeof n!="number"||Je.test(t)?n:n+"px"}function O(e,t,n,o,l){var r,s;e:if(t=="style")if(typeof n=="string")e.style.cssText=n;else{if(typeof o=="string"&&(e.style.cssText=o=""),o)for(t in o)n&&t in n||ve(e.style,t,"");if(n)for(t in n)o&&n[t]==o[t]||ve(e.style,t,n[t])}else if(t[0]=="o"&&t[1]=="n")r=t!=(t=t.replace(ke,"$1")),s=t.toLowerCase(),t=s in e||t=="onFocusOut"||t=="onFocusIn"?s.slice(2):t.slice(2),e.l||(e.l={}),e.l[t+r]=n,n?o?n[U]=o[U]:(n[U]=oe,e.addEventListener(t,r?te:ee,r)):e.removeEventListener(t,r?te:ee,r);else{if(l=="http://www.w3.org/2000/svg")t=t.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if(t!="width"&&t!="height"&&t!="href"&&t!="list"&&t!="form"&&t!="tabIndex"&&t!="download"&&t!="rowSpan"&&t!="colSpan"&&t!="role"&&t!="popover"&&t in e)try{e[t]=n??"";break e}catch{}typeof n=="function"||(n==null||n===!1&&t[4]!="-"?e.removeAttribute(t):e.setAttribute(t,t=="popover"&&n==1?"":n))}}function ye(e){return function(t){if(this.l){var n=this.l[t.type+e];if(t[$]==null)t[$]=oe++;else if(t[$]<n[U])return;return n(v.event?v.event(t):t)}}}function ie(e,t,n,o,l,r,s,p,_,c){var d,a,f,u,h,k,y,g,m,N,C,x,H,M,P,E=t.type;if(t.constructor!==void 0)return null;128&n.__u&&(_=!!(32&n.__u),r=[p=t.__e=n.__e]),(d=v.__b)&&d(t);e:if(typeof E=="function")try{if(g=t.props,m=E.prototype&&E.prototype.render,N=(d=E.contextType)&&o[d.__c],C=d?N?N.props.value:d.__:o,n.__c?y=(a=t.__c=n.__c).__=a.__E:(m?t.__c=a=new E(g,C):(t.__c=a=new B(g,C),a.constructor=E,a.render=tt),N&&N.sub(a),a.state||(a.state={}),a.__n=o,f=a.__d=!0,a.__h=[],a._sb=[]),m&&a.__s==null&&(a.__s=a.state),m&&E.getDerivedStateFromProps!=null&&(a.__s==a.state&&(a.__s=A({},a.__s)),A(a.__s,E.getDerivedStateFromProps(g,a.__s))),u=a.props,h=a.state,a.__v=t,f)m&&E.getDerivedStateFromProps==null&&a.componentWillMount!=null&&a.componentWillMount(),m&&a.componentDidMount!=null&&a.__h.push(a.componentDidMount);else{if(m&&E.getDerivedStateFromProps==null&&g!==u&&a.componentWillReceiveProps!=null&&a.componentWillReceiveProps(g,C),t.__v==n.__v||!a.__e&&a.shouldComponentUpdate!=null&&a.shouldComponentUpdate(g,a.__s,C)===!1){t.__v!=n.__v&&(a.props=g,a.state=a.__s,a.__d=!1),t.__e=n.__e,t.__k=n.__k,t.__k.some(function(T){T&&(T.__=t)}),Y.push.apply(a.__h,a._sb),a._sb=[],a.__h.length&&s.push(a);break e}a.componentWillUpdate!=null&&a.componentWillUpdate(g,a.__s,C),m&&a.componentDidUpdate!=null&&a.__h.push(function(){a.componentDidUpdate(u,h,k)})}if(a.context=C,a.props=g,a.__P=e,a.__e=!1,x=v.__r,H=0,m)a.state=a.__s,a.__d=!1,x&&x(t),d=a.render(a.props,a.state,a.context),Y.push.apply(a.__h,a._sb),a._sb=[];else do a.__d=!1,x&&x(t),d=a.render(a.props,a.state,a.context),a.state=a.__s;while(a.__d&&++H<25);a.state=a.__s,a.getChildContext!=null&&(o=A(A({},o),a.getChildContext())),m&&!f&&a.getSnapshotBeforeUpdate!=null&&(k=a.getSnapshotBeforeUpdate(u,h)),M=d!=null&&d.type===I&&d.key==null?Ae(d.props.children):d,p=Ce(e,q(M)?M:[M],t,n,o,l,r,s,p,_,c),a.base=t.__e,t.__u&=-161,a.__h.length&&s.push(a),y&&(a.__E=a.__=null)}catch(T){if(t.__v=null,_||r!=null)if(T.then){for(t.__u|=_?160:128;p&&p.nodeType==8&&p.nextSibling;)p=p.nextSibling;r[r.indexOf(p)]=null,t.__e=p}else{for(P=r.length;P--;)re(r[P]);ne(t)}else t.__e=n.__e,t.__k=n.__k,T.then||ne(t);v.__e(T,t,n)}else r==null&&t.__v==n.__v?(t.__k=n.__k,t.__e=n.__e):p=t.__e=et(n.__e,t,n,o,l,r,s,_,c);return(d=v.diffed)&&d(t),128&t.__u?void 0:p}function ne(e){e&&(e.__c&&(e.__c.__e=!0),e.__k&&e.__k.some(ne))}function Se(e,t,n){for(var o=0;o<n.length;o++)le(n[o],n[++o],n[++o]);v.__c&&v.__c(t,e),e.some(function(l){try{e=l.__h,l.__h=[],e.some(function(r){r.call(l)})}catch(r){v.__e(r,l.__v)}})}function Ae(e){return typeof e!="object"||e==null||e.__b>0?e:q(e)?e.map(Ae):e.constructor!==void 0?null:A({},e)}function et(e,t,n,o,l,r,s,p,_){var c,d,a,f,u,h,k,y=n.props||Q,g=t.props,m=t.type;if(m=="svg"?l="http://www.w3.org/2000/svg":m=="math"?l="http://www.w3.org/1998/Math/MathML":l||(l="http://www.w3.org/1999/xhtml"),r!=null){for(c=0;c<r.length;c++)if((u=r[c])&&"setAttribute"in u==!!m&&(m?u.localName==m:u.nodeType==3)){e=u,r[c]=null;break}}if(e==null){if(m==null)return document.createTextNode(g);e=document.createElementNS(l,m,g.is&&g),p&&(v.__m&&v.__m(t,r),p=!1),r=null}if(m==null)y===g||p&&e.data==g||(e.data=g);else{if(r=m=="textarea"&&g.defaultValue!=null?null:r&&V.call(e.childNodes),!p&&r!=null)for(y={},c=0;c<e.attributes.length;c++)y[(u=e.attributes[c]).name]=u.value;for(c in y)u=y[c],c=="dangerouslySetInnerHTML"?a=u:c=="children"||c in g||c=="value"&&"defaultValue"in g||c=="checked"&&"defaultChecked"in g||O(e,c,null,u,l);for(c in g)u=g[c],c=="children"?f=u:c=="dangerouslySetInnerHTML"?d=u:c=="value"?h=u:c=="checked"?k=u:p&&typeof u!="function"||y[c]===u||O(e,c,u,y[c],l);if(d)p||a&&(d.__html==a.__html||d.__html==e.innerHTML)||(e.innerHTML=d.__html),t.__k=[];else if(a&&(e.innerHTML=""),Ce(t.type=="template"?e.content:e,q(f)?f:[f],t,n,o,m=="foreignObject"?"http://www.w3.org/1999/xhtml":l,r,s,r?r[0]:n.__k&&R(n,0),p,_),r!=null)for(c=r.length;c--;)re(r[c]);p&&m!="textarea"||(c="value",m=="progress"&&h==null?e.removeAttribute("value"):h!=null&&(h!==e[c]||m=="progress"&&!h||m=="option"&&h!=y[c])&&O(e,c,h,y[c],l),c="checked",k!=null&&k!=e[c]&&O(e,c,k,y[c],l))}return e}function le(e,t,n){try{if(typeof e=="function"){var o=typeof e.__u=="function";o&&e.__u(),o&&t==null||(e.__u=e(t))}else e.current=t}catch(l){v.__e(l,n)}}function Te(e,t,n){var o,l;if(v.unmount&&v.unmount(e),(o=e.ref)&&(o.current&&o.current!=e.__e||le(o,null,t)),(o=e.__c)!=null){if(o.componentWillUnmount)try{o.componentWillUnmount()}catch(r){v.__e(r,t)}o.base=o.__P=null}if(o=e.__k)for(l=0;l<o.length;l++)o[l]&&Te(o[l],t,n||typeof e.type!="function");n||re(e.__e),e.__c=e.__=e.__e=void 0}function tt(e,t,n){return this.constructor(e,n)}function se(e,t,n){var o,l,r,s;t==document&&(t=document.documentElement),v.__&&v.__(e,t),l=(o=typeof n=="function")?null:n&&n.__k||t.__k,r=[],s=[],ie(t,e=(!o&&n||t).__k=ae(I,null,[e]),l||Q,Q,t.namespaceURI,!o&&n?[n]:l?null:t.firstChild?V.call(t.childNodes):null,r,!o&&n?n:l?l.__e:t.firstChild,o,s),Se(r,e,s)}V=Y.slice,v={__e:function(e,t,n,o){for(var l,r,s;t=t.__;)if((l=t.__c)&&!l.__)try{if((r=l.constructor)&&r.getDerivedStateFromError!=null&&(l.setState(r.getDerivedStateFromError(e)),s=l.__d),l.componentDidCatch!=null&&(l.componentDidCatch(e,o||{}),s=l.__d),s)return l.__E=l}catch(p){e=p}throw e}},be=0,Ve=function(e){return e!=null&&e.constructor===void 0},B.prototype.setState=function(e,t){var n;n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=A({},this.state),typeof e=="function"&&(e=e(A({},n),this.props)),e&&A(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),ge(this))},B.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),ge(this))},B.prototype.render=I,F=[],we=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,xe=function(e,t){return e.__v.__b-t.__v.__b},G.__r=0,Z=Math.random().toString(8),$="__d"+Z,U="__a"+Z,ke=/(PointerCapture)$|Capture$/i,oe=0,ee=ye(!1),te=ye(!0),qe=0;var L,b,ce,Fe,X=0,Ue=[],w=v,De=w.__b,Me=w.__r,Pe=w.diffed,Re=w.__c,Ie=w.unmount,We=w.__;function de(e,t){w.__h&&w.__h(b,e,X||t),X=0;var n=b.__H||(b.__H={__:[],__h:[]});return e>=n.__.length&&n.__.push({}),n.__[e]}function D(e){return X=1,nt(ze,e)}function nt(e,t,n){var o=de(L++,2);if(o.t=e,!o.__c&&(o.__=[n?n(t):ze(void 0,t),function(p){var _=o.__N?o.__N[0]:o.__[0],c=o.t(_,p);_!==c&&(o.__N=[c,o.__[1]],o.__c.setState({}))}],o.__c=b,!b.__f)){var l=function(p,_,c){if(!o.__c.__H)return!0;var d=o.__c.__H.__.filter(function(f){return f.__c});if(d.every(function(f){return!f.__N}))return!r||r.call(this,p,_,c);var a=o.__c.props!==p;return d.some(function(f){if(f.__N){var u=f.__[0];f.__=f.__N,f.__N=void 0,u!==f.__[0]&&(a=!0)}}),r&&r.call(this,p,_,c)||a};b.__f=!0;var r=b.shouldComponentUpdate,s=b.componentWillUpdate;b.componentWillUpdate=function(p,_,c){if(this.__e){var d=r;r=void 0,l(p,_,c),r=d}s&&s.call(this,p,_,c)},b.shouldComponentUpdate=l}return o.__N||o.__}function ue(e,t){var n=de(L++,3);!w.__s&&Le(n.__H,t)&&(n.__=e,n.u=t,b.__H.__h.push(n))}function _e(e){return X=5,fe(function(){return{current:e}},[])}function fe(e,t){var n=de(L++,7);return Le(n.__H,t)&&(n.__=e(),n.__H=t,n.__h=e),n.__}function ot(){for(var e;e=Ue.shift();){var t=e.__H;if(e.__P&&t)try{t.__h.some(J),t.__h.some(pe),t.__h=[]}catch(n){t.__h=[],w.__e(n,e.__v)}}}w.__b=function(e){b=null,De&&De(e)},w.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),We&&We(e,t)},w.__r=function(e){Me&&Me(e),L=0;var t=(b=e.__c).__H;t&&(ce===b?(t.__h=[],b.__h=[],t.__.some(function(n){n.__N&&(n.__=n.__N),n.u=n.__N=void 0})):(t.__h.some(J),t.__h.some(pe),t.__h=[],L=0)),ce=b},w.diffed=function(e){Pe&&Pe(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(Ue.push(t)!==1&&Fe===w.requestAnimationFrame||((Fe=w.requestAnimationFrame)||rt)(ot)),t.__H.__.some(function(n){n.u&&(n.__H=n.u),n.u=void 0})),ce=b=null},w.__c=function(e,t){t.some(function(n){try{n.__h.some(J),n.__h=n.__h.filter(function(o){return!o.__||pe(o)})}catch(o){t.some(function(l){l.__h&&(l.__h=[])}),t=[],w.__e(o,n.__v)}}),Re&&Re(e,t)},w.unmount=function(e){Ie&&Ie(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.some(function(o){try{J(o)}catch(l){t=l}}),n.__H=void 0,t&&w.__e(t,n.__v))};var He=typeof requestAnimationFrame=="function";function rt(e){var t,n=function(){clearTimeout(o),He&&cancelAnimationFrame(t),setTimeout(e)},o=setTimeout(n,35);He&&(t=requestAnimationFrame(n))}function J(e){var t=b,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),b=t}function pe(e){var t=b;e.__c=e.__(),b=t}function Le(e,t){return!e||e.length!==t.length||t.some(function(n,o){return n!==e[o]})}function ze(e,t){return typeof t=="function"?t(e):t}var at={RATE_2025:.1,FIXED_CHARGE_2025:3,MIN_RENT_2025:27.4,OAP_THRESHOLD_2025:289.3,RATE_2026:.125,MIN_RENT_2026:35,OAP_THRESHOLD_2026:299.3,OAP_DISCOUNT:10,CHILD_DISCOUNT:2,SUBSIDIARY_INCOME_FLAG:320,WFP_FORMULA_RATE:.6,WFP_THRESHOLDS:{1:705,2:806,3:907,4:998,5:1124}};function Oe({currentRent:e,earners:t,children:n,wfp:o,wfpAmount:l,oap:r}){let s=at,p=Number(e)||0,_=Math.max(1,Number(t)||1),c=Math.max(0,Number(n)||0),a=r&&_===1&&c===0?s.OAP_DISCOUNT:0,f=p>0&&p<=s.MIN_RENT_2025,u=f?s.MIN_RENT_2025:p,h=p>0?Math.max(0,(u+a-s.FIXED_CHARGE_2025)/s.RATE_2025):0,k=c>=1?s.WFP_THRESHOLDS[Math.min(c,5)]??s.WFP_THRESHOLDS[5]:0,y=o&&c>0?Math.max(0,(k-h)*s.WFP_FORMULA_RATE):0,g=l!==""&&!isNaN(parseFloat(l))?parseFloat(l):null,m=0,N=!1,C=!1;o&&c>0&&(g!==null?m=g:(m=y,N=!0,C=y===0));let x=h*s.RATE_2026-c*s.CHILD_DISCOUNT,H=h>0?Math.max(s.MIN_RENT_2026,x)-a:0,M=m*s.RATE_2026,P=H+M,E=p>0&&h>0?P-p:0,T=E*52,Ge=_>1&&h>s.SUBSIDIARY_INCOME_FLAG,K=p>0&&h>0;return{hasResult:K,currentRent:p,proposed2026:K?P:null,proposed2026ExclWfp:K?H:null,wfpExtraRent:M,weeklyIncrease:E,annualIncrease:T,impliedIncome:h,atMin:f,oapDiscount:a,wfpUsed:m,wfpEstimated:N,wfpOverThreshold:C,subsidiaryCapFlag:Ge,childCount:c,wfpThreshold:k,wfp:o&&c>0}}function S(e,{showSign:t=!1,decimals:n=2}={}){return e==null||isNaN(e)?"\u2014":`${t&&e>0?"+":e<0?"\u2212":""}\u20AC${Math.abs(e).toFixed(n)}`}var it=0;function i(e,t,n,o,l,r){t||(t={});var s,p,_=t;if("ref"in _)for(p in _={},t)p=="ref"?s=t[p]:_[p]=t[p];var c={type:e,props:_,key:n,ref:s,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--it,__i:-1,__u:0,__source:l,__self:r};if(typeof e=="function"&&(s=e.defaultProps))for(p in s)_[p]===void 0&&(_[p]=s[p]);return v.vnode&&v.vnode(c),c}var lt="https://www.peoplebeforeprofit.ie/take-action/",st="https://www.norenthikes.ie/petition-form/embed",ct="Sign the petition against the rent hikes.";function W({label:e,hint:t,children:n}){return i("div",{className:"field",children:[i("label",{className:"field-label",children:e}),t&&i("p",{className:"field-hint",children:t}),i("div",{className:"field-control",children:n})]})}function $e({value:e,onChange:t,placeholder:n="0.00"}){return i("div",{className:"money-input",children:[i("span",{className:"money-prefix",children:"\u20AC"}),i("input",{type:"number",inputMode:"decimal",min:"0",step:"0.01",placeholder:n,value:e,onInput:o=>t(o.target.value)})]})}function je({value:e,setValue:t,min:n=0,max:o=99}){return i("div",{className:"stepper",children:[i("button",{type:"button",className:"stepper-btn",onClick:()=>t(Math.max(n,e-1)),disabled:e<=n,"aria-label":"Decrease",children:"\u2212"}),i("div",{className:"stepper-value",children:e}),i("button",{type:"button",className:"stepper-btn",onClick:()=>t(Math.min(o,e+1)),disabled:e>=o,"aria-label":"Increase",children:"+"})]})}function Be({value:e,options:t,onChange:n}){return i("div",{className:"segmented",role:"radiogroup",children:t.map(o=>i("button",{type:"button",role:"radio","aria-checked":e===o.value,className:"segmented-opt"+(e===o.value?" is-active":""),onClick:()=>n(o.value),children:o.label},o.value))})}function pt({currentRent:e,setCurrentRent:t,earners:n,setEarners:o,children:l,setChildren:r,wfp:s,setWfp:p,wfpAmount:_,setWfpAmount:c,oap:d,setOap:a}){let f=l>0;return i("div",{className:"calc-form",children:[i(W,{label:"Question 1 \u2014 What is your current weekly rent?",hint:"Enter the weekly amount from your rent notice.",children:i($e,{value:e,onChange:t})}),i(W,{label:"Question 2 \u2014 How many wage earners are on the rent book?",hint:"Everyone whose income is assessed in your rent.",children:i(je,{value:n,setValue:o,min:1,max:8})}),i(W,{label:"Question 3 \u2014 How many non-earning children under 18 are in the household?",hint:"Children with no income of their own \u2014 enter 0 if none.",children:i(je,{value:l,setValue:r,min:0,max:10})}),f&&i(W,{label:"Question 4 \u2014 Do you receive Working Family Payment (WFP)?",hint:"WFP is a weekly social welfare payment for working families with children. Under the proposed 2026 scheme, WFP would be counted as income for the first time.",children:i(Be,{value:s?"yes":"no",options:[{value:"no",label:"No"},{value:"yes",label:"Yes"}],onChange:h=>p(h==="yes")})}),f&&s&&i(W,{label:"Question 4b \u2014 If you know your weekly WFP amount, enter it here (optional)",hint:"Check your payment letter or MyWelfare.ie. Leave blank and we will estimate it for you using the standard DSP formula.",children:i($e,{value:_,onChange:c,placeholder:"e.g. 153.00"})}),n===1&&l===0&&i(W,{label:"Question 5 \u2014 Are you the sole occupant, aged 65 or over, on the state pension or less?",hint:"This applies only to single occupants aged 65+ on the state pension rate.",children:i(Be,{value:d?"yes":"no",options:[{value:"no",label:"No"},{value:"yes",label:"Yes"}],onChange:h=>a(h==="yes")})})]})}function dt({result:e}){let t=e.annualIncrease,n=t>.5,o=t<-.5;return i("div",{className:"result-headline-block",children:[i("p",{className:"result-eyebrow",children:"Estimated annual rent change"}),i("div",{className:"result-headline"+(n?" up":o?" down":""),children:[n&&i("span",{className:"result-sign",children:"+"}),o&&i("span",{className:"result-sign",children:"\u2212"}),i("span",{className:"result-amount",children:["\u20AC",Math.abs(Math.round(t)).toLocaleString("en-IE")]}),i("span",{className:"result-per",children:"/ year"})]}),i("p",{className:"result-weekly",children:[S(e.weeklyIncrease,{showSign:!0})," per week"]})]})}function ut({result:e}){let t=[];return t.push({text:"This is an estimate. SDCC will calculate your actual new rent using full income information they hold on file. Your actual increase may differ."}),e.wfp?e.wfpOverThreshold?t.push({highlight:!0,text:"WFP NOTE: You said you receive WFP but your implied income may be above the eligibility threshold. If you do receive it, enter the exact amount in Q4b for accuracy."}):e.wfpEstimated?t.push({highlight:!0,text:`WFP ESTIMATED using standard formula (60% of threshold minus estimated income). Amount used: ${S(e.wfpUsed)}/wk. Enter your actual amount in Q4b if known.`}):t.push({text:`WFP INCLUDED: ${S(e.wfpUsed)}/wk adds ${S(e.wfpExtraRent)}/wk to your new rent (\xB1${S(e.wfpExtraRent*12)} from WFP alone).`}):t.push({text:"Working Family Payment: not applicable based on your answers."}),e.subsidiaryCapFlag?t.push({highlight:!0,text:"ADDITIONAL EARNERS: If any additional earner on your rent book earns more than approximately \u20AC420\u2013\u20AC470/week net, the new rent could be lower than shown. The cap of \u20AC40/week per additional earner can outweigh the rate increase on the principal income. This estimate assumes no cap benefit applies."}):t.push({text:"Additional earners: the subsidiary earner cap does not appear to produce a saving at your income level based on your answers."}),e.atMin?t.push({text:"MINIMUM RENT: Your current rent is at or near the minimum rent under the current scheme. The minimum rent is due to increast by \u20AC395/year, as reflected in your estimate above. "}):t.push({text:"MINIMUM RENT: Your current rent is at or near the minimum rent under the current scheme. The minimum rent is due to increast by \u20AC395/year, as reflected in your estimate above. "}),i("div",{className:"result-detail-block",children:[i("div",{className:"result-rows",children:[i("div",{className:"result-row",children:[i("span",{children:"Weekly rent now (2025)"}),i("span",{className:"result-row-val",children:S(e.currentRent)})]}),i("div",{className:"result-row",children:[i("span",{children:"2026 rent (excluding WFP impact)"}),i("span",{className:"result-row-val",children:S(e.proposed2026ExclWfp)})]}),e.wfp&&i("div",{className:"result-row",children:[i("span",{children:["Additional rent from WFP (",S(e.wfpUsed)," \xD7 12.5%)"]}),i("span",{className:"result-row-val",children:S(e.wfpExtraRent)})]}),i("div",{className:"result-row",children:[i("span",{children:"Total weekly rent proposed (2026)"}),i("span",{className:"result-row-val",children:S(e.proposed2026)})]}),i("div",{className:"result-row strong",children:[i("span",{children:"Weekly change"}),i("span",{className:"result-row-val",children:S(e.weeklyIncrease,{showSign:!0})})]})]}),i("p",{className:"result-notes-label",children:"Important \u2014 please read"}),i("div",{className:"result-notes",children:t.map((n,o)=>i("div",{className:"result-note"+(n.highlight?" note-highlight":""),children:[i("strong",{children:[o+1,"."]})," ",n.text]},o))})]})}function _t({result:e,campaignUrl:t,ctaUrl:n,ctaHeading:o,onClose:l}){let r=_e(null),s=_e(null);ue(()=>{let d;try{d=new URL(n).origin}catch{d=null}let a=f=>{if(d&&f.origin!==d)return;let u=f.data;!u||u.type!=="solidarity-tech-resize"||typeof u.height!="number"||!s.current||(s.current.style.height=`${u.height}px`)};return window.addEventListener("message",a),()=>window.removeEventListener("message",a)},[n]),ue(()=>{let d=r.current;if(!d)return;d.open||d.showModal();let a=()=>l();return d.addEventListener("close",a),()=>{d.removeEventListener("close",a),d.open&&d.close()}},[]);let p=d=>{d.target===r.current&&r.current.close()},c=e.annualIncrease>=400;return i("dialog",{ref:r,className:"modal",onClick:p,children:i("div",{className:"modal-inner",children:[i("button",{type:"button",className:"modal-close",onClick:()=>r.current.close(),"aria-label":"Close",children:"\xD7"}),i("div",{className:"modal-headline",children:i(dt,{result:e})}),i("div",{className:"modal-cta",children:[i("p",{className:"modal-cta-eyebrow",children:"What to do now"}),i("h2",{className:"modal-cta-title",children:i("em",{children:o})}),i("iframe",{ref:s,src:n})]}),i("div",{className:"modal-detail",children:i(ut,{result:e})})]})})}var ft=[{what:"How rent is calculated",now:"10% of total household income + \u20AC3/week fixed charge",proposed:"12.5% of income \u2014 higher rate, fixed charge removed"},{what:"Additional earners",now:"All income counted in full \u2014 no cap",proposed:"Capped at \u20AC40/week per additional earner (= \u20AC320 net weekly income). Higher secondary earners may see rent fall."},{what:"Minimum weekly rent",now:"\u20AC27.40",proposed:"\u20AC35.00 (+\u20AC7.60/wk = +\u20AC395/yr minimum increase)"},{what:"Discount for non-earning children",now:"No discount",proposed:"\u20AC2/week per non-earning child under 18"},{what:"OAP discount (65+, sole occupant, on state pension)",now:"\u20AC10/week (income threshold: \u20AC289.30/wk)",proposed:"\u20AC10/week (income threshold: \u20AC299.30/wk)"},{what:"Working Family Payment (WFP)",now:"Excluded \u2014 did not affect rent",proposed:"Included \u2014 WFP \xD7 12.5% added to weekly rent"},{what:"Child income under 18",now:"Counted as income",proposed:"No longer counted"},{what:"Child maintenance received",now:"Counted as income",proposed:"No longer counted"},{what:"Disablement Benefit",now:"Counted as income",proposed:"No longer counted"}];function mt(){return i("section",{className:"section changes",children:[i("p",{className:"section-label",children:"For reference"}),i("h2",{className:"section-h",children:"What's actually changing in the proposed 2026 scheme."}),i("div",{className:"changes-table",role:"table",children:[i("div",{className:"changes-head",role:"row",children:[i("div",{role:"columnheader",children:"Item"}),i("div",{role:"columnheader",children:"2025 \u2014 now"}),i("div",{role:"columnheader",children:"2026 \u2014 proposed"})]}),ft.map((e,t)=>i("div",{className:"changes-row",role:"row",children:[i("div",{className:"changes-what",role:"cell",children:e.what}),i("div",{className:"changes-now",role:"cell",children:e.now}),i("div",{className:"changes-proposed",role:"cell",children:e.proposed})]},t))]})]})}function ht(){return i("footer",{className:"disclaimer",children:i("div",{className:"disclaimer-inner",children:[i("p",{className:"disclaimer-title",children:"Notes & sources"}),i("ol",{className:"disclaimer-list",children:[i("li",{children:"This is an estimate. SDCC will calculate your actual 2026 rent using the full income information they hold on file. Your real increase may differ."}),i("li",{children:"WFP is estimated using the standard DSP formula: 60% of (income threshold minus household income). Thresholds used are the 2025 DSP rates. Budget 2026 increased thresholds by \u20AC60/week from January 2026 \u2014 if your WFP changed, enter the actual amount in Q4b for accuracy."}),i("li",{children:"Source: SDCC Differential Rent Scheme 2025 (eff. 1 Jan 2025) and proposed 2026 scheme presented to Housing SPC, 14 May 2026. Note: SDCC's own presentation contained an arithmetic error in the 2-child WFP example \u2014 this calculator uses the correct DSP formula throughout. This calculator is for information only and is not an official SDCC document."}),i("li",{children:"Do not change what you pay until SDCC notifies you. The 2026 scheme is a proposal \u2014 it has not been adopted."})]})]})})}function Qe({campaignUrl:e=lt,ctaUrl:t=st,ctaHeading:n=ct}){let[o,l]=D(""),[r,s]=D(1),[p,_]=D(0),[c,d]=D(!1),[a,f]=D(""),[u,h]=D(!1),[k,y]=D(!1),g=x=>{_(x),x===0&&(d(!1),f(""))},m=x=>{s(x),x>1&&h(!1)},N=fe(()=>{let x=parseFloat(o);return!x||x<=0?null:Oe({currentRent:x,earners:r,children:p,wfp:c,wfpAmount:a,oap:u})},[o,r,p,c,a,u]),C=!!N&&N.hasResult;return i("div",{className:"root",children:[i("main",{className:"main",children:[i("section",{className:"section",children:[i("p",{className:"section-label",children:"The calculator"}),i("h2",{className:"section-h",children:"Your details, your estimate."}),i("div",{className:"calc-column",children:[i(pt,{currentRent:o,setCurrentRent:l,earners:r,setEarners:m,children:p,setChildren:g,wfp:c,setWfp:d,wfpAmount:a,setWfpAmount:f,oap:u,setOap:h}),i("div",{className:"calc-submit",children:[i("button",{type:"button",className:"btn btn-primary",disabled:!C,onClick:()=>y(!0),children:["See my estimate ",i("span",{className:"btn-arrow",children:"\u2192"})]}),!C&&i("span",{className:"calc-submit-hint",children:"Enter your weekly rent to continue."})]})]})]}),i(mt,{}),i(ht,{})]}),k&&C&&i(_t,{result:N,campaignUrl:e,ctaUrl:t,ctaHeading:n,onClose:()=>y(!1)})]})}var Ye=`
2
2
  :host {
3
3
  display: block;
4
4
 
@@ -346,11 +346,34 @@
346
346
  background: var(--paper);
347
347
  display: grid;
348
348
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
349
+ grid-template-rows: auto minmax(0, 1fr);
350
+ /* Left column stacks headline over detail; CTA spans both rows on the right. */
351
+ grid-template-areas:
352
+ "headline cta"
353
+ "detail cta";
349
354
  max-height: 92vh;
350
355
  overflow: hidden;
351
356
  }
357
+ .modal-headline { grid-area: headline; }
358
+ .modal-cta { grid-area: cta; }
359
+ .modal-detail { grid-area: detail; }
360
+
352
361
  @media (max-width: 860px) {
353
- .modal-inner { grid-template-columns: 1fr; }
362
+ /* Stacked single column, reordered to headline \xB7 CTA \xB7 detail, with the
363
+ whole modal scrolling as one instead of each pane clipping internally. */
364
+ .modal-inner {
365
+ grid-template-columns: 1fr;
366
+ grid-template-rows: auto auto auto;
367
+ grid-template-areas:
368
+ "headline"
369
+ "cta"
370
+ "detail";
371
+ overflow-y: auto;
372
+ -webkit-overflow-scrolling: touch;
373
+ }
374
+ .modal-headline,
375
+ .modal-detail,
376
+ .modal-cta { overflow-y: visible; }
354
377
  }
355
378
 
356
379
  .modal-close {
@@ -377,9 +400,13 @@
377
400
  .modal-close:hover { background: var(--bg-2); }
378
401
  }
379
402
 
380
- .modal-result {
381
- padding: 40px clamp(24px, 4vw, 48px);
403
+ .modal-headline {
404
+ padding: 40px clamp(24px, 4vw, 48px) 0;
405
+ }
406
+ .modal-detail {
407
+ padding: 24px clamp(24px, 4vw, 48px) 40px;
382
408
  overflow-y: auto;
409
+ min-height: 0;
383
410
  }
384
411
 
385
412
  .modal-cta {
@@ -513,4 +540,4 @@
513
540
  }
514
541
  .disclaimer-list li { margin-bottom: 10px; padding-left: 4px; }
515
542
  .disclaimer-list li::marker { color: var(--accent); }
516
- `;var z="sdcc-rent-calculator",mt="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";function ht(){if(typeof document>"u"||document.querySelector(`link[data-${z}-font]`))return;let e=document.createElement("link");e.rel="preconnect",e.href="https://fonts.googleapis.com";let t=document.createElement("link");t.rel="preconnect",t.href="https://fonts.gstatic.com",t.crossOrigin="";let n=document.createElement("link");n.rel="stylesheet",n.href=mt,n.setAttribute(`data-${z}-font`,""),document.head.append(e,t,n)}var me=class extends HTMLElement{static get observedAttributes(){return["campaign-url","cta-url"]}constructor(){super(),this._root=this.attachShadow({mode:"open"}),this._container=null,this._ready=!1}connectedCallback(){ht();let t=document.createElement("style");t.textContent=Ye,this._container=document.createElement("div"),this._root.append(t,this._container),this._render(),this._ready||(this._ready=!0,this.dispatchEvent(new CustomEvent(`${z}:ready`,{bubbles:!0,composed:!0})))}disconnectedCallback(){this._container&&le(null,this._container)}attributeChangedCallback(){this._container&&this._render()}_render(){let t=this.getAttribute("campaign-url")||void 0,n=this.getAttribute("cta-url")||void 0;le(ae(Qe,{campaignUrl:t,ctaUrl:n}),this._container)}};typeof customElements<"u"&&!customElements.get(z)&&customElements.define(z,me);})();
543
+ `;var z="sdcc-rent-calculator",gt="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";function vt(){if(typeof document>"u"||document.querySelector(`link[data-${z}-font]`))return;let e=document.createElement("link");e.rel="preconnect",e.href="https://fonts.googleapis.com";let t=document.createElement("link");t.rel="preconnect",t.href="https://fonts.gstatic.com",t.crossOrigin="";let n=document.createElement("link");n.rel="stylesheet",n.href=gt,n.setAttribute(`data-${z}-font`,""),document.head.append(e,t,n)}var me=class extends HTMLElement{static get observedAttributes(){return["campaign-url","cta-url","cta-heading"]}constructor(){super(),this._root=this.attachShadow({mode:"open"}),this._container=null,this._ready=!1}connectedCallback(){vt();let t=document.createElement("style");t.textContent=Ye,this._container=document.createElement("div"),this._root.append(t,this._container),this._render(),this._ready||(this._ready=!0,this.dispatchEvent(new CustomEvent(`${z}:ready`,{bubbles:!0,composed:!0})))}disconnectedCallback(){this._container&&se(null,this._container)}attributeChangedCallback(){this._container&&this._render()}_render(){let t=this.getAttribute("campaign-url")||void 0,n=this.getAttribute("cta-url")||void 0,o=this.getAttribute("cta-heading")||void 0;se(ae(Qe,{campaignUrl:t,ctaUrl:n,ctaHeading:o}),this._container)}};typeof customElements<"u"&&!customElements.get(z)&&customElements.define(z,me);})();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sdcc-rent-calculator",
3
- "version": "0.7.0",
3
+ "version": "1.0.0",
4
4
  "description": "Embeddable web component that estimates the rent increase a South Dublin County Council tenant would face under the proposed 2026 Differential Rent Scheme.",
5
5
  "type": "module",
6
6
  "main": "dist/sdcc-rent-calculator.js",