/* AGA-DESIGN:ROUTE-UI v336
 * Scope these rules to plugin route controls. Keep prepared route colors separate
 * from clinical-presence pin colors and from the eight-region frame palette.
 * Text wraps in its own grid column; decorative dots/arrows never underline.
 * Transfer disclosures start closed in HTML, but their expanded contents have
 * no inner scroll area. Search suggestions retain their separate bounded list.
 * Enqueue after the shared search/icon styles so nested lazy transfer lists get
 * the same spacing as server-rendered lists, without padding both wrappers.
 */
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-colored-link{
    display:inline-grid!important;position:relative;grid-template-columns:12px minmax(0,1fr);align-items:center;column-gap:8px;
    box-sizing:border-box;max-width:100%;min-width:0;min-height:44px;line-height:1.6;overflow-wrap:anywhere;text-decoration:none!important;
}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-colored-link:has(>.aga-ui-icon-trailing){grid-template-columns:12px minmax(0,1fr) 12px}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-colored-link>.aga-route-color-dot{
    display:block;position:static;grid-column:1;grid-row:1;align-self:center;box-sizing:border-box;width:12px;height:12px;min-width:12px;
    margin:0;padding:0;border:1px solid rgb(26 40 45 / 40%);border-radius:50%;background:var(--aga-route-color,#64748b);box-shadow:none;text-decoration:none!important;pointer-events:none;
}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-colored-link>:is(.aga-route-link-text,.aga-transfer-link-name){
    display:block;grid-column:2;grid-row:1;min-width:0;max-width:100%;margin:0;padding:0;line-height:inherit;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:.2em;
}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-colored-link>.aga-ui-icon-trailing{
    display:block!important;position:static!important;grid-column:3!important;grid-row:1!important;align-self:center!important;
    inset:auto!important;width:12px!important;height:12px!important;min-width:12px!important;max-width:12px!important;
    margin:0!important;padding:0!important;transform:none!important;flex:none!important;text-decoration:none!important;
}
.aga-search-v284 :is(.aga-company-route-picker-body>ul,.aga-search-jump-lines) a.aga-route-colored-link[href]{
    display:grid!important;width:100%;height:100%;min-height:44px;padding:10px 12px!important;font-size:15px;font-weight:400;line-height:1.6;
}
.aga-search-v284 .aga-search-company>h3{font-weight:700}
/* v340: centre the company symbol on the first 1.7em line, including wrapped
 * headings. Scope the reset so company links and other icons keep their layout. */
.aga-search-v284 .aga-search-company>h3{display:flex;align-items:flex-start;gap:.4em;line-height:1.7}
.aga-search-v284 .aga-search-company>h3>.aga-search-company-title-text{display:block;min-width:0;line-height:inherit}
.aga-search-v284 .aga-search-company>h3>img.aga-ui-icon-building{
    display:block!important;position:static!important;float:none!important;flex:0 0 1.15em!important;
    width:1.15em!important;height:1.15em!important;min-width:1.15em!important;min-height:0!important;max-height:none!important;
    margin:.275em 0 0!important;padding:0!important;vertical-align:0!important;transform:none!important;
}
.aga-search-v284 .aga-search-line-choices-title,
.aga-search-v284 .aga-company-route-picker-body>.aga-company-route-list-title{display:flex;align-items:flex-start;gap:.4em}
.aga-search-v284 .aga-search-line-choices-title>span,
.aga-search-v284 .aga-company-route-list-title>span{display:block;min-width:0}
.aga-search-v284 .aga-search-line-choices-title>img.aga-ui-icon-route-choice,
.aga-search-v284 .aga-company-route-list-title>img.aga-ui-icon-route-choice{
    display:block!important;position:static!important;float:none!important;flex:0 0 1.15em!important;
    width:1.15em!important;height:1.15em!important;min-width:1.15em!important;margin:.3em 0 0!important;padding:0!important;
    vertical-align:0!important;transform:none!important;
}
.aga-search-v284 .aga-company-route-list-title>img.aga-ui-icon-route-choice{margin-top:.225em!important}
.aga-search-v284 .aga-company-route-picker-body>.aga-company-route-list-title{margin:16px 0 10px;font-size:14px;font-weight:700;line-height:1.6}
.aga-search-v284 .aga-company-route-picker-body>.aga-search-v319-compact{margin:0 0 16px;padding:0 0 16px}
.aga-search-v284 .aga-search-v319-compact>.aga-search-v319-title{display:flex;margin:0 0 8px;font-size:16px;font-weight:700;line-height:1.6}
.aga-search-v284 .aga-search-v319-compact input[type="search"][data-aga-search-input]{max-width:100%;font-size:16px!important}
.aga-search-v284 .aga-search-v319-compact [data-aga-search-results-wrap]{max-width:100%}
.aga-search-v284 .aga-search-line>.aga-search-line-title{
    display:flex;align-items:center;gap:10px;margin:0 0 14px;padding:12px 14px;border:1px solid #dce3e0;border-left:5px solid var(--aga-route-color,#64748b);
    border-radius:0 7px 7px 0;background:#f4f7f6!important;color:#243d35;box-shadow:none;font-size:clamp(1.125rem,1rem + .3vw,1.25rem);font-weight:700;line-height:1.65;overflow-wrap:anywhere;
}
.aga-search-v284 .aga-search-line-title>a{min-width:0;max-width:100%;min-height:44px;padding:6px 0;font-weight:700;line-height:inherit;overflow-wrap:anywhere}
/* The monochrome registered SVG is a mask so original black/teal image fills
 * cannot override the prepared route color. No new icon file is requested. */
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-colored-icon{
    display:inline-block!important;position:static!important;flex:0 0 1.2em;width:1.2em!important;height:1.2em!important;min-width:1.2em!important;
    margin:0 .4em 0 0!important;padding:0!important;border:0!important;border-radius:0!important;vertical-align:-.18em!important;
    background:var(--aga-route-color,#64748b)!important;-webkit-mask:var(--aga-route-icon) center/contain no-repeat;mask:var(--aga-route-icon) center/contain no-repeat;
    filter:drop-shadow(0 0 .35px #41504b)!important;box-shadow:none!important;pointer-events:none;
}
.aga-search-v284 .aga-search-line-title>.aga-route-colored-icon{margin:0!important}
/* Both direct SSR <ul> and the two wrappers used by lazy transfer hydration. */
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) details.aga-route-station-transfer :is(ul,[data-aga-hub-transfer-content],[data-aga-hub-transfer-loaded]){
    max-height:none!important;max-block-size:none!important;overflow:visible!important;
}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) details.aga-route-station-transfer>[data-aga-hub-transfer-content]{margin:0;padding:0}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) details.aga-route-station-transfer ul{
    display:block;margin:0!important;padding:6px 14px!important;list-style:none;
}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) details.aga-route-station-transfer ul>li{min-width:0;margin:0!important;padding:0!important;list-style:none}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) details.aga-route-station-transfer ul>li+li{border-top:1px solid #e5ebe8}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) details.aga-route-station-transfer ul>li>.aga-transfer-line-link{
    display:grid!important;width:100%;min-height:44px;padding:8px 0!important;font-size:15px;line-height:1.6;
}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) details.aga-route-station-transfer :is([data-aga-hub-transfer-status],.aga-hub-transfer-fallback){
    margin:0!important;padding:10px 14px!important;font-size:13px;line-height:1.65;color:#52615a;overflow-wrap:anywhere;
}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) details.aga-route-station-transfer [data-aga-hub-transfer-status]:empty{display:none}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) details.aga-route-station-transfer .aga-hub-transfer-fallback>a{
    display:inline-block;min-height:44px;padding:8px 0!important;font-size:13px;line-height:1.65;
}
@media(max-width:480px){
    .aga-search-v284 .aga-company-route-picker-body{padding:12px 10px}
    .aga-search-v284 .aga-search-line>.aga-search-line-title{gap:8px;padding:10px 12px}
}
@media(forced-colors:active){
    :is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-color-dot{border-color:CanvasText;background:Canvas}
    :is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-colored-icon{background:CanvasText!important;filter:none!important}
    .aga-search-v284 .aga-search-line>.aga-search-line-title{border-color:CanvasText;background:Canvas}
}
/* Prepared consecutive regional runs are backgrounds in the existing grid.
 * They add no station-order measurement and never reconnect separate lanes. */
