.import-page {
    min-height: calc(100vh - 3.5rem);
    min-height: calc(100dvh - 3.5rem);
    padding: 1.25rem max(1rem, env(safe-area-inset-right)) max(1.25rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));
}

.import-card {
    width: min(100%, 38rem);
    margin: 0 auto;
    padding: clamp(1.1rem, 5vw, 2rem);
    border-radius: 1rem;
    background: #fff;
    box-shadow: 0 .25rem 1rem rgb(16 42 67 / 12%);
}

.import-card h1 { margin: 0 0 .8rem; font-size: clamp(1.8rem, 8vw, 2.5rem); }
.import-card p { line-height: 1.5; }
.field { margin: 1.25rem 0; }
.field label { display: block; margin-bottom: .45rem; font-weight: 750; }
.field input { width: 100%; min-height: 3.25rem; padding: .65rem; border: 2px solid #9fb3c8; border-radius: .55rem; background: #fff; font: inherit; }
.field input:focus { border-color: #1261a0; outline: 3px solid rgb(18 97 160 / 20%); }

.upload-button {
    width: 100%;
    min-height: 4rem;
    padding: .75rem;
    border: 0;
    border-radius: .7rem;
    color: #fff;
    background: #1261a0;
    font: inherit;
    font-size: 1.15rem;
    font-weight: 800;
}

.notice { margin: 1rem 0; padding: .9rem; border-radius: .55rem; font-weight: 700; line-height: 1.4; }
.notice.success { color: #155d36; background: #e7f6ed; border: 1px solid #64a97d; }
.notice.error { color: #821b1b; background: #fff0ed; border: 1px solid #d77a72; }

