/* ==========================================================
   CASA RUGGIU DOMHUN — GLOBAL LIQUID GLASS V33
   Apple-inspired glass language shared by the whole guest portal.
   Keeps photographic cards readable while unifying panels, controls,
   buttons, navigation, filters, forms, badges and status elements.
   ========================================================== */
:root{
  --lg-panel:rgba(8,18,34,.53);
  --lg-panel-strong:rgba(9,20,38,.68);
  --lg-panel-soft:rgba(255,255,255,.075);
  --lg-line:rgba(255,255,255,.25);
  --lg-line-strong:rgba(255,255,255,.38);
  --lg-highlight:rgba(255,255,255,.28);
  --lg-shadow:0 18px 46px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.22),inset 0 -1px 0 rgba(255,255,255,.055);
  --lg-shadow-soft:0 10px 28px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.18);
  --lg-blur:blur(24px) saturate(185%);
  --lg-blur-soft:blur(17px) saturate(170%);
  --lg-radius:22px;
  --lg-radius-small:15px;
}

/* Main app surfaces — same translucent material on every page. */
.cr-page,.container,.shell,main.page,main.casa-page-shell,main.page-shell,
.house-page,.reader-shell{
  background:
    radial-gradient(circle at 14% -8%,rgba(255,255,255,.16),transparent 28%),
    linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.025) 42%,rgba(4,12,26,.18)),
    var(--lg-panel)!important;
  border:1px solid var(--lg-line)!important;
  box-shadow:var(--lg-shadow)!important;
  backdrop-filter:var(--lg-blur)!important;
  -webkit-backdrop-filter:var(--lg-blur)!important;
}

/* Shared glass panels. Photo portions are not flattened: only their frame/body gets glass. */
.cr-card,.card-link,.contact,.contact-card,.info-card,.info-box,.glass-box,
.detail-section,.detail-panel,.detail-box,.fact,.fact32,.fact-v32,.facts-v32,
.status-box,.status-item,.weather-live,.house-tip,.cr-house-tip,.tip,.tip-warning,
.notice,.cr-notice,.pack-item,.boat-guide-card,.boat-price,.boat-route,.details,
.quiz-question,.quiz-result,.casa-page-questionnaire,.choice-launch,.choice-card,
.easy-panel,.ios-step-box,.check-item,.consulate,.wifi-row,.casa-network-status,
.publication-action,.book,.category,.beach-card,.photo-card,.attraction-card,
.market-card,.supermarket-card,.shopping-card,.transport-card,.route-card,
.trip-card,.day-card,.result-card,.activity-card,.place-card{
  background:
    radial-gradient(circle at 12% 0%,rgba(255,255,255,.15),transparent 31%),
    linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.035) 46%,rgba(3,12,26,.13)),
    var(--lg-panel-strong)!important;
  border:1px solid var(--lg-line)!important;
  box-shadow:var(--lg-shadow-soft)!important;
  backdrop-filter:var(--lg-blur-soft)!important;
  -webkit-backdrop-filter:var(--lg-blur-soft)!important;
}

/* Cards with photos keep the photo visible but receive the same glass edge. */
.casa-visual-card,.explore-clean-card,.explore-assistant-card,.trip-poster,
.photo-card-image,.beach-photo,.hero32,.detail-hero,.detail-hero-v32,.hero-city,
.trip-detail-hero,.day-photo{
  border:1px solid rgba(255,255,255,.28)!important;
  box-shadow:0 15px 36px rgba(0,0,0,.31),inset 0 1px 0 rgba(255,255,255,.20)!important;
}

/* The glass lives in the text/footer portion of photo cards too. */
.photo-card-body,.attraction-body,.beach-body,.card-info,.detail-text,.log32{
  background:
    radial-gradient(circle at 10% 0%,rgba(255,255,255,.12),transparent 34%),
    linear-gradient(145deg,rgba(255,255,255,.085),rgba(4,13,28,.20)),
    rgba(8,18,34,.58)!important;
  border-color:rgba(255,255,255,.16)!important;
  backdrop-filter:var(--lg-blur-soft)!important;
  -webkit-backdrop-filter:var(--lg-blur-soft)!important;
}

