.ranking-identity{display:inline-flex;align-items:center;gap:12px;vertical-align:middle}.ranking-avatar{display:inline-grid;place-items:center;position:relative;width:40px;height:40px;flex:0 0 40px;border-radius:14px;background:#f1dfc3;color:#684b31;font-weight:800;overflow:hidden}.ranking-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.site-statistics{padding:30px 0;margin:20px 0 38px;border-top:1px solid #ddc9aa;border-bottom:1px solid #ddc9aa}.site-statistics-heading{display:flex;justify-content:space-between;gap:18px;align-items:baseline}.site-statistics h2{font-size:1.4rem;margin:0}.site-statistics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:25px}.site-statistic strong{display:block;font-size:clamp(1.8rem,4vw,2.7rem);letter-spacing:-.05em;color:#73502e}.site-statistic span{font-size:.85rem;color:#826c53}.statistics-note{color:#947c60;font-size:.72rem;line-height:1.6}.calendar-main{max-width:1180px;margin:auto;padding:36px 24px}.calendar-heading h1{font-size:clamp(2rem,4vw,3.3rem);letter-spacing:-.05em}.calendar-heading p{max-width:65ch;color:#8d7359;line-height:1.7}.calendar-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:24px;align-items:start}.calendar-card,.calendar-agenda{padding:24px;background:#fffbf3;border:1px solid #e5d5be;border-radius:24px;box-shadow:0 10px 35px #6c492009}.calendar-controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:24px}.calendar-controls h2{margin:0 auto 0 0;font-size:1.3rem}.calendar-controls button{min-width:40px;min-height:40px}.calendar-controls select{max-width:100%}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-weekday{text-align:center;font-size:.7rem;color:#957a60;padding:10px 0}.calendar-day{min-width:0;min-height:85px;text-align:left;padding:10px 7px;border:1px solid #ecdfcc;background:#fffdf8;border-radius:12px;color:#654a31;cursor:pointer;font:inherit}.calendar-day strong{font-size:.9rem}.calendar-day span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.6rem;margin-top:7px;line-height:1.4}.calendar-day small{font-size:.6rem}.calendar-day.has-events{background:#f4e8d7}.calendar-day.is-today strong{background:#a64237;color:#fff;border-radius:50%;padding:4px}.calendar-day[aria-pressed=true]{outline:2px solid #a66635;outline-offset:1px}.calendar-agenda h2{font-size:1.1rem;line-height:1.6}.calendar-event{padding:20px 0;border-top:1px solid #e8d9c4}.calendar-event h3{font-size:1.1rem;line-height:1.5;margin:10px 0}.calendar-event p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;color:#80674e}.calendar-event a,.calendar-event small{font-size:.75rem}.event-category{font-size:.65rem;font-weight:750;color:#a44335;text-transform:uppercase;letter-spacing:.07em}.calendar-admin-list{display:grid;gap:8px;margin:20px 0;max-height:420px;overflow:auto}.calendar-admin-list button{text-align:left;padding:12px;border:1px solid #e4d3b9;border-radius:10px;background:#fffbf4;color:#654a31}.dashboard-main #homeFacts{margin-top:30px}.dashboard-main .dash-stats{margin-top:24px}.fm-compact{background:linear-gradient(120deg,#f7eddd,#eee0cb);border-radius:26px!important}.fm-compact .home-radio-console{border-radius:20px;background:#fffaf2;box-shadow:0 8px 22px #73502e0a}.fm-compact .home-radio-record{box-shadow:0 6px 22px #40271625}.fm-compact .fm-download{border-left:1px solid #dfcbb0;padding-left:25px}@media(max-width:850px){.calendar-layout{grid-template-columns:1fr}.site-statistics-grid{gap:12px}.calendar-main{padding:24px 12px}.calendar-card{padding:16px}.calendar-day{min-height:70px;padding:8px 4px}.site-statistics-heading{display:block}.fm-compact .fm-download{border-left:0;padding-left:0}}@media(max-width:480px){.site-statistics-grid{grid-template-columns:1fr;gap:20px}.site-statistic{display:flex;align-items:baseline;gap:16px}.site-statistic strong{min-width:90px}.calendar-day span{font-size:.53rem}.calendar-grid{gap:3px}}@media(prefers-reduced-motion:reduce){.site-statistics *, .calendar-main *{animation:none!important;scroll-behavior:auto!important}}
.calendar-jump{display:flex;align-items:center;gap:10px;font-size:.75rem;color:#8a7054;margin-bottom:15px}.calendar-jump input{border:1px solid #ddc8aa;border-radius:8px;padding:7px;background:#fffdf7;color:#684a30}.dashboard-main .home-facts{margin-top:30px}.dashboard-main .home-facts .fact-card{border-radius:22px;background:#fffaf1;border:1px solid #e1cfb2;padding:28px}.dashboard-main .home-facts .facts-heading{display:flex;gap:20px;align-items:center;justify-content:space-between}.dashboard-main .home-facts .section-number{color:#a37c4e;font-size:.7rem;letter-spacing:.1em}#calendarAdminForm input[type=checkbox],#statisticsForm input[type=checkbox]{width:auto;display:inline-block;margin-right:8px}#statisticsForm label{display:block;margin:18px 0}
body[data-page=home] .fm-compact{background:linear-gradient(115deg,#f6ecdb,#eaddc7);border:1px solid #d8bd98;border-radius:26px;box-shadow:0 12px 35px #6243210a}body[data-page=home] .fm-compact .home-radio-console{background:#fffaf3aa;border:1px solid #e1cfb2;padding:14px;border-radius:20px}body[data-page=home] .fm-compact .home-vinyl{box-shadow:0 8px 20px #33231530,0 0 0 5px #e7d7be}body[data-page=home] .fm-compact .fm-downloads{border-color:#d4bb97}body[data-page=home] .fm-compact .home-radio-controls select{border-radius:10px;background:#fffcf5;border:1px solid #d8c3a2;padding:8px}body[data-page=home] .fm-compact #homeRadioPlay{box-shadow:0 5px 14px #80542725}body[data-page=home] .fm-compact .fm-store-link{background:#4d593e;color:#fff8e9;border:1px solid #4d593e;border-radius:11px}body[data-page=home] .fm-compact .fm-store-link:hover{background:#38452e}body[data-page=home] .fm-compact .fm-store-pending{background:#666a52;border-color:#666a52}@media(max-width:760px){body[data-page=home] .fm-compact .home-radio-console{padding:12px;gap:12px;grid-template-columns:72px minmax(0,1fr) 40px}body[data-page=home] .fm-compact .home-vinyl{width:72px;height:72px}}
/* Admin date controls must fit the workspace independently of the viewport. */
#calendarPanel,#statisticsPanel{min-width:0;max-width:100%;box-sizing:border-box}#calendarAdminForm{min-width:0}#calendarAdminForm .calendar-admin-date-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:16px;min-width:0;margin:18px 0}#calendarAdminForm .calendar-admin-date-fields label{display:flex;flex-direction:column;gap:8px;min-width:0;margin:0}#calendarAdminForm :is(input,select,textarea){box-sizing:border-box;max-width:100%;min-width:0;width:100%}#calendarAdminForm input[type=date]{font-size:16px;min-height:46px;padding:10px;width:100%;min-width:0}#calendarAdminForm input[type=checkbox]{width:auto}.calendar-admin-list button{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;min-width:0;line-height:1.6}.calendar-admin-dates{display:block;font-size:.76rem;font-weight:750;overflow-wrap:anywhere}.calendar-admin-title{display:block;white-space:normal;overflow-wrap:anywhere}.statistics-values{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:16px}.statistics-values label{min-width:0}.statistics-values input{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.ranking-table th.ranking-avatar-column,.ranking-table td.ranking-avatar-cell{width:64px;min-width:64px;text-align:center;padding-inline:10px}.ranking-table td.ranking-avatar-cell a{display:inline-flex;vertical-align:middle}.ranking-table td:nth-child(3){min-width:160px}.ranking-table .ranking-identity{display:inline-flex}.ranking-table .ranking-avatar{width:40px;height:40px}
