.sam{padding-block:var(--sp-16)}.sam-eyebrow{font-size:var(--step--1);letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--action)}.sam-intro{color:var(--text-muted);max-width:58ch}.sam-shell{position:relative;margin-top:var(--sp-6);border:1px solid var(--line);border-top:3px solid var(--action);border-radius:var(--radius-lg);overflow:hidden;background:#fff;box-shadow:var(--shadow-md)}#sam-canvas{width:100%;height:520px;display:block;background:#eef4f8}@media (max-width: 860px){#sam-canvas{height:420px}}@media (max-width: 560px){#sam-canvas{height:340px}}.sam-ctrls{position:absolute;top:14px;right:14px;display:none;flex-direction:column;gap:6px;z-index:5}.sam-shell[data-live] .sam-ctrls{display:flex}.sam-ctrl{width:38px;height:38px;border-radius:10px;border:1px solid var(--line);background:#fffffff2;color:var(--text);font:inherit;font-size:18px;font-weight:700;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0d1b241f;transition:border-color .15s,color .15s}.sam-ctrl:hover{border-color:var(--action);color:var(--action)}.sam-fallback{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;justify-content:flex-start;padding:var(--sp-6);background:var(--bg-sunk);overflow-y:auto}.sam-shell[data-live] .sam-fallback,.sam-shell[data-error] #sam-canvas{display:none}.sam-shell[data-error] .sam-fallback{position:static;overflow:visible}.sam-fallback-title{font-family:var(--font-display);font-weight:800;font-size:var(--step-1);margin-bottom:var(--sp-2)}.sam-fallback-note{color:var(--text-muted);font-size:var(--step--1);max-width:54ch}.sam-fallback-list{list-style:none;padding:0;margin:var(--sp-4) 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:var(--sp-3) var(--sp-6);font-size:var(--step--1)}.sam-fallback-list li{border-top:1px solid var(--line);padding-top:var(--sp-2)}.sam-fallback-list a,.sam-fb-name{font-weight:700;color:var(--action-hover)}.sam-fb-name{color:var(--text)}.sam-fb-angle{display:block;margin-top:2px;color:var(--text-faint);font-size:.78rem;line-height:1.4}.sam-legend{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-2) var(--sp-4);padding:var(--sp-3) var(--sp-6);border-top:1px solid var(--line);background:var(--bg-sunk);font-size:var(--step--1);color:var(--text-muted)}.sam-key{width:12px;height:12px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--action);flex:none}.sam-legend-hint{margin-left:auto;color:var(--text-faint)}.sam-shell .gm-style-iw-c{background:#fff!important;border-top:3px solid var(--action)!important;border-radius:14px!important;padding:0!important;max-width:320px!important;box-shadow:0 16px 44px #0d1b2433!important}.sam-shell .gm-style-iw-d{overflow:auto!important;padding:0!important}.sam-shell .gm-style-iw-tail:after,.sam-shell .gm-style-iw-t:after{background:#fff!important}.sam-pop{padding:16px 18px 18px;font-family:var(--font-body)}.sam-pop-kicker{font-size:.62rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--action);margin-bottom:4px}.sam-pop-name{font-family:var(--font-display);font-size:1.15rem;font-weight:800;color:var(--text);line-height:1.15;margin-bottom:10px;padding-right:16px}.sam-pop-div{height:1px;background:var(--line);margin-bottom:10px}.sam-pop-row{margin-bottom:9px}.sam-pop-lbl{font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);margin-bottom:2px}.sam-pop-val{font-size:.86rem;line-height:1.5;color:var(--text-muted)}.sam-pop-cta{display:inline-block;margin-top:6px;font-weight:700;font-size:.86rem;color:var(--action-hover)}@media (max-width: 700px){.sam{padding-block:var(--sp-12)}.sam-legend-hint{margin-left:0}}.sam.reveal .sam-eyebrow{color:var(--water-200)}.sam.reveal h2{color:var(--water-100)}.sam.reveal .sam-intro{color:#ffffffdb}.sam.reveal .sam-legend-hint{color:var(--text-muted)}.sam.reveal .sam-fallback li,.sam.reveal .sam-legend{background:var(--sand-050);text-shadow:none}.sam.reveal .sam-fallback li,.sam.reveal .sam-fallback li a,.sam.reveal .sam-fallback-title{color:var(--text)}.sam.reveal .sam-fb-angle{color:var(--text-muted)}.sam.reveal .sam-fallback li a{color:var(--action-hover)}
