:root{color-scheme:dark;--bg:#101117;--surface:#1b1c24;--surface2:#23242e;--stroke:#32343e;--text:#fbfaf8;--muted:#aaa8b2;--orange:#ff6e42;--orange2:#ff4f38;--green:#62ddaf;--radius:17px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 55% -10%,#29202a 0,transparent 44%),var(--bg);color:var(--text);min-height:100vh}button,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,input:focus-visible{outline:2px solid var(--orange);outline-offset:2px}input{color:var(--text);background:#15161e;border:1px solid #41404a;padding:13px 14px;border-radius:10px;width:100%;outline:none;min-width:0}input::placeholder{color:#7e7c89}input:focus{border-color:var(--orange)}[hidden]{display:none!important}.site-header{border-bottom:1px solid #302e39;padding:17px max(18px,calc((100vw - 1180px)/2));display:flex;justify-content:space-between;gap:16px;align-items:center;position:sticky;top:0;z-index:20;background:#111219ef;backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:11px}.brand-icon{width:44px;height:44px;background:linear-gradient(140deg,#ff9b54,#fa4e38);border-radius:13px;display:grid;place-items:center;font-size:37px;font-weight:900;box-shadow:0 5px 25px #ff693c33}.brand strong{font-size:18px;letter-spacing:.045em;white-space:nowrap}.brand strong span{color:#ff7951}.brand small{display:block;color:#93919c;font-size:9px;letter-spacing:.14em;margin-top:4px}.right-head{display:flex;gap:18px;align-items:center}.connection{color:var(--muted);font-size:12px;white-space:nowrap}.status-dot,.live-dot{display:inline-block;background:#ff8650;border-radius:50%;width:8px;height:8px;margin-right:5px}.status-dot.online{background:var(--green)}.pill{padding:11px 16px;font-size:12px;font-weight:700;border-radius:999px;white-space:nowrap}.outline{border:1px solid #5b5152;background:#28232a;color:#fff}.container{max-width:1216px;margin:auto;padding:0 18px}.intro{display:flex;align-items:end;justify-content:space-between;padding:41px 0 29px;gap:20px}.eyebrow,.section-eyebrow{font-size:11px;letter-spacing:.17em;font-weight:800;color:var(--orange)}.intro h1{font-size:clamp(33px,4.1vw,55px);line-height:1.02;letter-spacing:-.065em;margin:13px 0}.intro h1 em{color:var(--orange);font-style:normal}.intro p,.host-actions p{color:var(--muted);font-size:14px;margin:12px 0 0}.people-pill{border:1px solid #453c3c;color:#d4d0d4;background:#241f25;padding:10px 15px;border-radius:25px;font-size:12px;white-space:nowrap;margin-bottom:4px}.grid-layout{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(315px,1fr);gap:18px;align-items:stretch}.left-col{display:flex;flex-direction:column;gap:17px}.video-shell{min-height:280px;aspect-ratio:16/9;border:1px solid #46353a;border-radius:var(--radius);overflow:hidden;position:relative;background:#0b0b11}.video-shell:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,#432432 0,transparent 68%);pointer-events:none}.video-shell video{width:100%;height:100%;object-fit:contain;display:none;position:absolute;inset:0;background:#000}.video-shell video.active{display:block}.video-top{position:absolute;inset:16px 17px auto;display:flex;align-items:center;justify-content:space-between;gap:10px;z-index:3}.video-top>span:last-child{font-size:11px;background:#17141bdd;padding:7px 9px;border-radius:6px;color:#d4cbd0}.live-label{background:#ff4e3b;border-radius:6px;padding:7px 10px;font-size:11px;font-weight:900;letter-spacing:.04em}.live-label i{display:inline-block;border-radius:50%;width:7px;height:7px;background:#fff;margin-right:4px}.video-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:45px 18px 10px;gap:10px}.bigbolt{font-size:70px;line-height:1;color:#ff744d;text-shadow:0 5px 30px #ec5e4d55}.video-placeholder strong{font-size:22px}.video-placeholder p{font-size:12px;max-width:275px;line-height:1.55;color:#b0a7b5;margin:0}.button{border:0;padding:13px 17px;font-size:13px;font-weight:800;border-radius:10px;transition:transform .12s,filter .12s}.button:not(:disabled):active{transform:scale(.98)}.button.orange{background:linear-gradient(120deg,#ff8350,#fd593e);color:#141017}.button.light{background:#f4edeb;color:#1b1718}.button.dark{background:#35333b;color:#fff}.auction-panel,.chat-card,.card{background:var(--surface);border:1px solid var(--stroke);border-radius:var(--radius);box-shadow:0 9px 35px #0001}.auction-panel{padding:20px 21px 16px}.auction-head{display:flex;align-items:center;justify-content:space-between}.tag{background:#32303a;color:#c2bfca;border:1px solid #45414a;border-radius:99px;padding:6px 10px;font-size:10px;font-weight:850;letter-spacing:.025em}.tag.active{color:#ff9873;border-color:#8c483d;background:#3e282b}.auction-main{display:flex;justify-content:space-between;gap:15px;padding:21px 0 18px;align-items:start}.muted-mini{display:block;color:#a9a3ad;font-size:11px;font-weight:750;letter-spacing:.085em}.lot-number{font-size:43px;font-weight:850;letter-spacing:-.055em;margin:3px 0}.lot-desc{color:var(--muted);font-size:12px;line-height:1.5}.current-bid{text-align:right}.current-bid strong{display:block;font-size:41px;letter-spacing:-.06em;color:var(--green);line-height:1.4}.current-bid>span:last-child{font-size:12px;color:#d9d4dd}.bid-bar{border-top:1px solid var(--stroke);padding-top:15px;display:flex;gap:10px;align-items:end}.bid-bar>div{flex:1}.bid-bar label{font-size:11px;display:block;color:#c2bdc6;margin-bottom:7px}.bid-bar input{max-width:180px}.bid-bar button{white-space:nowrap}.fine-note{font-size:11px;color:#9995a2;line-height:1.55;margin:13px 0 0}.chat-card{display:flex;flex-direction:column;overflow:hidden;min-height:570px}.chat-heading{padding:23px 23px 18px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--stroke)}.chat-heading h2{font-size:17px;letter-spacing:-.03em;margin:0 0 5px}.chat-heading p{color:var(--muted);font-size:12px;margin:0}.chat-icon{color:var(--orange);font-size:21px}.messages{flex:1;min-height:230px;max-height:540px;overflow:auto;padding:19px 23px;display:flex;flex-direction:column;gap:15px}.empty-chat{text-align:center;color:var(--muted);font-size:13px;margin:auto}.msg{display:flex;align-items:start;gap:10px}.avatar{flex:0 0 32px;width:32px;height:32px;background:#3d303b;border-radius:50%;display:grid;place-items:center;color:#f6b091;font-weight:750;font-size:12px}.msg-content{min-width:0;max-width:95%}.msg-head{font-size:12px;font-weight:850;margin-bottom:3px}.msg-head span{font-weight:400;color:#8f8b97;font-size:10px;margin-left:7px}.msg-text{font-size:13px;color:#d8d3dc;line-height:1.5;overflow-wrap:anywhere}.chat-form{border-top:1px solid var(--stroke);padding:15px 18px 19px}.identity{color:#bdb5be;font-size:11px;margin-bottom:9px}.identity strong{color:var(--green)}.join-row{display:flex;gap:8px}.join-row button{white-space:nowrap}.join-row #sendChat{min-width:43px}.host-actions{margin:6px 0 23px;display:flex;justify-content:space-between;gap:15px;align-items:center}.host-actions h2{font-size:35px;margin:8px 0 0;letter-spacing:-.04em}.host-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.card{padding:22px}.host-grid .sales-card{grid-column:1/-1}.host-login{max-width:430px;margin:35px auto;text-align:center;padding:35px}.host-login h2{font-size:27px;margin:10px}.host-login p{font-size:13px;color:var(--muted)}.host-login form{display:flex;flex-direction:column;gap:11px;margin-top:23px}.lock-circle{width:60px;height:60px;margin:auto;background:#402d2f;color:var(--orange);border-radius:50%;display:grid;place-items:center;font-size:24px}.card-title{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:17px}.card-title h3{font-size:17px;margin:0}.camera-card video{width:100%;aspect-ratio:16/9;background:#08090d;border-radius:10px;object-fit:contain}.notice{background:#2e282d;color:#d6b6ac;padding:13px;border-radius:8px;font-size:12px;line-height:1.55;margin-top:12px}.button-row{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}.button-row button{flex:1}.form-stack{display:flex;flex-direction:column;gap:13px}.form-stack label{display:block;color:#c7c3cc;font-size:12px;font-weight:650}.form-stack input{margin-top:6px}.current-auction-host{border:1px dashed #4a454a;border-radius:10px;padding:13px;margin:15px 0;color:#d1c4ca;font-size:13px;line-height:1.5}.wide{width:100%}.sum{color:var(--green);font-size:26px;font-weight:800}.stat-sub{color:var(--muted);font-size:13px;margin:0}.sales-list{margin:20px 0;max-height:230px;overflow:auto}.sale-entry{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--stroke);padding:11px 0;align-items:center}.sale-entry strong{font-size:13px}.sale-entry small{color:var(--muted);font-size:11px;display:block;margin-top:5px}.sale-entry .price{color:var(--green);font-weight:850}.sale-entry button{background:none;border:0;color:#cfa79a;font-size:11px;text-decoration:underline}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%,15px);background:#f4f0ed;color:#18151a;padding:13px 20px;border-radius:11px;font-weight:700;max-width:90%;text-align:center;box-shadow:0 10px 50px #0009;z-index:30;opacity:0;pointer-events:none;transition:opacity .16s,transform .16s;font-size:13px}.toast.visible{opacity:1;transform:translate(-50%,0)}footer{text-align:center;margin:42px 0 26px;font-size:11px;color:#807d89}footer span{color:#a29aa5}
@media(max-width:800px){.site-header{padding:13px 15px}.brand-icon{width:37px;height:37px;font-size:31px}.brand strong{font-size:15px}.brand small{font-size:8px}.right-head{gap:8px}.connection{display:none}.pill{padding:10px 12px}.container{padding:0 12px}.intro{padding:28px 5px 21px}.intro h1{font-size:40px}.intro p{font-size:12px}.grid-layout{grid-template-columns:1fr;gap:14px}.video-shell{min-height:210px}.chat-card{min-height:390px}.messages{min-height:195px;max-height:310px}.host-grid{grid-template-columns:1fr}.host-grid .sales-card{grid-column:auto}.host-actions{flex-wrap:wrap}.host-actions h2{font-size:29px}}
@media(max-width:430px){.intro h1{font-size:34px}.people-pill{font-size:10px;padding:8px 9px}.intro p{max-width:260px}.video-shell{min-height:205px}.auction-main{padding:17px 0}.lot-number{font-size:34px}.current-bid strong{font-size:34px}.auction-panel{padding:17px}.video-placeholder strong{font-size:19px}.chat-heading{padding:17px}.messages{padding:15px}.join-row input{font-size:13px}.button{padding:12px 13px}.card{padding:17px}}

/* V3 : bandeau LA RAFALE et interface d'encheres mobile. */
.brand-name strong{font-weight:900;text-transform:none;letter-spacing:.005em;font-size:21px}.brand-name strong span{font-size:12px;letter-spacing:.06em;color:var(--orange)}
#brandImage{max-height:52px;max-width:145px;object-fit:contain;border-radius:3px}
.local-clock{font-size:14px;font-weight:750;color:#e1dadd;white-space:nowrap;font-variant-numeric:tabular-nums}
.text-mark{font-size:clamp(28px,5vw,48px);font-style:italic;font-weight:950;letter-spacing:-.04em;color:#f6eadb;text-shadow:0 5px 25px #0008}
.countdown-box{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 15px;background:#13151c;border-radius:12px;border:1px solid #41414b;margin-bottom:10px}
.countdown-box>span{font-size:11px;font-weight:850;letter-spacing:.08em;color:#d8bec0}.countdown-box strong{font-size:31px;line-height:1;font-weight:900;font-variant-numeric:tabular-nums;letter-spacing:.02em;color:var(--green)}.countdown-box strong.urgent{color:#ff624a}.countdown-box small{font-size:11px;color:#c6c2cb}
.bid-bar{display:flex;flex-direction:column;gap:10px}.quick-bids{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}.quick-bids .button{font-size:15px;min-height:55px}.quick-bids .secondary-bid{background:#f2b17b;color:#1e1510}.custom-bids{display:flex;gap:8px;align-items:end;width:100%}.custom-bids>div{flex:1}.custom-bids input{max-width:none}.custom-bids button{flex:0 0 auto;min-height:45px}
select{color:var(--text);background:#15161e;border:1px solid #41404a;padding:12px;border-radius:10px;width:100%;font:inherit;margin-top:6px}
.seller-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.brand-settings{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px;padding:15px 20px}.brand-settings h3{margin:0 0 5px;font-size:15px}.brand-settings p{font-size:11px;color:var(--muted);margin:0;max-width:550px}.logo-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.logo-actions input{max-width:235px;font-size:10px;padding:9px}
@media(max-width:800px){.brand-settings{flex-direction:column;align-items:stretch}.intro{padding:15px 3px}.intro h1{font-size:28px;margin:7px 0}.brand-name strong{font-size:17px}}
@media(max-width:430px){.brand-name strong{font-size:17px}.brand-name small{font-size:7px}.right-head{gap:6px}.local-clock{font-size:12px}.site-header{padding:10px}.brand-name strong span{font-size:9px}.quick-bids .button{padding:12px 7px;font-size:14px}.countdown-box strong{font-size:28px}.countdown-box small{display:none}.custom-bids button{font-size:11px;padding:12px 10px}.container{padding:0 9px}}

/* V4 - espace client et moderation */
[hidden]{display:none!important}
.account-forms{display:flex;flex-direction:column;gap:12px;padding:7px 0}
.account-forms form{gap:11px}
.account-forms label{color:#d5c8c8;font-size:12px;font-weight:700}
.account-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.account-forms input{margin-top:6px}
.chat-card:has(.account-forms:not([hidden])){min-height:670px}
.logout-link{background:transparent;border:0;color:#c9b9aa;text-decoration:underline;font-size:12px;margin-top:10px;padding:0}
.customer-toolbar{display:flex;gap:12px;margin:15px 0;flex-wrap:wrap}.customer-toolbar input{flex:1;min-width:230px}
.customers-list{max-height:400px;overflow-y:auto}
.customer-entry{padding:15px 0;border-bottom:1px solid var(--stroke);display:flex;justify-content:space-between;align-items:center;gap:15px}
.customer-info{display:flex;flex-direction:column;gap:4px;overflow-wrap:anywhere}
.customer-info strong{font-size:13px}.customer-info small{color:var(--muted);font-size:12px}
.customer-buttons{display:flex;flex-direction:column;gap:6px;align-items:center}.blocked-tag{color:#ff8b78;font-size:11px}
.moderation-list{max-height:450px;overflow-y:auto}
.mod-entry{border-bottom:1px solid var(--stroke);padding:12px 0;display:flex;gap:12px;align-items:center;justify-content:space-between}
.mod-info{min-width:0;display:flex;flex-direction:column;gap:5px}.mod-info strong{font-size:12px}.mod-info span{font-size:12px;color:#d5c9c9;overflow-wrap:anywhere}
.mod-buttons{display:flex;gap:7px;flex-wrap:wrap}.mod-buttons .button{padding:9px;font-size:11px}
@media(max-width:650px){.customer-entry,.mod-entry{align-items:stretch;flex-direction:column}.customer-buttons{align-items:start;flex-direction:row}.mod-buttons{justify-content:flex-start}}

.host-links{display:flex;gap:9px;flex-wrap:wrap;align-items:center}

/* ============================================================
   V4.2 — MODE LIVE IMMERSIF MOBILE
   Affichage original La Rafale ; modes ordinateur inchangés.
   Les videos sont toujours en objet 'cover' sur telephone :
   touche ⤢ pour choisir 'contain' et voir tout le cadrage.
   ============================================================ */
.m-view-ui,.m-host-ui,.m-close-account,.m-host-sheet-actions button{display:none}
.m-host-sheet-actions{display:flex;align-items:center;gap:10px}
@media(max-width:700px){
  body.mode-viewer{background:#000;overflow:hidden}
  body.mode-viewer .site-header,body.mode-viewer .intro,body.mode-viewer footer{display:none}
  body.mode-viewer .container{max-width:none;padding:0;margin:0}
  body.mode-viewer #viewerPage{display:block;position:fixed;inset:0;width:100%;height:100vh;height:100dvh;overflow:hidden;background:#050505;isolation:isolate}
  body.mode-viewer .left-col{display:contents}
  body.mode-viewer .video-shell{position:absolute;inset:0;width:100%;height:100%;min-height:0;aspect-ratio:auto;border:0;border-radius:0;background:#050505;z-index:0}
  body.mode-viewer .video-shell::before{display:none}
  body.mode-viewer .video-shell::after{content:"";display:block;position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(to bottom,rgba(0,0,0,.57) 0%,transparent 24%,transparent 43%,rgba(0,0,0,.26) 62%,rgba(0,0,0,.76) 100%)}
  body.mode-viewer .video-shell video{object-fit:cover;background:#050505}
  body.mode-viewer.mobile-video-contain .video-shell video{object-fit:contain}
  body.mode-viewer .video-top{display:none}
  body.mode-viewer .video-placeholder{z-index:1;padding:55px 22px 95px;background:radial-gradient(ellipse at 50% 35%,#46242c,#08080b 75%)}
  body.mode-viewer .video-placeholder .text-mark{font-size:44px}
  body.mode-viewer .video-placeholder #watchButton{min-height:56px;min-width:205px;font-size:16px;margin-top:12px}
  body.mode-viewer .auction-panel{display:none}
  body.mode-viewer .m-view-ui{display:block;position:absolute;inset:0;z-index:16;pointer-events:none}
  .m-view-top{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:calc(13px + env(safe-area-inset-top,0px)) 13px 12px;pointer-events:auto}
  .m-view-brand{display:flex;flex-direction:column;gap:3px;text-shadow:0 2px 12px #000c}
  .m-view-brand b{font-size:16px;letter-spacing:.03em;white-space:nowrap}
  .m-view-brand b span{font-size:11px;color:#ffa176}
  .m-view-brand small{font-size:11px;color:#eee;opacity:.9}
  .m-top-actions{display:flex;gap:5px;align-items:center}
  .m-icon-button,.m-account-button{border:1px solid #ffffff52;background:#1414148f;backdrop-filter:blur(9px);color:#fff;height:38px;border-radius:23px;font-weight:750}
  .m-icon-button{font-size:21px;min-width:34px;padding:3px 6px}
  .m-account-button{padding:0 9px;max-width:125px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}
  .m-view-dock{position:absolute;left:0;right:0;bottom:0;padding:30px 12px calc(12px + env(safe-area-inset-bottom,0px));background:linear-gradient(to top,#080808 4%,#080808e8 58%,transparent 100%);pointer-events:auto}
  .m-auction-summary{display:flex;gap:12px;align-items:end;justify-content:space-between;margin-bottom:13px;min-width:0}
  .m-auction-description{min-width:0;display:flex;flex-direction:column;gap:4px}
  .m-auction-description small{font-size:11px;color:#ffd49b;font-weight:700}
  .m-auction-description strong{font-size:20px;color:#fff;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .m-auction-description span{font-size:12px;color:#d7d3d1;line-height:1.3;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
  .m-auction-price{display:flex;flex-direction:column;align-items:flex-end;gap:3px;white-space:nowrap;flex:0 0 auto}
  .m-auction-price strong{font-weight:950;font-size:30px;line-height:1;color:#f8fbf5}
  .m-auction-price span{font-size:17px;font-weight:900;color:#ffcd3a;font-variant-numeric:tabular-nums}
  .m-auction-price span.urgent{color:#ff5f54}
  .m-view-bid-actions{display:grid;grid-template-columns:minmax(104px,.8fr) minmax(0,2fr);gap:8px}
  .m-primary-action,.m-outline-action{border-radius:999px;font-size:15px;font-weight:900;min-height:54px;border:1px solid transparent;padding:8px 13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .m-primary-action{background:linear-gradient(135deg,#ffd64a,#ffb82f);color:#211a0c;box-shadow:0 5px 25px #ffae0040}
  .m-outline-action{background:#2f2b28e3;color:#fff;border-color:#b2a6a0ad}
  .m-primary-action:disabled,.m-outline-action:disabled{opacity:.55;box-shadow:none}
  body.mode-viewer .chat-card{display:flex;position:absolute;z-index:12;bottom:calc(178px + env(safe-area-inset-bottom,0px));left:0;right:0;width:100%;height:min(30dvh,245px);min-height:0!important;max-height:none;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible;pointer-events:none}
  body.mode-viewer .chat-card .chat-heading{display:none}
  body.mode-viewer .messages{flex:1;min-height:0;max-height:none;width:calc(100% - 54px);padding:4px 11px;display:flex;justify-content:flex-end;gap:8px;overflow-y:auto;scrollbar-width:none;pointer-events:auto;overscroll-behavior:contain;mask-image:linear-gradient(to bottom,transparent 0%,#000 23%,#000 100%)}
  body.mode-viewer .messages::-webkit-scrollbar{display:none}
  body.mode-viewer .msg{gap:7px;align-items:center;max-width:100%;text-shadow:0 1px 4px #000,0 1px 12px #000}
  body.mode-viewer .avatar{flex:0 0 29px;width:29px;height:29px;background:#2c2930dd;color:#ffd0a3;font-size:10px;border:1px solid #fff4}
  body.mode-viewer .msg-head{font-size:12px;margin-bottom:2px}
  body.mode-viewer .msg-head span{font-size:10px;color:#d1cbd1}
  body.mode-viewer .msg-text{font-size:13px;color:#fff;font-weight:520;line-height:1.3}
  body.mode-viewer .empty-chat{font-size:12px;color:#e2dbe1;text-align:left;margin:auto 0 0}
  body.mode-viewer .chat-form{border:0;background:none;padding:6px 11px 0;pointer-events:auto}
  body.mode-viewer .chat-form .account-forms,body.mode-viewer .chat-form .identity,body.mode-viewer .chat-form .logout-link{display:none!important}
  body.mode-viewer .join-row{max-width:calc(100% - 56px);gap:8px}
  body.mode-viewer .join-row input{background:#222228ab;border:1px solid #ffffff7a;border-radius:99px;color:#fff;backdrop-filter:blur(7px);padding:10px 15px;font-size:14px;min-height:43px}
  body.mode-viewer .join-row button{min-height:43px;border-radius:50%;width:43px;min-width:43px;padding:0;font-size:19px}
  body.mode-viewer:not(.client-auth) .chat-form{display:none}
  /* Feuille d'identification : ne cache pas les formulaires et permet le clavier mobile. */
  body.mode-viewer.mobile-account-open #viewerPage::after{content:"";position:absolute;inset:0;background:#000b;z-index:30}
  body.mode-viewer.mobile-account-open .chat-card{display:flex;position:fixed;left:0;right:0;bottom:0;top:auto;width:100%;height:auto;max-height:89dvh;min-height:0!important;z-index:50;overflow:auto;overscroll-behavior:contain;border:1px solid #50434b;border-radius:22px 22px 0 0;background:#1d1c25;color:#fff;box-shadow:0 -10px 55px #000c;pointer-events:auto}
  body.mode-viewer.mobile-account-open .chat-heading{display:flex;padding:16px 18px 12px;position:sticky;top:0;z-index:2;background:#1d1c25;border-bottom:1px solid #41404c}
  body.mode-viewer.mobile-account-open .m-close-account{display:block;background:#35323c;color:#fff;border:0;border-radius:50%;height:35px;width:35px;font-size:16px}
  body.mode-viewer.mobile-account-open .chat-icon{display:none}
  body.mode-viewer.mobile-account-open .messages{display:none}
  body.mode-viewer.mobile-account-open .chat-form{display:block;padding:16px 20px 23px}
  body.mode-viewer.mobile-account-open .chat-form .identity{display:block!important}
  body.mode-viewer.mobile-account-open .chat-form .account-forms:not([hidden]){display:flex!important}
  body.mode-viewer.mobile-account-open .chat-form .logout-link:not([hidden]){display:block!important}
  body.mode-viewer.mobile-account-open .join-row{max-width:none}
  .m-bid-sheet{display:flex;flex-direction:column;gap:12px;position:absolute;left:0;right:0;bottom:0;max-height:92dvh;overflow:auto;padding:18px 19px calc(20px + env(safe-area-inset-bottom,0px));background:#20202a;border:1px solid #665660;border-radius:23px 23px 0 0;box-shadow:0 -12px 60px #000c;z-index:65;pointer-events:auto}
  .m-bid-sheet[hidden]{display:none!important}
  .m-bid-sheet label{display:block;font-size:12px;color:#eee;font-weight:750}
  .m-bid-sheet input{margin-top:6px}
  .m-sheet-head{display:flex;justify-content:space-between;align-items:center}
  .m-sheet-head strong{font-size:19px}
  .m-sheet-head button{border:none;background:#38343d;color:#fff;border-radius:50%;width:35px;height:35px}
  body.mode-viewer.mobile-bid-open #viewerPage::after{content:"";position:absolute;inset:0;background:#0009;z-index:14}
  body.mode-viewer .toast{z-index:110;bottom:calc(190px + env(safe-area-inset-bottom,0px))}
  /* Espace vendeur : plein écran vidéo avec contrôles superposés. */
  body.mode-host.host-auth:not(.mobile-host-classic){background:#030305;overflow:hidden}
  body.mode-host.host-auth:not(.mobile-host-classic) .site-header,body.mode-host.host-auth:not(.mobile-host-classic) footer,body.mode-host.host-auth:not(.mobile-host-classic) .host-actions,body.mode-host.host-auth:not(.mobile-host-classic) .brand-settings{display:none}
  body.mode-host.host-auth:not(.mobile-host-classic) .container{max-width:none;margin:0;padding:0}
  body.mode-host.host-auth:not(.mobile-host-classic) #hostDashboard{width:100%;height:100vh;height:100dvh}
  body.mode-host.host-auth:not(.mobile-host-classic) .host-grid{display:block}
  body.mode-host.host-auth:not(.mobile-host-classic) .host-grid>.card{display:none}
  body.mode-host.host-auth:not(.mobile-host-classic) .host-grid>.camera-card{display:block;position:fixed;inset:0;width:100%;height:100vh;height:100dvh;min-height:0;max-height:none;border:0;border-radius:0;background:#080809;margin:0;padding:0;box-shadow:none;pointer-events:none;overflow:hidden}
  body.mode-host.host-auth:not(.mobile-host-classic) .camera-card>*:not(video){display:none}
  body.mode-host.host-auth:not(.mobile-host-classic) .camera-card video{width:100%;height:100%;border-radius:0;aspect-ratio:auto;object-fit:cover;background:#080809;display:block}
  body.mode-host.host-auth:not(.mobile-host-classic).mobile-host-video-contain .camera-card video{object-fit:contain}
  body.mode-host.host-auth:not(.mobile-host-classic) .m-host-ui{display:block;position:fixed;inset:0;z-index:25;pointer-events:none;background:linear-gradient(to bottom,#000a 0%,transparent 23%,transparent 57%,#000b 100%)}
  .m-host-head{position:absolute;left:0;right:0;top:0;display:flex;justify-content:space-between;align-items:center;gap:9px;padding:calc(14px + env(safe-area-inset-top,0px)) 13px 12px;pointer-events:auto}
  .m-host-head strong{font-size:15px;white-space:nowrap}
  .m-host-head strong span{color:#ffa176;font-size:10px}
  .m-host-head small{font-size:9px;color:#ddd}
  .m-host-nav{display:flex;align-items:center;gap:5px}
  .m-host-head button{border:1px solid #ffffff63;background:#23232aaa;color:#fff;backdrop-filter:blur(8px);padding:9px 8px;border-radius:22px;font-weight:750;font-size:10px}
  .m-host-meta{position:absolute;top:calc(71px + env(safe-area-inset-top,0px));left:12px;display:flex;gap:10px;align-items:center;font-size:11px;font-weight:800;text-shadow:0 2px 8px #000;pointer-events:none}
  #mHostLiveState{background:#19171bbd;padding:8px 10px;border-radius:30px;color:#f4d3ca}
  #mHostLiveState.live{background:#e9533d;color:#fff}
  .m-host-right-actions{position:absolute;right:12px;top:32%;display:flex;flex-direction:column;gap:11px;pointer-events:auto}
  .m-host-right-actions button{background:#19161bb0;backdrop-filter:blur(8px);color:#fff;width:69px;min-height:59px;border-radius:15px;border:1px solid #ffffff57;font-size:18px;font-weight:750;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}
  .m-host-right-actions button span{font-size:10px}
  .m-host-right-actions button:disabled{opacity:.38}
  .m-host-dock{position:absolute;left:0;right:0;bottom:0;padding:32px 13px calc(14px + env(safe-area-inset-bottom,0px));background:linear-gradient(to top,#080809 0%,#080809e5 55%,transparent 100%);pointer-events:auto}
  .m-host-lot-line,.m-host-best-line{display:flex;justify-content:space-between;align-items:center;gap:10px}
  .m-host-lot-line{font-size:13px;font-weight:800;color:#efeded}
  #mHostTimer{font-size:21px;font-weight:950;color:#ffcc35;font-variant-numeric:tabular-nums}
  #mHostTimer.urgent{color:#ff6859}
  .m-host-best-line{margin:6px 0 14px;font-size:13px;color:#e0dbdf}
  .m-host-best-line b{font-size:27px;color:#70e5ba}
  .m-host-button-row{display:flex;gap:9px;align-items:stretch}
  .m-host-button-row button{min-height:53px;min-width:0;font-size:13px}
  .m-host-button-row #mHostPrepare{flex:1}
  .m-host-button-row #mHostCloseLot{flex:0 0 103px}
  .m-host-button-row #mHostStart:not([hidden]){flex:1}
  .m-host-button-row #mHostStart:not([hidden]) ~ #mHostPrepare{display:block;flex:1}
  .m-host-button-row #mHostStart:not([hidden]) ~ #mHostCloseLot{display:none}
  body.mode-host.host-auth:not(.mobile-host-classic).mobile-host-lot-open .host-grid>.control-card{display:block;position:fixed;left:0;right:0;bottom:0;z-index:60;max-height:90dvh;overflow-y:auto;padding:18px 18px calc(21px + env(safe-area-inset-bottom,0px));border:1px solid #56474d;border-radius:23px 23px 0 0;background:#1e1d26;box-shadow:0 -10px 55px #000b;pointer-events:auto}
  body.mode-host.host-auth:not(.mobile-host-classic).mobile-host-lot-open .m-host-sheet-actions button{display:block;background:#3b343e;color:white;border:0;border-radius:50%;width:35px;height:35px}
  body.mode-host.host-auth:not(.mobile-host-classic).mobile-host-lot-open .host-grid>.control-card .card-title{position:sticky;top:0;z-index:2;background:#1e1d26;padding:6px 0 10px}
  body.mode-host.host-auth:not(.mobile-host-classic) .toast{bottom:calc(180px + env(safe-area-inset-bottom,0px));z-index:110}
  /* Tableau classique conservé pour les fichiers clients, rapports, modération. */
  body.mode-host.host-auth.mobile-host-classic{overflow:auto}
  body.mode-host.host-auth.mobile-host-classic .m-host-ui{display:block;position:sticky;top:0;z-index:27;background:#15131c;pointer-events:auto}
  body.mode-host.host-auth.mobile-host-classic .m-host-ui .m-host-head{position:static;padding:12px 13px}
  body.mode-host.host-auth.mobile-host-classic .m-host-ui>:not(.m-host-head){display:none}
  body.mode-host.host-auth.mobile-host-classic .host-actions{padding-top:15px}
  body.mode-host.host-auth.mobile-host-classic .host-grid{grid-template-columns:1fr}
  body.mode-host.host-auth.mobile-host-classic .camera-card video{aspect-ratio:9/16;max-height:65dvh;object-fit:contain}
  body.mode-host.host-auth.mobile-host-classic .m-host-sheet-actions button{display:none}
}
@media(max-width:360px){
  .m-view-brand b{font-size:14px}.m-account-button{max-width:112px;font-size:11px;padding:0 8px}
  .m-auction-description strong{font-size:18px}.m-auction-price strong{font-size:26px}
  .m-view-bid-actions{grid-template-columns:minmax(95px,.8fr) minmax(0,2fr)}
  .m-primary-action,.m-outline-action{font-size:13px;min-height:50px;padding:8px}
}

/* V4.3 — Accueil des lives et panneau de programmation */
[hidden]{display:none!important}
.home-rafale{color:#f6f2ed;max-width:1140px;margin:0 auto;padding:22px 12px 35px}
.home-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:20px}
.home-head strong{font-size:23px;letter-spacing:.035em}
.home-head strong span{color:#ff754a;font-size:13px}
.home-head p{font-size:13px;color:#c3bdc2;margin:5px 0}
.home-seller,.m-seller-button{background:#27232c;color:#fff;border:1px solid #756770;border-radius:10px;padding:11px 16px;font-weight:700;cursor:pointer}
.home-seller:hover,.m-seller-button:hover{border-color:#ff7a58}
.home-hero{margin:12px 0 20px;padding:22px;background:linear-gradient(135deg,#30161d,#101018 70%);border:1px solid #56333b;border-radius:20px}
.home-hero h1{font-size:36px;line-height:1.08;margin:0 0 10px;color:white}
.home-hero p{font-size:14px;color:#ddd2cf;line-height:1.5;max-width:500px;margin:0}
.home-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:17px;color:#d5c6ca;font-size:12px;font-weight:600}
.home-actions button{border-radius:25px}
.home-show-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}
.home-show{border:0;background:none;padding:0;text-align:left;color:#fff;cursor:pointer;min-width:0}
.home-show-cover{position:relative;border-radius:14px;overflow:hidden;background:#242129;aspect-ratio:3/4;border:1px solid #453541}
.home-show-cover img{width:100%;height:100%;object-fit:cover;display:block}
.home-show-fallback{padding:20px;background:linear-gradient(155deg,#702d3c,#311923 55%,#080b13);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:20px}
.home-show-fallback span{font-size:12px;opacity:.83}
.home-show-fallback b{font-weight:800;font-size:22px;line-height:1.1;text-shadow:0 2px 7px #0008;overflow-wrap:anywhere}
.show-state{position:absolute;top:9px;left:9px;padding:6px 9px;border-radius:6px;background:#17131ba6;color:white;font-weight:800;font-size:10px;letter-spacing:.02em}
.show-state.is-live{background:#ef4535;color:white}
.home-show-text{padding:9px 2px;display:flex;flex-direction:column;gap:4px}
.home-show-text strong{font-size:14px;line-height:1.25}
.home-show-text small{font-size:12px;color:#e0a28f}
.home-no-show{grid-column:1/-1;padding:32px 20px;background:#211b22;border-radius:12px;text-align:center;color:#ddd}
.home-privacy{color:#8c8991;font-size:11px;text-align:center;padding:20px}
.shows-admin{margin:16px 0 22px}
.shows-admin .form-stack{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:end}
.shows-admin .form-stack label{min-width:0}
.shows-admin .form-stack>button{max-width:260px}
.seller-shows{display:flex;flex-direction:column;gap:8px;margin-top:16px}
.current-show-hint{background:#40271d;padding:10px 12px;border:1px solid #ba6547;border-radius:9px;color:#ffe5d6;font-size:12px;font-weight:700}
.seller-show-row{display:flex;justify-content:space-between;gap:15px;align-items:center;border:1px solid #51434e;background:#22202a;border-radius:10px;padding:13px}
.seller-show-info{display:flex;flex-direction:column;gap:4px;min-width:0}
.seller-show-info strong{font-size:13px;overflow-wrap:anywhere}
.seller-show-info small{color:#ddd1d6;font-size:11px}
.seller-show-actions{display:flex;gap:6px;flex-wrap:wrap}
.seller-show-actions button{font-size:11px;padding:9px 10px;white-space:normal}
@media(max-width:700px){
 body.mode-home{background:#0c0b10;color:#fff}
 body.mode-home .site-header,body.mode-home footer,body.mode-home .intro{display:none}
 body.mode-home .container{padding:0;max-width:none}
 .home-rafale{padding:calc(env(safe-area-inset-top,0px) + 17px) 14px 24px;min-height:100vh;min-height:100dvh}
 .home-head strong{font-size:19px}.home-head p{font-size:11px}
 .home-seller{font-size:13px;padding:10px 13px}
 .home-hero{margin-top:15px;padding:20px}.home-hero h1{font-size:34px}
 .home-show-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 .home-show-fallback{gap:12px;padding:9px}.home-show-fallback b{font-size:22px}
 .home-show-text strong{font-size:13px}.home-show-text small{font-size:11px}
 .m-seller-button{border-radius:20px;padding:8px 9px;font-size:11px;white-space:nowrap;background:#17151bc4}
 .m-top-actions{gap:5px!important}
 .m-top-actions .m-icon-button{width:32px!important;height:36px!important;min-width:32px!important;font-size:18px!important}
 .m-view-brand b{font-size:13px!important;white-space:nowrap}
 body.mode-host.host-auth:not(.mobile-host-classic) .shows-admin{display:none}
 body.mode-host.host-auth.mobile-host-classic .shows-admin{padding:17px;margin:12px}
 .shows-admin .form-stack{display:flex;flex-direction:column;align-items:stretch}
 .shows-admin .form-stack>button{max-width:100%}
 .seller-show-row{align-items:stretch;flex-direction:column}
 .seller-show-actions button{flex:1}
}
@media(max-width:380px){.m-view-brand small{display:none}.m-seller-button{font-size:10px;padding:7px}.home-hero h1{font-size:30px}}

/* V4.4 : image automatique, seul le son peut demander un geste utilisateur. */
.viewer-sound-button{position:absolute;top:62px;right:15px;z-index:5;min-height:37px;padding:7px 12px;border:1px solid #ffffff7d;border-radius:999px;background:#13141ad9;backdrop-filter:blur(7px);color:#fff;font-size:12px;font-weight:800;box-shadow:0 4px 15px #0006}
.viewer-sound-button[hidden]{display:none!important}
@media(max-width:700px){body.mode-viewer .viewer-sound-button{top:calc(73px + env(safe-area-inset-top,0px));right:14px;z-index:17;}}


/* =============================================================
   V4.5 — Accueil clair, compact, centré sur les vraies ventes.
   Les écrans vendeur et la salle immersive gardent leur style.
   ============================================================= */
body.mode-home{background:#faf7f1!important;color:#28231f!important;min-height:100vh}
body.mode-home .site-header,body.mode-home footer,body.mode-home .intro{display:none}
body.mode-home .container{padding:0;max-width:none}
body.mode-home .home-rafale{color:#28231f;max-width:1150px;margin:0 auto;padding:24px 20px 38px;min-height:100dvh}
body.mode-home .home-head{align-items:center;margin-bottom:20px;border-bottom:1px solid #e9e1d8;padding:0 0 17px}
body.mode-home .home-head strong{color:#221f1d;font-size:25px;letter-spacing:.012em}
body.mode-home .home-head strong span{color:#cf522f;font-size:13px;letter-spacing:.03em}
body.mode-home .home-head p{color:#756b64;font-size:13px;margin:5px 0 0}
body.mode-home .home-seller{background:#fff;color:#4a403a;border:1px solid #d7cec5;padding:10px 15px;box-shadow:0 1px 3px #3b23100d;white-space:nowrap;border-radius:12px}
body.mode-home .home-seller:hover,body.mode-home .home-seller:focus-visible{border-color:#c65b3e;color:#b4422c}
.home-live-feature{border-radius:19px;overflow:hidden;display:grid;grid-template-columns:minmax(170px,.78fr) minmax(0,1.22fr);min-height:215px;background:#fffcf8;border:1px solid #e6dcd1;box-shadow:0 5px 18px #4233270b;margin-bottom:27px}
.home-live-media{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(circle at 40% 35%,#70404a,#2f202a 76%);min-height:210px;color:#fff5e8;font-weight:800;font-size:36px;font-style:italic;text-align:center}
.home-live-media img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.home-live-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:11px;padding:24px 30px}
.home-live-badge{font-size:11px;font-weight:900;letter-spacing:.055em;color:#756457;background:#f2eae1;padding:7px 10px;border-radius:7px}
.home-live-feature.is-live .home-live-badge{color:white;background:#db3f34}
.home-live-copy h1{font-size:clamp(22px,3vw,34px);line-height:1.13;letter-spacing:-.025em;color:#29211e;margin:0;overflow-wrap:anywhere}
.home-live-copy p{font-size:13px;color:#6d645e;line-height:1.55;margin:0;max-width:430px}
.home-watch-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:12px;background:#fa6845;color:#1c1310;font-weight:900;font-size:16px;cursor:pointer;padding:14px 24px;min-height:54px;box-shadow:0 5px 13px #cb4c281c}
.home-watch-button:hover,.home-watch-button:focus-visible{background:#f65a35}
.home-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0 0 15px}
.home-section-head h2{font-size:23px;letter-spacing:-.03em;margin:0;color:#28211d}
.home-section-head span{font-size:12px;font-weight:700;color:#887970}
body.mode-home .home-show{color:#26201e}
body.mode-home .home-show-cover{background:#e7dcd0;border:1px solid #e4d5c9;box-shadow:0 3px 10px #3e2c1614}
body.mode-home .home-show-text strong{color:#30251f;font-size:15px}
body.mode-home .home-show-text small{color:#9a5a43;font-weight:700}
body.mode-home .home-show-fallback{color:#fff;background:linear-gradient(145deg,#9a4d4e,#4e2934 58%,#291e2b)}
body.mode-home .home-no-show{color:#635950;background:#f2ebe4;border:1px solid #e9ddd1;border-radius:12px;padding:30px 18px}
body.mode-home .home-privacy{color:#958982}
body.mode-home .home-show-grid{gap:18px}
@media(max-width:700px){
 body.mode-home .home-rafale{padding:calc(env(safe-area-inset-top,0px) + 15px) 15px 25px}
 body.mode-home .home-head{margin-bottom:14px;padding-bottom:14px}
 body.mode-home .home-head strong{font-size:20px}
 body.mode-home .home-head p{font-size:11px}
 body.mode-home .home-seller{font-size:12px;padding:9px 12px}
 .home-live-feature{grid-template-columns:1fr;min-height:0;margin-bottom:23px;border-radius:15px}
 .home-live-media{min-height:0;height:112px;font-size:28px}
 .home-live-feature.is-live .home-live-media{height:125px}
 .home-live-copy{padding:17px 18px 18px;gap:8px}
 .home-live-copy h1{font-size:24px}
 .home-live-copy p{font-size:12px}
 .home-watch-button{width:100%;min-height:53px;font-size:16px;padding:13px 10px;margin-top:5px}
 .home-section-head h2{font-size:21px}
 .home-section-head span{font-size:11px}
 body.mode-home .home-show-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
 body.mode-home .home-show-text strong{font-size:14px}
 body.mode-home .home-show-text small{font-size:11px}
}
@media(max-width:365px){.home-live-copy h1{font-size:22px}.home-section-head h2{font-size:19px}}

/* Pas de grand espace vide lorsqu'aucune émission n'est à l'antenne. */
.home-live-feature:not(.is-live){grid-template-columns:1fr;min-height:0;background:#f6f0e8}
.home-live-feature:not(.is-live) .home-live-media{display:none}
.home-live-feature:not(.is-live) .home-live-copy{padding:15px 22px;gap:6px}
.home-live-feature:not(.is-live) .home-live-copy h1{font-size:20px}
.home-live-feature:not(.is-live) .home-live-copy p{max-width:none}


/* V4.6 — Un accueil clair, inscription bien visible, seller compact */
.intro[hidden]{display:none!important}
.home-top-buttons{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:7px}
.home-register,.home-login{border-radius:11px;min-height:40px;padding:9px 14px;font-weight:800;cursor:pointer;font-size:13px}
.home-register{background:#e96541;border:1px solid #e96541;color:#fff;box-shadow:0 4px 9px #d4663933}
.home-login{background:#fff;color:#52433d;border:1px solid #d7cec5}
body.mode-home .home-seller{background:#2a2830;color:#fff;border-color:#2a2830}
@media(max-width:700px){
 body.mode-home .home-head{align-items:flex-start;gap:8px}
 body.mode-home .home-head>div:first-child{min-width:104px}
 .home-top-buttons{max-width:225px;gap:5px}
 .home-top-buttons button{font-size:11px!important;min-height:35px;padding:8px 9px!important;border-radius:9px}
}
.viewer-social{position:absolute;right:15px;bottom:20px;z-index:7;display:flex;gap:8px}
.viewer-social button{border:1px solid #ffffff61;border-radius:30px;padding:11px 15px;background:#231f29cf;color:white;font-weight:900;font-size:17px;backdrop-filter:blur(7px)}
.viewer-social button span{font-size:11px;margin-left:5px}
#sendHeart{color:#ff7e9b}
body.mode-viewer .viewer-social{display:flex}
.viewer-giveaway{position:absolute;z-index:8;top:75px;left:15px;max-width:min(90vw,320px);background:#211a28eb;color:#fff;border:1px solid #b76c80;border-radius:15px;padding:11px 13px;box-shadow:0 8px 26px #0006;display:flex;flex-direction:column;gap:6px;pointer-events:auto}
.viewer-giveaway strong{font-size:12px;color:#ffd39d}
.viewer-giveaway span{font-size:12px}
.viewer-giveaway button{border:0;border-radius:10px;background:#fc784e;padding:9px 11px;font-weight:800;color:#21130e;font-size:12px}
.viewer-giveaway button:disabled{opacity:.9;background:#3b774c;color:#fff}
.floating-heart{position:fixed;z-index:35;bottom:27%;right:65px;font-size:32px;color:#ff5885;pointer-events:none;text-shadow:0 2px 8px #0009;animation:heartRise 1.5s ease-out forwards}
@keyframes heartRise{0%{transform:translate(0,5px) scale(.75);opacity:0}15%{opacity:1}100%{transform:translate(var(--drift,20px),-240px) scale(1.45);opacity:0}}
.giveaways-admin{margin:0 0 20px}
.gift-controls{display:flex;gap:10px;align-items:end;flex-wrap:wrap}
.gift-controls label{font-size:12px;color:#ddd;display:flex;flex:1;min-width:180px;flex-direction:column;gap:6px}
.gift-controls select{width:100%;padding:12px;border-radius:9px;background:#262630;color:#fff;border:1px solid #57525d}
.gift-controls button{min-width:175px}
.gift-state{border:1px solid #6a4c4f;border-radius:11px;padding:14px;margin:17px 0 0;background:#34252b;color:#fff2e5;font-size:13px}
@media(max-width:700px){
 body.mode-viewer .viewer-social{z-index:18;bottom:calc(42% + env(safe-area-inset-bottom,0px));right:10px;flex-direction:column;gap:9px}
 body.mode-viewer .viewer-social button{display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;width:48px;height:48px;padding:0;font-size:22px;line-height:1.05}
 body.mode-viewer .viewer-social button span{font-size:9px;margin:0}
 body.mode-viewer .viewer-giveaway{top:calc(119px + env(safe-area-inset-top,0px));left:10px;max-width:calc(100vw - 85px);padding:9px 10px;z-index:14}
 body.mode-host.host-auth:not(.mobile-host-classic) .giveaways-admin{display:none}
 body.mode-host.host-auth.mobile-host-classic .giveaways-admin{margin:12px;padding:16px}
 body.mode-viewer .floating-heart{z-index:24;bottom:45%;right:64px}
}
@media(prefers-reduced-motion:reduce){.floating-heart{animation:none;opacity:0}}

/* V4.6b — commandes vendeur lisibles sur téléphone étroit */
@media(max-width:700px){
 .m-host-head{gap:5px;padding-left:8px;padding-right:8px}
 .m-host-head strong{font-size:12px}
 .m-host-head strong small{font-size:8px}
 .m-host-nav{gap:4px;flex-wrap:nowrap}
 .m-host-nav button{white-space:nowrap;font-size:10px;padding:8px 6px}
 #mHostGifts{font-size:16px;min-width:32px}
}

/* V4.7 — Cartes lisibles, accueil en direct, compte clair */
body.mode-home .home-show-cover{border:2px solid #61584f!important;box-shadow:0 7px 20px #43302030!important;transition:transform .16s,box-shadow .16s}
body.mode-home .home-show{background:#fffaf4;border:1px solid #9b8b7e;border-radius:15px;overflow:hidden;box-shadow:0 3px 14px #3b251c17}
body.mode-home .home-show:hover,body.mode-home .home-show:focus-visible{box-shadow:0 9px 22px #61412c30;transform:translateY(-2px)}
body.mode-home .home-show-text{padding:10px 12px 13px}
body.mode-home .home-show-text strong{font-weight:850}
body.mode-home .home-live-feature.is-live{border:2px solid #e25636;box-shadow:0 0 0 4px #eb9b7238,0 8px 26px #713d2738}
.home-live-feature.is-live .home-live-media{background:#12131a}
#homeLivePreview{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:none;background:#111;pointer-events:none}
#homeLivePreview.active{display:block}
.home-live-feature.is-live .home-live-copy h1{font-weight:900}
.home-top-buttons{flex-wrap:nowrap}
body.mode-home .home-top-buttons button{border-radius:10px!important;font-weight:850!important}
body.mode-home .home-register{background:#db6542;border-color:#b84c2e}
body.mode-home .home-login{background:#fff;border-color:#6c635b;color:#29211c}
body.mode-home .home-seller{background:#2a2830;color:white}
@media(max-width:700px){
 body.mode-home .home-head{display:block}
 body.mode-home .home-head>div:first-child{margin-bottom:12px}
 body.mode-home .home-top-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:none;width:100%;gap:6px}
 body.mode-home .home-top-buttons button{min-width:0;width:100%;padding:10px 3px!important;font-size:12px!important;min-height:44px;white-space:nowrap}
 body.mode-home .home-live-feature.is-live .home-live-media{height:175px}
}

/* Accueil et compte acheteurs homogènes — la vidéo reste noire pour le confort de visionnage */
body.mode-viewer{background:#faf7f1;color:#29221e}
@media(min-width:701px){
 body.mode-viewer .site-header{background:#faf7f1;color:#29221e;border-color:#e3d4c8}
 body.mode-viewer .site-header .brand small{color:#63574e}
 body.mode-viewer .auction-panel,body.mode-viewer .chat-card{background:#fffaf4;color:#2c2520;border-color:#b3a69a}
 body.mode-viewer .lot-desc,body.mode-viewer .fine-note,body.mode-viewer .chat-heading p{color:#62564e}
 body.mode-viewer .muted-mini,body.mode-viewer .bid-bar label,body.mode-viewer .identity{color:#65584f}
 body.mode-viewer .msg-text,body.mode-viewer .msg-head{color:#25201c}
 body.mode-viewer .messages{background:#fffaf4}
 body.mode-viewer .account-forms input{color:#2b241f;background:#fff;border:1px solid #aaa095}
 body.mode-viewer .current-bid strong{color:#167a52}
 body.mode-viewer .tag{color:#5c4d42;background:#eee7dc}
 body.mode-viewer .chat-form{border-color:#d3c6b7}
}
body.mode-viewer.account-landing{background:#faf7f1!important;color:#28211e;overflow:auto!important}
body.mode-viewer.account-landing .grid-layout{display:block;max-width:610px;margin:45px auto}
body.mode-viewer.account-landing .left-col,body.mode-viewer.account-landing .m-view-ui{display:none!important}
body.mode-viewer.account-landing .chat-card{display:flex!important;position:static!important;max-height:none!important;height:auto!important;min-height:0!important;width:100%!important;border-radius:20px!important;border:1px solid #cbbeb1!important;background:#fffaf4!important;color:#28211e!important;overflow:visible;box-shadow:0 7px 24px #4531241f!important;pointer-events:auto!important}
body.mode-viewer.account-landing .chat-heading{display:flex!important;position:static!important;background:#fffaf4!important;border-bottom:1px solid #e7d9cb!important;padding:18px 20px!important;color:#29211e}
body.mode-viewer.account-landing .chat-heading h2{color:#29211e}
body.mode-viewer.account-landing .chat-heading p{color:#796b60}
body.mode-viewer.account-landing .chat-heading .m-close-account{display:block!important;border:1px solid #c9b9a9;background:white;color:#43342d;border-radius:9px;min-width:85px;height:36px;font-size:12px}
body.mode-viewer.account-landing .chat-heading .chat-icon{display:none!important}
body.mode-viewer.account-landing .messages{display:none!important}
body.mode-viewer.account-landing .chat-form{display:block!important;padding:19px 22px 25px!important;background:#fffaf4!important;pointer-events:auto!important}
body.mode-viewer.account-landing .identity{display:block!important;color:#5e524a}
body.mode-viewer.account-landing .chat-form .account-forms:not([hidden]){display:flex!important;flex-direction:column}
body.mode-viewer.account-landing .chat-form .logout-link:not([hidden]){display:block!important}
body.mode-viewer.account-landing .chat-form .join-row{display:none!important}
body.mode-viewer.account-landing .account-forms label{color:#52473f!important}
body.mode-viewer.account-landing input{background:#fff;border:1px solid #b6a89d;color:#29211e!important}
body.mode-viewer.account-landing .fine-note{color:#75685f}
.mail-confirm-tools{display:flex;flex-direction:column;gap:8px;padding:12px 0 0}
.mail-confirm-tools button{font-size:12px}
body.mode-viewer.account-landing .chat-form .account-forms[hidden]{display:none!important}
@media(max-width:700px){
 body.mode-viewer.account-landing .site-header{display:none!important}
 body.mode-viewer.account-landing .container{padding:15px!important;max-width:680px!important}
 body.mode-viewer.account-landing #viewerPage{position:static!important;inset:auto!important;display:block!important;height:auto!important;overflow:visible!important;background:transparent!important}
 body.mode-viewer.account-landing #viewerPage::after{display:none!important}
 body.mode-viewer.account-landing .grid-layout{margin:12px 0!important}
 body.mode-viewer.account-landing .chat-card{margin:0!important}
 body.mode-viewer.account-landing .chat-form .account-forms:not([hidden]){display:flex!important}
 body.mode-viewer.account-landing .toast{bottom:14px!important}
}

/* Un seul gros bouton d'enchère + une enchère max */
.quick-bids{display:block;flex:1!important}
#quickOne{font-size:17px;min-height:55px;width:100%}
#sendMax{min-height:50px}

/* Bouton cadeau toujours accessible sans déplacer la caméra */
.m-host-gift-fab{display:none}
.host-quick-modal[hidden]{display:none!important}
.host-quick-modal{position:fixed;inset:0;z-index:160;background:#020204af;display:flex;align-items:flex-end;justify-content:center;padding:15px;pointer-events:auto}
.host-modal-content{width:min(440px,100%);max-height:83dvh;overflow-y:auto;background:#25222d;color:#fff;border:1px solid #84616a;border-radius:18px;padding:19px 20px 22px;box-shadow:0 16px 44px #0009;display:flex;flex-direction:column;gap:13px}
.host-modal-content label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#eadedb}
.host-modal-content select{padding:13px;border:1px solid #75666d;background:#191720;border-radius:10px;color:white}
.modal-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.modal-title-row h3{margin:0;font-size:18px}
.modal-title-row button{background:#47414b;border:0;color:#fff;padding:8px 12px;border-radius:8px}
.quick-sales-list{overflow-y:auto;max-height:57dvh;display:flex;flex-direction:column;gap:8px}
.sale-quick-line{border-bottom:1px solid #7774;padding:9px 0;font-size:12px;font-weight:600}
#quickSalesTotal{color:#a7eccb;font-weight:bold;margin:0}
#quickGiftState{color:#eabdaa;font-size:12px;margin:0}
.sales-spotlight{margin:15px 0 20px;border:1px solid #966955;background:#24222a}
.sales-spotlight .card-title{margin:0 0 8px}
.sales-spotlight #salesSpotlightTotal{color:#7ae5b3;font-size:19px}
#salesSpotlightItems{display:flex;flex-direction:column;gap:2px;max-height:205px;overflow-y:auto;font-size:13px;color:#e9dedd}
.buyer-print-options{display:flex;flex-direction:column;gap:7px;margin:6px 0 3px;padding-top:10px;border-top:1px solid #5e4d51}
.buyer-print-options>strong{font-size:12px;color:#f0d9c9}
.buyer-print-options button{font-size:11px;text-align:left}
.seller-show-row{flex-wrap:wrap}
.seller-show-row .buyer-print-options{flex:1 0 100%}
@media(max-width:700px){
 body.mode-host.host-auth:not(.mobile-host-classic) .sales-spotlight{display:none!important}
 .m-host-gift-fab{display:block;position:absolute;bottom:calc(350px + env(safe-area-inset-bottom,0px));left:13px;right:auto;z-index:20;pointer-events:auto;width:53px;height:53px;border-radius:50%;border:2px solid #ffb978;background:#3b2733db;box-shadow:0 6px 24px #0008;color:#fff;font-size:25px}
 .m-host-nav{gap:3px!important}
 .m-host-nav button{font-size:9px!important;padding:7px 5px!important}
 .host-quick-modal{padding:10px}
}
.m-end-session{display:none}
@media(max-width:700px){
 body.mode-host.host-auth:not(.mobile-host-classic) .m-end-session:not([hidden]){display:block;width:100%;margin-top:8px;min-height:36px;background:#1b3430c9;color:#bff6da;border:1px solid #82b69a;border-radius:9px;font-size:11px;font-weight:bold;pointer-events:auto}
}

/* V5 — Ergonomie clients et vendeur. Les ajustements restent sur la branche de test. */
.password-field{display:flex;align-items:stretch;gap:5px;width:100%;min-width:0}
.password-field input{flex:1;min-width:0;width:100%}
.toggle-password{flex:0 0 45px;min-height:42px;border:1px solid #9b8b80;border-radius:9px;background:#eee7df;color:#29201d;cursor:pointer;font-size:18px}
.text-action{display:block;align-self:flex-start;border:0;background:transparent;text-decoration:underline;color:inherit;font-weight:750;padding:6px 0;cursor:pointer}
#forgotPasswordForm[hidden],#resetPasswordForm[hidden]{display:none!important}
#logoutClient:not([hidden]){display:block;width:100%;margin-top:12px;padding:12px;border:1px solid #c7a49a;border-radius:9px;font-weight:800;text-align:center;cursor:pointer}
.m-inline-max{min-width:0;display:flex;flex-direction:column;gap:4px}
.m-inline-max label{font-size:11px;font-weight:850;color:#ffe7d5}
.m-inline-max>div{display:flex;gap:4px;min-width:0}
.m-inline-max input{min-width:0;width:100%;min-height:47px;padding:0 8px;border-radius:8px;border:1px solid #ecd5c6;background:#fff;color:#24191a;font-size:16px}
.m-inline-max button{flex:0 0 39px;border:0;border-radius:8px;background:#ef7942;color:#fff;font-size:13px;font-weight:900}
.m-max-note{margin:5px 0 0;color:#eee3db;font-size:10px;text-align:center}
.m-host-chat{position:absolute;left:13px;right:13px;bottom:calc(100% - 16px);max-height:122px;padding:8px 10px;border-radius:12px;border:1px solid #ffffff4d;background:#101017e3;color:#fff;pointer-events:auto;display:flex;flex-direction:column;gap:4px}
.m-host-chat-head{display:flex;align-items:center;justify-content:space-between;font-size:11px;gap:8px}
.m-host-chat-head button{padding:4px 8px;border:1px solid #ffffff50;background:#272530;border-radius:6px;color:#fff;font-size:10px}
.m-host-chat-lines{max-height:82px;overflow-y:auto;display:flex;flex-direction:column;gap:3px;font-size:11px;overscroll-behavior:contain}
.m-host-comment{display:flex;align-items:flex-start;justify-content:space-between;gap:5px;padding:2px 0;border-bottom:1px solid #ffffff22}
.m-host-comment>span:first-child{overflow-wrap:anywhere;min-width:0;flex:1}
.m-host-comment-actions{display:flex;gap:2px}
.m-host-comment-actions button{min-width:25px;min-height:25px;padding:2px;border:1px solid #ffffff44;background:#42404bbf;color:#fff;border-radius:6px}
.m-host-chat.collapsed{max-height:none}
.m-host-chat.collapsed .m-host-chat-lines{display:none}
#closeLot{width:auto!important;max-width:330px;min-height:40px;margin-top:8px;padding:10px 15px;font-size:13px}
.host-grid .chat-card .messages{max-height:220px;overflow-y:auto}
@media(max-width:700px){
 body.mode-viewer .m-view-bid-actions{grid-template-columns:minmax(120px,1fr) minmax(0,1.3fr)!important;align-items:end}
 body.mode-viewer .m-inline-max input{font-size:16px}
 body.mode-host.host-auth:not(.mobile-host-classic) .m-host-chat{display:flex;z-index:5}
 body.mode-host.host-auth.mobile-host-classic .m-host-chat{display:none}
 body.mode-host .m-host-button-row #mHostCloseLot{flex:0 0 80px;font-size:11px;min-height:45px}
}

.purchase-panel{display:flex;flex-direction:column;gap:8px;margin:8px 0}
.purchase-panel[hidden]{display:none!important}
.purchase-panel>button{width:100%}
#purchaseList{max-height:350px;overflow-y:auto;padding:9px;border:1px solid #bcaaa0;border-radius:10px;background:#fff8f1;color:#29201d;font-size:12px}
#purchaseList[hidden]{display:none!important}
.purchase-group{display:flex;flex-direction:column;gap:6px;border-bottom:1px solid #d4c5b8;padding:10px 0}
.purchase-group>small{color:#6c5a4f}
.purchase-row{padding:5px 0;border-top:1px solid #ece0d8}
.purchase-total{display:block;padding-top:9px}
#downloadPrintable{margin:10px 0 4px}

/* Chat de modération compact, visible pendant le live sur ordinateur. */
#hostChatPanel{min-width:0}
#hostChatLines{display:flex;flex-direction:column;gap:5px;max-height:230px;overflow-y:auto;padding:8px;border:1px solid #60545d;border-radius:10px;background:#201c26;color:#fff}
#hostChatLines .m-host-comment{font-size:12px;padding:6px 2px;gap:9px}
#hostChatLines .m-host-comment-actions button{min-width:32px;min-height:30px;font-weight:850}
@media(max-width:700px){body.mode-host.host-auth:not(.mobile-host-classic) #hostChatPanel{display:none!important}}

/* Cadeaux gagnés visibles seulement dans l'espace personnel, pas en page d'accueil. */
.purchase-gift{color:#8a4d10;font-weight:800;background:#ffeed4;border-radius:6px;padding:7px!important}
.purchase-print{margin-top:9px;padding:8px 10px;max-width:100%;font-size:11px;cursor:pointer}

/* Logo La Rafale retenu : mise en valeur dans le haut de l'accueil. */
body.mode-home .home-head{border-bottom:2px solid #ead9ac}
body.mode-home .home-brand-lockup{display:flex;align-items:center;gap:18px;min-width:0}
body.mode-home .home-brand-logo{width:118px;height:118px;flex:0 0 118px;object-fit:contain;display:block;background:#fff;border-radius:16px;border:1px solid #eee5db;box-shadow:0 4px 14px #332b1c19}
body.mode-home .home-brand-copy{display:flex;flex-direction:column;gap:5px;min-width:0}
body.mode-home .home-brand-copy strong{font-size:clamp(22px,2.7vw,32px);line-height:1.08;letter-spacing:.025em}
body.mode-home .home-brand-copy strong span{font-size:.52em;color:#c94e2e;vertical-align:baseline}
body.mode-home .home-brand-copy p{font-size:13px;line-height:1.4;margin:0}
@media(max-width:700px){
 body.mode-home .home-brand-lockup{gap:12px;min-height:86px}
 body.mode-home .home-brand-logo{width:88px;height:88px;flex-basis:88px;border-radius:12px}
 body.mode-home .home-brand-copy strong{font-size:clamp(21px,5.6vw,26px)}
 body.mode-home .home-brand-copy p{font-size:12px}
 body.mode-home .home-head>div:first-child{margin-bottom:12px}
}
@media(max-width:360px){
 body.mode-home .home-brand-logo{width:76px;height:76px;flex-basis:76px}
 body.mode-home .home-brand-copy strong{font-size:19px}
}

/* V5 — Contact du service client, accessible depuis l'accueil et les comptes. */
body.mode-home .home-contact{border:1px solid #9b6b45;border-radius:10px;background:#fff9ec;color:#573c24;font-weight:850;min-height:40px;padding:9px 13px;white-space:nowrap}
body.mode-home .home-contact:hover,body.mode-home .home-contact:focus-visible{border-color:#bd7641;background:#fff0d6}
.viewer-contact{display:block;border:1px solid #bb998a;border-radius:10px;background:#fff8ee;color:#48372e;font-weight:800;padding:11px 13px;width:100%;margin-top:10px;text-align:center}
body.contact-open{overflow:hidden!important}
.contact-overlay{position:fixed;inset:0;z-index:320;background:#111018ba;display:flex;align-items:center;justify-content:center;padding:16px;overscroll-behavior:contain}
.contact-overlay[hidden]{display:none!important}
.contact-dialog{position:relative;width:min(520px,100%);max-height:calc(100dvh - 26px);overflow-y:auto;overscroll-behavior:contain;border-radius:19px;border:1px solid #caa767;background:#fffaf4;color:#27201e;padding:25px 26px 20px;box-shadow:0 20px 80px #0009}
.contact-dialog h2{font-size:23px;letter-spacing:-.02em;color:#29211e;margin:0 45px 10px 0}
.contact-dialog>p{font-size:13px;line-height:1.45;color:#65584f}
.contact-close{position:absolute;top:14px;right:15px;width:38px;height:38px;background:#eee4d9;border:0;border-radius:50%;font-size:26px;color:#3f332b;line-height:1}
.contact-form{display:flex;flex-direction:column;gap:8px;margin:16px 0 0}
.contact-form label{font-size:12px;font-weight:800;color:#41352f}
.contact-form input,.contact-form select,.contact-form textarea{color:#231f1d;background:#fff;border:1px solid #bdb0a5;border-radius:9px;width:100%;padding:11px 12px;font-size:15px;font-family:inherit}
.contact-form textarea{min-height:105px;resize:vertical}
.contact-form input:focus-visible,.contact-form select:focus-visible,.contact-form textarea:focus-visible{border-color:#b96c2f;outline:2px solid #dea975;outline-offset:1px}
.contact-form .contact-privacy{color:#756b63;font-size:11px;margin:6px 0 0;line-height:1.45}
#contactStatus{font-size:12px;font-weight:750;margin:4px 0;line-height:1.45}
#contactStatus:empty{display:none}
#contactStatus.contact-success{color:#137346}
#contactStatus.contact-error{color:#b3312b}
.contact-send{width:100%;min-height:47px;border:0;border-radius:10px;background:#e96541;color:white;font-size:15px;font-weight:900;margin-top:5px}
.contact-send:disabled{opacity:.55}
.contact-direct{font-size:12px;overflow-wrap:anywhere}
.contact-direct a{color:#a44c27;font-weight:800;text-decoration:underline}
.contact-honeypot{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
@media(max-width:700px){
 body.mode-home .home-top-buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
 body.mode-home .home-contact{width:100%;padding:10px 3px!important;font-size:12px!important;min-height:44px}
 .contact-dialog{padding:22px 17px 18px;max-height:calc(100dvh - 18px);border-radius:15px}
 .contact-overlay{padding:9px}
 .contact-dialog h2{font-size:21px}
}

/* Accès discret au Mag : après les lives, jamais devant les enchères. */
body.mode-home .home-mag-teaser{display:flex;align-items:center;justify-content:space-between;gap:17px;border:1px solid #e6dbc7;border-radius:14px;background:#fffdf8;padding:17px 20px;margin:22px 0 14px;box-shadow:0 3px 11px #3b261208}
body.mode-home .home-mag-teaser span{font-size:10px;color:#a76e34;font-weight:900;letter-spacing:.08em}
body.mode-home .home-mag-teaser h2{font-size:18px;color:#32281f;margin:5px 0;line-height:1.25}
body.mode-home .home-mag-teaser p{font-size:12px;color:#76665c;margin:0}
body.mode-home .home-mag-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;flex:0 0 auto;border:1px solid #ba9c74;border-radius:9px;color:#70472d;background:#fff8e9;padding:9px 14px;font-size:13px;font-weight:850;text-decoration:none}
.seller-mag-access{display:flex;align-items:flex-start;flex-direction:column;gap:5px;margin:12px 0;padding:12px;background:#2c272d;border:1px solid #685246;border-radius:10px}
.seller-mag-access a{font-size:13px;color:#ffddaa;font-weight:800;text-decoration:underline;line-height:1.45}
.seller-mag-access small{font-size:11px;color:#c2b3ae}
@media(max-width:700px){
 body.mode-home .home-mag-teaser{flex-direction:column;align-items:stretch;gap:11px;padding:14px 15px;margin:16px 0 12px}
 body.mode-home .home-mag-teaser h2{font-size:17px}
 body.mode-home .home-mag-link{width:100%;font-size:12px;min-height:40px}
}

/* Caméra vendeur — commandes de zoom uniquement pendant un direct mobile. */
.m-host-zoom{display:none}
@media(max-width:700px){
  body.mode-host.host-auth:not(.mobile-host-classic) .m-host-zoom{
    position:absolute;top:calc(107px + env(safe-area-inset-top,0px));left:12px;
    display:flex;align-items:center;gap:5px;z-index:30;pointer-events:auto;
    padding:5px 6px;border:1px solid #ffffff55;border-radius:12px;
    color:#fff;background:#1b1822c9;box-shadow:0 3px 12px #0005;
    backdrop-filter:blur(8px)
  }
  .m-host-zoom span{font-size:10px;font-weight:800;letter-spacing:.02em;margin:0 2px}
  .m-host-zoom button{
    min-width:39px;min-height:35px;padding:6px 7px;border-radius:8px;
    border:1px solid #ffffff59;background:#262329;color:#fff;
    font-size:12px;font-weight:850;touch-action:manipulation
  }
  .m-host-zoom button.selected{border-color:#ffd38b;background:#e5a64b;color:#231b19}
  .m-host-zoom button:disabled{opacity:.42;cursor:not-allowed}
}
