/* The archive uses the same semantic stack and swipe navigation as map layers. */
html body #app #civic-meetings{position:absolute;z-index:75;bottom:calc(16px + env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);width:min(460px,calc(100% - 24px));box-sizing:border-box;padding:14px;background:var(--map-surface,#fffdf5);color:var(--map-ink,#244b43);border:1px solid var(--map-border,#bac5b5);border-radius:18px;box-shadow:0 6px 24px #203d3526;font:16px/1.35 system-ui,sans-serif}
html body #app #civic-meetings[hidden]{display:none!important}
#civic-meetings .civic-meeting-head{display:block!important;padding:0!important;margin:0 0 5px!important;min-height:0!important}
#civic-meetings .civic-heading{display:flex;align-items:center;gap:5px}
#civic-meetings .civic-heading h2{font:600 23px/1.15 Georgia,serif;margin:0;flex:1;overflow-wrap:anywhere}
#civic-meetings button,.council-detail button{font:inherit;color:inherit;min-height:44px;cursor:pointer;border:1px solid var(--map-border,#b8c4b5);border-radius:10px;background:transparent;padding:8px 10px}
#civic-meetings .civic-heading button,.council-detail header button{border:0;font-size:23px;min-width:36px;padding:4px;flex:none}
#civic-meetings .civic-context{font-size:14px;margin:3px 0;color:var(--map-muted,#526a60)}
#civic-meetings .council-rows :is(button,a){display:flex;align-items:center;justify-content:space-between;text-align:left;gap:8px;width:100%;border:0;border-top:1px solid var(--map-border,#bdc7b6);border-radius:0;padding:7px 2px}
#civic-meetings .council-rows strong{display:block;font-size:16px;font-weight:600;line-height:1.25}
#civic-meetings .council-rows small{display:block;font-size:12px;margin-top:2px;color:var(--map-muted,#526a60)}
#civic-meetings .civic-highlight h3{font:600 25px/1.15 Georgia,serif;margin:7px 0;overflow-wrap:anywhere}
#civic-meetings .civic-highlight p{font-size:16px;line-height:1.4;margin:8px 0}
#civic-meetings .council-status{font-size:14px;color:var(--map-muted,#526a60)}
#civic-meetings .civic-meeting-foot{padding:4px 0!important;margin:0!important}
#civic-meetings .civic-sources{display:flex;align-items:center;gap:14px;font-size:14px}
#civic-meetings .civic-sources button{min-height:40px;padding:7px 12px;background:var(--map-ink,#244b43);color:var(--map-surface,#fffdf5)}
#civic-meetings .civic-meeting-foot p{font-size:12px;line-height:1.3;color:var(--map-muted,#526a60);margin:4px 0}
#civic-meetings a,.council-detail a{color:inherit}
#civic-meetings :focus-visible,.council-detail :focus-visible{outline:3px solid #ad822f;outline-offset:2px}
.council-catchup-open #discovery-tray,.council-catchup-open .hud-bottom{display:none!important}
html body dialog.council-detail{height:auto;position:fixed;inset:0;margin:auto;box-sizing:border-box;width:min(560px,calc(100% - 24px));max-height:calc(100dvh - 32px);border:1px solid var(--map-border,#b8c4b5);border-radius:18px;padding:16px;background:var(--map-surface,#fffdf5);color:var(--map-ink,#244b43);font:16px/1.5 system-ui,sans-serif;overflow:auto}
.council-detail::backdrop{background:#132b2866}.council-detail header{display:flex;align-items:center;justify-content:space-between;position:sticky;top:-16px;background:var(--map-surface,#fffdf5);z-index:1}
.council-detail h2{font:600 28px/1.2 Georgia,serif;margin:16px 0}.council-detail video{display:block;width:100%;max-height:50dvh;background:#172c27;border-radius:10px}.council-source{font-size:14px;color:var(--map-muted,#526a60)}.council-links{display:flex;flex-wrap:wrap;gap:8px}.council-links a{padding:10px 12px;border:1px solid var(--map-border,#b8c4b5);border-radius:10px}
html body .council-detail header{padding:0;min-height:44px;height:auto;box-shadow:none;border:0;border-radius:0;transform:none;backdrop-filter:none}
html body #app #civic-meetings::before{display:none!important}
html body #app #civic-meetings>.loom-stack-viewport{flex:0 1 auto!important;height:auto!important;min-height:44px}
html body #app #civic-meetings .loom-stack-flow{height:auto!important;columns:auto!important}
html body #app #civic-meetings .civic-heading h2{margin:0!important;font-size:21px!important}
html body #app #civic-meetings .civic-highlight h3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:23px;line-height:1.2}
html body #app #civic-meetings .civic-highlight p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
html body #app #civic-meetings .loom-stack-pages{flex-basis:44px;margin-top:5px}
html body #app #civic-meetings .loom-stack-progress small{font-size:12px}
html body #app #civic-meetings:not(.loom-has-stack)>.loom-stack-pages{display:none!important}

html body #app .compact-menu-options.civic-entry-options{grid-template-columns:1fr}
#civic-meetings .civic-map-actions{display:flex;gap:8px;margin:6px 0}
#civic-meetings .civic-precision{display:block;font-size:12px;color:var(--map-muted,#526a60)}
#civic-meetings .civic-sources{flex-wrap:wrap;gap:6px 12px}
#civic-meetings [data-map-place]{margin:4px 0 4px 6px}
html body #app #civic-meetings.civic-map-card .civic-highlight h3{font-size:18px;margin:4px 0}
html body #app #civic-meetings.civic-map-card .civic-highlight p{font-size:14px;margin:4px 0}
html body #app #civic-meetings.civic-map-card .civic-meeting-foot p{font-size:11px}
html body #app #civic-meetings .civic-map-error[hidden]{display:none}

#civic-meetings .council-rows a{color:inherit;text-decoration:none;box-sizing:border-box;background:transparent;cursor:pointer;min-height:44px}
