.lpf-kh{--bg:#fff;--panel-bg:#F4F7F5;--surface:#fff;--ink:#0E1714;--muted:#56685F;--line:#E3E9E6;--green:#54B33A;--green-deep:#3C8C28;--green-50:#EDF6E9;--green-line:#CDE6C2;--band:#0E1714;--mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;--sans:"Helvetica Neue",Helvetica,Arial,system-ui,-apple-system,sans-serif;font-family:var(--sans);color:var(--ink);line-height:1.6;box-sizing:border-box}
.lpf-kh *,.lpf-kh *::before,.lpf-kh *::after{box-sizing:border-box}
.lpf-kh h1,.lpf-kh h2,.lpf-kh h3{margin:0;line-height:1.05;letter-spacing:-.03em;font-weight:800;color:var(--ink)}
.lpf-kh p{margin:0}.lpf-kh a{color:inherit;text-decoration:none}
.lpf-kh .wrap{width:100%;max-width:1480px;margin-inline:auto;padding-inline:16px}
.lpf-kh .sec{padding:clamp(40px,5vw,80px) 0}
.lpf-kh button{font-family:var(--sans)}
.lpf-kh .chips{display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start}
.lpf-kh .eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:.74rem;text-transform:uppercase;letter-spacing:.18em;color:var(--green-deep);font-weight:700;margin-bottom:16px}
.lpf-kh .eyebrow::before{content:"";width:22px;height:2px;background:currentColor;display:inline-block}
.lpf-kh .lead{color:var(--muted);font-size:1.12rem;max-width:62ch}
.lpf-kh .btn{display:inline-flex;align-items:center;gap:.5em;padding:.82rem 1.5rem;border-radius:6px;font-weight:700;font-size:.96rem;font-family:var(--sans);cursor:pointer;border:1.5px solid transparent;transition:background .2s,border-color .2s,color .2s,transform .12s}
.lpf-kh .btn:active{transform:scale(.98)}
.lpf-kh .btn-primary{background:var(--green);color:#fff}
.lpf-kh .btn-primary:hover{background:var(--green-deep)}
.lpf-kh .btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.lpf-kh .btn-ghost:hover{border-color:var(--green);color:var(--green-deep)}
.lpf-kh .chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px;align-content:flex-start}
.lpf-kh .chip{font-family:var(--mono);font-size:.76rem;color:var(--green-deep);background:var(--green-50);border:1px solid var(--green-line);border-radius:4px;padding:.34rem .58rem;white-space:nowrap}
.lpf-kh .filterbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.lpf-kh .filterbar button{font-family:var(--mono);font-size:.8rem;padding:.45rem .85rem;border-radius:6px;border:1px solid var(--line);background:#fff;cursor:pointer;color:var(--muted)}
.lpf-kh .filterbar button[aria-pressed="true"]{background:var(--green);color:#fff;border-color:var(--green)}
.lpf-kh .kh-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(56% 80% at 84% -10%,rgba(84,179,58,.22),transparent 70%);pointer-events:none}
.lpf-kh .kh-hero .wrap{position:relative;padding:clamp(54px,7vw,92px) 0}
.lpf-kh .kh-hero .eyebrow{color:#8fdc6f}
.lpf-kh .kh-hero h1{color:#fff;font-size:clamp(2.2rem,5vw,3.5rem);max-width:17ch}
.lpf-kh .kh-hero .lead{color:#c3d2cb;margin:18px 0 26px;max-width:58ch}
.lpf-kh .searchbox{display:flex;align-items:center;gap:10px;background:#fff;border-radius:8px;padding:.72rem .9rem;border:1px solid var(--line);max-width:560px}
.lpf-kh .searchbox input{border:0;outline:0;font-size:1rem;font-family:var(--sans);width:100%;background:transparent;color:var(--ink)}
.lpf-kh .searchbox .mag,.lpf-kh .libsearch .mag{flex:0 0 auto;opacity:.45}
.lpf-kh .searchbox .mag{width:18px;height:18px}
.lpf-kh .libsearch .mag{width:16px;height:16px}
.lpf-kh .askbox{margin-top:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:10px;padding:16px;max-width:560px}
.lpf-kh .askbox label{display:block;font-family:var(--mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:#8fdc6f;margin-bottom:8px}
.lpf-kh .askbox textarea{width:100%;border-radius:6px;border:1px solid rgba(255,255,255,.18);background:rgba(0,0,0,.28);color:#fff;font-family:var(--sans);font-size:.95rem;padding:.6rem .7rem;resize:vertical;min-height:50px}
.lpf-kh .askbox textarea::placeholder{color:#9fb3a8}
.lpf-kh .askrow{display:flex;justify-content:flex-end;margin-top:10px}
.lpf-kh .askresult{margin-top:12px;color:#d7ecd0;font-size:.93rem;display:none;line-height:1.5}
.lpf-kh .askresult b{color:#fff}
.lpf-kh .commonq{margin-top:24px}
.lpf-kh .commonq .lbl{font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:#9fb3a8;margin-bottom:10px}
.lpf-kh .kh-hero .chip{cursor:pointer;background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.16);color:#d7ecd0}
.lpf-kh .kh-hero .chip:hover{background:rgba(255,255,255,.15);color:#fff}
.lpf-kh .tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(232px,100%),1fr));gap:16px;margin-top:8px}
.lpf-kh .tile{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:20px;cursor:pointer;font-family:var(--sans);transition:transform .16s,border-color .16s,box-shadow .16s}
.lpf-kh .tile:hover{transform:translateY(-3px);border-color:var(--green);box-shadow:0 16px 34px rgba(14,40,22,.10)}
.lpf-kh .tile .code{display:inline-block;font-family:var(--mono);font-size:.7rem;letter-spacing:.08em;color:var(--green-deep);background:var(--green-50);border:1px solid var(--green-line);border-radius:4px;padding:.24rem .5rem}
.lpf-kh .tile h3{font-size:1.04rem;margin:14px 0 6px}
.lpf-kh .tile p{color:var(--muted);font-size:.9rem}
.lpf-kh .tile .cnt{display:inline-block;margin-top:12px;font-family:var(--mono);font-size:.74rem;color:var(--muted)}
.lpf-kh #kh-library{background:var(--panel-bg);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.lpf-kh .libhead{display:flex;gap:16px;flex-wrap:wrap;align-items:center;justify-content:space-between}
.lpf-kh .libsearch{display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:.5rem .7rem;min-width:240px}
.lpf-kh .libsearch input{border:0;outline:0;background:transparent;font-size:.95rem;width:100%;font-family:var(--sans);color:var(--ink)}
.lpf-kh .rescount{font-family:var(--mono);font-size:.78rem;color:var(--muted)}
.lpf-kh .filterlabel{font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:20px 0 8px}
.lpf-kh .reslib{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:18px;margin-top:10px}
.lpf-kh .rescard{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden;transition:transform .16s,border-color .16s,box-shadow .16s}
.lpf-kh .rescard:hover{transform:translateY(-3px);border-color:var(--green);box-shadow:0 16px 34px rgba(14,40,22,.10)}
.lpf-kh .resimg{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--panel-bg);display:flex;align-items:center;justify-content:center}
.lpf-kh .resimg img{width:100%;height:100%;object-fit:cover;display:block}
.lpf-kh .typebadge{position:absolute;top:10px;left:10px;font-family:var(--mono);font-size:.66rem;letter-spacing:.05em;text-transform:uppercase;background:rgba(14,23,20,.82);color:#fff;border-radius:5px;padding:.26rem .5rem;z-index:2}
.lpf-kh .playbadge{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:1}
.lpf-kh .playbadge span{width:50px;height:50px;border-radius:50%;background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;color:var(--green-deep);box-shadow:0 6px 18px rgba(0,0,0,.3);padding-left:3px}
.lpf-kh .wppanel{background:linear-gradient(135deg,#11271c,#1d4a2e)}
.lpf-kh .faqpanel{background:var(--green-50);border-bottom:1px solid var(--green-line)}
.lpf-kh .panellabel{font-family:var(--mono);font-size:1.1rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700}
.lpf-kh .wppanel .panellabel{color:#bfe9ad}
.lpf-kh .faqpanel .panellabel{color:var(--green-deep)}
.lpf-kh .resb{padding:16px 18px 18px;display:flex;flex-direction:column;flex:1}
.lpf-kh .resmeta{font-family:var(--mono);font-size:.72rem;color:var(--muted);margin-bottom:8px}
.lpf-kh .resb h3{font-size:1.02rem;line-height:1.24;margin-bottom:8px}
.lpf-kh .resb h3 a:hover{color:var(--green-deep)}
.lpf-kh .resb p{color:var(--muted);font-size:.9rem;flex:1}
.lpf-kh .restags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.lpf-kh .restag{font-family:var(--mono);font-size:.7rem;color:var(--green-deep);background:var(--green-50);border:1px solid var(--green-line);border-radius:4px;padding:.24rem .46rem;cursor:pointer;text-decoration:none}
.lpf-kh .restag:hover{background:var(--green-line)}
.lpf-kh .resact{margin-top:14px;font-family:var(--mono);font-size:.8rem;color:var(--green-deep);font-weight:700;background:none;border:0;cursor:pointer;text-align:left;padding:0;align-self:flex-start}
.lpf-kh .resact:hover{text-decoration:underline}
.lpf-kh .faqans{margin-top:6px;color:var(--muted);font-size:.92rem;line-height:1.55;display:none}
.lpf-kh .faqans.open{display:block}
.lpf-kh .libempty{display:none;padding:34px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:12px;margin-top:10px}
.lpf-kh .libempty b{color:var(--ink)}
.lpf-kh .chip{font-family:var(--mono);font-size:.76rem;border-radius:4px;padding:.34rem .58rem;border:1px solid var(--green-line)}
.lpf-kh .kh-hero .chip{cursor:pointer;background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.16);color:#d7ecd0}
.lpf-kh .askresult a,.lpf-kh .askresult button{color:#fff;text-decoration:underline;background:none;border:0;cursor:pointer;font:inherit}
.lpf-kh .resimg.nopic{background:linear-gradient(135deg,#11271c,#1d4a2e)}
.lpf-kh .resimg.nopic .panellabel{color:#bfe9ad}
.lpf-kh .askband .btns{display:flex;flex-wrap:wrap;gap:12px}
.lpf-kh .lpf-kh-loading{padding:30px;text-align:center;color:var(--muted)}
.lpf-kh .kh-hero .searchbox input{color:#0E1714}
.lpf-kh .kh-hero{position:relative;overflow:hidden;background:var(--band)}
.lpf-kh .askband{background:var(--panel-bg);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.lpf-kh .askband .wrap{display:flex;gap:22px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding-block:clamp(30px,4vw,52px)}
.lpf-kh .askband h2{font-size:clamp(1.5rem,3vw,2rem)}
.lpf-kh .libempty{display:none;padding:34px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:12px;margin-top:10px}
.lpf-kh .libempty b{color:var(--ink)}
.lpf-kh .kh-lib-only #kh-library{border-top:0}
.lpf-kh .kh-hero .wrap{padding-inline:clamp(16px,3vw,32px)}
.lpf-kh .sec .wrap,.lpf-kh .askband .wrap{padding-inline:clamp(16px,3vw,32px)}

.lpf-kh .kh-products{background:var(--surface);border-top:1px solid var(--line)}
.lpf-kh .prodgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:18px}
.lpf-kh .prodimg{background:#fff;border-bottom:1px solid var(--line)}
.lpf-kh .prodimg img{object-fit:contain;padding:14px}

.lpf-kh .prodhead{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;justify-content:space-between}
.lpf-kh .khProdMore{font-family:var(--mono);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--green-deep);background:var(--green-50);border:1.5px solid var(--green-line);border-radius:6px;padding:.7rem 1.1rem;cursor:pointer;transition:background .2s,border-color .2s}
.lpf-kh .khProdMore:hover{background:var(--green-line);border-color:var(--green)}
