/* EDCOT SEARCH STYLESHEET */
/* Version (yyyymmdd.patch) - 20260306.05 */
/* Companion to edcot.css — add after edcot.css in <head> */
/* Designed for a small window.open() window — no header or footer. */


/* ─────── SEARCH WINDOW BODY BEGINS ─────── */

/* Reset all body/background decoration — the card IS the window */
body.search-window {
margin: 0;
padding: 0;
min-height: unset;
background-image: none;
background-color: #ffffff;
display: block;
overflow-y: auto;
overflow-x: hidden;
}

/* ─────── SEARCH WINDOW BODY ENDS ─────── */


/* ─────── SEARCH CARD BEGINS ─────── */

/* The card fills the full window with a small consistent margin */
#search-container {
margin: 0.75rem;
padding: 1.25rem 1.5rem 1.5rem;
background: #ffffff;
border: 0.0625rem solid var(--color-border-card);
border-radius: var(--radius-lg);
box-shadow: var(--shadow-card);
box-sizing: border-box;
}

/* ─────── SEARCH CARD ENDS ─────── */


/* ─────── SEARCH TITLE ROW BEGINS ─────── */

/* Title row: heading on the left, small logo on the right */
#search-title-row {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 1rem;
gap: 0.75rem;
}

#search-heading {
font-size: 1.125rem;
font-weight: 700;
color: var(--primary);
line-height: 1.2;
}

#search-brand-logo {
height: 1.75rem;
width: auto;
object-fit: contain;
flex-shrink: 0;
opacity: 0.85;
transition: opacity 0.18s ease;
}

#search-home-link:hover #search-brand-logo {
opacity: 1;
}

/* ─────── SEARCH TITLE ROW ENDS ─────── */


/* ─────── SEARCH INPUT ROW BEGINS ─────── */

#search-input-row {
display: flex;
gap: 0.5rem;
align-items: stretch;
margin-bottom: 0.875rem;
}

#search-input {
flex: 1;
min-width: 0;
padding: 0.45rem 0.7rem;
font-size: 0.9375rem;
font-family: inherit;
border: 0.0625rem solid var(--color-border-card);
border-radius: var(--radius-sm);
color: var(--color-text-body);
background: #ffffff;
transition: border-color 0.18s ease, box-shadow 0.18s ease;
outline: none;
-webkit-appearance: none;
appearance: none;
}

#search-input:focus {
border-color: var(--primary);
box-shadow: 0 0 0 2px rgba(74, 108, 255, 0.18);
}

#search-input::-webkit-search-cancel-button {
-webkit-appearance: searchfield-cancel-button;
cursor: pointer;
}

#search-btn {
display: inline-flex;
align-items: center;
gap: 0.3rem;
padding: 0.45rem 0.875rem;
font-size: 0.9rem;
font-weight: 600;
font-family: inherit;
color: #ffffff;
background: var(--primary);
border: 0.0625rem solid var(--primary);
border-radius: var(--radius-sm);
cursor: pointer;
white-space: nowrap;
transition: var(--transition-all);
}

#search-btn:hover {
background: var(--dark);
border-color: var(--dark);
}

#search-btn:focus-visible {
outline: 2px solid var(--primary);
outline-offset: 2px;
}

/* ─────── SEARCH INPUT ROW ENDS ─────── */


/* ─────── SEARCH STATUS BEGINS ─────── */

#search-status {
font-size: 0.8125rem;
color: #666;
margin-bottom: 0.625rem;
min-height: 1.1rem;
}

/* ─────── SEARCH STATUS ENDS ─────── */


/* ─────── SEARCH RESULTS BEGINS ─────── */

#search-results {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-direction: column;
gap: 0.5rem;
}

#search-results li {
border: 0.0625rem solid var(--color-border-card);
border-radius: var(--radius-sm);
padding: 0.625rem 0.75rem;
background: #ffffff;
transition: var(--transition-all);
}

#search-results li:hover {
border-color: var(--primary);
box-shadow: var(--shadow-card-glow);
transform: translateY(-1px);
}

#search-results .result-title {
display: block;
font-size: 0.9375rem;
font-weight: 700;
color: var(--primary);
text-decoration: none;
margin-bottom: 0.2rem;
}

#search-results .result-title:hover {
color: var(--dark);
text-decoration: underline;
}

#search-results .result-desc {
display: block;
font-size: 0.8125rem;
color: #444;
line-height: 1.4;
}

#search-results .result-url {
display: block;
font-size: 0.7rem;
color: #999;
margin-top: 0.2rem;
font-style: italic;
}

#search-results mark {
background: var(--light);
color: var(--dark);
border-radius: 0.15rem;
padding: 0 0.1rem;
font-style: normal;
}

/* ─────── SEARCH RESULTS ENDS ─────── */


/* ─────── NO RESULTS MESSAGE BEGINS ─────── */

#search-no-results {
font-size: 0.9rem;
color: #444;
line-height: 1.5;
}

#search-no-results p {
margin: 0 0 0.4rem;
}

#search-no-results a {
color: var(--primary);
text-decoration: underline;
}

#search-no-results a:hover {
color: var(--dark);
}

/* ─────── NO RESULTS MESSAGE ENDS ─────── */