[data-route-presentation="334"] :is(.aga-route-region-frame,.aga-route-diagram-region){--aga-region-surface:#f3f5f7;--aga-region-border:#c9d1d8}
[data-route-presentation="334"] [data-route-region="hokkaido"]{--aga-region-surface:#f0f1fb;--aga-region-border:#c2c5e4}
[data-route-presentation="334"] [data-route-region="tohoku"]{--aga-region-surface:#f0f7ed;--aga-region-border:#bad2ad}
[data-route-presentation="334"] [data-route-region="kanto"]{--aga-region-surface:#eef5ff;--aga-region-border:#b6cce4}
[data-route-presentation="334"] [data-route-region="chubu"]{--aga-region-surface:#fff6e9;--aga-region-border:#e1c497}
[data-route-presentation="334"] [data-route-region="kinki"]{--aga-region-surface:#f7f0fc;--aga-region-border:#d3bee4}
[data-route-presentation="334"] [data-route-region="chugoku"]{--aga-region-surface:#edf8f7;--aga-region-border:#a8d3cf}
[data-route-presentation="334"] [data-route-region="shikoku"]{--aga-region-surface:#fcf7e7;--aga-region-border:#ded09d}
[data-route-presentation="334"] [data-route-region="kyushu"]{--aga-region-surface:#fcf0f2;--aga-region-border:#dfbdc5}
[data-route-presentation="334"] .aga-route-region-frame{
    display:block;position:relative;z-index:0;align-self:stretch;justify-self:stretch;min-width:0;min-height:0;box-sizing:border-box;
    margin:0 4px 8px 0;padding:0;border:1px solid var(--aga-region-border);border-radius:8px;background:var(--aga-region-surface);pointer-events:none;
}
[data-route-presentation="334"] .aga-route-diagram-grid:has(>.aga-route-region-frame)>:is(.aga-route-edge-h,.aga-route-edge-v){z-index:1}
[data-route-presentation="334"] .aga-route-diagram-grid:has(>.aga-route-region-frame)>.aga-route-diagram-region{
    z-index:2;box-sizing:border-box;margin:1px 5px 0 1px;padding:8px 10px 10px;border-radius:7px 7px 0 0;background:var(--aga-region-surface);
}
[data-route-presentation="334"] .aga-route-diagram-region .aga-route-region-title{font-size:14px;line-height:1.65}
[data-route-presentation="334"] .aga-route-region-title .aga-route-prefecture-links{display:inline;min-width:0;max-width:100%;font-weight:400}
[data-route-presentation="334"] .aga-route-region-title .aga-route-prefecture-link{display:inline-block;min-height:44px;box-sizing:border-box;padding:10px 0!important;font-size:14px;line-height:1.65;overflow-wrap:anywhere}
/* Endpoint labels have a compact first/last guide above the station name.
 * The separate detailed click popup keeps its existing layout. */
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .leaflet-tooltip.aga-map-endpoint-label{
    width:max-content!important;max-width:160px!important;box-sizing:border-box;padding:5px 7px!important;white-space:normal!important;color:#243d35;font-family:inherit!important;font-size:12px!important;line-height:1.35!important;
}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .leaflet-tooltip.aga-map-endpoint-label .aga-map-endpoint-heading{
    display:flex!important;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px;margin:0 0 2px;font-size:11px!important;font-weight:600!important;line-height:1.35!important;color:#52615a;
}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-map-endpoint-heading img.aga-ui-icon{
    display:block!important;position:static!important;flex:0 0 12px;width:12px!important;height:12px!important;min-width:12px!important;max-width:12px!important;
    margin:0!important;padding:0!important;vertical-align:middle!important;transform:none!important;
}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .leaflet-tooltip.aga-map-endpoint-label .aga-map-endpoint-name{display:block!important;margin:0;font-size:12px!important;font-weight:700!important;line-height:1.35!important;overflow-wrap:anywhere}
@media(forced-colors:active){
    [data-route-presentation="334"] :is(.aga-route-region-frame,.aga-route-diagram-region){--aga-region-surface:Canvas;--aga-region-border:CanvasText}
}

:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-colored-link[aria-current="page"]>:is(.aga-route-link-text,.aga-transfer-link-name){text-decoration:none}

/* Shared page link rules carry several pseudo-class selectors. Match their
 * specificity without affecting any link outside this explicit route class. */
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) a.aga-route-colored-link[href]:is(:link,:visited,:hover,:active,:focus){text-decoration:none!important}

.aga-search-v284 .aga-search-jump-lines,.aga-search-v284 .aga-search-jump-lines>li{list-style:none;margin:0;padding:0;min-width:0}

/* v339: only names lose their standard underline on hover-capable pointers.
 * Keep the anchor hit area, native touch activation and focus indication.
 * Do not apply this to unrelated coloured links or to the entire node. */
@media (hover: hover) and (pointer: fine) {
    :is(.aga-search-v284,.aga-seo-page,.aga-public-media) [data-route-presentation="334"] .aga-route-diagram-node .aga-route-station-group>a.aga-route-station-card[href]:hover>.aga-search-station-name,
    :is(.aga-search-v284,.aga-seo-page,.aga-public-media) a.aga-transfer-line-link.aga-route-colored-link[href]:hover>.aga-transfer-link-name {
        text-decoration-line:none;
    }
}

/* Same prepared route colour as the name dot, scoped to the neighbour rail. */
.aga-seo-page .aga-seo-station-route-navigation details.aga-seo-station-neighbor-links>:is(ul,.aga-seo-note) {
    border-left-color:var(--aga-station-neighbor-color,#64748b);
}
/* Individual maps use an accessible focus button inside the small tooltip.
 * It inherits the endpoint typography instead of the legacy 14px map button. */
.aga-public-media .leaflet-tooltip.aga-map-endpoint-label>.aga-map-endpoint-content.aga-map-station-focus{font:inherit!important;margin:0!important;padding:0!important}

/* v341: contextual rail symbols use the already registered free SVGs. The
 * subway symbol is a white mask inside a static tunnel; its background uses
 * the prepared route colour (or the helper's dark common-station fallback).
 * No animation, layout observer, or additional icon library is needed. */
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison) .aga-rail-icon{
    display:inline-block!important;position:relative!important;box-sizing:border-box;float:none!important;
    width:1.2em!important;height:1.2em!important;min-width:1.2em!important;max-width:none!important;max-height:none!important;flex:0 0 1.2em;
    margin:0 .4em 0 0!important;padding:0!important;vertical-align:-.2em!important;pointer-events:none;text-decoration:none;
}
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison) span.aga-rail-icon-mask{
    background:var(--aga-rail-icon-color,#334155);-webkit-mask:var(--aga-rail-icon-url) center/contain no-repeat;mask:var(--aga-rail-icon-url) center/contain no-repeat;
    border:0;border-radius:0;box-shadow:none;filter:drop-shadow(0 0 .35px #41504b);
}
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison) span.aga-rail-icon-subway{
    overflow:hidden;border:1px solid rgb(30 41 59 / 28%);border-radius:48% 48% 10% 10%;background:var(--aga-rail-icon-color,#334155);
    -webkit-mask:none;mask:none;box-shadow:none;filter:none;
}
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison) span.aga-rail-icon-subway::before{
    content:"";display:block;position:absolute;inset:8% 2% 1%;margin:0;padding:0;border:0;background:#fff;
    -webkit-mask:var(--aga-rail-icon-url) center/contain no-repeat;mask:var(--aga-rail-icon-url) center/contain no-repeat;
    filter:drop-shadow(0 0 .45px rgb(15 23 42 / 85%));pointer-events:none;
}
.aga-search-v284 .aga-search-line-title>.aga-rail-icon{margin:0!important}
/* The hospital sits outside the name anchor. A separate text column keeps
 * wrapped names aligned with their first line and avoids underlining icons. */
:is(.aga-seo-page,.aga-clinic-list,.agaclinic-db-public-page) .aga-clinic-heading>h3:has(>.aga-ui-icon-hospital){
    display:flex;align-items:flex-start;gap:.4em;line-height:1.6;
}
:is(.aga-seo-page,.aga-clinic-list,.agaclinic-db-public-page) .aga-clinic-heading>h3>.aga-clinic-heading-name{display:block;min-width:0;line-height:inherit}
:is(.aga-seo-page,.aga-clinic-list,.agaclinic-db-public-page) .aga-clinic-heading>h3>img.aga-ui-icon-hospital{
    display:block!important;position:static!important;float:none!important;flex:0 0 1.2em!important;
    width:1.2em!important;height:1.2em!important;min-width:1.2em!important;max-width:none!important;
    margin:.2em 0 0!important;padding:0!important;vertical-align:0!important;transform:none!important;
}
@media(forced-colors:active){
    :is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison) .aga-rail-icon{display:none!important}
}

/* Candidate badges retain their station/line text; the decorative transport
 * symbol stays inside the badge without widening the suggestion card. */
.aga-search-v319 .aga-search-v319-result-type:has(>.aga-rail-icon){display:inline-flex;align-items:center;white-space:nowrap;vertical-align:.05em}
.aga-search-v319 .aga-search-v319-result-type>.aga-rail-icon{
    width:1.1em!important;height:1.1em!important;min-width:1.1em!important;flex:0 0 1.1em;margin:0 .3em 0 0!important;vertical-align:0!important;
}


/* v342: compact section rhythm. Each boundary has one useful separation;
 * do not reset all headings/paragraphs or alter ad/map reservations, map frames,
 * branch rows/lanes, anchor offsets, disclosure visibility or touch targets. */
.aga-search-v284 .aga-search-jump-nav{margin-block:20px;padding-block:16px}
.aga-search-v319{margin-bottom:16px;padding-bottom:16px}
.aga-search-v319-navigation{margin-bottom:16px;padding-bottom:12px}
.aga-search-v284 .aga-company-route-picker-body>.aga-search-v319-compact{margin-bottom:12px;padding-bottom:12px}
.aga-search-v284 .aga-company-route-picker-body>.aga-company-route-list-title{margin-top:12px;margin-bottom:8px}
.aga-search-v284 .aga-search-company-index{margin-block:16px;padding-block:12px}
.aga-search-v284 .aga-search-jump-companies{margin-top:20px;row-gap:20px}
.aga-search-v284 .aga-search-jump-company>.aga-search-jump-company-link{margin-bottom:12px}
.aga-search-v284 .aga-search-jump-area-groups>.aga-search-jump-area-group{margin-top:20px}
.aga-search-v284 :is(.aga-search-jump-prefectures,.aga-search-jump-regions){margin-top:8px}
.aga-search-v284 .aga-search-regions{margin-block:20px;gap:20px}
.aga-search-v284 :is(.aga-search-region,.aga-search-zones){padding-block:20px}
.aga-search-v284 .aga-search-prefectures{margin-block:20px}
.aga-search-v284 .aga-search-prefecture-group{margin-block:20px}
.aga-search-v284 .aga-search-prefecture-group+.aga-search-prefecture-group{padding-top:16px}
.aga-search-v284 .aga-search-company{margin-block:24px;padding-block:20px}
.aga-search-v284 .aga-search-company>h3{margin-bottom:12px}
.aga-search-v284 .aga-company-route-picker{margin-block:12px 16px}
.aga-search-v284 .aga-search-line{margin-top:20px;padding-top:16px}
.aga-search-v284 .aga-search-line>.aga-search-line-title{margin-bottom:12px}
.aga-search-v284 .aga-search-map{margin-block:12px 16px}
.aga-search-v284 .aga-search-map-choice-columns>.aga-search-map{margin:0}
.aga-search-v284 .aga-search-line>.aga-search-map:last-child{margin-bottom:0}
.aga-search-v284 :is(.aga-search-map-index,.aga-search-map-index-prefecture){margin-block:20px}
.aga-search-v284 .aga-search-map-index-prefecture{padding-top:16px}
.aga-search-v284 .aga-search-map-index-prefecture>h3{margin-bottom:12px}
.aga-search-v284 :is(.aga-search-hint,.aga-search-footnote){margin-block:8px 0}

/* Main comparison headings and section containers only; diagram region/group
 * headings and advertiser headings deliberately retain their own geometry. */
.aga-seo-page>.aga-seo-overview{margin-block:16px 20px;padding-bottom:16px}
.aga-seo-page .aga-seo-contents{margin-bottom:20px}
.aga-seo-page :is(.aga-seo-locations,.aga-seo-locations-top){margin-block:24px;padding-top:16px}
.aga-seo-page :is(.aga-seo-locations,.aga-seo-locations-top)>h2{margin-block:0 12px}
.aga-seo-page .aga-seo-locations .aga-seo-location-group+.aga-seo-location-group,
.aga-seo-page .aga-seo-locations .aga-seo-location-ungrouped{margin-top:20px}
.aga-seo-page .aga-seo-train-navigation{margin-block:24px;padding-block:16px}
.aga-seo-page .aga-seo-train-navigation>h2{margin-block:0 12px}
.aga-seo-page form.aga-seo-filter{margin-block:24px;padding-block:20px}
.aga-seo-page .aga-seo-filter .aga-seo-filter-instructions{margin-bottom:16px}
.aga-seo-page :is(.aga-seo-ranking,.aga-price-chart,.aga-access-comparison){margin-block:24px}
.aga-seo-page .aga-seo-price-group{margin-block:20px;padding-bottom:16px}
.aga-seo-page .aga-price-chart{padding-block:20px}
.aga-seo-page .aga-price-chart>:is(h2,h3){margin-block:0 12px}
.aga-seo-page .aga-price-chart ol{margin-top:12px}
.aga-seo-page .aga-unit-price-group+.aga-unit-price-group{margin-top:20px;padding-top:16px}
.aga-seo-page :is(.aga-seo-ranking,.aga-seo-clinic-results)>h2{margin-block:24px 16px}
.aga-seo-page .aga-page-map{margin-block:20px}
.aga-seo-page .aga-page-map>h2{margin-block:0 12px}
.aga-seo-page .aga-seo-pagination{margin-block:24px}
.aga-seo-page .aga-seo-about{margin-top:24px;padding-top:16px}
.aga-seo-page .aga-seo-about>h2{margin-block:0 12px}

/* Clinic cards: preserve the outer padding and reduce stacked margins within
 * the card. First/last trimming is restricted to known content, never ads. */
.aga-seo-page .aga-clinic-card{margin-block:24px}
:is(.aga-seo-page,.aga-clinic-list) .aga-clinic-heading{margin-bottom:16px;padding-bottom:12px}
.aga-seo-page .aga-clinic-card>section>:is(h3,h4){margin-block:20px 12px}
.aga-seo-page .aga-clinic-card .aga-clinic-drug-prices{margin-block:20px}
.aga-seo-page :is(.aga-clinic-sort-price,.aga-clinic-comparison-price){margin-block:16px}
.aga-seo-page .aga-clinic-official{margin-block:16px}
:is(.aga-seo-page,.aga-clinic-detail) .aga-auto-prices .aga-auto-drug-group{margin-block:16px;padding-bottom:16px}
:is(.aga-seo-page,.aga-clinic-detail) .aga-auto-prices .aga-auto-drug-group:last-child{margin-bottom:0;padding-bottom:0}
:is(.aga-seo-page,.aga-clinic-detail) .aga-auto-prices .aga-auto-drug-group:first-child{margin-top:0}
.aga-seo-page .aga-clinic-card .aga-official-access{margin-block:20px;padding-block:16px}
:is(.aga-seo-page,.aga-clinic-detail,.aga-clinic-list) .aga-official-access>:is(h3,h4){margin-block:0 12px}
:is(.aga-seo-page,.aga-clinic-detail,.aga-clinic-list) .aga-official-access>p{margin:8px 0;padding:0;font-size:14px;line-height:1.75;overflow-wrap:anywhere}
:is(.aga-seo-page,.aga-clinic-detail,.aga-clinic-list) .aga-official-access>:last-child{margin-bottom:0}
:is(.aga-seo-page,.aga-clinic-detail,.aga-clinic-list) .aga-access-original{margin-top:12px}
:is(.aga-seo-page,.aga-clinic-detail,.aga-clinic-list) .aga-access-source{margin-block:6px 12px}
.aga-seo-page .aga-clinic-list .aga-service-grid{gap:12px}
.aga-seo-page .aga-clinic-list .aga-service-group>h4{margin-bottom:10px;padding-bottom:10px}
.aga-seo-page .aga-service-unknown-summary{margin-top:12px}

/* Detail page grid owns its section spacing. Ad wrappers are handled separately
 * by the v342 ad-layout fragment, without changing this grid at runtime. */
.aga-clinic-detail .aga-clinic-detail-nav{margin-block:20px 24px;padding-block:16px}
.aga-clinic-detail .aga-clinic-detail-content{gap:24px}
.aga-clinic-detail .aga-clinic-detail-section>.aga-clinic-detail-section-title{padding-block:16px}
.aga-clinic-detail .aga-clinic-detail-section-body{padding-block:20px}
.aga-clinic-detail .aga-clinic-detail-section-body>h3{margin-block:20px 12px}
.aga-clinic-detail .aga-clinic-detail-section-body>h3:first-child{margin-top:0}
.aga-clinic-detail .aga-clinic-detail-section-body>p{margin-block:12px}
.aga-clinic-detail .aga-clinic-detail-section-body>:first-child{margin-top:0}
.aga-clinic-detail .aga-clinic-detail-section-body>:last-child{margin-bottom:0}
.aga-clinic-detail .aga-service-grid{gap:12px}
.aga-clinic-detail .aga-service-unknown{margin-top:12px}
.aga-clinic-detail .aga-clinic-detail-related{margin-bottom:16px;padding-bottom:12px}
.aga-clinic-detail .aga-clinic-detail-related:last-child{margin-bottom:0;padding-bottom:0}

/* The plugin's own editor profile, not article/theme author boxes. */
.aga-profile-v299.post-profile-before-toc{margin-bottom:20px!important}
.aga-profile-v299 .post-author{padding-block:24px!important}
.aga-profile-v299 .post-author-details-content{margin-bottom:12px!important}

/* Consultation and reception use the same eight-column ruler. The intrinsic
 * minimum is font-relative so enlarged text scrolls inside this wrapper rather
 * than breaking a time range or widening the page. Explicit <br> is retained. */
:is(.aga-seo-page,.aga-clinic-detail,.aga-clinic-list,.agaclinic-db-public-page) .aga-clinic-hours214{margin-block:20px;min-width:0;max-width:100%}
:is(.aga-seo-page,.aga-clinic-detail,.aga-clinic-list,.agaclinic-db-public-page) .aga-clinic-hours214-scroll{min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;margin:0 0 12px}
:is(.aga-seo-page,.aga-clinic-detail,.aga-clinic-list,.agaclinic-db-public-page) table.aga-clinic-hours214-table{width:100%!important;min-width:60em;table-layout:fixed!important;margin:0;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}
:is(.aga-seo-page,.aga-clinic-detail,.aga-clinic-list,.agaclinic-db-public-page) table.aga-clinic-hours214-table :is(th,td){box-sizing:border-box;width:12.5%!important;padding:8px!important;text-align:center;vertical-align:top;font-size:14px;line-height:1.65;white-space:nowrap!important;overflow-wrap:normal;word-break:normal;letter-spacing:normal}
:is(.aga-seo-page,.aga-clinic-detail,.aga-clinic-list,.agaclinic-db-public-page) table.aga-clinic-hours214-table caption{padding:8px 12px;font-size:14px;line-height:1.65;text-align:left;white-space:normal;overflow-wrap:anywhere}
:is(.aga-seo-page,.aga-clinic-detail,.aga-clinic-list,.agaclinic-db-public-page) .aga-clinic-hours214-department{margin-block:12px}
:is(.aga-seo-page,.aga-clinic-detail,.aga-clinic-list,.agaclinic-db-public-page) .aga-clinic-hours214-department>.aga-clinic-hours214-scroll:last-child{margin-bottom:0}

@media(max-width:680px){
 .aga-search-v284 :is(.aga-search-region,.aga-search-zones,.aga-search-company){padding-block:16px}
 .aga-search-v284 .aga-search-line{margin-top:20px;padding-top:16px}
 .aga-seo-page :is(.aga-seo-locations,.aga-seo-locations-top){margin-block:20px;padding-top:14px}
 .aga-seo-page form.aga-seo-filter{padding-block:16px}
 .aga-seo-page .aga-clinic-card{margin-block:20px}
 .aga-seo-page .aga-clinic-card .aga-official-access{padding-block:12px}
 .aga-seo-page .aga-price-chart{padding-block:14px}
 .aga-seo-page .aga-seo-train-navigation{padding-block:14px}
 .aga-clinic-detail .aga-clinic-detail-content{gap:20px}
 .aga-clinic-detail .aga-clinic-detail-section-body{padding-block:16px}
 .aga-clinic-detail .aga-clinic-detail-section>.aga-clinic-detail-section-title{padding-block:14px}
 .aga-profile-v299 .post-author{padding-block:16px!important}
}

@media print{
 :is(.aga-seo-page,.aga-clinic-detail,.aga-clinic-list,.agaclinic-db-public-page) table.aga-clinic-hours214-table{min-width:0!important;font-size:8pt}
 :is(.aga-seo-page,.aga-clinic-detail,.aga-clinic-list,.agaclinic-db-public-page) table.aga-clinic-hours214-table :is(th,td){font-size:8pt;padding:4px!important}
}


/* v342: whole-button links, with independent text / route dot / destination
 * arrow. Decorations never occupy text width or change on touch activation. */
.aga-clinic-list p.aga-clinic-detail-link{margin:16px 0 0;padding:0;max-width:100%}
.aga-clinic-list p.aga-clinic-detail-link>a[href]{
    display:inline-flex;position:relative;align-items:center;box-sizing:border-box;gap:12px;
    max-width:100%;min-height:48px;padding:12px 16px;border:1px solid #cfd4d7;border-radius:8px;
    background:#f5f6f7;color:#00e!important;font-size:16px;font-weight:700;line-height:1.65;text-align:left;
}
.aga-clinic-list p.aga-clinic-detail-link>a[href]:has(>.aga-ui-icon-trailing){padding-right:42px}
.aga-clinic-list p.aga-clinic-detail-link>a[href]:is(:link,:visited,:hover,:active,:focus),
.aga-clinic-detail .aga-clinic-detail-related a.aga-clinic-related-link[href]:is(:link,:visited,:hover,:active,:focus){text-decoration:none!important}
.aga-clinic-list .aga-clinic-detail-link-text,
.aga-clinic-detail .aga-clinic-related-link-text{display:block;min-width:0;max-width:100%;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:.2em}
.aga-clinic-list p.aga-clinic-detail-link>a[href]>.aga-ui-icon-trailing,
.aga-clinic-detail .aga-clinic-detail-related a.aga-clinic-related-link[href]>.aga-ui-icon-trailing{
    display:block!important;position:absolute!important;right:14px!important;left:auto!important;top:50%!important;bottom:auto!important;
    grid-area:auto!important;align-self:auto!important;justify-self:auto!important;
    width:14px!important;height:14px!important;min-width:14px!important;max-width:14px!important;
    margin:0!important;padding:0!important;transform:translateY(-50%)!important;flex:none!important;pointer-events:none;
}
.aga-clinic-list p.aga-clinic-detail-link>a[href]:focus-visible,
.aga-clinic-detail .aga-clinic-detail-related a.aga-clinic-related-link[href]:focus-visible{outline:3px solid #9b6500;outline-offset:3px}
.aga-clinic-detail .aga-clinic-detail-related a.aga-clinic-related-link[href]{
    display:block!important;position:relative!important;box-sizing:border-box;max-width:100%;min-height:44px;
    padding:10px 14px!important;line-height:1.65;
}
.aga-clinic-detail .aga-clinic-detail-related a.aga-clinic-related-link[href]:has(>.aga-ui-icon-trailing){padding-right:40px!important}
.aga-clinic-detail .aga-clinic-detail-related a.aga-clinic-related-link.aga-route-colored-link[href]{
    display:grid!important;grid-template-columns:12px minmax(0,1fr);align-items:center;gap:8px;
}
.aga-clinic-detail .aga-clinic-related-link>.aga-route-color-dot{
    display:block;position:static;grid-column:1;grid-row:1;align-self:center;box-sizing:border-box;
    width:12px;height:12px;min-width:12px;margin:0;padding:0;border:1px solid rgb(26 40 45 / 40%);border-radius:50%;
    background:var(--aga-route-color,#64748b);box-shadow:none;text-decoration:none;pointer-events:none;
}
.aga-clinic-detail .aga-clinic-related-link.aga-route-colored-link>.aga-clinic-related-link-text{grid-column:2;grid-row:1}
/* These existing route links already contain a dot, text and registered SVG.
 * Override the older grid-arrow placement so its centre stays at the edge. */
.aga-seo-page .aga-seo-locations.aga-seo-locations-line a.aga-route-colored-link[href]{
    display:grid!important;position:relative!important;grid-template-columns:12px minmax(0,1fr)!important;
}
.aga-seo-page .aga-seo-locations.aga-seo-locations-line a[href]:has(>.aga-ui-icon-trailing){position:relative!important;padding-right:40px!important}
.aga-seo-page .aga-seo-locations.aga-seo-locations-line a[href]>.aga-ui-icon-trailing{
    display:block!important;position:absolute!important;inset:auto!important;right:14px!important;top:50%!important;
    grid-area:auto!important;align-self:auto!important;justify-self:auto!important;
    width:14px!important;height:14px!important;min-width:14px!important;max-width:14px!important;
    margin:0!important;padding:0!important;transform:translateY(-50%)!important;pointer-events:none;
}
@media(hover:hover) and (pointer:fine){
    .aga-clinic-list p.aga-clinic-detail-link>a[href]:hover{background:#e9ecef;border-color:#b8c0c5}
    .aga-clinic-list p.aga-clinic-detail-link>a[href]:hover>.aga-clinic-detail-link-text,
    .aga-clinic-detail .aga-clinic-detail-related a.aga-clinic-related-link[href]:hover>.aga-clinic-related-link-text,
    .aga-seo-page .aga-seo-locations.aga-seo-locations-line a.aga-route-colored-link[href]:hover>.aga-route-link-text{text-decoration-line:none}
}
@media(max-width:600px){
    .aga-clinic-list p.aga-clinic-detail-link>a[href]{display:flex;width:100%}
}
@media(forced-colors:active){
    .aga-clinic-detail .aga-clinic-related-link>.aga-route-color-dot{border-color:CanvasText;background:Canvas}
}


/* v342: compact source-bound station distances; native disclosures add no Ajax. */
:is(.aga-seo-page,.aga-public-media) .aga-station-distance-main{display:block;line-height:1.75;overflow-wrap:anywhere}
:is(.aga-seo-page,.aga-public-media) .aga-station-distance-route-list{display:block;margin:4px 0 0;padding:0;max-height:none;overflow:visible;font-size:14px;line-height:1.75}
:is(.aga-seo-page,.aga-public-media) .aga-station-distance-route{display:inline-grid;grid-template-columns:10px minmax(0,1fr);column-gap:6px;align-items:baseline;max-width:100%;vertical-align:top;line-height:inherit}
:is(.aga-seo-page,.aga-public-media) .aga-station-distance-route:not(:has(>.aga-route-color-dot)){grid-template-columns:minmax(0,1fr)}
:is(.aga-seo-page,.aga-public-media) .aga-station-distance-route>.aga-route-color-dot{display:block;box-sizing:border-box;width:10px;height:10px;min-width:10px;margin:0;padding:0;border:1px solid rgb(26 40 45 / 40%);border-radius:50%;background:var(--aga-route-color,#64748b);text-decoration:none!important;pointer-events:none}
:is(.aga-seo-page,.aga-public-media) .aga-station-distance-route-name{min-width:0;overflow-wrap:anywhere;line-height:inherit}
:is(.aga-seo-page,.aga-public-media) .aga-station-distance-separator{display:inline;color:#626262;padding:0 .3em;text-decoration:none}
:is(.aga-seo-page,.aga-public-media) details.aga-station-distance-routes{box-sizing:border-box;max-width:100%;margin:5px 0 0;padding:0;border:1px solid #d9dddd;border-radius:5px;background:#fff;font-size:14px;line-height:1.75}
:is(.aga-seo-page,.aga-public-media) details.aga-station-distance-routes>summary{display:flex;align-items:center;gap:8px;justify-content:space-between;box-sizing:border-box;min-height:44px;margin:0;padding:8px 10px;list-style:none;font-size:14px;line-height:1.6;color:#343434;background:#f6f7f7;cursor:pointer}
:is(.aga-seo-page,.aga-public-media) details.aga-station-distance-routes>summary>span{min-width:0;overflow-wrap:anywhere}
:is(.aga-seo-page,.aga-public-media) details.aga-station-distance-routes>summary::marker{content:""}
:is(.aga-seo-page,.aga-public-media) details.aga-station-distance-routes>summary::-webkit-details-marker{display:none}
:is(.aga-seo-page,.aga-public-media) details.aga-station-distance-routes>summary::before{content:none}
:is(.aga-seo-page,.aga-public-media) details.aga-station-distance-routes>summary::after{content:"";display:block;flex:0 0 7px;width:7px;height:7px;margin:0 2px 4px 4px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .16s ease}
:is(.aga-seo-page,.aga-public-media) details.aga-station-distance-routes>summary:has(>.aga-ui-icon)::after{display:none}
:is(.aga-seo-page,.aga-public-media) details.aga-station-distance-routes>summary>.aga-ui-icon{position:static!important;display:block!important;flex:0 0 14px;width:14px!important;height:14px!important;min-width:14px!important;margin:0!important;transition:transform .16s ease}
:is(.aga-seo-page,.aga-public-media) details.aga-station-distance-routes[open]>summary{margin-bottom:0;border-bottom:1px solid #d9dddd}
:is(.aga-seo-page,.aga-public-media) details.aga-station-distance-routes[open]>summary>.aga-ui-icon{transform:rotate(180deg)}
:is(.aga-seo-page,.aga-public-media) details.aga-station-distance-routes[open]>summary::after{transform:rotate(225deg);margin-bottom:0}
:is(.aga-seo-page,.aga-public-media) details.aga-station-distance-routes>.aga-station-distance-route-list{margin:0;padding:8px 10px}
:is(.aga-seo-page,.aga-public-media) details.aga-station-distance-routes>summary:focus-visible{outline:2px solid #155eaa;outline-offset:2px}
@media(hover:hover) and (pointer:fine){
    :is(.aga-seo-page,.aga-public-media) details.aga-station-distance-routes>summary:hover{background:#ecefef}
    :is(.aga-seo-page,.aga-public-media) .aga-station-distance-route-name>a:hover{ text-decoration:none!important }
}
@media(prefers-reduced-motion:reduce){:is(.aga-seo-page,.aga-public-media) details.aga-station-distance-routes>summary::after,:is(.aga-seo-page,.aga-public-media) details.aga-station-distance-routes>summary>.aga-ui-icon{transition:none}}
@media(forced-colors:active){:is(.aga-seo-page,.aga-public-media) .aga-station-distance-route>.aga-route-color-dot{border-color:CanvasText;background:Canvas}}


/* v342: the company symbol stays neutral even after the rail-hub stylesheet. */
:is(.aga-seo-page,.aga-search-v284,.aga-clinic-list) img.aga-ui-icon-building{filter:brightness(0) invert(20.3921568627%)!important}

/* v343: each route is one list item; visual gaps replace punctuation. */
:is(.aga-seo-page,.aga-public-media) ul.aga-station-distance-route-list{display:flex;flex-wrap:wrap;gap:6px 12px;box-sizing:border-box;list-style:none;margin:4px 0 0;padding:0}
:is(.aga-seo-page,.aga-public-media) ul.aga-station-distance-route-list>li{display:block;flex:0 1 auto;min-width:0;max-width:100%;box-sizing:border-box;list-style:none;margin:0;padding:0;line-height:inherit}
:is(.aga-seo-page,.aga-public-media) ul.aga-station-distance-route-list>li::before,:is(.aga-seo-page,.aga-public-media) ul.aga-station-distance-route-list>li::after{content:none}
:is(.aga-seo-page,.aga-public-media) ul.aga-station-distance-route-list>li::marker{content:""}
.aga-seo-page td.aga-seo-distance-column ul.aga-station-distance-route-list{flex-direction:column;align-items:stretch}
:is(.aga-seo-page,.aga-public-media) details.aga-station-distance-routes>ul.aga-station-distance-route-list{margin:0;padding:8px 10px}
:is(.aga-seo-page,.aga-public-media) .aga-station-distance-inline-routes>.aga-station-distance-route+.aga-station-distance-route{margin-inline-start:12px}

/* v343: candidate badges are inline content, not TOC trailing arrows. Keep
 * the subway positioned container while removing inherited arrow offsets. */
.aga-search-v319 .aga-search-v319-result-type {
    display:inline-flex;align-items:center;gap:.3em;white-space:nowrap;
    vertical-align:.05em;line-height:1.5;
}
.aga-search-v319 .aga-search-v319-result-type>.aga-ui-icon {
    display:block!important;position:relative!important;inset:auto!important;
    transform:none!important;float:none!important;box-sizing:border-box;
    width:1.1em!important;height:1.1em!important;min-width:1.1em!important;
    max-width:none!important;max-height:none!important;flex:0 0 1.1em!important;
    margin:0!important;padding:0!important;vertical-align:0!important;
    pointer-events:none;
}
.aga-search-v319 .aga-search-v319-result-type>.aga-search-v343-result-type-text {
    display:block;line-height:1.5;position:relative;top:.04em;
}
/* Explicit symmetric insets avoid the TOC/link pseudo-element defaults.
 * The SVG remains the user's assigned asset, centered inside the tunnel. */
.aga-search-v319 .aga-search-v319-result-type>span.aga-rail-icon-subway::before {
    inset:4% 2%;width:auto;height:auto;margin:0;padding:0;
    transform:none;box-sizing:border-box;
    -webkit-mask-position:center;mask-position:center;
    -webkit-mask-size:contain;mask-size:contain;
}
@media(forced-colors:active) {
    .aga-search-v319 .aga-search-v319-result-type>.aga-ui-icon{display:none!important}
}

/* v343: every existing breadcrumb item shares one compact icon/text layout.
 * Scope the reset to breadcrumb items: TOC arrows and search badges keep their
 * own rules. Relative positioning is needed by the subway's white inner glyph. */
:is(.aga-seo-breadcrumbs,.aga-search-breadcrumbs,.aga-clinic-breadcrumbs) .aga-breadcrumb-item{
    display:inline-grid!important;grid-template-columns:minmax(0,1fr);align-items:start;column-gap:.35em;
    min-width:0;max-width:100%;line-height:1.65!important;vertical-align:top;
}
:is(.aga-seo-breadcrumbs,.aga-search-breadcrumbs,.aga-clinic-breadcrumbs) .aga-breadcrumb-item:has(>.aga-ui-icon){grid-template-columns:1em minmax(0,1fr)}
:is(.aga-seo-breadcrumbs,.aga-search-breadcrumbs,.aga-clinic-breadcrumbs) .aga-breadcrumb-item>.aga-ui-icon{
    display:inline-block!important;position:relative!important;inset:auto!important;transform:none!important;
    box-sizing:border-box;width:1em!important;height:1em!important;min-width:1em!important;max-width:1em!important;min-height:0!important;
    margin:.325em 0 0!important;padding:0!important;align-self:start;vertical-align:0!important;
}
:is(.aga-seo-breadcrumbs,.aga-search-breadcrumbs,.aga-clinic-breadcrumbs) .aga-breadcrumb-item>.aga-breadcrumb-label{
    display:block!important;position:static!important;inset:auto!important;transform:none!important;min-width:0;max-width:100%;min-height:0!important;
    margin:0!important;padding:0!important;font:inherit;line-height:inherit;overflow-wrap:anywhere;
}

@media(forced-colors:active){
    :is(.aga-seo-breadcrumbs,.aga-search-breadcrumbs,.aga-clinic-breadcrumbs) .aga-breadcrumb-item:has(>.aga-ui-icon){grid-template-columns:minmax(0,1fr)}
    :is(.aga-seo-breadcrumbs,.aga-search-breadcrumbs,.aga-clinic-breadcrumbs) .aga-breadcrumb-item>.aga-ui-icon{display:none!important}
    :is(.aga-seo-breadcrumbs,.aga-search-breadcrumbs,.aga-clinic-breadcrumbs) .aga-breadcrumb-item>.aga-breadcrumb-label{grid-column:1}
}

/* v343: Centre regional pin/info glyphs on the prepared x=22px rail.
 * A framed header has a 1px margin and 16px glyph: 1 + 13 + 8 = 22.
 * Only framed headers share this geometry; keep legacy/fallback layouts intact. */
[data-route-presentation="334"] .aga-route-diagram-grid:has(>.aga-route-region-frame)>.aga-route-diagram-region{
    padding:8px 10px 10px 13px;
}
/* The shared page icon min-width (1.2em) must not enlarge this 16px track. */
[data-route-presentation="334"] .aga-route-diagram-grid:has(>.aga-route-region-frame)>.aga-route-diagram-region :is(.aga-route-region-title,.aga-route-region-note)>.aga-ui-icon{
    min-width:16px!important;max-width:16px!important;
}


/* v344: one tunnel/glyph ratio for every subway icon. The outer size is still
 * owned by each existing context (candidate, breadcrumb, heading or map).
 * An inset stroke leaves the white SVG the same proportional drawing area
 * at small sizes. No per-route dimensions or runtime measurements are used. */
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison) span.aga-rail-icon-subway {
    min-height:0!important;aspect-ratio:1;box-sizing:border-box!important;
    border:0!important;border-radius:48% 48% 10% 10%!important;
    background:var(--aga-rail-icon-color,#334155)!important;
    box-shadow:inset 0 0 0 1px rgb(30 41 59 / 28%)!important;
    overflow:hidden!important;filter:none!important;
}
/* New markup has a real child. Prepared pre-v344 HTML keeps its single
 * pseudo-element with exactly the same geometry until naturally refreshed.
 * The supplied 640px-square SVG has an ink centre slightly below its canvas
 * centre: 3.8% top / 6% left centres the free glyph inside the tunnel. */
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison) span.aga-rail-icon-subway>.aga-rail-subway-glyph,
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison) span.aga-rail-icon-subway:not(.aga-rail-subway-framed)::before {
    display:block!important;position:absolute!important;box-sizing:border-box!important;
    inset:3.8% auto auto 6%!important;width:88%!important;height:88%!important;
    min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;
    margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
    transform:none!important;float:none!important;box-shadow:none!important;filter:none!important;
    font-size:0!important;line-height:0!important;color:transparent!important;
    background:#fff!important;opacity:1!important;pointer-events:none!important;
    -webkit-mask:var(--aga-rail-icon-url) center/contain no-repeat!important;
    mask:var(--aga-rail-icon-url) center/contain no-repeat!important;
}
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison) span.aga-rail-icon-subway:not(.aga-rail-subway-framed)::before{content:""!important}
/* Prevent a second glyph or theme ornament alongside the dedicated child. */
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison) span.aga-rail-icon-subway.aga-rail-subway-framed::before,
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison) span.aga-rail-icon-subway::after,
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison) .aga-rail-subway-glyph::before,
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison) .aga-rail-subway-glyph::after{content:none!important;display:none!important}


/* v344: first-occurrence prefecture labels with route-colour separators.
 * Each separator remains attached to a whole prefecture label when wrapping. */
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-region-title .aga-route-prefecture-unit{
    display:inline-flex;align-items:center;vertical-align:middle;white-space:nowrap;word-break:normal;overflow-wrap:normal;
}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-region-title .aga-route-prefecture-unit>:is(a,span:not(.aga-route-prefecture-rule):not(.aga-route-prefecture-continuation)){
    white-space:nowrap;word-break:normal;overflow-wrap:normal;
}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-region-title .aga-route-prefecture-rule{
    display:inline-block;flex:0 0 .7em;width:.7em;height:0;box-sizing:content-box;
    margin:0 .22em;padding:0;border:0;border-top:2px solid var(--aga-route-color,#6b7280);vertical-align:middle;
}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-region-title .aga-route-prefecture-continuation{
    display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;margin:0;padding:0;white-space:nowrap;color:inherit;
}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-region-title .aga-route-prefecture-half-rule{
    flex-basis:.35em;width:.35em;margin:0 .12em;
}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-region-title .aga-route-continuation-wave{
    display:inline-block;flex:0 0 .8em;width:.8em;height:1em;margin:0;padding:0;
    color:inherit;font-size:1em;line-height:1;font-weight:400;text-align:center;transform:rotate(90deg);transform-origin:center;
}
@media(forced-colors:active){
    :is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-region-title .aga-route-prefecture-rule{border-top-color:CanvasText}
}



/* v345: keep every tunnel on the same square, untransformed drawing canvas.
 * Contexts still choose their existing em size, gap and route colour. The
 * registered white train keeps the shared 88% optical fit from v344, also
 * for prepared older spans. No image lookup, observer or animation is used. */
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-search-v319,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison,.leaflet-popup-content) span.aga-rail-icon-subway{
    display:inline-block!important;position:relative!important;inset:auto!important;transform:none!important;
    width:1.2em!important;height:1.2em!important;min-width:1.2em!important;max-width:none!important;max-height:none!important;
    margin:0 .4em 0 0!important;padding:0!important;float:none!important;pointer-events:none;
    font-size:inherit!important;line-height:0!important;letter-spacing:normal!important;
    text-indent:0!important;flex-shrink:0!important;vertical-align:-.2em!important;
    min-height:0!important;aspect-ratio:1;box-sizing:border-box!important;
    border:0!important;border-radius:48% 48% 10% 10%!important;
    background:var(--aga-rail-icon-color,#334155)!important;
    -webkit-mask:none!important;mask:none!important;
    box-shadow:inset 0 0 0 1px rgb(30 41 59 / 28%)!important;
    overflow:hidden!important;filter:none!important;
}
/* Use the identical drawing rules in detached map popups and standalone
 * widgets as in page descendants, including naturally retained old markup. */
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-search-v319,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison,.leaflet-popup-content) span.aga-rail-icon-subway>.aga-rail-subway-glyph,
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-search-v319,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison,.leaflet-popup-content) span.aga-rail-icon-subway:not(.aga-rail-subway-framed)::before{
    display:block!important;position:absolute!important;box-sizing:border-box!important;
    inset:3.8% auto auto 6%!important;width:88%!important;height:88%!important;
    min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;
    margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
    transform:none!important;float:none!important;box-shadow:none!important;filter:none!important;
    font-size:0!important;line-height:0!important;color:transparent!important;
    background:#fff!important;opacity:1!important;pointer-events:none!important;
    -webkit-mask:var(--aga-rail-icon-url) center/contain no-repeat!important;
    mask:var(--aga-rail-icon-url) center/contain no-repeat!important;
}
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-search-v319,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison,.leaflet-popup-content) span.aga-rail-icon-subway:not(.aga-rail-subway-framed)::before{content:""!important}
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-search-v319,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison,.leaflet-popup-content) span.aga-rail-icon-subway.aga-rail-subway-framed::before,
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-search-v319,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison,.leaflet-popup-content) span.aga-rail-icon-subway::after,
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-search-v319,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison,.leaflet-popup-content) .aga-rail-subway-glyph::before,
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-search-v319,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison,.leaflet-popup-content) .aga-rail-subway-glyph::after{content:none!important;display:none!important}
@media(forced-colors:active){
    :is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-search-v319,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison,.leaflet-popup-content) span.aga-rail-icon-subway{display:none!important}
}
/* The visible type badge and name now share one first-line coordinate. A
 * second line stays beneath the name, rather than pushing the badge down. */
.aga-search-v319 .aga-search-v345-result-heading{
    display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:start;
    column-gap:.45em;min-width:0;max-width:100%;line-height:1.65;
}
.aga-search-v319 .aga-search-v345-result-type-slot{
    display:flex;align-items:center;box-sizing:border-box;min-width:0;height:1.65em;
    margin:0;padding:0;border:0;font:inherit;line-height:1.65;
}
.aga-search-v319 .aga-search-v345-result-type-slot>.aga-search-v319-result-type{
    display:inline-flex;align-items:center;gap:.3em;margin:0;vertical-align:baseline;
    position:static;inset:auto;transform:none;line-height:1.5;flex:0 0 auto;
}
.aga-search-v319 .aga-search-v319-result-type>.aga-search-v343-result-type-text{
    /* v348: optical centering for Japanese type labels. Shift only the text;
     * icon, badge box and candidate name retain their established geometry. */
    display:block;position:static;inset:auto;transform:translateY(.08em);margin:0;padding:0;line-height:1.5;
}
.aga-search-v319 .aga-search-v345-result-heading>.aga-search-v319-result-name{
    display:block;min-width:0;margin:0;padding:0;line-height:1.65;overflow-wrap:anywhere;
}
/* Inline baselines are irrelevant within these aligned slots. Keep the
 * breadcrumb first-line layout and candidate icon box from earlier releases. */
.aga-search-v319 .aga-search-v319-result-type>span.aga-rail-icon-subway,
:is(.aga-seo-breadcrumbs,.aga-search-breadcrumbs,.aga-clinic-breadcrumbs) .aga-breadcrumb-item>span.aga-rail-icon-subway{
    vertical-align:0!important;
}


/* v345: Equal prefecture spacing, clearer continuation marks and aligned station tops.
 * Gap text has the same font width as the previous inter-unit space. The rule
 * keeps its original .22em margins; both sides now match the former left gap.
 * All positions reuse the prepared grid. No runtime geometry measurements. */
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-region-title .aga-route-prefecture-gap{
    display:inline-block;flex:0 0 auto;margin:0;padding:0;border:0;white-space:pre!important;font:inherit;
}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-region-title .aga-route-continuation-wave{
    flex:0 0 1em;width:1em;height:1em;font-size:1.35em;line-height:1;
}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-region-title .aga-route-prefecture-continuation-before>.aga-route-prefecture-half-rule{margin-left:0}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-region-title .aga-route-prefecture-continuation-after>.aga-route-prefecture-half-rule{margin-right:0}
[data-route-presentation="334"] .aga-route-station-group .aga-route-number{top:0}
/* Card starts 1px inside the group border; 28px circle centre is at y=15px.
 * The x=22px rail, prepared grid spans and topology are unchanged. */
[data-route-presentation="334"] .aga-route-edge-h{margin-top:13px}
[data-route-presentation="334"] .aga-route-edge-v{transform:translateY(15px)}


/* v345: current-page badge precedes the route's colour dot and name. */
:is(.aga-seo-page,.aga-public-media) .aga-station-distance-route[aria-current="page"]{grid-template-columns:auto 10px minmax(0,1fr)}
:is(.aga-seo-page,.aga-public-media) .aga-station-distance-route[aria-current="page"]:not(:has(>.aga-route-color-dot)){grid-template-columns:auto minmax(0,1fr)}
:is(.aga-seo-page,.aga-public-media) .aga-station-distance-route[aria-current="page"]>.aga-seo-current-page-badge{margin:0}



/* v346: paint the registered subway image at 2x before reducing it to its
 * existing 88% optical fit. This avoids the visible small/large raster-size
 * changes at fractional zoom/positions without parsing SVG or changing its
 * registration. Keep both current child markup and legacy empty spans.
 * The tunnel keeps its route colour; only the train image becomes white. */
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-search-v319,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison,.leaflet-popup-content) span.aga-rail-icon-subway>.aga-rail-subway-glyph,
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-search-v319,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison,.leaflet-popup-content) span.aga-rail-icon-subway:not(.aga-rail-subway-framed)::before{
    width:176%!important;height:176%!important;
    transform:scale(.5)!important;transform-origin:0 0!important;
    background:transparent var(--aga-rail-icon-url) center/contain no-repeat!important;
    -webkit-mask:none!important;mask:none!important;
    filter:brightness(0) invert(1)!important;
}


/* v346: continuation-to-prefecture gaps match the ordinary rule separators.
 * One literal space plus .22em is the established v345 outside gap. Keep the
 * short rule touching the wave's box, and add the gap only on the name side.
 * Applies to already saved markup; no prepared graph or HTML rebuild needed. */
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-region-title .aga-route-prefecture-continuation-before>.aga-route-prefecture-half-rule,
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-region-title .aga-route-prefecture-continuation-after>.aga-route-prefecture-half-rule{margin:0}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-region-title .aga-route-prefecture-continuation-before::after,
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-region-title .aga-route-prefecture-continuation-after::before{
    content:" ";display:block;flex:0 0 auto;position:static;inset:auto;width:auto;height:auto;
    margin:0;padding:0;border:0;background:none;transform:none;white-space:pre;font:inherit;pointer-events:none;
}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-region-title .aga-route-prefecture-continuation-before::after{margin-left:.22em}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-region-title .aga-route-prefecture-continuation-after::before{margin-right:.22em}
/* v347: bracket-adjacent prefecture names get .2em on either end. The rotated
 * continuation mark has its own glyph whitespace, so adds no bracket gap.
 * Leave the rule/name gaps, inter-prefecture gaps and frame padding intact. */
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-region-title .aga-route-prefecture-unit:first-child>:first-child:not(.aga-route-prefecture-continuation){margin-left:.2em}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-region-title .aga-route-prefecture-unit:last-child>:last-child:not(.aga-route-prefecture-continuation){margin-right:.2em}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-region-title .aga-route-prefecture-unit:first-child>.aga-route-prefecture-continuation:first-child{margin-left:0}
:is(.aga-search-v284,.aga-seo-page,.aga-public-media) .aga-route-region-title .aga-route-prefecture-unit:last-child>.aga-route-prefecture-continuation:last-child{margin-right:0}


/* v347: the tunnel and train share one server-prepared SVG canvas. Only new
 * integrated markup disables the former CSS tunnel/glyph layers; stored older
 * spans retain their fallback. Existing contexts own the icon's em size and
 * first-line alignment (including candidate badges and breadcrumbs). */
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-search-v319,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison,.leaflet-popup-content) span.aga-rail-icon-subway.aga-rail-subway-integrated{
    position:static!important;inset:auto!important;transform:none!important;
    border:0!important;border-radius:0!important;background:transparent!important;
    -webkit-mask:none!important;mask:none!important;box-shadow:none!important;filter:none!important;
    overflow:visible!important;color:var(--aga-rail-icon-color,#334155)!important;
}
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-search-v319,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison,.leaflet-popup-content) span.aga-rail-icon-subway.aga-rail-subway-integrated::before,
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-search-v319,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison,.leaflet-popup-content) span.aga-rail-icon-subway.aga-rail-subway-integrated::after{
    content:none!important;display:none!important;
}
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-search-v319,.aga-clinic-list,.aga-public-media,.aga-page-breadcrumbs,.aga-official-access,.aga-access-comparison,.leaflet-popup-content) span.aga-rail-icon-subway.aga-rail-subway-integrated>svg{
    display:block!important;position:static!important;inset:auto!important;float:none!important;
    box-sizing:border-box!important;width:100%!important;height:100%!important;
    min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;
    margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
    background:transparent!important;-webkit-mask:none!important;mask:none!important;
    transform:none!important;box-shadow:none!important;filter:none!important;
    color:inherit!important;fill:none;overflow:visible;pointer-events:none;
}

