.stat-card{border-left:4px solid;transition:transform 0.2s;}.stat-card:hover{transform:translateY(-5px);box-shadow:0 4px 8px rgba(0,0,0,0.1);}.stat-card.primary{border-left-color:#0d6efd;}.stat-card.success{border-left-color:#198754;}.stat-card.warning{border-left-color:#ffc107;}.stat-card.danger{border-left-color:#dc3545;}.stat-card.info{border-left-color:#0dcaf0;}@media (min-width:768px){.stat-card h2{font-size:2.85rem !important;font-weight:800 !important;}.stat-card h6{font-size:1.15rem !important;font-weight:700 !important;}}.streak-display{font-size:3rem;font-weight:bold;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}.chart-container{position:relative;height:300px;margin-bottom:30px;}.performance-badge{font-size:0.85rem;padding:5px 10px;border-radius:20px;}.progress-cert{height:30px;font-size:0.9rem;}.schedule-card{transition:all 0.4s cubic-bezier(0.165,0.84,0.44,1);border-radius:1.25rem !important;overflow:hidden;border:1px solid rgba(0,0,0,0.05) !important;}.schedule-card:hover{transform:scale(1.01);box-shadow:0 15px 30px rgba(0,0,0,0.08) !important;}.d-day-box{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;padding:2.5rem 2rem;text-align:center;min-width:180px;display:flex;flex-direction:column;justify-content:center;border-radius:1rem;}.schedule-card[data-dday="urgent"] .d-day-box{background:linear-gradient(135deg,#ff416c 0%,#ff4b2b 100%);}.d-day-number{font-size:3.5rem;font-weight:900;line-height:1;letter-spacing:-2px;}.d-day-label{font-size:0.85rem;font-weight:700;text-transform:uppercase;margin-top:0.5rem;letter-spacing:1px;opacity:0.9;}.schedule-content{display:flex;gap:3rem;align-items:center;padding:0.5rem;}.schedule-details{display:flex;flex-direction:row;align-items:center;gap:4rem;flex-grow:1;}.schedule-title-main{font-size:1.5rem;font-weight:800;color:var(--bs-primary);margin-bottom:0;min-width:200px;}.schedule-meta-group{display:flex;gap:2.5rem;}.schedule-meta-item{font-size:1rem;color:var(--bs-secondary-color);display:flex;align-items:center;gap:0.75rem;white-space:nowrap;}.schedule-meta-item i{font-size:1.25rem;color:var(--bs-primary);}@media (max-width:1200px){.schedule-content{gap:2rem;}.schedule-details{gap:2rem;}.schedule-meta-group{gap:1.5rem;}}@media (max-width:992px){.schedule-details{flex-direction:column;align-items:flex-start;gap:1rem;}.schedule-title-main{min-width:auto;}}@media (max-width:768px){.dashboard-header h2{font-size:1.1rem !important;letter-spacing:-0.03em;}.schedule-content{flex-direction:row;align-items:stretch;}.d-day-box{width:85px;min-width:85px;border-radius:1.25rem 0 0 1.25rem;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:0.5rem;}.d-day-number{font-size:1.75rem;line-height:1;margin-bottom:2px;}.d-day-label{font-size:0.55rem;letter-spacing:0;}.schedule-details{align-items:flex-start;width:100%;padding:0.75rem 1rem !important;flex-direction:column;gap:0.4rem;justify-content:center;}.schedule-meta-group{flex-direction:column;gap:0.25rem;align-items:flex-start;}.schedule-meta-item{justify-content:flex-start;font-size:0.85rem;}.schedule-title-main{text-align:left;min-width:auto;padding-right:0 !important;font-size:1.05rem;line-height:1.2;}.stat-card .card-body{padding:1rem 0.5rem !important;display:flex;flex-direction:column;justify-content:center;min-height:100px;}.stat-card h2{font-size:1.85rem !important;font-weight:800 !important;}.stat-card h6{font-size:0.95rem !important;margin-bottom:0.35rem !important;font-weight:700 !important;}.profile-medal-wrap{margin:0;display:flex;justify-content:center;}.profile-summary-card .card-body{padding:1rem !important;}}.dashboard-header h2{line-height:1.2;display:flex;align-items:center;white-space:nowrap;}.btn-dash-header{display:inline-flex !important;align-items:center !important;justify-content:center !important;height:40px !important;min-height:initial !important;padding:0 1rem !important;font-size:0.95rem !important;line-height:1 !important;white-space:nowrap !important;vertical-align:middle !important;}@media (max-width:768px){.btn-dash-header{height:34px !important;min-height:34px !important;padding:0 0.45rem !important;font-size:0.8rem !important;}}.h2-md{font-size:1.25rem;}.h4-md{font-size:1.1rem;}@media (min-width:768px){.h2-md{font-size:2rem !important;}.h4-md{font-size:1.5rem !important;}}.study-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background-color:var(--bs-border-color);}.calendar-day-header{background-color:var(--bs-tertiary-bg);padding:10px;text-align:center;font-weight:bold;font-size:0.85rem;}.calendar-day{background-color:var(--card-bg);min-height:100px;padding:8px;position:relative;transition:background-color 0.2s;}.calendar-day.not-current-month{opacity:0.3;}.calendar-day .day-number{font-size:0.9rem;font-weight:500;}.calendar-day .study-count{margin-top:5px;font-size:0.75rem;color:var(--bs-secondary-color);}.calendar-day.today{box-shadow:inset 0 0 0 2px var(--bs-primary);}.calendar-day.level-0{background-color:var(--card-bg);}.calendar-day.level-1{background-color:rgba(25,135,84,0.1);}.calendar-day.level-2{background-color:rgba(25,135,84,0.3);}.calendar-day.level-3{background-color:rgba(25,135,84,0.6);color:white;}.calendar-day.level-3 .study-count{color:rgba(255,255,255,0.8);}.heatmap-box{display:inline-block;width:14px;height:14px;border-radius:3px;vertical-align:middle;margin-right:4px;border:1px solid rgba(0,0,0,0.1);}.heatmap-box.level-0{background-color:var(--bs-border-color-translucent);}.heatmap-box.level-1{background-color:rgba(25,135,84,0.1);}.heatmap-box.level-2{background-color:rgba(25,135,84,0.3);}.heatmap-box.level-3{background-color:rgba(25,135,84,0.6);}.exam-marker{position:absolute;top:5px;right:5px;font-size:1.2rem;animation:bounce 2s infinite;}@keyframes bounce{0%,20%,50%,80%,100%{transform:translateY(0);}40%{transform:translateY(-5px);}60%{transform:translateY(-3px);}}@media (max-width:768px){.calendar-day{min-height:65px;padding:4px;}.calendar-day .study-count{font-size:0.65rem;margin-top:2px;letter-spacing:-0.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}}