#pp {
--pp-accent: #fbc02d;
--pp-line: #d2d2d2;
--pp-required: #d32f2f;
--pp-error: #c62828;
}
#pp .pp-field { margin: 0 0 1.1em; }
#pp .pp-field > label,
#pp .pp-labelrow > label { display: block; margin: 0; font-weight: 600; }
#pp .pp-event-name { margin: 0 0 1.1em; }
#pp .pp-label { font-weight: 600; } #pp .pp-req { color: var(--pp-required); font-weight: 700; font-size: 1.15em; line-height: 1; margin-left: .15em; }
#pp .pp-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; } #pp input:not([type=checkbox]):not([type=hidden]),
#pp select,
#pp textarea {
display: block;
width: 100%;
max-width: 520px;
margin-top: .25em;
padding: .45em 0;
font: inherit;
color: inherit;
background: transparent none; border: 0;
border-bottom: 1px solid var(--pp-line);
border-radius: 0;
box-shadow: none;
outline: 0;
-webkit-appearance: none;
appearance: none;
transition: border-color .2s ease, box-shadow .2s ease;
}
#pp input:not([type=checkbox]):not([type=hidden]):focus,
#pp select:focus,
#pp textarea:focus {
border-bottom-color: var(--pp-accent);
box-shadow: 0 1px 0 0 var(--pp-accent);
}
#pp input::placeholder,
#pp textarea::placeholder { color: #9a9a9a; opacity: 1; } #pp textarea { resize: vertical; }
#pp select {
padding-right: 1.8em;
background: transparent url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%23777' stroke-width='1.6'/></svg>") no-repeat right .2em center;
} #pp [aria-invalid="true"],
#pp [aria-invalid="true"]:focus {
border-bottom-color: var(--pp-error);
box-shadow: 0 1px 0 0 var(--pp-error);
}
#pp .pp-error { margin: .3em 0 0; color: var(--pp-error); font-size: .875em; }
#pp .pp-error:empty { display: none; } #pp .pp-check { display: flex; align-items: center; gap: .5em; cursor: pointer; font-weight: 600; }
#pp .pp-check input { margin: 0; } #pp .pp-labelrow { position: relative; display: flex; align-items: center; gap: .5em; }
#pp .pp-info-btn {
all: unset; box-sizing: border-box;
width: 1.4em;
height: 1.4em;
border: 1px solid #777;
border-radius: 50%;
text-align: center;
font: italic 700 .8rem/1.25em Georgia, "Times New Roman", serif;
color: #555;
cursor: pointer;
}
#pp .pp-info-btn:hover { color: #000; border-color: #000; }
#pp .pp-info-btn:focus-visible { outline: 2px solid var(--pp-accent); outline-offset: 2px; }
#pp .pp-tip {
display: none;
position: absolute;
left: 0;
top: calc(100% + .35em);
z-index: 20;
width: min(24rem, 100%);
padding: .6em .8em;
background: #333;
color: #fff;
border-radius: 6px;
font-size: .85rem;
font-weight: 400;
line-height: 1.4;
box-shadow: 0 4px 14px rgba(0, 0, 0, .25);
}
#pp .pp-info-btn:hover + .pp-tip,
#pp .pp-info-btn:focus-visible + .pp-tip,
#pp .pp-info.is-open .pp-tip { display: block; } #pp .pp-consent { margin: 1.2em 0; font-size: .9em; color: #555; }
#pp .pp-consent p { margin: 0 0 .6em; }
#pp .pp-hp { position: absolute; left: -9999px; height: 0; overflow: hidden; }
#pp [hidden] { display: none !important; }
#pp-status { min-height: 1.5em; }
.pp-names-row { margin: 0 0 .3em; }
.pp-names-label { font-weight: 700; } .pp-names-hint { padding: .8em 1em; background: #fff8e1; border-left: 4px solid #fbc02d; color: #6b5200; font-size: .9em; }