.gpay-lookup {
    --lookup-border: #c8d4e6;
    --lookup-panel: #f2f5fa;
    --lookup-muted: #52627b;
    --lookup-accent: #0a3a80;
    margin: 24px 0;
    color: inherit;
}
.gpay-lookup .gpay-lookup-form {
    padding: 24px;
    border: 1px solid var(--lookup-border);
    border-radius: 8px;
    background: var(--lookup-panel);
}
.gpay-lookup .gpay-lookup-fields { display: grid; grid-template-columns: 1fr 2fr; gap: 20px; }
.gpay-lookup label { display: block; margin-bottom: 8px; font-weight: 600; }
.gpay-lookup input, .gpay-lookup select {
    display: block; width: 100%; max-width: none; box-sizing: border-box;
    min-height: 46px; padding: 10px 12px; margin: 0;
    border: 1px solid #8da1bf; border-radius: 4px;
    background: #fff; color: #172b35; font: inherit;
}
.gpay-lookup input:focus, .gpay-lookup select:focus, .gpay-lookup button:focus-visible {
    outline: 3px solid #648ac5; outline-offset: 2px;
}
.gpay-lookup .gpay-lookup-hint { color: var(--lookup-muted); font-size: 0.95em; margin: 12px 0 18px; }
.gpay-lookup .gpay-lookup-submit {
    background: var(--lookup-accent); color: #fff; border: 0; border-radius: 4px;
    padding: 12px 24px; min-height: 46px; cursor: pointer; font: inherit; font-weight: 600;
}
.gpay-lookup .gpay-lookup-submit:hover { background: #072b60; }
.gpay-lookup .gpay-lookup-results:empty { display: none; }
.gpay-lookup .gpay-lookup-results { margin-top: 24px; }
.gpay-lookup .gpay-lookup-result { border: 1px solid var(--lookup-border); border-left: 4px solid var(--lookup-accent); border-radius: 4px; padding: 20px; margin: 16px 0; }
.gpay-lookup .gpay-lookup-result h3 { margin-top: 0; overflow-wrap: anywhere; }
.gpay-lookup .gpay-lookup-result h4 { margin: 20px 0 8px; }
.gpay-lookup .gpay-lookup-kit { font-size: 1.15em; font-weight: 600; }
.gpay-lookup .gpay-lookup-confirm { font-weight: 600; }
.dark-mode .gpay-lookup { --lookup-border: #435876; --lookup-panel: #1d2b40; --lookup-muted: #bccbe0; --lookup-accent: #7399d2; }
.dark-mode .gpay-lookup input, .dark-mode .gpay-lookup select { background: #17243a; color: #f0f4fa; }
.dark-mode .gpay-lookup .gpay-lookup-submit { background: #0a3a80; }
@media (max-width: 600px) {
    .gpay-lookup .gpay-lookup-fields { grid-template-columns: 1fr; }
    .gpay-lookup .gpay-lookup-form { padding: 18px; }
    .gpay-lookup .gpay-lookup-submit { width: 100%; }
}
@media print { .gpay-lookup .gpay-lookup-form { display: none; } }