/* Back/Home, language selector, action buttons and pills share the same optical material. */
.cr-back,.back,.back-link,.casa-back-link,.home,
.cr-lang-btn,.lang-btn,button.lang,.languages button.lang,
.cr-btn,.action,.action-btn,.btn-copy,.modal-close-btn,.filter-btn,.cr-filter-btn,
.casa-tool-btn,.pick,.call,.go,.website,.emergency-btn,.bottom-link,
.casa-question-open,.casa-question-form>button,.casa-question-result button,
.casa-question-result a,.photo-actions a,.attraction-actions a,.detail-actions a{
  position:relative!important;
  overflow:hidden!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.30)!important;
  background:
    radial-gradient(circle at 18% -20%,rgba(255,255,255,.30),transparent 42%),
    linear-gradient(145deg,rgba(255,255,255,.17),rgba(255,255,255,.055)),
    rgba(8,19,37,.50)!important;
  box-shadow:0 8px 22px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.30),inset 0 -1px 0 rgba(255,255,255,.05)!important;
  backdrop-filter:blur(18px) saturate(180%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(180%)!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease!important;
}

/* Blue actions remain recognizable but become translucent instead of flat. */
.cr-btn-primary,.cr-btn-map,.action.map,.detail-actions a:first-child,
.attraction-actions a:first-child,.photo-actions a:first-child,.cr-lang-btn.active,
.lang-btn.active,button.lang.active,.languages button.lang.active{
  background:
    radial-gradient(circle at 18% -25%,rgba(255,255,255,.38),transparent 42%),
    linear-gradient(145deg,rgba(189,208,189,.72),rgba(65,107,88,.68)),
    rgba(32,59,52,.76)!important;
  border-color:rgba(210,228,211,.62)!important;
  box-shadow:0 9px 25px rgba(16,73,180,.28),inset 0 1px 0 rgba(255,255,255,.38)!important;
}

/* Inputs and selectors: frosted controls rather than opaque dark boxes. */
input,select,textarea,.control{
  color:#fff!important;
  border:1px solid rgba(255,255,255,.25)!important;
  background:
    radial-gradient(circle at 15% -30%,rgba(255,255,255,.18),transparent 45%),
    rgba(8,18,34,.55)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 7px 18px rgba(0,0,0,.16)!important;
  backdrop-filter:blur(16px) saturate(165%)!important;
  -webkit-backdrop-filter:blur(16px) saturate(165%)!important;
}
input::placeholder,textarea::placeholder{color:rgba(255,255,255,.58)!important}

/* Badges, chips and small status pills. */
.feature,.beach-badge,.chip,.chips span,.status,.publication-type,.rating-label,
.cr-feature,.mini-note,.badge,.tag,.difficulty,.price-tier{
  border:1px solid rgba(255,255,255,.23)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.045)),rgba(7,18,34,.46)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.20),0 5px 14px rgba(0,0,0,.15)!important;
  backdrop-filter:blur(14px) saturate(165%)!important;
  -webkit-backdrop-filter:blur(14px) saturate(165%)!important;
}

/* iPhone-like floating icon bubbles throughout the portal. */
.service-icon,.cr-card-icon,.card-icon,.contact-icon,.icon,.cr-tile-icon,
.casa-menu-icon,.airport-icon,.casa-visual-icon,.explore-start-icon,
.weather-symbol,.ios-step-icon{
  position:relative!important;
  flex:0 0 auto;
  border:1px solid rgba(255,255,255,.42)!important;
  background:
    radial-gradient(circle at 28% 14%,rgba(255,255,255,.48),transparent 36%),
    linear-gradient(145deg,rgba(255,255,255,.24),rgba(255,255,255,.075)),
    rgba(9,22,42,.48)!important;
  box-shadow:0 10px 25px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.42),inset 0 -1px 0 rgba(255,255,255,.07)!important;
  backdrop-filter:blur(18px) saturate(190%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(190%)!important;
  animation:crGlassFloat 4.6s ease-in-out infinite!important;
}

