.st-supply-list{display:grid;gap:14px;min-width:0}.st-supply-card{border:1px solid #e5deed;border-radius:16px;padding:18px;min-width:0}.st-supply-card header{display:flex;justify-content:space-between;gap:12px;align-items:center}.st-supply-card h3{font-size:1rem;margin:0;overflow-wrap:anywhere}.st-supply-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}.st-supply-card dl div{display:grid;gap:6px;font-size:.8rem;color:#70677e}.st-supply-card dd{margin:0;font-weight:700;font-size:1.05rem;color:#302345}.st-supply-card dl div:last-child{color:#4e3672}.st-supply-select{display:flex!important;align-items:center;gap:12px;font-size:.85rem;line-height:1.6;min-height:44px}.st-supply-select input{width:20px;height:20px;flex-shrink:0;accent-color:#6842ac}.st-supply-alert{border-inline-start:3px solid #ca9b32;background:#fff8e5;padding:12px;color:#755515;border-radius:8px;font-size:.83rem;line-height:1.6}.st-supply-card .small{line-height:1.6}#study-supply-preview{display:grid;gap:18px;min-width:0}:root[data-bm-theme="dark"] .st-supply-card{border-color:#364356}:root[data-bm-theme="dark"] .st-supply-card dl div{color:#b4c0d0}:root[data-bm-theme="dark"] .st-supply-card dd{color:#edf2f9}

/* PDF plans: canonical points are independent of zoom and device density. */
.st-plan-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin:12px 0}.st-plan-toolbar label{flex:1 1 130px;min-width:0}.st-plan-toolbar .input,.st-plan-toolbar .select{width:100%;min-width:0}.st-plan-toolbar #study-plan-page{max-width:90px}.st-plan-scroll{overflow:auto;max-width:100%;max-height:65vh;min-height:200px;background:#d9dde5;border:1px solid #c4cad5;border-radius:12px;direction:ltr;overscroll-behavior:contain}.st-plan-surface{position:relative;background:white;max-width:none}.st-plan-surface canvas{display:block}.st-plan-surface svg{position:absolute;inset:0;width:100%;height:100%;cursor:crosshair;touch-action:pan-x pan-y}.st-plan-result{font-size:1.5rem;font-weight:800;color:#5a27bb}#study-plan{min-width:0;max-width:100%}#study-plan-form{margin-top:18px}#study-plan-message{overflow-wrap:anywhere}[data-bm-theme=dark] .st-plan-result{color:#c8afff}

