@import url("./app-tokens.css");
/* Shared interaction layer: cream canvas, contextual glass, native controls. */

.app-sheet{box-sizing:border-box;border:1px solid rgba(255,253,246,.92);border-radius:26px 26px 0 0;background:var(--app-glass);color:var(--app-ink);backdrop-filter:blur(28px) saturate(115%);box-shadow:0 18px 50px rgba(7,29,43,.12),inset 0 1px rgba(255,255,255,.72);width:min(100%,620px);max-height:88dvh;margin:auto auto 0;padding:22px;overflow:auto;overscroll-behavior:contain}
.app-sheet::backdrop{background:rgba(7,29,43,.18);backdrop-filter:blur(3px) saturate(90%)}
.app-sheet>header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.app-sheet h2{font:400 26px/1.2 Georgia,serif;margin:0}
.app-sheet :is(button,input,select){min-height:44px}.app-sheet button{border:1px solid var(--app-rule);border-radius:22px;padding:10px 16px;background:transparent;color:inherit;font:inherit;cursor:pointer}.app-sheet .product-primary{background:var(--app-ink);color:#fff}
.app-criteria{display:flex;align-items:center;gap:12px;padding:14px 0;border-block:1px solid var(--app-rule)}.app-criteria>p{flex:1;margin:0!important;font-size:15px;line-height:1.45}.app-criteria>button{flex-shrink:0}
.app-criteria-form fieldset{border:0;padding:18px 0;margin:0;display:grid;gap:14px}.app-criteria-form fieldset[hidden]{display:none}.app-criteria-form legend{padding-top:16px;font-weight:600}.app-criteria-form label{display:grid;gap:7px;font-size:14px}.app-criteria-form :is(input,select){box-sizing:border-box;width:100%;border:1px solid var(--app-rule);border-radius:12px;padding:12px;background:var(--ht-cream-raised);font:inherit;color:inherit}
.app-segments{display:flex;gap:5px;overflow:auto}.app-segments button{flex:1;padding:9px 11px;white-space:nowrap;font-size:13px}.app-segments [aria-pressed=true]{background:var(--app-ink)!important;color:#fff!important;border-color:var(--app-gold)!important}.app-segments [aria-pressed=false]{background:rgba(255,253,246,.42)!important;color:var(--app-ink)!important}
.app-feedback{position:fixed;z-index:1000;bottom:calc(88px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 36px);box-sizing:border-box;background:var(--app-ink);color:#fff;border-radius:16px;padding:12px 18px;margin:0;font:14px/1.4 Arial,sans-serif;pointer-events:none}.app-feedback:empty{display:none}
.buyer-app #accueil{max-width:1120px}.buyer-app #accueil>.intro{padding:16px 0 12px}.buyer-app .final-home{display:flex;flex-direction:column;gap:12px}.buyer-app .final-home>.card{border:0;border-radius:0;background:transparent;padding:10px 0}.buyer-app .final-home .app-project-context{position:relative;padding:14px 0 16px;border-bottom:1px solid var(--app-rule)}.buyer-app .final-home .app-project-context h2{font:500 21px/1.35 Arial,sans-serif;margin:8px 70px 8px 0;letter-spacing:-.03em}.app-project-context>a{position:absolute;right:0;top:30px;min-height:44px;display:flex;align-items:center}.buyer-app .app-project-context p{font-size:13px;margin:6px 0}.app-project-counts{color:var(--ht-metal)}.app-mandate-detail summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-size:13px}.app-mandate-detail[open]{padding:12px;background:#fffcf680;border-radius:16px}.app-mandate-detail a{display:flex;align-items:center;min-height:44px}
#buyer-product-workspace{padding:0;border:0}#buyer-product-workspace>.product-section{padding:18px 0;border-top:0!important}#buyer-product-workspace h2{font:400 27px/1.15 Georgia,serif;margin:10px 0 14px}#buyer-product-workspace .product-eyebrow{font-size:11px!important;letter-spacing:.13em}#buyer-product-workspace .product-grid{gap:20px}#buyer-product-workspace .product-card{border-bottom:1px solid var(--app-rule);padding-bottom:16px}#buyer-product-workspace .product-card img{aspect-ratio:4/3;object-fit:cover;border-radius:18px}#buyer-product-workspace .product-card>button{margin:4px 5px 4px 0;font-size:13px;min-height:44px}#buyer-product-workspace .product-card strong{font-weight:500;font-size:18px}#buyer-product-workspace .product-card p{margin:8px 0;font-size:14px}#buyer-product-workspace .app-match-label{color:#52614e;font-weight:600}#buyer-product-workspace .product-card details{margin:0}#buyer-product-workspace .product-card summary{font-size:13px}.app-program-lots{display:grid;gap:24px}.app-property-facts{color:var(--ht-metal)}
#buyer-product-workspace #ready{background:#fffcf680;border:1px solid #fffdf8!important;border-radius:22px;padding:22px;margin:10px 0}#ready .app-ready-steps{display:flex;gap:8px;list-style:none;padding:0;overflow:auto}#ready .app-ready-steps li{flex:1;min-width:76px;display:grid;gap:7px;padding:10px 0;border-top:2px solid var(--app-rule);font-size:11px}#ready .app-ready-steps li>span{font-size:20px;color:var(--app-gold)}#ready .app-ready-steps [data-complete=true]{border-color:var(--app-gold)}#ready .app-ready-steps small{font-size:11px}#ready.app-ready-issued{border-left:3px solid var(--app-gold)!important}#ready a{display:flex;align-items:center;min-height:44px}.buyer-app .final-next{position:sticky;bottom:80px;z-index:3;background:#f5f1e8ed!important;backdrop-filter:blur(16px);border:1px solid #fffdf6!important;border-radius:20px!important;padding:14px!important}.buyer-app .final-next p{margin:0 0 8px;font-size:11px}.buyer-app .final-next .button{display:flex;width:100%;box-sizing:border-box;justify-content:center}
.buyer-app .header .workspace{display:none}.buyer-app .header nav{gap:2px}.buyer-app .header nav a{min-height:48px;font-size:12px}.buyer-app .header nav .nav-icon{width:20px;height:20px}.buyer-app .page>.intro{padding:18px 0}.buyer-app .page>.intro p{margin:6px 0}.buyer-app .page>.intro h1{font-size:30px}.buyer-app .search-filters.app-sheet{display:none}.buyer-app .search-filters.app-sheet[open]{display:block}.buyer-app .search-card{background:transparent;border:0;padding:12px 0}.buyer-app .search-card>h2{font-size:25px}.buyer-app .search-card>.caption{font-size:12px}.buyer-app #projet .card{background:transparent;border:0;padding:0}
.bc .bc-photo{display:none}.bc #conversion{display:block;max-width:820px;margin:auto}.bc .bc-sheet{min-height:0;border:0;background:transparent;padding:24px}.bc h1{font-size:clamp(30px,5vw,44px);line-height:1.12}.bc .bc-nav{position:sticky;top:0;z-index:5;background:#f5f1e8e8;backdrop-filter:blur(18px)}.bc .bc-row{gap:12px}.bc .bc-primary{min-height:48px}.bc [data-step=value] .bc-primary{position:sticky;bottom:18px;z-index:2}.bc [data-matches]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.bc [data-matches]>:not(.bc-card){grid-column:1/-1}.bc .bc-card img{height:190px}.bc .bc-card{margin:0}.bc .bc-preview{margin:16px 0}.bc .bc-eyebrow{font-size:11px}.bc #bc-project>label,.bc #bc-project>.bc-row{margin-bottom:14px}.bc #bc-project details{margin-bottom:16px}.bc #bc-project .bc-consent{display:none}.bc .app-project-dock{border-block:1px solid var(--app-rule);padding:12px 0;color:var(--ht-metal);font-size:14px}
.ht-v7 .ht7-intro h1{font-size:clamp(30px,4.2vw,58px)}.ht-v7 .ht7-intro .ht7-actions{align-items:center}.ht-v7 .ht7-intro .ht7-actions a{min-height:44px}.ht-v7 .ht7-paths{padding-top:24px}.ht-v7 #discovery-filters{border-radius:24px;background:#f5f1e8f5;backdrop-filter:blur(24px)}.ht-v7 #discovery-filters label{margin:10px 0}.ht-v7 .app-live-filter label[hidden]{display:none}.ht-v7 .app-live-filter .app-segments{margin:12px 0}.ht-v7 .app-search-context{padding:10px 0;font-size:13px}
.seller-page .seller-space{max-width:960px}.seller-page h1{font-size:32px;line-height:1.2}.seller-page #properties article{background:transparent;border:0;border-bottom:1px solid var(--app-rule);border-radius:0;padding:18px 0}.seller-page .seller-timeline{display:flex;gap:16px;overflow:auto;padding:12px 0}.seller-page .seller-timeline li{flex:0 0 auto;min-width:85px;border-top:2px solid var(--app-rule);padding-top:12px}.seller-page .seller-timeline [aria-current]{border-color:var(--app-gold)}
.product-shell.app-agent{background:var(--app-paper)}.app-agent .product-header{position:sticky;top:0;z-index:3;background:#f5f1e8e8;backdrop-filter:blur(18px)}.app-agent #agent-content>h1{font:400 32px/1.15 Georgia,serif;margin:16px 0}.app-agent .product-row{border:1px solid #fffdf8;background:#fffcf660;border-radius:18px;margin:12px 0;padding:16px}.app-agent .product-row>button{justify-self:start}.app-agent .product-progress{position:sticky;top:86px;z-index:2;background:#f5f1e8ed;backdrop-filter:blur(14px);border-radius:18px;padding:8px}.app-agent .product-progress li{padding:0;border:0}.app-agent .product-progress [aria-current]{background:var(--app-ink);color:#fff}.app-agent .product-form{max-width:760px}.app-agent .product-form>button.product-primary{position:sticky;bottom:12px}.app-agent .product-form label{font-size:13px}.app-agent .product-form input,.app-agent .product-form select{border-radius:12px;background:#fffcf680}.app-agent .app-agent-step{font-size:12px;color:var(--ht-metal)}.app-agent .product-section>h2{margin:8px 0 16px}.app-agent .product-nav{scrollbar-width:none}
:is(.app-sheet,.app-agent,.bc,.buyer-app) :is(a,button,summary,input,select):focus-visible{outline:3px solid var(--app-gold);outline-offset:3px}
@media(max-width:600px){.buyer-app main{padding:0 18px 115px!important}.buyer-app .header{padding:10px 18px!important;min-height:70px}.buyer-app .header nav{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));padding:6px!important;bottom:8px;left:8px;right:8px}.buyer-app .header nav a{padding:7px 1px!important;display:flex;flex-direction:column;justify-content:center;gap:4px;min-width:0}.buyer-app #buyer-catalog>.product-grid{display:flex;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.buyer-app #buyer-catalog>.product-grid>.product-card{flex:0 0 86%;scroll-snap-align:start}.buyer-app .final-home h2{font-size:25px}.buyer-app .final-home .app-project-context h2{font-size:19px}.buyer-app #buyer-catalog .product-card img{height:195px}.buyer-app #buyer-catalog>p{font-size:12px;margin:8px 0}.bc .bc-sheet{padding:18px}.bc .bc-nav img{width:150px;height:54px}.bc [data-matches]{grid-template-columns:1fr}.bc .bc-card img{height:200px}.bc .bc-preview{max-height:240px;overflow:hidden}.ht-v7 .ht7-intro{padding-top:12px}.ht-v7 .ht7-intro h1{font-size:32px}.ht-v7 .ht7-intro .ht7-actions{flex-wrap:wrap;gap:8px 16px}.ht-v7 .ht7-intro .ht7-actions a{font-size:13px}.ht-v7 #discovery-filters{margin:auto auto 0;width:100%;border-radius:24px 24px 0 0}.app-agent .product-header img{width:145px;height:50px}.app-agent .product-header>span{font-size:10px}.app-agent main{padding-top:6px}.app-agent .product-progress{top:70px}.app-agent .product-progress button{font-size:12px;padding:10px}.app-agent .product-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.app-agent .product-form>label:has([name=title]),.app-agent .product-form>details,.app-agent .product-form>button{grid-column:1/-1}.seller-page .seller-space{padding:16px}.seller-page h1{font-size:28px}}
@media(min-width:700px){.app-sheet{margin:auto;border-radius:26px}.buyer-app .final-next{position:static;max-width:520px}.buyer-app #buyer-product-workspace #ready{max-width:800px}}
@media(prefers-reduced-motion:no-preference){.app-sheet[open]{animation:app-arrive .18s ease-out}.app-feedback:not(:empty){animation:app-arrive .16s ease-out}:is(.buyer-app,.app-agent,.bc) button{transition:transform .12s,background .12s}:is(.buyer-app,.app-agent,.bc) button:active{transform:scale(.98)}@keyframes app-arrive{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}}
@media(prefers-reduced-motion:reduce){:is(.buyer-app,.bc,.app-agent,.app-sheet) *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Keep the first mobile viewport about the project and actual opportunities. */
.buyer-app[data-page=accueil] #app-project-context,.buyer-app[data-page=accueil] .app-catalog-criteria{display:none}
.buyer-app .final-home .app-project-context{width:100%;max-width:none!important;padding:8px 0 12px}
.buyer-app .final-home .app-project-context p{margin:4px 0!important;line-height:1.4}
.buyer-app .final-home .app-project-context .app-mandate-detail{font-size:12px}
.buyer-app .final-home .app-project-context h2{margin:5px 70px 5px 0;font-size:18px}
.buyer-app #accueil>.intro h1{font:500 26px/1.15 Arial,sans-serif}
.buyer-app #accueil>.intro{padding:12px 0 8px}
.buyer-app .final-home h2,#buyer-product-workspace h2{font-family:Arial,sans-serif;font-weight:500;font-size:24px}
.buyer-app .final-next p{display:none}.buyer-app .final-next{padding:7px!important;border-radius:18px!important}
.buyer-app .final-next .button{min-height:46px;font-size:13px}
.buyer-app :is(.product-section,.app-project-context){color:var(--app-ink)}
.buyer-app #buyer-catalog .product-card ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:7px}
.buyer-app #buyer-catalog .product-card li{font-size:12px;border:1px solid var(--app-rule);border-radius:18px;padding:7px 10px}
.buyer-app #ready{scroll-margin-top:16px}.buyer-app #ready .app-ready-steps{margin:16px 0}
.buyer-app #ready p{font-size:13px;line-height:1.5;margin:9px 0}
.buyer-app #ready h2{font-size:24px;line-height:1.15}.buyer-app #ready h3{font-size:16px;margin:10px 0}
.bc h1[tabindex="-1"]:focus{outline:none}.bc .bc-count{font-size:16px;margin:6px 0}.bc [data-matches]>.bc-fine{margin:0;font-size:11px}
.bc [data-step=value]>h1{margin:10px 0 16px}.bc .bc-checks{padding:10px;font-size:13px}.bc #bc-active-context{padding:10px 0;border-bottom:1px solid var(--app-rule)}.bc #bc-active-context p{font-size:13px;margin:5px 0}
.app-agent #agent-content>h1{font:500 28px/1.15 Arial,sans-serif}.app-agent #agent-content .product-section>h2{font-size:22px}
.app-agent .product-row{grid-template-columns:minmax(0,1fr) auto;gap:6px 12px}.app-agent .product-row>strong,.app-agent .product-row>span{grid-column:1}.app-agent .product-row>button{grid-column:2;grid-row:1/4;align-self:center}
.app-agent .product-form .app-segments button{font-size:12px}.app-agent .product-form>label[hidden]{display:none}
.app-agent .product-form>button.product-primary{grid-column:1/-1}.app-agent .product-form>button:not(.product-primary){font-size:13px}
.buyer-app[data-page=recherche] #app-project-context,.buyer-app[data-page=projet] #app-project-context,#buyer-discovery .app-catalog-criteria,.buyer-app #filter-jump{display:none}
.buyer-app .app-search-advanced{margin-top:24px}.buyer-app .app-search-advanced>summary{min-height:44px;padding:10px 0;cursor:pointer}
.buyer-app #buyer-discovery .product-grid{gap:20px}.buyer-app #buyer-discovery>.product-section{padding-top:12px}
.app-delegation-steps{list-style:none;padding:0;display:grid;gap:12px}.app-delegation-steps li{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid var(--app-rule);font-size:14px}
body.buyer-app>#app-feedback{background:var(--app-ink);color:#fff;bottom:155px}

@media(min-width:700px){.ht-v7 #discovery-filters.app-sheet{position:fixed;inset:auto 32px auto auto;top:104px;width:min(480px,calc(100vw - 64px));max-height:calc(100dvh - 136px);margin:0;border-radius:24px}.ht-v7 #discovery-filters.app-sheet::backdrop{background:rgba(7,29,43,.14)}.ht-v7 #discovery-filters .app-segments{gap:8px}.ht-v7 #discovery-filters .app-segments button{flex:0 1 auto;min-width:92px}}

/* Contextual refinement: one editor, visible inventory, a quiet cream lens. */
.ht-v7 #discovery-filters.app-refine{padding:20px 22px 14px;border:1px solid rgba(255,253,246,.94);background:var(--ht-glass);box-shadow:var(--ht-shadow);backdrop-filter:blur(26px) saturate(115%);-webkit-backdrop-filter:blur(26px) saturate(115%);max-height:82dvh;color:var(--ht-navy)}
.ht-v7 #discovery-filters.app-refine::backdrop{background:rgba(7,29,43,.04);backdrop-filter:none}
.ht-v7 #discovery-filters header{position:sticky;top:-20px;z-index:2;padding:4px 0 10px;background:var(--ht-cream);border-radius:12px}
.ht-v7 #discovery-filters h2{font-family:"Segoe UI",system-ui,sans-serif;font-size:23px;font-weight:500;letter-spacing:-.035em;line-height:1.2}
.ht-v7 #discovery-filters [data-close-filters]{flex:0 0 44px;width:44px;height:44px;padding:0;border-radius:50%;background:var(--ht-cream-raised);color:var(--ht-navy);border:1px solid var(--ht-rule);font-size:25px;font-weight:400}
.ht-v7 #discovery-filters .app-refine-summary{margin:0 0 18px;font-size:14px;line-height:1.6;color:var(--ht-metal)}
.ht-v7 #discovery-filters .app-segments{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:4px;border:1px solid var(--ht-rule);border-radius:28px;background:rgba(255,252,246,.46);margin:12px 0 20px;overflow:visible}
.ht-v7 #discovery-filters .app-segments button{min-width:0;min-height:44px;padding:8px 4px;font-size:13px;font-weight:500;border:1px solid transparent}
.ht-v7 #discovery-filters .app-segments [aria-pressed=true]{color:var(--ht-cream-raised)!important;box-shadow:inset 0 0 0 1px rgba(177,138,61,.16)}
.ht-v7 #discovery-filters .app-segments [aria-pressed=false]{border-color:transparent}
.ht-v7 #discovery-filters label{font-size:14px;font-weight:500;gap:8px;margin:14px 0;color:var(--ht-navy)}
.ht-v7 #discovery-filters :is(input,select){background:var(--ht-cream-raised);border-color:var(--ht-rule);color:var(--ht-navy);font-size:16px;min-height:50px;accent-color:var(--ht-navy);color-scheme:light}
.ht-v7 #discovery-filters :is(input,select,button):focus-visible{outline:2px solid var(--ht-gold);outline-offset:3px}
.ht-v7 #discovery-filters [data-full-project]{color:var(--ht-metal);border:0;padding:4px 0;font-size:13px;text-decoration:underline;text-underline-offset:4px}
.ht-v7 #discovery-filters .app-refine-actions{position:sticky;bottom:-14px;display:flex;gap:10px;margin:10px -2px -2px;padding:12px 2px max(6px,env(safe-area-inset-bottom));border:0;background:var(--ht-cream);border-radius:12px}
.ht-v7 #discovery-filters .app-refine-actions button{flex:1;font-size:14px;min-height:48px;background:transparent;color:var(--ht-navy)}
.ht-v7 #discovery-filters .app-refine-actions [type=submit]{background:var(--ht-navy);color:var(--ht-cream-raised)!important}
@media(min-width:700px){.ht-v7 #discovery-filters.app-refine{inset:auto;left:var(--refine-left,calc(100vw - 512px));top:var(--refine-top,104px);width:min(480px,calc(100vw - 48px));max-height:calc(100dvh - 48px);margin:0;border-radius:24px}}
@media(max-width:699px){.ht-v7 #discovery-filters.app-refine{inset:auto 0 0;width:100%;margin:0;border-radius:28px 28px 0 0;padding-top:12px}.ht-v7 #discovery-filters.app-refine:before{content:'';display:block;width:36px;height:4px;border-radius:4px;background:var(--ht-rule);margin:0 auto 12px}.ht-v7 #discovery-filters header{top:-12px}.ht-v7 #discovery-filters h2{font-size:22px}}
/* Keep imagery prominent; use one wide lead image instead of equal desktop boxes. */
.ht-v7 .ht7-lens{padding:13px 38px 13px 15px}.ht-v7 .ht7-lens h2{font-size:20px;margin-bottom:6px}.ht-v7 .ht7-property-arrow{color:var(--ht-gold)}
@media(min-width:1200px){.ht-v7 .ht7-intro{max-width:none;display:flex;justify-content:space-between;align-items:end;gap:32px;padding:16px 4vw 4px}.ht-v7 .ht7-intro>.ht7-eyebrow{display:none}.ht-v7 .ht7-intro h1{font-size:44px;max-width:580px;margin:0}.ht-v7 .ht7-intro .ht7-actions{padding-bottom:4px}.ht-v7 .ht7-property{flex-basis:29vw;max-width:none;height:410px}.ht-v7 .ht7-property:first-child{flex-basis:38vw}.ht-v7 .ht7-rail{padding-inline:4vw}.ht-v7 .ht7-lens{max-width:360px}}
