/* Cape Ann Current: small story widgets (bars, timeline, stat tiles, tables, street maps). Added Nov. 6, 2026. */
.sw,.smap{margin:24px 0;font-size:16px;line-height:1.45}
.sw{background:#fff;border:1px solid var(--rule,#DDD6C9);border-radius:10px;padding:16px 16px 12px}
.sw h3,.smap h3{margin:0 0 4px;font-size:1.05rem;color:var(--navy,#15395B);line-height:1.25}
.sw .sw-sub{margin:0 0 12px;font-size:.88rem;color:var(--muted,#5B6470)}
.sw .sw-src{margin:10px 0 0;font-size:.8rem;color:var(--muted,#5B6470)}
.sw-bar{display:grid;grid-template-columns:minmax(96px,32%) 1fr auto;gap:8px;align-items:center;margin:7px 0;font-size:.92rem}
.sw-bar .sw-l{color:#1C2430}
.sw-bar .sw-t{display:block;background:#F4EFE6;border-radius:6px;height:16px;overflow:hidden}
.sw-bar .sw-t i{display:block;height:100%;border-radius:6px;background:var(--navy,#15395B)}
.sw-bar .sw-t i.hi{background:#B5523B}.sw-bar .sw-t i.teal{background:#2A8C82}.sw-bar .sw-t i.gold{background:#C8862A}.sw-bar .sw-t i.grey{background:#9AA3AE}
.sw-bar .sw-v{font-weight:700;color:var(--navy,#15395B);white-space:nowrap}
.sw-mark{position:relative}
.sw-big{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:0 0 4px}
.sw-big div{background:#F4EFE6;border-radius:8px;padding:10px 12px;border-top:4px solid var(--navy,#15395B)}
.sw-big div:nth-child(2){border-top-color:#B5523B}.sw-big div:nth-child(3){border-top-color:#2A8C82}.sw-big div:nth-child(4){border-top-color:#C8862A}
.sw-big b{display:block;font-size:1.5rem;line-height:1.1;color:var(--navy,#15395B)}
.sw-big span{font-size:.82rem;color:var(--muted,#5B6470)}
.sw-time{list-style:none;margin:0;padding:0 0 0 14px;border-left:3px solid #DDD6C9}
.sw-time li{position:relative;margin:0 0 10px;padding-left:12px;font-size:.93rem}
.sw-time li:before{content:"";position:absolute;left:-21px;top:.35em;width:11px;height:11px;border-radius:50%;background:var(--navy,#15395B);border:2px solid #fff;box-shadow:0 0 0 1px #DDD6C9}
.sw-time li b{color:var(--navy,#15395B)}
.sw-scroll{overflow-x:auto}
.sw-table{border-collapse:collapse;width:100%;font-size:.9rem}
.sw-table th,.sw-table td{border-bottom:1px solid #E7E1D5;padding:6px 8px;text-align:left;vertical-align:top}
.sw-table th{font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted,#5B6470)}
.sw-table td.n{text-align:right;white-space:nowrap}
.smap-bar{display:flex;gap:0;margin:8px 0}
.smap-bar button{border:1px solid #DDD6C9;background:#fff;color:var(--navy,#15395B);font:600 13px/1 inherit;padding:8px 12px;cursor:pointer}
.smap-bar button:first-child{border-radius:8px 0 0 8px}.smap-bar button:last-child{border-radius:0 8px 8px 0;border-left:0}
.smap-bar button[aria-pressed=true]{background:var(--navy,#15395B);color:#fff}
.smap-map{height:390px;border-radius:10px;overflow:hidden;background:#F4EFE6;border:1px solid #DDD6C9}
.smap-msg{padding:16px;text-align:center}
.smap-pin{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;color:#fff;font:700 13px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.45)}
.smap-pin-wrap{background:none;border:0}
.smap-list{margin:10px 0 0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:6px 16px;font-size:.88rem}
.smap-list li{display:flex;gap:8px;align-items:flex-start;cursor:pointer}
.smap-list .smap-n{flex:0 0 22px;height:22px;border-radius:50%;color:#fff;font:700 12px/22px -apple-system,Arial,sans-serif;text-align:center}
.smap-src{margin:8px 0 0;font-size:.8rem;color:var(--muted,#5B6470)}
.smap-key{display:flex;flex-wrap:wrap;gap:4px 14px;margin:6px 0 0;font-size:.82rem}
.smap-key i{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:5px;vertical-align:-1px}
.smap-key i.ln{width:20px;height:5px;border-radius:3px;vertical-align:2px}
@media (max-width:520px){.sw-bar{grid-template-columns:1fr auto}.sw-bar .sw-t{grid-column:1 / -1;order:3}.smap-map{height:320px}}
