body {
    font-family: Arial, sans-serif;
    background-color: #f8f8f8;
    margin: 0;
    padding: 0;
}

.wrap {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}

h1,h2,h3,p,li {
    font-family: Arial, sans-serif;
}

textarea#urduInput {
    font-family: 'Jameel Noori Nastaleeq', 'Noto Nastaliq Urdu', serif;
    font-size: 22px;
    width: 100%;
    min-height: 220px;
    padding: 12px;
    border-radius: 8px;
    border: 1px solid #ccc;
    line-height: 1.5;
    direction: rtl;
    resize: vertical;
}

.urdu-toolbar {
    margin-bottom: 10px;
}

.urdu-toolbar button, .urdu-toolbar select {
    padding: 8px 14px;
    margin-right: 8px;
    border-radius: 6px;
    border: 1px solid #bbb;
    cursor: pointer;
}

.virtual-keyboard {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-top: 12px;
    user-select: none;
}

.keyboard-row {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

.keyboard-key {
    padding: 14px 16px;
    font-size: 18px;
    border-radius: 6px;
    border: 1px solid #bbb;
    background-color: #f0f0f0;
    text-align: center;
    cursor: pointer;
    min-width: 40px;
    box-shadow: 0 2px 2px rgba(0,0,0,0.1);
}

.keyboard-key.key-backspace { background-color: #ff7043; color: #fff; min-width: 90px; }
.keyboard-key.key-enter { background-color: #43a047; color: #fff; min-width: 80px; }
.keyboard-key.key-shift { background-color: #fdd835; min-width: 70px; }
.keyboard-key.key-shift.active { background-color: #fbc02d; }
.keyboard-key.key-space { flex: 1; min-width: 250px; }

.keyboard-key:hover { background-color: #e0e0e0; }
.keyboard-key:active { background-color: #d0d0d0; transform: translateY(1px); }

.practice-text {
    font-size: 18px;
    padding: 10px;
    background: #f6f6f6;
    border-radius: 6px;
    display: none;
}

.grid {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 20px;
    margin-top: 20px;
}

@media(max-width:768px){
    .grid { grid-template-columns: 1fr; }
    .keyboard-row { justify-content: center; }
}
