/* Public landing */
.lp{min-height:100vh;background:var(--bg)}
.lp-w{max-width:1120px;margin:0 auto;padding:0 32px;width:100%}
.lp code{font-family:var(--mono);font-size:.88em;padding:1px 5px;border-radius:3px;background:var(--s2);border:1px solid var(--bd)}

/* header */
.lp-top{position:sticky;top:0;z-index:40;background:var(--bg);border-bottom:1px solid transparent}
.lp-top.scrolled{border-bottom-color:var(--bd)}
.lp-top-in{display:flex;align-items:center;gap:28px;height:60px}
.lp-brand{padding:0!important}
.lp-nav{display:flex;gap:22px;flex:1}
.lp-nav a{color:var(--tx2);font-size:14px;padding:4px 0;border-bottom:1px solid transparent}
.lp-nav a:hover{color:var(--tx)}
.lp-nav a.on{color:var(--tx);border-bottom-color:var(--tx)}
.lp-act{gap:8px;margin-left:auto}

/* hero */
.lp-hero{padding:72px 0 64px;border-bottom:1px solid var(--bd)}
.lp-hero-in{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:56px;align-items:start}
.lp-h1{font-size:44px;line-height:1.12;letter-spacing:-.022em;font-weight:600;margin:0 0 20px;max-width:560px}
.lp-lead{font-size:17px;line-height:1.6;color:var(--tx2);margin:0 0 28px;max-width:540px}
.lp-cta{gap:20px}
.btn.lg{height:42px;padding:0 18px;font-size:15px}
.lp-more{color:var(--link);font-weight:500;font-size:14.5px}
.lp-more:hover{text-decoration:underline;text-underline-offset:3px}
.lp-more::after{content:" →"}
.lp-facts{display:flex;gap:0;margin:40px 0 0;border-top:1px solid var(--bd);max-width:540px}
.lp-facts>div{flex:1;padding:14px 16px 0 0}
.lp-facts>div+div{padding-left:16px;border-left:1px solid var(--bd)}
.lp-facts dt{font-size:12.5px;color:var(--tx3);margin-bottom:4px}
.lp-facts dd{margin:0;font-size:17px;font-weight:600}

/* request panel */
.lp-req{border:1px solid var(--bd);border-radius:var(--r-md);background:var(--s1);overflow:hidden;font-family:var(--mono);font-size:12.5px}
.lp-req-h{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;border-bottom:1px solid var(--bd);background:var(--s2)}
.lp-req-st{color:var(--ok);font-weight:500}
.lp-req-b{margin:0;padding:14px 16px;line-height:1.65;white-space:pre-wrap;word-break:break-word;color:var(--tx)}
.lp-req-sep{padding:6px 16px;border-top:1px dashed var(--bd);font-size:11.5px}
.lp-req-f{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-top:1px solid var(--bd);font-family:var(--font);font-size:13.5px;color:var(--tx2)}
.lp-req-f b{color:var(--tx);font-family:var(--mono);font-size:14px}

/* sections */
.lp-sec{padding:72px 0;border-bottom:1px solid var(--bd)}
.lp-sh{margin-bottom:28px;max-width:640px}
.lp-sh h2{font-size:28px;letter-spacing:-.015em;margin:0 0 10px}
.lp-sh p{margin:0;color:var(--tx2);font-size:15.5px;line-height:1.6}
.lp-sh-row{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;max-width:none}
.lp-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:56px;align-items:start}
.lp-list{margin:0;padding:0 0 0 18px;display:flex;flex-direction:column;gap:10px;color:var(--tx2);line-height:1.55}
.lp-list li::marker{color:var(--tx3)}
.lp-empty{padding:28px 18px;color:var(--tx2)}

/* prices */
.lp-pr-bar{display:flex;align-items:center;gap:14px;margin-bottom:12px;white-space:nowrap}
.lp-pr-bar .inp{max-width:320px}
.lp-pr th{background:var(--s2)}
.lp-pr td{padding:11px 14px}
.lp-mn{display:flex;flex-direction:column;gap:2px}.lp-mn b{font-weight:500}.lp-mn .mono{font-size:11.5px}
.lp-all{display:block;width:100%;padding:12px;border:0;border-top:1px solid var(--bd);background:var(--s1);color:var(--link);font-weight:500;cursor:pointer}
.lp-all:hover{background:var(--s2)}

