/* R2502 — R2500 reviewed and adapted locally. CSS only. */
body.lt-finish .sf-services > .xp-notebook {
 box-sizing:border-box; display:grid; grid-template-columns:minmax(0,1fr);
 grid-template-rows:none; gap:1rem; align-items:start;
 width:100%;max-width:84rem;margin-inline:auto;padding-inline:clamp(16px,3vw,32px);
}
body.lt-finish .sf-services .xp-notebook > :is(.xp-notebook-main,[data-save-brief],aside.xp-notebook-side) {
 box-sizing:border-box;min-width:0;width:100%;max-width:none;grid-column:auto;grid-row:auto;overflow-wrap:anywhere;
}
body.lt-finish .sf-services .xp-notebook-main {border-radius:16px;border:1px solid rgba(21,59,81,.16);}
body.lt-finish .sf-services .xp-notebook > [data-save-brief]:not([hidden]) {
 margin:0;padding:1rem 1.25rem;background:#fbf8f0;
 border:1px solid rgba(21,59,81,.16);border-inline-start:4px solid #b79a4e;border-radius:14px;color:#153b51;
}
body.lt-finish .sf-services .xp-notebook > [data-save-brief] > .lt-save-brief {
 margin:0;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;
}
body.lt-finish .sf-services .xp-notebook > [data-save-brief] :is([role="status"],[role="alert"]) {
 margin:.5rem 0 0;line-height:1.5;overflow-wrap:anywhere;
}
body.lt-finish .sf-services .xp-notebook > [data-save-brief] :is(button,a,input,select,textarea) {min-height:44px;max-width:100%;}
body.lt-finish .sf-services .xp-notebook > [data-save-brief] :is(button,a,input,select,textarea):focus-visible {outline:3px solid #153b51;outline-offset:3px;}
body.lt-finish .sf-services .xp-notebook > aside.xp-notebook-side {
 position:static;top:auto;align-self:start;padding:1.25rem;background:#f4f1ea;
 border:1px solid rgba(21,59,81,.14);border-radius:16px;
}
body.lt-finish .sf-services .xp-notebook-side .xp-process {
 position:static;display:grid;grid-template-columns:1fr;gap:.9rem;margin-top:1rem;
 padding:0 0 0 1rem;border:0;border-inline-start:2px solid rgba(183,154,78,.7);
}
body.lt-finish .sf-services .xp-notebook :is(.xp-side-caption,.xp-process dd,.lt-save-brief p) {font-size:.875rem;line-height:1.55;}
body.lt-finish .sf-services .xp-notebook :is(.xp-process dt,.lt-save-brief button,.lt-save-brief a) {font-size:.875rem;line-height:1.45;}
body.lt-finish .sf-services .xp-notebook-main[hidden],
body.lt-finish .sf-services .xp-notebook > [data-save-brief][hidden] {display:none!important;}
@media(min-width:1051px) {
 @supports selector(:has(*)) {
  body.lt-finish .sf-services > .xp-notebook:has(>.xp-notebook-main:not([hidden])) {
   grid-template-columns:minmax(0,1.6fr) minmax(16rem,1fr);grid-template-rows:auto 1fr;
   column-gap:clamp(1.75rem,3vw,3rem);row-gap:1rem;
  }
  body.lt-finish .sf-services .xp-notebook:has(>.xp-notebook-main:not([hidden])) > .xp-notebook-main {grid-column:1;grid-row:1;}
  body.lt-finish .sf-services .xp-notebook:has(>.xp-notebook-main:not([hidden])) > [data-save-brief] {grid-column:1;grid-row:2;}
  body.lt-finish .sf-services .xp-notebook:has(>.xp-notebook-main:not([hidden])) > aside.xp-notebook-side {grid-column:2;grid-row:1/span 2;}
 }
}
@media(min-width:701px) and (max-width:1050px) {body.lt-finish .sf-services > .xp-notebook {max-width:46rem;}}
@media(forced-colors:active) {
 body.lt-finish .sf-services .xp-notebook > :is(.xp-notebook-main,[data-save-brief],aside.xp-notebook-side) {border-color:CanvasText;}
 body.lt-finish .sf-services .xp-notebook > [data-save-brief] {border-inline-start-color:Highlight;}
 body.lt-finish .sf-services .xp-notebook :focus-visible {outline-color:Highlight;}
}

/* R2502 observed at1920: half-width nested fields made usage text too narrow.
   Keep DOM order and let every form step use the available column. */
body.lt-finish .sf-services .xp-notebook-main .xp-carnet{display:grid;grid-template-columns:minmax(0,1fr);gap:1.25rem;padding:clamp(1rem,2vw,2rem);}
body.lt-finish .sf-services .xp-notebook-main .xp-carnet > *{grid-column:1;grid-row:auto;min-width:0;}
body.lt-finish .sf-services .xp-usages{gap:.75rem;}
body.lt-finish .sf-services .xp-usage-body{padding:.9rem;min-width:0;}
body.lt-finish .sf-services :is(.xp-usage-desc,.xp-notebook-scope,.xp-privacy){font-size:.875rem;line-height:1.5;}
body.lt-finish .sf-services .xp-usage-name{font-size:1rem;line-height:1.3;overflow-wrap:normal;}
body.lt-finish .sf-services > .sc-request-head{box-sizing:border-box;width:100%;max-width:84rem;margin-inline:auto;padding-inline:clamp(16px,3vw,32px);}
body.lt-finish .sf-services :is(.sc-status,.sc-image-note){font-size:.8125rem;line-height:1.5;}
@media(max-width:500px){body.lt-finish .sf-services .xp-usages{grid-template-columns:1fr;}}

/* Progressive enhancement: no spare row if the save wrapper is truly hidden. */
@media(min-width:1051px){@supports selector(:has(*)){body.lt-finish .sf-services > .xp-notebook:has(>.xp-notebook-main:not([hidden])):not(:has(>[data-save-brief]:not([hidden]))){grid-template-rows:auto;}body.lt-finish .sf-services > .xp-notebook:has(>.xp-notebook-main:not([hidden])):not(:has(>[data-save-brief]:not([hidden]))) > aside.xp-notebook-side{grid-row:1;}}}
