:root { color-scheme: light; font-family: Inter, ui-sans-serif, system-ui, sans-serif; background: #f3f5f2; color: #17251f; }
* { box-sizing: border-box; } body { margin: 0; } .app-shell, .login-card { max-width: 740px; margin: 0 auto; padding: 24px 16px 48px; } header { display: flex; justify-content: space-between; align-items: start; gap: 16px; margin-bottom: 20px; } h1, h2, p { margin-top: 0; } h1 { font-size: clamp(2rem, 8vw, 3rem); margin-bottom: 0; } h2 { font-size: 1.25rem; } .eyebrow { text-transform: uppercase; font-size: .72rem; font-weight: 800; letter-spacing: .12em; color: #22755d; margin-bottom: .4rem; } .card, .notice { background: white; border-radius: 18px; padding: 22px; box-shadow: 0 8px 30px #17342612; margin-bottom: 16px; } .notice { border-left: 5px solid #22755d; } .notice.error, .error { border-color: #b42318; color: #8d1f17; } .notice.success { border-color: #177245; color: #075d30; } form { display: grid; gap: 14px; } label { display: grid; gap: 6px; font-size: .92rem; font-weight: 700; } input, textarea { border: 1px solid #b8c6bd; border-radius: 10px; min-height: 46px; padding: 10px 12px; font: inherit; color: inherit; background: white; } textarea { min-height: 84px; resize: vertical; } button, .file-input { appearance: none; border: 0; border-radius: 11px; background: #155e4b; color: white; min-height: 48px; padding: 10px 16px; font: inherit; font-weight: 800; cursor: pointer; text-align: center; } button:disabled { opacity: .65; cursor: wait; } button.secondary { background: #e5ece8; color: #1b382d; } .file-input input { display: none; } #preview { display: block; width: 100%; max-height: 380px; object-fit: contain; border-radius: 12px; background: #edf2ee; } .fields { display: grid; gap: 12px; } .wide { grid-column: 1 / -1; } .confidence { font-size: .9rem; color: #52645b; margin: 0; } a { color: inherit; font-weight: 800; } @media (min-width: 620px) { .fields { grid-template-columns: 1fr 1fr; } }
