:root{--background:#fff;--foreground:#000;--page-padding:clamp(16px, 4vw, 40px);--font-main:Futura, "Futura PT", "Trebuchet MS", Arial, sans-serif}*{box-sizing:border-box}html,body{background:var(--background);min-height:100%;color:var(--foreground);margin:0}body,button,input,select{font-family:var(--font-main)}button,input,select{color:inherit}button{cursor:pointer;background:0 0;border:0}button:disabled{cursor:default;opacity:.34}button:focus-visible{outline-offset:4px;outline:2px solid #000}.screen{width:min(100%,520px);min-height:100svh;padding:max(18px, env(safe-area-inset-top)) 14px calc(max(24px, env(safe-area-inset-bottom)) + 64px);background:var(--background);color:var(--foreground);grid-template-rows:repeat(12,minmax(0,1fr));grid-template-columns:repeat(4,minmax(0,1fr));margin:0 auto;display:grid;position:relative}.upperScreen{text-transform:uppercase}.introCopy{grid-area:5/1/8/5;align-self:center}.introCopy h1{letter-spacing:0;margin:0 0 22px;font-size:clamp(56px,17vw,92px);font-weight:400;line-height:.94}.introCopy p{letter-spacing:0;max-width:330px;margin:0;font-size:clamp(22px,6vw,34px);font-weight:400;line-height:1.08}.pickerField{grid-area:4/1/7/5;align-self:end;min-height:160px}.fieldLabel{letter-spacing:0;margin:0 0 26px;font-size:clamp(22px,5.6vw,28px);font-weight:400;line-height:.96}.fieldValue{letter-spacing:0;overflow-wrap:anywhere;white-space:pre-line;margin:0;font-size:clamp(38px,10vw,60px);font-weight:400;line-height:1.2}.bottomAction{right:max(14px,50vw - 246px);bottom:max(18px, env(safe-area-inset-bottom));z-index:10;letter-spacing:0;text-transform:uppercase;min-height:44px;padding:0;font-size:clamp(18px,4.8vw,24px);font-weight:400;line-height:1;position:fixed}.wheelDock{grid-area:7/1/11/5;align-self:center}.iosWheel{isolation:isolate;-webkit-user-select:none;user-select:none;touch-action:none;min-height:260px;padding:12px 0;display:grid;position:relative;overflow:hidden}.dateWheel,.timeWheel{grid-template-columns:minmax(0,1.2fr) minmax(64px,.55fr) minmax(92px,.75fr);column-gap:12px}.placeWheel{grid-template-columns:minmax(0,1fr)}.wheelHighlight{z-index:0;background:#f1f1f1;border-radius:18px;height:72px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.wheelColumn{z-index:1;outline:0;grid-template-rows:repeat(7,36px);align-content:center;min-width:0;display:grid;position:relative}.wheelOption{width:100%;min-width:0;height:36px;color:var(--foreground);letter-spacing:0;text-align:center;white-space:nowrap;text-overflow:clip;padding:0 2px;font-size:clamp(31px,8vw,52px);font-weight:500;line-height:1;transition:color .14s,opacity .14s,transform .14s;overflow:hidden}.monthWheel .wheelOption,.yearWheel .wheelOption{font-size:clamp(25px,6.4vw,42px)}.placeWheelColumn .wheelOption{height:40px;font-size:clamp(27px,7.2vw,48px);line-height:1.05}.wheelOptionSelected{color:#000;opacity:1;transform:scale(1)}.wheelOptionNear{opacity:.43;transform:scale(.92)}.wheelOptionFar{opacity:.2;transform:scale(.82)}.wheelOptionEdge{opacity:.06;transform:scale(.72)}.wheelOptionEmpty{pointer-events:none}.placeSearch{gap:20px;display:grid}.placeSearchInput{color:#000;letter-spacing:0;text-transform:uppercase;background:0 0;border:0;border-bottom:2px solid #000;border-radius:0;outline:0;width:100%;min-height:56px;padding:0;font-size:clamp(22px,6.4vw,32px);font-weight:400;line-height:1}.placeSearchInput::placeholder{color:#cfcfcf;opacity:1}.placeSearchInput::-webkit-search-cancel-button{display:none}.placeResults{gap:14px;max-height:212px;display:grid;overflow:auto}.placeResult,.placeNoResults{color:#8f8f8f;letter-spacing:0;text-align:left;margin:0;padding:0;font-size:clamp(18px,5vw,24px);font-weight:400;line-height:1.05}.placeResult[aria-selected=true]{color:#000}.recapSign{letter-spacing:0;grid-area:2/1/3/5;align-self:start;margin:0;font-size:clamp(40px,10.8vw,58px);font-weight:400;line-height:1}.recapDetail .fieldLabel{margin-bottom:14px}.recapDetail .fieldValue{font-size:clamp(37px,9.8vw,54px);line-height:1.22}.recapDetail{position:absolute;left:14px;right:14px}.recapDate{top:49%}.recapTime{text-align:right;top:64%;left:48%}.recapTime .fieldValue{white-space:nowrap}.recapPlace{top:76%}.weekScreen{row-gap:12px}.chartBlock{grid-area:2/1/5/5;align-self:start}.weekLabel{color:#000;letter-spacing:0;text-transform:uppercase;margin:0 0 16px;font-size:clamp(15px,4.2vw,18px);font-weight:400;line-height:1}.chartLine{letter-spacing:0;margin:0;font-size:clamp(30px,7.2vw,44px);font-weight:400;line-height:1.12}.weekDateBlock{text-align:right;grid-area:6/1/8/5}.weekDates{letter-spacing:0;white-space:nowrap;margin:0;font-size:clamp(30px,7.2vw,44px);font-weight:400;line-height:1.12}.themeBlock{grid-area:8/1/11/5;align-self:start}.themeTitle{letter-spacing:0;text-transform:lowercase;max-width:460px;margin:0 0 22px;font-size:clamp(34px,8.8vw,54px);font-weight:400;line-height:1.08}.energyLine{letter-spacing:0;text-transform:lowercase;max-width:360px;margin:0;font-size:clamp(19px,4.8vw,24px);font-weight:400;line-height:1.05}.weekScreen .bottomAction{text-transform:lowercase}.playlistScreen{width:min(100%,720px);min-height:100svh;padding:max(24px, env(safe-area-inset-top)) var(--page-padding) max(36px, env(safe-area-inset-bottom));background:var(--background);color:var(--foreground);margin:0 auto}.playlistHeader{flex-direction:column;justify-content:center;min-height:42svh;display:flex}.playlistHeader h1{letter-spacing:0;text-transform:lowercase;max-width:680px;margin:0 0 24px;font-size:clamp(44px,11vw,74px);font-weight:400;line-height:1.02}.chartSummary{text-transform:uppercase;max-width:520px;margin:0;font-size:clamp(18px,4.5vw,24px);font-weight:400;line-height:1.1}.playlistDate{text-transform:uppercase}.playlistList{gap:30px;margin:0;padding:0;list-style:none;display:grid}.songRow{grid-template-columns:44px minmax(0,1fr);align-items:start;gap:18px;display:grid}.songNumber,.songRow h2,.songRow p{letter-spacing:0;font-weight:400}.songNumber{font-size:18px;line-height:1}.songRow h2{margin:0 0 8px;font-size:clamp(24px,6.4vw,38px);line-height:1.02}.songRow p{margin:0;font-size:clamp(16px,4.2vw,20px);line-height:1.08}.songReason{max-width:560px;padding-top:12px}@media (min-width:700px){.screen{padding-left:24px;padding-right:24px}.pickerField{grid-row:4/7}}
