:root{--primary:#1a2c42;--secondary:#3498db;--accent:#2ecc71;--light:#f8f9fa;--dark:#0b131e;--paper:#fff}body{font-family:Poppins,sans-serif;background-color:var(--light);color:var(--dark);margin:0;padding:0}.main-title{font-weight:700}.main-title,.section-title{font-family:Roboto Slab,serif;color:var(--primary)}.section-title{font-weight:600}.navbar{background-color:var(--primary);padding:1rem 0;box-shadow:0 2px 10px rgba(0,0,0,.1)}.navbar-brand{font-family:Roboto Slab,serif;font-size:1.8rem;color:var(--secondary)}.hero-section{background:linear-gradient(rgba(0,0,0,.5),rgba(0,0,0,.7)),url(/code-bg.jpg);background-size:cover;background-position:50%;background-attachment:fixed;color:#fff;padding:7rem 0;text-align:center}.hero-title{font-size:3.5rem;margin-bottom:1rem}.hero-subtitle{font-size:1.5rem;margin-bottom:2rem}.dashboard-container{background-color:var(--paper);border-radius:10px;box-shadow:0 4px 15px rgba(0,0,0,.05);padding:2rem;margin-bottom:2rem}.stats-container{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.stat-card{flex:1 1;min-width:200px;background-color:var(--light);border-radius:8px;padding:1.5rem;text-align:center;box-shadow:0 2px 8px rgba(0,0,0,.05)}.stat-title{font-size:1.2rem;color:var(--dark);margin-bottom:.5rem}.stat-value{font-size:2rem;font-weight:700;color:var(--primary)}.timeline{position:relative;padding-left:60px;margin-top:2rem}.timeline:before{content:"";position:absolute;left:20px;top:0;bottom:0;width:2px;background-color:var(--secondary)}.timeline-item{position:relative;margin-bottom:2rem;padding:1rem;background-color:var(--light);border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.05)}.timeline-icon{position:absolute;left:-60px;top:0;width:40px;height:40px;background-color:var(--secondary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff}.timeline-date{font-size:.9rem;color:var(--secondary);margin-bottom:.5rem}.timeline-title{font-size:1.2rem;color:var(--primary);margin-bottom:.5rem}.timeline-content{font-size:1rem;color:var(--dark)}.certificate{background-color:var(--paper);border:10px solid var(--primary);padding:2rem;text-align:center;position:relative;max-width:800px;margin:0 auto}.certificate:before{content:"";position:absolute;top:10px;left:10px;right:10px;bottom:10px;border:2px solid var(--accent);pointer-events:none}.certificate-title{font-family:Roboto Slab,serif;font-size:2.5rem;color:var(--primary);margin-bottom:1rem}.certificate-subtitle{font-size:1.5rem;color:var(--secondary);margin-bottom:2rem}.certificate-user{font-family:Roboto Slab,serif;font-size:2rem;color:var(--accent);margin-bottom:2rem}.certificate-description{font-size:1.2rem;color:var(--dark);margin-bottom:2rem;max-width:600px;margin-left:auto;margin-right:auto}.certificate-date{font-size:1rem;color:var(--secondary);margin-bottom:1rem}.certificate-signature{font-family:Dancing Script,cursive;font-size:1.8rem;color:var(--primary)}.summary-card{position:relative;padding:2rem;background-color:var(--light);border-radius:10px;box-shadow:0 4px 15px rgba(0,0,0,.1);margin-bottom:2rem}.summary-text{font-family:Roboto Slab,serif;font-size:1.2rem;color:var(--primary);padding:1rem;position:relative}.btn-primary{background-color:var(--primary);border-color:var(--primary);padding:.5rem 1.5rem;border-radius:5px;font-weight:600;transition:all .3s}.btn-primary:hover{background-color:var(--dark);border-color:var(--dark)}.btn-secondary{background-color:var(--secondary);border-color:var(--secondary);padding:.5rem 1.5rem;border-radius:5px;font-weight:600;transition:all .3s}.btn-secondary:hover{background-color:#2980b9;border-color:#2980b9}.btn-outline-primary{background-color:transparent;border-color:var(--primary);color:var(--primary);padding:.5rem 1.5rem;border-radius:5px;font-weight:600;transition:all .3s}.btn-outline-primary:hover{background-color:var(--primary);color:#fff}.card{border:none;border-radius:10px;box-shadow:0 4px 15px rgba(0,0,0,.05)}.card-header{background-color:var(--primary);color:#fff;border-top-left-radius:10px!important;border-top-right-radius:10px!important}.time-selector{display:inline-block;margin-right:1rem;margin-bottom:1rem}.time-selector input[type=radio]{display:none}.time-selector label{display:inline-block;background-color:var(--light);color:var(--primary);padding:.5rem 1rem;border-radius:5px;cursor:pointer;transition:all .3s}.time-selector input[type=radio]:checked+label{background-color:var(--primary);color:#fff}