/* Standard AlojaMeYa reviews.html CSS adapted to Casa Turcu Guest. */

    

    :root{
      --rv-bg:#fff;
      --rv-card:#fff;
      --rv-line:rgba(17,17,17,.08);
      --rv-soft:rgba(17,17,17,.04);
      --rv-text:#171717;
      --rv-muted:#6b7280;
      --rv-radius:22px;
      --rv-shadow:0 12px 34px rgba(17,24,39,.08);
      --rv-shadow-soft:0 6px 22px rgba(17,24,39,.05);
      --rv-max:1160px;
    }

    body[data-page="reviews"]{
      background:var(--bg, #fff);
      color:var(--rv-text);
    }

    .reviews-page{
      max-width:var(--rv-max);
      margin:0 auto;
      padding:32px 16px 72px;
    }

    .reviews-intro{
      margin:0 0 26px;
      display:grid;
      grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);
      gap:24px;
      align-items:stretch;
    }

    .reviews-hero-card,
    .reviews-summary-card,
    .reviews-list-card,
    .reviews-empty,
    .reviews-cta-card{
      background:var(--rv-card);
      border:1px solid var(--rv-line);
      border-radius:var(--rv-radius);
      box-shadow:var(--rv-shadow-soft);
    }

    .reviews-hero-card{
      padding:28px;
      display:flex;
      flex-direction:column;
      gap:14px;
    }

    .reviews-kicker{
      display:inline-flex;
      align-items:center;
      gap:8px;
      width:max-content;
      padding:7px 12px;
      border-radius:999px;
      background:var(--rv-soft);
      font-size:.8rem;
      font-weight:700;
      letter-spacing:.02em;
      color:var(--rv-text);
    }

    .reviews-hero-card h1{
      margin:0;
      font-size:clamp(1.9rem, 3vw, 2.8rem);
      line-height:1.05;
      letter-spacing:-.03em;
    }

    .reviews-hero-card p{
      margin:0;
      font-size:1rem;
      line-height:1.7;
      color:var(--rv-muted);
      max-width:56ch;
    }

    .reviews-hero-meta{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-top:6px;
    }

    .reviews-chip{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:9px 12px;
      border-radius:999px;
      background:var(--rv-soft);
      font-size:.92rem;
      font-weight:700;
    }

    .reviews-summary-card{
      padding:24px;
      display:grid;
      grid-template-columns:138px minmax(0,1fr);
      gap:24px;
      align-items:center;
    }

    .reviews-score-big{
      display:flex;
      flex-direction:column;
      align-items:flex-start;
      justify-content:center;
      gap:4px;
    }

    .reviews-score-big strong{
      font-size:3rem;
      line-height:1;
      letter-spacing:-.05em;
    }

    .reviews-score-big span,
    .reviews-score-big small{
      color:var(--rv-muted);
    }

    .reviews-stars{
      letter-spacing:.12em;
      font-size:.98rem;
      white-space:nowrap;
    }

    .reviews-dist{
      display:grid;
      gap:10px;
    }

    .reviews-dist-row{
      display:grid;
      grid-template-columns:18px 1fr 42px;
      gap:10px;
      align-items:center;
      font-size:.92rem;
    }

    .reviews-bar{
      position:relative;
      height:8px;
      border-radius:999px;
      background:rgba(17,17,17,.08);
      overflow:hidden;
    }

    .reviews-bar > span{
      position:absolute;
      inset:0 auto 0 0;
      width:0%;
      border-radius:999px;
      background:var(--accent, #111);
    }

    .reviews-toolbar{
      margin:0 0 18px;
      display:flex;
      gap:12px;
      align-items:center;
      justify-content:space-between;
      flex-wrap:wrap;
    }

    .reviews-toolbar-left{
      display:flex;
      align-items:center;
      gap:10px;
      flex-wrap:wrap;
    }

    .reviews-toolbar h2{
      margin:0;
      font-size:1.12rem;
    }

    .reviews-badge{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:8px 12px;
      border-radius:999px;
      background:var(--rv-soft);
      color:var(--rv-muted);
      font-size:.9rem;
      font-weight:700;
    }

    .reviews-sort{
      appearance:none;
      border:1px solid var(--rv-line);
      background:#fff;
      border-radius:999px;
      padding:10px 40px 10px 14px;
      font:inherit;
      color:var(--rv-text);
      min-width:210px;
      background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
      background-repeat:no-repeat;
      background-position:right 14px center;
    }

    .reviews-list-card{
      padding:24px;
    }

    .reviews-grid{
      display:grid;
      grid-template-columns:repeat(3, minmax(0, 1fr));
      gap:18px;
    }

    .review-card{
      border:1px solid var(--rv-line);
      border-radius:18px;
      padding:18px;
      background:#fff;
      display:flex;
      flex-direction:column;
      gap:14px;
      min-height:220px;
      transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
    }

    .review-card:hover{
      transform:translateY(-1px);
      box-shadow:var(--rv-shadow);
      border-color:rgba(17,17,17,.12);
    }

    .review-head{
      display:flex;
      gap:12px;
      align-items:flex-start;
    }

    .review-avatar,
    .review-avatar--fallback{
      width:48px;
      height:48px;
      border-radius:999px;
      flex:0 0 48px;
      object-fit:cover;
    }

    .review-avatar--fallback{
      display:grid;
      place-items:center;
      font-weight:800;
      background:var(--rv-soft);
      color:var(--rv-text);
    }

    .review-head-info{
      min-width:0;
      display:grid;
      gap:2px;
    }

    .review-author-row{
      display:flex;
      gap:8px;
      align-items:center;
      flex-wrap:wrap;
    }

    .review-author{
      margin:0;
      font-size:1rem;
      font-weight:800;
      line-height:1.2;
    }

    .review-origin{
      color:var(--rv-muted);
      font-size:.9rem;
      line-height:1.35;
    }

    .review-meta{
      display:flex;
      gap:8px;
      flex-wrap:wrap;
      align-items:center;
      color:var(--rv-muted);
      font-size:.85rem;
    }

    .review-rating{ font-size:.9rem; letter-spacing:.11em; }

    .review-text{
      margin:0;
      line-height:1.72;
      color:var(--rv-text);
      display:-webkit-box;
      -webkit-box-orient:vertical;
      -webkit-line-clamp:5;
      overflow:hidden;
    }

    .review-more{
      appearance:none;
      border:0;
      background:transparent;
      color:var(--accent, #111);
      padding:0;
      margin:-2px 0 0;
      font:inherit;
      font-size:.95rem;
      font-weight:800;
      cursor:pointer;
      align-self:flex-start;
    }

    .review-more:hover{
      text-decoration:underline;
    }

    .reviews-reader-modal[aria-hidden="true"]{ display:none; }
    .reviews-reader-modal{
      position:fixed;
      inset:0;
      z-index:1100;
    }
    .reviews-reader-backdrop{
      position:absolute;
      inset:0;
      background:rgba(17,24,39,.54);
      backdrop-filter:blur(2px);
    }
    .reviews-reader-panel{
      position:relative;
      z-index:1;
      width:min(840px, calc(100vw - 24px));
      max-height:calc(100vh - 24px);
      overflow:auto;
      margin:12px auto;
      background:#fff;
      border:1px solid var(--rv-line);
      border-radius:24px;
      box-shadow:0 24px 80px rgba(17,24,39,.24);
    }
    .reviews-reader-head{
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap:16px;
      padding:20px 22px 16px;
      border-bottom:1px solid var(--rv-line);
      position:sticky;
      top:0;
      background:#fff;
      z-index:1;
    }
    .reviews-reader-head h3{ margin:0; font-size:1.25rem; }
    .reviews-reader-sub{ margin:6px 0 0; color:var(--rv-muted); line-height:1.6; }
    .reviews-reader-close{
      appearance:none; border:1px solid var(--rv-line); background:#fff; border-radius:999px;
      padding:10px 14px; font:inherit; font-weight:700; cursor:pointer;
    }
    .reviews-reader-nav{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
      padding:14px 22px;
      border-bottom:1px solid var(--rv-line);
      background:linear-gradient(180deg, rgba(17,17,17,.02), rgba(17,17,17,0));
    }
    .reviews-reader-nav-left{ display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
    .reviews-reader-counter{ color:var(--rv-muted); font-size:.92rem; font-weight:700; }
    .reviews-reader-body{ padding:22px; display:grid; gap:18px; }
    .reviews-reader-author{ display:flex; gap:14px; align-items:flex-start; }
    .reviews-reader-author h4{ margin:0; font-size:1.12rem; }
    .reviews-reader-author .review-origin{ margin-top:2px; }
    .reviews-reader-meta{ display:flex; gap:8px; flex-wrap:wrap; align-items:center; color:var(--rv-muted); font-size:.9rem; margin-top:6px; }
    .reviews-reader-text{ margin:0; white-space:pre-wrap; line-height:1.85; color:var(--rv-text); font-size:1rem; }
    .reviews-reader-response{ padding:14px 16px; border-radius:16px; background:var(--rv-soft); display:grid; gap:6px; }
    .reviews-reader-response strong{ font-size:.9rem; }
    .reviews-reader-response p{ margin:0; line-height:1.7; color:var(--rv-muted); white-space:pre-wrap; }

    .review-response{
      padding:12px 14px;
      border-radius:14px;
      background:var(--rv-soft);
      display:grid;
      gap:4px;
    }

    .review-response strong{
      font-size:.84rem;
    }

    .review-response p{
      margin:0;
      line-height:1.6;
      color:var(--rv-muted);
      font-size:.93rem;
    }

    .reviews-actions{
      margin-top:22px;
      display:flex;
      justify-content:center;
    }

    .reviews-more-btn{
      appearance:none;
      border:1px solid var(--rv-line);
      background:#fff;
      color:var(--rv-text);
      border-radius:999px;
      padding:12px 18px;
      font:inherit;
      font-weight:700;
      cursor:pointer;
      transition:all .18s ease;
    }

    .reviews-more-btn:hover{
      background:var(--rv-soft);
    }

    .reviews-empty,
    .reviews-loading{
      padding:34px 22px;
      text-align:center;
      color:var(--rv-muted);
      line-height:1.7;
    }

    .reviews-cta-card{
      margin-top:28px;
      padding:24px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      flex-wrap:wrap;
    }

    .reviews-cta-card h3{
      margin:0 0 6px;
      font-size:1.2rem;
    }

    .reviews-cta-card p{
      margin:0;
      color:var(--rv-muted);
      line-height:1.6;
    }

    .reviews-note{
      margin-top:12px;
      color:var(--rv-muted);
      font-size:.88rem;
    }


    .reviews-head-actions{
      display:flex;
      align-items:center;
      gap:12px;
      flex-wrap:wrap;
      margin-top:2px;
    }

    .reviews-submit-btn{
      appearance:none;
      border:1px solid color-mix(in srgb, var(--accent, #111) 22%, white);
      background:color-mix(in srgb, var(--accent, #111) 12%, white);
      color:var(--rv-text);
      border-radius:999px;
      padding:13px 20px;
      font:inherit;
      font-weight:800;
      cursor:pointer;
      transition:all .18s ease;
      box-shadow:0 8px 24px rgba(17,24,39,.08);
    }

    .reviews-submit-btn:hover{ background:color-mix(in srgb, var(--accent, #111) 18%, white); transform:translateY(-1px); }

    .reviews-submit-modal[aria-hidden="true"]{ display:none; }
    .reviews-submit-modal{
      position:fixed;
      inset:0;
      z-index:1000;
    }
    .reviews-submit-backdrop{
      position:absolute;
      inset:0;
      background:rgba(17,24,39,.46);
      backdrop-filter:blur(2px);
    }
    .reviews-submit-panel{
      position:relative;
      z-index:1;
      width:min(760px, calc(100vw - 24px));
      max-height:calc(100vh - 24px);
      overflow:auto;
      margin:12px auto;
      background:#fff;
      border:1px solid var(--rv-line);
      border-radius:24px;
      box-shadow:0 24px 80px rgba(17,24,39,.24);
    }
    .reviews-submit-head{
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap:16px;
      padding:22px 22px 16px;
      border-bottom:1px solid var(--rv-line);
      position:sticky;
      top:0;
      background:#fff;
      z-index:1;
    }
    .reviews-submit-head h3{ margin:0; font-size:1.45rem; }
    .reviews-submit-head p{ margin:6px 0 0; color:var(--rv-muted); line-height:1.6; }
    .reviews-submit-close{
      appearance:none; border:1px solid var(--rv-line); background:#fff; border-radius:999px;
      padding:10px 14px; font:inherit; font-weight:700; cursor:pointer;
    }
    .reviews-submit-form{ padding:20px 22px 22px; display:grid; gap:20px; }
    .reviews-submit-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
    .reviews-field{ display:grid; gap:7px; }
    .reviews-field--full{ grid-column:1 / -1; }
    .reviews-field label{ font-weight:700; font-size:.95rem; }
    .reviews-field .is-required::after{ content:' *'; color:#b42318; font-weight:800; }
    .reviews-required-note{ margin:-6px 0 0; color:var(--rv-muted); font-size:.9rem; }
    .reviews-field small{ color:var(--rv-muted); }
    .reviews-input,
    .reviews-textarea,
    .reviews-select{
      width:100%; border:1px solid var(--rv-line); border-radius:16px; background:#fff;
      padding:13px 14px; font:inherit; color:var(--rv-text);
    }
    .reviews-textarea{ min-height:150px; resize:vertical; }
    .reviews-rating{
      display:grid; gap:10px;
    }
    .reviews-rating-row{ display:flex; gap:10px; flex-wrap:wrap; }
    .reviews-rating-btn{
      appearance:none; border:1px solid var(--rv-line); background:#fff; color:var(--rv-text);
      border-radius:14px; min-width:56px; padding:12px 12px; font:inherit; font-weight:800; cursor:pointer;
      transition:all .18s ease;
    }
    .reviews-rating-btn.is-active,
    .reviews-rating-btn:hover{ background:var(--rv-soft); border-color:rgba(17,17,17,.16); }
    .reviews-check{
      display:flex; gap:10px; align-items:flex-start; color:var(--rv-muted); line-height:1.5;
      font-size:.94rem;
    }
    .reviews-check input{ margin-top:3px; }
    .reviews-submit-actions{ display:flex; gap:12px; justify-content:flex-end; flex-wrap:wrap; }
    .reviews-submit-status{ padding:12px 14px; border-radius:14px; font-size:.94rem; line-height:1.55; }
    .reviews-submit-status.is-error{ background:rgba(185,28,28,.08); color:#991b1b; }
    .reviews-submit-status.is-ok{ background:rgba(21,128,61,.08); color:#166534; }
    .reviews-hidden-hp{ position:absolute !important; left:-9999px !important; width:1px; height:1px; overflow:hidden; }


    .reviews-mobile-featured{
      display:none;
      margin:0 0 18px;
      padding:16px;
      border:1px solid var(--rv-line);
      border-radius:18px;
      background:linear-gradient(180deg, rgba(17,17,17,.02), rgba(17,17,17,0));
    }

    .reviews-mobile-featured-head{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
      margin:0 0 12px;
    }

    .reviews-mobile-featured-head h3{
      margin:0;
      font-size:1rem;
    }

    .reviews-mobile-featured-nav{
      display:flex;
      gap:8px;
      align-items:center;
    }

    .reviews-carousel-btn{
      appearance:none;
      border:1px solid var(--rv-line);
      background:#fff;
      color:var(--rv-text);
      border-radius:999px;
      width:38px;
      height:38px;
      display:grid;
      place-items:center;
      font:inherit;
      font-size:1.05rem;
      font-weight:800;
      cursor:pointer;
      transition:all .18s ease;
      box-shadow:var(--rv-shadow-soft);
    }

    .reviews-carousel-btn:hover{
      background:var(--rv-soft);
    }

    .reviews-carousel-btn:disabled{
      opacity:.45;
      cursor:default;
      box-shadow:none;
    }

    .reviews-mobile-track{
      display:flex;
      gap:14px;
      overflow-x:auto;
      overflow-y:hidden;
      scroll-snap-type:x mandatory;
      -webkit-overflow-scrolling:touch;
      scrollbar-width:none;
      padding-bottom:4px;
    }

    .reviews-mobile-track::-webkit-scrollbar{
      display:none;
    }

    .reviews-mobile-slide{
      flex:0 0 min(86vw, 360px);
      scroll-snap-align:start;
    }

    .reviews-mobile-slide .review-card{
      min-height:auto;
      height:100%;
      box-shadow:var(--rv-shadow-soft);
    }

    @media (max-width: 1180px){
      .reviews-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
    }

    @media (max-width: 980px){
      .reviews-intro{ grid-template-columns:1fr; }
      .reviews-summary-card{ grid-template-columns:1fr; }
      .reviews-score-big{ align-items:flex-start; }
      .reviews-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
    }

    @media (max-width: 640px){
      .reviews-page{ padding:24px 14px 64px; }
      .reviews-hero-card,
      .reviews-summary-card,
      .reviews-list-card,
      .reviews-cta-card{ padding:18px; }
      .reviews-toolbar{ align-items:stretch; }
      .reviews-sort{ width:100%; min-width:0; }
      .reviews-mobile-featured{ display:block; }
      .reviews-grid{ grid-template-columns:1fr; gap:14px; }
      .review-card{ min-height:auto; padding:16px; }
      .review-text{ -webkit-line-clamp:6; }
      .reviews-reader-panel,
      .reviews-submit-panel{ width:min(760px, calc(100vw - 16px)); margin:8px auto; max-height:calc(100vh - 16px); }
      .reviews-reader-head,
      .reviews-reader-nav,
      .reviews-reader-body,
      .reviews-submit-head, .reviews-submit-form{ padding-left:16px; padding-right:16px; }
      .reviews-reader-nav{ align-items:stretch; }
      .reviews-reader-nav-left{ width:100%; justify-content:space-between; }
      .reviews-reader-close{ padding:9px 12px; }
      .reviews-submit-grid{ grid-template-columns:1fr; }
      .reviews-submit-actions > *{ width:100%; }
    }
  

/* Casa Turcu Guest · ajuste local basado en reviews.html del tema estándar */
html[data-theme] .reviews-page { width:min(100%,1200px); }
html[data-theme] .reviews-page .reviews-submit-btn:not(:disabled) {
  background:var(--vtw-accent,#b84c00);
  color:#fff;
  border:0;
}
html[data-theme] .reviews-page .reviews-submit-btn:hover:not(:disabled) {
  background:var(--vtw-accent-hover,#a24300);
}
html[data-theme] .reviews-page .reviews-chip,
html[data-theme] .reviews-page .reviews-kicker {
  border:1px solid color-mix(in srgb,var(--vtw-accent,#b84c00) 22%,transparent);
}
html[data-theme] .reviews-page .reviews-bar > span { background:var(--vtw-accent,#b84c00); }
html[data-theme] .reviews-reader-modal[aria-hidden="false"],
html[data-theme] .reviews-submit-modal[aria-hidden="false"] {
  z-index:2147483647!important;
}
html[data-theme] body:has(.reviews-reader-modal[aria-hidden="false"]) #atHamb,
html[data-theme] body:has(.reviews-submit-modal[aria-hidden="false"]) #atHamb {
  pointer-events:none!important;
}
.reviews-note{font-size:.85rem;color:var(--rv-muted)}
.reviews-submit-status{padding:10px 12px;border-radius:11px;margin-top:8px}
.reviews-submit-status.is-ok{background:#ecfdf3;color:#166534}
.reviews-submit-status.is-error{background:#fff1f2;color:#a61b3b}
