/* Threads archive: restrained Swiss editorial tools, not ornamental widgets. */
.threads-page{max-width:1280px}
.threads-explorer:has(.threads-archive-controls:not([hidden])){
  display:grid;grid-template-columns:minmax(220px,255px) minmax(0,1fr);
  gap:clamp(30px,4vw,64px);align-items:start;margin-top:28px;
}
.threads-explorer:has(.threads-archive-controls:not([hidden])) #threads-root{min-width:0}
.threads-explorer .threads-index{margin-top:0}
.threads-archive-controls{display:grid;gap:26px;min-width:0;font-family:Inter,Arial,sans-serif}
.threads-archive-group{display:grid;gap:11px}
.threads-archive-group h2{margin:0;font:600 12px/1.4 Inter,Arial,sans-serif;color:#323232;letter-spacing:-.015em}
.threads-control-label{display:block;font:500 11px/1.4 Inter,Arial,sans-serif;color:#666}
.threads-archive-controls :is(input,select){
  display:block;box-sizing:border-box;width:100%;min-width:0;
  padding:12px 12px;background:#f9f9f9;color:#292929;
  border:1px solid #e8e8e8;border-radius:8px;
  font:400 12px/1.5 Inter,Arial,sans-serif;
}
.threads-archive-controls :is(input,select):focus-visible,
.threads-archive-controls button:focus-visible{
  outline:2px solid #b42332;outline-offset:2px
}
.threads-desk-filter{display:flex;gap:5px;flex-wrap:wrap}
.threads-desk-filter button{
  font:500 11px/1.4 Inter,Arial,sans-serif;color:#555;
  border:1px solid #e7e7e7;background:#fff;cursor:pointer;
  border-radius:7px;padding:8px 10px;
}
.threads-desk-filter button.selected{color:#171717;background:#f6f6f6;border-color:#888}
.threads-archive-selects>div{display:grid;gap:7px}
.threads-calendar-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
#threads-date-clear{
  border:0;background:transparent;padding:3px 0;cursor:pointer;
  color:#777;text-decoration:underline;text-underline-offset:3px;
  font:500 10px/1.4 Inter,Arial,sans-serif
}
.threads-calendar-header{
  display:grid;grid-template-columns:32px minmax(0,1fr) 32px;gap:6px;
  align-items:center;text-align:center;margin:2px 0 13px
}
.threads-calendar-month{font:550 12px/1.4 Inter,Arial,sans-serif}
.threads-calendar-nav{
  display:grid;place-items:center;width:31px;height:31px;
  border:1px solid #eee;border-radius:7px;background:#fff;cursor:pointer;
  color:#414141;font:500 21px/1 Inter,Arial,sans-serif
}
.threads-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.threads-calendar-weekday{display:grid;place-items:center;height:25px;color:#888;font:500 10px/1.2 Inter,Arial,sans-serif}
.threads-calendar-day{
  position:relative;display:grid;place-items:center;min-width:0;height:31px;
  border:1px solid transparent;border-radius:7px;cursor:pointer;
  background:transparent;color:#656565;font:500 11px/1 Inter,Arial,sans-serif
}
.threads-calendar-day:disabled{color:#b0b0b0;cursor:default;opacity:.7}
.threads-calendar-day.has-entries{color:#202020;font-weight:650;background:#f3f3f3}
.threads-calendar-day.has-entries::after{content:'';width:3px;height:3px;position:absolute;transform:translateY(10px);border-radius:50%;background:#b42332}
.threads-calendar-day.selected{background:#191919;border-color:#191919;color:#fff}
.threads-calendar-day.selected::after{background:#fff}
.threads-calendar-hint{margin:0;color:#8b8b8b;font:400 10px/1.6 Inter,Arial,sans-serif}
.threads-results{margin:0 0 24px;color:#777;font:500 11px/1.4 Inter,Arial,sans-serif}
.threads-group+.threads-group{margin-top:40px}
.threads-card{padding:23px;min-height:206px}
.threads-list{gap:13px}
.threads-static-hint{font:400 12px/1.6 Inter,Arial,sans-serif;color:#888}
.threads-explorer:not(:has(.threads-archive-controls:not([hidden]))) .threads-detail{margin-top:20px}
@media(max-width:900px){
  .threads-explorer:has(.threads-archive-controls:not([hidden])){
    grid-template-columns:minmax(0,1fr);gap:32px
  }
  .threads-archive-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 25px}
  .threads-calendar-section{grid-column:1/-1;max-width:320px}
  .threads-archive-selects{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .threads-archive-controls{grid-template-columns:1fr;gap:18px}
  .threads-calendar-section{grid-column:auto;max-width:340px}
  .threads-archive-selects{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .threads-archive-controls :is(input,select){font-size:12px}
  .threads-card{padding:20px;min-height:0}
  .threads-calendar-day{height:34px}
}
@media(prefers-reduced-motion:reduce){.threads-calendar-nav,.threads-desk-filter button{transition:none}}
