:root{
    --green:#123B30;
    --green-2:#1B4D3E;
    --green-soft:#e7efec;
    --red:#B01030;
    --gold:#D4A84B;
    --white:#FFFFFF;
    --gray-l:#F4F4F1;
    --gray-m:#8B928E;
    --gray-d:#1D2320;
    --ink:#141816;
    --radius:18px;
    --shadow:0 10px 30px -12px rgba(18,59,48,.18);
    --serif:'Cairo', 'IBM Plex Sans', sans-serif;
  }
  [data-theme="dark"]{
    --white:#101613;
    --gray-l:#182420;
    --ink:#EDF2EF;
    --gray-m:#8A968F;
    --shadow:0 10px 30px -12px rgba(0,0,0,.5);
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  body{
    font-family: var(--serif);
    background: var(--gray-l);
    color: var(--ink);
    transition: background .3s, color .3s;
    min-height:100vh;
  }
  .topbar{
    display:flex; align-items:center; justify-content:space-between;
    padding:14px 32px; background:var(--green); color:#fff; position:sticky; top:0; z-index:50;
    box-shadow: var(--shadow);
  }
  .brand{display:flex; align-items:center; gap:12px; font-weight:800; font-size:18px;}
  .emblem{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg, var(--gold), #a8801c); display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--green);}
  .nav-tabs{display:flex; gap:6px; background:rgba(255,255,255,.08); padding:5px; border-radius:14px;}
  .nav-tabs button{
    border:none; background:transparent; color:#fff; opacity:.75; padding:9px 16px; border-radius:10px;
    font-family:var(--serif); font-weight:600; font-size:14px; cursor:pointer; transition:.2s;
  }
  .nav-tabs button.active{background:#fff; color:var(--green); opacity:1;}
  [hidden]{display:none !important;}
  .top-actions{display:flex; align-items:center; gap:10px;}
  .icon-btn{width:38px;height:38px;border-radius:10px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:#fff;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;}
  .btn-primary{background:var(--gold); color:var(--green); border:none; padding:10px 20px; border-radius:12px; font-weight:700; font-family:var(--serif); cursor:pointer; font-size:14px;}
  .btn-ghost{background:transparent; border:1.5px solid rgba(255,255,255,.5); color:#fff; padding:9px 18px; border-radius:12px; font-weight:600; font-family:var(--serif); cursor:pointer; font-size:14px;}

  .page{display:none; animation: fade .35s ease;}
  .page.active{display:block;}
  @keyframes fade{from{opacity:0; transform:translateY(6px);} to{opacity:1; transform:none;}}

  /* ---------- LANDING ---------- */
  .hero{
    position:relative; overflow:hidden;
    background: radial-gradient(1200px 600px at 80% -10%, rgba(201,162,39,.18), transparent 60%),
                linear-gradient(160deg, var(--green) 0%, var(--green-2) 55%, #0d2b23 100%);
    color:#fff; padding:90px 6vw 120px;
  }
  .hero-motif{
    position:absolute; inset:0; opacity:.14;
    background-image:
      repeating-linear-gradient(45deg, transparent 0 22px, rgba(255,255,255,.5) 22px 23px),
      repeating-linear-gradient(-45deg, transparent 0 22px, rgba(255,255,255,.5) 22px 23px);
    mask-image: radial-gradient(circle at 75% 20%, black, transparent 65%);
  }
  .hero-inner{position:relative; max-width:920px;}
  .eyebrow{display:inline-flex; align-items:center; gap:8px; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.25); padding:7px 16px; border-radius:999px; font-size:13px; font-weight:600; margin-bottom:26px;}
  .eyebrow .dot{width:7px;height:7px;border-radius:50%; background:var(--gold);}
  .hero h1{font-size:clamp(32px,5vw,54px); font-weight:800; line-height:1.25; margin-bottom:18px;}
  .hero h1 span{color:var(--gold);}
  .hero p{font-size:17px; line-height:1.9; color:rgba(255,255,255,.82); max-width:680px; margin-bottom:36px;}
  .hero-actions{display:flex; gap:14px; flex-wrap:wrap;}

  .stats-strip{
    display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:rgba(255,255,255,.15);
    border-radius:20px; overflow:hidden; margin-top:60px; max-width:920px; position:relative;
    backdrop-filter: blur(6px); border:1px solid rgba(255,255,255,.15);
  }
  .stats-strip .cell{background:rgba(255,255,255,.06); padding:22px 20px;}
  .stats-strip .num{font-size:26px; font-weight:800; color:var(--gold);}
  .stats-strip .lbl{font-size:12.5px; color:rgba(255,255,255,.75); margin-top:4px;}

  .section{padding:70px 6vw;}
  .section-head{max-width:640px; margin-bottom:44px;}
  .section-head .kicker{color:var(--red); font-weight:700; font-size:13px; letter-spacing:.4px; margin-bottom:8px; display:block;}
  .section-head h2{font-size:30px; font-weight:800;}
  .section-head p{color:var(--gray-m); margin-top:10px; line-height:1.8; font-size:15px;}

  .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
  .card{background:var(--white); border-radius:var(--radius); padding:26px; box-shadow:var(--shadow); border:1px solid rgba(0,0,0,.04);}
  .card .ic{width:46px;height:46px;border-radius:12px;background:var(--green-soft); color:var(--green); display:flex;align-items:center;justify-content:center; font-size:20px; margin-bottom:16px;}
  [data-theme="dark"] .card .ic{background:rgba(27,77,62,.35); color:#7fd9bd;}
  .card h3{font-size:16.5px; font-weight:700; margin-bottom:8px;}
  .card p{font-size:13.5px; color:var(--gray-m); line-height:1.8;}

  .journey{display:flex; gap:0; overflow-x:auto; padding-bottom:8px;}
  .jstep{flex:1; min-width:150px; position:relative; padding:0 18px 0 0; text-align:right;}
  .jstep::before{content:''; position:absolute; top:15px; right:-10px; width:100%; height:2px; background:linear-gradient(90deg, var(--gray-m), transparent); z-index:0;}
  .jstep:last-child::before{display:none;}
  .jnum{width:30px;height:30px;border-radius:50%; background:var(--green); color:#fff; display:flex;align-items:center;justify-content:center; font-weight:700; font-size:13px; margin-bottom:12px; position:relative; z-index:1;}
  .jstep h4{font-size:13.5px; font-weight:700; margin-bottom:4px;}
  .jstep span{font-size:12px; color:var(--gray-m);}

  .faq-item{border-bottom:1px solid rgba(0,0,0,.08); padding:18px 0;}
  [data-theme="dark"] .faq-item{border-color:rgba(255,255,255,.08);}
  .faq-item h4{font-size:14.5px; font-weight:700; display:flex; justify-content:space-between; cursor:pointer;}
  .faq-item p{font-size:13.5px; color:var(--gray-m); margin-top:10px; line-height:1.8; display:none;}
  .faq-item.open p{display:block;}

  .footer{background:var(--green); color:rgba(255,255,255,.8); padding:50px 6vw 24px; font-size:13.5px;}
  .footer-grid{display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:30px; margin-bottom:30px;}
  .footer h5{color:#fff; font-size:14px; margin-bottom:14px; font-weight:700;}
  .footer a{display:block; color:rgba(255,255,255,.7); text-decoration:none; margin-bottom:9px;}
  .footer-bottom{border-top:1px solid rgba(255,255,255,.15); padding-top:18px; text-align:center; color:rgba(255,255,255,.55); font-size:12.5px;}

  /* ---------- DASHBOARD ---------- */
  .dash-wrap{padding:26px 4vw; max-width:1400px; margin:0 auto;}
  .dash-head{display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:22px; flex-wrap:wrap; gap:14px;}
  .dash-head h2{font-size:24px; font-weight:800;}
  .dash-head p{color:var(--gray-m); font-size:13.5px; margin-top:4px;}
  .filters{display:flex; gap:10px;}
  .chip{background:var(--white); border:1px solid rgba(0,0,0,.08); padding:8px 16px; border-radius:10px; font-size:13px; font-weight:600; cursor:pointer;}
  [data-theme="dark"] .chip{border-color:rgba(255,255,255,.1);}
  .chip.active{background:var(--green); color:#fff; border-color:var(--green);}

  .kpi-row{display:grid; grid-template-columns:repeat(5,1fr); gap:16px; margin-bottom:22px;}
  .kpi{background:var(--white); border-radius:16px; padding:20px; box-shadow:var(--shadow); border-right:4px solid var(--gold);}
  .kpi.rd{border-right-color:var(--red);}
  .kpi.gr{border-right-color:var(--green-2);}
  .kpi .val{font-size:26px; font-weight:800;}
  .kpi .lbl{font-size:12.5px; color:var(--gray-m); margin-top:4px;}
  .kpi .delta{font-size:11.5px; margin-top:8px; font-weight:700;}
  .delta.up{color:#1B7A4A;} .delta.down{color:var(--red);}

  .dash-grid{display:grid; grid-template-columns:1.3fr 1fr; gap:18px; margin-bottom:18px;}
  .panel{background:var(--white); border-radius:var(--radius); padding:22px; box-shadow:var(--shadow);}
  .panel h3{font-size:15.5px; font-weight:700; margin-bottom:16px; display:flex; justify-content:space-between; align-items:center;}
  .panel h3 small{font-size:11.5px; color:var(--gray-m); font-weight:500;}

  .syria-map{display:grid; grid-template-columns:repeat(5,1fr); gap:8px;}
  .gov-cell{background:var(--gray-l); border-radius:10px; padding:12px 8px; text-align:center; cursor:pointer; transition:.2s; border:1px solid transparent;}
  .gov-cell:hover{border-color:var(--gold); transform:translateY(-2px);}
  .gov-cell .g-name{font-size:11.5px; font-weight:700;}
  .gov-cell .g-val{font-size:15px; font-weight:800; margin-top:4px;}

  .status-list{display:flex; flex-direction:column; gap:12px;}
  .status-row{display:flex; align-items:center; justify-content:space-between; font-size:13.5px;}
  .status-row .bar{flex:1; height:8px; background:var(--gray-l); border-radius:6px; margin:0 12px; overflow:hidden;}
  .status-row .fill{height:100%; border-radius:6px;}

  /* ---------- توضيح خيارات طبيعة الإنتاج (الخطوة 2) ---------- */
  .pn-field{position:relative;}
  .pn-info{display:inline-flex; align-items:center; justify-content:center; width:17px; height:17px; border-radius:50%; background:var(--green-soft); color:var(--green-2); font-size:12px; font-weight:800; cursor:help; margin-inline-start:5px; vertical-align:middle; transition:all .2s;}
  .pn-info:hover, .pn-info:focus{background:var(--green-2); color:#fff; outline:none;}
  [data-theme="dark"] .pn-info{background:rgba(27,77,62,.4); color:var(--gold);}
  [data-theme="dark"] .pn-info:hover, [data-theme="dark"] .pn-info:focus{background:var(--gold); color:var(--green);}
  /* البطاقة تظهر فوق الخانة (وليس أسفلها) حتى لا تحجب قائمة الخيارات المنسدلة */
  .pn-card{position:absolute; bottom:calc(100% + 6px); right:0; z-index:60; width:320px; max-width:90vw;
    background:var(--white); border:1.5px solid var(--green-2); border-radius:14px; padding:13px 15px;
    box-shadow:0 18px 45px -12px rgba(0,0,0,.3); font-size:12px;
    opacity:0; visibility:hidden; transform:translateY(6px); transition:all .22s ease; pointer-events:none;}
  [data-theme="dark"] .pn-card{border-color:var(--gold);}
  .pn-info:hover ~ .pn-card, .pn-info:focus ~ .pn-card,
  .pn-field label:hover .pn-card{opacity:1; visibility:visible; transform:translateY(0);}
  .pn-field:hover > .pn-card{opacity:1; visibility:visible; transform:translateY(0);}
  .pn-card-title{font-weight:800; font-size:12.5px; color:var(--green-2); margin-bottom:8px; padding-bottom:7px; border-bottom:1px dashed rgba(0,0,0,.12);}
  [data-theme="dark"] .pn-card-title{color:var(--gold); border-color:rgba(255,255,255,.12);}
  .pn-row{display:flex; justify-content:space-between; gap:10px; padding:5px 0; line-height:1.6;}
  .pn-row + .pn-row{border-top:1px dashed rgba(0,0,0,.06);}
  [data-theme="dark"] .pn-row + .pn-row{border-color:rgba(255,255,255,.07);}
  .pn-row b{flex-shrink:0; color:var(--ink);}
  .pn-row span{color:var(--gray-m); text-align:left;}
  .pn-card.pn-wide{width:430px; max-height:340px; overflow-y:auto; pointer-events:auto;}
  .pn-table{width:100%; border-collapse:collapse; font-size:11.5px;}
  .pn-table th{background:var(--green-soft); color:var(--green-2); font-weight:800; padding:6px 7px; text-align:right; position:sticky; top:0;}
  [data-theme="dark"] .pn-table th{background:#173B30; color:var(--gold);}
  .pn-table td{padding:6px 7px; border-bottom:1px dashed rgba(0,0,0,.08); line-height:1.65; vertical-align:top; color:var(--gray-m);}
  .pn-table td b{color:var(--ink);}
  [data-theme="dark"] .pn-table td{border-color:rgba(255,255,255,.08);}
  .pn-hint{font-size:11.5px; color:var(--green-2); line-height:1.7; margin-top:6px; min-height:0; font-weight:600;}
  [data-theme="dark"] .pn-hint{color:var(--gold);}

  /* ---------- منصة المتابعة والتحليل (لوحة الوزارة) ---------- */

  /* ---------- زر تحديد الموقع GPS (الخطوة 1) ---------- */
  .addr-row{display:flex; gap:8px; align-items:stretch;}
  .addr-row input{flex:1; min-width:0;}
  .gps-btn{flex-shrink:0; border:1.5px solid var(--green-2); background:var(--green-soft); color:var(--green-2); font-family:var(--serif); font-weight:700; font-size:12.5px; padding:0 16px; border-radius:11px; cursor:pointer; white-space:nowrap; transition:all .2s;}
  .gps-btn:hover{background:var(--green-2); color:#fff;}
  .gps-btn:disabled{opacity:.6; cursor:wait;}
  [data-theme="dark"] .gps-btn{background:rgba(27,77,62,.3); color:var(--gold); border-color:var(--gold);}
  [data-theme="dark"] .gps-btn:hover{background:var(--gold); color:var(--green);}
  .gps-hint{font-size:11.5px; margin-top:6px; line-height:1.7; min-height:16px;}
  .gps-hint.ok{color:var(--green-2);}
  [data-theme="dark"] .gps-hint.ok{color:var(--gold);}
  .gps-hint.err{color:var(--red);}
  @media(max-width:640px){ .addr-row{flex-direction:column;} .gps-btn{padding:11px;} }

  /* ---------- خريطة تحديد الموقع ورسم حدود العقار (GIS) ---------- */
  .gis-box{
    border:1.5px solid rgba(18,59,48,.22); border-radius:var(--radius); overflow:hidden;
    background:var(--white); box-shadow:var(--shadow);
  }
  .gis-toolbar{
    display:flex; gap:8px; flex-wrap:wrap; align-items:center;
    padding:12px 14px; background:var(--gray-l); border-bottom:1.5px solid rgba(18,59,48,.12);
  }
  .gis-search{position:relative; flex:1 1 260px; min-width:200px;}
  .gis-search input{
    width:100%; padding:10px 13px; border-radius:11px; font-family:var(--serif); font-size:13px;
    border:1.5px solid rgba(0,0,0,.14); background:var(--white); color:var(--ink);
  }
  .gis-search input:focus{outline:none; border-color:var(--gold); box-shadow:0 0 0 3.5px rgba(212,168,75,.18);}
  .gis-results{
    display:none; position:absolute; top:calc(100% + 5px); inset-inline:0; z-index:1200;
    background:var(--white); border:1.5px solid rgba(0,0,0,.12); border-radius:12px;
    box-shadow:0 14px 34px -14px rgba(0,0,0,.35); max-height:230px; overflow:auto;
  }
  .gis-results.is-open{display:block;}
  .gis-result{padding:10px 13px; font-size:12.5px; cursor:pointer; line-height:1.6; border-bottom:1px solid rgba(0,0,0,.05);}
  .gis-result:last-child{border-bottom:none;}
  .gis-result:hover{background:var(--green-soft);}
  .gis-result.is-empty{color:var(--gray-m); cursor:default;}
  .gis-result.is-empty:hover{background:transparent;}

  .gis-btn{
    border:1.5px solid rgba(18,59,48,.22); background:var(--white); color:var(--ink);
    padding:9px 15px; border-radius:11px; font-family:var(--serif); font-size:12.5px; font-weight:700;
    cursor:pointer; white-space:nowrap; transition:transform .2s, border-color .2s, background .2s;
  }
  .gis-btn:hover{border-color:var(--gold); background:var(--green-soft); transform:translateY(-1.5px);}
  .gis-btn:active{transform:scale(.96);}
  .gis-btn[disabled]{opacity:.45; cursor:not-allowed; transform:none;}
  .gis-btn.is-draw.is-active{background:var(--gold); border-color:var(--gold); color:var(--green);}
  .gis-btn.is-danger:hover{border-color:var(--red); background:rgba(176,16,48,.08); color:var(--red);}

  .gis-map{height:440px; width:100%; background:var(--gray-l); z-index:1;}
  .gis-box.is-drawing .gis-map{cursor:crosshair;}
  .gis-fallback{
    display:flex; align-items:center; justify-content:center; height:100%;
    text-align:center; font-size:13px; color:var(--gray-m); line-height:2; padding:24px;
  }

  .gis-hintbar{
    padding:10px 14px; font-size:12.5px; line-height:1.7;
    background:var(--green-soft); color:var(--green-2); border-top:1px solid rgba(18,59,48,.1);
  }
  .gis-hintbar.is-ok{background:rgba(27,122,74,.12); color:#146A3F;}
  .gis-hintbar.is-warn{background:rgba(217,123,35,.14); color:#A85D14;}
  .gis-hintbar.is-draw{background:rgba(212,168,75,.18); color:#8a6a12; font-weight:700;}

  .gis-info{
    display:grid; grid-template-columns:repeat(auto-fit, minmax(190px,1fr)); gap:12px;
    padding:14px; background:var(--gray-l); border-top:1.5px solid rgba(18,59,48,.12);
  }
  .gis-info-item{display:flex; flex-direction:column; gap:5px;}
  .gis-info-item .k{font-size:11px; font-weight:700; color:var(--gray-m);}
  .gis-info-item .v{font-size:13px; font-weight:800; color:var(--green-2); direction:ltr; text-align:right;}
  [data-theme="dark"] .gis-info-item .v{color:var(--gold);}
  .gis-manual input{
    flex:1; min-width:0; padding:8px 11px; border-radius:10px; font-family:var(--serif); font-size:12.5px;
    border:1.5px solid rgba(0,0,0,.14); background:var(--white); color:var(--ink);
  }
  .gis-manual .gis-btn{padding:8px 14px; font-size:12px;}

  /* عناصر Leaflet داخل واجهة عربية */
  .leaflet-container{font-family:var(--serif);}
  .leaflet-control-layers{border-radius:11px !important; font-size:12.5px; font-weight:700;}
  .leaflet-control-layers label{margin:3px 0; cursor:pointer;}
  .leaflet-control-attribution{font-size:10px; direction:ltr;}

  @media (max-width:760px){
    .gis-map{height:330px;}
    .gis-toolbar{gap:6px; padding:10px;}
    .gis-btn{padding:8px 12px; font-size:11.5px;}
  }

  /* ---------- الخطوة 5: تكلفة مستقلة لكل منتج ---------- */
  .cost-source-summary{
    display:grid; grid-template-columns:1fr 1fr auto; gap:12px; align-items:stretch;
    padding:14px; margin-bottom:16px; border:1.5px solid rgba(18,59,48,.16);
    border-radius:14px; background:linear-gradient(135deg,rgba(18,59,48,.06),rgba(212,168,75,.08));
  }
  .cost-source-summary > div{display:grid; grid-template-columns:auto auto; column-gap:9px; align-items:center; padding:8px 12px; background:var(--white); border-radius:10px;}
  .cost-source-summary span{font-size:12px; font-weight:800; color:var(--ink);}
  .cost-source-summary b{font-size:20px; color:var(--green-2); direction:ltr;}
  .cost-source-summary small{grid-column:1/-1; color:var(--gray-m); font-size:10.5px;}
  .cost-product-list{display:grid; gap:18px;}
  .cost-product-card{border:1.5px solid rgba(18,59,48,.22); border-radius:16px; overflow:hidden; background:var(--white); box-shadow:0 8px 24px rgba(18,59,48,.06);}
  .cost-product-head{display:flex; justify-content:space-between; gap:14px; align-items:center; padding:14px 16px; background:linear-gradient(135deg,var(--green-soft),rgba(212,168,75,.12)); border-bottom:1px solid rgba(18,59,48,.12);}
  .cost-product-title{display:flex; align-items:center; gap:10px; min-width:0;}
  .cost-product-number{display:grid; place-items:center; width:34px; height:34px; flex:none; border-radius:10px; background:var(--green); color:#fff; font-weight:800;}
  .cost-product-title b{display:block; font-size:14px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:520px;}
  .cost-product-title small{display:block; color:var(--gray-m); margin-top:2px; direction:ltr; text-align:right;}
  .cost-product-meta{display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px;}
  .cost-product-chip{padding:5px 9px; border-radius:999px; background:var(--white); border:1px solid rgba(18,59,48,.14); color:var(--green-2); font-size:10.5px; font-weight:800; white-space:nowrap;}
  .cost-table-scroll{overflow-x:auto;}
  .cost-product-table{width:100%; border-collapse:collapse; font-size:12.5px; min-width:1120px;}
  .cost-product-table th{padding:9px 6px; text-align:right; background:var(--gray-l); border-bottom:1px solid rgba(18,59,48,.12); vertical-align:bottom;}
  .cost-product-table td{padding:5px; vertical-align:middle;}
  .cost-product-table .cost-hs-readonly{min-height:38px; display:flex; align-items:center; direction:ltr; text-align:left; padding:7px 9px; border:1px dashed rgba(18,59,48,.3); border-radius:8px; background:rgba(18,59,48,.04); font-weight:700; color:var(--green-2);}
  .cost-worker-count{display:grid; gap:4px; min-width:125px;}
  .cost-worker-count label{display:flex; align-items:center; justify-content:space-between; gap:6px; font-size:10.5px; font-weight:700; color:var(--gray-m);}
  .cost-worker-count input{width:68px; padding:6px 7px;}
  .cost-unit-select-wrap{display:grid; grid-template-columns:minmax(90px,auto) minmax(150px,1fr); gap:8px; align-items:center; min-width:250px;}
  .cost-unit-select-wrap small{font-size:10.5px; color:var(--gray-m); font-weight:700;}
  .cost-unit-select-wrap .unit-other-input{grid-column:2;}
  .cost-product-actions{display:grid; grid-template-columns:1fr auto 1fr; gap:10px; padding:12px 14px; border-top:1px solid rgba(18,59,48,.1); align-items:center;}
  .cost-product-actions .add-row-btn{margin:0; padding:11px 14px; justify-content:center;}
  .cost-product-grand{padding:9px 14px; border-radius:10px; background:var(--green-soft); color:var(--green-2); font-size:11.5px; font-weight:700; text-align:center; white-space:nowrap;}
  .cost-product-grand strong{display:block; margin-top:2px; direction:ltr; font-size:15px;}
  .cost-material-limit{display:block; margin-top:5px; color:var(--gray-m); font-size:10.5px; font-weight:700; text-align:center;}
  .cost-product-total-row{background:var(--green-soft); font-weight:800;}
  .cost-product-total-row td{border-top:2px solid var(--green); padding:9px 7px;}
  .cost-overall-total{display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:18px; padding:18px 20px; border-radius:15px; background:linear-gradient(135deg,var(--green),var(--green-2)); color:#fff;}
  .cost-overall-total > div:first-child span{display:block; font-size:14px; font-weight:800;}
  .cost-overall-total > div:first-child small{display:block; opacity:.76; margin-top:3px;}
  .cost-overall-total .cost-merged-cell{min-width:210px; padding:9px 12px; border-radius:11px; background:rgba(255,255,255,.13);}
  .cost-overall-total #grandTotalCost{font-size:20px; font-weight:800; direction:ltr; font-variant-numeric:tabular-nums;}
  [data-theme="dark"] .cost-product-card,[data-theme="dark"] .cost-source-summary > div{background:var(--white);}
  [data-theme="dark"] .cost-product-head{background:linear-gradient(135deg,rgba(27,77,62,.42),rgba(212,168,75,.11));}
  @media(max-width:760px){
    .cost-source-summary{grid-template-columns:1fr;}
    .cost-product-head,.cost-overall-total{align-items:flex-start; flex-direction:column;}
    .cost-product-meta{justify-content:flex-start;}
    .cost-product-actions{grid-template-columns:1fr;}
    .cost-overall-total .cost-merged-cell{width:100%; min-width:0;}
  }

  /* ---- الخانات المدموجة والمحسوبة في جدول التكلفة ---- */
  /* خانة قيمة محسوبة (سطر إجمالي المواد الأولية) — للعرض فقط */
  .cost-calc-cell{
    display:flex; align-items:center; justify-content:space-between; gap:8px;
    padding:9px 12px; border-radius:10px; min-height:40px;
    background:rgba(212,168,75,.14); border:1.5px solid rgba(212,168,75,.45);
  }
  .cost-calc-value{font-weight:800; font-size:14px; color:var(--green-2); direction:ltr; font-variant-numeric:tabular-nums;}
  /* خانة تعكس وحدة المنتج من سطر المادة الأولية — عرض فقط */
  .cost-calc-cell.is-mirror{
    background:rgba(18,59,48,.06); border:1.5px dashed rgba(18,59,48,.28); justify-content:center;
  }
  [data-theme="dark"] .cost-calc-cell.is-mirror{background:rgba(255,255,255,.05); border-color:rgba(255,255,255,.2);}
  .cost-unit-mirror{font-weight:700; font-size:13px; color:var(--green-2);}
  [data-theme="dark"] .cost-unit-mirror{color:var(--gold);}
  [data-theme="dark"] .cost-calc-value{color:var(--gold);}
  .cost-calc-unit{
    font-size:11px; font-weight:700; color:var(--gray-m); white-space:nowrap;
    background:rgba(0,0,0,.05); padding:3px 9px; border-radius:999px;
  }
  [data-theme="dark"] .cost-calc-unit{background:rgba(255,255,255,.08);}

  /* خانة إدخال مدموجة عبر ثلاثة أعمدة (الأجور والتكاليف غير المباشرة) */
  .cost-merged-cell{display:flex; align-items:center; gap:8px;}
  .cost-merged-cell input{flex:1; min-width:0;}
  .cost-merged-cell.is-total{justify-content:space-between;}
  .cost-merged-cell.is-total #grandTotalCost{
    font-size:17px; font-weight:800; direction:ltr; font-variant-numeric:tabular-nums;
  }

  .cost-layout{display:grid; grid-template-columns:1fr; gap:22px; align-items:start;}
  .cost-note{background:var(--white); border:1.5px solid rgba(27,77,62,.25); border-radius:var(--radius); padding:26px 28px; font-size:13px; width:100%;}
  .cost-note > h4{font-size:18px; text-align:center;}
  .cost-note > .cn-sub{text-align:center; font-size:13px; margin-bottom:16px;}
  .cn-toggle{max-width:340px; display:block; margin:0 auto 6px; font-size:13.5px; padding:12px;}
  .cn-body.open{display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:22px; margin-top:16px;}
  .cn-body .cn-sec{margin-bottom:0; background:var(--gray-l); border-radius:14px; padding:16px;}
  [data-theme="dark"] .cn-body .cn-sec{background:rgba(255,255,255,.04);}
  .cn-body .cn-sec .cn-formula, .cn-body .cn-sec .cn-roles li, .cn-body .cn-sec details.cn-acc summary{background:var(--white);}
  [data-theme="dark"] .cn-body .cn-sec .cn-formula, [data-theme="dark"] .cn-body .cn-sec .cn-roles li, [data-theme="dark"] .cn-body .cn-sec details.cn-acc summary{background:rgba(255,255,255,.06);}
  @media(max-width:1100px){ .cn-body.open{grid-template-columns:1fr;} }
  [data-theme="dark"] .cost-note{border-color:rgba(201,162,39,.3);}
  .cost-note h4{font-size:14.5px; font-weight:800; line-height:1.7; margin-bottom:4px; color:var(--green-2);}
  [data-theme="dark"] .cost-note h4{color:var(--gold);}
  .cost-note .cn-sub{font-size:11.5px; color:var(--gray-m); line-height:1.8; margin-bottom:12px;}
  .cn-toggle{width:100%; border:none; cursor:pointer; background:var(--green); color:#fff; font-family:var(--serif); font-weight:700; font-size:12.5px; padding:10px; border-radius:11px; margin-bottom:12px;}
  .cn-toggle:hover{background:var(--green-2);}
  .cn-body{display:none;}
  .cn-body.open{display:block; animation:fade .3s ease;}
  .cn-sec{margin-bottom:16px;}
  .cn-sec h5{font-size:13px; font-weight:800; margin-bottom:8px; display:flex; align-items:center; gap:7px;}
  .cn-sec h5 .cn-ico{font-size:17px;}
  .cn-sec p{line-height:1.85; color:var(--gray-m); margin-bottom:8px;}
  .cn-formula{background:var(--gray-l); border-radius:9px; padding:8px 11px; font-weight:700; text-align:center; margin-bottom:9px; font-size:12px;}
  .cn-table{width:100%; border-collapse:collapse; font-size:11.5px; margin-bottom:9px;}
  .cn-table th{background:var(--green-soft); padding:6px 5px; text-align:right; font-weight:700;}
  [data-theme="dark"] .cn-table th{background:rgba(27,77,62,.35);}
  .cn-table td{padding:6px 5px; border-bottom:1px dashed rgba(0,0,0,.08); line-height:1.6; vertical-align:top;}
  [data-theme="dark"] .cn-table td{border-color:rgba(255,255,255,.08);}
  .cn-callout{background:linear-gradient(135deg, rgba(201,162,39,.14), rgba(201,162,39,.05)); border:1px dashed var(--gold); border-radius:11px; padding:11px 13px; line-height:2; margin-bottom:6px;}
  .cn-callout b.cn-target{display:block; margin-top:5px; color:var(--green-2); font-size:12.5px;}
  [data-theme="dark"] .cn-callout b.cn-target{color:var(--gold);}
  .cn-roles{list-style:none; padding:0; margin-bottom:9px;}
  .cn-roles li{background:var(--gray-l); border-radius:9px; padding:7px 11px; margin-bottom:6px; line-height:1.7;}
  details.cn-acc{border:1px solid rgba(0,0,0,.08); border-radius:10px; margin-bottom:6px; overflow:hidden;}
  [data-theme="dark"] details.cn-acc{border-color:rgba(255,255,255,.1);}
  details.cn-acc summary{cursor:pointer; padding:8px 11px; font-weight:700; font-size:12px; background:var(--gray-l); list-style:none;}
  details.cn-acc summary::-webkit-details-marker{display:none;}
  details.cn-acc[open] summary{background:var(--green-soft);}
  [data-theme="dark"] details.cn-acc[open] summary{background:rgba(27,77,62,.35);}
  details.cn-acc .cn-acc-body{padding:8px 11px; line-height:1.85; color:var(--gray-m);}

  .sw-list{list-style:none; font-size:13.5px; display:flex; flex-direction:column; gap:10px;}
  .sw-list li{display:flex; align-items:flex-start; gap:8px; line-height:1.7;}
  .sw-list li::before{content:'●'; font-size:8px; margin-top:6px;}

  canvas{max-height:260px;}

  /* ---------- WIZARD ---------- */
  .wiz-wrap{max-width:min(1900px, 98.5vw); margin:0 auto; padding:30px 1vw 90px;}
  .wiz-head{display:flex; justify-content:space-between; align-items:center; margin-bottom:26px; flex-wrap:wrap; gap:10px;}
  .wiz-head h2{font-size:22px; font-weight:800;}
  .autosave{font-size:12px; color:var(--gray-m); display:flex; align-items:center; gap:6px;}
  .autosave .pulse{width:7px; height:7px; border-radius:50%; background:#1B7A4A; box-shadow:0 0 0 rgba(27,122,74,.5); animation:pulse 2s infinite;}
  @keyframes pulse{0%{box-shadow:0 0 0 0 rgba(27,122,74,.4);} 70%{box-shadow:0 0 0 8px rgba(27,122,74,0);} 100%{box-shadow:0 0 0 0 rgba(27,122,74,0);}}

  /* ===== شريط التقدم المحسّن ===== */
  .progress-track{display:flex; align-items:flex-start; margin-bottom:36px; position:relative; background:var(--white); border-radius:18px; padding:20px 16px 16px; box-shadow:var(--shadow); border:1px solid rgba(0,0,0,.04);}
  [data-theme="dark"] .progress-track{background:rgba(16,22,19,.8); border-color:rgba(255,255,255,.06);}
  .progress-step{flex:1; text-align:center; position:relative; cursor:pointer; padding:0 2px;}
  .progress-step .bubble{
    width:42px; height:42px; border-radius:50%; background:var(--gray-l); border:2.5px solid rgba(0,0,0,.08);
    display:flex; align-items:center; justify-content:center; font-weight:800; font-size:15px; margin:0 auto 8px;
    color:var(--gray-m); position:relative; z-index:2; transition:all .4s cubic-bezier(.34,1.56,.64,1);
  }
  .progress-step .bubble::after{
    content:''; position:absolute; inset:-5px; border-radius:50%; background:transparent;
    transition:all .4s cubic-bezier(.34,1.56,.64,1);
  }
  .progress-step .line{position:absolute; top:21px; right:calc(50% + 24px); width:calc(100% - 48px); height:3px; background:rgba(0,0,0,.06); border-radius:3px; z-index:1; overflow:hidden;}
  .progress-step .line::after{content:''; position:absolute; inset:0; background:var(--green); border-radius:3px; transform:scaleX(0); transform-origin:right; transition:transform .5s cubic-bezier(.4,0,.2,1);}
  [data-theme="dark"] .progress-step .line{background:rgba(255,255,255,.08);}
  .progress-step:first-child .line{display:none;}
  .progress-step span.lbl{font-size:11px; color:var(--gray-m); font-weight:600; display:block; transition:all .3s; line-height:1.4; max-width:90px; margin:0 auto;}
  .progress-step.done .bubble{background:var(--green); border-color:var(--green); color:#fff; transform:scale(1.05); box-shadow:0 4px 14px rgba(27,77,62,.35);}
  .progress-step.done .line::after{transform:scaleX(1); transform-origin:right;}
  .progress-step.done span.lbl{color:var(--green-2); font-weight:700;}
  [data-theme="dark"] .progress-step.done span.lbl{color:#7fd9bd;}
  .progress-step.current .bubble{
    background:linear-gradient(135deg, var(--gold), #e6c05a); border-color:var(--gold);
    color:var(--green); transform:scale(1.18); box-shadow:0 0 0 6px rgba(212,168,75,.2), 0 6px 20px rgba(212,168,75,.3);
    animation:bubblePulse 2s ease-in-out infinite;
  }
  .progress-step.current .bubble::after{inset:-8px; background:rgba(212,168,75,.08); animation:ripple 2s ease-in-out infinite;}
  .progress-step.current span.lbl{color:var(--ink); font-weight:800; font-size:11.5px;}
  .progress-step:hover .bubble{transform:scale(1.08); box-shadow:0 4px 12px rgba(0,0,0,.12);}
  .progress-step.current:hover .bubble{transform:scale(1.22); box-shadow:0 0 0 8px rgba(212,168,75,.25), 0 6px 20px rgba(212,168,75,.35);}
  @keyframes bubblePulse{0%,100%{box-shadow:0 0 0 6px rgba(212,168,75,.2), 0 6px 20px rgba(212,168,75,.3);} 50%{box-shadow:0 0 0 10px rgba(212,168,75,.1), 0 6px 24px rgba(212,168,75,.4);}}
  @keyframes ripple{0%,100%{transform:scale(1); opacity:.6;} 50%{transform:scale(1.15); opacity:0;}}

  /* ===== بطاقة الخطوة ===== */
  .wiz-panel{
    background:var(--white); border-radius:22px; padding:36px 32px; box-shadow:var(--shadow);
    border:1px solid rgba(0,0,0,.04); position:relative; overflow:hidden;
    animation:panelSlideIn .55s cubic-bezier(.22,1,.36,1);
  }
  [data-theme="dark"] .wiz-panel{border-color:rgba(255,255,255,.05);}
  .wiz-panel::before{
    content:''; position:absolute; top:0; right:0; left:0; height:4px;
    background:linear-gradient(90deg, var(--gold), var(--green-2), var(--gold));
    border-radius:22px 22px 0 0; opacity:.7;
  }
  .wiz-panel h3{font-size:19px; font-weight:800; margin-bottom:6px; display:flex; align-items:center; gap:8px;}
  .wiz-panel .wiz-sub{font-size:13px; color:var(--gray-m); margin-bottom:26px; line-height:1.7;}
  @keyframes panelSlideIn{from{opacity:0; transform:translateY(20px) scale(.99);} to{opacity:1; transform:none;}}
  @keyframes panelSlideInRight{from{opacity:0; transform:translateX(20px) scale(.99);} to{opacity:1; transform:none;}}

  /* ===== حقول الإدخال ===== */
  .field-grid{display:grid; grid-template-columns:repeat(6,1fr); gap:20px;}
  .field{display:flex; flex-direction:column; gap:7px; grid-column:span 3;}
  .field.full{grid-column:span 6;}
  .field.third{grid-column:span 2;}
  .field label{font-size:13px; font-weight:700; display:flex; align-items:center; gap:4px;}
  .field label .req{color:var(--red); margin-right:2px;}
  .field .hint{font-size:11.5px; color:var(--gray-m); margin-top:-3px;}
  .field input, .field select, .field textarea{
    font-family:var(--serif); font-size:14px; padding:12px 14px; border-radius:12px;
    border:1.5px solid rgba(0,0,0,.10); background:var(--gray-l); color:var(--ink); outline:none; transition:all .25s ease;
  }
  [data-theme="dark"] .field input, [data-theme="dark"] .field select, [data-theme="dark"] .field textarea{border-color:rgba(255,255,255,.10);}
  .field input:focus, .field select:focus, .field textarea:focus{
    border-color:var(--gold); background:var(--white);
    box-shadow:0 0 0 3px rgba(212,168,75,.15), 0 2px 8px rgba(0,0,0,.06);
  }
  .field input:hover, .field select:hover, .field textarea:hover{border-color:rgba(0,0,0,.18);}
  .field.error input, .field.error select{border-color:var(--red); background:#FCE8E9; animation:fieldShake .4s ease;}
  .field .err-msg{font-size:11.5px; color:var(--red); display:none;}
  .field.error .err-msg{display:block;}
  @keyframes fieldShake{0%,100%{transform:translateX(0);} 20%,60%{transform:translateX(-4px);} 40%,80%{transform:translateX(4px);}}

  /* ===== خيارات الاختيار التلقسيطي ===== */
  .seg{display:flex; gap:8px; flex-wrap:wrap;}
  .seg-opt{
    flex:1; min-width:110px; text-align:center; padding:12px 10px; border-radius:12px;
    border:2px solid rgba(0,0,0,.08); background:var(--gray-l); font-size:13px; font-weight:600;
    cursor:pointer; transition:all .3s cubic-bezier(.34,1.56,.64,1); position:relative; overflow:hidden;
  }
  [data-theme="dark"] .seg-opt{border-color:rgba(255,255,255,.08);}
  .seg-opt::before{content:''; position:absolute; inset:0; background:linear-gradient(135deg, rgba(27,77,62,.08), transparent); opacity:0; transition:opacity .3s;}
  .seg-opt:hover{border-color:rgba(0,0,0,.15); transform:translateY(-1px); box-shadow:0 3px 8px rgba(0,0,0,.08);}
  .seg-opt:hover::before{opacity:1;}
  .seg-opt.selected{
    background:linear-gradient(135deg, var(--green), var(--green-2)); color:#fff; border-color:var(--green);
    transform:scale(1.03); box-shadow:0 4px 14px rgba(27,77,62,.3);
  }
  .seg-opt.selected::before{opacity:0;}

  /* ===== مربع الحساب ===== */
  .calc-box{grid-column:1/-1; background:linear-gradient(135deg, var(--green-soft), rgba(231,239,236,.5)); border-radius:16px; padding:20px 24px; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px; border:1px solid rgba(27,77,62,.1);}
  [data-theme="dark"] .calc-box{background:rgba(27,77,62,.2); border-color:rgba(127,217,189,.15);}
  .calc-box .cval{font-size:30px; font-weight:800; color:var(--green-2); transition:all .3s;}
  [data-theme="dark"] .calc-box .cval{color:#7fd9bd;}
  .calc-box .cbar{flex:1; min-width:180px; height:12px; background:rgba(0,0,0,.06); border-radius:8px; overflow:hidden;}
  .calc-box .cbar .fill{height:100%; background:linear-gradient(90deg, var(--gold), var(--green-2)); border-radius:8px; transition:width .5s cubic-bezier(.4,0,.2,1);}

  /* ===== البطاقات المتكررة ===== */
  .repeat-list{grid-column:1/-1; display:flex; flex-direction:column; gap:16px;}
  .repeat-card{
    border:1.5px solid rgba(0,0,0,.08); border-radius:16px; padding:20px; position:relative;
    background:linear-gradient(180deg, var(--white) 0%, var(--gray-l) 100%);
    transition:all .3s cubic-bezier(.4,0,.2,1);
  }
  [data-theme="dark"] .repeat-card{border-color:rgba(255,255,255,.08); background:linear-gradient(180deg, rgba(16,22,19,.6) 0%, rgba(16,22,19,.3) 100%);}
  .repeat-card .rc-head{display:flex; justify-content:space-between; align-items:center; margin-bottom:14px; padding-bottom:10px; border-bottom:1px dashed rgba(0,0,0,.08);}
  .repeat-card .rc-head b{font-size:14px; display:flex; align-items:center; gap:6px;}
  .rc-remove{
    background:none; border:1.5px solid transparent; color:var(--red); font-size:12.5px; font-weight:700;
    cursor:pointer; padding:5px 12px; border-radius:8px; transition:all .2s;
  }
  .rc-remove:hover{background:rgba(176,16,48,.08); border-color:rgba(176,16,48,.2);}
  .add-row-btn{
    grid-column:1/-1; border:2px dashed var(--green-2); background:transparent; color:var(--green-2);
    padding:14px; border-radius:14px; font-weight:700; font-size:14px; cursor:pointer; font-family:var(--serif);
    transition:all .3s cubic-bezier(.34,1.56,.64,1); position:relative; overflow:hidden;
  }
  [data-theme="dark"] .add-row-btn{color:#7fd9bd; border-color:#7fd9bd;}
  .add-row-btn:hover{
    background:var(--green); color:#fff; border-color:var(--green);
    transform:scale(1.02); box-shadow:0 6px 20px rgba(27,77,62,.2);
  }

  /* ===== أزرار التنقل ===== */
  .wiz-nav{display:flex; justify-content:space-between; margin-top:30px; gap:12px;}
  .btn-outline{
    background:transparent; border:2px solid rgba(0,0,0,.12); color:var(--ink); padding:13px 28px;
    border-radius:14px; font-weight:700; font-family:var(--serif); cursor:pointer; font-size:14px;
    transition:all .3s cubic-bezier(.34,1.56,.64,1); position:relative; overflow:hidden;
  }
  .btn-outline:hover{border-color:rgba(0,0,0,.25); transform:translateY(-1px); box-shadow:0 4px 12px rgba(0,0,0,.08);}
  .btn-outline:active{transform:translateY(0) scale(.98);}
  [data-theme="dark"] .btn-outline{border-color:rgba(255,255,255,.15);}
  .btn-primary{
    background:linear-gradient(135deg, var(--gold), #c9961a); color:var(--green); border:none; padding:13px 32px;
    border-radius:14px; font-weight:800; font-family:var(--serif); cursor:pointer; font-size:14px;
    transition:all .3s cubic-bezier(.34,1.56,.64,1); position:relative; overflow:hidden;
  }
  .btn-primary::before{content:''; position:absolute; inset:0; background:linear-gradient(135deg, rgba(255,255,255,.2), transparent); opacity:0; transition:opacity .3s;}
  .btn-primary:hover{transform:translateY(-2px); box-shadow:0 6px 20px rgba(201,162,39,.35); filter:brightness(1.05);}
  .btn-primary:hover::before{opacity:1;}
  .btn-primary:active{transform:translateY(0) scale(.97); box-shadow:0 2px 8px rgba(201,162,39,.2);}
  .btn-submit{
    background:linear-gradient(135deg, var(--green), var(--green-2)); color:#fff; border:none; padding:14px 36px;
    border-radius:14px; font-weight:800; font-family:var(--serif); cursor:pointer; font-size:15px;
    transition:all .3s cubic-bezier(.34,1.56,.64,1); box-shadow:0 4px 14px rgba(27,77,62,.25);
  }
  .btn-submit:hover{transform:translateY(-2px) scale(1.02); box-shadow:0 8px 24px rgba(27,77,62,.35); filter:brightness(1.08);}
  .btn-submit:active{transform:translateY(0) scale(.97);}

  /* ---------- بوابة الدخول + التدقيق الإداري ---------- */
  .adv-chk{display:flex; align-items:center; gap:9px; font-size:13px; font-weight:600; background:var(--gray-l); padding:9px 12px; border-radius:10px; cursor:pointer;}
  .adv-chk input{width:16px; height:16px; accent-color:var(--green);}
  .exc-item{background:var(--gray-l); border-radius:12px; padding:12px 14px; margin-bottom:10px; border-right:3px solid var(--gold);}
  .exc-item .exc-code{font-weight:800; direction:ltr; display:inline-block; letter-spacing:.5px; font-size:13px;}
  .exc-item .exc-reason{font-size:12.5px; color:var(--gray-m); line-height:1.8; margin:6px 0;}
  .exc-item .exc-meta{font-size:11.5px; color:var(--gray-m);}
  .exc-badge{display:inline-block; font-size:11px; font-weight:800; padding:3px 10px; border-radius:999px;}
  .exc-badge.pending{background:rgba(212,168,75,.18); color:#8a6a1c;}
  .exc-badge.approved{background:rgba(27,122,74,.15); color:#1B7A4A;}
  .exc-badge.rejected{background:rgba(176,16,48,.12); color:var(--red);}
  .exc-badge.consumed{background:rgba(0,0,0,.08); color:var(--gray-m);}
  [data-theme="dark"] .exc-badge.pending{color:#e8c877;}
  [data-theme="dark"] .exc-badge.consumed{background:rgba(255,255,255,.1);}
  .exc-actions{display:flex; gap:8px; margin-top:8px;}
  .exc-actions button{border:none; border-radius:9px; padding:7px 14px; font-family:var(--serif); font-weight:700; font-size:12px; cursor:pointer;}
  .exc-approve{background:var(--green); color:#fff;}
  .exc-reject{background:transparent; border:1.5px solid var(--red) !important; color:var(--red);}
  .adv-log-item{font-size:12px; padding:8px 12px; border-radius:10px; background:var(--gray-l); margin-bottom:6px; line-height:1.7;}
  @media (max-width:900px){ .adv-grid{grid-template-columns:1fr !important;} }
  .btn-submit{background:var(--red); color:#fff; border:none; padding:11px 26px; border-radius:12px; font-weight:700; font-family:var(--serif); cursor:pointer; font-size:14px;}

  .toast{position:fixed; bottom:26px; left:50%; transform:translateX(-50%) translateY(120%); background:var(--green); color:#fff; padding:14px 26px; border-radius:14px; font-size:13.5px; font-weight:700; box-shadow:var(--shadow); z-index:200; transition:.35s; display:flex; align-items:center; gap:10px;}
  .toast.show{transform:translateX(-50%) translateY(0);}

  /* شاشة تأكيد الإرسال */
  .confirm-overlay{position:fixed; inset:0; background:rgba(13,30,25,.55); backdrop-filter:blur(4px); display:none; align-items:center; justify-content:center; z-index:300; padding:20px;}
  .confirm-overlay.show{display:flex; animation:fade .3s ease;}
  .confirm-card{background:var(--white); color:var(--ink); border-radius:22px; padding:38px 34px; max-width:480px; width:100%; text-align:center; box-shadow:0 30px 80px -20px rgba(0,0,0,.4);}
  .confirm-icon{font-size:46px; margin-bottom:10px;}
  .confirm-card h3{font-size:22px; font-weight:800; margin-bottom:8px;}
  .confirm-sub{font-size:13.5px; color:var(--gray-m); line-height:1.8; margin-bottom:22px;}
  .track-box{background:var(--green-soft); border:1.5px dashed var(--green-2); border-radius:16px; padding:18px; margin-bottom:14px;}
  [data-theme="dark"] .track-box{background:rgba(27,77,62,.25);}
  .track-lbl{font-size:12px; font-weight:700; color:var(--green-2); display:block; margin-bottom:6px;}
  [data-theme="dark"] .track-lbl{color:var(--gold);}
  .track-num{font-size:26px; font-weight:800; letter-spacing:1px; color:var(--green-2); margin-bottom:12px; direction:ltr;}
  [data-theme="dark"] .track-num{color:var(--gold);}
  .track-meta{font-size:12.5px; color:var(--gray-m); margin-bottom:14px;}
  .track-summary{display:flex; flex-wrap:wrap; gap:8px; justify-content:center; margin-bottom:20px;}
  .track-summary span{background:var(--gray-l); border-radius:999px; padding:6px 13px; font-size:12px; font-weight:600;}
  .confirm-close{width:100%;}
  @keyframes pulseBtn{0%,100%{transform:scale(1);} 50%{transform:scale(1.06); box-shadow:0 0 0 6px rgba(201,162,39,.25);}}

  @media(max-width:900px){
    .grid-3, .footer-grid, .kpi-row, .dash-grid, .sw-grid, .field-grid{grid-template-columns:1fr;}
    .field, .field.third, .field.full{grid-column:1;}
    .topbar{flex-wrap:wrap; padding:12px 16px; gap:10px;}
    .brand{font-size:15px;}
    .nav-tabs{display:flex; order:3; width:100%; overflow-x:auto;}
    .nav-tabs button{flex:1 0 auto; padding:8px 12px; font-size:12.5px;}
    .progress-step span.lbl{display:none;}
    .progress-track{padding:14px 10px 10px; gap:4px;}
    .progress-step .bubble{width:34px; height:34px; font-size:13px;}
    .progress-step .line{top:17px; right:calc(50% + 20px); width:calc(100% - 40px);}
    .wiz-panel{padding:24px 18px;}
    .wiz-nav{flex-direction:row-reverse; gap:8px;}
    .wiz-nav .btn-primary, .wiz-nav .btn-outline{flex:1; text-align:center;}
  }
.cost-input{width:100%;border:1px solid rgba(0,0,0,.12);border-radius:8px;padding:7px 10px;font-family:var(--serif);font-size:13px;background:var(--gray-l);color:var(--ink);outline:none;transition:.2s;}
.cost-input:focus{border-color:var(--gold);}
.cost-select{width:100%;border:1px solid rgba(0,0,0,.12);border-radius:8px;padding:7px 10px;font-family:var(--serif);font-size:13px;background:var(--gray-l);color:var(--ink);outline:none;transition:.2s;}
.cost-select:focus{border-color:var(--gold);}

  /* ==================== لوحة الوزارة: منصة التحليل الاستراتيجي ==================== */

  /* ==================== الخريطة الصناعية الوطنية ==================== */
  .nim-map-box{position:relative; background:var(--gray-l); border-radius:16px; padding:8px; overflow:hidden;}
  [data-theme="dark"] .nim-map-box{background:rgba(255,255,255,.04);}
  #nimSvg{width:100%; height:auto; display:block; font-family:var(--serif);}
  .nim-gov{stroke:#fff; stroke-width:1.4; cursor:pointer; transition:filter .15s, opacity .2s;}
  [data-theme="dark"] .nim-gov{stroke:#101613;}
  .nim-gov:hover{filter:brightness(1.12); stroke-width:2;}
  .nim-gov.dim{opacity:.22; pointer-events:none;}
  .nim-bub{stroke:#fff; stroke-width:1.5; cursor:pointer; transition:filter .15s;}
  .nim-bub:hover{filter:brightness(1.15);}
  .nim-lbl{font-size:11px; font-weight:700; fill:var(--ink); pointer-events:none; paint-order:stroke; stroke:var(--white); stroke-width:2.5px;}
  [data-theme="dark"] .nim-lbl{stroke:#101613;}
  .nim-val{font-size:9.5px; font-weight:800; fill:var(--green-2);}
  [data-theme="dark"] .nim-val{fill:var(--gold);}
  .nim-tip{position:absolute; z-index:20; display:none; background:var(--white); color:var(--ink); border:1.5px solid var(--green-2); border-radius:12px; padding:9px 12px; font-size:11.5px; line-height:1.8; box-shadow:0 14px 34px -10px rgba(0,0,0,.35); pointer-events:none; max-width:230px;}
  .nl-item{display:inline-flex; align-items:center; gap:5px; font-size:10.5px; color:var(--gray-m); font-weight:700;}
  .nl-item i{width:13px; height:13px; border-radius:4px; display:inline-block;}
  .nl-grad{flex:1; min-width:90px; height:8px; border-radius:999px; background:linear-gradient(90deg, rgba(27,77,62,.12), rgba(27,77,62,1));}


  /* ---------- تلميح وحدة القياس (التكلفة الصناعية) ---------- */
  .unit-tip{position:fixed; z-index:99999; max-width:340px; background:var(--ink,#1D2320); color:#fff;
    border-radius:12px; padding:12px 14px; font-size:12.5px; line-height:1.9; box-shadow:0 12px 30px rgba(0,0,0,.25);
    white-space:pre-line; display:none; direction:rtl; text-align:right; pointer-events:none;}
  .unit-tip b{color:#9FD8B4;}

  /* ==================== FX ENHANCEMENT LAYER (motion only — no identity changes) ==================== */
  :root{ --fx-ease:cubic-bezier(.22,1,.36,1); }

  /* شريط تقدم التمرير */
  #fxProgress{position:fixed; top:0; right:0; height:3px; width:0; background:var(--gold); z-index:400; transition:width .12s linear; pointer-events:none;}

  /* الشريط العلوي: انكماش ناعم + زجاجية عند التمرير */
  .topbar{transition:padding .35s var(--fx-ease), box-shadow .35s var(--fx-ease);}
  .topbar.fx-scrolled{padding-top:8px; padding-bottom:8px; box-shadow:0 10px 28px rgba(0,0,0,.22); backdrop-filter:blur(10px) saturate(1.15);}
  .nav-tabs button{transition:opacity .25s var(--fx-ease), transform .25s var(--fx-ease), background-color .25s var(--fx-ease), color .25s var(--fx-ease);}
  .nav-tabs button:hover{opacity:1; transform:translateY(-1px);}
  .nav-tabs button:active{transform:scale(.95);}

  /* انتقالات الصفحات */
  .page.active{animation:fxPageIn .5s var(--fx-ease);}
  @keyframes fxPageIn{from{opacity:0; transform:translateY(14px); filter:blur(5px);} to{opacity:1; transform:none; filter:none;}}

  /* أجواء الواجهة الرئيسية: توهج متحرك خافت خلف المحتوى */
  .hero{position:relative; overflow:hidden;}
  .hero .fx-glow{position:absolute; width:58vmax; height:58vmax; border-radius:50%; filter:blur(90px); opacity:.13; background:radial-gradient(circle, var(--gold), transparent 62%); top:-28vmax; right:-14vmax; animation:fxFloat 20s ease-in-out infinite alternate; pointer-events:none;}
  .hero .fx-glow.g2{background:radial-gradient(circle, #ffffff, transparent 62%); top:auto; bottom:-34vmax; right:auto; left:-18vmax; opacity:.07; animation-duration:28s;}
  @keyframes fxFloat{from{transform:translate3d(0,0,0) scale(1);} to{transform:translate3d(-5%,4%,0) scale(1.07);}}
  .hero-inner{position:relative; z-index:1; transition:transform .3s var(--fx-ease); will-change:transform;}

  /* الظهور عند التمرير */
  .fx-reveal{opacity:0; transform:translateY(20px); transition:opacity .6s var(--fx-ease), transform .6s var(--fx-ease); will-change:opacity,transform;}
  .fx-reveal.fx-in{opacity:1; transform:none;}

  /* البطاقات: رفع ناعم وظل دقيق */
  .card,.kpi,.goal-card,.formula-card,.md-kpi,.panel{transition:transform .3s var(--fx-ease), box-shadow .3s var(--fx-ease);}
  .card:hover,.kpi:hover,.goal-card:hover,.formula-card:hover{transform:translateY(-4px) scale(1.012); box-shadow:0 16px 36px rgba(13,30,25,.14);}
  .repeat-card{transition:transform .3s var(--fx-ease), box-shadow .3s var(--fx-ease); animation:fxCardIn .5s var(--fx-ease);}
  .repeat-card:hover{transform:translateY(-2px); box-shadow:0 10px 26px rgba(13,30,25,.10);}
  @keyframes fxCardIn{from{opacity:0; transform:translateY(16px) scale(.985);} to{opacity:1; transform:none;}}

  /* الأزرار: حركة، ضغط، تموّج، تركيز */
  .btn-primary,.btn-outline,.btn-ghost,.add-row-btn,.mm-btn,.icon-btn,.chip,.rc-remove{transition:transform .22s var(--fx-ease), box-shadow .22s var(--fx-ease), filter .22s var(--fx-ease), background-color .22s var(--fx-ease); position:relative; overflow:hidden;}
  .btn-primary:hover,.btn-outline:hover,.btn-ghost:hover,.add-row-btn:hover,.mm-btn:hover{transform:translateY(-1.5px); box-shadow:0 8px 20px rgba(13,30,25,.16); filter:brightness(1.04);}
  .btn-primary:active,.btn-outline:active,.btn-ghost:active,.add-row-btn:active,.mm-btn:active,.icon-btn:active,.chip:active{transform:scale(.96);}
  .icon-btn:hover,.chip:hover{transform:translateY(-1px);}
  button:focus-visible, select:focus-visible{outline:2px solid var(--gold); outline-offset:2px; border-radius:10px;}
  .fx-ripple{position:absolute; border-radius:50%; transform:scale(0); background:currentColor; opacity:.22; animation:fxRipple .55s ease-out forwards; pointer-events:none;}
  @keyframes fxRipple{to{transform:scale(2.7); opacity:0;}}

  /* الحقول: تركيز ناعم */
  input,select,textarea{transition:border-color .25s var(--fx-ease), box-shadow .25s var(--fx-ease), background-color .25s var(--fx-ease);}
  input:focus,select:focus,textarea:focus{box-shadow:0 0 0 3px rgba(190,155,60,.22);}
  @supports (color: color-mix(in srgb, red 50%, blue)){
    input:focus,select:focus,textarea:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--gold) 26%, transparent);}
  }

  /* النوافذ المنبثقة والتنبيهات */
  .confirm-overlay.show > *{animation:fxModalIn .38s var(--fx-ease);}
  @keyframes fxModalIn{from{opacity:0; transform:translateY(18px) scale(.965);} to{opacity:1; transform:none;}}
  #toast{transition:opacity .3s var(--fx-ease), transform .3s var(--fx-ease);}

  /* الجداول: تفاعل صفوف + ترويسة ثابتة لجدول التكلفة */
  table tbody tr{transition:background-color .2s ease;}
  .cost-product-table thead th{position:sticky; top:0; z-index:3;}

  /* هيكل تحميل (أداة جاهزة) */
  .fx-skeleton{position:relative; overflow:hidden; background:rgba(0,0,0,.06); border-radius:8px; color:transparent !important;}
  .fx-skeleton::after{content:''; position:absolute; inset:0; transform:translateX(-100%); background:linear-gradient(90deg, transparent, rgba(255,255,255,.55), transparent); animation:fxShimmer 1.4s infinite;}
  @keyframes fxShimmer{to{transform:translateX(100%);}}

  /* إمكانية الوصول: احترام تفضيل تقليل الحركة */
  @media (prefers-reduced-motion: reduce){
    *,*::before,*::after{animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; scroll-behavior:auto !important;}
    .fx-reveal{opacity:1 !important; transform:none !important;}
    .hero .fx-glow{display:none;}
  }

  /* ===== حقل البحث الذكي لأكواد HS ===== */
  .hs-search-wrap{position:relative;}
  .hs-search-results{
    position:absolute; top:calc(100% + 4px); right:0; left:0;
    background:var(--white); border:1px solid var(--green-soft);
    border-radius:12px; box-shadow:var(--shadow);
    max-height:280px; overflow-y:auto; z-index:60; display:none;
  }
  .hs-item{padding:9px 14px; cursor:pointer; border-bottom:1px solid var(--gray-l); display:flex; flex-direction:column; gap:2px;}
  .hs-item:last-child{border-bottom:none;}
  .hs-item:hover{background:var(--green-soft);}
  [data-theme="dark"] .hs-item:hover{background:rgba(255,255,255,.06);}
  .hs-item b{direction:ltr; text-align:right; font-size:13px; color:var(--green-2); font-family:'IBM Plex Sans', monospace;}
  [data-theme="dark"] .hs-item b{color:var(--gold);}
  .hs-item span{font-size:13px; color:var(--ink);}
  .hs-item small{font-size:11.5px; color:var(--gray-m);}
  .hs-item.hs-empty{cursor:default; color:var(--gray-m); font-size:12.5px; text-align:center;}
  .hs-item.hs-empty:hover{background:transparent;}

  /* ===== توسيع صفحات إدخال البيانات على الشاشات الواسعة ===== */
  @media(min-width:1200px){
    #wizard .field-grid{gap:24px 28px;}
    #wizard .field{grid-column:span 2;}
    #wizard .field.full{grid-column:span 6;}
    #wizard .field.third{grid-column:span 2;}
    #wizard .repeat-card{padding:26px 30px;}
    #wizard .wiz-panel{padding:40px 44px;}
    #wizard .field input, #wizard .field select, #wizard .field textarea{font-size:15px; padding:13px 16px;}
    #wizard .field label{font-size:13.5px;}
    #wizard table .cost-input{min-width:110px;}
    #wizard td .hs-search-wrap input{min-width:190px;}
    .progress-step span.lbl{font-size:12px;}
  }

  /* ===== الجولة الإرشادية التفاعلية ===== */
  .tour-start-btn{
    background:var(--green-soft); color:var(--green-2); border:1.5px solid var(--green-2);
    border-radius:999px; padding:8px 16px; font-family:inherit; font-size:12.5px; font-weight:700;
    cursor:pointer; transition:.2s;
  }
  .tour-start-btn:hover{background:var(--green-2); color:#fff;}
  [data-theme="dark"] .tour-start-btn{background:transparent; color:var(--gold); border-color:var(--gold);}
  [data-theme="dark"] .tour-start-btn:hover{background:var(--gold); color:#1a1a1a;}
  #tourBackdrop{position:fixed; inset:0; z-index:99980; background:transparent;}
  #tourHl{
    position:fixed; z-index:99990; border-radius:12px; pointer-events:none;
    box-shadow:0 0 0 99999px rgba(8,18,14,.62), 0 0 0 3px var(--gold), 0 0 22px rgba(0,0,0,.35);
    transition:top .35s ease, left .35s ease, width .35s ease, height .35s ease;
  }
  #tourTip{
    position:fixed; z-index:99991; width:min(380px, calc(100vw - 28px));
    background:var(--white); color:var(--ink); border-radius:14px; padding:16px 18px 14px;
    box-shadow:0 18px 50px rgba(0,0,0,.4); border:1px solid rgba(0,0,0,.06);
  }
  #tourTip .tour-step-tag{font-size:10.5px; font-weight:800; color:var(--gold); letter-spacing:.4px; margin-bottom:4px;}
  #tourTip h5{margin:0 0 6px; font-size:15px;}
  #tourTip p{margin:0 0 13px; font-size:13px; line-height:1.75; color:inherit; opacity:.85;}
  .tour-ctr{display:flex; align-items:center; justify-content:space-between; gap:8px;}
  .tour-count{font-size:11.5px; color:var(--gray-m); white-space:nowrap;}
  .tour-btns{display:flex; gap:8px;}
  .tour-btn{
    border-radius:9px; padding:7px 14px; font-family:inherit; font-size:12.5px; font-weight:700;
    cursor:pointer; border:1.5px solid rgba(0,0,0,.15); background:transparent; color:inherit; transition:.15s;
  }
  .tour-btn.primary{background:var(--green-2); border-color:var(--green-2); color:#fff;}
  .tour-btn.primary:hover{filter:brightness(1.1);}
  .tour-btn.ghost{border:none; opacity:.6;}
  .tour-btn.ghost:hover{opacity:1;}
  @media(max-width:640px){
    #tourTip{top:auto !important; bottom:12px !important; left:14px !important; right:14px; width:auto;}
  }

  /* ==================== شارات الحالة + شريط التقدم + الخط الزمني (تُستخدم في تفاصيل الطلبات) ==================== */
  .track-status-badge{display:inline-flex; align-items:center; gap:8px; padding:8px 18px; border-radius:999px; font-weight:700; font-size:14px; margin-bottom:20px;}
  .track-status-badge.st-green{background:rgba(27,122,74,.12); color:#1B7A4A;}
  .track-status-badge.st-blue{background:rgba(37,99,168,.12); color:#2563A8;}
  .track-status-badge.st-orange{background:rgba(201,162,39,.15); color:#946200;}
  .track-status-badge.st-purple{background:rgba(107,78,142,.12); color:#6B4E8E;}
  .track-status-badge.st-gray{background:rgba(0,0,0,.08); color:var(--gray-m);}
  .track-status-badge .badge-dot{width:10px; height:10px; border-radius:50%;}

  .track-progress-bar{width:100%; height:8px; background:var(--gray-l); border-radius:6px; overflow:hidden; margin-bottom:28px;}
  .track-progress-fill{height:100%; border-radius:6px; background:linear-gradient(90deg, var(--gold), var(--green-2)); transition:width .6s ease;}

  .track-timeline{position:relative; padding-right:30px;}
  .track-timeline::before{content:''; position:absolute; right:11px; top:0; bottom:0; width:3px; background:var(--gray-l); border-radius:3px;}
  .tl-item{position:relative; padding:0 0 28px 0; padding-right:30px;}
  .tl-item:last-child{padding-bottom:0;}
  .tl-dot{position:absolute; right:-23px; top:4px; width:18px; height:18px; border-radius:50%; border:3px solid var(--white); box-shadow:0 0 0 2px; z-index:1;}
  .tl-dot.tl-green{background:#1B7A4A; box-shadow:0 0 0 2px #1B7A4A;}
  .tl-dot.tl-blue{background:#2563A8; box-shadow:0 0 0 2px #2563A8;}
  .tl-dot.tl-orange{background:#C99A27; box-shadow:0 0 0 2px #C99A27;}
  .tl-dot.tl-purple{background:#6B4E8E; box-shadow:0 0 0 2px #6B4E8E;}
  .tl-dot.tl-gray{background:var(--gray-m); box-shadow:0 0 0 2px var(--gray-m);}
  .tl-item.pending .tl-dot{background:var(--gray-l); box-shadow:0 0 0 2px rgba(0,0,0,.12);}
  .tl-date{font-size:12px; color:var(--gray-m); margin-bottom:3px;}
  .tl-status{font-size:14px; font-weight:700; margin-bottom:3px;}
  .tl-note{font-size:12.5px; color:var(--gray-m); line-height:1.7;}
  .tl-dept{font-size:11px; color:var(--green-2); font-weight:700; margin-top:3px;}

  /* ==================== بوابة الدخول السريع ==================== */
  .gate-box{max-width:600px; margin:0 auto; background:var(--white); border:2px solid rgba(27,77,62,.1); border-radius:16px; padding:28px; box-shadow:var(--shadow);}
  [data-theme="dark"] .gate-box{border-color:rgba(27,77,62,.3);}
  .gate-box h3{font-size:16px; font-weight:800; margin-bottom:4px; text-align:center;}
  .gate-box p{font-size:12px; color:var(--gray-m); text-align:center; margin-bottom:16px;}
  .gate-box-grid{display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:14px;}
  .gate-box input{direction:ltr; text-align:center; font-weight:700; letter-spacing:1px; padding:12px; border-radius:10px; border:1.5px solid rgba(0,0,0,.12); font-family:var(--serif); font-size:13.5px; background:var(--white); color:var(--ink); width:100%;}
  .gate-box input[readonly]{background:var(--gray-l);}

  /* ==================== بطل مركز المعالجة البيانات (Hero) ==================== */
  .ops-hero{background:linear-gradient(135deg, var(--green), var(--green-2)); color:#fff; padding:20px 32px; display:flex; justify-content:space-between; align-items:center; position:relative; overflow:hidden;}
  .ops-hero::before{content:''; position:absolute; inset:0; opacity:.06; background-image:repeating-linear-gradient(45deg, transparent 0 22px, rgba(255,255,255,.5) 22px 23px); mask-image:radial-gradient(circle at 20% 80%, black, transparent 65%);}
  .ops-hero-left{display:flex; align-items:center; gap:14px; position:relative; z-index:1;}
  .ops-hero-left .emblem{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg, var(--gold), #a8801c);display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--green);font-size:18px;}
  .ops-hero-left h2{font-size:16px; font-weight:800;}
  .ops-hero-left p{font-size:12px; opacity:.7;}
  .ops-hero-right{display:flex; align-items:center; gap:8px; position:relative; z-index:1;}
  .ops-hero-right .chip{background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.25); color:#fff; padding:6px 14px; border-radius:8px; font-size:12px; cursor:pointer; font-weight:600;}
  .ops-hero-right .chip:hover{background:rgba(255,255,255,.2);}

  /* ==================== مركز المعالجة البيانات ==================== */
  .ops-wrap{padding:26px 4vw; max-width:1600px; margin:0 auto;}
  .ops-head{display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:22px; flex-wrap:wrap; gap:14px;}
  .ops-head h2{font-size:24px; font-weight:800; display:flex; align-items:center; gap:10px;}
  .ops-head p{color:var(--gray-m); font-size:13.5px; margin-top:4px;}
  .ops-badge{background:var(--red); color:#fff; border-radius:999px; padding:3px 10px; font-size:11px; font-weight:700; animation:pulse 2s infinite;}

  .ops-kpi-grid{display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:14px; margin-bottom:22px;}
  .ops-kpi{background:var(--white); border-radius:16px; padding:18px 16px; box-shadow:var(--shadow); border-right:4px solid var(--gold); position:relative;}
  .ops-kpi.ok{border-right-color:#1B7A4A;} .ops-kpi.warn{border-right-color:var(--gold);} .ops-kpi.danger{border-right-color:var(--red);} .ops-kpi.info{border-right-color:#4A7B9D;}
  .ops-kpi .ok-val{font-size:24px; font-weight:800;}
  .ops-kpi .ok-lbl{font-size:12px; color:var(--gray-m); margin-top:2px;}
  .ops-kpi .ok-delta{font-size:11px; font-weight:700; margin-top:6px;}
  .ops-kpi .ok-delta.up{color:#1B7A4A;} .ops-kpi .ok-delta.down{color:var(--red);}
  .ops-kpi .ok-icon{position:absolute; top:14px; left:14px; font-size:20px;}

  .ops-table-wrap{background:var(--white); border-radius:var(--radius); box-shadow:var(--shadow); overflow:hidden; margin-bottom:22px;}
  .ops-table-head{display:flex; justify-content:space-between; align-items:center; padding:18px 22px; border-bottom:1px solid rgba(0,0,0,.06); flex-wrap:wrap; gap:10px;}
  .ops-table-head h3{font-size:16px; font-weight:800;}
  .ops-table-search{display:flex; gap:10px; align-items:center;}
  .ops-table-search input{padding:9px 14px; border-radius:10px; border:1.5px solid rgba(0,0,0,.12); font-family:var(--serif); font-size:13px; background:var(--gray-l); color:var(--ink); outline:none;}
  .ops-table-search input:focus{border-color:var(--gold);}
  .ops-export-btns{display:flex; gap:6px;}
  .ops-export-btns button{padding:7px 14px; border-radius:9px; border:1.5px solid rgba(0,0,0,.12); background:var(--white); font-family:var(--serif); font-weight:700; font-size:12px; cursor:pointer; color:var(--ink);}
  .ops-export-btns button:hover{background:var(--green-soft);}

  .ops-main-table{width:100%; border-collapse:collapse; font-size:13px;}
  .ops-main-table thead{background:var(--green); color:#fff;}
  .ops-main-table th{padding:12px 10px; text-align:right; font-weight:700; font-size:12px; white-space:nowrap; cursor:pointer; position:relative;}
  .ops-main-table th:hover{background:var(--green-2);}
  .ops-main-table td{padding:10px 10px; border-bottom:1px solid rgba(0,0,0,.06); vertical-align:middle;}
  .ops-main-table tbody tr{transition:background .15s;}
  .ops-main-table tbody tr:hover{background:rgba(27,77,62,.04);}
  .ops-main-table .ops-priority{display:inline-block; padding:3px 10px; border-radius:999px; font-size:11px; font-weight:700;}
  .ops-priority.p-high{background:rgba(176,16,48,.1); color:var(--red);}
  .ops-priority.p-medium{background:rgba(201,162,39,.12); color:#946200;}
  .ops-priority.p-low{background:rgba(27,122,74,.1); color:#1B7A4A;}
  .ops-main-table .ops-status-tag{display:inline-flex; align-items:center; gap:5px; padding:4px 12px; border-radius:999px; font-size:11.5px; font-weight:700;}
  .ops-status-tag.st01{background:rgba(27,122,74,.1); color:#1B7A4A;}
  .ops-status-tag.st02{background:rgba(37,99,168,.1); color:#2563A8;}
  .ops-status-tag.st03{background:rgba(201,162,39,.12); color:#946200;}
  .ops-status-tag.st04{background:rgba(27,122,74,.1); color:#1B7A4A;}
  .ops-status-tag.st05{background:rgba(37,99,168,.1); color:#2563A8;}
  .ops-status-tag.st07{background:rgba(201,162,39,.12); color:#946200;}
  .ops-status-tag.st08{background:rgba(107,78,142,.1); color:#6B4E8E;}
  .ops-status-tag.st09{background:rgba(37,99,168,.1); color:#2563A8;}
  .ops-status-tag.st10{background:rgba(37,99,168,.1); color:#2563A8;}
  .ops-status-tag.st11{background:rgba(27,122,74,.1); color:#1B7A4A;}
  .ops-status-tag.st12{background:rgba(0,0,0,.08); color:var(--gray-m);}
  .ops-status-tag.st13{background:rgba(0,0,0,.08); color:var(--gray-m);}

  .ops-action-btns{display:flex; gap:4px;}
  .ops-action-btns button{width:28px; height:28px; border-radius:8px; border:1px solid rgba(0,0,0,.1); background:var(--white); cursor:pointer; font-size:13px; display:flex; align-items:center; justify-content:center; transition:.15s;}
  .ops-action-btns button:hover{background:var(--green-soft); border-color:var(--green-2);}

  /* نافذة تفاصيل الطلب الجانبية */
  .ops-detail-overlay{position:fixed; inset:0; background:rgba(13,30,25,.5); backdrop-filter:blur(4px); z-index:200; display:none; justify-content:flex-start;}
  .ops-detail-overlay.show{display:flex; animation:fade .3s ease;}
  .ops-detail-panel{width:min(720px, 95vw); height:100vh; background:var(--white); overflow-y:auto; box-shadow:10px 0 40px rgba(0,0,0,.25); padding:0; animation:slideInRight .35s ease;}
  @keyframes slideInRight{from{transform:translateX(-100%);} to{transform:none;}}
  .ops-detail-header{background:linear-gradient(135deg, var(--green), var(--green-2)); color:#fff; padding:24px 28px; position:sticky; top:0; z-index:10;}
  .ops-detail-header h3{font-size:18px; font-weight:800; margin-bottom:4px;}
  .ops-detail-header .odh-meta{font-size:13px; opacity:.85;}
  .ops-detail-close{position:absolute; top:14px; left:14px; width:32px; height:32px; border-radius:8px; border:none; background:rgba(255,255,255,.15); color:#fff; cursor:pointer; font-size:16px; display:flex; align-items:center; justify-content:center;}
  .ops-detail-body{padding:24px 28px;}
  .ops-detail-section{margin-bottom:22px;}
  .ops-detail-section h4{font-size:15px; font-weight:800; margin-bottom:10px; display:flex; align-items:center; gap:8px;}
  .ops-detail-grid{display:grid; grid-template-columns:1fr 1fr; gap:10px;}
  .ops-detail-field{background:var(--gray-l); border-radius:10px; padding:10px 12px;}
  .ops-detail-field .odf-label{font-size:11px; color:var(--gray-m); font-weight:700; margin-bottom:2px;}
  .ops-detail-field .odf-value{font-size:13.5px; font-weight:700;}

  /* نافذة تغيير الحالة */
  .ops-status-overlay{position:fixed; inset:0; background:rgba(13,30,25,.55); backdrop-filter:blur(4px); display:none; align-items:center; justify-content:center; z-index:300; padding:20px;}
  .ops-status-overlay.show{display:flex; animation:fade .3s ease;}
  .ops-status-card{background:var(--white); color:var(--ink); border-radius:22px; padding:30px; max-width:600px; width:100%; box-shadow:0 30px 80px -20px rgba(0,0,0,.4); max-height:85vh; overflow-y:auto;}
  .ops-status-card h3{font-size:18px; font-weight:800; text-align:center; margin-bottom:20px;}

  /* صفحات الإجراءات السريعة */
  .ops-quick-actions{display:grid; grid-template-columns:repeat(auto-fill,minmax(140px,1fr)); gap:10px; margin-bottom:22px;}
  .ops-qa-btn{background:var(--white); border-radius:14px; padding:16px 12px; text-align:center; box-shadow:var(--shadow); cursor:pointer; transition:.2s; border:1.5px solid transparent;}
  .ops-qa-btn:hover{border-color:var(--gold); transform:translateY(-2px);}
  .ops-qa-btn .qa-icon{font-size:24px; margin-bottom:6px;}
  .ops-qa-btn .qa-label{font-size:12px; font-weight:700;}

  /* لوحة أداء الموظفين */
  .ops-emp-grid{display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:14px; margin-bottom:22px;}
  .ops-emp-card{background:var(--white); border-radius:14px; padding:18px; box-shadow:var(--shadow); border-top:3px solid var(--green-2);}
  .ops-emp-card .oec-head{display:flex; justify-content:space-between; align-items:center; margin-bottom:10px;}
  .ops-emp-card .oec-name{font-size:14px; font-weight:800;}
  .ops-emp-card .oec-dept{font-size:11.5px; color:var(--gray-m);}
  .ops-emp-card .oec-stats{display:grid; grid-template-columns:1fr 1fr; gap:8px; font-size:12px;}
  .ops-emp-card .oec-stat{background:var(--gray-l); border-radius:8px; padding:8px; text-align:center;}
  .ops-emp-card .oec-stat b{display:block; font-size:16px; font-weight:800; margin-bottom:2px;}
  .ops-emp-card .oec-stat span{color:var(--gray-m); font-size:11px;}

  /* مركز الإشعارات */
  .ops-notif-list{display:flex; flex-direction:column; gap:10px; margin-bottom:22px;}
  .ops-notif-item{display:flex; gap:12px; align-items:flex-start; background:var(--white); border-radius:12px; padding:14px 16px; box-shadow:var(--shadow); border-right:4px solid;}
  .ops-notif-item.nf-warn{border-color:var(--gold);}
  .ops-notif-item.nf-danger{border-color:var(--red);}
  .ops-notif-item.nf-info{border-color:#4A7B9D;}
  .ops-notif-item.nf-ok{border-color:#1B7A4A;}
  .ops-notif-icon{font-size:20px; flex-shrink:0;}
  .ops-notif-text{flex:1;}
  .ops-notif-text b{display:block; font-size:13px; margin-bottom:2px;}
  .ops-notif-text span{font-size:12px; color:var(--gray-m); line-height:1.7;}
  .ops-notif-time{font-size:11px; color:var(--gray-m); white-space:nowrap;}

  /* سجل التدقيق */
  .ops-audit-table{width:100%; border-collapse:collapse; font-size:12px;}
  .ops-audit-table th{background:var(--green-soft); color:var(--green-2); padding:10px 8px; text-align:right; font-weight:700;}
  .ops-audit-table td{padding:9px 8px; border-bottom:1px solid rgba(0,0,0,.06);}

  /* تسجيل دخول مركز المعالجة البيانات */
  .ops-login-wrap{max-width:440px; margin:80px auto; padding:0 20px;}
  .ops-login-card{background:var(--white); border-radius:var(--radius); padding:36px; box-shadow:var(--shadow); text-align:center; border-top:4px solid var(--green);}
  .ops-login-card h2{font-size:22px; font-weight:800; margin-bottom:6px;}
  .ops-login-card p{font-size:13px; color:var(--gray-m); margin-bottom:24px;}

  @media(max-width:900px){
    .ops-kpi-grid{grid-template-columns:1fr 1fr;}
    .ops-main-table{font-size:12px;}
    .ops-detail-panel{width:100vw;}
    .ops-detail-grid{grid-template-columns:1fr;}
    .ops-emp-grid{grid-template-columns:1fr;}
    #opsDashboard > div[style*="grid-template-columns:1fr 1.2fr"]{grid-template-columns:1fr !important;}
  }
  @media(max-width:640px){
    .ops-kpi-grid{grid-template-columns:1fr;}
    .ops-quick-actions{grid-template-columns:repeat(3,1fr);}
  }

  /* ════════════════════════════════════════════════════════════
     التكامل الصناعي — أنماط تابات الاستبيان (ti-)
     ════════════════════════════════════════════════════════════ */
  .ti-tab{
    flex:0 0 auto; padding:8px 18px; border:none; border-radius:10px 10px 0 0;
    background:rgba(0,0,0,.04); color:var(--gray-m); font-family:var(--sans);
    font-size:12.5px; font-weight:600; cursor:pointer; transition:.2s;
    white-space:nowrap; border-bottom:2.5px solid transparent;
  }
  .ti-tab:hover{ background:rgba(18,59,48,.06); color:var(--green-2); }
  .ti-tab.active{
    background:var(--green-soft); color:var(--green-2);
    border-bottom:2.5px solid var(--green-2);
  }
  .ti-section{ display:none; animation:fadeUp .25s ease; }
  .ti-section.active{ display:block; }
  .ti-check{
    display:inline-flex; align-items:center; gap:6px; padding:7px 14px;
    background:rgba(0,0,0,.03); border:1.5px solid rgba(0,0,0,.08);
    border-radius:10px; font-size:12.5px; cursor:pointer; transition:.2s;
    user-select:none;
  }
  .ti-check:hover{ border-color:var(--green-2); background:rgba(18,59,48,.04); }
  .ti-check input[type="checkbox"]{ accent-color:var(--green-2); width:15px; height:15px; }
  .ti-pct{
    width:80px; padding:6px 8px; border:1px solid rgba(0,0,0,.1);
    border-radius:6px; font-size:12px; text-align:center;
    font-family:var(--sans);
  }
  .ti-pct:focus{ outline:2px solid var(--green-2); border-color:var(--green-2); }
  .ti-pct.over{ border-color:var(--red); background:rgba(176,16,48,.06); }
  @media(max-width:640px){
    .ti-tab{ padding:7px 12px; font-size:11.5px; }
    .ti-check{ padding:6px 10px; font-size:11.5px; }
  }


.es-sec-title{grid-column:1/-1; margin:10px 0 2px; padding:10px 14px; background:var(--green-soft); border-radius:10px; color:var(--green-2); font-size:14px; font-weight:800;}
          .es-sec-title small{color:var(--gray-m); font-weight:400;}
          .es-opt{display:flex; flex-wrap:wrap; align-items:center; gap:10px; padding:8px 10px; border:1px dashed rgba(0,0,0,.1); border-radius:10px; margin-top:8px; background:var(--gray-l);}
          .es-extra{display:none; flex-wrap:wrap; align-items:center; gap:8px; font-size:12px; color:var(--gray-m);}
          .es-extra input[type=number], .es-extra input[type=text]{padding:6px 8px; border:1px solid rgba(0,0,0,.12); border-radius:8px; font-family:var(--serif); font-size:12px; background:#fff;}
          .es-extra select{padding:6px 8px; border:1px solid rgba(0,0,0,.12); border-radius:8px; font-family:var(--serif); font-size:12px; background:#fff;}
          .es-pct{width:70px; text-align:center;}
          .es-qty{width:110px; text-align:center;}
          .es-total{font-size:11.5px; font-weight:700; margin-top:6px;}

@media(max-width:980px){ #dcGenGrid{grid-template-columns:1fr !important;} }

/* ══════════════════════════════════════════════════════════════════
     أنماط صفحة تقييم الطلبات الصناعية (ev-) — متوافقة مع الهوية البصرية
     ══════════════════════════════════════════════════════════════════ */

  /* — Hero Section — */
  #evalEngine .ev-hero{
    position:relative; overflow:hidden;
    background: radial-gradient(1000px 500px at 80% -10%, rgba(201,162,39,.18), transparent 60%),
                linear-gradient(160deg, var(--green) 0%, var(--green-2) 55%, #0d2b23 100%);
    color:#fff; padding:60px 6vw 70px;
  }
  #evalEngine .ev-hero::before{
    content:''; position:absolute; inset:0; opacity:.12;
    background-image:
      repeating-linear-gradient(45deg, transparent 0 22px, rgba(255,255,255,.5) 22px 23px),
      repeating-linear-gradient(-45deg, transparent 0 22px, rgba(255,255,255,.5) 22px 23px);
    mask-image: radial-gradient(circle at 75% 20%, black, transparent 65%);
  }
  #evalEngine .ev-hero-inner{position:relative; max-width:1200px; margin:0 auto;}
  #evalEngine .ev-hero-badge-row{display:inline-flex; align-items:center; gap:8px; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.25); padding:7px 16px; border-radius:999px; font-size:13px; font-weight:600; margin-bottom:22px;}
  #evalEngine .ev-hero-badge-row .dot{width:7px; height:7px; border-radius:50%; background:var(--gold);}
  #evalEngine .ev-hero h1{font-size:clamp(28px,4.5vw,48px); font-weight:800; line-height:1.3; margin-bottom:14px;}
  #evalEngine .ev-hero h1 span{color:var(--gold);}
  #evalEngine .ev-hero .ev-hero-desc{font-size:16px; line-height:1.9; color:rgba(255,255,255,.82); max-width:720px; margin-bottom:28px;}
  #evalEngine .ev-hero-badges{display:flex; gap:8px; flex-wrap:wrap; margin-bottom:10px;}
  #evalEngine .ev-hero-badges .ev-hb{font-size:11.5px; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.2); padding:7px 14px; border-radius:999px; font-weight:600; display:inline-flex; align-items:center; gap:5px; transition:background .2s;}
  #evalEngine .ev-hero-badges .ev-hb:hover{background:rgba(255,255,255,.18);}
  #evalEngine .ev-hero-state{display:flex; align-items:center; gap:10px; margin-top:18px;}
  #evalEngine .ev-hero-state .ev-state-pill{font-size:12px; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.25); padding:7px 16px; border-radius:999px; font-weight:700; display:inline-flex; align-items:center; gap:6px; transition:all .3s;}
  #evalEngine .ev-stats-strip{display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:1px; background:rgba(255,255,255,.15); border-radius:18px; overflow:hidden; margin-top:40px; max-width:900px; backdrop-filter:blur(6px); border:1px solid rgba(255,255,255,.15);}
  #evalEngine .ev-stats-strip .cell{background:rgba(255,255,255,.06); padding:18px 16px; text-align:center;}
  #evalEngine .ev-stats-strip .num{font-size:22px; font-weight:800; color:var(--gold);}
  #evalEngine .ev-stats-strip .lbl{font-size:11.5px; color:rgba(255,255,255,.75); margin-top:3px;}

  /* — Layout — */
  #evalEngine .ev-wrap{max-width:1400px; margin:0 auto; padding:26px 4vw 70px;}
  #evalEngine .ev-grid2{display:grid; grid-template-columns:1.4fr 1fr; gap:18px; align-items:stretch;}
  #evalEngine .ev-grid3{display:grid; grid-template-columns:repeat(3,1fr); gap:18px; align-items:stretch;}
  @media(max-width:1100px){ #evalEngine .ev-grid3{grid-template-columns:1fr;} }
  @media(max-width:980px){ #evalEngine .ev-grid2{grid-template-columns:1fr;} }

  /* — Cards — */
  #evalEngine .ev-card{background:var(--white, #fff); border:1px solid rgba(0,0,0,.07); border-radius:var(--radius); box-shadow:var(--shadow); padding:24px; transition:box-shadow .3s ease, transform .3s ease; position:relative;}
  #evalEngine .ev-card:hover{box-shadow:0 12px 34px rgba(18,59,48,.11); transform:translateY(-2px);}
  #evalEngine .ev-card h3{font-size:16px; font-weight:800; display:flex; align-items:center; gap:9px; margin-bottom:14px; color:var(--ink);}
  #evalEngine .ev-card h3 small{font-size:11.5px; color:var(--gray-m); font-weight:500;}

  /* — Section Titles — */
  #evalEngine .ev-sec{margin-top:26px; animation:fade .4s ease;}
  #evalEngine .ev-sec-title{font-size:16px; font-weight:800; margin-bottom:14px; display:flex; align-items:center; gap:8px; color:var(--green-2);}
  [data-theme="dark"] #evalEngine .ev-sec-title{color:var(--gold);}

  /* — File Upload Area (Enhanced) — */
  #evalEngine .ev-drop{
    border:2.5px dashed rgba(18,59,48,.25); border-radius:18px; padding:48px 24px; text-align:center; cursor:pointer;
    transition:all .3s cubic-bezier(.34,1.56,.64,1); background:var(--gray-l); position:relative; overflow:hidden;
  }
  #evalEngine .ev-drop::before{content:''; position:absolute; inset:0; background:linear-gradient(135deg, rgba(27,77,62,.04), transparent); opacity:0; transition:opacity .3s;}
  #evalEngine .ev-drop:hover, #evalEngine .ev-drop.ev-over{border-color:var(--green-2); background:var(--green-soft); transform:scale(1.01);}
  #evalEngine .ev-drop:hover::before, #evalEngine .ev-drop.ev-over::before{opacity:1;}
  #evalEngine .ev-drop .ev-drop-ico{font-size:48px; margin-bottom:10px; display:block;}
  #evalEngine .ev-drop p{font-size:14px; color:var(--gray-m, #6b7671); line-height:1.8;}
  #evalEngine .ev-drop p b{color:var(--ink);}
  #evalEngine .ev-drop .ev-drop-formats{display:flex; justify-content:center; gap:16px; margin-top:16px; flex-wrap:wrap;}
  #evalEngine .ev-drop .ev-drop-format{display:flex; align-items:center; gap:8px; background:var(--white); border:1px solid rgba(0,0,0,.08); border-radius:12px; padding:10px 16px; font-size:12.5px; font-weight:700; transition:all .2s;}
  #evalEngine .ev-drop .ev-drop-format:hover{border-color:var(--green-2); background:var(--green-soft);}
  #evalEngine .ev-drop .ev-drop-format .fmt-icon{font-size:22px;}
  #evalEngine .ev-drop .ev-drop-format .fmt-ext{font-size:11px; color:var(--gray-m); font-weight:600;}

  /* — Buttons — */
  #evalEngine .ev-file-btns{display:flex; gap:8px; margin-top:14px; flex-wrap:wrap;}
  #evalEngine .ev-btn{border:none; border-radius:12px; padding:10px 18px; font-family:var(--serif); font-weight:700; font-size:12.5px; cursor:pointer; transition:all .25s cubic-bezier(.34,1.56,.64,1); display:inline-flex; align-items:center; gap:6px; position:relative; overflow:hidden;}
  #evalEngine .ev-btn:hover{transform:translateY(-1px); box-shadow:0 4px 12px rgba(0,0,0,.1);}
  #evalEngine .ev-btn:active{transform:scale(.97);}
  #evalEngine .ev-btn.p{background:var(--green); color:#fff;}
  #evalEngine .ev-btn.p:hover{box-shadow:0 6px 18px rgba(27,77,62,.25);}
  #evalEngine .ev-btn.g{background:var(--gold); color:var(--green);}
  #evalEngine .ev-btn.g:hover{box-shadow:0 6px 18px rgba(201,162,39,.3);}
  #evalEngine .ev-btn.d{background:var(--red); color:#fff;}
  #evalEngine .ev-btn.d:hover{box-shadow:0 6px 18px rgba(176,16,48,.25);}
  #evalEngine .ev-btn.o{background:transparent; color:var(--green-2); border:1.5px solid var(--green-2);}
  [data-theme="dark"] #evalEngine .ev-btn.o{color:var(--gold); border-color:var(--gold);}
  #evalEngine .ev-btn.o:hover{background:var(--green-soft);}
  #evalEngine .ev-btn:disabled{opacity:.4; cursor:not-allowed; transform:none; box-shadow:none;}
  #evalEngine .ev-btn.run{background:linear-gradient(135deg, var(--green), var(--green-2)); color:#fff; font-size:14px; padding:12px 24px; animation:evBtnPulse 2s ease-in-out infinite;}
  #evalEngine .ev-btn.run:hover{animation:none; box-shadow:0 8px 24px rgba(27,77,62,.35); filter:brightness(1.08);}
  @keyframes evBtnPulse{0%,100%{box-shadow:0 0 0 0 rgba(27,77,62,.3);} 50%{box-shadow:0 0 0 6px rgba(27,77,62,0);}}

  /* — File Info — */
  #evalEngine .ev-meta{display:grid; grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); gap:10px; margin-top:14px;}
  #evalEngine .ev-meta .m{background:var(--gray-l); border-radius:12px; padding:12px 14px; transition:all .2s;}
  #evalEngine .ev-meta .m b{display:block; font-size:16px; font-weight:800;}
  #evalEngine .ev-meta .m span{font-size:11px; color:var(--gray-m, #6b7671);}
  #evalEngine .ev-tag{display:inline-flex; align-items:center; gap:5px; padding:5px 13px; border-radius:999px; font-size:11.5px; font-weight:800;}
  #evalEngine .ev-tag.ok{background:rgba(27,122,74,.12); color:#1B7A4A;}
  #evalEngine .ev-tag.bad{background:rgba(176,16,48,.1); color:var(--red);}
  #evalEngine .ev-tag.warn{background:rgba(201,162,39,.15); color:#946200;}

  /* — Evaluation Criteria (Locked) — */
  #evalEngine .ev-lock{position:relative; overflow:hidden;}
  #evalEngine .ev-lock::after{content:'🔒 مقفل — للقراءة فقط'; position:absolute; top:14px; left:14px; font-size:10.5px; font-weight:800; color:var(--gray-m,#6b7671); background:var(--gray-l); padding:5px 11px; border-radius:999px;}
  #evalEngine .ev-crit-row{display:flex; justify-content:space-between; gap:10px; padding:10px 2px; border-bottom:1px dashed rgba(0,0,0,.08); font-size:13px;}
  #evalEngine .ev-crit-row b{font-weight:800;}

  /* — Pipeline (Enhanced) — */
  #evalEngine .ev-pipe{display:flex; flex-direction:column; gap:0;}
  #evalEngine .ev-step{display:flex; gap:14px; align-items:flex-start; position:relative; padding-bottom:20px; transition:all .3s;}
  #evalEngine .ev-step::before{content:''; position:absolute; top:36px; right:16px; bottom:0; width:2.5px; background:rgba(0,0,0,.08); border-radius:2px;}
  #evalEngine .ev-step:last-child::before{display:none;}
  #evalEngine .ev-step .ic{width:35px; height:35px; border-radius:50%; background:var(--gray-l); display:flex; align-items:center; justify-content:center; font-size:16px; flex-shrink:0; border:2.5px solid rgba(0,0,0,.06); transition:all .4s cubic-bezier(.34,1.56,.64,1); z-index:1;}
  #evalEngine .ev-step.run .ic{border-color:var(--gold); background:rgba(212,168,75,.12); animation:evPulse 1.1s infinite; transform:scale(1.1);}
  #evalEngine .ev-step.done .ic{border-color:var(--green-2); background:var(--green-soft); transform:scale(1.05);}
  #evalEngine .ev-step .tx{flex:1;}
  #evalEngine .ev-step .tx b{font-size:13.5px; font-weight:800;}
  #evalEngine .ev-step .tx small{display:block; font-size:11px; color:var(--gray-m,#6b7671); margin-top:2px;}
  #evalEngine .ev-step .pc{font-size:12px; font-weight:800; color:var(--gray-m,#6b7671); min-width:44px; text-align:left; font-variant-numeric:tabular-nums;}
  #evalEngine .ev-step.done .pc{color:#1B7A4A;}
  @keyframes evPulse{0%,100%{box-shadow:0 0 0 0 rgba(212,168,75,.35);}50%{box-shadow:0 0 0 8px rgba(212,168,75,0);}}

  /* — Monitoring Dashboard — */
  #evalEngine .ev-mon{display:grid; grid-template-columns:repeat(auto-fit,minmax(130px,1fr)); gap:10px;}
  #evalEngine .ev-mon .m{background:var(--gray-l); border-radius:12px; padding:12px 14px; text-align:center; transition:all .2s;}
  #evalEngine .ev-mon .m:hover{background:var(--green-soft);}
  #evalEngine .ev-mon .m b{display:block; font-size:17px; font-variant-numeric:tabular-nums; font-weight:800;}
  #evalEngine .ev-mon .m span{font-size:10.5px; color:var(--gray-m,#6b7671); display:block; margin-top:2px;}
  #evalEngine .ev-pbar{height:14px; background:var(--gray-l); border-radius:999px; overflow:hidden; margin:14px 0 4px; box-shadow:inset 0 1px 3px rgba(0,0,0,.08);}
  #evalEngine .ev-pbar > div{height:100%; width:0%; background:linear-gradient(90deg, var(--green-2), var(--gold)); border-radius:999px; transition:width .4s cubic-bezier(.4,0,.2,1); position:relative;}
  #evalEngine .ev-pbar > div::after{content:''; position:absolute; inset:0; background:linear-gradient(90deg, transparent, rgba(255,255,255,.3), transparent); animation:evPbarShine 1.5s ease-in-out infinite;}
  @keyframes evPbarShine{0%,100%{transform:translateX(-100%);} 50%{transform:translateX(100%);}}

  /* — KPI Cards (Enhanced) — */
  #evalEngine .ev-kpis{display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:16px;}
  #evalEngine .ev-kpi{background:var(--white,#fff); border:1px solid rgba(0,0,0,.07); border-radius:16px; padding:18px; display:flex; gap:14px; align-items:center; box-shadow:0 6px 20px rgba(18,59,48,.06); animation:evKpiIn .5s ease backwards; transition:all .3s;}
  #evalEngine .ev-kpi:nth-child(1){animation-delay:.05s;}
  #evalEngine .ev-kpi:nth-child(2){animation-delay:.1s;}
  #evalEngine .ev-kpi:nth-child(3){animation-delay:.15s;}
  #evalEngine .ev-kpi:nth-child(4){animation-delay:.2s;}
  #evalEngine .ev-kpi:nth-child(5){animation-delay:.25s;}
  #evalEngine .ev-kpi:nth-child(6){animation-delay:.3s;}
  @keyframes evKpiIn{from{opacity:0; transform:translateY(12px) scale(.96);} to{opacity:1; transform:none;}}
  #evalEngine .ev-kpi:hover{transform:translateY(-3px); box-shadow:0 12px 30px rgba(18,59,48,.1);}
  #evalEngine .ev-kpi .gauge{position:relative; width:66px; height:66px; flex-shrink:0;}
  #evalEngine .ev-kpi .gauge svg{transform:rotate(-90deg);}
  #evalEngine .ev-kpi .gauge .gv{position:absolute; inset:0; display:flex; align-items:center; justify-content:center; font-size:13px; font-weight:800;}
  #evalEngine .ev-kpi .kt b{display:block; font-size:12.5px; font-weight:800; line-height:1.5;}
  #evalEngine .ev-kpi .kt small{font-size:10.5px; color:var(--gray-m,#6b7671); line-height:1.6; display:block;}
  #evalEngine .ev-kpi .kt .dir{font-size:10.5px; font-weight:800; margin-top:2px; display:block;}
  #evalEngine .ev-kpi .kt .trend{font-size:11px; font-weight:700; display:inline-flex; align-items:center; gap:3px; margin-top:3px; padding:2px 8px; border-radius:999px;}
  #evalEngine .ev-kpi .kt .trend.up{background:rgba(27,122,74,.1); color:#1B7A4A;}
  #evalEngine .ev-kpi .kt .trend.down{background:rgba(176,16,48,.1); color:var(--red);}
  #evalEngine .ev-skel{border-radius:16px; height:98px; background:linear-gradient(100deg, var(--gray-l) 40%, rgba(255,255,255,.6) 50%, var(--gray-l) 60%); background-size:200% 100%; animation:evSkel 1.2s infinite linear;}
  @keyframes evSkel{to{background-position-x:-200%;}}

  /* — Decision Card (Enhanced) — */
  #evalEngine .ev-decision{border-radius:22px; padding:36px; text-align:center; color:#fff; box-shadow:0 16px 45px rgba(18,59,48,.2); animation:evDecIn .6s cubic-bezier(.22,1,.36,1); position:relative; overflow:hidden;}
  #evalEngine .ev-decision::before{content:''; position:absolute; inset:0; opacity:.08; background-image:repeating-linear-gradient(45deg, transparent 0 22px, rgba(255,255,255,.5) 22px 23px); mask-image:radial-gradient(circle at 20% 80%, black, transparent 65%);}
  #evalEngine .ev-decision .big{font-size:32px; font-weight:800; margin:10px 0; position:relative;}
  #evalEngine .ev-decision .row{display:flex; justify-content:center; gap:14px; flex-wrap:wrap; margin-top:16px; position:relative;}
  #evalEngine .ev-decision .cell{background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.25); border-radius:14px; padding:12px 22px; font-size:12.5px; backdrop-filter:blur(4px);}
  #evalEngine .ev-decision .cell b{display:block; font-size:18px; margin-top:3px;}
  @keyframes evDecIn{from{opacity:0; transform:translateY(16px) scale(.97);} to{opacity:1; transform:none;}}

  /* — Output Files (Enhanced) — */
  #evalEngine .ev-outs{display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:16px;}
  #evalEngine .ev-out{background:var(--white,#fff); border:1px solid rgba(0,0,0,.07); border-radius:16px; padding:18px; box-shadow:0 6px 18px rgba(18,59,48,.06); transition:all .3s; position:relative; overflow:hidden;}
  #evalEngine .ev-out::before{content:''; position:absolute; top:0; right:0; left:0; height:3px; background:linear-gradient(90deg, var(--gold), var(--green-2)); opacity:0; transition:opacity .3s;}
  #evalEngine .ev-out:hover{transform:translateY(-3px); box-shadow:0 10px 28px rgba(18,59,48,.1);}
  #evalEngine .ev-out:hover::before{opacity:1;}
  #evalEngine .ev-out b{font-size:13.5px; display:flex; gap:8px; align-items:center; font-weight:800;}
  #evalEngine .ev-out small{display:block; font-size:11px; color:var(--gray-m,#6b7671); margin:8px 0 12px; line-height:1.8;}
  #evalEngine .ev-out .bs{display:flex; gap:6px; flex-wrap:wrap;}

  /* — Activity Log / Timeline (Enhanced) — */
  #evalEngine .ev-log{display:flex; flex-direction:column; gap:0; max-height:360px; overflow:auto; position:relative; padding-right:20px;}
  #evalEngine .ev-log::before{content:''; position:absolute; right:8px; top:0; bottom:0; width:2.5px; background:rgba(0,0,0,.06); border-radius:2px;}
  #evalEngine .ev-log .l{display:flex; gap:12px; align-items:center; background:var(--gray-l); border-radius:12px; padding:10px 14px; font-size:12px; animation:fade .3s ease; position:relative; margin-bottom:4px; border-right:3px solid transparent; transition:all .2s;}
  #evalEngine .ev-log .l:hover{background:var(--green-soft); border-right-color:var(--gold);}
  #evalEngine .ev-log .l::after{content:''; position:absolute; right:-26px; top:50%; transform:translateY(-50%); width:10px; height:10px; border-radius:50%; background:var(--gray-l); border:2px solid rgba(0,0,0,.1); z-index:1;}
  #evalEngine .ev-log .l.log-ok::after{background:var(--green-soft); border-color:var(--green-2);}
  #evalEngine .ev-log .l.log-run::after{background:rgba(212,168,75,.2); border-color:var(--gold); animation:evPulse 1.1s infinite;}
  #evalEngine .ev-log .l.log-err::after{background:rgba(176,16,48,.1); border-color:var(--red);}
  #evalEngine .ev-log .l time{font-size:10.5px; color:var(--gray-m,#6b7671); direction:ltr; white-space:nowrap;}

  /* — Empty State — */
  #evalEngine .ev-empty{text-align:center; padding:30px 20px; color:var(--gray-m,#6b7671); font-size:13px; line-height:1.8;}

  /* — Preview Table — */
  #evalEngine .ev-preview-tbl{width:100%; border-collapse:collapse; font-size:12px;}
  #evalEngine .ev-preview-tbl th{background:var(--green-soft); color:var(--green-2); padding:8px 10px; text-align:right; position:sticky; top:0; font-weight:800;}
  [data-theme="dark"] #evalEngine .ev-preview-tbl th{background:rgba(27,77,62,.35); color:var(--gold);}
  #evalEngine .ev-preview-tbl td{padding:7px 10px; border-bottom:1px solid rgba(0,0,0,.06);}

  /* — Editable Weights — */
  #evalEngine .ev-weight-row{transition:background .15s;}
  #evalEngine .ev-weight-row:hover{background:rgba(18,59,48,.03); border-radius:6px;}
  #evalEngine .ev-weight-slider{-webkit-appearance:none; appearance:none; height:5px; border-radius:3px; background:rgba(18,59,48,.08); outline:none; transition:background .2s;}
  #evalEngine .ev-weight-slider::-webkit-slider-thumb{-webkit-appearance:none; appearance:none; width:14px; height:14px; border-radius:50%; background:var(--green-2); cursor:pointer; border:2px solid #fff; box-shadow:0 1px 4px rgba(0,0,0,.15); transition:transform .15s;}
  #evalEngine .ev-weight-slider::-webkit-slider-thumb:hover{transform:scale(1.25);}
  #evalEngine .ev-weight-slider::-moz-range-thumb{width:14px; height:14px; border-radius:50%; background:var(--green-2); cursor:pointer; border:2px solid #fff;}
  [data-theme="dark"] #evalEngine .ev-weight-slider{background:rgba(212,168,75,.12);}
  [data-theme="dark"] #evalEngine .ev-weight-slider::-webkit-slider-thumb{background:var(--gold);}
  [data-theme="dark"] #evalEngine .ev-weight-slider::-moz-range-thumb{background:var(--gold);}
  #evalEngine .ev-weight-num{transition:border-color .2s;}
  #evalEngine .ev-weight-num:focus{border-color:var(--green-2); outline:none;}
  [data-theme="dark"] #evalEngine .ev-weight-num:focus{border-color:var(--gold);}

  /* — Extra Data Fields — */
  #evalEngine .ev-extra-field label{cursor:default;}
  #evalEngine .ev-extra-field input:focus{border-color:var(--green-2) !important; outline:none; box-shadow:0 0 0 3px rgba(18,59,48,.08);}
  [data-theme="dark"] #evalEngine .ev-extra-field input{background:rgba(255,255,255,.05) !important; border-color:rgba(212,168,75,.2) !important; color:var(--text);}
  [data-theme="dark"] #evalEngine .ev-extra-field input:focus{border-color:var(--gold) !important; box-shadow:0 0 0 3px rgba(212,168,75,.08);}
  #evalEngine .ev-extra-field input::placeholder{color:var(--gray-m,#aaa); opacity:.7;}
  #evalEngine #evExtraToggle:hover{background:rgba(18,59,48,.06);}

  /* — Responsive — */
  @media(max-width:768px){
    #evalEngine .ev-hero{padding:40px 4vw 50px;}
    #evalEngine .ev-stats-strip{grid-template-columns:repeat(2,1fr);}
    #evalEngine .ev-kpis{grid-template-columns:1fr;}
    #evalEngine .ev-outs{grid-template-columns:1fr;}
    #evalEngine .ev-drop{padding:32px 16px;}
    #evalEngine .ev-drop .ev-drop-ico{font-size:36px;}
    #evalEngine .ev-decision{padding:24px 16px;}
    #evalEngine .ev-decision .big{font-size:24px;}
    #evalEngine .ev-decision .row{gap:8px;}
    #evalEngine .ev-decision .cell{padding:8px 14px; font-size:11.5px;}
    #evalEngine .ev-decision .cell b{font-size:15px;}
  }

/* ═══════════════════════════════════════════════════════════════
     أنماط المنصة الذكية (sa-) — متوافقة مع الهوية البصرية
     ═══════════════════════════════════════════════════════════════ */

  /* — Hero Section — */
  #saPlatform .sa-hero{position:relative; overflow:hidden; background:radial-gradient(1000px 500px at 80% -10%,rgba(201,162,39,.18),transparent 60%),linear-gradient(160deg,var(--green) 0%,var(--green-2) 55%,#0d2b23 100%); color:#fff; padding:50px 6vw 60px; margin-bottom:32px;}
  #saPlatform .sa-hero::before{content:''; position:absolute; inset:0; opacity:.08; background-image:repeating-linear-gradient(45deg,transparent 0 22px,rgba(255,255,255,.4) 22px 23px),repeating-linear-gradient(-45deg,transparent 0 22px,rgba(255,255,255,.4) 22px 23px); mask-image:radial-gradient(circle at 75% 20%,black,transparent 65%);}
  #saPlatform .sa-hero-inner{position:relative; z-index:1; max-width:900px;}
  #saPlatform .sa-hero-badge{display:inline-flex; align-items:center; gap:8px; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.25); padding:6px 14px; border-radius:999px; font-size:12.5px; font-weight:600; margin-bottom:18px;}
  #saPlatform .sa-hero-badge .dot{width:7px; height:7px; border-radius:50%; background:var(--gold); animation:saPulse 2s ease-in-out infinite;}
  @keyframes saPulse{0%,100%{opacity:1;} 50%{opacity:.4;}}
  #saPlatform .sa-hero h1{font-size:clamp(28px,4.5vw,46px); font-weight:800; line-height:1.25; margin-bottom:12px;}
  #saPlatform .sa-hero h1 span{color:var(--gold);}
  #saPlatform .sa-hero p{font-size:15px; line-height:1.9; color:rgba(255,255,255,.82); max-width:660px; margin-bottom:24px;}
  #saPlatform .sa-hero-badges{display:flex; flex-wrap:wrap; gap:8px; margin-bottom:20px;}
  #saPlatform .sa-hb{background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.18); padding:5px 12px; border-radius:8px; font-size:11.5px; font-weight:600;}
  #saPlatform .sa-hero-stats{display:grid; grid-template-columns:repeat(auto-fit,minmax(130px,1fr)); gap:10px;}
  #saPlatform .sa-hs{background:rgba(255,255,255,.08); border-radius:12px; padding:14px 16px; text-align:center;}
  #saPlatform .sa-hs b{display:block; font-size:20px; font-weight:800; margin-bottom:2px;}
  #saPlatform .sa-hs small{font-size:11px; opacity:.75;}

  /* — Layout — */
  #saPlatform .sa-wrap{padding:0 6vw 60px;}
  #saPlatform .sa-tabs{display:flex; gap:6px; overflow-x:auto; padding-bottom:12px; margin-bottom:24px; border-bottom:2px solid rgba(0,0,0,.06); position:sticky; top:60px; background:var(--white); z-index:50; -webkit-overflow-scrolling:touch;}
  [data-theme="dark"] #saPlatform .sa-tabs{background:var(--white); border-color:rgba(255,255,255,.06);}
  #saPlatform .sa-tab{padding:10px 18px; border-radius:10px 10px 0 0; font-size:12.5px; font-weight:700; white-space:nowrap; cursor:pointer; background:transparent; color:var(--gray-m); border:1.5px solid transparent; border-bottom:none; transition:all .2s;}
  #saPlatform .sa-tab:hover{background:rgba(18,59,48,.04);}
  #saPlatform .sa-tab.active{background:var(--white); color:var(--green-2); border-color:rgba(0,0,0,.08); box-shadow:0 -2px 8px rgba(0,0,0,.04);}
  [data-theme="dark"] #saPlatform .sa-tab.active{background:var(--white); color:var(--gold); border-color:rgba(255,255,255,.08);}
  #saPlatform .sa-section{display:none; animation:saFadeIn .3s ease;}
  #saPlatform .sa-section.active{display:block;}
  @keyframes saFadeIn{from{opacity:0; transform:translateY(8px);} to{opacity:1; transform:translateY(0);}}

  /* — Cards — */
  #saPlatform .sa-card{background:var(--white); border-radius:var(--radius); box-shadow:var(--shadow); padding:24px; margin-bottom:20px; border:1.5px solid rgba(0,0,0,.04); transition:box-shadow .2s, transform .2s;}
  #saPlatform .sa-card:hover{box-shadow:0 14px 40px -12px rgba(18,59,48,.22);}
  #saPlatform .sa-card h3{font-size:15px; font-weight:800; margin-bottom:16px; display:flex; align-items:center; gap:8px;}
  #saPlatform .sa-card h3 small{font-size:11px; font-weight:500; color:var(--gray-m); margin-right:auto;}
  #saPlatform .sa-grid2{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  #saPlatform .sa-grid3{display:grid; grid-template-columns:1fr 1fr 1fr; gap:16px;}
  #saPlatform .sa-grid4{display:grid; grid-template-columns:repeat(4,1fr); gap:14px;}

  /* — KPI Cards — */
  #saPlatform .sa-kpi{background:var(--white); border-radius:16px; padding:18px 20px; border:1.5px solid rgba(0,0,0,.04); display:flex; align-items:center; gap:16px; transition:all .2s;}
  #saPlatform .sa-kpi:hover{transform:translateY(-2px); box-shadow:0 8px 24px -8px rgba(0,0,0,.12);}
  #saPlatform .sa-kpi-icon{width:48px; height:48px; border-radius:14px; display:flex; align-items:center; justify-content:center; font-size:22px; flex-shrink:0;}
  #saPlatform .sa-kpi-icon.green{background:rgba(18,59,48,.08);}
  #saPlatform .sa-kpi-icon.gold{background:rgba(212,168,75,.12);}
  #saPlatform .sa-kpi-icon.red{background:rgba(176,16,48,.08);}
  #saPlatform .sa-kpi-icon.blue{background:rgba(37,99,168,.08);}
  #saPlatform .sa-kpi-body{flex:1; min-width:0;}
  #saPlatform .sa-kpi-body small{font-size:11px; color:var(--gray-m); display:block; margin-bottom:2px;}
  #saPlatform .sa-kpi-body b{font-size:20px; font-weight:800; display:block;}
  #saPlatform .sa-kpi-body .sa-trend{font-size:11px; font-weight:700; margin-top:3px; display:inline-flex; align-items:center; gap:3px; padding:2px 8px; border-radius:6px;}
  #saPlatform .sa-kpi-body .sa-trend.up{background:rgba(18,59,48,.08); color:#146A3F;}
  #saPlatform .sa-kpi-body .sa-trend.down{background:rgba(176,16,48,.08); color:#B01030;}

  /* — Gauge / Progress Ring — */
  #saPlatform .sa-gauge{position:relative; width:100px; height:100px; flex-shrink:0;}
  #saPlatform .sa-gauge svg{transform:rotate(-90deg);}
  #saPlatform .sa-gauge-val{position:absolute; inset:0; display:flex; align-items:center; justify-content:center; font-size:18px; font-weight:800;}

  /* — File Upload — */
  #saPlatform .sa-upload{border:2px dashed rgba(18,59,48,.15); border-radius:16px; padding:40px 24px; text-align:center; cursor:pointer; transition:all .25s; background:rgba(18,59,48,.02);}
  #saPlatform .sa-upload:hover, #saPlatform .sa-upload.over{border-color:var(--green-2); background:rgba(18,59,48,.05); transform:scale(1.01);}
  #saPlatform .sa-upload .sa-upload-ico{font-size:48px; margin-bottom:12px; opacity:.6;}
  #saPlatform .sa-upload p{font-size:13px; color:var(--gray-m); line-height:1.8;}
  #saPlatform .sa-upload b{color:var(--green-2); text-decoration:underline;}
  #saPlatform .sa-upload-formats{display:flex; justify-content:center; gap:16px; margin-top:16px; flex-wrap:wrap;}
  #saPlatform .sa-upload-fmt{display:flex; align-items:center; gap:8px; background:var(--gray-l); padding:8px 14px; border-radius:10px; font-size:11.5px;}
  #saPlatform .sa-upload-fmt b{font-weight:800; text-decoration:none;}
  #saPlatform .sa-upload-fmt small{color:var(--gray-m);}

  /* — Tables — */
  #saPlatform .sa-table-wrap{overflow-x:auto; border-radius:12px; border:1.5px solid rgba(0,0,0,.06);}
  #saPlatform table.sa-tbl{width:100%; border-collapse:collapse; font-size:12.5px;}
  #saPlatform table.sa-tbl th{background:var(--green-soft); color:var(--green-2); padding:12px 14px; text-align:right; font-weight:700; white-space:nowrap; position:sticky; top:0; cursor:pointer; user-select:none;}
  [data-theme="dark"] #saPlatform table.sa-tbl th{background:rgba(27,77,62,.3); color:var(--gold);}
  #saPlatform table.sa-tbl th:hover{background:rgba(18,59,48,.1);}
  #saPlatform table.sa-tbl td{padding:10px 14px; border-bottom:1px solid rgba(0,0,0,.04);}
  #saPlatform table.sa-tbl tr:hover td{background:rgba(18,59,48,.02);}
  #saPlatform table.sa-tbl td[contenteditable="true"]:focus{outline:2px solid var(--green-2); outline-offset:-2px; background:rgba(18,59,48,.04);}
  [data-theme="dark"] #saPlatform table.sa-tbl td[contenteditable="true"]:focus{outline-color:var(--gold);}

  /* — Toolbar — */
  #saPlatform .sa-toolbar{display:flex; gap:8px; flex-wrap:wrap; margin-bottom:16px; align-items:center;}
  #saPlatform .sa-toolbar .sa-search{flex:1; min-width:200px; padding:9px 14px 9px 36px; border:1.5px solid rgba(0,0,0,.1); border-radius:10px; font-size:12.5px; font-family:var(--serif); background:var(--white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%238B928E' viewBox='0 0 16 16'%3E%3Cpath d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85zm-5.44.156a5 5 0 1 1 0-10 5 5 0 0 1 0 10z'/%3E%3C/svg%3E") no-repeat 12px center;}
  #saPlatform .sa-toolbar .sa-search:focus{outline:none; border-color:var(--green-2);}
  #saPlatform .sa-btn{padding:8px 16px; border-radius:10px; font-size:12px; font-weight:700; cursor:pointer; border:1.5px solid transparent; transition:all .2s; font-family:var(--serif); white-space:nowrap;}
  #saPlatform .sa-btn:hover{transform:translateY(-1px);}
  #saPlatform .sa-btn.g{background:var(--green); color:#fff;} #saPlatform .sa-btn.g:hover{box-shadow:0 4px 14px rgba(18,59,48,.25);}
  #saPlatform .sa-btn.o{background:transparent; color:var(--green-2); border-color:var(--green-2);}
  [data-theme="dark"] #saPlatform .sa-btn.o{color:var(--gold); border-color:var(--gold);}
  #saPlatform .sa-btn.p{background:var(--gold); color:var(--green);}
  #saPlatform .sa-btn.d{background:var(--red); color:#fff;}
  #saPlatform .sa-btn.w{background:var(--white); color:var(--ink); border-color:rgba(0,0,0,.1);}

  /* — Assessment Axes — */
  #saPlatform .sa-axis{background:var(--white); border-radius:14px; padding:18px; border:1.5px solid rgba(0,0,0,.04); margin-bottom:14px;}
  #saPlatform .sa-axis-head{display:flex; align-items:center; gap:10px; margin-bottom:12px;}
  #saPlatform .sa-axis-head h4{font-size:13.5px; font-weight:800; flex:1;}
  #saPlatform .sa-axis-head .sa-score{font-size:20px; font-weight:800; padding:4px 12px; border-radius:10px;}
  #saPlatform .sa-axis-body{display:grid; grid-template-columns:200px 1fr; gap:16px; align-items:start;}
  #saPlatform .sa-axis-chart{min-height:180px;}
  #saPlatform .sa-axis-insight{background:var(--gray-l); border-radius:10px; padding:14px; font-size:12px; line-height:1.8;}
  #saPlatform .sa-axis-insight h5{font-size:12px; font-weight:800; margin-bottom:6px; color:var(--green-2);}
  [data-theme="dark"] #saPlatform .sa-axis-insight h5{color:var(--gold);}
  #saPlatform .sa-axis-insight ul{padding-right:16px; margin:6px 0 0;}
  #saPlatform .sa-axis-insight li{margin-bottom:3px;}

  /* — Decision Matrix — */
  #saPlatform .sa-matrix{overflow-x:auto;}
  #saPlatform table.sa-matrix-tbl{width:100%; border-collapse:collapse; font-size:12px;}
  #saPlatform table.sa-matrix-tbl th{background:var(--green); color:#fff; padding:10px 12px; text-align:center; font-weight:700;}
  #saPlatform table.sa-matrix-tbl td{padding:8px 12px; border:1px solid rgba(0,0,0,.06); text-align:center;}
  #saPlatform table.sa-matrix-tbl td[contenteditable="true"]:focus{outline:2px solid var(--gold); outline-offset:-2px; background:rgba(212,168,75,.06);}
  #saPlatform table.sa-matrix-tbl tr:hover td{background:rgba(18,59,48,.02);}

  /* — Recommendation Cards — */
  #saPlatform .sa-rec{border-radius:14px; padding:18px; margin-bottom:12px; border:1.5px solid rgba(0,0,0,.06); display:flex; gap:16px; align-items:start; transition:all .2s;}
  #saPlatform .sa-rec:hover{box-shadow:0 6px 20px -6px rgba(0,0,0,.1);}
  #saPlatform .sa-rec-icon{width:44px; height:44px; border-radius:12px; display:flex; align-items:center; justify-content:center; font-size:20px; flex-shrink:0;}
  #saPlatform .sa-rec-body{flex:1;}
  #saPlatform .sa-rec-body h4{font-size:13.5px; font-weight:800; margin-bottom:4px;}
  #saPlatform .sa-rec-body p{font-size:12px; color:var(--gray-m); line-height:1.8;}
  #saPlatform .sa-rec-body .sa-conf{display:inline-flex; align-items:center; gap:4px; font-size:11px; font-weight:700; padding:3px 10px; border-radius:6px; margin-top:6px;}

  /* — AI Assistant — */
  #saPlatform .sa-ai{background:linear-gradient(135deg,var(--green) 0%,var(--green-2) 100%); color:#fff; border-radius:16px; padding:20px; margin-bottom:20px;}
  #saPlatform .sa-ai h3{color:#fff; margin-bottom:14px;}
  #saPlatform .sa-ai-chat{background:rgba(255,255,255,.1); border-radius:12px; padding:14px; max-height:300px; overflow-y:auto; margin-bottom:12px; font-size:12.5px; line-height:1.9;}
  #saPlatform .sa-ai-msg{padding:8px 12px; border-radius:10px; margin-bottom:8px;}
  #saPlatform .sa-ai-msg.user{background:rgba(255,255,255,.15); margin-left:20%;}
  #saPlatform .sa-ai-msg.ai{background:rgba(255,255,255,.08); margin-right:20%;}
  #saPlatform .sa-ai-input{display:flex; gap:8px;}
  #saPlatform .sa-ai-input input{flex:1; padding:10px 14px; border:1.5px solid rgba(255,255,255,.3); border-radius:10px; background:rgba(255,255,255,.1); color:#fff; font-size:12.5px; font-family:var(--serif);}
  #saPlatform .sa-ai-input input::placeholder{color:rgba(255,255,255,.5);}
  #saPlatform .sa-ai-input input:focus{outline:none; border-color:var(--gold);}
  #saPlatform .sa-ai-input button{padding:10px 18px; border-radius:10px; background:var(--gold); color:var(--green); font-weight:700; font-size:12.5px; border:none; cursor:pointer;}

  /* — Sidebar Panel — */
  #saPlatform .sa-side{position:sticky; top:80px;}
  #saPlatform .sa-checklist{list-style:none; padding:0; margin:0;}
  #saPlatform .sa-checklist li{display:flex; align-items:center; gap:8px; padding:8px 0; border-bottom:1px dashed rgba(0,0,0,.06); font-size:12px;}
  #saPlatform .sa-checklist li .sa-chk{width:18px; height:18px; border-radius:6px; border:1.5px solid rgba(0,0,0,.15); display:flex; align-items:center; justify-content:center; flex-shrink:0; cursor:pointer; transition:all .2s;}
  #saPlatform .sa-checklist li .sa-chk.done{background:var(--green); border-color:var(--green); color:#fff;}
  #saPlatform .sa-timeline{position:relative; padding-right:20px;}
  #saPlatform .sa-timeline::before{content:''; position:absolute; right:6px; top:0; bottom:0; width:2px; background:rgba(0,0,0,.08);}
  #saPlatform .sa-tl-item{position:relative; padding:10px 0 10px 16px; font-size:12px;}
  #saPlatform .sa-tl-item::before{content:''; position:absolute; right:-14px; top:14px; width:8px; height:8px; border-radius:50%; background:var(--green-2); border:2px solid var(--white);}
  #saPlatform .sa-tl-item time{font-size:10.5px; color:var(--gray-m); display:block; margin-bottom:2px;}

  /* — Charts Container — */
  #saPlatform .sa-chart-box{position:relative; height:220px;}
  #saPlatform .sa-chart-box canvas{width:100% !important; height:100% !important;}

  /* — Risk Matrix — */
  #saPlatform .sa-risk-matrix{display:grid; grid-template-columns:repeat(5,1fr); gap:4px;}
  #saPlatform .sa-risk-cell{padding:10px 6px; text-align:center; border-radius:8px; font-size:10.5px; font-weight:700; transition:transform .15s;}
  #saPlatform .sa-risk-cell:hover{transform:scale(1.05);}
  #saPlatform .sa-risk-cell.low{background:rgba(18,59,48,.1); color:#146A3F;}
  #saPlatform .sa-risk-cell.med{background:rgba(212,168,75,.15); color:#946200;}
  #saPlatform .sa-risk-cell.high{background:rgba(176,16,48,.1); color:#B01030;}

  /* — SWOT / Porter — */
  #saPlatform .sa-swot{display:grid; grid-template-columns:1fr 1fr; gap:12px;}
  #saPlatform .sa-swot-cell{padding:14px; border-radius:12px; font-size:12px; line-height:1.8;}
  #saPlatform .sa-swot-cell h5{font-size:12px; font-weight:800; margin-bottom:6px;}
  #saPlatform .sa-swot-cell ul{padding-right:14px; margin:0;}
  #saPlatform .sa-swot-cell.strengths{background:rgba(18,59,48,.06);}
  #saPlatform .sa-swot-cell.weaknesses{background:rgba(176,16,48,.05);}
  #saPlatform .sa-swot-cell.opportunities{background:rgba(37,99,168,.06);}
  #saPlatform .sa-swot-cell.threats{background:rgba(212,168,75,.08);}

  /* — Responsive — */
  @media(max-width:1024px){
    #saPlatform .sa-grid2{grid-template-columns:1fr;}
    #saPlatform .sa-grid3{grid-template-columns:1fr 1fr;}
    #saPlatform .sa-grid4{grid-template-columns:1fr 1fr;}
    #saPlatform .sa-axis-body{grid-template-columns:1fr;}
  }
  @media(max-width:768px){
    #saPlatform .sa-hero{padding:36px 4vw 44px;}
    #saPlatform .sa-hero h1{font-size:24px;}
    #saPlatform .sa-wrap{padding:0 4vw 40px;}
    #saPlatform .sa-grid3, #saPlatform .sa-grid4{grid-template-columns:1fr;}
    #saPlatform .sa-tabs{top:52px;}
    #saPlatform .sa-swot{grid-template-columns:1fr;}
    #saPlatform .sa-risk-matrix{grid-template-columns:repeat(3,1fr);}
    #saPlatform .sa-toolbar{flex-direction:column;}
    #saPlatform .sa-toolbar .sa-search{min-width:100%;}
  }

  /* ---------- COLLAPSIBLE SECTIONS ---------- */
  .collapsible-section{padding:14px 6vw; transition:padding .3s, background .3s;}
  .collapsible-section.open{padding:44px 6vw;}
  .collapsible-section .section-body{display:none;}
  .collapsible-section.open .section-body{display:block;}
  .collapsible-section .section-head{cursor:pointer; margin-bottom:0; transition:margin-bottom .3s;}
  .collapsible-section.open .section-head{margin-bottom:28px;}
  .collapsible-section .section-head h2{font-size:17px; transition:font-size .3s; display:flex; align-items:center; justify-content:space-between; gap:12px;}
  .collapsible-section.open .section-head h2{font-size:26px;}
  .collapsible-section .section-head .kicker{opacity:.5; transition:opacity .3s; font-size:12px;}
  .collapsible-section.open .section-head .kicker{opacity:1; font-size:13px;}
  .collapsible-section .collapse-icon{font-size:22px; font-weight:300; transition:transform .3s; color:var(--gray-m); flex-shrink:0; user-select:none;}
  .collapsible-section.open .collapse-icon{transform:rotate(45deg);}

  /* ---------- UMAYYAD PATTERNED BACKGROUND ---------- */
  .section-patterned{
    position:relative;
    background-color: var(--white);
  }
  .section-patterned::before{
    content:'';
    position:absolute; inset:0;
    background-image: url('../img/umayyad-pattern.svg');
    background-repeat: repeat;
    background-size: 320px 320px;
    opacity:0.7;
    pointer-events:none;
    z-index:0;
  }
  .section-patterned::after{
    content:'';
    position:absolute; inset:0;
    background: radial-gradient(ellipse at 50% 40%, rgba(255,255,255,0) 20%, var(--white) 75%);
    pointer-events:none;
    z-index:1;
  }
  .section-patterned > *{position:relative; z-index:2;}

/* ═══════════════════════════════════════════════════════════════════════
   صفحة تعديل القوائم المرجعية  ·  القطاع ← الصناعة ← رقم النشاط ← الوصف
   ═══════════════════════════════════════════════════════════════════════ */

.lk-wrap{max-width:1400px;margin:0 auto;padding:26px 18px 60px}

.lk-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;
  flex-wrap:wrap;padding-bottom:16px;border-bottom:2px solid var(--green-soft);margin-bottom:22px}
.lk-head h2{margin:0 0 6px;color:var(--green);font-size:1.6rem}
.lk-head p{margin:0;color:var(--gray-m);font-size:.88rem;max-width:62ch;line-height:1.7}
.lk-head-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.lk-stat{background:var(--green-soft);color:var(--green);border-radius:999px;
  padding:6px 14px;font-size:.82rem;font-weight:600;white-space:nowrap}

.lk-btn{border:1px solid var(--green-soft);background:var(--white);color:var(--ink);
  border-radius:10px;padding:8px 16px;font-family:inherit;font-size:.86rem;cursor:pointer;
  transition:background .15s,border-color .15s}
.lk-btn:hover{background:var(--gray-l);border-color:var(--green-2)}
.lk-btn.is-primary{background:var(--green);color:#fff;border-color:var(--green)}
.lk-btn.is-primary:hover{background:var(--green-2)}

/* ── الأعمدة الثلاثة ── */
.lk-cols{display:grid;grid-template-columns:1fr 1fr 1.6fr;gap:16px;align-items:start}
@media (max-width:1000px){.lk-cols{grid-template-columns:1fr}}

.lk-col{background:var(--white);border:1px solid var(--green-soft);border-radius:var(--radius);
  box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column}
.lk-col-head{display:flex;justify-content:space-between;align-items:center;gap:8px;
  padding:12px 14px;background:var(--green);color:#fff}
.lk-col-head h3{margin:0;font-size:.98rem;font-weight:600}
.lk-add{background:rgba(255,255,255,.16);color:#fff;border:0;border-radius:8px;
  width:30px;height:30px;font-size:1rem;line-height:1;cursor:pointer;margin-inline-start:4px}
.lk-add:hover{background:var(--gold);color:var(--green)}

.lk-search{width:100%;border:0;border-bottom:1px solid var(--green-soft);background:var(--gray-l);
  padding:10px 14px;font-family:inherit;font-size:.85rem;color:var(--ink)}
.lk-search:focus{outline:0;background:var(--white);border-bottom-color:var(--gold)}

.lk-list{list-style:none;margin:0;padding:0;max-height:60vh;overflow-y:auto}
.lk-list-act{max-height:60vh}
.lk-empty{padding:20px 14px;color:var(--gray-m);font-size:.85rem;text-align:center}

.lk-item{display:flex;align-items:stretch;gap:4px;border-bottom:1px solid var(--gray-l)}
.lk-item:hover{background:var(--gray-l)}
.lk-item.is-sel{background:var(--green-soft)}
.lk-item.is-sel .lk-item-name{color:var(--green);font-weight:700}
.lk-item.is-off{opacity:.5}
.lk-item.is-off .lk-item-name{text-decoration:line-through}

.lk-item-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;align-items:flex-start;
  background:none;border:0;padding:10px 14px;font-family:inherit;text-align:start;cursor:pointer;color:inherit}
.lk-item-name{font-size:.9rem;color:var(--ink);line-height:1.5;word-break:break-word}
.lk-item-sub{font-size:.76rem;color:var(--gray-m);line-height:1.6;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

.lk-item-acts{display:flex;align-items:center;gap:2px;padding-inline-end:8px}
.lk-item-acts button{background:none;border:0;color:var(--gray-m);cursor:pointer;
  font-size:.95rem;width:26px;height:26px;border-radius:6px;line-height:1}
.lk-item-acts button:hover{background:var(--green-soft);color:var(--green)}
.lk-item-acts button.is-danger:hover{background:var(--red);color:#fff}

.lk-note{margin:20px 2px 0;color:var(--gray-m);font-size:.82rem;line-height:1.9;max-width:90ch}

/* ── نافذة التحرير ── */
.lk-modal{position:fixed;inset:0;z-index:1200;background:rgba(20,24,22,.55);
  display:flex;align-items:center;justify-content:center;padding:20px}
.lk-modal[hidden]{display:none}
.lk-modal-box{background:var(--white);border-radius:var(--radius);box-shadow:0 24px 60px -20px rgba(0,0,0,.5);
  width:min(560px,100%);max-height:88vh;overflow-y:auto;padding:24px}
.lk-modal-box h3{margin:0 0 18px;color:var(--green);font-size:1.12rem}
.lk-modal-foot{display:flex;align-items:center;gap:10px;margin-top:20px;flex-wrap:wrap}
.lk-modal-msg{color:var(--red);font-size:.83rem;flex:1;min-width:0}

.lk-f{display:block;margin-bottom:14px}
.lk-f>span{display:block;font-size:.84rem;color:var(--green);font-weight:600;margin-bottom:6px}
.lk-f>em{display:block;font-style:normal;font-size:.76rem;color:var(--gray-m);margin-top:5px;line-height:1.7}
.lk-f input[type=text],.lk-f textarea,.lk-f select{width:100%;border:1px solid var(--green-soft);
  border-radius:10px;padding:9px 12px;font-family:inherit;font-size:.88rem;background:var(--white);
  color:var(--ink);line-height:1.7}
.lk-f input[type=text]:focus,.lk-f textarea:focus,.lk-f select:focus{outline:0;border-color:var(--gold)}
.lk-f textarea{resize:vertical}
.lk-f-inline{display:flex;align-items:center;gap:8px}
.lk-f-inline>span{margin:0;font-weight:400;color:var(--ink)}
.lk-hint{background:var(--gray-l);border-inline-start:3px solid var(--gold);border-radius:8px;
  padding:10px 12px;font-size:.82rem;color:var(--gray-d);line-height:1.8;margin:0 0 14px}

/* ── حقل تصفية الأنشطة داخل الاستبيان ── */
.lk-filter{margin-bottom:8px}
.lk-filter:disabled{opacity:.5}
