.otp-finder{--otp-ink:#132238;--otp-muted:#64748b;--otp-line:#e2e8f0;--otp-soft:#f8fafc;--otp-brand:#0f766e;--otp-brand2:#115e59;--otp-ok:#15803d;--otp-warn:#b45309;max-width:1120px;margin:0 auto;padding:30px 18px 54px;color:var(--otp-ink);font-family:inherit;box-sizing:border-box}.otp-finder *{box-sizing:border-box}.otp-finder__hero{padding:34px 34px 28px;border-radius:24px;background:linear-gradient(135deg,#f0fdfa,#ecfeff);border:1px solid #ccfbf1;margin-bottom:18px}.otp-finder__eyebrow{font-size:12px;font-weight:800;letter-spacing:.12em;color:var(--otp-brand);margin-bottom:8px}.otp-finder__hero h1{font-size:clamp(28px,4vw,46px);line-height:1.08;margin:0 0 10px;color:var(--otp-ink)}.otp-finder__hero p{font-size:17px;line-height:1.6;margin:0;max-width:760px;color:#475569}.otp-finder__panel{position:relative;background:#fff;border:1px solid var(--otp-line);border-radius:20px;padding:22px;box-shadow:0 12px 34px rgba(15,23,42,.06)}.otp-finder__search-label{font-weight:800;margin-bottom:10px}.otp-finder__search-wrap{position:relative}.otp-finder__selected{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 10px}.otp-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid #99f6e4;background:#f0fdfa;color:#134e4a;border-radius:999px;padding:8px 11px;font-weight:700;cursor:pointer}.otp-chip b{font-size:18px;line-height:1}.otp-finder__input-row{display:grid;grid-template-columns:1fr auto;gap:10px}.otp-finder__input-row input{width:100%;min-height:52px;border:1px solid #cbd5e1;border-radius:12px;padding:0 15px;font:inherit;font-size:16px;outline:none;background:#fff}.otp-finder__input-row input:focus{border-color:#2dd4bf;box-shadow:0 0 0 3px rgba(45,212,191,.15)}.otp-finder__find{min-height:52px;border:0;border-radius:12px;padding:0 20px;background:var(--otp-brand);color:white;font-weight:800;font:inherit;cursor:pointer}.otp-finder__find:hover{background:var(--otp-brand2)}.otp-finder__suggestions{position:absolute;z-index:30;left:0;right:150px;top:58px;max-height:360px;overflow:auto;background:#fff;border:1px solid var(--otp-line);border-radius:14px;box-shadow:0 20px 45px rgba(15,23,42,.15);padding:7px}.otp-suggestion{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:left;border:0;background:#fff;border-radius:10px;padding:11px 12px;cursor:pointer;color:var(--otp-ink)}.otp-suggestion:hover{background:#f1f5f9}.otp-suggestion span{font-size:12px;color:var(--otp-muted);font-weight:800}.otp-suggestion--empty{cursor:default;color:var(--otp-muted)}.otp-finder__toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px}.otp-finder__family{display:flex;gap:6px;flex-wrap:wrap}.otp-finder__family button,.otp-finder__clear{border:1px solid var(--otp-line);background:#fff;border-radius:999px;padding:8px 13px;font:inherit;font-size:14px;font-weight:700;color:#475569;cursor:pointer}.otp-finder__family button.is-active{background:#ecfdf5;border-color:#5eead4;color:#115e59}.otp-finder__clear{border-color:transparent;color:#64748b}.otp-finder__message{font-size:13px;color:var(--otp-muted);margin-top:13px;min-height:20px}.otp-finder__message.is-error{color:#b91c1c;font-weight:700}.otp-finder__summary{margin:22px 0 12px;padding:12px 15px;border:1px solid #bae6fd;background:#f0f9ff;border-radius:12px;color:#0c4a6e}.otp-finder__results{display:grid;gap:15px}.otp-result{background:#fff;border:1px solid var(--otp-line);border-radius:18px;padding:20px;box-shadow:0 8px 24px rgba(15,23,42,.04)}.otp-result--full{border-color:#86efac;box-shadow:0 8px 26px rgba(22,163,74,.08)}.otp-result__top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.otp-result__family{font-size:11px;font-weight:900;letter-spacing:.08em;color:var(--otp-brand);margin-bottom:5px}.otp-result h3{font-size:20px;margin:0 0 5px;color:var(--otp-ink)}.otp-result__code{font-size:12px;color:var(--otp-muted)}.otp-score{min-width:78px;height:72px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:14px;background:#fff7ed;color:#9a3412;border:1px solid #fed7aa}.otp-score--full{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.otp-score strong{font-size:21px;line-height:1}.otp-score span{font-size:11px;font-weight:800;text-transform:uppercase;margin-top:4px}.otp-result__status{margin:15px 0;padding:10px 12px;border-radius:10px;background:#fff7ed;color:#9a3412;font-weight:800;font-size:14px}.otp-result__status.is-full{background:#f0fdf4;color:#166534}.otp-result__columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.otp-result__columns>div{background:var(--otp-soft);border-radius:13px;padding:14px}.otp-result__columns h4{font-size:13px;margin:0 0 10px;color:#475569}.otp-result ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}.otp-result__columns li{display:flex;gap:8px;align-items:flex-start;font-size:14px}.otp-result__columns li small{display:block;font-size:11px;font-weight:800;color:var(--otp-warn);margin-top:2px}.otp-dot{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-weight:900;flex:0 0 20px}.otp-dot--ok{background:#dcfce7;color:#166534}.otp-dot--miss{background:#ffedd5;color:#9a3412}.otp-none{font-size:14px;color:#64748b}.otp-result__actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px}.otp-result details{flex:1}.otp-result summary{cursor:pointer;font-size:13px;font-weight:800;color:#0f766e}.otp-all-tests{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 15px!important;margin-top:12px!important;padding:12px!important;background:#f8fafc;border-radius:10px}.otp-all-tests li{font-size:12px;color:#475569}.otp-whatsapp{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:10px;background:#166534;color:#fff!important;text-decoration:none!important;font-weight:800;font-size:13px}.otp-whatsapp:hover{background:#14532d}.otp-empty-state{padding:28px;border:1px dashed #cbd5e1;border-radius:16px;text-align:center;background:#f8fafc}.otp-empty-state h3{margin:0 0 8px}.otp-empty-state p{margin:0;color:#64748b}.otp-finder__disclaimer{font-size:12px;line-height:1.6;color:#64748b;margin-top:18px;padding:12px 2px}@media(max-width:720px){.otp-finder{padding:18px 12px 40px}.otp-finder__hero{padding:24px 20px;border-radius:18px}.otp-finder__panel{padding:16px}.otp-finder__input-row{grid-template-columns:1fr}.otp-finder__find{width:100%}.otp-finder__suggestions{right:0;top:116px}.otp-finder__toolbar{align-items:flex-start;flex-direction:column}.otp-result__top{gap:10px}.otp-score{min-width:68px;height:64px}.otp-result__columns{grid-template-columns:1fr}.otp-result__actions{align-items:stretch;flex-direction:column}.otp-whatsapp{width:100%}.otp-all-tests{grid-template-columns:1fr!important}}
.otp-chip em{font-style:normal;font-size:9px;line-height:1;text-transform:uppercase;letter-spacing:.06em;padding:4px 6px;border-radius:999px;background:#ccfbf1;color:#115e59}.otp-composite-note{color:#047857!important;font-weight:700!important}.otp-partial-note{color:#b45309!important;font-weight:700!important;line-height:1.4}.otp-dot--partial{background:#fef3c7;color:#92400e}
.otp-chip--redundant{border-style:dashed;background:#fffdf5}.otp-chip--redundant em{background:#fef3c7;color:#92400e;max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.otp-finder__scan{margin:10px 0 22px;padding:17px;border:1px solid #cbd5e1;border-radius:14px;background:#f8fafc}.otp-finder__scan p{font-size:13px;color:#475569;line-height:1.5;margin:7px 0 12px}.otp-finder__scan-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.otp-finder__scan-row input{max-width:100%;font:inherit}.otp-finder__scan-row .otp-finder__find{min-height:42px}#otp-scan-status{min-height:20px;color:#475569;font-size:13px;margin-top:10px}#otp-scan-review{margin-top:14px;border-top:1px solid #e2e8f0;padding-top:12px}#otp-scan-review h3{font-size:17px;margin:0 0 5px}.otp-scan-item{display:grid;grid-template-columns:minmax(120px,1fr) minmax(180px,1.5fr);gap:12px;align-items:center;padding:8px 0;border-bottom:1px solid #e2e8f0}.otp-scan-item__read{font-weight:700;overflow-wrap:anywhere}.otp-scan-item select{min-width:0;width:100%;min-height:40px;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:5px 8px;font:inherit}.otp-finder__scan button:disabled{opacity:.6;cursor:wait}#otp-apply-scan{margin-top:14px;min-height:42px}@media(max-width:720px){.otp-scan-item{grid-template-columns:1fr}.otp-finder__scan-row .otp-finder__find{width:100%}}

/* The dark Omnexivo store theme forces light headings and muted paragraphs.
   Keep the finder’s pale cards legible without changing the rest of the site. */
.ox-commerce-site .ox-main .otp-finder :is(h1,h3){color:#132238!important}
.ox-commerce-site .ox-main .otp-finder h4{color:#475569!important}
.ox-generic .entry-content .otp-finder :is(.otp-finder__hero,.otp-finder__scan,.otp-empty-state) p{color:#475569!important}
.ox-generic .entry-content .otp-finder .otp-finder__input-row input{color:#132238!important;background:#fff!important}
.ox-generic .entry-content .otp-finder .otp-finder__input-row input::placeholder{color:#64748b!important}

/* 2.3: lightweight spatial hero, five-fact lens, and guided search. */
.otp-finder{max-width:1180px;padding-bottom:70px}
.otp-finder__hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.8fr);align-items:center;gap:22px;min-height:310px;overflow:hidden;padding:34px 42px;border:1px solid rgba(103,232,249,.26);background:radial-gradient(circle at 78% 32%,rgba(67,56,202,.34),transparent 38%),radial-gradient(circle at 16% 85%,rgba(8,145,178,.24),transparent 36%),linear-gradient(126deg,#0b1730,#111a38 58%,#171338);box-shadow:0 24px 60px rgba(4,10,25,.18)}
.otp-finder__hero:after{content:"";position:absolute;inset:0;z-index:-1;opacity:.13;background-image:linear-gradient(rgba(116,227,250,.26) 1px,transparent 1px),linear-gradient(90deg,rgba(116,227,250,.26) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,transparent 15%,#000)}
.otp-finder__hero-copy{position:relative;z-index:2}
.otp-finder__hero .otp-finder__eyebrow{color:#8eefff;letter-spacing:.18em}
.ox-commerce-site .ox-main .otp-finder .otp-finder__hero h1{color:#f6fbff!important;font-size:clamp(34px,4vw,54px);line-height:1.06;letter-spacing:-.035em;max-width:650px;margin:12px 0 16px}
.ox-generic .entry-content .otp-finder .otp-finder__hero p{color:#d0dcf0!important;font-size:17px;max-width:630px}
.otp-finder__hero-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.otp-finder__hero-tags span{padding:7px 10px;border:1px solid rgba(125,211,252,.29);background:rgba(164,194,246,.09);border-radius:999px;font-size:11px;font-weight:800;color:#d8f7ff;letter-spacing:.015em}
.otp-finder__stage{--otp-rotate-x:0deg;--otp-rotate-y:0deg;position:relative;display:grid;place-items:center;min-height:260px;perspective:700px;touch-action:pan-y}
.otp-finder__sphere{position:relative;width:210px;height:210px;transform-style:preserve-3d;transform:rotateX(var(--otp-rotate-x)) rotateY(var(--otp-rotate-y));transition:transform .35s ease;filter:drop-shadow(0 12px 38px rgba(53,213,235,.28))}
.otp-finder__sphere:before{content:"";position:absolute;inset:26px;border-radius:50%;border:1px solid rgba(125,211,252,.42);background:radial-gradient(circle at 32% 22%,rgba(125,211,252,.2),transparent 35%),radial-gradient(circle at 68% 80%,rgba(139,92,246,.32),transparent 55%),rgba(5,20,43,.78);box-shadow:inset 0 0 42px rgba(67,226,247,.22),0 0 42px rgba(8,145,178,.16);transform:translateZ(10px)}
.otp-finder__ring{position:absolute;inset:9px;border:1.5px solid rgba(103,232,249,.85);border-radius:50%;box-shadow:0 0 16px rgba(34,211,238,.38);transform-style:preserve-3d}
.otp-finder__ring--a{transform:rotateY(67deg) rotateX(26deg);animation:otp-orbit-a 18s linear infinite}
.otp-finder__ring--b{inset:18px;border-color:rgba(196,181,253,.8);transform:rotateX(76deg) rotateY(34deg);animation:otp-orbit-b 24s linear infinite reverse}
.otp-finder__ring--c{inset:0;border-style:dashed;border-color:rgba(125,211,252,.25);transform:rotateZ(-26deg) rotateX(22deg)}
.otp-finder__sphere-core{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#ecfeff;font-size:49px;line-height:.9;font-weight:900;letter-spacing:-.06em;text-shadow:0 0 25px rgba(103,232,249,.67);transform:translateZ(52px)}
.otp-finder__sphere-core small{font-size:10px;letter-spacing:.17em;margin-top:9px;line-height:1.2;color:#a5f3fc}
.otp-finder__spark{position:absolute;width:10px;height:10px;border-radius:50%;background:#67e8f9;box-shadow:0 0 19px 5px rgba(34,211,238,.55)}
.otp-finder__spark--a{top:25px;left:24px;transform:translateZ(50px)}.otp-finder__spark--b{right:3px;top:119px;background:#c4b5fd;transform:translateZ(-28px)}.otp-finder__spark--c{bottom:18px;left:38px;width:6px;height:6px;transform:translateZ(48px)}
.otp-finder__stage-caption{position:absolute;bottom:-4px;font-size:10px;font-weight:800;letter-spacing:.15em;color:#9db4d2}
@keyframes otp-orbit-a{to{transform:rotateY(427deg) rotateX(26deg)}}
@keyframes otp-orbit-b{to{transform:rotateX(436deg) rotateY(34deg)}}
.otp-finder__lens{display:grid;grid-template-columns:minmax(215px,.8fr) minmax(0,1.7fr);gap:25px;align-items:center;padding:22px 25px;margin-bottom:18px;border:1px solid rgba(103,232,249,.22);border-radius:20px;background:linear-gradient(120deg,#172344,#172039 60%,#211c46);color:#effbff}
.otp-finder__lens h2{color:#f6fbff;font-size:22px;line-height:1.16;margin:5px 0 7px}
.otp-finder__lens p{color:#c5d6ed;font-size:12px;line-height:1.5;margin:0}
.otp-finder__lens .otp-finder__eyebrow{font-size:10px;color:#93edfa}
.otp-finder__lens-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.otp-finder__lens-grid span{display:flex;flex-direction:column;justify-content:space-between;gap:11px;min-height:86px;padding:12px 10px;border:1px solid rgba(103,232,249,.2);border-radius:12px;background:rgba(215,247,255,.08)}
.otp-finder__lens-grid strong{font-size:11px;line-height:1.2;color:#c7d7ef}.otp-finder__lens-grid b{font-size:21px;line-height:1;color:#effcff;font-variant-numeric:tabular-nums}
.otp-finder__natural{margin-top:16px;padding:14px 16px;border:1px solid #c9dfea;border-radius:13px;background:linear-gradient(120deg,#f8fcff,#f5f3ff)}
.otp-finder__natural summary{list-style:none;cursor:pointer;color:#19344f;font-weight:800}.otp-finder__natural summary::-webkit-details-marker{display:none}
.otp-finder__natural summary:after{content:"⌄";float:right;font-size:18px;line-height:1;color:#0f766e}.otp-finder__natural[open] summary:after{transform:rotate(180deg)}
.otp-finder__natural summary span{margin-left:9px;color:#0f766e;font-size:11px;font-weight:700}
.otp-finder__natural p{font-size:13px;line-height:1.5;color:#475569;margin:14px 0 10px}.otp-finder__natural label{font-size:13px;font-weight:800;color:#223850}
.otp-finder__natural textarea{display:block;width:100%;min-height:76px;resize:vertical;margin:7px 0 10px;padding:11px 13px;font:inherit;font-size:15px;line-height:1.4;color:#132238;background:#fff;border:1px solid #b9cedd;border-radius:10px}
.otp-finder__natural textarea:focus{outline:3px solid rgba(34,211,238,.26);border-color:#0891b2}
.otp-finder__natural-actions{display:flex;flex-wrap:wrap;gap:9px}.otp-finder__natural-actions button{min-height:42px}
.otp-finder__ai{padding:0 17px;border:1px solid #614ed6;border-radius:10px;background:#ede9fe;color:#443198;font:inherit;font-weight:800;cursor:pointer}
.otp-finder__consent{display:flex;gap:9px;align-items:flex-start;margin-top:12px;max-width:700px;line-height:1.4;font-size:12px!important;font-weight:500!important}
.otp-finder__consent input{margin-top:2px}
#otp-natural-status{min-height:18px;margin-top:10px;font-size:12px;color:#475569}
#otp-natural-review{margin-top:10px;padding-top:12px;border-top:1px solid #d6e2ed}
#otp-natural-review h3{font-size:16px;margin:0 0 5px}
#otp-natural-review p{font-size:12px;margin:0 0 7px}
.otp-finder__filters{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:17px;padding-top:15px;border-top:1px solid #e2e8f0}
.otp-finder__coverage{display:flex;flex-wrap:wrap;gap:6px}
.otp-finder__coverage button{padding:8px 11px;background:#fff;border:1px solid #d5dfeb;border-radius:9px;color:#40536a;font:inherit;font-size:12px;font-weight:800;cursor:pointer}
.otp-finder__coverage button.is-active{color:#0c5161;background:#ecfeff;border-color:#67e8f9}
.otp-finder__filters label{font-size:12px;font-weight:800;color:#475569}.otp-finder__filters select{min-height:35px;margin-left:5px;padding:5px 8px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#132238;font:inherit;font-size:12px}
.otp-finder__more{display:block;margin:20px auto 0;padding:11px 22px;border:1px solid rgba(103,232,249,.5);border-radius:11px;background:#182444;color:#e0fbff;font:inherit;font-weight:800;cursor:pointer}
.otp-finder__more:hover{background:#234066}
.otp-finder__find:disabled,.otp-finder__ai:disabled{opacity:.55;cursor:wait}
.otp-suggestion.is-highlighted,.otp-suggestion:focus-visible{background:#e6fbfc;outline:2px solid #4dd7e6}
.otp-result{transition:transform .22s ease,box-shadow .22s ease;transform-style:preserve-3d}
@media (hover:hover){.otp-result:hover{transform:perspective(800px) translateY(-3px) rotateX(1deg);box-shadow:0 18px 38px rgba(15,23,42,.13)}}
.otp-finder :is(button,summary,select,a,textarea,input):focus-visible{outline:3px solid #4ccfee;outline-offset:2px}
@media(max-width:860px){.otp-finder__lens{grid-template-columns:1fr}.otp-finder__hero{grid-template-columns:minmax(0,1fr) 220px;padding:28px}.otp-finder__sphere{width:170px;height:170px}.otp-finder__stage{min-height:230px}.otp-finder__lens-grid span{min-height:70px}}
@media(max-width:720px){.otp-finder__hero{grid-template-columns:1fr;gap:0;padding:25px 20px 12px}.otp-finder__stage{min-height:188px;pointer-events:none}.otp-finder__sphere{width:155px;height:155px}.otp-finder__sphere-core{font-size:39px}.otp-finder__stage-caption{display:none}.otp-finder__hero-tags{margin-top:16px}.otp-finder__lens{padding:17px}.otp-finder__lens-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.otp-finder__lens-grid span{min-height:66px;padding:9px}.otp-finder__lens-grid b{font-size:18px}.otp-finder__natural-actions .otp-finder__find{width:auto}.otp-finder__filters{align-items:flex-start;flex-direction:column}}
@media(max-width:390px){.otp-finder__lens-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.otp-finder__hero-tags span{font-size:10px}}
@media(prefers-reduced-motion:reduce){.otp-finder__ring,.otp-finder__sphere{animation:none!important;transition:none!important}.otp-result,.otp-result:hover{transition:none!important;transform:none!important}.otp-finder__stage{pointer-events:none}}
.otp-finder [hidden]{display:none!important}

/* The image reader stays discoverable even before an API provider is configured. */
.otp-finder__scan{margin:15px 0 0;background:linear-gradient(120deg,#f8fcff,#f5f3ff);border-color:#c9dfea}
.otp-finder__scan summary{list-style:none;cursor:pointer;color:#19344f;font-weight:800}
.otp-finder__scan summary::-webkit-details-marker{display:none}
.otp-finder__scan summary:after{content:"⌄";float:right;color:#0f766e;font-size:18px;line-height:1}
.otp-finder__scan[open] summary:after{transform:rotate(180deg)}
.otp-finder__scan summary span{margin-left:9px;color:#0f766e;font-size:11px;font-weight:700}
.otp-finder__scan .otp-finder__scan-unavailable{font-weight:700;color:#614b21}
.otp-finder__natural{padding:20px;border-color:#89a2ec;box-shadow:0 10px 28px rgba(56,76,144,.09)}
.otp-finder__natural summary{font-size:18px}
.otp-finder__natural summary span{display:inline-block;border-radius:100px;background:#e0f5ff;padding:5px 9px;vertical-align:middle}
.otp-finder__natural textarea{min-height:110px}
.otp-scan-item__read small{display:block;margin-top:4px;color:#52617a;font-size:11px;font-weight:500;line-height:1.35}
.otp-result__formula{margin:-6px 0 15px;padding:0 2px;color:#52617a;font-size:12px;line-height:1.45;font-variant-numeric:tabular-nums}
@media(max-width:720px){.otp-finder__natural{padding:16px}.otp-finder__natural summary span,.otp-finder__scan summary span{display:block;width:max-content;margin:8px 0 0}}
