* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
body {
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    background: linear-gradient(135deg, #f0f4f8 0%, #e2e8f0 100%);
    min-height: 100vh;
    padding: 60px 20px;
}
.wrap {
    max-width: 600px;
    margin: 0 auto;
}
.card {
    background: #ffffff;
    border-radius: 18px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.08);
    padding: 36px;
}
.title {
    font-size: 22px;
    color: #1e293b;
    text-align: center;
    margin-bottom: 28px;
    font-weight: 600;
}
.input-wrap {
    margin-bottom: 20px;
}
input[type="text"] {
    width: 100%;
    padding: 14px 18px;
    font-size: 16px;
    border: 1px solid #cbd5e1;
    border-radius: 12px;
    outline: none;
    transition: border 0.25s ease, box-shadow 0.25s ease;
}
input[type="text"]:focus {
    border-color: #2563eb;
    box-shadow: 0 0 0 3px rgba(37,99,235,0.12);
}
.btn-row{
    display:flex;
    gap:12px;
}
button {
    padding: 14px;
    font-size: 16px;
    font-weight: 500;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.25s ease;
}
.btn-query{
    flex:1;
    background: linear-gradient(90deg,#2563eb,#1d4ed8);
    color: #fff;
}
.btn-query:hover {
    background: linear-gradient(90deg,#1d4ed8,#1e40af);
    transform: translateY(-1px);
}
button:active {
    transform: translateY(0);
}
.error-box {
    margin-top: 22px;
    padding: 14px 18px;
    background-color: #fef2f2;
    border:1px solid #fecdd3;
    color:#b91c1c;
    border-radius:12px;
}
.result-card {
    margin-top:26px;
    border:1px solid #e2e8f0;
    border-radius:14px;
    overflow:hidden;
}
.result-item {
    display:flex;
    padding:16px 20px;
}
.result-item:not(:last-child) {
    border-bottom:1px solid #f1f5f9;
}
.label {
    width:130px;
    color:#64748b;
    font-weight:500;
    flex-shrink:0;
}
.value {
    flex:1;
    color:#1e293b;
}
.value strong {
    color:#2563eb;
}
.qr-wrap{
    padding:20px;
    text-align:center;
    border-top:1px solid #f1f5f9;
}
.qr-wrap img{
    width:200px;
    height:200px;
}
.qr-tip{
    font-size:12px;
    color:#888;
    margin-top:8px;
}
