.gms{--gms-ink:#22313a;--gms-line:#d5dde2;--gms-good:#2f7d5b;--gms-warn:#b7861b;--gms-bad:#c2413b;--gms-accent:#1f5f8b;max-width:760px;margin:0 auto;color:var(--gms-ink);line-height:1.7}
.gms-form{display:grid;gap:14px;grid-template-columns:1fr 1fr auto;align-items:end}
.gms-field label{display:block;font-weight:700;font-size:.95em;margin-bottom:4px}
.gms-field input{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid var(--gms-line);border-radius:4px;font-size:16px}
.gms-btn{display:inline-block;padding:11px 22px;background:var(--gms-accent);color:#fff;border:0;border-radius:4px;font-size:16px;font-weight:700;cursor:pointer;text-decoration:none}
.gms-btn:hover{filter:brightness(1.1);color:#fff}
.gms-btn:focus-visible,.gms-candidates button:focus-visible{outline:3px solid #f2c94c;outline-offset:2px}
.gms-message{margin:16px 0;min-height:1.7em}
.gms-cand-title{font-weight:700;margin:20px 0 8px}
.gms-candidates ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--gms-line)}
.gms-candidates li{border-bottom:1px solid var(--gms-line)}
.gms-candidates button{width:100%;text-align:left;background:none;border:0;padding:12px 8px;cursor:pointer;color:inherit}
.gms-candidates button:hover{background:#f2f6f8}
.gms-cand-name{display:block;font-weight:700}
.gms-cand-addr{display:block;font-size:.85em;opacity:.75}
.gms-result{margin-top:28px;border:2px solid var(--gms-ink);padding:22px}
.gms-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border-bottom:2px solid var(--gms-ink);padding-bottom:14px}
.gms-shop{font-size:1.25em;font-weight:700;margin:0}
.gms-addr{font-size:.85em;margin:2px 0 4px;opacity:.75}
.gms-maplink{font-size:.85em}
.gms-score{margin:0;white-space:nowrap;font-weight:700}
.gms-score span{font-size:3.2em;line-height:1}
.gms-score small{opacity:.6;margin-left:2px}
.gms-comment{font-weight:700;margin:14px 0}
.gms-table-wrap{overflow-x:auto}
.gms-table{width:100%;border-collapse:collapse;font-size:.95em}
.gms-table th,.gms-table td{border-bottom:1px solid var(--gms-line);padding:10px 6px;vertical-align:top;text-align:left}
.gms-table th{white-space:nowrap}
.gms-mark{font-size:1.3em;font-weight:700;text-align:center!important;width:2em}
.is-good .gms-mark{color:var(--gms-good)}
.is-warn .gms-mark{color:var(--gms-warn)}
.is-bad .gms-mark{color:var(--gms-bad)}
.gms-pt{white-space:nowrap;font-weight:700}
.gms-pt small{font-weight:400;opacity:.6}
.gms-note{font-size:.85em;opacity:.8;margin:14px 0}
.gms-cta{margin-top:6px}
.gms-credit{font-size:.75em;opacity:.6;margin:14px 0 0;text-align:right}
@media (max-width:600px){
  .gms-form{grid-template-columns:1fr}
  .gms-head{flex-direction:column}
  .gms-table th{white-space:normal}
  .gms-table tr{display:grid;grid-template-columns:1fr 2em auto}
  .gms-table .gms-adv{grid-column:1/-1;border-bottom:1px solid var(--gms-line);padding-top:0}
  .gms-table th,.gms-table .gms-mark,.gms-table .gms-pt{border-bottom:0}
}
