body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{text-align:center}ul{list-style-type:none;padding:0}li{margin:10px 0;font-size:18px;display:flex;align-items:center}.chore-picture{width:75px;height:75px;border-radius:50%;object-fit:cover;margin-right:20px}.chore-icon-container{position:relative;display:inline-block;margin-right:10px}.chore-icon{width:68px;height:68px;border-radius:8px;object-fit:cover;margin-left:10px;transition:filter .3s ease}.chore-icon-small{width:25px;height:25px;border-radius:2px;object-fit:cover;margin-left:5px;transition:filter .3s ease}.chore-icon.completed{filter:grayscale(100%)}.checkmark{position:absolute;top:12.5px;right:12.5px;background-color:green;color:#fff;font-size:14px;border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;font-weight:700}.no-chores{text-align:center;margin-top:20px}.no-chores-gif{width:230px;height:auto}.chores-container{position:relative;max-width:240px}.completion-gif-overlay{position:absolute;top:60px;left:10px;width:90%;height:90%;background-color:#fffc;display:flex;justify-content:center;align-items:center;z-index:10}.completion-gif-overlay img{max-width:230px;max-height:230px;animation:fadeInOut 10s ease-in-out}@keyframes fadeInOut{0%{opacity:0}10%{opacity:1}90%{opacity:1}to{opacity:0}}.chore-item{display:flex;align-items:left;margin:1rem 0}.chore-details{display:flex;flex-direction:column;align-items:flex-start}.chore-name{font-size:1.2rem;font-weight:700;align-items:left;text-align:left;margin-bottom:.2rem}.chore-next-due{font-size:.9rem;align-items:left;text-align:left;color:#b16262}.container{max-width:800px;margin:0 auto;padding:20px;font-family:Arial,sans-serif}h1{text-align:center;margin-bottom:20px}table{width:100%;border-collapse:collapse;margin:20px 0}table th,table td{border:1px solid #ddd;padding:8px;text-align:center}table th{background-color:#f4f4f4;font-weight:700}table tr:nth-child(2n){background-color:#f9f9f9}table tr:hover{background-color:#f1f1f1}.spinner{text-align:center;font-size:18px}.error{color:red;text-align:center;font-size:16px}.header{display:flex;align-items:center;margin-bottom:20px;min-height:120px}.user-info{display:flex;flex-direction:column}.weekly-reward{font-size:1rem;color:#777;margin-top:5px}.user-picture{width:100px;height:100px;border-radius:50%;object-fit:cover;margin-right:20px;flex-shrink:0;display:block}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0006;backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#ffffffe6;padding:15px;border-radius:12px;text-align:center;max-width:300px;width:85%;box-shadow:0 6px 16px #00000026;position:relative;animation:fadeIn .3s ease-in-out}.modal-content h3{font-size:16px;margin-bottom:10px;color:#333;font-weight:700}.modal-divider{border:none;border-top:2px solid #dee2e6;margin:15px 0;opacity:.6}.complete-btn{background:#007bff;color:#fff;padding:12px 24px;border:none;cursor:pointer;border-radius:8px;font-size:16px;font-weight:700;transition:background .2s ease-in-out,transform .1s ease-in-out;margin:10px auto 20px;min-width:120px;display:block;box-shadow:0 4px 8px #007bff4d}.complete-btn:hover{background:#0056b3;transform:scale(1.08);box-shadow:0 6px 12px #007bff80}.close-btn{background:#6c757d;color:#fff;padding:8px 12px;border:none;cursor:pointer;border-radius:6px;font-size:14px;font-weight:700;transition:background .2s ease-in-out,transform .1s ease-in-out;margin:10px auto 6px;min-width:80px;display:block}.close-btn:hover{background:#5a6268;transform:scale(1.05)}.user-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(60px,1fr));gap:8px;margin-top:15px;padding:6px}.user-card{text-align:center;cursor:pointer;background:#fff;color:#333;border-radius:8px;padding:8px;box-shadow:0 3px 6px #0000001a;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out;display:flex;flex-direction:column;align-items:center;border:2px solid transparent}.user-card:hover{transform:scale(1.05);box-shadow:0 5px 12px #0003;border-color:#28a745}.user-avatar{width:45px;height:45px;border-radius:50%;object-fit:cover;border:2px solid #ccc;transition:border .2s ease-in-out}.user-card:hover .user-avatar{border-color:#28a745}.chore-icon-skeleton{width:68px;height:68px;margin-left:10px;border-radius:8px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.chore-icon-error{width:68px;height:68px;margin-left:10px;border-radius:8px;background-color:#f0f0f0;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#ccc}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes fadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.days-late-badge{display:inline-block;margin-left:10px;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #0000001a;animation:pulse-badge 2s ease-in-out infinite}.days-late-badge.slightly-late{background:linear-gradient(135deg,gold,#ffb700);color:#333}.days-late-badge.late{background:linear-gradient(135deg,#ff8c00,tomato);color:#fff}.days-late-badge.very-late{background:linear-gradient(135deg,#dc143c,#8b0000);color:#fff;animation:pulse-urgent 1.5s ease-in-out infinite}@keyframes pulse-badge{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.02);opacity:.95}}@keyframes pulse-urgent{0%,to{transform:scale(1);box-shadow:0 2px 4px #0000001a}50%{transform:scale(1.05);box-shadow:0 4px 8px #dc143c66}}