/* v349: distance-table cells need the full route-name width. Put the current
 * page badge on its own first row; the next row aligns with ordinary routes.
 * Other route lists keep their established inline current-page badge. */
.aga-seo-page td.aga-seo-distance-column .aga-station-distance-route[aria-current="page"]{
    display:grid;grid-template-columns:10px minmax(0,1fr);row-gap:2px;
}
.aga-seo-page td.aga-seo-distance-column .aga-station-distance-route[aria-current="page"]>.aga-seo-current-page-badge{
    grid-column:1 / -1;grid-row:1;justify-self:start;
}
.aga-seo-page td.aga-seo-distance-column .aga-station-distance-route[aria-current="page"]>.aga-route-color-dot{
    grid-column:1;grid-row:2;
}
.aga-seo-page td.aga-seo-distance-column .aga-station-distance-route[aria-current="page"]>.aga-station-distance-route-name{
    grid-column:2;grid-row:2;
}
.aga-seo-page td.aga-seo-distance-column .aga-station-distance-route[aria-current="page"]:not(:has(>.aga-route-color-dot)){
    grid-template-columns:minmax(0,1fr);
}
.aga-seo-page td.aga-seo-distance-column .aga-station-distance-route[aria-current="page"]:not(:has(>.aga-route-color-dot))>.aga-station-distance-route-name{
    grid-column:1;
}

