/* Rezidence 3 Dvory - Global Styles */
/* 20 rules in 15+ files */

.apartment-table {
            background: #fff;
            border-radius: 8px;
            overflow: hidden;
            box-shadow: 0 2px 10px rgba(0,0,0,0.05);
        }

.apartment-table { overflow-x: auto; }

.apartment-table table {
            width: 100%;
            border-collapse: collapse;
        }

.apartment-table table { min-width: 600px; }

.apartment-table tbody tr:nth-child(even) {
            background: #FAF7F5;
        }

.apartment-table td {
            padding: 10px 8px;
            border-bottom: 1px solid #F0E8E0;
            font-size: 0.9rem;
            text-align: center;
            color: #666;
        }

.apartment-table td strong {
            color: #6B4C3A;
        }

.apartment-table th {
            background: #6B4C3A;
            color: #fff;
            padding: 12px 10px;
            text-align: center;
            font-weight: 500;
            font-size: 0.85rem;
        }

.apartment-table tr:hover {
            background: #F5EDE8;
        }

/* Skeleton placeholder rows (CLS fix) — match real row height to prevent layout shift.
   Real row uses <span class="status"> with padding 4px + font-size 0.7rem (line-height ~1.2)
   = inline-flex box height ~22px which dictates the row height.
   We replicate that height in ::before so skeleton <td> matches real <td>. */
.apartment-table tbody tr.skeleton-row:hover {
    background: inherit;
}
.apartment-table tbody tr.skeleton-row td {
    color: transparent;
    line-height: 1.2;
}
.apartment-table tbody tr.skeleton-row td::before {
    content: '';
    display: inline-block;
    height: calc(0.7rem * 1.2 + 8px); /* matches .status: font 0.7rem × line-height 1.2 + padding 4px×2 */
    width: 60%;
    background: #F0E8E0;
    border-radius: 3px;
    vertical-align: middle;
}

.floor-plan { text-align: center; margin-bottom: 40px; }

.floor-plan img { max-width: 100%; height: auto; border-radius: 12px; box-shadow: 0 4px 20px rgba(0,0,0,0.1); }

.section { padding: 60px 0; }

.section-header { text-align: center; max-width: 700px; margin: 0 auto 40px; }

.status {
            display: inline-flex;
            align-items: center;
            padding: 4px 10px;
            border-radius: 4px;
            font-size: 0.7rem;
            font-weight: 500;
        }

.status-available {
            background: transparent;
            color: var(--color-success);
        }




/* Shared Header / Navigation */
.nav-links a {
            color: var(--color-text-primary);
            text-decoration: none;
            font-size: 0.95rem;
            font-weight: 500;
            transition: var(--transition);
            position: relative;
        }

.nav-links a::after {
            content: '';
            position: absolute;
            bottom: -4px;
            left: 0;
            width: 0;
            height: 2px;
            background-color: var(--color-primary);
            transition: var(--transition);
        }

.nav {
            display: flex;
            align-items: center;
            gap: 32px;
        }

.nav-links a:hover::after,
.nav-links a.active::after {
            width: 100%;
        }

.nav-links a:hover,
.nav-links a.active {
            color: var(--color-primary);
        }


/* Interactive Floor Plan */
.floor-plan-container { position: relative; border-radius: 8px; overflow: hidden; max-width: 900px; margin: 0 auto; }
.floor-plan-container img { width: 100%; height: auto; display: block; filter: sepia(10%) brightness(0.95); }
.floor-plan-container svg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.floor-plan-container svg a path { fill: rgba(168, 90, 58, 0.1); stroke: #fff; stroke-width: 2; cursor: pointer; transition: all 0.3s ease; }
.floor-plan-container svg a:hover path { fill: rgba(168, 90, 58, 0.4); stroke: var(--color-primary); }
.floor-plan-container svg a:hover .apt-label { fill: #fff; font-weight: bold; }
.apt-label { fill: rgba(255,255,255,0.6); font-family: var(--font-body); font-size: 14px; text-anchor: middle; pointer-events: none; }
.floor-plan-wrapper { max-width: 900px; width: 100%; }
