@font-face {
    font-family: 'Kaff';
    src: url('/fonts/kaff-regular.woff2') format('woff2'),
         url('/fonts/kaff-regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: optional;
}

@font-face {
    font-family: 'Kaff';
    src: url('/fonts/kaff-bold.woff2') format('woff2'),
         url('/fonts/kaff-bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: optional;
}

@font-face {
    font-family: 'Noto Sans Arabic';
    src: url('/fonts/noto-sans-regular.woff2') format('woff2'),
         url('/fonts/noto-sans-regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: optional;
}

@font-face {
    font-family: 'Noto Sans Arabic';
    src: url('/fonts/noto-sans-bold.woff2') format('woff2'),
         url('/fonts/noto-sans-bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: optional;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Kaff', 'Noto Sans Arabic', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    font-size: 13px;
    line-height: 1.5;
    background: #fff;
    color: #000;
    margin: 0;
    padding: 0;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Wapka Header Style */
.wap-header {
    background: linear-gradient(135deg, #0b6667 0%, #064041 100%);
    color: #fff;
    padding: 8px 12px;
    font-size: 16px;
    font-weight: 600;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4);
    border-bottom: 3px solid #042a2b;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    line-height: 1;
}

.wap-header a,
.wap-header a:visited,
.wap-header a:hover {
    color: #ffffff !important;
    text-decoration: none;
    font-weight: 700;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
    letter-spacing: 0.5px;
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    line-height: 1;
}

.wap-header img {
    max-height: 26px;
    max-width: 160px;
    object-fit: contain;
    border-radius: 3px;
    display: block;
}

/* Wapka Navigation Bar */
.wap-nav {
    background: #eef7f7;
    border-bottom: 1px solid #c2e0e0;
    padding: 7px 10px;
    font-size: 12px;
}

.wap-nav a {
    color: #0b6667;
    text-decoration: none;
    margin-right: 10px;
    font-weight: 600;
}

.wap-nav a:hover {
    text-decoration: underline;
    color: #053b3c;
}

.wap-nav-sep {
    color: #88b0b0;
    margin: 0 4px;
}

/* Wapka Content Area */
.wap-content {
    padding: 10px;
}

/* Wapka Section Box */
.wap-box {
    background: #f8fcff;
    border: 1px solid #d1e5e5;
    margin-bottom: 10px;
    border-radius: 4px;
}

.wap-box-title {
    background: linear-gradient(135deg, #0f7a7b 0%, #095253 100%);
    color: #fff;
    padding: 7px 12px;
    font-size: 13px;
    font-weight: 600;
    border-radius: 4px 4px 0 0;
}

.wap-box-body {
    padding: 10px;
    background: #fff;
    border-radius: 0 0 4px 4px;
}

/* Wapka Links */
a {
    color: #0b6667;
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
    color: #053b3c;
}

a:visited {
    color: #085455;
}

/* Wapka Menu Item */
.wap-menu-item {
    padding: 6px 0;
    border-bottom: 1px dotted #d1e5e5;
}

.wap-menu-item:last-child {
    border-bottom: none;
}

.wap-menu-item::before {
    content: "» ";
    color: #0b6667;
}

/* Wapka Form Styling */
.wap-form {
    margin: 6px 0;
}

.wap-form label {
    display: block;
    font-size: 12px;
    color: #333;
    margin-bottom: 4px;
    font-weight: 600;
}

.wap-form input[type="text"],
.wap-form input[type="password"],
.wap-form input[type="email"],
.wap-form textarea,
.wap-form select {
    width: 100%;
    max-width: 280px;
    padding: 8px 10px;
    font-size: 13px;
    font-family: inherit;
    border: 1px solid #a0c2c2;
    border-radius: 4px;
    margin-bottom: 10px;
    background: #fff;
}

.wap-form input:focus,
.wap-form textarea:focus {
    border-color: #0b6667;
    outline: none;
    box-shadow: 0 0 0 2px rgba(11, 102, 103, 0.2);
}

.wap-form textarea {
    height: 100px;
    max-width: 100%;
}

.wap-btn {
    background: linear-gradient(135deg, #128a8b 0%, #0b6667 100%);
    color: #fff !important;
    display: inline-block;
    border: 1px solid #095253;
    padding: 8px 16px;
    font-size: 13px;
    font-family: inherit;
    border-radius: 4px;
    cursor: pointer;
    font-weight: 600;
    transition: all 0.2s ease;
}

.wap-btn:hover {
    background: linear-gradient(135deg, #0e7273 0%, #074748 100%);
    transform: translateY(-1px);
}

.wap-btn-danger {
    background: linear-gradient(to bottom, #dd5555 0%, #bb3333 100%);
    border-color: #aa2222;
}

.wap-btn-danger:hover {
    background: linear-gradient(to bottom, #ee6666 0%, #cc4444 100%);
}

/* Wapka Messages */
.wap-msg {
    padding: 10px 12px;
    margin: 10px 0;
    border-radius: 4px;
    font-size: 13px;
}

.wap-msg-error {
    background: #fee;
    border: 1px solid #c00;
    color: #900;
}

.wap-msg-success {
    background: #efe;
    border: 1px solid #0a0;
    color: #060;
}

.wap-msg-warning {
    background: #ffe;
    border: 1px solid #cc0;
    color: #660;
}

.wap-msg-info {
    background: #eef;
    border: 1px solid #00c;
    color: #006;
}

/* Wapka List */
.wap-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.wap-list-item {
    padding: 10px 0;
    border-bottom: 1px solid #eee;
}

.wap-list-item:last-child {
    border-bottom: none;
}

/* Wapka Footer */
.wap-footer {
    background: #eef7f7;
    border-top: 1px solid #c2e0e0;
    padding: 12px 10px;
    font-size: 11px;
    color: #446666;
    text-align: center;
}

.wap-footer a {
    color: #0b6667;
    font-weight: 600;
}

/* Wapka User Info Bar */
.wap-userbar {
    background: #e6f4f4;
    border: 1px solid #b2dede;
    color: #064041;
    padding: 8px 12px;
    font-size: 13px;
    margin-bottom: 10px;
    border-radius: 4px;
}

/* Wapka Stats */
.wap-stats {
    font-size: 11px;
    color: #666;
    padding: 6px 0;
}

/* Wapka Breadcrumb */
.wap-breadcrumb {
    font-size: 12px;
    color: #666;
    padding: 6px 0;
    border-bottom: 1px solid #eee;
    margin-bottom: 10px;
}

.wap-breadcrumb a {
    color: #0066cc;
}

/* Wapka Badge */
.wap-badge {
    display: inline-block;
    padding: 2px 6px;
    font-size: 10px;
    border-radius: 3px;
    font-weight: 600;
    text-transform: uppercase;
}

.wap-badge-active {
    background: #0a0;
    color: #fff;
}

.wap-badge-suspended {
    background: #c00;
    color: #fff;
}

.wap-badge-pending {
    background: #fa0;
    color: #fff;
}

.wap-badge-admin {
    background: #c0f;
    color: #fff;
}

/* Wapka Table */
.wap-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
}

.wap-table th,
.wap-table td {
    padding: 8px 10px;
    border: 1px solid #ddd;
    text-align: start;
}

.wap-table th {
    background: #f0f0f0;
    font-weight: 600;
}

.wap-table tr:nth-child(even) {
    background: #f9f9f9;
}

/* Wapka Counter */
.wap-counter {
    background: #333;
    color: #0f0;
    font-family: 'SF Mono', Monaco, 'Courier New', monospace;
    padding: 3px 8px;
    border-radius: 3px;
    font-size: 12px;
    display: inline-block;
}

/* Wapka Pagination */
.wap-pager {
    padding: 10px 0;
    font-size: 12px;
    text-align: center;
}

.wap-pager a {
    padding: 4px 10px;
    background: #f0f0f0;
    border: 1px solid #ccc;
    border-radius: 3px;
    margin: 0 3px;
    transition: all 0.2s ease;
}

.wap-pager a:hover {
    background: #e0e0e0;
    text-decoration: none;
}

.wap-pager .current {
    background: #0066cc;
    color: #fff;
    padding: 4px 10px;
    border-radius: 3px;
}

/* Wapka Checkbox/Radio */
.wap-form input[type="checkbox"],
.wap-form input[type="radio"] {
    margin-right: 6px;
    width: 16px;
    height: 16px;
}

/* Wapka Horizontal Line */
.wap-hr {
    border: none;
    border-top: 1px solid #ddd;
    margin: 12px 0;
}

/* Wapka Small Text */
.wap-small {
    font-size: 11px;
    color: #666;
}

/* Wapka Bold */
.wap-bold {
    font-weight: 600;
}

/* Wapka Quick Links */
.wap-quick-links {
    background: #f0f8ff;
    border: 1px solid #add8e6;
    padding: 10px;
    border-radius: 4px;
    margin-bottom: 10px;
}

.wap-quick-links a {
    display: block;
    padding: 4px 0;
    font-weight: 500;
}

.wap-quick-links a::before {
    content: "» ";
}

/* Wapka Admin Link */
.wap-admin-link {
    background: #800080;
    color: #fff !important;
    padding: 2px 6px;
    border-radius: 3px;
    font-size: 10px;
    text-decoration: none !important;
    font-weight: 600;
}

/* Wapka Online Users */
.wap-online {
    color: #0a0;
    font-weight: 600;
}

/* Wapka Action Buttons Row */
.wap-actions {
    margin-top: 10px;
}

.wap-actions .wap-btn {
    margin-right: 6px;
    padding: 4px 10px;
    font-size: 12px;
}

/* Mobile Responsive */
@media (max-width: 480px) {
    body {
        font-size: 14px;
    }

    .wap-header {
        font-size: 15px;
        padding: 8px 12px;
    }

    .wap-nav {
        font-size: 12px;
    }

    .wap-form input[type="text"],
    .wap-form input[type="password"],
    .wap-form input[type="email"] {
        max-width: 100%;
    }

    .wap-box-title {
        font-size: 14px;
    }

    .wap-btn {
        padding: 10px 16px;
    }
}

/* Smooth scrolling */
html {
    scroll-behavior: smooth;
}

/* Selection color */
::selection {
    background: #0066cc;
    color: #fff;
}

/* Shortcode Library Styling */
.wap-heading {
    font-size: 14px;
    font-weight: 700;
    color: #333;
    margin: 15px 0 8px 0;
    border-bottom: 1px dashed #ccc;
    padding-bottom: 4px;
}

.wap-text {
    margin-bottom: 15px;
    color: #555;
    font-size: 13px;
}

.wap-section {
    background: #f9f9f9;
    border: 1px solid #e0e0e0;
    padding: 10px;
    margin-bottom: 10px;
    border-radius: 4px;
}

.wap-label {
    font-weight: 700;
    font-family: monospace;
    color: #0066cc;
    background: #e6f2ff;
    padding: 2px 6px;
    border-radius: 3px;
    display: inline-block;
    margin-bottom: 4px;
    border: 1px solid #cce5ff;
}

.wap-desc {
    font-size: 12px;
    color: #666;
    margin-top: 4px;
}

.wap-code-block {
    background: #333;
    color: #0f0;
    font-family: 'SF Mono', Monaco, 'Courier New', monospace;
    padding: 10px;
    border-radius: 4px;
    font-size: 12px;
    margin: 8px 0;
    white-space: pre-wrap;
    overflow-x: auto;
    border: 1px solid #000;
}

.wap-info-box {
    background: #fff3cd;
    border: 1px solid #ffeeba;
    color: #856404;
    padding: 10px;
    border-radius: 4px;
    font-size: 13px;
}