/* v350: detail-page symbols follow the centre of the first text line, even
 * when a heading or address wraps. Use one gap rather than flex gap plus the
 * shared icon margin. The saved HTML/data and all other page scopes stay intact.
 * Heading: (1.65em line - 1.25em icon) / 2 = .2em top margin.
 * Address value already uses 16px / 1.75 in public-media.css (a 28px line).
 * Giving its smaller label the same line box centres both label and pin on it.
 */
.aga-clinic-detail .aga-clinic-detail-section>.aga-clinic-detail-section-title{
    align-items:flex-start;gap:.4em;line-height:1.65;
}
.aga-clinic-detail .aga-clinic-detail-section-title>.aga-clinic-detail-heading-text{line-height:inherit}
.aga-clinic-detail .aga-clinic-detail-section>.aga-clinic-detail-section-title>img.aga-ui-icon{
    position:static!important;float:none!important;flex:0 0 1.25em!important;
    width:1.25em!important;height:1.25em!important;min-width:1.25em!important;min-height:0!important;
    max-width:none!important;max-height:none!important;margin:.2em 0 0!important;padding:0!important;
    vertical-align:0!important;transform:none!important;
}
.aga-clinic-detail .aga-public-media .aga-media-location-details>.aga-media-address{align-items:start}
.aga-clinic-detail .aga-public-media .aga-media-address>.aga-media-address-label{
    align-items:center;gap:.35em;line-height:28px;
}
.aga-clinic-detail .aga-public-media .aga-media-address>.aga-media-address-label>img.aga-ui-icon{
    position:static!important;float:none!important;flex:0 0 1.2em!important;
    width:1.2em!important;height:1.2em!important;min-width:1.2em!important;min-height:0!important;
    max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;
    vertical-align:0!important;transform:none!important;
}

