@import url("./search-requirements.css");
/* Spotlight uses one bounded glass surface. Results and previews never blur. */
.master-search-backdrop{
  --search-accent:var(--brand-gold,#cfb573);
  --search-border:var(--glass-border,#ffffff1a);
  --search-seam:var(--glass-seam,#ffffff0e);
  --search-selected:color-mix(in srgb,var(--search-accent) 9%,transparent);
  position:fixed;inset:0;z-index:1800;display:flex;align-items:flex-start;justify-content:center;
  padding:clamp(20px,9vh,90px) 24px 24px;background:#0009;
  animation:gc-fade-in var(--motion-standard,160ms) var(--motion-ease,ease);
}
.master-search-dialog{
  width:min(920px,100%);max-height:100%;min-width:0;display:flex;flex-direction:column;padding:18px;
  border:1px solid var(--search-border);border-radius:var(--radius-panel,12px);
  background:var(--glass-light,linear-gradient(145deg,#ffffff09,#ffffff02)),var(--surface-1,#141415);
  box-shadow:inset 0 1px 0 #ffffff12,inset 0 -1px 0 #ffffff04,0 24px 72px #0007;
  color:var(--ink,#eeeef0);
}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .master-search-dialog{
    background:var(--glass-light,linear-gradient(145deg,#ffffff09,#ffffff02)),rgba(20,20,21,.91);
    backdrop-filter:blur(14px) saturate(108%);-webkit-backdrop-filter:blur(14px) saturate(108%);
  }
}
.master-search-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-shrink:0}
.master-search-dialog h2{margin:0;font-size:16px;line-height:1.5;font-weight:600;letter-spacing:-.2px}
.master-search-dialog>header>.icon-button{
  width:32px;height:32px;min-height:32px;padding:7px;flex-shrink:0;
  border:1px solid var(--search-seam);background:var(--glass-control,#ffffff06);color:var(--muted,#a6a6ad);
}
.master-search-dialog>header>.icon-button:hover{background:#ffffff08;border-color:var(--search-border);color:var(--ink,#eeeef0)}
.master-search-dialog>header>.icon-button>.icon{display:block;width:16px;height:16px}
.master-search-input{
  position:relative;display:flex;align-items:center;gap:10px;padding:7px 8px 7px 12px;min-height:46px;flex-shrink:0;
  border:1px solid var(--search-border);border-radius:var(--radius-control,7px);
  background:rgba(8,8,9,.65);box-shadow:inset 0 1px 2px #0002;
  transition:border-color var(--motion-standard,160ms) var(--motion-ease,ease),box-shadow var(--motion-standard,160ms) var(--motion-ease,ease);
}
.master-search-input>.icon{display:block;width:18px;height:18px;flex:0 0 18px;color:var(--search-accent)}
.master-search-input>input{display:block;width:100%;min-width:0;padding:0;border:0;outline:0;background:transparent;color:var(--ink,#eeeef0);font:inherit;font-size:15px;line-height:1.6;box-shadow:none}
.master-search-input>input::placeholder{color:var(--muted,#a6a6ad);opacity:1}
.master-search-input:focus-within{border-color:var(--search-accent);box-shadow:inset 0 1px 0 #ffffff06,0 0 0 2px color-mix(in srgb,var(--search-accent) 12%,transparent)}
/* One three-way control sits inside the search field; only its pill moves. */
.master-search-modes{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(3,30px);flex:0 0 auto;gap:0;padding:3px;border:1px solid var(--search-seam);border-radius:6px;background:var(--glass-control,#ffffff06)}
.master-search-modes::before{content:"";position:absolute;inset:3px auto 3px 3px;width:30px;z-index:-1;border:1px solid color-mix(in srgb,var(--search-accent) 36%,transparent);border-radius:4px;background:color-mix(in srgb,var(--search-accent) 13%,transparent);box-shadow:inset 0 1px 0 #ffffff0c,0 0 9px color-mix(in srgb,var(--search-accent) 10%,transparent);transform:translateX(calc(var(--search-mode-index,0) * 30px));transition:transform var(--motion-standard,160ms) var(--motion-ease,ease)}
.master-search-modes>button{display:flex;align-items:center;justify-content:center;min-width:0;min-height:28px;padding:0;border:0;border-radius:4px;background:transparent;color:var(--muted,#a6a6ad);font:inherit;font-size:12px;line-height:1;cursor:pointer}
.master-search-modes>button[aria-checked="true"]{color:var(--search-accent)}
.master-search-modes>button:hover{color:var(--ink,#eeeef0)}
.master-search-modes[data-mode-count="4"]{grid-template-columns:repeat(4,30px)}
.master-estate-criteria{flex:0 1 auto;max-height:220px;overflow:auto;padding:10px 1px 2px;scrollbar-width:thin}
.master-estate-criteria[hidden]{display:none}
.master-estate-chips{display:flex;flex-wrap:wrap;gap:6px}
.master-estate-chip{display:inline-flex;align-items:center;min-width:0;max-width:100%;border:1px solid var(--search-border);border-radius:var(--radius-control,7px);background:var(--glass-control,#ffffff06);color:var(--search-accent)}
.master-estate-chip>button{min-width:0;max-width:100%;min-height:30px;padding:5px 8px;border:0;background:transparent;color:inherit;font:inherit;font-size:10px;line-height:1.4;cursor:pointer;overflow-wrap:anywhere;text-align:left}
.master-estate-chip>button.master-estate-chip-remove{display:flex;align-items:center;justify-content:center;flex:0 0 28px;padding:5px}
.master-estate-chip-remove>.icon{width:12px;height:12px}
.master-estate-note{margin:7px 0;color:var(--muted,#a6a6ad);font-size:10px;line-height:1.6}
.master-estate-options{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;margin:8px 0 2px;font-size:10px;color:var(--muted,#a6a6ad)}
.master-estate-options>label,.master-estate-editor-choice{display:flex;align-items:center;gap:6px;min-height:30px}
.master-estate-options input,.master-estate-editor input[type="checkbox"]{width:16px;height:16px;flex:0 0 16px;accent-color:var(--search-accent)}
.master-estate-options>.text-button{margin-left:auto;min-height:30px;font-size:10px}
.master-estate-ambiguities{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0;font-size:10px;color:var(--search-accent)}
.master-estate-ambiguities>label{display:grid;gap:4px;min-width:0}
.master-estate-editor{margin:8px 0;padding:10px;border:1px solid var(--search-border);border-radius:var(--radius-control,7px);background:var(--glass-control,#ffffff06);font-size:11px}
.master-estate-editor-values{display:flex;flex-wrap:wrap;gap:6px 16px;max-height:140px;overflow:auto}
.master-estate-editor-values>label:has(input:not([type="checkbox"])){display:grid;gap:5px;width:100%}
.master-estate-editor-actions{display:flex;align-items:center;gap:12px;margin-top:8px}
.master-estate-editor :is(input:not([type="checkbox"]),select),.master-estate-ambiguities select{max-width:100%;min-width:0;min-height:31px;padding:5px 7px;border:1px solid var(--search-border);border-radius:6px;background:var(--surface-1,#141415);color:var(--ink,#eeeef0);font:inherit}
.master-estate-criteria :is(button,input,select):focus-visible{outline:2px solid var(--search-accent);outline-offset:2px}
@media(max-width:680px){.master-estate-criteria{max-height:190px}.master-estate-chip>button,.master-estate-options>label,.master-estate-editor-choice{min-height:38px}.master-estate-chip>button.master-estate-chip-remove{flex-basis:32px}.master-search-modes[data-mode-count="4"]{grid-template-columns:repeat(4,28px)}.master-search-modes[data-mode-count="4"]::before{width:28px;transform:translateX(calc(var(--search-mode-index,0)*28px))}.master-estate-options>.text-button{margin-left:0}}
@media(forced-colors:active){.master-estate-chip,.master-estate-editor{background:Canvas;color:CanvasText;border-color:CanvasText}.master-estate-note,.master-estate-options,.master-estate-ambiguities{color:CanvasText}.master-estate-criteria input{accent-color:Highlight}}
.master-search-progress{position:absolute;inset:auto 10px 0;height:1px;overflow:hidden;opacity:0;pointer-events:none}
.master-search-progress::before{content:"";display:block;width:28%;height:100%;background:linear-gradient(90deg,transparent,var(--search-accent),transparent);transform:translateX(-110%)}
.master-search-input.is-loading>.master-search-progress{opacity:.65}
.master-search-input.is-loading>.master-search-progress::before{animation:master-search-loading 1300ms linear infinite}
@keyframes master-search-loading{to{transform:translateX(460%)}}
.master-search-results.is-stale{opacity:.45;pointer-events:none}
.master-search-more{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:36px;margin:5px 0 2px;padding:7px 10px;border:1px solid var(--search-seam);border-radius:var(--radius-control,7px);background:var(--glass-control,#ffffff06);color:var(--search-accent);font:inherit;font-size:11px;cursor:pointer}
.master-search-more:hover{border-color:var(--search-border);background:var(--search-selected)}
.master-search-more:disabled{opacity:.6;cursor:default}
.master-search-more>.icon{display:block;width:14px;height:14px;transform:rotate(90deg)}
.master-search-preview-facts{display:flex;flex-direction:column;gap:7px}
.master-search-preview-facts>.card-meta{align-items:center;color:var(--muted,#a6a6ad);line-height:1.5}
.master-search-preview-facts>.card-meta>.icon{display:block;flex:0 0 14px;width:14px;height:14px;color:var(--muted,#a6a6ad)}
.master-search-preview-facts>.card-meta>span{min-width:0;overflow-wrap:anywhere}
.master-search-preview-note{margin-top:10px!important;color:var(--muted,#a6a6ad);font-size:11px!important}
.master-search-preview-photo,.master-search-preview-media{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border:1px solid var(--search-seam);border-radius:var(--radius-control,7px);margin:0 0 10px;background:var(--glass-control,#ffffff06)}
.master-search-status{min-height:18px;margin:9px 0 10px;flex-shrink:0;font-size:11px;line-height:1.5;color:var(--muted,#a6a6ad)}
.master-search-body{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:12px;min-width:0;min-height:0;overflow:hidden}
.master-search-results{min-width:0;min-height:0;max-height:min(440px,55dvh);overflow:auto;padding:2px;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#ffffff26 transparent;scroll-padding:6px}
.master-search-result{
  display:flex;align-items:center;gap:9px;width:100%;min-height:59px;margin:0 0 4px;padding:9px;
  border:1px solid transparent;border-radius:var(--radius-control,7px);background:transparent;color:var(--ink,#eeeef0);text-align:left;cursor:pointer;
  transition:background var(--motion-standard,160ms) var(--motion-ease,ease),border-color var(--motion-standard,160ms) var(--motion-ease,ease);
}
.master-search-result:hover{border-color:var(--search-border);background:var(--glass-control,#ffffff06)}
.master-search-result.is-selected{
  border-color:color-mix(in srgb,var(--search-accent) 34%,transparent);
  background:linear-gradient(100deg,color-mix(in srgb,var(--search-accent) 4%,transparent),transparent 90%),var(--search-selected);
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--search-accent) 8%,transparent),0 0 12px color-mix(in srgb,var(--search-accent) 4%,transparent);
}
.master-search-result-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex:0 0 24px;color:var(--muted,#a6a6ad)}
.master-search-result-icon>.icon{display:block;width:17px;height:17px}
.master-search-result.is-selected .master-search-result-icon{color:var(--search-accent)}
.master-search-result-copy{display:flex;flex-direction:column;justify-content:center;gap:3px;min-width:0;flex:1}
.master-search-result-copy>strong,.master-search-result-copy>small{display:block;min-width:0;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.master-search-result-copy>strong{font-size:12px;font-weight:550;line-height:1.5}
.master-search-result-copy>small{font-size:10px;line-height:1.5;color:var(--muted,#a6a6ad)}
.master-search-type{font-size:9px;line-height:1.5;color:var(--muted,#a6a6ad);max-width:105px;flex-shrink:0}
.master-search-result>.master-search-type{padding:3px 6px;border:1px solid var(--search-seam);border-radius:5px;background:var(--glass-control,#ffffff06);text-align:center;overflow-wrap:anywhere}
.master-search-preview{
  display:flex;flex-direction:column;gap:14px;min-width:0;min-height:0;max-height:min(440px,55dvh);overflow:auto;padding:14px;
  border:1px solid var(--search-border);border-radius:var(--radius-control,7px);
  background:var(--glass-light,linear-gradient(145deg,#ffffff09,#ffffff02)),var(--glass-control,#ffffff06);
  box-shadow:inset 0 1px 0 var(--search-seam);overscroll-behavior:contain;scrollbar-width:thin;
}
.master-search-preview-content{min-width:0;font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.master-search-preview-content>h3{display:flex;align-items:center;gap:8px;margin:5px 0 10px;font-size:16px;line-height:1.5}
.master-search-preview-content>h3>.icon{display:block;width:18px;height:18px;flex:0 0 18px}
.master-search-preview-content>p,.master-search-preview-empty{margin:0;font-size:12px;line-height:1.6;color:var(--muted,#a6a6ad)}
.master-search-preview-content .record-gallery{grid-template-columns:minmax(0,1fr);margin:8px 0 0}
.master-search-preview .master-search-open{align-self:flex-start;margin-top:auto;min-height:34px;padding:7px 10px;font-size:11px}
.master-search-preview .master-search-open>.icon{display:block;width:15px;height:15px}
.master-search-dialog>footer{display:flex;align-items:flex-start;gap:8px 14px;flex-wrap:wrap;flex-shrink:0;margin-top:14px;padding-top:12px;border-top:1px solid var(--search-seam)}
.master-search-dialog>footer>span{padding-top:5px;font-size:10px;line-height:1.5;color:var(--muted,#a6a6ad)}
.master-search-actions{display:flex;flex-wrap:wrap;gap:5px 12px;min-width:0}
.master-search-actions>.text-button{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:4px 0;font-size:11px;color:var(--search-accent)}
.master-search-actions>.text-button:hover{color:var(--ink,#eeeef0);text-decoration:none}
.master-search-actions>.text-button>.icon{display:block;width:14px;height:14px}
.master-search-dialog :is(button,input,a):focus-visible{outline:2px solid var(--search-accent);outline-offset:2px}
.master-search-dialog .master-search-input>input:focus-visible{outline:0;box-shadow:none}
@media(max-width:680px){
  .master-search-backdrop{padding:12px;align-items:center}
  .master-search-dialog{padding:14px}
  .master-search-body{grid-template-columns:minmax(0,1fr);gap:10px;overflow:auto;overscroll-behavior:contain}
  .master-search-results{max-height:30dvh}
  .master-search-preview{max-height:30dvh;padding:12px}
  .master-search-dialog h2{font-size:14px}
  .master-search-input>input{font-size:16px}
  .master-search-type{font-size:9px;max-width:84px}
  .master-search-dialog>footer{margin-top:12px;padding-top:10px}
  .master-search-modes>button{min-height:32px}
  .master-search-preview .master-search-open{min-height:38px}
}
@media(max-height:520px) and (min-width:681px){
  .master-search-backdrop{padding:12px 20px}
  .master-search-dialog{padding:12px}
  .master-search-dialog>header{margin-bottom:8px}
  .master-search-status{margin:5px 0}
  .master-search-dialog>footer{margin-top:8px;padding-top:8px}
}
@media(prefers-reduced-motion:reduce){
  .master-search-backdrop{animation:none}
  .master-search-dialog *,.master-search-dialog *::before{transition:none;scroll-behavior:auto}
  .master-search-input.is-loading>.master-search-progress::before{animation:none;width:100%;transform:none;background:var(--search-accent);opacity:.35}
}
@media(prefers-reduced-transparency:reduce){
  .master-search-backdrop{background:#000b}
  .master-search-dialog{background:var(--surface-1,#141415);backdrop-filter:none;-webkit-backdrop-filter:none}
  .master-search-input{background:var(--surface-2,#1b1b1d)}
}
@media(forced-colors:active){
  .master-search-backdrop{background:Canvas;animation:none}
  .master-search-dialog,.master-search-input,.master-search-preview,.master-search-result,.master-search-modes{background:Canvas;color:CanvasText;border-color:CanvasText;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
  .master-search-dialog :is(h2,h3,p,strong,small,.master-search-type,.icon,.master-search-preview-empty){color:CanvasText}
  .master-search-result>.master-search-type{background:Canvas;border-color:CanvasText}
  .master-search-result.is-selected{background:Highlight;color:HighlightText;border-color:Highlight;box-shadow:none}
  .master-search-result.is-selected :is(strong,small,.master-search-type,.icon){color:HighlightText}
  .master-search-result.is-selected>.master-search-type{background:Highlight;border-color:HighlightText}
  .master-search-modes::before{border-color:Highlight;background:Highlight;box-shadow:none}
  .master-search-modes>button[aria-checked="true"]{color:HighlightText}
  .master-search-modes>button{color:CanvasText}
  .master-search-progress::before{background:Highlight}
  .master-search-input:focus-within{border-color:Highlight;outline:2px solid Highlight;outline-offset:2px;box-shadow:none}
  .master-search-dialog :is(button,input,a):focus-visible{outline-color:Highlight}
}
