:root {
  --paper: #f4f0e7;
  --paper-deep: #e9e2d5;
  --ink: #1d211d;
  --muted: #686a62;
  --line: #c9c1b3;
  --ochre: #a85f23;
  --rust: #944536;
  --sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --serif: Georgia, "Times New Roman", serif;
}

* { box-sizing: border-box; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: var(--sans); }
.login-shell { display: grid; min-height: 100svh; padding: 1.5rem; place-items: center; }
.login-card { width: min(100%, 420px); padding: clamp(1.5rem, 6vw, 3rem); border-block: 1px solid var(--ink); }
.devanagari { margin: 0 0 .35rem; color: var(--ochre); font-weight: 750; }
h1 { margin: 0; font-family: var(--serif); font-size: clamp(3.4rem, 14vw, 5.5rem); font-weight: 500; letter-spacing: -.065em; line-height: .9; }
.promise { margin: .8rem 0 2.2rem; color: var(--muted); font-family: var(--serif); font-style: italic; }
form { display: grid; gap: .65rem; }
label { margin-top: .45rem; color: var(--muted); font-size: .72rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
input { width: 100%; border: 1px solid var(--line); border-radius: 0; padding: .8rem .85rem; background: transparent; color: var(--ink); font: inherit; }
input:focus-visible { outline: 3px solid var(--ochre); outline-offset: 2px; }
button { margin-top: .8rem; border: 0; padding: .9rem 1rem; background: var(--ink); color: var(--paper); cursor: pointer; font: inherit; font-weight: 750; }
button:disabled { cursor: wait; opacity: .65; }
.session-note { margin: .55rem 0 0; color: var(--muted); font-size: .72rem; line-height: 1.45; }
.status { margin: .5rem 0 0; padding: .7rem; border-left: 3px solid var(--rust); color: var(--rust); font-size: .82rem; }
