:root{--barn:#8B3A2B;--wheat:#F3E6C8;--sage:#6E8B5A;--soil:#3B2A1E;--paper:#FBF7EE;--muted:#7a6a58}
*{box-sizing:border-box}html,body{margin:0}body{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--paper);color:var(--soil);font-size:16px;line-height:1.45}
.wrap{max-width:480px;margin:0 auto;padding:20px 18px 40px}
.brand{background:linear-gradient(160deg,var(--barn),#6b2a1f);color:var(--wheat);padding:36px 22px 30px;text-align:center;border-radius:0 0 28px 28px}
.brand .mark{font-size:44px}.brand h1{margin:6px 0 2px;font-family:Georgia,serif;font-size:26px}.brand p{margin:0;opacity:.85}
.card{background:#fff;border:1px solid #eadfc9;border-radius:16px;padding:20px;margin-top:18px;box-shadow:0 2px 8px rgba(59,42,30,.06)}
label{display:block;font-weight:600;margin:14px 0 6px}
input{width:100%;font-size:16px;padding:14px;border:1.5px solid #d8c9a8;border-radius:12px;background:#fffdf8;min-height:50px}
input:focus{outline:none;border-color:var(--sage)}
.btn{display:block;width:100%;min-height:52px;font-size:17px;font-weight:700;border:0;border-radius:12px;background:var(--sage);color:#fff;margin-top:20px;cursor:pointer;text-align:center;text-decoration:none;line-height:52px;padding:0}
.btn.ghost{background:transparent;color:var(--barn);border:1.5px solid var(--barn)}
.err{background:#fbe9e5;color:#8B3A2B;padding:12px;border-radius:10px;margin-top:12px}
.top{display:flex;justify-content:space-between;align-items:center;background:var(--barn);color:var(--wheat);padding:14px 18px}
.top b{font-family:Georgia,serif;font-size:19px}.top form{margin:0}.top button{background:transparent;border:1px solid var(--wheat);color:var(--wheat);border-radius:10px;font-size:15px;padding:10px 14px;min-height:44px}
.tile{display:flex;gap:14px;align-items:center;text-decoration:none;color:inherit}
.tile .ic{font-size:30px;width:52px;height:52px;border-radius:14px;background:var(--wheat);display:grid;place-items:center;flex:none}
.tile h2{margin:0;font-size:18px}.tile p{margin:2px 0 0;color:var(--muted);font-size:14px}
.shift{border-left:5px solid var(--sage);padding:12px 14px;background:#fffdf8;border-radius:10px;margin-top:10px}
.shift .d{font-weight:700}.shift .t{font-size:18px}.shift .m{color:var(--muted);font-size:14px}
h3{margin:22px 0 4px;font-family:Georgia,serif}.muted{color:var(--muted)}
