/* Increment 3: lens selection, preferences, processing and recommendation. */
body:has(:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]).active) { background:#081a36; }
.kiosk:has(:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]).active) { width:min(100%,1440px); background:#081a36; box-shadow:none; }
.kiosk:has(:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]).active) .topbar { height:100px; padding:24px 6%; gap:18px; }
.kiosk:has(:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]).active) .brand { color:#fff; }
.kiosk:has(:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]).active) .brand-copy small { color:#a8c8ef; font-size:9px; }
.kiosk:has(:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]).active) .brand-copy small i { background:#65b8ff; animation:none; box-shadow:none; }
.kiosk:has(:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]).active) .brand-mark svg { stroke:#68bbff; }
.kiosk:has(:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]).active) .brand-mark circle { fill:#f3ce70; }
.kiosk:has(:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]).active) .brand-mark .milie-spark { stroke:#f3ce70; }
.kiosk:has(:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]).active) .icon-button { background:#122948; border-color:#365071; }
.kiosk:has(:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]).active) .icon-button svg { stroke:#fff; }
.kiosk:has(:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]).active) :is(button,a,input):focus-visible { outline:3px solid #69baff; outline-offset:4px; }

:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) { --ink:#10213b; --muted:#506078; --green:#2264a5; --green-dark:#194f87; --lime:#f3ce70; --paper:#081a36; --line:#d4e0ef; color:#fff; padding:30px 6% 38px; min-height:calc(100svh - 100px); background:radial-gradient(ellipse at 85% 15%,#16427770,transparent 55%); }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .step-row { color:#b4c4da; font-size:12px; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .progress { background:#294261; margin:14px 0 30px; height:5px; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .progress i { background:#65b8ff; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .eyebrow { color:#a8c8ef; font-size:12px; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) h2 { font:700 clamp(36px,4.5vw,60px)/1.12 var(--sans); letter-spacing:-.04em; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) h2 em { font:inherit; color:#65b8ff; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .step-heading > p:last-child { font-size:18px; line-height:1.6; color:#b4c4da; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .sticky-action { position:static; padding:24px 0 0; margin-top:auto; background:none; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .primary-button { min-height:66px; background:#f3ce70; color:#10213b; box-shadow:none; font-size:18px; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .primary-button:hover:not(:disabled) { background:#ffdf8e; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .secondary-button { min-height:66px; background:#122948; border-color:#6e98c8; color:#d5eaff; font-size:16px; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .primary-button:disabled { background:#344760; color:#aabbcf; cursor:not-allowed; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .secondary-button:disabled { background:#182c46; border-color:#40536d; color:#94a8c2; cursor:not-allowed; }

:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) :is(.frame-grid,.frame-filter-list,.frame-result-grid) { margin:30px 0; gap:20px; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) :is(.product-card,.result-frame-card) { min-height:280px; background:#f6f9fe; color:#10213b; border:2px solid #d4e0ef; padding:24px; border-radius:20px; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) :is(.product-card,.result-frame-card).selected { border-color:#65b8ff; background:#e5f1ff; box-shadow:0 0 0 3px #65b8ff30; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .mini-frame { width:min(100%,330px); height:125px; flex:none; align-self:center; margin:22px auto; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) :is(.product-info,.result-info) { gap:8px; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) :is(.product-info,.result-info) b { font:700 25px/1.25 var(--sans); }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) :is(.product-info,.result-info) small { font-size:16px; line-height:1.5; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) :is(.product-info,.result-info) strong { font-size:22px; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .tag { top:18px; left:18px; font-size:10px; padding:7px 10px; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .tag.new { background:#e3edfb; color:#225489; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .product-check { width:32px; height:32px; line-height:32px; top:15px; right:15px; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .result-brand { color:#245991; font-size:12px; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .filter-group { padding:26px; background:#f6f9fe; color:#10213b; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .filter-icon { background:#e3edfb; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .filter-title small { font-size:11px; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .filter-title h3 { font:700 25px/1.3 var(--sans); }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .filter-chips { gap:10px; margin-top:24px; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .filter-chip { min-height:52px; padding:10px 18px; border-color:#bdcde1; background:#fff; font-size:15px; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .filter-chip.selected { background:#2264a5; border-color:#2264a5; color:#fff; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .empty-results { color:#10213b; background:#f6f9fe; border:1px solid #d4e0ef; max-width:600px; width:100%; margin:24px auto 36px; padding:36px; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .empty-results span { background:#e3edfb; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .empty-results h3 { font:700 28px/1.3 var(--sans); }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .empty-results p { font-size:17px; line-height:1.6; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .frame-result-grid:not(:has(.result-frame-card:not([hidden]))) { margin:0; }
:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) :is(button,a):focus-visible { outline:3px solid #65b8ff; outline-offset:4px; }
:is([data-screen="frames"], [data-screen="frame-search"]) .pager { margin:0 0 10px; }
:is([data-screen="frames"], [data-screen="frame-search"]) .pager-botao { min-height:62px; border-color:#6e98c8; background:#122948; color:#d5eaff; font-size:16px; }
:is([data-screen="frames"], [data-screen="frame-search"]) .pager-botao:disabled { background:#182c46; border-color:#40536d; color:#94a8c2; }
:is([data-screen="frames"], [data-screen="frame-search"]) .pager-pos { color:#b4c4da; font-size:16px; }
@media (max-width:650px) {
 :is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) { padding:20px 5% 32px; }
 :is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) :is(.frame-grid,.frame-filter-list,.frame-result-grid) { grid-template-columns:1fr; gap:16px; }
 :is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) :is(.product-card,.result-frame-card) { min-height:270px; }
 :is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .triple-action { grid-template-columns:1fr; }
 :is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .filter-group { padding:22px; }
}
@media (orientation:portrait) and (min-width:700px) and (min-height:1000px) {
 .kiosk:has(:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]).active) { width:100%; }
 .kiosk:has(:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]).active) .topbar { height:132px; padding:30px 7%; }
 .kiosk:has(:is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]).active) .icon-button { width:64px; height:64px; }
 :is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) { min-height:calc(100svh - 132px); padding:44px 7% 56px; }
 :is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) h2 { font-size:clamp(48px,6vw,68px); }
 :is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .step-heading > p:last-child { font-size:24px; }
 :is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) :is(.step-row,.eyebrow) { font-size:16px; }
 :is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) :is(.primary-button,.secondary-button) { min-height:82px; font-size:22px; }
 :is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) :is(.product-card,.result-frame-card) { min-height:340px; padding:28px; }
 :is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) :is(.product-info,.result-info) b { font-size:28px; }
 :is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) :is(.product-info,.result-info) small { font-size:19px; }
 :is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) :is(.product-info,.result-info) strong { font-size:26px; }
 :is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .frame-filter-list { grid-template-columns:1fr; gap:24px; }
 :is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .filter-chip { min-height:66px; font-size:21px; padding:12px 22px; }
 :is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .filter-title h3 { font-size:30px; }
 :is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .filter-title small { font-size:14px; }
 :is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .triple-action { grid-template-columns:1fr 1fr; }
 :is([data-screen="frames"], [data-screen="frame-search"], [data-screen="frame-results"]) .triple-action .primary-button { grid-column:1 / -1; }
}

