@import"https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,300;0,6..72,400;0,6..72,500;1,6..72,400&family=DM+Mono:wght@300;400&display=swap";.cal-wrap{max-width:860px;margin:0 auto;padding:5rem 2rem 8rem}.cal-header{margin-bottom:4rem}.cal-logo{font-family:Newsreader,serif;font-size:.9rem;letter-spacing:.2em;text-transform:uppercase;color:#a09a8e;margin-bottom:2.5rem}.cal-logo a{color:#a09a8e;text-decoration:none}.cal-logo a:hover{color:#f5f0e8}.cal-title{font-family:Newsreader,serif;font-size:clamp(2.25rem,4vw,3rem);font-weight:400;line-height:1.15;margin-bottom:1rem;letter-spacing:-.01em;color:#f5f0e8}.cal-subtitle{font-family:Newsreader,serif;font-size:1.1rem;color:#a09a8e;line-height:1.7;max-width:540px;font-style:italic}.cal-controls{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap;margin-bottom:3rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(245,240,232,.08)}.cal-control-group{display:flex;align-items:center;gap:.5rem}.cal-label{font-family:DM Mono,monospace;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:#6a665f}.cal-pill{font-family:DM Mono,monospace;font-size:.75rem;letter-spacing:.04em;padding:.4rem .75rem;border:1px solid rgba(245,240,232,.1);border-radius:2px;background:transparent;color:#a09a8e;cursor:pointer;transition:all .15s ease}.cal-pill:hover{border-color:#f5f0e840;color:#f5f0e8}.cal-pill-active{border-color:#c0392b;color:#f5f0e8;background:#c0392b14}.cal-list{display:flex;flex-direction:column;gap:0}.cal-row{border-top:1px solid rgba(245,240,232,.06);padding:1.5rem 0;cursor:pointer;transition:background .15s ease}.cal-row:last-child{border-bottom:1px solid rgba(245,240,232,.06)}.cal-row:hover{background:#f5f0e805}.cal-row-main{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:start}.cal-name{font-family:Newsreader,serif;font-size:1.5rem;font-weight:500;color:#f5f0e8;margin-bottom:.2rem}.cal-org{font-family:DM Mono,monospace;font-size:.8rem;color:#8a857c;letter-spacing:.02em}.cal-meta{display:flex;align-items:center;gap:1.25rem;text-align:right;flex-shrink:0}.cal-type-badge{font-family:DM Mono,monospace;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#6a665f;border:1px solid rgba(245,240,232,.08);padding:.2rem .5rem;border-radius:2px}.cal-fee{font-family:DM Mono,monospace;font-size:.9rem;color:#a09a8e;min-width:3rem;text-align:right}.cal-fee-free{color:#61c554}.cal-deadline-col{min-width:7rem;text-align:right}.cal-deadline-date{font-family:DM Mono,monospace;font-size:.9rem;color:#f5f0e8}.cal-deadline-days{font-family:DM Mono,monospace;font-size:.75rem;margin-top:.15rem}.cal-days-closing{color:#c0392b}.cal-days-open{color:#f5f0e866}.cal-days-rolling{color:#a09a8e;font-style:italic}.cal-days-closed{color:#6a665f;text-decoration:line-through}.cal-row.is-past .cal-name,.cal-row.is-past .cal-tier,.cal-row.is-past .cal-deadline-date,.cal-row.is-past .cal-org{color:#f5f0e840}.cal-row.is-past .cal-type-badge{opacity:.25}.cal-tier{display:inline-block;width:4px;height:4px;border-radius:50%;background:#c0392b;margin-right:.5rem;vertical-align:middle}.cal-tier-2{background:#6a665f}.cal-expanded{padding:1rem 0 .5rem;max-width:580px;display:none}.cal-expanded.open{display:block}.cal-note{font-family:Newsreader,serif;font-size:1.05rem;color:#a09a8e;line-height:1.7;margin-bottom:.75rem;font-style:italic}.cal-prize{font-family:DM Mono,monospace;font-size:.85rem;color:#8a857c;margin-bottom:.75rem}.cal-link{font-family:DM Mono,monospace;font-size:.8rem;color:#c0392b;text-decoration:none;letter-spacing:.04em}.cal-link:hover{text-decoration:underline}.cal-updated{margin-top:4rem;font-family:DM Mono,monospace;font-size:.7rem;color:#5a564f;letter-spacing:.06em;text-transform:uppercase}.cal-legend{display:flex;gap:1.5rem;align-items:center;margin-top:.75rem}.cal-legend-item{display:flex;align-items:center;gap:.35rem;font-family:DM Mono,monospace;font-size:.65rem;color:#5a564f;letter-spacing:.04em;text-transform:uppercase}@media(max-width:640px){.cal-wrap{padding:3rem 1.25rem 5rem}.cal-row-main{grid-template-columns:1fr;gap:.75rem}.cal-meta{justify-content:flex-start;gap:1rem}.cal-controls{gap:.75rem}}
