/* Klean.ro - app.css */
:root { --primary:#1a56db; --success:#057a55; --warning:#c27803; --danger:#c81e1e; --bg:#f8fafc; }
body { background:var(--bg); font-family:'Segoe UI',system-ui,sans-serif; }
.brand-icon { width:28px;height:28px;background:rgba(255,255,255,.2);border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:.85rem; }
.stat-card { border:0;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.08);transition:.2s; }
.stat-card:hover { transform:translateY(-2px);box-shadow:0 6px 18px rgba(0,0,0,.12); }
.stat-icon { width:52px;height:52px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.4rem; }
.job-card { border-radius:14px;border:0;box-shadow:0 2px 10px rgba(0,0,0,.09); }
.photo-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px; }
.photo-grid img { width:100%;height:120px;object-fit:cover;border-radius:8px;cursor:pointer;transition:.15s; }
.photo-grid img:hover { transform:scale(1.04); }
.photo-upload-zone { border:2px dashed #adb5bd;border-radius:12px;padding:30px;text-align:center;cursor:pointer;transition:.2s; }
.photo-upload-zone:hover { border-color:var(--primary);background:#eef2ff; }
.checklist-item { padding:10px 14px;border-radius:8px;margin-bottom:4px;background:#fff;border:1px solid #e2e8f0; }
.checklist-item.checked { background:#f0fdf4;border-color:#bbf7d0; }
.star-rating .fa-star { font-size:1.2rem;margin-right:2px; }
.star-rating-input .fa-star:hover { color:#f59e0b!important;cursor:pointer; }
.table-ec thead { background:var(--primary);color:#fff; }
.table-ec th { font-weight:600;font-size:.85rem; }
.table-ec td { vertical-align:middle; }
.apt-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px; }
.apt-tile { border-radius:10px;padding:10px 6px;text-align:center;font-size:.78rem;font-weight:600;cursor:pointer;transition:.15s; }
.apt-tile:hover { transform:scale(1.07); }
.apt-tile.scheduled   { background:#f1f5f9;border:1px solid #cbd5e1;color:#475569; }
.apt-tile.in_progress { background:#fef9c3;border:1px solid #fde68a;color:#854d0e; }
.apt-tile.done        { background:#dcfce7;border:1px solid #86efac;color:#166534; }
.apt-tile.verified    { background:#dbeafe;border:1px solid #93c5fd;color:#1e40af; }
.apt-tile.issue       { background:#fee2e2;border:1px solid #fca5a5;color:#991b1b; }
.timeline::before { content:'';position:absolute;left:18px;top:0;bottom:0;width:2px;background:#e2e8f0; }
.timeline { position:relative; }
.timeline-item { position:relative;padding-left:46px;margin-bottom:20px; }
.timeline-icon { position:absolute;left:0;top:0;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.9rem;border:3px solid #fff;box-shadow:0 0 0 2px #e2e8f0; }
.gps-badge { font-size:.75rem;background:#e0f2fe;color:#0369a1;border-radius:20px;padding:2px 8px; }
.plan-starter   { background:#6b7280;color:#fff;padding:2px 8px;border-radius:12px;font-size:.75rem; }
.plan-pro       { background:#1a56db;color:#fff;padding:2px 8px;border-radius:12px;font-size:.75rem; }
.plan-enterprise{ background:#d97706;color:#fff;padding:2px 8px;border-radius:12px;font-size:.75rem; }
@media(max-width:767px){
  .bottom-nav{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #e2e8f0;display:flex;z-index:1000}
  .bottom-nav a{flex:1;text-align:center;padding:10px 4px 8px;font-size:.7rem;color:#64748b;text-decoration:none}
  .bottom-nav a.active,.bottom-nav a:hover{color:var(--primary)}
  .bottom-nav i{display:block;font-size:1.2rem;margin-bottom:2px}
  main{padding-bottom:70px!important}
}
@media print{.navbar,footer,.btn,.no-print{display:none!important}.card{box-shadow:none!important;border:1px solid #ddd!important}}
