.gruvpay-wrap{max-width:1100px;margin:0 auto;padding:32px 20px;font-family:inherit;color:#0f172a}.gruvpay-panel{background:#fff;border:1px solid #dbe3ea;border-radius:22px;box-shadow:0 12px 30px rgba(17,41,111,.06)}.gruvpay-login{max-width:520px;margin:40px auto;padding:34px}.gruvpay-login h1,.gruvpay-dashboard h1{margin:0 0 8px;color:#11296f;font-size:clamp(28px, 4vw, 40px);line-height:1.1}.gruvpay-subtitle{margin:0 0 24px;color:#475569;font-size:16px}.gruvpay-brand-bar{height:6px;border-radius:999px;background:linear-gradient(90deg,#1383a0 0%,#2aa6da 100%);margin-bottom:24px}.gruvpay-login .login-username label,.gruvpay-login .login-password label{display:block;font-weight:600;margin-bottom:6px;color:#0f172a}.gruvpay-login input[type=text],.gruvpay-login input[type=password],.gruvpay-login input[type=email]{width:100%;padding:12px 14px;border:1px solid #cbd5e1;border-radius:12px;background:#fff}.gruvpay-login .login-submit input,.gruvpay-button,.gruvpay-dashboard a.gruvpay-button{background:#11296f;color:#fff;border:none;border-radius:12px;padding:12px 18px;font-weight:600;text-decoration:none;display:inline-block}.gruvpay-login .login-submit input:hover,.gruvpay-button:hover{opacity:.94}.gruvpay-login .login-remember{margin:14px 0}.gruvpay-login .login-submit{margin:14px 0 0}.gruvpay-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:18px}.gruvpay-links a,.gruvpay-logout{color:#1383a0;text-decoration:none;font-weight:700}.gruvpay-dashboard{padding:34px}.gruvpay-header-row{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;flex-wrap:wrap}.gruvpay-company{margin:0;color:#1383a0;font-size:18px;font-weight:700}.gruvpay-meta{margin:12px 0 0;color:#64748b;font-size:14px}.gruvpay-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px, 1fr));gap:16px;margin:28px 0}.gruvpay-card{padding:22px;border-radius:20px;background:linear-gradient(180deg,#fff 0%,#f8fbfd 100%);border:1px solid #dbe3ea}.gruvpay-card__label{font-size:14px;text-transform:uppercase;letter-spacing:.04em;color:#64748b;margin-bottom:8px}.gruvpay-card__value{font-size:34px;line-height:1.05;font-weight:800;color:#11296f}.gruvpay-note{margin:0 0 22px;padding:14px 16px;border-radius:14px;background:#eff8fc;color:#25516c;border:1px solid #d0ecf7}.gruvpay-table-wrap{overflow:auto;border:1px solid #dbe3ea;border-radius:18px}.gruvpay-table{width:100%;border-collapse:collapse;background:#fff}.gruvpay-table th{background:#f8fafc;color:#334155;font-size:13px;text-transform:uppercase;letter-spacing:.04em}.gruvpay-table th,.gruvpay-table td{padding:14px 16px;border-bottom:1px solid #e2e8f0;text-align:left;white-space:nowrap}.gruvpay-table tr:last-child td{border-bottom:none}.gruvpay-empty{padding:18px;border:1px dashed #cbd5e1;border-radius:16px;background:#fff}.gruvpay-pagination{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.gruvpay-page-link{display:inline-flex;min-width:40px;justify-content:center;align-items:center;padding:10px 12px;border-radius:12px;border:1px solid #dbe3ea;background:#fff;color:#11296f;text-decoration:none;font-weight:600}.gruvpay-page-link.is-active{background:#11296f;color:#fff;border-color:#11296f}.gruvpay-admin-card{background:#fff;border:1px solid #dbe3ea;border-radius:16px;padding:22px;margin:20px 0}.gruvpay-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px, 1fr));gap:16px}.gruvpay-status{display:inline-block;padding:4px 10px;border-radius:999px;background:#ecfdf5;color:#166534;font-weight:600}.gruvpay-status.is-inactive{background:#fef2f2;color:#991b1b}@media (max-width:640px){.gruvpay-wrap{padding:20px 14px}.gruvpay-dashboard,.gruvpay-login{padding:22px}.gruvpay-card__value{font-size:28px}}.gruvpay-status-row{margin:6px 0 4px}.gruvpay-account-status{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:999px;font-weight:700;font-size:13px}.gruvpay-account-status.is-active{background:#dcfce7;color:#166534}.gruvpay-account-status.is-inactive{background:#fef2f2;color:#991b1b}.gruvpay-redeem-row{margin:0 0 28px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}.gruvpay-redeem-hint{margin:0;color:#64748b;font-size:13px}.gruvpay-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 22px;border-radius:12px;font-weight:700;font-size:15px;border:none;cursor:pointer;transition:opacity .15s}.gruvpay-btn--primary{background:#11296f;color:#fff}.gruvpay-btn--primary:hover{opacity:.9}.gruvpay-btn--secondary{background:#f1f5f9;color:#334155;border:1px solid #cbd5e1}.gruvpay-btn--secondary:hover{background:#e2e8f0}.gruvpay-btn--disabled{background:#e2e8f0;color:#94a3b8;cursor:not-allowed}.gruvpay-tooltip-wrap{position:relative;display:inline-flex;align-items:center}.gruvpay-tooltip{display:none;position:absolute;bottom:calc(100% + 8px);left:0;background:#1e293b;color:#fff;font-size:13px;border-radius:10px;padding:10px 14px;min-width:260px;max-width:320px;line-height:1.5;z-index:10;pointer-events:none}.gruvpay-tooltip:after{content:'';position:absolute;top:100%;left:20px;border:6px solid transparent;border-top-color:#1e293b}.gruvpay-tooltip-wrap:hover .gruvpay-tooltip,.gruvpay-btn--disabled:focus+.gruvpay-tooltip{display:block}.gruvpay-overlay{position:fixed;inset:0;background:rgba(15,23,42,.6);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px}.gruvpay-modal{background:#fff;border-radius:22px;padding:34px;max-width:480px;width:100%;box-shadow:0 24px 60px rgba(17,41,111,.18);position:relative}.gruvpay-modal h2{margin:0 0 6px;color:#11296f;font-size:clamp(22px,3vw,28px)}.gruvpay-modal-available{margin:0 0 20px;color:#475569;font-size:15px}.gruvpay-modal-label{display:block;font-weight:700;color:#0f172a;margin-bottom:6px}.gruvpay-select,.gruvpay-textarea{width:100%;padding:11px 14px;border:1px solid #cbd5e1;border-radius:12px;font-size:15px;color:#0f172a;background:#fff;box-sizing:border-box}.gruvpay-select:focus,.gruvpay-textarea:focus{outline:none;border-color:#1383a0;box-shadow:0 0 0 3px rgba(19,131,160,.15)}.gruvpay-modal-error{margin-top:14px;padding:12px 16px;background:#fef2f2;color:#991b1b;border:1px solid #fecaca;border-radius:10px;font-size:14px}.gruvpay-modal-success{margin-top:14px;padding:12px 16px;background:#dcfce7;color:#166534;border:1px solid #bbf7d0;border-radius:10px;font-size:14px}.gruvpay-modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;flex-wrap:wrap}.gruvpay-credit{color:#166534;font-weight:700}.gruvpay-debit{color:#991b1b;font-weight:700}@media(max-width:640px){.gruvpay-modal{padding:24px}.gruvpay-modal-actions{flex-direction:column-reverse}.gruvpay-btn{width:100%}}.gruvpay-login h1,.gruvpay-dashboard h1{font-size:32px !important}.gruvpay-dashboard h2,.gruvpay-modal h2{font-size:28px !important}.gruvpay-login p.gruvpay-subtitle{line-height:1.4em;margin-bottom:25px}.gruvpay-login form#loginform .login-username{margin-bottom:16px}.gruvpay-login form#loginform input.input,.gruvpay-modal .gruvpay-select{background:#f4f7fb;border:1px solid #11728b;border-radius:16px;color:#11296f;padding:12px;width:100%;font-size:16px;line-height:1.5}.gruvpay-modal .gruvpay-select{padding-right:40px;appearance:none;--webkirt-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-chevron-down' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:calc(100% - 20px) 50%;background-size:15px}.gruvpay-modal .gruvpay-textarea{background:#f4f7fb;border:1px solid #11728b;border-radius:16px;color:#11296f;padding:12px;width:100%;font-size:16px;line-height:1.5}.gruvpay-login form#loginform label,.gruvpay-modal .gruvpay-modal-label,.gruvpay-login #gruv-login-form .gruv-field label{font-size:16px;font-weight:400}.gruvpay-panel.gruvpay-login,.gruvpay-panel.gruvpay-dashboard{background:unset;border:0;background-image:linear-gradient(100deg,var(--e-global-color-c347fb9) 0%,var(--e-global-color-7bd2e13) 100%);margin-top:0}.gruvpay-panel.gruvpay-login .gruvpay-brand-bar,.gruvpay-panel.gruvpay-dashboard .gruvpay-brand-bar,.gruvpay-modal .gruvpay-brand-bar{display:none}.gruvpay-links a:hover{color:var(--e-global-color-secondary) !important}p.gruvpay-note{display:none;margin-bottom:28px !important}.gruvpay-panel.gruvpay-dashboard .gruvpay-table-wrap{border:0}.gruvpay-panel.gruvpay-dashboard .gruvpay-table-wrap tr th,.gruvpay-panel.gruvpay-dashboard .gruvpay-table-wrap tr td{border:0}.gruvpay-panel.gruvpay-dashboard .gruvpay-table-wrap table.gruvpay-table{margin-bottom:0}.gruvpay-panel.gruvpay-dashboard .gruvpay-header-row{flex-wrap:nowrap;grid-gap:20px}.gruvpay-panel.gruvpay-dashboard .gruvpay-header-row>div:nth-child(2){min-width:62px}@media (max-width:767px){.gruvpay-login h1,.gruvpay-dashboard h1{font-size:24px !important}.gruvpay-dashboard h2{font-size:22px !important}}button.gruvpay-btn.gruvpay-btn--disabled{opacity:.5}.gruvpay-field-group{margin-bottom:18px}.gruvpay-label{display:block;font-weight:700;margin-bottom:6px;color:#0f172a;font-size:14px}.gruvpay-input{width:100%;padding:12px 14px;border:1.5px solid #cbd5e1;border-radius:12px;background:#fff;font-size:15px;color:#0f172a;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}.gruvpay-input:focus{outline:none;border-color:#1383a0;box-shadow:0 0 0 3px rgba(19,131,160,.15)}.gruvpay-input::placeholder{color:#94a3b8}.gruvpay-password-wrap{position:relative;display:flex;align-items:center}.gruvpay-password-wrap .gruvpay-input{padding-right:44px}.gruvpay-toggle-pw{position:absolute;right:12px;background:0 0;border:none;cursor:pointer;color:#64748b;padding:4px;display:flex;align-items:center}.gruvpay-toggle-pw:hover{color:#1383a0}.gruvpay-remember-row{margin:14px 0 20px;font-size:14px;color:#475569}.gruvpay-remember-label{display:flex;align-items:center;gap:8px;cursor:pointer}.gruvpay-submit-btn{width:100%;padding:13px;background:#11296f;color:#fff;border:none;border-radius:12px;font-size:15px;font-weight:700;cursor:pointer;transition:opacity .15s}.gruvpay-submit-btn:hover{opacity:.9}.gruvpay-submit-btn:disabled{opacity:.6;cursor:not-allowed}.gruvpay-login-error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca;border-radius:10px;padding:11px 14px;font-size:14px;margin-bottom:16px}#gruv-login-form{margin-top:4px}.gruv-field{margin-bottom:18px}.gruv-field label{display:block;font-weight:700;font-size:14px;color:#0f172a;margin-bottom:6px}.gruv-field input[type=email],.gruv-field input[type=password],.gruv-field input[type=text]{width:100%;padding:12px 14px;border:1px solid #11728b;border-radius:16px;background:#f4f7fb;font-size:16px;color:#11296f;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}.gruv-input-error{border-color:#f87171 !important;box-shadow:0 0 0 3px rgba(248,113,113,.15) !important}.gruv-field-error{display:block;color:#dc2626;font-size:13px;margin-top:5px;min-height:18px}.gruv-pw-wrap{position:relative;display:flex;align-items:center}.gruv-pw-wrap input{padding-right:44px}.gruv-pw-toggle{position:absolute;right:12px;background:0 0;border:none;cursor:pointer;color:#64748b;padding:4px;display:flex;align-items:center;line-height:1}.gruv-pw-toggle:hover{color:#1383a0}.gruv-remember-row{margin:14px 0 20px}.gruv-remember-label{display:flex;align-items:center;gap:8px;font-size:14px;color:#475569;cursor:pointer}.gruv-submit-btn{width:100%;padding:13px;background:#11296f;color:#fff;border:none;border-radius:12px;font-size:15px;font-weight:700;cursor:pointer;transition:opacity .15s}.gruv-submit-btn:hover{opacity:.9}.gruv-submit-btn:disabled{opacity:.6;cursor:not-allowed}.gruv-alert{border-radius:10px;padding:12px 16px;font-size:14px;margin-bottom:18px}.gruv-alert-error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.gruv-alert-success{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.gruv-field-error:empty{display:none}.gruvpay-login form#gruv-login-form .gruv-field button.gruv-pw-toggle{background-color:transparent;border:0;padding:0;color:#475569;right:17px}.gruv-field input[type=password]{padding-right:40px}p.gruvpay-company{font-size:25px}body .gruvpay-learn-more{color:#11296f !important;font-size:18px;font-weight:500}