.sppay-box,.sppay-dash .sppay-box{background:#fff;border:1px solid #e3e6ea;border-radius:10px;padding:18px 20px;margin:16px 0;box-sizing:border-box}
.sppay-box h3{margin-top:0}
.sppay-box label{display:block;font-weight:600;margin:12px 0 4px}
.sppay-box input[type=text],.sppay-box input[type=email],.sppay-box input[type=tel],.sppay-box input[type=password],.sppay-box input[type=search]{display:block;width:100%;max-width:420px;padding:10px 12px;margin-top:4px;border:1px solid #c9ced6;border-radius:6px;font-size:16px;box-sizing:border-box}
.sppay-check{font-weight:400!important}
.sppay-btn{display:inline-block;background:#00843d;color:#fff!important;border:0;border-radius:6px;padding:11px 20px;margin-top:12px;font-size:16px;font-weight:600;text-decoration:none;cursor:pointer;line-height:1.2}
.sppay-btn:hover{background:#006c32}
.sppay-btn:disabled{opacity:.6;cursor:wait}
.sppay-btn-alt{background:#334155}
.sppay-btn-alt:hover{background:#1e293b}
.sppay-price{font-size:22px;font-weight:700;margin:6px 0}
.sppay-note{color:#5b6470;font-size:14px}
.sppay-msg{margin-top:12px;min-height:1px}
.sppay-ok{color:#0a6b35;background:#e8f6ee;padding:10px 12px;border-radius:6px}
.sppay-error{color:#9b1c1c;background:#fdecec;padding:10px 12px;border-radius:6px;margin-bottom:12px}
.sppay-tabs{display:flex;gap:6px;margin-bottom:6px}
.sppay-tabs button{flex:1;padding:10px;border:1px solid #c9ced6;background:#f5f6f8;border-radius:6px;font-size:16px;cursor:pointer}
.sppay-tabs button.active{background:#00843d;color:#fff;border-color:#00843d}
.sppay-plans{display:flex;gap:14px;flex-wrap:wrap;margin-top:14px}
.sppay-plan{flex:1 1 200px;border:1px solid #e3e6ea;border-radius:10px;padding:14px 16px;text-align:center}
.sppay-plan h3{margin:0 0 4px}
.sppay-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.sppay-filter input,.sppay-filter select{padding:9px 10px;border:1px solid #c9ced6;border-radius:6px;font-size:16px}
.sppay-filter .sppay-btn{margin-top:0}
.sppay-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.sppay-card{display:block;border:1px solid #e3e6ea;border-radius:10px;padding:14px 16px;text-decoration:none;color:inherit;background:#fff}
.sppay-card:hover{border-color:#00843d;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.sppay-card h3{margin:8px 0;font-size:17px}
.sppay-tag{display:inline-block;background:#eef2f7;border-radius:20px;padding:2px 10px;font-size:12px}
.sppay-list{list-style:none;margin:0;padding:0}
.sppay-list li{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #eef0f3}
.sppay-link{color:#00843d;font-weight:600}
.sppay-table-wrap{overflow-x:auto}
.sppay-table{width:100%;border-collapse:collapse;font-size:14px}
.sppay-table th,.sppay-table td{text-align:left;padding:8px 10px;border-bottom:1px solid #eef0f3;white-space:nowrap}
.sppay-status{padding:2px 8px;border-radius:12px;font-size:12px;font-weight:600}
.sppay-status.sppay-paid{background:#e8f6ee;color:#0a6b35}
.sppay-status.sppay-pending{background:#fff4d6;color:#8a6100}
.sppay-status.sppay-failed{background:#fdecec;color:#9b1c1c}
.sppay-pager{margin-top:16px}
.sppay-pager .page-numbers{display:inline-block;padding:6px 11px;border:1px solid #c9ced6;border-radius:6px;margin-right:4px;text-decoration:none}
.sppay-pager .current{background:#00843d;color:#fff;border-color:#00843d}
.sppay-offline{margin-top:16px;border-top:1px dashed #d5d9e0;padding-top:12px}
.sppay-offline summary{cursor:pointer;font-weight:600;color:#334155}
.sppay-offline-body{margin-top:10px}
.sppay-offline-instr{background:#f5f6f8;border-radius:6px;padding:4px 14px;margin-bottom:8px}
.sppay-offline select{display:block;padding:9px 10px;border:1px solid #c9ced6;border-radius:6px;font-size:16px;margin-top:4px;max-width:100%}
.sppay-offline-msg{margin-top:10px}
.sppay-status.sppay-review{background:#e6effc;color:#1e4fa3}
.sppay-form-msg{margin-top:10px}
.sppay-form-msg:empty{display:none}