/* v351: heading text owns its wrapping column. Only renderer-marked headings
 * and their existing label/strong wrappers opt in; article/theme headings and
 * non-heading controls remain untouched. Flex leaves no gap if the registered
 * icon is absent or hidden in forced-colour mode. Keep each heading's existing
 * line height; lh centres the icon on its first line without measuring in JS. */
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-search-v319,.aga-clinic-list,.aga-public-media,.aga-auto-prices,.agaclinic-db-confirmed-services,.aga-official-access,.aga-access-comparison) :is(h1,h2,h3,h4,h5,h6,label,strong,p):has(>.aga-heading-text-v351){
    display:flex!important;align-items:flex-start!important;gap:.4em!important;min-width:0;max-width:100%;
}
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-search-v319,.aga-clinic-list,.aga-public-media,.aga-auto-prices,.agaclinic-db-confirmed-services,.aga-official-access,.aga-access-comparison) .aga-heading-text-v351{
    display:block;flex:1 1 auto;min-width:0;max-width:100%;margin:0;padding:0;line-height:inherit;overflow-wrap:anywhere;
}
:is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-search-v319,.aga-clinic-list,.aga-public-media,.aga-auto-prices,.agaclinic-db-confirmed-services,.aga-official-access,.aga-access-comparison) :is(h1,h2,h3,h4,h5,h6,label,strong,p):has(>.aga-heading-text-v351)>:is(img.aga-ui-icon,span.aga-rail-icon,span.aga-route-colored-icon){
    display:block!important;position:static!important;inset:auto!important;float:none!important;box-sizing:border-box!important;
    flex:0 0 1.25em!important;width:1.25em!important;height:1.25em!important;min-width:1.25em!important;min-height:0!important;
    max-width:none!important;max-height:none!important;font-size:inherit!important;line-height:inherit!important;
    margin:.2em 0 0!important;margin-top:calc((1lh - 1.25em) / 2)!important;padding:0!important;
    vertical-align:0!important;transform:none!important;
}
/* The route title remains a 44px link target; removing only its top padding
 * aligns the visible first text line with the neighbouring registered icon. */
