*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6;background-color:#f4f7f6;color:#333;display:flex;flex-direction:column;min-height:100vh}.app-wrapper{display:flex;flex-direction:column;flex-grow:1}main.container{width:100%;max-width:1140px;margin:20px auto;padding:0 20px;flex-grow:1}h1{color:#2c3e50;margin-bottom:25px;text-align:center;font-size:2.1em;font-weight:600}ul,ol{list-style:none}a{color:#4a90e2}@media (max-width: 992px){main.container{max-width:960px;padding:0 15px}h1{font-size:2em}}@media (max-width: 768px){main.container{max-width:720px;margin:15px auto}h1{font-size:1.8em;margin-bottom:20px}}@media (max-width: 576px){main.container{padding:0 10px}}.app-header{background-color:#4a90e2;color:#fff;padding:10px 20px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #0000001a}.app-header a{color:#fff;text-decoration:none;font-weight:700}.appnesto-link{font-size:1.2em}.home-link{font-size:1.6em;text-decoration:none;line-height:1;transition:transform .2s ease}.home-link:hover{transform:scale(1.1)}@media (max-width: 600px){.app-header{padding:8px 15px}.appnesto-link{font-size:1.1em}.home-link{font-size:1.5em}}.app-footer{text-align:center;padding:15px;margin-top:30px;font-size:.9em;color:#777;background-color:#e9ecef;border-top:none}.checklist-card-link{text-decoration:none;color:inherit;display:block;display:flex}.checklist-card{background-color:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 5px #00000014;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out;height:100%;width:100%}.checklist-card:hover{transform:translateY(-5px);box-shadow:0 4px 10px #0000001f}.checklist-card h2{color:#34495e;margin-bottom:5px;font-size:1.3em}.checklist-card p{font-size:.95em;color:#555;line-height:1.5}@media (max-width: 600px){.checklist-card{padding:15px}.checklist-card h2{font-size:1.2em}}.home-container{padding-top:20px}.home-container h1{margin-bottom:25px}.checklist-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.task-item{background-color:#fff;border:1px solid #ddd;border-radius:6px;margin-bottom:12px;padding:12px 15px;display:flex;align-items:center;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,transform .1s ease;-webkit-user-select:none;user-select:none;break-inside:avoid;page-break-inside:avoid}.task-item:hover{background-color:#f9f9f9;border-color:#ccc}.task-item:active{transform:scale(.99)}.task-checkbox-container{display:flex;align-items:center;margin-right:15px}.task-checkbox{width:22px;height:22px;border:2px solid #aaa;border-radius:4px;flex-shrink:0;display:flex;justify-content:center;align-items:center;transition:background-color .2s ease,border-color .2s ease}.task-text{flex-grow:1;color:#333;line-height:1.5;transition:color .2s ease,text-decoration .2s ease;text-decoration:none}.task-item.completed{background-color:#5fd380!important;border-color:#a5d6a7}.task-item.completed .task-text{color:#fff}.task-item.completed .task-checkbox{background-color:#4caf50!important;border-color:#388e3c!important}.task-item.completed .task-checkbox:before{content:"✔";color:#fff;font-weight:700;font-size:16px}.progress-container{margin-bottom:25px;text-align:center}.progress-bar-wrapper{background-color:#e0e0e0;border-radius:10px;overflow:hidden;height:20px;margin-bottom:5px;width:100%;max-width:500px;margin-left:auto;margin-right:auto;box-shadow:none}.progress-bar{background-color:#4caf50;height:100%;width:0%;border-radius:10px 0 0 10px;transition:width .4s ease-in-out;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.8em;font-weight:400;text-shadow:none}.progress-bar[style*="width: 100%"]{border-radius:10px}.progress-text{font-size:.9em;color:#555}@media (max-width: 600px){.progress-bar-wrapper{height:18px}}.checklist-container{padding-top:20px}.checklist-container h1{margin-bottom:20px}.task-list{list-style:none;padding:0;margin:0 auto}@media (min-width: 768px){.task-list{column-count:2;column-gap:25px}}@media (min-width: 1200px){.task-list{column-count:3;column-gap:30px}}
