:root {
    --rkz-bg: #151823;
    --rkz-card: #22232b;
    --rkz-border: #222941;
    --rkz-accent: #2563eb;
    --rkz-accent2: #19bc7a;
    --rkz-accent-light: #53a4ff;
    --rkz-green-light: #4bffd2;
    --rkz-text-main: #fff;
    --rkz-text-soft: #b7bfd0;
    --rkz-error: #e34b5b;
    --rkz-success-bg: #222e29;
    --rkz-success-border: #19bc7a;
}

body {
    background: var(--rkz-bg);
    font-family: 'Noto Kufi Arabic', 'Cairo', Arial, sans-serif;
    color: var(--rkz-text-main);
    min-height: 100vh;
    direction: rtl;
}

.main-card {
    background: var(--rkz-card);
    border-radius: 22px;
    box-shadow: 0 10px 40px #0e0f14cc, 0 2px 8px #22232b33;
    padding: 2.5rem 2rem 1.3rem 2rem;
    max-width: 580px;
    margin: 5vh auto;
    border: 1.7px solid var(--rkz-border);
    position: relative;
    overflow: hidden;
}

.main-card h1 {
    color: var(--rkz-accent-light);
    font-size: 2.1rem;
    font-weight: 800;
    margin-bottom: 1.3rem;
    letter-spacing: 0.02em;
    text-shadow: 0 2px 14px #2563eb45;
}

.desc-text {
    color: var(--rkz-text-soft);
    background: #1a1d28;
    border-radius: 12px;
    margin-bottom: 1.5rem;
    padding: 14px 10px 10px;
    font-size: 1.07rem;
    border: 1.2px solid var(--rkz-border);
}

.form-label {
    color: var(--rkz-accent-light);
    font-weight: 700;
    margin-bottom: 6px;
    font-size: 1.08rem;
    letter-spacing: 0.03em;
    text-shadow: 0 2px 12px #2563eb30;
}

.platform-title {
    color: var(--rkz-green-light);
    font-weight: 700;
    font-size: 1.08rem;
    margin-bottom: 7px;
    letter-spacing: 0.02em;
    text-shadow: 0 2px 9px #19bc7a30;
}

.form-control, .form-select, textarea {
    border-radius: 13px !important;
    border: 1.4px solid var(--rkz-border);
    background: #171925;
    color: var(--rkz-text-main);
    font-size: 1.07rem;
    margin-bottom: 7px;
    direction: rtl !important;
    text-align: right !important;
    transition: border .17s, background .17s;
}

.form-control:focus, .form-select:focus, textarea:focus {
    border-color: var(--rkz-accent);
    background: #23253a;
    box-shadow: 0 0 0 0.14rem #2563eb33;
    color: var(--rkz-text-main);
}
.form-control:disabled, .form-select:disabled, textarea:disabled {
    background: #222238;
    color: #8a8fc7;
}
input[type="file"] {
    color: var(--rkz-text-main);
    direction: rtl !important;
}
::placeholder {
    color: var(--rkz-text-soft) !important;
    opacity: .98;
}

button, .btn-success {
    background: linear-gradient(90deg, var(--rkz-accent) 60%, var(--rkz-accent2) 100%) !important;
    border-radius: 14px;
    border: none;
    color: #fff;
    font-weight: 700;
    font-size: 1.13rem;
    padding: 13px 0;
    box-shadow: 0 2px 18px #2563eb44;
    transition: background .18s, transform .1s;
    letter-spacing: 0.03em;
}

button:hover, .btn-success:hover {
    background: var(--rkz-accent2) !important;
    color: #fff;
    transform: translateY(-2px) scale(1.03);
}
button:active, .btn-success:active {
    background: var(--rkz-accent) !important;
    color: #fff;
    transform: scale(0.98);
}

.platform-section {
    background: #16223a;
    border-radius: 16px;
    margin-bottom: 1.1rem;
    padding: 12px 10px 5px;
    border: 1.2px solid var(--rkz-border);
}

#docUploadSection, #crUploadSection {
    background: #181e2b;
    padding: 14px 8px;
    border-radius: 14px;
    border: 1.2px dashed var(--rkz-accent2);
}

.confirmation {
    background: var(--rkz-success-bg);
    color: var(--rkz-success-border);
    padding: 13px;
    border-radius: 14px;
    text-align: center;
    font-size: 18px;
    margin-bottom: 17px;
    border: 1.5px solid var(--rkz-success-border);
}

.error-msg {
    background: #29232a;
    color: var(--rkz-error);
    padding: 12px;
    border-radius: 10px;
}
[dir="rtl"] .form-select {
    background-position: left 0.75rem center !important;
}

@media (max-width: 600px) {
    .main-card {
        padding: 1.1rem 0.2rem 1rem 0.2rem;
        max-width: 99vw;
        border-radius: 14px;
    }
    .main-card h1 {
        font-size: 1.2rem;
    }
    .platform-section { padding: 8px 2px 2px; }
    .form-label { font-size: 0.98rem; }
    .form-control, .form-select, textarea { font-size: .97rem; }
    .desc-text { font-size: .97rem; }
}
@media (max-width: 600px) {
    .main-card {
        padding: 1.1rem 3vw 1rem 3vw;
        max-width: 99vw;
        border-radius: 14px;
        margin: 2vw auto;
        box-shadow: 0 4px 18px #0e0f1466;
    }
    .main-card h1 {
        font-size: 1.18rem;
    }
    .platform-section { padding: 8px 2px 2px; }
    .form-label { font-size: 0.97rem; }
    .form-control, .form-select, textarea { font-size: .96rem; }
    .desc-text { font-size: .95rem; }
}
