body {
    background: #f6f9fd;
    font-family: 'Segoe UI', Arial, sans-serif;
    margin: 0;
    padding: 0;
}
.main-container {
    background: #fff;
    max-width: 620px;
    margin: 2.5rem auto;
    border-radius: 12px;
    box-shadow:0 1px 14px 2px rgba(80,100,120,0.12);
    padding: 1.8rem 2.5rem 2.6rem;
    min-height: 220px;
}
.header {
    text-align: center; margin-bottom: 1.1rem;
}
.header img {
    width: 70px; border-radius: 50%; margin-bottom: 8px;
}
.header h1 {
    font-size: 2rem; color: #245a90; margin: 0 0 6px; font-weight: 600;
}
.header .subtitle {
    font-size: 1.03rem; color: #345; opacity: 0.78; margin: 0 0 1.1em;
}
.instructions {
    color: #456; background: #eaf4ff; padding: 10px 18px; border-radius: 6px; margin-bottom: 18px;
}
.form-section { margin: 1.8em 0 1.1em; }
.file-list {
    margin: .7em 0; border-radius:5px; background:#f3fbff; padding:.7em 1.3em; font-size:.97rem;
}
.file-list label { display: block; margin: .25em 0; }
#submit-button {
    width: 100%; padding:.97em; font-size:1.15rem; background: #286090; color: #fff; border: none; border-radius: 6px; cursor: pointer; margin-top: .8em; font-weight: 500; transition: background .18s;
}
#submit-button:disabled, #submit-button[disabled] { opacity: .59; cursor: default; background: #999; }
#result-area { margin: 2em 0 .2em; }
#error-message {
    padding: 0.8em 1.2em; margin-bottom: 1em; background: #ffebea; color: #b11d18; border-left: 4px solid #e25b5b; border-radius: 5px; font-size: .99rem;
}
.result-block { background:#eef4fa; border-radius:6px; padding:.82em 1em 1em; margin-bottom:1.2em; word-break: break-word; }
.block-title { font-weight:600; color:#204d74; margin:.85em 0 .2em; font-size:1.13em; }
.result-json { font-family:monospace; font-size:1em; background:#f5f8fa; padding:.85em .75em; border-radius:4px; margin-top:8px; white-space:pre-wrap; }