/* Scoped magazine search uses the site's dark and light palettes. */
.o59-search-sr { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.o59-search-form { width:100%; }
.o59-search-query { display:flex; gap:10px; }
.o59-search-query input { min-width:0; flex:1; width:100%; height:52px; padding:12px 16px; border:1px solid var(--color-border,#293d49); border-radius:9px; color:var(--color-text-main,#eef3f6); background:var(--color-bg-alt,#031016); font:inherit; font-size:16px; }
.o59-search-submit { flex-shrink:0; min-height:48px; padding:12px 22px; border:0; border-radius:9px; background:linear-gradient(120deg,#ff947b,#ffd09c); color:#10212c; font:inherit; font-weight:800; cursor:pointer; }
.o59-search-submit span { margin-left:10px; }
.o59-search-query input:focus-visible,.o59-search-form select:focus-visible { outline:2px solid var(--o59-mode-coral,#ff947b); outline-offset:2px; }
.o59-search-filters { display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:12px; margin-top:15px; }
.o59-search-filters label { display:block; min-width:0; color:var(--color-text-muted,#b0bdc7); font-size:11px; font-weight:700; letter-spacing:.4px; }
.o59-search-filters select { display:block; width:100%; min-height:44px; margin-top:5px; padding:8px 28px 8px 10px; border:1px solid var(--color-border,#293d49); border-radius:7px; background:var(--color-bg-alt,#031016); color:var(--color-text-main,#eef3f6); font:inherit; font-size:13px; letter-spacing:0; }
.o59-search-eyebrow { display:block; margin-bottom:8px; color:var(--color-accent-gold,#dfac64); font-size:10px; font-weight:800; letter-spacing:2px; }
.o59-smart-search-modal[hidden] { display:none !important; }
.o59-smart-search-modal { padding:20px; z-index:100001; transition:none; }
.o59-smart-search-modal .search-modal-content { max-width:760px; max-height:calc(100vh - 40px); max-height:calc(100dvh - 40px); padding:30px; overflow-y:auto; overscroll-behavior:contain; background:var(--color-bg-card,#0c1b25); border-color:var(--color-border,#293d49); transform:none; }
.o59-smart-search-modal h2 { margin:0 40px 5px 0; color:var(--color-text-main,#eef3f6); font-family:'Playfair Display',Georgia,serif; font-size:30px; line-height:1.2; }
.o59-search-intro { margin-bottom:22px; color:var(--color-text-muted,#b0bdc7); font-size:13px; }
.o59-smart-search-modal .search-modal-close { top:18px; right:18px; display:flex; align-items:center; justify-content:center; width:44px; height:44px; border:1px solid var(--color-border,#293d49); border-radius:50%; color:var(--color-text-main,#eef3f6); background:var(--color-bg-alt,#031016); font-size:28px; }
.o59-search-topics { display:flex; align-items:center; flex-wrap:wrap; gap:7px; margin-top:16px; color:var(--color-text-muted,#b0bdc7); font-size:11px; }
.o59-search-topics a { padding:4px 9px; border:1px solid var(--color-border,#293d49); border-radius:30px; color:var(--color-text-main,#eef3f6); }
.o59-search-topics a:hover { border-color:var(--color-accent-gold,#dfac64); color:var(--color-accent-gold,#dfac64); }
.o59-search-status { min-height:20px; margin:18px 0 8px; color:var(--color-text-muted,#b0bdc7); font-size:12px; }
.o59-search-live-results { display:grid; gap:0; }
.o59-search-live-results[aria-busy="true"] { opacity:.65; }
.o59-search-live-item { display:grid; grid-template-columns:94px minmax(0,1fr); align-items:center; gap:14px; padding:12px 0; border-top:1px solid var(--color-border,#293d49); }
.o59-search-live-item:hover h3 { color:var(--color-accent-gold,#dfac64); }
.o59-search-image { position:relative; display:flex; align-items:center; justify-content:center; width:100%; aspect-ratio:16/10; overflow:hidden; border:1px solid var(--color-border,#293d49); border-radius:7px; background:linear-gradient(135deg,#122b3c,#061019); color:#f4c68c; font-family:Georgia,serif; font-size:17px; }
.o59-search-image img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; background:linear-gradient(135deg,#122b3c,#061019); }
.o59-search-live-item h3 { overflow-wrap:anywhere; color:var(--color-text-main,#eef3f6); font-family:'Playfair Display',Georgia,serif; font-size:16px; line-height:1.35; }
.o59-search-meta { display:flex; gap:8px; align-items:center; flex-wrap:wrap; margin-bottom:4px; color:var(--color-accent-gold,#dfac64); font-size:10px; font-weight:700; }
.o59-search-meta .o59-search-type { padding:2px 6px; border:1px solid var(--color-border,#293d49); border-radius:4px; color:var(--color-text-muted,#b0bdc7); }
.o59-search-all { display:inline-flex; align-items:center; justify-content:space-between; gap:20px; min-height:44px; margin-top:12px; color:var(--o59-mode-coral,#ff947b); font-size:13px; font-weight:800; }
.o59-smart-search-modal :focus-visible,.o59-search-page :focus-visible { outline:2px solid var(--o59-mode-coral,#ff947b); outline-offset:3px; }
body.o59-search-open { overflow:hidden; }
.luxury-search-trigger { min-width:44px; min-height:44px; }
.o59-search-page { padding:40px 0 60px; }
.o59-search-page-header { margin-bottom:28px; padding:26px; border:1px solid var(--color-border,#293d49); border-radius:12px; background:var(--color-bg-card,#0c1b25); }
.o59-search-page h1 { margin-bottom:7px; color:var(--color-text-main,#eef3f6); font-family:'Playfair Display',Georgia,serif; font-size:clamp(26px,3vw,38px); line-height:1.25; overflow-wrap:anywhere; }
.o59-search-page-count { margin-bottom:22px; color:var(--color-text-muted,#b0bdc7); font-size:13px; }
.o59-search-page-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.o59-search-card { min-width:0; padding:16px; border:1px solid var(--color-border,#293d49); border-radius:10px; background:var(--color-bg-card,#0c1b25); }
.o59-search-card .o59-search-image { aspect-ratio:16/9; margin-bottom:14px; font-size:26px; }
.o59-search-card h2 { margin:8px 0; color:var(--color-text-main,#eef3f6); font-family:'Playfair Display',Georgia,serif; font-size:20px; line-height:1.35; overflow-wrap:anywhere; }
.o59-search-card p { color:var(--color-text-muted,#b0bdc7); font-size:12px; line-height:1.7; }
.o59-search-empty { padding:32px 20px; border:1px solid var(--color-border,#293d49); border-radius:10px; text-align:center; }
.o59-search-empty h2 { margin-bottom:8px; color:var(--color-text-main,#eef3f6); font-family:Georgia,serif; font-size:24px; }
.o59-search-empty p { color:var(--color-text-muted,#b0bdc7); }
.o59-search-reset { display:inline-block; min-height:44px; margin-top:14px; color:var(--o59-mode-coral,#ff947b); font-weight:700; }
.o59-search-pagination { display:flex; justify-content:center; flex-wrap:wrap; gap:7px; margin-top:30px; }
.o59-search-pagination .page-numbers { display:flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; padding:8px 12px; border:1px solid var(--color-border,#293d49); border-radius:6px; background:var(--color-bg-card,#0c1b25); color:var(--color-text-main,#eef3f6); font-size:13px; }
.o59-search-pagination .current { border-color:var(--o59-mode-coral,#ff947b); color:var(--o59-mode-coral,#ff947b); }
@media(max-width:900px) { .o59-search-page-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .o59-smart-search-modal { padding:10px; } .o59-smart-search-modal .search-modal-content { max-height:calc(100dvh - 20px); padding:20px 16px; } .o59-smart-search-modal h2 { font-size:25px; } .o59-search-intro { font-size:12px; margin-bottom:18px; } .o59-search-query { gap:7px; } .o59-search-query input { padding:12px; } .o59-search-submit { padding:12px 14px; font-size:13px; } .o59-search-submit span { display:none; } .o59-search-filters { grid-template-columns:1fr 1fr; gap:10px; } .o59-search-filters label:first-child { grid-column:1/-1; } .o59-search-live-item { grid-template-columns:76px minmax(0,1fr); gap:10px; } .o59-search-live-item h3 { font-size:14px; } .o59-search-page { padding-top:24px; } .o59-search-page-header { padding:20px 16px; } .o59-search-page-grid { grid-template-columns:1fr; gap:16px; } }
@media(prefers-reduced-motion:reduce) { .o59-smart-search-modal,.o59-smart-search-modal * { transition:none !important; animation:none !important; } }
