:root{--primary:#ea5c64;--primary-dark:#c9434d;--primary-soft:#fff0f1;--primary-border:#f6c9cc;--navy:#291f20;--text:#392f30;--muted:#746568;--line:#eadfe0;--bg:#f8f4f4;--card:#fff;--green:#12b76a;--red:#d92d20;--orange:#f79009;--sidebar:248px;--radius:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px}a{color:var(--primary);text-decoration:none}button,input,select,textarea{font:inherit}
.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:#fff;border-right:1px solid var(--line);padding:18px 14px;display:flex;flex-direction:column;z-index:40}.side-brand{display:flex;align-items:center;gap:11px;color:var(--navy);font-weight:800;font-size:17px;padding:4px 8px 22px}.side-brand>span:last-child span{color:var(--primary)}.side-brand small{display:block;color:var(--muted);font-size:10px;font-weight:600;margin-top:2px}.brand-logo{width:44px;height:44px;flex:0 0 auto;filter:drop-shadow(0 6px 10px #2563eb2b)}.side-nav{display:flex;flex-direction:column;gap:5px}.side-nav a,.logout{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:10px;color:#475467;font-weight:650}.side-nav a i{width:24px;height:24px;border-radius:7px;display:grid;place-items:center;background:#f2f4f7;font-style:normal}.side-nav a:hover,.side-nav a.active{background:#eff6ff;color:var(--primary)}.side-nav a.active i{background:var(--primary);color:#fff}.logout{margin-top:auto;border-top:1px solid var(--line);border-radius:0;padding-top:18px}.app-main{margin-left:var(--sidebar);min-width:0}.topbar{height:72px;position:sticky;top:0;background:#ffffffeb;backdrop-filter:blur(12px);border-bottom:1px solid var(--line);z-index:30;display:flex;align-items:center;padding:0 28px;gap:14px}.topbar>div:first-of-type small{display:block;color:var(--muted);font-size:11px}.topbar strong{font-size:18px}.top-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.quick-add{padding:10px 14px;border-radius:9px;background:var(--primary);color:#fff;font-weight:700}.avatar{width:38px;height:38px;border-radius:50%;background:#e0e7ff;color:#3730a3;display:grid;place-items:center;font-weight:800}.mobile-menu{display:none;background:none;border:0;font-size:24px}.wrap{max-width:1600px;margin:0 auto;padding:26px 28px 70px}.page-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 20px}.page-title h1,h1{font-size:28px;margin:0 0 4px;color:#101828;letter-spacing:-.5px}.page-title p{margin:0;color:var(--muted)}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 2px 4px #1018280a;padding:20px;margin-bottom:18px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stat{position:relative;overflow:hidden}.stat:after{content:"";position:absolute;width:70px;height:70px;border-radius:50%;right:-18px;top:-18px;background:#eff6ff}.stat b{display:block;font-size:29px;margin-top:10px}.muted{color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;background:var(--primary);color:#fff;padding:11px 16px;border-radius:9px;font-weight:700;cursor:pointer}.btn:hover{background:var(--primary-dark)}.btn.secondary{background:#eef2f6;color:var(--navy)}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}label{display:block;font-weight:650;font-size:13px;margin-bottom:8px}input,select,textarea{width:100%;padding:11px 12px;border:1px solid #d0d5dd;border-radius:9px;margin-top:6px;background:#fff;color:var(--text);outline:none}input:focus,select:focus,textarea:focus{border-color:#84adff;box-shadow:0 0 0 3px #eff6ff}input[type=checkbox]{width:auto}textarea{min-height:120px}.alert,.notice{padding:13px 15px;border-radius:10px;margin:12px 0}.ok{background:#ecfdf3;color:#067647}.err{background:#fef3f2;color:#b42318}.notice{background:#eff8ff;color:#175cd3}.actions{display:flex;gap:10px;flex-wrap:wrap}.pill{display:inline-flex;padding:4px 9px;border-radius:999px;background:#eef4ff;color:#3538cd;font-size:12px}.table-wrap{overflow:auto;padding:4px 20px 14px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:13px 12px;border-bottom:1px solid #eaecf0;vertical-align:top}th{font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);background:#fcfcfd}tbody tr:hover{background:#f9fafb}
.calendar-filters{padding:16px 20px}.filter-row{display:grid;grid-template-columns:repeat(3,minmax(150px,260px));gap:14px;align-items:end}.calendar-filters label{margin:0}.legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:14px;color:var(--muted);font-size:12px}.legend span{display:flex;align-items:center;gap:6px}.portal{width:10px;height:10px;border-radius:3px}.booking{background:#2563eb!important}.airbnb{background:#f04438!important}.direct{background:#12b76a!important}.other{background:#9333ea!important}.calendar-heading{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;text-align:center;margin:20px 0 14px}.calendar-heading>a{width:40px;height:40px;background:#fff;border:1px solid var(--line);border-radius:10px;display:grid;place-items:center;font-size:26px;color:var(--text)}.calendar-heading h2{margin:0;font-size:22px}.calendar-heading small{display:block;color:var(--muted);font-weight:500;font-size:12px;margin-top:3px}.timeline-card{padding:0;overflow:hidden}.timeline-scroll{overflow-x:auto;overscroll-behavior-inline:contain}.timeline{min-width:calc(220px + var(--days) * 43px)}.timeline-head,.timeline-row{display:grid;grid-template-columns:220px repeat(var(--days),minmax(43px,1fr));position:relative}.timeline-head{position:sticky;top:0;z-index:4;background:#f8fafc;border-bottom:1px solid var(--line)}.timeline-head>div{grid-row:1;min-height:56px;border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center}.timeline-head small{text-transform:uppercase;font-size:9px;color:var(--muted)}.timeline-head b{font-size:14px}.timeline-head .weekend{background:#fff7ed}.structure-col{position:sticky;left:0;z-index:3;background:#fff!important;display:flex!important;flex-direction:row!important;justify-content:flex-start!important;gap:8px;padding:0 12px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-right:2px solid #d0d5dd!important}.structure-col span{width:8px;height:8px;border-radius:50%;flex:0 0 auto}.timeline-row{min-height:49px;border-bottom:1px solid #eaecf0}.timeline-row:hover .day-cell{background:#f8fbff}.day-cell{grid-row:1;border-right:1px solid #f0f2f5}.reservation-bar{grid-row:1;z-index:2;align-self:center;height:30px;border-radius:7px;color:#fff;padding:6px 9px;margin:0 2px;font-size:11px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;box-shadow:0 3px 8px #10182824}.reservation-bar b{font-weight:700}.day-list{max-width:900px;margin:auto}.booking-card{display:grid;grid-template-columns:5px 95px 1fr 30px;align-items:center;gap:16px;padding:0 18px 0 0;overflow:hidden}.booking-accent{width:5px;align-self:stretch}.booking-date{font-size:10px;color:var(--muted);font-weight:800}.booking-date strong{display:block;font-size:18px;color:var(--text);margin-top:3px}.booking-info h3{margin:0 0 4px}.booking-info p{margin:0 0 4px}.booking-info span{font-size:12px;color:var(--muted)}.arrow{font-size:28px;color:#98a2b3}.empty-state{text-align:center;padding:50px}.empty-state span{display:block;color:var(--muted);margin-top:8px}.year-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.year-month{margin:0}.year-month header{display:flex;justify-content:space-between;align-items:center}.year-month h3{margin:0}.year-month header span{font-size:12px;color:var(--muted)}.mini-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin:16px 0}.mini-days a{aspect-ratio:1;border-radius:5px;display:grid;place-items:center;background:#f2f4f7;color:#667085;font-size:10px}.mini-days a.booking{color:#fff}.mini-days a.airbnb{color:#fff}.mini-days a.direct{color:#fff}.mini-days a.other{color:#fff}.occupancy{height:5px;background:#eaecf0;border-radius:99px;overflow:hidden}.occupancy i{display:block;height:100%;background:var(--primary)}.auth{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#0b1220,#1d4ed8)}.install,.login{width:min(760px,calc(100% - 30px))}.login{max-width:430px}.login-brand{display:flex;align-items:center;gap:14px;margin-bottom:22px}.login-brand img{width:58px;height:58px}.login-brand h1{margin:0}.login-brand .version{display:block;color:var(--muted);margin-top:3px}.hero{padding:70px 20px;background:linear-gradient(135deg,#08264a,#1276d2);color:#fff;text-align:center}.public{max-width:1100px;margin:auto;padding:24px}.guest{border-left:4px solid var(--primary);padding-left:16px;margin:18px 0}.menu-backdrop{display:none}
.calendar-toolbar{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px 12px;margin-bottom:12px}.calendar-toolbar>a{padding:9px 12px;border-radius:8px;color:var(--muted);font-weight:750}.calendar-toolbar>a.active{background:#eff6ff;color:var(--primary)}.calendar-toolbar .legend{margin:0 0 0 auto}.total-calendar-card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 2px 6px #1018280d}.total-calendar-actions{height:52px;display:flex;align-items:center;gap:8px;padding:7px 12px;border-bottom:1px solid var(--line)}.total-calendar-actions button{border:1px solid #d0d5dd;background:#fff;border-radius:8px;padding:7px 10px;cursor:pointer}.total-calendar-actions strong{margin-left:auto}.total-scroll{max-height:calc(100vh - 270px);overflow:auto;scrollbar-color:#98a2b3 #f2f4f7}.total-timeline .timeline-head{top:0}.total-timeline .timeline-head>div{height:66px}.total-timeline .timeline-head>div.today{background:#e0f2fe;box-shadow:inset 0 -3px #0284c7}.total-timeline .timeline-head em{font-size:9px;color:#98a2b3;font-style:normal}.total-timeline .timeline-row{min-height:58px}.total-timeline .structure-col{width:220px}.total-timeline .structure-title{z-index:8;font-size:13px}.structure-link{z-index:5!important;color:var(--text);padding:6px 10px}.structure-link img,.structure-identity img{width:38px;height:38px;border-radius:8px;object-fit:cover;flex:0 0 auto}.structure-link>i,.structure-identity>i{width:10px;height:38px;border-radius:6px;flex:0 0 auto}.structure-link>span{min-width:0;overflow:hidden;text-overflow:ellipsis}.structure-link>span small{display:block;color:var(--muted);font-size:9px;margin-top:2px}.structure-link>b{margin-left:auto;color:#98a2b3;font-size:20px}.structure-calendar-head{display:grid;grid-template-columns:180px 1fr auto;align-items:center;gap:18px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin-bottom:14px}.back-total{font-weight:750}.structure-identity{display:flex;align-items:center;gap:12px}.structure-identity h2{margin:2px 0 0}.structure-identity small{color:var(--muted)}.month-nav{display:flex;align-items:center;gap:12px}.month-nav a{width:38px;height:38px;border:1px solid var(--line);border-radius:9px;display:grid;place-items:center;font-size:23px;color:var(--text)}.property-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;padding:0 4px 7px}.property-weekdays span{text-align:center;color:var(--muted);font-size:12px;font-weight:750}.property-month{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:8px}.property-day{background:#fff;border:1px solid var(--line);border-radius:14px;min-height:145px;padding:10px;overflow:hidden}.property-day.outside{opacity:.45;background:#f9fafb}.property-day.is-today{border:2px solid #0284c7;background:#f0f9ff}.property-day>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.property-day>header b{font-size:18px}.property-day>header span{font-size:9px;background:#0284c7;color:#fff;border-radius:99px;padding:3px 6px}.property-events{display:flex;flex-direction:column;gap:5px}.property-event{display:block;color:#fff!important;border-radius:7px;padding:6px 7px;overflow:hidden}.property-event b,.property-event small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.property-event b{font-size:10px}.property-event small{font-size:9px;opacity:.85;margin-top:2px}
.total-scroll{position:relative;isolation:isolate}.total-timeline .structure-col{position:sticky!important;left:0!important;z-index:30!important;width:220px!important;min-width:220px!important;max-width:220px!important;background:#fff!important;box-shadow:4px 0 8px #10182818}.total-timeline .timeline-head .structure-col{z-index:60!important;background:#f8fafc!important}.total-timeline .reservation-bar{z-index:2}.structure-link>span{width:auto!important;height:auto!important;min-width:0!important;max-width:150px!important;border-radius:0!important;flex:1 1 auto!important;display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.structure-link>span small{width:auto!important;height:auto!important;border-radius:0!important;white-space:nowrap!important}.structure-link>b{position:relative;z-index:31;flex:0 0 auto}.structure-link img,.structure-link>i{position:relative;z-index:31}
.queue-item{display:grid;grid-template-columns:minmax(240px,1fr) minmax(420px,2fr);gap:18px;align-items:center;padding:14px 0;border-top:1px solid var(--line)}.queue-person b,.queue-person span,.queue-person small{display:block}.queue-person span{margin-top:4px}.queue-person small{color:#b54708;margin-top:4px}.queue-form{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:end}.queue-form select{margin:0}.queue-form .btn{height:42px}
.dashboard-filter{display:flex;align-items:end;gap:12px;padding:14px 16px}.dashboard-filter label{margin:0;min-width:170px}.dashboard-filter select{margin-top:5px}.dashboard-filter .btn{height:42px}.dashboard-stat{display:block;color:var(--text);transition:.18s;border-top:4px solid var(--primary)}.dashboard-stat:hover{transform:translateY(-3px);box-shadow:0 10px 25px #10182816}.dashboard-stat.green{border-color:#12b76a}.dashboard-stat.orange{border-color:#f79009}.dashboard-stat.purple{border-color:#7f56d9}.dashboard-stat .stat-icon{float:right;width:38px;height:38px;border-radius:10px;background:#eff6ff;color:#2563eb;display:grid;place-items:center;font-size:19px;font-weight:800}.dashboard-stat.green .stat-icon{background:#ecfdf3;color:#067647}.dashboard-stat.orange .stat-icon{background:#fffaeb;color:#b54708}.dashboard-stat.purple .stat-icon{background:#f4f3ff;color:#6938ef}.dashboard-stat small{display:block;color:var(--primary);font-weight:700;margin-top:10px}.dashboard-charts{display:grid;grid-template-columns:2fr 1fr;gap:16px;margin-top:18px}.chart-card{margin:0;min-height:330px}.chart-card header h2{margin:0}.chart-card header p{margin:4px 0;color:var(--muted)}.bar-chart{height:235px;display:grid;grid-template-columns:repeat(12,1fr);gap:8px;align-items:end;padding-top:28px}.bar-item{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px}.bar-item span{font-size:10px;color:var(--muted)}.bar-item i{display:block;width:min(30px,75%);min-height:3px;background:linear-gradient(#60a5fa,#2563eb);border-radius:7px 7px 2px 2px}.bar-item small{font-size:9px;color:var(--muted);text-transform:uppercase}.checkin-chart{display:flex;flex-direction:column}.donut{--pct:0;width:172px;height:172px;border-radius:50%;margin:24px auto;display:grid;place-items:center;background:conic-gradient(#2563eb calc(var(--pct)*1%),#e4e7ec 0);position:relative}.donut:after{content:"";position:absolute;inset:20px;border-radius:50%;background:#fff}.donut strong{position:relative;z-index:1;font-size:30px}.chart-legend{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;color:var(--muted);font-size:12px}.chart-legend span{display:flex;align-items:center;gap:6px}.chart-legend i{width:9px;height:9px;border-radius:50%;background:#2563eb}.chart-legend span+span i{background:#e4e7ec}.edit-actions{display:flex;justify-content:flex-end;gap:10px}.dashboard-list .btn{padding:8px 11px;font-size:12px}
@media(max-width:1100px){.stats{grid-template-columns:repeat(2,1fr)}.year-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){body{font-size:13px}.sidebar{transform:translateX(-105%);transition:.22s;width:min(82vw,290px);box-shadow:10px 0 30px #10182833}.menu-open .sidebar{transform:translateX(0)}.menu-backdrop{position:fixed;inset:0;background:#10182866;z-index:35}.menu-open .menu-backdrop{display:block}.app-main{margin-left:0}.topbar{height:62px;padding:0 14px}.mobile-menu{display:block}.topbar>div:first-of-type small{display:none}.topbar strong{font-size:16px}.quick-add{width:38px;height:38px;padding:0;font-size:0}.quick-add:first-letter{font-size:24px}.avatar{display:none}.wrap{padding:18px 12px 82px}.page-title{align-items:flex-start}.page-title h1,h1{font-size:23px}.page-title>.btn{padding:10px;font-size:12px}.stats{grid-template-columns:1fr 1fr;gap:10px}.stat{padding:15px}.stat b{font-size:23px}.grid{grid-template-columns:1fr}.card{padding:15px;border-radius:12px}.filter-row{grid-template-columns:1fr 1fr;gap:10px}.filter-row label:nth-child(3){grid-column:1/-1}.legend{gap:12px}.calendar-toolbar{overflow-x:auto}.calendar-toolbar .legend{display:none}.total-calendar-card{margin-left:-12px;margin-right:-12px;border-radius:0}.total-calendar-actions strong{display:none}.timeline-card{margin-left:-12px;margin-right:-12px;border-radius:0}.timeline{min-width:calc(145px + var(--days) * 39px)}.timeline-head,.timeline-row{grid-template-columns:145px repeat(var(--days),39px)}.total-timeline .structure-col{width:145px}.structure-col{font-size:11px;padding:0 8px}.structure-link img{width:30px;height:30px}.structure-link>span small{display:none}.timeline-head>div{min-height:48px}.timeline-row{min-height:45px}.reservation-bar{height:27px;padding:5px;font-size:10px}.structure-calendar-head{grid-template-columns:1fr auto;padding:12px}.back-total{grid-column:1/-1}.structure-identity h2{font-size:16px}.month-nav{gap:5px}.month-nav strong{font-size:12px}.property-weekdays,.property-month{min-width:840px}.property-month{grid-template-columns:repeat(7,120px)}.property-calendar-scroll{overflow-x:auto}.year-grid{grid-template-columns:1fr}.booking-card{grid-template-columns:5px 67px 1fr 20px;gap:10px;padding-right:10px}.booking-info h3{font-size:14px}.booking-info p{font-size:12px}.table-wrap{margin-left:-12px;margin-right:-12px;border-radius:0;padding:0;box-shadow:none}.table-wrap table,.table-wrap thead,.table-wrap tbody,.table-wrap th,.table-wrap td,.table-wrap tr{display:block}.table-wrap thead{display:none}.table-wrap tr{background:#fff;border-bottom:8px solid var(--bg);padding:10px 14px}.table-wrap td{display:flex;justify-content:space-between;gap:14px;padding:8px 0;border:0;white-space:normal}.table-wrap td:before{content:attr(data-label);font-weight:700;color:var(--muted)}}
@media(max-width:420px){.stats{grid-template-columns:1fr}.filter-row{grid-template-columns:1fr}.filter-row label:nth-child(3){grid-column:auto}.calendar-heading h2{font-size:18px}}
@media(max-width:760px){.queue-item{grid-template-columns:1fr}.queue-form{grid-template-columns:1fr 1fr}.queue-form select{grid-column:1/-1}}
@media(max-width:760px){.dashboard-filter{display:grid;grid-template-columns:1fr 1fr;gap:10px}.dashboard-filter label{min-width:0}.dashboard-filter .btn{grid-column:1/-1}.dashboard-charts{grid-template-columns:1fr}.chart-card{min-height:290px}.bar-chart{height:205px;gap:3px}.bar-item i{width:65%}.donut{width:150px;height:150px}.reservation-edit .edit-actions{position:sticky;bottom:8px;background:#fff;padding:10px 0}}
@media(max-width:760px){.total-timeline .structure-col{width:155px!important;min-width:155px!important;max-width:155px!important}.structure-link>span{max-width:92px!important}.total-timeline{min-width:calc(155px + var(--days) * 39px)}.total-timeline .timeline-head,.total-timeline .timeline-row{grid-template-columns:155px repeat(var(--days),39px)}}

/* Tema AffittoBreveBnB V1.2.8: palette ricavata dal logo ufficiale #ea5c64. */
.sidebar{background:linear-gradient(180deg,#fff 0%,#fffafa 100%)}
.side-brand{color:var(--navy)}
.brand-logo{width:52px;height:52px;object-fit:contain;filter:drop-shadow(0 7px 11px #ea5c6433)}
.side-brand>span:last-child span{color:var(--primary)}
.brand-words{display:inline-flex!important;align-items:baseline;gap:5px;white-space:nowrap}.brand-words i,.brand-words b,.brand-words em{font:inherit;font-style:normal;font-weight:800}.brand-words i,.brand-words em{color:var(--primary)}.brand-words b{color:var(--navy)}
.side-nav a:hover,.side-nav a.active{background:var(--primary-soft);color:var(--primary-dark)}
.side-nav a.active i{background:var(--primary);color:#fff;box-shadow:0 4px 10px #ea5c6440}
.topbar{border-bottom-color:var(--primary-border)}
.quick-add,.btn{box-shadow:0 5px 14px #ea5c6430}
.quick-add:hover,.btn:hover{background:var(--primary-dark)}
.avatar{background:#ffe4e6;color:#9f2f38}
.stat:after{background:var(--primary-soft)}
input:focus,select:focus,textarea:focus{border-color:#ee858b;box-shadow:0 0 0 3px var(--primary-soft)}
.pill{background:var(--primary-soft);color:#a43740}
.calendar-toolbar>a.active{background:var(--primary-soft);color:var(--primary-dark)}
.total-timeline .timeline-head>div.today{background:#fff0f1;box-shadow:inset 0 -3px var(--primary)}
.property-day.is-today{border-color:var(--primary);background:#fff8f8}
.property-day>header span{background:var(--primary)}
.occupancy i{background:var(--primary)}
.auth{background:linear-gradient(145deg,#3a2023 0%,#9f3038 50%,#ea5c64 100%)}
.hero{background:linear-gradient(135deg,#5f252a,#ea5c64)}
.dashboard-stat .stat-icon{background:var(--primary-soft);color:var(--primary-dark)}
.dashboard-stat small{color:var(--primary-dark)}
.bar-item i{background:linear-gradient(#f3a0a5,var(--primary))}
.donut{background:conic-gradient(var(--primary) calc(var(--pct)*1%),#eadfe0 0)}
.chart-legend i{background:var(--primary)}
.login-brand img{object-fit:contain;filter:drop-shadow(0 7px 12px #ea5c6438)}
@media(max-width:760px){.brand-logo{width:48px;height:48px}.sidebar{background:#fff}}

/* Filtri automatici elenco prenotazioni V1.2.10 */
.dashboard-filter{flex-wrap:wrap}.auto-filter-note{color:var(--muted);align-self:center;margin-left:auto}.dashboard-list-filter{display:grid;grid-template-columns:repeat(5,minmax(135px,1fr));align-items:end}.dashboard-list-filter label{min-width:0}.status-pill{font-weight:750;background:#ecfdf3;color:#067647}
@media(max-width:1100px){.dashboard-list-filter{grid-template-columns:repeat(3,minmax(135px,1fr))}.dashboard-list-filter .auto-filter-note{grid-column:1/-1;margin-left:0}}
@media(max-width:760px){.dashboard-list-filter{grid-template-columns:1fr 1fr}.dashboard-list-filter .auto-filter-note{grid-column:1/-1}.dashboard-filter .auto-filter-note{grid-column:1/-1;margin-left:0}.dashboard-list td[data-label="Nome referente"]{font-weight:700}}
@media(max-width:420px){.dashboard-list-filter{grid-template-columns:1fr}}
.guest-filters{display:grid;grid-template-columns:minmax(220px,2fr) repeat(3,minmax(145px,1fr));gap:12px;align-items:end}.guest-filters label{margin:0}.guest-list .btn{padding:8px 11px;font-size:12px}.check-row{margin:16px 0;display:flex;align-items:center;gap:8px}.check-row input{margin:0}.guest-edit .edit-actions{margin-top:18px}
@media(max-width:760px){.guest-filters{grid-template-columns:1fr 1fr}.guest-filters label:first-of-type{grid-column:1/-1}.guest-edit .edit-actions{position:sticky;bottom:8px;background:#fff;padding:10px 0}}
@media(max-width:420px){.guest-filters{grid-template-columns:1fr}.guest-filters label:first-of-type{grid-column:auto}}
.total-timeline{--half-day:21.5px}.total-timeline .timeline-row{min-height:62px}.total-timeline .reservation-bar{display:flex;align-items:center;gap:8px;height:38px;margin-left:3px;margin-right:3px;padding:7px 10px;border-radius:9px}.total-timeline .reservation-bar.starts-half{margin-left:calc(var(--half-day) + 3px)}.total-timeline .reservation-bar.ends-half{margin-right:calc(var(--half-day) + 3px)}.total-timeline .reservation-bar b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.total-timeline .reservation-bar span{flex:0 0 auto;margin-left:auto;padding:3px 6px;border-radius:6px;background:#ffffff2e;font-size:10px;font-weight:800}.property-event small{font-weight:650}
@media(max-width:760px){.total-timeline{--half-day:19.5px}.total-timeline .timeline-row{min-height:58px}.total-timeline .reservation-bar{height:34px;padding:6px 8px;gap:5px}.total-timeline .reservation-bar span{font-size:9px;padding:2px 4px}}
.planner-controls{position:sticky;top:82px;z-index:24;display:grid;grid-template-columns:150px 150px 130px minmax(260px,1fr) auto auto;gap:12px;align-items:end}.planner-controls label,.single-calendar-controls label{margin:0}.planner-controls small{display:block;color:var(--muted);font-size:10px;margin-top:2px}.planner-controls select{margin-top:5px}.planner-controls .planner-structures select{height:72px;padding:5px 10px}.planner-controls .btn{height:42px;margin-bottom:1px}.hotel-month{margin:0 0 28px;border:1px solid #d5dce3;border-radius:14px;background:#eef2f5;box-shadow:0 8px 20px #10182814;overflow:auto}.hotel-month>h2{position:sticky;left:0;width:230px;margin:0 0 0 230px;padding:12px 18px;background:#fff;border:1px solid var(--line);border-top:0;border-radius:0 0 10px 10px;text-align:center;font-size:19px;z-index:15}.hotel-grid{min-width:calc(230px + (var(--days) * 58px));display:grid;grid-template-columns:230px calc(var(--days) * 58px)}.hotel-left-head{position:sticky;left:0;z-index:22;height:72px;background:#fff;display:grid;place-items:center;border-right:2px solid #cfd6dc;border-bottom:1px solid var(--line);font-size:17px;font-weight:850;box-shadow:5px 0 10px #10182817}.hotel-days{display:grid;grid-template-columns:repeat(var(--days),58px);height:72px;background:#fff;border-bottom:1px solid var(--line)}.hotel-day-head{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-right:1px solid #e7eaee}.hotel-day-head small{text-transform:uppercase;color:var(--muted);font-size:9px}.hotel-day-head b{font-size:15px}.hotel-day-head.weekend{background:#fff8f0}.hotel-day-head.today{background:#fff0f1;box-shadow:inset 0 -3px var(--primary)}.hotel-room{position:sticky;left:0;z-index:21;height:54px;background:#fff;color:var(--text);display:flex;flex-direction:column;justify-content:center;padding:0 14px;border-right:2px solid #cfd6dc;border-bottom:1px solid var(--line);font-size:13px;font-weight:850;box-shadow:5px 0 10px #10182817;overflow:hidden}.hotel-room small{color:var(--muted);font-size:9px;margin-top:2px}.hotel-row{height:54px;position:relative;border-bottom:1px solid var(--line);overflow:hidden}.hotel-day-cells{display:grid;grid-template-columns:repeat(var(--days),58px);height:100%}.hotel-day-cells i{display:block;background:#fff;border-right:1px solid #e0e5e9}.hotel-day-cells i.weekend{background:#fffaf5}.hotel-day-cells i.today{background:#fff2f3}.hotel-bookings{position:absolute;inset:0;z-index:3}.hotel-booking{position:absolute;top:7px;height:40px;min-width:26px;border-radius:14px;display:flex;align-items:center;gap:7px;padding:4px 9px 4px 4px;color:#fff!important;box-shadow:0 2px 6px #1018283d;overflow:hidden;white-space:nowrap}.hotel-booking b{min-width:0;overflow:hidden;text-overflow:ellipsis}.hotel-booking>span{flex:0 0 auto;margin-left:auto;font-size:10px;font-weight:850;padding:3px 5px;border-radius:6px;background:#ffffff2d}.planner-portal{width:28px;height:28px;min-width:28px;border-radius:9px;background:#ffffffeb!important;color:#182230;display:grid;place-items:center;font-style:normal;font-weight:900}.planner-portal.booking{color:#1256a0}.planner-portal.airbnb{color:#d92d20}.planner-portal.direct{color:#067647}.single-calendar-controls{position:sticky;top:82px;z-index:24;display:grid;grid-template-columns:minmax(240px,2fr) 180px 130px 1fr;gap:12px;align-items:end}.single-calendar-controls>small{color:var(--muted);padding:0 0 12px}.six-months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.compact-month{margin:0;overflow:auto}.compact-month h2{text-align:center;margin:0 0 14px}.compact-grid{display:grid;grid-template-columns:repeat(7,minmax(78px,1fr));min-width:630px;gap:4px}.compact-head{text-align:center;color:var(--muted);font-size:11px;text-transform:uppercase;padding:7px}.compact-empty{min-height:92px}.compact-day{position:relative;min-height:92px;border:1px solid var(--line);border-radius:9px;background:#fff;overflow:hidden}.compact-day.weekend{background:#fffaf5}.compact-day.today{outline:2px solid var(--primary);outline-offset:-2px}.compact-day>strong{position:relative;z-index:5;display:grid;place-items:center;width:25px;height:25px;margin:5px;border-radius:50%;background:#ffffffdc;font-size:12px}.compact-fill{position:absolute;z-index:1;top:0;bottom:0}.compact-fill.full{left:2px;right:2px}.compact-fill.left{left:2px;width:calc(50% - 4px);border-radius:8px 0 0 8px}.compact-fill.right{right:2px;width:calc(50% - 4px);border-radius:0 8px 8px 0}.compact-day>small{position:absolute;z-index:5;left:5px;right:5px;bottom:5px;padding:3px 4px;border-radius:5px;background:#ffffffe8;color:#344054;font-size:8px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:1100px){.planner-controls{grid-template-columns:repeat(3,1fr)}.planner-controls .planner-structures{grid-column:1/-1}.six-months{grid-template-columns:1fr}}
@media(max-width:760px){.planner-controls,.single-calendar-controls{position:static;grid-template-columns:1fr 1fr}.planner-controls .planner-structures,.single-calendar-controls label:first-of-type{grid-column:1/-1}.planner-controls .btn{height:40px}.hotel-month{margin-left:-12px;margin-right:-12px;border-radius:0}.hotel-grid{grid-template-columns:160px calc(var(--days) * 50px);min-width:calc(160px + (var(--days) * 50px))}.hotel-month>h2{margin-left:160px;width:180px}.hotel-days{grid-template-columns:repeat(var(--days),50px)}.hotel-day-cells{grid-template-columns:repeat(var(--days),50px)}.hotel-room{font-size:11px;padding:0 9px}.hotel-booking{font-size:10px;gap:4px;padding-right:6px}.hotel-booking>span{font-size:8px}.planner-portal{width:25px;height:25px;min-width:25px}.single-calendar-controls>small{grid-column:1/-1;padding:0}.six-months{gap:12px}.compact-month{margin-left:-12px;margin-right:-12px;border-radius:0}.compact-grid{grid-template-columns:repeat(7,82px);min-width:602px}}
.reservation-people{margin-top:22px}.people-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}.people-head h2{margin:0 0 4px}.people-head p{margin:0;color:var(--muted)}.people-head>span{flex:0 0 auto;padding:6px 10px;border-radius:99px;background:var(--primary-soft);color:var(--primary-dark);font-weight:800}.people-list{border:1px solid var(--line);border-radius:11px;overflow:hidden}.person-row{display:grid;grid-template-columns:36px minmax(180px,1fr) minmax(220px,1.5fr) auto;gap:12px;align-items:center;padding:12px 14px;border-bottom:1px solid var(--line);background:#fff}.person-row:last-child{border-bottom:0}.person-row.is-referent{background:#fff8f8}.person-index{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#eef2f6;font-weight:850}.person-row.is-referent .person-index{background:var(--primary);color:#fff}.person-row b,.person-row small,.person-contacts span{display:block}.person-row small{color:var(--primary-dark);font-weight:800;margin-top:2px}.person-contacts{color:var(--muted);font-size:12px}.person-row em{color:var(--muted);font-size:11px;font-style:normal}.person-row .btn{padding:8px 11px;font-size:12px}
@media(max-width:760px){.people-head{display:block}.people-head>span{display:inline-block;margin-top:9px}.person-row{grid-template-columns:34px 1fr auto}.person-contacts{grid-column:2/-1}.person-row em{grid-column:3;grid-row:1}.person-row .btn{grid-column:3;grid-row:1}}
.guest-documents{margin-top:20px}.documents-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:15px}.documents-head h2{margin:0 0 4px}.documents-head p{margin:0;color:var(--muted)}.documents-head>span{padding:6px 10px;border-radius:99px;background:var(--primary-soft);color:var(--primary-dark);font-weight:800}.document-upload{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:12px;align-items:end;padding:14px;border:1px dashed var(--primary-border);border-radius:11px;background:#fffafa;margin-bottom:16px}.document-upload label{margin:0}.document-upload small{display:block;color:var(--muted);margin-top:5px}.document-upload .btn{height:42px;margin-bottom:18px}.documents-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.document-card{display:grid;grid-template-columns:86px minmax(0,1fr);gap:12px;padding:10px;border:1px solid var(--line);border-radius:11px;background:#fff}.document-preview{width:86px;height:72px;border-radius:8px;overflow:hidden;background:#f2f4f7;display:grid;place-items:center}.document-preview img{width:100%;height:100%;object-fit:cover}.pdf-icon{display:grid;place-items:center;width:48px;height:54px;border-radius:6px;background:#fff;color:#b42318;font-weight:900;border:1px solid #fecdca}.document-card b,.document-card small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-card small{color:var(--muted);font-size:10px;margin-top:4px}.document-actions{display:flex;align-items:center;gap:9px;margin-top:10px;font-size:11px;font-weight:750}.document-actions form{margin:0}.document-actions button{padding:0;border:0;background:none;color:#b42318;font:inherit;cursor:pointer}.guest-list td[data-label="Allegati"] .pill{white-space:nowrap}
@media(max-width:1100px){.documents-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.documents-head{display:block}.documents-head>span{display:inline-block;margin-top:8px}.document-upload{grid-template-columns:1fr}.document-upload .btn{margin:0}.documents-grid{grid-template-columns:1fr}.document-card{grid-template-columns:74px minmax(0,1fr)}.document-preview{width:74px;height:66px}}
.settings-tabs{display:flex;gap:8px;margin:-6px 0 18px;overflow:auto}.settings-tabs a{padding:10px 14px;border-radius:9px;background:#fff;border:1px solid var(--line);font-weight:750;white-space:nowrap}.settings-title{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.settings-title h2{margin:0 0 4px}.settings-title p{margin:0;color:var(--muted)}.settings-title>span{padding:6px 10px;border-radius:99px;background:var(--primary-soft);color:var(--primary-dark);font-weight:800;white-space:nowrap}.settings-create{border:1px dashed var(--primary-border);border-radius:11px;padding:14px;margin-bottom:16px;background:#fffafa}.settings-create summary{cursor:pointer;font-weight:800;color:var(--primary-dark)}.settings-create form{margin-top:15px}.settings-structure-list{display:grid;gap:8px}.settings-structure{display:grid;grid-template-columns:12px minmax(180px,1fr) auto auto;align-items:center;gap:12px;padding:11px 13px;border:1px solid var(--line);border-radius:10px;background:#fff}.settings-structure>i{width:11px;height:38px;border-radius:6px}.settings-structure b,.settings-structure small{display:block}.settings-structure small{color:var(--muted);margin-top:3px}.settings-structure.is-inactive{opacity:.68;background:#f8f8f8}.structure-status{font-size:11px;font-weight:850;padding:5px 8px;border-radius:99px;background:#ecfdf3;color:#067647}.is-inactive .structure-status{background:#f2f4f7;color:#667085}.settings-structure .btn{padding:8px 11px;font-size:11px}.welock-import{display:grid;grid-template-columns:minmax(280px,1fr) auto;align-items:end;gap:12px;padding:14px;border:1px dashed var(--primary-border);border-radius:11px;background:#fffafa;margin-bottom:16px}.welock-import label{margin:0}.welock-import small{display:block;color:var(--muted);margin-top:5px}.welock-import .btn{height:42px;margin-bottom:28px}.welock-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.welock-card{border:1px solid var(--line);border-radius:11px;padding:14px;background:#fff}.welock-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.welock-card header small{color:var(--primary-dark);font-weight:800}.welock-card h3{margin:3px 0 0}.welock-card header>span{font-size:11px;color:var(--muted)}.welock-card>p{color:var(--muted)}.welock-card dl{display:grid;grid-template-columns:1fr 1fr;gap:8px}.welock-card dl>div{padding:8px;border-radius:8px;background:#f8f9fa}.welock-card dt{font-size:9px;color:var(--muted);text-transform:uppercase}.welock-card dd{margin:3px 0 0;font-weight:750}.welock-card details{margin-top:10px}.welock-card summary{cursor:pointer;font-weight:750;color:var(--primary-dark)}.lock-codes{padding:10px;border-radius:9px;background:#fff8f8}.lock-codes>div{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid var(--primary-border)}.lock-codes>div:last-child{border:0}.lock-codes code{font-size:13px;color:#101828}.btn:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:760px){.settings-title{display:block}.settings-title>span{display:inline-block;margin-top:8px}.settings-structure{grid-template-columns:9px 1fr auto}.settings-structure>form{grid-column:2/-1}.settings-structure .btn{width:100%}.welock-import{grid-template-columns:1fr}.welock-import .btn{margin:0}.welock-list{grid-template-columns:1fr}.welock-card dl{grid-template-columns:1fr}}
.public article img{max-width:100%;height:auto;border-radius:12px}.public article figure{max-width:100%;margin:1rem 0}.public article figcaption{color:var(--muted);font-size:.9rem}
.settings-tabs{position:sticky;top:84px;z-index:24;padding:9px;background:#f8f4f4f2;backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 20px #392f3010}.settings-tabs a{flex:1;text-align:center}.settings-tabs a.active{color:#fff;background:var(--primary);border-color:var(--primary)}.settings-panel[hidden],.settings-structure[hidden],#structureEmpty[hidden]{display:none!important}.structure-filters{display:grid;grid-template-columns:minmax(240px,1fr) 210px auto;align-items:end;gap:12px;padding:14px;margin-bottom:12px;border:1px solid var(--line);border-radius:11px;background:#fafafa}.structure-filters label{margin:0}.structure-filters small{padding-bottom:12px;color:var(--muted);white-space:nowrap}.structure-color-help{display:flex;align-items:center;gap:9px;margin:0 0 14px;padding:10px 12px;border-radius:9px;background:#fff8e8;color:#6b5419;font-size:12px}.structure-color-help i{width:8px;height:28px;flex:0 0 auto;border-radius:6px;background:linear-gradient(#ea5c64 0 33%,#e9b949 33% 66%,#292323 66%)}
@media(max-width:760px){.settings-tabs{top:76px;padding:7px}.settings-tabs a{padding:9px 8px}.structure-filters{grid-template-columns:1fr}.structure-filters small{padding:0}.structure-color-help{align-items:flex-start}}

/* WeLock V1.2.22 */
.welock-filters{display:grid;grid-template-columns:minmax(240px,1fr) 220px auto;align-items:end;gap:12px;padding:14px;margin:0 0 14px;border:1px solid var(--line);border-radius:11px;background:#fafafa}.welock-filters label{margin:0}.welock-filters small{padding-bottom:12px;color:var(--muted);white-space:nowrap}.welock-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px}.welock-table{width:100%;min-width:1050px;border-collapse:collapse}.welock-table thead{position:sticky;top:0;z-index:2}.welock-table th{padding:12px 11px;background:#372f30;color:#fff;text-align:left;font-size:11px;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}.welock-table td{padding:11px;border-bottom:1px solid #ece7e7;vertical-align:middle}.welock-table tbody tr:nth-child(odd){background:#fff}.welock-table tbody tr:nth-child(even){background:#fff6f6}.welock-table tbody tr:hover{background:#ffeded}.welock-table tr[hidden]{display:none}.welock-table td:first-child{min-width:170px}.welock-table td:nth-child(2){min-width:220px;max-width:360px}.welock-table td:last-child{text-align:right}.welock-table b,.welock-table small{display:block}.welock-table small{margin-top:3px;color:var(--muted)}.welock-table code{font-size:12px;white-space:nowrap}.welock-photo-link,.welock-photo-pending{display:inline-flex;align-items:center;min-height:30px;padding:5px 8px;border-radius:7px;font-size:11px;font-weight:800}.welock-photo-link{background:#ecfdf3;color:#067647}.welock-photo-pending{background:#fff1d6;color:#8a5b00}.welock-edit textarea{min-height:120px}.welock-photo-edit{display:flex;align-items:end;gap:12px;flex-wrap:wrap;padding:14px;margin:15px 0;border:1px solid var(--line);border-radius:11px;background:#fafafa}.welock-photo-edit label{margin:0;min-width:min(100%,300px)}.welock-photo-edit .notice{width:100%;margin:0}.check-label{display:flex!important;align-items:center;gap:7px;min-width:0!important}.check-label input{width:auto}.danger-zone{margin-top:18px;border-color:#f3a5aa;background:#fff8f8}.danger-zone h2{margin-top:0;color:#b42318}.btn.danger{background:#b42318;color:#fff;border-color:#b42318}.welock-zip-form{display:grid;grid-template-columns:1fr auto;align-items:end;gap:12px;margin-top:16px}.welock-zip-form label{margin:0}
.welock-filter-counts{display:flex;align-items:center;gap:8px;padding-bottom:7px!important}.welock-filter-counts span{padding:6px 9px;border-radius:99px;background:#ecfdf3;color:#067647}.welock-filter-counts span:last-child{background:#f2f4f7;color:#667085}
@media(max-width:760px){.welock-filters{grid-template-columns:1fr}.welock-filters small{padding:0}.welock-table-wrap{margin-left:-16px;margin-right:-16px;border-radius:0}.welock-table th,.welock-table td{padding:10px 9px}.welock-photo-edit{align-items:stretch}.welock-photo-edit .btn{width:100%;text-align:center}.welock-zip-form{grid-template-columns:1fr}}
.blog-editor{margin-bottom:18px}.blog-editor>form{margin-top:16px}.blog-content-editor{min-height:320px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.blog-image-field{display:grid;grid-template-columns:minmax(260px,1fr) minmax(240px,360px);gap:16px;align-items:start;margin-top:14px}.blog-current-image{border:1px solid var(--line);border-radius:11px;padding:10px;background:#fafafa}.blog-current-image img{display:block;width:100%;height:180px;object-fit:cover;border-radius:8px;margin-bottom:8px}.blog-admin-list{display:grid;gap:12px}.blog-admin-card{display:grid;grid-template-columns:190px minmax(0,1fr) auto;align-items:center;gap:18px;padding:14px}.blog-admin-thumb{height:118px;border-radius:10px;overflow:hidden;background:#f2f4f7;display:grid;place-items:center;color:var(--muted);font-size:12px}.blog-admin-thumb img{width:100%;height:100%;object-fit:cover}.blog-admin-copy small{color:var(--primary-dark);font-size:10px;font-weight:850}.blog-admin-copy h2{margin:5px 0;font-size:20px}.blog-admin-copy p{margin:0;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.blog-admin-actions{display:flex;gap:8px}.blog-public-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.blog-public-card{padding:0;overflow:hidden}.blog-public-image{display:block;height:260px;background:#f2f4f7}.blog-public-image img{width:100%;height:100%;object-fit:cover;border-radius:0}.blog-public-card>div{padding:20px}.blog-public-card small{color:var(--muted)}.blog-public-card h2{margin:7px 0}.blog-post-hero>a{color:#fff}.blog-post{max-width:980px;margin:auto}.blog-post-cover{display:block;width:100%;max-height:520px;object-fit:cover;border-radius:12px;margin-bottom:24px}.blog-post-intro{font-size:18px;color:var(--muted);font-weight:600}.blog-post-content{font-size:16px;line-height:1.7}.blog-post-content img{max-width:100%;height:auto}
@media(max-width:760px){.blog-image-field{grid-template-columns:1fr}.blog-admin-card{grid-template-columns:92px minmax(0,1fr)}.blog-admin-thumb{height:82px}.blog-admin-actions{grid-column:1/-1}.blog-admin-actions .btn{flex:1}.blog-public-list{grid-template-columns:1fr}.blog-public-image{height:210px}}

/* Portale ospite e cronologia conversazione */
.conversation{display:flex;flex-direction:column;gap:12px;margin:20px 0;max-height:600px;overflow:auto;padding:6px}
.message{max-width:min(88%,650px);padding:12px 16px;border-radius:18px;background:#edf2fb;overflow-wrap:anywhere}
.message p{margin:8px 0;white-space:normal}
.message small{font-size:.8rem;color:#64748b}
.staff-message{align-self:flex-start}
.guest-message{align-self:flex-end;background:#e2f8f4}
.manual-contact{border-top:1px solid #ddd;margin-top:24px;padding-top:18px}
.manual-contact .btn{margin:0 8px 12px 0}
.inline-form{display:inline-block;margin-left:12px}
.public fieldset.guest{border:1px solid #d9e0ed;border-radius:16px;margin:20px 0;padding:18px}
.public fieldset.guest legend{font-weight:700;padding:0 8px}
.public .card{margin:18px auto}
.public .conversation{max-height:480px}
@media(max-width:600px){.message{max-width:95%}.inline-form{display:block;margin:8px 0}}

/* Inserimento prenotazione dedicato */
.reservation-new-title{margin-bottom:18px}.reservation-new-form{max-width:1100px;margin:0 auto 40px}.reservation-form-section{padding:24px;margin-bottom:18px}.section-heading{display:flex;align-items:flex-start;gap:13px;margin-bottom:22px}.section-heading>span{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:50%;background:var(--primary);color:#fff;font-weight:800}.section-heading h2{margin:1px 0 4px;font-size:1.18rem}.section-heading p{margin:0;color:var(--muted)}.reservation-core-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(180px,1fr);gap:16px}.reservation-core-grid label,.primary-guest-grid label,.portal-grid label,.guest-counts label,.date-time-pair label{margin:0}.structure-search small,.phone-field small{display:block;margin-top:6px;color:var(--muted);font-weight:500}.reservation-dates{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}.date-time-pair{display:grid;grid-template-columns:auto minmax(145px,1fr) minmax(105px,.55fr);align-items:end;gap:10px;padding:14px;border:1px solid #e8e1e2;border-radius:14px;background:#fffafb}.date-time-pair>strong{align-self:center;color:var(--primary);min-width:72px}.guest-counts{display:grid;grid-template-columns:repeat(2,minmax(120px,180px));gap:16px;margin-top:18px}.primary-guest-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.company-field,.phone-field{grid-column:1/-1}.phone-field>span{display:block;font-weight:700;margin-bottom:7px}.phone-field>div{display:grid;grid-template-columns:minmax(135px,180px) 1fr;gap:10px}.portal-grid{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);gap:16px;align-items:end;margin-bottom:16px}.ota-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ota-fields[hidden]{display:none}.reservation-submit{position:sticky;bottom:0;z-index:8;display:flex;justify-content:flex-end;gap:10px;padding:14px 0 max(14px,env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(250,247,247,0),#faf7f7 24%)}.reservation-submit .btn{min-width:170px}.row-actions{display:flex;align-items:center;gap:9px;white-space:nowrap}.row-actions form{margin:0}.row-actions .btn{padding:8px 11px}
@media(max-width:760px){.reservation-new-title h1{font-size:1.65rem}.reservation-new-form{margin-left:-4px;margin-right:-4px}.reservation-form-section{padding:18px 15px}.reservation-core-grid,.reservation-dates,.primary-guest-grid,.portal-grid{grid-template-columns:1fr}.date-time-pair{grid-template-columns:1fr 108px}.date-time-pair>strong{grid-column:1/-1}.guest-counts{grid-template-columns:1fr 1fr}.phone-field>div{grid-template-columns:130px minmax(0,1fr)}.ota-fields{grid-template-columns:1fr}.reservation-submit{margin:0 -4px;padding-left:4px;padding-right:4px}.reservation-submit .btn{flex:1;min-width:0}.row-actions{white-space:normal;flex-wrap:wrap}}
@media(max-width:430px){.phone-field>div{grid-template-columns:1fr}.guest-counts{gap:10px}.reservation-submit .btn{padding-left:10px;padding-right:10px}.top-actions .quick-add{font-size:0}.top-actions .quick-add::after{content:'＋';font-size:1.3rem}}

/* Prenotazioni gerarchiche V1.2.27 */
.reservations-filter{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:12px;align-items:end;padding:16px;margin-bottom:16px}.reservations-filter label{margin:0;font-weight:500}.reservations-filter select,.reservations-filter input{margin-top:6px}.reservations-search{grid-column:span 2}.filter-reset{align-self:center;color:var(--primary-dark);text-decoration:underline;text-underline-offset:3px}.reservation-tree{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}.reservation-results{display:flex;justify-content:flex-end;gap:18px;padding:11px 16px;background:#342e2f;color:#fff;font-weight:400}.reservation-level{margin:0;border:0}.reservation-level>summary{display:grid;grid-template-columns:20px minmax(170px,1fr) auto auto;align-items:center;gap:14px;min-height:58px;padding:10px 16px;border-bottom:1px solid var(--line);cursor:pointer;list-style:none;font-weight:400}.reservation-level>summary::-webkit-details-marker{display:none}.reservation-level>summary:hover{background:#fff7f7}.reservation-year>summary{background:#f9ecee;font-size:1.1rem}.reservation-month>summary{background:#fafafa;padding-left:32px}.reservation-structure>summary{background:#fff;padding-left:48px}.tree-arrow::before{content:'›';display:block;font-size:24px;line-height:1;transition:transform .15s}.reservation-level[open]>summary .tree-arrow::before{transform:rotate(90deg)}.tree-title{min-width:0;color:var(--text);font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tree-count{color:var(--muted);font-size:12px;font-weight:400}.tree-total{min-width:120px;padding:5px 9px;border-radius:7px;background:#eaebee;color:#4b5058;text-align:right;font-weight:400}.tree-children{background:#fff}.structure-reservations{border-bottom:1px solid var(--line)}.reservation-compact-row{display:grid;grid-template-columns:92px minmax(230px,1.6fr) minmax(190px,1fr) 115px 150px;align-items:center;gap:15px;min-height:104px;padding:12px 18px 12px 68px;font-weight:400}.reservation-compact-row:nth-child(odd){background:#fff}.reservation-compact-row:nth-child(even){background:#f6f7f8}.reservation-compact-row:hover{background:#fff1f2}.reservation-svg{display:block;width:88px;height:80px;object-fit:contain;background:#fff;border:1px solid #e5e7eb;border-radius:8px}.reservation-date-tile{display:grid;place-items:center;width:64px;height:64px;margin:auto;border:1px solid var(--primary-border);border-radius:11px;color:var(--primary-dark);font-size:23px;background:#fff}.reservation-date-tile small{display:block;width:100%;padding:3px;text-align:center;background:var(--primary-soft);font-size:9px;text-transform:uppercase}.reservation-primary a,.reservation-primary>span{display:block;color:var(--text);font-size:16px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reservation-primary a:hover{color:var(--primary)}.reservation-primary small{display:block;margin-top:7px;color:var(--muted);font-weight:400}.reservation-tags{display:flex;gap:5px;flex-wrap:wrap}.reservation-tags span{padding:4px 7px;border:1px solid #e5e7eb;border-radius:99px;background:#fff;color:#5e6268;font-size:10px;font-weight:400}.reservation-amount{font-size:16px;color:#4b5058;font-weight:400;text-align:right}.reservation-row-actions{display:flex;justify-content:flex-end;gap:7px}.reservation-row-actions a{padding:7px 9px;border:1px solid var(--primary-border);border-radius:7px;background:#fff;color:var(--primary-dark);font-size:11px;font-weight:400}.reservation-row-actions a:first-child{background:var(--primary);border-color:var(--primary);color:#fff}
.reservation-mode-tabs{display:flex;gap:6px;margin:-4px 0 16px;padding:6px;border:1px solid var(--primary-border);border-radius:13px;background:var(--primary)}.reservation-mode-tabs a{flex:1;padding:11px 14px;border-radius:9px;color:#512b2e;text-align:center;font-weight:750;white-space:nowrap}.reservation-mode-tabs a:hover,.reservation-mode-tabs a.active{background:#fff;color:var(--primary-dark);box-shadow:0 2px 8px #5c20292b}
@media(max-width:1180px){.reservations-filter{grid-template-columns:repeat(3,minmax(150px,1fr))}.reservation-compact-row{grid-template-columns:75px minmax(210px,1.5fr) minmax(150px,1fr) 105px}.reservation-svg{width:72px;height:68px}.reservation-row-actions{grid-column:2/-1;justify-content:flex-start}}
@media(max-width:760px){.reservations-filter{grid-template-columns:1fr 1fr;padding:13px}.reservations-search{grid-column:1/-1}.reservation-results{justify-content:space-between}.reservation-level>summary{grid-template-columns:18px minmax(100px,1fr) auto;padding:10px 11px;gap:8px}.reservation-month>summary{padding-left:19px}.reservation-structure>summary{padding-left:28px}.tree-count{display:none}.tree-total{min-width:94px;font-size:12px}.reservation-compact-row{grid-template-columns:66px minmax(0,1fr) auto;gap:10px;min-height:94px;padding:10px 11px 10px 28px}.reservation-svg{width:64px;height:61px}.reservation-date-tile{width:56px;height:56px}.reservation-primary a,.reservation-primary>span{font-size:14px}.reservation-primary small{font-size:10px;line-height:1.4}.reservation-tags{grid-column:2/-1}.reservation-amount{grid-column:3;grid-row:1;text-align:right;font-size:13px}.reservation-row-actions{grid-column:2/-1}.reservation-row-actions a{flex:1;text-align:center}.filter-reset{padding:10px 0}}
@media(max-width:760px){.reservation-mode-tabs{overflow-x:auto;justify-content:flex-start;margin-left:-12px;margin-right:-12px;border-left:0;border-right:0;border-radius:0;scrollbar-width:none}.reservation-mode-tabs::-webkit-scrollbar{display:none}.reservation-mode-tabs a{flex:0 0 auto;min-width:112px}.reservation-mode-tabs a:nth-child(3){min-width:190px}}
@media(max-width:430px){.reservations-filter{grid-template-columns:1fr}.reservations-search{grid-column:auto}.reservation-year>summary{font-size:1rem}.reservation-compact-row{padding-left:12px}.reservation-tags span:nth-child(3){display:none}}
.reservations-filter-quick{grid-template-columns:minmax(180px,1fr) minmax(150px,.7fr) minmax(220px,1.4fr) auto}.formula-settings{display:grid;gap:14px}.formula-settings input{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.settings-finance-note{color:var(--muted)}#tourist-taxes table input{min-width:125px;margin:0}#tourist-taxes .row-actions{display:flex;gap:6px}.btn.danger{background:#fff;border-color:#dc2626;color:#b91c1c}
#reservations .reservations-filter{display:flex;align-items:flex-end;gap:16px;max-width:760px;margin:20px 0 18px;padding:0}#reservations .reservations-filter label{flex:1 1 210px;margin:0}#reservations .filter-actions{display:flex;align-items:flex-end;gap:12px;flex:0 0 auto}#reservations .filter-actions .btn{white-space:nowrap}
@media(max-width:760px){.reservations-filter-quick{grid-template-columns:1fr}.formula-settings input{font-size:12px}#tourist-taxes .table-wrap,#cleaning-rates .table-wrap{overflow:auto}}
@media(max-width:760px){#reservations .reservations-filter{flex-wrap:wrap;gap:12px}#reservations .reservations-filter label{flex:1 1 145px}#reservations .filter-actions{width:100%;justify-content:flex-start}.filter-actions .btn{flex:1;text-align:center}}

/* Prenotazioni V1.2.24 */
.money-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.operational-grid{margin-top:18px}.reservation-list td>b,.reservation-list td>small{display:block}.reservation-list td>small{margin-top:4px;color:var(--muted)}.table-main-link{display:inline-block;color:var(--navy);font-weight:800;text-decoration:underline;text-decoration-color:var(--primary-border);text-underline-offset:4px}.table-main-link:hover{color:var(--primary)}.status-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:var(--primary-soft);color:var(--primary-dark);font-weight:800;font-size:11px}.reservation-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.summary-card{display:flex;flex-direction:column;gap:5px;border-top:4px solid var(--primary)}.summary-card small{color:var(--muted);font-weight:800}.summary-card strong{font-size:1.3rem;color:var(--navy)}.summary-card span{color:var(--muted)}.detail-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.detail-section-head h2{margin:0}.detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden}.detail-grid>div{background:#fff;padding:14px;min-height:74px}.detail-grid small,.reservation-notes small{display:block;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px}.detail-grid strong{display:block;overflow-wrap:anywhere}.money-details strong{font-size:1.05rem;color:var(--navy)}.detail-links{display:flex;gap:18px;margin-top:16px;font-weight:800}.reservation-notes{margin-top:16px;padding:15px;border-radius:12px;background:#faf7f7}.reservation-notes p{margin:0;white-space:normal}.checkin-send-card{display:flex;align-items:center;gap:14px}.checkin-send-card>div{margin-right:auto}.checkin-send-card h2{margin:0 0 5px}.checkin-send-card p{margin:0;color:var(--muted);max-width:680px}
@media(max-width:1050px){.money-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reservation-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.money-grid{grid-template-columns:1fr}.reservation-list table,.reservation-list tbody,.reservation-list tr,.reservation-list td{display:block}.reservation-list thead{display:none}.reservation-list tr{padding:14px 0;border-bottom:1px solid var(--line)}.reservation-list td{display:grid;grid-template-columns:112px minmax(0,1fr);gap:10px;padding:7px 5px;border:0}.reservation-list td:before{content:attr(data-label);color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase}.reservation-list td .row-actions{grid-column:2}.checkin-send-card{align-items:stretch;flex-direction:column}.checkin-send-card>div{margin-right:0}.checkin-send-card .btn{width:100%}}
@media(max-width:480px){.reservation-summary-grid,.detail-grid{grid-template-columns:1fr}.detail-links{flex-direction:column;gap:8px}.reservation-list td{grid-template-columns:92px minmax(0,1fr)}}
.structures-main-list{display:grid;border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-top:18px}.structure-main-row{display:grid;grid-template-columns:7px minmax(210px,1.4fr) minmax(170px,1fr) minmax(160px,.9fr) auto auto auto;gap:16px;align-items:center;padding:14px 16px;background:#fff;border-bottom:1px solid var(--line)}.structure-main-row:nth-child(even){background:#fff8f8}.structure-main-row:last-child{border-bottom:0}.structure-main-row>i{width:7px;height:44px;border-radius:8px}.structure-main-row small{display:block;color:var(--muted);font-size:.78rem;margin-bottom:3px}.structure-main-row b{font-weight:600}.structure-main-name a{font-size:1rem;font-weight:700;color:var(--ink);text-decoration:none}.structure-main-name a:hover{color:var(--primary)}.structure-main-actions{display:flex;align-items:center;gap:7px}.structure-main-actions form{margin:0}.structure-main-actions .btn{white-space:nowrap}.structure-edit-form{display:grid;gap:16px}.structure-edit-form>.card{margin:0}.structure-edit-form h2{margin:0 0 16px}.structure-edit-form textarea{width:100%}.structure-edit-form .check-row{align-self:end;min-height:46px}.detail-grid a{font-weight:700;color:var(--primary)}
@media(max-width:1100px){.structure-main-row{grid-template-columns:7px minmax(190px,1.4fr) minmax(150px,1fr) auto auto}.structure-main-row>div:nth-of-type(3){display:none}.structure-main-actions{grid-column:2/-1}}
@media(max-width:700px){.structure-main-row{grid-template-columns:6px 1fr auto;gap:10px;padding:13px 10px}.structure-main-row>div:nth-of-type(2),.structure-main-row>div:nth-of-type(3),.structure-main-row>.pill{display:none}.structure-main-row .structure-status{font-size:.72rem}.structure-main-actions{grid-column:2/-1;display:grid;grid-template-columns:repeat(3,1fr)}.structure-main-actions .btn,.structure-main-actions form,.structure-main-actions button{width:100%;text-align:center}.structure-edit-form .grid{grid-template-columns:1fr}.structure-filters{grid-template-columns:1fr}.structure-filters .welock-filter-counts{justify-content:flex-start}}
.structure-main-row[hidden],.welock-row[hidden]{display:none!important}.calendar-color-control{display:grid;grid-template-columns:58px 1fr;gap:9px;align-items:center}.calendar-color-control input[type=color]{width:58px;height:46px;padding:3px;cursor:pointer}.calendar-color-control input[type=text]{text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.guest-instructions-edit textarea{width:100%;min-height:180px}.structure-photo-upload{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:14px;align-items:end;margin:16px 0}.structure-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}.structure-photo-grid article{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.structure-photo-grid article>a{display:block;aspect-ratio:4/3;background:#f4f4f5}.structure-photo-grid img{width:100%;height:100%;object-fit:cover;display:block}.structure-photo-grid article>div{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px}.structure-photo-grid article small{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.structure-photo-grid article b{color:var(--primary);font-size:.8rem}.structure-photo-grid article form{margin:0}.structure-photo-grid article button{border:0;background:transparent;color:var(--primary);padding:0;cursor:pointer;font:inherit;font-size:.82rem}.structure-photo-grid article form:last-child button{color:#a11}.public-structure-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:18px 0}.public-structure-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;display:block}.guest-instructions-card{border-left:5px solid var(--primary)}
.structure-owner-card>a{display:block;max-width:100%;overflow-wrap:anywhere}.structure-owner-name{font-size:1rem;font-weight:750}.structure-owner-phone,.structure-owner-email{margin-top:6px;color:var(--text)!important;font-weight:500!important}.structure-owner-phone:hover,.structure-owner-email:hover{text-decoration:underline;text-underline-offset:3px}
.structure-imported-documents input[type=hidden]{display:none}.structure-document-item span{display:block;max-width:100%;margin-top:5px;color:var(--muted);font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.structure-document-item .document-pending{color:#b45309}.structure-document-link{display:inline-flex!important;align-items:center;min-height:36px;padding:7px 11px;border:1px solid var(--primary-border);border-radius:8px;background:var(--primary-soft);text-decoration:none}.structure-files-import-card{display:flex;align-items:center;gap:20px}.structure-files-import-card>div{margin-right:auto}.structure-files-import-card h2{margin:0 0 6px}.structure-files-import-card p{margin:0;color:var(--muted);max-width:760px}
@media(max-width:700px){.structure-files-import-card{align-items:stretch;flex-direction:column}.structure-files-import-card .btn{width:100%;text-align:center}.documents-head{align-items:flex-start;flex-direction:column}.documents-head .btn{width:100%;text-align:center}}

/* V1.2.63 - la navigazione resta utilizzabile anche su TV con altezza ridotta. */
.sidebar{height:100vh;height:100dvh;overflow:hidden}.side-brand{flex:0 0 auto}.side-nav{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 2px 14px 0;scrollbar-width:thin}.logout{flex:0 0 auto;margin-top:0}
.structure-gallery-item{position:relative}.structure-gallery-item b{position:absolute;inset:0;display:grid;place-items:center;background:#252421a8;color:#fff;font:600 20px Georgia,serif;letter-spacing:.03em}
.message-schedule form{margin-top:14px}.message-template summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer}.message-template summary small{color:var(--muted);font-weight:600}.message-template form{padding-top:18px}.message-template textarea{min-height:150px;width:100%}
@media(max-width:700px){.structure-main-actions{grid-template-columns:repeat(2,1fr)}.structure-photo-upload{grid-template-columns:1fr}.structure-photo-upload .btn{width:100%}.structure-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V1.2.37: Alloggiati e sito pubblico */
.aw-map{display:grid;gap:8px;max-height:500px;overflow:auto}.aw-map form{display:grid;grid-template-columns:minmax(170px,2fr) minmax(150px,1fr) 145px auto;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #e7e7eb}.aw-map select,.aw-map input,.aw-profile input,.aw-profile select{min-width:0}.aw-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 0;border-top:1px solid #ece7e7}.aw-tools form{display:flex;align-items:end;gap:8px}.aw-tools label{margin:0}.aw-profile{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}.aw-profile button{align-self:end}.aw-guest{border:1px solid #e5e2e2;border-radius:12px;margin:20px 0;padding:16px}.aw-candidate{display:block;padding:9px;border-bottom:1px solid #efeded}.aw-submit{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.aw-submit form{margin:0}
.site-body{background:#f8f6f1;color:#252421}.site-nav{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:15px max(18px,calc((100% - 1180px)/2));background:#fffdf9eF;border-bottom:1px solid #e8e2d8;backdrop-filter:blur(10px)}.site-nav>div{display:flex;align-items:center;gap:20px}.site-logo{display:flex;align-items:center;gap:7px;font-weight:800;font-size:19px;white-space:nowrap;color:#987143}.site-logo span{color:#252421}.site-nav-cta{padding:10px 13px;background:#987143;color:#fff!important;border-radius:2px;font-size:13px}.site-hero{min-height:520px;display:grid;place-items:center;padding:clamp(60px,9vw,135px) 20px;text-align:center;color:#fff;background:linear-gradient(110deg,#1e251ccc,#28332593),url('/assets/site-hero.jpg') center/cover,#394436}.site-hero-inner{max-width:760px}.site-hero span,.site-intro>span,.site-city-heading span,.site-bottom>span{display:block;text-transform:uppercase;letter-spacing:.15em;font-size:12px;font-weight:750;color:#b89a70}.site-hero h1{font-family:Georgia,serif;font-size:clamp(39px,5.5vw,72px);font-weight:500;line-height:1.04;margin:18px 0}.site-hero p{font-size:18px;line-height:1.6;margin:0 auto 31px;max-width:590px}.site-hero .btn,.site-bottom .btn{background:#b28a59;color:#fff;border:0;border-radius:1px;padding:14px 23px}.site-wrap{max-width:1180px;margin:auto;padding:78px 20px}.site-intro{text-align:center;max-width:650px;margin:0 auto 56px}.site-intro h2,.site-bottom h2{font-family:Georgia,serif;font-size:clamp(32px,4vw,48px);font-weight:500;line-height:1.15;margin:12px 0}.site-intro p{color:#6c6b66}.site-city{margin:0 0 62px}.site-city-heading{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid #ddd6ca;padding-bottom:14px;margin-bottom:23px}.site-city-heading h2{font:500 35px/1.1 Georgia,serif;margin:6px 0 0}.site-city-heading p{margin:0;color:#74716b;font-size:14px}.site-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.site-card{background:#fff;border:0;border-radius:0;overflow:hidden;box-shadow:0 10px 27px #3430230b;transition:transform .2s}.site-card:hover{transform:translateY(-4px)}.site-card>a img,.site-placeholder{display:block;width:100%;height:245px;object-fit:cover}.site-placeholder{display:grid;place-items:center;background:#d9d5ca;color:#514a3f}.site-card>div{padding:20px 20px 23px}.site-card small{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#987143;font-weight:750}.site-card h3{font:500 25px/1.2 Georgia,serif;margin:8px 0}.site-card p{min-height:50px;color:#696760;line-height:1.5;margin:0 0 18px}.site-text-link{font-size:14px;font-weight:750;color:#73542f}.site-text-link span{font-size:20px;padding-left:5px}.site-bottom{margin-top:10px;padding:55px max(24px,7%);text-align:center;background:#e9e1d4}.site-bottom p{max-width:570px;margin:0 auto 25px;line-height:1.6;color:#625d55}.site-booking{max-width:920px;margin:25px auto;padding:25px}.site-booking .grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.site-honey{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.site-privacy{display:flex;align-items:start;gap:8px;margin:12px 0}.site-privacy input{width:auto}.site-footer{display:flex;justify-content:center;gap:22px;padding:24px;background:#252b23;color:#fff}.site-confirm{max-width:600px;margin:40px auto;text-align:center}.site-body .blog-public-list{max-width:1180px;margin:auto}.site-body .public-structure-gallery img{max-width:100%}
.checkin-progress{position:sticky;top:0;z-index:10;padding:13px;margin:16px 0;border-radius:10px;background:#fff0f1;color:#9e3440;font-weight:750}.checkin-public fieldset.guest[hidden],.checkin-consents[hidden],.checkin-buttons button[hidden]{display:none!important}.checkin-buttons{display:flex;justify-content:space-between;gap:10px;margin-top:20px}.checkin-buttons .btn{min-width:140px}.checkin-public input,.checkin-public select{font-size:16px}.checkin-public .guest{margin:10px 0;padding:18px;border-radius:12px}
.structure-hero{padding:62px 20px 55px;background:#273126;color:#fff;text-align:center}.structure-hero>div{max-width:850px;margin:auto}.structure-hero a{display:inline-block;color:#e8d3b4;font-size:14px;margin-bottom:36px}.structure-hero span{display:block;text-transform:uppercase;letter-spacing:.15em;font-size:12px;color:#d1b188}.structure-hero h1{font:500 clamp(40px,5vw,65px)/1.08 Georgia,serif;margin:13px 0}.structure-hero p{margin:0;color:#e2e4dd}.structure-gallery{max-width:1280px;margin:30px auto 0;padding:0 20px;display:grid;grid-template-columns:2fr 1fr;grid-template-rows:220px 220px;gap:10px}.structure-gallery-item{overflow:hidden;background:#d6d3cb}.structure-gallery .item-0{grid-row:1 / 3}.structure-gallery img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.structure-gallery a:hover img{transform:scale(1.03)}.structure-gallery .item-3,.structure-gallery .item-4,.structure-gallery .item-5,.structure-gallery .item-6{display:none}.structure-wrap{max-width:1120px;margin:0 auto;padding:62px 20px 78px;display:grid;grid-template-columns:minmax(0,1fr) 365px;gap:64px}.structure-content>span{display:block;text-transform:uppercase;letter-spacing:.15em;font-size:12px;font-weight:750;color:#987143}.structure-content h2{font:500 clamp(30px,4vw,45px)/1.16 Georgia,serif;margin:13px 0 23px}.structure-description{font-size:17px;line-height:1.75;color:#55534d}.structure-features{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:35px 0}.structure-features>div{display:flex;gap:12px;border-top:1px solid #d9d3c9;padding-top:17px}.structure-features b{color:#987143}.structure-features p{margin:0;line-height:1.55;color:#66625a}.structure-features strong{color:#2d2a26}.structure-aside .site-booking{margin:0;padding:26px;background:#fff;border:1px solid #e2dbd0;box-shadow:0 12px 28px #3a34230d}.structure-aside .site-booking h2{font:500 28px Georgia,serif;margin:0 0 10px}.structure-aside .site-booking p{line-height:1.5;color:#69645c}.structure-aside .site-booking label{font-size:14px}.structure-aside .site-booking .btn{width:100%;background:#987143;color:#fff;border:0;margin-top:7px}
@media(max-width:850px){.site-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.aw-map form{grid-template-columns:1fr 1fr}.aw-map form strong{grid-column:1/-1}}
@media(max-width:600px){.site-nav{align-items:flex-start;flex-direction:column;gap:8px}.site-nav>div{width:100%;justify-content:space-between}.site-grid,.site-booking .grid,.aw-profile{grid-template-columns:1fr}.site-card>a img,.site-placeholder{height:200px}.site-hero{padding:62px 18px}.aw-map form{grid-template-columns:1fr}.aw-map form strong{grid-column:auto}.aw-tools form{display:grid;grid-template-columns:1fr}.aw-submit form,.aw-submit button{width:100%}.checkin-buttons .btn{flex:1;min-width:0}}
@media(max-width:760px){.site-nav>div{gap:10px;flex-wrap:wrap}.site-nav>div>a:not(.site-nav-cta){font-size:13px}.site-nav-cta{margin-left:auto}.site-city-heading{align-items:start;flex-direction:column;gap:9px}.structure-gallery{padding:0;display:flex;overflow:auto;gap:8px;grid-template:none}.structure-gallery-item,.structure-gallery .item-0{display:block;min-width:84%;height:270px}.structure-gallery .item-3,.structure-gallery .item-4,.structure-gallery .item-5,.structure-gallery .item-6{display:block}.structure-wrap{display:block;padding:44px 20px 56px}.structure-aside{margin-top:38px}.structure-features{grid-template-columns:1fr}.site-footer{flex-wrap:wrap}}
/* Impostazioni: schede ordinate per area funzionale. */
.settings-group{margin:0 0 28px}.settings-group-heading{padding:8px 2px 12px}.settings-group-heading p{margin:0 0 3px;color:#ea5c64;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.settings-group-heading h2{margin:0;font-size:1.35rem}.settings-group-heading span{display:block;margin-top:4px;color:#697386;font-size:.92rem}.settings-group .card{margin-bottom:14px}
.structure-owner-picker{position:relative;display:grid;gap:.55rem}.owner-results{position:absolute;z-index:30;left:0;right:0;top:5.3rem;background:#fff;border:1px solid #e6d9da;border-radius:14px;box-shadow:0 12px 30px rgba(35,25,28,.18);padding:.35rem;max-height:240px;overflow:auto}.owner-result{display:block;width:100%;text-align:left;border:0;background:transparent;padding:.7rem .8rem;border-radius:9px;font:inherit;cursor:pointer}.owner-result:hover,.owner-result:focus{background:#fff0f1}.owner-result-new{font-weight:700;color:#b93c4b}.owner-modal[hidden]{display:none}.owner-modal{position:fixed;inset:0;z-index:1000;background:rgba(34,25,28,.45);padding:1rem;display:grid;place-items:center}.owner-modal>.card{width:min(680px,100%);max-height:90vh;overflow:auto}
.structure-edit-form>.edit-actions{position:fixed;z-index:90;top:78px;right:24px;margin:0;padding:10px;background:rgba(255,255,255,.94);border:1px solid #f0dfe0;border-radius:14px;box-shadow:0 8px 22px rgba(45,26,30,.14)}@media(max-width:700px){.structure-edit-form>.edit-actions{top:auto;bottom:12px;right:12px;left:12px;justify-content:flex-end;padding:8px}.structure-edit-form{padding-bottom:82px}}
.structure-edit-shortcut{position:fixed;top:88px;right:28px;z-index:31;box-shadow:0 8px 22px #10182820}@media(max-width:760px){.structure-edit-shortcut{top:auto;right:12px;bottom:14px;z-index:45;box-shadow:0 10px 25px #1018283b}}

/* V1.2.80 – Area ospiti: chat e check-in pensati prima per lo smartphone. */
.guest-hero{padding:clamp(34px,6vw,70px) 20px 112px;background:radial-gradient(circle at 84% 14%,#ffbdc2 0,transparent 30%),linear-gradient(126deg,#3d1f27,#a53e4c 58%,#ec6570);color:#fff}.guest-hero>div{max-width:970px;margin:auto}.guest-hero span,.eyebrow{display:block;font-size:.73rem;letter-spacing:.12em;font-weight:800}.guest-hero h1{margin:9px 0 8px;font-size:clamp(2rem,4.5vw,3.5rem);letter-spacing:-.035em}.guest-hero p{margin:0;color:#ffecef;font-size:1.05rem}.guest-portal{max-width:970px;margin:-70px auto 0;padding:0 20px 60px}.guest-checkin-card{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:25px 28px;background:#fff;border:1px solid #f2dce0;border-radius:20px;box-shadow:0 16px 38px #481b2520}.guest-checkin-card .eyebrow,.guest-section-heading .eyebrow{color:#b44250}.guest-checkin-card h2,.guest-chat h2{margin:5px 0 7px;font-size:1.45rem;letter-spacing:-.025em}.guest-checkin-card p,.guest-section-heading p{margin:0;color:#657080;line-height:1.5}.guest-chat{margin-top:22px;padding:26px}.guest-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:19px;border-bottom:1px solid #f0e6e8}.chat-status{flex:0 0 auto;color:#147848;background:#e9f8ee;border-radius:999px;padding:7px 10px;font-size:.78rem;font-weight:800}.conversation{display:grid;gap:13px;margin:21px 0}.message{max-width:min(78%,680px);padding:13px 15px;border-radius:17px;box-shadow:0 2px 7px #1a102008}.message small{display:block;color:#718096;font-size:.75rem;font-weight:700}.message p{margin:7px 0 0;white-space:normal;line-height:1.55;overflow-wrap:anywhere}.message.staff-message{justify-self:start;background:#f1f5fb;border-bottom-left-radius:4px}.message.guest-message{justify-self:end;background:#ffe7ea;border-bottom-right-radius:4px}.message.guest-message small{color:#a14552}.message a{color:#9d3546;font-weight:750;text-decoration:underline;text-underline-offset:3px}.guest-composer{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;margin-top:22px;padding:14px;border:1px solid #eadde0;border-radius:16px;background:#fffafa}.guest-composer label{grid-column:1/-1;margin:0;color:#4d5664;font-size:.82rem;font-weight:800}.guest-composer textarea{min-height:74px;resize:vertical;margin:0}.guest-composer .btn{min-height:48px;white-space:nowrap}.guest-instructions-card article{padding:16px 0;border-top:1px solid #f0e6e8}.guest-instructions-card article:first-of-type{border-top:0}.guest-instructions-card h3{margin:0 0 8px;color:#4b2530}
@media(max-width:680px){.guest-hero{padding:34px 16px 92px}.guest-portal{margin-top:-54px;padding:0 12px 38px}.guest-checkin-card{display:grid;gap:15px;padding:20px;border-radius:16px}.guest-checkin-card .btn{width:100%;text-align:center}.guest-chat{padding:18px;border-radius:16px}.guest-section-heading{display:block}.chat-status{display:inline-block;margin-top:12px}.message{max-width:94%;padding:12px}.guest-composer{grid-template-columns:1fr;padding:10px}.guest-composer .btn{width:100%}}
.privacy-page{max-width:860px;padding-top:42px;padding-bottom:60px}.privacy-page h1{margin-top:8px;font-size:clamp(1.8rem,4vw,2.5rem);letter-spacing:-.03em}.privacy-page h2{margin:30px 0 7px;font-size:1.15rem}.privacy-page p{line-height:1.65;color:#4c5563}.privacy-page a{color:#a53e4c;font-weight:750}.invoice-details{margin-top:18px;background:#fffafa;border-color:#f0dfe2}.invoice-details h3{margin-top:0}.invoice-details h3 small{color:#788190;font-weight:500}.invoice-details .check-row{margin:18px 0}.invoice-details [hidden]{display:none!important}


/* V2.0.0 – Scheda prenotazione a dashboard, colori Affitto Breve BnB invariati. */
.reservation-v2-hero{margin:-2px 0 20px;padding:25px 28px 22px;border-radius:20px;background:linear-gradient(135deg,#fff 0,#fff7f8 100%);border:1px solid #f0dfe2;box-shadow:0 10px 28px rgba(77,34,43,.07)}
.reservation-v2-top{display:flex;align-items:flex-start;justify-content:space-between;gap:22px}.reservation-v2-back{display:inline-block;margin-bottom:14px;color:#9f3c49;font-weight:750}.reservation-v2-eyebrow{display:block;color:#b44250;font-size:.76rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.reservation-v2-top h1{margin:5px 0 4px;font-size:clamp(1.8rem,3.4vw,2.7rem);letter-spacing:-.035em}.reservation-v2-top p{margin:0;color:#6d7480}.reservation-v2-actions{display:flex;gap:9px;flex-wrap:wrap}.reservation-v2-dates{display:grid;grid-template-columns:minmax(150px,1fr) 28px minmax(150px,1fr) minmax(160px,.8fr);gap:16px;align-items:center;margin-top:23px;padding:18px 20px;border-radius:16px;background:#4b2530;color:#fff}.reservation-v2-dates>div{display:grid;gap:2px}.reservation-v2-dates small{color:#f3cbd1;font-size:.69rem;font-weight:850;letter-spacing:.1em}.reservation-v2-dates strong{font-size:1.28rem}.reservation-v2-dates span{color:#f8e7ea}.reservation-v2-dates>b{font-size:1.4rem;text-align:center;color:#ef8791}.reservation-v2-total{padding-left:20px;border-left:1px solid rgba(255,255,255,.2)}
.reservation-v2-board{margin:0 0 22px}.reservation-v2-status{display:flex;align-items:center;gap:12px;padding:13px 16px;margin-bottom:12px;border:1px solid #eadde0;border-radius:14px;background:#fff}.reservation-v2-status>div{display:grid}.reservation-v2-status small{font-size:.67rem;color:#7a818c;font-weight:800;letter-spacing:.08em}.reservation-v2-status strong{font-size:1rem}.status-dot{width:12px;height:12px;border-radius:50%;background:#ea5c64;box-shadow:0 0 0 5px #fdebed}.reservation-v2-channel{margin-left:auto;padding:6px 10px;border-radius:999px;background:#fff0f1;color:#a53e4c;font-size:.78rem;font-weight:800}.reservation-v2-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.reservation-v2-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:13px;align-items:center;min-height:100px;padding:17px 18px;border:1px solid #eadde0;border-radius:17px;background:#fff;color:inherit;text-decoration:none;box-shadow:0 4px 14px rgba(45,26,30,.04);transition:.16s ease}.reservation-v2-card:hover{transform:translateY(-2px);border-color:#e8bfc5;box-shadow:0 10px 24px rgba(45,26,30,.09)}.reservation-v2-card>div{display:grid;gap:2px}.reservation-v2-card small{font-size:.68rem;color:#a53e4c;font-weight:850;letter-spacing:.08em}.reservation-v2-card strong{font-size:1rem;color:#34272b}.reservation-v2-card span:not(.reservation-v2-icon){font-size:.84rem;color:#727985}.reservation-v2-card>b{font-size:1.8rem;color:#d95864}.reservation-v2-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fff0f1;color:#b44250;font-weight:900;font-size:1.05rem}.reservation-v2-card.is-ok{border-color:#bfe6d0}.reservation-v2-card.is-ok .reservation-v2-icon{background:#e8f8ef;color:#147848}.reservation-v2-card.is-warn .reservation-v2-icon{background:#fff4e5;color:#9a6215}.reservation-v2-detail{scroll-margin-top:90px}
@media(max-width:760px){.reservation-v2-hero{margin-left:-4px;margin-right:-4px;padding:19px 16px;border-radius:16px}.reservation-v2-top{display:block}.reservation-v2-actions{margin-top:16px}.reservation-v2-actions .btn{flex:1;text-align:center}.reservation-v2-dates{grid-template-columns:1fr 20px 1fr;margin-top:18px;padding:15px 13px;gap:7px}.reservation-v2-dates strong{font-size:1.05rem}.reservation-v2-total{grid-column:1/-1;border-left:0;border-top:1px solid rgba(255,255,255,.2);padding:12px 0 0;margin-top:3px}.reservation-v2-cards{grid-template-columns:1fr}.reservation-v2-card{min-height:88px;padding:14px}.reservation-v2-status{padding:11px 13px}.reservation-v2-channel{max-width:38%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}

/* V2.0.1 – Calendario: struttura responsive, intestazioni fisse, oggi in prima posizione */
.hotel-month{max-width:100%;overscroll-behavior-x:contain;scrollbar-gutter:stable}
.hotel-month>h2{position:sticky;top:0;left:0;margin:0;width:230px;z-index:35;border:0;border-right:2px solid #cfd6dc;border-bottom:1px solid var(--line);border-radius:0;box-shadow:5px 0 10px #10182817}
.hotel-left-head,.hotel-days{position:sticky;top:48px;z-index:30}
.hotel-left-head{z-index:34}
.six-months{max-width:100%;overflow:hidden}
.compact-month{min-width:0;max-width:100%;overflow:hidden}
.compact-grid{width:100%;min-width:0;grid-template-columns:repeat(7,minmax(0,1fr))}
.compact-day,.compact-empty{min-width:0}
.compact-day{min-height:84px}
.compact-day>small{font-size:7px}
@media(max-width:760px){
 .hotel-month>h2{width:160px;margin:0}
 .hotel-left-head,.hotel-days{top:45px}
 .six-months{grid-template-columns:1fr;max-width:100%}
 .compact-month{margin-left:0;margin-right:0;width:100%;max-width:100%;overflow:hidden}
 .compact-grid{grid-template-columns:repeat(7,minmax(0,1fr));min-width:0;width:100%;gap:2px}
 .compact-head{font-size:9px;padding:5px 1px}
 .compact-day{min-height:66px;border-radius:6px}
 .compact-day>strong{width:21px;height:21px;margin:3px;font-size:10px}
 .compact-day>small{left:2px;right:2px;bottom:2px;font-size:6px;padding:2px}
}
/* V2.0.4 – elenco ospiti */
.guest-open-row{cursor:pointer}.guest-open-row:hover td{background:rgba(234,92,100,.045)}.guest-direct-link{position:relative;z-index:2}
\n/* Check-in V2.0.6 - linguaggio grafico reservation_view */\n.checkin-v2{max-width:980px;margin:0 auto;padding-top:22px}.checkin-v2-head{overflow:hidden;margin:0 0 18px;border:1px solid var(--primary-border);border-radius:22px;background:#fff;box-shadow:0 10px 30px rgba(31,41,55,.06)}.checkin-v2-property{padding:24px 26px 18px}.checkin-v2-property small,.checkin-v2-dates small,.checkin-v2-summary small{display:block;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.7px}.checkin-v2-property h1{margin:4px 0 2px;color:var(--navy);font-size:clamp(1.7rem,4vw,2.5rem);line-height:1.05}.checkin-v2-property span{color:var(--muted);font-weight:700}.checkin-v2-dates{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;padding:20px 26px;background:var(--navy);color:#fff}.checkin-v2-dates>div:last-child{text-align:right}.checkin-v2-dates small{color:#d7dce6}.checkin-v2-dates strong{display:block;margin-top:4px;font-size:1.35rem}.checkin-v2-dates span{display:block;margin-top:2px;font-size:.9rem;opacity:.85}.checkin-v2-dates>b{font-size:1.6rem}.checkin-v2-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.checkin-v2-summary>div{padding:16px 20px;background:#fff}.checkin-v2-summary strong{display:block;margin-top:4px;color:var(--navy);font-size:1.05rem}.checkin-v2>.card{border-radius:18px}.checkin-v2 .people-list{margin-top:14px}.checkin-v2 .person-row{border-radius:14px}.checkin-v2 .alert.ok{border-radius:14px}\n@media(max-width:620px){.checkin-v2{padding:12px}.checkin-v2-property{padding:20px 18px 15px}.checkin-v2-dates{gap:9px;padding:16px 18px}.checkin-v2-dates strong{font-size:1.02rem}.checkin-v2-summary>div{padding:13px 10px}.checkin-v2-summary strong{font-size:.9rem}.checkin-v2-summary small{font-size:8px}.checkin-v2>.card{margin-left:0;margin-right:0}}\n
/* V2.0.7 - messaggi e notifiche */
.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;margin-left:8px;padding:0 6px;border-radius:999px;background:var(--primary,#ea5c64);color:#fff;font-size:11px;line-height:1;font-weight:800}.settings-panel#telegram .edit-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.settings-panel#telegram input[type=password]{font-family:inherit}

/* V2.0.9 */
.guest-composer-v209{position:relative!important;display:grid!important;visibility:visible!important;opacity:1!important;margin-top:24px!important;border:2px solid #efc9cf!important;background:#fff!important}.guest-composer-v209 textarea{display:block!important;width:100%!important;min-height:92px!important;background:#fff!important;border:1px solid #cfc6c8!important}.guest-composer-v209 .guest-send{display:inline-flex!important;align-items:center;justify-content:center!important}.guest-chat-help{grid-column:1/-1;color:#7b7074}.conversation{max-height:440px;overflow:auto;scroll-behavior:smooth}
.settings-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.settings-toggle span{font-size:1.15rem;font-weight:800}.settings-toggle b{font-size:1.35rem;transition:transform .2s}.settings-collapsible{display:none;padding:0 22px 22px}.settings-open>.settings-collapsible{display:block}.settings-open>.settings-toggle b{transform:rotate(180deg)}.settings-panel.settings-open,.settings-group.settings-open{scroll-margin-top:90px}.settings-group>.settings-toggle{background:#fff;border-radius:16px}.settings-group>.settings-collapsible>.settings-group-heading{display:none}.cleaning-rates-grid{grid-template-columns:1fr!important}.cleaning-rates-grid>form{width:100%}.telegram-diagnostic{margin-top:14px;overflow-wrap:anywhere}
@media(max-width:680px){.guest-composer-v209{position:sticky!important;bottom:0;z-index:5}.settings-toggle{padding:16px}.settings-collapsible{padding:0 14px 16px}}
/* V2.0.11 · acquisizione documento prima dei dati */
.checkin-ai-capture{border:2px solid var(--primary-border);background:linear-gradient(180deg,#fff,#fffafa)}
.checkin-ai-capture .section-heading,.checkin-ai-data .section-heading{display:flex;gap:12px;align-items:flex-start;margin-bottom:16px}.checkin-ai-capture .section-heading>span,.checkin-ai-data .section-heading>span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--primary);color:#fff;font-weight:900}.checkin-ai-capture .section-heading h3,.checkin-ai-data .section-heading h3{margin:0}.checkin-ai-capture .section-heading p,.checkin-ai-data .section-heading p{margin:4px 0 0;color:var(--muted)}
.ai-document-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px}.ai-document-actions .muted{margin:0}
@media(max-width:700px){.checkin-ai-capture .grid{grid-template-columns:1fr}.ai-document-actions .btn{width:100%}}

/* V2.0.14 - importi proposti */
input.amount-auto{background:#ffe5e5!important;border-color:#e7a3a3!important;}
/* V2.0.15 - impostazioni uniformi, hub messaggi e pagamenti */
body:has(main.wrap .settings-panel) main.wrap>section.card[id],body:has(main.wrap .settings-panel) main.wrap>section.settings-group{width:100%;box-sizing:border-box;margin:0 0 12px!important;padding:0!important;border-radius:16px!important;overflow:hidden}
body:has(main.wrap .settings-panel) .settings-toggle{min-height:68px;padding:18px 22px!important;margin:0!important;border-radius:16px!important}
body:has(main.wrap .settings-panel) .settings-open>.settings-toggle{border-radius:16px 16px 0 0!important}
body:has(main.wrap .settings-panel) .settings-collapsible{padding:0 22px 22px!important}
.nav-badge{vertical-align:middle;margin-left:8px!important}.side-nav a span{display:flex;align-items:center;min-width:0}
.dashboard-hub{margin-top:18px}.dashboard-hub-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:14px}.dashboard-hub-head h2{margin:0 0 4px}.dashboard-hub-head p{margin:0;color:var(--muted)}.dashboard-hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dashboard-hub-grid>a{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:16px;border:1px solid var(--line);border-radius:14px;text-decoration:none;color:inherit;background:#fff}.dashboard-hub-grid>a:hover{border-color:var(--primary)}.dashboard-hub-grid>a>span{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#f8eeee;font-weight:800}.dashboard-hub-grid b,.dashboard-hub-grid small{display:block}.dashboard-hub-grid small{margin-top:3px;color:var(--muted)}.dashboard-hub-grid strong{font-size:1.45rem}.payments-hub .is-coming small{font-style:normal}.payment-provider-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}
@media(max-width:760px){.dashboard-hub-grid{grid-template-columns:1fr}.dashboard-hub-head{align-items:flex-start;flex-direction:column}.dashboard-hub-head .btn{width:100%;text-align:center}}
.communication-shortcuts{display:grid;gap:10px}.communication-shortcuts>a{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;text-decoration:none;color:inherit}.communication-shortcuts>a b{flex:1}.communication-shortcuts>a small{color:var(--muted)}.communication-shortcuts>a span{padding:4px 8px;border-radius:999px;background:var(--primary);color:#fff;font-size:11px;font-weight:800}

/* V2.0.16 Conti proprietari */
.owner-account-list{display:grid;gap:10px}.owner-account-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px;border:1px solid #eadfe0;border-radius:14px;text-decoration:none;color:inherit}.owner-account-row div{display:grid;gap:3px}.owner-account-row small{color:#786d6e}.owner-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;padding:0;overflow:hidden}.owner-totals>div{padding:18px;display:grid;gap:6px;border-right:1px solid #eadfe0}.owner-totals small{text-transform:uppercase;font-weight:700;color:#786d6e}.owner-totals b{font-size:1.35rem}@media(max-width:720px){.owner-account-row{align-items:flex-start;flex-direction:column}.owner-totals{grid-template-columns:1fr}}
/* V2.0.18 - Adempimenti */
.compliance-menu{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px}.compliance-menu a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 18px;border:1px solid var(--border,#e5e7eb);border-radius:14px;background:#fff;text-decoration:none;color:inherit}.compliance-menu a.active{box-shadow:0 0 0 2px rgba(234,92,100,.18);border-color:#ea5c64}.compliance-menu span{min-width:30px;text-align:center;padding:4px 8px;border-radius:999px;background:#f3f4f6;font-weight:700}.compliance-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.compliance-head h2{margin:0}.compliance-status-form{display:flex;gap:6px;align-items:center;min-width:250px}.compliance-status-form select{min-width:130px}.compliance-upload{margin:0}.compliance-table small{white-space:nowrap}
@media(max-width:850px){.compliance-menu{grid-template-columns:1fr 1fr}.compliance-status-form{min-width:0;flex-wrap:wrap}.compliance-head{align-items:flex-start;flex-direction:column}}
@media(max-width:520px){.compliance-menu{grid-template-columns:1fr}}
.dashboard-compliance-menu{margin:16px 0}.dashboard-compliance-menu summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px;list-style:none}.dashboard-compliance-menu summary::-webkit-details-marker{display:none}.dashboard-compliance-menu summary span{display:flex;flex-direction:column;gap:3px}.dashboard-compliance-menu summary small{font-weight:400;color:#6b7280}.dashboard-compliance-menu summary strong{font-size:1.05rem}.dashboard-compliance-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}.dashboard-compliance-links a{display:flex;justify-content:space-between;gap:8px;padding:13px 14px;border:1px solid #e5e7eb;border-radius:12px;text-decoration:none;color:inherit;background:#fff}.dashboard-compliance-links a span{font-weight:700}@media(max-width:850px){.dashboard-compliance-links{grid-template-columns:1fr 1fr}}@media(max-width:520px){.dashboard-compliance-links{grid-template-columns:1fr}}


/* V2.0.19 - impostazioni: schede indipendenti e senza sovrapposizioni */
body:has(main.wrap .settings-panel) main.wrap > section.card[id],
body:has(main.wrap .settings-panel) main.wrap > section.settings-group {
  position:relative; clear:both; isolation:isolate;
}
.settings-collapsible > section.card,
.settings-collapsible > details.card { margin:12px 0!important; width:100%; box-sizing:border-box; }
.settings-test-block { margin-top:22px; padding-top:20px; border-top:1px solid var(--border,#e7e0e0); }
.settings-test-block h3 { margin:0 0 6px; }


/* V2.0.40 · login check-in da QR struttura */
.guest-login-body{margin:0;background:#f8f4f4;color:var(--text)}.guest-login-shell{min-height:100vh;display:grid;place-items:center;align-content:center;padding:28px 16px;background:radial-gradient(circle at 10% 0,#fff0f1 0,transparent 35%),radial-gradient(circle at 100% 100%,#f8eeee 0,transparent 35%),var(--bg)}.guest-login-brand{width:min(100%,520px);display:flex;align-items:center;justify-content:space-between;margin:0 0 16px;padding:0 6px}.guest-login-brand img{width:150px;max-height:54px;object-fit:contain;object-position:left center}.guest-login-brand>span{font-size:.76rem;letter-spacing:.13em;font-weight:900;color:var(--primary-dark)}.guest-login-card{width:min(100%,520px);box-sizing:border-box;background:#fff;border:1px solid var(--line);border-radius:26px;padding:30px;box-shadow:0 22px 60px rgba(80,35,40,.12)}.guest-login-property small{font-size:.72rem;letter-spacing:.12em;font-weight:900;color:var(--primary-dark)}.guest-login-property h1{margin:7px 0 4px;font-size:clamp(1.75rem,6vw,2.35rem);letter-spacing:-.035em;color:var(--navy)}.guest-login-property p{margin:0;color:var(--muted)}.guest-login-progress{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin:25px 0;padding:15px;background:var(--primary-soft);border-radius:17px}.guest-login-progress>div{display:flex;align-items:center;gap:9px;min-width:0}.guest-login-progress b{flex:0 0 32px;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--primary);color:#fff}.guest-login-progress span{display:grid;min-width:0}.guest-login-progress strong{font-size:.9rem}.guest-login-progress small{font-size:.72rem;color:var(--muted)}.guest-login-progress i{font-style:normal;color:#b49ca0}.guest-login-form{display:grid;gap:15px}.guest-login-form label{margin:0;font-weight:800;color:var(--text)}.guest-login-form input{margin-top:7px;min-height:50px;border-radius:13px}.guest-login-form input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.guest-login-button{min-height:52px;margin-top:3px;display:flex;align-items:center;justify-content:center;gap:12px;background:var(--primary)!important;border-color:var(--primary)!important;font-size:1rem}.guest-login-button:hover{background:var(--primary-dark)!important}.guest-login-button span{font-size:1.5rem;line-height:1}.guest-login-help{text-align:center;margin-top:18px}.guest-login-help>a{font-weight:800;color:var(--primary-dark)}.guest-login-help p{margin:16px 0 0;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:.87rem;line-height:1.5}.guest-qr-target input[readonly]{background:#faf7f7;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
@media(max-width:560px){.guest-login-shell{padding:18px 12px;align-content:start}.guest-login-brand{margin-top:10px}.guest-login-brand img{width:132px}.guest-login-card{padding:22px 18px;border-radius:20px}.guest-login-progress{gap:6px;padding:12px}.guest-login-progress b{width:28px;height:28px;flex-basis:28px}.guest-login-progress small{display:none}}

/* V2.0.41 · sito pubblico + accessi multi-porta */
.site-nav{max-width:1240px;margin:auto;padding:18px 24px;display:flex;align-items:center;gap:28px;justify-content:space-between}.site-logo img{height:48px;max-width:210px}.site-nav nav{display:flex;gap:24px}.site-nav nav a,.site-footer a{text-decoration:none;color:inherit}.site-hero{padding:72px max(24px,calc((100vw - 1200px)/2));background:linear-gradient(135deg,#fff3ef,#f6e8e6);min-height:430px;display:flex;flex-direction:column;justify-content:center}.site-hero h1{font-size:clamp(42px,7vw,78px);line-height:.98;max-width:850px;margin:12px 0 20px}.site-hero>div>p{font-size:20px;max-width:650px}.site-search{margin-top:34px;background:#fff;padding:14px;border-radius:18px;display:grid;grid-template-columns:1.4fr 1fr 1fr .7fr auto;gap:10px;box-shadow:0 18px 50px #5d2c2318}.site-search label{margin:0}.site-wrap{max-width:1200px;margin:0 auto;padding:54px 24px}.site-section-title{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:24px}.site-section-title h2{font-size:36px;margin:6px 0}.site-property-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.site-property-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 10px 35px #1f15120f}.site-property-photo{display:block;aspect-ratio:4/3;background:#eee;overflow:hidden}.site-property-photo img{width:100%;height:100%;object-fit:cover}.site-photo-placeholder{height:100%;display:grid;place-items:center}.site-property-card>div{padding:20px}.site-property-card h3{font-size:22px;margin:6px 0}.site-property-card h3 a{text-decoration:none;color:inherit}.site-card-actions{display:flex;gap:8px;margin-top:18px}.site-footer{max-width:1200px;margin:40px auto 0;border-top:1px solid #ddd;padding:36px 24px;display:flex;justify-content:space-between;gap:30px}.site-footer>div:last-child{display:flex;gap:18px}.site-booking-card{position:sticky;top:24px;background:#fff;padding:24px;border-radius:20px;box-shadow:0 18px 60px #1f15121a}.structure-public-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:22px 0}.structure-public-facts>div{padding:14px;border:1px solid #eee;border-radius:12px;text-align:center}.structure-public-facts b{display:block;font-size:22px}.structure-public-facts small{display:block}.structure-legal{margin:24px 0;padding:14px;border-radius:12px;background:#f7f5f3}.guest-access-list{display:grid;gap:14px}.guest-access-step{display:grid;grid-template-columns:46px 1fr;gap:14px;padding:18px;border:1px solid #ece7e4;border-radius:16px}.guest-access-number{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#ea5c64;color:#fff}.guest-access-step h3{margin:3px 0}.guest-access-location{margin:0 0 8px}.guest-access-tech{display:block;margin-top:6px}.access-admin-list{display:grid;gap:12px;margin-top:24px}.access-admin-row{display:grid;grid-template-columns:50px 1fr 180px auto;gap:14px;align-items:start;padding:16px;border:1px solid #e7e2df;border-radius:14px}.access-order{font-size:24px;font-weight:800}.site-thanks{max-width:700px;margin:40px auto;text-align:center;padding:48px}
@media(max-width:850px){.site-nav nav{display:none}.site-hero{padding-top:46px}.site-search{grid-template-columns:1fr 1fr}.site-search label:first-of-type,.site-search button{grid-column:1/-1}.site-property-grid{grid-template-columns:1fr}.site-section-title,.site-footer{align-items:flex-start;flex-direction:column}.structure-public-facts{grid-template-columns:1fr 1fr}.access-admin-row{grid-template-columns:40px 1fr}.access-admin-row>div:nth-child(3),.access-admin-row form{grid-column:2}.site-booking-card{position:static}}

/* V3.0 · mobile-first navigation, forms and structure view */
.smart-back{display:inline-flex;align-items:center;gap:6px;width:max-content;max-width:100%;font-weight:800;text-decoration:none;color:var(--primary);margin-bottom:6px}
.autocomplete-results{position:absolute;z-index:80;left:0;right:0;top:100%;margin-top:4px;max-height:300px;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 36px #10182824;padding:5px}
.autocomplete-results[hidden]{display:none}.autocomplete-results button{display:block;width:100%;border:0;background:#fff;text-align:left;padding:11px 12px;border-radius:8px;font:inherit;color:var(--text);cursor:pointer}.autocomplete-results button:hover,.autocomplete-results button:focus{background:var(--primary-soft);outline:none}
.number-stepper{display:grid;grid-template-columns:46px minmax(0,1fr) 46px;gap:6px;align-items:center}.number-stepper input{text-align:center}.number-stepper button{height:46px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--primary);font-size:1.45rem;font-weight:800;cursor:pointer}
.structure-view-title{align-items:flex-start}.structure-edit-shortcut{position:sticky!important;top:82px;right:auto;z-index:31;box-shadow:0 8px 22px #10182820;white-space:nowrap}
@media(max-width:760px){
 .page-title{gap:10px}.page-title>div{min-width:0}.page-title h1{overflow-wrap:anywhere}
 .structure-view-title{display:flex!important;flex-direction:column!important;align-items:stretch!important}.structure-edit-shortcut{position:static!important;align-self:flex-start!important;width:auto!important;min-width:0!important;padding:9px 13px!important;margin-top:2px!important;box-shadow:none!important}
 .structure-view-title+.card .detail-grid{grid-template-columns:1fr!important}.detail-grid>div{min-width:0;overflow-wrap:anywhere}.detail-grid strong,.detail-grid span,.detail-grid a{overflow-wrap:anywhere;word-break:break-word}
 .date-time-pair{grid-template-columns:minmax(0,1fr) minmax(112px,.62fr)!important;column-gap:16px!important}.date-time-pair label{min-width:0}.date-time-pair input{width:100%;min-width:0}
 .reservation-form-section{overflow:visible}.autocomplete-results{max-height:240px}
 .guest-counts{grid-template-columns:1fr 1fr!important}.number-stepper{grid-template-columns:42px minmax(0,1fr) 42px}.number-stepper button{height:48px}
 .operational-grid{grid-template-columns:1fr!important}
}
@media(max-width:430px){.date-time-pair{grid-template-columns:minmax(0,1fr) minmax(105px,.7fr)!important;gap:12px!important}.guest-counts{grid-template-columns:1fr!important}}

/* V3.0.2 · correzione definitiva data/ora su smartphone */
@media(max-width:760px){
 .reservation-dates{grid-template-columns:1fr!important;gap:14px!important}
 .date-time-pair{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;padding:16px!important}
 .date-time-pair>strong,.date-time-pair>label{grid-column:1/-1!important;width:100%!important;min-width:0!important}
 .date-time-pair input{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
 .bank-import-grid{grid-template-columns:1fr!important}
}

/* V3.0.2 · ripristino grafica Area ospiti approvata */
.guest-login-classic{margin:0;background:#17121a;color:#f4eef2;min-height:100vh}.guest-login-classic .gl-hero{position:relative;background:#ea5c64;color:#fff;padding:42px 22px 150px;overflow:hidden}.guest-login-classic .gl-inner{max-width:820px;margin:0 auto}.guest-login-classic .gl-top{display:flex;justify-content:space-between;align-items:center;gap:18px}.guest-login-classic .gl-brand{display:flex;align-items:center;gap:18px;font-size:27px;font-weight:900}.guest-login-classic .gl-logo{width:84px;height:84px;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:0 4px 16px #0003}.guest-login-classic .gl-logo img{width:70px;height:70px;object-fit:contain}.guest-login-classic .gl-langs{display:flex;gap:4px;padding:5px;background:#ffffff26;border-radius:999px}.guest-login-classic .gl-langs button{border:0;background:transparent;color:#fff;padding:12px 16px;border-radius:999px;font:800 17px/1 inherit;cursor:pointer}.guest-login-classic .gl-langs button.active{background:#fff;color:#d84f58}.guest-login-classic .gl-hero h1{font-size:clamp(64px,10vw,94px);line-height:.95;letter-spacing:-.055em;margin:76px 0 24px;color:#fff}.guest-login-classic .gl-hero p{font-size:26px;line-height:1.42;margin:0;color:#fff}.guest-login-classic .gl-skyline{position:absolute;left:0;right:0;bottom:-1px;height:100px;background:linear-gradient(145deg,transparent 0 12%,#17121a 12% 18%,transparent 18% 27%,#17121a 27% 40%,transparent 40% 61%,#17121a 61% 72%,transparent 72% 87%,#17121a 87%);opacity:1}.guest-login-classic .gl-main{max-width:820px;margin:-92px auto 0;padding:0 22px 42px;position:relative;z-index:2}.guest-login-classic .gl-card{background:#221b25;border:1px solid #4b3a48;border-radius:42px;padding:64px 42px 44px;position:relative;box-shadow:0 20px 50px #0003}.guest-login-classic .gl-card:before{content:"";position:absolute;top:26px;left:50%;width:74px;height:18px;margin-left:-37px;border-radius:999px;background:#17121a}.guest-login-classic .gl-card form{display:grid}.guest-login-classic .gl-card label{font-size:23px;font-weight:800;margin:0 0 10px}.guest-login-classic .gl-card input{width:100%;height:88px;border:0;border-radius:28px;background:#17121a;color:#fff;padding:0 28px;font-size:27px;outline:none;margin:0 0 28px}.guest-login-classic .gl-card input:focus{box-shadow:0 0 0 3px #ea5c64}.guest-login-classic .gl-password{position:relative}.guest-login-classic .gl-password input{padding-right:78px}.guest-login-classic .gl-password button{position:absolute;right:18px;top:18px;width:52px;height:52px;border:0;background:transparent;color:#b8adb9;font-size:28px;cursor:pointer}.guest-login-classic .gl-forgot{text-align:right;margin:2px 0 36px}.guest-login-classic .gl-forgot a{color:#ff929a;font-size:22px;font-weight:800;text-decoration:none}.guest-login-classic .gl-submit{height:90px;border:0;border-radius:28px;background:#ea5c64;color:#fff;font-size:28px;font-weight:900;cursor:pointer}.guest-login-classic .gl-help{margin:28px 0 0;padding:30px 34px;border-radius:28px;background:#472b30;display:flex;gap:22px;align-items:flex-start}.guest-login-classic .gl-help>span{font-size:30px;color:#ea5c64}.guest-login-classic .gl-help strong{display:block;font-size:23px}.guest-login-classic .gl-help p{font-size:20px;line-height:1.5;margin:5px 0 0;color:#f4eef2}.guest-login-classic .version-label{text-align:center;color:#b3a8b5;margin-top:18px}
@media(max-width:620px){.guest-login-classic .gl-hero{padding:24px 18px 125px}.guest-login-classic .gl-top{gap:10px}.guest-login-classic .gl-brand{gap:10px;font-size:17px}.guest-login-classic .gl-logo{width:56px;height:56px}.guest-login-classic .gl-logo img{width:47px;height:47px}.guest-login-classic .gl-langs{gap:1px;padding:3px}.guest-login-classic .gl-langs button{padding:9px 10px;font-size:12px}.guest-login-classic .gl-hero h1{font-size:52px;margin:48px 0 16px}.guest-login-classic .gl-hero p{font-size:17px}.guest-login-classic .gl-main{margin-top:-72px;padding:0 14px 28px}.guest-login-classic .gl-card{border-radius:28px;padding:48px 22px 28px}.guest-login-classic .gl-card:before{top:18px;width:52px;height:13px;margin-left:-26px}.guest-login-classic .gl-card label{font-size:17px}.guest-login-classic .gl-card input{height:62px;border-radius:19px;padding:0 20px;font-size:19px;margin-bottom:20px}.guest-login-classic .gl-password button{right:8px;top:5px}.guest-login-classic .gl-forgot{margin:0 0 24px}.guest-login-classic .gl-forgot a{font-size:16px}.guest-login-classic .gl-submit{height:64px;border-radius:19px;font-size:20px}.guest-login-classic .gl-help{padding:22px;border-radius:22px;gap:14px}.guest-login-classic .gl-help strong{font-size:17px}.guest-login-classic .gl-help p{font-size:15px}}
/* V3.0.3 - validazione date e importazione AI prenotazione */
.reservation-ai-import{border:1px solid rgba(234,92,100,.22)}
.reservation-ai-import .ai-document-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px}
.reservation-ai-import input[type=file]{width:100%}
@media(max-width:760px){.reservation-ai-import .ai-document-actions .btn{width:100%}.reservation-ai-import .ai-document-actions span{display:block;width:100%}}

/* Sito pubblico V3.0.11 */
.site-hero-search{min-height:390px}.site-hero-copy{max-width:760px}.site-hero-search h1{max-width:none}.site-search select{width:100%;min-height:44px}.site-search-note{margin:0 0 24px;padding:16px 18px;border-radius:14px;background:#fff6df;border:1px solid #f0d89a;color:#5d4b1e}.site-property-card .site-card-actions{justify-content:flex-start}.site-property-card .site-text-link{text-decoration:none}.site-blog-hero,.site-blog-post-hero{padding:70px max(24px,calc((100vw - 1200px)/2));background:#f6e8e6}.site-blog-hero span{font-size:12px;letter-spacing:.15em;font-weight:800;color:#987143}.site-blog-hero h1,.site-blog-post-hero h1{font-family:Georgia,serif;font-size:clamp(38px,5vw,62px);font-weight:500;line-height:1.06;max-width:850px;margin:12px 0 18px}.site-blog-hero p{font-size:18px;max-width:680px;color:#625d55}.site-blog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.site-blog-card{border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 10px 35px #1f15120f}.site-blog-card .blog-public-image{height:230px}.site-blog-card>div{padding:20px}.site-blog-card small{font-size:11px;letter-spacing:.1em;color:#987143;font-weight:800}.site-blog-card h2{font:500 25px/1.15 Georgia,serif;margin:8px 0 12px}.site-blog-card h2 a{text-decoration:none;color:inherit}.site-blog-card p{color:#696760;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.site-blog-post-hero>a{color:#73542f;text-decoration:none}.site-blog-post-hero p{color:#6c6b66}
@media(max-width:850px){.site-search{grid-template-columns:1fr 1fr}.site-search label:first-of-type,.site-search label#otherWhereLabel,.site-search button{grid-column:1/-1}.site-blog-grid{grid-template-columns:1fr}.site-blog-hero,.site-blog-post-hero{padding:46px 20px}.site-blog-card .blog-public-image{height:220px}}

/* v3.0.12 public search */
.site-hero-search{background:linear-gradient(180deg,rgba(255,246,241,.94),rgba(250,235,231,.96));color:#18202d;min-height:440px;text-align:center;align-items:center}.site-hero-copy{max-width:900px}.site-hero-copy>span{letter-spacing:.2em;font-weight:800;font-size:12px;color:#b58b58}.site-hero-search h1{font-family:Georgia,serif;font-weight:500;font-size:clamp(48px,6vw,78px);margin:14px 0}.site-hero-copy p{color:#4d5157!important;margin:0 auto;font-weight:500}.site-search-air{width:min(1180px,calc(100% - 32px));margin:54px auto 0;background:#fff;border:1px solid #e4e2e0;border-radius:999px;display:grid;grid-template-columns:1.05fr 1.45fr .85fr auto;align-items:stretch;padding:7px;box-shadow:0 14px 40px rgba(35,31,28,.12);text-align:left}.search-segment{position:relative;padding:10px 22px;min-width:0}.search-segment:not(:first-of-type):before{content:"";position:absolute;left:0;top:15%;height:70%;width:1px;background:#ddd}.search-segment b{display:block;font-size:13px;margin-bottom:3px}.search-segment select,.guest-trigger,.search-dates input{border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;min-height:0!important;height:auto!important;color:#707070;font-size:16px;width:100%;outline:0}.search-dates>div{display:flex;align-items:center;gap:8px}.search-dates label{margin:0;flex:1}.search-dates label:before{display:none}.search-dates input{font-size:14px}.guest-trigger{text-align:left;cursor:pointer}.search-submit{align-self:center;border:0;border-radius:999px;background:#ea4f60;color:#fff;height:54px;padding:0 24px;display:flex;align-items:center;gap:8px;font-size:16px;cursor:pointer;box-shadow:0 8px 20px rgba(234,79,96,.22)}.search-submit span{font-size:26px;line-height:1}.guest-popover{position:absolute;z-index:20;right:-8px;top:72px;width:330px;background:#fff;border-radius:24px;padding:12px 22px;box-shadow:0 18px 55px rgba(20,20,20,.18)}.guest-popover>div{display:flex;align-items:center;justify-content:space-between;padding:18px 0;border-bottom:1px solid #eee}.guest-popover>div:last-child{border:0}.guest-popover strong,.guest-popover small{display:block}.guest-popover small{margin-top:3px;color:#777}.counter{display:flex;align-items:center;gap:12px}.counter button{width:34px;height:34px;border-radius:50%;border:1px solid #ddd;background:#f7f7f7;font-size:20px;cursor:pointer}.counter output{min-width:18px;text-align:center}.site-property-card{transition:transform .18s ease,box-shadow .18s ease}.site-property-card:hover{transform:translateY(-2px);box-shadow:0 16px 42px #1f151218}
@media(max-width:850px){.site-hero-search{min-height:0;padding:44px 18px}.site-hero-search h1{font-size:46px}.site-hero-copy p{font-size:16px!important}.site-search-air{margin-top:32px;width:100%;border-radius:24px;grid-template-columns:1fr;padding:10px}.search-segment{padding:13px 14px;border-bottom:1px solid #eee}.search-segment:not(:first-of-type):before{display:none}.search-submit{width:100%;justify-content:center;border-radius:16px}.guest-popover{position:fixed;left:16px;right:16px;bottom:18px;top:auto;width:auto}.search-dates>div{gap:5px}.search-dates input{font-size:13px}}
/* V3.0.13 BLOG */
.site-blog-hero{background:linear-gradient(135deg,#f9eeeb,#f3dfdb);min-height:330px;display:flex;align-items:center}.site-blog-hero>div{width:min(1200px,100%);margin:auto}.blog-heading{margin-top:44px}.site-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding-bottom:38px}.site-blog-card{border-radius:24px;background:#fff;overflow:hidden;box-shadow:0 14px 44px rgba(34,24,20,.08);border:1px solid rgba(90,70,60,.08)}.site-blog-card .blog-public-image{display:block;height:245px;background:#f2e7e2;overflow:hidden}.site-blog-card .blog-public-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.site-blog-card:hover .blog-public-image img{transform:scale(1.025)}.blog-image-fallback,.blog-cover-fallback{height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding:28px;background:linear-gradient(145deg,#f7e7e4,#e9c7c0);color:#17202e}.blog-image-fallback span,.blog-cover-fallback span{font-size:11px;letter-spacing:.16em;font-weight:800;color:#9b7141}.blog-image-fallback b{font:500 27px/1.08 Georgia,serif;margin-top:8px}.site-blog-card>div{padding:24px}.site-blog-card h2{font:500 27px/1.12 Georgia,serif}.blog-pagination{display:flex;justify-content:center;align-items:center;gap:22px;padding:20px 0 55px}.blog-pagination a{padding:11px 17px;border-radius:999px;background:#fff;border:1px solid #e5ddd8;text-decoration:none;color:#282624}.blog-pagination span{color:#77716b}.blog-article-wrap{background:#fbf9f6;padding:0 20px 70px}.blog-article{max-width:1040px;margin:auto}.blog-article-head{text-align:center;padding:65px 30px 42px}.blog-back{display:inline-block;margin-bottom:30px;color:#745938;text-decoration:none}.blog-kicker{display:block;color:#a37a4a;font-size:12px;letter-spacing:.16em;font-weight:800}.blog-article-head h1{font:500 clamp(42px,6vw,72px)/1.02 Georgia,serif;max-width:920px;margin:14px auto 16px;color:#152030}.blog-date{color:#77716b}.blog-article-cover{margin:0;border-radius:28px;overflow:hidden;background:#f0e5df;min-height:260px;max-height:590px}.blog-article-cover img{display:block;width:100%;max-height:590px;object-fit:cover}.blog-article-cover.image-error{display:none}.blog-cover-fallback{min-height:360px;border-radius:28px}.blog-cover-fallback b{font:500 clamp(34px,5vw,58px)/1.05 Georgia,serif;max-width:750px;margin-top:12px}.blog-article-body{max-width:760px;margin:46px auto 0}.blog-post-intro{font-size:23px;line-height:1.55;color:#34312e;font-weight:500}.blog-post-content{font-size:18px;line-height:1.8;color:#373532}.blog-post-content h2,.blog-post-content h3{font-family:Georgia,serif;color:#17202e;line-height:1.18;margin:42px 0 15px}.blog-post-content h2{font-size:34px}.blog-post-content h3{font-size:29px}.blog-post-content img{max-width:100%;height:auto;border-radius:18px}.blog-post-content a{color:#9b623c}.blog-article-cta{margin-top:52px;padding:34px;border-radius:24px;background:#f4e6e2}.blog-article-cta span{font-size:11px;letter-spacing:.14em;font-weight:800;color:#9b7141}.blog-article-cta h2{font:500 34px/1.1 Georgia,serif;margin:8px 0}.blog-article-cta p{margin:0 0 20px}
@media(max-width:850px){.site-blog-grid{grid-template-columns:1fr;gap:20px}.site-blog-hero{min-height:280px}.site-blog-card .blog-public-image{height:220px}.blog-article-wrap{padding:0 14px 45px}.blog-article-head{padding:42px 5px 28px}.blog-article-cover,.blog-cover-fallback{border-radius:20px;min-height:230px}.blog-article-body{margin-top:30px}.blog-post-intro{font-size:20px}.blog-post-content{font-size:17px}.blog-pagination{gap:10px;flex-wrap:wrap}}

/* V3.0.14 public redesign */
.site-nav-v314{max-width:none;margin:0;padding:14px max(22px,calc((100% - 1200px)/2));background:rgba(255,253,250,.96);border-top:4px solid #17202e;box-shadow:0 5px 24px rgba(28,25,23,.05)}
.site-nav-v314 .site-logo img{height:46px}.site-nav-v314 nav{margin-left:auto}.site-nav-v314 nav a{font-weight:650;color:#2c2b29}.site-nav-book{background:#ee5662;color:#fff!important;text-decoration:none;padding:12px 19px;border-radius:999px;font-weight:800;box-shadow:0 8px 20px rgba(238,86,98,.2)}
.site-hero-search{background:radial-gradient(circle at 50% 15%,#fffaf7 0,#f9e9e4 52%,#f5e4df 100%);padding-bottom:78px}.site-hero-copy>span{color:#9c7144}.site-hero-copy p{color:#505050!important}
.site-search-air{border:1px solid rgba(68,54,48,.13);box-shadow:0 20px 55px rgba(58,40,33,.13)}.search-submit{background:#ee5662}.search-segment b{color:#202735}.search-segment select,.guest-trigger,.search-dates input{color:#5e6267}
.site-blog-hero{background:radial-gradient(circle at 70% 10%,#fffaf7,#f7e7e2 62%,#f1ddd7);color:#17202e}.site-blog-hero p{color:#56524e}.site-blog-grid{gap:30px}.site-blog-card{border-radius:20px;box-shadow:0 12px 38px rgba(35,27,23,.08)}.site-blog-card .blog-public-image{height:270px}.site-blog-card h2{color:#17202e}.site-blog-card>div{padding:25px}.blog-article-wrap{background:#fffdf9}.blog-article-head{max-width:900px;margin:auto}.blog-article-cover{box-shadow:0 18px 55px rgba(31,24,21,.09)}
.site-footer-v314{max-width:none;margin:70px 0 0;padding:56px max(24px,calc((100% - 1200px)/2)) 26px;background:#17202e;color:#f7f2eb;display:grid;grid-template-columns:2fr 1fr 1fr;gap:46px;align-items:start}.site-footer-v314 .site-logo img{height:48px;filter:brightness(0) invert(1)}.site-footer-v314 p{max-width:420px;color:#c9c8c5;line-height:1.65}.footer-links{display:flex!important;flex-direction:column;gap:10px!important}.footer-links strong{color:#fff;margin-bottom:5px}.footer-links a{color:#c9c8c5!important}.footer-links a:hover{color:#fff!important}.footer-bottom{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.13);padding-top:22px;color:#969b9f;font-size:13px}
@media(max-width:850px){.site-nav-v314{flex-direction:row;align-items:center;padding:11px 16px}.site-nav-v314 nav{display:none}.site-nav-v314 .site-logo img{height:40px}.site-nav-book{font-size:13px;padding:10px 13px}.site-hero-search{padding:40px 16px 48px}.site-hero-search h1{font-size:44px}.site-search-air{border-radius:22px}.site-blog-hero{padding:48px 20px}.site-blog-card .blog-public-image{height:240px}.site-footer-v314{grid-template-columns:1fr 1fr;padding:42px 22px 24px;gap:30px}.footer-brand{grid-column:1/-1}.footer-bottom{grid-column:1/-1}}
/* v3.0.15 - pagamenti puliti stile cronologia */
.payments-clean{padding:0;overflow:hidden}.payments-clean-head{padding:26px 28px 18px}.payments-clean-head h2{margin:0 0 6px;font-size:24px}.payments-clean-head p{margin:0;color:#667085}.payments-list{width:100%}.payments-row{display:grid;grid-template-columns:170px 1.15fr 1.15fr 180px 170px 110px;gap:22px;align-items:center;padding:20px 28px;border-top:1px solid #e8eaed}.payments-header{background:#f7f8fa;font-weight:700;color:#202124;padding-top:18px;padding-bottom:18px}.payment-date{font-variant-numeric:tabular-nums}.payment-name strong{font-weight:650}.payment-status{display:inline-flex;align-items:center;padding:8px 12px;border-radius:10px;font-weight:700;font-size:14px;white-space:nowrap}.payment-status.is-ok{background:#e7f6ee;color:#087a49}.payment-status.is-pending{background:#fff4db;color:#8a5a00}.payment-status.is-neutral{background:#f1f3f4;color:#4b5563}.payment-amount{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.payment-amount.is-out{color:#b42318}.payment-amount.is-in{color:#111827}.payment-more details{position:relative}.payment-more summary{cursor:pointer;color:#1264d1;font-weight:650;list-style:none}.payment-more summary::-webkit-details-marker{display:none}.payment-raw[open]{grid-column:1/-1}.payment-raw dl{display:grid;grid-template-columns:minmax(180px,280px) 1fr;gap:6px 18px;margin:18px 0 0;padding-top:16px;border-top:1px solid #eee}.payment-raw dt{color:#667085}.payment-raw dd{margin:0;overflow-wrap:anywhere}.payment-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.payment-detail-grid>div{padding:12px;background:#f8f9fa;border-radius:10px}.payment-detail-grid small{display:block;color:#667085;margin-bottom:4px}.payment-detail-grid b{overflow-wrap:anywhere}
@media(max-width:900px){.payments-header{display:none}.payments-clean{background:transparent;box-shadow:none;border:0}.payments-clean-head{background:#fff;border-radius:16px 16px 0 0}.payments-row:not(.payments-header){grid-template-columns:1fr auto;gap:9px 16px;margin:0 0 12px;padding:18px;background:#fff;border:1px solid #e5e7eb;border-radius:16px}.payments-row>div:before{content:attr(data-label);display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#8a8f98;margin-bottom:3px}.payments-row .payment-date,.payments-row .payment-name{grid-column:1}.payments-row .payment-amount{grid-column:2;grid-row:1;text-align:right}.payments-row>div:nth-child(2),.payments-row>div:nth-child(4){grid-column:1}.payments-row .payment-more{grid-column:1/-1}.payments-row .payment-more:before{display:none}.payment-detail-grid{grid-template-columns:1fr 1fr}.payment-raw dl{grid-template-columns:1fr}.payment-raw dd{margin-bottom:8px}}
/* v3.0.16 - filtri banche e tabella contabile sticky */
.payments-ledger{overflow:visible}.payment-filters{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:170px minmax(240px,1fr) 170px auto auto;gap:12px;align-items:end;padding:14px 28px;background:#fff;border-top:1px solid #eef0f2;border-bottom:1px solid #e4e7ec;box-shadow:0 5px 12px rgba(16,24,40,.04)}.payment-filters label{font-size:12px;font-weight:800;color:#475467}.payment-filters input{display:block;width:100%;margin-top:5px;height:42px;border:1px solid #d0d5dd;border-radius:9px;padding:0 11px;background:#fff}.payment-filters .btn{height:42px;margin:0;white-space:nowrap}.payment-filters span{align-self:center;color:#667085;font-size:13px;white-space:nowrap}.payments-table-scroll{overflow:auto;max-height:calc(100vh - 245px)}.payments-ledger-table{width:100%;border-collapse:separate;border-spacing:0;min-width:1220px}.payments-ledger-table thead th{position:sticky;top:0;z-index:12;background:#f4f5f7;color:#27272a;font-weight:850;text-align:left;padding:15px 14px;border-bottom:1px solid #dfe3e8;font-size:12px;text-transform:uppercase;letter-spacing:.035em}.payments-ledger-table tbody td{padding:15px 14px;border-bottom:1px solid #eceef1;vertical-align:top}.payments-ledger-table tbody tr:hover{background:#fafafa}.payments-ledger-table .payment-date{white-space:nowrap;font-variant-numeric:tabular-nums}.payments-ledger-table .money{white-space:nowrap;font-variant-numeric:tabular-nums;text-align:right}.payments-ledger-table th:nth-child(n+4):nth-child(-n+7){text-align:right}.payment-reference{max-width:390px}.payment-reference strong,.payment-reference small{display:block;overflow-wrap:anywhere}.payment-reference small{margin-top:3px;color:#667085}.ledger-details{margin-top:5px}.ledger-details summary{cursor:pointer;color:#475467;font-size:13px}.ledger-details dl{position:absolute;right:24px;z-index:30;width:min(620px,calc(100vw - 60px));max-height:360px;overflow:auto;display:grid;grid-template-columns:180px 1fr;gap:5px 12px;padding:16px;background:#fff;border:1px solid #ddd;border-radius:12px;box-shadow:0 18px 45px #0002}.ledger-details dt{font-weight:700;color:#667085}.ledger-details dd{margin:0;overflow-wrap:anywhere}.payment-filter-row[hidden]{display:none!important}
@media(max-width:900px){.payment-filters{position:static;grid-template-columns:1fr 1fr;padding:14px}.payment-filters label:nth-child(2){grid-column:1/-1}.payment-filters .btn{width:100%}.payments-table-scroll{max-height:none}.payments-ledger-table{min-width:1050px}.payments-ledger-table thead th{position:sticky}.ledger-details dl{position:fixed;left:15px;right:15px;bottom:15px;width:auto;max-height:55vh}}


/* V3.0.18 FIX REALE 2026-10-06: sito pubblico, galleria, strutture, check-in */
.site-body{--site-accent:#ea5c64!important;--site-accent-dark:#c9434d!important;--site-ink:#291f20!important;--site-soft:#fff0f1!important;background:#fffafa!important;color:#392f30!important}
.site-body .site-logo,.site-body .site-text-link,.site-body .structure-content>span,.site-body .structure-features b,.site-body .site-booking-card>span{color:#ea5c64!important}
.site-body .site-nav-cta,.site-body .site-nav-book,.site-body .structure-aside .btn:not(.secondary),.site-body .search-submit{background:#ea5c64!important;color:#fff!important;border-color:#ea5c64!important}
.site-body .site-nav-cta:hover,.site-body .site-nav-book:hover,.site-body .structure-aside .btn:not(.secondary):hover{background:#c9434d!important}
.site-body .structure-hero{background:linear-gradient(135deg,#291f20 0%,#7d3540 58%,#c9434d 100%)!important;color:#fff!important}
.site-body .structure-hero a,.site-body .structure-hero span{color:#ffe3e5!important}.site-body .structure-hero p{color:#fff1f2!important}
.site-body .structure-content h2,.site-body .structure-aside h2{color:#291f20!important}.site-body .site-footer{background:#291f20!important}
.site-body .structure-features>div{border-color:#f0dadd!important}.site-body .structure-features strong{color:#291f20!important}
.structure-gallery{max-width:1280px!important;margin:28px auto 0!important;padding:0 20px!important;display:grid!important;grid-template-columns:minmax(0,1.85fr) minmax(260px,1fr)!important;grid-template-rows:210px 210px!important;gap:8px!important}
.structure-gallery-item{display:block!important;position:relative!important;overflow:hidden!important;border:0!important;border-radius:14px!important;padding:0!important;background:#f3e9ea!important;cursor:zoom-in!important;min-width:0!important;height:auto!important;box-shadow:none!important}
.structure-gallery .item-0{grid-column:1!important;grid-row:1/3!important}.structure-gallery .item-1{grid-column:2!important;grid-row:1!important}.structure-gallery .item-2{grid-column:2!important;grid-row:2!important}
.structure-gallery img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;transition:transform .22s ease!important}.structure-gallery-item:hover img{transform:scale(1.025)!important}
.structure-gallery-item b{position:absolute!important;inset:auto 14px 14px auto!important;display:block!important;background:rgba(41,31,32,.9)!important;color:#fff!important;padding:10px 14px!important;border-radius:999px!important;font:700 13px/1.2 system-ui,sans-serif!important;letter-spacing:0!important}
.structure-lightbox[hidden]{display:none!important}.structure-lightbox{position:fixed!important;inset:0!important;z-index:10000!important;background:rgba(18,12,14,.97)!important;display:grid!important;grid-template-columns:64px minmax(0,1fr) 64px!important;align-items:center!important;padding:64px 20px 30px!important}
.structure-lightbox figure{margin:0!important;min-width:0!important;height:calc(100vh - 100px)!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important}.structure-lightbox img{display:block!important;max-width:100%!important;max-height:calc(100vh - 145px)!important;width:auto!important;height:auto!important;object-fit:contain!important;border-radius:8px!important;box-shadow:0 24px 70px #0008!important}.structure-lightbox figcaption{color:#fff!important;margin-top:12px!important;font:700 13px/1 system-ui,sans-serif!important}
.lightbox-close,.lightbox-prev,.lightbox-next{border:1px solid rgba(255,255,255,.25)!important;background:rgba(255,255,255,.10)!important;color:#fff!important;display:grid!important;place-items:center!important;cursor:pointer!important;backdrop-filter:blur(8px)!important}.lightbox-close{position:absolute!important;right:18px!important;top:16px!important;width:48px!important;height:48px!important;border-radius:50%!important;font-size:32px!important;z-index:2!important}.lightbox-prev,.lightbox-next{width:50px!important;height:64px!important;border-radius:14px!important;font-size:40px!important}.lightbox-prev{grid-column:1!important}.lightbox-next{grid-column:3!important}.lightbox-open{overflow:hidden!important}
.site-booking-card{display:flex!important;flex-direction:column!important;gap:14px!important}.site-booking-card form{display:grid!important;gap:12px!important}.site-booking-card form .btn{width:100%!important;margin:4px 0 0!important}.site-booking-card form>small{display:block!important;position:static!important;line-height:1.45!important;margin:0!important}.site-share-detail{display:block!important;position:static!important;width:100%!important;margin:2px 0 0!important;clear:both!important}.structure-aside .site-booking-card{overflow:visible!important}
.structures-card{overflow:visible!important}.structures-main-list{overflow:visible!important;border-radius:14px!important}.structure-main-head{position:sticky!important;top:72px!important;z-index:18!important;display:grid!important;grid-template-columns:7px minmax(210px,1.4fr) minmax(170px,1fr) minmax(160px,.9fr) minmax(115px,.58fr) minmax(90px,.45fr) minmax(70px,.35fr) auto!important;gap:16px!important;align-items:center!important;padding:12px 16px!important;background:#fff0f1!important;border:1px solid #f0dadd!important;box-shadow:0 4px 12px rgba(41,31,32,.08)!important;font-size:11px!important;text-transform:uppercase!important;letter-spacing:.04em!important;color:#6d5a5d!important}
.structure-main-row{grid-template-columns:7px minmax(210px,1.4fr) minmax(170px,1fr) minmax(160px,.9fr) minmax(115px,.58fr) minmax(90px,.45fr) minmax(70px,.35fr) auto!important}.structure-site-status b{color:#ea5c64!important}.structure-site-status small{display:none!important}
.checkin-progress-pill{display:inline-flex!important;flex-direction:column!important;gap:2px!important;min-width:112px!important;padding:7px 10px!important;border-radius:10px!important;font-size:11px!important}.checkin-progress-pill b{font-size:11px!important}.checkin-progress-pill small{font-size:10px!important;opacity:.8!important}.checkin-progress-pill.empty{background:#f2f4f7!important;color:#667085!important}.checkin-progress-pill.partial{background:#fff0f1!important;color:#a83a47!important}.checkin-progress-pill.done{background:#fce7e9!important;color:#7d2934!important}
@media(max-width:760px){.structure-gallery{padding:0 12px!important;grid-template-columns:1.5fr 1fr!important;grid-template-rows:135px 135px!important;gap:6px!important}.structure-lightbox{grid-template-columns:46px minmax(0,1fr) 46px!important;padding:62px 8px 18px!important}.structure-lightbox figure{height:calc(100vh - 95px)!important}.structure-lightbox img{max-height:calc(100vh - 140px)!important}.lightbox-prev,.lightbox-next{width:42px!important;height:54px!important;font-size:34px!important}.structure-main-head{display:none!important}.structure-main-row{grid-template-columns:6px 1fr auto!important}.structure-site-status{display:block!important}.structure-site-status small{display:block!important}}

/* v3.2 - scheda struttura pubblica */
.structure-hero-v32{background:linear-gradient(135deg,#ea5c64 0%,#d94b55 100%)!important;color:#fff!important;padding:42px 20px 38px!important}.structure-hero-v32>div{max-width:1180px!important;text-align:left!important}.structure-hero-v32>a,.structure-hero-v32 span{color:#fff!important;opacity:.88}.structure-hero-v32 h1{margin:8px 0 7px!important}.structure-address{display:inline-flex!important;align-items:center;gap:6px;color:#fff!important;margin:0!important;font-size:15px!important;text-decoration:underline;text-underline-offset:3px}
.structure-page-v32{max-width:1180px;margin:auto;padding:50px 20px 80px}.structure-main-v32{display:grid;grid-template-columns:minmax(0,1fr) 365px;gap:58px;align-items:start}.structure-page-v32 .structure-content>span,.location-copy>span,.structure-vtour>div>span{color:#ea5c64;font-size:12px;font-weight:800;letter-spacing:.13em}.structure-page-v32 .structure-content>h2,.location-copy h2,.structure-vtour h2{font:600 clamp(28px,3.5vw,42px)/1.15 system-ui,sans-serif;color:#292124;margin:8px 0 22px}.structure-vtour{margin-top:42px;padding-top:30px;border-top:1px solid #eadcdf}.vtour-frame{margin:15px 0;border-radius:18px;overflow:hidden;background:#f7eff0;aspect-ratio:16/9}.vtour-frame iframe{width:100%;height:100%;border:0}.structure-location-v32{margin-top:58px;padding-top:45px;border-top:1px solid #eadcdf;display:grid;grid-template-columns:1.1fr .9fr;gap:24px}.location-copy{grid-column:1/-1}.structure-map{height:410px;border-radius:20px;overflow:hidden;position:relative;background:#f5edef}.structure-map>a{display:block;width:100%;height:100%;position:relative}.structure-map iframe{border:0;width:100%;height:100%;pointer-events:none}.map-logo-pin{position:absolute;left:50%;top:50%;transform:translate(-50%,-100%);width:62px;height:62px;border-radius:50% 50% 50% 8px;background:#fff;box-shadow:0 5px 22px #29212455;display:grid;place-items:center;rotate:-45deg;border:3px solid #ea5c64}.map-logo-pin img{width:42px;height:42px;object-fit:contain;rotate:45deg}.nearby-card{background:#fff;border:1px solid #eadcdf;border-radius:20px;padding:24px}.nearby-head{display:flex;justify-content:space-between;align-items:start;gap:15px;margin-bottom:15px}.nearby-head span{font-size:11px;letter-spacing:.12em;font-weight:800;color:#ea5c64}.nearby-head h2{margin:4px 0;font-size:25px}.nearby-head button{border:0;background:none;color:#ea5c64;font-weight:800;cursor:pointer;white-space:nowrap}.nearby-preview{display:grid;grid-template-columns:1fr 1fr;gap:16px}.nearby-group{background:#fff5f6;border-radius:14px;padding:13px}.nearby-group h3{font-size:15px;margin:0 0 8px}.nearby-group div{display:flex;justify-content:space-between;gap:10px;font-size:13px;padding:3px 0}.nearby-group div b{font-weight:500;white-space:nowrap;color:#665b5d}.nearby-dialog{width:min(920px,94vw);max-height:88vh;border:0;border-radius:22px;padding:28px;box-shadow:0 25px 80px #0005}.nearby-dialog::backdrop{background:#21191bbb}.nearby-dialog>h2{margin:0 45px 22px 0}.nearby-close{position:absolute;right:18px;top:14px;border:0;background:none;font-size:38px;color:#777;cursor:pointer}.nearby-dialog #nearbyFull{display:grid;grid-template-columns:1fr 1fr;gap:18px}.other-stays-v32{margin-top:65px;padding-top:45px;border-top:1px solid #eadcdf}
/* v3.2 allineamento intestazione/elenco strutture */
.structure-main-head,.structure-main-row{grid-template-columns:7px minmax(260px,1.65fr) minmax(190px,1.05fr) minmax(180px,.95fr) 120px 105px 80px 250px!important;column-gap:16px!important;box-sizing:border-box!important}.structure-main-head>*{min-width:0}.structure-main-head{top:70px!important}.structure-main-row>*{min-width:0}.structure-main-actions{justify-content:flex-end!important}
@media(max-width:900px){.structure-main-v32{grid-template-columns:1fr}.structure-location-v32{grid-template-columns:1fr}.location-copy{grid-column:auto}.nearby-preview{grid-template-columns:1fr 1fr}.structure-aside{margin-top:0}}
@media(max-width:760px){.structure-hero-v32{padding:30px 18px!important}.structure-page-v32{padding:34px 16px 60px}.structure-location-v32{margin-top:40px}.structure-map{height:330px}.nearby-preview,.nearby-dialog #nearbyFull{grid-template-columns:1fr}.other-stays-v32 .site-property-grid{grid-template-columns:1fr}.structure-main-head{display:none!important}.structure-main-row{grid-template-columns:6px 1fr auto!important}}
/* v3.2.1 public-domain + right-column tour + nearby fallback */
.structure-aside{display:flex;flex-direction:column;gap:22px;position:relative}
.structure-vtour-aside{margin:0;padding:22px;background:#fff;border:1px solid #eadcdf;border-radius:20px;box-shadow:0 12px 35px rgba(55,35,40,.06)}
.structure-vtour-aside h2{font-size:24px;margin:5px 0 14px}
.structure-vtour-aside .vtour-frame{margin:0 0 14px;aspect-ratio:4/3;border-radius:14px}
.structure-vtour-aside .btn{width:100%;box-sizing:border-box;text-align:center}
.nearby-preview{min-height:0!important}
.nearby-fallback{grid-column:1/-1}
.nearby-fallback>p{margin:0 0 12px;color:#665b5d}
.nearby-links{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.nearby-links a{display:block;padding:10px 12px;border-radius:12px;background:#fff5f6;color:#33292b;text-decoration:none;font-weight:650;font-size:13px}
.nearby-links a:hover{background:#ffe9ec;color:#ea5c64}
@media(max-width:900px){.structure-vtour-aside .vtour-frame{aspect-ratio:16/9}}
@media(max-width:520px){.nearby-links{grid-template-columns:1fr}}
/* v3.2.1: public domain, virtual tour in sidebar, nearby fallback */
.structure-aside{display:flex;flex-direction:column;gap:22px}
.structure-vtour-aside{margin:0;padding:22px;background:#fff;border:1px solid #eadcdf;border-radius:20px;box-shadow:0 12px 35px rgba(55,35,40,.06)}
.structure-vtour-aside h2{font-size:24px;margin:5px 0 14px}
.structure-vtour-aside .vtour-frame{margin:0 0 14px;aspect-ratio:4/3;border-radius:14px}
.structure-vtour-aside .btn{display:block;width:100%;box-sizing:border-box;text-align:center}
.nearby-preview{min-height:0!important}
.nearby-fallback{grid-column:1/-1}.nearby-fallback>p{margin:0 0 12px;color:#665b5d}
.nearby-links{display:grid;grid-template-columns:1fr 1fr;gap:9px}.nearby-links a{display:block;padding:10px 12px;border-radius:12px;background:#fff5f6;color:#33292b;text-decoration:none;font-weight:650;font-size:13px}.nearby-links a:hover{background:#ffe9ec;color:#ea5c64}
@media(max-width:900px){.structure-vtour-aside .vtour-frame{aspect-ratio:16/9}}@media(max-width:520px){.nearby-links{grid-template-columns:1fr}}
/* v3.2.1 public site final corrections */
.structure-hero-v32{background:linear-gradient(180deg,#fff8f5 0%,#fff3ee 100%)!important;color:#172033!important;border-bottom:1px solid #f1ded8!important}
.structure-hero-v32 a,.structure-hero-v32 span,.structure-hero-v32 h1{color:#172033!important}
.structure-hero-v32>div{max-width:1120px;margin:auto;padding:42px 24px 34px}
.structure-hero-v32 h1{font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(42px,5vw,70px)!important;line-height:1.02;margin:12px 0!important;font-weight:700}
.structure-hero-v32>div>span{color:#9b6537!important;letter-spacing:.18em;font-weight:700;font-size:12px}
.structure-address{font-size:15px!important;text-decoration:underline;text-underline-offset:4px}
.structure-aside{display:flex;flex-direction:column;gap:22px;align-self:start}
.structure-vtour-aside,.structure-location-aside,.nearby-card{background:#fff;border:1px solid #eee2de;border-radius:24px;padding:20px;box-shadow:0 14px 34px rgba(45,31,30,.06)}
.structure-vtour-aside .vtour-frame{aspect-ratio:4/3;border-radius:16px;overflow:hidden;margin:14px 0}.structure-vtour-aside iframe{width:100%;height:100%;border:0}
.structure-location-aside .structure-map{height:280px;border-radius:16px;overflow:hidden;margin-top:14px}.structure-location-aside iframe{width:100%;height:100%;border:0}
.structure-location-aside .location-copy h2,.structure-vtour-aside h2,.nearby-head h2{margin:4px 0 8px;font-size:24px}.structure-location-aside .location-copy>span,.structure-vtour-aside>div>span,.nearby-head span{color:#ea5c64;font-weight:800;letter-spacing:.12em;font-size:11px}
.nearby-preview{min-height:0!important}.nearby-grid{display:grid;grid-template-columns:1fr;gap:16px}.nearby-group{padding:0!important}.nearby-group h3{margin:0 0 7px;font-size:16px}.nearby-group>div{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px solid #f1ecea;font-size:14px}.nearby-group>div b{white-space:nowrap;font-weight:600}.nearby-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.nearby-head button{border:0;background:transparent;color:#ea5c64;font-weight:800;cursor:pointer}
@media(max-width:900px){.structure-main-v32{grid-template-columns:1fr!important}.structure-aside{width:100%}.structure-location-aside .structure-map{height:240px}}
