/* ===========================
   Color Echo
   style.css
=========================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    -webkit-tap-highlight-color:transparent;
}

body{
    font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
    background:linear-gradient(135deg,#111827,#1f2937);
    min-height:100vh;
    display:flex;
    justify-content:center;
    align-items:center;
    color:#fff;
    padding:20px;
}

.container{
    width:100%;
    max-width:480px;
    background:#1b2433;
    border-radius:20px;
    padding:25px;
    box-shadow:0 20px 45px rgba(0,0,0,.35);
}

h1{
    text-align:center;
    font-size:2rem;
    margin-bottom:25px;
    font-weight:700;
}

.top-bar{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
    margin-bottom:20px;
}

.card{
    background:#273244;
    border-radius:14px;
    padding:12px;
    text-align:center;
}

.card span{
    display:block;
    font-size:.8rem;
    color:#b7c2d0;
    margin-bottom:6px;
}

.card strong{
    font-size:1.3rem;
}

#status{
    text-align:center;
    background:#273244;
    padding:14px;
    border-radius:14px;
    margin-bottom:20px;
    font-weight:600;
    min-height:50px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.game-board{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:18px;
    margin-bottom:25px;
}

.color{
    width:100%;
    aspect-ratio:1/1;
    border:none;
    border-radius:22px;
    cursor:pointer;
    transition:.18s;
    opacity:.92;
}

.color:active{
    transform:scale(.95);
}

.red{
    background:#ef4444;
    box-shadow:0 0 20px rgba(239,68,68,.35);
}

.blue{
    background:#3b82f6;
    box-shadow:0 0 20px rgba(59,130,246,.35);
}

.green{
    background:#22c55e;
    box-shadow:0 0 20px rgba(34,197,94,.35);
}

.yellow{
    background:#facc15;
    box-shadow:0 0 20px rgba(250,204,21,.35);
}

.active{
    transform:scale(1.06);
    filter:brightness(1.55);
    box-shadow:0 0 35px rgba(255,255,255,.85);
}

.controls{
    display:flex;
    gap:12px;
}

.controls button{
    flex:1;
    border:none;
    border-radius:14px;
    padding:15px;
    font-size:1rem;
    font-weight:700;
    cursor:pointer;
    transition:.2s;
}

#startBtn{
    background:#2563eb;
    color:#fff;
}

#restartBtn{
    background:#374151;
    color:#fff;
}

.controls button:hover{
    transform:translateY(-2px);
}

.controls button:active{
    transform:scale(.97);
}

@media(max-width:480px){

    h1{
        font-size:1.7rem;
    }

    .container{
        padding:18px;
    }

    .game-board{
        gap:14px;
    }

}