:root{--navy:#0c1c32;--blue:#2469ec;--text:#122138;--muted:#627289;--border:#dbe1eb;--radius:22px}*{box-sizing:border-box}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:var(--navy);color:#fff}button,input,select,textarea{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ffb342;outline-offset:4px}button{border:0}a{color:inherit}[hidden]{display:none!important}.topbar{height:72px;display:flex;align-items:center;gap:28px;padding:0 4%;background:linear-gradient(100deg,#0b1c32,#102944);position:relative;z-index:20;border-bottom:1px solid #ffffff12}.brand{text-decoration:none;font-size:32px;letter-spacing:-1px;font-weight:850;white-space:nowrap}.brand span{color:#c0d3f1}nav{display:flex;gap:22px;height:100%;align-items:stretch}.nav-button{background:none;color:#b8c7db;border-bottom:3px solid transparent;padding:3px 0 0;font-weight:600;font-size:14px}.nav-button.active,.nav-button:hover{color:white;border-color:#4080fc}.search{margin-left:auto;display:flex;align-items:center;background:#f9fbfe;border-radius:99px;color:#526682;gap:10px;padding:8px 16px;width:clamp(180px,25vw,410px)}.search input{background:transparent;border:0;outline:0;width:100%;color:var(--text);font-size:13px}.search span{font-size:25px}.icon-button{width:35px;height:35px;border-radius:50%;background:#ffffff0c;color:inherit;font-size:20px;flex-shrink:0}.scene-shell{position:relative;height:calc(100dvh - 72px);min-height:580px;overflow:hidden;background:#19354a}.scene-image{position:absolute;inset:0;transition:transform .6s ease;transform-origin:48% 58%;aspect-ratio:1672/941;margin:auto;width:100%;height:auto;max-height:none}.scene-image img{width:100%;display:block;user-select:none}.hotspot{position:absolute;transform:translate(-50%,-50%);background:#fff;border:4px solid #fff;color:var(--blue);border-radius:50%;width:36px;height:36px;box-shadow:0 0 0 6px #ffffff4d,0 4px 22px #06275588;animation:beacon 3s infinite;z-index:3}.hotspot::after{content:'';position:absolute;inset:7px;background:currentColor;border-radius:50%}.hotspot span{position:absolute;top:42px;left:50%;transform:translateX(-50%);background:#0c1c32ed;color:white;white-space:nowrap;border-radius:6px;padding:6px 9px;font-size:11px;opacity:0;pointer-events:none;transition:.2s}.hotspot:hover span,.hotspot:focus-visible span{opacity:1}.exhibitor-panel{position:absolute;right:22px;top:22px;background:#fffffff7;color:var(--text);width:342px;border:1px solid #c9d0df;border-radius:22px;padding:20px;box-shadow:0 20px 50px #102e4c30;z-index:6;max-height:calc(100% - 145px);overflow:auto}.exhibitor-panel h2{font-size:21px;margin:0 25px 15px 0;letter-spacing:-.6px}.close{position:absolute;top:14px;right:14px;background:transparent;color:#8692a6;font-size:30px;border-radius:50%;width:36px;height:36px}.thumb{background-image:url('../assets/references/collection-six-stands.png');background-repeat:no-repeat;aspect-ratio:500/344;border-radius:12px}.exhibitor-panel p{font-size:13px;color:#61718b;line-height:1.6;margin:12px 0}.primary,.secondary,.ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;padding:13px 16px;font-weight:650;font-size:13px;text-decoration:none}.primary{background:var(--blue);color:white}.primary:hover{background:#175bdc}.secondary{background:#eef1f7;color:var(--text)}.secondary:hover{background:#e2e7f0}.ghost{background:transparent;color:var(--blue);border:1px solid #ced7e6}.panel-actions{display:grid;gap:9px}.panel-links{display:flex;gap:7px;margin-top:12px;flex-wrap:wrap}.panel-links button{font-size:11px;background:#edf1f8;color:#3d5472;padding:8px;border-radius:8px}.badge{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#63718b}.minimap{position:absolute;bottom:52px;left:22px;width:258px;background:#0c1b30f2;color:#e7eef8;border:1px solid #abc0dd55;border-radius:18px;padding:14px 16px;box-shadow:0 12px 30px #0a152b44;text-align:left;z-index:4}.minimap strong{display:flex;justify-content:space-between;font-size:12px}.minimap svg{width:100%;height:118px;display:block;margin-top:8px}.view-controls{position:absolute;bottom:33px;left:50%;transform:translateX(-50%);display:flex;gap:5px;align-items:center;background:#0b1b30ed;padding:10px;border:1px solid #ffffff26;border-radius:99px;z-index:8;box-shadow:0 10px 22px #071a3c33;white-space:nowrap}.view-controls>button{color:#fff;background:transparent;padding:12px 17px;border-radius:99px;font-size:12px}.view-controls>button.active{background:var(--blue)}.view-controls>button:hover{background:#2f4b70}.view-controls .icon-button{padding:0;font-size:22px}.mode-label{position:absolute;bottom:9px;left:22px;font-size:10px;color:white;background:#122238c9;border-radius:5px;padding:5px 8px;z-index:8}.reference-link{position:absolute;bottom:10px;right:20px;font-size:10px;background:#122238c9;color:#fff;border-radius:5px;padding:5px 8px;z-index:8}.screen-hotspot{position:absolute;left:21%;top:10%;width:49%;height:21%;background:transparent;z-index:2;border-radius:12px}.screen-hotspot span{position:absolute;bottom:7px;left:50%;transform:translateX(-50%);background:#102948d9;color:white;padding:7px 13px;border-radius:20px;font-size:12px;opacity:0;transition:.2s}.screen-hotspot:hover span,.screen-hotspot:focus-visible span{opacity:1}.screen-live{position:absolute;left:21.4%;top:11.5%;width:48%;height:20%;color:white;display:flex;align-items:center;justify-content:center;flex-direction:column;background:radial-gradient(ellipse at 15% 55%,#4841db,transparent 55%),linear-gradient(130deg,#0a2048,#092255 70%,#5121b8);clip-path:polygon(0 0,100% 5%,100% 94%,0 100%);pointer-events:none;z-index:1}.screen-live strong{font-size:clamp(12px,2.4vw,40px)}.screen-live small,.screen-live span{font-size:clamp(9px,1.2vw,18px);margin:8px}.screen-live:after{content:'';position:absolute;inset:-50%;background:linear-gradient(100deg,transparent 45%,#bfb8ff44 50%,transparent 55%);animation:shine 7s linear infinite}.page-section{background:linear-gradient(135deg,#f8fafc,#edf3fa);color:var(--text);min-height:calc(100dvh - 72px);padding:44px 5% 65px}.section-heading{text-align:center;margin:0 auto 35px}.eyebrow{font-size:10px;letter-spacing:2.5px;color:#476eab;font-weight:800}.section-heading h1{font-size:clamp(27px,3.2vw,48px);letter-spacing:-1.5px;margin:12px 0}.section-heading h1 span{color:var(--blue)}.section-heading p{font-size:14px;color:var(--muted)}.stand-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px;max-width:1420px;margin:0 auto}.stand-card{border:1px solid #d5deec;border-radius:19px;background:white;overflow:hidden;box-shadow:0 8px 20px #14294a08;transition:.2s}.stand-card:hover{transform:translateY(-4px);box-shadow:0 14px 25px #14294a16}.stand-card .thumb{border-radius:0}.card-body{padding:20px}.card-body small{font-size:10px;letter-spacing:2px;font-weight:700;color:#6b7f9b}.card-body h2{font-size:20px;margin:7px 0}.card-body p{font-size:13px;line-height:1.5;color:#6a7890;min-height:38px}.card-body .primary{width:100%}dialog{border:1px solid #dbe3ee;border-radius:23px;padding:32px;color:var(--text);max-width:min(920px,94vw);width:720px;max-height:90dvh;box-shadow:0 24px 100px #0005}dialog::backdrop{background:#071a32b8;backdrop-filter:blur(7px)}dialog h2{font-size:25px;margin:0 30px 13px 0;letter-spacing:-.8px}dialog p{font-size:14px;line-height:1.7;color:#64758b}dialog .thumb{margin:20px 0;max-height:430px}dialog .reference-img{width:100%;border-radius:10px}dialog:has(.reference-img){width:1200px}label.field{display:flex;gap:7px;flex-direction:column;margin:15px 0;font-size:13px;font-weight:600}label.field input,label.field select,label.field textarea{width:100%;padding:12px;border:1px solid #c8d3e2;border-radius:10px;color:var(--text);background:white}textarea{min-height:80px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.demo-note{background:#edf3fb;border-left:3px solid var(--blue);padding:12px 15px;border-radius:7px;font-size:12px!important}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0}.chips span{border-radius:30px;padding:8px 12px;background:#eef3f9;font-size:12px}.chat-log{min-height:120px;max-height:240px;overflow:auto;background:#f2f5fa;padding:15px;border-radius:12px}.chat-message{padding:10px 13px;background:white;border-radius:10px;margin:8px 0;font-size:13px}.chat-message.user{background:#e5eefd}.schedule-row{display:flex;padding:16px;border-bottom:1px solid #e5eaf2;gap:20px}.schedule-row strong{color:var(--blue)}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,30px);opacity:0;pointer-events:none;background:#10223a;color:white;border:1px solid #ffffff44;padding:13px 22px;border-radius:12px;box-shadow:0 10px 25px #0003;transition:.25s;z-index:100;font-size:13px}#toast.show{opacity:1;transform:translate(-50%,0)}#webgl{position:absolute;inset:0}#webgl canvas{display:block;width:100%;height:100%}.webgl-info{position:absolute;left:25px;top:20px;z-index:2;background:#10223ae8;color:white;padding:12px 18px;border-radius:12px;font-size:12px;max-width:380px;line-height:1.6}#map-view{position:absolute;inset:0;background:radial-gradient(ellipse at center,#234968,#0c203b);padding:35px 390px 150px 50px}.map-heading h1{font-size:32px;margin:8px 0}.map-heading small{font-size:10px;letter-spacing:2px;color:#a9c5e1}.map-heading p{font-size:13px;color:#bfd1e5}#map-stands{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:35px;perspective:900px}.map-stand{min-height:112px;border-radius:24px;border:2px solid #ffffff66;color:white;background:var(--stand-color);box-shadow:0 10px 0 #091a2b55,0 20px 30px #0003;font-weight:700;transform:rotateX(12deg);padding:14px}.map-stand small{display:block;font-size:10px;font-weight:400;margin-top:10px}.empty{padding:50px;color:#71839d}#empty-state{text-align:center}
.brand{display:flex;align-items:center;gap:8px;max-width:240px;overflow:hidden}.brand>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand img{max-width:44px;max-height:40px;object-fit:contain}.config-button{background:#ffffff14;color:white;border:1px solid #ffffff30;border-radius:10px;padding:9px 12px;white-space:nowrap;font-size:11px}.exhibitor-logo{height:36px;max-width:150px;object-fit:contain;margin-bottom:10px}.admin-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:20px 0}.admin-tabs button{font-size:11px;padding:11px}.media-row{display:flex;align-items:center;gap:8px;padding:12px 0;border-bottom:1px solid #dde5f0;flex-wrap:wrap}.media-row>div{flex:1;min-width:120px;overflow-wrap:anywhere}.media-row strong{font-size:12px}.media-row small{font-size:10px;display:block;color:#70819b;margin-top:5px}.media-row label{font-size:9px;width:70px}.media-row input{width:65px;padding:7px;border:1px solid #c8d3e2;border-radius:6px}.media-row select{font-size:11px;padding:8px;border:1px solid #c8d3e2;border-radius:6px}.media-row button{font-size:11px;padding:9px}.playlist-media{width:100%;height:100%;position:absolute;inset:0;background:#081226}.screen-live:has(.playlist-media):after{display:none}#admin-body h3{font-size:18px}#admin-body hr{border:0;border-top:1px solid #dbe4ef;margin:24px 0}#admin-body input[type=file]{font-size:11px}button:disabled{opacity:.35;cursor:default}
@keyframes beacon{50%{box-shadow:0 0 0 10px #ffffff10,0 4px 22px #06275555}}@keyframes shine{from{transform:translateX(-50%)}to{transform:translateX(50%)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(min-aspect-ratio:2/1){.scene-image{width:auto;height:100%;aspect-ratio:1672/941;min-width:100%}.scene-image img{height:100%;width:100%;object-fit:cover}}@media(max-width:1100px){.topbar{gap:20px;padding:0 22px}.brand{font-size:27px}nav{gap:14px}.exhibitor-panel{width:300px;padding:17px}.minimap{width:195px}.minimap svg{height:85px}.view-controls>button{padding:11px 12px;font-size:11px}.stand-grid{gap:15px}.search{width:210px}#map-view{padding-right:335px}}
@media(max-width:760px){.topbar{height:auto;min-height:116px;flex-wrap:wrap;padding:12px 16px;gap:12px}.brand{font-size:26px}.topbar nav{order:3;width:100%;justify-content:space-between;height:34px}.search{width:calc(100% - 175px);padding:6px 10px}.search input{font-size:11px}#help{display:none}.scene-shell{height:calc(100dvh - 116px);min-height:730px}.scene-image{width:155%;left:-27.5%;top:0;bottom:auto;aspect-ratio:1672/941}.exhibitor-panel{top:auto;bottom:115px;left:12px;right:12px;width:auto;max-height:330px;padding:16px}.exhibitor-panel .thumb{width:110px;float:left;margin:0 14px 10px 0}.exhibitor-panel h2{font-size:19px}.panel-actions{clear:both;grid-template-columns:1fr 1fr;gap:7px}.panel-actions .primary{grid-column:1/-1}.panel-actions button{padding:10px;font-size:11px}.exhibitor-panel p{font-size:12px}.panel-links{margin-top:8px}.minimap{width:120px;left:12px;top:245px;bottom:auto;padding:9px}.minimap svg{height:57px}.minimap strong{font-size:9px}.view-controls{bottom:43px;padding:6px;gap:1px;max-width:calc(100% - 15px)}.view-controls>button{padding:10px 8px;font-size:10px}.view-controls .icon-button{width:26px;height:26px;font-size:18px}.mode-label{bottom:11px;left:10px;font-size:8px}.reference-link{bottom:11px;right:10px;font-size:8px}.stand-grid{grid-template-columns:1fr}.page-section{padding:30px 16px}.form-row{grid-template-columns:1fr}.section-heading{margin-bottom:25px}.section-heading h1{font-size:31px}dialog{padding:24px 18px}.screen-hotspot span{opacity:1;font-size:10px;padding:5px}#map-view{padding:25px 15px 420px}.map-heading h1{font-size:25px}#map-stands{gap:10px;margin-top:20px}.map-stand{min-height:80px;padding:8px;font-size:11px}.webgl-info{left:10px;top:10px;max-width:90%;font-size:10px}}

@media(max-width:760px){.topbar .brand{max-width:calc(100% - 115px)}.topbar .search{order:4;width:100%;margin:0}.topbar nav{order:3}.topbar .config-button{margin-left:auto}.topbar{min-height:160px}.scene-shell{height:calc(100dvh - 160px)}.media-row{gap:5px}.media-row label{width:60px}}
.walk-hud{position:absolute;top:18px;left:22px;display:flex;gap:10px;align-items:center;z-index:3;max-width:calc(100% - 44px);flex-wrap:wrap}.walk-help{background:#0c1c32d9;color:#e9f1fb;border-radius:12px;padding:10px 14px;font-size:12px;line-height:1.5;display:flex;flex-direction:column;max-width:440px}.walk-help strong{font-size:13px}.walk-toggle{background:#fff;color:var(--text);border-radius:99px;padding:10px 16px;font-size:12px;font-weight:650;box-shadow:0 6px 18px #0b1d3a33}.walk-tip{position:absolute;z-index:4;background:#0c1c32eb;color:#fff;font-size:12px;padding:6px 10px;border-radius:8px;pointer-events:none;white-space:nowrap}.walk-minimap{position:absolute;left:22px;bottom:86px;z-index:3;border-radius:14px;background:#0c1c32cc;border:1px solid #ffffff33;box-shadow:0 10px 26px #0a152b55;cursor:crosshair}#webgl canvas:focus-visible{outline:3px solid #ffb342;outline-offset:-3px}
#map-view #map-stands{display:block;margin-top:20px;perspective:none}.floor-plan{width:100%;max-height:calc(100dvh - 300px);display:block}.floor-plan text{font-size:.8px;fill:#fff;text-anchor:middle;font-weight:700;pointer-events:none}.floor-plan .plan-caption,.plan-canvas .plan-caption{fill:#9fb5cf;font-size:.9px;font-weight:600}.plan-hall{fill:#ffffff14;stroke:#ffffff55;stroke-width:.12}.plan-screen{fill:#7bb3ff}.floor-plan .plan-stand{cursor:pointer}.floor-plan .plan-stand rect{stroke:#ffffffaa;stroke-width:.1}.floor-plan .plan-stand:hover rect,.floor-plan .plan-stand:focus rect{stroke:#ffb342;stroke-width:.25}.floor-plan .plan-stand:focus{outline:none}
dialog:has(.plan-editor){width:1180px}.plan-toolbar{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.plan-toolbar label{display:flex;flex-direction:column;font-size:12px;font-weight:600;gap:5px}.plan-toolbar input{width:90px;padding:9px;border:1px solid #c8d3e2;border-radius:8px}.plan-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;margin-top:12px}.plan-canvas{width:100%;aspect-ratio:1.1;max-height:62vh;background:#0e2036;border-radius:14px;touch-action:none;user-select:none}.plan-canvas .plan-hall{fill:#14304e}.plan-canvas line.g1{stroke:#ffffff10;stroke-width:.04}.plan-canvas line.g5{stroke:#ffffff2e;stroke-width:.07}.plan-canvas .plan-stand{cursor:grab}.plan-canvas .plan-stand rect{stroke:#ffffffb0;stroke-width:.1}.plan-canvas .plan-stand.selected rect{stroke:#ffb342;stroke-width:.3}.plan-canvas .plan-stand.conflict rect{stroke:#ff4d4d;stroke-width:.35;stroke-dasharray:.6 .3}.plan-canvas .plan-stand:focus{outline:none}.plan-canvas .plan-stand:focus rect{stroke:#ffb342}.plan-canvas text{font-size:.75px;fill:#fff;text-anchor:middle;font-weight:800;pointer-events:none}.plan-canvas text.plan-name{font-size:.55px;font-weight:600}.plan-front{stroke:#ffffffcc;stroke-width:.14;stroke-linecap:round}.plan-side{background:#f3f6fb;border-radius:14px;padding:14px;font-size:13px}.plan-side h3{margin:0 0 6px}.plan-side .form-row{grid-template-columns:90px 1fr;gap:8px}.plan-pos{color:#5d6d84;font-size:12px}.plan-side .ghost{margin-top:14px;color:#c0392b;border-color:#f1c5bf}
@media (max-width:820px){.plan-layout{grid-template-columns:1fr}.walk-help span{display:none}.walk-minimap{bottom:96px;left:12px}.walk-hud{left:12px;top:12px}}
.exhibitor-tagline{font-weight:650;color:var(--text)!important;margin:10px 0 0!important}.exhibitor-contact{display:flex;flex-direction:column;gap:6px;margin:10px 0;font-size:13px}.exhibitor-contact a{color:var(--blue);text-decoration:none;overflow-wrap:anywhere}
.walk-quality{display:flex;align-items:center;gap:6px;background:#0c1c32d9;color:#e9f1fb;border-radius:99px;padding:6px 8px 6px 14px;font-size:12px}.walk-quality select{background:#fff;color:var(--text);border:0;border-radius:99px;padding:5px 8px;font-size:12px}
/* Espace visiteur (mode serveur) : compte, messagerie visiteur-exposant, rendez-vous. */
.vx-account{display:inline-flex;align-items:center;gap:6px;font-weight:650}.vx-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#ff5a4f;color:#fff;font-size:10px;font-weight:800;line-height:1}.vx-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.vx-title:focus{outline:none}.vx-thread:focus-visible,.vx-panel:focus-visible{outline:3px solid #ffb342;outline-offset:2px}
.vx-lead{margin-top:0}.vx-tabs{display:flex;gap:4px;border-bottom:1px solid #dde5f0;margin:16px 0 6px;overflow-x:auto}.vx-tabs [role=tab]{background:none;color:#5d6d84;font-weight:650;font-size:13px;padding:11px 14px;border-bottom:3px solid transparent;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.vx-tabs [role=tab][aria-selected=true]{color:var(--blue);border-bottom-color:var(--blue)}.vx-tabs [role=tab]:hover{color:var(--text)}
.vx-form .primary{width:100%;margin-top:6px}.vx-hint{display:block;font-size:12px;color:#6a7a91;margin:-8px 0 10px;line-height:1.5}.vx-privacy{font-size:12px;line-height:1.55;background:#f3f6fb;border-radius:10px;padding:10px 12px;color:#4f6079}.vx-error{background:#fdecea;color:#a3271b;border-radius:10px;padding:10px 12px;font-size:13px;line-height:1.5;margin:10px 0}.vx-success{background:#e7f6ec;color:#17663a;border-radius:10px;padding:12px 14px;font-weight:650}.vx-empty{color:#6a7a91;font-size:13px;text-align:center;padding:18px 8px;margin:0}
.vx-check{display:flex;gap:9px;align-items:flex-start;font-size:13px;font-weight:600;margin:4px 0 10px;cursor:pointer;line-height:1.4}.vx-check input{width:18px;height:18px;margin:1px 0 0;flex-shrink:0;accent-color:var(--blue)}.vx-shared{font-size:12px;color:#17663a;margin:0 0 10px}.vx-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.vx-back{background:none;color:var(--blue);font-weight:650;font-size:13px;padding:4px 0;margin-bottom:8px}
.vx-thread{display:flex;flex-direction:column;gap:8px;height:min(46dvh,380px);overflow-y:auto;background:#f2f5fa;border-radius:14px;padding:14px;overscroll-behavior:contain}.vx-thread .vx-empty{margin:auto 0}.vx-msg{max-width:80%;padding:9px 12px 6px;border-radius:14px;box-shadow:0 1px 2px #0b1d3a14}.vx-msg p{margin:0;font-size:13px;color:inherit;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.vx-msg time{display:block;font-size:10px;margin-top:3px;opacity:.75;text-align:right}.vx-msg.mine{align-self:flex-end;background:var(--blue);color:#fff;border-bottom-right-radius:4px}.vx-msg.theirs{align-self:flex-start;background:#fff;color:var(--text);border:1px solid #dde5f0;border-bottom-left-radius:4px}
.vx-compose label.field{margin:12px 0 8px}.vx-compose textarea{resize:vertical;min-height:70px;max-height:200px}.vx-compose-bar{display:flex;align-items:center;justify-content:space-between;gap:12px}.vx-compose-bar .vx-hint{margin:0}
.vx-tz{font-size:12px;color:#5d6d84;margin:0 0 10px}.vx-days{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 8px;scroll-snap-type:x proximity}.vx-day{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:1px;min-width:78px;padding:9px 10px;border-radius:12px;background:#fff;border:1px solid #cfdcf0;color:var(--text);scroll-snap-align:start}.vx-day strong{font-size:12px;text-transform:capitalize}.vx-day span{font-size:14px;font-weight:750}.vx-day small{font-size:10px;color:#6a7a91}.vx-day[aria-pressed=true]{background:var(--blue);border-color:var(--blue);color:#fff}.vx-day[aria-pressed=true] small{color:#dfe9ff}
.vx-h3{font-size:15px;margin:14px 0 8px}.vx-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px}.vx-slot{display:flex;flex-direction:column;align-items:center;padding:9px 6px;border-radius:10px;background:#eef3fb;border:1px solid #cfdcf0;color:var(--text)}.vx-slot strong{font-size:14px}.vx-slot small{font-size:10px;color:#5d6d84}.vx-slot:hover{border-color:var(--blue)}.vx-slot[aria-pressed=true]{background:var(--blue);border-color:var(--blue);color:#fff}.vx-slot[aria-pressed=true] small{color:#dfe9ff}.vx-book{margin-top:16px;border-top:1px solid #e3e9f2;padding-top:6px}.vx-choice{font-weight:650;color:var(--text);margin:8px 0 0}.vx-summary{display:flex;flex-direction:column;gap:4px;background:#f3f6fb;border-radius:12px;padding:14px 16px;margin:14px 0;font-size:13px;overflow-wrap:anywhere}.vx-summary small{color:#6a7a91}
.vx-panel{min-height:160px;padding-top:8px}.vx-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.vx-conv{position:relative;width:100%;text-align:left;display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:12px;background:#fff;border:1px solid #dde5f0;color:var(--text)}.vx-conv:hover{border-color:#a9c0e6;background:#f8fbff}.vx-conv.unread{border-left:4px solid var(--blue)}.vx-conv-head{display:flex;justify-content:space-between;gap:10px;font-size:14px}.vx-conv-head time{font-size:11px;color:#6a7a91;white-space:nowrap}.vx-conv-preview{font-size:12px;color:#5d6d84;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:30px}.vx-conv .vx-badge{position:absolute;right:12px;bottom:12px}
.vx-appt{display:grid;grid-template-columns:150px 1fr;gap:14px;padding:14px;border:1px solid #dde5f0;border-radius:12px;background:#fff}.vx-appt-when{display:flex;flex-direction:column;gap:3px;font-size:13px}.vx-appt-when span{color:var(--blue);font-weight:750}.vx-appt-body h4{margin:6px 0 2px;font-size:15px;overflow-wrap:anywhere}.vx-appt-body p{margin:0;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.vx-appt-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.vx-appt-actions:empty{display:none}.vx-appt-actions button{padding:9px 12px;font-size:12px}.vx-status{display:inline-block;font-size:11px;font-weight:750;border-radius:99px;padding:3px 9px;background:#eef1f7;color:#4f6079}.vx-status.pending{background:#fff3d6;color:#7a5200}.vx-status.confirmed{background:#e3f5e9;color:#17663a}.vx-status.declined{background:#fde8e6;color:#a3271b}.vx-status.cancelled{background:#eceff3;color:#5d6d84}.vx-past .vx-appt{opacity:.72}.vx-danger{color:#b3261e;border-color:#f1c5bf}
.vx-account-info{display:grid;grid-template-columns:max-content 1fr;gap:8px 18px;font-size:14px;margin:6px 0 14px}.vx-account-info dt{color:#6a7a91}.vx-account-info dd{margin:0;font-weight:650;overflow-wrap:anywhere}
@media(max-width:760px){.topbar .vx-account:not([hidden])~.config-button{margin-left:0}.topbar:has(.vx-account:not([hidden])) .brand{max-width:calc(100% - 240px)}.topbar .vx-account,.topbar .vx-account~.config-button{padding:8px 9px}.vx-appt{grid-template-columns:1fr;gap:6px}.vx-thread{height:min(42dvh,340px)}.vx-msg{max-width:88%}.vx-compose-bar .vx-hint{display:none}.vx-compose-bar .primary{width:100%}.vx-actions>*{flex:1 1 auto}.vx-tabs [role=tab]{padding:10px}}
.vx-account .vx-badge{height:16px;min-width:16px;margin:-3px 0;font-size:9.5px}
/* Tablette : barre du haut compacte (le bouton visiteur garde son icône/badge, la recherche reste utilisable). */
@media (min-width:761px) and (max-width:1180px){.topbar{gap:14px}.topbar nav{gap:14px}.search{min-width:150px;flex:1 1 150px;width:auto}.vx-account .vx-account-label{max-width:9ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.config-button{padding:8px 10px}}
