:root { color-scheme: light; font-family: "Noto Sans Bengali", "Hind Siliguri", system-ui, sans-serif; color: #192b45; background: #fffaf0; }
* { box-sizing: border-box; }
body { margin: 0; line-height: 1.6; }
.wrap { width: min(100% - 32px, 680px); margin: 0 auto; padding: 24px 0 40px; }
header { margin-bottom: 18px; }
.logo { display: block; width: 180px; height: auto; }
h1 { font-size: clamp(1.55rem, 6vw, 2.1rem); line-height: 1.35; margin: 12px 0 18px; }
p { margin: 12px 0 18px; }
.choices, .page-links { display: flex; flex-wrap: wrap; gap: 12px; margin: 24px 0; }
a { color: #17385c; }
.choices a { display: block; flex: 1 1 240px; padding: 16px; border: 1px solid #d6c79f; border-radius: 12px; background: white; font-weight: 700; }
form { display: grid; gap: 8px; margin: 22px 0; }
label { font-weight: 700; }
input { width: 100%; min-height: 48px; border: 1px solid #8a8d91; border-radius: 8px; padding: 10px 12px; font: inherit; font-size: 1.1rem; background: white; color: inherit; }
.buttons { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 12px; }
button { min-height: 46px; border: 0; border-radius: 8px; padding: 9px 16px; font: inherit; font-weight: 700; color: #172b45; background: #f0c85d; cursor: pointer; }
button.secondary { background: #e8e6df; }
.result { margin: 18px 0; padding: 16px; border-radius: 10px; border: 1px solid #d6c79f; background: white; min-height: 58px; }
.privacy { color: #4e5967; font-size: .95rem; }
.app-link { display: inline-block; margin-top: 8px; }
.example-copy { color: #454d58; }
noscript { display: block; margin-top: 14px; }
@media (max-width: 380px) { .wrap { width: min(100% - 24px, 680px); } .buttons button { flex: 1 1 auto; } }
