.calendar-card__label,.calendar-fab{font-weight:600;color:var(--cs-gold)}.calendar-card__label,.calendar-fab__label,.calendar-popup__eyebrow,.calendar-weekday{text-transform:uppercase}:root{--cs-bg:#1c1f2b;--cs-bg-card:#22263a;--cs-border:rgba(255,255,255,.08);--cs-gold:#c8a96e;--cs-gold-light:#e2c78a;--cs-gold-glow:rgba(200,169,110,.22);--cs-text:#e8e8f0;--cs-text-muted:rgba(232,232,240,.5);--cs-radius:18px;--cs-radius-sm:10px;--cs-shadow:0 20px 60px rgba(0,0,0,.4);--cs-trans:0.3s ease}.blog-calendar-sidebar{position:fixed;right:24px;bottom:100px;z-index:490;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.calendar-fab{display:flex;align-items:center;gap:8px;padding:10px 16px 10px 12px;background:linear-gradient(135deg,var(--cs-bg-card),var(--cs-bg));border:1px solid rgba(200,169,110,.3);border-radius:50px;font-size:.75rem;letter-spacing:.06em;cursor:pointer;box-shadow:0 8px 28px rgba(0,0,0,.35),0 0 0 1px rgba(200,169,110,.08) inset;transition:var(--cs-trans);white-space:nowrap;position:relative;overflow:hidden}.calendar-fab::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(200,169,110,.4),transparent)}.calendar-fab:hover{border-color:var(--cs-gold);box-shadow:0 12px 36px rgba(0,0,0,.4),0 0 16px var(--cs-gold-glow);transform:translateY(-2px);color:var(--cs-gold-light)}.calendar-fab.is-open{background:linear-gradient(135deg,var(--cs-gold),#b8904e);border-color:var(--cs-gold);color:#1c1f2b;box-shadow:0 8px 28px rgba(200,169,110,.35)}.calendar-fab svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;transition:var(--cs-trans)}.calendar-fab__chevron{display:none;margin-left:auto;width:16px!important;height:16px!important;transition:transform var(--cs-trans)!important}.calendar-fab.is-open .calendar-fab__chevron{transform:rotate(180deg)}.calendar-panel.is-open,.calendar-popup:not(.is-hidden) .calendar-popup__content{transform:translateY(0) scale(1)}.calendar-fab__dot{width:7px;height:7px;border-radius:50%;background:var(--cs-gold);flex-shrink:0;animation:2s ease-in-out infinite cs-pulse}.calendar-fab.is-open .calendar-fab__dot{background:#1c1f2b;animation:none}@keyframes cs-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.75)}}.calendar-panel{order:-1;width:300px;background:linear-gradient(145deg,var(--cs-bg-card),var(--cs-bg));border:1px solid var(--cs-border);border-radius:var(--cs-radius);box-shadow:var(--cs-shadow);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);overflow:hidden;opacity:0;transform:translateY(12px) scale(.97);pointer-events:none;transition:opacity var(--cs-trans),transform var(--cs-trans);transform-origin:bottom right}.calendar-day,.calendar-day__dot,.calendar-nav-btn{transition:var(--cs-trans)}.calendar-panel.is-open{opacity:1;pointer-events:auto}.calendar-panel::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:55%;height:2px;background:linear-gradient(90deg,transparent,var(--cs-gold),transparent)}.calendar-card{padding:20px 18px 16px;position:relative}.calendar-card__label{font-size:.65rem;letter-spacing:.15em;margin-bottom:14px;display:flex;align-items:center;gap:6px}.calendar-card__label::before{content:"";width:14px;height:2px;background:var(--cs-gold);border-radius:2px;flex-shrink:0}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.calendar-title{font-size:.95rem;font-weight:700;color:var(--cs-text);text-align:center;flex:1;letter-spacing:.02em}.calendar-nav-btn{width:30px;height:30px;border:1px solid var(--cs-border);border-radius:50%;background:rgba(255,255,255,.05);color:var(--cs-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:0;padding:0}.calendar-grid,.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-nav-btn:hover{background:var(--cs-gold);border-color:var(--cs-gold);color:#1c1f2b;transform:scale(1.1)}.calendar-nav-btn svg{width:13px;height:13px;fill:currentColor;display:block}.calendar-weekdays{margin-bottom:5px}.calendar-weekday{text-align:center;font-size:.6rem;font-weight:600;letter-spacing:.07em;color:var(--cs-text-muted);padding:3px 0}.calendar-weekday:nth-child(6),.calendar-weekday:nth-child(7){color:rgba(200,169,110,.4)}.calendar-grid{gap:2px}.calendar-day{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:1;border-radius:8px;font-size:.75rem;font-weight:500;color:var(--cs-text);background:0 0;border:1px solid transparent;cursor:default;user-select:none;line-height:1;padding:0}.calendar-day--empty{pointer-events:none}.calendar-day--today{border-color:var(--cs-gold);color:var(--cs-gold);font-weight:700;background:rgba(200,169,110,.07)}.calendar-day--other-month{color:var(--cs-text-muted);opacity:.35}.calendar-day--has-posts{cursor:pointer;background:rgba(200,169,110,.09);border-color:rgba(200,169,110,.2);color:var(--cs-text)}.calendar-day--has-posts:hover{background:rgba(200,169,110,.2);border-color:var(--cs-gold);transform:scale(1.15);box-shadow:0 0 12px var(--cs-gold-glow),0 4px 14px rgba(0,0,0,.3);z-index:2;color:var(--cs-gold-light)}.calendar-day--active{background:var(--cs-gold)!important;border-color:var(--cs-gold)!important;color:#1c1f2b!important;font-weight:700;box-shadow:0 0 14px var(--cs-gold-glow)}.calendar-day__dot{position:absolute;bottom:2px;left:50%;transform:translateX(-50%);width:3px;height:3px;border-radius:50%;background:var(--cs-gold)}.calendar-day--active .calendar-day__dot{background:#1c1f2b}.calendar-day--has-posts:hover .calendar-day__dot{width:4px;height:4px;box-shadow:0 0 5px var(--cs-gold)}.calendar-popup{position:fixed;inset:0;z-index:9000;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(14,16,26,.65);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);opacity:1;transition:opacity var(--cs-trans)}.calendar-popup.is-hidden{opacity:0;pointer-events:none}.calendar-popup__content{position:relative;background:linear-gradient(160deg,#252840 0,#1a1c2c 100%);border:1px solid rgba(200,169,110,.2);border-radius:var(--cs-radius);box-shadow:0 30px 80px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.04) inset;max-width:480px;width:100%;max-height:80vh;overflow-y:auto;transform:translateY(14px) scale(.97);transition:transform var(--cs-trans),opacity var(--cs-trans);padding:28px 24px 24px;scrollbar-width:thin;scrollbar-color:rgba(200,169,110,.3) transparent}.calendar-popup__content::-webkit-scrollbar{width:4px}.calendar-popup__content::-webkit-scrollbar-track{background:0 0}.calendar-popup__content::-webkit-scrollbar-thumb{background:rgba(200,169,110,.35);border-radius:4px}.calendar-popup__content::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0,var(--cs-gold) 40%,var(--cs-gold-light) 60%,transparent 100%);border-radius:var(--cs-radius) var(--cs-radius) 0 0}.calendar-popup__close{position:absolute;top:14px;right:14px;width:28px;height:28px;border:1px solid var(--cs-border);border-radius:50%;background:rgba(255,255,255,.05);color:var(--cs-text-muted);font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--cs-trans)}.calendar-popup__close:hover{background:var(--cs-gold);border-color:var(--cs-gold);color:#1c1f2b;transform:scale(1.1)}.calendar-popup__header{margin-bottom:18px;padding-right:32px}.calendar-popup__eyebrow{font-size:.62rem;font-weight:600;letter-spacing:.15em;color:var(--cs-gold);margin-bottom:4px}.calendar-popup__title{font-size:1rem;font-weight:700;color:var(--cs-text);margin:0}.calendar-popup__list{display:flex;flex-direction:column;gap:12px}.calendar-popup__article{display:flex;gap:12px;align-items:flex-start;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);border-radius:13px;padding:12px;transition:var(--cs-trans)}.calendar-popup__article:hover{background:rgba(200,169,110,.07);border-color:rgba(200,169,110,.22);transform:translateY(-1px);box-shadow:0 8px 24px rgba(0,0,0,.2)}.calendar-popup__thumb{flex:0 0 68px;width:68px;height:68px;border-radius:9px;object-fit:cover;border:1px solid rgba(200,169,110,.15)}.calendar-popup__info{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.calendar-popup__category{font-size:.6rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--cs-gold)}.calendar-popup__article-title{font-size:.82rem;font-weight:600;color:var(--cs-text);line-height: 1.3;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.calendar-popup__date{font-size:.68rem;color:var(--cs-text-muted)}.calendar-popup__link{display:inline-flex;align-items:center;gap:5px;font-size:.7rem;font-weight:600;letter-spacing:.05em;color:var(--cs-gold);text-decoration:none;margin-top:4px;transition:var(--cs-trans)}.calendar-popup__link:hover{color:var(--cs-gold-light);gap:8px}.calendar-popup__link svg{width:10px;height:10px;fill:currentColor;flex-shrink:0}@media (max-width:1024px) and (min-width:769px){.blog-calendar-sidebar{right:16px;bottom:90px}.calendar-panel{width:280px}}@media (max-width:768px){.blog-calendar-sidebar,.calendar-panel{position:static!important;width:100%!important}.calendar-fab,.calendar-fab:hover,.calendar-panel,.calendar-panel.is-open{transform:none!important}.blog-calendar-sidebar{flex-direction:column!important;align-items:stretch!important;gap:0!important;margin-bottom:24px!important;right:auto!important;bottom:auto!important;z-index:auto!important}.calendar-fab{width:100%!important;border-radius:12px!important;padding:14px 18px!important;justify-content:flex-start!important;box-shadow:0 4px 16px rgba(0,0,0,.2)!important;gap:10px!important}.calendar-fab__label{display:block!important;flex:1!important;text-align:left!important}.calendar-fab__chevron{display:block!important;margin-left:auto!important;flex-shrink:0!important}.calendar-panel{max-width:100%!important;border-radius:0 0 var(--cs-radius) var(--cs-radius)!important;border-top:none!important;opacity:0!important;max-height:0!important;overflow:hidden!important;pointer-events:none!important;transition:max-height .4s,opacity .3s!important;order:1!important}.calendar-panel.is-open{opacity:1!important;max-height:540px!important;pointer-events:auto!important}.calendar-panel .calendar-card{border-radius:0 0 var(--cs-radius) var(--cs-radius)}.calendar-popup__content{padding:20px 14px 16px;max-height:90vh}.calendar-popup__article{flex-direction:column;gap:10px}.calendar-popup__thumb{width:100%;height:130px;flex:none}}