:root{--navy:#082a63;--blue:#0a65c7;--blue2:#eaf4ff;--ink:#1d2b3f;--muted:#65758b;--line:#dfe6ee;--soft:#f7f9fc;--orange:#f47b20;--green:#159447;--red:#cf334f;--code:#0d1726;--code2:#111f33;--pink:#d81f72;--shadow:0 12px 34px rgba(15,41,78,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--ink);background:white;line-height:1.58}a{color:inherit}code,pre{font-family:"SFMono-Regular",Consolas,"Liberation Mono",monospace}.shell{display:grid;grid-template-columns:278px minmax(520px,820px) minmax(380px,1fr);min-height:100vh}.left{position:sticky;top:0;height:100vh;overflow:auto;border-right:1px solid var(--line);background:#fbfcfe;padding:24px 18px 40px}.brand{display:block;width:200px;height:58px;overflow:hidden;margin:2px 8px 22px}.search{position:relative;margin-bottom:18px}.search input{width:100%;height:42px;border:1px solid var(--line);border-radius:10px;padding:0 12px 0 36px;background:white;font-size:14px;outline:none}.search:before{content:'⌕';position:absolute;left:12px;top:8px;color:#7d8ca1;font-size:19px}.nav-group{margin:20px 0}.nav-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.11em;color:#8997aa;margin:0 10px 7px}.left a{display:flex;padding:7px 10px;border-radius:8px;text-decoration:none;font-size:13.5px;color:#47566b;margin:1px 0}.left a:hover,.left a.active{background:#edf4fd;color:#074e9a;font-weight:700}.side-links{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:20px 6px}.side-links a{justify-content:center;border:1px solid var(--line);background:white;font-size:12px;padding:8px}
.content{padding:0 46px 100px;max-width:900px;width:100%;margin:0 auto}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);z-index:8}.topbar .crumb{font-size:13px;color:var(--muted)}.version-pill{border:1px solid var(--line);border-radius:9px;padding:7px 10px;font-size:12px;background:white;color:#36506f}.hero{padding:64px 0 34px;border-bottom:1px solid var(--line)}.eyebrow{font-size:12px;text-transform:uppercase;font-weight:900;letter-spacing:.14em;color:var(--blue)}h1{font-size:48px;line-height:1.04;letter-spacing:-.035em;color:#102a4e;margin:12px 0 16px}.hero p{font-size:18px;color:#50627a;max-width:720px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.button{border-radius:9px;padding:10px 13px;text-decoration:none;font-size:13px;font-weight:800;border:1px solid var(--line);background:white;color:#29476c}.button.primary{background:var(--blue);color:white;border-color:var(--blue)}section,.endpoint-section{scroll-margin-top:92px;padding-top:46px}h2{font-size:31px;letter-spacing:-.025em;color:#102a4e;margin:0 0 14px}h3{font-size:20px;color:#183c69;margin:28px 0 10px}h4{font-size:15px;color:#193e6e;margin:22px 0 8px}p{margin:9px 0 13px}.lead{font-size:17px;color:#4c5f77}.muted{color:var(--muted)}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.quick-card{border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--soft)}.quick-card b{display:block;color:#133b6e;margin-bottom:6px}.callout{border:1px solid #cfe0f4;border-left:4px solid var(--blue);background:#f5f9fe;border-radius:10px;padding:14px 16px;margin:16px 0}.callout.good{border-color:#cce9d5;border-left-color:var(--green);background:#f4fbf6}.callout.warn{border-color:#f1dac0;border-left-color:var(--orange);background:#fff9f2}.callout ul{margin:8px 0 0 20px;padding:0}.callout li{margin:5px 0}.endpoint-section{padding-bottom:34px;border-bottom:1px solid var(--line)}.endpoint-kicker{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}.method{font-size:12px;font-weight:900;color:white;border-radius:7px;padding:5px 9px;letter-spacing:.05em}.method.post{background:var(--orange)}.method.get{background:var(--blue)}.endpoint-kicker>code{font-size:15px;color:#163b68;font-weight:750}.scope{font-size:11px;background:#edf4fd;color:#0b5bab;padding:4px 8px;border-radius:999px;font-weight:800}.mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:18px 0}.mini-grid>div{border:1px solid var(--line);border-radius:10px;padding:10px 12px}.mini-grid span{display:block;color:#7c8999;font-size:11px;text-transform:uppercase;letter-spacing:.06em}.mini-grid b{font-size:13px;color:#28476c}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:10px;margin:10px 0 20px}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;padding:10px 11px;background:#f4f7fa;color:#4d6179;font-size:11px;text-transform:uppercase;letter-spacing:.045em;white-space:nowrap}td{padding:10px 11px;border-top:1px solid var(--line);vertical-align:top}td code{font-size:12px;color:#0a579f;font-weight:700}.type{color:#6c4cb8;font-family:Consolas,monospace;font-size:12px}.required,.optional{font-size:10px;font-weight:900;border-radius:999px;padding:3px 7px}.required{background:#fff0e7;color:#b45110}.optional{background:#eef2f6;color:#66778a}.status{display:inline-flex;justify-content:center;min-width:38px;padding:3px 7px;border-radius:999px;color:white;font-size:11px;font-weight:900}.s2{background:var(--green)}.s4{background:var(--orange)}.s5{background:var(--red)}.inline-code{background:#f7f9fc;border:1px solid var(--line);border-radius:10px;padding:14px;overflow:auto;font-size:12px;line-height:1.55;color:#263c57}.inline-code.response{max-height:420px}.status-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.status-card{border:1px solid var(--line);border-radius:10px;padding:13px}.status-card code{font-weight:900;color:#124d8d}.event-pill{display:inline-flex;font-family:Consolas,monospace;font-size:12px;background:#f9edf4;color:#8a2457;padding:5px 8px;border-radius:7px;margin:3px 4px 3px 0}.footer{margin-top:56px;border-top:1px solid var(--line);padding:22px 0;color:#7b8797;font-size:12px}
.code-rail{position:sticky;top:0;height:100vh;overflow:auto;background:var(--code);color:#dbe8f7;border-left:1px solid #22344b}.rail-head{position:sticky;top:0;z-index:6;background:#0d1726;border-bottom:1px solid #26374e;padding:18px 20px}.rail-head .title{font-weight:800;color:white;font-size:14px}.rail-head .path{font-family:Consolas,monospace;color:#9bc7ff;font-size:12px;margin-top:4px}.lang-tabs{display:flex;gap:4px;margin-top:13px;flex-wrap:wrap}.lang-tabs button{border:0;background:#16263a;color:#9fb2c9;border-radius:7px;padding:6px 9px;cursor:pointer;font-size:11px;font-weight:750}.lang-tabs button.active{background:#2b7fd1;color:white}.rail-body{padding:20px}.rail-label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#8398b0;font-weight:900;margin:10px 0 8px}.rail-code{position:relative;background:var(--code2);border:1px solid #253850;border-radius:10px;padding:14px 14px 14px;overflow:auto;color:#e0ebf7;font-size:12px;line-height:1.55;white-space:pre}.rail-code code{white-space:pre}.copy-btn{position:absolute;right:8px;top:8px;border:1px solid #39516d;background:#1c3048;color:#aac3df;border-radius:6px;padding:4px 7px;font-size:10px;cursor:pointer}.rail-note{font-size:12px;color:#91a5bc;line-height:1.5;margin-top:18px;border-top:1px solid #253850;padding-top:16px}
@media(max-width:1250px){.shell{grid-template-columns:250px minmax(0,1fr)}.code-rail{display:none}.content{max-width:900px}}@media(max-width:800px){.shell{display:block}.left{position:relative;height:auto;border-right:0;border-bottom:1px solid var(--line)}.content{padding:0 18px 60px}.left .nav-group{display:none}.quick-grid,.mini-grid,.status-list{grid-template-columns:1fr}h1{font-size:38px}.topbar{position:relative}}
@media print{.left,.code-rail,.topbar{display:none}.shell{display:block}.content{max-width:none;padding:0 20px}section,.endpoint-section{break-inside:avoid}}
.brand-logo{display:block;width:390px;max-width:none;height:auto;transform:translate(-10px,-14px)}

@media(max-width:430px){.brand{width:150px;height:47px}.brand-logo{width:300px;transform:translate(-6px,-10px)}}

/* FAYGAW_DOCS_UI_FT_A */

/* Desktop / tablette large :
   le logo et la recherche restent visibles pendant
   le scroll interne de la navigation gauche. */
@media (min-width:801px){
  .side-sticky-head{
    position:sticky;
    top:0;
    z-index:30;
    margin:-24px -18px 0;
    padding:24px 18px 18px;
    background:#fbfcfe;
    box-shadow:0 10px 16px -18px rgba(7,30,59,.55);
  }

  .side-sticky-head .search{
    margin-bottom:0;
  }

  .side-sticky-head + .nav-group{
    margin-top:2px;
  }
}

/* Sous 800 px la sidebar n'est plus un conteneur scrollable :
   on retrouve exactement un comportement normal. */
@media (max-width:800px){
  .side-sticky-head{
    position:static;
    margin:0;
    padding:0;
    background:transparent;
    box-shadow:none;
  }

  .side-sticky-head .search{
    margin-bottom:18px;
  }

  .side-sticky-head + .nav-group{
    margin-top:20px;
  }
}

/* CTA OpenAPI — bleu Faygaw */
.side-links a.cta-openapi,
.button.cta-openapi{
  border-color:#1687ff;
  color:#0c5fd5;
  background:rgba(22,135,255,.065);
  transition:
    background .18s ease,
    color .18s ease,
    border-color .18s ease,
    box-shadow .18s ease,
    transform .18s ease;
}

.side-links a.cta-openapi:hover,
.button.cta-openapi:hover{
  border-color:#0c5fd5;
  background:#0c5fd5;
  color:#fff;
  box-shadow:0 5px 14px rgba(12,95,213,.16);
  transform:translateY(-1px);
}

/* CTA Postman — orange Faygaw */
.side-links a.cta-postman,
.button.cta-postman{
  border-color:#ff6a00;
  color:#c24b00;
  background:rgba(255,106,0,.07);
  transition:
    background .18s ease,
    color .18s ease,
    border-color .18s ease,
    box-shadow .18s ease,
    transform .18s ease;
}

.side-links a.cta-postman:hover,
.button.cta-postman:hover{
  border-color:#ff6a00;
  background:#ff6a00;
  color:#071e3b;
  box-shadow:0 5px 14px rgba(255,106,0,.16);
  transform:translateY(-1px);
}

.side-links a.cta-openapi:focus-visible,
.side-links a.cta-postman:focus-visible,
.button.cta-openapi:focus-visible,
.button.cta-postman:focus-visible{
  outline:2px solid #1687ff;
  outline-offset:2px;
}

/* Theme switch mirrors Hosted Checkout. The code rail deliberately keeps its palette. */
:root{color-scheme:light}.docs-theme{width:40px;min-width:40px;height:38px;border:1px solid var(--line);border-radius:9px;background:#fff;color:#10243b;font:700 16px inherit;cursor:pointer}.docs-theme:focus-visible{outline:3px solid #1687ff;outline-offset:3px}
.rail-code{padding-top:44px}.rail-code code{display:block;tab-size:2}.topbar{gap:8px}.topbar .crumb{flex:1}.lang-tabs button:focus-visible{outline:2px solid #fff;outline-offset:2px}
:root[data-theme=dark]{color-scheme:dark;--ink:#edf5fc;--muted:#bfd0df;--line:#2c475a;--soft:#142f40}
:root[data-theme=dark] body{background:#0b2230;color:#edf5fc}
:root[data-theme=dark] .left,:root[data-theme=dark] .side-sticky-head{background:#061620}
:root[data-theme=dark] .brand{background:#fff;border-radius:9px}
:root[data-theme=dark] .content{background:#0b2230;color:#edf5fc}
:root[data-theme=dark] .topbar{background:rgba(11,34,48,.97)}
:root[data-theme=dark] .content h1,:root[data-theme=dark] .content h2,:root[data-theme=dark] .content h3,:root[data-theme=dark] .content h4,:root[data-theme=dark] .content .quick-card b,:root[data-theme=dark] .content .mini-grid b{color:#fff}
:root[data-theme=dark] .content p,:root[data-theme=dark] .content .lead,:root[data-theme=dark] .content .hero p,:root[data-theme=dark] .left a{color:#edf5fc}
:root[data-theme=dark] .search input,:root[data-theme=dark] .version-pill,:root[data-theme=dark] .docs-theme,:root[data-theme=dark] .side-links a,:root[data-theme=dark] .content .button{background:#142f40;color:#edf5fc;border-color:#2c475a}
:root[data-theme=dark] .search input::placeholder,:root[data-theme=dark] .nav-label{color:#bfd0df}
:root[data-theme=dark] .left a:hover,:root[data-theme=dark] .left a.active{background:#173a50;color:#fff}
:root[data-theme=dark] .content .callout{background:#12334a;border-color:#315b79;color:#edf5fc}
:root[data-theme=dark] .content .callout.good{background:#123c30;border-color:#35785d}
:root[data-theme=dark] .content .callout.warn{background:#3d2d1d;border-color:#956436}
:root[data-theme=dark] .content th{background:#142f40;color:#e0ebf5}
:root[data-theme=dark] .content .inline-code{background:#102938;color:#edf5fc}
:root[data-theme=dark] .content td code,:root[data-theme=dark] .content .endpoint-kicker>code,:root[data-theme=dark] .content .status-card code{color:#82d5ff}
:root[data-theme=dark] .content .type{color:#d4b6ff}:root[data-theme=dark] .content .optional{background:#283e50;color:#edf5fc}
:root[data-theme=dark] .content .required{background:#55321c;color:#ffd2a0}:root[data-theme=dark] .content .mini-grid span{color:#bfd0df}
:root[data-theme=dark] .content .scope{background:#123c5e;color:#b5e5ff}:root[data-theme=dark] .content .event-pill{background:#4a2343;color:#ffd2ef}
@media(max-width:800px){.topbar{height:auto;min-height:72px;flex-wrap:wrap;padding:12px 0}.topbar .crumb{flex-basis:100%}.version-pill{margin-right:auto}}

/* Shared API reference: readable controls, provider-independent environment context. */
.hero-actions .button,.side-links a{font-weight:600}
.brand-logo-dark{display:none}
:root[data-theme=dark] .brand{background:transparent}
:root[data-theme=dark] .brand-logo-light{display:none}
:root[data-theme=dark] .brand-logo-dark{display:block}
:root[data-theme=dark] .content .button.cta-openapi,:root[data-theme=dark] .side-links a.cta-openapi{background:#102f48;border-color:#57afff;color:#8ac8ff}
:root[data-theme=dark] .content .button.cta-postman,:root[data-theme=dark] .side-links a.cta-postman{background:#3a2518;border-color:#ff934d;color:#ffb17b}
:root[data-theme=dark] .content .button.cta-openapi:hover,:root[data-theme=dark] .side-links a.cta-openapi:hover{background:#0c5fd5;border-color:#57afff;color:#fff}
:root[data-theme=dark] .content .button.cta-postman:hover,:root[data-theme=dark] .side-links a.cta-postman:hover{background:#ff934d;border-color:#ff934d;color:#10243b}

.portal-guide-figure{margin:1.4rem 0}.portal-guide-figure img{display:block;width:100%;height:auto;border:1px solid var(--line,#526579);border-radius:12px}.portal-guide-figure figcaption{font-size:.85rem;line-height:1.6;margin-top:.5rem;opacity:.9}

.portal-capture-link{display:block;cursor:zoom-in;border-radius:12px}.portal-capture-link:focus-visible{outline:3px solid #2585ea;outline-offset:4px}
.portal-gallery{box-sizing:border-box;width:min(1500px,96vw);max-width:96vw;max-height:95dvh;padding:16px;border:1px solid #526579;border-radius:16px;background:#fff;color:#10243b}.portal-gallery::backdrop{background:rgba(3,12,22,.85)}
.portal-gallery-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.portal-gallery-toolbar button{padding:9px 16px;border:1px solid #526579;border-radius:8px;cursor:pointer;background:transparent;color:inherit;font:inherit}.portal-gallery-viewport{overflow:auto;max-height:75dvh;text-align:center}.portal-gallery-viewport img{display:block;max-width:100%;max-height:75dvh;width:auto;height:auto;object-fit:contain;margin:auto}.portal-gallery[data-original=true] .portal-gallery-viewport img{max-width:none;max-height:none;margin:0}.portal-gallery-caption{line-height:1.5;margin:12px 0 0}
:root[data-theme=dark] .portal-gallery{background:#0b1e2c;color:#fff}@media(max-width:600px){.portal-gallery{padding:12px}.portal-gallery-toolbar{align-items:stretch}.portal-gallery-toolbar button{font-size:.875rem}}
