:root{
  --taj-green:#123f32;
  --taj-green-2:#1b5744;
  --taj-green-soft:#edf4f0;
  --taj-gold:#b58a3a;
  --taj-gold-dark:#8f6927;
  --taj-gold-soft:#f6eedf;
  --taj-bg:#f5f1e8;
  --taj-card:#ffffff;
  --taj-text:#26372f;
  --taj-muted:#718078;
  --taj-border:#ddd6c8;
  --taj-danger:#943d37;
  --taj-success:#246345;
  --taj-radius:16px;
  --taj-shadow:0 7px 24px rgba(18,63,50,.07);
}

html{
  background:var(--taj-bg);
}

body{
  margin:0 !important;
  direction:rtl;
  background:
    linear-gradient(
      180deg,
      #f0eadf 0,
      var(--taj-bg) 180px,
      var(--taj-bg) 100%
    ) !important;
  color:var(--taj-text) !important;
  font-family:Tahoma,Arial,sans-serif !important;
  line-height:1.65;
}

.wrap{
  width:100%;
  max-width:900px !important;
  margin:0 auto !important;
  padding:24px 16px 42px !important;
}

.card{
  background:var(--taj-card) !important;
  border:1px solid var(--taj-border) !important;
  border-radius:var(--taj-radius) !important;
  box-shadow:var(--taj-shadow);
  padding:20px !important;
  margin-bottom:16px !important;
}

h1,h2,h3{
  color:var(--taj-green) !important;
  font-weight:800;
  letter-spacing:0;
}

h1{
  font-size:1.5rem !important;
}

h2{
  font-size:1.12rem !important;
  padding-bottom:8px;
  border-bottom:1px solid #eee8dc;
}

.muted{
  color:var(--taj-muted) !important;
}

.back{
  color:var(--taj-green-2) !important;
  font-weight:700;
  text-decoration:none !important;
}

.back:hover{
  color:var(--taj-gold-dark) !important;
}

input[type=text],
input[type=tel],
input[type=email],
input[type=password],
input[type=number],
input[type=date],
input[type=time],
select{
  width:100%;
  min-height:46px;
  padding:10px 12px !important;
  border:1px solid var(--taj-border) !important;
  border-radius:10px !important;
  background:#fff !important;
  color:var(--taj-text) !important;
  outline:none;
}

input:focus,
select:focus{
  border-color:var(--taj-gold) !important;
  box-shadow:0 0 0 3px rgba(181,138,58,.13);
}

label{
  color:var(--taj-green) !important;
}

button,
.button,
.btn{
  border:0 !important;
  border-radius:10px !important;
  background:var(--taj-gold) !important;
  color:#fff !important;
  font-weight:800 !important;
  min-height:44px;
  transition:
    transform .15s ease,
    background .15s ease,
    box-shadow .15s ease;
}

button:hover,
.button:hover,
.btn:hover{
  background:var(--taj-gold-dark) !important;
  box-shadow:0 5px 14px rgba(143,105,39,.18);
}

button:active{
  transform:translateY(1px);
}

button.alt{
  background:var(--taj-green-2) !important;
}

button.danger{
  background:var(--taj-danger) !important;
}

button:disabled{
  opacity:.55 !important;
  box-shadow:none !important;
}

.info,
.mode-box{
  background:var(--taj-green-soft) !important;
  border:1px solid #d7e4dc;
  color:var(--taj-green) !important;
}

.warn,
.msg{
  background:var(--taj-gold-soft) !important;
  color:#6c521d !important;
  border:1px solid #e8d6af;
}

.success{
  background:#eaf5ee !important;
  color:var(--taj-success) !important;
  border:1px solid #cfe5d7;
}

.error{
  background:#fbeceb !important;
  color:#852f2a !important;
  border:1px solid #eccfcd;
}

.day{
  border:1px solid #e8e2d6;
  background:#faf8f3 !important;
  border-radius:11px !important;
}

.proposal{
  border:1px solid #d4dfd8 !important;
  background:#f8fbf9 !important;
}

.big{
  color:var(--taj-green) !important;
}

.session-option{
  background:#fafbf9 !important;
  border:1px solid #dde5df !important;
  border-radius:12px !important;
}

.session-option:has(input:checked){
  border-color:var(--taj-gold) !important;
  background:var(--taj-gold-soft) !important;
  box-shadow:0 0 0 2px rgba(181,138,58,.09);
}

input[type=radio],
input[type=checkbox]{
  accent-color:var(--taj-green-2);
}

@media (max-width:640px){
  .wrap{
    padding:14px 10px 28px !important;
  }

  .card{
    padding:15px !important;
    border-radius:13px !important;
  }

  h1{
    font-size:1.3rem !important;
  }

  h2{
    font-size:1.04rem !important;
  }

  button{
    min-height:46px;
  }

  .days{
    grid-template-columns:1fr 1fr !important;
  }
}

/* ===== TAJ unified identity header ===== */
.taj-brandbar{
  width:100%;
  background:var(--taj-green);
  border-bottom:3px solid var(--taj-gold);
  box-shadow:0 3px 14px rgba(18,63,50,.13);
}

.taj-brandbar-inner{
  width:100%;
  max-width:1100px;
  margin:0 auto;
  padding:11px 18px;
}

.taj-brand{
  display:flex;
  align-items:center;
  gap:11px;
}

.taj-brand-mark{
  width:46px;
  height:46px;
  flex:0 0 46px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.2);
  border-radius:12px;
  background:var(--taj-gold);
  color:#fff;
  font-size:1.05rem;
  font-weight:900;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.08);
}

.taj-brand-copy{
  min-width:0;
}

.taj-brand-title{
  color:#fff;
  font-size:1.05rem;
  line-height:1.35;
  font-weight:900;
}

.taj-brand-subtitle{
  margin-top:2px;
  color:#dfe9e4;
  font-size:.78rem;
}

@media (max-width:640px){
  .taj-brandbar-inner{
    padding:9px 12px;
  }

  .taj-brand-mark{
    width:40px;
    height:40px;
    flex-basis:40px;
    border-radius:10px;
    font-size:.95rem;
  }

  .taj-brand-title{
    font-size:.98rem;
  }

  .taj-brand-subtitle{
    font-size:.72rem;
  }
}

/* ===== TAJ visual refinement ===== */
.wrap{
  max-width:980px !important;
}

.taj-brandbar-inner{
  max-width:1180px;
}

.taj-brand-mark{
  width:50px;
  height:50px;
  flex-basis:50px;
  font-size:1.12rem;
}

.taj-brand-title{
  font-size:1.12rem;
}

.taj-brand-subtitle{
  font-size:.8rem;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus{
  -webkit-text-fill-color:var(--taj-text) !important;
  -webkit-box-shadow:0 0 0 1000px #fff inset !important;
  box-shadow:0 0 0 1000px #fff inset !important;
  transition:background-color 9999s ease-out 0s;
}

@media (max-width:640px){
  .wrap{
    max-width:100% !important;
  }

  .taj-brand-mark{
    width:42px;
    height:42px;
    flex-basis:42px;
  }

  .taj-brand-title{
    font-size:1rem;
  }
}

