
.form{--form-fg:var(--scheme-fg,var(--color-text,#111827));--form-bg:var(--scheme-bg,var(--color-background,#fff));--form-muted:var(--scheme-muted,var(--color-muted,#5b6470));--form-accent:var(--scheme-link,var(--color-primary,#1d4ed8));--form-on-accent:var(--color-onPrimary,#fff);--form-line:color-mix(in srgb,var(--form-fg) 50%,var(--form-bg));--form-hair:color-mix(in srgb,var(--form-fg) 18%,var(--form-bg));--form-soft:color-mix(in srgb,var(--form-fg) 7%,var(--form-bg));--form-danger:var(--color-error,#b91c1c);--form-focus:var(--focus-ring,var(--form-accent));--form-focus-shadow:0 0 0 3px var(--focus-ring-inner,#1b1f24);--form-radius:var(--radius-md,.375rem);--form-height:2.75rem;display:block;max-width:none;width:100%;margin:0;font-family:inherit;line-height:1.45;color:var(--form-fg);text-align:start;scroll-margin-top:var(--form-scroll-margin,7rem);container-type:inline-size}
:where([data-color-scheme=dark],[data-color-scheme=accent]) .form{--form-accent:var(--scheme-fg);--form-on-accent:var(--scheme-bg)}
:where([data-color-scheme=accent]) .form{--form-button-bg:var(--scheme-fg);--form-button-fg:var(--scheme-bg)}
.form--success:focus{outline:0}
.form__title{margin:0 0 .5rem;font-size:1.35rem;line-height:1.25;color:var(--form-fg)}
.form__description{margin:0 0 1rem;color:var(--form-muted)}
.form__page{display:flex;flex-wrap:wrap;align-items:flex-start;gap:1.25rem 1rem}
.form__page-title{flex:1 1 100%;margin:0;font-size:1.15rem;line-height:1.3;color:var(--form-fg)}
.form__field{display:block;flex:1 1 100%;min-width:0;margin:0}
.form__field--half{flex-basis:calc(50% - .5rem)}
.form__field--third{flex-basis:calc(33.333% - .67rem)}
@container (max-width:36rem){.form__field--half,.form__field--third{flex-basis:100%}}
@media (max-width:40rem){.form__field--half,.form__field--third{flex-basis:100%}}
.form__field[hidden],.form__page[hidden],.form__actions [hidden],.form .button[hidden],.form button[hidden]{display:none!important}
.form__heading{margin:.5rem 0 0;font-size:1.2rem;line-height:1.3;color:var(--form-fg)}
.form__paragraph{margin:0;color:var(--form-fg)}
.form__notice{margin:0;padding:.75rem 1rem;border-radius:var(--form-radius,.5rem);border:1px solid color-mix(in srgb,var(--form-accent,#2563eb) 40%,transparent);background:color-mix(in srgb,var(--form-accent,#2563eb) 8%,transparent);color:var(--form-fg)}
.form__notice p{margin:0}
.form__price{font-weight:600;white-space:nowrap}
.form__option--off{opacity:.6}
.form__option-off{display:block;font-size:.875em;color:var(--form-muted)}
.form__notice--warning{border-color:color-mix(in srgb,#b45309 55%,transparent);background:color-mix(in srgb,#f59e0b 14%,transparent);border-left-width:4px}
.form__divider{width:100%;height:0;margin:.25rem 0;border:0;border-top:1px solid var(--form-hair)}
.form__label{display:block;margin:0 0 .35rem;padding:0;font-size:1em;font-weight:600;line-height:1.35;color:var(--form-fg)}
.form__required{color:var(--form-danger);font-weight:700;text-decoration:none}
.form input:where(:not([type=checkbox],[type=radio],[type=file],[type=color],[type=range],[type=hidden])),.form select,.form textarea{display:block;width:100%;min-height:var(--form-height);padding:var(--form-pad,.5rem .75rem);border:1px solid var(--form-border,var(--form-line));border-radius:var(--form-radius);background-color:var(--form-bg);color:var(--form-fg);font:inherit;line-height:1.4;box-sizing:border-box}
.form textarea{min-height:7.5rem;resize:vertical}
.form ::placeholder{color:var(--form-muted);opacity:1}
.form input:where([type=checkbox],[type=radio]){flex:none;width:1.5rem;height:1.5rem;min-height:0;margin:0;padding:0;accent-color:var(--form-accent);cursor:pointer}
.form :is(input,select,textarea,button,summary):focus-visible{outline:3px solid var(--form-focus);outline-offset:2px;box-shadow:var(--form-focus-shadow)}
.form :is(input,select,textarea):disabled{background-color:var(--form-soft);color:var(--form-muted);cursor:not-allowed}
.form [aria-invalid=true]{--form-border:var(--form-danger)}
.form :is(input:where(:not([type=checkbox],[type=radio],[type=range])),select,textarea)[aria-invalid=true]:not(:focus-visible){box-shadow:0 0 0 1px var(--form-danger)}
.form__group{border:0;padding:0;margin:0;min-width:0}
.form__group legend{padding:0;float:none;width:auto}
.form__option{display:flex;gap:.5rem;align-items:center;margin:0;line-height:1.35}
.form__option label{margin:0;padding-block:.7rem;font-weight:400;color:var(--form-fg);cursor:pointer}
.form__field--checkbox>.form__option{margin:0}
/* A short answer ("Ei", "Muu") in a list still gives its box a 44 px wide label to tap. */
.form__field--checkbox .form__option label,.form__group:not(.form__group--scale):not(.form__group--rating):not(.form__group--stars):not(.form__group--segmented):not(.form__group--buttons) .form__option label{min-width:2.75rem}
.form__field--checkbox>.form__option label{font-weight:600}
.form__group--rating .form__option,.form__group--scale .form__option{display:inline-flex;margin:.15rem .75rem .15rem 0}
.form__parts{display:flex;flex-wrap:wrap;gap:.75rem}
.form__part{flex:1 1 10rem;min-width:0}
.form__part .form__label{font-size:.875em;font-weight:400;color:var(--form-muted)}
.form__group--daterange .form__part{flex-basis:14rem}
.form__help{max-width:60ch;margin:.35rem 0 0;color:var(--form-muted);font-size:.875rem;line-height:1.4}
:is(.form__label,legend)+.form__help{margin:-.1rem 0 .45rem}
.form__required-note{margin:0 0 1rem;color:var(--form-muted);font-size:.875rem}
.form__privacy{max-width:50ch;margin:1rem 0 0;color:var(--form-muted);font-size:.875rem;line-height:1.4}
.form__privacy a{color:inherit;text-decoration:underline}
.form__error{margin:.35rem 0 0;color:var(--form-danger);font-size:.875rem;font-weight:600;line-height:1.4}
.form__errors{border:2px solid #b91c1c;border-radius:var(--form-radius);padding:.75rem 1rem;margin:0 0 1.25rem;background:#fef2f2;color:#7f1d1d}
.form__errors-title{margin:0 0 .5rem;font-weight:700}
.form__errors ul{margin:0;padding-left:1.25rem}
.form__errors li{margin:.15rem 0}
.form__errors a{color:inherit;text-decoration:underline}
.form__progress{display:flex;flex-wrap:wrap;gap:.25rem 1.25rem;list-style:none;padding:0;margin:0 0 1.25rem;counter-reset:step;font-size:.95em}
.form__progress li{margin:0;counter-increment:step;color:var(--form-muted)}
.form__progress li::before{content:counter(step) ". "}
.form__progress li[aria-current]{color:var(--form-fg);font-weight:700}
.form__step-jump{display:inline-flex;align-items:center;min-height:44px;margin:0;padding:0 .25rem;border:0;background:none;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.form__step-jump:focus-visible{outline:3px solid var(--form-accent);outline-offset:2px}
.form__email-fix{display:inline-flex;align-items:center;min-height:44px;margin:0;padding:0 .2rem;border:0;background:none;color:var(--form-fg);font:inherit;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.form__email-fix:focus-visible{outline:3px solid var(--form-accent);outline-offset:2px}
.form__actions{display:flex;gap:.75rem;margin-top:1.5rem;flex-wrap:wrap}
.form .button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-width:0;min-height:var(--form-height);margin:0;padding:var(--form-button-pad,var(--button-paddingY,.6rem) var(--button-paddingX,1.25rem));border:1px solid transparent;border-radius:var(--button-radius,var(--form-radius));font:inherit;font-weight:var(--button-weight,600);line-height:1.2;text-decoration:none;box-shadow:none;transform:none;cursor:pointer;box-sizing:border-box}
.form .button--primary{background:var(--form-button-bg,var(--button-bg,var(--form-accent)));color:var(--form-button-fg,var(--button-fg,var(--form-on-accent)))}
.form .button--secondary{background:var(--form-bg);color:var(--form-fg);border-color:currentColor}
.form .button:hover{filter:brightness(.94);transform:none;box-shadow:none}
.form .button[disabled]{opacity:.6;cursor:default;filter:none}
.form .form__row-add,.form .form__row-remove{min-height:2.75rem;padding:.35rem .9rem;font-size:.9em}
.form__rows{display:grid;gap:.75rem;margin:0 0 .75rem}
.form__row{border:1px solid var(--form-hair);border-radius:var(--form-radius);padding:.9rem 1rem 1rem;margin:0;display:flex;flex-wrap:wrap;align-items:flex-start;gap:.75rem}
.form__row-title{flex:1 1 100%;font-weight:600;color:var(--form-fg)}
.form input[type=file]{display:block;width:100%;min-height:var(--form-height);padding:.3rem;border:1px dashed var(--form-border,var(--form-line));border-radius:var(--form-radius);background:var(--form-bg);color:var(--form-fg);font:inherit;font-size:.95em;box-sizing:border-box;cursor:pointer}
.form input[type=file]::file-selector-button{min-height:2rem;margin:0 .75rem 0 0;padding:.3rem .9rem;border:1px solid var(--form-line);border-radius:calc(var(--form-radius) - 2px);background:var(--form-soft);color:var(--form-fg);font:inherit;font-weight:600;cursor:pointer}
.form__files{list-style:none;padding:0;margin:.4rem 0 0;display:flex;gap:.5rem;flex-wrap:wrap;font-size:.875rem;color:var(--form-fg)}
.form__files:empty{display:none}
.form__files li{margin:0}
.form__files img{max-height:5rem;border-radius:.25rem}
.form__files-again{flex:1 1 100%;color:var(--form-danger);font-weight:600}
.form__hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.form__captcha{margin:1rem 0}
.form__captcha[hidden]{display:none!important}
.form__status:empty{display:none}
.form__status{margin-top:.75rem;color:var(--form-fg);font-weight:600}
.form__test-output{background:var(--form-soft);color:var(--form-fg);padding:.75rem;border-radius:var(--form-radius);overflow:auto;font-size:.85rem}
.form--success .form__success{margin:0;font-size:1.1rem;color:var(--form-fg)}
.form__affix{display:flex;align-items:stretch}
.form__affix>input{flex:1 1 auto;min-width:0}
.form__affix-text{display:flex;align-items:center;padding:0 .75rem;border:1px solid var(--form-border,var(--form-line));background:var(--form-soft);color:var(--form-fg);white-space:nowrap}
.form__affix-text:first-child{border-right:0;border-radius:var(--form-radius) 0 0 var(--form-radius)}
.form__affix-text:last-child{border-left:0;border-radius:0 var(--form-radius) var(--form-radius) 0}
.form .form__affix>.form__affix-text:first-child+input{border-top-left-radius:0;border-bottom-left-radius:0}
.form .form__affix>input:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}
.form__float{position:relative}
.form__float{--form-pad:1.5rem .75rem .45rem}
.form .form__float>:is(input,select,textarea){min-height:3.5rem}
.form .form__float>textarea{min-height:7.5rem}
.form__float>input::placeholder,.form__float>textarea::placeholder{color:transparent}
.form__float>input:focus::placeholder,.form__float>textarea:focus::placeholder{color:var(--form-muted)}
.form__float>.form__label{position:absolute;top:0;inset-inline-start:.75rem;width:calc(100% - 1.5rem);margin:0;padding-top:1.05rem;font-weight:400;line-height:1.35;color:var(--form-muted);pointer-events:none;transform-origin:0 0;transition:transform .15s,padding .15s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.form__float>input:focus+.form__label,.form__float>input:not(:placeholder-shown)+.form__label,.form__float>textarea:focus+.form__label,.form__float>textarea:not(:placeholder-shown)+.form__label,.form__float>select+.form__label,.form__float>input:is([type=date],[type=time],[type=datetime-local])+.form__label{transform:scale(.8);padding-top:.4rem;width:calc((100% - 1.5rem)*1.25);transition:transform .15s,padding .15s,width 0s .15s}
@media (prefers-reduced-motion:reduce){.form__float>.form__label{transition:none}}
[dir=rtl] .form__float>.form__label{transform-origin:100% 0}
.form__option--switch input{appearance:none;-webkit-appearance:none;flex:none;width:2.75em;height:1.5em;min-height:0;margin:0;padding:0;border:0;border-radius:1em;background:var(--form-line);position:relative;cursor:pointer;transition:background .15s}
.form__option--switch input::before{content:"";position:absolute;top:.175em;left:.175em;width:1.15em;height:1.15em;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.35);transition:transform .15s}
.form__option--switch input:checked{background:var(--form-accent)}
.form__option--switch input:checked::before{transform:translateX(1.25em)}
.form__option--switch input:disabled{opacity:.6;cursor:not-allowed}
@media (prefers-reduced-motion:reduce){.form__option--switch input,.form__option--switch input::before{transition:none}}
.form__option input:disabled+label{opacity:.55;cursor:default}
.form__group--inline .form__options{display:flex;flex-wrap:wrap;gap:.25rem 1.25rem}
.form__group--cards .form__options{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.75rem}
.form__option--card{position:relative;margin:0;padding:.85rem 1rem;border:1px solid var(--form-line);border-radius:var(--form-radius);align-items:flex-start;background:var(--form-bg);color:var(--form-fg)}
.form__option--card input{margin-top:.15rem}
.form__option--card label{flex:1;cursor:pointer}
.form__option--card label::after{content:"";position:absolute;inset:0;border-radius:inherit}
.form__option--card:has(input:checked){border-color:var(--form-accent);box-shadow:0 0 0 1px var(--form-accent)}
.form__option--card:has(input:focus-visible){outline:3px solid var(--form-focus);outline-offset:2px;box-shadow:var(--form-focus-shadow)}
.form .form__option--card input:focus-visible{outline:0;box-shadow:none}
.form__option--card:has(input:disabled){background:var(--form-soft)}
.form__option-title{display:block;font-weight:600}
.form__option-desc{display:block;margin-top:.15rem;color:var(--form-muted);font-size:.875rem;font-weight:400}
.form__group--buttons .form__options{display:flex;flex-wrap:wrap;gap:.5rem}
.form__option--button{position:relative;margin:0}
.form__option--button input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.form__option--button label{display:inline-flex;align-items:center;justify-content:center;min-height:var(--form-height);padding:.4rem 1rem;border:1px solid var(--form-accent);border-radius:var(--form-radius);background:var(--form-bg);color:var(--form-accent);font-weight:600;cursor:pointer;box-sizing:border-box}
.form__option--button input:checked+label{background:var(--form-accent);color:var(--form-on-accent)}
.form__option--button input:focus-visible+label{outline:3px solid var(--form-focus);outline-offset:2px;box-shadow:var(--form-focus-shadow)}
.form__option--button input:disabled+label{border-color:var(--form-line);color:var(--form-muted)}
.form .form__other{margin-top:.5rem}
.form__other[hidden]{display:none!important}
.form .button[aria-busy=true]::before{content:"";display:inline-block;width:1em;height:1em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:form-spin .7s linear infinite}
@keyframes form-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.form .button[aria-busy=true]::before{animation:none}}
.form--sm{font-size:.875rem;--form-height:2.25rem;--form-pad:.3rem .55rem;--form-button-pad:.4rem .85rem}
.form--lg{font-size:1.125rem;--form-height:3.25rem;--form-pad:.7rem .9rem;--form-button-pad:.8rem 1.5rem}
.form--sm .form__help,.form--sm .form__error{font-size:.8rem}
.form input[type=color]{display:block;width:4.5rem;height:var(--form-height);min-height:0;padding:.2rem;border:1px solid var(--form-border,var(--form-line));border-radius:var(--form-radius);background:var(--form-bg);box-sizing:border-box;cursor:pointer}
.form__range{display:flex;align-items:center;gap:.6rem;min-height:var(--form-height)}
.form input[type=range]{flex:1 1 auto;width:auto;min-width:0;min-height:0;height:1.5rem;margin:0;padding:0;border:0;background:none;accent-color:var(--form-accent);cursor:pointer}
.form__range-end{color:var(--form-muted);font-size:.9em}
.form__range-value{min-width:3ch;font-weight:600;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.form__tags{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}
.form__tags>input{flex:1 1 8rem;min-width:0}
.form__tag{display:inline-flex;align-items:center;gap:.15rem;max-width:100%;padding:.2rem .25rem .2rem .7rem;border-radius:1em;background:var(--form-soft);color:var(--form-fg);font-size:.9em;overflow-wrap:anywhere}
.form__tag button{flex:none;width:1.6em;height:1.6em;min-height:0;margin:0;padding:0;border:0;border-radius:50%;background:none;color:inherit;font:inherit;line-height:1;cursor:pointer}
.form__tag button:hover{background:var(--form-hair)}
.form__option[hidden]{display:none}
.form__sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.form__option a{color:var(--form-accent);text-decoration:underline}
.form__group--images .form__options{display:grid;grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));gap:.75rem}
.form__option--image{padding:.5rem}
.form__option--image label{display:block}
.form__option--image input{position:absolute;z-index:1;top:.85rem;left:.85rem;width:1.15rem;height:1.15rem;margin:0}
.form__option-image{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;margin-bottom:.45rem;border-radius:calc(var(--form-radius) - 2px);background:var(--form-soft)}
.form__group--stars .form__options{display:inline-flex}
.form__group--stars .form__option{position:relative;display:block;margin:0}
.form__group--stars input{appearance:none;-webkit-appearance:none;position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:var(--form-radius);background:none;cursor:pointer}
.form__group--stars label{display:block;width:2.75rem;height:2.75rem;overflow:hidden;text-indent:-99rem;white-space:nowrap}
.form__group--stars label::before{content:"";display:block;width:100%;height:100%;background:var(--form-line);clip-path:polygon(50% 6%,61% 38%,95% 38%,68% 59%,78% 92%,50% 72%,22% 92%,32% 59%,5% 38%,39% 38%)}
.form__group--stars .form__option:has(~.form__option input:checked) label::before,.form__group--stars input:checked+label::before{background:#d97706}
@media (hover:hover){.form__group--stars .form__option:has(~.form__option:hover) label::before,.form__group--stars .form__option:hover label::before{background:#f59e0b}}
.form__group--segmented .form__options{display:inline-flex;flex-wrap:wrap;max-width:100%;border:1px solid var(--form-accent);border-radius:var(--form-radius);overflow:hidden}
.form__group--segmented .form__option{flex:1 1 auto;margin:0}
.form__group--segmented .form__option label{display:flex;border:0;border-radius:0;text-align:center;box-shadow:-1px -1px 0 var(--form-accent)}
.form__group--segmented .form__option input:focus-visible+label{outline-offset:-3px}
.form__stepper{display:flex;align-items:stretch;gap:.35rem;max-width:14rem}
.form .form__stepper>input{flex:1 1 4rem;min-width:0;text-align:center;-moz-appearance:textfield;appearance:textfield}
.form__stepper>input::-webkit-inner-spin-button,.form__stepper>input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.form__step,.form__date-open{flex:none;display:inline-flex;align-items:center;justify-content:center;min-width:var(--form-height);min-height:var(--form-height);margin:0;padding:0 .6rem;border:1px solid var(--form-border,var(--form-line));border-radius:var(--form-radius);background:var(--form-bg);color:var(--form-fg);font:inherit;line-height:1;cursor:pointer;box-sizing:border-box}
.form__step{font-size:1.25em}
.form__step,.form__date-open,.form__cal button{touch-action:manipulation}
.form__step:hover,.form__date-open:hover{background:var(--form-soft)}
.form__step[disabled]{opacity:.5;cursor:default}
.form__phone{display:flex;gap:.35rem}
.form .form__plate{max-width:12rem;letter-spacing:.06em;font-variant-numeric:tabular-nums}
.form__plate-warning{margin:.35rem 0 0;padding:.35rem .55rem;border-left:4px solid #b45309;background:color-mix(in srgb,#f59e0b 14%,transparent);font-size:.875rem;line-height:1.4}
.form__plate-warning[hidden]{display:none}
.form__plate-foreign{display:flex;gap:.4rem;align-items:center;margin:.45rem 0 0;font-weight:400}
.form__plate-foreign>input{width:auto;margin:0}
.form .form__phone>select{flex:0 1 9.5rem;width:auto;min-width:5.5rem}
.form__phone>input{flex:1 1 8rem;min-width:0}
.form__multi{position:relative}
.form__multi>summary{display:flex;align-items:center;gap:.5rem;min-height:var(--form-height);padding:var(--form-pad,.5rem .75rem);border:1px solid var(--form-border,var(--form-line));border-radius:var(--form-radius);background:var(--form-bg);color:var(--form-fg);cursor:pointer;list-style:none;box-sizing:border-box}
.form__multi>summary::-webkit-details-marker{display:none}
.form__multi>summary::after{content:"";flex:none;width:.5em;height:.5em;margin:0 .2em .2em auto;border:solid currentColor;border-width:0 2px 2px 0;transform:rotate(45deg)}
.form__multi[open]>summary::after{margin-bottom:-.2em;transform:rotate(225deg)}
.form__multi>summary>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.form__multi-panel{position:absolute;z-index:20;top:calc(100% + .25rem);left:0;right:0;max-height:16rem;overflow:auto;padding:.5rem .75rem;border:1px solid var(--form-hair);border-radius:var(--form-radius);background:var(--form-bg);color:var(--form-fg);box-shadow:0 8px 24px rgba(0,0,0,.15)}
.form__multi-panel .form__option{margin:0;padding:.4rem 0}
.form__multi-panel .form__option label{flex:1;cursor:pointer}
.form__date{position:relative;display:flex;align-items:stretch;gap:.35rem}
.form__date>input,.form__date>.form__float{flex:1 1 auto;min-width:0}
.form__date[data-ready] input::-webkit-calendar-picker-indicator{display:none}
.form__cal{position:absolute;z-index:20;top:calc(100% + .25rem);left:0;width:19rem;max-width:calc(100vw - 2rem);padding:.6rem;border:1px solid var(--form-hair);border-radius:var(--form-radius);background:var(--form-bg);color:var(--form-fg);box-shadow:0 8px 24px rgba(0,0,0,.15);box-sizing:border-box}
.form__cal--end{left:auto;right:0}
.form__cal-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.4rem;font-weight:600}
.form__cal table{width:100%;margin:0;border:0;border-collapse:collapse;table-layout:fixed}
.form__cal th{padding:.2rem 0;border:0;background:none;font-size:.8em;font-weight:600;color:var(--form-muted);text-align:center}
.form__cal td{padding:1px;border:0;background:none}
.form__cal button{display:block;width:100%;min-height:2.5rem;margin:0;padding:0;border:0;border-radius:calc(var(--form-radius) - 2px);background:none;color:inherit;font:inherit;line-height:1;cursor:pointer}
.form__cal-head button{flex:none;width:2.5rem;font-size:1.25em}
.form__cal button:hover{background:var(--form-soft)}
.form__cal [aria-current=date]{font-weight:700;text-decoration:underline}
.form__cal [aria-pressed=true]{background:var(--form-accent);color:var(--form-on-accent)}
.form__cal-in{background:var(--form-hair)!important}
.form__cal [aria-disabled=true]{background:none;color:var(--form-muted);text-decoration:line-through;cursor:default}
.form__subgroup{margin:.5rem 0 0;padding:0;border:0;min-width:0}
.form__subgroup-title{padding:0;margin:0 0 .25rem;font-size:.9em;font-weight:600;color:var(--form-muted)}
.cb{position:relative}
.form select[hidden],.form__multi[hidden]{display:none}
.cb__box{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;min-height:var(--form-height);padding:0 2.2rem 0 .45rem;border:1px solid var(--form-border,var(--form-line));border-radius:var(--form-radius);background:var(--form-bg);color:var(--form-fg);box-sizing:border-box;cursor:text}
.cb__box::after{content:"";position:absolute;right:.95rem;top:calc(var(--form-height)/2 - .35em);width:.5em;height:.5em;border:solid currentColor;border-width:0 2px 2px 0;transform:rotate(45deg);pointer-events:none}
.cb:focus-within .cb__box{outline:3px solid var(--form-focus);outline-offset:2px;box-shadow:var(--form-focus-shadow)}
.form .cb__box>input{flex:1 1 2rem;width:auto;min-width:2rem;min-height:max(44px,var(--form-height));margin:-1px 0;padding:.2rem .3rem;border:0;background:none;box-shadow:none;outline:0}
.cb__box:has([aria-invalid=true]){--form-border:var(--form-danger);box-shadow:0 0 0 1px var(--form-danger)}
.cb__box:has(:disabled){background:var(--form-soft);color:var(--form-muted);cursor:not-allowed}
.cb__pills{display:contents;margin:0;padding:0;list-style:none}
.cb__pill{display:inline-flex;align-items:center;gap:.1rem;max-width:100%;margin:.2rem 0;padding:.15rem .15rem .15rem .65rem;border-radius:1em;background:var(--form-soft);font-size:.9em;overflow-wrap:anywhere}
.form .cb button{flex:none;min-width:44px;min-height:44px;margin:0;padding:0;border:0;border-radius:50%;background:none;color:inherit;font:inherit;font-size:1.15em;line-height:1;cursor:pointer}
.form .cb button:hover{background:var(--form-hair)}
.form .cb button.cb__x{margin:-6px}
.form .cb__clear{position:absolute;right:1.8rem;top:calc(var(--form-height)/2 - 22px)}
.cb__box:has(.cb__clear:not([hidden])){padding-right:calc(1.8rem + 44px)}
.cb__pop{position:absolute;z-index:30;top:calc(100% + .25rem);left:0;right:0;max-height:min(20rem,60vh);overflow:auto;padding:.25rem 0;border:1px solid var(--form-hair);border-radius:var(--form-radius);background:var(--form-bg);color:var(--form-fg);box-shadow:0 8px 24px rgba(0,0,0,.15)}
.cb__pop[hidden],.cb__status[hidden],.cb__list[hidden]{display:none}
.cb__status{margin:0;padding:.6rem .75rem;color:var(--form-muted)}
.cb__group-title{padding:.5rem .75rem .2rem;font-size:.8em;font-weight:700;letter-spacing:.02em;color:var(--form-muted)}
.cb__opt{display:flex;align-items:center;gap:.6rem;min-height:44px;padding:.45rem .75rem;box-sizing:border-box;cursor:pointer}
.cb__opt:hover,.cb__opt--active{background:var(--form-soft)}
.cb__opt--active{box-shadow:inset 3px 0 0 var(--form-accent)}
.cb__opt[aria-disabled=true]{color:var(--form-muted);cursor:default}
.cb__opt--chosen .cb__label{font-weight:600}
.cb__opt--chosen::after{content:"";flex:none;width:.35em;height:.7em;margin-left:auto;border:solid var(--form-accent);border-width:0 2px 2px 0;transform:rotate(45deg) translateY(-.1em)}
.cb__opt--create{font-style:italic}
.cb__img{flex:none;width:2rem;height:2rem;border-radius:calc(var(--form-radius) - 2px);object-fit:cover}
.cb__text{display:flex;flex-direction:column;min-width:0}
.cb__desc{font-size:.85em;color:var(--form-muted)}
.cb mark{padding:0;background:none;color:inherit;font-weight:700;text-decoration:underline;text-underline-offset:.15em}
.vehicle .vehicle__parts{display:flex;flex-wrap:wrap;gap:.75rem}
.vehicle .vehicle__part{flex:1 1 12rem;min-width:0;position:relative}
.vehicle .vehicle__part--tyreSize{flex-basis:100%}
.vehicle input,.vehicle select{width:100%;box-sizing:border-box}
.vehicle__intro,.vehicle__source,.vehicle__chips-hint{font-size:.85em;opacity:.8;margin:.25rem 0}
.vehicle__source{font-size:.75em}
.vehicle__combo{position:relative}
.vehicle__list{position:absolute;z-index:20;left:0;right:0;top:100%;margin:.25rem 0 0;padding:.25rem 0;list-style:none;max-height:16rem;overflow:auto;background:var(--form-bg,#fff);color:inherit;border:1px solid var(--form-border,#8a8f98);border-radius:var(--form-radius,.375rem);box-shadow:0 6px 18px rgba(0,0,0,.15)}
.vehicle__list[hidden]{display:none}
.vehicle__list li{padding:.6rem .75rem;cursor:pointer;display:flex;justify-content:space-between;gap:.5rem;min-height:44px;box-sizing:border-box;align-items:center}
.vehicle__list li[aria-selected=true],.vehicle__list li:hover{background:var(--form-accent-soft,#e8eefc)}
.vehicle__list li small{opacity:.7}
.vehicle__list li.vehicle__empty{cursor:default;opacity:.8}
.vehicle__chips[hidden]{display:none}
.vehicle__chips-label{font-weight:600;margin:.5rem 0 .25rem}
.vehicle__chip-row{display:flex;flex-wrap:wrap;gap:.5rem}
.vehicle__chip{min-height:44px;padding:.5rem .9rem;border-radius:999px;border:1px solid var(--form-border,#8a8f98);background:transparent;color:inherit;font:inherit;cursor:pointer}
.vehicle__chip[aria-pressed=true]{background:var(--form-accent,#1f4fd1);border-color:var(--form-accent,#1f4fd1);color:#fff}
.vehicle__chip small{display:block;font-size:.75em;color:inherit}
.vehicle__chip[aria-pressed=true] small{color:#fff}
.vehicle__help{margin-top:.5rem}
.vehicle__help summary{cursor:pointer;min-height:44px;display:flex;align-items:center}
.vehicle__help-body{display:flex;gap:.75rem;align-items:flex-start;flex-wrap:wrap}
.vehicle__help-body p{flex:1 1 14rem;margin:.25rem 0}
.vehicle__status:empty{display:none}
.vehicle__status{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
