/* =========================================================
   LNT Real Estate - public styles
   Spalvos suderintos su esamu lnt.lt puslapiu:
   - Žalia (pagrindinė):  #3eaf3e / #2e8b2e (header, kainos, mygtukai)
   - Geltona (akcentas):  #fbc02d (CTA Siųsti)
   - Šviesi pilka fonas:  #f5f5f5
   - Tekstas:             #222 / #555
   ========================================================= */

:root{
    --lnt-green:        #318135;
    --lnt-green-dark:   #256128;
    --lnt-green-light:  #e8f5e9;
    --lnt-yellow:       #fbc02d;
    --lnt-yellow-dark:  #f9a825;
    --lnt-gray:         #f5f5f5;
    --lnt-gray-border:  #e0e0e0;
    --lnt-text:         #222;
    --lnt-text-muted:   #666;
    --lnt-shadow:       0 2px 6px rgba(0,0,0,0.06);
    --lnt-shadow-h:     0 4px 14px rgba(0,0,0,0.10);
    --lnt-radius:       6px;
}

/* ------------ BENDRA ------------ */
.lnt-page{ max-width: 1280px; margin: 0 auto; padding: 16px; }

.lnt-btn{
    background: var(--lnt-green); color:#fff; padding: 10px 22px;
    border:none; border-radius: var(--lnt-radius); font-weight:600;
    cursor:pointer; font-size:15px; text-decoration:none; display:inline-block;
    transition: background .15s ease;
}
.lnt-btn:hover{ background: var(--lnt-green-dark); color:#fff; }
.lnt-btn--yellow{ background: var(--lnt-yellow); color:#222; }
.lnt-btn--yellow:hover{ background: var(--lnt-yellow-dark); color:#222; }
.lnt-btn-secondary{
    background:#fff; color: var(--lnt-text); padding: 8px 14px;
    border:1px solid var(--lnt-gray-border); border-radius: var(--lnt-radius);
    cursor:pointer; display:inline-flex; align-items:center; gap:6px;
    text-decoration:none; font-size:14px;
}
.lnt-btn-secondary:hover{ border-color: var(--lnt-green); color: var(--lnt-green); }
.lnt-btn-secondary.is-active{ color: var(--lnt-green); border-color: var(--lnt-green); }
.lnt-btn-reset{
    color: var(--lnt-text-muted); text-decoration:none; padding: 10px 16px;
}

/* ------------ PAIEŠKOS FORMA ------------ */
.lnt-search{
    background: var(--lnt-gray); padding: 20px; border-radius: var(--lnt-radius);
    margin-bottom: 24px;
}
.lnt-search__title{ margin: 0 0 14px; font-size: 20px; color: var(--lnt-text); }
.lnt-search__row{
    display:grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 10px; margin-bottom: 10px;
}
.lnt-search__field label{
    display:block; font-size:12px; color: var(--lnt-text-muted);
    margin-bottom: 4px; text-transform: uppercase; letter-spacing: .3px;
}
.lnt-search__field input,
.lnt-search__field select{
    width:100%; padding: 8px 10px; border:1px solid var(--lnt-gray-border);
    border-radius: 4px; background:#fff; font-size:14px;
}
.lnt-search__field input:focus,
.lnt-search__field select:focus{ border-color: var(--lnt-green); outline:none; }
.lnt-search__advanced summary{
    cursor:pointer; padding: 8px 0; color: var(--lnt-yellow-dark);
    font-weight:600; user-select:none;
}
.lnt-search__submit-row{
    display:flex; justify-content:flex-end; align-items:center; gap:10px;
    margin-top: 10px;
}

/* ------------ TINKLELIS ------------ */
.lnt-grid{
    display:grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 18px;
}
.lnt-results-count{ color: var(--lnt-text-muted); margin-bottom: 10px; }

/* ------------ OBJEKTO KORTELĖ ------------ */
.lnt-card{
    background:#fff; border:1px solid var(--lnt-gray-border);
    border-radius: var(--lnt-radius); overflow:hidden; display:flex;
    flex-direction:column; transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease;
}
.lnt-card:hover{
    box-shadow: 0 8px 28px rgba(0,0,0,0.16);
    transform: translateY(-4px);
    border-color: transparent;
}
.lnt-card__media{ position:relative; display:block; aspect-ratio: 4/3; background: var(--lnt-gray); }
.lnt-card__media img{ width:100%; height:100%; object-fit:cover; display:block; }
.lnt-card__no-photo{
    width:100%; height:100%; display:flex; align-items:center; justify-content:center;
    color:#aaa; font-size:14px;
}
.lnt-card__count{
    position:absolute; left:10px; bottom:10px; background: rgba(0,0,0,.65); color:#fff;
    padding: 3px 8px; border-radius: 12px; font-size:12px;
}
.lnt-card__sale{
    position:absolute; top:10px; left:10px; background: var(--lnt-yellow); color:#222;
    padding: 4px 10px; border-radius: 14px; font-weight:700; font-size:12px;
}
.lnt-card__price-row{
    display:flex; justify-content:space-between; align-items:center;
    padding: 10px 14px 0;
}
.lnt-card__price{ color: var(--lnt-green); font-weight:700; font-size:20px; }
.lnt-card__price small{ font-size:13px; color: var(--lnt-text-muted); font-weight:400; }
.lnt-card__actions button{
    background:#fff; border:1px solid var(--lnt-gray-border); cursor:pointer;
    width:32px; height:32px; border-radius:50%; color: var(--lnt-text-muted);
    margin-left: 4px; transition: all .15s;
    display:inline-flex; align-items:center; justify-content:center; padding:0;
}
.lnt-card__actions .lnt-fav.is-active{ color: #e53935; border-color:#e53935; }
.lnt-card__actions .lnt-fav.is-active svg{ fill: #e53935; }
.lnt-card__actions button:hover{ border-color: var(--lnt-green); color: var(--lnt-green); }
.lnt-card__title{ font-size:15px; margin: 10px 14px 4px; font-weight:600; }
.lnt-card__title a{ color: var(--lnt-text); text-decoration:none; }
.lnt-card__title a:hover{ color: var(--lnt-green); }
.lnt-card__addr{ margin: 0 14px 8px; color: var(--lnt-text-muted); font-size:13px; }
.lnt-card__specs{ list-style:none; padding: 8px 14px; margin:0;
    border-top:1px solid var(--lnt-gray-border); display:flex; flex-wrap:wrap; gap: 12px; font-size:13px; }
.lnt-card__specs li{ color: var(--lnt-text-muted); }
.lnt-card__specs strong{ color: var(--lnt-green); }
.lnt-card__foot{
    display:flex; justify-content:space-between; align-items:center;
    padding: 8px 14px; background: var(--lnt-gray); font-size:13px;
}
.lnt-card__agent strong{ color: var(--lnt-text); }
.lnt-card__code{ color: var(--lnt-text-muted); font-family: ui-monospace, monospace; }

/* ------------ SINGLE ------------ */
.lnt-single{ max-width: 1280px; margin: 0 auto; padding: 16px; }
.lnt-single__top{ margin-bottom: 10px; }
.lnt-back{ color: var(--lnt-text-muted); text-decoration:none; }
.lnt-back:hover{ color: var(--lnt-green); }
.lnt-single__layout{
    display:grid; grid-template-columns: 1.4fr 1fr; gap: 24px;
}
.lnt-single__title{ font-size: 26px; margin: 0 0 6px; color: var(--lnt-text); }
.lnt-single__title small{ display:block; font-size:15px; font-weight:400; color: var(--lnt-text-muted); margin-top:4px; }
.lnt-single__price{ font-size: 30px; font-weight: 800; color: var(--lnt-green); margin: 10px 0; }
.lnt-single__price small{ font-size:16px; font-weight:400; color: var(--lnt-text-muted); }
.lnt-single__price del{ font-size:18px; color:#999; margin-left:10px; }
.lnt-single__actions{ display:flex; gap:8px; flex-wrap:wrap; margin-bottom:14px; }
.lnt-single__share-bar{ display:flex; gap:6px; flex-wrap:wrap; font-size:13px; margin-bottom: 20px; }
.lnt-single__share-bar a{
    background: var(--lnt-gray); padding: 4px 10px; border-radius: 12px;
    color: var(--lnt-text-muted); text-decoration:none;
}
.lnt-single__share-bar a:hover{ background: var(--lnt-green); color:#fff; }

.lnt-single__section{
    background:#fff; border:none;
    box-shadow: 0 2px 10px rgba(0,0,0,0.08);
    border-radius: 8px; padding: 20px; margin-bottom: 16px;
}
.lnt-single__section h3{ margin: 0 0 10px; color: var(--lnt-green); font-size:16px; text-transform: uppercase; letter-spacing: .5px; }
.lnt-single__desc{ line-height: 1.6; color: var(--lnt-text); }
.lnt-info-table{ width:100%; border-collapse:collapse; font-size:14px; }
.lnt-info-table td{ padding: 5px 6px; border-bottom: 1px solid var(--lnt-gray-border); }
.lnt-info-table td:first-child{ color: var(--lnt-text-muted); width: 40%; }
.lnt-features{ list-style:none; padding:0; margin:0;
    display:grid; grid-template-columns: repeat(auto-fill, minmax(180px,1fr)); gap: 6px; }
.lnt-features li{ color: var(--lnt-text); font-size:14px; display:flex; align-items:center; gap:6px; }
.lnt-features li .lnt-feat-check{ color: var(--lnt-green); font-weight:700; }
.lnt-features li .lnt-feat-name{ color: var(--lnt-text); }

/* GALERIJA */
.lnt-gallery__main{ position:relative; background:#000; border-radius: var(--lnt-radius); overflow:hidden; }
.lnt-gallery__main img{ width:100%; max-height:560px; object-fit:contain; background:#000; display:block; cursor: zoom-in; }
.lnt-gallery__sale{
    position:absolute; top:14px; left:14px; background: var(--lnt-yellow); color:#222;
    padding: 5px 12px; border-radius: 16px; font-weight:700;
}
.lnt-gallery__nav{
    position:absolute; top:50%; transform:translateY(-50%);
    background: rgba(0,0,0,.55); color:#fff; border:none; cursor:pointer;
    width: 44px; height: 44px; border-radius: 50%; font-size: 28px; line-height: 1;
    transition: background .15s;
}
.lnt-gallery__nav:hover{ background: var(--lnt-green); }
.lnt-gallery__prev{ left: 12px; }
.lnt-gallery__next{ right: 12px; }
.lnt-gallery__counter{
    position:absolute; right:14px; bottom:14px; background: rgba(0,0,0,.55); color:#fff;
    padding: 3px 10px; border-radius: 14px; font-size: 13px;
}
.lnt-gallery__thumbs{ display:grid; grid-template-columns: repeat(auto-fill, minmax(70px,1fr)); gap:6px; margin-top: 8px; }
.lnt-gallery__thumb{
    background:none; border:2px solid transparent; padding:0; cursor:pointer;
    border-radius: 4px; overflow:hidden;
}
.lnt-gallery__thumb.is-active{ border-color: var(--lnt-green); }
.lnt-gallery__thumb img{ width:100%; height:60px; object-fit:cover; display:block; }

/* LIGHTBOX */
.lnt-lightbox{
    display:none; position:fixed; inset:0; background:rgba(0,0,0,.9); z-index:99999;
    align-items:center; justify-content:center; padding: 40px;
}
.lnt-lightbox.is-open{ display:flex; }
.lnt-lightbox img{ max-width:100%; max-height:100%; }
.lnt-lightbox__close{
    position:absolute; top:20px; right:30px; background:none; border:none;
    color:#fff; font-size: 32px; cursor:pointer;
}
.lnt-lightbox__nav{
    position:absolute; top:50%; transform:translateY(-50%);
    background: rgba(255,255,255,.15); color:#fff; border:none; cursor:pointer;
    width:50px; height:50px; border-radius: 50%; font-size: 28px;
}
.lnt-lightbox__prev{ left: 20px; }
.lnt-lightbox__next{ right: 20px; }

/* AGENT POLISH */
.lnt-agent__name{ font-size: 16px; color: var(--lnt-text); }
.lnt-agent__pos{ color: var(--lnt-text-muted); font-size: 13px; margin: 2px 0 8px; }
.lnt-agent__contacts{ font-size: 14px; line-height: 1.7; }
.lnt-agent__contacts a{ color: var(--lnt-text); }
.lnt-agent__contacts a:hover{ color: var(--lnt-green); }
.lnt-agent__sig{ color: var(--lnt-text-muted); font-style: italic; margin-top: 10px; font-size: 13px; }

/* AGENT CARD */
.lnt-agent-card, .lnt-msg-card{
    background:#fff; border:none;
    box-shadow: 0 2px 10px rgba(0,0,0,0.08);
    border-radius: 8px; padding: 20px; margin-bottom: 16px;
}
.lnt-agent-card h3, .lnt-msg-card h3{
    margin:0 0 12px; color: var(--lnt-green); font-size:14px;
    text-transform:uppercase; letter-spacing:.5px;
}
.lnt-agent__row{ display:flex; gap:12px; align-items:flex-start; }
.lnt-agent__info{ flex:1; font-size:14px; line-height:1.7; }
.lnt-agent__info a{ color: var(--lnt-text); text-decoration:none; }
.lnt-agent__info a:hover{ color: var(--lnt-green); }
.lnt-agent__photo img{ width: 130px; aspect-ratio:1; object-fit:cover; border-radius: 8px; background: var(--lnt-yellow); }
.lnt-agent__sig{ color: var(--lnt-text-muted); font-style:italic; margin-top: 8px; }

/* FORMOS */
.lnt-msg-form label, .lnt-subscribe label, .lnt-submit-form label{
    display:block; margin-bottom: 12px;
}
.lnt-msg-form label span, .lnt-subscribe label span, .lnt-submit-form label span{
    display:block; font-size:12px; color: var(--lnt-text-muted);
    text-transform:uppercase; letter-spacing: .3px; margin-bottom: 4px;
}
.lnt-msg-form input, .lnt-msg-form textarea,
.lnt-subscribe input, .lnt-subscribe textarea, .lnt-subscribe select,
.lnt-submit-form input, .lnt-submit-form textarea, .lnt-submit-form select{
    width:100%; padding: 10px; border:1px solid var(--lnt-gray-border);
    border-radius: 4px; font-size:14px;
}
.lnt-msg-form input:focus, .lnt-subscribe input:focus, .lnt-submit-form input:focus,
.lnt-msg-form textarea:focus, .lnt-subscribe textarea:focus, .lnt-submit-form textarea:focus{
    border-color: var(--lnt-green); outline:none;
}
.lnt-checkbox-grid{
    display:grid; grid-template-columns: repeat(auto-fill, minmax(140px,1fr)); gap: 6px;
}
.lnt-checkbox-grid label{ display:flex; align-items:center; gap:6px; margin:0; }
.lnt-row{
    display:grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 10px;
}

/* PAGINATION */
.lnt-pagination{ display:flex; justify-content:center; gap:6px; margin-top: 24px; }
.lnt-pagination a, .lnt-pagination span{
    padding: 6px 12px; border:1px solid var(--lnt-gray-border);
    border-radius: 4px; color: var(--lnt-text); text-decoration:none;
}
.lnt-pagination .current{ background: var(--lnt-green); color:#fff; border-color: var(--lnt-green); }

/* APIE MUS */
.lnt-about{ max-width: 1100px; margin: 24px auto; padding: 24px 16px; }
.lnt-about__top h2{ color: var(--lnt-green); font-size: 28px; margin: 0 0 10px; }
.lnt-about__lead{ font-size: 17px; line-height: 1.6; color: var(--lnt-text); max-width: 800px; }
.lnt-about__stats{
    display:grid; grid-template-columns: repeat(auto-fit, minmax(180px,1fr));
    gap: 16px; margin: 24px 0;
}
.lnt-stat{
    background: var(--lnt-green-light); padding: 22px; border-radius: var(--lnt-radius);
    text-align:center;
}
.lnt-stat__num{ color: var(--lnt-green-dark); font-size: 36px; font-weight: 800; line-height:1; }
.lnt-stat__label{ color: var(--lnt-text); margin-top: 6px; }
.lnt-about__pillars{
    display:grid; grid-template-columns: repeat(auto-fit, minmax(260px,1fr));
    gap: 16px; margin-top: 24px;
}
.lnt-pillar h3{ color: var(--lnt-green); margin: 0 0 8px; }
.lnt-pillar p{ color: var(--lnt-text); line-height:1.6; }

/* ACCOUNT */
.lnt-account{ background: var(--lnt-gray); padding: 20px; border-radius: var(--lnt-radius); }
.lnt-account__links{ list-style:none; padding:0; margin: 12px 0 0; }
.lnt-account__links li{ padding: 6px 0; }
.lnt-account__links a{ color: var(--lnt-text); text-decoration:none; font-size:15px; }
.lnt-account__links a:hover{ color: var(--lnt-green); }

.lnt-auth{ display:grid; grid-template-columns: 1fr 1fr; gap: 24px; max-width: 800px; margin: 0 auto; }
.lnt-auth__col{ background: var(--lnt-gray); padding: 20px; border-radius: var(--lnt-radius); }
.lnt-auth__col h2{ color: var(--lnt-green); margin: 0 0 12px; }

/* Prisijungimo formos laukeliai - tvarkinga vertikali išdėstis */
#loginform { margin: 0; }
#loginform p { margin: 0 0 12px; }
#loginform label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: #444;
    margin-bottom: 4px;
}
#loginform input[type="text"],
#loginform input[type="password"] {
    display: block;
    width: 100%;
    padding: 8px 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: 14px;
    box-sizing: border-box;
    background: #fff;
}
#loginform input[type="text"]:focus,
#loginform input[type="password"]:focus {
    border-color: var(--lnt-green);
    outline: none;
    box-shadow: 0 0 0 2px rgba(49,129,53,.15);
}
#loginform .login-remember label {
    font-weight: 400;
    display: flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
}
#loginform .login-submit { margin: 16px 0 0; }
#loginform #wp-submit {
    background: var(--lnt-green);
    color: #fff;
    border: none;
    padding: 10px 24px;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    width: 100%;
}
#loginform #wp-submit:hover { background: var(--lnt-green-dark); }

/* Registracijos forma */
.lnt-reg-field { margin-bottom: 12px; }
.lnt-reg-field label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: #444;
    margin-bottom: 4px;
}
.lnt-reg-field input {
    display: block;
    width: 100%;
    padding: 8px 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: 14px;
    box-sizing: border-box;
    background: #fff;
}
.lnt-reg-field input:focus {
    border-color: var(--lnt-green);
    outline: none;
    box-shadow: 0 0 0 2px rgba(49,129,53,.15);
}
.lnt-reg-btn {
    background: var(--lnt-green);
    color: #fff;
    border: none;
    padding: 10px 24px;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    width: 100%;
    margin-top: 4px;
}
.lnt-reg-btn:hover { background: var(--lnt-green-dark); }
.lnt-reg-btn:disabled { opacity: .6; cursor: not-allowed; }
.lnt-reg-msg {
    padding: 9px 12px;
    border-radius: 4px;
    font-size: 13px;
    margin-bottom: 10px;
}
.lnt-reg-msg.ok  { background: #e8f5e9; color: #2e7d32; border: 1px solid #a5d6a7; }
.lnt-reg-msg.err { background: #ffebee; color: #c62828; border: 1px solid #ef9a9a; }

.lnt-empty{ text-align:center; padding: 40px; color: var(--lnt-text-muted); background: var(--lnt-gray); border-radius: var(--lnt-radius); }
.lnt-notice{ background: var(--lnt-green-light); padding: 14px 18px; border-left: 4px solid var(--lnt-green); border-radius: 4px; margin: 14px 0; }
.lnt-favorites__actions{ display:flex; justify-content:space-between; align-items:center; margin: 12px 0 20px; }

/* MAP */
.lnt-map{ padding: 0 !important; overflow: hidden; }
.lnt-map__head{
    display: flex; align-items: center; justify-content: space-between;
    padding: 14px 16px 12px;
}
.lnt-map__title{ margin: 0; font-size: 14px; font-weight: 700; text-transform: uppercase;
    letter-spacing: .5px; color: var(--lnt-green); }
.lnt-map__gmaps{
    display: inline-flex; align-items: center; gap: 5px;
    font-size: 12px; color: var(--lnt-green); text-decoration: none; font-weight: 600;
    border: 1px solid var(--lnt-green); border-radius: 4px; padding: 4px 10px;
    transition: background .15s, color .15s;
}
.lnt-map__gmaps:hover{ background: var(--lnt-green); color: #fff; text-decoration: none; }
#lnt-single-map{ height: 360px; width: 100%; background: #e8f5e9; }
.lnt-map__loading, .lnt-map__noresult{
    height: 360px; display: flex; align-items: center; justify-content: center;
    color: var(--lnt-text-muted); font-size: 14px; background: var(--lnt-gray);
}
.lnt-map-pin{ background: transparent; border: none; }

/* ------------ RESPONSIVE ------------ */
@media (max-width: 768px){
    .lnt-single__layout{ grid-template-columns: 1fr; }
    .lnt-auth{ grid-template-columns: 1fr; }
    .lnt-gallery__main img{ max-height: none; height: auto; aspect-ratio: 4/3; object-fit: cover; }
    .lnt-card__price{ font-size: 18px; }
    .lnt-card__title{ font-size: 14px; }
    /* Lightbox - visas ekranas mobiliame */
    .lnt-lightbox{ padding: 56px 0 48px; align-items: center; }
    .lnt-lightbox img{ width: 100%; height: calc(100vh - 104px); max-height: none; object-fit: contain; }
    .lnt-lightbox__close{ top: 12px; right: 14px; font-size: 26px; }
    .lnt-lightbox__prev{ left: 6px; width: 40px; height: 40px; font-size: 22px; }
    .lnt-lightbox__next{ right: 6px; width: 40px; height: 40px; font-size: 22px; }
}
@media (max-width: 480px){
    .lnt-search__row{ grid-template-columns: 1fr 1fr; }
    .lnt-grid{ grid-template-columns: 1fr; }
    .lnt-single__title{ font-size: 22px; }
    .lnt-single__price{ font-size: 24px; }
    .lnt-gallery__main{ border-radius: 0; }
}
/* Horizontali telefonų padėtis */
@media (orientation: landscape) and (max-height: 500px){
    .lnt-single__layout{ grid-template-columns: 1fr; }
    .lnt-gallery__main img{ aspect-ratio: 16/9; }
    .lnt-lightbox img{ height: calc(100vh - 40px); }
    .lnt-lightbox{ padding: 20px 56px; }
    .lnt-lightbox__close{ top: 6px; right: 12px; }
}

/* PRINT mygtuko stilius dingsta spausdinant */
@media print {
    .no-print { display:none !important; }
}
