.mobile-event-list .card{width:100%;min-width:0;max-width:98vw;background:#fff;box-shadow:0 2px 16px #0000000f;border-radius:20px;padding:20px;-webkit-user-drag:none;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,system-ui,sans-serif;overflow:hidden;--delay: .15s}.mobile-event-list .messages{width:100%;min-width:0;max-width:100vw}.mobile-event-list .message{width:100%;min-width:0;max-width:100vw;border:1px solid rgba(0,0,0,.06);border-radius:14px;padding:14px 16px;display:flex;gap:14px;transform:scale(0);height:0;box-shadow:0 1px 4px #00000008;animation:show-message .25s forwards;transform-origin:top center;visibility:hidden;transition:all .25s cubic-bezier(.4,0,.2,1);cursor:pointer}.mobile-event-list .message:hover{box-shadow:0 4px 20px #00000014;transform:translateY(-2px) scale(1.02)}.mobile-event-list .message-icon{width:2.5rem;height:2.5rem;min-width:2.5rem;min-height:2.5rem;border-radius:12px}.mobile-event-list .message:nth-child(1){animation-delay:calc(4 * var(--delay))}.mobile-event-list .message:nth-child(2){animation-delay:calc(3 * var(--delay))}.mobile-event-list .message:nth-child(3){animation-delay:calc(2 * var(--delay))}.mobile-event-list .message:nth-child(4){animation-delay:var(--delay)}.mobile-event-list .message-info{display:flex;flex-direction:column}.mobile-event-list .message-header-col{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2;-moz-user-select:none;user-select:none;-webkit-user-select:none;gap:2px}.mobile-event-list .message-title{font-size:.9rem;font-weight:600;color:#1d1d1f;letter-spacing:-.01em}.mobile-event-list .message-time{color:#86868b;font-size:.8rem;font-weight:400;margin-top:2px}.mobile-event-list .message-content{margin-top:6px;font-size:.8rem;line-height:1.35;color:#86868b;text-overflow:ellipsis;white-space:wrap;font-weight:400}@keyframes show-message{0%{transform:scale(0);margin-bottom:0;visibility:visible}to{transform:scale(1);height:100%;margin-bottom:12px;visibility:visible}}.mobile-event-list.no-animation .message{animation:none!important;transform:scale(1)!important;height:auto!important;visibility:visible!important;margin-bottom:12px!important}.timeline-container{position:relative;width:100%;padding:48px 0;display:flex;flex-direction:column;align-items:center;z-index:201}.timeline-year-title{font-size:2.4rem;font-weight:800;background:linear-gradient(135deg,#1d1d1f,#0071e3,#1d1d1f);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:48px;text-align:center;letter-spacing:-.04em;animation:gradient-shift 6s ease infinite}@keyframes gradient-shift{0%{background-position:0% center}50%{background-position:100% center}to{background-position:0% center}}.timeline-line{position:absolute;top:68.3%;left:-5%;right:-5%;height:2px;background:linear-gradient(90deg,transparent,rgba(0,113,227,.15) 10%,rgba(0,113,227,.25) 50%,rgba(0,113,227,.15) 90%,transparent);transform:translateY(-60%);z-index:202}.timeline-line:after{content:"";position:absolute;inset:-3px 0;background:linear-gradient(90deg,transparent,rgba(0,113,227,.06) 20%,rgba(0,113,227,.1) 50%,rgba(0,113,227,.06) 80%,transparent);filter:blur(4px);border-radius:4px}.timeline-months-container{position:relative;width:90%;height:150px;z-index:203}.timeline-month-group{position:absolute;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;z-index:204}.timeline-month-node{display:flex;flex-direction:column;align-items:center;position:relative;z-index:205}.month-circle{width:24px;height:24px;border-radius:50%;border:2px solid rgba(0,0,0,.1);background-color:#ffffffe6;cursor:pointer;z-index:210;transition:all .35s cubic-bezier(.4,0,.2,1);position:absolute;left:50%;transform:translate(-50%) translateY(0)}.month-circle:hover{border-color:#0071e366;background-color:#0071e314;box-shadow:0 0 0 4px #0071e314;transform:translate(-50%) scale(1.15)}.event-month{width:28px;height:28px;border:none;background:linear-gradient(135deg,#0071e3,#42a1ec)!important;box-shadow:0 0 0 4px #0071e326,0 2px 8px #0071e34d;animation:pulse-glow 2.5s ease-in-out infinite}.event-month:hover{transform:translate(-50%) scale(1.25);box-shadow:0 0 0 6px #0071e333,0 4px 16px #0071e366}@keyframes pulse-glow{0%,to{box-shadow:0 0 0 4px #0071e326,0 2px 8px #0071e34d}50%{box-shadow:0 0 0 7px #0071e314,0 2px 12px #0071e333}}.month-text{font-size:.8rem;font-weight:500;color:#86868b;text-align:center;margin-top:5px;margin-bottom:5px;position:absolute;left:50%;transform:translate(-50%);white-space:nowrap;z-index:206;letter-spacing:.01em;transition:color .3s ease}.timeline-month-group:has(.event-month) .month-text{color:#1d1d1f;font-weight:600}.month-tooltip{position:absolute;left:50%;transform:translate(-50%);background:linear-gradient(160deg,#ffffffeb,#f0f5ffe0);backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border:1px solid rgba(0,113,227,.1);border-radius:18px;padding:14px;box-shadow:0 8px 32px #0071e314,0 2px 8px #0000000a;z-index:220;opacity:0;visibility:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);min-width:230px}.timeline-month-group:hover .month-tooltip{visibility:visible;opacity:1}.timeline-month-group.odd .month-tooltip{bottom:calc(100% + 20px);top:auto}.timeline-month-group.even .month-tooltip{top:calc(100% + 30px);bottom:auto}.tooltip-events-list{display:flex;flex-direction:column;gap:6px}.timeline-month-group.odd .tooltip-events-list{flex-direction:column-reverse}.tooltip-event-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:12px;background:#0071e30a;border:1px solid rgba(0,113,227,.06);cursor:pointer;transition:all .2s ease;width:100%;text-align:left}.tooltip-event-item:hover{background:#0071e31a;border-color:#0071e326;transform:translate(2px)}.event-date{font-weight:700;background:linear-gradient(135deg,#0071e3,#42a1ec);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;min-width:36px;font-size:.85rem}.event-title{color:#1d1d1f;flex:1;font-size:.85rem;font-weight:600;letter-spacing:-.01em}.timeline-legend{position:absolute;bottom:-12px;right:0;text-align:left;color:#86868b;font-size:.78rem;padding:8px 14px;background:linear-gradient(160deg,#ffffffd9,#f0f5ffcc);backdrop-filter:blur(16px) saturate(150%);-webkit-backdrop-filter:blur(16px) saturate(150%);border-radius:12px;border:1px solid rgba(0,113,227,.08);z-index:1;transition:opacity .3s,visibility .3s}.event-indicator{display:flex;align-items:center}.event-circle{display:inline-block;width:16px;height:16px;margin-right:8px;background:linear-gradient(135deg,#0071e3,#42a1ec);border-radius:50%;box-shadow:0 0 0 3px #0071e31f}.event-circle-legend{background:linear-gradient(135deg,#0071e3,#42a1ec)}@media(prefers-reduced-motion:reduce){.timeline-year-title{animation:none;background-position:50% center}.event-month{animation:none}}.event-card-container{margin:0 auto}.event-card{position:relative;width:300px;height:340px;margin:0 auto;border-radius:24px;overflow:hidden;cursor:pointer;box-shadow:0 4px 24px #00000014,0 1px 4px #0000000a;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1)}.event-card:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 16px 48px #00000026,0 4px 12px #0000000f}.event-card-face{position:absolute;bottom:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center}.event-card-face.back{box-sizing:border-box;background:linear-gradient(160deg,#ffffffeb,#f0f5ffe0);backdrop-filter:blur(20px) saturate(150%);-webkit-backdrop-filter:blur(20px) saturate(150%);flex-direction:column;align-items:stretch;justify-content:flex-start;padding:0;z-index:1}.card-back-content{position:relative;z-index:1;padding:20px;display:flex;flex-direction:column;gap:8px;height:100%}.card-date-badge{display:inline-flex;align-self:flex-start;padding:4px 12px;background:linear-gradient(135deg,#0071e3,#42a1ec);color:#fff;font-size:.75rem;font-weight:600;border-radius:980px;letter-spacing:.02em}.card-title{font-size:1.3rem;font-weight:800;color:#1d1d1f;letter-spacing:-.03em;line-height:1.2;margin:2px 0 0}.card-divider{width:100%;height:1px;background:linear-gradient(90deg,#0071e34d,#0071e30d);margin:2px 0}.card-location{display:flex;align-items:center;gap:6px;font-size:.85rem;font-weight:500;color:#0071e3}.card-desc{font-size:.8rem;line-height:1.45;color:#6e6e73;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.event-card-face.front{transition:height .45s cubic-bezier(.4,0,.2,1);border-radius:24px;z-index:2}.event-card-face.front b{margin:0;padding:0 24px;display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:1.5em;font-weight:700;color:#fff;transition:font-size .45s cubic-bezier(.4,0,.2,1);text-shadow:0 2px 12px rgba(0,0,0,.15);z-index:10;text-align:center;word-break:break-word;white-space:pre-line;letter-spacing:-.02em}.event-card:hover .event-card-face.front{height:52px}.event-card:hover .event-card-face.front b{font-size:1.1em}.event-details-container{max-width:720px;margin:0 auto;padding:24px}.back-button{display:inline-flex;align-items:center;gap:6px;padding:8px 20px;background-color:#0071e3;color:#fff;border:none;border-radius:980px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background-color .2s ease,transform .15s ease;letter-spacing:-.01em}.back-button:hover{background-color:#0077ed;transform:scale(1.02)}.back-button:active{transform:scale(.98)}.detail-page-title{font-size:1.5rem;font-weight:800;color:#1d1d1f;letter-spacing:-.03em;margin:8px 0 20px}.events-grid{display:flex;flex-direction:column;gap:16px}.glass-event-card{background:linear-gradient(160deg,#fffffff2,#f0f5ffe6);backdrop-filter:blur(20px) saturate(150%);-webkit-backdrop-filter:blur(20px) saturate(150%);border:1px solid rgba(0,0,0,.06);border-radius:20px;overflow:hidden;cursor:pointer;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 12px #0000000d,0 1px 3px #00000008}.glass-event-card:hover{transform:translateY(-2px);box-shadow:0 8px 32px #0000001a,0 2px 8px #0000000a}.glass-event-card--detail{cursor:default}.glass-event-card--detail:hover{transform:none}.glass-card-top{padding:24px 28px 16px;display:flex;align-items:center;gap:14px}.glass-date-badge{display:inline-flex;align-items:center;padding:6px 14px;background:linear-gradient(135deg,#0071e3,#42a1ec);color:#fff;font-size:.8rem;font-weight:600;border-radius:980px;letter-spacing:.02em;white-space:nowrap;flex-shrink:0}.glass-card-title{font-size:1.15rem;font-weight:700;color:#1d1d1f;letter-spacing:-.02em;margin:0;line-height:1.3}.glass-card-title--lg{font-size:1.4rem;font-weight:800}.glass-card-divider{height:1px;margin:0 28px;background:linear-gradient(90deg,#0071e340,#0071e308)}.glass-card-body{padding:16px 28px 24px;display:flex;flex-direction:column;gap:10px}.glass-card-location{display:flex;align-items:center;gap:8px;font-size:.95rem;font-weight:500;color:#0071e3}.glass-card-desc{font-size:.9rem;line-height:1.55;color:#6e6e73;margin:0}.glass-card-desc--full{-webkit-line-clamp:unset}.glass-card-time{display:flex;align-items:center;gap:8px;font-size:.9rem;font-weight:500;color:#6e6e73;margin-top:4px}@media(max-width:640px){.event-details-container{padding:16px}.glass-card-top{padding:20px 20px 14px}.glass-card-divider{margin:0 20px}.glass-card-body{padding:14px 20px 20px}}
