/* Стилове за „Добави в календара" (/kalendar). Глобален файл — само тук.
   Токени и бутони .btn идват от tokens.css. */

.kal .crumb{display:flex;align-items:center;gap:9px;font-size:.84rem;font-weight:600;color:var(--muted);padding:22px 0 0;flex-wrap:wrap}
.kal .crumb a{color:var(--accent-deep);font-weight:700}
[data-theme="dark"] .kal .crumb a{color:var(--accent)}
.kal .crumb a:hover{text-decoration:underline}
.kal .crumb .sep{color:var(--faint)}

/* HERO */
.phero{padding:30px 0 8px;text-align:center;position:relative}
.phero::before{content:"";position:absolute;inset:-10% 0 auto;height:300px;z-index:0;background:radial-gradient(ellipse 44% 60% at 50% 12%,rgba(242,166,90,.2),transparent 62%);pointer-events:none}
.phero>*{position:relative;z-index:1}
.phero .eyebrow{font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-deep);margin-bottom:14px;display:inline-flex;align-items:center;gap:10px}
[data-theme="dark"] .phero .eyebrow{color:var(--accent)}
.phero .eyebrow::before,.phero .eyebrow::after{content:"";width:24px;height:2px;background:var(--accent);border-radius:2px;opacity:.5}
.phero h1{font-family:var(--font-display);font-weight:800;letter-spacing:-.03em;line-height:1.0;font-size:clamp(2.3rem,5.6vw,4rem);max-width:18ch;margin:0 auto;text-wrap:balance}
.phero h1 .grad{background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.phero .lead{color:var(--muted);font-size:clamp(1.04rem,2.2vw,1.22rem);font-weight:500;max-width:54ch;margin:18px auto 0;text-wrap:pretty}
.phero .lead b{color:var(--text);font-weight:700}

/* SCOPE TABS */
.scope{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:28px}
.scope button{font-size:.88rem;font-weight:700;padding:11px 20px;border-radius:var(--r-full);background:var(--surface);border:1px solid var(--border);color:var(--muted);transition:var(--t)}
.scope button:hover{border-color:var(--border-strong);color:var(--text)}
.scope button.active{background:var(--accent);color:#fff;border-color:transparent;box-shadow:0 4px 14px rgba(194,90,62,.34)}

/* DOWNLOAD */
.dl{display:grid;grid-template-columns:1fr auto;gap:22px;align-items:center;background:linear-gradient(150deg,color-mix(in srgb,var(--accent) 13%,var(--surface)),var(--surface));border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));border-radius:var(--r-lg);padding:26px 30px;box-shadow:var(--shadow-lg);margin-top:24px}
@media(max-width:680px){.dl{grid-template-columns:1fr;text-align:center}}
.dl .dl-t{font-family:var(--font-display);font-weight:700;font-size:1.3rem;letter-spacing:-.01em}
.dl .dl-s{font-size:.92rem;font-weight:600;color:var(--muted);margin-top:5px}
.dl .dl-s b{color:var(--accent-deep)}
[data-theme="dark"] .dl .dl-s b{color:var(--amber)}
.dl-actions{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:680px){.dl-actions{justify-content:center}}
.btn-ghost.done{background:var(--green);color:#fff;border-color:transparent}

/* LIST */
.kal .sec{padding:34px 0}
.kal .sec-head{margin-bottom:18px}
.kal .sec-head h2{font-family:var(--font-display);font-weight:700;font-size:clamp(1.4rem,3vw,1.9rem);letter-spacing:-.02em}
.kal .sec-head p{color:var(--muted);font-size:.94rem;margin-top:6px}
.cal-list{display:flex;flex-direction:column;gap:10px}
.grp-label{font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin:18px 0 4px;display:flex;align-items:center;gap:9px}
.grp-label::before{content:"";width:18px;height:2px;background:var(--accent);border-radius:2px}
.item{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:14px 20px;box-shadow:var(--shadow);transition:var(--t)}
.item:hover{transform:translateX(3px);box-shadow:var(--shadow-lg)}
.item .idate{text-align:center;flex:0 0 auto;min-width:56px}
.item .idate .dnum{font-family:var(--font-display);font-weight:800;font-size:1.35rem;line-height:.95;color:var(--accent-deep)}
[data-theme="dark"] .item .idate .dnum{color:var(--accent)}
.item .idate .dmon{font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--faint);margin-top:2px}
.item.range .idate .dnum{font-size:1rem;line-height:1.1}
.item .iname{min-width:0}
.item .iname b{font-weight:700;font-size:1rem;display:flex;align-items:center;gap:8px}
.item .iname span{font-size:.84rem;color:var(--muted);font-weight:600}
.item .gcal{flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;font-size:.8rem;font-weight:700;color:var(--blue);background:color-mix(in srgb,var(--blue) 12%,transparent);padding:8px 14px;border-radius:var(--r-full);transition:var(--t);white-space:nowrap}
[data-theme="dark"] .item .gcal{color:#7fa8cc}
.item .gcal:hover{transform:translateY(-1px);background:color-mix(in srgb,var(--blue) 20%,transparent)}
@media(max-width:600px){.item{grid-template-columns:auto 1fr;gap:12px}.item .gcal{grid-column:2;justify-self:start}}

/* HOW */
.how{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:8px}
@media(max-width:760px){.how{grid-template-columns:1fr}}
.howc{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:20px 22px;box-shadow:var(--shadow)}
.howc .he{font-size:1.6rem}
.howc h4{font-family:var(--font-display);font-weight:700;font-size:1.02rem;margin:8px 0 6px}
.howc p{font-size:.88rem;font-weight:500;color:var(--muted);text-wrap:pretty;line-height:1.5}
.howc p b{color:var(--text);font-weight:700}

/* TOAST */
.toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%) translateY(20px);background:var(--text);color:var(--bg);font-size:.86rem;font-weight:700;padding:12px 22px;border-radius:var(--r-full);box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;transition:var(--t);z-index:70}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
