:root{color-scheme:dark;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#11171d;color:#dbe4ed}
*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden}
#application-header{height:44px;display:flex;align-items:center;padding:0 20px;border-bottom:1px solid #425669;background:#11171d;position:relative;z-index:2}
#application-header h1{width:188px;flex:none;margin:0;font-size:18px;font-weight:550;white-space:nowrap}
#application-nav{display:flex;align-items:center;gap:6px;flex:none}
#application-nav a{display:flex;align-items:center;justify-content:center;width:122px;height:32px;border:1px solid transparent;border-radius:4px;color:#96a9b9;font-size:12px;text-decoration:none;white-space:nowrap}
#application-nav a[aria-current=page]{color:#dbe4ed;border-color:#b7b0d9;background:#171f27}
#application-nav a:hover{color:#dbe4ed;border-color:#425669}#application-nav a:focus-visible{outline:2px solid #b7b0d9;outline-offset:2px}
#view-content{height:calc(100dvh - 44px);display:flex;flex-direction:column}
#atlas-filters{height:64px;flex:none;padding:6px 20px;border-bottom:1px solid #425669;background:#11171d}#atlas-filters[hidden]{display:none}
#filter-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) 104px 220px;gap:8px;height:32px;align-items:center}
.filter-field{display:flex;align-items:center;gap:5px;min-width:0;height:32px;font-size:11px;color:#96a9b9}.filter-field>span{width:42px;flex:none}
.filter-field input{width:84px;flex:none}.filter-field select{flex:1;min-width:0}
.filter-field input,.filter-field select,#reset-filters{height:30px;padding:4px 6px;border:1px solid #425669;border-radius:4px;font:inherit;font-size:12px;color:#dbe4ed;background:#171f27}
.filter-field input{font-size:11px}#reset-filters{font-size:11px;cursor:pointer}#reset-filters:hover{border-color:#b7b0d9}
.filter-field input:focus-visible,.filter-field select:focus-visible,#reset-filters:focus-visible{outline:2px solid #b7b0d9;outline-offset:2px}
#stage-filter[hidden]{display:flex;visibility:hidden}#filter-context{display:flex;gap:16px;align-items:center;height:18px;margin-top:2px;font-size:11px;color:#96a9b9}
#filter-context p{margin:0;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#atlas-context{flex:1}#association-status{max-width:42%;font-size:10px}
#map-content{position:relative;flex:1;min-height:0;isolation:isolate}
.atlas-view{position:absolute;inset:0;width:100%;height:100%;border:0;visibility:hidden;pointer-events:none;background:#11171d}
.atlas-view[data-active=true]{visibility:visible;pointer-events:auto}
#loading{position:absolute;inset:0;margin:0;display:grid;place-content:center;background:#11171de8;z-index:1;font-size:13px;color:#96a9b9}#loading[hidden]{display:none}
#association-status{display:none}
#knowledge-search{display:flex;align-items:center;gap:6px;position:relative;min-width:0}
#knowledge-query{min-width:0;width:100%;height:30px;background:#171f27;color:#dbe4ed;border:1px solid #425669;border-radius:4px;padding:4px 8px;font:inherit;font-size:12px}
#view-theme{height:30px;width:30px;flex:none;background:transparent;color:#96a9b9;border:1px solid #425669;border-radius:4px;cursor:pointer}
#knowledge-results:not(:empty){position:absolute;right:0;top:34px;width:320px;max-height:360px;overflow:auto;padding:6px;background:#171f27;border:1px solid #425669;border-radius:4px;z-index:10}
#knowledge-results button{display:block;width:100%;text-align:left;font:inherit;font-size:12px;padding:8px;margin:2px 0;background:transparent;color:#dbe4ed;border:1px solid #425669;border-radius:4px;cursor:pointer}
#knowledge-results p{font-size:12px;color:#96a9b9;margin:8px}
#knowledge-results button:focus-visible,#knowledge-query:focus-visible{outline:2px solid #b7b0d9}
#view-content[data-view=skill-tree] #atlas-filters{display:block;height:42px}
#view-content[data-view=skill-tree] #filter-controls{display:flex;justify-content:flex-end}
#view-content[data-view=skill-tree] .filter-field,#view-content[data-view=skill-tree] #reset-filters,#view-content[data-view=skill-tree] #filter-context{display:none}
#view-content[data-view=skill-tree] #knowledge-search{width:260px}
@media(max-width:900px){#application-header{padding:0 12px}#application-header h1{width:160px;font-size:15px}#application-nav a{width:100px}#atlas-filters{height:166px;padding:6px 12px}#filter-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr);height:134px;grid-template-rows:repeat(4,29px);gap:6px}#course-filter,#project-filter,#stage-filter{grid-column:1 / -1}#stage-filter{grid-column:1 / 2}#reset-filters{grid-column:2;grid-row:3;justify-self:end;width:104px}#knowledge-search{grid-column:1 / -1;grid-row:4}.filter-field>span{width:42px}.filter-field input{width:84px}#filter-context{height:16px}#knowledge-results:not(:empty){width:min(320px,calc(100vw - 24px))}}
@media(max-width:600px){#application-header h1{width:128px;font-size:14px}#application-nav{gap:4px}#application-nav a{width:92px;font-size:11px}#atlas-filters{height:166px}#filter-controls{height:134px;grid-template-rows:repeat(4,29px)}#stage-filter{grid-column:1 / -1}#reset-filters{grid-row:4;grid-column:2}#knowledge-search{grid-row:4;grid-column:1}.filter-field{height:29px}.filter-field input,.filter-field select,#reset-filters,#knowledge-query,#view-theme{height:28px}#view-theme{width:28px}#knowledge-results:not(:empty){left:0;right:auto}#view-content[data-view=skill-tree] #filter-controls{height:28px}}
@media(max-width:350px){#application-header h1{width:112px;font-size:12px}#application-nav a{width:calc((100vw - 144px)/2)}}
