/* Interactive modules: neutral defaults that a theme may override through the --pi-* tokens. */
:root{--pi-accent:#2458d6;--pi-text:#1b1f24;--pi-muted:#5b6470;--pi-border:#d5d9df;--pi-bg:#fff;--pi-error:#b3261e;--pi-ok:#1b6e3a;--pi-radius:8px}
.pi-page{margin:0;background:#f6f7f9;color:var(--pi-text);font:1rem/1.55 system-ui,-apple-system,"Segoe UI",sans-serif}
.pi-main{max-width:48rem;margin:0 auto;padding:16px;overflow-wrap:anywhere}
.pi-main h1{font-size:1.6rem;line-height:1.25;margin:8px 0 16px}
.pi-label{display:block;font-weight:600;margin-block-end:8px}
.pi-search{position:relative;margin-block:16px}
.pi-search-row{display:flex;gap:8px}
.pi-search input,.pi-form input,.pi-form textarea,.pi-form select{box-sizing:border-box;width:100%;min-height:44px;padding:8px 12px;border:1px solid var(--pi-border);border-radius:var(--pi-radius);background:var(--pi-bg);color:inherit;font:inherit}
.pi-search button,.pi-submit,.pi-button{min-height:44px;padding:8px 16px;border:0;border-radius:var(--pi-radius);background:var(--pi-accent);color:#fff;font:inherit;font-weight:600;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center}
.pi-submit[disabled]{opacity:.55;cursor:not-allowed}
.pi-suggestions{position:absolute;inset-inline:0;z-index:10;margin:4px 0 0;padding:4px 0;list-style:none;background:var(--pi-bg);border:1px solid var(--pi-border);border-radius:var(--pi-radius);box-shadow:0 8px 24px rgba(0,0,0,.08);max-height:60vh;overflow:auto}
.pi-suggestions [role=option]{display:flex;justify-content:space-between;gap:12px;padding:8px 12px;cursor:pointer}
.pi-suggestions [aria-selected=true],.pi-suggestions [role=option]:hover{background:#eef2fb}
.pi-option-all{color:var(--pi-accent);font-weight:600;border-block-start:1px solid var(--pi-border)}
.pi-kind{color:var(--pi-muted);font-size:.85rem;white-space:nowrap}
.pi-search-status,.pi-note{color:var(--pi-muted);margin:8px 0}
.pi-results{padding-inline-start:24px}.pi-results li{margin-block-end:12px}.pi-results p{margin:4px 0;color:var(--pi-muted)}
.pi-form{display:grid;gap:12px;background:var(--pi-bg);border:1px solid var(--pi-border);border-radius:var(--pi-radius);padding:16px;margin-block:16px}
.pi-form-title{font-size:1.2rem;margin:0}
.pi-field label{display:block;font-weight:600;margin-block-end:4px}
.pi-check{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start}.pi-check input{width:20px;min-height:20px;margin-block-start:3px}
.pi-check label{flex:1;font-weight:400}
.pi-required,.pi-field-error,.pi-error-summary{color:var(--pi-error)}
.pi-field-error{display:block;font-size:.9rem;margin-block-start:4px;flex-basis:100%}
[aria-invalid=true]{border-color:var(--pi-error)!important}
.pi-form-status{margin:0;min-height:1.5em}.pi-form-status[data-state=sent]{color:var(--pi-ok)}
.pi-hp{position:absolute!important;inline-size:1px;block-size:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pi-cards{list-style:none;padding:0;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr))}
.pi-card{background:var(--pi-bg);border:1px solid var(--pi-border);border-radius:var(--pi-radius);padding:16px}
.pi-card h2{font-size:1.1rem;margin:0 0 8px}
.pi-price{font-weight:600}
.pi-contacts{margin-block:24px}.pi-actions{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.pi-action{display:inline-flex;flex-direction:column;gap:2px;min-height:44px;padding:8px 12px;border:1px solid var(--pi-border);border-radius:var(--pi-radius);background:var(--pi-bg);color:inherit;text-decoration:none}
.pi-action-label{font-weight:600;color:var(--pi-accent)}.pi-action-value{color:var(--pi-muted);font-size:.9rem}
.pi-hours{border-collapse:collapse;margin-block:8px}.pi-hours caption{text-align:start;font-weight:600;margin-block-end:4px}
.pi-hours th,.pi-hours td{padding:4px 12px 4px 0;text-align:start;font-weight:400}
.pi-rating{margin-block:24px}.pi-rating fieldset{border:0;margin:0;padding:0}.pi-rating legend{font-weight:600;margin-block-end:4px}
.pi-rating-summary{font-weight:600;margin:4px 0 8px}.pi-rating-form{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}
.pi-stars{display:inline-flex;gap:4px}.pi-stars input{position:absolute;opacity:0;width:1px;height:1px}
.pi-stars label{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;font-size:1.5rem;color:var(--pi-muted);border:1px solid var(--pi-border);border-radius:var(--pi-radius);cursor:pointer}
.pi-stars input:checked+label{color:var(--pi-accent);border-color:var(--pi-accent)}.pi-stars input:focus-visible+label{outline:3px solid var(--pi-accent);outline-offset:2px}
.pi-rating-status{flex-basis:100%;margin:0;min-height:1.5em}
.pi-visually-hidden{position:absolute!important;inline-size:1px;block-size:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pi-page a{color:var(--pi-accent)}
.pi-page :focus-visible,.pi-form :focus-visible,.pi-search :focus-visible,.pi-action:focus-visible{outline:3px solid var(--pi-accent);outline-offset:2px}
@media (max-width:400px){.pi-search-row{flex-direction:column}.pi-main{padding:12px}.pi-form{padding:12px}}
