/* TRi — Product Selector — page-specific rules lifted from frames/modernist-selector.html.
   GENERATED by build/build_wp_theme.py */
.sec{padding:56px 0;border-top:2px solid var(--color-divider)}
.eyebrow{color:var(--color-accent);font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 var(--space-3)}
.util{display:flex;align-items:center;gap:var(--space-6);font-size:12px;padding:8px 0;color:color-mix(in srgb,var(--color-text) 65%,transparent)}
.layout{display:grid;grid-template-columns:260px 1fr;gap:var(--space-8);align-items:start}
.filter-group{margin-bottom:var(--space-6)}
.filter-group h6{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb,var(--color-text) 60%,transparent);margin:0 0 10px}
.filter-opt{display:flex;align-items:center;gap:8px;font-size:14px;padding:6px 0;cursor:pointer;user-select:none}
.filter-opt input{accent-color:var(--color-accent);width:15px;height:15px}
.results-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-5)}
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5)}
.pcard{border:2px solid var(--color-text);padding:var(--space-5);display:flex;flex-direction:column;gap:10px}
.pcard .name{font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:19px}
.pcard .fam{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent)}
.pcard .specs{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.pcard .specs span{font-size:11px;border:1px solid var(--color-divider);padding:3px 8px;color:color-mix(in srgb,var(--color-text) 70%,transparent)}
.pcard{text-decoration:none;color:inherit}
.pcard:hover{border-color:var(--color-accent)}
.pcard:hover .name{color:var(--color-accent)}
.pcard:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}
.empty{border:2px dashed var(--color-divider);padding:60px;text-align:center;color:color-mix(in srgb,var(--color-text) 55%,transparent)}
.clear-btn{font-size:12px;color:var(--color-accent);background:none;border:0;cursor:pointer;padding:0;text-decoration:underline}
.chat-panel{background:var(--color-bg);border:2px solid var(--color-text);display:flex;flex-direction:column;min-height:300px}
.chat-head{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:2px solid var(--color-text)}
.chat-body{padding:18px;display:flex;flex-direction:column;gap:12px;flex:1;max-height:260px;overflow-y:auto}
.msg-user{align-self:flex-end;max-width:80%;background:var(--color-accent);color:var(--color-bg);padding:10px 14px;font-size:14px;line-height:1.4}
.msg-bot{align-self:flex-start;max-width:88%;background:var(--color-surface);border:1px solid var(--color-divider);padding:10px 14px;font-size:14px;line-height:1.45}
.chat-input{display:flex;align-items:center;gap:10px;padding:12px 14px;border-top:2px solid var(--color-text)}
.chat-input input{flex:1;border:0;background:transparent;font-family:inherit;font-size:14px;color:var(--color-text);outline:none}
.chat-input button{display:inline-grid;place-items:center;width:34px;height:34px;background:var(--color-text);color:var(--color-bg);border:0;cursor:pointer}
.chip-sugg{font-size:12px;border:1px solid var(--color-divider);padding:5px 10px;border-radius:0;background:none;color:var(--color-text);cursor:pointer}
.chip-sugg:hover{border-color:var(--color-accent);color:var(--color-accent)}
