@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300;0,9..144,400;0,9..144,500;0,9..144,600;1,9..144,400&family=Work+Sans:wght@300;400;500;600&display=swap');

:root{
  --soil:#111D31; --stone:#F4F0E8; --clay:#C6A15B; --olive:#B8AEA2; --brass:#AD8A4C; --ivory:#F5F1E8;
  --line: rgba(17,29,49,.14);
}
*{box-sizing:border-box; margin:0; padding:0;}
body{
  font-family:'Work Sans', sans-serif; background:var(--soil); color:var(--ivory);
  min-height:100vh; display:flex; align-items:center; justify-content:center; padding:40px 20px;
}
h1,h2{font-family:'Fraunces', serif; font-weight:500;}
.eyebrow{
  font-family:'Work Sans'; text-transform:uppercase; letter-spacing:.16em; font-size:.72rem;
  font-weight:600; color:var(--brass); margin-bottom:10px;
}
.auth-wrap{width:100%; max-width:440px;}
.auth-wrap.wide{max-width:640px;}
.auth-logo{
  display:block; text-align:center; font-family:'Fraunces', serif; font-size:1.4rem;
  color:var(--ivory); margin-bottom:28px; font-weight:500;
}
.auth-logo span{color:var(--brass); font-style:italic;}
.auth-logo img{height:56px; width:auto; display:inline-block;}
.auth-card{
  background:var(--stone); padding:44px 40px; border:1px solid var(--line);
}
.auth-card.wide{padding:48px 52px;}
.auth-card h1{font-size:2rem; margin-bottom:10px; color:var(--soil);}
.auth-card h2{color:var(--soil);}
.auth-sub{color:rgba(17,29,49,.65); font-weight:300; margin-bottom:26px; font-size:.98rem;}
.auth-error{
  background:rgba(198,161,91,.14); border:1px solid var(--clay); color:#8a6a2f;
  padding:12px 16px; font-size:.88rem; margin-bottom:20px;
}
form label{display:block; font-size:.8rem; text-transform:uppercase; letter-spacing:.06em; font-weight:600; margin-bottom:18px; color:var(--soil);}
form input{
  display:block; width:100%; margin-top:8px; padding:12px 14px; border:1px solid var(--line);
  background:var(--ivory); font-family:'Work Sans'; font-size:.95rem; color:var(--soil);
}
form input:focus{outline:2px solid var(--brass); outline-offset:1px;}
.btn-solid{
  width:100%; padding:14px; background:var(--clay); color:var(--ivory); border:none;
  text-transform:uppercase; letter-spacing:.1em; font-size:.8rem; font-weight:600; cursor:pointer;
  margin-top:6px; text-align:center;
}
.btn-solid:hover{background:var(--brass); color:var(--soil);}
.auth-alt{margin-top:22px; font-size:.88rem; color:rgba(17,29,49,.65); text-align:center;}
.auth-alt a{color:var(--clay); font-weight:600;}
.section-h{font-size:1.1rem; margin:34px 0 16px; padding-top:26px; border-top:1px solid var(--line);}
.muted{color:rgba(17,29,49,.55); font-size:.9rem;}
.table-simple{width:100%; border-collapse:collapse; font-size:.88rem;}
.table-simple th{text-align:left; text-transform:uppercase; letter-spacing:.06em; font-size:.72rem; color:var(--brass); padding:8px 6px; border-bottom:1px solid var(--line);}
.table-simple td{padding:10px 6px; border-bottom:1px solid var(--line);}
.status{padding:3px 9px; font-size:.74rem; text-transform:capitalize;}
.status-new{background:rgba(173,138,76,.18); color:var(--brass);}
.status-contacted{background:rgba(184,174,162,.25); color:#6b6459;}
.status-confirmed{background:rgba(198,161,91,.2); color:#8a6a2f;}
.status-declined{background:rgba(17,29,49,.1); color:var(--soil);}

@media (max-width:520px){
  .auth-card, .auth-card.wide{padding:32px 24px;}
}
.table-simple .muted{color:rgba(245,241,232,.55);}
