:root,
:root[data-theme='light'] {
--k-tag-geo: #9a5b13;
--k-tag-water: #1d5fd0;
--k-tag-fire: #c2410c;
--k-tag-air: #5b3fc4;
--k-tag-cold: #0b7285;
--k-tag-dry: #8a6d1f;
--k-tag-health: #0f7a5c;
--k-tag-cbrn: #a3195b;
--k-tag-infra: #4b5563;
--k-tag-prep: #1e7a3a;
--k-tag-people: #b4235f;
--k-tag-region: #15327a;
--k-tag-org: #0a1633;
--k-tag-tech: #0b8fa0;
--k-tag-product: #1f5eff;
}
:root[data-theme='dark'] {
--k-tag-geo: #f0b25a;
--k-tag-water: #7fb0ff;
--k-tag-fire: #ff8a4c;
--k-tag-air: #b3a1ff;
--k-tag-cold: #66d9e8;
--k-tag-dry: #e3c565;
--k-tag-health: #5fe0b5;
--k-tag-cbrn: #ff7ab6;
--k-tag-infra: #aab4c3;
--k-tag-prep: #6fdc8c;
--k-tag-people: #ff8fb8;
--k-tag-region: #8db1ff;
--k-tag-org: #d6e0fa;
--k-tag-tech: #4fd6e4;
--k-tag-product: #6f9bff;
}
@media (prefers-color-scheme: dark) {
:root:not([data-theme='light']) {
--k-tag-geo: #f0b25a;
--k-tag-water: #7fb0ff;
--k-tag-fire: #ff8a4c;
--k-tag-air: #b3a1ff;
--k-tag-cold: #66d9e8;
--k-tag-dry: #e3c565;
--k-tag-health: #5fe0b5;
--k-tag-cbrn: #ff7ab6;
--k-tag-infra: #aab4c3;
--k-tag-prep: #6fdc8c;
--k-tag-people: #ff8fb8;
--k-tag-region: #8db1ff;
--k-tag-org: #d6e0fa;
--k-tag-tech: #4fd6e4;
--k-tag-product: #6f9bff;
}
}
.ky-c--geo { --c: var(--k-tag-geo); }
.ky-c--water { --c: var(--k-tag-water); }
.ky-c--fire { --c: var(--k-tag-fire); }
.ky-c--air { --c: var(--k-tag-air); }
.ky-c--cold { --c: var(--k-tag-cold); }
.ky-c--dry { --c: var(--k-tag-dry); }
.ky-c--health { --c: var(--k-tag-health); }
.ky-c--cbrn { --c: var(--k-tag-cbrn); }
.ky-c--infra { --c: var(--k-tag-infra); }
.ky-c--prep { --c: var(--k-tag-prep); }
.ky-c--people { --c: var(--k-tag-people); }
.ky-c--region { --c: var(--k-tag-region); }
.ky-c--org { --c: var(--k-tag-org); }
.ky-c--tech { --c: var(--k-tag-tech); }
.ky-c--product { --c: var(--k-tag-product); }
.ky-dot { display: inline-block; inline-size: 8px; block-size: 8px; border-radius: 50%; background: var(--c, var(--s-brand)); margin-inline-end: 8px; vertical-align: 1px; }
.ky-badge--corr { margin-inline-start: 4px; padding: 2px 8px; font-size: 0.6875rem; color: var(--s-text); background: var(--s-warn-soft); text-transform: none; letter-spacing: 0; }
.ky-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr)); gap: clamp(14px, 2vw, 22px); }
.ky-card { position: relative; display: flex; flex-direction: column; overflow: hidden; border-radius: 24px; background: var(--s-glass); border: 1px solid var(--s-glass-line); box-shadow: var(--s-shadow-1); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); }
.ky-card__media { aspect-ratio: 16 / 9; overflow: hidden; background: var(--s-bg-3); }
.ky-card__media img { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; }
.ky-card__ico { display: grid; place-items: center; block-size: 100%; color: var(--c); background: radial-gradient(120% 120% at 0% 0%, color-mix(in srgb, var(--c) 26%, transparent), transparent 60%), color-mix(in srgb, var(--c) 10%, var(--s-surface)); }
.ky-card__body { display: grid; gap: 8px; align-content: start; padding: 16px 18px 18px; flex: 1; }
.ky-card__kicker { font-size: 0.8125rem; font-weight: 600; color: color-mix(in srgb, var(--c) 80%, var(--s-text)); }
.ky-card__tpl { font-weight: 400; color: var(--s-text-3); }
.ky-card__title { font-size: 1.125rem; line-height: 1.3; letter-spacing: -0.01em; overflow-wrap: anywhere; }
.ky-card__title a { color: var(--s-text); text-decoration: none; }
.ky-card__title a::after { content: ''; position: absolute; inset: 0; border-radius: inherit; }
.ky-card:hover .ky-card__title a, .ky-card__title a:focus-visible { color: var(--s-brand-ink); text-decoration: underline; }
.ky-card:has(a:focus-visible) { outline: 3px solid var(--s-brand); outline-offset: 2px; }
.ky-card__title a:focus-visible { outline: none; }
.ky-card__dek { font-size: 0.9375rem; color: var(--s-text-2); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.ky-card__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; font-size: 0.8125rem; color: var(--s-text-3); }
.ky-card--lead { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); }
.ky-card--lead .ky-card__media { aspect-ratio: auto; min-block-size: 280px; }
.ky-card--lead .ky-card__body { align-content: center; padding: clamp(18px, 3vw, 34px); }
.ky-card--lead .ky-card__title { font-family: var(--k-font-display); font-weight: 800; font-synthesis: none; font-size: clamp(1.5rem, 1.1rem + 1.4vw, 2.25rem); line-height: 1.12; }
.ky-card--lead .ky-card__dek { font-size: 1.0625rem; -webkit-line-clamp: 4; }
.ky-lead { margin-block-end: clamp(14px, 2vw, 22px); }
.ky-tabs ul { display: inline-flex; flex-wrap: wrap; gap: 4px; padding: 4px; list-style: none; border-radius: var(--k-radius-full); background: var(--s-glass); border: 1px solid var(--s-glass-line); }
.ky-tabs a { display: inline-flex; align-items: center; min-block-size: 44px; padding: 0 18px; border-radius: var(--k-radius-full); font-weight: 500; color: var(--s-text-2); text-decoration: none; }
.ky-tabs a:hover { color: var(--s-text); background: var(--s-bg-3); }
.ky-tabs a[aria-current='page'] { color: var(--s-on-brand); background: var(--s-brand); }
@media (forced-colors: active) { .ky-card__title a::after { border: 1px solid CanvasText; } }
@media (prefers-reduced-motion: no-preference) {
.ky-card { transition: transform 0.25s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.25s ease; }
.ky-card:hover { transform: translateY(-3px); box-shadow: var(--s-shadow-2); }
.ky-card__media img { transition: transform 0.6s cubic-bezier(0.2, 0.8, 0.2, 1); }
.ky-card:hover .ky-card__media img { transform: scale(1.03); }
}
.ky-chips { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; padding: 0; margin: 0; }
.ky-chips--l { gap: 10px; }
.ky-chip {
--c: var(--s-brand);
display: inline-flex; align-items: center; gap: 7px; min-block-size: 32px; padding: 4px 12px;
border-radius: var(--k-radius-full); font-size: 0.875rem; font-weight: 500; line-height: 1.2; text-decoration: none;
color: color-mix(in srgb, var(--c) 82%, var(--s-text)); background: color-mix(in srgb, var(--c) 11%, var(--s-surface));
box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--c) 30%, transparent);
}
.ky-chip::before { content: ''; inline-size: 7px; block-size: 7px; border-radius: 50%; background: var(--c); flex: none; }
.ky-chip small { font-size: 0.75rem; color: var(--s-text-3); font-variant-numeric: tabular-nums; }
a.ky-chip:hover { background: color-mix(in srgb, var(--c) 20%, var(--s-surface)); }
.ky-chips--l .ky-chip { min-block-size: 40px; padding: 6px 16px; font-size: 0.9375rem; }
.ky-badge {
display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 10px;
font-size: 0.75rem; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: #fff; background: #0a1633;
}
.ky-badge--soft { color: var(--s-text); background: var(--s-glass-strong); box-shadow: inset 0 0 0 1px var(--s-glass-line); }
.ky-badge--warn { color: #1c1300; background: #f5b83d; }
.ky-av {
display: inline-grid; place-items: center; inline-size: 34px; block-size: 34px; border-radius: 50%; flex: none;
font-size: 0.8125rem; font-weight: 700; color: #fff; background: linear-gradient(135deg, #1f8a3a, #0b8fa0 50%, #1546c9);
box-shadow: 0 0 0 2px var(--s-bg);
}
.ky-av--l { inline-size: 56px; block-size: 56px; font-size: 1.125rem; }
.ky-av--xl { inline-size: 96px; block-size: 96px; font-size: 1.75rem; }
.ky-avs { display: inline-flex; }
.ky-avs .ky-av + .ky-av { margin-inline-start: -10px; }
.ky-note { display: flex; gap: 6px; align-items: baseline; font-size: 0.875rem; color: var(--s-text-3); margin-block-start: 10px; }
.ky-note .k-icon { flex: none; align-self: center; }
.ky-src { display: inline-flex; gap: 6px; align-items: center; font-size: 0.8125rem; color: var(--s-brand-ink); overflow-wrap: anywhere; }
.ky-h { font-family: var(--k-font-display); font-weight: 800; font-synthesis: none; font-size: clamp(1.45rem, 1.2rem + 0.9vw, 1.9rem); line-height: 1.18; letter-spacing: -0.02em; margin-block: 34px 12px; }
h3.ky-h { font-size: 1.3rem; margin-block-start: 26px; }
.ky-sample { border-block-end: 1px solid color-mix(in srgb, var(--s-warn) 35%, transparent); background: repeating-linear-gradient(135deg, color-mix(in srgb, var(--s-warn) 14%, var(--s-bg)) 0 12px, var(--s-bg) 12px 24px); }
.ky-sample p { display: flex; gap: 10px; align-items: center; padding-block: 10px; font-size: 0.875rem; color: var(--s-text-2); }
.ky-sample strong { color: var(--s-warn); letter-spacing: 0.04em; }
.ky-sample .k-icon { color: var(--s-warn); flex: none; }
.ky-wrap { padding-block: clamp(20px, 3vw, 36px) clamp(48px, 7vw, 96px); }
.k-yayin .crumbs { margin-block-end: 18px; }
.k-article__head { display: grid; gap: clamp(18px, 3vw, 32px); align-items: center; margin-block-end: clamp(20px, 3vw, 32px); }
.k-article__headtxt > * + * { margin-block-start: 14px; }
.k-article__kicker { display: flex; flex-wrap: wrap; gap: 8px; }
.k-article__title {
font-family: var(--k-font-display); font-weight: 800; font-synthesis: none; letter-spacing: -0.025em; line-height: 1.08;
font-size: clamp(2rem, 1.2rem + 3vw, 3.25rem); text-wrap: balance; overflow-wrap: anywhere; hyphens: auto;
}
.k-article__dek { font-size: clamp(1.125rem, 1rem + 0.5vw, 1.3125rem); line-height: 1.5; color: var(--s-text-2); max-inline-size: 62ch; }
.k-article__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; font-size: 0.9375rem; color: var(--s-text-3); }
.k-article__meta a { color: inherit; font-weight: 500; }
.ky-byline { display: inline-flex; align-items: center; gap: 10px; }
.ky-dateline { display: inline-flex; gap: 4px; align-items: center; font-weight: 600; text-transform: uppercase; letter-spacing: 0.04em; font-size: 0.8125rem; }
.ky-fig { margin: 0; }
.ky-fig picture, .ky-fig img { display: block; inline-size: 100%; block-size: auto; }
.ky-fig img { border-radius: 24px; background: var(--s-bg-3); }
.ky-fig figcaption { display: flex; flex-wrap: wrap; gap: 4px 12px; margin-block-start: 8px; padding-inline: 4px; font-size: 0.8125rem; color: var(--s-text-3); }
.ky-fig__credit { color: var(--s-text-3); }
.ky-ai { padding: 1px 8px; border-radius: 8px; font-weight: 700; color: var(--s-text); background: var(--s-warn-soft); }
.k-article__hero img { border-radius: 28px; box-shadow: var(--s-shadow-2); aspect-ratio: 16 / 9; object-fit: cover; }
.k-yayin--aurora .k-article__head { grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr); }
.k-yayin--aurora .k-article__headtxt, .k-yayin--compact .k-article__headtxt, .k-yayin--editorial .k-article__headtxt {
padding: clamp(20px, 3vw, 32px); border-radius: 28px; background: var(--s-glass); border: 1px solid var(--s-glass-line); box-shadow: var(--s-shadow-1);
-webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px);
}
.k-yayin--aurora .k-article__head:not(:has(.k-article__hero)) { grid-template-columns: minmax(0, 1fr); max-inline-size: 900px; }
.k-yayin--editorial .k-article__head { grid-template-columns: minmax(0, 1fr); max-inline-size: 920px; }
.k-yayin--editorial .k-article__headtxt { background: none; border: 0; box-shadow: none; padding-inline: 0; -webkit-backdrop-filter: none; backdrop-filter: none; }
.k-yayin--editorial .k-article__title { font-size: clamp(2.3rem, 1.2rem + 4.4vw, 4.25rem); }
.k-yayin--compact .k-article__head { grid-template-columns: minmax(0, 1fr); max-inline-size: 820px; }
.k-yayin--photo .k-article__head { position: relative; grid-template-columns: minmax(0, 1fr); align-items: end; border-radius: 28px; overflow: hidden; box-shadow: var(--s-shadow-2); }
.k-yayin--photo .k-article__hero, .k-yayin--photo .k-article__headtxt { grid-area: 1 / 1; }
.k-yayin--photo .k-article__hero img { aspect-ratio: auto; block-size: clamp(460px, 48vw, 600px); border-radius: 0; box-shadow: none; }
.k-yayin--photo .k-article__hero figcaption { position: absolute; inset-block-start: 12px; inset-inline-end: 14px; margin: 0; padding: 2px 10px; border-radius: 10px; color: #fff; background: rgb(2 6 20 / 0.55); }
.k-yayin--photo .k-article__headtxt { position: relative; z-index: 1; padding: clamp(22px, 4vw, 40px); color: #f3f6fd; background: linear-gradient(0deg, rgb(2 6 20 / 0.92) 0%, rgb(2 6 20 / 0.7) 60%, rgb(2 6 20 / 0) 100%); padding-block-start: clamp(80px, 12vw, 160px); }
.k-yayin--photo .k-article__dek, .k-yayin--photo .k-article__meta { color: rgb(226 232 248 / 0.92); }
.k-yayin--photo .k-article__meta a { color: #fff; }
.k-yayin--photo .k-article__head .ky-chip, .k-yayin--contrast .k-article__head .ky-chip { color: #fff; background: rgb(255 255 255 / 0.14); box-shadow: inset 0 0 0 1px rgb(255 255 255 / 0.3); }
.k-yayin--photo .k-article__head .ky-av, .k-yayin--contrast .k-article__head .ky-av { box-shadow: 0 0 0 2px #0a1633; }
.k-yayin--contrast .k-article__head { grid-template-columns: minmax(0, 1fr) minmax(0, 0.8fr); padding: clamp(20px, 3vw, 34px); border-radius: 28px; color: #f3f6fd; background: linear-gradient(135deg, #0a1633, #15327a); box-shadow: var(--s-shadow-2); }
.k-yayin--contrast .k-article__dek, .k-yayin--contrast .k-article__meta { color: rgb(214 224 250 / 0.9); }
.k-yayin--contrast .k-article__meta a { color: #fff; }
.k-yayin--contrast .k-article__hero img { box-shadow: none; }
.k-yayin--contrast .k-article__hero figcaption, .k-yayin--contrast .ky-fig__credit { color: rgb(214 224 250 / 0.8); }
.k-yayin--contrast .k-article__head .ky-badge--soft { color: #fff; background: rgb(255 255 255 / 0.12); }
.ky-updated { display: flex; align-items: center; gap: 8px; margin-block-end: 18px; padding: 10px 16px; border-radius: 16px; font-size: 0.9375rem; font-weight: 500; color: var(--s-text); background: var(--s-warn-soft); border: 1px solid color-mix(in srgb, var(--s-warn) 35%, transparent); position: sticky; inset-block-start: calc(var(--k-header-h, 72px) + 8px); z-index: 5; }
.ky-updated .k-icon { color: var(--s-warn); }
.k-article__grid { display: grid; grid-template-columns: minmax(0, 68ch) minmax(0, 300px); gap: clamp(28px, 4vw, 56px); align-items: start; justify-content: space-between; }
.k-article__body { font-size: 1.0625rem; line-height: 1.65; }
.k-article__body > * + * { margin-block-start: 20px; }
.k-article__body > p, .k-article__body .ky-list li { color: var(--s-text); }
.k-article__body a { text-underline-offset: 3px; overflow-wrap: anywhere; }
.ky-list { padding-inline-start: 22px; }
.ky-list li + li { margin-block-start: 6px; }
.ky-list li::marker { color: var(--c, var(--s-brand)); }
.k-article__side { position: sticky; inset-block-start: calc(var(--k-header-h, 72px) + 20px); display: grid; gap: 16px; }
.ky-box { padding: 20px 22px; border-radius: 24px; background: var(--s-glass); border: 1px solid var(--s-glass-line); box-shadow: var(--s-shadow-1); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); }
.ky-box__title { display: flex; align-items: center; gap: 10px; margin-block-end: 12px; font-family: var(--k-font-display); font-weight: 800; font-synthesis: none; font-size: 1.25rem; line-height: 1.25; }
.ky-box__title .k-icon { color: var(--c, var(--s-brand-ink)); flex: none; }
.ky-side__title { margin-block-end: 10px; font-size: 0.8125rem; font-weight: 500; letter-spacing: 0.05em; text-transform: uppercase; color: var(--s-text-3); }
.ky-toc ol { list-style: none; padding: 0; display: grid; gap: 2px; counter-reset: toc; }
.ky-toc li { counter-increment: toc; }
.ky-toc a { display: flex; gap: 10px; padding: 6px 0; color: var(--s-text); text-decoration: none; font-size: 0.9375rem; line-height: 1.35; }
.ky-toc a::before { content: counter(toc); flex: none; inline-size: 22px; font-weight: 700; color: var(--s-brand-ink); }
.ky-toc a:hover { color: var(--s-brand-ink); text-decoration: underline; }
.ky-share ul { list-style: none; padding: 0; display: grid; gap: 4px; }
.ky-share a { display: flex; align-items: center; gap: 10px; min-block-size: 40px; color: var(--s-text); text-decoration: none; font-weight: 500; }
.ky-share a:hover { color: var(--s-brand-ink); }
.ky-share__x { display: inline-grid; place-items: center; inline-size: 16px; font-weight: 700; }
.ky-appbox p { margin-block-end: 14px; font-size: 0.9375rem; color: var(--s-text-2); }
.ky-feedlink { display: inline-flex; align-items: center; gap: 8px; font-size: 0.9375rem; font-weight: 500; }
.ky-feedlink a, a.ky-feedlink { display: inline-flex; align-items: center; gap: 8px; min-block-size: 40px; color: var(--s-brand-ink); }
.ky-feedlink .k-icon { color: #e8590c; }
.ky-quote { margin-block: 32px; padding-inline-start: 22px; border-inline-start: 4px solid; border-image: linear-gradient(180deg, var(--s-grad-a), var(--s-grad-b), var(--s-grad-c)) 1; }
.ky-quote blockquote p { font-family: var(--k-font-display); font-weight: 800; font-synthesis: none; font-size: clamp(1.3rem, 1.1rem + 0.8vw, 1.6rem); line-height: 1.35; letter-spacing: -0.01em; }
.ky-quote figcaption { margin-block-start: 10px; font-size: 0.9375rem; color: var(--s-text-3); }
.ky-quote cite { font-style: normal; font-weight: 600; color: var(--s-text-2); }
.ky-callout { padding: 16px 20px; border-radius: 20px; background: var(--s-glass-strong); border: 1px solid var(--s-glass-line); border-inline-start: 5px solid var(--s-brand); }
.ky-callout__label { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-block-end: 6px; font-size: 0.8125rem; letter-spacing: 0.04em; text-transform: uppercase; color: var(--s-text-2); }
.ky-callout__label time { margin-inline-start: auto; text-transform: none; letter-spacing: 0; color: var(--s-text-3); }
.ky-callout--tip { border-inline-start-color: var(--s-safe); }
.ky-callout--caution { border-inline-start-color: var(--s-warn); background: var(--s-warn-soft); }
.ky-callout--official { border-inline-start-color: #0a1633; }
.ky-callout--not_official { border-inline-start-color: var(--s-warn); background: var(--s-warn-soft); }
.ky-callout--not_official .ky-callout__label { color: var(--s-text); }
.ky-callout--not_official .k-icon, .ky-callout--caution .k-icon { color: var(--s-warn); }
.ky-fig--wide, .ky-fig--full { margin-inline: 0; }
.ky-gallery ul { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); gap: 10px; }
.ky-gallery img { display: block; inline-size: 100%; block-size: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 18px; }
.ky-gallery figcaption { margin-block-start: 8px; font-size: 0.8125rem; color: var(--s-text-3); }
.ky-tl ol { list-style: none; padding: 0; margin-block-start: 12px; position: relative; }
.ky-tl ol::before { content: ''; position: absolute; inset-block: 8px; inset-inline-start: 7px; inline-size: 2px; background: var(--s-line-2); }
.ky-tl li { position: relative; display: grid; gap: 4px; padding-inline-start: 32px; padding-block-end: 18px; }
.ky-tl li::before { content: ''; position: absolute; inset-inline-start: 0; inset-block-start: 4px; inline-size: 16px; block-size: 16px; border-radius: 50%; background: var(--s-brand); box-shadow: 0 0 0 4px var(--s-bg); }
.ky-tl li:first-child::before { background: var(--s-warn); }
.ky-tl time { font-size: 0.875rem; font-weight: 700; color: var(--s-brand-ink); }
.ky-tl__label { display: block; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase; color: var(--s-text-3); }
.ky-check ul, .ky-kit ul, .ky-official ul { list-style: none; padding: 0; }
.ky-check li { display: flex; gap: 12px; align-items: flex-start; padding-block: 10px; border-block-end: 1px solid var(--s-line); }
.ky-check li:last-child { border: 0; }
.ky-check .k-icon { color: var(--s-safe); flex: none; margin-block-start: 2px; }
.ky-check small { display: block; font-size: 0.875rem; color: var(--s-text-3); }
.ky-kit li { display: flex; justify-content: space-between; gap: 12px; padding-block: 8px; border-block-end: 1px dashed var(--s-line-2); }
.ky-kit__qty { flex: none; font-size: 0.875rem; font-weight: 600; color: var(--s-text-2); }
.ky-phase { padding: 22px; border-radius: 26px; background: var(--s-glass); border: 1px solid var(--s-glass-line); box-shadow: var(--s-shadow-1); }
.ky-phase__title { display: flex; align-items: center; gap: 12px; margin-block-end: 10px; font-family: var(--k-font-display); font-weight: 800; font-synthesis: none; font-size: 1.5rem; }
.ky-phase__n { display: inline-grid; place-items: center; inline-size: 36px; block-size: 36px; border-radius: 12px; font-size: 1rem; color: #fff; background: color-mix(in srgb, var(--c, var(--s-brand)) 88%, #000); flex: none; }
.ky-phase p { margin-block-end: 10px; color: var(--s-text-2); }
.ky-safety { padding: 22px; border-radius: 26px; background: color-mix(in srgb, var(--c, var(--s-brand)) 9%, var(--s-glass-strong)); border: 1px solid color-mix(in srgb, var(--c, var(--s-brand)) 34%, transparent); }
.ky-safety .ky-box__title { color: color-mix(in srgb, var(--c, var(--s-brand)) 80%, var(--s-text)); }
.ky-official a { display: flex; justify-content: space-between; gap: 12px; align-items: center; padding-block: 12px; border-block-end: 1px solid var(--s-line); color: var(--s-text); text-decoration: none; }
.ky-official li:last-child a { border: 0; }
.ky-official a strong { display: block; }
.ky-official a small { display: block; font-size: 0.875rem; color: var(--s-text-3); }
.ky-official__host { display: inline-flex; align-items: center; gap: 6px; flex: none; font-size: 0.8125rem; color: var(--s-brand-ink); }
.ky-official a:hover strong { color: var(--s-brand-ink); text-decoration: underline; }
.ky-stats { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 170px), 1fr)); gap: 12px; }
.ky-stat { display: grid; gap: 6px; align-content: start; padding: 18px; border-radius: 22px; background: var(--s-glass); border: 1px solid var(--s-glass-line); }
.ky-stat__value { font-family: var(--k-font-display); font-weight: 800; font-synthesis: none; font-size: 2.25rem; line-height: 1.05; color: var(--s-brand-ink); }
.ky-stat__value small { font-size: 1rem; color: var(--s-text-2); }
.ky-stat__label { font-size: 0.9375rem; color: var(--s-text-2); }
.ky-chart { display: grid; gap: 12px; }
.ky-table { max-inline-size: 100%; overflow-x: auto; border-radius: 18px; border: 1px solid var(--s-glass-line); background: var(--s-glass-strong); }
.ky-table:focus-visible { outline: 3px solid var(--s-brand); outline-offset: 2px; }
.ky-table table { inline-size: 100%; border-collapse: collapse; font-size: 0.9375rem; }
.ky-table caption { padding: 12px 14px 4px; text-align: start; font-size: 0.875rem; color: var(--s-text-3); }
.ky-table th, .ky-table td { padding: 10px 14px; text-align: start; border-block-end: 1px solid var(--s-line); vertical-align: top; }
.ky-table thead th { color: var(--s-text-3); font-weight: 600; }
.ky-table tbody tr:last-child > * { border: 0; }
.ky-qa__item { padding-block: 14px; border-block-end: 1px solid var(--s-line); }
.ky-qa__item h3 { font-size: 1.125rem; line-height: 1.35; margin-block-end: 6px; }
.ky-qa__item p { color: var(--s-text-2); }
.ky-person { display: flex; gap: 16px; align-items: center; padding: 18px 20px; border-radius: 24px; background: var(--s-glass); border: 1px solid var(--s-glass-line); }
.ky-person__name { font-weight: 700; font-size: 1.125rem; }
.ky-person__role { color: var(--s-text-3); font-size: 0.9375rem; }
.ky-person img { inline-size: 96px; block-size: 96px; border-radius: 50%; object-fit: cover; }
.ky-event { display: flex; gap: 18px; align-items: flex-start; padding: 20px; border-radius: 24px; background: var(--s-glass); border: 1px solid var(--s-glass-line); box-shadow: var(--s-shadow-1); }
.ky-event__cal { flex: none; inline-size: 78px; overflow: hidden; border-radius: 18px; text-align: center; background: var(--s-surface); border: 1px solid var(--s-line-2); }
.ky-event__cal b { display: block; padding: 3px; font-size: 0.75rem; letter-spacing: 0.05em; text-transform: uppercase; color: #fff; background: #c81e1e; }
.ky-event__cal span { display: block; padding-block: 4px; font-family: var(--k-font-display); font-weight: 800; font-size: 2rem; }
.ky-event dl { display: grid; gap: 6px; margin-block-end: 6px; }
.ky-event dl div { display: grid; grid-template-columns: minmax(0, 110px) minmax(0, 1fr); gap: 10px; }
.ky-event dt { color: var(--s-text-3); font-size: 0.875rem; }
.ky-event .k-btn { margin-block-start: 12px; }
.ky-partners ul { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr)); gap: 12px; }
.ky-partners li { display: grid; gap: 8px; justify-items: center; padding: 14px; border-radius: 20px; background: var(--s-glass-strong); border: 1px dashed var(--s-line-2); font-weight: 600; text-align: center; }
.ky-partners img { display: block; inline-size: 100%; max-inline-size: 220px; block-size: auto; border-radius: 12px; }
.ky-corr { padding: 16px 20px; border-radius: 20px; background: var(--s-glass-strong); border: 1px solid var(--s-glass-line); border-inline-start: 5px solid var(--s-sos); }
.ky-corr p + p { margin-block-start: 8px; }
.ky-corr del { color: var(--s-text-3); }
.ky-corr ins { text-decoration: none; font-weight: 500; }
.ky-corr__k { display: inline-block; min-inline-size: 64px; padding: 1px 8px; border-radius: 8px; font-size: 0.75rem; font-weight: 700; text-transform: uppercase; color: var(--s-text); background: var(--s-bg-3); }
.ky-corr__k--ok { background: var(--s-safe-soft); }
.ky-corr--note { margin-block-end: 22px; }
.ky-digest ol { list-style: none; padding: 0; counter-reset: dig; }
.ky-digest li { counter-increment: dig; display: grid; grid-template-columns: 44px minmax(0, 1fr); column-gap: 12px; padding-block: 14px; border-block-end: 1px solid var(--s-line); }
.ky-digest li::before { content: counter(dig); grid-row: span 2; font-family: var(--k-font-display); font-weight: 800; font-size: 1.75rem; line-height: 1; color: var(--s-brand-ink); }
.ky-digest h3 { font-size: 1.0625rem; line-height: 1.35; }
.ky-digest h3 a { color: var(--s-text); }
.ky-digest p { color: var(--s-text-2); font-size: 0.9375rem; }
.ky-cta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px 20px; padding: 18px 20px; border-radius: 24px; background: color-mix(in srgb, var(--s-brand) 8%, var(--s-glass-strong)); border: 1px solid color-mix(in srgb, var(--s-brand) 24%, transparent); }
.ky-cta p { color: var(--s-text-2); font-size: 0.9375rem; }
.ky-social { display: flex; gap: 14px; align-items: center; padding: 14px 18px; border-radius: 20px; background: var(--s-glass-strong); border: 1px solid var(--s-glass-line); font-size: 0.9375rem; }
.ky-social__x { display: grid; place-items: center; inline-size: 40px; block-size: 40px; border-radius: 12px; flex: none; font-weight: 700; font-size: 1.25rem; color: var(--s-bg); background: var(--s-text); }
.ky-social__ref { font-variant-numeric: tabular-nums; font-weight: 600; }
.ky-social .ky-note { margin: 0; }
.ky-hr { border: 0; block-size: 1px; background: linear-gradient(90deg, transparent, var(--s-line-2), transparent); margin-block: 32px; }
.ky-map .k-btn { margin-block-start: 8px; }
.k-article__foot { display: grid; gap: 22px; max-inline-size: 68ch; margin-block-start: 40px; }
.ky-sources ol { padding-inline-start: 22px; display: grid; gap: 8px; font-size: 0.9375rem; }
.ky-sources small { color: var(--s-text-3); }
.ky-sources .ky-h { margin-block-start: 0; }
.ky-authors { display: grid; gap: 12px; }
.ky-authorbox { display: flex; gap: 16px; align-items: flex-start; }
.ky-authorbox__name { font-weight: 700; font-size: 1.0625rem; }
.ky-authorbox__name a { color: var(--s-text); }
.ky-authorbox__role { font-size: 0.875rem; color: var(--s-text-3); margin-block-end: 6px; }
.ky-authorbox p:last-child { font-size: 0.9375rem; color: var(--s-text-2); }
.ky-feedback { padding: 16px 20px; border-radius: 20px; background: var(--s-bg-2); border: 1px solid var(--s-line); font-size: 0.9375rem; color: var(--s-text-2); }
.ky-feedback a { overflow-wrap: anywhere; }
.ky-listpage { padding-block: 8px clamp(48px, 7vw, 96px); }
.ky-listpage > * + * { margin-block-start: 22px; }
.ky-herobar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 20px; margin-block-start: 26px; }
.ky-chiprow { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; }
.ky-chiprow > span { font-size: 0.8125rem; font-weight: 500; letter-spacing: 0.04em; text-transform: uppercase; color: var(--s-text-3); }
.ky-taginfo { display: grid; gap: 16px; }
.ky-guidebox { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; }
.ky-guidebox p { flex: 1 1 260px; }
.ky-guidebox__ico { display: grid; place-items: center; inline-size: 48px; block-size: 48px; border-radius: 16px; color: #fff; background: color-mix(in srgb, var(--c) 88%, #000); flex: none; }
.ky-taggroup .ky-h { margin-block-start: 8px; }
.ky-empty { display: grid; justify-items: center; gap: 12px; max-inline-size: 560px; margin-inline: auto; padding: clamp(28px, 5vw, 56px) clamp(20px, 4vw, 40px); border-radius: 28px; text-align: center; background: var(--s-glass); border: 1px solid var(--s-glass-line); box-shadow: var(--s-shadow-1); }
.ky-empty__ico { display: grid; place-items: center; inline-size: 64px; block-size: 64px; border-radius: 20px; color: var(--s-brand-ink); background: var(--s-brand-soft); }
.ky-empty__title { font-family: var(--k-font-display); font-weight: 800; font-synthesis: none; font-size: 1.6rem; }
.ky-empty p { color: var(--s-text-2); }
.ky-pager { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin-block-start: 32px; }
.ky-pager ol { display: flex; flex-wrap: wrap; gap: 6px; list-style: none; padding: 0; }
.ky-pager__n { display: inline-grid; place-items: center; min-inline-size: 44px; block-size: 44px; border-radius: 14px; font-weight: 600; color: var(--s-text); text-decoration: none; background: var(--s-glass); border: 1px solid var(--s-glass-line); }
.ky-pager span.ky-pager__n { color: var(--s-on-brand); background: var(--s-brand); border-color: var(--s-brand); }
.ky-pager__step { display: inline-flex; align-items: center; gap: 8px; min-block-size: 44px; font-weight: 500; }
.ky-pager__step--off { min-inline-size: 1px; }
.ky-profile { display: flex; flex-wrap: wrap; gap: 20px 28px; align-items: flex-start; margin-block: 8px 36px; }
.ky-profile > div { flex: 1 1 320px; display: grid; gap: 10px; }
.ky-profile__role { font-weight: 500; color: var(--s-text-2); }
.ky-policy { padding-block: 8px clamp(48px, 7vw, 96px); }
.ky-policy > * + * { margin-block-start: 22px; }
.ky-policy section { scroll-margin-block-start: calc(var(--k-header-h, 72px) + 16px); }
.ky-draft { display: flex; gap: 8px; align-items: center; padding: 10px 14px; border-radius: 14px; font-size: 0.875rem; color: var(--s-text); background: var(--s-warn-soft); }
.ky-corrlist { list-style: none; padding: 0; display: grid; gap: 14px; }
.ky-corrlist__title { font-size: 1.125rem; line-height: 1.35; }
.ky-corrlist p { color: var(--s-text-2); font-size: 0.9375rem; }
.k-article__body [id], .k-yayin section[id] { scroll-margin-block-start: calc(var(--k-header-h, 72px) + 16px); }
.ky-home__head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 18px 32px; margin-block-end: clamp(22px, 3vw, 36px); }
.ky-home__head > div { max-inline-size: 640px; display: grid; gap: 12px; }
.ky-home__empty { display: flex; gap: 10px; align-items: center; padding: 18px 22px; border-radius: 20px; color: var(--s-text-2); background: var(--s-glass); border: 1px solid var(--s-glass-line); }
.ky-home__more { margin-block-start: 26px; }
@media (max-width: 1099px) {
.k-article__grid { grid-template-columns: minmax(0, 1fr); }
.k-article__side { position: static; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); }
}
@media (max-width: 899px) {
.k-yayin--aurora .k-article__head, .k-yayin--contrast .k-article__head { grid-template-columns: minmax(0, 1fr); }
.ky-card--lead { grid-template-columns: minmax(0, 1fr); }
.ky-card--lead .ky-card__media { aspect-ratio: 16 / 9; min-block-size: 0; }
}
@media (max-width: 599px) {
.k-yayin--photo .k-article__hero img { block-size: 520px; }
.ky-event { flex-direction: column; }
.ky-event dl div { grid-template-columns: minmax(0, 1fr); gap: 0; }
.ky-box, .ky-phase, .ky-safety { padding: 18px; }
.ky-tabs a { padding: 0 14px; }
.ky-updated { position: static; }
}
@media print {
.k-article__side, .ky-related, .ky-sample, .ky-feedback { display: none; }
.k-article__grid { grid-template-columns: minmax(0, 1fr); }
.k-yayin--photo .k-article__headtxt, .k-yayin--contrast .k-article__head { color: #000; background: none; }
}
@media (forced-colors: active) {
.ky-chip::before, .ky-dot, .ky-tl li::before { forced-color-adjust: none; background: CanvasText; }
}
@media (prefers-reduced-motion: no-preference) {
.ky-chip, .ky-tabs a, .ky-pager__n { transition: background-color 0.2s ease, color 0.2s ease; }
}
