:root{--klt-bg:#090d24;--klt-bg-soft:#111633;--klt-violet:#312456;--klt-violet-soft:#7666a7;--klt-gold:#d6bd79;--klt-gold-soft:#f0dfae;--klt-text:#f5f3fb;--klt-muted:#c6c2d7;--klt-line:rgba(214,189,121,.26);--klt-glass:rgba(23,27,57,.78);--klt-shadow:0 24px 70px rgba(2,4,18,.3)}
.klt-virtual-page{background:var(--klt-bg);padding:48px 20px}.klt-wrap{max-width:1120px;margin:0 auto;padding:clamp(20px,4vw,46px);border-radius:28px;color:var(--klt-text);background:var(--klt-bg);font-family:"Cinzel",Georgia,serif;line-height:1.65}.klt-wrap *{box-sizing:border-box}.klt-wrap a,.klt-wrap a:hover,.klt-wrap a:focus,.klt-wrap a:visited{text-decoration:none!important}.klt-wrap h1,.klt-wrap h2,.klt-wrap h3{margin-top:0;color:var(--klt-text);font-family:"Cinzel",Georgia,serif;font-weight:600;letter-spacing:.01em}.klt-wrap h1{font-size:clamp(34px,5vw,58px);line-height:1.12}.klt-wrap h2{font-size:clamp(27px,3.4vw,42px);line-height:1.2;margin-bottom:22px}.klt-wrap h3{font-size:clamp(20px,2.1vw,27px);line-height:1.28;margin-bottom:12px}.klt-wrap p{color:var(--klt-muted)}
.klt-hero,.klt-archive-hero{position:relative;overflow:hidden;padding:clamp(34px,7vw,78px);border:1px solid var(--klt-line);border-radius:28px;background:radial-gradient(circle at 82% 18%,rgba(133,101,192,.28),transparent 34%),linear-gradient(145deg,#0a0f29,#17133a 68%,#261c48);box-shadow:var(--klt-shadow)}.klt-hero:after{content:"";position:absolute;right:-90px;top:-110px;width:290px;height:290px;border:1px solid rgba(214,189,121,.16);border-radius:50%;box-shadow:0 0 0 42px rgba(214,189,121,.05),0 0 0 88px rgba(214,189,121,.025);pointer-events:none}.klt-kicker{margin:0 0 9px!important;color:var(--klt-gold)!important;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.klt-hero .klt-kicker{font-family:"Cinzel",Georgia,serif;font-size:clamp(32px,5vw,58px);font-weight:600;letter-spacing:.02em;text-align:center;text-transform:none}.klt-lead{position:relative;z-index:1;max-width:680px;margin:0;font-size:clamp(18px,2.3vw,25px);color:var(--klt-text)!important}.klt-updated{margin:18px 0 0;font-size:14px}.klt-anchor-nav{display:flex;justify-content:center;gap:10px;overflow-x:auto;margin-top:30px;padding-bottom:4px;scrollbar-width:thin}.klt-anchor-nav a{display:flex;justify-content:center;align-items:center;flex:0 0 auto;padding:10px 15px;border:1px solid var(--klt-line);border-radius:999px;color:var(--klt-gold-soft);font-size:13px;text-align:center;text-decoration:none!important;background:rgba(255,255,255,.035)}.klt-anchor-nav a:hover,.klt-anchor-nav a:focus{border-color:var(--klt-gold);color:#fff;text-decoration:none!important}
.klt-section{padding:clamp(52px,8vw,92px) 0;border-bottom:1px solid rgba(255,255,255,.09);scroll-margin-top:30px}.klt-overview{padding:clamp(32px,5vw,58px);margin-top:48px;border:1px solid var(--klt-line);border-radius:24px;background:linear-gradient(135deg,rgba(49,36,86,.58),rgba(12,16,42,.82))}.klt-overview-text{max-width:780px}.klt-overview-text p{font-size:17px}.klt-question{max-width:760px;margin:25px 0!important;padding-left:18px;border-left:2px solid var(--klt-gold);font-size:18px;color:var(--klt-text)!important}.klt-question span,.klt-card-note span{display:block;margin-bottom:5px;color:var(--klt-gold);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.klt-button{display:flex;justify-content:center;align-items:center;width:max-content;max-width:100%;margin:8px auto 0;padding:12px 19px;border-radius:999px;color:#10142c!important;background:var(--klt-gold);font-weight:700;text-align:center;text-decoration:none!important}.klt-button:hover,.klt-button:focus{background:var(--klt-gold-soft);text-decoration:none!important}
.klt-current-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:18px}.klt-current-grid .klt-card:first-child{grid-row:span 2}.klt-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.klt-card-grid--long{grid-template-columns:repeat(3,minmax(0,1fr))}.klt-card{padding:24px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:linear-gradient(145deg,var(--klt-glass),rgba(11,14,37,.9));box-shadow:0 15px 42px rgba(2,4,18,.16)}.klt-card--featured{padding:clamp(26px,4vw,42px);border-color:rgba(214,189,121,.42);background:radial-gradient(circle at 95% 0,rgba(118,102,167,.26),transparent 35%),linear-gradient(145deg,rgba(33,29,71,.95),rgba(10,14,38,.96))}.klt-card--long{padding:21px}.klt-card-meta{display:flex;flex-wrap:wrap;gap:7px 12px;align-items:center;margin-bottom:13px;color:var(--klt-gold);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.klt-card-meta span+span:before,.klt-card-meta time:before{content:"·";margin-right:12px;color:var(--klt-violet-soft)}.klt-card-theme{color:var(--klt-text)!important;font-size:16px}.klt-card-note{margin:17px 0 0;padding-top:15px;border-top:1px solid rgba(255,255,255,.09)}.klt-text-link{display:inline-block;margin-top:18px;color:var(--klt-gold-soft)!important;font-size:14px;font-weight:700;text-decoration:none}.klt-text-link:hover,.klt-text-link:focus{color:#fff!important}
.klt-timeline{position:relative;margin-left:8px;padding-left:32px}.klt-timeline:before{content:"";position:absolute;left:7px;top:5px;bottom:5px;width:1px;background:linear-gradient(var(--klt-gold),rgba(214,189,121,.1))}.klt-timeline .klt-card{position:relative;margin-bottom:16px}.klt-timeline .klt-card:before{content:"";position:absolute;left:-31px;top:29px;width:11px;height:11px;border:2px solid var(--klt-gold);border-radius:50%;background:var(--klt-bg)}.klt-subsection+.klt-subsection{margin-top:70px}
.klt-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.klt-library-card,.klt-year-card{display:flex;justify-content:space-between;gap:15px;align-items:center;min-height:88px;padding:19px;border:1px solid rgba(255,255,255,.11);border-radius:16px;color:var(--klt-text)!important;background:rgba(255,255,255,.035);text-decoration:none}.klt-library-card b{color:var(--klt-gold)}.klt-library-card:hover,.klt-library-card:focus,.klt-year-card:hover,.klt-year-card:focus{border-color:var(--klt-gold);background:rgba(255,255,255,.06)}
.klt-month-links,.klt-year-links{display:flex;flex-wrap:wrap;gap:10px}.klt-month-links a,.klt-year-links a{padding:10px 14px;border:1px solid var(--klt-line);border-radius:999px;color:var(--klt-text)!important;text-decoration:none}.klt-year-links{align-items:center;margin-top:20px}.klt-year-links span{color:var(--klt-muted)}.klt-archive-page{padding:20px 0 60px}.klt-back{display:inline-block;margin-bottom:24px;color:var(--klt-gold-soft)!important;text-decoration:none}.klt-year-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.klt-year-card{display:block}.klt-year-card span{display:block;font-family:"Cinzel",Georgia,serif;font-size:20px}.klt-year-card small{color:var(--klt-muted)}.klt-year-card--empty{opacity:.58}.klt-period-nav{display:flex;justify-content:space-between;gap:16px;padding-top:36px}.klt-period-nav a{color:var(--klt-gold-soft)!important;text-decoration:none}
@media(max-width:820px){.klt-current-grid,.klt-card-grid,.klt-card-grid--long,.klt-library-grid,.klt-year-grid{grid-template-columns:1fr}.klt-current-grid .klt-card:first-child{grid-row:auto}.klt-hero,.klt-archive-hero{border-radius:21px}.klt-card{padding:21px}.klt-card-meta span+span:before,.klt-card-meta time:before{display:none}.klt-card-meta span,.klt-card-meta time{width:100%}.klt-section{padding:50px 0}.klt-overview{padding:27px 21px;margin-top:30px}.klt-period-nav{align-items:flex-start;flex-direction:column}.klt-virtual-page{padding:25px 16px}}
@media(prefers-reduced-motion:reduce){.klt-wrap *{scroll-behavior:auto!important}}

/* 1.1.0 — simplified hero and monthly anchor */
.klt-hero .klt-lead{margin-left:auto;margin-right:auto;text-align:center;max-width:760px}
.klt-hero .klt-updated{text-align:center}
.klt-month-block{scroll-margin-top:30px}

/* 1.1.1 — current anchor always exists */
#klt-current{scroll-margin-top:30px}.klt-empty-current{max-width:760px;margin:18px 0 0;color:var(--klt-muted);line-height:1.7}

/* 1.2.0 — automatic Today / month / cycles / archive structure */
#klt-current,#klt-month,#klt-cycles,#klt-archive{scroll-margin-top:30px}

/* 1.2.1 — компактный встроенный архив без отдельных виртуальных страниц */
.klt-inline-archive{display:grid;gap:12px}.klt-archive-month{border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:0 18px;background:rgba(255,255,255,.025)}.klt-archive-month summary{cursor:pointer;padding:16px 0;font-weight:600}.klt-archive-month[open]{padding-bottom:18px}.klt-archive-month h3{margin:4px 0 18px}


/* 1.3.0 — month label, correct Russian cases, events grouped by date */
.klt-date-groups{display:grid;gap:34px}
.klt-date-group{margin:0}
.klt-date-heading{margin:0 0 14px!important;color:var(--klt-gold)!important;font-size:clamp(18px,2vw,23px)!important}
.klt-date-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.klt-date-grid--single{grid-template-columns:minmax(0,1fr)}
.klt-date-grid .klt-card{margin:0}
@media(max-width:820px){.klt-date-grid{grid-template-columns:1fr}.klt-date-grid--single{grid-template-columns:1fr}}

/* 1.4.0 — date filter for any calendar date */
.klt-date-filter{padding-top:clamp(42px,7vw,76px)}
.klt-date-picker-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 18px}
.klt-date-picker-row label{color:var(--klt-gold-soft);font-size:14px;font-weight:700}
.klt-date-picker{min-width:220px;padding:11px 13px;border:1px solid var(--klt-line);border-radius:12px;color:var(--klt-text);background:rgba(255,255,255,.045);font:inherit;color-scheme:dark}
.klt-date-picker:focus{outline:1px solid var(--klt-gold);border-color:var(--klt-gold)}
.klt-date-status{min-height:26px;margin:0 0 16px;color:var(--klt-muted);font-size:15px}
.klt-date-results{margin-top:8px}
.klt-date-results .klt-date-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.klt-date-results .klt-date-grid--single{grid-template-columns:minmax(0,1fr)}
@media(max-width:820px){.klt-date-picker-row{align-items:stretch;flex-direction:column}.klt-date-picker{width:100%;min-width:0}.klt-date-results .klt-date-grid,.klt-date-results .klt-date-grid--single{grid-template-columns:1fr}}


/* 1.4.2 — раскрытие карточек в фильтре по дате */
.klt-card-details{margin-top:16px;border-top:1px solid rgba(255,255,255,.09)}
.klt-card-details summary{position:relative;display:inline-flex;align-items:center;gap:8px;margin-top:14px;color:var(--klt-gold-soft);font-size:14px;font-weight:700;cursor:pointer;list-style:none;user-select:none}
.klt-card-details summary::-webkit-details-marker{display:none}
.klt-card-details summary:after{content:"+";font-size:18px;line-height:1;color:var(--klt-gold)}
.klt-card-details[open] summary:after{content:"−"}
.klt-card-details__body{padding-top:14px}
.klt-card-details__body>p:first-child{margin-top:0}
.klt-card-details__body .klt-card-note{margin-top:14px}


/* 1.4.3 — explicit JS toggle for dynamically loaded date cards */
.klt-card-toggle{appearance:none;-webkit-appearance:none;margin-top:16px;padding:0;border:0;background:transparent;color:var(--klt-gold-soft);font:inherit;font-size:14px;font-weight:700;cursor:pointer;text-align:left}
.klt-card-toggle:after{content:" +";color:var(--klt-gold);font-size:18px;line-height:1}
.klt-card-toggle[aria-expanded="true"]:after{content:" −"}
.klt-card-toggle:hover,.klt-card-toggle:focus{color:#fff;outline:none}
.klt-card-details__body[hidden]{display:none!important}
.klt-card-details__body:not([hidden]){display:block;padding-top:14px;margin-top:14px;border-top:1px solid rgba(255,255,255,.09)}