/* Navigation arrows remain anchored to the far right. */
.service-chevron,.cr-card-chevron,.casa-visual-arrow,.publication-action>span:last-child{
  margin-left:auto!important;
  filter:drop-shadow(0 1px 6px rgba(255,255,255,.16));
}

/* Bottom navigation becomes a floating translucent iOS toolbar. */
.bottom-nav{
  border:1px solid rgba(255,255,255,.27)!important;
  background:
    radial-gradient(circle at 50% -20%,rgba(255,255,255,.18),transparent 45%),
    rgba(8,18,34,.62)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.22)!important;
  backdrop-filter:blur(24px) saturate(190%)!important;
  -webkit-backdrop-filter:blur(24px) saturate(190%)!important;
}

/* Give tappable glass a small iOS-style response. */
@media(hover:hover){
  .cr-back:hover,.back:hover,.back-link:hover,.casa-back-link:hover,.home:hover,
  .cr-btn:hover,.action:hover,.action-btn:hover,.filter-btn:hover,.cr-filter-btn:hover,
  .card-link:hover,.contact:hover,.cr-card:hover,.photo-actions a:hover,
  .attraction-actions a:hover,.detail-actions a:hover{
    transform:translateY(-1px)!important;
    border-color:rgba(255,255,255,.44)!important;
    box-shadow:0 12px 30px rgba(0,0,0,.27),inset 0 1px 0 rgba(255,255,255,.36)!important;
  }
}

@keyframes crGlassFloat{
  0%,100%{transform:translateY(0) scale(1)}
  50%{transform:translateY(-2px) scale(1.025)}
}

/* Safari/iPhone fallback: still looks coherent if backdrop-filter is unavailable. */
@supports not ((backdrop-filter:blur(2px)) or (-webkit-backdrop-filter:blur(2px))){
  .cr-page,.container,.shell,main.page,main.casa-page-shell,main.page-shell,.house-page,
  .cr-card,.card-link,.contact,.contact-card,.info-card,.detail-section,.detail-panel,
  .detail-box,.beach-card,.photo-card,.attraction-card{background:rgba(9,20,38,.91)!important}
}

@media(max-width:520px){
  :root{--lg-radius:19px}
  .cr-page,.container,.shell,main.page{box-shadow:0 15px 38px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.20)!important}
  .cr-card,.card-link,.contact,.contact-card,.info-card,.detail-section,.detail-panel,
  .detail-box,.beach-card,.photo-card,.attraction-card{border-radius:18px!important}
}

@media(prefers-reduced-motion:reduce){
  .service-icon,.cr-card-icon,.card-icon,.contact-icon,.icon,.cr-tile-icon,
  .casa-menu-icon,.airport-icon,.casa-visual-icon,.explore-start-icon,.weather-symbol,.ios-step-icon{
    animation:none!important;
  }
}

