
@layer normalize{html{line-height:1.1875;-webkit-text-size-adjust:none;text-size-adjust:none}h1{font-size:2em;margin-block:0.67em}:is(dl,ol,ul) :is(dl,ol,ul){margin:0}hr{color:inherit}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration-thickness:.08em;text-underline-offset:0.1em}b,strong{font-weight:bolder}small{font-size:80%}table{border-color:currentColor}button,input,select,textarea{margin:0}textarea{baseline-source:first}button,input:is([type=button],[type=reset],[type=submit]){-webkit-appearance:button}input[type=search]{-webkit-appearance:textfield}::-webkit-search-decoration{-webkit-appearance:none}::placeholder{color:inherit;opacity:.54}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}:-moz-ui-invalid{box-shadow:none}summary{display:list-item}search{display:block}[popover]{position:fixed;width:fit-content;height:fit-content;color:canvastext;background-color:canvas;inset:0;margin:auto;border-width:initial;border-style:solid;border-color:initial;border-image:initial;padding:.25em;overflow:auto}@supports not selector(:popover-open){[popover]{display:none}}}

@layer normalize {

*, ::before, ::after {
	box-sizing: border-box;
	scroll-behavior: smooth;
	line-height:var(--line-height);
	background-repeat: no-repeat;
}
html {
	interpolate-size: allow-keywords;
	block-size: 100%;
	word-break:break-word;
	overflow-wrap:break-word;
	-webkit-hyphens: auto;
	hyphens: auto;
	hyphenate-limit-chars:auto 4 4;
	tab-size: 4;
	--line-height: calc(1em + .5rem);
	-webkit-tap-highlight-color: transparent;
	font-family: system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
	font-size: calc(12px + .3vw);
	scrollbar-gutter: stable;
	overflow-y: auto;
}
body {
	margin:auto;
	min-block-size: 100%;
    display: flow-root;
	font-size:max(1rem, 16px);
}
h1, h2, h3, h4, h5, h6 {
	margin-block:1em;
}
h1, h2, h3, h4, h5, h6, figcaption, blockquote, legend, caption { 
	text-wrap: balance;
}
p, li {
	text-wrap: pretty;
}
hr {
	border-style:solid;
	border-width:0 0 1px 0;
	border-top-width:0 !important;
}
video, audio, video, iframe {
	width: 100%;
}
iframe {
    display:block;
}
img, svg, canvas {
	max-width: 100%;
}
img, svg, video, canvas {
	object-fit:cover;
	height: auto;
}
video { background-color:#aaa; }
script, style {
	white-space: pre;
	font-family: monospace;
	margin-block: 1rem;
	overflow:auto;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
	font-variant-numeric: tabular-nums;
}
th {
	text-align: inherit;
	text-align: -webkit-match-parent;
}

nav a { text-decoration:none; }
nav li { list-style: none; }
nav ul { padding-inline-start:1.5em; }
nav > ul { padding-inline-start:0; }


select, summary, label, button:not(:disabled), input:where([type=checkbox], [type=radio], [type=file]), ::file-selector-button, .btn {
	cursor:pointer;
}

[inert], :disabled { opacity:.4; }


input, textarea, select, button, ::file-selector-button, .btn {
	padding:.2em;
	border:1px solid rgba(0,0,0,.5);
	font: inherit;
	
	line-height:var(--line-height);
	--line-height:normal;
}
button, ::file-selector-button, .btn {
	padding-inline:.7em;
}
.btn {
	inline-size: fit-content;
	text-decoration: none;
	color:inherit;
}


select { background-color:Field; }
textarea {
	vertical-align: baseline;
	vertical-align: -webkit-baseline-middle;
}
textarea { resize: vertical; }


input, textarea { inline-size:13rem; }
input:where([type=radio], [type=checkbox], [type=file], [type=date], [type=time], [type=datetime-local], [type=color]) { inline-size:revert; }  
input:where([type=range]) { vertical-align:middle }



dialog, [popover] {
    &, &::backdrop {
        transition-behavior: allow-discrete;
        opacity: 0;
    }
}
dialog:is(:modal,[open]), :popover-open {
    &, &::backdrop {
        opacity: 1;
    }
}
@starting-style {
    dialog:is(:modal,[open]), :popover-open {
        &, &::backdrop { opacity: 0; }
    }
}

:where([popover]) {
    inset: auto;
}

}
html{--hsl-h:188.9;--hsl-s:55.1%;--hsl-l:38.4%;--width:50rem;--line-width:1px;--radius:.3rem;--shadow-x:0;--shadow-y:.25rem;--shadow-blur:.7rem;--shadow:var(--shadow-x) var(--shadow-y) var(--shadow-blur) #0003;color-scheme:light}:where(html,[u2-skin],[u2-skin=light]){--hs:var(--hsl-h),var(--hsl-s);--hsl:var(--hs),var(--hsl-l);--color:hsl(var(--hsl));--color-light:hsl(var(--hs), calc(var(--hsl-l) + (100% - var(--hsl-l)) * .9 ) );--color-dark:hsl(var(--hs), calc(var(--hsl-l) * .7 ) );--color-bg:hsl(var(--hs), 99.5%);--color-text:hsl(var(--hs), calc(var(--hsl-l) * .4 ) );--color-area:var(--color-light);--color-line:var(--color-text)}[u2-skin=dark]{--color-light:hsl(var(--hs), calc(var(--hsl-l) * .7 ) );--color-dark:hsl(var(--hs), calc(var(--hsl-l) + (100% - var(--hsl-l)) * .9 ) );--color-bg:hsl(var(--hs), calc(var(--hsl-l) * .4 ) );--color-text:hsl(var(--hs), 99.5%)}

html{background-color:var(--color-bg);color:var(--color-text);accent-color:var(--color)}a{color:var(--color);transition:color .2s}a:focus,a:hover{color:var(--color-text)}hr{color:var(--color-line);margin:2rem 0;border-width:var(--line-width)}:is(h1,h2,h3,h4,h5,h6,p,ul,ol):first-child{margin-top:0}:is(h1,h2,h3,h4,h5,h6,p,ul,ol):last-child{margin-bottom:0}:is(h1,h2,h3,h4,h5,h6)+:is(h1,h2,h3,h4,h5,h6){margin-top:0}:is(h1,h2,h3,h4,h5,h6):has(+ :is(h1,h2,h3,h4,h5,h6)){margin-bottom:0}table{inline-size:100%;word-break:normal}td,th{padding:.5em}dialog{background-color:var(--color-bg);color:var(--color-text)}mark{background-color:hsl(var(--hsl-h),100%,70%,.5)}:focus-visible,u2-input:focus-within{outline:.4rem solid hsl(var(--hsl),.2);transition:.15s}:where(input,button,textarea,select,a,u2-input):active{outline:.6rem solid hsl(var(--hsl),.2);transition:.15s}fieldset{border:var(--line-width) solid currentColor;border-radius:var(--radius);padding:1em;margin:1em 0}.btn,button,input,select,textarea,u2-input{padding-inline:.4em;padding-block:.3em;font-family:inherit;max-inline-size:100%;border-radius:var(--radius);border-width:var(--line-width);border-color:var(--color-line)}input[type=file]{padding-top:0;padding-bottom:0;padding-left:0;border:0;background-color:var(--color-light)}.btn,button{background-color:var(--color);color:var(--color-bg);border-color:transparent;padding-inline:1em;transition:background-color .1s;text-decoration:none}.btn:not([hidden]){display:inline-block}:is(button,.btn):not(:disabled):where(:hover,:focus,[aria-pressed=true]){background-color:var(--color-dark)}button:disabled{opacity:.5}select[multiple],select[size]{border-top-right-radius:0;border-bottom-right-radius:0;margin:0 .5em 0 0}:focus::placeholder{opacity:.2}

ul{list-style-type:'•  ';padding-inline-start:1em}ul>li::marker{font-size:1em}select:not([size],[multiple]){-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='4'><path d='M4 0h6L7 4'/></svg>");background-repeat:no-repeat;background-position:100% 50%;background-size:1em;padding-right:1.3em}input:is([type=radio],[type=checkbox]){padding:0!important;-webkit-appearance:none;appearance:none;transform:rotate(.002deg);width:1.3em;height:1.3em;vertical-align:-15%;background-color:#fff;border:solid 1px;position:relative;border-radius:.15em;padding:0}input:is([type=radio],[type=checkbox]):checked{border-color:var(--color,#00f)}input:is([type=radio],[type=checkbox])::before{content:"";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-family:Arial,Helvetica,sans-serif;font-weight:400;font-size:.65em;line-height:1.1}input:is([type=radio],[type=checkbox]):checked::before{background-color:var(--color,#00f)}input[type=checkbox]{border-radius:0}input[type=checkbox]:checked::before{content:"✔"}input[type=radio]{border-radius:100%}input[type=radio]::before{border-radius:inherit;border:.18em solid #fff}input:is([type=radio],[type=checkbox]):disabled{opacity:.5}input:is([type=radio],[type=checkbox]):indeterminate::before{color:currentColor;font-size:1em;content:"﹣";opacity:.6;font-weight:200}input:where([type=radio],[type=checkbox]):not(:disabled)::after{content:'';position:absolute;inset:-60%;border-radius:50%;transition:background-color .3s}input:where([type=radio],[type=checkbox]):hover::after{background-color:#0001}input[type=color]{padding:0;border-radius:99em;width:1.4em;height:1.4em;border-width:1px;overflow:hidden;box-shadow:0 0 .5em #0003;cursor:pointer;vertical-align:-.3em}input[type=color]::-moz-color-swatch{border:0}input[type=color]::-webkit-color-swatch{border:0}input[type=color]::-webkit-color-swatch-wrapper{padding:0}html{--scrollbar-thin: ;--scrollbar-color-track:var(--color-area, #f4f4f4);--scrollbar-color-thumb:var(--color, #ccc)}*{scrollbar-width:var(--scrollbar-thin) thin;scrollbar-color:var(--scrollbar-color-thumb) var(--scrollbar-color-track)}::-webkit-scrollbar{width:var(--scrollbar-thin) 8px;height:var(--scrollbar-thin) 8px}::-webkit-scrollbar-track{background:var(--scrollbar-color-track)}::-webkit-scrollbar-thumb{background-color:var(--scrollbar-color-thumb)}select,textarea{--scrollbar-thin: }input[type=range]{background-color:transparent;border:0;-webkit-appearance:none;appearance:none;padding:0}input[type=range]::-webkit-slider-runnable-track{box-sizing:border-box;block-size:.5em;background:#fff;border:1px solid #0008;border-radius:1em;cursor:pointer}input[type=range]::-moz-range-track{box-sizing:border-box;block-size:.5em;background:#fff;border:1px solid #0008;border-radius:1em;cursor:pointer}input[type=range]::-webkit-slider-thumb{box-sizing:border-box;width:1.3em;height:1.3em;background:var(--color);border-radius:100%;cursor:pointer;margin-block-start:-.47em;-webkit-appearance:none}input[type=range]::-moz-range-thumb{box-sizing:border-box;width:1.3em;height:1.3em;background:var(--color);border-radius:100%;cursor:pointer;border-color:transparent}input[type=range]:hover::-webkit-slider-thumb{box-shadow:0 0 0 .5em #0001}input[type=range]:hover::-moz-range-thumb{box-shadow:0 0 0 .5em #0001}input:-webkit-autofill{filter:none;box-shadow:0 0 0 100px var(--color-light) inset}::selection{background:hsl(var(--hsl),.3)}details{border-block-end:1px solid var(--color-line);transition-duration:.3s}summary{padding-block:.5rem;padding-inline:0;line-height:1;--line-height:1}details[open]>summary{margin-block-end:.5rem}details[open]{padding-block-end:1rem}summary{list-style-type:none}summary::-webkit-details-marker{display:none}summary::after{line-height:.9;content:'▾';transform:rotate(-90deg);width:1rem;height:1rem;float:right;transition:transform .2s}details[open]>summary::after{transform:rotate(0)}

.u2-width{max-width:var(--width);min-width:0;margin-left:auto;margin-right:auto;box-sizing:content-box;padding-left:1rem;padding-right:1rem;padding-left:calc(1rem + env(safe-area-inset-left));padding-right:calc(1rem + env(safe-area-inset-right));width:100%;width:-moz-available;width:-webkit-fill-available}.u2-width .u2-width{padding-inline:0}

.u2-flex{--u2-Gap:1rem;--u2-Row-gap:var(--u2-Gap);--u2-Col-gap:var(--u2-Gap);display:flex;flex-wrap:wrap;column-gap:var(--u2-Col-gap);row-gap:var(--u2-Row-gap)}

u2-cookiebanner {
    position: fixed;
    inset: auto 1rem 1rem auto;
    max-width: 14rem;
    border:0;
    padding: 1.5em;
    font-size: max(14px, .8em);
    transition-duration:1s;
    transition-property: opacity, display, overlay;
    text-align: left;

    & label {
        display:block;
        margin-block: .5em;
        & input { margin-inline-end: .5em; }
    }
    & button:not(.-main) {
        opacity: .7;
    }
    & .-buttons {
        margin-block-start: 1em;
        display: flex;
        flex-wrap: wrap;
        justify-content: end;
        gap: .5em;
        container-type: inline-size;

        @container (max-width: 16rem) {
            button { flex-basis: 100%; }
        }

    }
}

u2-cookiebanner:not(:defined) {
    display: none;
}

u2-cookiebanner::backdrop {
    transition-duration:1s;
    background: #0001;
}
u2-carousel{display:flex;overflow:auto;scroll-snap-type:x mandatory;list-style:none;margin:0;padding:0}u2-carousel>:not([slot]){inline-size:100%;box-sizing:border-box;flex-shrink:0;scroll-snap-align:center}

.u2-grid {
    --u2-Items-width: 11rem;
    --u2-Gap: 1rem;
    --u2-Col-gap: var(--u2-Gap);
    --u2-Row-gap: var(--u2-Gap);
    display: grid;
    column-gap: var(--u2-Col-gap);
    row-gap:    var(--u2-Row-gap);
    grid-template-columns: repeat(auto-fill, minmax( var(--u2-Items-width), 1fr) );
    grid-template-columns: repeat(auto-fill, minmax( min(var(--u2-Items-width), 100%) , 1fr) );
    grid-auto-flow:dense;
}


table.u2-grid {
    display:grid;
    > * {
        display:contents;
        > * {
            display:block;
            > * {
                display:block;
                padding:0;
            }
        }
    }
}

html {
    --u2-ico-font:'Segoe UI Symbol', 'Noto Emoji', sans-serif; 
    --u2-ico-dir-material: 'https://cdn.jsdelivr.net/npm/@material-icons/svg@1.0.33/svg/{icon_name}/baseline.svg';
    --u2-ico-dir-material-host: var(--u2-ico-dir-material);
}
:host {
    --u2-ico-dir-material: var(--u2-ico-dir-material-host, 'https://cdn.jsdelivr.net/npm/@material-icons/svg@1.0.33/svg/{icon_name}/baseline.svg');
}
u2-ico {
    --size: 1.5rem;
    font-size: var(--size);
    line-height: 1;
    --line-height: 1;
    text-align:center;
    vertical-align:middle;
    fill:currentColor;
    font-weight: normal;
    font-style: normal;
    text-transform: none;
    letter-spacing: normal;
    overflow-wrap: normal;
    white-space: nowrap;
    direction: ltr;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;
    font-feature-settings: 'liga';
    font-family: var(--u2-ico-font) !important;
    font-variant-emoji: text;

}
u2-ico:not([hidden]) { display: inline-block; }
u2-ico[icon]:empty:before {
    content:attr(icon);
}




u2-ico[inline] {
    overflow:visible;
    --size:1.2em;
    vertical-align: -11%;
}


u2-ico > svg {
    vertical-align:bottom;
    height:1em;
    width:auto;
    min-width:1em;
    overflow:visible;
    margin:auto;
}
u2-ico [fill]:not([fill=none]) { fill:currentColor; }
u2-ico [stroke]:not([stroke=none]) { stroke: currentColor; }




u2-ico[state] {
    &::before {
        display:none;
    }
    &[state="loading"] {
        overflow: clip;
        width:1em;
    }
    &[state="fail"] {
        font-size: 0.8em;
        width: auto;
        ::before {
            display:block;
        }
    }
}
u2-ico:empty:not([icon])::before {
    content: '⚠️';
}


u2-masonry{--u2-Items-width:11rem;--u2-Gap:1rem;--u2-Col-gap:var(--u2-Gap);--u2-Row-gap:var(--u2-Gap);display:grid;column-gap:var(--u2-Col-gap);row-gap:var(--u2-Row-gap);position:relative!important}u2-masonry>*{position:relative!important;margin:0!important;box-sizing:border-box!important}u2-masonry.-Js>*{position:absolute!important}u2-masonry:not(:defined){grid-template-columns:repeat(auto-fill,minmax(min(var(--u2-Items-width),100%) ,1fr));grid-template-rows:masonry}

u2-input {
    display:inline-block;
    border: 1px solid;
    border-radius: var(--radius);
    padding:0 !important;
}

u2-input {
    & > button:is([slot=start],[slot=end]) {
        &:is(button) {
            padding-block:inline;
            border-radius:0;
            border:0;
            white-space:nowrap;
            align-self: stretch;
        }
    }
    input, select, textarea {
        color:inherit;
        background:inherit;
        direction:inherit;
        unicode-bidi:inherit;
        font:inherit;
        text-align:inherit;
        line-height:var(--line-height);
        letter-spacing:inherit;
        column-count:unset;

        margin: 0 !important;
        border: 0 !important;
        outline: 0 !important;
        box-shadow:none !important;
        flex:1 1 auto;
        inline-size:auto;
        block-size:100% !important;
    }
}



u2-input[type="cycle"] {
    display:inline-grid;
    width:auto;
    line-height:1;

    > label {
        all:unset;
        grid-area: 1 / 1 / 1 / 1;
        position:relative;
        opacity:0;
        display:grid;
        place-content: center;
        user-select: none;
        padding:.47em;

        &:first-child { z-index:1; }

        &:has(:checked) {
            z-index:0;
            opacity:1;
            & + label { z-index:2; }
        }

        & [type="radio"] {
            position:absolute;
            inset:0;
            appearance: textfield;
            opacity:0;
        }
    }
}

u2-input:where([type="stepper"]) {
    inline-size: 6em;
    & input { text-align:center; }
    & input::-webkit-inner-spin-button { display: none; }
}


u2-input[type="file"] {
    html.u2DraggingFile & {
        outline: .4rem solid var(--color-light, #0cf);
        background-color:#ff6;
        outline-offset: .2rem;
    }
    &.u2DragOver.u2DragOver {
        outline: .4rem solid var(--color, #0cf);
        outline-offset: .2rem;
    }
}