:root{--brown:#4f2a12;--ochre:#c27a0a;--ochre-d:#a56606;--green:#7bbf2e;--cream:#fbf6ec;--tx:#2a1a0e;--bd:#e6d9c3;--ko:#b3261e}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:linear-gradient(160deg,var(--cream),#f3e6cb);color:var(--tx);font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;display:flex;align-items:center;justify-content:center;padding:20px}
.card{width:100%;max-width:420px;background:#fff;border:1px solid var(--bd);border-top:5px solid var(--ochre);border-radius:14px;padding:28px;box-shadow:0 8px 28px rgba(79,42,18,.12)}
.card.wide{max-width:760px}
.logo{display:block;height:110px;margin:0 auto 12px}
h1{font-size:1.35rem;color:var(--brown);text-align:center;margin:.2em 0 .8em}
label{display:block;font-weight:600;font-size:.9rem;margin:12px 0 4px;color:var(--brown)}
input,textarea{width:100%;font:inherit;padding:10px 12px;border:1px solid var(--bd);border-radius:8px;background:#fffdf8;color:var(--tx)}
input:focus,textarea:focus{outline:2px solid var(--ochre);border-color:var(--ochre)}
button{width:100%;margin-top:18px;font:inherit;font-weight:600;padding:11px;border:0;border-radius:8px;background:var(--ochre);color:#fff;cursor:pointer}
button:hover{background:var(--ochre-d)}button:disabled{opacity:.6}
button.sec{background:transparent;color:var(--brown);border:1px solid var(--bd)}
a{color:var(--ochre-d)}.links{text-align:center;margin-top:16px;font-size:.92rem}
.msg{min-height:1.4em;margin-top:12px;font-size:.92rem;text-align:center;color:var(--brown)}
.msg.err{color:var(--ko)}.msg.okk{color:#3d7d0e;font-weight:600}
table{width:100%;border-collapse:collapse;font-size:.9rem;margin-top:12px}td,th{border-bottom:1px solid var(--bd);padding:6px;text-align:left}
.row{display:flex;gap:8px;align-items:center}.row button{width:auto;margin:0;padding:6px 10px}
.chk{display:flex;gap:8px;align-items:center;margin-top:10px;font-weight:400}.chk input{width:auto}
