/* track.css - Modern Project Tracker */
:root{
--ptm-primary:#006633;
--ptm-accent:#f59e0b;
--ptm-blue:#2563eb;
--ptm-danger:#dc2626;
--ptm-bg:#f5f7fa;
--ptm-card:#fff;
--ptm-border:#e5e7eb;
--ptm-text:#1f2937;
--ptm-muted:#6b7280;
--ptm-radius:16px;
--ptm-shadow:0 8px 24px rgba(0,0,0,.06);
}
.ptm-tracker-wrapper{max-width:1100px;margin:auto;padding:24px;font:16px/1.7 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ptm-text);background:var(--ptm-bg)}
.ptm-tracker-header,.ptm-section-card{background:var(--ptm-card);border:1px solid var(--ptm-border);border-radius:var(--ptm-radius);box-shadow:var(--ptm-shadow)}
.ptm-tracker-header{padding:36px;margin-bottom:28px}
.ptm-tracker-header h1{font-size:2.2rem;font-weight:800;line-height:1.2;margin:0}
.ptm-tracker-header h1 small{display:block;font-size:1rem;color:var(--ptm-muted);font-weight:500;margin-top:6px}
.ptm-last-updated{margin-top:12px;color:var(--ptm-muted);font-size:.92rem}
.ptm-status-badge{display:inline-block;padding:8px 18px;border-radius:999px;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.ptm-status-under-construction,.ptm-status-construction{background:#fff7e6;color:#b45309}
.ptm-status-planning{background:#eff6ff;color:#1d4ed8}
.ptm-status-completed{background:#ecfdf5;color:#15803d}
.ptm-status-stalled{background:#fef2f2;color:#b91c1c}
.ptm-progress-wrap{margin:24px 0}
.ptm-progress-bar{height:18px;background:#e5e7eb;border-radius:999px;overflow:hidden}
.ptm-progress-fill{height:100%;background:linear-gradient(90deg,var(--ptm-primary),#16a34a);transition:.6s}
.ptm-progress-text{font-weight:700;margin-top:8px;display:inline-block}
.ptm-section-card{padding:28px;margin-bottom:28px;transition:.25s}
.ptm-section-card:hover{transform:translateY(-2px)}
.ptm-section-card h2,.ptm-section-card h3{margin:0 0 16px;border-bottom:2px solid #eef2f7;padding-bottom:10px;font-size:1.35rem}
.ptm-snapshot-table,.ptm-timeline-table{width:100%;border-collapse:collapse}
.ptm-snapshot-table th,.ptm-timeline-table th{background:#f8fafc;width:220px}
.ptm-snapshot-table th,.ptm-snapshot-table td,.ptm-timeline-table th,.ptm-timeline-table td{padding:14px;border:1px solid var(--ptm-border)}
.ptm-update{background:#fff;border-left:5px solid var(--ptm-accent);border-radius:12px;padding:22px;margin-top:22px;box-shadow:0 3px 10px rgba(0,0,0,.04)}
.ptm-update h3{margin:0 0 8px;font-size:1.3rem}
.ptm-update h4{margin:0 0 12px;color:var(--ptm-muted)}
.ptm-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.ptm-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;border:1px solid var(--ptm-border);transition:.25s}
.ptm-gallery img:hover{transform:scale(1.03)}
.ptm-source{font-size:.9rem;color:var(--ptm-muted);margin-top:12px}
a{color:var(--ptm-blue);text-decoration:none}a:hover{text-decoration:underline}
@media(max-width:768px){
.ptm-tracker-wrapper{padding:14px}
.ptm-tracker-header{padding:24px}
.ptm-tracker-header h1{font-size:1.7rem}
.ptm-section-card{padding:18px}
.ptm-snapshot-table,.ptm-timeline-table{display:block;overflow-x:auto}
}
@media print{
.ptm-tracker-wrapper{background:#fff;padding:0}
.ptm-tracker-header,.ptm-section-card,.ptm-update{box-shadow:none}
}
