/* Frontend application form */
.rim-form {
    max-width: 640px; margin: 30px auto; background: #fff; padding: 32px 36px; border-radius: 14px;
    box-shadow: 0 8px 30px rgba(23,40,193,.08); border: 1px solid #eaeaff; font-family: 'Roboto', -apple-system, sans-serif;
}
.rim-form p { margin-bottom: 18px; }
.rim-form label { display: block; font-weight: 700; margin-bottom: 6px; color: #1f2940; font-size: 14px; }
.rim-form input[type=text], .rim-form input[type=email], .rim-form input[type=date],
.rim-form select, .rim-form textarea {
    width: 100%; padding: 12px 14px; border: 1px solid #d6dbf5; border-radius: 8px; font-size: 14px;
    box-sizing: border-box; transition: border-color .15s ease, box-shadow .15s ease; background: #fafbff;
}
.rim-form input:focus, .rim-form select:focus, .rim-form textarea:focus {
    outline: none; border-color: #1728c1; box-shadow: 0 0 0 3px rgba(23,40,193,.12); background: #fff;
}
.rim-form input[type=file] {
    width: 100%; padding: 12px; border: 2px dashed #d6dbf5; border-radius: 8px; background: #fafbff; box-sizing: border-box;
}
.rim-submit-btn {
    background: #1728c1; color: #fff; padding: 12px 32px;
    border: none; border-radius: 28px; cursor: pointer; font-size: 15px; font-weight: 700;
    box-shadow: rgba(50,50,93,.25) 0 2px 5px -1px, rgba(0,0,0,.3) 0 1px 3px -1px; width: 100%;
    transition: background .2s ease;
}
.rim-submit-btn:hover { background: #142399; color: #fff; }
.rim-submit-btn:active, .rim-submit-btn:focus { background: #1bc943; color: #fff; outline: none; }
.rim-msg { padding: 14px 18px; border-radius: 10px; margin-bottom: 20px; font-weight: 600; }
.rim-success { background: #e6f4ea; color: #1e7e34; }
.rim-error { background: #fbe7e7; color: #b32d2e; }

/* Public reporters grid - see redesign below */

/* Verification page */
.rim-verify-box { max-width: 420px; margin: 30px auto; padding: 24px; border-radius: 10px; text-align: center; }
.rim-verify-ok { background: #e6f4ea; border: 2px solid #1e7e34; color: #1e7e34; }
.rim-verify-invalid { background: #fbe7e7; border: 2px solid #b32d2e; color: #b32d2e; }
.rim-verify-na { background: #f1f1f1; border: 2px solid #999; color: #555; }

/* Admin dashboard */
.rim-quicklinks { background: #fff; border: 1px solid #ddd; padding: 14px 18px; margin: 16px 0; border-radius: 6px; }
.rim-quicklinks span { color: #777; font-size: 12px; margin-left: 8px; }
.rim-stats { display: flex; gap: 16px; margin: 20px 0; }
.rim-stat-box { flex: 1; background: #fff; border: 1px solid #ddd; border-radius: 8px; text-align: center; padding: 18px 10px; }
.rim-stat-box h2 { font-size: 32px; margin: 0; }
.rim-pending h2 { color: #b8860b; }
.rim-approved h2 { color: #1e7e34; }
.rim-rejected h2 { color: #b32d2e; }
.rim-expired h2 { color: #555; }

/* Admin "Our Reporters" grid */
.rim-admin-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 18px; margin-top: 16px; }
.rim-admin-card { display: block; border: 1px solid #ddd; border-radius: 8px; overflow: hidden; background: #fff; text-decoration: none; color: inherit; }
.rim-admin-card img { width: 100%; height: 160px; object-fit: cover; display: block; }
.rim-admin-card-body { padding: 10px; font-size: 13px; line-height: 1.5; }
.rim-admin-card-body strong { display: block; font-size: 15px; }

/* ===================== Admin Redesign (epaper-theme inspired) ===================== */
.rim-wrap { font-family: 'Roboto', -apple-system, sans-serif; }
.rim-wrap h1 { display: flex; align-items: center; gap: 12px; font-weight: 600; }

.rim-quicklinks {
    background: #fff; border: 1px solid #eaeaff; padding: 16px 20px; margin: 18px 0;
    border-radius: 8px;
    box-shadow: 0 3.2px 7.2px 0 rgba(131,126,255,.12), 0 .6px 1.8px 0 rgba(131,126,255,.1);
}
.rim-quicklinks p { margin: 6px 0; }
.rim-quicklinks span { color: #8a8f98; font-size: 12px; margin-left: 8px; }
.rim-quicklinks a { color: #1728c1; font-weight: 500; }

.rim-stats { display: flex; gap: 18px; margin: 22px 0; flex-wrap: wrap; }
.rim-stat-box {
    flex: 1; min-width: 160px; background: #fff; border-radius: 8px; text-align: center;
    padding: 24px 10px; text-decoration: none; color: inherit; display: block;
    border: 1px solid #eaeaff; border-top: 4px solid transparent;
    box-shadow: 0 3.2px 7.2px 0 rgba(131,126,255,.12), 0 .6px 1.8px 0 rgba(131,126,255,.1);
    transition: transform .15s ease, box-shadow .15s ease;
}
.rim-stat-box:hover { transform: translateY(-3px); box-shadow: 0 8px 20px rgba(23,40,193,.15); }
.rim-stat-icon { font-size: 30px; margin-bottom: 6px; }
.rim-stat-box h2 { font-size: 36px; margin: 4px 0; color: #1f2940; font-weight: 700; }
.rim-stat-box p { margin: 0; font-weight: 700; color: #5b6e88; text-transform: uppercase; font-size: 12px; letter-spacing: .5px; }

.rim-stat-pending  { border-top-color: #f7b500; }
.rim-stat-approved { border-top-color: #1bc943; }
.rim-stat-rejected { border-top-color: #dc3545; }
.rim-stat-expired  { border-top-color: #5b6e88; }

.rim-dash-actions { margin-top: 10px; }
.rim-dash-actions .button {
    border-radius: 28px !important; padding: 6px 20px !important; font-weight: 600 !important; border: none !important;
}
.rim-dash-actions .button-primary {
    background: #1728c1 linear-gradient(180deg,#3a48ca,#1728c1) repeat-x !important;
    box-shadow: rgba(50,50,93,.25) 0 2px 5px -1px, rgba(0,0,0,.3) 0 1px 3px -1px !important;
}
.rim-dash-actions .button:not(.button-primary) {
    background: #fff !important; color: #1728c1 !important; border: 1px solid #d6dbf5 !important;
}

/* Filter bar */
.rim-filter-bar { display: flex; gap: 10px; margin: 16px 0 22px; flex-wrap: wrap; }
.rim-filter-btn {
    padding: 8px 20px; border-radius: 28px; background: #fff; border: 1px solid #e0e6f5;
    color: #5b6e88; text-decoration: none; font-size: 13px; font-weight: 600; transition: all .15s ease;
}
.rim-filter-btn:hover { background: #f3f5ff; }
.rim-filter-btn.active {
    background: #1728c1 linear-gradient(180deg,#3a48ca,#1728c1) repeat-x; color: #fff; border-color: #1728c1;
    box-shadow: rgba(50,50,93,.25) 0 2px 5px -1px;
}
.rim-fb-pending.active  { background: #f7b500; border-color: #f7b500; }
.rim-fb-approved.active { background: #1bc943; border-color: #1bc943; }
.rim-fb-rejected.active { background: #dc3545; border-color: #dc3545; }
.rim-fb-expired.active  { background: #5b6e88; border-color: #5b6e88; }

.rim-filter-tag {
    font-size: 13px; background: #f3f5ff; padding: 4px 14px; border-radius: 28px; color: #1728c1; font-weight: 600;
}
.rim-filter-tag a { color: #dc3545; text-decoration: none; margin-left: 6px; font-weight: 700; }

/* No data state */
.rim-no-data {
    background: #fff; border: 1px dashed #d6dbf5; border-radius: 8px; text-align: center;
    padding: 60px 20px; color: #8a8f98;
}
.rim-no-data-icon { font-size: 42px; margin-bottom: 10px; }
.rim-no-data p { font-size: 15px; margin: 0; font-weight: 600; }

/* Table card */
.rim-table-card {
    background: #fff; border-radius: 8px; border: 1px solid #eaeaff; overflow: hidden;
    box-shadow: 0 3.2px 7.2px 0 rgba(131,126,255,.12), 0 .6px 1.8px 0 rgba(131,126,255,.1);
}
.rim-table { width: 100%; border-collapse: collapse; }
.rim-table thead th {
    background: #f3f5ff; text-align: left; padding: 12px 16px; font-size: 12px; text-transform: uppercase;
    letter-spacing: .4px; color: #5b6e88; border-bottom: 1px solid #eaeaff; font-weight: 700;
}
.rim-table tbody td { padding: 12px 16px; border-bottom: 1px solid #f3f5ff; vertical-align: middle; font-size: 14px; }
.rim-table tbody tr:last-child td { border-bottom: none; }
.rim-table tbody tr:hover { background: #fafbff; }

.rim-thumb { width: 42px; height: 42px; border-radius: 50%; object-fit: cover; border: 2px solid #eaeaff; display: block; }
.rim-thumb-placeholder {
    width: 42px; height: 42px; border-radius: 50%; background: #f3f5ff; display: flex; align-items: center;
    justify-content: center; font-size: 18px; border: 2px solid #eaeaff;
}

/* Pill badges */
.rim-badge {
    display: inline-block; padding: 4px 14px; border-radius: 28px; font-size: 12px; font-weight: 700;
    text-transform: uppercase; letter-spacing: .3px;
}
.rim-badge-pending  { background: #fff3d6; color: #946200; }
.rim-badge-approved { background: #d7ffd7; color: #1a7d1a; }
.rim-badge-rejected { background: #ffdee1; color: #dc3545; }
.rim-badge-expired  { background: #e9ebf5; color: #5b6e88; }

.rim-actions { white-space: nowrap; }
.rim-actions .button { border-radius: 20px !important; }
.rim-btn-danger { color: #dc3545 !important; border-color: #f8c9cd !important; }

/* ===================== Dashicons, Search, Back-link, View page (v3) ===================== */
.rim-stat-icon.dashicons { font-size: 30px; width: 30px; height: 30px; display: inline-block; margin-bottom: 6px; }
.rim-stat-pending  .rim-stat-icon { color: #f7b500; }
.rim-stat-approved .rim-stat-icon { color: #1bc943; }
.rim-stat-rejected .rim-stat-icon { color: #dc3545; }
.rim-stat-expired  .rim-stat-icon { color: #5b6e88; }

.rim-quicklinks .dashicons { color: #1728c1; vertical-align: middle; margin-right: 4px; }
.rim-shortcode-note { color: #8a8f98; font-size: 12px; margin-left: 8px; }

.rim-back-link { margin-bottom: 4px; }
.rim-back-link a {
    display: inline-flex; align-items: center; gap: 4px; text-decoration: none; color: #1728c1;
    font-weight: 600; font-size: 13px;
}
.rim-back-link .dashicons { font-size: 16px; width: 16px; height: 16px; }

.rim-toolbar { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 14px; margin: 16px 0 22px; }
.rim-toolbar .rim-filter-bar { margin: 0; }

.rim-search-form {
    display: flex; align-items: center; gap: 6px; background: #fff; border: 1px solid #e0e6f5;
    border-radius: 28px; padding: 6px 16px; min-width: 260px;
}
.rim-search-form .dashicons { color: #8a8f98; font-size: 16px; }
.rim-search-form input[type="text"] { border: none; outline: none; box-shadow: none; flex: 1; font-size: 13px; }
.rim-search-clear { color: #dc3545; text-decoration: none; font-weight: 700; font-size: 16px; }

.rim-no-data-icon.dashicons { font-size: 42px; width: 42px; height: 42px; color: #c3c9e0; margin-bottom: 10px; display: inline-block; }

/* Profile header (View page) */
.rim-profile-header { display: flex; align-items: center; gap: 18px; margin: 18px 0 24px; }
.rim-profile-photo { width: 84px; height: 84px; border-radius: 50%; object-fit: cover; border: 3px solid #eaeaff; }
.rim-profile-photo.rim-thumb-placeholder { display: flex; align-items: center; justify-content: center; font-size: 30px; color: #c3c9e0; }
.rim-profile-header h1 { margin: 0 0 6px; }

/* Detail cards grid (View page) */
.rim-detail-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 18px; margin-bottom: 20px; }
.rim-detail-card {
    background: #fff; border-radius: 8px; padding: 18px 20px; border-left: 5px solid;
    box-shadow: 0 3.2px 7.2px 0 rgba(131,126,255,.12), 0 .6px 1.8px 0 rgba(131,126,255,.1);
}
.rim-detail-card h3 {
    margin: 0 0 12px; font-size: 14px; text-transform: uppercase; letter-spacing: .4px;
    display: flex; align-items: center; gap: 6px;
}
.rim-detail-card p { margin: 6px 0; font-size: 14px; color: #1f2940; }
.rim-detail-card p strong { color: #5b6e88; font-weight: 600; margin-right: 4px; }
.rim-detail-card .button { margin-bottom: 6px; border-radius: 20px; }
.rim-detail-card .dashicons { font-size: 16px; vertical-align: middle; }
.rim-muted { color: #8a8f98; font-style: italic; }

.rim-card-blue   { border-left-color: #1728c1; }
.rim-card-blue h3 { color: #1728c1; }
.rim-card-purple { border-left-color: #8338ec; }
.rim-card-purple h3 { color: #8338ec; }
.rim-card-green  { border-left-color: #1bc943; }
.rim-card-green h3 { color: #1a7d1a; }
.rim-card-orange { border-left-color: #f7b500; }
.rim-card-orange h3 { color: #a87600; }

.rim-detail-actions { margin-top: 4px; }
.rim-detail-actions .button { border-radius: 28px !important; padding: 6px 22px !important; }

/* ===================== Single-card View page + Lightbox (v4) ===================== */
.rim-single-card {
    background: #fff; border-radius: 10px; padding: 4px 0;
    box-shadow: 0 3.2px 7.2px 0 rgba(131,126,255,.12), 0 .6px 1.8px 0 rgba(131,126,255,.1);
    margin-bottom: 20px; overflow: hidden;
}
.rim-section { padding: 20px 24px; border-left: 5px solid; border-bottom: 1px solid #f0f2fa; }
.rim-section:last-child { border-bottom: none; }
.rim-section h3 {
    margin: 0 0 12px; font-size: 13px; text-transform: uppercase; letter-spacing: .4px;
    display: flex; align-items: center; gap: 6px;
}
.rim-section-grid { display: grid; grid-template-columns: 1fr; gap: 6px; }
.rim-section p { margin: 4px 0; font-size: 14px; color: #1f2940; }
.rim-section p strong { color: #5b6e88; font-weight: 600; margin-right: 4px; }
.rim-section .dashicons { font-size: 16px; }

/* File thumbnails */
.rim-files-row { display: flex; gap: 16px; flex-wrap: wrap; align-items: center; }
.rim-file-thumb-wrap { text-align: center; }
.rim-file-thumb {
    width: 64px; height: 64px; object-fit: cover; border-radius: 8px; border: 2px solid #eaeaff;
    cursor: zoom-in; display: block; transition: transform .15s ease;
}
.rim-file-thumb:hover { transform: scale(1.06); border-color: #1728c1; }
.rim-file-thumb-wrap span { display: block; font-size: 11px; color: #8a8f98; margin-top: 4px; }
.rim-pdf-btn { border-radius: 20px !important; }
.rim-pdf-btn .dashicons { font-size: 15px; vertical-align: middle; }

/* Lightbox */
.rim-lightbox {
    display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(15,17,30,.85); z-index: 999999; align-items: center; justify-content: center;
    cursor: zoom-out;
}
.rim-lightbox img { max-width: 90%; max-height: 90%; border-radius: 8px; box-shadow: 0 10px 40px rgba(0,0,0,.4); }

.rim-profile-photo.rim-lightbox-trigger { cursor: zoom-in; }

/* ===================== Filter counts + merged dashboard list (v5) ===================== */
.rim-count { font-size: 11px; opacity: .8; margin-left: 2px; }
.rim-list-heading { margin: 24px 0 4px; font-size: 18px; }

/* ===================== Manage Reporter page (v6) ===================== */
.rim-rid-tag {
    display: inline-block; background: #eef0ff; color: #1728c1; font-size: 13px; font-weight: 700;
    padding: 3px 12px; border-radius: 20px; vertical-align: middle; margin-left: 6px;
}

.rim-manage-card {
    background: #fff; border-radius: 10px; padding: 24px 26px; margin: 18px 0;
    box-shadow: 0 3.2px 7.2px 0 rgba(131,126,255,.12), 0 .6px 1.8px 0 rgba(131,126,255,.1);
}
.rim-manage-card h3 {
    margin: 0 0 18px; font-size: 15px; color: #1728c1; text-transform: uppercase; letter-spacing: .5px;
    display: flex; align-items: center; gap: 10px; font-weight: 700;
}
.rim-manage-card h3 .dashicons {
    background: #eef0ff; color: #1728c1; width: 32px; height: 32px; border-radius: 50%;
    font-size: 18px; display: flex; align-items: center; justify-content: center;
}

.rim-upload-box {
    display: flex; flex-direction: column; align-items: center; gap: 8px; text-align: center;
    border: 2px dashed #d6dbf5; border-radius: 10px; padding: 28px 20px; cursor: pointer;
    background: #fafbff; margin-bottom: 18px; transition: all .15s ease;
}
.rim-upload-box:hover { border-color: #1728c1; background: #f3f5ff; }
.rim-upload-box .dashicons {
    font-size: 22px; width: 48px; height: 48px; color: #1728c1; background: #eef0ff; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
}
.rim-upload-box span:nth-child(2) { font-size: 13px; color: #5b6e88; font-weight: 600; }
.rim-upload-box em { color: #8a8f98; font-weight: 400; font-style: italic; }
.rim-upload-box input[type="file"] { margin-top: 6px; }

.rim-generate-btn {
    border-radius: 28px !important; padding: 12px 32px !important; font-size: 14px !important;
    background: #1728c1 linear-gradient(180deg,#3a48ca,#1728c1) repeat-x !important;
    box-shadow: rgba(23,40,193,.3) 0 4px 14px !important; border: none !important;
    display: inline-flex !important; align-items: center; gap: 8px;
}
.rim-generate-btn svg { flex-shrink: 0; }
.rim-generate-btn:hover { background: #142399 !important; }

.rim-preview-wrap { text-align: center; margin-bottom: 20px; }
.rim-preview-img {
    max-width: 100%; max-height: 420px; border-radius: 10px; cursor: zoom-in;
    box-shadow: 0 6px 20px rgba(23,40,193,.15); border: 1px solid #eaeaff;
    transition: transform .15s ease;
}
.rim-preview-img:hover { transform: scale(1.01); }

.rim-download-row { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 18px; }
.rim-dl-btn {
    border-radius: 24px !important; padding: 8px 20px !important; display: inline-flex !important;
    align-items: center; gap: 6px;
    background: #1728c1 linear-gradient(180deg,#3a48ca,#1728c1) repeat-x !important;
}

.rim-share-row { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; padding-top: 14px; border-top: 1px solid #f0f2fa; }
.rim-share-label { font-weight: 700; color: #5b6e88; font-size: 13px; }
.rim-share-btn {
    border-radius: 22px; padding: 9px 20px; font-weight: 600; font-size: 13px; text-decoration: none;
    border: none; cursor: pointer; color: #fff; display: inline-flex; align-items: center; gap: 8px;
    line-height: 1;
}
.rim-share-btn svg { flex-shrink: 0; }
.rim-share-btn .dashicons { font-size: 16px; width: 16px; height: 16px; color: #fff; }
.rim-share-whatsapp { background: #25d366; }
.rim-share-whatsapp:hover { background: #1ebe5b; color: #fff; }
.rim-share-email { background: #7a3bba; }
.rim-share-email:hover { background: #6624a9; color: #fff; }
.rim-share-copy { background: #5b6e88; }
.rim-share-copy:hover { background: #475569; }
.rim-share-copy.rim-copied { background: #1bc943; }

/* Reporters grid page (v6 + v16 enhancement) */
.rim-admin-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 22px; margin-top: 18px; }
.rim-admin-card {
    display: block; border-radius: 14px; overflow: hidden; background: #fff; text-decoration: none; color: inherit;
    box-shadow: 0 3.2px 7.2px 0 rgba(131,126,255,.12), 0 .6px 1.8px 0 rgba(131,126,255,.1);
    transition: transform .18s ease, box-shadow .18s ease; border: 1px solid #eaeaff; position: relative;
}
.rim-admin-card:hover { transform: translateY(-6px); box-shadow: 0 14px 32px rgba(23,40,193,.22); }
.rim-admin-card-photo-wrap { position: relative; overflow: hidden; }
.rim-admin-card img {
    width: 100%; height: 200px; object-fit: cover; display: block; background: #f3f5ff;
    transition: transform .25s ease;
}
.rim-admin-card:hover img { transform: scale(1.05); }
.rim-admin-card-photo-wrap::after {
    content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 60%;
    background: linear-gradient(to top, rgba(15,17,30,.55), transparent); pointer-events: none;
}
.rim-admin-card-id-tag {
    position: absolute; top: 10px; right: 10px; background: rgba(23,40,193,.9); color: #fff;
    font-size: 11px; font-weight: 700; padding: 4px 10px; border-radius: 14px; letter-spacing: .3px;
}
.rim-admin-card-body { padding: 14px 16px; }
.rim-admin-card-body strong { display: block; font-size: 16px; margin-bottom: 4px; color: #1f2940; }
.rim-admin-card-body span { display: block; font-size: 12.5px; color: #5b6e88; line-height: 1.6; }
.rim-admin-card-body span:first-of-type { color: #1728c1; font-weight: 700; }
.rim-admin-card-arrow {
    position: absolute; bottom: 14px; right: 16px; width: 30px; height: 30px; border-radius: 50%;
    background: #1728c1; color: #fff; display: flex; align-items: center; justify-content: center;
    opacity: 0; transform: translateX(-6px); transition: all .18s ease;
}
.rim-admin-card:hover .rim-admin-card-arrow { opacity: 1; transform: translateX(0); }

/* ===================== Icon sizing fix + Responsive (v7) ===================== */
.rim-dl-btn svg, .rim-share-btn svg { flex-shrink: 0; }
.rim-dl-btn { display: inline-flex !important; align-items: center; gap: 6px; }

@media (max-width: 1024px) {
    .rim-stats { flex-wrap: wrap; }
    .rim-stat-box { min-width: 45%; }
    .rim-toolbar { flex-direction: column; align-items: stretch; }
    .rim-search-form { width: 100%; }
}

@media (max-width: 768px) {
    .rim-wrap, .wrap.rim-wrap { padding-right: 10px; }
    .rim-quicklinks p { font-size: 13px; }
    .rim-stat-box { min-width: 100%; }
    .rim-filter-bar { width: 100%; }
    .rim-filter-btn { flex: 1 1 auto; text-align: center; }
    .rim-table-card { overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .rim-table { min-width: 720px; }
    .rim-detail-grid { grid-template-columns: 1fr; }
    .rim-profile-header { flex-direction: column; text-align: center; }
    .rim-download-row, .rim-share-row { flex-direction: column; align-items: stretch; }
    .rim-dl-btn, .rim-share-btn { width: 100%; justify-content: center; }
    .rim-admin-grid { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); }
    .rim-files-row { flex-direction: column; align-items: flex-start; }
    .rim-form { margin: 12px; padding: 20px; }
}

@media (max-width: 480px) {
    .rim-stats { gap: 10px; }
    .rim-back-link a { font-size: 12px; }
    .rim-profile-photo { width: 64px; height: 64px; }
    .rim-manage-card, .rim-single-card { padding: 16px; }
    .rim-section { padding: 16px; }
}

/* ===================== Renewal feature (v8) ===================== */
.rim-btn-renew {
    background: #f7b500 !important; color: #1f2940 !important; border: none !important;
    font-weight: 700 !important; border-radius: 20px !important;
}
.rim-btn-renew:hover { background: #e0a400 !important; color: #1f2940 !important; }

.rim-renew-card { border: 2px solid #f7b500; background: #fff9ec; }
.rim-renew-card h3 { color: #a87600; }
.rim-expired-note { font-size: 13px; color: #5b6e88; margin-bottom: 16px; }
.rim-renew-form { display: flex; align-items: flex-end; gap: 14px; flex-wrap: wrap; }
.rim-renew-form label { font-weight: 700; font-size: 13px; color: #1f2940; display: block; margin-bottom: 6px; }
.rim-renew-form input[type="date"] {
    padding: 10px 14px; border: 1px solid #d6dbf5; border-radius: 8px; font-size: 14px; min-width: 200px;
}
.rim-renew-form .rim-generate-btn {
    background: #f7b500 linear-gradient(180deg,#ffcb3d,#f7b500) repeat-x !important;
    color: #1f2940 !important; box-shadow: rgba(247,181,0,.3) 0 2px 8px !important;
    padding: 8px 20px !important; font-size: 13px !important;
}

@media (max-width: 600px) {
    .rim-renew-form { flex-direction: column; align-items: stretch; }
    .rim-renew-form input[type="date"] { width: 100%; }
}

/* ===================== File selector / preview-and-share (v9) ===================== */
.rim-dl-btn { opacity: .55; transition: opacity .15s ease, transform .15s ease; }
.rim-dl-btn:hover { opacity: .8; }
.rim-dl-btn.active {
    opacity: 1; box-shadow: 0 0 0 3px rgba(23,40,193,.25), rgba(23,40,193,.3) 0 4px 14px !important;
    transform: translateY(-1px);
}
.rim-preview-pdf { width: 100%; height: 460px; border: 1px solid #eaeaff; border-radius: 10px; }
.rim-preview-caption { text-align: center; font-size: 13px; color: #5b6e88; margin: -8px 0 18px; }
.rim-preview-caption a { color: #1728c1; font-weight: 600; }

/* ===================== Approve-with-date card (v10) ===================== */
.rim-approve-card { border: 2px solid #1bc943; background: #f3fdf6; }
.rim-approve-card h3 { color: #1a7d1a; }
.rim-approve-card .rim-generate-btn {
    background: #1bc943 linear-gradient(180deg,#34d058,#1bc943) repeat-x !important;
    box-shadow: rgba(27,201,67,.3) 0 4px 14px !important;
}
.rim-reject-inline { margin: 16px 0 0; }

/* ===================== Settings page (v11) ===================== */
.rim-settings-card {
    background: #fff; border-radius: 10px; padding: 22px 26px; margin-bottom: 18px; border-left: 5px solid;
    box-shadow: 0 3.2px 7.2px 0 rgba(131,126,255,.12), 0 .6px 1.8px 0 rgba(131,126,255,.1);
}
.rim-settings-card h3 {
    margin: 0 0 18px; font-size: 14px; text-transform: uppercase; letter-spacing: .4px;
    display: flex; align-items: center; gap: 10px; font-weight: 700;
}
.rim-settings-card h3 .dashicons {
    width: 30px; height: 30px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 16px;
}
.rim-settings-row { margin-bottom: 18px; }
.rim-settings-row:last-child { margin-bottom: 0; }
.rim-settings-row label { display: block; font-weight: 700; font-size: 13px; color: #1f2940; margin-bottom: 6px; }
.rim-settings-row input[type="text"], .rim-settings-row input[type="number"], .rim-settings-row textarea {
    border: 1px solid #d6dbf5; border-radius: 8px; padding: 10px 12px; background: #fafbff;
}
.rim-settings-row input:focus, .rim-settings-row textarea:focus { border-color: #1728c1; box-shadow: 0 0 0 3px rgba(23,40,193,.12); background: #fff; }
.rim-settings-desc { font-size: 12px; color: #8a8f98; margin: 6px 0 0; }
.rim-prefix-input { width: 180px !important; }
.rim-media-row { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
.rim-media-row .button { border-radius: 20px; white-space: nowrap; }
.rim-settings-preview {
    margin-top: 12px; padding: 10px; background: #fafbff; border: 1px solid #eaeaff; border-radius: 8px;
    display: inline-block;
}
.rim-settings-preview img { max-height: 60px; display: block; }

.rim-card-blue h3 .dashicons   { background: #eef0ff; color: #1728c1; }
.rim-card-purple h3 .dashicons { background: #f3e9ff; color: #8338ec; }
.rim-card-green h3 .dashicons  { background: #e6f9ec; color: #1a7d1a; }
.rim-card-orange h3 .dashicons { background: #fff3da; color: #a87600; }
.rim-card-red h3 .dashicons    { background: #fde8e8; color: #c81e1e; }
.rim-card-blue   { border-left-color: #1728c1; }
.rim-card-purple { border-left-color: #8338ec; }
.rim-card-green  { border-left-color: #1bc943; }
.rim-card-orange { border-left-color: #f7b500; }
.rim-card-red    { border-left-color: #c81e1e; }
.rim-card-blue h3   { color: #1728c1; }
.rim-card-purple h3 { color: #8338ec; }
.rim-card-green h3  { color: #1a7d1a; }
.rim-card-orange h3 { color: #a87600; }
.rim-card-red h3    { color: #c81e1e; }

.rim-color-row { display: flex; gap: 30px; flex-wrap: wrap; }
.rim-color-row input[type="color"] {
    width: 60px; height: 40px; border: 1px solid #d6dbf5; border-radius: 8px; padding: 2px; cursor: pointer;
}

.rim-save-btn { margin-top: 4px; }

@media (max-width: 600px) {
    .rim-media-row { flex-direction: column; align-items: stretch; }
}

/* ===================== Hex color picker (v12) ===================== */
.rim-hex-row { display: flex; align-items: center; gap: 10px; }
.rim-color-picker { width: 48px; height: 40px; border: 1px solid #d6dbf5; border-radius: 8px; padding: 2px; cursor: pointer; }
.rim-hex-label { font-weight: 700; color: #5b6e88; font-size: 13px; }
.rim-hex-input { width: 120px; padding: 9px 12px; border: 1px solid #d6dbf5; border-radius: 8px; background: #fafbff; text-transform: uppercase; }

/* ===================== Suspend / Reinstate (v13) ===================== */
.rim-badge-suspended { background: #fde2c8; color: #a85b00; }
.rim-fb-suspended.active { background: #ff8c00; border-color: #ff8c00; }

.rim-btn-suspend { color: #a85b00 !important; border-color: #fde2c8 !important; }
.rim-btn-suspend:hover { background: #fde2c8 !important; }
.rim-btn-reinstate { color: #1a7d1a !important; border-color: #d7ffd7 !important; }
.rim-btn-reinstate:hover { background: #d7ffd7 !important; }

.rim-suspend-card { border: 2px solid #ff8c00; background: #fff8ef; }
.rim-suspend-card h3 { color: #a85b00; }

.rim-verify-suspended { background: #fff3da; border: 2px solid #ff8c00; color: #a85b00; }

/* ===================== Verify page ID card image (v14) ===================== */
.rim-verify-card-row { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; margin: 12px 0 18px; }
.rim-verify-card-img {
    max-width: 100%; width: 200px; border-radius: 10px; display: block;
    box-shadow: 0 6px 20px rgba(0,0,0,.12); border: 1px solid #e0e0e0;
}

/* ===================== Delete + Danger Zone (v15) ===================== */
.rim-btn-delete {
    color: #b32d2e !important; border-color: #f8c9cd !important; padding: 4px 8px !important;
    display: inline-flex !important; align-items: center; justify-content: center;
}
.rim-btn-delete:hover { background: #fbe7e7 !important; }
.rim-btn-delete .dashicons { font-size: 16px; width: 16px; height: 16px; }
.rim-btn-delete-text { color: #b32d2e !important; border-color: #f8c9cd !important; }
.rim-btn-delete-text:hover { background: #fbe7e7 !important; }

.rim-card-danger { border: 2px solid #dc3545; background: #fff7f7; margin-top: 24px; }
.rim-card-danger h3 { color: #b32d2e; }
.rim-card-danger h3 .dashicons { background: #fde2e2; color: #b32d2e; }
.rim-danger-label { display: block; font-weight: 700; font-size: 13px; color: #1f2940; margin: 10px 0 6px; }
.rim-danger-row { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; }
.rim-btn-danger-solid {
    background: #dc3545 !important; color: #fff !important; border: none !important; border-radius: 20px !important;
    padding: 9px 22px !important; font-weight: 600 !important;
}
.rim-btn-danger-solid:hover { background: #b32d2e !important; color: #fff !important; }

@media (max-width: 600px) {
    .rim-danger-row { flex-direction: column; align-items: stretch; }
}

/* ===================== Developer credit footer (v17 - in-page) ===================== */
.rim-dev-footer {
    background: #1728c1 linear-gradient(180deg,#1f33d6,#1728c1) repeat-x;
    color: #fff; text-align: center; padding: 14px 20px; border-radius: 10px;
    margin: 28px 0 10px; font-size: 13px;
}
.rim-dev-footer a { color: #fff !important; text-decoration: underline; font-weight: 700; }

/* ===================== License activation gate (v18) ===================== */
.rim-license-wrap { display: flex; justify-content: center; padding: 60px 20px; }
.rim-license-box {
    background: #fff; border-radius: 14px; padding: 36px 40px; max-width: 420px; width: 100%;
    box-shadow: 0 10px 40px rgba(23,40,193,.15); border: 1px solid #eaeaff; text-align: center;
}
.rim-license-box h2 { margin: 0 0 10px; color: #1728c1; }
.rim-license-box p { color: #5b6e88; font-size: 13px; margin-bottom: 20px; }
.rim-license-box label { display: block; text-align: left; font-weight: 700; font-size: 13px; margin: 14px 0 6px; color: #1f2940; }
.rim-license-box input[type="text"], .rim-license-box input[type="password"] {
    width: 100%; padding: 10px 12px; border: 1px solid #d6dbf5; border-radius: 8px; box-sizing: border-box;
}
.rim-license-btn {
    margin-top: 20px; width: 100%; border-radius: 24px !important; padding: 10px !important;
    background: #1728c1 linear-gradient(180deg,#3a48ca,#1728c1) repeat-x !important; border: none !important;
}
.rim-license-error { background: #fbe7e7; color: #b32d2e; padding: 10px 14px; border-radius: 8px; font-size: 13px; margin-bottom: 14px; }

/* ===================== Standalone page buttons (v22) ===================== */
.rim-wrap-sa .button {
    display: inline-flex !important; align-items: center; gap: 4px;
    padding: 7px 16px !important; line-height: 1.6 !important; border: 1px solid #d6dbf5 !important;
    border-radius: 20px !important; background: #f6f7f8 !important; color: #1728c1 !important;
    text-decoration: none !important; cursor: pointer; font-size: 13px !important; box-sizing: border-box;
    vertical-align: middle; font-weight: 600; white-space: nowrap;
}
.rim-wrap-sa .button:hover { background: #eef0ff !important; color: #1728c1 !important; }

.rim-wrap-sa .button-primary {
    background: #1728c1 !important; border-color: #1728c1 !important; color: #fff !important;
}
.rim-wrap-sa .button-primary:hover { background: #142399 !important; color: #fff !important; }

.rim-wrap-sa .rim-generate-btn { color: #fff !important; }
.rim-wrap-sa .rim-dl-btn { color: #fff !important; }
.rim-wrap-sa .rim-btn-danger-solid { color: #fff !important; }

.rim-wrap-sa .rim-approve-card .rim-generate-btn { background: #1bc943 !important; border-color: #1bc943 !important; }
.rim-wrap-sa .rim-approve-card .rim-generate-btn:hover { background: #169c36 !important; }
.rim-wrap-sa .rim-renew-form .rim-generate-btn { background: #f7b500 !important; border-color: #f7b500 !important; color: #1f2940 !important; }
.rim-wrap-sa .rim-renew-form .rim-generate-btn:hover { background: #d99e00 !important; }

.rim-wrap-sa .rim-btn-danger { color: #b32d2e !important; border-color: #f8c9cd !important; background: #fff !important; }
.rim-wrap-sa .rim-btn-danger:hover { background: #fbe7e7 !important; }
.rim-wrap-sa .rim-btn-suspend { color: #a85b00 !important; border-color: #fde2c8 !important; background: #fff8ef !important; }
.rim-wrap-sa .rim-btn-suspend:hover { background: #fde2c8 !important; }
.rim-wrap-sa .rim-btn-reinstate { color: #1a7d1a !important; border-color: #d7ffd7 !important; background: #f3fdf6 !important; }
.rim-wrap-sa .rim-btn-delete-text { color: #b32d2e !important; border-color: #f8c9cd !important; background: #fff !important; }
.rim-wrap-sa .rim-btn-delete-text:hover { background: #fbe7e7 !important; }
.rim-wrap-sa .rim-btn-delete { color: #b32d2e !important; border-color: #f8c9cd !important; background: #fff !important; padding: 5px 8px !important; border-radius: 50% !important; }
.rim-wrap-sa .rim-btn-delete:hover { background: #fbe7e7 !important; }

.rim-wrap-sa .rim-dl-blue   { background: #0f1f8f !important; border-color: #0f1f8f !important; }
.rim-wrap-sa .rim-dl-blue:hover   { background: #0b1670 !important; }
.rim-wrap-sa .rim-dl-purple { background: #5b21b6 !important; border-color: #5b21b6 !important; }
.rim-wrap-sa .rim-dl-purple:hover { background: #471a8f !important; }
.rim-wrap-sa .rim-dl-teal   { background: #0b6e64 !important; border-color: #0b6e64 !important; }
.rim-wrap-sa .rim-dl-teal:hover   { background: #08574f !important; }

.rim-wrap-sa .rim-filter-btn {
    background: #fff !important; color: #5b6e88 !important; border: 1px solid #e0e6f5 !important; border-radius: 28px !important;
}
.rim-wrap-sa .rim-filter-btn.active { background: #1728c1 !important; color: #fff !important; border-color: #1728c1 !important; }

.rim-wrap-sa .rim-stat-box, .rim-wrap-sa .rim-stat-box:hover { color: inherit !important; text-decoration: none !important; }
.rim-wrap-sa .rim-stat-box h2 { color: #1f2940 !important; }

.rim-wrap-sa input[type="text"], .rim-wrap-sa input[type="password"], .rim-wrap-sa input[type="date"],
.rim-wrap-sa input[type="number"], .rim-wrap-sa textarea, .rim-wrap-sa select {
    padding: 8px 10px !important; border: 1px solid #d6dbf5 !important; border-radius: 6px !important; font-size: 13px !important;
}
.rim-wrap-sa .rim-license-btn { color: #fff !important; }
/* ===================== Fix 3: Submit button blue + green gradient ===================== */
.rim-submit-btn {
    background: linear-gradient(135deg, #1728c1 0%, #1bc943 100%) !important;
    color: #fff !important;
}
.rim-submit-btn:hover {
    background: linear-gradient(135deg, #142399 0%, #169c36 100%) !important;
    color: #fff !important;
}
.rim-submit-btn:active, .rim-submit-btn:focus {
    background: linear-gradient(135deg, #0f1f8f 0%, #1bc943 100%) !important;
    color: #fff !important;
    outline: none;
}

/* ===================== Fix 10: Standalone mode overrides for all above fixes ===================== */
.rim-wrap-sa .rim-submit-btn,
.rim-standalone .rim-submit-btn {
    background: linear-gradient(135deg, #1728c1 0%, #1bc943 100%) !important;
    color: #fff !important;
}
.rim-wrap-sa .rim-public-card,
.rim-standalone .rim-public-card {
    border-radius: 16px !important;
    box-shadow: 0 4px 18px rgba(23,40,193,.12) !important;
}
.rim-wrap-sa .rim-public-card-body,
.rim-standalone .rim-public-card-body {
    border-top: 3px solid #1728c1 !important;
}
.rim-wrap-sa .rim-admin-card-id-tag,
.rim-standalone .rim-admin-card-id-tag {
    max-width: 90% !important;
    white-space: normal !important;
}

/* ===================== PUBLIC REPORTERS GRID - v3 Redesign ===================== */
.rim-public-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
    gap: 26px;
    margin: 28px 0;
    padding: 0;
}

.rim-public-card {
    border: none;
    border-radius: 18px;
    overflow: hidden;
    background: #fff;
    text-align: center;
    box-shadow: 0 2px 12px rgba(23,40,193,.10), 0 1px 3px rgba(0,0,0,.06);
    transition: transform .22s ease, box-shadow .22s ease;
    position: relative;
    display: flex;
    flex-direction: column;
}

.rim-public-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 18px 40px rgba(23,40,193,.18), 0 3px 10px rgba(0,0,0,.08);
}

/* ---- Image wrap with designation overlay ---- */
.rim-public-card-img-wrap {
    position: relative;
    overflow: hidden;
    height: 210px;
    background: #f0f2fa;
    flex-shrink: 0;
}

.rim-public-card-img {
    width: 100%;
    height: 210px;
    object-fit: cover;
    object-position: top center;
    display: block;
    transition: transform .28s ease;
}

.rim-public-card:hover .rim-public-card-img {
    transform: scale(1.05);
}

/* Designation ribbon overlaid on bottom of image */
.rim-pc-desig-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(0deg, rgba(23,40,193,.88) 0%, rgba(23,40,193,.55) 70%, transparent 100%);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .6px;
    padding: 18px 10px 7px;
    line-height: 1.2;
}

/* ---- Card body ---- */
.rim-public-card-body {
    padding: 14px 14px 16px;
    background: #fff;
    border-top: 3px solid #1728c1;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 5px;
    align-items: center;
}

/* Name */
.rim-pc-name {
    margin: 0 0 2px;
    font-size: 15px;
    font-weight: 600;
    color: #1f2940;
    letter-spacing: .01em;
    line-height: 1.3;
}

/* ID tag */
.rim-pc-id {
    margin: 0;
    font-size: 12px;
    color: #1728c1;
    font-weight: 700;
    background: #eef0ff;
    border-radius: 10px;
    padding: 3px 10px;
    display: inline-block;
}
.rim-pc-id span {
    color: #8a8f98;
    font-weight: 400;
}

/* Place */
.rim-pc-place {
    margin: 0;
    font-size: 13px;
    color: #5b6e88;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
}

/* Valid upto */
.rim-pc-valid {
    margin: 0;
    font-size: 12px;
    color: #3a7d44;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
}

/* Icon shared */
.rim-pc-icon {
    font-size: 13px;
    line-height: 1;
}

/* Verify arrow link */
.rim-pc-verify-arrow {
    margin-top: 6px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    font-weight: 700;
    color: #fff;
    background: linear-gradient(90deg, #1728c1, #4f5fe0);
    padding: 5px 16px;
    border-radius: 20px;
    text-decoration: none;
    transition: background .2s ease, transform .15s ease;
    align-self: center;
}
.rim-pc-verify-arrow:hover {
    background: linear-gradient(90deg, #0f1ea8, #3a4bd4);
    transform: translateX(3px);
    text-decoration: none;
    color: #fff;
}

@media (max-width: 600px) {
    .rim-public-grid {
        grid-template-columns: repeat(auto-fill, minmax(155px, 1fr));
        gap: 14px;
    }
    .rim-public-card-img-wrap,
    .rim-public-card-img {
        height: 165px;
    }
}
