/* V29.0.0 — mobile layout, readable finance values, and compact project summaries */
:root{--ui-radius:16px}
html,body{max-width:100%;overflow-x:hidden}
#app{min-width:0;overflow-x:clip}
.body-area,.card,.card-body,.detail-grid,.detail-grid>*{min-width:0}
.card{border-radius:var(--ui-radius)}
.card-header{gap:12px;min-width:0;flex-wrap:wrap}
.card-title,.page-heading h1{line-height:1.4;overflow-wrap:anywhere}
.card-subtitle,.small-text,.info-item strong,.notice strong,.notice p{overflow-wrap:anywhere}
.tabs{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}
.tabs::-webkit-scrollbar{display:none}
.tab{flex:0 0 auto;scroll-snap-align:center;padding-inline:14px}
.stats-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
.stat-card{min-width:0;padding:clamp(13px,2.2vw,22px)}
.stat-header{gap:8px;min-width:0}
.stat-label{min-width:0;line-height:1.5;overflow-wrap:anywhere}
.stat-value{direction:ltr;text-align:start;font-size:clamp(15px,3.6vw,26px);line-height:1.25;letter-spacing:-.035em;overflow-wrap:anywhere;word-break:normal;font-variant-numeric:tabular-nums}
.stat-foot{line-height:1.6;overflow-wrap:anywhere}
.project-finance-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.project-finance-summary>div{min-width:0;padding:14px;border:1px solid var(--border);border-radius:13px;background:#fff}
.project-finance-summary span{display:block;color:#858585;font-size:12px;line-height:1.5}
.project-finance-summary strong{display:block;margin-top:8px;color:#171717;font-size:clamp(14px,3.4vw,22px);line-height:1.3;letter-spacing:-.03em;white-space:normal;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.project-finance-summary small{font-size:.65em;color:#777;letter-spacing:0}
.finance-primary-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
.finance-breakdown{margin-top:12px;border:1px solid var(--border);border-radius:12px;background:#fff;padding:13px 15px}
.finance-breakdown summary{cursor:pointer;font-weight:700;color:#565656}
.finance-breakdown>div{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-top:12px;margin-top:12px;border-top:1px solid var(--border);font-size:13px}
.finance-breakdown strong{direction:ltr;text-align:left;overflow-wrap:anywhere}
.item-name{min-width:0;white-space:normal;overflow-wrap:anywhere;line-height:1.6}
.detail-meta{display:flex;gap:9px 16px;flex-wrap:wrap;min-width:0}
@media(max-width:650px){
  .body-area{padding-inline:12px}
  .page-heading h1{font-size:clamp(20px,5.5vw,25px)}
  .tabs{padding-inline:8px;gap:2px}
  .tab{font-size:12px;padding:14px 10px}
  .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .finance-primary-stats{grid-template-columns:1fr}
  .finance-primary-stats .stat-card{padding:13px 15px}
  .finance-primary-stats .stat-value{margin-top:8px;font-size:clamp(18px,5vw,24px)}
  .project-finance-summary{gap:7px}
  .project-finance-summary>div{padding:10px 8px}
  .project-finance-summary span{font-size:11px}
  .project-finance-summary strong{font-size:clamp(12px,3.4vw,17px);letter-spacing:-.04em}
  .detail-grid{grid-template-columns:1fr}
  .detail-grid>.card,.detail-grid>div{min-width:0}
  .table-scroll:has(.data-table tbody .item-name){display:block!important;overflow:visible}
  .data-table:has(tbody .item-name){display:block;width:100%}
  .data-table:has(tbody .item-name) thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .data-table:has(tbody .item-name) tbody,.data-table:has(tbody .item-name) tr{display:grid;width:100%;min-width:0}
  .data-table:has(tbody .item-name) tr{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;background:#fff;border:1px solid var(--border);border-radius:12px;margin:0 0 10px;overflow:hidden}
  .data-table:has(tbody .item-name) td{min-width:0;padding:10px 12px;border-bottom:1px solid #f0f0f0;overflow-wrap:anywhere;font-size:12px}
  .data-table:has(tbody .item-name) td:first-child{grid-column:1/-1;font-size:14px;font-weight:750;background:#fafafa}
  #project-results .data-table:has(tbody .item-name) td:nth-child(2)::before{content:"العميل";display:block;color:#888;font-size:10px;margin-bottom:3px}
  #project-results .data-table:has(tbody .item-name) td:nth-child(3)::before{content:"موقع المشروع";display:block;color:#888;font-size:10px;margin-bottom:3px}
  #project-results .data-table:has(tbody .item-name) td:nth-child(4)::before{content:"الحالة";display:block;color:#888;font-size:10px;margin-bottom:3px}
  #project-results .data-table:has(tbody .item-name) td:nth-child(5)::before{content:"القيمة المتبقية";display:block;color:#888;font-size:10px;margin-bottom:3px}
}
@media(max-width:390px){
  .project-finance-summary{grid-template-columns:1fr}
  .project-finance-summary>div{display:flex;align-items:center;justify-content:space-between;gap:8px}
  .project-finance-summary strong{margin-top:0;text-align:left}
  .stats-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:no-preference){
  .stat-card,.project-finance-summary>div,.finance-breakdown{transition:box-shadow .18s ease,transform .18s ease}
  .stat-card:hover,.project-finance-summary>div:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(20,30,50,.07)}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}
}
.client-directory-list{display:grid;gap:8px}.client-directory-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}.client-directory-row:last-child{border-bottom:0}.client-directory-row strong{overflow-wrap:anywhere}

.project-summary-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:16px;align-items:stretch}
.project-summary-grid .card{margin:0;min-width:0}
.project-summary-grid .info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.project-balance-main>strong{display:block;font-size:clamp(24px,3vw,38px);color:#e86920;text-align:right;margin:6px 0 12px}
.project-quick-actions{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0}
.project-activity .notice{min-width:0}
.project-activity .notice p{overflow-wrap:anywhere}
.project-extra{margin-top:16px}
.project-extra>summary{cursor:pointer;padding:18px 22px;font-weight:700}
.home-focus{grid-template-columns:repeat(3,minmax(0,1fr))}
.home-focus .stat-card{width:100%;text-align:right;cursor:pointer;border:1px solid var(--border)}
.home-decisions{margin-top:18px}
@media(max-width:760px){
  .project-summary-grid,.home-focus{grid-template-columns:1fr}
  .project-summary-grid .info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .project-quick-actions .button{flex:1 1 42%;justify-content:center;min-height:44px}
  .project-activity .card-body{padding:12px}
  .project-summary-grid .card-body{padding:16px}
}
@media(max-width:390px){.project-summary-grid .info-grid{grid-template-columns:1fr}}

/* Compact, actionable home summaries. */
.home-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
.home-summary-card{min-width:0;background:#fff;border:1px solid var(--border);border-radius:16px;padding:17px 18px;box-shadow:var(--shadow)}
.home-summary-card header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.home-summary-card h2{font-size:17px;line-height:1.5;margin:0;color:#262626}
.home-summary-link{background:none;border:0;color:#ba5722;display:inline-flex;align-items:center;gap:3px;font:inherit;font-size:12px;font-weight:750;white-space:nowrap;cursor:pointer}
.home-summary-count{font-size:28px;font-weight:850;line-height:1.35;margin:9px 0;color:#202020;font-variant-numeric:tabular-nums}
.home-summary-count span{font-size:12px;font-weight:600;color:#777}
.home-summary-tags{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 9px}
.home-summary-tags span{font-size:11px;color:#715645;background:#faf2eb;border-radius:7px;padding:5px 8px;line-height:1.5}
.home-summary-row{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;text-align:right;background:transparent;border:0;border-top:1px solid #eeeeef;padding:11px 1px;cursor:pointer;color:#252525;font:inherit}
.home-summary-row span{min-width:0}.home-summary-row strong,.home-summary-row small{display:block;overflow-wrap:anywhere;line-height:1.55}
.home-summary-row strong{font-size:13px}.home-summary-row small{color:#777;font-size:11px;margin-top:2px}.home-summary-row svg{flex:none;color:#b9693a}
.home-summary-row:hover strong,.home-summary-link:hover{color:#db6929}
.home-summary-empty,.home-summary-note{font-size:11px;line-height:1.7;color:#777;margin:10px 0 0}
.home-summary-note{background:#faf8f5;border-radius:8px;padding:8px 10px}
@media(max-width:760px){.home-summary-grid{grid-template-columns:minmax(0,1fr);gap:10px}.home-summary-card{padding:14px 15px}.home-summary-card h2{font-size:16px}.home-summary-count{font-size:24px;margin:6px 0}.home-summary-row{padding:9px 1px}}

/* Keep native iOS date controls within grid cells and the card padding. */
.field,.form-grid>*{min-width:0;min-inline-size:0}
.field input[type="date"],.smart-coverage-form input[type="date"],.site-monitor-toolbar input[type="date"]{box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-inline-size:0;display:block;-webkit-appearance:none;appearance:none}
input[type="date"]::-webkit-date-and-time-value{min-width:0;text-align:center}
.site-action-form{margin-top:12px;display:grid;gap:12px;min-width:0}
.site-action-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.site-action-reading{padding:12px;border-radius:12px;background:#faf6f1;margin:12px 0;line-height:1.8}
.site-action-reading p{margin:0 0 6px}.site-action-reading small{color:#777}
@media(max-width:690px){.site-action-form .form-grid{grid-template-columns:minmax(0,1fr)}.site-action-form .row-actions .button{white-space:normal;max-width:100%;min-width:0}}


/* Project detail section navigation */
.project-section-nav{position:sticky;top:72px;z-index:8;display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:10px;margin:0 0 16px;background:rgba(247,247,248,.96);border:1px solid #e5e5e7;border-radius:16px;box-shadow:0 8px 28px rgba(0,0,0,.06);backdrop-filter:blur(14px);-webkit-overflow-scrolling:touch}
.project-section-nav::-webkit-scrollbar{display:none}
.project-section-nav a,.project-section-nav button{flex:0 0 auto;display:flex;align-items:center;gap:7px;min-height:42px;padding:8px 15px;border:1px solid #dedee2;border-radius:12px;background:#fff;color:#171719;font-weight:700;text-decoration:none;white-space:nowrap}
.project-section-nav a.active,.project-section-nav button.active{background:#171719;color:#fff;border-color:#171719}
.project-section-nav a span,.project-section-nav button span{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#fff3ea;color:#b84d12;font-size:12px}
.project-section-nav a.active span,.project-section-nav button.active span{background:#ff641a;color:#fff}
.project-section-anchor{scroll-margin-top:142px}
.project-section-list{display:grid;gap:10px}
.project-section-list article{padding:13px 14px;border:1px solid #e7e7ea;border-radius:13px;background:#fafafa}
.project-section-list article strong{display:block;margin-bottom:4px}
.project-section-list article p{margin:0;color:#666;line-height:1.65}
.project-blocker-list article{border-color:#f0d5c5;background:#fff9f5}
@media(max-width:720px){.project-section-nav{top:64px;margin-inline:-2px;padding:8px}.project-section-nav a,.project-section-nav button{min-height:40px;padding:7px 13px;font-size:15px}.project-section-anchor{scroll-margin-top:126px}}

.project-tabs button{font-family:inherit;cursor:pointer}
.project-tab-page{animation:project-tab-in .18s ease-out}
.project-page-actions{display:flex;gap:8px;flex-wrap:wrap}
.project-finance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}
.project-finance-grid>div{display:grid;gap:5px;padding:14px;border:1px solid #e6e6e9;border-radius:14px;background:#fafafa}
.project-finance-grid span{color:#777;font-size:14px}.project-finance-grid strong{font-size:18px}
@keyframes project-tab-in{from{opacity:.35;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:720px){.project-finance-grid{grid-template-columns:1fr}.project-page-actions{width:100%}}