.aga-search-v284 .aga-search-line-title>.aga-heading-text-v351>a{
    display:block;box-sizing:border-box;min-width:0;max-width:100%;min-height:44px;padding:0!important;
    font-weight:700;line-height:inherit;overflow-wrap:anywhere;
}
@media(forced-colors:active){
    .aga-clinic-detail .aga-clinic-detail-section>.aga-clinic-detail-section-title>img.aga-ui-icon{display:none!important}
    :is(.agaclinic-db-public-page,.aga-seo-page,.aga-search-v284,.aga-search-v319,.aga-clinic-list,.aga-public-media,.aga-auto-prices,.agaclinic-db-confirmed-services,.aga-official-access,.aga-access-comparison) :is(h1,h2,h3,h4,h5,h6,label,strong,p):has(>.aga-heading-text-v351)>:is(img.aga-ui-icon,span.aga-rail-icon,span.aga-route-colored-icon){display:none!important}
}

/* v355: boxed route headings centre their complete text block in the 44px
 * link target. Ordinary article headings still align their icon to line one.
 * The v351 padding reset must not erase space for an absolute trailing arrow:
 * .85em edge inset + at most .85em glyph + .8em text gap = 2.5em.
 * Static grid/inline arrows elsewhere retain their existing separate columns.
 */
