/* LWVlife App - LWV GPS screen (2026-10-26 b17). Big, simple, few inputs. */
.gps-panel{margin:4px 0 8px}
.gps-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin:2px 0 8px}
.gps-head .gps-t{font-weight:800;font-size:1.25rem;color:#1b3a6b}
.gps-head .gps-s{font-size:.95rem;color:#5b6b85}
.gps-row{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:6px;min-height:58px;padding:4px 8px 4px 12px;background:#fff;border:2px solid var(--line,#d9e1ec);border-radius:14px;margin:6px 0}
.gps-row .gps-k{font-weight:800;color:#5b6b85;font-size:.95rem;min-width:3.2em}
.gps-row .gps-ic{font-size:1.2rem}
.gps-row-to{border-color:#1e88e5}
.gps-in{min-width:0;width:100%;border:0;outline:0;background:transparent;font:inherit;font-weight:800;font-size:1.15rem;color:#14254a;min-height:48px;padding:0 4px}
.gps-in::placeholder{color:#1b3a6b;font-weight:800;opacity:.85}
#gps-from::placeholder{color:#1d6b38}
.gps-x{width:40px;height:40px;border-radius:50%;background:#eef1f6;color:#5b6b85;font-size:1.4rem;font-weight:800;line-height:1}
.gps-note{font-size:.92rem;color:#5b6b85;margin:-2px 0 4px 14px;font-weight:700;min-height:0}
.gps-note:empty{display:none}
.gps-sug{display:grid;gap:6px;margin:2px 0 6px;max-height:330px;overflow:auto;background:#f7f9fc;border:2px dashed #b9c6da;border-radius:12px;padding:6px}
.gps-s-row{display:flex;align-items:center;gap:10px;min-height:52px;padding:8px 12px;background:#fff;border:2px solid var(--line,#d9e1ec);border-radius:12px;font-weight:700;font-size:1.02rem;color:#14254a;text-align:left}
.gps-s-none{padding:10px 12px;color:#8c1d18;font-weight:800}
.gps-ch{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:#0a78cf;color:#fff;font-size:1rem}
.gps-card{background:#fff;border:2px solid #1e88e5;border-radius:14px;padding:10px 12px;margin:6px 0}
.gps-card.bad{border-color:#d8382f;color:#8c1d18;font-weight:800;font-size:1.05rem}
.gps-card.flag{border-style:dashed}
.gps-c1{font-size:1.05rem;color:#14254a}
.gps-badge{display:inline-block;padding:0 8px;border-radius:999px;background:#fff4e0;color:#7a4b00;border:1px solid #f0c98a;font-size:.8rem;font-weight:800;vertical-align:middle}
.gps-cds{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:6px 0 2px}
.gps-cds-k{font-weight:800;color:#5b6b85;font-size:1rem}
.gps-cds-n{font-weight:900;font-size:2.4rem;color:#1b3a6b;line-height:1}
.gps-zone{margin-left:auto;font-weight:700;color:#5b6b85;font-size:.95rem}
.gps-hint{margin:4px 0;font-weight:700;color:#14254a;line-height:1.35}
.gps-pin{margin:2px 0 0;font-size:.88rem;color:#5b6b85}
#gps-route{margin:6px 0}
#gps-route:empty{display:none}
/* Car | Golf Cart | Walk: tap = go (no default) */
#s-map .modes{margin:10px 0 6px}
#s-map .mode{min-height:78px;font-size:1.02rem}
/* fold-downs */
.gps-fold{margin:8px 0;background:#fff;border:2px solid var(--line,#d9e1ec);border-radius:14px;padding:0 12px}
.gps-fold>summary{cursor:pointer;list-style:none;min-height:54px;display:flex;align-items:center;font-weight:800;font-size:1.1rem;color:#1b3a6b}
.gps-fold>summary::-webkit-details-marker{display:none}
.gps-fold>summary::after{content:"\25BE";margin-left:auto;color:#5b6b85}
.gps-fold[open]>summary::after{content:"\25B4"}
.gps-fold .list{margin-bottom:8px}
.gps-gate{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 0;border-top:1px solid #eef1f6}
.gps-gate-n{width:40px;height:40px;border-radius:50%;background:#1b3a6b;color:#fff;font-weight:900;font-size:1.1rem;display:flex;align-items:center;justify-content:center}
.gps-gate-b{font-size:1rem;color:#14254a;line-height:1.3}
.gps-gate-a{color:#5b6b85;font-size:.92rem;font-weight:700}
.gps-gh{display:inline-block;padding:0 8px;border-radius:999px;font-size:.82rem;font-weight:800;background:#eef1f6;color:#5b6b85;vertical-align:middle}
.gps-gh.g24{background:#e5f4ea;color:#1d6b38}
.gps-gh.gex{background:#fff4e0;color:#7a4b00}
.gps-gh.gem{background:#fde8e6;color:#8c1d18}
.gps-gate-g{display:inline-flex;align-items:center;min-height:44px;padding:4px 10px;border-radius:12px;background:#e3edfb;color:#1b3a6b;font-weight:800;font-size:.9rem;text-decoration:none;white-space:nowrap}
#gps-gates .src{margin:8px 0 10px}
/* legacy pieces of the old map screen that the LWV GPS panel replaces */
#s-map #map-tabs,#s-map .dest-row,#s-map #dest-results,#s-map #cart-warn,#s-map #cart-panel,#s-map #btn-directions,#s-map #gate-list{display:none!important}
.pin.addr{background:#7a1f3d!important}
/* road route steps (cart mode, from cart.js) */
.cart-steps{margin-top:8px}.cart-steps summary{cursor:pointer;font-weight:800;min-height:44px;display:flex;align-items:center}
.cart-steps ol{margin:6px 0 0;padding-left:1.4em;line-height:1.5}.cart-steps li{margin:4px 0}
.cart-outside{color:#8c1d18;font-weight:700}
/* report box at the bottom of the map screen */
.gps-report{margin:14px 0 6px;background:#fff;border:2px solid var(--line,#d9e1ec);border-radius:14px;padding:10px 12px}
.gps-report h3{margin:0 0 6px;font-size:1.05rem;color:#1b3a6b}
.gps-report textarea{width:100%;font:inherit;font-size:1.02rem;padding:10px;border:2px solid var(--line,#d9e1ec);border-radius:12px;resize:vertical;min-height:84px}
.gps-rep-row{display:flex;gap:8px;margin-top:8px}
.gps-rep-row .input{flex:1;min-width:0}
.gps-rep-row .btn{min-width:6em}
.gps-rep-msg{margin:6px 0 0;font-weight:700;color:#1d6b38;min-height:1.2em}
/* CDS pin on the map (cul-de-sac number, black circle like the Village map) */
.cds-pin{width:34px;height:34px;border-radius:50%;background:#111;color:#fff;border:3px solid #fff;box-shadow:0 1px 5px rgba(0,0,0,.4);font-weight:900;font-size:.95rem;display:flex;align-items:center;justify-content:center}
