/* ToolCMS V3.1.82 (c) ToolWorld https://www.toolworld.cn/ */
*{box-sizing:border-box;margin:0;padding:0}
body{margin:0;padding:0;font-family:inherit;background:transparent;color:var(--text-1,#333);font-size:14px;line-height:1.6}
.obk-container{max-width:100%;margin:0 auto;padding:16px}
.obk-hero{text-align:center;margin-bottom:16px}
.obk-title{font-size:20px;font-weight:700;color:var(--text-1,#1f2937)}
.obk-subtitle{font-size:13px;color:var(--text-3,#94a3b8);margin-top:4px}

.obk-card-visual{background:linear-gradient(135deg,#1e3a8a,var(--primary));border-radius:var(--radius,14px);padding:24px 22px;color:#fff;margin-bottom:16px;box-shadow:0 8px 24px rgba(30,58,138,.25);min-height:160px;display:flex;flex-direction:column;justify-content:space-between}
.obk-chip{width:44px;height:32px;border-radius:6px;background:linear-gradient(135deg,#fbbf24,#f59e0b);margin-bottom:16px}
.obk-card-number{font-family:monospace;font-size:20px;letter-spacing:3px;word-break:break-all;margin-bottom:14px}
.obk-card-meta{display:flex;justify-content:space-between;align-items:center}
.obk-card-brand{font-size:14px;font-weight:600;opacity:.95}
.obk-card-luhn{font-size:13px;opacity:.9}

.obk-input-card{background:var(--bg-card,#fff);border:1px solid var(--border,#e2e8f0);border-radius:var(--radius,14px);padding:18px;margin-bottom:14px}
.obk-label{display:block;font-weight:600;font-size:13px;color:var(--text-2,#555);margin-bottom:8px}
.obk-input{width:100%;padding:11px 14px;border:1px solid var(--border,#d1d5db);border-radius:var(--radius-sm,8px);font-size:16px;letter-spacing:1px;font-family:monospace;background:var(--bg-card,#fff);color:var(--text-1,#333);outline:none;transition:border-color .15s}
.obk-input:focus{border-color:var(--primary,var(--primary-hover))}
.obk-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.obk-btn{padding:8px 16px;border:1px solid var(--border,#d1d5db);border-radius:var(--radius-sm,8px);background:var(--bg-card,#fff);color:var(--text-1,#333);cursor:pointer;font-size:13px;transition:background .15s}
.obk-btn:hover{background:var(--primary-light)}

.obk-btn-primary{background:var(--primary,var(--primary-hover));color:#fff;border-color:var(--primary,var(--primary-hover))}
.obk-btn-primary:hover{background:var(--primary-light);color:var(--primary)}


.obk-result{margin-bottom:14px;padding:14px 16px;border-radius:var(--radius,10px);font-size:14px;display:none}
.obk-result.show{display:block}
.obk-result.ok{background:#dcfce7;color:#166534;border:1px solid #86efac}
.obk-result.bad{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}

.obk-prefix-table-wrap{overflow-x:auto;border:1px solid var(--border,#e2e8f0);border-radius:var(--radius,10px);margin-bottom:14px;padding-bottom:8px}
.obk-prefix-title{font-size:14px;font-weight:600;color:var(--text-1,#1f2937);padding:12px 14px 0}
.obk-prefix-table{width:100%;border-collapse:collapse;font-size:13px;margin-top:8px}
.obk-prefix-table th{background:var(--bg-soft,#f8fafc);padding:9px 12px;text-align:left;font-weight:600;color:var(--text-2,#555);border-bottom:1px solid var(--border,#e2e8f0)}
.obk-prefix-table td{padding:9px 12px;border-bottom:1px solid var(--border-light,#f1f5f9);color:var(--text-1,#333)}
.obk-prefix-table tbody tr:last-child td{border-bottom:none}

.obk-note{background:var(--bg-soft,#f8fafc);border-radius:var(--radius,10px);padding:12px 14px;margin-bottom:14px}
.obk-note p{font-size:12px;color:var(--text-3,#64748b);line-height:1.6}

.obk-message{margin-bottom:10px;padding:8px 12px;border-radius:var(--radius-sm,8px);font-size:13px;display:none}
.obk-message.show{display:block}
.obk-message.success{background:var(--primary-light);color:var(--primary,var(--primary-hover))}
.obk-message.error{background:var(--error-bg,#fee2e2);color:var(--error,#991b1b)}

.obk-footer{margin-top:16px;padding-top:12px;border-top:1px solid var(--border-light,#f1f5f9);font-size:12px;color:var(--text-3,#94a3b8);display:flex;justify-content:space-between;align-items:center}
.obk-footer-right{margin-left:auto}

@media(max-width:640px){
    .obk-container{padding:10px}
    .obk-card-number{font-size:16px;letter-spacing:2px}
    .obk-btn{flex:1 1 auto}
    .obk-footer{flex-direction:column;gap:4px;text-align:center}
    .obk-prefix-table{font-size:12px}
}
