:root{
  --bg:#0a0a0f; --surface:#11121a; --surface-2:#161824; --border:#23253a;
  --text:#eef0f6; --muted:#8a8fa6; --primary:#e11d48; --primary-2:#f43f5e;
  --radius:14px; --radius-sm:10px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.kp-container{max-width:1280px;margin:0 auto;padding:0 20px}

/* Header */
.kp-header{position:sticky;top:0;z-index:50;background:rgba(10,10,15,.85);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}
.kp-header__inner{display:flex;align-items:center;gap:24px;padding:14px 20px}
.kp-logo img{height:32px}
.kp-nav{display:flex;gap:18px;flex:1}
.kp-nav a{color:var(--muted);font-size:14px;font-weight:500;transition:color .2s}
.kp-nav a:hover{color:var(--text)}
.kp-search{display:flex;gap:8px}
.kp-search input{background:var(--surface);border:1px solid var(--border);color:var(--text);padding:9px 14px;border-radius:10px;width:240px;font-size:14px}
.kp-search button{background:var(--primary);color:#fff;border:0;border-radius:10px;padding:9px 16px;cursor:pointer;font-weight:600}
@media(max-width:900px){.kp-nav,.kp-search{display:none}}

/* Buttons */
.kp-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;border-radius:10px;font-weight:600;font-size:14px;border:1px solid transparent;cursor:pointer;transition:all .2s;text-decoration:none}
.kp-btn--primary{background:var(--primary);color:#fff}
.kp-btn--primary:hover{background:var(--primary-2)}
.kp-btn--ghost{background:transparent;border-color:var(--border);color:var(--text)}
.kp-btn--ghost:hover{background:var(--surface)}
.kp-btn--block{width:100%}

.kp-badge{display:inline-block;padding:6px 12px;background:rgba(225,29,72,.15);color:var(--primary-2);border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}

/* Hero */
.kp-hero {
    padding: 80px 0 120px; 
    background-image: radial-gradient(1200px 500px at 70% 0%, rgba(225, 29, 72, .18), transparent 60%);
    background-size: cover;
    background-position: center top; 
    background-repeat: no-repeat;
    position: relative;
}
.kp-hero__inner{max-width:720px; position: relative; z-index: 2;}
.kp-hero__title{font-size:52px;line-height:1.1;margin:16px 0;font-weight:800;letter-spacing:-1px}
.kp-hero__desc{color:var(--muted);font-size:17px;line-height:1.6;margin:0 0 28px}
.kp-hero__actions{display:flex;gap:12px;flex-wrap:wrap}

@media(max-width:640px){
    .kp-hero__title{font-size:32px}
    .kp-hero{padding:120px 0 80px}
}

/* Main / Row */
.kp-main{padding:32px 0 64px}
.kp-row{margin:48px 0}
.kp-row__head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:20px}
.kp-row__head h2{margin:0;font-size:24px;font-weight:700}
.kp-row__head a{color:var(--muted);font-size:14px}
.kp-row__head a:hover{color:var(--primary-2)}

/* Grid 5 cols desktop / 2 cols mobile */
.kp-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
@media(max-width:1100px){.kp-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:860px){.kp-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.kp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}

/* Card */
.kp-card {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    overflow: hidden;
    transition: transform .2s, border-color .2s;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
}
.kp-card:hover{transform:translateY(-3px);border-color:#33364f}
.kp-card__poster{position:relative;display:block;aspect-ratio:2/3;overflow:hidden}
.kp-card__poster img{width:100%;height:100%;object-fit:cover}
.kp-card__badge{position:absolute;top:8px;left:8px;background:var(--primary);color:#fff;font-size:11px;font-weight:700;padding:4px 8px;border-radius:6px;letter-spacing:.3px}
.kp-card__rating{position:absolute;top:8px;right:8px;background:rgba(0,0,0,.7);color:#fbbf24;font-size:12px;font-weight:700;padding:4px 8px;border-radius:6px}
.kp-card__body{padding:12px}
.kp-card__title{font-size:14px;margin:0 0 4px;font-weight:600;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.kp-card__meta{color:var(--muted);font-size:12px;display:flex;gap:4px}

/* Collections */
.kp-collections{display:grid;gap:18px}
@media(max-width:860px){.kp-collections{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.kp-collections{grid-template-columns:1fr}}
.kp-collection{position:relative;display:flex;flex-direction:column;justify-content:flex-end;aspect-ratio:16/9;padding:20px;border-radius:var(--radius);background-size:cover;background-position:center;color:#fff;overflow:hidden;transition:transform .2s}
.kp-collection:hover{transform:translateY(-3px)}
.kp-collection__count{font-size:12px;opacity:.8;margin-bottom:6px}
.kp-collection__title{font-size:20px;font-weight:700;margin-bottom:8px}
.kp-collection__cta{font-size:13px;opacity:.9}

/* SEO Block */
.kp-seo{margin:72px 0 0;padding:40px 0 0;border-top:1px solid var(--border)}
.kp-seo__cols{display:grid;grid-template-columns:1fr 1fr;gap:32px;color:var(--muted);font-size:15px;line-height:1.7}
.kp-seo__cols h2{color:var(--text);font-size:22px;margin:0 0 12px}
.kp-seo__cols p{margin:0 0 12px}
@media(max-width:780px){.kp-seo__cols{grid-template-columns:1fr;gap:16px}}

.kp-features{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:32px 0}
@media(max-width:860px){.kp-features{grid-template-columns:repeat(2,minmax(0,1fr))}}
.kp-feature{border:1px solid var(--border);border-radius:var(--radius);padding:20px;background:transparent}
.kp-feature__icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:rgba(225,29,72,.12);color:var(--primary-2);font-size:18px;margin-bottom:12px}
.kp-feature h3{margin:0 0 6px;font-size:15px;font-weight:700}
.kp-feature p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}

.kp-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.kp-tags a{display:inline-block;padding:8px 16px;border:1px solid var(--border);border-radius:999px;font-size:13px;color:var(--muted);transition:all .2s}
.kp-tags a:hover{border-color:var(--primary);color:var(--primary-2);background:rgba(225,29,72,.08)}

/* Footer */
.kp-footer{border-top:1px solid var(--border);background:var(--surface);margin-top:64px}
.kp-footer__inner{display:grid;grid-template-columns:1.2fr 2fr;gap:32px;padding:40px 20px}
.kp-footer__brand img{height:36px;margin-bottom:12px}
.kp-footer__brand p{color:var(--muted);font-size:14px;line-height:1.5;max-width:320px;margin:0}
.kp-footer__cols{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.kp-footer__cols h4{margin:0 0 12px;font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}
.kp-footer__cols a{display:block;color:var(--muted);font-size:14px;padding:4px 0;transition:color .2s}
.kp-footer__cols a:hover{color:var(--text)}
.kp-footer__copy{text-align:center;padding:20px;color:var(--muted);font-size:13px;border-top:1px solid var(--border)}
@media(max-width:780px){.kp-footer__inner{grid-template-columns:1fr;gap:24px}.kp-footer__cols{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.kp-footer__cols{grid-template-columns:repeat(2,1fr)}}

/* Fullstory */
.kp-full{padding:32px 0}
.kp-full__top{display:grid;grid-template-columns:300px 1fr;gap:32px;margin-bottom:32px}
@media(max-width:780px){.kp-full__top{grid-template-columns:1fr;gap:20px}}
.kp-full__poster img{width:100%;border-radius:var(--radius);aspect-ratio:2/3;object-fit:cover}
.kp-full__title{font-size:36px;margin:0 0 12px;font-weight:800;letter-spacing:-.5px}
.kp-full__meta{display:flex;gap:6px;flex-wrap:wrap;color:var(--muted);font-size:14px;margin-bottom:16px}
.kp-full__rating{color:#fbbf24;font-weight:700}
.kp-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}
.kp-chips::before{content:""}
.kp-full__desc{color:var(--muted);font-size:15px;line-height:1.7;margin:0 0 20px}

/* Status buttons (fullstory only) */
.kp-status{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}
.kp-status__btn{background:var(--surface);border:1px solid var(--border);color:var(--text);padding:10px 16px;border-radius:10px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}
.kp-status__btn:hover{border-color:var(--primary)}
.kp-status__btn.is-active{background:var(--primary);border-color:var(--primary);color:#fff}

/* Tabs */
.kp-tabs{margin:32px 0;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
.kp-tabs__nav{display:flex;background:var(--surface);border-bottom:1px solid var(--border);overflow-x:auto}
.kp-tab{flex:1;min-width:max-content;background:transparent;border:0;color:var(--muted);padding:14px 20px;font-size:14px;font-weight:600;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s;white-space:nowrap}
.kp-tab:hover{color:var(--text)}
.kp-tab.is-active{color:var(--text);border-bottom-color:var(--primary);background:var(--surface-2)}
.kp-tab__panel{display:none;padding:5px;background:var(--surface-2);min-height:200px}
.kp-tab__panel.is-active{display:block}
.kp-empty{color:var(--muted);text-align:center;padding:40px;font-size:14px}

/* Auth */
.kp-auth{display:flex;align-items:center;justify-content:center}
.kp-auth__card{width:100%;max-width:420px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:32px}
.kp-auth__card h1{margin:0 0 8px;font-size:24px}
.kp-auth__card p{color:var(--muted);font-size:14px;margin:0 0 20px}
.kp-auth__card label{display:block;margin-bottom:14px;font-size:13px;color:var(--muted)}
.kp-auth__card input[type=text],.kp-auth__card input[type=password]{display:block;width:100%;margin-top:6px;background:var(--surface-2);border:1px solid var(--border);color:var(--text);padding:10px 14px;border-radius:10px;font-size:14px}
.kp-auth__row{display:flex;align-items:center;gap:8px}
.kp-auth__links{display:flex;justify-content:space-between;margin-top:16px;font-size:13px}
.kp-auth__links a{color:var(--primary-2)}

/* Comments */
.kp-comments{margin:48px 0}
.kp-comments h2{font-size:22px;margin-bottom:20px}
.kp-comment{display:flex;gap:14px;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:12px}
.kp-comment__avatar img{width:40px;height:40px;border-radius:50%}
.kp-comment__head{display:flex;gap:12px;align-items:baseline;margin-bottom:6px}
.kp-comment__author{font-weight:700;font-size:14px}
.kp-comment__date{color:var(--muted);font-size:12px}
.kp-comment__text{font-size:14px;line-height:1.5;color:var(--text)}
.kp-comment__actions{margin-top:10px;display:flex;gap:12px;font-size:12px;color:var(--muted)}
.kp-addcomments{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-top:20px}
.kp-addcomments textarea{width:100%;background:var(--surface-2);border:1px solid var(--border);color:var(--text);border-radius:10px;padding:12px;font-family:inherit;font-size:14px;margin:10px 0}

/* Speedbar / Static / Info / 404 / Mylists / User */
.kp-speedbar{padding:16px 0;color:var(--muted);font-size:13px}
.kp-speedbar a{color:var(--primary-2)}
.kp-static{padding:32px 0;max-width:820px}
.kp-static h1{font-size:32px;margin:0 0 16px}
.kp-static__body{color:var(--muted);font-size:15px;line-height:1.7}
.kp-info{padding:14px 18px;border-radius:10px;background:var(--surface);border:1px solid var(--border);margin:16px 0;font-size:14px}
.kp-404{text-align:center;padding:80px 20px}
.kp-404 h1{font-size:96px;margin:0;color:var(--primary)}
.kp-404 p{color:var(--muted);margin:0 0 24px}
.kp-user{padding:32px 0}
.kp-user__head{display:flex;gap:20px;align-items:center;margin-bottom:24px}
.kp-user__head img{width:80px;height:80px;border-radius:50%}
.kp-user__about{color:var(--muted);font-size:14px;line-height:1.6}

/* Mylists */
.kp-mylists{padding:32px 0}
.kp-mylists__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:16px}
.kp-mylists__tabs{display:flex;gap:8px;flex-wrap:wrap}
.kp-mylists__tabs a{padding:8px 16px;border:1px solid var(--border);border-radius:999px;font-size:13px;color:var(--muted)}
.kp-mylists__tabs a.is-active{background:var(--primary);border-color:var(--primary);color:#fff}
.kp-mylists__filter select{background:var(--surface);border:1px solid var(--border);color:var(--text);padding:8px 14px;border-radius:10px;font-size:14px}
.kp-mylists__empty{padding:80px 20px;text-align:center;color:var(--muted)}

/* Pagination */
.kp-pagination{margin:40px 0;display:flex;justify-content:center}
.kp-pagination__inner{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:8px 12px}
.kp-pagination__arrow{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text);font-size:13px;font-weight:600;transition:all .2s}
.kp-pagination__arrow:hover{background:var(--border);color:var(--text)}
.kp-pagination__pages{display:flex;align-items:center;gap:6px}
.kp-pagination__pages>a,.kp-pagination__pages>span{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;border-radius:8px;font-size:14px;font-weight:600;transition:all .2s}
.kp-pagination__pages>a{background:var(--surface-2);color:var(--text)}
.kp-pagination__pages>a:hover{background:var(--border)}
.kp-pagination__pages>span{background:#e11d48;color:#fff;cursor:default}
@media(max-width:560px){.kp-pagination__arrow{padding:8px 10px;font-size:12px}.kp-pagination__pages>a,.kp-pagination__pages>span{min-width:36px;height:36px;font-size:13px}}

/* ===== Listing pages (category / tags / lastnews / search) ===== */
.kp-listing{max-width:1280px;margin:24px auto 64px;padding:0 24px}
.kp-listing__head{margin-bottom:28px;padding:28px 32px;background:linear-gradient(135deg,var(--surface-1) 0%,var(--surface-2) 100%);border:1px solid var(--border);border-radius:18px;position:relative;overflow:hidden}
.kp-listing__head::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(225,29,72,.18),transparent 60%);pointer-events:none}
.kp-listing__title{margin:0;font-size:34px;font-weight:800;letter-spacing:-.02em;position:relative}
.kp-listing__desc{margin:10px 0 0;color:var(--muted);font-size:15px;line-height:1.6;position:relative}
.kp-listing__sort{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:24px;padding:12px 16px;background:var(--surface-1);border:1px solid var(--border);border-radius:12px}
.kp-listing__sort-label{color:var(--muted);font-size:13px;margin-right:4px}
.kp-listing__sort a{padding:6px 14px;border-radius:8px;background:var(--surface-2);color:#fff;font-size:13px;font-weight:500;transition:all .2s}
.kp-listing__sort a:hover{background:var(--primary);color:#fff}
.kp-tags--cloud{padding:24px;background:var(--surface-1);border:1px solid var(--border);border-radius:18px}
.kp-tags--cloud a{font-size:14px;padding:10px 18px}

@media (max-width:768px){
  .kp-listing{padding:0 12px;margin:16px auto 40px}
  .kp-listing__head{padding:20px 18px;border-radius:14px}
  .kp-listing__title{font-size:24px}
  .kp-listing__desc{font-size:14px}
}


/* Chips & badges */
.kp-chip{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:500;background:var(--surface-2);color:var(--muted)}
.kp-chip--accent{background:var(--primary);color:#fff}


.kp-listing__body {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 20px !important;
    width: 100% !important;
    align-items: start !important;
}


.dle-sort-panel, .navigation, .kp-listing__head, .kp-speedbar, .kp-info {
    grid-column: 1 / -1 !important;
	width: 100% !important;
}

.kp-listing__body form#fullsearch {
    display: contents !important;
}


@media (max-width: 1100px) { .kp-listing__body { grid-template-columns: repeat(4, 1fr) !important; } }
@media (max-width: 860px) { .kp-listing__body { grid-template-columns: repeat(3, 1fr) !important; } }
@media (max-width: 640px) { .kp-listing__body { grid-template-columns: repeat(2, 1fr) !important; gap: 12px !important; } }

.kp-listing__body .kp-card {
    width: auto !important;
    max-width: 100% !important;
}

.kp-listing__sort ul,
.kp-listing__sort ol{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}
.kp-listing__sort li{
  margin:0;
  padding:0;
  list-style:none;
}
.kp-listing__sort li::before{content:none}
.kp-listing__sort a,
.kp-listing__sort li > a{
  display:inline-flex;
  align-items:center;
  padding:6px 14px;
  border-radius:8px;
  background:var(--surface-2);
  color:#fff;
  font-size:13px;
  font-weight:500;
  text-decoration:none;
  transition:background .2s,color .2s,border-color .2s;
  border:1px solid transparent;
}
.kp-listing__sort a:hover{
  background:var(--primary);
  color:#fff;
}
.kp-listing__sort a.active,
.kp-listing__sort li.active > a,
.kp-listing__sort strong{
  background:var(--primary);
  color:#fff;
  font-weight:600;
  padding:6px 14px;
  border-radius:8px;
  display:inline-flex;
  font-size:13px;
}

.kp-pagination .navigation,
.kp-listing__body > .navigation{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  justify-content:center;
}
.navigation a,
.navigation span,
.kp-pagination__pages a,
.kp-pagination__pages span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:40px;
  height:40px;
  padding:0 10px;
  border-radius:8px;
  font-size:14px;
  font-weight:600;
  text-decoration:none;
  transition:background .2s,color .2s;
}
.navigation a,
.kp-pagination__pages a{
  background:var(--surface-2);
  color:var(--text);
}
.navigation a:hover,
.kp-pagination__pages a:hover{
  background:var(--primary);
  color:#fff;
}
.navigation span,
.kp-pagination__pages span{
  background:var(--primary);
  color:#fff;
  cursor:default;
}

.kp-listing__body > .navigation,
.kp-listing__body > .kp-pagination,
.kp-listing__body > .kp-listing__sort,
.kp-listing__body > .dle-sort-panel,
.kp-listing__body > .kp-speedbar,
.kp-listing__body > .kp-info,
.kp-listing__body > br{
  grid-column:1 / -1;
}

.kp-listing__head ul{list-style:none;padding:0;margin:0}

/* ============================================================
   login-patch.css — fixes header layout for {login} dropdown
   ============================================================ */

/* Wrapper must be a positioning context so the panel floats above */
.kp-auth{
	position: relative;
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
}

/* === Trigger buttons === */
.kp-auth__trigger{
	display: inline-flex;
	align-items: center;
	gap: 8px;
	height: 38px;
	padding: 0 14px;
	border: 0;
	border-radius: 999px;
	background: var(--kp-accent, #e11d48);
	color: #fff;
	font: inherit;
	font-weight: 600;
	cursor: pointer;
	line-height: 1;
	white-space: nowrap;
	outline: none;
	transition: filter .15s, background .15s;
}
.kp-auth__trigger:hover{ filter: brightness(1.08); }
.kp-auth__trigger:focus-visible{ box-shadow: 0 0 0 2px rgba(229,9,20,.35); }

/* Logged-in user trigger — compact pill with avatar + login */
.kp-auth__trigger--user{
	background: var(--kp-surface-2, rgba(255,255,255,.06));
	color: var(--kp-text, #fff);
	padding: 4px 12px 4px 4px;
	gap: 8px;
	max-width: 200px;
}
.kp-auth__trigger--user:hover{
	background: var(--kp-surface-3, rgba(255,255,255,.1));
	filter: none;
}

.kp-auth__avatar{
	display: inline-block;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	overflow: hidden;
	background: var(--kp-surface-3, rgba(255,255,255,.1));
	flex: 0 0 30px;
}
.kp-auth__avatar img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	border-radius: 50%;
}
.kp-auth__avatar--lg{
	width: 44px;
	height: 44px;
	flex-basis: 44px;
}

/* Login text — never lets the trigger blow up the header */
.kp-auth__name{
	display: inline-block;
	max-width: 130px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	font-size: 14px;
	line-height: 1;
}
.kp-auth__caret{ opacity: .6; flex: 0 0 12px; }

/* === Floating panel (does NOT affect header height) === */
.kp-auth__panel{
	position: absolute;
	top: calc(100% + 10px);
	right: 0;
	z-index: 999;
	min-width: 280px;
	max-width: 320px;
	padding: 16px;
	background: var(--kp-surface, #1a1a1a);
	border: 1px solid var(--kp-border, rgba(255,255,255,.08));
	border-radius: 14px;
	box-shadow: 0 16px 40px rgba(0,0,0,.45);
	color: var(--kp-text, #fff);
	animation: kpAuthIn .15s ease-out;
}
.kp-auth__panel[hidden]{ display: none; }

@keyframes kpAuthIn{
	from { opacity: 0; transform: translateY(-6px); }
	to   { opacity: 1; transform: translateY(0); }
}

/* === Guest form === */
.kp-auth__form{
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.kp-auth__field{
	display: flex;
	flex-direction: column;
	gap: 4px;
	font-size: 12px;
	color: var(--kp-text-muted, rgba(255,255,255,.6));
}
.kp-auth__field input{
	height: 38px;
	padding: 0 12px;
	border-radius: 8px;
	border: 1px solid var(--kp-border, rgba(255,255,255,.12));
	background: var(--kp-surface-2, rgba(255,255,255,.04));
	color: var(--kp-text, #fff);
	font: inherit;
	outline: none;
}
.kp-auth__field input:focus{
	border-color: var(--kp-accent, #e50914);
}
.kp-auth__check{
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	color: var(--kp-text-muted, rgba(255,255,255,.7));
	cursor: pointer;
}
.kp-auth__submit{
	margin-top: 4px;
	height: 40px;
	border: 0;
	border-radius: 8px;
	background: var(--kp-accent, #e50914);
	color: #fff;
	font-weight: 600;
	cursor: pointer;
}
.kp-auth__submit:hover{ filter: brightness(1.08); }

.kp-auth__links{
	display: flex;
	justify-content: space-between;
	gap: 8px;
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px solid var(--kp-border, rgba(255,255,255,.08));
	font-size: 12px;
}
.kp-auth__links a{
	color: var(--kp-text-muted, rgba(255,255,255,.65));
	text-decoration: none;
}
.kp-auth__links a:hover{ color: var(--kp-accent, #e50914); }

/* === Logged-in menu === */
.kp-auth__panel--menu{ padding: 12px; }
.kp-auth__user{
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 8px 8px 12px;
	border-bottom: 1px solid var(--kp-border, rgba(255,255,255,.08));
}
.kp-auth__userinfo{ min-width: 0; }
.kp-auth__userlogin{
	font-weight: 600;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 200px;
}
.kp-auth__usergroup{
	font-size: 12px;
	color: var(--kp-text-muted, rgba(255,255,255,.55));
}
.kp-auth__menu{
	display: flex;
	flex-direction: column;
	padding: 8px 0;
}
.kp-auth__menu a{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 9px 10px;
	border-radius: 8px;
	color: var(--kp-text, #fff);
	text-decoration: none;
	font-size: 14px;
}
.kp-auth__menu a:hover{
	background: var(--kp-surface-2, rgba(255,255,255,.06));
}
.kp-auth__badge{
	min-width: 20px;
	height: 20px;
	padding: 0 6px;
	border-radius: 10px;
	background: var(--kp-accent, #e50914);
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.kp-auth__logout{
	display: block;
	margin-top: 4px;
	padding: 10px;
	border-top: 1px solid var(--kp-border, rgba(255,255,255,.08));
	color: var(--kp-text-muted, rgba(255,255,255,.7));
	text-decoration: none;
	text-align: center;
	font-size: 14px;
}
.kp-auth__logout:hover{ color: var(--kp-accent, #e50914); }

/* === Mobile === */
@media (max-width: 640px){
	.kp-auth__panel{
		position: fixed;
		top: auto;
		right: 8px;
		left: 8px;
		bottom: 8px;
		max-width: none;
		animation: kpAuthInMobile .2s ease-out;
	}
	@keyframes kpAuthInMobile{
		from { opacity: 0; transform: translateY(12px); }
		to   { opacity: 1; transform: translateY(0); }
	}
	.kp-auth__name{ max-width: 90px; }
}
/* ============================================================
   KP AUTH PAGES — registration.tpl / lostpassword.tpl
   ============================================================ */

.kp-auth-page {
	display: flex;
	justify-content: center;
	padding: 40px 20px;
}

.kp-auth-page__inner {
	width: 100%;
	max-width: 480px;
	background: var(--kp-surface, #14171f);
	border: 1px solid var(--kp-border, rgba(255, 255, 255, 0.08));
	border-radius: var(--kp-radius-lg, 16px);
	padding: 32px;
	box-shadow: var(--kp-shadow, 0 12px 40px rgba(0, 0, 0, 0.4));
}

.kp-auth-page__title {
	font-size: 26px;
	font-weight: 700;
	color: var(--kp-text, #fff);
	margin: 0 0 12px;
	letter-spacing: -0.01em;
}

.kp-auth-page__intro {
	color: var(--kp-text-muted, rgba(255, 255, 255, 0.6));
	font-size: 14px;
	line-height: 1.5;
	margin-bottom: 24px;
}

.kp-auth-page__intro a {
	color: var(--kp-accent, #ffb53d);
	text-decoration: none;
}
.kp-auth-page__intro a:hover { text-decoration: underline; }

.kp-auth-page__form {
	list-style: none;
	margin: 0 0 20px;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.kp-auth-page__field {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.kp-auth-page__field label {
	font-size: 13px;
	color: var(--kp-text-muted, rgba(255, 255, 255, 0.65));
	font-weight: 500;
}

.kp-auth-page__field input[type="text"],
.kp-auth-page__field input[type="email"],
.kp-auth-page__field input[type="password"],
.kp-auth-page__field input[type="file"],
.kp-auth-page__field textarea {
	width: 100%;
	padding: 11px 14px;
	background: var(--kp-input-bg, rgba(255, 255, 255, 0.04));
	border: 1px solid var(--kp-border, rgba(255, 255, 255, 0.1));
	border-radius: var(--kp-radius-sm, 10px);
	color: var(--kp-text, #fff);
	font-size: 14px;
	font-family: inherit;
	transition: border-color .15s, background .15s, box-shadow .15s;
	outline: none;
	box-sizing: border-box;
}

.kp-auth-page__field input:focus,
.kp-auth-page__field textarea:focus {
	border-color: var(--kp-accent, #ffb53d);
	background: rgba(255, 255, 255, 0.06);
	box-shadow: 0 0 0 3px rgba(255, 181, 61, 0.15);
}

.kp-auth-page__field textarea { resize: vertical; min-height: 100px; }

.kp-auth-page__check {
	display: flex;
	gap: 8px;
}
.kp-auth-page__check input { flex: 1; }

.kp-auth-page__check-btn {
	padding: 0 14px;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid var(--kp-border, rgba(255, 255, 255, 0.1));
	color: var(--kp-text, #fff);
	border-radius: var(--kp-radius-sm, 10px);
	font-size: 13px;
	cursor: pointer;
	white-space: nowrap;
	transition: background .15s;
}
.kp-auth-page__check-btn:hover { background: rgba(255, 255, 255, 0.1); }

.kp-auth-page__hint {
	font-size: 12px;
	color: var(--kp-text-muted, rgba(255, 255, 255, 0.55));
	min-height: 0;
}
.kp-auth-page__hint:not(:empty) { margin-top: 4px; }

.kp-auth-page__captcha {
	display: flex;
	gap: 10px;
	align-items: center;
}
.kp-auth-page__captcha img {
	border-radius: var(--kp-radius-sm, 10px);
	height: 42px;
}
.kp-auth-page__captcha input { flex: 1; }

.kp-auth-page__submit {
	margin-top: 8px;
}

.kp-auth-page__btn {
	width: 100%;
	padding: 13px 16px;
	background: var(--kp-accent, #ffb53d);
	color: #1a1a1a;
	border: none;
	border-radius: var(--kp-radius-sm, 10px);
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
	transition: filter .15s, transform .05s;
}
.kp-auth-page__btn:hover { filter: brightness(1.08); }
.kp-auth-page__btn:active { transform: translateY(1px); }

.kp-auth-page__foot {
	margin-top: 18px;
	text-align: center;
	font-size: 13px;
	color: var(--kp-text-muted, rgba(255, 255, 255, 0.55));
}
.kp-auth-page__foot a {
	color: var(--kp-accent, #ffb53d);
	text-decoration: none;
}
.kp-auth-page__foot a:hover { text-decoration: underline; }
.kp-auth-page__sep { margin: 0 8px; opacity: .5; }

.kp-auth-page__field--xfields table { width: 100%; border-collapse: collapse; }
.kp-auth-page__field--xfields td { padding: 6px 4px; color: var(--kp-text, #fff); }

@media (max-width: 520px) {
	.kp-auth-page { padding: 20px 12px; }
	.kp-auth-page__inner { padding: 22px; }
	.kp-auth-page__title { font-size: 22px; }
}

.kp-search {
	position: relative;
	display: flex;
	align-items: stretch;
	gap: 8px;
	max-width: 560px;
}
.kp-search__field {
	position: relative;
	flex: 1 1 auto;
	display: flex;
	align-items: center;
}
.kp-search__icon {
	position: absolute;
	left: 12px;
	color: var(--kp-text-muted, #9aa0a6);
	pointer-events: none;
}
.kp-search__input {
	width: 100%;
	height: 40px;
	padding: 0 36px 0 40px;
	background: var(--kp-surface-2, #1b1d22);
	border: 1px solid var(--kp-border, #2a2d34);
	border-radius: 10px;
	color: var(--kp-text, #e8eaed);
	font-size: 14px;
	outline: none;
	transition: border-color .15s, box-shadow .15s;
}
.kp-search__input::placeholder { color: var(--kp-text-muted, #8a8f98); }
.kp-search__input:focus {
	border-color: var(--kp-accent, #ffcc00);
	box-shadow: 0 0 0 3px color-mix(in oklab, var(--kp-accent, #ffcc00) 25%, transparent);
}
.kp-search__clear {
	position: absolute;
	right: 8px;
	width: 24px; height: 24px;
	border: 0; background: transparent;
	color: var(--kp-text-muted, #9aa0a6);
	font-size: 20px; line-height: 1; cursor: pointer;
	border-radius: 6px;
}
.kp-search__clear:hover { background: var(--kp-surface-3, #24262c); color: var(--kp-text, #fff); }

.kp-search__submit {
	height: 40px;
	padding: 0 18px;
	border: 0; border-radius: 10px;
	background: var(--kp-accent, #ffcc00);
	color: var(--kp-accent-contrast, #111);
	font-weight: 600; font-size: 14px; cursor: pointer;
	transition: filter .15s, transform .05s;
}
.kp-search__submit:hover { filter: brightness(1.05); }
.kp-search__submit:active { transform: translateY(1px); }


.kp-search__dropdown {
	position: absolute;
	top: calc(100% + 8px);
	left: 0;
	right: 0;
	z-index: 99999;
	background: var(--kp-surface, #14161a);
	border: 1px solid var(--kp-border, #2a2d34);
	border-radius: 12px;
	box-shadow: 0 18px 48px rgba(0,0,0,.45), 0 10px 30px rgba(0,0,0,0.8);
	overflow: hidden;
	max-height: min(70vh, 560px);
	display: flex;
	flex-direction: column;
}
.kp-search__list {
	overflow-y: auto;
	max-height: calc(70vh - 44px);
}
.kp-search__list::-webkit-scrollbar { width: 8px; }
.kp-search__list::-webkit-scrollbar-thumb {
	background: var(--kp-border, #2a2d34); border-radius: 4px;
}
.kp-search__more {
	display: block;
	padding: 12px 16px;
	text-align: center;
	background: var(--kp-accent, #ffcc00);
	color: var(--kp-accent-contrast, #111);
	font-weight: 600; font-size: 13px;
	text-decoration: none;
}
.kp-search__more:hover { filter: brightness(1.05); }


.kp-sr-item {
	display: grid;
	grid-template-columns: 56px 1fr;
	gap: 12px;
	padding: 10px 12px;
	border-bottom: 1px solid var(--kp-border, #22252b);
	text-decoration: none;
	color: var(--kp-text, #e8eaed);
	transition: background .12s;
}
.kp-sr-item:last-child { border-bottom: 0; }
.kp-sr-item:hover,
.kp-sr-item.is-active { background: var(--kp-surface-2, #1b1d22); }

.kp-sr-item__poster {
	width: 56px; height: 80px;
	border-radius: 6px;
	overflow: hidden;
	background: var(--kp-surface-3, #24262c);
	flex-shrink: 0;
}
.kp-sr-item__poster img { width: 100%; height: 100%; object-fit: cover; display: block; }

.kp-sr-item__title {
	font-weight: 600; font-size: 14px; line-height: 1.3;
	margin-bottom: 4px;
	color: var(--kp-text, #fff);
}
.kp-sr-item__meta {
	font-size: 11px; color: var(--kp-text-muted, #8a8f98);
	margin-bottom: 4px;
	display: flex; gap: 8px;
}
.kp-sr-item__cat { color: var(--kp-accent, #ffcc00); }
.kp-sr-item__desc {
	font-size: 12px; line-height: 1.4;
	color: var(--kp-text-muted, #9aa0a6);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.kp-sr-empty {
	padding: 24px 16px;
	text-align: center;
	color: var(--kp-text-muted, #8a8f98);
	font-size: 13px;
}


.kp-searchpage { max-width: 1200px; margin: 24px auto; padding: 0 16px; }
.kp-searchpage__head { margin-bottom: 16px; }
.kp-searchpage__title { font-size: 22px; font-weight: 700; margin: 0 0 6px; color: var(--kp-text, #fff); }
.kp-searchpage__meta { color: var(--kp-text-muted, #9aa0a6); font-size: 13px; margin: 0; }
.kp-searchpage__form { margin: 16px 0 24px; }
.kp-searchpage__list { display: flex; flex-direction: column; gap: 8px; }
.kp-searchpage__pager { margin-top: 24px; display: flex; justify-content: center; }

@media (max-width: 640px) {
	.kp-search { flex-direction: column; }
	.kp-search__submit { width: 100%; }
	.kp-search__dropdown { left: -8px; right: -8px; }
}

.searchpage{
  background: var(--kp-surface, #141414);
  border: 1px solid var(--kp-border, rgba(255,255,255,.08));
  border-radius: 14px;
  padding: 24px;
  margin: 24px 0;
  color: var(--kp-text, #e8e8e8);
}
.searchpage .box_in{ padding: 0; }
.searchpage h1.title{
  font-size: 24px;
  font-weight: 700;
  margin: 0 0 18px;
  color: var(--kp-text, #fff);
}

.searchtable table{
  width: 100%;
  border-collapse: collapse;
  background: transparent;
}
.searchtable td.search{
  padding: 8px;
  background: transparent;
  vertical-align: top;
  color: var(--kp-text, #e8e8e8);
}

.searchtable input[type="text"],
.searchtable input[type="search"],
.searchtable select,
.searchtable textarea{
  width: 100%;
  background: var(--kp-bg, #0e0e0e);
  border: 1px solid var(--kp-border, rgba(255,255,255,.12));
  color: var(--kp-text, #fff);
  border-radius: 10px;
  padding: 10px 12px;
  font: inherit;
  outline: none;
  transition: border-color .15s, box-shadow .15s;
}
.searchtable input[type="text"]:focus,
.searchtable input[type="search"]:focus,
.searchtable select:focus,
.searchtable textarea:focus{
  border-color: var(--kp-accent, #ff5b2e);
  box-shadow: 0 0 0 3px color-mix(in oklab, var(--kp-accent, #ff5b2e) 25%, transparent);
}

.searchtable input[type="checkbox"],
.searchtable input[type="radio"]{ accent-color: var(--kp-accent, #ff5b2e); margin-right: 6px; }
.searchtable label{ color: var(--kp-text-muted, #b8b8b8); margin-right: 10px; }

/* Fieldset*/
.searchtable fieldset{
  border: 1px solid var(--kp-border, rgba(255,255,255,.1));
  border-radius: 12px;
  padding: 12px 14px !important;
  background: color-mix(in oklab, var(--kp-surface, #141414) 60%, transparent);
}
.searchtable legend{
  padding: 0 8px;
  color: var(--kp-text, #fff);
  font-weight: 600;
  font-size: 13px;
  letter-spacing: .02em;
}

.searchtable input.bbcodes,
.bbcodes{
  background: var(--kp-accent, #ff5b2e);
  color: #fff;
  border: 0;
  border-radius: 10px;
  padding: 10px 18px;
  font-weight: 600;
  cursor: pointer;
  transition: transform .1s, filter .15s, background .15s;
}
.searchtable input.bbcodes:hover,
.bbcodes:hover{ filter: brightness(1.1); }
.searchtable input.bbcodes:active{ transform: translateY(1px); }
.searchtable input[name="doclear"].bbcodes,
.searchtable input[name="doreset"].bbcodes{
  background: transparent;
  color: var(--kp-text, #fff);
  border: 1px solid var(--kp-border, rgba(255,255,255,.18));
}

.search_result_num{
  margin-top: 14px;
  padding: 10px 14px;
  border-radius: 10px;
  background: color-mix(in oklab, var(--kp-accent, #ff5b2e) 12%, transparent);
  color: var(--kp-text, #fff);
  font-size: 14px;
}

.searchpage + .story,
.story.searchpage ~ .story{ margin-top: 14px; }

.story .title a{ color: var(--kp-text, #fff); }
.story .title a:hover{ color: var(--kp-accent, #ff5b2e); }
.story .text{ color: var(--kp-text-muted, #bdbdbd); line-height: 1.55; }
.story .meta{
  display: flex; justify-content: space-between; gap: 12px;
  padding-top: 10px; margin-top: 10px;
  border-top: 1px solid var(--kp-border, rgba(255,255,255,.08));
  font-size: 13px; color: var(--kp-text-muted, #9a9a9a);
}
.story .meta ul{ list-style: none; padding: 0; margin: 0; display: flex; gap: 14px; }
.story .meta a{ color: var(--kp-text, #ddd); }
.story .meta a:hover{ color: var(--kp-accent, #ff5b2e); }

/* fastsearchresult.tpl) */
.kp-search__dropdown a{
  display: block;
  padding: 10px 14px;
  text-decoration: none;
  color: var(--kp-text, #fff);
  border-bottom: 1px solid var(--kp-border, rgba(255,255,255,.06));
  transition: background .12s;
}
.kp-search__dropdown a:last-child{ border-bottom: 0; }
.kp-search__dropdown a:hover{ background: color-mix(in oklab, var(--kp-accent, #ff5b2e) 14%, transparent); }
.kp-search__dropdown .searchheading{
  display: block;
  font-weight: 600;
  margin-bottom: 2px;
  color: var(--kp-text, #fff);
}
.kp-search__dropdown a span:last-child{
  display: block;
  font-size: 12px;
  color: var(--kp-text-muted, #9a9a9a);
  line-height: 1.4;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
@media (max-width: 720px){
  .searchpage{ padding: 16px; }
  .searchtable table, .searchtable tr, .searchtable td{ display: block; width: 100%; }
  .searchtable td.search[colspan]{ padding-top: 12px; }
}

.searchpage .searchtable > table,
.searchpage .searchtable table table{ border-collapse: separate; border-spacing: 0; }
.searchpage .searchtable table{ width: 100% !important; }
.searchpage .searchtable td.search{ padding: 8px; vertical-align: top; }

.searchpage fieldset{
	padding: 14px 16px;
	margin-bottom: 14px !important;
	background: color-mix(in oklab, var(--kp-surface, #141414) 70%, transparent);
}
.searchpage fieldset legend{
	padding: 2px 10px;
	font-weight: 600;
	color: var(--kp-text, #fff);
	background: var(--kp-surface, #141414);
	border: 1px solid var(--kp-border, rgba(255,255,255,.1));
	border-radius: 8px;
}

.searchpage input[type="text"],
.searchpage input[type="search"],
.searchpage input[type="number"],
.searchpage select,
.searchpage textarea{
	width: 100%;
	box-sizing: border-box;
	padding: 10px 12px;
	color: var(--kp-text, #fff);
}
.searchpage select[multiple]{ min-height: 160px; }
.searchpage label{ display: inline-flex; align-items: center; gap: 6px; margin-right: 12px; color: var(--kp-text-muted, #bdbdbd); }


.searchpage input.bbcodes{
	padding: 10px 18px;
	font-weight: 600;
	cursor: pointer;
	border: 0;
	transition: filter .15s ease;
}
.searchpage input.bbcodes:hover{ filter: brightness(1.1); }
.searchpage input[name="doclear"],
.searchpage input[name="doreset"]{
	background: transparent;
	border: 1px solid var(--kp-border, rgba(255,255,255,.18));
	color: var(--kp-text, #fff);
}

@media (max-width: 900px){
	.searchpage .searchtable table tr,
	.searchpage .searchtable table td{ display: block !important; width: 100% !important; }
}
.kp-listing__body .searchpage:has(.searchpage__simple){
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 14px;
    background: #15171c;
    border-radius: 12px;
    box-sizing: border-box;
}
.kp-listing__body .searchpage:has(.searchpage__simple) .title{
    font-size: 16px;
    margin: 0 0 10px 0;
}
.kp-listing__body .searchpage:has(.searchpage__simple) .searchtable input[type="text"],
.kp-listing__body .searchpage:has(.searchpage__simple) .searchtable input[type="search"]{
    width: 100%;
    box-sizing: border-box;
    padding: 8px 10px;
    background: #0f1115;
    border: 1px solid #2a2d35;
    border-radius: 8px;
    color: #e7e7e7;
}
.kp-listing__body .searchpage:has(.searchpage__simple) .bbcodes{
    padding: 8px 12px;
    background: #ff8a00;
    color: #111;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    font-weight: 600;
}
.kp-listing__body .searchpage:has(.searchpage__simple) .bbcodes:hover{ background:#ffa130; }
.kp-listing__body .searchpage:has(.searchpage__extended){
    grid-column: 1 / -1 !important;
    flex: 1 1 100% !important;
    width: 100%;
    max-width: 100%;
    margin: 0 0 24px 0;
    padding: 20px 24px;
    background: #15171c;
    border-radius: 14px;
    box-sizing: border-box;
    order: -1; 
}
.kp-listing__body .searchpage:has(.searchpage__extended) .title{
    font-size: 20px;
    margin: 0 0 16px 0;
}

.kp-listing__body .searchpage:has(.searchpage__extended) .searchtable > table{
    width: 100%;
}
.kp-listing__body .searchpage:has(.searchpage__extended) fieldset{
    border: 1px solid #2a2d35;
    border-radius: 10px;
    padding: 12px 14px;
    margin: 0 0 12px 0;
    background: #1a1d23;
}
.kp-listing__body .searchpage:has(.searchpage__extended) legend{
    color: #ff8a00;
    font-weight: 600;
    padding: 0 6px;
}

.kp-listing__body .searchpage:has(.searchpage__extended) input[type="text"],
.kp-listing__body .searchpage:has(.searchpage__extended) input[type="search"],
.kp-listing__body .searchpage:has(.searchpage__extended) input[type="number"],
.kp-listing__body .searchpage:has(.searchpage__extended) select,
.kp-listing__body .searchpage:has(.searchpage__extended) textarea{
    width: 100%;
    box-sizing: border-box;
    padding: 8px 10px;
    background: #0f1115;
    border: 1px solid #2a2d35;
    border-radius: 8px;
    color: #e7e7e7;
}
.kp-listing__body .searchpage:has(.searchpage__extended) select[multiple]{
    min-height: 140px;
}

.kp-listing__body .searchpage:has(.searchpage__extended) input.bbcodes{
    padding: 10px 18px;
    background: #ff8a00;
    color: #111;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    font-weight: 600;
}
.kp-listing__body .searchpage:has(.searchpage__extended) input.bbcodes:hover{ background:#ffa130; }
.kp-listing__body .searchpage:has(.searchpage__extended) input[name="doclear"],
.kp-listing__body .searchpage:has(.searchpage__extended) input[name="doreset"]{
    background: #2a2d35;
    color: #e7e7e7;
}

.kp-listing__body{
    align-items: start;
    grid-auto-rows: max-content;
}

@media (max-width: 900px){
    .kp-listing__body .searchpage:has(.searchpage__extended){
        padding: 14px;
    }
    .kp-listing__body .searchpage:has(.searchpage__extended) table,
    .kp-listing__body .searchpage:has(.searchpage__extended) tbody,
    .kp-listing__body .searchpage:has(.searchpage__extended) tr,
    .kp-listing__body .searchpage:has(.searchpage__extended) td{
        display: block;
        width: 100% !important;
    }
}
body > #searchsuggestions {
    position: absolute !important;
    z-index: 2147483647 !important; 
    transform: translateZ(0) !important;
    background: #14161a !important;
    width: 450px !important;
    border: 1px solid #2a2d34 !important;
    border-radius: 12px !important;
    box-shadow: 0 25px 60px rgba(0,0,0,0.9) !important;
}

#searchsuggestions span.searchheading { color: #5ea4ff !important; font-weight: bold; }
#searchsuggestions a { color: #fff !important; }


.kp-listing__body > form#fullsearch {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin-bottom: 30px !important;
}
/* --- Сетка для новой отдельной страницы поиска --- */
.kp-search-page-wrapper {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 20px !important;
    width: 100% !important;
    align-items: start !important;
}

/* Форму расширенного поиска внутри обёртки выносим на все 5 колонок */
.kp-search-page-wrapper > form#fullsearch {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin-bottom: 30px !important;
}

/* Адаптив для поиска (копируем логику из твоего основного листинга) */
@media (max-width: 1100px) { .kp-search-page-wrapper { grid-template-columns: repeat(4, 1fr) !important; } }
@media (max-width: 860px) { .kp-search-page-wrapper { grid-template-columns: repeat(3, 1fr) !important; } }
@media (max-width: 640px) { .kp-search-page-wrapper { grid-template-columns: repeat(2, 1fr) !important; gap: 12px !important; } }

/* ============================================================
   ШАПКА ТЕМАТИЧЕСКОЙ ПОДБОРКИ (Растягиваем на все 5 колонок)
   ============================================================ */

/* 1. Заставляем контейнер шапки занять всю ширину сетки над фильмами */
.kp-listing__body > :not(.kp-card):not(form) {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin-bottom: 35px !important;
    background: #14161b !important;
    border: 1px solid #22252b !important;
    border-radius: 16px !important;
    padding: 28px !important;
    box-sizing: border-box !important;
}

/* 2. Делаем внутри шапки премиальный горизонтальный макет (Постер слева, Текст справа) */
.kp-listing__body > :not(.kp-card):not(form) {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 30px !important;
}

/* Ограничиваем ширину главного постера подборки, чтобы он не раздувался */
.kp-listing__body > :not(.kp-card):not(form) img {
    width: 220px !important;
    height: auto !important;
    object-fit: cover !important;
    border-radius: 12px !important;
    flex-shrink: 0 !important;
    box-shadow: 0 10px 25px rgba(0,0,0,0.6) !important;
}

/* Оформление текстового блока справа */
.kp-listing__body > :not(.kp-card):not(form) h1 {
    font-size: 28px !important;
    color: #fff !important;
    margin: 0 0 12px 0 !important;
    font-weight: 800 !important;
}

.kp-listing__body > :not(.kp-card):not(form) p,
.kp-listing__body > :not(.kp-card):not(form) div {
    color: #9aa0a6 !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

/* Адаптив для мобильных телефонов (перестраиваем шапку обратно в столбик) */
@media (max-width: 768px) {
    .kp-listing__body > :not(.kp-card):not(form) {
        flex-direction: column !important;
        padding: 20px !important;
        gap: 20px !important;
    }
    .kp-listing__body > :not(.kp-card):not(form) img {
        width: 100% !important;
        max-width: 260px !important;
    }
}
/* Стили модуля «Подборки» */
.podborki-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px;margin:20px 0}
.podborka-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden;transition:.2s}
.podborka-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.08)}
.podborka-card__img{position:relative;display:block}
.podborka-card__img img{width:100%;height:160px;object-fit:cover;display:block}
.podborka-card__count{position:absolute;top:8px;right:8px;background:rgba(0,0,0,.7);color:#fff;padding:2px 8px;border-radius:12px;font-size:12px}
.podborka-card__title{display:block;padding:10px 12px 4px;font-weight:600;color:#111;text-decoration:none}
.podborka-card__descr{padding:0 12px 12px;color:#666;font-size:13px;line-height:1.4}

.podborka-info{margin-bottom:24px}
.podborka-info__title{font-size:26px;border:2px solid #e94560;padding:6px 10px;display:inline-block}
.podborka-info__title sup{font-size:14px;color:#888;margin-left:6px}
.podborka-info__image img{max-width:100%;border-radius:8px;margin:12px 0}
.podborka-info__descr{color:#444;line-height:1.6}
.podborka-info__heading{font-size:20px;margin-top:18px}

.news-podborki,.news-podborki-block{border:1px solid #e5e7eb;padding:10px 12px;border-radius:6px;margin:12px 0;background:#fafafa;font-size:13px}
.news-podborki a,.news-podborki-block a{color:#2563eb;text-decoration:none}

.podborka-embed{border:1px solid #e5e7eb;border-radius:8px;padding:14px;margin:16px 0}
.podborka-embed__header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}
.podborka-embed__header .count{color:#888;font-size:12px}
.podborka-embed__item{padding:4px 0;border-bottom:1px dashed #eee;display:flex;justify-content:space-between}
.podborka-embed__item .date{color:#999;font-size:12px}