/*
Theme Name: Secure Login
Theme URI: https://example.com/secure-login
Author: Mahmoud
Author URI: https://example.com
Description: ثيم ووردبريس احترافي يعرض نموذج تسجيل دخول فقط عند تفعيله، ويمنع عرض أي محتوى آخر من الموقع للزوار غير المسجلين. مناسب لمواقع خاصة، أنظمة إدارة القضايا، ولوحات العمل الداخلية.
Version: 1.0.0
Requires at least: 5.8
Requires PHP: 7.4
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: secure-login
*/

:root{
    --sl-primary:#2563eb;
    --sl-primary-dark:#1d4ed8;
    --sl-bg-start:#0f172a;
    --sl-bg-end:#1e293b;
    --sl-card-bg:#ffffff;
    --sl-text:#0f172a;
    --sl-muted:#64748b;
    --sl-border:#e2e8f0;
    --sl-error-bg:#fef2f2;
    --sl-error-border:#fecaca;
    --sl-error-text:#b91c1c;
}

*{box-sizing:border-box;}

html,body{
    height:100%;
    margin:0;
    padding:0;
}

body.secure-login-body{
    min-height:100vh;
    display:flex;
    align-items:center;
    justify-content:center;
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Tahoma,Arial,"Helvetica Neue",sans-serif;
    background:linear-gradient(135deg,var(--sl-bg-start) 0%,var(--sl-bg-end) 100%);
    padding:24px;
}

.secure-login-wrap{
    width:100%;
    max-width:400px;
}

.secure-login-card{
    background:var(--sl-card-bg);
    border-radius:16px;
    padding:40px 36px;
    box-shadow:0 20px 50px rgba(0,0,0,.35);
}

.secure-login-logo{
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:20px;
    overflow:hidden;
    max-width:100%;
}

.secure-login-logo .sl-badge{
    width:56px;
    height:56px;
    border-radius:14px;
    background:linear-gradient(135deg,var(--sl-primary),var(--sl-primary-dark));
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 8px 20px rgba(37,99,235,.35);
}

.secure-login-logo svg{width:28px;height:28px;fill:#fff;}

.secure-login-logo img.sl-site-logo,
.secure-login-logo img.custom-logo{
    max-width:200px !important;
    max-height:200px !important;
    width:auto !important;
    height:auto !important;
    object-fit:contain;
    border-radius:14px;
}

.secure-login-title{
    text-align:center;
    font-size:22px;
    font-weight:700;
    color:var(--sl-text);
    margin:0 0 6px;
}

.secure-login-subtitle{
    text-align:center;
    font-size:14px;
    color:var(--sl-muted);
    margin:0 0 28px;
}

.secure-login-card form{margin:0;}

.secure-login-card p.login-username,
.secure-login-card p.login-password,
.secure-login-card p.login-remember,
.secure-login-card p.login-submit{
    margin:0 0 16px;
}

.secure-login-card label{
    display:block;
    font-size:13px;
    font-weight:600;
    color:var(--sl-text);
    margin-bottom:6px;
}

.secure-login-card input[type=text],
.secure-login-card input[type=password]{
    width:100%;
    padding:11px 14px;
    border:1px solid var(--sl-border);
    border-radius:10px;
    font-size:14px;
    color:var(--sl-text);
    background:#f8fafc;
    outline:none;
    transition:border-color .15s ease,box-shadow .15s ease;
}

.secure-login-card input[type=text]:focus,
.secure-login-card input[type=password]:focus{
    border-color:var(--sl-primary);
    box-shadow:0 0 0 3px rgba(37,99,235,.15);
    background:#fff;
}

.secure-login-card p.login-remember{
    display:flex;
    align-items:center;
    gap:8px;
    font-size:13px;
    color:var(--sl-muted);
}

.secure-login-card p.login-remember label{
    display:flex;
    align-items:center;
    gap:8px;
    margin:0;
    font-weight:400;
    cursor:pointer;
}

.secure-login-card input[type=checkbox]{
    width:16px;
    height:16px;
    accent-color:var(--sl-primary);
}

.secure-login-card input[type=submit]{
    width:100%;
    padding:12px 14px;
    background:var(--sl-primary);
    color:#fff;
    border:none;
    border-radius:10px;
    font-size:15px;
    font-weight:700;
    cursor:pointer;
    transition:background-color .15s ease,transform .05s ease;
}

.secure-login-card input[type=submit]:hover{background:var(--sl-primary-dark);}
.secure-login-card input[type=submit]:active{transform:translateY(1px);}

.secure-login-error{
    background:var(--sl-error-bg);
    border:1px solid var(--sl-error-border);
    color:var(--sl-error-text);
    font-size:13px;
    padding:12px 14px;
    border-radius:10px;
    margin-bottom:20px;
    line-height:1.6;
}

.secure-login-error a{color:var(--sl-error-text);text-decoration:underline;}

.secure-login-footer{
    text-align:center;
    margin-top:24px;
    font-size:12px;
    color:rgba(255,255,255,.55);
}

.secure-login-lost{
    text-align:center;
    margin-top:18px;
    font-size:13px;
}

.secure-login-lost a{
    color:var(--sl-primary);
    text-decoration:none;
}

.secure-login-lost a:hover{text-decoration:underline;}

/* RTL support */
body.rtl .secure-login-card label{text-align:right;}
body.rtl .secure-login-card p.login-remember{flex-direction:row-reverse;justify-content:flex-end;}

/* Logged-in state */
.secure-login-loggedin{
    text-align:center;
}

.secure-login-loggedin p{
    color:var(--sl-muted);
    font-size:14px;
    margin-bottom:20px;
}

.secure-login-loggedin a.button{
    display:inline-block;
    padding:11px 22px;
    background:var(--sl-primary);
    color:#fff;
    border-radius:10px;
    text-decoration:none;
    font-weight:600;
    font-size:14px;
}

.secure-login-loggedin a.button:hover{background:var(--sl-primary-dark);}

@media (max-width:420px){
    .secure-login-card{padding:32px 24px;}
}
