/* Skill configurator: system picker, coverage, composed download.
   Semantic state colors are their own set, deliberately not the brand accent. */
:root{
  --via-keep:#3ad9a5;
  --via-native:#7fb2f0;
  --gap:#e8b062;
}

.lp-picker{position:sticky;top:24px;margin-top:50px;border:1px solid #3b5e69;background:#0e2934;border-radius:10px;padding:20px}
.lp-picker h2{font-size:19px;letter-spacing:-.01em;margin-bottom:4px}
.lp-picker .lp-picker-sub{font-size:14px;line-height:1.45;color:#a5c0ca;margin:0 0 14px}

.lp-keep-toggle{display:flex;align-items:center;gap:10px;border:1px solid #466571;border-radius:7px;padding:9px 11px;background:#061c27;margin-bottom:14px;cursor:pointer}
.lp-keep-toggle input{margin:0;accent-color:var(--via-keep);width:16px;height:16px;flex:none}
.lp-keep-toggle .lp-keep-copy{display:block;min-width:0}
.lp-keep-toggle strong{font-size:15px;color:#e6f2f4;font-weight:500}
.lp-keep-toggle span.lp-keep-hint{display:block;font-size:12.5px;line-height:1.35;color:#9fbac4}

.lp-rows{display:grid;gap:8px;margin:0 0 14px;padding:0;list-style:none}
.lp-row{display:grid;grid-template-columns:11px 92px minmax(0,1fr);align-items:center;gap:0 9px}
.lp-row label{display:block;font-size:13.5px;line-height:1.25;color:#cfe2e8;margin:0}
.lp-row select{border:1px solid #466571;border-radius:5px;padding:6px 8px;background:#061c27;color:#e0edf0;width:100%;font-size:14px;min-height:34px}
.lp-row select:focus-visible{outline:2px solid var(--via-keep);outline-offset:1px}
.lp-dot{width:9px;height:9px;border-radius:2px;background:#4b6b76}
.lp-dot.is-keep{background:var(--via-keep)}
.lp-dot.is-native{background:var(--via-native)}
.lp-dot.is-gap{background:var(--gap)}

.lp-tag{font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:500;white-space:nowrap;padding:3px 8px;border-radius:99px;border:1px solid currentColor}
.lp-tag.is-keep{color:var(--via-keep)}
.lp-tag.is-native{color:var(--via-native)}
.lp-tag.is-gap{color:var(--gap)}

.lp-meter{border-block:1px solid #36525e;padding:13px 0;margin-bottom:14px;display:grid;gap:8px}
.lp-meter-label{font-size:13.5px;line-height:1.35;color:#cfe2e8}
.lp-meter-label b{font-weight:500;color:#edf7f6}
.lp-meter-bar{display:flex;height:6px;border-radius:99px;overflow:hidden;background:#08222c;gap:2px}
.lp-meter-bar i{display:block;height:100%;transition:flex-grow .35s ease}
.lp-meter-bar i.is-keep{background:var(--via-keep)}
.lp-meter-bar i.is-native{background:var(--via-native)}
.lp-meter-bar i.is-gap{background:var(--gap)}
.lp-meter-key{display:flex;gap:12px;font-size:12px;line-height:1;color:#9fbac4;white-space:nowrap}
.lp-meter-key span{display:flex;align-items:center;gap:5px}
.lp-meter-key i{width:8px;height:8px;border-radius:2px;flex:none}

.lp-picker .lp-platform{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:5px 10px;margin-bottom:12px}
.lp-picker .lp-platform label{font-size:13.5px;color:#a5c0ca}
.lp-picker .lp-platform select{grid-column:1/-1;border:1px solid #466571;border-radius:5px;padding:6px 8px;background:#061c27;color:#e0edf0;width:100%;font-size:14px;min-height:34px}
.lp-picker .lp-file{font-size:12.5px;color:#9fbac4;margin:0;text-align:right}
.lp-picker .lp-file code{font-size:13px;color:#d8ebef}
.lp-dl{width:100%;justify-content:space-between}
.lp-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 14px;margin-top:12px}
.lp-picker .lp-foot>.skills-text-link{font-size:13px;margin:0;gap:10px}
.lp-picker .lp-share{background:none;border:0;padding:0;font-size:13px;color:#8fb6c2;text-decoration:underline;text-underline-offset:3px}

/* In-page consequence panel */
.lp-consequence{display:grid;gap:18px}
.lp-route{display:grid;gap:14px;margin:0;padding:0;list-style:none}
.lp-route li{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;align-items:baseline;border-left:2px solid #2b4753;padding-left:16px}
.lp-route li.is-keep{border-left-color:var(--via-keep)}
.lp-route li.is-native{border-left-color:var(--via-native)}
.lp-route li.is-gap{border-left-color:var(--gap)}
.lp-route h3{font-size:19px;letter-spacing:-.01em;margin:0}
.lp-route p{grid-column:1/-1;font-size:17px;line-height:1.65;color:#b3c8d0;margin:0}
.lp-route .lp-tag{justify-self:start}

.lp-gaps{border:1px solid #5a4a2e;background:#1d1809;border-radius:10px;padding:24px 26px}
.lp-gaps h3{font-size:20px;margin-bottom:6px;color:#f2dcb6}
.lp-gaps .lp-gaps-lead{font-size:16px;line-height:1.6;color:#d6c39c;margin:0 0 14px}
.lp-gaps ul{margin:0;padding-left:20px;display:grid;gap:10px}
.lp-gaps li{font-size:17px;line-height:1.65;color:#e3d2ae;padding-left:6px}
.lp-gaps li::marker{color:var(--gap)}
.lp-gaps.is-clear{border-color:#2d5a4a;background:#0b2119}
.lp-gaps.is-clear h3{color:#bdead7}
.lp-gaps.is-clear .lp-gaps-lead{color:#9dcfbc;margin:0}

.lp-trunc{font-size:16px;line-height:1.6;color:#d6c39c;border:1px solid #5a4a2e;background:#1d1809;border-radius:8px;padding:16px 18px;margin:0}

@media (max-width:900px){
  .lp-picker{position:static;margin-top:32px}
}
