/* ===== BLOCK 1: inline-style-1 ===== */
* {
      box-sizing: border-box;
    }

    body {
      margin: 0;
      font-family: 'Cairo', sans-serif;
      color: #241708;
      background: linear-gradient(135deg, #FBF3DF, #ffffff 55%, #F6E9C9);
      min-height: 100vh;
    }

    .hidden {
      display: none !important;
    }

    /* =========================
       LOGIN — BRANDED / SAFE UI
    ========================= */

    #login-screen {
      min-height: 100vh;
      display: flex;
      direction: ltr;
      align-items: stretch;
      justify-content: flex-start;
      position: relative;
      overflow: hidden;
      background-image: url("../login-bg.jpg");
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
    }

    .login-spacer {
      flex: 0 0 60%;
      max-width: 60%;
      pointer-events: none;
    }

    .login-panel {
      flex: 1;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 40px 34px;
      position: relative;
      z-index: 1;
    }

    .login-box {
      width: 100%;
      max-width: 430px;
      position: relative;
      z-index: 1;
      background: rgba(255, 255, 255, .93);
      border: 1px solid rgba(148, 163, 184, .20);
      border-radius: 26px;
      padding: 32px 34px 26px;
      box-shadow: 0 28px 80px rgba(18, 59, 100, .18);
      backdrop-filter: blur(10px);
      direction: rtl;
    }

    .login-logo {
      width: 96px;
      height: 96px;
      margin: 0 auto 12px;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 50%;
      background: #fff;
      overflow: hidden;
    }

    .login-logo img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }

    .login-title {
      text-align: center;
      margin: 0;
      color: #163d91;
      font-size: 27px;
      font-weight: 900;
      letter-spacing: -.3px;
    }

    .login-subtitle {
      text-align: center;
      color: #64748b;
      margin: 6px 0 20px;
      font-size: 14px;
      font-weight: 600;
    }

    .login-divider {
      display: flex;
      align-items: center;
      gap: 14px;
      margin: 0 0 20px;
      color: #C9962C;
    }

    .login-divider::before,
    .login-divider::after {
      content: "";
      height: 1px;
      flex: 1;
      background: #E0C47A;
    }

    .login-divider span {
      width: 10px;
      height: 10px;
      border-radius: 50%;
      background: #C9962C;
      box-shadow: 0 0 0 5px rgba(255,255,255,.9);
    }

    .login-welcome {
      text-align: center;
      margin-bottom: 18px;
    }

    .login-welcome h2 {
      margin: 0 0 5px;
      color: #4A3117;
      font-size: 22px;
      font-weight: 800;
    }

    .login-welcome p {
      margin: 0;
      color: #718096;
      font-size: 13px;
    }

    .login-label {
      display: block;
      margin: 0 0 7px;
      font-size: 13px;
      font-weight: 800;
      color: #4A3117;
    }

    .login-field {
      position: relative;
      margin-bottom: 14px;
    }

    .login-field-icon {
      position: absolute;
      top: 50%;
      right: 15px;
      transform: translateY(-50%);
      font-size: 15px;
      opacity: .55;
      pointer-events: none;
    }

    .login-input {
      width: 100%;
      box-sizing: border-box;
      padding: 13px 44px 13px 15px;
      min-height: 48px;
      border-radius: 13px;
      border: 1px solid #E0C47A;
      outline: none;
      background: #fff;
      color: #241708;
      font-family: inherit;
      font-size: 14px;
      transition: .2s;
    }

    .login-field-toggle {
      position: absolute;
      top: 50%;
      left: 12px;
      transform: translateY(-50%);
      border: 0;
      background: none;
      cursor: pointer;
      font-size: 15px;
      opacity: .55;
      padding: 4px;
    }

    .login-input:focus {
      border-color: #C9962C;
      box-shadow: 0 0 0 4px rgba(201,150,44, .10);
    }

    .login-row {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin: 2px 0 16px;
      font-size: 12.5px;
    }

    .login-remember {
      display: flex;
      align-items: center;
      gap: 6px;
      color: #4A3117;
      font-weight: 700;
      cursor: pointer;
    }

    .login-remember input {
      accent-color: #C9962C;
      width: 15px;
      height: 15px;
    }

    .login-forgot {
      color: #C9962C;
      font-weight: 800;
      text-decoration: none;
    }

    .login-forgot:hover {
      text-decoration: underline;
    }

    .login-btn {
      width: 100%;
      border: 0;
      min-height: 50px;
      padding: 14px;
      border-radius: 14px;
      background: linear-gradient(135deg, #C9962C, #123B64);
      color: white;
      font-family: inherit;
      font-size: 16px;
      font-weight: 900;
      cursor: pointer;
      transition: .2s;
      box-shadow: 0 9px 22px rgba(18, 59, 100, .20);
    }

    .login-btn:hover {
      transform: translateY(-1px);
      box-shadow: 0 12px 25px rgba(18, 59, 100, .24);
    }

    .login-error {
      background: #fff1f2;
      color: #b91c1c;
      border: 1px solid #fecdd3;
      padding: 11px 12px;
      border-radius: 11px;
      margin-bottom: 14px;
      font-size: 13px;
      text-align: center;
      font-weight: 700;
    }

    .login-secure {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 7px;
      margin-top: 18px;
      color: #7b8da6;
      font-size: 12px;
      font-weight: 700;
    }

    .login-secure-badge {
      width: 18px;
      height: 18px;
      border: 1.5px solid #7b8da6;
      border-radius: 6px 6px 8px 8px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-size: 10px;
    }

    .login-certs {
      display: flex;
      align-items: center;
      justify-content: center;
      flex-wrap: wrap;
      gap: 14px;
      margin-top: 14px;
      padding-top: 14px;
      border-top: 1px solid rgba(201, 150, 44, .18);
    }

    .login-certs-badge {
      height: 34px;
      width: auto;
      max-width: 60px;
      object-fit: contain;
      opacity: .92;
      filter: saturate(1);
      transition: transform .2s, opacity .2s;
    }

    .login-certs-badge:hover {
      transform: translateY(-1px);
      opacity: 1;
    }

    @media (max-width: 520px) {
      .login-certs { gap: 10px; }
      .login-certs-badge { height: 28px; max-width: 48px; }
    }

    @media (max-width: 900px) {
      #login-screen {
        justify-content: center;
        background-image:
          linear-gradient(rgba(10, 22, 43, .55), rgba(10, 22, 43, .55)),
          url("../login-bg.jpg");
      }
      .login-spacer { display: none; }
      .login-panel { padding: 90px 18px 24px; }
    }

    @media (max-width: 520px) {
      .login-box { padding: 26px 20px 22px; border-radius: 22px; }
      .login-logo { width: 84px; height: 84px; }
      .login-title { font-size: 23px; }
    }


    /* =========================
       APP
    ========================= */

    #app {
      min-height: 100vh;
    }

    .app-header {
      background: rgba(255, 255, 255, .9);
      backdrop-filter: blur(15px);
      border-bottom: 1px solid rgba(224, 196, 122, .8);
      padding: 16px 20px;
      position: sticky;
      top: 0;
      z-index: 20;
    }

    .max-width {
      max-width: 1100px;
      margin: auto;
    }

    .glass {
      background: rgba(255, 255, 255, .92);
      backdrop-filter: blur(12px);
      border: 1px solid rgba(224, 196, 122, .8);
      box-shadow: 0 8px 24px rgba(18, 59, 100, .10);
    }

    .glass-light {
      background: rgba(251, 243, 223, .88);
      border: 1px solid rgba(224, 196, 122, .45);
    }

    .welcome-user {
      color: #C9962C;
      font-weight: 700;
      font-size: 14px;
    }

    .btn-blue {
      background: linear-gradient(135deg, #C9962C, #123B64);
      color: white;
      border: 0;
      cursor: pointer;
      box-shadow: 0 4px 12px rgba(18, 59, 100, .22);
    }

    .btn-blue:hover {
      background: linear-gradient(135deg, #D4A017, #C9962C);
    }

    select,
    input {
      background: #fff;
      border: 1px solid #E0C47A;
      color: #241708;
      outline: none;
      font-family: inherit;
    }

    select:focus,
    input:focus {
      border-color: #D4A017;
      box-shadow: 0 0 0 2px rgba(212, 160, 23, .12);
    }

    .status-active {
      background: rgba(8, 127, 91, .12);
      color: #087f5b;
    }

    .status-pending {
      background: rgba(18, 59, 100, .10);
      color: #123B64;
    }

    .status-completed {
      background: rgba(201,150,44, .12);
      color: #C9962C;
    }
    .status-inactive {
      background: rgba(100, 116, 139, .14);
      color: #475569;
    }

    .site-card {
      transition: .25s;
    }

    .site-card:hover {
      transform: translateY(-2px);
      box-shadow: 0 10px 28px rgba(18, 59, 100, .14);
    }

    .worker-card {
      transition: .2s;
    }

    .worker-card:hover {
      transform: translateY(-1px);
    }

    .worker-cards-grid{display:grid;grid-template-columns:1fr;gap:8px}
    @media(min-width:640px){.worker-cards-grid{grid-template-columns:repeat(2,1fr)}}
    @media(min-width:1280px){.worker-cards-grid{grid-template-columns:repeat(3,1fr)}}
    .worker-cards-grid #empty-state{grid-column:1/-1}
    .worker-card{min-width:0}

    .worker-name {
      font-size: 19px;
      font-weight: 900;
      color: #123B64;
      letter-spacing: .2px;
    }

    .worker-detail-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 4px 10px;
      margin-top: 6px;
      padding-top: 6px;
      border-top: 1px solid rgba(224, 196, 122, .65);
    }

    .worker-detail-item {
      font-size: 12.5px;
      color: #52606d;
    }

    .worker-detail-item strong {
      color: #4A3117;
    }

    @media (max-width: 640px) {
      .worker-detail-grid {
        grid-template-columns: 1fr;
      }
    }

    .delete-btn {
      border: 0;
      background: transparent;
      color: #ef4444;
      cursor: pointer;
      font-size: 18px;
    }

    .empty-message {
      color: #94a3b8;
    }

    .toast {
      position: fixed;
      left: 20px;
      bottom: 20px;
      z-index: 100;
      padding: 13px 18px;
      border-radius: 12px;
      background: #123B64;
      color: #fff;
      box-shadow: 0 10px 30px rgba(0,0,0,.18);
      font-weight: 600;
      transform: translateY(120px);
      opacity: 0;
      transition: .3s;
    }

    .toast.show {
      transform: translateY(0);
      opacity: 1;
    }

    @media (max-width: 640px) {
      .login-box {
        padding: 28px 20px;
      }

      .app-header {
        padding: 12px;
      }

    }
  
    .worker-actions-bar {
      display:flex !important;
      flex-wrap:wrap !important;
      gap:.4rem !important;
      align-items:center !important;
      width:100% !important;
      margin-top:.4rem !important;
      padding-top:.4rem !important;
      border-top:1px solid rgba(15,23,42,.10) !important;
    }
    .worker-actions-bar select { min-width:0 !important; flex:1 1 120px !important; }
    .worker-transfer-btn, .worker-delete-btn {
      display:inline-flex !important;
      align-items:center !important;
      justify-content:center !important;
      min-height:38px !important;
      cursor:pointer !important;
    }
    .worker-transfer-btn { background:#ecfdf5 !important; border:1px solid #86efac !important; color:#166534 !important; }
    .worker-delete-btn { background:#fef2f2 !important; border:1px solid #fca5a5 !important; color:#b91c1c !important; }
    .audit-action-badge { display:inline-flex; align-items:center; gap:.35rem; border-radius:999px; padding:.25rem .65rem; font-size:.75rem; font-weight:800; }
    .audit-add { background:#dcfce7; color:#166534; }
    .audit-update { background:#F6E9C9; color:#123B64; }
    .audit-delete { background:#fee2e2; color:#b91c1c; }
    .audit-other { background:#f1f5f9; color:#475569; }
    
    .planning-worker-card {
      transition: .18s;
      box-shadow: 0 1px 2px rgba(15,23,42,.04);
    }
    .planning-worker-card:hover,
    .planning-worker-card:focus-visible {
      transform: translateY(-2px);
      box-shadow: 0 10px 22px rgba(18,59,100,.12);
      outline: none;
    }
    .planning-modal-attendance-btn {
      background:#fff;
      border-color:#e2e8f0;
      color:#475569;
      transition:.15s;
      cursor:pointer;
    }
    .planning-modal-attendance-btn.active[data-status="present"] {
      background:#dcfce7; border-color:#86efac; color:#166534;
    }
    .planning-modal-attendance-btn.active[data-status="absent"] {
      background:#fee2e2; border-color:#fca5a5; color:#b91c1c;
    }



    /* =========================
       HOME — ALBATOUL GROUP FOOTER
    ========================= */
    #page-home {
      position: relative;
      overflow: hidden;
      min-height: calc(100vh - 110px);
      padding-bottom: 30px;
    }

    .albatoul-group-section {
      position: relative;
      margin-top: 8px;
      min-height: 300px;
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
      isolation: isolate;
      border-radius: 28px;
      background:
        radial-gradient(circle at 50% 35%, rgba(255,255,255,.98), rgba(255,255,255,.78) 45%, rgba(251,243,223,.72) 100%);
      border: 1px solid rgba(18,59,100,.10);
      box-shadow: 0 18px 50px rgba(18,59,100,.10);
    }

    .albatoul-group-section::after {
      content: "";
      position: absolute;
      inset: 0;
      z-index: -1;
      background: radial-gradient(circle at 50% 50%, rgba(18,59,100,.06), transparent 52%);
      pointer-events: none;
    }

    .group-content {
      position: relative;
      z-index: 2;
      width: min(900px, 100%);
      padding: 30px 24px 26px;
      text-align: center;
    }

    .group-logo {
      width: 92px;
      height: 92px;
      object-fit: contain;
      display: block;
      margin: 0 auto 10px;
      filter: drop-shadow(0 10px 18px rgba(18,59,100,.20));
      animation: groupLogoFloat 4s ease-in-out infinite;
    }

    @keyframes groupLogoFloat {
      0%, 100% { transform: translateY(0); }
      50% { transform: translateY(-5px); }
    }

    .group-title {
      margin: 0;
      font-size: clamp(1.35rem, 2.4vw, 2rem);
      font-weight: 900;
      letter-spacing: -.02em;
      color: #123B64;
      text-shadow: 0 2px 12px rgba(18,59,100,.10);
    }

    .group-divider {
      width: 82px;
      height: 3px;
      margin: 10px auto 17px;
      border-radius: 999px;
      background: linear-gradient(90deg, transparent, #123B64, transparent);
    }

    .group-companies {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 9px;
      max-width: 850px;
      margin: 0 auto;
    }

    .group-company {
      padding: 9px 17px;
      border-radius: 999px;
      background: rgba(255,255,255,.82);
      border: 1px solid rgba(18,59,100,.13);
      color: #123B64;
      font-size: .9rem;
      font-weight: 800;
      box-shadow: 0 6px 18px rgba(15,23,42,.07);
      backdrop-filter: blur(7px);
      -webkit-backdrop-filter: blur(7px);
      transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
    }

    .group-company:hover {
      transform: translateY(-3px);
      border-color: rgba(18,59,100,.28);
      box-shadow: 0 12px 24px rgba(18,59,100,.13);
    }

    .group-tagline {
      margin: 16px 0 0;
      color: #64748b;
      font-size: .76rem;
      font-weight: 700;
      letter-spacing: .08em;
    }

    @media (max-width: 640px) {
      .albatoul-group-section { min-height: 360px; }
    }

    @media (prefers-reduced-motion: reduce) {
      .group-logo {
        animation: none !important;
      }
    }


/* Compact advances list */
#attendance-advances-section{padding:12px!important}
#attendance-advances-section>div:first-child{gap:8px!important;margin-bottom:10px!important}
#attendance-advances-section input,#attendance-advances-section button{padding:6px 10px!important;font-size:13px!important}
#attendance-advances-section h3{font-size:16px!important}
#attendance-advances-section p{font-size:12px!important}
.attendance-advances-wrap{overflow-x:auto;max-height:calc(100vh - 245px);overflow-y:auto}
.attendance-advances-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px;line-height:1.15}
.attendance-advances-table th,.attendance-advances-table td{padding:5px 6px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.attendance-advances-table th:nth-child(1),.attendance-advances-table td:nth-child(1){width:30%}
.attendance-advances-table th:nth-child(2),.attendance-advances-table td:nth-child(2){width:12%;text-align:center}
.attendance-advances-table th:nth-child(3),.attendance-advances-table td:nth-child(3){width:20%;text-align:center}
.attendance-advances-table th:nth-child(4),.attendance-advances-table td:nth-child(4){width:18%;text-align:center}
.attendance-advances-table th:nth-child(5),.attendance-advances-table td:nth-child(5){width:20%;text-align:center}
.attendance-advances-table th{position:sticky;top:0;z-index:2}
#attendance-advances-empty{padding:20px!important}

/* ===== BLOCK 2: albatoul-redesign-v1 ===== */
:root{--aw-blue:#123B64;--aw-bg:#FAF6EC;--aw-text:#241708;--aw-muted:#64748b}
body{background:#FAF6EC!important;color:var(--aw-text)}
#app{min-height:100vh;background:#FAF6EC}
.app-header{position:sticky!important;top:0;z-index:40;background:rgba(255,255,255,.97)!important;border-bottom:1px solid #F3E9D2!important;box-shadow:0 1px 12px rgba(15,23,42,.05)!important;margin-right:250px}
.app-header .max-width{max-width:none!important;padding:14px 34px!important}
.app-header .text-center.sm\:text-right{text-align:right!important}
.app-header h1{color:#123B64!important;font-size:1.25rem!important}
.app-header .welcome-user{display:inline-block;margin-top:5px!important;background:#FBF0D9;color:#123B64;padding:3px 12px;border-radius:999px;font-size:.78rem;font-weight:800}
.app-header nav{display:none!important}
.aw-sidebar{position:fixed;inset:0 0 0 auto;width:250px;z-index:60;display:flex;flex-direction:column;background:linear-gradient(180deg,#123B64 0%,#16497D 55%,#0B2A4A 100%);color:#fff;box-shadow:-10px 0 35px rgba(18,59,100,.16);direction:rtl}
.aw-side-nav{padding:12px 10px;display:flex;flex-direction:column;gap:5px;overflow:auto}
.aw-side-nav button,.aw-side-logout{width:100%;border:0;background:transparent;color:#fff;min-height:54px;border-radius:12px;display:flex;align-items:center;gap:13px;padding:0 18px;font-family:inherit;font-size:.96rem;font-weight:700;cursor:pointer;text-align:right;transition:background .18s,transform .18s}
.aw-side-nav button b,.aw-side-logout b{width:27px;font-size:1.25rem;text-align:center;font-weight:800}
.aw-side-nav button:hover,.aw-side-logout:hover{background:rgba(255,255,255,.10);transform:translateX(-2px)}
.aw-side-logout{margin:auto 10px 16px;width:calc(100% - 20px);border-top:1px solid rgba(255,255,255,.12);border-radius:10px}
#page-home{margin-right:250px;max-width:none!important;min-height:calc(100vh - 86px);padding:28px 34px 18px!important;overflow:visible!important;background:#FAF6EC}
#app>main:not(#page-home){margin-right:250px;max-width:none!important}
.aw-hero{text-align:center;padding:4px 0 8px}.aw-hero h2{margin:0;font-size:clamp(1.65rem,2.5vw,2.2rem);font-weight:900;color:#241708}.aw-hero p{margin:8px 0 10px;color:#66758a;font-size:1rem}.aw-hero-line{display:block;width:76px;height:3px;margin:0 auto;border-radius:99px;background:#C9962C}
.aw-home-cover{width:calc(100% + 68px);max-width:none;height:clamp(190px,23vw,385px);min-height:0;margin:0 -34px 20px;overflow:hidden;border-radius:18px;box-shadow:0 16px 42px rgba(18,59,100,.14);border:1px solid rgba(18,59,100,.10);background:#fff;line-height:0;display:flex;align-items:center;justify-content:center}
 .aw-home-cover img{display:block;width:100%;height:100%;max-width:none;object-fit:fill;object-position:center center}
 @media(max-width:1100px){.aw-home-cover{width:calc(100% + 48px);margin-left:-24px;margin-right:-24px;height:clamp(180px,24vw,335px)}}
 @media(max-width:760px){.aw-home-cover{width:calc(100% + 32px);height:clamp(148px,25vw,245px);margin:0 -16px 16px;border-radius:14px}.aw-home-cover img{width:100%;height:100%;object-fit:fill;object-position:center center}}
 @media(max-width:560px){.aw-home-cover{width:calc(100% + 20px);height:clamp(120px,25vw,190px);margin-left:-10px;margin-right:-10px;border-radius:11px}.aw-home-cover img{width:100%;height:100%;object-fit:cover}}
 .aw-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:12px}
.aw-stat-card{min-height:132px;background:#fff;border:1px solid #EFE2C0;border-radius:17px;padding:22px 20px;display:flex;align-items:center;gap:17px;box-shadow:0 8px 24px rgba(15,23,42,.055);transition:transform .18s,box-shadow .18s}
.aw-stat-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(15,23,42,.09)}.aw-stat-card>div:last-child{min-width:0}.aw-stat-card span{display:block;font-size:.84rem;color:#202938;font-weight:800}.aw-stat-card strong{display:block;font-size:2.25rem;line-height:1.1;font-weight:900}.aw-stat-card small{display:flex;align-items:center;gap:7px;margin-top:7px;color:#64748b;font-size:.75rem;font-weight:700}.aw-stat-card small i{width:7px;height:7px;border-radius:50%;display:inline-block}.aw-stat-icon{width:70px;height:70px;flex:0 0 70px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.65rem;font-weight:900}
.aw-stat-purple .aw-stat-icon{background:#F5E0D5;color:#A6431F}.aw-stat-purple strong{color:#A6431F}.aw-stat-purple small i{background:#A6431F}
.aw-stat-green .aw-stat-icon{background:#e5f8ee;color:#1b9a5a}.aw-stat-green strong{color:#159447}.aw-stat-green small i{background:#159447}
.aw-stat-blue .aw-stat-icon{background:#FBF0D9;color:#C9962C}.aw-stat-blue strong{color:#C9962C}.aw-stat-blue small i{background:#C9962C}
.aw-stat-orange .aw-stat-icon{background:#fff0df;color:#ff7514}.aw-stat-orange strong{color:#ff7514}.aw-stat-orange small i{background:#ff7514}
.aw-emirate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:2px}
.aw-emirate-card{background:#fff;border:1px solid #EFE2C0;border-top:4px solid #C9962C;border-radius:17px;padding:18px 20px 20px;box-shadow:0 8px 24px rgba(15,23,42,.055);transition:transform .18s,box-shadow .18s}
.aw-emirate-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(15,23,42,.09)}
.aw-emirate-card.aw-emirate-abudhabi{border-top-color:#A6431F}
.aw-emirate-head{display:flex;align-items:center;gap:9px;margin-bottom:14px}
.aw-emirate-flag{font-size:1.25rem;line-height:1}
.aw-emirate-head h4{margin:0;font-size:1.05rem;font-weight:900;color:#241708}
.aw-emirate-head strong{margin-inline-start:auto;font-size:1.7rem;font-weight:900;color:#241708}
.aw-emirate-body{display:flex;gap:10px}
.aw-emirate-pill{flex:1;border:1px solid #EFE2C0;background:#FAF6EC;border-radius:13px;padding:11px 8px;font-family:inherit;cursor:pointer;text-align:center;transition:transform .15s,box-shadow .15s,background .15s}
.aw-emirate-pill:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(15,23,42,.08)}
.aw-emirate-pill span{display:block;font-size:.75rem;font-weight:800;color:#66758a;margin-bottom:4px}
.aw-emirate-pill strong{display:block;font-size:1.45rem;font-weight:900}
.aw-emirate-pill.aw-emirate-present strong{color:#159447}
.aw-emirate-pill.aw-emirate-absent strong{color:#ff7514}
@media(max-width:760px){.aw-emirate-grid{grid-template-columns:1fr}}
.aw-section-title{display:flex;align-items:center;gap:14px;margin:35px 0 22px}.aw-section-title>span{height:1px;background:#E4D8B4;flex:1}.aw-section-title h3{margin:0;font-size:1.25rem;font-weight:900;color:#241708;white-space:nowrap}.aw-section-title h3:before{content:"◆";color:#C9962C;font-size:.65rem;margin-left:13px}.aw-section-title h3:after{content:"◆";color:#C9962C;font-size:.65rem;margin-right:13px}
.aw-task-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.aw-task-card{min-height:205px;padding:17px 18px 15px;border:1px solid #EFE2C0;border-radius:17px;background:#fff;box-shadow:0 7px 22px rgba(15,23,42,.05);text-align:center;font-family:inherit;cursor:pointer;transition:transform .18s,box-shadow .18s}.aw-task-card:hover{transform:translateY(-3px);box-shadow:0 15px 30px rgba(15,23,42,.09)}
.aw-task-icon{width:54px;height:54px;border-radius:50%;margin:0 auto 10px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:900;font-size:1.3rem}.aw-task-card h4{margin:0 0 7px;color:#241708;font-size:1rem;font-weight:900}.aw-task-card p{margin:0 auto 13px;color:#66758a;font-size:.77rem;line-height:1.8;max-width:230px;min-height:44px}.aw-task-card>span{display:block;width:86%;margin:0 auto;border:1px solid currentColor;border-radius:8px;padding:7px 10px;font-size:.77rem;font-weight:800}
.aw-task-teal{color:#1E8A8A}.aw-task-teal .aw-task-icon{background:#1E8A8A}.aw-task-blue{color:#C9962C}.aw-task-blue .aw-task-icon{background:#C9962C}.aw-task-green{color:#18a457}.aw-task-green .aw-task-icon{background:#18a457}.aw-task-purple{color:#A6431F}.aw-task-purple .aw-task-icon{background:#A6431F}.aw-task-orange{color:#ff7a16}.aw-task-orange .aw-task-icon{background:#ff7a16}.aw-task-cyan{color:#1E8A8A}.aw-task-cyan .aw-task-icon{background:#1E8A8A}.aw-task-violet{color:#A6431F}.aw-task-violet .aw-task-icon{background:#A6431F}.aw-task-red{color:#ef4444}.aw-task-red .aw-task-icon{background:#ef4444}
.aw-footer{text-align:center;color:#68758a;font-size:.78rem;padding:24px 0 4px}
@media(max-width:1100px){.aw-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.aw-task-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.aw-sidebar{width:76px}.aw-side-nav{padding:9px 7px}.aw-side-nav button,.aw-side-logout{justify-content:center;padding:0;min-height:48px}.aw-side-nav button span,.aw-side-logout span{display:none}.aw-side-nav button b,.aw-side-logout b{width:auto}.app-header,#page-home,#app>main:not(#page-home){margin-right:76px}.app-header .max-width{padding:12px 16px!important}#page-home{padding:20px 16px!important}}
@media(max-width:560px){.aw-stats-grid,.aw-task-grid{grid-template-columns:1fr}.aw-stat-card{min-height:112px}}
.aw-nav-group{width:100%;display:flex;flex-direction:column;gap:3px}.aw-nav-group-toggle{position:relative!important;min-height:52px!important;background:rgba(255,255,255,.045)!important;border:1px solid rgba(255,255,255,.08)!important}.aw-nav-group-toggle i{margin-inline-start:auto;font-style:normal;font-size:1rem;transition:transform .18s}.aw-nav-group.open .aw-nav-group-toggle i{transform:rotate(180deg)}.aw-nav-group-children{display:none;flex-direction:column;gap:3px;padding:3px 7px 5px 0}.aw-nav-group.open .aw-nav-group-children{display:flex}.aw-nav-group-children button{min-height:43px!important;padding:0 13px!important;font-size:.86rem!important;border-radius:9px!important;background:rgba(255,255,255,.025)!important}.aw-nav-group-children button:hover{background:rgba(201,150,44,.14)!important}.aw-nav-group-toggle.aw-group-active{background:rgba(201,150,44,.18)!important;border-color:rgba(201,150,44,.38)!important}

/* ===== BLOCK 3: aw-header-logo-final ===== */
.app-header{height:auto!important;min-height:86px!important;background:#fff!important}
.app-header .max-width{width:100%!important;max-width:none!important;padding:12px 28px!important}
.aw-header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;direction:rtl}
.aw-header-brand{display:flex;align-items:center;gap:14px;min-width:0;flex:1 1 auto}
.aw-header-logo{width:72px;height:72px;object-fit:contain;display:block;flex:0 0 auto;filter:drop-shadow(0 6px 12px rgba(18,59,100,.14))}
.aw-header-brand-text{min-width:0;overflow:hidden}
.aw-header-brand-text h1{margin:0;color:#123B64;font-size:1.35rem;font-weight:900;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aw-header-brand-text p{margin:5px 0 0;color:#64748b;font-size:.88rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aw-header-user{display:flex;align-items:center;gap:11px;direction:ltr}
.aw-user-avatar{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #e6ebf2;box-shadow:0 3px 12px rgba(15,23,42,.08);font-size:1.5rem;padding:0;overflow:hidden;cursor:pointer;flex:0 0 auto}
.aw-user-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.aw-user-avatar:hover{box-shadow:0 5px 16px rgba(15,23,42,.16)}
.aw-user-info{display:flex;flex-direction:column;align-items:flex-start;direction:rtl;min-width:100px}
.aw-user-info strong{font-size:.92rem;color:#241708}
.aw-user-info span{display:inline-block;margin-top:4px;background:#FBF0D9;color:#123B64;padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:800}
.aw-header-actions{display:flex;align-items:center;gap:5px;margin-right:8px}
.aw-head-icon{width:40px;height:40px;border:0;background:transparent;border-radius:10px;font-size:1.2rem;color:#334155;cursor:pointer}
.aw-head-icon:hover{background:#f1f5f9}
@media(max-width:760px){.app-header .max-width{padding:9px 14px!important}.aw-header-inner{gap:8px}.aw-header-logo{width:44px;height:44px}.aw-header-brand{gap:8px}.aw-header-brand-text h1{font-size:.92rem}.aw-header-brand-text p{display:none}.aw-header-user{gap:6px}.aw-user-info{display:none}.aw-header-actions{margin-right:0;gap:0}.aw-head-icon{width:30px;height:30px;font-size:1rem}.aw-user-avatar{width:36px;height:36px;font-size:1.1rem}}

/* ===== BLOCK 4: pharaonic-identity ===== */
:root{
    --ph-gold:#C9962C;
    --ph-gold-light:#E4C878;
    --ph-gold-dark:#8A6A1B;
    --ph-lapis:#123B64;
    --ph-lapis-dark:#0B2A4A;
    --ph-turquoise:#1E8A8A;
    --ph-terracotta:#A6431F;
    --ph-basalt:#241708;
    --ph-papyrus:#FAF6EC;
  }

  h1, h2, h3, .login-title, .group-title, .aw-hero h2, .worker-name {
    font-family: 'Amiri', 'Cairo', serif;
  }

  /* Faint recurring papyrus/sun texture on the whole app */
  body{
    background-image:
      radial-gradient(circle at 12% 8%, rgba(201,150,44,.10), transparent 32%),
      radial-gradient(circle at 88% 92%, rgba(18,59,100,.08), transparent 34%) !important;
    background-color: var(--ph-papyrus) !important;
  }

  /* -------- LOGIN SCREEN -------- */
  /* background photo is set on #login-screen itself; keep this theme
     from overriding it. Decorative pyramid pseudo-elements are disabled
     here since the photo already carries the branding. */
  #login-screen::before,
  #login-screen::after{
    display: none !important;
  }
  .login-box{ position:relative; border: 1px solid rgba(201,150,44,.35) !important; overflow:hidden; }
  .login-box::before{
    content:""; position:absolute; top:0; left:0; right:0;
    background: repeating-linear-gradient(90deg,
      var(--ph-gold) 0 16px, var(--ph-lapis) 16px 32px,
      var(--ph-terracotta) 32px 40px, var(--ph-lapis) 40px 56px);
    height:6px;
  }
  .login-logo{ border: 3px solid var(--ph-gold); box-shadow: 0 0 0 5px rgba(201,150,44,.15), 0 10px 24px rgba(201,150,44,.25) !important; position:relative; }
  .login-title::before, .login-title::after{ content:"☥"; color: var(--ph-gold); font-size: 22px; margin: 0 10px; vertical-align: middle; }
  .login-btn{ background: linear-gradient(135deg, var(--ph-gold), var(--ph-lapis)) !important; box-shadow: 0 9px 22px rgba(201,150,44,.30) !important; }
  .login-btn:hover{ background: linear-gradient(135deg, var(--ph-gold-light), var(--ph-lapis-dark)) !important; }
  .login-divider span{ background: var(--ph-gold) !important; box-shadow: 0 0 0 5px #FBF3DF !important; }
  .login-secure-badge{ border-color: var(--ph-gold-dark) !important; color: var(--ph-gold-dark) !important; }

  /* -------- SIDEBAR / HEADER -------- */
  .aw-sidebar{
    background: linear-gradient(180deg, var(--ph-lapis-dark) 0%, var(--ph-lapis) 55%, var(--ph-lapis-dark) 100%) !important;
    border-left: 4px solid var(--ph-gold);
  }
  .aw-side-nav button:hover{ background: rgba(201,150,44,.14) !important; }
  .aw-side-logout{ border-top-color: rgba(201,150,44,.30) !important; }

  .app-header{ position: relative; }
  .app-header::before{
    content:""; position:absolute; top:0; left:0; right:0;
    background: repeating-linear-gradient(90deg,
      var(--ph-gold) 0 16px, var(--ph-lapis) 16px 32px,
      var(--ph-terracotta) 32px 40px, var(--ph-lapis) 40px 56px);
    height:4px;
  }
  .aw-header-logo, .group-logo{ filter: drop-shadow(0 6px 14px rgba(201,150,44,.35)) !important; border-radius: 12px; }

  /* -------- SECTION TITLES / DIVIDERS -------- */
  .aw-section-title h3:before, .aw-section-title h3:after{ content:"☥" !important; color: var(--ph-gold) !important; font-size: .8rem !important; }
  .aw-hero-line{ background: linear-gradient(90deg, transparent, var(--ph-gold), transparent) !important; height: 4px !important; }
  .group-divider{ background: linear-gradient(90deg, transparent, var(--ph-gold), transparent) !important; height: 4px !important; }
  .group-title::before, .group-title::after{ content:"☥"; color: var(--ph-gold); margin: 0 12px; }

  /* -------- CARDS / BUTTONS -------- */
  .btn-blue{ background: linear-gradient(135deg, var(--ph-gold), var(--ph-lapis)) !important; box-shadow: 0 4px 12px rgba(201,150,44,.30) !important; }
  .btn-blue:hover{ background: linear-gradient(135deg, var(--ph-gold-light), var(--ph-lapis-dark)) !important; }
  .aw-stat-card, .aw-task-card, .glass, .site-card, .worker-card, .planning-worker-card{
    border-color: rgba(201,150,44,.22) !important;
  }
  .albatoul-group-section{ border-color: rgba(201,150,44,.25) !important; }

  /* -------- SCROLLBAR -------- */
  ::-webkit-scrollbar{ width:10px; height:10px; }
  ::-webkit-scrollbar-track{ background: #F3E9D2; }
  ::-webkit-scrollbar-thumb{ background: var(--ph-gold); border-radius: 10px; }
  ::-webkit-scrollbar-thumb:hover{ background: var(--ph-gold-dark); }

/* ===== BLOCK 5: home-attendance-details-styles ===== */
.aw-stat-clickable{width:100%;text-align:inherit;font-family:inherit;border:1px solid #EFE2C0;cursor:pointer}
.aw-stat-clickable:focus-visible{outline:3px solid rgba(201,150,44,.28);outline-offset:3px}
.home-attendance-modal{position:fixed;inset:0;background:rgba(15,23,42,.58);z-index:250;display:flex;align-items:center;justify-content:center;padding:18px}
.home-attendance-card{width:min(720px,100%);max-height:min(82vh,760px);overflow:hidden;background:#fff;border-radius:22px;box-shadow:0 30px 90px rgba(0,0,0,.28);border:1px solid #E6D6AE;display:flex;flex-direction:column}
.home-attendance-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid #eee5d2;background:#FAF6EC}
.home-attendance-head h3{margin:0;color:#123B64;font-size:1.15rem;font-weight:900}.home-attendance-head p{margin:4px 0 0;color:#64748b;font-size:.78rem;font-weight:700}
.home-attendance-close{width:38px;height:38px;border:0;border-radius:10px;background:#fff;color:#475569;font-size:24px;cursor:pointer}.home-attendance-close:hover{background:#f1f5f9}
.home-attendance-summary{display:flex;gap:10px;align-items:center;padding:13px 20px;border-bottom:1px solid #f1eadb}.home-attendance-count{font-size:1.8rem;font-weight:900;color:#123B64}.home-attendance-label{color:#64748b;font-weight:800;font-size:.85rem}
.home-attendance-list{padding:14px 20px 20px;overflow:auto;display:flex;flex-direction:column;gap:9px}.home-attendance-row{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;padding:11px 12px;border:1px solid #eee5d2;border-radius:13px;background:#fff}.home-attendance-avatar{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#FBF0D9;color:#123B64;font-weight:900}.home-attendance-name{font-weight:900;color:#123B64}.home-attendance-meta{margin-top:3px;color:#64748b;font-size:.72rem;font-weight:700}.home-attendance-status{padding:5px 9px;border-radius:999px;font-size:.7rem;font-weight:900;background:#ecfdf5;color:#166534}.home-attendance-status.absent{background:#fff1f2;color:#b91c1c}.home-attendance-empty{text-align:center;padding:35px 15px;color:#94a3b8;font-weight:800}
@media(max-width:560px){.home-attendance-modal{padding:10px}.home-attendance-card{max-height:90vh;border-radius:17px}.home-attendance-head{padding:15px}.home-attendance-list{padding:12px}.home-attendance-row{grid-template-columns:38px 1fr}.home-attendance-status{grid-column:2;justify-self:start}.home-attendance-avatar{width:38px;height:38px}}

/* ===== BLOCK 6: lpo-styles ===== */
.lpo-shell{display:flex;flex-direction:column;gap:20px}.lpo-hero{padding:24px 26px;border-radius:20px;display:flex;align-items:center;justify-content:space-between;gap:16px}.lpo-kicker{font-size:.72rem;letter-spacing:.16em;color:#C9962C;font-weight:900}.lpo-hero h2{margin:3px 0;font-size:2rem;color:#123B64}.lpo-hero p{margin:4px 0 0;color:#64748b}.lpo-role-badge,.lpo-serial-preview{background:#FBF0D9;color:#123B64;border:1px solid #E4C878;border-radius:999px;padding:8px 14px;font-weight:900;white-space:nowrap}.lpo-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.lpo-section-head.compact{margin-top:24px}.lpo-section-head h3{margin:0;color:#123B64;font-size:1.2rem;font-weight:900}.lpo-section-head p{margin:4px 0 0;color:#64748b;font-size:.82rem}.lpo-form-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;align-items:start}.lpo-form-grid>label{min-width:0}.lpo-form-grid>label:nth-child(2){grid-column:span 2}.lpo-form-grid>label:nth-child(5){grid-column:span 2}.lpo-form-grid>label:nth-child(6){grid-column:span 3}.lpo-supplier-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}.lpo-supplier-fields select,.lpo-supplier-fields input{width:100%!important;min-width:0}.lpo-custom-supplier-wrap{margin:0!important;width:100%;display:block!important}.lpo-form-grid>label:nth-last-child(1){grid-column:1/-1}.lpo-payment-box{display:grid;grid-template-columns:1.35fr 1fr;gap:16px;margin-top:16px;align-items:start}.lpo-form-grid label,.lpo-payment-box label,.lpo-revision-box{display:flex;flex-direction:column;gap:7px;min-width:0}.lpo-form-grid label>span,.lpo-payment-box label>span,.lpo-revision-box>span{font-size:.8rem;font-weight:900;color:#4A3117;min-height:18px}.lpo-form-grid input,.lpo-form-grid select,.lpo-payment-box input,.lpo-inline input,.lpo-revision-box textarea,.lpo-phone-row input{width:100%;box-sizing:border-box;border:1px solid #E0C47A;border-radius:10px;padding:11px 12px;background:#fff;font-family:inherit;min-height:44px;outline:none;transition:border-color .15s,box-shadow .15s}.lpo-form-grid input:focus,.lpo-form-grid select:focus,.lpo-payment-box input:focus,.lpo-phone-row input:focus{border-color:#C9962C;box-shadow:0 0 0 3px rgba(201,150,44,.10)}.lpo-items-wrap{overflow:auto;border:1px solid #EFE2C0;border-radius:14px}.lpo-table{width:100%;border-collapse:collapse;min-width:820px}.lpo-table th{background:#123B64;color:#fff;padding:11px 9px;font-size:.75rem}.lpo-table td{padding:9px;border-bottom:1px solid #f0e7d2;background:#fff;vertical-align:middle}.lpo-table input,.lpo-table select{width:100%;min-width:80px;border:1px solid #E0C47A;border-radius:8px;padding:8px;background:#fff;font-family:inherit}.lpo-table .amount-cell{font-weight:900;color:#123B64;white-space:nowrap}.lpo-table tr.lpo-dup-row td{background:#fff1f2!important}.lpo-remove{border:0;background:#fff1f2;color:#b91c1c;border-radius:8px;padding:7px 10px;cursor:pointer;font-weight:900}.lpo-bottom-grid{display:grid;grid-template-columns:1fr 330px;gap:18px;margin-top:18px}.lpo-catalog-card{background:#FAF6EC;border:1px solid #EFE2C0;border-radius:14px;padding:16px}.lpo-catalog-card h4{margin:0 0 12px;color:#123B64}.lpo-inline{display:grid;grid-template-columns:1.6fr .7fr .7fr auto;gap:8px}.lpo-catalog-hint{margin:-6px 0 10px;color:#64748b;font-size:.78rem}.lpo-phone-list{display:flex;flex-direction:column;gap:10px;width:100%}.lpo-phone-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr) auto;gap:10px;align-items:center}.lpo-phone-row input{min-width:0}.lpo-phone-row:first-child{} .lpo-phone-row{min-height:44px}.lpo-phone-list:empty::before{content:"أضف اسم صاحب الرقم ورقم الهاتف";display:block;color:#94a3b8;font-size:.8rem;padding:8px 0}.lpo-phone-add{border:1px dashed #C9962C;background:#fffaf0;color:#123B64;border-radius:9px;padding:7px 10px;font-family:inherit;font-weight:900;cursor:pointer}.lpo-phone-remove{border:1px solid #fecaca;background:#fff1f2;color:#b91c1c;border-radius:8px;padding:7px 10px;cursor:pointer;font-weight:900}.lpo-custom-supplier-wrap{margin-top:8px;width:100%}.lpo-custom-supplier-wrap.hidden{display:none!important}
.lpo-supplier-switcher{display:flex;gap:8px;flex-wrap:wrap}
.lpo-supplier-btn{border:1px solid #d9c99f;background:#fff;color:#123B64;border-radius:999px;padding:9px 18px;font-family:inherit;font-weight:900;cursor:pointer;transition:.18s;position:relative}.lpo-supplier-delete{margin-inline-start:8px;color:#b91c1c;font-weight:900;padding:0 3px;border-radius:999px;cursor:pointer}.lpo-supplier-delete:hover{background:#fecaca}.lpo-supplier-btn.active .lpo-supplier-delete{color:#fff}.lpo-supplier-btn.active .lpo-supplier-delete:hover{background:rgba(255,255,255,.25)}
.lpo-supplier-btn:hover{transform:translateY(-1px)}
.lpo-supplier-btn.active{background:linear-gradient(135deg,#C9962C,#123B64);color:#fff;border-color:#C9962C;box-shadow:0 4px 12px rgba(18,59,100,.16)}
.lpo-catalog-divider{height:1px;background:#eadfca;margin:14px 0}.lpo-totals{background:#fff;border:1px solid #E0C47A;border-radius:14px;padding:14px}.lpo-totals>div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #f1ead9}.lpo-totals>div:last-child{border-bottom:0}.lpo-totals span{font-weight:800;color:#64748b}.lpo-totals strong{color:#123B64}.lpo-totals .grand{font-size:1.05rem;padding-top:13px}.lpo-totals .grand strong{font-size:1.3rem;color:#087f5b}.lpo-vat-input{width:58px;border:1px solid #E0C47A;border-radius:7px;padding:2px 5px;text-align:center}.lpo-actions{display:flex;justify-content:flex-start;gap:10px;margin-top:18px}.lpo-send{border:0;background:linear-gradient(135deg,#087f5b,#123B64);color:#fff;border-radius:11px;padding:12px 28px;font-family:inherit;font-weight:900;cursor:pointer;box-shadow:0 7px 18px rgba(18,59,100,.18)}.lpo-secondary{border:1px solid #D9C99F;background:#fff;color:#123B64;border-radius:10px;padding:10px 16px;font-family:inherit;font-weight:800;cursor:pointer}.lpo-orders-list{display:flex;flex-direction:column;gap:10px}.lpo-order-card{border:1px solid #EFE2C0;background:#fff;border-radius:14px;padding:15px;display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center}.lpo-order-title{font-weight:900;color:#123B64}.lpo-order-meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:6px}.lpo-chip{border:1px solid #e5e7eb;background:#f8fafc;border-radius:999px;padding:4px 9px;font-size:.72rem;font-weight:800;color:#475569}.lpo-chip.status-draft{background:#fff3cd;color:#92620a}.lpo-chip.status-sent{background:#eff6ff;color:#1d4ed8}.lpo-chip.status-hold{background:#fff7ed;color:#c2410c}.lpo-chip.status-revision{background:#fff1f2;color:#b91c1c}.lpo-chip.status-approved{background:#ecfdf5;color:#166534}.lpo-order-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.lpo-review-btn{border:1px solid #C9962C;background:#FBF0D9;color:#123B64;border-radius:9px;padding:8px 12px;font-family:inherit;font-weight:900;cursor:pointer}.lpo-empty{text-align:center;color:#94a3b8;padding:24px}.lpo-modal{position:fixed;inset:0;background:rgba(15,23,42,.52);z-index:120;display:flex;align-items:center;justify-content:center;padding:20px}.lpo-modal-card{background:#fff;width:min(1000px,100%);max-height:90vh;overflow:auto;border-radius:20px;padding:22px;box-shadow:0 30px 90px rgba(0,0,0,.25)}.lpo-close{border:0;background:#f1f5f9;border-radius:9px;width:36px;height:36px;font-size:24px;cursor:pointer}.lpo-review-actions{display:flex;gap:9px;justify-content:flex-start;margin-top:18px}.lpo-approve{background:#087f5b;color:#fff;border:0;border-radius:9px;padding:10px 16px;font-family:inherit;font-weight:900;cursor:pointer}.lpo-hold{background:#f59e0b;color:#fff;border:0;border-radius:9px;padding:10px 16px;font-family:inherit;font-weight:900;cursor:pointer}.lpo-revision{background:#b91c1c;color:#fff;border:0;border-radius:9px;padding:10px 16px;font-family:inherit;font-weight:900;cursor:pointer}.lpo-revision-box{margin-top:15px}.lpo-revision-box textarea{resize:vertical}.lpo-top-actions{display:flex;gap:8px;flex-wrap:wrap}.lpo-new-btn{background:linear-gradient(135deg,#C9962C,#123B64);color:#fff;border:0;border-radius:10px;padding:10px 16px;font-family:inherit;font-weight:900;cursor:pointer}.lpo-save-btn{border:1px solid #C9962C;background:#FBF0D9;color:#123B64;border-radius:11px;padding:12px 28px;font-family:inherit;font-weight:900;cursor:pointer}.lpo-save-btn:disabled,.lpo-send:disabled{opacity:.6;cursor:not-allowed}.lpo-notification-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#dc2626;color:#fff;font-size:.68rem;font-weight:900;margin-inline-start:6px}.lpo-notification-page{display:flex;flex-direction:column;gap:12px}.lpo-notification-card{border:1px solid #e8dfca;background:#fff;border-radius:14px;padding:15px;display:flex;align-items:flex-start;justify-content:space-between;gap:15px;cursor:pointer}.lpo-notification-card.unread{background:#fffaf0;border-inline-start:4px solid #C9962C}.lpo-notification-title{font-weight:900;color:#123B64}.lpo-notification-message{margin-top:5px;color:#475569;font-size:.88rem}.lpo-notification-time{font-size:.72rem;color:#94a3b8;white-space:nowrap}.lpo-notification-dot{width:9px;height:9px;border-radius:50%;background:#dc2626;display:inline-block;margin-inline-end:6px}.lpo-action-light{border:1px solid #cbd5e1;background:#fff;color:#123B64;border-radius:9px;padding:8px 11px;font-family:inherit;font-weight:800;cursor:pointer}.lpo-action-edit{border:1px solid #C9962C;background:linear-gradient(135deg,#fff8e7,#FBF0D9);color:#123B64;border-radius:9px;padding:8px 13px;font-family:inherit;font-weight:900;cursor:pointer;box-shadow:0 2px 7px rgba(201,150,44,.14)}.lpo-action-edit:hover{transform:translateY(-1px);box-shadow:0 5px 12px rgba(201,150,44,.20)}.lpo-action-revision{border:1px solid #fecaca;background:#fff1f2;color:#b91c1c;border-radius:9px;padding:8px 11px;font-family:inherit;font-weight:900;cursor:pointer}@media(max-width:650px){.lpo-supplier-switcher{display:grid;grid-template-columns:repeat(4,1fr)}.lpo-supplier-btn{width:100%;padding-inline:8px}}
@media(max-width:900px){.lpo-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lpo-bottom-grid{grid-template-columns:1fr}.lpo-inline{grid-template-columns:1fr 1fr}.lpo-inline button{grid-column:1/-1}.lpo-order-card{grid-template-columns:1fr}.lpo-order-actions{justify-content:flex-start}}
@media(max-width:560px){.lpo-hero{align-items:flex-start;flex-direction:column}.lpo-form-grid,.lpo-payment-box{grid-template-columns:1fr}.lpo-inline{grid-template-columns:1fr}.lpo-actions{flex-direction:column}.lpo-send,.lpo-secondary{width:100%}}


/* INTERNAL TASKS / ANNOUNCEMENTS */
.aw-task-modal{position:fixed;inset:0;background:rgba(15,23,42,.68);z-index:300;display:flex;align-items:center;justify-content:center;padding:18px}
.aw-task-modal.hidden{display:none!important}
.aw-task-popup-close-x{position:absolute;top:12px;inset-inline-end:12px;width:38px;height:38px;border:1px solid #e5e7eb;background:#fff;color:#123B64;border-radius:50%;font-size:1.25rem;font-weight:900;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2}.aw-task-popup-close-x:hover{background:#f8fafc}.aw-notify-card{position:relative}
.aw-notify-card{width:min(620px,100%);background:#fff;border-radius:22px;padding:24px;box-shadow:0 30px 90px rgba(0,0,0,.28);border:1px solid #eadfca}
.aw-notify-card.urgent{border:2px solid #dc2626}
.aw-task-kicker{font-size:.72rem;letter-spacing:.14em;color:#C9962C;font-weight:900;text-transform:uppercase}
.aw-notify-card h3{margin:4px 0 6px;color:#123B64;font-size:1.35rem}
.aw-notify-card p{color:#475569;line-height:1.8;margin:0}
.aw-task-meta{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}.aw-task-chip{border:1px solid #e5e7eb;background:#f8fafc;border-radius:999px;padding:5px 10px;font-size:.74rem;font-weight:800;color:#475569}.aw-task-chip.urgent{background:#fff1f2;color:#b91c1c;border-color:#fecaca}
.aw-task-form{display:grid;gap:12px}.aw-task-form label{display:flex;flex-direction:column;gap:6px;font-weight:900;color:#4A3117;font-size:.82rem}.aw-task-form input,.aw-task-form select,.aw-task-form textarea{box-sizing:border-box;width:100%;border:1px solid #E0C47A;border-radius:11px;padding:11px 12px;background:#fff;font-family:inherit;outline:none}.aw-task-form textarea{min-height:140px;resize:vertical}.aw-task-form input:focus,.aw-task-form select:focus,.aw-task-form textarea:focus{border-color:#C9962C;box-shadow:0 0 0 3px rgba(201,150,44,.10)}
.aw-task-actions{display:flex;gap:9px;justify-content:flex-start;margin-top:4px}.aw-task-primary{border:0;background:linear-gradient(135deg,#C9962C,#123B64);color:#fff;border-radius:11px;padding:11px 20px;font-family:inherit;font-weight:900;cursor:pointer}.aw-task-secondary{border:1px solid #D9C99F;background:#fff;color:#123B64;border-radius:11px;padding:11px 18px;font-family:inherit;font-weight:900;cursor:pointer}.aw-task-primary:disabled{opacity:.6;cursor:not-allowed}
.aw-task-list{display:flex;flex-direction:column;gap:10px}.aw-task-row{border:1px solid #e8dfca;background:#fff;border-radius:14px;padding:14px;display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.aw-task-row.unread{background:#fffaf0;border-inline-start:4px solid #C9962C}.aw-task-row-title{font-weight:900;color:#123B64}.aw-task-row-message{margin-top:5px;color:#475569;line-height:1.7;font-size:.88rem}.aw-task-row-meta{margin-top:7px;color:#94a3b8;font-size:.72rem}.aw-task-status{font-size:.72rem;font-weight:900;border-radius:999px;padding:5px 9px;white-space:nowrap}.aw-task-status.new{background:#eff6ff;color:#1d4ed8}.aw-task-status.done{background:#ecfdf5;color:#166534}.aw-task-status.progress{background:#fff7ed;color:#c2410c}
@media(max-width:600px){.aw-notify-card{padding:18px}.aw-task-actions{flex-direction:column}.aw-task-primary,.aw-task-secondary{width:100%}.aw-task-row{flex-direction:column}}
.aw-task-row-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.aw-task-mini{border:1px solid #d9c99f;background:#fff;color:#123B64;border-radius:8px;padding:6px 9px;font-family:inherit;font-weight:800;cursor:pointer;font-size:.72rem}.aw-task-mini.danger{border-color:#fecaca;background:#fff1f2;color:#b91c1c}.aw-task-mini.green{border-color:#bbf7d0;background:#ecfdf5;color:#166534}.aw-task-mini.blue{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.aw-task-timeline{display:flex;flex-direction:column;gap:8px;margin-top:12px}.aw-task-event{padding:9px 11px;border:1px solid #eee5d2;border-radius:10px;background:#fffaf0}.aw-task-event strong{color:#123B64}.aw-task-event small{display:block;color:#94a3b8;margin-top:2px}.aw-task-my-card{border-inline-start:4px solid #C9962C}.aw-task-my-status{width:170px;max-width:100%;padding:7px;border-radius:8px}.aw-task-reply{width:100%;min-height:75px;border:1px solid #E0C47A;border-radius:9px;padding:9px;font-family:inherit;resize:vertical;margin-top:8px}.aw-task-filter{min-height:40px;padding:8px 12px;border:1px solid #D9C99F;border-radius:10px;background:#fff;color:#123B64;font-family:inherit;font-weight:800}

/* LPO invoice/report actions */
.lpo-action-delete{border:1px solid #fecaca;background:#fff1f2;color:#b91c1c;border-radius:9px;padding:8px 11px;font-family:inherit;font-weight:900;cursor:pointer}.lpo-action-email{border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:9px;padding:8px 11px;font-family:inherit;font-weight:900;cursor:pointer}.lpo-action-email:hover{background:#dbeafe}.lpo-action-delete:hover{background:#fee2e2}.lpo-invoice{font-family:Arial,sans-serif;background:#fff;color:#172033;padding:4px}.lpo-invoice .invoice-top{display:flex;justify-content:center;gap:24px;border-bottom:3px solid #123B64;padding:0 0 14px;margin-bottom:14px;position:relative}.lpo-invoice .brand{font-size:22px;font-weight:900;color:#123B64}.lpo-invoice .subbrand{font-size:12px;color:#64748b;margin-top:4px}.lpo-invoice .invoice-title{text-align:center;margin:0 auto;width:100%;max-width:100%}.lpo-invoice .invoice-title h1{margin:0;color:#123B64;font-size:24px}.lpo-invoice .invoice-title .number{font-size:16px;font-weight:900;margin-top:4px}.lpo-invoice .invoice-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:14px}.lpo-invoice .box{border:1px solid #cbd5e1;border-radius:6px;padding:9px 11px;min-height:42px}.lpo-invoice .box b{display:block;font-size:10px;color:#64748b;text-transform:uppercase;margin-bottom:4px}.lpo-invoice table{width:100%;border-collapse:collapse}.lpo-invoice th{background:#123B64;color:#fff;font-size:11px;padding:9px 7px;border:1px solid #123B64}.lpo-invoice td{border:1px solid #cbd5e1;padding:8px 7px;font-size:11px}.lpo-invoice .num{text-align:center;white-space:nowrap}.lpo-invoice .desc{text-align:left}.lpo-invoice .totals{margin-top:14px;margin-left:auto;width:360px;border:1px solid #cbd5e1;border-radius:6px;overflow:hidden}.lpo-invoice .totals div{display:flex;justify-content:space-between;padding:8px 11px;border-bottom:1px solid #e2e8f0;font-size:12px}.lpo-invoice .lpo-totals-row{display:flex;justify-content:space-between;align-items:flex-end;gap:14px}.lpo-invoice .lpo-totals-row .totals{margin-top:0}.lpo-invoice .lpo-stamp-box{margin-top:24px;margin-left:24px}.lpo-invoice .lpo-stamp-box img{max-height:110px;max-width:170px;object-fit:contain}.lpo-invoice .totals div:last-child{border-bottom:0;background:#ecfdf5;font-size:15px;font-weight:900}.lpo-invoice .note{margin-top:12px;border:1px solid #e2e8f0;padding:10px;font-size:11px}.lpo-invoice .revision{margin-top:10px;border:1px solid #fecaca;background:#fff1f2;padding:10px;font-size:11px}.lpo-invoice .footer{margin-top:18px;padding-top:9px;border-top:1px solid #cbd5e1;font-size:10px;color:#64748b}.lpo-print-page{direction:ltr}
/* PWA / mobile hardening */
html{background:#FBF3DF;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{padding-bottom:env(safe-area-inset-bottom);overflow-x:hidden}
html,body{max-width:100vw}
input,select,textarea,button{font-family:inherit}
#albatoul-language-switcher{top:calc(18px + env(safe-area-inset-top))!important}
#albatoul-i18n-loading{bottom:calc(18px + env(safe-area-inset-bottom))!important}
.aw-sidebar{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}

/* App-wide: stop iOS Safari auto-zoom-on-focus and guarantee comfortable tap targets
   on any phone/tablet, without touching desktop sizing/spacing. */
@media(max-width:900px){
  input,select,textarea{font-size:16px!important}
  input[type="checkbox"],input[type="radio"]{font-size:inherit!important}
  button,.lpo-review-btn,.lpo-secondary,.lpo-send,.lpo-save-btn,.lpo-new-btn,.supplier-open-btn,
  .lpo-action-light,.lpo-action-edit,.lpo-action-revision,.lpo-action-delete,.lpo-action-email{
    min-height:42px;
  }
  table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
}
@media(max-width:560px){
  .lpo-order-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:8px}
  .lpo-order-actions button{width:100%;min-height:42px}
  .lpo-order-actions .lpo-action-edit{order:-2;font-size:15px}
  .lpo-order-actions .lpo-action-email{order:-1}
  .lpo-order-card{padding:12px}
}

/* ===== BLOCK 7: lpo-email-contacts-style ===== */
.lpo-email-picker{position:fixed;inset:0;z-index:2147483000;background:rgba(15,23,42,.58);display:flex;align-items:center;justify-content:center;padding:18px}
.lpo-email-picker.hidden{display:none!important}
.lpo-email-picker-card{width:min(760px,100%);max-height:88vh;overflow:auto;background:#fff;border-radius:20px;box-shadow:0 30px 90px rgba(0,0,0,.28);padding:22px;direction:rtl}
.lpo-email-picker-head{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #eee4cf;padding-bottom:14px;margin-bottom:15px}
.lpo-email-picker-head h3{margin:0;color:#123B64;font-size:1.25rem;font-weight:900}
.lpo-email-picker-close{border:0;background:#f1f5f9;color:#334155;width:38px;height:38px;border-radius:10px;font-size:22px;cursor:pointer}
.lpo-email-picker-add{display:grid;grid-template-columns:1.1fr 1.5fr auto;gap:9px;margin-bottom:16px}
.lpo-email-picker-add input{width:100%;border:1px solid #E0C47A;border-radius:10px;padding:11px 12px;font-family:inherit;outline:none}
.lpo-email-picker-add input:focus{border-color:#C9962C;box-shadow:0 0 0 3px rgba(201,150,44,.12)}
.lpo-email-add-btn{border:0;border-radius:10px;padding:10px 16px;background:linear-gradient(135deg,#C9962C,#123B64);color:#fff;font-family:inherit;font-weight:900;cursor:pointer}
.lpo-email-contact-list{display:flex;flex-direction:column;gap:9px}
.lpo-email-contact{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;border:1px solid #eadfca;background:#fffaf0;border-radius:13px;padding:12px 14px}
.lpo-email-contact-main{min-width:0}
.lpo-email-contact-name{font-weight:900;color:#123B64}
.lpo-email-contact-address{font-size:.84rem;color:#64748b;direction:ltr;text-align:right;word-break:break-all;margin-top:2px}
.lpo-email-contact-actions{display:flex;gap:7px;align-items:center}
.lpo-email-use-btn{border:0;background:#087f5b;color:#fff;border-radius:9px;padding:9px 13px;font-family:inherit;font-weight:900;cursor:pointer}
.lpo-email-delete-btn{border:1px solid #fecaca;background:#fff1f2;color:#b91c1c;border-radius:9px;padding:8px 11px;font-family:inherit;font-weight:900;cursor:pointer}
.lpo-email-empty{text-align:center;color:#94a3b8;padding:24px 10px;border:1px dashed #d9c99f;border-radius:12px}
.lpo-email-picker-note{font-size:.75rem;color:#64748b;margin:0 0 12px}

/* Undertaking Letter worker-name suggestions -- same card-list look as the
   LPO/Tax Invoice email contact picker above, so it reads as a normal list
   on the site instead of a bare browser-style dropdown.
   #si-letter-suggest-portal is appended directly to <body> (a "portal"),
   not nested inside the row's <td>, because the table sits inside a
   .overflow-x-auto wrapper -- and per the CSS spec, setting overflow-x
   forces overflow-y to compute as auto too, clipping anything that tries
   to extend past the table's box in either direction. position:fixed
   plus JS-computed left/width/bottom (from the focused input's own
   getBoundingClientRect(), see safety-induction.js) keeps it glued to
   that input while living outside any clipped ancestor. The z-index has
   to clear .ti-settings-modal's own (2147483000) since the portal lives
   in <body>, not inside the modal. */
.si-letter-suggest-list{position:fixed;z-index:2147483001;background:#fff;border:1px solid #eadfca;border-radius:13px;box-shadow:0 -12px 32px rgba(0,0,0,.16);max-height:240px;overflow-y:auto;padding:6px}
.si-letter-suggest-item{border-radius:10px;padding:9px 12px;cursor:pointer}
.si-letter-suggest-item:hover{background:#fffaf0}
.si-letter-suggest-item .si-letter-suggest-name{font-weight:900;color:#123B64;font-size:.88rem}
.si-letter-suggest-item .si-letter-suggest-arabic{font-size:.78rem;color:#64748b;margin-top:2px}

@media(max-width:650px){
  .lpo-email-picker{padding:10px}
  .lpo-email-picker-card{padding:16px;border-radius:16px}
  .lpo-email-picker-add{grid-template-columns:1fr}
  .lpo-email-add-btn{width:100%}
  .lpo-email-contact{grid-template-columns:1fr}
  .lpo-email-contact-actions{justify-content:flex-start}
}

/* ===== BLOCK 8: albatoul-i18n-style ===== */
#albatoul-language-switcher{position:fixed;top:18px;left:18px;z-index:99999;display:flex;gap:0;background:rgba(255,255,255,.96);border:1px solid rgba(201,150,44,.45);border-radius:14px;box-shadow:0 8px 25px rgba(0,0,0,.12);overflow:hidden;direction:ltr}
#albatoul-language-switcher button{border:0;background:transparent;padding:9px 13px;font-weight:800;font-size:13px;cursor:pointer;color:#1e3a5f}
#albatoul-language-switcher button.active{background:#1e3a5f;color:#fff}
#albatoul-language-switcher .sep{width:1px;background:#ddd}
html[dir="ltr"] body{direction:ltr}
html[dir="ltr"] #albatoul-language-switcher{left:auto;right:18px}
/* Lives inside .aw-header-actions as a normal flex item now, not a floating
   overlay — cancel the fixed positioning and shrink it to match the other
   header icons so it never covers the user name/avatar or action buttons. */
#albatoul-language-switcher.in-header{position:static!important;top:auto!important;left:auto!important;right:auto!important;z-index:auto;box-shadow:none;margin-inline-end:6px}
#albatoul-language-switcher.in-header button{padding:6px 9px;font-size:11.5px}
@media(max-width:760px){#albatoul-language-switcher.in-header{margin-inline-end:2px}#albatoul-language-switcher.in-header button{padding:5px 6px;font-size:10px}}
#albatoul-i18n-loading{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);z-index:100000;background:#1e3a5f;color:#fff;padding:10px 16px;border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.18);font-size:13px;font-weight:700;display:none}

/* ===== BLOCK 9: lpo-final-no-gap-fix ===== */
/* Final LPO top-form alignment: remove dead space beside supplier/custom supplier */
.lpo-form-grid,
.lpo-supplier-fields {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 1.25fr) minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: end !important;
}

.lpo-form-grid > label,
.lpo-supplier-fields > * {
  min-width: 0 !important;
  width: 100% !important;
  margin: 0 !important;
}

.lpo-supplier-fields .lpo-custom-supplier-wrap,
.lpo-supplier-fields #lpo-custom-supplier-wrap {
  display: block !important;
  min-width: 0 !important;
}

.lpo-supplier-fields select,
.lpo-supplier-fields input,
.lpo-form-grid select,
.lpo-form-grid input {
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Keep custom supplier directly beside supplier */
.lpo-supplier-fields {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
}

.lpo-supplier-fields > * {
  grid-column: auto !important;
}

@media (max-width: 900px) {
  .lpo-form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 650px) {
  .lpo-form-grid,
  .lpo-supplier-fields {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
}

/* ===== BLOCK 10: lpo-supplier-serial-style ===== */
.lpo-supplier-serial-card{width:min(980px,100%)}
.lpo-serial-help{border:1px solid #E0C47A;background:#fffaf0;color:#475569;border-radius:12px;padding:12px 14px;font-size:.82rem;line-height:1.7}
.lpo-serial-settings-table th,.lpo-serial-settings-table td{vertical-align:middle}
.lpo-code-input{width:110px;box-sizing:border-box;border:1px solid #E0C47A;border-radius:8px;padding:8px 9px;background:#fff;font-family:inherit;font-weight:900;text-align:center;text-transform:uppercase}
.lpo-serial-new-row{display:grid;grid-template-columns:1.5fr .7fr auto;gap:8px;margin-top:14px}
.lpo-serial-new-row input{width:100%;box-sizing:border-box;border:1px solid #E0C47A;border-radius:9px;padding:9px 10px;background:#fff;font-family:inherit;min-height:42px}
@media(max-width:700px){.lpo-serial-new-row{grid-template-columns:1fr}.lpo-supplier-serial-card{padding:14px}.lpo-serial-settings-table{min-width:680px}}

/* ===== BLOCK 11: suppliers-history-style ===== */
.suppliers-shell{display:flex;flex-direction:column;gap:18px}.suppliers-hero{padding:24px 28px;border-radius:22px}.suppliers-kicker{font-size:12px;font-weight:900;letter-spacing:.08em;color:#0f766e}.suppliers-hero h2{margin:5px 0 3px;color:#123B64;font-size:27px;font-weight:900}.suppliers-hero p{margin:0;color:#64748b}.suppliers-toolbar{display:grid;grid-template-columns:repeat(3,minmax(170px,1fr)) repeat(2,minmax(145px,.8fr)) auto;gap:9px;align-items:end}.suppliers-toolbar label{display:flex;flex-direction:column;gap:5px;font-weight:800;font-size:13px;color:#334155}.suppliers-toolbar input,.suppliers-toolbar select{width:100%;box-sizing:border-box;min-height:40px;height:40px;border:1px solid #e0c47a;border-radius:9px;background:#fff;padding:7px 10px;font:inherit;font-size:13px}.suppliers-toolbar .lpo-secondary{height:40px;padding:7px 14px;white-space:nowrap}.supplier-orders-panel{border:1px solid #eadfca;border-radius:18px;background:rgba(255,255,255,.55);overflow:hidden}.supplier-panel-head{padding:17px 18px;border-bottom:1px solid #eadfca}.supplier-panel-head h3{margin:0;color:#123B64;font-weight:900;font-size:18px}.supplier-panel-head p{margin:4px 0 0;color:#64748b;font-size:13px}.supplier-orders-list{padding:14px}.supplier-order-card{border:1px solid #e7dcc5;background:#fff;border-radius:15px;padding:15px;margin-bottom:10px;display:flex;align-items:center;justify-content:space-between;gap:18px}.supplier-order-title{font-size:17px;font-weight:900;color:#123B64}.supplier-order-meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.supplier-order-meta span{background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:5px 9px;font-size:12px;color:#475569}.supplier-open-btn{border:1px solid #cbd5e1;background:#fff;color:#123B64;border-radius:10px;padding:9px 14px;font-weight:900;cursor:pointer}.supplier-empty{padding:45px 20px;text-align:center;color:#64748b}@media(max-width:900px){.suppliers-toolbar{grid-template-columns:1fr 1fr}.suppliers-toolbar label:first-child{grid-column:1/-1}}@media(max-width:600px){.suppliers-toolbar{grid-template-columns:1fr}.suppliers-toolbar label:first-child{grid-column:auto}.supplier-order-card{flex-direction:column;align-items:stretch}.supplier-open-btn{width:100%}}

/* ===== BLOCK 12: supplier-project-link-style ===== */
.supplier-project-link{border:0;background:none;padding:0;margin:0;color:#123B64;font:inherit;font-weight:900;cursor:pointer;text-decoration:underline;text-decoration-color:#C9962C;text-underline-offset:3px}
.supplier-project-link:hover{color:#0f766e}
.supplier-lpo-no{margin-inline-start:8px;color:#475569;font-weight:800}
.supplier-order-card.is-draft{border-color:#E0C47A;background:#fffaf0}
.supplier-draft-badge{margin-inline-start:10px;background:#fff3cd;border:1px solid #E0C47A;color:#92620a;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:900}
.supplier-order-meta span.supplier-status-draft{background:#fff3cd;border-color:#E0C47A;color:#92620a;font-weight:900}

/* ===== BLOCK 13: albatoul-report-print-normalization ===== */
@media print{body{print-color-adjust:exact;-webkit-print-color-adjust:exact}}

/* ===== BLOCK 14: attendance-advances-style ===== */
.attendance-advances-wrap{overflow:auto;border:1px solid #eadfca;border-radius:14px;background:#fff}
.attendance-advances-table{width:100%;min-width:760px;border-collapse:separate;border-spacing:0;font-size:.82rem}
.attendance-advances-table th{background:#f8f3e8;color:#123B64;font-weight:900;padding:9px 8px;border-bottom:1px solid #eadfca;white-space:nowrap}
.attendance-advances-table td{padding:8px;border-bottom:1px solid #f1eadb;vertical-align:top;white-space:nowrap}
.attendance-advances-table tbody tr:hover{background:#fffcf5}
.attendance-advance-amount{font-weight:900;color:#b42318}
.attendance-advance-name{font-weight:900;color:#123B64}

@media(max-width:700px){.attendance-advances-table{min-width:620px}}
.attendance-overtime-wrap{overflow:auto;border:1px solid #eadfca;border-radius:14px;background:#fff}
.attendance-overtime-table{width:100%;min-width:640px;border-collapse:separate;border-spacing:0;font-size:.82rem}
.attendance-overtime-table th{background:#f8f3e8;color:#123B64;font-weight:900;padding:11px 10px;border-bottom:1px solid #eadfca;white-space:nowrap}
.attendance-overtime-table td{padding:10px;border-bottom:1px solid #f1eadb;vertical-align:top;white-space:nowrap}
.attendance-overtime-table tbody tr:hover{background:#fffcf5}
@media(max-width:700px){.attendance-overtime-table{min-width:520px}}
/* بدون هذا، المتصفح بيحط th في النص (الديفولت الافتراضي للـ th) وtd على
   اليمين (ديفولت RTL)، فعنوان كل عمود بيبان مزحلق شمال أرقامه بالظبط. */
#attendance-overtime-daily-table th,#attendance-overtime-daily-table td{text-align:center}
#attendance-overtime-daily-table th:first-child,#attendance-overtime-daily-table td:first-child{text-align:right}
.attendance-cards-grid{display:grid;grid-template-columns:1fr;gap:8px}
@media(min-width:640px){.attendance-cards-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1280px){.attendance-cards-grid{grid-template-columns:repeat(3,1fr)}}
.attendance-cards-grid #attendance-empty{grid-column:1/-1}
.attendance-card{min-width:0}

/* ===== BLOCK 15: daily-history-tabs-style ===== */
.daily-history-tab{border:1px solid #E0C47A;background:#fff;color:#4A3117;border-radius:999px;padding:8px 16px;font-weight:900;font-size:.85rem;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background .15s,color .15s,border-color .15s}
.daily-history-tab-count{background:rgba(0,0,0,.08);border-radius:999px;padding:1px 8px;font-size:.75rem}
.daily-history-tab.active{background:#123B64;border-color:#123B64;color:#fff}
.daily-history-tab.active .daily-history-tab-count{background:rgba(255,255,255,.22)}
.daily-history-tab[data-status="present"].active{background:#087f5b;border-color:#087f5b}
.daily-history-tab[data-status="absent"].active{background:#b91c1c;border-color:#b91c1c}
.daily-history-tab[data-status="none"].active{background:#64748b;border-color:#64748b}
@media(max-width:560px){#daily-history-status-tabs{width:100%}.daily-history-tab{flex:1 1 auto;justify-content:center;padding:8px 10px;font-size:.78rem}#daily-history-download-pdf,#daily-history-preview-btn{width:100%}}

/* ===== BLOCK 17: tax-invoice-upgrade-css ===== */
#page-tax-invoice .ti-party-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:18px 0}#page-tax-invoice .ti-party-box{border:1px solid #E0C47A;border-radius:16px;padding:16px;background:rgba(255,255,255,.72);min-width:0}#page-tax-invoice .ti-party-box legend{font-weight:900;color:#123B64;padding:0 8px;font-size:1rem}#page-tax-invoice .ti-party-box label,#page-tax-invoice .ti-invoice-meta-grid label,#page-tax-invoice .ti-extra-grid label,#page-tax-invoice .ti-notes-label{display:flex;flex-direction:column;gap:6px;font-weight:800;color:#4A3117}#page-tax-invoice .ti-party-box label+label{margin-top:10px}#page-tax-invoice .ti-party-box input,#page-tax-invoice .ti-party-box select,#page-tax-invoice .ti-invoice-meta-grid input,#page-tax-invoice .ti-invoice-meta-grid select,#page-tax-invoice .ti-extra-grid input,#page-tax-invoice .ti-notes-label input{width:100%;min-height:42px;border:1px solid #E0C47A;border-radius:9px;padding:8px 10px;background:#fff;font:inherit}#page-tax-invoice .ti-invoice-meta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:12px 0}#page-tax-invoice .ti-extra-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:12px 0}#page-tax-invoice .ti-customer-save-row{display:flex;align-items:center;gap:8px;margin:12px 0;font-weight:800;color:#4A3117}#page-tax-invoice .ti-customer-save-row input{width:18px;height:18px}#page-tax-invoice .ti-notes-label{margin:12px 0}#page-tax-invoice .ti-deductions-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:18px;margin-top:18px}#page-tax-invoice .ti-deductions{border:1px solid #E0C47A;border-radius:14px;padding:16px;background:rgba(255,255,255,.7)}#page-tax-invoice .ti-deductions h3{margin:0 0 12px;color:#123B64}#page-tax-invoice .ti-calc-row,#page-tax-invoice .ti-input-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:center;margin:10px 0}#page-tax-invoice .ti-calc-row{grid-template-columns:1fr auto;padding:10px 0;border-bottom:1px solid #eadfca}#page-tax-invoice .ti-input-row label{display:flex;flex-direction:column;gap:5px;font-weight:800;color:#4A3117}#page-tax-invoice .ti-input-row input{width:100%;min-height:40px;border:1px solid #E0C47A;border-radius:8px;padding:7px 9px;background:#fff}#page-tax-invoice .ti-summary .ti-words{display:block;text-align:right;font-size:.9rem}#page-tax-invoice .ti-summary .ti-words strong{display:block;margin-top:5px;font-size:.85rem;line-height:1.5}#page-tax-invoice .ti-invoice-table{border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid #E0C47A;border-radius:14px;background:#fff;box-shadow:0 8px 22px rgba(18,59,100,.06)}#page-tax-invoice .ti-invoice-table thead th{background:linear-gradient(135deg,#123B64,#0c2f50);color:#fff;border:0;padding:12px 10px;font-size:.76rem;letter-spacing:.02em;white-space:nowrap}#page-tax-invoice .ti-invoice-table tbody td{border-bottom:1px solid #EFE2C0;padding:10px 8px;background:#fff;vertical-align:middle}#page-tax-invoice .ti-invoice-table tbody tr:last-child td{border-bottom:0}#page-tax-invoice .ti-invoice-table tbody tr:nth-child(even) td{background:#FCFAF4}#page-tax-invoice .ti-invoice-table tbody tr:hover td{background:#F7F1E3}#page-tax-invoice .ti-invoice-table td:first-child{text-align:center;font-weight:900;color:#123B64;width:48px}#page-tax-invoice .ti-invoice-table td:nth-child(7),#page-tax-invoice .ti-invoice-table td:nth-child(8){font-weight:900;color:#123B64;white-space:nowrap}#page-tax-invoice .ti-invoice-table input{max-width:100%;width:100%;box-sizing:border-box;border:1px solid #DCC17A;border-radius:9px;background:#fff;min-height:40px;padding:8px 9px}@media(max-width:900px){#page-tax-invoice .ti-party-grid,#page-tax-invoice .ti-deductions-grid{grid-template-columns:1fr}#page-tax-invoice .ti-invoice-meta-grid,#page-tax-invoice .ti-extra-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){#page-tax-invoice .ti-invoice-meta-grid,#page-tax-invoice .ti-extra-grid{grid-template-columns:1fr}.ti-input-row{grid-template-columns:1fr}}

/* ===== BLOCK 18: tax-invoice-stamp-signature-modal-css ===== */
/* Stamp/signature dialogs must float above the app instead of participating in page flow. */
.ti-settings-modal{position:fixed;inset:0;z-index:2147483000;background:rgba(15,23,42,.62);display:flex;align-items:center;justify-content:center;padding:18px;overflow:auto;box-sizing:border-box;direction:rtl}
.ti-settings-modal.hidden{display:none!important}
.ti-settings-modal>.ti-review-card{width:min(720px,100%);max-height:calc(100vh - 36px);overflow:auto;margin:auto;box-sizing:border-box;background:#fff}
#ti-print-options-modal>.ti-review-card{width:min(500px,100%);max-height:calc(100vh - 36px)}
.ti-settings-modal .lpo-section-head{width:100%}
@media(max-width:650px){.ti-settings-modal{padding:10px}.ti-settings-modal>.ti-review-card{max-height:calc(100vh - 20px);padding:15px}}

/* ===== BLOCK 19: tax-invoice-lpo-workflow-css ===== */
#page-tax-invoice .ti-status-chip{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;font-size:.72rem;font-weight:900}.ti-status-chip.sent{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.ti-status-chip.hold{background:#fff7ed;color:#c2410c;border:1px solid #fed7aa}.ti-status-chip.revision{background:#fff1f2;color:#b91c1c;border:1px solid #fecaca}.ti-status-chip.approved{background:#ecfdf5;color:#166534;border:1px solid #bbf7d0}.ti-review-modal{position:fixed;inset:0;z-index:2147482000;background:rgba(15,23,42,.62);display:flex;align-items:center;justify-content:center;padding:18px;overflow:auto}.ti-review-modal.hidden{display:none!important}.ti-review-card{width:min(1100px,100%);max-height:94vh;overflow:auto;background:#fff;border-radius:22px;box-shadow:0 30px 100px rgba(0,0,0,.3);padding:22px;border:1px solid #eadfca}.ti-email-mini-list{display:flex;flex-direction:column;gap:8px}.ti-email-mini-row{display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px solid #eadfca;border-radius:10px;padding:10px;background:#fff}.ti-email-mini-row button{border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:8px;padding:7px 11px;font-weight:900;cursor:pointer}.ti-email-add{display:grid;grid-template-columns:1fr 1.4fr auto;gap:8px;margin:12px 0}.ti-email-add input{border:1px solid #D9C99F;border-radius:9px;padding:9px}.ti-email-add button{border:0;background:linear-gradient(135deg,#C9962C,#123B64);color:#fff;border-radius:9px;padding:9px 13px;font-weight:900}@media(max-width:700px){.ti-email-add{grid-template-columns:1fr}.ti-review-card{padding:13px}}#ti-review-content{width:100%;overflow:visible!important}#ti-review-content .ti-report-frame-wrap{width:100%;background:#fff;border:1px solid #D8BC72;border-radius:12px;overflow:hidden;box-sizing:border-box}#ti-review-content .ti-report-frame{display:block;width:100%;height:900px;border:0;background:#fff;overflow:hidden}#ti-review-actions{display:none!important}@media(max-width:900px){#ti-review-content .ti-report-frame{height:1100px}}@media(max-width:600px){#ti-review-content .ti-report-frame-wrap{overflow:auto}#ti-review-content .ti-report-frame{min-width:820px;width:820px;height:1250px;transform-origin:top left;}}

/* ===== BLOCK 28: lpo-clean-compact-layout-v2 ===== */
/* Compact, organized LPO form */
#page-lpo .lpo-create-card{}
#page-lpo .lpo-shell{gap:14px!important}
#page-lpo .lpo-hero{padding:16px 20px!important;border-radius:16px!important}
#page-lpo .lpo-hero{flex-wrap:wrap!important}
#page-lpo .lpo-hero>div:first-child{flex:1 1 260px!important;min-width:0!important}
#page-lpo .lpo-top-actions{flex:0 0 auto!important;flex-wrap:nowrap!important;justify-content:flex-start!important}
#page-lpo .lpo-hero h2{font-size:1.65rem!important}
#page-lpo .lpo-hero p{font-size:.78rem!important}
#page-lpo #lpo-create-card{padding:18px!important}
#page-lpo .lpo-section-head{margin-bottom:12px!important}
#page-lpo .lpo-section-head.compact{margin-top:16px!important}
#page-lpo .lpo-form-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px 12px!important;align-items:end!important}
#page-lpo .lpo-form-grid>label{grid-column:auto!important;min-width:0!important}
#page-lpo .lpo-form-grid>label:first-child{grid-column:span 1!important}
#page-lpo .lpo-form-grid>label:nth-child(2){grid-column:span 2!important}
#page-lpo .lpo-form-grid>label:nth-child(3){grid-column:span 1!important}
#page-lpo .lpo-form-grid>label:nth-child(4){grid-column:span 1!important}
#page-lpo .lpo-form-grid>label:nth-child(5){grid-column:span 1!important}
#page-lpo .lpo-form-grid>label:nth-child(6){grid-column:span 1!important}
#page-lpo .lpo-form-grid label>span,#page-lpo .lpo-payment-box label>span{font-size:.74rem!important;min-height:16px!important}
#page-lpo .lpo-form-grid input,#page-lpo .lpo-form-grid select,#page-lpo .lpo-payment-box input{min-height:39px!important;padding:8px 10px!important;border-radius:8px!important;font-size:.82rem!important}
#page-lpo .lpo-supplier-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:7px!important}
#page-lpo .lpo-phone-list{gap:7px!important}
#page-lpo .lpo-phone-row{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) auto!important;gap:7px!important;min-height:39px!important}
#page-lpo .lpo-phone-row input{min-height:38px!important;padding:7px 9px!important}
#page-lpo .lpo-phone-add{padding:6px 10px!important;font-size:.78rem!important}
#page-lpo .lpo-payment-box{grid-template-columns:1.35fr 1fr!important;gap:12px!important;margin-top:12px!important}
#page-lpo .lpo-items-wrap{border-radius:10px!important}
#page-lpo .lpo-table{min-width:760px!important}
#page-lpo .lpo-table th{padding:8px 7px!important;font-size:.7rem!important}
#page-lpo .lpo-table td{padding:7px!important}
#page-lpo .lpo-table input,#page-lpo .lpo-table select{padding:6px 7px!important;min-height:34px!important;font-size:.78rem!important}
#page-lpo .lpo-bottom-grid{grid-template-columns:minmax(0,1fr) 280px!important;gap:12px!important;margin-top:12px!important}
#page-lpo .lpo-catalog-card{padding:12px!important;border-radius:10px!important}
#page-lpo .lpo-catalog-card h4{margin-bottom:8px!important;font-size:.9rem!important}
#page-lpo .lpo-supplier-switcher{gap:6px!important}
#page-lpo .lpo-supplier-btn{padding:7px 12px!important;font-size:.76rem!important}
#page-lpo .lpo-inline{grid-template-columns:1.5fr .7fr .7fr auto!important;gap:6px!important}
#page-lpo .lpo-inline input{min-height:36px!important;padding:7px 9px!important}
#page-lpo .lpo-totals{padding:10px!important;border-radius:10px!important}
#page-lpo .lpo-totals>div{padding:6px 0!important;font-size:.78rem!important}
#page-lpo .lpo-totals .grand strong{font-size:1.1rem!important}
#page-lpo .lpo-actions{gap:8px!important;margin-top:12px!important}
#page-lpo .lpo-actions button{padding:9px 18px!important;min-height:39px!important}
@media(max-width:900px){#page-lpo .lpo-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}#page-lpo .lpo-form-grid>label:nth-child(2){grid-column:span 2!important}#page-lpo .lpo-bottom-grid{grid-template-columns:1fr!important}}
@media(max-width:560px){#page-lpo #lpo-create-card{padding:12px!important}#page-lpo .lpo-form-grid{grid-template-columns:1fr!important;gap:8px!important}#page-lpo .lpo-form-grid>label{grid-column:1/-1!important}#page-lpo .lpo-supplier-fields,#page-lpo .lpo-payment-box{grid-template-columns:1fr!important}#page-lpo .lpo-inline{grid-template-columns:1fr!important}#page-lpo .lpo-actions{flex-direction:row!important;flex-wrap:wrap!important}#page-lpo .lpo-actions button{flex:1 1 30%!important}}

/* Supplier page: compact filters after removing site text search */
#page-suppliers .suppliers-toolbar{display:grid!important;grid-template-columns:1.2fr 1.2fr 1fr 1fr auto!important;gap:9px!important;align-items:end!important}
#page-suppliers .suppliers-toolbar label{min-width:0!important}
#page-suppliers .suppliers-toolbar label>span{display:block!important;font-size:.72rem!important;font-weight:900!important;margin-bottom:5px!important;color:#4A3117!important}
#page-suppliers .suppliers-toolbar select,#page-suppliers .suppliers-toolbar input{min-height:38px!important;padding:7px 9px!important;border-radius:8px!important;font-size:.8rem!important;width:100%!important}
#page-suppliers .suppliers-toolbar button{min-height:38px!important;padding:8px 12px!important;white-space:nowrap!important}
@media(max-width:900px){#page-suppliers .suppliers-toolbar{grid-template-columns:1fr 1fr!important}}
@media(max-width:560px){#page-suppliers .suppliers-toolbar{grid-template-columns:1fr!important}}

/* ===== BLOCK 29: lpo-contact-phones-organized ===== */
/* أرقام التواصل بالموقع — قسم منظم بمساحة كاملة بدل الحشر جنب حقول تانية.
   الاختيار هنا بالكلاس (مش nth-child) عشان يفضل ياخد العرض الكامل أيًا كان
   ترتيبه بين باقي الحقول -- ده اللي كان ناقص قبل كده وسبب المشكلة: إضافة
   حقل "تاريخ التوصيل" زوّدت ترتيب هذا الحقل بواحد، فقاعدة nth-child(6) القديمة
   بقت بتطبّق على حقل "لوكيشن الموقع" بدله، وحقل أرقام التواصل رجع يتحشر في
   عمود واحد ضيق بدل العرض الكامل. */
#page-lpo .lpo-form-grid>label.lpo-contact-phones-field{grid-column:1/-1!important}
#page-lpo .lpo-contact-phones-card{
  display:flex;flex-direction:column;gap:10px;
  background:#FAF6EC;border:1px solid #EFE2C0;border-radius:12px;padding:12px 14px;
}
#page-lpo .lpo-saved-phone-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
#page-lpo #lpo-saved-phone-select{
  width:100%;box-sizing:border-box;border:1px solid #E0C47A;border-radius:9px;
  padding:8px 10px;background:#fff;font-family:inherit;min-height:39px;font-size:.82rem;
}
#page-lpo .lpo-contact-phones-card .lpo-phone-list{background:transparent}
#page-lpo .lpo-contact-phones-card .lpo-phone-row{
  background:#fff;border:1px solid #EFE2C0;border-radius:9px;padding:6px 8px;
}
#page-lpo .lpo-add-phone-btn{align-self:flex-start}
#page-lpo .lpo-phone-add{transition:background .15s,border-color .15s}
#page-lpo .lpo-phone-add:hover{background:#F6E9C9;border-color:#C9962C}
#page-lpo .lpo-phone-remove{transition:background .15s}
#page-lpo .lpo-phone-remove:hover{background:#fecaca}
@media(max-width:560px){
  #page-lpo .lpo-saved-phone-row{grid-template-columns:1fr}
  #page-lpo .lpo-saved-phone-row .lpo-phone-add{width:100%}
}

/* ===== Safety Induction ===== */
#si-emirate-tabs .si-tab{
  border:1px solid #D9C99F;background:#fff;color:#123B64;border-radius:10px;
  padding:9px 20px;font-family:inherit;font-weight:800;cursor:pointer;
}
#si-emirate-tabs .si-tab.active{
  background:linear-gradient(135deg,#C9962C,#123B64);color:#fff;border-color:transparent;
}
#si-category-grid .si-cat-btn.active{
  background:#FBF0D9;border:2px solid #C9962C;
}

/* ===== Worker Planning (توزيع العمال) — visual refresh ===== */
.wp-hero{
  background:linear-gradient(135deg,rgba(18,59,100,.045),rgba(201,150,44,.07));
  border-radius:18px;padding:4px;
}
.wp-action-btn{
  display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:12px;
  font-weight:800;font-size:.86rem;cursor:pointer;transition:.18s;border:1px solid transparent;
  font-family:inherit;
}
.wp-action-btn svg{flex:0 0 auto}
.wp-action-primary{
  background:linear-gradient(135deg,#C9962C,#123B64);color:#fff;
  box-shadow:0 4px 14px rgba(18,59,100,.22);
}
.wp-action-primary:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(18,59,100,.28)}
.wp-action-outline{background:#fff;border-color:#F0DFAE;color:#8A6A1B}
.wp-action-outline:hover{background:#FBF3DF;transform:translateY(-1px)}
.wp-action-danger{background:#fff;border-color:#fecaca;color:#b91c1c}
.wp-action-danger:hover{background:#fef2f2;transform:translateY(-1px)}

.wp-stat-tile{
  background:#fff;border:1px solid rgba(224,196,122,.55);border-radius:16px;padding:14px 16px;
  display:flex;align-items:center;gap:12px;
}
.wp-stat-icon{
  width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:0 0 42px;
}
.wp-stat-total .wp-stat-icon{background:#eef2ff;color:#4338ca}
.wp-stat-assigned .wp-stat-icon{background:#dcfce7;color:#087f5b}
.wp-stat-unassigned .wp-stat-icon{background:#fef3e2;color:#C9962C}
.wp-stat-sites .wp-stat-icon{background:#e0f2fe;color:#0369a1}
.wp-stat-tile strong{display:block;font-size:1.55rem;font-weight:900;line-height:1.1}
.wp-stat-tile span{display:block;font-size:.72rem;color:#64748b;font-weight:700;margin-bottom:3px}

.planning-worker-card{
  background:#fff;border:1px solid rgba(224,196,122,.4);box-shadow:0 2px 6px rgba(15,23,42,.045);
}
.planning-worker-card:hover,
.planning-worker-card:focus-visible{
  border-color:#E4C878;box-shadow:0 12px 26px rgba(18,59,100,.12);
}
.wp-avatar{
  width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-weight:900;font-size:.92rem;flex:0 0 40px;
  background:linear-gradient(135deg,#C9962C,#123B64);color:#fff;
}
.wp-badge{
  display:inline-flex;align-items:center;gap:5px;padding:4px 11px;border-radius:999px;
  font-size:.72rem;font-weight:800;white-space:nowrap;
}
.wp-badge svg{width:13px;height:13px;flex:0 0 auto}
.wp-badge-present{background:#dcfce7;color:#166534}
.wp-badge-absent{background:#fee2e2;color:#b91c1c}
.wp-badge-unset{background:#f1f5f9;color:#64748b}
.wp-badge-site{background:#eff6ff;color:#123B64}
.wp-badge-nosite{background:#f8fafc;color:#94a3b8;font-weight:700}
.planning-clear-attendance-btn{
  display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border-radius:8px;
  font-size:.7rem;font-weight:800;border:1px solid #F0DFAE;background:#FBF3DF;color:#8A6A1B;
  cursor:pointer;font-family:inherit;transition:.15s;
}
.planning-clear-attendance-btn:hover{background:#F6E9C9}
.planning-clear-attendance-btn svg{width:12px;height:12px}

.wp-modal-card{border-radius:22px;box-shadow:0 24px 60px rgba(15,23,42,.25)}
.wp-modal-close{
  width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;
  border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;flex:0 0 auto;transition:.15s;
}
.wp-modal-close:hover{background:#f1f5f9;color:#334155}
.wp-modal-section{border-radius:16px;padding:16px}
.wp-modal-section-site{background:linear-gradient(135deg,rgba(18,59,100,.045),rgba(18,59,100,.085))}
.wp-modal-section-attendance{background:linear-gradient(135deg,rgba(8,127,91,.045),rgba(8,127,91,.085))}
.wp-modal-section-title{display:flex;align-items:center;gap:8px;font-weight:900;font-size:.9rem;margin-bottom:12px;color:#241708}
.wp-modal-section-title svg{color:#8A6A1B;flex:0 0 auto}
.wp-modal-section-attendance .wp-modal-section-title svg{color:#087f5b}

.planning-modal-attendance-btn{
  flex:1;display:flex;align-items:center;justify-content:center;gap:7px;
  padding:12px;border-radius:14px;font-weight:800;border:2px solid #e2e8f0;
  background:#fff;color:#475569;cursor:pointer;transition:.15s;font-family:inherit;
}
.planning-modal-attendance-btn svg{flex:0 0 auto}
.planning-modal-attendance-btn.active[data-status="present"]{
  background:#dcfce7;border-color:#22c55e;color:#166534;
}
.planning-modal-attendance-btn.active[data-status="absent"]{
  background:#fee2e2;border-color:#ef4444;color:#b91c1c;
}
.wp-leave-toggle{
  display:flex;align-items:flex-start;gap:10px;padding:12px;border-radius:12px;
  background:#FBF3DF;border:1px solid #F0DFAE;cursor:pointer;
}
.wp-field-label{
  display:flex;align-items:center;gap:6px;font-size:.84rem;font-weight:700;margin-bottom:4px;color:#4A3117;
}
.wp-field-label svg{flex:0 0 auto;color:#8A6A1B}

/* ===== Reusable compact card controls (worker cards, etc.) ===== */
.wp-mini-btn{
  display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:9px;
  font-size:.74rem;font-weight:800;border:1px solid #F0DFAE;background:#FBF3DF;color:#8A6A1B;
  cursor:pointer;font-family:inherit;transition:.15s;white-space:nowrap;
}
.wp-mini-btn:hover{background:#F6E9C9}
.wp-mini-btn svg{width:13px;height:13px;flex:0 0 auto}
.wp-mini-icon-btn{
  display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;
  border-radius:9px;border:1px solid #e2e8f0;background:#fff;color:#475569;cursor:pointer;
  transition:.15s;flex:0 0 auto;
}
.wp-mini-icon-btn:hover{background:#f1f5f9}
.wp-mini-icon-btn svg{width:15px;height:15px}

/* ===== Attendance cards — visual refresh (same card language, dense functional layout kept) ===== */
.attendance-cards-grid .attendance-card{
  background:#fff;border:1px solid rgba(224,196,122,.4);box-shadow:0 2px 6px rgba(15,23,42,.045);
  transition:.18s;
}
.attendance-cards-grid .attendance-card:hover{border-color:#E4C878;box-shadow:0 8px 18px rgba(18,59,100,.1)}
.attendance-card .wp-badge{padding:3px 8px;font-size:.68rem}
.attendance-card .wp-badge svg{width:11px;height:11px}
.attendance-card .wp-mini-btn{padding:3px 8px;font-size:.68rem;border-radius:7px}
.attendance-card .wp-mini-btn svg{width:11px;height:11px}

#sites-list .site-card{background:#fff;border:1px solid rgba(224,196,122,.4);box-shadow:0 2px 6px rgba(15,23,42,.045)}
#sites-list .site-card:hover{border-color:#E4C878;box-shadow:0 10px 22px rgba(18,59,100,.1)}
