:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--shell-gap:clamp(12px, 1.6vw, 24px);--shell-pad:clamp(12px, 1.8vw, 24px);--panel-pad:clamp(16px, 1.6vw, 22px);--sidebar-width:clamp(220px, 18vw, 280px);--rail-width:clamp(260px, 22vw, 320px);color:#eff6ff;background:radial-gradient(circle at 0 0,#66ffd11f,#0000 28%),radial-gradient(circle at 100% 0,#ff8e5c24,#0000 30%),linear-gradient(160deg,#07111d 0%,#0d1a2a 48%,#132235 100%);font-family:Space Grotesk,Avenir Next,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;min-height:100%;margin:0}body{color:#eff6ff;background:radial-gradient(circle at 0 0,#66ffd11f,#0000 28%),radial-gradient(circle at 100% 0,#ff8e5c24,#0000 30%),linear-gradient(160deg,#07111d 0%,#0d1a2a 48%,#132235 100%);min-height:100vh;overflow:hidden}button,input,textarea,select{font:inherit}a{color:inherit}.screen{min-height:100vh}.auth-screen{grid-template-columns:minmax(320px,40vw) minmax(320px,1fr);min-height:100vh;display:grid}.auth-hero{background:linear-gradient(140deg,#ffffff08,#fff0),radial-gradient(circle at 0 0,#56cfe140,#0000 32%);border-right:1px solid #94a3b81f;flex-direction:column;justify-content:space-between;padding:clamp(28px,6vw,72px) clamp(24px,6vw,72px) clamp(24px,4vw,56px);display:flex}.auth-kicker,.eyebrow{color:#8ed9ff;letter-spacing:.08em;text-transform:uppercase;background:#0f172a80;border:1px solid #94a3b826;border-radius:999px;align-items:center;gap:10px;padding:8px 14px;font-size:.74rem;display:inline-flex}.auth-title{letter-spacing:-.05em;max-width:10ch;margin:20px 0 14px;font-size:clamp(3.2rem,7vw,5.8rem);line-height:.95}.auth-copy{color:#cbd5e1;max-width:36rem;font-size:1.05rem;line-height:1.65}.auth-points{gap:16px;margin-top:36px;display:grid}.auth-point{background:#09101ba3;border:1px solid #94a3b826;border-radius:20px;padding:18px 20px}.auth-point strong,.metric-value,.panel-title,.section-title,.timer-time{font-family:IBM Plex Mono,SFMono-Regular,monospace}.auth-panel-wrap{justify-content:center;align-items:center;padding:clamp(20px,4vw,48px);display:flex}.auth-panel{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#09101bdb;border:1px solid #94a3b826;border-radius:28px;width:min(100%,460px);padding:clamp(22px,3vw,34px);box-shadow:0 24px 80px #02061773}.auth-switch{background:#0f172ab3;border-radius:999px;gap:8px;margin-bottom:22px;padding:6px;display:inline-flex}.auth-switch button,.nav-button,.ghost-button,.outline-button,.mode-button,.status-pill,.quick-action{cursor:pointer;border:0}.auth-switch button{color:#94a3b8;background:0 0;border-radius:999px;padding:10px 16px;transition:all .16s}.auth-switch button.active{color:#05121f;background:linear-gradient(135deg,#58d5ff,#67ffc5);font-weight:700}.form-grid,.inline-form,.lab-form{gap:14px;display:grid}.form-grid.two,.stats-grid,.timeline-grid,.lab-grid,.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.calendar-layout{grid-template-columns:minmax(0,1.35fr) minmax(300px,.9fr);gap:14px;display:grid}.calendar-side,.agenda-list,.calendar-panel{gap:14px;display:grid}.calendar-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.calendar-weekdays span{color:#8fa4c7;text-transform:uppercase;letter-spacing:.08em;text-align:center;font-size:.78rem}.calendar-day{color:#eff6ff;text-align:left;cursor:pointer;background:#0f172a7a;border:1px solid #94a3b824;border-radius:18px;align-content:start;gap:8px;min-height:108px;padding:12px 10px;transition:transform .16s,border-color .16s,background .16s;display:grid}.calendar-day:hover{border-color:#58d5ff38;transform:translateY(-1px)}.calendar-day.muted{opacity:.45}.calendar-day.selected{background:#121f30d1;border-color:#58d5ff52}.calendar-day.today{box-shadow:inset 0 0 0 1px #67ffc53d}.calendar-day-number{font-weight:700}.calendar-markers{flex-wrap:wrap;gap:6px;min-height:10px;display:flex}.calendar-marker{background:#8fa4c7;border-radius:999px;width:8px;height:8px}.marker-activity{background:#58d5ff}.marker-course-target{background:#67ffc5}.marker-certification-exam{background:#ff8e5c}.marker-lab-completion{background:#d6bcfa}.calendar-count{color:#8fa4c7;font-size:.76rem;line-height:1.25}.agenda-panel,.agenda-item{gap:10px;display:grid}.agenda-item{background:#0f172a85;border:1px solid #94a3b81f;border-radius:18px;padding:14px}.agenda-item.compact{gap:8px}.agenda-tag{text-transform:capitalize}.agenda-activity{color:#d1f2ff;background:#58d5ff1a;border-color:#58d5ff2e}.agenda-course-target{color:#b7ffd9;background:#67ffc51a;border-color:#67ffc52e}.agenda-certification-exam{color:#ffd0c1;background:#ff8e5c1a;border-color:#ff8e5c2e}.agenda-lab-completion{color:#e7d5ff;background:#bb9af71a;border-color:#bb9af72e}.empty-state{background:#0f172a59;border:1px dashed #94a3b838;border-radius:20px;padding:18px}.field{gap:8px;display:grid}.field label{color:#cbd5e1;font-size:.9rem}.field input,.field textarea,.field select{color:#eff6ff;background:#0f172abd;border:1px solid #94a3b82e;border-radius:16px;outline:none;width:100%;padding:13px 14px;transition:border-color .16s,box-shadow .16s,transform .16s}.field textarea{resize:vertical;min-height:88px}.field input:focus,.field textarea:focus,.field select:focus{border-color:#67ffc58c;box-shadow:0 0 0 3px #58d5ff1f}.primary-button,.secondary-button,.nav-button.active,.quick-action{font-weight:700}.primary-button,.secondary-button,.ghost-button,.outline-button,.mode-button,.quick-action{border-radius:16px;min-height:48px;padding:0 18px}.primary-button{color:#04111d;background:linear-gradient(135deg,#58d5ff,#67ffc5)}.secondary-button{color:#ffd7c2;background:#ff8e5c2e;border:1px solid #ff8e5c47}.ghost-button{color:#cbd5e1;background:0 0;border:1px solid #94a3b82e}.outline-button{color:#d8e3f1;background:#0f172a80;border:1px solid #94a3b82e}.error-banner,.info-banner{border-radius:16px;padding:12px 14px;font-size:.92rem}.error-banner{color:#fecaca;background:#f871711f;border:1px solid #f871712e}.info-banner{color:#bfdbfe;background:#60a5fa1f;border:1px solid #60a5fa2e}.app-shell{grid-template-columns:minmax(220px, var(--sidebar-width)) minmax(0, 1fr) minmax(260px, var(--rail-width));gap:var(--shell-gap);height:100vh;padding:var(--shell-pad);display:grid;overflow:hidden}.sidebar,.content,.rail,.panel,.metric-card,.timeline-card,.lab-card,.course-card,.cert-card,.activity-card,.hero-card,.focus-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#070d18c2;border:1px solid #94a3b824;border-radius:26px;box-shadow:0 18px 48px #0206173d}.sidebar,.rail{top:var(--shell-pad);max-height:calc(100vh - (var(--shell-pad) * 2));align-self:start;padding:clamp(16px,1.8vw,20px);position:sticky;overflow:auto}.content{min-width:0;min-height:0;padding:clamp(16px,1.8vw,20px);overflow:auto}.brand{align-items:center;gap:14px;min-width:0;display:flex}.brand-mark{color:#8fe8ff;background:linear-gradient(135deg,#58d5ff33,#67ffc538);border-radius:16px;place-items:center;width:46px;height:46px;font-weight:700;display:grid}.brand-name{font-size:1.15rem;font-weight:700}.brand-subtitle,.muted,.subdued{color:#94a3b8}.nav-list{gap:10px;margin:clamp(16px,2vw,20px) 0 clamp(20px,2.4vw,24px);display:grid}.nav-button{color:#d9e4ef;background:0 0;border-radius:18px;justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:0 16px;transition:transform .16s,background .16s;display:flex}.nav-button:hover,.quick-action:hover,.outline-button:hover,.ghost-button:hover,.mode-button:hover{transform:translateY(-1px)}.nav-button.active{color:#f8fafc;background:linear-gradient(135deg,#58d5ff2e,#67ffc533)}.sidebar-footer,.rail-stack,.stack{gap:16px;display:grid}.quick-action{color:#ffd7c2;background:#ff8e5c24;justify-content:center;align-items:center;display:inline-flex}.topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;display:flex}.topbar h2,.panel-title,.section-title{margin:0}.topbar p,.panel-copy{color:#94a3b8;margin:6px 0 0}.topbar-actions{align-items:center;gap:12px;display:flex}.save-pill,.status-pill{color:#dbeafe;background:#0f172abf;border:1px solid #94a3b824;border-radius:999px;align-items:center;gap:8px;min-height:40px;padding:0 14px;display:inline-flex}.save-pill.error{color:#fecaca;border-color:#f871712e}.section{gap:14px;display:grid}.hero-card,.focus-card,.panel,.metric-card,.timeline-card,.lab-card,.course-card,.cert-card,.activity-card{padding:var(--panel-pad)}.hero-card{background:radial-gradient(circle at 100% 0,#ff8e5c2e,#0000 36%),#070d18db;gap:14px;display:grid}.hero-row,.metric-header,.timeline-header,.entry-row,.task-row,.panel-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.hero-row{align-items:flex-start}.hero-heading{letter-spacing:-.05em;max-width:14ch;margin:0 0 6px;font-size:clamp(2rem,4vw,3.4rem);line-height:.95}.hero-heading.compact{max-width:none;font-size:clamp(1.5rem,2.6vw,2.2rem)}.hero-actions,.mode-list,.button-row,.pill-row,.mini-grid{flex-wrap:wrap;gap:12px;display:flex}.stats-grid,.timeline-grid,.dashboard-grid,.lab-grid{gap:14px;display:grid}.metric-card{gap:8px;display:grid}.metric-value{letter-spacing:-.04em;font-size:2rem}.metric-note{color:#cbd5e1;font-size:.92rem}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}.timer-shell{gap:16px;display:grid}.timer-time{letter-spacing:-.08em;font-size:clamp(4rem,10vw,7rem);line-height:.9}.timer-progress{background:#94a3b81f;border-radius:999px;width:100%;height:14px;overflow:hidden}.timer-progress>span{border-radius:inherit;background:linear-gradient(90deg,#58d5ff,#67ffc5);height:100%;display:block}.mode-button{color:#dbeafe;background:#0f172a94;border:1px solid #94a3b824}.mode-button.active{background:#67ffc524;border-color:#67ffc54d}.focus-grid{gap:16px;display:grid}.item-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:14px;display:grid}.course-card,.cert-card,.lab-card,.timeline-card,.activity-card{gap:14px;display:grid}.progress-line{background:#94a3b81f;border-radius:999px;width:100%;height:10px;overflow:hidden}.progress-line>span{border-radius:inherit;background:linear-gradient(90deg,#ff8e5c,#67ffc5);height:100%;display:block}.task-list{gap:10px;display:grid}.task-row{background:#0f172a8c;border:1px solid #94a3b81f;border-radius:16px;padding:12px 14px}.task-row label{flex:1;align-items:center;gap:12px;display:flex}.task-row input[type=checkbox]{accent-color:#67ffc5;width:18px;height:18px}.task-row.done span{color:#7b91a7;text-decoration:line-through}.tag,.tiny-tag{color:#dbeafe;background:#0f172ab3;border:1px solid #94a3b824;border-radius:999px;justify-content:center;align-items:center;min-height:28px;padding:0 12px;font-size:.86rem;display:inline-flex}.tiny-tag{min-height:22px;padding:0 10px;font-size:.74rem}.status-pill{background:#ffffff0f}.status-pill.status-pwned,.tiny-tag.good{color:#b7ffd9;background:#67ffc51a;border:1px solid #67ffc52e}.status-pill.status-inprogress,.tiny-tag.warn{color:#d1f2ff;background:#58d5ff1a;border:1px solid #58d5ff2e}.status-pill.status-stuck,.tiny-tag.bad{color:#ffd0c1;background:#ff8e5c1a;border:1px solid #ff8e5c2e}.status-pill.status-todo{color:#cbd5e1;border:1px solid #94a3b82e}.platform-filter{flex-wrap:wrap;gap:10px;display:flex}.platform-chip{color:#dbeafe;cursor:pointer;background:#0f172a94;border:1px solid #94a3b829;border-radius:999px;min-height:40px;padding:0 14px}.platform-chip.active{color:#05121f;font-weight:700}.timeline-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}.timeline-date{font-size:2rem;font-weight:700}.entry-list{gap:12px;display:grid}.activity-card{background:linear-gradient(#ffffff05,#0000),#070d18c2}.rail .panel{padding:18px}.profile-name{margin:10px 0 6px;font-size:1.2rem}.profile-email{color:#94a3b8;word-break:break-word}.divider{background:#94a3b824;height:1px}.loading-screen{place-items:center;min-height:100vh;padding:32px;display:grid}.loading-card{background:#070d18cc;border:1px solid #94a3b824;border-radius:24px;padding:28px 30px}@media (width<=1350px){body{overflow:auto}.app-shell{grid-template-columns:minmax(220px,260px) minmax(0,1fr);height:auto;min-height:100vh}.rail{grid-column:1/-1;max-height:none;position:static}}@media (width<=1180px){.app-shell{grid-template-columns:minmax(200px,240px) minmax(0,1fr)}.sidebar{max-height:none}}@media (width<=1024px){.auth-screen,.app-shell,.calendar-layout,.dashboard-grid,.timeline-grid,.form-grid.two,.stats-grid,.lab-grid{grid-template-columns:1fr}.auth-hero,.auth-panel-wrap,.content,.sidebar,.rail{padding:24px}.sidebar,.rail{max-height:none;position:static;overflow:visible}.content{overflow:visible}.topbar,.hero-row,.panel-head,.entry-row{flex-direction:column;align-items:flex-start}.topbar-actions{flex-wrap:wrap;width:100%}}@media (height<=860px){body{overflow:auto}.app-shell{height:auto;min-height:100vh;overflow:visible}.sidebar,.rail,.content{max-height:none;overflow:visible}.auth-hero{gap:24px;padding:24px 24px 18px}.auth-title{margin:14px 0 10px;font-size:clamp(2.4rem,5vw,3.6rem)}.auth-copy{font-size:1rem;line-height:1.45}.auth-points{gap:12px;margin-top:20px}.auth-point{padding:14px 16px}.auth-panel-wrap,.auth-panel{padding:24px}}@media (height<=860px) and (width<=1024px){.auth-screen{grid-template-columns:1fr}}@media (width<=640px){.auth-title{max-width:none;font-size:clamp(2.4rem,12vw,3.6rem)}.topbar,.hero-row,.panel-head,.entry-row,.brand{gap:10px}.brand-mark{width:40px;height:40px}.nav-button,.primary-button,.secondary-button,.ghost-button,.outline-button,.mode-button,.quick-action{min-height:44px}.calendar-weekdays,.calendar-grid{gap:6px}.calendar-day{min-height:88px;padding:10px 8px}}
