:root{
  --brown:#4c2117;--brown2:#532a1c;--gold:#c19a3e;--gold2:#d9b45a;
  --cream:#f6efe1;--paper:#fffdf8;--ink:#3a2117;--ink-soft:#6b5344;--line:#e7dcc7;
  --shadow:0 16px 40px -24px rgba(76,33,23,.5);
}
*{box-sizing:border-box}
body{margin:0;font-family:'Tajawal',system-ui,sans-serif;color:var(--ink);background:var(--cream);line-height:1.7}
h1,h2,h3{font-family:'El Messiri','Tajawal',sans-serif;color:var(--brown);margin:0}
img{display:block;max-width:100%}
.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;border-radius:100px;font-weight:700;
  border:0;cursor:pointer;font-family:inherit;font-size:1rem;transition:.2s}
.btn--gold{background:linear-gradient(135deg,var(--gold2),var(--gold));color:#3a2011;box-shadow:0 12px 24px -12px rgba(193,154,62,.8)}
.btn--gold:hover{transform:translateY(-1px);filter:brightness(1.04)}
.btn svg{width:18px;height:18px}

/* ---------- LOGIN ---------- */
body.auth{display:grid;place-items:center;min-height:100vh;
  background:radial-gradient(120% 120% at 100% 0,#fbf5e9,var(--cream))}
.login__card{background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:40px 36px;
  width:min(400px,92vw);box-shadow:var(--shadow);text-align:center}
.login__logo svg{height:50px;width:auto;margin-bottom:18px}
.login__card h1{font-size:1.7rem}
.login__card p{color:var(--ink-soft);margin:6px 0 22px}
.login__card .fld{text-align:right}
.back{display:inline-block;margin-top:18px;color:var(--ink-soft);font-size:.95rem}
.back:hover{color:var(--brown)}

/* ---------- fields ---------- */
.fld{margin-bottom:14px}
.fld label{display:block;font-weight:600;color:var(--brown);margin-bottom:6px;font-size:.95rem}
.fld input[type=text],.fld input[type=password],.fld input[type=email],.fld textarea{
  width:100%;border:1.5px solid var(--line);border-radius:11px;padding:11px 13px;font-family:inherit;
  font-size:1rem;background:#fff;color:var(--ink);transition:.2s}
.fld input:focus,.fld textarea:focus{outline:none;border-color:var(--gold)}
.fld textarea{resize:vertical}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
/* bilingual field rows */
.mlrow{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mlcol{position:relative}
.mltag{position:absolute;top:8px;inset-inline-start:10px;font-size:.62rem;font-weight:700;color:#fff;
  background:var(--brown);border-radius:5px;padding:1px 6px;letter-spacing:.3px;pointer-events:none;opacity:.85}
.mltag.ltr{background:var(--gold)}
.mlcol input,.mlcol textarea{padding-top:26px}
.globalhint{margin-bottom:16px}
.grid3{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:0 14px}
.hint{color:var(--ink-soft);font-size:.9rem;background:#fbf4e6;border:1px dashed #e3d2a8;padding:8px 12px;border-radius:10px;margin:2px 0 14px}

/* ---------- image field ---------- */
.imgfld{background:#fbf6ec;border:1px solid var(--line);border-radius:14px;padding:14px}
.imgrow{display:flex;gap:16px;align-items:center}
.imgprev{width:150px;height:110px;flex:none;border-radius:10px;overflow:hidden;border:1px solid var(--line);background:#fff}
.imgprev img{width:100%;height:100%;object-fit:cover}
.imgctrl{flex:1;min-width:0}
.filebtn{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,var(--gold2),var(--gold));
  color:#3a2011;font-weight:700;padding:9px 16px;border-radius:100px;cursor:pointer;font-size:.92rem}
.filebtn svg{width:16px;height:16px}
.filebtn input{display:none}
.cur{display:block;color:var(--ink-soft);font-size:.82rem;margin-top:8px;word-break:break-all}

/* ---------- APP layout ---------- */
body.app{padding-top:64px}
.topbar{position:fixed;top:0;inset-inline:0;height:64px;z-index:40;display:flex;align-items:center;justify-content:space-between;
  padding:0 20px;background:rgba(255,253,248,.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.topbar__logo{display:flex;align-items:center;gap:12px}
.topbar__logo svg{height:34px;width:auto}
.topbar__logo span{font-family:'El Messiri';font-weight:700;color:var(--brown)}
.topbar__actions{display:flex;gap:10px}
.tb-btn{padding:9px 16px;border-radius:100px;background:#fff;border:1px solid var(--line);color:var(--brown);
  font-weight:600;text-decoration:none;font-size:.92rem}
.tb-btn:hover{background:var(--cream)}
.tb-btn.danger{color:#a3392a;border-color:#eabfb7}

.layout{display:grid;grid-template-columns:230px 1fr;gap:26px;max-width:1120px;margin:26px auto;padding:0 20px}
.side{position:sticky;top:86px;align-self:start}
.tabs{display:flex;flex-direction:column;gap:3px;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:8px}
.tabs a{padding:10px 14px;border-radius:10px;color:var(--ink-soft);font-weight:600;cursor:pointer;font-size:.95rem;transition:.15s}
.tabs a:hover{background:var(--cream);color:var(--brown)}
.tabs a.active{background:linear-gradient(135deg,var(--brown),var(--brown2));color:#fff}
.save-side{width:100%;justify-content:center;margin-top:12px}

.panels{min-width:0}
.panel{display:none;background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:var(--shadow);animation:fade .25s}
.panel.active{display:block}
@keyframes fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.panel h2{font-size:1.35rem;margin:6px 0 16px}
.panel h2:not(:first-child){margin-top:26px;padding-top:20px;border-top:1px dashed var(--line)}
.panel h3{font-size:1.1rem;color:var(--gold);margin:22px 0 12px}

/* ---------- list items ---------- */
.list{display:flex;flex-direction:column;gap:12px}
.item{background:#fbf6ec;border:1px solid var(--line);border-radius:14px;padding:16px}
.item--row{display:flex;align-items:center;gap:12px;padding:10px 14px}
.item--row .grow{flex:1;margin:0}
.item__h{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.item__h span{font-weight:700;color:var(--brown)}
.rm{background:#fbe9e6;border:1px solid #eabfb7;color:#a3392a;border-radius:9px;padding:6px 12px;cursor:pointer;font-family:inherit;font-weight:600;font-size:.85rem;flex:none}
.rm:hover{background:#f6d9d3}
.addbtn{margin-top:12px;background:#fff;border:1.5px dashed var(--gold);color:var(--brown);border-radius:12px;
  padding:11px 18px;cursor:pointer;font-family:inherit;font-weight:700;width:100%;transition:.2s}
.addbtn:hover{background:#fbf4e6}

.save-bar{margin-top:22px;display:flex;justify-content:flex-end}

/* ---------- flash ---------- */
.flash{border-radius:12px;padding:12px 16px;margin-bottom:14px;font-weight:600}
.flash.ok{background:#eaf6ea;border:1px solid #bfe0bf;color:#276b2b}
.flash.err{background:#fbe9e6;border:1px solid #eabfb7;color:#a3392a}
.flash.floating{position:fixed;top:76px;inset-inline:20px;z-index:60;max-width:1120px;margin-inline:auto;box-shadow:var(--shadow)}

@media(max-width:820px){
  .layout{grid-template-columns:1fr}
  .side{position:static}
  .tabs{flex-direction:row;flex-wrap:wrap}
  .tabs a{flex:1 1 auto;text-align:center}
  .grid2,.grid3{grid-template-columns:1fr}
  .imgrow{flex-direction:column;align-items:stretch}
  .imgprev{width:100%;height:150px}
}
