:root{
  --accent:#2f2f2f;
  --muted:#9a9a9a;
}

*{box-sizing:border-box}

body{
    font-family:system-ui,-apple-system,Segoe UI,Roboto,'Helvetica Neue',Arial;
    background:linear-gradient(90deg,#1f1f1f,#3a3a3a);
    color:#f5f5f5;
    margin:0
}

/* ================= TOP BAR ================= */
.topbar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:14px 16px;
    background:rgba(30,30,30,0.6);
    backdrop-filter:blur(10px);
    border-bottom:1px solid rgba(255,255,255,0.08)
}

.topbar h1{
    margin:0;
    font-size:18px;
    color:#ffffff
}

.topbar .tag{
    margin:0;
    font-size:12px;
    color:var(--muted)
}

.admin-link{
    font-size:14px;
    color:var(--muted);
    text-decoration:none
}

/* ================= LAYOUT ================= */
.container{
    padding:16px;
    max-width:1100px;
    margin:0 auto
}

.hero{padding:10px 0}

.products{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
    gap:18px;
    margin-top:12px
}

/* ================= CARDS ================= */
.card{
    border:1px solid rgba(255,255,255,0.08);
    border-radius:10px;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    background:rgba(40,40,40,0.5);
    backdrop-filter:blur(10px);
    color:#fff
}

.card-media{background:transparent}

.card-media img{
    width:100%;
    height:260px;
    object-fit:cover
}

.card-body{padding:12px}

.card-body h3{
    margin:0 0 6px 0;
    color:#ffffff
}

.price{
    color:#d1d1d1;
    font-weight:700;
    margin:6px 0
}

/* ================= ACTIONS ================= */
.actions{
    display:flex;
    gap:8px;
    margin-top:8px;
    align-items:center
}

button{
    background:linear-gradient(90deg,#2f2f2f,#3a3a3a);
    color:#fff;
    padding:8px 10px;
    border:1px solid rgba(255,255,255,0.1);
    border-radius:8px;
    cursor:pointer
}

a.video-btn{
    display:inline-block;
    padding:8px 10px;
    border-radius:8px;
    background:rgba(255,255,255,0.08);
    border:1px solid rgba(255,255,255,0.1);
    color:#ddd;
    text-decoration:none;
    margin-left:6px
}

/* ================= FORMS ================= */
.form-box, .login-box{
    max-width:480px;
    margin:30px auto;
    padding:16px;
    border:1px solid rgba(255,255,255,0.1);
    border-radius:8px;
    background:rgba(30,30,30,0.6)
}

.form-box label, .login-box label{
    display:block;
    margin:8px 0
}

.form-box input, .login-box input, textarea{
    width:100%;
    padding:8px;
    border:1px solid rgba(255,255,255,0.1);
    border-radius:6px;
    background:#2a2a2a;
    color:#fff
}

.form-actions{
    display:flex;
    gap:10px;
    margin-top:10px
}

/* ================= MODAL ================= */
.modal{
    display:none;
    position:fixed;
    inset:0;
    background:rgba(0,0,0,0.7);
    align-items:center;
    justify-content:center
}

.modal.show{display:flex}

.modal-content{
    background:rgba(30,30,30,0.6);
    padding:16px;
    border-radius:10px;
    max-width:520px;
    width:95%;
    position:relative;
    backdrop-filter:blur(15px);
    border:1px solid rgba(255,255,255,0.1)
}

.modal-close{
    position:absolute;
    right:8px;
    top:8px;
    border:none;
    background:transparent;
    font-size:18px;
    color:#fff
}

.hint{
    font-size:12px;
    color:var(--muted)
}

/* ================= ADMIN ================= */
.admin-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
    gap:12px
}

.admin-card{
    display:flex;
    gap:10px;
    padding:10px;
    border:1px solid rgba(255,255,255,0.1);
    border-radius:8px;
    background:rgba(30,30,30,0.6)
}

.admin-card img{
    width:120px;
    height:100px;
    object-fit:cover;
    border-radius:6px
}

.admin-ctrls a{
    margin-right:8px;
    color:var(--muted);
    text-decoration:none
}

/* ================= WHATSAPP ================= */
.whatsapp-btn{
    background:linear-gradient(90deg,#25D366,#128C7E);
    color:#fff !important;
    border-radius:8px;
    padding:10px 14px;
    font-weight:bold;
    font-size:14px;
    box-shadow:0 4px 12px rgba(37,211,102,0.3);
    border:none;
    cursor:pointer;
    transition:0.2s ease
}

.whatsapp-btn:hover{
    opacity:0.85;
    transform:translateY(-2px)
}

/* ================= HERO ================= */
.hero{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:30px 20px !important;
    flex-wrap:wrap;
    background:rgba(30,30,30,0.45);
    backdrop-filter:blur(10px);
    border-radius:16px;
    border:1px solid rgba(255,255,255,0.08)
}

.hero-left{
    flex:1;
    min-width:260px
}

.hero-left h2{
    font-size:28px;
    font-weight:700;
    margin-bottom:6px;
    color:#ffffff
}

.hero-left p{
    font-size:16px;
    color:var(--muted);
    margin-bottom:14px
}

.hero-cta{
    display:flex;
    gap:10px;
    flex-wrap:wrap
}

.hero-right{
    flex:1;
    min-width:260px;
    display:flex;
    justify-content:flex-end
}

/* ================= MAP ================= */
.map-card{
    width:100%;
    max-width:380px;
    border-radius:14px;
    overflow:hidden;
    background:rgba(30,30,30,0.45);
    border:1px solid rgba(255,255,255,0.08)
}

.map-card iframe{
    width:100%;
    height:220px;
    border:none
}

.map-caption{
    padding:10px 12px;
    background:rgba(0,0,0,0.4);
    font-size:14px;
    color:#ddd;
    font-weight:600
}

/* ================= MOBILE ================= */
@media (max-width:768px){
    .hero{
        flex-direction:column;
        text-align:center;
        padding:20px 10px !important
    }

    .hero-left h2{font-size:22px}
    .hero-left p{font-size:15px}

    .hero-right{
        justify-content:center;
        width:100%
    }

    .map-card iframe{height:200px}
}

@media (max-width:520px){
    .card-media img{height:180px}
}

@media (max-width:480px){
    .map-card{max-width:100%}
    .hero-left h2{font-size:20px}
    .hero-left p{font-size:14px}
}
.btn {
    background: #ffffff;
    color: #000000 !important;
    border: 1px solid #ddd;
    padding: 8px 12px;
    border-radius: 8px;
    text-decoration: none;
    display: inline-block;
}
