body[ui=page]{grid-template-columns:1fr;grid-template-areas:"main";min-block-size:100svh;display:grid}body[ui=page] nav[data-zone=nav],body[ui=page] .cf-sidebar,body[ui=page] .cf-menu-trigger,body[ui=page] .cf-overlay,body[ui=page]>footer{grid-area:main}body[ui=page]>#app{grid-area:main;min-block-size:0;min-inline-size:0}body[ui=page] main{min-block-size:0;min-inline-size:0}@media (min-width:1024px){body[ui=page][data-chrome=sidebar]:not([data-layout=tool]){grid-template-areas:"chrome main";grid-template-columns:var(--cf-sidebar-w,240px) 1fr}body[ui=page][data-chrome=sidebar]:not([data-layout=tool]) .cf-sidebar{grid-area:chrome}}body[ui=page][data-layout=tool]{grid-template-columns:1fr;grid-template-areas:"main"}body[ui=page][data-layout=tool] nav[data-zone=nav],body[ui=page][data-layout=tool] .cf-sidebar,body[ui=page][data-layout=tool] .cf-menu-trigger,body[ui=page][data-layout=tool] .cf-overlay{display:none}body[ui=page][data-surface=index]{overscroll-behavior:none;block-size:100svh;overflow:hidden}html:has(body[data-surface=index]){overscroll-behavior:none;block-size:100svh;overflow:hidden}body[ui=page][data-surface=index] main{block-size:100svh;overflow:hidden}body[ui=page][data-surface=index] nav[data-zone=nav]{display:none}@media (max-width:768px){body[ui=page][data-surface=spraengskiss]{overscroll-behavior:none;touch-action:manipulation;overflow:hidden}html:has(body[data-surface=spraengskiss]){overscroll-behavior:none;touch-action:manipulation;overflow:hidden}}body[ui=page] main[data-surface]{isolation:isolate;position:relative}.cf-tool-teaser{inline-size:min(100%,92rem);margin:var(--s-8) 0;border:1px solid var(--bdr-2);border-radius:var(--r-lg);background:var(--bg-1);box-shadow:var(--sh-md);overflow:hidden}.cf-tool-teaser__bar{justify-content:space-between;align-items:center;gap:var(--s-4);min-block-size:4rem;padding:var(--s-3) var(--s-4);border-block-end:1px solid var(--bdr-2);background:color-mix(in oklch, var(--bg-0) 78%, var(--ac) 6%);display:flex}.cf-tool-teaser__copy{gap:2px;min-inline-size:0;display:grid}.cf-tool-teaser__kicker{color:var(--ac);font:700 .72rem / 1.1 var(--f-ui);text-transform:uppercase}.cf-tool-teaser__title{color:var(--tx-0);font:700 1rem / 1.2 var(--f-ui)}.cf-tool-teaser__meta,.cf-tool-teaser figcaption{color:var(--tx-2);font:400 .86rem / 1.45 var(--f-ui)}.cf-tool-teaser__actions{gap:var(--s-2);flex:none;display:flex}.cf-tool-teaser__actions :is(button,a){border:1px solid var(--bdr-2);border-radius:var(--r-md);background:var(--bg-0);block-size:2.75rem;inline-size:2.75rem;color:var(--tx-0);font:700 1.08rem / 1 var(--f-ui);cursor:pointer;transition:transform var(--t-fast) var(--ease), background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);place-items:center;text-decoration:none;display:grid}.cf-tool-teaser__actions :is(button,a):hover,.cf-tool-teaser__actions :is(button,a):focus-visible{background:var(--bg-3);border-color:var(--bdr-3);outline:none;transform:translateY(-1px)}.cf-tool-teaser__actions button:disabled{cursor:not-allowed;opacity:.45}.cf-tool-teaser[data-expanded=true]{inline-size:min(100%,96rem)}.cf-tool-teaser__viewport{background:var(--bg-0);block-size:clamp(28rem,68vh,44rem);min-block-size:26rem}.cf-tool-teaser[data-expanded=true] .cf-tool-teaser__viewport{block-size:calc(100svh - 10rem);min-block-size:34rem}.cf-tool-teaser__viewport iframe{border:0;block-size:100%;inline-size:100%;display:block}.cf-tool-teaser figcaption{padding:var(--s-3) var(--s-4);border-block-start:1px solid var(--bdr-1);background:var(--bg-0);margin:0}.cf-tool-teaser:fullscreen{background:var(--bg-0);border:0;border-radius:0;grid-template-rows:auto minmax(0,1fr);block-size:100svh;inline-size:100vw;margin:0;display:grid}.cf-tool-teaser:fullscreen .cf-tool-teaser__viewport{block-size:auto;min-block-size:0}.cf-tool-teaser:fullscreen figcaption{display:none}.cf-tool-teaser::backdrop{background:var(--bg-0)}@media (max-width:720px){.cf-tool-teaser{inline-size:calc(100% + (var(--s-4) * 2));margin-inline:calc(-1 * var(--s-4));border-inline:0;border-radius:0}.cf-tool-teaser__bar{align-items:flex-start;gap:var(--s-3)}.cf-tool-teaser__viewport{block-size:min(72svh,34rem);min-block-size:28rem}.cf-tool-teaser[data-expanded=true] .cf-tool-teaser__viewport{block-size:calc(100svh - 9rem);min-block-size:32rem}}#contact-dialog.contact-dialog-liquid{inline-size:min(calc(100vw - (var(--s-4) * 2)), 34rem);max-block-size:min(calc(100svh - (var(--s-4) * 2)), 42rem);border:1px solid color-mix(in oklch, white 18%, var(--bdr-2));border-radius:var(--r-xl);background:linear-gradient(145deg, #ffffff2e, color-mix(in oklch, var(--bg-0) 54%, transparent) 42%, color-mix(in oklch, var(--ac) 10%, transparent)), color-mix(in oklch, var(--bg-0) 50%, transparent);color:var(--tx-0);-webkit-backdrop-filter:blur(42px)saturate(190%)contrast(104%);box-shadow:0 28px 90px color-mix(in oklch, var(--navy-deep) 32%, transparent), inset 0 1px 0 #ffffff61, inset 0 -1px 0 color-mix(in oklch, var(--tx-base) 8%, transparent);margin:0;padding:0;inset:50% auto auto 50%;overflow:hidden;transform:translate(-50%,-50%)}@supports (color:lab(0% 0 0)){#contact-dialog.contact-dialog-liquid{background:linear-gradient(145deg, lab(100% 0 0/.18), color-mix(in oklch, var(--bg-0) 54%, transparent) 42%, color-mix(in oklch, var(--ac) 10%, transparent)), color-mix(in oklch, var(--bg-0) 50%, transparent);box-shadow:0 28px 90px color-mix(in oklch, var(--navy-deep) 32%, transparent), inset 0 1px 0 lab(100% 0 0/.38), inset 0 -1px 0 color-mix(in oklch, var(--tx-base) 8%, transparent)}}#contact-dialog.contact-dialog-liquid::backdrop{background:radial-gradient(circle at 50% 42%, color-mix(in oklch, var(--ac) 12%, transparent), transparent 44%), color-mix(in oklch, var(--navy-deep) 64%, transparent);-webkit-backdrop-filter:blur(14px)saturate(132%)}#contact-dialog .contact-dialog-shell{gap:var(--s-5);max-block-size:min(calc(100svh - (var(--s-4) * 2)), 42rem);padding:var(--s-6);display:grid;overflow:auto}#contact-dialog .contact-dialog-header,#contact-dialog .contact-dialog-actions{align-items:center}#contact-dialog .contact-dialog-close{border:1px solid color-mix(in oklch, white 20%, var(--bdr-2));background:color-mix(in oklch, var(--bg-0) 34%, transparent);block-size:2.5rem;inline-size:2.5rem;color:var(--tx-1);font:inherit;cursor:pointer;-webkit-backdrop-filter:blur(22px)saturate(160%);transition:background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);border-radius:999px;place-items:center;font-size:1.2rem;line-height:1;display:inline-grid}#contact-dialog .contact-dialog-close:hover,#contact-dialog .contact-dialog-close:focus-visible{border-color:color-mix(in oklch, var(--ac) 36%, var(--bdr-2));background:#ffffff6b;background:lab(100% 0 0/.42);outline:none}#contact-dialog .contact-dialog-close:active{transform:translateY(1px)}#contact-dialog .contact-dialog-form{gap:var(--s-4);display:grid}#contact-dialog .contact-dialog-field{gap:var(--s-2);color:var(--tx-2);display:grid}#contact-dialog [ui~=input]{background:color-mix(in oklch, var(--bg-0) 46%, transparent);border-color:color-mix(in oklch, white 16%, var(--bdr-2));min-block-size:2.75rem;color:var(--tx-0);-webkit-backdrop-filter:blur(24px)saturate(160%)}#contact-dialog textarea[ui~=input]{resize:vertical;min-block-size:8.5rem;line-height:1.5}#contact-dialog .contact-dialog-honeypot{position:absolute;left:-100vw}#contact-dialog .contact-dialog-status{color:var(--tx-2);margin:0}@media (max-width:520px){#contact-dialog.contact-dialog-liquid{inline-size:min(calc(100vw - (var(--s-3) * 2)), 34rem);max-block-size:min(calc(100svh - (var(--s-3) * 2)), 42rem)}#contact-dialog .contact-dialog-shell{max-block-size:min(calc(100svh - (var(--s-3) * 2)), 42rem);padding:var(--s-5)}}#contact-dialog .contact-dialog-mailto{color:var(--tx-2);margin:0}#contact-dialog .contact-dialog-mailto a{color:var(--ac);text-decoration:none}#contact-dialog .contact-dialog-mailto a:hover,#contact-dialog .contact-dialog-mailto a:focus-visible{text-decoration:underline}#contact-dialog .contact-dialog-done:not([hidden]){gap:var(--s-5);justify-items:start;display:grid}#contact-dialog .contact-dialog-done-msg{color:var(--tx-0);margin:0}#contact-dialog .contact-dialog-done-close{min-block-size:2.75rem}@media (prefers-reduced-motion:reduce){#contact-dialog.contact-dialog-liquid,#contact-dialog .contact-dialog-close{transition:none}#contact-dialog.contact-dialog-liquid::backdrop{transition:none}}@media (prefers-reduced-transparency:reduce){#contact-dialog.contact-dialog-liquid{background:color-mix(in oklch, var(--bg-0) 96%, white);-webkit-backdrop-filter:none}#contact-dialog.contact-dialog-liquid::backdrop{background:color-mix(in oklch, var(--navy-deep) 78%, transparent);-webkit-backdrop-filter:none}#contact-dialog .contact-dialog-close,#contact-dialog [ui~=input]{-webkit-backdrop-filter:none;background:var(--bg-2)}}@media (forced-colors:active){#contact-dialog.contact-dialog-liquid{color:canvastext;-webkit-backdrop-filter:none;box-shadow:none;background:canvas;border-color:canvastext}#contact-dialog.contact-dialog-liquid::backdrop{-webkit-backdrop-filter:none;background:#00000080}#contact-dialog .contact-dialog-close,#contact-dialog [ui~=input]{-webkit-backdrop-filter:none;color:canvastext;background:canvas;border-color:canvastext}}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){#contact-dialog.contact-dialog-liquid{background:color-mix(in oklch, var(--bg-0) 94%, white)}}[data-zone=post-hero],[data-zone=project-hero]{container-type:inline-size}h1[ui~=heading][data-zone=post-title],h1[ui~=heading][data-zone=project-title]{text-wrap:balance;max-inline-size:min(100%,32ch);font-size:clamp(2rem,5cqi,3.25rem);line-height:1.08}