/* ── Busca de armação ───────────────────────────────────────────────────────
   Pesquisa por código OMA, modelo ou descrição. Filtra os cards que já estão
   na tela — é auxílio de navegação, não um critério do atendimento (os chips
   da tela "Analisar mais opções" é que são). */
[data-screen="frames"] .frame-search-field { position:relative; display:flex; align-items:center; margin:22px 0 10px; }
[data-screen="frames"] .frame-search-icon { position:absolute; left:18px; display:grid; place-items:center; pointer-events:none; }
[data-screen="frames"] .frame-search-icon svg { width:22px; height:22px; fill:none; stroke:#7ea9d8; stroke-width:2; stroke-linecap:round; }
[data-screen="frames"] #frameSearch { width:100%; min-height:62px; padding:0 54px; border:1.5px solid #3d6491; border-radius:16px; background:#0e2b4d; color:#fff; font:500 17px/1 var(--sans); -webkit-appearance:none; appearance:none; }
[data-screen="frames"] #frameSearch::placeholder { color:#7ea9d8; }
[data-screen="frames"] #frameSearch::-webkit-search-cancel-button { display:none; }
[data-screen="frames"] #frameSearch:focus { outline:none; border-color:#65b8ff; box-shadow:0 0 0 3px #65b8ff33; }
[data-screen="frames"] .frame-search-clear { position:absolute; right:12px; width:36px; height:36px; border:0; border-radius:50%; background:#1e4677; color:#d5eaff; font:400 22px/1 var(--sans); cursor:pointer; }
[data-screen="frames"] .frame-search-clear[hidden] { display:none; }
[data-screen="frames"] .frame-search-count { min-height:20px; margin:0 0 6px 4px; color:#a8c8ef; font:600 13px/1.4 var(--sans); }
[data-screen="frames"] .frame-search-empty { margin:18px 0 0; padding:20px 22px; border:1px dashed #4a6c94; border-radius:16px; background:#0e2b4d; color:#b4c4da; font-size:15px; line-height:1.55; text-align:center; }
[data-screen="frames"] .frame-search-empty b { color:#d5eaff; }
[data-screen="frames"] .frame-search-empty[hidden] { display:none; }
[data-screen="frames"] .product-card[hidden] { display:none; }

@media (max-width:650px) {
 [data-screen="frames"] #frameSearch { min-height:54px; font-size:15px; padding:0 48px; }
 [data-screen="frames"] .frame-search-icon { left:15px; }
 [data-screen="frames"] .frame-search-icon svg { width:19px; height:19px; }
 [data-screen="frames"] .frame-search-empty { font-size:13px; padding:16px; }
}
@media (orientation:portrait) and (min-width:700px) and (min-height:1000px) {
 [data-screen="frames"] .frame-search-field { margin:32px 0 14px; }
 [data-screen="frames"] #frameSearch { min-height:86px; font-size:23px; padding:0 70px; border-radius:20px; }
 [data-screen="frames"] .frame-search-icon { left:24px; }
 [data-screen="frames"] .frame-search-icon svg { width:30px; height:30px; }
 [data-screen="frames"] .frame-search-clear { width:48px; height:48px; right:16px; font-size:28px; }
 [data-screen="frames"] .frame-search-count { font-size:17px; }
 [data-screen="frames"] .frame-search-empty { font-size:20px; padding:28px; }
}

/* Filtro de traçagem: mostrar todas as armações ou só as que têm .oma
   cadastrado — as únicas em que a simulação de bloco usa a forma real. */
/* A margem vive na LINHA, não no campo: com ela no campo, o centro da linha
   ficava 6px abaixo do centro do campo (22 em cima, 10 embaixo) e o botão
   subia em relação à caixa de busca. */
[data-screen="frames"] .frame-search-row { display:flex; align-items:center; gap:12px; margin:22px 0 10px; }
[data-screen="frames"] .frame-search-row .frame-search-field { flex:1; min-width:0; margin:0; }
/* align-self:stretch em vez de altura fixa: o botão passa a ter exatamente a
   altura do campo de busca (min-height 62px), sem repetir o número aqui. */
[data-screen="frames"] .oma-toggle { display:inline-flex; align-items:center; gap:9px; flex:none; align-self:stretch; padding:0 22px; border:1.5px solid #2b558a; border-radius:16px; background:#12365f; color:#a8c8ef; font:800 13px/1 var(--sans); letter-spacing:.08em; cursor:pointer; transition:.16s; }
[data-screen="frames"] .oma-toggle .oma-luz { width:12px; height:12px; border-radius:50%; background:#43608a; transition:.16s; }
[data-screen="frames"] .oma-toggle[aria-pressed="true"] { border-color:#65b8ff; background:#17477d; color:#eaf4ff; }
[data-screen="frames"] .oma-toggle[aria-pressed="true"] .oma-luz { background:#65b8ff; box-shadow:0 0 0 4px #65b8ff33; }
@media (max-width:700px) {
  [data-screen="frames"] .frame-search-row { flex-wrap:wrap; }
  [data-screen="frames"] .oma-toggle { align-self:auto; min-height:52px; padding:0 18px; }
}
