*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6;color:#333;background-color:#f5f7fa}.layout{display:flex;flex-direction:column;min-height:100vh}.top-nav{background-color:#2c3e50;color:#fff;padding:1rem 2rem;box-shadow:0 2px 4px #0000001a}.top-nav-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.site-title{font-size:1.5rem;font-weight:600;margin:0}.day-tabs{display:flex;gap:.5rem}.day-tab{background-color:transparent;color:#fff;border:2px solid rgba(255,255,255,.3);padding:.5rem 1.5rem;font-size:1rem;cursor:pointer;border-radius:4px;transition:all .3s ease}.day-tab:hover{background-color:#ffffff1a;border-color:#ffffff80}.day-tab.active{background-color:#3498db;border-color:#3498db}.main-container{display:flex;flex:1;max-width:1200px;width:100%;margin:0 auto;gap:2rem;padding:2rem}.sidebar{flex:0 0 250px;background-color:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 2px 8px #0000001a;height:fit-content;position:sticky;top:2rem}.sidebar-title{font-size:1.25rem;color:#2c3e50;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid #ecf0f1}.section-list{list-style:none}.section-list li{margin-bottom:.5rem}.section-button{width:100%;text-align:left;background-color:transparent;border:none;padding:.75rem 1rem;font-size:.95rem;cursor:pointer;border-radius:4px;transition:all .2s ease;color:#555}.section-button:hover{background-color:#ecf0f1;color:#2c3e50}.section-button.active{background-color:#3498db;color:#fff;font-weight:500}.section-button.completed{border-left:3px solid #27ae60}.section-button .checkmark{color:#27ae60;font-weight:700;margin-right:.25rem}.content{flex:1;background-color:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 8px #0000001a}.content-area{animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.section-title{font-size:2rem;color:#2c3e50;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:3px solid #3498db}.section-content{color:#444;line-height:1.8}.section-content h3{font-size:1.5rem;color:#2c3e50;margin-top:2rem;margin-bottom:1rem}.section-content h4{font-size:1.2rem;color:#34495e;margin-top:1.5rem;margin-bottom:.75rem}.section-content p{margin-bottom:1rem}.section-content ul,.section-content ol{margin-bottom:1rem;margin-left:2rem}.section-content li{margin-bottom:.5rem}.section-content a{color:#3498db;text-decoration:none;font-weight:500}.section-content a:hover{text-decoration:underline}.section-content code{background-color:#f8f9fa;padding:.2rem .4rem;border-radius:3px;font-family:Courier New,Courier,monospace;font-size:.9em;color:#e74c3c}.section-content pre{background-color:#2c3e50;color:#ecf0f1;padding:1rem;border-radius:4px;overflow-x:auto;margin:1rem 0}.section-content pre code{background-color:transparent;color:#ecf0f1;padding:0}.section-content strong{color:#2c3e50;font-weight:600}.section-content img{max-width:100%;height:auto;border-radius:4px;margin:1rem 0}.completion-button{display:block;margin:2rem auto 0;padding:.75rem 2rem;font-size:1rem;font-weight:500;color:#fff;background-color:#3498db;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 4px #0000001a}.completion-button:hover{background-color:#2980b9;transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.completion-button.completed{background-color:#27ae60}.completion-button.completed:hover{background-color:#229954}.section-content table{width:100%;border-collapse:collapse;margin:1rem 0}.section-content table th,.section-content table td{border:1px solid #ddd;padding:.75rem;text-align:left}.section-content table th{background-color:#f8f9fa;font-weight:600}.info-box{background-color:#e8f4f8;border-left:4px solid #3498db;padding:1rem;margin:1.5rem 0;border-radius:4px}.info-box strong{color:#3498db}@media (max-width: 768px){.top-nav-content{flex-direction:column;align-items:flex-start}.site-title{font-size:1.25rem}.main-container{flex-direction:column;padding:1rem;gap:1rem}.sidebar{flex:1;position:static;width:100%}.content{padding:1.5rem}.section-title{font-size:1.5rem}.section-content h3{font-size:1.25rem}.section-content h4{font-size:1.1rem}}@media (max-width: 480px){.top-nav{padding:1rem}.day-tabs{width:100%}.day-tab{flex:1;padding:.5rem;font-size:.9rem}.content{padding:1rem}.section-content pre{font-size:.85rem;padding:.75rem}}
