:root {
    --blue:#0b5ed7;
    --orange:#ff7a00;
    --bg:#f0f3f8;
    --radius:12px;
    --gray:#6b7280;
}

body {
    margin:0;
    font-family:Inter,Arial,sans-serif;
    background:var(--bg);
}

/* HEADER */
.header {
    background:#fff;
    padding:20px 40px;
    box-shadow:0 4px 16px rgba(0,0,0,.05);
    display:flex;
    justify-content:center;
}

.brand {
    display:flex;
    align-items:center;
    font-size:26px;
    font-weight:700;
    color:var(--blue);
    gap:10px;
}

.brand-icon {
    width:26px;
    height:26px;
    background:var(--orange);
    border-radius:6px;
}

.admin-badge {
    font-size:12px;
    background:#111;
    color:#fff;
    padding:4px 8px;
    border-radius:6px;
}

/* MAIN */
.main {
    display:flex;
    padding:40px;
    min-height:520px;
}

/* LEFT */
.left {
    width:50%;
    background:linear-gradient(135deg,var(--blue),#3b82f6);
    color:#fff;
    padding:40px;
    border-radius:16px 0 0 16px;
}

.left h1 { font-size:32px; }
.left p { font-size:16px; max-width:420px; }

/* ICONS */
.float-icons {
    display:flex;
    gap:15px;
    margin-top:30px;
}
.icon {
    background:rgba(255,255,255,.15);
    padding:16px;
    border-radius:12px;
    font-size:24px;
}

/* RIGHT */
.right {
    width:50%;
    background:#fff;
    padding:40px;
    border-radius:0 16px 16px 0;
}

.right h2 {
    font-size:24px;
    margin-bottom:20px;
}

/* FORM */
input {
    width:100%;
    padding:10px;
    margin-bottom:12px;
    border-radius:var(--radius);
    border:1px solid #d1d5db;
}

button {
    width:100%;
    padding:10px;
    background:linear-gradient(90deg,var(--orange),#ff9a42);
    color:#fff;
    border:none;
    border-radius:var(--radius);
    font-weight:600;
    cursor:pointer;
}

/* CAPTCHA */
.human-check { margin:15px 0; }
.hc-box {
    display:flex;
    gap:10px;
    padding:10px;
    background:#f0f3f8;
    border-radius:12px;
}
.hold-btn {
    margin-top:8px;
    background:#e8eef7;
    color:#333;
    position:relative;
}
#holdProgress {
    position:absolute;
    bottom:0;
    left:0;
    height:4px;
    background:linear-gradient(90deg,var(--blue),var(--orange));
    width:0;
}

/* ERROR */
.error-msg {
    background:#ffecec;
    border:1px solid #ffbcbc;
    color:#a60000;
    padding:10px;
    border-radius:8px;
    margin-bottom:12px;
}

/* FOOTER */
.sc-footer {
    text-align:center;
    padding:18px;
    font-size:14px;
    color:var(--gray);
    background:#eef2f7;
    border-top:1px solid #dbe1e8;
}
