.flt{--flt-ink:#16211a;--flt-dim:#7c8a80;--flt-line:rgba(0,0,0,.12);--flt-accent:#1f6b45;
  --flt-accent-ink:#fff;--flt-bg:transparent;--flt-radius:8px;--flt-font:inherit;
  font:inherit;color:var(--flt-ink);background:var(--flt-bg)}
.flt *{box-sizing:border-box}

.flt-top{display:flex;align-items:center;gap:10px;padding:8px 0 15px}
.flt-title{font-weight:600;font-size:14px}
.flt-badge{font-size:14px;line-height:1.2;
  color:var(--flt-dim);border:1px solid var(--flt-line);border-radius:99px;padding:4px 10px}
.flt-badge--on{color:var(--flt-accent-ink);background:var(--flt-accent);border-color:var(--flt-accent)}
.flt-reset{margin-left:auto;background:none;border:0;color:var(--flt-dim);font:inherit;font-size:11.5px;
  cursor:pointer;text-decoration:underline;text-underline-offset:3px;padding:0}
.flt-reset:hover{color:var(--flt-accent)}

.flt-sec{border-top:1px solid var(--flt-line);padding:11px 0 6px}
.flt-sechead{font-size:14px;color:var(--flt-dim);margin-bottom:9px}
.flt-sechead em{font-style:normal;opacity:.7;text-transform:none;letter-spacing:.04em}

.flt-row{display:grid;grid-template-columns:1fr 104px 40px;align-items:center;gap:10px;padding:4px 0}
.flt-row label{font-size:12.5px;color:var(--flt-ink);opacity:.85;white-space:nowrap;
  overflow:hidden;text-overflow:ellipsis}
.flt-row b{font-size:11.5px;font-weight:600;color:var(--flt-dim);text-align:right;white-space:nowrap}
.flt-row.flt-on label{opacity:1;font-weight:600}
.flt-row.flt-on b{color:var(--flt-accent)}

.flt input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:3px;border-radius:2px;
  outline:none;margin:0;cursor:pointer;
  background:linear-gradient(90deg,var(--flt-accent) var(--pct,0%),var(--flt-line) var(--pct,0%))}
.flt input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;
  background:var(--flt-accent);border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.3);cursor:grab}
.flt input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;border:2px solid #fff;
  background:var(--flt-accent);cursor:grab}

.flt-pick{margin:6px 0 2px}
.flt-pick select{width:100%;border:1px solid var(--flt-line);background:transparent;color:var(--flt-ink);
  border-radius:var(--flt-radius);padding:6px 8px;font:inherit;font-size:12px;outline:none;cursor:pointer;
  appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--flt-dim) 50%),
    linear-gradient(135deg,var(--flt-dim) 50%,transparent 50%);
  background-position:calc(100% - 13px) 50%,calc(100% - 8px) 50%;
  background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:26px}
.flt-pick select:focus{border-color:var(--flt-accent)}
.flt-pick select option{background:var(--flt-sugg-bg,#fff);color:var(--flt-ink)}

.flt-addr{position:relative;margin-bottom:8px}
.flt-addr input{width:100%;border:1px solid var(--flt-line);background:transparent;color:var(--flt-ink);
  border-radius:var(--flt-radius);padding:8px 10px;font:inherit;font-size:12.5px;outline:none}
.flt-addr input:focus{border-color:var(--flt-accent)}
.flt-addr input::placeholder{color:var(--flt-dim)}
.flt-sugg{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:60;display:none;
  border:1px solid var(--flt-line);border-radius:var(--flt-radius);overflow:hidden;
  background:var(--flt-sugg-bg,#fff)}
.flt-sugg--on{display:block}
.flt-sugg div{padding:8px 10px;font-size:12.5px;cursor:pointer}
.flt-sugg div:hover{background:var(--flt-accent);color:var(--flt-accent-ink)}

.flt-chips{display:flex;flex-wrap:wrap;gap:6px}
.flt-chip{font:inherit;font-size:11.5px;line-height:1;padding:6px 11px;cursor:pointer;
  border:1px solid var(--flt-line);border-radius:var(--flt-radius);background:transparent;
  color:var(--flt-dim);white-space:nowrap;transition:.14s}
.flt-chip:hover{color:var(--flt-ink);border-color:var(--flt-accent)}
.flt-chip--on{background:var(--flt-accent);border-color:var(--flt-accent);
  color:var(--flt-accent-ink);font-weight:600}

.flt-bar{display:inline-block;width:46px;height:4px;border-radius:2px;background:var(--flt-line);
  vertical-align:middle;overflow:hidden}
.flt-bar i{display:block;height:100%;background:var(--flt-accent)}

.flt-note{font-weight:400;font-size:11.5px;line-height:1.55;
  color:var(--flt-dim);margin:9px 0 0}

.flt-scale{display:flex;align-items:center;gap:10px}
.flt-scale>span{font-weight:500;font-size:14px;
  color:var(--flt-dim);flex:none}
.flt-notch{display:flex;flex:1;gap:4px}
.flt-notch button{flex:1;height:34px;background:none;border:1px solid var(--flt-line);
  cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}
.flt-notch button i{width:7px;height:7px;border-radius:50%;background:var(--flt-line);
  display:block;transition:background .15s,transform .15s}
.flt-notch button.mid{border-style:dashed}
.flt-notch button:hover{border-color:var(--flt-accent)}
.flt-notch button.lit i{background:var(--flt-accent);opacity:.55}
.flt-notch button.on{border-color:var(--flt-accent);background:rgba(25,93,26,.1)}
.flt-notch button.on i{background:var(--flt-accent);transform:scale(1.7)}
.flt-explain{font-weight:400;font-size:12px;line-height:1.6;color:var(--flt-dim);
  padding:0 0 12px;margin-bottom:4px}
.flt-tog{display:flex;align-items:center;gap:12px;width:100%;min-height:46px;
  padding:8px 0;background:none;border:0;cursor:pointer;text-align:left;color:inherit;font:inherit}
.flt-sw{width:46px;height:26px;border-radius:13px;background:var(--flt-line);position:relative;
  flex:none;transition:background .15s}
.flt-sw i{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;
  background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.28);transition:left .15s}
.flt-tog.on .flt-sw{background:var(--flt-accent)}
.flt-tog.on .flt-sw i{left:23px}
.flt-tl{min-width:0}
.flt-tl b{display:block;font-weight:500;font-size:13px;color:var(--flt-dim)}
.flt-tog.on .flt-tl b{color:var(--flt-ink);font-weight:600}
.flt-tl small{display:block;font-size:10.5px;color:var(--flt-dim);opacity:.8;margin-top:2px}

.flt-dist{padding:9px 0}
.flt-dl{font-size:12.5px;color:var(--flt-ink);margin-bottom:7px}
.flt-opts{display:flex;gap:5px;flex-wrap:wrap}
.flt-opts button{flex:1;min-width:64px;min-height:38px;border:1px solid var(--flt-line);
  background:transparent;color:var(--flt-dim);font:inherit;font-size:11.5px;cursor:pointer;
  border-radius:var(--flt-radius)}
.flt-opts button:hover{border-color:var(--flt-accent);color:var(--flt-ink)}
.flt-opts button.on{background:var(--flt-accent);border-color:var(--flt-accent);
  color:var(--flt-accent-ink);font-weight:600}

.flt-diffnote.on{color:var(--flt-accent,#195d1a);font-weight:600}
.flt-scale>span{text-align:center;line-height:1.35}