/* code */
.lp-code{border:1px solid var(--bd);border-radius:var(--r-md);background:var(--s1);overflow:hidden}
.lp-code-h{display:flex;justify-content:space-between;align-items:center;padding:0 8px 0 4px;border-bottom:1px solid var(--bd);background:var(--s2)}
.lp-tabs{display:flex}
.lp-tabs button{border:0;background:none;padding:10px 12px;font:500 13px var(--font);color:var(--tx2);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}
.lp-tabs button.on{color:var(--tx);border-bottom-color:var(--tx)}
.lp-code-b{padding:12px 0;font:12.5px/1.75 var(--mono);overflow-x:auto}
.lp-ln{display:grid;grid-template-columns:36px 16px 1fr;white-space:pre}
.lp-g{color:var(--tx3);text-align:right;padding-right:10px;user-select:none}
.lp-m{user-select:none}
.lp-ln .lp-m{color:var(--tx3)}
.lp-ln.del{background:color-mix(in srgb,var(--err) 9%,transparent)}.lp-ln.del .lp-m{color:var(--err)}.lp-ln.del .lp-t{text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--err) 50%,transparent)}
.lp-ln.add{background:color-mix(in srgb,var(--ok) 10%,transparent)}.lp-ln.add .lp-m{color:var(--ok)}

/* billing */
.lp-rows{margin:0;display:flex;flex-direction:column}
.lp-rows>div{display:grid;grid-template-columns:120px 1fr;gap:16px;padding:14px 0;border-top:1px solid var(--bd)}
.lp-rows dt{font-weight:500}.lp-rows dd{margin:0;color:var(--tx2);line-height:1.55}
.lp-calc{border:1px solid var(--bd);border-radius:var(--r-md);background:var(--s1);padding:20px 22px}
.lp-calc-h{font-weight:600;margin-bottom:14px}.lp-calc-h .mono{font-weight:500}
.lp-calc-t td{padding:9px 0;border-bottom:1px solid var(--bd);white-space:normal}
.lp-calc-t td.r{padding-left:16px}
.lp-calc-t tr.tot td{font-weight:600;border-bottom:0;padding-top:12px}
.lp-calc-t tbody tr:hover{background:none}
.lp-calc p{margin:14px 0 0}

/* status */
.lp-st-sum{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.lp-st td{padding:10px 14px}
.lp-st-bh{width:260px}
.lp-bars{gap:2px}.lp-bars i{height:14px;border-radius:1px}.lp-bars i.st-ok{opacity:.55}

/* faq */
.lp-faq{display:grid;grid-template-columns:1fr 1fr;gap:0 56px;margin:0}
.lp-faq>div{padding:18px 0;border-top:1px solid var(--bd)}
.lp-faq dt{font-weight:600;margin-bottom:6px}.lp-faq dd{margin:0;color:var(--tx2);line-height:1.6}

/* footer */
.lp-foot{padding:48px 0 28px}
.lp-foot-in{display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px}
.lp-foot-in>div{display:flex;flex-direction:column;gap:8px;font-size:14px}
.lp-foot-in a:not(.brand){color:var(--tx2)}.lp-foot-in a:not(.brand):hover{color:var(--tx)}
.lp-foot-b p{margin:4px 0 0;max-width:320px}
.lp-foot-h{font-size:12.5px;color:var(--tx3);margin-bottom:2px}
.lp-foot-c{margin-top:36px;padding-top:18px;border-top:1px solid var(--bd)}

@media(max-width:960px){.lp-hero-in,.lp-split{grid-template-columns:1fr;gap:36px}.lp-nav{display:none}.lp-st-bh{display:none}}
@media(max-width:640px){.lp-w{padding:0 20px}.lp-h1{font-size:32px}.lp-lead{font-size:16px}.lp-hero{padding:44px 0}.lp-sec{padding:52px 0}
  .lp-faq{grid-template-columns:1fr}.lp-foot-in{grid-template-columns:1fr 1fr}.lp-foot-b{grid-column:1/-1}.lp-rows>div{grid-template-columns:1fr;gap:4px}
  .lp-facts{flex-direction:column}.lp-facts>div+div{border-left:0;padding-left:0}.lp-pr-bar .inp{max-width:none}}
.lp-mrow{display:flex;align-items:center;gap:12px}.lp-mrow .plogo.sm{width:28px;height:28px}.lp-mrow .plogo.sm svg{width:16px;height:16px}
