UNPKG

css-tree

Version:

A tool set for CSS: fast detailed parser (CSS → AST), walker (AST traversal), generator (AST → CSS) and lexer (validation and matching) based on specs and browser implementations

10 lines 203 kB
var Us=Object.create;var cr=Object.defineProperty;var Hs=Object.getOwnPropertyDescriptor;var Gs=Object.getOwnPropertyNames;var Ys=Object.getPrototypeOf,Ks=Object.prototype.hasOwnProperty;var Be=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),f=(e,t)=>{for(var r in t)cr(e,r,{get:t[r],enumerable:!0})},Vs=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Gs(t))!Ks.call(e,i)&&i!==r&&cr(e,i,{get:()=>t[i],enumerable:!(n=Hs(t,i))||n.enumerable});return e};var Qs=(e,t,r)=>(r=e!=null?Us(Ys(e)):{},Vs(t||!e||!e.__esModule?cr(r,"default",{value:e,enumerable:!0}):r,e));var Po=Be(xr=>{var zo="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");xr.encode=function(e){if(0<=e&&e<zo.length)return zo[e];throw new TypeError("Must be between 0 and 63: "+e)};xr.decode=function(e){var t=65,r=90,n=97,i=122,o=48,a=57,c=43,u=47,s=26,l=52;return t<=e&&e<=r?e-t:n<=e&&e<=i?e-n+s:o<=e&&e<=a?e-o+l:e==c?62:e==u?63:-1}});var Fo=Be(wr=>{var Io=Po(),kr=5,No=1<<kr,Do=No-1,Oo=No;function ll(e){return e<0?(-e<<1)+1:(e<<1)+0}function cl(e){var t=(e&1)===1,r=e>>1;return t?-r:r}wr.encode=function(t){var r="",n,i=ll(t);do n=i&Do,i>>>=kr,i>0&&(n|=Oo),r+=Io.encode(n);while(i>0);return r};wr.decode=function(t,r,n){var i=t.length,o=0,a=0,c,u;do{if(r>=i)throw new Error("Expected more digits in base 64 VLQ value.");if(u=Io.decode(t.charCodeAt(r++)),u===-1)throw new Error("Invalid base64 digit: "+t.charAt(r-1));c=!!(u&Oo),u&=Do,o=o+(u<<a),a+=kr}while(c);n.value=cl(o),n.rest=r}});var Mt=Be(W=>{function ul(e,t,r){if(t in e)return e[t];if(arguments.length===3)return r;throw new Error('"'+t+'" is a required argument.')}W.getArg=ul;var Ro=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,pl=/^data:.+\,.+$/;function pt(e){var t=e.match(Ro);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}W.urlParse=pt;function Ke(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}W.urlGenerate=Ke;var hl=32;function ml(e){var t=[];return function(r){for(var n=0;n<t.length;n++)if(t[n].input===r){var i=t[0];return t[0]=t[n],t[n]=i,t[0].result}var o=e(r);return t.unshift({input:r,result:o}),t.length>hl&&t.pop(),o}}var vr=ml(function(t){var r=t,n=pt(t);if(n){if(!n.path)return t;r=n.path}for(var i=W.isAbsolute(r),o=[],a=0,c=0;;)if(a=c,c=r.indexOf("/",a),c===-1){o.push(r.slice(a));break}else for(o.push(r.slice(a,c));c<r.length&&r[c]==="/";)c++;for(var u,s=0,c=o.length-1;c>=0;c--)u=o[c],u==="."?o.splice(c,1):u===".."?s++:s>0&&(u===""?(o.splice(c+1,s),s=0):(o.splice(c,2),s--));return r=o.join("/"),r===""&&(r=i?"/":"."),n?(n.path=r,Ke(n)):r});W.normalize=vr;function Mo(e,t){e===""&&(e="."),t===""&&(t=".");var r=pt(t),n=pt(e);if(n&&(e=n.path||"/"),r&&!r.scheme)return n&&(r.scheme=n.scheme),Ke(r);if(r||t.match(pl))return t;if(n&&!n.host&&!n.path)return n.host=t,Ke(n);var i=t.charAt(0)==="/"?t:vr(e.replace(/\/+$/,"")+"/"+t);return n?(n.path=i,Ke(n)):i}W.join=Mo;W.isAbsolute=function(e){return e.charAt(0)==="/"||Ro.test(e)};function dl(e,t){e===""&&(e="."),e=e.replace(/\/$/,"");for(var r=0;t.indexOf(e+"/")!==0;){var n=e.lastIndexOf("/");if(n<0||(e=e.slice(0,n),e.match(/^([^\/]+:\/)?\/*$/)))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)}W.relative=dl;var Bo=(function(){var e=Object.create(null);return!("__proto__"in e)})();function _o(e){return e}function fl(e){return Wo(e)?"$"+e:e}W.toSetString=Bo?_o:fl;function gl(e){return Wo(e)?e.slice(1):e}W.fromSetString=Bo?_o:gl;function Wo(e){if(!e)return!1;var t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(var r=t-10;r>=0;r--)if(e.charCodeAt(r)!==36)return!1;return!0}function bl(e,t,r){var n=ke(e.source,t.source);return n!==0||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0||r)||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=e.generatedLine-t.generatedLine,n!==0)?n:ke(e.name,t.name)}W.compareByOriginalPositions=bl;function yl(e,t,r){var n;return n=e.originalLine-t.originalLine,n!==0||(n=e.originalColumn-t.originalColumn,n!==0||r)||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=e.generatedLine-t.generatedLine,n!==0)?n:ke(e.name,t.name)}W.compareByOriginalPositionsNoSource=yl;function xl(e,t,r){var n=e.generatedLine-t.generatedLine;return n!==0||(n=e.generatedColumn-t.generatedColumn,n!==0||r)||(n=ke(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:ke(e.name,t.name)}W.compareByGeneratedPositionsDeflated=xl;function kl(e,t,r){var n=e.generatedColumn-t.generatedColumn;return n!==0||r||(n=ke(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:ke(e.name,t.name)}W.compareByGeneratedPositionsDeflatedNoLine=kl;function ke(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function wl(e,t){var r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=ke(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:ke(e.name,t.name)}W.compareByGeneratedPositionsInflated=wl;function vl(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}W.parseSourceMapInput=vl;function Sl(e,t,r){if(t=t||"",e&&(e[e.length-1]!=="/"&&t[0]!=="/"&&(e+="/"),t=e+t),r){var n=pt(r);if(!n)throw new Error("sourceMapURL could not be parsed");if(n.path){var i=n.path.lastIndexOf("/");i>=0&&(n.path=n.path.substring(0,i+1))}t=Mo(Ke(n),t)}return vr(t)}W.computeSourceURL=Sl});var jo=Be(qo=>{var Sr=Mt(),Cr=Object.prototype.hasOwnProperty,Oe=typeof Map<"u";function we(){this._array=[],this._set=Oe?new Map:Object.create(null)}we.fromArray=function(t,r){for(var n=new we,i=0,o=t.length;i<o;i++)n.add(t[i],r);return n};we.prototype.size=function(){return Oe?this._set.size:Object.getOwnPropertyNames(this._set).length};we.prototype.add=function(t,r){var n=Oe?t:Sr.toSetString(t),i=Oe?this.has(t):Cr.call(this._set,n),o=this._array.length;(!i||r)&&this._array.push(t),i||(Oe?this._set.set(t,o):this._set[n]=o)};we.prototype.has=function(t){if(Oe)return this._set.has(t);var r=Sr.toSetString(t);return Cr.call(this._set,r)};we.prototype.indexOf=function(t){if(Oe){var r=this._set.get(t);if(r>=0)return r}else{var n=Sr.toSetString(t);if(Cr.call(this._set,n))return this._set[n]}throw new Error('"'+t+'" is not in the set.')};we.prototype.at=function(t){if(t>=0&&t<this._array.length)return this._array[t];throw new Error("No element indexed by "+t)};we.prototype.toArray=function(){return this._array.slice()};qo.ArraySet=we});var Go=Be(Ho=>{var Uo=Mt();function Cl(e,t){var r=e.generatedLine,n=t.generatedLine,i=e.generatedColumn,o=t.generatedColumn;return n>r||n==r&&o>=i||Uo.compareByGeneratedPositionsInflated(e,t)<=0}function Bt(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}Bt.prototype.unsortedForEach=function(t,r){this._array.forEach(t,r)};Bt.prototype.add=function(t){Cl(this._last,t)?(this._last=t,this._array.push(t)):(this._sorted=!1,this._array.push(t))};Bt.prototype.toArray=function(){return this._sorted||(this._array.sort(Uo.compareByGeneratedPositionsInflated),this._sorted=!0),this._array};Ho.MappingList=Bt});var Ko=Be(Yo=>{var ht=Fo(),F=Mt(),_t=jo().ArraySet,Tl=Go().MappingList;function oe(e){e||(e={}),this._file=F.getArg(e,"file",null),this._sourceRoot=F.getArg(e,"sourceRoot",null),this._skipValidation=F.getArg(e,"skipValidation",!1),this._ignoreInvalidMapping=F.getArg(e,"ignoreInvalidMapping",!1),this._sources=new _t,this._names=new _t,this._mappings=new Tl,this._sourcesContents=null}oe.prototype._version=3;oe.fromSourceMap=function(t,r){var n=t.sourceRoot,i=new oe(Object.assign(r||{},{file:t.file,sourceRoot:n}));return t.eachMapping(function(o){var a={generated:{line:o.generatedLine,column:o.generatedColumn}};o.source!=null&&(a.source=o.source,n!=null&&(a.source=F.relative(n,a.source)),a.original={line:o.originalLine,column:o.originalColumn},o.name!=null&&(a.name=o.name)),i.addMapping(a)}),t.sources.forEach(function(o){var a=o;n!==null&&(a=F.relative(n,o)),i._sources.has(a)||i._sources.add(a);var c=t.sourceContentFor(o);c!=null&&i.setSourceContent(o,c)}),i};oe.prototype.addMapping=function(t){var r=F.getArg(t,"generated"),n=F.getArg(t,"original",null),i=F.getArg(t,"source",null),o=F.getArg(t,"name",null);!this._skipValidation&&this._validateMapping(r,n,i,o)===!1||(i!=null&&(i=String(i),this._sources.has(i)||this._sources.add(i)),o!=null&&(o=String(o),this._names.has(o)||this._names.add(o)),this._mappings.add({generatedLine:r.line,generatedColumn:r.column,originalLine:n!=null&&n.line,originalColumn:n!=null&&n.column,source:i,name:o}))};oe.prototype.setSourceContent=function(t,r){var n=t;this._sourceRoot!=null&&(n=F.relative(this._sourceRoot,n)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[F.toSetString(n)]=r):this._sourcesContents&&(delete this._sourcesContents[F.toSetString(n)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))};oe.prototype.applySourceMap=function(t,r,n){var i=r;if(r==null){if(t.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);i=t.file}var o=this._sourceRoot;o!=null&&(i=F.relative(o,i));var a=new _t,c=new _t;this._mappings.unsortedForEach(function(u){if(u.source===i&&u.originalLine!=null){var s=t.originalPositionFor({line:u.originalLine,column:u.originalColumn});s.source!=null&&(u.source=s.source,n!=null&&(u.source=F.join(n,u.source)),o!=null&&(u.source=F.relative(o,u.source)),u.originalLine=s.line,u.originalColumn=s.column,s.name!=null&&(u.name=s.name))}var l=u.source;l!=null&&!a.has(l)&&a.add(l);var p=u.name;p!=null&&!c.has(p)&&c.add(p)},this),this._sources=a,this._names=c,t.sources.forEach(function(u){var s=t.sourceContentFor(u);s!=null&&(n!=null&&(u=F.join(n,u)),o!=null&&(u=F.relative(o,u)),this.setSourceContent(u,s))},this)};oe.prototype._validateMapping=function(t,r,n,i){if(r&&typeof r.line!="number"&&typeof r.column!="number"){var o="original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.";if(this._ignoreInvalidMapping)return typeof console<"u"&&console.warn&&console.warn(o),!1;throw new Error(o)}if(!(t&&"line"in t&&"column"in t&&t.line>0&&t.column>=0&&!r&&!n&&!i)){if(t&&"line"in t&&"column"in t&&r&&"line"in r&&"column"in r&&t.line>0&&t.column>=0&&r.line>0&&r.column>=0&&n)return;var o="Invalid mapping: "+JSON.stringify({generated:t,source:n,original:r,name:i});if(this._ignoreInvalidMapping)return typeof console<"u"&&console.warn&&console.warn(o),!1;throw new Error(o)}};oe.prototype._serializeMappings=function(){for(var t=0,r=1,n=0,i=0,o=0,a=0,c="",u,s,l,p,h=this._mappings.toArray(),d=0,b=h.length;d<b;d++){if(s=h[d],u="",s.generatedLine!==r)for(t=0;s.generatedLine!==r;)u+=";",r++;else if(d>0){if(!F.compareByGeneratedPositionsInflated(s,h[d-1]))continue;u+=","}u+=ht.encode(s.generatedColumn-t),t=s.generatedColumn,s.source!=null&&(p=this._sources.indexOf(s.source),u+=ht.encode(p-a),a=p,u+=ht.encode(s.originalLine-1-i),i=s.originalLine-1,u+=ht.encode(s.originalColumn-n),n=s.originalColumn,s.name!=null&&(l=this._names.indexOf(s.name),u+=ht.encode(l-o),o=l)),c+=u}return c};oe.prototype._generateSourcesContent=function(t,r){return t.map(function(n){if(!this._sourcesContents)return null;r!=null&&(n=F.relative(r,n));var i=F.toSetString(n);return Object.prototype.hasOwnProperty.call(this._sourcesContents,i)?this._sourcesContents[i]:null},this)};oe.prototype.toJSON=function(){var t={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(t.file=this._file),this._sourceRoot!=null&&(t.sourceRoot=this._sourceRoot),this._sourcesContents&&(t.sourcesContent=this._generateSourcesContent(t.sources,t.sourceRoot)),t};oe.prototype.toString=function(){return JSON.stringify(this.toJSON())};Yo.SourceMapGenerator=oe});var ur={};f(ur,{AtKeyword:()=>N,BadString:()=>_e,BadUrl:()=>G,CDC:()=>Y,CDO:()=>Pe,Colon:()=>B,Comma:()=>K,Comment:()=>D,Delim:()=>w,Dimension:()=>k,EOF:()=>be,Function:()=>x,Hash:()=>T,Ident:()=>m,LeftCurlyBracket:()=>R,LeftParenthesis:()=>S,LeftSquareBracket:()=>$,Number:()=>g,Percentage:()=>P,RightCurlyBracket:()=>Z,RightParenthesis:()=>y,RightSquareBracket:()=>ee,Semicolon:()=>_,String:()=>ne,Url:()=>M,WhiteSpace:()=>L});var be=0,m=1,x=2,N=3,T=4,ne=5,_e=6,M=7,G=8,w=9,g=10,P=11,k=12,L=13,Pe=14,Y=15,B=16,_=17,K=18,$=19,ee=20,S=21,y=22,R=23,Z=24,D=25;function O(e){return e>=48&&e<=57}function te(e){return O(e)||e>=65&&e<=70||e>=97&&e<=102}function zt(e){return e>=65&&e<=90}function Xs(e){return e>=97&&e<=122}function $s(e){return zt(e)||Xs(e)}function Zs(e){return e>=128}function Et(e){return $s(e)||Zs(e)||e===95}function We(e){return Et(e)||O(e)||e===45}function Js(e){return e>=0&&e<=8||e===11||e>=14&&e<=31||e===127}function it(e){return e===10||e===13||e===12}function me(e){return it(e)||e===32||e===9}function V(e,t){return!(e!==92||it(t)||t===0)}function qe(e,t,r){return e===45?Et(t)||t===45||V(t,r):Et(e)?!0:e===92?V(e,t):!1}function Pt(e,t,r){return e===43||e===45?O(t)?2:t===46&&O(r)?3:0:e===46?O(t)?2:0:O(e)?1:0}function It(e){return e===65279||e===65534?1:0}var pr=new Array(128),el=128,ot=130,hr=131,Nt=132,mr=133;for(let e=0;e<pr.length;e++)pr[e]=me(e)&&ot||O(e)&&hr||Et(e)&&Nt||Js(e)&&mr||e||el;function Dt(e){return e<128?pr[e]:Nt}function je(e,t){return t<e.length?e.charCodeAt(t):0}function Ot(e,t,r){return r===13&&je(e,t+1)===10?2:1}function ye(e,t,r){let n=e.charCodeAt(t);return zt(n)&&(n=n|32),n===r}function xe(e,t,r,n){if(r-t!==n.length||t<0||r>e.length)return!1;for(let i=t;i<r;i++){let o=n.charCodeAt(i-t),a=e.charCodeAt(i);if(zt(a)&&(a=a|32),a!==o)return!1}return!0}function bo(e,t){for(;t>=0&&me(e.charCodeAt(t));t--);return t+1}function at(e,t){for(;t<e.length&&me(e.charCodeAt(t));t++);return t}function dr(e,t){for(;t<e.length&&O(e.charCodeAt(t));t++);return t}function se(e,t){if(t+=2,te(je(e,t-1))){for(let n=Math.min(e.length,t+5);t<n&&te(je(e,t));t++);let r=je(e,t);me(r)&&(t+=Ot(e,t,r))}return t}function st(e,t){for(;t<e.length;t++){let r=e.charCodeAt(t);if(!We(r)){if(V(r,je(e,t+1))){t=se(e,t)-1;continue}break}}return t}function Ie(e,t){let r=e.charCodeAt(t);if((r===43||r===45)&&(r=e.charCodeAt(t+=1)),O(r)&&(t=dr(e,t+1),r=e.charCodeAt(t)),r===46&&O(e.charCodeAt(t+1))&&(t+=2,t=dr(e,t)),ye(e,t,101)){let n=0;r=e.charCodeAt(t+1),(r===45||r===43)&&(n=1,r=e.charCodeAt(t+2)),O(r)&&(t=dr(e,t+1+n+1))}return t}function Ft(e,t){for(;t<e.length;t++){let r=e.charCodeAt(t);if(r===41){t++;break}V(r,je(e,t+1))&&(t=se(e,t))}return t}function Ue(e){if(e.length===1&&!te(e.charCodeAt(0)))return e[0];let t=parseInt(e,16);return(t===0||t>=55296&&t<=57343||t>1114111)&&(t=65533),String.fromCodePoint(t)}var Ne=["EOF-token","ident-token","function-token","at-keyword-token","hash-token","string-token","bad-string-token","url-token","bad-url-token","delim-token","number-token","percentage-token","dimension-token","whitespace-token","CDO-token","CDC-token","colon-token","semicolon-token","comma-token","[-token","]-token","(-token",")-token","{-token","}-token","comment-token"];function He(e=null,t){return e===null||e.length<t?new Uint32Array(Math.max(t+1024,16384)):e}var yo=10,tl=12,xo=13;function ko(e){let t=e.source,r=t.length,n=t.length>0?It(t.charCodeAt(0)):0,i=He(e.lines,r),o=He(e.columns,r),a=e.startLine,c=e.startColumn;for(let u=n;u<r;u++){let s=t.charCodeAt(u);i[u]=a,o[u]=c++,(s===yo||s===xo||s===tl)&&(s===xo&&u+1<r&&t.charCodeAt(u+1)===yo&&(u++,i[u]=a,o[u]=c),a++,c=1)}i[r]=a,o[r]=c,e.lines=i,e.columns=o,e.computed=!0}var lt=class{constructor(t,r,n,i){this.setSource(t,r,n,i),this.lines=null,this.columns=null}setSource(t="",r=0,n=1,i=1){this.source=t,this.startOffset=r,this.startLine=n,this.startColumn=i,this.computed=!1}getLocation(t,r){return this.computed||ko(this),{source:r,offset:this.startOffset+t,line:this.lines[t],column:this.columns[t]}}getLocationRange(t,r,n){return this.computed||ko(this),{source:n,start:{offset:this.startOffset+t,line:this.lines[t],column:this.columns[t]},end:{offset:this.startOffset+r,line:this.lines[r],column:this.columns[r]}}}};var le=16777215,ce=24,ut=1,Rt=2,Te=new Uint8Array(32);Te[2]=22;Te[21]=22;Te[19]=20;Te[23]=24;var ue=new Uint8Array(32);ue[2]=ut;ue[21]=ut;ue[19]=ut;ue[23]=ut;ue[22]=Rt;ue[20]=Rt;ue[24]=Rt;function wo(e,t,r){return e<t?t:e>r?r:e}var ct=class{constructor(t,r){this.setSource(t,r)}reset(){this.eof=!1,this.tokenIndex=-1,this.tokenType=0,this.tokenStart=this.firstCharOffset,this.tokenEnd=this.firstCharOffset}setSource(t="",r=()=>{}){t=String(t||"");let n=t.length,i=He(this.offsetAndType,t.length+1),o=He(this.balance,t.length+1),a=0,c=-1,u=0,s=t.length;this.offsetAndType=null,this.balance=null,o.fill(0),r(t,(l,p,h)=>{let d=a++;if(i[d]=l<<ce|h,c===-1&&(c=p),o[d]=s,l===u){let b=o[s];o[s]=d,s=b,u=Te[i[b]>>ce]}else this.isBlockOpenerTokenType(l)&&(s=d,u=Te[l])}),i[a]=0<<ce|n,o[a]=a;for(let l=0;l<a;l++){let p=o[l];if(p<=l){let h=o[p];h!==l&&(o[l]=h)}else p>a&&(o[l]=a)}this.source=t,this.firstCharOffset=c===-1?0:c,this.tokenCount=a,this.offsetAndType=i,this.balance=o,this.reset(),this.next()}lookupType(t){return t+=this.tokenIndex,t<this.tokenCount?this.offsetAndType[t]>>ce:0}lookupTypeNonSC(t){for(let r=this.tokenIndex;r<this.tokenCount;r++){let n=this.offsetAndType[r]>>ce;if(n!==13&&n!==25&&t--===0)return n}return 0}lookupOffset(t){return t+=this.tokenIndex,t<this.tokenCount?this.offsetAndType[t-1]&le:this.source.length}lookupOffsetNonSC(t){for(let r=this.tokenIndex;r<this.tokenCount;r++){let n=this.offsetAndType[r]>>ce;if(n!==13&&n!==25&&t--===0)return r-this.tokenIndex}return 0}lookupValue(t,r){return t+=this.tokenIndex,t<this.tokenCount?xe(this.source,this.offsetAndType[t-1]&le,this.offsetAndType[t]&le,r):!1}getTokenStart(t){return t===this.tokenIndex?this.tokenStart:t>0?t<this.tokenCount?this.offsetAndType[t-1]&le:this.offsetAndType[this.tokenCount]&le:this.firstCharOffset}getTokenEnd(t){return t===this.tokenIndex?this.tokenEnd:this.offsetAndType[wo(t,0,this.tokenCount)]&le}getTokenType(t){return t===this.tokenIndex?this.tokenType:this.offsetAndType[wo(t,0,this.tokenCount)]>>ce}substrToCursor(t){return this.source.substring(t,this.tokenStart)}isBlockOpenerTokenType(t){return ue[t]===ut}isBlockCloserTokenType(t){return ue[t]===Rt}getBlockTokenPairIndex(t){let r=this.getTokenType(t);if(ue[r]===1){let n=this.balance[t],i=this.getTokenType(n);return Te[r]===i?n:-1}else if(ue[r]===2){let n=this.balance[t],i=this.getTokenType(n);return Te[i]===r?n:-1}return-1}isBalanceEdge(t){return this.balance[this.tokenIndex]<t}isDelim(t,r){return r?this.lookupType(r)===9&&this.source.charCodeAt(this.lookupOffset(r))===t:this.tokenType===9&&this.source.charCodeAt(this.tokenStart)===t}skip(t){let r=this.tokenIndex+t;r<this.tokenCount?(this.tokenIndex=r,this.tokenStart=this.offsetAndType[r-1]&le,r=this.offsetAndType[r],this.tokenType=r>>ce,this.tokenEnd=r&le):(this.tokenIndex=this.tokenCount,this.next())}next(){let t=this.tokenIndex+1;t<this.tokenCount?(this.tokenIndex=t,this.tokenStart=this.tokenEnd,t=this.offsetAndType[t],this.tokenType=t>>ce,this.tokenEnd=t&le):(this.eof=!0,this.tokenIndex=this.tokenCount,this.tokenType=0,this.tokenStart=this.tokenEnd=this.source.length)}skipSC(){for(;this.tokenType===13||this.tokenType===25;)this.next()}skipUntilBalanced(t,r){let n=t,i=0,o=0;e:for(;n<this.tokenCount;n++){if(i=this.balance[n],i<t)break e;switch(o=n>0?this.offsetAndType[n-1]&le:this.firstCharOffset,r(this.source.charCodeAt(o))){case 1:break e;case 2:n++;break e;default:this.isBlockOpenerTokenType(this.offsetAndType[n]>>ce)&&(n=i)}}this.skip(n-this.tokenIndex)}forEachToken(t){for(let r=0,n=this.firstCharOffset;r<this.tokenCount;r++){let i=n,o=this.offsetAndType[r],a=o&le,c=o>>ce;n=a,t(c,i,a,r)}}dump(){let t=new Array(this.tokenCount);return this.forEachToken((r,n,i,o)=>{t[o]={idx:o,type:Ne[r],chunk:this.source.substring(n,i),balance:this.balance[o]}}),t}};function Le(e,t){function r(p){return p<c?e.charCodeAt(p):0}function n(){if(s=Ie(e,s),qe(r(s),r(s+1),r(s+2))){l=12,s=st(e,s);return}if(r(s)===37){l=11,s++;return}l=10}function i(){let p=s;if(s=st(e,s),xe(e,p,s,"url")&&r(s)===40){if(s=at(e,s+1),r(s)===34||r(s)===39){l=2,s=p+4;return}a();return}if(r(s)===40){l=2,s++;return}l=1}function o(p){for(p||(p=r(s++)),l=5;s<e.length;s++){let h=e.charCodeAt(s);switch(Dt(h)){case p:s++;return;case ot:if(it(h)){s+=Ot(e,s,h),l=6;return}break;case 92:if(s===e.length-1)break;let d=r(s+1);it(d)?s+=Ot(e,s+1,d):V(h,d)&&(s=se(e,s)-1);break}}}function a(){for(l=7,s=at(e,s);s<e.length;s++){let p=e.charCodeAt(s);switch(Dt(p)){case 41:s++;return;case ot:if(s=at(e,s),r(s)===41||s>=e.length){s<e.length&&s++;return}s=Ft(e,s),l=8;return;case 34:case 39:case 40:case mr:s=Ft(e,s),l=8;return;case 92:if(V(p,r(s+1))){s=se(e,s)-1;break}s=Ft(e,s),l=8;return}}}e=String(e||"");let c=e.length,u=It(r(0)),s=u,l;for(;s<c;){let p=e.charCodeAt(s);switch(Dt(p)){case ot:l=13,s=at(e,s+1);break;case 34:o();break;case 35:We(r(s+1))||V(r(s+1),r(s+2))?(l=4,s=st(e,s+1)):(l=9,s++);break;case 39:o();break;case 40:l=21,s++;break;case 41:l=22,s++;break;case 43:Pt(p,r(s+1),r(s+2))?n():(l=9,s++);break;case 44:l=18,s++;break;case 45:Pt(p,r(s+1),r(s+2))?n():r(s+1)===45&&r(s+2)===62?(l=15,s=s+3):qe(p,r(s+1),r(s+2))?i():(l=9,s++);break;case 46:Pt(p,r(s+1),r(s+2))?n():(l=9,s++);break;case 47:r(s+1)===42?(l=25,s=e.indexOf("*/",s+2),s=s===-1?e.length:s+2):(l=9,s++);break;case 58:l=16,s++;break;case 59:l=17,s++;break;case 60:r(s+1)===33&&r(s+2)===45&&r(s+3)===45?(l=14,s=s+4):(l=9,s++);break;case 64:qe(r(s+1),r(s+2),r(s+3))?(l=3,s=st(e,s+1)):(l=9,s++);break;case 91:l=19,s++;break;case 92:V(p,r(s+1))?i():(l=9,s++);break;case 93:l=20,s++;break;case 123:l=23,s++;break;case 125:l=24,s++;break;case hr:n();break;case Nt:i();break;default:l=9,s++}t(l,u,u=s)}}var Ge=null,Q=class e{static createItem(t){return{prev:null,next:null,data:t}}constructor(){this.head=null,this.tail=null,this.cursor=null}createItem(t){return e.createItem(t)}allocateCursor(t,r){let n;return Ge!==null?(n=Ge,Ge=Ge.cursor,n.prev=t,n.next=r,n.cursor=this.cursor):n={prev:t,next:r,cursor:this.cursor},this.cursor=n,n}releaseCursor(){let{cursor:t}=this;this.cursor=t.cursor,t.prev=null,t.next=null,t.cursor=Ge,Ge=t}updateCursors(t,r,n,i){let{cursor:o}=this;for(;o!==null;)o.prev===t&&(o.prev=r),o.next===n&&(o.next=i),o=o.cursor}*[Symbol.iterator](){for(let t=this.head;t!==null;t=t.next)yield t.data}get size(){let t=0;for(let r=this.head;r!==null;r=r.next)t++;return t}get isEmpty(){return this.head===null}get first(){return this.head&&this.head.data}get last(){return this.tail&&this.tail.data}fromArray(t){let r=null;this.head=null;for(let n of t){let i=e.createItem(n);r!==null?r.next=i:this.head=i,i.prev=r,r=i}return this.tail=r,this}toArray(){return[...this]}toJSON(){return[...this]}forEach(t,r=this){let n=this.allocateCursor(null,this.head);for(;n.next!==null;){let i=n.next;n.next=i.next,t.call(r,i.data,i,this)}this.releaseCursor()}forEachRight(t,r=this){let n=this.allocateCursor(this.tail,null);for(;n.prev!==null;){let i=n.prev;n.prev=i.prev,t.call(r,i.data,i,this)}this.releaseCursor()}reduce(t,r,n=this){let i=this.allocateCursor(null,this.head),o=r,a;for(;i.next!==null;)a=i.next,i.next=a.next,o=t.call(n,o,a.data,a,this);return this.releaseCursor(),o}reduceRight(t,r,n=this){let i=this.allocateCursor(this.tail,null),o=r,a;for(;i.prev!==null;)a=i.prev,i.prev=a.prev,o=t.call(n,o,a.data,a,this);return this.releaseCursor(),o}some(t,r=this){for(let n=this.head;n!==null;n=n.next)if(t.call(r,n.data,n,this))return!0;return!1}map(t,r=this){let n=new e;for(let i=this.head;i!==null;i=i.next)n.appendData(t.call(r,i.data,i,this));return n}filter(t,r=this){let n=new e;for(let i=this.head;i!==null;i=i.next)t.call(r,i.data,i,this)&&n.appendData(i.data);return n}nextUntil(t,r,n=this){if(t===null)return;let i=this.allocateCursor(null,t);for(;i.next!==null;){let o=i.next;if(i.next=o.next,r.call(n,o.data,o,this))break}this.releaseCursor()}prevUntil(t,r,n=this){if(t===null)return;let i=this.allocateCursor(t,null);for(;i.prev!==null;){let o=i.prev;if(i.prev=o.prev,r.call(n,o.data,o,this))break}this.releaseCursor()}clear(){this.head=null,this.tail=null}copy(){let t=new e;for(let r of this)t.appendData(r);return t}prepend(t){return this.updateCursors(null,t,this.head,t),this.head!==null?(this.head.prev=t,t.next=this.head):this.tail=t,this.head=t,this}prependData(t){return this.prepend(e.createItem(t))}append(t){return this.insert(t)}appendData(t){return this.insert(e.createItem(t))}insert(t,r=null){if(r!==null)if(this.updateCursors(r.prev,t,r,t),r.prev===null){if(this.head!==r)throw new Error("before doesn't belong to list");this.head=t,r.prev=t,t.next=r,this.updateCursors(null,t)}else r.prev.next=t,t.prev=r.prev,r.prev=t,t.next=r;else this.updateCursors(this.tail,t,null,t),this.tail!==null?(this.tail.next=t,t.prev=this.tail):this.head=t,this.tail=t;return this}insertData(t,r){return this.insert(e.createItem(t),r)}remove(t){if(this.updateCursors(t,t.prev,t,t.next),t.prev!==null)t.prev.next=t.next;else{if(this.head!==t)throw new Error("item doesn't belong to list");this.head=t.next}if(t.next!==null)t.next.prev=t.prev;else{if(this.tail!==t)throw new Error("item doesn't belong to list");this.tail=t.prev}return t.prev=null,t.next=null,t}push(t){this.insert(e.createItem(t))}pop(){return this.tail!==null?this.remove(this.tail):null}unshift(t){this.prepend(e.createItem(t))}shift(){return this.head!==null?this.remove(this.head):null}prependList(t){return this.insertList(t,this.head)}appendList(t){return this.insertList(t)}insertList(t,r){return t.head===null?this:(r!=null?(this.updateCursors(r.prev,t.tail,r,t.head),r.prev!==null?(r.prev.next=t.head,t.head.prev=r.prev):this.head=t.head,r.prev=t.tail,t.tail.next=r):(this.updateCursors(this.tail,t.tail,null,t.head),this.tail!==null?(this.tail.next=t.head,t.head.prev=this.tail):this.head=t.head,this.tail=t.tail),t.head=null,t.tail=null,this)}replace(t,r){"head"in r?this.insertList(r,t):this.insert(r,t),this.remove(t)}};function De(e,t){let r=Object.create(SyntaxError.prototype),n=new Error;return Object.assign(r,{name:e,message:t,get stack(){return(n.stack||"").replace(/^(.+\n){1,3}/,`${e}: ${t} `)}})}var fr=100,vo=60,So=" ";function Co({source:e,line:t,column:r,baseLine:n,baseColumn:i},o){function a(b,j){return s.slice(b,j).map((J,v)=>String(b+v+1).padStart(h)+" |"+J).join(` `)}let c=` `.repeat(Math.max(n-1,0)),u=" ".repeat(Math.max(i-1,0)),s=(c+u+e).split(/\r\n?|\n|\f/),l=Math.max(1,t-o)-1,p=Math.min(t+o,s.length+1),h=Math.max(4,String(p).length)+1,d=0;r+=(So.length-1)*(s[t-1].substr(0,r-1).match(/\t/g)||[]).length,r>fr&&(d=r-vo+3,r=vo-2);for(let b=l;b<=p;b++)b>=0&&b<s.length&&(s[b]=s[b].replace(/\t/g,So),s[b]=(d>0&&s[b].length>d?"\u2026":"")+s[b].substr(d,fr-2)+(s[b].length>d+fr-1?"\u2026":""));return[a(l,t),new Array(r+h+2).join("-")+"^",a(t,p)].filter(Boolean).join(` `).replace(/^(\s+\d+\s+\|\n)+/,"").replace(/\n(\s+\d+\s+\|)+$/,"")}function gr(e,t,r,n,i,o=1,a=1){return Object.assign(De("SyntaxError",e),{source:t,offset:r,line:n,column:i,sourceFragment(u){return Co({source:t,line:n,column:i,baseLine:o,baseColumn:a},isNaN(u)?0:u)},get formattedMessage(){return`Parse error: ${e} `+Co({source:t,line:n,column:i,baseLine:o,baseColumn:a},2)}})}function To(e){let t=this.createList(),r=!1,n={recognizer:e};for(;!this.eof;){switch(this.tokenType){case 25:this.next();continue;case 13:r=!0,this.next();continue}let i=e.getNode.call(this,n);if(i===void 0)break;r&&(e.onWhiteSpace&&e.onWhiteSpace.call(this,i,t,n),r=!1),t.push(i)}return r&&e.onWhiteSpace&&e.onWhiteSpace.call(this,null,t,n),t}var Ye=()=>{},rl=33,nl=35,br=59,Lo=123,Ao=0,il={createList(){return[]},createSingleNodeList(e){return[e]},getFirstListNode(e){return e&&e[0]||null},getLastListNode(e){return e&&e.length>0?e[e.length-1]:null}},ol={createList(){return new Q},createSingleNodeList(e){return new Q().appendData(e)},getFirstListNode(e){return e&&e.first},getLastListNode(e){return e&&e.last}};function al(e){return function(){return this[e]()}}function yr(e){let t=Object.create(null);for(let r of Object.keys(e)){let n=e[r],i=n.parse||n;i&&(t[r]=i)}return t}function sl(e){let t={context:Object.create(null),features:Object.assign(Object.create(null),e.features),scope:Object.assign(Object.create(null),e.scope),atrule:yr(e.atrule),pseudo:yr(e.pseudo),node:yr(e.node)};for(let[r,n]of Object.entries(e.parseContext))switch(typeof n){case"function":t.context[r]=n;break;case"string":t.context[r]=al(n);break}return{config:t,...t,...t.node}}function Eo(e){let t="",r="<unknown>",n=!1,i=Ye,o=!1,a=new lt,c=Object.assign(new ct,sl(e||{}),{parseAtrulePrelude:!0,parseRulePrelude:!0,parseValue:!0,parseCustomProperty:!1,readSequence:To,consumeUntilBalanceEnd:()=>0,consumeUntilLeftCurlyBracket(l){return l===Lo?1:0},consumeUntilLeftCurlyBracketOrSemicolon(l){return l===Lo||l===br?1:0},consumeUntilExclamationMarkOrSemicolon(l){return l===rl||l===br?1:0},consumeUntilSemicolonIncluded(l){return l===br?2:0},createList:Ye,createSingleNodeList:Ye,getFirstListNode:Ye,getLastListNode:Ye,parseWithFallback(l,p){let h=this.tokenIndex;try{return l.call(this)}catch(d){if(o)throw d;this.skip(h-this.tokenIndex);let b=p.call(this);return o=!0,i(d,b),o=!1,b}},lookupNonWSType(l){let p;do if(p=this.lookupType(l++),p!==13&&p!==25)return p;while(p!==Ao);return Ao},charCodeAt(l){return l>=0&&l<t.length?t.charCodeAt(l):0},substring(l,p){return t.substring(l,p)},substrToCursor(l){return this.source.substring(l,this.tokenStart)},cmpChar(l,p){return ye(t,l,p)},cmpStr(l,p,h){return xe(t,l,p,h)},consume(l){let p=this.tokenStart;return this.eat(l),this.substrToCursor(p)},consumeFunctionName(){let l=t.substring(this.tokenStart,this.tokenEnd-1);return this.eat(2),l},consumeNumber(l){let p=t.substring(this.tokenStart,Ie(t,this.tokenStart));return this.eat(l),p},eat(l){if(this.tokenType!==l){let p=Ne[l].slice(0,-6).replace(/-/g," ").replace(/^./,b=>b.toUpperCase()),h=`${/[[\](){}]/.test(p)?`"${p}"`:p} is expected`,d=this.tokenStart;switch(l){case 1:this.tokenType===2||this.tokenType===7?(d=this.tokenEnd-1,h="Identifier is expected but function found"):h="Identifier is expected";break;case 4:this.isDelim(nl)&&(this.next(),d++,h="Name is expected");break;case 11:this.tokenType===10&&(d=this.tokenEnd,h="Percent sign is expected");break}this.error(h,d)}this.next()},eatIdent(l){(this.tokenType!==1||this.lookupValue(0,l)===!1)&&this.error(`Identifier "${l}" is expected`),this.next()},eatDelim(l){this.isDelim(l)||this.error(`Delim "${String.fromCharCode(l)}" is expected`),this.next()},getLocation(l,p){return n?a.getLocationRange(l,p,r):null},getLocationFromList(l){if(n){let p=this.getFirstListNode(l),h=this.getLastListNode(l);return a.getLocationRange(p!==null?p.loc.start.offset-a.startOffset:this.tokenStart,h!==null?h.loc.end.offset-a.startOffset:this.tokenStart,r)}return null},error(l,p){let h=typeof p<"u"&&p<t.length?a.getLocation(p):this.eof?a.getLocation(bo(t,t.length-1)):a.getLocation(this.tokenStart);throw new gr(l||"Unexpected input",t,h.offset,h.line,h.column,a.startLine,a.startColumn)}}),u=()=>({filename:r,source:t,tokenCount:c.tokenCount,getTokenType:l=>c.getTokenType(l),getTokenTypeName:l=>Ne[c.getTokenType(l)],getTokenStart:l=>c.getTokenStart(l),getTokenEnd:l=>c.getTokenEnd(l),getTokenValue:l=>c.source.substring(c.getTokenStart(l),c.getTokenEnd(l)),substring:(l,p)=>c.source.substring(l,p),balance:c.balance.subarray(0,c.tokenCount+1),isBlockOpenerTokenType:c.isBlockOpenerTokenType,isBlockCloserTokenType:c.isBlockCloserTokenType,getBlockTokenPairIndex:l=>c.getBlockTokenPairIndex(l),getLocation:l=>a.getLocation(l,r),getRangeLocation:(l,p)=>a.getLocationRange(l,p,r)});return Object.assign(function(l,p){t=l,p=p||{},c.setSource(t,Le),a.setSource(t,p.offset,p.line,p.column),r=p.filename||"<unknown>",n=!!p.positions,i=typeof p.onParseError=="function"?p.onParseError:Ye,o=!1,c.parseAtrulePrelude="parseAtrulePrelude"in p?!!p.parseAtrulePrelude:!0,c.parseRulePrelude="parseRulePrelude"in p?!!p.parseRulePrelude:!0,c.parseValue="parseValue"in p?!!p.parseValue:!0,c.parseCustomProperty="parseCustomProperty"in p?!!p.parseCustomProperty:!1;let{context:h="default",list:d=!0,onComment:b,onToken:j}=p;if(!(h in c.context))throw new Error("Unknown context `"+h+"`");Object.assign(c,d?ol:il),Array.isArray(j)?c.forEachToken((v,E,U)=>{j.push({type:v,start:E,end:U})}):typeof j=="function"&&c.forEachToken(j.bind(u())),typeof b=="function"&&c.forEachToken((v,E,U)=>{if(v===25){let z=c.getLocation(E,U),re=xe(t,U-2,U,"*/")?t.slice(E+2,U-2):t.slice(E+2,U);b(re,z)}});let J=c.context[h].call(c,p);return c.eof||c.error(),J},{SyntaxError:gr,config:c.config})}var Qo=Qs(Ko(),1),Vo=new Set(["Atrule","Selector","Declaration"]);function Xo(e){let t=new Qo.SourceMapGenerator,r={line:1,column:0},n={line:0,column:0},i={line:1,column:0},o={generated:i},a=1,c=0,u=!1,s=e.node;e.node=function(h){if(h.loc&&h.loc.start&&Vo.has(h.type)){let d=h.loc.start.line,b=h.loc.start.column-1;(n.line!==d||n.column!==b)&&(n.line=d,n.column=b,r.line=a,r.column=c,u&&(u=!1,(r.line!==i.line||r.column!==i.column)&&t.addMapping(o)),u=!0,t.addMapping({source:h.loc.source,original:n,generated:r}))}s.call(this,h),u&&Vo.has(h.type)&&(i.line=a,i.column=c)};let l=e.emit;e.emit=function(h,d,b){for(let j=0;j<h.length;j++)h.charCodeAt(j)===10?(a++,c=0):c++;l(h,d,b)};let p=e.result;return e.result=function(){return u&&t.addMapping(o),{css:p(),map:t}},e}var Wt={};f(Wt,{safe:()=>Lr,spec:()=>zl});var Ll=43,Al=45,Tr=(e,t)=>(e===9&&(e=t),typeof e=="string"&&(e=Math.min(e.charCodeAt(0),128)<<6),e<<1),$o=[[1,1],[1,2],[1,7],[1,8],[1,"-"],[1,10],[1,11],[1,12],[1,15],[1,21],[3,1],[3,2],[3,7],[3,8],[3,"-"],[3,10],[3,11],[3,12],[3,15],[4,1],[4,2],[4,7],[4,8],[4,"-"],[4,10],[4,11],[4,12],[4,15],[12,1],[12,2],[12,7],[12,8],[12,"-"],[12,10],[12,11],[12,12],[12,15],["#",1],["#",2],["#",7],["#",8],["#","-"],["#",10],["#",11],["#",12],["#",15],["-",1],["-",2],["-",7],["-",8],["-","-"],["-",10],["-",11],["-",12],["-",15],[10,1],[10,2],[10,7],[10,8],[10,10],[10,11],[10,12],[10,"%"],[10,15],["@",1],["@",2],["@",7],["@",8],["@","-"],["@",15],[".",10],[".",11],[".",12],["+",10],["+",11],["+",12],["/","*"]],El=$o.concat([[1,4],[12,4],[4,4],[3,21],[3,5],[3,16],[11,11],[11,12],[11,2],[11,"-"],[22,1],[22,2],[22,11],[22,12],[22,4],[22,"-"]]);function Zo(e){let t=new Set(e.map(([r,n])=>Tr(r)<<16|Tr(n)));return function(r,n,i){let o=Tr(n,i),a=i.charCodeAt(0),c=a===Al&&n!==1&&n!==2&&n!==15||a===Ll?t.has((r&65534)<<16|a<<7):t.has((r&65534)<<16|o);return o|c}}var zl=Zo($o),Lr=Zo(El);var Pl=92;function Il(e,t){if(typeof t=="function"){let r=null;e.children.forEach(n=>{r!==null&&t.call(this,r),this.node(n),r=n});return}e.children.forEach(this.node,this)}function Jo(e){let t=new Map;for(let[r,n]of Object.entries(e.node))typeof(n.generate||n)=="function"&&t.set(r,n.generate||n);return function(r,n){let i="",o=0,a={node(u){if(t.has(u.type))t.get(u.type).call(c,u);else throw new Error("Unknown node type: "+u.type)},tokenBefore:Lr,token(u,s,l){o=this.tokenBefore(o,u,s),!l&&o&1&&this.emit(" ",13,!0),this.emit(s,u,!1),u===9&&s.charCodeAt(0)===Pl&&this.emit(` `,13,!0)},emit(u){i+=u},result(){return i}};n&&(typeof n.decorator=="function"&&(a=n.decorator(a)),n.sourceMap&&(a=Xo(a)),n.mode in Wt&&(a.tokenBefore=Wt[n.mode]));let c={node:u=>a.node(u),children:Il,token:(u,s)=>a.token(u,s),tokenize:u=>Le(u,(s,l,p)=>{a.token(s,u.slice(l,p),l!==0)})};return a.node(r),a.result()}}function ea(e){return{fromPlainObject(t){return e(t,{enter(r){r.children&&!(r.children instanceof Q)&&(r.children=new Q().fromArray(r.children))}}),t},toPlainObject(t){return e(t,{leave(r){r.children&&r.children instanceof Q&&(r.children=r.children.toArray())}}),t}}}var{hasOwnProperty:Ar}=Object.prototype,mt=function(){};function ta(e){return typeof e=="function"?e:mt}function ra(e,t){return function(r,n,i){r.type===t&&e.call(this,r,n,i)}}function Nl(e,t){let r=t.structure,n=[];for(let i in r){if(Ar.call(r,i)===!1)continue;let o=r[i],a={name:i,type:!1,nullable:!1};Array.isArray(o)||(o=[o]);for(let c of o)c===null?a.nullable=!0:typeof c=="string"?a.type="node":Array.isArray(c)&&(a.type="list");a.type&&n.push(a)}return n.length?{context:t.walkContext,fields:n}:null}function Dl(e){let t={};for(let r in e.node)if(Ar.call(e.node,r)){let n=e.node[r];if(!n.structure)throw new Error("Missed `structure` field in `"+r+"` node type definition");t[r]=Nl(r,n)}return t}function na(e,t){let r=e.fields.slice(),n=e.context,i=typeof n=="string";return t&&r.reverse(),function(o,a,c,u){let s;i&&(s=a[n],a[n]=o);for(let l of r){let p=o[l.name];if(!l.nullable||p){if(l.type==="list"){if(t?p.reduceRight(u,!1):p.reduce(u,!1))return!0}else if(c(p))return!0}}i&&(a[n]=s)}}function ia({StyleSheet:e,Atrule:t,Rule:r,Block:n,DeclarationList:i}){return{Atrule:{StyleSheet:e,Atrule:t,Rule:r,Block:n},Rule:{StyleSheet:e,Atrule:t,Rule:r,Block:n},Declaration:{StyleSheet:e,Atrule:t,Rule:r,Block:n,DeclarationList:i}}}function oa(e){let t=Dl(e),r={},n={},i=Symbol("break-walk"),o=Symbol("skip-node");for(let s in t)Ar.call(t,s)&&t[s]!==null&&(r[s]=na(t[s],!1),n[s]=na(t[s],!0));let a=ia(r),c=ia(n),u=function(s,l){function p(v,E,U){let z=h.call(J,v,E,U);return z===i?!0:z===o?!1:!!(b.hasOwnProperty(v.type)&&b[v.type](v,J,p,j)||d.call(J,v,E,U)===i)}let h=mt,d=mt,b=r,j=(v,E,U,z)=>v||p(E,U,z),J={break:i,skip:o,root:s,stylesheet:null,atrule:null,atrulePrelude:null,rule:null,selector:null,block:null,declaration:null,function:null};if(typeof l=="function")h=l;else if(l&&(h=ta(l.enter),d=ta(l.leave),l.reverse&&(b=n),l.visit)){if(a.hasOwnProperty(l.visit))b=l.reverse?c[l.visit]:a[l.visit];else if(!t.hasOwnProperty(l.visit))throw new Error("Bad value `"+l.visit+"` for `visit` option (should be: "+Object.keys(t).sort().join(", ")+")");h=ra(h,l.visit),d=ra(d,l.visit)}if(h===mt&&d===mt)throw new Error("Neither `enter` nor `leave` walker handler is set or both aren't a function");p(s)};return u.break=i,u.skip=o,u.find=function(s,l){let p=null;return u(s,function(h,d,b){if(l.call(this,h,d,b))return p=h,i}),p},u.findLast=function(s,l){let p=null;return u(s,{reverse:!0,enter(h,d,b){if(l.call(this,h,d,b))return p=h,i}}),p},u.findAll=function(s,l){let p=[];return u(s,function(h,d,b){l.call(this,h,d,b)&&p.push(h)}),p},u}function Ol(e){return e}function Fl(e){let{min:t,max:r,comma:n}=e;return t===0&&r===0?n?"#?":"*":t===0&&r===1?"?":t===1&&r===0?n?"#":"+":t===1&&r===1?"":(n?"#":"")+(t===r?"{"+t+"}":"{"+t+","+(r!==0?r:"")+"}")}function Rl(e){if(e.type==="Range")return" ["+(e.min===null?"-\u221E":e.min)+","+(e.max===null?"\u221E":e.max)+"]";throw new Error("Unknown node type `"+e.type+"`")}function Ml(e,t,r,n){let i=e.combinator===" "||n?e.combinator:" "+e.combinator+" ",o=e.terms.map(a=>qt(a,t,r,n)).join(i);return e.explicit||r?(n||o[0]===","?"[":"[ ")+o+(n?"]":" ]"):o}function qt(e,t,r,n){let i;switch(e.type){case"Group":i=Ml(e,t,r,n)+(e.disallowEmpty?"!":"");break;case"Multiplier":return qt(e.term,t,r,n)+t(Fl(e),e);case"Boolean":i="<boolean-expr["+qt(e.term,t,r,n)+"]>";break;case"Type":i="<"+e.name+(e.opts?t(Rl(e.opts),e.opts):"")+">";break;case"Property":i="<'"+e.name+"'>";break;case"Keyword":i=e.name;break;case"AtKeyword":i="@"+e.name;break;case"Function":i=e.name+"(";break;case"String":case"Token":i=e.value;break;case"Comma":i=",";break;default:throw new Error("Unknown node type `"+e.type+"`")}return t(i,e)}function Fe(e,t){let r=Ol,n=!1,i=!1;return typeof t=="function"?r=t:t&&(n=!!t.forceBraces,i=!!t.compact,typeof t.decorate=="function"&&(r=t.decorate)),qt(e,r,n,i)}var aa={offset:0,line:1,column:1};function Bl(e,t){let r=e.tokens,n=e.longestMatch,i=n<r.length&&r[n].node||null,o=i!==t?i:null,a=0,c=0,u=0,s="",l,p;for(let h=0;h<r.length;h++){let d=r[h].value;h===n&&(c=d.length,a=s.length),o!==null&&r[h].node===o&&(h<=n?u++:u=0),s+=d}return n===r.length||u>1?(l=jt(o||t,"end")||dt(aa,s),p=dt(l)):(l=jt(o,"start")||dt(jt(t,"start")||aa,s.slice(0,a)),p=jt(o,"end")||dt(l,s.substr(a,c))),{css:s,mismatchOffset:a,mismatchLength:c,start:l,end:p}}function jt(e,t){let r=e&&e.loc&&e.loc[t];return r?"line"in r?dt(r):r:null}function dt({offset:e,line:t,column:r},n){let i={offset:e,line:t,column:r};if(n){let o=n.split(/\n|\r\n?|\f/);i.offset+=n.length,i.line+=o.length-1,i.column=o.length===1?i.column+n.length:o.pop().length+1}return i}var Ve=function(e,t){let r=De("SyntaxReferenceError",e+(t?" `"+t+"`":""));return r.reference=t,r},sa=function(e,t,r,n){let i=De("SyntaxMatchError",e),{css:o,mismatchOffset:a,mismatchLength:c,start:u,end:s}=Bl(n,r);return i.rawMessage=e,i.syntax=t?Fe(t):"<generic>",i.css=o,i.mismatchOffset=a,i.mismatchLength=c,i.message=e+` syntax: `+i.syntax+` value: `+(o||"<empty string>")+` --------`+new Array(i.mismatchOffset+1).join("-")+"^",Object.assign(i,u),i.loc={source:r&&r.loc&&r.loc.source||"<unknown>",start:u,end:s},i};var Ut=new Map,Qe=new Map,Ht=45,Gt=_l,Er=Wl,uf=zr;function Yt(e,t){return t=t||0,e.length-t>=2&&e.charCodeAt(t)===Ht&&e.charCodeAt(t+1)===Ht}function zr(e,t){if(t=t||0,e.length-t>=3&&e.charCodeAt(t)===Ht&&e.charCodeAt(t+1)!==Ht){let r=e.indexOf("-",t+2);if(r!==-1)return e.substring(t,r+1)}return""}function _l(e){if(Ut.has(e))return Ut.get(e);let t=e.toLowerCase(),r=Ut.get(t);if(r===void 0){let n=Yt(t,0),i=n?"":zr(t,0);r=Object.freeze({basename:t.substr(i.length),name:t,prefix:i,vendor:i,custom:n})}return Ut.set(e,r),r}function Wl(e){if(Qe.has(e))return Qe.get(e);let t=e,r=e[0];r==="/"?r=e[1]==="/"?"//":"/":r!=="_"&&r!=="*"&&r!=="$"&&r!=="#"&&r!=="+"&&r!=="&"&&(r="");let n=Yt(t,r.length);if(!n&&(t=t.toLowerCase(),Qe.has(t))){let c=Qe.get(t);return Qe.set(e,c),c}let i=n?"":zr(t,r.length),o=t.substr(0,r.length+i.length),a=Object.freeze({basename:t.substr(o.length),name:t.substr(r.length),hack:r,vendor:i,prefix:o,custom:n});return Qe.set(e,a),a}var Xe=["initial","inherit","unset","revert","revert-layer"];var gt=43,de=45,Pr=110,$e=!0,jl=!1;function Nr(e,t){return e!==null&&e.type===9&&e.value.charCodeAt(0)===t}function ft(e,t,r){for(;e!==null&&(e.type===13||e.type===25);)e=r(++t);return t}function Ae(e,t,r,n){if(!e)return 0;let i=e.value.charCodeAt(t);if(i===gt||i===de){if(r)return 0;t++}for(;t<e.value.length;t++)if(!O(e.value.charCodeAt(t)))return 0;return n+1}function Ir(e,t,r){let n=!1,i=ft(e,t,r);if(e=r(i),e===null)return t;if(e.type!==10)if(Nr(e,gt)||Nr(e,de)){if(n=!0,i=ft(r(++i),i,r),e=r(i),e===null||e.type!==10)return 0}else return t;if(!n){let o=e.value.charCodeAt(0);if(o!==gt&&o!==de)return 0}return Ae(e,n?0:1,n,i)}function Dr(e,t){let r=0;if(!e)return 0;if(e.type===10)return Ae(e,0,jl,r);if(e.type===1&&e.value.charCodeAt(0)===de){if(!ye(e.value,1,Pr))return 0;switch(e.value.length){case 2:return Ir(t(++r),r,t);case 3:return e.value.charCodeAt(2)!==de?0:(r=ft(t(++r),r,t),e=t(r),Ae(e,0,$e,r));default:return e.value.charCodeAt(2)!==de?0:Ae(e,3,$e,r)}}else if(e.type===1||Nr(e,gt)&&t(r+1).type===1){if(e.type!==1&&(e=t(++r)),e===null||!ye(e.value,0,Pr))return 0;switch(e.value.length){case 1:return Ir(t(++r),r,t);case 2:return e.value.charCodeAt(1)!==de?0:(r=ft(t(++r),r,t),e=t(r),Ae(e,0,$e,r));default:return e.value.charCodeAt(1)!==de?0:Ae(e,2,$e,r)}}else if(e.type===12){let n=e.value.charCodeAt(0),i=n===gt||n===de?1:0,o=i;for(;o<e.value.length&&O(e.value.charCodeAt(o));o++);return o===i||!ye(e.value,o,Pr)?0:o+1===e.value.length?Ir(t(++r),r,t):e.value.charCodeAt(o+1)!==de?0:o+2===e.value.length?(r=ft(t(++r),r,t),e=t(r),Ae(e,0,$e,r)):Ae(e,o+2,$e,r)}return 0}var Ul=43,la=45,ca=63,Hl=117;function Or(e,t){return e!==null&&e.type===9&&e.value.charCodeAt(0)===t}function Gl(e,t){return e.value.charCodeAt(0)===t}function bt(e,t,r){let n=0;for(let i=t;i<e.value.length;i++){let o=e.value.charCodeAt(i);if(o===la&&r&&n!==0)return bt(e,t+n+1,!1),6;if(!te(o)||++n>6)return 0}return n}function Kt(e,t,r){if(!e)return 0;for(;Or(r(t),ca);){if(++e>6)return 0;t++}return t}function Fr(e,t){let r=0;if(e===null||e.type!==1||!ye(e.value,0,Hl)||(e=t(++r),e===null))return 0;if(Or(e,Ul))return e=t(++r),e===null?0:e.type===1?Kt(bt(e,0,!0),++r,t):Or(e,ca)?Kt(1,++r,t):0;if(e.type===10){let n=bt(e,1,!0);return n===0?0:(e=t(++r),e===null?r:e.type===12||e.type===10?!Gl(e,la)||!bt(e,1,!1)?0:r+1:Kt(n,r,t))}return e.type===12?Kt(bt(e,1,!0),++r,t):0}var Rr=["calc(","-moz-calc(","-webkit-calc("],Mr=["min(","max(","clamp("],Br=["round(","mod(","rem("],Yl=["sin(","cos(","tan("],Kl=["asin(","acos(","atan(","atan2("],Vl=["pow(","sqrt(","log(","exp(","sign("],_r=["hypot("],Wr=["abs("],ua=[...Rr,...Mr,...Br,...Yl,...Vl,..._r,...Wr],Ql=[...Rr,...Mr,...Br,..._r,...Wr],ve=[...Rr,...Mr,...Br,...Kl,..._r,...Wr],qr=new Map([[2,22],[21,22],[19,20],[23,24]]);function pe(e,t){return t<e.length?e.charCodeAt(t):0}function pa(e,t){return xe(e,0,e.length,t)}function ha(e,t){for(let r=0;r<t.length;r++)if(pa(e,t[r]))return!0;return!1}function ma(e,t){return t!==e.length-2?!1:pe(e,t)===92&&O(pe(e,t+1))}function Vt(e,t,r){if(e&&e.type==="Range"){let n=Number(r!==void 0&&r!==t.length?t.substr(0,r):t);if(isNaN(n)||e.min!==null&&n<e.min&&typeof e.min!="string"||e.max!==null&&n>e.max&&typeof e.max!="string")return!0}return!1}function Xl(e,t){let r=0,n=[],i=0;e:do{switch(e.type){case 24:case 22:case 20:if(e.type!==r)break e;if(r=n.pop(),n.length===0){i++;break e}break;case 2:case 21:case 19:case 23:n.push(r),r=qr.get(e.type);break}i++}while(e=t(i));return i}function ae(e,t){return function(r,n,i){return r===null?0:r.type===2&&ha(r.value,t)?Xl(r,n):e(r,n,i)}}function I(e){return function(t){return t===null||t.type!==e?0:1}}function $l(e){if(e===null||e.type!==1)return 0;let t=e.value.toLowerCase();return ha(t,Xe)||pa(t,"default")?0:1}function da(e){return e===null||e.type!==1||pe(e.value,0)!==45||pe(e.value,1)!==45?0:1}function Zl(e){return!da(e)||e.value==="--"?0:1}function Jl(e){if(e===null||e.type!==4)return 0;let t=e.value.length;if(t!==4&&t!==5&&t!==7&&t!==9)return 0;for(let r=1;r<t;r++)if(!te(pe(e.value,r)))return 0;return 1}function ec(e){return e===null||e.type!==4||!qe(pe(e.value,1),pe(e.value,2),pe(e.value,3))?0:1}function tc(e,t){if(!e)return 0;let r=0,n=[],i=0;e:do{switch(e.type){case 6:case 8:break e;case 24:case 22:case 20:if(e.type!==r)break e;r=n.pop();break;case 17:if(r===0)break e;break;case 9:if(r===0&&e.value==="!")break e;break;case 2:case 21:case 19:case 23:n.push(r),r=qr.get(e.type);break}i++}while(e=t(i));return i}function rc(e,t){if(!e)return 0;let r=0,n=[],i=0;e:do{switch(e.type){case 6:case 8:break e;case 24:case 22:case 20:if(e.type!==r)break e;r=n.pop();break;case 2:case 21:case 19:case 23:n.push(r),r=qr.get(e.type);break}i++}while(e=t(i));return i}function Se(e){return e&&(e=new Set(e)),function(t,r,n){if(t===null||t.type!==12)return 0;let i=Ie(t.value,0);if(e!==null){let o=t.value.indexOf("\\",i),a=o===-1||!ma(t.value,o)?t.value.substr(i):t.value.substring(i,o);if(e.has(a.toLowerCase())===!1)return 0}return Vt(n,t.value,i)?0:1}}function nc(e,t,r){return e===null||e.type!==11||Vt(r,e.value,e.value.length-1)?0:1}function fa(e){return typeof e!="function"&&(e=function(){return 0}),function(t,r,n){return t!==null&&t.type===10&&Number(t.value)===0?1:e(t,r,n)}}function ic(e,t,r){if(e===null)return 0;let n=Ie(e.value,0);return!(n===e.value.length)&&!ma(e.value,n)||Vt(r,e.value,n)?0:1}function oc(e,t,r){if(e===null||e.type!==10)return 0;let n=pe(e.value,0)===43||pe(e.value,0)===45?1:0;for(;n<e.value.length;n++)if(!O(pe(e.value,n)))return 0;return Vt(r,e.value,n)?0:1}var ac={"ident-token":I(1),"function-token":I(2),"at-keyword-token":I(3),"hash-token":I(4),"string-token":I(5),"bad-string-token":I(6),"url-token":I(7),"bad-url-token":I(8),"delim-token":I(9),"number-token":I(10),"percentage-token":I(11),"dimension-token":I(12),"whitespace-token":I(13),"CDO-token":I(14),"CDC-token":I(15),"colon-token":I(16),"semicolon-token":I(17),"comma-token":I(18),"[-token":I(19),"]-token":I(20),"(-token":I(21),")-token":I(22),"{-token":I(23),"}-token":I(24)},sc={string:I(5),ident:I(1),percentage:ae(nc,Ql),zero:fa(),number:ae(ic,ua),integer:ae(oc,ua),"custom-ident":$l,"dashed-ident":da,"custom-property-name":Zl,"hex-color":Jl,"id-selector":ec,"an-plus-b":Dr,urange:Fr,"declaration-value":tc,"any-value":rc},lc=["length","angle","time","frequency","resolution","flex","decibel","semitones"];function cc(e){let{angle:t,decibel:r,frequency:n,flex:i,length:o,resolution:a,semitones:c,time:u}=e||{};return{dimension:ae(Se(null),ve),angle:ae(Se(t),ve),decibel:ae(Se(r),ve),frequency:ae(Se(n),ve),flex:ae(Se(i),ve),length:ae(fa(Se(o)),ve),resolution:ae(Se(a),ve),semitones:ae(Se(c),ve),time:ae(Se(u),ve)}}function uc(e){let t=new Set;for(let r of lc)if(Array.isArray(e[r]))for(let n of e[r])t.add(n.toLowerCase());return function(n){return n===null?0:n.type===9&&n.value==="%"||n.type===1&&t.has(n.value.toLowerCase())?1:0}}function ga(e){return{...ac,...sc,...cc(e),"attr-unit":uc(e)}}var Qt={};f(Qt,{angle:()=>hc,decibel:()=>bc,flex:()=>gc,frequency:()=>dc,length:()=>pc,resolution:()=>fc,semitones:()=>yc,time:()=>mc});var pc=["cm","mm","q","in","pt","pc","px","em","rem","ex","rex","cap","rcap","ch","rch","ic","ric","lh","rlh","vw","svw","lvw","dvw","vh","svh","lvh","dvh","vi","svi","lvi","dvi","vb","svb","lvb","dvb","vmin","svmin","lvmin","dvmin","vmax","svmax","lvmax","dvmax","cqw","cqh","cqi","cqb","cqmin","cqmax"],hc=["deg","grad","rad","turn"],mc=["s","ms"],dc=["hz","khz"],fc=["dpi","dpcm","dppx","x"],gc=["fr"],bc=["db"],yc=["st"];var za={};f(za,{SyntaxError:()=>Xt,generate:()=>Fe,parse:()=>Je,walk:()=>rr});function Xt(e,t,r){return Object.assign(De("SyntaxError",e),{input:t,offset:r,rawMessage:e,message: