.kn{padding-bottom:40px}.kn-hero{padding:clamp(24px,4vw,50px);border:1px solid #20c9b050;border-radius:28px;background:radial-gradient(ellipse at 90% 10%,#20c9b016,transparent 60%),var(--surface);margin:26px 0}.kn h1{font-size:clamp(32px,4vw,58px);letter-spacing:-.04em;line-height:1.14;margin:20px 0}.kn-hero>p{font-size:19px;line-height:1.7;max-width:75ch;color:var(--muted)}.kn-status{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:14px;color:var(--muted)}.kn-status a{margin-left:auto}.kn-dot{width:9px;height:9px;border-radius:50%;background:#20c9b0;box-shadow:0 0 16px #20c9b0;animation:kn-pulse 2s infinite}.kn-tabs{display:flex;gap:10px;overflow:auto;padding-bottom:14px}.kn-tabs a{white-space:nowrap;padding:12px 18px;border-radius:99px;border:1px solid var(--line);color:var(--ink);text-decoration:none}.kn-tabs a[aria-current]{background:var(--signal);color:#fff;border-color:var(--signal)}.kn-filters{display:grid;grid-template-columns:2fr 1fr 1.4fr auto;gap:14px;align-items:end;margin:22px 0}.kn-filters label{display:grid;gap:8px;color:var(--muted);font-size:14px}.kn input,.kn select,.kn button{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:13px;min-height:46px;min-width:0}.kn button{cursor:pointer}.kn-filters button{background:var(--signal);color:#fff;font-weight:700}.kn-list-head{display:flex;align-items:center;justify-content:space-between;margin:24px 0;gap:15px}.kn-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.kn-card{padding:26px;border:1px solid var(--line);border-radius:22px;background:var(--surface);display:flex;flex-direction:column;transition:transform .2s,border-color .2s;animation:kn-enter .35s}.kn-card:hover{transform:translateY(-3px);border-color:var(--signal)}.kn-meta{display:flex;justify-content:space-between;gap:14px;font-size:12px;color:var(--muted);flex-wrap:wrap}.kn-meta>span{color:var(--signal);font-weight:700}.kn-card h2{font-size:22px;line-height:1.4;margin:20px 0 14px}.kn-card h2 a{color:var(--ink);text-decoration:none}.kn-card>p{font-size:15px;line-height:1.7;color:var(--muted)}.kn-card-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;color:var(--muted);font-size:12px}.kn-card-foot button{font-size:22px}.kn-grid.is-compact{grid-template-columns:1fr}.kn-grid.is-compact .kn-card{padding:18px 24px}.kn-grid.is-compact .kn-card>p{display:none}.kn-grid.is-compact h2{font-size:21px;margin:10px 0}.kn-pages{display:flex;justify-content:center;align-items:center;gap:22px;margin:35px 0}.kn-about,.kn-empty{margin:35px 0;padding:28px;border:1px solid var(--line);border-radius:22px;background:var(--surface);line-height:1.7}.kn-about summary{cursor:pointer;padding:14px 0}.kn-story{max-width:880px;margin:36px auto}.kn-story h1{font-size:clamp(30px,4vw,52px)}.kn-attribution{font-size:14px;color:var(--muted);padding:16px 0;border-block:1px solid var(--line);line-height:1.7}.kn-story-text{font-size:19px;line-height:1.85;overflow-wrap:anywhere}.kn-story-text p{margin:25px 0}.kn-story-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.kn-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:16px 24px;border-radius:16px;background:var(--surface);border:1px solid var(--signal);z-index:110;box-shadow:0 10px 40px #0003}.kn [hidden]{display:none!important}.kn :focus-visible{outline:3px solid var(--signal);outline-offset:4px}@keyframes kn-pulse{50%{opacity:.45;box-shadow:0 0 5px #20c9b0}}@keyframes kn-enter{from{opacity:.4;transform:translateY(8px)}to{opacity:1;transform:none}}@media(max-width:950px){.kn-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kn-filters{grid-template-columns:1fr 1fr}.kn-filters label:first-child{grid-column:1/-1}}@media(max-width:600px){.kn-grid{grid-template-columns:1fr}.kn-filters{grid-template-columns:1fr}.kn-card{padding:22px}.kn-hero>p{font-size:17px}.kn-pages{gap:12px;font-size:14px}.kn-story-text{font-size:17px}.kn-status a{margin-left:0}}@media(prefers-reduced-motion:reduce){.kn-card,.kn-dot{animation:none;transition:none}}

.kn-card-photo{display:block;margin:-26px -26px 22px;overflow:hidden;border-radius:21px 21px 0 0;aspect-ratio:16/9;background:var(--line)}.kn-card-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}.kn-card:hover .kn-card-photo img{transform:scale(1.025)}.kn-story-photo{margin:26px 0}.kn-story-photo img{display:block;width:100%;height:auto;max-height:700px;object-fit:contain;border-radius:20px;background:var(--surface)}.kn-story-photo figcaption{font-size:12px;color:var(--muted);margin-top:10px}.kn-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:28px 0}.kn-gallery figure{margin:0}.kn-gallery img{display:block;width:100%;height:260px;object-fit:cover;border-radius:16px}.kn-grid.is-compact .kn-card-photo{display:none}@media(max-width:600px){.kn-card-photo{margin:-22px -22px 20px}.kn-gallery{grid-template-columns:1fr}.kn-gallery img{height:auto}}@media(prefers-reduced-motion:reduce){.kn-card-photo img{transition:none}}

.kn .kn-photo-open{display:block;width:100%;padding:0;border:0;background:transparent;border-radius:20px;cursor:zoom-in;overflow:hidden}.kn-lightbox{box-sizing:border-box;width:min(1100px,96vw);max-width:96vw;max-height:94dvh;padding:16px;border:1px solid #35d1cb80;border-radius:20px;background:#0c1522;color:#eef4ff;box-shadow:0 24px 100px #0008}.kn-lightbox::backdrop{background:#030913df;backdrop-filter:blur(6px)}.kn-lightbox-bar,.kn-lightbox-nav{display:flex;align-items:center;justify-content:space-between;gap:12px}.kn-lightbox button{font:inherit;padding:12px 18px;min-height:44px;border:1px solid #34485c;border-radius:12px;background:#17283a;color:#eef4ff;cursor:pointer}.kn-lightbox button:focus-visible{outline:3px solid #35d1cb;outline-offset:3px}.kn-lightbox-image{display:block;width:100%;height:min(68dvh,760px);object-fit:contain;margin:12px 0;touch-action:pan-y pinch-zoom}.kn-lightbox button:disabled{opacity:.4;cursor:default}.kn-lightbox-count{font-size:14px;color:#a9b9cf}@media(max-width:600px){.kn-lightbox{padding:10px;border-radius:16px}.kn-lightbox-image{height:65dvh}.kn-lightbox button{padding:10px 14px}}
