@font-face{font-family:Vazirmatn;src:local('Vazirmatn'),local('Tahoma')}*{box-sizing:border-box}body{margin:0;font-family:Vazirmatn,Tahoma,Arial,sans-serif;background:#f5f7fb;color:#243044}.topbar{height:64px;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;gap:18px;padding:0 18px;position:sticky;top:0;z-index:20}.brand{font-size:22px;font-weight:800}.menu-btn{display:none;border:0;background:#eef2f7;border-radius:10px;font-size:24px;padding:6px 11px}.top-actions{margin-right:auto;display:flex;gap:16px;align-items:center}.top-actions a{color:#243044;text-decoration:none}.badge{display:inline-block;background:#dc2626;color:#fff;border-radius:999px;padding:1px 7px;font-size:11px}.layout{display:flex;min-height:calc(100vh - 64px)}.sidebar{width:230px;background:#fff;border-left:1px solid #e5e7eb;padding:18px;flex:none}.sidebar nav{display:flex;flex-direction:column;gap:5px}.sidebar a{padding:11px 12px;border-radius:9px;color:#334155;text-decoration:none}.sidebar a:hover{background:#f1f5f9}.content{flex:1;padding:24px;min-width:0}.page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.page-head h1{margin:0;font-size:25px}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.card,.panel{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:18px;box-shadow:0 2px 8px rgba(15,23,42,.04)}.card b{font-size:24px;display:block;margin-top:7px}.btn{display:inline-block;border:0;border-radius:9px;padding:10px 14px;background:#2563eb;color:#fff;text-decoration:none;cursor:pointer}.btn.secondary{background:#64748b}.btn.danger{background:#dc2626}.btn.success{background:#16a34a}.btn.small{padding:6px 9px;font-size:13px}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;background:#fff}.table th,.table td{padding:10px;border-bottom:1px solid #e5e7eb;text-align:right;white-space:nowrap}.table th{background:#f8fafc}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}.field input,.field select,.field textarea{width:100%;padding:11px;border:1px solid #cbd5e1;border-radius:9px;background:#fff;font:inherit}.field textarea{min-height:100px}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.alert{padding:12px 15px;border-radius:10px;margin-bottom:14px}.success{background:#dcfce7;color:#166534}.error{background:#fee2e2;color:#991b1b}.muted{color:#64748b}.thumb{width:64px;height:64px;object-fit:cover;border-radius:8px}.login{max-width:430px;margin:70px auto}.login .brand{text-align:center;margin-bottom:20px}.kpi{font-size:14px;color:#64748b}.calc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.calc div{padding:9px;background:#f8fafc;border-radius:8px}.status{padding:4px 8px;border-radius:999px;background:#eef2ff;display:inline-block}.table-responsive-note{display:none}
@media(max-width:1000px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.menu-btn{display:block}.sidebar{position:fixed;top:64px;right:-250px;height:calc(100vh - 64px);z-index:30;transition:right .2s;box-shadow:0 10px 30px rgba(0,0,0,.12)}.sidebar.open{right:0}.content{padding:14px}.form-grid{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}.top-actions span{display:none}.table-wrap{border:1px solid #e5e7eb;border-radius:10px}.table{min-width:700px}.table-responsive-note{display:block;font-size:12px;color:#64748b;margin-bottom:5px}.calc{grid-template-columns:1fr}}@media(max-width:480px){.cards{grid-template-columns:1fr}.page-head h1{font-size:20px}.top-actions{gap:8px}.content{padding:10px}}
.table-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0}.table-search{min-width:240px;padding:9px;border:1px solid #cbd5e1;border-radius:9px;font:inherit}.table-page-size{padding:9px;border:1px solid #cbd5e1;border-radius:9px;background:#fff;font:inherit}.table-pages{display:flex;gap:4px;flex-wrap:wrap}.print-hide{display:block}@media print{.topbar,.sidebar,.print-hide,.actions,.table-tools{display:none!important}.content{padding:0}.panel,.card{box-shadow:none;border:0}.table{font-size:10px}.table th,.table td{padding:5px;white-space:normal}.table-wrap{overflow:visible}body{background:#fff}}

/* ALBORZ responsive/mobile refinement */
.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;margin-right:6px;padding:0 6px;border-radius:999px;background:#dc2626;color:#fff;font-size:11px;font-weight:700}
.product-thumb{width:64px;height:64px;object-fit:cover;border-radius:10px;cursor:zoom-in}
.image-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.82);z-index:9999;align-items:center;justify-content:center;padding:20px}
.image-modal.open{display:flex}
.image-modal-box{position:relative;max-width:96vw;max-height:94vh}
.image-modal-box img{display:block;max-width:92vw;max-height:90vh;object-fit:contain;border-radius:12px;background:#fff}
.image-modal-close{position:absolute;right:-10px;top:-10px;width:38px;height:38px;border:0;border-radius:50%;background:#fff;color:#111;font-size:28px;line-height:1;cursor:pointer;z-index:2}
@media(max-width:800px){
    .topbar{height:58px;padding:0 10px;gap:9px}
    .layout{min-height:calc(100vh - 58px)}
    .menu-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;font-size:23px;cursor:pointer;position:relative;z-index:60}
    .sidebar{top:58px;height:calc(100vh - 58px);right:-285px;width:280px;padding:14px;overflow-y:auto;z-index:55}
    .sidebar.open{right:0}
    .sidebar nav a{min-height:46px;display:flex;align-items:center;font-size:14px}
    .content{padding:12px 9px}
    .page-head{margin-bottom:12px}
    .table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}
    .table{min-width:760px}
    .table th,.table td{padding:9px 8px}
    .field input,.field select,.field textarea{min-height:46px;font-size:16px}
    .btn{min-height:44px}
    .actions{gap:7px}
}
@media(max-width:480px){
    .brand{font-size:18px}
    .top-actions{margin-right:auto}
    .top-actions a{font-size:13px}
    .top-actions>a:nth-child(n+2){display:none}
    .cards{grid-template-columns:1fr}
    .form-grid{grid-template-columns:1fr}
    .table{min-width:720px}
    .product-thumb{width:56px;height:56px}
}
.product-preview{display:flex;align-items:center;gap:14px;margin-bottom:16px;padding:12px;background:#f8fafc;border-radius:12px}.product-sale-image{width:100px;height:100px}.product-preview h3{margin:0 0 5px}

/* ALBORZ V7 status, warnings and report UX */
.status-badge{display:inline-flex;align-items:center;justify-content:center;padding:5px 10px;border-radius:999px;font-weight:800;font-size:12px;border:1px solid transparent}
.status-approved{background:#dcfce7;color:#166534;border-color:#86efac}
.status-rejected{background:#fee2e2;color:#991b1b;border-color:#fca5a5}
.status-pending{background:#fef3c7;color:#92400e;border-color:#fcd34d}
.status-rollback{background:#e0e7ff;color:#3730a3;border-color:#a5b4fc}
.status-neutral{background:#f1f5f9;color:#475569;border-color:#cbd5e1}
.approved-box{border-top:4px solid #16a34a}.rejected-box{border-top:4px solid #dc2626}.pending-box{border-top:4px solid #d97706}.warning-box{border-top:4px solid #dc2626}.status-legend{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.report-detail{background:#fff;border:1px solid #e5e7eb;border-radius:14px;margin:14px 0;box-shadow:0 2px 8px rgba(15,23,42,.04)}.report-detail summary{cursor:pointer;padding:17px 18px;font-weight:800;list-style:none}.report-detail summary::-webkit-details-marker{display:none}.report-detail summary:before{content:'＋';display:inline-block;margin-left:8px}.report-detail[open] summary:before{content:'−'}.report-detail-body{padding:0 18px 18px}.report-note{border-right:4px solid #2563eb}.sponsor-help .calc div{line-height:1.8}
/* ALBORZ V8 payroll/notification UX */
.row-danger{background:#fff1f2}.row-success{background:#f0fdf4}.nav-badge{display:inline-flex;min-width:20px;height:20px;align-items:center;justify-content:center;border-radius:999px;padding:0 6px;font-size:12px;font-weight:800;margin-right:5px;background:#dc2626;color:#fff}.status-badge{display:inline-flex;align-items:center;border:1px solid;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:800}.status-approved{background:#dcfce7;color:#166534;border-color:#86efac}.status-rejected{background:#fee2e2;color:#991b1b;border-color:#fca5a5}.status-pending{background:#fef3c7;color:#92400e;border-color:#fcd34d}
/* ALBORZ V16 - transparent payroll center */
.payroll-hero{display:flex;justify-content:space-between;gap:20px;align-items:center;background:linear-gradient(135deg,#fff,#eef6ff);border:1px solid #dbeafe;border-radius:18px;padding:22px;margin-bottom:16px}.payroll-hero h2{margin:5px 0 8px}.payroll-hero p{margin:0;color:#64748b;max-width:800px}.eyebrow{font-size:12px;font-weight:800;color:#2563eb}.payroll-step{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.payroll-step b{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#2563eb;color:#fff}.payroll-step span{font-size:12px;font-weight:700}.clickable-card{padding:0;overflow:hidden}.clickable-card>a{display:block;padding:18px;color:inherit;text-decoration:none;height:100%}.clickable-card:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(15,23,42,.09)}.clickable-card small{display:block;color:#64748b;margin-top:7px}.money-link{color:#2563eb;font-weight:900;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px}.money-link:hover{opacity:.75}.danger-money{color:#dc2626!important}.success-money{color:#16a34a!important}.net-money{color:#0f766e!important}.payroll-flow{display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:#f8fafc}.payroll-flow div{display:flex;flex-direction:column;gap:4px;text-align:center}.payroll-flow b{font-size:13px}.payroll-flow span{font-size:12px;color:#64748b}.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.section-head h3{margin-bottom:4px}.pay-statement{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pay-statement>div{display:flex;justify-content:space-between;align-items:center;padding:13px 15px;background:#f8fafc;border-radius:10px}.pay-statement .final{grid-column:1/-1;background:#ecfdf5;border:1px solid #bbf7d0}.pay-statement .final .money-link{font-size:24px}.pay-confirm{display:flex;justify-content:space-between;align-items:center;padding:14px 0;font-size:17px}.pay-confirm strong .money-link{font-size:25px}.detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.detail-grid>div{padding:12px;background:#f8fafc;border-radius:10px}.detail-grid span{display:block;color:#64748b;font-size:12px;margin-bottom:5px}.detail-grid b{font-size:15px}.mini-cards{grid-template-columns:repeat(6,minmax(0,1fr));margin-top:15px}.mini-cards .card b{font-size:20px}.status-approved{background:#dcfce7!important;color:#166534!important}.status-rejected{background:#fee2e2!important;color:#991b1b!important}.status-pending{background:#fef3c7!important;color:#92400e!important}@media(max-width:900px){.payroll-hero{display:block}.payroll-step{margin-top:15px}.mini-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.pay-statement{grid-template-columns:1fr}.mini-cards{grid-template-columns:1fr 1fr}.detail-grid{grid-template-columns:1fr}.section-head{align-items:flex-start;flex-direction:column}}
