/* KP SYSTEM – unified 2026 visual palette, loaded last */
:root{--kp-bg:#101c30;--kp-bg2:#17283e;--kp-surface:#20324a;--kp-border:#38506a;--kp-text:#f0f5fc;--kp-muted:#c4d0df;--kp-accent:#80b8ff;--kp-accent-hover:#acd2ff;--kp-focus:#c5e2ff}
html{scroll-behavior:smooth}
body{color:var(--kp-text);background:radial-gradient(ellipse at 50% 0%,#263c58 0%,transparent 56%),linear-gradient(145deg,var(--kp-bg2),var(--kp-bg));min-height:100vh}
a:hover{color:var(--kp-accent-hover)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--kp-focus);outline-offset:3px}
.hero{padding:clamp(24px,4vw,50px) 16px 26px}
.hero-title,.hero-title_h3,.kp-header h1,.kp-left h2,.footer-title{color:var(--kp-accent)}
.hero-title{font-size:clamp(2.5rem,7vw,5rem);line-height:1.12;overflow:visible}
.hero-title:after{display:none}
.hero-sub{opacity:1;color:var(--kp-muted);font-size:1.05rem}
.hero-btn{color:var(--kp-text);background:var(--kp-surface);border:1px solid var(--kp-border);min-height:48px;height:auto;padding:12px 16px}
.hero-btn:hover{background:#2d4768;border-color:var(--kp-accent);color:#fff}
.portal-card-soft,.prod-card-soft,.nd-card{background:rgba(30,48,71,.88);border:1px solid var(--kp-border);box-shadow:0 10px 32px rgba(0,0,0,.12)}
.portal-card-soft{padding:clamp(26px,3vw,45px) 24px;gap:12px;color:var(--kp-text)}
.portal-card-soft:hover,.prod-card-soft:hover{background:#2b4260;border-color:var(--kp-accent);color:#fff}
.portal-card-soft p,.portal-card-soft .card-text,.nd-meta,.nd-desc{color:var(--kp-muted)}
.icon,.nd-code,.nd-meta strong,.nd-title,.nd-detail,.nd-code_tab{color:var(--kp-accent)}
.arrow-btn{background:#2b486a;border:1px solid #638db8;color:#fff}
.kp-header::before{background:var(--kp-accent)}
.kp-header-left{color:var(--kp-text)}
.kp-icon{background:#335c8c;color:#fff}
.nd-stock.ok{background:#133f34;color:#b3f4db}
.nd-stock.no{background:#672b35;color:#fff}
.nd-image{background:#eef3f9}
.nd-table,.table{--bs-table-color:var(--kp-text);--bs-table-bg:var(--kp-surface);--bs-table-border-color:var(--kp-border);--bs-table-hover-color:#fff;--bs-table-hover-bg:#304965;color:var(--kp-text)}
.nd-table th,.nd-table td{border-color:var(--kp-border)}
.table-hover tbody tr:hover{background:#304965}
.footer-pro{background:#0c1626}
.footer-pro a:hover{color:var(--kp-accent-hover)}
.kp-portal-wrapper{box-shadow:0 16px 38px rgba(0,0,0,.15)}
@media(max-width:768px){.hero-btn{width:100%;max-width:360px}.portal-section-soft{padding:24px 0}.nd-card{padding:20px}.nd-wrap{gap:20px}.nd-image{min-width:0}.nd-left,.nd-left-smoll{min-width:0;max-width:100%}.nd-row{flex-wrap:wrap}.nd-row-style{padding:18px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Paginated catalog */
.catalog-page {min-height:55vh}.catalog-tabs{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.catalog-tab{padding:13px 20px;border-radius:12px;border:1px solid #38506a;background:#20324a;color:#f0f5fc;text-decoration:none;font-weight:650}.catalog-tab:hover,.catalog-tab.active{background:#80b8ff;color:#101c30}.catalog-search{margin-bottom:18px;max-width:720px}.catalog-search label{display:block;margin-bottom:9px}.catalog-search-row{display:flex;gap:12px}.catalog-search-row input{min-width:0}.catalog-search-row button{white-space:nowrap}.catalog-count{margin-bottom:20px}.catalog-card{background:#20324a;border:1px solid #38506a;border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:9px;height:100%;color:#f0f5fc;text-decoration:none;transition:border-color .2s,transform .2s}.catalog-card:hover{border-color:#80b8ff;color:#fff;transform:translateY(-2px)}.catalog-code,.catalog-meta{color:#c4d0df;overflow-wrap:anywhere}.catalog-open{color:#80b8ff;margin-top:auto}.catalog-pages{display:flex;gap:8px;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:28px}.catalog-pages a{display:inline-block;padding:9px 14px;border:1px solid #38506a;border-radius:9px;background:#20324a;color:#f0f5fc;text-decoration:none}.catalog-pages a.active,.catalog-pages a:hover{background:#80b8ff;color:#101c30}@media(max-width:480px){.catalog-search-row{flex-direction:column}.catalog-tab{flex:1;text-align:center}}
