:root{--primary: #6df173;--primary-dark: #45c94f;--primary-ink: #17431c;--ink: #14181a;--ink-soft: #5b6560;--bg: #f6f9f6;--surface: #ffffff;--border: #e2e8e3;--danger: #d94f45;--danger-bg: #fbecea;--warning: #c98a1f;--warning-bg: #fbf3e3;--success-bg: #eafaec;--radius: 3px;--shadow: 0 1px 2px rgba(20, 24, 26, .05)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:Tajawal,Segoe UI,sans-serif;background:var(--bg);color:var(--ink);font-size:15px;line-height:1.6}button,input,select,textarea{font-family:inherit;font-size:inherit}a{color:inherit}.app-shell{display:flex;min-height:100vh}.main-area{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:64px;border-bottom:1px solid var(--border);background:var(--surface);display:flex;align-items:center;justify-content:space-between;padding:0 28px}.topbar h1{font-size:18px;font-weight:700;margin:0}.topbar .admin-tag{display:flex;align-items:center;gap:8px;color:var(--ink-soft);font-size:13px}.topbar .admin-tag i{color:var(--primary-dark)}.page{padding:28px;max-width:1080px;width:100%}.sidebar{width:232px;flex-shrink:0;background:var(--surface);border-inline-start:1px solid var(--border);display:flex;flex-direction:column;padding:20px 14px}.sidebar .brand{display:flex;align-items:center;gap:10px;padding:8px 10px 24px;border-bottom:1px solid var(--border);margin-bottom:16px}.sidebar .brand .logo{width:32px;height:32px;background:var(--primary);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;color:var(--primary-ink);font-size:15px}.sidebar .brand span{font-weight:700;font-size:15px}.nav-link{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:var(--radius);color:var(--ink-soft);text-decoration:none;font-size:14px;font-weight:500;margin-bottom:2px;border-inline-start:2px solid transparent;transition:background .12s ease,color .12s ease}.nav-link i{width:18px;text-align:center;font-size:15px}.nav-link:hover{background:var(--bg);color:var(--ink)}.nav-link.active{background:var(--success-bg);color:var(--primary-ink);border-inline-start-color:var(--primary);font-weight:700}.nav-footer{margin-top:auto;padding-top:12px;border-top:1px solid var(--border)}.logout-btn{display:flex;align-items:center;gap:12px;padding:11px 12px;width:100%;background:none;border:none;color:var(--ink-soft);font-size:14px;font-weight:500;cursor:pointer;border-radius:var(--radius)}.logout-btn:hover{background:var(--danger-bg);color:var(--danger)}.page-header{margin-bottom:24px}.page-header h2{font-size:21px;margin:0 0 4px;font-weight:700}.page-header p{margin:0;color:var(--ink-soft);font-size:14px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:8px}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;display:flex;align-items:flex-start;justify-content:space-between;box-shadow:var(--shadow)}.stat-card .icon-badge{width:38px;height:38px;border-radius:var(--radius);background:var(--success-bg);color:var(--primary-ink);display:flex;align-items:center;justify-content:center;font-size:16px}.stat-card.failed .icon-badge{background:var(--danger-bg);color:var(--danger)}.stat-card .value{font-size:30px;font-weight:900;margin:12px 0 2px}.stat-card .label{color:var(--ink-soft);font-size:13px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.panel-header{padding:16px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.panel-header h3{margin:0;font-size:15px;font-weight:700}.form-grid{padding:22px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1 / -1}.field label{font-size:13px;font-weight:700;color:var(--ink)}.field input,.field select,.field textarea{border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;background:var(--bg);color:var(--ink);outline:none;transition:border-color .12s ease,background .12s ease}.field textarea{resize:vertical;min-height:88px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--primary-dark);background:var(--surface)}.form-actions{grid-column:1 / -1;display:flex;align-items:center;gap:12px;padding-top:4px}.btn{display:inline-flex;align-items:center;gap:8px;border:1px solid transparent;border-radius:var(--radius);padding:10px 18px;font-size:14px;font-weight:700;cursor:pointer;transition:filter .12s ease,background .12s ease}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--primary);color:var(--primary-ink)}.btn-primary:hover:not(:disabled){background:var(--primary-dark)}.btn-ghost{background:transparent;border-color:var(--border);color:var(--ink)}.btn-ghost:hover:not(:disabled){background:var(--bg)}.btn-sm{padding:6px 12px;font-size:13px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13.5px}thead th{text-align:right;padding:12px 20px;color:var(--ink-soft);font-weight:700;border-bottom:1px solid var(--border);white-space:nowrap}tbody td{padding:13px 20px;border-bottom:1px solid var(--border);vertical-align:middle}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--bg)}.cell-data{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-soft)}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--radius);font-size:12.5px;font-weight:700}.badge.sent{background:var(--success-bg);color:var(--primary-ink)}.badge.failed{background:var(--danger-bg);color:var(--danger)}.badge.pending{background:var(--warning-bg);color:var(--warning)}.empty-state{padding:48px 20px;text-align:center;color:var(--ink-soft)}.empty-state i{font-size:26px;margin-bottom:10px;display:block;color:var(--border)}.alert{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:var(--radius);font-size:13.5px;font-weight:600;margin:22px 22px 0}.alert.success{background:var(--success-bg);color:var(--primary-ink)}.alert.error{background:var(--danger-bg);color:var(--danger)}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:20px}.login-card{width:100%;max-width:380px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:32px}.login-card .logo{width:46px;height:46px;background:var(--primary);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;color:var(--primary-ink);font-size:20px;margin-bottom:18px}.login-card h2{margin:0 0 4px;font-size:19px}.login-card p{margin:0 0 24px;color:var(--ink-soft);font-size:13.5px}.login-card .field{margin-bottom:14px}.login-card .btn{width:100%;justify-content:center;margin-top:6px}@media (max-width: 860px){.stats-grid,.form-grid{grid-template-columns:1fr}.sidebar{width:76px;padding:16px 8px}.sidebar .brand span,.nav-link span,.logout-btn span{display:none}.sidebar .brand,.nav-link,.logout-btn{justify-content:center}}.sidebar .brand .logo{overflow:hidden;padding:0;background:transparent}.sidebar .brand .logo img{width:100%;height:100%;object-fit:cover;display:block}.login-brand img{width:58px;height:58px;border-radius:3px;object-fit:cover}.login-brand{display:flex;align-items:center;gap:14px;margin-bottom:24px}.login-brand h1{margin:0}.login-brand p{margin:2px 0 0;color:var(--ink-soft);font-size:13px}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:20px}.login-card{width:min(430px,100%);background:var(--surface);border:1px solid var(--border);padding:28px;box-shadow:var(--shadow)}.login-card form{display:flex;flex-direction:column;gap:16px}.login-card .btn{width:100%;justify-content:center}.status-badge.success{background:var(--success-bg);color:var(--primary-ink)}@media (max-width:800px){.app-shell{display:block}.sidebar{width:100%;border-inline-start:0;border-bottom:1px solid var(--border)}.sidebar nav{display:flex;overflow:auto}.sidebar .nav-link{white-space:nowrap}.sidebar .nav-footer{margin-top:10px}.stats-grid,.form-grid{grid-template-columns:1fr}.page{padding:18px}.topbar{padding:0 18px}.table-wrap{overflow-x:auto}}.status-badge{display:inline-flex;align-items:center;padding:4px 9px;border-radius:var(--radius);font-size:12px;font-weight:700}.status-badge.failed{background:var(--danger-bg);color:var(--danger)}.status-badge.pending{background:var(--warning-bg);color:var(--warning)}