/* V35 — Liquid Glass globale Safari/iPhone */
.cr-filter-box,.filter-box,.place-quiz,.metro-panel,.flight-panel,.intro-box,.emergency-box,.tool-card,.stay-item,.culture-card,.quiz32,.search-box,.box,.modal-card,.quiz-card,.choice-card,.cards,.cards-list,.cards-container,.qrcode-box,.tip-box,.boat-section,.market-today,.supermarket-intro,.cr-card-list>article,.detail-explain-item,.rating-item{background:radial-gradient(circle at 15% -8%,rgba(255,255,255,.17),transparent 34%),linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.035) 48%,rgba(3,12,26,.15)),rgba(8,18,34,.62)!important;border:1px solid rgba(255,255,255,.27)!important;box-shadow:0 13px 34px rgba(0,0,0,.27),inset 0 1px 0 rgba(255,255,255,.22)!important;backdrop-filter:blur(22px) saturate(185%)!important;-webkit-backdrop-filter:blur(22px) saturate(185%)!important}
button,.cr-filter-btn,.filter-btn,.quiz-open-btn,.quiz-submit,.quiz-reset,.quiz-close,.choice-submit,.choice-reset,.choice-close,.btn-map,.btn-whatsapp,.btn-emergency,.remove-item,.casa-save-btn{-webkit-appearance:none!important;appearance:none!important;border-radius:15px!important;border:1px solid rgba(255,255,255,.31)!important;color:#fff!important;background:radial-gradient(circle at 18% -25%,rgba(255,255,255,.30),transparent 43%),linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.055)),rgba(8,19,37,.52)!important;box-shadow:0 8px 21px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.28)!important;backdrop-filter:blur(17px) saturate(180%)!important;-webkit-backdrop-filter:blur(17px) saturate(180%)!important}
.cr-filter-list,.filter-list{display:flex!important;flex-wrap:wrap!important;gap:8px!important}.cr-filter-btn,.filter-btn{min-height:42px!important;padding:9px 13px!important;border-radius:999px!important;font-weight:760!important;line-height:1.15!important}.cr-filter-btn.active,.filter-btn.active{background:linear-gradient(145deg,rgba(72,145,255,.88),rgba(33,91,214,.68))!important;border-color:rgba(174,213,255,.72)!important;box-shadow:0 9px 24px rgba(16,73,180,.29),inset 0 1px 0 rgba(255,255,255,.42)!important}select,input,textarea{border-radius:15px!important;-webkit-appearance:none!important;appearance:none!important}.casa-page-tools-compact{grid-template-columns:repeat(2,52px)!important;width:auto!important}.cr-back,.casa-back-link,.back-link{padding-left:14px!important}[class$="-icon"],.service-icon,.icon,.cr-card-icon,.casa-menu-icon,.airport-icon{border:1px solid rgba(255,255,255,.42)!important;background:radial-gradient(circle at 28% 14%,rgba(255,255,255,.46),transparent 36%),linear-gradient(145deg,rgba(255,255,255,.23),rgba(255,255,255,.07)),rgba(9,22,42,.48)!important;box-shadow:0 9px 24px rgba(0,0,0,.23),inset 0 1px 0 rgba(255,255,255,.40)!important;backdrop-filter:blur(18px) saturate(190%)!important;-webkit-backdrop-filter:blur(18px) saturate(190%)!important}@media(max-width:520px){.cr-filter-btn,.filter-btn{font-size:.78rem!important}.cr-page,.container,.shell{border-radius:28px!important}}

/* V38 — Professional, low-power mobile material */
@media(max-width:700px),(hover:none) and (pointer:coarse){.cr-card,.card-link,.contact,.contact-card,.info-card,.info-box,.glass-box,.detail-section,.detail-panel,.detail-box,.fact,.fact32,.facts32,.status-box,.status-item,.weather-live,.house-tip,.cr-house-tip,.tip,.notice,.quiz32,.search-box,.box,.quiz-card,.choice-card,.boat-section,.market-today,.supermarket-intro,.cr-card-list>article,.detail-explain-item,.rating-item,button,.cr-btn,.cr-filter-btn,.filter-btn,[class$="-icon"],.service-icon,.icon,.cr-card-icon{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.service-icon,.cr-card-icon,.card-icon,.contact-icon,.icon,.casa-menu-icon,.airport-icon,.liquid-icon,.glass-bubble{animation:none!important}}

/* V39 - brand icons: compact square logo tiles */
.cr-card-icon.cr-card-brand{width:39px!important;height:39px!important;min-width:39px!important;min-height:39px!important;flex:0 0 39px!important;border-radius:13px!important;padding:3px!important;background:radial-gradient(circle at 28% 15%,rgba(255,255,255,.50),transparent 35%),linear-gradient(145deg,rgba(255,255,255,.27),rgba(255,255,255,.08))!important;border:1px solid rgba(255,255,255,.62)!important;box-shadow:0 7px 16px rgba(0,0,0,.25),inset 0 1px 2px rgba(255,255,255,.65)!important;overflow:hidden!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.cr-card-icon.cr-card-brand .cr-card-logo{width:100%!important;height:100%!important;display:block!important;object-fit:contain!important;border-radius:9px!important}.cr-card-emoji{font-size:1.12rem!important;line-height:1}
