.aws-map{--map-accent:#2563eb;--map-soft:#eff6ff;--map-choice:#166534;--map-when:#92400e;color:var(--ink);overflow-wrap:anywhere;isolation:isolate}
[data-theme="dark"] .aws-map{--map-accent:#93c5fd;--map-soft:#172554}
.container:has(#service-map){max-width:1320px}
.aws-service-section{--map-zone:#1d4ed8;--map-zone-soft:#eff6ff}.aws-service-section[data-zone="know"]{--map-zone:#15803d;--map-zone-soft:#f0fdf4}.aws-service-section[data-zone="run"]{--map-zone:#0e7490;--map-zone-soft:#ecfeff}.aws-service-section[data-zone="orch"]{--map-zone:#7c3aed;--map-zone-soft:#f5f3ff}.aws-service-section[data-zone="sec"]{--map-zone:#c2410c;--map-zone-soft:#fff7ed}.aws-service-section[data-zone="eval"]{--map-zone:#92400e;--map-zone-soft:#fffbeb}.aws-service-section[data-zone="pkg"]{--map-zone:#be123c;--map-zone-soft:#fff1f2}
[data-theme="dark"] .aws-service-section{--map-zone:#93c5fd;--map-zone-soft:#172554}[data-theme="dark"] .aws-service-section[data-zone="know"]{--map-zone:#86efac;--map-zone-soft:#052e16}[data-theme="dark"] .aws-service-section[data-zone="run"]{--map-zone:#67e8f9;--map-zone-soft:#083344}[data-theme="dark"] .aws-service-section[data-zone="orch"]{--map-zone:#c4b5fd;--map-zone-soft:#2e1065}[data-theme="dark"] .aws-service-section[data-zone="sec"]{--map-zone:#fdba74;--map-zone-soft:#431407}[data-theme="dark"] .aws-service-section[data-zone="eval"]{--map-zone:#fde68a;--map-zone-soft:#422006}[data-theme="dark"] .aws-service-section[data-zone="pkg"]{--map-zone:#fda4af;--map-zone-soft:#4c0519}
[data-theme="dark"] .aws-map{--map-choice:#86efac;--map-when:#fde68a}.aws-service-section .aws-map{--map-accent:var(--map-zone);--map-soft:var(--map-zone-soft)}
.content .aws-service-section>h2{color:var(--map-zone);font-size:20px;margin-bottom:5px}.aws-service-section>p{font-size:13px;color:var(--muted)}
.aws-map__navigation{margin:22px 0 30px;scroll-margin-top:90px}.aws-map__navigation nav{display:flex;flex-wrap:wrap;gap:8px 16px}.aws-map__navigation nav a{font-size:13px;text-decoration:underline;text-underline-offset:3px}
.aws-map__catalogue{margin:18px 0 28px}.aws-service-section{margin:36px 0;min-width:0}.aws-service-section[hidden]{display:none!important}.aws-service-section [id]{scroll-margin-top:90px}
.aws-service-section :is(table,pre){display:block;max-width:100%;overflow-x:auto}.aws-service-section p code{overflow-wrap:anywhere}
.aws-service-section h6[id^="aws-options-"]{font-size:15px;line-height:1.5;margin:24px 0 12px}
.aws-map [hidden]{display:none!important}
.aws-map :is(a,button,input,summary):focus-visible{outline:3px solid var(--map-accent);outline-offset:3px}
.aws-map p{font-size:13px;line-height:1.6;margin:8px 0 12px}
.aws-map__toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--bg);margin-top:14px}
.aws-map__toolbar label{font-size:12px}
.aws-map__toolbar>label:first-child{flex:1 1 230px}
.aws-map__toolbar input[type="search"]{display:block;width:100%;box-sizing:border-box;margin-top:5px;min-height:42px;padding:8px 10px;border:1px solid var(--line);border-radius:7px;background:var(--card);color:var(--ink);font:inherit;font-size:14px}
.aws-map__toolbar button,.aws-map__dialog button{border:1px solid var(--line);border-radius:7px;background:var(--bg);color:var(--ink);font:inherit;font-size:12px;min-height:40px;padding:7px 11px;cursor:pointer}
.aws-map__toolbar button:hover,.aws-map__dialog button:hover{border-color:var(--map-accent)}
#aws-map-count{font-size:12px;color:var(--muted);flex-basis:100%}
.aws-map__empty{padding:16px 20px}
.aws-map__groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr));gap:14px;align-items:start}
.aws-map__group{min-width:0;border:1px solid var(--line);border-top:2px solid var(--map-accent);border-radius:10px;padding:12px;background:var(--card)}
.aws-map__group--wide{grid-column:1/-1}.aws-map__group.is-hit{box-shadow:0 0 0 1px var(--map-accent)}
.aws-map__cluster-head>strong{display:block;font-size:13px;line-height:1.4}.aws-map__cluster-head p{font-size:11px;line-height:1.5;color:var(--muted);margin:4px 0 10px}
.aws-map__tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:7px}
.content .aws-map__tile{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:8px;padding:10px 7px;min-height:82px;box-sizing:border-box;background:var(--bg);color:var(--ink);text-decoration:none;text-align:center;font-size:11px;line-height:1.35}
.content .aws-map__tile:hover{border-color:var(--map-accent);background:var(--map-soft);color:var(--ink)}
.aws-map__tile img{display:block;width:30px;height:30px;flex:none;object-fit:contain;margin:0;border:0;border-radius:0}
.content .aws-map__tile--guide{border-style:dashed;color:var(--map-accent);background:var(--map-soft)}.aws-map__tile--guide small{font-size:9px;color:var(--muted)}
.aws-map__tile--guide[data-kind="identity"]{color:#1d4ed8}.aws-map__tile--guide[data-kind="federation"]{color:#6d28d9}.aws-map__tile--guide[data-kind="access"]{color:#166534}.aws-map__tile--guide[data-kind="audit"]{color:#9a3412}
[data-theme="dark"] .aws-map__tile--guide[data-kind="identity"]{color:#93c5fd}[data-theme="dark"] .aws-map__tile--guide[data-kind="federation"]{color:#c4b5fd}[data-theme="dark"] .aws-map__tile--guide[data-kind="access"]{color:#86efac}[data-theme="dark"] .aws-map__tile--guide[data-kind="audit"]{color:#fdba74}
.aws-map__tile.is-dim{opacity:.25;filter:grayscale(1)}.aws-map__tile.is-hit{border-color:var(--map-accent);box-shadow:0 0 0 1px var(--map-accent)}
.aws-map__overview{border:1px solid var(--line);border-top:2px solid var(--map-accent);border-radius:10px;padding:12px;margin:18px 0 28px}
.aws-map__chooser{margin-top:11px;border-top:1px dashed var(--line);padding-top:10px}.aws-map__overview>.aws-map__chooser{border:0;margin:0;padding:0}
.aws-map__chooser-title{display:block;font-size:10.5px;line-height:1.5;letter-spacing:.04em;text-transform:uppercase;color:var(--map-choice);margin-bottom:7px}
.aws-map p.aws-map__question{display:inline-block;font-size:12px;font-weight:600;line-height:1.4;border:1px solid var(--line);border-radius:99px;background:var(--bg);padding:4px 10px;margin:0 0 3px}
.aws-map .aws-map__branches{list-style:none;border-left:2px solid var(--line);margin:3px 0 0 12px;padding:0}
.aws-map .aws-map__branch{position:relative;display:grid;grid-template-columns:minmax(115px,40%) minmax(0,1fr);gap:3px 10px;padding:6px 0 6px 15px;margin:0;align-items:start;font-size:12px;line-height:1.5}
.aws-map__branch::before{content:'';position:absolute;left:0;top:14px;width:10px;border-top:2px solid var(--line)}
.aws-map__condition{color:var(--map-when)}.aws-map__result{min-width:0}.aws-map__result::before{content:'→ ';color:var(--muted)}
.aws-map__chips{display:inline}.content .aws-map__chip{display:inline-flex;align-items:center;gap:4px;vertical-align:middle;max-width:100%;border:1px solid var(--line);border-radius:5px;background:var(--bg);padding:2px 5px;margin:2px 3px 1px 2px;color:var(--map-accent);font-size:10px;line-height:1.3;text-decoration:none}
.aws-map__chip img{display:block;width:15px;height:15px;margin:0;border:0;border-radius:0;flex:none}.content .aws-map__chip:hover{border-color:var(--map-accent);background:var(--map-soft)}
.content .aws-map__chip--guide{border-style:dashed}.aws-map__subtree{grid-column:1/-1;margin:3px 0 0}.aws-map p.aws-map__branch-note{grid-column:2;font-size:11px;margin:0;color:var(--muted)}
.aws-map p.aws-map__chooser-foot{font-size:11px;line-height:1.55;color:var(--muted);border-top:1px dashed var(--line);padding-top:8px;margin:9px 0 0}
.aws-map p.aws-map__zone-foot{margin:12px 0 0;font-size:12px}.aws-map__zone-foot a{color:var(--map-accent)}
.aws-map details{border:1px solid var(--line);border-radius:8px;margin-top:12px;padding:0 12px;background:var(--bg)}
.aws-map summary{padding:12px 0;cursor:pointer;font-size:13px;font-weight:600}
.aws-map__topic-title{display:block;font-size:14px;line-height:1.5;font-weight:600;margin:0 0 10px}
.aws-map__examples{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin:18px 0 32px;scroll-margin-top:90px}
.aws-map__example{border:1px solid var(--line);border-radius:10px;padding:14px;min-width:0}
.aws-map__steps{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0!important;padding:0!important;list-style:none;counter-reset:map-step}
.aws-map__steps li{display:flex;align-items:center;gap:8px;flex:1 1 135px;counter-increment:map-step}
.aws-map__steps li:not(:last-child)::after{content:'→';color:var(--muted)}
.aws-map__steps a{display:block;flex:1;border:1px solid var(--line);border-radius:7px;background:var(--card);padding:9px;text-decoration:none;font-size:12px}
.aws-map__steps a strong::before{content:counter(map-step) '. '}
.aws-map__steps a span{display:block;margin-top:5px;color:var(--muted);font-size:11px}
.aws-map__dialog{box-sizing:border-box;max-width:720px;width:calc(100% - 28px);max-height:calc(100dvh - 40px);padding:20px;border:1px solid var(--line);border-top:4px solid var(--map-accent);border-radius:12px;background:var(--card);color:var(--ink);overflow:auto;box-shadow:0 20px 70px #0005}
.aws-map__dialog::backdrop{background:#0009}
.aws-map__dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;position:sticky;top:-20px;z-index:1;background:var(--card);padding:5px 0}
#aws-card-layer{font-size:12px;color:var(--muted)}
.aws-map__dialog-head button{min-width:42px;font-size:22px}
.aws-map__dialog #aws-card-title{display:block;font-size:22px;line-height:1.3}
.aws-map__dialog p{font-size:14px}
.aws-map__card-details{padding-left:20px;margin:10px 0 14px}
.aws-map__card-details li{font-size:13px;line-height:1.65;margin:5px 0}
.aws-map__use>strong{font-size:12px;margin-right:5px;color:var(--map-accent)}
.aws-map__samples{min-width:0}
.aws-map__options{min-width:0}.aws-map__options>section{margin:18px 0;padding-top:14px;border-top:1px solid var(--line)}
.aws-map__table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.aws-map__options table{border-collapse:collapse;width:100%;min-width:480px;font-size:12px;line-height:1.5}
.aws-map__options caption{text-align:left;font-weight:600;color:var(--ink);font-size:14px;padding:0 0 10px;caption-side:top}
.aws-map__options :is(th,td){padding:9px 10px;border:1px solid var(--line);vertical-align:top;text-align:left;overflow-wrap:normal}
.aws-map__options thead th{background:var(--bg);font-size:11px}.aws-map__options tbody th{font-weight:600;width:22%}
.aws-map__options p{font-size:12px;line-height:1.6}
.aws-map__samples>section{border-top:1px solid var(--line);padding-top:14px;margin-top:16px;min-width:0}
.aws-map__sample-title{display:block;font-size:13px;line-height:1.5}
.aws-map__sample-format{display:block;font-size:11px;color:var(--muted);margin:4px 0 8px}
.aws-map__samples pre{box-sizing:border-box;max-width:100%;overflow-x:auto;padding:12px;border:1px solid var(--line);border-radius:7px;background:var(--bg);margin:8px 0;white-space:pre;tab-size:2}
.aws-map__samples pre code{font:12px/1.65 var(--mono,monospace);color:var(--ink);background:none;padding:0;border:0;white-space:pre;overflow-wrap:normal;word-break:normal}
.aws-map__sample-source{display:inline-block;font-size:11px;margin-top:6px}
.aws-map__boundary{background:var(--map-soft);border-left:3px solid var(--map-accent);padding:12px;margin:14px 0;border-radius:0 6px 6px 0}
.aws-map__boundary>strong{font-size:12px;color:var(--map-accent)}
.aws-map__boundary p{margin:5px 0 0}
.aws-map__references{display:flex;flex-wrap:wrap;gap:12px;font-size:13px;margin:16px 0}
.aws-map__card-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px}
#aws-card-position{font-size:12px;color:var(--muted)}
.aws-map .aws-map__note{font-size:11px;color:var(--muted);margin-bottom:0}
.aws-map__dialog--reference{max-width:1120px}.aws-map__dialog--reference .aws-map__dialog-head>span{font-size:12px;color:var(--muted)}
.aws-service-section>.aws-learn{border:0;border-radius:0;padding:0;margin:36px 0;background:transparent}.aws-service-section>.aws-learn .al-header{border:0;padding:0;margin-bottom:14px}
.aws-map__dialog--reference [data-reference-panel]>h4{font-size:20px;margin:6px 0 20px}.aws-map__dialog--reference [data-reference-panel]>h5{font-size:15px;margin:20px 0 10px}
.aws-map__dialog--reference [data-reference-panel]>p{font-size:13px}.aws-map__dialog--reference [data-reference-panel] :is(table,pre){display:block;max-width:100%;overflow-x:auto}
.aws-map__dialog--reference [id]{scroll-margin-top:70px}
@media(max-width:560px){body:has(#service-map) .nav{min-width:0;max-width:100%;overflow-x:auto}}
@media(max-width:760px){.aws-map__navigation,.aws-service-section [id]{scroll-margin-top:170px}}
@media(max-width:560px){.aws-map__toolbar{padding:12px}.aws-map__dialog{padding:16px}.aws-map__steps{flex-direction:column}.aws-map__steps li{flex-basis:auto;align-items:stretch}.aws-map__steps li:not(:last-child)::after{content:''}}
@media(max-width:560px){.aws-map__samples pre,.aws-map__samples pre code{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.aws-map__dialog-head{top:-16px}}
@media(max-width:560px){.aws-map .aws-map__branch{grid-template-columns:minmax(0,1fr)}.aws-map p.aws-map__branch-note{grid-column:1}.aws-map__group{padding:11px}}
@media print{.aws-map__toolbar,.aws-map__dialog{display:none!important}.aws-map__tiles{grid-template-columns:repeat(5,1fr)}}