.aga-search-v284 .aga-search-line>.aga-search-line-title:has(>.aga-heading-text-v351){
    align-items:center!important;
}
.aga-search-v284 .aga-search-line>.aga-search-line-title:has(>.aga-heading-text-v351)>:is(img.aga-ui-icon,span.aga-rail-icon,span.aga-route-colored-icon){
    margin:0!important;
}
.aga-search-v284 .aga-search-line>.aga-search-line-title>.aga-heading-text-v351>a{
    display:flex;align-items:center;min-height:44px;
}
.aga-search-v284 .aga-search-line>.aga-search-line-title>.aga-heading-text-v351>a:has(>img.aga-ui-icon-trailing){
    padding-right:2.5em!important;
}
/* v358: also applies to prepared price HTML without invalidating its data. */
.aga-auto-prices .aga-auto-official>a{display:block;width:fit-content;max-width:100%;margin-inline:0;text-align:left;overflow-wrap:anywhere}

/* v359: only geographic fragment targets opt into the left rule. The icon is
 * omitted by these renderers, so its registered mapping stays available for
 * unrelated controls and headings. One text wrapper owns every wrapped line. */
.aga-search-v284 :is(h2,h3).aga-search-area-heading-v359{
    padding:.1em 0 .1em .65em;border:0;border-left:3px solid #131d2a;border-radius:0;
    background:transparent;box-shadow:none;min-width:0;max-width:100%;
}
