.LearningMilestoneDetailSheet-module__QHpISa__overlay{z-index:220;-webkit-backdrop-filter:blur(3px);background:#0f172a52;position:fixed;inset:0}.LearningMilestoneDetailSheet-module__QHpISa__sheet{background:color-mix(in srgb,var(--rm-surface)94%,var(--rm-bg)6%);width:min(500px,92vw);height:100%;color:var(--rm-text);border-left:1px solid var(--rm-border);flex-direction:column;display:flex;position:absolute;top:0;right:0;box-shadow:-12px 0 36px #0f172a38}.LearningMilestoneDetailSheet-module__QHpISa__header{border-bottom:1px solid var(--rm-border);justify-content:space-between;align-items:flex-start;gap:12px;padding:22px 20px 14px;display:flex}.LearningMilestoneDetailSheet-module__QHpISa__headerMain{min-width:0}.LearningMilestoneDetailSheet-module__QHpISa__titleRow{align-items:flex-start;gap:12px;display:flex}.LearningMilestoneDetailSheet-module__QHpISa__titleLink{color:inherit;align-items:center;gap:8px;text-decoration:none;display:inline-flex}.LearningMilestoneDetailSheet-module__QHpISa__titleLink:hover{color:var(--rm-accent)}.LearningMilestoneDetailSheet-module__QHpISa__logo{object-fit:cover;border-radius:50%;flex-shrink:0;width:34px;height:34px}.LearningMilestoneDetailSheet-module__QHpISa__title{color:var(--rm-text);margin:0;font-size:24px;line-height:1.25}.LearningMilestoneDetailSheet-module__QHpISa__closeButton{border:1px solid var(--rm-border);width:34px;height:34px;color:var(--rm-text-muted);cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.LearningMilestoneDetailSheet-module__QHpISa__metaRow{border-bottom:1px solid var(--rm-border);color:var(--rm-text-muted);flex-wrap:wrap;gap:10px 14px;padding:12px 20px 14px;font-size:13px;display:flex}.LearningMilestoneDetailSheet-module__QHpISa__secondaryAction{border:1px solid var(--rm-border);min-height:38px;color:var(--rm-text);background:0 0;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.LearningMilestoneDetailSheet-module__QHpISa__body{flex:1;padding:18px 20px 24px;overflow:auto}.LearningMilestoneDetailSheet-module__QHpISa__section+.LearningMilestoneDetailSheet-module__QHpISa__section{margin-top:22px}.LearningMilestoneDetailSheet-module__QHpISa__sectionTitle{color:var(--rm-text);margin-bottom:10px;font-size:15px;font-weight:700}.LearningMilestoneDetailSheet-module__QHpISa__description{color:var(--rm-text);line-height:1.72}.LearningMilestoneDetailSheet-module__QHpISa__description .markdown-content{color:var(--rm-text)}:is(.LearningMilestoneDetailSheet-module__QHpISa__description .markdown-content p,.LearningMilestoneDetailSheet-module__QHpISa__description .markdown-content li,.LearningMilestoneDetailSheet-module__QHpISa__description .markdown-content strong,.LearningMilestoneDetailSheet-module__QHpISa__description .markdown-content em,.LearningMilestoneDetailSheet-module__QHpISa__description .markdown-content blockquote){color:var(--rm-text)}.LearningMilestoneDetailSheet-module__QHpISa__description .markdown-content blockquote{background:color-mix(in srgb,var(--rm-accent)6%,transparent);border-left-color:color-mix(in srgb,var(--rm-accent)55%,transparent)}:is(.LearningMilestoneDetailSheet-module__QHpISa__description .markdown-content h1,.LearningMilestoneDetailSheet-module__QHpISa__description .markdown-content h2,.LearningMilestoneDetailSheet-module__QHpISa__description .markdown-content h3,.LearningMilestoneDetailSheet-module__QHpISa__description .markdown-content h4,.LearningMilestoneDetailSheet-module__QHpISa__description .markdown-content h5,.LearningMilestoneDetailSheet-module__QHpISa__description .markdown-content h6){color:color-mix(in srgb,var(--rm-text)90%,var(--rm-accent))}.LearningMilestoneDetailSheet-module__QHpISa__description .markdown-content a{color:var(--rm-accent);border-bottom-color:color-mix(in srgb,var(--rm-accent)35%,transparent)}.LearningMilestoneDetailSheet-module__QHpISa__description .markdown-content pre{background:color-mix(in srgb,var(--rm-surface)82%,var(--rm-bg))}.LearningMilestoneDetailSheet-module__QHpISa__description .markdown-content code.inline-code{background:color-mix(in srgb,var(--rm-accent)10%,transparent);color:color-mix(in srgb,var(--rm-text)88%,var(--rm-accent))}.LearningMilestoneDetailSheet-module__QHpISa__description .markdown-content strong{font-weight:700}.LearningMilestoneDetailSheet-module__QHpISa__videoBlock{margin-top:16px}.LearningMilestoneDetailSheet-module__QHpISa__videoBlockTitle{color:var(--rm-text-muted);margin-bottom:10px;font-size:13px;font-weight:600}.LearningMilestoneDetailSheet-module__QHpISa__videoCard{text-align:left;cursor:pointer;background:0 0;border:none;width:100%;padding:0;display:block;position:relative}.LearningMilestoneDetailSheet-module__QHpISa__videoFrame{aspect-ratio:16/9;border:1px solid var(--rm-border);background:var(--rm-surface);width:100%;box-shadow:0 8px 16px var(--rm-shadow);border-radius:14px;position:relative;overflow:hidden}.LearningMilestoneDetailSheet-module__QHpISa__videoCover,.LearningMilestoneDetailSheet-module__QHpISa__videoIframe{width:100%;height:100%;position:absolute;inset:0}.LearningMilestoneDetailSheet-module__QHpISa__videoCover{background-position:50%;background-size:cover;transition:opacity .2s}.LearningMilestoneDetailSheet-module__QHpISa__videoCoverPlaceholder{background:linear-gradient(135deg,var(--rm-border),var(--rm-surface))}.LearningMilestoneDetailSheet-module__QHpISa__videoPlay{color:#ffffffeb;pointer-events:none;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:absolute;inset:0}.LearningMilestoneDetailSheet-module__QHpISa__videoPlay:before{content:"";background:#11182780;border:1px solid #ffffff8c;border-radius:999px;width:64px;height:64px;position:absolute;box-shadow:0 6px 12px #00000059}.LearningMilestoneDetailSheet-module__QHpISa__videoPlay svg{z-index:1;position:relative}.LearningMilestoneDetailSheet-module__QHpISa__videoIframe{opacity:0;border:0;transition:opacity .2s}.LearningMilestoneDetailSheet-module__QHpISa__videoCardPlaying .LearningMilestoneDetailSheet-module__QHpISa__videoCover,.LearningMilestoneDetailSheet-module__QHpISa__videoCardPlaying .LearningMilestoneDetailSheet-module__QHpISa__videoPlay{opacity:0}.LearningMilestoneDetailSheet-module__QHpISa__videoCardPlaying .LearningMilestoneDetailSheet-module__QHpISa__videoIframe{opacity:1}.LearningMilestoneDetailSheet-module__QHpISa__inlineActions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.LearningMilestoneDetailSheet-module__QHpISa__nodeList{flex-direction:column;gap:10px;display:flex}.LearningMilestoneDetailSheet-module__QHpISa__nodeChip{border:1px solid var(--rm-border);background:color-mix(in srgb,var(--rm-surface)90%,transparent);color:var(--rm-text);border-radius:14px;align-items:center;gap:10px;padding:11px 12px;font-size:13px;font-weight:600;text-decoration:none;transition:border-color .2s,color .2s,transform .2s;display:flex}.LearningMilestoneDetailSheet-module__QHpISa__nodeChip:hover{border-color:var(--rm-accent);color:var(--rm-accent);transform:translateY(-1px)}.LearningMilestoneDetailSheet-module__QHpISa__nodeOrder{background:color-mix(in srgb,var(--rm-accent)14%,transparent);width:22px;height:22px;color:var(--rm-accent);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;display:inline-flex}.LearningMilestoneDetailSheet-module__QHpISa__emptyText{color:var(--rm-text-muted);margin:0;font-size:14px;line-height:1.6}@media (max-width:768px){.LearningMilestoneDetailSheet-module__QHpISa__overlay{align-items:flex-end;display:flex}.LearningMilestoneDetailSheet-module__QHpISa__sheet{border-left:none;border-top:1px solid var(--rm-border);border-top-left-radius:18px;border-top-right-radius:18px;width:100%;max-height:min(78vh,680px);position:relative;box-shadow:0 -12px 36px #0f172a33}.LearningMilestoneDetailSheet-module__QHpISa__header{padding:18px 16px 12px}.LearningMilestoneDetailSheet-module__QHpISa__title{font-size:20px}.LearningMilestoneDetailSheet-module__QHpISa__metaRow{padding:10px 16px 12px}.LearningMilestoneDetailSheet-module__QHpISa__body{padding:16px 16px 24px}}
.LearningTableView-module__fQAISq__wrapper{background:var(--rm-bg);flex:1;width:100%;min-width:0;min-height:0;padding:0}.LearningTableView-module__fQAISq__scrollArea{box-sizing:border-box;background:var(--rm-bg);border:none;width:100%;max-width:100%;height:100%;overflow:auto}.LearningTableView-module__fQAISq__table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:1320px;margin-top:-1px}.LearningTableView-module__fQAISq__headerCell{z-index:3;background:var(--rm-bg);color:var(--rm-text);box-shadow:inset 0 -1px 0 color-mix(in srgb,var(--rm-border)88%,transparent);text-align:center;vertical-align:middle;white-space:normal;border:none;padding:10px;font-size:14px;font-weight:500;position:sticky;top:0}.LearningTableView-module__fQAISq__headerLabel{word-break:break-word;line-height:1.15;display:block}.LearningTableView-module__fQAISq__yearHeader{z-index:4;text-align:center;width:64px;min-width:64px;left:0}.LearningTableView-module__fQAISq__yearCell,.LearningTableView-module__fQAISq__bodyCell{background:color-mix(in srgb,var(--rm-surface)94%,var(--learning-table-row)6%);border:none}.LearningTableView-module__fQAISq__yearCell{width:64px;min-width:64px;color:color-mix(in srgb,var(--rm-text)82%,var(--learning-table-row)18%);text-align:center;vertical-align:middle;padding:18px 6px;font-size:17px;font-weight:500}.LearningTableView-module__fQAISq__stickyYear{z-index:2;background:color-mix(in srgb,var(--rm-surface)90%,var(--learning-table-row)10%);box-shadow:inset -1px 0 0 color-mix(in srgb,var(--rm-border)72%,transparent);position:sticky;left:0}.LearningTableView-module__fQAISq__bodyCell{vertical-align:top;min-height:80px;padding:0}.LearningTableView-module__fQAISq__cellList{flex-direction:column;align-items:stretch;min-height:100%;display:flex}.LearningTableView-module__fQAISq__entryButton{width:100%;color:var(--rm-text);text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:flex-start;gap:4px;padding:10px 10px 9px;transition:background .2s,color .2s;display:flex}.LearningTableView-module__fQAISq__entryWithDivider{border-bottom:1px solid color-mix(in srgb,var(--rm-border)82%,var(--learning-table-row)18%)}.LearningTableView-module__fQAISq__entryDate{color:color-mix(in srgb,var(--rm-text-muted)82%,var(--learning-table-row)18%);font-size:12px;font-weight:600;line-height:1.2}.LearningTableView-module__fQAISq__entryTitle{color:var(--rm-text);word-break:normal;overflow-wrap:break-word;white-space:normal;font-size:15px;line-height:1.25}.LearningTableView-module__fQAISq__entryButton:hover{background:color-mix(in srgb,var(--rm-surface)86%,var(--learning-table-row)14%)}.LearningTableView-module__fQAISq__entryButton:hover .LearningTableView-module__fQAISq__entryDate{color:color-mix(in srgb,var(--rm-text-muted)68%,var(--learning-table-row)32%)}.LearningTableView-module__fQAISq__entryButton:hover .LearningTableView-module__fQAISq__entryTitle{color:color-mix(in srgb,var(--rm-text)78%,var(--learning-table-row)22%);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb,var(--learning-table-row)34%,transparent);text-decoration-color:color-mix(in srgb,var(--learning-table-row)34%,transparent);text-underline-offset:2px}.LearningTableView-module__fQAISq__emptyState{border:1px dashed var(--rm-border);height:100%;min-height:320px;color:var(--rm-text-muted);background:color-mix(in srgb,var(--rm-surface)84%,transparent);justify-content:center;align-items:center;display:flex}@media (max-width:768px){.LearningTableView-module__fQAISq__wrapper{padding:0 0 calc(72px + env(safe-area-inset-bottom,0px))}.LearningTableView-module__fQAISq__table{min-width:980px}.LearningTableView-module__fQAISq__headerCell{padding:8px;font-size:13px}.LearningTableView-module__fQAISq__yearHeader,.LearningTableView-module__fQAISq__yearCell{width:58px;min-width:58px}.LearningTableView-module__fQAISq__yearCell{padding:16px 8px;font-size:16px}.LearningTableView-module__fQAISq__entryButton{gap:4px;padding:8px}.LearningTableView-module__fQAISq__entryDate{font-size:11px}.LearningTableView-module__fQAISq__entryTitle{font-size:14px}}
:root{--rm-bg:var(--theme-bg);--rm-surface:var(--theme-surface);--rm-border:var(--theme-border);--rm-text:var(--theme-text);--rm-text-muted:var(--theme-text-muted);--rm-accent:var(--theme-accent);--rm-accent-light:var(--theme-accent-light);--rm-success:var(--theme-success);--rm-success-light:var(--theme-success-light);--rm-warning:var(--theme-warning);--rm-error:var(--theme-error);--rm-shadow:var(--theme-shadow);--rm-shadow-lg:var(--theme-shadow-lg)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes flow{to{stroke-dashoffset:-20px}}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.learning-container{background:var(--rm-bg);color:var(--rm-text);width:100%;height:100vh;min-height:640px;display:flex;overflow:hidden}.intro-overlay{background:var(--rm-bg);z-index:100;flex-direction:column;justify-content:center;align-items:center;transition:opacity .32s;display:flex;position:fixed;inset:0;overflow:hidden}.intro-overlay.hidden{opacity:0;pointer-events:none}.intro-simple{z-index:1;text-align:center;flex-direction:column;gap:14px;width:min(1000px,92vw);padding:24px;display:flex;position:relative}.intro-title{color:var(--rm-text);letter-spacing:.08em;font-size:clamp(2.5rem,6vw,3.8rem);font-weight:600}.intro-subtitle{color:var(--rm-text-muted);letter-spacing:.03em;font-size:1rem}.intro-progress{flex-direction:column;gap:10px;margin-top:8px;display:flex}.intro-progress-label{color:var(--rm-text);letter-spacing:.05em;justify-content:space-between;align-items:center;font-size:.9rem;display:flex}.intro-progress-track{background:var(--rm-border);border-radius:999px;width:100%;height:10px;position:relative;overflow:hidden}.intro-progress-bar{background:linear-gradient(90deg,var(--rm-accent),var(--rm-success));height:100%;transition:width .25s}.intro-status-line{color:var(--rm-text-muted);letter-spacing:.03em;margin-top:4px;font-size:.85rem}.learning-header{z-index:200;background:0 0;justify-content:space-between;align-items:center;padding:16px 16px 0;display:flex;position:relative}.breadcrumb{color:var(--rm-text-muted);align-items:center;gap:8px;font-size:14px;display:flex}.breadcrumb-link{cursor:pointer;transition:color .2s}.breadcrumb-link:hover{color:var(--rm-accent)}.breadcrumb span:last-child{color:var(--rm-text);font-weight:500}.header-right{align-items:center;gap:20px;display:flex}.node-group{cursor:pointer;transition:all .3s}.link{transition:all .5s}.link.highlighted{stroke:var(--rm-accent);stroke-width:2px;opacity:1;stroke-dasharray:6 4;animation:1s linear infinite flow}.link-dot{fill:var(--rm-border);pointer-events:none;opacity:.8;transition:all .3s}.link-dot.highlighted{fill:var(--rm-accent);r:2.8px;opacity:1;filter:drop-shadow(0 0 3px var(--rm-accent))}.node-group.highlighted .node-rect{stroke:var(--rm-accent);stroke-width:2px}.node-group.highlighted>text{fill:var(--rm-accent);font-weight:700}.milestone-title-group.active text{fill:var(--rm-accent)}.learning-graph.has-highlight .node-group:not(.highlighted):not(.active){opacity:.3}.learning-graph.has-highlight .link:not(.highlighted){opacity:.15}.main-wrapper{flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.learning-toolbar{border-bottom:1px solid var(--rm-border);background:color-mix(in srgb,var(--rm-surface)84%,transparent);-webkit-backdrop-filter:blur(10px);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.learning-view-switch{flex-shrink:0;align-items:center;gap:2px;padding:0;display:inline-flex}.learning-view-switch-desktop{align-items:center;display:flex}.learning-view-switch-mobile{display:none}.learning-view-btn{min-width:auto;color:var(--rm-text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;gap:6px;padding:4px 8px;font-size:13px;font-weight:600;line-height:1.2;transition:color .2s,opacity .2s;display:inline-flex}.learning-view-btn:hover{color:var(--rm-text)}.learning-view-btn.active{color:var(--rm-accent)}.learning-view-btn+.learning-view-btn:before{content:"/";color:var(--rm-text-muted);margin-right:8px}.learning-type-strip{scrollbar-width:thin;align-items:center;gap:8px;min-width:0;display:flex;overflow-x:auto}.learning-type-chip{border:1px solid var(--rm-border);background:color-mix(in srgb,var(--rm-surface)88%,transparent);color:var(--rm-text-muted);white-space:nowrap;cursor:pointer;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:600;transition:border-color .2s,color .2s,background .2s}.learning-type-chip.active{border-color:var(--rm-accent);color:var(--rm-accent);background:color-mix(in srgb,var(--rm-accent)10%,var(--rm-surface))}.chart-container{background:var(--rm-bg);flex:1;position:relative;overflow:visible}.chart-container.pending{opacity:0}.chart-container.ready{opacity:1;transition:opacity .2s}.node-tooltip{background:var(--rm-surface);border:1px solid var(--rm-border);color:var(--rm-text);white-space:nowrap;pointer-events:none;box-shadow:var(--rm-shadow-lg);z-index:30;border-radius:8px;padding:6px 10px;font-size:12px;line-height:1.4;position:absolute;transform:translate(-50%,-130%)}@media (max-width:768px){.learning-container{height:auto;min-height:100vh;padding-bottom:calc(60px + env(safe-area-inset-bottom,0px));overflow:auto}.main-wrapper{min-height:480px}.learning-toolbar{z-index:70;flex-direction:column;align-items:stretch;padding:10px 12px;position:sticky;top:0}.learning-view-switch-desktop{display:none}.learning-view-switch-mobile{justify-content:center;padding:6px 12px 8px;display:flex}.learning-view-switch{justify-content:center;width:auto}.learning-view-btn{justify-content:center;padding:4px 6px}.learning-type-strip{padding-bottom:2px}.chart-container{min-height:460px}.learning-legend{flex-wrap:wrap;justify-content:center;gap:8px;padding:6px 10px;font-size:11px;bottom:calc(80px + env(safe-area-inset-bottom,0px))!important;z-index:60!important;pointer-events:none!important;position:fixed!important;left:8px!important;right:8px!important}.legend-item{gap:4px}.zoom-controls{gap:4px;bottom:calc(136px + env(safe-area-inset-bottom,0px))!important;z-index:60!important;flex-direction:row!important;position:fixed!important;right:8px!important}.zoom-btn{width:36px;height:36px}.year-selector{flex-flow:wrap;gap:4px;max-width:calc(100vw - 100px);z-index:60!important;position:fixed!important;inset:60px 8px auto auto!important}.year-btn{padding:3px 8px;font-size:11px}}.milestone-detail-overlay{z-index:99;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.milestone-detail-card{background:var(--rm-surface);border:1px solid var(--rm-border);z-index:100;width:480px;max-width:calc(100vw - 48px);max-height:calc(100vh - 100px);box-shadow:var(--rm-shadow-lg);border-radius:12px;flex-direction:column;animation:.2s ease-out fadeIn;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.milestone-detail-header{border-bottom:1px solid var(--rm-border);justify-content:space-between;align-items:center;padding:16px;display:flex}.milestone-detail-header h3{color:var(--rm-text);margin:0;font-size:16px;font-weight:600}.milestone-detail-header button{color:var(--rm-text-muted);cursor:pointer;background:0 0;border:none;padding:4px;transition:color .2s}.milestone-detail-header button:hover{color:var(--rm-text)}.milestone-detail-meta{border-bottom:1px solid var(--rm-border);flex-wrap:wrap;gap:8px;padding:12px 16px;display:flex}.milestone-type-badge{color:var(--rm-accent);background:var(--rm-accent-light);border:1px solid var(--rm-accent);border-radius:4px;padding:2px 8px;font-size:11px;line-height:1.2;display:inline-block}.milestone-detail-meta .milestone-date{color:var(--rm-text-muted);background:var(--rm-surface);border:1px solid var(--rm-border);border-radius:4px;margin-bottom:0;padding:2px 8px;font-size:11px;line-height:1.2;animation:none;display:inline-block}.milestone-free-badge{color:var(--rm-success);background:var(--rm-success-light);border:1px solid var(--rm-success);border-radius:4px;padding:2px 8px;font-size:11px;line-height:1.2;display:inline-block}.milestone-source-link{color:var(--rm-accent);background:var(--rm-accent-light);border:1px solid var(--rm-accent);border-radius:4px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;line-height:1.2;text-decoration:none;transition:all .2s;display:inline-flex}.milestone-source-link:hover{background:var(--rm-accent);color:#fff}.milestone-detail-desc{color:var(--rm-text);overscroll-behavior:contain;flex:1;min-height:0;padding:16px;font-size:14px;line-height:1.7;overflow-y:auto}.milestone-detail-desc .markdown-content{color:var(--rm-text);font-size:14px}.milestone-detail-desc .markdown-content *{color:inherit}.milestone-detail-desc .markdown-content p{margin:0 0 12px}.milestone-detail-desc .markdown-content p:last-child{margin-bottom:0}.node-rect{transition:all .3s}.node-group:hover .node-rect{fill:var(--rm-accent-light);stroke:var(--rm-accent)}.node-group.active .node-rect{fill:var(--rm-accent-light);stroke:var(--rm-accent);stroke-width:2px}.milestone-title-group{transition:all .2s}.milestone-title-group:hover text{fill:var(--rm-accent)}.milestone-video-foreign{overflow:visible}.milestone-video-card{cursor:pointer;position:relative;overflow:visible}.milestone-video-frame{border:1px solid var(--rm-border);background:var(--rm-surface);width:100%;height:100%;box-shadow:0 8px 16px var(--rm-shadow);border-radius:8px;position:relative;overflow:hidden}.milestone-video-card:before{content:"";border-left:14px solid var(--rm-border);border-top:9px solid #0000;border-bottom:9px solid #0000;position:absolute;top:50%;right:-14px;transform:translateY(-50%)}.milestone-video-card:after{content:"";border-left:13px solid var(--rm-surface);border-top:8px solid #0000;border-bottom:8px solid #0000;position:absolute;top:50%;right:-13px;transform:translateY(-50%)}.milestone-video-cover,.milestone-video-iframe{width:100%;height:100%;position:absolute;inset:0}.milestone-video-cover{background-position:50%;background-size:cover;transition:opacity .2s}.milestone-video-cover.placeholder{background:linear-gradient(135deg,var(--rm-border),var(--rm-surface))}.milestone-video-play{pointer-events:none;opacity:.95;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:absolute;inset:0}.milestone-video-play:before{content:"";background:#11182799;border:1px solid #fff9;border-radius:999px;width:36px;height:36px;box-shadow:0 6px 12px #00000059}.milestone-video-play:after{content:"";border-top:7px solid #0000;border-bottom:7px solid #0000;border-left:12px solid #fffffff2;margin-left:2px;position:absolute}.milestone-video-iframe{opacity:0;pointer-events:none;border:0;transition:opacity .2s}.milestone-video-card.is-playing .milestone-video-cover,.milestone-video-card.is-playing .milestone-video-play{opacity:0}.milestone-video-card.is-playing .milestone-video-iframe{opacity:1}.node-group.node-locked .node-rect{fill:var(--rm-surface);stroke:var(--rm-border);opacity:.6}.node-group.node-locked:hover .node-rect{fill:var(--rm-surface);stroke:var(--rm-border)}.node-group.node-not-started .node-status-dot{fill:var(--rm-text-muted)}.node-group.node-in-progress .node-status-dot{fill:var(--rm-warning)}.node-group.node-completed .node-status-dot{fill:var(--rm-success)}.node-group.node-completed .node-rect{stroke:var(--rm-success)}.learning-legend{background:var(--rm-surface);border:1px solid var(--rm-border);z-index:20;color:var(--rm-text);opacity:.8;border-radius:8px;gap:16px;padding:8px 12px;font-size:12px;display:flex;position:absolute;bottom:16px;right:16px}.legend-item{align-items:center;gap:6px;display:flex}.legend-dot{border-radius:50%;width:10px;height:10px;display:inline-block}.zoom-controls{z-index:20;opacity:.8;flex-direction:row;gap:4px;display:flex;position:absolute;bottom:60px;right:16px}.zoom-btn{background:var(--rm-surface);border:1px solid var(--rm-border);width:32px;height:32px;color:var(--rm-text);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:transform .15s,box-shadow .15s,background .15s;display:flex}.zoom-btn:hover{background:var(--rm-accent-light);transform:scale(1.05);box-shadow:0 2px 8px #00000026}.zoom-btn:active{transform:scale(.95)}.year-selector{z-index:20;opacity:.8;flex-direction:column;gap:4px;display:flex;position:absolute;top:16px;right:16px}.year-btn{color:var(--rm-text);cursor:pointer;background:0 0;border:1px solid;border-radius:4px;padding:2px 6px;font-size:11px;font-weight:600;transition:transform .15s,box-shadow .15s}.year-btn:hover{transform:scale(1.05);box-shadow:0 2px 8px #00000026}.legend-lock{flex-shrink:0}.legend-not-started{background:var(--rm-text-muted)}.legend-in-progress{background:var(--rm-warning)}.legend-completed{background:var(--rm-success)}.legend-help-btn{background:var(--rm-accent);color:#fff;cursor:pointer;width:18px;height:18px;box-shadow:0 0 0 2px var(--rm-accent-light);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-right:8px;transition:all .2s;display:flex}.legend-help-btn:hover{box-shadow:0 0 0 3px var(--rm-accent-light);transform:scale(1.1)}.legend-help-btn i{font-size:11px}@media (max-width:768px){.legend-help-btn{pointer-events:auto}.milestone-detail-card{top:auto;bottom:calc(60px + env(safe-area-inset-bottom,0px));border-radius:16px 16px 0 0;width:100%;max-width:100%;max-height:calc(85vh - 60px);animation:.3s ease-out slideUp;left:0;right:0;transform:none}.milestone-detail-header,.milestone-detail-desc{padding:12px 16px}}@keyframes guideEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes highlightPulse{0%,to{box-shadow:0 0 0 4px rgba(var(--rm-accent-rgb,59,130,246),.3)}50%{box-shadow:0 0 0 8px rgba(var(--rm-accent-rgb,59,130,246),.15)}}.learning-guide-overlay{z-index:80;pointer-events:none;background:#00000080;position:fixed;inset:0}.learning-guide-highlight{border:2px solid var(--rm-accent);pointer-events:none;z-index:81;border-radius:8px;animation:2s ease-in-out infinite highlightPulse;position:fixed}.learning-guide-tooltip{z-index:85;background:var(--rm-surface);border:1px solid var(--rm-accent);pointer-events:auto;border-radius:12px;padding:16px;animation:.3s ease-out guideEnter;position:fixed;box-shadow:0 8px 32px #0000004d}.learning-guide-tooltip:before{content:"";border:8px solid #0000;width:0;height:0;position:absolute}.learning-guide-tooltip.arrow-left:before{border-right-color:var(--rm-accent);top:50%;left:-16px;transform:translateY(-50%)}.learning-guide-tooltip.arrow-right:before{border-left-color:var(--rm-accent);top:50%;right:-16px;transform:translateY(-50%)}.learning-guide-tooltip.arrow-top:before{border-bottom-color:var(--rm-accent);top:-16px;left:50%;transform:translate(-50%)}.learning-guide-tooltip.arrow-bottom:before{border-top-color:var(--rm-accent);bottom:-16px;left:50%;transform:translate(-50%)}.learning-guide-title{color:var(--rm-text);margin-bottom:8px;font-size:16px;font-weight:600}.learning-guide-content{color:var(--rm-text-muted);margin-bottom:16px;font-size:14px;line-height:1.6}.learning-guide-footer{justify-content:space-between;align-items:center;display:flex}.learning-guide-step{color:var(--rm-text-muted);font-size:12px}.learning-guide-actions{gap:8px;display:flex}.learning-guide-skip{color:var(--rm-text-muted);cursor:pointer;background:0 0;border:none;padding:6px 12px;font-size:13px;transition:color .2s}.learning-guide-skip:hover{color:var(--rm-text)}.learning-guide-next{background:var(--rm-accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:6px 16px;font-size:13px;font-weight:500;transition:opacity .2s}.learning-guide-next:hover{opacity:.9}@media (max-width:768px){.learning-guide-tooltip{max-width:none;bottom:calc(80px + env(safe-area-inset-bottom,0px))!important;width:auto!important;position:fixed!important;top:auto!important;left:16px!important;right:16px!important}.learning-guide-tooltip:before{display:none}}.milestone-type-filter{z-index:20;flex-direction:column;gap:4px;display:flex;position:absolute;top:16px;left:16px}.milestone-type-toggle{display:none}.milestone-type-buttons{flex-direction:column;gap:4px;display:flex}.milestone-type-btn{color:var(--rm-text);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid;border-radius:4px;padding:2px 6px;font-size:11px;font-weight:600;transition:transform .15s,box-shadow .15s}.milestone-type-btn:hover{transform:scale(1.05);box-shadow:0 2px 8px #00000026}.milestone-type-btn.active{border-color:var(--rm-accent);color:var(--rm-accent);background:color-mix(in srgb,var(--rm-accent)8%,var(--rm-surface))}@media (max-width:768px){.milestone-type-filter{gap:6px;top:60px;left:8px}.milestone-type-toggle{background:color-mix(in srgb,var(--rm-surface)90%,transparent);-webkit-backdrop-filter:blur(6px);border:1px solid var(--rm-border);min-width:80px;color:var(--rm-text);cursor:pointer;border-radius:20px;justify-content:space-between;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:600;transition:all .2s;display:flex}.milestone-type-toggle:active{transform:scale(.98)}.milestone-type-buttons{gap:4px;display:none}.milestone-type-filter.expanded .milestone-type-buttons{display:flex}.milestone-type-btn{padding:3px 8px;font-size:11px}}
