/* Component styles, independent of home/wiki/preparation content rules. */
html{scroll-padding-top:calc(var(--site-header-height) + var(--site-space-4))}
body[data-site-layout][data-lang]{font-family:var(--site-font-body);padding-bottom:var(--site-suggestion-height)}
.site-header{position:sticky;top:0;z-index:var(--site-header-layer);height:var(--site-header-height);min-height:var(--site-header-height);border:0;background:rgb(8 8 8 / 90%);-webkit-backdrop-filter:blur(var(--site-blur));backdrop-filter:blur(var(--site-blur));color:var(--site-text-primary)}
.site-header::before{content:none}
.site-header[data-variant=hero]{position:fixed;inset:0 0 auto;background:linear-gradient(#08080885,#08080800);-webkit-backdrop-filter:none;backdrop-filter:none}
.site-header[data-variant=hero].past-hero{background:rgb(8 8 8 / 90%);-webkit-backdrop-filter:blur(var(--site-blur));backdrop-filter:blur(var(--site-blur))}
.site-header .header-inner{box-sizing:border-box;display:flex;align-items:center;gap:22px;width:100%;max-width:calc(var(--site-content-width) + 2 * var(--site-gutter));height:100%;min-height:0;padding:0 var(--site-gutter);margin:auto;flex-wrap:nowrap}
.site-header .brand{display:flex;align-items:center;flex:none;gap:var(--site-space-2);min-height:var(--site-hit-target);color:var(--site-text-primary);text-decoration:none;line-height:1}
.site-header .brand-mark{display:grid;place-items:center;flex:none;width:28px;height:28px;border:1px solid var(--site-accent);border-radius:var(--site-radius-control);background:var(--site-surface);color:var(--site-accent);font:700 var(--site-text-meta)/1 var(--site-font-body);letter-spacing:-.04em;transform:none}
.site-header .brand-logo{display:block;flex:none;width:156px;height:44px;object-fit:contain;object-position:left center}
.site-header .brand-name{font:800 18px/1 var(--site-font-body);letter-spacing:-.04em;white-space:nowrap}
.site-header nav{display:flex;align-items:center;gap:18px;width:auto;height:auto;margin:0;padding:0;border:0;background:none;flex-wrap:nowrap}
.site-header .site-primary-nav{justify-content:center;flex:1;min-width:0}
.site-header nav a{display:flex;align-items:center;min-height:var(--site-hit-target);padding:var(--site-space-1) 2px;text-decoration:none;white-space:nowrap;border:0;font:650 var(--site-text-ui)/1.4 var(--site-font-body);color:var(--site-text-nav)}
.site-header nav a[aria-current=page]{color:var(--site-text-primary)}
.site-header nav a:hover{color:var(--site-text-primary)}
.site-header .header-tools{display:flex;align-items:center;flex:none;gap:var(--site-space-2);margin-left:auto;font:650 13px/1.4 var(--site-font-body)}
.site-header details{position:relative}
.site-header summary{display:flex;align-items:center;justify-content:center;min-height:var(--site-hit-target);min-width:var(--site-hit-target);padding:0;list-style:none;cursor:pointer;color:var(--site-text-primary)}
.site-header summary::-webkit-details-marker{display:none}
.site-header .search-wrap>summary{border:0;background:transparent;font-size:22px}
.site-header .search-panel{position:absolute;top:calc(100% + 6px);right:0;width:min(400px,calc(100vw - 24px));padding:var(--site-space-5);border:1px solid var(--site-border);border-radius:var(--site-radius-panel);background:var(--site-surface-floating);box-shadow:var(--site-shadow-floating)}
.site-header .search-panel label{display:block;margin-bottom:12px}
.site-header .search-panel input{box-sizing:border-box;width:100%;min-width:0;padding:var(--site-space-3);border:1px solid #747474;border-radius:var(--site-radius-control);background:var(--site-bg);color:var(--site-text-primary);font:inherit}
.site-header #results{list-style:none;padding:0;margin:14px 0 0;max-height:55dvh;overflow:auto}
.site-header #results a{display:block;padding:var(--site-space-3) 6px;border-bottom:1px solid var(--site-border);text-decoration:none;overflow-wrap:anywhere}
.site-header #results small{display:block;margin-top:5px;color:var(--site-text-secondary);font-size:var(--site-text-meta);line-height:1.5}
.site-header .compact-menu{display:none}
.site-header .compact-menu svg{display:block;width:19px;height:19px;stroke:currentColor;stroke-width:1.5;fill:none}
.site-header .compact-menu-links{position:absolute;top:calc(100% + 6px);right:0;display:flex;flex-direction:column;align-items:stretch;gap:0;width:230px;padding:var(--site-space-2);border:1px solid var(--site-border);border-radius:var(--site-radius-panel);background:var(--site-surface-floating);box-shadow:var(--site-shadow-floating);max-height:75dvh;overflow:auto}
.site-header .compact-menu-links a{box-sizing:border-box;min-height:48px;padding:10px var(--site-space-3);border-radius:var(--site-radius-control);font-size:var(--site-text-ui);white-space:normal}
.site-header .compact-menu-links a[aria-current=page]{background:var(--site-selected)}
.site-header details:not([open])>.search-panel,.site-header details:not([open])>.compact-menu-links{display:none}
.site-header :focus-visible,.site-footer :focus-visible,.content-subnav :focus-visible{outline:2px solid var(--site-focus);outline-offset:3px}
.skip{position:fixed;left:16px;top:-120px;z-index:60;background:var(--site-accent);color:var(--site-on-accent);padding:var(--site-space-3);border-radius:var(--site-radius-control)}.skip:focus{top:8px}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
/* Standard site footer: identity, route groups, then the source/privacy boundary. */
.site-footer{box-sizing:border-box;display:block;width:100%;max-width:none;margin:0;padding:0;border:0;border-top:1px solid var(--site-border);background:#080808;color:var(--site-text-secondary);font:400 var(--site-text-ui)/1.7 var(--site-font-body)}
.site-footer .site-footer-inner{box-sizing:border-box;display:grid;grid-template-columns:1fr;gap:0;width:min(var(--site-content-width),calc(100% - 2 * var(--site-gutter)));margin:auto;padding:var(--site-space-16) 0 28px}
.site-footer .footer-top{display:grid;grid-template-columns:minmax(220px,1.65fr) repeat(3,minmax(0,1fr));gap:36px;width:100%;margin:0;padding:0 0 44px;border:0;align-items:start}
.site-footer .footer-identity{min-width:0}
.site-footer .footer-brand{display:inline-flex;align-items:center;min-height:44px;font:800 22px/1.4 var(--site-font-body);letter-spacing:-.04em;color:var(--site-text-primary);text-decoration:none;text-transform:none}
.site-footer .footer-logo{display:block;width:208px;max-width:100%;height:74px;object-fit:contain;object-position:left center}
.site-footer p{color:var(--site-text-secondary);max-width:90ch;margin:0;font:inherit}
.site-footer .footer-tagline{margin-top:16px;max-width:25ch;font-size:16px;line-height:1.65}
.site-footer .footer-column{display:block;min-width:0;width:100%;height:auto;margin:0;padding:0;border:0;background:none}
.site-footer .footer-column h2{margin:10px 0 16px;padding:0;font:700 16px/1.5 var(--site-font-body);color:var(--site-text-primary);letter-spacing:0;text-transform:none}
.site-footer .footer-column ul{display:grid;gap:var(--site-space-1);list-style:none;margin:0;padding:0}
.site-footer .footer-column li{margin:0;padding:0;min-width:0}
.site-footer .footer-column a{display:inline-flex;align-items:center;gap:5px;min-height:40px;padding:var(--site-space-1) 0;font:400 15px/1.5 var(--site-font-body);text-decoration:none;overflow-wrap:anywhere}
.site-footer a{color:inherit;text-decoration:none}
.site-footer a:hover{color:var(--site-text-primary)}
.site-footer .footer-legal{display:grid;gap:10px;padding:26px 0;border-top:1px solid var(--site-border);font-size:13px;line-height:1.8}
.site-footer .site-disclaimer{white-space:pre-line}
.site-footer .footer-legal a{text-decoration:underline;text-underline-offset:3px}
.site-footer .footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--site-space-3);margin:0;padding:22px 0 0;border-top:1px solid var(--site-border);font-size:var(--site-text-ui)}
.site-footer .footer-bottom a{display:inline-flex;align-items:center;min-height:44px}
@media(max-width:900px){.site-footer .footer-top{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--site-space-6)}.site-footer .footer-identity{grid-column:1/-1}.site-footer .footer-logo{width:184px;height:66px}.site-footer .footer-tagline{max-width:100%}}
@media(max-width:540px){.site-footer .site-footer-inner{padding-top:40px}.site-footer .footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px var(--site-space-5);padding-bottom:var(--site-space-8)}.site-footer .footer-column:last-child{grid-column:1/-1}.site-footer .footer-column h2{margin-top:0}.site-footer .footer-column a{font-size:15px;min-height:44px}.site-footer .footer-legal{padding-block:22px}.site-footer .footer-bottom{align-items:flex-start}.site-footer .footer-bottom>span{max-width:26ch}}
.content-subnav{display:flex;flex-wrap:wrap;gap:var(--site-space-2) var(--site-space-6);width:min(var(--site-content-width),calc(100% - 2 * var(--site-gutter)));margin:24px auto;padding:0;border:0}
.content-subnav a{display:flex;align-items:center;min-height:var(--site-hit-target);padding:var(--site-space-1) 0;font:650 13px/1.5 var(--site-font-body);white-space:normal;text-decoration:none;border-bottom:2px solid transparent}
.content-subnav button{min-height:var(--site-hit-target);min-width:var(--site-hit-target);padding:var(--site-space-2) var(--site-space-3);border:1px solid var(--site-border);border-radius:var(--site-radius-control);background:var(--site-surface);color:var(--site-text-primary);font:650 var(--site-text-meta)/1.4 var(--site-font-body);cursor:pointer}
.content-subnav a[aria-current=page]{color:var(--site-text-primary);border-color:var(--site-text-primary)}
body[data-site-layout] .check-jump{bottom:calc(var(--site-suggestion-height) + var(--site-float-gap) + env(safe-area-inset-bottom,0px))}
@media(min-width:900px) and (max-width:1190px){.site-header .header-inner{gap:var(--site-space-3)}.site-header nav{gap:var(--site-space-3)}}
@media(max-width:899px){.site-header .site-primary-nav{display:none}.site-header .compact-menu{display:block}.site-header .header-inner{gap:var(--site-space-3)}.site-header .compact-menu-links{position:fixed;top:calc(var(--site-header-height) + 6px);right:var(--site-gutter);max-width:calc(100vw - 2 * var(--site-gutter))}}
@media(max-width:760px){.site-header .brand-logo{width:140px;height:44px}.site-header .brand-name{font-size:16px}.site-header .brand-mark{width:25px;height:25px;font-size:var(--site-text-meta)}.site-header .header-inner{gap:var(--site-space-2)}.site-header .header-tools{gap:2px}.site-header .search-panel{position:fixed;top:calc(var(--site-header-height) + 6px);right:12px}.content-subnav{gap:var(--site-space-1) 18px;margin-block:18px}.content-subnav a{font-size:var(--site-text-meta)}}
@media(max-width:360px){.site-header .brand-logo{width:112px;height:42px}.site-header .brand-mark{display:none}.site-header .brand-name{font-size:15px}.site-header .header-inner{gap:var(--site-space-1)}}
@media print{.site-header,.skip,.language-suggestion{display:none!important}.site-footer{background:white;color:black}.site-footer p{color:black}body[data-site-layout]{padding-bottom:0}}

