:root{
  --teal:#2594B0; --navy:#174F60; --ink:#1F2A30; --muted:#5E6E76;
  --line:#DCE6EA; --soft:#F2F7F9; --tint:#E3F1F5; --amber:#B9770E; --amber-soft:#FBF3E4;
  --bg:#F5F8F9; --ok:#1E7F5C; --ok-soft:#E5F4EE;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'IBM Plex Sans Arabic',Tahoma,sans-serif;font-size:16px;line-height:1.7}
.hidden{display:none!important}

.app-top{position:sticky;top:0;z-index:5;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:24px;padding:10px 24px;flex-wrap:wrap}
.brand img{height:38px;display:block}
.steps{display:flex;gap:6px;list-style:none;margin:0;padding:0;flex-wrap:wrap;counter-reset:s}
.steps li{counter-increment:s;font-size:13px;color:var(--muted);padding:4px 10px 4px 12px;border-radius:999px;background:var(--soft)}
.steps li::before{content:counter(s) ". "}
.steps li.on{background:var(--navy);color:#fff}
.steps li.done{background:var(--tint);color:var(--navy)}

main{max-width:860px;margin:0 auto;padding:28px 16px 40px}
h1{font-size:28px;color:var(--navy);margin:0 0 6px;line-height:1.3}
h2{font-size:19px;color:var(--navy);margin:22px 0 6px}
.lead{color:var(--muted);margin:0 0 20px}
.hint{color:var(--muted);font-size:14px;margin:2px 0 10px}

.field{margin:14px 0}
.field label{display:block;font-weight:600;margin-bottom:6px}
input[type=search],input[type=text],textarea,select{width:100%;font:inherit;padding:11px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}
input:focus,textarea:focus,select:focus{outline:2px solid var(--teal);outline-offset:1px;border-color:var(--teal)}
.filters{display:flex;gap:10px}
.filters select{flex:1}

.results{list-style:none;margin:14px 0;padding:0;display:grid;gap:8px}
.results li{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 16px;cursor:pointer;display:flex;justify-content:space-between;gap:12px;align-items:center}
.results li:hover,.results li:focus{border-color:var(--teal);outline:none}
.results .t{font-weight:600}
.results .m{font-size:13px;color:var(--muted)}
.badge{font-size:12px;background:var(--soft);border:1px solid var(--line);border-radius:999px;padding:2px 10px;white-space:nowrap;color:var(--navy);font-weight:600}

.btn{font:inherit;font-weight:600;border:0;border-radius:10px;padding:10px 20px;background:var(--navy);color:#fff;cursor:pointer;text-decoration:none;display:inline-block}
.btn:hover{background:#0F3B48}
.btn.ghost{background:#fff;color:var(--navy);border:1px solid var(--line)}
.btn.ghost:hover{border-color:var(--teal)}
.btn:disabled{opacity:.5;cursor:default}
.link{background:none;border:0;color:var(--teal);font:inherit;font-weight:600;cursor:pointer;padding:0;text-decoration:underline}
.nav{display:flex;justify-content:space-between;gap:10px;margin-top:26px;flex-wrap:wrap}
.row-actions{display:flex;gap:10px;align-items:center;margin-top:10px;flex-wrap:wrap}
.row-actions input{flex:1;min-width:160px}

.card-box{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 18px;margin:14px 0}
.card-box summary{font-weight:600;color:var(--navy);cursor:pointer}
.card-box[open] summary{margin-bottom:10px}

.job-head{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 20px}
.job-head .t{font-size:22px;font-weight:700;color:var(--navy)}
.job-head .m{color:var(--muted);font-size:14px}

.tasks-edit{list-style:none;padding:0;margin:8px 0;display:grid;gap:8px}
.tasks-edit li{background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 14px;display:flex;gap:12px;align-items:flex-start}
.tasks-edit li.added{border-color:#E8CFA0;background:var(--amber-soft)}
.tasks-edit li.off{opacity:.55;text-decoration:line-through}
.tasks-edit input[type=checkbox]{width:18px;height:18px;margin-top:5px;accent-color:var(--navy)}
.tasks-edit .src{font-size:12px;color:var(--muted)}
.tasks-edit .x{margin-inline-start:auto;background:none;border:0;color:var(--muted);cursor:pointer;font-size:18px}

.bank{list-style:none;padding:0;margin:10px 0 0;max-height:340px;overflow:auto;display:grid;gap:6px}
.bank li{border:1px solid var(--line);border-radius:10px;padding:8px 12px;display:flex;gap:10px;align-items:flex-start;justify-content:space-between}
.bank .src{font-size:12px;color:var(--muted)}
.bank button{flex:0 0 auto}

.guide{background:var(--tint);border-radius:10px;padding:10px 14px;font-size:14px;margin-bottom:10px}
.guide .ex{display:block;color:var(--muted);margin-top:2px}
.similar{font-size:14px;margin-top:8px}
.similar .s-item{display:flex;justify-content:space-between;gap:10px;border:1px dashed var(--line);border-radius:10px;padding:6px 10px;margin-top:6px}
.ai-out{background:var(--ok-soft);border-radius:10px;padding:10px 14px;margin-top:10px}

.flag{font-size:12px;border-radius:6px;padding:1px 8px;background:var(--amber-soft);color:var(--amber);font-weight:600;white-space:nowrap}
.flags .item{background:var(--amber-soft);color:#7A4F08;border-radius:10px;padding:10px 14px;margin-top:8px;font-size:14px}

.radios{display:grid;gap:8px}
.radios label{display:flex;gap:10px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:10px;padding:9px 14px;font-weight:400;cursor:pointer}
.radios label .sz{margin-inline-start:auto;font-size:12px;color:var(--muted)}
.radios input[type=text]{padding:6px 10px}

.status{border-radius:12px;padding:12px 16px;font-size:15px}
.status.std{background:var(--ok-soft);color:var(--ok)}
.status.cus{background:var(--amber-soft);color:#7A4F08}
.unlock{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 18px;margin-top:12px}
.msg{font-size:14px;margin-top:6px}

.tabs{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}
.tabs button{font:inherit;border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 16px;cursor:pointer;color:var(--navy)}
.tabs button.on{background:var(--navy);color:#fff;border-color:var(--navy)}
.ad-out{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;white-space:pre-wrap;min-height:200px}
.ad-out .loading{color:var(--muted)}

#cardWrap{padding:0 0 30px;overflow-x:auto}
.app-foot{text-align:center;color:var(--muted);font-size:13px;padding:18px}
.app-foot a{color:var(--teal)}

@media (max-width:640px){
  .app-top{padding:10px 16px;gap:10px}
  .steps li{font-size:12px;padding:3px 8px}
  h1{font-size:23px}
  .filters{flex-direction:column}
  #cardWrap .page{transform-origin:top right;transform:scale(.46);margin:10px 16px -150mm auto}
}
