.gcp-context { overflow: hidden; border-bottom: 1px solid rgba(255, 255, 255, .08); background: radial-gradient(circle at 12% 24%, rgba(66, 133, 244, .14), transparent 32%), radial-gradient(circle at 86% 72%, rgba(52, 168, 83, .09), transparent 28%), #080a09; }
.gcp-context__heading { margin-bottom: 48px; }
.gcp-context__console { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(390px, .92fr); overflow: hidden; border: 1px solid rgba(255, 255, 255, .12); border-radius: 12px; background: rgba(5, 8, 8, .91); box-shadow: 0 36px 90px rgba(0, 0, 0, .3); }
.gcp-context__coordinates { min-height: 620px; padding: 30px; border-right: 1px solid rgba(255, 255, 255, .1); background: linear-gradient(rgba(255, 255, 255, .032) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .032) 1px, transparent 1px), radial-gradient(circle at 50% 48%, rgba(66, 133, 244, .12), transparent 41%), #091011; background-size: 48px 48px, 48px 48px, auto, auto; }
.gcp-context__bar { display: flex; align-items: center; justify-content: space-between; gap: 18px; color: rgba(255, 255, 255, .47); font-family: "Roboto Mono", monospace; font-size: 9px; letter-spacing: .09em; text-transform: uppercase; }
.gcp-context__bar span { display: inline-flex; align-items: center; gap: 8px; }
.gcp-context__bar i { width: 7px; height: 7px; border-radius: 50%; background: #4285f4; box-shadow: 0 0 13px rgba(66, 133, 244, .8); }
.gcp-context__bar strong { color: rgba(255, 255, 255, .68); font-weight: 600; }
.gcp-context__stack { position: relative; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; width: min(560px, 96%); margin: 74px auto 54px; }
.gcp-context__stack::before { position: absolute; inset: 50% 10%; height: 1px; content: ""; background: linear-gradient(90deg, #4285f4, #ea4335, #fbbc05, #34a853); opacity: .55; }
.gcp-context__card { position: relative; z-index: 1; display: grid; min-height: 150px; align-content: center; gap: 8px; padding: 22px; border: 1px solid rgba(255, 255, 255, .12); border-radius: 9px; background: rgba(5, 9, 10, .95); }
.gcp-context__card span { font-family: "Roboto Mono", monospace; font-size: 8px; letter-spacing: .08em; text-transform: uppercase; }
.gcp-context__card strong { color: #eff4f2; font-size: 13px; line-height: 1.4; overflow-wrap: anywhere; }
.gcp-context__card small { color: rgba(255, 255, 255, .48); font-size: 10px; line-height: 1.5; }
.gcp-context__card--resource span { color: #65a1ff; }
.gcp-context__card--identity span { color: #f1685b; }
.gcp-context__card--quota span { color: #ffd15b; }
.gcp-context__card--effect span { color: #65c77b; }
.gcp-context__path { display: grid; grid-template-columns: auto 1fr auto 1fr auto 1fr auto; gap: 9px; align-items: center; padding: 15px 17px; border: 1px solid rgba(255, 255, 255, .1); border-radius: 7px; background: rgba(255, 255, 255, .018); }
.gcp-context__path span { color: rgba(255, 255, 255, .61); font-family: "Roboto Mono", monospace; font-size: 8px; text-transform: uppercase; }
.gcp-context__path b { height: 1px; background: rgba(66, 133, 244, .45); }
.gcp-context__reconciliation { padding: 30px 34px; }
.gcp-context__reconciliation-head { display: flex; justify-content: space-between; gap: 18px; margin-bottom: 25px; padding-bottom: 18px; border-bottom: 1px solid rgba(255, 255, 255, .12); }
.gcp-context__reconciliation-head div { display: grid; gap: 5px; }
.gcp-context__reconciliation-head span,
.gcp-context__reconciliation-head small { color: rgba(255, 255, 255, .42); font-family: "Roboto Mono", monospace; font-size: 8px; letter-spacing: .09em; text-transform: uppercase; }
.gcp-context__reconciliation-head strong { color: #f0f4f3; font-size: 15px; }
.gcp-context__reconciliation-head > small { color: #65a1ff; text-align: right; }
.gcp-context__versions { display: grid; gap: 10px; }
.gcp-context__versions article { display: grid; gap: 5px; padding: 18px 20px; border: 1px solid rgba(255, 255, 255, .11); border-radius: 8px; background: rgba(255, 255, 255, .018); }
.gcp-context__versions article > span { color: rgba(255, 255, 255, .4); font-family: "Roboto Mono", monospace; font-size: 8px; letter-spacing: .08em; text-transform: uppercase; }
.gcp-context__versions strong { color: #eef3f1; font-size: 13px; overflow-wrap: anywhere; }
.gcp-context__versions small { color: rgba(255, 255, 255, .5); font-size: 10px; }
.gcp-context__versions iconify-icon { justify-self: center; color: #65a1ff; font-size: 17px; }
.gcp-context__versions article.is-warning { border-color: rgba(234, 67, 53, .28); background: rgba(234, 67, 53, .045); }
.gcp-context__versions article.is-warning > span { color: #ff8175; }
.gcp-context__decision { display: grid; gap: 8px; margin-top: 24px; padding: 17px 19px; border-left: 2px solid #34a853; background: rgba(52, 168, 83, .05); }
.gcp-context__decision span { display: inline-flex; align-items: center; gap: 7px; color: #65c77b; font-family: "Roboto Mono", monospace; font-size: 8px; text-transform: uppercase; }
.gcp-context__decision i { width: 6px; height: 6px; border-radius: 50%; background: #34a853; }
.gcp-context__decision strong { color: #e9f0ed; font-size: 12px; line-height: 1.5; }
.gcp-context__contract { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid rgba(255, 255, 255, .1); border-top: 0; border-radius: 0 0 10px 10px; background: rgba(255, 255, 255, .018); }
.gcp-context__contract article { display: grid; gap: 5px; padding: 22px 24px; }
.gcp-context__contract article + article { border-left: 1px solid rgba(255, 255, 255, .1); }
.gcp-context__contract span { color: #65a1ff; font-family: "Roboto Mono", monospace; font-size: 8px; letter-spacing: .08em; text-transform: uppercase; }
.gcp-context__contract strong { color: #eef3f1; font-size: 13px; }
.gcp-context__contract small { color: rgba(255, 255, 255, .48); font-size: 10px; line-height: 1.5; }
.gcp-context__boundary { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 36px; align-items: end; margin-top: 24px; padding: 28px 30px; border: 1px solid rgba(66, 133, 244, .22); border-radius: 10px; background: linear-gradient(110deg, rgba(66, 133, 244, .08), rgba(52, 168, 83, .025)); }
.gcp-context__boundary h3 { max-width: 850px; margin: 8px 0 10px; color: #f1f5f4; font-size: clamp(22px, 2.4vw, 34px); line-height: 1.15; }
.gcp-context__boundary div > p:last-child { max-width: 920px; margin: 0; color: rgba(255, 255, 255, .62); font-size: 13px; line-height: 1.7; }
.gcp-context__boundary .dwp-premium__button { white-space: nowrap; }
#integrateur-google-cloud-api .mdk-split__panel:last-child { display: flex; flex-direction: column; justify-content: center; }
#integrateur-google-cloud-api,
#architecture-google-cloud { scroll-margin-top: 82px; }
@media (max-width: 1050px) {
    .gcp-context__console { grid-template-columns: 1fr; }
    .gcp-context__coordinates { border-right: 0; border-bottom: 1px solid rgba(255, 255, 255, .1); }
}
@media (max-width: 767px) {
    .gcp-context__heading { margin-bottom: 34px; }
    .gcp-context__coordinates { min-height: auto; padding: 24px 18px; }
    .gcp-context__bar { align-items: flex-start; flex-direction: column; gap: 6px; }
    .gcp-context__stack { grid-template-columns: 1fr; width: 100%; margin: 48px auto 34px; }
    .gcp-context__stack::before { inset: 10% 50%; width: 1px; height: 80%; }
    .gcp-context__card { min-height: 128px; }
    .gcp-context__path { grid-template-columns: 1fr; text-align: center; }
    .gcp-context__path b { width: 1px; height: 12px; justify-self: center; }
    .gcp-context__reconciliation { padding: 24px 20px; }
    .gcp-context__reconciliation-head { align-items: flex-start; flex-direction: column; }
    .gcp-context__reconciliation-head > small { text-align: left; }
    .gcp-context__contract { grid-template-columns: 1fr; }
    .gcp-context__contract article + article { border-top: 1px solid rgba(255, 255, 255, .1); border-left: 0; }
    .gcp-context__boundary { grid-template-columns: 1fr; gap: 22px; padding: 24px 20px; }
    .gcp-context__boundary .dwp-premium__button { width: 100%; white-space: normal; }
}