/* Product adapter: compact GTA variants over canonical shared primitives. */
body[data-site-layout] .wrap{max-width:var(--site-content-width);padding-inline:0}
.site-header .ds-header-inner{padding-block:0}
.site-header .site-primary-nav a[aria-current=page]{text-decoration:none}

/* Keep the shared footer disclosure to a compact line; details are on Sources. */
.site-footer .footer-compact-notice{max-width:none;margin:0;padding:18px 0;border-top:1px solid var(--site-border);font-size:13px;line-height:1.6;white-space:normal}
.site-footer .footer-compact-notice a{display:inline;text-decoration:none}
.site-footer .footer-compact-notice a:last-child{text-decoration:underline;text-underline-offset:3px}
.site-notice{padding-block:36px}.site-notice p{max-width:85ch;line-height:1.8}

/* Consistent enhanced select: native form state, themed accessible popup. */
.site-select{position:relative;min-width:0}.map-filters .site-select{grid-column:1/-1}.site-select-native{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;opacity:0!important;pointer-events:none!important;padding:0!important;border:0!important}
 .site-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:var(--site-space-4);width:100%;min-height:var(--site-hit-target);padding:var(--site-space-3) var(--site-space-4);background:var(--site-hover);border:1px solid var(--site-border);border-radius:var(--site-radius-control);color:var(--site-text-primary);font:inherit;text-align:left;cursor:pointer;box-sizing:border-box}.site-select-trigger::after{content:'⌄';font-size:18px;line-height:1;color:var(--site-text-secondary)}.site-select-trigger[aria-expanded=true]{border-color:var(--site-border-strong);background:var(--site-selected)}.site-select-trigger:focus-visible{outline:2px solid var(--site-focus);outline-offset:3px}.site-select-menu{position:fixed;z-index:3000;overflow:auto;overscroll-behavior:contain;padding:var(--site-space-2);border:1px solid var(--site-border);border-radius:var(--site-radius-panel);background:var(--site-surface-floating);box-shadow:var(--site-shadow-floating);-webkit-backdrop-filter:blur(var(--site-blur));backdrop-filter:blur(var(--site-blur));color:var(--site-text-primary);box-sizing:border-box;scrollbar-width:thin;font:500 var(--site-text-ui)/1.4 var(--site-font-body)}.site-select-menu[hidden]{display:none}.site-select-menu [role=option]{display:flex;align-items:center;justify-content:space-between;gap:var(--site-space-3);width:100%;min-height:var(--site-hit-target);padding:var(--site-space-2) var(--site-space-3);border:0;border-radius:var(--site-radius-control);background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.site-select-menu [role=option]:hover{background:var(--site-hover)}.site-select-menu [role=option]:focus-visible{background:var(--site-hover);outline:2px solid var(--site-focus);outline-offset:-2px}.site-select-menu [aria-selected=true]{background:var(--site-selected);color:var(--site-text-primary)}.site-select-menu [aria-selected=true]::after{content:'✓';font-weight:700}.site-select-menu [role=option]:disabled{opacity:.4;cursor:default}
