/* ShulSpark — Household typeahead v1.0 (drop-in). Navy / teal / gold, matches styles.css tokens. */
.ta{position:relative;width:100%;min-width:0}
.ta .ta-native{position:absolute!important;inset:0 auto auto 0;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden;border:0!important;padding:0!important;margin:0!important}
.ta .ta-input{padding-right:58px;text-overflow:ellipsis;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='15' viewBox='0 0 24 24' fill='none' stroke='%237A8699' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E") no-repeat 11px 50%;padding-left:33px}
.ta.ta-open .ta-input,.ta .ta-input:focus{border-color:var(--teal,#0F8B8D);box-shadow:0 0 0 3px rgba(15,139,141,.16);outline:none}
.ta-caret{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:30px;height:30px;border:0;background:transparent;border-radius:8px;color:var(--ink-3,#7A8699);display:grid;place-items:center;cursor:pointer}
.ta-caret:hover{background:var(--teal-soft,#E3F3F2);color:var(--teal-2,#0B6F71)}
.ta.ta-open .ta-caret svg{transform:rotate(180deg)}
.ta-spin{position:absolute;right:38px;top:50%;width:14px;height:14px;margin-top:-7px;border-radius:50%;border:2px solid rgba(15,139,141,.2);border-top-color:var(--teal,#0F8B8D);opacity:0;transition:opacity .12s;pointer-events:none}
.ta-mode-navigate .ta-spin{right:10px}
.ta.ta-busy .ta-spin{opacity:1;animation:ta-rot .7s linear infinite}
@keyframes ta-rot{to{transform:rotate(360deg)}}
.ta-pop{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:120;background:#fff;border:1px solid var(--line,#E6E9EF);border-radius:14px;box-shadow:0 2px 6px rgba(14,34,64,.06),0 18px 40px rgba(14,34,64,.16);max-height:min(430px,62vh);overflow-y:auto;overscroll-behavior:contain;padding:4px 0 6px;min-width:300px;text-align:left}
.ta-pop[hidden]{display:none}
.ta-mode-navigate .ta-pop{min-width:380px;left:0;right:auto}
.ta-status{display:flex;align-items:center;gap:6px;justify-content:space-between;padding:7px 12px 6px;font-size:12px;color:var(--ink-3,#7A8699);border-bottom:1px solid var(--line,#E6E9EF);position:sticky;top:-4px;background:#fff;z-index:2}
.ta-status b{color:var(--navy,#0E2240)}
.ta-status.on{justify-content:flex-start;color:var(--teal-2,#0B6F71)}
.ta-ms{font-size:11px;color:var(--teal-2,#0B6F71);background:var(--teal-soft,#E3F3F2);border-radius:999px;padding:1px 8px;white-space:nowrap}
.ta-ms:empty{display:none}
.ta-dot{width:8px;height:8px;border-radius:50%;background:var(--teal,#0F8B8D);display:inline-block;animation:ta-pulse .8s ease-in-out infinite alternate;margin-right:4px;flex:none}
@keyframes ta-pulse{from{opacity:.25;transform:scale(.8)}to{opacity:1;transform:scale(1.1)}}
.ta-sec{padding:9px 12px 3px;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold,#C9A227)}
.ta-opt{display:flex;align-items:center;gap:10px;padding:8px 12px;min-height:46px;cursor:pointer;border-left:3px solid transparent}
.ta-opt.ta-active{background:var(--teal-soft,#E3F3F2);border-left-color:var(--teal,#0F8B8D)}
.ta-opt:hover{background:#F2F8F8}
.ta-opt.ta-on .ta-name::after{content:" \2713";color:var(--teal,#0F8B8D);font-weight:700}
.ta-av{width:32px;height:32px;border-radius:50%;background:var(--navy,#0E2240);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:700;flex:none;letter-spacing:.02em}
.ta-av-rec{background:var(--gold-soft,#FBF4DF);color:#8a6d10;border:1px solid #EBD27A}
.ta-main{display:flex;flex-direction:column;min-width:0;flex:1}
.ta-name{font-weight:600;color:var(--navy,#0E2240);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}
.ta-meta{font-size:12px;color:var(--ink-3,#7A8699);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.35}
.ta-meta i{font-style:normal;opacity:.6;margin:0 2px}
.ta-id{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:var(--ink-2,#4A5568)}
.ta-why{display:inline-block;font-size:11px;font-weight:600;color:#8a6d10;background:var(--gold-soft,#FBF4DF);border:1px solid #F0DFA6;border-radius:999px;padding:0 7px;margin-right:4px;line-height:17px}
.ta mark,.ta-pop mark{background:rgba(201,162,39,.28);color:inherit;border-radius:3px;padding:0 1px;box-shadow:inset 0 -2px 0 rgba(201,162,39,.7)}
.ta-bal{font-size:11.5px;font-weight:600;white-space:nowrap;border-radius:999px;padding:2px 8px;flex:none}
.ta-bal.due{color:var(--red,#C2412D);background:var(--red-soft,#FCEDEA)}
.ta-bal.ok{color:var(--green,#2E8B57);background:var(--green-soft,#E7F5EC)}
.ta-chk{font-size:12px;font-weight:700;color:var(--teal-2,#0B6F71);border:1px solid rgba(15,139,141,.35);border-radius:999px;padding:2px 9px;flex:none}
.ta-chk.on{background:var(--teal,#0F8B8D);color:#fff;border-color:var(--teal,#0F8B8D)}
.ta-more{justify-content:center;min-height:40px;font-size:13px;font-weight:600;color:var(--teal-2,#0B6F71)}
.ta-more span{font-weight:400;color:var(--ink-3,#7A8699)}
.ta-add{border-top:1px solid var(--line,#E6E9EF);margin-top:4px;color:var(--navy,#0E2240);font-weight:600;min-height:44px}
.ta-add span{font-weight:400;color:var(--ink-2,#4A5568)}
.ta-plus{width:32px;height:32px;border-radius:50%;border:1.5px dashed var(--gold,#C9A227);color:#8a6d10;display:grid;place-items:center;font-size:18px;font-weight:600;flex:none}
.ta-empty{padding:12px;color:var(--ink-2,#4A5568);font-size:13px}
.ta-form{padding:10px 12px 8px;display:flex;flex-direction:column;gap:8px}
.ta-form-h{font-weight:700;color:var(--navy,#0E2240)}
.ta-form label{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--ink-2,#4A5568);font-weight:600}
.ta-form .input{font-weight:400;font-size:14px}
.ta-form .ta-bad{border-color:var(--red,#C2412D)}
.ta-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ta-form-row{display:flex;justify-content:flex-end;gap:8px}
.ta-note{font-size:11px;color:var(--ink-3,#7A8699)}
.search-res.ta-retired{display:none!important}
/* phone */
@media (max-width:600px){
  .ta .ta-input,.ta-form .input{font-size:16px}  /* no iOS zoom on focus */
  .ta-pop{min-width:0;max-height:min(380px,58vh)}
  .ta-mode-navigate .ta-pop{position:fixed;left:8px;right:8px;top:64px;min-width:0}
  .ta-opt{min-height:52px;padding:9px 10px}
  .ta-bal{display:none}
  .ta-grid{grid-template-columns:1fr}
}
@media print{ .ta-pop,.ta-caret,.ta-spin{display:none!important} }
