.favat-page { --favat-navy: #062f4b; --favat-blue: #0f5c9b; --favat-ink: #123047; --favat-line: #d9e5ec; --favat-surface: #f4f8fa; padding: 28px clamp(16px, 3vw, 42px) 48px; }
.favat-page-heading { align-items:center;background:linear-gradient(120deg,#fff 0%,#f7fbfc 65%,#edf8f5 100%);border:1px solid #d6e5ea;border-radius:20px;box-shadow:0 12px 34px rgba(18,48,71,.055);display:flex;gap:28px;justify-content:space-between;margin:0 auto 22px;max-width:1440px;overflow:hidden;padding:22px 24px 22px 28px;position:relative; }
.favat-page-heading:before { background:linear-gradient(180deg,#0c8b7e,#176da1);bottom:18px;content:"";position:absolute;right:0;top:18px;width:4px; }
.favat-page-heading>div { min-width:0; }
.favat-page-heading h1 { color:var(--favat-navy);font-size:clamp(1.55rem,2.25vw,2.1rem);letter-spacing:-.045em;line-height:1.35;margin:7px 0 5px; }
.favat-page-heading p { color:#587083;font-size:.88rem;line-height:1.8;margin:0;max-width:900px; }
.favat-eyebrow { align-items:center;background:#eaf6f3;border-radius:999px;color:#08796f;display:inline-flex;font-size:.72rem;font-weight:800;gap:7px;letter-spacing:.01em;padding:5px 10px; }
.favat-format-badge { align-items:center;background:#fff;border:1px solid #bfe3d9;border-radius:15px;box-shadow:0 8px 24px rgba(8,118,107,.08);color:#08766b;display:grid;flex:0 0 auto;gap:1px 10px;grid-template-columns:36px auto;min-width:205px;padding:13px 15px; }
.favat-format-badge i { align-items:center;background:#e6f6f1;border-radius:10px;display:flex;font-size:1.05rem;grid-row:1/3;height:36px;justify-content:center;width:36px; }.favat-format-badge strong { font-size:.76rem; }.favat-format-badge small { color:#607d76;font-size:.64rem; }
.favat-workspace { display: grid; gap: 18px; grid-template-columns: minmax(0, 1fr) 330px; margin: 0 auto 24px; max-width: 1440px; }
.favat-upload-card,.favat-history { border: 1px solid #d9e5ec; border-radius: 18px; box-shadow: 0 12px 35px rgba(18,48,71,.06); overflow: hidden; }
.favat-steps { margin-bottom: 22px; }.favat-steps .step-item { color: #7a8e9c; font-size: .72rem; font-weight: 700; }.favat-steps .step-item.active { color: #08766b; }
.favat-drop-zone { align-items: center; background: linear-gradient(135deg,#f3fbf8,#f7fafc); border: 2px dashed #95c9bd; border-radius: 16px; cursor: pointer; display: grid; gap: 16px; grid-template-columns: 62px 1fr auto; min-height: 150px; padding: 24px; transition: .18s ease; }
.favat-drop-zone:hover,.favat-drop-zone.is-dragging,.favat-drop-zone:focus-visible { background: #eaf7f2; border-color: #0b9183; box-shadow: 0 0 0 4px rgba(11,145,131,.12); outline: none; transform: translateY(-1px); }
.favat-drop-zone__icon { align-items: center; background: #fff; border: 1px solid #cce6df; border-radius: 15px; color: #0b9183; display: flex; font-size: 1.8rem; height: 62px; justify-content: center; width: 62px; }
.favat-drop-zone h2 { color: var(--favat-ink); font-size: 1.08rem; margin: 0 0 5px; }.favat-drop-zone p { color: #6c8190; font-size: .78rem; margin: 0; }
.favat-file-summary { align-items: center; background: #f5f9fb; border: 1px solid #dce8ee; border-radius: 12px; display: grid; gap: 12px; grid-template-columns: 42px 1fr auto; margin-top: 14px; padding: 11px 14px; }
.favat-file-summary>span { align-items:center;background:#dcf5e9;border-radius:10px;color:#0a8a65;display:flex;font-size:1.1rem;height:42px;justify-content:center;width:42px; }.favat-file-summary strong,.favat-file-summary small { display:block; }.favat-file-summary small { color:#718694;font-size:.68rem;margin-top:2px; }
.favat-submit { margin-top: 14px; min-height: 44px; width: 100%; }
.favat-errors { border: 1px solid #efc8cc; border-radius: 12px; margin-top: 14px; overflow: hidden; }.favat-errors__heading { align-items:center;background:#fff1f2;display:flex;justify-content:space-between;padding:12px 14px; }.favat-errors__heading strong,.favat-errors__heading span { display:block; }.favat-errors__heading>div>span { color:#8b5d63;font-size:.7rem;margin-top:2px; }.favat-errors .table { margin:0; }
.favat-history .card-header { align-items:center;display:flex;justify-content:space-between; }.favat-history .card-header small { color:#718694;font-size:.67rem; }.favat-history__list { max-height: 340px; overflow:auto; padding:9px; }
.favat-history-item { align-items:center;background:transparent;border:0;border-bottom:1px solid #edf2f5;border-radius:10px;color:var(--favat-ink);display:grid;gap:10px;grid-template-columns:38px 1fr auto;padding:10px;text-align:right;width:100%; }.favat-history-item:hover,.favat-history-item:focus-visible,.favat-history-item.is-active { background:#edf7f5;outline:none; }.favat-history-item__icon { align-items:center;background:#e8f2f8;border-radius:10px;color:#17679e;display:flex;height:38px;justify-content:center;width:38px; }.favat-history-item strong,.favat-history-item small { display:block;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }.favat-history-item strong { font-size:.74rem; }.favat-history-item small { color:#758996;font-size:.63rem;margin-top:3px; }.favat-history-item b { color:#17679e;font-size:.8rem; }.favat-history-empty { padding:25px 10px; }.favat-history-empty .empty-icon { font-size:1.6rem; }
.favat-report-shell { margin: 0 auto; max-width: 1440px; }.favat-report-toolbar { align-items:flex-end;background:#fff;border:1px solid #d9e5ec;border-radius:15px;display:flex;justify-content:space-between;margin-bottom:14px;padding:12px 14px;position:sticky;top:8px;z-index:20; }.favat-report-range,.favat-export-actions { align-items:flex-end;display:flex;gap:9px; }.favat-report-range>div { min-width:150px; }.favat-report-range label { color:#687d8c;display:block;font-size:.65rem;font-weight:700;margin-bottom:4px; }.favat-report-range>span { color:#7f919d;margin-bottom:10px; }.favat-report-loading { align-items:center;background:#fff;border:1px solid #d9e5ec;border-radius:14px;color:#426074;display:flex;gap:12px;justify-content:center;margin-bottom:14px;padding:24px; }
.favat-report { background:#eef4f7;border:1px solid #c8d9e2;border-radius:22px;color:var(--favat-ink);direction:rtl;font-family:Vazirmatn,Tahoma,sans-serif;margin:0 auto;overflow:hidden;padding:18px;position:relative;width:100%; }
.favat-report-header { align-items:center;background:linear-gradient(112deg,#062f4b 0%,#074f78 72%,#0c6686 100%);border-radius:15px;color:#fff;display:grid;gap:18px;grid-template-columns:250px 1fr 180px;min-height:118px;padding:20px 26px;position:relative; }
.favat-report-header:after { background:#f1ad27;content:"";height:5px;left:24px;position:absolute;right:24px;top:0; }.favat-report-brand { align-items:center;display:flex;gap:12px; }.favat-report-brand>img { background:#fff;border-radius:var(--app-radius-md);height:64px;object-fit:contain;width:64px; }.favat-report-brand strong,.favat-report-brand small { display:block; }.favat-report-brand strong { font-size:.74rem;line-height:1.7; }.favat-report-brand small { color:#bcd3df;font-size:.63rem;margin-top:4px; }.favat-report-title { text-align:center; }.favat-report-title h2 { color:#fff;font-size:1.55rem;margin:0 0 9px; }.favat-report-title p { background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);border-radius:999px;display:inline-block;font-size:.72rem;margin:0;padding:6px 18px; }.favat-report-date { align-items:center;border-right:1px solid rgba(255,255,255,.2);display:grid;gap:2px;grid-template-columns:32px 1fr;padding-right:18px; }.favat-report-date i { font-size:1.35rem;grid-row:1/3; }.favat-report-date span { color:#bad0db;font-size:.62rem; }.favat-report-date strong { font-size:.78rem; }
.favat-kpis { display:grid;gap:10px;grid-template-columns:repeat(6,1fr);margin-top:12px; }.favat-kpi { align-items:center;background:#fff;border:1px solid #d3e0e7;border-radius:13px;display:grid;gap:2px;grid-template-columns:40px 1fr;min-height:92px;padding:12px;position:relative; }.favat-kpi:before { background:currentColor;border-radius:10px 0 0 10px;bottom:10px;content:"";opacity:.8;position:absolute;right:0;top:10px;width:3px; }.favat-kpi i { align-items:center;background:currentColor;border-radius:11px;display:flex;font-size:1rem;grid-row:1/4;height:40px;justify-content:center;opacity:.92;width:40px; }.favat-kpi i:before { color:#fff; }.favat-kpi span { color:#587080;font-size:.66rem; }.favat-kpi strong { color:var(--favat-ink);font-size:1.35rem;line-height:1.2; }.favat-kpi small { color:#718895;font-size:.6rem; }.favat-kpi--blue{color:#136bb0}.favat-kpi--green{color:#16875d}.favat-kpi--orange{color:#e5910c}.favat-kpi--red{color:#cf3c45}.favat-kpi--violet{color:#7650a8}.favat-kpi--cyan{color:#1599a5}
.favat-report-grid { display:grid;gap:12px;margin-top:12px; }.favat-report-grid--top { grid-template-columns: 35% 1fr; }.favat-report-grid--middle { grid-template-columns: 1fr 42%; }.favat-report-grid--bottom { grid-template-columns: 1fr 1fr; }.favat-panel { background:#fff;border:1px solid #d3e0e7;border-radius:14px;min-width:0;overflow:hidden;padding:14px; }.favat-panel__title { align-items:flex-start;border-bottom:1px solid #edf2f5;display:flex;justify-content:space-between;margin-bottom:8px;padding-bottom:9px; }.favat-panel__title h3 { color:#123a56;font-size:.82rem;margin:0 0 3px; }.favat-panel__title p { color:#78909e;font-size:.6rem;line-height:1.65;margin:0;max-width:92%; }.favat-chart-download { align-items:center;background:#edf5f9;border:0;border-radius:8px;color:#1a668f;display:flex;flex:0 0 auto;height:30px;justify-content:center;width:30px; }.favat-chart-download:hover,.favat-chart-download:focus-visible { background:#d9ebf4;outline:2px solid #72a9c6; }.favat-chart { direction:ltr;height:280px;width:100%; }.favat-chart--tall { height:350px; }
.favat-ranking-table { border-collapse:collapse;font-size:.67rem;width:100%; }.favat-ranking-table th { color:#718794;font-size:.59rem;padding:7px 6px;text-align:right; }.favat-ranking-table td { border-top:1px solid #edf2f5;padding:8px 6px; }.favat-ranking-table td:first-child { color:#17679e;font-weight:800;width:36px; }.favat-ranking-table td:nth-child(2) { max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }.favat-ranking-table td:nth-child(3),.favat-ranking-table td:nth-child(4) { font-weight:700;text-align:left; }.favat-other-orgs { align-items:center;background:#eef5f8;border-radius:9px;display:flex;font-size:.66rem;justify-content:space-between;margin-top:8px;padding:8px 10px; }.favat-other-orgs strong { color:#0b5c8c; }
.favat-provinces { align-items:center;background:#fff;border:1px solid #d3e0e7;border-radius:14px;display:flex;gap:18px;justify-content:space-between;margin-top:12px;padding:12px 16px; }.favat-provinces>div:first-child { align-items:center;display:flex;gap:10px;min-width:210px; }.favat-provinces i { align-items:center;background:#e7f2f8;border-radius:10px;color:#12658f;display:flex;height:38px;justify-content:center;width:38px; }.favat-provinces strong,.favat-provinces small { display:block; }.favat-provinces strong { color:#123a56;font-size:.72rem; }.favat-provinces small { color:#748896;font-size:.58rem;margin-top:2px; }.favat-province-list { display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end; }.favat-province-list span { background:#edf5f8;border-radius:999px;color:#365d73;font-size:.62rem;padding:6px 10px; }.favat-province-list b { color:#0b5c8c;margin-right:5px; }
.favat-insights { background:#fff;border:1px solid #d3e0e7;border-radius:14px;display:grid;grid-template-columns:repeat(4,1fr);margin-top:12px;padding:12px 8px; }.favat-insights>div { align-items:center;border-left:1px solid #e2ebef;display:grid;gap:1px;grid-template-columns:44px 1fr;padding:5px 16px; }.favat-insights>div:last-child { border-left:0; }.favat-insights i { align-items:center;background:#e8f3f8;border-radius:50%;color:#12658f;display:flex;font-size:1.1rem;grid-row:1/4;height:42px;justify-content:center;width:42px; }.favat-insights span { color:#748896;font-size:.61rem; }.favat-insights strong { color:#123a56;font-size:.78rem;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }.favat-insights small { color:#67808f;font-size:.58rem; }
.favat-report-footer { align-items:center;background:#062f4b;border-radius:10px;color:#d9e7ee;display:flex;font-size:.63rem;gap:8px;margin-top:12px;padding:9px 14px; }.favat-report-footer i { color:#f1ad27;font-size:1rem; }.favat-report-footer strong { color:#fff;margin-right:auto;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
@media (max-width:1100px){.favat-workspace{grid-template-columns:1fr}.favat-history__list{max-height:260px}.favat-report-shell{overflow-x:auto}.favat-report{min-width:1180px}.favat-report-toolbar{left:0;min-width:760px;right:0}.favat-page-heading{align-items:stretch;flex-direction:column;gap:16px}.favat-format-badge{align-self:stretch;min-width:0}}
@media (max-width:640px){.favat-page{padding:18px 12px 36px}.favat-drop-zone{grid-template-columns:50px 1fr;padding:18px}.favat-drop-zone__icon{height:50px;width:50px}.favat-drop-zone .btn{grid-column:1/3;width:100%}.favat-report-toolbar{align-items:stretch;flex-direction:column;position:static}.favat-report-range{align-items:stretch;display:grid;grid-template-columns:1fr 20px 1fr}.favat-report-range>div{min-width:0}.favat-report-range .btn{grid-column:1/4}.favat-export-actions .btn{flex:1}}
@media print {
  @page { size: A3 landscape; margin: 7mm; }
  body { background:#fff!important; }.app-sidebar,.app-topbar,.app-footer,.favat-page-heading,.favat-workspace,.favat-report-toolbar,.favat-report-loading,.favat-report-error { display:none!important; }
  .app-main,.app-content,.favat-page,.favat-report-shell { margin:0!important;max-width:none!important;padding:0!important;width:100%!important; }
  .favat-report-shell,.favat-report { display:block!important; }.favat-report { border:0;border-radius:0;min-width:0!important;padding:10px;width:100%!important;print-color-adjust:exact;-webkit-print-color-adjust:exact; }
  .favat-chart { height:220px!important; }.favat-chart--tall { height:280px!important; }
}