.st-forecast-lines,.st-forecast-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px;margin:16px 0}.st-forecast-results dl{display:grid;gap:12px}.st-forecast-results dl>div{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}.st-forecast-results dd{margin:0;font-weight:800}.st-forecast-base{border:2px solid #7140d9!important;background:#f5f0ff}.st-forecast-lines input{width:100%;box-sizing:border-box}.st-predict{min-width:0}.st-predict h2{font-size:clamp(1.4rem,4vw,2rem)}[data-bm-theme=dark] .st-forecast-base{background:#251a3b}

.st-cote-list{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.st-cote-list button{min-width:100px;max-width:100%;white-space:normal}

/* BATI STUDY workspace: logical properties preserve the FR/AR reading order. */
.st-page{max-width:1280px;margin-inline:auto;display:grid;gap:20px;min-width:0;color:var(--text,#302345)}
.st-page *, .st-modal *{box-sizing:border-box}.st-page h1,.st-page h2,.st-modal h2{overflow-wrap:anywhere}
.st-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;border:1px solid #e7ddf5;border-radius:22px;background:linear-gradient(125deg,#f8f4ff,#fff)}
.st-hero h1{font-size:clamp(1.5rem,4vw,2.25rem);margin:8px 0 12px;line-height:1.25}.st-hero p{margin:0;color:#6c617b;line-height:1.65}.st-eyebrow{font-size:.7rem;font-weight:800;letter-spacing:.12em;color:#7544b9}
.st-grid,.st-recipe-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:16px}.st-study,.st-post{padding:22px;min-width:0}.st-top{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:.78rem;color:#756885}.st-badge{padding:6px 12px;background:#eee7f9;border-radius:30px;font-weight:700;color:#644294}.st-badge.APPROVED,.st-badge.EXPORTED{background:#e3f4eb;color:#286044}.st-badge.IN_REVIEW{background:#fff2d8;color:#805f1b}
.st-mini,.st-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.st-mini{margin:20px 0;font-size:.78rem;color:#726780}.st-mini span,.st-kpis article{display:grid;gap:8px;min-width:0}.st-mini strong{font-size:1.05rem;color:#39244c;overflow-wrap:anywhere}.st-kpis article{padding:20px;border:1px solid #e6dcef;box-shadow:none}.st-kpis span{font-size:.78rem;color:#726780}.st-kpis strong{font-size:clamp(1.15rem,3vw,1.7rem);color:#5c348b;overflow-wrap:anywhere}
.st-tabs,.st-actions{display:flex;gap:9px;flex-wrap:wrap}.st-tabs{padding-block:4px 14px;border-bottom:1px solid #e8dfef}.st-tabs .btn,.st-actions .btn{white-space:normal;min-height:44px;max-width:100%;justify-content:center}.st-page .btn:focus-visible,.st-modal .btn:focus-visible{outline:3px solid #a080d3;outline-offset:3px}#study-panel{display:grid;gap:16px;min-width:0}
.st-unit-prices{display:flex;flex-wrap:wrap;gap:14px;padding:12px;border-radius:12px;background:#f8f5fc;font-size:.8rem}.st-unit-prices span{display:grid;gap:5px;flex:1}.st-detail{margin-block:14px}.st-detail summary{padding-block:12px;cursor:pointer;color:#684496}.st-measure{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding-block:12px;border-top:1px solid #eee8f5}.st-empty{padding:32px;line-height:1.8}.st-error{color:#a52a42;overflow-wrap:anywhere}.st-search{display:grid;gap:8px;font-size:.82rem}
.st-form-grid,.st-resource{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.st-field,.st-modal label{display:grid;gap:7px;font-size:.82rem}.st-modal{width:min(850px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;padding:24px}.st-modal input,.st-modal select,.st-modal textarea{width:100%;min-width:0;max-width:100%;min-height:44px}.st-resource{padding:16px;border:1px solid #e7ddf1;border-radius:14px;margin-block:14px}.st-resource>button{align-self:end}.st-modal form{display:grid;gap:16px}.st-modal code{overflow-wrap:anywhere;white-space:normal}
.st-library-head{display:flex;gap:20px;align-items:center;justify-content:space-between}.st-library-seal{display:grid;text-align:center;min-width:85px;padding:16px;border-radius:50%;border:1px solid #d9c7ef;color:#724b9d;font-size:.65rem}.st-library-seal b{font-size:1.5rem}.st-library-section{margin-top:28px}.st-recipe-card{position:relative;padding:22px;background:#faf7ff;border:1px solid #e7dcf4;border-radius:16px}.st-recipe-index{font-size:.7rem;color:#906fb6}.st-recipe-card h3{font-size:1.15rem}.st-library-head p,.st-library-section p{line-height:1.7;color:#726780}.st-library{min-width:0}.st-breakdown{overflow-x:auto}.st-group-list{display:grid;gap:12px}.st-group{border-inline-start:4px solid #8b5ac3;padding:16px;background:#f9f6fe;border-radius:10px}.st-group h3{margin:0 0 12px}.st-group .st-mini{margin:8px 0}.st-parent{margin-inline-start:14px}.st-path{font-size:.75rem;color:#765c91;margin:8px 0}.st-rates{display:grid;gap:12px}.st-rate{padding:16px;border:1px solid #e7ddef;border-radius:12px;min-width:0}.st-rate p{margin-block:8px;overflow-wrap:anywhere}.st-rate small{line-height:1.6}.st-map{display:grid;gap:10px}.st-map label{grid-template-columns:1fr 1fr;align-items:center}.st-quantity .st-detail,.st-quantity .st-unit-prices{display:none}
@media(min-width:850px){.st-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.st-form-grid,.st-resource{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.st-page{gap:16px}.st-hero{padding:20px;align-items:stretch;flex-direction:column;gap:16px}.st-kpis{gap:10px}.st-kpis article{padding:14px}.st-study,.st-post{padding:18px}.st-mini{gap:12px}.st-form-grid,.st-resource{grid-template-columns:minmax(0,1fr)}.st-modal{padding:18px}.st-library-seal{display:none}.st-actions>.btn{flex:1 1 160px}.st-tabs>.btn{flex:1 1 120px}.st-parent{margin-inline-start:6px}}
[data-bm-theme=dark] .st-hero,[data-bm-theme=dark] .st-recipe-card,[data-bm-theme=dark] .st-unit-prices,[data-bm-theme=dark] .st-group{background:#261b38;border-color:#493359}[data-bm-theme=dark] .st-mini strong,[data-bm-theme=dark] .st-kpis strong{color:#dfc9ff}[data-bm-theme=dark] .st-hero p,[data-bm-theme=dark] .st-mini,[data-bm-theme=dark] .st-kpis span{color:#c2b2d2}
/* VILLA TEST uses the existing violet/white components. */
.villa-banner{position:relative;z-index:2;padding:12px 16px;background:#f1eafd;color:#412277;border-bottom:2px solid #7650be;font-size:13px}.villa-banner strong{margin-inline-end:12px}.villa-banner nav,.villa-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.villa-banner a{display:inline-block;padding:7px 10px;border:1px solid #ccb9ec;border-radius:8px;background:white;color:#412277;text-decoration:none}.villa-banner a[aria-current]{background:#6940bf;color:white}.villa-explanation{line-height:1.65;max-width:100%;min-width:0}.villa-scroll{max-width:100%;overflow:auto}.villa-scroll td,.villa-scroll th{padding:8px;text-align:start;border-bottom:1px solid #ece6f4}.villa-hash{overflow-wrap:anywhere}.villa-explanation details{padding:10px 0;border-bottom:1px solid #ece6f4}.villa-explanation .st-kpis{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}

.villa-explanation .st-kpis>div{display:grid;gap:5px;align-content:start}.villa-explanation .st-kpis>div>span{display:block}

/* Premium study presentation. All selectors stay inside the existing workspace. */
.st-workspace-tools{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.st-workspace-tools>.btn:last-child{margin-inline-start:auto}.st-page .st-hero{background:radial-gradient(ellipse at top right,#eaddfb 0,transparent 62%),linear-gradient(120deg,#fcfaff,#f5effd);box-shadow:0 8px 28px #49236c07}.st-page .st-kpis article{border-radius:18px;box-shadow:0 5px 20px #52277b07}.st-kpis article:nth-child(3){background:#f3fbf6;border-color:#d6eade}.st-kpis article:nth-child(3) strong{color:#266846}.st-page .st-tabs{gap:6px}.st-page .st-tabs .btn{font-size:.82rem;padding:10px 13px}.st-article-list{display:grid;gap:24px;min-width:0}.st-lot-section{border:1px solid #e5dbee;border-radius:18px;overflow:hidden;background:#fff;min-width:0;box-shadow:0 5px 20px #52277b06}.st-lot-heading{padding:20px 22px;display:flex;justify-content:space-between;align-items:center;gap:18px;background:linear-gradient(115deg,#f4edfc,#fcfaff);border-bottom:1px solid #e9e0f2}.st-lot-heading h2{font-size:1.14rem;margin:7px 0 0;color:#422360}.st-lot-total{display:grid;gap:6px;text-align:end;flex-shrink:0}.st-lot-total span{font-size:.72rem;color:#776681}.st-lot-total strong{font-size:1.05rem;color:#663992;font-variant-numeric:tabular-nums}.st-article-columns,.st-article-summary{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,.8fr) repeat(3,minmax(0,1fr)) 18px;gap:16px;align-items:center}.st-article-columns{padding:12px 22px;background:#faf8fd;font-size:.72rem;font-weight:700;color:#81728e}.st-article-columns>span:not(:first-child){text-align:end}.st-post.st-article{padding:0;border:0;border-bottom:1px solid #eee7f4;border-radius:0;box-shadow:none;margin:0;min-width:0;background:#fff}.st-article-summary{padding:19px 22px;cursor:pointer;list-style:none;min-width:0}.st-article-summary::-webkit-details-marker{display:none}.st-article-summary:hover{background:#fcfaff}.st-article-summary:focus-visible{outline:3px solid #a080d3;outline-offset:-3px}.st-article-name{display:grid;gap:6px;min-width:0}.st-article-name strong{font-size:.92rem;line-height:1.55;overflow-wrap:anywhere;font-weight:650}.st-code{font-size:.7rem;font-weight:800;color:#8a65ac;letter-spacing:.035em}.st-article-name small{font-size:.69rem;color:#82718f}.st-article-number{display:grid;text-align:end;gap:5px;min-width:0}.st-article-number>strong{font-size:.84rem;font-variant-numeric:tabular-nums;line-height:1.55;overflow-wrap:anywhere}.st-article-number small{font-size:.75rem;font-weight:500;color:#82718f}.st-profit>strong{color:#2f7150}.st-mobile-label{display:none}.st-expand{color:#8054ad;font-size:1.1rem;transition:transform .15s}.st-article[open]>.st-article-summary{background:#f8f4fd;border-bottom:1px solid #e9e0f2}.st-article[open]>.st-article-summary>.st-expand{transform:rotate(180deg)}.st-article-body{padding:22px;min-width:0;background:#fdfcfe}.st-lot-footer{padding:14px 22px;background:#f9f6fd;font-size:.75rem;font-weight:700;color:#796487}.st-lot-footer .st-mini{margin:12px 0 0;grid-template-columns:repeat(4,minmax(0,1fr))}.st-lot-footer .st-mini strong{font-size:.9rem}.st-unit-prices{background:#fff;border:1px solid #e8def1;border-radius:12px;padding:16px;margin-bottom:22px}.st-unit-prices b{font-variant-numeric:tabular-nums;font-size:1rem;color:#5b3284}.st-breakdown{overflow:visible;min-width:0}.st-breakdown h3{font-size:1.05rem;margin:0 0 6px;color:#432960}.st-resource-category{margin-block:18px;border:1px solid #e5dbed;border-radius:12px;overflow:hidden;background:#fff;min-width:0}.st-resource-category h4{margin:0;padding:12px 14px;background:#eee6f8;color:#654387;font-size:.85rem}.st-cost-table{border-collapse:collapse;width:100%;table-layout:fixed;font-size:.8rem}.st-cost-table th,.st-cost-table td{padding:12px 10px;border-bottom:1px solid #ece6f2;text-align:end;vertical-align:top;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.st-cost-table th:first-child,.st-cost-table td:first-child{text-align:start;width:34%}.st-cost-table th{color:#86758f;background:#fbf9fe;font-size:.72rem;font-weight:600}.st-cost-table th:nth-child(2){width:12%}.st-cost-table th:nth-child(3){width:9%}.st-cost-table th:nth-child(4){width:17%}.st-cost-table th:nth-child(5){width:11%}.st-cost-table th:nth-child(6){width:17%}.st-cost-table tfoot th,.st-cost-table tfoot td{background:#f8f4fc;font-weight:750;color:#593377;border-bottom:0}.st-cost-totals{display:grid;gap:0;max-width:520px;margin:24px 0 0 auto;border:1px solid #e5dbed;border-radius:12px;overflow:hidden;background:#fff}.st-cost-totals>div{display:flex;justify-content:space-between;gap:16px;padding:12px 16px;font-size:.82rem;border-bottom:1px solid #eee7f4}.st-cost-totals dt{color:#796782;min-width:0}.st-cost-totals dd{margin:0;font-weight:700;text-align:end;font-variant-numeric:tabular-nums;flex-shrink:0}.st-cost-totals .st-cost-final{background:#ede3f8;border:0;color:#5a2e83}.st-cost-final dt{font-weight:700;color:inherit}.st-sr-only{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.st-report-notice{background:#f2ebfa;border-inline-start:3px solid #8b60b3;padding:13px 15px;font-size:.82rem;line-height:1.7;color:#64457f;border-radius:8px}.st-report-paging{display:flex;justify-content:center;align-items:center;gap:18px;margin:16px 0}.st-pdf-sheet{padding:8px;background:#e9e5ed;border-radius:8px;max-width:100%;min-width:0}.st-pdf-sheet canvas{display:block;width:100%;height:auto;background:white;box-shadow:0 2px 10px #28113a1c}.st-modal [hidden]{display:none!important}#study-report-preview{min-width:0;max-width:100%}#study-report-preview .btn{white-space:normal}.st-workspace-tools .btn{white-space:normal;min-height:44px}
@media(max-width:900px){.st-article-columns{display:none}.st-article-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:18px;position:relative}.st-article-name{grid-column:1/-1;padding-inline-end:24px}.st-article-name strong{font-size:1rem}.st-mobile-label{display:block;font-size:.7rem;font-weight:400;color:#8a7795}.st-article-number{text-align:start;border-inline-start:2px solid #e5d6f2;padding-inline-start:10px}.st-article-number>strong{font-size:.95rem}.st-expand{position:absolute;inset-inline-end:18px;top:18px}.st-article-body{padding:16px}.st-lot-heading{padding:17px;align-items:flex-start}.st-lot-total{max-width:40%;flex-shrink:1}.st-lot-total strong{font-size:.88rem}.st-lot-footer{padding:15px}.st-lot-footer .st-mini{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.st-workspace-tools{gap:8px}.st-workspace-tools>.btn{flex:1 1 145px;font-size:.8rem}.st-workspace-tools>.btn:last-child{margin:0}.st-page .st-kpis strong{font-size:1.2rem;line-height:1.5}.st-lot-heading h2{font-size:1rem}.st-cost-table,.st-cost-table tbody,.st-cost-table tbody tr,.st-cost-table tbody td{display:block;width:auto}.st-cost-table thead{display:none}.st-cost-table tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px;border-bottom:1px solid #e8dff1}.st-cost-table tbody td{padding:0;border:0;text-align:start;min-width:0;font-size:.82rem}.st-cost-table tbody td:first-child{grid-column:1/-1;width:auto;font-weight:700;line-height:1.6;margin-bottom:2px}.st-cost-table tbody td:not(:first-child)::before{content:attr(data-label);display:block;font-size:.68rem;color:#8b7797;margin-bottom:5px}.st-cost-table tbody td:last-child{color:#613884;font-weight:750}.st-cost-table tfoot{display:block}.st-cost-table tfoot tr{display:flex;justify-content:space-between;gap:12px;background:#f8f4fc;padding:12px 16px}.st-cost-table tfoot th,.st-cost-table tfoot td{display:block;padding:0;width:auto!important}.st-cost-totals>div{font-size:.77rem;padding:12px}.st-cost-totals dd{flex-shrink:1;overflow-wrap:anywhere}.st-resource-category h4{font-size:.8rem}.st-unit-prices{gap:12px}.st-unit-prices span{flex:1 1 110px}}
[data-bm-theme=dark] .st-lot-section,[data-bm-theme=dark] .st-post.st-article,[data-bm-theme=dark] .st-article-body,[data-bm-theme=dark] .st-resource-category,[data-bm-theme=dark] .st-cost-totals{background:#241a31;border-color:#493359}[data-bm-theme=dark] .st-lot-heading,[data-bm-theme=dark] .st-article-columns,[data-bm-theme=dark] .st-article[open]>.st-article-summary,[data-bm-theme=dark] .st-lot-footer,[data-bm-theme=dark] .st-cost-table th,[data-bm-theme=dark] .st-cost-table tfoot tr{background:#30203f}[data-bm-theme=dark] .st-article-name strong,[data-bm-theme=dark] .st-lot-heading h2,[data-bm-theme=dark] .st-lot-total strong,[data-bm-theme=dark] .st-unit-prices b,[data-bm-theme=dark] .st-breakdown h3{color:#e2cef4}

.st-modal .btn.accent{color:#fff!important}.st-modal a.btn{text-decoration:none;font-size:.85rem}.st-modal .st-actions{align-items:center}.st-modal .st-actions>.btn{flex:1 1 150px}

.st-report-paging{direction:ltr}
.sr-card{display:flex;flex-direction:column;gap:.65rem;min-width:0}.sr-card h3,.sr-card p{margin:0;overflow-wrap:anywhere}.sr-card button{margin-top:auto}.sr-rate{color:#6b3fab;font-size:1.45rem}.sr-team{display:grid;grid-template-columns:2fr 1fr 1.5fr auto;gap:.65rem;align-items:end;padding:.8rem 0;border-bottom:1px solid #e6ddf2}.sr-team label{display:grid;gap:.3rem;min-width:0}.sr-team input{width:100%;min-width:0}.sr-forecast{margin:1rem 0;padding:1.1rem;background:#f8f5fd;border:1px solid #e6ddf2;border-radius:16px}.sr-forecast h3{color:#65399d;margin:0 0 .6rem}.sr-forecast p,.sr-locked p{overflow-wrap:anywhere}.sr-confirm{display:flex;gap:.6rem;align-items:flex-start;padding:1rem;background:#faf5e9;border-radius:12px;margin-block:1rem}.sr-confirm input{flex:none;margin-top:.3rem}.sr-locked{display:block;background:#f6f0fc}.sr-forecast dl div{min-width:0}.sr-forecast small{display:block;margin-top:.75rem}@media(max-width:650px){.sr-team{grid-template-columns:1fr 1fr}.sr-team label:first-child{grid-column:1/-1}.sr-forecast{padding:.85rem}.sr-forecast .st-cost-totals{grid-template-columns:1fr}.sr-card .btn{width:100%}}
/* Study V2: compact cards, technical controls progressively disclosed. */
.sa-intro,.sa-summary{padding:18px;border-radius:18px;background:linear-gradient(120deg,#f1eafe,#faf8ff);color:#493276;margin:12px 0}.sa-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(115px,1fr));gap:10px}.sa-kpis>div{background:#fff;border-radius:12px;padding:12px;display:flex;flex-direction:column}.sa-kpis strong{font-size:24px;color:#7347ba}.sa-kpis span{font-size:12px;color:#675a79}.sa-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:12px}.sa-card{border:1px solid #e6def0;border-radius:14px;padding:16px;margin:8px 0;background:#fff;min-width:0;overflow-wrap:anywhere}.sa-card h3,.sa-card h4{margin:4px 0 10px}.sa-card small{color:#736984}.sa-card label,.sa-composition-row label{display:flex;flex-direction:column;gap:5px;min-width:0}.sa-card select,.sa-card input,.sa-composition-row select,.sa-composition-row input{width:100%;min-width:0;max-width:100%}.sa-check{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:8px;margin:10px 0}.sa-check input{width:18px;flex:0 0 18px;margin-top:2px}.sa-warning{color:#925415;font-size:13px}.sa-status{border-inline-start:3px solid #a080d2;padding:10px 14px;margin:10px 0;background:#faf7ff}.sa-status p{margin:6px 0}.sa-status button{display:block;margin-top:10px}.sa-composition-row{display:grid;grid-template-columns:2fr 1.5fr 1fr .7fr .7fr auto;gap:10px;padding:14px;background:#f9f7fc;border-radius:12px;margin:10px 0;align-items:end}@media(max-width:700px){.sa-composition-row{grid-template-columns:1fr 1fr}.sa-composition-row>label:first-child{grid-column:1/-1}.sa-cards{grid-template-columns:1fr}.sa-card{padding:12px}.sa-card .st-form-grid{grid-template-columns:1fr}.sa-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Price scenarios: readable on Android and desktop, no compressed six-column table. */
.sh-panel{margin:18px 0;padding:20px;border:1px solid #e5dcf6;border-radius:18px;background:linear-gradient(135deg,#fff,#f7f2ff)}
.sh-controls{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.sh-controls label,.sh-mode{display:grid;gap:7px;font-weight:700;min-width:180px;max-width:320px}.sh-controls .small{flex:1;min-width:180px}
.sh-comparison{margin-top:14px}.sh-comparison summary{font-weight:700;color:#6540a4;cursor:pointer}.sh-scenarios{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:14px 0}.sh-scenario{background:#fff;border:1px solid #e6deef;border-radius:14px;padding:16px;min-width:0}.sh-scenario.sh-selected{border:2px solid #8a58cd;background:#fcfaff}.sh-scenario h3{margin:0 0 14px;color:#6540a4}.sh-scenario>div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #eee7f5;font-size:13px}.sh-scenario b{white-space:nowrap;direction:ltr}.sh-scenario small{display:block;line-height:1.7}
@media(max-width:850px){.sh-scenarios{grid-template-columns:1fr}.sh-panel{padding:14px}.sh-controls{gap:10px}.sh-controls label{max-width:none;width:100%}.sh-scenario>div{font-size:14px}}
/* Architectural home: deliberately scoped away from study details and libraries. */
.st-home{--st-violet:#7139bd;--st-ink:#17213a;gap:16px;background:#f8f7fd;color:var(--st-ink);padding:0 0 calc(16px + env(safe-area-inset-bottom,0px));border-radius:22px}
.st-home .st-home-heading{position:relative;isolation:isolate;overflow:hidden;min-height:160px;padding:26px 24px 34px;border-radius:22px;background:linear-gradient(115deg,#eee1fc,#f8f5ff)}
.st-home-architecture{position:absolute;z-index:-2;inset:0 0 0 auto;width:55%;height:100%;object-fit:cover;object-position:75% 50%;opacity:.58;mix-blend-mode:multiply}
.st-home-heading:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#eee1fc 30%,#eee1fc00 90%)}
.st-home-heading-copy{max-width:660px}.st-home-heading h1{display:flex;align-items:center;gap:12px;font-size:24px;font-weight:800;line-height:1.2;margin:0 0 12px;letter-spacing:-.025em;color:var(--st-ink)}
.st-home-mark{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#b77de8,#7139bd);color:white;box-shadow:0 4px 10px #7139bd24}.st-home-mark .ui-icon{width:26px;height:26px}
.st-home-heading p{font-size:14px;line-height:1.5;margin:0;max-width:330px;color:#534562}
.st-home .st-home-intro{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:16px 20px;padding:24px;background:linear-gradient(115deg,#fff 30%,#f1e9fc);border:1px solid #fff;border-radius:22px;box-shadow:0 7px 22px #39245e0c}
.st-home-intro-copy{min-width:0}.st-home .st-home-intro .st-eyebrow{display:inline-block;letter-spacing:.02em;padding:5px 9px;border-radius:9px;background:#f0e7fc;color:#7139bd;font-size:12px;line-height:1.2;font-weight:800}
.st-home-intro h2{font-size:25px;line-height:1.2;letter-spacing:-.025em;font-weight:800;color:var(--st-ink);margin:10px 0 12px;max-width:570px}.st-home .st-home-intro p{font-size:14px;line-height:1.5;max-width:400px;color:#5a5367}
.st-home-tools{width:100%;height:155px;object-fit:contain;grid-column:2;grid-row:1/3;align-self:center;mix-blend-mode:multiply;pointer-events:none}
.st-home .st-home-create{grid-column:1;justify-self:start;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;min-height:46px;border:0;border-radius:13px;background:linear-gradient(105deg,#7139bd,#8b46d4);color:#fff;font-size:15px;font-weight:750;box-shadow:0 4px 10px #7139bd20;white-space:normal}
.st-home-libraries{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.st-library-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;border:1px solid #fff;border-radius:18px;padding:16px 10px;min-height:112px;min-width:0;color:var(--st-ink);box-shadow:0 5px 14px #39245e0c;cursor:pointer;font:inherit;text-align:center;transition:transform .15s,box-shadow .15s}
.st-library-tile span{font-size:14px;font-weight:700;line-height:1.3;max-width:160px;overflow-wrap:anywhere}.st-library-tile .ui-icon{width:32px;height:32px;color:#7139bd}.st-library-prices{background:linear-gradient(135deg,#f8f0ff,#ede0fa)}.st-library-rendements{background:linear-gradient(135deg,#f4fbff,#e6f1ff)}.st-library-rendements .ui-icon{color:#376ac5}.st-library-technical{background:linear-gradient(135deg,#fffaf1,#fcf3e8)}
.st-home-demo{display:flex;align-items:center;gap:14px;width:100%;padding:10px 14px 10px 10px;min-height:86px;border:1px solid #fff;border-radius:19px;background:linear-gradient(105deg,#fff,#f5effd);box-shadow:0 5px 15px #39245e0c;text-align:start;font:inherit;color:var(--st-ink);cursor:pointer}.st-home-demo>img{width:90px;height:66px;object-fit:cover;border-radius:12px;flex-shrink:0}.st-home-demo>span:not(.st-home-arrow){flex:1;min-width:0;border-inline-start:1px solid #ddd4e7;padding-inline-start:14px}.st-home-demo strong{display:block;font-size:15px;font-weight:800}.st-home-demo small{display:block;font-size:12px;line-height:1.4;color:#62576f;margin-top:4px}.st-home-arrow{flex-shrink:0;color:#7139bd}.st-home-arrow .ui-icon{width:20px;height:20px}
.st-home-studies{min-width:0}.st-home .st-search{display:block;font-size:18px;font-weight:700;color:var(--st-ink);margin:3px 0 10px}.st-home-search{position:relative;display:flex;align-items:center}.st-home-search>span{position:absolute;inset-inline-start:14px;color:#7d7488;pointer-events:none}.st-home-search .ui-icon{width:20px;height:20px}.st-home .st-home-search .input{width:100%;max-width:none;padding:12px 14px;padding-inline-start:44px;min-height:48px;border-radius:15px;border:1px solid #e0dae8;background:#fff;color:var(--st-ink);font-size:16px;box-shadow:0 3px 8px #39245e08;margin:0}.st-home-count{font-size:12px;color:#71657d;margin:10px 2px}
.st-home .st-grid{gap:12px}.st-home .st-study{padding:16px;border:1px solid #e8e0f1;border-radius:17px;background:#fff;box-shadow:0 4px 12px #39245e08}.st-home .st-study h2{font-size:17px;margin:12px 0;line-height:1.35;color:var(--st-ink)}.st-home .st-badge{font-size:11px;padding:5px 9px}.st-home .st-mini{gap:10px;margin:12px 0}.st-home .st-mini>span{font-size:11px;color:#71657d}.st-home .st-mini strong{font-size:15px;color:var(--st-ink);overflow-wrap:anywhere}.st-home .st-study>.btn{font-size:13px;min-height:44px;border-radius:11px;border-color:#e7dbf4;background:#f8f3ff;color:#7139bd;padding:9px 13px}.st-home .st-empty{padding:20px;font-size:14px;line-height:1.6;background:#fff;border:1px solid #e8e0f1;border-radius:16px;color:#62576f}.st-home .st-error:empty{display:none}
.st-home button:focus-visible,.st-home input:focus-visible{outline:3px solid #7139bd;outline-offset:3px}.st-home button:hover:not(:disabled){box-shadow:0 7px 18px #7139bd22}.st-home button:disabled{cursor:wait;opacity:.7}
[dir=rtl] .st-home-architecture{inset:0 auto 0 0;transform:scaleX(-1)}[dir=rtl] .st-home-heading:after{background:linear-gradient(270deg,#eee1fc 30%,#eee1fc00 90%)}[dir=rtl] .st-home-arrow{transform:scaleX(-1)}
@media(max-width:600px){.st-home{border-radius:0;gap:16px}.st-home .st-home-heading{padding:20px 16px 24px;min-height:148px;border-radius:18px}.st-home-heading h1{font-size:22px;gap:9px}.st-home-mark{width:34px;height:34px;border-radius:10px}.st-home-mark .ui-icon{width:24px;height:24px}.st-home-heading p{max-width:245px;font-size:13px}.st-home-architecture{width:58%;opacity:.42}.st-home .st-home-intro{padding:18px;grid-template-columns:minmax(0,1fr) 112px;gap:14px 8px}.st-home-intro-copy{grid-column:1/-1}.st-home-intro h2{font-size:24px;max-width:330px;margin:9px 0 11px}.st-home .st-home-intro p{max-width:70%;font-size:13px}.st-home-tools{position:absolute;inset-inline-end:5px;bottom:15px;width:135px;height:105px}.st-home .st-home-create{font-size:14px;padding:11px 15px;position:relative;z-index:1;gap:6px;min-height:44px}.st-home-libraries{gap:10px}.st-library-tile{min-height:101px;padding:12px 6px;gap:8px;border-radius:17px}.st-library-tile span{font-size:13px}.st-library-tile .ui-icon{width:29px;height:29px}.st-home-demo{gap:11px;padding:9px;min-height:78px}.st-home-demo>img{width:74px;height:58px}.st-home-demo>span:not(.st-home-arrow){padding-inline-start:11px}.st-home-demo strong{font-size:14px}.st-home-demo small{font-size:12px}.st-home .st-search{font-size:17px}.st-home .st-grid{grid-template-columns:1fr}}
@media(max-width:350px){.st-home-heading h1{font-size:20px}.st-home .st-home-intro{padding:15px}.st-home-intro h2{font-size:23px}.st-home-tools{width:100px;height:90px;bottom:13px;inset-inline-end:2px}.st-home .st-home-intro p{max-width:75%;font-size:12px}.st-home .st-home-create{font-size:13px;padding:11px 12px}.st-home-libraries{grid-template-columns:1fr;gap:8px}.st-library-tile{flex-direction:row;justify-content:flex-start;min-height:60px;padding:12px 16px;gap:14px;text-align:start}.st-library-tile span{max-width:none;font-size:14px}.st-home-demo>img{width:56px;height:52px}}
@media(prefers-reduced-motion:reduce){.st-library-tile{transition:none}}

.st-home .st-search>label{display:block;margin-bottom:10px}
@media(max-width:350px){.st-home .st-home-create{grid-column:1/-1;width:max-content;max-width:100%}}
@media(min-width:351px) and (max-width:600px){.st-home .st-home-heading{min-height:128px;padding-block:17px}.st-home .st-home-intro{padding:16px;gap:12px 8px}.st-home .st-home-intro .st-eyebrow{font-size:11px;padding:4px 8px}.st-home-intro h2{margin:8px 0 10px}.st-home .st-home-intro p{max-width:calc(100% - 120px)}.st-library-tile{min-height:96px}.st-home-demo{min-height:74px}.st-home-demo>img{height:54px}}
/* Keep the search accessible in the first mobile screen without shrinking tap targets. */
@media(min-width:351px) and (max-width:600px){.st-home .st-home-heading{min-height:116px;padding-block:15px}.st-home .st-home-intro{padding:14px 16px;gap:10px 8px}.st-home-intro h2{font-size:23px;line-height:1.15}.st-library-tile{min-height:86px;padding-block:10px;gap:6px}.st-home-demo{min-height:66px;padding-block:8px}.st-home-demo>img{height:48px}}

/* Avant-Métré → étude → bordereau, same controls on mobile and desktop. */
.st-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}
.st-flow .btn{white-space:normal;text-align:start;min-height:48px}
.st-missing-resource{display:grid;gap:5px;padding:10px 0;border-top:1px solid #eee7f6;overflow-wrap:anywhere}
.st-bpu-table{width:100%;table-layout:fixed}.st-bpu-table th:first-child{width:9%}.st-bpu-table th:nth-child(2){width:29%}
.st-bpu-table td{overflow-wrap:anywhere}.st-bpu-table form{display:grid;gap:4px}.st-bpu-table input{width:100%;min-width:0;box-sizing:border-box}
@media(max-width:700px){.st-flow{grid-template-columns:repeat(2,minmax(0,1fr))}.st-bpu-table{table-layout:auto}.st-bpu-table td form{width:100%;max-width:210px}}
/* Compact catalogue pricing on Android. */
.sa-price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0}
.sa-price-grid span{font-size:12px;min-width:0}.sa-price-grid b{display:block;overflow-wrap:anywhere}
.sa-family{border:1px solid #e7e1f1;border-radius:12px;padding:12px;margin:8px 0;background:#faf8ff}
.sa-family details{margin:8px 0 0 10px}.sa-family summary{cursor:pointer;font-weight:600}
