/* SOUL CAFÉ — restauro grafico mappamondo V8/V9, adattato alla V14 */
.v8-globe-zone{background:linear-gradient(145deg,#172c2d,#08191d 68%);border:1px solid #c8aa785c;border-radius:13px;padding:clamp(20px,3vw,36px);margin:14px 0 50px;overflow:hidden;position:relative;box-shadow:0 20px 70px #0003}
.v8-globe-zone:before{content:"";pointer-events:none;position:absolute;inset:0;opacity:.25;background:radial-gradient(circle at 25% 60%,#c3a66c2e,transparent 38%)}
.v8-globe-title{display:flex;gap:15px;justify-content:space-between;align-items:flex-end;position:relative;z-index:1}
.v8-globe-title h2{max-width:670px}
.v8-globe-title p{font-size:13px;line-height:1.65;max-width:600px;color:#c9d2c9;margin:12px 0 0}
.v8-globe-tools{display:flex;gap:7px;flex:none}
.v8-globe-tools button{border:1px solid #e0bf806b;background:#172f30;color:#f0d5a0;border-radius:50%;width:44px;height:44px;font-size:20px;cursor:pointer}
.v8-globe-tools button:hover{background:#caae78;color:#1b2827}
.v8-globe-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(225px,.85fr);align-items:center;gap:8px;margin:16px 0 8px;position:relative;z-index:1}
.v8-globe-visual{position:relative;min-width:0;overflow:hidden;aspect-ratio:1.25;display:flex;align-items:center;justify-content:center}
#sc-globe-canvas{display:block;width:100%;height:auto;max-height:610px;touch-action:none;cursor:grab;position:relative;z-index:2;user-select:none;-webkit-user-select:none}
#sc-globe-canvas:active{cursor:grabbing}
.v8-orbit{position:absolute;left:10%;right:10%;height:32%;top:34%;border:1px solid #dec28b29;border-radius:50%;transform:rotate(-23deg);pointer-events:none}
.v8-orbit-two{transform:rotate(47deg);height:38%;top:31%;border-color:#d8b57c1c}
.v8-globe-compass,.v8-globe-hint{position:absolute;pointer-events:none;z-index:3;font-size:9px;letter-spacing:.15em;color:#c1aa7d;text-shadow:0 1px 9px #001}
.v8-globe-compass{top:13px;right:3%}.v8-globe-hint{bottom:18px;left:4%}
.v8-globe-info{padding:20px clamp(12px,2vw,30px);position:relative;z-index:1;border-left:1px solid #d4b47d33;min-height:310px}
.v8-country-ornament{display:block;color:#b69d6c;font-size:33px;margin:15px 0 4px}
.v8-globe-info h3{font:400 clamp(38px,5.3vw,72px)/.95 Georgia,serif;margin:0 0 13px;color:#f6e9ce}
.v8-globe-info h3 em{color:#d8b77f}.v8-globe-info>p{font-size:13px;line-height:1.6;color:#b1c1b5;margin:0 0 18px}
.v8-globe-events{max-height:360px;overflow:auto;scrollbar-width:thin}
.v8-globe-event{border-top:1px solid #c6a87444;padding:12px 0}
.v8-globe-event-id{display:block;color:#dabb80;font-size:11px;letter-spacing:.12em;margin:0 0 6px}
.v8-globe-event strong{font:400 21px Georgia,serif;display:block;color:#f6ebd6;line-height:1.2}
.v8-globe-event small{font-size:12px;color:#bac9bc;display:block;margin:7px 0}
.v8-globe-event>div{display:flex;align-items:center;gap:7px}
.v8-globe-stops{display:flex;gap:7px;justify-content:center;flex-wrap:wrap;border-top:1px solid #c5aa7452;padding-top:20px;position:relative;z-index:1}
.v8-stop{border:1px solid #7e6b4a;background:#1e3432;color:#f2e2bf;font-size:12px;padding:10px 15px;border-radius:99px;cursor:pointer;min-height:41px}
.v8-stop.active{background:#d8b579;color:#172725;border-color:#eac991;font-weight:700}
.v8-stop span{opacity:.7;margin-right:7px;font-size:10px}
@media(max-width:780px){.v8-globe-layout{grid-template-columns:1fr;gap:0}.v8-globe-visual{max-width:590px;width:100%;margin:auto}.v8-globe-info{min-height:0;border-left:0;border-top:1px solid #d4b47d3a;padding:23px 10px}.v8-globe-info h3{font-size:44px}.v8-globe-events{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-height:none}.v8-globe-event{margin:0}}
@media(max-width:650px){.v8-globe-zone{padding:17px 12px;margin-bottom:35px}.v8-globe-title{align-items:flex-start}.v8-globe-title h2{font-size:32px}.v8-globe-tools{gap:5px;flex-direction:column}.v8-globe-tools button{width:37px;height:37px}.v8-globe-layout{margin:12px 0 0}.v8-globe-hint{font-size:8px}.v8-globe-compass{font-size:7px;top:10px;right:1%}.v8-globe-events{gap:10px}.v8-globe-event strong{font-size:18px}.v8-globe-stops{padding-top:15px}.v8-stop{padding:9px 12px;font-size:11px}}
@media(max-width:370px){.v8-globe-events{grid-template-columns:1fr}.v8-globe-title h2{font-size:28px}}
