.sps-wrap{
    --sps-ink:#002540; --sps-ink-soft:#0C3F5E; --sps-parchment:#EAF4F6;
    --sps-paper:#F7FBFC; --sps-brass:#109BB0; --sps-brass-light:#4DBACB;
    --sps-oxblood:#109BB0; --sps-slate:#4C7186; --sps-rule:#D3E6EA;
    font-family:'Inter',sans-serif; color:var(--sps-ink); max-width:1080px; margin:0 auto;
}
.sps-wrap *{box-sizing:border-box;}
.sps-form{
    background:var(--sps-parchment);
    border:1px solid var(--sps-rule);
    border-radius:10px;
    padding:1.6rem 1.6rem 1.3rem;
}
.sps-row{ display:flex; flex-wrap:wrap; align-items:flex-end; gap:1.1rem; }
.sps-field{ display:flex; flex-direction:column; gap:.4rem; flex:1 1 180px; }
.sps-field--text{ flex:2 1 240px; }
.sps-field--submit{ flex:0 0 auto; }
.sps-label{
    font-family:'IBM Plex Mono',monospace; font-size:.68rem; letter-spacing:.1em;
    text-transform:uppercase; color:var(--sps-brass);
}
.sps-input-icon{
    position:relative; display:flex; align-items:center;
}
.sps-input-icon svg{ position:absolute; left:.85rem; color:var(--sps-slate); pointer-events:none; }
.sps-input, .sps-select{
    width:100%;
    font-family:'Inter',sans-serif; font-size:.92rem; color:var(--sps-ink);
    background:var(--sps-paper);
    border:1px solid var(--sps-rule);
    border-radius:6px;
    padding:.68rem .85rem;
    transition:border-color .15s ease, box-shadow .15s ease;
    appearance:none;
}
.sps-input{ padding-left:40px!important; }
.sps-select{
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%235C6B7A' stroke-width='2'><polyline points='6 9 12 15 18 9'/></svg>");
    background-repeat:no-repeat;
    background-position:right .75rem center;
    padding-right:2.2rem;
}
.sps-input:focus, .sps-select:focus{
    outline:none; border-color:var(--sps-brass-light);
    box-shadow:0 0 0 3px rgba(156,122,52,.15);
}
.sps-btn{
    display:inline-flex; align-items:center; gap:.5rem;
    font-family:'IBM Plex Mono',monospace; font-size:.78rem; letter-spacing:.06em; text-transform:uppercase;
    background:var(--sps-ink); color:var(--sps-parchment);
    border:none; border-radius:6px;
    padding:.72rem 1.3rem;
    cursor:pointer;
    transition:background .15s ease;
}
.sps-btn:hover{ background:var(--sps-oxblood); }
.sps-btn:disabled{ opacity:.65; cursor:not-allowed; }
.sps-spinner{
    width:13px; height:13px; border-radius:50%;
    border:2px solid rgba(241,234,217,.35); border-top-color:var(--sps-parchment);
    display:none; animation:sps-spin .7s linear infinite;
}
.sps-btn.is-loading .sps-spinner{ display:inline-block; }
.sps-btn.is-loading .sps-btn-text{ opacity:.6; }
@keyframes sps-spin{ to{ transform:rotate(360deg); } }

.is-hidden{ display:none !important; }

.sps-meta{
    font-family:'IBM Plex Mono',monospace; font-size:.76rem; color:var(--sps-slate);
    margin:1.3rem .2rem .6rem;
}

.sps-results{ display:flex; flex-direction:column; }
.sps-card{
    display:grid; grid-template-columns:100px 1fr; gap:1.4rem;
    padding:1.5rem 0; border-bottom:1px solid var(--sps-rule);
}
.sps-card:first-child{ padding-top:0; }
.sps-card-date{
    font-family:'IBM Plex Mono',monospace; font-size:.72rem; color:var(--sps-slate); padding-top:.15rem;
}
.sps-card-date .sps-day{
    display:block; font-family:'Newsreader',serif; font-size:1.5rem; font-weight:600;
    color:var(--sps-ink); line-height:1;
}
.sps-tag{
    display:inline-block; font-family:'IBM Plex Mono',monospace; font-size:.64rem; letter-spacing:.07em;
    text-transform:uppercase; padding:.2rem .5rem; border-radius:3px;
    background:#DCF0F3; color:var(--sps-brass); margin-bottom:.5rem;
}
.sps-card h3{ font-family:'Newsreader',serif; font-size:1.12rem; font-weight:600; margin-bottom:.3rem; }
.sps-card h3 a{ color:var(--sps-ink); text-decoration:none; }
.sps-card h3 a:hover{ color:var(--sps-oxblood); }
.sps-card p{ font-size:.88rem; color:var(--sps-ink-soft); }
.sps-card .sps-read{
    display:inline-block; margin-top:.5rem; font-family:'IBM Plex Mono',monospace; font-size:.72rem;
    color:var(--sps-oxblood); text-decoration:none; border-bottom:1px solid var(--sps-oxblood);
}

.sps-empty{
    text-align:center; padding:2.6rem 1rem; color:var(--sps-slate); font-size:.92rem;
}

.sps-loadmore-wrap{ text-align:center; margin-top:1rem; }
.sps-loadmore{
    font-family:'IBM Plex Mono',monospace; font-size:.76rem; letter-spacing:.05em; text-transform:uppercase;
    background:transparent; border:1px solid var(--sps-rule); color:var(--sps-ink-soft);
    padding:.6rem 1.4rem; border-radius:100px; cursor:pointer; transition:all .15s ease;
}
.sps-loadmore:hover{ border-color:var(--sps-brass-light); color:var(--sps-ink); background:none!important; }
.sps-loadmore:disabled{ opacity:.6; cursor:not-allowed; }

@media (max-width:640px){
    .sps-field--submit{ width:100%; }
    .sps-btn{ width:100%; justify-content:center; }
    .sps-card{ grid-template-columns:60px 1fr; gap:.9rem; }
}
