@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";:root{--bg-dark: #121212;--bg-panel: #1e1e1e;--bg-card: #2a2a2a;--bg-card-hover: #333333;--text-main: #ffffff;--text-muted: #a0a0a0;--accent-green: #4ade80;--accent-green-dark: #22c55e;--accent-blue: #60a5fa;--accent-purple: #c084fc;--accent-red: #f87171;--accent-gold: #facc15;--border-color: #3f3f3f;--glass-bg: rgba(255, 255, 255, .03);--glass-border: rgba(255, 255, 255, .08);--shadow: rgba(0,0,0,.4)}[data-theme=light]{--bg-dark: #f3f4f6;--bg-panel: #ffffff;--bg-card: #f9fafb;--bg-card-hover: #f3f4f6;--text-main: #111827;--text-muted: #6b7280;--accent-green: #10b981;--accent-green-dark: #059669;--accent-blue: #3b82f6;--accent-purple: #8b5cf6;--accent-red: #ef4444;--accent-gold: #eab308;--border-color: #e5e7eb;--glass-bg: rgba(0, 0, 0, .03);--glass-border: rgba(0, 0, 0, .08);--shadow: rgba(0,0,0,.1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,sans-serif;background-color:var(--bg-dark);color:var(--text-main);-webkit-font-smoothing:antialiased;overflow-x:hidden;line-height:1.5;transition:background-color .3s,color .3s}#root{height:100vh;height:100dvh}.btn-glass{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-main);padding:10px 18px;border-radius:12px;font-weight:500;font-size:.9rem;cursor:pointer;transition:all .3s}.btn-glass:hover{background:var(--bg-card-hover);transform:translateY(-2px);box-shadow:0 6px 16px var(--shadow)}.btn-primary{display:flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,var(--accent-green),var(--accent-green-dark));color:#121212;border:none;padding:10px 20px;border-radius:12px;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #4ade8066}.btn-secondary{display:flex;align-items:center;gap:6px;background:var(--bg-dark);border:1px solid var(--border-color);color:var(--text-main);padding:8px 14px;border-radius:10px;cursor:pointer;text-decoration:none;font-size:.85rem;font-weight:500;transition:all .2s}.btn-secondary:hover{background:var(--bg-card-hover);border-color:var(--accent-green)}.btn-danger{display:flex;align-items:center;gap:8px;background:#f871711a;color:var(--accent-red);border:1px solid rgba(248,113,113,.3);padding:12px 20px;border-radius:12px;font-weight:600;cursor:pointer;transition:all .2s;justify-content:center}.btn-danger:hover{background:var(--accent-red);color:#fff}.icon-btn{background:var(--bg-panel);border:1px solid var(--border-color);color:var(--text-muted);width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.icon-btn:hover{background:var(--bg-card-hover);color:var(--text-main)}.app-container{display:flex;height:100vh;height:100dvh;overflow:hidden;position:relative}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:40}.sidebar{width:260px;background-color:var(--bg-panel);border-right:1px solid var(--border-color);display:flex;flex-direction:column;padding:24px 16px;transition:transform .3s;flex-shrink:0;z-index:50}.logo-area{display:flex;align-items:center;gap:12px;margin-bottom:40px;padding:0 8px}.logo-text{font-weight:800;font-size:1.2rem;letter-spacing:-.5px}.close-sidebar{margin-left:auto}.nav-menu{display:flex;flex-direction:column;gap:6px;flex:1}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:transparent;border:none;color:var(--text-muted);font-size:.95rem;font-weight:500;border-radius:12px;cursor:pointer;transition:all .2s;text-align:left;width:100%}.nav-item:hover{background-color:var(--bg-card);color:var(--text-main)}.nav-item.active{background-color:#4ade801a;color:var(--accent-green)}.sidebar-footer{margin-top:auto;border-top:1px solid var(--border-color);padding-top:20px;display:flex;flex-direction:column;gap:16px}.user-profile{display:flex;align-items:center;gap:12px;padding:8px}.avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--accent-green),var(--accent-blue));display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.9rem;color:#121212}.user-info{display:flex;flex-direction:column}.user-name{font-weight:600;font-size:.9rem}.user-role{font-size:.75rem;color:var(--text-muted)}.main-content{flex:1;display:flex;flex-direction:column;padding:32px;overflow-y:auto}.top-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;gap:16px;flex-wrap:wrap}.header-left{display:flex;align-items:center;gap:16px}.page-title{font-size:1.8rem;font-weight:700;letter-spacing:-.5px}.header-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.search-bar{display:flex;align-items:center;gap:10px;background-color:var(--bg-panel);padding:10px 16px;border-radius:12px;border:1px solid var(--border-color);width:250px;transition:border-color .2s}.search-bar:focus-within{border-color:var(--accent-green)}.search-bar input{background:transparent;border:none;color:var(--text-main);outline:none;width:100%;font-size:.9rem}.kanban-board{display:flex;gap:24px;flex:1;overflow-x:auto;align-items:flex-start;padding-bottom:20px}.kanban-column{flex:1;min-width:320px;background-color:var(--bg-panel);border-radius:20px;padding:20px;display:flex;flex-direction:column;gap:16px;border:1px solid var(--border-color);box-shadow:0 4px 20px var(--shadow)}.column-header{display:flex;justify-content:space-between;align-items:flex-start}.column-title{font-size:1.1rem;font-weight:700;line-height:1.3}.column-period{font-size:.8rem;color:var(--text-muted);margin-top:4px;font-weight:500}.task-count{background:#4ade801a;padding:4px 10px;border-radius:20px;font-size:.8rem;color:var(--accent-green);font-weight:700;white-space:nowrap}.phase-progress-bar{height:6px;background-color:var(--bg-dark);border-radius:10px;overflow:hidden}.phase-goal{font-size:.85rem;color:var(--text-muted);font-style:italic;line-height:1.4}.task-list{display:flex;flex-direction:column;gap:12px;flex:1}.task-card{background-color:var(--bg-card);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:12px;border:1px solid transparent;transition:all .2s;cursor:grab;position:relative}.task-card:active{cursor:grabbing}.task-card:hover{border-color:var(--border-color);transform:translateY(-3px);box-shadow:0 8px 24px var(--shadow)}.task-card.completed{opacity:.6;border-color:#4ade804d}.favorite-btn{position:absolute;top:12px;right:12px;background:transparent;border:none;cursor:pointer;color:var(--border-color);transition:all .2s}.favorite-btn.active{color:var(--accent-gold);transform:scale(1.1)}.task-tags{display:flex;gap:8px;flex-wrap:wrap;padding-right:24px}.tag{font-size:.65rem;font-weight:700;padding:4px 10px;border-radius:20px;text-transform:uppercase;letter-spacing:.5px;display:inline-flex;align-items:center}.task-title{font-size:.95rem;font-weight:600;line-height:1.4;color:var(--text-main)}.task-footer{display:flex;justify-content:space-between;align-items:center;margin-top:8px;border-top:1px solid var(--border-color);padding-top:12px}.task-meta{font-size:.75rem;color:var(--text-muted);display:flex;gap:8px}.task-actions{display:flex;gap:8px}.status-btn,.link-btn{background:var(--bg-dark);border:1px solid var(--border-color);color:var(--text-muted);width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;text-decoration:none;transition:all .2s}.status-btn:hover,.link-btn:hover{background:var(--bg-card-hover);color:var(--text-main)}.status-btn.done{color:var(--accent-green);border-color:var(--accent-green);background:#4ade801a}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}.achievement-card{background:var(--bg-panel);border-radius:20px;padding:24px;border:1px solid var(--border-color);display:flex;align-items:center;gap:20px;opacity:.5;filter:grayscale(100%);transition:all .3s}.achievement-card.unlocked{opacity:1;filter:grayscale(0%);border-color:var(--accent-gold);box-shadow:0 4px 20px #facc1526}.achievement-icon{width:60px;height:60px;border-radius:50%;background:var(--bg-card);display:flex;align-items:center;justify-content:center;flex-shrink:0}.achievement-card.unlocked .achievement-icon{background:#facc1526;color:var(--accent-gold)}.achievement-info h3{font-size:1.1rem;margin-bottom:4px}.achievement-info p{font-size:.85rem;color:var(--text-muted)}.certifications-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px}.cert-card{background:var(--bg-panel);border-radius:20px;padding:24px;border:1px solid var(--border-color);display:flex;flex-direction:column;gap:16px;transition:all .3s;position:relative;overflow:hidden}.cert-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--accent-green),var(--accent-blue));opacity:0;transition:opacity .3s}.cert-card:hover:before{opacity:1}.cert-header{display:flex;justify-content:space-between;align-items:center}.cert-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center}.cert-badge{font-size:.7rem;font-weight:700;padding:4px 10px;border-radius:20px;text-transform:uppercase}.cert-badge.free{background:#4ade8026;color:var(--accent-green)}.cert-badge.paid{background:#f8717126;color:var(--accent-red)}.cert-card h3{font-size:1.1rem;font-weight:700;line-height:1.3}.cert-platform{font-size:.8rem;color:var(--accent-blue)}.cert-footer{margin-top:auto}.roadmap-view{display:flex;flex-direction:column;gap:32px;max-width:850px;margin:0 auto;width:100%;position:relative;padding-left:20px}.roadmap-view:before{content:"";position:absolute;left:35px;top:20px;bottom:20px;width:2px;background:linear-gradient(to bottom,var(--accent-green) 0%,var(--border-color) 100%);z-index:0}.roadmap-phase-card{background:var(--bg-panel);border-radius:20px;padding:28px;border:1px solid var(--border-color);position:relative;z-index:1;margin-left:24px;box-shadow:0 4px 20px var(--shadow)}.roadmap-phase-card:before{content:"";position:absolute;left:-34px;top:36px;width:18px;height:18px;border-radius:50%;background:var(--bg-panel);border:3px solid var(--accent-green);box-shadow:0 0 12px #4ade8066;transition:all .3s ease}.roadmap-phase-card:hover:before{background:var(--accent-green);transform:scale(1.2)}.roadmap-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.roadmap-header h2{font-size:1.3rem;font-weight:700}.badge{background:#4ade801a;padding:6px 14px;border-radius:20px;font-size:.75rem;color:var(--accent-green);font-weight:600}.roadmap-goal{color:var(--text-muted);margin-bottom:24px;font-size:.95rem}.roadmap-lessons{display:flex;flex-direction:column;gap:12px}.roadmap-lesson{display:flex;justify-content:space-between;align-items:center;background:var(--bg-card);padding:16px;border-radius:12px;border:1px solid transparent;transition:all .2s}.roadmap-lesson:hover{border-color:var(--border-color)}.roadmap-lesson.done{border-left:4px solid var(--accent-green);opacity:.6}.roadmap-lesson-info{display:flex;align-items:center;gap:16px}.check-btn{background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center}.empty-circle{width:22px;height:22px;border-radius:50%;border:2px solid var(--border-color);transition:all .2s}.check-btn:hover .empty-circle{border-color:var(--accent-green)}.projects-view{display:flex;flex-direction:column;gap:32px}.add-project-card{background:var(--bg-panel);padding:28px;border-radius:20px;border:1px solid var(--border-color)}.add-project-card h3{display:flex;align-items:center;gap:8px;margin-bottom:20px;font-weight:700}.add-project-card form{display:flex;flex-direction:column;gap:16px}.add-project-card input,.add-project-card textarea{background:var(--bg-dark);border:1px solid var(--border-color);color:var(--text-main);padding:14px;border-radius:12px;font-family:inherit;font-size:.9rem;outline:none;transition:all .2s}.add-project-card input:focus,.add-project-card textarea:focus{border-color:var(--accent-green);box-shadow:0 0 0 3px #4ade801a}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}.project-card{background:var(--bg-panel);padding:24px;border-radius:20px;border:1px solid var(--border-color);display:flex;flex-direction:column;gap:16px;transition:all .2s}.project-card:hover{border-color:var(--border-color);transform:translateY(-3px);box-shadow:0 8px 24px var(--shadow)}.project-header{display:flex;justify-content:space-between;align-items:center}.status-badge{font-size:.7rem;padding:4px 10px;border-radius:20px;font-weight:700;text-transform:uppercase}.status-badge.planning{background:#a0a0a026;color:#ccc}.project-card h3{font-size:1.2rem;font-weight:700}.project-card p{font-size:.9rem;color:var(--text-muted);flex:1;line-height:1.5}.project-tech{font-size:.8rem;color:var(--text-muted);background:var(--bg-dark);padding:10px 14px;border-radius:10px;border:1px solid var(--border-color);word-break:break-word}.project-tech strong{color:var(--accent-blue)}.project-links{display:flex;gap:12px;margin-top:16px;border-top:1px solid var(--border-color);padding-top:16px}.project-links .btn-secondary{flex:1;justify-content:center;font-size:.8rem;padding:8px 10px}.settings-view{display:flex;justify-content:center;padding-top:40px}.settings-card{background:var(--bg-panel);padding:40px;border-radius:24px;border:1px solid var(--border-color);max-width:550px;width:100%;display:flex;flex-direction:column;gap:20px}.settings-card h3{font-size:1.4rem;font-weight:700}.settings-card p{color:var(--text-muted);font-size:.95rem;line-height:1.6}.stats-panel{width:340px;background-color:var(--bg-panel);border-left:1px solid var(--border-color);padding:32px 24px;display:flex;flex-direction:column;gap:24px;overflow-y:auto;flex-shrink:0;z-index:50}.stats-header{display:flex;justify-content:space-between;align-items:center}.stats-title{font-size:1.2rem;font-weight:700}.stat-card{background-color:var(--bg-card);border-radius:20px;padding:24px;display:flex;align-items:center;gap:16px;border:1px solid var(--border-color)}.stat-card.highlight-green{background:linear-gradient(135deg,var(--accent-green),var(--accent-green-dark));border:none;box-shadow:0 8px 24px #4ade8040}.stat-icon-wrapper{width:52px;height:52px;border-radius:16px;background-color:#ffffff1a;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon-wrapper.bg-white{background-color:#fff}.stat-value{font-size:1.8rem;font-weight:800;line-height:1.1}.stat-label{font-size:.85rem;color:var(--text-muted);margin-top:4px;font-weight:500}.text-dark{color:#121212}.text-dark-muted{color:#166534}.timer-display{font-size:3.5rem;font-weight:800;text-align:center;font-variant-numeric:tabular-nums;margin:20px 0 24px;color:var(--text-main);letter-spacing:-1px}.timer-controls{display:flex;gap:12px;align-items:center;justify-content:center}.timer-select{background:var(--bg-dark);border:1px solid var(--border-color);color:var(--text-main);padding:10px 14px;border-radius:10px;outline:none;cursor:pointer;font-weight:600}.btn-icon-timer{background:var(--accent-green);border:none;color:#121212;width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px #4ade804d}.btn-icon-timer:hover{transform:scale(1.08);box-shadow:0 6px 16px #4ade8080}.chart-container-custom{display:flex;height:140px;gap:12px;margin-top:10px}.chart-y-labels{display:flex;flex-direction:column;justify-content:space-between;font-size:.7rem;color:var(--text-muted);font-weight:600;padding-bottom:20px}.chart-area-custom{flex:1;position:relative;padding-bottom:20px;border-bottom:1px solid var(--border-color)}.chart-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:calc(100% - 20px);overflow:visible}.chart-dot{position:absolute;width:12px;height:12px;background-color:#fff;border:3px solid var(--accent-green);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 10px #4ade8099;transition:all .3s ease}.chart-badge{position:absolute;background:var(--accent-green);color:#121212;font-size:.75rem;font-weight:800;padding:4px 10px;border-radius:20px;transform:translate(-100%,-140%);white-space:nowrap;box-shadow:0 4px 12px #4ade804d}.chart-badge:after{content:"";position:absolute;bottom:-4px;right:12px;width:8px;height:8px;background:var(--accent-green);transform:rotate(45deg)}.x-axis{display:flex;justify-content:space-between;padding-left:32px;font-size:.7rem;color:var(--text-muted);margin-top:12px;font-weight:600}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-top:12px}.calendar-day{aspect-ratio:1;border-radius:3px;background-color:var(--bg-dark);transition:all .2s}.calendar-day.active{background-color:var(--accent-green);box-shadow:0 0 8px #4ade8080}.footer-credit{margin-top:auto;text-align:center;font-size:.8rem;color:var(--text-muted);padding-top:24px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;display:flex;align-items:center;justify-content:center;padding:20px}.modal-content{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:24px;padding:32px;width:100%;max-width:600px;max-height:85vh;overflow-y:auto;box-shadow:0 20px 40px var(--shadow)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-header h2{font-size:1.4rem;font-weight:700}.modal-lessons{display:flex;flex-direction:column;gap:12px}.modal-lesson-item{display:flex;justify-content:space-between;align-items:center;background:var(--bg-card);padding:16px;border-radius:14px}.modal-lesson-item.done{border-left:4px solid var(--accent-green)}@media(max-width:1024px){.sidebar{position:fixed;left:0;top:0;bottom:0;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.stats-panel{position:fixed;right:0;top:0;bottom:0;transform:translate(100%);box-shadow:-10px 0 30px var(--shadow);width:340px}.stats-panel.open{transform:translate(0)}.main-content{padding:24px}.kanban-board{overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:24px}.kanban-column{scroll-snap-align:start;min-width:300px}}@media(max-width:768px){.main-content{padding:16px}.top-header{flex-direction:column;align-items:stretch}.header-actions{display:grid;grid-template-columns:1fr auto auto;gap:8px}.search-bar{width:100%}.kanban-board{flex-direction:column;overflow-x:hidden}.kanban-column{min-width:100%}.stats-panel{width:100%;max-width:100%}.btn-label{display:none}.roadmap-view{padding-left:0}.roadmap-view:before{left:20px}.roadmap-phase-card{margin-left:10px;padding:20px}.roadmap-phase-card:before{left:-22px;top:24px;width:14px;height:14px}.roadmap-lesson{flex-direction:column;align-items:flex-start;gap:12px}}
